{"version":3,"file":"open-CaoQZ_Qj.js","sources":["../../../node_modules/@slideslive/fuse-kit/dist/utils/modal/open.js"],"sourcesContent":["import inlineCss from \"../element/inline_css.js\";\nimport isElement from \"../element/is_element.js\";\nimport isVisible from \"../element/is_visible.js\";\nimport addListener from \"../utilities/add_listener.js\";\nimport fire from \"../utilities/fire.js\";\nimport { trapFocus } from \"../utilities/focus_trap.js\";\nimport isVariableDefinedNotNull from \"../utilities/is_variable_defined_not_null.js\";\nimport removeListener from \"../utilities/remove_listener.js\";\nimport setBodyOverflowHidden from \"../utilities/set_body_overflow_hidden.js\";\nfunction beforeShowEventDetailFromOptions(options) {\n return Object.keys(options).reduce((acc, k) => {\n if ([\"forceOpen\"].indexOf(k) > -1) {\n return acc;\n }\n return {\n ...acc,\n [k]: options[k]\n };\n }, {});\n}\nfunction findModal(nameOrModalElement) {\n if (isElement(nameOrModalElement)) return nameOrModalElement;\n return document.querySelector(\n // eslint-disable-next-line max-len\n `.modal[data-modal-name='${nameOrModalElement}'], section[data-modal-name='${nameOrModalElement}']`\n );\n}\nfunction openModal(nameOrModalElement, options = {}) {\n const modalElement = findModal(nameOrModalElement);\n if (!isVariableDefinedNotNull(modalElement)) {\n console.warn(`Modal ${nameOrModalElement} not found.`);\n return false;\n }\n if (!options.forceOpen && isVisible(modalElement)) {\n console.warn(`Modal ${nameOrModalElement} is already visible.`);\n return false;\n }\n if (!isVariableDefinedNotNull(options.url)) {\n options.url = modalElement.dataset.modalUrl;\n }\n if (!isVariableDefinedNotNull(options.urlParams)) {\n options.urlParams = modalElement.dataset.modalUrlParams;\n }\n setBodyOverflowHidden(\"scrollLockModalCnt\");\n const eventNamePrefix = modalElement.getAttribute(\"data-modal-event-name-prefix\") || \"modal\";\n fire(modalElement, `${eventNamePrefix}:beforeShow`, {\n detail: beforeShowEventDetailFromOptions(options)\n });\n const animationBegin = () => {\n trapFocus(modalElement);\n fire(modalElement, `${eventNamePrefix}:show`);\n };\n const animationComplete = () => {\n fire(modalElement, `${eventNamePrefix}:afterShow`);\n };\n if (modalElement.dataset.controller.includes(\"fuse--modal\")) {\n const transitionEndListenerId = addListener(modalElement, \"transitionend\", () => {\n animationComplete();\n removeListener(modalElement, { id: transitionEndListenerId });\n });\n modalElement.hidden = false;\n animationBegin();\n return true;\n }\n animationBegin();\n inlineCss(modalElement, { display: \"block\", opacity: 1 });\n animationComplete();\n return true;\n}\nexport {\n openModal as default\n};\n"],"names":["beforeShowEventDetailFromOptions","options","acc","k","findModal","nameOrModalElement","isElement","openModal","modalElement","isVariableDefinedNotNull","isVisible","setBodyOverflowHidden","eventNamePrefix","fire","animationBegin","trapFocus","animationComplete","transitionEndListenerId","addListener","removeListener","inlineCss"],"mappings":"4OASA,SAASA,EAAiCC,EAAS,CACjD,OAAO,OAAO,KAAKA,CAAO,EAAE,OAAO,CAACC,EAAKC,IACnC,CAAC,WAAW,EAAE,QAAQA,CAAC,EAAI,GACtBD,EAEF,CACL,GAAGA,EACH,CAACC,CAAC,EAAGF,EAAQE,CAAC,CACf,EACA,EAAE,CACP,CACA,SAASC,EAAUC,EAAoB,CACrC,OAAIC,EAAUD,CAAkB,EAAUA,EACnC,SAAS,cAEd,2BAA2BA,CAAkB,gCAAgCA,CAAkB,IAChG,CACH,CACA,SAASE,EAAUF,EAAoBJ,EAAU,GAAI,CACnD,MAAMO,EAAeJ,EAAUC,CAAkB,EACjD,GAAI,CAACI,EAAyBD,CAAY,EACxC,eAAQ,KAAK,SAASH,CAAkB,aAAa,EAC9C,GAET,GAAI,CAACJ,EAAQ,WAAaS,EAAUF,CAAY,EAC9C,eAAQ,KAAK,SAASH,CAAkB,sBAAsB,EACvD,GAEJI,EAAyBR,EAAQ,GAAG,IACvCA,EAAQ,IAAMO,EAAa,QAAQ,UAEhCC,EAAyBR,EAAQ,SAAS,IAC7CA,EAAQ,UAAYO,EAAa,QAAQ,gBAE3CG,EAAsB,oBAAoB,EAC1C,MAAMC,EAAkBJ,EAAa,aAAa,8BAA8B,GAAK,QACrFK,EAAKL,EAAc,GAAGI,CAAe,cAAe,CAClD,OAAQZ,EAAiCC,CAAO,CACpD,CAAG,EACD,MAAMa,EAAiB,IAAM,CAC3BC,EAAUP,CAAY,EACtBK,EAAKL,EAAc,GAAGI,CAAe,OAAO,CAC7C,EACKI,EAAoB,IAAM,CAC9BH,EAAKL,EAAc,GAAGI,CAAe,YAAY,CAClD,EACD,GAAIJ,EAAa,QAAQ,WAAW,SAAS,aAAa,EAAG,CAC3D,MAAMS,EAA0BC,EAAYV,EAAc,gBAAiB,IAAM,CAC/EQ,EAAmB,EACnBG,EAAeX,EAAc,CAAE,GAAIS,CAAuB,CAAE,CAClE,CAAK,EACD,OAAAT,EAAa,OAAS,GACtBM,EAAgB,EACT,EACX,CACE,OAAAA,EAAgB,EAChBM,EAAUZ,EAAc,CAAE,QAAS,QAAS,QAAS,EAAG,EACxDQ,EAAmB,EACZ,EACT","x_google_ignoreList":[0]}