react-inlinesvg 1.1.7 → 2.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +28 -15
- package/esm/helpers.d.ts +12 -0
- package/esm/helpers.js +38 -0
- package/esm/helpers.js.map +1 -0
- package/esm/index.d.ts +25 -0
- package/esm/index.js +356 -0
- package/esm/index.js.map +1 -0
- package/esm/types.d.ts +38 -0
- package/esm/types.js +2 -0
- package/esm/types.js.map +1 -0
- package/lib/helpers.d.ts +12 -10
- package/lib/helpers.js +24 -35
- package/lib/helpers.js.map +1 -1
- package/lib/index.d.ts +9 -48
- package/lib/index.js +67 -55
- package/lib/index.js.map +1 -1
- package/lib/types.d.ts +38 -0
- package/lib/types.js +3 -0
- package/lib/types.js.map +1 -0
- package/package.json +59 -53
- package/src/helpers.ts +20 -24
- package/src/index.tsx +77 -107
- package/src/types.ts +43 -0
package/lib/helpers.js
CHANGED
|
@@ -1,46 +1,34 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var __extends = (this && this.__extends) || (function () {
|
|
3
|
-
var extendStatics = function (d, b) {
|
|
4
|
-
extendStatics = Object.setPrototypeOf ||
|
|
5
|
-
({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
|
|
6
|
-
function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };
|
|
7
|
-
return extendStatics(d, b);
|
|
8
|
-
};
|
|
9
|
-
return function (d, b) {
|
|
10
|
-
extendStatics(d, b);
|
|
11
|
-
function __() { this.constructor = d; }
|
|
12
|
-
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
|
|
13
|
-
};
|
|
14
|
-
})();
|
|
15
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.randomString = exports.isSupportedEnvironment = exports.supportsInlineSVG = exports.canUseDOM = exports.STATUS = void 0;
|
|
16
4
|
var exenv_1 = require("exenv");
|
|
17
|
-
exports.
|
|
18
|
-
|
|
5
|
+
exports.STATUS = {
|
|
6
|
+
FAILED: 'failed',
|
|
7
|
+
LOADED: 'loaded',
|
|
8
|
+
LOADING: 'loading',
|
|
9
|
+
PENDING: 'pending',
|
|
10
|
+
READY: 'ready',
|
|
11
|
+
UNSUPPORTED: 'unsupported',
|
|
12
|
+
};
|
|
13
|
+
function canUseDOM() {
|
|
14
|
+
return exenv_1.canUseDOM;
|
|
15
|
+
}
|
|
16
|
+
exports.canUseDOM = canUseDOM;
|
|
17
|
+
function supportsInlineSVG() {
|
|
19
18
|
/* istanbul ignore next */
|
|
20
19
|
if (!document) {
|
|
21
20
|
return false;
|
|
22
21
|
}
|
|
23
22
|
var div = document.createElement('div');
|
|
24
23
|
div.innerHTML = '<svg />';
|
|
25
|
-
return div.firstChild && div.firstChild.namespaceURI === 'http://www.w3.org/2000/svg';
|
|
26
|
-
}
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
_this.message = message;
|
|
34
|
-
_this.data = data;
|
|
35
|
-
return _this;
|
|
36
|
-
}
|
|
37
|
-
return InlineSVGError;
|
|
38
|
-
}(Error));
|
|
39
|
-
exports.InlineSVGError = InlineSVGError;
|
|
40
|
-
exports.isSupportedEnvironment = function () {
|
|
41
|
-
return exports.supportsInlineSVG() && typeof window !== 'undefined' && window !== null;
|
|
42
|
-
};
|
|
43
|
-
exports.randomString = function (length) {
|
|
24
|
+
return !!div.firstChild && div.firstChild.namespaceURI === 'http://www.w3.org/2000/svg';
|
|
25
|
+
}
|
|
26
|
+
exports.supportsInlineSVG = supportsInlineSVG;
|
|
27
|
+
function isSupportedEnvironment() {
|
|
28
|
+
return supportsInlineSVG() && typeof window !== 'undefined' && window !== null;
|
|
29
|
+
}
|
|
30
|
+
exports.isSupportedEnvironment = isSupportedEnvironment;
|
|
31
|
+
function randomString(length) {
|
|
44
32
|
var letters = 'abcdefghijklmnopqrstuvwxyz';
|
|
45
33
|
var numbers = '1234567890';
|
|
46
34
|
var charset = "" + letters + letters.toUpperCase() + numbers;
|
|
@@ -52,5 +40,6 @@ exports.randomString = function (length) {
|
|
|
52
40
|
R += randomCharacter(charset);
|
|
53
41
|
}
|
|
54
42
|
return R;
|
|
55
|
-
}
|
|
43
|
+
}
|
|
44
|
+
exports.randomString = randomString;
|
|
56
45
|
//# sourceMappingURL=helpers.js.map
|
package/lib/helpers.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"helpers.js","sourceRoot":"","sources":["../src/helpers.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"helpers.js","sourceRoot":"","sources":["../src/helpers.ts"],"names":[],"mappings":";;;AAAA,+BAAmD;AAEtC,QAAA,MAAM,GAAG;IACpB,MAAM,EAAE,QAAQ;IAChB,MAAM,EAAE,QAAQ;IAChB,OAAO,EAAE,SAAS;IAClB,OAAO,EAAE,SAAS;IAClB,KAAK,EAAE,OAAO;IACd,WAAW,EAAE,aAAa;CAC3B,CAAC;AAEF,SAAgB,SAAS;IACvB,OAAO,iBAAa,CAAC;AACvB,CAAC;AAFD,8BAEC;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;IAC1C,GAAG,CAAC,SAAS,GAAG,SAAS,CAAC;IAC1B,OAAO,CAAC,CAAC,GAAG,CAAC,UAAU,IAAI,GAAG,CAAC,UAAU,CAAC,YAAY,KAAK,4BAA4B,CAAC;AAC1F,CAAC;AATD,8CASC;AAED,SAAgB,sBAAsB;IACpC,OAAO,iBAAiB,EAAE,IAAI,OAAO,MAAM,KAAK,WAAW,IAAI,MAAM,KAAK,IAAI,CAAC;AACjF,CAAC;AAFD,wDAEC;AAED,SAAgB,YAAY,CAAC,MAAc;IACzC,IAAM,OAAO,GAAG,4BAA4B,CAAC;IAC7C,IAAM,OAAO,GAAG,YAAY,CAAC;IAC7B,IAAM,OAAO,GAAG,KAAG,OAAO,GAAG,OAAO,CAAC,WAAW,EAAE,GAAG,OAAS,CAAC;IAE/D,IAAM,eAAe,GAAG,UAAC,SAAiB;QACxC,OAAA,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC;IAAvD,CAAuD,CAAC;IAE1D,IAAI,CAAC,GAAG,EAAE,CAAC;IACX,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,EAAE,CAAC,EAAE,EAAE;QAC/B,CAAC,IAAI,eAAe,CAAC,OAAO,CAAC,CAAC;KAC/B;IAED,OAAO,CAAC,CAAC;AACX,CAAC;AAdD,oCAcC"}
|
package/lib/index.d.ts
CHANGED
|
@@ -1,64 +1,25 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
|
-
import {
|
|
3
|
-
export
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
description?: string;
|
|
8
|
-
loader?: React.ReactNode;
|
|
9
|
-
innerRef?: React.Ref<HTMLElement>;
|
|
10
|
-
onError?: (error: InlineSVGError | IFetchError) => void;
|
|
11
|
-
onLoad?: (src: string, isCached: boolean) => void;
|
|
12
|
-
preProcessor?: (code: string) => string;
|
|
13
|
-
src: string;
|
|
14
|
-
title?: string;
|
|
15
|
-
uniqueHash?: string;
|
|
16
|
-
uniquifyIDs?: boolean;
|
|
17
|
-
[key: string]: any;
|
|
18
|
-
}
|
|
19
|
-
export interface IState {
|
|
20
|
-
content: string;
|
|
21
|
-
element: React.ReactNode;
|
|
22
|
-
hasCache: boolean;
|
|
23
|
-
status: string;
|
|
24
|
-
}
|
|
25
|
-
export interface IFetchError extends Error {
|
|
26
|
-
code: string;
|
|
27
|
-
errno: string;
|
|
28
|
-
message: string;
|
|
29
|
-
type: string;
|
|
30
|
-
}
|
|
31
|
-
export interface IStorageItem {
|
|
32
|
-
content: string;
|
|
33
|
-
queue: any[];
|
|
34
|
-
status: string;
|
|
35
|
-
}
|
|
36
|
-
export declare const STATUS: {
|
|
37
|
-
FAILED: string;
|
|
38
|
-
LOADED: string;
|
|
39
|
-
LOADING: string;
|
|
40
|
-
PENDING: string;
|
|
41
|
-
READY: string;
|
|
42
|
-
UNSUPPORTED: string;
|
|
43
|
-
};
|
|
44
|
-
export default class InlineSVG extends React.PureComponent<IProps, IState> {
|
|
2
|
+
import { Props, State } from './types';
|
|
3
|
+
export default class InlineSVG extends React.PureComponent<Props, State> {
|
|
4
|
+
constructor(props: Props);
|
|
5
|
+
private isActive;
|
|
6
|
+
private readonly hash;
|
|
45
7
|
static defaultProps: {
|
|
46
8
|
cacheRequests: boolean;
|
|
47
9
|
uniquifyIDs: boolean;
|
|
48
10
|
};
|
|
49
|
-
private _isMounted;
|
|
50
|
-
private readonly hash;
|
|
51
|
-
constructor(props: IProps);
|
|
52
11
|
componentDidMount(): void;
|
|
53
|
-
componentDidUpdate(prevProps:
|
|
12
|
+
componentDidUpdate(prevProps: Props, prevState: State): void;
|
|
54
13
|
componentWillUnmount(): void;
|
|
55
14
|
private processSVG;
|
|
56
15
|
private updateSVGAttributes;
|
|
57
16
|
private getNode;
|
|
58
17
|
private getElement;
|
|
59
18
|
private load;
|
|
19
|
+
private handleCacheQueue;
|
|
60
20
|
private handleLoad;
|
|
61
21
|
private handleError;
|
|
62
22
|
private request;
|
|
63
|
-
render():
|
|
23
|
+
render(): React.ReactNode;
|
|
64
24
|
}
|
|
25
|
+
export * from './types';
|
package/lib/index.js
CHANGED
|
@@ -3,7 +3,7 @@ var __extends = (this && this.__extends) || (function () {
|
|
|
3
3
|
var extendStatics = function (d, b) {
|
|
4
4
|
extendStatics = Object.setPrototypeOf ||
|
|
5
5
|
({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
|
|
6
|
-
function (d, b) { for (var p in b) if (
|
|
6
|
+
function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
|
|
7
7
|
return extendStatics(d, b);
|
|
8
8
|
};
|
|
9
9
|
return function (d, b) {
|
|
@@ -23,6 +23,16 @@ var __assign = (this && this.__assign) || function () {
|
|
|
23
23
|
};
|
|
24
24
|
return __assign.apply(this, arguments);
|
|
25
25
|
};
|
|
26
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
27
|
+
if (k2 === undefined) k2 = k;
|
|
28
|
+
Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
|
|
29
|
+
}) : (function(o, m, k, k2) {
|
|
30
|
+
if (k2 === undefined) k2 = k;
|
|
31
|
+
o[k2] = m[k];
|
|
32
|
+
}));
|
|
33
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
34
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
35
|
+
};
|
|
26
36
|
var __rest = (this && this.__rest) || function (s, e) {
|
|
27
37
|
var t = {};
|
|
28
38
|
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
|
|
@@ -58,40 +68,34 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
58
68
|
var React = require("react");
|
|
59
69
|
var react_from_dom_1 = require("react-from-dom");
|
|
60
70
|
var helpers_1 = require("./helpers");
|
|
61
|
-
exports.STATUS = {
|
|
62
|
-
FAILED: 'failed',
|
|
63
|
-
LOADED: 'loaded',
|
|
64
|
-
LOADING: 'loading',
|
|
65
|
-
PENDING: 'pending',
|
|
66
|
-
READY: 'ready',
|
|
67
|
-
UNSUPPORTED: 'unsupported',
|
|
68
|
-
};
|
|
69
71
|
var cacheStore = Object.create(null);
|
|
70
72
|
var InlineSVG = /** @class */ (function (_super) {
|
|
71
73
|
__extends(InlineSVG, _super);
|
|
72
74
|
function InlineSVG(props) {
|
|
73
75
|
var _this = _super.call(this, props) || this;
|
|
74
|
-
|
|
75
|
-
_this.
|
|
76
|
+
_this.isActive = false;
|
|
77
|
+
_this.handleCacheQueue = function (content) {
|
|
78
|
+
/* istanbul ignore else */
|
|
79
|
+
if (typeof content === 'string') {
|
|
80
|
+
_this.handleLoad(content);
|
|
81
|
+
return;
|
|
82
|
+
}
|
|
83
|
+
_this.handleError(content);
|
|
84
|
+
};
|
|
76
85
|
_this.handleLoad = function (content) {
|
|
77
86
|
/* istanbul ignore else */
|
|
78
|
-
if (_this.
|
|
87
|
+
if (_this.isActive) {
|
|
79
88
|
_this.setState({
|
|
80
89
|
content: content,
|
|
81
|
-
status:
|
|
90
|
+
status: helpers_1.STATUS.LOADED,
|
|
82
91
|
}, _this.getElement);
|
|
83
92
|
}
|
|
84
93
|
};
|
|
85
94
|
_this.handleError = function (error) {
|
|
86
95
|
var onError = _this.props.onError;
|
|
87
|
-
var status = error.message === 'Browser does not support SVG' ?
|
|
88
|
-
/* istanbul ignore else */
|
|
89
|
-
if (process.env.NODE_ENV !== 'production') {
|
|
90
|
-
// tslint:disable-next-line:no-console
|
|
91
|
-
console.error(error);
|
|
92
|
-
}
|
|
96
|
+
var status = error.message === 'Browser does not support SVG' ? helpers_1.STATUS.UNSUPPORTED : helpers_1.STATUS.FAILED;
|
|
93
97
|
/* istanbul ignore else */
|
|
94
|
-
if (_this.
|
|
98
|
+
if (_this.isActive) {
|
|
95
99
|
_this.setState({ status: status }, function () {
|
|
96
100
|
/* istanbul ignore else */
|
|
97
101
|
if (typeof onError === 'function') {
|
|
@@ -104,17 +108,17 @@ var InlineSVG = /** @class */ (function (_super) {
|
|
|
104
108
|
var _a = _this.props, cacheRequests = _a.cacheRequests, src = _a.src;
|
|
105
109
|
try {
|
|
106
110
|
if (cacheRequests) {
|
|
107
|
-
cacheStore[src] = { content: '', status:
|
|
111
|
+
cacheStore[src] = { content: '', status: helpers_1.STATUS.LOADING, queue: [] };
|
|
108
112
|
}
|
|
109
113
|
return fetch(src)
|
|
110
114
|
.then(function (response) {
|
|
111
115
|
var contentType = response.headers.get('content-type');
|
|
112
116
|
var _a = __read((contentType || '').split(/ ?; ?/), 1), fileType = _a[0];
|
|
113
117
|
if (response.status > 299) {
|
|
114
|
-
throw new
|
|
118
|
+
throw new Error('Not found');
|
|
115
119
|
}
|
|
116
120
|
if (!['image/svg+xml', 'text/plain'].some(function (d) { return fileType.indexOf(d) >= 0; })) {
|
|
117
|
-
throw new
|
|
121
|
+
throw new Error("Content type isn't valid: " + fileType);
|
|
118
122
|
}
|
|
119
123
|
return response.text();
|
|
120
124
|
})
|
|
@@ -126,7 +130,7 @@ var InlineSVG = /** @class */ (function (_super) {
|
|
|
126
130
|
/* istanbul ignore else */
|
|
127
131
|
if (cache) {
|
|
128
132
|
cache.content = content;
|
|
129
|
-
cache.status =
|
|
133
|
+
cache.status = helpers_1.STATUS.LOADED;
|
|
130
134
|
cache.queue = cache.queue.filter(function (cb) {
|
|
131
135
|
cb(content);
|
|
132
136
|
return false;
|
|
@@ -135,44 +139,50 @@ var InlineSVG = /** @class */ (function (_super) {
|
|
|
135
139
|
}
|
|
136
140
|
})
|
|
137
141
|
.catch(function (error) {
|
|
142
|
+
_this.handleError(error);
|
|
138
143
|
/* istanbul ignore else */
|
|
139
144
|
if (cacheRequests) {
|
|
140
|
-
|
|
145
|
+
var cache = cacheStore[src];
|
|
146
|
+
/* istanbul ignore else */
|
|
147
|
+
if (cache) {
|
|
148
|
+
cache.queue.forEach(function (cb) {
|
|
149
|
+
cb(error);
|
|
150
|
+
});
|
|
151
|
+
delete cacheStore[src];
|
|
152
|
+
}
|
|
141
153
|
}
|
|
142
|
-
_this.handleError(error);
|
|
143
154
|
});
|
|
144
155
|
}
|
|
145
156
|
catch (error) {
|
|
146
|
-
_this.handleError(new
|
|
157
|
+
return _this.handleError(new Error(error.message));
|
|
147
158
|
}
|
|
148
159
|
};
|
|
149
160
|
_this.state = {
|
|
150
161
|
content: '',
|
|
151
162
|
element: null,
|
|
152
163
|
hasCache: !!props.cacheRequests && !!cacheStore[props.src],
|
|
153
|
-
status:
|
|
164
|
+
status: helpers_1.STATUS.PENDING,
|
|
154
165
|
};
|
|
155
166
|
_this.hash = props.uniqueHash || helpers_1.randomString(8);
|
|
156
167
|
return _this;
|
|
157
168
|
}
|
|
158
169
|
InlineSVG.prototype.componentDidMount = function () {
|
|
159
|
-
this.
|
|
170
|
+
this.isActive = true;
|
|
160
171
|
if (!helpers_1.canUseDOM()) {
|
|
161
|
-
this.handleError(new helpers_1.InlineSVGError('No DOM'));
|
|
162
172
|
return;
|
|
163
173
|
}
|
|
164
174
|
var status = this.state.status;
|
|
165
175
|
var src = this.props.src;
|
|
166
176
|
try {
|
|
167
177
|
/* istanbul ignore else */
|
|
168
|
-
if (status ===
|
|
178
|
+
if (status === helpers_1.STATUS.PENDING) {
|
|
169
179
|
/* istanbul ignore else */
|
|
170
180
|
if (!helpers_1.isSupportedEnvironment()) {
|
|
171
|
-
throw new
|
|
181
|
+
throw new Error('Browser does not support SVG');
|
|
172
182
|
}
|
|
173
183
|
/* istanbul ignore else */
|
|
174
184
|
if (!src) {
|
|
175
|
-
throw new
|
|
185
|
+
throw new Error('Missing src');
|
|
176
186
|
}
|
|
177
187
|
this.load();
|
|
178
188
|
}
|
|
@@ -187,7 +197,7 @@ var InlineSVG = /** @class */ (function (_super) {
|
|
|
187
197
|
}
|
|
188
198
|
var _a = this.state, hasCache = _a.hasCache, status = _a.status;
|
|
189
199
|
var _b = this.props, onLoad = _b.onLoad, src = _b.src;
|
|
190
|
-
if (prevState.status !==
|
|
200
|
+
if (prevState.status !== helpers_1.STATUS.READY && status === helpers_1.STATUS.READY) {
|
|
191
201
|
/* istanbul ignore else */
|
|
192
202
|
if (onLoad) {
|
|
193
203
|
onLoad(src, hasCache);
|
|
@@ -195,14 +205,14 @@ var InlineSVG = /** @class */ (function (_super) {
|
|
|
195
205
|
}
|
|
196
206
|
if (prevProps.src !== src) {
|
|
197
207
|
if (!src) {
|
|
198
|
-
this.handleError(new
|
|
208
|
+
this.handleError(new Error('Missing src'));
|
|
199
209
|
return;
|
|
200
210
|
}
|
|
201
211
|
this.load();
|
|
202
212
|
}
|
|
203
213
|
};
|
|
204
214
|
InlineSVG.prototype.componentWillUnmount = function () {
|
|
205
|
-
this.
|
|
215
|
+
this.isActive = false;
|
|
206
216
|
};
|
|
207
217
|
InlineSVG.prototype.processSVG = function () {
|
|
208
218
|
var content = this.state.content;
|
|
@@ -225,12 +235,13 @@ var InlineSVG = /** @class */ (function (_super) {
|
|
|
225
235
|
}
|
|
226
236
|
__spread(node.children).map(function (d) {
|
|
227
237
|
if (d.attributes && d.attributes.length) {
|
|
228
|
-
var attributes_1 = Object.values(d.attributes)
|
|
229
|
-
|
|
230
|
-
var match = a.value.match(
|
|
238
|
+
var attributes_1 = Object.values(d.attributes).map(function (a) {
|
|
239
|
+
var attr = a;
|
|
240
|
+
var match = a.value.match(/url\((.*?)\)/);
|
|
231
241
|
if (match && match[1]) {
|
|
232
|
-
|
|
242
|
+
attr.value = a.value.replace(match[0], "url(" + baseURL + match[1] + "__" + _this.hash + ")");
|
|
233
243
|
}
|
|
244
|
+
return attr;
|
|
234
245
|
});
|
|
235
246
|
replaceableAttributes.forEach(function (r) {
|
|
236
247
|
var attribute = attributes_1.find(function (a) { return a.name === r; });
|
|
@@ -240,7 +251,7 @@ var InlineSVG = /** @class */ (function (_super) {
|
|
|
240
251
|
});
|
|
241
252
|
}
|
|
242
253
|
if (d.children.length) {
|
|
243
|
-
|
|
254
|
+
return _this.updateSVGAttributes(d);
|
|
244
255
|
}
|
|
245
256
|
return d;
|
|
246
257
|
});
|
|
@@ -252,7 +263,7 @@ var InlineSVG = /** @class */ (function (_super) {
|
|
|
252
263
|
var svgText = this.processSVG();
|
|
253
264
|
var node = react_from_dom_1.default(svgText, { nodeOnly: true });
|
|
254
265
|
if (!node || !(node instanceof SVGSVGElement)) {
|
|
255
|
-
throw new
|
|
266
|
+
throw new Error('Could not convert the src to a DOM Node');
|
|
256
267
|
}
|
|
257
268
|
var svg = this.updateSVGAttributes(node);
|
|
258
269
|
if (description) {
|
|
@@ -276,7 +287,7 @@ var InlineSVG = /** @class */ (function (_super) {
|
|
|
276
287
|
return svg;
|
|
277
288
|
}
|
|
278
289
|
catch (error) {
|
|
279
|
-
this.handleError(error);
|
|
290
|
+
return this.handleError(error);
|
|
280
291
|
}
|
|
281
292
|
};
|
|
282
293
|
InlineSVG.prototype.getElement = function () {
|
|
@@ -284,34 +295,34 @@ var InlineSVG = /** @class */ (function (_super) {
|
|
|
284
295
|
var node = this.getNode();
|
|
285
296
|
var element = react_from_dom_1.default(node);
|
|
286
297
|
if (!element || !React.isValidElement(element)) {
|
|
287
|
-
throw new
|
|
298
|
+
throw new Error('Could not convert the src to a React element');
|
|
288
299
|
}
|
|
289
300
|
this.setState({
|
|
290
301
|
element: element,
|
|
291
|
-
status:
|
|
302
|
+
status: helpers_1.STATUS.READY,
|
|
292
303
|
});
|
|
293
304
|
}
|
|
294
305
|
catch (error) {
|
|
295
|
-
this.handleError(new
|
|
306
|
+
this.handleError(new Error(error.message));
|
|
296
307
|
}
|
|
297
308
|
};
|
|
298
309
|
InlineSVG.prototype.load = function () {
|
|
299
310
|
var _this = this;
|
|
300
311
|
/* istanbul ignore else */
|
|
301
|
-
if (this.
|
|
312
|
+
if (this.isActive) {
|
|
302
313
|
this.setState({
|
|
303
314
|
content: '',
|
|
304
315
|
element: null,
|
|
305
|
-
status:
|
|
316
|
+
status: helpers_1.STATUS.LOADING,
|
|
306
317
|
}, function () {
|
|
307
318
|
var _a = _this.props, cacheRequests = _a.cacheRequests, src = _a.src;
|
|
308
319
|
var cache = cacheRequests && cacheStore[src];
|
|
309
320
|
if (cache) {
|
|
310
321
|
/* istanbul ignore else */
|
|
311
|
-
if (cache.status ===
|
|
312
|
-
cache.queue.push(_this.
|
|
322
|
+
if (cache.status === helpers_1.STATUS.LOADING) {
|
|
323
|
+
cache.queue.push(_this.handleCacheQueue);
|
|
313
324
|
}
|
|
314
|
-
else if (cache.status ===
|
|
325
|
+
else if (cache.status === helpers_1.STATUS.LOADED) {
|
|
315
326
|
_this.handleLoad(cache.content);
|
|
316
327
|
}
|
|
317
328
|
return;
|
|
@@ -333,15 +344,15 @@ var InlineSVG = /** @class */ (function (_super) {
|
|
|
333
344
|
}
|
|
334
345
|
};
|
|
335
346
|
InlineSVG.prototype.render = function () {
|
|
336
|
-
if (!helpers_1.canUseDOM()) {
|
|
337
|
-
return null;
|
|
338
|
-
}
|
|
339
347
|
var _a = this.state, element = _a.element, status = _a.status;
|
|
340
348
|
var _b = this.props, baseURL = _b.baseURL, cacheRequests = _b.cacheRequests, _c = _b.children, children = _c === void 0 ? null : _c, description = _b.description, innerRef = _b.innerRef, _d = _b.loader, loader = _d === void 0 ? null : _d, onError = _b.onError, onLoad = _b.onLoad, preProcessor = _b.preProcessor, src = _b.src, title = _b.title, uniqueHash = _b.uniqueHash, uniquifyIDs = _b.uniquifyIDs, rest = __rest(_b, ["baseURL", "cacheRequests", "children", "description", "innerRef", "loader", "onError", "onLoad", "preProcessor", "src", "title", "uniqueHash", "uniquifyIDs"]);
|
|
349
|
+
if (!helpers_1.canUseDOM()) {
|
|
350
|
+
return loader;
|
|
351
|
+
}
|
|
341
352
|
if (element) {
|
|
342
353
|
return React.cloneElement(element, __assign({ ref: innerRef }, rest));
|
|
343
354
|
}
|
|
344
|
-
if ([
|
|
355
|
+
if ([helpers_1.STATUS.UNSUPPORTED, helpers_1.STATUS.FAILED].indexOf(status) > -1) {
|
|
345
356
|
return children;
|
|
346
357
|
}
|
|
347
358
|
return loader;
|
|
@@ -353,4 +364,5 @@ var InlineSVG = /** @class */ (function (_super) {
|
|
|
353
364
|
return InlineSVG;
|
|
354
365
|
}(React.PureComponent));
|
|
355
366
|
exports.default = InlineSVG;
|
|
367
|
+
__exportStar(require("./types"), exports);
|
|
356
368
|
//# sourceMappingURL=index.js.map
|
package/lib/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/lib/types.d.ts
ADDED
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import * as React from 'react';
|
|
2
|
+
declare type Callback = (...args: any[]) => void;
|
|
3
|
+
export declare type ErrorCallback = (error: Error | FetchError) => void;
|
|
4
|
+
export declare type LoadCallback = (src: string, isCached: boolean) => void;
|
|
5
|
+
export declare type PreProcessorCallback = (code: string) => string;
|
|
6
|
+
export interface Props extends Omit<React.HTMLProps<SVGElement>, 'onLoad' | 'onError'> {
|
|
7
|
+
baseURL?: string;
|
|
8
|
+
cacheRequests?: boolean;
|
|
9
|
+
children?: React.ReactNode;
|
|
10
|
+
description?: string;
|
|
11
|
+
innerRef?: React.Ref<HTMLElement>;
|
|
12
|
+
loader?: React.ReactNode;
|
|
13
|
+
onError?: ErrorCallback;
|
|
14
|
+
onLoad?: LoadCallback;
|
|
15
|
+
preProcessor?: PreProcessorCallback;
|
|
16
|
+
src: string;
|
|
17
|
+
title?: string;
|
|
18
|
+
uniqueHash?: string;
|
|
19
|
+
uniquifyIDs?: boolean;
|
|
20
|
+
}
|
|
21
|
+
export interface State {
|
|
22
|
+
content: string;
|
|
23
|
+
element: React.ReactNode;
|
|
24
|
+
hasCache: boolean;
|
|
25
|
+
status: string;
|
|
26
|
+
}
|
|
27
|
+
export interface FetchError extends Error {
|
|
28
|
+
code: string;
|
|
29
|
+
errno: string;
|
|
30
|
+
message: string;
|
|
31
|
+
type: string;
|
|
32
|
+
}
|
|
33
|
+
export interface StorageItem {
|
|
34
|
+
content: string;
|
|
35
|
+
queue: Callback[];
|
|
36
|
+
status: string;
|
|
37
|
+
}
|
|
38
|
+
export {};
|
package/lib/types.js
ADDED
package/lib/types.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":""}
|