integreat 0.8.0-beta.2 → 0.8.0-beta.3
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/dist/handlers/run.js +10 -5
- package/dist/handlers/run.js.map +1 -1
- package/dist/service/endpoints/match.js +2 -4
- package/dist/service/endpoints/match.js.map +1 -1
- package/dist/service/endpoints/types.d.ts +2 -2
- package/dist/types.d.ts +4 -2
- package/dist/utils/validateFilters.d.ts +2 -2
- package/dist/utils/validateFilters.js +21 -7
- package/dist/utils/validateFilters.js.map +1 -1
- package/package.json +3 -3
package/dist/handlers/run.js
CHANGED
|
@@ -10,10 +10,11 @@ const prepareAction = (action, meta) => ({
|
|
|
10
10
|
});
|
|
11
11
|
const isOkResponse = (response) => typeof response?.status === 'string' &&
|
|
12
12
|
['ok', 'noaction'].includes(response.status);
|
|
13
|
+
const addModify = (mutation) => (0, is_1.isObject)(mutation) ? { $modify: true, ...mutation } : mutation;
|
|
13
14
|
function mutateAction(action, mutation, responses, mapOptions) {
|
|
14
15
|
if (mutation && (0, is_1.isAction)(action)) {
|
|
15
16
|
const mutationIncludingAction = Array.isArray(mutation)
|
|
16
|
-
? ['$action', ...mutation]
|
|
17
|
+
? ['$action', ...mutation.map(addModify)]
|
|
17
18
|
: { '.': '$action', ...mutation };
|
|
18
19
|
const responsesIncludingAction = { ...responses, $action: action };
|
|
19
20
|
return (0, map_transform_1.mapTransform)(mutationIncludingAction, mapOptions)(responsesIncludingAction);
|
|
@@ -76,8 +77,9 @@ function isStepOk(steps, responses) {
|
|
|
76
77
|
async function runStep(step, responses, newResponses, dispatch, mapOptions, meta, prevStep) {
|
|
77
78
|
let response;
|
|
78
79
|
if (step.conditions) {
|
|
79
|
-
|
|
80
|
-
|
|
80
|
+
const validationErrors = (0, validateFilters_1.default)(step.conditions, true)(responses);
|
|
81
|
+
if (validationErrors.length > 0) {
|
|
82
|
+
response = setStepError(step.id, validationErrors.join(' | '));
|
|
81
83
|
}
|
|
82
84
|
}
|
|
83
85
|
else if (prevStep) {
|
|
@@ -153,7 +155,10 @@ exports.default = (jobs, mapOptions) => async function run(action, { dispatch })
|
|
|
153
155
|
}
|
|
154
156
|
const prevResponses = { action };
|
|
155
157
|
const responses = await runFlow(job, prevResponses, dispatch, mapOptions, meta);
|
|
156
|
-
const
|
|
157
|
-
|
|
158
|
+
const actionWithResponse = {
|
|
159
|
+
...action,
|
|
160
|
+
response: getFlowResponse(job, responses),
|
|
161
|
+
};
|
|
162
|
+
return cleanUpResponse(mutateAction(actionWithResponse, job.responseMutation, { ...responses, action: actionWithResponse }, mapOptions));
|
|
158
163
|
};
|
|
159
164
|
//# sourceMappingURL=run.js.map
|
package/dist/handlers/run.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"run.js","sourceRoot":"","sources":["../../src/handlers/run.ts"],"names":[],"mappings":";;AACA,iDAAgE;AAYhE,sDAA0D;AAC1D,
|
|
1
|
+
{"version":3,"file":"run.js","sourceRoot":"","sources":["../../src/handlers/run.ts"],"names":[],"mappings":"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"}
|
|
@@ -19,16 +19,14 @@ const matchParams = ({ match: { params } = {} }, { payload }) => typeof params !
|
|
|
19
19
|
const matchIncoming = ({ match: { incoming: incomingEndpoint } = {} }, isIncoming) => incomingEndpoint === undefined || incomingEndpoint === isIncoming;
|
|
20
20
|
function isMatch(endpoint) {
|
|
21
21
|
const match = endpoint.match || {};
|
|
22
|
-
const matchFilters = match.filters
|
|
23
|
-
? (0, validateFilters_1.default)(match.filters)
|
|
24
|
-
: () => true;
|
|
22
|
+
const matchFilters = match.filters ? (0, validateFilters_1.default)(match.filters) : () => [];
|
|
25
23
|
return (action, isIncoming = false) => matchId(endpoint, action) &&
|
|
26
24
|
matchType(endpoint, action) &&
|
|
27
25
|
matchScope(endpoint, action) &&
|
|
28
26
|
matchAction(endpoint, action) &&
|
|
29
27
|
matchParams(endpoint, action) &&
|
|
30
28
|
matchIncoming(endpoint, isIncoming) &&
|
|
31
|
-
matchFilters(action);
|
|
29
|
+
matchFilters(action).length === 0;
|
|
32
30
|
}
|
|
33
31
|
exports.default = isMatch;
|
|
34
32
|
//# sourceMappingURL=match.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"match.js","sourceRoot":"","sources":["../../../src/service/endpoints/match.ts"],"names":[],"mappings":";;AAAA,iEAAyD;AAGzD,6CAAiD;AAEjD,MAAM,UAAU,GAAG,CAAC,KAAyB,EAAE,KAAyB,EAAE,EAAE,CAC1E,IAAA,qBAAa,EAAC,KAAK,EAAE,KAAK,CAAC,CAAA;AAE7B,MAAM,QAAQ,GAAG,CAAC,MAA0B,EAAE,GAAW,EAAE,EAAE,CAC3D,MAAM,IAAI,MAAM,CAAC,GAAG,CAAC,KAAK,SAAS,CAAA;AAErC,MAAM,OAAO,GAAG,CACd,QAAqB,EACrB,EAAE,OAAO,EAAE,EAAE,QAAQ,EAAE,UAAU,EAAE,GAAG,EAAE,EAAU,EAClD,EAAE,CAAC,CAAC,UAAU,IAAI,QAAQ,CAAC,EAAE,KAAK,UAAU,CAAA;AAE9C,MAAM,SAAS,GAAG,CAAC,EAAE,KAAK,GAAG,EAAE,EAAe,EAAE,EAAE,OAAO,EAAU,EAAE,EAAE,CACrE,CAAC,KAAK,CAAC,IAAI,IAAI,UAAU,CAAC,KAAK,CAAC,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC,CAAA;AAErD,MAAM,UAAU,GAAG,CAAC,EAAE,KAAK,GAAG,EAAE,EAAe,EAAE,EAAE,OAAO,EAAU,EAAE,EAAE,CACtE,CAAC,KAAK,CAAC,KAAK;IACZ,UAAU,CACR,KAAK,CAAC,KAAK,EACX,OAAO,CAAC,EAAE;QACR,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;YACzB,CAAC,CAAC,SAAS;YACX,CAAC,CAAC,QAAQ;QACZ,CAAC,CAAC,YAAY,CACjB,CAAA;AAEH,MAAM,WAAW,GAAG,CAAC,EAAE,KAAK,GAAG,EAAE,EAAe,EAAE,EAAE,IAAI,EAAU,EAAE,EAAE,CACpE,CAAC,KAAK,CAAC,MAAM,IAAI,UAAU,CAAC,KAAK,CAAC,MAAM,EAAE,IAAI,CAAC,CAAA;AAEjD,MAAM,WAAW,GAAG,CAClB,EAAE,KAAK,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,EAAe,EACvC,EAAE,OAAO,EAAU,EACnB,EAAE,CACF,OAAO,MAAM,KAAK,QAAQ;IAC1B,MAAM,KAAK,IAAI;IACf,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,KAAK,CAC1B,CAAC,CAAC,GAAG,EAAE,UAAU,CAAC,EAAE,EAAE,CAAC,CAAC,UAAU,IAAI,QAAQ,CAAC,OAAO,EAAE,GAAG,CAAC,CAC7D,CAAA;AAEH,MAAM,aAAa,GAAG,CACpB,EAAE,KAAK,EAAE,EAAE,QAAQ,EAAE,gBAAgB,EAAE,GAAG,EAAE,EAAe,EAC3D,UAAmB,EACnB,EAAE,CAAC,gBAAgB,KAAK,SAAS,IAAI,gBAAgB,KAAK,UAAU,CAAA;AAQtE,SAAwB,OAAO,CAC7B,QAAqB;IAErB,MAAM,KAAK,GAAG,QAAQ,CAAC,KAAK,IAAI,EAAE,CAAA;IAClC,MAAM,YAAY,GAAG,KAAK,CAAC,OAAO
|
|
1
|
+
{"version":3,"file":"match.js","sourceRoot":"","sources":["../../../src/service/endpoints/match.ts"],"names":[],"mappings":";;AAAA,iEAAyD;AAGzD,6CAAiD;AAEjD,MAAM,UAAU,GAAG,CAAC,KAAyB,EAAE,KAAyB,EAAE,EAAE,CAC1E,IAAA,qBAAa,EAAC,KAAK,EAAE,KAAK,CAAC,CAAA;AAE7B,MAAM,QAAQ,GAAG,CAAC,MAA0B,EAAE,GAAW,EAAE,EAAE,CAC3D,MAAM,IAAI,MAAM,CAAC,GAAG,CAAC,KAAK,SAAS,CAAA;AAErC,MAAM,OAAO,GAAG,CACd,QAAqB,EACrB,EAAE,OAAO,EAAE,EAAE,QAAQ,EAAE,UAAU,EAAE,GAAG,EAAE,EAAU,EAClD,EAAE,CAAC,CAAC,UAAU,IAAI,QAAQ,CAAC,EAAE,KAAK,UAAU,CAAA;AAE9C,MAAM,SAAS,GAAG,CAAC,EAAE,KAAK,GAAG,EAAE,EAAe,EAAE,EAAE,OAAO,EAAU,EAAE,EAAE,CACrE,CAAC,KAAK,CAAC,IAAI,IAAI,UAAU,CAAC,KAAK,CAAC,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC,CAAA;AAErD,MAAM,UAAU,GAAG,CAAC,EAAE,KAAK,GAAG,EAAE,EAAe,EAAE,EAAE,OAAO,EAAU,EAAE,EAAE,CACtE,CAAC,KAAK,CAAC,KAAK;IACZ,UAAU,CACR,KAAK,CAAC,KAAK,EACX,OAAO,CAAC,EAAE;QACR,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;YACzB,CAAC,CAAC,SAAS;YACX,CAAC,CAAC,QAAQ;QACZ,CAAC,CAAC,YAAY,CACjB,CAAA;AAEH,MAAM,WAAW,GAAG,CAAC,EAAE,KAAK,GAAG,EAAE,EAAe,EAAE,EAAE,IAAI,EAAU,EAAE,EAAE,CACpE,CAAC,KAAK,CAAC,MAAM,IAAI,UAAU,CAAC,KAAK,CAAC,MAAM,EAAE,IAAI,CAAC,CAAA;AAEjD,MAAM,WAAW,GAAG,CAClB,EAAE,KAAK,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,EAAe,EACvC,EAAE,OAAO,EAAU,EACnB,EAAE,CACF,OAAO,MAAM,KAAK,QAAQ;IAC1B,MAAM,KAAK,IAAI;IACf,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,KAAK,CAC1B,CAAC,CAAC,GAAG,EAAE,UAAU,CAAC,EAAE,EAAE,CAAC,CAAC,UAAU,IAAI,QAAQ,CAAC,OAAO,EAAE,GAAG,CAAC,CAC7D,CAAA;AAEH,MAAM,aAAa,GAAG,CACpB,EAAE,KAAK,EAAE,EAAE,QAAQ,EAAE,gBAAgB,EAAE,GAAG,EAAE,EAAe,EAC3D,UAAmB,EACnB,EAAE,CAAC,gBAAgB,KAAK,SAAS,IAAI,gBAAgB,KAAK,UAAU,CAAA;AAQtE,SAAwB,OAAO,CAC7B,QAAqB;IAErB,MAAM,KAAK,GAAG,QAAQ,CAAC,KAAK,IAAI,EAAE,CAAA;IAClC,MAAM,YAAY,GAAG,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,IAAA,yBAAe,EAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,CAAA;IAE9E,OAAO,CAAC,MAAM,EAAE,UAAU,GAAG,KAAK,EAAE,EAAE,CACpC,OAAO,CAAC,QAAQ,EAAE,MAAM,CAAC;QACzB,SAAS,CAAC,QAAQ,EAAE,MAAM,CAAC;QAC3B,UAAU,CAAC,QAAQ,EAAE,MAAM,CAAC;QAC5B,WAAW,CAAC,QAAQ,EAAE,MAAM,CAAC;QAC7B,WAAW,CAAC,QAAQ,EAAE,MAAM,CAAC;QAC7B,aAAa,CAAC,QAAQ,EAAE,UAAU,CAAC;QACnC,YAAY,CAAC,MAAM,CAAC,CAAC,MAAM,KAAK,CAAC,CAAA;AACrC,CAAC;AAdD,0BAcC"}
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import { MapDefinition } from 'map-transform';
|
|
2
|
-
import { Action,
|
|
2
|
+
import { Action, Condition } from '../../types';
|
|
3
3
|
export declare type EndpointOptions = Record<string, unknown>;
|
|
4
4
|
export interface MatchObject {
|
|
5
5
|
action?: string | string[];
|
|
6
6
|
type?: string | string[];
|
|
7
7
|
scope?: string | string[];
|
|
8
8
|
params?: Record<string, boolean | undefined>;
|
|
9
|
-
filters?: Record<string,
|
|
9
|
+
filters?: Record<string, Condition | boolean | undefined>;
|
|
10
10
|
incoming?: boolean;
|
|
11
11
|
}
|
|
12
12
|
export interface EndpointDef {
|
package/dist/types.d.ts
CHANGED
|
@@ -3,7 +3,6 @@ import { MapObject, MapPipe } from 'map-transform';
|
|
|
3
3
|
import { EndpointOptions } from './service/endpoints/types';
|
|
4
4
|
import { IdentConfig } from './service/types';
|
|
5
5
|
import { Service } from './service/types';
|
|
6
|
-
export declare type JsonSchema = Record<string, unknown> | boolean;
|
|
7
6
|
export interface Reference {
|
|
8
7
|
id: string | null;
|
|
9
8
|
$ref: string;
|
|
@@ -32,9 +31,12 @@ export declare type ScheduleObject = {
|
|
|
32
31
|
wm?: number[];
|
|
33
32
|
wy?: number[];
|
|
34
33
|
};
|
|
34
|
+
export interface Condition extends Record<string, unknown> {
|
|
35
|
+
failMessage?: string;
|
|
36
|
+
}
|
|
35
37
|
interface JobFields {
|
|
36
38
|
id: string;
|
|
37
|
-
conditions?: Record<string,
|
|
39
|
+
conditions?: Record<string, Condition | undefined>;
|
|
38
40
|
mutation?: MapObject | MapPipe;
|
|
39
41
|
}
|
|
40
42
|
export interface JobWithFlow extends JobFields {
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { Condition } from '../types';
|
|
2
2
|
export declare type FilterFn = (data: unknown) => boolean;
|
|
3
|
-
export default function validateFilters(filters: Record<string,
|
|
3
|
+
export default function validateFilters(filters: Record<string, Condition | boolean | undefined>, useFriendlyMessages?: boolean): (data: unknown) => string[];
|
|
@@ -1,7 +1,10 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const util = require("util");
|
|
3
4
|
const map_transform_1 = require("map-transform");
|
|
4
5
|
const is_1 = require("./is");
|
|
6
|
+
const cleanCondition = ({ failMessage, ...filter }) => filter;
|
|
7
|
+
const cleanFilter = (filter) => (0, is_1.isObject)(filter) ? cleanCondition(filter) : filter;
|
|
5
8
|
function prepareFilter(path, filter) {
|
|
6
9
|
if (path === '$or') {
|
|
7
10
|
if ((0, is_1.isObject)(filter)) {
|
|
@@ -9,19 +12,30 @@ function prepareFilter(path, filter) {
|
|
|
9
12
|
}
|
|
10
13
|
}
|
|
11
14
|
else if (filter) {
|
|
12
|
-
return (0, map_transform_1.validate)(path, filter);
|
|
15
|
+
return (0, map_transform_1.validate)(path, cleanFilter(filter));
|
|
13
16
|
}
|
|
14
17
|
return undefined;
|
|
15
18
|
}
|
|
16
|
-
|
|
19
|
+
const prepareMessage = (path, filter, useFriendlyMessages) => !useFriendlyMessages
|
|
20
|
+
? () => path
|
|
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`;
|
|
26
|
+
function validateFilters(filters, useFriendlyMessages = false) {
|
|
17
27
|
const filterFns = Object.entries(filters)
|
|
18
|
-
.map(([path, filter]) =>
|
|
19
|
-
|
|
28
|
+
.map(([path, filter]) => [
|
|
29
|
+
prepareFilter(path, filter),
|
|
30
|
+
prepareMessage(path, filter, useFriendlyMessages),
|
|
31
|
+
])
|
|
32
|
+
.filter(([filter]) => !!filter);
|
|
20
33
|
const isOrFilters = filters.$or === true;
|
|
21
34
|
return function validate(data) {
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
35
|
+
const errors = filterFns
|
|
36
|
+
.map(([filter, getMessage]) => (filter(data) ? undefined : getMessage()))
|
|
37
|
+
.filter(Boolean);
|
|
38
|
+
return isOrFilters && errors.length < filterFns.length ? [] : errors;
|
|
25
39
|
};
|
|
26
40
|
}
|
|
27
41
|
exports.default = validateFilters;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"validateFilters.js","sourceRoot":"","sources":["../../src/utils/validateFilters.ts"],"names":[],"mappings":";;AAAA,iDAAwC;AAExC,6BAA+B;
|
|
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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "integreat",
|
|
3
|
-
"version": "0.8.0-beta.
|
|
3
|
+
"version": "0.8.0-beta.3",
|
|
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,8 +56,8 @@
|
|
|
56
56
|
"devDependencies": {
|
|
57
57
|
"@integreat/ts-dev-setup": "^2.3.1",
|
|
58
58
|
"@types/sinon": "^10.0.13",
|
|
59
|
-
"integreat-transporter-http": "0.1.0-
|
|
59
|
+
"integreat-transporter-http": "0.1.0-beta.0",
|
|
60
60
|
"nock": "^13.2.9",
|
|
61
|
-
"sinon": "^14.0.
|
|
61
|
+
"sinon": "^14.0.1"
|
|
62
62
|
}
|
|
63
63
|
}
|