Your IP : 3.137.180.201
{"version":3,"file":"highlight.bundle.js","sources":["../src/highlight.js"],"sourcesContent":["import {Dom, Runtime, Type} from 'main.core';\nimport {PageObject} from 'landing.pageobject';\n\n/**\n * Implements interface for works with highlights\n * Implements singleton pattern\n * @memberOf BX.Landing.UI\n */\nexport class Highlight\n{\n\tconstructor()\n\t{\n\t\tthis.layout = Dom.create('div');\n\t\tDom.addClass(this.layout, 'landing-highlight-border');\n\n\t\tDom.style(this.layout, {\n\t\t\tposition: 'absolute',\n\t\t\tborder: '2px #2fc6f6 dashed',\n\t\t\ttop: 0,\n\t\t\tleft: 0,\n\t\t\tright: 0,\n\t\t\tbottom: 0,\n\t\t\t'z-index': 9999,\n\t\t\topacity: '.4',\n\t\t\t'pointer-events': 'none',\n\t\t\ttransform: 'translateZ(0)',\n\t\t\t'background-color': 'rgba(47, 198, 246, .15)',\n\t\t});\n\t}\n\n\tstatic getInstance()\n\t{\n\t\tif (!Highlight.instance)\n\t\t{\n\t\t\tHighlight.instance = new Highlight();\n\t\t}\n\n\t\treturn Highlight.instance;\n\t}\n\n\tstatic highlightsStore = null;\n\tstatic get highlights(): BX.Landing.Collection.BaseCollection\n\t{\n\t\tif (!Highlight.highlightsStore)\n\t\t{\n\t\t\tHighlight.highlightsStore = new BX.Landing.Collection.BaseCollection();\n\t\t}\n\n\t\treturn Highlight.highlightsStore;\n\t}\n\n\t/**\n\t * Shows highlight for node\n\t * @param {HTMLElement|HTMLElement[]} node\n\t * @param {object} [rect]\n\t */\n\tshow(node, rect)\n\t{\n\t\tthis.hide();\n\t\tif (Type.isArray(node))\n\t\t{\n\t\t\tnode.forEach((element) => {\n\t\t\t\tthis.highlightNode(element);\n\t\t\t});\n\t\t}\n\t\telse if (Type.isDomNode(node))\n\t\t{\n\t\t\tthis.highlightNode(node, rect);\n\t\t}\n\t}\n\n\t/**\n\t * Hides highlight for all nodes\n\t * @param force - if true - remove highlight immediately, without requestAnimationFrame\n\t */\n\t// eslint-disable-next-line class-methods-use-this\n\thide(force: boolean = false)\n\t{\n\t\tHighlight.highlights.forEach((item) => {\n\t\t\tif (force)\n\t\t\t{\n\t\t\t\tDom.remove(item.highlight);\n\t\t\t\titem.node.style.position = '';\n\t\t\t\titem.node.style.userSelect = '';\n\t\t\t\titem.node.style.cursor = '';\n\t\t\t}\n\t\t\telse\n\t\t\t{\n\t\t\t\tBX.DOM.write(() =>\n\t\t\t\t{\n\t\t\t\t\tDom.remove(item.highlight);\n\t\t\t\t\titem.node.style.position = '';\n\t\t\t\t\titem.node.style.userSelect = '';\n\t\t\t\t\titem.node.style.cursor = '';\n\t\t\t\t});\n\t\t\t}\n\t\t});\n\n\t\tHighlight.highlights.clear();\n\t}\n\n\t/**\n\t * @private\n\t * @param node\n\t * @param {object} rect\n\t */\n\thighlightNode(node, rect)\n\t{\n\t\tconst highlight = Runtime.clone(this.layout);\n\n\t\tif (rect)\n\t\t{\n\t\t\tBX.DOM.write(() => {\n\t\t\t\tDom.style(highlight, {\n\t\t\t\t\tposition: 'fixed',\n\t\t\t\t\twidth: `${rect.width}px`,\n\t\t\t\t\theight: `${rect.height}px`,\n\t\t\t\t\ttop: `${rect.top}px`,\n\t\t\t\t\tleft: `${rect.left}px`,\n\t\t\t\t\tright: `${rect.right}px`,\n\t\t\t\t\tbottom: `${rect.bottom}px`,\n\t\t\t\t});\n\t\t\t});\n\n\t\t\tPageObject.getInstance().view().then((frame) => {\n\t\t\t\tBX.DOM.write(() => {\n\t\t\t\t\tDom.append(highlight, frame.contentDocument.body);\n\t\t\t\t});\n\t\t\t});\n\t\t}\n\t\telse\n\t\t{\n\t\t\tBX.DOM.write(() => {\n\t\t\t\tDom.append(highlight, node);\n\t\t\t});\n\t\t}\n\n\t\tBX.DOM.write(() => {\n\t\t\tDom.style(node, {\n\t\t\t\tposition: 'relative',\n\t\t\t\tuserSelect: 'none',\n\t\t\t\tcursor: 'pointer',\n\t\t\t});\n\t\t});\n\n\t\tHighlight.highlights.add({node, highlight});\n\t}\n}"],"names":["Highlight","layout","Dom","create","addClass","style","position","border","top","left","right","bottom","opacity","transform","node","rect","hide","Type","isArray","forEach","element","highlightNode","isDomNode","force","highlights","item","remove","highlight","userSelect","cursor","BX","DOM","write","clear","Runtime","clone","width","height","PageObject","getInstance","view","then","frame","append","contentDocument","body","add","instance","highlightsStore","Landing","Collection","BaseCollection"],"mappings":"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"}