@dainprotocol/service-sdk 2.0.55 → 2.0.57

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.
@@ -0,0 +1,234 @@
1
+ "use strict";
2
+ // File: src/lib/schemaConversion.ts
3
+ // Unified schema conversion: JSON ↔ Zod
4
+ Object.defineProperty(exports, "__esModule", { value: true });
5
+ exports.jsonToZod = jsonToZod;
6
+ exports.getZodTypeName = getZodTypeName;
7
+ exports.zodToJson = zodToJson;
8
+ const zod_1 = require("zod");
9
+ /**
10
+ * Convert serialized JSON schema back to Zod schema
11
+ * Used by client to reconstruct schemas received from server
12
+ */
13
+ function jsonToZod(schema) {
14
+ if (!schema || typeof schema !== "object") {
15
+ return zod_1.z.any();
16
+ }
17
+ const desc = schema.description || "";
18
+ switch (schema.type) {
19
+ case "ZodObject": {
20
+ const shape = {};
21
+ if (schema.shape) {
22
+ for (const [key, value] of Object.entries(schema.shape)) {
23
+ shape[key] = jsonToZod(value);
24
+ }
25
+ }
26
+ return zod_1.z.object(shape).describe(desc);
27
+ }
28
+ case "ZodString":
29
+ return zod_1.z.string().describe(desc);
30
+ case "ZodNumber":
31
+ return zod_1.z.number().describe(desc);
32
+ case "ZodBoolean":
33
+ return zod_1.z.boolean().describe(desc);
34
+ case "ZodArray":
35
+ return zod_1.z.array(jsonToZod(schema.element)).describe(desc);
36
+ case "ZodEnum":
37
+ if (!schema.values?.length)
38
+ return zod_1.z.any().describe(desc);
39
+ return zod_1.z.enum(schema.values).describe(desc);
40
+ case "ZodUnion":
41
+ if (!schema.options?.length)
42
+ return zod_1.z.any().describe(desc);
43
+ return zod_1.z.union(schema.options.map(opt => jsonToZod(opt))).describe(desc);
44
+ case "ZodDiscriminatedUnion":
45
+ if (!schema.discriminator || !schema.options?.length)
46
+ return zod_1.z.any().describe(desc);
47
+ return zod_1.z.discriminatedUnion(schema.discriminator, schema.options.map(opt => jsonToZod(opt))).describe(desc);
48
+ case "ZodOptional":
49
+ return jsonToZod(schema.innerType).optional().describe(desc);
50
+ case "ZodNullable":
51
+ return jsonToZod(schema.innerType).nullable().describe(desc);
52
+ case "ZodDefault":
53
+ return jsonToZod(schema.innerType).default(schema.defaultValue).describe(desc);
54
+ case "ZodLiteral":
55
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
56
+ return zod_1.z.literal(schema.value).describe(desc);
57
+ case "ZodTuple":
58
+ if (!schema.items?.length)
59
+ return zod_1.z.tuple([]).describe(desc);
60
+ return zod_1.z.tuple(schema.items.map(item => jsonToZod(item))).describe(desc);
61
+ case "ZodIntersection":
62
+ return zod_1.z.intersection(jsonToZod(schema.left), jsonToZod(schema.right)).describe(desc);
63
+ case "ZodRecord":
64
+ return zod_1.z.record(jsonToZod(schema.keyType), jsonToZod(schema.valueType)).describe(desc);
65
+ case "ZodMap":
66
+ return zod_1.z.map(jsonToZod(schema.keyType), jsonToZod(schema.valueType)).describe(desc);
67
+ case "ZodSet":
68
+ return zod_1.z.set(jsonToZod(schema.valueType)).describe(desc);
69
+ case "ZodDate":
70
+ return zod_1.z.date().describe(desc);
71
+ case "ZodBigInt":
72
+ return zod_1.z.bigint().describe(desc);
73
+ case "ZodPromise":
74
+ return zod_1.z.promise(jsonToZod(schema.innerType)).describe(desc);
75
+ default:
76
+ return zod_1.z.any().describe(desc || "Unknown type");
77
+ }
78
+ }
79
+ /**
80
+ * Get the Zod type name from a schema instance
81
+ */
82
+ function getZodTypeName(schema) {
83
+ // Check _def.typeName first (works across Zod versions)
84
+ const typeName = schema._def?.typeName;
85
+ if (typeName)
86
+ return typeName;
87
+ // Fallback to instanceof checks
88
+ if (schema instanceof zod_1.z.ZodDefault)
89
+ return "ZodDefault";
90
+ if (schema instanceof zod_1.z.ZodOptional)
91
+ return "ZodOptional";
92
+ if (schema instanceof zod_1.z.ZodNullable)
93
+ return "ZodNullable";
94
+ if (schema instanceof zod_1.z.ZodArray)
95
+ return "ZodArray";
96
+ if (schema instanceof zod_1.z.ZodEnum)
97
+ return "ZodEnum";
98
+ if (schema instanceof zod_1.z.ZodDiscriminatedUnion)
99
+ return "ZodDiscriminatedUnion";
100
+ if (schema instanceof zod_1.z.ZodUnion)
101
+ return "ZodUnion";
102
+ if (schema instanceof zod_1.z.ZodObject)
103
+ return "ZodObject";
104
+ if (schema instanceof zod_1.z.ZodString)
105
+ return "ZodString";
106
+ if (schema instanceof zod_1.z.ZodNumber)
107
+ return "ZodNumber";
108
+ if (schema instanceof zod_1.z.ZodBoolean)
109
+ return "ZodBoolean";
110
+ if (schema instanceof zod_1.z.ZodLiteral)
111
+ return "ZodLiteral";
112
+ if (schema instanceof zod_1.z.ZodTuple)
113
+ return "ZodTuple";
114
+ if (schema instanceof zod_1.z.ZodIntersection)
115
+ return "ZodIntersection";
116
+ if (schema instanceof zod_1.z.ZodRecord)
117
+ return "ZodRecord";
118
+ if (schema instanceof zod_1.z.ZodMap)
119
+ return "ZodMap";
120
+ if (schema instanceof zod_1.z.ZodSet)
121
+ return "ZodSet";
122
+ if (schema instanceof zod_1.z.ZodDate)
123
+ return "ZodDate";
124
+ if (schema instanceof zod_1.z.ZodBigInt)
125
+ return "ZodBigInt";
126
+ if (schema instanceof zod_1.z.ZodPromise)
127
+ return "ZodPromise";
128
+ return "Unknown";
129
+ }
130
+ /**
131
+ * Convert Zod schema to serialized JSON format
132
+ * Used by server to serialize schemas for transmission to client
133
+ */
134
+ function zodToJson(schema) {
135
+ const typeName = getZodTypeName(schema);
136
+ const base = {
137
+ type: typeName,
138
+ description: schema.description,
139
+ };
140
+ switch (typeName) {
141
+ case "ZodObject": {
142
+ const shape = schema.shape;
143
+ return {
144
+ ...base,
145
+ shape: Object.fromEntries(Object.entries(shape).map(([k, v]) => [k, zodToJson(v)])),
146
+ };
147
+ }
148
+ case "ZodArray":
149
+ return {
150
+ ...base,
151
+ element: zodToJson(schema.element),
152
+ };
153
+ case "ZodEnum":
154
+ return {
155
+ ...base,
156
+ values: schema.options,
157
+ };
158
+ case "ZodUnion":
159
+ return {
160
+ ...base,
161
+ options: schema.options.map((opt) => zodToJson(opt)),
162
+ };
163
+ case "ZodDiscriminatedUnion": {
164
+ const def = schema._def;
165
+ const options = Array.isArray(def.options)
166
+ ? def.options
167
+ : Array.from(def.options.values());
168
+ return {
169
+ ...base,
170
+ discriminator: def.discriminator,
171
+ options: options.map((opt) => zodToJson(opt)),
172
+ };
173
+ }
174
+ case "ZodOptional":
175
+ case "ZodNullable":
176
+ return {
177
+ ...base,
178
+ innerType: zodToJson(schema._def.innerType),
179
+ };
180
+ case "ZodDefault": {
181
+ const def = schema._def;
182
+ // Handle both Zod 3 (function) and Zod 4 (value) defaultValue
183
+ const defaultVal = typeof def.defaultValue === 'function'
184
+ ? def.defaultValue()
185
+ : def.defaultValue;
186
+ return {
187
+ ...base,
188
+ innerType: zodToJson(def.innerType),
189
+ defaultValue: defaultVal,
190
+ };
191
+ }
192
+ case "ZodLiteral":
193
+ return {
194
+ ...base,
195
+ value: schema.value,
196
+ };
197
+ case "ZodTuple":
198
+ return {
199
+ ...base,
200
+ items: schema._def.items.map((item) => zodToJson(item)),
201
+ };
202
+ case "ZodIntersection":
203
+ return {
204
+ ...base,
205
+ left: zodToJson(schema._def.left),
206
+ right: zodToJson(schema._def.right),
207
+ };
208
+ case "ZodRecord":
209
+ return {
210
+ ...base,
211
+ keyType: zodToJson(schema._def.keyType),
212
+ valueType: zodToJson(schema._def.valueType),
213
+ };
214
+ case "ZodMap":
215
+ return {
216
+ ...base,
217
+ keyType: zodToJson(schema._def.keyType),
218
+ valueType: zodToJson(schema._def.valueType),
219
+ };
220
+ case "ZodSet":
221
+ return {
222
+ ...base,
223
+ valueType: zodToJson(schema._def.valueType),
224
+ };
225
+ case "ZodPromise":
226
+ return {
227
+ ...base,
228
+ innerType: zodToJson(schema._def.type),
229
+ };
230
+ default:
231
+ return base;
232
+ }
233
+ }
234
+ //# sourceMappingURL=schemaConversion.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"schemaConversion.js","sourceRoot":"","sources":["../../src/lib/schemaConversion.ts"],"names":[],"mappings":";AAAA,oCAAoC;AACpC,wCAAwC;;AAwCxC,8BAmGC;AAKD,wCA4BC;AAMD,8BAqHC;AArSD,6BAAiC;AAkCjC;;;GAGG;AACH,SAAgB,SAAS,CAAC,MAA2C;IACnE,IAAI,CAAC,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE,CAAC;QAC1C,OAAO,OAAC,CAAC,GAAG,EAAE,CAAC;IACjB,CAAC;IAED,MAAM,IAAI,GAAG,MAAM,CAAC,WAAW,IAAI,EAAE,CAAC;IAEtC,QAAQ,MAAM,CAAC,IAAI,EAAE,CAAC;QACpB,KAAK,WAAW,CAAC,CAAC,CAAC;YACjB,MAAM,KAAK,GAA4B,EAAE,CAAC;YAC1C,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;gBACjB,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC;oBACxD,KAAK,CAAC,GAAG,CAAC,GAAG,SAAS,CAAC,KAAK,CAAC,CAAC;gBAChC,CAAC;YACH,CAAC;YACD,OAAO,OAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QACxC,CAAC;QAED,KAAK,WAAW;YACd,OAAO,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QAEnC,KAAK,WAAW;YACd,OAAO,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QAEnC,KAAK,YAAY;YACf,OAAO,OAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QAEpC,KAAK,UAAU;YACb,OAAO,OAAC,CAAC,KAAK,CAAC,SAAS,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QAE3D,KAAK,SAAS;YACZ,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM;gBAAE,OAAO,OAAC,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;YAC1D,OAAO,OAAC,CAAC,IAAI,CAAC,MAAM,CAAC,MAA+B,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QAEvE,KAAK,UAAU;YACb,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,MAAM;gBAAE,OAAO,OAAC,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;YAC3D,OAAO,OAAC,CAAC,KAAK,CACZ,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,SAAS,CAAC,GAAG,CAAC,CAAqC,CAC9E,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QAEnB,KAAK,uBAAuB;YAC1B,IAAI,CAAC,MAAM,CAAC,aAAa,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,MAAM;gBAAE,OAAO,OAAC,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;YACpF,OAAO,OAAC,CAAC,kBAAkB,CACzB,MAAM,CAAC,aAAa,EACpB,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,SAAS,CAAC,GAAG,CAAC,CAA8C,CACvF,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QAEnB,KAAK,aAAa;YAChB,OAAO,SAAS,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QAE/D,KAAK,aAAa;YAChB,OAAO,SAAS,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QAE/D,KAAK,YAAY;YACf,OAAO,SAAS,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QAEjF,KAAK,YAAY;YACf,8DAA8D;YAC9D,OAAO,OAAC,CAAC,OAAO,CAAC,MAAM,CAAC,KAAY,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QAEvD,KAAK,UAAU;YACb,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,MAAM;gBAAE,OAAO,OAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;YAC7D,OAAO,OAAC,CAAC,KAAK,CACZ,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,CAA4B,CACrE,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QAEnB,KAAK,iBAAiB;YACpB,OAAO,OAAC,CAAC,YAAY,CACnB,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,EACtB,SAAS,CAAC,MAAM,CAAC,KAAK,CAAC,CACxB,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QAEnB,KAAK,WAAW;YACd,OAAO,OAAC,CAAC,MAAM,CACb,SAAS,CAAC,MAAM,CAAC,OAAO,CAAgB,EACxC,SAAS,CAAC,MAAM,CAAC,SAAS,CAAC,CAC5B,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QAEnB,KAAK,QAAQ;YACX,OAAO,OAAC,CAAC,GAAG,CACV,SAAS,CAAC,MAAM,CAAC,OAAO,CAAC,EACzB,SAAS,CAAC,MAAM,CAAC,SAAS,CAAC,CAC5B,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QAEnB,KAAK,QAAQ;YACX,OAAO,OAAC,CAAC,GAAG,CAAC,SAAS,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QAE3D,KAAK,SAAS;YACZ,OAAO,OAAC,CAAC,IAAI,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QAEjC,KAAK,WAAW;YACd,OAAO,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QAEnC,KAAK,YAAY;YACf,OAAO,OAAC,CAAC,OAAO,CAAC,SAAS,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QAE/D;YACE,OAAO,OAAC,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,IAAI,IAAI,cAAc,CAAC,CAAC;IACpD,CAAC;AACH,CAAC;AAED;;GAEG;AACH,SAAgB,cAAc,CAAC,MAAe;IAC5C,wDAAwD;IACxD,MAAM,QAAQ,GAAI,MAAc,CAAC,IAAI,EAAE,QAAQ,CAAC;IAChD,IAAI,QAAQ;QAAE,OAAO,QAAQ,CAAC;IAE9B,gCAAgC;IAChC,IAAI,MAAM,YAAY,OAAC,CAAC,UAAU;QAAE,OAAO,YAAY,CAAC;IACxD,IAAI,MAAM,YAAY,OAAC,CAAC,WAAW;QAAE,OAAO,aAAa,CAAC;IAC1D,IAAI,MAAM,YAAY,OAAC,CAAC,WAAW;QAAE,OAAO,aAAa,CAAC;IAC1D,IAAI,MAAM,YAAY,OAAC,CAAC,QAAQ;QAAE,OAAO,UAAU,CAAC;IACpD,IAAI,MAAM,YAAY,OAAC,CAAC,OAAO;QAAE,OAAO,SAAS,CAAC;IAClD,IAAI,MAAM,YAAY,OAAC,CAAC,qBAAqB;QAAE,OAAO,uBAAuB,CAAC;IAC9E,IAAI,MAAM,YAAY,OAAC,CAAC,QAAQ;QAAE,OAAO,UAAU,CAAC;IACpD,IAAI,MAAM,YAAY,OAAC,CAAC,SAAS;QAAE,OAAO,WAAW,CAAC;IACtD,IAAI,MAAM,YAAY,OAAC,CAAC,SAAS;QAAE,OAAO,WAAW,CAAC;IACtD,IAAI,MAAM,YAAY,OAAC,CAAC,SAAS;QAAE,OAAO,WAAW,CAAC;IACtD,IAAI,MAAM,YAAY,OAAC,CAAC,UAAU;QAAE,OAAO,YAAY,CAAC;IACxD,IAAI,MAAM,YAAY,OAAC,CAAC,UAAU;QAAE,OAAO,YAAY,CAAC;IACxD,IAAI,MAAM,YAAY,OAAC,CAAC,QAAQ;QAAE,OAAO,UAAU,CAAC;IACpD,IAAI,MAAM,YAAY,OAAC,CAAC,eAAe;QAAE,OAAO,iBAAiB,CAAC;IAClE,IAAI,MAAM,YAAY,OAAC,CAAC,SAAS;QAAE,OAAO,WAAW,CAAC;IACtD,IAAI,MAAM,YAAY,OAAC,CAAC,MAAM;QAAE,OAAO,QAAQ,CAAC;IAChD,IAAI,MAAM,YAAY,OAAC,CAAC,MAAM;QAAE,OAAO,QAAQ,CAAC;IAChD,IAAI,MAAM,YAAY,OAAC,CAAC,OAAO;QAAE,OAAO,SAAS,CAAC;IAClD,IAAI,MAAM,YAAY,OAAC,CAAC,SAAS;QAAE,OAAO,WAAW,CAAC;IACtD,IAAI,MAAM,YAAY,OAAC,CAAC,UAAU;QAAE,OAAO,YAAY,CAAC;IAExD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED;;;GAGG;AACH,SAAgB,SAAS,CAAC,MAAe;IACvC,MAAM,QAAQ,GAAG,cAAc,CAAC,MAAM,CAAC,CAAC;IAExC,MAAM,IAAI,GAAqB;QAC7B,IAAI,EAAE,QAAQ;QACd,WAAW,EAAE,MAAM,CAAC,WAAW;KAChC,CAAC;IAEF,QAAQ,QAAQ,EAAE,CAAC;QACjB,KAAK,WAAW,CAAC,CAAC,CAAC;YACjB,MAAM,KAAK,GAAI,MAA2B,CAAC,KAAK,CAAC;YACjD,OAAO;gBACL,GAAG,IAAI;gBACP,KAAK,EAAE,MAAM,CAAC,WAAW,CACvB,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,SAAS,CAAC,CAAY,CAAC,CAAC,CAAC,CACpE;aACF,CAAC;QACJ,CAAC;QAED,KAAK,UAAU;YACb,OAAO;gBACL,GAAG,IAAI;gBACP,OAAO,EAAE,SAAS,CAAE,MAA0B,CAAC,OAAO,CAAC;aACxD,CAAC;QAEJ,KAAK,SAAS;YACZ,OAAO;gBACL,GAAG,IAAI;gBACP,MAAM,EAAG,MAAyB,CAAC,OAAO;aAC3C,CAAC;QAEJ,KAAK,UAAU;YACb,OAAO;gBACL,GAAG,IAAI;gBACP,OAAO,EAAG,MAA0B,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,GAAY,EAAE,EAAE,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;aACnF,CAAC;QAEJ,KAAK,uBAAuB,CAAC,CAAC,CAAC;YAC7B,MAAM,GAAG,GAAI,MAAc,CAAC,IAAI,CAAC;YACjC,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC;gBACxC,CAAC,CAAC,GAAG,CAAC,OAAO;gBACb,CAAC,CAAC,KAAK,CAAC,IAAI,CAAE,GAAG,CAAC,OAAgC,CAAC,MAAM,EAAE,CAAC,CAAC;YAC/D,OAAO;gBACL,GAAG,IAAI;gBACP,aAAa,EAAE,GAAG,CAAC,aAAa;gBAChC,OAAO,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC,GAAY,EAAE,EAAE,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;aACvD,CAAC;QACJ,CAAC;QAED,KAAK,aAAa,CAAC;QACnB,KAAK,aAAa;YAChB,OAAO;gBACL,GAAG,IAAI;gBACP,SAAS,EAAE,SAAS,CAAE,MAAc,CAAC,IAAI,CAAC,SAAS,CAAC;aACrD,CAAC;QAEJ,KAAK,YAAY,CAAC,CAAC,CAAC;YAClB,MAAM,GAAG,GAAI,MAA4B,CAAC,IAAI,CAAC;YAC/C,8DAA8D;YAC9D,MAAM,UAAU,GAAG,OAAO,GAAG,CAAC,YAAY,KAAK,UAAU;gBACvD,CAAC,CAAC,GAAG,CAAC,YAAY,EAAE;gBACpB,CAAC,CAAC,GAAG,CAAC,YAAY,CAAC;YACrB,OAAO;gBACL,GAAG,IAAI;gBACP,SAAS,EAAE,SAAS,CAAC,GAAG,CAAC,SAAS,CAAC;gBACnC,YAAY,EAAE,UAAU;aACzB,CAAC;QACJ,CAAC;QAED,KAAK,YAAY;YACf,OAAO;gBACL,GAAG,IAAI;gBACP,KAAK,EAAG,MAA4B,CAAC,KAAK;aAC3C,CAAC;QAEJ,KAAK,UAAU;YACb,OAAO;gBACL,GAAG,IAAI;gBACP,KAAK,EAAG,MAA0B,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAa,EAAE,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;aACtF,CAAC;QAEJ,KAAK,iBAAiB;YACpB,OAAO;gBACL,GAAG,IAAI;gBACP,IAAI,EAAE,SAAS,CAAE,MAAsC,CAAC,IAAI,CAAC,IAAI,CAAC;gBAClE,KAAK,EAAE,SAAS,CAAE,MAAsC,CAAC,IAAI,CAAC,KAAK,CAAC;aACrE,CAAC;QAEJ,KAAK,WAAW;YACd,OAAO;gBACL,GAAG,IAAI;gBACP,OAAO,EAAE,SAAS,CAAE,MAAc,CAAC,IAAI,CAAC,OAAO,CAAC;gBAChD,SAAS,EAAE,SAAS,CAAE,MAAc,CAAC,IAAI,CAAC,SAAS,CAAC;aACrD,CAAC;QAEJ,KAAK,QAAQ;YACX,OAAO;gBACL,GAAG,IAAI;gBACP,OAAO,EAAE,SAAS,CAAE,MAAc,CAAC,IAAI,CAAC,OAAO,CAAC;gBAChD,SAAS,EAAE,SAAS,CAAE,MAAc,CAAC,IAAI,CAAC,SAAS,CAAC;aACrD,CAAC;QAEJ,KAAK,QAAQ;YACX,OAAO;gBACL,GAAG,IAAI;gBACP,SAAS,EAAE,SAAS,CAAE,MAAc,CAAC,IAAI,CAAC,SAAS,CAAC;aACrD,CAAC;QAEJ,KAAK,YAAY;YACf,OAAO;gBACL,GAAG,IAAI;gBACP,SAAS,EAAE,SAAS,CAAE,MAAc,CAAC,IAAI,CAAC,IAAI,CAAC;aAChD,CAAC;QAEJ;YACE,OAAO,IAAI,CAAC;IAChB,CAAC;AACH,CAAC"}
@@ -1,8 +1,9 @@
1
1
  import { ZodType } from "zod";
2
+ import { getZodTypeName, zodToJson, SerializedSchema } from "./schemaConversion";
3
+ export { getZodTypeName as getSchemaTypeName, zodToJson as getDetailedSchemaStructure };
4
+ export type { SerializedSchema };
2
5
  /**
3
6
  * Convert Zod schema to JSON Schema format (compatible with Claude API)
4
7
  * Note: Claude API doesn't support oneOf/anyOf/allOf at top level of input_schema
5
8
  */
6
9
  export declare function zodToJsonSchema(schema: ZodType<any, any, any>): any;
7
- export declare function getSchemaTypeName(schema: ZodType<any, any, any>): string;
8
- export declare function getDetailedSchemaStructure(schema: ZodType<any, any, any>): any;
@@ -1,10 +1,11 @@
1
1
  "use strict";
2
2
  //File: src/lib/schemaStructure.ts
3
3
  Object.defineProperty(exports, "__esModule", { value: true });
4
+ exports.getDetailedSchemaStructure = exports.getSchemaTypeName = void 0;
4
5
  exports.zodToJsonSchema = zodToJsonSchema;
5
- exports.getSchemaTypeName = getSchemaTypeName;
6
- exports.getDetailedSchemaStructure = getDetailedSchemaStructure;
7
- const zod_1 = require("zod");
6
+ const schemaConversion_1 = require("./schemaConversion");
7
+ Object.defineProperty(exports, "getSchemaTypeName", { enumerable: true, get: function () { return schemaConversion_1.getZodTypeName; } });
8
+ Object.defineProperty(exports, "getDetailedSchemaStructure", { enumerable: true, get: function () { return schemaConversion_1.zodToJson; } });
8
9
  /**
9
10
  * Convert Zod schema to JSON Schema format (compatible with Claude API)
10
11
  * Note: Claude API doesn't support oneOf/anyOf/allOf at top level of input_schema
@@ -23,7 +24,7 @@ function zodToJsonSchema(schema) {
23
24
  return result;
24
25
  }
25
26
  function zodToJsonSchemaInternal(schema) {
26
- const typeName = getSchemaTypeName(schema);
27
+ const typeName = (0, schemaConversion_1.getZodTypeName)(schema);
27
28
  const baseInfo = {};
28
29
  if (schema.description) {
29
30
  baseInfo.description = schema.description;
@@ -37,20 +38,19 @@ function zodToJsonSchemaInternal(schema) {
37
38
  const fieldSchema = value;
38
39
  properties[key] = zodToJsonSchemaInternal(fieldSchema);
39
40
  // Check if required (not optional/nullable/default)
40
- const fieldType = getSchemaTypeName(fieldSchema);
41
+ const fieldType = (0, schemaConversion_1.getZodTypeName)(fieldSchema);
41
42
  if (fieldType !== 'ZodOptional' &&
42
43
  fieldType !== 'ZodNullable' &&
43
44
  fieldType !== 'ZodDefault') {
44
45
  required.push(key);
45
46
  }
46
47
  }
47
- const result = {
48
+ return {
48
49
  type: 'object',
49
50
  properties,
50
51
  ...(required.length > 0 && { required }),
51
52
  ...baseInfo,
52
53
  };
53
- return result;
54
54
  }
55
55
  case "ZodArray": {
56
56
  const element = schema.element;
@@ -70,21 +70,15 @@ function zodToJsonSchemaInternal(schema) {
70
70
  }
71
71
  case "ZodUnion": {
72
72
  const options = schema.options;
73
- // Check if all options are simple primitive types (string, number, boolean)
73
+ // Check if all options are simple primitive types
74
74
  const allPrimitives = options.every((opt) => {
75
- const typeName = getSchemaTypeName(opt);
76
- return typeName === 'ZodString' || typeName === 'ZodNumber' || typeName === 'ZodBoolean';
75
+ const tn = (0, schemaConversion_1.getZodTypeName)(opt);
76
+ return tn === 'ZodString' || tn === 'ZodNumber' || tn === 'ZodBoolean';
77
77
  });
78
78
  if (allPrimitives) {
79
- // For simple type unions, use type: ["string", "number"] format (AI SDK compatible)
80
- const types = options.map((opt) => {
81
- const optSchema = zodToJsonSchemaInternal(opt);
82
- return optSchema.type;
83
- });
84
- return {
85
- type: types,
86
- ...baseInfo,
87
- };
79
+ // For simple type unions, use type: ["string", "number"] format
80
+ const types = options.map((opt) => zodToJsonSchemaInternal(opt).type);
81
+ return { type: types, ...baseInfo };
88
82
  }
89
83
  // For complex unions, fall back to oneOf
90
84
  return {
@@ -97,7 +91,6 @@ function zodToJsonSchemaInternal(schema) {
97
91
  case "ZodDefault": {
98
92
  const innerType = schema._def.innerType;
99
93
  const innerSchema = zodToJsonSchemaInternal(innerType);
100
- // Preserve description from the wrapper if inner doesn't have one
101
94
  if (baseInfo.description && !innerSchema.description) {
102
95
  innerSchema.description = baseInfo.description;
103
96
  }
@@ -108,14 +101,11 @@ function zodToJsonSchemaInternal(schema) {
108
101
  case "ZodNumber": {
109
102
  const numSchema = schema;
110
103
  const result = { type: 'number', ...baseInfo };
111
- // Check if it's an integer type (using isInt property)
112
104
  if (numSchema.isInt) {
113
105
  result.type = 'integer';
114
106
  }
115
- // Extract min/max constraints from checks
116
107
  const checks = numSchema._def.checks || [];
117
108
  for (const check of checks) {
118
- // Access check definition from _zod.def property
119
109
  const checkDef = check._zod?.def || check;
120
110
  const checkType = checkDef.check || check.kind;
121
111
  if (checkType === 'greater_than' || checkType === 'min') {
@@ -157,8 +147,7 @@ function zodToJsonSchemaInternal(schema) {
157
147
  const options = Array.isArray(duDef.options)
158
148
  ? duDef.options
159
149
  : Array.from(duDef.options.values());
160
- // Convert discriminated union to merged object schema for AI SDK compatibility
161
- // AI SDK doesn't support oneOf/anyOf/allOf at top level, so we merge all properties
150
+ // Convert to merged object schema for AI SDK compatibility
162
151
  const mergedProperties = {};
163
152
  const allRequired = new Set();
164
153
  // Add discriminator field as required enum
@@ -178,14 +167,12 @@ function zodToJsonSchemaInternal(schema) {
178
167
  if (optSchema.properties) {
179
168
  for (const [key, value] of Object.entries(optSchema.properties)) {
180
169
  if (key === duDef.discriminator)
181
- continue; // Skip discriminator, already handled
182
- // If property already exists, make it optional (could be from different union branch)
170
+ continue;
183
171
  if (!mergedProperties[key]) {
184
172
  mergedProperties[key] = value;
185
173
  }
186
174
  }
187
175
  }
188
- // Don't mark properties as required if they're not in all branches
189
176
  }
190
177
  return {
191
178
  type: 'object',
@@ -195,11 +182,8 @@ function zodToJsonSchemaInternal(schema) {
195
182
  };
196
183
  }
197
184
  case "ZodEffects": {
198
- // ZodEffects wraps schemas with refinements/transformations
199
- // We extract the underlying schema and convert that instead
200
185
  const innerType = schema._def.schema;
201
186
  const innerSchema = zodToJsonSchemaInternal(innerType);
202
- // Preserve description from the wrapper if inner doesn't have one
203
187
  if (baseInfo.description && !innerSchema.description) {
204
188
  innerSchema.description = baseInfo.description;
205
189
  }
@@ -209,115 +193,4 @@ function zodToJsonSchemaInternal(schema) {
209
193
  return baseInfo;
210
194
  }
211
195
  }
212
- function getSchemaTypeName(schema) {
213
- // Check for ZodEffects using _def.typeName (works across Zod versions)
214
- const typeName = schema._def?.typeName;
215
- if (typeName === "ZodEffects")
216
- return "ZodEffects";
217
- if (schema instanceof zod_1.z.ZodDefault)
218
- return "ZodDefault";
219
- if (schema instanceof zod_1.z.ZodOptional)
220
- return "ZodOptional";
221
- if (schema instanceof zod_1.z.ZodNullable)
222
- return "ZodNullable";
223
- if (schema instanceof zod_1.z.ZodArray)
224
- return "ZodArray";
225
- if (schema instanceof zod_1.z.ZodEnum)
226
- return "ZodEnum";
227
- // Check ZodDiscriminatedUnion before ZodUnion (discriminated unions extend unions)
228
- if (schema instanceof zod_1.z.ZodDiscriminatedUnion)
229
- return "ZodDiscriminatedUnion";
230
- if (schema instanceof zod_1.z.ZodUnion)
231
- return "ZodUnion";
232
- if (schema instanceof zod_1.z.ZodObject)
233
- return "ZodObject";
234
- if (schema instanceof zod_1.z.ZodString)
235
- return "ZodString";
236
- if (schema instanceof zod_1.z.ZodNumber)
237
- return "ZodNumber";
238
- if (schema instanceof zod_1.z.ZodBoolean)
239
- return "ZodBoolean";
240
- if (schema instanceof zod_1.z.ZodLiteral)
241
- return "ZodLiteral";
242
- if (schema instanceof zod_1.z.ZodTuple)
243
- return "ZodTuple";
244
- if (schema instanceof zod_1.z.ZodIntersection)
245
- return "ZodIntersection";
246
- // Add more type checks as needed
247
- return "Unknown";
248
- }
249
- function getDetailedSchemaStructure(schema) {
250
- const typeName = getSchemaTypeName(schema);
251
- const baseInfo = {
252
- type: typeName,
253
- description: schema.description,
254
- };
255
- switch (typeName) {
256
- case "ZodObject":
257
- return {
258
- ...baseInfo,
259
- shape: Object.fromEntries(Object.entries(schema.shape).map(([key, value]) => [
260
- key,
261
- getDetailedSchemaStructure(value),
262
- ])),
263
- };
264
- case "ZodArray":
265
- return {
266
- ...baseInfo,
267
- element: getDetailedSchemaStructure(schema.element),
268
- };
269
- case "ZodEnum":
270
- return {
271
- ...baseInfo,
272
- values: schema.options,
273
- };
274
- case "ZodUnion":
275
- return {
276
- ...baseInfo,
277
- options: schema.options.map((option) => getDetailedSchemaStructure(option)),
278
- };
279
- case "ZodOptional":
280
- return {
281
- ...baseInfo,
282
- innerType: getDetailedSchemaStructure(schema._def.innerType),
283
- };
284
- case "ZodNullable":
285
- return {
286
- ...baseInfo,
287
- innerType: getDetailedSchemaStructure(schema._def.innerType),
288
- };
289
- case "ZodLiteral":
290
- return {
291
- ...baseInfo,
292
- value: schema.value,
293
- };
294
- case "ZodTuple":
295
- return {
296
- ...baseInfo,
297
- items: schema._def.items.map((item) => getDetailedSchemaStructure(item)),
298
- };
299
- case "ZodIntersection":
300
- return {
301
- ...baseInfo,
302
- left: getDetailedSchemaStructure(schema._def.left),
303
- right: getDetailedSchemaStructure(schema._def.right),
304
- };
305
- case "ZodDiscriminatedUnion": {
306
- const duDef = schema._def;
307
- return {
308
- ...baseInfo,
309
- discriminator: duDef.discriminator,
310
- options: Array.from(duDef.options.values()).map((option) => getDetailedSchemaStructure(option)),
311
- };
312
- }
313
- case "ZodDefault":
314
- return {
315
- ...baseInfo,
316
- innerType: getDetailedSchemaStructure(schema._def.innerType),
317
- defaultValue: schema._def.defaultValue,
318
- };
319
- default:
320
- return baseInfo;
321
- }
322
- }
323
196
  //# sourceMappingURL=schemaStructure.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"schemaStructure.js","sourceRoot":"","sources":["../../src/lib/schemaStructure.ts"],"names":[],"mappings":";AAAA,kCAAkC;;AAQlC,0CAcC;AA0ND,8CA2BC;AAED,gEA0GC;AArXD,6BAAiC;AAEjC;;;GAGG;AACH,SAAgB,eAAe,CAAC,MAA8B;IAC5D,MAAM,MAAM,GAAG,uBAAuB,CAAC,MAAM,CAAC,CAAC;IAE/C,+DAA+D;IAC/D,IAAI,MAAM,CAAC,KAAK,IAAI,MAAM,CAAC,KAAK,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;QACjD,OAAO;YACL,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE;YAC7B,QAAQ,EAAE,CAAC,OAAO,CAAC;YACnB,GAAG,CAAC,MAAM,CAAC,WAAW,IAAI,EAAE,WAAW,EAAE,MAAM,CAAC,WAAW,EAAE,CAAC;SAC/D,CAAC;IACJ,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,SAAS,uBAAuB,CAAC,MAA8B;IAC7D,MAAM,QAAQ,GAAG,iBAAiB,CAAC,MAAM,CAAC,CAAC;IAE3C,MAAM,QAAQ,GAAQ,EAAE,CAAC;IACzB,IAAI,MAAM,CAAC,WAAW,EAAE,CAAC;QACvB,QAAQ,CAAC,WAAW,GAAG,MAAM,CAAC,WAAW,CAAC;IAC5C,CAAC;IAED,QAAQ,QAAQ,EAAE,CAAC;QACjB,KAAK,WAAW,CAAC,CAAC,CAAC;YACjB,MAAM,KAAK,GAAI,MAA2B,CAAC,KAAK,CAAC;YACjD,MAAM,UAAU,GAAwB,EAAE,CAAC;YAC3C,MAAM,QAAQ,GAAa,EAAE,CAAC;YAE9B,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;gBACjD,MAAM,WAAW,GAAG,KAA+B,CAAC;gBACpD,UAAU,CAAC,GAAG,CAAC,GAAG,uBAAuB,CAAC,WAAW,CAAC,CAAC;gBAEvD,oDAAoD;gBACpD,MAAM,SAAS,GAAG,iBAAiB,CAAC,WAAW,CAAC,CAAC;gBACjD,IAAI,SAAS,KAAK,aAAa;oBAC3B,SAAS,KAAK,aAAa;oBAC3B,SAAS,KAAK,YAAY,EAAE,CAAC;oBAC/B,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;gBACrB,CAAC;YACH,CAAC;YAED,MAAM,MAAM,GAAG;gBACb,IAAI,EAAE,QAAQ;gBACd,UAAU;gBACV,GAAG,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,IAAI,EAAE,QAAQ,EAAE,CAAC;gBACxC,GAAG,QAAQ;aACZ,CAAC;YAEF,OAAO,MAAM,CAAC;QAChB,CAAC;QAED,KAAK,UAAU,CAAC,CAAC,CAAC;YAChB,MAAM,OAAO,GAAI,MAA0B,CAAC,OAAO,CAAC;YACpD,OAAO;gBACL,IAAI,EAAE,OAAO;gBACb,KAAK,EAAE,uBAAuB,CAAC,OAAO,CAAC;gBACvC,GAAG,QAAQ;aACZ,CAAC;QACJ,CAAC;QAED,KAAK,SAAS,CAAC,CAAC,CAAC;YACf,MAAM,MAAM,GAAI,MAAyB,CAAC,OAAO,CAAC;YAClD,OAAO;gBACL,IAAI,EAAE,QAAQ;gBACd,IAAI,EAAE,MAAM;gBACZ,GAAG,QAAQ;aACZ,CAAC;QACJ,CAAC;QAED,KAAK,UAAU,CAAC,CAAC,CAAC;YAChB,MAAM,OAAO,GAAI,MAA0B,CAAC,OAAO,CAAC;YAEpD,4EAA4E;YAC5E,MAAM,aAAa,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,GAAY,EAAE,EAAE;gBACnD,MAAM,QAAQ,GAAG,iBAAiB,CAAC,GAAG,CAAC,CAAC;gBACxC,OAAO,QAAQ,KAAK,WAAW,IAAI,QAAQ,KAAK,WAAW,IAAI,QAAQ,KAAK,YAAY,CAAC;YAC3F,CAAC,CAAC,CAAC;YAEH,IAAI,aAAa,EAAE,CAAC;gBAClB,oFAAoF;gBACpF,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,GAAY,EAAE,EAAE;oBACzC,MAAM,SAAS,GAAG,uBAAuB,CAAC,GAAG,CAAC,CAAC;oBAC/C,OAAO,SAAS,CAAC,IAAI,CAAC;gBACxB,CAAC,CAAC,CAAC;gBACH,OAAO;oBACL,IAAI,EAAE,KAAK;oBACX,GAAG,QAAQ;iBACZ,CAAC;YACJ,CAAC;YAED,yCAAyC;YACzC,OAAO;gBACL,KAAK,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC,GAAY,EAAE,EAAE,CAAC,uBAAuB,CAAC,GAAG,CAAC,CAAC;gBAClE,GAAG,QAAQ;aACZ,CAAC;QACJ,CAAC;QAED,KAAK,aAAa,CAAC;QACnB,KAAK,aAAa,CAAC;QACnB,KAAK,YAAY,CAAC,CAAC,CAAC;YAClB,MAAM,SAAS,GAAI,MAAc,CAAC,IAAI,CAAC,SAAS,CAAC;YACjD,MAAM,WAAW,GAAG,uBAAuB,CAAC,SAAS,CAAC,CAAC;YACvD,kEAAkE;YAClE,IAAI,QAAQ,CAAC,WAAW,IAAI,CAAC,WAAW,CAAC,WAAW,EAAE,CAAC;gBACrD,WAAW,CAAC,WAAW,GAAG,QAAQ,CAAC,WAAW,CAAC;YACjD,CAAC;YACD,OAAO,WAAW,CAAC;QACrB,CAAC;QAED,KAAK,WAAW;YACd,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,QAAQ,EAAE,CAAC;QAEzC,KAAK,WAAW,CAAC,CAAC,CAAC;YACjB,MAAM,SAAS,GAAG,MAAqB,CAAC;YACxC,MAAM,MAAM,GAAQ,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,QAAQ,EAAE,CAAC;YAEpD,uDAAuD;YACvD,IAAK,SAAiB,CAAC,KAAK,EAAE,CAAC;gBAC7B,MAAM,CAAC,IAAI,GAAG,SAAS,CAAC;YAC1B,CAAC;YAED,0CAA0C;YAC1C,MAAM,MAAM,GAAI,SAAiB,CAAC,IAAI,CAAC,MAAM,IAAI,EAAE,CAAC;YACpD,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;gBAC3B,iDAAiD;gBACjD,MAAM,QAAQ,GAAI,KAAa,CAAC,IAAI,EAAE,GAAG,IAAI,KAAK,CAAC;gBACnD,MAAM,SAAS,GAAG,QAAQ,CAAC,KAAK,IAAI,KAAK,CAAC,IAAI,CAAC;gBAE/C,IAAI,SAAS,KAAK,cAAc,IAAI,SAAS,KAAK,KAAK,EAAE,CAAC;oBACxD,MAAM,CAAC,OAAO,GAAG,QAAQ,CAAC,KAAK,IAAI,KAAK,CAAC,KAAK,CAAC;gBACjD,CAAC;qBAAM,IAAI,SAAS,KAAK,WAAW,IAAI,SAAS,KAAK,KAAK,EAAE,CAAC;oBAC5D,MAAM,CAAC,OAAO,GAAG,QAAQ,CAAC,KAAK,IAAI,KAAK,CAAC,KAAK,CAAC;gBACjD,CAAC;qBAAM,IAAI,SAAS,KAAK,eAAe,IAAI,QAAQ,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;oBAC1E,MAAM,CAAC,IAAI,GAAG,SAAS,CAAC;gBAC1B,CAAC;YACH,CAAC;YAED,OAAO,MAAM,CAAC;QAChB,CAAC;QAED,KAAK,YAAY;YACf,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,GAAG,QAAQ,EAAE,CAAC;QAE1C,KAAK,YAAY,CAAC,CAAC,CAAC;YAClB,MAAM,KAAK,GAAI,MAA4B,CAAC,KAAK,CAAC;YAClD,OAAO,EAAE,IAAI,EAAE,OAAO,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,QAAQ,EAAE,CAAC;QAC3D,CAAC;QAED,KAAK,UAAU,CAAC,CAAC,CAAC;YAChB,MAAM,KAAK,GAAI,MAA0B,CAAC,IAAI,CAAC,KAAK,CAAC;YACrD,OAAO;gBACL,IAAI,EAAE,OAAO;gBACb,KAAK,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,IAAa,EAAE,EAAE,CAAC,uBAAuB,CAAC,IAAI,CAAC,CAAC;gBAClE,GAAG,QAAQ;aACZ,CAAC;QACJ,CAAC;QAED,KAAK,iBAAiB,CAAC,CAAC,CAAC;YACvB,MAAM,IAAI,GAAI,MAAsC,CAAC,IAAI,CAAC,IAAI,CAAC;YAC/D,MAAM,KAAK,GAAI,MAAsC,CAAC,IAAI,CAAC,KAAK,CAAC;YACjE,OAAO;gBACL,KAAK,EAAE,CAAC,uBAAuB,CAAC,IAAI,CAAC,EAAE,uBAAuB,CAAC,KAAK,CAAC,CAAC;gBACtE,GAAG,QAAQ;aACZ,CAAC;QACJ,CAAC;QAED,KAAK,uBAAuB,CAAC,CAAC,CAAC;YAC7B,MAAM,KAAK,GAAI,MAAc,CAAC,IAAI,CAAC;YACnC,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC;gBAC1C,CAAC,CAAC,KAAK,CAAC,OAAO;gBACf,CAAC,CAAC,KAAK,CAAC,IAAI,CAAE,KAAK,CAAC,OAAgC,CAAC,MAAM,EAAE,CAAC,CAAC;YAEjE,+EAA+E;YAC/E,oFAAoF;YACpF,MAAM,gBAAgB,GAAwB,EAAE,CAAC;YACjD,MAAM,WAAW,GAAG,IAAI,GAAG,EAAU,CAAC;YAEtC,2CAA2C;YAC3C,gBAAgB,CAAC,KAAK,CAAC,aAAa,CAAC,GAAG;gBACtC,IAAI,EAAE,QAAQ;gBACd,IAAI,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC,GAAQ,EAAE,EAAE;oBAC7B,MAAM,SAAS,GAAG,uBAAuB,CAAC,GAAG,CAAC,CAAC;oBAC/C,OAAO,SAAS,CAAC,UAAU,EAAE,CAAC,KAAK,CAAC,aAAa,CAAC,EAAE,KAAK;wBAClD,SAAS,CAAC,UAAU,EAAE,CAAC,KAAK,CAAC,aAAa,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;gBAChE,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC;gBAClB,WAAW,EAAE,oCAAoC;aAClD,CAAC;YACF,WAAW,CAAC,GAAG,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;YAErC,wCAAwC;YACxC,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;gBAC7B,MAAM,SAAS,GAAG,uBAAuB,CAAC,MAAM,CAAC,CAAC;gBAClD,IAAI,SAAS,CAAC,UAAU,EAAE,CAAC;oBACzB,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,UAAU,CAAC,EAAE,CAAC;wBAChE,IAAI,GAAG,KAAK,KAAK,CAAC,aAAa;4BAAE,SAAS,CAAC,sCAAsC;wBAEjF,sFAAsF;wBACtF,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,EAAE,CAAC;4BAC3B,gBAAgB,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;wBAChC,CAAC;oBACH,CAAC;gBACH,CAAC;gBACD,mEAAmE;YACrE,CAAC;YAED,OAAO;gBACL,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE,gBAAgB;gBAC5B,QAAQ,EAAE,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC;gBACjC,GAAG,QAAQ;aACZ,CAAC;QACJ,CAAC;QAED,KAAK,YAAY,CAAC,CAAC,CAAC;YAClB,4DAA4D;YAC5D,4DAA4D;YAC5D,MAAM,SAAS,GAAI,MAAc,CAAC,IAAI,CAAC,MAAM,CAAC;YAC9C,MAAM,WAAW,GAAG,uBAAuB,CAAC,SAAS,CAAC,CAAC;YACvD,kEAAkE;YAClE,IAAI,QAAQ,CAAC,WAAW,IAAI,CAAC,WAAW,CAAC,WAAW,EAAE,CAAC;gBACrD,WAAW,CAAC,WAAW,GAAG,QAAQ,CAAC,WAAW,CAAC;YACjD,CAAC;YACD,OAAO,WAAW,CAAC;QACrB,CAAC;QAED;YACE,OAAO,QAAQ,CAAC;IACpB,CAAC;AACH,CAAC;AAED,SAAgB,iBAAiB,CAC/B,MAA8B;IAE9B,uEAAuE;IACvE,MAAM,QAAQ,GAAI,MAAc,CAAC,IAAI,EAAE,QAAQ,CAAC;IAChD,IAAI,QAAQ,KAAK,YAAY;QAAE,OAAO,YAAY,CAAC;IAEnD,IAAI,MAAM,YAAY,OAAC,CAAC,UAAU;QAAE,OAAO,YAAY,CAAC;IACxD,IAAI,MAAM,YAAY,OAAC,CAAC,WAAW;QAAE,OAAO,aAAa,CAAC;IAC1D,IAAI,MAAM,YAAY,OAAC,CAAC,WAAW;QAAE,OAAO,aAAa,CAAC;IAE1D,IAAI,MAAM,YAAY,OAAC,CAAC,QAAQ;QAAE,OAAO,UAAU,CAAC;IACpD,IAAI,MAAM,YAAY,OAAC,CAAC,OAAO;QAAE,OAAO,SAAS,CAAC;IAClD,mFAAmF;IACnF,IAAI,MAAM,YAAY,OAAC,CAAC,qBAAqB;QAAE,OAAO,uBAAuB,CAAC;IAC9E,IAAI,MAAM,YAAY,OAAC,CAAC,QAAQ;QAAE,OAAO,UAAU,CAAC;IACpD,IAAI,MAAM,YAAY,OAAC,CAAC,SAAS;QAAE,OAAO,WAAW,CAAC;IAEtD,IAAI,MAAM,YAAY,OAAC,CAAC,SAAS;QAAE,OAAO,WAAW,CAAC;IACtD,IAAI,MAAM,YAAY,OAAC,CAAC,SAAS;QAAE,OAAO,WAAW,CAAC;IACtD,IAAI,MAAM,YAAY,OAAC,CAAC,UAAU;QAAE,OAAO,YAAY,CAAC;IACxD,IAAI,MAAM,YAAY,OAAC,CAAC,UAAU;QAAE,OAAO,YAAY,CAAC;IACxD,IAAI,MAAM,YAAY,OAAC,CAAC,QAAQ;QAAE,OAAO,UAAU,CAAC;IACpD,IAAI,MAAM,YAAY,OAAC,CAAC,eAAe;QAAE,OAAO,iBAAiB,CAAC;IAElE,iCAAiC;IACjC,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,SAAgB,0BAA0B,CACxC,MAA8B;IAE9B,MAAM,QAAQ,GAAG,iBAAiB,CAAC,MAAM,CAAC,CAAC;IAE3C,MAAM,QAAQ,GAAG;QACf,IAAI,EAAE,QAAQ;QACd,WAAW,EAAE,MAAM,CAAC,WAAW;KAChC,CAAC;IAEF,QAAQ,QAAQ,EAAE,CAAC;QACjB,KAAK,WAAW;YACd,OAAO;gBACL,GAAG,QAAQ;gBACX,KAAK,EAAE,MAAM,CAAC,WAAW,CACvB,MAAM,CAAC,OAAO,CAAE,MAA2B,CAAC,KAAK,CAAC,CAAC,GAAG,CACpD,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC;oBAChB,GAAG;oBACH,0BAA0B,CACxB,KAA+B,CAChC;iBACF,CACF,CACF;aACF,CAAC;QACJ,KAAK,UAAU;YACb,OAAO;gBACL,GAAG,QAAQ;gBACX,OAAO,EAAE,0BAA0B,CAChC,MAA0B,CAAC,OAAO,CACpC;aACF,CAAC;QACJ,KAAK,SAAS;YACZ,OAAO;gBACL,GAAG,QAAQ;gBACX,MAAM,EAAG,MAAyB,CAAC,OAAO;aAC3C,CAAC;QACJ,KAAK,UAAU;YACb,OAAO;gBACL,GAAG,QAAQ;gBACX,OAAO,EAAG,MAA0B,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,MAAe,EAAE,EAAE,CACnE,0BAA0B,CAAC,MAAM,CAAC,CACnC;aACF,CAAC;QACJ,KAAK,aAAa;YAChB,OAAO;gBACL,GAAG,QAAQ;gBACX,SAAS,EAAE,0BAA0B,CAClC,MAA6B,CAAC,IAAI,CAAC,SAAS,CAC9C;aACF,CAAC;QACJ,KAAK,aAAa;YAChB,OAAO;gBACL,GAAG,QAAQ;gBACX,SAAS,EAAE,0BAA0B,CAClC,MAA6B,CAAC,IAAI,CAAC,SAAS,CAC9C;aACF,CAAC;QACJ,KAAK,YAAY;YACf,OAAO;gBACL,GAAG,QAAQ;gBACX,KAAK,EAAG,MAA4B,CAAC,KAAK;aAC3C,CAAC;QACJ,KAAK,UAAU;YACb,OAAO;gBACL,GAAG,QAAQ;gBACX,KAAK,EAAG,MAA0B,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAa,EAAE,EAAE,CAClE,0BAA0B,CAAC,IAAI,CAAC,CACjC;aACF,CAAC;QACJ,KAAK,iBAAiB;YACpB,OAAO;gBACL,GAAG,QAAQ;gBACX,IAAI,EAAE,0BAA0B,CAC7B,MAAsC,CAAC,IAAI,CAAC,IAAI,CAClD;gBACD,KAAK,EAAE,0BAA0B,CAC9B,MAAsC,CAAC,IAAI,CAAC,KAAK,CACnD;aACF,CAAC;QACJ,KAAK,uBAAuB,CAAC,CAAC,CAAC;YAK7B,MAAM,KAAK,GAAI,MAA4B,CAAC,IAA6B,CAAC;YAC1E,OAAO;gBACL,GAAG,QAAQ;gBACX,aAAa,EAAE,KAAK,CAAC,aAAa;gBAClC,OAAO,EAAE,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,CAC7C,CAAC,MAAe,EAAE,EAAE,CAAC,0BAA0B,CAAC,MAAM,CAAC,CACxD;aACF,CAAC;QACJ,CAAC;QACD,KAAK,YAAY;YACf,OAAO;gBACL,GAAG,QAAQ;gBACX,SAAS,EAAE,0BAA0B,CAClC,MAA4B,CAAC,IAAI,CAAC,SAAS,CAC7C;gBACD,YAAY,EAAG,MAA4B,CAAC,IAAI,CAAC,YAAY;aAC9D,CAAC;QAEJ;YACE,OAAO,QAAQ,CAAC;IACpB,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"schemaStructure.js","sourceRoot":"","sources":["../../src/lib/schemaStructure.ts"],"names":[],"mappings":"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"}
@@ -60,10 +60,16 @@ function requireScope(requiredScope) {
60
60
  }
61
61
  // Add a helper function to sign SSE events
62
62
  function signedStreamSSE(c, privateKey, config, handler) {
63
+ const sseId = `${config.identity.agentId}-${Date.now()}`;
64
+ console.log(`[SSE Server] Starting SSE stream ${sseId}`);
63
65
  return (0, streaming_1.streamSSE)(c, async (stream) => {
66
+ console.log(`[SSE Server] Stream ${sseId} opened`);
67
+ let eventCount = 0;
64
68
  // Wrap the original stream with a version that signs each event
65
69
  const signedStream = {
66
70
  writeSSE: async (event) => {
71
+ eventCount++;
72
+ console.log(`[SSE Server] Stream ${sseId} writing event #${eventCount}: ${event.event}`);
67
73
  try {
68
74
  // Get the current timestamp
69
75
  const timestamp = Date.now().toString();
@@ -96,14 +102,17 @@ function signedStreamSSE(c, privateKey, config, handler) {
96
102
  dataWithSignature = `{"data":${event.data},"_signature":{"signature":"${signature}","timestamp":"${timestamp}","agentId":"${config.identity.agentId}","orgId":"${config.identity.orgId}","address":"${config.identity.publicKey}"}}`;
97
103
  }
98
104
  // Send the signed event
99
- return stream.writeSSE({
105
+ console.log(`[SSE Server] Stream ${sseId} sending signed event ${event.event}`);
106
+ const writeResult = await stream.writeSSE({
100
107
  event: event.event,
101
108
  data: dataWithSignature,
102
109
  id: event.id
103
110
  });
111
+ console.log(`[SSE Server] Stream ${sseId} event ${event.event} sent successfully`);
112
+ return writeResult;
104
113
  }
105
114
  catch (error) {
106
- console.error('[SSE Signing Error]', error);
115
+ console.error(`[SSE Server] Stream ${sseId} signing error:`, error);
107
116
  // Try to send the event unsigned as fallback
108
117
  try {
109
118
  return stream.writeSSE({
@@ -120,7 +129,14 @@ function signedStreamSSE(c, privateKey, config, handler) {
120
129
  }
121
130
  };
122
131
  // Call the original handler with our signed stream
123
- await handler(signedStream);
132
+ try {
133
+ await handler(signedStream);
134
+ console.log(`[SSE Server] Stream ${sseId} handler completed, total events: ${eventCount}`);
135
+ }
136
+ catch (handlerError) {
137
+ console.error(`[SSE Server] Stream ${sseId} handler error:`, handlerError);
138
+ throw handlerError;
139
+ }
124
140
  });
125
141
  }
126
142
  function setupHttpServer(config, tools, services, toolboxes, metadata, privateKey, contexts, widgets, datasources = [], agents = []) {