{"version":3,"file":"chunks/52f9a66289d20a.js","mappings":"ipCACmD,IAE9BA,EAAY,WAU/B,WAAYC,EAAsBC,I,4FAAa,SAC7CC,KAAKC,SAAWC,EAAEJ,GAClBE,KAAKD,O,+VAAS,CAAH,CACTI,qBAAqB,GAClBJ,GAGLC,KAAKI,cAAgBJ,KAAKD,OAAOI,oBAC7BH,KAAKC,SACLD,KAAKC,SAASI,KAAK,uBACvBL,KAAKM,uBAAyBJ,EAAEF,KAAKI,cAAcG,KAAK,WACxDP,KAAKQ,eAAiBR,KAAKM,uBAAuBC,KAAK,mBAEnDP,KAAKM,uBAAuBG,SAC9BT,KAAKU,aAAeV,KAAKM,uBAAuBD,KAAK,iBACrDL,KAAKW,cAAgBX,KAAKM,uBAAuBD,KAAK,kBACtDL,KAAKY,OAET,C,QAiEC,O,EAjEA,G,EAAA,mBAED,WAGE,GAFAZ,KAAKI,cAAcS,GAAG,QAASX,EAAAA,MAAQF,KAAKc,QAASd,QAEhDA,KAAKe,MAAO,CACf,IAAIC,EACF,UAAYhB,KAAKQ,eAAiB,IAAMR,KAAKQ,eAAiB,IAEhER,KAAKe,MAAQ,IAAIE,EAAAA,QAAM,CACrBD,UAAWA,EACXE,oBAAoB,IAGlBlB,KAAKU,aAAaD,QACpBT,KAAKe,MAAML,aAAaS,KAAKnB,KAAKU,aAAaS,QAEjDnB,KAAKe,MAAMJ,cAAcQ,KAAKnB,KAAKW,cAAcQ,OACnD,CACF,GAAC,6BAED,SAAgBC,EAAeC,GAAuB,sBAC9CC,EAAmB,QAAT,EAAGC,cAAM,OAAM,QAAN,EAAN,EAAQC,YAAI,OAAO,QAAP,EAAZ,EAAcC,aAAK,OAAU,QAAV,EAAnB,EAAqBC,gBAAQ,WAAvB,EAAN,EAA+BJ,WAC5CK,EACE,QADgB,EACtBJ,cAAM,OAAM,QAAN,EAAN,EAAQC,YAAI,OAAO,QAAP,EAAZ,EAAcC,aAAK,OAAU,QAAV,EAAnB,EAAqBC,gBAAQ,WAAvB,EAAN,EAA+BE,wBAC3BC,EAAkC,QAA3B,EAAGR,EAAsB,UAAE,aAAxB,EAA0BS,GAGtCC,EAAmB7B,EAAEkB,EAAEY,QACxBC,QAAQ,MACR5B,KAAK,oDACL6B,OACAC,OAE6B,IAA5BJ,EAAiBtB,SAAcsB,EAAmB,MAGtD,IAAIK,EAAkBlC,EAAEkB,EAAEY,QACvBK,QACAC,WACAC,SACAC,MACAN,OACAC,OAECM,EAAcV,GAAoBK,EAEjCP,GAAYY,GAAgBnB,GAAeK,GAIhDL,EACE,sBACAK,EAAmB,CACjBe,MAAOD,EACPX,GAAID,IAGV,GAAC,qBAED,SAAQT,GACNA,EAAEuB,iBACF3C,KAAK4C,gBAAgBxB,EAAGpB,KAAKM,wBAC7BN,KAAKe,MAAM8B,OACX7C,KAAKe,MAAM+B,OACb,M,oEAAC,EA7F8B,E","sources":["webpack:///./resources/js/components/generic/modal-link-wpl.ts"],"sourcesContent":["import * as $ from \"jquery\";\nimport Modal from '../../components/generic/modal';\n\nexport default class ModalLinkWpl {\n $domRoot: JQuery;\n params: any;\n $modalTrigger: any;\n $modalContentContainer: JQuery;\n modalClassname: any;\n $modalHeader: any;\n $modalContent: any;\n modal: any;\n\n constructor(domRoot: HTMLElement, params: any) {\n this.$domRoot = $(domRoot);\n this.params = {\n useDomRootAsTrigger: false,\n ...params,\n };\n\n this.$modalTrigger = this.params.useDomRootAsTrigger\n ? this.$domRoot\n : this.$domRoot.find(\".modal-link-trigger\");\n this.$modalContentContainer = $(this.$modalTrigger.data(\"target\"));\n this.modalClassname = this.$modalContentContainer.data(\"modal-classname\");\n\n if (this.$modalContentContainer.length) {\n this.$modalHeader = this.$modalContentContainer.find(\".modal-header\");\n this.$modalContent = this.$modalContentContainer.find(\".modal-content\");\n this.init();\n }\n }\n\n init() {\n this.$modalTrigger.on(\"click\", $.proxy(this.onclick, this));\n\n if (!this.modal) {\n var modalType =\n \"dialog\" + (this.modalClassname ? \" \" + this.modalClassname : \"\");\n\n this.modal = new Modal({\n modalType: modalType,\n contentClickToHide: false,\n });\n\n if (this.$modalHeader.length) {\n this.modal.$modalHeader.html(this.$modalHeader.html());\n }\n this.modal.$modalContent.html(this.$modalContent.html());\n }\n }\n\n trackModalEvent(e: MouseEvent, modalContentContainer) {\n const trackEvent = window?.imkt?.utils?.tracking?.trackEvent;\n const sanitizeEventProps =\n window?.imkt?.utils?.tracking?.sanitizeEventProperties;\n const modalId = modalContentContainer[0]?.id;\n\n // get label if it's in a feature comparison table\n var featureTextTable = $(e.target)\n .closest(\"tr\")\n .find(\".imkt-feature-comparison-table-body-feature-name\")\n .text()\n .trim();\n\n if (featureTextTable.length === 0) featureTextTable = null;\n\n // get label if it's DOM Root (filter out children/icons)\n var featureTextRoot = $(e.target)\n .clone()\n .children()\n .remove()\n .end()\n .text()\n .trim();\n\n var featureText = featureTextTable || featureTextRoot;\n\n if (!modalId || !featureText || !trackEvent || !sanitizeEventProps) {\n return;\n }\n\n trackEvent(\n \"wacModalLinkClicked\",\n sanitizeEventProps({\n label: featureText,\n id: modalId,\n })\n );\n }\n \n onclick(e: MouseEvent) {\n e.preventDefault();\n this.trackModalEvent(e, this.$modalContentContainer);\n this.modal.show();\n this.modal.place();\n }\n}\n"],"names":["ModalLinkWpl","domRoot","params","this","$domRoot","$","useDomRootAsTrigger","$modalTrigger","find","$modalContentContainer","data","modalClassname","length","$modalHeader","$modalContent","init","on","onclick","modal","modalType","Modal","contentClickToHide","html","e","modalContentContainer","trackEvent","window","imkt","utils","tracking","sanitizeEventProps","sanitizeEventProperties","modalId","id","featureTextTable","target","closest","text","trim","featureTextRoot","clone","children","remove","end","featureText","label","preventDefault","trackModalEvent","show","place"],"sourceRoot":""}