@cosmneo/onion-lasagna 0.1.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/dist/backend/core/global.cjs +283 -0
- package/dist/backend/core/global.cjs.map +1 -0
- package/dist/backend/core/global.d.cts +294 -0
- package/dist/backend/core/global.d.ts +294 -0
- package/dist/backend/core/global.js +39 -0
- package/dist/backend/core/global.js.map +1 -0
- package/dist/backend/core/onion-layers.cjs +2302 -0
- package/dist/backend/core/onion-layers.cjs.map +1 -0
- package/dist/backend/core/onion-layers.d.cts +1675 -0
- package/dist/backend/core/onion-layers.d.ts +1675 -0
- package/dist/backend/core/onion-layers.js +1158 -0
- package/dist/backend/core/onion-layers.js.map +1 -0
- package/dist/backend/core/presentation.cjs +573 -0
- package/dist/backend/core/presentation.cjs.map +1 -0
- package/dist/backend/core/presentation.d.cts +5 -0
- package/dist/backend/core/presentation.d.ts +5 -0
- package/dist/backend/core/presentation.js +28 -0
- package/dist/backend/core/presentation.js.map +1 -0
- package/dist/backend/core/validators/arktype.cjs +947 -0
- package/dist/backend/core/validators/arktype.cjs.map +1 -0
- package/dist/backend/core/validators/arktype.d.cts +188 -0
- package/dist/backend/core/validators/arktype.d.ts +188 -0
- package/dist/backend/core/validators/arktype.js +287 -0
- package/dist/backend/core/validators/arktype.js.map +1 -0
- package/dist/backend/core/validators/typebox.cjs +939 -0
- package/dist/backend/core/validators/typebox.cjs.map +1 -0
- package/dist/backend/core/validators/typebox.d.cts +189 -0
- package/dist/backend/core/validators/typebox.d.ts +189 -0
- package/dist/backend/core/validators/typebox.js +281 -0
- package/dist/backend/core/validators/typebox.js.map +1 -0
- package/dist/backend/core/validators/valibot.cjs +942 -0
- package/dist/backend/core/validators/valibot.cjs.map +1 -0
- package/dist/backend/core/validators/valibot.d.cts +160 -0
- package/dist/backend/core/validators/valibot.d.ts +160 -0
- package/dist/backend/core/validators/valibot.js +294 -0
- package/dist/backend/core/validators/valibot.js.map +1 -0
- package/dist/backend/core/validators/zod.cjs +934 -0
- package/dist/backend/core/validators/zod.cjs.map +1 -0
- package/dist/backend/core/validators/zod.d.cts +188 -0
- package/dist/backend/core/validators/zod.d.ts +188 -0
- package/dist/backend/core/validators/zod.js +278 -0
- package/dist/backend/core/validators/zod.js.map +1 -0
- package/dist/backend/frameworks/elysia.cjs +715 -0
- package/dist/backend/frameworks/elysia.cjs.map +1 -0
- package/dist/backend/frameworks/elysia.d.cts +208 -0
- package/dist/backend/frameworks/elysia.d.ts +208 -0
- package/dist/backend/frameworks/elysia.js +251 -0
- package/dist/backend/frameworks/elysia.js.map +1 -0
- package/dist/backend/frameworks/fastify.cjs +677 -0
- package/dist/backend/frameworks/fastify.cjs.map +1 -0
- package/dist/backend/frameworks/fastify.d.cts +201 -0
- package/dist/backend/frameworks/fastify.d.ts +201 -0
- package/dist/backend/frameworks/fastify.js +213 -0
- package/dist/backend/frameworks/fastify.js.map +1 -0
- package/dist/backend/frameworks/hono.cjs +715 -0
- package/dist/backend/frameworks/hono.cjs.map +1 -0
- package/dist/backend/frameworks/hono.d.cts +163 -0
- package/dist/backend/frameworks/hono.d.ts +163 -0
- package/dist/backend/frameworks/hono.js +249 -0
- package/dist/backend/frameworks/hono.js.map +1 -0
- package/dist/backend/frameworks/nestjs.cjs +260 -0
- package/dist/backend/frameworks/nestjs.cjs.map +1 -0
- package/dist/backend/frameworks/nestjs.d.cts +168 -0
- package/dist/backend/frameworks/nestjs.d.ts +168 -0
- package/dist/backend/frameworks/nestjs.js +193 -0
- package/dist/backend/frameworks/nestjs.js.map +1 -0
- package/dist/base-dto.class-D7W9iqoU.d.cts +146 -0
- package/dist/base-dto.class-D7W9iqoU.d.ts +146 -0
- package/dist/base-uuid-v7.vo-BPGEIWLM.d.ts +799 -0
- package/dist/base-uuid-v7.vo-BjqKX44G.d.cts +799 -0
- package/dist/chunk-74IKUOSE.js +116 -0
- package/dist/chunk-74IKUOSE.js.map +1 -0
- package/dist/chunk-BKZOLGQW.js +29 -0
- package/dist/chunk-BKZOLGQW.js.map +1 -0
- package/dist/chunk-CGZBV6BD.js +54 -0
- package/dist/chunk-CGZBV6BD.js.map +1 -0
- package/dist/chunk-DDAHJZVK.js +258 -0
- package/dist/chunk-DDAHJZVK.js.map +1 -0
- package/dist/chunk-MQD5GXMT.js +171 -0
- package/dist/chunk-MQD5GXMT.js.map +1 -0
- package/dist/chunk-OKFXZHBC.js +43 -0
- package/dist/chunk-OKFXZHBC.js.map +1 -0
- package/dist/chunk-RLLWYFPI.js +168 -0
- package/dist/chunk-RLLWYFPI.js.map +1 -0
- package/dist/chunk-VCHFXT5W.js +425 -0
- package/dist/chunk-VCHFXT5W.js.map +1 -0
- package/dist/chunk-ZWLYNGO3.js +40 -0
- package/dist/chunk-ZWLYNGO3.js.map +1 -0
- package/dist/http-response-BAhi8lF4.d.cts +124 -0
- package/dist/http-response-BAhi8lF4.d.ts +124 -0
- package/dist/index-DingXh7B.d.cts +1187 -0
- package/dist/index-tOH7XBa3.d.ts +1187 -0
- package/dist/routing.type-DB4pt-d9.d.ts +184 -0
- package/dist/routing.type-DF2BIL7x.d.cts +184 -0
- package/dist/validation-error.type-kD4_qNZ9.d.cts +199 -0
- package/dist/validation-error.type-kD4_qNZ9.d.ts +199 -0
- package/package.json +191 -0
|
@@ -0,0 +1,278 @@
|
|
|
1
|
+
import {
|
|
2
|
+
BaseAuditByVo,
|
|
3
|
+
BaseAuditInfoVo,
|
|
4
|
+
BaseAuditOnVo,
|
|
5
|
+
BaseEmailVo,
|
|
6
|
+
BaseLongTextVo,
|
|
7
|
+
BaseMediumTextVo,
|
|
8
|
+
BasePaginationVo,
|
|
9
|
+
BaseShortTextVo,
|
|
10
|
+
BaseUuidV4Vo,
|
|
11
|
+
BaseUuidV7Vo,
|
|
12
|
+
SKIP_VALUE_OBJECT_VALIDATION
|
|
13
|
+
} from "../../../chunk-VCHFXT5W.js";
|
|
14
|
+
import {
|
|
15
|
+
BaseDto
|
|
16
|
+
} from "../../../chunk-BKZOLGQW.js";
|
|
17
|
+
import "../../../chunk-ZWLYNGO3.js";
|
|
18
|
+
import {
|
|
19
|
+
ObjectValidationError
|
|
20
|
+
} from "../../../chunk-MQD5GXMT.js";
|
|
21
|
+
import "../../../chunk-CGZBV6BD.js";
|
|
22
|
+
|
|
23
|
+
// src/backend/core/validators/zod/object-validator.zod.ts
|
|
24
|
+
var formatPath = (path) => {
|
|
25
|
+
if (!path.length) return "root";
|
|
26
|
+
return path.map((segment, index) => {
|
|
27
|
+
if (typeof segment === "number") return `[${segment}]`;
|
|
28
|
+
if (typeof segment === "symbol") return segment.description ?? String(segment);
|
|
29
|
+
return index === 0 ? segment : `.${segment}`;
|
|
30
|
+
}).join("");
|
|
31
|
+
};
|
|
32
|
+
var toValidationErrors = (issues) => issues.map((issue) => ({
|
|
33
|
+
field: formatPath(issue?.path ?? []),
|
|
34
|
+
message: issue?.message ?? "Validation failed"
|
|
35
|
+
}));
|
|
36
|
+
var ZodObjectValidator = class {
|
|
37
|
+
validateObject(schema11, value) {
|
|
38
|
+
const result = schema11.safeParse(value);
|
|
39
|
+
if (result.success) {
|
|
40
|
+
return result.data;
|
|
41
|
+
}
|
|
42
|
+
throw new ObjectValidationError({
|
|
43
|
+
message: "Object validation failed",
|
|
44
|
+
cause: result.error,
|
|
45
|
+
validationErrors: toValidationErrors(result.error.issues)
|
|
46
|
+
});
|
|
47
|
+
}
|
|
48
|
+
withSchema(schema11) {
|
|
49
|
+
return {
|
|
50
|
+
validate: (value) => this.validateObject(schema11, value)
|
|
51
|
+
};
|
|
52
|
+
}
|
|
53
|
+
};
|
|
54
|
+
|
|
55
|
+
// src/backend/core/validators/zod/bootstrap.ts
|
|
56
|
+
var zodObjectValidator = new ZodObjectValidator();
|
|
57
|
+
var createZodValidator = (schema11) => zodObjectValidator.withSchema(schema11);
|
|
58
|
+
|
|
59
|
+
// src/backend/core/validators/zod/wrappers/dto.ts
|
|
60
|
+
var Dto = class extends BaseDto {
|
|
61
|
+
constructor(schema11, value) {
|
|
62
|
+
super(value, createZodValidator(schema11));
|
|
63
|
+
}
|
|
64
|
+
};
|
|
65
|
+
|
|
66
|
+
// src/backend/core/validators/zod/wrappers/value-objects/audit-by.vo.ts
|
|
67
|
+
import { z as z2 } from "zod";
|
|
68
|
+
|
|
69
|
+
// src/backend/core/validators/zod/wrappers/value-objects/uuid-v4.vo.ts
|
|
70
|
+
import { z } from "zod";
|
|
71
|
+
var schema = z.uuidv4();
|
|
72
|
+
var UuidV4Vo = class _UuidV4Vo extends BaseUuidV4Vo {
|
|
73
|
+
constructor(value) {
|
|
74
|
+
super(value, createZodValidator(schema));
|
|
75
|
+
}
|
|
76
|
+
static create(value) {
|
|
77
|
+
return new _UuidV4Vo(value);
|
|
78
|
+
}
|
|
79
|
+
};
|
|
80
|
+
|
|
81
|
+
// src/backend/core/validators/zod/wrappers/value-objects/audit-by.vo.ts
|
|
82
|
+
var schema2 = z2.object({
|
|
83
|
+
createdBy: z2.uuidv4().optional(),
|
|
84
|
+
updatedBy: z2.uuidv4().optional()
|
|
85
|
+
});
|
|
86
|
+
var AuditByVo = class _AuditByVo extends BaseAuditByVo {
|
|
87
|
+
constructor(value) {
|
|
88
|
+
super(value, SKIP_VALUE_OBJECT_VALIDATION);
|
|
89
|
+
}
|
|
90
|
+
static create({ createdBy, updatedBy }) {
|
|
91
|
+
const validated = createZodValidator(schema2).validate({
|
|
92
|
+
createdBy,
|
|
93
|
+
updatedBy
|
|
94
|
+
});
|
|
95
|
+
return new _AuditByVo({
|
|
96
|
+
createdBy: validated.createdBy ? UuidV4Vo.create(validated.createdBy) : void 0,
|
|
97
|
+
updatedBy: validated.updatedBy ? UuidV4Vo.create(validated.updatedBy) : void 0
|
|
98
|
+
});
|
|
99
|
+
}
|
|
100
|
+
update(updatedBy) {
|
|
101
|
+
return new _AuditByVo({ createdBy: this.createdBy, updatedBy });
|
|
102
|
+
}
|
|
103
|
+
};
|
|
104
|
+
|
|
105
|
+
// src/backend/core/validators/zod/wrappers/value-objects/audit-info.vo.ts
|
|
106
|
+
import { z as z4 } from "zod";
|
|
107
|
+
|
|
108
|
+
// src/backend/core/validators/zod/wrappers/value-objects/audit-on.vo.ts
|
|
109
|
+
import { z as z3 } from "zod";
|
|
110
|
+
var schema3 = z3.object({
|
|
111
|
+
createdAt: z3.date().optional(),
|
|
112
|
+
updatedAt: z3.date().optional()
|
|
113
|
+
});
|
|
114
|
+
var AuditOnVo = class _AuditOnVo extends BaseAuditOnVo {
|
|
115
|
+
constructor(value) {
|
|
116
|
+
super(value, SKIP_VALUE_OBJECT_VALIDATION);
|
|
117
|
+
}
|
|
118
|
+
static create({ createdAt, updatedAt }) {
|
|
119
|
+
const validated = createZodValidator(schema3).validate({
|
|
120
|
+
createdAt,
|
|
121
|
+
updatedAt
|
|
122
|
+
});
|
|
123
|
+
const finalCreatedAt = validated.createdAt ?? /* @__PURE__ */ new Date();
|
|
124
|
+
const finalUpdatedAt = validated.updatedAt ?? finalCreatedAt;
|
|
125
|
+
return new _AuditOnVo({
|
|
126
|
+
createdAt: new Date(finalCreatedAt),
|
|
127
|
+
updatedAt: new Date(finalUpdatedAt)
|
|
128
|
+
});
|
|
129
|
+
}
|
|
130
|
+
update() {
|
|
131
|
+
return new _AuditOnVo({ createdAt: this.createdAt, updatedAt: /* @__PURE__ */ new Date() });
|
|
132
|
+
}
|
|
133
|
+
};
|
|
134
|
+
|
|
135
|
+
// src/backend/core/validators/zod/wrappers/value-objects/audit-info.vo.ts
|
|
136
|
+
var schema4 = z4.object({
|
|
137
|
+
createdBy: z4.uuidv4().optional(),
|
|
138
|
+
createdAt: z4.date().optional(),
|
|
139
|
+
updatedBy: z4.uuidv4().optional(),
|
|
140
|
+
updatedAt: z4.date().optional()
|
|
141
|
+
});
|
|
142
|
+
var AuditInfoVo = class _AuditInfoVo extends BaseAuditInfoVo {
|
|
143
|
+
constructor(value) {
|
|
144
|
+
super(value, SKIP_VALUE_OBJECT_VALIDATION);
|
|
145
|
+
}
|
|
146
|
+
static create({
|
|
147
|
+
createdBy,
|
|
148
|
+
createdAt,
|
|
149
|
+
updatedBy,
|
|
150
|
+
updatedAt
|
|
151
|
+
}) {
|
|
152
|
+
const validated = createZodValidator(schema4).validate({
|
|
153
|
+
createdBy,
|
|
154
|
+
createdAt,
|
|
155
|
+
updatedBy,
|
|
156
|
+
updatedAt
|
|
157
|
+
});
|
|
158
|
+
const by = AuditByVo.create({
|
|
159
|
+
createdBy: validated.createdBy,
|
|
160
|
+
updatedBy: validated.updatedBy
|
|
161
|
+
});
|
|
162
|
+
const on = AuditOnVo.create({
|
|
163
|
+
createdAt: validated.createdAt,
|
|
164
|
+
updatedAt: validated.updatedAt
|
|
165
|
+
});
|
|
166
|
+
return new _AuditInfoVo({ by, on });
|
|
167
|
+
}
|
|
168
|
+
static createNew(createdBy) {
|
|
169
|
+
const by = AuditByVo.create({ createdBy });
|
|
170
|
+
const on = AuditOnVo.create({});
|
|
171
|
+
return new _AuditInfoVo({ by, on });
|
|
172
|
+
}
|
|
173
|
+
update(updatedBy) {
|
|
174
|
+
const by = this.value.by.update(updatedBy);
|
|
175
|
+
const on = this.value.on.update();
|
|
176
|
+
return new _AuditInfoVo({ by, on });
|
|
177
|
+
}
|
|
178
|
+
};
|
|
179
|
+
|
|
180
|
+
// src/backend/core/validators/zod/wrappers/value-objects/email.vo.ts
|
|
181
|
+
import { z as z5 } from "zod";
|
|
182
|
+
var schema5 = z5.string().email();
|
|
183
|
+
var EmailVo = class _EmailVo extends BaseEmailVo {
|
|
184
|
+
constructor(value) {
|
|
185
|
+
super(value, createZodValidator(schema5));
|
|
186
|
+
}
|
|
187
|
+
static create(value) {
|
|
188
|
+
return new _EmailVo(value);
|
|
189
|
+
}
|
|
190
|
+
};
|
|
191
|
+
|
|
192
|
+
// src/backend/core/validators/zod/wrappers/value-objects/long-text.vo.ts
|
|
193
|
+
import { z as z6 } from "zod";
|
|
194
|
+
var schema6 = (maxLength) => z6.string().min(1).max(maxLength);
|
|
195
|
+
var LongTextVo = class _LongTextVo extends BaseLongTextVo {
|
|
196
|
+
constructor(value, maxLength = 2e3) {
|
|
197
|
+
super(value, createZodValidator(schema6(maxLength)));
|
|
198
|
+
}
|
|
199
|
+
static create(value, maxLength = 2e3) {
|
|
200
|
+
return new _LongTextVo(value, maxLength);
|
|
201
|
+
}
|
|
202
|
+
};
|
|
203
|
+
|
|
204
|
+
// src/backend/core/validators/zod/wrappers/value-objects/medium-text.vo.ts
|
|
205
|
+
import { z as z7 } from "zod";
|
|
206
|
+
var schema7 = (maxLength) => z7.string().min(1).max(maxLength);
|
|
207
|
+
var MediumTextVo = class _MediumTextVo extends BaseMediumTextVo {
|
|
208
|
+
constructor(value, maxLength = 500) {
|
|
209
|
+
super(value, createZodValidator(schema7(maxLength)));
|
|
210
|
+
}
|
|
211
|
+
static create(value, maxLength = 500) {
|
|
212
|
+
return new _MediumTextVo(value, maxLength);
|
|
213
|
+
}
|
|
214
|
+
};
|
|
215
|
+
|
|
216
|
+
// src/backend/core/validators/zod/wrappers/value-objects/pagination.vo.ts
|
|
217
|
+
import { z as z8 } from "zod";
|
|
218
|
+
var schema8 = (maxPageSize) => z8.object({
|
|
219
|
+
page: z8.coerce.number().int().min(1),
|
|
220
|
+
pageSize: z8.coerce.number().int().min(1).max(maxPageSize)
|
|
221
|
+
});
|
|
222
|
+
var PaginationVo = class _PaginationVo extends BasePaginationVo {
|
|
223
|
+
constructor(value) {
|
|
224
|
+
super(value, SKIP_VALUE_OBJECT_VALIDATION);
|
|
225
|
+
}
|
|
226
|
+
static create({
|
|
227
|
+
page,
|
|
228
|
+
pageSize,
|
|
229
|
+
maxPageSize = 100
|
|
230
|
+
}) {
|
|
231
|
+
const validated = createZodValidator(schema8(maxPageSize)).validate({
|
|
232
|
+
page,
|
|
233
|
+
pageSize
|
|
234
|
+
});
|
|
235
|
+
return new _PaginationVo(validated);
|
|
236
|
+
}
|
|
237
|
+
};
|
|
238
|
+
|
|
239
|
+
// src/backend/core/validators/zod/wrappers/value-objects/short-text.vo.ts
|
|
240
|
+
import { z as z9 } from "zod";
|
|
241
|
+
var schema9 = (maxLength) => z9.string().min(1).max(maxLength);
|
|
242
|
+
var ShortTextVo = class _ShortTextVo extends BaseShortTextVo {
|
|
243
|
+
constructor(value, maxLength = 100) {
|
|
244
|
+
super(value, createZodValidator(schema9(maxLength)));
|
|
245
|
+
}
|
|
246
|
+
static create(value, maxLength = 100) {
|
|
247
|
+
return new _ShortTextVo(value, maxLength);
|
|
248
|
+
}
|
|
249
|
+
};
|
|
250
|
+
|
|
251
|
+
// src/backend/core/validators/zod/wrappers/value-objects/uuid-v7.vo.ts
|
|
252
|
+
import { z as z10 } from "zod";
|
|
253
|
+
var schema10 = z10.uuidv7();
|
|
254
|
+
var UuidV7Vo = class _UuidV7Vo extends BaseUuidV7Vo {
|
|
255
|
+
constructor(value) {
|
|
256
|
+
super(value, createZodValidator(schema10));
|
|
257
|
+
}
|
|
258
|
+
static create(value) {
|
|
259
|
+
return new _UuidV7Vo(value);
|
|
260
|
+
}
|
|
261
|
+
};
|
|
262
|
+
export {
|
|
263
|
+
AuditByVo,
|
|
264
|
+
AuditInfoVo,
|
|
265
|
+
AuditOnVo,
|
|
266
|
+
Dto,
|
|
267
|
+
EmailVo,
|
|
268
|
+
LongTextVo,
|
|
269
|
+
MediumTextVo,
|
|
270
|
+
PaginationVo,
|
|
271
|
+
ShortTextVo,
|
|
272
|
+
UuidV4Vo,
|
|
273
|
+
UuidV7Vo,
|
|
274
|
+
ZodObjectValidator,
|
|
275
|
+
createZodValidator,
|
|
276
|
+
zodObjectValidator
|
|
277
|
+
};
|
|
278
|
+
//# sourceMappingURL=zod.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../src/backend/core/validators/zod/object-validator.zod.ts","../../../../src/backend/core/validators/zod/bootstrap.ts","../../../../src/backend/core/validators/zod/wrappers/dto.ts","../../../../src/backend/core/validators/zod/wrappers/value-objects/audit-by.vo.ts","../../../../src/backend/core/validators/zod/wrappers/value-objects/uuid-v4.vo.ts","../../../../src/backend/core/validators/zod/wrappers/value-objects/audit-info.vo.ts","../../../../src/backend/core/validators/zod/wrappers/value-objects/audit-on.vo.ts","../../../../src/backend/core/validators/zod/wrappers/value-objects/email.vo.ts","../../../../src/backend/core/validators/zod/wrappers/value-objects/long-text.vo.ts","../../../../src/backend/core/validators/zod/wrappers/value-objects/medium-text.vo.ts","../../../../src/backend/core/validators/zod/wrappers/value-objects/pagination.vo.ts","../../../../src/backend/core/validators/zod/wrappers/value-objects/short-text.vo.ts","../../../../src/backend/core/validators/zod/wrappers/value-objects/uuid-v7.vo.ts"],"sourcesContent":["/**\n * Zod implementation of the ObjectValidatorPort.\n *\n * Adapts Zod's validation API to the framework's validator abstraction,\n * converting Zod errors to {@link ObjectValidationError} with normalized paths.\n *\n * **Path Format (By Design):**\n * Each validation library reports error paths differently. The internal\n * `formatPath` function normalizes Zod's path array to a consistent format:\n * - Object fields: `user.email`\n * - Array indices: `items[0].name`\n * - Root-level: `root`\n *\n * @example Direct usage\n * ```typescript\n * const validator = new ZodObjectValidator();\n * const result = validator.validateObject(z.string().email(), 'test@example.com');\n * ```\n *\n * @example With bootstrap (recommended)\n * ```typescript\n * import { createZodValidator } from '@cosmneo/onion-lasagna/backend/core/validators/zod';\n * const emailValidator = createZodValidator(z.string().email());\n * ```\n *\n * @module\n */\nimport type { z } from 'zod';\nimport type {\n BoundValidator,\n ObjectValidatorPort,\n} from '../../global/interfaces/ports/object-validator.port';\nimport { ObjectValidationError } from '../../global/exceptions/object-validation.error';\nimport type { ValidationError } from '../../global/interfaces/types/validation-error.type';\n\n/**\n * Converts Zod's path array to dot-notation string.\n *\n * @param path - Array of path segments from Zod error\n * @returns Normalized path string (e.g., \"user.email\", \"items[0]\")\n */\nconst formatPath = (path: (string | number | symbol)[]): string => {\n if (!path.length) return 'root';\n return path\n .map((segment, index) => {\n if (typeof segment === 'number') return `[${segment}]`;\n if (typeof segment === 'symbol') return segment.description ?? String(segment);\n return index === 0 ? segment : `.${segment}`;\n })\n .join('');\n};\n\n/**\n * Transforms Zod issues to framework ValidationError format.\n */\nconst toValidationErrors = (issues: z.core.$ZodIssue[]): ValidationError[] =>\n issues.map((issue) => ({\n field: formatPath(issue?.path ?? []),\n message: issue?.message ?? 'Validation failed',\n }));\n\n/**\n * Zod adapter implementing the ObjectValidatorPort interface.\n *\n * @implements {ObjectValidatorPort<z.ZodTypeAny>}\n */\nexport class ZodObjectValidator implements ObjectValidatorPort<z.ZodTypeAny> {\n /**\n * Validates a value against a Zod schema.\n *\n * @typeParam T - The validated output type\n * @param schema - Zod schema to validate against\n * @param value - Unknown value to validate\n * @returns The validated and typed value\n * @throws {ObjectValidationError} When validation fails\n */\n public validateObject<T>(schema: z.ZodType<T>, value: unknown): T;\n public validateObject(schema: z.ZodTypeAny, value: unknown): unknown;\n public validateObject(schema: z.ZodTypeAny, value: unknown): unknown {\n const result = schema.safeParse(value);\n if (result.success) {\n return result.data;\n }\n\n throw new ObjectValidationError({\n message: 'Object validation failed',\n cause: result.error,\n validationErrors: toValidationErrors(result.error.issues),\n });\n }\n\n /**\n * Creates a bound validator from a Zod schema.\n *\n * @typeParam T - The validated output type\n * @param schema - Zod schema to bind\n * @returns A BoundValidator ready for use with BaseDto or BaseValueObject\n */\n public withSchema<T>(schema: z.ZodType<T>): BoundValidator<T>;\n public withSchema(schema: z.ZodTypeAny): BoundValidator<unknown>;\n public withSchema(schema: z.ZodTypeAny): BoundValidator<unknown> {\n return {\n validate: (value: unknown) => this.validateObject(schema, value),\n };\n }\n}\n","/**\n * Zod validator bootstrap module.\n *\n * Entry point for creating Zod-based validators compatible with\n * {@link BaseDto} and {@link BaseValueObject}. Provides both a\n * singleton instance and a factory function for convenience.\n *\n * @see {@link ZodObjectValidator} for path normalization details.\n *\n * @example\n * ```typescript\n * import { createZodValidator } from '@cosmneo/onion-lasagna/backend/core/validators/zod';\n * import { z } from 'zod';\n *\n * const userSchema = z.object({\n * name: z.string().min(1),\n * email: z.string().email(),\n * });\n *\n * const validator = createZodValidator(userSchema);\n *\n * // Use with BaseDto\n * class CreateUserDto extends BaseDto<{ name: string; email: string }> {\n * static create(data: unknown) {\n * return new CreateUserDto(data, validator);\n * }\n * }\n * ```\n *\n * @module\n */\nimport type { z } from 'zod';\nimport { ZodObjectValidator } from './object-validator.zod';\nimport type { BoundValidator } from '../../global/interfaces/ports/object-validator.port';\n\n/**\n * Singleton Zod validator instance.\n *\n * Use this directly when you need access to the underlying\n * {@link ObjectValidatorPort} implementation.\n */\nexport const zodObjectValidator = new ZodObjectValidator();\n\n/**\n * Creates a bound validator from a Zod schema.\n *\n * @typeParam T - The validated output type inferred from the schema\n * @param schema - A Zod schema defining the validation rules\n * @returns A {@link BoundValidator} ready for use with BaseDto or BaseValueObject\n *\n * @example\n * ```typescript\n * const emailValidator = createZodValidator(z.string().email());\n * const validated = emailValidator.validate('user@example.com'); // Returns string\n * ```\n */\nexport const createZodValidator = <T>(schema: z.ZodType<T>): BoundValidator<T> =>\n zodObjectValidator.withSchema<T>(schema);\n","import type { z } from 'zod';\nimport { BaseDto } from '../../../global/classes/base-dto.class';\nimport { createZodValidator } from '../bootstrap';\n\nexport class Dto<T> extends BaseDto<T> {\n constructor(schema: z.ZodType<T>, value: T) {\n super(value, createZodValidator(schema));\n }\n}\n","import { z } from 'zod';\nimport { BaseAuditByVo } from '../../../../onion-layers/domain/value-objects/base-audit-by.vo';\nimport { SKIP_VALUE_OBJECT_VALIDATION } from '../../../../onion-layers/domain/classes/base-value-object.class';\nimport { createZodValidator } from '../../bootstrap';\nimport type { BaseUuidV4Vo } from '../../../../onion-layers/domain/value-objects/base-uuid-v4.vo';\nimport { UuidV4Vo } from './uuid-v4.vo';\n\nconst schema = z.object({\n createdBy: z.uuidv4().optional(),\n updatedBy: z.uuidv4().optional(),\n});\n\nexport class AuditByVo extends BaseAuditByVo {\n private constructor(value: { createdBy?: BaseUuidV4Vo; updatedBy?: BaseUuidV4Vo }) {\n super(value, SKIP_VALUE_OBJECT_VALIDATION);\n }\n\n static create({ createdBy, updatedBy }: { createdBy?: string; updatedBy?: string }): AuditByVo {\n const validated = createZodValidator(schema).validate({\n createdBy,\n updatedBy,\n });\n\n return new AuditByVo({\n createdBy: validated.createdBy ? UuidV4Vo.create(validated.createdBy) : undefined,\n updatedBy: validated.updatedBy ? UuidV4Vo.create(validated.updatedBy) : undefined,\n });\n }\n\n update(updatedBy: BaseUuidV4Vo): AuditByVo {\n return new AuditByVo({ createdBy: this.createdBy, updatedBy });\n }\n}\n","import { z } from 'zod';\nimport { BaseUuidV4Vo } from '../../../../onion-layers/domain/value-objects/base-uuid-v4.vo';\nimport { createZodValidator } from '../../bootstrap';\n\nconst schema = z.uuidv4();\n\nexport class UuidV4Vo extends BaseUuidV4Vo {\n private constructor(value: string) {\n super(value, createZodValidator(schema));\n }\n\n static override create(value: string): UuidV4Vo {\n return new UuidV4Vo(value);\n }\n}\n","import { z } from 'zod';\nimport { BaseAuditInfoVo } from '../../../../onion-layers/domain/value-objects/base-audit-info.vo';\nimport { SKIP_VALUE_OBJECT_VALIDATION } from '../../../../onion-layers/domain/classes/base-value-object.class';\nimport { createZodValidator } from '../../bootstrap';\nimport type { BaseAuditByVo } from '../../../../onion-layers/domain/value-objects/base-audit-by.vo';\nimport type { BaseAuditOnVo } from '../../../../onion-layers/domain/value-objects/base-audit-on.vo';\nimport type { BaseUuidV4Vo } from '../../../../onion-layers/domain/value-objects/base-uuid-v4.vo';\nimport { AuditByVo } from './audit-by.vo';\nimport { AuditOnVo } from './audit-on.vo';\n\nconst schema = z.object({\n createdBy: z.uuidv4().optional(),\n createdAt: z.date().optional(),\n updatedBy: z.uuidv4().optional(),\n updatedAt: z.date().optional(),\n});\n\nexport class AuditInfoVo extends BaseAuditInfoVo {\n private constructor(value: { by: BaseAuditByVo; on: BaseAuditOnVo }) {\n super(value, SKIP_VALUE_OBJECT_VALIDATION);\n }\n\n static create({\n createdBy,\n createdAt,\n updatedBy,\n updatedAt,\n }: {\n createdBy?: string;\n createdAt?: Date;\n updatedBy?: string;\n updatedAt?: Date;\n }): AuditInfoVo {\n const validated = createZodValidator(schema).validate({\n createdBy,\n createdAt,\n updatedBy,\n updatedAt,\n });\n\n const by = AuditByVo.create({\n createdBy: validated.createdBy,\n updatedBy: validated.updatedBy,\n });\n const on = AuditOnVo.create({\n createdAt: validated.createdAt,\n updatedAt: validated.updatedAt,\n });\n\n return new AuditInfoVo({ by, on });\n }\n\n static createNew(createdBy?: string): AuditInfoVo {\n const by = AuditByVo.create({ createdBy });\n const on = AuditOnVo.create({});\n return new AuditInfoVo({ by, on });\n }\n\n update(updatedBy: BaseUuidV4Vo): AuditInfoVo {\n const by = this.value.by.update(updatedBy);\n const on = this.value.on.update();\n return new AuditInfoVo({ by, on });\n }\n}\n","import { z } from 'zod';\nimport { BaseAuditOnVo } from '../../../../onion-layers/domain/value-objects/base-audit-on.vo';\nimport { SKIP_VALUE_OBJECT_VALIDATION } from '../../../../onion-layers/domain/classes/base-value-object.class';\nimport { createZodValidator } from '../../bootstrap';\n\nconst schema = z.object({\n createdAt: z.date().optional(),\n updatedAt: z.date().optional(),\n});\n\nexport class AuditOnVo extends BaseAuditOnVo {\n private constructor(value: { createdAt: Date; updatedAt: Date }) {\n super(value, SKIP_VALUE_OBJECT_VALIDATION);\n }\n\n static create({ createdAt, updatedAt }: { createdAt?: Date; updatedAt?: Date }): AuditOnVo {\n const validated = createZodValidator(schema).validate({\n createdAt,\n updatedAt,\n });\n\n const finalCreatedAt = validated.createdAt ?? new Date();\n const finalUpdatedAt = validated.updatedAt ?? finalCreatedAt;\n\n return new AuditOnVo({\n createdAt: new Date(finalCreatedAt),\n updatedAt: new Date(finalUpdatedAt),\n });\n }\n\n update(): AuditOnVo {\n return new AuditOnVo({ createdAt: this.createdAt, updatedAt: new Date() });\n }\n}\n","import { z } from 'zod';\nimport { BaseEmailVo } from '../../../../onion-layers/domain/value-objects/base-email.vo';\nimport { createZodValidator } from '../../bootstrap';\n\nconst schema = z.string().email();\n\nexport class EmailVo extends BaseEmailVo {\n private constructor(value: string) {\n super(value, createZodValidator(schema));\n }\n\n static create(value: string): EmailVo {\n return new EmailVo(value);\n }\n}\n","import { z } from 'zod';\nimport { BaseLongTextVo } from '../../../../onion-layers/domain/value-objects/base-long-text.vo';\nimport { createZodValidator } from '../../bootstrap';\n\nconst schema = (maxLength: number) => z.string().min(1).max(maxLength);\n\nexport class LongTextVo extends BaseLongTextVo {\n private constructor(value: string, maxLength = 2000) {\n super(value, createZodValidator(schema(maxLength)));\n }\n\n static create(value: string, maxLength = 2000): LongTextVo {\n return new LongTextVo(value, maxLength);\n }\n}\n","import { z } from 'zod';\nimport { BaseMediumTextVo } from '../../../../onion-layers/domain/value-objects/base-medium-text.vo';\nimport { createZodValidator } from '../../bootstrap';\n\nconst schema = (maxLength: number) => z.string().min(1).max(maxLength);\n\nexport class MediumTextVo extends BaseMediumTextVo {\n private constructor(value: string, maxLength = 500) {\n super(value, createZodValidator(schema(maxLength)));\n }\n\n static create(value: string, maxLength = 500): MediumTextVo {\n return new MediumTextVo(value, maxLength);\n }\n}\n","import { z } from 'zod';\nimport { BasePaginationVo } from '../../../../onion-layers/domain/value-objects/base-pagination.vo';\nimport { SKIP_VALUE_OBJECT_VALIDATION } from '../../../../onion-layers/domain/classes/base-value-object.class';\nimport { createZodValidator } from '../../bootstrap';\n\nconst schema = (maxPageSize: number) =>\n z.object({\n page: z.coerce.number().int().min(1),\n pageSize: z.coerce.number().int().min(1).max(maxPageSize),\n });\n\nexport class PaginationVo extends BasePaginationVo {\n private constructor(value: { page: number; pageSize: number }) {\n super(value, SKIP_VALUE_OBJECT_VALIDATION);\n }\n\n static create({\n page,\n pageSize,\n maxPageSize = 100,\n }: {\n page: number;\n pageSize: number;\n maxPageSize?: number;\n }): PaginationVo {\n const validated = createZodValidator(schema(maxPageSize)).validate({\n page,\n pageSize,\n });\n return new PaginationVo(validated);\n }\n}\n","import { z } from 'zod';\nimport { BaseShortTextVo } from '../../../../onion-layers/domain/value-objects/base-short-text.vo';\nimport { createZodValidator } from '../../bootstrap';\n\nconst schema = (maxLength: number) => z.string().min(1).max(maxLength);\n\nexport class ShortTextVo extends BaseShortTextVo {\n private constructor(value: string, maxLength = 100) {\n super(value, createZodValidator(schema(maxLength)));\n }\n\n static create(value: string, maxLength = 100): ShortTextVo {\n return new ShortTextVo(value, maxLength);\n }\n}\n","import { z } from 'zod';\nimport { BaseUuidV7Vo } from '../../../../onion-layers/domain/value-objects/base-uuid-v7.vo';\nimport { createZodValidator } from '../../bootstrap';\n\nconst schema = z.uuidv7();\n\nexport class UuidV7Vo extends BaseUuidV7Vo {\n private constructor(value: string) {\n super(value, createZodValidator(schema));\n }\n\n static override create(value: string): UuidV7Vo {\n return new UuidV7Vo(value);\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AAyCA,IAAM,aAAa,CAAC,SAA+C;AACjE,MAAI,CAAC,KAAK,OAAQ,QAAO;AACzB,SAAO,KACJ,IAAI,CAAC,SAAS,UAAU;AACvB,QAAI,OAAO,YAAY,SAAU,QAAO,IAAI,OAAO;AACnD,QAAI,OAAO,YAAY,SAAU,QAAO,QAAQ,eAAe,OAAO,OAAO;AAC7E,WAAO,UAAU,IAAI,UAAU,IAAI,OAAO;AAAA,EAC5C,CAAC,EACA,KAAK,EAAE;AACZ;AAKA,IAAM,qBAAqB,CAAC,WAC1B,OAAO,IAAI,CAAC,WAAW;AAAA,EACrB,OAAO,WAAW,OAAO,QAAQ,CAAC,CAAC;AAAA,EACnC,SAAS,OAAO,WAAW;AAC7B,EAAE;AAOG,IAAM,qBAAN,MAAsE;AAAA,EAYpE,eAAeA,UAAsB,OAAyB;AACnE,UAAM,SAASA,SAAO,UAAU,KAAK;AACrC,QAAI,OAAO,SAAS;AAClB,aAAO,OAAO;AAAA,IAChB;AAEA,UAAM,IAAI,sBAAsB;AAAA,MAC9B,SAAS;AAAA,MACT,OAAO,OAAO;AAAA,MACd,kBAAkB,mBAAmB,OAAO,MAAM,MAAM;AAAA,IAC1D,CAAC;AAAA,EACH;AAAA,EAWO,WAAWA,UAA+C;AAC/D,WAAO;AAAA,MACL,UAAU,CAAC,UAAmB,KAAK,eAAeA,UAAQ,KAAK;AAAA,IACjE;AAAA,EACF;AACF;;;AChEO,IAAM,qBAAqB,IAAI,mBAAmB;AAelD,IAAM,qBAAqB,CAAIC,aACpC,mBAAmB,WAAcA,QAAM;;;ACrDlC,IAAM,MAAN,cAAqB,QAAW;AAAA,EACrC,YAAYC,UAAsB,OAAU;AAC1C,UAAM,OAAO,mBAAmBA,QAAM,CAAC;AAAA,EACzC;AACF;;;ACRA,SAAS,KAAAC,UAAS;;;ACAlB,SAAS,SAAS;AAIlB,IAAM,SAAS,EAAE,OAAO;AAEjB,IAAM,WAAN,MAAM,kBAAiB,aAAa;AAAA,EACjC,YAAY,OAAe;AACjC,UAAM,OAAO,mBAAmB,MAAM,CAAC;AAAA,EACzC;AAAA,EAEA,OAAgB,OAAO,OAAyB;AAC9C,WAAO,IAAI,UAAS,KAAK;AAAA,EAC3B;AACF;;;ADPA,IAAMC,UAASC,GAAE,OAAO;AAAA,EACtB,WAAWA,GAAE,OAAO,EAAE,SAAS;AAAA,EAC/B,WAAWA,GAAE,OAAO,EAAE,SAAS;AACjC,CAAC;AAEM,IAAM,YAAN,MAAM,mBAAkB,cAAc;AAAA,EACnC,YAAY,OAA+D;AACjF,UAAM,OAAO,4BAA4B;AAAA,EAC3C;AAAA,EAEA,OAAO,OAAO,EAAE,WAAW,UAAU,GAA0D;AAC7F,UAAM,YAAY,mBAAmBD,OAAM,EAAE,SAAS;AAAA,MACpD;AAAA,MACA;AAAA,IACF,CAAC;AAED,WAAO,IAAI,WAAU;AAAA,MACnB,WAAW,UAAU,YAAY,SAAS,OAAO,UAAU,SAAS,IAAI;AAAA,MACxE,WAAW,UAAU,YAAY,SAAS,OAAO,UAAU,SAAS,IAAI;AAAA,IAC1E,CAAC;AAAA,EACH;AAAA,EAEA,OAAO,WAAoC;AACzC,WAAO,IAAI,WAAU,EAAE,WAAW,KAAK,WAAW,UAAU,CAAC;AAAA,EAC/D;AACF;;;AEhCA,SAAS,KAAAE,UAAS;;;ACAlB,SAAS,KAAAC,UAAS;AAKlB,IAAMC,UAASC,GAAE,OAAO;AAAA,EACtB,WAAWA,GAAE,KAAK,EAAE,SAAS;AAAA,EAC7B,WAAWA,GAAE,KAAK,EAAE,SAAS;AAC/B,CAAC;AAEM,IAAM,YAAN,MAAM,mBAAkB,cAAc;AAAA,EACnC,YAAY,OAA6C;AAC/D,UAAM,OAAO,4BAA4B;AAAA,EAC3C;AAAA,EAEA,OAAO,OAAO,EAAE,WAAW,UAAU,GAAsD;AACzF,UAAM,YAAY,mBAAmBD,OAAM,EAAE,SAAS;AAAA,MACpD;AAAA,MACA;AAAA,IACF,CAAC;AAED,UAAM,iBAAiB,UAAU,aAAa,oBAAI,KAAK;AACvD,UAAM,iBAAiB,UAAU,aAAa;AAE9C,WAAO,IAAI,WAAU;AAAA,MACnB,WAAW,IAAI,KAAK,cAAc;AAAA,MAClC,WAAW,IAAI,KAAK,cAAc;AAAA,IACpC,CAAC;AAAA,EACH;AAAA,EAEA,SAAoB;AAClB,WAAO,IAAI,WAAU,EAAE,WAAW,KAAK,WAAW,WAAW,oBAAI,KAAK,EAAE,CAAC;AAAA,EAC3E;AACF;;;ADvBA,IAAME,UAASC,GAAE,OAAO;AAAA,EACtB,WAAWA,GAAE,OAAO,EAAE,SAAS;AAAA,EAC/B,WAAWA,GAAE,KAAK,EAAE,SAAS;AAAA,EAC7B,WAAWA,GAAE,OAAO,EAAE,SAAS;AAAA,EAC/B,WAAWA,GAAE,KAAK,EAAE,SAAS;AAC/B,CAAC;AAEM,IAAM,cAAN,MAAM,qBAAoB,gBAAgB;AAAA,EACvC,YAAY,OAAiD;AACnE,UAAM,OAAO,4BAA4B;AAAA,EAC3C;AAAA,EAEA,OAAO,OAAO;AAAA,IACZ;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF,GAKgB;AACd,UAAM,YAAY,mBAAmBD,OAAM,EAAE,SAAS;AAAA,MACpD;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACF,CAAC;AAED,UAAM,KAAK,UAAU,OAAO;AAAA,MAC1B,WAAW,UAAU;AAAA,MACrB,WAAW,UAAU;AAAA,IACvB,CAAC;AACD,UAAM,KAAK,UAAU,OAAO;AAAA,MAC1B,WAAW,UAAU;AAAA,MACrB,WAAW,UAAU;AAAA,IACvB,CAAC;AAED,WAAO,IAAI,aAAY,EAAE,IAAI,GAAG,CAAC;AAAA,EACnC;AAAA,EAEA,OAAO,UAAU,WAAiC;AAChD,UAAM,KAAK,UAAU,OAAO,EAAE,UAAU,CAAC;AACzC,UAAM,KAAK,UAAU,OAAO,CAAC,CAAC;AAC9B,WAAO,IAAI,aAAY,EAAE,IAAI,GAAG,CAAC;AAAA,EACnC;AAAA,EAEA,OAAO,WAAsC;AAC3C,UAAM,KAAK,KAAK,MAAM,GAAG,OAAO,SAAS;AACzC,UAAM,KAAK,KAAK,MAAM,GAAG,OAAO;AAChC,WAAO,IAAI,aAAY,EAAE,IAAI,GAAG,CAAC;AAAA,EACnC;AACF;;;AE/DA,SAAS,KAAAE,UAAS;AAIlB,IAAMC,UAASC,GAAE,OAAO,EAAE,MAAM;AAEzB,IAAM,UAAN,MAAM,iBAAgB,YAAY;AAAA,EAC/B,YAAY,OAAe;AACjC,UAAM,OAAO,mBAAmBD,OAAM,CAAC;AAAA,EACzC;AAAA,EAEA,OAAO,OAAO,OAAwB;AACpC,WAAO,IAAI,SAAQ,KAAK;AAAA,EAC1B;AACF;;;ACdA,SAAS,KAAAE,UAAS;AAIlB,IAAMC,UAAS,CAAC,cAAsBC,GAAE,OAAO,EAAE,IAAI,CAAC,EAAE,IAAI,SAAS;AAE9D,IAAM,aAAN,MAAM,oBAAmB,eAAe;AAAA,EACrC,YAAY,OAAe,YAAY,KAAM;AACnD,UAAM,OAAO,mBAAmBD,QAAO,SAAS,CAAC,CAAC;AAAA,EACpD;AAAA,EAEA,OAAO,OAAO,OAAe,YAAY,KAAkB;AACzD,WAAO,IAAI,YAAW,OAAO,SAAS;AAAA,EACxC;AACF;;;ACdA,SAAS,KAAAE,UAAS;AAIlB,IAAMC,UAAS,CAAC,cAAsBC,GAAE,OAAO,EAAE,IAAI,CAAC,EAAE,IAAI,SAAS;AAE9D,IAAM,eAAN,MAAM,sBAAqB,iBAAiB;AAAA,EACzC,YAAY,OAAe,YAAY,KAAK;AAClD,UAAM,OAAO,mBAAmBD,QAAO,SAAS,CAAC,CAAC;AAAA,EACpD;AAAA,EAEA,OAAO,OAAO,OAAe,YAAY,KAAmB;AAC1D,WAAO,IAAI,cAAa,OAAO,SAAS;AAAA,EAC1C;AACF;;;ACdA,SAAS,KAAAE,UAAS;AAKlB,IAAMC,UAAS,CAAC,gBACdC,GAAE,OAAO;AAAA,EACP,MAAMA,GAAE,OAAO,OAAO,EAAE,IAAI,EAAE,IAAI,CAAC;AAAA,EACnC,UAAUA,GAAE,OAAO,OAAO,EAAE,IAAI,EAAE,IAAI,CAAC,EAAE,IAAI,WAAW;AAC1D,CAAC;AAEI,IAAM,eAAN,MAAM,sBAAqB,iBAAiB;AAAA,EACzC,YAAY,OAA2C;AAC7D,UAAM,OAAO,4BAA4B;AAAA,EAC3C;AAAA,EAEA,OAAO,OAAO;AAAA,IACZ;AAAA,IACA;AAAA,IACA,cAAc;AAAA,EAChB,GAIiB;AACf,UAAM,YAAY,mBAAmBD,QAAO,WAAW,CAAC,EAAE,SAAS;AAAA,MACjE;AAAA,MACA;AAAA,IACF,CAAC;AACD,WAAO,IAAI,cAAa,SAAS;AAAA,EACnC;AACF;;;AC/BA,SAAS,KAAAE,UAAS;AAIlB,IAAMC,UAAS,CAAC,cAAsBC,GAAE,OAAO,EAAE,IAAI,CAAC,EAAE,IAAI,SAAS;AAE9D,IAAM,cAAN,MAAM,qBAAoB,gBAAgB;AAAA,EACvC,YAAY,OAAe,YAAY,KAAK;AAClD,UAAM,OAAO,mBAAmBD,QAAO,SAAS,CAAC,CAAC;AAAA,EACpD;AAAA,EAEA,OAAO,OAAO,OAAe,YAAY,KAAkB;AACzD,WAAO,IAAI,aAAY,OAAO,SAAS;AAAA,EACzC;AACF;;;ACdA,SAAS,KAAAE,WAAS;AAIlB,IAAMC,WAASC,IAAE,OAAO;AAEjB,IAAM,WAAN,MAAM,kBAAiB,aAAa;AAAA,EACjC,YAAY,OAAe;AACjC,UAAM,OAAO,mBAAmBD,QAAM,CAAC;AAAA,EACzC;AAAA,EAEA,OAAgB,OAAO,OAAyB;AAC9C,WAAO,IAAI,UAAS,KAAK;AAAA,EAC3B;AACF;","names":["schema","schema","schema","z","schema","z","z","z","schema","z","schema","z","z","schema","z","z","schema","z","z","schema","z","z","schema","z","z","schema","z","z","schema","z"]}
|