@ecomiq/core 0.1.2 → 0.1.5
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/dist/api.cjs +19 -5
- package/dist/api.cjs.map +1 -1
- package/dist/api.js +19 -5
- package/dist/api.js.map +1 -1
- package/dist/client-4ZTG2RZ3.d.ts +195 -0
- package/dist/client-BpX4yR6S.d.cts +195 -0
- package/dist/client.cjs +324 -10
- package/dist/client.cjs.map +1 -1
- package/dist/client.d.cts +13 -83
- package/dist/client.d.ts +13 -83
- package/dist/client.js +324 -10
- package/dist/client.js.map +1 -1
- package/dist/index.cjs +475 -10
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +4 -1
- package/dist/index.d.ts +4 -1
- package/dist/index.js +444 -11
- package/dist/index.js.map +1 -1
- package/dist/models/customer-address.cjs +41 -0
- package/dist/models/customer-address.cjs.map +1 -0
- package/dist/models/customer-address.d.cts +160 -0
- package/dist/models/customer-address.d.ts +160 -0
- package/dist/models/customer-address.js +36 -0
- package/dist/models/customer-address.js.map +1 -0
- package/dist/models/customer-order.cjs +161 -0
- package/dist/models/customer-order.cjs.map +1 -0
- package/dist/models/customer-order.d.cts +896 -0
- package/dist/models/customer-order.d.ts +896 -0
- package/dist/models/customer-order.js +149 -0
- package/dist/models/customer-order.js.map +1 -0
- package/dist/models/customer-profile.cjs +126 -0
- package/dist/models/customer-profile.cjs.map +1 -0
- package/dist/models/customer-profile.d.cts +178 -0
- package/dist/models/customer-profile.d.ts +178 -0
- package/dist/models/customer-profile.js +118 -0
- package/dist/models/customer-profile.js.map +1 -0
- package/dist/models/settings.d.cts +284 -284
- package/dist/models/settings.d.ts +284 -284
- package/package.json +16 -1
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var zod = require('zod');
|
|
4
|
+
|
|
5
|
+
// src/models/customer-address.ts
|
|
6
|
+
var CustomerAddressUpsertInputSchema = zod.z.object({
|
|
7
|
+
addressKey: zod.z.string().trim().min(1),
|
|
8
|
+
countryIsoCode: zod.z.string().trim().length(2),
|
|
9
|
+
addressLine: zod.z.string().trim().min(1),
|
|
10
|
+
addressNumber: zod.z.string().trim().min(1),
|
|
11
|
+
department: zod.z.string().trim().min(1),
|
|
12
|
+
province: zod.z.string().trim().min(1),
|
|
13
|
+
district: zod.z.string().trim().min(1),
|
|
14
|
+
phone: zod.z.string().trim(),
|
|
15
|
+
cellPhone: zod.z.string().trim(),
|
|
16
|
+
postalCode: zod.z.string().trim().min(1),
|
|
17
|
+
reference: zod.z.string().trim(),
|
|
18
|
+
latitude: zod.z.number().nullable(),
|
|
19
|
+
longitude: zod.z.number().nullable(),
|
|
20
|
+
isDefault: zod.z.boolean()
|
|
21
|
+
});
|
|
22
|
+
var CustomerAddressSchema = CustomerAddressUpsertInputSchema.extend({
|
|
23
|
+
id: zod.z.union([zod.z.string(), zod.z.number()]).transform(String).optional()
|
|
24
|
+
});
|
|
25
|
+
var CustomerAddressesSchema = zod.z.array(CustomerAddressSchema);
|
|
26
|
+
function toCustomerSavedAddresses(addresses) {
|
|
27
|
+
const saved = [];
|
|
28
|
+
for (const address of addresses) {
|
|
29
|
+
if (!address.id?.trim()) continue;
|
|
30
|
+
const { id, ...rest } = address;
|
|
31
|
+
saved.push({ id: id.trim(), ...rest });
|
|
32
|
+
}
|
|
33
|
+
return saved;
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
exports.CustomerAddressSchema = CustomerAddressSchema;
|
|
37
|
+
exports.CustomerAddressUpsertInputSchema = CustomerAddressUpsertInputSchema;
|
|
38
|
+
exports.CustomerAddressesSchema = CustomerAddressesSchema;
|
|
39
|
+
exports.toCustomerSavedAddresses = toCustomerSavedAddresses;
|
|
40
|
+
//# sourceMappingURL=customer-address.cjs.map
|
|
41
|
+
//# sourceMappingURL=customer-address.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/models/customer-address.ts"],"names":["z"],"mappings":";;;;;AAGO,IAAM,gCAAA,GAAmCA,MAAE,MAAA,CAAO;AAAA,EACvD,YAAYA,KAAA,CAAE,MAAA,GAAS,IAAA,EAAK,CAAE,IAAI,CAAC,CAAA;AAAA,EACnC,gBAAgBA,KAAA,CAAE,MAAA,GAAS,IAAA,EAAK,CAAE,OAAO,CAAC,CAAA;AAAA,EAC1C,aAAaA,KAAA,CAAE,MAAA,GAAS,IAAA,EAAK,CAAE,IAAI,CAAC,CAAA;AAAA,EACpC,eAAeA,KAAA,CAAE,MAAA,GAAS,IAAA,EAAK,CAAE,IAAI,CAAC,CAAA;AAAA,EACtC,YAAYA,KAAA,CAAE,MAAA,GAAS,IAAA,EAAK,CAAE,IAAI,CAAC,CAAA;AAAA,EACnC,UAAUA,KAAA,CAAE,MAAA,GAAS,IAAA,EAAK,CAAE,IAAI,CAAC,CAAA;AAAA,EACjC,UAAUA,KAAA,CAAE,MAAA,GAAS,IAAA,EAAK,CAAE,IAAI,CAAC,CAAA;AAAA,EACjC,KAAA,EAAOA,KAAA,CAAE,MAAA,EAAO,CAAE,IAAA,EAAK;AAAA,EACvB,SAAA,EAAWA,KAAA,CAAE,MAAA,EAAO,CAAE,IAAA,EAAK;AAAA,EAC3B,YAAYA,KAAA,CAAE,MAAA,GAAS,IAAA,EAAK,CAAE,IAAI,CAAC,CAAA;AAAA,EACnC,SAAA,EAAWA,KAAA,CAAE,MAAA,EAAO,CAAE,IAAA,EAAK;AAAA,EAC3B,QAAA,EAAUA,KAAA,CAAE,MAAA,EAAO,CAAE,QAAA,EAAS;AAAA,EAC9B,SAAA,EAAWA,KAAA,CAAE,MAAA,EAAO,CAAE,QAAA,EAAS;AAAA,EAC/B,SAAA,EAAWA,MAAE,OAAA;AACf,CAAC;AAKM,IAAM,qBAAA,GAAwB,iCAAiC,MAAA,CAAO;AAAA,EAC3E,EAAA,EAAIA,KAAA,CAAE,KAAA,CAAM,CAACA,MAAE,MAAA,EAAO,EAAGA,KAAA,CAAE,MAAA,EAAQ,CAAC,CAAA,CAAE,SAAA,CAAU,MAAM,EAAE,QAAA;AAC1D,CAAC;AAIM,IAAM,uBAAA,GAA0BA,KAAA,CAAE,KAAA,CAAM,qBAAqB;AAS7D,SAAS,yBACd,SAAA,EACwB;AACxB,EAAA,MAAM,QAAgC,EAAC;AACvC,EAAA,KAAA,MAAW,WAAW,SAAA,EAAW;AAC/B,IAAA,IAAI,CAAC,OAAA,CAAQ,EAAA,EAAI,IAAA,EAAK,EAAG;AACzB,IAAA,MAAM,EAAE,EAAA,EAAI,GAAG,IAAA,EAAK,GAAI,OAAA;AACxB,IAAA,KAAA,CAAM,IAAA,CAAK,EAAE,EAAA,EAAI,EAAA,CAAG,MAAK,EAAG,GAAG,MAAM,CAAA;AAAA,EACvC;AACA,EAAA,OAAO,KAAA;AACT","file":"customer-address.cjs","sourcesContent":["import { z } from 'zod'\n\n/** Payload alineado con POST/PUT `/v1/customer/me/addresses` (vía proxy `customer/addresses`). */\nexport const CustomerAddressUpsertInputSchema = z.object({\n addressKey: z.string().trim().min(1),\n countryIsoCode: z.string().trim().length(2),\n addressLine: z.string().trim().min(1),\n addressNumber: z.string().trim().min(1),\n department: z.string().trim().min(1),\n province: z.string().trim().min(1),\n district: z.string().trim().min(1),\n phone: z.string().trim(),\n cellPhone: z.string().trim(),\n postalCode: z.string().trim().min(1),\n reference: z.string().trim(),\n latitude: z.number().nullable(),\n longitude: z.number().nullable(),\n isDefault: z.boolean(),\n})\n\nexport type CustomerAddressUpsertInput = z.infer<typeof CustomerAddressUpsertInputSchema>\n\n/** Dirección en listados / respuestas (id presente cuando el upstream lo expone). */\nexport const CustomerAddressSchema = CustomerAddressUpsertInputSchema.extend({\n id: z.union([z.string(), z.number()]).transform(String).optional(),\n})\n\nexport type CustomerAddress = z.infer<typeof CustomerAddressSchema>\n\nexport const CustomerAddressesSchema = z.array(CustomerAddressSchema)\n\nexport type CustomerAddresses = z.infer<typeof CustomerAddressesSchema>\n\n/** Dirección guardada con id (requerido para PUT/DELETE). */\nexport type CustomerSavedAddress = CustomerAddressUpsertInput & {\n id: string\n}\n\nexport function toCustomerSavedAddresses(\n addresses: CustomerAddresses,\n): CustomerSavedAddress[] {\n const saved: CustomerSavedAddress[] = []\n for (const address of addresses) {\n if (!address.id?.trim()) continue\n const { id, ...rest } = address\n saved.push({ id: id.trim(), ...rest })\n }\n return saved\n}\n"]}
|
|
@@ -0,0 +1,160 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
|
|
3
|
+
/** Payload alineado con POST/PUT `/v1/customer/me/addresses` (vía proxy `customer/addresses`). */
|
|
4
|
+
declare const CustomerAddressUpsertInputSchema: z.ZodObject<{
|
|
5
|
+
addressKey: z.ZodString;
|
|
6
|
+
countryIsoCode: z.ZodString;
|
|
7
|
+
addressLine: z.ZodString;
|
|
8
|
+
addressNumber: z.ZodString;
|
|
9
|
+
department: z.ZodString;
|
|
10
|
+
province: z.ZodString;
|
|
11
|
+
district: z.ZodString;
|
|
12
|
+
phone: z.ZodString;
|
|
13
|
+
cellPhone: z.ZodString;
|
|
14
|
+
postalCode: z.ZodString;
|
|
15
|
+
reference: z.ZodString;
|
|
16
|
+
latitude: z.ZodNullable<z.ZodNumber>;
|
|
17
|
+
longitude: z.ZodNullable<z.ZodNumber>;
|
|
18
|
+
isDefault: z.ZodBoolean;
|
|
19
|
+
}, "strip", z.ZodTypeAny, {
|
|
20
|
+
province: string;
|
|
21
|
+
postalCode: string;
|
|
22
|
+
district: string;
|
|
23
|
+
phone: string;
|
|
24
|
+
latitude: number | null;
|
|
25
|
+
longitude: number | null;
|
|
26
|
+
isDefault: boolean;
|
|
27
|
+
reference: string;
|
|
28
|
+
addressKey: string;
|
|
29
|
+
countryIsoCode: string;
|
|
30
|
+
addressLine: string;
|
|
31
|
+
addressNumber: string;
|
|
32
|
+
department: string;
|
|
33
|
+
cellPhone: string;
|
|
34
|
+
}, {
|
|
35
|
+
province: string;
|
|
36
|
+
postalCode: string;
|
|
37
|
+
district: string;
|
|
38
|
+
phone: string;
|
|
39
|
+
latitude: number | null;
|
|
40
|
+
longitude: number | null;
|
|
41
|
+
isDefault: boolean;
|
|
42
|
+
reference: string;
|
|
43
|
+
addressKey: string;
|
|
44
|
+
countryIsoCode: string;
|
|
45
|
+
addressLine: string;
|
|
46
|
+
addressNumber: string;
|
|
47
|
+
department: string;
|
|
48
|
+
cellPhone: string;
|
|
49
|
+
}>;
|
|
50
|
+
type CustomerAddressUpsertInput = z.infer<typeof CustomerAddressUpsertInputSchema>;
|
|
51
|
+
/** Dirección en listados / respuestas (id presente cuando el upstream lo expone). */
|
|
52
|
+
declare const CustomerAddressSchema: z.ZodObject<{
|
|
53
|
+
addressKey: z.ZodString;
|
|
54
|
+
countryIsoCode: z.ZodString;
|
|
55
|
+
addressLine: z.ZodString;
|
|
56
|
+
addressNumber: z.ZodString;
|
|
57
|
+
department: z.ZodString;
|
|
58
|
+
province: z.ZodString;
|
|
59
|
+
district: z.ZodString;
|
|
60
|
+
phone: z.ZodString;
|
|
61
|
+
cellPhone: z.ZodString;
|
|
62
|
+
postalCode: z.ZodString;
|
|
63
|
+
reference: z.ZodString;
|
|
64
|
+
latitude: z.ZodNullable<z.ZodNumber>;
|
|
65
|
+
longitude: z.ZodNullable<z.ZodNumber>;
|
|
66
|
+
isDefault: z.ZodBoolean;
|
|
67
|
+
} & {
|
|
68
|
+
id: z.ZodOptional<z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, string, string | number>>;
|
|
69
|
+
}, "strip", z.ZodTypeAny, {
|
|
70
|
+
province: string;
|
|
71
|
+
postalCode: string;
|
|
72
|
+
district: string;
|
|
73
|
+
phone: string;
|
|
74
|
+
latitude: number | null;
|
|
75
|
+
longitude: number | null;
|
|
76
|
+
isDefault: boolean;
|
|
77
|
+
reference: string;
|
|
78
|
+
addressKey: string;
|
|
79
|
+
countryIsoCode: string;
|
|
80
|
+
addressLine: string;
|
|
81
|
+
addressNumber: string;
|
|
82
|
+
department: string;
|
|
83
|
+
cellPhone: string;
|
|
84
|
+
id?: string | undefined;
|
|
85
|
+
}, {
|
|
86
|
+
province: string;
|
|
87
|
+
postalCode: string;
|
|
88
|
+
district: string;
|
|
89
|
+
phone: string;
|
|
90
|
+
latitude: number | null;
|
|
91
|
+
longitude: number | null;
|
|
92
|
+
isDefault: boolean;
|
|
93
|
+
reference: string;
|
|
94
|
+
addressKey: string;
|
|
95
|
+
countryIsoCode: string;
|
|
96
|
+
addressLine: string;
|
|
97
|
+
addressNumber: string;
|
|
98
|
+
department: string;
|
|
99
|
+
cellPhone: string;
|
|
100
|
+
id?: string | number | undefined;
|
|
101
|
+
}>;
|
|
102
|
+
type CustomerAddress = z.infer<typeof CustomerAddressSchema>;
|
|
103
|
+
declare const CustomerAddressesSchema: z.ZodArray<z.ZodObject<{
|
|
104
|
+
addressKey: z.ZodString;
|
|
105
|
+
countryIsoCode: z.ZodString;
|
|
106
|
+
addressLine: z.ZodString;
|
|
107
|
+
addressNumber: z.ZodString;
|
|
108
|
+
department: z.ZodString;
|
|
109
|
+
province: z.ZodString;
|
|
110
|
+
district: z.ZodString;
|
|
111
|
+
phone: z.ZodString;
|
|
112
|
+
cellPhone: z.ZodString;
|
|
113
|
+
postalCode: z.ZodString;
|
|
114
|
+
reference: z.ZodString;
|
|
115
|
+
latitude: z.ZodNullable<z.ZodNumber>;
|
|
116
|
+
longitude: z.ZodNullable<z.ZodNumber>;
|
|
117
|
+
isDefault: z.ZodBoolean;
|
|
118
|
+
} & {
|
|
119
|
+
id: z.ZodOptional<z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, string, string | number>>;
|
|
120
|
+
}, "strip", z.ZodTypeAny, {
|
|
121
|
+
province: string;
|
|
122
|
+
postalCode: string;
|
|
123
|
+
district: string;
|
|
124
|
+
phone: string;
|
|
125
|
+
latitude: number | null;
|
|
126
|
+
longitude: number | null;
|
|
127
|
+
isDefault: boolean;
|
|
128
|
+
reference: string;
|
|
129
|
+
addressKey: string;
|
|
130
|
+
countryIsoCode: string;
|
|
131
|
+
addressLine: string;
|
|
132
|
+
addressNumber: string;
|
|
133
|
+
department: string;
|
|
134
|
+
cellPhone: string;
|
|
135
|
+
id?: string | undefined;
|
|
136
|
+
}, {
|
|
137
|
+
province: string;
|
|
138
|
+
postalCode: string;
|
|
139
|
+
district: string;
|
|
140
|
+
phone: string;
|
|
141
|
+
latitude: number | null;
|
|
142
|
+
longitude: number | null;
|
|
143
|
+
isDefault: boolean;
|
|
144
|
+
reference: string;
|
|
145
|
+
addressKey: string;
|
|
146
|
+
countryIsoCode: string;
|
|
147
|
+
addressLine: string;
|
|
148
|
+
addressNumber: string;
|
|
149
|
+
department: string;
|
|
150
|
+
cellPhone: string;
|
|
151
|
+
id?: string | number | undefined;
|
|
152
|
+
}>, "many">;
|
|
153
|
+
type CustomerAddresses = z.infer<typeof CustomerAddressesSchema>;
|
|
154
|
+
/** Dirección guardada con id (requerido para PUT/DELETE). */
|
|
155
|
+
type CustomerSavedAddress = CustomerAddressUpsertInput & {
|
|
156
|
+
id: string;
|
|
157
|
+
};
|
|
158
|
+
declare function toCustomerSavedAddresses(addresses: CustomerAddresses): CustomerSavedAddress[];
|
|
159
|
+
|
|
160
|
+
export { type CustomerAddress, CustomerAddressSchema, type CustomerAddressUpsertInput, CustomerAddressUpsertInputSchema, type CustomerAddresses, CustomerAddressesSchema, type CustomerSavedAddress, toCustomerSavedAddresses };
|
|
@@ -0,0 +1,160 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
|
|
3
|
+
/** Payload alineado con POST/PUT `/v1/customer/me/addresses` (vía proxy `customer/addresses`). */
|
|
4
|
+
declare const CustomerAddressUpsertInputSchema: z.ZodObject<{
|
|
5
|
+
addressKey: z.ZodString;
|
|
6
|
+
countryIsoCode: z.ZodString;
|
|
7
|
+
addressLine: z.ZodString;
|
|
8
|
+
addressNumber: z.ZodString;
|
|
9
|
+
department: z.ZodString;
|
|
10
|
+
province: z.ZodString;
|
|
11
|
+
district: z.ZodString;
|
|
12
|
+
phone: z.ZodString;
|
|
13
|
+
cellPhone: z.ZodString;
|
|
14
|
+
postalCode: z.ZodString;
|
|
15
|
+
reference: z.ZodString;
|
|
16
|
+
latitude: z.ZodNullable<z.ZodNumber>;
|
|
17
|
+
longitude: z.ZodNullable<z.ZodNumber>;
|
|
18
|
+
isDefault: z.ZodBoolean;
|
|
19
|
+
}, "strip", z.ZodTypeAny, {
|
|
20
|
+
province: string;
|
|
21
|
+
postalCode: string;
|
|
22
|
+
district: string;
|
|
23
|
+
phone: string;
|
|
24
|
+
latitude: number | null;
|
|
25
|
+
longitude: number | null;
|
|
26
|
+
isDefault: boolean;
|
|
27
|
+
reference: string;
|
|
28
|
+
addressKey: string;
|
|
29
|
+
countryIsoCode: string;
|
|
30
|
+
addressLine: string;
|
|
31
|
+
addressNumber: string;
|
|
32
|
+
department: string;
|
|
33
|
+
cellPhone: string;
|
|
34
|
+
}, {
|
|
35
|
+
province: string;
|
|
36
|
+
postalCode: string;
|
|
37
|
+
district: string;
|
|
38
|
+
phone: string;
|
|
39
|
+
latitude: number | null;
|
|
40
|
+
longitude: number | null;
|
|
41
|
+
isDefault: boolean;
|
|
42
|
+
reference: string;
|
|
43
|
+
addressKey: string;
|
|
44
|
+
countryIsoCode: string;
|
|
45
|
+
addressLine: string;
|
|
46
|
+
addressNumber: string;
|
|
47
|
+
department: string;
|
|
48
|
+
cellPhone: string;
|
|
49
|
+
}>;
|
|
50
|
+
type CustomerAddressUpsertInput = z.infer<typeof CustomerAddressUpsertInputSchema>;
|
|
51
|
+
/** Dirección en listados / respuestas (id presente cuando el upstream lo expone). */
|
|
52
|
+
declare const CustomerAddressSchema: z.ZodObject<{
|
|
53
|
+
addressKey: z.ZodString;
|
|
54
|
+
countryIsoCode: z.ZodString;
|
|
55
|
+
addressLine: z.ZodString;
|
|
56
|
+
addressNumber: z.ZodString;
|
|
57
|
+
department: z.ZodString;
|
|
58
|
+
province: z.ZodString;
|
|
59
|
+
district: z.ZodString;
|
|
60
|
+
phone: z.ZodString;
|
|
61
|
+
cellPhone: z.ZodString;
|
|
62
|
+
postalCode: z.ZodString;
|
|
63
|
+
reference: z.ZodString;
|
|
64
|
+
latitude: z.ZodNullable<z.ZodNumber>;
|
|
65
|
+
longitude: z.ZodNullable<z.ZodNumber>;
|
|
66
|
+
isDefault: z.ZodBoolean;
|
|
67
|
+
} & {
|
|
68
|
+
id: z.ZodOptional<z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, string, string | number>>;
|
|
69
|
+
}, "strip", z.ZodTypeAny, {
|
|
70
|
+
province: string;
|
|
71
|
+
postalCode: string;
|
|
72
|
+
district: string;
|
|
73
|
+
phone: string;
|
|
74
|
+
latitude: number | null;
|
|
75
|
+
longitude: number | null;
|
|
76
|
+
isDefault: boolean;
|
|
77
|
+
reference: string;
|
|
78
|
+
addressKey: string;
|
|
79
|
+
countryIsoCode: string;
|
|
80
|
+
addressLine: string;
|
|
81
|
+
addressNumber: string;
|
|
82
|
+
department: string;
|
|
83
|
+
cellPhone: string;
|
|
84
|
+
id?: string | undefined;
|
|
85
|
+
}, {
|
|
86
|
+
province: string;
|
|
87
|
+
postalCode: string;
|
|
88
|
+
district: string;
|
|
89
|
+
phone: string;
|
|
90
|
+
latitude: number | null;
|
|
91
|
+
longitude: number | null;
|
|
92
|
+
isDefault: boolean;
|
|
93
|
+
reference: string;
|
|
94
|
+
addressKey: string;
|
|
95
|
+
countryIsoCode: string;
|
|
96
|
+
addressLine: string;
|
|
97
|
+
addressNumber: string;
|
|
98
|
+
department: string;
|
|
99
|
+
cellPhone: string;
|
|
100
|
+
id?: string | number | undefined;
|
|
101
|
+
}>;
|
|
102
|
+
type CustomerAddress = z.infer<typeof CustomerAddressSchema>;
|
|
103
|
+
declare const CustomerAddressesSchema: z.ZodArray<z.ZodObject<{
|
|
104
|
+
addressKey: z.ZodString;
|
|
105
|
+
countryIsoCode: z.ZodString;
|
|
106
|
+
addressLine: z.ZodString;
|
|
107
|
+
addressNumber: z.ZodString;
|
|
108
|
+
department: z.ZodString;
|
|
109
|
+
province: z.ZodString;
|
|
110
|
+
district: z.ZodString;
|
|
111
|
+
phone: z.ZodString;
|
|
112
|
+
cellPhone: z.ZodString;
|
|
113
|
+
postalCode: z.ZodString;
|
|
114
|
+
reference: z.ZodString;
|
|
115
|
+
latitude: z.ZodNullable<z.ZodNumber>;
|
|
116
|
+
longitude: z.ZodNullable<z.ZodNumber>;
|
|
117
|
+
isDefault: z.ZodBoolean;
|
|
118
|
+
} & {
|
|
119
|
+
id: z.ZodOptional<z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, string, string | number>>;
|
|
120
|
+
}, "strip", z.ZodTypeAny, {
|
|
121
|
+
province: string;
|
|
122
|
+
postalCode: string;
|
|
123
|
+
district: string;
|
|
124
|
+
phone: string;
|
|
125
|
+
latitude: number | null;
|
|
126
|
+
longitude: number | null;
|
|
127
|
+
isDefault: boolean;
|
|
128
|
+
reference: string;
|
|
129
|
+
addressKey: string;
|
|
130
|
+
countryIsoCode: string;
|
|
131
|
+
addressLine: string;
|
|
132
|
+
addressNumber: string;
|
|
133
|
+
department: string;
|
|
134
|
+
cellPhone: string;
|
|
135
|
+
id?: string | undefined;
|
|
136
|
+
}, {
|
|
137
|
+
province: string;
|
|
138
|
+
postalCode: string;
|
|
139
|
+
district: string;
|
|
140
|
+
phone: string;
|
|
141
|
+
latitude: number | null;
|
|
142
|
+
longitude: number | null;
|
|
143
|
+
isDefault: boolean;
|
|
144
|
+
reference: string;
|
|
145
|
+
addressKey: string;
|
|
146
|
+
countryIsoCode: string;
|
|
147
|
+
addressLine: string;
|
|
148
|
+
addressNumber: string;
|
|
149
|
+
department: string;
|
|
150
|
+
cellPhone: string;
|
|
151
|
+
id?: string | number | undefined;
|
|
152
|
+
}>, "many">;
|
|
153
|
+
type CustomerAddresses = z.infer<typeof CustomerAddressesSchema>;
|
|
154
|
+
/** Dirección guardada con id (requerido para PUT/DELETE). */
|
|
155
|
+
type CustomerSavedAddress = CustomerAddressUpsertInput & {
|
|
156
|
+
id: string;
|
|
157
|
+
};
|
|
158
|
+
declare function toCustomerSavedAddresses(addresses: CustomerAddresses): CustomerSavedAddress[];
|
|
159
|
+
|
|
160
|
+
export { type CustomerAddress, CustomerAddressSchema, type CustomerAddressUpsertInput, CustomerAddressUpsertInputSchema, type CustomerAddresses, CustomerAddressesSchema, type CustomerSavedAddress, toCustomerSavedAddresses };
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
|
|
3
|
+
// src/models/customer-address.ts
|
|
4
|
+
var CustomerAddressUpsertInputSchema = z.object({
|
|
5
|
+
addressKey: z.string().trim().min(1),
|
|
6
|
+
countryIsoCode: z.string().trim().length(2),
|
|
7
|
+
addressLine: z.string().trim().min(1),
|
|
8
|
+
addressNumber: z.string().trim().min(1),
|
|
9
|
+
department: z.string().trim().min(1),
|
|
10
|
+
province: z.string().trim().min(1),
|
|
11
|
+
district: z.string().trim().min(1),
|
|
12
|
+
phone: z.string().trim(),
|
|
13
|
+
cellPhone: z.string().trim(),
|
|
14
|
+
postalCode: z.string().trim().min(1),
|
|
15
|
+
reference: z.string().trim(),
|
|
16
|
+
latitude: z.number().nullable(),
|
|
17
|
+
longitude: z.number().nullable(),
|
|
18
|
+
isDefault: z.boolean()
|
|
19
|
+
});
|
|
20
|
+
var CustomerAddressSchema = CustomerAddressUpsertInputSchema.extend({
|
|
21
|
+
id: z.union([z.string(), z.number()]).transform(String).optional()
|
|
22
|
+
});
|
|
23
|
+
var CustomerAddressesSchema = z.array(CustomerAddressSchema);
|
|
24
|
+
function toCustomerSavedAddresses(addresses) {
|
|
25
|
+
const saved = [];
|
|
26
|
+
for (const address of addresses) {
|
|
27
|
+
if (!address.id?.trim()) continue;
|
|
28
|
+
const { id, ...rest } = address;
|
|
29
|
+
saved.push({ id: id.trim(), ...rest });
|
|
30
|
+
}
|
|
31
|
+
return saved;
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
export { CustomerAddressSchema, CustomerAddressUpsertInputSchema, CustomerAddressesSchema, toCustomerSavedAddresses };
|
|
35
|
+
//# sourceMappingURL=customer-address.js.map
|
|
36
|
+
//# sourceMappingURL=customer-address.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/models/customer-address.ts"],"names":[],"mappings":";;;AAGO,IAAM,gCAAA,GAAmC,EAAE,MAAA,CAAO;AAAA,EACvD,YAAY,CAAA,CAAE,MAAA,GAAS,IAAA,EAAK,CAAE,IAAI,CAAC,CAAA;AAAA,EACnC,gBAAgB,CAAA,CAAE,MAAA,GAAS,IAAA,EAAK,CAAE,OAAO,CAAC,CAAA;AAAA,EAC1C,aAAa,CAAA,CAAE,MAAA,GAAS,IAAA,EAAK,CAAE,IAAI,CAAC,CAAA;AAAA,EACpC,eAAe,CAAA,CAAE,MAAA,GAAS,IAAA,EAAK,CAAE,IAAI,CAAC,CAAA;AAAA,EACtC,YAAY,CAAA,CAAE,MAAA,GAAS,IAAA,EAAK,CAAE,IAAI,CAAC,CAAA;AAAA,EACnC,UAAU,CAAA,CAAE,MAAA,GAAS,IAAA,EAAK,CAAE,IAAI,CAAC,CAAA;AAAA,EACjC,UAAU,CAAA,CAAE,MAAA,GAAS,IAAA,EAAK,CAAE,IAAI,CAAC,CAAA;AAAA,EACjC,KAAA,EAAO,CAAA,CAAE,MAAA,EAAO,CAAE,IAAA,EAAK;AAAA,EACvB,SAAA,EAAW,CAAA,CAAE,MAAA,EAAO,CAAE,IAAA,EAAK;AAAA,EAC3B,YAAY,CAAA,CAAE,MAAA,GAAS,IAAA,EAAK,CAAE,IAAI,CAAC,CAAA;AAAA,EACnC,SAAA,EAAW,CAAA,CAAE,MAAA,EAAO,CAAE,IAAA,EAAK;AAAA,EAC3B,QAAA,EAAU,CAAA,CAAE,MAAA,EAAO,CAAE,QAAA,EAAS;AAAA,EAC9B,SAAA,EAAW,CAAA,CAAE,MAAA,EAAO,CAAE,QAAA,EAAS;AAAA,EAC/B,SAAA,EAAW,EAAE,OAAA;AACf,CAAC;AAKM,IAAM,qBAAA,GAAwB,iCAAiC,MAAA,CAAO;AAAA,EAC3E,EAAA,EAAI,CAAA,CAAE,KAAA,CAAM,CAAC,EAAE,MAAA,EAAO,EAAG,CAAA,CAAE,MAAA,EAAQ,CAAC,CAAA,CAAE,SAAA,CAAU,MAAM,EAAE,QAAA;AAC1D,CAAC;AAIM,IAAM,uBAAA,GAA0B,CAAA,CAAE,KAAA,CAAM,qBAAqB;AAS7D,SAAS,yBACd,SAAA,EACwB;AACxB,EAAA,MAAM,QAAgC,EAAC;AACvC,EAAA,KAAA,MAAW,WAAW,SAAA,EAAW;AAC/B,IAAA,IAAI,CAAC,OAAA,CAAQ,EAAA,EAAI,IAAA,EAAK,EAAG;AACzB,IAAA,MAAM,EAAE,EAAA,EAAI,GAAG,IAAA,EAAK,GAAI,OAAA;AACxB,IAAA,KAAA,CAAM,IAAA,CAAK,EAAE,EAAA,EAAI,EAAA,CAAG,MAAK,EAAG,GAAG,MAAM,CAAA;AAAA,EACvC;AACA,EAAA,OAAO,KAAA;AACT","file":"customer-address.js","sourcesContent":["import { z } from 'zod'\n\n/** Payload alineado con POST/PUT `/v1/customer/me/addresses` (vía proxy `customer/addresses`). */\nexport const CustomerAddressUpsertInputSchema = z.object({\n addressKey: z.string().trim().min(1),\n countryIsoCode: z.string().trim().length(2),\n addressLine: z.string().trim().min(1),\n addressNumber: z.string().trim().min(1),\n department: z.string().trim().min(1),\n province: z.string().trim().min(1),\n district: z.string().trim().min(1),\n phone: z.string().trim(),\n cellPhone: z.string().trim(),\n postalCode: z.string().trim().min(1),\n reference: z.string().trim(),\n latitude: z.number().nullable(),\n longitude: z.number().nullable(),\n isDefault: z.boolean(),\n})\n\nexport type CustomerAddressUpsertInput = z.infer<typeof CustomerAddressUpsertInputSchema>\n\n/** Dirección en listados / respuestas (id presente cuando el upstream lo expone). */\nexport const CustomerAddressSchema = CustomerAddressUpsertInputSchema.extend({\n id: z.union([z.string(), z.number()]).transform(String).optional(),\n})\n\nexport type CustomerAddress = z.infer<typeof CustomerAddressSchema>\n\nexport const CustomerAddressesSchema = z.array(CustomerAddressSchema)\n\nexport type CustomerAddresses = z.infer<typeof CustomerAddressesSchema>\n\n/** Dirección guardada con id (requerido para PUT/DELETE). */\nexport type CustomerSavedAddress = CustomerAddressUpsertInput & {\n id: string\n}\n\nexport function toCustomerSavedAddresses(\n addresses: CustomerAddresses,\n): CustomerSavedAddress[] {\n const saved: CustomerSavedAddress[] = []\n for (const address of addresses) {\n if (!address.id?.trim()) continue\n const { id, ...rest } = address\n saved.push({ id: id.trim(), ...rest })\n }\n return saved\n}\n"]}
|
|
@@ -0,0 +1,161 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var zod = require('zod');
|
|
4
|
+
|
|
5
|
+
// src/models/customer-order.ts
|
|
6
|
+
var CustomerOrderShippingAddressSchema = zod.z.object({
|
|
7
|
+
name: zod.z.string().nullable().optional(),
|
|
8
|
+
company: zod.z.string().nullable().optional(),
|
|
9
|
+
address1: zod.z.string(),
|
|
10
|
+
address2: zod.z.string().nullable().optional(),
|
|
11
|
+
city: zod.z.string().nullable().optional(),
|
|
12
|
+
countryCode: zod.z.string().min(2).max(2),
|
|
13
|
+
province: zod.z.string().nullable().optional(),
|
|
14
|
+
postalCode: zod.z.string().nullable().optional(),
|
|
15
|
+
district: zod.z.string().nullable().optional(),
|
|
16
|
+
phone: zod.z.string().nullable().optional(),
|
|
17
|
+
latitude: zod.z.number().nullable().optional(),
|
|
18
|
+
longitude: zod.z.number().nullable().optional(),
|
|
19
|
+
metadata: zod.z.record(zod.z.unknown()).nullable().optional()
|
|
20
|
+
}).passthrough();
|
|
21
|
+
var CustomerOrderLineItemSchema = zod.z.object({
|
|
22
|
+
id: zod.z.string(),
|
|
23
|
+
orderId: zod.z.coerce.string(),
|
|
24
|
+
productId: zod.z.coerce.string().nullable(),
|
|
25
|
+
variantId: zod.z.coerce.string().nullable(),
|
|
26
|
+
title: zod.z.string(),
|
|
27
|
+
subtitle: zod.z.string().nullable().optional(),
|
|
28
|
+
thumbnail: zod.z.string().nullable().optional(),
|
|
29
|
+
variantTitle: zod.z.string().nullable().optional(),
|
|
30
|
+
productHandle: zod.z.string().nullable().optional(),
|
|
31
|
+
quantity: zod.z.number(),
|
|
32
|
+
unitPrice: zod.z.number(),
|
|
33
|
+
total: zod.z.number(),
|
|
34
|
+
status: zod.z.string()
|
|
35
|
+
});
|
|
36
|
+
var CustomerOrderListItemSchema = zod.z.object({
|
|
37
|
+
orderId: zod.z.coerce.string(),
|
|
38
|
+
orderNumber: zod.z.string(),
|
|
39
|
+
orderGroup: zod.z.string(),
|
|
40
|
+
orderIds: zod.z.array(zod.z.coerce.string()),
|
|
41
|
+
status: zod.z.string(),
|
|
42
|
+
total: zod.z.number(),
|
|
43
|
+
totalPaid: zod.z.number(),
|
|
44
|
+
currencyCode: zod.z.string(),
|
|
45
|
+
orderDate: zod.z.string(),
|
|
46
|
+
createdOn: zod.z.string(),
|
|
47
|
+
updatedOn: zod.z.string().nullable().optional(),
|
|
48
|
+
paymentAt: zod.z.string().nullable().optional(),
|
|
49
|
+
shippingAddress: CustomerOrderShippingAddressSchema.nullable().optional(),
|
|
50
|
+
shippingAddressSummary: zod.z.string().nullable().optional(),
|
|
51
|
+
items: zod.z.array(CustomerOrderLineItemSchema)
|
|
52
|
+
});
|
|
53
|
+
var CustomerOrderListSchema = zod.z.array(CustomerOrderListItemSchema);
|
|
54
|
+
var CustomerOrderPaymentSchema = zod.z.object({
|
|
55
|
+
id: zod.z.string(),
|
|
56
|
+
paymentMethod: zod.z.string(),
|
|
57
|
+
paymentCode: zod.z.string(),
|
|
58
|
+
amount: zod.z.number(),
|
|
59
|
+
paymentStatus: zod.z.string(),
|
|
60
|
+
receiptUrl: zod.z.string().nullable().optional(),
|
|
61
|
+
createdOn: zod.z.string()
|
|
62
|
+
});
|
|
63
|
+
var CustomerOrderStatusTimelineSchema = zod.z.object({
|
|
64
|
+
key: zod.z.string(),
|
|
65
|
+
label: zod.z.string(),
|
|
66
|
+
occurredAt: zod.z.string(),
|
|
67
|
+
description: zod.z.string().nullable().optional(),
|
|
68
|
+
status: zod.z.string(),
|
|
69
|
+
source: zod.z.string()
|
|
70
|
+
});
|
|
71
|
+
var CustomerOrderDetailSchema = zod.z.object({
|
|
72
|
+
id: zod.z.coerce.string(),
|
|
73
|
+
orderNumber: zod.z.string(),
|
|
74
|
+
orderGroup: zod.z.string(),
|
|
75
|
+
status: zod.z.string(),
|
|
76
|
+
total: zod.z.number(),
|
|
77
|
+
totalPaid: zod.z.number(),
|
|
78
|
+
currencyCode: zod.z.string(),
|
|
79
|
+
orderDate: zod.z.string(),
|
|
80
|
+
createdOn: zod.z.string(),
|
|
81
|
+
updatedOn: zod.z.string().nullable().optional(),
|
|
82
|
+
paymentAt: zod.z.string().nullable().optional(),
|
|
83
|
+
subTotal: zod.z.number(),
|
|
84
|
+
discount: zod.z.number(),
|
|
85
|
+
shipping: zod.z.number(),
|
|
86
|
+
tax: zod.z.number(),
|
|
87
|
+
email: zod.z.string(),
|
|
88
|
+
phone: zod.z.string(),
|
|
89
|
+
firstName: zod.z.string(),
|
|
90
|
+
lastName: zod.z.string(),
|
|
91
|
+
shippingAddress: CustomerOrderShippingAddressSchema.nullable().optional(),
|
|
92
|
+
shippingAddressSummary: zod.z.string().nullable().optional(),
|
|
93
|
+
billingAddress: CustomerOrderShippingAddressSchema.nullable().optional(),
|
|
94
|
+
items: zod.z.array(CustomerOrderLineItemSchema),
|
|
95
|
+
payments: zod.z.array(CustomerOrderPaymentSchema),
|
|
96
|
+
statusTimeline: zod.z.array(CustomerOrderStatusTimelineSchema)
|
|
97
|
+
});
|
|
98
|
+
var ORDER_STATUS_LABELS = {
|
|
99
|
+
New: "Pedido realizado",
|
|
100
|
+
Confirmed: "Confirmado",
|
|
101
|
+
Processing: "En preparaci\xF3n",
|
|
102
|
+
InTransit: "En camino",
|
|
103
|
+
Delivered: "Entregado",
|
|
104
|
+
Cancelled: "Cancelado",
|
|
105
|
+
Canceled: "Cancelado",
|
|
106
|
+
Refunded: "Reembolsado",
|
|
107
|
+
Pending: "Pendiente",
|
|
108
|
+
PendingToConfirm: "Pendiente de confirmaci\xF3n",
|
|
109
|
+
Paid: "Pagado",
|
|
110
|
+
Captured: "Pago confirmado"
|
|
111
|
+
};
|
|
112
|
+
function formatCustomerOrderStatus(status) {
|
|
113
|
+
const trimmed = status.trim();
|
|
114
|
+
if (!trimmed) return "Desconocido";
|
|
115
|
+
return ORDER_STATUS_LABELS[trimmed] ?? trimmed.replace(/([A-Z])/g, " $1").trim();
|
|
116
|
+
}
|
|
117
|
+
function customerOrderStatusTone(status) {
|
|
118
|
+
const s = status.toLowerCase();
|
|
119
|
+
if (s.includes("cancel") || s.includes("refund")) return "danger";
|
|
120
|
+
if (s.includes("deliver")) return "success";
|
|
121
|
+
if (s.includes("transit") || s.includes("ship")) return "info";
|
|
122
|
+
if (s.includes("confirm") || s.includes("paid") || s.includes("capture"))
|
|
123
|
+
return "success";
|
|
124
|
+
if (s.includes("pending") || s.includes("new") || s.includes("process"))
|
|
125
|
+
return "warning";
|
|
126
|
+
return "default";
|
|
127
|
+
}
|
|
128
|
+
function formatOrderDate(iso, locale = "es-PE") {
|
|
129
|
+
const d = new Date(iso);
|
|
130
|
+
if (Number.isNaN(d.getTime())) return iso;
|
|
131
|
+
return new Intl.DateTimeFormat(locale, {
|
|
132
|
+
day: "numeric",
|
|
133
|
+
month: "long",
|
|
134
|
+
year: "numeric"
|
|
135
|
+
}).format(d);
|
|
136
|
+
}
|
|
137
|
+
function formatOrderDateTime(iso, locale = "es-PE") {
|
|
138
|
+
const d = new Date(iso);
|
|
139
|
+
if (Number.isNaN(d.getTime())) return iso;
|
|
140
|
+
return new Intl.DateTimeFormat(locale, {
|
|
141
|
+
day: "numeric",
|
|
142
|
+
month: "short",
|
|
143
|
+
year: "numeric",
|
|
144
|
+
hour: "2-digit",
|
|
145
|
+
minute: "2-digit"
|
|
146
|
+
}).format(d);
|
|
147
|
+
}
|
|
148
|
+
|
|
149
|
+
exports.CustomerOrderDetailSchema = CustomerOrderDetailSchema;
|
|
150
|
+
exports.CustomerOrderLineItemSchema = CustomerOrderLineItemSchema;
|
|
151
|
+
exports.CustomerOrderListItemSchema = CustomerOrderListItemSchema;
|
|
152
|
+
exports.CustomerOrderListSchema = CustomerOrderListSchema;
|
|
153
|
+
exports.CustomerOrderPaymentSchema = CustomerOrderPaymentSchema;
|
|
154
|
+
exports.CustomerOrderShippingAddressSchema = CustomerOrderShippingAddressSchema;
|
|
155
|
+
exports.CustomerOrderStatusTimelineSchema = CustomerOrderStatusTimelineSchema;
|
|
156
|
+
exports.customerOrderStatusTone = customerOrderStatusTone;
|
|
157
|
+
exports.formatCustomerOrderStatus = formatCustomerOrderStatus;
|
|
158
|
+
exports.formatOrderDate = formatOrderDate;
|
|
159
|
+
exports.formatOrderDateTime = formatOrderDateTime;
|
|
160
|
+
//# sourceMappingURL=customer-order.cjs.map
|
|
161
|
+
//# sourceMappingURL=customer-order.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/models/customer-order.ts"],"names":["z"],"mappings":"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","file":"customer-order.cjs","sourcesContent":["import { z } from 'zod'\n\nexport const CustomerOrderShippingAddressSchema = z\n .object({\n name: z.string().nullable().optional(),\n company: z.string().nullable().optional(),\n address1: z.string(),\n address2: z.string().nullable().optional(),\n city: z.string().nullable().optional(),\n countryCode: z.string().min(2).max(2),\n province: z.string().nullable().optional(),\n postalCode: z.string().nullable().optional(),\n district: z.string().nullable().optional(),\n phone: z.string().nullable().optional(),\n latitude: z.number().nullable().optional(),\n longitude: z.number().nullable().optional(),\n metadata: z.record(z.unknown()).nullable().optional(),\n })\n .passthrough()\n\nexport type CustomerOrderShippingAddress = z.infer<\n typeof CustomerOrderShippingAddressSchema\n>\n\nexport const CustomerOrderLineItemSchema = z.object({\n id: z.string(),\n orderId: z.coerce.string(),\n productId: z.coerce.string().nullable(),\n variantId: z.coerce.string().nullable(),\n title: z.string(),\n subtitle: z.string().nullable().optional(),\n thumbnail: z.string().nullable().optional(),\n variantTitle: z.string().nullable().optional(),\n productHandle: z.string().nullable().optional(),\n quantity: z.number(),\n unitPrice: z.number(),\n total: z.number(),\n status: z.string(),\n})\n\nexport type CustomerOrderLineItem = z.infer<typeof CustomerOrderLineItemSchema>\n\n/** GET /v1/customer/orders (listado agrupado vía proxy `customer/orders`). */\nexport const CustomerOrderListItemSchema = z.object({\n orderId: z.coerce.string(),\n orderNumber: z.string(),\n orderGroup: z.string(),\n orderIds: z.array(z.coerce.string()),\n status: z.string(),\n total: z.number(),\n totalPaid: z.number(),\n currencyCode: z.string(),\n orderDate: z.string(),\n createdOn: z.string(),\n updatedOn: z.string().nullable().optional(),\n paymentAt: z.string().nullable().optional(),\n shippingAddress: CustomerOrderShippingAddressSchema.nullable().optional(),\n shippingAddressSummary: z.string().nullable().optional(),\n items: z.array(CustomerOrderLineItemSchema),\n})\n\nexport type CustomerOrderListItem = z.infer<typeof CustomerOrderListItemSchema>\n/** @deprecated Alias del tipo canónico. */\nexport type CustomerOrderListItemDto = CustomerOrderListItem\n\nexport const CustomerOrderListSchema = z.array(CustomerOrderListItemSchema)\n\nexport type CustomerOrderList = z.infer<typeof CustomerOrderListSchema>\n\nexport const CustomerOrderPaymentSchema = z.object({\n id: z.string(),\n paymentMethod: z.string(),\n paymentCode: z.string(),\n amount: z.number(),\n paymentStatus: z.string(),\n receiptUrl: z.string().nullable().optional(),\n createdOn: z.string(),\n})\n\nexport type CustomerOrderPayment = z.infer<typeof CustomerOrderPaymentSchema>\n\nexport const CustomerOrderStatusTimelineSchema = z.object({\n key: z.string(),\n label: z.string(),\n occurredAt: z.string(),\n description: z.string().nullable().optional(),\n status: z.string(),\n source: z.string(),\n})\n\nexport type CustomerOrderStatusTimelineEntry = z.infer<\n typeof CustomerOrderStatusTimelineSchema\n>\n\n/** GET /v1/customer/orders/{orderId} (detalle vía proxy). */\nexport const CustomerOrderDetailSchema = z.object({\n id: z.coerce.string(),\n orderNumber: z.string(),\n orderGroup: z.string(),\n status: z.string(),\n total: z.number(),\n totalPaid: z.number(),\n currencyCode: z.string(),\n orderDate: z.string(),\n createdOn: z.string(),\n updatedOn: z.string().nullable().optional(),\n paymentAt: z.string().nullable().optional(),\n subTotal: z.number(),\n discount: z.number(),\n shipping: z.number(),\n tax: z.number(),\n email: z.string(),\n phone: z.string(),\n firstName: z.string(),\n lastName: z.string(),\n shippingAddress: CustomerOrderShippingAddressSchema.nullable().optional(),\n shippingAddressSummary: z.string().nullable().optional(),\n billingAddress: CustomerOrderShippingAddressSchema.nullable().optional(),\n items: z.array(CustomerOrderLineItemSchema),\n payments: z.array(CustomerOrderPaymentSchema),\n statusTimeline: z.array(CustomerOrderStatusTimelineSchema),\n})\n\nexport type CustomerOrderDetail = z.infer<typeof CustomerOrderDetailSchema>\n/** @deprecated Alias del tipo canónico. */\nexport type CustomerOrderDetailDto = CustomerOrderDetail\n\n/** Etiquetas en español para estados de pedido (upstream suele enviar PascalCase). */\nconst ORDER_STATUS_LABELS: Record<string, string> = {\n New: 'Pedido realizado',\n Confirmed: 'Confirmado',\n Processing: 'En preparación',\n InTransit: 'En camino',\n Delivered: 'Entregado',\n Cancelled: 'Cancelado',\n Canceled: 'Cancelado',\n Refunded: 'Reembolsado',\n Pending: 'Pendiente',\n PendingToConfirm: 'Pendiente de confirmación',\n Paid: 'Pagado',\n Captured: 'Pago confirmado',\n}\n\nexport function formatCustomerOrderStatus(status: string): string {\n const trimmed = status.trim()\n if (!trimmed) return 'Desconocido'\n return (\n ORDER_STATUS_LABELS[trimmed] ??\n trimmed.replace(/([A-Z])/g, ' $1').trim()\n )\n}\n\nexport function customerOrderStatusTone(\n status: string,\n): 'default' | 'success' | 'warning' | 'danger' | 'info' {\n const s = status.toLowerCase()\n if (s.includes('cancel') || s.includes('refund')) return 'danger'\n if (s.includes('deliver')) return 'success'\n if (s.includes('transit') || s.includes('ship')) return 'info'\n if (s.includes('confirm') || s.includes('paid') || s.includes('capture'))\n return 'success'\n if (s.includes('pending') || s.includes('new') || s.includes('process'))\n return 'warning'\n return 'default'\n}\n\nexport function formatOrderDate(iso: string, locale = 'es-PE'): string {\n const d = new Date(iso)\n if (Number.isNaN(d.getTime())) return iso\n return new Intl.DateTimeFormat(locale, {\n day: 'numeric',\n month: 'long',\n year: 'numeric',\n }).format(d)\n}\n\nexport function formatOrderDateTime(iso: string, locale = 'es-PE'): string {\n const d = new Date(iso)\n if (Number.isNaN(d.getTime())) return iso\n return new Intl.DateTimeFormat(locale, {\n day: 'numeric',\n month: 'short',\n year: 'numeric',\n hour: '2-digit',\n minute: '2-digit',\n }).format(d)\n}\n"]}
|