@unchainedshop/core-warehousing 2.0.0-beta8 → 2.0.0-beta9
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/jest.config.js +9 -0
- package/lib/db/WarehousingProvidersSchema.js +0 -1
- package/lib/db/WarehousingProvidersSchema.js.map +1 -1
- package/lib/director/WarehousingDirector.js +3 -3
- package/lib/director/WarehousingDirector.js.map +1 -1
- package/lib/module/configureWarehousingModule.d.ts +8 -1
- package/lib/module/configureWarehousingModule.js +25 -21
- package/lib/module/configureWarehousingModule.js.map +1 -1
- package/package.json +10 -9
- package/src/db/WarehousingProvidersSchema.js +0 -1
- package/src/director/WarehousingDirector.ts +3 -3
- package/src/module/configureWarehousingModule.ts +25 -24
- package/tests/warehousing-index.test.ts +14 -21
package/jest.config.js
CHANGED
|
@@ -3,7 +3,6 @@ import { Schemas } from '@unchainedshop/utils';
|
|
|
3
3
|
export const WarehousingProvidersSchema = new SimpleSchema({
|
|
4
4
|
type: { type: String, required: true },
|
|
5
5
|
adapterKey: { type: String, required: true },
|
|
6
|
-
authorId: { type: String, required: true },
|
|
7
6
|
configuration: Array,
|
|
8
7
|
'configuration.$': Object,
|
|
9
8
|
'configuration.$.key': String,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"WarehousingProvidersSchema.js","sourceRoot":"","sources":["../../src/db/WarehousingProvidersSchema.js"],"names":[],"mappings":"AAAA,OAAO,YAAY,MAAM,cAAc,CAAC;AACxC,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAE/C,MAAM,CAAC,MAAM,0BAA0B,GAAG,IAAI,YAAY,CACxD;IACE,IAAI,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE;IACtC,UAAU,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE;IAC5C,
|
|
1
|
+
{"version":3,"file":"WarehousingProvidersSchema.js","sourceRoot":"","sources":["../../src/db/WarehousingProvidersSchema.js"],"names":[],"mappings":"AAAA,OAAO,YAAY,MAAM,cAAc,CAAC;AACxC,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAE/C,MAAM,CAAC,MAAM,0BAA0B,GAAG,IAAI,YAAY,CACxD;IACE,IAAI,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE;IACtC,UAAU,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE;IAC5C,aAAa,EAAE,KAAK;IACpB,iBAAiB,EAAE,MAAM;IACzB,qBAAqB,EAAE,MAAM;IAC7B,uBAAuB,EAAE,MAAM;IAC/B,GAAG,OAAO,CAAC,eAAe;CAC3B,EACD,EAAE,iBAAiB,EAAE,KAAK,EAAE,CAC7B,CAAC"}
|
|
@@ -10,7 +10,7 @@ const baseDirector = BaseDirector('WarehousingDirector', {
|
|
|
10
10
|
});
|
|
11
11
|
export const WarehousingDirector = {
|
|
12
12
|
...baseDirector,
|
|
13
|
-
actions: async (warehousingProvider, warehousingContext,
|
|
13
|
+
actions: async (warehousingProvider, warehousingContext, unchainedAPI) => {
|
|
14
14
|
const Adapter = baseDirector.getAdapter(warehousingProvider.adapterKey);
|
|
15
15
|
if (!Adapter) {
|
|
16
16
|
throw new Error(`Warehousing Plugin ${warehousingProvider.adapterKey} not available`);
|
|
@@ -18,7 +18,7 @@ export const WarehousingDirector = {
|
|
|
18
18
|
const context = {
|
|
19
19
|
warehousingProviderId: warehousingProvider._id,
|
|
20
20
|
...warehousingContext,
|
|
21
|
-
...
|
|
21
|
+
...unchainedAPI,
|
|
22
22
|
};
|
|
23
23
|
const adapter = Adapter.actions(warehousingProvider.configuration, context);
|
|
24
24
|
const throughputTime = async () => {
|
|
@@ -73,7 +73,7 @@ export const WarehousingDirector = {
|
|
|
73
73
|
const { deliveryProvider } = context;
|
|
74
74
|
const referenceDate = getReferenceDate(context);
|
|
75
75
|
const warehousingThroughputTime = await throughputTime();
|
|
76
|
-
const actions = await DeliveryDirector.actions(deliveryProvider, context,
|
|
76
|
+
const actions = await DeliveryDirector.actions(deliveryProvider, context, unchainedAPI);
|
|
77
77
|
const deliveryThroughputTime = await actions.estimatedDeliveryThroughput(warehousingThroughputTime);
|
|
78
78
|
const shippingTimestamp = referenceDate.getTime() + warehousingThroughputTime;
|
|
79
79
|
const earliestDeliveryTimestamp = deliveryThroughputTime !== null ? shippingTimestamp + deliveryThroughputTime : null;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"WarehousingDirector.js","sourceRoot":"","sources":["../../src/director/WarehousingDirector.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAChE,OAAO,EAAE,GAAG,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACtD,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACpD,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAEtD,MAAM,gBAAgB,GAAG,CAAC,OAA2B,EAAE,EAAE;IACvD,OAAO,OAAO,IAAI,OAAO,CAAC,aAAa,CAAC,CAAC,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,IAAI,EAAE,CAAC;AAC/E,CAAC,CAAC;AAEF,MAAM,YAAY,GAAG,YAAY,CAAsB,qBAAqB,EAAE;IAC5E,cAAc,EAAE,YAAY;CAC7B,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,mBAAmB,GAAyB;IACvD,GAAG,YAAY;IAEf,OAAO,EAAE,KAAK,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,
|
|
1
|
+
{"version":3,"file":"WarehousingDirector.js","sourceRoot":"","sources":["../../src/director/WarehousingDirector.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,3 +1,10 @@
|
|
|
1
1
|
import { ModuleInput } from '@unchainedshop/types/core';
|
|
2
|
-
import { WarehousingModule } from '@unchainedshop/types/warehousing';
|
|
2
|
+
import { WarehousingModule, WarehousingProviderQuery, WarehousingProviderType } from '@unchainedshop/types/warehousing';
|
|
3
|
+
export declare const buildFindSelector: ({ type }?: WarehousingProviderQuery) => {
|
|
4
|
+
type: WarehousingProviderType;
|
|
5
|
+
deleted: any;
|
|
6
|
+
} | {
|
|
7
|
+
deleted: any;
|
|
8
|
+
type?: undefined;
|
|
9
|
+
};
|
|
3
10
|
export declare const configureWarehousingModule: ({ db, }: ModuleInput<Record<string, never>>) => Promise<WarehousingModule>;
|
|
@@ -10,7 +10,7 @@ const WAREHOUSING_PROVIDER_EVENTS = [
|
|
|
10
10
|
'WAREHOUSING_PROVIDER_UPDATE',
|
|
11
11
|
'WAREHOUSING_PROVIDER_REMOVE',
|
|
12
12
|
];
|
|
13
|
-
const buildFindSelector = ({ type } = {}) => {
|
|
13
|
+
export const buildFindSelector = ({ type } = {}) => {
|
|
14
14
|
const query = type ? { type, deleted: null } : { deleted: null };
|
|
15
15
|
return query;
|
|
16
16
|
};
|
|
@@ -84,24 +84,24 @@ export const configureWarehousingModule = async ({ db, }) => {
|
|
|
84
84
|
version: Adapter.version,
|
|
85
85
|
}));
|
|
86
86
|
},
|
|
87
|
-
findSupported: async (warehousingContext,
|
|
87
|
+
findSupported: async (warehousingContext, unchainedAPI) => {
|
|
88
88
|
const allProviders = await WarehousingProviders.find(buildFindSelector({})).toArray();
|
|
89
89
|
const providers = asyncFilter(allProviders, async (provider) => {
|
|
90
|
-
const director = await WarehousingDirector.actions(provider, warehousingContext,
|
|
90
|
+
const director = await WarehousingDirector.actions(provider, warehousingContext, unchainedAPI);
|
|
91
91
|
return director.isActive();
|
|
92
92
|
});
|
|
93
93
|
return providers;
|
|
94
94
|
},
|
|
95
|
-
configurationError: async (warehousingProvider,
|
|
96
|
-
const actions = await WarehousingDirector.actions(warehousingProvider, {},
|
|
95
|
+
configurationError: async (warehousingProvider, unchainedAPI) => {
|
|
96
|
+
const actions = await WarehousingDirector.actions(warehousingProvider, {}, unchainedAPI);
|
|
97
97
|
return actions.configurationError();
|
|
98
98
|
},
|
|
99
|
-
estimatedDispatch: async (warehousingProvider, warehousingContext,
|
|
100
|
-
const director = await WarehousingDirector.actions(warehousingProvider, warehousingContext,
|
|
99
|
+
estimatedDispatch: async (warehousingProvider, warehousingContext, unchainedAPI) => {
|
|
100
|
+
const director = await WarehousingDirector.actions(warehousingProvider, warehousingContext, unchainedAPI);
|
|
101
101
|
return director.estimatedDispatch();
|
|
102
102
|
},
|
|
103
|
-
estimatedStock: async (warehousingProvider, warehousingContext,
|
|
104
|
-
const director = await WarehousingDirector.actions(warehousingProvider, warehousingContext,
|
|
103
|
+
estimatedStock: async (warehousingProvider, warehousingContext, unchainedAPI) => {
|
|
104
|
+
const director = await WarehousingDirector.actions(warehousingProvider, warehousingContext, unchainedAPI);
|
|
105
105
|
return director.estimatedStock();
|
|
106
106
|
},
|
|
107
107
|
updateTokenOwnership: async ({ tokenId, userId, walletAddress }) => {
|
|
@@ -112,7 +112,7 @@ export const configureWarehousingModule = async ({ db, }) => {
|
|
|
112
112
|
},
|
|
113
113
|
});
|
|
114
114
|
},
|
|
115
|
-
tokenizeItems: async (order, { items },
|
|
115
|
+
tokenizeItems: async (order, { items }, unchainedAPI) => {
|
|
116
116
|
const virtualProviders = await WarehousingProviders.find(buildFindSelector({ type: WarehousingProviderType.VIRTUAL })).toArray();
|
|
117
117
|
await Promise.all(items.map(async ({ orderPosition, product }) => {
|
|
118
118
|
const warehousingContext = {
|
|
@@ -126,7 +126,7 @@ export const configureWarehousingModule = async ({ db, }) => {
|
|
|
126
126
|
const last = await lastPromise;
|
|
127
127
|
if (last)
|
|
128
128
|
return last;
|
|
129
|
-
const currentDirector = await WarehousingDirector.actions(provider, warehousingContext,
|
|
129
|
+
const currentDirector = await WarehousingDirector.actions(provider, warehousingContext, unchainedAPI);
|
|
130
130
|
const isActive = await currentDirector.isActive();
|
|
131
131
|
if (isActive) {
|
|
132
132
|
const tokenSurrogates = await currentDirector.tokenize();
|
|
@@ -136,11 +136,12 @@ export const configureWarehousingModule = async ({ db, }) => {
|
|
|
136
136
|
}, Promise.resolve(false));
|
|
137
137
|
}));
|
|
138
138
|
},
|
|
139
|
-
tokenMetadata: async (chainTokenId, { token, product, referenceDate },
|
|
139
|
+
tokenMetadata: async (chainTokenId, { token, product, locale, referenceDate }, unchainedAPI) => {
|
|
140
140
|
const virtualProviders = await WarehousingProviders.find(buildFindSelector({ type: WarehousingProviderType.VIRTUAL })).toArray();
|
|
141
141
|
const warehousingContext = {
|
|
142
142
|
product,
|
|
143
143
|
token,
|
|
144
|
+
locale,
|
|
144
145
|
quantity: token?.quantity || 1,
|
|
145
146
|
referenceDate,
|
|
146
147
|
};
|
|
@@ -148,7 +149,7 @@ export const configureWarehousingModule = async ({ db, }) => {
|
|
|
148
149
|
const last = await lastPromise;
|
|
149
150
|
if (last)
|
|
150
151
|
return last;
|
|
151
|
-
const currentDirector = await WarehousingDirector.actions(provider, warehousingContext,
|
|
152
|
+
const currentDirector = await WarehousingDirector.actions(provider, warehousingContext, unchainedAPI);
|
|
152
153
|
const isActive = await currentDirector.isActive();
|
|
153
154
|
if (isActive) {
|
|
154
155
|
return currentDirector.tokenMetadata(chainTokenId);
|
|
@@ -156,30 +157,33 @@ export const configureWarehousingModule = async ({ db, }) => {
|
|
|
156
157
|
return null;
|
|
157
158
|
}, Promise.resolve(null));
|
|
158
159
|
},
|
|
159
|
-
isActive: async (warehousingProvider,
|
|
160
|
-
const actions = await WarehousingDirector.actions(warehousingProvider, {},
|
|
160
|
+
isActive: async (warehousingProvider, unchainedAPI) => {
|
|
161
|
+
const actions = await WarehousingDirector.actions(warehousingProvider, {}, unchainedAPI);
|
|
161
162
|
return actions.isActive();
|
|
162
163
|
},
|
|
163
164
|
// Mutations
|
|
164
|
-
create: async (doc
|
|
165
|
+
create: async (doc) => {
|
|
165
166
|
const Adapter = WarehousingDirector.getAdapter(doc.adapterKey);
|
|
166
167
|
if (!Adapter)
|
|
167
168
|
return null;
|
|
168
|
-
const warehousingProviderId = await mutations.create({
|
|
169
|
+
const warehousingProviderId = await mutations.create({
|
|
170
|
+
configuration: Adapter.initialConfiguration,
|
|
171
|
+
...doc,
|
|
172
|
+
});
|
|
169
173
|
const warehousingProvider = await WarehousingProviders.findOne(generateDbFilterById(warehousingProviderId));
|
|
170
174
|
await emit('WAREHOUSING_PROVIDER_CREATE', { warehousingProvider });
|
|
171
175
|
return warehousingProviderId;
|
|
172
176
|
},
|
|
173
|
-
update: async (_id, doc
|
|
174
|
-
const warehousingProviderId = await mutations.update(_id, doc
|
|
177
|
+
update: async (_id, doc) => {
|
|
178
|
+
const warehousingProviderId = await mutations.update(_id, doc);
|
|
175
179
|
const warehousingProvider = await WarehousingProviders.findOne(generateDbFilterById(_id), {});
|
|
176
180
|
if (!warehousingProvider)
|
|
177
181
|
return null;
|
|
178
182
|
await emit('WAREHOUSING_PROVIDER_UPDATE', { warehousingProvider });
|
|
179
183
|
return warehousingProviderId;
|
|
180
184
|
},
|
|
181
|
-
delete: async (providerId
|
|
182
|
-
await mutations.delete(providerId
|
|
185
|
+
delete: async (providerId) => {
|
|
186
|
+
await mutations.delete(providerId);
|
|
183
187
|
const warehousingProvider = await WarehousingProviders.findOne(generateDbFilterById(providerId), {});
|
|
184
188
|
await emit('WAREHOUSING_PROVIDER_REMOVE', { warehousingProvider });
|
|
185
189
|
return warehousingProvider;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"configureWarehousingModule.js","sourceRoot":"","sources":["../../src/module/configureWarehousingModule.ts"],"names":[],"mappings":"AACA,OAAO,EAKL,uBAAuB,GACxB,MAAM,kCAAkC,CAAC;AAC1C,OAAO,EAAE,IAAI,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAC7D,OAAO,EAAE,oBAAoB,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AACjF,OAAO,EAAE,8BAA8B,EAAE,MAAM,sCAAsC,CAAC;AACtF,OAAO,EAAE,0BAA0B,EAAE,MAAM,kCAAkC,CAAC;AAC9E,OAAO,EAAE,mBAAmB,EAAE,MAAM,iCAAiC,CAAC;AACtE,OAAO,EAAE,wBAAwB,EAAE,MAAM,gCAAgC,CAAC;AAE1E,MAAM,2BAA2B,GAAa;IAC5C,6BAA6B;IAC7B,6BAA6B;IAC7B,6BAA6B;CAC9B,CAAC;AAEF,MAAM,iBAAiB,GAAG,CAAC,EAAE,IAAI,KAA+B,EAAE,EAAE,EAAE;
|
|
1
|
+
{"version":3,"file":"configureWarehousingModule.js","sourceRoot":"","sources":["../../src/module/configureWarehousingModule.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@unchainedshop/core-warehousing",
|
|
3
|
-
"version": "2.0.0-
|
|
3
|
+
"version": "2.0.0-beta9",
|
|
4
4
|
"main": "lib/warehousing-index.js",
|
|
5
5
|
"exports": {
|
|
6
6
|
".": "./lib/warehousing-index.js",
|
|
@@ -12,7 +12,8 @@
|
|
|
12
12
|
"clean": "rm -rf lib",
|
|
13
13
|
"build": "npm run clean && tsc",
|
|
14
14
|
"watch": "tsc -w",
|
|
15
|
-
"test": "jest --
|
|
15
|
+
"test": "NODE_OPTIONS=--experimental-vm-modules jest --detectOpenHandles --forceExit",
|
|
16
|
+
"test:watch": "NODE_OPTIONS=--experimental-vm-modules jest --watch --detectOpenHandles --forceExit"
|
|
16
17
|
},
|
|
17
18
|
"repository": {
|
|
18
19
|
"type": "git",
|
|
@@ -30,17 +31,17 @@
|
|
|
30
31
|
},
|
|
31
32
|
"homepage": "https://github.com/unchainedshop/unchained#readme",
|
|
32
33
|
"dependencies": {
|
|
33
|
-
"@unchainedshop/events": "^2.0.0-
|
|
34
|
-
"@unchainedshop/logger": "^2.0.0-
|
|
35
|
-
"@unchainedshop/utils": "^2.0.0-
|
|
34
|
+
"@unchainedshop/events": "^2.0.0-beta9",
|
|
35
|
+
"@unchainedshop/logger": "^2.0.0-beta9",
|
|
36
|
+
"@unchainedshop/utils": "^2.0.0-beta9",
|
|
36
37
|
"lru-cache": "^7.14.1",
|
|
37
|
-
"simpl-schema": "^3.0
|
|
38
|
+
"simpl-schema": "^3.2.0"
|
|
38
39
|
},
|
|
39
40
|
"devDependencies": {
|
|
40
|
-
"@types/node": "^18.11.
|
|
41
|
-
"@unchainedshop/types": "^2.0.0-
|
|
41
|
+
"@types/node": "^18.11.12",
|
|
42
|
+
"@unchainedshop/types": "^2.0.0-beta9",
|
|
42
43
|
"jest": "^29.3.1",
|
|
43
44
|
"ts-jest": "^29.0.3",
|
|
44
|
-
"typescript": "^4.9.
|
|
45
|
+
"typescript": "^4.9.4"
|
|
45
46
|
}
|
|
46
47
|
}
|
|
@@ -5,7 +5,6 @@ export const WarehousingProvidersSchema = new SimpleSchema(
|
|
|
5
5
|
{
|
|
6
6
|
type: { type: String, required: true },
|
|
7
7
|
adapterKey: { type: String, required: true },
|
|
8
|
-
authorId: { type: String, required: true },
|
|
9
8
|
configuration: Array,
|
|
10
9
|
'configuration.$': Object,
|
|
11
10
|
'configuration.$.key': String,
|
|
@@ -19,7 +19,7 @@ const baseDirector = BaseDirector<IWarehousingAdapter>('WarehousingDirector', {
|
|
|
19
19
|
export const WarehousingDirector: IWarehousingDirector = {
|
|
20
20
|
...baseDirector,
|
|
21
21
|
|
|
22
|
-
actions: async (warehousingProvider, warehousingContext,
|
|
22
|
+
actions: async (warehousingProvider, warehousingContext, unchainedAPI) => {
|
|
23
23
|
const Adapter = baseDirector.getAdapter(warehousingProvider.adapterKey);
|
|
24
24
|
|
|
25
25
|
if (!Adapter) {
|
|
@@ -28,7 +28,7 @@ export const WarehousingDirector: IWarehousingDirector = {
|
|
|
28
28
|
const context = {
|
|
29
29
|
warehousingProviderId: warehousingProvider._id,
|
|
30
30
|
...warehousingContext,
|
|
31
|
-
...
|
|
31
|
+
...unchainedAPI,
|
|
32
32
|
};
|
|
33
33
|
const adapter = Adapter.actions(warehousingProvider.configuration, context);
|
|
34
34
|
|
|
@@ -85,7 +85,7 @@ export const WarehousingDirector: IWarehousingDirector = {
|
|
|
85
85
|
const referenceDate = getReferenceDate(context);
|
|
86
86
|
const warehousingThroughputTime = await throughputTime();
|
|
87
87
|
|
|
88
|
-
const actions = await DeliveryDirector.actions(deliveryProvider, context,
|
|
88
|
+
const actions = await DeliveryDirector.actions(deliveryProvider, context, unchainedAPI);
|
|
89
89
|
const deliveryThroughputTime = await actions.estimatedDeliveryThroughput(
|
|
90
90
|
warehousingThroughputTime,
|
|
91
91
|
);
|
|
@@ -19,7 +19,7 @@ const WAREHOUSING_PROVIDER_EVENTS: string[] = [
|
|
|
19
19
|
'WAREHOUSING_PROVIDER_REMOVE',
|
|
20
20
|
];
|
|
21
21
|
|
|
22
|
-
const buildFindSelector = ({ type }: WarehousingProviderQuery = {}) => {
|
|
22
|
+
export const buildFindSelector = ({ type }: WarehousingProviderQuery = {}) => {
|
|
23
23
|
const query = type ? { type, deleted: null } : { deleted: null };
|
|
24
24
|
return query;
|
|
25
25
|
};
|
|
@@ -118,36 +118,36 @@ export const configureWarehousingModule = async ({
|
|
|
118
118
|
}));
|
|
119
119
|
},
|
|
120
120
|
|
|
121
|
-
findSupported: async (warehousingContext,
|
|
121
|
+
findSupported: async (warehousingContext, unchainedAPI) => {
|
|
122
122
|
const allProviders = await WarehousingProviders.find(buildFindSelector({})).toArray();
|
|
123
123
|
|
|
124
124
|
const providers = asyncFilter(allProviders, async (provider) => {
|
|
125
|
-
const director = await WarehousingDirector.actions(provider, warehousingContext,
|
|
125
|
+
const director = await WarehousingDirector.actions(provider, warehousingContext, unchainedAPI);
|
|
126
126
|
return director.isActive();
|
|
127
127
|
});
|
|
128
128
|
|
|
129
129
|
return providers;
|
|
130
130
|
},
|
|
131
131
|
|
|
132
|
-
configurationError: async (warehousingProvider,
|
|
133
|
-
const actions = await WarehousingDirector.actions(warehousingProvider, {},
|
|
132
|
+
configurationError: async (warehousingProvider, unchainedAPI) => {
|
|
133
|
+
const actions = await WarehousingDirector.actions(warehousingProvider, {}, unchainedAPI);
|
|
134
134
|
return actions.configurationError();
|
|
135
135
|
},
|
|
136
136
|
|
|
137
|
-
estimatedDispatch: async (warehousingProvider, warehousingContext,
|
|
137
|
+
estimatedDispatch: async (warehousingProvider, warehousingContext, unchainedAPI) => {
|
|
138
138
|
const director = await WarehousingDirector.actions(
|
|
139
139
|
warehousingProvider,
|
|
140
140
|
warehousingContext,
|
|
141
|
-
|
|
141
|
+
unchainedAPI,
|
|
142
142
|
);
|
|
143
143
|
return director.estimatedDispatch();
|
|
144
144
|
},
|
|
145
145
|
|
|
146
|
-
estimatedStock: async (warehousingProvider, warehousingContext,
|
|
146
|
+
estimatedStock: async (warehousingProvider, warehousingContext, unchainedAPI) => {
|
|
147
147
|
const director = await WarehousingDirector.actions(
|
|
148
148
|
warehousingProvider,
|
|
149
149
|
warehousingContext,
|
|
150
|
-
|
|
150
|
+
unchainedAPI,
|
|
151
151
|
);
|
|
152
152
|
return director.estimatedStock();
|
|
153
153
|
},
|
|
@@ -164,7 +164,7 @@ export const configureWarehousingModule = async ({
|
|
|
164
164
|
);
|
|
165
165
|
},
|
|
166
166
|
|
|
167
|
-
tokenizeItems: async (order, { items },
|
|
167
|
+
tokenizeItems: async (order, { items }, unchainedAPI) => {
|
|
168
168
|
const virtualProviders = await WarehousingProviders.find(
|
|
169
169
|
buildFindSelector({ type: WarehousingProviderType.VIRTUAL }),
|
|
170
170
|
).toArray();
|
|
@@ -184,7 +184,7 @@ export const configureWarehousingModule = async ({
|
|
|
184
184
|
const currentDirector = await WarehousingDirector.actions(
|
|
185
185
|
provider,
|
|
186
186
|
warehousingContext,
|
|
187
|
-
|
|
187
|
+
unchainedAPI,
|
|
188
188
|
);
|
|
189
189
|
const isActive = await currentDirector.isActive();
|
|
190
190
|
if (isActive) {
|
|
@@ -197,7 +197,7 @@ export const configureWarehousingModule = async ({
|
|
|
197
197
|
);
|
|
198
198
|
},
|
|
199
199
|
|
|
200
|
-
tokenMetadata: async (chainTokenId, { token, product, referenceDate },
|
|
200
|
+
tokenMetadata: async (chainTokenId, { token, product, locale, referenceDate }, unchainedAPI) => {
|
|
201
201
|
const virtualProviders = await WarehousingProviders.find(
|
|
202
202
|
buildFindSelector({ type: WarehousingProviderType.VIRTUAL }),
|
|
203
203
|
).toArray();
|
|
@@ -205,6 +205,7 @@ export const configureWarehousingModule = async ({
|
|
|
205
205
|
const warehousingContext: WarehousingContext = {
|
|
206
206
|
product,
|
|
207
207
|
token,
|
|
208
|
+
locale,
|
|
208
209
|
quantity: token?.quantity || 1,
|
|
209
210
|
referenceDate,
|
|
210
211
|
};
|
|
@@ -214,7 +215,7 @@ export const configureWarehousingModule = async ({
|
|
|
214
215
|
const currentDirector = await WarehousingDirector.actions(
|
|
215
216
|
provider,
|
|
216
217
|
warehousingContext,
|
|
217
|
-
|
|
218
|
+
unchainedAPI,
|
|
218
219
|
);
|
|
219
220
|
const isActive = await currentDirector.isActive();
|
|
220
221
|
if (isActive) {
|
|
@@ -224,20 +225,20 @@ export const configureWarehousingModule = async ({
|
|
|
224
225
|
}, Promise.resolve(null));
|
|
225
226
|
},
|
|
226
227
|
|
|
227
|
-
isActive: async (warehousingProvider,
|
|
228
|
-
const actions = await WarehousingDirector.actions(warehousingProvider, {},
|
|
228
|
+
isActive: async (warehousingProvider, unchainedAPI) => {
|
|
229
|
+
const actions = await WarehousingDirector.actions(warehousingProvider, {}, unchainedAPI);
|
|
229
230
|
return actions.isActive();
|
|
230
231
|
},
|
|
231
232
|
|
|
232
233
|
// Mutations
|
|
233
|
-
create: async (doc
|
|
234
|
+
create: async (doc) => {
|
|
234
235
|
const Adapter = WarehousingDirector.getAdapter(doc.adapterKey);
|
|
235
236
|
if (!Adapter) return null;
|
|
236
237
|
|
|
237
|
-
const warehousingProviderId = await mutations.create(
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
);
|
|
238
|
+
const warehousingProviderId = await mutations.create({
|
|
239
|
+
configuration: Adapter.initialConfiguration,
|
|
240
|
+
...doc,
|
|
241
|
+
});
|
|
241
242
|
|
|
242
243
|
const warehousingProvider = await WarehousingProviders.findOne(
|
|
243
244
|
generateDbFilterById(warehousingProviderId),
|
|
@@ -246,8 +247,8 @@ export const configureWarehousingModule = async ({
|
|
|
246
247
|
return warehousingProviderId;
|
|
247
248
|
},
|
|
248
249
|
|
|
249
|
-
update: async (_id: string, doc: WarehousingProvider
|
|
250
|
-
const warehousingProviderId = await mutations.update(_id, doc
|
|
250
|
+
update: async (_id: string, doc: WarehousingProvider) => {
|
|
251
|
+
const warehousingProviderId = await mutations.update(_id, doc);
|
|
251
252
|
const warehousingProvider = await WarehousingProviders.findOne(generateDbFilterById(_id), {});
|
|
252
253
|
|
|
253
254
|
if (!warehousingProvider) return null;
|
|
@@ -256,8 +257,8 @@ export const configureWarehousingModule = async ({
|
|
|
256
257
|
return warehousingProviderId;
|
|
257
258
|
},
|
|
258
259
|
|
|
259
|
-
delete: async (providerId
|
|
260
|
-
await mutations.delete(providerId
|
|
260
|
+
delete: async (providerId) => {
|
|
261
|
+
await mutations.delete(providerId);
|
|
261
262
|
const warehousingProvider = await WarehousingProviders.findOne(
|
|
262
263
|
generateDbFilterById(providerId),
|
|
263
264
|
{},
|
|
@@ -1,22 +1,15 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
});
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
it('Check queries', async () => {
|
|
19
|
-
assert.isFunction(await module.providerExists);
|
|
20
|
-
});
|
|
21
|
-
|
|
1
|
+
import { WarehousingProviderType } from "../src/director/WarehousingProviderType";
|
|
2
|
+
import { buildFindSelector } from "../src/module/configureWarehousingModule";
|
|
3
|
+
|
|
4
|
+
describe('Warehousing', () => {
|
|
5
|
+
describe('buildFindSelector', () => {
|
|
6
|
+
it('Return correct filter object when passed no argument', async () => {
|
|
7
|
+
expect(buildFindSelector({})).toEqual({ deleted: null })
|
|
8
|
+
});
|
|
9
|
+
|
|
10
|
+
it('Return correct filter object when passed no argument', async () => {
|
|
11
|
+
expect(buildFindSelector({type: WarehousingProviderType.PHYSICAL})).toEqual({ type: "PHYSICAL", deleted: null })
|
|
12
|
+
});
|
|
13
|
+
})
|
|
14
|
+
|
|
22
15
|
});
|