@tanem/svg-injector 11.2.2 → 11.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -30,6 +30,10 @@ SVGInjector(document.getElementById('inject-me'))
30
30
 
31
31
  You can inject individual symbols from an SVG sprite sheet by appending a fragment identifier (e.g. `sprite.svg#icon-star`) to the `data-src` URL. See the [sprite usage example](https://github.com/tanem/svg-injector/tree/master/examples/sprite-usage) for full documentation and known limitations.
32
32
 
33
+ ## Data URL Support
34
+
35
+ When a bundler like Vite inlines small SVGs as `data:image/svg+xml` URLs, the library parses the SVG content directly from the data URL without making a network request. This avoids Content Security Policy violations and unnecessary XHR overhead. See the [data URL usage example](https://github.com/tanem/svg-injector/tree/master/examples/data-url-usage) for supported formats and known limitations.
36
+
33
37
  ## Avoiding XSS
34
38
 
35
39
  Be careful when injecting arbitrary third-party SVGs into the DOM, as this opens the door to XSS attacks. If you must inject third-party SVGs, it is highly recommended to sanitise the SVG before injecting. The following example uses [DOMPurify](https://github.com/cure53/DOMPurify) to strip out attributes and tags that can execute arbitrary JavaScript. Note that this can alter the behaviour of the SVG.
@@ -53,6 +57,7 @@ SVGInjector(document.getElementById('inject-me'), {
53
57
  - Basic Usage: [Source](https://github.com/tanem/svg-injector/tree/master/examples/basic-usage) | [Sandbox](https://codesandbox.io/s/github/tanem/svg-injector/tree/master/examples/basic-usage)
54
58
  - API Usage: [Source](https://github.com/tanem/svg-injector/tree/master/examples/api-usage) | [Sandbox](https://codesandbox.io/s/github/tanem/svg-injector/tree/master/examples/api-usage)
55
59
  - IRI Renumeration: [Source](https://github.com/tanem/svg-injector/tree/master/examples/iri-renumeration) | [Sandbox](https://codesandbox.io/s/github/tanem/svg-injector/tree/master/examples/iri-renumeration)
60
+ - Data URL Usage: [Source](https://github.com/tanem/svg-injector/tree/master/examples/data-url-usage) | [Sandbox](https://codesandbox.io/s/github/tanem/svg-injector/tree/master/examples/data-url-usage)
56
61
  - Sprite Usage: [Source](https://github.com/tanem/svg-injector/tree/master/examples/sprite-usage) | [Sandbox](https://codesandbox.io/s/github/tanem/svg-injector/tree/master/examples/sprite-usage)
57
62
  - UMD Build (Development): [Source](https://github.com/tanem/svg-injector/tree/master/examples/umd-dev) | [Sandbox](https://codesandbox.io/s/github/tanem/svg-injector/tree/master/examples/umd-dev)
58
63
  - UMD Build (Production): [Source](https://github.com/tanem/svg-injector/tree/master/examples/umd-prod) | [Sandbox](https://codesandbox.io/s/github/tanem/svg-injector/tree/master/examples/umd-prod)
@@ -0,0 +1,2 @@
1
+ declare const parseDataUrl: (url: string) => SVGSVGElement | Error | null;
2
+ export default parseDataUrl;
@@ -147,6 +147,45 @@ var loadSvgUncached = function (url, httpRequestWithCredentials, callback) {
147
147
  });
148
148
  };
149
149
 
150
+ var dataUrlPrefix = 'data:image/svg+xml';
151
+ var parseDataUrl = function (url) {
152
+ if (!url.startsWith(dataUrlPrefix)) {
153
+ return null;
154
+ }
155
+ var rest = url.slice(dataUrlPrefix.length);
156
+ var svgString;
157
+ if (rest.startsWith(';base64,')) {
158
+ try {
159
+ svgString = atob(rest.slice(';base64,'.length));
160
+ } catch (_a) {
161
+ return new Error('Invalid base64 in data URL');
162
+ }
163
+ } else if (rest.startsWith(',')) {
164
+ try {
165
+ svgString = decodeURIComponent(rest.slice(','.length));
166
+ } catch (_b) {
167
+ return new Error('Invalid encoding in data URL');
168
+ }
169
+ } else if (rest.startsWith(';charset=utf-8,')) {
170
+ try {
171
+ svgString = decodeURIComponent(rest.slice(';charset=utf-8,'.length));
172
+ } catch (_c) {
173
+ return new Error('Invalid encoding in data URL');
174
+ }
175
+ } else {
176
+ return new Error('Unsupported data URL format');
177
+ }
178
+ var doc = new DOMParser().parseFromString(svgString, 'image/svg+xml');
179
+ var parserError = doc.querySelector('parsererror');
180
+ if (parserError) {
181
+ return new Error('Data URL SVG parse error: ' + parserError.textContent.trim());
182
+ }
183
+ if (!(doc.documentElement instanceof SVGSVGElement)) {
184
+ return new Error('Data URL did not contain a valid SVG element');
185
+ }
186
+ return doc.documentElement;
187
+ };
188
+
150
189
  var idCounter = 0;
151
190
  var uniqueId = function () {
152
191
  return ++idCounter;
@@ -173,8 +212,14 @@ var injectElement = function (el, evalScripts, renumerateIRIElements, cacheReque
173
212
  var hashIndex = elUrl.indexOf('#');
174
213
  var baseUrl = hashIndex !== -1 ? elUrl.slice(0, hashIndex) : elUrl;
175
214
  var symbolId = hashIndex !== -1 ? elUrl.slice(hashIndex + 1) : null;
176
- var loadSvg = cacheRequests ? loadSvgCached : loadSvgUncached;
177
- loadSvg(baseUrl, httpRequestWithCredentials, function (error, loadedSvg) {
215
+ var dataUrlResult = parseDataUrl(baseUrl);
216
+ if (dataUrlResult instanceof Error) {
217
+ injectedElements.splice(injectedElements.indexOf(el), 1);
218
+ el = null;
219
+ callback(dataUrlResult);
220
+ return;
221
+ }
222
+ var handleLoadedSvg = function (error, loadedSvg) {
178
223
  var _a, _b;
179
224
  if (!loadedSvg) {
180
225
  injectedElements.splice(injectedElements.indexOf(el), 1);
@@ -373,7 +418,15 @@ var injectElement = function (el, evalScripts, renumerateIRIElements, cacheReque
373
418
  injectedElements.splice(injectedElements.indexOf(el), 1);
374
419
  el = null;
375
420
  callback(null, svg);
376
- });
421
+ };
422
+ if (dataUrlResult) {
423
+ setTimeout(function () {
424
+ handleLoadedSvg(null, dataUrlResult);
425
+ }, 0);
426
+ return;
427
+ }
428
+ var loadSvg = cacheRequests ? loadSvgCached : loadSvgUncached;
429
+ loadSvg(baseUrl, httpRequestWithCredentials, handleLoadedSvg);
377
430
  };
378
431
 
379
432
  var SVGInjector = function (elements, _a) {
@@ -1 +1 @@
1
- {"version":3,"file":"svg-injector.cjs.development.js","sources":["../compiled/extract-symbol.js","../compiled/cache.js","../compiled/clone-svg.js","../compiled/is-local.js","../compiled/make-ajax-request.js","../compiled/request-queue.js","../compiled/load-svg-cached.js","../compiled/load-svg-uncached.js","../compiled/unique-id.js","../compiled/inject-element.js","../compiled/svg-injector.js"],"sourcesContent":["var svgNamespace = 'http://www.w3.org/2000/svg';\nvar extractSymbol = function (spriteSvg, symbolId) {\n var symbol = spriteSvg.querySelector('#' + CSS.escape(symbolId));\n if ((symbol === null || symbol === void 0 ? void 0 : symbol.tagName.toLowerCase()) !== 'symbol') {\n return null;\n }\n var svg = document.createElementNS(svgNamespace, 'svg');\n var attrs = symbol.attributes;\n for (var i = 0, len = attrs.length; i < len; i++) {\n var attr = attrs[i];\n if (attr.name !== 'id') {\n svg.setAttribute(attr.name, attr.value);\n }\n }\n var children = symbol.childNodes;\n for (var i = 0, len = children.length; i < len; i++) {\n svg.appendChild(children[i].cloneNode(true));\n }\n return svg;\n};\nexport default extractSymbol;\n//# sourceMappingURL=extract-symbol.js.map","var cache = new Map();\nexport default cache;\n//# sourceMappingURL=cache.js.map","var cloneSvg = function (sourceSvg) {\n return sourceSvg.cloneNode(true);\n};\nexport default cloneSvg;\n//# sourceMappingURL=clone-svg.js.map","var isLocal = function () { return window.location.protocol === 'file:'; };\nexport default isLocal;\n//# sourceMappingURL=is-local.js.map","import { parse as parseContentType } from 'content-type';\nimport isLocal from './is-local';\nvar makeAjaxRequest = function (url, httpRequestWithCredentials, callback) {\n var httpRequest = new XMLHttpRequest();\n httpRequest.onreadystatechange = function () {\n try {\n if (!/\\.svg/i.test(url) && httpRequest.readyState === 2) {\n var contentType = httpRequest.getResponseHeader('Content-Type');\n if (!contentType) {\n throw new Error('Content type not found');\n }\n var type = parseContentType(contentType).type;\n if (!(type === 'image/svg+xml' || type === 'text/plain')) {\n throw new Error(\"Invalid content type: \".concat(type));\n }\n }\n if (httpRequest.readyState === 4) {\n if (httpRequest.status === 404 || httpRequest.responseXML === null) {\n throw new Error(isLocal()\n ? 'Note: SVG injection ajax calls do not work locally without ' +\n 'adjusting security settings in your browser. Or consider ' +\n 'using a local webserver.'\n : 'Unable to load SVG file: ' + url);\n }\n if (httpRequest.status === 200 ||\n (isLocal() && httpRequest.status === 0)) {\n callback(null, httpRequest);\n }\n else {\n throw new Error('There was a problem injecting the SVG: ' +\n httpRequest.status +\n ' ' +\n httpRequest.statusText);\n }\n }\n }\n catch (error) {\n httpRequest.abort();\n if (error instanceof Error) {\n callback(error, httpRequest);\n }\n else {\n throw error;\n }\n }\n };\n httpRequest.open('GET', url);\n httpRequest.withCredentials = httpRequestWithCredentials;\n if (httpRequest.overrideMimeType) {\n httpRequest.overrideMimeType('image/svg+xml');\n }\n httpRequest.send();\n};\nexport default makeAjaxRequest;\n//# sourceMappingURL=make-ajax-request.js.map","import cache from './cache';\nimport cloneSvg from './clone-svg';\nvar requestQueue = {};\nexport var queueRequest = function (url, callback) {\n var _a;\n (_a = requestQueue[url]) !== null && _a !== void 0 ? _a : (requestQueue[url] = []);\n requestQueue[url].push(callback);\n};\nexport var processRequestQueue = function (url) {\n var callbacks = requestQueue[url];\n if (!callbacks) {\n return;\n }\n var _loop_1 = function (i, len) {\n setTimeout(function () {\n if (Array.isArray(requestQueue[url])) {\n var cacheValue = cache.get(url);\n var callback = callbacks[i];\n if (!callback) {\n return;\n }\n if (cacheValue instanceof SVGSVGElement) {\n callback(null, cloneSvg(cacheValue));\n }\n if (cacheValue instanceof Error) {\n callback(cacheValue);\n }\n if (i === callbacks.length - 1) {\n delete requestQueue[url];\n }\n }\n }, 0);\n };\n for (var i = 0, len = callbacks.length; i < len; i++) {\n _loop_1(i, len);\n }\n};\n//# sourceMappingURL=request-queue.js.map","import cache from './cache';\nimport cloneSvg from './clone-svg';\nimport makeAjaxRequest from './make-ajax-request';\nimport { processRequestQueue, queueRequest } from './request-queue';\nvar loadSvgCached = function (url, httpRequestWithCredentials, callback) {\n if (cache.has(url)) {\n var cacheValue = cache.get(url);\n if (cacheValue === undefined) {\n queueRequest(url, callback);\n return;\n }\n if (cacheValue instanceof SVGSVGElement) {\n callback(null, cloneSvg(cacheValue));\n return;\n }\n }\n cache.set(url, undefined);\n queueRequest(url, callback);\n makeAjaxRequest(url, httpRequestWithCredentials, function (error, httpRequest) {\n var _a;\n if (error) {\n cache.set(url, error);\n }\n else if (((_a = httpRequest.responseXML) === null || _a === void 0 ? void 0 : _a.documentElement) instanceof SVGSVGElement) {\n cache.set(url, httpRequest.responseXML.documentElement);\n }\n processRequestQueue(url);\n });\n};\nexport default loadSvgCached;\n//# sourceMappingURL=load-svg-cached.js.map","import makeAjaxRequest from './make-ajax-request';\nvar loadSvgUncached = function (url, httpRequestWithCredentials, callback) {\n makeAjaxRequest(url, httpRequestWithCredentials, function (error, httpRequest) {\n var _a;\n if (error) {\n callback(error);\n }\n else if (((_a = httpRequest.responseXML) === null || _a === void 0 ? void 0 : _a.documentElement) instanceof SVGSVGElement) {\n callback(null, httpRequest.responseXML.documentElement);\n }\n });\n};\nexport default loadSvgUncached;\n//# sourceMappingURL=load-svg-uncached.js.map","var idCounter = 0;\nvar uniqueId = function () { return ++idCounter; };\nexport default uniqueId;\n//# sourceMappingURL=unique-id.js.map","import { __spreadArray } from \"tslib\";\nimport extractSymbol from './extract-symbol';\nimport loadSvgCached from './load-svg-cached';\nimport loadSvgUncached from './load-svg-uncached';\nimport uniqueId from './unique-id';\nvar injectedElements = [];\nvar ranScripts = {};\nvar svgNamespace = 'http://www.w3.org/2000/svg';\nvar xlinkNamespace = 'http://www.w3.org/1999/xlink';\nvar injectElement = function (el, evalScripts, renumerateIRIElements, cacheRequests, httpRequestWithCredentials, beforeEach, callback) {\n var _a;\n var elUrl = (_a = el.getAttribute('data-src')) !== null && _a !== void 0 ? _a : el.getAttribute('src');\n if (!elUrl) {\n callback(new Error('Invalid data-src or src attribute'));\n return;\n }\n if (injectedElements.indexOf(el) !== -1) {\n injectedElements.splice(injectedElements.indexOf(el), 1);\n el = null;\n return;\n }\n injectedElements.push(el);\n el.setAttribute('src', '');\n var hashIndex = elUrl.indexOf('#');\n var baseUrl = hashIndex !== -1 ? elUrl.slice(0, hashIndex) : elUrl;\n var symbolId = hashIndex !== -1 ? elUrl.slice(hashIndex + 1) : null;\n var loadSvg = cacheRequests ? loadSvgCached : loadSvgUncached;\n loadSvg(baseUrl, httpRequestWithCredentials, function (error, loadedSvg) {\n var _a, _b;\n if (!loadedSvg) {\n injectedElements.splice(injectedElements.indexOf(el), 1);\n el = null;\n callback(error);\n return;\n }\n var svg = loadedSvg;\n if (symbolId) {\n var symbolSvg = extractSymbol(loadedSvg, symbolId);\n if (!symbolSvg) {\n injectedElements.splice(injectedElements.indexOf(el), 1);\n el = null;\n callback(new Error(\"Symbol \\\"\".concat(symbolId, \"\\\" not found in \").concat(baseUrl)));\n return;\n }\n svg = symbolSvg;\n }\n var elId = el.getAttribute('id');\n if (elId) {\n svg.setAttribute('id', elId);\n }\n var elTitle = el.getAttribute('title');\n if (elTitle) {\n svg.setAttribute('title', elTitle);\n }\n var elWidth = el.getAttribute('width');\n if (elWidth) {\n svg.setAttribute('width', elWidth);\n }\n var elHeight = el.getAttribute('height');\n if (elHeight) {\n svg.setAttribute('height', elHeight);\n }\n var mergedClasses = Array.from(new Set(__spreadArray(__spreadArray(__spreadArray([], ((_a = svg.getAttribute('class')) !== null && _a !== void 0 ? _a : '').split(' '), true), [\n 'injected-svg'\n ], false), ((_b = el.getAttribute('class')) !== null && _b !== void 0 ? _b : '').split(' '), true)))\n .join(' ')\n .trim();\n svg.setAttribute('class', mergedClasses);\n var elStyle = el.getAttribute('style');\n if (elStyle) {\n svg.setAttribute('style', elStyle);\n }\n svg.setAttribute('data-src', elUrl);\n var elData = [].filter.call(el.attributes, function (at) {\n return /^data-\\w[\\w-]*$/.test(at.name);\n });\n Array.prototype.forEach.call(elData, function (dataAttr) {\n if (dataAttr.name && dataAttr.value) {\n svg.setAttribute(dataAttr.name, dataAttr.value);\n }\n });\n if (renumerateIRIElements) {\n var iriElementsAndProperties_1 = {\n clipPath: ['clip-path'],\n 'color-profile': ['color-profile'],\n cursor: ['cursor'],\n filter: ['filter'],\n linearGradient: ['fill', 'stroke'],\n marker: ['marker', 'marker-start', 'marker-mid', 'marker-end'],\n mask: ['mask'],\n path: [],\n pattern: ['fill', 'stroke'],\n radialGradient: ['fill', 'stroke'],\n };\n var replaceIriReferences_1 = function (value, iriIdMap) {\n return value.replace(/url\\((['\"]?)\\s*#([^\\s'\"\\)]+)\\s*\\1\\)/g, function (match, _quote, iriId) {\n var newId = iriIdMap[iriId];\n return newId ? \"url(#\".concat(newId, \")\") : match;\n });\n };\n var replaceHrefReference = function (value, iriIdMap) {\n if (!value.startsWith('#')) {\n return value;\n }\n var iriId = value.slice(1);\n var newId = iriIdMap[iriId];\n return newId ? '#' + newId : value;\n };\n var element_1;\n var elements_1;\n var properties_1;\n var currentId_1;\n var newId_1;\n var renumeratedElements_1 = [];\n var iriIdMap_1 = {};\n Object.keys(iriElementsAndProperties_1).forEach(function (key) {\n element_1 = key;\n elements_1 = svg.querySelectorAll(element_1 + '[id]');\n for (var a = 0, elementsLen = elements_1.length; a < elementsLen; a++) {\n var currentElement = elements_1[a];\n currentId_1 = currentElement.id;\n newId_1 = currentId_1 + '-' + uniqueId();\n iriIdMap_1[currentId_1] = newId_1;\n renumeratedElements_1.push({\n element: currentElement,\n currentId: currentId_1,\n newId: newId_1,\n });\n }\n });\n Object.keys(iriElementsAndProperties_1).forEach(function (key) {\n properties_1 = iriElementsAndProperties_1[key];\n var referencingElements;\n Array.prototype.forEach.call(properties_1, function (property) {\n referencingElements = svg.querySelectorAll('[' + property + ']');\n for (var b = 0, referencingElementLen = referencingElements.length; b < referencingElementLen; b++) {\n var referencingElement = referencingElements[b];\n var attrValue = referencingElement.getAttribute(property);\n if (attrValue) {\n var nextValue = replaceIriReferences_1(attrValue, iriIdMap_1);\n if (nextValue !== attrValue) {\n referencingElement.setAttribute(property, nextValue);\n }\n }\n }\n });\n });\n var allLinks = svg.querySelectorAll('*');\n for (var c = 0, allLinksLen = allLinks.length; c < allLinksLen; c++) {\n var link = allLinks[c];\n var href = link.getAttribute('href');\n if (href) {\n var nextHref = replaceHrefReference(href, iriIdMap_1);\n if (nextHref !== href) {\n link.setAttribute('href', nextHref);\n }\n }\n var xlinkHref = link.getAttributeNS(xlinkNamespace, 'href');\n if (xlinkHref) {\n var nextXlinkHref = replaceHrefReference(xlinkHref, iriIdMap_1);\n if (nextXlinkHref !== xlinkHref) {\n link.setAttributeNS(xlinkNamespace, 'href', nextXlinkHref);\n }\n }\n }\n var styleElements = svg.querySelectorAll('[style]');\n for (var d = 0, styleElementsLen = styleElements.length; d < styleElementsLen; d++) {\n var styleElement = styleElements[d];\n var styleValue = styleElement.getAttribute('style');\n if (styleValue) {\n var nextStyleValue = replaceIriReferences_1(styleValue, iriIdMap_1);\n if (nextStyleValue !== styleValue) {\n styleElement.setAttribute('style', nextStyleValue);\n }\n }\n }\n var styleTagElements = svg.querySelectorAll('style');\n for (var e = 0, styleTagElementsLen = styleTagElements.length; e < styleTagElementsLen; e++) {\n var styleTagElement = styleTagElements[e];\n var textContent = styleTagElement.textContent;\n if (textContent) {\n var nextTextContent = replaceIriReferences_1(textContent, iriIdMap_1);\n if (nextTextContent !== textContent) {\n styleTagElement.textContent = nextTextContent;\n }\n }\n }\n for (var f = 0, renumeratedElementsLen = renumeratedElements_1.length; f < renumeratedElementsLen; f++) {\n renumeratedElements_1[f].element.id = renumeratedElements_1[f].newId;\n }\n }\n svg.removeAttribute('xmlns:a');\n var scripts = svg.querySelectorAll('script');\n var scriptsToEval = [];\n var script;\n var scriptType;\n for (var i = 0, scriptsLen = scripts.length; i < scriptsLen; i++) {\n var scriptElement = scripts[i];\n scriptType = scriptElement.getAttribute('type');\n if (!scriptType ||\n scriptType === 'application/ecmascript' ||\n scriptType === 'application/javascript' ||\n scriptType === 'text/javascript') {\n script = scriptElement.innerText || scriptElement.textContent;\n if (script) {\n scriptsToEval.push(script);\n }\n svg.removeChild(scriptElement);\n }\n }\n if (scriptsToEval.length > 0 &&\n (evalScripts === 'always' ||\n (evalScripts === 'once' && !ranScripts[elUrl]))) {\n for (var l = 0, scriptsToEvalLen = scriptsToEval.length; l < scriptsToEvalLen; l++) {\n new Function(scriptsToEval[l])(window);\n }\n ranScripts[elUrl] = true;\n }\n var styleTags = svg.querySelectorAll('style');\n Array.prototype.forEach.call(styleTags, function (styleTag) {\n styleTag.textContent += '';\n });\n svg.setAttribute('xmlns', svgNamespace);\n svg.setAttribute('xmlns:xlink', xlinkNamespace);\n beforeEach(svg);\n if (!el.parentNode) {\n injectedElements.splice(injectedElements.indexOf(el), 1);\n el = null;\n callback(new Error('Parent node is null'));\n return;\n }\n el.parentNode.replaceChild(svg, el);\n injectedElements.splice(injectedElements.indexOf(el), 1);\n el = null;\n callback(null, svg);\n });\n};\nexport default injectElement;\n//# sourceMappingURL=inject-element.js.map","import injectElement from './inject-element';\nvar SVGInjector = function (elements, _a) {\n var _b = _a === void 0 ? {} : _a, _c = _b.afterAll, afterAll = _c === void 0 ? function () { return undefined; } : _c, _d = _b.afterEach, afterEach = _d === void 0 ? function () { return undefined; } : _d, _e = _b.beforeEach, beforeEach = _e === void 0 ? function () { return undefined; } : _e, _f = _b.cacheRequests, cacheRequests = _f === void 0 ? true : _f, _g = _b.evalScripts, evalScripts = _g === void 0 ? 'never' : _g, _h = _b.httpRequestWithCredentials, httpRequestWithCredentials = _h === void 0 ? false : _h, _j = _b.renumerateIRIElements, renumerateIRIElements = _j === void 0 ? true : _j;\n if (elements && 'length' in elements) {\n var elementsLoaded_1 = 0;\n for (var i = 0, j = elements.length; i < j; i++) {\n var element = elements[i];\n if (!element) {\n continue;\n }\n injectElement(element, evalScripts, renumerateIRIElements, cacheRequests, httpRequestWithCredentials, beforeEach, function (error, svg) {\n afterEach(error, svg);\n if (elements &&\n 'length' in elements &&\n elements.length === ++elementsLoaded_1) {\n afterAll(elementsLoaded_1);\n }\n });\n }\n }\n else if (elements) {\n injectElement(elements, evalScripts, renumerateIRIElements, cacheRequests, httpRequestWithCredentials, beforeEach, function (error, svg) {\n afterEach(error, svg);\n afterAll(1);\n elements = null;\n });\n }\n else {\n afterAll(0);\n }\n};\nexport default SVGInjector;\n//# sourceMappingURL=svg-injector.js.map"],"names":["svgNamespace","extractSymbol","spriteSvg","symbolId","symbol","querySelector","CSS","escape","tagName","toLowerCase","svg","document","createElementNS","attrs","attributes","i","len","length","attr","name","setAttribute","value","children","childNodes","appendChild","cloneNode","cache","Map","cloneSvg","sourceSvg","isLocal","window","location","protocol","makeAjaxRequest","url","httpRequestWithCredentials","callback","httpRequest","XMLHttpRequest","onreadystatechange","test","readyState","contentType","getResponseHeader","Error","type","parseContentType","concat","status","responseXML","statusText","error","abort","open","withCredentials","overrideMimeType","send","requestQueue","queueRequest","_a","push","processRequestQueue","callbacks","setTimeout","Array","isArray","cacheValue","get","SVGSVGElement","loadSvgCached","has","undefined","set","documentElement","loadSvgUncached","idCounter","uniqueId","injectedElements","ranScripts","xlinkNamespace","injectElement","el","evalScripts","renumerateIRIElements","cacheRequests","beforeEach","elUrl","getAttribute","indexOf","splice","hashIndex","baseUrl","slice","loadSvg","loadedSvg","symbolSvg","elId","elTitle","elWidth","elHeight","mergedClasses","from","Set","__spreadArray","split","_b","join","trim","elStyle","elData","filter","call","at","prototype","forEach","dataAttr","iriElementsAndProperties_1","clipPath","cursor","linearGradient","marker","mask","path","pattern","radialGradient","replaceIriReferences_1","iriIdMap","replace","match","_quote","iriId","newId","replaceHrefReference","startsWith","element_1","elements_1","properties_1","currentId_1","newId_1","renumeratedElements_1","iriIdMap_1","Object","keys","key","querySelectorAll","a","elementsLen","currentElement","id","element","currentId","referencingElements","property","b","referencingElementLen","referencingElement","attrValue","nextValue","allLinks","c","allLinksLen","link","href","nextHref","xlinkHref","getAttributeNS","nextXlinkHref","setAttributeNS","styleElements","d","styleElementsLen","styleElement","styleValue","nextStyleValue","styleTagElements","e","styleTagElementsLen","styleTagElement","textContent","nextTextContent","f","renumeratedElementsLen","removeAttribute","scripts","scriptsToEval","script","scriptType","scriptsLen","scriptElement","innerText","removeChild","l","scriptsToEvalLen","Function","styleTags","styleTag","parentNode","replaceChild","SVGInjector","elements","_c","afterAll","_d","afterEach","_e","_f","_g","_h","_j","elementsLoaded_1","j"],"mappings":"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"}
1
+ {"version":3,"file":"svg-injector.cjs.development.js","sources":["../compiled/extract-symbol.js","../compiled/cache.js","../compiled/clone-svg.js","../compiled/is-local.js","../compiled/make-ajax-request.js","../compiled/request-queue.js","../compiled/load-svg-cached.js","../compiled/load-svg-uncached.js","../compiled/parse-data-url.js","../compiled/unique-id.js","../compiled/inject-element.js","../compiled/svg-injector.js"],"sourcesContent":["var svgNamespace = 'http://www.w3.org/2000/svg';\nvar extractSymbol = function (spriteSvg, symbolId) {\n var symbol = spriteSvg.querySelector('#' + CSS.escape(symbolId));\n if ((symbol === null || symbol === void 0 ? void 0 : symbol.tagName.toLowerCase()) !== 'symbol') {\n return null;\n }\n var svg = document.createElementNS(svgNamespace, 'svg');\n var attrs = symbol.attributes;\n for (var i = 0, len = attrs.length; i < len; i++) {\n var attr = attrs[i];\n if (attr.name !== 'id') {\n svg.setAttribute(attr.name, attr.value);\n }\n }\n var children = symbol.childNodes;\n for (var i = 0, len = children.length; i < len; i++) {\n svg.appendChild(children[i].cloneNode(true));\n }\n return svg;\n};\nexport default extractSymbol;\n//# sourceMappingURL=extract-symbol.js.map","var cache = new Map();\nexport default cache;\n//# sourceMappingURL=cache.js.map","var cloneSvg = function (sourceSvg) {\n return sourceSvg.cloneNode(true);\n};\nexport default cloneSvg;\n//# sourceMappingURL=clone-svg.js.map","var isLocal = function () { return window.location.protocol === 'file:'; };\nexport default isLocal;\n//# sourceMappingURL=is-local.js.map","import { parse as parseContentType } from 'content-type';\nimport isLocal from './is-local';\nvar makeAjaxRequest = function (url, httpRequestWithCredentials, callback) {\n var httpRequest = new XMLHttpRequest();\n httpRequest.onreadystatechange = function () {\n try {\n if (!/\\.svg/i.test(url) && httpRequest.readyState === 2) {\n var contentType = httpRequest.getResponseHeader('Content-Type');\n if (!contentType) {\n throw new Error('Content type not found');\n }\n var type = parseContentType(contentType).type;\n if (!(type === 'image/svg+xml' || type === 'text/plain')) {\n throw new Error(\"Invalid content type: \".concat(type));\n }\n }\n if (httpRequest.readyState === 4) {\n if (httpRequest.status === 404 || httpRequest.responseXML === null) {\n throw new Error(isLocal()\n ? 'Note: SVG injection ajax calls do not work locally without ' +\n 'adjusting security settings in your browser. Or consider ' +\n 'using a local webserver.'\n : 'Unable to load SVG file: ' + url);\n }\n if (httpRequest.status === 200 ||\n (isLocal() && httpRequest.status === 0)) {\n callback(null, httpRequest);\n }\n else {\n throw new Error('There was a problem injecting the SVG: ' +\n httpRequest.status +\n ' ' +\n httpRequest.statusText);\n }\n }\n }\n catch (error) {\n httpRequest.abort();\n if (error instanceof Error) {\n callback(error, httpRequest);\n }\n else {\n throw error;\n }\n }\n };\n httpRequest.open('GET', url);\n httpRequest.withCredentials = httpRequestWithCredentials;\n if (httpRequest.overrideMimeType) {\n httpRequest.overrideMimeType('image/svg+xml');\n }\n httpRequest.send();\n};\nexport default makeAjaxRequest;\n//# sourceMappingURL=make-ajax-request.js.map","import cache from './cache';\nimport cloneSvg from './clone-svg';\nvar requestQueue = {};\nexport var queueRequest = function (url, callback) {\n var _a;\n (_a = requestQueue[url]) !== null && _a !== void 0 ? _a : (requestQueue[url] = []);\n requestQueue[url].push(callback);\n};\nexport var processRequestQueue = function (url) {\n var callbacks = requestQueue[url];\n if (!callbacks) {\n return;\n }\n var _loop_1 = function (i, len) {\n setTimeout(function () {\n if (Array.isArray(requestQueue[url])) {\n var cacheValue = cache.get(url);\n var callback = callbacks[i];\n if (!callback) {\n return;\n }\n if (cacheValue instanceof SVGSVGElement) {\n callback(null, cloneSvg(cacheValue));\n }\n if (cacheValue instanceof Error) {\n callback(cacheValue);\n }\n if (i === callbacks.length - 1) {\n delete requestQueue[url];\n }\n }\n }, 0);\n };\n for (var i = 0, len = callbacks.length; i < len; i++) {\n _loop_1(i, len);\n }\n};\n//# sourceMappingURL=request-queue.js.map","import cache from './cache';\nimport cloneSvg from './clone-svg';\nimport makeAjaxRequest from './make-ajax-request';\nimport { processRequestQueue, queueRequest } from './request-queue';\nvar loadSvgCached = function (url, httpRequestWithCredentials, callback) {\n if (cache.has(url)) {\n var cacheValue = cache.get(url);\n if (cacheValue === undefined) {\n queueRequest(url, callback);\n return;\n }\n if (cacheValue instanceof SVGSVGElement) {\n callback(null, cloneSvg(cacheValue));\n return;\n }\n }\n cache.set(url, undefined);\n queueRequest(url, callback);\n makeAjaxRequest(url, httpRequestWithCredentials, function (error, httpRequest) {\n var _a;\n if (error) {\n cache.set(url, error);\n }\n else if (((_a = httpRequest.responseXML) === null || _a === void 0 ? void 0 : _a.documentElement) instanceof SVGSVGElement) {\n cache.set(url, httpRequest.responseXML.documentElement);\n }\n processRequestQueue(url);\n });\n};\nexport default loadSvgCached;\n//# sourceMappingURL=load-svg-cached.js.map","import makeAjaxRequest from './make-ajax-request';\nvar loadSvgUncached = function (url, httpRequestWithCredentials, callback) {\n makeAjaxRequest(url, httpRequestWithCredentials, function (error, httpRequest) {\n var _a;\n if (error) {\n callback(error);\n }\n else if (((_a = httpRequest.responseXML) === null || _a === void 0 ? void 0 : _a.documentElement) instanceof SVGSVGElement) {\n callback(null, httpRequest.responseXML.documentElement);\n }\n });\n};\nexport default loadSvgUncached;\n//# sourceMappingURL=load-svg-uncached.js.map","var dataUrlPrefix = 'data:image/svg+xml';\nvar parseDataUrl = function (url) {\n if (!url.startsWith(dataUrlPrefix)) {\n return null;\n }\n var rest = url.slice(dataUrlPrefix.length);\n var svgString;\n if (rest.startsWith(';base64,')) {\n try {\n svgString = atob(rest.slice(';base64,'.length));\n }\n catch (_a) {\n return new Error('Invalid base64 in data URL');\n }\n }\n else if (rest.startsWith(',')) {\n try {\n svgString = decodeURIComponent(rest.slice(','.length));\n }\n catch (_b) {\n return new Error('Invalid encoding in data URL');\n }\n }\n else if (rest.startsWith(';charset=utf-8,')) {\n try {\n svgString = decodeURIComponent(rest.slice(';charset=utf-8,'.length));\n }\n catch (_c) {\n return new Error('Invalid encoding in data URL');\n }\n }\n else {\n return new Error('Unsupported data URL format');\n }\n var doc = new DOMParser().parseFromString(svgString, 'image/svg+xml');\n var parserError = doc.querySelector('parsererror');\n if (parserError) {\n return new Error('Data URL SVG parse error: ' + parserError.textContent.trim());\n }\n if (!(doc.documentElement instanceof SVGSVGElement)) {\n return new Error('Data URL did not contain a valid SVG element');\n }\n return doc.documentElement;\n};\nexport default parseDataUrl;\n//# sourceMappingURL=parse-data-url.js.map","var idCounter = 0;\nvar uniqueId = function () { return ++idCounter; };\nexport default uniqueId;\n//# sourceMappingURL=unique-id.js.map","import { __spreadArray } from \"tslib\";\nimport extractSymbol from './extract-symbol';\nimport loadSvgCached from './load-svg-cached';\nimport loadSvgUncached from './load-svg-uncached';\nimport parseDataUrl from './parse-data-url';\nimport uniqueId from './unique-id';\nvar injectedElements = [];\nvar ranScripts = {};\nvar svgNamespace = 'http://www.w3.org/2000/svg';\nvar xlinkNamespace = 'http://www.w3.org/1999/xlink';\nvar injectElement = function (el, evalScripts, renumerateIRIElements, cacheRequests, httpRequestWithCredentials, beforeEach, callback) {\n var _a;\n var elUrl = (_a = el.getAttribute('data-src')) !== null && _a !== void 0 ? _a : el.getAttribute('src');\n if (!elUrl) {\n callback(new Error('Invalid data-src or src attribute'));\n return;\n }\n if (injectedElements.indexOf(el) !== -1) {\n injectedElements.splice(injectedElements.indexOf(el), 1);\n el = null;\n return;\n }\n injectedElements.push(el);\n el.setAttribute('src', '');\n var hashIndex = elUrl.indexOf('#');\n var baseUrl = hashIndex !== -1 ? elUrl.slice(0, hashIndex) : elUrl;\n var symbolId = hashIndex !== -1 ? elUrl.slice(hashIndex + 1) : null;\n var dataUrlResult = parseDataUrl(baseUrl);\n if (dataUrlResult instanceof Error) {\n injectedElements.splice(injectedElements.indexOf(el), 1);\n el = null;\n callback(dataUrlResult);\n return;\n }\n var handleLoadedSvg = function (error, loadedSvg) {\n var _a, _b;\n if (!loadedSvg) {\n injectedElements.splice(injectedElements.indexOf(el), 1);\n el = null;\n callback(error);\n return;\n }\n var svg = loadedSvg;\n if (symbolId) {\n var symbolSvg = extractSymbol(loadedSvg, symbolId);\n if (!symbolSvg) {\n injectedElements.splice(injectedElements.indexOf(el), 1);\n el = null;\n callback(new Error(\"Symbol \\\"\".concat(symbolId, \"\\\" not found in \").concat(baseUrl)));\n return;\n }\n svg = symbolSvg;\n }\n var elId = el.getAttribute('id');\n if (elId) {\n svg.setAttribute('id', elId);\n }\n var elTitle = el.getAttribute('title');\n if (elTitle) {\n svg.setAttribute('title', elTitle);\n }\n var elWidth = el.getAttribute('width');\n if (elWidth) {\n svg.setAttribute('width', elWidth);\n }\n var elHeight = el.getAttribute('height');\n if (elHeight) {\n svg.setAttribute('height', elHeight);\n }\n var mergedClasses = Array.from(new Set(__spreadArray(__spreadArray(__spreadArray([], ((_a = svg.getAttribute('class')) !== null && _a !== void 0 ? _a : '').split(' '), true), [\n 'injected-svg'\n ], false), ((_b = el.getAttribute('class')) !== null && _b !== void 0 ? _b : '').split(' '), true)))\n .join(' ')\n .trim();\n svg.setAttribute('class', mergedClasses);\n var elStyle = el.getAttribute('style');\n if (elStyle) {\n svg.setAttribute('style', elStyle);\n }\n svg.setAttribute('data-src', elUrl);\n var elData = [].filter.call(el.attributes, function (at) {\n return /^data-\\w[\\w-]*$/.test(at.name);\n });\n Array.prototype.forEach.call(elData, function (dataAttr) {\n if (dataAttr.name && dataAttr.value) {\n svg.setAttribute(dataAttr.name, dataAttr.value);\n }\n });\n if (renumerateIRIElements) {\n var iriElementsAndProperties_1 = {\n clipPath: ['clip-path'],\n 'color-profile': ['color-profile'],\n cursor: ['cursor'],\n filter: ['filter'],\n linearGradient: ['fill', 'stroke'],\n marker: ['marker', 'marker-start', 'marker-mid', 'marker-end'],\n mask: ['mask'],\n path: [],\n pattern: ['fill', 'stroke'],\n radialGradient: ['fill', 'stroke'],\n };\n var replaceIriReferences_1 = function (value, iriIdMap) {\n return value.replace(/url\\((['\"]?)\\s*#([^\\s'\"\\)]+)\\s*\\1\\)/g, function (match, _quote, iriId) {\n var newId = iriIdMap[iriId];\n return newId ? \"url(#\".concat(newId, \")\") : match;\n });\n };\n var replaceHrefReference = function (value, iriIdMap) {\n if (!value.startsWith('#')) {\n return value;\n }\n var iriId = value.slice(1);\n var newId = iriIdMap[iriId];\n return newId ? '#' + newId : value;\n };\n var element_1;\n var elements_1;\n var properties_1;\n var currentId_1;\n var newId_1;\n var renumeratedElements_1 = [];\n var iriIdMap_1 = {};\n Object.keys(iriElementsAndProperties_1).forEach(function (key) {\n element_1 = key;\n elements_1 = svg.querySelectorAll(element_1 + '[id]');\n for (var a = 0, elementsLen = elements_1.length; a < elementsLen; a++) {\n var currentElement = elements_1[a];\n currentId_1 = currentElement.id;\n newId_1 = currentId_1 + '-' + uniqueId();\n iriIdMap_1[currentId_1] = newId_1;\n renumeratedElements_1.push({\n element: currentElement,\n currentId: currentId_1,\n newId: newId_1,\n });\n }\n });\n Object.keys(iriElementsAndProperties_1).forEach(function (key) {\n properties_1 = iriElementsAndProperties_1[key];\n var referencingElements;\n Array.prototype.forEach.call(properties_1, function (property) {\n referencingElements = svg.querySelectorAll('[' + property + ']');\n for (var b = 0, referencingElementLen = referencingElements.length; b < referencingElementLen; b++) {\n var referencingElement = referencingElements[b];\n var attrValue = referencingElement.getAttribute(property);\n if (attrValue) {\n var nextValue = replaceIriReferences_1(attrValue, iriIdMap_1);\n if (nextValue !== attrValue) {\n referencingElement.setAttribute(property, nextValue);\n }\n }\n }\n });\n });\n var allLinks = svg.querySelectorAll('*');\n for (var c = 0, allLinksLen = allLinks.length; c < allLinksLen; c++) {\n var link = allLinks[c];\n var href = link.getAttribute('href');\n if (href) {\n var nextHref = replaceHrefReference(href, iriIdMap_1);\n if (nextHref !== href) {\n link.setAttribute('href', nextHref);\n }\n }\n var xlinkHref = link.getAttributeNS(xlinkNamespace, 'href');\n if (xlinkHref) {\n var nextXlinkHref = replaceHrefReference(xlinkHref, iriIdMap_1);\n if (nextXlinkHref !== xlinkHref) {\n link.setAttributeNS(xlinkNamespace, 'href', nextXlinkHref);\n }\n }\n }\n var styleElements = svg.querySelectorAll('[style]');\n for (var d = 0, styleElementsLen = styleElements.length; d < styleElementsLen; d++) {\n var styleElement = styleElements[d];\n var styleValue = styleElement.getAttribute('style');\n if (styleValue) {\n var nextStyleValue = replaceIriReferences_1(styleValue, iriIdMap_1);\n if (nextStyleValue !== styleValue) {\n styleElement.setAttribute('style', nextStyleValue);\n }\n }\n }\n var styleTagElements = svg.querySelectorAll('style');\n for (var e = 0, styleTagElementsLen = styleTagElements.length; e < styleTagElementsLen; e++) {\n var styleTagElement = styleTagElements[e];\n var textContent = styleTagElement.textContent;\n if (textContent) {\n var nextTextContent = replaceIriReferences_1(textContent, iriIdMap_1);\n if (nextTextContent !== textContent) {\n styleTagElement.textContent = nextTextContent;\n }\n }\n }\n for (var f = 0, renumeratedElementsLen = renumeratedElements_1.length; f < renumeratedElementsLen; f++) {\n renumeratedElements_1[f].element.id = renumeratedElements_1[f].newId;\n }\n }\n svg.removeAttribute('xmlns:a');\n var scripts = svg.querySelectorAll('script');\n var scriptsToEval = [];\n var script;\n var scriptType;\n for (var i = 0, scriptsLen = scripts.length; i < scriptsLen; i++) {\n var scriptElement = scripts[i];\n scriptType = scriptElement.getAttribute('type');\n if (!scriptType ||\n scriptType === 'application/ecmascript' ||\n scriptType === 'application/javascript' ||\n scriptType === 'text/javascript') {\n script = scriptElement.innerText || scriptElement.textContent;\n if (script) {\n scriptsToEval.push(script);\n }\n svg.removeChild(scriptElement);\n }\n }\n if (scriptsToEval.length > 0 &&\n (evalScripts === 'always' ||\n (evalScripts === 'once' && !ranScripts[elUrl]))) {\n for (var l = 0, scriptsToEvalLen = scriptsToEval.length; l < scriptsToEvalLen; l++) {\n new Function(scriptsToEval[l])(window);\n }\n ranScripts[elUrl] = true;\n }\n var styleTags = svg.querySelectorAll('style');\n Array.prototype.forEach.call(styleTags, function (styleTag) {\n styleTag.textContent += '';\n });\n svg.setAttribute('xmlns', svgNamespace);\n svg.setAttribute('xmlns:xlink', xlinkNamespace);\n beforeEach(svg);\n if (!el.parentNode) {\n injectedElements.splice(injectedElements.indexOf(el), 1);\n el = null;\n callback(new Error('Parent node is null'));\n return;\n }\n el.parentNode.replaceChild(svg, el);\n injectedElements.splice(injectedElements.indexOf(el), 1);\n el = null;\n callback(null, svg);\n };\n if (dataUrlResult) {\n setTimeout(function () {\n handleLoadedSvg(null, dataUrlResult);\n }, 0);\n return;\n }\n var loadSvg = cacheRequests ? loadSvgCached : loadSvgUncached;\n loadSvg(baseUrl, httpRequestWithCredentials, handleLoadedSvg);\n};\nexport default injectElement;\n//# sourceMappingURL=inject-element.js.map","import injectElement from './inject-element';\nvar SVGInjector = function (elements, _a) {\n var _b = _a === void 0 ? {} : _a, _c = _b.afterAll, afterAll = _c === void 0 ? function () { return undefined; } : _c, _d = _b.afterEach, afterEach = _d === void 0 ? function () { return undefined; } : _d, _e = _b.beforeEach, beforeEach = _e === void 0 ? function () { return undefined; } : _e, _f = _b.cacheRequests, cacheRequests = _f === void 0 ? true : _f, _g = _b.evalScripts, evalScripts = _g === void 0 ? 'never' : _g, _h = _b.httpRequestWithCredentials, httpRequestWithCredentials = _h === void 0 ? false : _h, _j = _b.renumerateIRIElements, renumerateIRIElements = _j === void 0 ? true : _j;\n if (elements && 'length' in elements) {\n var elementsLoaded_1 = 0;\n for (var i = 0, j = elements.length; i < j; i++) {\n var element = elements[i];\n if (!element) {\n continue;\n }\n injectElement(element, evalScripts, renumerateIRIElements, cacheRequests, httpRequestWithCredentials, beforeEach, function (error, svg) {\n afterEach(error, svg);\n if (elements &&\n 'length' in elements &&\n elements.length === ++elementsLoaded_1) {\n afterAll(elementsLoaded_1);\n }\n });\n }\n }\n else if (elements) {\n injectElement(elements, evalScripts, renumerateIRIElements, cacheRequests, httpRequestWithCredentials, beforeEach, function (error, svg) {\n afterEach(error, svg);\n afterAll(1);\n elements = null;\n });\n }\n else {\n afterAll(0);\n }\n};\nexport default SVGInjector;\n//# sourceMappingURL=svg-injector.js.map"],"names":["svgNamespace","extractSymbol","spriteSvg","symbolId","symbol","querySelector","CSS","escape","tagName","toLowerCase","svg","document","createElementNS","attrs","attributes","i","len","length","attr","name","setAttribute","value","children","childNodes","appendChild","cloneNode","cache","Map","cloneSvg","sourceSvg","isLocal","window","location","protocol","makeAjaxRequest","url","httpRequestWithCredentials","callback","httpRequest","XMLHttpRequest","onreadystatechange","test","readyState","contentType","getResponseHeader","Error","type","parseContentType","concat","status","responseXML","statusText","error","abort","open","withCredentials","overrideMimeType","send","requestQueue","queueRequest","_a","push","processRequestQueue","callbacks","setTimeout","Array","isArray","cacheValue","get","SVGSVGElement","loadSvgCached","has","undefined","set","documentElement","loadSvgUncached","dataUrlPrefix","parseDataUrl","startsWith","rest","slice","svgString","atob","decodeURIComponent","_b","_c","doc","DOMParser","parseFromString","parserError","textContent","trim","idCounter","uniqueId","injectedElements","ranScripts","xlinkNamespace","injectElement","el","evalScripts","renumerateIRIElements","cacheRequests","beforeEach","elUrl","getAttribute","indexOf","splice","hashIndex","baseUrl","dataUrlResult","handleLoadedSvg","loadedSvg","symbolSvg","elId","elTitle","elWidth","elHeight","mergedClasses","from","Set","__spreadArray","split","join","elStyle","elData","filter","call","at","prototype","forEach","dataAttr","iriElementsAndProperties_1","clipPath","cursor","linearGradient","marker","mask","path","pattern","radialGradient","replaceIriReferences_1","iriIdMap","replace","match","_quote","iriId","newId","replaceHrefReference","element_1","elements_1","properties_1","currentId_1","newId_1","renumeratedElements_1","iriIdMap_1","Object","keys","key","querySelectorAll","a","elementsLen","currentElement","id","element","currentId","referencingElements","property","b","referencingElementLen","referencingElement","attrValue","nextValue","allLinks","c","allLinksLen","link","href","nextHref","xlinkHref","getAttributeNS","nextXlinkHref","setAttributeNS","styleElements","d","styleElementsLen","styleElement","styleValue","nextStyleValue","styleTagElements","e","styleTagElementsLen","styleTagElement","nextTextContent","f","renumeratedElementsLen","removeAttribute","scripts","scriptsToEval","script","scriptType","scriptsLen","scriptElement","innerText","removeChild","l","scriptsToEvalLen","Function","styleTags","styleTag","parentNode","replaceChild","loadSvg","SVGInjector","elements","afterAll","_d","afterEach","_e","_f","_g","_h","_j","elementsLoaded_1","j"],"mappings":";;;;;AAAA,IAAMA,cAAY,GAAG,4BAA4B;AAEjD,IAAMC,aAAa,GAAG,UACpBC,SAAwB,EACxBC,QAAgB,EAAA;AAEhB,EAAA,IAAMC,MAAM,GAAGF,SAAS,CAACG,aAAa,CAAC,GAAG,GAAGC,GAAG,CAACC,MAAM,CAACJ,QAAQ,CAAC,CAAC;AAElE,EAAA,IAAI,CAAAC,MAAM,KAAA,IAAA,IAANA,MAAM,KAAA,MAAA,GAAA,MAAA,GAANA,MAAM,CAAEI,OAAO,CAACC,WAAW,EAAE,MAAK,QAAQ,EAAE;AAC9C,IAAA,OAAO,IAAI;AACb,EAAA;EAEA,IAAMC,GAAG,GAAGC,QAAQ,CAACC,eAAe,CAACZ,cAAY,EAAE,KAAK,CAAC;AAEzD,EAAA,IAAMa,KAAK,GAAGT,MAAM,CAACU,UAAU;AAE/B,EAAA,KAAK,IAAIC,CAAC,GAAG,CAAC,EAAEC,GAAG,GAAGH,KAAK,CAACI,MAAM,EAAEF,CAAC,GAAGC,GAAG,EAAED,CAAC,EAAE,EAAE;AAChD,IAAA,IAAMG,IAAI,GAAGL,KAAK,CAACE,CAAC,CAAE;AACtB,IAAA,IAAIG,IAAI,CAACC,IAAI,KAAK,IAAI,EAAE;MACtBT,GAAG,CAACU,YAAY,CAACF,IAAI,CAACC,IAAI,EAAED,IAAI,CAACG,KAAK,CAAC;AACzC,IAAA;AACF,EAAA;AAEA,EAAA,IAAMC,QAAQ,GAAGlB,MAAM,CAACmB,UAAU;AAClC,EAAA,KAAK,IAAIR,CAAC,GAAG,CAAC,EAAEC,GAAG,GAAGM,QAAQ,CAACL,MAAM,EAAEF,CAAC,GAAGC,GAAG,EAAED,CAAC,EAAE,EAAE;AACnDL,IAAAA,GAAG,CAACc,WAAW,CAACF,QAAQ,CAACP,CAAC,CAAE,CAACU,SAAS,CAAC,IAAI,CAAC,CAAC;AAC/C,EAAA;AAEA,EAAA,OAAOf,GAAG;AACZ,CAAC;;AC7BD,IAAMgB,KAAK,GAAG,IAAIC,GAAG,EAA6C;;ACGlE,IAAMC,QAAQ,GAAG,UAACC,SAAwB,EAAA;AACxC,EAAA,OAAAA,SAAS,CAACJ,SAAS,CAAC,IAAI,CAAkB;AAA1C,CAA0C;;ACJ5C,IAAMK,OAAO,GAAG,YAAA;AAAM,EAAA,OAAAC,MAAM,CAACC,QAAQ,CAACC,QAAQ,KAAK,OAAO;AAApC,CAAoC;;ACG1D,IAAMC,eAAe,GAAG,UACtBC,GAAW,EACXC,0BAAmC,EACnCC,QAAoE,EAAA;AAEpE,EAAA,IAAMC,WAAW,GAAG,IAAIC,cAAc,EAAE;EAExCD,WAAW,CAACE,kBAAkB,GAAG,YAAA;IAC/B,IAAI;AAKF,MAAA,IAAI,CAAC,QAAQ,CAACC,IAAI,CAACN,GAAG,CAAC,IAAIG,WAAW,CAACI,UAAU,KAAK,CAAC,EAAE;AACvD,QAAA,IAAMC,aAAW,GAAGL,WAAW,CAACM,iBAAiB,CAAC,cAAc,CAAC;QACjE,IAAI,CAACD,aAAW,EAAE;AAChB,UAAA,MAAM,IAAIE,KAAK,CAAC,wBAAwB,CAAC;AAC3C,QAAA;AAEQ,QAAA,IAAAC,IAAI,GAAKC,iBAAgB,CAACJ,aAAW,CAAC,CAAAG,IAAlC;QACZ,IAAI,EAAEA,IAAI,KAAK,eAAe,IAAIA,IAAI,KAAK,YAAY,CAAC,EAAE;UACxD,MAAM,IAAID,KAAK,CAAC,wBAAA,CAAAG,MAAA,CAAyBF,IAAI,CAAE,CAAC;AAClD,QAAA;AACF,MAAA;AAEA,MAAA,IAAIR,WAAW,CAACI,UAAU,KAAK,CAAC,EAAE;QAChC,IAAIJ,WAAW,CAACW,MAAM,KAAK,GAAG,IAAIX,WAAW,CAACY,WAAW,KAAK,IAAI,EAAE;AAClE,UAAA,MAAM,IAAIL,KAAK,CACbf,OAAO,EAAE,GACL,6DAA6D,GAC3D,2DAA2D,GAC3D,0BAA0B,GAC5B,2BAA2B,GAAGK,GAAG,CACtC;AACH,QAAA;AAGA,QAAA,IACEG,WAAW,CAACW,MAAM,KAAK,GAAG,IACzBnB,OAAO,EAAE,IAAIQ,WAAW,CAACW,MAAM,KAAK,CAAE,EACvC;AACAZ,UAAAA,QAAQ,CAAC,IAAI,EAAEC,WAAW,CAAC;AAC7B,QAAA,CAAC,MAAM;AACL,UAAA,MAAM,IAAIO,KAAK,CACb,yCAAyC,GACvCP,WAAW,CAACW,MAAM,GAClB,GAAG,GACHX,WAAW,CAACa,UAAU,CACzB;AACH,QAAA;AACF,MAAA;IACF,CAAC,CAAC,OAAOC,KAAK,EAAE;MACdd,WAAW,CAACe,KAAK,EAAE;MACnB,IAAID,KAAK,YAAYP,KAAK,EAAE;AAC1BR,QAAAA,QAAQ,CAACe,KAAK,EAAEd,WAAW,CAAC;AAC9B,MAAA,CAAC,MAAM;AACL,QAAA,MAAMc,KAAK;AACb,MAAA;AACF,IAAA;EACF,CAAC;AAEDd,EAAAA,WAAW,CAACgB,IAAI,CAAC,KAAK,EAAEnB,GAAG,CAAC;EAE5BG,WAAW,CAACiB,eAAe,GAAGnB,0BAA0B;EAIxD,IAAIE,WAAW,CAACkB,gBAAgB,EAAE;AAChClB,IAAAA,WAAW,CAACkB,gBAAgB,CAAC,eAAe,CAAC;AAC/C,EAAA;EAEAlB,WAAW,CAACmB,IAAI,EAAE;AACpB,CAAC;;ACvED,IAAMC,YAAY,GAA8B,EAAE;AAE3C,IAAMC,YAAY,GAAG,UAACxB,GAAW,EAAEE,QAAiB,EAAA;;AACzD,EAAA,CAAAuB,EAAA,GAAAF,YAAY,CAACvB,GAAG,CAAA,MAAA,IAAA,IAAAyB,EAAA,KAAA,MAAA,GAAAA,EAAA,GAAhBF,YAAY,CAACvB,GAAG,IAAM,EAAE;AACxBuB,EAAAA,YAAY,CAACvB,GAAG,CAAE,CAAC0B,IAAI,CAACxB,QAAQ,CAAC;AACnC,CAAC;AAEM,IAAMyB,mBAAmB,GAAG,UAAC3B,GAAW,EAAA;AAC7C,EAAA,IAAM4B,SAAS,GAAGL,YAAY,CAACvB,GAAG,CAAC;EACnC,IAAI,CAAC4B,SAAS,EAAE;AACd,IAAA;AACF,EAAA;AAEShD,EAAAA,IAAAA,OAAAA,GAAAA,UAAAA,CAAC,EAAMC,GAAG,EAAA;AAEjBgD,IAAAA,UAAU,CAAC,YAAA;MACT,IAAIC,KAAK,CAACC,OAAO,CAACR,YAAY,CAACvB,GAAG,CAAC,CAAC,EAAE;AACpC,QAAA,IAAMgC,UAAU,GAAGzC,KAAK,CAAC0C,GAAG,CAACjC,GAAG,CAAC;AACjC,QAAA,IAAME,QAAQ,GAAG0B,SAAS,CAAChD,CAAC,CAAC;QAG7B,IAAI,CAACsB,QAAQ,EAAE;AACb,UAAA;AACF,QAAA;QAEA,IAAI8B,UAAU,YAAYE,aAAa,EAAE;AACvChC,UAAAA,QAAQ,CAAC,IAAI,EAAET,QAAQ,CAACuC,UAAU,CAAC,CAAC;AACtC,QAAA;QAEA,IAAIA,UAAU,YAAYtB,KAAK,EAAE;UAC/BR,QAAQ,CAAC8B,UAAU,CAAC;AACtB,QAAA;AAEA,QAAA,IAAIpD,CAAC,KAAKgD,SAAS,CAAC9C,MAAM,GAAG,CAAC,EAAE;UAC9B,OAAOyC,YAAY,CAACvB,GAAG,CAAC;AAC1B,QAAA;AACF,MAAA;IACF,CAAC,EAAE,CAAC,CAAC;;AAxBP,EAAA,KAAK,IAAIpB,CAAC,GAAG,CAAC,EAAEC,GAAG,GAAG+C,SAAS,CAAC9C,MAAM,EAAEF,CAAC,GAAGC,GAAG,EAAED,CAAC,EAAE,EAAA;AAA3CA,IAAAA,OAAAA,CAAAA,CAAU,CAAA;;AA0BrB,CAAC;;ACrCD,IAAMuD,aAAa,GAAG,UACpBnC,GAAW,EACXC,0BAAmC,EACnCC,QAAiB,EAAA;AAEjB,EAAA,IAAIX,KAAK,CAAC6C,GAAG,CAACpC,GAAG,CAAC,EAAE;AAClB,IAAA,IAAMgC,UAAU,GAAGzC,KAAK,CAAC0C,GAAG,CAACjC,GAAG,CAAC;IAEjC,IAAIgC,UAAU,KAAKK,SAAS,EAAE;AAC5Bb,MAAAA,YAAY,CAACxB,GAAG,EAAEE,QAAQ,CAAC;AAC3B,MAAA;AACF,IAAA;IAGA,IAAI8B,UAAU,YAAYE,aAAa,EAAE;AACvChC,MAAAA,QAAQ,CAAC,IAAI,EAAET,QAAQ,CAACuC,UAAU,CAAC,CAAC;AACpC,MAAA;AACF,IAAA;AAGF,EAAA;AAGAzC,EAAAA,KAAK,CAAC+C,GAAG,CAACtC,GAAG,EAAEqC,SAAS,CAAC;AACzBb,EAAAA,YAAY,CAACxB,GAAG,EAAEE,QAAQ,CAAC;EAE3BH,eAAe,CAACC,GAAG,EAAEC,0BAA0B,EAAE,UAACgB,KAAK,EAAEd,WAAW,EAAA;;AAClE,IAAA,IAAIc,KAAK,EAAE;AACT1B,MAAAA,KAAK,CAAC+C,GAAG,CAACtC,GAAG,EAAEiB,KAAK,CAAC;AACvB,IAAA,CAAC,MAAM,IACL,CAAA,CAAAQ,EAAA,GAAAtB,WAAW,CAACY,WAAW,MAAA,IAAA,IAAAU,EAAA,uBAAAA,EAAA,CAAEc,eAAe,aAAYL,aAAa,EACjE;MACA3C,KAAK,CAAC+C,GAAG,CAACtC,GAAG,EAAEG,WAAW,CAACY,WAAW,CAACwB,eAAe,CAAC;AACzD,IAAA;IACAZ,mBAAmB,CAAC3B,GAAG,CAAC;AAC1B,EAAA,CAAC,CAAC;AACJ,CAAC;;ACvCD,IAAMwC,eAAe,GAAG,UACtBxC,GAAW,EACXC,0BAAmC,EACnCC,QAAiB,EAAA;EAEjBH,eAAe,CAACC,GAAG,EAAEC,0BAA0B,EAAE,UAACgB,KAAK,EAAEd,WAAW,EAAA;;AAClE,IAAA,IAAIc,KAAK,EAAE;MACTf,QAAQ,CAACe,KAAK,CAAC;AACjB,IAAA,CAAC,MAAM,IACL,CAAA,CAAAQ,EAAA,GAAAtB,WAAW,CAACY,WAAW,MAAA,IAAA,IAAAU,EAAA,uBAAAA,EAAA,CAAEc,eAAe,aAAYL,aAAa,EACjE;MACAhC,QAAQ,CAAC,IAAI,EAAEC,WAAW,CAACY,WAAW,CAACwB,eAAe,CAAC;AACzD,IAAA;AACF,EAAA,CAAC,CAAC;AACJ,CAAC;;ACjBD,IAAME,aAAa,GAAG,oBAAoB;AAK1C,IAAMC,YAAY,GAAG,UAAC1C,GAAW,EAAA;AAC/B,EAAA,IAAI,CAACA,GAAG,CAAC2C,UAAU,CAACF,aAAa,CAAC,EAAE;AAClC,IAAA,OAAO,IAAI;AACb,EAAA;EAEA,IAAMG,IAAI,GAAG5C,GAAG,CAAC6C,KAAK,CAACJ,aAAa,CAAC3D,MAAM,CAAC;AAE5C,EAAA,IAAIgE,SAAiB;AAErB,EAAA,IAAIF,IAAI,CAACD,UAAU,CAAC,UAAU,CAAC,EAAE;IAC/B,IAAI;MACFG,SAAS,GAAGC,IAAI,CAACH,IAAI,CAACC,KAAK,CAAC,UAAU,CAAC/D,MAAM,CAAC,CAAC;IACjD,CAAC,CAAC,OAAA2C,EAAA,EAAM;AACN,MAAA,OAAO,IAAIf,KAAK,CAAC,4BAA4B,CAAC;AAChD,IAAA;EACF,CAAC,MAAM,IAAIkC,IAAI,CAACD,UAAU,CAAC,GAAG,CAAC,EAAE;IAC/B,IAAI;MACFG,SAAS,GAAGE,kBAAkB,CAACJ,IAAI,CAACC,KAAK,CAAC,GAAG,CAAC/D,MAAM,CAAC,CAAC;IACxD,CAAC,CAAC,OAAAmE,EAAA,EAAM;AACN,MAAA,OAAO,IAAIvC,KAAK,CAAC,8BAA8B,CAAC;AAClD,IAAA;EACF,CAAC,MAAM,IAAIkC,IAAI,CAACD,UAAU,CAAC,iBAAiB,CAAC,EAAE;IAE7C,IAAI;MACFG,SAAS,GAAGE,kBAAkB,CAACJ,IAAI,CAACC,KAAK,CAAC,iBAAiB,CAAC/D,MAAM,CAAC,CAAC;IACtE,CAAC,CAAC,OAAAoE,EAAA,EAAM;AACN,MAAA,OAAO,IAAIxC,KAAK,CAAC,8BAA8B,CAAC;AAClD,IAAA;AACF,EAAA,CAAC,MAAM;AACL,IAAA,OAAO,IAAIA,KAAK,CAAC,6BAA6B,CAAC;AACjD,EAAA;EAEA,IAAMyC,GAAG,GAAG,IAAIC,SAAS,EAAE,CAACC,eAAe,CAACP,SAAS,EAAE,eAAe,CAAC;AAIvE,EAAA,IAAMQ,WAAW,GAAGH,GAAG,CAACjF,aAAa,CAAC,aAAa,CAAC;AACpD,EAAA,IAAIoF,WAAW,EAAE;IACf,OAAO,IAAI5C,KAAK,CACd,4BAA4B,GAAG4C,WAAW,CAACC,WAAW,CAACC,IAAI,EAAE,CAC9D;AACH,EAAA;AAEA,EAAA,IAAI,EAAEL,GAAG,CAACZ,eAAe,YAAYL,aAAa,CAAC,EAAE;AACnD,IAAA,OAAO,IAAIxB,KAAK,CAAC,8CAA8C,CAAC;AAClE,EAAA;EAEA,OAAOyC,GAAG,CAACZ,eAAe;AAC5B,CAAC;;ACrDD,IAAIkB,SAAS,GAAG,CAAC;AACjB,IAAMC,QAAQ,GAAG,YAAA;AAAM,EAAA,OAAA,EAAED,SAAS;AAAX,CAAW;;ACWlC,IAAME,gBAAgB,GAAkB,EAAE;AAC1C,IAAMC,UAAU,GAA4B,EAAE;AAC9C,IAAM/F,YAAY,GAAG,4BAA4B;AACjD,IAAMgG,cAAc,GAAG,8BAA8B;AAErD,IAAMC,aAAa,GAAG,UACpBC,EAA4B,EAC5BC,WAAwB,EACxBC,qBAA8B,EAC9BC,aAAsB,EACtBjE,0BAAmC,EACnCkE,UAAsB,EACtBjE,QAAiB,EAAA;;EAEjB,IAAMkE,KAAK,GAAG,CAAA3C,EAAA,GAAAsC,EAAE,CAACM,YAAY,CAAC,UAAU,CAAC,MAAA,IAAA,IAAA5C,EAAA,cAAAA,EAAA,GAAIsC,EAAE,CAACM,YAAY,CAAC,KAAK,CAAC;EAEnE,IAAI,CAACD,KAAK,EAAE;AACVlE,IAAAA,QAAQ,CAAC,IAAIQ,KAAK,CAAC,mCAAmC,CAAC,CAAC;AACxD,IAAA;AACF,EAAA;EAEA,IAAIiD,gBAAgB,CAACW,OAAO,CAACP,EAAE,CAAC,KAAK,EAAE,EAAE;IACvCJ,gBAAgB,CAACY,MAAM,CAACZ,gBAAgB,CAACW,OAAO,CAACP,EAAE,CAAC,EAAE,CAAC,CAAC;AAGtDA,IAAAA,EAAkB,GAAG,IAAI;AAC3B,IAAA;AACF,EAAA;AAEAJ,EAAAA,gBAAgB,CAACjC,IAAI,CAACqC,EAAE,CAAC;AAGzBA,EAAAA,EAAE,CAAC9E,YAAY,CAAC,KAAK,EAAE,EAAE,CAAC;AAI1B,EAAA,IAAMuF,SAAS,GAAGJ,KAAK,CAACE,OAAO,CAAC,GAAG,CAAC;AACpC,EAAA,IAAMG,OAAO,GAAGD,SAAS,KAAK,EAAE,GAAGJ,KAAK,CAACvB,KAAK,CAAC,CAAC,EAAE2B,SAAS,CAAC,GAAGJ,KAAK;AACpE,EAAA,IAAMpG,QAAQ,GAAGwG,SAAS,KAAK,EAAE,GAAGJ,KAAK,CAACvB,KAAK,CAAC2B,SAAS,GAAG,CAAC,CAAC,GAAG,IAAI;AAKrE,EAAA,IAAME,aAAa,GAAGhC,YAAY,CAAC+B,OAAO,CAAC;EAC3C,IAAIC,aAAa,YAAYhE,KAAK,EAAE;IAClCiD,gBAAgB,CAACY,MAAM,CAACZ,gBAAgB,CAACW,OAAO,CAACP,EAAE,CAAC,EAAE,CAAC,CAAC;AACtDA,IAAAA,EAAkB,GAAG,IAAI;IAC3B7D,QAAQ,CAACwE,aAAa,CAAC;AACvB,IAAA;AACF,EAAA;AAEA,EAAA,IAAMC,eAAe,GAAG,UAAC1D,KAAmB,EAAE2D,SAAyB,EAAA;;IACrE,IAAI,CAACA,SAAS,EAAE;MACdjB,gBAAgB,CAACY,MAAM,CAACZ,gBAAgB,CAACW,OAAO,CAACP,EAAE,CAAC,EAAE,CAAC,CAAC;AACtDA,MAAAA,EAAkB,GAAG,IAAI;MAC3B7D,QAAQ,CAACe,KAAK,CAAC;AACf,MAAA;AACF,IAAA;IAEA,IAAI1C,GAAG,GAAGqG,SAAS;AAEnB,IAAA,IAAI5G,QAAQ,EAAE;AACZ,MAAA,IAAM6G,SAAS,GAAG/G,aAAa,CAAC8G,SAAS,EAAE5G,QAAQ,CAAC;MAEpD,IAAI,CAAC6G,SAAS,EAAE;QACdlB,gBAAgB,CAACY,MAAM,CAACZ,gBAAgB,CAACW,OAAO,CAACP,EAAE,CAAC,EAAE,CAAC,CAAC;AACtDA,QAAAA,EAAkB,GAAG,IAAI;AAC3B7D,QAAAA,QAAQ,CAAC,IAAIQ,KAAK,CAAC,YAAAG,MAAA,CAAW7C,QAAQ,EAAA,kBAAA,CAAA,CAAA6C,MAAA,CAAkB4D,OAAO,CAAE,CAAC,CAAC;AACnE,QAAA;AACF,MAAA;AAEAlG,MAAAA,GAAG,GAAGsG,SAAS;AACjB,IAAA;AAEA,IAAA,IAAMC,IAAI,GAAGf,EAAE,CAACM,YAAY,CAAC,IAAI,CAAC;AAClC,IAAA,IAAIS,IAAI,EAAE;AACRvG,MAAAA,GAAG,CAACU,YAAY,CAAC,IAAI,EAAE6F,IAAI,CAAC;AAC9B,IAAA;AAEA,IAAA,IAAMC,OAAO,GAAGhB,EAAE,CAACM,YAAY,CAAC,OAAO,CAAC;AACxC,IAAA,IAAIU,OAAO,EAAE;AACXxG,MAAAA,GAAG,CAACU,YAAY,CAAC,OAAO,EAAE8F,OAAO,CAAC;AACpC,IAAA;AAEA,IAAA,IAAMC,OAAO,GAAGjB,EAAE,CAACM,YAAY,CAAC,OAAO,CAAC;AACxC,IAAA,IAAIW,OAAO,EAAE;AACXzG,MAAAA,GAAG,CAACU,YAAY,CAAC,OAAO,EAAE+F,OAAO,CAAC;AACpC,IAAA;AAEA,IAAA,IAAMC,QAAQ,GAAGlB,EAAE,CAACM,YAAY,CAAC,QAAQ,CAAC;AAC1C,IAAA,IAAIY,QAAQ,EAAE;AACZ1G,MAAAA,GAAG,CAACU,YAAY,CAAC,QAAQ,EAAEgG,QAAQ,CAAC;AACtC,IAAA;AAEA,IAAA,IAAMC,aAAa,GAAGpD,KAAK,CAACqD,IAAI,CAC9B,IAAIC,GAAG,CAAAC,mBAAA,CAAAA,mBAAA,CAAAA,mBAAA,CAAA,EAAA,EACF,CAAC,CAAA5D,EAAA,GAAAlD,GAAG,CAAC8F,YAAY,CAAC,OAAO,CAAC,MAAA,IAAA,IAAA5C,EAAA,cAAAA,EAAA,GAAI,EAAE,EAAE6D,KAAK,CAAC,GAAG,CAAC,EAAA,IAAA,CAAA,EAAA,CAC/C,cAAc,WACX,CAAC,CAAArC,EAAA,GAAAc,EAAE,CAACM,YAAY,CAAC,OAAO,CAAC,cAAApB,EAAA,KAAA,MAAA,GAAAA,EAAA,GAAI,EAAE,EAAEqC,KAAK,CAAC,GAAG,CAAC,EAAA,IAAA,CAAA,CAC9C,CACH,CACEC,IAAI,CAAC,GAAG,CAAC,CACT/B,IAAI,EAAE;AACTjF,IAAAA,GAAG,CAACU,YAAY,CAAC,OAAO,EAAEiG,aAAa,CAAC;AAExC,IAAA,IAAMM,OAAO,GAAGzB,EAAE,CAACM,YAAY,CAAC,OAAO,CAAC;AACxC,IAAA,IAAImB,OAAO,EAAE;AACXjH,MAAAA,GAAG,CAACU,YAAY,CAAC,OAAO,EAAEuG,OAAO,CAAC;AACpC,IAAA;AAEAjH,IAAAA,GAAG,CAACU,YAAY,CAAC,UAAU,EAAEmF,KAAK,CAAC;AAEnC,IAAA,IAAMqB,MAAM,GAAW,EAAE,CAACC,MAAM,CAACC,IAAI,CAAC5B,EAAE,CAACpF,UAAU,EAAE,UAACiH,EAAQ,EAAA;AAC5D,MAAA,OAAO,iBAAiB,CAACtF,IAAI,CAACsF,EAAE,CAAC5G,IAAI,CAAC;AACxC,IAAA,CAAC,CAAC;IAEF8C,KAAK,CAAC+D,SAAS,CAACC,OAAO,CAACH,IAAI,CAACF,MAAM,EAAE,UAACM,QAAc,EAAA;AAElD,MAAA,IAAIA,QAAQ,CAAC/G,IAAI,IAAI+G,QAAQ,CAAC7G,KAAK,EAAE;QACnCX,GAAG,CAACU,YAAY,CAAC8G,QAAQ,CAAC/G,IAAI,EAAE+G,QAAQ,CAAC7G,KAAK,CAAC;AACjD,MAAA;AACF,IAAA,CAAC,CAAC;AAEF,IAAA,IAAI+E,qBAAqB,EAAE;AAQzB,MAAA,IAAM+B,0BAAwB,GAA6B;QACzDC,QAAQ,EAAE,CAAC,WAAW,CAAC;QACvB,eAAe,EAAE,CAAC,eAAe,CAAC;QAClCC,MAAM,EAAE,CAAC,QAAQ,CAAC;QAClBR,MAAM,EAAE,CAAC,QAAQ,CAAC;AAClBS,QAAAA,cAAc,EAAE,CAAC,MAAM,EAAE,QAAQ,CAAC;QAClCC,MAAM,EAAE,CAAC,QAAQ,EAAE,cAAc,EAAE,YAAY,EAAE,YAAY,CAAC;QAC9DC,IAAI,EAAE,CAAC,MAAM,CAAC;AACdC,QAAAA,IAAI,EAAE,EAAE;AACRC,QAAAA,OAAO,EAAE,CAAC,MAAM,EAAE,QAAQ,CAAC;AAC3BC,QAAAA,cAAc,EAAE,CAAC,MAAM,EAAE,QAAQ;AAClC,OAAA;AAED,MAAA,IAAMC,sBAAoB,GAAG,UAC3BvH,KAAa,EACbwH,QAAgC,EAAA;QAEhC,OAAOxH,KAAK,CAACyH,OAAO,CAClB,sCAAsC,EACtC,UAACC,KAAa,EAAEC,MAAc,EAAEC,KAAa,EAAA;AAC3C,UAAA,IAAMC,KAAK,GAAGL,QAAQ,CAACI,KAAK,CAAC;UAC7B,OAAOC,KAAK,GAAG,OAAA,CAAAlG,MAAA,CAAQkG,KAAK,EAAA,GAAA,CAAG,GAAGH,KAAK;AACzC,QAAA,CAAC,CACF;MACH,CAAC;AAED,MAAA,IAAMI,oBAAoB,GAAG,UAC3B9H,KAAa,EACbwH,QAAgC,EAAA;AAEhC,QAAA,IAAI,CAACxH,KAAK,CAACyD,UAAU,CAAC,GAAG,CAAC,EAAE;AAC1B,UAAA,OAAOzD,KAAK;AACd,QAAA;AAEA,QAAA,IAAM4H,KAAK,GAAG5H,KAAK,CAAC2D,KAAK,CAAC,CAAC,CAAC;AAC5B,QAAA,IAAMkE,KAAK,GAAGL,QAAQ,CAACI,KAAK,CAAC;AAC7B,QAAA,OAAOC,KAAK,GAAG,GAAG,GAAGA,KAAK,GAAG7H,KAAK;MACpC,CAAC;AAED,MAAA,IAAI+H,SAAe;AACnB,MAAA,IAAIC,UAA6B;AACjC,MAAA,IAAIC,YAAoB;AACxB,MAAA,IAAIC,WAAiB;AACrB,MAAA,IAAIC,OAAa;MAEjB,IAAMC,qBAAmB,GAIpB,EAAE;MACP,IAAMC,UAAQ,GAA2B,EAAE;MAE3CC,MAAM,CAACC,IAAI,CAACzB,0BAAwB,CAAC,CAACF,OAAO,CAAC,UAAC4B,GAAG,EAAA;AAChDT,QAAAA,SAAO,GAAGS,GAAG;QACbR,UAAQ,GAAG3I,GAAG,CAACoJ,gBAAgB,CAACV,SAAO,GAAG,MAAM,CAAC;AACjD,QAAA,KAAK,IAAIW,CAAC,GAAG,CAAC,EAAEC,WAAW,GAAGX,UAAQ,CAACpI,MAAM,EAAE8I,CAAC,GAAGC,WAAW,EAAED,CAAC,EAAE,EAAE;AACnE,UAAA,IAAME,cAAc,GAAGZ,UAAQ,CAACU,CAAC,CAAE;UACnCR,WAAS,GAAGU,cAAc,CAACC,EAAE;AAC7BV,UAAAA,OAAK,GAAGD,WAAS,GAAG,GAAG,GAAG1D,QAAQ,EAAE;AAEpC6D,UAAAA,UAAQ,CAACH,WAAS,CAAC,GAAGC,OAAK;UAC3BC,qBAAmB,CAAC5F,IAAI,CAAC;AACvBsG,YAAAA,OAAO,EAAEF,cAAc;AACvBG,YAAAA,SAAS,EAAAb,WAAA;AACTL,YAAAA,KAAK,EAAAM;WACN,CAAC;AACJ,QAAA;AACF,MAAA,CAAC,CAAC;MAEFG,MAAM,CAACC,IAAI,CAACzB,0BAAwB,CAAC,CAACF,OAAO,CAAC,UAAC4B,GAAG,EAAA;AAChDP,QAAAA,YAAU,GAAGnB,0BAAwB,CAAC0B,GAAG,CAAE;AAE3C,QAAA,IAAIQ,mBAAwC;QAC5CpG,KAAK,CAAC+D,SAAS,CAACC,OAAO,CAACH,IAAI,CAACwB,YAAU,EAAE,UAACgB,QAAgB,EAAA;UACxDD,mBAAmB,GAAG3J,GAAG,CAACoJ,gBAAgB,CAAC,GAAG,GAAGQ,QAAQ,GAAG,GAAG,CAAC;AAChE,UAAA,KACE,IAAIC,CAAC,GAAG,CAAC,EAAEC,qBAAqB,GAAGH,mBAAmB,CAACpJ,MAAM,EAC7DsJ,CAAC,GAAGC,qBAAqB,EACzBD,CAAC,EAAE,EACH;AACA,YAAA,IAAME,kBAAkB,GAAGJ,mBAAmB,CAACE,CAAC,CAAE;AAClD,YAAA,IAAMG,SAAS,GACbD,kBAAkB,CAACjE,YAAY,CAAC8D,QAAQ,CAAC;AAE3C,YAAA,IAAII,SAAS,EAAE;AACb,cAAA,IAAMC,SAAS,GAAG/B,sBAAoB,CAAC8B,SAAS,EAAEhB,UAAQ,CAAC;cAC3D,IAAIiB,SAAS,KAAKD,SAAS,EAAE;AAC3BD,gBAAAA,kBAAkB,CAACrJ,YAAY,CAACkJ,QAAQ,EAAEK,SAAS,CAAC;AACtD,cAAA;AACF,YAAA;AACF,UAAA;AACF,QAAA,CAAC,CAAC;AACJ,MAAA,CAAC,CAAC;AAEF,MAAA,IAAMC,QAAQ,GAAGlK,GAAG,CAACoJ,gBAAgB,CAAC,GAAG,CAAC;AAC1C,MAAA,KAAK,IAAIe,CAAC,GAAG,CAAC,EAAEC,WAAW,GAAGF,QAAQ,CAAC3J,MAAM,EAAE4J,CAAC,GAAGC,WAAW,EAAED,CAAC,EAAE,EAAE;AACnE,QAAA,IAAME,IAAI,GAAGH,QAAQ,CAACC,CAAC,CAAE;AACzB,QAAA,IAAMG,IAAI,GAAGD,IAAI,CAACvE,YAAY,CAAC,MAAM,CAAC;AACtC,QAAA,IAAIwE,IAAI,EAAE;AACR,UAAA,IAAMC,QAAQ,GAAG9B,oBAAoB,CAAC6B,IAAI,EAAEtB,UAAQ,CAAC;UACrD,IAAIuB,QAAQ,KAAKD,IAAI,EAAE;AACrBD,YAAAA,IAAI,CAAC3J,YAAY,CAAC,MAAM,EAAE6J,QAAQ,CAAC;AACrC,UAAA;AACF,QAAA;QAEA,IAAMC,SAAS,GAAGH,IAAI,CAACI,cAAc,CAACnF,cAAc,EAAE,MAAM,CAAC;AAC7D,QAAA,IAAIkF,SAAS,EAAE;AACb,UAAA,IAAME,aAAa,GAAGjC,oBAAoB,CAAC+B,SAAS,EAAExB,UAAQ,CAAC;UAC/D,IAAI0B,aAAa,KAAKF,SAAS,EAAE;YAC/BH,IAAI,CAACM,cAAc,CAACrF,cAAc,EAAE,MAAM,EAAEoF,aAAa,CAAC;AAC5D,UAAA;AACF,QAAA;AACF,MAAA;AAEA,MAAA,IAAME,aAAa,GAAG5K,GAAG,CAACoJ,gBAAgB,CAAC,SAAS,CAAC;AACrD,MAAA,KACE,IAAIyB,CAAC,GAAG,CAAC,EAAEC,gBAAgB,GAAGF,aAAa,CAACrK,MAAM,EAClDsK,CAAC,GAAGC,gBAAgB,EACpBD,CAAC,EAAE,EACH;AACA,QAAA,IAAME,YAAY,GAAGH,aAAa,CAACC,CAAC,CAAE;AACtC,QAAA,IAAMG,UAAU,GAAGD,YAAY,CAACjF,YAAY,CAAC,OAAO,CAAC;AAErD,QAAA,IAAIkF,UAAU,EAAE;AACd,UAAA,IAAMC,cAAc,GAAG/C,sBAAoB,CAAC8C,UAAU,EAAEhC,UAAQ,CAAC;UACjE,IAAIiC,cAAc,KAAKD,UAAU,EAAE;AACjCD,YAAAA,YAAY,CAACrK,YAAY,CAAC,OAAO,EAAEuK,cAAc,CAAC;AACpD,UAAA;AACF,QAAA;AACF,MAAA;AAEA,MAAA,IAAMC,gBAAgB,GAAGlL,GAAG,CAACoJ,gBAAgB,CAAC,OAAO,CAAC;AACtD,MAAA,KACE,IAAI+B,CAAC,GAAG,CAAC,EAAEC,mBAAmB,GAAGF,gBAAgB,CAAC3K,MAAM,EACxD4K,CAAC,GAAGC,mBAAmB,EACvBD,CAAC,EAAE,EACH;AACA,QAAA,IAAME,eAAe,GAAGH,gBAAgB,CAACC,CAAC,CAAE;AAC5C,QAAA,IAAMnG,WAAW,GAAGqG,eAAe,CAACrG,WAAW;AAE/C,QAAA,IAAIA,WAAW,EAAE;AACf,UAAA,IAAMsG,eAAe,GAAGpD,sBAAoB,CAAClD,WAAW,EAAEgE,UAAQ,CAAC;UACnE,IAAIsC,eAAe,KAAKtG,WAAW,EAAE;YACnCqG,eAAe,CAACrG,WAAW,GAAGsG,eAAe;AAC/C,UAAA;AACF,QAAA;AACF,MAAA;AAEA,MAAA,KACE,IAAIC,CAAC,GAAG,CAAC,EAAEC,sBAAsB,GAAGzC,qBAAmB,CAACxI,MAAM,EAC9DgL,CAAC,GAAGC,sBAAsB,EAC1BD,CAAC,EAAE,EACH;AACAxC,QAAAA,qBAAmB,CAACwC,CAAC,CAAE,CAAC9B,OAAO,CAACD,EAAE,GAAGT,qBAAmB,CAACwC,CAAC,CAAE,CAAC/C,KAAK;AACpE,MAAA;AACF,IAAA;AAGAxI,IAAAA,GAAG,CAACyL,eAAe,CAAC,SAAS,CAAC;AAK9B,IAAA,IAAMC,OAAO,GAAG1L,GAAG,CAACoJ,gBAAgB,CAAC,QAAQ,CAAC;IAC9C,IAAMuC,aAAa,GAAa,EAAE;AAClC,IAAA,IAAIC,MAAqB;AACzB,IAAA,IAAIC,UAAyB;AAE7B,IAAA,KAAK,IAAIxL,CAAC,GAAG,CAAC,EAAEyL,UAAU,GAAGJ,OAAO,CAACnL,MAAM,EAAEF,CAAC,GAAGyL,UAAU,EAAEzL,CAAC,EAAE,EAAE;AAChE,MAAA,IAAM0L,aAAa,GAAGL,OAAO,CAACrL,CAAC,CAAE;AACjCwL,MAAAA,UAAU,GAAGE,aAAa,CAACjG,YAAY,CAAC,MAAM,CAAC;AAK/C,MAAA,IACE,CAAC+F,UAAU,IACXA,UAAU,KAAK,wBAAwB,IACvCA,UAAU,KAAK,wBAAwB,IACvCA,UAAU,KAAK,iBAAiB,EAChC;AACAD,QAAAA,MAAM,GAAGG,aAAa,CAACC,SAAS,IAAID,aAAa,CAAC/G,WAAW;AAG7D,QAAA,IAAI4G,MAAM,EAAE;AACVD,UAAAA,aAAa,CAACxI,IAAI,CAACyI,MAAM,CAAC;AAC5B,QAAA;AAEA5L,QAAAA,GAAG,CAACiM,WAAW,CAACF,aAAa,CAAC;AAChC,MAAA;AACF,IAAA;IAEA,IACEJ,aAAa,CAACpL,MAAM,GAAG,CAAC,KACvBkF,WAAW,KAAK,QAAQ,IACtBA,WAAW,KAAK,MAAM,IAAI,CAACJ,UAAU,CAACQ,KAAK,CAAE,CAAC,EACjD;AACA,MAAA,KACE,IAAIqG,CAAC,GAAG,CAAC,EAAEC,gBAAgB,GAAGR,aAAa,CAACpL,MAAM,EAClD2L,CAAC,GAAGC,gBAAgB,EACpBD,CAAC,EAAE,EACH;QAIA,IAAIE,QAAQ,CAACT,aAAa,CAACO,CAAC,CAAE,CAAC,CAAC7K,MAAM,CAAC;AACzC,MAAA;AAEAgE,MAAAA,UAAU,CAACQ,KAAK,CAAC,GAAG,IAAI;AAC1B,IAAA;AAKA,IAAA,IAAMwG,SAAS,GAAGrM,GAAG,CAACoJ,gBAAgB,CAAC,OAAO,CAAC;IAC/C7F,KAAK,CAAC+D,SAAS,CAACC,OAAO,CAACH,IAAI,CAACiF,SAAS,EAAE,UAACC,QAA0B,EAAA;MACjEA,QAAQ,CAACtH,WAAW,IAAI,EAAE;AAC5B,IAAA,CAAC,CAAC;AAEFhF,IAAAA,GAAG,CAACU,YAAY,CAAC,OAAO,EAAEpB,YAAY,CAAC;AACvCU,IAAAA,GAAG,CAACU,YAAY,CAAC,aAAa,EAAE4E,cAAc,CAAC;IAE/CM,UAAU,CAAC5F,GAAG,CAAC;AAEf,IAAA,IAAI,CAACwF,EAAE,CAAC+G,UAAU,EAAE;MAClBnH,gBAAgB,CAACY,MAAM,CAACZ,gBAAgB,CAACW,OAAO,CAACP,EAAE,CAAC,EAAE,CAAC,CAAC;AACtDA,MAAAA,EAAkB,GAAG,IAAI;AAC3B7D,MAAAA,QAAQ,CAAC,IAAIQ,KAAK,CAAC,qBAAqB,CAAC,CAAC;AAC1C,MAAA;AACF,IAAA;IAEAqD,EAAE,CAAC+G,UAAU,CAACC,YAAY,CAACxM,GAAG,EAAEwF,EAAE,CAAC;IACnCJ,gBAAgB,CAACY,MAAM,CAACZ,gBAAgB,CAACW,OAAO,CAACP,EAAE,CAAC,EAAE,CAAC,CAAC;AACtDA,IAAAA,EAAkB,GAAG,IAAI;AAE3B7D,IAAAA,QAAQ,CAAC,IAAI,EAAE3B,GAAG,CAAC;EACrB,CAAC;AAED,EAAA,IAAImG,aAAa,EAAE;AAIjB7C,IAAAA,UAAU,CAAC,YAAA;AACT8C,MAAAA,eAAe,CAAC,IAAI,EAAED,aAAa,CAAC;IACtC,CAAC,EAAE,CAAC,CAAC;AACL,IAAA;AACF,EAAA;AAEA,EAAA,IAAMsG,OAAO,GAAG9G,aAAa,GAAG/B,aAAa,GAAGK,eAAe;AAE/DwI,EAAAA,OAAO,CAACvG,OAAO,EAAExE,0BAA0B,EAAE0E,eAAe,CAAC;AAC/D,CAAC;;AC3XD,IAAMsG,WAAW,GAAG,UAClBC,QAAkB,EAClBzJ,EAQoB,EAAA;AARpBwB,EAAAA,IAAAA,EAAA,GAAAxB,EAAA,KAAA,MAAA,GAQkB,EAAE,GAAAA,EAAA;IAPlByB,EAAA,GAAAD,EAAA,CAAAkI,QAA0B;IAA1BA,QAAQ,GAAAjI,EAAA,KAAA,MAAA,GAAG,YAAA;AAAM,MAAA,OAAAb,SAAS;AAAT,IAAA,CAAS,GAAAa,EAAA;IAC1BkI,EAAA,GAAAnI,EAAA,CAAAoI,SAA2B;IAA3BA,SAAS,GAAAD,EAAA,KAAA,MAAA,GAAG,YAAA;AAAM,MAAA,OAAA/I,SAAS;AAAT,IAAA,CAAS,GAAA+I,EAAA;IAC3BE,EAAA,GAAArI,EAAA,CAAAkB,UAA4B;IAA5BA,UAAU,GAAAmH,EAAA,KAAA,MAAA,GAAG,YAAA;AAAM,MAAA,OAAAjJ,SAAS;AAAT,IAAA,CAAS,GAAAiJ,EAAA;IAC5BC,EAAA,GAAAtI,EAAA,CAAAiB,aAAoB;AAApBA,IAAAA,aAAa,GAAAqH,EAAA,KAAA,MAAA,GAAG,IAAI,GAAAA,EAAA;IACpBC,EAAA,GAAAvI,EAAA,CAAAe,WAAqB;AAArBA,IAAAA,WAAW,GAAAwH,EAAA,KAAA,MAAA,GAAG,OAAO,GAAAA,EAAA;IACrBC,EAAA,GAAAxI,EAAA,CAAAhD,0BAAkC;AAAlCA,IAAAA,0BAA0B,GAAAwL,EAAA,KAAA,MAAA,GAAG,KAAK,GAAAA,EAAA;IAClCC,EAAA,GAAAzI,EAAA,CAAAgB,qBAA4B;AAA5BA,IAAAA,qBAAqB,GAAAyH,EAAA,KAAA,MAAA,GAAG,IAAI,GAAAA,EAAA;AAG9B,EAAA,IAAIR,QAAQ,IAAI,QAAQ,IAAIA,QAAQ,EAAE;IACpC,IAAIS,gBAAc,GAAG,CAAC;AACtB,IAAA,KAAK,IAAI/M,CAAC,GAAG,CAAC,EAAEgN,CAAC,GAAGV,QAAQ,CAACpM,MAAM,EAAEF,CAAC,GAAGgN,CAAC,EAAEhN,CAAC,EAAE,EAAE;AAC/C,MAAA,IAAMoJ,OAAO,GAAGkD,QAAQ,CAACtM,CAAC,CAAC;MAC3B,IAAI,CAACoJ,OAAO,EAAE;AACZ,QAAA;AACF,MAAA;AACAlE,MAAAA,aAAa,CACXkE,OAAO,EACPhE,WAAW,EACXC,qBAAqB,EACrBC,aAAa,EACbjE,0BAA0B,EAC1BkE,UAAU,EACV,UAAClD,KAAK,EAAE1C,GAAG,EAAA;AACT8M,QAAAA,SAAS,CAACpK,KAAK,EAAE1C,GAAG,CAAC;AACrB,QAAA,IACE2M,QAAQ,IACR,QAAQ,IAAIA,QAAQ,IACpBA,QAAQ,CAACpM,MAAM,KAAK,EAAE6M,gBAAc,EACpC;UACAR,QAAQ,CAACQ,gBAAc,CAAC;AAC1B,QAAA;AACF,MAAA,CAAC,CACF;AACH,IAAA;EACF,CAAC,MAAM,IAAIT,QAAQ,EAAE;AACnBpH,IAAAA,aAAa,CACXoH,QAAQ,EACRlH,WAAW,EACXC,qBAAqB,EACrBC,aAAa,EACbjE,0BAA0B,EAC1BkE,UAAU,EACV,UAAClD,KAAK,EAAE1C,GAAG,EAAA;AACT8M,MAAAA,SAAS,CAACpK,KAAK,EAAE1C,GAAG,CAAC;MACrB4M,QAAQ,CAAC,CAAC,CAAC;AAEXD,MAAAA,QAAQ,GAAG,IAAI;AACjB,IAAA,CAAC,CACF;AACH,EAAA,CAAC,MAAM;IACLC,QAAQ,CAAC,CAAC,CAAC;AACb,EAAA;AACF;;;;"}
@@ -1,2 +1,2 @@
1
- "use strict";var tslib=require("tslib"),contentType=require("content-type"),svgNamespace$1="http://www.w3.org/2000/svg",extractSymbol=function(e,t){var r=e.querySelector("#"+CSS.escape(t));if("symbol"!==(null==r?void 0:r.tagName.toLowerCase()))return null;for(var n=document.createElementNS(svgNamespace$1,"svg"),i=r.attributes,a=0,l=i.length;a<l;a++){var o=i[a];"id"!==o.name&&n.setAttribute(o.name,o.value)}var s=r.childNodes;for(a=0,l=s.length;a<l;a++)n.appendChild(s[a].cloneNode(!0));return n},cache=new Map,cloneSvg=function(e){return e.cloneNode(!0)},isLocal=function(){return"file:"===window.location.protocol},makeAjaxRequest=function(e,t,r){var n=new XMLHttpRequest;n.onreadystatechange=function(){try{if(!/\.svg/i.test(e)&&2===n.readyState){var t=n.getResponseHeader("Content-Type");if(!t)throw new Error("Content type not found");var i=contentType.parse(t).type;if("image/svg+xml"!==i&&"text/plain"!==i)throw new Error("Invalid content type: ".concat(i))}if(4===n.readyState){if(404===n.status||null===n.responseXML)throw new Error(isLocal()?"Note: SVG injection ajax calls do not work locally without adjusting security settings in your browser. Or consider using a local webserver.":"Unable to load SVG file: "+e);if(!(200===n.status||isLocal()&&0===n.status))throw new Error("There was a problem injecting the SVG: "+n.status+" "+n.statusText);r(null,n)}}catch(e){if(n.abort(),!(e instanceof Error))throw e;r(e,n)}},n.open("GET",e),n.withCredentials=t,n.overrideMimeType&&n.overrideMimeType("image/svg+xml"),n.send()},requestQueue={},queueRequest=function(e,t){var r;null!==(r=requestQueue[e])&&void 0!==r||(requestQueue[e]=[]),requestQueue[e].push(t)},processRequestQueue=function(e){var t=requestQueue[e];if(t)for(var r=function(r,n){setTimeout((function(){if(Array.isArray(requestQueue[e])){var n=cache.get(e),i=t[r];if(!i)return;n instanceof SVGSVGElement&&i(null,cloneSvg(n)),n instanceof Error&&i(n),r===t.length-1&&delete requestQueue[e]}}),0)},n=0,i=t.length;n<i;n++)r(n)},loadSvgCached=function(e,t,r){if(cache.has(e)){var n=cache.get(e);if(void 0===n)return void queueRequest(e,r);if(n instanceof SVGSVGElement)return void r(null,cloneSvg(n))}cache.set(e,void 0),queueRequest(e,r),makeAjaxRequest(e,t,(function(t,r){var n;t?cache.set(e,t):(null===(n=r.responseXML)||void 0===n?void 0:n.documentElement)instanceof SVGSVGElement&&cache.set(e,r.responseXML.documentElement),processRequestQueue(e)}))},loadSvgUncached=function(e,t,r){makeAjaxRequest(e,t,(function(e,t){var n;e?r(e):(null===(n=t.responseXML)||void 0===n?void 0:n.documentElement)instanceof SVGSVGElement&&r(null,t.responseXML.documentElement)}))},idCounter=0,uniqueId=function(){return++idCounter},injectedElements=[],ranScripts={},svgNamespace="http://www.w3.org/2000/svg",xlinkNamespace="http://www.w3.org/1999/xlink",injectElement=function(e,t,r,n,i,a,l){var o,s=null!==(o=e.getAttribute("data-src"))&&void 0!==o?o:e.getAttribute("src");if(s){if(-1!==injectedElements.indexOf(e))return injectedElements.splice(injectedElements.indexOf(e),1),void(e=null);injectedElements.push(e),e.setAttribute("src","");var u=s.indexOf("#"),c=-1!==u?s.slice(0,u):s,d=-1!==u?s.slice(u+1):null;(n?loadSvgCached:loadSvgUncached)(c,i,(function(n,i){var o,u;if(!i)return injectedElements.splice(injectedElements.indexOf(e),1),e=null,void l(n);var v=i;if(d){var f=extractSymbol(i,d);if(!f)return injectedElements.splice(injectedElements.indexOf(e),1),e=null,void l(new Error('Symbol "'.concat(d,'" not found in ').concat(c)));v=f}var p=e.getAttribute("id");p&&v.setAttribute("id",p);var m=e.getAttribute("title");m&&v.setAttribute("title",m);var h=e.getAttribute("width");h&&v.setAttribute("width",h);var g=e.getAttribute("height");g&&v.setAttribute("height",g);var b=Array.from(new Set(tslib.__spreadArray(tslib.__spreadArray(tslib.__spreadArray([],(null!==(o=v.getAttribute("class"))&&void 0!==o?o:"").split(" "),!0),["injected-svg"],!1),(null!==(u=e.getAttribute("class"))&&void 0!==u?u:"").split(" "),!0))).join(" ").trim();v.setAttribute("class",b);var y=e.getAttribute("style");y&&v.setAttribute("style",y),v.setAttribute("data-src",s);var A=[].filter.call(e.attributes,(function(e){return/^data-\w[\w-]*$/.test(e.name)}));if(Array.prototype.forEach.call(A,(function(e){e.name&&e.value&&v.setAttribute(e.name,e.value)})),r){var w,S,E,q={clipPath:["clip-path"],"color-profile":["color-profile"],cursor:["cursor"],filter:["filter"],linearGradient:["fill","stroke"],marker:["marker","marker-start","marker-mid","marker-end"],mask:["mask"],path:[],pattern:["fill","stroke"],radialGradient:["fill","stroke"]},x=function(e,t){return e.replace(/url\((['"]?)\s*#([^\s'"\)]+)\s*\1\)/g,(function(e,r,n){var i=t[n];return i?"url(#".concat(i,")"):e}))},j=function(e,t){if(!e.startsWith("#"))return e;var r=t[e.slice(1)];return r?"#"+r:e},k=[],N={};Object.keys(q).forEach((function(e){for(var t=0,r=(w=v.querySelectorAll(e+"[id]")).length;t<r;t++){var n=w[t];E=(S=n.id)+"-"+uniqueId(),N[S]=E,k.push({element:n,currentId:S,newId:E})}})),Object.keys(q).forEach((function(e){var t;Array.prototype.forEach.call(q[e],(function(e){for(var r=0,n=(t=v.querySelectorAll("["+e+"]")).length;r<n;r++){var i=t[r],a=i.getAttribute(e);if(a){var l=x(a,N);l!==a&&i.setAttribute(e,l)}}}))}));for(var C=v.querySelectorAll("*"),G=0,V=C.length;G<V;G++){var R=C[G],I=R.getAttribute("href");if(I){var L=j(I,N);L!==I&&R.setAttribute("href",L)}var O=R.getAttributeNS(xlinkNamespace,"href");if(O){var T=j(O,N);T!==O&&R.setAttributeNS(xlinkNamespace,"href",T)}}for(var M=v.querySelectorAll("[style]"),Q=0,X=M.length;Q<X;Q++){var _=M[Q],U=_.getAttribute("style");if(U){var $=x(U,N);$!==U&&_.setAttribute("style",$)}}for(var H=v.querySelectorAll("style"),P=0,W=H.length;P<W;P++){var F=H[P],z=F.textContent;if(z){var B=x(z,N);B!==z&&(F.textContent=B)}}for(var D=0,J=k.length;D<J;D++)k[D].element.id=k[D].newId}v.removeAttribute("xmlns:a");for(var K,Y,Z=v.querySelectorAll("script"),ee=[],te=0,re=Z.length;te<re;te++){var ne=Z[te];(Y=ne.getAttribute("type"))&&"application/ecmascript"!==Y&&"application/javascript"!==Y&&"text/javascript"!==Y||((K=ne.innerText||ne.textContent)&&ee.push(K),v.removeChild(ne))}if(ee.length>0&&("always"===t||"once"===t&&!ranScripts[s])){for(var ie=0,ae=ee.length;ie<ae;ie++)new Function(ee[ie])(window);ranScripts[s]=!0}var le=v.querySelectorAll("style");if(Array.prototype.forEach.call(le,(function(e){e.textContent+=""})),v.setAttribute("xmlns",svgNamespace),v.setAttribute("xmlns:xlink",xlinkNamespace),a(v),!e.parentNode)return injectedElements.splice(injectedElements.indexOf(e),1),e=null,void l(new Error("Parent node is null"));e.parentNode.replaceChild(v,e),injectedElements.splice(injectedElements.indexOf(e),1),e=null,l(null,v)}))}else l(new Error("Invalid data-src or src attribute"))},SVGInjector=function(e,t){var r=void 0===t?{}:t,n=r.afterAll,i=void 0===n?function(){}:n,a=r.afterEach,l=void 0===a?function(){}:a,o=r.beforeEach,s=void 0===o?function(){}:o,u=r.cacheRequests,c=void 0===u||u,d=r.evalScripts,v=void 0===d?"never":d,f=r.httpRequestWithCredentials,p=void 0!==f&&f,m=r.renumerateIRIElements,h=void 0===m||m;if(e&&"length"in e)for(var g=0,b=0,y=e.length;b<y;b++){var A=e[b];A&&injectElement(A,v,h,c,p,s,(function(t,r){l(t,r),e&&"length"in e&&e.length===++g&&i(g)}))}else e?injectElement(e,v,h,c,p,s,(function(t,r){l(t,r),i(1),e=null})):i(0)};exports.SVGInjector=SVGInjector;
1
+ "use strict";var tslib=require("tslib"),contentType=require("content-type"),svgNamespace$1="http://www.w3.org/2000/svg",extractSymbol=function(e,t){var r=e.querySelector("#"+CSS.escape(t));if("symbol"!==(null==r?void 0:r.tagName.toLowerCase()))return null;for(var n=document.createElementNS(svgNamespace$1,"svg"),i=r.attributes,a=0,l=i.length;a<l;a++){var o=i[a];"id"!==o.name&&n.setAttribute(o.name,o.value)}var s=r.childNodes;for(a=0,l=s.length;a<l;a++)n.appendChild(s[a].cloneNode(!0));return n},cache=new Map,cloneSvg=function(e){return e.cloneNode(!0)},isLocal=function(){return"file:"===window.location.protocol},makeAjaxRequest=function(e,t,r){var n=new XMLHttpRequest;n.onreadystatechange=function(){try{if(!/\.svg/i.test(e)&&2===n.readyState){var t=n.getResponseHeader("Content-Type");if(!t)throw new Error("Content type not found");var i=contentType.parse(t).type;if("image/svg+xml"!==i&&"text/plain"!==i)throw new Error("Invalid content type: ".concat(i))}if(4===n.readyState){if(404===n.status||null===n.responseXML)throw new Error(isLocal()?"Note: SVG injection ajax calls do not work locally without adjusting security settings in your browser. Or consider using a local webserver.":"Unable to load SVG file: "+e);if(!(200===n.status||isLocal()&&0===n.status))throw new Error("There was a problem injecting the SVG: "+n.status+" "+n.statusText);r(null,n)}}catch(e){if(n.abort(),!(e instanceof Error))throw e;r(e,n)}},n.open("GET",e),n.withCredentials=t,n.overrideMimeType&&n.overrideMimeType("image/svg+xml"),n.send()},requestQueue={},queueRequest=function(e,t){var r;null!==(r=requestQueue[e])&&void 0!==r||(requestQueue[e]=[]),requestQueue[e].push(t)},processRequestQueue=function(e){var t=requestQueue[e];if(t)for(var r=function(r,n){setTimeout(function(){if(Array.isArray(requestQueue[e])){var n=cache.get(e),i=t[r];if(!i)return;n instanceof SVGSVGElement&&i(null,cloneSvg(n)),n instanceof Error&&i(n),r===t.length-1&&delete requestQueue[e]}},0)},n=0,i=t.length;n<i;n++)r(n)},loadSvgCached=function(e,t,r){if(cache.has(e)){var n=cache.get(e);if(void 0===n)return void queueRequest(e,r);if(n instanceof SVGSVGElement)return void r(null,cloneSvg(n))}cache.set(e,void 0),queueRequest(e,r),makeAjaxRequest(e,t,function(t,r){var n;t?cache.set(e,t):(null===(n=r.responseXML)||void 0===n?void 0:n.documentElement)instanceof SVGSVGElement&&cache.set(e,r.responseXML.documentElement),processRequestQueue(e)})},loadSvgUncached=function(e,t,r){makeAjaxRequest(e,t,function(e,t){var n;e?r(e):(null===(n=t.responseXML)||void 0===n?void 0:n.documentElement)instanceof SVGSVGElement&&r(null,t.responseXML.documentElement)})},dataUrlPrefix="data:image/svg+xml",parseDataUrl=function(e){if(!e.startsWith(dataUrlPrefix))return null;var t,r=e.slice(dataUrlPrefix.length);if(r.startsWith(";base64,"))try{t=atob(r.slice(8))}catch(e){return new Error("Invalid base64 in data URL")}else if(r.startsWith(","))try{t=decodeURIComponent(r.slice(1))}catch(e){return new Error("Invalid encoding in data URL")}else{if(!r.startsWith(";charset=utf-8,"))return new Error("Unsupported data URL format");try{t=decodeURIComponent(r.slice(15))}catch(e){return new Error("Invalid encoding in data URL")}}var n=(new DOMParser).parseFromString(t,"image/svg+xml"),i=n.querySelector("parsererror");return i?new Error("Data URL SVG parse error: "+i.textContent.trim()):n.documentElement instanceof SVGSVGElement?n.documentElement:new Error("Data URL did not contain a valid SVG element")},idCounter=0,uniqueId=function(){return++idCounter},injectedElements=[],ranScripts={},svgNamespace="http://www.w3.org/2000/svg",xlinkNamespace="http://www.w3.org/1999/xlink",injectElement=function(e,t,r,n,i,a,l){var o,s=null!==(o=e.getAttribute("data-src"))&&void 0!==o?o:e.getAttribute("src");if(s){if(-1!==injectedElements.indexOf(e))return injectedElements.splice(injectedElements.indexOf(e),1),void(e=null);injectedElements.push(e),e.setAttribute("src","");var c=s.indexOf("#"),u=-1!==c?s.slice(0,c):s,d=-1!==c?s.slice(c+1):null,f=parseDataUrl(u);if(f instanceof Error)return injectedElements.splice(injectedElements.indexOf(e),1),e=null,void l(f);var v=function(n,i){var o,c;if(!i)return injectedElements.splice(injectedElements.indexOf(e),1),e=null,void l(n);var f=i;if(d){var v=extractSymbol(i,d);if(!v)return injectedElements.splice(injectedElements.indexOf(e),1),e=null,void l(new Error('Symbol "'.concat(d,'" not found in ').concat(u)));f=v}var m=e.getAttribute("id");m&&f.setAttribute("id",m);var p=e.getAttribute("title");p&&f.setAttribute("title",p);var h=e.getAttribute("width");h&&f.setAttribute("width",h);var g=e.getAttribute("height");g&&f.setAttribute("height",g);var y=Array.from(new Set(tslib.__spreadArray(tslib.__spreadArray(tslib.__spreadArray([],(null!==(o=f.getAttribute("class"))&&void 0!==o?o:"").split(" "),!0),["injected-svg"],!1),(null!==(c=e.getAttribute("class"))&&void 0!==c?c:"").split(" "),!0))).join(" ").trim();f.setAttribute("class",y);var E=e.getAttribute("style");E&&f.setAttribute("style",E),f.setAttribute("data-src",s);var b=[].filter.call(e.attributes,function(e){return/^data-\w[\w-]*$/.test(e.name)});if(Array.prototype.forEach.call(b,function(e){e.name&&e.value&&f.setAttribute(e.name,e.value)}),r){var w,A,S,x={clipPath:["clip-path"],"color-profile":["color-profile"],cursor:["cursor"],filter:["filter"],linearGradient:["fill","stroke"],marker:["marker","marker-start","marker-mid","marker-end"],mask:["mask"],path:[],pattern:["fill","stroke"],radialGradient:["fill","stroke"]},j=function(e,t){return e.replace(/url\((['"]?)\s*#([^\s'"\)]+)\s*\1\)/g,function(e,r,n){var i=t[n];return i?"url(#".concat(i,")"):e})},q=function(e,t){if(!e.startsWith("#"))return e;var r=t[e.slice(1)];return r?"#"+r:e},k=[],G={};Object.keys(x).forEach(function(e){for(var t=0,r=(w=f.querySelectorAll(e+"[id]")).length;t<r;t++){var n=w[t];S=(A=n.id)+"-"+uniqueId(),G[A]=S,k.push({element:n,currentId:A,newId:S})}}),Object.keys(x).forEach(function(e){var t;Array.prototype.forEach.call(x[e],function(e){for(var r=0,n=(t=f.querySelectorAll("["+e+"]")).length;r<n;r++){var i=t[r],a=i.getAttribute(e);if(a){var l=j(a,G);l!==a&&i.setAttribute(e,l)}}})});for(var R=f.querySelectorAll("*"),C=0,N=R.length;C<N;C++){var V=R[C],I=V.getAttribute("href");if(I){var U=q(I,G);U!==I&&V.setAttribute("href",U)}var L=V.getAttributeNS(xlinkNamespace,"href");if(L){var O=q(L,G);O!==L&&V.setAttributeNS(xlinkNamespace,"href",O)}}for(var T=f.querySelectorAll("[style]"),M=0,Q=T.length;M<Q;M++){var P=T[M],W=P.getAttribute("style");if(W){var X=j(W,G);X!==W&&P.setAttribute("style",X)}}for(var _=f.querySelectorAll("style"),D=0,$=_.length;D<$;D++){var F=_[D],H=F.textContent;if(H){var z=j(H,G);z!==H&&(F.textContent=z)}}for(var B=0,J=k.length;B<J;B++)k[B].element.id=k[B].newId}f.removeAttribute("xmlns:a");for(var K,Y,Z=f.querySelectorAll("script"),ee=[],te=0,re=Z.length;te<re;te++){var ne=Z[te];(Y=ne.getAttribute("type"))&&"application/ecmascript"!==Y&&"application/javascript"!==Y&&"text/javascript"!==Y||((K=ne.innerText||ne.textContent)&&ee.push(K),f.removeChild(ne))}if(ee.length>0&&("always"===t||"once"===t&&!ranScripts[s])){for(var ie=0,ae=ee.length;ie<ae;ie++)new Function(ee[ie])(window);ranScripts[s]=!0}var le=f.querySelectorAll("style");if(Array.prototype.forEach.call(le,function(e){e.textContent+=""}),f.setAttribute("xmlns",svgNamespace),f.setAttribute("xmlns:xlink",xlinkNamespace),a(f),!e.parentNode)return injectedElements.splice(injectedElements.indexOf(e),1),e=null,void l(new Error("Parent node is null"));e.parentNode.replaceChild(f,e),injectedElements.splice(injectedElements.indexOf(e),1),e=null,l(null,f)};if(f)setTimeout(function(){v(null,f)},0);else(n?loadSvgCached:loadSvgUncached)(u,i,v)}else l(new Error("Invalid data-src or src attribute"))},SVGInjector=function(e,t){var r=void 0===t?{}:t,n=r.afterAll,i=void 0===n?function(){}:n,a=r.afterEach,l=void 0===a?function(){}:a,o=r.beforeEach,s=void 0===o?function(){}:o,c=r.cacheRequests,u=void 0===c||c,d=r.evalScripts,f=void 0===d?"never":d,v=r.httpRequestWithCredentials,m=void 0!==v&&v,p=r.renumerateIRIElements,h=void 0===p||p;if(e&&"length"in e)for(var g=0,y=0,E=e.length;y<E;y++){var b=e[y];b&&injectElement(b,f,h,u,m,s,function(t,r){l(t,r),e&&"length"in e&&e.length===++g&&i(g)})}else e?injectElement(e,f,h,u,m,s,function(t,r){l(t,r),i(1),e=null}):i(0)};exports.SVGInjector=SVGInjector;
2
2
  //# sourceMappingURL=svg-injector.cjs.production.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"svg-injector.cjs.production.js","sources":["../compiled/extract-symbol.js","../compiled/cache.js","../compiled/clone-svg.js","../compiled/is-local.js","../compiled/make-ajax-request.js","../compiled/request-queue.js","../compiled/load-svg-cached.js","../compiled/load-svg-uncached.js","../compiled/unique-id.js","../compiled/inject-element.js","../compiled/svg-injector.js"],"sourcesContent":["var svgNamespace = 'http://www.w3.org/2000/svg';\nvar extractSymbol = function (spriteSvg, symbolId) {\n var symbol = spriteSvg.querySelector('#' + CSS.escape(symbolId));\n if ((symbol === null || symbol === void 0 ? void 0 : symbol.tagName.toLowerCase()) !== 'symbol') {\n return null;\n }\n var svg = document.createElementNS(svgNamespace, 'svg');\n var attrs = symbol.attributes;\n for (var i = 0, len = attrs.length; i < len; i++) {\n var attr = attrs[i];\n if (attr.name !== 'id') {\n svg.setAttribute(attr.name, attr.value);\n }\n }\n var children = symbol.childNodes;\n for (var i = 0, len = children.length; i < len; i++) {\n svg.appendChild(children[i].cloneNode(true));\n }\n return svg;\n};\nexport default extractSymbol;\n//# sourceMappingURL=extract-symbol.js.map","var cache = new Map();\nexport default cache;\n//# sourceMappingURL=cache.js.map","var cloneSvg = function (sourceSvg) {\n return sourceSvg.cloneNode(true);\n};\nexport default cloneSvg;\n//# sourceMappingURL=clone-svg.js.map","var isLocal = function () { return window.location.protocol === 'file:'; };\nexport default isLocal;\n//# sourceMappingURL=is-local.js.map","import { parse as parseContentType } from 'content-type';\nimport isLocal from './is-local';\nvar makeAjaxRequest = function (url, httpRequestWithCredentials, callback) {\n var httpRequest = new XMLHttpRequest();\n httpRequest.onreadystatechange = function () {\n try {\n if (!/\\.svg/i.test(url) && httpRequest.readyState === 2) {\n var contentType = httpRequest.getResponseHeader('Content-Type');\n if (!contentType) {\n throw new Error('Content type not found');\n }\n var type = parseContentType(contentType).type;\n if (!(type === 'image/svg+xml' || type === 'text/plain')) {\n throw new Error(\"Invalid content type: \".concat(type));\n }\n }\n if (httpRequest.readyState === 4) {\n if (httpRequest.status === 404 || httpRequest.responseXML === null) {\n throw new Error(isLocal()\n ? 'Note: SVG injection ajax calls do not work locally without ' +\n 'adjusting security settings in your browser. Or consider ' +\n 'using a local webserver.'\n : 'Unable to load SVG file: ' + url);\n }\n if (httpRequest.status === 200 ||\n (isLocal() && httpRequest.status === 0)) {\n callback(null, httpRequest);\n }\n else {\n throw new Error('There was a problem injecting the SVG: ' +\n httpRequest.status +\n ' ' +\n httpRequest.statusText);\n }\n }\n }\n catch (error) {\n httpRequest.abort();\n if (error instanceof Error) {\n callback(error, httpRequest);\n }\n else {\n throw error;\n }\n }\n };\n httpRequest.open('GET', url);\n httpRequest.withCredentials = httpRequestWithCredentials;\n if (httpRequest.overrideMimeType) {\n httpRequest.overrideMimeType('image/svg+xml');\n }\n httpRequest.send();\n};\nexport default makeAjaxRequest;\n//# sourceMappingURL=make-ajax-request.js.map","import cache from './cache';\nimport cloneSvg from './clone-svg';\nvar requestQueue = {};\nexport var queueRequest = function (url, callback) {\n var _a;\n (_a = requestQueue[url]) !== null && _a !== void 0 ? _a : (requestQueue[url] = []);\n requestQueue[url].push(callback);\n};\nexport var processRequestQueue = function (url) {\n var callbacks = requestQueue[url];\n if (!callbacks) {\n return;\n }\n var _loop_1 = function (i, len) {\n setTimeout(function () {\n if (Array.isArray(requestQueue[url])) {\n var cacheValue = cache.get(url);\n var callback = callbacks[i];\n if (!callback) {\n return;\n }\n if (cacheValue instanceof SVGSVGElement) {\n callback(null, cloneSvg(cacheValue));\n }\n if (cacheValue instanceof Error) {\n callback(cacheValue);\n }\n if (i === callbacks.length - 1) {\n delete requestQueue[url];\n }\n }\n }, 0);\n };\n for (var i = 0, len = callbacks.length; i < len; i++) {\n _loop_1(i, len);\n }\n};\n//# sourceMappingURL=request-queue.js.map","import cache from './cache';\nimport cloneSvg from './clone-svg';\nimport makeAjaxRequest from './make-ajax-request';\nimport { processRequestQueue, queueRequest } from './request-queue';\nvar loadSvgCached = function (url, httpRequestWithCredentials, callback) {\n if (cache.has(url)) {\n var cacheValue = cache.get(url);\n if (cacheValue === undefined) {\n queueRequest(url, callback);\n return;\n }\n if (cacheValue instanceof SVGSVGElement) {\n callback(null, cloneSvg(cacheValue));\n return;\n }\n }\n cache.set(url, undefined);\n queueRequest(url, callback);\n makeAjaxRequest(url, httpRequestWithCredentials, function (error, httpRequest) {\n var _a;\n if (error) {\n cache.set(url, error);\n }\n else if (((_a = httpRequest.responseXML) === null || _a === void 0 ? void 0 : _a.documentElement) instanceof SVGSVGElement) {\n cache.set(url, httpRequest.responseXML.documentElement);\n }\n processRequestQueue(url);\n });\n};\nexport default loadSvgCached;\n//# sourceMappingURL=load-svg-cached.js.map","import makeAjaxRequest from './make-ajax-request';\nvar loadSvgUncached = function (url, httpRequestWithCredentials, callback) {\n makeAjaxRequest(url, httpRequestWithCredentials, function (error, httpRequest) {\n var _a;\n if (error) {\n callback(error);\n }\n else if (((_a = httpRequest.responseXML) === null || _a === void 0 ? void 0 : _a.documentElement) instanceof SVGSVGElement) {\n callback(null, httpRequest.responseXML.documentElement);\n }\n });\n};\nexport default loadSvgUncached;\n//# sourceMappingURL=load-svg-uncached.js.map","var idCounter = 0;\nvar uniqueId = function () { return ++idCounter; };\nexport default uniqueId;\n//# sourceMappingURL=unique-id.js.map","import { __spreadArray } from \"tslib\";\nimport extractSymbol from './extract-symbol';\nimport loadSvgCached from './load-svg-cached';\nimport loadSvgUncached from './load-svg-uncached';\nimport uniqueId from './unique-id';\nvar injectedElements = [];\nvar ranScripts = {};\nvar svgNamespace = 'http://www.w3.org/2000/svg';\nvar xlinkNamespace = 'http://www.w3.org/1999/xlink';\nvar injectElement = function (el, evalScripts, renumerateIRIElements, cacheRequests, httpRequestWithCredentials, beforeEach, callback) {\n var _a;\n var elUrl = (_a = el.getAttribute('data-src')) !== null && _a !== void 0 ? _a : el.getAttribute('src');\n if (!elUrl) {\n callback(new Error('Invalid data-src or src attribute'));\n return;\n }\n if (injectedElements.indexOf(el) !== -1) {\n injectedElements.splice(injectedElements.indexOf(el), 1);\n el = null;\n return;\n }\n injectedElements.push(el);\n el.setAttribute('src', '');\n var hashIndex = elUrl.indexOf('#');\n var baseUrl = hashIndex !== -1 ? elUrl.slice(0, hashIndex) : elUrl;\n var symbolId = hashIndex !== -1 ? elUrl.slice(hashIndex + 1) : null;\n var loadSvg = cacheRequests ? loadSvgCached : loadSvgUncached;\n loadSvg(baseUrl, httpRequestWithCredentials, function (error, loadedSvg) {\n var _a, _b;\n if (!loadedSvg) {\n injectedElements.splice(injectedElements.indexOf(el), 1);\n el = null;\n callback(error);\n return;\n }\n var svg = loadedSvg;\n if (symbolId) {\n var symbolSvg = extractSymbol(loadedSvg, symbolId);\n if (!symbolSvg) {\n injectedElements.splice(injectedElements.indexOf(el), 1);\n el = null;\n callback(new Error(\"Symbol \\\"\".concat(symbolId, \"\\\" not found in \").concat(baseUrl)));\n return;\n }\n svg = symbolSvg;\n }\n var elId = el.getAttribute('id');\n if (elId) {\n svg.setAttribute('id', elId);\n }\n var elTitle = el.getAttribute('title');\n if (elTitle) {\n svg.setAttribute('title', elTitle);\n }\n var elWidth = el.getAttribute('width');\n if (elWidth) {\n svg.setAttribute('width', elWidth);\n }\n var elHeight = el.getAttribute('height');\n if (elHeight) {\n svg.setAttribute('height', elHeight);\n }\n var mergedClasses = Array.from(new Set(__spreadArray(__spreadArray(__spreadArray([], ((_a = svg.getAttribute('class')) !== null && _a !== void 0 ? _a : '').split(' '), true), [\n 'injected-svg'\n ], false), ((_b = el.getAttribute('class')) !== null && _b !== void 0 ? _b : '').split(' '), true)))\n .join(' ')\n .trim();\n svg.setAttribute('class', mergedClasses);\n var elStyle = el.getAttribute('style');\n if (elStyle) {\n svg.setAttribute('style', elStyle);\n }\n svg.setAttribute('data-src', elUrl);\n var elData = [].filter.call(el.attributes, function (at) {\n return /^data-\\w[\\w-]*$/.test(at.name);\n });\n Array.prototype.forEach.call(elData, function (dataAttr) {\n if (dataAttr.name && dataAttr.value) {\n svg.setAttribute(dataAttr.name, dataAttr.value);\n }\n });\n if (renumerateIRIElements) {\n var iriElementsAndProperties_1 = {\n clipPath: ['clip-path'],\n 'color-profile': ['color-profile'],\n cursor: ['cursor'],\n filter: ['filter'],\n linearGradient: ['fill', 'stroke'],\n marker: ['marker', 'marker-start', 'marker-mid', 'marker-end'],\n mask: ['mask'],\n path: [],\n pattern: ['fill', 'stroke'],\n radialGradient: ['fill', 'stroke'],\n };\n var replaceIriReferences_1 = function (value, iriIdMap) {\n return value.replace(/url\\((['\"]?)\\s*#([^\\s'\"\\)]+)\\s*\\1\\)/g, function (match, _quote, iriId) {\n var newId = iriIdMap[iriId];\n return newId ? \"url(#\".concat(newId, \")\") : match;\n });\n };\n var replaceHrefReference = function (value, iriIdMap) {\n if (!value.startsWith('#')) {\n return value;\n }\n var iriId = value.slice(1);\n var newId = iriIdMap[iriId];\n return newId ? '#' + newId : value;\n };\n var element_1;\n var elements_1;\n var properties_1;\n var currentId_1;\n var newId_1;\n var renumeratedElements_1 = [];\n var iriIdMap_1 = {};\n Object.keys(iriElementsAndProperties_1).forEach(function (key) {\n element_1 = key;\n elements_1 = svg.querySelectorAll(element_1 + '[id]');\n for (var a = 0, elementsLen = elements_1.length; a < elementsLen; a++) {\n var currentElement = elements_1[a];\n currentId_1 = currentElement.id;\n newId_1 = currentId_1 + '-' + uniqueId();\n iriIdMap_1[currentId_1] = newId_1;\n renumeratedElements_1.push({\n element: currentElement,\n currentId: currentId_1,\n newId: newId_1,\n });\n }\n });\n Object.keys(iriElementsAndProperties_1).forEach(function (key) {\n properties_1 = iriElementsAndProperties_1[key];\n var referencingElements;\n Array.prototype.forEach.call(properties_1, function (property) {\n referencingElements = svg.querySelectorAll('[' + property + ']');\n for (var b = 0, referencingElementLen = referencingElements.length; b < referencingElementLen; b++) {\n var referencingElement = referencingElements[b];\n var attrValue = referencingElement.getAttribute(property);\n if (attrValue) {\n var nextValue = replaceIriReferences_1(attrValue, iriIdMap_1);\n if (nextValue !== attrValue) {\n referencingElement.setAttribute(property, nextValue);\n }\n }\n }\n });\n });\n var allLinks = svg.querySelectorAll('*');\n for (var c = 0, allLinksLen = allLinks.length; c < allLinksLen; c++) {\n var link = allLinks[c];\n var href = link.getAttribute('href');\n if (href) {\n var nextHref = replaceHrefReference(href, iriIdMap_1);\n if (nextHref !== href) {\n link.setAttribute('href', nextHref);\n }\n }\n var xlinkHref = link.getAttributeNS(xlinkNamespace, 'href');\n if (xlinkHref) {\n var nextXlinkHref = replaceHrefReference(xlinkHref, iriIdMap_1);\n if (nextXlinkHref !== xlinkHref) {\n link.setAttributeNS(xlinkNamespace, 'href', nextXlinkHref);\n }\n }\n }\n var styleElements = svg.querySelectorAll('[style]');\n for (var d = 0, styleElementsLen = styleElements.length; d < styleElementsLen; d++) {\n var styleElement = styleElements[d];\n var styleValue = styleElement.getAttribute('style');\n if (styleValue) {\n var nextStyleValue = replaceIriReferences_1(styleValue, iriIdMap_1);\n if (nextStyleValue !== styleValue) {\n styleElement.setAttribute('style', nextStyleValue);\n }\n }\n }\n var styleTagElements = svg.querySelectorAll('style');\n for (var e = 0, styleTagElementsLen = styleTagElements.length; e < styleTagElementsLen; e++) {\n var styleTagElement = styleTagElements[e];\n var textContent = styleTagElement.textContent;\n if (textContent) {\n var nextTextContent = replaceIriReferences_1(textContent, iriIdMap_1);\n if (nextTextContent !== textContent) {\n styleTagElement.textContent = nextTextContent;\n }\n }\n }\n for (var f = 0, renumeratedElementsLen = renumeratedElements_1.length; f < renumeratedElementsLen; f++) {\n renumeratedElements_1[f].element.id = renumeratedElements_1[f].newId;\n }\n }\n svg.removeAttribute('xmlns:a');\n var scripts = svg.querySelectorAll('script');\n var scriptsToEval = [];\n var script;\n var scriptType;\n for (var i = 0, scriptsLen = scripts.length; i < scriptsLen; i++) {\n var scriptElement = scripts[i];\n scriptType = scriptElement.getAttribute('type');\n if (!scriptType ||\n scriptType === 'application/ecmascript' ||\n scriptType === 'application/javascript' ||\n scriptType === 'text/javascript') {\n script = scriptElement.innerText || scriptElement.textContent;\n if (script) {\n scriptsToEval.push(script);\n }\n svg.removeChild(scriptElement);\n }\n }\n if (scriptsToEval.length > 0 &&\n (evalScripts === 'always' ||\n (evalScripts === 'once' && !ranScripts[elUrl]))) {\n for (var l = 0, scriptsToEvalLen = scriptsToEval.length; l < scriptsToEvalLen; l++) {\n new Function(scriptsToEval[l])(window);\n }\n ranScripts[elUrl] = true;\n }\n var styleTags = svg.querySelectorAll('style');\n Array.prototype.forEach.call(styleTags, function (styleTag) {\n styleTag.textContent += '';\n });\n svg.setAttribute('xmlns', svgNamespace);\n svg.setAttribute('xmlns:xlink', xlinkNamespace);\n beforeEach(svg);\n if (!el.parentNode) {\n injectedElements.splice(injectedElements.indexOf(el), 1);\n el = null;\n callback(new Error('Parent node is null'));\n return;\n }\n el.parentNode.replaceChild(svg, el);\n injectedElements.splice(injectedElements.indexOf(el), 1);\n el = null;\n callback(null, svg);\n });\n};\nexport default injectElement;\n//# sourceMappingURL=inject-element.js.map","import injectElement from './inject-element';\nvar SVGInjector = function (elements, _a) {\n var _b = _a === void 0 ? {} : _a, _c = _b.afterAll, afterAll = _c === void 0 ? function () { return undefined; } : _c, _d = _b.afterEach, afterEach = _d === void 0 ? function () { return undefined; } : _d, _e = _b.beforeEach, beforeEach = _e === void 0 ? function () { return undefined; } : _e, _f = _b.cacheRequests, cacheRequests = _f === void 0 ? true : _f, _g = _b.evalScripts, evalScripts = _g === void 0 ? 'never' : _g, _h = _b.httpRequestWithCredentials, httpRequestWithCredentials = _h === void 0 ? false : _h, _j = _b.renumerateIRIElements, renumerateIRIElements = _j === void 0 ? true : _j;\n if (elements && 'length' in elements) {\n var elementsLoaded_1 = 0;\n for (var i = 0, j = elements.length; i < j; i++) {\n var element = elements[i];\n if (!element) {\n continue;\n }\n injectElement(element, evalScripts, renumerateIRIElements, cacheRequests, httpRequestWithCredentials, beforeEach, function (error, svg) {\n afterEach(error, svg);\n if (elements &&\n 'length' in elements &&\n elements.length === ++elementsLoaded_1) {\n afterAll(elementsLoaded_1);\n }\n });\n }\n }\n else if (elements) {\n injectElement(elements, evalScripts, renumerateIRIElements, cacheRequests, httpRequestWithCredentials, beforeEach, function (error, svg) {\n afterEach(error, svg);\n afterAll(1);\n elements = null;\n });\n }\n else {\n afterAll(0);\n }\n};\nexport default SVGInjector;\n//# sourceMappingURL=svg-injector.js.map"],"names":["svgNamespace","extractSymbol","spriteSvg","symbolId","symbol","querySelector","CSS","escape","tagName","toLowerCase","svg","document","createElementNS","attrs","attributes","i","len","length","attr","name","setAttribute","value","children","childNodes","appendChild","cloneNode","cache","Map","cloneSvg","sourceSvg","isLocal","window","location","protocol","makeAjaxRequest","url","httpRequestWithCredentials","callback","httpRequest","XMLHttpRequest","onreadystatechange","test","readyState","contentType","getResponseHeader","Error","type","parseContentType","concat","status","responseXML","statusText","error","abort","open","withCredentials","overrideMimeType","send","requestQueue","queueRequest","_a","push","processRequestQueue","callbacks","setTimeout","Array","isArray","cacheValue","get","SVGSVGElement","loadSvgCached","has","undefined","set","documentElement","loadSvgUncached","idCounter","uniqueId","injectedElements","ranScripts","xlinkNamespace","injectElement","el","evalScripts","renumerateIRIElements","cacheRequests","beforeEach","elUrl","getAttribute","indexOf","splice","hashIndex","baseUrl","slice","loadedSvg","symbolSvg","elId","elTitle","elWidth","elHeight","mergedClasses","from","Set","__spreadArray","split","_b","join","trim","elStyle","elData","filter","call","at","prototype","forEach","dataAttr","elements_1","currentId_1","newId_1","iriElementsAndProperties_1","clipPath","cursor","linearGradient","marker","mask","path","pattern","radialGradient","replaceIriReferences_1","iriIdMap","replace","match","_quote","iriId","newId","replaceHrefReference","startsWith","renumeratedElements_1","iriIdMap_1","Object","keys","key","a","elementsLen","querySelectorAll","currentElement","id","element","currentId","referencingElements","property","b","referencingElementLen","referencingElement","attrValue","nextValue","allLinks","c","allLinksLen","link","href","nextHref","xlinkHref","getAttributeNS","nextXlinkHref","setAttributeNS","styleElements","d","styleElementsLen","styleElement","styleValue","nextStyleValue","styleTagElements","e","styleTagElementsLen","styleTagElement","textContent","nextTextContent","f","renumeratedElementsLen","removeAttribute","script","scriptType","scripts","scriptsToEval","scriptsLen","scriptElement","innerText","removeChild","l","scriptsToEvalLen","Function","styleTags","styleTag","parentNode","replaceChild","SVGInjector","elements","_c","afterAll","_d","afterEach","_e","_f","_g","_h","_j","elementsLoaded_1","j"],"mappings":"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"}
1
+ {"version":3,"file":"svg-injector.cjs.production.js","sources":["../compiled/extract-symbol.js","../compiled/cache.js","../compiled/clone-svg.js","../compiled/is-local.js","../compiled/make-ajax-request.js","../compiled/request-queue.js","../compiled/load-svg-cached.js","../compiled/load-svg-uncached.js","../compiled/parse-data-url.js","../compiled/unique-id.js","../compiled/inject-element.js","../compiled/svg-injector.js"],"sourcesContent":["var svgNamespace = 'http://www.w3.org/2000/svg';\nvar extractSymbol = function (spriteSvg, symbolId) {\n var symbol = spriteSvg.querySelector('#' + CSS.escape(symbolId));\n if ((symbol === null || symbol === void 0 ? void 0 : symbol.tagName.toLowerCase()) !== 'symbol') {\n return null;\n }\n var svg = document.createElementNS(svgNamespace, 'svg');\n var attrs = symbol.attributes;\n for (var i = 0, len = attrs.length; i < len; i++) {\n var attr = attrs[i];\n if (attr.name !== 'id') {\n svg.setAttribute(attr.name, attr.value);\n }\n }\n var children = symbol.childNodes;\n for (var i = 0, len = children.length; i < len; i++) {\n svg.appendChild(children[i].cloneNode(true));\n }\n return svg;\n};\nexport default extractSymbol;\n//# sourceMappingURL=extract-symbol.js.map","var cache = new Map();\nexport default cache;\n//# sourceMappingURL=cache.js.map","var cloneSvg = function (sourceSvg) {\n return sourceSvg.cloneNode(true);\n};\nexport default cloneSvg;\n//# sourceMappingURL=clone-svg.js.map","var isLocal = function () { return window.location.protocol === 'file:'; };\nexport default isLocal;\n//# sourceMappingURL=is-local.js.map","import { parse as parseContentType } from 'content-type';\nimport isLocal from './is-local';\nvar makeAjaxRequest = function (url, httpRequestWithCredentials, callback) {\n var httpRequest = new XMLHttpRequest();\n httpRequest.onreadystatechange = function () {\n try {\n if (!/\\.svg/i.test(url) && httpRequest.readyState === 2) {\n var contentType = httpRequest.getResponseHeader('Content-Type');\n if (!contentType) {\n throw new Error('Content type not found');\n }\n var type = parseContentType(contentType).type;\n if (!(type === 'image/svg+xml' || type === 'text/plain')) {\n throw new Error(\"Invalid content type: \".concat(type));\n }\n }\n if (httpRequest.readyState === 4) {\n if (httpRequest.status === 404 || httpRequest.responseXML === null) {\n throw new Error(isLocal()\n ? 'Note: SVG injection ajax calls do not work locally without ' +\n 'adjusting security settings in your browser. Or consider ' +\n 'using a local webserver.'\n : 'Unable to load SVG file: ' + url);\n }\n if (httpRequest.status === 200 ||\n (isLocal() && httpRequest.status === 0)) {\n callback(null, httpRequest);\n }\n else {\n throw new Error('There was a problem injecting the SVG: ' +\n httpRequest.status +\n ' ' +\n httpRequest.statusText);\n }\n }\n }\n catch (error) {\n httpRequest.abort();\n if (error instanceof Error) {\n callback(error, httpRequest);\n }\n else {\n throw error;\n }\n }\n };\n httpRequest.open('GET', url);\n httpRequest.withCredentials = httpRequestWithCredentials;\n if (httpRequest.overrideMimeType) {\n httpRequest.overrideMimeType('image/svg+xml');\n }\n httpRequest.send();\n};\nexport default makeAjaxRequest;\n//# sourceMappingURL=make-ajax-request.js.map","import cache from './cache';\nimport cloneSvg from './clone-svg';\nvar requestQueue = {};\nexport var queueRequest = function (url, callback) {\n var _a;\n (_a = requestQueue[url]) !== null && _a !== void 0 ? _a : (requestQueue[url] = []);\n requestQueue[url].push(callback);\n};\nexport var processRequestQueue = function (url) {\n var callbacks = requestQueue[url];\n if (!callbacks) {\n return;\n }\n var _loop_1 = function (i, len) {\n setTimeout(function () {\n if (Array.isArray(requestQueue[url])) {\n var cacheValue = cache.get(url);\n var callback = callbacks[i];\n if (!callback) {\n return;\n }\n if (cacheValue instanceof SVGSVGElement) {\n callback(null, cloneSvg(cacheValue));\n }\n if (cacheValue instanceof Error) {\n callback(cacheValue);\n }\n if (i === callbacks.length - 1) {\n delete requestQueue[url];\n }\n }\n }, 0);\n };\n for (var i = 0, len = callbacks.length; i < len; i++) {\n _loop_1(i, len);\n }\n};\n//# sourceMappingURL=request-queue.js.map","import cache from './cache';\nimport cloneSvg from './clone-svg';\nimport makeAjaxRequest from './make-ajax-request';\nimport { processRequestQueue, queueRequest } from './request-queue';\nvar loadSvgCached = function (url, httpRequestWithCredentials, callback) {\n if (cache.has(url)) {\n var cacheValue = cache.get(url);\n if (cacheValue === undefined) {\n queueRequest(url, callback);\n return;\n }\n if (cacheValue instanceof SVGSVGElement) {\n callback(null, cloneSvg(cacheValue));\n return;\n }\n }\n cache.set(url, undefined);\n queueRequest(url, callback);\n makeAjaxRequest(url, httpRequestWithCredentials, function (error, httpRequest) {\n var _a;\n if (error) {\n cache.set(url, error);\n }\n else if (((_a = httpRequest.responseXML) === null || _a === void 0 ? void 0 : _a.documentElement) instanceof SVGSVGElement) {\n cache.set(url, httpRequest.responseXML.documentElement);\n }\n processRequestQueue(url);\n });\n};\nexport default loadSvgCached;\n//# sourceMappingURL=load-svg-cached.js.map","import makeAjaxRequest from './make-ajax-request';\nvar loadSvgUncached = function (url, httpRequestWithCredentials, callback) {\n makeAjaxRequest(url, httpRequestWithCredentials, function (error, httpRequest) {\n var _a;\n if (error) {\n callback(error);\n }\n else if (((_a = httpRequest.responseXML) === null || _a === void 0 ? void 0 : _a.documentElement) instanceof SVGSVGElement) {\n callback(null, httpRequest.responseXML.documentElement);\n }\n });\n};\nexport default loadSvgUncached;\n//# sourceMappingURL=load-svg-uncached.js.map","var dataUrlPrefix = 'data:image/svg+xml';\nvar parseDataUrl = function (url) {\n if (!url.startsWith(dataUrlPrefix)) {\n return null;\n }\n var rest = url.slice(dataUrlPrefix.length);\n var svgString;\n if (rest.startsWith(';base64,')) {\n try {\n svgString = atob(rest.slice(';base64,'.length));\n }\n catch (_a) {\n return new Error('Invalid base64 in data URL');\n }\n }\n else if (rest.startsWith(',')) {\n try {\n svgString = decodeURIComponent(rest.slice(','.length));\n }\n catch (_b) {\n return new Error('Invalid encoding in data URL');\n }\n }\n else if (rest.startsWith(';charset=utf-8,')) {\n try {\n svgString = decodeURIComponent(rest.slice(';charset=utf-8,'.length));\n }\n catch (_c) {\n return new Error('Invalid encoding in data URL');\n }\n }\n else {\n return new Error('Unsupported data URL format');\n }\n var doc = new DOMParser().parseFromString(svgString, 'image/svg+xml');\n var parserError = doc.querySelector('parsererror');\n if (parserError) {\n return new Error('Data URL SVG parse error: ' + parserError.textContent.trim());\n }\n if (!(doc.documentElement instanceof SVGSVGElement)) {\n return new Error('Data URL did not contain a valid SVG element');\n }\n return doc.documentElement;\n};\nexport default parseDataUrl;\n//# sourceMappingURL=parse-data-url.js.map","var idCounter = 0;\nvar uniqueId = function () { return ++idCounter; };\nexport default uniqueId;\n//# sourceMappingURL=unique-id.js.map","import { __spreadArray } from \"tslib\";\nimport extractSymbol from './extract-symbol';\nimport loadSvgCached from './load-svg-cached';\nimport loadSvgUncached from './load-svg-uncached';\nimport parseDataUrl from './parse-data-url';\nimport uniqueId from './unique-id';\nvar injectedElements = [];\nvar ranScripts = {};\nvar svgNamespace = 'http://www.w3.org/2000/svg';\nvar xlinkNamespace = 'http://www.w3.org/1999/xlink';\nvar injectElement = function (el, evalScripts, renumerateIRIElements, cacheRequests, httpRequestWithCredentials, beforeEach, callback) {\n var _a;\n var elUrl = (_a = el.getAttribute('data-src')) !== null && _a !== void 0 ? _a : el.getAttribute('src');\n if (!elUrl) {\n callback(new Error('Invalid data-src or src attribute'));\n return;\n }\n if (injectedElements.indexOf(el) !== -1) {\n injectedElements.splice(injectedElements.indexOf(el), 1);\n el = null;\n return;\n }\n injectedElements.push(el);\n el.setAttribute('src', '');\n var hashIndex = elUrl.indexOf('#');\n var baseUrl = hashIndex !== -1 ? elUrl.slice(0, hashIndex) : elUrl;\n var symbolId = hashIndex !== -1 ? elUrl.slice(hashIndex + 1) : null;\n var dataUrlResult = parseDataUrl(baseUrl);\n if (dataUrlResult instanceof Error) {\n injectedElements.splice(injectedElements.indexOf(el), 1);\n el = null;\n callback(dataUrlResult);\n return;\n }\n var handleLoadedSvg = function (error, loadedSvg) {\n var _a, _b;\n if (!loadedSvg) {\n injectedElements.splice(injectedElements.indexOf(el), 1);\n el = null;\n callback(error);\n return;\n }\n var svg = loadedSvg;\n if (symbolId) {\n var symbolSvg = extractSymbol(loadedSvg, symbolId);\n if (!symbolSvg) {\n injectedElements.splice(injectedElements.indexOf(el), 1);\n el = null;\n callback(new Error(\"Symbol \\\"\".concat(symbolId, \"\\\" not found in \").concat(baseUrl)));\n return;\n }\n svg = symbolSvg;\n }\n var elId = el.getAttribute('id');\n if (elId) {\n svg.setAttribute('id', elId);\n }\n var elTitle = el.getAttribute('title');\n if (elTitle) {\n svg.setAttribute('title', elTitle);\n }\n var elWidth = el.getAttribute('width');\n if (elWidth) {\n svg.setAttribute('width', elWidth);\n }\n var elHeight = el.getAttribute('height');\n if (elHeight) {\n svg.setAttribute('height', elHeight);\n }\n var mergedClasses = Array.from(new Set(__spreadArray(__spreadArray(__spreadArray([], ((_a = svg.getAttribute('class')) !== null && _a !== void 0 ? _a : '').split(' '), true), [\n 'injected-svg'\n ], false), ((_b = el.getAttribute('class')) !== null && _b !== void 0 ? _b : '').split(' '), true)))\n .join(' ')\n .trim();\n svg.setAttribute('class', mergedClasses);\n var elStyle = el.getAttribute('style');\n if (elStyle) {\n svg.setAttribute('style', elStyle);\n }\n svg.setAttribute('data-src', elUrl);\n var elData = [].filter.call(el.attributes, function (at) {\n return /^data-\\w[\\w-]*$/.test(at.name);\n });\n Array.prototype.forEach.call(elData, function (dataAttr) {\n if (dataAttr.name && dataAttr.value) {\n svg.setAttribute(dataAttr.name, dataAttr.value);\n }\n });\n if (renumerateIRIElements) {\n var iriElementsAndProperties_1 = {\n clipPath: ['clip-path'],\n 'color-profile': ['color-profile'],\n cursor: ['cursor'],\n filter: ['filter'],\n linearGradient: ['fill', 'stroke'],\n marker: ['marker', 'marker-start', 'marker-mid', 'marker-end'],\n mask: ['mask'],\n path: [],\n pattern: ['fill', 'stroke'],\n radialGradient: ['fill', 'stroke'],\n };\n var replaceIriReferences_1 = function (value, iriIdMap) {\n return value.replace(/url\\((['\"]?)\\s*#([^\\s'\"\\)]+)\\s*\\1\\)/g, function (match, _quote, iriId) {\n var newId = iriIdMap[iriId];\n return newId ? \"url(#\".concat(newId, \")\") : match;\n });\n };\n var replaceHrefReference = function (value, iriIdMap) {\n if (!value.startsWith('#')) {\n return value;\n }\n var iriId = value.slice(1);\n var newId = iriIdMap[iriId];\n return newId ? '#' + newId : value;\n };\n var element_1;\n var elements_1;\n var properties_1;\n var currentId_1;\n var newId_1;\n var renumeratedElements_1 = [];\n var iriIdMap_1 = {};\n Object.keys(iriElementsAndProperties_1).forEach(function (key) {\n element_1 = key;\n elements_1 = svg.querySelectorAll(element_1 + '[id]');\n for (var a = 0, elementsLen = elements_1.length; a < elementsLen; a++) {\n var currentElement = elements_1[a];\n currentId_1 = currentElement.id;\n newId_1 = currentId_1 + '-' + uniqueId();\n iriIdMap_1[currentId_1] = newId_1;\n renumeratedElements_1.push({\n element: currentElement,\n currentId: currentId_1,\n newId: newId_1,\n });\n }\n });\n Object.keys(iriElementsAndProperties_1).forEach(function (key) {\n properties_1 = iriElementsAndProperties_1[key];\n var referencingElements;\n Array.prototype.forEach.call(properties_1, function (property) {\n referencingElements = svg.querySelectorAll('[' + property + ']');\n for (var b = 0, referencingElementLen = referencingElements.length; b < referencingElementLen; b++) {\n var referencingElement = referencingElements[b];\n var attrValue = referencingElement.getAttribute(property);\n if (attrValue) {\n var nextValue = replaceIriReferences_1(attrValue, iriIdMap_1);\n if (nextValue !== attrValue) {\n referencingElement.setAttribute(property, nextValue);\n }\n }\n }\n });\n });\n var allLinks = svg.querySelectorAll('*');\n for (var c = 0, allLinksLen = allLinks.length; c < allLinksLen; c++) {\n var link = allLinks[c];\n var href = link.getAttribute('href');\n if (href) {\n var nextHref = replaceHrefReference(href, iriIdMap_1);\n if (nextHref !== href) {\n link.setAttribute('href', nextHref);\n }\n }\n var xlinkHref = link.getAttributeNS(xlinkNamespace, 'href');\n if (xlinkHref) {\n var nextXlinkHref = replaceHrefReference(xlinkHref, iriIdMap_1);\n if (nextXlinkHref !== xlinkHref) {\n link.setAttributeNS(xlinkNamespace, 'href', nextXlinkHref);\n }\n }\n }\n var styleElements = svg.querySelectorAll('[style]');\n for (var d = 0, styleElementsLen = styleElements.length; d < styleElementsLen; d++) {\n var styleElement = styleElements[d];\n var styleValue = styleElement.getAttribute('style');\n if (styleValue) {\n var nextStyleValue = replaceIriReferences_1(styleValue, iriIdMap_1);\n if (nextStyleValue !== styleValue) {\n styleElement.setAttribute('style', nextStyleValue);\n }\n }\n }\n var styleTagElements = svg.querySelectorAll('style');\n for (var e = 0, styleTagElementsLen = styleTagElements.length; e < styleTagElementsLen; e++) {\n var styleTagElement = styleTagElements[e];\n var textContent = styleTagElement.textContent;\n if (textContent) {\n var nextTextContent = replaceIriReferences_1(textContent, iriIdMap_1);\n if (nextTextContent !== textContent) {\n styleTagElement.textContent = nextTextContent;\n }\n }\n }\n for (var f = 0, renumeratedElementsLen = renumeratedElements_1.length; f < renumeratedElementsLen; f++) {\n renumeratedElements_1[f].element.id = renumeratedElements_1[f].newId;\n }\n }\n svg.removeAttribute('xmlns:a');\n var scripts = svg.querySelectorAll('script');\n var scriptsToEval = [];\n var script;\n var scriptType;\n for (var i = 0, scriptsLen = scripts.length; i < scriptsLen; i++) {\n var scriptElement = scripts[i];\n scriptType = scriptElement.getAttribute('type');\n if (!scriptType ||\n scriptType === 'application/ecmascript' ||\n scriptType === 'application/javascript' ||\n scriptType === 'text/javascript') {\n script = scriptElement.innerText || scriptElement.textContent;\n if (script) {\n scriptsToEval.push(script);\n }\n svg.removeChild(scriptElement);\n }\n }\n if (scriptsToEval.length > 0 &&\n (evalScripts === 'always' ||\n (evalScripts === 'once' && !ranScripts[elUrl]))) {\n for (var l = 0, scriptsToEvalLen = scriptsToEval.length; l < scriptsToEvalLen; l++) {\n new Function(scriptsToEval[l])(window);\n }\n ranScripts[elUrl] = true;\n }\n var styleTags = svg.querySelectorAll('style');\n Array.prototype.forEach.call(styleTags, function (styleTag) {\n styleTag.textContent += '';\n });\n svg.setAttribute('xmlns', svgNamespace);\n svg.setAttribute('xmlns:xlink', xlinkNamespace);\n beforeEach(svg);\n if (!el.parentNode) {\n injectedElements.splice(injectedElements.indexOf(el), 1);\n el = null;\n callback(new Error('Parent node is null'));\n return;\n }\n el.parentNode.replaceChild(svg, el);\n injectedElements.splice(injectedElements.indexOf(el), 1);\n el = null;\n callback(null, svg);\n };\n if (dataUrlResult) {\n setTimeout(function () {\n handleLoadedSvg(null, dataUrlResult);\n }, 0);\n return;\n }\n var loadSvg = cacheRequests ? loadSvgCached : loadSvgUncached;\n loadSvg(baseUrl, httpRequestWithCredentials, handleLoadedSvg);\n};\nexport default injectElement;\n//# sourceMappingURL=inject-element.js.map","import injectElement from './inject-element';\nvar SVGInjector = function (elements, _a) {\n var _b = _a === void 0 ? {} : _a, _c = _b.afterAll, afterAll = _c === void 0 ? function () { return undefined; } : _c, _d = _b.afterEach, afterEach = _d === void 0 ? function () { return undefined; } : _d, _e = _b.beforeEach, beforeEach = _e === void 0 ? function () { return undefined; } : _e, _f = _b.cacheRequests, cacheRequests = _f === void 0 ? true : _f, _g = _b.evalScripts, evalScripts = _g === void 0 ? 'never' : _g, _h = _b.httpRequestWithCredentials, httpRequestWithCredentials = _h === void 0 ? false : _h, _j = _b.renumerateIRIElements, renumerateIRIElements = _j === void 0 ? true : _j;\n if (elements && 'length' in elements) {\n var elementsLoaded_1 = 0;\n for (var i = 0, j = elements.length; i < j; i++) {\n var element = elements[i];\n if (!element) {\n continue;\n }\n injectElement(element, evalScripts, renumerateIRIElements, cacheRequests, httpRequestWithCredentials, beforeEach, function (error, svg) {\n afterEach(error, svg);\n if (elements &&\n 'length' in elements &&\n elements.length === ++elementsLoaded_1) {\n afterAll(elementsLoaded_1);\n }\n });\n }\n }\n else if (elements) {\n injectElement(elements, evalScripts, renumerateIRIElements, cacheRequests, httpRequestWithCredentials, beforeEach, function (error, svg) {\n afterEach(error, svg);\n afterAll(1);\n elements = null;\n });\n }\n else {\n afterAll(0);\n }\n};\nexport default SVGInjector;\n//# sourceMappingURL=svg-injector.js.map"],"names":["svgNamespace","extractSymbol","spriteSvg","symbolId","symbol","querySelector","CSS","escape","tagName","toLowerCase","svg","document","createElementNS","attrs","attributes","i","len","length","attr","name","setAttribute","value","children","childNodes","appendChild","cloneNode","cache","Map","cloneSvg","sourceSvg","isLocal","window","location","protocol","makeAjaxRequest","url","httpRequestWithCredentials","callback","httpRequest","XMLHttpRequest","onreadystatechange","test","readyState","contentType","getResponseHeader","Error","type","parseContentType","concat","status","responseXML","statusText","error","abort","open","withCredentials","overrideMimeType","send","requestQueue","queueRequest","_a","push","processRequestQueue","callbacks","setTimeout","Array","isArray","cacheValue","get","SVGSVGElement","loadSvgCached","has","undefined","set","documentElement","loadSvgUncached","dataUrlPrefix","parseDataUrl","startsWith","svgString","rest","slice","atob","decodeURIComponent","_b","_c","doc","DOMParser","parseFromString","parserError","textContent","trim","idCounter","uniqueId","injectedElements","ranScripts","xlinkNamespace","injectElement","el","evalScripts","renumerateIRIElements","cacheRequests","beforeEach","elUrl","getAttribute","indexOf","splice","hashIndex","baseUrl","dataUrlResult","handleLoadedSvg","loadedSvg","symbolSvg","elId","elTitle","elWidth","elHeight","mergedClasses","from","Set","__spreadArray","split","join","elStyle","elData","filter","call","at","prototype","forEach","dataAttr","elements_1","currentId_1","newId_1","iriElementsAndProperties_1","clipPath","cursor","linearGradient","marker","mask","path","pattern","radialGradient","replaceIriReferences_1","iriIdMap","replace","match","_quote","iriId","newId","replaceHrefReference","renumeratedElements_1","iriIdMap_1","Object","keys","key","a","elementsLen","querySelectorAll","currentElement","id","element","currentId","referencingElements","property","b","referencingElementLen","referencingElement","attrValue","nextValue","allLinks","c","allLinksLen","link","href","nextHref","xlinkHref","getAttributeNS","nextXlinkHref","setAttributeNS","styleElements","d","styleElementsLen","styleElement","styleValue","nextStyleValue","styleTagElements","e","styleTagElementsLen","styleTagElement","nextTextContent","f","renumeratedElementsLen","removeAttribute","script","scriptType","scripts","scriptsToEval","scriptsLen","scriptElement","innerText","removeChild","l","scriptsToEvalLen","Function","styleTags","styleTag","parentNode","replaceChild","SVGInjector","elements","afterAll","_d","afterEach","_e","_f","_g","_h","_j","elementsLoaded_1","j"],"mappings":"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"}