map-transform 1.0.7 → 1.0.8

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,12 +1,17 @@
1
1
  import { getStateValue, setStateValue } from '../utils/stateHelpers.js';
2
- async function filterValue(value, filterFn, state) {
3
- if (Array.isArray(value)) {
4
- const results = await Promise.all(value.map((val) => filterFn(val, state)));
5
- return value.filter((_v, index) => results[index]);
2
+ async function filterValue(values, filterFn, state) {
3
+ if (Array.isArray(values)) {
4
+ const results = [];
5
+ for (const value of values) {
6
+ if (await filterFn(value, state)) {
7
+ results.push(value);
8
+ }
9
+ }
10
+ return results;
6
11
  }
7
12
  else {
8
- const result = await filterFn(value, state);
9
- return result ? value : undefined;
13
+ const result = await filterFn(values, state);
14
+ return result ? values : undefined;
10
15
  }
11
16
  }
12
17
  export default function filter(fn) {
@@ -1 +1 @@
1
- {"version":3,"file":"filter.js","sourceRoot":"","sources":["../../src/operations/filter.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAA;AAIvE,KAAK,UAAU,WAAW,CACxB,KAAc,EACd,QAAwD,EACxD,KAAY;IAEZ,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;QACxB,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,QAAQ,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC,CAAC,CAAA;QAC3E,OAAO,KAAK,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,KAAK,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAA;KACnD;SAAM;QACL,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC,CAAA;QAC3C,OAAO,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAA;KAClC;AACH,CAAC;AAMD,MAAM,CAAC,OAAO,UAAU,MAAM,CAC5B,EAAsD;IAEtD,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,EAAE;QAC3B,IAAI,OAAO,EAAE,KAAK,UAAU,EAAE;YAC5B,OAAO,KAAK,EAAE,KAAK,EAAE,EAAE,CAAC,MAAM,IAAI,CAAC,KAAK,CAAC,CAAA;SAC1C;QACD,MAAM,aAAa,GAAG,EAAE,CAAC,OAAO,CAAC,CAAA;QAEjC,OAAO,KAAK,EAAE,KAAK,EAAE,EAAE;YACrB,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,CAAA;YACnC,OAAO,aAAa,CAClB,SAAS,EACT,MAAM,WAAW,CAAC,aAAa,CAAC,SAAS,CAAC,EAAE,aAAa,EAAE,SAAS,CAAC,CACtE,CAAA;QACH,CAAC,CAAA;IACH,CAAC,CAAA;AACH,CAAC"}
1
+ {"version":3,"file":"filter.js","sourceRoot":"","sources":["../../src/operations/filter.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAA;AAIvE,KAAK,UAAU,WAAW,CACxB,MAAe,EACf,QAAwD,EACxD,KAAY;IAEZ,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE;QACzB,MAAM,OAAO,GAAG,EAAE,CAAA;QAClB,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE;YAC1B,IAAI,MAAM,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC,EAAE;gBAChC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;aACpB;SACF;QACD,OAAO,OAAO,CAAA;KACf;SAAM;QACL,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,MAAM,EAAE,KAAK,CAAC,CAAA;QAC5C,OAAO,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAA;KACnC;AACH,CAAC;AAMD,MAAM,CAAC,OAAO,UAAU,MAAM,CAC5B,EAAsD;IAEtD,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,EAAE;QAC3B,IAAI,OAAO,EAAE,KAAK,UAAU,EAAE;YAC5B,OAAO,KAAK,EAAE,KAAK,EAAE,EAAE,CAAC,MAAM,IAAI,CAAC,KAAK,CAAC,CAAA;SAC1C;QACD,MAAM,aAAa,GAAG,EAAE,CAAC,OAAO,CAAC,CAAA;QAEjC,OAAO,KAAK,EAAE,KAAK,EAAE,EAAE;YACrB,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,CAAA;YACnC,OAAO,aAAa,CAClB,SAAS,EACT,MAAM,WAAW,CAAC,aAAa,CAAC,SAAS,CAAC,EAAE,aAAa,EAAE,SAAS,CAAC,CACtE,CAAA;QACH,CAAC,CAAA;IACH,CAAC,CAAA;AACH,CAAC"}
@@ -2,15 +2,18 @@ import { pushContext, getStateValue, setStateValue, getTargetFromState, setTarge
2
2
  import { defToOperation } from '../utils/definitionHelpers.js';
3
3
  import { indexOfIfArray } from '../utils/array.js';
4
4
  import { noopNext } from '../utils/stateHelpers.js';
5
+ const runIterationStep = async (fn, state, value, index, target) => getStateValue(await fn(setTargetOnState({ ...state, index, value }, indexOfIfArray(target, index))));
5
6
  export const iterateState = (fn) => async (state, target) => {
6
- const value = getStateValue(state);
7
- if (Array.isArray(value)) {
8
- const nextState = pushContext(state, value);
9
- return Promise.all(value.map(async (item, index) => getStateValue(await fn(setTargetOnState({ ...nextState, index, value: item }, indexOfIfArray(target, index))))));
7
+ const values = getStateValue(state);
8
+ if (!Array.isArray(values)) {
9
+ return await runIterationStep(fn, state, values, 0, target);
10
10
  }
11
- else {
12
- return getStateValue(await fn(setTargetOnState({ ...state, index: 0, value }, indexOfIfArray(target, 0))));
11
+ const nextState = pushContext(state, values);
12
+ const nextValue = [];
13
+ for (const [index, value] of values.entries()) {
14
+ nextValue.push(await runIterationStep(fn, nextState, value, index, target));
13
15
  }
16
+ return nextValue;
14
17
  };
15
18
  export default function iterate(def) {
16
19
  if (!def || (typeof def === 'object' && Object.keys(def).length === 0)) {
@@ -1 +1 @@
1
- {"version":3,"file":"iterate.js","sourceRoot":"","sources":["../../src/operations/iterate.ts"],"names":[],"mappings":"AAMA,OAAO,EACL,WAAW,EACX,aAAa,EACb,aAAa,EACb,kBAAkB,EAClB,gBAAgB,GACjB,MAAM,0BAA0B,CAAA;AACjC,OAAO,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAA;AAC9D,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAA;AAClD,OAAO,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAA;AAEnD,MAAM,CAAC,MAAM,YAAY,GACvB,CAAC,EAAe,EAAE,EAAE,CAAC,KAAK,EAAE,KAAY,EAAE,MAAe,EAAE,EAAE;IAC3D,MAAM,KAAK,GAAG,aAAa,CAAC,KAAK,CAAC,CAAA;IAClC,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;QACxB,MAAM,SAAS,GAAG,WAAW,CAAC,KAAK,EAAE,KAAK,CAAC,CAAA;QAC3C,OAAO,OAAO,CAAC,GAAG,CAChB,KAAK,CAAC,GAAG,CAAC,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,CAC9B,aAAa,CACX,MAAM,EAAE,CACN,gBAAgB,CACd,EAAE,GAAG,SAAS,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,EACpC,cAAc,CAAC,MAAM,EAAE,KAAK,CAAC,CAC9B,CACF,CACF,CACF,CACF,CAAA;KACF;SAAM;QACL,OAAO,aAAa,CAClB,MAAM,EAAE,CACN,gBAAgB,CACd,EAAE,GAAG,KAAK,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,EAAE,EAC7B,cAAc,CAAC,MAAM,EAAE,CAAC,CAAC,CAC1B,CACF,CACF,CAAA;KACF;AACH,CAAC,CAAA;AAEH,MAAM,CAAC,OAAO,UAAU,OAAO,CAAC,GAAwB;IACtD,IAAI,CAAC,GAAG,IAAI,CAAC,OAAO,GAAG,KAAK,QAAQ,IAAI,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC,EAAE;QACtE,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE,CAC7C,aAAa,CAAC,MAAM,IAAI,CAAC,KAAK,CAAC,EAAE,SAAS,CAAC,CAAA;KAC9C;IACD,OAAO,CAAC,OAAO,EAAE,EAAE;QACjB,MAAM,EAAE,GAAG,cAAc,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC,OAAO,CAAC,CAAA;QAChD,OAAO,CAAC,IAAI,EAAE,EAAE;YACd,MAAM,YAAY,GAAG,YAAY,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAA;YAC/C,OAAO,KAAK,UAAU,SAAS,CAAC,KAAK;gBACnC,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,CAAA;gBAEnC,OAAO,aAAa,CAClB,SAAS,EACT,MAAM,YAAY,CAAC,SAAS,EAAE,kBAAkB,CAAC,SAAS,CAAC,CAAC,CAC7D,CAAA;YACH,CAAC,CAAA;QACH,CAAC,CAAA;IACH,CAAC,CAAA;AACH,CAAC"}
1
+ {"version":3,"file":"iterate.js","sourceRoot":"","sources":["../../src/operations/iterate.ts"],"names":[],"mappings":"AAMA,OAAO,EACL,WAAW,EACX,aAAa,EACb,aAAa,EACb,kBAAkB,EAClB,gBAAgB,GACjB,MAAM,0BAA0B,CAAA;AACjC,OAAO,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAA;AAC9D,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAA;AAClD,OAAO,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAA;AAEnD,MAAM,gBAAgB,GAAG,KAAK,EAC5B,EAAe,EACf,KAAY,EACZ,KAAc,EACd,KAAa,EACb,MAAe,EACf,EAAE,CACF,aAAa,CACX,MAAM,EAAE,CACN,gBAAgB,CACd,EAAE,GAAG,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,EAC1B,cAAc,CAAC,MAAM,EAAE,KAAK,CAAC,CAC9B,CACF,CACF,CAAA;AAEH,MAAM,CAAC,MAAM,YAAY,GACvB,CAAC,EAAe,EAAE,EAAE,CAAC,KAAK,EAAE,KAAY,EAAE,MAAe,EAAE,EAAE;IAC3D,MAAM,MAAM,GAAG,aAAa,CAAC,KAAK,CAAC,CAAA;IAEnC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE;QAE1B,OAAO,MAAM,gBAAgB,CAAC,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,CAAC,CAAA;KAC5D;IAED,MAAM,SAAS,GAAG,WAAW,CAAC,KAAK,EAAE,MAAM,CAAC,CAAA;IAC5C,MAAM,SAAS,GAAc,EAAE,CAAA;IAC/B,KAAK,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,EAAE,EAAE;QAE7C,SAAS,CAAC,IAAI,CACZ,MAAM,gBAAgB,CAAC,EAAE,EAAE,SAAS,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,CAAC,CAC5D,CAAA;KACF;IACD,OAAO,SAAS,CAAA;AAClB,CAAC,CAAA;AAEH,MAAM,CAAC,OAAO,UAAU,OAAO,CAAC,GAAwB;IACtD,IAAI,CAAC,GAAG,IAAI,CAAC,OAAO,GAAG,KAAK,QAAQ,IAAI,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC,EAAE;QACtE,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE,CAC7C,aAAa,CAAC,MAAM,IAAI,CAAC,KAAK,CAAC,EAAE,SAAS,CAAC,CAAA;KAC9C;IACD,OAAO,CAAC,OAAO,EAAE,EAAE;QACjB,MAAM,EAAE,GAAG,cAAc,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC,OAAO,CAAC,CAAA;QAChD,OAAO,CAAC,IAAI,EAAE,EAAE;YACd,MAAM,YAAY,GAAG,YAAY,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAA;YAC/C,OAAO,KAAK,UAAU,SAAS,CAAC,KAAK;gBACnC,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,CAAA;gBAEnC,OAAO,aAAa,CAClB,SAAS,EACT,MAAM,YAAY,CAAC,SAAS,EAAE,kBAAkB,CAAC,SAAS,CAAC,CAAC,CAC7D,CAAA;YACH,CAAC,CAAA;QACH,CAAC,CAAA;IACH,CAAC,CAAA;AACH,CAAC"}
@@ -36,7 +36,10 @@ export default function merge(...defs) {
36
36
  return setStateValue(nextState, undefined);
37
37
  }
38
38
  else {
39
- const states = await Promise.all(pipelines.map((pipeline) => pipeline(nextState)));
39
+ const states = [];
40
+ for (const pipeline of pipelines) {
41
+ states.push(await pipeline(nextState));
42
+ }
40
43
  return states.reduce(mergeStates);
41
44
  }
42
45
  };
@@ -1 +1 @@
1
- {"version":3,"file":"merge.js","sourceRoot":"","sources":["../../src/operations/merge.ts"],"names":[],"mappings":"AAAA,OAAO,SAAS,MAAM,WAAW,CAAA;AAEjC,OAAO,EACL,aAAa,EACb,aAAa,EACb,eAAe,GAChB,MAAM,0BAA0B,CAAA;AACjC,OAAO,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAA;AAC9D,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AAEzC,MAAM,UAAU,aAAa,CAC3B,MAAW,EACX,MAAW;IAEX,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE;QACzB,MAAM,GAAG,GAAG,MAAM,CAAC,KAAK,EAAE,CAAA;QAC1B,MAAM,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE;YAE9B,GAAG,CAAC,KAAK,CAAC,GAAG,SAAS,CAAO,MAAM,CAAC,KAAK,CAAC,EAAE,KAAK,EAAE;gBACjD,UAAU,EAAE,aAAa;aAC1B,CAAC,CAAA;QACJ,CAAC,CAAC,CAAA;QACF,OAAO,GAAG,CAAA;KACX;IACD,OAAO,MAAM,CAAA;AACf,CAAC;AAED,MAAM,UAAU,WAAW,CAAC,KAAY,EAAE,SAAgB;IACxD,MAAM,MAAM,GAAG,aAAa,CAAC,KAAK,CAAC,CAAA;IACnC,MAAM,MAAM,GAAG,aAAa,CAAC,SAAS,CAAC,CAAA;IAEvC,MAAM,KAAK,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC;QAC7B,CAAC,CAAC,MAAM;QACR,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC;YACnB,CAAC,CAAC,MAAM;YACR,CAAC,CAAC,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,EAAE,UAAU,EAAE,aAAa,EAAE,CAAC,CAAA;IAE5D,OAAO,aAAa,CAAC,KAAK,EAAE,KAAK,CAAC,CAAA;AACpC,CAAC;AAED,MAAM,CAAC,OAAO,UAAU,KAAK,CAAC,GAAG,IAA2B;IAC1D,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,EAAE;QAC3B,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE;YACrB,OAAO,KAAK,EAAE,KAAK,EAAE,EAAE,CAAC,aAAa,CAAC,MAAM,IAAI,CAAC,KAAK,CAAC,EAAE,SAAS,CAAC,CAAA;SACpE;QACD,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CACjC,cAAc,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,CAC5C,CAAA;QAED,OAAO,KAAK,WAAW,KAAK;YAC1B,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,CAAA;YACnC,IAAI,eAAe,CAAC,SAAS,EAAE,OAAO,CAAC,SAAS,CAAC,EAAE;gBACjD,OAAO,aAAa,CAAC,SAAS,EAAE,SAAS,CAAC,CAAA;aAC3C;iBAAM;gBACL,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,GAAG,CAC9B,SAAS,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CACjD,CAAA;gBACD,OAAO,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,CAAA;aAClC;QACH,CAAC,CAAA;IACH,CAAC,CAAA;AACH,CAAC"}
1
+ {"version":3,"file":"merge.js","sourceRoot":"","sources":["../../src/operations/merge.ts"],"names":[],"mappings":"AAAA,OAAO,SAAS,MAAM,WAAW,CAAA;AAEjC,OAAO,EACL,aAAa,EACb,aAAa,EACb,eAAe,GAChB,MAAM,0BAA0B,CAAA;AACjC,OAAO,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAA;AAC9D,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AAEzC,MAAM,UAAU,aAAa,CAC3B,MAAW,EACX,MAAW;IAEX,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE;QACzB,MAAM,GAAG,GAAG,MAAM,CAAC,KAAK,EAAE,CAAA;QAC1B,MAAM,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE;YAE9B,GAAG,CAAC,KAAK,CAAC,GAAG,SAAS,CAAO,MAAM,CAAC,KAAK,CAAC,EAAE,KAAK,EAAE;gBACjD,UAAU,EAAE,aAAa;aAC1B,CAAC,CAAA;QACJ,CAAC,CAAC,CAAA;QACF,OAAO,GAAG,CAAA;KACX;IACD,OAAO,MAAM,CAAA;AACf,CAAC;AAED,MAAM,UAAU,WAAW,CAAC,KAAY,EAAE,SAAgB;IACxD,MAAM,MAAM,GAAG,aAAa,CAAC,KAAK,CAAC,CAAA;IACnC,MAAM,MAAM,GAAG,aAAa,CAAC,SAAS,CAAC,CAAA;IAEvC,MAAM,KAAK,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC;QAC7B,CAAC,CAAC,MAAM;QACR,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC;YACnB,CAAC,CAAC,MAAM;YACR,CAAC,CAAC,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,EAAE,UAAU,EAAE,aAAa,EAAE,CAAC,CAAA;IAE5D,OAAO,aAAa,CAAC,KAAK,EAAE,KAAK,CAAC,CAAA;AACpC,CAAC;AAED,MAAM,CAAC,OAAO,UAAU,KAAK,CAAC,GAAG,IAA2B;IAC1D,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,EAAE;QAC3B,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE;YACrB,OAAO,KAAK,EAAE,KAAK,EAAE,EAAE,CAAC,aAAa,CAAC,MAAM,IAAI,CAAC,KAAK,CAAC,EAAE,SAAS,CAAC,CAAA;SACpE;QACD,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CACjC,cAAc,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,CAC5C,CAAA;QAED,OAAO,KAAK,WAAW,KAAK;YAC1B,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,CAAA;YACnC,IAAI,eAAe,CAAC,SAAS,EAAE,OAAO,CAAC,SAAS,CAAC,EAAE;gBACjD,OAAO,aAAa,CAAC,SAAS,EAAE,SAAS,CAAC,CAAA;aAC3C;iBAAM;gBACL,MAAM,MAAM,GAAG,EAAE,CAAA;gBACjB,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE;oBAChC,MAAM,CAAC,IAAI,CAAC,MAAM,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAA;iBACvC;gBACD,OAAO,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,CAAA;aAClC;QACH,CAAC,CAAA;IACH,CAAC,CAAA;AACH,CAAC"}
@@ -20,7 +20,10 @@ const transformer = function logical({ path = '.', operator = 'AND', }) {
20
20
  return obj;
21
21
  }
22
22
  else {
23
- const values = await Promise.all(getFns.map((fn) => fn(data, state)));
23
+ const values = [];
24
+ for (const getFn of getFns) {
25
+ values.push(await getFn(data, state));
26
+ }
24
27
  return values.reduce(logicalOp);
25
28
  }
26
29
  };
@@ -1 +1 @@
1
- {"version":3,"file":"logical.js","sourceRoot":"","sources":["../../src/transformers/logical.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAA;AACtE,OAAO,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAA;AAE/D,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;AAS/C,MAAM,YAAY,GAAG,CAAC,QAAkB,EAAE,EAAE,CAC1C,QAAQ,KAAK,IAAI;IACf,CAAC,CAAC,CAAC,CAAU,EAAE,CAAU,EAAE,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,OAAO,CAAC,CAAC,CAAC;IACtD,CAAC,CAAC,CAAC,CAAU,EAAE,CAAU,EAAE,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,OAAO,CAAC,CAAC,CAAC,CAAA;AAE1D,MAAM,WAAW,GAA4B,SAAS,OAAO,CAAC,EAC5D,IAAI,GAAG,GAAG,EACV,QAAQ,GAAG,KAAK,GACjB;IACC,OAAO,CAAC,OAAO,EAAE,EAAE;QACjB,MAAM,OAAO,GAAG,WAAW,CAAC,IAAI,CAAC,CAAA;QACjC,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,eAAe,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC,CAAA;QACpE,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,eAAe,CAAC,IAAI,IAAI,EAAE,EAAE,OAAO,CAAC,CAAC,CAAA;QAE1E,MAAM,SAAS,GAAG,YAAY,CAAC,QAAQ,CAAC,CAAA;QAExC,OAAO,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE;YAC3B,IAAI,KAAK,CAAC,GAAG,EAAE;gBACb,MAAM,KAAK,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;gBAC3B,IAAI,GAAY,CAAA;gBAChB,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE;oBAC1B,GAAG,GAAG,MAAM,KAAK,CAAC,KAAK,EAAE,gBAAgB,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,GAAG,CAAC,CAAC,CAAA;iBAClE;gBACD,OAAO,GAAG,CAAA;aACX;iBAAM;gBACL,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC,CAAA;gBACrE,OAAO,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAA;aAChC;QACH,CAAC,CAAA;IACH,CAAC,CAAA;AACH,CAAC,CAAA;AAED,eAAe,WAAW,CAAA"}
1
+ {"version":3,"file":"logical.js","sourceRoot":"","sources":["../../src/transformers/logical.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAA;AACtE,OAAO,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAA;AAE/D,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;AAS/C,MAAM,YAAY,GAAG,CAAC,QAAkB,EAAE,EAAE,CAC1C,QAAQ,KAAK,IAAI;IACf,CAAC,CAAC,CAAC,CAAU,EAAE,CAAU,EAAE,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,OAAO,CAAC,CAAC,CAAC;IACtD,CAAC,CAAC,CAAC,CAAU,EAAE,CAAU,EAAE,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,OAAO,CAAC,CAAC,CAAC,CAAA;AAG1D,MAAM,WAAW,GAA4B,SAAS,OAAO,CAAC,EAC5D,IAAI,GAAG,GAAG,EACV,QAAQ,GAAG,KAAK,GACjB;IACC,OAAO,CAAC,OAAO,EAAE,EAAE;QACjB,MAAM,OAAO,GAAG,WAAW,CAAC,IAAI,CAAC,CAAA;QACjC,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,eAAe,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC,CAAA;QACpE,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,eAAe,CAAC,IAAI,IAAI,EAAE,EAAE,OAAO,CAAC,CAAC,CAAA;QAE1E,MAAM,SAAS,GAAG,YAAY,CAAC,QAAQ,CAAC,CAAA;QAExC,OAAO,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE;YAC3B,IAAI,KAAK,CAAC,GAAG,EAAE;gBACb,MAAM,KAAK,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;gBAC3B,IAAI,GAAY,CAAA;gBAChB,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE;oBAC1B,GAAG,GAAG,MAAM,KAAK,CAAC,KAAK,EAAE,gBAAgB,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,GAAG,CAAC,CAAC,CAAA;iBAClE;gBACD,OAAO,GAAG,CAAA;aACX;iBAAM;gBACL,MAAM,MAAM,GAAG,EAAE,CAAA;gBACjB,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE;oBAC1B,MAAM,CAAC,IAAI,CAAC,MAAM,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,CAAA;iBACtC;gBACD,OAAO,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAA;aAChC;QACH,CAAC,CAAA;IACH,CAAC,CAAA;AACH,CAAC,CAAA;AAED,eAAe,WAAW,CAAA"}
@@ -7,10 +7,15 @@ function mergeTransformer({ path }, flip) {
7
7
  return (options) => {
8
8
  const getFns = ensureArray(path).map((path) => defToDataMapper(path, options));
9
9
  return async function mergePipelines(data, state) {
10
- const values = (await Promise.all(getFns.map((fn) => fn(data, flipState(state, flip)))))
10
+ const values = [];
11
+ for (const fn of getFns) {
12
+ values.push(await fn(data, flipState(state, flip)));
13
+ }
14
+ return Object.fromEntries(values
11
15
  .flat()
12
- .filter(isObject);
13
- return Object.fromEntries(values.flatMap(Object.entries).sort(undefinedFirst));
16
+ .filter(isObject)
17
+ .flatMap(Object.entries)
18
+ .sort(undefinedFirst));
14
19
  };
15
20
  };
16
21
  }
@@ -1 +1 @@
1
- {"version":3,"file":"merge.js","sourceRoot":"","sources":["../../src/transformers/merge.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;AAC/C,OAAO,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAA;AAC/D,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AACzC,OAAO,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAA;AAapD,MAAM,cAAc,GAAG,CACrB,CAAC,EAAE,EAAE,CAAC,CAAoB,EAC1B,CAAC,EAAE,EAAE,CAAC,CAAoB,EAC1B,EAAE,CAAC,CAAC,CAAC,KAAK,SAAS,IAAI,CAAC,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;AAMxE,SAAS,gBAAgB,CACvB,EAAE,IAAI,EAAS,EACf,IAAa;IAEb,OAAO,CAAC,OAAO,EAAE,EAAE;QACjB,MAAM,MAAM,GAAG,WAAW,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAC5C,eAAe,CAAC,IAAI,EAAE,OAAO,CAAC,CAC/B,CAAA;QAED,OAAO,KAAK,UAAU,cAAc,CAAC,IAAI,EAAE,KAAK;YAC9C,MAAM,MAAM,GAAG,CACb,MAAM,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,IAAI,EAAE,SAAS,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,CACxE;iBACE,IAAI,EAAE;iBACN,MAAM,CAAC,QAAQ,CAAC,CAAA;YACnB,OAAO,MAAM,CAAC,WAAW,CACvB,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,CACpD,CAAA;QACH,CAAC,CAAA;IACH,CAAC,CAAA;AACH,CAAC;AAOD,MAAM,CAAC,MAAM,KAAK,GAA4B,SAAS,KAAK,CAAC,KAAY;IACvE,OAAO,gBAAgB,CAAC,KAAK,EAAE,KAAK,CAAC,CAAA;AACvC,CAAC,CAAA;AAOD,MAAM,CAAC,MAAM,QAAQ,GAA4B,SAAS,QAAQ,CAChE,KAAY;IAEZ,OAAO,gBAAgB,CAAC,KAAK,EAAE,IAAI,CAAC,CAAA;AACtC,CAAC,CAAA"}
1
+ {"version":3,"file":"merge.js","sourceRoot":"","sources":["../../src/transformers/merge.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;AAC/C,OAAO,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAA;AAC/D,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AACzC,OAAO,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAA;AAapD,MAAM,cAAc,GAAG,CACrB,CAAC,EAAE,EAAE,CAAC,CAAoB,EAC1B,CAAC,EAAE,EAAE,CAAC,CAAoB,EAC1B,EAAE,CAAC,CAAC,CAAC,KAAK,SAAS,IAAI,CAAC,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;AAMxE,SAAS,gBAAgB,CACvB,EAAE,IAAI,EAAS,EACf,IAAa;IAEb,OAAO,CAAC,OAAO,EAAE,EAAE;QACjB,MAAM,MAAM,GAAG,WAAW,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAC5C,eAAe,CAAC,IAAI,EAAE,OAAO,CAAC,CAC/B,CAAA;QAED,OAAO,KAAK,UAAU,cAAc,CAAC,IAAI,EAAE,KAAK;YAC9C,MAAM,MAAM,GAAG,EAAE,CAAA;YACjB,KAAK,MAAM,EAAE,IAAI,MAAM,EAAE;gBACvB,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,SAAS,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC,CAAA;aACpD;YACD,OAAO,MAAM,CAAC,WAAW,CACvB,MAAM;iBACH,IAAI,EAAE;iBACN,MAAM,CAAC,QAAQ,CAAC;iBAChB,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC;iBACvB,IAAI,CAAC,cAAc,CAAC,CACxB,CAAA;QACH,CAAC,CAAA;IACH,CAAC,CAAA;AACH,CAAC;AAOD,MAAM,CAAC,MAAM,KAAK,GAA4B,SAAS,KAAK,CAAC,KAAY;IACvE,OAAO,gBAAgB,CAAC,KAAK,EAAE,KAAK,CAAC,CAAA;AACvC,CAAC,CAAA;AAOD,MAAM,CAAC,MAAM,QAAQ,GAA4B,SAAS,QAAQ,CAChE,KAAY;IAEZ,OAAO,gBAAgB,CAAC,KAAK,EAAE,IAAI,CAAC,CAAA;AACtC,CAAC,CAAA"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "map-transform",
3
- "version": "1.0.7",
3
+ "version": "1.0.8",
4
4
  "description": "Map and transform objects with mapping definitions",
5
5
  "author": "Kjell-Morten Bratsberg Thorsen <kjellmorten@integreat.io>",
6
6
  "license": "ISC",