@tanem/svg-injector 10.1.68 → 11.0.1
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 +4 -2
- package/dist/cache.d.ts +1 -1
- package/dist/inject-element.d.ts +1 -1
- package/dist/load-svg-cached.d.ts +1 -1
- package/dist/load-svg-uncached.d.ts +1 -1
- package/dist/request-queue.d.ts +1 -1
- package/dist/svg-injector.cjs.development.js +47 -29
- package/dist/svg-injector.cjs.development.js.map +1 -1
- package/dist/svg-injector.cjs.production.js +1 -1
- package/dist/svg-injector.cjs.production.js.map +1 -1
- package/dist/svg-injector.d.ts +1 -1
- package/dist/svg-injector.esm.js +47 -29
- package/dist/svg-injector.esm.js.map +1 -1
- package/dist/svg-injector.umd.development.js +276 -168
- package/dist/svg-injector.umd.development.js.map +1 -1
- package/dist/svg-injector.umd.production.js +1 -1
- package/dist/svg-injector.umd.production.js.map +1 -1
- package/package.json +42 -50
package/README.md
CHANGED
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
[](https://github.com/tanem/svg-injector/actions?query=workflow%3ACI)
|
|
5
5
|
[](https://codecov.io/gh/tanem/svg-injector)
|
|
6
6
|
[](https://www.npmjs.com/package/@tanem/svg-injector)
|
|
7
|
-
[](https://bundlephobia.com/
|
|
7
|
+
[](https://bundlephobia.com/package/@tanem/svg-injector)
|
|
8
8
|
|
|
9
9
|
> A fast, caching, dynamic inline SVG DOM injection library.
|
|
10
10
|
|
|
@@ -28,7 +28,7 @@ SVGInjector(document.getElementById('inject-me'))
|
|
|
28
28
|
|
|
29
29
|
## Avoiding XSS
|
|
30
30
|
|
|
31
|
-
Be careful when injecting arbitrary third-party SVGs into the DOM, as this opens the door to XSS attacks. If you must inject third-party SVGs, it is highly recommended to
|
|
31
|
+
Be careful when injecting arbitrary third-party SVGs into the DOM, as this opens the door to XSS attacks. If you must inject third-party SVGs, it is highly recommended to sanitise the SVG before injecting. The following example uses [DOMPurify](https://github.com/cure53/DOMPurify) to strip out attributes and tags that can execute arbitrary JavaScript. Note that this can alter the behaviour of the SVG.
|
|
32
32
|
|
|
33
33
|
```js
|
|
34
34
|
import { SVGInjector } from '@tanem/svg-injector'
|
|
@@ -100,6 +100,8 @@ SVGInjector(document.getElementsByClassName('inject-me'), {
|
|
|
100
100
|
|
|
101
101
|
> ⚠️This library uses [`Array.from()`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/from), so if you're targeting [browsers that don't support that method](https://kangax.github.io/compat-table/es6/#test-Array_static_methods), you'll need to ensure an appropriate polyfill is included manually. See [this issue comment](https://github.com/tanem/svg-injector/issues/97#issuecomment-483365473) for further detail.
|
|
102
102
|
|
|
103
|
+
> ⚠️As of v11, this library is only tested against modern browsers (Chromium, Firefox, WebKit) via Playwright. IE and other legacy browsers are no longer supported. If you need IE support, pin `@tanem/svg-injector@^10`.
|
|
104
|
+
|
|
103
105
|
```
|
|
104
106
|
$ npm install @tanem/svg-injector
|
|
105
107
|
```
|
package/dist/cache.d.ts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
declare const cache: Map<string,
|
|
1
|
+
declare const cache: Map<string, SVGSVGElement | Error | undefined>;
|
|
2
2
|
export default cache;
|
package/dist/inject-element.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { BeforeEach, Errback, EvalScripts } from './types';
|
|
1
|
+
import type { BeforeEach, Errback, EvalScripts } from './types';
|
|
2
2
|
type ElementType = Element | HTMLElement | null;
|
|
3
3
|
declare const injectElement: (el: NonNullable<ElementType>, evalScripts: EvalScripts, renumerateIRIElements: boolean, cacheRequests: boolean, httpRequestWithCredentials: boolean, beforeEach: BeforeEach, callback: Errback) => void;
|
|
4
4
|
export default injectElement;
|
package/dist/request-queue.d.ts
CHANGED
|
@@ -5,15 +5,15 @@ var contentType = require('content-type');
|
|
|
5
5
|
|
|
6
6
|
var cache = new Map();
|
|
7
7
|
|
|
8
|
-
var cloneSvg = function
|
|
8
|
+
var cloneSvg = function (sourceSvg) {
|
|
9
9
|
return sourceSvg.cloneNode(true);
|
|
10
10
|
};
|
|
11
11
|
|
|
12
|
-
var isLocal = function
|
|
12
|
+
var isLocal = function () {
|
|
13
13
|
return window.location.protocol === 'file:';
|
|
14
14
|
};
|
|
15
15
|
|
|
16
|
-
var makeAjaxRequest = function
|
|
16
|
+
var makeAjaxRequest = function (url, httpRequestWithCredentials, callback) {
|
|
17
17
|
var httpRequest = new XMLHttpRequest();
|
|
18
18
|
httpRequest.onreadystatechange = function () {
|
|
19
19
|
try {
|
|
@@ -55,34 +55,42 @@ var makeAjaxRequest = function makeAjaxRequest(url, httpRequestWithCredentials,
|
|
|
55
55
|
};
|
|
56
56
|
|
|
57
57
|
var requestQueue = {};
|
|
58
|
-
var queueRequest = function
|
|
59
|
-
|
|
58
|
+
var queueRequest = function (url, callback) {
|
|
59
|
+
var _a;
|
|
60
|
+
(_a = requestQueue[url]) !== null && _a !== void 0 ? _a : requestQueue[url] = [];
|
|
60
61
|
requestQueue[url].push(callback);
|
|
61
62
|
};
|
|
62
|
-
var processRequestQueue = function
|
|
63
|
-
var
|
|
63
|
+
var processRequestQueue = function (url) {
|
|
64
|
+
var callbacks = requestQueue[url];
|
|
65
|
+
if (!callbacks) {
|
|
66
|
+
return;
|
|
67
|
+
}
|
|
68
|
+
var _loop_1 = function (i, len) {
|
|
64
69
|
setTimeout(function () {
|
|
65
70
|
if (Array.isArray(requestQueue[url])) {
|
|
66
71
|
var cacheValue = cache.get(url);
|
|
67
|
-
var callback =
|
|
72
|
+
var callback = callbacks[i];
|
|
73
|
+
if (!callback) {
|
|
74
|
+
return;
|
|
75
|
+
}
|
|
68
76
|
if (cacheValue instanceof SVGSVGElement) {
|
|
69
77
|
callback(null, cloneSvg(cacheValue));
|
|
70
78
|
}
|
|
71
79
|
if (cacheValue instanceof Error) {
|
|
72
80
|
callback(cacheValue);
|
|
73
81
|
}
|
|
74
|
-
if (i ===
|
|
82
|
+
if (i === callbacks.length - 1) {
|
|
75
83
|
delete requestQueue[url];
|
|
76
84
|
}
|
|
77
85
|
}
|
|
78
86
|
}, 0);
|
|
79
87
|
};
|
|
80
|
-
for (var i = 0, len =
|
|
88
|
+
for (var i = 0, len = callbacks.length; i < len; i++) {
|
|
81
89
|
_loop_1(i);
|
|
82
90
|
}
|
|
83
91
|
};
|
|
84
92
|
|
|
85
|
-
var loadSvgCached = function
|
|
93
|
+
var loadSvgCached = function (url, httpRequestWithCredentials, callback) {
|
|
86
94
|
if (cache.has(url)) {
|
|
87
95
|
var cacheValue = cache.get(url);
|
|
88
96
|
if (cacheValue === undefined) {
|
|
@@ -107,7 +115,7 @@ var loadSvgCached = function loadSvgCached(url, httpRequestWithCredentials, call
|
|
|
107
115
|
});
|
|
108
116
|
};
|
|
109
117
|
|
|
110
|
-
var loadSvgUncached = function
|
|
118
|
+
var loadSvgUncached = function (url, httpRequestWithCredentials, callback) {
|
|
111
119
|
makeAjaxRequest(url, httpRequestWithCredentials, function (error, httpRequest) {
|
|
112
120
|
var _a;
|
|
113
121
|
if (error) {
|
|
@@ -119,7 +127,7 @@ var loadSvgUncached = function loadSvgUncached(url, httpRequestWithCredentials,
|
|
|
119
127
|
};
|
|
120
128
|
|
|
121
129
|
var idCounter = 0;
|
|
122
|
-
var uniqueId = function
|
|
130
|
+
var uniqueId = function () {
|
|
123
131
|
return ++idCounter;
|
|
124
132
|
};
|
|
125
133
|
|
|
@@ -127,8 +135,9 @@ var injectedElements = [];
|
|
|
127
135
|
var ranScripts = {};
|
|
128
136
|
var svgNamespace = 'http://www.w3.org/2000/svg';
|
|
129
137
|
var xlinkNamespace = 'http://www.w3.org/1999/xlink';
|
|
130
|
-
var injectElement = function
|
|
131
|
-
var
|
|
138
|
+
var injectElement = function (el, evalScripts, renumerateIRIElements, cacheRequests, httpRequestWithCredentials, beforeEach, callback) {
|
|
139
|
+
var _a;
|
|
140
|
+
var elUrl = (_a = el.getAttribute('data-src')) !== null && _a !== void 0 ? _a : el.getAttribute('src');
|
|
132
141
|
if (!elUrl) {
|
|
133
142
|
callback(new Error('Invalid data-src or src attribute'));
|
|
134
143
|
return;
|
|
@@ -142,6 +151,7 @@ var injectElement = function injectElement(el, evalScripts, renumerateIRIElement
|
|
|
142
151
|
el.setAttribute('src', '');
|
|
143
152
|
var loadSvg = cacheRequests ? loadSvgCached : loadSvgUncached;
|
|
144
153
|
loadSvg(elUrl, httpRequestWithCredentials, function (error, svg) {
|
|
154
|
+
var _a, _b;
|
|
145
155
|
if (!svg) {
|
|
146
156
|
injectedElements.splice(injectedElements.indexOf(el), 1);
|
|
147
157
|
el = null;
|
|
@@ -164,7 +174,7 @@ var injectElement = function injectElement(el, evalScripts, renumerateIRIElement
|
|
|
164
174
|
if (elHeight) {
|
|
165
175
|
svg.setAttribute('height', elHeight);
|
|
166
176
|
}
|
|
167
|
-
var mergedClasses = Array.from(new Set(tslib.__spreadArray(tslib.__spreadArray(tslib.__spreadArray([], (svg.getAttribute('class')
|
|
177
|
+
var mergedClasses = Array.from(new Set(tslib.__spreadArray(tslib.__spreadArray(tslib.__spreadArray([], ((_a = svg.getAttribute('class')) !== null && _a !== void 0 ? _a : '').split(' '), true), ['injected-svg'], false), ((_b = el.getAttribute('class')) !== null && _b !== void 0 ? _b : '').split(' '), true))).join(' ').trim();
|
|
168
178
|
svg.setAttribute('class', mergedClasses);
|
|
169
179
|
var elStyle = el.getAttribute('style');
|
|
170
180
|
if (elStyle) {
|
|
@@ -201,32 +211,35 @@ var injectElement = function injectElement(el, evalScripts, renumerateIRIElement
|
|
|
201
211
|
element_1 = key;
|
|
202
212
|
properties_1 = iriElementsAndProperties_1[key];
|
|
203
213
|
elements_1 = svg.querySelectorAll(element_1 + '[id]');
|
|
204
|
-
var _loop_1 = function
|
|
205
|
-
|
|
214
|
+
var _loop_1 = function (a, elementsLen) {
|
|
215
|
+
var currentElement = elements_1[a];
|
|
216
|
+
currentId_1 = currentElement.id;
|
|
206
217
|
newId_1 = currentId_1 + '-' + uniqueId();
|
|
207
218
|
var referencingElements;
|
|
208
219
|
Array.prototype.forEach.call(properties_1, function (property) {
|
|
209
220
|
referencingElements = svg.querySelectorAll('[' + property + '*="' + currentId_1 + '"]');
|
|
210
221
|
for (var b = 0, referencingElementLen = referencingElements.length; b < referencingElementLen; b++) {
|
|
211
|
-
var
|
|
222
|
+
var referencingElement = referencingElements[b];
|
|
223
|
+
var attrValue = referencingElement.getAttribute(property);
|
|
212
224
|
if (attrValue && !attrValue.match(new RegExp('url\\("?#' + currentId_1 + '"?\\)'))) {
|
|
213
225
|
continue;
|
|
214
226
|
}
|
|
215
|
-
|
|
227
|
+
referencingElement.setAttribute(property, 'url(#' + newId_1 + ')');
|
|
216
228
|
}
|
|
217
229
|
});
|
|
218
230
|
var allLinks = svg.querySelectorAll('[*|href]');
|
|
219
231
|
var links = [];
|
|
220
232
|
for (var c = 0, allLinksLen = allLinks.length; c < allLinksLen; c++) {
|
|
221
|
-
var
|
|
222
|
-
|
|
223
|
-
|
|
233
|
+
var link = allLinks[c];
|
|
234
|
+
var href = link.getAttributeNS(xlinkNamespace, 'href');
|
|
235
|
+
if ((href === null || href === void 0 ? void 0 : href.toString()) === '#' + currentElement.id) {
|
|
236
|
+
links.push(link);
|
|
224
237
|
}
|
|
225
238
|
}
|
|
226
239
|
for (var d = 0, linksLen = links.length; d < linksLen; d++) {
|
|
227
240
|
links[d].setAttributeNS(xlinkNamespace, 'href', '#' + newId_1);
|
|
228
241
|
}
|
|
229
|
-
|
|
242
|
+
currentElement.id = newId_1;
|
|
230
243
|
};
|
|
231
244
|
for (var a = 0, elementsLen = elements_1.length; a < elementsLen; a++) {
|
|
232
245
|
_loop_1(a);
|
|
@@ -239,13 +252,14 @@ var injectElement = function injectElement(el, evalScripts, renumerateIRIElement
|
|
|
239
252
|
var script;
|
|
240
253
|
var scriptType;
|
|
241
254
|
for (var i = 0, scriptsLen = scripts.length; i < scriptsLen; i++) {
|
|
242
|
-
|
|
255
|
+
var scriptElement = scripts[i];
|
|
256
|
+
scriptType = scriptElement.getAttribute('type');
|
|
243
257
|
if (!scriptType || scriptType === 'application/ecmascript' || scriptType === 'application/javascript' || scriptType === 'text/javascript') {
|
|
244
|
-
script =
|
|
258
|
+
script = scriptElement.innerText || scriptElement.textContent;
|
|
245
259
|
if (script) {
|
|
246
260
|
scriptsToEval.push(script);
|
|
247
261
|
}
|
|
248
|
-
svg.removeChild(
|
|
262
|
+
svg.removeChild(scriptElement);
|
|
249
263
|
}
|
|
250
264
|
}
|
|
251
265
|
if (scriptsToEval.length > 0 && (evalScripts === 'always' || evalScripts === 'once' && !ranScripts[elUrl])) {
|
|
@@ -274,7 +288,7 @@ var injectElement = function injectElement(el, evalScripts, renumerateIRIElement
|
|
|
274
288
|
});
|
|
275
289
|
};
|
|
276
290
|
|
|
277
|
-
var SVGInjector = function
|
|
291
|
+
var SVGInjector = function (elements, _a) {
|
|
278
292
|
var _b = _a === void 0 ? {} : _a,
|
|
279
293
|
_c = _b.afterAll,
|
|
280
294
|
afterAll = _c === void 0 ? function () {
|
|
@@ -299,7 +313,11 @@ var SVGInjector = function SVGInjector(elements, _a) {
|
|
|
299
313
|
if (elements && 'length' in elements) {
|
|
300
314
|
var elementsLoaded_1 = 0;
|
|
301
315
|
for (var i = 0, j = elements.length; i < j; i++) {
|
|
302
|
-
|
|
316
|
+
var element = elements[i];
|
|
317
|
+
if (!element) {
|
|
318
|
+
continue;
|
|
319
|
+
}
|
|
320
|
+
injectElement(element, evalScripts, renumerateIRIElements, cacheRequests, httpRequestWithCredentials, beforeEach, function (error, svg) {
|
|
303
321
|
afterEach(error, svg);
|
|
304
322
|
if (elements && 'length' in elements && elements.length === ++elementsLoaded_1) {
|
|
305
323
|
afterAll(elementsLoaded_1);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"svg-injector.cjs.development.js","sources":["../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 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('text/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 requestQueue[url] = requestQueue[url] || [];\n requestQueue[url].push(callback);\n};\nexport var processRequestQueue = function (url) {\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 = requestQueue[url][i];\n if (cacheValue instanceof SVGSVGElement) {\n callback(null, cloneSvg(cacheValue));\n }\n if (cacheValue instanceof Error) {\n callback(cacheValue);\n }\n if (i === requestQueue[url].length - 1) {\n delete requestQueue[url];\n }\n }\n }, 0);\n };\n for (var i = 0, len = requestQueue[url].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 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 elUrl = el.getAttribute('data-src') || 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 loadSvg = cacheRequests ? loadSvgCached : loadSvgUncached;\n loadSvg(elUrl, httpRequestWithCredentials, function (error, svg) {\n if (!svg) {\n injectedElements.splice(injectedElements.indexOf(el), 1);\n el = null;\n callback(error);\n return;\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([], (svg.getAttribute('class') || '').split(' '), true), [\n 'injected-svg'\n ], false), (el.getAttribute('class') || '').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 element_1;\n var elements_1;\n var properties_1;\n var currentId_1;\n var newId_1;\n Object.keys(iriElementsAndProperties_1).forEach(function (key) {\n element_1 = key;\n properties_1 = iriElementsAndProperties_1[key];\n elements_1 = svg.querySelectorAll(element_1 + '[id]');\n var _loop_1 = function (a, elementsLen) {\n currentId_1 = elements_1[a].id;\n newId_1 = currentId_1 + '-' + uniqueId();\n var referencingElements;\n Array.prototype.forEach.call(properties_1, function (property) {\n referencingElements = svg.querySelectorAll('[' + property + '*=\"' + currentId_1 + '\"]');\n for (var b = 0, referencingElementLen = referencingElements.length; b < referencingElementLen; b++) {\n var attrValue = referencingElements[b].getAttribute(property);\n if (attrValue &&\n !attrValue.match(new RegExp('url\\\\(\"?#' + currentId_1 + '\"?\\\\)'))) {\n continue;\n }\n referencingElements[b].setAttribute(property, 'url(#' + newId_1 + ')');\n }\n });\n var allLinks = svg.querySelectorAll('[*|href]');\n var links = [];\n for (var c = 0, allLinksLen = allLinks.length; c < allLinksLen; c++) {\n var href = allLinks[c].getAttributeNS(xlinkNamespace, 'href');\n if (href && href.toString() === '#' + elements_1[a].id) {\n links.push(allLinks[c]);\n }\n }\n for (var d = 0, linksLen = links.length; d < linksLen; d++) {\n links[d].setAttributeNS(xlinkNamespace, 'href', '#' + newId_1);\n }\n elements_1[a].id = newId_1;\n };\n for (var a = 0, elementsLen = elements_1.length; a < elementsLen; a++) {\n _loop_1(a, elementsLen);\n }\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 scriptType = scripts[i].getAttribute('type');\n if (!scriptType ||\n scriptType === 'application/ecmascript' ||\n scriptType === 'application/javascript' ||\n scriptType === 'text/javascript') {\n script = scripts[i].innerText || scripts[i].textContent;\n if (script) {\n scriptsToEval.push(script);\n }\n svg.removeChild(scripts[i]);\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 injectElement(elements[i], 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":["cache","Map","cloneSvg","sourceSvg","cloneNode","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","push","processRequestQueue","i","len","setTimeout","Array","isArray","cacheValue","get","SVGSVGElement","length","loadSvgCached","has","undefined","set","_a","documentElement","loadSvgUncached","idCounter","uniqueId","injectedElements","ranScripts","svgNamespace","xlinkNamespace","injectElement","el","evalScripts","renumerateIRIElements","cacheRequests","beforeEach","elUrl","getAttribute","indexOf","splice","setAttribute","loadSvg","svg","elId","elTitle","elWidth","elHeight","mergedClasses","from","Set","__spreadArray","split","join","trim","elStyle","elData","filter","call","attributes","at","name","prototype","forEach","dataAttr","value","iriElementsAndProperties_1","clipPath","cursor","linearGradient","marker","mask","path","pattern","radialGradient","element_1","elements_1","properties_1","currentId_1","newId_1","Object","keys","key","querySelectorAll","a","elementsLen","id","referencingElements","property","b","referencingElementLen","attrValue","match","RegExp","allLinks","links","c","allLinksLen","href","getAttributeNS","toString","d","linksLen","setAttributeNS","removeAttribute","scripts","scriptsToEval","script","scriptType","scriptsLen","innerText","textContent","removeChild","l","scriptsToEvalLen","Function","styleTags","styleTag","parentNode","replaceChild","SVGInjector","elements","_b","_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/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 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('text/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 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 loadSvg = cacheRequests ? loadSvgCached : loadSvgUncached;\n loadSvg(elUrl, httpRequestWithCredentials, function (error, svg) {\n var _a, _b;\n if (!svg) {\n injectedElements.splice(injectedElements.indexOf(el), 1);\n el = null;\n callback(error);\n return;\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 element_1;\n var elements_1;\n var properties_1;\n var currentId_1;\n var newId_1;\n Object.keys(iriElementsAndProperties_1).forEach(function (key) {\n element_1 = key;\n properties_1 = iriElementsAndProperties_1[key];\n elements_1 = svg.querySelectorAll(element_1 + '[id]');\n var _loop_1 = function (a, elementsLen) {\n var currentElement = elements_1[a];\n currentId_1 = currentElement.id;\n newId_1 = currentId_1 + '-' + uniqueId();\n var referencingElements;\n Array.prototype.forEach.call(properties_1, function (property) {\n referencingElements = svg.querySelectorAll('[' + property + '*=\"' + currentId_1 + '\"]');\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 !attrValue.match(new RegExp('url\\\\(\"?#' + currentId_1 + '\"?\\\\)'))) {\n continue;\n }\n referencingElement.setAttribute(property, 'url(#' + newId_1 + ')');\n }\n });\n var allLinks = svg.querySelectorAll('[*|href]');\n var links = [];\n for (var c = 0, allLinksLen = allLinks.length; c < allLinksLen; c++) {\n var link = allLinks[c];\n var href = link.getAttributeNS(xlinkNamespace, 'href');\n if ((href === null || href === void 0 ? void 0 : href.toString()) === '#' + currentElement.id) {\n links.push(link);\n }\n }\n for (var d = 0, linksLen = links.length; d < linksLen; d++) {\n links[d].setAttributeNS(xlinkNamespace, 'href', '#' + newId_1);\n }\n currentElement.id = newId_1;\n };\n for (var a = 0, elementsLen = elements_1.length; a < elementsLen; a++) {\n _loop_1(a, elementsLen);\n }\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":["cache","Map","cloneSvg","sourceSvg","cloneNode","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","i","len","setTimeout","Array","isArray","cacheValue","get","SVGSVGElement","length","loadSvgCached","has","undefined","set","documentElement","loadSvgUncached","idCounter","uniqueId","injectedElements","ranScripts","svgNamespace","xlinkNamespace","injectElement","el","evalScripts","renumerateIRIElements","cacheRequests","beforeEach","elUrl","getAttribute","indexOf","splice","setAttribute","loadSvg","svg","elId","elTitle","elWidth","elHeight","mergedClasses","from","Set","__spreadArray","split","_b","join","trim","elStyle","elData","filter","call","attributes","at","name","prototype","forEach","dataAttr","value","iriElementsAndProperties_1","clipPath","cursor","linearGradient","marker","mask","path","pattern","radialGradient","element_1","elements_1","properties_1","currentId_1","newId_1","Object","keys","key","querySelectorAll","a","elementsLen","currentElement","id","referencingElements","property","b","referencingElementLen","referencingElement","attrValue","match","RegExp","allLinks","links","c","allLinksLen","link","href","getAttributeNS","toString","d","linksLen","setAttributeNS","removeAttribute","scripts","scriptsToEval","script","scriptType","scriptsLen","scriptElement","innerText","textContent","removeChild","l","scriptsToEvalLen","Function","styleTags","styleTag","parentNode","replaceChild","SVGInjector","elements","_c","afterAll","_d","afterEach","_e","_f","_g","_h","_j","elementsLoaded_1","j","element"],"mappings":"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"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";var tslib=require("tslib"),contentType=require("content-type"),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("text/xml"),n.send()},requestQueue={},queueRequest=function(e,t){requestQueue[e]
|
|
1
|
+
"use strict";var tslib=require("tslib"),contentType=require("content-type"),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("text/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",""),(n?loadSvgCached:loadSvgUncached)(s,i,(function(n,i){var o,u;if(!i)return injectedElements.splice(injectedElements.indexOf(e),1),e=null,void l(n);var c=e.getAttribute("id");c&&i.setAttribute("id",c);var d=e.getAttribute("title");d&&i.setAttribute("title",d);var f=e.getAttribute("width");f&&i.setAttribute("width",f);var v=e.getAttribute("height");v&&i.setAttribute("height",v);var p=Array.from(new Set(tslib.__spreadArray(tslib.__spreadArray(tslib.__spreadArray([],(null!==(o=i.getAttribute("class"))&&void 0!==o?o:"").split(" "),!0),["injected-svg"],!1),(null!==(u=e.getAttribute("class"))&&void 0!==u?u:"").split(" "),!0))).join(" ").trim();i.setAttribute("class",p);var h=e.getAttribute("style");h&&i.setAttribute("style",h),i.setAttribute("data-src",s);var m=[].filter.call(e.attributes,(function(e){return/^data-\w[\w-]*$/.test(e.name)}));if(Array.prototype.forEach.call(m,(function(e){e.name&&e.value&&i.setAttribute(e.name,e.value)})),r){var g,A,b,w,y={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"]};Object.keys(y).forEach((function(e){A=y[e];for(var t=function(e,t){var r,n=g[e];w=(b=n.id)+"-"+uniqueId(),Array.prototype.forEach.call(A,(function(e){for(var t=0,n=(r=i.querySelectorAll("["+e+'*="'+b+'"]')).length;t<n;t++){var a=r[t],l=a.getAttribute(e);l&&!l.match(new RegExp('url\\("?#'+b+'"?\\)'))||a.setAttribute(e,"url(#"+w+")")}}));for(var a=i.querySelectorAll("[*|href]"),l=[],o=0,s=a.length;o<s;o++){var u=a[o],c=u.getAttributeNS(xlinkNamespace,"href");(null==c?void 0:c.toString())==="#"+n.id&&l.push(u)}for(var d=0,f=l.length;d<f;d++)l[d].setAttributeNS(xlinkNamespace,"href","#"+w);n.id=w},r=0,n=(g=i.querySelectorAll(e+"[id]")).length;r<n;r++)t(r)}))}i.removeAttribute("xmlns:a");for(var E,S,q=i.querySelectorAll("script"),j=[],x=0,k=q.length;x<k;x++){var G=q[x];(S=G.getAttribute("type"))&&"application/ecmascript"!==S&&"application/javascript"!==S&&"text/javascript"!==S||((E=G.innerText||G.textContent)&&j.push(E),i.removeChild(G))}if(j.length>0&&("always"===t||"once"===t&&!ranScripts[s])){for(var R=0,V=j.length;R<V;R++)new Function(j[R])(window);ranScripts[s]=!0}var C=i.querySelectorAll("style");if(Array.prototype.forEach.call(C,(function(e){e.textContent+=""})),i.setAttribute("xmlns",svgNamespace),i.setAttribute("xmlns:xlink",xlinkNamespace),a(i),!e.parentNode)return injectedElements.splice(injectedElements.indexOf(e),1),e=null,void l(new Error("Parent node is null"));e.parentNode.replaceChild(i,e),injectedElements.splice(injectedElements.indexOf(e),1),e=null,l(null,i)}))}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,f=void 0===d?"never":d,v=r.httpRequestWithCredentials,p=void 0!==v&&v,h=r.renumerateIRIElements,m=void 0===h||h;if(e&&"length"in e)for(var g=0,A=0,b=e.length;A<b;A++){var w=e[A];w&&injectElement(w,f,m,c,p,s,(function(t,r){l(t,r),e&&"length"in e&&e.length===++g&&i(g)}))}else e?injectElement(e,f,m,c,p,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/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 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('text/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 requestQueue[url] = requestQueue[url] || [];\n requestQueue[url].push(callback);\n};\nexport var processRequestQueue = function (url) {\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 = requestQueue[url][i];\n if (cacheValue instanceof SVGSVGElement) {\n callback(null, cloneSvg(cacheValue));\n }\n if (cacheValue instanceof Error) {\n callback(cacheValue);\n }\n if (i === requestQueue[url].length - 1) {\n delete requestQueue[url];\n }\n }\n }, 0);\n };\n for (var i = 0, len = requestQueue[url].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 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 elUrl = el.getAttribute('data-src') || 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 loadSvg = cacheRequests ? loadSvgCached : loadSvgUncached;\n loadSvg(elUrl, httpRequestWithCredentials, function (error, svg) {\n if (!svg) {\n injectedElements.splice(injectedElements.indexOf(el), 1);\n el = null;\n callback(error);\n return;\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([], (svg.getAttribute('class') || '').split(' '), true), [\n 'injected-svg'\n ], false), (el.getAttribute('class') || '').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 element_1;\n var elements_1;\n var properties_1;\n var currentId_1;\n var newId_1;\n Object.keys(iriElementsAndProperties_1).forEach(function (key) {\n element_1 = key;\n properties_1 = iriElementsAndProperties_1[key];\n elements_1 = svg.querySelectorAll(element_1 + '[id]');\n var _loop_1 = function (a, elementsLen) {\n currentId_1 = elements_1[a].id;\n newId_1 = currentId_1 + '-' + uniqueId();\n var referencingElements;\n Array.prototype.forEach.call(properties_1, function (property) {\n referencingElements = svg.querySelectorAll('[' + property + '*=\"' + currentId_1 + '\"]');\n for (var b = 0, referencingElementLen = referencingElements.length; b < referencingElementLen; b++) {\n var attrValue = referencingElements[b].getAttribute(property);\n if (attrValue &&\n !attrValue.match(new RegExp('url\\\\(\"?#' + currentId_1 + '\"?\\\\)'))) {\n continue;\n }\n referencingElements[b].setAttribute(property, 'url(#' + newId_1 + ')');\n }\n });\n var allLinks = svg.querySelectorAll('[*|href]');\n var links = [];\n for (var c = 0, allLinksLen = allLinks.length; c < allLinksLen; c++) {\n var href = allLinks[c].getAttributeNS(xlinkNamespace, 'href');\n if (href && href.toString() === '#' + elements_1[a].id) {\n links.push(allLinks[c]);\n }\n }\n for (var d = 0, linksLen = links.length; d < linksLen; d++) {\n links[d].setAttributeNS(xlinkNamespace, 'href', '#' + newId_1);\n }\n elements_1[a].id = newId_1;\n };\n for (var a = 0, elementsLen = elements_1.length; a < elementsLen; a++) {\n _loop_1(a, elementsLen);\n }\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 scriptType = scripts[i].getAttribute('type');\n if (!scriptType ||\n scriptType === 'application/ecmascript' ||\n scriptType === 'application/javascript' ||\n scriptType === 'text/javascript') {\n script = scripts[i].innerText || scripts[i].textContent;\n if (script) {\n scriptsToEval.push(script);\n }\n svg.removeChild(scripts[i]);\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 injectElement(elements[i], 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":["cache","Map","cloneSvg","sourceSvg","cloneNode","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","push","processRequestQueue","i","len","setTimeout","Array","isArray","cacheValue","get","SVGSVGElement","length","loadSvgCached","has","undefined","set","_a","documentElement","loadSvgUncached","idCounter","uniqueId","injectedElements","ranScripts","svgNamespace","xlinkNamespace","injectElement","el","evalScripts","renumerateIRIElements","cacheRequests","beforeEach","elUrl","getAttribute","indexOf","splice","setAttribute","svg","elId","elTitle","elWidth","elHeight","mergedClasses","from","Set","__spreadArray","split","join","trim","elStyle","elData","filter","call","attributes","at","name","prototype","forEach","dataAttr","value","elements_1","properties_1","currentId_1","newId_1","iriElementsAndProperties_1","clipPath","cursor","linearGradient","marker","mask","path","pattern","radialGradient","Object","keys","key","a","elementsLen","referencingElements","id","property","b","referencingElementLen","querySelectorAll","attrValue","match","RegExp","allLinks","links","c","allLinksLen","href","getAttributeNS","toString","d","linksLen","setAttributeNS","removeAttribute","script","scriptType","scripts","scriptsToEval","scriptsLen","innerText","textContent","removeChild","l","scriptsToEvalLen","Function","styleTags","styleTag","parentNode","replaceChild","SVGInjector","elements","_b","_c","afterAll","_d","afterEach","_e","_f","_g","_h","_j","elementsLoaded_1","j"],"mappings":"4EAAMA,MAAQ,IAAIC,ICAZC,SAAW,SAACC,GAChB,OAAAA,EAAUC,WAAU,EAApB,ECDIC,QAAU,WAAM,MAA6B,UAA7BC,OAAOC,SAASC,QAAhB,ECGhBC,gBAAkB,SACtBC,EACAC,EACAC,GAEA,IAAMC,EAAc,IAAIC,eAExBD,EAAYE,mBAAqB,WAC/B,IACE,IAAK,SAASC,KAAKN,IAAmC,IAA3BG,EAAYI,WAAkB,CACvD,IAAMC,EAAcL,EAAYM,kBAAkB,gBAClD,IAAKD,EACH,MAAM,IAAIE,MAAM,0BAGV,IAAAC,EAASC,YAAAA,MAAiBJ,GAAYG,KAC9C,GAAe,kBAATA,GAAqC,eAATA,EAChC,MAAM,IAAID,MAAM,yBAAAG,OAAyBF,IAI7C,GAA+B,IAA3BR,EAAYI,WAAkB,CAChC,GAA2B,MAAvBJ,EAAYW,QAA8C,OAA5BX,EAAYY,YAC5C,MAAM,IAAIL,MACRf,UACI,+IAGA,4BAA8BK,GAItC,KACyB,MAAvBG,EAAYW,QACXnB,WAAoC,IAAvBQ,EAAYW,QAI1B,MAAM,IAAIJ,MACR,0CACEP,EAAYW,OACZ,IACAX,EAAYa,YANhBd,EAAS,KAAMC,GAUpB,CAAC,MAAOc,GAEP,GADAd,EAAYe,UACRD,aAAiBP,OAGnB,MAAMO,EAFNf,EAASe,EAAOd,KAOtBA,EAAYgB,KAAK,MAAOnB,GAExBG,EAAYiB,gBAAkBnB,EAG1BE,EAAYkB,kBACdlB,EAAYkB,iBAAiB,YAG/BlB,EAAYmB,MACd,ECjEIC,aAA6C,CAAA,EAMpCC,aAAe,SAACxB,EAAaE,GACxCqB,aAAavB,GAAOuB,aAAavB,IAAQ,GACzCuB,aAAavB,GAAKyB,KAAKvB,EACzB,EAEawB,oBAAsB,SAAC1B,GAClC,IAAS2B,IAAAA,EAAAA,SAAAA,EAAOC,GAEdC,YAAW,WAET,GAAIC,MAAMC,QAAQR,aAAavB,IAAO,CACpC,IAAMgC,EAAa1C,MAAM2C,IAAIjC,GACvBE,EAAWqB,aAAavB,GAAK2B,GAG/BK,aAAsBE,eACxBhC,EAAS,KAAMV,SAASwC,IAItBA,aAAsBtB,OACxBR,EAAS8B,GAIPL,IAAMJ,aAAavB,GAAKmC,OAAS,UAC5BZ,aAAavB,GAGzB,GAAE,IAvBI2B,EAAI,EAAGC,EAAML,aAAavB,GAAKmC,OAAQR,EAAIC,EAAKD,IAAhDA,EAAAA,EAyBX,ECnCMS,cAAgB,SACpBpC,EACAC,EACAC,GAEA,GAAIZ,MAAM+C,IAAIrC,GAAM,CAClB,IAAMgC,EAAa1C,MAAM2C,IAAIjC,GAE7B,QAAmBsC,IAAfN,EAEF,YADAR,aAAaxB,EAAKE,GAKpB,GAAI8B,aAAsBE,cAExB,YADAhC,EAAS,KAAMV,SAASwC,IAQ5B1C,MAAMiD,IAAIvC,OAAKsC,GACfd,aAAaxB,EAAKE,GAElBH,gBAAgBC,EAAKC,GAA4B,SAACgB,EAAOd,SAEnDc,EACF3B,MAAMiD,IAAIvC,EAAKiB,IAEQuB,QAAvBA,EAAArC,EAAYY,uBAAWyB,SAAAA,EAAEC,2BAA2BP,eAEpD5C,MAAMiD,IAAIvC,EAAKG,EAAYY,YAAY0B,iBAEzCf,oBAAoB1B,EACtB,GACF,ECxCM0C,gBAAkB,SACtB1C,EACAC,EACAC,GAEAH,gBAAgBC,EAAKC,GAA4B,SAACgB,EAAOd,SAEnDc,EACFf,EAASe,IAEcuB,QAAvBA,EAAArC,EAAYY,uBAAWyB,SAAAA,EAAEC,2BAA2BP,eAEpDhC,EAAS,KAAMC,EAAYY,YAAY0B,gBAE3C,GACF,EClBIE,UAAY,EACVC,SAAW,WAAM,QAAED,SAAF,ECMjBE,iBAAkC,GAClCC,WAAyC,CAAA,EACzCC,aAAe,6BACfC,eAAiB,+BAEjBC,cAAgB,SACpBC,EACAC,EACAC,EACAC,EACApD,EACAqD,EACApD,GAEA,IAAMqD,EAAQL,EAAGM,aAAa,aAAeN,EAAGM,aAAa,OAG7D,GAAKD,EAAL,CAUA,IAAsC,IAAlCV,iBAAiBY,QAAQP,GAI3B,OAFAL,iBAAiBa,OAAOb,iBAAiBY,QAAQP,GAAK,QACpDA,EAAqB,MAMzBL,iBAAiBpB,KAAKyB,GAGtBA,EAAGS,aAAa,MAAO,KAEPN,EAAgBjB,cAAgBM,iBAExCa,EAAOtD,GAA4B,SAACgB,EAAO2C,GAEjD,IAAKA,EAKH,OAHAf,iBAAiBa,OAAOb,iBAAiBY,QAAQP,GAAK,GACpDA,EAAqB,UACvBhD,EAASe,GAIX,IAAM4C,EAAOX,EAAGM,aAAa,MAEzBK,GACFD,EAAID,aAAa,KAAME,GAGzB,IAAMC,EAAUZ,EAAGM,aAAa,SAE5BM,GACFF,EAAID,aAAa,QAASG,GAG5B,IAAMC,EAAUb,EAAGM,aAAa,SAE5BO,GACFH,EAAID,aAAa,QAASI,GAG5B,IAAMC,EAAWd,EAAGM,aAAa,UAE7BQ,GACFJ,EAAID,aAAa,SAAUK,GAG7B,IAAMC,EAAgBnC,MAAMoC,KAC1B,IAAIC,IAAGC,MAAAA,cAAAA,MAAAA,cAAAA,MAAAA,cACF,IAACR,EAAIJ,aAAa,UAAY,IAAIa,MAAM,MAC3C,GAAA,CAAA,qBACInB,EAAGM,aAAa,UAAY,IAAIa,MAAM,MAAI,KAG/CC,KAAK,KACLC,OACHX,EAAID,aAAa,QAASM,GAE1B,IAAMO,EAAUtB,EAAGM,aAAa,SAE5BgB,GACFZ,EAAID,aAAa,QAASa,GAG5BZ,EAAID,aAAa,WAAYJ,GAG7B,IAAMkB,EAAS,GAAGC,OAAOC,KAAKzB,EAAG0B,YAAY,SAACC,GAC5C,MAAO,kBAAkBvE,KAAKuE,EAAGC,KACnC,IAUA,GARAhD,MAAMiD,UAAUC,QAAQL,KAAKF,GAAQ,SAACQ,GAEhCA,EAASH,MAAQG,EAASC,OAC5BtB,EAAID,aAAasB,EAASH,KAAMG,EAASC,MAE7C,IAGI9B,EAAuB,CAezB,IAcI+B,EACAC,EACAC,EACAC,EAjBEC,EAAwD,CAC5DC,SAAU,CAAC,aACX,gBAAiB,CAAC,iBAClBC,OAAQ,CAAC,UACTf,OAAQ,CAAC,UACTgB,eAAgB,CAAC,OAAQ,UACzBC,OAAQ,CAAC,SAAU,eAAgB,aAAc,cACjDC,KAAM,CAAC,QACPC,KAAM,GACNC,QAAS,CAAC,OAAQ,UAClBC,eAAgB,CAAC,OAAQ,WAS3BC,OAAOC,KAAKV,GAA0BP,SAAQ,SAACkB,GAE7Cd,EAAaG,EAAyBW,GAGtC,IAASC,IAAAA,EAAAA,SAAAA,EAAOC,GAKd,IAAIC,EAHJf,GADAD,EAAYF,EAASgB,GAAGG,IACJ,IAAM1D,WAI1Bd,MAAMiD,UAAUC,QAAQL,KAAKS,GAAY,SAACmB,GAMxC,IACE,IAAIC,EAAI,EAAGC,GAJbJ,EAAsBzC,EAAI8C,iBACxB,IAAMH,EAAW,MAAQlB,EAAY,OAGkBlD,OACvDqE,EAAIC,EACJD,IACA,CACA,IAAMG,EACJN,EAAoBG,GAAGhD,aAAa+C,GAEpCI,IACCA,EAAUC,MAAM,IAAIC,OAAO,YAAcxB,EAAY,WAIxDgB,EAAoBG,GAAG7C,aACrB4C,EACA,QAAUjB,EAAQ,KAGxB,IAIA,IAFA,IAAMwB,EAAWlD,EAAI8C,iBAAiB,YAChCK,EAAQ,GACLC,EAAI,EAAGC,EAAcH,EAAS3E,OAAQ6E,EAAIC,EAAaD,IAAK,CACnE,IAAME,EAAOJ,EAASE,GAAGG,eAAenE,eAAgB,QAEpDkE,GAAQA,EAAKE,aAAe,IAAMjC,EAASgB,GAAGG,IAChDS,EAAMtF,KAAKqF,EAASE,IAGxB,IAAK,IAAIK,EAAI,EAAGC,EAAWP,EAAM5E,OAAQkF,EAAIC,EAAUD,IACrDN,EAAMM,GAAGE,eAAevE,eAAgB,OAAQ,IAAMsC,GAGxDH,EAASgB,GAAGG,GAAKhB,GA7CVa,EAAI,EAAGC,GADhBjB,EAAWvB,EAAI8C,iBAHLR,EAGgC,SACH/D,OAAQgE,EAAIC,EAAaD,IAAvDA,EAAAA,EA+CX,IAKFvC,EAAI4D,gBAAgB,WAWpB,IALA,IAEIC,EACAC,EAHEC,EAAU/D,EAAI8C,iBAAiB,UAC/BkB,EAA0B,GAIvBjG,EAAI,EAAGkG,EAAaF,EAAQxF,OAAQR,EAAIkG,EAAYlG,KAC3D+F,EAAaC,EAAQhG,GAAG6B,aAAa,UAOpB,2BAAfkE,GACe,2BAAfA,GACe,oBAAfA,KAGAD,EAASE,EAAQhG,GAAGmG,WAAaH,EAAQhG,GAAGoG,cAK1CH,EAAcnG,KAAKgG,GAIrB7D,EAAIoE,YAAYL,EAAQhG,KAM5B,GACEiG,EAAczF,OAAS,IACN,WAAhBgB,GACkB,SAAhBA,IAA2BL,WAAWS,IACzC,CACA,IACE,IAAI0E,EAAI,EAAGC,EAAmBN,EAAczF,OAC5C8F,EAAIC,EACJD,IAQA,IAAIE,SAASP,EAAcK,GAA3B,CAA+BrI,QAIjCkD,WAAWS,IAAS,EAQtB,IAAM6E,EAAYxE,EAAI8C,iBAAiB,SAUvC,GATA5E,MAAMiD,UAAUC,QAAQL,KAAKyD,GAAW,SAACC,GACvCA,EAASN,aAAe,EAC1B,IAEAnE,EAAID,aAAa,QAASZ,cAC1Ba,EAAID,aAAa,cAAeX,gBAEhCM,EAAWM,IAENV,EAAGoF,WAIN,OAHAzF,iBAAiBa,OAAOb,iBAAiBY,QAAQP,GAAK,GACpDA,EAAqB,UACvBhD,EAAS,IAAIQ,MAAM,wBAKrBwC,EAAGoF,WAAWC,aAAa3E,EAAKV,GAKhCL,iBAAiBa,OAAOb,iBAAiBY,QAAQP,GAAK,GACpDA,EAAqB,KAEvBhD,EAAS,KAAM0D,EACjB,SApRE1D,EAAS,IAAIQ,MAAM,qCAqRvB,EC/RM8H,YAAc,SAClBC,EACAjG,GAAAkG,IAAAA,OAQkB,IARlBlG,EAQkB,CAAE,EAAAA,EAPlBmG,EAAAD,EAAAE,SAAAA,OAAW,IAAHD,EAAG,WAAM,EAASA,EAC1BE,EAAAH,EAAAI,UAAAA,OAAY,IAAHD,EAAG,WAAM,EAASA,EAC3BE,EAAAL,EAAApF,WAAAA,OAAa,IAAHyF,EAAG,WAAM,EAASA,EAC5BC,EAAAN,EAAArF,cAAAA,OAAgB,IAAH2F,GAAOA,EACpBC,EAAAP,EAAAvF,YAAAA,OAAc,IAAH8F,EAAG,QAAOA,EACrBC,EAAAR,EAAAzI,2BAAAA,OAA6B,IAAHiJ,GAAQA,EAClCC,EAAAT,EAAAtF,sBAAAA,OAAwB,IAAH+F,GAAOA,EAG9B,GAAIV,GAAY,WAAYA,EAE1B,IADA,IAAIW,EAAiB,EACZzH,EAAI,EAAG0H,EAAIZ,EAAStG,OAAQR,EAAI0H,EAAG1H,IAC1CsB,cACEwF,EAAS9G,GACTwB,EACAC,EACAC,EACApD,EACAqD,GACA,SAACrC,EAAO2C,GACNkF,EAAU7H,EAAO2C,GAEf6E,GACA,WAAYA,GACZA,EAAStG,WAAaiH,GAEtBR,EAASQ,EAEb,SAGKX,EACTxF,cACEwF,EACAtF,EACAC,EACAC,EACApD,EACAqD,GACA,SAACrC,EAAO2C,GACNkF,EAAU7H,EAAO2C,GACjBgF,EAAS,GACTH,EAAW,IACb,IAGFG,EAAS,EAEb"}
|
|
1
|
+
{"version":3,"file":"svg-injector.cjs.production.js","sources":["../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 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('text/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 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 loadSvg = cacheRequests ? loadSvgCached : loadSvgUncached;\n loadSvg(elUrl, httpRequestWithCredentials, function (error, svg) {\n var _a, _b;\n if (!svg) {\n injectedElements.splice(injectedElements.indexOf(el), 1);\n el = null;\n callback(error);\n return;\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 element_1;\n var elements_1;\n var properties_1;\n var currentId_1;\n var newId_1;\n Object.keys(iriElementsAndProperties_1).forEach(function (key) {\n element_1 = key;\n properties_1 = iriElementsAndProperties_1[key];\n elements_1 = svg.querySelectorAll(element_1 + '[id]');\n var _loop_1 = function (a, elementsLen) {\n var currentElement = elements_1[a];\n currentId_1 = currentElement.id;\n newId_1 = currentId_1 + '-' + uniqueId();\n var referencingElements;\n Array.prototype.forEach.call(properties_1, function (property) {\n referencingElements = svg.querySelectorAll('[' + property + '*=\"' + currentId_1 + '\"]');\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 !attrValue.match(new RegExp('url\\\\(\"?#' + currentId_1 + '\"?\\\\)'))) {\n continue;\n }\n referencingElement.setAttribute(property, 'url(#' + newId_1 + ')');\n }\n });\n var allLinks = svg.querySelectorAll('[*|href]');\n var links = [];\n for (var c = 0, allLinksLen = allLinks.length; c < allLinksLen; c++) {\n var link = allLinks[c];\n var href = link.getAttributeNS(xlinkNamespace, 'href');\n if ((href === null || href === void 0 ? void 0 : href.toString()) === '#' + currentElement.id) {\n links.push(link);\n }\n }\n for (var d = 0, linksLen = links.length; d < linksLen; d++) {\n links[d].setAttributeNS(xlinkNamespace, 'href', '#' + newId_1);\n }\n currentElement.id = newId_1;\n };\n for (var a = 0, elementsLen = elements_1.length; a < elementsLen; a++) {\n _loop_1(a, elementsLen);\n }\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":["cache","Map","cloneSvg","sourceSvg","cloneNode","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","i","len","setTimeout","Array","isArray","cacheValue","get","SVGSVGElement","length","loadSvgCached","has","undefined","set","documentElement","loadSvgUncached","idCounter","uniqueId","injectedElements","ranScripts","svgNamespace","xlinkNamespace","injectElement","el","evalScripts","renumerateIRIElements","cacheRequests","beforeEach","elUrl","getAttribute","indexOf","splice","setAttribute","svg","elId","elTitle","elWidth","elHeight","mergedClasses","from","Set","__spreadArray","split","_b","join","trim","elStyle","elData","filter","call","attributes","at","name","prototype","forEach","dataAttr","value","elements_1","properties_1","currentId_1","newId_1","iriElementsAndProperties_1","clipPath","cursor","linearGradient","marker","mask","path","pattern","radialGradient","Object","keys","key","a","elementsLen","referencingElements","currentElement","id","property","b","referencingElementLen","querySelectorAll","referencingElement","attrValue","match","RegExp","allLinks","links","c","allLinksLen","link","href","getAttributeNS","toString","d","linksLen","setAttributeNS","removeAttribute","script","scriptType","scripts","scriptsToEval","scriptsLen","scriptElement","innerText","textContent","removeChild","l","scriptsToEvalLen","Function","styleTags","styleTag","parentNode","replaceChild","SVGInjector","elements","_c","afterAll","_d","afterEach","_e","_f","_g","_h","_j","elementsLoaded_1","j","element"],"mappings":"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"}
|
package/dist/svg-injector.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { AfterAll, BeforeEach, Errback, EvalScripts } from './types';
|
|
1
|
+
import type { AfterAll, BeforeEach, Errback, EvalScripts } from './types';
|
|
2
2
|
type Elements = HTMLCollectionOf<Element> | NodeListOf<Element> | Element | null;
|
|
3
3
|
interface OptionalArgs {
|
|
4
4
|
afterAll?: AfterAll;
|