{"version":3,"sources":["webpack:///./src/components/pmicom/components/modal-video/controller.js","webpack:///./src/js/modalManager.js"],"names":["modalClose","launchModal","require","fillWithDomElements","CLASS_VIDEO","CLASS_PICTURE","selectors","videos","picture","module","exports","init","root","__controller","opened","open","contentContainer","onClose","close","bind","remain","preventModalClose","video","playing","pause","initialized","isModalInDom","shouldRemain","isDescriptionTitleInFooter","onCloseCurrent","sourceContainer","currentAddedClass","previousFocus","alwaysTransferBack","CLASS_CLOSING","elementTitlesContainer","elementTopBar","elementContent","elementModal","elementBackground","elementSlot","elementTitle","elementTitlePicture","elementDescriptionPicture","elementCloseButton","elementMain","bodyElement","querySelector","closeLabel","dataset","modalInit","classes","type","map","element","document","createElement","arrayize","forEach","className","classList","add","setAttribute","append","addEventListener","transferToElement","container","target","childNodes","filter","node","tagName","appendModal","appendChild","remove","CLASS_NO_DISPLAY","removeModal","removeChild","modalTransferContent","innerHTML","modalAddTitleDescription","keyListener","key","outFocusListener","contains","focus","toggleListeners","doAdd","eventName","callback","unfreezeScroll","setHeightFrom","style","overflow","awaitNextFrame","height","awaitEventOn","modalSetTitle","modalSetTitlePicture","removeAttribute","modalOpen","freezeScroll","title","modalSetDescriptionPicture","description","titlePicture","addedClass","descriptionTitleInFooter","closeButtonContentClass","keep","activeElement"],"mappings":"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","file":"components--modal-videod91775db6ac0caf70696.js","sourcesContent":["const { modalClose, launchModal } = require('util/modalManager');\nconst { fillWithDomElements } = require('util/functions');\n\nconst CLASS_VIDEO = 'video';\nconst CLASS_PICTURE = 'still-picture';\n\nconst selectors = {\n\tvideos: CLASS_VIDEO,\n\tpicture: CLASS_PICTURE,\n};\nmodule.exports = {\n\tinit() {\n\t\tthis.root.__controller = this;\n\t\tthis.opened = false;\n\t\tfillWithDomElements(this, selectors);\n\t},\n\tasync open() {\n\t\tif (this.opened) return;\n\t\tlaunchModal({\n\t\t\tcontentContainer: this.root,\n\t\t\tonClose: this.close.bind(this, true),\n\t\t\tremain: false,\n\t\t});\n\t\tthis.opened = true;\n\t},\n\n\tclose(preventModalClose) {\n\t\tif (!this.opened) return;\n\t\tif (\n\t\t\tthis.videos?.__controller.video &&\n\t\t\tthis.videos?.__controller.video.playing\n\t\t)\n\t\t\tthis.videos?.__controller.video.pause();\n\t\t!preventModalClose && modalClose();\n\t\tthis.opened = false;\n\t},\n};\n","import { bodyElement, CLASS_NO_DISPLAY } from './consts';\nimport {\n\tawaitNextFrame,\n\tarrayize,\n\tsetHeightFrom,\n\tawaitEventOn,\n\tfreezeScroll,\n\tunfreezeScroll,\n\tgetFocusablesFrom,\n} from './functions';\n\n// state variables\nlet initialized = false;\nlet isModalInDom = false;\nlet shouldRemain = false;\nlet isDescriptionTitleInFooter = false;\nlet onCloseCurrent = null;\nlet sourceContainer = null;\nlet currentAddedClass = null;\nlet previousFocus = null;\nlet alwaysTransferBack = false;\n\nconst CLASS_CLOSING = 'closing';\n\n// elements to be initialized\nlet elementTitlesContainer;\nlet elementTopBar;\nlet elementContent;\nlet elementModal;\nlet elementBackground;\nlet elementSlot;\nlet elementTitle;\nlet elementTitlePicture;\nlet elementDescriptionPicture;\nlet elementCloseButton;\n\nconst elementMain = bodyElement.querySelector('main');\nconst { closeLabel } = bodyElement.dataset;\n\nexport const modalInit = () => {\n\tif (initialized) return;\n\t[\n\t\telementModal,\n\t\telementBackground,\n\t\telementContent,\n\t\telementSlot,\n\t\telementTopBar,\n\t\telementTitlesContainer,\n\t\telementTitle,\n\t\telementTitlePicture,\n\t\telementDescriptionPicture,\n\t\telementCloseButton,\n\t] = [\n\t\t{ classes: ['modal', CLASS_CLOSING] },\n\t\t{ classes: 'modal--background' },\n\t\t{ classes: 'modal--content' },\n\t\t{ classes: 'modal--slot' },\n\t\t{ classes: 'modal--top-bar' },\n\t\t{ classes: 'modal--titles' },\n\t\t{ classes: 'modal--title' },\n\t\t{ classes: 'modal--picture-title' },\n\t\t{ classes: 'modal--picture-description' },\n\t\t{ classes: 'modal--close-button', type: 'button' },\n\t].map(({ classes, type }) => {\n\t\tconst element = document.createElement(type || 'div');\n\t\tarrayize(classes).forEach(className => element.classList.add(className));\n\t\treturn element;\n\t});\n\t// a11y label on close button\n\telementCloseButton.setAttribute('aria-label', closeLabel);\n\telementSlot.setAttribute('tabindex', -1);\n\t// modal assembling\n\telementTitlesContainer.append(\n\t\telementTitle,\n\t\t!isDescriptionTitleInFooter ? elementTitlePicture : '',\n\t);\n\telementTopBar.append(elementTitlesContainer, elementCloseButton);\n\telementContent.append(elementTopBar, elementSlot);\n\telementModal.append(elementBackground, elementContent);\n\t/*