beansflight-json-form
Version:
> **版本号:verison 0.23.17**
102 lines (90 loc) • 2.73 kB
JavaScript
/**
* TinyMCE version 6.1.0 (2022-06-29)
*/
;(function () {
'use strict'
const Cell = initial => {
let value = initial
const get = () => {
return value
}
const set = v => {
value = v
}
return {
get,
set
}
}
var global = tinymce.util.Tools.resolve('tinymce.PluginManager')
const fireVisualBlocks = (editor, state) => {
editor.dispatch('VisualBlocks', { state })
}
const toggleVisualBlocks = (editor, pluginUrl, enabledState) => {
const dom = editor.dom
dom.toggleClass(editor.getBody(), 'mce-visualblocks')
enabledState.set(!enabledState.get())
fireVisualBlocks(editor, enabledState.get())
}
const register$2 = (editor, pluginUrl, enabledState) => {
editor.addCommand('mceVisualBlocks', () => {
toggleVisualBlocks(editor, pluginUrl, enabledState)
})
}
const option = name => editor => editor.options.get(name)
const register$1 = editor => {
const registerOption = editor.options.register
registerOption('visualblocks_default_state', {
processor: 'boolean',
default: false
})
}
const isEnabledByDefault = option('visualblocks_default_state')
const setup = (editor, pluginUrl, enabledState) => {
editor.on('PreviewFormats AfterPreviewFormats', e => {
if (enabledState.get()) {
editor.dom.toggleClass(
editor.getBody(),
'mce-visualblocks',
e.type === 'afterpreviewformats'
)
}
})
editor.on('init', () => {
if (isEnabledByDefault(editor)) {
toggleVisualBlocks(editor, pluginUrl, enabledState)
}
})
}
const toggleActiveState = (editor, enabledState) => api => {
api.setActive(enabledState.get())
const editorEventCallback = e => api.setActive(e.state)
editor.on('VisualBlocks', editorEventCallback)
return () => editor.off('VisualBlocks', editorEventCallback)
}
const register = (editor, enabledState) => {
const onAction = () => editor.execCommand('mceVisualBlocks')
editor.ui.registry.addToggleButton('visualblocks', {
icon: 'visualblocks',
tooltip: 'Show blocks',
onAction,
onSetup: toggleActiveState(editor, enabledState)
})
editor.ui.registry.addToggleMenuItem('visualblocks', {
text: 'Show blocks',
icon: 'visualblocks',
onAction,
onSetup: toggleActiveState(editor, enabledState)
})
}
var Plugin = () => {
global.add('visualblocks', (editor, pluginUrl) => {
register$1(editor)
const enabledState = Cell(false)
register$2(editor, pluginUrl, enabledState)
register(editor, enabledState)
setup(editor, pluginUrl, enabledState)
})
}
Plugin()
})()