aivilife-contracts 5.0.0 → 5.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -28,7 +28,7 @@ export class SignInDto extends createZodDto(SignInRequestSchema) {}
28
28
  // Use types
29
29
  const credentials: SignInRequest = {
30
30
  login: 'user@example.com',
31
- password: 'password123'
31
+ password: 'password123',
32
32
  };
33
33
  ```
34
34
 
@@ -46,7 +46,7 @@ if (result.success) {
46
46
  // Use types
47
47
  const credentials: SignInRequest = {
48
48
  login: 'user@example.com',
49
- password: 'password123'
49
+ password: 'password123',
50
50
  };
51
51
  ```
52
52
 
@@ -63,7 +63,7 @@ import {
63
63
  RefreshRequest,
64
64
  RefreshResponse,
65
65
  AuthUser,
66
- UserRole
66
+ UserRole,
67
67
  } from 'aivilife-contracts/auth';
68
68
  ```
69
69
 
@@ -91,6 +91,38 @@ import {
91
91
  } from 'aivilife-contracts/warehouse';
92
92
  ```
93
93
 
94
+ ### Cart
95
+
96
+ ```typescript
97
+ import {
98
+ CartSchema,
99
+ AddCartItemRequestSchema,
100
+ type CartResponse,
101
+ } from 'aivilife-contracts/cart';
102
+ ```
103
+
104
+ ### Orders
105
+
106
+ ```typescript
107
+ import {
108
+ CheckoutSnapshotSchema,
109
+ CreateOrderRequestSchema,
110
+ OrderPaymentMethod,
111
+ OrderSchema,
112
+ type OrderResponse,
113
+ } from 'aivilife-contracts/order';
114
+ ```
115
+
116
+ ## 5.2.0
117
+
118
+ - Added checkout, pickup-stock availability, order, payment receipt, review and notification contracts.
119
+ - Added partial main-wallet payment while keeping all accounting amounts at two decimal places.
120
+
121
+ ## 5.1.0
122
+
123
+ - Added authenticated shopping-cart request/response schemas and availability states.
124
+ - Cart prices and PV are current catalog values; the cart does not reserve warehouse stock.
125
+
94
126
  ## 4.4.0
95
127
 
96
128
  - Added warehouse CRUD, assignment, stock, request, audit, transfer and attachment contracts.
@@ -0,0 +1,87 @@
1
+ import { C as CartItemAvailability } from '../cart.enums-Q3FbqDWC.mjs';
2
+ import { z } from 'zod';
3
+
4
+ declare const AddCartItemRequestSchema: z.ZodObject<{
5
+ variantPublicId: z.ZodUUID;
6
+ quantity: z.ZodDefault<z.ZodNumber>;
7
+ }, z.core.$strip>;
8
+ declare const UpdateCartItemRequestSchema: z.ZodObject<{
9
+ quantity: z.ZodNumber;
10
+ version: z.ZodNumber;
11
+ }, z.core.$strip>;
12
+ declare const CartItemPublicIdParamSchema: z.ZodObject<{
13
+ itemPublicId: z.ZodUUID;
14
+ }, z.core.$strip>;
15
+ declare const CartItemSchema: z.ZodObject<{
16
+ publicId: z.ZodUUID;
17
+ quantity: z.ZodNumber;
18
+ version: z.ZodNumber;
19
+ availability: z.ZodEnum<typeof CartItemAvailability>;
20
+ product: z.ZodObject<{
21
+ publicId: z.ZodUUID;
22
+ slug: z.ZodString;
23
+ name: z.ZodString;
24
+ coverContentUrl: z.ZodNullable<z.ZodString>;
25
+ }, z.core.$strip>;
26
+ variant: z.ZodObject<{
27
+ publicId: z.ZodUUID;
28
+ sku: z.ZodString;
29
+ quantity: z.ZodString;
30
+ unit: z.ZodEnum<{
31
+ readonly CAPSULE: "CAPSULE";
32
+ readonly GRAM: "GRAM";
33
+ readonly MILLILITER: "MILLILITER";
34
+ readonly PIECE: "PIECE";
35
+ }>;
36
+ priceUsd: z.ZodString;
37
+ pv: z.ZodString;
38
+ }, z.core.$strip>;
39
+ lineTotalUsd: z.ZodString;
40
+ lineTotalPv: z.ZodString;
41
+ createdAt: z.ZodString;
42
+ updatedAt: z.ZodString;
43
+ }, z.core.$strip>;
44
+ declare const CartSchema: z.ZodObject<{
45
+ publicId: z.ZodNullable<z.ZodUUID>;
46
+ items: z.ZodArray<z.ZodObject<{
47
+ publicId: z.ZodUUID;
48
+ quantity: z.ZodNumber;
49
+ version: z.ZodNumber;
50
+ availability: z.ZodEnum<typeof CartItemAvailability>;
51
+ product: z.ZodObject<{
52
+ publicId: z.ZodUUID;
53
+ slug: z.ZodString;
54
+ name: z.ZodString;
55
+ coverContentUrl: z.ZodNullable<z.ZodString>;
56
+ }, z.core.$strip>;
57
+ variant: z.ZodObject<{
58
+ publicId: z.ZodUUID;
59
+ sku: z.ZodString;
60
+ quantity: z.ZodString;
61
+ unit: z.ZodEnum<{
62
+ readonly CAPSULE: "CAPSULE";
63
+ readonly GRAM: "GRAM";
64
+ readonly MILLILITER: "MILLILITER";
65
+ readonly PIECE: "PIECE";
66
+ }>;
67
+ priceUsd: z.ZodString;
68
+ pv: z.ZodString;
69
+ }, z.core.$strip>;
70
+ lineTotalUsd: z.ZodString;
71
+ lineTotalPv: z.ZodString;
72
+ createdAt: z.ZodString;
73
+ updatedAt: z.ZodString;
74
+ }, z.core.$strip>>;
75
+ totalQuantity: z.ZodNumber;
76
+ subtotalUsd: z.ZodString;
77
+ totalPv: z.ZodString;
78
+ hasUnavailableItems: z.ZodBoolean;
79
+ updatedAt: z.ZodNullable<z.ZodString>;
80
+ }, z.core.$strip>;
81
+
82
+ type AddCartItemRequest = z.infer<typeof AddCartItemRequestSchema>;
83
+ type UpdateCartItemRequest = z.infer<typeof UpdateCartItemRequestSchema>;
84
+ type CartItemResponse = z.infer<typeof CartItemSchema>;
85
+ type CartResponse = z.infer<typeof CartSchema>;
86
+
87
+ export { type AddCartItemRequest, AddCartItemRequestSchema, CartItemAvailability, CartItemPublicIdParamSchema, type CartItemResponse, CartItemSchema, type CartResponse, CartSchema, type UpdateCartItemRequest, UpdateCartItemRequestSchema };
@@ -0,0 +1,87 @@
1
+ import { C as CartItemAvailability } from '../cart.enums-Q3FbqDWC.js';
2
+ import { z } from 'zod';
3
+
4
+ declare const AddCartItemRequestSchema: z.ZodObject<{
5
+ variantPublicId: z.ZodUUID;
6
+ quantity: z.ZodDefault<z.ZodNumber>;
7
+ }, z.core.$strip>;
8
+ declare const UpdateCartItemRequestSchema: z.ZodObject<{
9
+ quantity: z.ZodNumber;
10
+ version: z.ZodNumber;
11
+ }, z.core.$strip>;
12
+ declare const CartItemPublicIdParamSchema: z.ZodObject<{
13
+ itemPublicId: z.ZodUUID;
14
+ }, z.core.$strip>;
15
+ declare const CartItemSchema: z.ZodObject<{
16
+ publicId: z.ZodUUID;
17
+ quantity: z.ZodNumber;
18
+ version: z.ZodNumber;
19
+ availability: z.ZodEnum<typeof CartItemAvailability>;
20
+ product: z.ZodObject<{
21
+ publicId: z.ZodUUID;
22
+ slug: z.ZodString;
23
+ name: z.ZodString;
24
+ coverContentUrl: z.ZodNullable<z.ZodString>;
25
+ }, z.core.$strip>;
26
+ variant: z.ZodObject<{
27
+ publicId: z.ZodUUID;
28
+ sku: z.ZodString;
29
+ quantity: z.ZodString;
30
+ unit: z.ZodEnum<{
31
+ readonly CAPSULE: "CAPSULE";
32
+ readonly GRAM: "GRAM";
33
+ readonly MILLILITER: "MILLILITER";
34
+ readonly PIECE: "PIECE";
35
+ }>;
36
+ priceUsd: z.ZodString;
37
+ pv: z.ZodString;
38
+ }, z.core.$strip>;
39
+ lineTotalUsd: z.ZodString;
40
+ lineTotalPv: z.ZodString;
41
+ createdAt: z.ZodString;
42
+ updatedAt: z.ZodString;
43
+ }, z.core.$strip>;
44
+ declare const CartSchema: z.ZodObject<{
45
+ publicId: z.ZodNullable<z.ZodUUID>;
46
+ items: z.ZodArray<z.ZodObject<{
47
+ publicId: z.ZodUUID;
48
+ quantity: z.ZodNumber;
49
+ version: z.ZodNumber;
50
+ availability: z.ZodEnum<typeof CartItemAvailability>;
51
+ product: z.ZodObject<{
52
+ publicId: z.ZodUUID;
53
+ slug: z.ZodString;
54
+ name: z.ZodString;
55
+ coverContentUrl: z.ZodNullable<z.ZodString>;
56
+ }, z.core.$strip>;
57
+ variant: z.ZodObject<{
58
+ publicId: z.ZodUUID;
59
+ sku: z.ZodString;
60
+ quantity: z.ZodString;
61
+ unit: z.ZodEnum<{
62
+ readonly CAPSULE: "CAPSULE";
63
+ readonly GRAM: "GRAM";
64
+ readonly MILLILITER: "MILLILITER";
65
+ readonly PIECE: "PIECE";
66
+ }>;
67
+ priceUsd: z.ZodString;
68
+ pv: z.ZodString;
69
+ }, z.core.$strip>;
70
+ lineTotalUsd: z.ZodString;
71
+ lineTotalPv: z.ZodString;
72
+ createdAt: z.ZodString;
73
+ updatedAt: z.ZodString;
74
+ }, z.core.$strip>>;
75
+ totalQuantity: z.ZodNumber;
76
+ subtotalUsd: z.ZodString;
77
+ totalPv: z.ZodString;
78
+ hasUnavailableItems: z.ZodBoolean;
79
+ updatedAt: z.ZodNullable<z.ZodString>;
80
+ }, z.core.$strip>;
81
+
82
+ type AddCartItemRequest = z.infer<typeof AddCartItemRequestSchema>;
83
+ type UpdateCartItemRequest = z.infer<typeof UpdateCartItemRequestSchema>;
84
+ type CartItemResponse = z.infer<typeof CartItemSchema>;
85
+ type CartResponse = z.infer<typeof CartSchema>;
86
+
87
+ export { type AddCartItemRequest, AddCartItemRequestSchema, CartItemAvailability, CartItemPublicIdParamSchema, type CartItemResponse, CartItemSchema, type CartResponse, CartSchema, type UpdateCartItemRequest, UpdateCartItemRequestSchema };
@@ -0,0 +1,77 @@
1
+ 'use strict';
2
+
3
+ var zod = require('zod');
4
+
5
+ // src/cart/cart.enums.ts
6
+ var CartItemAvailability = /* @__PURE__ */ ((CartItemAvailability2) => {
7
+ CartItemAvailability2["AVAILABLE"] = "AVAILABLE";
8
+ CartItemAvailability2["PRODUCT_UNAVAILABLE"] = "PRODUCT_UNAVAILABLE";
9
+ CartItemAvailability2["VARIANT_UNAVAILABLE"] = "VARIANT_UNAVAILABLE";
10
+ return CartItemAvailability2;
11
+ })(CartItemAvailability || {});
12
+
13
+ // src/catalog/catalog.enums.ts
14
+ var ProductUnit = {
15
+ CAPSULE: "CAPSULE",
16
+ GRAM: "GRAM",
17
+ MILLILITER: "MILLILITER",
18
+ PIECE: "PIECE"
19
+ };
20
+
21
+ // src/cart/cart.schemas.ts
22
+ var PublicIdSchema = zod.z.uuid();
23
+ var QuantitySchema = zod.z.number().int().min(1).max(999);
24
+ var DecimalSchema = zod.z.string().regex(/^\d{1,16}(?:\.\d{1,2})?$/);
25
+ var AddCartItemRequestSchema = zod.z.object({
26
+ variantPublicId: PublicIdSchema,
27
+ quantity: QuantitySchema.default(1)
28
+ });
29
+ var UpdateCartItemRequestSchema = zod.z.object({
30
+ quantity: QuantitySchema,
31
+ version: zod.z.number().int().positive()
32
+ });
33
+ var CartItemPublicIdParamSchema = zod.z.object({
34
+ itemPublicId: PublicIdSchema
35
+ });
36
+ var CartItemSchema = zod.z.object({
37
+ publicId: PublicIdSchema,
38
+ quantity: QuantitySchema,
39
+ version: zod.z.number().int().positive(),
40
+ availability: zod.z.enum(CartItemAvailability),
41
+ product: zod.z.object({
42
+ publicId: PublicIdSchema,
43
+ slug: zod.z.string(),
44
+ name: zod.z.string(),
45
+ coverContentUrl: zod.z.string().nullable()
46
+ }),
47
+ variant: zod.z.object({
48
+ publicId: PublicIdSchema,
49
+ sku: zod.z.string(),
50
+ quantity: zod.z.string(),
51
+ unit: zod.z.enum(ProductUnit),
52
+ priceUsd: DecimalSchema,
53
+ pv: DecimalSchema
54
+ }),
55
+ lineTotalUsd: DecimalSchema,
56
+ lineTotalPv: DecimalSchema,
57
+ createdAt: zod.z.string().datetime(),
58
+ updatedAt: zod.z.string().datetime()
59
+ });
60
+ var CartSchema = zod.z.object({
61
+ publicId: PublicIdSchema.nullable(),
62
+ items: zod.z.array(CartItemSchema),
63
+ totalQuantity: zod.z.number().int().nonnegative(),
64
+ subtotalUsd: DecimalSchema,
65
+ totalPv: DecimalSchema,
66
+ hasUnavailableItems: zod.z.boolean(),
67
+ updatedAt: zod.z.string().datetime().nullable()
68
+ });
69
+
70
+ exports.AddCartItemRequestSchema = AddCartItemRequestSchema;
71
+ exports.CartItemAvailability = CartItemAvailability;
72
+ exports.CartItemPublicIdParamSchema = CartItemPublicIdParamSchema;
73
+ exports.CartItemSchema = CartItemSchema;
74
+ exports.CartSchema = CartSchema;
75
+ exports.UpdateCartItemRequestSchema = UpdateCartItemRequestSchema;
76
+ //# sourceMappingURL=index.js.map
77
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/cart/cart.enums.ts","../../src/catalog/catalog.enums.ts","../../src/cart/cart.schemas.ts"],"names":["CartItemAvailability","z"],"mappings":"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","file":"index.js","sourcesContent":["export enum CartItemAvailability {\n AVAILABLE = 'AVAILABLE',\n PRODUCT_UNAVAILABLE = 'PRODUCT_UNAVAILABLE',\n VARIANT_UNAVAILABLE = 'VARIANT_UNAVAILABLE',\n}\n","export const ProductStatus = {\n DRAFT: 'DRAFT',\n ACTIVE: 'ACTIVE',\n ARCHIVED: 'ARCHIVED',\n} as const;\n\nexport type ProductStatus = (typeof ProductStatus)[keyof typeof ProductStatus];\n\nexport const ProductUnit = {\n CAPSULE: 'CAPSULE',\n GRAM: 'GRAM',\n MILLILITER: 'MILLILITER',\n PIECE: 'PIECE',\n} as const;\n\nexport type ProductUnit = (typeof ProductUnit)[keyof typeof ProductUnit];\n\nexport const ProductMediaType = {\n IMAGE: 'IMAGE',\n UPLOADED_VIDEO: 'UPLOADED_VIDEO',\n EXTERNAL_VIDEO: 'EXTERNAL_VIDEO',\n} as const;\n\nexport type ProductMediaType =\n (typeof ProductMediaType)[keyof typeof ProductMediaType];\n\nexport const ProductMediaRole = {\n COVER: 'COVER',\n GALLERY: 'GALLERY',\n} as const;\n\nexport type ProductMediaRole =\n (typeof ProductMediaRole)[keyof typeof ProductMediaRole];\n","import { z } from 'zod';\nimport { ProductUnit } from '../catalog/catalog.enums';\nimport { CartItemAvailability } from './cart.enums';\n\nconst PublicIdSchema = z.uuid();\nconst QuantitySchema = z.number().int().min(1).max(999);\nconst DecimalSchema = z.string().regex(/^\\d{1,16}(?:\\.\\d{1,2})?$/);\n\nexport const AddCartItemRequestSchema = z.object({\n variantPublicId: PublicIdSchema,\n quantity: QuantitySchema.default(1),\n});\n\nexport const UpdateCartItemRequestSchema = z.object({\n quantity: QuantitySchema,\n version: z.number().int().positive(),\n});\n\nexport const CartItemPublicIdParamSchema = z.object({\n itemPublicId: PublicIdSchema,\n});\n\nexport const CartItemSchema = z.object({\n publicId: PublicIdSchema,\n quantity: QuantitySchema,\n version: z.number().int().positive(),\n availability: z.enum(CartItemAvailability),\n product: z.object({\n publicId: PublicIdSchema,\n slug: z.string(),\n name: z.string(),\n coverContentUrl: z.string().nullable(),\n }),\n variant: z.object({\n publicId: PublicIdSchema,\n sku: z.string(),\n quantity: z.string(),\n unit: z.enum(ProductUnit),\n priceUsd: DecimalSchema,\n pv: DecimalSchema,\n }),\n lineTotalUsd: DecimalSchema,\n lineTotalPv: DecimalSchema,\n createdAt: z.string().datetime(),\n updatedAt: z.string().datetime(),\n});\n\nexport const CartSchema = z.object({\n publicId: PublicIdSchema.nullable(),\n items: z.array(CartItemSchema),\n totalQuantity: z.number().int().nonnegative(),\n subtotalUsd: DecimalSchema,\n totalPv: DecimalSchema,\n hasUnavailableItems: z.boolean(),\n updatedAt: z.string().datetime().nullable(),\n});\n"]}
@@ -0,0 +1,70 @@
1
+ import { z } from 'zod';
2
+
3
+ // src/cart/cart.enums.ts
4
+ var CartItemAvailability = /* @__PURE__ */ ((CartItemAvailability2) => {
5
+ CartItemAvailability2["AVAILABLE"] = "AVAILABLE";
6
+ CartItemAvailability2["PRODUCT_UNAVAILABLE"] = "PRODUCT_UNAVAILABLE";
7
+ CartItemAvailability2["VARIANT_UNAVAILABLE"] = "VARIANT_UNAVAILABLE";
8
+ return CartItemAvailability2;
9
+ })(CartItemAvailability || {});
10
+
11
+ // src/catalog/catalog.enums.ts
12
+ var ProductUnit = {
13
+ CAPSULE: "CAPSULE",
14
+ GRAM: "GRAM",
15
+ MILLILITER: "MILLILITER",
16
+ PIECE: "PIECE"
17
+ };
18
+
19
+ // src/cart/cart.schemas.ts
20
+ var PublicIdSchema = z.uuid();
21
+ var QuantitySchema = z.number().int().min(1).max(999);
22
+ var DecimalSchema = z.string().regex(/^\d{1,16}(?:\.\d{1,2})?$/);
23
+ var AddCartItemRequestSchema = z.object({
24
+ variantPublicId: PublicIdSchema,
25
+ quantity: QuantitySchema.default(1)
26
+ });
27
+ var UpdateCartItemRequestSchema = z.object({
28
+ quantity: QuantitySchema,
29
+ version: z.number().int().positive()
30
+ });
31
+ var CartItemPublicIdParamSchema = z.object({
32
+ itemPublicId: PublicIdSchema
33
+ });
34
+ var CartItemSchema = z.object({
35
+ publicId: PublicIdSchema,
36
+ quantity: QuantitySchema,
37
+ version: z.number().int().positive(),
38
+ availability: z.enum(CartItemAvailability),
39
+ product: z.object({
40
+ publicId: PublicIdSchema,
41
+ slug: z.string(),
42
+ name: z.string(),
43
+ coverContentUrl: z.string().nullable()
44
+ }),
45
+ variant: z.object({
46
+ publicId: PublicIdSchema,
47
+ sku: z.string(),
48
+ quantity: z.string(),
49
+ unit: z.enum(ProductUnit),
50
+ priceUsd: DecimalSchema,
51
+ pv: DecimalSchema
52
+ }),
53
+ lineTotalUsd: DecimalSchema,
54
+ lineTotalPv: DecimalSchema,
55
+ createdAt: z.string().datetime(),
56
+ updatedAt: z.string().datetime()
57
+ });
58
+ var CartSchema = z.object({
59
+ publicId: PublicIdSchema.nullable(),
60
+ items: z.array(CartItemSchema),
61
+ totalQuantity: z.number().int().nonnegative(),
62
+ subtotalUsd: DecimalSchema,
63
+ totalPv: DecimalSchema,
64
+ hasUnavailableItems: z.boolean(),
65
+ updatedAt: z.string().datetime().nullable()
66
+ });
67
+
68
+ export { AddCartItemRequestSchema, CartItemAvailability, CartItemPublicIdParamSchema, CartItemSchema, CartSchema, UpdateCartItemRequestSchema };
69
+ //# sourceMappingURL=index.mjs.map
70
+ //# sourceMappingURL=index.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/cart/cart.enums.ts","../../src/catalog/catalog.enums.ts","../../src/cart/cart.schemas.ts"],"names":["CartItemAvailability"],"mappings":"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","file":"index.mjs","sourcesContent":["export enum CartItemAvailability {\n AVAILABLE = 'AVAILABLE',\n PRODUCT_UNAVAILABLE = 'PRODUCT_UNAVAILABLE',\n VARIANT_UNAVAILABLE = 'VARIANT_UNAVAILABLE',\n}\n","export const ProductStatus = {\n DRAFT: 'DRAFT',\n ACTIVE: 'ACTIVE',\n ARCHIVED: 'ARCHIVED',\n} as const;\n\nexport type ProductStatus = (typeof ProductStatus)[keyof typeof ProductStatus];\n\nexport const ProductUnit = {\n CAPSULE: 'CAPSULE',\n GRAM: 'GRAM',\n MILLILITER: 'MILLILITER',\n PIECE: 'PIECE',\n} as const;\n\nexport type ProductUnit = (typeof ProductUnit)[keyof typeof ProductUnit];\n\nexport const ProductMediaType = {\n IMAGE: 'IMAGE',\n UPLOADED_VIDEO: 'UPLOADED_VIDEO',\n EXTERNAL_VIDEO: 'EXTERNAL_VIDEO',\n} as const;\n\nexport type ProductMediaType =\n (typeof ProductMediaType)[keyof typeof ProductMediaType];\n\nexport const ProductMediaRole = {\n COVER: 'COVER',\n GALLERY: 'GALLERY',\n} as const;\n\nexport type ProductMediaRole =\n (typeof ProductMediaRole)[keyof typeof ProductMediaRole];\n","import { z } from 'zod';\nimport { ProductUnit } from '../catalog/catalog.enums';\nimport { CartItemAvailability } from './cart.enums';\n\nconst PublicIdSchema = z.uuid();\nconst QuantitySchema = z.number().int().min(1).max(999);\nconst DecimalSchema = z.string().regex(/^\\d{1,16}(?:\\.\\d{1,2})?$/);\n\nexport const AddCartItemRequestSchema = z.object({\n variantPublicId: PublicIdSchema,\n quantity: QuantitySchema.default(1),\n});\n\nexport const UpdateCartItemRequestSchema = z.object({\n quantity: QuantitySchema,\n version: z.number().int().positive(),\n});\n\nexport const CartItemPublicIdParamSchema = z.object({\n itemPublicId: PublicIdSchema,\n});\n\nexport const CartItemSchema = z.object({\n publicId: PublicIdSchema,\n quantity: QuantitySchema,\n version: z.number().int().positive(),\n availability: z.enum(CartItemAvailability),\n product: z.object({\n publicId: PublicIdSchema,\n slug: z.string(),\n name: z.string(),\n coverContentUrl: z.string().nullable(),\n }),\n variant: z.object({\n publicId: PublicIdSchema,\n sku: z.string(),\n quantity: z.string(),\n unit: z.enum(ProductUnit),\n priceUsd: DecimalSchema,\n pv: DecimalSchema,\n }),\n lineTotalUsd: DecimalSchema,\n lineTotalPv: DecimalSchema,\n createdAt: z.string().datetime(),\n updatedAt: z.string().datetime(),\n});\n\nexport const CartSchema = z.object({\n publicId: PublicIdSchema.nullable(),\n items: z.array(CartItemSchema),\n totalQuantity: z.number().int().nonnegative(),\n subtotalUsd: DecimalSchema,\n totalPv: DecimalSchema,\n hasUnavailableItems: z.boolean(),\n updatedAt: z.string().datetime().nullable(),\n});\n"]}
@@ -0,0 +1,7 @@
1
+ declare enum CartItemAvailability {
2
+ AVAILABLE = "AVAILABLE",
3
+ PRODUCT_UNAVAILABLE = "PRODUCT_UNAVAILABLE",
4
+ VARIANT_UNAVAILABLE = "VARIANT_UNAVAILABLE"
5
+ }
6
+
7
+ export { CartItemAvailability as C };
@@ -0,0 +1,7 @@
1
+ declare enum CartItemAvailability {
2
+ AVAILABLE = "AVAILABLE",
3
+ PRODUCT_UNAVAILABLE = "PRODUCT_UNAVAILABLE",
4
+ VARIANT_UNAVAILABLE = "VARIANT_UNAVAILABLE"
5
+ }
6
+
7
+ export { CartItemAvailability as C };
package/dist/index.d.mts CHANGED
@@ -3,6 +3,9 @@ import { z } from 'zod';
3
3
  import { U as UserRole, B as BinaryBranch } from './marketing.enums-pV5acC3L.mjs';
4
4
  export { A as AuthUser, a as AuthUserSchema, b as BinaryBranchSchema, C as ConfirmEmail, c as ConfirmEmailChange, d as ConfirmEmailChangeSchema, e as ConfirmEmailSchema, F as ForgotPassword, f as ForgotPasswordSchema, M as MarketingMemberStatus, g as MarketingMemberStatusSchema, R as RefreshResponse, h as RefreshResponseSchema, i as RegistrationAvailabilityRequest, j as RegistrationAvailabilityRequestSchema, k as RegistrationAvailabilityResponse, l as RegistrationAvailabilityResponseSchema, m as RegistrationEmailSchema, n as RegistrationLoginSchema, o as RegistrationPasswordSchema, p as RegistrationPhoneNumberSchema, q as RequestEmailChange, r as RequestEmailChangeSchema, s as RequestEmailVerification, t as RequestEmailVerificationSchema, u as ResetPassword, v as ResetPasswordSchema, S as SignInRequest, w as SignInRequestSchema, x as SignInResponse, y as SignInResponseSchema, z as SignUpRequest, D as SignUpRequestSchema } from './marketing.enums-pV5acC3L.mjs';
5
5
  export { CreateExternalProductVideoRequest, CreateExternalProductVideoRequestSchema, CreateProductCategoryRequest, CreateProductCategoryRequestSchema, CreateProductRequest, CreateProductRequestSchema, CreateProductVariantRequest, CreateProductVariantRequestSchema, LocalizedProductCategorySchema, LocalizedProductListResponse, LocalizedProductResponse, LocalizedProductSchema, ProductCategoryResponse, ProductCategorySchema, ProductCategoryTranslationInputSchema, ProductListQuery, ProductListQuerySchema, ProductListResponse, ProductMediaPublicIdParamSchema, ProductMediaResponse, ProductMediaRole, ProductMediaSchema, ProductMediaType, ProductPublicIdParamSchema, ProductResponse, ProductSchema, ProductSlugParamSchema, ProductStatus, ProductTranslationInputSchema, ProductUnit, ProductVariantInputSchema, ProductVariantPublicIdParamSchema, ProductVariantResponse, ProductVariantSchema, UpdateProductCategoryRequest, UpdateProductCategoryRequestSchema, UpdateProductMediaRequest, UpdateProductMediaRequestSchema, UpdateProductRequest, UpdateProductRequestSchema, UpdateProductVariantRequest, UpdateProductVariantRequestSchema, UploadProductImageRequest, UploadProductImageRequestSchema, UploadProductVideoRequest, UploadProductVideoRequestSchema } from './catalog/index.mjs';
6
+ export { C as CartItemAvailability } from './cart.enums-Q3FbqDWC.mjs';
7
+ export { AddCartItemRequest, AddCartItemRequestSchema, CartItemPublicIdParamSchema, CartItemResponse, CartItemSchema, CartResponse, CartSchema, UpdateCartItemRequest, UpdateCartItemRequestSchema } from './cart/index.mjs';
8
+ export { CheckoutLocationResponse, CheckoutLocationSchema, CheckoutSnapshotResponse, CheckoutSnapshotSchema, CheckoutWarehouseAvailabilitySchema, CheckoutWarehouseListResponse, CheckoutWarehouseListSchema, CheckoutWarehouseQuery, CheckoutWarehouseQuerySchema, CheckoutWarehouseSchema, CreateOrderRequest, CreateOrderRequestSchema, OrderDeliveryMethod, OrderEventSchema, OrderEventType, OrderItemSchema, OrderListItemResponse, OrderListItemSchema, OrderListQuery, OrderListQuerySchema, OrderListResponse, OrderListResponseSchema, OrderNotificationListResponse, OrderNotificationListSchema, OrderNotificationResponse, OrderNotificationSchema, OrderNotificationType, OrderPaymentMethod, OrderPaymentStatus, OrderPublicIdParamSchema, OrderReceiptDecision, OrderReceiptParamSchema, OrderReceiptSchema, OrderReceiptStatus, OrderResponse, OrderSchema, OrderStatus, OrderStockAvailability, OrderWarehouseSchema, ReviewOrderReceiptRequest, ReviewOrderReceiptRequestSchema } from './order/index.mjs';
6
9
  export { AssignWarehouseUserRequest, AssignWarehouseUserRequestSchema, CreateWarehouseOperationRequest, CreateWarehouseOperationRequestSchema, CreateWarehouseRequest, CreateWarehouseRequestSchema, ExecuteWarehouseOperationRequest, ExecuteWarehouseOperationRequestSchema, RejectWarehouseOperationRequest, RejectWarehouseOperationRequestSchema, ReportWarehouseDiscrepancyRequest, ReportWarehouseDiscrepancyRequestSchema, UpdateWarehouseRequest, UpdateWarehouseRequestSchema, WarehouseAssignmentParamSchema, WarehouseAssignmentResponse, WarehouseAssignmentSchema, WarehouseAssignmentType, WarehouseDayScheduleSchema, WarehouseListQuery, WarehouseListQuerySchema, WarehouseListResponse, WarehouseMovementResponse, WarehouseMovementSchema, WarehouseMovementType, WarehouseOperationAttachmentParamSchema, WarehouseOperationAttachmentResponse, WarehouseOperationAttachmentSchema, WarehouseOperationComment, WarehouseOperationCommentSchema, WarehouseOperationEventSchema, WarehouseOperationLineSchema, WarehouseOperationListQuery, WarehouseOperationListQuerySchema, WarehouseOperationListResponse, WarehouseOperationPublicIdParamSchema, WarehouseOperationResponse, WarehouseOperationSchema, WarehousePublicIdParamSchema, WarehouseRequestLineInputSchema, WarehouseRequestStatus, WarehouseRequestType, WarehouseResponse, WarehouseSchema, WarehouseStatus, WarehouseStockListQuery, WarehouseStockListQuerySchema, WarehouseStockListResponse, WarehouseStockResponse, WarehouseStockSchema, WarehouseUserLookupListResponse, WarehouseUserLookupResponse, WarehouseUserLookupSchema, WarehouseUserSearchQuery, WarehouseUserSearchQuerySchema, WarehouseWeekday, WarehouseWeeklyScheduleSchema, WarehouseWriteOffReason } from './warehouse/index.mjs';
7
10
  export { AppLocale, SupportedLocales } from './localization/index.mjs';
8
11
 
package/dist/index.d.ts CHANGED
@@ -3,6 +3,9 @@ import { z } from 'zod';
3
3
  import { U as UserRole, B as BinaryBranch } from './marketing.enums-pV5acC3L.js';
4
4
  export { A as AuthUser, a as AuthUserSchema, b as BinaryBranchSchema, C as ConfirmEmail, c as ConfirmEmailChange, d as ConfirmEmailChangeSchema, e as ConfirmEmailSchema, F as ForgotPassword, f as ForgotPasswordSchema, M as MarketingMemberStatus, g as MarketingMemberStatusSchema, R as RefreshResponse, h as RefreshResponseSchema, i as RegistrationAvailabilityRequest, j as RegistrationAvailabilityRequestSchema, k as RegistrationAvailabilityResponse, l as RegistrationAvailabilityResponseSchema, m as RegistrationEmailSchema, n as RegistrationLoginSchema, o as RegistrationPasswordSchema, p as RegistrationPhoneNumberSchema, q as RequestEmailChange, r as RequestEmailChangeSchema, s as RequestEmailVerification, t as RequestEmailVerificationSchema, u as ResetPassword, v as ResetPasswordSchema, S as SignInRequest, w as SignInRequestSchema, x as SignInResponse, y as SignInResponseSchema, z as SignUpRequest, D as SignUpRequestSchema } from './marketing.enums-pV5acC3L.js';
5
5
  export { CreateExternalProductVideoRequest, CreateExternalProductVideoRequestSchema, CreateProductCategoryRequest, CreateProductCategoryRequestSchema, CreateProductRequest, CreateProductRequestSchema, CreateProductVariantRequest, CreateProductVariantRequestSchema, LocalizedProductCategorySchema, LocalizedProductListResponse, LocalizedProductResponse, LocalizedProductSchema, ProductCategoryResponse, ProductCategorySchema, ProductCategoryTranslationInputSchema, ProductListQuery, ProductListQuerySchema, ProductListResponse, ProductMediaPublicIdParamSchema, ProductMediaResponse, ProductMediaRole, ProductMediaSchema, ProductMediaType, ProductPublicIdParamSchema, ProductResponse, ProductSchema, ProductSlugParamSchema, ProductStatus, ProductTranslationInputSchema, ProductUnit, ProductVariantInputSchema, ProductVariantPublicIdParamSchema, ProductVariantResponse, ProductVariantSchema, UpdateProductCategoryRequest, UpdateProductCategoryRequestSchema, UpdateProductMediaRequest, UpdateProductMediaRequestSchema, UpdateProductRequest, UpdateProductRequestSchema, UpdateProductVariantRequest, UpdateProductVariantRequestSchema, UploadProductImageRequest, UploadProductImageRequestSchema, UploadProductVideoRequest, UploadProductVideoRequestSchema } from './catalog/index.js';
6
+ export { C as CartItemAvailability } from './cart.enums-Q3FbqDWC.js';
7
+ export { AddCartItemRequest, AddCartItemRequestSchema, CartItemPublicIdParamSchema, CartItemResponse, CartItemSchema, CartResponse, CartSchema, UpdateCartItemRequest, UpdateCartItemRequestSchema } from './cart/index.js';
8
+ export { CheckoutLocationResponse, CheckoutLocationSchema, CheckoutSnapshotResponse, CheckoutSnapshotSchema, CheckoutWarehouseAvailabilitySchema, CheckoutWarehouseListResponse, CheckoutWarehouseListSchema, CheckoutWarehouseQuery, CheckoutWarehouseQuerySchema, CheckoutWarehouseSchema, CreateOrderRequest, CreateOrderRequestSchema, OrderDeliveryMethod, OrderEventSchema, OrderEventType, OrderItemSchema, OrderListItemResponse, OrderListItemSchema, OrderListQuery, OrderListQuerySchema, OrderListResponse, OrderListResponseSchema, OrderNotificationListResponse, OrderNotificationListSchema, OrderNotificationResponse, OrderNotificationSchema, OrderNotificationType, OrderPaymentMethod, OrderPaymentStatus, OrderPublicIdParamSchema, OrderReceiptDecision, OrderReceiptParamSchema, OrderReceiptSchema, OrderReceiptStatus, OrderResponse, OrderSchema, OrderStatus, OrderStockAvailability, OrderWarehouseSchema, ReviewOrderReceiptRequest, ReviewOrderReceiptRequestSchema } from './order/index.js';
6
9
  export { AssignWarehouseUserRequest, AssignWarehouseUserRequestSchema, CreateWarehouseOperationRequest, CreateWarehouseOperationRequestSchema, CreateWarehouseRequest, CreateWarehouseRequestSchema, ExecuteWarehouseOperationRequest, ExecuteWarehouseOperationRequestSchema, RejectWarehouseOperationRequest, RejectWarehouseOperationRequestSchema, ReportWarehouseDiscrepancyRequest, ReportWarehouseDiscrepancyRequestSchema, UpdateWarehouseRequest, UpdateWarehouseRequestSchema, WarehouseAssignmentParamSchema, WarehouseAssignmentResponse, WarehouseAssignmentSchema, WarehouseAssignmentType, WarehouseDayScheduleSchema, WarehouseListQuery, WarehouseListQuerySchema, WarehouseListResponse, WarehouseMovementResponse, WarehouseMovementSchema, WarehouseMovementType, WarehouseOperationAttachmentParamSchema, WarehouseOperationAttachmentResponse, WarehouseOperationAttachmentSchema, WarehouseOperationComment, WarehouseOperationCommentSchema, WarehouseOperationEventSchema, WarehouseOperationLineSchema, WarehouseOperationListQuery, WarehouseOperationListQuerySchema, WarehouseOperationListResponse, WarehouseOperationPublicIdParamSchema, WarehouseOperationResponse, WarehouseOperationSchema, WarehousePublicIdParamSchema, WarehouseRequestLineInputSchema, WarehouseRequestStatus, WarehouseRequestType, WarehouseResponse, WarehouseSchema, WarehouseStatus, WarehouseStockListQuery, WarehouseStockListQuerySchema, WarehouseStockListResponse, WarehouseStockResponse, WarehouseStockSchema, WarehouseUserLookupListResponse, WarehouseUserLookupResponse, WarehouseUserLookupSchema, WarehouseUserSearchQuery, WarehouseUserSearchQuerySchema, WarehouseWeekday, WarehouseWeeklyScheduleSchema, WarehouseWriteOffReason } from './warehouse/index.js';
7
10
  export { AppLocale, SupportedLocales } from './localization/index.js';
8
11