{"version":3,"file":"index.js","mappings":"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","sources":["webpack://bs5-lightbox/webpack/universalModuleDefinition","webpack://bs5-lightbox/external umd \"bootstrap\"","webpack://bs5-lightbox/webpack/bootstrap","webpack://bs5-lightbox/webpack/runtime/compat get default export","webpack://bs5-lightbox/webpack/runtime/define property getters","webpack://bs5-lightbox/webpack/runtime/hasOwnProperty shorthand","webpack://bs5-lightbox/./src/index.js"],"sourcesContent":["(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory(require(\"bootstrap\"));\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine(\"Lightbox\", [\"bootstrap\"], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"Lightbox\"] = factory(require(\"bootstrap\"));\n\telse\n\t\troot[\"Lightbox\"] = factory(root[\"bootstrap\"]);\n})(self, function(__WEBPACK_EXTERNAL_MODULE__988__) {\nreturn ","module.exports = __WEBPACK_EXTERNAL_MODULE__988__;","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId](module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = function(module) {\n\tvar getter = module && module.__esModule ?\n\t\tfunction() { return module['default']; } :\n\t\tfunction() { return module; };\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","// define getter functions for harmony exports\n__webpack_require__.d = function(exports, definition) {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.o = function(obj, prop) { return Object.prototype.hasOwnProperty.call(obj, prop); }","/**\n * Lightbox for Bootstrap 5\n *\n * @file Creates a modal with a lightbox carousel.\n * @module bs5-lightbox\n */\n\nimport { Modal, Carousel } from 'bootstrap';\nconst bootstrap = {\n\tModal,\n\tCarousel\n};\nclass Lightbox {\n\tconstructor(el, options = {}) {\n\t\tthis.hash = this.randomHash();\n\t\tthis.settings = Object.assign(Object.assign(Object.assign({}, bootstrap.Modal.Default), bootstrap.Carousel.Default), {\n\t\t\tinterval: false,\n\t\t\ttarget: '[data-toggle=\"lightbox\"]',\n\t\t\tgallery: '',\n\t\t\tsize: 'xl',\n\t\t\tconstrain: true\n\t\t});\n\t\tthis.settings = Object.assign(Object.assign({}, this.settings), options);\n\t\tthis.modalOptions = (() => this.setOptionsFromSettings(bootstrap.Modal.Default))();\n\t\tthis.carouselOptions = (() => this.setOptionsFromSettings(bootstrap.Carousel.Default))();\n\t\tif (typeof el === 'string') {\n\t\t\tthis.settings.target = el;\n\t\t\tel = document.querySelector(this.settings.target);\n\t\t}\n\t\tthis.el = el;\n\t\tthis.type = el.dataset.type || '';\n\n\t\tthis.src = this.getSrc(el);\n\t\tthis.sources = this.getGalleryItems();\n\t\tthis.createCarousel();\n\t\tthis.createModal();\n\t}\n\tshow() {\n\t\tdocument.body.appendChild(this.modalElement);\n\t\tthis.modal.show();\n\t}\n\thide() {\n\t\tthis.modal.hide();\n\t}\n\tsetOptionsFromSettings(obj) {\n\t\treturn Object.keys(obj).reduce((p, c) => Object.assign(p, { [c]: this.settings[c] }), {});\n\t}\n\tgetSrc(el) {\n\t\tlet src = el.dataset.src || el.dataset.remote || el.href || 'http://via.placeholder.com/1600x900';\n\t\tif (el.dataset.type === 'html') {\n\t\t\treturn src;\n\t\t}\n\t\tif (!/\\:\\/\\//.test(src)) {\n\t\t\tsrc = window.location.origin + src;\n\t\t}\n\t\tconst url = new URL(src);\n\t\tif (el.dataset.footer || el.dataset.caption) {\n\t\t\turl.searchParams.set('caption', el.dataset.footer || el.dataset.caption);\n\t\t}\n\t\treturn url.toString();\n\t}\n\tgetGalleryItems() {\n\t\tlet galleryTarget;\n\t\tif (this.settings.gallery) {\n\t\t\tif (Array.isArray(this.settings.gallery)) {\n\t\t\t\treturn this.settings.gallery;\n\t\t\t}\n\t\t\tgalleryTarget = this.settings.gallery;\n\t\t} else if (this.el.dataset.gallery) {\n\t\t\tgalleryTarget = this.el.dataset.gallery;\n\t\t}\n\t\tconst gallery = galleryTarget\n\t\t\t? [...new Set(Array.from(document.querySelectorAll(`[data-gallery=\"${galleryTarget}\"]`), (v) => `${v.dataset.type ? v.dataset.type : ''}${this.getSrc(v)}`))]\n\t\t\t: [`${this.type ? this.type : ''}${this.src}`];\n\t\treturn gallery;\n\t}\n\tgetYoutubeId(src) {\n\t\tif (!src) return false;\n\t\tconst matches = src.match(/^.*(youtu.be\\/|v\\/|u\\/\\w\\/|embed\\/|watch\\?v=|&v=)([^#&?]*).*/);\n\t\treturn matches && matches[2].length === 11 ? matches[2] : false;\n\t}\n\tgetYoutubeLink(src) {\n\t\tconst youtubeId = this.getYoutubeId(src);\n\t\tif (!youtubeId) {\n\t\t\treturn false;\n\t\t}\n\n\t\tconst arr = src.split('?');\n\t\tlet params = arr.length > 1 ? '?' + arr[1] : '';\n\t\t\n\t\treturn `https://www.youtube.com/embed/${youtubeId}${params}`;\n\t}\n\tgetInstagramEmbed(src) {\n\t\tif (/instagram/.test(src)) {\n\t\t\tsrc += /\\/embed$/.test(src) ? '' : '/embed';\n\t\t\treturn ``;\n\t\t}\n\t}\n\tisEmbed(src) {\n\t\tconst regex = new RegExp('(' + Lightbox.allowedEmbedTypes.join('|') + ')');\n\t\tconst isEmbed = regex.test(src);\n\t\tconst isImg = /\\.(png|jpe?g|gif|svg|webp)/i.test(src) || this.el.dataset.type === 'image';\n\n\t\treturn isEmbed || !isImg;\n\t}\n\tcreateCarousel() {\n\t\tconst template = document.createElement('template');\n\t\tconst types = Lightbox.allowedMediaTypes.join('|');\n\t\tconst slidesHtml = this.sources\n\t\t\t.map((src, i) => {\n\t\t\t\tsrc = src.replace(/\\/$/, '');\n\t\t\t\tconst regex = new RegExp(`^(${types})`, 'i');\n\t\t\t\tconst isHtml = /^html/.test(src);\n\t\t\t\tconst isForcedImage = /^image/.test(src);\n\n\t\t\t\tif (regex.test(src)) {\n\t\t\t\t\tsrc = src.replace(regex, '');\n\t\t\t\t}\n\t\t\t\tconst imgClasses = this.settings.constrain ? 'mw-100 mh-100 h-auto w-auto m-auto top-0 end-0 bottom-0 start-0' : 'h-100 w-100';\n\t\t\t\tconst params = new URLSearchParams(src.split('?')[1]);\n\t\t\t\tlet caption = '';\n\t\t\t\tlet url = src;\n\t\t\t\tif (params.get('caption')) {\n\t\t\t\t\ttry {\n\t\t\t\t\t\turl = new URL(src);\n\t\t\t\t\t\turl.searchParams.delete('caption');\n\t\t\t\t\t\turl = url.toString();\n\t\t\t\t\t} catch (e) {\n\t\t\t\t\t\turl = src;\n\t\t\t\t\t}\n\t\t\t\t\tcaption = `
${params.get('caption')}
`;\n\t\t\t\t}\n\t\t\t\tlet inner = `