path-serializer 0.0.0 → 0.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -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:path"
253
+
254
+ var external_node_path_default = /*#__PURE__*/__webpack_require__.n(external_node_path_namespaceObject);
255
+ ;// CONCATENATED MODULE: external "node:os"
256
+
257
+ var external_node_os_default = /*#__PURE__*/__webpack_require__.n(external_node_os_namespaceObject);
258
+ ;// CONCATENATED MODULE: external "node:fs"
259
+
260
+ var external_node_fs_default = /*#__PURE__*/__webpack_require__.n(external_node_fs_namespaceObject);
261
+ // EXTERNAL MODULE: ./node_modules/.pnpm/upath@2.0.1/node_modules/upath/build/code/upath.js
262
+ var upath = __webpack_require__("./node_modules/.pnpm/upath@2.0.1/node_modules/upath/build/code/upath.js");
263
+ var upath_default = /*#__PURE__*/__webpack_require__.n(upath);
264
+ ;// CONCATENATED MODULE: ./node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_freeGlobal.js
265
+ /** Detect free variable `global` from Node.js. */
266
+ var freeGlobal = typeof global == 'object' && global && global.Object === Object && global;
267
+
268
+ /* harmony default export */ const _freeGlobal = (freeGlobal);
269
+
270
+ ;// CONCATENATED MODULE: ./node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_root.js
271
+
272
+
273
+ /** Detect free variable `self`. */
274
+ var freeSelf = typeof self == 'object' && self && self.Object === Object && self;
275
+
276
+ /** Used as a reference to the global object. */
277
+ var root = _freeGlobal || freeSelf || Function('return this')();
278
+
279
+ /* harmony default export */ const _root = (root);
280
+
281
+ ;// CONCATENATED MODULE: ./node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_Symbol.js
282
+
283
+
284
+ /** Built-in value references. */
285
+ var Symbol = _root.Symbol;
286
+
287
+ /* harmony default export */ const _Symbol = (Symbol);
288
+
289
+ ;// CONCATENATED MODULE: ./node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_arrayMap.js
290
+ /**
291
+ * A specialized version of `_.map` for arrays without support for iteratee
292
+ * shorthands.
293
+ *
294
+ * @private
295
+ * @param {Array} [array] The array to iterate over.
296
+ * @param {Function} iteratee The function invoked per iteration.
297
+ * @returns {Array} Returns the new mapped array.
298
+ */
299
+ function arrayMap(array, iteratee) {
300
+ var index = -1,
301
+ length = array == null ? 0 : array.length,
302
+ result = Array(length);
303
+
304
+ while (++index < length) {
305
+ result[index] = iteratee(array[index], index, array);
306
+ }
307
+ return result;
308
+ }
309
+
310
+ /* harmony default export */ const _arrayMap = (arrayMap);
311
+
312
+ ;// CONCATENATED MODULE: ./node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/isArray.js
313
+ /**
314
+ * Checks if `value` is classified as an `Array` object.
315
+ *
316
+ * @static
317
+ * @memberOf _
318
+ * @since 0.1.0
319
+ * @category Lang
320
+ * @param {*} value The value to check.
321
+ * @returns {boolean} Returns `true` if `value` is an array, else `false`.
322
+ * @example
323
+ *
324
+ * _.isArray([1, 2, 3]);
325
+ * // => true
326
+ *
327
+ * _.isArray(document.body.children);
328
+ * // => false
329
+ *
330
+ * _.isArray('abc');
331
+ * // => false
332
+ *
333
+ * _.isArray(_.noop);
334
+ * // => false
335
+ */
336
+ var isArray_isArray = Array.isArray;
337
+
338
+ /* harmony default export */ const isArray = (isArray_isArray);
339
+
340
+ ;// CONCATENATED MODULE: ./node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_getRawTag.js
341
+
342
+
343
+ /** Used for built-in method references. */
344
+ var objectProto = Object.prototype;
345
+
346
+ /** Used to check objects for own properties. */
347
+ var _getRawTag_hasOwnProperty = objectProto.hasOwnProperty;
348
+
349
+ /**
350
+ * Used to resolve the
351
+ * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring)
352
+ * of values.
353
+ */
354
+ var nativeObjectToString = objectProto.toString;
355
+
356
+ /** Built-in value references. */
357
+ var symToStringTag = _Symbol ? _Symbol.toStringTag : undefined;
358
+
359
+ /**
360
+ * A specialized version of `baseGetTag` which ignores `Symbol.toStringTag` values.
361
+ *
362
+ * @private
363
+ * @param {*} value The value to query.
364
+ * @returns {string} Returns the raw `toStringTag`.
365
+ */
366
+ function getRawTag(value) {
367
+ var isOwn = _getRawTag_hasOwnProperty.call(value, symToStringTag),
368
+ tag = value[symToStringTag];
369
+
370
+ try {
371
+ value[symToStringTag] = undefined;
372
+ var unmasked = true;
373
+ } catch (e) {}
374
+
375
+ var result = nativeObjectToString.call(value);
376
+ if (unmasked) {
377
+ if (isOwn) {
378
+ value[symToStringTag] = tag;
379
+ } else {
380
+ delete value[symToStringTag];
381
+ }
382
+ }
383
+ return result;
384
+ }
385
+
386
+ /* harmony default export */ const _getRawTag = (getRawTag);
387
+
388
+ ;// CONCATENATED MODULE: ./node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_objectToString.js
389
+ /** Used for built-in method references. */
390
+ var _objectToString_objectProto = Object.prototype;
391
+
392
+ /**
393
+ * Used to resolve the
394
+ * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring)
395
+ * of values.
396
+ */
397
+ var _objectToString_nativeObjectToString = _objectToString_objectProto.toString;
398
+
399
+ /**
400
+ * Converts `value` to a string using `Object.prototype.toString`.
401
+ *
402
+ * @private
403
+ * @param {*} value The value to convert.
404
+ * @returns {string} Returns the converted string.
405
+ */
406
+ function objectToString(value) {
407
+ return _objectToString_nativeObjectToString.call(value);
408
+ }
409
+
410
+ /* harmony default export */ const _objectToString = (objectToString);
411
+
412
+ ;// CONCATENATED MODULE: ./node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_baseGetTag.js
413
+
414
+
415
+
416
+
417
+ /** `Object#toString` result references. */
418
+ var nullTag = '[object Null]',
419
+ undefinedTag = '[object Undefined]';
420
+
421
+ /** Built-in value references. */
422
+ var _baseGetTag_symToStringTag = _Symbol ? _Symbol.toStringTag : undefined;
423
+
424
+ /**
425
+ * The base implementation of `getTag` without fallbacks for buggy environments.
426
+ *
427
+ * @private
428
+ * @param {*} value The value to query.
429
+ * @returns {string} Returns the `toStringTag`.
430
+ */
431
+ function baseGetTag(value) {
432
+ if (value == null) {
433
+ return value === undefined ? undefinedTag : nullTag;
434
+ }
435
+ return (_baseGetTag_symToStringTag && _baseGetTag_symToStringTag in Object(value))
436
+ ? _getRawTag(value)
437
+ : _objectToString(value);
438
+ }
439
+
440
+ /* harmony default export */ const _baseGetTag = (baseGetTag);
441
+
442
+ ;// CONCATENATED MODULE: ./node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/isObjectLike.js
443
+ /**
444
+ * Checks if `value` is object-like. A value is object-like if it's not `null`
445
+ * and has a `typeof` result of "object".
446
+ *
447
+ * @static
448
+ * @memberOf _
449
+ * @since 4.0.0
450
+ * @category Lang
451
+ * @param {*} value The value to check.
452
+ * @returns {boolean} Returns `true` if `value` is object-like, else `false`.
453
+ * @example
454
+ *
455
+ * _.isObjectLike({});
456
+ * // => true
457
+ *
458
+ * _.isObjectLike([1, 2, 3]);
459
+ * // => true
460
+ *
461
+ * _.isObjectLike(_.noop);
462
+ * // => false
463
+ *
464
+ * _.isObjectLike(null);
465
+ * // => false
466
+ */
467
+ function isObjectLike(value) {
468
+ return value != null && typeof value == 'object';
469
+ }
470
+
471
+ /* harmony default export */ const lodash_es_isObjectLike = (isObjectLike);
472
+
473
+ ;// CONCATENATED MODULE: ./node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/isSymbol.js
474
+
475
+
476
+
477
+ /** `Object#toString` result references. */
478
+ var symbolTag = '[object Symbol]';
479
+
480
+ /**
481
+ * Checks if `value` is classified as a `Symbol` primitive or object.
482
+ *
483
+ * @static
484
+ * @memberOf _
485
+ * @since 4.0.0
486
+ * @category Lang
487
+ * @param {*} value The value to check.
488
+ * @returns {boolean} Returns `true` if `value` is a symbol, else `false`.
489
+ * @example
490
+ *
491
+ * _.isSymbol(Symbol.iterator);
492
+ * // => true
493
+ *
494
+ * _.isSymbol('abc');
495
+ * // => false
496
+ */
497
+ function isSymbol_isSymbol(value) {
498
+ return typeof value == 'symbol' ||
499
+ (lodash_es_isObjectLike(value) && _baseGetTag(value) == symbolTag);
500
+ }
501
+
502
+ /* harmony default export */ const isSymbol = (isSymbol_isSymbol);
503
+
504
+ ;// CONCATENATED MODULE: ./node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_baseToString.js
505
+
506
+
507
+
508
+
509
+
510
+ /** Used as references for various `Number` constants. */
511
+ var INFINITY = 1 / 0;
512
+
513
+ /** Used to convert symbols to primitives and strings. */
514
+ var symbolProto = _Symbol ? _Symbol.prototype : undefined,
515
+ symbolToString = symbolProto ? symbolProto.toString : undefined;
516
+
517
+ /**
518
+ * The base implementation of `_.toString` which doesn't convert nullish
519
+ * values to empty strings.
520
+ *
521
+ * @private
522
+ * @param {*} value The value to process.
523
+ * @returns {string} Returns the string.
524
+ */
525
+ function baseToString(value) {
526
+ // Exit early for strings to avoid a performance hit in some environments.
527
+ if (typeof value == 'string') {
528
+ return value;
529
+ }
530
+ if (isArray(value)) {
531
+ // Recursively convert values (susceptible to call stack limits).
532
+ return _arrayMap(value, baseToString) + '';
533
+ }
534
+ if (isSymbol(value)) {
535
+ return symbolToString ? symbolToString.call(value) : '';
536
+ }
537
+ var result = (value + '');
538
+ return (result == '0' && (1 / value) == -INFINITY) ? '-0' : result;
539
+ }
540
+
541
+ /* harmony default export */ const _baseToString = (baseToString);
542
+
543
+ ;// CONCATENATED MODULE: ./node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/toString.js
544
+
545
+
546
+ /**
547
+ * Converts `value` to a string. An empty string is returned for `null`
548
+ * and `undefined` values. The sign of `-0` is preserved.
549
+ *
550
+ * @static
551
+ * @memberOf _
552
+ * @since 4.0.0
553
+ * @category Lang
554
+ * @param {*} value The value to convert.
555
+ * @returns {string} Returns the converted string.
556
+ * @example
557
+ *
558
+ * _.toString(null);
559
+ * // => ''
560
+ *
561
+ * _.toString(-0);
562
+ * // => '-0'
563
+ *
564
+ * _.toString([1, 2, 3]);
565
+ * // => '1,2,3'
566
+ */
567
+ function toString_toString(value) {
568
+ return value == null ? '' : _baseToString(value);
569
+ }
570
+
571
+ /* harmony default export */ const lodash_es_toString = (toString_toString);
572
+
573
+ ;// CONCATENATED MODULE: ./node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/escapeRegExp.js
574
+
575
+
576
+ /**
577
+ * Used to match `RegExp`
578
+ * [syntax characters](http://ecma-international.org/ecma-262/7.0/#sec-patterns).
579
+ */
580
+ var reRegExpChar = /[\\^$.*+?()[\]{}|]/g,
581
+ reHasRegExpChar = RegExp(reRegExpChar.source);
582
+
583
+ /**
584
+ * Escapes the `RegExp` special characters "^", "$", "\", ".", "*", "+",
585
+ * "?", "(", ")", "[", "]", "{", "}", and "|" in `string`.
586
+ *
587
+ * @static
588
+ * @memberOf _
589
+ * @since 3.0.0
590
+ * @category String
591
+ * @param {string} [string=''] The string to escape.
592
+ * @returns {string} Returns the escaped string.
593
+ * @example
594
+ *
595
+ * _.escapeRegExp('[lodash](https://lodash.com/)');
596
+ * // => '\[lodash\]\(https://lodash\.com/\)'
597
+ */
598
+ function escapeRegExp(string) {
599
+ string = lodash_es_toString(string);
600
+ return (string && reHasRegExpChar.test(string))
601
+ ? string.replace(reRegExpChar, '\\$&')
602
+ : string;
603
+ }
604
+
605
+ /* harmony default export */ const lodash_es_escapeRegExp = (escapeRegExp);
606
+
607
+ ;// CONCATENATED MODULE: ./src/utils.ts
608
+
609
+
610
+
611
+
612
+
613
+ const isPathString = (test)=>external_node_path_default().posix.basename(test) !== test || external_node_path_default().win32.basename(test) !== test;
614
+ function utils_getRealTemporaryDirectory() {
615
+ let ret = null;
616
+ try {
617
+ ret = external_node_os_default().tmpdir();
618
+ ret = external_node_fs_default().realpathSync(ret);
619
+ } catch {}
620
+ return ret;
621
+ }
622
+ const normalizeToPosixPath = (p)=>upath_default().normalizeSafe(external_node_path_default().normalize(p || '')).replace(/^([a-zA-Z]+):/, (_, m)=>`/${m.toLowerCase()}`);
623
+ /**
624
+ * Compile path string to RegExp.
625
+ * @note Only support posix path.
626
+ */ function compilePathMatcherRegExp(match) {
627
+ if (typeof match !== 'string') {
628
+ return match;
629
+ }
630
+ const escaped = lodash_es_escapeRegExp(match);
631
+ return new RegExp(`(?<=\\W|^)${escaped}(?=\\W|$)`);
632
+ }
633
+ function splitPathString(str) {
634
+ return str.split(/[\\/]/);
635
+ }
636
+
637
+ ;// CONCATENATED MODULE: ./node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_arrayReduce.js
638
+ /**
639
+ * A specialized version of `_.reduce` for arrays without support for
640
+ * iteratee shorthands.
641
+ *
642
+ * @private
643
+ * @param {Array} [array] The array to iterate over.
644
+ * @param {Function} iteratee The function invoked per iteration.
645
+ * @param {*} [accumulator] The initial value.
646
+ * @param {boolean} [initAccum] Specify using the first element of `array` as
647
+ * the initial value.
648
+ * @returns {*} Returns the accumulated value.
649
+ */
650
+ function arrayReduce(array, iteratee, accumulator, initAccum) {
651
+ var index = -1,
652
+ length = array == null ? 0 : array.length;
653
+
654
+ if (initAccum && length) {
655
+ accumulator = array[++index];
656
+ }
657
+ while (++index < length) {
658
+ accumulator = iteratee(accumulator, array[index], index, array);
659
+ }
660
+ return accumulator;
661
+ }
662
+
663
+ /* harmony default export */ const _arrayReduce = (arrayReduce);
664
+
665
+ ;// CONCATENATED MODULE: ./node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_basePropertyOf.js
666
+ /**
667
+ * The base implementation of `_.propertyOf` without support for deep paths.
668
+ *
669
+ * @private
670
+ * @param {Object} object The object to query.
671
+ * @returns {Function} Returns the new accessor function.
672
+ */
673
+ function basePropertyOf(object) {
674
+ return function(key) {
675
+ return object == null ? undefined : object[key];
676
+ };
677
+ }
678
+
679
+ /* harmony default export */ const _basePropertyOf = (basePropertyOf);
680
+
681
+ ;// CONCATENATED MODULE: ./node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_deburrLetter.js
682
+
683
+
684
+ /** Used to map Latin Unicode letters to basic Latin letters. */
685
+ var deburredLetters = {
686
+ // Latin-1 Supplement block.
687
+ '\xc0': 'A', '\xc1': 'A', '\xc2': 'A', '\xc3': 'A', '\xc4': 'A', '\xc5': 'A',
688
+ '\xe0': 'a', '\xe1': 'a', '\xe2': 'a', '\xe3': 'a', '\xe4': 'a', '\xe5': 'a',
689
+ '\xc7': 'C', '\xe7': 'c',
690
+ '\xd0': 'D', '\xf0': 'd',
691
+ '\xc8': 'E', '\xc9': 'E', '\xca': 'E', '\xcb': 'E',
692
+ '\xe8': 'e', '\xe9': 'e', '\xea': 'e', '\xeb': 'e',
693
+ '\xcc': 'I', '\xcd': 'I', '\xce': 'I', '\xcf': 'I',
694
+ '\xec': 'i', '\xed': 'i', '\xee': 'i', '\xef': 'i',
695
+ '\xd1': 'N', '\xf1': 'n',
696
+ '\xd2': 'O', '\xd3': 'O', '\xd4': 'O', '\xd5': 'O', '\xd6': 'O', '\xd8': 'O',
697
+ '\xf2': 'o', '\xf3': 'o', '\xf4': 'o', '\xf5': 'o', '\xf6': 'o', '\xf8': 'o',
698
+ '\xd9': 'U', '\xda': 'U', '\xdb': 'U', '\xdc': 'U',
699
+ '\xf9': 'u', '\xfa': 'u', '\xfb': 'u', '\xfc': 'u',
700
+ '\xdd': 'Y', '\xfd': 'y', '\xff': 'y',
701
+ '\xc6': 'Ae', '\xe6': 'ae',
702
+ '\xde': 'Th', '\xfe': 'th',
703
+ '\xdf': 'ss',
704
+ // Latin Extended-A block.
705
+ '\u0100': 'A', '\u0102': 'A', '\u0104': 'A',
706
+ '\u0101': 'a', '\u0103': 'a', '\u0105': 'a',
707
+ '\u0106': 'C', '\u0108': 'C', '\u010a': 'C', '\u010c': 'C',
708
+ '\u0107': 'c', '\u0109': 'c', '\u010b': 'c', '\u010d': 'c',
709
+ '\u010e': 'D', '\u0110': 'D', '\u010f': 'd', '\u0111': 'd',
710
+ '\u0112': 'E', '\u0114': 'E', '\u0116': 'E', '\u0118': 'E', '\u011a': 'E',
711
+ '\u0113': 'e', '\u0115': 'e', '\u0117': 'e', '\u0119': 'e', '\u011b': 'e',
712
+ '\u011c': 'G', '\u011e': 'G', '\u0120': 'G', '\u0122': 'G',
713
+ '\u011d': 'g', '\u011f': 'g', '\u0121': 'g', '\u0123': 'g',
714
+ '\u0124': 'H', '\u0126': 'H', '\u0125': 'h', '\u0127': 'h',
715
+ '\u0128': 'I', '\u012a': 'I', '\u012c': 'I', '\u012e': 'I', '\u0130': 'I',
716
+ '\u0129': 'i', '\u012b': 'i', '\u012d': 'i', '\u012f': 'i', '\u0131': 'i',
717
+ '\u0134': 'J', '\u0135': 'j',
718
+ '\u0136': 'K', '\u0137': 'k', '\u0138': 'k',
719
+ '\u0139': 'L', '\u013b': 'L', '\u013d': 'L', '\u013f': 'L', '\u0141': 'L',
720
+ '\u013a': 'l', '\u013c': 'l', '\u013e': 'l', '\u0140': 'l', '\u0142': 'l',
721
+ '\u0143': 'N', '\u0145': 'N', '\u0147': 'N', '\u014a': 'N',
722
+ '\u0144': 'n', '\u0146': 'n', '\u0148': 'n', '\u014b': 'n',
723
+ '\u014c': 'O', '\u014e': 'O', '\u0150': 'O',
724
+ '\u014d': 'o', '\u014f': 'o', '\u0151': 'o',
725
+ '\u0154': 'R', '\u0156': 'R', '\u0158': 'R',
726
+ '\u0155': 'r', '\u0157': 'r', '\u0159': 'r',
727
+ '\u015a': 'S', '\u015c': 'S', '\u015e': 'S', '\u0160': 'S',
728
+ '\u015b': 's', '\u015d': 's', '\u015f': 's', '\u0161': 's',
729
+ '\u0162': 'T', '\u0164': 'T', '\u0166': 'T',
730
+ '\u0163': 't', '\u0165': 't', '\u0167': 't',
731
+ '\u0168': 'U', '\u016a': 'U', '\u016c': 'U', '\u016e': 'U', '\u0170': 'U', '\u0172': 'U',
732
+ '\u0169': 'u', '\u016b': 'u', '\u016d': 'u', '\u016f': 'u', '\u0171': 'u', '\u0173': 'u',
733
+ '\u0174': 'W', '\u0175': 'w',
734
+ '\u0176': 'Y', '\u0177': 'y', '\u0178': 'Y',
735
+ '\u0179': 'Z', '\u017b': 'Z', '\u017d': 'Z',
736
+ '\u017a': 'z', '\u017c': 'z', '\u017e': 'z',
737
+ '\u0132': 'IJ', '\u0133': 'ij',
738
+ '\u0152': 'Oe', '\u0153': 'oe',
739
+ '\u0149': "'n", '\u017f': 's'
740
+ };
741
+
742
+ /**
743
+ * Used by `_.deburr` to convert Latin-1 Supplement and Latin Extended-A
744
+ * letters to basic Latin letters.
745
+ *
746
+ * @private
747
+ * @param {string} letter The matched letter to deburr.
748
+ * @returns {string} Returns the deburred letter.
749
+ */
750
+ var deburrLetter = _basePropertyOf(deburredLetters);
751
+
752
+ /* harmony default export */ const _deburrLetter = (deburrLetter);
753
+
754
+ ;// CONCATENATED MODULE: ./node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/deburr.js
755
+
756
+
757
+
758
+ /** Used to match Latin Unicode letters (excluding mathematical operators). */
759
+ var reLatin = /[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g;
760
+
761
+ /** Used to compose unicode character classes. */
762
+ var rsComboMarksRange = '\\u0300-\\u036f',
763
+ reComboHalfMarksRange = '\\ufe20-\\ufe2f',
764
+ rsComboSymbolsRange = '\\u20d0-\\u20ff',
765
+ rsComboRange = rsComboMarksRange + reComboHalfMarksRange + rsComboSymbolsRange;
766
+
767
+ /** Used to compose unicode capture groups. */
768
+ var rsCombo = '[' + rsComboRange + ']';
769
+
770
+ /**
771
+ * Used to match [combining diacritical marks](https://en.wikipedia.org/wiki/Combining_Diacritical_Marks) and
772
+ * [combining diacritical marks for symbols](https://en.wikipedia.org/wiki/Combining_Diacritical_Marks_for_Symbols).
773
+ */
774
+ var reComboMark = RegExp(rsCombo, 'g');
775
+
776
+ /**
777
+ * Deburrs `string` by converting
778
+ * [Latin-1 Supplement](https://en.wikipedia.org/wiki/Latin-1_Supplement_(Unicode_block)#Character_table)
779
+ * and [Latin Extended-A](https://en.wikipedia.org/wiki/Latin_Extended-A)
780
+ * letters to basic Latin letters and removing
781
+ * [combining diacritical marks](https://en.wikipedia.org/wiki/Combining_Diacritical_Marks).
782
+ *
783
+ * @static
784
+ * @memberOf _
785
+ * @since 3.0.0
786
+ * @category String
787
+ * @param {string} [string=''] The string to deburr.
788
+ * @returns {string} Returns the deburred string.
789
+ * @example
790
+ *
791
+ * _.deburr('déjà vu');
792
+ * // => 'deja vu'
793
+ */
794
+ function deburr_deburr(string) {
795
+ string = lodash_es_toString(string);
796
+ return string && string.replace(reLatin, _deburrLetter).replace(reComboMark, '');
797
+ }
798
+
799
+ /* harmony default export */ const deburr = (deburr_deburr);
800
+
801
+ ;// CONCATENATED MODULE: ./node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_asciiWords.js
802
+ /** Used to match words composed of alphanumeric characters. */
803
+ var reAsciiWord = /[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g;
804
+
805
+ /**
806
+ * Splits an ASCII `string` into an array of its words.
807
+ *
808
+ * @private
809
+ * @param {string} The string to inspect.
810
+ * @returns {Array} Returns the words of `string`.
811
+ */
812
+ function asciiWords(string) {
813
+ return string.match(reAsciiWord) || [];
814
+ }
815
+
816
+ /* harmony default export */ const _asciiWords = (asciiWords);
817
+
818
+ ;// CONCATENATED MODULE: ./node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_hasUnicodeWord.js
819
+ /** Used to detect strings that need a more robust regexp to match words. */
820
+ 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 ]/;
821
+
822
+ /**
823
+ * Checks if `string` contains a word composed of Unicode symbols.
824
+ *
825
+ * @private
826
+ * @param {string} string The string to inspect.
827
+ * @returns {boolean} Returns `true` if a word is found, else `false`.
828
+ */
829
+ function hasUnicodeWord(string) {
830
+ return reHasUnicodeWord.test(string);
831
+ }
832
+
833
+ /* harmony default export */ const _hasUnicodeWord = (hasUnicodeWord);
834
+
835
+ ;// CONCATENATED MODULE: ./node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_unicodeWords.js
836
+ /** Used to compose unicode character classes. */
837
+ var rsAstralRange = '\\ud800-\\udfff',
838
+ _unicodeWords_rsComboMarksRange = '\\u0300-\\u036f',
839
+ _unicodeWords_reComboHalfMarksRange = '\\ufe20-\\ufe2f',
840
+ _unicodeWords_rsComboSymbolsRange = '\\u20d0-\\u20ff',
841
+ _unicodeWords_rsComboRange = _unicodeWords_rsComboMarksRange + _unicodeWords_reComboHalfMarksRange + _unicodeWords_rsComboSymbolsRange,
842
+ rsDingbatRange = '\\u2700-\\u27bf',
843
+ rsLowerRange = 'a-z\\xdf-\\xf6\\xf8-\\xff',
844
+ rsMathOpRange = '\\xac\\xb1\\xd7\\xf7',
845
+ rsNonCharRange = '\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf',
846
+ rsPunctuationRange = '\\u2000-\\u206f',
847
+ 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',
848
+ rsUpperRange = 'A-Z\\xc0-\\xd6\\xd8-\\xde',
849
+ rsVarRange = '\\ufe0e\\ufe0f',
850
+ rsBreakRange = rsMathOpRange + rsNonCharRange + rsPunctuationRange + rsSpaceRange;
851
+
852
+ /** Used to compose unicode capture groups. */
853
+ var rsApos = "['\u2019]",
854
+ rsBreak = '[' + rsBreakRange + ']',
855
+ _unicodeWords_rsCombo = '[' + _unicodeWords_rsComboRange + ']',
856
+ rsDigits = '\\d+',
857
+ rsDingbat = '[' + rsDingbatRange + ']',
858
+ rsLower = '[' + rsLowerRange + ']',
859
+ rsMisc = '[^' + rsAstralRange + rsBreakRange + rsDigits + rsDingbatRange + rsLowerRange + rsUpperRange + ']',
860
+ rsFitz = '\\ud83c[\\udffb-\\udfff]',
861
+ rsModifier = '(?:' + _unicodeWords_rsCombo + '|' + rsFitz + ')',
862
+ rsNonAstral = '[^' + rsAstralRange + ']',
863
+ rsRegional = '(?:\\ud83c[\\udde6-\\uddff]){2}',
864
+ rsSurrPair = '[\\ud800-\\udbff][\\udc00-\\udfff]',
865
+ rsUpper = '[' + rsUpperRange + ']',
866
+ rsZWJ = '\\u200d';
867
+
868
+ /** Used to compose unicode regexes. */
869
+ var rsMiscLower = '(?:' + rsLower + '|' + rsMisc + ')',
870
+ rsMiscUpper = '(?:' + rsUpper + '|' + rsMisc + ')',
871
+ rsOptContrLower = '(?:' + rsApos + '(?:d|ll|m|re|s|t|ve))?',
872
+ rsOptContrUpper = '(?:' + rsApos + '(?:D|LL|M|RE|S|T|VE))?',
873
+ reOptMod = rsModifier + '?',
874
+ rsOptVar = '[' + rsVarRange + ']?',
875
+ rsOptJoin = '(?:' + rsZWJ + '(?:' + [rsNonAstral, rsRegional, rsSurrPair].join('|') + ')' + rsOptVar + reOptMod + ')*',
876
+ rsOrdLower = '\\d*(?:1st|2nd|3rd|(?![123])\\dth)(?=\\b|[A-Z_])',
877
+ rsOrdUpper = '\\d*(?:1ST|2ND|3RD|(?![123])\\dTH)(?=\\b|[a-z_])',
878
+ rsSeq = rsOptVar + reOptMod + rsOptJoin,
879
+ rsEmoji = '(?:' + [rsDingbat, rsRegional, rsSurrPair].join('|') + ')' + rsSeq;
880
+
881
+ /** Used to match complex or compound words. */
882
+ var reUnicodeWord = RegExp([
883
+ rsUpper + '?' + rsLower + '+' + rsOptContrLower + '(?=' + [rsBreak, rsUpper, '$'].join('|') + ')',
884
+ rsMiscUpper + '+' + rsOptContrUpper + '(?=' + [rsBreak, rsUpper + rsMiscLower, '$'].join('|') + ')',
885
+ rsUpper + '?' + rsMiscLower + '+' + rsOptContrLower,
886
+ rsUpper + '+' + rsOptContrUpper,
887
+ rsOrdUpper,
888
+ rsOrdLower,
889
+ rsDigits,
890
+ rsEmoji
891
+ ].join('|'), 'g');
892
+
893
+ /**
894
+ * Splits a Unicode `string` into an array of its words.
895
+ *
896
+ * @private
897
+ * @param {string} The string to inspect.
898
+ * @returns {Array} Returns the words of `string`.
899
+ */
900
+ function unicodeWords(string) {
901
+ return string.match(reUnicodeWord) || [];
902
+ }
903
+
904
+ /* harmony default export */ const _unicodeWords = (unicodeWords);
905
+
906
+ ;// CONCATENATED MODULE: ./node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/words.js
907
+
908
+
909
+
910
+
911
+
912
+ /**
913
+ * Splits `string` into an array of its words.
914
+ *
915
+ * @static
916
+ * @memberOf _
917
+ * @since 3.0.0
918
+ * @category String
919
+ * @param {string} [string=''] The string to inspect.
920
+ * @param {RegExp|string} [pattern] The pattern to match words.
921
+ * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`.
922
+ * @returns {Array} Returns the words of `string`.
923
+ * @example
924
+ *
925
+ * _.words('fred, barney, & pebbles');
926
+ * // => ['fred', 'barney', 'pebbles']
927
+ *
928
+ * _.words('fred, barney, & pebbles', /[^, ]+/g);
929
+ * // => ['fred', 'barney', '&', 'pebbles']
930
+ */
931
+ function words_words(string, pattern, guard) {
932
+ string = lodash_es_toString(string);
933
+ pattern = guard ? undefined : pattern;
934
+
935
+ if (pattern === undefined) {
936
+ return _hasUnicodeWord(string) ? _unicodeWords(string) : _asciiWords(string);
937
+ }
938
+ return string.match(pattern) || [];
939
+ }
940
+
941
+ /* harmony default export */ const words = (words_words);
942
+
943
+ ;// CONCATENATED MODULE: ./node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_createCompounder.js
944
+
945
+
946
+
947
+
948
+ /** Used to compose unicode capture groups. */
949
+ var _createCompounder_rsApos = "['\u2019]";
950
+
951
+ /** Used to match apostrophes. */
952
+ var reApos = RegExp(_createCompounder_rsApos, 'g');
953
+
954
+ /**
955
+ * Creates a function like `_.camelCase`.
956
+ *
957
+ * @private
958
+ * @param {Function} callback The function to combine each word.
959
+ * @returns {Function} Returns the new compounder function.
960
+ */
961
+ function createCompounder(callback) {
962
+ return function(string) {
963
+ return _arrayReduce(words(deburr(string).replace(reApos, '')), callback, '');
964
+ };
965
+ }
966
+
967
+ /* harmony default export */ const _createCompounder = (createCompounder);
968
+
969
+ ;// CONCATENATED MODULE: ./node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/snakeCase.js
970
+
971
+
972
+ /**
973
+ * Converts `string` to
974
+ * [snake case](https://en.wikipedia.org/wiki/Snake_case).
975
+ *
976
+ * @static
977
+ * @memberOf _
978
+ * @since 3.0.0
979
+ * @category String
980
+ * @param {string} [string=''] The string to convert.
981
+ * @returns {string} Returns the snake cased string.
982
+ * @example
983
+ *
984
+ * _.snakeCase('Foo Bar');
985
+ * // => 'foo_bar'
986
+ *
987
+ * _.snakeCase('fooBar');
988
+ * // => 'foo_bar'
989
+ *
990
+ * _.snakeCase('--FOO-BAR--');
991
+ * // => 'foo_bar'
992
+ */
993
+ var snakeCase_snakeCase = _createCompounder(function(result, word, index) {
994
+ return result + (index ? '_' : '') + word.toLowerCase();
995
+ });
996
+
997
+ /* harmony default export */ const snakeCase = (snakeCase_snakeCase);
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 };