@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 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' | 'take_away' | 'kitchen'
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
- - `TakeAwayOrder`
30
+ - `CollectionOrder`
31
+ - `TakeAwayOrder` (deprecated alias)
31
32
  - `KitchenOrder`
32
33
  - `DeliveryOrderDetails`
33
- - `TakeAwayOrderDetails`
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
- - `take_away` orders expose collection-specific fields like `requestedCollectionTime`, `finalCollectionTime`, `collectedAt`
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
- - `take_away` accepts `collectionTime`
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 / take-away scheduling fields.
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: 'take_away',
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', 'take_away'],
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 takeAwayOrderFieldsSchema = external_exports.object({
14124
- type: external_exports.literal("take_away"),
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 takeAwayOrderSchema = orderBaseSchema.extend(takeAwayOrderFieldsSchema.shape);
14157
+ var collectionOrderSchema = orderBaseSchema.extend(collectionOrderFieldsSchema.shape);
14158
+ var takeAwayOrderSchema = collectionOrderSchema;
14149
14159
  var kitchenOrderSchema = orderBaseSchema.extend(kitchenOrderFieldsSchema.shape);
14150
- var orderSchema = external_exports.discriminatedUnion("type", [
14151
- deliveryOrderSchema,
14152
- takeAwayOrderSchema,
14153
- kitchenOrderSchema
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 takeAwayOrderDetailsSchema = takeAwayOrderSchema.extend(orderDetailsCommonSchema.shape);
14174
+ var collectionOrderDetailsSchema = collectionOrderSchema.extend(orderDetailsCommonSchema.shape);
14175
+ var takeAwayOrderDetailsSchema = collectionOrderDetailsSchema;
14166
14176
  var kitchenOrderDetailsSchema = kitchenOrderSchema.extend(orderDetailsCommonSchema.shape);
14167
- var orderDetailsSchema = external_exports.discriminatedUnion("type", [
14168
- deliveryOrderDetailsSchema,
14169
- takeAwayOrderDetailsSchema,
14170
- kitchenOrderDetailsSchema
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,