integreat 0.8.0-beta.3 → 0.8.0-beta.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.
@@ -3,6 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  const map_transform_1 = require("map-transform");
4
4
  const createError_1 = require("../utils/createError");
5
5
  const is_1 = require("../utils/is");
6
+ const array_1 = require("../utils/array");
6
7
  const validateFilters_1 = require("../utils/validateFilters");
7
8
  const prepareAction = (action, meta) => ({
8
9
  ...action,
@@ -32,20 +33,26 @@ async function runAction(action, dispatch, meta) {
32
33
  const prependResponseError = (response, message) => response?.error
33
34
  ? { ...response, error: `${message}${response.error}` }
34
35
  : response;
35
- const errorMessageFromResponses = (indices, responses, ids) => indices
36
- .map((index) => `'${ids[index]}' (${responses[index]?.response?.status}: ${responses[index]?.response?.error})`)
36
+ const errorMessageFromResponses = (responses, ids) => responses
37
+ .map((response, index) => response.response?.error
38
+ ? `'${ids[index]}' (${response.response?.status}: ${response.response?.error})`
39
+ : undefined)
40
+ .filter(Boolean)
37
41
  .join(', ');
38
42
  function responseFromResponses(responses, ids) {
39
43
  const errorIndices = responses
40
44
  .map((response, index) => isOkResponse(response?.response) ? undefined : index)
41
45
  .filter((index) => index !== undefined);
46
+ const message = errorMessageFromResponses(responses, ids);
42
47
  return {
43
48
  response: errorIndices.length > 0
44
49
  ? {
45
50
  status: 'error',
46
- error: errorMessageFromResponses(errorIndices, responses, ids),
51
+ error: message,
47
52
  }
48
- : { status: 'ok' },
53
+ : message
54
+ ? { status: 'ok', warning: `Message from steps: ${message}` }
55
+ : { status: 'ok' },
49
56
  };
50
57
  }
51
58
  function getLastJobWithResponse(flow, responses) {
@@ -74,50 +81,87 @@ function isStepOk(steps, responses) {
74
81
  return isOkResponse(responses[steps.id]?.response);
75
82
  }
76
83
  }
84
+ const messageFromValidationErrors = (vals) => vals
85
+ .map((val) => val.message)
86
+ .filter(Boolean)
87
+ .join(' | ');
88
+ function statusFromValidationErrors(vals) {
89
+ const statuses = vals.map((val) => val.status).filter(Boolean);
90
+ if (statuses.length === 0) {
91
+ return undefined;
92
+ }
93
+ return statuses[0];
94
+ }
77
95
  async function runStep(step, responses, newResponses, dispatch, mapOptions, meta, prevStep) {
78
- let response;
79
96
  if (step.conditions) {
80
97
  const validationErrors = (0, validateFilters_1.default)(step.conditions, true)(responses);
81
98
  if (validationErrors.length > 0) {
82
- response = setStepError(step.id, validationErrors.join(' | '));
99
+ const response = setStepError(step.id, messageFromValidationErrors(validationErrors), statusFromValidationErrors(validationErrors));
100
+ setResponses(response, newResponses);
101
+ return validationErrors.some((val) => val.break);
83
102
  }
84
103
  }
85
104
  else if (prevStep) {
86
105
  if (!isStepOk(prevStep, responses)) {
87
- response = newResponses;
106
+ return false;
88
107
  }
89
108
  }
90
- if (!response) {
91
- try {
92
- response = await runFlow(step, responses, dispatch, mapOptions, meta);
93
- }
94
- catch (error) {
95
- response = setStepError(step.id, error instanceof Error ? error.message : String(error), 'rejected');
96
- }
109
+ let response;
110
+ try {
111
+ response = await runFlow(step, responses, dispatch, mapOptions, meta);
112
+ }
113
+ catch (error) {
114
+ response = setStepError(step.id, error instanceof Error ? error.message : String(error), 'rejected');
97
115
  }
98
116
  setResponses(response, newResponses);
99
- return response;
117
+ return false;
118
+ }
119
+ const isJobWithIteratePath = (step) => (0, is_1.isJobStep)(step) && typeof step.iteratePath === 'string';
120
+ const setData = (action, data) => ({
121
+ ...action,
122
+ payload: { ...action.payload, data },
123
+ });
124
+ function unpackIterationSteps(step, responses, mapOptions) {
125
+ if (!isJobWithIteratePath(step)) {
126
+ return step;
127
+ }
128
+ const getter = (0, map_transform_1.mapTransform)(step.iteratePath, mapOptions);
129
+ const items = (0, array_1.ensureArray)(getter(responses));
130
+ return items.map((data, index) => ({
131
+ ...step,
132
+ id: `${step.id}_${index}`,
133
+ action: setData(step.action, data),
134
+ }));
100
135
  }
101
136
  async function runFlow(job, prevResponses, dispatch, mapOptions, meta) {
102
137
  const { id: parentId, mutation } = job;
103
138
  if ((0, is_1.isJobWithFlow)(job)) {
104
139
  const flow = job.flow;
105
140
  const newResponses = {};
106
- for (const [index, step] of flow.entries()) {
141
+ for (const [index, rawStep] of flow.entries()) {
107
142
  const responses = { ...prevResponses, ...newResponses };
108
143
  const prevStep = index > 0 ? flow[index - 1] : undefined;
144
+ const step = unpackIterationSteps(rawStep, responses, mapOptions);
109
145
  if ((0, is_1.isJobStep)(step)) {
110
- await runStep(step, responses, newResponses, dispatch, mapOptions, meta, prevStep);
146
+ const doBreak = await runStep(step, responses, newResponses, dispatch, mapOptions, meta, prevStep);
147
+ if (doBreak) {
148
+ return newResponses;
149
+ }
111
150
  }
112
151
  else if (Array.isArray(step)) {
113
- await Promise.all(step.map((step) => runStep(step, responses, newResponses, dispatch, mapOptions, meta, prevStep)));
152
+ const doBreak = await Promise.all(step.map((step) => runStep(step, responses, newResponses, dispatch, mapOptions, meta, prevStep)));
153
+ if (doBreak.includes(true)) {
154
+ return newResponses;
155
+ }
114
156
  }
115
157
  }
116
158
  return newResponses;
117
159
  }
118
160
  else if ((0, is_1.isJobWithAction)(job) && parentId) {
161
+ const action = mutateAction(job.action, mutation, prevResponses, mapOptions);
162
+ const response = await runAction(action, dispatch, meta);
119
163
  return {
120
- [parentId]: await runAction(mutateAction(job.action, mutation, prevResponses, mapOptions), dispatch, meta),
164
+ [parentId]: mutateResponse({ ...action, response: response.response }, job, prevResponses, mapOptions),
121
165
  };
122
166
  }
123
167
  return {};
@@ -147,6 +191,9 @@ const cleanUpResponse = (action) => ({
147
191
  }),
148
192
  },
149
193
  });
194
+ function mutateResponse(action, job, responses, mapOptions) {
195
+ return cleanUpResponse(mutateAction(action, job.responseMutation, { ...responses, action }, mapOptions));
196
+ }
150
197
  exports.default = (jobs, mapOptions) => async function run(action, { dispatch }) {
151
198
  const { payload: { jobId }, meta, } = action;
152
199
  const job = typeof jobId === 'string' ? jobs[jobId] : undefined;
@@ -155,10 +202,9 @@ exports.default = (jobs, mapOptions) => async function run(action, { dispatch })
155
202
  }
156
203
  const prevResponses = { action };
157
204
  const responses = await runFlow(job, prevResponses, dispatch, mapOptions, meta);
158
- const actionWithResponse = {
205
+ return mutateResponse({
159
206
  ...action,
160
207
  response: getFlowResponse(job, responses),
161
- };
162
- return cleanUpResponse(mutateAction(actionWithResponse, job.responseMutation, { ...responses, action: actionWithResponse }, mapOptions));
208
+ }, job, responses, mapOptions);
163
209
  };
164
210
  //# sourceMappingURL=run.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"run.js","sourceRoot":"","sources":["../../src/handlers/run.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"run.js","sourceRoot":"","sources":["../../src/handlers/run.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -15,7 +15,7 @@ Object.defineProperty(exports, "transformers", { enumerable: true, get: function
15
15
  var middleware_1 = require("./middleware");
16
16
  Object.defineProperty(exports, "middleware", { enumerable: true, get: function () { return middleware_1.default; } });
17
17
  exports.default = {
18
- version: '0.8.0-beta.2',
18
+ version: '0.8.0-beta.5',
19
19
  create: create_1.default,
20
20
  mergeDefinitions: mergeDefinitions_1.default,
21
21
  mergeResources: mergeResources_1.default,
package/dist/types.d.ts CHANGED
@@ -31,8 +31,13 @@ export declare type ScheduleObject = {
31
31
  wm?: number[];
32
32
  wy?: number[];
33
33
  };
34
+ export interface ConditionFailObject extends Record<string, unknown> {
35
+ message?: string;
36
+ status?: string;
37
+ break?: boolean;
38
+ }
34
39
  export interface Condition extends Record<string, unknown> {
35
- failMessage?: string;
40
+ onFail?: ConditionFailObject | string;
36
41
  }
37
42
  interface JobFields {
38
43
  id: string;
@@ -44,6 +49,8 @@ export interface JobWithFlow extends JobFields {
44
49
  }
45
50
  export interface JobWithAction extends JobFields {
46
51
  action: Action;
52
+ iteratePath?: string;
53
+ responseMutation?: MapObject | MapPipe;
47
54
  }
48
55
  export declare type Job = JobWithAction | JobWithFlow;
49
56
  export interface JobDef {
@@ -1,3 +1,3 @@
1
- import { Condition } from '../types';
1
+ import { Condition, ConditionFailObject } from '../types';
2
2
  export declare type FilterFn = (data: unknown) => boolean;
3
- export default function validateFilters(filters: Record<string, Condition | boolean | undefined>, useFriendlyMessages?: boolean): (data: unknown) => string[];
3
+ export default function validateFilters(filters: Record<string, Condition | boolean | undefined>, useFriendlyMessages?: boolean): (data: unknown) => ConditionFailObject[];
@@ -3,7 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  const util = require("util");
4
4
  const map_transform_1 = require("map-transform");
5
5
  const is_1 = require("./is");
6
- const cleanCondition = ({ failMessage, ...filter }) => filter;
6
+ const cleanCondition = ({ onFail, ...filter }) => filter;
7
7
  const cleanFilter = (filter) => (0, is_1.isObject)(filter) ? cleanCondition(filter) : filter;
8
8
  function prepareFilter(path, filter) {
9
9
  if (path === '$or') {
@@ -19,10 +19,12 @@ function prepareFilter(path, filter) {
19
19
  const prepareMessage = (path, filter, useFriendlyMessages) => !useFriendlyMessages
20
20
  ? () => path
21
21
  : (0, is_1.isObject)(filter)
22
- ? filter.failMessage
23
- ? () => filter.failMessage
24
- : () => `'${path}' did not pass ${util.inspect(filter)}`
25
- : () => `'${path}' did not pass its condition`;
22
+ ? filter.onFail
23
+ ? () => typeof filter.onFail === 'string'
24
+ ? { message: filter.onFail }
25
+ : filter.onFail
26
+ : () => ({ message: `'${path}' did not pass ${util.inspect(filter)}` })
27
+ : () => ({ message: `'${path}' did not pass its condition` });
26
28
  function validateFilters(filters, useFriendlyMessages = false) {
27
29
  const filterFns = Object.entries(filters)
28
30
  .map(([path, filter]) => [
@@ -32,10 +34,12 @@ function validateFilters(filters, useFriendlyMessages = false) {
32
34
  .filter(([filter]) => !!filter);
33
35
  const isOrFilters = filters.$or === true;
34
36
  return function validate(data) {
35
- const errors = filterFns
37
+ const failObjects = filterFns
36
38
  .map(([filter, getMessage]) => (filter(data) ? undefined : getMessage()))
37
39
  .filter(Boolean);
38
- return isOrFilters && errors.length < filterFns.length ? [] : errors;
40
+ return isOrFilters && failObjects.length < filterFns.length
41
+ ? []
42
+ : failObjects;
39
43
  };
40
44
  }
41
45
  exports.default = validateFilters;
@@ -1 +1 @@
1
- {"version":3,"file":"validateFilters.js","sourceRoot":"","sources":["../../src/utils/validateFilters.ts"],"names":[],"mappings":";;AAAA,6BAA6B;AAC7B,iDAAwC;AAExC,6BAA+B;AAM/B,MAAM,cAAc,GAAG,CAAC,EAAE,WAAW,EAAE,GAAG,MAAM,EAAa,EAAE,EAAE,CAAC,MAAM,CAAA;AACxE,MAAM,WAAW,GAAG,CAAC,MAA2B,EAAE,EAAE,CAClD,IAAA,aAAQ,EAAC,MAAM,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAA;AAEpD,SAAS,aAAa,CACpB,IAAY,EACZ,MAA0C;IAE1C,IAAI,IAAI,KAAK,KAAK,EAAE;QAClB,IAAI,IAAA,aAAQ,EAAC,MAAM,CAAC,EAAE;YACpB,OAAO,eAAe,CAAC,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,MAAM,EAAE,CAAC,CAAA;SACjD;KACF;SAAM,IAAI,MAAM,EAAE;QACjB,OAAO,IAAA,wBAAQ,EAAC,IAAI,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC,CAAA;KAC3C;IACD,OAAO,SAAS,CAAA;AAClB,CAAC;AAED,MAAM,cAAc,GAAG,CACrB,IAAY,EACZ,MAAuC,EACvC,mBAA4B,EAC5B,EAAE,CACF,CAAC,mBAAmB;IAClB,CAAC,CAAC,GAAG,EAAE,CAAC,IAAI;IACZ,CAAC,CAAC,IAAA,aAAQ,EAAC,MAAM,CAAC;QAClB,CAAC,CAAC,MAAM,CAAC,WAAW;YAClB,CAAC,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,WAAW;YAC1B,CAAC,CAAC,GAAG,EAAE,CAAC,IAAI,IAAI,kBAAkB,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE;QAC1D,CAAC,CAAC,GAAG,EAAE,CAAC,IAAI,IAAI,8BAA8B,CAAA;AAElD,SAAwB,eAAe,CACrC,OAAwD,EACxD,mBAAmB,GAAG,KAAK;IAE3B,MAAM,SAAS,GAAG,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC;SACtC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,MAAM,CAAC,EAAE,EAAE,CAAC;QACvB,aAAa,CAAC,IAAI,EAAE,MAAM,CAAC;QAC3B,cAAc,CAAC,IAAI,EAAE,MAAM,EAAE,mBAAmB,CAAC;KAClD,CAAC;SACD,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAuB,CAAA;IACvD,MAAM,WAAW,GAAG,OAAO,CAAC,GAAG,KAAK,IAAI,CAAA;IAExC,OAAO,SAAS,QAAQ,CAAC,IAAa;QACpC,MAAM,MAAM,GAAG,SAAS;aACrB,GAAG,CAAC,CAAC,CAAC,MAAM,EAAE,UAAU,CAAC,EAAE,EAAE,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,UAAU,EAAE,CAAC,CAAC;aACxE,MAAM,CAAC,OAAO,CAAa,CAAA;QAC9B,OAAO,WAAW,IAAI,MAAM,CAAC,MAAM,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CAAA;IACtE,CAAC,CAAA;AACH,CAAC;AAlBD,kCAkBC"}
1
+ {"version":3,"file":"validateFilters.js","sourceRoot":"","sources":["../../src/utils/validateFilters.ts"],"names":[],"mappings":";;AAAA,6BAA6B;AAC7B,iDAAwC;AAExC,6BAA+B;AAM/B,MAAM,cAAc,GAAG,CAAC,EAAE,MAAM,EAAE,GAAG,MAAM,EAAa,EAAE,EAAE,CAAC,MAAM,CAAA;AACnE,MAAM,WAAW,GAAG,CAAC,MAA2B,EAAE,EAAE,CAClD,IAAA,aAAQ,EAAC,MAAM,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAA;AAEpD,SAAS,aAAa,CACpB,IAAY,EACZ,MAA0C;IAE1C,IAAI,IAAI,KAAK,KAAK,EAAE;QAClB,IAAI,IAAA,aAAQ,EAAC,MAAM,CAAC,EAAE;YACpB,OAAO,eAAe,CAAC,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,MAAM,EAAE,CAAC,CAAA;SACjD;KACF;SAAM,IAAI,MAAM,EAAE;QACjB,OAAO,IAAA,wBAAQ,EAAC,IAAI,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC,CAAA;KAC3C;IACD,OAAO,SAAS,CAAA;AAClB,CAAC;AAED,MAAM,cAAc,GAAG,CACrB,IAAY,EACZ,MAAuC,EACvC,mBAA4B,EAC5B,EAAE,CACF,CAAC,mBAAmB;IAClB,CAAC,CAAC,GAAG,EAAE,CAAC,IAAI;IACZ,CAAC,CAAC,IAAA,aAAQ,EAAC,MAAM,CAAC;QAClB,CAAC,CAAC,MAAM,CAAC,MAAM;YACb,CAAC,CAAC,GAAG,EAAE,CACH,OAAO,MAAM,CAAC,MAAM,KAAK,QAAQ;gBAC/B,CAAC,CAAC,EAAE,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE;gBAC5B,CAAC,CAAC,MAAM,CAAC,MAAM;YACrB,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,IAAI,IAAI,kBAAkB,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC;QACzE,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,IAAI,IAAI,8BAA8B,EAAE,CAAC,CAAA;AAEjE,SAAwB,eAAe,CACrC,OAAwD,EACxD,mBAAmB,GAAG,KAAK;IAE3B,MAAM,SAAS,GAAG,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC;SACtC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,MAAM,CAAC,EAAE,EAAE,CAAC;QACvB,aAAa,CAAC,IAAI,EAAE,MAAM,CAAC;QAC3B,cAAc,CAAC,IAAI,EAAE,MAAM,EAAE,mBAAmB,CAAC;KAClD,CAAC;SACD,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAuB,CAAA;IACvD,MAAM,WAAW,GAAG,OAAO,CAAC,GAAG,KAAK,IAAI,CAAA;IAExC,OAAO,SAAS,QAAQ,CAAC,IAAa;QACpC,MAAM,WAAW,GAAG,SAAS;aAC1B,GAAG,CAAC,CAAC,CAAC,MAAM,EAAE,UAAU,CAAC,EAAE,EAAE,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,UAAU,EAAE,CAAC,CAAC;aACxE,MAAM,CAAC,OAAO,CAA0B,CAAA;QAC3C,OAAO,WAAW,IAAI,WAAW,CAAC,MAAM,GAAG,SAAS,CAAC,MAAM;YACzD,CAAC,CAAC,EAAE;YACJ,CAAC,CAAC,WAAW,CAAA;IACjB,CAAC,CAAA;AACH,CAAC;AApBD,kCAoBC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "integreat",
3
- "version": "0.8.0-beta.3",
3
+ "version": "0.8.0-beta.5",
4
4
  "description": "Node.js integration layer",
5
5
  "author": "Kjell-Morten Bratsberg Thorsen <kjellmorten@integreat.io> (https://integreat.io/)",
6
6
  "license": "ISC",