@firfi/voila-sdk 0.1.2 → 0.1.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.
Files changed (31) hide show
  1. package/README.md +5 -3
  2. package/dist/src/domain/schemas/index.d.ts +1 -0
  3. package/dist/src/domain/schemas/index.d.ts.map +1 -1
  4. package/dist/src/domain/schemas/index.js +1 -0
  5. package/dist/src/domain/schemas/index.js.map +1 -1
  6. package/dist/src/domain/schemas/order-details.d.ts +2623 -0
  7. package/dist/src/domain/schemas/order-details.d.ts.map +1 -0
  8. package/dist/src/domain/schemas/order-details.js +148 -0
  9. package/dist/src/domain/schemas/order-details.js.map +1 -0
  10. package/dist/src/domain/schemas/order-history.d.ts +237 -60
  11. package/dist/src/domain/schemas/order-history.d.ts.map +1 -1
  12. package/dist/src/domain/schemas/order-history.js +17 -12
  13. package/dist/src/domain/schemas/order-history.js.map +1 -1
  14. package/dist/src/domain/schemas/slot.d.ts +4 -4
  15. package/dist/src/index.d.ts +1 -0
  16. package/dist/src/index.d.ts.map +1 -1
  17. package/dist/src/index.js +1 -0
  18. package/dist/src/index.js.map +1 -1
  19. package/dist/src/voila/order-details.d.ts +22 -0
  20. package/dist/src/voila/order-details.d.ts.map +1 -0
  21. package/dist/src/voila/order-details.js +267 -0
  22. package/dist/src/voila/order-details.js.map +1 -0
  23. package/dist/src/voila/order-history.d.ts +9 -5
  24. package/dist/src/voila/order-history.d.ts.map +1 -1
  25. package/dist/src/voila/order-history.js +23 -5
  26. package/dist/src/voila/order-history.js.map +1 -1
  27. package/dist/src/voila/order-urls.d.ts +10 -0
  28. package/dist/src/voila/order-urls.d.ts.map +1 -1
  29. package/dist/src/voila/order-urls.js +12 -1
  30. package/dist/src/voila/order-urls.js.map +1 -1
  31. package/package.json +1 -1
@@ -171,9 +171,9 @@ export declare const RawSlotDayMappingSchema: Schema.Schema<{
171
171
  }, never>;
172
172
  export type RawSlotDayMapping = Schema.Schema.Type<typeof RawSlotDayMappingSchema>;
173
173
  export declare const RawSlotCarrierSchema: Schema.Schema<{
174
+ readonly carrierId?: string;
174
175
  readonly title?: string;
175
176
  readonly carrierDetails?: readonly unknown[];
176
- readonly carrierId?: string;
177
177
  readonly carrierName?: string;
178
178
  readonly daysMapping?: readonly ({
179
179
  readonly day: string;
@@ -240,9 +240,9 @@ export declare const RawSlotCarrierSchema: Schema.Schema<{
240
240
  } & {
241
241
  readonly [x: string]: unknown;
242
242
  }, {
243
+ readonly carrierId?: string;
243
244
  readonly title?: string;
244
245
  readonly carrierDetails?: readonly unknown[];
245
- readonly carrierId?: string;
246
246
  readonly carrierName?: string;
247
247
  readonly daysMapping?: readonly ({
248
248
  readonly day: string;
@@ -312,9 +312,9 @@ export declare const RawSlotCarrierSchema: Schema.Schema<{
312
312
  export type RawSlotCarrier = Schema.Schema.Type<typeof RawSlotCarrierSchema>;
313
313
  export declare const RawSlotListingResponseSchema: Schema.Schema<{
314
314
  readonly carriers: readonly ({
315
+ readonly carrierId?: string;
315
316
  readonly title?: string;
316
317
  readonly carrierDetails?: readonly unknown[];
317
- readonly carrierId?: string;
318
318
  readonly carrierName?: string;
319
319
  readonly daysMapping?: readonly ({
320
320
  readonly day: string;
@@ -390,9 +390,9 @@ export declare const RawSlotListingResponseSchema: Schema.Schema<{
390
390
  readonly [x: string]: unknown;
391
391
  }, {
392
392
  readonly carriers: readonly ({
393
+ readonly carrierId?: string;
393
394
  readonly title?: string;
394
395
  readonly carrierDetails?: readonly unknown[];
395
- readonly carrierId?: string;
396
396
  readonly carrierName?: string;
397
397
  readonly daysMapping?: readonly ({
398
398
  readonly day: string;
@@ -16,6 +16,7 @@ export * from "./voila/guest-bootstrap.js";
16
16
  export * from "./voila/headers.js";
17
17
  export * from "./voila/http-client.js";
18
18
  export * from "./voila/initial-state.js";
19
+ export * from "./voila/order-details.js";
19
20
  export * from "./voila/order-history.js";
20
21
  export * from "./voila/order-urls.js";
21
22
  export * from "./voila/session-health.js";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,kBAAkB,CAAA;AAChC,cAAc,gCAAgC,CAAA;AAC9C,cAAc,mBAAmB,CAAA;AACjC,cAAc,2BAA2B,CAAA;AACzC,cAAc,kCAAkC,CAAA;AAChD,cAAc,0BAA0B,CAAA;AACxC,cAAc,0BAA0B,CAAA;AACxC,cAAc,sBAAsB,CAAA;AACpC,cAAc,2BAA2B,CAAA;AACzC,cAAc,uBAAuB,CAAA;AACrC,cAAc,8BAA8B,CAAA;AAC5C,cAAc,6BAA6B,CAAA;AAC3C,cAAc,0BAA0B,CAAA;AACxC,cAAc,kCAAkC,CAAA;AAChD,cAAc,4BAA4B,CAAA;AAC1C,cAAc,oBAAoB,CAAA;AAClC,cAAc,wBAAwB,CAAA;AACtC,cAAc,0BAA0B,CAAA;AACxC,cAAc,0BAA0B,CAAA;AACxC,cAAc,uBAAuB,CAAA;AACrC,cAAc,2BAA2B,CAAA;AACzC,cAAc,6BAA6B,CAAA;AAC3C,cAAc,4BAA4B,CAAA;AAC1C,cAAc,6BAA6B,CAAA;AAC3C,cAAc,sBAAsB,CAAA;AACpC,cAAc,kBAAkB,CAAA;AAChC,cAAc,iBAAiB,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,kBAAkB,CAAA;AAChC,cAAc,gCAAgC,CAAA;AAC9C,cAAc,mBAAmB,CAAA;AACjC,cAAc,2BAA2B,CAAA;AACzC,cAAc,kCAAkC,CAAA;AAChD,cAAc,0BAA0B,CAAA;AACxC,cAAc,0BAA0B,CAAA;AACxC,cAAc,sBAAsB,CAAA;AACpC,cAAc,2BAA2B,CAAA;AACzC,cAAc,uBAAuB,CAAA;AACrC,cAAc,8BAA8B,CAAA;AAC5C,cAAc,6BAA6B,CAAA;AAC3C,cAAc,0BAA0B,CAAA;AACxC,cAAc,kCAAkC,CAAA;AAChD,cAAc,4BAA4B,CAAA;AAC1C,cAAc,oBAAoB,CAAA;AAClC,cAAc,wBAAwB,CAAA;AACtC,cAAc,0BAA0B,CAAA;AACxC,cAAc,0BAA0B,CAAA;AACxC,cAAc,0BAA0B,CAAA;AACxC,cAAc,uBAAuB,CAAA;AACrC,cAAc,2BAA2B,CAAA;AACzC,cAAc,6BAA6B,CAAA;AAC3C,cAAc,4BAA4B,CAAA;AAC1C,cAAc,6BAA6B,CAAA;AAC3C,cAAc,sBAAsB,CAAA;AACpC,cAAc,kBAAkB,CAAA;AAChC,cAAc,iBAAiB,CAAA"}
package/dist/src/index.js CHANGED
@@ -16,6 +16,7 @@ export * from "./voila/guest-bootstrap.js";
16
16
  export * from "./voila/headers.js";
17
17
  export * from "./voila/http-client.js";
18
18
  export * from "./voila/initial-state.js";
19
+ export * from "./voila/order-details.js";
19
20
  export * from "./voila/order-history.js";
20
21
  export * from "./voila/order-urls.js";
21
22
  export * from "./voila/session-health.js";
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,kBAAkB,CAAA;AAChC,cAAc,gCAAgC,CAAA;AAC9C,cAAc,mBAAmB,CAAA;AACjC,cAAc,2BAA2B,CAAA;AACzC,cAAc,kCAAkC,CAAA;AAChD,cAAc,0BAA0B,CAAA;AACxC,cAAc,0BAA0B,CAAA;AACxC,cAAc,sBAAsB,CAAA;AACpC,cAAc,2BAA2B,CAAA;AACzC,cAAc,uBAAuB,CAAA;AACrC,cAAc,8BAA8B,CAAA;AAC5C,cAAc,6BAA6B,CAAA;AAC3C,cAAc,0BAA0B,CAAA;AACxC,cAAc,kCAAkC,CAAA;AAChD,cAAc,4BAA4B,CAAA;AAC1C,cAAc,oBAAoB,CAAA;AAClC,cAAc,wBAAwB,CAAA;AACtC,cAAc,0BAA0B,CAAA;AACxC,cAAc,0BAA0B,CAAA;AACxC,cAAc,uBAAuB,CAAA;AACrC,cAAc,2BAA2B,CAAA;AACzC,cAAc,6BAA6B,CAAA;AAC3C,cAAc,4BAA4B,CAAA;AAC1C,cAAc,6BAA6B,CAAA;AAC3C,cAAc,sBAAsB,CAAA;AACpC,cAAc,kBAAkB,CAAA;AAChC,cAAc,iBAAiB,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,kBAAkB,CAAA;AAChC,cAAc,gCAAgC,CAAA;AAC9C,cAAc,mBAAmB,CAAA;AACjC,cAAc,2BAA2B,CAAA;AACzC,cAAc,kCAAkC,CAAA;AAChD,cAAc,0BAA0B,CAAA;AACxC,cAAc,0BAA0B,CAAA;AACxC,cAAc,sBAAsB,CAAA;AACpC,cAAc,2BAA2B,CAAA;AACzC,cAAc,uBAAuB,CAAA;AACrC,cAAc,8BAA8B,CAAA;AAC5C,cAAc,6BAA6B,CAAA;AAC3C,cAAc,0BAA0B,CAAA;AACxC,cAAc,kCAAkC,CAAA;AAChD,cAAc,4BAA4B,CAAA;AAC1C,cAAc,oBAAoB,CAAA;AAClC,cAAc,wBAAwB,CAAA;AACtC,cAAc,0BAA0B,CAAA;AACxC,cAAc,0BAA0B,CAAA;AACxC,cAAc,0BAA0B,CAAA;AACxC,cAAc,uBAAuB,CAAA;AACrC,cAAc,2BAA2B,CAAA;AACzC,cAAc,6BAA6B,CAAA;AAC3C,cAAc,4BAA4B,CAAA;AAC1C,cAAc,6BAA6B,CAAA;AAC3C,cAAc,sBAAsB,CAAA;AACpC,cAAc,kBAAkB,CAAA;AAChC,cAAc,iBAAiB,CAAA"}
@@ -0,0 +1,22 @@
1
+ import { Either } from "effect";
2
+ import { type NormalizedCompletedOrderItemsResult, type NormalizedOrderDetailsResult, type RawDecoratedOrderResponse, type SessionSnapshot } from "../domain/schemas/index.js";
3
+ import type { VoilaJsonResult, VoilaSdkError, VoilaTransport } from "./http-client.js";
4
+ import { type GetCompletedOrdersError } from "./order-history.js";
5
+ import type { OrderDetailsRequestError } from "./order-urls.js";
6
+ import type { CookieJarPort } from "./session-snapshot.js";
7
+ export type OrderDetailsUnavailableError = {
8
+ readonly _tag: "OrderDetailsUnavailable";
9
+ readonly message: string;
10
+ };
11
+ export type CompletedOrderItemsInputInvalidError = {
12
+ readonly _tag: "CompletedOrderItemsInputInvalid";
13
+ readonly message: string;
14
+ };
15
+ export type GetOrderDetailsError = OrderDetailsRequestError | OrderDetailsUnavailableError | VoilaSdkError;
16
+ export type GetCompletedOrderItemsError = CompletedOrderItemsInputInvalidError | GetCompletedOrdersError | GetOrderDetailsError;
17
+ export type GetOrderDetailsResult = VoilaJsonResult<NormalizedOrderDetailsResult>;
18
+ export type GetCompletedOrderItemsResult = VoilaJsonResult<NormalizedCompletedOrderItemsResult>;
19
+ export declare const normalizeOrderDetailsResponse: (response: RawDecoratedOrderResponse, orderId: string) => Either.Either<NormalizedOrderDetailsResult, OrderDetailsUnavailableError>;
20
+ export declare const getOrderDetails: (session: SessionSnapshot, input: unknown, transport: VoilaTransport, cookieJarPort?: CookieJarPort) => Promise<Either.Either<GetOrderDetailsResult, GetOrderDetailsError>>;
21
+ export declare const getCompletedOrderItems: (session: SessionSnapshot, input: unknown, transport: VoilaTransport, cookieJarPort?: CookieJarPort) => Promise<Either.Either<GetCompletedOrderItemsResult, GetCompletedOrderItemsError>>;
22
+ //# sourceMappingURL=order-details.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"order-details.d.ts","sourceRoot":"","sources":["../../../src/voila/order-details.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAA;AAG/B,OAAO,EAML,KAAK,mCAAmC,EACxC,KAAK,4BAA4B,EAIjC,KAAK,yBAAyB,EAM9B,KAAK,eAAe,EACrB,MAAM,4BAA4B,CAAA;AACnC,OAAO,KAAK,EAAE,eAAe,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAA;AAEtF,OAAO,EAAsB,KAAK,uBAAuB,EAAE,MAAM,oBAAoB,CAAA;AACrF,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,iBAAiB,CAAA;AAE/D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAA;AAE1D,MAAM,MAAM,4BAA4B,GAAG;IACzC,QAAQ,CAAC,IAAI,EAAE,yBAAyB,CAAA;IACxC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;CACzB,CAAA;AAED,MAAM,MAAM,oCAAoC,GAAG;IACjD,QAAQ,CAAC,IAAI,EAAE,iCAAiC,CAAA;IAChD,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;CACzB,CAAA;AAED,MAAM,MAAM,oBAAoB,GAAG,wBAAwB,GAAG,4BAA4B,GAAG,aAAa,CAAA;AAE1G,MAAM,MAAM,2BAA2B,GACnC,oCAAoC,GACpC,uBAAuB,GACvB,oBAAoB,CAAA;AAExB,MAAM,MAAM,qBAAqB,GAAG,eAAe,CAAC,4BAA4B,CAAC,CAAA;AACjF,MAAM,MAAM,4BAA4B,GAAG,eAAe,CAAC,mCAAmC,CAAC,CAAA;AAgJ/F,eAAO,MAAM,6BAA6B,GACxC,UAAU,yBAAyB,EACnC,SAAS,MAAM,KACd,MAAM,CAAC,MAAM,CAAC,4BAA4B,EAAE,4BAA4B,CAsB1E,CAAA;AA2GD,eAAO,MAAM,eAAe,GAC1B,SAAS,eAAe,EACxB,OAAO,OAAO,EACd,WAAW,cAAc,EACzB,gBAAgB,aAAa,KAC5B,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,qBAAqB,EAAE,oBAAoB,CAAC,CAuBpE,CAAA;AAWD,eAAO,MAAM,sBAAsB,GACjC,SAAS,eAAe,EACxB,OAAO,OAAO,EACd,WAAW,cAAc,EACzB,gBAAgB,aAAa,KAC5B,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,4BAA4B,EAAE,2BAA2B,CAAC,CA0ElF,CAAA"}
@@ -0,0 +1,267 @@
1
+ import { Either } from "effect";
2
+ import { parseUnknown } from "../domain/parse.js";
3
+ import { CompletedOrderItemsInputSchema, RawDecoratedOrderResponseSchema } from "../domain/schemas/index.js";
4
+ import { requestVoilaJson } from "./http-client.js";
5
+ import { getCompletedOrders } from "./order-history.js";
6
+ import { makeOrderDetailsRequest } from "./order-urls.js";
7
+ const receivedKind = "received";
8
+ const substitutedKind = "substituted";
9
+ const missingKind = "missing";
10
+ const returnedKind = "returned";
11
+ const atRiskKind = "atRisk";
12
+ const decimalRadix = 10;
13
+ const centsPerUnit = 100;
14
+ const firstOrder = 0;
15
+ const inputInvalid = () => ({
16
+ _tag: "CompletedOrderItemsInputInvalid",
17
+ message: "Completed order items request input does not match the SDK schema"
18
+ });
19
+ const orderDetailsUnavailable = () => ({
20
+ _tag: "OrderDetailsUnavailable",
21
+ message: "Voila decorated order details are unavailable for the requested order"
22
+ });
23
+ const firstRecordValue = (record) => {
24
+ for (const value of Object.values(record)) {
25
+ return value;
26
+ }
27
+ return undefined;
28
+ };
29
+ const resolveProduct = (reference, products) => {
30
+ if (reference === undefined) {
31
+ return undefined;
32
+ }
33
+ return typeof reference === "string" ? products[reference] : reference;
34
+ };
35
+ const productIdFor = (item, product) => product?.productId ?? item.productId;
36
+ const quantityFor = (item) => item.quantity ?? 1;
37
+ const unitPriceFor = (item, product) => item.price ?? product?.price?.current;
38
+ const makeNormalizedItem = (item, groupKind, products, substitutionForProductId, substitutionRole) => {
39
+ const product = resolveProduct(item.product, products);
40
+ const productId = productIdFor(item, product);
41
+ const totalPrice = item.finalPrice ?? item.totalPrice;
42
+ const unitPrice = unitPriceFor(item, product);
43
+ const isInCurrentCatalog = item.isInCurrentCatalog ?? product?.isInCurrentCatalog;
44
+ const sellerId = product?.sellerId ?? product?.seller?.id;
45
+ const sellerName = product?.sellerName ?? product?.seller?.name;
46
+ return {
47
+ groupKind,
48
+ quantity: quantityFor(item),
49
+ ...(product?.brand === undefined ? {} : { brand: product.brand }),
50
+ ...(isInCurrentCatalog === undefined ? {} : { isInCurrentCatalog }),
51
+ ...(product?.name === undefined ? {} : { name: product.name }),
52
+ ...(productId === undefined ? {} : { productId }),
53
+ ...(product?.retailerProductId === undefined ? {} : { retailerProductId: product.retailerProductId }),
54
+ ...(item.sample === undefined ? {} : { sample: item.sample }),
55
+ ...(sellerId === undefined ? {} : { sellerId }),
56
+ ...(sellerName === undefined ? {} : { sellerName }),
57
+ ...(substitutionForProductId === undefined ? {} : { substitutionForProductId }),
58
+ ...(substitutionRole === undefined ? {} : { substitutionRole }),
59
+ ...(totalPrice === undefined ? {} : { totalPrice }),
60
+ ...(unitPrice === undefined ? {} : { unitPrice })
61
+ };
62
+ };
63
+ const normalizePlainGroup = (kind, items, products) => ({
64
+ items: (items ?? []).map((item) => makeNormalizedItem(item, kind, products)),
65
+ kind
66
+ });
67
+ const normalizeSubstitutionGroup = (items, products) => ({
68
+ items: (items ?? []).flatMap((item) => {
69
+ const requested = makeNormalizedItem(item, substitutedKind, products, undefined, "requested");
70
+ const substitutes = (item.substitutes ?? []).map((substitute) => makeNormalizedItem(substitute, substitutedKind, products, requested.productId, "substitute"));
71
+ return [requested, ...substitutes];
72
+ }),
73
+ kind: substitutedKind
74
+ });
75
+ const normalizeItemGroups = (order, products) => [
76
+ normalizePlainGroup(receivedKind, order.items, products),
77
+ normalizeSubstitutionGroup(order.substitutedItems, products),
78
+ normalizePlainGroup(missingKind, order.missingItems, products),
79
+ normalizePlainGroup(returnedKind, order.returnedItems, products),
80
+ normalizePlainGroup(atRiskKind, order.itemsOnCheckout, products)
81
+ ].filter((group) => group.items.length > 0);
82
+ const datesFor = (order) => order.slot?.start === undefined && order.slot?.end === undefined && order.slot?.timeZone === undefined
83
+ ? {}
84
+ : {
85
+ dates: {
86
+ ...(order.slot.start === undefined ? {} : { deliveryStartDate: order.slot.start }),
87
+ ...(order.slot.end === undefined ? {} : { deliveryEndDate: order.slot.end }),
88
+ ...(order.slot.timeZone === undefined ? {} : { timeZoneId: order.slot.timeZone })
89
+ }
90
+ };
91
+ export const normalizeOrderDetailsResponse = (response, orderId) => {
92
+ const order = response.entities.order[orderId] ?? firstRecordValue(response.entities.order);
93
+ if (order === undefined) {
94
+ return Either.left(orderDetailsUnavailable());
95
+ }
96
+ const products = response.entities.product ?? {};
97
+ const itemGroups = normalizeItemGroups(order, products);
98
+ const items = itemGroups.flatMap((group) => group.items);
99
+ return Either.right({
100
+ ...datesFor(order),
101
+ itemGroups,
102
+ items,
103
+ orderId: order.orderId,
104
+ ...(order.orderReference === undefined ? {} : { orderReference: order.orderReference }),
105
+ ...(order.prices?.total === undefined ? {} : { orderTotals: { totalPrice: order.prices.total } }),
106
+ ...(order.region?.regionId === undefined ? {} : { regionId: order.region.regionId }),
107
+ ...(order.region?.retailerRegionId === undefined ? {} : { retailerRegionId: order.region.retailerRegionId }),
108
+ ...(order.status === undefined ? {} : { status: order.status })
109
+ });
110
+ };
111
+ const parseCents = (money) => {
112
+ const match = /^([0-9]+)(?:\.([0-9]{1,2}))?$/.exec(money.amount);
113
+ const whole = match?.[1];
114
+ if (whole === undefined) {
115
+ return undefined;
116
+ }
117
+ const fractional = match?.[2] ?? "";
118
+ const centsText = fractional.length === 1 ? `${fractional}0` : fractional.padEnd(2, "0");
119
+ return (Number.parseInt(whole, decimalRadix) * centsPerUnit) + Number.parseInt(centsText, decimalRadix);
120
+ };
121
+ const formatCents = (cents) => {
122
+ const whole = Math.trunc(cents / centsPerUnit);
123
+ const fractional = `${cents % centsPerUnit}`.padStart(2, "0");
124
+ return `${whole}.${fractional}`;
125
+ };
126
+ const datePart = (value) => {
127
+ if (value === undefined || value.length < "yyyy-mm-dd".length) {
128
+ return undefined;
129
+ }
130
+ return value.slice(0, "yyyy-mm-dd".length);
131
+ };
132
+ const isInRange = (order, input) => {
133
+ const deliveredAt = datePart(order.dates.deliveryEndDate);
134
+ if (deliveredAt === undefined) {
135
+ return false;
136
+ }
137
+ if (input.fromDate !== undefined && deliveredAt < input.fromDate) {
138
+ return false;
139
+ }
140
+ return input.toDate === undefined || deliveredAt <= input.toDate;
141
+ };
142
+ const itemKeyFor = (item) => item.productId ?? item.retailerProductId ?? item.name ?? "unknown-product";
143
+ const aggregateItem = (aggregate, item, order) => {
144
+ const orderIds = new Set(aggregate?.orderIds ?? []);
145
+ orderIds.add(order.orderId);
146
+ const cents = item.totalPrice === undefined ? undefined : parseCents(item.totalPrice);
147
+ const nextSpend = aggregate?.spendCents === undefined || cents === undefined
148
+ || aggregate.spendCurrency !== item.totalPrice?.currency
149
+ ? undefined
150
+ : aggregate.spendCents + cents;
151
+ const initialSpend = aggregate === undefined && cents !== undefined && item.totalPrice !== undefined
152
+ ? cents
153
+ : nextSpend;
154
+ const brand = item.brand ?? aggregate?.brand;
155
+ const name = item.name ?? aggregate?.name;
156
+ const productId = item.productId ?? aggregate?.productId;
157
+ const retailerProductId = item.retailerProductId ?? aggregate?.retailerProductId;
158
+ const spendCurrency = item.totalPrice?.currency ?? aggregate?.spendCurrency;
159
+ const lastOrderId = aggregate?.lastOrderId ?? order.orderId;
160
+ const lastOrderedAt = aggregate?.lastOrderedAt ?? order.dates.deliveryEndDate;
161
+ return {
162
+ itemKey: itemKeyFor(item),
163
+ orderIds,
164
+ totalQuantity: (aggregate?.totalQuantity ?? 0) + item.quantity,
165
+ ...(brand === undefined ? {} : { brand }),
166
+ lastOrderId,
167
+ lastOrderedAt,
168
+ ...(name === undefined ? {} : { name }),
169
+ ...(productId === undefined ? {} : { productId }),
170
+ ...(retailerProductId === undefined ? {} : { retailerProductId }),
171
+ ...(initialSpend === undefined ? {} : { spendCents: initialSpend }),
172
+ ...(spendCurrency === undefined ? {} : { spendCurrency })
173
+ };
174
+ };
175
+ const toCompletedOrderItem = (aggregate) => ({
176
+ itemKey: aggregate.itemKey,
177
+ orderCount: aggregate.orderIds.size,
178
+ orderIds: Array.from(aggregate.orderIds),
179
+ totalQuantity: aggregate.totalQuantity,
180
+ ...(aggregate.brand === undefined ? {} : { brand: aggregate.brand }),
181
+ lastOrderId: aggregate.lastOrderId,
182
+ lastOrderedAt: aggregate.lastOrderedAt,
183
+ ...(aggregate.name === undefined ? {} : { name: aggregate.name }),
184
+ ...(aggregate.productId === undefined ? {} : { productId: aggregate.productId }),
185
+ ...(aggregate.retailerProductId === undefined ? {} : { retailerProductId: aggregate.retailerProductId }),
186
+ ...(aggregate.spendCents === undefined || aggregate.spendCurrency === undefined
187
+ ? {}
188
+ : {
189
+ totalSpend: {
190
+ amount: formatCents(aggregate.spendCents),
191
+ currency: aggregate.spendCurrency
192
+ }
193
+ })
194
+ });
195
+ export const getOrderDetails = async (session, input, transport, cookieJarPort) => {
196
+ const request = makeOrderDetailsRequest(input);
197
+ if (Either.isLeft(request)) {
198
+ return Either.left(request.left);
199
+ }
200
+ const response = await requestVoilaJson(RawDecoratedOrderResponseSchema, session, request.right, transport, cookieJarPort);
201
+ return Either.flatMap(response, (result) => Either.map(normalizeOrderDetailsResponse(result.value, request.right.orderId), (value) => ({
202
+ session: result.session,
203
+ value
204
+ })));
205
+ };
206
+ const makeOrderPageInput = (input, pageToken, remainingOrders) => ({
207
+ pageSize: Math.min(input.pageSize ?? input.maxOrders, remainingOrders),
208
+ ...(pageToken === undefined ? {} : { pageToken })
209
+ });
210
+ export const getCompletedOrderItems = async (session, input, transport, cookieJarPort) => {
211
+ const parsed = Either.mapLeft(parseUnknown(CompletedOrderItemsInputSchema, input), inputInvalid);
212
+ if (Either.isLeft(parsed)) {
213
+ return Either.left(parsed.left);
214
+ }
215
+ const matchingOrders = [];
216
+ let currentSession = session;
217
+ let ordersScanned = 0;
218
+ let pageToken = parsed.right.pageToken;
219
+ let pagination = {
220
+ hasNextPage: false
221
+ };
222
+ do {
223
+ const ordersResult = await getCompletedOrders(currentSession, makeOrderPageInput(parsed.right, pageToken, parsed.right.maxOrders - matchingOrders.length), transport, cookieJarPort);
224
+ if (Either.isLeft(ordersResult)) {
225
+ return Either.left(ordersResult.left);
226
+ }
227
+ currentSession = ordersResult.right.session;
228
+ pagination = ordersResult.right.value.pagination;
229
+ ordersScanned += ordersResult.right.value.orders.length;
230
+ for (const order of ordersResult.right.value.orders) {
231
+ if (matchingOrders.length < parsed.right.maxOrders && isInRange(order, parsed.right)) {
232
+ matchingOrders.push(order);
233
+ }
234
+ }
235
+ if (pagination.nextPageToken === pageToken) {
236
+ pageToken = undefined;
237
+ }
238
+ else {
239
+ pageToken = pagination.nextPageToken;
240
+ }
241
+ } while (matchingOrders.length < parsed.right.maxOrders && pagination.hasNextPage && pageToken !== undefined);
242
+ const aggregates = new Map();
243
+ for (const order of matchingOrders.slice(firstOrder, parsed.right.maxOrders)) {
244
+ const details = await getOrderDetails(currentSession, { orderId: order.orderId }, transport, cookieJarPort);
245
+ if (Either.isLeft(details)) {
246
+ return Either.left(details.left);
247
+ }
248
+ currentSession = details.right.session;
249
+ for (const item of details.right.value.items.filter((detailItem) => detailItem.groupKind === receivedKind)) {
250
+ const key = itemKeyFor(item);
251
+ aggregates.set(key, aggregateItem(aggregates.get(key), item, order));
252
+ }
253
+ }
254
+ const items = Array.from(aggregates.values()).map(toCompletedOrderItem)
255
+ .sort((left, right) => right.totalQuantity - left.totalQuantity || left.itemKey.localeCompare(right.itemKey));
256
+ return Either.right({
257
+ session: currentSession,
258
+ value: {
259
+ itemCount: items.length,
260
+ items,
261
+ ordersMatched: matchingOrders.length,
262
+ ordersScanned,
263
+ pagination
264
+ }
265
+ });
266
+ };
267
+ //# sourceMappingURL=order-details.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"order-details.js","sourceRoot":"","sources":["../../../src/voila/order-details.ts"],"names":[],"mappings":"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"}
@@ -1,14 +1,18 @@
1
1
  import { Either } from "effect";
2
- import { type NormalizedCompletedOrdersResult, type RawCompletedOrdersGraphqlResponse, type SessionSnapshot } from "../domain/schemas/index.js";
2
+ import { type NormalizedCompletedOrdersResult, type RawCompletedOrdersConnection, type SessionSnapshot } from "../domain/schemas/index.js";
3
3
  import type { VoilaJsonResult, VoilaSdkError, VoilaTransport } from "./http-client.js";
4
4
  import type { CompletedOrdersRequestError } from "./order-urls.js";
5
5
  import type { CookieJarPort } from "./session-snapshot.js";
6
- export type CompletedOrdersResponseNormalizationError = {
7
- readonly _tag: "CompletedOrdersResponseSchemaMismatch";
6
+ export type CompletedOrdersGraphqlError = {
7
+ readonly _tag: "CompletedOrdersGraphqlError";
8
8
  readonly message: string;
9
9
  };
10
- export type GetCompletedOrdersError = CompletedOrdersRequestError | VoilaSdkError;
10
+ export type CompletedOrdersUnavailableError = {
11
+ readonly _tag: "CompletedOrdersUnavailable";
12
+ readonly message: string;
13
+ };
14
+ export type GetCompletedOrdersError = CompletedOrdersGraphqlError | CompletedOrdersRequestError | CompletedOrdersUnavailableError | VoilaSdkError;
11
15
  export type GetCompletedOrdersResult = VoilaJsonResult<NormalizedCompletedOrdersResult>;
12
- export declare const normalizeCompletedOrdersResponse: (response: RawCompletedOrdersGraphqlResponse) => NormalizedCompletedOrdersResult;
16
+ export declare const normalizeCompletedOrdersResponse: (connection: RawCompletedOrdersConnection) => NormalizedCompletedOrdersResult;
13
17
  export declare const getCompletedOrders: (session: SessionSnapshot, input: unknown, transport: VoilaTransport, cookieJarPort?: CookieJarPort) => Promise<Either.Either<GetCompletedOrdersResult, GetCompletedOrdersError>>;
14
18
  //# sourceMappingURL=order-history.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"order-history.d.ts","sourceRoot":"","sources":["../../../src/voila/order-history.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAA;AAE/B,OAAO,EAEL,KAAK,+BAA+B,EAEpC,KAAK,iCAAiC,EAGtC,KAAK,eAAe,EACrB,MAAM,4BAA4B,CAAA;AACnC,OAAO,KAAK,EAAE,eAAe,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAA;AAEtF,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,iBAAiB,CAAA;AAElE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAA;AAE1D,MAAM,MAAM,yCAAyC,GAAG;IACtD,QAAQ,CAAC,IAAI,EAAE,uCAAuC,CAAA;IACtD,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;CACzB,CAAA;AAED,MAAM,MAAM,uBAAuB,GAAG,2BAA2B,GAAG,aAAa,CAAA;AAEjF,MAAM,MAAM,wBAAwB,GAAG,eAAe,CAAC,+BAA+B,CAAC,CAAA;AA2DvF,eAAO,MAAM,gCAAgC,GAC3C,UAAU,iCAAiC,KAC1C,+BAgBF,CAAA;AAED,eAAO,MAAM,kBAAkB,GAC7B,SAAS,eAAe,EACxB,OAAO,OAAO,EACd,WAAW,cAAc,EACzB,gBAAgB,aAAa,KAC5B,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,wBAAwB,EAAE,uBAAuB,CAAC,CAmB1E,CAAA"}
1
+ {"version":3,"file":"order-history.d.ts","sourceRoot":"","sources":["../../../src/voila/order-history.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAA;AAE/B,OAAO,EAEL,KAAK,+BAA+B,EAEpC,KAAK,4BAA4B,EAIjC,KAAK,eAAe,EACrB,MAAM,4BAA4B,CAAA;AACnC,OAAO,KAAK,EAAE,eAAe,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAA;AAEtF,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,iBAAiB,CAAA;AAElE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAA;AAE1D,MAAM,MAAM,2BAA2B,GAAG;IACxC,QAAQ,CAAC,IAAI,EAAE,6BAA6B,CAAA;IAC5C,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;CACzB,CAAA;AAED,MAAM,MAAM,+BAA+B,GAAG;IAC5C,QAAQ,CAAC,IAAI,EAAE,4BAA4B,CAAA;IAC3C,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;CACzB,CAAA;AAED,MAAM,MAAM,uBAAuB,GAC/B,2BAA2B,GAC3B,2BAA2B,GAC3B,+BAA+B,GAC/B,aAAa,CAAA;AAEjB,MAAM,MAAM,wBAAwB,GAAG,eAAe,CAAC,+BAA+B,CAAC,CAAA;AA2DvF,eAAO,MAAM,gCAAgC,GAC3C,YAAY,4BAA4B,KACvC,+BAeF,CAAA;AA8BD,eAAO,MAAM,kBAAkB,GAC7B,SAAS,eAAe,EACxB,OAAO,OAAO,EACd,WAAW,cAAc,EACzB,gBAAgB,aAAa,KAC5B,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,wBAAwB,EAAE,uBAAuB,CAAC,CAuB1E,CAAA"}
@@ -56,8 +56,7 @@ const normalizeCompletedOrder = (order) => ({
56
56
  retailerRegionId: order.region.retailerRegionId,
57
57
  status: order.status
58
58
  });
59
- export const normalizeCompletedOrdersResponse = (response) => {
60
- const connection = response.data.completedOrders;
59
+ export const normalizeCompletedOrdersResponse = (connection) => {
61
60
  const orders = connection.edges.flatMap((edge) => edge?.node === undefined || edge.node === null
62
61
  ? []
63
62
  : [normalizeCompletedOrder(edge.node)]);
@@ -70,15 +69,34 @@ export const normalizeCompletedOrdersResponse = (response) => {
70
69
  }
71
70
  };
72
71
  };
72
+ const graphqlError = () => ({
73
+ _tag: "CompletedOrdersGraphqlError",
74
+ message: "Voila completed orders returned a GraphQL error; account login may be required"
75
+ });
76
+ const completedOrdersUnavailable = () => ({
77
+ _tag: "CompletedOrdersUnavailable",
78
+ message: "Voila completed orders are unavailable for the current session"
79
+ });
80
+ const getCompletedOrdersConnection = (response) => {
81
+ if (response.errors !== undefined && response.errors.length > 0) {
82
+ return Either.left(graphqlError());
83
+ }
84
+ if (response.data === undefined
85
+ || response.data === null
86
+ || response.data.completedOrders === null) {
87
+ return Either.left(completedOrdersUnavailable());
88
+ }
89
+ return Either.right(response.data.completedOrders);
90
+ };
73
91
  export const getCompletedOrders = async (session, input, transport, cookieJarPort) => {
74
92
  const request = makeCompletedOrdersRequest(input);
75
93
  if (Either.isLeft(request)) {
76
94
  return Either.left(request.left);
77
95
  }
78
96
  const response = await requestVoilaJson(RawCompletedOrdersGraphqlResponseSchema, session, request.right, transport, cookieJarPort);
79
- return Either.map(response, (result) => ({
97
+ return Either.flatMap(response, (result) => Either.map(getCompletedOrdersConnection(result.value), (connection) => ({
80
98
  session: result.session,
81
- value: normalizeCompletedOrdersResponse(result.value)
82
- }));
99
+ value: normalizeCompletedOrdersResponse(connection)
100
+ })));
83
101
  };
84
102
  //# sourceMappingURL=order-history.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"order-history.js","sourceRoot":"","sources":["../../../src/voila/order-history.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"order-history.js","sourceRoot":"","sources":["../../../src/voila/order-history.ts"],"names":[],"mappings":"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"}
@@ -9,5 +9,15 @@ export type CompletedOrdersRequestError = {
9
9
  readonly _tag: "CompletedOrdersInputInvalid";
10
10
  readonly message: string;
11
11
  };
12
+ export interface OrderDetailsRequest {
13
+ readonly method: "GET";
14
+ readonly orderId: string;
15
+ readonly url: URL;
16
+ }
17
+ export type OrderDetailsRequestError = {
18
+ readonly _tag: "OrderDetailsInputInvalid";
19
+ readonly message: string;
20
+ };
12
21
  export declare const makeCompletedOrdersRequest: (input?: unknown) => Either.Either<CompletedOrdersRequest, CompletedOrdersRequestError>;
22
+ export declare const makeOrderDetailsRequest: (input: unknown) => Either.Either<OrderDetailsRequest, OrderDetailsRequestError>;
13
23
  //# sourceMappingURL=order-urls.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"order-urls.d.ts","sourceRoot":"","sources":["../../../src/voila/order-urls.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAA;AAQ/B,eAAO,MAAM,sBAAsB,mnCAuDjC,CAAA;AAEF,MAAM,WAAW,sBAAsB;IACrC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;IACvB,QAAQ,CAAC,GAAG,EAAE,GAAG,CAAA;CAClB;AAED,MAAM,MAAM,2BAA2B,GAAG;IACxC,QAAQ,CAAC,IAAI,EAAE,6BAA6B,CAAA;IAC5C,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;CACzB,CAAA;AAYD,eAAO,MAAM,0BAA0B,GACrC,QAAO,OAAY,KAClB,MAAM,CAAC,MAAM,CAAC,sBAAsB,EAAE,2BAA2B,CAYjE,CAAA"}
1
+ {"version":3,"file":"order-urls.d.ts","sourceRoot":"","sources":["../../../src/voila/order-urls.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAA;AAc/B,eAAO,MAAM,sBAAsB,mnCAuDjC,CAAA;AAEF,MAAM,WAAW,sBAAsB;IACrC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;IACvB,QAAQ,CAAC,GAAG,EAAE,GAAG,CAAA;CAClB;AAED,MAAM,MAAM,2BAA2B,GAAG;IACxC,QAAQ,CAAC,IAAI,EAAE,6BAA6B,CAAA;IAC5C,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;CACzB,CAAA;AAED,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,MAAM,EAAE,KAAK,CAAA;IACtB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;IACxB,QAAQ,CAAC,GAAG,EAAE,GAAG,CAAA;CAClB;AAED,MAAM,MAAM,wBAAwB,GAAG;IACrC,QAAQ,CAAC,IAAI,EAAE,0BAA0B,CAAA;IACzC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;CACzB,CAAA;AAiBD,eAAO,MAAM,0BAA0B,GACrC,QAAO,OAAY,KAClB,MAAM,CAAC,MAAM,CAAC,sBAAsB,EAAE,2BAA2B,CAYjE,CAAA;AAKH,eAAO,MAAM,uBAAuB,GAClC,OAAO,OAAO,KACb,MAAM,CAAC,MAAM,CAAC,mBAAmB,EAAE,wBAAwB,CAQ3D,CAAA"}
@@ -1,8 +1,9 @@
1
1
  import { Either } from "effect";
2
2
  import { parseUnknown } from "../domain/parse.js";
3
- import { CompletedOrdersInputSchema } from "../domain/schemas/index.js";
3
+ import { CompletedOrdersInputSchema, OrderDetailsInputSchema } from "../domain/schemas/index.js";
4
4
  import { VOILA_BASE_URL } from "./urls.js";
5
5
  const COMPLETED_ORDERS_GRAPHQL_PATH = "/graphql";
6
+ const ORDER_PATH_PREFIX = "/api/order/v6/orders/";
6
7
  export const COMPLETED_ORDERS_QUERY = `query GetCompletedOrders($first: Int!, $after: String) {
7
8
  completedOrders(first: $first, after: $after) {
8
9
  retentionPeriod
@@ -63,6 +64,10 @@ const completedOrdersInputInvalid = () => ({
63
64
  _tag: "CompletedOrdersInputInvalid",
64
65
  message: "Completed orders request input does not match the SDK schema"
65
66
  });
67
+ const orderDetailsInputInvalid = () => ({
68
+ _tag: "OrderDetailsInputInvalid",
69
+ message: "Order details request input does not match the SDK schema"
70
+ });
66
71
  const makeVariables = (input) => ({
67
72
  ...(input.pageToken === undefined ? {} : { after: input.pageToken }),
68
73
  first: input.pageSize
@@ -76,4 +81,10 @@ export const makeCompletedOrdersRequest = (input = {}) => Either.map(Either.mapL
76
81
  method: "POST",
77
82
  url: new URL(COMPLETED_ORDERS_GRAPHQL_PATH, VOILA_BASE_URL)
78
83
  }));
84
+ const makeOrderDetailsUrl = (input) => new URL(`${ORDER_PATH_PREFIX}${encodeURIComponent(input.orderId)}/decorated`, VOILA_BASE_URL);
85
+ export const makeOrderDetailsRequest = (input) => Either.map(Either.mapLeft(parseUnknown(OrderDetailsInputSchema, input), orderDetailsInputInvalid), (orderDetailsInput) => ({
86
+ method: "GET",
87
+ orderId: orderDetailsInput.orderId,
88
+ url: makeOrderDetailsUrl(orderDetailsInput)
89
+ }));
79
90
  //# sourceMappingURL=order-urls.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"order-urls.js","sourceRoot":"","sources":["../../../src/voila/order-urls.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAA;AAE/B,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAA;AACjD,OAAO,EAA6B,0BAA0B,EAAE,MAAM,4BAA4B,CAAA;AAClG,OAAO,EAAE,cAAc,EAAE,MAAM,WAAW,CAAA;AAE1C,MAAM,6BAA6B,GAAG,UAAU,CAAA;AAEhD,MAAM,CAAC,MAAM,sBAAsB,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAuDpC,CAAA;AAaF,MAAM,2BAA2B,GAAG,GAAgC,EAAE,CAAC,CAAC;IACtE,IAAI,EAAE,6BAA6B;IACnC,OAAO,EAAE,8DAA8D;CACxE,CAAC,CAAA;AAEF,MAAM,aAAa,GAAG,CAAC,KAA2B,EAAE,EAAE,CAAC,CAAC;IACtD,GAAG,CAAC,KAAK,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,CAAC,SAAS,EAAE,CAAC;IACpE,KAAK,EAAE,KAAK,CAAC,QAAQ;CACtB,CAAC,CAAA;AAEF,MAAM,CAAC,MAAM,0BAA0B,GAAG,CACxC,QAAiB,EAAE,EACiD,EAAE,CACtE,MAAM,CAAC,GAAG,CACR,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC,0BAA0B,EAAE,KAAK,CAAC,EAAE,2BAA2B,CAAC,EAC5F,CAAC,oBAAoB,EAAE,EAAE,CAAC,CAAC;IACzB,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;QACnB,aAAa,EAAE,oBAAoB;QACnC,KAAK,EAAE,sBAAsB;QAC7B,SAAS,EAAE,aAAa,CAAC,oBAAoB,CAAC;KAC/C,CAAC;IACF,MAAM,EAAE,MAAM;IACd,GAAG,EAAE,IAAI,GAAG,CAAC,6BAA6B,EAAE,cAAc,CAAC;CAC5D,CAAC,CACH,CAAA"}
1
+ {"version":3,"file":"order-urls.js","sourceRoot":"","sources":["../../../src/voila/order-urls.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAA;AAE/B,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAA;AACjD,OAAO,EAEL,0BAA0B,EAE1B,uBAAuB,EACxB,MAAM,4BAA4B,CAAA;AACnC,OAAO,EAAE,cAAc,EAAE,MAAM,WAAW,CAAA;AAE1C,MAAM,6BAA6B,GAAG,UAAU,CAAA;AAChD,MAAM,iBAAiB,GAAG,uBAAuB,CAAA;AAEjD,MAAM,CAAC,MAAM,sBAAsB,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAuDpC,CAAA;AAwBF,MAAM,2BAA2B,GAAG,GAAgC,EAAE,CAAC,CAAC;IACtE,IAAI,EAAE,6BAA6B;IACnC,OAAO,EAAE,8DAA8D;CACxE,CAAC,CAAA;AAEF,MAAM,wBAAwB,GAAG,GAA6B,EAAE,CAAC,CAAC;IAChE,IAAI,EAAE,0BAA0B;IAChC,OAAO,EAAE,2DAA2D;CACrE,CAAC,CAAA;AAEF,MAAM,aAAa,GAAG,CAAC,KAA2B,EAAE,EAAE,CAAC,CAAC;IACtD,GAAG,CAAC,KAAK,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,CAAC,SAAS,EAAE,CAAC;IACpE,KAAK,EAAE,KAAK,CAAC,QAAQ;CACtB,CAAC,CAAA;AAEF,MAAM,CAAC,MAAM,0BAA0B,GAAG,CACxC,QAAiB,EAAE,EACiD,EAAE,CACtE,MAAM,CAAC,GAAG,CACR,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC,0BAA0B,EAAE,KAAK,CAAC,EAAE,2BAA2B,CAAC,EAC5F,CAAC,oBAAoB,EAAE,EAAE,CAAC,CAAC;IACzB,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;QACnB,aAAa,EAAE,oBAAoB;QACnC,KAAK,EAAE,sBAAsB;QAC7B,SAAS,EAAE,aAAa,CAAC,oBAAoB,CAAC;KAC/C,CAAC;IACF,MAAM,EAAE,MAAM;IACd,GAAG,EAAE,IAAI,GAAG,CAAC,6BAA6B,EAAE,cAAc,CAAC;CAC5D,CAAC,CACH,CAAA;AAEH,MAAM,mBAAmB,GAAG,CAAC,KAAwB,EAAO,EAAE,CAC5D,IAAI,GAAG,CAAC,GAAG,iBAAiB,GAAG,kBAAkB,CAAC,KAAK,CAAC,OAAO,CAAC,YAAY,EAAE,cAAc,CAAC,CAAA;AAE/F,MAAM,CAAC,MAAM,uBAAuB,GAAG,CACrC,KAAc,EACgD,EAAE,CAChE,MAAM,CAAC,GAAG,CACR,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC,uBAAuB,EAAE,KAAK,CAAC,EAAE,wBAAwB,CAAC,EACtF,CAAC,iBAAiB,EAAE,EAAE,CAAC,CAAC;IACtB,MAAM,EAAE,KAAK;IACb,OAAO,EAAE,iBAAiB,CAAC,OAAO;IAClC,GAAG,EAAE,mBAAmB,CAAC,iBAAiB,CAAC;CAC5C,CAAC,CACH,CAAA"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@firfi/voila-sdk",
3
- "version": "0.1.2",
3
+ "version": "0.1.3",
4
4
  "description": "TypeScript SDK for Voila grocery search, sessions, and cart workflows",
5
5
  "type": "module",
6
6
  "main": "./dist/src/index.js",