react-inlinesvg 3.0.2 → 3.0.3
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 +5 -4
- package/esm/helpers.d.ts +7 -7
- package/esm/helpers.js +3 -3
- package/esm/helpers.js.map +1 -1
- package/esm/index.d.ts +6 -6
- package/esm/index.js +150 -107
- package/esm/index.js.map +1 -1
- package/esm/types.d.ts +5 -3
- package/lib/helpers.d.ts +7 -7
- package/lib/helpers.js +3 -3
- package/lib/helpers.js.map +1 -1
- package/lib/index.d.ts +6 -6
- package/lib/index.js +150 -107
- package/lib/index.js.map +1 -1
- package/lib/types.d.ts +5 -3
- package/package.json +19 -19
- package/src/helpers.ts +5 -5
- package/src/index.tsx +107 -114
- package/src/types.ts +7 -3
package/README.md
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
# react-inlinesvg
|
|
2
2
|
|
|
3
|
-
[](https://www.npmjs.com/package/react-inlinesvg) [](https://github.com/gilbarbara/react-inlinesvg/actions/workflows/main.yml) [](https://www.npmjs.com/package/react-inlinesvg) [](https://github.com/gilbarbara/react-inlinesvg/actions/workflows/main.yml) [](https://sonarcloud.io/summary/new_code?id=gilbarbara_react-inlinesvg) [](https://sonarcloud.io/summary/new_code?id=gilbarbara_react-inlinesvg)
|
|
4
4
|
|
|
5
|
-
Load inline, local or remote SVGs in your React components.
|
|
5
|
+
Load inline, local, or remote SVGs in your React components.
|
|
6
6
|
|
|
7
7
|
View the [demo](https://codesandbox.io/s/github/gilbarbara/react-inlinesvg/tree/main/demo)
|
|
8
8
|
|
|
@@ -105,8 +105,9 @@ This will receive 2 arguments: the `src` prop and a `hasCache` boolean
|
|
|
105
105
|
**preProcessor** {function} ▶︎ `string`
|
|
106
106
|
A function to process the contents of the SVG text before parsing.
|
|
107
107
|
|
|
108
|
-
**title** {string}
|
|
109
|
-
A title for your SVG. It will override an existing `<title>` tag.
|
|
108
|
+
**title** {string | null}
|
|
109
|
+
A title for your SVG. It will override an existing `<title>` tag.
|
|
110
|
+
If `null` is passed, the `<title>` tag will be removed.
|
|
110
111
|
|
|
111
112
|
**uniqueHash** {string} ▶︎ a random 8 characters string `[A-Za-z0-9]`
|
|
112
113
|
A string to use with `uniquifyIDs`.
|
package/esm/helpers.d.ts
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
import { PlainObject } from './types';
|
|
1
|
+
import type { PlainObject } from './types';
|
|
2
2
|
export declare const STATUS: {
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
READY:
|
|
8
|
-
UNSUPPORTED:
|
|
3
|
+
readonly IDLE: "idle";
|
|
4
|
+
readonly LOADING: "loading";
|
|
5
|
+
readonly LOADED: "loaded";
|
|
6
|
+
readonly FAILED: "failed";
|
|
7
|
+
readonly READY: "ready";
|
|
8
|
+
readonly UNSUPPORTED: "unsupported";
|
|
9
9
|
};
|
|
10
10
|
export declare function canUseDOM(): boolean;
|
|
11
11
|
export declare function isSupportedEnvironment(): boolean;
|
package/esm/helpers.js
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { canUseDOM as canUseDOMFlag } from 'exenv';
|
|
2
2
|
export var STATUS = {
|
|
3
|
-
|
|
4
|
-
LOADED: 'loaded',
|
|
3
|
+
IDLE: 'idle',
|
|
5
4
|
LOADING: 'loading',
|
|
6
|
-
|
|
5
|
+
LOADED: 'loaded',
|
|
6
|
+
FAILED: 'failed',
|
|
7
7
|
READY: 'ready',
|
|
8
8
|
UNSUPPORTED: 'unsupported',
|
|
9
9
|
};
|
package/esm/helpers.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"helpers.js","sourceRoot":"","sources":["../src/helpers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,IAAI,aAAa,EAAE,MAAM,OAAO,CAAC;AAInD,MAAM,CAAC,IAAM,MAAM,GAAG;IACpB,
|
|
1
|
+
{"version":3,"file":"helpers.js","sourceRoot":"","sources":["../src/helpers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,IAAI,aAAa,EAAE,MAAM,OAAO,CAAC;AAInD,MAAM,CAAC,IAAM,MAAM,GAAG;IACpB,IAAI,EAAE,MAAM;IACZ,OAAO,EAAE,SAAS;IAClB,MAAM,EAAE,QAAQ;IAChB,MAAM,EAAE,QAAQ;IAChB,KAAK,EAAE,OAAO;IACd,WAAW,EAAE,aAAa;CAClB,CAAC;AAEX,MAAM,UAAU,SAAS;IACvB,OAAO,aAAa,CAAC;AACvB,CAAC;AAED,MAAM,UAAU,sBAAsB;IACpC,OAAO,iBAAiB,EAAE,IAAI,OAAO,MAAM,KAAK,WAAW,IAAI,MAAM,KAAK,IAAI,CAAC;AACjF,CAAC;AAED,MAAM,UAAU,iBAAiB;IAC/B,0BAA0B;IAC1B,IAAI,CAAC,QAAQ,EAAE;QACb,OAAO,KAAK,CAAC;KACd;IAED,IAAM,GAAG,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;IAE1C,GAAG,CAAC,SAAS,GAAG,SAAS,CAAC;IAC1B,IAAM,GAAG,GAAG,GAAG,CAAC,UAA2B,CAAC;IAE5C,OAAO,CAAC,CAAC,GAAG,IAAI,GAAG,CAAC,YAAY,KAAK,4BAA4B,CAAC;AACpE,CAAC;AAED,SAAS,eAAe,CAAC,SAAiB;IACxC,OAAO,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC;AACjE,CAAC;AAED,MAAM,UAAU,YAAY,CAAC,MAAc;IACzC,IAAM,OAAO,GAAG,4BAA4B,CAAC;IAC7C,IAAM,OAAO,GAAG,YAAY,CAAC;IAC7B,IAAM,OAAO,GAAG,UAAG,OAAO,SAAG,OAAO,CAAC,WAAW,EAAE,SAAG,OAAO,CAAE,CAAC;IAE/D,IAAI,CAAC,GAAG,EAAE,CAAC;IAEX,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,MAAM,EAAE,KAAK,EAAE,EAAE;QAC3C,CAAC,IAAI,eAAe,CAAC,OAAO,CAAC,CAAC;KAC/B;IAED,OAAO,CAAC,CAAC;AACX,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,IAAI,CAClB,KAAQ;IACR,gBAAc;SAAd,UAAc,EAAd,qBAAc,EAAd,IAAc;QAAd,+BAAc;;IAEd,IAAM,MAAM,GAAQ,EAAE,CAAC;IAEvB,KAAK,IAAM,GAAG,IAAI,KAAK,EAAE;QACvB,0BAA0B;QAC1B,IAAI,EAAE,CAAC,cAAc,CAAC,IAAI,CAAC,KAAK,EAAE,GAAG,CAAC,EAAE;YACtC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAmB,CAAC,EAAE;gBACzC,MAAM,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC;aAC1B;SACF;KACF;IAED,OAAO,MAAoB,CAAC;AAC9B,CAAC"}
|
package/esm/index.d.ts
CHANGED
|
@@ -4,9 +4,9 @@ export declare const cacheStore: {
|
|
|
4
4
|
[key: string]: StorageItem;
|
|
5
5
|
};
|
|
6
6
|
export default class InlineSVG extends React.PureComponent<Props, State> {
|
|
7
|
-
private isInitialized;
|
|
8
|
-
private isActive;
|
|
9
7
|
private readonly hash;
|
|
8
|
+
private isActive;
|
|
9
|
+
private isInitialized;
|
|
10
10
|
static defaultProps: {
|
|
11
11
|
cacheRequests: boolean;
|
|
12
12
|
uniquifyIDs: boolean;
|
|
@@ -15,14 +15,14 @@ export default class InlineSVG extends React.PureComponent<Props, State> {
|
|
|
15
15
|
componentDidMount(): void;
|
|
16
16
|
componentDidUpdate(previousProps: Props, previousState: State): void;
|
|
17
17
|
componentWillUnmount(): void;
|
|
18
|
-
private getNode;
|
|
19
18
|
private getElement;
|
|
20
|
-
private
|
|
19
|
+
private getNode;
|
|
21
20
|
private handleError;
|
|
22
|
-
private
|
|
21
|
+
private handleLoad;
|
|
23
22
|
private load;
|
|
24
|
-
private updateSVGAttributes;
|
|
25
23
|
private processSVG;
|
|
24
|
+
private request;
|
|
25
|
+
private updateSVGAttributes;
|
|
26
26
|
render(): React.ReactNode;
|
|
27
27
|
}
|
|
28
28
|
export * from './types';
|
package/esm/index.js
CHANGED
|
@@ -24,6 +24,42 @@ var __assign = (this && this.__assign) || function () {
|
|
|
24
24
|
};
|
|
25
25
|
return __assign.apply(this, arguments);
|
|
26
26
|
};
|
|
27
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
28
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
29
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
30
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
31
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
32
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
33
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
34
|
+
});
|
|
35
|
+
};
|
|
36
|
+
var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
37
|
+
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
|
|
38
|
+
return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
|
|
39
|
+
function verb(n) { return function (v) { return step([n, v]); }; }
|
|
40
|
+
function step(op) {
|
|
41
|
+
if (f) throw new TypeError("Generator is already executing.");
|
|
42
|
+
while (g && (g = 0, op[0] && (_ = 0)), _) try {
|
|
43
|
+
if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
|
|
44
|
+
if (y = 0, t) op = [op[0] & 2, t.value];
|
|
45
|
+
switch (op[0]) {
|
|
46
|
+
case 0: case 1: t = op; break;
|
|
47
|
+
case 4: _.label++; return { value: op[1], done: false };
|
|
48
|
+
case 5: _.label++; y = op[1]; op = [0]; continue;
|
|
49
|
+
case 7: op = _.ops.pop(); _.trys.pop(); continue;
|
|
50
|
+
default:
|
|
51
|
+
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
|
|
52
|
+
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
|
|
53
|
+
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
|
|
54
|
+
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
|
|
55
|
+
if (t[2]) _.ops.pop();
|
|
56
|
+
_.trys.pop(); continue;
|
|
57
|
+
}
|
|
58
|
+
op = body.call(thisArg, _);
|
|
59
|
+
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
|
|
60
|
+
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
61
|
+
}
|
|
62
|
+
};
|
|
27
63
|
var __read = (this && this.__read) || function (o, n) {
|
|
28
64
|
var m = typeof Symbol === "function" && o[Symbol.iterator];
|
|
29
65
|
if (!m) return o;
|
|
@@ -57,11 +93,11 @@ var InlineSVG = /** @class */ (function (_super) {
|
|
|
57
93
|
__extends(InlineSVG, _super);
|
|
58
94
|
function InlineSVG(props) {
|
|
59
95
|
var _this = _super.call(this, props) || this;
|
|
60
|
-
Object.defineProperty(_this, "
|
|
96
|
+
Object.defineProperty(_this, "hash", {
|
|
61
97
|
enumerable: true,
|
|
62
98
|
configurable: true,
|
|
63
99
|
writable: true,
|
|
64
|
-
value:
|
|
100
|
+
value: void 0
|
|
65
101
|
});
|
|
66
102
|
Object.defineProperty(_this, "isActive", {
|
|
67
103
|
enumerable: true,
|
|
@@ -69,27 +105,11 @@ var InlineSVG = /** @class */ (function (_super) {
|
|
|
69
105
|
writable: true,
|
|
70
106
|
value: false
|
|
71
107
|
});
|
|
72
|
-
Object.defineProperty(_this, "
|
|
73
|
-
enumerable: true,
|
|
74
|
-
configurable: true,
|
|
75
|
-
writable: true,
|
|
76
|
-
value: void 0
|
|
77
|
-
});
|
|
78
|
-
Object.defineProperty(_this, "handleLoad", {
|
|
108
|
+
Object.defineProperty(_this, "isInitialized", {
|
|
79
109
|
enumerable: true,
|
|
80
110
|
configurable: true,
|
|
81
111
|
writable: true,
|
|
82
|
-
value:
|
|
83
|
-
if (hasCache === void 0) { hasCache = false; }
|
|
84
|
-
/* istanbul ignore else */
|
|
85
|
-
if (_this.isActive) {
|
|
86
|
-
_this.setState({
|
|
87
|
-
content: content,
|
|
88
|
-
hasCache: hasCache,
|
|
89
|
-
status: STATUS.LOADED,
|
|
90
|
-
}, _this.getElement);
|
|
91
|
-
}
|
|
92
|
-
}
|
|
112
|
+
value: false
|
|
93
113
|
});
|
|
94
114
|
Object.defineProperty(_this, "handleError", {
|
|
95
115
|
enumerable: true,
|
|
@@ -109,70 +129,93 @@ var InlineSVG = /** @class */ (function (_super) {
|
|
|
109
129
|
}
|
|
110
130
|
}
|
|
111
131
|
});
|
|
132
|
+
Object.defineProperty(_this, "handleLoad", {
|
|
133
|
+
enumerable: true,
|
|
134
|
+
configurable: true,
|
|
135
|
+
writable: true,
|
|
136
|
+
value: function (content, hasCache) {
|
|
137
|
+
if (hasCache === void 0) { hasCache = false; }
|
|
138
|
+
/* istanbul ignore else */
|
|
139
|
+
if (_this.isActive) {
|
|
140
|
+
_this.setState({
|
|
141
|
+
content: content,
|
|
142
|
+
hasCache: hasCache,
|
|
143
|
+
status: STATUS.LOADED,
|
|
144
|
+
}, _this.getElement);
|
|
145
|
+
}
|
|
146
|
+
}
|
|
147
|
+
});
|
|
112
148
|
Object.defineProperty(_this, "request", {
|
|
113
149
|
enumerable: true,
|
|
114
150
|
configurable: true,
|
|
115
151
|
writable: true,
|
|
116
|
-
value: function () {
|
|
117
|
-
var _a
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
var contentType = response.headers.get('content-type');
|
|
125
|
-
var _a = __read((contentType || '').split(/ ?; ?/), 1), fileType = _a[0];
|
|
126
|
-
if (response.status > 299) {
|
|
127
|
-
throw new Error('Not found');
|
|
128
|
-
}
|
|
129
|
-
if (!['image/svg+xml', 'text/plain'].some(function (d) { return fileType.includes(d); })) {
|
|
130
|
-
throw new Error("Content type isn't valid: ".concat(fileType));
|
|
131
|
-
}
|
|
132
|
-
return response.text();
|
|
133
|
-
})
|
|
134
|
-
.then(function (content) {
|
|
135
|
-
var currentSrc = _this.props.src;
|
|
136
|
-
// the current src don't match the previous one, skipping...
|
|
137
|
-
if (src !== currentSrc) {
|
|
138
|
-
if (cacheStore[src].status === STATUS.LOADING) {
|
|
139
|
-
delete cacheStore[src];
|
|
152
|
+
value: function () { return __awaiter(_this, void 0, void 0, function () {
|
|
153
|
+
var _a, cacheRequests, fetchOptions, src, response, contentType, _b, fileType_1, content, currentSrc, cache, error_1, cache;
|
|
154
|
+
return __generator(this, function (_c) {
|
|
155
|
+
switch (_c.label) {
|
|
156
|
+
case 0:
|
|
157
|
+
_a = this.props, cacheRequests = _a.cacheRequests, fetchOptions = _a.fetchOptions, src = _a.src;
|
|
158
|
+
if (cacheRequests) {
|
|
159
|
+
cacheStore[src] = { content: '', status: STATUS.LOADING };
|
|
140
160
|
}
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
161
|
+
_c.label = 1;
|
|
162
|
+
case 1:
|
|
163
|
+
_c.trys.push([1, 4, , 5]);
|
|
164
|
+
return [4 /*yield*/, fetch(src, fetchOptions)];
|
|
165
|
+
case 2:
|
|
166
|
+
response = _c.sent();
|
|
167
|
+
contentType = response.headers.get('content-type');
|
|
168
|
+
_b = __read((contentType || '').split(/ ?; ?/), 1), fileType_1 = _b[0];
|
|
169
|
+
if (response.status > 299) {
|
|
170
|
+
throw new Error('Not found');
|
|
171
|
+
}
|
|
172
|
+
if (!['image/svg+xml', 'text/plain'].some(function (d) { return fileType_1.includes(d); })) {
|
|
173
|
+
throw new Error("Content type isn't valid: ".concat(fileType_1));
|
|
174
|
+
}
|
|
175
|
+
return [4 /*yield*/, response.text()];
|
|
176
|
+
case 3:
|
|
177
|
+
content = _c.sent();
|
|
178
|
+
currentSrc = this.props.src;
|
|
179
|
+
// the current src don't match the previous one, skipping...
|
|
180
|
+
if (src !== currentSrc) {
|
|
181
|
+
if (cacheStore[src].status === STATUS.LOADING) {
|
|
182
|
+
delete cacheStore[src];
|
|
183
|
+
}
|
|
184
|
+
return [2 /*return*/];
|
|
185
|
+
}
|
|
186
|
+
this.handleLoad(content);
|
|
147
187
|
/* istanbul ignore else */
|
|
148
|
-
if (
|
|
149
|
-
cache
|
|
150
|
-
|
|
188
|
+
if (cacheRequests) {
|
|
189
|
+
cache = cacheStore[src];
|
|
190
|
+
/* istanbul ignore else */
|
|
191
|
+
if (cache) {
|
|
192
|
+
cache.content = content;
|
|
193
|
+
cache.status = STATUS.LOADED;
|
|
194
|
+
}
|
|
151
195
|
}
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
/* istanbul ignore else */
|
|
157
|
-
if (cacheRequests) {
|
|
158
|
-
var cache = cacheStore[src];
|
|
196
|
+
return [3 /*break*/, 5];
|
|
197
|
+
case 4:
|
|
198
|
+
error_1 = _c.sent();
|
|
199
|
+
this.handleError(error_1);
|
|
159
200
|
/* istanbul ignore else */
|
|
160
|
-
if (
|
|
161
|
-
|
|
201
|
+
if (cacheRequests) {
|
|
202
|
+
cache = cacheStore[src];
|
|
203
|
+
/* istanbul ignore else */
|
|
204
|
+
if (cache) {
|
|
205
|
+
delete cacheStore[src];
|
|
206
|
+
}
|
|
162
207
|
}
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
}
|
|
169
|
-
}
|
|
208
|
+
return [3 /*break*/, 5];
|
|
209
|
+
case 5: return [2 /*return*/];
|
|
210
|
+
}
|
|
211
|
+
});
|
|
212
|
+
}); }
|
|
170
213
|
});
|
|
171
214
|
_this.state = {
|
|
172
215
|
content: '',
|
|
173
216
|
element: null,
|
|
174
217
|
hasCache: !!props.cacheRequests && !!cacheStore[props.src],
|
|
175
|
-
status: STATUS.
|
|
218
|
+
status: STATUS.IDLE,
|
|
176
219
|
};
|
|
177
220
|
_this.hash = props.uniqueHash || randomString(8);
|
|
178
221
|
return _this;
|
|
@@ -190,7 +233,7 @@ var InlineSVG = /** @class */ (function (_super) {
|
|
|
190
233
|
var src = this.props.src;
|
|
191
234
|
try {
|
|
192
235
|
/* istanbul ignore else */
|
|
193
|
-
if (status === STATUS.
|
|
236
|
+
if (status === STATUS.IDLE) {
|
|
194
237
|
/* istanbul ignore else */
|
|
195
238
|
if (!isSupportedEnvironment()) {
|
|
196
239
|
throw new Error('Browser does not support SVG');
|
|
@@ -241,6 +284,27 @@ var InlineSVG = /** @class */ (function (_super) {
|
|
|
241
284
|
this.isActive = false;
|
|
242
285
|
}
|
|
243
286
|
});
|
|
287
|
+
Object.defineProperty(InlineSVG.prototype, "getElement", {
|
|
288
|
+
enumerable: false,
|
|
289
|
+
configurable: true,
|
|
290
|
+
writable: true,
|
|
291
|
+
value: function () {
|
|
292
|
+
try {
|
|
293
|
+
var node = this.getNode();
|
|
294
|
+
var element = convert(node);
|
|
295
|
+
if (!element || !React.isValidElement(element)) {
|
|
296
|
+
throw new Error('Could not convert the src to a React element');
|
|
297
|
+
}
|
|
298
|
+
this.setState({
|
|
299
|
+
element: element,
|
|
300
|
+
status: STATUS.READY,
|
|
301
|
+
});
|
|
302
|
+
}
|
|
303
|
+
catch (error) {
|
|
304
|
+
this.handleError(new Error(error.message));
|
|
305
|
+
}
|
|
306
|
+
}
|
|
307
|
+
});
|
|
244
308
|
Object.defineProperty(InlineSVG.prototype, "getNode", {
|
|
245
309
|
enumerable: false,
|
|
246
310
|
configurable: true,
|
|
@@ -281,27 +345,6 @@ var InlineSVG = /** @class */ (function (_super) {
|
|
|
281
345
|
}
|
|
282
346
|
}
|
|
283
347
|
});
|
|
284
|
-
Object.defineProperty(InlineSVG.prototype, "getElement", {
|
|
285
|
-
enumerable: false,
|
|
286
|
-
configurable: true,
|
|
287
|
-
writable: true,
|
|
288
|
-
value: function () {
|
|
289
|
-
try {
|
|
290
|
-
var node = this.getNode();
|
|
291
|
-
var element = convert(node);
|
|
292
|
-
if (!element || !React.isValidElement(element)) {
|
|
293
|
-
throw new Error('Could not convert the src to a React element');
|
|
294
|
-
}
|
|
295
|
-
this.setState({
|
|
296
|
-
element: element,
|
|
297
|
-
status: STATUS.READY,
|
|
298
|
-
});
|
|
299
|
-
}
|
|
300
|
-
catch (error) {
|
|
301
|
-
this.handleError(new Error(error.message));
|
|
302
|
-
}
|
|
303
|
-
}
|
|
304
|
-
});
|
|
305
348
|
Object.defineProperty(InlineSVG.prototype, "load", {
|
|
306
349
|
enumerable: false,
|
|
307
350
|
configurable: true,
|
|
@@ -322,7 +365,7 @@ var InlineSVG = /** @class */ (function (_super) {
|
|
|
322
365
|
_this.handleLoad(cache.content, true);
|
|
323
366
|
return;
|
|
324
367
|
}
|
|
325
|
-
var dataURI = src.match(
|
|
368
|
+
var dataURI = src.match(/^data:image\/svg[^,]*?(;base64)?,(.*)/u);
|
|
326
369
|
var inlineSrc;
|
|
327
370
|
if (dataURI) {
|
|
328
371
|
inlineSrc = dataURI[1] ? window.atob(dataURI[2]) : decodeURIComponent(dataURI[2]);
|
|
@@ -339,6 +382,19 @@ var InlineSVG = /** @class */ (function (_super) {
|
|
|
339
382
|
}
|
|
340
383
|
}
|
|
341
384
|
});
|
|
385
|
+
Object.defineProperty(InlineSVG.prototype, "processSVG", {
|
|
386
|
+
enumerable: false,
|
|
387
|
+
configurable: true,
|
|
388
|
+
writable: true,
|
|
389
|
+
value: function () {
|
|
390
|
+
var content = this.state.content;
|
|
391
|
+
var preProcessor = this.props.preProcessor;
|
|
392
|
+
if (preProcessor) {
|
|
393
|
+
return preProcessor(content);
|
|
394
|
+
}
|
|
395
|
+
return content;
|
|
396
|
+
}
|
|
397
|
+
});
|
|
342
398
|
Object.defineProperty(InlineSVG.prototype, "updateSVGAttributes", {
|
|
343
399
|
enumerable: false,
|
|
344
400
|
configurable: true,
|
|
@@ -354,7 +410,7 @@ var InlineSVG = /** @class */ (function (_super) {
|
|
|
354
410
|
if (!uniquifyIDs) {
|
|
355
411
|
return node;
|
|
356
412
|
}
|
|
357
|
-
__spreadArray([], __read(node.children), false).
|
|
413
|
+
__spreadArray([], __read(node.children), false).forEach(function (d) {
|
|
358
414
|
if (d.attributes && d.attributes.length) {
|
|
359
415
|
var attributes_1 = Object.values(d.attributes).map(function (a) {
|
|
360
416
|
var attribute = a;
|
|
@@ -379,19 +435,6 @@ var InlineSVG = /** @class */ (function (_super) {
|
|
|
379
435
|
return node;
|
|
380
436
|
}
|
|
381
437
|
});
|
|
382
|
-
Object.defineProperty(InlineSVG.prototype, "processSVG", {
|
|
383
|
-
enumerable: false,
|
|
384
|
-
configurable: true,
|
|
385
|
-
writable: true,
|
|
386
|
-
value: function () {
|
|
387
|
-
var content = this.state.content;
|
|
388
|
-
var preProcessor = this.props.preProcessor;
|
|
389
|
-
if (preProcessor) {
|
|
390
|
-
return preProcessor(content);
|
|
391
|
-
}
|
|
392
|
-
return content;
|
|
393
|
-
}
|
|
394
|
-
});
|
|
395
438
|
Object.defineProperty(InlineSVG.prototype, "render", {
|
|
396
439
|
enumerable: false,
|
|
397
440
|
configurable: true,
|
package/esm/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.tsx"],"names":[],"mappings":"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"}
|
package/esm/types.d.ts
CHANGED
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
|
+
import { STATUS } from './helpers';
|
|
2
3
|
export type ErrorCallback = (error: Error | FetchError) => void;
|
|
3
4
|
export type LoadCallback = (src: string, isCached: boolean) => void;
|
|
4
|
-
export type PlainObject<T = unknown> = Record<string
|
|
5
|
+
export type PlainObject<T = unknown> = Record<string, T>;
|
|
5
6
|
export type PreProcessorCallback = (code: string) => string;
|
|
6
7
|
export interface Props extends Omit<React.SVGProps<SVGElement>, 'onLoad' | 'onError' | 'ref'> {
|
|
7
8
|
baseURL?: string;
|
|
@@ -23,7 +24,7 @@ export interface State {
|
|
|
23
24
|
content: string;
|
|
24
25
|
element: React.ReactNode;
|
|
25
26
|
hasCache: boolean;
|
|
26
|
-
status:
|
|
27
|
+
status: Status;
|
|
27
28
|
}
|
|
28
29
|
export interface FetchError extends Error {
|
|
29
30
|
code: string;
|
|
@@ -31,7 +32,8 @@ export interface FetchError extends Error {
|
|
|
31
32
|
message: string;
|
|
32
33
|
type: string;
|
|
33
34
|
}
|
|
35
|
+
export type Status = (typeof STATUS)[keyof typeof STATUS];
|
|
34
36
|
export interface StorageItem {
|
|
35
37
|
content: string;
|
|
36
|
-
status:
|
|
38
|
+
status: Status;
|
|
37
39
|
}
|
package/lib/helpers.d.ts
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
import { PlainObject } from './types';
|
|
1
|
+
import type { PlainObject } from './types';
|
|
2
2
|
export declare const STATUS: {
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
READY:
|
|
8
|
-
UNSUPPORTED:
|
|
3
|
+
readonly IDLE: "idle";
|
|
4
|
+
readonly LOADING: "loading";
|
|
5
|
+
readonly LOADED: "loaded";
|
|
6
|
+
readonly FAILED: "failed";
|
|
7
|
+
readonly READY: "ready";
|
|
8
|
+
readonly UNSUPPORTED: "unsupported";
|
|
9
9
|
};
|
|
10
10
|
export declare function canUseDOM(): boolean;
|
|
11
11
|
export declare function isSupportedEnvironment(): boolean;
|
package/lib/helpers.js
CHANGED
|
@@ -3,10 +3,10 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.omit = exports.randomString = exports.supportsInlineSVG = exports.isSupportedEnvironment = exports.canUseDOM = exports.STATUS = void 0;
|
|
4
4
|
var exenv_1 = require("exenv");
|
|
5
5
|
exports.STATUS = {
|
|
6
|
-
|
|
7
|
-
LOADED: 'loaded',
|
|
6
|
+
IDLE: 'idle',
|
|
8
7
|
LOADING: 'loading',
|
|
9
|
-
|
|
8
|
+
LOADED: 'loaded',
|
|
9
|
+
FAILED: 'failed',
|
|
10
10
|
READY: 'ready',
|
|
11
11
|
UNSUPPORTED: 'unsupported',
|
|
12
12
|
};
|
package/lib/helpers.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"helpers.js","sourceRoot":"","sources":["../src/helpers.ts"],"names":[],"mappings":";;;AAAA,+BAAmD;AAItC,QAAA,MAAM,GAAG;IACpB,
|
|
1
|
+
{"version":3,"file":"helpers.js","sourceRoot":"","sources":["../src/helpers.ts"],"names":[],"mappings":";;;AAAA,+BAAmD;AAItC,QAAA,MAAM,GAAG;IACpB,IAAI,EAAE,MAAM;IACZ,OAAO,EAAE,SAAS;IAClB,MAAM,EAAE,QAAQ;IAChB,MAAM,EAAE,QAAQ;IAChB,KAAK,EAAE,OAAO;IACd,WAAW,EAAE,aAAa;CAClB,CAAC;AAEX,SAAgB,SAAS;IACvB,OAAO,iBAAa,CAAC;AACvB,CAAC;AAFD,8BAEC;AAED,SAAgB,sBAAsB;IACpC,OAAO,iBAAiB,EAAE,IAAI,OAAO,MAAM,KAAK,WAAW,IAAI,MAAM,KAAK,IAAI,CAAC;AACjF,CAAC;AAFD,wDAEC;AAED,SAAgB,iBAAiB;IAC/B,0BAA0B;IAC1B,IAAI,CAAC,QAAQ,EAAE;QACb,OAAO,KAAK,CAAC;KACd;IAED,IAAM,GAAG,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;IAE1C,GAAG,CAAC,SAAS,GAAG,SAAS,CAAC;IAC1B,IAAM,GAAG,GAAG,GAAG,CAAC,UAA2B,CAAC;IAE5C,OAAO,CAAC,CAAC,GAAG,IAAI,GAAG,CAAC,YAAY,KAAK,4BAA4B,CAAC;AACpE,CAAC;AAZD,8CAYC;AAED,SAAS,eAAe,CAAC,SAAiB;IACxC,OAAO,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC;AACjE,CAAC;AAED,SAAgB,YAAY,CAAC,MAAc;IACzC,IAAM,OAAO,GAAG,4BAA4B,CAAC;IAC7C,IAAM,OAAO,GAAG,YAAY,CAAC;IAC7B,IAAM,OAAO,GAAG,UAAG,OAAO,SAAG,OAAO,CAAC,WAAW,EAAE,SAAG,OAAO,CAAE,CAAC;IAE/D,IAAI,CAAC,GAAG,EAAE,CAAC;IAEX,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,MAAM,EAAE,KAAK,EAAE,EAAE;QAC3C,CAAC,IAAI,eAAe,CAAC,OAAO,CAAC,CAAC;KAC/B;IAED,OAAO,CAAC,CAAC;AACX,CAAC;AAZD,oCAYC;AAED;;GAEG;AACH,SAAgB,IAAI,CAClB,KAAQ;IACR,gBAAc;SAAd,UAAc,EAAd,qBAAc,EAAd,IAAc;QAAd,+BAAc;;IAEd,IAAM,MAAM,GAAQ,EAAE,CAAC;IAEvB,KAAK,IAAM,GAAG,IAAI,KAAK,EAAE;QACvB,0BAA0B;QAC1B,IAAI,EAAE,CAAC,cAAc,CAAC,IAAI,CAAC,KAAK,EAAE,GAAG,CAAC,EAAE;YACtC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAmB,CAAC,EAAE;gBACzC,MAAM,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC;aAC1B;SACF;KACF;IAED,OAAO,MAAoB,CAAC;AAC9B,CAAC;AAhBD,oBAgBC"}
|
package/lib/index.d.ts
CHANGED
|
@@ -4,9 +4,9 @@ export declare const cacheStore: {
|
|
|
4
4
|
[key: string]: StorageItem;
|
|
5
5
|
};
|
|
6
6
|
export default class InlineSVG extends React.PureComponent<Props, State> {
|
|
7
|
-
private isInitialized;
|
|
8
|
-
private isActive;
|
|
9
7
|
private readonly hash;
|
|
8
|
+
private isActive;
|
|
9
|
+
private isInitialized;
|
|
10
10
|
static defaultProps: {
|
|
11
11
|
cacheRequests: boolean;
|
|
12
12
|
uniquifyIDs: boolean;
|
|
@@ -15,14 +15,14 @@ export default class InlineSVG extends React.PureComponent<Props, State> {
|
|
|
15
15
|
componentDidMount(): void;
|
|
16
16
|
componentDidUpdate(previousProps: Props, previousState: State): void;
|
|
17
17
|
componentWillUnmount(): void;
|
|
18
|
-
private getNode;
|
|
19
18
|
private getElement;
|
|
20
|
-
private
|
|
19
|
+
private getNode;
|
|
21
20
|
private handleError;
|
|
22
|
-
private
|
|
21
|
+
private handleLoad;
|
|
23
22
|
private load;
|
|
24
|
-
private updateSVGAttributes;
|
|
25
23
|
private processSVG;
|
|
24
|
+
private request;
|
|
25
|
+
private updateSVGAttributes;
|
|
26
26
|
render(): React.ReactNode;
|
|
27
27
|
}
|
|
28
28
|
export * from './types';
|