integreat 1.4.0-rc.2 → 1.4.0

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.
package/README.md CHANGED
@@ -315,8 +315,11 @@ Here's the format of an endpoint definition:
315
315
  }
316
316
  ],
317
317
  mutate: <mutation pipeline>,
318
+ adapters: [<adapter id>, <adapter id>, ...],
319
+ auth: <auth config>,
318
320
  allowRawRequest: <boolean>,
319
- allowRawResponse: <boolean>
321
+ allowRawResponse: <boolean>,
322
+ castWithoutDefaults: <boolean>,
320
323
  options: {...},
321
324
  }
322
325
  ```
@@ -347,12 +350,25 @@ specify a few things:
347
350
  actions going to a service and the response coming back, so keep this in mind
348
351
  when you set up this pipeline. See [Mutation pipelines](#mutations)
349
352
  for more on how to define the mutation. `mutation` is an alias for `mutate`.
353
+ - `adapters`: An array of adapter ids that will be appended to the array of
354
+ adapters set on the service.
355
+ - `auth`: Auth config that will override the `auth` config on the service. See
356
+ [description of `auth` under Services](#services) for more on this. The
357
+ endpoint `auth` will only apply in cases where we have an endpoint, like when
358
+ we're sending a request to a service or receiving an incoming request, but
359
+ when we're e.g. connecting to a service to start listening, the `auth` on the
360
+ service will be used. This also goes for incoming requests where the
361
+ transporter does not provide an action with the auth attempt.
350
362
  - `allowRawRequest`: When set to `true`, payload `data` sent to this endpoint
351
363
  will not by cast automatically nor will an error be returned if the data is
352
364
  not typed.
353
365
  - `allowRawResponse`: When set to `true`, response `data` coming from this
354
366
  endpoint will not by cast automatically nor will an error be returned if the
355
367
  data is not typed.
368
+ - `castWithoutDefaults`: Set to `true` when you don't want to set default values
369
+ on casted data. This also means no `id` will be generated and no `createdAt`
370
+ or `updatedAt` will be set – when any of these are missing in the data.
371
+ Default is `false`.
356
372
  - `options`: This object is merged with the `options` object on the service
357
373
  definition, and provide options for transporters and adapters. See
358
374
  [the `options` object](#options-object) for more on this.
@@ -822,8 +838,8 @@ do so without involving the other side. If you need to switch out service B with
822
838
  service C, you can do so without involving the configuration of service A, or
823
839
  you can send data to both B and C, using the same setup for service A.
824
840
 
825
- To be clear, you can setup flows without schemas in Integreat, but at the loss
826
- of this flexibility and maintainability.
841
+ To be clear, you can setup flows without schemas in Integreat, but then you may
842
+ loose this flexibility and maintainability.
827
843
 
828
844
  A schema describe the data you expected to get out of Integreat, or send through
829
845
  it. You basically define the fields and their types, and may then cast data to
@@ -971,12 +987,15 @@ When data is cast to a schema, the data will be in the following format:
971
987
  an `updatedAt` field, and the date is not set in the data, it will be set to
972
988
  the same as `createdAt` (if provided) or the current date/time.
973
989
  - `<key>`: Then follows the values of all the fields specified in the schema.
974
- Any value not provided in the data will be set to their default value or
975
- `undefined`. Fields with other schemas as their type, will be an object. If
976
- only the id is provided in the data, the `{ id: <string>, $ref: <schema id> }`
977
- format will be used, with `$ref` being the id of the field type schema. When
978
- more data is provided, Integreat will cast it to the target schema and provide
979
- the entire data object, or array of objects, with the relevant `$type`.
990
+ Any value not provided in the data will be set to their default value, unless
991
+ `castWithoutDefaults` is set to `true` in
992
+ [the endpoint definition](#endpoints). When casting a value results in
993
+ `undefined`, it will not be included on the returned object. Fields that has
994
+ the `id` of other schemas as their type, will be objects. If only the id is
995
+ provided in the data, the `{ id: <string>, $ref: <schema id> }` format will be
996
+ used, with `$ref` being the id of the field type schema. When more data is
997
+ provided, Integreat will cast it to the target schema and provide the entire
998
+ data object, or array of objects, with the relevant `$type`.
980
999
 
981
1000
  ### Access rules
982
1001
 
package/dist/Instance.js CHANGED
@@ -43,10 +43,9 @@ const createAuthObjects = (authDefs, authenticators) => authDefs
43
43
  .reduce(indexById, {});
44
44
  function prepareJobs(jobDefs, mapOptions) {
45
45
  const jobs = new Map();
46
- ensureArray(jobDefs).forEach((job) => {
47
- if (typeof job.id === 'string') {
48
- jobs.set(job.id, new Job(job, mapOptions));
49
- }
46
+ ensureArray(jobDefs).forEach((jobDef) => {
47
+ const job = new Job(jobDef, mapOptions);
48
+ jobs.set(job.id, new Job(jobDef, mapOptions));
50
49
  });
51
50
  return jobs;
52
51
  }
@@ -1 +1 @@
1
- {"version":3,"file":"Instance.js","sourceRoot":"","sources":["../src/Instance.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Instance.js","sourceRoot":"","sources":["../src/Instance.ts"],"names":[],"mappings":"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"}
package/dist/dispatch.js CHANGED
@@ -17,7 +17,7 @@ function getActionHandlerFromType(type, handlers) {
17
17
  }
18
18
  return undefined;
19
19
  }
20
- function cleanUpActionAndSetIds({ payload: { service, ...payload }, meta: { queue, authorized, ...meta } = {}, ...action }) {
20
+ function cleanUpActionAndSetIds({ payload: { service, ...payload }, meta: { queue, auth, ...meta } = {}, ...action }) {
21
21
  const id = meta?.id || nanoid();
22
22
  const cid = meta?.cid || id;
23
23
  return {
@@ -70,7 +70,9 @@ async function handleAction(handlerType, action, resources, handlers) {
70
70
  if (!handler) {
71
71
  return createErrorResponse(`No handler for ${String(handlerType)} action`, 'dispatch', 'badrequest');
72
72
  }
73
- return setOrigin(await handler(action, resources), typeof handlerType === 'string' ? `handler:${handlerType}` : 'handler:queue');
73
+ return setOrigin(await handler(action, resources), typeof handlerType === 'string'
74
+ ? `handler:${handlerType}`
75
+ : 'handler:queue');
74
76
  }
75
77
  export default function createDispatch({ handlers = {}, schemas = new Map(), services = {}, middleware = [], options, }) {
76
78
  const getService = setupGetService(schemas, services);
@@ -1 +1 @@
1
- {"version":3,"file":"dispatch.js","sourceRoot":"","sources":["../src/dispatch.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"dispatch.js","sourceRoot":"","sources":["../src/dispatch.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAA;AAC/B,OAAO,SAAS,MAAM,YAAY,CAAA;AAClC,OAAO,QAAQ,MAAM,OAAO,CAAA;AAC5B,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAA;AAClD,OAAO,eAAe,MAAM,uBAAuB,CAAA;AACnD,OAAO,EACL,gBAAgB,EAChB,mBAAmB,EACnB,kBAAkB,GACnB,MAAM,mBAAmB,CAAA;AAC1B,OAAO,EAAE,mBAAmB,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAA;AAiBpE,MAAM,KAAK,GAAG,QAAQ,CAAC,OAAO,CAAC,CAAA;AAU/B,MAAM,CAAC,MAAM,OAAO,GAAG,CAAC,GAAG,GAAiB,EAAc,EAAE,CAC1D,GAAG,CAAC,MAAM,CACR,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CACP,CAAC,GAAG,IAAI,EAAE,EAAE,CACV,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAClB,CAAA;AAEH,MAAM,WAAW,GAAG,CAAC,MAAc,EAAE,OAAuB,EAAE,EAAE,CAC9D,MAAM,CAAC,IAAI,EAAE,KAAK,KAAK,IAAI,IAAI,CAAC,CAAC,OAAO,CAAC,YAAY,CAAA;AAEvD,SAAS,wBAAwB,CAC/B,IAAiC,EACjC,QAAgD;IAEhD,IAAI,IAAI,EAAE;QAER,MAAM,OAAO,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAA;QAC9B,IAAI,OAAO,OAAO,KAAK,UAAU,EAAE;YACjC,OAAO,OAAO,CAAA;SACf;KACF;IACD,OAAO,SAAS,CAAA;AAClB,CAAC;AASD,SAAS,sBAAsB,CAAC,EAC9B,OAAO,EAAE,EAAE,OAAO,EAAE,GAAG,OAAO,EAAE,EAChC,IAAI,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,IAAI,EAAE,GAAG,EAAE,EACnC,GAAG,MAAM,EACF;IACP,MAAM,EAAE,GAAG,IAAI,EAAE,EAAE,IAAI,MAAM,EAAE,CAAA;IAC/B,MAAM,GAAG,GAAG,IAAI,EAAE,GAAG,IAAI,EAAE,CAAA;IAE3B,OAAO;QACL,GAAG,MAAM;QACT,OAAO,EAAE,EAAE,GAAG,CAAC,OAAO,IAAI,EAAE,aAAa,EAAE,OAAO,EAAE,CAAC,EAAE,GAAG,OAAO,EAAE;QACnE,IAAI,EAAE,EAAE,GAAG,IAAI,EAAE,EAAE,EAAE,GAAG,EAAE,YAAY,EAAE,IAAI,CAAC,GAAG,EAAE,EAAE;KACrD,CAAA;AACH,CAAC;AAED,MAAM,oCAAoC,GAAG,CAC3C,QAAkB,EAClB,KAAa,EACb,EAAE,CAAC,CAAC;IACJ,GAAG,QAAQ;IACX,MAAM,EAAE,EAAE,KAAK,EAAE,GAAG,QAAQ,CAAC,MAAM,EAAE;IACrC,GAAG,CAAC,QAAQ,CAAC,MAAM,KAAK,IAAI;QAC1B,CAAC,CAAC,EAAE,MAAM,EAAE,QAAQ,CAAC,MAAM,IAAI,UAAU,EAAE;QAC3C,CAAC,CAAC,EAAE,CAAC;CACR,CAAC,CAAA;AAEF,KAAK,UAAU,oBAAoB,CAAC,MAAc,EAAE,UAAsB;IACxE,MAAM,EAAE,aAAa,EAAE,GAAG,MAAM,CAAC,OAAO,CAAA;IACxC,IAAI,OAAO,aAAa,KAAK,QAAQ,EAAE;QACrC,OAAO,EAAE,MAAM,EAAE,CAAA;KAClB;IAED,MAAM,OAAO,GAAG,UAAU,CAAC,SAAS,EAAE,aAAa,CAAC,CAAA;IACpD,IAAI,CAAC,OAAO,EAAE;QACZ,OAAO;YACL,MAAM,EAAE,gBAAgB,CACtB,MAAM,EACN,mBAAmB,aAAa,aAAa,EAC7C,UAAU,EACV,YAAY,CACb;SACF,CAAA;KACF;IACD,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,kBAAkB,CAAC,MAAM,EAAE,IAAI,CAAC,CAAA;IAC/D,IAAI,CAAC,QAAQ,EAAE;QACb,OAAO;YACL,MAAM,EAAE,gBAAgB,CACtB,MAAM,EACN,yDAAyD,aAAa,GAAG,EACzE,UAAU,EACV,YAAY,CACb;SACF,CAAA;KACF;IAED,IAAI,cAAc,CAAA;IAClB,MAAM,gBAAgB,GAAG,MAAM,QAAQ,CAAC,cAAc,CAAC,MAAM,CAAC,CAAA;IAC9D,IAAI,gBAAgB,EAAE;QACpB,cAAc,GAAG,mBAAmB,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAA;KAC/D;SAAM;QACL,cAAc,GAAG,MAAM,OAAO,CAAC,qBAAqB,CAClD,kBAAkB,CAAC,MAAM,EAAE,QAAQ,CAAC,EACpC,QAAQ,CACT,CAAA;KACF;IACD,OAAO,EAAE,MAAM,EAAE,cAAc,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAA;AACtD,CAAC;AAED,KAAK,UAAU,sBAAsB,CACnC,MAAc,EACd,OAAiB,EACjB,QAAmB;IAEnB,OAAO,OAAO,IAAI,QAAQ;QACxB,CAAC,CAAC,MAAM,OAAO,CAAC,sBAAsB,CAClC,kBAAkB,CAAC,MAAM,EAAE,QAAQ,CAAC,EACpC,QAAQ,CACT;QACH,CAAC,CAAC,MAAM,CAAC,QAAQ,IAAI,EAAE,CAAA;AAC3B,CAAC;AAED,KAAK,UAAU,YAAY,CACzB,WAA4B,EAC5B,MAAc,EACd,SAAiC,EACjC,QAAuC;IAGvC,MAAM,OAAO,GAAG,wBAAwB,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAA;IAC/D,IAAI,CAAC,OAAO,EAAE;QACZ,OAAO,mBAAmB,CACxB,kBAAkB,MAAM,CAAC,WAAW,CAAC,SAAS,EAC9C,UAAU,EACV,YAAY,CACb,CAAA;KACF;IAGD,OAAO,SAAS,CACd,MAAM,OAAO,CAAC,MAAM,EAAE,SAAS,CAAC,EAChC,OAAO,WAAW,KAAK,QAAQ;QAC7B,CAAC,CAAC,WAAW,WAAW,EAAE;QAC1B,CAAC,CAAC,eAAe,CACpB,CAAA;AACH,CAAC;AASD,MAAM,CAAC,OAAO,UAAU,cAAc,CAAC,EACrC,QAAQ,GAAG,EAAE,EACb,OAAO,GAAG,IAAI,GAAG,EAAE,EACnB,QAAQ,GAAG,EAAE,EACb,UAAU,GAAG,EAAE,EACf,OAAO,GACG;IAEV,MAAM,UAAU,GAAG,eAAe,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAA;IACrD,MAAM,YAAY,GAChB,UAAU,CAAC,MAAM,GAAG,CAAC;QACnB,CAAC,CAAC,OAAO,CAAC,GAAG,UAAU,CAAC;QACxB,CAAC,CAAC,CAAC,IAAqB,EAAE,EAAE,CAAC,KAAK,EAAE,MAAc,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;IAGvE,MAAM,QAAQ,GAAG,CAAC,SAAwB,EAAE,EAAE,CAC5C,SAAS,CAAC,KAAK,EAAE,WAAW,EAAE,EAAE;QAC9B,KAAK,CAAC,cAAc,EAAE,SAAS,CAAC,CAAA;QAChC,IAAI,CAAC,SAAS,EAAE;YACd,OAAO;gBACL,MAAM,EAAE,UAAU;gBAClB,KAAK,EAAE,sBAAsB;gBAC7B,MAAM,EAAE,UAAU;aACnB,CAAA;SACF;QAED,IAAI,QAAQ,CAAA;QACZ,MAAM,EACJ,MAAM,EACN,OAAO,EAAE,eAAe,EACxB,QAAQ,EAAE,gBAAgB,GAC3B,GAAG,MAAM,oBAAoB,CAC5B,sBAAsB,CAAC,SAAS,CAAC,EACjC,UAAU,CACX,CAAA;QAED,IAAI,MAAM,CAAC,QAAQ,EAAE,MAAM,EAAE;YAC3B,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAA;SAC3B;aAAM;YACL,MAAM,SAAS,GAAG,EAAE,QAAQ,EAAE,UAAU,EAAE,OAAO,EAAE,WAAW,EAAE,CAAA;YAEhE,IAAI;gBACF,IAAI,WAAW,CAAC,SAAS,EAAE,OAAO,CAAC,EAAE;oBAGnC,QAAQ,GAAG,MAAM,YAAY,CAC3B,YAAY,EACZ,MAAM,EACN,SAAS,EACT,QAAQ,CACT,CAAA;iBACF;qBAAM;oBAGL,MAAM,IAAI,GAAG,KAAK,EAAE,MAAc,EAAE,EAAE,CACpC,YAAY,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAA;oBACxD,QAAQ,GAAG,SAAS,CAClB,MAAM,YAAY,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,EAChC,qBAAqB,CACtB,CAAA;iBACF;aACF;YAAC,OAAO,GAAG,EAAE;gBACZ,QAAQ,GAAG,mBAAmB,CAC5B,6BACE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CACjD,EAAE,EACF,UAAU,CACX,CAAA;aACF;SACF;QAED,OAAO,oCAAoC,CACzC,MAAM,sBAAsB,CAC1B,mBAAmB,CAAC,MAAM,EAAE,QAAQ,CAAC,EACrC,eAAe,EACf,gBAAgB,CACjB,EACD,MAAM,CAAC,IAAI,EAAE,KAAK,CACnB,CAAA;IACH,CAAC,CAAC,CAAA;IAEJ,OAAO,QAAQ,CAAA;AACjB,CAAC"}
@@ -10,7 +10,7 @@ export default async function queue(action, { dispatch, getService, options: { q
10
10
  return dispatch(action);
11
11
  }
12
12
  const nextAction = prepareQueuedAction(action);
13
- const response = await service.send(nextAction);
13
+ const response = await service.send(nextAction, null);
14
14
  const status = response?.status === 'ok' ? 'queued' : response?.status;
15
15
  return setOrigin({
16
16
  ...action.response,
@@ -1 +1 @@
1
- {"version":3,"file":"queue.js","sourceRoot":"","sources":["../../src/handlers/queue.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAA;AAChD,OAAO,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAA;AAGlE,MAAM,mBAAmB,GAAG,CAAC,EAAE,IAAI,EAAE,GAAG,MAAM,EAAU,EAAE,EAAE,CAC1D,iBAAiB,CAAC;IAChB,GAAG,MAAM;IACT,IAAI,EAAE,EAAE,GAAG,IAAI,EAAE,QAAQ,EAAE,IAAI,CAAC,GAAG,EAAE,EAAE;CACxC,CAAC,CAAA;AASJ,MAAM,CAAC,OAAO,CAAC,KAAK,UAAU,KAAK,CACjC,MAAc,EACd,EAAE,QAAQ,EAAE,UAAU,EAAE,OAAO,EAAE,EAAE,YAAY,EAAE,EAA0B;IAE3E,MAAM,OAAO,GAAG,UAAU,CAAC,SAAS,EAAE,YAAY,CAAC,CAAA;IACnD,IAAI,CAAC,OAAO,EAAE;QACZ,OAAO,QAAQ,CAAC,MAAM,CAAC,CAAA;KACxB;IAED,MAAM,UAAU,GAAG,mBAAmB,CAAC,MAAM,CAAC,CAAA;IAC9C,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,CAAA;IAC/C,MAAM,MAAM,GAAG,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,EAAE,MAAM,CAAA;IAEtE,OAAO,SAAS,CACd;QACE,GAAG,MAAM,CAAC,QAAQ;QAClB,GAAG,QAAQ;QACX,MAAM,EAAE,MAAM,IAAI,aAAa;QAC/B,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,iCAAiC,EAAE,CAAC;KAChE,EACD,eAAe,CAChB,CAAA;AACH,CAAC"}
1
+ {"version":3,"file":"queue.js","sourceRoot":"","sources":["../../src/handlers/queue.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAA;AAChD,OAAO,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAA;AAGlE,MAAM,mBAAmB,GAAG,CAAC,EAAE,IAAI,EAAE,GAAG,MAAM,EAAU,EAAE,EAAE,CAC1D,iBAAiB,CAAC;IAChB,GAAG,MAAM;IACT,IAAI,EAAE,EAAE,GAAG,IAAI,EAAE,QAAQ,EAAE,IAAI,CAAC,GAAG,EAAE,EAAE;CACxC,CAAC,CAAA;AASJ,MAAM,CAAC,OAAO,CAAC,KAAK,UAAU,KAAK,CACjC,MAAc,EACd,EAAE,QAAQ,EAAE,UAAU,EAAE,OAAO,EAAE,EAAE,YAAY,EAAE,EAA0B;IAE3E,MAAM,OAAO,GAAG,UAAU,CAAC,SAAS,EAAE,YAAY,CAAC,CAAA;IACnD,IAAI,CAAC,OAAO,EAAE;QACZ,OAAO,QAAQ,CAAC,MAAM,CAAC,CAAA;KACxB;IAED,MAAM,UAAU,GAAG,mBAAmB,CAAC,MAAM,CAAC,CAAA;IAC9C,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,CAAA;IACrD,MAAM,MAAM,GAAG,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,EAAE,MAAM,CAAA;IAEtE,OAAO,SAAS,CACd;QACE,GAAG,MAAM,CAAC,QAAQ;QAClB,GAAG,QAAQ;QACX,MAAM,EAAE,MAAM,IAAI,aAAa;QAC/B,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,iCAAiC,EAAE,CAAC;KAChE,EACD,eAAe,CAChB,CAAA;AACH,CAAC"}
@@ -7,7 +7,7 @@ export default async function service(action, { getService }) {
7
7
  return createUnknownServiceError(undefined, serviceId, 'SERVICE');
8
8
  }
9
9
  const nextAction = setAuthorizedMark(action);
10
- const response = await service.send(nextAction);
10
+ const response = await service.send(nextAction, null);
11
11
  return response?.status
12
12
  ? response
13
13
  : createErrorResponse(`Service '${serviceId}' did not respond correctly to SERVICE action`, 'handler:SERVICE', 'badresponse');
@@ -1 +1 @@
1
- {"version":3,"file":"service.js","sourceRoot":"","sources":["../../src/handlers/service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAA;AAClE,OAAO,EACL,mBAAmB,EACnB,yBAAyB,GAC1B,MAAM,sBAAsB,CAAA;AAQ7B,MAAM,CAAC,OAAO,CAAC,KAAK,UAAU,OAAO,CACnC,MAAc,EACd,EAAE,UAAU,EAA0B;IAEtC,MAAM,SAAS,GAAG,MAAM,CAAC,OAAO,CAAC,aAAa,CAAA;IAC9C,MAAM,OAAO,GAAG,UAAU,CAAC,SAAS,EAAE,SAAS,CAAC,CAAA;IAChD,IAAI,CAAC,OAAO,EAAE;QACZ,OAAO,yBAAyB,CAAC,SAAS,EAAE,SAAS,EAAE,SAAS,CAAC,CAAA;KAClE;IAED,MAAM,UAAU,GAAG,iBAAiB,CAAC,MAAM,CAAC,CAAA;IAC5C,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,CAAA;IAE/C,OAAO,QAAQ,EAAE,MAAM;QACrB,CAAC,CAAC,QAAQ;QACV,CAAC,CAAC,mBAAmB,CACjB,YAAY,SAAS,+CAA+C,EACpE,iBAAiB,EACjB,aAAa,CACd,CAAA;AACP,CAAC"}
1
+ {"version":3,"file":"service.js","sourceRoot":"","sources":["../../src/handlers/service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAA;AAClE,OAAO,EACL,mBAAmB,EACnB,yBAAyB,GAC1B,MAAM,sBAAsB,CAAA;AAQ7B,MAAM,CAAC,OAAO,CAAC,KAAK,UAAU,OAAO,CACnC,MAAc,EACd,EAAE,UAAU,EAA0B;IAEtC,MAAM,SAAS,GAAG,MAAM,CAAC,OAAO,CAAC,aAAa,CAAA;IAC9C,MAAM,OAAO,GAAG,UAAU,CAAC,SAAS,EAAE,SAAS,CAAC,CAAA;IAChD,IAAI,CAAC,OAAO,EAAE;QACZ,OAAO,yBAAyB,CAAC,SAAS,EAAE,SAAS,EAAE,SAAS,CAAC,CAAA;KAClE;IAED,MAAM,UAAU,GAAG,iBAAiB,CAAC,MAAM,CAAC,CAAA;IAC5C,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,CAAA;IAErD,OAAO,QAAQ,EAAE,MAAM;QACrB,CAAC,CAAC,QAAQ;QACV,CAAC,CAAC,mBAAmB,CACjB,YAAY,SAAS,+CAA+C,EACpE,iBAAiB,EACjB,aAAa,CACd,CAAA;AACP,CAAC"}
package/dist/jobs/Job.js CHANGED
@@ -1,8 +1,9 @@
1
+ import { nanoid } from 'nanoid';
1
2
  import Schedule from './Schedule.js';
2
3
  import Step, { getPrevStepId, getLastJobWithResponse, prepareMutation, mutateResponse, } from './Step.js';
3
4
  import { isObject, isOkResponse, isErrorResponse } from '../utils/is.js';
4
5
  import { setOrigin } from '../utils/response.js';
5
- const isJobStep = (job) => isObject(job) && typeof job.id === 'string' && isObject(job.action);
6
+ const isJobStep = (job) => isObject(job) && isObject(job.action);
6
7
  const generateSubMeta = ({ ident, project, queue, cid }, jobId) => ({
7
8
  ident,
8
9
  jobId,
@@ -52,7 +53,8 @@ function getResponse(jobId, steps, responses, isFlow) {
52
53
  return setMessageAndOrigin(lastResponse, jobId, isFlow);
53
54
  }
54
55
  }
55
- const removePostmutation = ({ postmutation, responseMutation, ...job }) => job;
56
+ const getId = (jobDef) => typeof jobDef.id === 'string' && jobDef.id ? jobDef.id : nanoid();
57
+ const removePostmutationAndSetId = ({ postmutation, responseMutation, ...job }, id) => ({ ...job, id });
56
58
  export default class Job {
57
59
  id;
58
60
  schedule;
@@ -60,7 +62,7 @@ export default class Job {
60
62
  #postmutator;
61
63
  #isFlow = false;
62
64
  constructor(jobDef, mapOptions) {
63
- this.id = jobDef.id || '';
65
+ this.id = getId(jobDef);
64
66
  if (Array.isArray(jobDef.flow)) {
65
67
  this.#isFlow = true;
66
68
  this.#steps = jobDef.flow
@@ -68,7 +70,9 @@ export default class Job {
68
70
  .map((stepDef, index, steps) => new Step(stepDef, mapOptions, getPrevStepId(index, steps)));
69
71
  }
70
72
  else if (isJobStep(jobDef)) {
71
- this.#steps = [new Step(removePostmutation(jobDef), mapOptions)];
73
+ this.#steps = [
74
+ new Step(removePostmutationAndSetId(jobDef, this.id), mapOptions),
75
+ ];
72
76
  }
73
77
  const postmutation = jobDef.postmutation || jobDef.responseMutation;
74
78
  this.#postmutator = postmutation
@@ -1 +1 @@
1
- {"version":3,"file":"Job.js","sourceRoot":"","sources":["../../src/jobs/Job.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Job.js","sourceRoot":"","sources":["../../src/jobs/Job.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAA;AAC/B,OAAO,QAAQ,MAAM,eAAe,CAAA;AACpC,OAAO,IAAI,EAAE,EACX,aAAa,EACb,sBAAsB,EACtB,eAAe,EACf,cAAc,GACf,MAAM,WAAW,CAAA;AAClB,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAA;AACxE,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAA;AAWhD,MAAM,SAAS,GAAG,CAAC,GAAY,EAAqB,EAAE,CACpD,QAAQ,CAAC,GAAG,CAAC,IAAI,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,CAAA;AAEvC,MAAM,eAAe,GAAG,CACtB,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,GAAG,EAAQ,EACpC,KAAa,EACb,EAAE,CAAC,CAAC;IACJ,KAAK;IACL,KAAK;IACL,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IAC/B,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IAC3B,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;CACxB,CAAC,CAAA;AAEF,MAAM,eAAe,GAAG,CAAC,MAAe,EAAE,EAAE,CAAC,CAAC,QAAkB,EAAE,EAAE;IAClE,MAAM,OAAO,GAAG,QAAQ,CAAC,KAAK,IAAI,QAAQ,CAAC,OAAO,IAAI,eAAe,CAAA;IACrE,OAAO,eAAe,CAAC,QAAQ,CAAC,IAAI,QAAQ,CAAC,OAAO;QAClD,CAAC,CAAC,MAAM;YACN,CAAC,CAAC,IAAI,QAAQ,CAAC,MAAM,MAAM,QAAQ,CAAC,MAAM,KAAK,OAAO,GAAG;YACzD,CAAC,CAAC,IAAI,QAAQ,CAAC,MAAM,KAAK,OAAO,EAAE;QACrC,CAAC,CAAC,SAAS,CAAA;AACf,CAAC,CAAA;AAED,MAAM,sBAAsB,GAAG,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,QAAQ,EAAY,EAAE,EAAE,CAC5E,QAAQ,CAAA;AAEV,SAAS,mBAAmB,CAC1B,QAAkB,EAClB,KAAa,EACb,MAAe;IAEf,MAAM,SAAS,GAAG,QAAQ,CAAC,SAAS,IAAI,CAAC,QAAQ,CAAC,CAAA;IAClD,MAAM,YAAY,GAAG,SAAS;SAC3B,GAAG,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC;SAC5B,MAAM,CAAC,OAAO,CAAC;SACf,IAAI,CAAC,IAAI,CAAC,CAAA;IACb,OAAO,YAAY,CAAC,QAAQ,CAAC;QAC3B,CAAC,CAAC;YACE,GAAG,sBAAsB,CAAC,QAAQ,CAAC;YACnC,MAAM,EAAE,IAAI;YACZ,GAAG,CAAC,YAAY;gBACd,CAAC,CAAC,EAAE,OAAO,EAAE,uBAAuB,YAAY,EAAE,EAAE;gBACpD,CAAC,CAAC,EAAE,CAAC;SACR;QACH,CAAC,CAAC;YACE,GAAG,sBAAsB,CAAC,QAAQ,CAAC;YACnC,MAAM,EAAE,YAAY,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO;YAC/C,KAAK,EAAE,MAAM;gBACX,CAAC,CAAC,yBAAyB,KAAK,kCAAkC,YAAY,EAAE;gBAChF,CAAC,CAAC,yBAAyB,KAAK,MAAM,YAAY,EAAE;YACtD,SAAS,EAAE,SAAS,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CACpC,SAAS,CAAC,QAAQ,EAAE,OAAO,KAAK,OAAO,EAAE,IAAI,CAAC,CAC/C;YACD,MAAM,EAAE,OAAO,KAAK,EAAE;SACvB,CAAA;AACP,CAAC;AAED,SAAS,WAAW,CAClB,KAAa,EACb,KAAa,EACb,SAAiC,EACjC,MAAe;IAEf,MAAM,YAAY,GAAG,sBAAsB,CAAC,KAAK,EAAE,SAAS,CAAC,CAAA;IAC7D,IAAI,CAAC,YAAY,EAAE;QACjB,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,CAAA;KAC9B;SAAM;QACL,OAAO,mBAAmB,CAAC,YAAY,EAAE,KAAK,EAAE,MAAM,CAAC,CAAA;KACxD;AACH,CAAC;AAED,MAAM,KAAK,GAAG,CAAC,MAAc,EAAE,EAAE,CAC/B,OAAO,MAAM,CAAC,EAAE,KAAK,QAAQ,IAAI,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAA;AAEnE,MAAM,0BAA0B,GAAG,CACjC,EAAE,YAAY,EAAE,gBAAgB,EAAE,GAAG,GAAG,EAAc,EACtD,EAAU,EACV,EAAE,CAAC,CAAC,EAAE,GAAG,GAAG,EAAE,EAAE,EAAE,CAAC,CAAA;AAErB,MAAM,CAAC,OAAO,OAAO,GAAG;IACtB,EAAE,CAAQ;IACV,QAAQ,CAAW;IACnB,MAAM,GAAW,EAAE,CAAA;IACnB,YAAY,CAA2B;IACvC,OAAO,GAAG,KAAK,CAAA;IAEf,YAAY,MAAc,EAAE,UAAsB;QAChD,IAAI,CAAC,EAAE,GAAG,KAAK,CAAC,MAAM,CAAC,CAAA;QAEvB,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE;YAC9B,IAAI,CAAC,OAAO,GAAG,IAAI,CAAA;YACnB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC,IAAI;iBACtB,MAAM,CACL,CAAC,IAAI,EAAqC,EAAE,CAC1C,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,SAAS,CAAC,IAAI,CAAC,CACzC;iBACA,GAAG,CACF,CAAC,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,CACxB,IAAI,IAAI,CAAC,OAAO,EAAE,UAAU,EAAE,aAAa,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC,CAC7D,CAAA;SACJ;aAAM,IAAI,SAAS,CAAC,MAAM,CAAC,EAAE;YAC5B,IAAI,CAAC,MAAM,GAAG;gBACZ,IAAI,IAAI,CAAC,0BAA0B,CAAC,MAAM,EAAE,IAAI,CAAC,EAAE,CAAC,EAAE,UAAU,CAAC;aAClE,CAAA;SACF;QACD,MAAM,YAAY,GAAG,MAAM,CAAC,YAAY,IAAI,MAAM,CAAC,gBAAgB,CAAA;QACnE,IAAI,CAAC,YAAY,GAAG,YAAY;YAC9B,CAAC,CAAC,eAAe,CAAC,YAAY,EAAE,UAAU,EAAE,CAAC,CAAC,MAAM,CAAC,gBAAgB,CAAC;YACtE,CAAC,CAAC,SAAS,CAAA;QAEb,IAAI,MAAM,CAAC,IAAI,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE;YACzC,IAAI,CAAC,QAAQ,GAAG,IAAI,QAAQ,CAAC,MAAM,CAAC,CAAA;SACrC;IACH,CAAC;IAED,KAAK,CAAC,GAAG,CAAC,MAAc,EAAE,QAAyB;QACjD,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE;YAC5B,OAAO;gBACL,MAAM,EAAE,UAAU;gBAClB,OAAO,EAAE,QAAQ,IAAI,CAAC,EAAE,yBAAyB;gBACjD,MAAM,EAAE,OAAO,IAAI,CAAC,EAAE,EAAE;aACzB,CAAA;SACF;QAED,IAAI,eAAe,GAA2B,EAAE,MAAM,EAAE,CAAA;QACxD,MAAM,IAAI,GAAG,eAAe,CAAC,MAAM,CAAC,IAAI,IAAI,EAAE,EAAE,IAAI,CAAC,EAAE,CAAC,CAAA;QAExD,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,MAAM,EAAE;YAC9B,MAAM,CAAC,SAAS,EAAE,OAAO,CAAC,GAAG,MAAM,IAAI,CAAC,GAAG,CACzC,IAAI,EACJ,eAAe,EACf,QAAQ,CACT,CAAA;YACD,eAAe,GAAG,EAAE,GAAG,eAAe,EAAE,GAAG,SAAS,EAAE,CAAA;YACtD,IAAI,OAAO,EAAE;gBACX,MAAK;aACN;SACF;QAED,MAAM,QAAQ,GAAG,WAAW,CAC1B,IAAI,CAAC,EAAE,EACP,IAAI,CAAC,MAAM,EACX,eAAe,EACf,IAAI,CAAC,OAAO,CACb,CAAA;QACD,eAAe,GAAG,EAAE,GAAG,eAAe,EAAE,MAAM,EAAE,EAAE,GAAG,MAAM,EAAE,QAAQ,EAAE,EAAE,CAAA;QAEzE,IAAI,IAAI,CAAC,YAAY,EAAE;YACrB,MAAM,EAAE,QAAQ,EAAE,eAAe,EAAE,GAAG,MAAM,cAAc,CACxD,MAAM,EACN,OAAO,IAAI,CAAC,EAAE,EAAE,EAChB,QAAQ,EACR,eAAe,EACf,IAAI,CAAC,YAAY,CAClB,CAAA;YACD,OAAO,eAAe,IAAI,QAAQ,CAAA;SACnC;aAAM;YACL,OAAO,QAAQ,CAAA;SAChB;IACH,CAAC;CACF"}
@@ -38,15 +38,20 @@ const typeFromDef = (prop) => isFieldDefinition(prop)
38
38
  : undefined;
39
39
  const hasArrayNotation = (key) => typeof key === 'string' && key.endsWith('[]');
40
40
  const removeArrayNotation = (key) => hasArrayNotation(key) ? key.slice(0, key.length - 2) : key;
41
- function createFieldCast(def, schemas) {
41
+ function createCastFn(def, schemas) {
42
42
  if (isFieldDefinition(def)) {
43
43
  if (def?.const !== undefined) {
44
44
  return () => () => def.const;
45
45
  }
46
46
  const castFn = castFnFromType(removeArrayNotation(def.$type), schemas);
47
- return (isRev) => function castValue(rawValue) {
47
+ return (isRev, noDefaults = false) => function castValue(rawValue) {
48
48
  const value = unwrapValue(rawValue);
49
- return value === undefined ? def.default : castFn(value, isRev);
49
+ if (value === undefined) {
50
+ return noDefaults ? undefined : def.default;
51
+ }
52
+ else {
53
+ return castFn(value, isRev);
54
+ }
50
55
  };
51
56
  }
52
57
  else if (isShape(def)) {
@@ -58,17 +63,22 @@ function createFieldCast(def, schemas) {
58
63
  }
59
64
  const unwrapSingleArrayItem = (fn) => (value) => Array.isArray(value) && value.length === 1 ? fn(value[0]) : fn(value);
60
65
  const handleArray = (fn, isArrayExpected, type) => isArrayExpected
61
- ? (isRev) => (value) => value === undefined ? undefined : ensureArray(value).map(fn(isRev))
66
+ ? (isRev, noDefaults) => (value) => value === undefined
67
+ ? undefined
68
+ : ensureArray(value).map(fn(isRev, noDefaults))
62
69
  : type === 'unknown'
63
- ? (isRev) => fn(isRev)
64
- : (isRev) => unwrapSingleArrayItem(fn(isRev));
65
- function getDates(shape, createdAt, updatedAt) {
66
- const nextCreatedAt = shape.createdAt
70
+ ? (isRev, noDefaults) => fn(isRev, noDefaults)
71
+ : (isRev, noDefaults) => unwrapSingleArrayItem(fn(isRev, noDefaults));
72
+ function getDates(shouldHaveCreatedAt, shouldHaveUpdatedAt, createdAt, updatedAt, noDefaults) {
73
+ if (noDefaults) {
74
+ return {};
75
+ }
76
+ const nextCreatedAt = shouldHaveCreatedAt
67
77
  ? createdAt
68
78
  ? createdAt
69
79
  : updatedAt ?? new Date()
70
80
  : undefined;
71
- const nextUpdatedAt = shape.updatedAt
81
+ const nextUpdatedAt = shouldHaveUpdatedAt
72
82
  ? updatedAt
73
83
  ? updatedAt
74
84
  : nextCreatedAt ?? new Date()
@@ -78,8 +88,8 @@ function getDates(shape, createdAt, updatedAt) {
78
88
  ...(nextUpdatedAt ? { updatedAt: nextUpdatedAt } : {}),
79
89
  };
80
90
  }
81
- function createCastFn(key, def, schemas) {
82
- const cast = createFieldCast(def, schemas);
91
+ function createCastFnHandlingArrays(key, def, schemas) {
92
+ const cast = createCastFn(def, schemas);
83
93
  if (cast) {
84
94
  const type = typeFromDef(def);
85
95
  return handleArray(cast, hasArrayNotation(key) || hasArrayNotation(type), type);
@@ -88,37 +98,47 @@ function createCastFn(key, def, schemas) {
88
98
  return undefined;
89
99
  }
90
100
  }
91
- const completeItemBeforeCast = ({ id, createdAt, updatedAt, ...item }, shape, doGenerateId) => ({
92
- id: id ?? (doGenerateId ? nanoid() : null),
101
+ const completeItemBeforeCast = (shouldHaveCreatedAt, shouldHaveUpdatedAt, doGenerateId) => ({ id, createdAt, updatedAt, ...item }, noDefaults) => ({
102
+ id: id ?? (doGenerateId && !noDefaults ? nanoid() : null),
93
103
  ...item,
94
- ...getDates(shape, createdAt, updatedAt),
104
+ ...getDates(shouldHaveCreatedAt, shouldHaveUpdatedAt, createdAt, updatedAt, noDefaults),
95
105
  });
106
+ const castField = (item, isRev, noDefaults) => ([key, cast]) => [
107
+ key,
108
+ cast(isRev, noDefaults)(item[key]),
109
+ ];
110
+ const fieldHasValue = ([_, value]) => value !== undefined;
111
+ const createFieldCast = (schemas) => ([key, def]) => [removeArrayNotation(key), createCastFnHandlingArrays(key, def, schemas)];
112
+ const entryHasCastFn = (entry) => entry[1] !== undefined;
113
+ const includeType = (isRev, type) => !isRev && typeof type === 'string' ? [['$type', type]] : [];
114
+ const includeIsNewAndIsDeleted = (item) => [
115
+ ...(item.isNew === true ? [['isNew', true]] : []),
116
+ ...(item.isDeleted === true ? [['isDeleted', true]] : []),
117
+ ];
118
+ const createCastItemFn = (completeItem, fields, type) => (isRev, noDefaults) => function castItem(rawItem) {
119
+ if (!isObject(rawItem)) {
120
+ return undefined;
121
+ }
122
+ const item = completeItem(rawItem, noDefaults);
123
+ return Object.fromEntries([
124
+ ...fields.map(castField(item, isRev, noDefaults)).filter(fieldHasValue),
125
+ ...includeType(isRev, type),
126
+ ...includeIsNewAndIsDeleted(item),
127
+ ]);
128
+ };
96
129
  function createShapeCast(shape, type, schemas, doGenerateId = false) {
97
130
  const fields = Object.entries(shape)
98
- .map(([key, def]) => [
99
- removeArrayNotation(key),
100
- createCastFn(key, def, schemas),
101
- ])
102
- .filter(([, cast]) => cast !== undefined);
103
- return (isRev) => function castItem(rawItem) {
104
- if (isObject(rawItem)) {
105
- const item = completeItemBeforeCast(rawItem, shape, doGenerateId);
106
- return Object.fromEntries([
107
- ...fields.map(([key, cast]) => [key, cast(isRev)(item[key])]),
108
- ...(!isRev && typeof type === 'string' ? [['$type', type]] : []),
109
- ...(item.isNew === true ? [['isNew', true]] : []),
110
- ...(item.isDeleted === true ? [['isDeleted', true]] : []),
111
- ]);
112
- }
113
- else {
114
- return undefined;
115
- }
116
- };
131
+ .map(createFieldCast(schemas))
132
+ .filter(entryHasCastFn);
133
+ const shouldHaveCreatedAt = !!shape.createdAt;
134
+ const shouldHaveUpdatedAt = !!shape.updatedAt;
135
+ const completeItem = completeItemBeforeCast(shouldHaveCreatedAt, shouldHaveUpdatedAt, doGenerateId);
136
+ return createCastItemFn(completeItem, fields, type);
117
137
  }
118
138
  export default function createCast(shape, type, schemas = new Map(), doGenerateId = false) {
119
139
  const castShape = createShapeCast(shape, type, schemas, doGenerateId);
120
- return function castItem(data, isRev = false) {
121
- const casted = mapAny(castShape(isRev), data);
140
+ return function castItem(data, isRev = false, noDefaults = false) {
141
+ const casted = mapAny(castShape(isRev, noDefaults), data);
122
142
  return Array.isArray(casted) ? casted.filter(isNotNullOrUndefined) : casted;
123
143
  };
124
144
  }
@@ -1 +1 @@
1
- {"version":3,"file":"createCast.js","sourceRoot":"","sources":["../../src/schema/createCast.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"createCast.js","sourceRoot":"","sources":["../../src/schema/createCast.ts"],"names":[],"mappings":"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"}
@@ -37,6 +37,6 @@ export interface SchemaDef {
37
37
  internal?: boolean;
38
38
  }
39
39
  export interface CastFn {
40
- (data: unknown, isRev?: boolean): unknown;
40
+ (data: unknown, isRev?: boolean, noDefaults?: boolean): unknown;
41
41
  }
42
42
  export {};
@@ -1,4 +1,5 @@
1
1
  import type { TransformDefinition } from 'map-transform/types.js';
2
+ import type Auth from './Auth.js';
2
3
  import type { Action, Response, Adapter, MapOptions } from '../types.js';
3
4
  import type { EndpointDef, ServiceOptions, MatchObject, PreparedOptions } from './types.js';
4
5
  export interface PrepareOptions {
@@ -11,7 +12,10 @@ export default class Endpoint {
11
12
  options: PreparedOptions;
12
13
  allowRawRequest?: boolean;
13
14
  allowRawResponse?: boolean;
14
- constructor(endpointDef: EndpointDef, serviceId: string, options: PreparedOptions, mapOptions: MapOptions, serviceMutation?: TransformDefinition, serviceAdapters?: Adapter[], endpointAdapters?: Adapter[]);
15
+ castWithoutDefaults?: boolean;
16
+ outgoingAuth?: Auth;
17
+ incomingAuth?: Auth[];
18
+ constructor(endpointDef: EndpointDef, serviceId: string, options: PreparedOptions, mapOptions: MapOptions, serviceMutation?: TransformDefinition, serviceAdapters?: Adapter[], endpointAdapters?: Adapter[], outgoingAuth?: Auth, incomingAuth?: Auth[]);
15
19
  validateAction(action: Action): Promise<Response | null>;
16
20
  mutate(action: Action, isRev: boolean): Promise<Action>;
17
21
  isMatch(action: Action, isIncoming?: boolean): Promise<boolean>;
@@ -48,22 +48,28 @@ export default class Endpoint {
48
48
  options;
49
49
  allowRawRequest;
50
50
  allowRawResponse;
51
+ castWithoutDefaults;
52
+ outgoingAuth;
53
+ incomingAuth;
51
54
  #origin;
52
55
  #validator;
53
56
  #mutateAction;
54
57
  #checkIfMatch;
55
- constructor(endpointDef, serviceId, options, mapOptions, serviceMutation, serviceAdapters = [], endpointAdapters = []) {
58
+ constructor(endpointDef, serviceId, options, mapOptions, serviceMutation, serviceAdapters = [], endpointAdapters = [], outgoingAuth, incomingAuth) {
56
59
  this.id = endpointDef.id;
57
60
  this.#origin = endpointDef.id
58
61
  ? `service:${serviceId}:endpoint:${endpointDef.id}`
59
62
  : `service:${serviceId}:endpoint`;
60
63
  this.allowRawRequest = endpointDef.allowRawRequest ?? false;
61
64
  this.allowRawResponse = endpointDef.allowRawResponse ?? false;
65
+ this.castWithoutDefaults = endpointDef.castWithoutDefaults ?? false;
62
66
  this.match = endpointDef.match;
63
67
  this.#checkIfMatch = isMatch(endpointDef, mapOptions);
64
68
  this.options = options;
65
69
  this.#validator = prepareValidator(endpointDef.validate, mapOptions);
66
70
  this.#mutateAction = prepareActionMutation(serviceMutation, endpointDef.mutation || endpointDef.mutate, serviceAdapters.map(transformerFromAdapter(serviceId, options.adapters)), endpointAdapters.map(transformerFromAdapter(serviceId, options.adapters)), mapOptions);
71
+ this.outgoingAuth = outgoingAuth;
72
+ this.incomingAuth = incomingAuth;
67
73
  }
68
74
  async validateAction(action) {
69
75
  const [errors] = await this.#validator(action);
@@ -1 +1 @@
1
- {"version":3,"file":"Endpoint.js","sourceRoot":"","sources":["../../src/service/Endpoint.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Endpoint.js","sourceRoot":"","sources":["../../src/service/Endpoint.ts"],"names":[],"mappings":"AACA,OAAO,YAAY,EAAE,EAAE,SAAS,EAAE,MAAM,eAAe,CAAA;AACvD,OAAO,gBAAgB,MAAM,6BAA6B,CAAA;AAC1D,OAAO,OAAO,MAAM,0BAA0B,CAAA;AAC9C,OAAO,EAAE,2BAA2B,EAAE,MAAM,6BAA6B,CAAA;AACzE,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;AAC/C,OAAO,EAAE,oBAAoB,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AAC/D,OAAO,EAAE,gBAAgB,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAA;AAClE,OAAO,gBAAuC,MAAM,wBAAwB,CAAA;AAqB5E,MAAM,YAAY,GAAG,CAAC,EAAE,KAAK,EAAE,GAAG,KAAK,EAAe,EAAE,EAAE,CACxD,KAAK,KAAK,KAAK,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,GAAG,KAAK,EAAE,CAAA;AAEzD,MAAM,eAAe,GAAG,CAAC,EAAE,KAAK,EAAE,GAAG,QAAQ,EAAe,EAAE,EAAE,CAAC,CAAC;IAChE,KAAK,EAAE,YAAY,CAAC,KAAK,IAAI,EAAE,CAAC;IAChC,GAAG,QAAQ;CACZ,CAAC,CAAA;AAKF,SAAS,4BAA4B,CAAC,OAAmB;IACvD,OAAO,GAAG,EAAE,CAAC,KAAK,EAAE,MAAe,EAAE,KAAY,EAAE,EAAE;QACnD,MAAM,aAAa,GAAG,CAAC,MAAM,OAAO,CAAC,MAAM,EAAE,KAAK,CAAC,CAAW,CAAA;QAC9D,OAAO,2BAA2B,CAAC,MAAgB,EAAE,aAAa,CAAC,CAAA;IACrE,CAAC,CAAA;AACH,CAAC;AAED,MAAM,aAAa,GAAG,CAAC,GAAyB,EAAE,EAAE,CAClD,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,GAAG,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,GAAG,CAAA;AAEjD,MAAM,sBAAsB,GAAG,CAC7B,SAAiB,EACjB,UAAmD,EAAE,EACrD,EAAE,CACF,SAAS,wBAAwB,CAC/B,OAAgB;IAEhB,MAAM,SAAS,GAAG,OAAO,CAAC,EAAE,CAAA;IAC5B,MAAM,eAAe,GACnB,OAAO,SAAS,KAAK,QAAQ;QAC3B,CAAC,CAAC,OAAO,CAAC,cAAc,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,EAAE,EAAE,SAAS,CAAC;QAC7D,CAAC,CAAC,EAAE,CAAA;IAIR,OAAO,GAAG,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE,CACnC,KAAK,CAAC,GAAG;QACP,CAAC,CAAC,MAAM,OAAO,CAAC,SAAS,CAAC,MAAgB,EAAE,eAAe,CAAC;QAC5D,CAAC,CAAC,MAAM,OAAO,CAAC,SAAS,CAAC,MAAgB,EAAE,eAAe,CAAC,CAAA;AAClE,CAAC,CAAA;AAEH,SAAS,qBAAqB,CAC5B,eAAgD,EAChD,gBAAiD,EACjD,yBAAuD,EACvD,0BAAwD,EACxD,UAAsB;IAItB,MAAM,cAAc,GAAG,YAAY,CACjC,WAAW,CAAC,eAAe,CAAC;SACzB,GAAG,CAAC,aAAa,CAAC;SAClB,MAAM,CAAC,oBAAoB,CAAC,EAC/B,UAAU,CACX,CAAA;IACD,MAAM,eAAe,GAAG,YAAY,CAClC,WAAW,CAAC,gBAAgB,CAAC;SAC1B,GAAG,CAAC,aAAa,CAAC;SAClB,MAAM,CAAC,oBAAoB,CAAC,EAC/B,UAAU,CACX,CAAA;IAMD,MAAM,QAAQ,GAAG;QACf,GAAG,yBAAyB,CAAC,GAAG,CAAC,CAAC,WAAW,EAAE,EAAE,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC;QACzE,SAAS,CAAC,4BAA4B,CAAC,cAAc,CAAC,CAAC;QACvD,GAAG,0BAA0B,CAAC,GAAG,CAAC,CAAC,WAAW,EAAE,EAAE,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC;QAC1E,SAAS,CAAC,4BAA4B,CAAC,eAAe,CAAC,CAAC;KACzD,CAAA;IACD,OAAO,YAAY,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAA;AAC3C,CAAC;AAKD,MAAM,CAAC,OAAO,OAAO,QAAQ;IAC3B,EAAE,CAAS;IACX,KAAK,CAAc;IACnB,OAAO,CAAiB;IACxB,eAAe,CAAU;IACzB,gBAAgB,CAAU;IAC1B,mBAAmB,CAAU;IAC7B,YAAY,CAAO;IACnB,YAAY,CAAS;IAErB,OAAO,CAAQ;IACf,UAAU,CAAgD;IAC1D,aAAa,CAA0B;IACvC,aAAa,CAA4D;IAEzE,YACE,WAAwB,EACxB,SAAiB,EACjB,OAAwB,EACxB,UAAsB,EACtB,eAAqC,EACrC,kBAA6B,EAAE,EAC/B,mBAA8B,EAAE,EAChC,YAAmB,EACnB,YAAqB;QAErB,IAAI,CAAC,EAAE,GAAG,WAAW,CAAC,EAAE,CAAA;QACxB,IAAI,CAAC,OAAO,GAAG,WAAW,CAAC,EAAE;YAC3B,CAAC,CAAC,WAAW,SAAS,aAAa,WAAW,CAAC,EAAE,EAAE;YACnD,CAAC,CAAC,WAAW,SAAS,WAAW,CAAA;QACnC,IAAI,CAAC,eAAe,GAAG,WAAW,CAAC,eAAe,IAAI,KAAK,CAAA;QAC3D,IAAI,CAAC,gBAAgB,GAAG,WAAW,CAAC,gBAAgB,IAAI,KAAK,CAAA;QAC7D,IAAI,CAAC,mBAAmB,GAAG,WAAW,CAAC,mBAAmB,IAAI,KAAK,CAAA;QACnE,IAAI,CAAC,KAAK,GAAG,WAAW,CAAC,KAAK,CAAA;QAC9B,IAAI,CAAC,aAAa,GAAG,OAAO,CAAC,WAAW,EAAE,UAAU,CAAC,CAAA;QACrD,IAAI,CAAC,OAAO,GAAG,OAAO,CAAA;QAEtB,IAAI,CAAC,UAAU,GAAG,gBAAgB,CAAC,WAAW,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAA;QAEpE,IAAI,CAAC,aAAa,GAAG,qBAAqB,CACxC,eAAe,EACf,WAAW,CAAC,QAAQ,IAAI,WAAW,CAAC,MAAM,EAC1C,eAAe,CAAC,GAAG,CAAC,sBAAsB,CAAC,SAAS,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC,EACxE,gBAAgB,CAAC,GAAG,CAAC,sBAAsB,CAAC,SAAS,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC,EACzE,UAAU,CACX,CAAA;QAED,IAAI,CAAC,YAAY,GAAG,YAAY,CAAA;QAChC,IAAI,CAAC,YAAY,GAAG,YAAY,CAAA;IAClC,CAAC;IAED,KAAK,CAAC,cAAc,CAAC,MAAc;QACjC,MAAM,CAAC,MAAM,CAAC,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAA;QAC9C,MAAM,QAAQ,GAAG,gBAAgB,CAAC,MAAM,CAAC,CAAA;QACzC,OAAO,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,QAAQ,EAAE,YAAY,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAA;IAC1E,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,MAAc,EAAE,KAAc;QACzC,IAAI,CAAC,MAAM,EAAE;YACX,MAAM,IAAI,KAAK,CAAC,0CAA0C,CAAC,CAAA;SAC5D;QACD,OAAO,CAAC,MAAM,IAAI,CAAC,aAAa,CAAC,MAAM,EAAE,EAAE,GAAG,EAAE,KAAK,EAAE,CAAC,CAAW,CAAA;IACrE,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,MAAc,EAAE,UAAoB;QAChD,OAAO,MAAM,IAAI,CAAC,aAAa,CAAC,MAAM,EAAE,UAAU,CAAC,CAAA;IACrD,CAAC;IAED,MAAM,CAAC,cAAc,CAAC,YAA2B;QAC/C,OAAO,YAAY,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAA;IACjE,CAAC;IAED,MAAM,CAAC,KAAK,CAAC,oBAAoB,CAC/B,SAAqB,EACrB,MAAc,EACd,UAAU,GAAG,KAAK;QAElB,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE;YAChC,IAAI,MAAM,QAAQ,CAAC,OAAO,CAAC,MAAM,EAAE,UAAU,CAAC,EAAE;gBAC9C,OAAO,QAAQ,CAAA;aAChB;SACF;QACD,OAAO,SAAS,CAAA;IAClB,CAAC;CACF"}
@@ -24,7 +24,7 @@ export default class Service {
24
24
  mutateIncomingRequest(action: Action, endpoint: Endpoint): Promise<Action>;
25
25
  mutateResponse(action: Action, endpoint: Endpoint): Promise<Response>;
26
26
  mutateIncomingResponse(action: Action, endpoint: Endpoint): Promise<Response>;
27
- send(action: Action): Promise<Response>;
27
+ send(action: Action, endpoint: Endpoint | null): Promise<Response>;
28
28
  listen(dispatch: Dispatch): Promise<Response>;
29
29
  close(): Promise<Response>;
30
30
  }
@@ -13,6 +13,23 @@ import * as authorizeData from './utils/authData.js';
13
13
  import authorizeAction, { isAuthorizedAction } from './utils/authAction.js';
14
14
  import { compose } from '../dispatch.js';
15
15
  const debug = debugLib('great');
16
+ const areWeMissingAdapters = (defs, adapters) => Array.isArray(defs) && defs.length !== adapters.length;
17
+ const createServiceAdapterError = (serviceId) => `Service '${serviceId}' references one or more unknown adapters`;
18
+ const createEndpointAdapterError = (endpoint, serviceId) => `${endpoint.id ? `Endpoint '${endpoint.id}'` : 'An endpoint'} on service '${serviceId}' references one or more unknown adapters`;
19
+ function setUpEndpoint(serviceId, adapters, resolveOutgoingAuth, resolveIncomingAuth, serviceOutgoingAuth, serviceIncomingAuth, serviceOptions, mapOptions, mutation, serviceAdapters) {
20
+ return (endpointDef) => {
21
+ const endpointAdapters = lookupByIds(endpointDef.adapters, adapters);
22
+ if (areWeMissingAdapters(endpointDef.adapters, endpointAdapters)) {
23
+ throw new TypeError(createEndpointAdapterError(endpointDef, serviceId));
24
+ }
25
+ const outgoingAuth = resolveOutgoingAuth(endpointDef.auth) || serviceOutgoingAuth;
26
+ const incomingAuth = resolveIncomingAuth(endpointDef.auth) || serviceIncomingAuth;
27
+ const options = endpointDef.options
28
+ ? mergeOptions(serviceOptions, prepareOptions(endpointDef.options))
29
+ : serviceOptions;
30
+ return new Endpoint(endpointDef, serviceId, options, mapOptions, mutation, serviceAdapters, endpointAdapters, outgoingAuth, incomingAuth);
31
+ };
32
+ }
16
33
  export default class Service {
17
34
  id;
18
35
  meta;
@@ -20,7 +37,7 @@ export default class Service {
20
37
  #options;
21
38
  #endpoints;
22
39
  #transporter;
23
- #auth;
40
+ #outgoingAuth;
24
41
  #incomingAuth;
25
42
  #connection;
26
43
  #authorizeDataFromService;
@@ -38,16 +55,19 @@ export default class Service {
38
55
  throw new TypeError(`Service '${serviceId}' references unknown transporter '${transporterId}'`);
39
56
  }
40
57
  this.#transporter = transporter;
41
- this.#auth = resolveAuth(authenticators, auths, auth);
42
- this.#incomingAuth = resolveIncomingAuth(authenticators, auths, auth);
58
+ const outgoingAuthResolver = resolveAuth(authenticators, auths);
59
+ const incomingAuthResolver = resolveIncomingAuth(authenticators, auths);
60
+ this.#outgoingAuth = outgoingAuthResolver(auth);
61
+ this.#incomingAuth = incomingAuthResolver(auth);
43
62
  this.#authorizeDataFromService = authorizeData.fromService(schemas);
44
63
  this.#authorizeDataToService = authorizeData.toService(schemas);
45
64
  const serviceAdapters = lookupByIds(adapterDefs, adapters);
65
+ if (areWeMissingAdapters(serviceAdapters, adapterDefs)) {
66
+ throw new TypeError(createServiceAdapterError(serviceId));
67
+ }
46
68
  const serviceOptions = prepareOptions(options);
47
69
  this.#options = serviceOptions.transporter;
48
- this.#endpoints = Endpoint.sortAndPrepare(endpointDefs).map((endpoint) => new Endpoint(endpoint, serviceId, endpoint.options
49
- ? mergeOptions(serviceOptions, prepareOptions(endpoint.options))
50
- : serviceOptions, mapOptions, mutation, serviceAdapters, lookupByIds(endpoint.adapters, adapters)));
70
+ this.#endpoints = Endpoint.sortAndPrepare(endpointDefs).map(setUpEndpoint(serviceId, adapters, outgoingAuthResolver, incomingAuthResolver, this.#outgoingAuth, this.#incomingAuth, serviceOptions, mapOptions, mutation, serviceAdapters));
51
71
  this.#middleware =
52
72
  middleware.length > 0 ? compose(...middleware) : (fn) => fn;
53
73
  this.#connection = new Connection(this.#transporter, serviceOptions.transporter, emit);
@@ -56,7 +76,8 @@ export default class Service {
56
76
  return await Endpoint.findMatchingEndpoint(this.#endpoints, action, isIncoming);
57
77
  }
58
78
  async preflightAction(action, endpoint) {
59
- let preparedAction = authorizeAction(this.#schemas, !!this.#auth)(action);
79
+ const outgoingAuth = endpoint.outgoingAuth;
80
+ let preparedAction = authorizeAction(this.#schemas, !!outgoingAuth)(action);
60
81
  if (preparedAction.response?.status) {
61
82
  return preparedAction;
62
83
  }
@@ -64,9 +85,9 @@ export default class Service {
64
85
  if (validateResponse) {
65
86
  return setResponseOnAction(action, validateResponse);
66
87
  }
67
- if (endpoint.options?.transporter.authInData && this.#auth) {
68
- await this.#auth.authenticate(preparedAction);
69
- preparedAction = this.#auth.applyToAction(preparedAction, this.#transporter);
88
+ if (endpoint.options?.transporter.authInData && outgoingAuth) {
89
+ await outgoingAuth.authenticate(preparedAction);
90
+ preparedAction = outgoingAuth.applyToAction(preparedAction, this.#transporter);
70
91
  if (preparedAction.response?.status) {
71
92
  return setResponseOnAction(action, preparedAction.response);
72
93
  }
@@ -134,7 +155,7 @@ export default class Service {
134
155
  const { response } = setOriginOnAction(mutatedAction, 'mutate:response:incoming', false);
135
156
  return response || { status: undefined };
136
157
  }
137
- async send(action) {
158
+ async send(action, endpoint) {
138
159
  if (action.response?.status) {
139
160
  return action.response;
140
161
  }
@@ -144,9 +165,10 @@ export default class Service {
144
165
  if (!isAuthorizedAction(action)) {
145
166
  return createErrorResponse('Action has not been authorized by Integreat', `internal:service:${this.id}`, 'autherror');
146
167
  }
147
- if (this.#auth && !action.meta?.auth) {
148
- await this.#auth.authenticate(action);
149
- action = this.#auth.applyToAction(action, this.#transporter);
168
+ const outgoingAuth = endpoint?.outgoingAuth;
169
+ if (outgoingAuth && !action.meta?.auth) {
170
+ await outgoingAuth.authenticate(action);
171
+ action = outgoingAuth.applyToAction(action, this.#transporter);
150
172
  if (action.response?.status) {
151
173
  return setOrigin(action.response, `service:${this.id}`, true);
152
174
  }
@@ -168,16 +190,16 @@ export default class Service {
168
190
  debug('Transporter is not configured to listen');
169
191
  return createErrorResponse('Transporter is not configured to listen', `service:${this.id}`, 'noaction');
170
192
  }
171
- if (this.#auth && !(await this.#auth.authenticate(null))) {
193
+ if (this.#outgoingAuth && !(await this.#outgoingAuth.authenticate(null))) {
172
194
  debug('Could not authenticate');
173
- return setOrigin(this.#auth.getResponseFromAuth(), `service:${this.id}`, true);
195
+ return setOrigin(this.#outgoingAuth.getResponseFromAuth(), `service:${this.id}`, true);
174
196
  }
175
- if (!(await this.#connection.connect(this.#auth?.getAuthObject(this.#transporter, null)))) {
197
+ if (!(await this.#connection.connect(this.#outgoingAuth?.getAuthObject(this.#transporter, null)))) {
176
198
  debug(`Could not listen to '${this.id}' service. Failed to connect`);
177
199
  return createErrorResponse(`Could not listen to '${this.id}' service. Failed to connect`, `service:${this.id}`);
178
200
  }
179
201
  debug('Calling transporter listen() ...');
180
- return this.#transporter.listen(dispatchIncoming(dispatch, this.#middleware, this.id), this.#connection.object, authenticateCallback(this.#incomingAuth, this.id));
202
+ return this.#transporter.listen(dispatchIncoming(dispatch, this.#middleware, this.id), this.#connection.object, authenticateCallback(this, this.#incomingAuth));
181
203
  }
182
204
  async close() {
183
205
  debug(`Close service '${this.id}'`);
@@ -1 +1 @@
1
- {"version":3,"file":"Service.js","sourceRoot":"","sources":["../../src/service/Service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Service.js","sourceRoot":"","sources":["../../src/service/Service.ts"],"names":[],"mappings":"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"}
@@ -52,12 +52,14 @@ export interface MatchObject {
52
52
  export interface EndpointDef {
53
53
  id?: string;
54
54
  adapters?: (string | Adapter)[];
55
+ auth?: AuthObject | AuthProp;
55
56
  match?: MatchObject;
56
57
  validate?: ValidateObject[];
57
58
  mutation?: TransformDefinition;
58
59
  mutate?: TransformDefinition;
59
60
  allowRawRequest?: boolean;
60
61
  allowRawResponse?: boolean;
62
+ castWithoutDefaults?: boolean;
61
63
  options?: ServiceOptions;
62
64
  }
63
65
  export interface ServiceDef {
@@ -4,7 +4,7 @@ export const castPayload = (action, endpoint, castFn) => ({
4
4
  payload: !endpoint.allowRawRequest && castFn
5
5
  ? {
6
6
  ...action.payload,
7
- data: castFn(action.payload.data),
7
+ data: castFn(action.payload.data, false, endpoint.castWithoutDefaults),
8
8
  }
9
9
  : action.payload,
10
10
  });
@@ -13,7 +13,7 @@ export const castResponse = (action, endpoint, castFn) => !endpoint.allowRawResp
13
13
  ...action,
14
14
  response: {
15
15
  ...action.response,
16
- data: castFn(action.response?.data),
16
+ data: castFn(action.response?.data, false, endpoint.castWithoutDefaults),
17
17
  },
18
18
  }
19
19
  : action;
@@ -1 +1 @@
1
- {"version":3,"file":"cast.js","sourceRoot":"","sources":["../../../src/service/utils/cast.ts"],"names":[],"mappings":"AAKA,MAAM,CAAC,MAAM,SAAS,GAAG,CACvB,OAA4B,EAC5B,IAAwB,EACxB,EAAE,CAAC,CAAC,OAAO,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,CAAA;AAEvE,MAAM,CAAC,MAAM,WAAW,GAAG,CACzB,MAAc,EACd,QAAkB,EAClB,MAAe,EACP,EAAE,CAAC,CAAC;IACZ,GAAG,MAAM;IACT,OAAO,EACL,CAAC,QAAQ,CAAC,eAAe,IAAI,MAAM;QACjC,CAAC,CAAC;YACE,GAAG,MAAM,CAAC,OAAO;YACjB,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC;SAClC;QACH,CAAC,CAAC,MAAM,CAAC,OAAO;CACrB,CAAC,CAAA;AAEF,MAAM,CAAC,MAAM,YAAY,GAAG,CAC1B,MAAc,EACd,QAAkB,EAClB,MAAe,EACP,EAAE,CACV,CAAC,QAAQ,CAAC,gBAAgB,IAAI,MAAM;IAClC,CAAC,CAAC;QACE,GAAG,MAAM;QACT,QAAQ,EAAE;YACR,GAAG,MAAM,CAAC,QAAQ;YAClB,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE,IAAI,CAAC;SACpC;KACF;IACH,CAAC,CAAC,MAAM,CAAA"}
1
+ {"version":3,"file":"cast.js","sourceRoot":"","sources":["../../../src/service/utils/cast.ts"],"names":[],"mappings":"AAKA,MAAM,CAAC,MAAM,SAAS,GAAG,CACvB,OAA4B,EAC5B,IAAwB,EACxB,EAAE,CAAC,CAAC,OAAO,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,CAAA;AAEvE,MAAM,CAAC,MAAM,WAAW,GAAG,CACzB,MAAc,EACd,QAAkB,EAClB,MAAe,EACP,EAAE,CAAC,CAAC;IACZ,GAAG,MAAM;IACT,OAAO,EACL,CAAC,QAAQ,CAAC,eAAe,IAAI,MAAM;QACjC,CAAC,CAAC;YACE,GAAG,MAAM,CAAC,OAAO;YACjB,IAAI,EAAE,MAAM,CACV,MAAM,CAAC,OAAO,CAAC,IAAI,EACnB,KAAK,EACL,QAAQ,CAAC,mBAAmB,CAC7B;SACF;QACH,CAAC,CAAC,MAAM,CAAC,OAAO;CACrB,CAAC,CAAA;AAEF,MAAM,CAAC,MAAM,YAAY,GAAG,CAC1B,MAAc,EACd,QAAkB,EAClB,MAAe,EACP,EAAE,CACV,CAAC,QAAQ,CAAC,gBAAgB,IAAI,MAAM;IAClC,CAAC,CAAC;QACE,GAAG,MAAM;QACT,QAAQ,EAAE;YACR,GAAG,MAAM,CAAC,QAAQ;YAClB,IAAI,EAAE,MAAM,CACV,MAAM,CAAC,QAAQ,EAAE,IAAI,EACrB,KAAK,EACL,QAAQ,CAAC,mBAAmB,CAC7B;SACF;KACF;IACH,CAAC,CAAC,MAAM,CAAA"}
@@ -1,5 +1,6 @@
1
1
  import Auth from '../Auth.js';
2
2
  import type { Authentication } from '../types.js';
3
3
  import type { Action, Response, Dispatch, Middleware } from '../../types.js';
4
- export declare const authenticateCallback: (auths: Auth[] | undefined, serviceId: string) => (authentication: Authentication, action?: Action | null) => Promise<Response<unknown>>;
4
+ import type Service from '../Service.js';
5
+ export declare const authenticateCallback: (service: Service, incomingAuth?: Auth[]) => (authentication: Authentication, action?: Action | null) => Promise<Response<unknown>>;
5
6
  export declare function dispatchIncoming(dispatch: Dispatch, middleware: Middleware, serviceId: string): (action: Action | null) => import("p-progress").PProgress<Response<unknown>>;
@@ -66,13 +66,17 @@ async function runAuths(auths, authentication, action) {
66
66
  }
67
67
  return response || { status: 'noaccess', error: 'No authentication was run' };
68
68
  }
69
- export const authenticateCallback = (auths, serviceId) => async function authenticateFromListen(authentication, action) {
69
+ export const authenticateCallback = (service, incomingAuth) => async function authenticateFromListen(authentication, action) {
70
+ const endpoint = action
71
+ ? await service.endpointFromAction(action)
72
+ : undefined;
73
+ const auths = endpoint?.incomingAuth || incomingAuth;
70
74
  if (auths === undefined) {
71
- return createErrorResponse(`Could not authenticate. Service '${serviceId}' has no incoming authenticator`, `auth:service:${serviceId}`, 'noaction');
75
+ return createErrorResponse(`Could not authenticate. Service '${service.id}' has no incoming authenticator`, `auth:service:${service.id}`, 'noaction');
72
76
  }
73
77
  else {
74
78
  const response = await runAuths(auths, authentication, action || null);
75
- return setOrigin(markIdentAsKnown(response), `auth:service:${serviceId}`, true);
79
+ return setOrigin(markIdentAsKnown(response), `auth:service:${service.id}`, true);
76
80
  }
77
81
  };
78
82
  export function dispatchIncoming(dispatch, middleware, serviceId) {
@@ -1 +1 @@
1
- {"version":3,"file":"incoming.js","sourceRoot":"","sources":["../../../src/service/utils/incoming.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"incoming.js","sourceRoot":"","sources":["../../../src/service/utils/incoming.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import Auth from '../Auth.js';
2
2
  import type { Authenticator } from '../../types.js';
3
3
  import type { AuthObject, AuthProp } from '../types.js';
4
- export declare function resolveAuth(authenticators: Record<string, Authenticator>, auths?: Record<string, Auth>, auth?: AuthObject | AuthProp): Auth | undefined;
5
- export declare function resolveIncomingAuth(authenticators: Record<string, Authenticator>, auths?: Record<string, Auth>, auth?: AuthObject | AuthProp): Auth[] | undefined;
4
+ export declare const resolveAuth: (authenticators: Record<string, Authenticator>, auths?: Record<string, Auth>) => (auth?: AuthObject | AuthProp) => Auth | undefined;
5
+ export declare const resolveIncomingAuth: (authenticators: Record<string, Authenticator>, auths?: Record<string, Auth>) => (auth?: AuthObject | AuthProp) => Auth[] | undefined;
@@ -7,7 +7,7 @@ import { lookupById } from '../../utils/indexUtils.js';
7
7
  const isAuthDef = (def) => isObject(def) &&
8
8
  typeof def.id === 'string' &&
9
9
  typeof def.authenticator === 'string';
10
- export function resolveAuth(authenticators, auths, auth) {
10
+ export const resolveAuth = (authenticators, auths) => function resolveAuth(auth) {
11
11
  if (isObject(auth) && !!auth.outgoing) {
12
12
  auth = auth.outgoing;
13
13
  }
@@ -23,16 +23,16 @@ export function resolveAuth(authenticators, auths, auth) {
23
23
  else {
24
24
  return undefined;
25
25
  }
26
- }
27
- export function resolveIncomingAuth(authenticators, auths, auth) {
26
+ };
27
+ export const resolveIncomingAuth = (authenticators, auths) => function resolveIncomingAuth(auth) {
28
28
  if (isObject(auth) && auth.incoming) {
29
29
  const incomingAuths = ensureArray(auth.incoming);
30
30
  return incomingAuths
31
- .map((incoming) => resolveAuth(authenticators, auths, incoming))
31
+ .map((incoming) => resolveAuth(authenticators, auths)(incoming))
32
32
  .filter(isNotNullOrUndefined);
33
33
  }
34
34
  else {
35
35
  return undefined;
36
36
  }
37
- }
37
+ };
38
38
  //# sourceMappingURL=resolveAuth.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"resolveAuth.js","sourceRoot":"","sources":["../../../src/service/utils/resolveAuth.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,YAAY,CAAA;AAC7B,OAAO,SAAS,MAAM,+BAA+B,CAAA;AACrD,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAA;AAClD,OAAO,EAAE,oBAAoB,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAA;AAClE,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAA;AAC7C,OAAO,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAA;AAItD,MAAM,SAAS,GAAG,CAAC,GAAY,EAAkB,EAAE,CACjD,QAAQ,CAAC,GAAG,CAAC;IACb,OAAO,GAAG,CAAC,EAAE,KAAK,QAAQ;IAC1B,OAAO,GAAG,CAAC,aAAa,KAAK,QAAQ,CAAA;AAEvC,MAAM,UAAU,WAAW,CACzB,cAA6C,EAC7C,KAA4B,EAC5B,IAA4B;IAE5B,IAAI,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,QAAQ,EAAE;QACrC,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAA;KACrB;IAED,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE;QAC5B,OAAO,UAAU,CAAC,IAAI,EAAE,KAAK,CAAC,CAAA;KAC/B;SAAM,IAAI,SAAS,CAAC,IAAI,CAAC,EAAE;QAC1B,OAAO,SAAS,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,CAAA;KACvC;SAAM,IAAI,IAAI,EAAE;QACf,OAAO,IAAI,IAAI,CAAC,OAAO,EAAE,SAAS,EAAE,EAAE,CAAC,CAAA;KACxC;SAAM;QACL,OAAO,SAAS,CAAA;KACjB;AACH,CAAC;AAED,MAAM,UAAU,mBAAmB,CACjC,cAA6C,EAC7C,KAA4B,EAC5B,IAA4B;IAE5B,IAAI,QAAQ,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,QAAQ,EAAE;QACnC,MAAM,aAAa,GAAG,WAAW,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;QAChD,OAAO,aAAa;aACjB,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,WAAW,CAAC,cAAc,EAAE,KAAK,EAAE,QAAQ,CAAC,CAAC;aAC/D,MAAM,CAAC,oBAAoB,CAAC,CAAA;KAChC;SAAM;QACL,OAAO,SAAS,CAAA;KACjB;AACH,CAAC"}
1
+ {"version":3,"file":"resolveAuth.js","sourceRoot":"","sources":["../../../src/service/utils/resolveAuth.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,YAAY,CAAA;AAC7B,OAAO,SAAS,MAAM,+BAA+B,CAAA;AACrD,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAA;AAClD,OAAO,EAAE,oBAAoB,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAA;AAClE,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAA;AAC7C,OAAO,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAA;AAItD,MAAM,SAAS,GAAG,CAAC,GAAY,EAAkB,EAAE,CACjD,QAAQ,CAAC,GAAG,CAAC;IACb,OAAO,GAAG,CAAC,EAAE,KAAK,QAAQ;IAC1B,OAAO,GAAG,CAAC,aAAa,KAAK,QAAQ,CAAA;AAEvC,MAAM,CAAC,MAAM,WAAW,GAAG,CACzB,cAA6C,EAC7C,KAA4B,EAC5B,EAAE,CACF,SAAS,WAAW,CAAC,IAA4B;IAC/C,IAAI,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,QAAQ,EAAE;QACrC,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAA;KACrB;IAED,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE;QAC5B,OAAO,UAAU,CAAC,IAAI,EAAE,KAAK,CAAC,CAAA;KAC/B;SAAM,IAAI,SAAS,CAAC,IAAI,CAAC,EAAE;QAC1B,OAAO,SAAS,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,CAAA;KACvC;SAAM,IAAI,IAAI,EAAE;QACf,OAAO,IAAI,IAAI,CAAC,OAAO,EAAE,SAAS,EAAE,EAAE,CAAC,CAAA;KACxC;SAAM;QACL,OAAO,SAAS,CAAA;KACjB;AACH,CAAC,CAAA;AAEH,MAAM,CAAC,MAAM,mBAAmB,GAAG,CACjC,cAA6C,EAC7C,KAA4B,EAC5B,EAAE,CACF,SAAS,mBAAmB,CAAC,IAA4B;IACvD,IAAI,QAAQ,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,QAAQ,EAAE;QACnC,MAAM,aAAa,GAAG,WAAW,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;QAChD,OAAO,aAAa;aACjB,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,WAAW,CAAC,cAAc,EAAE,KAAK,CAAC,CAAC,QAAQ,CAAC,CAAC;aAC/D,MAAM,CAAC,oBAAoB,CAAC,CAAA;KAChC;SAAM;QACL,OAAO,SAAS,CAAA;KACjB;AACH,CAAC,CAAA"}
@@ -5,7 +5,7 @@ export default async function mutateAndSend(service, endpoint, action) {
5
5
  return await service.mutateResponse(preparedAction, endpoint);
6
6
  }
7
7
  const requestAction = await service.mutateRequest(preparedAction, endpoint);
8
- const response = await service.send(requestAction);
8
+ const response = await service.send(requestAction, endpoint);
9
9
  return await service.mutateResponse(setResponseOnAction(action, response), endpoint);
10
10
  }
11
11
  //# sourceMappingURL=mutateAndSend.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"mutateAndSend.js","sourceRoot":"","sources":["../../src/utils/mutateAndSend.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAA;AAKxD,MAAM,CAAC,OAAO,CAAC,KAAK,UAAU,aAAa,CACzC,OAAgB,EAChB,QAAkB,EAClB,MAAc;IAEd,MAAM,cAAc,GAAG,MAAM,OAAO,CAAC,eAAe,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAA;IACtE,IAAI,cAAc,CAAC,QAAQ,EAAE,MAAM,EAAE;QAEnC,OAAO,MAAM,OAAO,CAAC,cAAc,CAAC,cAAc,EAAE,QAAQ,CAAC,CAAA;KAC9D;IAED,MAAM,aAAa,GAAG,MAAM,OAAO,CAAC,aAAa,CAAC,cAAc,EAAE,QAAQ,CAAC,CAAA;IAC3E,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC,aAAa,CAAC,CAAA;IAClD,OAAO,MAAM,OAAO,CAAC,cAAc,CACjC,mBAAmB,CAAC,MAAM,EAAE,QAAQ,CAAC,EACrC,QAAQ,CACT,CAAA;AACH,CAAC"}
1
+ {"version":3,"file":"mutateAndSend.js","sourceRoot":"","sources":["../../src/utils/mutateAndSend.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAA;AAKxD,MAAM,CAAC,OAAO,CAAC,KAAK,UAAU,aAAa,CACzC,OAAgB,EAChB,QAAkB,EAClB,MAAc;IAEd,MAAM,cAAc,GAAG,MAAM,OAAO,CAAC,eAAe,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAA;IACtE,IAAI,cAAc,CAAC,QAAQ,EAAE,MAAM,EAAE;QAEnC,OAAO,MAAM,OAAO,CAAC,cAAc,CAAC,cAAc,EAAE,QAAQ,CAAC,CAAA;KAC9D;IAED,MAAM,aAAa,GAAG,MAAM,OAAO,CAAC,aAAa,CAAC,cAAc,EAAE,QAAQ,CAAC,CAAA;IAC3E,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC,aAAa,EAAE,QAAQ,CAAC,CAAA;IAC5D,OAAO,MAAM,OAAO,CAAC,cAAc,CACjC,mBAAmB,CAAC,MAAM,EAAE,QAAQ,CAAC,EACrC,QAAQ,CACT,CAAA;AACH,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "integreat",
3
- "version": "1.4.0-rc.2",
3
+ "version": "1.4.0",
4
4
  "description": "Node.js integration layer",
5
5
  "author": "Kjell-Morten Bratsberg Thorsen <kjellmorten@integreat.io> (https://integreat.io/)",
6
6
  "license": "ISC",
@@ -56,12 +56,12 @@
56
56
  "@integreat/ts-dev-setup": "^5.0.0",
57
57
  "@types/debug": "^4.1.9",
58
58
  "@types/luxon": "^3.3.2",
59
- "@types/sinon": "^10.0.17",
59
+ "@types/sinon": "^10.0.19",
60
60
  "integreat-adapter-json": "^1.0.0",
61
61
  "integreat-adapter-uri": "^1.0.0",
62
62
  "integreat-transformers": "^1.0.2",
63
63
  "integreat-transporter-http": "1.2.1",
64
64
  "nock": "^13.3.3",
65
- "sinon": "^16.0.0"
65
+ "sinon": "^16.1.0"
66
66
  }
67
67
  }