{"version":3,"sources":["webpack:///./node_modules/@tiptap/extension-hard-break/dist/tiptap-extension-hard-break.esm.js","webpack:///./node_modules/@tiptap/extension-text/dist/tiptap-extension-text.esm.js","webpack:///./node_modules/@tiptap/extension-italic/dist/tiptap-extension-italic.esm.js","webpack:///./node_modules/@tiptap/extension-bullet-list/dist/tiptap-extension-bullet-list.esm.js","webpack:///./node_modules/@tiptap/extension-bubble-menu/dist/tiptap-extension-bubble-menu.esm.js","webpack:///./node_modules/@tiptap/extension-link/dist/tiptap-extension-link.esm.js","webpack:///./node_modules/@tiptap/extension-document/dist/tiptap-extension-document.esm.js","webpack:///./node_modules/@tiptap/extension-paragraph/dist/tiptap-extension-paragraph.esm.js","webpack:///./node_modules/@tiptap/extension-bold/dist/tiptap-extension-bold.esm.js","webpack:///./node_modules/@tiptap/extension-ordered-list/dist/tiptap-extension-ordered-list.esm.js","webpack:///./node_modules/@tiptap/extension-list-item/dist/tiptap-extension-list-item.esm.js","webpack:///./node_modules/@tiptap/extension-code/dist/tiptap-extension-code.esm.js","webpack:///./node_modules/@tiptap/extension-strike/dist/tiptap-extension-strike.esm.js","webpack:///./node_modules/@tiptap/extension-floating-menu/dist/tiptap-extension-floating-menu.esm.js"],"names":["HardBreak","create","name","keepMarks","HTMLAttributes","inline","group","selectable","tag","this","options","setHardBreak","commands","chain","state","editor","first","exitCode","command","selection","storedMarks","$from","parent","type","spec","isolating","splittableMarks","extensionManager","marks","$to","parentOffset","insertContent","tr","dispatch","filteredMarks","filter","mark","includes","ensureMarks","run","Text","starInputRegex","starPasteRegex","underscoreInputRegex","underscorePasteRegex","Italic","getAttrs","node","style","fontStyle","setItalic","setMark","toggleItalic","toggleMark","unsetItalic","unsetMark","find","inputRegex","BulletList","itemTypeName","toggleBulletList","toggleList","BubbleMenuView","element","view","tippyOptions","shouldShow","preventHide","from","to","doc","empty","isEmptyTextBlock","textBetween","length","hasFocus","mousedownHandler","dragstartHandler","hide","focusHandler","setTimeout","update","blurHandler","event","_a","relatedTarget","parentNode","contains","addEventListener","capture","dom","on","remove","visibility","editorElement","editorIsAttached","parentElement","tippy","duration","getReferenceClientRect","content","interactive","trigger","placement","hideOnClick","popper","firstChild","oldState","_b","_c","composing","isSame","eq","createTooltip","ranges","Math","min","map","range","pos","max","call","setProps","nodeDOM","getBoundingClientRect","show","destroy","removeEventListener","off","BubbleMenuPlugin","key","pluginKey","autolink","appendTransaction","transactions","newState","docChanges","some","transaction","docChanged","preventAutolink","getMeta","transform","mapping","changes","forEach","oldRange","newRange","item","oldMark","newFrom","newTo","newMarks","newMark","oldLinkText","undefined","newLinkText","wasLink","isLink","removeMark","isTextblock","textBlock","text","nodeSize","link","validate","value","start","end","fromIsInRange","toIsInRange","addMark","href","steps","clickHandler","props","handleClick","attrs","target","closest","window","open","pasteHandler","handlePaste","slice","textContent","Link","priority","keepOnSplit","protocols","openOnClick","linkOnPaste","rel","class","default","setLink","attributes","setMeta","toggleLink","extendEmptyMarkRange","unsetLink","index","data","getAttributes","match","plugins","push","Document","topNode","Paragraph","setParagraph","setNode","Bold","fontWeight","test","setBold","toggleBold","unsetBold","OrderedList","parseHTML","hasAttribute","parseInt","getAttribute","attributesWithoutStart","toggleOrderedList","joinPredicate","childCount","ListItem","defining","Enter","splitListItem","Tab","sinkListItem","liftListItem","pasteRegex","Code","excludes","code","setCode","toggleCode","unsetCode","Strike","consuming","setStrike","toggleStrike","unsetStrike","FloatingMenuView","$anchor","isRootDepth","depth","FloatingMenuPlugin"],"mappings":"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","file":"js/group-account~group-homework~group-lesson~group-profile~group-teacher-approval~3400be9e.94c0bcff.js","sourcesContent":["import { Node, mergeAttributes } from '@tiptap/core';\n\nconst HardBreak = Node.create({\r\n name: 'hardBreak',\r\n addOptions() {\r\n return {\r\n keepMarks: true,\r\n HTMLAttributes: {},\r\n };\r\n },\r\n inline: true,\r\n group: 'inline',\r\n selectable: false,\r\n parseHTML() {\r\n return [\r\n { tag: 'br' },\r\n ];\r\n },\r\n renderHTML({ HTMLAttributes }) {\r\n return ['br', mergeAttributes(this.options.HTMLAttributes, HTMLAttributes)];\r\n },\r\n renderText() {\r\n return '\\n';\r\n },\r\n addCommands() {\r\n return {\r\n setHardBreak: () => ({ commands, chain, state, editor, }) => {\r\n return commands.first([\r\n () => commands.exitCode(),\r\n () => commands.command(() => {\r\n const { selection, storedMarks } = state;\r\n if (selection.$from.parent.type.spec.isolating) {\r\n return false;\r\n }\r\n const { keepMarks } = this.options;\r\n const { splittableMarks } = editor.extensionManager;\r\n const marks = storedMarks\r\n || (selection.$to.parentOffset && selection.$from.marks());\r\n return chain()\r\n .insertContent({ type: this.name })\r\n .command(({ tr, dispatch }) => {\r\n if (dispatch && marks && keepMarks) {\r\n const filteredMarks = marks\r\n .filter(mark => splittableMarks.includes(mark.type.name));\r\n tr.ensureMarks(filteredMarks);\r\n }\r\n return true;\r\n })\r\n .run();\r\n }),\r\n ]);\r\n },\r\n };\r\n },\r\n addKeyboardShortcuts() {\r\n return {\r\n 'Mod-Enter': () => this.editor.commands.setHardBreak(),\r\n 'Shift-Enter': () => this.editor.commands.setHardBreak(),\r\n };\r\n },\r\n});\n\nexport { HardBreak, HardBreak as default };\n//# sourceMappingURL=tiptap-extension-hard-break.esm.js.map\n","import { Node } from '@tiptap/core';\n\nconst Text = Node.create({\r\n name: 'text',\r\n group: 'inline',\r\n});\n\nexport { Text, Text as default };\n//# sourceMappingURL=tiptap-extension-text.esm.js.map\n","import { Mark, mergeAttributes, markInputRule, markPasteRule } from '@tiptap/core';\n\nconst starInputRegex = /(?:^|\\s)((?:\\*)((?:[^*]+))(?:\\*))$/;\r\nconst starPasteRegex = /(?:^|\\s)((?:\\*)((?:[^*]+))(?:\\*))/g;\r\nconst underscoreInputRegex = /(?:^|\\s)((?:_)((?:[^_]+))(?:_))$/;\r\nconst underscorePasteRegex = /(?:^|\\s)((?:_)((?:[^_]+))(?:_))/g;\r\nconst Italic = Mark.create({\r\n name: 'italic',\r\n addOptions() {\r\n return {\r\n HTMLAttributes: {},\r\n };\r\n },\r\n parseHTML() {\r\n return [\r\n {\r\n tag: 'em',\r\n },\r\n {\r\n tag: 'i',\r\n getAttrs: node => node.style.fontStyle !== 'normal' && null,\r\n },\r\n {\r\n style: 'font-style=italic',\r\n },\r\n ];\r\n },\r\n renderHTML({ HTMLAttributes }) {\r\n return ['em', mergeAttributes(this.options.HTMLAttributes, HTMLAttributes), 0];\r\n },\r\n addCommands() {\r\n return {\r\n setItalic: () => ({ commands }) => {\r\n return commands.setMark(this.name);\r\n },\r\n toggleItalic: () => ({ commands }) => {\r\n return commands.toggleMark(this.name);\r\n },\r\n unsetItalic: () => ({ commands }) => {\r\n return commands.unsetMark(this.name);\r\n },\r\n };\r\n },\r\n addKeyboardShortcuts() {\r\n return {\r\n 'Mod-i': () => this.editor.commands.toggleItalic(),\r\n 'Mod-I': () => this.editor.commands.toggleItalic(),\r\n };\r\n },\r\n addInputRules() {\r\n return [\r\n markInputRule({\r\n find: starInputRegex,\r\n type: this.type,\r\n }),\r\n markInputRule({\r\n find: underscoreInputRegex,\r\n type: this.type,\r\n }),\r\n ];\r\n },\r\n addPasteRules() {\r\n return [\r\n markPasteRule({\r\n find: starPasteRegex,\r\n type: this.type,\r\n }),\r\n markPasteRule({\r\n find: underscorePasteRegex,\r\n type: this.type,\r\n }),\r\n ];\r\n },\r\n});\n\nexport { Italic, Italic as default, starInputRegex, starPasteRegex, underscoreInputRegex, underscorePasteRegex };\n//# sourceMappingURL=tiptap-extension-italic.esm.js.map\n","import { Node, mergeAttributes, wrappingInputRule } from '@tiptap/core';\n\nconst inputRegex = /^\\s*([-+*])\\s$/;\r\nconst BulletList = Node.create({\r\n name: 'bulletList',\r\n addOptions() {\r\n return {\r\n itemTypeName: 'listItem',\r\n HTMLAttributes: {},\r\n };\r\n },\r\n group: 'block list',\r\n content() {\r\n return `${this.options.itemTypeName}+`;\r\n },\r\n parseHTML() {\r\n return [\r\n { tag: 'ul' },\r\n ];\r\n },\r\n renderHTML({ HTMLAttributes }) {\r\n return ['ul', mergeAttributes(this.options.HTMLAttributes, HTMLAttributes), 0];\r\n },\r\n addCommands() {\r\n return {\r\n toggleBulletList: () => ({ commands }) => {\r\n return commands.toggleList(this.name, this.options.itemTypeName);\r\n },\r\n };\r\n },\r\n addKeyboardShortcuts() {\r\n return {\r\n 'Mod-Shift-8': () => this.editor.commands.toggleBulletList(),\r\n };\r\n },\r\n addInputRules() {\r\n return [\r\n wrappingInputRule({\r\n find: inputRegex,\r\n type: this.type,\r\n }),\r\n ];\r\n },\r\n});\n\nexport { BulletList, BulletList as default, inputRegex };\n//# sourceMappingURL=tiptap-extension-bullet-list.esm.js.map\n","import { isTextSelection, isNodeSelection, posToDOMRect, Extension } from '@tiptap/core';\nimport { Plugin, PluginKey } from 'prosemirror-state';\nimport tippy from 'tippy.js';\n\nclass BubbleMenuView {\r\n constructor({ editor, element, view, tippyOptions = {}, shouldShow, }) {\r\n this.preventHide = false;\r\n this.shouldShow = ({ view, state, from, to, }) => {\r\n const { doc, selection } = state;\r\n const { empty } = selection;\r\n // Sometime check for `empty` is not enough.\r\n // Doubleclick an empty paragraph returns a node size of 2.\r\n // So we check also for an empty text size.\r\n const isEmptyTextBlock = !doc.textBetween(from, to).length\r\n && isTextSelection(state.selection);\r\n if (!view.hasFocus()\r\n || empty\r\n || isEmptyTextBlock) {\r\n return false;\r\n }\r\n return true;\r\n };\r\n this.mousedownHandler = () => {\r\n this.preventHide = true;\r\n };\r\n this.dragstartHandler = () => {\r\n this.hide();\r\n };\r\n this.focusHandler = () => {\r\n // we use `setTimeout` to make sure `selection` is already updated\r\n setTimeout(() => this.update(this.editor.view));\r\n };\r\n this.blurHandler = ({ event }) => {\r\n var _a;\r\n if (this.preventHide) {\r\n this.preventHide = false;\r\n return;\r\n }\r\n if ((event === null || event === void 0 ? void 0 : event.relatedTarget)\r\n && ((_a = this.element.parentNode) === null || _a === void 0 ? void 0 : _a.contains(event.relatedTarget))) {\r\n return;\r\n }\r\n this.hide();\r\n };\r\n this.editor = editor;\r\n this.element = element;\r\n this.view = view;\r\n if (shouldShow) {\r\n this.shouldShow = shouldShow;\r\n }\r\n this.element.addEventListener('mousedown', this.mousedownHandler, { capture: true });\r\n this.view.dom.addEventListener('dragstart', this.dragstartHandler);\r\n this.editor.on('focus', this.focusHandler);\r\n this.editor.on('blur', this.blurHandler);\r\n this.tippyOptions = tippyOptions;\r\n // Detaches menu content from its current parent\r\n this.element.remove();\r\n this.element.style.visibility = 'visible';\r\n }\r\n createTooltip() {\r\n const { element: editorElement } = this.editor.options;\r\n const editorIsAttached = !!editorElement.parentElement;\r\n if (this.tippy || !editorIsAttached) {\r\n return;\r\n }\r\n this.tippy = tippy(editorElement, {\r\n duration: 0,\r\n getReferenceClientRect: null,\r\n content: this.element,\r\n interactive: true,\r\n trigger: 'manual',\r\n placement: 'top',\r\n hideOnClick: 'toggle',\r\n ...this.tippyOptions,\r\n });\r\n // maybe we have to hide tippy on its own blur event as well\r\n if (this.tippy.popper.firstChild) {\r\n this.tippy.popper.firstChild.addEventListener('blur', event => {\r\n this.blurHandler({ event });\r\n });\r\n }\r\n }\r\n update(view, oldState) {\r\n var _a, _b, _c;\r\n const { state, composing } = view;\r\n const { doc, selection } = state;\r\n const isSame = oldState && oldState.doc.eq(doc) && oldState.selection.eq(selection);\r\n if (composing || isSame) {\r\n return;\r\n }\r\n this.createTooltip();\r\n // support for CellSelections\r\n const { ranges } = selection;\r\n const from = Math.min(...ranges.map(range => range.$from.pos));\r\n const to = Math.max(...ranges.map(range => range.$to.pos));\r\n const shouldShow = (_a = this.shouldShow) === null || _a === void 0 ? void 0 : _a.call(this, {\r\n editor: this.editor,\r\n view,\r\n state,\r\n oldState,\r\n from,\r\n to,\r\n });\r\n if (!shouldShow) {\r\n this.hide();\r\n return;\r\n }\r\n (_b = this.tippy) === null || _b === void 0 ? void 0 : _b.setProps({\r\n getReferenceClientRect: ((_c = this.tippyOptions) === null || _c === void 0 ? void 0 : _c.getReferenceClientRect) || (() => {\r\n if (isNodeSelection(state.selection)) {\r\n const node = view.nodeDOM(from);\r\n if (node) {\r\n return node.getBoundingClientRect();\r\n }\r\n }\r\n return posToDOMRect(view, from, to);\r\n }),\r\n });\r\n this.show();\r\n }\r\n show() {\r\n var _a;\r\n (_a = this.tippy) === null || _a === void 0 ? void 0 : _a.show();\r\n }\r\n hide() {\r\n var _a;\r\n (_a = this.tippy) === null || _a === void 0 ? void 0 : _a.hide();\r\n }\r\n destroy() {\r\n var _a;\r\n (_a = this.tippy) === null || _a === void 0 ? void 0 : _a.destroy();\r\n this.element.removeEventListener('mousedown', this.mousedownHandler, { capture: true });\r\n this.view.dom.removeEventListener('dragstart', this.dragstartHandler);\r\n this.editor.off('focus', this.focusHandler);\r\n this.editor.off('blur', this.blurHandler);\r\n }\r\n}\r\nconst BubbleMenuPlugin = (options) => {\r\n return new Plugin({\r\n key: typeof options.pluginKey === 'string'\r\n ? new PluginKey(options.pluginKey)\r\n : options.pluginKey,\r\n view: view => new BubbleMenuView({ view, ...options }),\r\n });\r\n};\n\nconst BubbleMenu = Extension.create({\r\n name: 'bubbleMenu',\r\n addOptions() {\r\n return {\r\n element: null,\r\n tippyOptions: {},\r\n pluginKey: 'bubbleMenu',\r\n shouldShow: null,\r\n };\r\n },\r\n addProseMirrorPlugins() {\r\n if (!this.options.element) {\r\n return [];\r\n }\r\n return [\r\n BubbleMenuPlugin({\r\n pluginKey: this.options.pluginKey,\r\n editor: this.editor,\r\n element: this.options.element,\r\n tippyOptions: this.options.tippyOptions,\r\n shouldShow: this.options.shouldShow,\r\n }),\r\n ];\r\n },\r\n});\n\nexport { BubbleMenu, BubbleMenuPlugin, BubbleMenuView, BubbleMenu as default };\n//# sourceMappingURL=tiptap-extension-bubble-menu.esm.js.map\n","import { combineTransactionSteps, getChangedRanges, getMarksBetween, findChildrenInRange, getAttributes, Mark, mergeAttributes, markPasteRule } from '@tiptap/core';\nimport { test, find, registerCustomProtocol } from 'linkifyjs';\nimport { Plugin, PluginKey } from 'prosemirror-state';\n\nfunction autolink(options) {\r\n return new Plugin({\r\n key: new PluginKey('autolink'),\r\n appendTransaction: (transactions, oldState, newState) => {\r\n const docChanges = transactions.some(transaction => transaction.docChanged)\r\n && !oldState.doc.eq(newState.doc);\r\n const preventAutolink = transactions.some(transaction => transaction.getMeta('preventAutolink'));\r\n if (!docChanges || preventAutolink) {\r\n return;\r\n }\r\n const { tr } = newState;\r\n const transform = combineTransactionSteps(oldState.doc, [...transactions]);\r\n const { mapping } = transform;\r\n const changes = getChangedRanges(transform);\r\n changes.forEach(({ oldRange, newRange }) => {\r\n // at first we check if we have to remove links\r\n getMarksBetween(oldRange.from, oldRange.to, oldState.doc)\r\n .filter(item => item.mark.type === options.type)\r\n .forEach(oldMark => {\r\n const newFrom = mapping.map(oldMark.from);\r\n const newTo = mapping.map(oldMark.to);\r\n const newMarks = getMarksBetween(newFrom, newTo, newState.doc)\r\n .filter(item => item.mark.type === options.type);\r\n if (!newMarks.length) {\r\n return;\r\n }\r\n const newMark = newMarks[0];\r\n const oldLinkText = oldState.doc.textBetween(oldMark.from, oldMark.to, undefined, ' ');\r\n const newLinkText = newState.doc.textBetween(newMark.from, newMark.to, undefined, ' ');\r\n const wasLink = test(oldLinkText);\r\n const isLink = test(newLinkText);\r\n // remove only the link, if it was a link before too\r\n // because we don’t want to remove links that were set manually\r\n if (wasLink && !isLink) {\r\n tr.removeMark(newMark.from, newMark.to, options.type);\r\n }\r\n });\r\n // now let’s see if we can add new links\r\n findChildrenInRange(newState.doc, newRange, node => node.isTextblock)\r\n .forEach(textBlock => {\r\n // we need to define a placeholder for leaf nodes\r\n // so that the link position can be calculated correctly\r\n const text = newState.doc.textBetween(textBlock.pos, textBlock.pos + textBlock.node.nodeSize, undefined, ' ');\r\n find(text)\r\n .filter(link => link.isLink)\r\n .filter(link => {\r\n if (options.validate) {\r\n return options.validate(link.value);\r\n }\r\n return true;\r\n })\r\n // calculate link position\r\n .map(link => ({\r\n ...link,\r\n from: textBlock.pos + link.start + 1,\r\n to: textBlock.pos + link.end + 1,\r\n }))\r\n // check if link is within the changed range\r\n .filter(link => {\r\n const fromIsInRange = newRange.from >= link.from && newRange.from <= link.to;\r\n const toIsInRange = newRange.to >= link.from && newRange.to <= link.to;\r\n return fromIsInRange || toIsInRange;\r\n })\r\n // add link mark\r\n .forEach(link => {\r\n tr.addMark(link.from, link.to, options.type.create({\r\n href: link.href,\r\n }));\r\n });\r\n });\r\n });\r\n if (!tr.steps.length) {\r\n return;\r\n }\r\n return tr;\r\n },\r\n });\r\n}\n\nfunction clickHandler(options) {\r\n return new Plugin({\r\n key: new PluginKey('handleClickLink'),\r\n props: {\r\n handleClick: (view, pos, event) => {\r\n var _a;\r\n const attrs = getAttributes(view.state, options.type.name);\r\n const link = (_a = event.target) === null || _a === void 0 ? void 0 : _a.closest('a');\r\n if (link && attrs.href) {\r\n window.open(attrs.href, attrs.target);\r\n return true;\r\n }\r\n return false;\r\n },\r\n },\r\n });\r\n}\n\nfunction pasteHandler(options) {\r\n return new Plugin({\r\n key: new PluginKey('handlePasteLink'),\r\n props: {\r\n handlePaste: (view, event, slice) => {\r\n const { state } = view;\r\n const { selection } = state;\r\n const { empty } = selection;\r\n if (empty) {\r\n return false;\r\n }\r\n let textContent = '';\r\n slice.content.forEach(node => {\r\n textContent += node.textContent;\r\n });\r\n const link = find(textContent).find(item => item.isLink && item.value === textContent);\r\n if (!textContent || !link) {\r\n return false;\r\n }\r\n options.editor.commands.setMark(options.type, {\r\n href: link.href,\r\n });\r\n return true;\r\n },\r\n },\r\n });\r\n}\n\nconst Link = Mark.create({\r\n name: 'link',\r\n priority: 1000,\r\n keepOnSplit: false,\r\n onCreate() {\r\n this.options.protocols.forEach(registerCustomProtocol);\r\n },\r\n inclusive() {\r\n return this.options.autolink;\r\n },\r\n addOptions() {\r\n return {\r\n openOnClick: true,\r\n linkOnPaste: true,\r\n autolink: true,\r\n protocols: [],\r\n HTMLAttributes: {\r\n target: '_blank',\r\n rel: 'noopener noreferrer nofollow',\r\n class: null,\r\n },\r\n validate: undefined,\r\n };\r\n },\r\n addAttributes() {\r\n return {\r\n href: {\r\n default: null,\r\n },\r\n target: {\r\n default: this.options.HTMLAttributes.target,\r\n },\r\n class: {\r\n default: this.options.HTMLAttributes.class,\r\n },\r\n };\r\n },\r\n parseHTML() {\r\n return [\r\n { tag: 'a[href]:not([href *= \"javascript:\" i])' },\r\n ];\r\n },\r\n renderHTML({ HTMLAttributes }) {\r\n return [\r\n 'a',\r\n mergeAttributes(this.options.HTMLAttributes, HTMLAttributes),\r\n 0,\r\n ];\r\n },\r\n addCommands() {\r\n return {\r\n setLink: attributes => ({ chain }) => {\r\n return chain()\r\n .setMark(this.name, attributes)\r\n .setMeta('preventAutolink', true)\r\n .run();\r\n },\r\n toggleLink: attributes => ({ chain }) => {\r\n return chain()\r\n .toggleMark(this.name, attributes, { extendEmptyMarkRange: true })\r\n .setMeta('preventAutolink', true)\r\n .run();\r\n },\r\n unsetLink: () => ({ chain }) => {\r\n return chain()\r\n .unsetMark(this.name, { extendEmptyMarkRange: true })\r\n .setMeta('preventAutolink', true)\r\n .run();\r\n },\r\n };\r\n },\r\n addPasteRules() {\r\n return [\r\n markPasteRule({\r\n find: text => find(text)\r\n .filter(link => {\r\n if (this.options.validate) {\r\n return this.options.validate(link.value);\r\n }\r\n return true;\r\n })\r\n .filter(link => link.isLink)\r\n .map(link => ({\r\n text: link.value,\r\n index: link.start,\r\n data: link,\r\n })),\r\n type: this.type,\r\n getAttributes: match => {\r\n var _a;\r\n return ({\r\n href: (_a = match.data) === null || _a === void 0 ? void 0 : _a.href,\r\n });\r\n },\r\n }),\r\n ];\r\n },\r\n addProseMirrorPlugins() {\r\n const plugins = [];\r\n if (this.options.autolink) {\r\n plugins.push(autolink({\r\n type: this.type,\r\n validate: this.options.validate,\r\n }));\r\n }\r\n if (this.options.openOnClick) {\r\n plugins.push(clickHandler({\r\n type: this.type,\r\n }));\r\n }\r\n if (this.options.linkOnPaste) {\r\n plugins.push(pasteHandler({\r\n editor: this.editor,\r\n type: this.type,\r\n }));\r\n }\r\n return plugins;\r\n },\r\n});\n\nexport { Link, Link as default };\n//# sourceMappingURL=tiptap-extension-link.esm.js.map\n","import { Node } from '@tiptap/core';\n\nconst Document = Node.create({\r\n name: 'doc',\r\n topNode: true,\r\n content: 'block+',\r\n});\n\nexport { Document, Document as default };\n//# sourceMappingURL=tiptap-extension-document.esm.js.map\n","import { Node, mergeAttributes } from '@tiptap/core';\n\nconst Paragraph = Node.create({\r\n name: 'paragraph',\r\n priority: 1000,\r\n addOptions() {\r\n return {\r\n HTMLAttributes: {},\r\n };\r\n },\r\n group: 'block',\r\n content: 'inline*',\r\n parseHTML() {\r\n return [\r\n { tag: 'p' },\r\n ];\r\n },\r\n renderHTML({ HTMLAttributes }) {\r\n return ['p', mergeAttributes(this.options.HTMLAttributes, HTMLAttributes), 0];\r\n },\r\n addCommands() {\r\n return {\r\n setParagraph: () => ({ commands }) => {\r\n return commands.setNode(this.name);\r\n },\r\n };\r\n },\r\n addKeyboardShortcuts() {\r\n return {\r\n 'Mod-Alt-0': () => this.editor.commands.setParagraph(),\r\n };\r\n },\r\n});\n\nexport { Paragraph, Paragraph as default };\n//# sourceMappingURL=tiptap-extension-paragraph.esm.js.map\n","import { Mark, mergeAttributes, markInputRule, markPasteRule } from '@tiptap/core';\n\nconst starInputRegex = /(?:^|\\s)((?:\\*\\*)((?:[^*]+))(?:\\*\\*))$/;\r\nconst starPasteRegex = /(?:^|\\s)((?:\\*\\*)((?:[^*]+))(?:\\*\\*))/g;\r\nconst underscoreInputRegex = /(?:^|\\s)((?:__)((?:[^__]+))(?:__))$/;\r\nconst underscorePasteRegex = /(?:^|\\s)((?:__)((?:[^__]+))(?:__))/g;\r\nconst Bold = Mark.create({\r\n name: 'bold',\r\n addOptions() {\r\n return {\r\n HTMLAttributes: {},\r\n };\r\n },\r\n parseHTML() {\r\n return [\r\n {\r\n tag: 'strong',\r\n },\r\n {\r\n tag: 'b',\r\n getAttrs: node => node.style.fontWeight !== 'normal' && null,\r\n },\r\n {\r\n style: 'font-weight',\r\n getAttrs: value => /^(bold(er)?|[5-9]\\d{2,})$/.test(value) && null,\r\n },\r\n ];\r\n },\r\n renderHTML({ HTMLAttributes }) {\r\n return ['strong', mergeAttributes(this.options.HTMLAttributes, HTMLAttributes), 0];\r\n },\r\n addCommands() {\r\n return {\r\n setBold: () => ({ commands }) => {\r\n return commands.setMark(this.name);\r\n },\r\n toggleBold: () => ({ commands }) => {\r\n return commands.toggleMark(this.name);\r\n },\r\n unsetBold: () => ({ commands }) => {\r\n return commands.unsetMark(this.name);\r\n },\r\n };\r\n },\r\n addKeyboardShortcuts() {\r\n return {\r\n 'Mod-b': () => this.editor.commands.toggleBold(),\r\n 'Mod-B': () => this.editor.commands.toggleBold(),\r\n };\r\n },\r\n addInputRules() {\r\n return [\r\n markInputRule({\r\n find: starInputRegex,\r\n type: this.type,\r\n }),\r\n markInputRule({\r\n find: underscoreInputRegex,\r\n type: this.type,\r\n }),\r\n ];\r\n },\r\n addPasteRules() {\r\n return [\r\n markPasteRule({\r\n find: starPasteRegex,\r\n type: this.type,\r\n }),\r\n markPasteRule({\r\n find: underscorePasteRegex,\r\n type: this.type,\r\n }),\r\n ];\r\n },\r\n});\n\nexport { Bold, Bold as default, starInputRegex, starPasteRegex, underscoreInputRegex, underscorePasteRegex };\n//# sourceMappingURL=tiptap-extension-bold.esm.js.map\n","import { Node, mergeAttributes, wrappingInputRule } from '@tiptap/core';\n\nconst inputRegex = /^(\\d+)\\.\\s$/;\r\nconst OrderedList = Node.create({\r\n name: 'orderedList',\r\n addOptions() {\r\n return {\r\n itemTypeName: 'listItem',\r\n HTMLAttributes: {},\r\n };\r\n },\r\n group: 'block list',\r\n content() {\r\n return `${this.options.itemTypeName}+`;\r\n },\r\n addAttributes() {\r\n return {\r\n start: {\r\n default: 1,\r\n parseHTML: element => {\r\n return element.hasAttribute('start')\r\n ? parseInt(element.getAttribute('start') || '', 10)\r\n : 1;\r\n },\r\n },\r\n };\r\n },\r\n parseHTML() {\r\n return [\r\n {\r\n tag: 'ol',\r\n },\r\n ];\r\n },\r\n renderHTML({ HTMLAttributes }) {\r\n const { start, ...attributesWithoutStart } = HTMLAttributes;\r\n return start === 1\r\n ? ['ol', mergeAttributes(this.options.HTMLAttributes, attributesWithoutStart), 0]\r\n : ['ol', mergeAttributes(this.options.HTMLAttributes, HTMLAttributes), 0];\r\n },\r\n addCommands() {\r\n return {\r\n toggleOrderedList: () => ({ commands }) => {\r\n return commands.toggleList(this.name, this.options.itemTypeName);\r\n },\r\n };\r\n },\r\n addKeyboardShortcuts() {\r\n return {\r\n 'Mod-Shift-7': () => this.editor.commands.toggleOrderedList(),\r\n };\r\n },\r\n addInputRules() {\r\n return [\r\n wrappingInputRule({\r\n find: inputRegex,\r\n type: this.type,\r\n getAttributes: match => ({ start: +match[1] }),\r\n joinPredicate: (match, node) => node.childCount + node.attrs.start === +match[1],\r\n }),\r\n ];\r\n },\r\n});\n\nexport { OrderedList, OrderedList as default, inputRegex };\n//# sourceMappingURL=tiptap-extension-ordered-list.esm.js.map\n","import { Node, mergeAttributes } from '@tiptap/core';\n\nconst ListItem = Node.create({\r\n name: 'listItem',\r\n addOptions() {\r\n return {\r\n HTMLAttributes: {},\r\n };\r\n },\r\n content: 'paragraph block*',\r\n defining: true,\r\n parseHTML() {\r\n return [\r\n {\r\n tag: 'li',\r\n },\r\n ];\r\n },\r\n renderHTML({ HTMLAttributes }) {\r\n return ['li', mergeAttributes(this.options.HTMLAttributes, HTMLAttributes), 0];\r\n },\r\n addKeyboardShortcuts() {\r\n return {\r\n Enter: () => this.editor.commands.splitListItem(this.name),\r\n Tab: () => this.editor.commands.sinkListItem(this.name),\r\n 'Shift-Tab': () => this.editor.commands.liftListItem(this.name),\r\n };\r\n },\r\n});\n\nexport { ListItem, ListItem as default };\n//# sourceMappingURL=tiptap-extension-list-item.esm.js.map\n","import { Mark, mergeAttributes, markInputRule, markPasteRule } from '@tiptap/core';\n\nconst inputRegex = /(?:^|\\s)((?:`)((?:[^`]+))(?:`))$/;\r\nconst pasteRegex = /(?:^|\\s)((?:`)((?:[^`]+))(?:`))/g;\r\nconst Code = Mark.create({\r\n name: 'code',\r\n addOptions() {\r\n return {\r\n HTMLAttributes: {},\r\n };\r\n },\r\n excludes: '_',\r\n code: true,\r\n parseHTML() {\r\n return [\r\n { tag: 'code' },\r\n ];\r\n },\r\n renderHTML({ HTMLAttributes }) {\r\n return ['code', mergeAttributes(this.options.HTMLAttributes, HTMLAttributes), 0];\r\n },\r\n addCommands() {\r\n return {\r\n setCode: () => ({ commands }) => {\r\n return commands.setMark(this.name);\r\n },\r\n toggleCode: () => ({ commands }) => {\r\n return commands.toggleMark(this.name);\r\n },\r\n unsetCode: () => ({ commands }) => {\r\n return commands.unsetMark(this.name);\r\n },\r\n };\r\n },\r\n addKeyboardShortcuts() {\r\n return {\r\n 'Mod-e': () => this.editor.commands.toggleCode(),\r\n };\r\n },\r\n addInputRules() {\r\n return [\r\n markInputRule({\r\n find: inputRegex,\r\n type: this.type,\r\n }),\r\n ];\r\n },\r\n addPasteRules() {\r\n return [\r\n markPasteRule({\r\n find: pasteRegex,\r\n type: this.type,\r\n }),\r\n ];\r\n },\r\n});\n\nexport { Code, Code as default, inputRegex, pasteRegex };\n//# sourceMappingURL=tiptap-extension-code.esm.js.map\n","import { Mark, mergeAttributes, markInputRule, markPasteRule } from '@tiptap/core';\n\nconst inputRegex = /(?:^|\\s)((?:~~)((?:[^~]+))(?:~~))$/;\r\nconst pasteRegex = /(?:^|\\s)((?:~~)((?:[^~]+))(?:~~))/g;\r\nconst Strike = Mark.create({\r\n name: 'strike',\r\n addOptions() {\r\n return {\r\n HTMLAttributes: {},\r\n };\r\n },\r\n parseHTML() {\r\n return [\r\n {\r\n tag: 's',\r\n },\r\n {\r\n tag: 'del',\r\n },\r\n {\r\n tag: 'strike',\r\n },\r\n {\r\n style: 'text-decoration',\r\n consuming: false,\r\n getAttrs: style => (style.includes('line-through') ? {} : false),\r\n },\r\n ];\r\n },\r\n renderHTML({ HTMLAttributes }) {\r\n return ['s', mergeAttributes(this.options.HTMLAttributes, HTMLAttributes), 0];\r\n },\r\n addCommands() {\r\n return {\r\n setStrike: () => ({ commands }) => {\r\n return commands.setMark(this.name);\r\n },\r\n toggleStrike: () => ({ commands }) => {\r\n return commands.toggleMark(this.name);\r\n },\r\n unsetStrike: () => ({ commands }) => {\r\n return commands.unsetMark(this.name);\r\n },\r\n };\r\n },\r\n addKeyboardShortcuts() {\r\n return {\r\n 'Mod-Shift-x': () => this.editor.commands.toggleStrike(),\r\n };\r\n },\r\n addInputRules() {\r\n return [\r\n markInputRule({\r\n find: inputRegex,\r\n type: this.type,\r\n }),\r\n ];\r\n },\r\n addPasteRules() {\r\n return [\r\n markPasteRule({\r\n find: pasteRegex,\r\n type: this.type,\r\n }),\r\n ];\r\n },\r\n});\n\nexport { Strike, Strike as default, inputRegex, pasteRegex };\n//# sourceMappingURL=tiptap-extension-strike.esm.js.map\n","import { posToDOMRect, Extension } from '@tiptap/core';\nimport { Plugin, PluginKey } from 'prosemirror-state';\nimport tippy from 'tippy.js';\n\nclass FloatingMenuView {\r\n constructor({ editor, element, view, tippyOptions = {}, shouldShow, }) {\r\n this.preventHide = false;\r\n this.shouldShow = ({ view, state }) => {\r\n const { selection } = state;\r\n const { $anchor, empty } = selection;\r\n const isRootDepth = $anchor.depth === 1;\r\n const isEmptyTextBlock = $anchor.parent.isTextblock\r\n && !$anchor.parent.type.spec.code\r\n && !$anchor.parent.textContent;\r\n if (!view.hasFocus()\r\n || !empty\r\n || !isRootDepth\r\n || !isEmptyTextBlock) {\r\n return false;\r\n }\r\n return true;\r\n };\r\n this.mousedownHandler = () => {\r\n this.preventHide = true;\r\n };\r\n this.focusHandler = () => {\r\n // we use `setTimeout` to make sure `selection` is already updated\r\n setTimeout(() => this.update(this.editor.view));\r\n };\r\n this.blurHandler = ({ event }) => {\r\n var _a;\r\n if (this.preventHide) {\r\n this.preventHide = false;\r\n return;\r\n }\r\n if ((event === null || event === void 0 ? void 0 : event.relatedTarget)\r\n && ((_a = this.element.parentNode) === null || _a === void 0 ? void 0 : _a.contains(event.relatedTarget))) {\r\n return;\r\n }\r\n this.hide();\r\n };\r\n this.editor = editor;\r\n this.element = element;\r\n this.view = view;\r\n if (shouldShow) {\r\n this.shouldShow = shouldShow;\r\n }\r\n this.element.addEventListener('mousedown', this.mousedownHandler, { capture: true });\r\n this.editor.on('focus', this.focusHandler);\r\n this.editor.on('blur', this.blurHandler);\r\n this.tippyOptions = tippyOptions;\r\n // Detaches menu content from its current parent\r\n this.element.remove();\r\n this.element.style.visibility = 'visible';\r\n }\r\n createTooltip() {\r\n const { element: editorElement } = this.editor.options;\r\n const editorIsAttached = !!editorElement.parentElement;\r\n if (this.tippy || !editorIsAttached) {\r\n return;\r\n }\r\n this.tippy = tippy(editorElement, {\r\n duration: 0,\r\n getReferenceClientRect: null,\r\n content: this.element,\r\n interactive: true,\r\n trigger: 'manual',\r\n placement: 'right',\r\n hideOnClick: 'toggle',\r\n ...this.tippyOptions,\r\n });\r\n // maybe we have to hide tippy on its own blur event as well\r\n if (this.tippy.popper.firstChild) {\r\n this.tippy.popper.firstChild.addEventListener('blur', event => {\r\n this.blurHandler({ event });\r\n });\r\n }\r\n }\r\n update(view, oldState) {\r\n var _a, _b, _c;\r\n const { state } = view;\r\n const { doc, selection } = state;\r\n const { from, to } = selection;\r\n const isSame = oldState && oldState.doc.eq(doc) && oldState.selection.eq(selection);\r\n if (isSame) {\r\n return;\r\n }\r\n this.createTooltip();\r\n const shouldShow = (_a = this.shouldShow) === null || _a === void 0 ? void 0 : _a.call(this, {\r\n editor: this.editor,\r\n view,\r\n state,\r\n oldState,\r\n });\r\n if (!shouldShow) {\r\n this.hide();\r\n return;\r\n }\r\n (_b = this.tippy) === null || _b === void 0 ? void 0 : _b.setProps({\r\n getReferenceClientRect: ((_c = this.tippyOptions) === null || _c === void 0 ? void 0 : _c.getReferenceClientRect) || (() => posToDOMRect(view, from, to)),\r\n });\r\n this.show();\r\n }\r\n show() {\r\n var _a;\r\n (_a = this.tippy) === null || _a === void 0 ? void 0 : _a.show();\r\n }\r\n hide() {\r\n var _a;\r\n (_a = this.tippy) === null || _a === void 0 ? void 0 : _a.hide();\r\n }\r\n destroy() {\r\n var _a;\r\n (_a = this.tippy) === null || _a === void 0 ? void 0 : _a.destroy();\r\n this.element.removeEventListener('mousedown', this.mousedownHandler, { capture: true });\r\n this.editor.off('focus', this.focusHandler);\r\n this.editor.off('blur', this.blurHandler);\r\n }\r\n}\r\nconst FloatingMenuPlugin = (options) => {\r\n return new Plugin({\r\n key: typeof options.pluginKey === 'string'\r\n ? new PluginKey(options.pluginKey)\r\n : options.pluginKey,\r\n view: view => new FloatingMenuView({ view, ...options }),\r\n });\r\n};\n\nconst FloatingMenu = Extension.create({\r\n name: 'floatingMenu',\r\n addOptions() {\r\n return {\r\n element: null,\r\n tippyOptions: {},\r\n pluginKey: 'floatingMenu',\r\n shouldShow: null,\r\n };\r\n },\r\n addProseMirrorPlugins() {\r\n if (!this.options.element) {\r\n return [];\r\n }\r\n return [\r\n FloatingMenuPlugin({\r\n pluginKey: this.options.pluginKey,\r\n editor: this.editor,\r\n element: this.options.element,\r\n tippyOptions: this.options.tippyOptions,\r\n shouldShow: this.options.shouldShow,\r\n }),\r\n ];\r\n },\r\n});\n\nexport { FloatingMenu, FloatingMenuPlugin, FloatingMenuView, FloatingMenu as default };\n//# sourceMappingURL=tiptap-extension-floating-menu.esm.js.map\n"],"sourceRoot":""}