{"version":3,"file":"js/chunk-vendors-c065aab2.ea5b2246.js","mappings":"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","sources":["webpack://ida-jandaya/./node_modules/tiptap-utils/dist/utils.esm.js","webpack://ida-jandaya/./node_modules/tiptap/dist/tiptap.esm.js"],"sourcesContent":["\n /*!\n * tiptap-utils v1.13.0\n * (c) 2021 überdosis GbR (limited liability)\n * @license MIT\n */\n \nimport { NodeSelection } from 'prosemirror-state';\n\nfunction createCell(cellType, cellContent) {\n if (cellContent) {\n return cellType.createChecked(null, cellContent);\n }\n\n return cellType.createAndFill();\n}\n\nfunction getTableNodeTypes(schema) {\n if (schema.cached.tableNodeTypes) {\n return schema.cached.tableNodeTypes;\n }\n\n const roles = {};\n Object.keys(schema.nodes).forEach(type => {\n const nodeType = schema.nodes[type];\n\n if (nodeType.spec.tableRole) {\n roles[nodeType.spec.tableRole] = nodeType;\n }\n }); // eslint-disable-next-line\n\n schema.cached.tableNodeTypes = roles;\n return roles;\n}\n\nfunction createTable(schema, rowsCount, colsCount, withHeaderRow, cellContent) {\n const types = getTableNodeTypes(schema);\n const headerCells = [];\n const cells = [];\n\n for (let index = 0; index < colsCount; index += 1) {\n const cell = createCell(types.cell, cellContent);\n\n if (cell) {\n cells.push(cell);\n }\n\n if (withHeaderRow) {\n const headerCell = createCell(types.header_cell, cellContent);\n\n if (headerCell) {\n headerCells.push(headerCell);\n }\n }\n }\n\n const rows = [];\n\n for (let index = 0; index < rowsCount; index += 1) {\n rows.push(types.row.createChecked(null, withHeaderRow && index === 0 ? headerCells : cells));\n }\n\n return types.table.createChecked(null, rows);\n}\n\nfunction equalNodeType(nodeType, node) {\n return Array.isArray(nodeType) && nodeType.indexOf(node.type) > -1 || node.type === nodeType;\n}\n\nfunction flatten(node) {\n // eslint-disable-next-line\n const descend = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;\n\n if (!node) {\n throw new Error('Invalid \"node\" parameter');\n }\n\n const result = []; // eslint-disable-next-line\n\n node.descendants((child, pos) => {\n result.push({\n node: child,\n pos\n });\n\n if (!descend) {\n return false;\n }\n });\n return result;\n}\n\nfunction findChildren(node, predicate, descend) {\n if (!node) {\n throw new Error('Invalid \"node\" parameter');\n } else if (!predicate) {\n throw new Error('Invalid \"predicate\" parameter');\n }\n\n return flatten(node, descend).filter(child => predicate(child.node));\n}\n\nfunction findBlockNodes(node, descend) {\n return findChildren(node, child => child.isBlock, descend);\n}\n\n// eslint-disable-next-line\nfunction findParentNodeClosestToPos($pos, predicate) {\n for (let i = $pos.depth; i > 0; i -= 1) {\n const node = $pos.node(i);\n\n if (predicate(node)) {\n return {\n pos: i > 0 ? $pos.before(i) : 0,\n start: $pos.start(i),\n depth: i,\n node\n };\n }\n }\n}\n\nfunction findParentNode(predicate) {\n return selection => findParentNodeClosestToPos(selection.$from, predicate);\n}\n\nfunction isNodeSelection(selection) {\n return selection instanceof NodeSelection;\n}\n\nfunction findSelectedNodeOfType(nodeType) {\n // eslint-disable-next-line\n return function (selection) {\n if (isNodeSelection(selection)) {\n const {\n node\n } = selection;\n const {\n $from\n } = selection;\n\n if (equalNodeType(nodeType, node)) {\n return {\n node,\n pos: $from.pos,\n depth: $from.depth\n };\n }\n }\n };\n}\n\nfunction getMarkAttrs(state, type) {\n const {\n from,\n to\n } = state.selection;\n let marks = [];\n state.doc.nodesBetween(from, to, node => {\n marks = [...marks, ...node.marks];\n });\n const mark = marks.find(markItem => markItem.type.name === type.name);\n\n if (mark) {\n return mark.attrs;\n }\n\n return {};\n}\n\nfunction getMarkRange($pos = null, type = null) {\n if (!$pos || !type) {\n return false;\n }\n\n const start = $pos.parent.childAfter($pos.parentOffset);\n\n if (!start.node) {\n return false;\n }\n\n const link = start.node.marks.find(mark => mark.type === type);\n\n if (!link) {\n return false;\n }\n\n let startIndex = $pos.index();\n let startPos = $pos.start() + start.offset;\n let endIndex = startIndex + 1;\n let endPos = startPos + start.node.nodeSize;\n\n while (startIndex > 0 && link.isInSet($pos.parent.child(startIndex - 1).marks)) {\n startIndex -= 1;\n startPos -= $pos.parent.child(startIndex).nodeSize;\n }\n\n while (endIndex < $pos.parent.childCount && link.isInSet($pos.parent.child(endIndex).marks)) {\n endPos += $pos.parent.child(endIndex).nodeSize;\n endIndex += 1;\n }\n\n return {\n from: startPos,\n to: endPos\n };\n}\n\nfunction getNodeAttrs(state, type) {\n const {\n from,\n to\n } = state.selection;\n let nodes = [];\n state.doc.nodesBetween(from, to, node => {\n nodes = [...nodes, node];\n });\n const node = nodes.reverse().find(nodeItem => nodeItem.type.name === type.name);\n\n if (node) {\n return node.attrs;\n }\n\n return {};\n}\n\nfunction markIsActive(state, type) {\n const {\n from,\n $from,\n to,\n empty\n } = state.selection;\n\n if (empty) {\n return !!type.isInSet(state.storedMarks || $from.marks());\n }\n\n return !!state.doc.rangeHasMark(from, to, type);\n}\n\nfunction nodeEqualsType({\n types,\n node\n}) {\n return Array.isArray(types) && types.includes(node.type) || node.type === types;\n}\n\nfunction nodeIsActive(state, type, attrs = {}) {\n const predicate = node => node.type === type;\n\n const node = findSelectedNodeOfType(type)(state.selection) || findParentNode(predicate)(state.selection);\n\n if (!Object.keys(attrs).length || !node) {\n return !!node;\n }\n\n return node.node.hasMarkup(type, { ...node.node.attrs,\n ...attrs\n });\n}\n\nexport { createCell, createTable, equalNodeType, findBlockNodes, findChildren, findParentNode, findParentNodeClosestToPos, findSelectedNodeOfType, flatten, getMarkAttrs, getMarkRange, getNodeAttrs, getTableNodeTypes, isNodeSelection, markIsActive, nodeEqualsType, nodeIsActive };\n","\n /*!\n * tiptap v1.32.1\n * (c) 2021 überdosis GbR (limited liability)\n * @license MIT\n */\n \nimport { EditorState, Plugin, PluginKey, TextSelection } from 'prosemirror-state';\nexport { NodeSelection, Plugin, PluginKey, TextSelection } from 'prosemirror-state';\nimport { EditorView } from 'prosemirror-view';\nimport { Schema, DOMParser, DOMSerializer } from 'prosemirror-model';\nimport { dropCursor } from 'prosemirror-dropcursor';\nimport { gapCursor } from 'prosemirror-gapcursor';\nimport { keymap } from 'prosemirror-keymap';\nimport { baseKeymap } from 'prosemirror-commands';\nimport { inputRules, undoInputRule } from 'prosemirror-inputrules';\nimport { getMarkRange, markIsActive, getMarkAttrs, nodeIsActive, getNodeAttrs } from 'tiptap-utils';\nimport Vue from 'vue';\nimport { setBlockType } from 'tiptap-commands';\n\nfunction camelCase (str) {\n return str.replace(/(?:^\\w|[A-Z]|\\b\\w)/g, (word, index) => index === 0 ? word.toLowerCase() : word.toUpperCase()).replace(/\\s+/g, '');\n}\n\nclass ComponentView {\n constructor(component, {\n editor,\n extension,\n parent,\n node,\n view,\n decorations,\n getPos\n }) {\n this.component = component;\n this.editor = editor;\n this.extension = extension;\n this.parent = parent;\n this.node = node;\n this.view = view;\n this.decorations = decorations;\n this.isNode = !!this.node.marks;\n this.isMark = !this.isNode;\n this.getPos = this.isMark ? this.getMarkPos : getPos;\n this.captureEvents = true;\n this.dom = this.createDOM();\n this.contentDOM = this.vm.$refs.content;\n }\n\n createDOM() {\n const Component = Vue.extend(this.component);\n const props = {\n editor: this.editor,\n node: this.node,\n view: this.view,\n getPos: () => this.getPos(),\n decorations: this.decorations,\n selected: false,\n options: this.extension.options,\n updateAttrs: attrs => this.updateAttrs(attrs)\n };\n\n if (typeof this.extension.setSelection === 'function') {\n this.setSelection = this.extension.setSelection;\n }\n\n if (typeof this.extension.update === 'function') {\n this.update = this.extension.update;\n }\n\n this.vm = new Component({\n parent: this.parent,\n propsData: props\n }).$mount();\n return this.vm.$el;\n }\n\n update(node, decorations) {\n if (node.type !== this.node.type) {\n return false;\n }\n\n if (node === this.node && this.decorations === decorations) {\n return true;\n }\n\n this.node = node;\n this.decorations = decorations;\n this.updateComponentProps({\n node,\n decorations\n });\n return true;\n }\n\n updateComponentProps(props) {\n if (!this.vm._props) {\n return;\n } // Update props in component\n // TODO: Avoid mutating a prop directly.\n // Maybe there is a better way to do this?\n\n\n const originalSilent = Vue.config.silent;\n Vue.config.silent = true;\n Object.entries(props).forEach(([key, value]) => {\n this.vm._props[key] = value;\n }); // this.vm._props.node = node\n // this.vm._props.decorations = decorations\n\n Vue.config.silent = originalSilent;\n }\n\n updateAttrs(attrs) {\n if (!this.view.editable) {\n return;\n }\n\n const {\n state\n } = this.view;\n const {\n type\n } = this.node;\n const pos = this.getPos();\n const newAttrs = { ...this.node.attrs,\n ...attrs\n };\n const transaction = this.isMark ? state.tr.removeMark(pos.from, pos.to, type).addMark(pos.from, pos.to, type.create(newAttrs)) : state.tr.setNodeMarkup(pos, null, newAttrs);\n this.view.dispatch(transaction);\n } // prevent a full re-render of the vue component on update\n // we'll handle prop updates in `update()`\n\n\n ignoreMutation(mutation) {\n // allow leaf nodes to be selected\n if (mutation.type === 'selection') {\n return false;\n }\n\n if (!this.contentDOM) {\n return true;\n }\n\n return !this.contentDOM.contains(mutation.target);\n } // disable (almost) all prosemirror event listener for node views\n\n\n stopEvent(event) {\n if (typeof this.extension.stopEvent === 'function') {\n return this.extension.stopEvent(event);\n }\n\n const draggable = !!this.extension.schema.draggable; // support a custom drag handle\n\n if (draggable && event.type === 'mousedown') {\n const dragHandle = event.target.closest && event.target.closest('[data-drag-handle]');\n const isValidDragHandle = dragHandle && (this.dom === dragHandle || this.dom.contains(dragHandle));\n\n if (isValidDragHandle) {\n this.captureEvents = false;\n document.addEventListener('dragend', () => {\n this.captureEvents = true;\n }, {\n once: true\n });\n }\n }\n\n const isCopy = event.type === 'copy';\n const isPaste = event.type === 'paste';\n const isCut = event.type === 'cut';\n const isDrag = event.type.startsWith('drag') || event.type === 'drop';\n\n if (draggable && isDrag || isCopy || isPaste || isCut) {\n return false;\n }\n\n return this.captureEvents;\n }\n\n selectNode() {\n this.updateComponentProps({\n selected: true\n });\n }\n\n deselectNode() {\n this.updateComponentProps({\n selected: false\n });\n }\n\n getMarkPos() {\n const pos = this.view.posAtDOM(this.dom);\n const resolvedPos = this.view.state.doc.resolve(pos);\n const range = getMarkRange(resolvedPos, this.node.type);\n return range;\n }\n\n destroy() {\n this.vm.$destroy();\n }\n\n}\n\nclass Emitter {\n // Add an event listener for given event\n on(event, fn) {\n this._callbacks = this._callbacks || {}; // Create namespace for this event\n\n if (!this._callbacks[event]) {\n this._callbacks[event] = [];\n }\n\n this._callbacks[event].push(fn);\n\n return this;\n }\n\n emit(event, ...args) {\n this._callbacks = this._callbacks || {};\n const callbacks = this._callbacks[event];\n\n if (callbacks) {\n callbacks.forEach(callback => callback.apply(this, args));\n }\n\n return this;\n } // Remove event listener for given event.\n // If fn is not provided, all event listeners for that event will be removed.\n // If neither is provided, all event listeners will be removed.\n\n\n off(event, fn) {\n if (!arguments.length) {\n this._callbacks = {};\n } else {\n // event listeners for the given event\n const callbacks = this._callbacks ? this._callbacks[event] : null;\n\n if (callbacks) {\n if (fn) {\n this._callbacks[event] = callbacks.filter(cb => cb !== fn); // remove specific handler\n } else {\n delete this._callbacks[event]; // remove all handlers\n }\n }\n }\n\n return this;\n }\n\n}\n\nclass Extension {\n constructor(options = {}) {\n this.options = { ...this.defaultOptions,\n ...options\n };\n }\n\n init() {\n return null;\n }\n\n bindEditor(editor = null) {\n this.editor = editor;\n }\n\n get name() {\n return null;\n }\n\n get type() {\n return 'extension';\n }\n\n get defaultOptions() {\n return {};\n }\n\n get plugins() {\n return [];\n }\n\n inputRules() {\n return [];\n }\n\n pasteRules() {\n return [];\n }\n\n keys() {\n return {};\n }\n\n}\n\nclass ExtensionManager {\n constructor(extensions = [], editor) {\n extensions.forEach(extension => {\n extension.bindEditor(editor);\n extension.init();\n });\n this.extensions = extensions;\n }\n\n get nodes() {\n return this.extensions.filter(extension => extension.type === 'node').reduce((nodes, {\n name,\n schema\n }) => ({ ...nodes,\n [name]: schema\n }), {});\n }\n\n get options() {\n const {\n view\n } = this;\n return this.extensions.reduce((nodes, extension) => ({ ...nodes,\n [extension.name]: new Proxy(extension.options, {\n set(obj, prop, value) {\n const changed = obj[prop] !== value;\n Object.assign(obj, {\n [prop]: value\n });\n\n if (changed) {\n view.updateState(view.state);\n }\n\n return true;\n }\n\n })\n }), {});\n }\n\n get marks() {\n return this.extensions.filter(extension => extension.type === 'mark').reduce((marks, {\n name,\n schema\n }) => ({ ...marks,\n [name]: schema\n }), {});\n }\n\n get plugins() {\n return this.extensions.filter(extension => extension.plugins).reduce((allPlugins, {\n plugins\n }) => [...allPlugins, ...plugins], []);\n }\n\n keymaps({\n schema\n }) {\n const extensionKeymaps = this.extensions.filter(extension => ['extension'].includes(extension.type)).filter(extension => extension.keys).map(extension => extension.keys({\n schema\n }));\n const nodeMarkKeymaps = this.extensions.filter(extension => ['node', 'mark'].includes(extension.type)).filter(extension => extension.keys).map(extension => extension.keys({\n type: schema[`${extension.type}s`][extension.name],\n schema\n }));\n return [...extensionKeymaps, ...nodeMarkKeymaps].map(keys => keymap(keys));\n }\n\n inputRules({\n schema,\n excludedExtensions\n }) {\n if (!(excludedExtensions instanceof Array) && excludedExtensions) return [];\n const allowedExtensions = excludedExtensions instanceof Array ? this.extensions.filter(extension => !excludedExtensions.includes(extension.name)) : this.extensions;\n const extensionInputRules = allowedExtensions.filter(extension => ['extension'].includes(extension.type)).filter(extension => extension.inputRules).map(extension => extension.inputRules({\n schema\n }));\n const nodeMarkInputRules = allowedExtensions.filter(extension => ['node', 'mark'].includes(extension.type)).filter(extension => extension.inputRules).map(extension => extension.inputRules({\n type: schema[`${extension.type}s`][extension.name],\n schema\n }));\n return [...extensionInputRules, ...nodeMarkInputRules].reduce((allInputRules, inputRules) => [...allInputRules, ...inputRules], []);\n }\n\n pasteRules({\n schema,\n excludedExtensions\n }) {\n if (!(excludedExtensions instanceof Array) && excludedExtensions) return [];\n const allowedExtensions = excludedExtensions instanceof Array ? this.extensions.filter(extension => !excludedExtensions.includes(extension.name)) : this.extensions;\n const extensionPasteRules = allowedExtensions.filter(extension => ['extension'].includes(extension.type)).filter(extension => extension.pasteRules).map(extension => extension.pasteRules({\n schema\n }));\n const nodeMarkPasteRules = allowedExtensions.filter(extension => ['node', 'mark'].includes(extension.type)).filter(extension => extension.pasteRules).map(extension => extension.pasteRules({\n type: schema[`${extension.type}s`][extension.name],\n schema\n }));\n return [...extensionPasteRules, ...nodeMarkPasteRules].reduce((allPasteRules, pasteRules) => [...allPasteRules, ...pasteRules], []);\n }\n\n commands({\n schema,\n view\n }) {\n return this.extensions.filter(extension => extension.commands).reduce((allCommands, extension) => {\n const {\n name,\n type\n } = extension;\n const commands = {};\n const value = extension.commands({\n schema,\n ...(['node', 'mark'].includes(type) ? {\n type: schema[`${type}s`][name]\n } : {})\n });\n\n const apply = (cb, attrs) => {\n if (!view.editable) {\n return false;\n }\n\n view.focus();\n return cb(attrs)(view.state, view.dispatch, view);\n };\n\n const handle = (_name, _value) => {\n if (Array.isArray(_value)) {\n commands[_name] = attrs => _value.forEach(callback => apply(callback, attrs));\n } else if (typeof _value === 'function') {\n commands[_name] = attrs => apply(_value, attrs);\n }\n };\n\n if (typeof value === 'object') {\n Object.entries(value).forEach(([commandName, commandValue]) => {\n handle(commandName, commandValue);\n });\n } else {\n handle(name, value);\n }\n\n return { ...allCommands,\n ...commands\n };\n }, {});\n }\n\n}\n\nfunction injectCSS (css) {\n if (process.env.NODE_ENV !== 'test') {\n const style = document.createElement('style');\n style.type = 'text/css';\n style.textContent = css;\n const {\n head\n } = document;\n const {\n firstChild\n } = head;\n\n if (firstChild) {\n head.insertBefore(style, firstChild);\n } else {\n head.appendChild(style);\n }\n }\n}\n\nclass Mark extends Extension {\n constructor(options = {}) {\n super(options);\n }\n\n get type() {\n return 'mark';\n }\n\n get view() {\n return null;\n }\n\n get schema() {\n return null;\n }\n\n command() {\n return () => {};\n }\n\n}\n\nfunction minMax(value = 0, min = 0, max = 0) {\n return Math.min(Math.max(parseInt(value, 10), min), max);\n}\n\nclass Node extends Extension {\n constructor(options = {}) {\n super(options);\n }\n\n get type() {\n return 'node';\n }\n\n get view() {\n return null;\n }\n\n get schema() {\n return null;\n }\n\n command() {\n return () => {};\n }\n\n}\n\nclass Doc extends Node {\n get name() {\n return 'doc';\n }\n\n get schema() {\n return {\n content: 'block+'\n };\n }\n\n}\n\nclass Paragraph extends Node {\n get name() {\n return 'paragraph';\n }\n\n get schema() {\n return {\n content: 'inline*',\n group: 'block',\n draggable: false,\n parseDOM: [{\n tag: 'p'\n }],\n toDOM: () => ['p', 0]\n };\n }\n\n commands({\n type\n }) {\n return () => setBlockType(type);\n }\n\n}\n\nclass Text extends Node {\n get name() {\n return 'text';\n }\n\n get schema() {\n return {\n group: 'inline'\n };\n }\n\n}\n\nvar css = \".ProseMirror {\\n position: relative;\\n}\\n\\n.ProseMirror {\\n word-wrap: break-word;\\n white-space: pre-wrap;\\n -webkit-font-variant-ligatures: none;\\n font-variant-ligatures: none;\\n}\\n\\n.ProseMirror pre {\\n white-space: pre-wrap;\\n}\\n\\n.ProseMirror-gapcursor {\\n display: none;\\n pointer-events: none;\\n position: absolute;\\n}\\n\\n.ProseMirror-gapcursor:after {\\n content: \\\"\\\";\\n display: block;\\n position: absolute;\\n top: -2px;\\n width: 20px;\\n border-top: 1px solid black;\\n animation: ProseMirror-cursor-blink 1.1s steps(2, start) infinite;\\n}\\n\\n@keyframes ProseMirror-cursor-blink {\\n to {\\n visibility: hidden;\\n }\\n}\\n\\n.ProseMirror-hideselection *::selection {\\n background: transparent;\\n}\\n\\n.ProseMirror-hideselection *::-moz-selection {\\n background: transparent;\\n}\\n\\n.ProseMirror-hideselection * {\\n caret-color: transparent;\\n}\\n\\n.ProseMirror-focused .ProseMirror-gapcursor {\\n display: block;\\n}\\n\";\n\nclass Editor extends Emitter {\n constructor(options = {}) {\n super();\n this.defaultOptions = {\n editorProps: {},\n editable: true,\n autoFocus: null,\n extensions: [],\n content: '',\n topNode: 'doc',\n emptyDocument: {\n type: 'doc',\n content: [{\n type: 'paragraph'\n }]\n },\n useBuiltInExtensions: true,\n disableInputRules: false,\n disablePasteRules: false,\n dropCursor: {},\n enableDropCursor: true,\n enableGapCursor: true,\n parseOptions: {},\n injectCSS: true,\n onInit: () => {},\n onTransaction: () => {},\n onUpdate: () => {},\n onFocus: () => {},\n onBlur: () => {},\n onPaste: () => {},\n onDrop: () => {}\n };\n this.events = ['init', 'transaction', 'update', 'focus', 'blur', 'paste', 'drop'];\n this.init(options);\n }\n\n init(options = {}) {\n this.setOptions({ ...this.defaultOptions,\n ...options\n });\n this.focused = false;\n this.selection = {\n from: 0,\n to: 0\n };\n this.element = document.createElement('div');\n this.extensions = this.createExtensions();\n this.nodes = this.createNodes();\n this.marks = this.createMarks();\n this.schema = this.createSchema();\n this.plugins = this.createPlugins();\n this.keymaps = this.createKeymaps();\n this.inputRules = this.createInputRules();\n this.pasteRules = this.createPasteRules();\n this.view = this.createView();\n this.commands = this.createCommands();\n this.setActiveNodesAndMarks();\n\n if (this.options.injectCSS) {\n injectCSS(css);\n }\n\n if (this.options.autoFocus !== null) {\n this.focus(this.options.autoFocus);\n }\n\n this.events.forEach(name => {\n this.on(name, this.options[camelCase(`on ${name}`)] || (() => {}));\n });\n this.emit('init', {\n view: this.view,\n state: this.state\n }); // give extension manager access to our view\n\n this.extensions.view = this.view;\n }\n\n setOptions(options) {\n this.options = { ...this.options,\n ...options\n };\n\n if (this.view && this.state) {\n this.view.updateState(this.state);\n }\n }\n\n get builtInExtensions() {\n if (!this.options.useBuiltInExtensions) {\n return [];\n }\n\n return [new Doc(), new Text(), new Paragraph()];\n }\n\n get state() {\n return this.view ? this.view.state : null;\n }\n\n createExtensions() {\n return new ExtensionManager([...this.builtInExtensions, ...this.options.extensions], this);\n }\n\n createPlugins() {\n return this.extensions.plugins;\n }\n\n createKeymaps() {\n return this.extensions.keymaps({\n schema: this.schema\n });\n }\n\n createInputRules() {\n return this.extensions.inputRules({\n schema: this.schema,\n excludedExtensions: this.options.disableInputRules\n });\n }\n\n createPasteRules() {\n return this.extensions.pasteRules({\n schema: this.schema,\n excludedExtensions: this.options.disablePasteRules\n });\n }\n\n createCommands() {\n return this.extensions.commands({\n schema: this.schema,\n view: this.view\n });\n }\n\n createNodes() {\n return this.extensions.nodes;\n }\n\n createMarks() {\n return this.extensions.marks;\n }\n\n createSchema() {\n return new Schema({\n topNode: this.options.topNode,\n nodes: this.nodes,\n marks: this.marks\n });\n }\n\n createState() {\n return EditorState.create({\n schema: this.schema,\n doc: this.createDocument(this.options.content),\n plugins: [...this.plugins, inputRules({\n rules: this.inputRules\n }), ...this.pasteRules, ...this.keymaps, keymap({\n Backspace: undoInputRule\n }), keymap(baseKeymap), ...(this.options.enableDropCursor ? [dropCursor(this.options.dropCursor)] : []), ...(this.options.enableGapCursor ? [gapCursor()] : []), new Plugin({\n key: new PluginKey('editable'),\n props: {\n editable: () => this.options.editable\n }\n }), new Plugin({\n props: {\n attributes: {\n tabindex: 0\n },\n handleDOMEvents: {\n focus: (view, event) => {\n this.focused = true;\n this.emit('focus', {\n event,\n state: view.state,\n view\n });\n const transaction = this.state.tr.setMeta('focused', true);\n this.view.dispatch(transaction);\n },\n blur: (view, event) => {\n this.focused = false;\n this.emit('blur', {\n event,\n state: view.state,\n view\n });\n const transaction = this.state.tr.setMeta('focused', false);\n this.view.dispatch(transaction);\n }\n }\n }\n }), new Plugin({\n props: this.options.editorProps\n })]\n });\n }\n\n createDocument(content, parseOptions = this.options.parseOptions) {\n if (content === null) {\n return this.schema.nodeFromJSON(this.options.emptyDocument);\n }\n\n if (typeof content === 'object') {\n try {\n return this.schema.nodeFromJSON(content);\n } catch (error) {\n console.warn('[tiptap warn]: Invalid content.', 'Passed value:', content, 'Error:', error);\n return this.schema.nodeFromJSON(this.options.emptyDocument);\n }\n }\n\n if (typeof content === 'string') {\n const htmlString = `