{"version":3,"file":"BModal-DbyllEI_-B5PEEtbf.js","sources":["../../../frontend/vue_storefront/dist/BModal-DbyllEI_.js"],"sourcesContent":["import { n as o, p as i } from \"./index-CHzpnjFe.js\";\nimport { S as n } from \"./SvgSpriteIcon-BBnhseIP.js\";\nimport { _ as r } from \"./close-BlZem9rH.js\";\nconst d = {\n name: \"ClickOutside\",\n async mounted() {\n requestAnimationFrame(() => {\n window.document.body.addEventListener(\"click\", this.onClickAnyElement);\n });\n },\n beforeDestroy() {\n window.document.body.removeEventListener(\"click\", this.onClickAnyElement);\n },\n methods: {\n onClickAnyElement(s) {\n if (!this.$slots.default) return;\n const [t] = this.$slots.default;\n !t || (s.path || s.composedPath && s.composedPath() || []).includes(t.elm) || this.$emit(\"click\");\n }\n },\n render() {\n return this.$slots.default;\n }\n}, c = null, u = null;\nvar m = /* @__PURE__ */ o(\n d,\n c,\n u,\n !1,\n null,\n null\n);\nconst f = m.exports, a = {\n xxs: \"sm:max-w-sm\",\n xs: \"sm:max-w-md\",\n sm: \"sm:max-w-lg\",\n base: \"sm:max-w-3xl\",\n lg: \"sm:max-w-6xl\"\n}, l = {\n gray: \"bg-transparent-dark dark:bg-transparent-gray\",\n transparent: \"bg-transparent\"\n}, p = {\n name: \"BModal\",\n components: {\n SvgSpriteIcon: n,\n ClickOutside: f,\n Portal: i\n },\n props: {\n isWithCloseButton: {\n type: Boolean,\n default: !0\n },\n isClosingOnOutsideClick: {\n type: Boolean,\n default: !0\n },\n isScrollable: {\n type: Boolean,\n default: !0\n },\n portal: {\n type: Boolean,\n default: !0\n },\n target: {\n type: String,\n default: \"modal\"\n },\n modalClass: {\n type: String,\n default: \"\"\n },\n modalOverlayClass: {\n type: String,\n default: \"\"\n },\n overlayColor: {\n type: String,\n default: \"gray\",\n validator: (s) => Object.keys(l).includes(s)\n },\n size: {\n type: String,\n default: \"base\",\n validator: (s) => Object.keys(a).includes(s)\n },\n fullScreen: {\n type: Boolean,\n default: !1\n },\n absolute: {\n type: Boolean,\n default: !1\n },\n zIndex: {\n type: Number,\n default: 999999\n }\n },\n data: () => ({\n isVisible: !1,\n isContentVisible: !0,\n OVERLAY_COLORS: l\n }),\n computed: {\n modalOverlayClasses() {\n return {\n [l[this.overlayColor]]: !0,\n [this.modalOverlayClass]: !!this.modalOverlayClass\n };\n },\n modalClasses() {\n return {\n [a[this.size]]: !0,\n \"shadow-lg\": this.overlayColor === \"transparent\",\n \"overflow-y-auto\": this.isScrollable,\n \"max-h-none\": !this.isScrollable,\n relative: this.isWithCloseButton,\n [this.modalClass]: !!this.modalClass\n };\n }\n },\n async mounted() {\n this.portal && document.body.classList.add(\"overflow-hidden\"), await this.$nextTick(), this.isVisible = !0;\n },\n beforeDestroy() {\n this.portal && document.body.classList.remove(\"overflow-hidden\");\n },\n methods: {\n revealModal() {\n this.isContentVisible = !0, this.$emit(\"open\");\n },\n async closeModal() {\n this.isContentVisible = !1, await this.$nextTick(), this.$emit(\"close\");\n },\n closeModalOnOutsideClick() {\n this.isClosingOnOutsideClick && this.closeModal();\n }\n }\n};\nvar h = function() {\n var t = this, e = t._self._c;\n return e(\"portal\", { attrs: { to: t.target, disabled: !t.portal } }, [e(\"transition\", { attrs: { name: \"fade\" }, on: { enter: t.revealModal } }, [t.isVisible ? e(\"div\", { staticClass: \"overlay overflow-y-auto top-0 left-0 w-full h-full sm:p-4 flex justify-items-center items-center\", class: {\n \"overlay inset-0\": t.portal,\n \"inset-0\": !t.portal,\n fixed: !t.absolute || t.fullScreen,\n absolute: t.absolute && !t.fullScreen,\n [t.OVERLAY_COLORS[t.overlayColor]]: !0,\n [t.modalOverlayClass]: !!t.modalOverlayClass\n }, style: `z-index: ${t.zIndex};` }, [e(\"click-outside\", { on: { click: t.closeModalOnOutsideClick } }, [e(\"transition\", { attrs: { name: \"slide\" } }, [t.isContentVisible ? e(\"div\", { staticClass: \"modal-content bg-ds-default w-full mx-auto h-full sm:h-auto sm:rounded-lg m-auto\", class: t.modalClasses, attrs: { \"data-test\": \"modal-content\" } }, [t._t(\"header\", function() {\n return [t.isWithCloseButton ? e(\"button\", { staticClass: \"top-0 right-0 rtl:right-auto rtl:left-0 absolute z-10 p-4 text-gray-400\", attrs: { type: \"button\", \"data-test\": \"button-close\" }, on: { click: t.closeModal } }, [e(\"svg-sprite-icon\", { attrs: { icon: r } })], 1) : t._e()];\n }, { closeModal: t.closeModal }), t._t(\"default\", null, { closeModal: t.closeModal })], 2) : t._e()])], 1)], 1) : t._e()])], 1);\n}, y = [], C = /* @__PURE__ */ o(\n p,\n h,\n y,\n !1,\n null,\n \"a89e3003\"\n);\nconst g = C.exports;\nexport {\n g as B\n};\n"],"names":["d","s","t","c","u","m","o","f","a","p","n","i","e","r","y","C"],"mappings":"kKAGA,MAAMA,EAAI,CACN,KAAM,eACN,MAAM,SAAU,CACd,sBAAsB,IAAM,CAC1B,OAAO,SAAS,KAAK,iBAAiB,QAAS,KAAK,iBAAiB,CAC7E,CAAO,CACF,EACD,eAAgB,CACd,OAAO,SAAS,KAAK,oBAAoB,QAAS,KAAK,iBAAiB,CACzE,EACD,QAAS,CACP,kBAAkBC,EAAG,CACnB,GAAI,CAAC,KAAK,OAAO,QAAS,OAC1B,KAAM,CAACC,CAAC,EAAI,KAAK,OAAO,QACxB,CAACA,IAAMD,EAAE,MAAQA,EAAE,cAAgBA,EAAE,aAAY,GAAM,CAAA,GAAI,SAASC,EAAE,GAAG,GAAK,KAAK,MAAM,OAAO,CACjG,CACF,EACD,QAAS,CACP,OAAO,KAAK,OAAO,OACpB,CACF,EACDC,EAAI,KACJC,EAAI,KACN,IAAIC,EAAmBC,EAAEN,EAAGG,EAAGC,EAAG,GAAI,KAAM,IAAI,EAChD,MAAMG,EAAIF,EAAE,QACVG,EAAI,CACF,IAAK,cACL,GAAI,cACJ,GAAI,cACJ,KAAM,eACN,GAAI,cACL,EACD,EAAI,CACF,KAAM,+CACN,YAAa,gBACd,EACDC,EAAI,CACF,KAAM,SACN,WAAY,CACV,cAAeC,EACf,aAAcH,EACd,OAAQI,CACT,EACD,MAAO,CACL,kBAAmB,CACjB,KAAM,QACN,QAAS,EACV,EACD,wBAAyB,CACvB,KAAM,QACN,QAAS,EACV,EACD,aAAc,CACZ,KAAM,QACN,QAAS,EACV,EACD,OAAQ,CACN,KAAM,QACN,QAAS,EACV,EACD,OAAQ,CACN,KAAM,OACN,QAAS,OACV,EACD,WAAY,CACV,KAAM,OACN,QAAS,EACV,EACD,kBAAmB,CACjB,KAAM,OACN,QAAS,EACV,EACD,aAAc,CACZ,KAAM,OACN,QAAS,OACT,UAAWV,GAAK,OAAO,KAAK,CAAC,EAAE,SAASA,CAAC,CAC1C,EACD,KAAM,CACJ,KAAM,OACN,QAAS,OACT,UAAWA,GAAK,OAAO,KAAKO,CAAC,EAAE,SAASP,CAAC,CAC1C,EACD,WAAY,CACV,KAAM,QACN,QAAS,EACV,EACD,SAAU,CACR,KAAM,QACN,QAAS,EACV,EACD,OAAQ,CACN,KAAM,OACN,QAAS,MACV,CACF,EACD,KAAM,KAAO,CACX,UAAW,GACX,iBAAkB,GAClB,eAAgB,CACtB,GACI,SAAU,CACR,qBAAsB,CACpB,MAAO,CACL,CAAC,EAAE,KAAK,YAAY,CAAC,EAAG,GACxB,CAAC,KAAK,iBAAiB,EAAG,CAAC,CAAC,KAAK,iBAC3C,CACO,EACD,cAAe,CACb,MAAO,CACL,CAACO,EAAE,KAAK,IAAI,CAAC,EAAG,GAChB,YAAa,KAAK,eAAiB,cACnC,kBAAmB,KAAK,aACxB,aAAc,CAAC,KAAK,aACpB,SAAU,KAAK,kBACf,CAAC,KAAK,UAAU,EAAG,CAAC,CAAC,KAAK,UACpC,CACO,CACF,EACD,MAAM,SAAU,CACd,KAAK,QAAU,SAAS,KAAK,UAAU,IAAI,iBAAiB,EAAG,MAAM,KAAK,UAAW,EAAE,KAAK,UAAY,EACzG,EACD,eAAgB,CACd,KAAK,QAAU,SAAS,KAAK,UAAU,OAAO,iBAAiB,CAChE,EACD,QAAS,CACP,aAAc,CACZ,KAAK,iBAAmB,GAAI,KAAK,MAAM,MAAM,CAC9C,EACD,MAAM,YAAa,CACjB,KAAK,iBAAmB,GAAI,MAAM,KAAK,UAAS,EAAI,KAAK,MAAM,OAAO,CACvE,EACD,0BAA2B,CACzB,KAAK,yBAA2B,KAAK,YACtC,CACF,CACL,EACA,IAAI,EAAI,UAAY,CAChB,IAAI,EAAI,KACNI,EAAI,EAAE,MAAM,GACd,OAAOA,EAAE,SAAU,CACjB,MAAO,CACL,GAAI,EAAE,OACN,SAAU,CAAC,EAAE,MACd,CACP,EAAO,CAACA,EAAE,aAAc,CAClB,MAAO,CACL,KAAM,MACP,EACD,GAAI,CACF,MAAO,EAAE,WACV,CACF,EAAE,CAAC,EAAE,UAAYA,EAAE,MAAO,CACzB,YAAa,mGACb,MAAO,CACL,kBAAmB,EAAE,OACrB,UAAW,CAAC,EAAE,OACd,MAAO,CAAC,EAAE,UAAY,EAAE,WACxB,SAAU,EAAE,UAAY,CAAC,EAAE,WAC3B,CAAC,EAAE,eAAe,EAAE,YAAY,CAAC,EAAG,GACpC,CAAC,EAAE,iBAAiB,EAAG,CAAC,CAAC,EAAE,iBAC5B,EACD,MAAO,YAAY,EAAE,MAAM,GACjC,EAAO,CAACA,EAAE,gBAAiB,CACrB,GAAI,CACF,MAAO,EAAE,wBACV,CACP,EAAO,CAACA,EAAE,aAAc,CAClB,MAAO,CACL,KAAM,OACP,CACF,EAAE,CAAC,EAAE,iBAAmBA,EAAE,MAAO,CAChC,YAAa,mFACb,MAAO,EAAE,aACT,MAAO,CACL,YAAa,eACd,CACF,EAAE,CAAC,EAAE,GAAG,SAAU,UAAY,CAC7B,MAAO,CAAC,EAAE,kBAAoBA,EAAE,SAAU,CACxC,YAAa,0EACb,MAAO,CACL,KAAM,SACN,YAAa,cACd,EACD,GAAI,CACF,MAAO,EAAE,UACV,CACT,EAAS,CAACA,EAAE,kBAAmB,CACvB,MAAO,CACL,KAAMC,CACP,CACF,CAAA,CAAC,EAAG,CAAC,EAAI,EAAE,GAAI,CAAA,CACtB,EAAO,CACD,WAAY,EAAE,UACf,CAAA,EAAG,EAAE,GAAG,UAAW,KAAM,CACxB,WAAY,EAAE,UACpB,CAAK,CAAC,EAAG,CAAC,EAAI,EAAE,GAAE,CAAE,CAAC,CAAC,EAAG,CAAC,CAAC,EAAG,CAAC,EAAI,EAAE,GAAI,CAAA,CAAC,CAAC,EAAG,CAAC,CAC5C,EACDC,EAAI,CAAE,EACNC,EAAmBT,EAAEG,EAAG,EAAGK,EAAG,GAAI,KAAM,UAAU,EAC/C,MAAC,EAAIC,EAAE"}