@deliverart/sdk-js-order 2.12.0 → 2.13.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 -8
- package/dist/index.cjs +41 -14
- package/dist/index.d.cts +925 -242
- package/dist/index.d.ts +925 -242
- package/dist/index.js +38 -14
- package/package.json +9 -9
package/README.md
CHANGED
|
@@ -15,7 +15,7 @@ pnpm add @deliverart/sdk-js-order @deliverart/sdk-js-core
|
|
|
15
15
|
### Core Types
|
|
16
16
|
|
|
17
17
|
```typescript
|
|
18
|
-
type OrderType = 'delivery' | '
|
|
18
|
+
type OrderType = 'delivery' | 'collection' | 'kitchen'
|
|
19
19
|
type OrderStatus = 'pending' | 'confirmed' | 'rejected'
|
|
20
20
|
type OrderPreparationStatus = 'to_prepare' | 'in_preparation' | 'done'
|
|
21
21
|
type OrderSource = 'application' | 'ecommerce' | 'partner'
|
|
@@ -27,10 +27,12 @@ type OrderPlanningMode = 'PLANNED' | 'FORCED'
|
|
|
27
27
|
- `Order`
|
|
28
28
|
- `OrderDetails`
|
|
29
29
|
- `DeliveryOrder`
|
|
30
|
-
- `
|
|
30
|
+
- `CollectionOrder`
|
|
31
|
+
- `TakeAwayOrder` (deprecated alias)
|
|
31
32
|
- `KitchenOrder`
|
|
32
33
|
- `DeliveryOrderDetails`
|
|
33
|
-
- `
|
|
34
|
+
- `CollectionOrderDetails`
|
|
35
|
+
- `TakeAwayOrderDetails` (deprecated alias)
|
|
34
36
|
- `KitchenOrderDetails`
|
|
35
37
|
- `WritableOrder`
|
|
36
38
|
- `WritableUpdateOrder`
|
|
@@ -51,7 +53,7 @@ type OrderPlanningMode = 'PLANNED' | 'FORCED'
|
|
|
51
53
|
`Order` and `OrderDetails` are discriminated by `type`.
|
|
52
54
|
|
|
53
55
|
- `delivery` orders expose delivery-specific fields like `address`, `requestedDeliveryTime`, `finalDeliveryTime`, `deliveryStartedAt`, `deliveredAt`
|
|
54
|
-
- `
|
|
56
|
+
- `collection` orders expose collection-specific fields like `requestedCollectionTime`, `finalCollectionTime`, `collectedAt`
|
|
55
57
|
- `kitchen` orders exclude both delivery and collection scheduling fields
|
|
56
58
|
- all order read models also expose scheduling metadata such as `scheduledWindowStart`, `scheduledWindowEnd`, `schedulingVersion` and `planningMode`
|
|
57
59
|
- delivery read models additionally expose `estimatedRouteDurationSeconds`, `estimatedRouteDistanceMeters` and `stopSequence`
|
|
@@ -59,11 +61,12 @@ type OrderPlanningMode = 'PLANNED' | 'FORCED'
|
|
|
59
61
|
`CreateOrderInput` and `CalculateOrderFeesInput` are also discriminated by `type`.
|
|
60
62
|
|
|
61
63
|
- `delivery` accepts fields such as `address`, `customerAddress`, `locationData`, `referenceBundle`, `deliveryTime`
|
|
62
|
-
- `
|
|
64
|
+
- `collection` accepts `collectionTime`
|
|
65
|
+
- the legacy alias `take_away` is still accepted on write for backward compatibility
|
|
63
66
|
- `kitchen` does not accept delivery or collection scheduling fields
|
|
64
67
|
- all writable order inputs also accept `forceScheduling?: boolean` for internal operator-only retries that bypass slot/capacity validation
|
|
65
68
|
|
|
66
|
-
`UpdateOrderInput` keeps common editable fields and enforces mutually exclusive delivery /
|
|
69
|
+
`UpdateOrderInput` keeps common editable fields and enforces mutually exclusive delivery / collection scheduling fields.
|
|
67
70
|
|
|
68
71
|
## Order Requests
|
|
69
72
|
|
|
@@ -126,7 +129,7 @@ import { CalculateOrderFees } from '@deliverart/sdk-js-order'
|
|
|
126
129
|
|
|
127
130
|
const fees = await sdk.call(
|
|
128
131
|
new CalculateOrderFees({
|
|
129
|
-
type: '
|
|
132
|
+
type: 'collection',
|
|
130
133
|
source: 'application',
|
|
131
134
|
pointOfSale: '/point_of_sales/123e4567-e89b-12d3-a456-426614174000',
|
|
132
135
|
collectionTime: '2026-03-22T20:00:00+01:00',
|
|
@@ -155,7 +158,7 @@ import { GetOrders } from '@deliverart/sdk-js-order'
|
|
|
155
158
|
const orders = await sdk.call(
|
|
156
159
|
new GetOrders({
|
|
157
160
|
query: {
|
|
158
|
-
type: ['delivery', '
|
|
161
|
+
type: ['delivery', 'collection'],
|
|
159
162
|
status: ['pending', 'confirmed'],
|
|
160
163
|
preparationStatus: 'to_prepare',
|
|
161
164
|
'order[createdAt]': 'desc',
|
package/dist/index.cjs
CHANGED
|
@@ -62,6 +62,8 @@ __export(index_exports, {
|
|
|
62
62
|
bundlesQuerySchema: () => bundlesQuerySchema,
|
|
63
63
|
calculateOrderFeesInputSchema: () => calculateOrderFeesInputSchema,
|
|
64
64
|
calculateOrderFeesResponseSchema: () => calculateOrderFeesResponseSchema,
|
|
65
|
+
collectionOrderDetailsSchema: () => collectionOrderDetailsSchema,
|
|
66
|
+
collectionOrderSchema: () => collectionOrderSchema,
|
|
65
67
|
confirmOrderInputSchema: () => confirmOrderInputSchema,
|
|
66
68
|
confirmOrderResponseSchema: () => confirmOrderResponseSchema,
|
|
67
69
|
createBundleInputSchema: () => createBundleInputSchema,
|
|
@@ -170,6 +172,7 @@ __export(index_exports, {
|
|
|
170
172
|
updateOrderInputSchema: () => updateOrderInputSchema,
|
|
171
173
|
updateOrderResponseSchema: () => updateOrderResponseSchema,
|
|
172
174
|
writableBundleSchema: () => writableBundleSchema,
|
|
175
|
+
writableCollectionOrderSchema: () => writableCollectionOrderSchema,
|
|
173
176
|
writableDeliveryOrderSchema: () => writableDeliveryOrderSchema,
|
|
174
177
|
writableKitchenOrderSchema: () => writableKitchenOrderSchema,
|
|
175
178
|
writableOrderMenuItemModifierSchema: () => writableOrderMenuItemModifierSchema,
|
|
@@ -14108,6 +14111,12 @@ var orderBaseSchema = external_exports.object({
|
|
|
14108
14111
|
createdAt: import_sdk_js_global_types3.datetimeSchema,
|
|
14109
14112
|
updatedAt: import_sdk_js_global_types3.datetimeSchema
|
|
14110
14113
|
});
|
|
14114
|
+
var normalizeCollectionOrderType = (value) => {
|
|
14115
|
+
if (value !== null && typeof value === "object" && "type" in value && value.type === "take_away") {
|
|
14116
|
+
return { ...value, type: "collection" };
|
|
14117
|
+
}
|
|
14118
|
+
return value;
|
|
14119
|
+
};
|
|
14111
14120
|
var deliveryOrderFieldsSchema = external_exports.object({
|
|
14112
14121
|
type: external_exports.literal("delivery"),
|
|
14113
14122
|
address: orderAddressSchema.nullable(),
|
|
@@ -14120,8 +14129,8 @@ var deliveryOrderFieldsSchema = external_exports.object({
|
|
|
14120
14129
|
finalCollectionTime: external_exports.null(),
|
|
14121
14130
|
collectedAt: external_exports.null()
|
|
14122
14131
|
});
|
|
14123
|
-
var
|
|
14124
|
-
type: external_exports.literal("
|
|
14132
|
+
var collectionOrderFieldsSchema = external_exports.object({
|
|
14133
|
+
type: external_exports.literal("collection"),
|
|
14125
14134
|
address: external_exports.null(),
|
|
14126
14135
|
location: external_exports.null(),
|
|
14127
14136
|
requestedDeliveryTime: external_exports.null(),
|
|
@@ -14145,13 +14154,13 @@ var kitchenOrderFieldsSchema = external_exports.object({
|
|
|
14145
14154
|
collectedAt: external_exports.null()
|
|
14146
14155
|
});
|
|
14147
14156
|
var deliveryOrderSchema = orderBaseSchema.extend(deliveryOrderFieldsSchema.shape);
|
|
14148
|
-
var
|
|
14157
|
+
var collectionOrderSchema = orderBaseSchema.extend(collectionOrderFieldsSchema.shape);
|
|
14158
|
+
var takeAwayOrderSchema = collectionOrderSchema;
|
|
14149
14159
|
var kitchenOrderSchema = orderBaseSchema.extend(kitchenOrderFieldsSchema.shape);
|
|
14150
|
-
var orderSchema = external_exports.
|
|
14151
|
-
|
|
14152
|
-
|
|
14153
|
-
|
|
14154
|
-
]);
|
|
14160
|
+
var orderSchema = external_exports.preprocess(
|
|
14161
|
+
normalizeCollectionOrderType,
|
|
14162
|
+
external_exports.discriminatedUnion("type", [deliveryOrderSchema, collectionOrderSchema, kitchenOrderSchema])
|
|
14163
|
+
);
|
|
14155
14164
|
var orderDetailsCommonSchema = external_exports.object({
|
|
14156
14165
|
pointOfSale: import_sdk_js_point_of_sale.pointOfSaleIriSchema,
|
|
14157
14166
|
customer: import_sdk_js_customer.customerNullableIriSchema,
|
|
@@ -14162,13 +14171,17 @@ var orderDetailsCommonSchema = external_exports.object({
|
|
|
14162
14171
|
modifiers: external_exports.array(orderMenuItemModifierSchema).min(0)
|
|
14163
14172
|
});
|
|
14164
14173
|
var deliveryOrderDetailsSchema = deliveryOrderSchema.extend(orderDetailsCommonSchema.shape);
|
|
14165
|
-
var
|
|
14174
|
+
var collectionOrderDetailsSchema = collectionOrderSchema.extend(orderDetailsCommonSchema.shape);
|
|
14175
|
+
var takeAwayOrderDetailsSchema = collectionOrderDetailsSchema;
|
|
14166
14176
|
var kitchenOrderDetailsSchema = kitchenOrderSchema.extend(orderDetailsCommonSchema.shape);
|
|
14167
|
-
var orderDetailsSchema = external_exports.
|
|
14168
|
-
|
|
14169
|
-
|
|
14170
|
-
|
|
14171
|
-
|
|
14177
|
+
var orderDetailsSchema = external_exports.preprocess(
|
|
14178
|
+
normalizeCollectionOrderType,
|
|
14179
|
+
external_exports.discriminatedUnion("type", [
|
|
14180
|
+
deliveryOrderDetailsSchema,
|
|
14181
|
+
collectionOrderDetailsSchema,
|
|
14182
|
+
kitchenOrderDetailsSchema
|
|
14183
|
+
])
|
|
14184
|
+
);
|
|
14172
14185
|
var writableOrderMenuItemSchema = external_exports.lazy(
|
|
14173
14186
|
() => external_exports.object({
|
|
14174
14187
|
menuItem: import_sdk_js_menu.menuItemIriSchema,
|
|
@@ -14216,6 +14229,16 @@ var writableDeliveryOrderSchema = writableOrderBaseSchema.extend({
|
|
|
14216
14229
|
deliveryTime: import_sdk_js_global_types3.datetimeSchema.nullable().optional(),
|
|
14217
14230
|
collectionTime: external_exports.never().optional()
|
|
14218
14231
|
});
|
|
14232
|
+
var writableCollectionOrderSchema = writableOrderBaseSchema.extend({
|
|
14233
|
+
type: external_exports.literal("collection"),
|
|
14234
|
+
collectionTime: import_sdk_js_global_types3.datetimeSchema.nullable().optional(),
|
|
14235
|
+
address: external_exports.never().optional(),
|
|
14236
|
+
customerAddress: external_exports.never().optional(),
|
|
14237
|
+
locationData: external_exports.never().optional(),
|
|
14238
|
+
referenceBundle: external_exports.never().optional(),
|
|
14239
|
+
resolveLocationFromAddress: external_exports.never().optional(),
|
|
14240
|
+
deliveryTime: external_exports.never().optional()
|
|
14241
|
+
});
|
|
14219
14242
|
var writableTakeAwayOrderSchema = writableOrderBaseSchema.extend({
|
|
14220
14243
|
type: external_exports.literal("take_away"),
|
|
14221
14244
|
collectionTime: import_sdk_js_global_types3.datetimeSchema.nullable().optional(),
|
|
@@ -14238,6 +14261,7 @@ var writableKitchenOrderSchema = writableOrderBaseSchema.extend({
|
|
|
14238
14261
|
});
|
|
14239
14262
|
var writableOrderSchema = external_exports.discriminatedUnion("type", [
|
|
14240
14263
|
writableDeliveryOrderSchema,
|
|
14264
|
+
writableCollectionOrderSchema,
|
|
14241
14265
|
writableTakeAwayOrderSchema,
|
|
14242
14266
|
writableKitchenOrderSchema
|
|
14243
14267
|
]);
|
|
@@ -15206,6 +15230,8 @@ var UpdateOrder = class extends import_sdk_js_core26.AbstractApiRequest {
|
|
|
15206
15230
|
bundlesQuerySchema,
|
|
15207
15231
|
calculateOrderFeesInputSchema,
|
|
15208
15232
|
calculateOrderFeesResponseSchema,
|
|
15233
|
+
collectionOrderDetailsSchema,
|
|
15234
|
+
collectionOrderSchema,
|
|
15209
15235
|
confirmOrderInputSchema,
|
|
15210
15236
|
confirmOrderResponseSchema,
|
|
15211
15237
|
createBundleInputSchema,
|
|
@@ -15314,6 +15340,7 @@ var UpdateOrder = class extends import_sdk_js_core26.AbstractApiRequest {
|
|
|
15314
15340
|
updateOrderInputSchema,
|
|
15315
15341
|
updateOrderResponseSchema,
|
|
15316
15342
|
writableBundleSchema,
|
|
15343
|
+
writableCollectionOrderSchema,
|
|
15317
15344
|
writableDeliveryOrderSchema,
|
|
15318
15345
|
writableKitchenOrderSchema,
|
|
15319
15346
|
writableOrderMenuItemModifierSchema,
|