403Webshell
Server IP : 80.87.202.40  /  Your IP : 216.73.216.169
Web Server : Apache
System : Linux rospirotorg.ru 5.14.0-539.el9.x86_64 #1 SMP PREEMPT_DYNAMIC Thu Dec 5 22:26:13 UTC 2024 x86_64
User : bitrix ( 600)
PHP Version : 8.2.27
Disable Function : NONE
MySQL : OFF |  cURL : ON |  WGET : ON |  Perl : ON |  Python : OFF |  Sudo : ON |  Pkexec : ON
Directory :  /home/bitrix/ext_www/rospirotorg.ru/bitrix/js/ui/rich-text-area/dist/

Upload File :
current_dir [ Writeable] document_root [ Writeable]

 

Command :


[ Back ]     

Current File : /home/bitrix/ext_www/rospirotorg.ru/bitrix/js/ui/rich-text-area/dist/rich-text-area.bundle.js.map
{"version":3,"file":"rich-text-area.bundle.js","sources":["../src/rich-text-area.js","../src/components/drop-area.js","../src/components/action-bar/action-button.js","../src/components/action-bar/file-button.js","../src/components/action-bar/create-document-button.js","../src/components/action-bar/record-video-button.js","../src/rich-text-area-component.js"],"sourcesContent":["import { Type, Runtime } from 'main.core';\nimport { EventEmitter, type BaseEvent } from 'main.core.events';\nimport { COMMAND_PRIORITY_LOW, COMMAND_PRIORITY_NORMAL, PASTE_COMMAND } from 'ui.lexical.core';\nimport { Plugins, TextEditor, Commands, type TextEditorOptions } from 'ui.text-editor';\nimport { VueUploaderAdapter } from 'ui.uploader.vue';\n\nimport {\n\tFileEvent,\n\tgetFilesFromDataTransfer,\n\tisFilePasted,\n\tUploader,\n\tUploaderFile,\n\ttype UploaderOptions,\n\ttype UploaderFileInfo,\n} from 'ui.uploader.core';\n\nconst { DRAG_END_COMMAND, DRAG_START_COMMAND } = Commands;\n\nimport type { TileWidgetItem } from 'ui.uploader.tile-widget';\nimport type { RichTextAreaOptions } from './rich-text-area-options';\n\nexport class RichTextArea extends EventEmitter\n{\n\t#textEditor: TextEditor = null;\n\t#uploaderAdapter: VueUploaderAdapter = null;\n\t#uploader: Uploader = null;\n\t#allowDropFiles: boolean = true;\n\t#syncHighlightsDebounced = Runtime.debounce(this.#syncHighlights, 500);\n\t#lastInserted: Set<string | number> = new Set();\n\n\tconstructor(richTextAreaOptions: RichTextAreaOptions)\n\t{\n\t\tsuper();\n\t\tthis.setEventNamespace('BX.UI.RichTextArea');\n\n\t\tconst options: RichTextAreaOptions = Type.isPlainObject(richTextAreaOptions) ? richTextAreaOptions : {};\n\n\t\tthis.subscribeFromOptions(options.widgetOptions.events);\n\n\t\tthis.#createTextEditor(options.editorOptions, options.editorInstance);\n\t\tthis.#createUploaderAdapter(options.uploaderOptions, options.uploaderInstance, options.files);\n\n\t\tconst fileInfos = this.#uploaderAdapter.getUploader().getFiles().map((file: UploaderFile) => {\n\t\t\treturn file.toJSON();\n\t\t});\n\n\t\tthis.getEditor().dispatchCommand(Plugins.File.ADD_FILES_COMMAND, fileInfos);\n\n\t\tthis.#registerCommands();\n\t}\n\n\t#createTextEditor(editorOptions: TextEditorOptions, editorInstance: TextEditor): TextEditor\n\t{\n\t\tif (editorInstance)\n\t\t{\n\t\t\tthis.#textEditor = editorInstance;\n\t\t}\n\t\telse\n\t\t{\n\t\t\tconst options: TextEditorOptions = Type.isPlainObject(editorOptions) ? { ...editorOptions } : {};\n\t\t\tthis.#textEditor = new TextEditor(options);\n\t\t}\n\n\t\tthis.#textEditor.subscribeFromOptions({\n\t\t\tonChange: (event: BaseEvent<{ isInitialChange: boolean, tags: Set<string> }>) => {\n\t\t\t\tconst { tags, isInitialChange } = event.getData();\n\t\t\t\tif (tags.has('historic'))\n\t\t\t\t{\n\t\t\t\t\t// Undo/Redo case uses setEditorState that's why we need a new update circle\n\t\t\t\t\tthis.getEditor().update(() => {\n\t\t\t\t\t\tthis.#syncHighlights();\n\t\t\t\t\t});\n\t\t\t\t}\n\t\t\t\telse if (isInitialChange)\n\t\t\t\t{\n\t\t\t\t\tthis.#syncHighlights(true);\n\t\t\t\t}\n\t\t\t\telse\n\t\t\t\t{\n\t\t\t\t\tthis.#syncHighlightsDebounced();\n\t\t\t\t}\n\t\t\t},\n\t\t});\n\n\t\treturn this.#textEditor;\n\t}\n\n\t#createUploaderAdapter(uploaderOptions: UploaderOptions, uploader: Uploader, files: UploaderFileInfo[]): void\n\t{\n\t\tif (uploader instanceof Uploader)\n\t\t{\n\t\t\tthis.#uploaderAdapter = new VueUploaderAdapter(uploader);\n\t\t}\n\t\telse\n\t\t{\n\t\t\tconst options: UploaderOptions = Type.isPlainObject(uploaderOptions) ? uploaderOptions : {};\n\t\t\tconst defaultOptions: UploaderOptions = {\n\t\t\t\timagePreviewHeight: 1200, // double size (see DiskUploaderController)\n\t\t\t\timagePreviewWidth: 1200,\n\t\t\t\timagePreviewQuality: 0.85,\n\t\t\t\ttreatOversizeImageAsFile: true,\n\t\t\t\tignoreUnknownImageTypes: true,\n\t\t\t\tmultiple: true,\n\t\t\t};\n\n\t\t\tthis.#uploaderAdapter = new VueUploaderAdapter({\n\t\t\t\t...defaultOptions,\n\t\t\t\t...options,\n\t\t\t});\n\t\t}\n\n\t\tthis.#uploaderAdapter.subscribeFromOptions({\n\t\t\t'Item:onAdd': (event: BaseEvent<{ item: TileWidgetItem }>): void => {\n\t\t\t\tconst item: TileWidgetItem = event.getData().item;\n\t\t\t\tconst fileCount = this.getFileCount();\n\n\t\t\t\tthis.emit('Item:onAdd', { item, fileCount });\n\t\t\t},\n\t\t\t'Item:onComplete': (event: BaseEvent<{ item: TileWidgetItem }>): void => {\n\t\t\t\tconst item: TileWidgetItem = event.getData().item;\n\t\t\t\tconst fileCount = this.getFileCount();\n\n\t\t\t\tthis.getEditor().dispatchCommand(Plugins.File.ADD_FILE_COMMAND, item);\n\n\t\t\t\tthis.emit('Item:onComplete', { item, fileCount });\n\t\t\t},\n\t\t\t'Item:onRemove': (event: BaseEvent<{ item: TileWidgetItem }>): void => {\n\t\t\t\tconst item: TileWidgetItem = event.getData().item;\n\n\t\t\t\tthis.removeFile(event.getData().item.serverFileId);\n\t\t\t\tconst fileCount = this.getFileCount();\n\n\t\t\t\tthis.emit('Item:onRemove', { item, fileCount });\n\t\t\t},\n\t\t});\n\n\t\tthis.#uploaderAdapter.getUploader().addFiles(files);\n\t}\n\n\tgetUploaderAdapter(): VueUploaderAdapter\n\t{\n\t\treturn this.#uploaderAdapter;\n\t}\n\n\tgetUploader(): Uploader\n\t{\n\t\treturn this.#uploaderAdapter.getUploader();\n\t}\n\n\tgetFileCount(): number\n\t{\n\t\treturn this.getUploader().getFiles().length;\n\t}\n\n\tgetEditor(): TextEditor\n\t{\n\t\treturn this.#textEditor;\n\t}\n\n\tisFilePluginEnabled(): boolean\n\t{\n\t\tconst filePlugin: typeof(Plugins.File.FilePlugin) = this.getEditor().getPlugin('File');\n\n\t\treturn filePlugin?.isEnabled() === true;\n\t}\n\n\tcanDropFiles(): boolean\n\t{\n\t\treturn this.#allowDropFiles;\n\t}\n\n\tinsertFile(fileInfo: TileWidgetItem | UploaderFileInfo): void\n\t{\n\t\tthis.getEditor().dispatchCommand(Plugins.File.INSERT_FILE_COMMAND, {\n\t\t\tserverFileId: fileInfo.serverFileId,\n\t\t\twidth: 600, // half size of imagePreviewWidth\n\t\t\theight: 600, // half size of imagePreviewHeight\n\t\t\tinfo: fileInfo,\n\t\t});\n\t}\n\n\tremoveFile(serverFileId: string | number): void\n\t{\n\t\tthis.getEditor().dispatchCommand(\n\t\t\tPlugins.File.REMOVE_FILE_COMMAND,\n\t\t\t{\n\t\t\t\tserverFileId,\n\t\t\t\tskipHistoryStack: true,\n\t\t\t},\n\t\t);\n\n\t\tthis.#syncHighlights(); // onChange doesn't emit due to history-merge\n\t}\n\n\t#registerCommands(): void\n\t{\n\t\tthis.getEditor().registerCommand(\n\t\t\tPASTE_COMMAND,\n\t\t\t(clipboardEvent: ClipboardEvent) => {\n\t\t\t\tconst clipboardData: DataTransfer = clipboardEvent.clipboardData;\n\t\t\t\tif (!clipboardData || !isFilePasted(clipboardData))\n\t\t\t\t{\n\t\t\t\t\treturn false;\n\t\t\t\t}\n\n\t\t\t\tclipboardEvent.preventDefault();\n\n\t\t\t\tgetFilesFromDataTransfer(clipboardData)\n\t\t\t\t\t.then((files: File[]): void => {\n\t\t\t\t\t\tif (files.length > 0)\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tthis.emit('onBeforeFilePaste');\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tfiles.forEach((file: File): void => {\n\t\t\t\t\t\t\tthis.getUploader().addFile(file, {\n\t\t\t\t\t\t\t\tevents: {\n\t\t\t\t\t\t\t\t\t[FileEvent.LOAD_ERROR]: () => {},\n\t\t\t\t\t\t\t\t\t[FileEvent.UPLOAD_ERROR]: () => {},\n\t\t\t\t\t\t\t\t\t[FileEvent.UPLOAD_COMPLETE]: (event: BaseEvent): void => {\n\t\t\t\t\t\t\t\t\t\tconst uploaderFile: UploaderFile = event.getTarget();\n\n\t\t\t\t\t\t\t\t\t\tthis.emit('onFilePaste', { file: uploaderFile });\n\t\t\t\t\t\t\t\t\t\tthis.insertFile(uploaderFile.toJSON());\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t});\n\t\t\t\t\t\t});\n\t\t\t\t\t})\n\t\t\t\t\t.catch((): void => {\n\t\t\t\t\t\tconsole.error('RichTextArea: clipboard pasting error.');\n\t\t\t\t\t})\n\t\t\t\t;\n\n\t\t\t\treturn true;\n\t\t\t},\n\t\t\tCOMMAND_PRIORITY_NORMAL,\n\t\t);\n\n\t\tthis.getEditor().registerCommand(\n\t\t\tDRAG_START_COMMAND,\n\t\t\t() => {\n\t\t\t\tthis.#allowDropFiles = false;\n\t\t\t},\n\t\t\tCOMMAND_PRIORITY_LOW,\n\t\t);\n\n\t\tthis.getEditor().registerCommand(\n\t\t\tDRAG_END_COMMAND,\n\t\t\t() => {\n\t\t\t\tthis.#allowDropFiles = true;\n\t\t\t},\n\t\t\tCOMMAND_PRIORITY_LOW,\n\t\t);\n\t}\n\n\t#syncHighlights(initialSync: boolean = false): void\n\t{\n\t\tthis.getEditor().dispatchCommand(Plugins.File.GET_INSERTED_FILES_COMMAND, (nodes) => {\n\t\t\tconst inserted: Set<number | string> = new Set();\n\t\t\tfor (const node of nodes)\n\t\t\t{\n\t\t\t\tconst { serverFileId } = node.getInfo();\n\t\t\t\tif (Type.isStringFilled(serverFileId) || Type.isNumber(serverFileId))\n\t\t\t\t{\n\t\t\t\t\tinserted.add(serverFileId);\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tconst isInsertedChanged: boolean = this.#isInsertedChanged(inserted);\n\t\t\tthis.#lastInserted = new Set(inserted);\n\n\t\t\tlet hasInsertedItems = false;\n\t\t\tthis.getUploader().getFiles().forEach((file: UploaderFile) => {\n\t\t\t\tif (inserted.has(file.getServerFileId()))\n\t\t\t\t{\n\t\t\t\t\thasInsertedItems = true;\n\t\t\t\t\tfile.setCustomData('tileSelected', true);\n\t\t\t\t\tinserted.delete(file.getServerFileId());\n\t\t\t\t}\n\t\t\t\telse\n\t\t\t\t{\n\t\t\t\t\tfile.setCustomData('tileSelected', false);\n\t\t\t\t}\n\t\t\t});\n\n\t\t\t// Redo/Undo history can have files that were removed from uploader\n\t\t\tfor (const serverFileId of inserted)\n\t\t\t{\n\t\t\t\tthis.richTextArea.removeFile(serverFileId);\n\t\t\t}\n\n\t\t\tif (!initialSync && isInsertedChanged)\n\t\t\t{\n\t\t\t\tthis.emit('Item:onInsertChange', { hasInsertedItems });\n\t\t\t}\n\t\t});\n\t}\n\n\t#isInsertedChanged(inserted: Set<string | number>): boolean\n\t{\n\t\tif (this.#lastInserted.size !== inserted.size)\n\t\t{\n\t\t\treturn true;\n\t\t}\n\n\t\tfor (const serverFileId of this.#lastInserted)\n\t\t{\n\t\t\tif (!inserted.has(serverFileId))\n\t\t\t{\n\t\t\t\treturn true;\n\t\t\t}\n\t\t}\n\n\t\treturn false;\n\t}\n\n\tdestroy(): void\n\t{\n\t\tthis.#textEditor.destroy();\n\t\tthis.#uploader.destroy();\n\n\t\tthis.#textEditor = null;\n\t\tthis.#uploader = null;\n\t}\n}\n","import '../css/drop-area.css';\n\n// @vue/component\nexport const DropArea = {\n\tname: 'DropArea',\n\tprops: {\n\t\tshow: {\n\t\t\ttype: Boolean,\n\t\t\trequired: true,\n\t\t},\n\t},\n\ttemplate: `\n\t\t<Transition name=\"ui-rich-text-area-fade\">\n\t\t\t<div v-if=\"show\" class=\"ui-rich-text-area-drop-area\">\n\t\t\t\t<div class=\"ui-rich-text-area-drop-area-box\">\n\t\t\t\t\t<label class=\"ui-rich-text-area-drop-area-text\">\n\t\t\t\t\t\t{{ $Bitrix.Loc.getMessage('UI_RICH_TEXT_AREA_DROP_AREA') }}\n\t\t\t\t\t</label>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</Transition>\n\t`,\n};\n","import type { BitrixVueComponentProps } from 'ui.vue3';\n\nexport const ActionButton: BitrixVueComponentProps = {\n\tname: 'ActionButton',\n\tprops: {\n\t\ticon: {\n\t\t\ttype: String,\n\t\t},\n\t\ttitle: {\n\t\t\ttype: String,\n\t\t},\n\t\tcounter: {\n\t\t\ttype: Number,\n\t\t\tdefault: 0,\n\t\t},\n\t\tselected: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: false,\n\t\t},\n\t\tbuttonRef: {\n\t\t\tdefault: null,\n\t\t},\n\t},\n\t// language=Vue\n\ttemplate: `\n\t\t<button class=\"ui-rich-text-area-action\" :class=\"{ '--selected': selected }\" :ref=\"buttonRef\">\n\t\t\t<span class=\"ui-rich-text-area-action-icon\"><span\n\t\t\t\t:class=\"icon\"\n\t\t\t\tclass=\"ui-icon-set\"\n\t\t\t\tstyle=\"--ui-icon-set__icon-color: var(--ui-color-base-90)\"\n\t\t\t></span></span>\n\t\t\t<span class=\"ui-rich-text-area-action-title\">{{ title }}</span>\n\t\t\t<span class=\"ui-rich-text-area-action-counter\" v-show=\"counter > 0\">\n\t\t\t\t<span class=\"ui-counter ui-counter-sm ui-counter-gray\"><span class=\"ui-counter-inner\">{{ counter }}</span></span>\n\t\t\t</span>\n\t\t</button>\n\t`,\n};\n","import { ActionButton } from './action-button';\nimport type { BitrixVueComponentProps } from 'ui.vue3';\n\nexport const FileButton: BitrixVueComponentProps = {\n\tname: 'FileButton',\n\tcomponents: {\n\t\tActionButton,\n\t},\n\t// language=Vue\n\ttemplate: `\n\t\t<ActionButton icon=\"--attach\" :title=\"$Bitrix.Loc.getMessage('UI_RICH_TEXT_AREA_UPLOAD_FILE')\" />\n\t`,\n};\n","import { ActionButton } from './action-button';\nimport type { BitrixVueComponentProps } from 'ui.vue3';\n\nexport const CreateDocumentButton: BitrixVueComponentProps = {\n\tname: 'CreateDocumentButton',\n\tcomponents: {\n\t\tActionButton,\n\t},\n\t// language=Vue\n\ttemplate: `\n\t\t<ActionButton icon=\"--file\" :title=\"$Bitrix.Loc.getMessage('UI_RICH_TEXT_AREA_CREATE_DOCUMENT')\" />\n\t`,\n};\n","import { ActionButton } from './action-button';\nimport type { BitrixVueComponentProps } from 'ui.vue3';\n\nexport const RecordVideoButton: BitrixVueComponentProps = {\n\tname: 'RecordVideoButton',\n\tcomponents: {\n\t\tActionButton,\n\t},\n\t// language=Vue\n\ttemplate: `\n\t\t<ActionButton icon=\"--video-3\" :title=\"$Bitrix.Loc.getMessage('UI_RICH_TEXT_AREA_RECORD_VIDEO')\" />\n\t`,\n};\n","import { Type } from 'main.core';\nimport { TextEditor, TextEditorComponent } from 'ui.text-editor';\nimport { getFilesFromDataTransfer, hasDataTransferOnlyFiles, Uploader } from 'ui.uploader.core';\nimport { TileWidgetComponent, type TileWidgetOptions } from 'ui.uploader.tile-widget';\n\nimport { RichTextArea } from './rich-text-area';\n\nimport { DropArea } from './components/drop-area';\nimport { FileButton } from './components/action-bar/file-button';\nimport { ActionButton } from './components/action-bar/action-button';\nimport { CreateDocumentButton } from './components/action-bar/create-document-button';\nimport { RecordVideoButton } from './components/action-bar/record-video-button';\n\nimport { ref, type BitrixVueComponentProps } from 'ui.vue3';\nimport { type BaseEvent } from 'main.core.events';\nimport { type VueUploaderAdapter } from 'ui.uploader.vue';\n\nimport './css/rich-text-area.css';\n\n/**\n * @memberof BX.UI.RichTextArea\n */\nexport const RichTextAreaComponent: BitrixVueComponentProps = {\n\tname: 'RichTextAreaComponent',\n\tcomponents: {\n\t\tTextEditorComponent,\n\t\tTileWidgetComponent,\n\t\tDropArea,\n\t\tFileButton,\n\t\tActionButton,\n\t\tCreateDocumentButton,\n\t\tRecordVideoButton,\n\t},\n\tprops: {\n\t\teditorOptions: {\n\t\t\ttype: Object,\n\t\t},\n\t\teditorInstance: {\n\t\t\ttype: TextEditor,\n\t\t},\n\t\tuploaderOptions: {\n\t\t\ttype: Object,\n\t\t},\n\t\tuploaderInstance: {\n\t\t\ttype: Uploader,\n\t\t},\n\t\twidgetOptions: {\n\t\t\ttype: Object,\n\t\t\tdefault: {},\n\t\t},\n\t\tfiles: {\n\t\t\ttype: Array,\n\t\t},\n\t},\n\tdata() {\n\t\treturn {\n\t\t\tshowDropArea: false,\n\t\t\tuploaderVisibility: false,\n\t\t};\n\t},\n\tbeforeCreate(): void\n\t{\n\t\tthis.richTextArea = new RichTextArea({\n\t\t\teditorOptions: this.editorOptions,\n\t\t\teditorInstance: this.editorInstance,\n\t\t\tuploaderOptions: this.uploaderOptions,\n\t\t\tuploaderInstance: this.uploaderInstance,\n\t\t\twidgetOptions: this.widgetOptions,\n\t\t\tfiles: this.files,\n\t\t});\n\n\t\tthis.richTextArea.subscribe('Item:onAdd', () => {\n\t\t\tthis.uploaderVisibility = true;\n\t\t});\n\n\t\tthis.fileButtonRef = ref(null);\n\t},\n\tcreated()\n\t{\n\t\tthis.uploaderVisibility = this.richTextArea.getFileCount() > 0;\n\t},\n\tmethods: {\n\t\tgetRichTextArea(): RichTextArea\n\t\t{\n\t\t\treturn this.richTextArea;\n\t\t},\n\t\tgetEditor(): TextEditor\n\t\t{\n\t\t\treturn this.richTextArea.getEditor();\n\t\t},\n\t\tgetUploader(): Uploader\n\t\t{\n\t\t\treturn this.richTextArea.getUploader();\n\t\t},\n\t\tgetUploaderAdapter(): VueUploaderAdapter\n\t\t{\n\t\t\treturn this.richTextArea.getUploaderAdapter();\n\t\t},\n\t\tonDragOver(event: DragEvent): void\n\t\t{\n\t\t\tif (this.richTextArea.canDropFiles())\n\t\t\t{\n\t\t\t\tevent.preventDefault();\n\t\t\t}\n\t\t},\n\t\tonDragEnter(event: DragEvent)\n\t\t{\n\t\t\tif (!this.richTextArea.canDropFiles())\n\t\t\t{\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tevent.preventDefault();\n\t\t\tevent.stopPropagation();\n\n\t\t\tvoid hasDataTransferOnlyFiles(event.dataTransfer, false).then((success: boolean): void => {\n\t\t\t\tif (!success)\n\t\t\t\t{\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tthis.lastDropAreaEnterTarget = event.target;\n\t\t\t\tthis.showDropArea = true;\n\t\t\t});\n\t\t},\n\t\tonDragLeave(event: DragEvent)\n\t\t{\n\t\t\tif (!this.richTextArea.canDropFiles())\n\t\t\t{\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tevent.preventDefault();\n\t\t\tevent.stopPropagation();\n\n\t\t\tif (this.lastDropAreaEnterTarget === event.target)\n\t\t\t{\n\t\t\t\tthis.showDropArea = false;\n\t\t\t}\n\t\t},\n\t\tonDrop(event: DragEvent)\n\t\t{\n\t\t\tif (!this.richTextArea.canDropFiles())\n\t\t\t{\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tevent.preventDefault();\n\n\t\t\tvoid getFilesFromDataTransfer(event.dataTransfer).then((files: File[]): void => {\n\t\t\t\tthis.getUploader().addFiles(files);\n\t\t\t\tthis.getEditor().expand();\n\t\t\t});\n\n\t\t\tthis.showDropArea = false;\n\t\t},\n\t},\n\tcomputed: {\n\t\ttileWidgetOptions(): TileWidgetOptions\n\t\t{\n\t\t\tconst options = this.widgetOptions;\n\t\t\tconst tileWidgetOptions = {\n\t\t\t\tinsertIntoText: Type.isBoolean(options.insertIntoText) ? options.insertIntoText : true,\n\t\t\t\t...(Type.isPlainObject(options.tileWidgetOptions) ? options.tileWidgetOptions : {}),\n\t\t\t};\n\n\t\t\ttileWidgetOptions.enableDropzone = false;\n\n\t\t\tif (tileWidgetOptions.insertIntoText)\n\t\t\t{\n\t\t\t\ttileWidgetOptions.events = tileWidgetOptions.events || {};\n\t\t\t\ttileWidgetOptions.events.onInsertIntoText = (event: BaseEvent) => {\n\t\t\t\t\tthis.richTextArea.insertFile(event.getData().item);\n\t\t\t\t};\n\t\t\t}\n\n\t\t\treturn tileWidgetOptions;\n\t\t},\n\t\tisUploadEnabled(): boolean\n\t\t{\n\t\t\treturn this.getRichTextArea().isFilePluginEnabled();\n\t\t},\n\t},\n\tmounted(): void\n\t{\n\t\tif (this.isUploadEnabled)\n\t\t{\n\t\t\tthis.getUploader().assignBrowse(this.fileButtonRef.value);\n\t\t}\n\t},\n\tunmounted()\n\t{\n\t\tthis.richTextArea.destroy();\n\t\tthis.richTextArea = null;\n\t},\n\t// language=Vue\n\ttemplate: `\n\t\t<div \n\t\t\tclass=\"ui-rich-text-area\"\n\t\t\tv-on=\"\n\t\t\t\tisUploadEnabled\n\t\t\t\t? { drop: onDrop, dragleave: onDragLeave, dragenter: onDragEnter, dragover: onDragOver }\n\t\t\t\t: {}\n\t\t\t\"\n\t\t>\n\t\t\t<TextEditorComponent :editor-instance=\"getEditor()\">\n\t\t\t\t<template #footer>\n\t\t\t\t\t<div class=\"ui-rich-text-area-actions\">\n\t\t\t\t\t\t<slot name=\"before-buttons\" :richTextArea=\"getRichTextArea()\"></slot>\n\t\t\t\t\t\t<slot name=\"file-button\" :richTextArea=\"getRichTextArea()\">\n\t\t\t\t\t\t\t<FileButton v-if=\"isUploadEnabled\" ref=\"fileButton\" :buttonRef=\"fileButtonRef\" />\n\t\t\t\t\t\t</slot>\n\t\t\t\t\t\t<slot name=\"after-buttons\" :richTextArea=\"getRichTextArea()\"></slot>\n\t\t\t\t\t</div>\n\t\t\t\t\t<slot name=\"uploader\" :adapter=\"getUploaderAdapter()\" :richTextArea=\"getRichTextArea()\">\n\t\t\t\t\t\t<div class=\"ui-rich-text-area-uploader\" :class=\"{ '--visible': uploaderVisibility }\">\n\t\t\t\t\t\t\t<TileWidgetComponent\n\t\t\t\t\t\t\t\t:widgetOptions=\"tileWidgetOptions\"\n\t\t\t\t\t\t\t\t:uploader-adapter=\"getUploaderAdapter()\"\n\t\t\t\t\t\t\t\tref=\"tileWidget\"\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</slot>\n\t\t\t\t</template>\n\t\t\t</TextEditorComponent>\n\t\t\t<DropArea :show=\"showDropArea\" />\n\t\t</div>\n\t`,\n};\n"],"names":["DRAG_END_COMMAND","DRAG_START_COMMAND","Commands","RichTextArea","EventEmitter","constructor","richTextAreaOptions","Runtime","debounce","Set","setEventNamespace","options","Type","isPlainObject","subscribeFromOptions","widgetOptions","events","editorOptions","editorInstance","uploaderOptions","uploaderInstance","files","fileInfos","getUploader","getFiles","map","file","toJSON","getEditor","dispatchCommand","Plugins","File","ADD_FILES_COMMAND","getUploaderAdapter","getFileCount","length","isFilePluginEnabled","filePlugin","getPlugin","isEnabled","canDropFiles","insertFile","fileInfo","INSERT_FILE_COMMAND","serverFileId","width","height","info","removeFile","REMOVE_FILE_COMMAND","skipHistoryStack","destroy","TextEditor","onChange","event","tags","isInitialChange","getData","has","update","uploader","Uploader","VueUploaderAdapter","defaultOptions","imagePreviewHeight","imagePreviewWidth","imagePreviewQuality","treatOversizeImageAsFile","ignoreUnknownImageTypes","multiple","item","fileCount","emit","ADD_FILE_COMMAND","addFiles","registerCommand","PASTE_COMMAND","clipboardEvent","clipboardData","isFilePasted","preventDefault","getFilesFromDataTransfer","then","forEach","addFile","FileEvent","LOAD_ERROR","UPLOAD_ERROR","UPLOAD_COMPLETE","uploaderFile","getTarget","catch","console","error","COMMAND_PRIORITY_NORMAL","COMMAND_PRIORITY_LOW","initialSync","GET_INSERTED_FILES_COMMAND","nodes","inserted","node","getInfo","isStringFilled","isNumber","add","isInsertedChanged","hasInsertedItems","getServerFileId","setCustomData","delete","richTextArea","size","DropArea","name","props","show","type","Boolean","required","template","ActionButton","icon","String","title","counter","Number","default","selected","buttonRef","FileButton","components","CreateDocumentButton","RecordVideoButton","RichTextAreaComponent","TextEditorComponent","TileWidgetComponent","Object","Array","data","showDropArea","uploaderVisibility","beforeCreate","subscribe","fileButtonRef","ref","created","methods","getRichTextArea","onDragOver","onDragEnter","stopPropagation","hasDataTransferOnlyFiles","dataTransfer","success","lastDropAreaEnterTarget","target","onDragLeave","onDrop","expand","computed","tileWidgetOptions","insertIntoText","isBoolean","enableDropzone","onInsertIntoText","isUploadEnabled","mounted","assignBrowse","value","unmounted"],"mappings":"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"}

Youez - 2016 - github.com/yon3zu
LinuXploit