| Current Path : /var/www/homesaver/www/bitrix/js/ui/popupcomponentsmaker/dist/ |
| Current File : /var/www/homesaver/www/bitrix/js/ui/popupcomponentsmaker/dist/popupcomponentsmaker.bundle.js.map |
{"version":3,"file":"popupcomponentsmaker.bundle.js","sources":["../src/popup.item.js","../src/popup.js"],"sourcesContent":["import { EventEmitter } from 'main.core.events';\nimport { Type, Tag, Dom } from 'main.core';\nimport { Loader } from 'main.loader';\n\nexport default class PopupComponentsMakerItem extends EventEmitter\n{\n\tconstructor(options = {})\n\t{\n\t\tsuper();\n\n\t\tthis.html = null;\n\t\tthis.awaitContent = null;\n\t\tthis.flex = null;\n\t\tthis.withoutBackground = null;\n\t\tthis.backgroundColor = null;\n\t\tthis.backgroundImage = null;\n\t\tthis.background = null;\n\t\tthis.marginBottom = null;\n\t\tthis.disabled = null;\n\t\tthis.secondary = null;\n\t\tthis.overflow = null;\n\t\tthis.displayBlock = null;\n\t\tthis.attrs = null;\n\t\tthis.minHeight = null;\n\t\tthis.sizeLoader = 45;\n\t\tthis.asyncSecondary = null;\n\t\tthis.margin = null;\n\n\t\tthis.setParams(options);\n\n\t\tthis.layout = {\n\t\t\tcontainer: null,\n\t\t};\n\n\t\tif (this.awaitContent)\n\t\t{\n\t\t\tthis.await();\n\t\t}\n\t}\n\n\tsetParams(options = {})\n\t{\n\t\tthis.html = Type.isDomNode(options?.html) ? options.html : this.html;\n\t\tthis.awaitContent = Type.isBoolean(options?.awaitContent) ? options?.awaitContent : this.awaitContent;\n\t\tthis.flex = Type.isNumber(options?.flex) ? options.flex : this.flex;\n\t\tthis.withoutBackground = Type.isBoolean(options?.withoutBackground)\n\t\t\t? options.withoutBackground\n\t\t\t: this.withoutBackground\n\t\t;\n\t\tthis.background = Type.isString(options?.background)\n\t\t\t? options.background\n\t\t\t: this.background\n\t\t;\n\t\tthis.backgroundColor = Type.isString(options?.backgroundColor)\n\t\t\t? options.backgroundColor\n\t\t\t: this.backgroundColor\n\t\t;\n\t\tthis.backgroundImage = Type.isString(options?.backgroundImage)\n\t\t\t? options.backgroundImage\n\t\t\t: this.backgroundImage\n\t\t;\n\t\tthis.marginBottom = Type.isNumber(options?.marginBottom) ? options.marginBottom : this.marginBottom;\n\t\tthis.disabled = Type.isBoolean(options?.disabled) ? options.disabled : this.disabled;\n\t\tthis.secondary = Type.isBoolean(options?.secondary) ? options.secondary : this.secondary;\n\t\tthis.overflow = Type.isBoolean(options?.overflow) ? options.overflow : this.overflow;\n\t\tthis.displayBlock = Type.isBoolean(options?.displayBlock) ? options.displayBlock : this.displayBlock;\n\t\tthis.attrs = Type.isPlainObject(options?.attrs) ? options.attrs : this.attrs;\n\t\tthis.minHeight = Type.isString(options?.minHeight) ? options.minHeight : this.minHeight;\n\t\tthis.margin = Type.isString(options.margin) ? options.margin : this.margin;\n\t\tthis.sizeLoader = Type.isNumber(options?.sizeLoader) ? options.sizeLoader : this.sizeLoader;\n\t\tthis.asyncSecondary = (options?.asyncSecondary instanceof Promise)\n\t\t\t? options.asyncSecondary\n\t\t\t: this.asyncSecondary\n\t\t;\n\t}\n\n\tgetLoader(): Loader\n\t{\n\t\tif (!this.loader)\n\t\t{\n\t\t\tthis.loader = new Loader({\n\t\t\t\ttarget: this.getContainer(),\n\t\t\t\tsize: this.sizeLoader\n\t\t\t});\n\t\t}\n\n\t\treturn this.loader;\n\t}\n\n\tawait()\n\t{\n\t\tthis.getContainer().classList.add('--awaiting');\n\t\tthis.showLoader();\n\t}\n\n\tstopAwait()\n\t{\n\t\tthis.getContainer().classList.remove('--awaiting');\n\t\tthis.hideLoader();\n\t}\n\n\tshowLoader(): void\n\t{\n\t\tvoid this.getLoader().show();\n\t}\n\n\thideLoader(): void\n\t{\n\t\tvoid this.getLoader().hide();\n\t}\n\n\tgetContent()\n\t{\n\t\tif (this.html)\n\t\t{\n\t\t\treturn this.html;\n\t\t}\n\n\t\treturn '';\n\t}\n\n\tupdateContent(node: HTMLElement)\n\t{\n\t\tif (Type.isDomNode(node))\n\t\t{\n\t\t\tDom.clean(this.getContainer());\n\t\t\tthis.getContainer().appendChild(node);\n\t\t}\n\t}\n\n\tsetBackgroundColor(color: string)\n\t{\n\t\tif (Type.isString(color))\n\t\t{\n\t\t\tthis.getContainer().style.backgroundColor = color;\n\t\t}\n\t}\n\n\tgetMarginBottom()\n\t{\n\t\treturn this.marginBottom;\n\t}\n\n\tgetContainer(): HTMLElement\n\t{\n\t\tif (!this.layout.container)\n\t\t{\n\t\t\tthis.layout.container = Tag.render`\n\t\t\t\t<div class=\"ui-popupcomponentmaker__content--section-item\">${this.getContent()}</div>\n\t\t\t`;\n\t\t}\n\n\t\tif (this.background)\n\t\t{\n\t\t\tthis.layout.container.style.background = this.background;\n\t\t}\n\n\t\tif (this.backgroundColor)\n\t\t{\n\t\t\tthis.layout.container.style.backgroundColor = this.backgroundColor;\n\t\t}\n\n\t\tif (this.backgroundImage)\n\t\t{\n\t\t\tthis.layout.container.style.backgroundImage = this.backgroundImage;\n\t\t}\n\n\t\tif (this.withoutBackground && !this.backgroundColor && !this.background)\n\t\t{\n\t\t\tthis.layout.container.classList.add('--transparent');\n\t\t}\n\n\t\tif (this.flex)\n\t\t{\n\t\t\tthis.layout.container.style.flex = this.flex;\n\t\t}\n\n\t\tif (this.disabled)\n\t\t{\n\t\t\tthis.layout.container.classList.add('--disabled');\n\t\t}\n\n\t\tif (this.secondary)\n\t\t{\n\t\t\tDom.addClass(this.layout.container, '--secondary');\n\t\t}\n\n\t\tif (this.overflow)\n\t\t{\n\t\t\tthis.layout.container.classList.add('--overflow-hidden');\n\t\t}\n\n\t\tif (this.displayBlock)\n\t\t{\n\t\t\tthis.layout.container.classList.add('--block');\n\t\t}\n\n\t\tif (this.attrs)\n\t\t{\n\t\t\tDom.adjust(this.layout.container, {attrs: this.attrs});\n\t\t}\n\n\t\tif (this.minHeight)\n\t\t{\n\t\t\tDom.style(this.layout.container, 'min-height', this.minHeight);\n\t\t}\n\n\t\tif (this.margin)\n\t\t{\n\t\t\tDom.style(this.layout.container, 'margin', this.margin);\n\t\t}\n\n\t\tif (this.asyncSecondary)\n\t\t{\n\t\t\tthis.asyncSecondary.then((secondary) => {\n\t\t\t\tif (secondary === false)\n\t\t\t\t{\n\t\t\t\t\tDom.removeClass(this.layout.container, '--secondary');\n\t\t\t\t}\n\t\t\t\telse\n\t\t\t\t{\n\t\t\t\t\tDom.addClass(this.layout.container, '--secondary');\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\n\t\treturn this.layout.container;\n\t}\n}\n","import { Type, Tag, Dom, Reflection } from 'main.core';\nimport {Popup} from 'main.popup';\nimport {EventEmitter} from \"main.core.events\";\nimport PopupComponentsMakerItem from './popup.item';\n\nimport 'ui.fonts.opensans';\nimport 'ui.design-tokens';\nimport './style.css';\n\nexport default class PopupComponentsMaker\n{\n\tconstructor({\n\t\tid,\n\t\ttarget,\n\t\tcontent,\n\t\twidth,\n\t\tcacheable,\n\t\tcontentPadding,\n\t\tpadding,\n\t\toffsetTop,\n\t\tblurBackground,\n\t\tuseAngle,\n\t})\n\t{\n\t\tthis.id = Type.isString(id) ? id : null;\n\t\tthis.target = Type.isElementNode(target) ? target : null;\n\t\tthis.content = content || null;\n\t\tthis.contentWrapper = null;\n\t\tthis.popup = null;\n\t\tthis.loader = null;\n\t\tthis.items = [];\n\t\tthis.width = Type.isNumber(width) ? width : null;\n\t\tthis.cacheable = Type.isBoolean(cacheable) ? cacheable : true;\n\t\tthis.contentPadding = Type.isNumber(contentPadding) ? contentPadding : 0;\n\t\tthis.padding = Type.isNumber(padding) ? padding : 13;\n\t\tthis.offsetTop = Type.isNumber(offsetTop) ? offsetTop : 0;\n\t\tthis.blurBlackground = Type.isBoolean(blurBackground) ? blurBackground : false;\n\t\tthis.useAngle = (Type.isUndefined(useAngle) || useAngle !== false);\n\t}\n\n\tgetItems()\n\t{\n\t\treturn this.items;\n\t}\n\n\tgetItem(item): PopupComponentsMakerItem\n\t{\n\t\tif (item instanceof PopupComponentsMakerItem)\n\t\t{\n\t\t\treturn item;\n\t\t}\n\n\t\titem = new PopupComponentsMakerItem(item);\n\n\t\tif (this.items.indexOf(item) === -1)\n\t\t{\n\t\t\tthis.items.push(item);\n\t\t}\n\n\t\treturn item;\n\t}\n\n\tgetPopup(): Popup\n\t{\n\t\tif (!this.popup)\n\t\t{\n\t\t\tconst popupWidth = this.width ? this.width : 350;\n\n\t\t\tconst popupId = this.id ? this.id + '-popup' : null;\n\n\t\t\tthis.popup = new Popup(popupId, this.target, {\n\t\t\t\tclassName: 'ui-popupcomponentmaker',\n\t\t\t\tcontentBackground: 'transparent',\n\t\t\t\tcontentPadding: this.contentPadding,\n\t\t\t\tangle: this.useAngle\n\t\t\t\t\t? {\n\t\t\t\t\t\toffset: (popupWidth / 2) - 16,\n\t\t\t\t\t}\n\t\t\t\t\t: false,\n\t\t\t\toffsetTop: this.offsetTop,\n\t\t\t\twidth: popupWidth,\n\t\t\t\toffsetLeft: -(popupWidth / 2) + (this.target ? this.target.offsetWidth / 2 : 0) + 40,\n\t\t\t\tautoHide: true,\n\t\t\t\tcloseByEsc: true,\n\t\t\t\tpadding: this.padding,\n\t\t\t\tanimation: 'fading-slide',\n\t\t\t\tcontent: this.getContentWrapper(),\n\t\t\t\tcacheable: this.cacheable,\n\t\t\t});\n\n\t\t\tif (this.blurBlackground)\n\t\t\t{\n\t\t\t\tDom.addClass(this.popup.getPopupContainer(), 'popup-with-radius');\n\t\t\t\tthis.setBlurBackground();\n\t\t\t\tEventEmitter.subscribe(\n\t\t\t\t\tEventEmitter.GLOBAL_TARGET,\n\t\t\t\t\t'BX.Intranet.Bitrix24:ThemePicker:onThemeApply', () => {\n\t\t\t\t\t\tsetTimeout(() => {\n\t\t\t\t\t\t\tthis.setBlurBackground();\n\t\t\t\t\t\t}, 200)\n\t\t\t\t\t}\n\t\t\t\t);\n\t\t\t}\n\n\t\t\tthis.popup.getContentContainer().style.overflowX = null;\n\t\t}\n\n\t\treturn this.popup;\n\t}\n\n\tisShown()\n\t{\n\t\treturn this.getPopup().isShown();\n\t}\n\n\tgetContentWrapper(): HTMLElement\n\t{\n\t\tif (!this.contentWrapper)\n\t\t{\n\t\t\tthis.contentWrapper = Tag.render`\n\t\t\t\t<div class=\"ui-popupcomponentmaker__content\"></div>\n\t\t\t`;\n\n\t\t\tif (!this.content)\n\t\t\t{\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tthis.content.map((item)=> {\n\t\t\t\tlet sectionNode = this.getSection()\n\n\t\t\t\tif (item?.marginBottom)\n\t\t\t\t{\n\t\t\t\t\tType.isNumber(item.marginBottom)\n\t\t\t\t\t\t? sectionNode.style.marginBottom = item.marginBottom + 'px'\n\t\t\t\t\t\t: null;\n\t\t\t\t}\n\t\t\t\tif (item?.className)\n\t\t\t\t{\n\t\t\t\t\tDom.addClass(sectionNode, item.className);\n\t\t\t\t}\n\n\t\t\t\tif (item?.attrs)\n\t\t\t\t{\n\t\t\t\t\tDom.adjust(sectionNode, {attrs: item.attrs});\n\t\t\t\t}\n\n\t\t\t\tif (Type.isDomNode(item?.html))\n\t\t\t\t{\n\t\t\t\t\tsectionNode.appendChild(this.getItem(item).getContainer());\n\t\t\t\t\tthis.contentWrapper.appendChild(sectionNode);\n\t\t\t\t}\n\n\t\t\t\tif (Type.isArray(item?.html))\n\t\t\t\t{\n\t\t\t\t\tlet innerSection = Tag.render`\n\t\t\t\t\t\t<div class=\"ui-popupcomponentmaker__content--section-item --flex-column --transparent\"></div>\n\t\t\t\t\t`;\n\n\t\t\t\t\titem.html.map((itemObj)=> {\n\n\t\t\t\t\t\tif (itemObj?.html?.then)\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tthis.adjustPromise(itemObj, sectionNode);\n\t\t\t\t\t\t\tType.isNumber(itemObj?.marginBottom)\n\t\t\t\t\t\t\t\t? sectionNode.style.marginBottom = itemObj.marginBottom + 'px'\n\t\t\t\t\t\t\t\t: null;\n\t\t\t\t\t\t}\n\t\t\t\t\t\telse\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tif (Type.isArray(itemObj?.html))\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\titemObj.html.map((itemInner)=> {\n\t\t\t\t\t\t\t\t\tinnerSection.appendChild(this.getItem(itemInner).getContainer());\n\t\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\t\tsectionNode.appendChild(innerSection);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\telse\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tsectionNode.appendChild(this.getItem(itemObj).getContainer());\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\tthis.contentWrapper.appendChild(sectionNode);\n\t\t\t\t}\n\n\t\t\t\tif (Type.isFunction(item?.html?.then))\n\t\t\t\t{\n\t\t\t\t\tthis.adjustPromise(item, sectionNode);\n\t\t\t\t\tthis.contentWrapper.appendChild(sectionNode);\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\n\t\treturn this.contentWrapper;\n\t}\n\n\tadjustPromise(item: Object, sectionNode: HTMLElement)\n\t{\n\t\titem.awaitContent = true;\n\t\tlet itemObj = this.getItem(item);\n\n\t\tif (sectionNode)\n\t\t{\n\t\t\tsectionNode.appendChild(itemObj.getContainer());\n\t\t\titem?.html?.then((result) => {\n\t\t\t\tif (Type.isDomNode(result))\n\t\t\t\t{\n\t\t\t\t\titemObj.stopAwait();\n\t\t\t\t\titemObj.updateContent(result);\n\t\t\t\t}\n\t\t\t\telse if (Type.isPlainObject(result) && Type.isDomNode(result.node))\n\t\t\t\t{\n\t\t\t\t\tif (Type.isPlainObject(result.options))\n\t\t\t\t\t{\n\t\t\t\t\t\titemObj.setParams(result.options);\n\t\t\t\t\t}\n\t\t\t\t\titemObj.stopAwait();\n\t\t\t\t\titemObj.updateContent(result.node);\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\t}\n\n\t/**\n\t * @private\n\t */\n\tgetSection(): HTMLElement\n\t{\n\t\treturn Tag.render`\n\t\t\t<div class=\"ui-popupcomponentmaker__content--section\"></div>\n\t\t`;\n\t}\n\n\tsetBlurBackground(): void\n\t{\n\t\tconst container = this.getPopup().getPopupContainer();\n\t\tconst windowStyles = window.getComputedStyle(document.body);\n\t\tconst backgroundImage = windowStyles.backgroundImage;\n\t\tconst backgroundColor = windowStyles.backgroundColor;\n\n\t\tif (Type.isDomNode(container))\n\t\t{\n\t\t\tDom.addClass(container, 'popup-window-blur');\n\t\t}\n\n\t\tlet blurStyle = Dom.create('style', {\n\t\t\tattrs: {\n\t\t\t\ttype: 'text/css',\n\t\t\t\tid: 'styles-widget-blur',\n\t\t\t}\n\t\t});\n\n\t\tlet styles = '.popup-window-content:after { '\n\t\t\t+ 'background-image: '\n\t\t\t+ backgroundImage\n\t\t\t+ ';'\n\t\t\t+ 'background-color: '\n\t\t\t+ backgroundColor\n\t\t\t+ '} ';\n\n\t\tstyles = document.createTextNode(styles);\n\t\tblurStyle.appendChild(styles);\n\n\t\tlet stylesWithAngle = '.popup-window-angly:after { ' + 'background-color: ' + backgroundColor + '} ';\n\n\t\tstylesWithAngle = document.createTextNode(stylesWithAngle);\n\t\tblurStyle.appendChild(stylesWithAngle);\n\t\tconst headStyle = document.head.querySelector('#styles-widget-blur');\n\n\t\tif (headStyle)\n\t\t{\n\t\t\tDom.replace(headStyle, blurStyle);\n\t\t}\n\t\telse\n\t\t{\n\t\t\tdocument.head.appendChild(blurStyle);\n\t\t}\n\t}\n\n\tshow()\n\t{\n\t\tif (!Type.isDomNode(this.target))\n\t\t{\n\t\t\treturn;\n\t\t}\n\n\t\tthis.getPopup().show();\n\t}\n\n\tclose()\n\t{\n\t\tthis.getPopup().close();\n\t}\n}\n"],"names":["PopupComponentsMakerItem","EventEmitter","constructor","options","html","awaitContent","flex","withoutBackground","backgroundColor","backgroundImage","background","marginBottom","disabled","secondary","overflow","displayBlock","attrs","minHeight","sizeLoader","asyncSecondary","margin","setParams","layout","container","await","Type","isDomNode","isBoolean","isNumber","isString","isPlainObject","Promise","getLoader","loader","Loader","target","getContainer","size","classList","add","showLoader","stopAwait","remove","hideLoader","show","hide","getContent","updateContent","node","Dom","clean","appendChild","setBackgroundColor","color","style","getMarginBottom","Tag","render","addClass","adjust","then","removeClass","PopupComponentsMaker","id","content","width","cacheable","contentPadding","padding","offsetTop","blurBackground","useAngle","isElementNode","contentWrapper","popup","items","blurBlackground","isUndefined","getItems","getItem","item","indexOf","push","getPopup","popupWidth","popupId","Popup","className","contentBackground","angle","offset","offsetLeft","offsetWidth","autoHide","closeByEsc","animation","getContentWrapper","getPopupContainer","setBlurBackground","subscribe","GLOBAL_TARGET","setTimeout","getContentContainer","overflowX","isShown","map","sectionNode","getSection","isArray","innerSection","itemObj","adjustPromise","itemInner","isFunction","result","windowStyles","window","getComputedStyle","document","body","blurStyle","create","type","styles","createTextNode","stylesWithAngle","headStyle","head","querySelector","replace","close"],"mappings":"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"}