integreat 1.2.1 → 1.3.1

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
@@ -1481,45 +1481,6 @@ The action ...
1481
1481
 
1482
1482
  See [the section on pagination](#pagination) for more on the paging properties.
1483
1483
 
1484
- #### `GET_META`
1485
-
1486
- Get metadata for a service. See
1487
- [the section on metadata](#configuring-service-metadata) for how to set this up.
1488
-
1489
- The `data` of the response from this aciton contains the `service` (the service
1490
- id) and `meta` object with the metadata set as properties.
1491
-
1492
- Example `GET_META` action:
1493
-
1494
- ```javascript
1495
- {
1496
- type: 'GET_META',
1497
- payload: {
1498
- service: 'entries',
1499
- keys: ['lastSyncedAt', 'status']
1500
- }
1501
- }
1502
- ```
1503
-
1504
- This will return data in the following form:
1505
-
1506
- ```javascript
1507
- {
1508
- status: 'ok',
1509
- data: {
1510
- service: 'entries',
1511
- meta: {
1512
- lastSyncedAt: '2017-08-19T17:40:31.861Z',
1513
- status: 'ready'
1514
- }
1515
- }
1516
- }
1517
- ```
1518
-
1519
- If the action has no `keys`, all metadata set on the service will be retrieved.
1520
- The `keys` property may be an array of keys to retrieve several in one request,
1521
- or a single key.
1522
-
1523
1484
  #### `SET`
1524
1485
 
1525
1486
  Send data to a service. The data to send is provided in the payload `data`
@@ -1546,33 +1507,58 @@ Example `SET` action:
1546
1507
  }
1547
1508
  ```
1548
1509
 
1549
- #### `SET_META`
1550
-
1551
- Set metadata on a service. The payload should contain the `service` to get
1552
- metadata for (the service id), and a `meta` object, with all metadata to set as
1553
- properties.
1554
-
1555
- Any data coming back from the service, will be provided on `response.data` and
1556
- may be mutated through service endpoint mutations, just as for [`GET`](#get)
1557
- actions.
1558
-
1559
- Example `SET_META` action:
1510
+ #### `UPDATE`
1511
+
1512
+ Update data on a service. The idea is that while `SET` is used for setting data
1513
+ to a service with no regard to what is actually set in the service already,
1514
+ `UPDATE` is used for updating data, possibly not overwriting all properties.
1515
+ If `UPDATE` provides data with only a few properties, the expectation is that
1516
+ only these properties will be updated in the service. The `UPDATE` action is
1517
+ also expected to fail when the item being updated does not exist, unlike `SET`,
1518
+ that will usually create it.
1519
+
1520
+ Note that the actual behavior is up to how you set up the service and what the
1521
+ service itself supports, but the `UPDATE` action will provide you with a way of
1522
+ doing this.
1523
+
1524
+ An `UPDATE` action may be handled in one of two ways, where the first is just to
1525
+ run it against a service endpoint, much like a `SET` action (except it will
1526
+ match different endpoints). Data provided in the payload `data` is mutated and
1527
+ sent to the service according to the endpoint configuration, and any data coming
1528
+ back, will be provided on `response.data` and mutated.
1529
+
1530
+ What makes `UPDATE` different from `SET`, though, is the second way we may
1531
+ handle `UPDATE` actions. Whenever there is no maching `UPDATE` endpoint,
1532
+ Integreat will run the action as a `GET` and then a `SET`, to mimick and update.
1533
+ The `GET` action will have the same `payload` and `meta` as the original action.
1534
+ The same goes for the `SET` action, but the `payload.data` will be the data
1535
+ returned from `GET` merged with the data on the original `UPDATE` action. This
1536
+ will be a deep merge, prioritizing properties from the `UPDATE` action, but any
1537
+ `createdAt` date in the data from `GET` will be kept. If there's an `updatedAt`
1538
+ in the merged data, it will be overriden by the current time.
1539
+
1540
+ A requirement for this approach to work as expected, is that the data is casted
1541
+ to the same schema, but that should normally be the case when you use
1542
+ `payload.type` and don't set `allowRawRequest` or `allowRawResponse` on the
1543
+ endpoint.
1544
+
1545
+ When a `GET` fail, the `UPDATE` will fail with the same status and error.
1546
+
1547
+ Example `UPDATE` action:
1560
1548
 
1561
1549
  ```javascript
1562
1550
  {
1563
- type: 'SET_META',
1551
+ type: 'UPDATE',
1564
1552
  payload: {
1565
- service: 'entries',
1566
- meta: {
1567
- lastSyncedAt: Date.now()
1568
- }
1553
+ type: 'article',
1554
+ data: [
1555
+ { id: '12345', $type: 'article', title: 'First article' },
1556
+ { id: '12346', $type: 'article', title: 'Second article' }
1557
+ ]
1569
1558
  }
1570
1559
  }
1571
1560
  ```
1572
1561
 
1573
- Note that the service must be set up to handle metadata. See
1574
- [Configuring metadata](#configuring-service-metadata) for more.
1575
-
1576
1562
  #### `DELETE` / `DEL`
1577
1563
 
1578
1564
  Delete one or more items from a service. Set the data for the items to delete,
@@ -1613,6 +1599,72 @@ You may also `DELETE` one item like this:
1613
1599
 
1614
1600
  `DEL` is a shorthand for `DELETE`.
1615
1601
 
1602
+ #### `GET_META`
1603
+
1604
+ Get metadata for a service. See
1605
+ [the section on metadata](#configuring-service-metadata) for how to set this up.
1606
+
1607
+ The `data` of the response from this aciton contains the `service` (the service
1608
+ id) and `meta` object with the metadata set as properties.
1609
+
1610
+ Example `GET_META` action:
1611
+
1612
+ ```javascript
1613
+ {
1614
+ type: 'GET_META',
1615
+ payload: {
1616
+ service: 'entries',
1617
+ keys: ['lastSyncedAt', 'status']
1618
+ }
1619
+ }
1620
+ ```
1621
+
1622
+ This will return data in the following form:
1623
+
1624
+ ```javascript
1625
+ {
1626
+ status: 'ok',
1627
+ data: {
1628
+ service: 'entries',
1629
+ meta: {
1630
+ lastSyncedAt: '2017-08-19T17:40:31.861Z',
1631
+ status: 'ready'
1632
+ }
1633
+ }
1634
+ }
1635
+ ```
1636
+
1637
+ If the action has no `keys`, all metadata set on the service will be retrieved.
1638
+ The `keys` property may be an array of keys to retrieve several in one request,
1639
+ or a single key.
1640
+
1641
+ #### `SET_META`
1642
+
1643
+ Set metadata on a service. The payload should contain the `service` to get
1644
+ metadata for (the service id), and a `meta` object, with all metadata to set as
1645
+ properties.
1646
+
1647
+ Any data coming back from the service, will be provided on `response.data` and
1648
+ may be mutated through service endpoint mutations, just as for [`GET`](#get)
1649
+ actions.
1650
+
1651
+ Example `SET_META` action:
1652
+
1653
+ ```javascript
1654
+ {
1655
+ type: 'SET_META',
1656
+ payload: {
1657
+ service: 'entries',
1658
+ meta: {
1659
+ lastSyncedAt: Date.now()
1660
+ }
1661
+ }
1662
+ }
1663
+ ```
1664
+
1665
+ Note that the service must be set up to handle metadata. See
1666
+ [Configuring metadata](#configuring-service-metadata) for more.
1667
+
1616
1668
  #### `RUN`
1617
1669
 
1618
1670
  The `RUN` action will run jobs provided to `Integreat.create()` in the jobs
@@ -1676,6 +1728,13 @@ or set to the `to` service, you may provide a params object for the `from` or
1676
1728
  different action types than `GET` and `SET`, by setting the `action` prop on
1677
1729
  the `from` or `to` objects respectively.
1678
1730
 
1731
+ By default, `SYNC` will send every item gotten from the `from` service to the
1732
+ `to` service. You can split an array of items into several sets, by setting the
1733
+ `maxPerSet` on the payload object, to a max number of items per set. If you need
1734
+ to have one set per individual item, you may set `setMember` to `true` on the
1735
+ payload object. (This is almost the same as setting `maxPerSet` to `1`, except
1736
+ it won't be wrapped in an array.)
1737
+
1679
1738
  > There are more options than these, and the documentation will be updated to
1680
1739
  > include them later.
1681
1740
 
package/SECURITY.md CHANGED
@@ -4,8 +4,8 @@
4
4
 
5
5
  | Version | Supported |
6
6
  | ------- | ------------------ |
7
- | 1.0.x | :white_check_mark: |
8
- | < 1.0 | :x: |
7
+ | 1.3.x | :white_check_mark: |
8
+ | < 1.3 | :x: |
9
9
 
10
10
  ## Reporting a Vulnerability
11
11
 
@@ -10,6 +10,7 @@ import SYNC from './sync.js';
10
10
  import EXPIRE from './expire.js';
11
11
  import QUEUE from './queue.js';
12
12
  import SERVICE from './service.js';
13
+ import UPDATE from './update.js';
13
14
  export const QUEUE_SYMBOL = Symbol('<internal queue>');
14
15
  const handlers = {
15
16
  GET,
@@ -25,6 +26,7 @@ const handlers = {
25
26
  EXPIRE,
26
27
  [QUEUE_SYMBOL]: QUEUE,
27
28
  SERVICE,
29
+ UPDATE,
28
30
  };
29
31
  export default handlers;
30
32
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/handlers/index.ts"],"names":[],"mappings":"AAAA,OAAO,GAAG,MAAM,UAAU,CAAA;AAC1B,OAAO,OAAO,MAAM,aAAa,CAAA;AACjC,OAAO,QAAQ,MAAM,cAAc,CAAA;AACnC,OAAO,SAAS,MAAM,eAAe,CAAA;AACrC,OAAO,KAAK,MAAM,UAAU,CAAA;AAC5B,OAAO,GAAG,MAAM,UAAU,CAAA;AAC1B,OAAO,QAAQ,MAAM,cAAc,CAAA;AACnC,OAAO,MAAM,MAAM,aAAa,CAAA;AAChC,OAAO,IAAI,MAAM,WAAW,CAAA;AAC5B,OAAO,MAAM,MAAM,aAAa,CAAA;AAChC,OAAO,KAAK,MAAM,YAAY,CAAA;AAC9B,OAAO,OAAO,MAAM,cAAc,CAAA;AAGlC,MAAM,CAAC,MAAM,YAAY,GAAG,MAAM,CAAC,kBAAkB,CAAC,CAAA;AAEtD,MAAM,QAAQ,GAA2C;IACvD,GAAG;IACH,OAAO;IACP,QAAQ;IACR,SAAS;IACT,GAAG,EAAE,KAAK,CAAC,IAAI,GAAG,EAAE,CAAC;IACrB,GAAG;IACH,QAAQ;IACR,MAAM;IACN,GAAG,EAAE,MAAM;IACX,IAAI;IACJ,MAAM;IACN,CAAC,YAAY,CAAC,EAAE,KAAK;IACrB,OAAO;CACR,CAAA;AAED,eAAe,QAAQ,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/handlers/index.ts"],"names":[],"mappings":"AAAA,OAAO,GAAG,MAAM,UAAU,CAAA;AAC1B,OAAO,OAAO,MAAM,aAAa,CAAA;AACjC,OAAO,QAAQ,MAAM,cAAc,CAAA;AACnC,OAAO,SAAS,MAAM,eAAe,CAAA;AACrC,OAAO,KAAK,MAAM,UAAU,CAAA;AAC5B,OAAO,GAAG,MAAM,UAAU,CAAA;AAC1B,OAAO,QAAQ,MAAM,cAAc,CAAA;AACnC,OAAO,MAAM,MAAM,aAAa,CAAA;AAChC,OAAO,IAAI,MAAM,WAAW,CAAA;AAC5B,OAAO,MAAM,MAAM,aAAa,CAAA;AAChC,OAAO,KAAK,MAAM,YAAY,CAAA;AAC9B,OAAO,OAAO,MAAM,cAAc,CAAA;AAClC,OAAO,MAAM,MAAM,aAAa,CAAA;AAGhC,MAAM,CAAC,MAAM,YAAY,GAAG,MAAM,CAAC,kBAAkB,CAAC,CAAA;AAEtD,MAAM,QAAQ,GAA2C;IACvD,GAAG;IACH,OAAO;IACP,QAAQ;IACR,SAAS;IACT,GAAG,EAAE,KAAK,CAAC,IAAI,GAAG,EAAE,CAAC;IACrB,GAAG;IACH,QAAQ;IACR,MAAM;IACN,GAAG,EAAE,MAAM;IACX,IAAI;IACJ,MAAM;IACN,CAAC,YAAY,CAAC,EAAE,KAAK;IACrB,OAAO;IACP,MAAM;CACP,CAAA;AAED,eAAe,QAAQ,CAAA"}
@@ -1,2 +1,29 @@
1
1
  import type { Action, Response, ActionHandlerResources } from '../types.js';
2
+ export declare function getTypeAndId(action: Action, data: unknown): {
3
+ type: string | string[] | undefined;
4
+ id: string | string[] | undefined;
5
+ };
6
+ export declare const setIdAndTypeOnAction: (action: Action, id?: string | string[], type?: string | string[]) => {
7
+ payload: {
8
+ id: string | string[] | undefined;
9
+ type: string | string[] | undefined;
10
+ data?: unknown;
11
+ sourceService?: string | undefined;
12
+ targetService?: string | undefined;
13
+ service?: string | undefined;
14
+ endpoint?: string | undefined;
15
+ uri?: string | undefined;
16
+ method?: string | undefined;
17
+ headers?: import("../types.js").Headers | undefined;
18
+ page?: number | undefined;
19
+ pageOffset?: number | undefined;
20
+ pageSize?: number | undefined;
21
+ pageAfter?: string | undefined;
22
+ pageBefore?: string | undefined;
23
+ pageId?: string | undefined;
24
+ };
25
+ type: string;
26
+ response?: Response<unknown> | undefined;
27
+ meta?: import("../types.js").Meta | undefined;
28
+ };
2
29
  export default function set(action: Action, { getService }: ActionHandlerResources): Promise<Response>;
@@ -5,14 +5,18 @@ import { isTypedData } from '../utils/is.js';
5
5
  const debug = debugLib('great');
6
6
  const extractType = (action, data) => action.payload.type || (isTypedData(data) && data.$type) || undefined;
7
7
  const extractId = (action, data) => action.payload.id || (isTypedData(data) && data.id) || undefined;
8
- const setIdAndTypeOnAction = (action, id, type) => ({
8
+ export function getTypeAndId(action, data) {
9
+ const type = extractType(action, data);
10
+ const id = extractId(action, data);
11
+ return { type, id };
12
+ }
13
+ export const setIdAndTypeOnAction = (action, id, type) => ({
9
14
  ...action,
10
15
  payload: { ...action.payload, id, type },
11
16
  });
12
17
  export default async function set(action, { getService }) {
13
18
  const { data, targetService: serviceId, endpoint: endpointId, } = action.payload;
14
- const type = extractType(action, data);
15
- const id = extractId(action, data);
19
+ const { type, id } = getTypeAndId(action, data);
16
20
  const service = getService(type, serviceId);
17
21
  if (!service) {
18
22
  return createUnknownServiceError(type, serviceId, 'SET');
@@ -1 +1 @@
1
- {"version":3,"file":"set.js","sourceRoot":"","sources":["../../src/handlers/set.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,MAAM,OAAO,CAAA;AAC5B,OAAO,aAAa,MAAM,2BAA2B,CAAA;AACrD,OAAO,EACL,mBAAmB,EACnB,yBAAyB,GAC1B,MAAM,sBAAsB,CAAA;AAC7B,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAA;AAG5C,MAAM,KAAK,GAAG,QAAQ,CAAC,OAAO,CAAC,CAAA;AAE/B,MAAM,WAAW,GAAG,CAAC,MAAc,EAAE,IAAc,EAAE,EAAE,CACrD,MAAM,CAAC,OAAO,CAAC,IAAI,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,SAAS,CAAA;AAEvE,MAAM,SAAS,GAAG,CAAC,MAAc,EAAE,IAAc,EAAE,EAAE,CACnD,MAAM,CAAC,OAAO,CAAC,EAAE,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,EAAE,CAAC,IAAI,SAAS,CAAA;AAElE,MAAM,oBAAoB,GAAG,CAC3B,MAAc,EACd,EAAsB,EACtB,IAAwB,EACxB,EAAE,CAAC,CAAC;IACJ,GAAG,MAAM;IACT,OAAO,EAAE,EAAE,GAAG,MAAM,CAAC,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE;CACzC,CAAC,CAAA;AAKF,MAAM,CAAC,OAAO,CAAC,KAAK,UAAU,GAAG,CAC/B,MAAc,EACd,EAAE,UAAU,EAA0B;IAEtC,MAAM,EACJ,IAAI,EACJ,aAAa,EAAE,SAAS,EACxB,QAAQ,EAAE,UAAU,GACrB,GAAG,MAAM,CAAC,OAAO,CAAA;IAElB,MAAM,IAAI,GAAG,WAAW,CAAC,MAAM,EAAE,IAAI,CAAC,CAAA;IACtC,MAAM,EAAE,GAAG,SAAS,CAAC,MAAM,EAAE,IAAI,CAAC,CAAA;IAElC,MAAM,OAAO,GAAG,UAAU,CAAC,IAAI,EAAE,SAAS,CAAC,CAAA;IAC3C,IAAI,CAAC,OAAO,EAAE;QACZ,OAAO,yBAAyB,CAAC,IAAI,EAAE,SAAS,EAAE,KAAK,CAAC,CAAA;KACzD;IAED,MAAM,aAAa,GAAG,UAAU,CAAC,CAAC,CAAC,gBAAgB,UAAU,GAAG,CAAC,CAAC,CAAC,EAAE,CAAA;IACrE,KAAK,CAAC,4BAA4B,EAAE,OAAO,CAAC,EAAE,EAAE,aAAa,CAAC,CAAA;IAE9D,MAAM,UAAU,GAAG,oBAAoB,CAAC,MAAM,EAAE,EAAE,EAAE,IAAI,CAAC,CAAA;IACzD,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,kBAAkB,CAAC,UAAU,CAAC,CAAA;IAC7D,IAAI,CAAC,QAAQ,EAAE;QACb,OAAO,mBAAmB,CACxB,wBAAwB,MAAM,CAAC,IAAI,wBAAwB,SAAS,IAAI,EACxE,aAAa,EACb,YAAY,CACb,CAAA;KACF;IAED,OAAO,MAAM,aAAa,CAAC,OAAO,EAAE,QAAQ,EAAE,UAAU,CAAC,CAAA;AAC3D,CAAC"}
1
+ {"version":3,"file":"set.js","sourceRoot":"","sources":["../../src/handlers/set.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,MAAM,OAAO,CAAA;AAC5B,OAAO,aAAa,MAAM,2BAA2B,CAAA;AACrD,OAAO,EACL,mBAAmB,EACnB,yBAAyB,GAC1B,MAAM,sBAAsB,CAAA;AAC7B,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAA;AAG5C,MAAM,KAAK,GAAG,QAAQ,CAAC,OAAO,CAAC,CAAA;AAE/B,MAAM,WAAW,GAAG,CAAC,MAAc,EAAE,IAAc,EAAE,EAAE,CACrD,MAAM,CAAC,OAAO,CAAC,IAAI,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,SAAS,CAAA;AAEvE,MAAM,SAAS,GAAG,CAAC,MAAc,EAAE,IAAc,EAAE,EAAE,CACnD,MAAM,CAAC,OAAO,CAAC,EAAE,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,EAAE,CAAC,IAAI,SAAS,CAAA;AAElE,MAAM,UAAU,YAAY,CAAC,MAAc,EAAE,IAAa;IACxD,MAAM,IAAI,GAAG,WAAW,CAAC,MAAM,EAAE,IAAI,CAAC,CAAA;IACtC,MAAM,EAAE,GAAG,SAAS,CAAC,MAAM,EAAE,IAAI,CAAC,CAAA;IAClC,OAAO,EAAE,IAAI,EAAE,EAAE,EAAE,CAAA;AACrB,CAAC;AAED,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAClC,MAAc,EACd,EAAsB,EACtB,IAAwB,EACxB,EAAE,CAAC,CAAC;IACJ,GAAG,MAAM;IACT,OAAO,EAAE,EAAE,GAAG,MAAM,CAAC,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE;CACzC,CAAC,CAAA;AAKF,MAAM,CAAC,OAAO,CAAC,KAAK,UAAU,GAAG,CAC/B,MAAc,EACd,EAAE,UAAU,EAA0B;IAEtC,MAAM,EACJ,IAAI,EACJ,aAAa,EAAE,SAAS,EACxB,QAAQ,EAAE,UAAU,GACrB,GAAG,MAAM,CAAC,OAAO,CAAA;IAElB,MAAM,EAAE,IAAI,EAAE,EAAE,EAAE,GAAG,YAAY,CAAC,MAAM,EAAE,IAAI,CAAC,CAAA;IAC/C,MAAM,OAAO,GAAG,UAAU,CAAC,IAAI,EAAE,SAAS,CAAC,CAAA;IAC3C,IAAI,CAAC,OAAO,EAAE;QACZ,OAAO,yBAAyB,CAAC,IAAI,EAAE,SAAS,EAAE,KAAK,CAAC,CAAA;KACzD;IAED,MAAM,aAAa,GAAG,UAAU,CAAC,CAAC,CAAC,gBAAgB,UAAU,GAAG,CAAC,CAAC,CAAC,EAAE,CAAA;IACrE,KAAK,CAAC,4BAA4B,EAAE,OAAO,CAAC,EAAE,EAAE,aAAa,CAAC,CAAA;IAE9D,MAAM,UAAU,GAAG,oBAAoB,CAAC,MAAM,EAAE,EAAE,EAAE,IAAI,CAAC,CAAA;IACzD,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,kBAAkB,CAAC,UAAU,CAAC,CAAA;IAC7D,IAAI,CAAC,QAAQ,EAAE;QACb,OAAO,mBAAmB,CACxB,wBAAwB,MAAM,CAAC,IAAI,wBAAwB,SAAS,IAAI,EACxE,aAAa,EACb,YAAY,CACb,CAAA;KACF;IAED,OAAO,MAAM,aAAa,CAAC,OAAO,EAAE,QAAQ,EAAE,UAAU,CAAC,CAAA;AAC3D,CAAC"}
@@ -25,15 +25,18 @@ const createSetAction = (data, { service: targetService, action = 'SET', ...para
25
25
  payload: { data, targetService, ...params },
26
26
  meta: { ...meta, queue: doQueueSet },
27
27
  });
28
- async function setData(dispatch, data, { alwaysSet = false, maxPerSet, ...params }, doQueueSet, meta) {
28
+ async function setData(dispatch, data, { alwaysSet = false, maxPerSet, setMember, ...params }, doQueueSet, meta) {
29
29
  let index = data.length === 0 && alwaysSet ? -1 : 0;
30
- const maxCount = castNumber(maxPerSet) || Number.MAX_SAFE_INTEGER;
30
+ const maxCount = setMember
31
+ ? 1
32
+ : castNumber(maxPerSet) || Number.MAX_SAFE_INTEGER;
31
33
  while (index < data.length) {
32
- const response = await dispatch(createSetAction(data.slice(index, index + maxCount), params, doQueueSet, meta));
34
+ const response = await dispatch(createSetAction(setMember ? data[index] : data.slice(index, index + maxCount), params, doQueueSet, meta));
33
35
  if (!response?.status || !['ok', 'queued'].includes(response.status)) {
36
+ const progressMessage = index > 0 ? `, but the first ${index} items where set successfully` : '';
34
37
  return {
35
38
  status: response?.status || 'error',
36
- error: `SYNC: Could not set data. Set ${index} of ${data.length} items. ${response?.error || ''}`.trim(),
39
+ error: `SYNC: Setting data failed${progressMessage}. ${response?.error || ''}`.trim(),
37
40
  };
38
41
  }
39
42
  index += maxCount;
@@ -147,11 +150,12 @@ function generateSetDates(fromParams, params, dateSet) {
147
150
  };
148
151
  }
149
152
  function generateToParams(fromParams, type, { payload }) {
150
- const { to, maxPerSet, alwaysSet } = payload;
153
+ const { to, maxPerSet, setMember, alwaysSet } = payload;
151
154
  return {
152
155
  type,
153
156
  alwaysSet,
154
157
  maxPerSet,
158
+ setMember,
155
159
  ...generateSetDates(fromParams, payload, 'updated'),
156
160
  ...generateSetDates(fromParams, payload, 'created'),
157
161
  ...paramsAsObject(to),
@@ -1 +1 @@
1
- {"version":3,"file":"sync.js","sourceRoot":"","sources":["../../src/handlers/sync.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sync.js","sourceRoot":"","sources":["../../src/handlers/sync.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ import type { Action, Response, ActionHandlerResources } from '../types.js';
2
+ export default function update(action: Action, { getService }: ActionHandlerResources): Promise<Response>;
@@ -0,0 +1,82 @@
1
+ import debugLib from 'debug';
2
+ import mutateAndSend from '../utils/mutateAndSend.js';
3
+ import { createErrorResponse, createUnknownServiceError, } from '../utils/response.js';
4
+ import { getTypeAndId, setIdAndTypeOnAction } from './set.js';
5
+ import { deepMergeItems } from '../utils/deep.js';
6
+ import { isErrorResponse, isTypedData } from '../utils/is.js';
7
+ const debug = debugLib('great');
8
+ const createGetAction = (action) => ({ ...action, type: 'GET' });
9
+ const createSetAction = (action, data) => ({
10
+ ...action,
11
+ type: 'SET',
12
+ payload: { ...action.payload, data },
13
+ });
14
+ function isUpdateEndpoint(endpoint) {
15
+ const actionType = endpoint?.match?.action;
16
+ return Array.isArray(actionType)
17
+ ? actionType.includes('UPDATE')
18
+ : actionType === 'UPDATE';
19
+ }
20
+ async function dispatchAction(service, action) {
21
+ const endpoint = await service.endpointFromAction(action);
22
+ if (!endpoint) {
23
+ return createErrorResponse(`No endpoint matching ${action.type === 'GET' ? 'UPDATE' : 'SET'} request to service '${service.id}'.`, 'handler:UPDATE', 'badrequest');
24
+ }
25
+ const response = await mutateAndSend(service, endpoint, action);
26
+ if (isErrorResponse(response)) {
27
+ return { ...response, error: `UPDATE failed: ${response.error}` };
28
+ }
29
+ else {
30
+ return response;
31
+ }
32
+ }
33
+ const updateDatesInItem = (original, merged) => isTypedData(original) && isTypedData(merged)
34
+ ? {
35
+ ...merged,
36
+ createdAt: original.createdAt,
37
+ ...(merged.updatedAt ? { updatedAt: new Date() } : {}),
38
+ }
39
+ : merged;
40
+ function keepCreatedAt(original, merged) {
41
+ if (Array.isArray(original) && Array.isArray(merged)) {
42
+ return original.map((item, index) => updateDatesInItem(item, merged[index]));
43
+ }
44
+ else {
45
+ return updateDatesInItem(original, merged);
46
+ }
47
+ }
48
+ async function updateWithGetAndSet(service, action) {
49
+ const getAction = createGetAction(action);
50
+ const getResponse = await dispatchAction(service, getAction);
51
+ if (isErrorResponse(getResponse)) {
52
+ return getResponse;
53
+ }
54
+ let data;
55
+ try {
56
+ data = keepCreatedAt(getResponse.data, deepMergeItems(getResponse.data, action.payload.data));
57
+ }
58
+ catch (error) {
59
+ return createErrorResponse(error, 'handler:UPDATE');
60
+ }
61
+ const setAction = createSetAction(action, data);
62
+ return await dispatchAction(service, setAction);
63
+ }
64
+ export default async function update(action, { getService }) {
65
+ const { data, targetService: serviceId, endpoint: endpointId, } = action.payload;
66
+ const { type, id } = getTypeAndId(action, data);
67
+ const service = getService(type, serviceId);
68
+ if (!service) {
69
+ return createUnknownServiceError(type, serviceId, 'UPDATE');
70
+ }
71
+ const endpointDebug = endpointId ? `at endpoint '${endpointId}'` : '';
72
+ debug('SET: Send to service %s %s', service.id, endpointDebug);
73
+ const nextAction = setIdAndTypeOnAction(action, id, type);
74
+ const endpoint = await service.endpointFromAction(nextAction);
75
+ if (isUpdateEndpoint(endpoint)) {
76
+ return await mutateAndSend(service, endpoint, nextAction);
77
+ }
78
+ else {
79
+ return await updateWithGetAndSet(service, nextAction);
80
+ }
81
+ }
82
+ //# sourceMappingURL=update.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"update.js","sourceRoot":"","sources":["../../src/handlers/update.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import deepClone from '../../utils/deepClone.js';
1
+ import { deepClone } from '../../utils/deep.js';
2
2
  export function prepareOptions({ transporter: { incoming, ...transporter } = {}, incoming: incomingBase, adapters, ...topLevel }) {
3
3
  const transporterOptions = {
4
4
  ...topLevel,
@@ -1 +1 @@
1
- {"version":3,"file":"options.js","sourceRoot":"","sources":["../../../src/service/utils/options.ts"],"names":[],"mappings":"AACA,OAAO,SAAS,MAAM,0BAA0B,CAAA;AAOhD,MAAM,UAAU,cAAc,CAAC,EAC7B,WAAW,EAAE,EAAE,QAAQ,EAAE,GAAG,WAAW,EAAE,GAAG,EAAE,EAC9C,QAAQ,EAAE,YAAY,EACtB,QAAQ,EACR,GAAG,QAAQ,EACI;IAEf,MAAM,kBAAkB,GAAG;QACzB,GAAG,QAAQ;QACX,GAAG,WAAW;QACd,GAAG,CAAC,QAAQ,IAAI,YAAY;YAC1B,CAAC,CAAC,EAAE,QAAQ,EAAE,EAAE,GAAG,YAAY,EAAE,GAAG,QAAQ,EAAE,EAAE;YAChD,CAAC,CAAC,EAAE,CAAC;KACR,CAAA;IAED,IAAI,CAAC,QAAQ,EAAE;QACb,OAAO,EAAE,WAAW,EAAE,kBAAkB,EAAE,CAAA;KAC3C;IAED,MAAM,cAAc,GAAG,MAAM,CAAC,WAAW,CACvC,MAAM,CAAC,OAAO,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,OAAO,CAAC,EAAE,EAAE,CAAC;QACpD,EAAE;QACF,EAAE,GAAG,QAAQ,EAAE,GAAG,OAAO,EAAE;KAC5B,CAAC,CACH,CAAA;IAED,OAAO,EAAE,WAAW,EAAE,kBAAkB,EAAE,QAAQ,EAAE,cAAc,EAAE,CAAA;AACtE,CAAC;AAED,MAAM,cAAc,GAAG,CAAC,EAAE,QAAQ,EAAE,GAAG,OAAO,EAAsB,EAAE,EAAE,CAAC,OAAO,CAAA;AAEhF,MAAM,UAAU,YAAY,CAAC,CAAkB,EAAE,CAAkB;IACjE,MAAM,kBAAkB,GAAG,SAAS,CAAC;QACnC,GAAG,cAAc,CAAC,CAAC,CAAC,WAAW,CAAC;QAChC,GAAG,cAAc,CAAC,CAAC,CAAC,WAAW,CAAC;KACjC,CAAC,CAAA;IACF,IAAI,CAAC,CAAC,WAAW,CAAC,QAAQ,IAAI,CAAC,CAAC,WAAW,CAAC,QAAQ,EAAE;QACpD,kBAAkB,CAAC,QAAQ,GAAG,SAAS,CAAC;YACtC,GAAG,CAAC,CAAC,WAAW,CAAC,QAAQ;YACzB,GAAG,CAAC,CAAC,WAAW,CAAC,QAAQ;SAC1B,CAAC,CAAA;KACH;IAED,MAAM,SAAS,GAAG,CAAC,CAAC,QAAQ,IAAI,EAAE,CAAA;IAClC,MAAM,SAAS,GAAG,CAAC,CAAC,QAAQ,IAAI,EAAE,CAAA;IAClC,MAAM,UAAU,GAAG;QACjB,GAAG,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC;QACzB,GAAG,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC;KAC1B,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAA;IAE/D,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE;QAC3B,OAAO,EAAE,WAAW,EAAE,kBAAkB,EAAE,CAAA;KAC3C;IAED,MAAM,cAAc,GAAG,MAAM,CAAC,WAAW,CACvC,UAAU,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC;QACrB,EAAE;QACF,SAAS,CAAC,EAAE,GAAG,SAAS,CAAC,EAAE,CAAC,EAAE,GAAG,SAAS,CAAC,EAAE,CAAC,EAAE,CAAC;KAClD,CAAC,CACH,CAAA;IAED,OAAO,EAAE,WAAW,EAAE,kBAAkB,EAAE,QAAQ,EAAE,cAAc,EAAE,CAAA;AACtE,CAAC"}
1
+ {"version":3,"file":"options.js","sourceRoot":"","sources":["../../../src/service/utils/options.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAA;AAO/C,MAAM,UAAU,cAAc,CAAC,EAC7B,WAAW,EAAE,EAAE,QAAQ,EAAE,GAAG,WAAW,EAAE,GAAG,EAAE,EAC9C,QAAQ,EAAE,YAAY,EACtB,QAAQ,EACR,GAAG,QAAQ,EACI;IAEf,MAAM,kBAAkB,GAAG;QACzB,GAAG,QAAQ;QACX,GAAG,WAAW;QACd,GAAG,CAAC,QAAQ,IAAI,YAAY;YAC1B,CAAC,CAAC,EAAE,QAAQ,EAAE,EAAE,GAAG,YAAY,EAAE,GAAG,QAAQ,EAAE,EAAE;YAChD,CAAC,CAAC,EAAE,CAAC;KACR,CAAA;IAED,IAAI,CAAC,QAAQ,EAAE;QACb,OAAO,EAAE,WAAW,EAAE,kBAAkB,EAAE,CAAA;KAC3C;IAED,MAAM,cAAc,GAAG,MAAM,CAAC,WAAW,CACvC,MAAM,CAAC,OAAO,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,OAAO,CAAC,EAAE,EAAE,CAAC;QACpD,EAAE;QACF,EAAE,GAAG,QAAQ,EAAE,GAAG,OAAO,EAAE;KAC5B,CAAC,CACH,CAAA;IAED,OAAO,EAAE,WAAW,EAAE,kBAAkB,EAAE,QAAQ,EAAE,cAAc,EAAE,CAAA;AACtE,CAAC;AAED,MAAM,cAAc,GAAG,CAAC,EAAE,QAAQ,EAAE,GAAG,OAAO,EAAsB,EAAE,EAAE,CAAC,OAAO,CAAA;AAEhF,MAAM,UAAU,YAAY,CAAC,CAAkB,EAAE,CAAkB;IACjE,MAAM,kBAAkB,GAAG,SAAS,CAAC;QACnC,GAAG,cAAc,CAAC,CAAC,CAAC,WAAW,CAAC;QAChC,GAAG,cAAc,CAAC,CAAC,CAAC,WAAW,CAAC;KACjC,CAAC,CAAA;IACF,IAAI,CAAC,CAAC,WAAW,CAAC,QAAQ,IAAI,CAAC,CAAC,WAAW,CAAC,QAAQ,EAAE;QACpD,kBAAkB,CAAC,QAAQ,GAAG,SAAS,CAAC;YACtC,GAAG,CAAC,CAAC,WAAW,CAAC,QAAQ;YACzB,GAAG,CAAC,CAAC,WAAW,CAAC,QAAQ;SAC1B,CAAC,CAAA;KACH;IAED,MAAM,SAAS,GAAG,CAAC,CAAC,QAAQ,IAAI,EAAE,CAAA;IAClC,MAAM,SAAS,GAAG,CAAC,CAAC,QAAQ,IAAI,EAAE,CAAA;IAClC,MAAM,UAAU,GAAG;QACjB,GAAG,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC;QACzB,GAAG,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC;KAC1B,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAA;IAE/D,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE;QAC3B,OAAO,EAAE,WAAW,EAAE,kBAAkB,EAAE,CAAA;KAC3C;IAED,MAAM,cAAc,GAAG,MAAM,CAAC,WAAW,CACvC,UAAU,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC;QACrB,EAAE;QACF,SAAS,CAAC,EAAE,GAAG,SAAS,CAAC,EAAE,CAAC,EAAE,GAAG,SAAS,CAAC,EAAE,CAAC,EAAE,CAAC;KAClD,CAAC,CACH,CAAA;IAED,OAAO,EAAE,WAAW,EAAE,kBAAkB,EAAE,QAAQ,EAAE,cAAc,EAAE,CAAA;AACtE,CAAC"}
@@ -0,0 +1,12 @@
1
+ export declare const deepClone: <T>(input: T) => T;
2
+ export declare const deepMerge: <Ts extends readonly unknown[]>(...objects: Ts) => import("deepmerge-ts").DeepMergeHKT<Ts, Readonly<{
3
+ DeepMergeRecordsURI: "DeepMergeRecordsDefaultURI";
4
+ DeepMergeArraysURI: "DeepMergeArraysDefaultURI";
5
+ DeepMergeSetsURI: "DeepMergeSetsDefaultURI";
6
+ DeepMergeMapsURI: "DeepMergeMapsDefaultURI";
7
+ DeepMergeOthersURI: "DeepMergeLeafURI";
8
+ }>, Readonly<{
9
+ key: PropertyKey;
10
+ parents: readonly Readonly<Record<PropertyKey, unknown>>[];
11
+ }>>;
12
+ export declare function deepMergeItems(a: unknown, b: unknown): unknown;
@@ -0,0 +1,19 @@
1
+ import rfdc from 'rfdc';
2
+ import { deepmergeCustom } from 'deepmerge-ts';
3
+ const mergeOptions = {
4
+ mergeArrays: false,
5
+ };
6
+ export const deepClone = rfdc();
7
+ export const deepMerge = deepmergeCustom(mergeOptions);
8
+ export function deepMergeItems(a, b) {
9
+ if (Array.isArray(a) && Array.isArray(b)) {
10
+ return a.map((item, index) => deepMerge(item, b[index]));
11
+ }
12
+ else if (!Array.isArray(a) && !Array.isArray(b)) {
13
+ return deepMerge(a, b);
14
+ }
15
+ else {
16
+ throw new Error('Cannot merge array with non-array');
17
+ }
18
+ }
19
+ //# sourceMappingURL=deep.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"deep.js","sourceRoot":"","sources":["../../src/utils/deep.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,MAAM,CAAA;AACvB,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAA;AAE9C,MAAM,YAAY,GAAG;IACnB,WAAW,EAAE,KAAc;CAC5B,CAAA;AAED,MAAM,CAAC,MAAM,SAAS,GAAG,IAAI,EAAE,CAAA;AAE/B,MAAM,CAAC,MAAM,SAAS,GAAG,eAAe,CAAC,YAAY,CAAC,CAAA;AAEtD,MAAM,UAAU,cAAc,CAAC,CAAU,EAAE,CAAU;IACnD,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE;QAExC,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;KACzD;SAAM,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE;QACjD,OAAO,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;KACvB;SAAM;QACL,MAAM,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAA;KACrD;AACH,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "integreat",
3
- "version": "1.2.1",
3
+ "version": "1.3.1",
4
4
  "description": "Node.js integration layer",
5
5
  "author": "Kjell-Morten Bratsberg Thorsen <kjellmorten@integreat.io> (https://integreat.io/)",
6
6
  "license": "ISC",
@@ -40,12 +40,13 @@
40
40
  },
41
41
  "dependencies": {
42
42
  "@types/debug": "^4.1.8",
43
- "@types/luxon": "^3.3.1",
43
+ "@types/luxon": "^3.3.2",
44
44
  "ajv": "^8.12.0",
45
- "cron-parser": "^4.8.1",
45
+ "cron-parser": "^4.9.0",
46
46
  "debug": "^4.3.4",
47
+ "deepmerge-ts": "^5.1.0",
47
48
  "map-any": "^1.0.0",
48
- "map-transform": "^0.5.6",
49
+ "map-transform": "^1.0.3",
49
50
  "ms": "^2.1.3",
50
51
  "nanoid": "^4.0.2",
51
52
  "p-limit": "^4.0.0",
@@ -59,8 +60,8 @@
59
60
  "integreat-adapter-json": "^1.0.0",
60
61
  "integreat-adapter-uri": "^1.0.0",
61
62
  "integreat-transformers": "^1.0.0",
62
- "integreat-transporter-http": "1.1.0",
63
- "nock": "^13.3.2",
63
+ "integreat-transporter-http": "1.2.0",
64
+ "nock": "^13.3.3",
64
65
  "sinon": "^15.2.0"
65
66
  }
66
67
  }
@@ -1,2 +0,0 @@
1
- declare const _default: <T>(input: T) => T;
2
- export default _default;
@@ -1,3 +0,0 @@
1
- import rfdc from 'rfdc';
2
- export default rfdc();
3
- //# sourceMappingURL=deepClone.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"deepClone.js","sourceRoot":"","sources":["../../src/utils/deepClone.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,MAAM,CAAA;AAEvB,eAAe,IAAI,EAAE,CAAA"}