map-transform 1.0.4 → 1.0.5

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,33 +1,25 @@
1
1
  import mapAny from 'map-any/async.js';
2
+ import { getProperty } from 'dot-prop';
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, arr, getProp) => arr.filter((val) => getProp(val) === value);
9
+ const findOneMatch = (value, arr, getProp) => arr.find((val) => getProp(val) === 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, arr, getProp) : undefined;
24
15
  };
25
16
  };
17
+ const createGetter = (propPath) => (obj) => getProperty(obj, propPath);
26
18
  export function lookup({ arrayPath, propPath, matchSeveral = false, flip = false, }) {
27
19
  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));
20
+ const getter = createGetter(propPath);
21
+ const matchFn = matchInArray(defToOperation(arrayPath, options), matchSeveral ? findAllMatches : findOneMatch, getter);
22
+ const extractProp = () => async (value) => getter(value);
31
23
  return (next) => async function doLookup(state) {
32
24
  const nextState = await next(state);
33
25
  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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"}
@@ -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":"AAAA,OAAO,GAAG,MAAM,UAAU,CAAA;AAK1B,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,KAAY,EAAE,EAAE,CAC7C,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAA;AAEzC,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,KAAY,EAAE,EAAE,CAAC,CAAC;IAClD,GAAG,KAAK;IACR,OAAO,EAAE,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;CACpC,CAAC,CAAA;AAEF,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,KAAY,EAAE,KAAc,EAAE,EAAE,CAAC,CAAC;IAC5D,GAAG,KAAK;IACR,OAAO,EAAE,CAAC,GAAG,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC;CACnC,CAAC,CAAA;AAEF,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,KAAY,EAAE,EAAE,CAAC,CAAC;IAC3C,GAAG,KAAK;IACR,OAAO,EAAE,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IACnC,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC;CAC/C,CAAC,CAAA;AAIF,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,KAAY,EAAE,EAAE,CAC/C,KAAK,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAA;AAI7D,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,KAAY,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM,CAAA;AAEhE,MAAM,UAAU,gBAAgB,CAAC,KAAY,EAAE,MAAe;IAC5D,OAAO;QACL,GAAG,KAAK;QACR,MAAM;KACP,CAAA;AACH,CAAC;AAID,MAAM,CAAC,MAAM,aAAa,GAAG,CAC3B,EAAE,SAAS,EAAE,GAAG,KAAK,EAAS,EAC9B,KAAc,EACd,iBAAiB,GAAG,KAAK,EAClB,EAAE,CACT,iBAAiB;IACf,CAAC,CAAC;QACE,GAAG,WAAW,CAAC,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC;QAClC,KAAK;KACN;IACH,CAAC,CAAC,EAAE,GAAG,KAAK,EAAE,KAAK,EAAE,CAAA;AAEzB,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,KAAY,EAAW,EAAE,CAAC,KAAK,CAAC,KAAK,CAAA;AAEnE,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAC/B,KAAY,EACZ,EAAE,KAAK,EAAS,EAChB,iBAAiB,GAAG,KAAK,EAClB,EAAE,CAAC,aAAa,CAAC,KAAK,EAAE,KAAK,EAAE,iBAAiB,CAAC,CAAA;AAE1D,MAAM,CAAC,MAAM,UAAU,GAAG,CACxB,KAAc,EACd,YAAuB,CAAC,SAAS,CAAC,EAClC,EAAE,CAAC,SAAS,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAA;AAE9B,MAAM,CAAC,MAAM,eAAe,GAAG,CAC7B,KAAY,EACZ,YAAuB,CAAC,SAAS,CAAC,EAClC,EAAE,CAAC,UAAU,CAAC,KAAK,CAAC,KAAK,EAAE,SAAS,CAAC,CAAA;AAEvC,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,KAAY,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,KAAK,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAA;AAChF,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAS,EAAE,EAAE,CAAC,KAAK,CAAA;AACvE,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,EAAE,SAAS,EAAS,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,CAAA;AAIhE,MAAM,CAAC,MAAM,aAAa,GAAG,CAC3B,IAAa,EACb,EAAE,GAAG,GAAG,KAAK,EAAE,UAAU,GAAG,KAAK,EAAE,MAAM,GAAG,SAAS,EAAgB,EAC9D,EAAE,CAAC,CAAC;IACX,OAAO,EAAE,EAAE;IACX,KAAK,EAAE,IAAI;IACX,MAAM;IACN,GAAG;IACH,UAAU;CACX,CAAC,CAAA;AAEF,MAAM,CAAC,MAAM,SAAS,GAAG,CAAC,KAAY,EAAE,EAAE,CAAC,CAAC;IAC1C,GAAG,KAAK;IACR,GAAG,EAAE,KAAK;IACV,IAAI,EAAE,KAAK;CACZ,CAAC,CAAA;AAEF,MAAM,CAAC,MAAM,SAAS,GAAG,CAAC,KAAY,EAAE,IAAI,GAAG,IAAI,EAAE,EAAE,CAAC,CAAC;IACvD,GAAG,KAAK;IACR,IAAI,EAAE,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,CAAC;CAC5B,CAAC,CAAA;AAEF,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,KAAY,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,CAAA;AAE7E,MAAM,CAAC,MAAM,QAAQ,GAAG,KAAK,EAAE,KAAY,EAAE,EAAE,CAAC,KAAK,CAAA;AAErD,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,KAAY,EAAE,IAAI,GAAG,KAAK,EAAE,EAAE,CACzD,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,CAAC,CAAA"}
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.5",
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",
@@ -49,13 +50,14 @@
49
50
  "dependencies": {
50
51
  "ajv": "^8.12.0",
51
52
  "deepmerge": "^4.3.1",
53
+ "dot-prop": "^8.0.2",
52
54
  "map-any": "^1.0.0"
53
55
  },
54
56
  "devDependencies": {
55
- "@integreat/ts-dev-setup": "^5.0.0",
56
- "@types/deep-freeze": "^0.1.2",
57
- "@types/sinon": "^10.0.16",
57
+ "@integreat/ts-dev-setup": "^5.0.3",
58
+ "@types/deep-freeze": "^0.1.5",
59
+ "@types/sinon": "^17.0.2",
58
60
  "deep-freeze": "0.0.1",
59
- "sinon": "^15.2.0"
61
+ "sinon": "^17.0.1"
60
62
  }
61
63
  }