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/lib/index.js
CHANGED
|
@@ -39,6 +39,42 @@ var __createBinding = (this && this.__createBinding) || (Object.create ? (functi
|
|
|
39
39
|
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
40
40
|
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
41
41
|
};
|
|
42
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
43
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
44
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
45
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
46
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
47
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
48
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
49
|
+
});
|
|
50
|
+
};
|
|
51
|
+
var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
52
|
+
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
|
|
53
|
+
return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
|
|
54
|
+
function verb(n) { return function (v) { return step([n, v]); }; }
|
|
55
|
+
function step(op) {
|
|
56
|
+
if (f) throw new TypeError("Generator is already executing.");
|
|
57
|
+
while (g && (g = 0, op[0] && (_ = 0)), _) try {
|
|
58
|
+
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;
|
|
59
|
+
if (y = 0, t) op = [op[0] & 2, t.value];
|
|
60
|
+
switch (op[0]) {
|
|
61
|
+
case 0: case 1: t = op; break;
|
|
62
|
+
case 4: _.label++; return { value: op[1], done: false };
|
|
63
|
+
case 5: _.label++; y = op[1]; op = [0]; continue;
|
|
64
|
+
case 7: op = _.ops.pop(); _.trys.pop(); continue;
|
|
65
|
+
default:
|
|
66
|
+
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
|
|
67
|
+
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
|
|
68
|
+
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
|
|
69
|
+
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
|
|
70
|
+
if (t[2]) _.ops.pop();
|
|
71
|
+
_.trys.pop(); continue;
|
|
72
|
+
}
|
|
73
|
+
op = body.call(thisArg, _);
|
|
74
|
+
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
|
|
75
|
+
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
76
|
+
}
|
|
77
|
+
};
|
|
42
78
|
var __read = (this && this.__read) || function (o, n) {
|
|
43
79
|
var m = typeof Symbol === "function" && o[Symbol.iterator];
|
|
44
80
|
if (!m) return o;
|
|
@@ -74,11 +110,11 @@ var InlineSVG = /** @class */ (function (_super) {
|
|
|
74
110
|
__extends(InlineSVG, _super);
|
|
75
111
|
function InlineSVG(props) {
|
|
76
112
|
var _this = _super.call(this, props) || this;
|
|
77
|
-
Object.defineProperty(_this, "
|
|
113
|
+
Object.defineProperty(_this, "hash", {
|
|
78
114
|
enumerable: true,
|
|
79
115
|
configurable: true,
|
|
80
116
|
writable: true,
|
|
81
|
-
value:
|
|
117
|
+
value: void 0
|
|
82
118
|
});
|
|
83
119
|
Object.defineProperty(_this, "isActive", {
|
|
84
120
|
enumerable: true,
|
|
@@ -86,27 +122,11 @@ var InlineSVG = /** @class */ (function (_super) {
|
|
|
86
122
|
writable: true,
|
|
87
123
|
value: false
|
|
88
124
|
});
|
|
89
|
-
Object.defineProperty(_this, "
|
|
90
|
-
enumerable: true,
|
|
91
|
-
configurable: true,
|
|
92
|
-
writable: true,
|
|
93
|
-
value: void 0
|
|
94
|
-
});
|
|
95
|
-
Object.defineProperty(_this, "handleLoad", {
|
|
125
|
+
Object.defineProperty(_this, "isInitialized", {
|
|
96
126
|
enumerable: true,
|
|
97
127
|
configurable: true,
|
|
98
128
|
writable: true,
|
|
99
|
-
value:
|
|
100
|
-
if (hasCache === void 0) { hasCache = false; }
|
|
101
|
-
/* istanbul ignore else */
|
|
102
|
-
if (_this.isActive) {
|
|
103
|
-
_this.setState({
|
|
104
|
-
content: content,
|
|
105
|
-
hasCache: hasCache,
|
|
106
|
-
status: helpers_1.STATUS.LOADED,
|
|
107
|
-
}, _this.getElement);
|
|
108
|
-
}
|
|
109
|
-
}
|
|
129
|
+
value: false
|
|
110
130
|
});
|
|
111
131
|
Object.defineProperty(_this, "handleError", {
|
|
112
132
|
enumerable: true,
|
|
@@ -126,70 +146,93 @@ var InlineSVG = /** @class */ (function (_super) {
|
|
|
126
146
|
}
|
|
127
147
|
}
|
|
128
148
|
});
|
|
149
|
+
Object.defineProperty(_this, "handleLoad", {
|
|
150
|
+
enumerable: true,
|
|
151
|
+
configurable: true,
|
|
152
|
+
writable: true,
|
|
153
|
+
value: function (content, hasCache) {
|
|
154
|
+
if (hasCache === void 0) { hasCache = false; }
|
|
155
|
+
/* istanbul ignore else */
|
|
156
|
+
if (_this.isActive) {
|
|
157
|
+
_this.setState({
|
|
158
|
+
content: content,
|
|
159
|
+
hasCache: hasCache,
|
|
160
|
+
status: helpers_1.STATUS.LOADED,
|
|
161
|
+
}, _this.getElement);
|
|
162
|
+
}
|
|
163
|
+
}
|
|
164
|
+
});
|
|
129
165
|
Object.defineProperty(_this, "request", {
|
|
130
166
|
enumerable: true,
|
|
131
167
|
configurable: true,
|
|
132
168
|
writable: true,
|
|
133
|
-
value: function () {
|
|
134
|
-
var _a
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
var contentType = response.headers.get('content-type');
|
|
142
|
-
var _a = __read((contentType || '').split(/ ?; ?/), 1), fileType = _a[0];
|
|
143
|
-
if (response.status > 299) {
|
|
144
|
-
throw new Error('Not found');
|
|
145
|
-
}
|
|
146
|
-
if (!['image/svg+xml', 'text/plain'].some(function (d) { return fileType.includes(d); })) {
|
|
147
|
-
throw new Error("Content type isn't valid: ".concat(fileType));
|
|
148
|
-
}
|
|
149
|
-
return response.text();
|
|
150
|
-
})
|
|
151
|
-
.then(function (content) {
|
|
152
|
-
var currentSrc = _this.props.src;
|
|
153
|
-
// the current src don't match the previous one, skipping...
|
|
154
|
-
if (src !== currentSrc) {
|
|
155
|
-
if (exports.cacheStore[src].status === helpers_1.STATUS.LOADING) {
|
|
156
|
-
delete exports.cacheStore[src];
|
|
169
|
+
value: function () { return __awaiter(_this, void 0, void 0, function () {
|
|
170
|
+
var _a, cacheRequests, fetchOptions, src, response, contentType, _b, fileType_1, content, currentSrc, cache, error_1, cache;
|
|
171
|
+
return __generator(this, function (_c) {
|
|
172
|
+
switch (_c.label) {
|
|
173
|
+
case 0:
|
|
174
|
+
_a = this.props, cacheRequests = _a.cacheRequests, fetchOptions = _a.fetchOptions, src = _a.src;
|
|
175
|
+
if (cacheRequests) {
|
|
176
|
+
exports.cacheStore[src] = { content: '', status: helpers_1.STATUS.LOADING };
|
|
157
177
|
}
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
178
|
+
_c.label = 1;
|
|
179
|
+
case 1:
|
|
180
|
+
_c.trys.push([1, 4, , 5]);
|
|
181
|
+
return [4 /*yield*/, fetch(src, fetchOptions)];
|
|
182
|
+
case 2:
|
|
183
|
+
response = _c.sent();
|
|
184
|
+
contentType = response.headers.get('content-type');
|
|
185
|
+
_b = __read((contentType || '').split(/ ?; ?/), 1), fileType_1 = _b[0];
|
|
186
|
+
if (response.status > 299) {
|
|
187
|
+
throw new Error('Not found');
|
|
188
|
+
}
|
|
189
|
+
if (!['image/svg+xml', 'text/plain'].some(function (d) { return fileType_1.includes(d); })) {
|
|
190
|
+
throw new Error("Content type isn't valid: ".concat(fileType_1));
|
|
191
|
+
}
|
|
192
|
+
return [4 /*yield*/, response.text()];
|
|
193
|
+
case 3:
|
|
194
|
+
content = _c.sent();
|
|
195
|
+
currentSrc = this.props.src;
|
|
196
|
+
// the current src don't match the previous one, skipping...
|
|
197
|
+
if (src !== currentSrc) {
|
|
198
|
+
if (exports.cacheStore[src].status === helpers_1.STATUS.LOADING) {
|
|
199
|
+
delete exports.cacheStore[src];
|
|
200
|
+
}
|
|
201
|
+
return [2 /*return*/];
|
|
202
|
+
}
|
|
203
|
+
this.handleLoad(content);
|
|
164
204
|
/* istanbul ignore else */
|
|
165
|
-
if (
|
|
166
|
-
cache
|
|
167
|
-
|
|
205
|
+
if (cacheRequests) {
|
|
206
|
+
cache = exports.cacheStore[src];
|
|
207
|
+
/* istanbul ignore else */
|
|
208
|
+
if (cache) {
|
|
209
|
+
cache.content = content;
|
|
210
|
+
cache.status = helpers_1.STATUS.LOADED;
|
|
211
|
+
}
|
|
168
212
|
}
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
/* istanbul ignore else */
|
|
174
|
-
if (cacheRequests) {
|
|
175
|
-
var cache = exports.cacheStore[src];
|
|
213
|
+
return [3 /*break*/, 5];
|
|
214
|
+
case 4:
|
|
215
|
+
error_1 = _c.sent();
|
|
216
|
+
this.handleError(error_1);
|
|
176
217
|
/* istanbul ignore else */
|
|
177
|
-
if (
|
|
178
|
-
|
|
218
|
+
if (cacheRequests) {
|
|
219
|
+
cache = exports.cacheStore[src];
|
|
220
|
+
/* istanbul ignore else */
|
|
221
|
+
if (cache) {
|
|
222
|
+
delete exports.cacheStore[src];
|
|
223
|
+
}
|
|
179
224
|
}
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
}
|
|
186
|
-
}
|
|
225
|
+
return [3 /*break*/, 5];
|
|
226
|
+
case 5: return [2 /*return*/];
|
|
227
|
+
}
|
|
228
|
+
});
|
|
229
|
+
}); }
|
|
187
230
|
});
|
|
188
231
|
_this.state = {
|
|
189
232
|
content: '',
|
|
190
233
|
element: null,
|
|
191
234
|
hasCache: !!props.cacheRequests && !!exports.cacheStore[props.src],
|
|
192
|
-
status: helpers_1.STATUS.
|
|
235
|
+
status: helpers_1.STATUS.IDLE,
|
|
193
236
|
};
|
|
194
237
|
_this.hash = props.uniqueHash || (0, helpers_1.randomString)(8);
|
|
195
238
|
return _this;
|
|
@@ -207,7 +250,7 @@ var InlineSVG = /** @class */ (function (_super) {
|
|
|
207
250
|
var src = this.props.src;
|
|
208
251
|
try {
|
|
209
252
|
/* istanbul ignore else */
|
|
210
|
-
if (status === helpers_1.STATUS.
|
|
253
|
+
if (status === helpers_1.STATUS.IDLE) {
|
|
211
254
|
/* istanbul ignore else */
|
|
212
255
|
if (!(0, helpers_1.isSupportedEnvironment)()) {
|
|
213
256
|
throw new Error('Browser does not support SVG');
|
|
@@ -258,6 +301,27 @@ var InlineSVG = /** @class */ (function (_super) {
|
|
|
258
301
|
this.isActive = false;
|
|
259
302
|
}
|
|
260
303
|
});
|
|
304
|
+
Object.defineProperty(InlineSVG.prototype, "getElement", {
|
|
305
|
+
enumerable: false,
|
|
306
|
+
configurable: true,
|
|
307
|
+
writable: true,
|
|
308
|
+
value: function () {
|
|
309
|
+
try {
|
|
310
|
+
var node = this.getNode();
|
|
311
|
+
var element = (0, react_from_dom_1.default)(node);
|
|
312
|
+
if (!element || !React.isValidElement(element)) {
|
|
313
|
+
throw new Error('Could not convert the src to a React element');
|
|
314
|
+
}
|
|
315
|
+
this.setState({
|
|
316
|
+
element: element,
|
|
317
|
+
status: helpers_1.STATUS.READY,
|
|
318
|
+
});
|
|
319
|
+
}
|
|
320
|
+
catch (error) {
|
|
321
|
+
this.handleError(new Error(error.message));
|
|
322
|
+
}
|
|
323
|
+
}
|
|
324
|
+
});
|
|
261
325
|
Object.defineProperty(InlineSVG.prototype, "getNode", {
|
|
262
326
|
enumerable: false,
|
|
263
327
|
configurable: true,
|
|
@@ -298,27 +362,6 @@ var InlineSVG = /** @class */ (function (_super) {
|
|
|
298
362
|
}
|
|
299
363
|
}
|
|
300
364
|
});
|
|
301
|
-
Object.defineProperty(InlineSVG.prototype, "getElement", {
|
|
302
|
-
enumerable: false,
|
|
303
|
-
configurable: true,
|
|
304
|
-
writable: true,
|
|
305
|
-
value: function () {
|
|
306
|
-
try {
|
|
307
|
-
var node = this.getNode();
|
|
308
|
-
var element = (0, react_from_dom_1.default)(node);
|
|
309
|
-
if (!element || !React.isValidElement(element)) {
|
|
310
|
-
throw new Error('Could not convert the src to a React element');
|
|
311
|
-
}
|
|
312
|
-
this.setState({
|
|
313
|
-
element: element,
|
|
314
|
-
status: helpers_1.STATUS.READY,
|
|
315
|
-
});
|
|
316
|
-
}
|
|
317
|
-
catch (error) {
|
|
318
|
-
this.handleError(new Error(error.message));
|
|
319
|
-
}
|
|
320
|
-
}
|
|
321
|
-
});
|
|
322
365
|
Object.defineProperty(InlineSVG.prototype, "load", {
|
|
323
366
|
enumerable: false,
|
|
324
367
|
configurable: true,
|
|
@@ -339,7 +382,7 @@ var InlineSVG = /** @class */ (function (_super) {
|
|
|
339
382
|
_this.handleLoad(cache.content, true);
|
|
340
383
|
return;
|
|
341
384
|
}
|
|
342
|
-
var dataURI = src.match(
|
|
385
|
+
var dataURI = src.match(/^data:image\/svg[^,]*?(;base64)?,(.*)/u);
|
|
343
386
|
var inlineSrc;
|
|
344
387
|
if (dataURI) {
|
|
345
388
|
inlineSrc = dataURI[1] ? window.atob(dataURI[2]) : decodeURIComponent(dataURI[2]);
|
|
@@ -356,6 +399,19 @@ var InlineSVG = /** @class */ (function (_super) {
|
|
|
356
399
|
}
|
|
357
400
|
}
|
|
358
401
|
});
|
|
402
|
+
Object.defineProperty(InlineSVG.prototype, "processSVG", {
|
|
403
|
+
enumerable: false,
|
|
404
|
+
configurable: true,
|
|
405
|
+
writable: true,
|
|
406
|
+
value: function () {
|
|
407
|
+
var content = this.state.content;
|
|
408
|
+
var preProcessor = this.props.preProcessor;
|
|
409
|
+
if (preProcessor) {
|
|
410
|
+
return preProcessor(content);
|
|
411
|
+
}
|
|
412
|
+
return content;
|
|
413
|
+
}
|
|
414
|
+
});
|
|
359
415
|
Object.defineProperty(InlineSVG.prototype, "updateSVGAttributes", {
|
|
360
416
|
enumerable: false,
|
|
361
417
|
configurable: true,
|
|
@@ -371,7 +427,7 @@ var InlineSVG = /** @class */ (function (_super) {
|
|
|
371
427
|
if (!uniquifyIDs) {
|
|
372
428
|
return node;
|
|
373
429
|
}
|
|
374
|
-
__spreadArray([], __read(node.children), false).
|
|
430
|
+
__spreadArray([], __read(node.children), false).forEach(function (d) {
|
|
375
431
|
if (d.attributes && d.attributes.length) {
|
|
376
432
|
var attributes_1 = Object.values(d.attributes).map(function (a) {
|
|
377
433
|
var attribute = a;
|
|
@@ -396,19 +452,6 @@ var InlineSVG = /** @class */ (function (_super) {
|
|
|
396
452
|
return node;
|
|
397
453
|
}
|
|
398
454
|
});
|
|
399
|
-
Object.defineProperty(InlineSVG.prototype, "processSVG", {
|
|
400
|
-
enumerable: false,
|
|
401
|
-
configurable: true,
|
|
402
|
-
writable: true,
|
|
403
|
-
value: function () {
|
|
404
|
-
var content = this.state.content;
|
|
405
|
-
var preProcessor = this.props.preProcessor;
|
|
406
|
-
if (preProcessor) {
|
|
407
|
-
return preProcessor(content);
|
|
408
|
-
}
|
|
409
|
-
return content;
|
|
410
|
-
}
|
|
411
|
-
});
|
|
412
455
|
Object.defineProperty(InlineSVG.prototype, "render", {
|
|
413
456
|
enumerable: false,
|
|
414
457
|
configurable: true,
|
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
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/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "react-inlinesvg",
|
|
3
|
-
"version": "3.0.
|
|
3
|
+
"version": "3.0.3",
|
|
4
4
|
"description": "An SVG loader for React",
|
|
5
5
|
"author": "Gil Barbara <gilbarbara@gmail.com>",
|
|
6
6
|
"contributors": [
|
|
@@ -39,38 +39,38 @@
|
|
|
39
39
|
"react-from-dom": "^0.6.2"
|
|
40
40
|
},
|
|
41
41
|
"devDependencies": {
|
|
42
|
-
"@gilbarbara/eslint-config": "^0.
|
|
43
|
-
"@gilbarbara/helpers": "^0.
|
|
44
|
-
"@gilbarbara/prettier-config": "^
|
|
42
|
+
"@gilbarbara/eslint-config": "^0.5.2",
|
|
43
|
+
"@gilbarbara/helpers": "^0.8.1",
|
|
44
|
+
"@gilbarbara/prettier-config": "^1.0.0",
|
|
45
45
|
"@gilbarbara/tsconfig": "^0.1.1",
|
|
46
|
-
"@size-limit/preset-small-lib": "^8.2.
|
|
47
|
-
"@testing-library/jest-dom": "^5.
|
|
46
|
+
"@size-limit/preset-small-lib": "^8.2.6",
|
|
47
|
+
"@testing-library/jest-dom": "^5.17.0",
|
|
48
48
|
"@testing-library/react": "^14.0.0",
|
|
49
49
|
"@types/exenv": "^1.2.0",
|
|
50
50
|
"@types/fetch-mock": "^7.3.5",
|
|
51
|
-
"@types/jest": "^29.
|
|
52
|
-
"@types/node": "^
|
|
53
|
-
"@types/node-fetch": "^2.6.
|
|
54
|
-
"@types/react": "^18.
|
|
55
|
-
"@types/react-dom": "^18.
|
|
56
|
-
"cross-fetch": "^
|
|
51
|
+
"@types/jest": "^29.5.3",
|
|
52
|
+
"@types/node": "^20.4.8",
|
|
53
|
+
"@types/node-fetch": "^2.6.4",
|
|
54
|
+
"@types/react": "^18.2.18",
|
|
55
|
+
"@types/react-dom": "^18.2.7",
|
|
56
|
+
"cross-fetch": "^4.0.0",
|
|
57
57
|
"del-cli": "^5.0.0",
|
|
58
58
|
"http-server": "^14.1.1",
|
|
59
59
|
"husky": "^8.0.3",
|
|
60
|
-
"jest": "^29.
|
|
61
|
-
"jest-environment-jsdom": "^29.
|
|
62
|
-
"jest-extended": "^
|
|
60
|
+
"jest": "^29.6.2",
|
|
61
|
+
"jest-environment-jsdom": "^29.6.2",
|
|
62
|
+
"jest-extended": "^4.0.1",
|
|
63
63
|
"jest-fetch-mock": "^3.0.3",
|
|
64
64
|
"jest-serializer-html": "^7.1.0",
|
|
65
65
|
"jest-watch-typeahead": "^2.2.2",
|
|
66
66
|
"react": "^18.2.0",
|
|
67
67
|
"react-dom": "^18.2.0",
|
|
68
68
|
"repo-tools": "^0.2.2",
|
|
69
|
-
"size-limit": "^8.2.
|
|
70
|
-
"start-server-and-test": "^
|
|
71
|
-
"ts-jest": "^29.
|
|
69
|
+
"size-limit": "^8.2.6",
|
|
70
|
+
"start-server-and-test": "^2.0.0",
|
|
71
|
+
"ts-jest": "^29.1.1",
|
|
72
72
|
"ts-node": "^10.9.1",
|
|
73
|
-
"typescript": "^
|
|
73
|
+
"typescript": "^5.1.6"
|
|
74
74
|
},
|
|
75
75
|
"scripts": {
|
|
76
76
|
"build": "npm run clean && npm run build:cjs && npm run build:esm",
|
package/src/helpers.ts
CHANGED
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
import { canUseDOM as canUseDOMFlag } from 'exenv';
|
|
2
2
|
|
|
3
|
-
import { PlainObject } from './types';
|
|
3
|
+
import type { PlainObject } from './types';
|
|
4
4
|
|
|
5
5
|
export const 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
|
+
} as const;
|
|
13
13
|
|
|
14
14
|
export function canUseDOM(): boolean {
|
|
15
15
|
return canUseDOMFlag;
|