Server IP : 80.87.202.40 / Your IP : 216.73.216.169 Web Server : Apache System : Linux rospirotorg.ru 5.14.0-539.el9.x86_64 #1 SMP PREEMPT_DYNAMIC Thu Dec 5 22:26:13 UTC 2024 x86_64 User : bitrix ( 600) PHP Version : 8.2.27 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : ON Directory : /home/bitrix/ext_www/rospirotorg.ru/bitrix/js/ui/mobile-promoter/dist/ |
Upload File : |
{"version":3,"file":"mobile-promoter.bundle.js","sources":["../src/index.js"],"sourcesContent":["import { Dom, Tag, Type, Loc, Event } from 'main.core';\nimport { Popup } from 'main.popup';\nimport { sendData } from 'ui.analytics';\nimport { Lottie } from 'ui.lottie';\nimport 'main.qrcode';\nimport './style.css';\n\nexport class MobilePromoter\n{\n\tconstructor(options)\n\t{\n\t\tthis.target = Type.isElementNode(options.target) ? options.target : window;\n\t\tthis.qrContent = Type.isString(options.qrContent) ? options.qrContent : '';\n\t\tthis.position = Type.isObject(options.position) ? options.position : null;\n\t\tthis.className = Type.isString(options.className) ? options.className : null;\n\t\tthis.node = {\n\t\t\tcontent: null,\n\t\t\tphoneBg: null,\n\t\t\tqr: null,\n\t\t\tqrOverlay: null,\n\t\t};\n\t\tthis.title = Type.isString(options.title) ? options.title : Loc.getMessage('UI_MOBILE_PROMOTER_TITLE');\n\t\tthis.content = Type.isElementNode(options.content) ? options.content : null;\n\t\tthis.analytic = Type.isObject(options.analytic) ? options.analytic : null;\n\t\tthis.analyticParameters = {\n\t\t\ttool: 'intranet',\n\t\t\tcategory: 'activation',\n\t\t};\n\n\t\tthis.init();\n\t}\n\n\tgetPopup(): Popup\n\t{\n\t\tif (!this.popup)\n\t\t{\n\t\t\tthis.popup = new Popup({\n\t\t\t\tbindElement: this.target,\n\t\t\t\tborderRadius: '32px 32px 32px 32px',\n\t\t\t\tpadding: 0,\n\t\t\t\tcontentPadding: 0,\n\t\t\t\tcloseIcon: {\n\t\t\t\t\ttop: '19px',\n\t\t\t\t\tright: '19px',\n\t\t\t\t},\n\t\t\t\tcontent: this.getContent(),\n\t\t\t\tclassName: `ui-mobile-promoter__popup ${this.className} --qr-hide`,\n\t\t\t\tanimation: 'fading-slide',\n\t\t\t\tmaxWidth: 550,\n\t\t\t\tminHeight: 330,\n\t\t\t\tautoHide: true,\n\t\t\t\toverlay: {\n\t\t\t\t\tbackgroundColor: 'black',\n\t\t\t\t\topacity: 15,\n\t\t\t\t},\n\t\t\t\tevents: {\n\t\t\t\t\tonPopupShow: () => {\n\t\t\t\t\t\t// this.getAnimation().play();\n\n\t\t\t\t\t},\n\t\t\t\t\tonAfterShow: () => {\n\t\t\t\t\t\tthis.setAnalyticParameters({\n\t\t\t\t\t\t\tevent: 'qrcode_view',\n\t\t\t\t\t\t});\n\t\t\t\t\t\tthis.sendAnalytics();\n\t\t\t\t\t},\n\t\t\t\t\tonPopupClose: () => {\n\t\t\t\t\t\t// this.getAnimation().stop();\n\t\t\t\t\t\tDom.removeClass(this.getQrBg(), '--qr-animation');\n\t\t\t\t\t},\n\t\t\t\t\tonAfterClose: () => {\n\t\t\t\t\t\tthis.setAnalyticParameters({\n\t\t\t\t\t\t\tevent: 'qrcode_close',\n\t\t\t\t\t\t});\n\t\t\t\t\t\tthis.sendAnalytics();\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t});\n\t\t}\n\n\t\treturn this.popup;\n\t}\n\n\tgetAnimation(): Lottie\n\t{\n\t\tif (!this.lottieAnim)\n\t\t{\n\t\t\tthis.lottieAnim = Lottie.loadAnimation({\n\t\t\t\tautoplay: false,\n\t\t\t\tcontainer: this.getPhoneBg(),\n\t\t\t\trenderer: 'svg',\n\t\t\t\tpath: '/bitrix/js/ui/mobile-promoter/animation/invitation.json',\n\t\t\t\tloop: false,\n\t\t\t\tname: 'invitation-anim',\n\t\t\t});\n\t\t}\n\n\t\treturn this.lottieAnim;\n\t}\n\n\tgetQrBg(): HTMLElement\n\t{\n\t\tif (!this.node.qr)\n\t\t{\n\t\t\tthis.node.qr = Tag.render`\n\t\t\t\t<div class=\"ui-mobile-promoter__popup-qr\"></div>\n\t\t\t`;\n\t\t}\n\n\t\treturn this.node.qr;\n\t}\n\n\tgetPhoneBg(): HTMLElement\n\t{\n\t\tif (!this.node.phoneBg)\n\t\t{\n\t\t\tthis.node.phoneBg = Tag.render`\n\t\t\t\t<div class=\"ui-mobile-promoter__popup-phone\"></div>\n\t\t\t`;\n\t\t}\n\n\t\treturn this.node.phoneBg;\n\t}\n\n\tgetDefaultContent(): HTMLElement\n\t{\n\t\treturn Tag.render`\n\t\t\t<ul class=\"ui-mobile-promoter__popup-list\">\n\t\t\t\t<li class=\"ui-mobile-promoter__popup-list-item\">${Loc.getMessage('UI_MOBILE_PROMOTER_LIST_ITEM_1')}</li>\n\t\t\t\t<li class=\"ui-mobile-promoter__popup-list-item\">${Loc.getMessage('UI_MOBILE_PROMOTER_LIST_ITEM_2')}</li>\n\t\t\t\t<li class=\"ui-mobile-promoter__popup-list-item\">${Loc.getMessage('UI_MOBILE_PROMOTER_LIST_ITEM_3')}</li>\n\t\t\t</ul>\n\t\t\t<div class=\"ui-mobile-promoter__popup-list-afterlist\">\n\t\t\t\t<div class=\"ui-mobile-promoter__popup-desc\">${Loc.getMessage('UI_MOBILE_PROMOTER_DESC')}</div>\n\t\t\t\t<div class=\"ui-mobile-promoter__popup-info\">${Loc.getMessage('UI_MOBILE_PROMOTER_INFO')}</div>\n\t\t\t</div>\n\t\t`;\n\t}\n\n\tshowQrCode()\n\t{\n\t\tDom.removeClass(this.getContent(), '--qr-hide');\n\t\tDom.addClass(this.getQrOverlay(), '--hide');\n\t\tDom.addClass(this.getQrBg(), '--qr-animation');\n\t}\n\n\tgetQrOverlay(): HTMLElement\n\t{\n\t\tif (!this.node.qrOverlay)\n\t\t{\n\t\t\tconst qrShowButton = Tag.render`\n\t\t\t\t<span class=\"ui-btn --air ui-btn-no-caps --style-tinted ui-btn-xs\">\n\t\t\t\t\t<span class=\"ui-btn-text\">\n\t\t\t\t\t\t<span class=\"ui-btn-text-inner\">${Loc.getMessage('UI_MOBILE_PROMOTER_SHOW_QR')}</span>\n\t\t\t\t\t</span>\n\t\t\t\t</span>\n\t\t\t`;\n\n\t\t\tEvent.bind(qrShowButton, 'click', () => this.showQrCode());\n\n\t\t\tthis.node.qrOverlay = Tag.render`\n\t\t\t\t<div class=\"ui-mobile-promoter__popup-qr-overlay\">\n\t\t\t\t\t<div class=\"ui-mobile-promoter__popup-qr-overlay-text\">\n\t\t\t\t\t\t${qrShowButton}\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t`;\n\n\t\t\tEvent.bind(this.node.qrOverlay, 'transitionend', () => {\n\t\t\t\tDom.remove(this.node.qrOverlay);\n\t\t\t});\n\t\t}\n\n\t\treturn this.node.qrOverlay;\n\t}\n\n\tgetContent(): HTMLElement\n\t{\n\t\tif (!this.node.content)\n\t\t{\n\t\t\tthis.node.content = Tag.render`\n\t\t\t\t<div class=\"ui-mobile-promoter__popup-wrap --qr-hide\">\n\t\t\t\t\t<div class=\"ui-mobile-promoter__popup-phone-box\">\n\t\t\t\t\t\t${this.getPhoneBg()}\n\t\t\t\t\t\t${this.getQrOverlay()}\n\t\t\t\t\t\t${this.getQrBg()}\n\t\t\t\t\t</div>\n\t\t\t\t\t<div class=\"ui-mobile-promoter__popup-content\">\n\t\t\t\t\t\t<div class=\"ui-mobile-promoter__popup-title\">${this.title}</div>\n\t\t\t\t\t\t<div class=\"ui-mobile-promoter__popup-content\">\n\t\t\t\t\t\t\t${this.content ?? this.getDefaultContent()}\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t`;\n\t\t}\n\n\t\treturn this.node.content;\n\t}\n\n\tinit(): void\n\t{\n\t\t// eslint-disable-next-line no-undef\n\t\tnew QRCode(this.getQrBg(), {\n\t\t\ttext: this.qrContent,\n\t\t\twidth: 123,\n\t\t\theight: 123,\n\t\t\tcolorDark: '#000000',\n\t\t\tcolorLight: '#ffffff',\n\t\t});\n\n\t\tif (this.analytic)\n\t\t{\n\t\t\tthis.setAnalyticParameters(this.analytic);\n\t\t}\n\n\t\tif (this.position)\n\t\t{\n\t\t\tthis.getPopup().setFixed(true);\n\t\t\tDom.addClass(this.getPopup().getPopupContainer(), '--right-bottom');\n\t\t\tObject.entries(this.position).forEach(([key, value]) => {\n\t\t\t\tDom.style(this.getPopup().getPopupContainer(), key, `${value}px`);\n\t\t\t});\n\t\t}\n\t}\n\n\tshow(): void\n\t{\n\t\tthis.getPopup().show();\n\t}\n\n\tclose(): void\n\t{\n\t\tthis.getPopup().close();\n\t}\n\n\tsetAnalyticParameters(parameters: {[key: string]: string})\n\t{\n\t\tthis.analyticParameters = {\n\t\t\t...this.analyticParameters,\n\t\t\t...parameters,\n\t\t};\n\t}\n\n\tsendAnalytics(): void\n\t{\n\t\tsendData(this.analyticParameters);\n\t}\n}\n"],"names":["MobilePromoter","constructor","options","target","Type","isElementNode","window","qrContent","isString","position","isObject","className","node","content","phoneBg","qr","qrOverlay","title","Loc","getMessage","analytic","analyticParameters","tool","category","init","getPopup","popup","Popup","bindElement","borderRadius","padding","contentPadding","closeIcon","top","right","getContent","animation","maxWidth","minHeight","autoHide","overlay","backgroundColor","opacity","events","onPopupShow","onAfterShow","setAnalyticParameters","event","sendAnalytics","onPopupClose","Dom","removeClass","getQrBg","onAfterClose","getAnimation","lottieAnim","Lottie","loadAnimation","autoplay","container","getPhoneBg","renderer","path","loop","name","Tag","render","getDefaultContent","showQrCode","addClass","getQrOverlay","qrShowButton","Event","bind","remove","QRCode","text","width","height","colorDark","colorLight","setFixed","getPopupContainer","Object","entries","forEach","key","value","style","show","close","parameters","sendData"],"mappings":"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"}