path-serializer 0.0.0 → 0.0.2

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.
@@ -0,0 +1,1106 @@
1
+ var __webpack_modules__ = ({
2
+ "./node_modules/.pnpm/upath@2.0.1/node_modules/upath/build/code/upath.js": (function (__unused_webpack_module, exports, __webpack_require__) {
3
+ /**
4
+ * upath http://github.com/anodynos/upath/
5
+ *
6
+ * A proxy to `path`, replacing `\` with `/` for all results (supports UNC paths) & new methods to normalize & join keeping leading `./` and add, change, default, trim file extensions.
7
+ * Version 2.0.1 - Compiled on 2020-11-07 16:59:47
8
+ * Repository git://github.com/anodynos/upath
9
+ * Copyright(c) 2020 Angelos Pikoulas <agelos.pikoulas@gmail.com>
10
+ * License MIT
11
+ */
12
+
13
+ // Generated by uRequire v0.7.0-beta.33 target: 'lib' template: 'nodejs'
14
+
15
+
16
+ var VERSION = '2.0.1'; // injected by urequire-rc-inject-version
17
+
18
+ var extraFn, extraFunctions, isFunction, isString, isValidExt, name, path, propName, propValue, toUnix, upath, slice = [].slice, indexOf = [].indexOf || function (item) {
19
+ for (var i = 0, l = this.length; i < l; i++) {
20
+ if (i in this && this[i] === item)
21
+ return i;
22
+ }
23
+ return -1;
24
+ }, hasProp = {}.hasOwnProperty;
25
+ path = __webpack_require__("path");
26
+ isFunction = function (val) {
27
+ return typeof val === "function";
28
+ };
29
+ isString = function (val) {
30
+ return typeof val === "string" || !!val && typeof val === "object" && Object.prototype.toString.call(val) === "[object String]";
31
+ };
32
+ upath = exports;
33
+ upath.VERSION = typeof VERSION !== "undefined" && VERSION !== null ? VERSION : "NO-VERSION";
34
+ toUnix = function (p) {
35
+ p = p.replace(/\\/g, "/");
36
+ p = p.replace(/(?<!^)\/+/g, "/");
37
+ return p;
38
+ };
39
+ for (propName in path) {
40
+ propValue = path[propName];
41
+ if (isFunction(propValue)) {
42
+ upath[propName] = function (propName) {
43
+ return function () {
44
+ var args, result;
45
+ args = 1 <= arguments.length ? slice.call(arguments, 0) : [];
46
+ args = args.map(function (p) {
47
+ if (isString(p)) {
48
+ return toUnix(p);
49
+ } else {
50
+ return p;
51
+ }
52
+ });
53
+ result = path[propName].apply(path, args);
54
+ if (isString(result)) {
55
+ return toUnix(result);
56
+ } else {
57
+ return result;
58
+ }
59
+ };
60
+ }(propName);
61
+ } else {
62
+ upath[propName] = propValue;
63
+ }
64
+ }
65
+ upath.sep = "/";
66
+ extraFunctions = {
67
+ toUnix: toUnix,
68
+ normalizeSafe: function (p) {
69
+ var result;
70
+ p = toUnix(p);
71
+ result = upath.normalize(p);
72
+ if (p.startsWith("./") && !result.startsWith("./") && !result.startsWith("..")) {
73
+ result = "./" + result;
74
+ } else if (p.startsWith("//") && !result.startsWith("//")) {
75
+ if (p.startsWith("//./")) {
76
+ result = "//." + result;
77
+ } else {
78
+ result = "/" + result;
79
+ }
80
+ }
81
+ return result;
82
+ },
83
+ normalizeTrim: function (p) {
84
+ p = upath.normalizeSafe(p);
85
+ if (p.endsWith("/")) {
86
+ return p.slice(0, +(p.length - 2) + 1 || 9000000000);
87
+ } else {
88
+ return p;
89
+ }
90
+ },
91
+ joinSafe: function () {
92
+ var p, p0, result;
93
+ p = 1 <= arguments.length ? slice.call(arguments, 0) : [];
94
+ result = upath.join.apply(null, p);
95
+ if (p.length > 0) {
96
+ p0 = toUnix(p[0]);
97
+ if (p0.startsWith("./") && !result.startsWith("./") && !result.startsWith("..")) {
98
+ result = "./" + result;
99
+ } else if (p0.startsWith("//") && !result.startsWith("//")) {
100
+ if (p0.startsWith("//./")) {
101
+ result = "//." + result;
102
+ } else {
103
+ result = "/" + result;
104
+ }
105
+ }
106
+ }
107
+ return result;
108
+ },
109
+ addExt: function (file, ext) {
110
+ if (!ext) {
111
+ return file;
112
+ } else {
113
+ if (ext[0] !== ".") {
114
+ ext = "." + ext;
115
+ }
116
+ return file + (file.endsWith(ext) ? "" : ext);
117
+ }
118
+ },
119
+ trimExt: function (filename, ignoreExts, maxSize) {
120
+ var oldExt;
121
+ if (maxSize == null) {
122
+ maxSize = 7;
123
+ }
124
+ oldExt = upath.extname(filename);
125
+ if (isValidExt(oldExt, ignoreExts, maxSize)) {
126
+ return filename.slice(0, +(filename.length - oldExt.length - 1) + 1 || 9000000000);
127
+ } else {
128
+ return filename;
129
+ }
130
+ },
131
+ removeExt: function (filename, ext) {
132
+ if (!ext) {
133
+ return filename;
134
+ } else {
135
+ ext = ext[0] === "." ? ext : "." + ext;
136
+ if (upath.extname(filename) === ext) {
137
+ return upath.trimExt(filename, [], ext.length);
138
+ } else {
139
+ return filename;
140
+ }
141
+ }
142
+ },
143
+ changeExt: function (filename, ext, ignoreExts, maxSize) {
144
+ if (maxSize == null) {
145
+ maxSize = 7;
146
+ }
147
+ return upath.trimExt(filename, ignoreExts, maxSize) + (!ext ? "" : ext[0] === "." ? ext : "." + ext);
148
+ },
149
+ defaultExt: function (filename, ext, ignoreExts, maxSize) {
150
+ var oldExt;
151
+ if (maxSize == null) {
152
+ maxSize = 7;
153
+ }
154
+ oldExt = upath.extname(filename);
155
+ if (isValidExt(oldExt, ignoreExts, maxSize)) {
156
+ return filename;
157
+ } else {
158
+ return upath.addExt(filename, ext);
159
+ }
160
+ }
161
+ };
162
+ isValidExt = function (ext, ignoreExts, maxSize) {
163
+ if (ignoreExts == null) {
164
+ ignoreExts = [];
165
+ }
166
+ return ext && ext.length <= maxSize && indexOf.call(ignoreExts.map(function (e) {
167
+ return (e && e[0] !== "." ? "." : "") + e;
168
+ }), ext) < 0;
169
+ };
170
+ for (name in extraFunctions) {
171
+ if (!hasProp.call(extraFunctions, name))
172
+ continue;
173
+ extraFn = extraFunctions[name];
174
+ if (upath[name] !== void 0) {
175
+ throw new Error("path." + name + " already exists.");
176
+ } else {
177
+ upath[name] = extraFn;
178
+ }
179
+ }
180
+
181
+ ;
182
+
183
+ }),
184
+ "path": (function () {
185
+
186
+ ;// CONCATENATED MODULE: external "path"
187
+
188
+
189
+ }),
190
+
191
+ });
192
+ /************************************************************************/
193
+ // The module cache
194
+ var __webpack_module_cache__ = {};
195
+
196
+ // The require function
197
+ function __webpack_require__(moduleId) {
198
+
199
+ // Check if module is in cache
200
+ var cachedModule = __webpack_module_cache__[moduleId];
201
+ if (cachedModule !== undefined) {
202
+ return cachedModule.exports;
203
+ }
204
+ // Create a new module (and put it into the cache)
205
+ var module = (__webpack_module_cache__[moduleId] = {
206
+ exports: {}
207
+ });
208
+ // Execute the module function
209
+ __webpack_modules__[moduleId](module, module.exports, __webpack_require__);
210
+
211
+ // Return the exports of the module
212
+ return module.exports;
213
+
214
+ }
215
+
216
+ /************************************************************************/
217
+ // webpack/runtime/compat_get_default_export
218
+ (() => {
219
+ // getDefaultExport function for compatibility with non-harmony modules
220
+ __webpack_require__.n = function (module) {
221
+ var getter = module && module.__esModule ?
222
+ function () { return module['default']; } :
223
+ function () { return module; };
224
+ __webpack_require__.d(getter, { a: getter });
225
+ return getter;
226
+ };
227
+
228
+
229
+
230
+
231
+ })();
232
+ // webpack/runtime/define_property_getters
233
+ (() => {
234
+ __webpack_require__.d = function(exports, definition) {
235
+ for(var key in definition) {
236
+ if(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {
237
+ Object.defineProperty(exports, key, { enumerable: true, get: definition[key] });
238
+ }
239
+ }
240
+ };
241
+ })();
242
+ // webpack/runtime/has_own_property
243
+ (() => {
244
+ __webpack_require__.o = function (obj, prop) {
245
+ return Object.prototype.hasOwnProperty.call(obj, prop);
246
+ };
247
+
248
+ })();
249
+ /************************************************************************/
250
+ var __webpack_exports__ = {};
251
+
252
+ ;// CONCATENATED MODULE: external "node:os"
253
+
254
+ var external_node_os_default = /*#__PURE__*/__webpack_require__.n(external_node_os_namespaceObject);
255
+ ;// CONCATENATED MODULE: ./node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_arrayReduce.js
256
+ /**
257
+ * A specialized version of `_.reduce` for arrays without support for
258
+ * iteratee shorthands.
259
+ *
260
+ * @private
261
+ * @param {Array} [array] The array to iterate over.
262
+ * @param {Function} iteratee The function invoked per iteration.
263
+ * @param {*} [accumulator] The initial value.
264
+ * @param {boolean} [initAccum] Specify using the first element of `array` as
265
+ * the initial value.
266
+ * @returns {*} Returns the accumulated value.
267
+ */
268
+ function arrayReduce(array, iteratee, accumulator, initAccum) {
269
+ var index = -1,
270
+ length = array == null ? 0 : array.length;
271
+
272
+ if (initAccum && length) {
273
+ accumulator = array[++index];
274
+ }
275
+ while (++index < length) {
276
+ accumulator = iteratee(accumulator, array[index], index, array);
277
+ }
278
+ return accumulator;
279
+ }
280
+
281
+ /* harmony default export */ const _arrayReduce = (arrayReduce);
282
+
283
+ ;// CONCATENATED MODULE: ./node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_basePropertyOf.js
284
+ /**
285
+ * The base implementation of `_.propertyOf` without support for deep paths.
286
+ *
287
+ * @private
288
+ * @param {Object} object The object to query.
289
+ * @returns {Function} Returns the new accessor function.
290
+ */
291
+ function basePropertyOf(object) {
292
+ return function(key) {
293
+ return object == null ? undefined : object[key];
294
+ };
295
+ }
296
+
297
+ /* harmony default export */ const _basePropertyOf = (basePropertyOf);
298
+
299
+ ;// CONCATENATED MODULE: ./node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_deburrLetter.js
300
+
301
+
302
+ /** Used to map Latin Unicode letters to basic Latin letters. */
303
+ var deburredLetters = {
304
+ // Latin-1 Supplement block.
305
+ '\xc0': 'A', '\xc1': 'A', '\xc2': 'A', '\xc3': 'A', '\xc4': 'A', '\xc5': 'A',
306
+ '\xe0': 'a', '\xe1': 'a', '\xe2': 'a', '\xe3': 'a', '\xe4': 'a', '\xe5': 'a',
307
+ '\xc7': 'C', '\xe7': 'c',
308
+ '\xd0': 'D', '\xf0': 'd',
309
+ '\xc8': 'E', '\xc9': 'E', '\xca': 'E', '\xcb': 'E',
310
+ '\xe8': 'e', '\xe9': 'e', '\xea': 'e', '\xeb': 'e',
311
+ '\xcc': 'I', '\xcd': 'I', '\xce': 'I', '\xcf': 'I',
312
+ '\xec': 'i', '\xed': 'i', '\xee': 'i', '\xef': 'i',
313
+ '\xd1': 'N', '\xf1': 'n',
314
+ '\xd2': 'O', '\xd3': 'O', '\xd4': 'O', '\xd5': 'O', '\xd6': 'O', '\xd8': 'O',
315
+ '\xf2': 'o', '\xf3': 'o', '\xf4': 'o', '\xf5': 'o', '\xf6': 'o', '\xf8': 'o',
316
+ '\xd9': 'U', '\xda': 'U', '\xdb': 'U', '\xdc': 'U',
317
+ '\xf9': 'u', '\xfa': 'u', '\xfb': 'u', '\xfc': 'u',
318
+ '\xdd': 'Y', '\xfd': 'y', '\xff': 'y',
319
+ '\xc6': 'Ae', '\xe6': 'ae',
320
+ '\xde': 'Th', '\xfe': 'th',
321
+ '\xdf': 'ss',
322
+ // Latin Extended-A block.
323
+ '\u0100': 'A', '\u0102': 'A', '\u0104': 'A',
324
+ '\u0101': 'a', '\u0103': 'a', '\u0105': 'a',
325
+ '\u0106': 'C', '\u0108': 'C', '\u010a': 'C', '\u010c': 'C',
326
+ '\u0107': 'c', '\u0109': 'c', '\u010b': 'c', '\u010d': 'c',
327
+ '\u010e': 'D', '\u0110': 'D', '\u010f': 'd', '\u0111': 'd',
328
+ '\u0112': 'E', '\u0114': 'E', '\u0116': 'E', '\u0118': 'E', '\u011a': 'E',
329
+ '\u0113': 'e', '\u0115': 'e', '\u0117': 'e', '\u0119': 'e', '\u011b': 'e',
330
+ '\u011c': 'G', '\u011e': 'G', '\u0120': 'G', '\u0122': 'G',
331
+ '\u011d': 'g', '\u011f': 'g', '\u0121': 'g', '\u0123': 'g',
332
+ '\u0124': 'H', '\u0126': 'H', '\u0125': 'h', '\u0127': 'h',
333
+ '\u0128': 'I', '\u012a': 'I', '\u012c': 'I', '\u012e': 'I', '\u0130': 'I',
334
+ '\u0129': 'i', '\u012b': 'i', '\u012d': 'i', '\u012f': 'i', '\u0131': 'i',
335
+ '\u0134': 'J', '\u0135': 'j',
336
+ '\u0136': 'K', '\u0137': 'k', '\u0138': 'k',
337
+ '\u0139': 'L', '\u013b': 'L', '\u013d': 'L', '\u013f': 'L', '\u0141': 'L',
338
+ '\u013a': 'l', '\u013c': 'l', '\u013e': 'l', '\u0140': 'l', '\u0142': 'l',
339
+ '\u0143': 'N', '\u0145': 'N', '\u0147': 'N', '\u014a': 'N',
340
+ '\u0144': 'n', '\u0146': 'n', '\u0148': 'n', '\u014b': 'n',
341
+ '\u014c': 'O', '\u014e': 'O', '\u0150': 'O',
342
+ '\u014d': 'o', '\u014f': 'o', '\u0151': 'o',
343
+ '\u0154': 'R', '\u0156': 'R', '\u0158': 'R',
344
+ '\u0155': 'r', '\u0157': 'r', '\u0159': 'r',
345
+ '\u015a': 'S', '\u015c': 'S', '\u015e': 'S', '\u0160': 'S',
346
+ '\u015b': 's', '\u015d': 's', '\u015f': 's', '\u0161': 's',
347
+ '\u0162': 'T', '\u0164': 'T', '\u0166': 'T',
348
+ '\u0163': 't', '\u0165': 't', '\u0167': 't',
349
+ '\u0168': 'U', '\u016a': 'U', '\u016c': 'U', '\u016e': 'U', '\u0170': 'U', '\u0172': 'U',
350
+ '\u0169': 'u', '\u016b': 'u', '\u016d': 'u', '\u016f': 'u', '\u0171': 'u', '\u0173': 'u',
351
+ '\u0174': 'W', '\u0175': 'w',
352
+ '\u0176': 'Y', '\u0177': 'y', '\u0178': 'Y',
353
+ '\u0179': 'Z', '\u017b': 'Z', '\u017d': 'Z',
354
+ '\u017a': 'z', '\u017c': 'z', '\u017e': 'z',
355
+ '\u0132': 'IJ', '\u0133': 'ij',
356
+ '\u0152': 'Oe', '\u0153': 'oe',
357
+ '\u0149': "'n", '\u017f': 's'
358
+ };
359
+
360
+ /**
361
+ * Used by `_.deburr` to convert Latin-1 Supplement and Latin Extended-A
362
+ * letters to basic Latin letters.
363
+ *
364
+ * @private
365
+ * @param {string} letter The matched letter to deburr.
366
+ * @returns {string} Returns the deburred letter.
367
+ */
368
+ var deburrLetter = _basePropertyOf(deburredLetters);
369
+
370
+ /* harmony default export */ const _deburrLetter = (deburrLetter);
371
+
372
+ ;// CONCATENATED MODULE: ./node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_freeGlobal.js
373
+ /** Detect free variable `global` from Node.js. */
374
+ var freeGlobal = typeof global == 'object' && global && global.Object === Object && global;
375
+
376
+ /* harmony default export */ const _freeGlobal = (freeGlobal);
377
+
378
+ ;// CONCATENATED MODULE: ./node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_root.js
379
+
380
+
381
+ /** Detect free variable `self`. */
382
+ var freeSelf = typeof self == 'object' && self && self.Object === Object && self;
383
+
384
+ /** Used as a reference to the global object. */
385
+ var root = _freeGlobal || freeSelf || Function('return this')();
386
+
387
+ /* harmony default export */ const _root = (root);
388
+
389
+ ;// CONCATENATED MODULE: ./node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_Symbol.js
390
+
391
+
392
+ /** Built-in value references. */
393
+ var Symbol = _root.Symbol;
394
+
395
+ /* harmony default export */ const _Symbol = (Symbol);
396
+
397
+ ;// CONCATENATED MODULE: ./node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_arrayMap.js
398
+ /**
399
+ * A specialized version of `_.map` for arrays without support for iteratee
400
+ * shorthands.
401
+ *
402
+ * @private
403
+ * @param {Array} [array] The array to iterate over.
404
+ * @param {Function} iteratee The function invoked per iteration.
405
+ * @returns {Array} Returns the new mapped array.
406
+ */
407
+ function arrayMap(array, iteratee) {
408
+ var index = -1,
409
+ length = array == null ? 0 : array.length,
410
+ result = Array(length);
411
+
412
+ while (++index < length) {
413
+ result[index] = iteratee(array[index], index, array);
414
+ }
415
+ return result;
416
+ }
417
+
418
+ /* harmony default export */ const _arrayMap = (arrayMap);
419
+
420
+ ;// CONCATENATED MODULE: ./node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/isArray.js
421
+ /**
422
+ * Checks if `value` is classified as an `Array` object.
423
+ *
424
+ * @static
425
+ * @memberOf _
426
+ * @since 0.1.0
427
+ * @category Lang
428
+ * @param {*} value The value to check.
429
+ * @returns {boolean} Returns `true` if `value` is an array, else `false`.
430
+ * @example
431
+ *
432
+ * _.isArray([1, 2, 3]);
433
+ * // => true
434
+ *
435
+ * _.isArray(document.body.children);
436
+ * // => false
437
+ *
438
+ * _.isArray('abc');
439
+ * // => false
440
+ *
441
+ * _.isArray(_.noop);
442
+ * // => false
443
+ */
444
+ var isArray_isArray = Array.isArray;
445
+
446
+ /* harmony default export */ const isArray = (isArray_isArray);
447
+
448
+ ;// CONCATENATED MODULE: ./node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_getRawTag.js
449
+
450
+
451
+ /** Used for built-in method references. */
452
+ var objectProto = Object.prototype;
453
+
454
+ /** Used to check objects for own properties. */
455
+ var _getRawTag_hasOwnProperty = objectProto.hasOwnProperty;
456
+
457
+ /**
458
+ * Used to resolve the
459
+ * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring)
460
+ * of values.
461
+ */
462
+ var nativeObjectToString = objectProto.toString;
463
+
464
+ /** Built-in value references. */
465
+ var symToStringTag = _Symbol ? _Symbol.toStringTag : undefined;
466
+
467
+ /**
468
+ * A specialized version of `baseGetTag` which ignores `Symbol.toStringTag` values.
469
+ *
470
+ * @private
471
+ * @param {*} value The value to query.
472
+ * @returns {string} Returns the raw `toStringTag`.
473
+ */
474
+ function getRawTag(value) {
475
+ var isOwn = _getRawTag_hasOwnProperty.call(value, symToStringTag),
476
+ tag = value[symToStringTag];
477
+
478
+ try {
479
+ value[symToStringTag] = undefined;
480
+ var unmasked = true;
481
+ } catch (e) {}
482
+
483
+ var result = nativeObjectToString.call(value);
484
+ if (unmasked) {
485
+ if (isOwn) {
486
+ value[symToStringTag] = tag;
487
+ } else {
488
+ delete value[symToStringTag];
489
+ }
490
+ }
491
+ return result;
492
+ }
493
+
494
+ /* harmony default export */ const _getRawTag = (getRawTag);
495
+
496
+ ;// CONCATENATED MODULE: ./node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_objectToString.js
497
+ /** Used for built-in method references. */
498
+ var _objectToString_objectProto = Object.prototype;
499
+
500
+ /**
501
+ * Used to resolve the
502
+ * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring)
503
+ * of values.
504
+ */
505
+ var _objectToString_nativeObjectToString = _objectToString_objectProto.toString;
506
+
507
+ /**
508
+ * Converts `value` to a string using `Object.prototype.toString`.
509
+ *
510
+ * @private
511
+ * @param {*} value The value to convert.
512
+ * @returns {string} Returns the converted string.
513
+ */
514
+ function objectToString(value) {
515
+ return _objectToString_nativeObjectToString.call(value);
516
+ }
517
+
518
+ /* harmony default export */ const _objectToString = (objectToString);
519
+
520
+ ;// CONCATENATED MODULE: ./node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_baseGetTag.js
521
+
522
+
523
+
524
+
525
+ /** `Object#toString` result references. */
526
+ var nullTag = '[object Null]',
527
+ undefinedTag = '[object Undefined]';
528
+
529
+ /** Built-in value references. */
530
+ var _baseGetTag_symToStringTag = _Symbol ? _Symbol.toStringTag : undefined;
531
+
532
+ /**
533
+ * The base implementation of `getTag` without fallbacks for buggy environments.
534
+ *
535
+ * @private
536
+ * @param {*} value The value to query.
537
+ * @returns {string} Returns the `toStringTag`.
538
+ */
539
+ function baseGetTag(value) {
540
+ if (value == null) {
541
+ return value === undefined ? undefinedTag : nullTag;
542
+ }
543
+ return (_baseGetTag_symToStringTag && _baseGetTag_symToStringTag in Object(value))
544
+ ? _getRawTag(value)
545
+ : _objectToString(value);
546
+ }
547
+
548
+ /* harmony default export */ const _baseGetTag = (baseGetTag);
549
+
550
+ ;// CONCATENATED MODULE: ./node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/isObjectLike.js
551
+ /**
552
+ * Checks if `value` is object-like. A value is object-like if it's not `null`
553
+ * and has a `typeof` result of "object".
554
+ *
555
+ * @static
556
+ * @memberOf _
557
+ * @since 4.0.0
558
+ * @category Lang
559
+ * @param {*} value The value to check.
560
+ * @returns {boolean} Returns `true` if `value` is object-like, else `false`.
561
+ * @example
562
+ *
563
+ * _.isObjectLike({});
564
+ * // => true
565
+ *
566
+ * _.isObjectLike([1, 2, 3]);
567
+ * // => true
568
+ *
569
+ * _.isObjectLike(_.noop);
570
+ * // => false
571
+ *
572
+ * _.isObjectLike(null);
573
+ * // => false
574
+ */
575
+ function isObjectLike(value) {
576
+ return value != null && typeof value == 'object';
577
+ }
578
+
579
+ /* harmony default export */ const lodash_es_isObjectLike = (isObjectLike);
580
+
581
+ ;// CONCATENATED MODULE: ./node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/isSymbol.js
582
+
583
+
584
+
585
+ /** `Object#toString` result references. */
586
+ var symbolTag = '[object Symbol]';
587
+
588
+ /**
589
+ * Checks if `value` is classified as a `Symbol` primitive or object.
590
+ *
591
+ * @static
592
+ * @memberOf _
593
+ * @since 4.0.0
594
+ * @category Lang
595
+ * @param {*} value The value to check.
596
+ * @returns {boolean} Returns `true` if `value` is a symbol, else `false`.
597
+ * @example
598
+ *
599
+ * _.isSymbol(Symbol.iterator);
600
+ * // => true
601
+ *
602
+ * _.isSymbol('abc');
603
+ * // => false
604
+ */
605
+ function isSymbol_isSymbol(value) {
606
+ return typeof value == 'symbol' ||
607
+ (lodash_es_isObjectLike(value) && _baseGetTag(value) == symbolTag);
608
+ }
609
+
610
+ /* harmony default export */ const isSymbol = (isSymbol_isSymbol);
611
+
612
+ ;// CONCATENATED MODULE: ./node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_baseToString.js
613
+
614
+
615
+
616
+
617
+
618
+ /** Used as references for various `Number` constants. */
619
+ var INFINITY = 1 / 0;
620
+
621
+ /** Used to convert symbols to primitives and strings. */
622
+ var symbolProto = _Symbol ? _Symbol.prototype : undefined,
623
+ symbolToString = symbolProto ? symbolProto.toString : undefined;
624
+
625
+ /**
626
+ * The base implementation of `_.toString` which doesn't convert nullish
627
+ * values to empty strings.
628
+ *
629
+ * @private
630
+ * @param {*} value The value to process.
631
+ * @returns {string} Returns the string.
632
+ */
633
+ function baseToString(value) {
634
+ // Exit early for strings to avoid a performance hit in some environments.
635
+ if (typeof value == 'string') {
636
+ return value;
637
+ }
638
+ if (isArray(value)) {
639
+ // Recursively convert values (susceptible to call stack limits).
640
+ return _arrayMap(value, baseToString) + '';
641
+ }
642
+ if (isSymbol(value)) {
643
+ return symbolToString ? symbolToString.call(value) : '';
644
+ }
645
+ var result = (value + '');
646
+ return (result == '0' && (1 / value) == -INFINITY) ? '-0' : result;
647
+ }
648
+
649
+ /* harmony default export */ const _baseToString = (baseToString);
650
+
651
+ ;// CONCATENATED MODULE: ./node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/toString.js
652
+
653
+
654
+ /**
655
+ * Converts `value` to a string. An empty string is returned for `null`
656
+ * and `undefined` values. The sign of `-0` is preserved.
657
+ *
658
+ * @static
659
+ * @memberOf _
660
+ * @since 4.0.0
661
+ * @category Lang
662
+ * @param {*} value The value to convert.
663
+ * @returns {string} Returns the converted string.
664
+ * @example
665
+ *
666
+ * _.toString(null);
667
+ * // => ''
668
+ *
669
+ * _.toString(-0);
670
+ * // => '-0'
671
+ *
672
+ * _.toString([1, 2, 3]);
673
+ * // => '1,2,3'
674
+ */
675
+ function toString_toString(value) {
676
+ return value == null ? '' : _baseToString(value);
677
+ }
678
+
679
+ /* harmony default export */ const lodash_es_toString = (toString_toString);
680
+
681
+ ;// CONCATENATED MODULE: ./node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/deburr.js
682
+
683
+
684
+
685
+ /** Used to match Latin Unicode letters (excluding mathematical operators). */
686
+ var reLatin = /[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g;
687
+
688
+ /** Used to compose unicode character classes. */
689
+ var rsComboMarksRange = '\\u0300-\\u036f',
690
+ reComboHalfMarksRange = '\\ufe20-\\ufe2f',
691
+ rsComboSymbolsRange = '\\u20d0-\\u20ff',
692
+ rsComboRange = rsComboMarksRange + reComboHalfMarksRange + rsComboSymbolsRange;
693
+
694
+ /** Used to compose unicode capture groups. */
695
+ var rsCombo = '[' + rsComboRange + ']';
696
+
697
+ /**
698
+ * Used to match [combining diacritical marks](https://en.wikipedia.org/wiki/Combining_Diacritical_Marks) and
699
+ * [combining diacritical marks for symbols](https://en.wikipedia.org/wiki/Combining_Diacritical_Marks_for_Symbols).
700
+ */
701
+ var reComboMark = RegExp(rsCombo, 'g');
702
+
703
+ /**
704
+ * Deburrs `string` by converting
705
+ * [Latin-1 Supplement](https://en.wikipedia.org/wiki/Latin-1_Supplement_(Unicode_block)#Character_table)
706
+ * and [Latin Extended-A](https://en.wikipedia.org/wiki/Latin_Extended-A)
707
+ * letters to basic Latin letters and removing
708
+ * [combining diacritical marks](https://en.wikipedia.org/wiki/Combining_Diacritical_Marks).
709
+ *
710
+ * @static
711
+ * @memberOf _
712
+ * @since 3.0.0
713
+ * @category String
714
+ * @param {string} [string=''] The string to deburr.
715
+ * @returns {string} Returns the deburred string.
716
+ * @example
717
+ *
718
+ * _.deburr('déjà vu');
719
+ * // => 'deja vu'
720
+ */
721
+ function deburr_deburr(string) {
722
+ string = lodash_es_toString(string);
723
+ return string && string.replace(reLatin, _deburrLetter).replace(reComboMark, '');
724
+ }
725
+
726
+ /* harmony default export */ const deburr = (deburr_deburr);
727
+
728
+ ;// CONCATENATED MODULE: ./node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_asciiWords.js
729
+ /** Used to match words composed of alphanumeric characters. */
730
+ var reAsciiWord = /[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g;
731
+
732
+ /**
733
+ * Splits an ASCII `string` into an array of its words.
734
+ *
735
+ * @private
736
+ * @param {string} The string to inspect.
737
+ * @returns {Array} Returns the words of `string`.
738
+ */
739
+ function asciiWords(string) {
740
+ return string.match(reAsciiWord) || [];
741
+ }
742
+
743
+ /* harmony default export */ const _asciiWords = (asciiWords);
744
+
745
+ ;// CONCATENATED MODULE: ./node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_hasUnicodeWord.js
746
+ /** Used to detect strings that need a more robust regexp to match words. */
747
+ var reHasUnicodeWord = /[a-z][A-Z]|[A-Z]{2}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/;
748
+
749
+ /**
750
+ * Checks if `string` contains a word composed of Unicode symbols.
751
+ *
752
+ * @private
753
+ * @param {string} string The string to inspect.
754
+ * @returns {boolean} Returns `true` if a word is found, else `false`.
755
+ */
756
+ function hasUnicodeWord(string) {
757
+ return reHasUnicodeWord.test(string);
758
+ }
759
+
760
+ /* harmony default export */ const _hasUnicodeWord = (hasUnicodeWord);
761
+
762
+ ;// CONCATENATED MODULE: ./node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_unicodeWords.js
763
+ /** Used to compose unicode character classes. */
764
+ var rsAstralRange = '\\ud800-\\udfff',
765
+ _unicodeWords_rsComboMarksRange = '\\u0300-\\u036f',
766
+ _unicodeWords_reComboHalfMarksRange = '\\ufe20-\\ufe2f',
767
+ _unicodeWords_rsComboSymbolsRange = '\\u20d0-\\u20ff',
768
+ _unicodeWords_rsComboRange = _unicodeWords_rsComboMarksRange + _unicodeWords_reComboHalfMarksRange + _unicodeWords_rsComboSymbolsRange,
769
+ rsDingbatRange = '\\u2700-\\u27bf',
770
+ rsLowerRange = 'a-z\\xdf-\\xf6\\xf8-\\xff',
771
+ rsMathOpRange = '\\xac\\xb1\\xd7\\xf7',
772
+ rsNonCharRange = '\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf',
773
+ rsPunctuationRange = '\\u2000-\\u206f',
774
+ rsSpaceRange = ' \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000',
775
+ rsUpperRange = 'A-Z\\xc0-\\xd6\\xd8-\\xde',
776
+ rsVarRange = '\\ufe0e\\ufe0f',
777
+ rsBreakRange = rsMathOpRange + rsNonCharRange + rsPunctuationRange + rsSpaceRange;
778
+
779
+ /** Used to compose unicode capture groups. */
780
+ var rsApos = "['\u2019]",
781
+ rsBreak = '[' + rsBreakRange + ']',
782
+ _unicodeWords_rsCombo = '[' + _unicodeWords_rsComboRange + ']',
783
+ rsDigits = '\\d+',
784
+ rsDingbat = '[' + rsDingbatRange + ']',
785
+ rsLower = '[' + rsLowerRange + ']',
786
+ rsMisc = '[^' + rsAstralRange + rsBreakRange + rsDigits + rsDingbatRange + rsLowerRange + rsUpperRange + ']',
787
+ rsFitz = '\\ud83c[\\udffb-\\udfff]',
788
+ rsModifier = '(?:' + _unicodeWords_rsCombo + '|' + rsFitz + ')',
789
+ rsNonAstral = '[^' + rsAstralRange + ']',
790
+ rsRegional = '(?:\\ud83c[\\udde6-\\uddff]){2}',
791
+ rsSurrPair = '[\\ud800-\\udbff][\\udc00-\\udfff]',
792
+ rsUpper = '[' + rsUpperRange + ']',
793
+ rsZWJ = '\\u200d';
794
+
795
+ /** Used to compose unicode regexes. */
796
+ var rsMiscLower = '(?:' + rsLower + '|' + rsMisc + ')',
797
+ rsMiscUpper = '(?:' + rsUpper + '|' + rsMisc + ')',
798
+ rsOptContrLower = '(?:' + rsApos + '(?:d|ll|m|re|s|t|ve))?',
799
+ rsOptContrUpper = '(?:' + rsApos + '(?:D|LL|M|RE|S|T|VE))?',
800
+ reOptMod = rsModifier + '?',
801
+ rsOptVar = '[' + rsVarRange + ']?',
802
+ rsOptJoin = '(?:' + rsZWJ + '(?:' + [rsNonAstral, rsRegional, rsSurrPair].join('|') + ')' + rsOptVar + reOptMod + ')*',
803
+ rsOrdLower = '\\d*(?:1st|2nd|3rd|(?![123])\\dth)(?=\\b|[A-Z_])',
804
+ rsOrdUpper = '\\d*(?:1ST|2ND|3RD|(?![123])\\dTH)(?=\\b|[a-z_])',
805
+ rsSeq = rsOptVar + reOptMod + rsOptJoin,
806
+ rsEmoji = '(?:' + [rsDingbat, rsRegional, rsSurrPair].join('|') + ')' + rsSeq;
807
+
808
+ /** Used to match complex or compound words. */
809
+ var reUnicodeWord = RegExp([
810
+ rsUpper + '?' + rsLower + '+' + rsOptContrLower + '(?=' + [rsBreak, rsUpper, '$'].join('|') + ')',
811
+ rsMiscUpper + '+' + rsOptContrUpper + '(?=' + [rsBreak, rsUpper + rsMiscLower, '$'].join('|') + ')',
812
+ rsUpper + '?' + rsMiscLower + '+' + rsOptContrLower,
813
+ rsUpper + '+' + rsOptContrUpper,
814
+ rsOrdUpper,
815
+ rsOrdLower,
816
+ rsDigits,
817
+ rsEmoji
818
+ ].join('|'), 'g');
819
+
820
+ /**
821
+ * Splits a Unicode `string` into an array of its words.
822
+ *
823
+ * @private
824
+ * @param {string} The string to inspect.
825
+ * @returns {Array} Returns the words of `string`.
826
+ */
827
+ function unicodeWords(string) {
828
+ return string.match(reUnicodeWord) || [];
829
+ }
830
+
831
+ /* harmony default export */ const _unicodeWords = (unicodeWords);
832
+
833
+ ;// CONCATENATED MODULE: ./node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/words.js
834
+
835
+
836
+
837
+
838
+
839
+ /**
840
+ * Splits `string` into an array of its words.
841
+ *
842
+ * @static
843
+ * @memberOf _
844
+ * @since 3.0.0
845
+ * @category String
846
+ * @param {string} [string=''] The string to inspect.
847
+ * @param {RegExp|string} [pattern] The pattern to match words.
848
+ * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`.
849
+ * @returns {Array} Returns the words of `string`.
850
+ * @example
851
+ *
852
+ * _.words('fred, barney, & pebbles');
853
+ * // => ['fred', 'barney', 'pebbles']
854
+ *
855
+ * _.words('fred, barney, & pebbles', /[^, ]+/g);
856
+ * // => ['fred', 'barney', '&', 'pebbles']
857
+ */
858
+ function words_words(string, pattern, guard) {
859
+ string = lodash_es_toString(string);
860
+ pattern = guard ? undefined : pattern;
861
+
862
+ if (pattern === undefined) {
863
+ return _hasUnicodeWord(string) ? _unicodeWords(string) : _asciiWords(string);
864
+ }
865
+ return string.match(pattern) || [];
866
+ }
867
+
868
+ /* harmony default export */ const words = (words_words);
869
+
870
+ ;// CONCATENATED MODULE: ./node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_createCompounder.js
871
+
872
+
873
+
874
+
875
+ /** Used to compose unicode capture groups. */
876
+ var _createCompounder_rsApos = "['\u2019]";
877
+
878
+ /** Used to match apostrophes. */
879
+ var reApos = RegExp(_createCompounder_rsApos, 'g');
880
+
881
+ /**
882
+ * Creates a function like `_.camelCase`.
883
+ *
884
+ * @private
885
+ * @param {Function} callback The function to combine each word.
886
+ * @returns {Function} Returns the new compounder function.
887
+ */
888
+ function createCompounder(callback) {
889
+ return function(string) {
890
+ return _arrayReduce(words(deburr(string).replace(reApos, '')), callback, '');
891
+ };
892
+ }
893
+
894
+ /* harmony default export */ const _createCompounder = (createCompounder);
895
+
896
+ ;// CONCATENATED MODULE: ./node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/snakeCase.js
897
+
898
+
899
+ /**
900
+ * Converts `string` to
901
+ * [snake case](https://en.wikipedia.org/wiki/Snake_case).
902
+ *
903
+ * @static
904
+ * @memberOf _
905
+ * @since 3.0.0
906
+ * @category String
907
+ * @param {string} [string=''] The string to convert.
908
+ * @returns {string} Returns the snake cased string.
909
+ * @example
910
+ *
911
+ * _.snakeCase('Foo Bar');
912
+ * // => 'foo_bar'
913
+ *
914
+ * _.snakeCase('fooBar');
915
+ * // => 'foo_bar'
916
+ *
917
+ * _.snakeCase('--FOO-BAR--');
918
+ * // => 'foo_bar'
919
+ */
920
+ var snakeCase_snakeCase = _createCompounder(function(result, word, index) {
921
+ return result + (index ? '_' : '') + word.toLowerCase();
922
+ });
923
+
924
+ /* harmony default export */ const snakeCase = (snakeCase_snakeCase);
925
+
926
+ ;// CONCATENATED MODULE: external "node:fs"
927
+
928
+ var external_node_fs_default = /*#__PURE__*/__webpack_require__.n(external_node_fs_namespaceObject);
929
+ ;// CONCATENATED MODULE: external "node:path"
930
+
931
+ var external_node_path_default = /*#__PURE__*/__webpack_require__.n(external_node_path_namespaceObject);
932
+ ;// CONCATENATED MODULE: ./node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/escapeRegExp.js
933
+
934
+
935
+ /**
936
+ * Used to match `RegExp`
937
+ * [syntax characters](http://ecma-international.org/ecma-262/7.0/#sec-patterns).
938
+ */
939
+ var reRegExpChar = /[\\^$.*+?()[\]{}|]/g,
940
+ reHasRegExpChar = RegExp(reRegExpChar.source);
941
+
942
+ /**
943
+ * Escapes the `RegExp` special characters "^", "$", "\", ".", "*", "+",
944
+ * "?", "(", ")", "[", "]", "{", "}", and "|" in `string`.
945
+ *
946
+ * @static
947
+ * @memberOf _
948
+ * @since 3.0.0
949
+ * @category String
950
+ * @param {string} [string=''] The string to escape.
951
+ * @returns {string} Returns the escaped string.
952
+ * @example
953
+ *
954
+ * _.escapeRegExp('[lodash](https://lodash.com/)');
955
+ * // => '\[lodash\]\(https://lodash\.com/\)'
956
+ */
957
+ function escapeRegExp(string) {
958
+ string = lodash_es_toString(string);
959
+ return (string && reHasRegExpChar.test(string))
960
+ ? string.replace(reRegExpChar, '\\$&')
961
+ : string;
962
+ }
963
+
964
+ /* harmony default export */ const lodash_es_escapeRegExp = (escapeRegExp);
965
+
966
+ // EXTERNAL MODULE: ./node_modules/.pnpm/upath@2.0.1/node_modules/upath/build/code/upath.js
967
+ var upath = __webpack_require__("./node_modules/.pnpm/upath@2.0.1/node_modules/upath/build/code/upath.js");
968
+ var upath_default = /*#__PURE__*/__webpack_require__.n(upath);
969
+ ;// CONCATENATED MODULE: ./src/utils.ts
970
+
971
+
972
+
973
+
974
+
975
+ const isPathString = (test)=>external_node_path_default().posix.basename(test) !== test || external_node_path_default().win32.basename(test) !== test;
976
+ function utils_getRealTemporaryDirectory() {
977
+ let ret = null;
978
+ try {
979
+ ret = external_node_os_default().tmpdir();
980
+ ret = external_node_fs_default().realpathSync(ret);
981
+ } catch {}
982
+ return ret;
983
+ }
984
+ const normalizeToPosixPath = (p)=>upath_default().normalizeSafe(external_node_path_default().normalize(p || '')).replace(/^([a-zA-Z]+):/, (_, m)=>`/${m.toLowerCase()}`);
985
+ /**
986
+ * Compile path string to RegExp.
987
+ * @note Only support posix path.
988
+ */ function compilePathMatcherRegExp(match) {
989
+ if (typeof match !== 'string') {
990
+ return match;
991
+ }
992
+ const escaped = lodash_es_escapeRegExp(match);
993
+ return new RegExp(`(?<=\\W|^)${escaped}(?=\\W|$)`);
994
+ }
995
+ function splitPathString(str) {
996
+ return str.split(/[\\/]/);
997
+ }
998
+
999
+ ;// CONCATENATED MODULE: ./src/applyMatcherReplacement.ts
1000
+
1001
+
1002
+
1003
+ function applyPathMatcher(matcher, str, options = {}) {
1004
+ const regex = compilePathMatcherRegExp(matcher.match);
1005
+ const replacer = (substring, ...args)=>{
1006
+ if (options.minPartials && splitPathString(substring).length < options.minPartials) {
1007
+ return substring;
1008
+ }
1009
+ const ret = typeof matcher.mark === 'string' ? matcher.mark : matcher.mark(substring, ...args);
1010
+ return `<${snakeCase(ret).toUpperCase()}>`;
1011
+ };
1012
+ return str.replace(regex, replacer);
1013
+ }
1014
+ function applyMatcherReplacement(matchers, str, options = {}) {
1015
+ return matchers.reduce((ret, matcher)=>{
1016
+ return applyPathMatcher(matcher, ret, options);
1017
+ }, str);
1018
+ }
1019
+ const createDefaultPathMatchers = ()=>{
1020
+ const ret = [
1021
+ {
1022
+ match: /(?<=\/)(\.pnpm\/.+?\/node_modules)(?=\/)/,
1023
+ mark: 'pnpmInner'
1024
+ }
1025
+ ];
1026
+ const tmpdir = getRealTemporaryDirectory();
1027
+ tmpdir && ret.push({
1028
+ match: tmpdir,
1029
+ mark: 'temp'
1030
+ });
1031
+ ret.push({
1032
+ match: os.tmpdir(),
1033
+ mark: 'temp'
1034
+ });
1035
+ ret.push({
1036
+ match: os.homedir(),
1037
+ mark: 'home'
1038
+ });
1039
+ return ret;
1040
+ };
1041
+
1042
+ ;// CONCATENATED MODULE: ./src/createDefaultPathMatchers.ts
1043
+
1044
+
1045
+ const createDefaultPathMatchers_createDefaultPathMatchers = ()=>{
1046
+ const ret = [
1047
+ {
1048
+ match: /(?<=\/)(\.pnpm\/.+?\/node_modules)(?=\/)/,
1049
+ mark: 'pnpmInner'
1050
+ }
1051
+ ];
1052
+ const tmpdir = utils_getRealTemporaryDirectory();
1053
+ tmpdir && ret.push({
1054
+ match: tmpdir,
1055
+ mark: 'temp'
1056
+ });
1057
+ ret.push({
1058
+ match: external_node_os_default().tmpdir(),
1059
+ mark: 'temp'
1060
+ });
1061
+ ret.push({
1062
+ match: external_node_os_default().homedir(),
1063
+ mark: 'home'
1064
+ });
1065
+ return ret;
1066
+ };
1067
+
1068
+ ;// CONCATENATED MODULE: ./src/createSnapshotSerializer.ts
1069
+
1070
+
1071
+
1072
+ function createSnapshotSerializer(options) {
1073
+ const { cwd = process.cwd(), workspace = process.cwd(), replace: customMatchers = [] } = options || {};
1074
+ const pathMatchers = [
1075
+ {
1076
+ mark: 'root',
1077
+ match: cwd
1078
+ },
1079
+ {
1080
+ mark: 'workspace',
1081
+ match: workspace
1082
+ },
1083
+ ...customMatchers,
1084
+ ...createDefaultPathMatchers_createDefaultPathMatchers()
1085
+ ];
1086
+ for (const matcher of pathMatchers){
1087
+ if (typeof matcher.match === 'string') {
1088
+ matcher.match = normalizeToPosixPath(matcher.match);
1089
+ }
1090
+ }
1091
+ return {
1092
+ pathMatchers,
1093
+ // match path-format string
1094
+ test: (val)=>typeof val === 'string' && isPathString(val),
1095
+ print: (val)=>{
1096
+ const normalized = normalizeToPosixPath(val);
1097
+ const replaced = applyMatcherReplacement(pathMatchers, normalized).replace(/"/g, '\\"');
1098
+ return `"${replaced}"`;
1099
+ }
1100
+ };
1101
+ }
1102
+
1103
+ ;// CONCATENATED MODULE: ./src/index.ts
1104
+
1105
+
1106
+ export { createSnapshotSerializer };