@compassdigital/sdk.typescript 3.40.0 → 3.42.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 +11 -0
- package/lib/base.d.ts +6 -0
- package/lib/base.d.ts.map +1 -1
- package/lib/base.js +26 -18
- package/lib/base.js.map +1 -1
- package/lib/index.d.ts +77 -7
- package/lib/index.d.ts.map +1 -1
- package/lib/index.js +79 -3
- package/lib/index.js.map +1 -1
- package/lib/interface/mealplan.d.ts +7 -1
- package/lib/interface/mealplan.d.ts.map +1 -1
- package/lib/interface/menu.d.ts +105 -3
- package/lib/interface/menu.d.ts.map +1 -1
- package/lib/interface/partner.d.ts +0 -1
- package/lib/interface/partner.d.ts.map +1 -1
- package/lib/interface/shoppingcart.d.ts +124 -67
- package/lib/interface/shoppingcart.d.ts.map +1 -1
- package/package.json +10 -5
- package/pipeline.yml +13 -0
- package/src/base.ts +30 -18
- package/src/index.ts +204 -9
- package/src/interface/mealplan.ts +12 -1
- package/src/interface/menu.ts +167 -5
- package/src/interface/partner.ts +0 -2
- package/src/interface/shoppingcart.ts +141 -72
- package/test/client.test.ts +31 -1
|
@@ -3,66 +3,113 @@ export interface Error {
|
|
|
3
3
|
message?: string;
|
|
4
4
|
code?: number;
|
|
5
5
|
}
|
|
6
|
-
export interface
|
|
6
|
+
export interface ItemsRequest {
|
|
7
|
+
items?: ItemRequest[];
|
|
8
|
+
}
|
|
9
|
+
export interface ItemRequest {
|
|
7
10
|
id: string;
|
|
11
|
+
quantity: Quantity;
|
|
12
|
+
options?: ModifierGroupRequest[];
|
|
8
13
|
_index?: string;
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
14
|
+
meta?: {
|
|
15
|
+
brand?: string;
|
|
16
|
+
brand_label?: Label;
|
|
17
|
+
menu?: string;
|
|
18
|
+
[index: string]: any;
|
|
13
19
|
};
|
|
20
|
+
special_instructions?: string;
|
|
21
|
+
amount_off_exclusions?: string[];
|
|
22
|
+
}
|
|
23
|
+
export interface ItemResponse {
|
|
24
|
+
id: string;
|
|
25
|
+
description?: Label;
|
|
26
|
+
_index?: string;
|
|
27
|
+
quantity: Quantity;
|
|
28
|
+
unit?: number;
|
|
29
|
+
price?: Price;
|
|
14
30
|
sale_price?: {
|
|
15
31
|
active?: boolean;
|
|
16
|
-
amount?:
|
|
32
|
+
amount?: MonetaryValue;
|
|
17
33
|
};
|
|
18
34
|
_subtotal?: {
|
|
19
|
-
amount?:
|
|
35
|
+
amount?: MonetaryValue;
|
|
20
36
|
};
|
|
21
37
|
_promo?: {
|
|
22
|
-
amount?:
|
|
38
|
+
amount?: MonetaryValue;
|
|
39
|
+
};
|
|
40
|
+
_discount?: {
|
|
41
|
+
amount?: MonetaryValue;
|
|
23
42
|
};
|
|
24
43
|
meta?: {
|
|
25
44
|
menu?: string;
|
|
26
45
|
brand?: string;
|
|
46
|
+
brand_label?: Label;
|
|
47
|
+
taxes?: string[];
|
|
48
|
+
menu_tax_tags?: string[];
|
|
49
|
+
orderable?: boolean;
|
|
50
|
+
volante_id?: string;
|
|
27
51
|
[index: string]: any;
|
|
28
52
|
};
|
|
29
|
-
options?:
|
|
30
|
-
id?: string;
|
|
31
|
-
label?: {
|
|
32
|
-
en?: string;
|
|
33
|
-
};
|
|
34
|
-
meta?: any;
|
|
35
|
-
items?: {
|
|
36
|
-
id?: string;
|
|
37
|
-
label?: {
|
|
38
|
-
en?: string;
|
|
39
|
-
};
|
|
40
|
-
_index?: string;
|
|
41
|
-
meta?: any;
|
|
42
|
-
quantity?: number;
|
|
43
|
-
amount_off_exclusions?: string[];
|
|
44
|
-
}[];
|
|
45
|
-
}[];
|
|
53
|
+
options?: ModifierGroupResponse[];
|
|
46
54
|
item_discount?: any;
|
|
47
55
|
special_instructions?: string;
|
|
48
56
|
amount_off_exclusions?: string[];
|
|
49
57
|
added_on?: string;
|
|
50
|
-
|
|
58
|
+
meal_value?: IntegerValue;
|
|
59
|
+
category?: Label;
|
|
51
60
|
}
|
|
52
|
-
export interface
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
+
export interface ModifierGroupRequest {
|
|
62
|
+
label?: Label;
|
|
63
|
+
items?: ModifierRequest[];
|
|
64
|
+
}
|
|
65
|
+
export interface ModifierGroupResponse {
|
|
66
|
+
id?: string;
|
|
67
|
+
label?: Label;
|
|
68
|
+
meta?: {
|
|
69
|
+
taxes?: string[];
|
|
70
|
+
original_label?: Label;
|
|
61
71
|
[index: string]: any;
|
|
62
72
|
};
|
|
73
|
+
items?: ModifierResponse[];
|
|
74
|
+
is?: {
|
|
75
|
+
disabled?: boolean;
|
|
76
|
+
};
|
|
77
|
+
}
|
|
78
|
+
export interface ModifierRequest {
|
|
79
|
+
id?: string;
|
|
80
|
+
label?: Label;
|
|
81
|
+
_index?: string;
|
|
82
|
+
quantity?: Quantity;
|
|
83
|
+
amount_off_exclusions?: string[];
|
|
84
|
+
}
|
|
85
|
+
export interface ModifierResponse {
|
|
86
|
+
id?: string;
|
|
87
|
+
price?: Price;
|
|
88
|
+
quantity?: Quantity;
|
|
89
|
+
label?: Label;
|
|
90
|
+
_index?: string;
|
|
91
|
+
meta?: {
|
|
92
|
+
sort_number?: number;
|
|
93
|
+
original_label?: Label;
|
|
94
|
+
taxes?: string[];
|
|
95
|
+
[index: string]: any;
|
|
96
|
+
};
|
|
97
|
+
amount_off_exclusions?: string[];
|
|
98
|
+
is?: {
|
|
99
|
+
disabled?: boolean;
|
|
100
|
+
};
|
|
63
101
|
}
|
|
64
|
-
export interface
|
|
65
|
-
|
|
102
|
+
export interface Taxes {
|
|
103
|
+
amount?: MonetaryValue;
|
|
104
|
+
rate?: MonetaryValue;
|
|
105
|
+
breakdown?: {
|
|
106
|
+
taxable_amount?: MonetaryValue;
|
|
107
|
+
tax_collectable?: MonetaryValue;
|
|
108
|
+
combined_tax_rate?: MonetaryValue;
|
|
109
|
+
gst?: MonetaryValue;
|
|
110
|
+
pst?: MonetaryValue;
|
|
111
|
+
[index: string]: any;
|
|
112
|
+
};
|
|
66
113
|
}
|
|
67
114
|
export interface Promo {
|
|
68
115
|
code?: string;
|
|
@@ -70,7 +117,7 @@ export interface Promo {
|
|
|
70
117
|
}
|
|
71
118
|
export interface BadgePay {
|
|
72
119
|
id?: string;
|
|
73
|
-
total?:
|
|
120
|
+
total?: MonetaryValue;
|
|
74
121
|
tender?: string;
|
|
75
122
|
name?: string;
|
|
76
123
|
}
|
|
@@ -79,25 +126,25 @@ export interface Payment {
|
|
|
79
126
|
mealplan?: {
|
|
80
127
|
id?: string;
|
|
81
128
|
tender?: string;
|
|
82
|
-
total?:
|
|
129
|
+
total?: MonetaryValue;
|
|
83
130
|
};
|
|
84
131
|
credit_card?: {
|
|
85
132
|
card_type?: string;
|
|
86
133
|
last4?: string;
|
|
87
|
-
total?:
|
|
134
|
+
total?: MonetaryValue;
|
|
88
135
|
};
|
|
89
136
|
digital_wallet_pay?: {
|
|
90
137
|
wallet_type?: string;
|
|
91
|
-
total?:
|
|
138
|
+
total?: MonetaryValue;
|
|
92
139
|
};
|
|
93
140
|
meal_swipes?: {
|
|
94
141
|
id?: string;
|
|
95
142
|
tender?: string;
|
|
96
143
|
tender_type?: string;
|
|
97
144
|
tender_name?: string;
|
|
98
|
-
swipes?:
|
|
99
|
-
rate?:
|
|
100
|
-
total?:
|
|
145
|
+
swipes?: MonetaryValue;
|
|
146
|
+
rate?: MonetaryValue;
|
|
147
|
+
total?: MonetaryValue;
|
|
101
148
|
};
|
|
102
149
|
meal_exchange?: {
|
|
103
150
|
id?: string;
|
|
@@ -135,56 +182,56 @@ export interface ShoppingCartResponse {
|
|
|
135
182
|
menu?: string;
|
|
136
183
|
brand?: string;
|
|
137
184
|
date?: any;
|
|
138
|
-
items?:
|
|
185
|
+
items?: ItemResponse[];
|
|
139
186
|
sub_total?: {
|
|
140
|
-
amount?:
|
|
187
|
+
amount?: MonetaryValue;
|
|
141
188
|
};
|
|
142
189
|
promo?: {
|
|
143
190
|
code?: string;
|
|
144
|
-
amount_off?:
|
|
145
|
-
percent_off?:
|
|
146
|
-
amount?:
|
|
191
|
+
amount_off?: MonetaryValue;
|
|
192
|
+
percent_off?: MonetaryValue;
|
|
193
|
+
amount?: MonetaryValue;
|
|
147
194
|
app?: string;
|
|
148
195
|
};
|
|
149
196
|
loyalty?: {
|
|
150
197
|
coupon?: {
|
|
151
198
|
code?: string;
|
|
152
|
-
amount_off?:
|
|
153
|
-
amount?:
|
|
199
|
+
amount_off?: MonetaryValue;
|
|
200
|
+
amount?: MonetaryValue;
|
|
154
201
|
name?: string;
|
|
155
202
|
};
|
|
156
203
|
order_loyalty_points?: boolean;
|
|
157
204
|
};
|
|
158
205
|
discount?: {
|
|
159
206
|
code?: string;
|
|
160
|
-
amount_off?:
|
|
161
|
-
percent_off?:
|
|
162
|
-
amount?:
|
|
207
|
+
amount_off?: MonetaryValue;
|
|
208
|
+
percent_off?: MonetaryValue;
|
|
209
|
+
amount?: MonetaryValue;
|
|
163
210
|
};
|
|
164
211
|
payment_method?: {
|
|
165
212
|
email?: string;
|
|
166
213
|
mealplan?: {
|
|
167
214
|
id?: string;
|
|
168
215
|
tender?: string;
|
|
169
|
-
total?:
|
|
216
|
+
total?: MonetaryValue;
|
|
170
217
|
};
|
|
171
218
|
credit_card?: {
|
|
172
219
|
card_type?: string;
|
|
173
220
|
last4?: string;
|
|
174
|
-
total?:
|
|
221
|
+
total?: MonetaryValue;
|
|
175
222
|
};
|
|
176
223
|
digital_wallet_pay?: {
|
|
177
224
|
wallet_type?: string;
|
|
178
|
-
total?:
|
|
225
|
+
total?: MonetaryValue;
|
|
179
226
|
};
|
|
180
227
|
meal_swipes?: {
|
|
181
228
|
id?: string;
|
|
182
229
|
tender?: string;
|
|
183
230
|
tender_type?: string;
|
|
184
231
|
tender_name?: string;
|
|
185
|
-
swipes?:
|
|
186
|
-
rate?:
|
|
187
|
-
total?:
|
|
232
|
+
swipes?: MonetaryValue;
|
|
233
|
+
rate?: MonetaryValue;
|
|
234
|
+
total?: MonetaryValue;
|
|
188
235
|
};
|
|
189
236
|
meal_exchange?: {
|
|
190
237
|
id?: string;
|
|
@@ -192,10 +239,10 @@ export interface ShoppingCartResponse {
|
|
|
192
239
|
};
|
|
193
240
|
badge_pay?: BadgePay;
|
|
194
241
|
};
|
|
195
|
-
taxes?:
|
|
242
|
+
taxes?: Taxes;
|
|
196
243
|
total?: {
|
|
197
|
-
amount?:
|
|
198
|
-
meals?:
|
|
244
|
+
amount?: MonetaryValue;
|
|
245
|
+
meals?: MonetaryValue;
|
|
199
246
|
};
|
|
200
247
|
exemptions?: {
|
|
201
248
|
tax?: boolean;
|
|
@@ -204,10 +251,10 @@ export interface ShoppingCartResponse {
|
|
|
204
251
|
id?: string;
|
|
205
252
|
};
|
|
206
253
|
service_fee?: {
|
|
207
|
-
amount?:
|
|
254
|
+
amount?: MonetaryValue;
|
|
208
255
|
};
|
|
209
256
|
delivery_fee?: {
|
|
210
|
-
amount?:
|
|
257
|
+
amount?: MonetaryValue;
|
|
211
258
|
};
|
|
212
259
|
is?: {
|
|
213
260
|
type?: string;
|
|
@@ -221,6 +268,16 @@ export interface ShoppingCartResponse {
|
|
|
221
268
|
};
|
|
222
269
|
}
|
|
223
270
|
export type ShoppingCart = ShoppingCartResponse;
|
|
271
|
+
export interface Label {
|
|
272
|
+
en?: string;
|
|
273
|
+
fr?: string;
|
|
274
|
+
}
|
|
275
|
+
export interface Price {
|
|
276
|
+
amount?: MonetaryValue;
|
|
277
|
+
}
|
|
278
|
+
export type MonetaryValue = number;
|
|
279
|
+
export type IntegerValue = number;
|
|
280
|
+
export type Quantity = IntegerValue;
|
|
224
281
|
export type PostShoppingcartCartBody = ShoppingCartRequest;
|
|
225
282
|
export type PostShoppingcartCartResponse = ShoppingCartResponse;
|
|
226
283
|
export interface PostShoppingcartCartRequest extends BaseRequest {
|
|
@@ -229,7 +286,7 @@ export interface PostShoppingcartCartRequest extends BaseRequest {
|
|
|
229
286
|
export interface PutShoppingcartCartItemsPath {
|
|
230
287
|
id: string;
|
|
231
288
|
}
|
|
232
|
-
export type PutShoppingcartCartItemsBody =
|
|
289
|
+
export type PutShoppingcartCartItemsBody = ItemsRequest;
|
|
233
290
|
export type PutShoppingcartCartItemsResponse = ShoppingCartResponse;
|
|
234
291
|
export interface PutShoppingcartCartItemsRequest extends BaseRequest, PutShoppingcartCartItemsPath {
|
|
235
292
|
body: PutShoppingcartCartItemsBody;
|
|
@@ -237,7 +294,7 @@ export interface PutShoppingcartCartItemsRequest extends BaseRequest, PutShoppin
|
|
|
237
294
|
export interface DeleteShoppingcartCartItemsPath {
|
|
238
295
|
id: string;
|
|
239
296
|
}
|
|
240
|
-
export type DeleteShoppingcartCartItemsBody =
|
|
297
|
+
export type DeleteShoppingcartCartItemsBody = ItemsRequest;
|
|
241
298
|
export type DeleteShoppingcartCartItemsResponse = ShoppingCartResponse;
|
|
242
299
|
export interface DeleteShoppingcartCartItemsRequest extends BaseRequest, DeleteShoppingcartCartItemsPath {
|
|
243
300
|
body: DeleteShoppingcartCartItemsBody;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"shoppingcart.d.ts","sourceRoot":"","sources":["../../src/interface/shoppingcart.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,QAAQ,CAAC;AAEnD,MAAM,WAAW,KAAK;IACpB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,
|
|
1
|
+
{"version":3,"file":"shoppingcart.d.ts","sourceRoot":"","sources":["../../src/interface/shoppingcart.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@compassdigital/sdk.typescript",
|
|
3
|
-
"version": "3.
|
|
3
|
+
"version": "3.42.0",
|
|
4
4
|
"description": "Compass Digital Labs TypeScript SDK",
|
|
5
5
|
"type": "commonjs",
|
|
6
6
|
"main": "./lib/index.js",
|
|
@@ -33,16 +33,21 @@
|
|
|
33
33
|
},
|
|
34
34
|
"author": "",
|
|
35
35
|
"license": "ISC",
|
|
36
|
+
"repository": {
|
|
37
|
+
"type": "git",
|
|
38
|
+
"url": "https://github.com/compassdigital/cdl",
|
|
39
|
+
"directory": "api/platform2/npm/compassdigital.sdk.typescript"
|
|
40
|
+
},
|
|
36
41
|
"dependencies": {
|
|
37
42
|
"cross-fetch": "^3.1.5"
|
|
38
43
|
},
|
|
39
44
|
"devDependencies": {
|
|
40
|
-
"@compassdigital/sdk.typescript.cli": "^3.
|
|
41
|
-
"@types/jest": "^
|
|
45
|
+
"@compassdigital/sdk.typescript.cli": "^3.26.0",
|
|
46
|
+
"@types/jest": "^29.2.4",
|
|
42
47
|
"@types/node": "^18.0.0",
|
|
43
|
-
"esbuild": "^0.
|
|
48
|
+
"esbuild": "^0.16.9",
|
|
44
49
|
"esbuild-jest": "^0.5.0",
|
|
45
|
-
"jest": "^
|
|
50
|
+
"jest": "^29.3.1",
|
|
46
51
|
"rimraf": "^3.0.2",
|
|
47
52
|
"typescript": "^4.7.4"
|
|
48
53
|
}
|
package/pipeline.yml
ADDED
package/src/base.ts
CHANGED
|
@@ -19,6 +19,9 @@ export interface RequestOptions {
|
|
|
19
19
|
base_url?: string;
|
|
20
20
|
// intercept outgoing http requests
|
|
21
21
|
intercept?: InterceptFn;
|
|
22
|
+
// throw this error value instead of a ServiceError
|
|
23
|
+
// note: the ServiceError will be set as the cause property.
|
|
24
|
+
throws?: any;
|
|
22
25
|
}
|
|
23
26
|
|
|
24
27
|
/**
|
|
@@ -171,15 +174,8 @@ export class ServiceError extends Error {
|
|
|
171
174
|
try {
|
|
172
175
|
return await response;
|
|
173
176
|
} catch (err) {
|
|
174
|
-
if (err
|
|
175
|
-
|
|
176
|
-
return null;
|
|
177
|
-
}
|
|
178
|
-
for (const code of codes) {
|
|
179
|
-
if (err.status === code || err.code === code) {
|
|
180
|
-
return null;
|
|
181
|
-
}
|
|
182
|
-
}
|
|
177
|
+
if (ServiceError.unwrap(err, codes)) {
|
|
178
|
+
return null;
|
|
183
179
|
}
|
|
184
180
|
throw err;
|
|
185
181
|
}
|
|
@@ -193,20 +189,33 @@ export class ServiceError extends Error {
|
|
|
193
189
|
const data = await response;
|
|
194
190
|
return { ok: true, data, err: null };
|
|
195
191
|
} catch (err) {
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
}
|
|
200
|
-
for (const code of codes) {
|
|
201
|
-
if (err.status === code || err.code === code) {
|
|
202
|
-
return { ok: false, data: null, err };
|
|
203
|
-
}
|
|
204
|
-
}
|
|
192
|
+
const match = ServiceError.unwrap(err, codes);
|
|
193
|
+
if (match) {
|
|
194
|
+
return { ok: false, data: null, err: match };
|
|
205
195
|
}
|
|
206
196
|
throw err;
|
|
207
197
|
}
|
|
208
198
|
}
|
|
209
199
|
|
|
200
|
+
/**
|
|
201
|
+
* Returns the first ServiceError in the cause chain matches the provided codes.
|
|
202
|
+
* If no codes were provided, the first ServiceError is returned.
|
|
203
|
+
*/
|
|
204
|
+
private static unwrap(err: any, codes: number[]): ServiceError|null {
|
|
205
|
+
while (err) {
|
|
206
|
+
if (codes.length === 0) {
|
|
207
|
+
return err
|
|
208
|
+
}
|
|
209
|
+
for (const code of codes) {
|
|
210
|
+
if (err.status === code || err.code === code) {
|
|
211
|
+
return err
|
|
212
|
+
}
|
|
213
|
+
}
|
|
214
|
+
err = err?.cause;
|
|
215
|
+
}
|
|
216
|
+
return null;
|
|
217
|
+
}
|
|
218
|
+
|
|
210
219
|
/**
|
|
211
220
|
* Constructs a ServiceError from the provided response data.
|
|
212
221
|
*/
|
|
@@ -393,6 +402,9 @@ export abstract class BaseServiceClient {
|
|
|
393
402
|
options.retry--;
|
|
394
403
|
return this.request(service, name, method, route, body, options);
|
|
395
404
|
}
|
|
405
|
+
if (options.throws) {
|
|
406
|
+
throw Object.assign(options.throws, { cause: err });
|
|
407
|
+
}
|
|
396
408
|
throw err;
|
|
397
409
|
}
|
|
398
410
|
const data = res.body ? JSON.parse(res.body) : res.body;
|