@feathersjs/client 5.0.22 → 5.0.24

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/dist/feathers.js CHANGED
@@ -1753,7 +1753,7 @@ exports.wrapService = wrapService;
1753
1753
  Object.defineProperty(exports, "__esModule", ({
1754
1754
  value: true
1755
1755
  }));
1756
- exports["default"] = '5.0.21';
1756
+ exports["default"] = 'development';
1757
1757
 
1758
1758
  /***/ }),
1759
1759
 
@@ -2570,23 +2570,14 @@ var bind = __webpack_require__(/*! function-bind */ "../../node_modules/function
2570
2570
  var GetIntrinsic = __webpack_require__(/*! get-intrinsic */ "../../node_modules/get-intrinsic/index.js");
2571
2571
  var setFunctionLength = __webpack_require__(/*! set-function-length */ "../../node_modules/set-function-length/index.js");
2572
2572
 
2573
- var $TypeError = GetIntrinsic('%TypeError%');
2573
+ var $TypeError = __webpack_require__(/*! es-errors/type */ "../../node_modules/es-errors/type.js");
2574
2574
  var $apply = GetIntrinsic('%Function.prototype.apply%');
2575
2575
  var $call = GetIntrinsic('%Function.prototype.call%');
2576
2576
  var $reflectApply = GetIntrinsic('%Reflect.apply%', true) || bind.call($call, $apply);
2577
2577
 
2578
- var $defineProperty = GetIntrinsic('%Object.defineProperty%', true);
2578
+ var $defineProperty = __webpack_require__(/*! es-define-property */ "../../node_modules/es-define-property/index.js");
2579
2579
  var $max = GetIntrinsic('%Math.max%');
2580
2580
 
2581
- if ($defineProperty) {
2582
- try {
2583
- $defineProperty({}, 'a', { value: 1 });
2584
- } catch (e) {
2585
- // IE 8 has a broken defineProperty
2586
- $defineProperty = null;
2587
- }
2588
- }
2589
-
2590
2581
  module.exports = function callBind(originalFunction) {
2591
2582
  if (typeof originalFunction !== 'function') {
2592
2583
  throw new $TypeError('a function is required');
@@ -2621,26 +2612,14 @@ if ($defineProperty) {
2621
2612
  "use strict";
2622
2613
 
2623
2614
 
2624
- var hasPropertyDescriptors = __webpack_require__(/*! has-property-descriptors */ "../../node_modules/has-property-descriptors/index.js")();
2615
+ var $defineProperty = __webpack_require__(/*! es-define-property */ "../../node_modules/es-define-property/index.js");
2625
2616
 
2626
- var GetIntrinsic = __webpack_require__(/*! get-intrinsic */ "../../node_modules/get-intrinsic/index.js");
2627
-
2628
- var $defineProperty = hasPropertyDescriptors && GetIntrinsic('%Object.defineProperty%', true);
2629
- if ($defineProperty) {
2630
- try {
2631
- $defineProperty({}, 'a', { value: 1 });
2632
- } catch (e) {
2633
- // IE 8 has a broken defineProperty
2634
- $defineProperty = false;
2635
- }
2636
- }
2637
-
2638
- var $SyntaxError = GetIntrinsic('%SyntaxError%');
2639
- var $TypeError = GetIntrinsic('%TypeError%');
2617
+ var $SyntaxError = __webpack_require__(/*! es-errors/syntax */ "../../node_modules/es-errors/syntax.js");
2618
+ var $TypeError = __webpack_require__(/*! es-errors/type */ "../../node_modules/es-errors/type.js");
2640
2619
 
2641
2620
  var gopd = __webpack_require__(/*! gopd */ "../../node_modules/gopd/index.js");
2642
2621
 
2643
- /** @type {(obj: Record<PropertyKey, unknown>, property: PropertyKey, value: unknown, nonEnumerable?: boolean | null, nonWritable?: boolean | null, nonConfigurable?: boolean | null, loose?: boolean) => void} */
2622
+ /** @type {import('.')} */
2644
2623
  module.exports = function defineDataProperty(
2645
2624
  obj,
2646
2625
  property,
@@ -2689,6 +2668,138 @@ module.exports = function defineDataProperty(
2689
2668
  };
2690
2669
 
2691
2670
 
2671
+ /***/ }),
2672
+
2673
+ /***/ "../../node_modules/es-define-property/index.js":
2674
+ /*!******************************************************!*\
2675
+ !*** ../../node_modules/es-define-property/index.js ***!
2676
+ \******************************************************/
2677
+ /***/ (function(module, __unused_webpack_exports, __webpack_require__) {
2678
+
2679
+ "use strict";
2680
+
2681
+
2682
+ var GetIntrinsic = __webpack_require__(/*! get-intrinsic */ "../../node_modules/get-intrinsic/index.js");
2683
+
2684
+ /** @type {import('.')} */
2685
+ var $defineProperty = GetIntrinsic('%Object.defineProperty%', true) || false;
2686
+ if ($defineProperty) {
2687
+ try {
2688
+ $defineProperty({}, 'a', { value: 1 });
2689
+ } catch (e) {
2690
+ // IE 8 has a broken defineProperty
2691
+ $defineProperty = false;
2692
+ }
2693
+ }
2694
+
2695
+ module.exports = $defineProperty;
2696
+
2697
+
2698
+ /***/ }),
2699
+
2700
+ /***/ "../../node_modules/es-errors/eval.js":
2701
+ /*!********************************************!*\
2702
+ !*** ../../node_modules/es-errors/eval.js ***!
2703
+ \********************************************/
2704
+ /***/ (function(module) {
2705
+
2706
+ "use strict";
2707
+
2708
+
2709
+ /** @type {import('./eval')} */
2710
+ module.exports = EvalError;
2711
+
2712
+
2713
+ /***/ }),
2714
+
2715
+ /***/ "../../node_modules/es-errors/index.js":
2716
+ /*!*********************************************!*\
2717
+ !*** ../../node_modules/es-errors/index.js ***!
2718
+ \*********************************************/
2719
+ /***/ (function(module) {
2720
+
2721
+ "use strict";
2722
+
2723
+
2724
+ /** @type {import('.')} */
2725
+ module.exports = Error;
2726
+
2727
+
2728
+ /***/ }),
2729
+
2730
+ /***/ "../../node_modules/es-errors/range.js":
2731
+ /*!*********************************************!*\
2732
+ !*** ../../node_modules/es-errors/range.js ***!
2733
+ \*********************************************/
2734
+ /***/ (function(module) {
2735
+
2736
+ "use strict";
2737
+
2738
+
2739
+ /** @type {import('./range')} */
2740
+ module.exports = RangeError;
2741
+
2742
+
2743
+ /***/ }),
2744
+
2745
+ /***/ "../../node_modules/es-errors/ref.js":
2746
+ /*!*******************************************!*\
2747
+ !*** ../../node_modules/es-errors/ref.js ***!
2748
+ \*******************************************/
2749
+ /***/ (function(module) {
2750
+
2751
+ "use strict";
2752
+
2753
+
2754
+ /** @type {import('./ref')} */
2755
+ module.exports = ReferenceError;
2756
+
2757
+
2758
+ /***/ }),
2759
+
2760
+ /***/ "../../node_modules/es-errors/syntax.js":
2761
+ /*!**********************************************!*\
2762
+ !*** ../../node_modules/es-errors/syntax.js ***!
2763
+ \**********************************************/
2764
+ /***/ (function(module) {
2765
+
2766
+ "use strict";
2767
+
2768
+
2769
+ /** @type {import('./syntax')} */
2770
+ module.exports = SyntaxError;
2771
+
2772
+
2773
+ /***/ }),
2774
+
2775
+ /***/ "../../node_modules/es-errors/type.js":
2776
+ /*!********************************************!*\
2777
+ !*** ../../node_modules/es-errors/type.js ***!
2778
+ \********************************************/
2779
+ /***/ (function(module) {
2780
+
2781
+ "use strict";
2782
+
2783
+
2784
+ /** @type {import('./type')} */
2785
+ module.exports = TypeError;
2786
+
2787
+
2788
+ /***/ }),
2789
+
2790
+ /***/ "../../node_modules/es-errors/uri.js":
2791
+ /*!*******************************************!*\
2792
+ !*** ../../node_modules/es-errors/uri.js ***!
2793
+ \*******************************************/
2794
+ /***/ (function(module) {
2795
+
2796
+ "use strict";
2797
+
2798
+
2799
+ /** @type {import('./uri')} */
2800
+ module.exports = URIError;
2801
+
2802
+
2692
2803
  /***/ }),
2693
2804
 
2694
2805
  /***/ "../../node_modules/events/events.js":
@@ -3321,9 +3432,15 @@ module.exports = Function.prototype.bind || implementation;
3321
3432
 
3322
3433
  var undefined;
3323
3434
 
3324
- var $SyntaxError = SyntaxError;
3435
+ var $Error = __webpack_require__(/*! es-errors */ "../../node_modules/es-errors/index.js");
3436
+ var $EvalError = __webpack_require__(/*! es-errors/eval */ "../../node_modules/es-errors/eval.js");
3437
+ var $RangeError = __webpack_require__(/*! es-errors/range */ "../../node_modules/es-errors/range.js");
3438
+ var $ReferenceError = __webpack_require__(/*! es-errors/ref */ "../../node_modules/es-errors/ref.js");
3439
+ var $SyntaxError = __webpack_require__(/*! es-errors/syntax */ "../../node_modules/es-errors/syntax.js");
3440
+ var $TypeError = __webpack_require__(/*! es-errors/type */ "../../node_modules/es-errors/type.js");
3441
+ var $URIError = __webpack_require__(/*! es-errors/uri */ "../../node_modules/es-errors/uri.js");
3442
+
3325
3443
  var $Function = Function;
3326
- var $TypeError = TypeError;
3327
3444
 
3328
3445
  // eslint-disable-next-line consistent-return
3329
3446
  var getEvalledConstructor = function (expressionSyntax) {
@@ -3375,6 +3492,7 @@ var needsEval = {};
3375
3492
  var TypedArray = typeof Uint8Array === 'undefined' || !getProto ? undefined : getProto(Uint8Array);
3376
3493
 
3377
3494
  var INTRINSICS = {
3495
+ __proto__: null,
3378
3496
  '%AggregateError%': typeof AggregateError === 'undefined' ? undefined : AggregateError,
3379
3497
  '%Array%': Array,
3380
3498
  '%ArrayBuffer%': typeof ArrayBuffer === 'undefined' ? undefined : ArrayBuffer,
@@ -3395,9 +3513,9 @@ var INTRINSICS = {
3395
3513
  '%decodeURIComponent%': decodeURIComponent,
3396
3514
  '%encodeURI%': encodeURI,
3397
3515
  '%encodeURIComponent%': encodeURIComponent,
3398
- '%Error%': Error,
3516
+ '%Error%': $Error,
3399
3517
  '%eval%': eval, // eslint-disable-line no-eval
3400
- '%EvalError%': EvalError,
3518
+ '%EvalError%': $EvalError,
3401
3519
  '%Float32Array%': typeof Float32Array === 'undefined' ? undefined : Float32Array,
3402
3520
  '%Float64Array%': typeof Float64Array === 'undefined' ? undefined : Float64Array,
3403
3521
  '%FinalizationRegistry%': typeof FinalizationRegistry === 'undefined' ? undefined : FinalizationRegistry,
@@ -3419,8 +3537,8 @@ var INTRINSICS = {
3419
3537
  '%parseInt%': parseInt,
3420
3538
  '%Promise%': typeof Promise === 'undefined' ? undefined : Promise,
3421
3539
  '%Proxy%': typeof Proxy === 'undefined' ? undefined : Proxy,
3422
- '%RangeError%': RangeError,
3423
- '%ReferenceError%': ReferenceError,
3540
+ '%RangeError%': $RangeError,
3541
+ '%ReferenceError%': $ReferenceError,
3424
3542
  '%Reflect%': typeof Reflect === 'undefined' ? undefined : Reflect,
3425
3543
  '%RegExp%': RegExp,
3426
3544
  '%Set%': typeof Set === 'undefined' ? undefined : Set,
@@ -3437,7 +3555,7 @@ var INTRINSICS = {
3437
3555
  '%Uint8ClampedArray%': typeof Uint8ClampedArray === 'undefined' ? undefined : Uint8ClampedArray,
3438
3556
  '%Uint16Array%': typeof Uint16Array === 'undefined' ? undefined : Uint16Array,
3439
3557
  '%Uint32Array%': typeof Uint32Array === 'undefined' ? undefined : Uint32Array,
3440
- '%URIError%': URIError,
3558
+ '%URIError%': $URIError,
3441
3559
  '%WeakMap%': typeof WeakMap === 'undefined' ? undefined : WeakMap,
3442
3560
  '%WeakRef%': typeof WeakRef === 'undefined' ? undefined : WeakRef,
3443
3561
  '%WeakSet%': typeof WeakSet === 'undefined' ? undefined : WeakSet
@@ -3479,6 +3597,7 @@ var doEval = function doEval(name) {
3479
3597
  };
3480
3598
 
3481
3599
  var LEGACY_ALIASES = {
3600
+ __proto__: null,
3482
3601
  '%ArrayBufferPrototype%': ['ArrayBuffer', 'prototype'],
3483
3602
  '%ArrayPrototype%': ['Array', 'prototype'],
3484
3603
  '%ArrayProto_entries%': ['Array', 'prototype', 'entries'],
@@ -3708,26 +3827,15 @@ module.exports = $gOPD;
3708
3827
  "use strict";
3709
3828
 
3710
3829
 
3711
- var GetIntrinsic = __webpack_require__(/*! get-intrinsic */ "../../node_modules/get-intrinsic/index.js");
3712
-
3713
- var $defineProperty = GetIntrinsic('%Object.defineProperty%', true);
3830
+ var $defineProperty = __webpack_require__(/*! es-define-property */ "../../node_modules/es-define-property/index.js");
3714
3831
 
3715
3832
  var hasPropertyDescriptors = function hasPropertyDescriptors() {
3716
- if ($defineProperty) {
3717
- try {
3718
- $defineProperty({}, 'a', { value: 1 });
3719
- return true;
3720
- } catch (e) {
3721
- // IE 8 has a broken defineProperty
3722
- return false;
3723
- }
3724
- }
3725
- return false;
3833
+ return !!$defineProperty;
3726
3834
  };
3727
3835
 
3728
3836
  hasPropertyDescriptors.hasArrayLengthDefineBug = function hasArrayLengthDefineBug() {
3729
3837
  // node v0.6 has a bug where array lengths can be Set but not Defined
3730
- if (!hasPropertyDescriptors()) {
3838
+ if (!$defineProperty) {
3731
3839
  return null;
3732
3840
  }
3733
3841
  try {
@@ -3753,13 +3861,17 @@ module.exports = hasPropertyDescriptors;
3753
3861
 
3754
3862
 
3755
3863
  var test = {
3864
+ __proto__: null,
3756
3865
  foo: {}
3757
3866
  };
3758
3867
 
3759
3868
  var $Object = Object;
3760
3869
 
3870
+ /** @type {import('.')} */
3761
3871
  module.exports = function hasProto() {
3762
- return { __proto__: test }.foo === test.foo && !({ __proto__: null } instanceof $Object);
3872
+ // @ts-expect-error: TS errors on an inherited property for some reason
3873
+ return { __proto__: test }.foo === test.foo
3874
+ && !(test instanceof $Object);
3763
3875
  };
3764
3876
 
3765
3877
 
@@ -3855,7 +3967,7 @@ var call = Function.prototype.call;
3855
3967
  var $hasOwn = Object.prototype.hasOwnProperty;
3856
3968
  var bind = __webpack_require__(/*! function-bind */ "../../node_modules/function-bind/index.js");
3857
3969
 
3858
- /** @type {(o: {}, p: PropertyKey) => p is keyof o} */
3970
+ /** @type {import('.')} */
3859
3971
  module.exports = bind.call(call, $hasOwn);
3860
3972
 
3861
3973
 
@@ -4467,15 +4579,18 @@ var isArray = Array.isArray;
4467
4579
 
4468
4580
  var defaults = {
4469
4581
  allowDots: false,
4582
+ allowEmptyArrays: false,
4470
4583
  allowPrototypes: false,
4471
4584
  allowSparse: false,
4472
4585
  arrayLimit: 20,
4473
4586
  charset: 'utf-8',
4474
4587
  charsetSentinel: false,
4475
4588
  comma: false,
4589
+ decodeDotInKeys: true,
4476
4590
  decoder: utils.decode,
4477
4591
  delimiter: '&',
4478
4592
  depth: 5,
4593
+ duplicates: 'combine',
4479
4594
  ignoreQueryPrefix: false,
4480
4595
  interpretNumericEntities: false,
4481
4596
  parameterLimit: 1000,
@@ -4563,9 +4678,10 @@ var parseValues = function parseQueryStringValues(str, options) {
4563
4678
  val = isArray(val) ? [val] : val;
4564
4679
  }
4565
4680
 
4566
- if (has.call(obj, key)) {
4681
+ var existing = has.call(obj, key);
4682
+ if (existing && options.duplicates === 'combine') {
4567
4683
  obj[key] = utils.combine(obj[key], val);
4568
- } else {
4684
+ } else if (!existing || options.duplicates === 'last') {
4569
4685
  obj[key] = val;
4570
4686
  }
4571
4687
  }
@@ -4581,24 +4697,25 @@ var parseObject = function (chain, val, options, valuesParsed) {
4581
4697
  var root = chain[i];
4582
4698
 
4583
4699
  if (root === '[]' && options.parseArrays) {
4584
- obj = [].concat(leaf);
4700
+ obj = options.allowEmptyArrays && leaf === '' ? [] : [].concat(leaf);
4585
4701
  } else {
4586
4702
  obj = options.plainObjects ? Object.create(null) : {};
4587
4703
  var cleanRoot = root.charAt(0) === '[' && root.charAt(root.length - 1) === ']' ? root.slice(1, -1) : root;
4588
- var index = parseInt(cleanRoot, 10);
4589
- if (!options.parseArrays && cleanRoot === '') {
4704
+ var decodedRoot = options.decodeDotInKeys ? cleanRoot.replace(/%2E/g, '.') : cleanRoot;
4705
+ var index = parseInt(decodedRoot, 10);
4706
+ if (!options.parseArrays && decodedRoot === '') {
4590
4707
  obj = { 0: leaf };
4591
4708
  } else if (
4592
4709
  !isNaN(index)
4593
- && root !== cleanRoot
4594
- && String(index) === cleanRoot
4710
+ && root !== decodedRoot
4711
+ && String(index) === decodedRoot
4595
4712
  && index >= 0
4596
4713
  && (options.parseArrays && index <= options.arrayLimit)
4597
4714
  ) {
4598
4715
  obj = [];
4599
4716
  obj[index] = leaf;
4600
- } else if (cleanRoot !== '__proto__') {
4601
- obj[cleanRoot] = leaf;
4717
+ } else if (decodedRoot !== '__proto__') {
4718
+ obj[decodedRoot] = leaf;
4602
4719
  }
4603
4720
  }
4604
4721
 
@@ -4667,7 +4784,15 @@ var normalizeParseOptions = function normalizeParseOptions(opts) {
4667
4784
  return defaults;
4668
4785
  }
4669
4786
 
4670
- if (opts.decoder !== null && opts.decoder !== undefined && typeof opts.decoder !== 'function') {
4787
+ if (typeof opts.allowEmptyArrays !== 'undefined' && typeof opts.allowEmptyArrays !== 'boolean') {
4788
+ throw new TypeError('`allowEmptyArrays` option can only be `true` or `false`, when provided');
4789
+ }
4790
+
4791
+ if (typeof opts.decodeDotInKeys !== 'undefined' && typeof opts.decodeDotInKeys !== 'boolean') {
4792
+ throw new TypeError('`decodeDotInKeys` option can only be `true` or `false`, when provided');
4793
+ }
4794
+
4795
+ if (opts.decoder !== null && typeof opts.decoder !== 'undefined' && typeof opts.decoder !== 'function') {
4671
4796
  throw new TypeError('Decoder has to be a function.');
4672
4797
  }
4673
4798
 
@@ -4676,18 +4801,29 @@ var normalizeParseOptions = function normalizeParseOptions(opts) {
4676
4801
  }
4677
4802
  var charset = typeof opts.charset === 'undefined' ? defaults.charset : opts.charset;
4678
4803
 
4804
+ var duplicates = typeof opts.duplicates === 'undefined' ? defaults.duplicates : opts.duplicates;
4805
+
4806
+ if (duplicates !== 'combine' && duplicates !== 'first' && duplicates !== 'last') {
4807
+ throw new TypeError('The duplicates option must be either combine, first, or last');
4808
+ }
4809
+
4810
+ var allowDots = typeof opts.allowDots === 'undefined' ? opts.decodeDotInKeys === true ? true : defaults.allowDots : !!opts.allowDots;
4811
+
4679
4812
  return {
4680
- allowDots: typeof opts.allowDots === 'undefined' ? defaults.allowDots : !!opts.allowDots,
4813
+ allowDots: allowDots,
4814
+ allowEmptyArrays: typeof opts.allowEmptyArrays === 'boolean' ? !!opts.allowEmptyArrays : defaults.allowEmptyArrays,
4681
4815
  allowPrototypes: typeof opts.allowPrototypes === 'boolean' ? opts.allowPrototypes : defaults.allowPrototypes,
4682
4816
  allowSparse: typeof opts.allowSparse === 'boolean' ? opts.allowSparse : defaults.allowSparse,
4683
4817
  arrayLimit: typeof opts.arrayLimit === 'number' ? opts.arrayLimit : defaults.arrayLimit,
4684
4818
  charset: charset,
4685
4819
  charsetSentinel: typeof opts.charsetSentinel === 'boolean' ? opts.charsetSentinel : defaults.charsetSentinel,
4686
4820
  comma: typeof opts.comma === 'boolean' ? opts.comma : defaults.comma,
4821
+ decodeDotInKeys: typeof opts.decodeDotInKeys === 'boolean' ? opts.decodeDotInKeys : defaults.decodeDotInKeys,
4687
4822
  decoder: typeof opts.decoder === 'function' ? opts.decoder : defaults.decoder,
4688
4823
  delimiter: typeof opts.delimiter === 'string' || utils.isRegExp(opts.delimiter) ? opts.delimiter : defaults.delimiter,
4689
4824
  // eslint-disable-next-line no-implicit-coercion, no-extra-parens
4690
4825
  depth: (typeof opts.depth === 'number' || opts.depth === false) ? +opts.depth : defaults.depth,
4826
+ duplicates: duplicates,
4691
4827
  ignoreQueryPrefix: opts.ignoreQueryPrefix === true,
4692
4828
  interpretNumericEntities: typeof opts.interpretNumericEntities === 'boolean' ? opts.interpretNumericEntities : defaults.interpretNumericEntities,
4693
4829
  parameterLimit: typeof opts.parameterLimit === 'number' ? opts.parameterLimit : defaults.parameterLimit,
@@ -4765,10 +4901,13 @@ var defaultFormat = formats['default'];
4765
4901
  var defaults = {
4766
4902
  addQueryPrefix: false,
4767
4903
  allowDots: false,
4904
+ allowEmptyArrays: false,
4905
+ arrayFormat: 'indices',
4768
4906
  charset: 'utf-8',
4769
4907
  charsetSentinel: false,
4770
4908
  delimiter: '&',
4771
4909
  encode: true,
4910
+ encodeDotInKeys: false,
4772
4911
  encoder: utils.encode,
4773
4912
  encodeValuesOnly: false,
4774
4913
  format: defaultFormat,
@@ -4797,8 +4936,10 @@ var stringify = function stringify(
4797
4936
  prefix,
4798
4937
  generateArrayPrefix,
4799
4938
  commaRoundTrip,
4939
+ allowEmptyArrays,
4800
4940
  strictNullHandling,
4801
4941
  skipNulls,
4942
+ encodeDotInKeys,
4802
4943
  encoder,
4803
4944
  filter,
4804
4945
  sort,
@@ -4880,7 +5021,13 @@ var stringify = function stringify(
4880
5021
  objKeys = sort ? keys.sort(sort) : keys;
4881
5022
  }
4882
5023
 
4883
- var adjustedPrefix = commaRoundTrip && isArray(obj) && obj.length === 1 ? prefix + '[]' : prefix;
5024
+ var encodedPrefix = encodeDotInKeys ? prefix.replace(/\./g, '%2E') : prefix;
5025
+
5026
+ var adjustedPrefix = commaRoundTrip && isArray(obj) && obj.length === 1 ? encodedPrefix + '[]' : encodedPrefix;
5027
+
5028
+ if (allowEmptyArrays && isArray(obj) && obj.length === 0) {
5029
+ return adjustedPrefix + '[]';
5030
+ }
4884
5031
 
4885
5032
  for (var j = 0; j < objKeys.length; ++j) {
4886
5033
  var key = objKeys[j];
@@ -4890,9 +5037,10 @@ var stringify = function stringify(
4890
5037
  continue;
4891
5038
  }
4892
5039
 
5040
+ var encodedKey = allowDots && encodeDotInKeys ? key.replace(/\./g, '%2E') : key;
4893
5041
  var keyPrefix = isArray(obj)
4894
- ? typeof generateArrayPrefix === 'function' ? generateArrayPrefix(adjustedPrefix, key) : adjustedPrefix
4895
- : adjustedPrefix + (allowDots ? '.' + key : '[' + key + ']');
5042
+ ? typeof generateArrayPrefix === 'function' ? generateArrayPrefix(adjustedPrefix, encodedKey) : adjustedPrefix
5043
+ : adjustedPrefix + (allowDots ? '.' + encodedKey : '[' + encodedKey + ']');
4896
5044
 
4897
5045
  sideChannel.set(object, step);
4898
5046
  var valueSideChannel = getSideChannel();
@@ -4902,8 +5050,10 @@ var stringify = function stringify(
4902
5050
  keyPrefix,
4903
5051
  generateArrayPrefix,
4904
5052
  commaRoundTrip,
5053
+ allowEmptyArrays,
4905
5054
  strictNullHandling,
4906
5055
  skipNulls,
5056
+ encodeDotInKeys,
4907
5057
  generateArrayPrefix === 'comma' && encodeValuesOnly && isArray(obj) ? null : encoder,
4908
5058
  filter,
4909
5059
  sort,
@@ -4925,6 +5075,14 @@ var normalizeStringifyOptions = function normalizeStringifyOptions(opts) {
4925
5075
  return defaults;
4926
5076
  }
4927
5077
 
5078
+ if (typeof opts.allowEmptyArrays !== 'undefined' && typeof opts.allowEmptyArrays !== 'boolean') {
5079
+ throw new TypeError('`allowEmptyArrays` option can only be `true` or `false`, when provided');
5080
+ }
5081
+
5082
+ if (typeof opts.encodeDotInKeys !== 'undefined' && typeof opts.encodeDotInKeys !== 'boolean') {
5083
+ throw new TypeError('`encodeDotInKeys` option can only be `true` or `false`, when provided');
5084
+ }
5085
+
4928
5086
  if (opts.encoder !== null && typeof opts.encoder !== 'undefined' && typeof opts.encoder !== 'function') {
4929
5087
  throw new TypeError('Encoder has to be a function.');
4930
5088
  }
@@ -4948,13 +5106,32 @@ var normalizeStringifyOptions = function normalizeStringifyOptions(opts) {
4948
5106
  filter = opts.filter;
4949
5107
  }
4950
5108
 
5109
+ var arrayFormat;
5110
+ if (opts.arrayFormat in arrayPrefixGenerators) {
5111
+ arrayFormat = opts.arrayFormat;
5112
+ } else if ('indices' in opts) {
5113
+ arrayFormat = opts.indices ? 'indices' : 'repeat';
5114
+ } else {
5115
+ arrayFormat = defaults.arrayFormat;
5116
+ }
5117
+
5118
+ if ('commaRoundTrip' in opts && typeof opts.commaRoundTrip !== 'boolean') {
5119
+ throw new TypeError('`commaRoundTrip` must be a boolean, or absent');
5120
+ }
5121
+
5122
+ var allowDots = typeof opts.allowDots === 'undefined' ? opts.encodeDotInKeys === true ? true : defaults.allowDots : !!opts.allowDots;
5123
+
4951
5124
  return {
4952
5125
  addQueryPrefix: typeof opts.addQueryPrefix === 'boolean' ? opts.addQueryPrefix : defaults.addQueryPrefix,
4953
- allowDots: typeof opts.allowDots === 'undefined' ? defaults.allowDots : !!opts.allowDots,
5126
+ allowDots: allowDots,
5127
+ allowEmptyArrays: typeof opts.allowEmptyArrays === 'boolean' ? !!opts.allowEmptyArrays : defaults.allowEmptyArrays,
5128
+ arrayFormat: arrayFormat,
4954
5129
  charset: charset,
4955
5130
  charsetSentinel: typeof opts.charsetSentinel === 'boolean' ? opts.charsetSentinel : defaults.charsetSentinel,
5131
+ commaRoundTrip: opts.commaRoundTrip,
4956
5132
  delimiter: typeof opts.delimiter === 'undefined' ? defaults.delimiter : opts.delimiter,
4957
5133
  encode: typeof opts.encode === 'boolean' ? opts.encode : defaults.encode,
5134
+ encodeDotInKeys: typeof opts.encodeDotInKeys === 'boolean' ? opts.encodeDotInKeys : defaults.encodeDotInKeys,
4958
5135
  encoder: typeof opts.encoder === 'function' ? opts.encoder : defaults.encoder,
4959
5136
  encodeValuesOnly: typeof opts.encodeValuesOnly === 'boolean' ? opts.encodeValuesOnly : defaults.encodeValuesOnly,
4960
5137
  filter: filter,
@@ -4988,20 +5165,8 @@ module.exports = function (object, opts) {
4988
5165
  return '';
4989
5166
  }
4990
5167
 
4991
- var arrayFormat;
4992
- if (opts && opts.arrayFormat in arrayPrefixGenerators) {
4993
- arrayFormat = opts.arrayFormat;
4994
- } else if (opts && 'indices' in opts) {
4995
- arrayFormat = opts.indices ? 'indices' : 'repeat';
4996
- } else {
4997
- arrayFormat = 'indices';
4998
- }
4999
-
5000
- var generateArrayPrefix = arrayPrefixGenerators[arrayFormat];
5001
- if (opts && 'commaRoundTrip' in opts && typeof opts.commaRoundTrip !== 'boolean') {
5002
- throw new TypeError('`commaRoundTrip` must be a boolean, or absent');
5003
- }
5004
- var commaRoundTrip = generateArrayPrefix === 'comma' && opts && opts.commaRoundTrip;
5168
+ var generateArrayPrefix = arrayPrefixGenerators[options.arrayFormat];
5169
+ var commaRoundTrip = generateArrayPrefix === 'comma' && options.commaRoundTrip;
5005
5170
 
5006
5171
  if (!objKeys) {
5007
5172
  objKeys = Object.keys(obj);
@@ -5023,8 +5188,10 @@ module.exports = function (object, opts) {
5023
5188
  key,
5024
5189
  generateArrayPrefix,
5025
5190
  commaRoundTrip,
5191
+ options.allowEmptyArrays,
5026
5192
  options.strictNullHandling,
5027
5193
  options.skipNulls,
5194
+ options.encodeDotInKeys,
5028
5195
  options.encode ? options.encoder : null,
5029
5196
  options.filter,
5030
5197
  options.sort,
@@ -5334,12 +5501,10 @@ var define = __webpack_require__(/*! define-data-property */ "../../node_modules
5334
5501
  var hasDescriptors = __webpack_require__(/*! has-property-descriptors */ "../../node_modules/has-property-descriptors/index.js")();
5335
5502
  var gOPD = __webpack_require__(/*! gopd */ "../../node_modules/gopd/index.js");
5336
5503
 
5337
- var $TypeError = GetIntrinsic('%TypeError%');
5504
+ var $TypeError = __webpack_require__(/*! es-errors/type */ "../../node_modules/es-errors/type.js");
5338
5505
  var $floor = GetIntrinsic('%Math.floor%');
5339
5506
 
5340
- /** @typedef {(...args: unknown[]) => unknown} Func */
5341
-
5342
- /** @type {<T extends Func = Func>(fn: T, length: number, loose?: boolean) => T} */
5507
+ /** @type {import('.')} */
5343
5508
  module.exports = function setFunctionLength(fn, length) {
5344
5509
  if (typeof fn !== 'function') {
5345
5510
  throw new $TypeError('`fn` is not a function');
@@ -5388,7 +5553,7 @@ var GetIntrinsic = __webpack_require__(/*! get-intrinsic */ "../../node_modules/
5388
5553
  var callBound = __webpack_require__(/*! call-bind/callBound */ "../../node_modules/call-bind/callBound.js");
5389
5554
  var inspect = __webpack_require__(/*! object-inspect */ "../../node_modules/object-inspect/index.js");
5390
5555
 
5391
- var $TypeError = GetIntrinsic('%TypeError%');
5556
+ var $TypeError = __webpack_require__(/*! es-errors/type */ "../../node_modules/es-errors/type.js");
5392
5557
  var $WeakMap = GetIntrinsic('%WeakMap%', true);
5393
5558
  var $Map = GetIntrinsic('%Map%', true);
5394
5559
 
@@ -5400,49 +5565,58 @@ var $mapSet = callBound('Map.prototype.set', true);
5400
5565
  var $mapHas = callBound('Map.prototype.has', true);
5401
5566
 
5402
5567
  /*
5403
- * This function traverses the list returning the node corresponding to the
5404
- * given key.
5405
- *
5406
- * That node is also moved to the head of the list, so that if it's accessed
5407
- * again we don't need to traverse the whole list. By doing so, all the recently
5408
- * used nodes can be accessed relatively quickly.
5409
- */
5568
+ * This function traverses the list returning the node corresponding to the given key.
5569
+ *
5570
+ * That node is also moved to the head of the list, so that if it's accessed again we don't need to traverse the whole list. By doing so, all the recently used nodes can be accessed relatively quickly.
5571
+ */
5572
+ /** @type {import('.').listGetNode} */
5410
5573
  var listGetNode = function (list, key) { // eslint-disable-line consistent-return
5411
- for (var prev = list, curr; (curr = prev.next) !== null; prev = curr) {
5574
+ /** @type {typeof list | NonNullable<(typeof list)['next']>} */
5575
+ var prev = list;
5576
+ /** @type {(typeof list)['next']} */
5577
+ var curr;
5578
+ for (; (curr = prev.next) !== null; prev = curr) {
5412
5579
  if (curr.key === key) {
5413
5580
  prev.next = curr.next;
5414
- curr.next = list.next;
5581
+ // eslint-disable-next-line no-extra-parens
5582
+ curr.next = /** @type {NonNullable<typeof list.next>} */ (list.next);
5415
5583
  list.next = curr; // eslint-disable-line no-param-reassign
5416
5584
  return curr;
5417
5585
  }
5418
5586
  }
5419
5587
  };
5420
5588
 
5589
+ /** @type {import('.').listGet} */
5421
5590
  var listGet = function (objects, key) {
5422
5591
  var node = listGetNode(objects, key);
5423
5592
  return node && node.value;
5424
5593
  };
5594
+ /** @type {import('.').listSet} */
5425
5595
  var listSet = function (objects, key, value) {
5426
5596
  var node = listGetNode(objects, key);
5427
5597
  if (node) {
5428
5598
  node.value = value;
5429
5599
  } else {
5430
5600
  // Prepend the new node to the beginning of the list
5431
- objects.next = { // eslint-disable-line no-param-reassign
5601
+ objects.next = /** @type {import('.').ListNode<typeof value>} */ ({ // eslint-disable-line no-param-reassign, no-extra-parens
5432
5602
  key: key,
5433
5603
  next: objects.next,
5434
5604
  value: value
5435
- };
5605
+ });
5436
5606
  }
5437
5607
  };
5608
+ /** @type {import('.').listHas} */
5438
5609
  var listHas = function (objects, key) {
5439
5610
  return !!listGetNode(objects, key);
5440
5611
  };
5441
5612
 
5613
+ /** @type {import('.')} */
5442
5614
  module.exports = function getSideChannel() {
5443
- var $wm;
5444
- var $m;
5445
- var $o;
5615
+ /** @type {WeakMap<object, unknown>} */ var $wm;
5616
+ /** @type {Map<object, unknown>} */ var $m;
5617
+ /** @type {import('.').RootNode<unknown>} */ var $o;
5618
+
5619
+ /** @type {import('.').Channel} */
5446
5620
  var channel = {
5447
5621
  assert: function (key) {
5448
5622
  if (!channel.has(key)) {
@@ -5493,11 +5667,7 @@ module.exports = function getSideChannel() {
5493
5667
  $mapSet($m, key, value);
5494
5668
  } else {
5495
5669
  if (!$o) {
5496
- /*
5497
- * Initialize the linked list as an empty node, so that we don't have
5498
- * to special-case handling of the first node: we can always refer to
5499
- * it as (previous node).next, instead of something like (list).head
5500
- */
5670
+ // Initialize the linked list as an empty node, so that we don't have to special-case handling of the first node: we can always refer to it as (previous node).next, instead of something like (list).head
5501
5671
  $o = { key: {}, next: null };
5502
5672
  }
5503
5673
  listSet($o, key, value);
@@ -5609,7 +5779,7 @@ Object.defineProperty(exports, "__esModule", ({
5609
5779
  }));
5610
5780
  exports.setMiddleware = exports.getMiddleware = exports.setManager = exports.getManager = exports.convertOptions = exports.HookManager = exports.BaseHookContext = exports.HOOKS = void 0;
5611
5781
  var utils_js_1 = __webpack_require__(/*! ./utils.js */ "../../node_modules/@feathersjs/hooks/script/utils.js");
5612
- exports.HOOKS = Symbol('@feathersjs/hooks');
5782
+ exports.HOOKS = Symbol.for('@feathersjs/hooks');
5613
5783
  /**
5614
5784
  * The base hook context.
5615
5785
  */
@@ -5928,7 +6098,7 @@ exports.compose = compose;
5928
6098
  Object.defineProperty(exports, "__esModule", ({
5929
6099
  value: true
5930
6100
  }));
5931
- exports.hookDecorator = exports.objectHooks = exports.functionHooks = exports.getOriginal = void 0;
6101
+ exports.legacyDecorator = exports.hookDecorator = exports.objectHooks = exports.functionHooks = exports.getOriginal = void 0;
5932
6102
  var compose_js_1 = __webpack_require__(/*! ./compose.js */ "../../node_modules/@feathersjs/hooks/script/compose.js");
5933
6103
  var base_js_1 = __webpack_require__(/*! ./base.js */ "../../node_modules/@feathersjs/hooks/script/base.js");
5934
6104
  var utils_js_1 = __webpack_require__(/*! ./utils.js */ "../../node_modules/@feathersjs/hooks/script/utils.js");
@@ -6012,6 +6182,22 @@ function objectHooks(obj, hooks) {
6012
6182
  }
6013
6183
  exports.objectHooks = objectHooks;
6014
6184
  var hookDecorator = function hookDecorator(managerOrMiddleware) {
6185
+ return function (target, context) {
6186
+ var manager = (0, base_js_1.convertOptions)(managerOrMiddleware);
6187
+ if (context.kind === 'class') {
6188
+ (0, base_js_1.setManager)(target.prototype, manager);
6189
+ return target;
6190
+ } else if (context.kind === 'method') {
6191
+ var method = String(context.name);
6192
+ return functionHooks(target, manager.props({
6193
+ method: method
6194
+ }));
6195
+ }
6196
+ throw new Error('Can not apply hooks.');
6197
+ };
6198
+ };
6199
+ exports.hookDecorator = hookDecorator;
6200
+ var legacyDecorator = function legacyDecorator(managerOrMiddleware) {
6015
6201
  var wrapper = function wrapper(_target, method, descriptor) {
6016
6202
  var manager = (0, base_js_1.convertOptions)(managerOrMiddleware);
6017
6203
  if (!descriptor) {
@@ -6029,7 +6215,7 @@ var hookDecorator = function hookDecorator(managerOrMiddleware) {
6029
6215
  };
6030
6216
  return wrapper;
6031
6217
  };
6032
- exports.hookDecorator = hookDecorator;
6218
+ exports.legacyDecorator = legacyDecorator;
6033
6219
 
6034
6220
  /***/ }),
6035
6221
 
@@ -6050,12 +6236,16 @@ function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToAr
6050
6236
  function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
6051
6237
  var __createBinding = this && this.__createBinding || (Object.create ? function (o, m, k, k2) {
6052
6238
  if (k2 === undefined) k2 = k;
6053
- Object.defineProperty(o, k2, {
6054
- enumerable: true,
6055
- get: function get() {
6056
- return m[k];
6057
- }
6058
- });
6239
+ var desc = Object.getOwnPropertyDescriptor(m, k);
6240
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6241
+ desc = {
6242
+ enumerable: true,
6243
+ get: function get() {
6244
+ return m[k];
6245
+ }
6246
+ };
6247
+ }
6248
+ Object.defineProperty(o, k2, desc);
6059
6249
  } : function (o, m, k, k2) {
6060
6250
  if (k2 === undefined) k2 = k;
6061
6251
  o[k2] = m[k];