Your IP : 172.71.254.228


Current Path : /var/www/element/data/www/revenuestory.ru/bitrix/js/ui/bottomsheet/dist/
Upload File :
Current File : /var/www/element/data/www/revenuestory.ru/bitrix/js/ui/bottomsheet/dist/bottomsheet.bundle.js.map

{"version":3,"file":"bottomsheet.bundle.js","sources":["../src/touchdraglistener.js","../src/bottomsheet.js"],"sourcesContent":["import { Type } from 'main.core';\n\nexport default class TouchDragListener\n{\n\tconstructor({\n\t\telement,\n\t\ttouchStartCallback,\n\t\ttouchEndCallback,\n\t\ttouchMoveCallback\n\t})\n\t{\n\t\tthis.element = Type.isDomNode(element) ? element : null;\n\t\tthis.touchStartCallback = touchStartCallback;\n\t\tthis.touchEndCallback = touchEndCallback;\n\t\tthis.touchMoveCallback = touchMoveCallback;\n\n\t\tthis.active = false;\n\t\tthis.currentY = null;\n\t\tthis.initialY = null;\n\t\tthis.yOffset = 0;\n\n\t\tthis.#bindEvents();\n\t}\n\n\t#bindEvents()\n\t{\n\t\tif (this.element)\n\t\t{\n\t\t\tthis.element.addEventListener('touchstart', this.#dragStart.bind(this));\n\t\t\tthis.element.addEventListener('touchend', this.#dragEnd.bind(this));\n\t\t\tthis.element.addEventListener('touchmove', this.#dragMove.bind(this));\n\t\t}\n\t}\n\n\t#dragStart(ev)\n\t{\n\t\tthis.active = true;\n\t\tthis.element.classList.add('--ondrag');\n\n\t\tif (ev.type === 'touchstart')\n\t\t{\n\t\t\tthis.initialY = ev.touches[0].clientY - this.yOffset;\n\t\t}\n\t\telse\n\t\t{\n\t\t\tthis.initialY = ev.clientY - this.yOffset;\n\t\t}\n\n\t\tif (!this.touchStartCallback)\n\t\t{\n\t\t\treturn;\n\t\t}\n\n\t\tthis.touchStartCallback({\n\t\t\telement: this.element,\n\t\t\tactive: this.active,\n\t\t\tcurrentY: this.currentY,\n\t\t\tinitialY: this.initialY,\n\t\t\tyOffset: this.offSetY\n\t\t});\n\t}\n\n\t#dragEnd(ev)\n\t{\n\t\tthis.active = true;\n\t\tthis.element.classList.remove('--ondrag');\n\n\t\tthis.yOffset = 0;\n\n\t\tthis.initialY = this.currentY;\n\n\t\tif (!this.touchEndCallback) return;\n\n\t\tthis.touchEndCallback({\n\t\t\telement: this.element,\n\t\t\tactive: this.active,\n\t\t\tcurrentY: this.currentY,\n\t\t\tinitialY: this.initialY,\n\t\t\tyOffset: this.offSetY\n\t\t});\n\t}\n\t\n\t#dragMove(ev)\n\t{\n\t\tif (!this.active)\n\t\t{\n\t\t\treturn;\n\t\t}\n\n\t\tev.preventDefault();\n\n\t\tif (ev.type === 'touchmove')\n\t\t{\n\t\t\tthis.currentY = ev.touches[0].clientY - this.initialY;\n\t\t}\n\t\telse\n\t\t{\n\t\t\tthis.currentY = ev.clientY - this.initialY;\n\t\t}\n\n\t\tthis.yOffset = this.currentX;\n\n\t\tif (!this.touchMoveCallback)\n\t\t{\n\t\t\treturn;\n\t\t}\n\n\t\tthis.touchMoveCallback({\n\t\t\telement: this.element,\n\t\t\tactive: this.active,\n\t\t\tcurrentY: this.currentY,\n\t\t\tinitialY: this.initialY,\n\t\t\tyOffset: this.offSetY\n\t\t});\n\t}\n}","import { Type, Tag, Dom, Loc } from 'main.core';\nimport TouchDragListener from './touchdraglistener';\nimport 'ui.fonts.roboto';\nimport './style.css';\n\nexport default class BottomSheet\n{\n\tconstructor({\n\t\tcontent,\n\t\thelp,\n\t\tclassName,\n\t\tpadding\n\t})\n\t{\n\t\tthis.content = Type.isDomNode(content) ? content : null;\n\t\tthis.className = Type.isString(className) ? className : '';\n\t\tthis.padding = Type.isString(padding) || Type.isNumber(padding) ? padding : null;\n\n\t\tthis.help = null;\n\t\tswitch (true)\n\t\t{\n\t\t\tcase Type.isString(help):\n\t\t\t\tthis.help = help;\n\t\t\t\tbreak;\n\t\t\tcase Type.isFunction(help):\n\t\t\t\tthis.help = help;\n\t\t\t\tbreak;\n\t\t}\n\n\t\tthis.layout = {\n\t\t\twrapper: null,\n\t\t\tcontainer: null,\n\t\t\tcontent: null,\n\t\t\toverlay: null,\n\t\t\tclose: null,\n\t\t\thelp: null\n\t\t};\n\n\t\tthis.halfOfHeight = 0;\n\t\tthis.currentHeight = null;\n\n\t\tthis.sheetListener = new TouchDragListener({\n\t\t\telement: this.#getPanel(),\n\t\t\ttouchStartCallback: ({element, active, initialY, currentY, yOffset}) => {\n\t\t\t\telement.style.setProperty('--translateY', 'translateY(0)');\n\t\t\t\telement.style.setProperty('transition', 'unset');\n\t\t\t},\n\t\t\ttouchEndCallback: ({element, active, initialY, currentY, yOffset}) => {\n\t\t\t\telement.style.setProperty(\n\t\t\t\t\t'transition',\n\t\t\t\t\t'transform .3s'\n\t\t\t\t);\n\t\t\t\telement.style.setProperty(\n\t\t\t\t\t'--translateY',\n\t\t\t\t\t'translateY(' + currentY + 'px)'\n\t\t\t\t);\n\n\t\t\t\tif (parseInt(currentY) > this.halfOfHeight)\n\t\t\t\t{\n\t\t\t\t\tthis.close();\n\t\t\t\t}\n\t\t\t},\n\t\t\ttouchMoveCallback: ({element, active, initialY, currentY, yOffset}) => {\n\t\t\t\t\n\t\t\t\tif (currentY <= 0)\n\t\t\t\t{\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tif (currentY <= -40)\n\t\t\t\t{\n\t\t\t\t\tcurrentY = -41 + currentY / 10;\n\t\t\t\t}\n\n\t\t\t\telement.style.setProperty(\n\t\t\t\t\t'--translateY',\n\t\t\t\t\t'translateY(' + currentY + 'px)'\n\t\t\t\t);\n\t\t\t}\n\t\t});\n\n\t\tif (this.content)\n\t\t{\n\t\t\tthis.setContent(this.content);\n\t\t}\n\t}\n\n\t#getOverlay()\n\t{\n\t\tif (!this.layout.overlay)\n\t\t{\n\t\t\tthis.layout.overlay = Tag.render`\n\t\t\t\t<div class=\"ui-bottomsheet__overlay\"></div>\n\t\t\t`;\n\n\t\t\tthis.layout.overlay.addEventListener('click', this.close.bind(this));\n\t\t}\n\n\t\treturn this.layout.overlay;\n\t}\n\n\t#getHelp()\n\t{\n\t\tif (!this.layout.help)\n\t\t{\n\t\t\tif (Type.isString(this.help))\n\t\t\t{\n\t\t\t\tthis.layout.help = Tag.render`\n\t\t\t\t\t<a href=\"${this.help}\" class=\"ui-bottomsheet__panel-control--item --cursor-pointer\">\n\t\t\t\t\t\t<span class=\"ui-bottomsheet__panel-control--item-text\">${Loc.getMessage('UI_BOTTOMSHEET_HELP')}</span>\n\t\t\t\t\t</a>\n\t\t\t\t`;\n\t\t\t}\n\n\t\t\tif (Type.isFunction(this.help))\n\t\t\t{\n\t\t\t\tthis.layout.help = Tag.render`\n\t\t\t\t\t<div class=\"ui-bottomsheet__panel-control--item --cursor-pointer\">\n\t\t\t\t\t\t<div class=\"ui-bottomsheet__panel-control--item-text\">${Loc.getMessage('UI_BOTTOMSHEET_HELP')}</div>\n\t\t\t\t\t</div>\n\t\t\t\t`;\n\n\t\t\t\tthis.layout.help.addEventListener('click', ()=> {\n\t\t\t\t\tthis.help();\n\t\t\t\t});\n\t\t\t}\n\t\t}\n\n\t\treturn this.layout.help;\n\t}\n\n\t#getClose()\n\t{\n\t\tif (!this.layout.close)\n\t\t{\n\t\t\tthis.layout.close = Tag.render`\n\t\t\t\t<div class=\"ui-bottomsheet__panel-control--item --cursor-pointer --close\">\n\t\t\t\t\t<div class=\"ui-bottomsheet__panel-control--item-text\">${Loc.getMessage('UI_BOTTOMSHEET_CLOSE')}</div>\n\t\t\t\t</div>\n\t\t\t`;\n\n\t\t\tthis.layout.close.addEventListener('click', this.close.bind(this));\n\t\t}\n\n\t\treturn this.layout.close;\n\t}\n\n\t#getPanel()\n\t{\n\t\tif (!this.layout.container)\n\t\t{\n\t\t\tconst panelWrapper = Tag.render`\n\t\t\t\t<div class=\"ui-bottomsheet__panel-wrapper\">\n\t\t\t\t\t${this.#getContent()}\n\t\t\t\t</div>\n\t\t\t`;\n\n\t\t\tif (this.padding || this.padding === 0)\n\t\t\t{\n\t\t\t\tlet padding;\n\n\t\t\t\tswitch(true)\n\t\t\t\t{\n\t\t\t\t\tcase Type.isString(this.padding):\n\t\t\t\t\t\tpadding = this.padding;\n\t\t\t\t\t\tbreak;\n\n\t\t\t\t\tcase Type.isNumber(this.padding):\n\t\t\t\t\t\tpadding = this.padding + 'px';\n\t\t\t\t\t\tbreak;\n\t\t\t\t}\n\n\t\t\t\tpanelWrapper.style.setProperty(\n\t\t\t\t\t'padding',\n\t\t\t\t\tpadding\n\t\t\t\t);\n\t\t\t}\n\n\t\t\tthis.layout.container = Tag.render`\n\t\t\t\t<div class=\"ui-bottomsheet__panel\">\n\t\t\t\t\t<div class=\"ui-bottomsheet__panel-control\">\n\t\t\t\t\t\t${this.help ? this.#getHelp() : ''}\n\t\t\t\t\t\t<div class=\"ui-bottomsheet__panel-handler\"></div>\n\t\t\t\t\t\t${this.#getClose()}\n\t\t\t\t\t</div>\n\t\t\t\t\t${panelWrapper}\n\t\t\t\t</div>\n\t\t\t`;\n\t\t}\n\n\t\treturn this.layout.container;\n\t}\n\n\t#getContent()\n\t{\n\t\tif (!this.layout.content)\n\t\t{\n\t\t\tthis.layout.content = Tag.render`\n\t\t\t\t<div class=\"ui-bottomsheet__panel-content\"></div>\n\t\t\t`;\n\t\t}\n\n\t\treturn this.layout.content;\n\t}\n\n\t#getWrapper()\n\t{\n\t\tif (!this.layout.wrapper)\n\t\t{\n\t\t\tthis.layout.wrapper = Tag.render`\n\t\t\t\t<div class=\"ui-bottomsheet ui-bottomsheet__scope ${this.className}\"></div>\n\t\t\t`;\n\t\t}\n\n\t\treturn this.layout.wrapper;\n\t}\n\t\n\tsetContent(content: HTMLElement)\n\t{\n\t\tif (Type.isDomNode(content))\n\t\t{\n\t\t\tDom.clean(this.#getContent());\n\t\t\tthis.#getContent().appendChild(content);\n\t\t}\n\n\t\tif (Type.isString(content))\n\t\t{\n\t\t\tDom.clean(this.#getContent());\n\t\t\tthis.#getContent().innerText = content;\n\t\t}\n\t}\n\n\tadjustPosition()\n\t{\n\n\t}\n\n\tadjustSize()\n\t{\n\t\tif (this.currentHeight !== this.#getPanel().offsetHeight)\n\t\t{\n\t\t\tlet currentHeight = this.currentHeight;\n\t\t\tlet newHeight = this.#getPanel().offsetHeight;\n\t\t\tthis.#getPanel().style.setProperty(\n\t\t\t\t'height',\n\t\t\t\tcurrentHeight + 'px'\n\t\t\t);\n\n\t\t\tsetTimeout(()=> {\n\t\t\t\tcurrentHeight = this.#getPanel().offsetHeight;\n\t\t\t\tthis.#getPanel().style.setProperty(\n\t\t\t\t\t'height',\n\t\t\t\t\tnewHeight + 'px'\n\t\t\t\t);\n\n\t\t\t\tconst adjustHeight = ()=> {\n\t\t\t\t\tthis.#getPanel().style.removeProperty(\n\t\t\t\t\t\t'height',\n\t\t\t\t\t\tnewHeight + 'px'\n\t\t\t\t\t);\n\t\t\t\t\tthis.#getPanel().removeEventListener('transitionend', adjustHeight)\n\t\t\t\t};\n\n\t\t\t\tthis.#getPanel().addEventListener('transitionend', adjustHeight);\n\n\t\t\t\tthis.currentHeight = newHeight;\n\t\t\t\tthis.halfOfHeight = this.currentHeight / 2;\n\t\t\t});\n\t\t}\n\t}\n\n\tclose()\n\t{\n\t\tif (this.#getWrapper().parentNode)\n\t\t{\n\t\t\tthis.#getPanel().classList.remove('--show');\n\t\t\tthis.#getOverlay().classList.remove('--show');\n\n\t\t\tconst animationProgress = () => {\n\t\t\t\tthis.#getWrapper().classList.remove('--show');\n\t\t\t\tthis.#getPanel().removeEventListener('transitionend', animationProgress);\n\t\t\t}\n\n\t\t\tthis.#getPanel().addEventListener('transitionend', animationProgress)\n\t\t}\n\t}\n\n\tshow()\n\t{\n\t\tif (!this.#getWrapper().parentNode)\n\t\t{\n\t\t\tthis.#getWrapper().appendChild(this.#getOverlay());\n\t\t\tthis.#getWrapper().appendChild(this.#getPanel());\n\t\t\tdocument.body.appendChild(this.#getWrapper());\n\t\t}\n\n\t\tthis.#getWrapper().classList.add('--show');\n\n\t\tsetTimeout(()=> {\n\t\t\tthis.currentHeight = this.#getPanel().offsetHeight;\n\t\t\tthis.halfOfHeight = this.currentHeight / 2;\n\t\t\tthis.#getPanel().classList.add('--show');\n\t\t\tthis.#getOverlay().classList.add('--show');\n\t\t});\n\t}\n}"],"names":["TouchDragListener","element","touchStartCallback","touchEndCallback","touchMoveCallback","Type","isDomNode","active","currentY","initialY","yOffset","addEventListener","bind","ev","classList","add","type","touches","clientY","offSetY","remove","preventDefault","currentX","BottomSheet","content","help","className","padding","isString","isNumber","isFunction","layout","wrapper","container","overlay","close","halfOfHeight","currentHeight","sheetListener","style","setProperty","parseInt","setContent","Dom","clean","appendChild","innerText","_classPrivateMethodGet","offsetHeight","newHeight","setTimeout","adjustHeight","removeProperty","removeEventListener","parentNode","animationProgress","document","body","Tag","render","Loc","getMessage","panelWrapper"],"mappings":"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"}