@firfi/voila-sdk 0.1.1 → 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.
- package/README.md +6 -3
- package/dist/src/domain/schemas/index.d.ts +2 -0
- package/dist/src/domain/schemas/index.d.ts.map +1 -1
- package/dist/src/domain/schemas/index.js +2 -0
- package/dist/src/domain/schemas/index.js.map +1 -1
- package/dist/src/domain/schemas/order-details.d.ts +2623 -0
- package/dist/src/domain/schemas/order-details.d.ts.map +1 -0
- package/dist/src/domain/schemas/order-details.js +148 -0
- package/dist/src/domain/schemas/order-details.js.map +1 -0
- package/dist/src/domain/schemas/order-history.d.ts +738 -0
- package/dist/src/domain/schemas/order-history.d.ts.map +1 -0
- package/dist/src/domain/schemas/order-history.js +113 -0
- package/dist/src/domain/schemas/order-history.js.map +1 -0
- package/dist/src/domain/schemas/slot.d.ts +4 -4
- package/dist/src/index.d.ts +3 -0
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +3 -0
- package/dist/src/index.js.map +1 -1
- package/dist/src/voila/browser-login-adapter.d.ts +12 -12
- package/dist/src/voila/order-details.d.ts +22 -0
- package/dist/src/voila/order-details.d.ts.map +1 -0
- package/dist/src/voila/order-details.js +267 -0
- package/dist/src/voila/order-details.js.map +1 -0
- package/dist/src/voila/order-history.d.ts +18 -0
- package/dist/src/voila/order-history.d.ts.map +1 -0
- package/dist/src/voila/order-history.js +102 -0
- package/dist/src/voila/order-history.js.map +1 -0
- package/dist/src/voila/order-urls.d.ts +23 -0
- package/dist/src/voila/order-urls.d.ts.map +1 -0
- package/dist/src/voila/order-urls.js +90 -0
- package/dist/src/voila/order-urls.js.map +1 -0
- package/package.json +1 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"order-history.d.ts","sourceRoot":"","sources":["../../../../src/domain/schemas/order-history.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,113 @@
|
|
|
1
|
+
import { Schema } from "effect";
|
|
2
|
+
import { MoneySchema } from "./money.js";
|
|
3
|
+
export const MIN_ORDER_PAGE_SIZE = 1;
|
|
4
|
+
export const MAX_ORDER_PAGE_SIZE = 50;
|
|
5
|
+
export const DEFAULT_ORDER_PAGE_SIZE = 20;
|
|
6
|
+
const UnknownStringRecordSchema = Schema.Record({ key: Schema.String, value: Schema.Unknown });
|
|
7
|
+
const NonEmptyTrimmedStringSchema = Schema.String.pipe(Schema.trimmed(), Schema.minLength(1));
|
|
8
|
+
const OrderPageSizeSchema = Schema.Number.pipe(Schema.finite(), Schema.int(), Schema.greaterThanOrEqualTo(MIN_ORDER_PAGE_SIZE), Schema.lessThanOrEqualTo(MAX_ORDER_PAGE_SIZE));
|
|
9
|
+
export const CompletedOrdersInputSchema = Schema.Struct({
|
|
10
|
+
pageSize: Schema.optionalWith(OrderPageSizeSchema, { default: () => DEFAULT_ORDER_PAGE_SIZE }),
|
|
11
|
+
pageToken: Schema.optionalWith(NonEmptyTrimmedStringSchema, { exact: true })
|
|
12
|
+
});
|
|
13
|
+
const RawOrderRegionSchema = Schema.asSchema(Schema.Struct({
|
|
14
|
+
regionId: Schema.String,
|
|
15
|
+
retailerRegionId: Schema.String
|
|
16
|
+
}).pipe(Schema.extend(UnknownStringRecordSchema)));
|
|
17
|
+
const RawOrderCarrierSchema = Schema.asSchema(Schema.Struct({
|
|
18
|
+
carrierId: Schema.String
|
|
19
|
+
}).pipe(Schema.extend(UnknownStringRecordSchema)));
|
|
20
|
+
const RawOrderExternalLockerSchema = Schema.asSchema(Schema.Struct({
|
|
21
|
+
externalLockerId: Schema.String
|
|
22
|
+
}).pipe(Schema.extend(UnknownStringRecordSchema)));
|
|
23
|
+
const RawOrderDeliveryDestinationSchema = Schema.asSchema(Schema.Struct({
|
|
24
|
+
address: Schema.Struct({
|
|
25
|
+
timeZone: Schema.String
|
|
26
|
+
}).pipe(Schema.extend(UnknownStringRecordSchema)),
|
|
27
|
+
deliveryMethod: Schema.String,
|
|
28
|
+
name: Schema.String
|
|
29
|
+
}).pipe(Schema.extend(UnknownStringRecordSchema)));
|
|
30
|
+
export const RawCompletedOrdersGraphqlErrorSchema = Schema.asSchema(Schema.Struct({
|
|
31
|
+
message: Schema.String
|
|
32
|
+
}).pipe(Schema.extend(UnknownStringRecordSchema)));
|
|
33
|
+
export const RawInternalCompletedOrderSlotSchema = Schema.asSchema(Schema.Struct({
|
|
34
|
+
__typename: Schema.Literal("InternalOrderSlot"),
|
|
35
|
+
carrier: Schema.optionalWith(Schema.NullOr(RawOrderCarrierSchema), { exact: true }),
|
|
36
|
+
deliveryDestination: RawOrderDeliveryDestinationSchema,
|
|
37
|
+
end: Schema.String,
|
|
38
|
+
externalLocker: Schema.optionalWith(Schema.NullOr(RawOrderExternalLockerSchema), { exact: true }),
|
|
39
|
+
shippingGroupType: Schema.optionalWith(Schema.String, { exact: true }),
|
|
40
|
+
start: Schema.String,
|
|
41
|
+
type: Schema.String
|
|
42
|
+
}).pipe(Schema.extend(UnknownStringRecordSchema)));
|
|
43
|
+
export const RawImportedCompletedOrderSlotSchema = Schema.asSchema(Schema.Struct({
|
|
44
|
+
__typename: Schema.Literal("ImportedOrderSlot"),
|
|
45
|
+
end: Schema.String,
|
|
46
|
+
name: Schema.String,
|
|
47
|
+
start: Schema.String,
|
|
48
|
+
timeZone: Schema.String
|
|
49
|
+
}).pipe(Schema.extend(UnknownStringRecordSchema)));
|
|
50
|
+
export const RawCompletedOrderSlotSchema = Schema.Union(RawInternalCompletedOrderSlotSchema, RawImportedCompletedOrderSlotSchema);
|
|
51
|
+
export const RawCompletedOrderNodeSchema = Schema.asSchema(Schema.Struct({
|
|
52
|
+
orderId: Schema.String,
|
|
53
|
+
prices: Schema.Struct({
|
|
54
|
+
total: MoneySchema
|
|
55
|
+
}).pipe(Schema.extend(UnknownStringRecordSchema)),
|
|
56
|
+
recurringOrderDefinition: Schema.optionalWith(Schema.NullOr(Schema.Struct({
|
|
57
|
+
name: Schema.String
|
|
58
|
+
}).pipe(Schema.extend(UnknownStringRecordSchema))), { exact: true }),
|
|
59
|
+
region: RawOrderRegionSchema,
|
|
60
|
+
slot: RawCompletedOrderSlotSchema,
|
|
61
|
+
status: Schema.String
|
|
62
|
+
}).pipe(Schema.extend(UnknownStringRecordSchema)));
|
|
63
|
+
const RawCompletedOrdersConnectionSchema = Schema.asSchema(Schema.Struct({
|
|
64
|
+
edges: Schema.Array(Schema.NullOr(Schema.Struct({
|
|
65
|
+
node: Schema.NullOr(RawCompletedOrderNodeSchema)
|
|
66
|
+
}).pipe(Schema.extend(UnknownStringRecordSchema)))),
|
|
67
|
+
pageInfo: Schema.Struct({
|
|
68
|
+
endCursor: Schema.NullOr(Schema.String),
|
|
69
|
+
hasNextPage: Schema.Boolean
|
|
70
|
+
}).pipe(Schema.extend(UnknownStringRecordSchema)),
|
|
71
|
+
retentionPeriod: Schema.optionalWith(Schema.String, { exact: true })
|
|
72
|
+
}).pipe(Schema.extend(UnknownStringRecordSchema)));
|
|
73
|
+
export const RawCompletedOrdersGraphqlResponseSchema = Schema.asSchema(Schema.Struct({
|
|
74
|
+
data: Schema.optionalWith(Schema.NullOr(Schema.Struct({
|
|
75
|
+
completedOrders: Schema.NullOr(RawCompletedOrdersConnectionSchema)
|
|
76
|
+
}).pipe(Schema.extend(UnknownStringRecordSchema))), { exact: true }),
|
|
77
|
+
errors: Schema.optionalWith(Schema.Array(RawCompletedOrdersGraphqlErrorSchema), { exact: true })
|
|
78
|
+
}).pipe(Schema.extend(UnknownStringRecordSchema)));
|
|
79
|
+
export const CompletedOrdersPaginationSchema = Schema.Struct({
|
|
80
|
+
hasNextPage: Schema.Boolean,
|
|
81
|
+
nextPageToken: Schema.optionalWith(Schema.String, { exact: true }),
|
|
82
|
+
retentionPeriod: Schema.optionalWith(Schema.String, { exact: true })
|
|
83
|
+
});
|
|
84
|
+
export const NormalizedCompletedOrderSchema = Schema.Struct({
|
|
85
|
+
addressNickName: Schema.String,
|
|
86
|
+
carrierId: Schema.optionalWith(Schema.String, { exact: true }),
|
|
87
|
+
dates: Schema.Struct({
|
|
88
|
+
deliveryEndDate: Schema.String,
|
|
89
|
+
deliveryStartDate: Schema.String,
|
|
90
|
+
timeZoneId: Schema.String
|
|
91
|
+
}),
|
|
92
|
+
deliveryMethod: Schema.String,
|
|
93
|
+
externalAddress: Schema.optionalWith(Schema.Struct({
|
|
94
|
+
externalCollectionPointId: Schema.String
|
|
95
|
+
}), { exact: true }),
|
|
96
|
+
orderId: Schema.String,
|
|
97
|
+
orderTotals: Schema.Struct({
|
|
98
|
+
totalPrice: MoneySchema
|
|
99
|
+
}),
|
|
100
|
+
recurringShoppingDefinition: Schema.optionalWith(Schema.Struct({
|
|
101
|
+
name: Schema.String
|
|
102
|
+
}), { exact: true }),
|
|
103
|
+
regionId: Schema.String,
|
|
104
|
+
retailerRegionId: Schema.String,
|
|
105
|
+
shippingGroupType: Schema.optionalWith(Schema.String, { exact: true }),
|
|
106
|
+
slotType: Schema.String,
|
|
107
|
+
status: Schema.String
|
|
108
|
+
});
|
|
109
|
+
export const NormalizedCompletedOrdersResultSchema = Schema.Struct({
|
|
110
|
+
orders: Schema.Array(NormalizedCompletedOrderSchema),
|
|
111
|
+
pagination: CompletedOrdersPaginationSchema
|
|
112
|
+
});
|
|
113
|
+
//# sourceMappingURL=order-history.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"order-history.js","sourceRoot":"","sources":["../../../../src/domain/schemas/order-history.ts"],"names":[],"mappings":"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"}
|
|
@@ -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;
|
package/dist/src/index.d.ts
CHANGED
|
@@ -16,6 +16,9 @@ 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";
|
|
20
|
+
export * from "./voila/order-history.js";
|
|
21
|
+
export * from "./voila/order-urls.js";
|
|
19
22
|
export * from "./voila/session-health.js";
|
|
20
23
|
export * from "./voila/session-snapshot.js";
|
|
21
24
|
export * from "./voila/session-storage.js";
|
package/dist/src/index.d.ts.map
CHANGED
|
@@ -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,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,9 @@ 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";
|
|
20
|
+
export * from "./voila/order-history.js";
|
|
21
|
+
export * from "./voila/order-urls.js";
|
|
19
22
|
export * from "./voila/session-health.js";
|
|
20
23
|
export * from "./voila/session-snapshot.js";
|
|
21
24
|
export * from "./voila/session-storage.js";
|
package/dist/src/index.js.map
CHANGED
|
@@ -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,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"}
|
|
@@ -33,6 +33,11 @@ export declare const createInteractiveBrowserLoginPort: (driver: InteractiveBrow
|
|
|
33
33
|
readonly message?: string;
|
|
34
34
|
readonly _tag: "BrowserLoginAdapterFailure";
|
|
35
35
|
}, {
|
|
36
|
+
readonly account?: {
|
|
37
|
+
readonly displayName?: string;
|
|
38
|
+
readonly emailHint?: string;
|
|
39
|
+
readonly stableAccountIdHash?: string;
|
|
40
|
+
};
|
|
36
41
|
readonly authenticated: boolean;
|
|
37
42
|
readonly session: {
|
|
38
43
|
readonly cookieJar: {
|
|
@@ -52,17 +57,12 @@ export declare const createInteractiveBrowserLoginPort: (driver: InteractiveBrow
|
|
|
52
57
|
readonly token: string;
|
|
53
58
|
};
|
|
54
59
|
readonly metadata: {
|
|
60
|
+
readonly regionId: string;
|
|
55
61
|
readonly assetVersion: string;
|
|
56
62
|
readonly clientRouteId: string;
|
|
57
63
|
readonly pageViewId: string;
|
|
58
|
-
readonly regionId: string;
|
|
59
64
|
};
|
|
60
65
|
};
|
|
61
|
-
readonly account?: {
|
|
62
|
-
readonly displayName?: string;
|
|
63
|
-
readonly emailHint?: string;
|
|
64
|
-
readonly stableAccountIdHash?: string;
|
|
65
|
-
};
|
|
66
66
|
}> | Either.Right<{
|
|
67
67
|
readonly message?: string;
|
|
68
68
|
readonly _tag: "BrowserLoginUserCancelled";
|
|
@@ -73,6 +73,11 @@ export declare const createInteractiveBrowserLoginPort: (driver: InteractiveBrow
|
|
|
73
73
|
readonly message?: string;
|
|
74
74
|
readonly _tag: "BrowserLoginAdapterFailure";
|
|
75
75
|
}, {
|
|
76
|
+
readonly account?: {
|
|
77
|
+
readonly displayName?: string;
|
|
78
|
+
readonly emailHint?: string;
|
|
79
|
+
readonly stableAccountIdHash?: string;
|
|
80
|
+
};
|
|
76
81
|
readonly authenticated: boolean;
|
|
77
82
|
readonly session: {
|
|
78
83
|
readonly cookieJar: {
|
|
@@ -92,17 +97,12 @@ export declare const createInteractiveBrowserLoginPort: (driver: InteractiveBrow
|
|
|
92
97
|
readonly token: string;
|
|
93
98
|
};
|
|
94
99
|
readonly metadata: {
|
|
100
|
+
readonly regionId: string;
|
|
95
101
|
readonly assetVersion: string;
|
|
96
102
|
readonly clientRouteId: string;
|
|
97
103
|
readonly pageViewId: string;
|
|
98
|
-
readonly regionId: string;
|
|
99
104
|
};
|
|
100
105
|
};
|
|
101
|
-
readonly account?: {
|
|
102
|
-
readonly displayName?: string;
|
|
103
|
-
readonly emailHint?: string;
|
|
104
|
-
readonly stableAccountIdHash?: string;
|
|
105
|
-
};
|
|
106
106
|
}>>;
|
|
107
107
|
};
|
|
108
108
|
//# sourceMappingURL=browser-login-adapter.d.ts.map
|
|
@@ -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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"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { Either } from "effect";
|
|
2
|
+
import { type NormalizedCompletedOrdersResult, type RawCompletedOrdersConnection, type SessionSnapshot } from "../domain/schemas/index.js";
|
|
3
|
+
import type { VoilaJsonResult, VoilaSdkError, VoilaTransport } from "./http-client.js";
|
|
4
|
+
import type { CompletedOrdersRequestError } from "./order-urls.js";
|
|
5
|
+
import type { CookieJarPort } from "./session-snapshot.js";
|
|
6
|
+
export type CompletedOrdersGraphqlError = {
|
|
7
|
+
readonly _tag: "CompletedOrdersGraphqlError";
|
|
8
|
+
readonly message: string;
|
|
9
|
+
};
|
|
10
|
+
export type CompletedOrdersUnavailableError = {
|
|
11
|
+
readonly _tag: "CompletedOrdersUnavailable";
|
|
12
|
+
readonly message: string;
|
|
13
|
+
};
|
|
14
|
+
export type GetCompletedOrdersError = CompletedOrdersGraphqlError | CompletedOrdersRequestError | CompletedOrdersUnavailableError | VoilaSdkError;
|
|
15
|
+
export type GetCompletedOrdersResult = VoilaJsonResult<NormalizedCompletedOrdersResult>;
|
|
16
|
+
export declare const normalizeCompletedOrdersResponse: (connection: RawCompletedOrdersConnection) => NormalizedCompletedOrdersResult;
|
|
17
|
+
export declare const getCompletedOrders: (session: SessionSnapshot, input: unknown, transport: VoilaTransport, cookieJarPort?: CookieJarPort) => Promise<Either.Either<GetCompletedOrdersResult, GetCompletedOrdersError>>;
|
|
18
|
+
//# sourceMappingURL=order-history.d.ts.map
|
|
@@ -0,0 +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,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"}
|