{"version":3,"file":"library/js/build/image-map-size-scale.js","mappings":";;;;;;;;;;;;;;;AAAwC;AACxC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,qDAAM;AACrB;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA;AACA,CAAC;AAC0B;;;;;;;;;;;;;;;;;;ACtB2C;AACL;AACN;AAC3D;AACA,YAAY,qDAAK;AACjB,YAAY,iEAAiB;AAC7B;AACA;AACA;AACA;AACA;AACA,0CAA0C,+EAAwB;AAClE;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB,8EAAgB;AACnC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;AAC4B;;;;;;;;;;;;;;;;;AC9ByC;AAC1B;AAC5C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,QAAQ,+EAAwB;AAChC;AACA;AACA;AACA;AACA;AACA,aAAa,yDAAS;AACtB;AACA;AACA,QAAQ,+EAAwB;AAChC;AACA;AACA;AACA;AACA;AACA,aAAa,yDAAS;AACtB;AACA;AACA,QAAQ,+EAAwB;AAChC;AACA;AACA,QAAQ,+EAAwB;AAChC;AACA;AACA,6CAA6C,iBAAiB;AAC9D;AACA;AACA,CAAC;AACyB;;;;;;;;;;;;;;;ACtC1B;AACA;AACA;AACA;AACA;AACA,CAAC,4DAA4D;AACzB;;;;;;;;;;;;;;;;;;;ACNuB;AACH;AACM;AACJ;AAC1D;AACA;AACA,oBAAoB,+BAA+B;AACnD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,yBAAyB,uEAAoB;AAC7C;AACA;AACA;AACA;AACA;AACA;AACA,gCAAgC,mEAAe;AAC/C,+CAA+C,iEAAiB;AAChE,YAAY,6DAAW;AACvB,YAAY,uDAAS;AACrB;AACA;AACA;AACA;AACA;AACA;AACA;AACA,+BAA+B,mEAAe,QAAQ,mEAAe;AACrE;AACA,YAAY,6DAAW;AACvB;AACA;AACA;AACA;AACA;AACA,kEAAkE,oDAAoD;AACtH;AACA;AACA;AACA,CAAC;AACmC;;;;;;;;;;;;;;;AChDpC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;AAC+B;;;;;;;;;;;;;;;;;ACVkC;AAC1B;AACxC;AACA;AACA,oBAAoB,+EAAiB;AACrC;AACA;AACA,6BAA6B,qDAAM;AACnC,8BAA8B,qDAAM;AACpC,yCAAyC,qDAAM;AAC/C;AACA;AACA,CAAC;AAC8B;;;;;;;;;;;;;;;;ACbS;AACxC;AACA;AACA;AACA;AACA,QAAQ,qDAAM;AACd;AACA;AACA,CAAC;AAC6B;;;;;;;;;;;;;;;;;;;ACT6B;AACE;AACG;AACV;AACtD;AACA;AACA;AACA,IAAI,mEAAe;AACnB;AACA;AACA;AACA;AACA;AACA,4BAA4B,qEAAmB;AAC/C,8BAA8B,6EAAqB;AACnD;AACA,kCAAkC,mEAAgB;AAClD;AACA;AACA;AACA,SAAS;AACT;AACA;AACA,SAAS;AACT;AACA,KAAK;AACL,8CAA8C,yBAAyB;AACvE;AACA;AACA;AACA;AACA;AACuC;;;;;;;;;;;;;;;;;;;;;;AChCgC;AACZ;AACN;AACF;AACV;AACA;AACzC;AACA;AACA;AACA,gCAAgC,iDAAM,cAAc,iDAAM;AAC1D,wCAAwC;AACxC;AACA,iCAAiC;AACjC,gCAAgC;AAChC,kCAAkC;AAClC,eAAe,mEAAkB;AACjC;AACA,gBAAgB,qDAAM;AACtB;AACA;AACA;AACA,qBAAqB,6DAAe;AACpC,CAAC;AACD;AACA,yCAAyC;AACzC;AACA;AACA;AACA,QAAQ,wDAAQ;AAChB;AACA;AACA;AACA;AACA,cAAc,qDAAK;AACnB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gBAAgB,qDAAM;AACtB;AACA;AACA;AACA,yBAAyB,6DAAe;AACxC,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA,aAAa,+EAAwB;AACrC;AACA,aAAa,+EAAwB;AACrC;AACA;AACA;AACA;AACA;AAC+C;;;;;;;;;;;;;;;;AC9EH;AAC5C;AACA,QAAQ,wDAAQ;AAChB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACiC;;;;;;;;;;;;;;;ACbjC;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACkC;;;;;;;;;;;;;;;;;ACfyB;AACK;AAChE;AACA,IAAI,mEAAe;AACnB;AACA;AACA;AACA;AACA,oBAAoB,6EAAqB;AACzC;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,KAAK;AACL;AAC2C;;;;;;;;;;;;;;;;AClBgB;AAC3D;AACA,WAAW,mEAAe,sBAAsB,qCAAqC;AACrF;AACiC;;;;;;;;;;;;;;;;ACJ0B;AAC3D;AACA,WAAW,mEAAe,sBAAsB,sCAAsC;AACtF;AACkC;;;;;;;;;;;;;;;;;;;;ACJiB;AACU;AACF;;;;;;;;;;;;;;;;;;ACF3D,gCAAgC;AAChC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACyD;;;;;;;;;;;;;;;AClClD,8BAA8B;;;;;;;;;;;;;;;ACA9B;;;;;;;;;;;;;;;;;;;;ACAqE;AACE;AACA;AACU;AACQ;AAChG;AACA;AACA,IAAI,4GAA+B;AACnC,WAAW,wFAAqB;AAChC,gBAAgB,oGAA2B;AAC3C,QAAQ,4GAA+B;AACvC;AACA,QAAQ,0FAAsB;AAC9B,QAAQ,0FAAsB;AAC9B;AACA;AACA;AACmB;;;;;;;;;;;;;;;ACjBnB;AACA;AACA,2BAA2B,mDAAmD,cAAc;AAC5F;AACA;AACA;AACA;AACA,uBAAuB;AACvB,2CAA2C,kBAAkB;AAC7D,gCAAgC;AAChC;AACA;AACA;AACA;AAC0B;;;;;;;;;;;;;;;;ACdwB;AAClD;AACA,IAAI,+DAAc;AAClB;AACA,KAAK;AACL;AAC+B;;;;;;;;;;;;;;;ACN/B;AAC2B;;;;;;;;;;;;;;;;;;;ACDS;AACF;AAC0B;AAC5D;AACA,+BAA+B;AAC/B;AACA,uBAAuB;AACvB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,8BAA8B;AAC9B;AACA;AACA;AACA;AACA;AACA;AACA;AACA,sCAAsC;AACtC;AACA;AACA;AACA,kCAAkC;AAClC;AACA;AACA;AACA;AACA;AACA,QAAQ,yEAAmB;AAC3B;AACA;AACA,sCAAsC,iDAAO;AAC7C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,+BAA+B;AAC/B,+BAA+B,2CAAM;AACrC;AACA;AACA;AACA;AACA;AACA;AACA;AACA,6CAA6C,OAAO,2CAAM,gDAAgD;AAC1G;AACA;AACA;AACA;AACA;AACA;AACA,6CAA6C,OAAO,2CAAM,mDAAmD;AAC7G;AACA;AACA;AACA;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACkC;;;;;;;UCnGlC;UACA;;UAEA;UACA;UACA;UACA;UACA;UACA;UACA;UACA;UACA;UACA;UACA;UACA;UACA;;UAEA;UACA;;UAEA;UACA;UACA;;;;;WCtBA;WACA;WACA;WACA;WACA,yCAAyC,wCAAwC;WACjF;WACA;WACA;;;;;WCPA;;;;;WCAA;WACA;WACA;WACA,uDAAuD,iBAAiB;WACxE;WACA,gDAAgD,aAAa;WAC7D;;;;;;;;;;;;ACNA;;GAEG;AACH;;;;;GAKG;AAEmG;AAEtG,MAAM,cAAc,GAAG,MAAM,CAAC,cAAc,IAAI,mEAAsB,CAAC;AAEvE,CAAC;IACC;;OAEG;IACH,SAAS,kBAAkB,CAAC,qBAA4C;QACtE,qBAAqB,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;YACpC,MAAM,UAAU,GAAG,cAAc,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;YAChD,IAAI,UAAU,IAAI,uBAAuB,CAAC,UAAU,CAAC,IAAI,CAAC,E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","sources":["webpack://peppermillreno_com_dev/./node_modules/@juggle/resize-observer/lib/DOMRectReadOnly.js","webpack://peppermillreno_com_dev/./node_modules/@juggle/resize-observer/lib/ResizeObservation.js","webpack://peppermillreno_com_dev/./node_modules/@juggle/resize-observer/lib/ResizeObserver.js","webpack://peppermillreno_com_dev/./node_modules/@juggle/resize-observer/lib/ResizeObserverBoxOptions.js","webpack://peppermillreno_com_dev/./node_modules/@juggle/resize-observer/lib/ResizeObserverController.js","webpack://peppermillreno_com_dev/./node_modules/@juggle/resize-observer/lib/ResizeObserverDetail.js","webpack://peppermillreno_com_dev/./node_modules/@juggle/resize-observer/lib/ResizeObserverEntry.js","webpack://peppermillreno_com_dev/./node_modules/@juggle/resize-observer/lib/ResizeObserverSize.js","webpack://peppermillreno_com_dev/./node_modules/@juggle/resize-observer/lib/algorithms/broadcastActiveObservations.js","webpack://peppermillreno_com_dev/./node_modules/@juggle/resize-observer/lib/algorithms/calculateBoxSize.js","webpack://peppermillreno_com_dev/./node_modules/@juggle/resize-observer/lib/algorithms/calculateDepthForNode.js","webpack://peppermillreno_com_dev/./node_modules/@juggle/resize-observer/lib/algorithms/deliverResizeLoopError.js","webpack://peppermillreno_com_dev/./node_modules/@juggle/resize-observer/lib/algorithms/gatherActiveObservationsAtDepth.js","webpack://peppermillreno_com_dev/./node_modules/@juggle/resize-observer/lib/algorithms/hasActiveObservations.js","webpack://peppermillreno_com_dev/./node_modules/@juggle/resize-observer/lib/algorithms/hasSkippedObservations.js","webpack://peppermillreno_com_dev/./node_modules/@juggle/resize-observer/lib/exports/resize-observer.js","webpack://peppermillreno_com_dev/./node_modules/@juggle/resize-observer/lib/utils/element.js","webpack://peppermillreno_com_dev/./node_modules/@juggle/resize-observer/lib/utils/freeze.js","webpack://peppermillreno_com_dev/./node_modules/@juggle/resize-observer/lib/utils/global.js","webpack://peppermillreno_com_dev/./node_modules/@juggle/resize-observer/lib/utils/process.js","webpack://peppermillreno_com_dev/./node_modules/@juggle/resize-observer/lib/utils/queueMicroTask.js","webpack://peppermillreno_com_dev/./node_modules/@juggle/resize-observer/lib/utils/queueResizeObserver.js","webpack://peppermillreno_com_dev/./node_modules/@juggle/resize-observer/lib/utils/resizeObservers.js","webpack://peppermillreno_com_dev/./node_modules/@juggle/resize-observer/lib/utils/scheduler.js","webpack://peppermillreno_com_dev/webpack/bootstrap","webpack://peppermillreno_com_dev/webpack/runtime/define property getters","webpack://peppermillreno_com_dev/webpack/runtime/hasOwnProperty shorthand","webpack://peppermillreno_com_dev/webpack/runtime/make namespace object","webpack://peppermillreno_com_dev/./library/js/image-map-size-scale.ts"],"sourcesContent":["import { freeze } from './utils/freeze';\nvar DOMRectReadOnly = (function () {\n function DOMRectReadOnly(x, y, width, height) {\n this.x = x;\n this.y = y;\n this.width = width;\n this.height = height;\n this.top = this.y;\n this.left = this.x;\n this.bottom = this.top + this.height;\n this.right = this.left + this.width;\n return freeze(this);\n }\n DOMRectReadOnly.prototype.toJSON = function () {\n var _a = this, x = _a.x, y = _a.y, top = _a.top, right = _a.right, bottom = _a.bottom, left = _a.left, width = _a.width, height = _a.height;\n return { x: x, y: y, top: top, right: right, bottom: bottom, left: left, width: width, height: height };\n };\n DOMRectReadOnly.fromRect = function (rectangle) {\n return new DOMRectReadOnly(rectangle.x, rectangle.y, rectangle.width, rectangle.height);\n };\n return DOMRectReadOnly;\n}());\nexport { DOMRectReadOnly };\n","import { ResizeObserverBoxOptions } from './ResizeObserverBoxOptions';\nimport { calculateBoxSize } from './algorithms/calculateBoxSize';\nimport { isSVG, isReplacedElement } from './utils/element';\nvar skipNotifyOnElement = function (target) {\n return !isSVG(target)\n && !isReplacedElement(target)\n && getComputedStyle(target).display === 'inline';\n};\nvar ResizeObservation = (function () {\n function ResizeObservation(target, observedBox) {\n this.target = target;\n this.observedBox = observedBox || ResizeObserverBoxOptions.CONTENT_BOX;\n this.lastReportedSize = {\n inlineSize: 0,\n blockSize: 0\n };\n }\n ResizeObservation.prototype.isActive = function () {\n var size = calculateBoxSize(this.target, this.observedBox, true);\n if (skipNotifyOnElement(this.target)) {\n this.lastReportedSize = size;\n }\n if (this.lastReportedSize.inlineSize !== size.inlineSize\n || this.lastReportedSize.blockSize !== size.blockSize) {\n return true;\n }\n return false;\n };\n return ResizeObservation;\n}());\nexport { ResizeObservation };\n","import { ResizeObserverController } from './ResizeObserverController';\nimport { isElement } from './utils/element';\nvar ResizeObserver = (function () {\n function ResizeObserver(callback) {\n if (arguments.length === 0) {\n throw new TypeError(\"Failed to construct 'ResizeObserver': 1 argument required, but only 0 present.\");\n }\n if (typeof callback !== 'function') {\n throw new TypeError(\"Failed to construct 'ResizeObserver': The callback provided as parameter 1 is not a function.\");\n }\n ResizeObserverController.connect(this, callback);\n }\n ResizeObserver.prototype.observe = function (target, options) {\n if (arguments.length === 0) {\n throw new TypeError(\"Failed to execute 'observe' on 'ResizeObserver': 1 argument required, but only 0 present.\");\n }\n if (!isElement(target)) {\n throw new TypeError(\"Failed to execute 'observe' on 'ResizeObserver': parameter 1 is not of type 'Element\");\n }\n ResizeObserverController.observe(this, target, options);\n };\n ResizeObserver.prototype.unobserve = function (target) {\n if (arguments.length === 0) {\n throw new TypeError(\"Failed to execute 'unobserve' on 'ResizeObserver': 1 argument required, but only 0 present.\");\n }\n if (!isElement(target)) {\n throw new TypeError(\"Failed to execute 'unobserve' on 'ResizeObserver': parameter 1 is not of type 'Element\");\n }\n ResizeObserverController.unobserve(this, target);\n };\n ResizeObserver.prototype.disconnect = function () {\n ResizeObserverController.disconnect(this);\n };\n ResizeObserver.toString = function () {\n return 'function ResizeObserver () { [polyfill code] }';\n };\n return ResizeObserver;\n}());\nexport { ResizeObserver };\n","var ResizeObserverBoxOptions;\n(function (ResizeObserverBoxOptions) {\n ResizeObserverBoxOptions[\"BORDER_BOX\"] = \"border-box\";\n ResizeObserverBoxOptions[\"CONTENT_BOX\"] = \"content-box\";\n ResizeObserverBoxOptions[\"DEVICE_PIXEL_CONTENT_BOX\"] = \"device-pixel-content-box\";\n})(ResizeObserverBoxOptions || (ResizeObserverBoxOptions = {}));\nexport { ResizeObserverBoxOptions };\n","import { scheduler, updateCount } from './utils/scheduler';\nimport { ResizeObservation } from './ResizeObservation';\nimport { ResizeObserverDetail } from './ResizeObserverDetail';\nimport { resizeObservers } from './utils/resizeObservers';\nvar observerMap = new WeakMap();\nvar getObservationIndex = function (observationTargets, target) {\n for (var i = 0; i < observationTargets.length; i += 1) {\n if (observationTargets[i].target === target) {\n return i;\n }\n }\n return -1;\n};\nvar ResizeObserverController = (function () {\n function ResizeObserverController() {\n }\n ResizeObserverController.connect = function (resizeObserver, callback) {\n var detail = new ResizeObserverDetail(resizeObserver, callback);\n observerMap.set(resizeObserver, detail);\n };\n ResizeObserverController.observe = function (resizeObserver, target, options) {\n var detail = observerMap.get(resizeObserver);\n var firstObservation = detail.observationTargets.length === 0;\n if (getObservationIndex(detail.observationTargets, target) < 0) {\n firstObservation && resizeObservers.push(detail);\n detail.observationTargets.push(new ResizeObservation(target, options && options.box));\n updateCount(1);\n scheduler.schedule();\n }\n };\n ResizeObserverController.unobserve = function (resizeObserver, target) {\n var detail = observerMap.get(resizeObserver);\n var index = getObservationIndex(detail.observationTargets, target);\n var lastObservation = detail.observationTargets.length === 1;\n if (index >= 0) {\n lastObservation && resizeObservers.splice(resizeObservers.indexOf(detail), 1);\n detail.observationTargets.splice(index, 1);\n updateCount(-1);\n }\n };\n ResizeObserverController.disconnect = function (resizeObserver) {\n var _this = this;\n var detail = observerMap.get(resizeObserver);\n detail.observationTargets.slice().forEach(function (ot) { return _this.unobserve(resizeObserver, ot.target); });\n detail.activeTargets.splice(0, detail.activeTargets.length);\n };\n return ResizeObserverController;\n}());\nexport { ResizeObserverController };\n","var ResizeObserverDetail = (function () {\n function ResizeObserverDetail(resizeObserver, callback) {\n this.activeTargets = [];\n this.skippedTargets = [];\n this.observationTargets = [];\n this.observer = resizeObserver;\n this.callback = callback;\n }\n return ResizeObserverDetail;\n}());\nexport { ResizeObserverDetail };\n","import { calculateBoxSizes } from './algorithms/calculateBoxSize';\nimport { freeze } from './utils/freeze';\nvar ResizeObserverEntry = (function () {\n function ResizeObserverEntry(target) {\n var boxes = calculateBoxSizes(target);\n this.target = target;\n this.contentRect = boxes.contentRect;\n this.borderBoxSize = freeze([boxes.borderBoxSize]);\n this.contentBoxSize = freeze([boxes.contentBoxSize]);\n this.devicePixelContentBoxSize = freeze([boxes.devicePixelContentBoxSize]);\n }\n return ResizeObserverEntry;\n}());\nexport { ResizeObserverEntry };\n","import { freeze } from './utils/freeze';\nvar ResizeObserverSize = (function () {\n function ResizeObserverSize(inlineSize, blockSize) {\n this.inlineSize = inlineSize;\n this.blockSize = blockSize;\n freeze(this);\n }\n return ResizeObserverSize;\n}());\nexport { ResizeObserverSize };\n","import { resizeObservers } from '../utils/resizeObservers';\nimport { ResizeObserverEntry } from '../ResizeObserverEntry';\nimport { calculateDepthForNode } from './calculateDepthForNode';\nimport { calculateBoxSize } from './calculateBoxSize';\nvar broadcastActiveObservations = function () {\n var shallowestDepth = Infinity;\n var callbacks = [];\n resizeObservers.forEach(function processObserver(ro) {\n if (ro.activeTargets.length === 0) {\n return;\n }\n var entries = [];\n ro.activeTargets.forEach(function processTarget(ot) {\n var entry = new ResizeObserverEntry(ot.target);\n var targetDepth = calculateDepthForNode(ot.target);\n entries.push(entry);\n ot.lastReportedSize = calculateBoxSize(ot.target, ot.observedBox);\n if (targetDepth < shallowestDepth) {\n shallowestDepth = targetDepth;\n }\n });\n callbacks.push(function resizeObserverCallback() {\n ro.callback.call(ro.observer, entries, ro.observer);\n });\n ro.activeTargets.splice(0, ro.activeTargets.length);\n });\n for (var _i = 0, callbacks_1 = callbacks; _i < callbacks_1.length; _i++) {\n var callback = callbacks_1[_i];\n callback();\n }\n return shallowestDepth;\n};\nexport { broadcastActiveObservations };\n","import { ResizeObserverBoxOptions } from '../ResizeObserverBoxOptions';\nimport { ResizeObserverSize } from '../ResizeObserverSize';\nimport { DOMRectReadOnly } from '../DOMRectReadOnly';\nimport { isSVG, isHidden } from '../utils/element';\nimport { freeze } from '../utils/freeze';\nimport { global } from '../utils/global';\nvar cache = new WeakMap();\nvar scrollRegexp = /auto|scroll/;\nvar verticalRegexp = /^tb|vertical/;\nvar IE = (/msie|trident/i).test(global.navigator && global.navigator.userAgent);\nvar parseDimension = function (pixel) { return parseFloat(pixel || '0'); };\nvar size = function (inlineSize, blockSize, switchSizes) {\n if (inlineSize === void 0) { inlineSize = 0; }\n if (blockSize === void 0) { blockSize = 0; }\n if (switchSizes === void 0) { switchSizes = false; }\n return new ResizeObserverSize((switchSizes ? blockSize : inlineSize) || 0, (switchSizes ? inlineSize : blockSize) || 0);\n};\nvar zeroBoxes = freeze({\n devicePixelContentBoxSize: size(),\n borderBoxSize: size(),\n contentBoxSize: size(),\n contentRect: new DOMRectReadOnly(0, 0, 0, 0)\n});\nvar calculateBoxSizes = function (target, forceRecalculation) {\n if (forceRecalculation === void 0) { forceRecalculation = false; }\n if (cache.has(target) && !forceRecalculation) {\n return cache.get(target);\n }\n if (isHidden(target)) {\n cache.set(target, zeroBoxes);\n return zeroBoxes;\n }\n var cs = getComputedStyle(target);\n var svg = isSVG(target) && target.ownerSVGElement && target.getBBox();\n var removePadding = !IE && cs.boxSizing === 'border-box';\n var switchSizes = verticalRegexp.test(cs.writingMode || '');\n var canScrollVertically = !svg && scrollRegexp.test(cs.overflowY || '');\n var canScrollHorizontally = !svg && scrollRegexp.test(cs.overflowX || '');\n var paddingTop = svg ? 0 : parseDimension(cs.paddingTop);\n var paddingRight = svg ? 0 : parseDimension(cs.paddingRight);\n var paddingBottom = svg ? 0 : parseDimension(cs.paddingBottom);\n var paddingLeft = svg ? 0 : parseDimension(cs.paddingLeft);\n var borderTop = svg ? 0 : parseDimension(cs.borderTopWidth);\n var borderRight = svg ? 0 : parseDimension(cs.borderRightWidth);\n var borderBottom = svg ? 0 : parseDimension(cs.borderBottomWidth);\n var borderLeft = svg ? 0 : parseDimension(cs.borderLeftWidth);\n var horizontalPadding = paddingLeft + paddingRight;\n var verticalPadding = paddingTop + paddingBottom;\n var horizontalBorderArea = borderLeft + borderRight;\n var verticalBorderArea = borderTop + borderBottom;\n var horizontalScrollbarThickness = !canScrollHorizontally ? 0 : target.offsetHeight - verticalBorderArea - target.clientHeight;\n var verticalScrollbarThickness = !canScrollVertically ? 0 : target.offsetWidth - horizontalBorderArea - target.clientWidth;\n var widthReduction = removePadding ? horizontalPadding + horizontalBorderArea : 0;\n var heightReduction = removePadding ? verticalPadding + verticalBorderArea : 0;\n var contentWidth = svg ? svg.width : parseDimension(cs.width) - widthReduction - verticalScrollbarThickness;\n var contentHeight = svg ? svg.height : parseDimension(cs.height) - heightReduction - horizontalScrollbarThickness;\n var borderBoxWidth = contentWidth + horizontalPadding + verticalScrollbarThickness + horizontalBorderArea;\n var borderBoxHeight = contentHeight + verticalPadding + horizontalScrollbarThickness + verticalBorderArea;\n var boxes = freeze({\n devicePixelContentBoxSize: size(Math.round(contentWidth * devicePixelRatio), Math.round(contentHeight * devicePixelRatio), switchSizes),\n borderBoxSize: size(borderBoxWidth, borderBoxHeight, switchSizes),\n contentBoxSize: size(contentWidth, contentHeight, switchSizes),\n contentRect: new DOMRectReadOnly(paddingLeft, paddingTop, contentWidth, contentHeight)\n });\n cache.set(target, boxes);\n return boxes;\n};\nvar calculateBoxSize = function (target, observedBox, forceRecalculation) {\n var _a = calculateBoxSizes(target, forceRecalculation), borderBoxSize = _a.borderBoxSize, contentBoxSize = _a.contentBoxSize, devicePixelContentBoxSize = _a.devicePixelContentBoxSize;\n switch (observedBox) {\n case ResizeObserverBoxOptions.DEVICE_PIXEL_CONTENT_BOX:\n return devicePixelContentBoxSize;\n case ResizeObserverBoxOptions.BORDER_BOX:\n return borderBoxSize;\n default:\n return contentBoxSize;\n }\n};\nexport { calculateBoxSize, calculateBoxSizes };\n","import { isHidden } from '../utils/element';\nvar calculateDepthForNode = function (node) {\n if (isHidden(node)) {\n return Infinity;\n }\n var depth = 0;\n var parent = node.parentNode;\n while (parent) {\n depth += 1;\n parent = parent.parentNode;\n }\n return depth;\n};\nexport { calculateDepthForNode };\n","var msg = 'ResizeObserver loop completed with undelivered notifications.';\nvar deliverResizeLoopError = function () {\n var event;\n if (typeof ErrorEvent === 'function') {\n event = new ErrorEvent('error', {\n message: msg\n });\n }\n else {\n event = document.createEvent('Event');\n event.initEvent('error', false, false);\n event.message = msg;\n }\n window.dispatchEvent(event);\n};\nexport { deliverResizeLoopError };\n","import { resizeObservers } from '../utils/resizeObservers';\nimport { calculateDepthForNode } from './calculateDepthForNode';\nvar gatherActiveObservationsAtDepth = function (depth) {\n resizeObservers.forEach(function processObserver(ro) {\n ro.activeTargets.splice(0, ro.activeTargets.length);\n ro.skippedTargets.splice(0, ro.skippedTargets.length);\n ro.observationTargets.forEach(function processTarget(ot) {\n if (ot.isActive()) {\n if (calculateDepthForNode(ot.target) > depth) {\n ro.activeTargets.push(ot);\n }\n else {\n ro.skippedTargets.push(ot);\n }\n }\n });\n });\n};\nexport { gatherActiveObservationsAtDepth };\n","import { resizeObservers } from '../utils/resizeObservers';\nvar hasActiveObservations = function () {\n return resizeObservers.some(function (ro) { return ro.activeTargets.length > 0; });\n};\nexport { hasActiveObservations };\n","import { resizeObservers } from '../utils/resizeObservers';\nvar hasSkippedObservations = function () {\n return resizeObservers.some(function (ro) { return ro.skippedTargets.length > 0; });\n};\nexport { hasSkippedObservations };\n","export { ResizeObserver } from '../ResizeObserver';\nexport { ResizeObserverEntry } from '../ResizeObserverEntry';\nexport { ResizeObserverSize } from '../ResizeObserverSize';\n","var isSVG = function (target) { return target instanceof SVGElement && 'getBBox' in target; };\nvar isHidden = function (target) {\n if (isSVG(target)) {\n var _a = target.getBBox(), width = _a.width, height = _a.height;\n return !width && !height;\n }\n var _b = target, offsetWidth = _b.offsetWidth, offsetHeight = _b.offsetHeight;\n return !(offsetWidth || offsetHeight || target.getClientRects().length);\n};\nvar isElement = function (obj) {\n var _a;\n if (obj instanceof Element) {\n return true;\n }\n var scope = (_a = obj === null || obj === void 0 ? void 0 : obj.ownerDocument) === null || _a === void 0 ? void 0 : _a.defaultView;\n return !!(scope && obj instanceof scope.Element);\n};\nvar isReplacedElement = function (target) {\n switch (target.tagName) {\n case 'INPUT':\n if (target.type !== 'image') {\n break;\n }\n case 'VIDEO':\n case 'AUDIO':\n case 'EMBED':\n case 'OBJECT':\n case 'CANVAS':\n case 'IFRAME':\n case 'IMG':\n return true;\n }\n return false;\n};\nexport { isSVG, isHidden, isElement, isReplacedElement };\n","export var freeze = function (obj) { return Object.freeze(obj); };\n","export var global = typeof window !== 'undefined' ? window : {};\n","import { hasActiveObservations } from '../algorithms/hasActiveObservations';\nimport { hasSkippedObservations } from '../algorithms/hasSkippedObservations';\nimport { deliverResizeLoopError } from '../algorithms/deliverResizeLoopError';\nimport { broadcastActiveObservations } from '../algorithms/broadcastActiveObservations';\nimport { gatherActiveObservationsAtDepth } from '../algorithms/gatherActiveObservationsAtDepth';\nvar process = function () {\n var depth = 0;\n gatherActiveObservationsAtDepth(depth);\n while (hasActiveObservations()) {\n depth = broadcastActiveObservations();\n gatherActiveObservationsAtDepth(depth);\n }\n if (hasSkippedObservations()) {\n deliverResizeLoopError();\n }\n return depth > 0;\n};\nexport { process };\n","var trigger;\nvar callbacks = [];\nvar notify = function () { return callbacks.splice(0).forEach(function (cb) { return cb(); }); };\nvar queueMicroTask = function (callback) {\n if (!trigger) {\n var toggle_1 = 0;\n var el_1 = document.createTextNode('');\n var config = { characterData: true };\n new MutationObserver(function () { return notify(); }).observe(el_1, config);\n trigger = function () { el_1.textContent = \"\".concat(toggle_1 ? toggle_1-- : toggle_1++); };\n }\n callbacks.push(callback);\n trigger();\n};\nexport { queueMicroTask };\n","import { queueMicroTask } from './queueMicroTask';\nvar queueResizeObserver = function (cb) {\n queueMicroTask(function ResizeObserver() {\n requestAnimationFrame(cb);\n });\n};\nexport { queueResizeObserver };\n","var resizeObservers = [];\nexport { resizeObservers };\n","import { process } from './process';\nimport { global } from './global';\nimport { queueResizeObserver } from './queueResizeObserver';\nvar watching = 0;\nvar isWatching = function () { return !!watching; };\nvar CATCH_PERIOD = 250;\nvar observerConfig = { attributes: true, characterData: true, childList: true, subtree: true };\nvar events = [\n 'resize',\n 'load',\n 'transitionend',\n 'animationend',\n 'animationstart',\n 'animationiteration',\n 'keyup',\n 'keydown',\n 'mouseup',\n 'mousedown',\n 'mouseover',\n 'mouseout',\n 'blur',\n 'focus'\n];\nvar time = function (timeout) {\n if (timeout === void 0) { timeout = 0; }\n return Date.now() + timeout;\n};\nvar scheduled = false;\nvar Scheduler = (function () {\n function Scheduler() {\n var _this = this;\n this.stopped = true;\n this.listener = function () { return _this.schedule(); };\n }\n Scheduler.prototype.run = function (timeout) {\n var _this = this;\n if (timeout === void 0) { timeout = CATCH_PERIOD; }\n if (scheduled) {\n return;\n }\n scheduled = true;\n var until = time(timeout);\n queueResizeObserver(function () {\n var elementsHaveResized = false;\n try {\n elementsHaveResized = process();\n }\n finally {\n scheduled = false;\n timeout = until - time();\n if (!isWatching()) {\n return;\n }\n if (elementsHaveResized) {\n _this.run(1000);\n }\n else if (timeout > 0) {\n _this.run(timeout);\n }\n else {\n _this.start();\n }\n }\n });\n };\n Scheduler.prototype.schedule = function () {\n this.stop();\n this.run();\n };\n Scheduler.prototype.observe = function () {\n var _this = this;\n var cb = function () { return _this.observer && _this.observer.observe(document.body, observerConfig); };\n document.body ? cb() : global.addEventListener('DOMContentLoaded', cb);\n };\n Scheduler.prototype.start = function () {\n var _this = this;\n if (this.stopped) {\n this.stopped = false;\n this.observer = new MutationObserver(this.listener);\n this.observe();\n events.forEach(function (name) { return global.addEventListener(name, _this.listener, true); });\n }\n };\n Scheduler.prototype.stop = function () {\n var _this = this;\n if (!this.stopped) {\n this.observer && this.observer.disconnect();\n events.forEach(function (name) { return global.removeEventListener(name, _this.listener, true); });\n this.stopped = true;\n }\n };\n return Scheduler;\n}());\nvar scheduler = new Scheduler();\nvar updateCount = function (n) {\n !watching && n > 0 && scheduler.start();\n watching += n;\n !watching && scheduler.stop();\n};\nexport { scheduler, updateCount };\n","// 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","// define getter functions for harmony exports\n__webpack_require__.d = (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 = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","/*!\r\n * @copyright\tCopyright (C) 2024, Peppermill Inc. All rights reserved. Redistribution and use in source and binary forms, with or without modification, are not permitted.\r\n */\r\n/**\r\n * @version 1.0.0\r\n * @changelog\r\n * 2024-10-28 (1.0.0) (jhoward)\r\n * - Add image-map-size-scale.ts to facilitate responsive image maps using the ResizeObserver API.\r\n */\r\n\r\nimport {ResizeObserver as ResizeObserverPolyfill, ResizeObserverEntry} from '@juggle/resize-observer';\r\n\r\nconst ResizeObserver = window.ResizeObserver || ResizeObserverPolyfill;\r\n\r\n(function () {\r\n /**\r\n * Set the area coordinates for all image maps in the page content.\r\n */\r\n function setAreaCoordinates(resizeObserverEntries: ResizeObserverEntry[]) {\r\n resizeObserverEntries.forEach(entry => {\r\n const mapElement = getMapForImage(entry.target);\r\n if (mapElement && originalAreaCoordinates[mapElement.name]) {\r\n const scaleFactor = entry.contentRect.width / originalAreaCoordinates[mapElement.name].originalWidth;\r\n //loop through all HTMLAreaElements in the map and scale their coordinates\r\n mapElement.querySelectorAll('area').forEach((areaElement, areaIndex) => {\r\n const newAreaCoordinates = originalAreaCoordinates[mapElement.name].coords[areaIndex].map((coordinate) => {\r\n return coordinate * scaleFactor;\r\n });\r\n areaElement.coords = newAreaCoordinates.join(',');\r\n });\r\n }\r\n });\r\n }\r\n\r\n function getMapForImage(imageElement: Element): HTMLMapElement | null {\r\n const mapName = imageElement.getAttribute('usemap')?.replace('#', '') || '';\r\n return document.querySelector(`map[name=\"${mapName}\"]`);\r\n }\r\n\r\n /**\r\n * Get the natural width of an image\r\n */\r\n function getImageNaturalWidth(imageElement: HTMLImageElement): number {\r\n const img = new Image();\r\n img.src = imageElement.src;\r\n return img.naturalWidth || DEFAULT_IMAGE_WIDTH;\r\n }\r\n\r\n const DEFAULT_IMAGE_WIDTH = 1000;\r\n const IMAGES: NodeListOf = document.querySelectorAll('.page-content img[usemap]');\r\n const IMAGE_MAPS = Array.from(IMAGES).map(getMapForImage).filter(map => map) as HTMLMapElement[];\r\n const originalAreaCoordinates: {[key: string]: {originalWidth: number, coords: number[][]}} = {};\r\n\r\n //Initialize the original area coordinates and original image widths for each image map\r\n IMAGE_MAPS.forEach((mapElement, mapIndex) => {\r\n originalAreaCoordinates[mapElement.name] = {\r\n originalWidth: getImageNaturalWidth(IMAGES[mapIndex]),\r\n coords: []\r\n };\r\n mapElement.querySelectorAll('area').forEach((areaElement) => {\r\n //save coordinates for each HTMLAreaElement as an array of integers\r\n originalAreaCoordinates[mapElement.name].coords.push(areaElement.coords.split(',').map((coordinate) => parseInt(coordinate)));\r\n });\r\n });\r\n\r\n const resizeObserver = new ResizeObserver(setAreaCoordinates);\r\n IMAGES.forEach(image => {\r\n resizeObserver.observe(image);\r\n });\r\n\r\n window.addEventListener('load', () => {\r\n //when images have loaded, update the natural/native image widths to make sure our scaling is accurate\r\n IMAGE_MAPS.forEach((mapElement, mapIndex) => {\r\n originalAreaCoordinates[mapElement.name].originalWidth = getImageNaturalWidth(IMAGES[mapIndex]);\r\n });\r\n });\r\n})();"],"names":[],"sourceRoot":""}