@reactionary/core 0.0.48 → 0.0.52

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 (109) hide show
  1. package/client/client-builder.js +1 -1
  2. package/client/client.js +1 -1
  3. package/decorators/reactionary.decorator.js +15 -2
  4. package/index.js +14 -14
  5. package/package.json +5 -4
  6. package/providers/analytics.provider.js +1 -1
  7. package/providers/base.provider.js +1 -1
  8. package/providers/cart.provider.js +1 -1
  9. package/providers/category.provider.js +1 -1
  10. package/providers/checkout.provider.js +6 -0
  11. package/providers/identity.provider.js +1 -1
  12. package/providers/index.js +13 -12
  13. package/providers/inventory.provider.js +1 -1
  14. package/providers/order.provider.js +15 -0
  15. package/providers/price.provider.js +1 -1
  16. package/providers/product.provider.js +1 -1
  17. package/providers/profile.provider.js +1 -1
  18. package/providers/search.provider.js +1 -1
  19. package/providers/store.provider.js +1 -1
  20. package/schemas/capabilities.schema.js +2 -1
  21. package/schemas/models/analytics.model.js +1 -1
  22. package/schemas/models/cart.model.js +5 -26
  23. package/schemas/models/category.model.js +2 -2
  24. package/schemas/models/checkout.model.js +44 -0
  25. package/schemas/models/cost.model.js +20 -0
  26. package/schemas/models/identifiers.model.js +12 -0
  27. package/schemas/models/identity.model.js +8 -5
  28. package/schemas/models/index.js +19 -15
  29. package/schemas/models/inventory.model.js +2 -2
  30. package/schemas/models/order.model.js +37 -0
  31. package/schemas/models/payment.model.js +3 -12
  32. package/schemas/models/price.model.js +3 -3
  33. package/schemas/models/product.model.js +6 -3
  34. package/schemas/models/profile.model.js +2 -2
  35. package/schemas/models/search.model.js +2 -2
  36. package/schemas/models/shipping-method.model.js +26 -4
  37. package/schemas/models/store.model.js +2 -2
  38. package/schemas/mutations/analytics.mutation.js +2 -2
  39. package/schemas/mutations/cart.mutation.js +5 -5
  40. package/schemas/mutations/checkout.mutation.js +36 -0
  41. package/schemas/mutations/identity.mutation.js +1 -1
  42. package/schemas/mutations/index.js +10 -10
  43. package/schemas/mutations/inventory.mutation.js +1 -0
  44. package/schemas/mutations/price.mutation.js +1 -0
  45. package/schemas/mutations/product.mutation.js +1 -0
  46. package/schemas/mutations/profile.mutation.js +1 -1
  47. package/schemas/mutations/search.mutation.js +1 -0
  48. package/schemas/queries/analytics.query.js +1 -0
  49. package/schemas/queries/cart.query.js +2 -2
  50. package/schemas/queries/category.query.js +3 -3
  51. package/schemas/queries/checkout.query.js +16 -0
  52. package/schemas/queries/identity.query.js +1 -1
  53. package/schemas/queries/index.js +13 -12
  54. package/schemas/queries/inventory.query.js +2 -2
  55. package/schemas/queries/order.query.js +8 -0
  56. package/schemas/queries/price.query.js +2 -2
  57. package/schemas/queries/product.query.js +6 -1
  58. package/schemas/queries/profile.query.js +1 -1
  59. package/schemas/queries/search.query.js +2 -2
  60. package/schemas/queries/store.query.js +1 -1
  61. package/schemas/session.schema.js +3 -3
  62. package/src/cache/cache.interface.d.ts +1 -1
  63. package/src/cache/memory-cache.d.ts +2 -2
  64. package/src/cache/noop-cache.d.ts +1 -1
  65. package/src/cache/redis-cache.d.ts +1 -1
  66. package/src/client/client-builder.d.ts +2 -2
  67. package/src/client/client.d.ts +11 -11
  68. package/src/decorators/reactionary.decorator.d.ts +3 -1
  69. package/src/index.d.ts +14 -14
  70. package/src/initialization.d.ts +1 -1
  71. package/src/providers/analytics.provider.d.ts +2 -2
  72. package/src/providers/base.provider.d.ts +5 -5
  73. package/src/providers/cart.provider.d.ts +6 -6
  74. package/src/providers/category.provider.d.ts +4 -4
  75. package/src/providers/checkout.provider.d.ts +135 -0
  76. package/src/providers/identity.provider.d.ts +5 -5
  77. package/src/providers/index.d.ts +13 -12
  78. package/src/providers/inventory.provider.d.ts +4 -4
  79. package/src/providers/order.provider.d.ts +16 -0
  80. package/src/providers/price.provider.d.ts +5 -5
  81. package/src/providers/product.provider.d.ts +5 -4
  82. package/src/providers/profile.provider.d.ts +5 -5
  83. package/src/providers/search.provider.d.ts +4 -4
  84. package/src/providers/store.provider.d.ts +4 -4
  85. package/src/schemas/capabilities.schema.d.ts +2 -1
  86. package/src/schemas/models/cart.model.d.ts +0 -2106
  87. package/src/schemas/models/checkout.model.d.ts +2930 -0
  88. package/src/schemas/models/cost.model.d.ts +1867 -0
  89. package/src/schemas/models/identifiers.model.d.ts +13 -1
  90. package/src/schemas/models/identity.model.d.ts +12 -6
  91. package/src/schemas/models/index.d.ts +19 -15
  92. package/src/schemas/models/order.model.d.ts +3144 -0
  93. package/src/schemas/models/payment.model.d.ts +1 -438
  94. package/src/schemas/models/product.model.d.ts +2 -2
  95. package/src/schemas/models/profile.model.d.ts +20 -20
  96. package/src/schemas/models/shipping-method.model.d.ts +54 -4
  97. package/src/schemas/mutations/{cart-payment.mutation.d.ts → checkout.mutation.d.ts} +84 -16
  98. package/src/schemas/mutations/index.d.ts +10 -10
  99. package/src/schemas/queries/category.query.d.ts +10 -10
  100. package/src/schemas/queries/checkout.query.d.ts +19 -0
  101. package/src/schemas/queries/index.d.ts +13 -12
  102. package/src/schemas/queries/order.query.d.ts +7 -0
  103. package/src/schemas/queries/product.query.d.ts +6 -0
  104. package/src/schemas/session.schema.d.ts +6 -3
  105. package/providers/cart-payment.provider.js +0 -9
  106. package/schemas/mutations/cart-payment.mutation.js +0 -15
  107. package/schemas/queries/cart-payment.query.js +0 -11
  108. package/src/providers/cart-payment.provider.d.ts +0 -42
  109. package/src/schemas/queries/cart-payment.query.d.ts +0 -16
@@ -1,5 +1,56 @@
1
- import type z from "zod";
2
- export declare const CartPaymentMutationAddPayment: z.ZodObject<{
1
+ import z from "zod";
2
+ export declare const CheckoutMutationInitiateCheckoutSchema: z.ZodObject<{
3
+ cart: z.ZodObject<{
4
+ key: z.ZodNonOptional<z.ZodDefault<z.ZodString>>;
5
+ }, z.z.core.$loose>;
6
+ billingAddress: z.ZodOptional<z.ZodObject<{
7
+ meta: z.ZodDefault<z.ZodObject<{
8
+ cache: z.ZodDefault<z.ZodObject<{
9
+ hit: z.ZodDefault<z.ZodBoolean>;
10
+ key: z.ZodDefault<z.ZodString>;
11
+ }, z.z.core.$loose>>;
12
+ placeholder: z.ZodDefault<z.ZodBoolean>;
13
+ }, z.z.core.$loose>>;
14
+ firstName: z.ZodDefault<z.ZodString>;
15
+ lastName: z.ZodDefault<z.ZodString>;
16
+ streetAddress: z.ZodDefault<z.ZodString>;
17
+ streetNumber: z.ZodDefault<z.ZodString>;
18
+ city: z.ZodDefault<z.ZodString>;
19
+ region: z.ZodDefault<z.ZodString>;
20
+ postalCode: z.ZodDefault<z.ZodString>;
21
+ countryCode: z.ZodDefault<z.ZodString>;
22
+ }, z.z.core.$loose>>;
23
+ notificationEmail: z.ZodOptional<z.ZodString>;
24
+ notificationPhone: z.ZodOptional<z.ZodString>;
25
+ }, z.z.core.$loose>;
26
+ export declare const CheckoutMutationSetShippingAddressSchema: z.ZodObject<{
27
+ checkout: z.ZodObject<{
28
+ key: z.ZodNonOptional<z.ZodDefault<z.ZodString>>;
29
+ }, z.z.core.$loose>;
30
+ shippingAddress: z.ZodObject<{
31
+ meta: z.ZodNonOptional<z.ZodDefault<z.ZodObject<{
32
+ cache: z.ZodDefault<z.ZodObject<{
33
+ hit: z.ZodDefault<z.ZodBoolean>;
34
+ key: z.ZodDefault<z.ZodString>;
35
+ }, z.z.core.$loose>>;
36
+ placeholder: z.ZodDefault<z.ZodBoolean>;
37
+ }, z.z.core.$loose>>>;
38
+ firstName: z.ZodNonOptional<z.ZodDefault<z.ZodString>>;
39
+ lastName: z.ZodNonOptional<z.ZodDefault<z.ZodString>>;
40
+ streetAddress: z.ZodNonOptional<z.ZodDefault<z.ZodString>>;
41
+ streetNumber: z.ZodNonOptional<z.ZodDefault<z.ZodString>>;
42
+ city: z.ZodNonOptional<z.ZodDefault<z.ZodString>>;
43
+ region: z.ZodNonOptional<z.ZodDefault<z.ZodString>>;
44
+ postalCode: z.ZodNonOptional<z.ZodDefault<z.ZodString>>;
45
+ countryCode: z.ZodNonOptional<z.ZodDefault<z.ZodString>>;
46
+ }, z.z.core.$loose>;
47
+ }, z.z.core.$loose>;
48
+ export declare const CheckoutMutationFinalizeCheckoutSchema: z.ZodObject<{
49
+ checkout: z.ZodObject<{
50
+ key: z.ZodNonOptional<z.ZodDefault<z.ZodString>>;
51
+ }, z.z.core.$loose>;
52
+ }, z.z.core.$loose>;
53
+ export declare const CheckoutMutationAddPaymentInstruction: z.ZodObject<{
3
54
  paymentInstruction: z.ZodObject<{
4
55
  amount: z.ZodNonOptional<z.ZodDefault<z.ZodObject<{
5
56
  value: z.ZodDefault<z.ZodNumber>;
@@ -186,28 +237,45 @@ export declare const CartPaymentMutationAddPayment: z.ZodObject<{
186
237
  ZMW: "ZMW";
187
238
  ZWL: "ZWL";
188
239
  }>>;
189
- }, z.core.$loose>>>;
240
+ }, z.z.core.$loose>>>;
190
241
  paymentMethod: z.ZodNonOptional<z.ZodDefault<z.ZodObject<{
191
242
  method: z.ZodNonOptional<z.ZodDefault<z.ZodString>>;
192
243
  name: z.ZodNonOptional<z.ZodDefault<z.ZodString>>;
193
244
  paymentProcessor: z.ZodNonOptional<z.ZodDefault<z.ZodString>>;
194
- }, z.core.$loose>>>;
245
+ }, z.z.core.$loose>>>;
195
246
  protocolData: z.ZodNonOptional<z.ZodDefault<z.ZodArray<z.ZodObject<{
196
247
  key: z.ZodDefault<z.ZodString>;
197
248
  value: z.ZodDefault<z.ZodString>;
198
- }, z.core.$loose>>>>;
199
- }, z.core.$loose>;
200
- cart: z.ZodObject<{
249
+ }, z.z.core.$loose>>>>;
250
+ }, z.z.core.$loose>;
251
+ checkout: z.ZodObject<{
201
252
  key: z.ZodNonOptional<z.ZodDefault<z.ZodString>>;
202
- }, z.core.$loose>;
203
- }, z.core.$loose>;
204
- export declare const CartPaymentMutationCancelPayment: z.ZodObject<{
253
+ }, z.z.core.$loose>;
254
+ }, z.z.core.$loose>;
255
+ export declare const CheckoutMutationRemovePaymentInstruction: z.ZodObject<{
205
256
  paymentInstruction: z.ZodObject<{
206
257
  key: z.ZodNonOptional<z.ZodNonOptional<z.ZodDefault<z.ZodString>>>;
207
- }, z.core.$loose>;
208
- cart: z.ZodObject<{
258
+ }, z.z.core.$loose>;
259
+ checkout: z.ZodObject<{
260
+ key: z.ZodNonOptional<z.ZodDefault<z.ZodString>>;
261
+ }, z.z.core.$loose>;
262
+ }, z.z.core.$loose>;
263
+ export declare const CheckoutMutationSetShippingInstruction: z.ZodObject<{
264
+ shippingInstruction: z.ZodObject<{
265
+ instructions: z.ZodNonOptional<z.ZodDefault<z.ZodString>>;
266
+ shippingMethod: z.ZodNonOptional<z.ZodDefault<z.ZodObject<{
267
+ key: z.ZodNonOptional<z.ZodDefault<z.ZodString>>;
268
+ }, z.z.core.$loose>>>;
269
+ pickupPoint: z.ZodNonOptional<z.ZodDefault<z.ZodString>>;
270
+ consentForUnattendedDelivery: z.ZodNonOptional<z.ZodDefault<z.ZodBoolean>>;
271
+ }, z.z.core.$loose>;
272
+ checkout: z.ZodObject<{
209
273
  key: z.ZodNonOptional<z.ZodDefault<z.ZodString>>;
210
- }, z.core.$loose>;
211
- }, z.core.$loose>;
212
- export type CartPaymentMutationAddPayment = z.infer<typeof CartPaymentMutationAddPayment>;
213
- export type CartPaymentMutationCancelPayment = z.infer<typeof CartPaymentMutationCancelPayment>;
274
+ }, z.z.core.$loose>;
275
+ }, z.z.core.$loose>;
276
+ export type CheckoutMutationInitiateCheckout = z.infer<typeof CheckoutMutationInitiateCheckoutSchema>;
277
+ export type CheckoutMutationSetShippingAddress = z.infer<typeof CheckoutMutationSetShippingAddressSchema>;
278
+ export type CheckoutMutationFinalizeCheckout = z.infer<typeof CheckoutMutationFinalizeCheckoutSchema>;
279
+ export type CheckoutMutationAddPaymentInstruction = z.infer<typeof CheckoutMutationAddPaymentInstruction>;
280
+ export type CheckoutMutationRemovePaymentInstruction = z.infer<typeof CheckoutMutationRemovePaymentInstruction>;
281
+ export type CheckoutMutationSetShippingInstruction = z.infer<typeof CheckoutMutationSetShippingInstruction>;
@@ -1,10 +1,10 @@
1
- export * from './analytics.mutation';
2
- export * from './base.mutation';
3
- export * from './cart-payment.mutation';
4
- export * from './cart.mutation';
5
- export * from './identity.mutation';
6
- export * from './inventory.mutation';
7
- export * from './price.mutation';
8
- export * from './product.mutation';
9
- export * from './profile.mutation';
10
- export * from './search.mutation';
1
+ export * from './analytics.mutation.js';
2
+ export * from './base.mutation.js';
3
+ export * from './cart.mutation.js';
4
+ export * from './identity.mutation.js';
5
+ export * from './inventory.mutation.js';
6
+ export * from './price.mutation.js';
7
+ export * from './product.mutation.js';
8
+ export * from './profile.mutation.js';
9
+ export * from './search.mutation.js';
10
+ export * from './checkout.mutation.js';
@@ -2,31 +2,31 @@ import z from "zod";
2
2
  export declare const CategoryQueryById: z.ZodObject<{
3
3
  id: z.ZodDefault<z.ZodObject<{
4
4
  key: z.ZodNonOptional<z.ZodDefault<z.ZodString>>;
5
- }, z.core.$loose>>;
6
- }, z.core.$loose>;
5
+ }, z.z.core.$loose>>;
6
+ }, z.z.core.$loose>;
7
7
  export declare const CategoryQueryBySlug: z.ZodObject<{
8
8
  slug: z.ZodDefault<z.ZodString>;
9
- }, z.core.$loose>;
9
+ }, z.z.core.$loose>;
10
10
  export declare const CategoryQueryForBreadcrumb: z.ZodObject<{
11
11
  id: z.ZodDefault<z.ZodObject<{
12
12
  key: z.ZodNonOptional<z.ZodDefault<z.ZodString>>;
13
- }, z.core.$loose>>;
14
- }, z.core.$loose>;
13
+ }, z.z.core.$loose>>;
14
+ }, z.z.core.$loose>;
15
15
  export declare const CategoryQueryForChildCategories: z.ZodObject<{
16
16
  parentId: z.ZodDefault<z.ZodObject<{
17
17
  key: z.ZodNonOptional<z.ZodDefault<z.ZodString>>;
18
- }, z.core.$loose>>;
18
+ }, z.z.core.$loose>>;
19
19
  paginationOptions: z.ZodDefault<z.ZodObject<{
20
20
  pageNumber: z.ZodDefault<z.ZodNumber>;
21
21
  pageSize: z.ZodDefault<z.ZodNumber>;
22
- }, z.core.$loose>>;
23
- }, z.core.$loose>;
22
+ }, z.z.core.$loose>>;
23
+ }, z.z.core.$loose>;
24
24
  export declare const CategoryQueryForTopCategories: z.ZodObject<{
25
25
  paginationOptions: z.ZodDefault<z.ZodObject<{
26
26
  pageNumber: z.ZodDefault<z.ZodNumber>;
27
27
  pageSize: z.ZodDefault<z.ZodNumber>;
28
- }, z.core.$loose>>;
29
- }, z.core.$loose>;
28
+ }, z.z.core.$loose>>;
29
+ }, z.z.core.$loose>;
30
30
  export type CategoryQueryById = z.infer<typeof CategoryQueryById>;
31
31
  export type CategoryQueryBySlug = z.infer<typeof CategoryQueryBySlug>;
32
32
  export type CategoryQueryForBreadcrumb = z.infer<typeof CategoryQueryForBreadcrumb>;
@@ -0,0 +1,19 @@
1
+ import type { z } from 'zod';
2
+ export declare const CheckoutQueryByIdSchema: z.ZodObject<{
3
+ identifier: z.ZodObject<{
4
+ key: z.ZodNonOptional<z.ZodNonOptional<z.ZodDefault<z.ZodString>>>;
5
+ }, z.core.$loose>;
6
+ }, z.core.$loose>;
7
+ export declare const CheckoutQueryForAvailableShippingMethodsSchema: z.ZodObject<{
8
+ checkout: z.ZodObject<{
9
+ key: z.ZodNonOptional<z.ZodNonOptional<z.ZodDefault<z.ZodString>>>;
10
+ }, z.core.$loose>;
11
+ }, z.core.$loose>;
12
+ export declare const CheckoutQueryForAvailablePaymentMethodsSchema: z.ZodObject<{
13
+ checkout: z.ZodObject<{
14
+ key: z.ZodNonOptional<z.ZodNonOptional<z.ZodDefault<z.ZodString>>>;
15
+ }, z.core.$loose>;
16
+ }, z.core.$loose>;
17
+ export type CheckoutQueryForAvailableShippingMethods = z.infer<typeof CheckoutQueryForAvailableShippingMethodsSchema>;
18
+ export type CheckoutQueryForAvailablePaymentMethods = z.infer<typeof CheckoutQueryForAvailablePaymentMethodsSchema>;
19
+ export type CheckoutQueryById = z.infer<typeof CheckoutQueryByIdSchema>;
@@ -1,12 +1,13 @@
1
- export * from './analytics.query';
2
- export * from './base.query';
3
- export * from './cart-payment.query';
4
- export * from './cart.query';
5
- export * from './category.query';
6
- export * from './identity.query';
7
- export * from './inventory.query';
8
- export * from './price.query';
9
- export * from './product.query';
10
- export * from './profile.query';
11
- export * from './search.query';
12
- export * from './store.query';
1
+ export * from './analytics.query.js';
2
+ export * from './base.query.js';
3
+ export * from './cart.query.js';
4
+ export * from './category.query.js';
5
+ export * from './identity.query.js';
6
+ export * from './inventory.query.js';
7
+ export * from './price.query.js';
8
+ export * from './product.query.js';
9
+ export * from './profile.query.js';
10
+ export * from './search.query.js';
11
+ export * from './store.query.js';
12
+ export * from './order.query.js';
13
+ export * from './checkout.query.js';
@@ -0,0 +1,7 @@
1
+ import type { z } from 'zod';
2
+ export declare const OrderQueryByIdSchema: z.ZodObject<{
3
+ order: z.ZodObject<{
4
+ key: z.ZodNonOptional<z.ZodNonOptional<z.ZodDefault<z.ZodString>>>;
5
+ }, z.core.$loose>;
6
+ }, z.core.$loose>;
7
+ export type OrderQueryById = z.infer<typeof OrderQueryByIdSchema>;
@@ -5,5 +5,11 @@ export declare const ProductQueryBySlugSchema: z.ZodObject<{
5
5
  export declare const ProductQueryByIdSchema: z.ZodObject<{
6
6
  id: z.ZodString;
7
7
  }, z.core.$loose>;
8
+ export declare const ProductQueryBySKUSchema: z.ZodObject<{
9
+ sku: z.ZodDefault<z.ZodObject<{
10
+ key: z.ZodNonOptional<z.ZodDefault<z.ZodString>>;
11
+ }, z.core.$loose>>;
12
+ }, z.core.$loose>;
8
13
  export type ProductQueryBySlug = z.infer<typeof ProductQueryBySlugSchema>;
9
14
  export type ProductQueryById = z.infer<typeof ProductQueryByIdSchema>;
15
+ export type ProductQueryBySKU = z.infer<typeof ProductQueryBySKUSchema>;
@@ -204,7 +204,10 @@ export declare const RequestContextSchema: z.ZodObject<{
204
204
  }, z.core.$loose>>;
205
205
  placeholder: z.ZodDefault<z.ZodBoolean>;
206
206
  }, z.core.$loose>>;
207
- type: z.ZodLiteral<"Anonymous">;
207
+ type: z.ZodDefault<z.ZodLiteral<"Anonymous">>;
208
+ token: z.ZodOptional<z.ZodString>;
209
+ refresh_token: z.ZodOptional<z.ZodString>;
210
+ expiry: z.ZodDefault<z.ZodCoercedDate<unknown>>;
208
211
  }, z.core.$loose>, z.ZodObject<{
209
212
  meta: z.ZodDefault<z.ZodObject<{
210
213
  cache: z.ZodDefault<z.ZodObject<{
@@ -216,7 +219,7 @@ export declare const RequestContextSchema: z.ZodObject<{
216
219
  id: z.ZodDefault<z.ZodObject<{
217
220
  userId: z.ZodNonOptional<z.ZodDefault<z.ZodString>>;
218
221
  }, z.core.$loose>>;
219
- type: z.ZodLiteral<"Guest">;
222
+ type: z.ZodDefault<z.ZodLiteral<"Guest">>;
220
223
  token: z.ZodOptional<z.ZodString>;
221
224
  refresh_token: z.ZodOptional<z.ZodString>;
222
225
  expiry: z.ZodDefault<z.ZodCoercedDate<unknown>>;
@@ -231,7 +234,7 @@ export declare const RequestContextSchema: z.ZodObject<{
231
234
  id: z.ZodDefault<z.ZodObject<{
232
235
  userId: z.ZodNonOptional<z.ZodDefault<z.ZodString>>;
233
236
  }, z.core.$loose>>;
234
- type: z.ZodLiteral<"Registered">;
237
+ type: z.ZodDefault<z.ZodLiteral<"Registered">>;
235
238
  logonId: z.ZodDefault<z.ZodString>;
236
239
  token: z.ZodOptional<z.ZodString>;
237
240
  refresh_token: z.ZodOptional<z.ZodString>;
@@ -1,9 +0,0 @@
1
- import { BaseProvider } from "./base.provider";
2
- class CartPaymentProvider extends BaseProvider {
3
- getResourceName() {
4
- return "cart-payment-instruction";
5
- }
6
- }
7
- export {
8
- CartPaymentProvider
9
- };
@@ -1,15 +0,0 @@
1
- import { CartIdentifierSchema, PaymentInstructionIdentifierSchema } from "../models/identifiers.model";
2
- import { PaymentInstructionSchema } from "../models/payment.model";
3
- import { BaseMutationSchema } from "./base.mutation";
4
- const CartPaymentMutationAddPayment = BaseMutationSchema.extend({
5
- paymentInstruction: PaymentInstructionSchema.omit({ meta: true, status: true, identifier: true }).required(),
6
- cart: CartIdentifierSchema.required()
7
- });
8
- const CartPaymentMutationCancelPayment = BaseMutationSchema.extend({
9
- paymentInstruction: PaymentInstructionIdentifierSchema.required(),
10
- cart: CartIdentifierSchema.required()
11
- });
12
- export {
13
- CartPaymentMutationAddPayment,
14
- CartPaymentMutationCancelPayment
15
- };
@@ -1,11 +0,0 @@
1
- import z from "zod";
2
- import { CartIdentifierSchema } from "../models/identifiers.model";
3
- import { PaymentStatusSchema } from "../models/payment.model";
4
- import { BaseQuerySchema } from "./base.query";
5
- const CartPaymentQueryByCartSchema = BaseQuerySchema.extend({
6
- cart: CartIdentifierSchema.required(),
7
- status: z.array(PaymentStatusSchema).optional().describe("Optional status to filter payment instructions by")
8
- });
9
- export {
10
- CartPaymentQueryByCartSchema
11
- };
@@ -1,42 +0,0 @@
1
- import type { CartPaymentInstruction } from '../schemas/models/payment.model';
2
- import type { CartPaymentMutationAddPayment, CartPaymentMutationCancelPayment } from '../schemas/mutations/cart-payment.mutation';
3
- import type { CartPaymentQueryByCart } from '../schemas/queries/cart-payment.query';
4
- import type { RequestContext } from '../schemas/session.schema';
5
- import { BaseProvider } from './base.provider';
6
- export declare abstract class CartPaymentProvider<T extends CartPaymentInstruction = CartPaymentInstruction> extends BaseProvider<T> {
7
- /**
8
- * Returns all payment instructions associated with a given cart, optionally filtered by status
9
- *
10
- * Usecase: Fetch all registered payment instructions to show on checkout page, in case you support multiple payments in your storefront,
11
- * and need to show how far the user has come in the payment process. Also useful if user reloads page, or goes back to site or otherwise breaks the flow.
12
- *
13
- * Only returns payment instructions in status 'pending' or 'authorized'
14
- * @param cartIdentifier
15
- * @param session
16
- */
17
- abstract getByCartIdentifier(payload: CartPaymentQueryByCart, reqCtx: RequestContext): Promise<T[]>;
18
- /**
19
- * Calls payment provider to set up a new payment intent. Returns whatever is needed to continue the payment process, e.g. a client secret for Stripe, or a redirect URL for PayPal.
20
- *
21
- * Usecase: User has filled out checkout form, and is ready to pay. You call this to get the payment process started.
22
- *
23
- * Note: The payment provider MAY change the cart during the payment process, so be sure to reload the cart object after this call.
24
- *
25
- * @param payload
26
- * @param session
27
- */
28
- abstract initiatePaymentForCart(payload: CartPaymentMutationAddPayment, reqCtx: RequestContext): Promise<T>;
29
- /**
30
- * Cancel a payment instruction. This will typically void the payment intent in the payment provider, and set the status of the payment instruction to 'canceled'.
31
- *
32
- * Usecase: User has decided to cancel the payment, e.g. by going back in the checkout process, or by closing the browser window. You call this to clean up the payment instruction.
33
- *
34
- * Note: The payment provider MAY change the cart during the cancellation process, so be sure to reload the cart object after this call.
35
- *
36
- * @param payload
37
- * @param session
38
- * @returns
39
- */
40
- abstract cancelPaymentInstruction(payload: CartPaymentMutationCancelPayment, reqCtx: RequestContext): Promise<T>;
41
- protected getResourceName(): string;
42
- }
@@ -1,16 +0,0 @@
1
- import z from "zod";
2
- export declare const CartPaymentQueryByCartSchema: z.ZodObject<{
3
- cart: z.ZodObject<{
4
- key: z.ZodNonOptional<z.ZodDefault<z.ZodString>>;
5
- }, z.core.$loose>;
6
- status: z.ZodOptional<z.ZodArray<z.ZodEnum<{
7
- pending: "pending";
8
- authorized: "authorized";
9
- canceled: "canceled";
10
- capture: "capture";
11
- partial_capture: "partial_capture";
12
- refunded: "refunded";
13
- partial_refund: "partial_refund";
14
- }>>>;
15
- }, z.core.$loose>;
16
- export type CartPaymentQueryByCart = z.infer<typeof CartPaymentQueryByCartSchema>;