{"version":3,"file":"js/7947-15b502e51c13ce131294.js","mappings":"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","sources":["webpack://app/../usr/local/bundle/gems/decidim-core-0.26.10/app/packs/src/decidim/editor/attribute_diff.js","webpack://app/../usr/local/bundle/gems/decidim-core-0.26.10/app/packs/src/decidim/editor/history_override.js","webpack://app/../usr/local/bundle/gems/decidim-core-0.26.10/app/packs/src/decidim/editor/linebreak_module.js","webpack://app/../usr/local/bundle/gems/decidim-core-0.26.10/app/packs/src/decidim/editor/modified_backspace_offset1.js","webpack://app/../usr/local/bundle/gems/decidim-core-0.26.10/app/packs/src/decidim/editor/modified_backspace_offset_any.js","webpack://app/../usr/local/bundle/gems/decidim-core-0.26.10/app/packs/src/decidim/editor/modified_enter.js"],"sourcesContent":["/* eslint-disable require-jsdoc */\n\n// ORGINAL: https://github.com/quilljs/delta/blob/ddda3bf088cda3ec03d5dbcc1179679d147f3a02/src/AttributeMap.ts\nexport default function attributeDiff(attributes1, attributes2) {\n let alpha = attributes1;\n let beta = attributes2;\n if (typeof alpha !== \"object\") {\n alpha = {};\n }\n if (typeof beta !== \"object\") {\n beta = {};\n }\n const attributes = Object.keys(alpha).concat(Object.keys(beta)).reduce((attrs, key) => {\n // ORGINAL: import isEqual from 'lodash.isequal'; if (!isEqual(a[key], b[key]))\n if ((alpha[key] !== beta[key])) {\n attrs[key] = null;\n if (beta[key]) {\n attrs[key] = beta[key]\n }\n }\n return attrs;\n }, {});\n\n if (Object.keys(attributes).length > 0) {\n return attributes;\n }\n return null;\n}\n","/* eslint-disable require-jsdoc */\n\nconst History = Quill.import(\"modules/history\");\nHistory.DEFAULTS = {\n delay: 1000,\n maxStack: 100,\n userOnly: true\n};\n\n/**\n * Linebreak module brokes quill's default history class.\n * So here we are moving innerHTML to undo and redo stack\n * instead of deltas.\n */\nexport default class HistoryOverride extends History {\n constructor(quill, options) {\n super(quill, options);\n this.lastRecorded = 0;\n this.ignoreChange = false;\n this.init = false;\n this.quill.emitter.on(\"editor-ready\", () => {\n this.clear();\n const $input = $(this.quill.container).siblings('input[type=\"hidden\"]');\n this.stack.undo.push({content: $input.val() || \"\", index: this.quill.getLength() - 2 });\n this.lastLength = this.quill.getLength();\n })\n /* eslint-disable max-params */\n this.quill.on(Quill.events.EDITOR_CHANGE, (eventName, delta, oldDelta, source) => {\n if (!delta) {\n return;\n }\n if (!this.init && eventName === \"selection-change\") {\n this.stack.undo[0].index = delta.index;\n }\n if (eventName !== Quill.events.TEXT_CHANGE || this.ignoreChange) {\n return;\n }\n\n if (!this.options.userOnly || source === Quill.sources.USER) {\n this.record(delta, oldDelta);\n }\n });\n this.quill.keyboard.addBinding({ key: \"Z\", shortKey: true }, this.undo.bind(this));\n this.quill.keyboard.addBinding({ key: \"Z\", shortKey: true, shiftKey: true }, this.redo.bind(this));\n if ((/Win/i).test(navigator.platform)) {\n this.quill.keyboard.addBinding({ key: \"Y\", shortKey: true }, this.redo.bind(this));\n }\n }\n /* eslint-enable max-params */\n\n change(source, dest) {\n if (this.stack[source].length === 0) {\n return;\n }\n let obj = this.updateStacks(source, dest);\n if (!obj.content) {\n return;\n }\n if (!obj.index) {\n obj.index = 0\n }\n this.lastRecorded = 0;\n this.ignoreChange = true;\n this.quill.setContents(this.quill.clipboard.convert(obj.content));\n this.ignoreChange = false;\n let index = obj.index;\n this.quill.setSelection(index);\n }\n\n updateStacks(source, dest) {\n if (source === \"undo\") {\n if (this.stack.undo.length === 1) {\n return this.stack.undo[0]\n }\n this.stack[dest].push(this.stack.undo.pop())\n return this.stack.undo[this.stack.undo.length - 1]\n }\n let content = this.stack.redo.pop();\n this.stack.undo.push(content)\n return content\n }\n\n record(changeDelta) {\n if (changeDelta.ops.length === 0) {\n return\n } else if (!this.init) {\n this.init = true;\n }\n this.stack.redo = [];\n let timestamp = Date.now();\n // Should not return after length check, because after linebreak a keypress replaces invisible characters with\n // visible characters.\n // For example:

-> [press X] ->
X

.\n if (Math.abs(this.lastLength === this.quill.getLength()) || this.lastRecorded + this.options.delay > timestamp) {\n if (this.stack.undo.length > 1) {\n this.stack.undo.pop();\n }\n } else {\n this.lastLength = this.quill.getLength();\n if (this.lastRecorded + this.options.delay <= timestamp) {\n this.lastRecorded = timestamp;\n }\n }\n this.stack.undo.push({content: this.quill.container.firstChild.innerHTML, index: this.quill.getSelection()})\n }\n\n transform() {\n return;\n }\n}\n","/* eslint-disable require-jsdoc */\n\nimport addEnterBindings from \"src/decidim/editor/modified_enter\"\nimport backspaceBindingsRangeAny from \"src/decidim/editor/modified_backspace_offset_any\"\nimport backspaceBindings from \"src/decidim/editor/modified_backspace_offset1\"\nimport HistoryOverride from \"src/decidim/editor/history_override\"\n\n// Disable warning messages from overwritting modules\nQuill.debug(\"error\");\n\n// It all started with these snippets of code: https://github.com/quilljs/quill/issues/252\nconst Delta = Quill.import(\"delta\");\nconst Break = Quill.import(\"blots/break\");\nconst Embed = Quill.import(\"blots/embed\");\nconst Scroll = Quill.import(\"blots/scroll\");\nconst Parchment = Quill.import(\"parchment\");\nQuill.register({\"modules/history\": HistoryOverride}, true);\nlet icons = Quill.import(\"ui/icons\");\nicons.linebreak = \"⏎\";\n\nclass SmartBreak extends Break {\n length() {\n return 1;\n }\n\n value() {\n return \"\\n\";\n }\n\n insertInto(parent, ref) {\n // Embed.prototype.insertInto.call(this, parent, ref);\n Reflect.apply(Embed.prototype.insertInto, this, [parent, ref]);\n }\n}\nQuill.register(SmartBreak);\n\n// Override quill/blots/scroll.js\nclass ScrollOvderride extends Scroll {\n optimize(mutations = [], context = {}) {\n if (this.batch === true) {\n return;\n }\n\n this.parchmentOptimize(mutations, context);\n\n if (mutations.length > 0) {\n // quill/core/emitter.js, Emitter.events.SCROLL_OPTIMIZE = \"scroll-optimize\"\n this.emitter.emit(\"scroll-optimize\", mutations, context);\n }\n }\n\n // Override parchment/src/blot/scroll.ts\n parchmentOptimize(mutations = [], context = {}) {\n // super.optimize(context);\n Reflect.apply(Parchment.Container.prototype.optimize, this, [context]);\n\n // We must modify mutations directly, cannot make copy and then modify\n // let records = [].slice.call(this.observer.takeRecords());\n let records = [...this.observer.takeRecords()];\n // Array.push currently seems to be implemented by a non-tail recursive function\n // so we cannot just mutations.push.apply(mutations, this.observer.takeRecords());\n while (records.length > 0) {\n mutations.push(records.pop());\n }\n let mark = (blot, markParent) => {\n if (!blot || blot === this) {\n return;\n }\n if (!blot.domNode.parentNode) {\n return;\n }\n if (blot.domNode.__blot && blot.domNode.__blot.mutations === null) {\n blot.domNode.__blot.mutations = [];\n }\n if (markParent) {\n mark(blot.parent);\n }\n };\n let optimize = (blot) => {\n // Post-order traversal\n if (!blot.domNode.__blot) {\n return;\n }\n\n if (blot instanceof Parchment.Container) {\n blot.children.forEach(optimize);\n }\n blot.optimize(context);\n };\n let remaining = mutations;\n for (let ind = 0; remaining.length > 0; ind += 1) {\n // MAX_OPTIMIZE_ITERATIONS = 100\n if (ind >= 100) {\n throw new Error(\"[Parchment] Maximum optimize iterations reached\");\n }\n remaining.forEach((mutation) => {\n let blot = Parchment.find(mutation.target, true);\n if (!blot) {\n return;\n }\n if (blot.domNode === mutation.target) {\n if (mutation.type === \"childList\") {\n mark(Parchment.find(mutation.previousSibling, false));\n\n mutation.addedNodes.forEach((node) => {\n let child = Parchment.find(node, false);\n mark(child, false);\n if (child instanceof Parchment.Container) {\n child.children.forEach(function(grandChild) {\n mark(grandChild, false);\n });\n }\n });\n } else if (mutation.type === \"attributes\") {\n mark(blot.prev);\n }\n }\n mark(blot);\n });\n this.children.forEach(optimize);\n remaining = [...this.observer.takeRecords()];\n records = remaining.slice();\n while (records.length > 0) {\n mutations.push(records.pop());\n }\n }\n }\n};\nQuill.register(\"blots/scroll\", ScrollOvderride, true);\nParchment.register(ScrollOvderride);\n\nexport default function lineBreakButtonHandler(quill) {\n let range = quill.selection.getRange()[0];\n let currentLeaf = quill.getLeaf(range.index)[0];\n let nextLeaf = quill.getLeaf(range.index + 1)[0];\n const previousChar = quill.getText(range.index - 1, 1);\n\n // Insert a second break if:\n // At the end of the editor, OR next leaf has a different parent (

)\n if (nextLeaf === null || (currentLeaf.parent !== nextLeaf.parent)) {\n quill.insertEmbed(range.index, \"break\", true, \"user\");\n quill.insertEmbed(range.index, \"break\", true, \"user\");\n } else if (previousChar === \"\\n\") {\n const delta = new Delta().retain(range.index).insert(\"\\n\");\n quill.updateContents(delta, Quill.sources.USER);\n } else {\n quill.insertEmbed(range.index, \"break\", true, \"user\");\n }\n\n // Now that we've inserted a line break, move the cursor forward\n quill.setSelection(range.index + 1, Quill.sources.SILENT);\n}\n\nQuill.register(\"modules/linebreak\", (quill) => {\n quill.getModule(\"toolbar\").addHandler(\"linebreak\", () => {\n lineBreakButtonHandler(quill);\n });\n\n quill.emitter.on(\"editor-ready\", () => {\n const length = quill.getLength();\n const text = quill.getText(length - 2, 2);\n\n // Remove extraneous new lines\n if (text === \"\\n\\n\") {\n quill.deleteText(quill.getLength() - 2, 2);\n }\n });\n\n addEnterBindings(quill);\n backspaceBindingsRangeAny(quill);\n backspaceBindings(quill);\n\n return;\n});\n\n","/* eslint-disable require-jsdoc */\n\nimport attributeDiff from \"src/decidim/editor/attribute_diff\"\n\nconst Delta = Quill.import(\"delta\");\n\nconst previousChar = (quill, range) => {\n return quill.getText(range.index - 1, 1);\n}\n\nconst beforePreviousChar = (quill, range) => {\n return quill.getText(range.index - 2, 1);\n}\n\nconst nextChar = (quill, range) => {\n return quill.getText(range.index, 1);\n}\n\nconst handleListSelection = (quill, range) => {\n const lastCharacterOfPreviousLine = quill.getText(range.index - 3, 1);\n if (nextChar(quill, range) === \"\\n\" || lastCharacterOfPreviousLine !== \"\\n\") {\n quill.setSelection(range.index - 1, Quill.sources.SILENT);\n } else {\n quill.setSelection(range.index - 3, Quill.sources.SILENT);\n }\n}\n\nconst moveSelectionToPreviousLine = (quill, range) => {\n const lastCharacterOfPreviousLine = quill.getText(range.index - 3, 1);\n if (nextChar(quill, range) === \"\\n\" || lastCharacterOfPreviousLine !== \"\\n\") {\n quill.setSelection(range.index - 1, Quill.sources.SILENT);\n } else {\n quill.setSelection(range.index - 3, Quill.sources.SILENT);\n }\n}\n\nexport default function backspaceBindings(quill) {\n quill.keyboard.addBinding({ key: 8, offset: 1, collapsed: true }, (range, context) => {\n let length = 1\n if ((/[\\uD800-\\uDBFF][\\uDC00-\\uDFFF]$/).test(context.prefix)) {\n length = 2;\n }\n\n if (range.index === 0 || quill.getLength() <= 1) {\n return;\n }\n let formats = {};\n const [line] = quill.getLine(range.index);\n let delta = new Delta().retain(range.index - length).delete(length);\n if (context.offset === 1 && previousChar(quill, range) === \"\\n\") {\n const [prev] = quill.getLine(range.index - 2);\n if (prev && prev.statics.blotName === \"list-item\") {\n formats = handleListSelection(quill, range);\n if (prev !== null && prev.length() > 1) {\n let curFormats = line.formats();\n let prevFormats = quill.getFormat(range.index - 2, 1);\n formats = attributeDiff(curFormats, prevFormats) || {};\n length += 1;\n }\n delta = new Delta().retain(range.index - 2).delete(2);\n moveSelectionToPreviousLine(quill, range);\n } else {\n delta = new Delta().retain(range.index - 1).delete(1);\n if (range.index < 2) {\n delta = new Delta().delete(1).retain(range.index + line.length() - 1);\n } else if (previousChar(quill, range) === \"\\n\" && beforePreviousChar(quill, range) === \"\\n\") {\n delta = new Delta().retain(range.index - 2).delete(2);\n }\n }\n } else {\n const [prev] = quill.getLine(range.index - 1);\n if (prev) {\n const isPrevLineEmpty =\n prev.statics.blotName === \"block\" && prev.length() <= 1;\n if (!isPrevLineEmpty) {\n const curFormats = line.formats();\n const prevFormats = quill.getFormat(range.index - 1, 1);\n formats = attributeDiff(curFormats, prevFormats) || {};\n if (Object.keys(formats).length > 0) {\n // line.length() - 1 targets \\n in line, another -1 for newline being deleted\n const formatDelta = new Delta().retain(range.index + line.length() - 2).retain(1, formats);\n delta = delta.compose(formatDelta);\n }\n }\n }\n }\n quill.updateContents(delta, Quill.sources.USER);\n if (Object.keys(formats).length > 0) {\n quill.formatLine(range.index - length, length, formats, Quill.sources.USER);\n }\n quill.focus();\n });\n\n // Put this backspace binding to second\n quill.keyboard.bindings[8].splice(1, 0, quill.keyboard.bindings[8].pop());\n}\n","/* eslint-disable require-jsdoc */\n\nimport attributeDiff from \"src/decidim/editor/attribute_diff\"\n\nexport default function backspaceBindingsRangeAny(quill) {\n quill.keyboard.addBinding({ key: 8, altKey: null, ctrlKey: null, metaKey: null, shiftKey: null, collapsed: true }, (range, context) => {\n let length = 1;\n if (range.index === 0 || quill.getLength() <= 1) {\n return;\n }\n let [line] = quill.getLine(range.index);\n let formats = {};\n if (context.offset === 0) {\n let [prev] = quill.getLine(range.index - 1);\n if (prev !== null && prev.length() > 1) {\n let curFormats = line.formats();\n let prevFormats = quill.getFormat(range.index - 1, 1);\n formats = attributeDiff(curFormats, prevFormats) || {};\n const previousLineLength = quill.getLine(range.index - 1)[1];\n const previousChar = quill.getText(range.index - 1, 1)\n const beforePreviousChar = quill.getText(range.index - 2, 1);\n if (previousLineLength && previousLineLength === 1 && beforePreviousChar === \"\\n\") {\n if (prevFormats && prevFormats.list) {\n quill.setSelection(range.index - 2, Quill.sources.SILENT);\n } else if (previousChar === \"\\n\" && beforePreviousChar === \"\\n\") {\n length += 1;\n }\n }\n }\n }\n\n if ((/[\\uD800-\\uDBFF][\\uDC00-\\uDFFF]$/).test(context.prefix)) {\n length += 1;\n }\n quill.deleteText(range.index - length, length, Quill.sources.USER);\n\n if (Object.keys(formats).length > 0) {\n quill.formatLine(range.index - length, length, formats, Quill.sources.USER);\n }\n quill.focus();\n })\n\n // Put this backspace binding to second (after backspce_offset1 it's going to be third)\n quill.keyboard.bindings[8].splice(1, 0, quill.keyboard.bindings[8].pop());\n}\n\n","/* eslint-disable require-jsdoc */\n\nconst Parchment = Quill.import(\"parchment\")\nconst Delta = Quill.import(\"delta\");\n\nconst getLineFormats = (context) => {\n return Object.keys(context.format).reduce(\n (formats, format) => {\n // See Parchment registry.ts => (1 << 3) | ((1 << 2) - 1) = 8 | 3 = 11\n const blockScope = 11;\n if (\n Parchment.query(format, blockScope) &&\n !Array.isArray(context.format[format])\n ) {\n formats[format] = context.format[format];\n }\n return formats;\n },\n {},\n );\n}\n\nconst continueFormats = (quill, context, lineFormats) => {\n Object.keys(context.format).forEach((name) => {\n if (typeof lineFormats[name] !== \"undefined\" && lineFormats[name] !== null) {\n return;\n }\n if (Array.isArray(context.format[name])) {\n return;\n }\n if (name === \"link\") {\n return;\n }\n quill.format(name, context.format[name], Quill.sources.USER);\n });\n}\n\nconst lineBreakHandler = (quill, range, context) => {\n const currentLeaf = quill.getLeaf(range.index)[0];\n const nextLeaf = quill.getLeaf(range.index + 1)[0];\n const previousChar = quill.getText(range.index - 1, 1);\n const formats = quill.getFormat(range.index);\n\n if (currentLeaf?.next?.domNode?.tagName === \"A\" || nextLeaf?.parent?.domNode?.tagName === \"A\") {\n quill.insertEmbed(range.index, \"break\", true, \"user\");\n quill.removeFormat(range.index, 1, Quill.sources.SILENT)\n } else {\n quill.insertEmbed(range.index, \"break\", true, \"user\");\n }\n\n if (nextLeaf === null) {\n quill.insertEmbed(range.index, \"break\", true, \"user\");\n } else if (context.offset === 1 && previousChar === \"\\n\") {\n const delta = new Delta().retain(range.index).insert(\"\\n\");\n quill.updateContents(delta, Quill.sources.USER);\n }\n\n Object.keys(formats).forEach((format) => {\n quill.format(format, context.format[format], Quill.sources.USER);\n });\n quill.setSelection(range.index + 1, Quill.sources.SILENT);\n\n const lineFormats = getLineFormats(context);\n continueFormats(quill, context, lineFormats);\n};\n\nexport default function addEnterBindings(quill) {\n quill.keyboard.addBinding({\n key: 13,\n shiftKey: true\n }, (range, context) => {\n lineBreakHandler(quill, range, context);\n });\n\n // HAX: make our SHIFT+ENTER binding the second (first is added below) in order to override Quill defaults\n quill.keyboard.bindings[13].unshift(quill.keyboard.bindings[13].pop());\n\n quill.keyboard.addBinding({ key: 13, shiftKey: false }, (range, context) => {\n const lineFormats = getLineFormats(context);\n const previousChar = quill.getText(range.index - 1, 1);\n const nextChar = quill.getText(range.index, 1);\n const delta = new Delta().retain(range.index).insert(\"\\n\", lineFormats);\n // const length = context.prefix.length;\n if (previousChar === \"\" || previousChar === \"\\n\") {\n if (lineFormats.list && nextChar === \"\\n\") {\n if (quill.getLength() - range.index > 2) {\n const endFormatDelta = new Delta().retain(range.index - 1).delete(1);\n quill.updateContents(endFormatDelta, Quill.sources.USER);\n } else {\n // Delete empty list item and end the list\n const endFormatDelta = new Delta().retain(range.index - 1).delete(1).retain(range.index).insert(\"\\n\");\n quill.updateContents(endFormatDelta, Quill.sources.USER);\n quill.setSelection(range.index + 1, Quill.sources.SILENT);\n }\n } else {\n quill.updateContents(delta, Quill.sources.USER);\n if (context.offset === 1 && previousChar === \"\\n\") {\n quill.setSelection(range.index + 1, Quill.sources.SILENT);\n } else {\n quill.setSelection(range.index + 2, Quill.sources.SILENT);\n }\n }\n } else {\n quill.updateContents(delta, Quill.sources.USER);\n quill.setSelection(range.index + 1, Quill.sources.SILENT);\n }\n quill.focus();\n\n continueFormats(quill, context, lineFormats);\n });\n\n // Replace the default enter handling because we have modified the break element\n quill.keyboard.bindings[13].unshift(quill.keyboard.bindings[13].pop());\n return;\n}\n\n"],"names":["attributeDiff","attributes1","attributes2","alpha","beta","_typeof","attributes","Object","keys","concat","reduce","attrs","key","length","History","Quill","DEFAULTS","delay","maxStack","userOnly","HistoryOverride","quill","options","_this","lastRecorded","ignoreChange","init","emitter","on","clear","$input","$","container","siblings","stack","undo","push","content","val","index","getLength","lastLength","events","EDITOR_CHANGE","eventName","delta","oldDelta","source","TEXT_CHANGE","sources","USER","record","keyboard","addBinding","shortKey","bind","shiftKey","redo","test","navigator","platform","dest","this","obj","updateStacks","setContents","clipboard","convert","setSelection","pop","changeDelta","ops","timestamp","Date","now","Math","abs","firstChild","innerHTML","getSelection","debug","Delta","Break","Embed","Scroll","Parchment","register","linebreak","icons","SmartBreak","parent","ref","Reflect","apply","prototype","insertInto","ScrollOvderride","mutations","context","batch","parchmentOptimize","emit","Container","optimize","records","observer","takeRecords","mark","blot","markParent","domNode","parentNode","__blot","children","forEach","remaining","ind","Error","mutation","find","target","type","previousSibling","addedNodes","node","child","grandChild","prev","slice","lineBreakButtonHandler","range","selection","getRange","currentLeaf","getLeaf","nextLeaf","previousChar","getText","insertEmbed","retain","insert","updateContents","SILENT","getModule","addHandler","deleteText","addEnterBindings","backspaceBindingsRangeAny","backspaceBindings","nextChar","offset","collapsed","prefix","formats","line","getLine","statics","blotName","lastCharacterOfPreviousLine","handleListSelection","curFormats","prevFormats","getFormat","moveSelectionToPreviousLine","beforePreviousChar","formatDelta","compose","formatLine","focus","bindings","splice","altKey","ctrlKey","metaKey","previousLineLength","list","getLineFormats","format","query","Array","isArray","continueFormats","lineFormats","name","next","tagName","removeFormat","lineBreakHandler","unshift","endFormatDelta"],"sourceRoot":""}