UNPKG

tav-ui

Version:
1 lines 4.94 kB
{"version":3,"file":"use-editor-statusbar2.mjs","sources":["../../../../../../../../packages/components/editor/src/hooks/use-editor-statusbar.ts"],"sourcesContent":["import { type ComputedRef, type Ref, computed } from 'vue'\nimport { type EditorProps } from '../typings'\n\nexport function useEditorStatusbar(options: { mergedProps: ComputedRef<EditorProps> }) {\n const { mergedProps } = options\n\n /** see: https://www.tiny.cloud/docs/tinymce/5/statusbar-configuration-options/ */\n const statusbarConfig = computed(() => {\n return {\n statusbar: true,\n statusbarOptions: {\n /** 左下角元素路径是否显示 */\n elementpath: false,\n /** 编辑器宽高是否可变,false|true|'both' */\n resize: 'both' as any,\n },\n }\n })\n\n function updateStatusbarStyle(e: any, editorMainElRef: Ref<HTMLDivElement | undefined>) {\n if (e.type === 'init') {\n const statusBarEl = editorMainElRef.value?.querySelector('.tox-statusbar') as\n | HTMLDivElement\n | undefined\n | null\n\n if (statusBarEl) {\n statusBarEl.style.position = 'absolute'\n statusBarEl.style.bottom = '0'\n statusBarEl.style.right = '0'\n statusBarEl.style.display = 'inline-block'\n statusBarEl.style.width = '20px'\n statusBarEl.style.height = '20px'\n statusBarEl.style.backgroundColor = 'transparent'\n statusBarEl.style.borderTop = 'none'\n }\n\n const statusBarResizeEl = statusBarEl?.querySelector('.tox-statusbar__resize-handle') as\n | HTMLDivElement\n | undefined\n | null\n\n if (statusBarResizeEl) {\n statusBarResizeEl.style.position = 'absolute'\n statusBarResizeEl.style.top = '50%'\n statusBarResizeEl.style.right = '50%'\n statusBarResizeEl.style.transform = 'translate(-50%, -50%)'\n statusBarResizeEl.style.padding = '0'\n }\n }\n }\n\n function addStatusbarAutosaveTip(e: any, editorMainElRef: Ref<HTMLDivElement | undefined>) {\n if (e.type === 'init') {\n const statusBarEl = editorMainElRef.value?.querySelector('.tox-statusbar')\n if (statusBarEl) {\n statusBarEl.insertAdjacentHTML(\n 'afterbegin',\n `<div title=\"自动保存提示\" data-alloy-tabstop=\"true\" tabindex=\"-1\" class=\"tox-statusbar__custom-autosave-tip\"></div>`\n )\n }\n } else if (e.type === 'storedraft') {\n const statusBarAutosaveTipEl = editorMainElRef.value?.querySelector(\n '.tox-statusbar__custom-autosave-tip'\n )\n if (statusBarAutosaveTipEl) {\n statusBarAutosaveTipEl.innerHTML = `${new Date(\n Date.UTC(2012, 11, 12, 3, 0, 0)\n ).toLocaleString()} 自动保存成功!`\n }\n }\n }\n\n return {\n statusbarConfig,\n updateStatusbarStyle,\n addStatusbarAutosaveTip,\n }\n}\n"],"names":[],"mappings":"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"}