{"version":3,"file":"index.esm.js","sources":["../../../javascript/openseadragon-rails/dom.js","../../../javascript/openseadragon-rails/rails.js"],"sourcesContent":["import OpenSeadragon from 'openseadragon'\n\n(function() {\n  let __osd_counter = 0;\n\n  function generateOsdId() {\n    __osd_counter++;\n    return \"Openseadragon\" + __osd_counter;\n  }\n\n  function openseadragon() {\n    this.forEach(function(picture) {\n      // Ensure the element is an HTMLElement\n      if (!(picture instanceof HTMLElement)) return;\n\n      picture.classList.add('openseadragon-viewer');\n\n      // Set ID if it doesn't exist\n      if (!picture.id) {\n        picture.id = generateOsdId();\n      }\n\n      // Retrieve openseadragon data attribute as JSON\n      const collectionOptions = picture.dataset.openseadragon\n        ? JSON.parse(picture.dataset.openseadragon)\n        : {};\n\n      // Find all <source> elements with media=\"openseadragon\"\n      const sources = Array.from(picture.querySelectorAll('source[media=\"openseadragon\"]'));\n\n      const tileSources = sources.map(source => {\n        const osdData = source.dataset.openseadragon;\n        return osdData ? JSON.parse(osdData) : source.getAttribute('src');\n      });\n\n      // Preserve height of the picture\n      const height = window.getComputedStyle(picture).height;\n      picture.style.height = height;\n\n      // Initialize OpenSeadragon\n      picture.osdViewer = OpenSeadragon({\n        id: picture.id,\n        ...collectionOptions,\n        tileSources: tileSources\n      });\n    });\n\n    return this;\n  }\n\n  // Attach the function to NodeList and HTMLElement prototypes for convenience\n  NodeList.prototype.openseadragon = openseadragon;\n  HTMLCollection.prototype.openseadragon = openseadragon;\n\n  // For a single HTMLElement\n  HTMLElement.prototype.openseadragon = function() {\n    return openseadragon.call([this]);\n  };\n\n})();\n","import './dom'\n\n(function() {\n  function initOpenSeadragon() {\n    document.querySelectorAll('picture[data-openseadragon]:not(:has(.openseadragon-container))').openseadragon();\n  }\n\n  if (typeof Turbo !== 'undefined') {\n    addEventListener(\"turbo:load\", () => initOpenSeadragon())\n    addEventListener(\"turbo:frame-load\", () => initOpenSeadragon())\n  } else {\n    addEventListener('load', () => initOpenSeadragon())\n  }\n})();\n"],"names":[],"mappings":";;AAEA,CAAC,WAAW;AACZ,EAAE,IAAI,aAAa,GAAG,CAAC;;AAEvB,EAAE,SAAS,aAAa,GAAG;AAC3B,IAAI,aAAa,EAAE;AACnB,IAAI,OAAO,eAAe,GAAG,aAAa;AAC1C;;AAEA,EAAE,SAAS,aAAa,GAAG;AAC3B,IAAI,IAAI,CAAC,OAAO,CAAC,SAAS,OAAO,EAAE;AACnC;AACA,MAAM,IAAI,EAAE,OAAO,YAAY,WAAW,CAAC,EAAE;;AAE7C,MAAM,OAAO,CAAC,SAAS,CAAC,GAAG,CAAC,sBAAsB,CAAC;;AAEnD;AACA,MAAM,IAAI,CAAC,OAAO,CAAC,EAAE,EAAE;AACvB,QAAQ,OAAO,CAAC,EAAE,GAAG,aAAa,EAAE;AACpC;;AAEA;AACA,MAAM,MAAM,iBAAiB,GAAG,OAAO,CAAC,OAAO,CAAC;AAChD,UAAU,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,aAAa;AAClD,UAAU,EAAE;;AAEZ;AACA,MAAM,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC,+BAA+B,CAAC,CAAC;;AAE3F,MAAM,MAAM,WAAW,GAAG,OAAO,CAAC,GAAG,CAAC,MAAM,IAAI;AAChD,QAAQ,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC,aAAa;AACpD,QAAQ,OAAO,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,MAAM,CAAC,YAAY,CAAC,KAAK,CAAC;AACzE,OAAO,CAAC;;AAER;AACA,MAAM,MAAM,MAAM,GAAG,MAAM,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC,MAAM;AAC5D,MAAM,OAAO,CAAC,KAAK,CAAC,MAAM,GAAG,MAAM;;AAEnC;AACA,MAAM,OAAO,CAAC,SAAS,GAAG,aAAa,CAAC;AACxC,QAAQ,EAAE,EAAE,OAAO,CAAC,EAAE;AACtB,QAAQ,GAAG,iBAAiB;AAC5B,QAAQ,WAAW,EAAE;AACrB,OAAO,CAAC;AACR,KAAK,CAAC;;AAEN,IAAI,OAAO,IAAI;AACf;;AAEA;AACA,EAAE,QAAQ,CAAC,SAAS,CAAC,aAAa,GAAG,aAAa;AAClD,EAAE,cAAc,CAAC,SAAS,CAAC,aAAa,GAAG,aAAa;;AAExD;AACA,EAAE,WAAW,CAAC,SAAS,CAAC,aAAa,GAAG,WAAW;AACnD,IAAI,OAAO,aAAa,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC;AACrC,GAAG;;AAEH,CAAC,GAAG;;ACzDJ,CAAC,WAAW;AACZ,EAAE,SAAS,iBAAiB,GAAG;AAC/B,IAAI,QAAQ,CAAC,gBAAgB,CAAC,iEAAiE,CAAC,CAAC,aAAa,EAAE;AAChH;;AAEA,EAAE,IAAI,OAAO,KAAK,KAAK,WAAW,EAAE;AACpC,IAAI,gBAAgB,CAAC,YAAY,EAAE,MAAM,iBAAiB,EAAE;AAC5D,IAAI,gBAAgB,CAAC,kBAAkB,EAAE,MAAM,iBAAiB,EAAE;AAClE,GAAG,MAAM;AACT,IAAI,gBAAgB,CAAC,MAAM,EAAE,MAAM,iBAAiB,EAAE;AACtD;AACA,CAAC,GAAG"}