var __defProp = Object.defineProperty;
var __name = (target, value) => __defProp(target, "name", { value, configurable: !0 });
import { f as figcaptionToggleCssUrl } from "../chunks/chunk._figcaption-toggles.js?v=6.1.1";
import { b as buttonToggleCssUrl } from "../chunks/chunk._button-toggles.js?v=6.1.1";
import { a as loadStyleSheets } from "../chunks/chunk.dcf-utility.js?v=6.1.1";
const slideshowCssUrl = "/wdn/templates_6.1/css/components-js/_slideshows.css?v=6.1.1";
let UNLSlideshow = null;
const querySelector = ".dcf-slideshow:not(.dcf-slideshow-initialized)", pluginType = "multi", pluginLoadAfterWatch = !1;
let isInitialized = !1, initializationPromise = null;
function getQuerySelector() {
  return querySelector;
}
__name(getQuerySelector, "getQuerySelector");
function getPluginType() {
  return pluginType;
}
__name(getPluginType, "getPluginType");
function getPluginLoadAfterWatch() {
  return pluginLoadAfterWatch;
}
__name(getPluginLoadAfterWatch, "getPluginLoadAfterWatch");
function getIsInitialized() {
  return isInitialized;
}
__name(getIsInitialized, "getIsInitialized");
async function initialize() {
  return isInitialized ? UNLSlideshow : (initializationPromise !== null || (initializationPromise = (async () => (UNLSlideshow = (await import("../components/component.slideshow.js?v=6.1.1")).default, await loadStyleSheets([slideshowCssUrl, figcaptionToggleCssUrl, buttonToggleCssUrl]), isInitialized = !0, document.dispatchEvent(new CustomEvent("UNLPluginInitialized", {
    detail: {
      pluginType,
      pluginComponent: UNLSlideshow,
      styleSheetsLoaded: [
        slideshowCssUrl,
        figcaptionToggleCssUrl,
        buttonToggleCssUrl
      ]
    }
  })), UNLSlideshow))()), initializationPromise);
}
__name(initialize, "initialize");
async function loadElement(element, options) {
  isInitialized || await initialize();
  const loadedElement = new UNLSlideshow(element, options);
  return document.dispatchEvent(new CustomEvent("UNLPluginLoadedElement", {
    detail: {
      loadedElement
    }
  })), loadedElement;
}
__name(loadElement, "loadElement");
async function loadElements(elements, options) {
  return await Promise.all(
    Array.from(elements).map((element) => loadElement(element, options))
  );
}
__name(loadElements, "loadElements");
async function loadElementsOnPage(options) {
  const allSlideshows = document.querySelectorAll(querySelector);
  return await loadElements(allSlideshows, options);
}
__name(loadElementsOnPage, "loadElementsOnPage");
export {
  getIsInitialized,
  getPluginLoadAfterWatch,
  getPluginType,
  getQuerySelector,
  initialize,
  loadElement,
  loadElements,
  loadElementsOnPage
};
//# sourceMappingURL=plugin.slideshow.js.map
