{"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"}