diff options
author | Max <max@nextcloud.com> | 2022-07-08 22:53:27 +0300 |
---|---|---|
committer | Max <max@nextcloud.com> | 2022-07-29 15:17:01 +0300 |
commit | b2d690f18bbe53e2f8327b3f5183f401b13bf8ca (patch) | |
tree | 8af7feb9597775d521b5420bd7507731eddfa53e /src/components/Editor.provider.js | |
parent | 06e98019bbf33327c80b6adba85df2361afaeda4 (diff) |
rename EditorWrapper -> Editor
Signed-off-by: Max <max@nextcloud.com>
Diffstat (limited to 'src/components/Editor.provider.js')
-rw-r--r-- | src/components/Editor.provider.js | 93 |
1 files changed, 93 insertions, 0 deletions
diff --git a/src/components/Editor.provider.js b/src/components/Editor.provider.js new file mode 100644 index 000000000..b791075c5 --- /dev/null +++ b/src/components/Editor.provider.js @@ -0,0 +1,93 @@ +/* + * @copyright Copyright (c) 2022 Vinicius Reis <vinicius@nextcloud.com> + * + * @author Vinicius Reis <vinicius@nextcloud.com> + * + * @license GNU AGPL version 3 or any later version + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 of the + * License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Affero General Public License for more details. + * + * You should have received a copy of the GNU Affero General Public License + * along with this program. If not, see <http://www.gnu.org/licenses/>. + * + */ + +export const EDITOR = Symbol('tiptap:editor') +export const FILE = Symbol('editor:file') +export const IMAGE_RESOLVER = Symbol('image:resolver') +export const IS_MOBILE = Symbol('editor:is-mobile') +export const IS_PUBLIC = Symbol('editor:is-public') +export const IS_RICH_EDITOR = Symbol('editor:is-rich-editor') +export const IS_RICH_WORKSPACE = Symbol('editor:is-rich-woskapace') +export const SYNC_SERVICE = Symbol('sync:service') + +export const useEditorMixin = { + inject: { + $editor: { from: EDITOR, default: null }, + }, +} + +export const useSyncServiceMixin = { + inject: { + $syncService: { from: SYNC_SERVICE, default: null }, + }, +} + +export const useIsPublicMixin = { + inject: { + $isPublic: { from: IS_PUBLIC, default: false }, + }, +} + +export const useIsRichWorkspaceMixin = { + inject: { + $isRichWorkspace: { from: IS_RICH_WORKSPACE, default: false }, + }, +} + +export const useIsRichEditorMixin = { + inject: { + $isRichEditor: { from: IS_RICH_EDITOR, default: false }, + }, +} + +export const useIsMobileMixin = { + inject: { + $isMobile: { from: IS_MOBILE, default: false }, + }, +} + +export const useFileMixin = { + inject: { + $file: { + from: FILE, + default: () => ({ + fileId: 0, + relativePath: null, + document: null, + }), + }, + }, +} + +export const useImageResolver = { + inject: { + $imageResolver: { + from: IMAGE_RESOLVER, + default: { + resolve(src) { + console.warn('No image resolver provided. Some image sources cannot be resolved.') + return [src] + }, + }, + }, + }, +} |