Current Path : /var/www/www-root/data/www/monolith-realty.ru/bitrix/js/landing/history/dist/ |
Current File : /var/www/www-root/data/www/monolith-realty.ru/bitrix/js/landing/history/dist/history.bundle.js.map |
{"version":3,"file":"history.bundle.js","sources":["../src/internal/constants.js","../src/action/edit-node.js","../src/action/edit-text.js","../src/action/edit-embed.js","../src/action/edit-map.js","../src/action/edit-image.js","../src/action/edit-icon.js","../src/action/edit-link.js","../src/action/change-node-name.js","../src/action/sort-block.js","../src/action/add-block.js","../src/action/remove-block.js","../src/action/add-card.js","../src/action/remove-card.js","../src/action/add-node.js","../src/action/remove-node.js","../src/action/edit-style.js","../src/action/edit-attributes.js","../src/action/update-content.js","../src/action/multiply.js","../src/action/replace-landing.js","../src/action/change-anchor.js","../src/history-command.js","../src/internal/register-base-commands.js","../src/internal/async-json-parse.js","../src/internal/async-json-stringify.js","../src/internal/remove-page-history.js","../src/internal/clear.js","../src/internal/on-update.js","../src/internal/on-init.js","../src/history-entry.js","../src/stack.js","../src/history-highlight.js","../src/history.js"],"sourcesContent":["export const RESOLVED: string = 'resolved';\nexport const PENDING: string = 'pending';\nexport const HISTORY_TYPES = {\n\tlanding: 'L',\n\tdesignerBlock: 'D',\n};","const {scrollTo, highlight} = BX.Landing.Utils;\n\n/**\n * @param {object} entry\n * @return {Promise}\n */\nconst editNode = function (entry)\n{\n\treturn BX.Landing.PageObject.getInstance().blocks()\n\t\t.then((blocks) => {\n\t\t\tconst block = blocks.get(entry.block);\n\n\t\t\tif (!block)\n\t\t\t{\n\t\t\t\treturn Promise.reject();\n\t\t\t}\n\n\t\t\tblock.forceInit();\n\t\t\tconst node = block.nodes.getBySelector(entry.selector);\n\n\t\t\tif (!node)\n\t\t\t{\n\t\t\t\treturn Promise.reject();\n\t\t\t}\n\n\t\t\treturn scrollTo(node.node)\n\t\t\t\t.then(highlight.bind(null, node.node, editNode.useRangeRect))\n\t\t\t\t.then(() => {\n\t\t\t\t\treturn node.setValue(entry.params.value, false, true);\n\t\t\t\t});\n\t\t});\n}\neditNode.useRangeRect = true;\n\nexport default editNode;","import editNode from './edit-node';\n\nconst editText = editNode;\n\nexport default editText;","import editNode from './edit-node';\n\nconst editEmbed = editNode;\n\nexport default editEmbed;","import editNode from './edit-node';\n\nconst editMap = editNode;\n\nexport default editMap;","import editNode from './edit-node';\n\nconst editImage = editNode;\neditImage.useRangeRect = false;\n\nexport default editImage;","import editImage from './edit-image';\n\nconst editIcon = editImage;\n\nexport default editIcon;","import editNode from './edit-node';\n\nconst editLink = editNode;\neditLink.useRangeRect = false;\n\nexport default editLink;","import {Type} from 'main.core';\n\nconst {scrollTo, highlight} = BX.Landing.Utils;\n\n/**\n * @param {object} entry\n * @return {Promise}\n */\nexport default function changeNodeName(entry)\n{\n\treturn BX.Landing.PageObject.getInstance().blocks()\n\t\t.then((blocks) => {\n\t\t\tconst block = blocks.get(entry.block);\n\t\t\tif (!block)\n\t\t\t{\n\t\t\t\treturn Promise.reject();\n\t\t\t}\n\t\t\tblock.forceInit();\n\n\t\t\tconst node = block.nodes.getBySelector(entry.selector);\n\t\t\tif (!node)\n\t\t\t{\n\t\t\t\treturn Promise.reject();\n\t\t\t}\n\n\t\t\treturn scrollTo(node.node)\n\t\t\t\t.then(() => {\n\t\t\t\t\treturn highlight(node.node);\n\t\t\t\t})\n\t\t\t\t.then(() => {\n\t\t\t\t\tif (node.onChangeTag)\n\t\t\t\t\t{\n\t\t\t\t\t\tnode.onChangeTag(entry.params.value, true);\n\t\t\t\t\t}\n\n\t\t\t\t\treturn true;\n\t\t\t\t});\n\t\t});\n}","const {scrollTo, highlight} = BX.Landing.Utils;\n\n/**\n * @param {object} entry\n * @return {Promise}\n */\nexport default function sortBlock(entry)\n{\n\treturn BX.Landing.PageObject.getInstance().blocks()\n\t\t.then((blocks) => {\n\t\t\tconst block = blocks.get(entry.block);\n\t\t\tblock.forceInit();\n\n\t\t\treturn scrollTo(block.node)\n\t\t\t\t.then(highlight.bind(null, block.node))\n\t\t\t\t.then(() => {\n\t\t\t\t\treturn block[entry.params.direction](true);\n\t\t\t\t});\n\t\t});\n}","import {PageObject} from 'landing.pageobject';\n\nconst {scrollTo, highlight} = BX.Landing.Utils;\n\n/**\n * @param {object} entry\n * @return {Promise}\n */\nexport default function addBlock(entry)\n{\n\treturn PageObject.getInstance().blocks()\n\t\t.then((blocks) => {\n\t\t\tconst block = blocks.get(entry.params.currentBlock);\n\n\t\t\treturn new Promise(((resolve) => {\n\t\t\t\tif (block)\n\t\t\t\t{\n\t\t\t\t\tblock.forceInit();\n\t\t\t\t}\n\t\t\t\tresolve();\n\t\t\t}))\n\t\t\t.then(() => {\n\t\t\t\tconst landing = BX.Landing.Main.getInstance();\n\t\t\t\tlanding.currentBlock = block;\n\n\t\t\t\treturn PageObject.getInstance().view().then((iframe) => {\n\t\t\t\t\tlanding.currentArea = iframe.contentDocument.body.querySelector(`[data-landing=\"${entry.params.lid}\"]`);\n\t\t\t\t\tlanding.insertBefore = entry.params.insertBefore;\n\n\t\t\t\t\treturn landing.onAddBlock(entry.params.code, entry.block, true)\n\t\t\t\t\t\t.then(newBlock => {\n\t\t\t\t\t\t\treturn scrollTo(newBlock)\n\t\t\t\t\t\t\t\t.then(highlight.bind(null, newBlock, false, false));\n\t\t\t\t\t\t})\n\t\t\t\t\t;\n\t\t\t\t});\n\t\t\t});\n\t\t});\n}","const {scrollTo, highlight} = BX.Landing.Utils;\n\n/**\n * @param {object} entry\n * @return {Promise}\n */\nexport default function removeBlock(entry)\n{\n\treturn BX.Landing.PageObject.getInstance().blocks()\n\t\t.then((blocks) => {\n\t\t\tconst block = blocks.get(entry.block);\n\t\t\tblock.forceInit();\n\n\t\t\treturn scrollTo(block.node)\n\t\t\t\t.then(() => {\n\t\t\t\t\thighlight(block.node);\n\t\t\t\t\treturn block.deleteBlock(true);\n\t\t\t\t});\n\t\t});\n}","const {scrollTo, highlight} = BX.Landing.Utils;\n\n/**\n * @param {string} state\n * @param {object} entry\n * @return {Promise}\n */\nexport default function addCard(entry)\n{\n\treturn BX.Landing.PageObject.getInstance().blocks()\n\t\t.then((blocks) => {\n\t\t\tconst block = blocks.get(entry.block);\n\t\t\tif (block)\n\t\t\t{\n\t\t\t\tblock.forceInit();\n\t\t\t}\n\n\t\t\tif (!block)\n\t\t\t{\n\t\t\t\treturn Promise.reject();\n\t\t\t}\n\n\t\t\tconst parentNode = block.node.querySelector(entry.params.selector).parentNode;\n\n\t\t\treturn scrollTo(parentNode)\n\t\t\t\t.then(() => {\n\t\t\t\t\treturn block\n\t\t\t\t\t\t.addCard({\n\t\t\t\t\t\t\tindex: entry.params.position,\n\t\t\t\t\t\t\tcontainer: parentNode,\n\t\t\t\t\t\t\tcontent: entry.params.content,\n\t\t\t\t\t\t\tselector: entry.params.selector,\n\t\t\t\t\t\t}, true)\n\t\t\t\t\t\t.then(() => {\n\t\t\t\t\t\t\tconst cardSelector = entry.params.selector + '@' + entry.params.position;\n\t\t\t\t\t\t\tconst card = block.cards.getBySelector(cardSelector);\n\t\t\t\t\t\t\tif (!card)\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\treturn Promise.reject();\n\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\treturn highlight(card.node);\n\t\t\t\t\t\t})\n\t\t\t\t});\n\t\t})\n\t\t.catch((err) => {\n\t\t\tconsole.log(\"Error in history action addCard\", err);\n\t\t});\n}","const {scrollTo, highlight} = BX.Landing.Utils;\n\n/**\n * @param {string} state\n * @param {object} entry\n * @return {Promise}\n */\nexport default function removeCard(entry)\n{\n\treturn BX.Landing.PageObject.getInstance().blocks()\n\t\t.then((blocks) => {\n\t\t\tconst block = blocks.get(entry.block);\n\t\t\tblock.forceInit();\n\n\t\t\tif (!block)\n\t\t\t{\n\t\t\t\treturn Promise.reject();\n\t\t\t}\n\n\t\t\tconst relativeSelector = entry.params.selector + '@' + (entry.params.position + 1);\n\t\t\tconst card = block.cards.getBySelector(relativeSelector);\n\n\t\t\tif (!card)\n\t\t\t{\n\t\t\t\treturn Promise.reject();\n\t\t\t}\n\n\t\t\treturn scrollTo(card.node)\n\t\t\t\t.then(highlight.bind(null, card.node))\n\t\t\t\t.then(() => {\n\t\t\t\t\treturn block.removeCard(relativeSelector, true);\n\t\t\t\t});\n\t\t});\n}","/**\n * History entry action for add node.\n * @param {object} entry History entry.\n * @return {Promise}\n */\nexport default function addNode(entry)\n{\n\t// entry.block === null >> designer mode\n\n\treturn new Promise((resolve, reject) => {\n\t\tconst tags = entry.params.tags || {};\n\t\ttop.BX.onCustomEvent(this, 'Landing:onHistoryAddNode', [tags]);\n\t\tresolve();\n\t});\n}","/**\n * History entry action for remove node.\n * @param {object} entry History entry.\n * @return {Promise}\n */\nexport default function removeNode(entry)\n{\n\t// entry.block === null >> designer mode\n\n\treturn new Promise((resolve, reject) => {\n\t\tconst tags = entry.params.tags || {};\n\t\ttop.BX.onCustomEvent(this, 'Landing:onHistoryRemoveNode', [tags]);\n\t\tresolve();\n\t});\n}","const {scrollTo, slice} = BX.Landing.Utils;\n\n/**\n * @param {object} entry\n * @return {Promise}\n */\nexport default function editStyle(entry)\n{\n\treturn BX.Landing.PageObject.getInstance().blocks()\n\t\t.then((blocks) => {\n\t\t\tconst block = blocks.get(entry.block);\n\n\t\t\tif (!block)\n\t\t\t{\n\t\t\t\treturn Promise.reject();\n\t\t\t}\n\n\t\t\tblock.forceInit();\n\t\t\tblock.initStyles();\n\t\t\treturn block;\n\t\t})\n\t\t.then((block) => {\n\t\t\treturn scrollTo(block.node)\n\t\t\t\t.then(() => {\n\t\t\t\t\treturn block;\n\t\t\t\t});\n\t\t})\n\t\t.then((block) => {\n\t\t\tlet elements = slice(block.node.querySelectorAll(entry.selector));\n\n\t\t\tif (entry.params.isWrapper)\n\t\t\t{\n\t\t\t\telements = [block.content];\n\t\t\t\tentry.selector += ' > :first-child';\n\t\t\t}\n\n\t\t\telements.forEach((element, pos) => {\n\t\t\t\tif (\n\t\t\t\t\tentry.params.position >= 0\n\t\t\t\t\t&& entry.params.position !== pos\n\t\t\t\t)\n\t\t\t\t{\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\telement.className = entry.params.value.className;\n\t\t\t\tif (entry.params.value.style && entry.params.value.style !== '')\n\t\t\t\t{\n\t\t\t\t\telement.style = entry.params.value.style;\n\t\t\t\t}\n\t\t\t\telse\n\t\t\t\t{\n\t\t\t\t\telement.removeAttribute('style');\n\t\t\t\t}\n\t\t\t});\n\t\t\treturn block;\n\t\t})\n\t\t.then((block) => {\n\t\t\tconst form = block.forms.find((currentForm) => {\n\t\t\t\treturn (\n\t\t\t\t\tcurrentForm.selector === entry.selector\n\t\t\t\t\t|| currentForm.relativeSelector === entry.selector\n\t\t\t\t);\n\t\t\t});\n\n\t\t\tif (form)\n\t\t\t{\n\t\t\t\tform.fields.forEach((field) => {\n\t\t\t\t\tfield.reset();\n\t\t\t\t\tfield.onFrameLoad();\n\t\t\t\t});\n\t\t\t}\n\n\t\t\t// todo: relative selector? position?\n\t\t\tconst styleNode = block.styles.find((style) => {\n\t\t\t\treturn (\n\t\t\t\t\tstyle.selector === entry.selector\n\t\t\t\t\t|| style.relativeSelector === entry.selector\n\t\t\t\t);\n\t\t\t});\n\n\t\t\tif (styleNode)\n\t\t\t{\n\t\t\t\tif (entry.params.affect && entry.params.affect.length > 0)\n\t\t\t\t{\n\t\t\t\t\tstyleNode.setAffects(entry.params.affect);\n\t\t\t\t}\n\t\t\t\tblock.onStyleInputWithDebounce({\n\t\t\t\t\tnode: styleNode.node,\n\t\t\t\t\tdata: styleNode.getValue()\n\t\t\t\t}, true);\n\t\t\t}\n\t\t});\n}","import {PageObject} from 'landing.pageobject';\n\nconst {scrollTo, highlight} = BX.Landing.Utils;\n\n/**\n * @param {object} entry\n * @return {Promise}\n */\nexport default function editAttributes(entry)\n{\n\treturn PageObject.getInstance().blocks()\n\t\t.then((blocks) => {\n\t\t\tconst block = blocks.get(entry.block);\n\n\t\t\treturn new Promise((resolve, reject) => {\n\t\t\t\tif (block)\n\t\t\t\t{\n\t\t\t\t\tblock.forceInit();\n\t\t\t\t\tresolve(block);\n\t\t\t\t}\n\t\t\t\telse\n\t\t\t\t{\n\t\t\t\t\treject();\n\t\t\t\t}\n\t\t\t})\n\t\t\t.then(block => {\n\t\t\t\treturn scrollTo(block.node)\n\t\t\t\t\t.then(() => {\n\t\t\t\t\t\treturn block.applyAttributeChanges({\n\t\t\t\t\t\t\t[entry.params.selector]: {\n\t\t\t\t\t\t\t\tattrs: {\n\t\t\t\t\t\t\t\t\t[entry.params.attribute]: entry.params.value,\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.then(highlight.bind(null, block.node, false, false))\n\t\t\t\t;\n\t\t\t});\n\t\t});\n}","const {scrollTo, highlight} = BX.Landing.Utils;\n\n/**\n * @param {object} entry\n * @return {Promise}\n */\nexport default function updateContent(entry)\n{\n\treturn BX.Landing.PageObject.getInstance().blocks()\n\t\t.then((blocks) => {\n\t\t\tconst block = blocks.get(entry.block);\n\t\t\tblock.forceInit();\n\n\t\t\treturn scrollTo(block.node)\n\t\t\t\t.then(() => {\n\t\t\t\t\tvoid highlight(block.node);\n\t\t\t\t\treturn block.updateContent(entry.params.content, true);\n\t\t\t\t});\n\t\t});\n}","const {scrollTo, highlight} = BX.Landing.Utils;\n\n/**\n * @param {object} entry\n * @return {Promise}\n */\nexport default function multiply(entry)\n{\n\tlet blockId = null;\n\tconst updateBlockStateData = {};\n\tentry.params.forEach(singleAction => {\n\t\tif (!blockId && singleAction.params.block)\n\t\t{\n\t\t\tblockId = singleAction.params.block;\n\t\t}\n\n\t\tif (\n\t\t\tsingleAction.command === 'editText'\n\t\t\t|| singleAction.command === 'editImage'\n\t\t\t|| singleAction.command === 'editEmbed'\n\t\t\t|| singleAction.command === 'editMap'\n\t\t\t|| singleAction.command === 'editIcon'\n\t\t\t|| singleAction.command === 'editLink'\n\t\t)\n\t\t{\n\t\t\tupdateBlockStateData[singleAction.params.selector] = singleAction.params.value;\n\t\t}\n\n\t\tif (singleAction.command === 'updateDynamic')\n\t\t{\n\t\t\tupdateBlockStateData.dynamicParams = singleAction.params.dynamicParams;\n\t\t\tupdateBlockStateData.dynamicState = singleAction.params.dynamicState;\n\t\t}\n\n\t\tif (singleAction.command === 'changeAnchor')\n\t\t{\n\t\t\tupdateBlockStateData.settings = {id: singleAction.params.value};\n\t\t}\n\t});\n\n\treturn BX.Landing.PageObject.getInstance().blocks()\n\t\t.then((blocks) => {\n\t\t\tconst block = blocks.get(blockId);\n\t\t\tif (block)\n\t\t\t{\n\t\t\t\tblock.forceInit();\n\n\t\t\t\treturn scrollTo(block.node)\n\t\t\t\t\t.then(() =>\n\t\t\t\t\t{\n\t\t\t\t\t\tvoid highlight(block.node);\n\t\t\t\t\t\tif (Object.keys(updateBlockStateData).length > 0)\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tblock.updateBlockState(updateBlockStateData, true);\n\t\t\t\t\t\t}\n\t\t\t\t\t});\n\t\t\t}\n\t\t});\n}","const {scrollTo, highlight} = BX.Landing.Utils;\n\n/**\n * @param {object} entry\n * @return {Promise}\n */\nexport default function replaceLanding(entry)\n{\n\treturn new Promise((resolve, reject) => {\n\t\ttop.window.location.reload();\n\t\tresolve();\n\t});\n}","import {PageObject} from 'landing.pageobject';\n\nconst {scrollTo, highlight} = BX.Landing.Utils;\n\n/**\n * @param {object} entry\n * @return {Promise}\n */\nexport default function changeAnchor(entry)\n{\n\treturn PageObject.getInstance().blocks()\n\t\t.then((blocks) => {\n\t\t\tconst block = blocks.get(entry.params.currentBlock);\n\n\t\t\treturn new Promise((resolve, reject) => {\n\t\t\t\tif (block)\n\t\t\t\t{\n\t\t\t\t\tblock.forceInit();\n\t\t\t\t\tresolve(block);\n\t\t\t\t}\n\t\t\t\telse\n\t\t\t\t{\n\t\t\t\t\treject();\n\t\t\t\t}\n\t\t\t})\n\t\t\t.then((block) => {\n\t\t\t\tscrollTo(block).then(highlight.bind(null, block, false, false));\n\t\t\t});\n\t\t});\n}","import {Type} from 'main.core';\n\n/**\n * Implements interface for works with command of history\n * @param {{id: string, undo: function, redo: function}} options\n */\nexport default class Command\n{\n\tid: string;\n\tcommand: () => {};\n\tonBeforeCommand: () => {};\n\n\tconstructor(options: {\n\t\tid: string,\n\t\tcommand: () => {},\n\t\tonBeforeCommand: () => {},\n\t})\n\t{\n\t\tthis.id = Type.isStringFilled(options.id) ? options.id : '#invalidCommand';\n\t\tthis.command = Type.isFunction(options.command) ? options.command : (() => {});\n\t\tthis.onBeforeCommand =\n\t\t\tType.isFunction(options.onBeforeCommand)\n\t\t\t\t? options.onBeforeCommand\n\t\t\t\t: () => {\n\t\t\t\t\treturn Promise.resolve()\n\t\t\t\t};\n\t}\n}","import {Runtime, Dom, Tag} from 'main.core';\n\nimport {PageObject} from 'landing.pageobject';\n\nimport editText from '../action/edit-text';\nimport editEmbed from '../action/edit-embed';\nimport editMap from '../action/edit-map';\nimport editImage from '../action/edit-image';\nimport editIcon from '../action/edit-icon';\nimport editLink from '../action/edit-link';\nimport changeNodeName from '../action/change-node-name';\nimport sortBlock from '../action/sort-block';\nimport addBlock from '../action/add-block';\nimport removeBlock from '../action/remove-block';\nimport addCard from '../action/add-card';\nimport removeCard from '../action/remove-card';\nimport addNode from '../action/add-node';\nimport removeNode from '../action/remove-node';\nimport editStyle from '../action/edit-style';\nimport editAttributes from '../action/edit-attributes';\nimport updateContent from '../action/update-content';\nimport multiply from '../action/multiply';\nimport replaceLanding from '../action/replace-landing';\nimport changeAnchor from '../action/change-anchor';\n\nimport Command from '../history-command';\n\nimport type {History} from '../history';\n\n/**\n * Registers base internal commands\n * @param {History} history\n * @return {Promise<History>}\n */\nexport default function registerBaseCommands(history: History)\n{\n\thistory.registerCommand(\n\t\tnew Command({\n\t\t\tid: 'editText',\n\t\t\tcommand: editText,\n\t\t}),\n\t);\n\n\thistory.registerCommand(\n\t\tnew Command({\n\t\t\tid: 'editImage',\n\t\t\tcommand: editImage,\n\t\t}),\n\t);\n\n\thistory.registerCommand(\n\t\tnew Command({\n\t\t\tid: 'editEmbed',\n\t\t\tcommand: editEmbed,\n\t\t}),\n\t);\n\n\thistory.registerCommand(\n\t\tnew Command({\n\t\t\tid: 'editMap',\n\t\t\tcommand: editMap,\n\t\t}),\n\t);\n\n\thistory.registerCommand(\n\t\tnew Command({\n\t\t\tid: 'editIcon',\n\t\t\tcommand: editIcon,\n\t\t}),\n\t);\n\n\thistory.registerCommand(\n\t\tnew Command({\n\t\t\tid: 'editLink',\n\t\t\tcommand: editLink,\n\t\t}),\n\t);\n\n\thistory.registerCommand(\n\t\tnew Command({\n\t\t\tid: 'cnangeNodeName',\n\t\t\tcommand: changeNodeName,\n\t\t}),\n\t);\n\n\thistory.registerCommand(\n\t\tnew Command({\n\t\t\tid: 'sortBlock',\n\t\t\tcommand: sortBlock,\n\t\t}),\n\t);\n\n\thistory.registerCommand(\n\t\tnew Command({\n\t\t\tid: 'addBlock',\n\t\t\tcommand: addBlock,\n\t\t}),\n\t);\n\n\thistory.registerCommand(\n\t\tnew Command({\n\t\t\tid: 'removeBlock',\n\t\t\tcommand: removeBlock,\n\t\t}),\n\t);\n\n\thistory.registerCommand(\n\t\tnew Command({\n\t\t\tid: 'updateStyle',\n\t\t\tcommand: editStyle,\n\t\t}),\n\t);\n\n\thistory.registerCommand(\n\t\tnew Command({\n\t\t\tid: 'addCard',\n\t\t\tcommand: addCard,\n\t\t}),\n\t);\n\n\thistory.registerCommand(\n\t\tnew Command({\n\t\t\tid: 'removeCard',\n\t\t\tcommand: removeCard,\n\t\t}),\n\t);\n\n\thistory.registerCommand(\n\t\tnew Command({\n\t\t\tid: 'addNode',\n\t\t\tcommand: addNode,\n\t\t}),\n\t);\n\n\thistory.registerCommand(\n\t\tnew Command({\n\t\t\tid: 'removeNode',\n\t\t\tcommand: removeNode,\n\t\t}),\n\t);\n\n\n\thistory.registerCommand(\n\t\tnew Command({\n\t\t\tid: 'updateContent',\n\t\t\tcommand: updateContent,\n\t\t}),\n\t);\n\n\thistory.registerCommand(\n\t\tnew Command({\n\t\t\tid: 'replaceLanding',\n\t\t\tcommand: replaceLanding,\n\t\t\tonBeforeCommand: () => {\n\t\t\t\treturn Runtime.loadExtension('main.loader')\n\t\t\t\t\t.then(() => {\n\t\t\t\t\t\tconst editor = BX.Landing.PageObject.getEditorWindow();\n\t\t\t\t\t\tif (editor)\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tconst container = Tag.render`<div class=\"landing-ui-modal\"></div>`;\n\t\t\t\t\t\t\tDom.append(container, editor.document.body);\n\t\t\t\t\t\t\tconst loader = new BX.Loader({target: container});\n\t\t\t\t\t\t\tloader.show();\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\treturn Promise.resolve();\n\t\t\t\t\t});\n\t\t\t}\n\t\t}),\n\t);\n\n\thistory.registerCommand(\n\t\tnew Command({\n\t\t\tid: 'changeAnchor',\n\t\t\tcommand: changeAnchor,\n\t\t}),\n\t);\n\n\thistory.registerCommand(\n\t\tnew Command({\n\t\t\tid: 'editAttributes',\n\t\t\tcommand: editAttributes,\n\t\t}),\n\t);\n\n\thistory.registerCommand(\n\t\tnew Command({\n\t\t\tid: 'multiply',\n\t\t\tcommand: multiply,\n\t\t}),\n\t);\n\n\treturn Promise.resolve(history);\n}","const worker = new Worker(\n\t'/bitrix/js/landing/history/src/worker/json-parse-worker.js',\n);\n\n/**\n * Parses json string\n * @param {string} str\n * @return {Promise<?Object|array>}\n */\nexport default function asyncJsonParse(str): Promise<{[key: string]: any} | Array<any>>\n{\n\treturn new Promise(((resolve) => {\n\t\tworker.postMessage(str);\n\t\tworker.addEventListener('message', (event) => {\n\t\t\tresolve(event.data);\n\t\t});\n\t}));\n}\n","const worker = new Worker(\n\t'/bitrix/js/landing/history/src/worker/json-stringify-worker.js',\n);\n\n/**\n * Serializes object\n * @param {Object|array} obj\n * @return {Promise<?String>}\n */\nexport default function asyncJsonStringify(obj: {[key: string]: any} | Array<any>): Promise<?string>\n{\n\treturn new Promise(((resolve) => {\n\t\tworker.postMessage(obj);\n\t\tworker.addEventListener('message', (event) => {\n\t\t\tresolve(event.data);\n\t\t});\n\t}));\n}","import {Type} from 'main.core';\nimport asyncJsonParse from './async-json-parse';\nimport asyncJsonStringify from './async-json-stringify';\nimport type {History} from '../history';\n\n/**\n * Removes page history from storage\n * @param {int} pageId\n * @param {History} history\n * @return {Promise<History>}\n */\nexport default function removePageHistory(pageId, history: History): Promise<History>\n{\n\treturn asyncJsonParse(window.localStorage.history)\n\t\t.then((historyData) => {\n\t\t\treturn Type.isPlainObject(historyData) ? historyData : {};\n\t\t})\n\t\t.then((all) => {\n\t\t\tif (pageId in all)\n\t\t\t{\n\t\t\t\tdelete all[pageId];\n\t\t\t}\n\n\t\t\treturn all;\n\t\t})\n\t\t.then(asyncJsonStringify)\n\t\t.then((allString) => {\n\t\t\twindow.localStorage.history = allString;\n\t\t\treturn history;\n\t\t});\n}\n","import {INIT, RESOLVED} from './constants';\nimport type {History} from '../history';\n\n/**\n * Clears history stack\n * @param {History} history\n * @return {Promise<History>}\n */\nexport default function clear(history: History): Promise<History>\n{\n\thistory.stack = null;\n\thistory.commandState = RESOLVED;\n\n\treturn Promise.resolve(history);\n}","import type {History} from '../history';\n\n/**\n * Calls on update history stack\n * @param {History} history\n * @return {Promise<History>}\n */\nexport default function onUpdate(history: History): Promise<History>\n{\n\tconst rootWindow = BX.Landing.PageObject.getRootWindow();\n\tBX.onCustomEvent(rootWindow.window, 'BX.Landing.History:update', [history]);\n\n\treturn Promise.resolve(history);\n}","import type {History} from '../history';\n\n/**\n * Calls on init history object\n * @param history\n * @return {Promise<History>}\n */\nexport default function onInit(history: History): Promise<History>\n{\n\tconst rootWindow = BX.Landing.PageObject.getRootWindow();\n\tBX.onCustomEvent(rootWindow.window, 'BX.Landing.History:init', [history]);\n\n\treturn Promise.resolve(history);\n}","import {Type} from 'main.core';\n\nexport default class Entry\n{\n\tconstructor(options)\n\t{\n\t\tthis.block = options.block;\n\t\tthis.selector = options.selector;\n\t\tthis.command = Type.isStringFilled(options.command) ? options.command : '#invalidCommand';\n\t\tthis.params = options.params;\n\t}\n}","import {Text, Type} from 'main.core';\nimport {Backend} from 'landing.backend';\nimport {HISTORY_TYPES} from './internal/constants';\n\ntype StackItem = {\n\tentityId: number,\n\tcommand: string,\n}\n\nexport default class Stack\n{\n\t/**\n\t * ID and type of main entity (landing or design block)\n\t */\n\tmainEntityId: number;\n\tentityType: string;\n\n\titems: [StackItem] = [];\n\tstep: number;\n\n\t/**\n\t * All entities in stack and them current steps\n\t */\n\tentitySteps: {[number]: number} = {};\n\n\tconstructor(entityId: number, entityType: string = HISTORY_TYPES.landing)\n\t{\n\t\tthis.mainEntityId = entityId;\n\t\tthis.entityType = entityType;\n\t}\n\n\tinit(): Promise\n\t{\n\t\treturn this.#loadFromBackend()\n\t\t\t.then(this.#adjustMultiPage.bind(this));\n\t}\n\n\treload(): Promise\n\t{\n\t\tthis.items = [];\n\t\tthis.step = 0;\n\n\t\treturn this.#loadFromBackend();\n\t}\n\n\t#loadFromBackend(): Promise\n\t{\n\t\treturn BX.Landing.Backend.getInstance()\n\t\t\t.action(\n\t\t\t\tthis.#getLoadBackendActionName(),\n\t\t\t\tthis.#getLoadBackendParams(),\n\t\t\t)\n\n\t\t\t.then((data: {stack: [], step: number}) => {\n\t\t\t\tconst items = Type.isArray(data.stack) ? data.stack : [];\n\t\t\t\titems.forEach(item =>\n\t\t\t\t{\n\t\t\t\t\tif (\n\t\t\t\t\t\titem.entityId\n\t\t\t\t\t\t&& Type.isNumber(item.entityId)\n\t\t\t\t\t\t&& item.command\n\t\t\t\t\t\t&& Type.isString(item.command)\n\t\t\t\t\t)\n\t\t\t\t\t{\n\t\t\t\t\t\tthis.items.push({\n\t\t\t\t\t\t\tentityId: item.entityId,\n\t\t\t\t\t\t\tcommand: item.command,\n\t\t\t\t\t\t});\n\n\t\t\t\t\t\tif (item.current && item.current === true)\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tthis.entitySteps[item.entityId] = this.items.length;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t});\n\n\t\t\t\tconst step = Text.toNumber(data.step);\n\t\t\t\tthis.step = Math.min(this.items.length, step);\n\t\t\t\tthis.step = Math.max(0, this.step);\n\t\t\t})\n\n\t\t\t.catch((e) => {\n\t\t\t\tconsole.error('History load error', e);\n\n\t\t\t\treturn history;\n\t\t\t});\n\t}\n\n\t#getLoadBackendActionName(): string\n\t{\n\t\tif (this.entityType === HISTORY_TYPES.designerBlock)\n\t\t{\n\t\t\treturn \"History::getForDesignerBlock\";\n\t\t}\n\n\t\treturn \"History::getForLanding\";\n\t}\n\n\t#getLoadBackendParams(): string\n\t{\n\t\tif (this.entityType === HISTORY_TYPES.designerBlock)\n\t\t{\n\t\t\treturn {blockId: this.mainEntityId};\n\t\t}\n\n\t\treturn {lid: this.mainEntityId};\n\t}\n\n\t#adjustMultiPage(): Promise\n\t{\n\t\tconst currentItem = this.items[this.step - 1];\n\t\tif (\n\t\t\tcurrentItem\n\t\t\t&& this.entityType === HISTORY_TYPES.landing\n\t\t\t&& this.#isMultiPage()\n\t\t)\n\t\t{\n\t\t\tconst entitiesToClearFuture = [];\n\t\t\tthis.items.forEach((item, index) =>\n\t\t\t{\n\t\t\t\tconst step = index + 1;\n\t\t\t\tif (step >= this.step)\n\t\t\t\t{\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\t// Clear future for all entities, except current, that have future (have steps after own current)\n\t\t\t\tif (\n\t\t\t\t\titem.entityId !== currentItem.entityId\n\t\t\t\t\t&& this.entitySteps[item.entityId] < step\n\t\t\t\t)\n\t\t\t\t{\n\t\t\t\t\tentitiesToClearFuture.push(item.entityId);\n\t\t\t\t}\n\t\t\t});\n\n\t\t\tif (entitiesToClearFuture.length > 0)\n\t\t\t{\n\t\t\t\tconst backend = Backend.getInstance();\n\t\t\t\tconst promises = [];\n\t\t\t\tentitiesToClearFuture.forEach(entityId => {\n\t\t\t\t\tpromises.push(backend.action('History::clearFutureForLanding', {\n\t\t\t\t\t\tlandingId: entityId\n\t\t\t\t\t}));\n\t\t\t\t});\n\n\t\t\t\treturn Promise.all(promises)\n\t\t\t\t\t.then(this.reload.bind(this));\n\t\t\t}\n\t\t}\n\n\t\treturn Promise.resolve();\n\t}\n\n\t#isMultiPage(): boolean\n\t{\n\t\treturn Object.keys(this.entitySteps).length > 1;\n\t}\n\n\tsetTypeDesignerBlock(blockId: number): Promise\n\t{\n\t\tthis.mainEntityId = blockId;\n\t\tthis.entityType = HISTORY_TYPES.designerBlock;\n\n\t\treturn this.reload();\n\t}\n\n\tgetCommandName(undo: boolean = true): ?string\n\t{\n\t\tlet step = undo ? this.step : this.step + 1;\n\t\tstep--; // array index correction\n\n\t\treturn this.items[step] ? this.items[step].command : null;\n\t}\n\n\tgetCommandEntityId(undo: boolean = true): ?number\n\t{\n\t\tlet step = undo ? this.step : this.step + 1;\n\t\tstep--; // array index correction\n\n\t\treturn this.items[step] ? this.items[step].entityId : null;\n\t}\n\n\t/**\n\t * Check is stack undoable\n\t * @return {boolean}\n\t */\n\tcanUndo(): boolean\n\t{\n\t\treturn this.step > 0 && this.step <= this.items.length;\n\t}\n\n\t/**\n\t * Check is stack reduable\n\t * @return {boolean}\n\t */\n\tcanRedo(): boolean\n\t{\n\t\treturn this.step >= 0 && this.step < this.items.length;\n\t}\n\n\t/**\n\t * Change stack when undo or redo\n\t * @param undo - if false - redo\n\t * @return {Promise}\n\t */\n\toffset(undo: boolean = true)\n\t{\n\t\tconst newStep = undo ? this.step - 1 : this.step + 1;\n\t\tif (newStep >= 0 && newStep <= this.items.length)\n\t\t{\n\t\t\tthis.step = newStep;\n\t\t}\n\n\t\treturn Promise.resolve();\n\t}\n\n\tpush(): Promise\n\t{\n\t\t// For some types actions history.push called before backend changes. Need add input timeout\n\t\treturn new Promise(resolve => {\n\t\t\tsetTimeout(() => {\n\t\t\t\t// change values before load\n\t\t\t\tif (this.step < this.items.length)\n\t\t\t\t{\n\t\t\t\t\tthis.items = this.items.slice(0, this.step - 1);\n\t\t\t\t}\n\t\t\t\tthis.step++;\n\t\t\t\tthis.items.push(this.items[this.step - 1]);\n\n\t\t\t\treturn this.reload()\n\t\t\t\t\t.then(resolve);\n\t\t\t}, 500);\n\t\t})\n\t}\n}","import {PageObject} from 'landing.pageobject';\nimport {Highlight as HighlightNode} from 'landing.ui.highlight';\n\nexport default class Highlight extends HighlightNode\n{\n\tconstructor()\n\t{\n\t\tsuper();\n\t\tthis.layout.classList.add('landing-ui-highlight-animation');\n\t\tthis.animationDuration = 300;\n\t}\n\n\tstatic getInstance()\n\t{\n\t\tconst rootWindow = PageObject.getRootWindow();\n\t\tif (!rootWindow.BX.Landing.History.Highlight.instance)\n\t\t{\n\t\t\trootWindow.BX.Landing.History.Highlight.instance = new Highlight();\n\t\t}\n\n\t\treturn rootWindow.BX.Landing.History.Highlight.instance;\n\t}\n\n\tshow(element, rect): Promise<any>\n\t{\n\t\tBX.Landing.UI.Highlight.prototype.show.call(this, element, rect);\n\n\t\treturn new Promise(((resolve) => {\n\t\t\tsetTimeout(resolve, this.animationDuration);\n\t\t\tthis.hide();\n\t\t}));\n\t}\n}","import {Main} from 'landing.main';\nimport {PageObject} from 'landing.pageobject';\nimport {Backend} from 'landing.backend';\nimport {RESOLVED, PENDING, HISTORY_TYPES} from './internal/constants';\nimport registerBaseCommands from './internal/register-base-commands';\nimport removePageHistory from './internal/remove-page-history';\nimport clear from './internal/clear';\nimport onUpdate from './internal/on-update';\nimport onInit from './internal/on-init';\nimport Command from './history-command';\nimport Entry from './history-entry';\nimport Stack from './stack';\nimport Highlight from './history-highlight'; // not delete - just for export\n\nimport './css/style.css';\n\n/**\n * Implements interface for works with landing history\n * Implements singleton pattern use as BX.Landing.History.getInstance()\n * @memberOf BX.Landing\n */\nexport class History\n{\n\t/**\n\t * Stack of action commands\n\t */\n\tstack: ?Stack = null;\n\n\t/**\n\t * Key - command name, value - a Command object\n\t */\n\tcommands: {[string]: Command} = {};\n\n\t/**\n\t * If command now running - set to PENDING\n\t * @type {string}\n\t */\n\tcommandState: string = RESOLVED;\n\n\t/**\n\t * Type of current entity\n\t * @type {string}\n\t */\n\tentityType: string = HISTORY_TYPES.landing;\n\n\t/**\n\t * Landing or Block ID in relation to type\n\t * @type {number}\n\t */\n\tentityId: number;\n\n\tconstructor()\n\t{\n\t\ttry\n\t\t{\n\t\t\tthis.entityId = Main.getInstance().id;\n\t\t}\n\t\tcatch (err)\n\t\t{\n\t\t\tthis.entityId = -1;\n\t\t}\n\n\t\tthis.stack = new Stack(this.entityId);\n\t\tthis.stack.init()\n\t\t\t.then(() => {\n\t\t\t\treturn registerBaseCommands(this)\n\t\t\t})\n\t\t\t.then(onInit);\n\t}\n\n\tstatic Command = Command;\n\tstatic Entry = Entry;\n\tstatic Highlight = Highlight; // not delete - just for export\n\n\tstatic getInstance(): History\n\t{\n\t\tconst rootWindow = PageObject.getRootWindow();\n\t\tif (!rootWindow.BX.Landing.History.instance)\n\t\t{\n\t\t\trootWindow.BX.Landing.History.instance = new BX.Landing.History();\n\t\t}\n\n\t\treturn rootWindow.BX.Landing.History.instance;\n\t}\n\n\t/**\n\t * Set special type for designer block history\n\t * @param blockId\n\t * @return {Promise<BX.Landing.History>|*}\n\t */\n\tsetTypeDesignerBlock(blockId: number): Promise<History>\n\t{\n\t\tthis.entityType = HISTORY_TYPES.designerBlock;\n\t\tthis.entityId = blockId;\n\n\t\treturn this.stack.setTypeDesignerBlock(blockId)\n\t\t\t.then(() => {\n\t\t\t\treturn this;\n\t\t\t})\n\t}\n\n\tgetEntityId(): number\n\t{\n\t\treturn this.entityId;\n\t}\n\n\tbeforeUndo(): Promise\n\t{\n\t\tconst commandName = this.stack.getCommandName();\n\t\tif (commandName && this.commands[commandName])\n\t\t{\n\t\t\tconst command = this.commands[commandName];\n\n\t\t\treturn command.onBeforeCommand();\n\t\t}\n\n\t\treturn Promise.resolve();\n\t}\n\n\tbeforeRedo(): Promise\n\t{\n\t\tconst commandName = this.stack.getCommandName(false);\n\t\tif (commandName && this.commands[commandName])\n\t\t{\n\t\t\tconst command = this.commands[commandName];\n\n\t\t\treturn command.onBeforeCommand();\n\t\t}\n\n\t\treturn Promise.resolve();\n\t}\n\n\t/**\n\t * Applies preview history entry\n\t * @return {Promise}\n\t */\n\tundo(): Promise\n\t{\n\t\tif (this.canUndo())\n\t\t{\n\t\t\tthis.commandState = PENDING;\n\t\t\treturn this.beforeUndo()\n\t\t\t\t.then(() => {\n\t\t\t\t\treturn Backend.getInstance()\n\t\t\t\t\t\t.action(\n\t\t\t\t\t\t\tthis.getBackendActionName(true),\n\t\t\t\t\t\t\tthis.getBackendActionParams(true),\n\t\t\t\t\t\t)\n\t\t\t\t})\n\t\t\t\t.then(command => {\n\t\t\t\t\tif (command)\n\t\t\t\t\t{\n\t\t\t\t\t\tconst params = command.params;\n\t\t\t\t\t\tconst entry = new Entry({\n\t\t\t\t\t\t\tblock: params.block,\n\t\t\t\t\t\t\tselector: params.selector,\n\t\t\t\t\t\t\tcommand: command.command,\n\t\t\t\t\t\t\tparams: params,\n\t\t\t\t\t\t});\n\n\t\t\t\t\t\treturn this.runCommand(entry);\n\t\t\t\t\t}\n\n\t\t\t\t\treturn Promise.reject();\n\t\t\t\t})\n\t\t\t\t.then(() => {\n\t\t\t\t\treturn this.offset();\n\t\t\t\t})\n\t\t\t\t.then(onUpdate)\n\t\t\t;\n\t\t}\n\n\t\treturn Promise.resolve(this);\n\t}\n\n\n\t/**\n\t * Applies preview next history entry\n\t * @return {Promise}\n\t */\n\tredo(): Promise\n\t{\n\t\tif (this.canRedo())\n\t\t{\n\t\t\tthis.commandState = PENDING;\n\t\t\treturn this.beforeRedo()\n\t\t\t\t.then(() => {\n\t\t\t\t\treturn Backend.getInstance()\n\t\t\t\t\t\t.action(\n\t\t\t\t\t\t\tthis.getBackendActionName(false),\n\t\t\t\t\t\t\tthis.getBackendActionParams(false),\n\t\t\t\t\t\t)\n\t\t\t\t})\n\t\t\t\t.then(command => {\n\t\t\t\t\tif (command)\n\t\t\t\t\t{\n\t\t\t\t\t\tconst params = command.params;\n\t\t\t\t\t\tconst entry = new Entry({\n\t\t\t\t\t\t\tblock: params.block,\n\t\t\t\t\t\t\tselector: params.selector,\n\t\t\t\t\t\t\tcommand: command.command,\n\t\t\t\t\t\t\tparams: params,\n\t\t\t\t\t\t});\n\n\t\t\t\t\t\treturn this.runCommand(entry);\n\t\t\t\t\t}\n\n\t\t\t\t\treturn Promise.reject();\n\t\t\t\t})\n\t\t\t\t.then(() => {\n\t\t\t\t\treturn this.offset(false);\n\t\t\t\t})\n\t\t\t\t.then(onUpdate)\n\t\t\t;\n\t\t}\n\n\t\treturn Promise.resolve(this);\n\t}\n\n\t/**\n\t * Get name for backend action\n\t * @param {boolean} undo - true, if need undo, false for redo\n\t * @return {string}\n\t */\n\tgetBackendActionName(undo: boolean = true): string\n\t{\n\t\tif (this.entityType === HISTORY_TYPES.designerBlock)\n\t\t{\n\t\t\treturn undo ? 'History::undoDesignerBlock' : 'History::redoDesignerBlock';\n\t\t}\n\n\t\treturn undo ? 'History::undoLanding' : 'History::redoLanding';\n\t}\n\n\t/**\n\t * Get id for entity for backend action\n\t * @param {boolean} undo - true, if need undo, false for redo\n\t * @return {string}\n\t */\n\tgetBackendActionParams(undo: boolean = true): string\n\t{\n\t\tif (this.entityType === HISTORY_TYPES.designerBlock)\n\t\t{\n\t\t\treturn {\n\t\t\t\tblockId: this.entityId,\n\t\t\t};\n\t\t}\n\n\t\treturn {\n\t\t\tlid: this.stack.getCommandEntityId(undo),\n\t\t};\n\t}\n\n\trunCommand(entry: Entry)\n\t{\n\t\tif (entry)\n\t\t{\n\t\t\tconst command = this.commands[entry.command];\n\t\t\tif (command)\n\t\t\t{\n\t\t\t\tthis.commandState = PENDING;\n\n\t\t\t\treturn command.command(entry)\n\t\t\t\t\t.then(() => {\n\t\t\t\t\t\tthis.commandState = RESOLVED;\n\n\t\t\t\t\t\treturn this;\n\t\t\t\t\t})\n\t\t\t\t\t.catch(() => {\n\t\t\t\t\t\tthis.commandState = RESOLVED;\n\n\t\t\t\t\t\treturn this;\n\t\t\t\t\t});\n\t\t\t}\n\t\t}\n\t}\n\n\toffset(undo: boolean = true): Promise<History>\n\t{\n\t\tif (this.commandState === PENDING)\n\t\t{\n\t\t\treturn Promise.resolve(this);\n\t\t}\n\n\t\treturn this.stack.offset(undo)\n\t\t\t.then(() => {\n\t\t\t\treturn this;\n\t\t\t});\n\t}\n\n\t/**\n\t * Check that there are actions to undo\n\t * @returns {boolean}\n\t */\n\tcanUndo()\n\t{\n\t\treturn (\n\t\t\tthis.commandState !== PENDING\n\t\t\t&& this.stack.canUndo()\n\t\t);\n\t}\n\n\n\t/**\n\t * Check that there are actions to redo\n\t * @returns {boolean}\n\t */\n\tcanRedo()\n\t{\n\t\treturn (\n\t\t\tthis.commandState !== PENDING\n\t\t\t&& this.stack.canRedo()\n\t\t);\n\t}\n\n\n\t/**\n\t * Adds entry to history stack\n\t */\n\tpush(): Promise<History>\n\t{\n\t\treturn this.stack.push()\n\t\t\t.then(() => {\n\t\t\t\treturn onUpdate(this);\n\t\t\t})\n\t\t;\n\t}\n\n\n\t/**\n\t * Registers unique history command\n\t * @param {Command} command\n\t */\n\tregisterCommand(command: Command)\n\t{\n\t\tif (command instanceof Command)\n\t\t{\n\t\t\tthis.commands[command.id] = command;\n\t\t}\n\t}\n\n\t/**\n\t * Removes page history from storage\n\t * @param {int} pageId\n\t * @return {Promise<BX.Landing.History>}\n\t */\n\tremovePageHistory(pageId)\n\t{\n\t\treturn removePageHistory(pageId, this)\n\t\t\t.then((history) => {\n\t\t\t\tlet currentPageId;\n\n\t\t\t\ttry\n\t\t\t\t{\n\t\t\t\t\tcurrentPageId = BX.Landing.Main.getInstance().id;\n\t\t\t\t}\n\t\t\t\tcatch (err)\n\t\t\t\t{\n\t\t\t\t\tcurrentPageId = -1;\n\t\t\t\t}\n\n\t\t\t\tif (currentPageId === pageId)\n\t\t\t\t{\n\t\t\t\t\treturn clear(history);\n\t\t\t\t}\n\n\t\t\t\treturn Promise.reject();\n\t\t\t})\n\t\t\t.then(onUpdate)\n\t\t\t.catch(() => {});\n\t}\n}"],"names":["RESOLVED","PENDING","HISTORY_TYPES","landing","designerBlock","BX","Landing","Utils","scrollTo","highlight","editNode","entry","PageObject","getInstance","blocks","then","block","get","Promise","reject","forceInit","node","nodes","getBySelector","selector","bind","useRangeRect","setValue","params","value","editText","editEmbed","editMap","editImage","editIcon","editLink","changeNodeName","onChangeTag","sortBlock","direction","addBlock","currentBlock","resolve","Main","view","iframe","currentArea","contentDocument","body","querySelector","lid","insertBefore","onAddBlock","code","newBlock","removeBlock","deleteBlock","addCard","parentNode","index","position","container","content","cardSelector","card","cards","err","console","log","removeCard","relativeSelector","addNode","tags","top","onCustomEvent","removeNode","slice","editStyle","initStyles","elements","querySelectorAll","isWrapper","forEach","element","pos","className","style","removeAttribute","form","forms","find","currentForm","fields","field","reset","onFrameLoad","styleNode","styles","affect","length","setAffects","onStyleInputWithDebounce","data","getValue","editAttributes","applyAttributeChanges","attrs","attribute","updateContent","multiply","blockId","updateBlockStateData","singleAction","command","dynamicParams","dynamicState","settings","id","Object","keys","updateBlockState","replaceLanding","window","location","reload","changeAnchor","Command","options","Type","isStringFilled","isFunction","onBeforeCommand","registerBaseCommands","history","registerCommand","Runtime","loadExtension","editor","getEditorWindow","Tag","render","Dom","append","document","loader","Loader","target","show","worker","Worker","asyncJsonParse","str","postMessage","addEventListener","event","asyncJsonStringify","obj","removePageHistory","pageId","localStorage","historyData","isPlainObject","all","allString","clear","stack","commandState","onUpdate","rootWindow","getRootWindow","onInit","Entry","Stack","entityId","entityType","mainEntityId","items","step","undo","newStep","setTimeout","push","Backend","action","isArray","item","isNumber","isString","current","entitySteps","Text","toNumber","Math","min","max","e","error","currentItem","entitiesToClearFuture","backend","promises","landingId","Highlight","layout","classList","add","animationDuration","rect","UI","prototype","call","hide","History","instance","HighlightNode","init","setTypeDesignerBlock","commandName","getCommandName","commands","canUndo","beforeUndo","getBackendActionName","getBackendActionParams","runCommand","offset","canRedo","beforeRedo","getCommandEntityId","currentPageId"],"mappings":"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"}