map-transform 1.0.4 → 1.0.6

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.
@@ -1,3 +1,4 @@
1
- import type { Path, Operation } from '../types.js';
1
+ import type { Path, Operation, State } from '../types.js';
2
+ export declare function pathGetter(path?: string): (value: unknown, state: State) => unknown;
2
3
  export declare const get: (path: Path) => Operation[];
3
4
  export declare const set: (path: Path) => Operation[];
@@ -193,6 +193,40 @@ function pathToNextOperations(path, isSet = false) {
193
193
  }
194
194
  return operations;
195
195
  }
196
+ const getByPart = (part, isArr) => (value) => {
197
+ if (typeof part === 'string') {
198
+ if (isObject(value)) {
199
+ const nextvalue = value[part];
200
+ return isArr ? ensureArray(nextvalue) : nextvalue;
201
+ }
202
+ }
203
+ else if (typeof part === 'number' && Array.isArray(value)) {
204
+ return value[calculateIndex(part, value)];
205
+ }
206
+ return isArr ? [] : undefined;
207
+ };
208
+ export function pathGetter(path) {
209
+ if (!path || path === '.') {
210
+ return (value) => value;
211
+ }
212
+ const parts = path.split('.').flatMap(splitUpArrayAndParentNotation);
213
+ return function getFromPath(value, startState) {
214
+ let data = value;
215
+ let state = startState;
216
+ for (const rawPart of parts) {
217
+ const [part, isArr] = preparePath(rawPart);
218
+ if (typeof part === 'string' && part[0] === '^') {
219
+ state = part[1] === '^' ? getRoot(state) : getParent(state);
220
+ data = state.value;
221
+ }
222
+ else {
223
+ const getFn = getByPart(part, isArr);
224
+ data = typeof part === 'number' ? getFn(data) : flatMapAny(getFn)(data);
225
+ }
226
+ }
227
+ return data;
228
+ };
229
+ }
196
230
  export const get = (path) => pathToNextOperations(path, false);
197
231
  export const set = (path) => pathToNextOperations(path, true);
198
232
  //# sourceMappingURL=getSet.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"getSet.js","sourceRoot":"","sources":["../../src/operations/getSet.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"getSet.js","sourceRoot":"","sources":["../../src/operations/getSet.ts"],"names":[],"mappings":"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"}
@@ -1,33 +1,24 @@
1
1
  import mapAny from 'map-any/async.js';
2
+ import { pathGetter } from '../operations/getSet.js';
2
3
  import { getStateValue, setStateValue, goForward, revFromState, } from '../utils/stateHelpers.js';
3
- import { defToDataMapper, defToOperation } from '../utils/definitionHelpers.js';
4
+ import { defToOperation } from '../utils/definitionHelpers.js';
4
5
  import { noopNext } from '../utils/stateHelpers.js';
5
6
  const FLATTEN_DEPTH = 1;
6
7
  const flattenIfArray = (data) => Array.isArray(data) ? data.flat(FLATTEN_DEPTH) : data;
7
- const findAllMatches = (getProp) => async function findAllMatches(value, arr, state) {
8
- const results = await Promise.all(arr.map(async (val) => await getProp(val, state)));
9
- return arr.filter((_v, index) => results[index] === value);
10
- };
11
- const findOneMatch = (getProp) => async function findOneMatch(value, arr, state) {
12
- for (const val of arr) {
13
- if ((await getProp(val, state)) === value) {
14
- return val;
15
- }
16
- }
17
- return undefined;
18
- };
19
- const matchInArray = (getArray, match) => (state) => {
8
+ const findAllMatches = (value, state, arr, getProp) => arr.filter((val) => getProp(val, state) === value);
9
+ const findOneMatch = (value, state, arr, getProp) => arr.find((val) => getProp(val, state) === value);
10
+ const matchInArray = (getArray, match, getProp) => (state) => {
11
+ const getFn = getArray({})(noopNext);
20
12
  return async (value) => {
21
- const fwdState = goForward(state);
22
- const { value: arr } = await getArray({})(noopNext)(goForward(fwdState));
23
- return Array.isArray(arr) ? match(value, arr, fwdState) : undefined;
13
+ const { value: arr } = await getFn(goForward(state));
14
+ return Array.isArray(arr) ? match(value, state, arr, getProp) : undefined;
24
15
  };
25
16
  };
26
17
  export function lookup({ arrayPath, propPath, matchSeveral = false, flip = false, }) {
27
18
  return (options) => {
28
- const getter = defToDataMapper(propPath, options);
29
- const matchFn = matchInArray(defToOperation(arrayPath, options), matchSeveral ? findAllMatches(getter) : findOneMatch(getter));
30
- const extractProp = (state) => async (value) => await getter(value, goForward(state));
19
+ const getter = pathGetter(propPath);
20
+ const matchFn = matchInArray(defToOperation(arrayPath, options), matchSeveral ? findAllMatches : findOneMatch, getter);
21
+ const extractProp = (state) => async (value) => getter(value, state);
31
22
  return (next) => async function doLookup(state) {
32
23
  const nextState = await next(state);
33
24
  const value = getStateValue(nextState);
@@ -1 +1 @@
1
- {"version":3,"file":"lookup.js","sourceRoot":"","sources":["../../src/operations/lookup.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"lookup.js","sourceRoot":"","sources":["../../src/operations/lookup.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import type { TransformerProps, Path, AsyncTransformer } from '../types.js';
1
+ import type { TransformerProps, Transformer, Path } from '../types.js';
2
2
  export interface Props extends TransformerProps {
3
3
  path?: Path;
4
4
  operator?: string;
@@ -8,5 +8,5 @@ export interface Props extends TransformerProps {
8
8
  valuePath?: Path;
9
9
  not?: boolean;
10
10
  }
11
- declare const transformer: AsyncTransformer<Props>;
11
+ declare const transformer: Transformer<Props>;
12
12
  export default transformer;
@@ -1,7 +1,6 @@
1
1
  import mapAny from 'map-any';
2
+ import { pathGetter } from '../operations/getSet.js';
2
3
  import { unescapeValue } from '../utils/escape.js';
3
- import { defToDataMapper } from '../utils/definitionHelpers.js';
4
- import { goForward } from '../utils/stateHelpers.js';
5
4
  const not = (comparer) => (value, match) => !comparer(value, match);
6
5
  const compareArrayOrValue = (comparer) => (value, match) => Array.isArray(value)
7
6
  ? value.some((value) => comparer(value, match))
@@ -47,17 +46,14 @@ function createComparer(operator) {
47
46
  const transformer = function compare({ path = '.', operator = '=', match, value, matchPath, valuePath, not = false, }) {
48
47
  match = match === undefined ? value : match;
49
48
  matchPath = matchPath ?? valuePath;
50
- return (options) => {
51
- const getValue = defToDataMapper(path, options);
49
+ return () => {
50
+ const getValue = pathGetter(path);
52
51
  const realMatchValue = mapAny(unescapeValue, match);
53
- const getMatch = typeof matchPath === 'string'
54
- ? defToDataMapper(matchPath, options)
55
- : async () => realMatchValue;
56
52
  const comparer = createComparer(operator);
57
- return async (data, state) => {
58
- const fwdState = goForward(state);
59
- const value = await getValue(data, fwdState);
60
- const match = await getMatch(data, fwdState);
53
+ const getMatch = typeof matchPath === 'string' ? pathGetter(matchPath) : undefined;
54
+ return (data, state) => {
55
+ const value = getValue(data, state);
56
+ const match = getMatch ? getMatch(data, state) : realMatchValue;
61
57
  const result = comparer(value, match);
62
58
  return not ? !result : result;
63
59
  };
@@ -1 +1 @@
1
- {"version":3,"file":"compare.js","sourceRoot":"","sources":["../../src/transformers/compare.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"compare.js","sourceRoot":"","sources":["../../src/transformers/compare.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
- import type { TransformerProps, AsyncTransformer } from '../types.js';
1
+ import type { TransformerProps, Transformer } from '../types.js';
2
2
  export interface Props extends TransformerProps {
3
3
  path?: string;
4
4
  }
5
- declare const transformer: AsyncTransformer<Props | string>;
5
+ declare const transformer: Transformer<Props | string>;
6
6
  export default transformer;
@@ -1,10 +1,10 @@
1
- import { defToDataMapper } from '../utils/definitionHelpers.js';
1
+ import { pathGetter } from '../operations/getSet.js';
2
2
  const extractPath = (path) => typeof path === 'string' ? path : path.path;
3
3
  const transformer = function get(props) {
4
- return (options) => {
4
+ return () => {
5
5
  const path = extractPath(props) || '.';
6
- const mapper = defToDataMapper(path, options);
7
- return async (data, state) => await mapper(data, state);
6
+ const mapper = pathGetter(path);
7
+ return (data, state) => mapper(data, state);
8
8
  };
9
9
  };
10
10
  export default transformer;
@@ -1 +1 @@
1
- {"version":3,"file":"get.js","sourceRoot":"","sources":["../../src/transformers/get.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAA;AAM/D,MAAM,WAAW,GAAG,CAAC,IAAoB,EAAE,EAAE,CAC3C,OAAO,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAA;AAE7C,MAAM,WAAW,GAAqC,SAAS,GAAG,CAAC,KAAK;IACtE,OAAO,CAAC,OAAO,EAAE,EAAE;QACjB,MAAM,IAAI,GAAG,WAAW,CAAC,KAAK,CAAC,IAAI,GAAG,CAAA;QACtC,MAAM,MAAM,GAAG,eAAe,CAAC,IAAI,EAAE,OAAO,CAAC,CAAA;QAC7C,OAAO,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,MAAM,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,CAAA;IACzD,CAAC,CAAA;AACH,CAAC,CAAA;AAED,eAAe,WAAW,CAAA"}
1
+ {"version":3,"file":"get.js","sourceRoot":"","sources":["../../src/transformers/get.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAA;AAOpD,MAAM,WAAW,GAAG,CAAC,IAAoB,EAAE,EAAE,CAC3C,OAAO,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAA;AAE7C,MAAM,WAAW,GAAgC,SAAS,GAAG,CAAC,KAAK;IACjE,OAAO,GAAG,EAAE;QACV,MAAM,IAAI,GAAG,WAAW,CAAC,KAAK,CAAC,IAAI,GAAG,CAAA;QACtC,MAAM,MAAM,GAAG,UAAU,CAAC,IAAI,CAAC,CAAA;QAC/B,OAAO,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,CAAA;IAC7C,CAAC,CAAA;AACH,CAAC,CAAA;AAED,eAAe,WAAW,CAAA"}
@@ -1,9 +1,9 @@
1
1
  declare const _default: {
2
- compare: import("../types.js").AsyncTransformer<import("./compare.js").Props>;
2
+ compare: import("../types.js").Transformer<import("./compare.js").Props>;
3
3
  explode: import("../types.js").Transformer<import("../types.js").TransformerProps>;
4
4
  fixed: import("../types.js").Transformer<unknown>;
5
5
  flatten: import("../types.js").Transformer<import("./flatten.js").Props>;
6
- get: import("../types.js").AsyncTransformer<string | import("./get.js").Props>;
6
+ get: import("../types.js").Transformer<string | import("./get.js").Props>;
7
7
  implode: import("../types.js").Transformer<import("../types.js").TransformerProps>;
8
8
  index: import("../types.js").Transformer<import("../types.js").TransformerProps>;
9
9
  logical: import("../types.js").AsyncTransformer<import("./logical.js").Props>;
@@ -11,7 +11,7 @@ declare const _default: {
11
11
  merge: import("../types.js").AsyncTransformer<import("./merge.js").Props>;
12
12
  mergeRev: import("../types.js").AsyncTransformer<import("./merge.js").Props>;
13
13
  not: import("../types.js").AsyncTransformer<import("../types.js").AsyncDataMapperWithOptions | import("../types.js").DataMapperWithOptions | import("./not.js").Props>;
14
- sort: import("../types.js").AsyncTransformer<import("./sort.js").Props>;
14
+ sort: import("../types.js").Transformer<import("./sort.js").Props>;
15
15
  value: import("../types.js").Transformer<unknown>;
16
16
  };
17
17
  export default _default;
@@ -1,7 +1,7 @@
1
- import type { Path, TransformerProps, AsyncTransformer } from '../types.js';
1
+ import type { Path, TransformerProps, Transformer } from '../types.js';
2
2
  export interface Props extends TransformerProps {
3
3
  asc?: boolean;
4
4
  path?: Path;
5
5
  }
6
- declare const transformer: AsyncTransformer<Props>;
6
+ declare const transformer: Transformer<Props>;
7
7
  export default transformer;
@@ -1,5 +1,4 @@
1
- import { defToDataMapper } from '../utils/definitionHelpers.js';
2
- import { goForward } from '../utils/stateHelpers.js';
1
+ import { pathGetter } from '../operations/getSet.js';
3
2
  const compareNumbers = (a, b, direction) => (a - b) * direction;
4
3
  const compareStrings = (a, b, direction) => a === b ? 0 : a > b ? direction : -1 * direction;
5
4
  const compare = (direction) => function compare([a], [b]) {
@@ -17,23 +16,21 @@ const compare = (direction) => function compare([a], [b]) {
17
16
  }
18
17
  };
19
18
  function fetchSortValue(getFn, state) {
20
- return async function fetchSortValue(item) {
21
- const sortBy = await getFn(item, state);
19
+ return function fetchSortValue(item) {
20
+ const sortBy = getFn(item, state);
22
21
  return [sortBy, item];
23
22
  };
24
23
  }
25
24
  const transformer = function sort(props) {
26
- return (options) => {
27
- const direction = props?.asc === false ? -1 : 1;
28
- const getFn = props?.path
29
- ? defToDataMapper(props.path, options)
30
- : async (value) => value;
31
- return async (data, state) => {
25
+ return () => {
26
+ const { path, asc } = props || {};
27
+ const direction = asc === false ? -1 : 1;
28
+ const getFn = path ? pathGetter(path) : (value) => value;
29
+ return (data, state) => {
32
30
  if (!Array.isArray(data) || data.length < 2) {
33
31
  return data;
34
32
  }
35
- const fwdState = goForward(state);
36
- const sortArray = await Promise.all(data.map(fetchSortValue(getFn, fwdState)));
33
+ const sortArray = data.map(fetchSortValue(getFn, state));
37
34
  return sortArray.sort(compare(direction)).map(([_, item]) => item);
38
35
  };
39
36
  };
@@ -1 +1 @@
1
- {"version":3,"file":"sort.js","sourceRoot":"","sources":["../../src/transformers/sort.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sort.js","sourceRoot":"","sources":["../../src/transformers/sort.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAA;AAgBpD,MAAM,cAAc,GAAG,CAAC,CAAS,EAAE,CAAS,EAAE,SAAiB,EAAE,EAAE,CACjE,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,SAAS,CAAA;AAErB,MAAM,cAAc,GAAG,CAAC,CAAS,EAAE,CAAS,EAAE,SAAiB,EAAE,EAAE,CACjE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,SAAS,CAAA;AAElD,MAAM,OAAO,GAAG,CAAC,SAAiB,EAAE,EAAE,CACpC,SAAS,OAAO,CAAC,CAAC,CAAC,CAAY,EAAE,CAAC,CAAC,CAAY;IAC7C,IAAI,OAAO,CAAC,KAAK,QAAQ,IAAI,OAAO,CAAC,KAAK,QAAQ,EAAE;QAClD,OAAO,cAAc,CAAC,CAAC,EAAE,CAAC,EAAE,SAAS,CAAC,CAAA;KACvC;SAAM,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,YAAY,IAAI,EAAE;QACjD,OAAO,cAAc,CAAC,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,OAAO,EAAE,EAAE,SAAS,CAAC,CAAA;KAC3D;SAAM,IAAI,CAAC,KAAK,SAAS,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,SAAS,IAAI,CAAC,KAAK,IAAI,EAAE;QACzE,OAAO,CAAC,KAAK,SAAS,IAAI,CAAC,KAAK,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;KAC9C;SAAM;QACL,OAAO,cAAc,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,SAAS,CAAC,CAAA;KACvD;AACH,CAAC,CAAA;AAEH,SAAS,cAAc,CAAC,KAA0B,EAAE,KAAY;IAC9D,OAAO,SAAS,cAAc,CAAC,IAAa;QAC1C,MAAM,MAAM,GAAG,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,CAAA;QACjC,OAAO,CAAC,MAAM,EAAE,IAAI,CAAC,CAAA;IACvB,CAAC,CAAA;AACH,CAAC;AAED,MAAM,WAAW,GAAuB,SAAS,IAAI,CAAC,KAAK;IACzD,OAAO,GAAG,EAAE;QACV,MAAM,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,KAAK,IAAI,EAAE,CAAA;QACjC,MAAM,SAAS,GAAG,GAAG,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;QACxC,MAAM,KAAK,GAAG,IAAI,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,KAAc,EAAE,EAAE,CAAC,KAAK,CAAA;QAEjE,OAAO,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE;YACrB,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE;gBAE3C,OAAO,IAAI,CAAA;aACZ;YAGD,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC,CAAA;YAExD,OAAO,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,CAAA;QACpE,CAAC,CAAA;IACH,CAAC,CAAA;AACH,CAAC,CAAA;AAED,eAAe,WAAW,CAAA"}
@@ -69,18 +69,7 @@ export declare const clearUntouched: ({ untouched, ...state }: State) => {
69
69
  };
70
70
  export declare const isUntouched: ({ untouched }: State) => boolean;
71
71
  export declare const populateState: (data: unknown, { rev, noDefaults, target }: InitialState) => State;
72
- export declare const goForward: (state: State) => {
73
- rev: boolean;
74
- flip: boolean;
75
- context: unknown[];
76
- value: unknown;
77
- arr?: boolean | undefined;
78
- iterate?: boolean | undefined;
79
- index?: number | undefined;
80
- untouched?: boolean | undefined;
81
- target?: unknown;
82
- noDefaults?: boolean | undefined;
83
- };
72
+ export declare const goForward: (state: State) => State;
84
73
  export declare const flipState: (state: State, flip?: boolean) => {
85
74
  flip: boolean;
86
75
  context: unknown[];
@@ -41,11 +41,13 @@ export const populateState = (data, { rev = false, noDefaults = false, target =
41
41
  rev,
42
42
  noDefaults,
43
43
  });
44
- export const goForward = (state) => ({
45
- ...state,
46
- rev: false,
47
- flip: false,
48
- });
44
+ export const goForward = (state) => state.rev || state.flip
45
+ ? {
46
+ ...state,
47
+ rev: false,
48
+ flip: false,
49
+ }
50
+ : state;
49
51
  export const flipState = (state, flip = true) => ({
50
52
  ...state,
51
53
  flip: xor(state.flip, flip),
@@ -1 +1 @@
1
- {"version":3,"file":"stateHelpers.js","sourceRoot":"","sources":["../../src/utils/stateHelpers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"stateHelpers.js","sourceRoot":"","sources":["../../src/utils/stateHelpers.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "map-transform",
3
- "version": "1.0.4",
3
+ "version": "1.0.6",
4
4
  "description": "Map and transform objects with mapping definitions",
5
5
  "author": "Kjell-Morten Bratsberg Thorsen <kjellmorten@integreat.io>",
6
6
  "license": "ISC",
@@ -29,6 +29,7 @@
29
29
  "test": "npm run build && c8 --reporter=text-summary ava --config ./ava-dist.config.cjs",
30
30
  "test:watch": "npm run dev",
31
31
  "dev": "ava --watch",
32
+ "perf": "ava --watch --config ./ava-perf.config.cjs",
32
33
  "build": "tsc",
33
34
  "prepublish": "npm run build",
34
35
  "coverage": "c8 report",
@@ -52,10 +53,10 @@
52
53
  "map-any": "^1.0.0"
53
54
  },
54
55
  "devDependencies": {
55
- "@integreat/ts-dev-setup": "^5.0.0",
56
- "@types/deep-freeze": "^0.1.2",
57
- "@types/sinon": "^10.0.16",
56
+ "@integreat/ts-dev-setup": "^5.0.3",
57
+ "@types/deep-freeze": "^0.1.5",
58
+ "@types/sinon": "^17.0.2",
58
59
  "deep-freeze": "0.0.1",
59
- "sinon": "^15.2.0"
60
+ "sinon": "^17.0.1"
60
61
  }
61
62
  }