@tanem/svg-injector 11.2.1 → 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
@@ -28,25 +28,11 @@ SVGInjector(document.getElementById('inject-me'))
28
28
 
29
29
  ## SVG Sprite Support
30
30
 
31
- You can inject individual symbols from an SVG sprite sheet by appending a fragment identifier to the `data-src` URL. The library will fetch the sprite file, extract the `<symbol>` matching the fragment ID, and inject it as a standalone inline `<svg>`.
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
- ```html
34
- <div class="icon" data-src="sprite.svg#icon-star"></div>
35
- <div class="icon" data-src="sprite.svg#icon-heart"></div>
36
- ```
37
-
38
- ```js
39
- import { SVGInjector } from '@tanem/svg-injector'
40
-
41
- SVGInjector(document.getElementsByClassName('icon'))
42
- ```
43
-
44
- When `cacheRequests` is `true` (the default), the sprite file is fetched once and reused for all symbol extractions, so multiple icons from the same sprite file result in only a single HTTP request.
45
-
46
- **Limitations:**
33
+ ## Data URL Support
47
34
 
48
- - Each `<symbol>` must be self-contained. Shared `<defs>` at the root level of the sprite (e.g. gradients or filters referenced by multiple symbols) are **not** copied into the extracted SVG. If your symbols depend on shared definitions, use individual SVG files instead or inline the required definitions within each `<symbol>`.
49
- - Only `<symbol>` elements are supported for extraction. The fragment ID must match the `id` of a `<symbol>` in the sprite.
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.
50
36
 
51
37
  ## Avoiding XSS
52
38
 
@@ -71,6 +57,7 @@ SVGInjector(document.getElementById('inject-me'), {
71
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)
72
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)
73
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)
74
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)
75
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)
76
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;
@@ -1,4 +1,3 @@
1
1
  import type { Errback } from './types';
2
- export declare const clear: () => void;
3
2
  export declare const queueRequest: (url: string, callback: Errback) => void;
4
3
  export declare const processRequestQueue: (url: string) => void;
@@ -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 clear = function () {\n requestQueue = {};\n};\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":"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"}
@@ -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 clear = function () {\n requestQueue = {};\n};\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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"}