map-transform 0.5.2 → 0.5.4

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.
Files changed (43) hide show
  1. package/dist/operations/apply.js +2 -2
  2. package/dist/operations/apply.js.map +1 -1
  3. package/dist/operations/props.js +10 -8
  4. package/dist/operations/props.js.map +1 -1
  5. package/dist/types.d.ts +5 -2
  6. package/package.json +5 -4
  7. package/coverage/tmp/coverage-83449-1690740528128-5.json +0 -1
  8. package/coverage/tmp/coverage-83449-1690740528159-4.json +0 -1
  9. package/coverage/tmp/coverage-83449-1690740528162-3.json +0 -1
  10. package/coverage/tmp/coverage-83449-1690740528167-10.json +0 -1
  11. package/coverage/tmp/coverage-83449-1690740528171-2.json +0 -1
  12. package/coverage/tmp/coverage-83449-1690740528172-9.json +0 -1
  13. package/coverage/tmp/coverage-83449-1690740528182-8.json +0 -1
  14. package/coverage/tmp/coverage-83449-1690740528194-7.json +0 -1
  15. package/coverage/tmp/coverage-83449-1690740528203-1.json +0 -1
  16. package/coverage/tmp/coverage-83449-1690740528215-6.json +0 -1
  17. package/coverage/tmp/coverage-83449-1690740528421-13.json +0 -1
  18. package/coverage/tmp/coverage-83449-1690740528444-11.json +0 -1
  19. package/coverage/tmp/coverage-83449-1690740528477-12.json +0 -1
  20. package/coverage/tmp/coverage-83449-1690740528483-15.json +0 -1
  21. package/coverage/tmp/coverage-83449-1690740528489-19.json +0 -1
  22. package/coverage/tmp/coverage-83449-1690740528490-18.json +0 -1
  23. package/coverage/tmp/coverage-83449-1690740528497-16.json +0 -1
  24. package/coverage/tmp/coverage-83449-1690740528513-17.json +0 -1
  25. package/coverage/tmp/coverage-83449-1690740528528-14.json +0 -1
  26. package/coverage/tmp/coverage-83449-1690740528528-20.json +0 -1
  27. package/coverage/tmp/coverage-83449-1690740528732-26.json +0 -1
  28. package/coverage/tmp/coverage-83449-1690740528760-27.json +0 -1
  29. package/coverage/tmp/coverage-83449-1690740528764-29.json +0 -1
  30. package/coverage/tmp/coverage-83449-1690740528793-23.json +0 -1
  31. package/coverage/tmp/coverage-83449-1690740528797-24.json +0 -1
  32. package/coverage/tmp/coverage-83449-1690740528797-25.json +0 -1
  33. package/coverage/tmp/coverage-83449-1690740528806-22.json +0 -1
  34. package/coverage/tmp/coverage-83449-1690740528807-21.json +0 -1
  35. package/coverage/tmp/coverage-83449-1690740528807-30.json +0 -1
  36. package/coverage/tmp/coverage-83449-1690740528809-28.json +0 -1
  37. package/coverage/tmp/coverage-83449-1690740528908-31.json +0 -1
  38. package/coverage/tmp/coverage-83449-1690740528983-34.json +0 -1
  39. package/coverage/tmp/coverage-83449-1690740528984-32.json +0 -1
  40. package/coverage/tmp/coverage-83449-1690740528986-33.json +0 -1
  41. package/coverage/tmp/coverage-83449-1690740528991-36.json +0 -1
  42. package/coverage/tmp/coverage-83449-1690740528999-35.json +0 -1
  43. package/coverage/tmp/coverage-83449-1690740529027-0.json +0 -1
@@ -6,7 +6,7 @@ const extractPipeline = (pipelineId, { pipelines }) => (typeof pipelineId === 's
6
6
  : undefined;
7
7
  const removeFlip = ({ flip, ...state }) => state;
8
8
  export default function apply(pipelineId) {
9
- return (options) => (next) => {
9
+ return (options) => {
10
10
  const pipeline = extractPipeline(pipelineId, options);
11
11
  if (!pipeline) {
12
12
  const message = pipelineId
@@ -17,7 +17,7 @@ export default function apply(pipelineId) {
17
17
  const fn = pipeline
18
18
  ? defToOperation(pipeline, options)(options)(noopNext)
19
19
  : undefined;
20
- return async (state) => {
20
+ return (next) => async (state) => {
21
21
  const nextState = await next(state);
22
22
  return fn ? fn(removeFlip(nextState)) : nextState;
23
23
  };
@@ -1 +1 @@
1
- {"version":3,"file":"apply.js","sourceRoot":"","sources":["../../src/operations/apply.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAA;AAC9D,OAAO,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAA;AAEnD,MAAM,eAAe,GAAG,CAAC,UAA2B,EAAE,EAAE,SAAS,EAAW,EAAE,EAAE,CAC9E,CAAC,OAAO,UAAU,KAAK,QAAQ,IAAI,OAAO,UAAU,KAAK,QAAQ,CAAC;IAClE,SAAS;IACP,CAAC,CAAC,SAAS,CAAC,UAAU,CAAC;IACvB,CAAC,CAAC,SAAS,CAAA;AAEf,MAAM,UAAU,GAAG,CAAC,EAAE,IAAI,EAAE,GAAG,KAAK,EAAS,EAAE,EAAE,CAAC,KAAK,CAAA;AAEvD,MAAM,CAAC,OAAO,UAAU,KAAK,CAAC,UAA2B;IACvD,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,EAAE;QAC3B,MAAM,QAAQ,GAAG,eAAe,CAAC,UAAU,EAAE,OAAO,CAAC,CAAA;QAErD,IAAI,CAAC,QAAQ,EAAE;YACb,MAAM,OAAO,GAAG,UAAU;gBACxB,CAAC,CAAC,6BAA6B,MAAM,CAAC,UAAU,CAAC,qBAAqB;gBACtE,CAAC,CAAC,0CAA0C,CAAA;YAC9C,MAAM,IAAI,KAAK,CAAC,OAAO,CAAC,CAAA;SACzB;QAED,MAAM,EAAE,GAAG,QAAQ;YACjB,CAAC,CAAC,cAAc,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC;YACtD,CAAC,CAAC,SAAS,CAAA;QACb,OAAO,KAAK,EAAE,KAAK,EAAE,EAAE;YACrB,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,CAAA;YACnC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAA;QACnD,CAAC,CAAA;IACH,CAAC,CAAA;AACH,CAAC"}
1
+ {"version":3,"file":"apply.js","sourceRoot":"","sources":["../../src/operations/apply.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAA;AAC9D,OAAO,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAA;AAEnD,MAAM,eAAe,GAAG,CAAC,UAA2B,EAAE,EAAE,SAAS,EAAW,EAAE,EAAE,CAC9E,CAAC,OAAO,UAAU,KAAK,QAAQ,IAAI,OAAO,UAAU,KAAK,QAAQ,CAAC;IAChE,SAAS;IACT,CAAC,CAAC,SAAS,CAAC,UAAU,CAAC;IACvB,CAAC,CAAC,SAAS,CAAA;AAEf,MAAM,UAAU,GAAG,CAAC,EAAE,IAAI,EAAE,GAAG,KAAK,EAAS,EAAE,EAAE,CAAC,KAAK,CAAA;AAEvD,MAAM,CAAC,OAAO,UAAU,KAAK,CAAC,UAA2B;IACvD,OAAO,CAAC,OAAO,EAAE,EAAE;QACjB,MAAM,QAAQ,GAAG,eAAe,CAAC,UAAU,EAAE,OAAO,CAAC,CAAA;QAErD,IAAI,CAAC,QAAQ,EAAE;YACb,MAAM,OAAO,GAAG,UAAU;gBACxB,CAAC,CAAC,6BAA6B,MAAM,CAAC,UAAU,CAAC,qBAAqB;gBACtE,CAAC,CAAC,0CAA0C,CAAA;YAC9C,MAAM,IAAI,KAAK,CAAC,OAAO,CAAC,CAAA;SACzB;QAED,MAAM,EAAE,GAAG,QAAQ;YACjB,CAAC,CAAC,cAAc,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC;YACtD,CAAC,CAAC,SAAS,CAAA;QACb,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE;YAC/B,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,CAAA;YACnC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAA;QACnD,CAAC,CAAA;IACH,CAAC,CAAA;AACH,CAAC"}
@@ -25,9 +25,9 @@ function isWrongDirection(direction, options) {
25
25
  return () => false;
26
26
  }
27
27
  }
28
- function runOperationWithOriginalValue({ value }, options) {
28
+ function runOperationWithOriginalValue({ value }) {
29
29
  return async (state, fn) => {
30
- const nextState = await fn(options)(noopNext)(setStateValue(state, value));
30
+ const nextState = await fn(noopNext)(setStateValue(state, value));
31
31
  const target = state.target;
32
32
  const nextValue = getStateValue(nextState);
33
33
  const thisState = setTargetOnState(nextState, nextValue);
@@ -64,7 +64,9 @@ const createSetPipeline = (options) => function createSetPipeline([prop, pipelin
64
64
  const unslashedProp = removeSlash(prop);
65
65
  const onlyRev = prop !== unslashedProp;
66
66
  const operations = [defToOperation(pipeline, options), set(unslashedProp)];
67
- return onlyRev ? divide(plug(), operations) : pipe(operations);
67
+ return onlyRev
68
+ ? divide(plug(), operations)(options)
69
+ : pipe(operations)(options);
68
70
  };
69
71
  function modifyWithGivenPath(path, options, next) {
70
72
  if (path) {
@@ -78,7 +80,7 @@ const runOperations = (modifyFn, operations, options) => async (state) => {
78
80
  return state;
79
81
  }
80
82
  else {
81
- const run = runOperationWithOriginalValue(state, options);
83
+ const run = runOperationWithOriginalValue(state);
82
84
  let nextState = state;
83
85
  for (const operation of operations) {
84
86
  nextState = await run(nextState, operation);
@@ -98,13 +100,13 @@ export default function props(def) {
98
100
  }
99
101
  const modifyPath = def.$modify === true ? '.' : def.$modify || undefined;
100
102
  return (options) => {
101
- const operations = Object.entries(def)
103
+ const nextStateMappers = Object.entries(def)
102
104
  .filter(isRegularProp)
103
105
  .map(createSetPipeline(options));
106
+ const modifyFn = modifyWithGivenPath(modifyPath, options, noopNext);
107
+ const run = runOperations(modifyFn, nextStateMappers, options);
108
+ const isWrongDirectionFn = isWrongDirection(def.$direction, options);
104
109
  return (next) => {
105
- const modifyFn = modifyWithGivenPath(modifyPath, options, noopNext);
106
- const run = runOperations(modifyFn, operations, options);
107
- const isWrongDirectionFn = isWrongDirection(def.$direction, options);
108
110
  return async function doMutate(state) {
109
111
  const nextState = await next(state);
110
112
  if (isNonvalueState(nextState, options.nonvalues) ||
@@ -1 +1 @@
1
- {"version":3,"file":"props.js","sourceRoot":"","sources":["../../src/operations/props.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"props.js","sourceRoot":"","sources":["../../src/operations/props.ts"],"names":[],"mappings":"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"}
package/dist/types.d.ts CHANGED
@@ -48,8 +48,11 @@ export interface DataMapperWithOptions {
48
48
  export interface StateMapper {
49
49
  (state: State): Promise<State>;
50
50
  }
51
+ export interface NextStateMapper {
52
+ (next: StateMapper): StateMapper;
53
+ }
51
54
  export interface Operation {
52
- (options: Options): (next: StateMapper) => StateMapper;
55
+ (options: Options): NextStateMapper;
53
56
  }
54
57
  export type TransformerProps = Record<string, unknown>;
55
58
  export interface Transformer<T = TransformerProps> {
@@ -94,7 +97,7 @@ export interface LookupOperation extends TransformerProps {
94
97
  }
95
98
  export type OperationObject = TransformOperation | FilterOperation | IfOperation | ApplyOperation | AltOperation | ConcatOperation | LookupOperation;
96
99
  export type Pipeline = (TransformObject | Operation | OperationObject | Path | Pipeline)[];
97
- export interface TransformObject extends Record<string, TransformDefinition | undefined | boolean> {
100
+ export interface TransformObject extends Record<string, unknown> {
98
101
  $iterate?: boolean;
99
102
  $modify?: boolean | Path;
100
103
  $noDefaults?: boolean;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "map-transform",
3
- "version": "0.5.2",
3
+ "version": "0.5.4",
4
4
  "description": "Map and transform objects with mapping definitions",
5
5
  "author": "Kjell-Morten Bratsberg Thorsen <kjellmorten@integreat.io>",
6
6
  "license": "ISC",
@@ -26,13 +26,14 @@
26
26
  }
27
27
  },
28
28
  "scripts": {
29
- "test": "npm run lint && npm run build && c8 --reporter=text-summary ava --config ./ava-dist.config.cjs",
29
+ "test": "c8 --reporter=text-summary ava --config ./ava-dist.config.cjs",
30
30
  "test:watch": "npm run dev",
31
31
  "dev": "ava --watch",
32
32
  "build": "tsc",
33
33
  "prepublish": "npm run build",
34
34
  "coverage": "c8 report",
35
- "lint": "eslint --ext .ts src"
35
+ "lint": "eslint --ext .ts src",
36
+ "verify": "npm run lint && npm run build && npm test"
36
37
  },
37
38
  "repository": {
38
39
  "type": "git",
@@ -48,7 +49,7 @@
48
49
  "dependencies": {
49
50
  "ajv": "^8.12.0",
50
51
  "deepmerge": "^4.3.1",
51
- "map-any": "^0.2.1"
52
+ "map-any": "^0.3.0"
52
53
  },
53
54
  "devDependencies": {
54
55
  "@integreat/ts-dev-setup": "^4.1.1",