@lssm/lib.contracts 0.0.0-canary-20251212230121 → 0.0.0-canary-20251215220103

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (87) hide show
  1. package/dist/contract-registry/index.js +1 -0
  2. package/dist/contract-registry/schemas.js +1 -0
  3. package/dist/contract-registry/types.js +0 -0
  4. package/dist/docs/index.js +1 -1
  5. package/dist/docs/tech/auth/better-auth-nextjs.docblock.js +58 -0
  6. package/dist/docs/tech/contracts/README.docblock.js +1 -1
  7. package/dist/docs/tech/contracts/openapi-export.docblock.js +38 -0
  8. package/dist/docs/tech/mcp-endpoints.docblock.js +1 -1
  9. package/dist/docs/tech/studio/learning-events.docblock.js +1 -0
  10. package/dist/docs/tech/studio/learning-journeys.docblock.js +57 -0
  11. package/dist/docs/tech/studio/platform-admin-panel.docblock.js +63 -0
  12. package/dist/docs/tech/studio/project-access-teams.docblock.js +36 -0
  13. package/dist/docs/tech/studio/project-routing.docblock.js +1 -0
  14. package/dist/docs/tech/studio/sandbox-unlogged.docblock.js +20 -0
  15. package/dist/docs/tech/studio/team-invitations.docblock.js +65 -0
  16. package/dist/docs/tech/studio/workspace-ops.docblock.js +1 -0
  17. package/dist/docs/tech/studio/workspaces.docblock.js +41 -0
  18. package/dist/docs/tech/telemetry-ingest.docblock.js +122 -0
  19. package/dist/docs/tech/vscode-extension.docblock.js +68 -0
  20. package/dist/index.js +1 -1
  21. package/dist/integrations/docs/integrations.docblock.js +1 -101
  22. package/dist/integrations/index.js +1 -1
  23. package/dist/integrations/providers/impls/index.js +1 -1
  24. package/dist/integrations/providers/impls/provider-factory.js +1 -1
  25. package/dist/integrations/providers/index.js +1 -1
  26. package/dist/integrations/providers/registry.js +1 -0
  27. package/dist/integrations/secrets/aws-secret-manager.js +1 -0
  28. package/dist/integrations/secrets/index.js +1 -1
  29. package/dist/integrations/secrets/scaleway-secret-manager.js +1 -0
  30. package/dist/jobs/define-job.js +1 -1
  31. package/dist/jobs/gcp-cloud-tasks.js +1 -1
  32. package/dist/jobs/gcp-pubsub.js +1 -1
  33. package/dist/jobs/handlers/index.js +1 -1
  34. package/dist/jobs/index.js +1 -1
  35. package/dist/jobs/memory-queue.js +1 -1
  36. package/dist/jobs/queue.js +1 -0
  37. package/dist/jobs/scaleway-sqs-queue.js +1 -1
  38. package/dist/node_modules/@pothos/plugin-prisma/esm/util/datamodel.js +1 -1
  39. package/dist/node_modules/@pothos/plugin-prisma/esm/util/map-query.js +1 -1
  40. package/dist/openapi.js +1 -0
  41. package/dist/server/index.js +1 -1
  42. package/dist/server/mcp/createMcpServer.js +1 -0
  43. package/dist/server/mcp/mcpTypes.js +0 -0
  44. package/dist/server/mcp/registerPresentations.js +1 -0
  45. package/dist/server/mcp/registerPrompts.js +3 -0
  46. package/dist/server/mcp/registerResources.js +1 -0
  47. package/dist/server/mcp/registerTools.js +1 -0
  48. package/dist/server/provider-mcp.js +1 -1
  49. package/package.json +65 -11
  50. package/dist/node_modules/zod-to-json-schema/dist/esm/Options.js +0 -1
  51. package/dist/node_modules/zod-to-json-schema/dist/esm/Refs.js +0 -1
  52. package/dist/node_modules/zod-to-json-schema/dist/esm/errorMessages.js +0 -1
  53. package/dist/node_modules/zod-to-json-schema/dist/esm/getRelativePath.js +0 -1
  54. package/dist/node_modules/zod-to-json-schema/dist/esm/index.js +0 -1
  55. package/dist/node_modules/zod-to-json-schema/dist/esm/parseDef.js +0 -1
  56. package/dist/node_modules/zod-to-json-schema/dist/esm/parsers/any.js +0 -1
  57. package/dist/node_modules/zod-to-json-schema/dist/esm/parsers/array.js +0 -1
  58. package/dist/node_modules/zod-to-json-schema/dist/esm/parsers/bigint.js +0 -1
  59. package/dist/node_modules/zod-to-json-schema/dist/esm/parsers/boolean.js +0 -1
  60. package/dist/node_modules/zod-to-json-schema/dist/esm/parsers/branded.js +0 -1
  61. package/dist/node_modules/zod-to-json-schema/dist/esm/parsers/catch.js +0 -1
  62. package/dist/node_modules/zod-to-json-schema/dist/esm/parsers/date.js +0 -1
  63. package/dist/node_modules/zod-to-json-schema/dist/esm/parsers/default.js +0 -1
  64. package/dist/node_modules/zod-to-json-schema/dist/esm/parsers/effects.js +0 -1
  65. package/dist/node_modules/zod-to-json-schema/dist/esm/parsers/enum.js +0 -1
  66. package/dist/node_modules/zod-to-json-schema/dist/esm/parsers/intersection.js +0 -1
  67. package/dist/node_modules/zod-to-json-schema/dist/esm/parsers/literal.js +0 -1
  68. package/dist/node_modules/zod-to-json-schema/dist/esm/parsers/map.js +0 -1
  69. package/dist/node_modules/zod-to-json-schema/dist/esm/parsers/nativeEnum.js +0 -1
  70. package/dist/node_modules/zod-to-json-schema/dist/esm/parsers/never.js +0 -1
  71. package/dist/node_modules/zod-to-json-schema/dist/esm/parsers/null.js +0 -1
  72. package/dist/node_modules/zod-to-json-schema/dist/esm/parsers/nullable.js +0 -1
  73. package/dist/node_modules/zod-to-json-schema/dist/esm/parsers/number.js +0 -1
  74. package/dist/node_modules/zod-to-json-schema/dist/esm/parsers/object.js +0 -1
  75. package/dist/node_modules/zod-to-json-schema/dist/esm/parsers/optional.js +0 -1
  76. package/dist/node_modules/zod-to-json-schema/dist/esm/parsers/pipeline.js +0 -1
  77. package/dist/node_modules/zod-to-json-schema/dist/esm/parsers/promise.js +0 -1
  78. package/dist/node_modules/zod-to-json-schema/dist/esm/parsers/readonly.js +0 -1
  79. package/dist/node_modules/zod-to-json-schema/dist/esm/parsers/record.js +0 -1
  80. package/dist/node_modules/zod-to-json-schema/dist/esm/parsers/set.js +0 -1
  81. package/dist/node_modules/zod-to-json-schema/dist/esm/parsers/string.js +0 -3
  82. package/dist/node_modules/zod-to-json-schema/dist/esm/parsers/tuple.js +0 -1
  83. package/dist/node_modules/zod-to-json-schema/dist/esm/parsers/undefined.js +0 -1
  84. package/dist/node_modules/zod-to-json-schema/dist/esm/parsers/union.js +0 -1
  85. package/dist/node_modules/zod-to-json-schema/dist/esm/parsers/unknown.js +0 -1
  86. package/dist/node_modules/zod-to-json-schema/dist/esm/selectParser.js +0 -1
  87. package/dist/node_modules/zod-to-json-schema/dist/esm/zodToJsonSchema.js +0 -1
package/package.json CHANGED
@@ -1,12 +1,13 @@
1
1
  {
2
2
  "name": "@lssm/lib.contracts",
3
- "version": "0.0.0-canary-20251212230121",
3
+ "version": "0.0.0-canary-20251215220103",
4
4
  "scripts": {
5
5
  "publish:pkg": "bun publish --tolerate-republish --ignore-scripts --verbose",
6
6
  "build": "bun build:bundle && bun build:types",
7
7
  "build:bundle": "tsdown",
8
8
  "build:types": "tsc --noEmit",
9
9
  "dev": "bun build:bundle --watch",
10
+ "registry:build": "bun run scripts/build-registry.ts",
10
11
  "clean": "rimraf dist .turbo",
11
12
  "lint": "bun lint:fix",
12
13
  "lint:fix": "eslint src --fix",
@@ -18,19 +19,20 @@
18
19
  "@lssm/tool.typescript": "workspace:*",
19
20
  "@types/express": "^5.0.3",
20
21
  "@types/turndown": "^5.0.6",
21
- "tsdown": "^0.17.0",
22
+ "tsdown": "^0.17.4",
22
23
  "typescript": "^5.9.3"
23
24
  },
24
25
  "dependencies": {
25
- "@aws-sdk/client-sqs": "^3.946.0",
26
- "@elevenlabs/elevenlabs-js": "^2.26.0",
26
+ "@aws-sdk/client-secrets-manager": "^3.950.0",
27
+ "@aws-sdk/client-sqs": "^3.948.0",
28
+ "@elevenlabs/elevenlabs-js": "^2.27.0",
27
29
  "@google-cloud/secret-manager": "^6.1.1",
28
30
  "@google-cloud/storage": "^7.18.0",
29
31
  "@lssm/lib.schema": "workspace:*",
30
32
  "@mistralai/mistralai": "^1.2.3",
31
33
  "@modelcontextprotocol/sdk": "^1.24.3",
32
34
  "@qdrant/js-client-rest": "^1.16.2",
33
- "googleapis": "^167.0.0",
35
+ "googleapis": "^168.0.0",
34
36
  "mcp-handler": "^1.0.4",
35
37
  "postmark": "^4.0.4",
36
38
  "stripe": "^19.1.0",
@@ -41,14 +43,14 @@
41
43
  "peerDependencies": {
42
44
  "@pothos/core": "^4.9.1",
43
45
  "@pothos/plugin-relay": "^4.4.3",
44
- "elysia": "^1.4.18",
46
+ "elysia": "^1.4.19",
45
47
  "express": "^5.2.1",
46
48
  "graphql-scalars": "^1.24.2",
47
- "next": "16.0.7",
48
- "@blocknote/core": "^0.44.0",
49
- "@blocknote/react": "^0.44.0",
50
- "react": "^19.2.1",
51
- "react-dom": "^19.2.1",
49
+ "next": "16.0.10",
50
+ "@blocknote/core": "^0.44.2",
51
+ "@blocknote/react": "^0.44.2",
52
+ "react": "^19.2.3",
53
+ "react-dom": "^19.2.3",
52
54
  "react-hook-form": "^7.68.0",
53
55
  "@hookform/resolvers": "^5.2.2"
54
56
  },
@@ -81,6 +83,9 @@
81
83
  "./client/react/drivers/shadcn": "./src/client/react/drivers/shadcn.ts",
82
84
  "./client/react/feature-render": "./src/client/react/feature-render.ts",
83
85
  "./client/react/form-render": "./src/client/react/form-render.tsx",
86
+ "./contract-registry": "./src/contract-registry/index.ts",
87
+ "./contract-registry/schemas": "./src/contract-registry/schemas.ts",
88
+ "./contract-registry/types": "./src/contract-registry/types.ts",
84
89
  "./contracts-adapter-hydration": "./src/contracts-adapter-hydration.ts",
85
90
  "./contracts-adapter-input": "./src/contracts-adapter-input.ts",
86
91
  "./data-views": "./src/data-views.ts",
@@ -94,9 +99,11 @@
94
99
  "./docs/PUBLISHING.docblock": "./src/docs/PUBLISHING.docblock.ts",
95
100
  "./docs/registry": "./src/docs/registry.ts",
96
101
  "./docs/tech-contracts.docs": "./src/docs/tech-contracts.docs.ts",
102
+ "./docs/tech/auth/better-auth-nextjs.docblock": "./src/docs/tech/auth/better-auth-nextjs.docblock.ts",
97
103
  "./docs/tech/contracts/create-subscription.docblock": "./src/docs/tech/contracts/create-subscription.docblock.ts",
98
104
  "./docs/tech/contracts/graphql-typed-outputs.docblock": "./src/docs/tech/contracts/graphql-typed-outputs.docblock.ts",
99
105
  "./docs/tech/contracts/migrations.docblock": "./src/docs/tech/contracts/migrations.docblock.ts",
106
+ "./docs/tech/contracts/openapi-export.docblock": "./src/docs/tech/contracts/openapi-export.docblock.ts",
100
107
  "./docs/tech/contracts/ops-to-presentation-linking.docblock": "./src/docs/tech/contracts/ops-to-presentation-linking.docblock.ts",
101
108
  "./docs/tech/contracts/overlays.docblock": "./src/docs/tech/contracts/overlays.docblock.ts",
102
109
  "./docs/tech/contracts/README.docblock": "./src/docs/tech/contracts/README.docblock.ts",
@@ -112,7 +119,18 @@
112
119
  "./docs/tech/PHASE_5_ZERO_TOUCH_OPERATIONS.docblock": "./src/docs/tech/PHASE_5_ZERO_TOUCH_OPERATIONS.docblock.ts",
113
120
  "./docs/tech/presentation-runtime.docblock": "./src/docs/tech/presentation-runtime.docblock.ts",
114
121
  "./docs/tech/schema/README.docblock": "./src/docs/tech/schema/README.docblock.ts",
122
+ "./docs/tech/studio/learning-events.docblock": "./src/docs/tech/studio/learning-events.docblock.ts",
123
+ "./docs/tech/studio/learning-journeys.docblock": "./src/docs/tech/studio/learning-journeys.docblock.ts",
124
+ "./docs/tech/studio/platform-admin-panel.docblock": "./src/docs/tech/studio/platform-admin-panel.docblock.ts",
125
+ "./docs/tech/studio/project-access-teams.docblock": "./src/docs/tech/studio/project-access-teams.docblock.ts",
126
+ "./docs/tech/studio/project-routing.docblock": "./src/docs/tech/studio/project-routing.docblock.ts",
127
+ "./docs/tech/studio/sandbox-unlogged.docblock": "./src/docs/tech/studio/sandbox-unlogged.docblock.ts",
128
+ "./docs/tech/studio/team-invitations.docblock": "./src/docs/tech/studio/team-invitations.docblock.ts",
129
+ "./docs/tech/studio/workspace-ops.docblock": "./src/docs/tech/studio/workspace-ops.docblock.ts",
130
+ "./docs/tech/studio/workspaces.docblock": "./src/docs/tech/studio/workspaces.docblock.ts",
131
+ "./docs/tech/telemetry-ingest.docblock": "./src/docs/tech/telemetry-ingest.docblock.ts",
115
132
  "./docs/tech/templates/runtime.docblock": "./src/docs/tech/templates/runtime.docblock.ts",
133
+ "./docs/tech/vscode-extension.docblock": "./src/docs/tech/vscode-extension.docblock.ts",
116
134
  "./docs/tech/workflows/overview.docblock": "./src/docs/tech/workflows/overview.docblock.ts",
117
135
  "./docs/types": "./src/docs/types.ts",
118
136
  "./events": "./src/events.ts",
@@ -167,6 +185,7 @@
167
185
  "./integrations/providers/postmark": "./src/integrations/providers/postmark.ts",
168
186
  "./integrations/providers/powens": "./src/integrations/providers/powens.ts",
169
187
  "./integrations/providers/qdrant": "./src/integrations/providers/qdrant.ts",
188
+ "./integrations/providers/registry": "./src/integrations/providers/registry.ts",
170
189
  "./integrations/providers/sms": "./src/integrations/providers/sms.ts",
171
190
  "./integrations/providers/storage": "./src/integrations/providers/storage.ts",
172
191
  "./integrations/providers/stripe": "./src/integrations/providers/stripe.ts",
@@ -175,10 +194,12 @@
175
194
  "./integrations/providers/voice": "./src/integrations/providers/voice.ts",
176
195
  "./integrations/runtime": "./src/integrations/runtime.ts",
177
196
  "./integrations/secrets": "./src/integrations/secrets/index.ts",
197
+ "./integrations/secrets/aws-secret-manager": "./src/integrations/secrets/aws-secret-manager.ts",
178
198
  "./integrations/secrets/env-secret-provider": "./src/integrations/secrets/env-secret-provider.ts",
179
199
  "./integrations/secrets/gcp-secret-manager": "./src/integrations/secrets/gcp-secret-manager.ts",
180
200
  "./integrations/secrets/manager": "./src/integrations/secrets/manager.ts",
181
201
  "./integrations/secrets/provider": "./src/integrations/secrets/provider.ts",
202
+ "./integrations/secrets/scaleway-secret-manager": "./src/integrations/secrets/scaleway-secret-manager.ts",
182
203
  "./integrations/spec": "./src/integrations/spec.ts",
183
204
  "./jobs": "./src/jobs/index.ts",
184
205
  "./jobs/define-job": "./src/jobs/define-job.ts",
@@ -217,6 +238,7 @@
217
238
  "./markdown": "./src/markdown.ts",
218
239
  "./migrations": "./src/migrations.ts",
219
240
  "./onboarding-base": "./src/onboarding-base.ts",
241
+ "./openapi": "./src/openapi.ts",
220
242
  "./openbanking/docs/openbanking.docblock": "./src/openbanking/docs/openbanking.docblock.ts",
221
243
  "./ownership": "./src/ownership.ts",
222
244
  "./policy/docs/policy.docblock": "./src/policy/docs/policy.docblock.ts",
@@ -242,6 +264,12 @@
242
264
  "./schema-to-markdown": "./src/schema-to-markdown.ts",
243
265
  "./server": "./src/server/index.ts",
244
266
  "./server/graphql-pothos": "./src/server/graphql-pothos.ts",
267
+ "./server/mcp/createMcpServer": "./src/server/mcp/createMcpServer.ts",
268
+ "./server/mcp/mcpTypes": "./src/server/mcp/mcpTypes.ts",
269
+ "./server/mcp/registerPresentations": "./src/server/mcp/registerPresentations.ts",
270
+ "./server/mcp/registerPrompts": "./src/server/mcp/registerPrompts.ts",
271
+ "./server/mcp/registerResources": "./src/server/mcp/registerResources.ts",
272
+ "./server/mcp/registerTools": "./src/server/mcp/registerTools.ts",
245
273
  "./server/provider-mcp": "./src/server/provider-mcp.ts",
246
274
  "./server/rest-elysia": "./src/server/rest-elysia.ts",
247
275
  "./server/rest-express": "./src/server/rest-express.ts",
@@ -299,6 +327,9 @@
299
327
  "./client/react/drivers/shadcn": "./dist/client/react/drivers/shadcn.js",
300
328
  "./client/react/feature-render": "./dist/client/react/feature-render.js",
301
329
  "./client/react/form-render": "./dist/client/react/form-render.js",
330
+ "./contract-registry": "./dist/contract-registry/index.js",
331
+ "./contract-registry/schemas": "./dist/contract-registry/schemas.js",
332
+ "./contract-registry/types": "./dist/contract-registry/types.js",
302
333
  "./contracts-adapter-hydration": "./dist/contracts-adapter-hydration.js",
303
334
  "./contracts-adapter-input": "./dist/contracts-adapter-input.js",
304
335
  "./data-views": "./dist/data-views.js",
@@ -312,9 +343,11 @@
312
343
  "./docs/PUBLISHING.docblock": "./dist/docs/PUBLISHING.docblock.js",
313
344
  "./docs/registry": "./dist/docs/registry.js",
314
345
  "./docs/tech-contracts.docs": "./dist/docs/tech-contracts.docs.js",
346
+ "./docs/tech/auth/better-auth-nextjs.docblock": "./dist/docs/tech/auth/better-auth-nextjs.docblock.js",
315
347
  "./docs/tech/contracts/create-subscription.docblock": "./dist/docs/tech/contracts/create-subscription.docblock.js",
316
348
  "./docs/tech/contracts/graphql-typed-outputs.docblock": "./dist/docs/tech/contracts/graphql-typed-outputs.docblock.js",
317
349
  "./docs/tech/contracts/migrations.docblock": "./dist/docs/tech/contracts/migrations.docblock.js",
350
+ "./docs/tech/contracts/openapi-export.docblock": "./dist/docs/tech/contracts/openapi-export.docblock.js",
318
351
  "./docs/tech/contracts/ops-to-presentation-linking.docblock": "./dist/docs/tech/contracts/ops-to-presentation-linking.docblock.js",
319
352
  "./docs/tech/contracts/overlays.docblock": "./dist/docs/tech/contracts/overlays.docblock.js",
320
353
  "./docs/tech/contracts/README.docblock": "./dist/docs/tech/contracts/README.docblock.js",
@@ -330,7 +363,18 @@
330
363
  "./docs/tech/PHASE_5_ZERO_TOUCH_OPERATIONS.docblock": "./dist/docs/tech/PHASE_5_ZERO_TOUCH_OPERATIONS.docblock.js",
331
364
  "./docs/tech/presentation-runtime.docblock": "./dist/docs/tech/presentation-runtime.docblock.js",
332
365
  "./docs/tech/schema/README.docblock": "./dist/docs/tech/schema/README.docblock.js",
366
+ "./docs/tech/studio/learning-events.docblock": "./dist/docs/tech/studio/learning-events.docblock.js",
367
+ "./docs/tech/studio/learning-journeys.docblock": "./dist/docs/tech/studio/learning-journeys.docblock.js",
368
+ "./docs/tech/studio/platform-admin-panel.docblock": "./dist/docs/tech/studio/platform-admin-panel.docblock.js",
369
+ "./docs/tech/studio/project-access-teams.docblock": "./dist/docs/tech/studio/project-access-teams.docblock.js",
370
+ "./docs/tech/studio/project-routing.docblock": "./dist/docs/tech/studio/project-routing.docblock.js",
371
+ "./docs/tech/studio/sandbox-unlogged.docblock": "./dist/docs/tech/studio/sandbox-unlogged.docblock.js",
372
+ "./docs/tech/studio/team-invitations.docblock": "./dist/docs/tech/studio/team-invitations.docblock.js",
373
+ "./docs/tech/studio/workspace-ops.docblock": "./dist/docs/tech/studio/workspace-ops.docblock.js",
374
+ "./docs/tech/studio/workspaces.docblock": "./dist/docs/tech/studio/workspaces.docblock.js",
375
+ "./docs/tech/telemetry-ingest.docblock": "./dist/docs/tech/telemetry-ingest.docblock.js",
333
376
  "./docs/tech/templates/runtime.docblock": "./dist/docs/tech/templates/runtime.docblock.js",
377
+ "./docs/tech/vscode-extension.docblock": "./dist/docs/tech/vscode-extension.docblock.js",
334
378
  "./docs/tech/workflows/overview.docblock": "./dist/docs/tech/workflows/overview.docblock.js",
335
379
  "./docs/types": "./dist/docs/types.js",
336
380
  "./events": "./dist/events.js",
@@ -385,6 +429,7 @@
385
429
  "./integrations/providers/postmark": "./dist/integrations/providers/postmark.js",
386
430
  "./integrations/providers/powens": "./dist/integrations/providers/powens.js",
387
431
  "./integrations/providers/qdrant": "./dist/integrations/providers/qdrant.js",
432
+ "./integrations/providers/registry": "./dist/integrations/providers/registry.js",
388
433
  "./integrations/providers/sms": "./dist/integrations/providers/sms.js",
389
434
  "./integrations/providers/storage": "./dist/integrations/providers/storage.js",
390
435
  "./integrations/providers/stripe": "./dist/integrations/providers/stripe.js",
@@ -393,10 +438,12 @@
393
438
  "./integrations/providers/voice": "./dist/integrations/providers/voice.js",
394
439
  "./integrations/runtime": "./dist/integrations/runtime.js",
395
440
  "./integrations/secrets": "./dist/integrations/secrets/index.js",
441
+ "./integrations/secrets/aws-secret-manager": "./dist/integrations/secrets/aws-secret-manager.js",
396
442
  "./integrations/secrets/env-secret-provider": "./dist/integrations/secrets/env-secret-provider.js",
397
443
  "./integrations/secrets/gcp-secret-manager": "./dist/integrations/secrets/gcp-secret-manager.js",
398
444
  "./integrations/secrets/manager": "./dist/integrations/secrets/manager.js",
399
445
  "./integrations/secrets/provider": "./dist/integrations/secrets/provider.js",
446
+ "./integrations/secrets/scaleway-secret-manager": "./dist/integrations/secrets/scaleway-secret-manager.js",
400
447
  "./integrations/spec": "./dist/integrations/spec.js",
401
448
  "./jobs": "./dist/jobs/index.js",
402
449
  "./jobs/define-job": "./dist/jobs/define-job.js",
@@ -435,6 +482,7 @@
435
482
  "./markdown": "./dist/markdown.js",
436
483
  "./migrations": "./dist/migrations.js",
437
484
  "./onboarding-base": "./dist/onboarding-base.js",
485
+ "./openapi": "./dist/openapi.js",
438
486
  "./openbanking/docs/openbanking.docblock": "./dist/openbanking/docs/openbanking.docblock.js",
439
487
  "./ownership": "./dist/ownership.js",
440
488
  "./policy/docs/policy.docblock": "./dist/policy/docs/policy.docblock.js",
@@ -460,6 +508,12 @@
460
508
  "./schema-to-markdown": "./dist/schema-to-markdown.js",
461
509
  "./server": "./dist/server/index.js",
462
510
  "./server/graphql-pothos": "./dist/server/graphql-pothos.js",
511
+ "./server/mcp/createMcpServer": "./dist/server/mcp/createMcpServer.js",
512
+ "./server/mcp/mcpTypes": "./dist/server/mcp/mcpTypes.js",
513
+ "./server/mcp/registerPresentations": "./dist/server/mcp/registerPresentations.js",
514
+ "./server/mcp/registerPrompts": "./dist/server/mcp/registerPrompts.js",
515
+ "./server/mcp/registerResources": "./dist/server/mcp/registerResources.js",
516
+ "./server/mcp/registerTools": "./dist/server/mcp/registerTools.js",
463
517
  "./server/provider-mcp": "./dist/server/provider-mcp.js",
464
518
  "./server/rest-elysia": "./dist/server/rest-elysia.js",
465
519
  "./server/rest-express": "./dist/server/rest-express.js",
@@ -1 +0,0 @@
1
- const e=Symbol(`Let zodToJsonSchema decide on which parser to use`),t={name:void 0,$refStrategy:`root`,basePath:[`#`],effectStrategy:`input`,pipeStrategy:`all`,dateStrategy:`format:date-time`,mapStrategy:`entries`,removeAdditionalStrategy:`passthrough`,allowedAdditionalProperties:!0,rejectedAdditionalProperties:!1,definitionPath:`definitions`,target:`jsonSchema7`,strictUnions:!1,definitions:{},errorMessages:!1,markdownDescription:!1,patternStrategy:`escape`,applyRegexFlags:!1,emailStrategy:`format:email`,base64Strategy:`contentEncoding:base64`,nameStrategy:`ref`,openAiAnyTypeName:`OpenAiAnyType`},n=e=>typeof e==`string`?{...t,name:e}:{...t,...e};export{t as defaultOptions,n as getDefaultOptions,e as ignoreOverride};
@@ -1 +0,0 @@
1
- import{getDefaultOptions as e}from"./Options.js";const t=t=>{let n=e(t),r=n.name===void 0?n.basePath:[...n.basePath,n.definitionPath,n.name];return{...n,flags:{hasReferencedOpenAiAnyType:!1},currentPath:r,propertyPath:void 0,seen:new Map(Object.entries(n.definitions).map(([e,t])=>[t._def,{def:t._def,path:[...n.basePath,n.definitionPath,e],jsonSchema:void 0}]))}};export{t as getRefs};
@@ -1 +0,0 @@
1
- function e(e,t,n,r){r?.errorMessages&&n&&(e.errorMessage={...e.errorMessage,[t]:n})}function t(t,n,r,i,a){t[n]=r,e(t,n,i,a)}export{e as addErrorMessage,t as setResponseValueAndErrors};
@@ -1 +0,0 @@
1
- const e=(e,t)=>{let n=0;for(;n<e.length&&n<t.length&&e[n]===t[n];n++);return[(e.length-n).toString(),...t.slice(n)].join(`/`)};export{e as getRelativePath};
@@ -1 +0,0 @@
1
- import{defaultOptions as e,getDefaultOptions as t,ignoreOverride as n}from"./Options.js";import{getRefs as r}from"./Refs.js";import{addErrorMessage as i,setResponseValueAndErrors as a}from"./errorMessages.js";import{getRelativePath as o}from"./getRelativePath.js";import{parseAnyDef as s}from"./parsers/any.js";import{parseArrayDef as c}from"./parsers/array.js";import{parseBigintDef as l}from"./parsers/bigint.js";import{parseBooleanDef as u}from"./parsers/boolean.js";import{parseBrandedDef as d}from"./parsers/branded.js";import{parseCatchDef as f}from"./parsers/catch.js";import{parseDateDef as p}from"./parsers/date.js";import{parseDefaultDef as m}from"./parsers/default.js";import{parseEffectsDef as h}from"./parsers/effects.js";import{parseEnumDef as g}from"./parsers/enum.js";import{parseIntersectionDef as _}from"./parsers/intersection.js";import{parseLiteralDef as v}from"./parsers/literal.js";import{parseStringDef as y,zodPatterns as b}from"./parsers/string.js";import{parseRecordDef as x}from"./parsers/record.js";import{parseMapDef as S}from"./parsers/map.js";import{parseNativeEnumDef as C}from"./parsers/nativeEnum.js";import{parseNeverDef as w}from"./parsers/never.js";import{parseNullDef as T}from"./parsers/null.js";import{parseUnionDef as E,primitiveMappings as D}from"./parsers/union.js";import{parseNullableDef as O}from"./parsers/nullable.js";import{parseNumberDef as k}from"./parsers/number.js";import{parseObjectDef as A}from"./parsers/object.js";import{parseOptionalDef as j}from"./parsers/optional.js";import{parsePipelineDef as M}from"./parsers/pipeline.js";import{parsePromiseDef as N}from"./parsers/promise.js";import{parseSetDef as P}from"./parsers/set.js";import{parseTupleDef as F}from"./parsers/tuple.js";import{parseUndefinedDef as I}from"./parsers/undefined.js";import{parseUnknownDef as L}from"./parsers/unknown.js";import{parseReadonlyDef as R}from"./parsers/readonly.js";import{selectParser as z}from"./selectParser.js";import{parseDef as B}from"./parseDef.js";import{zodToJsonSchema as V}from"./zodToJsonSchema.js";
@@ -1 +0,0 @@
1
- import{ignoreOverride as e}from"./Options.js";import{getRelativePath as t}from"./getRelativePath.js";import{parseAnyDef as n}from"./parsers/any.js";import{selectParser as r}from"./selectParser.js";function i(t,n,s=!1){let c=n.seen.get(t);if(n.override){let r=n.override?.(t,n,c,s);if(r!==e)return r}if(c&&!s){let e=a(c,n);if(e!==void 0)return e}let l={def:t,path:n.currentPath,jsonSchema:void 0};n.seen.set(t,l);let u=r(t,t.typeName,n),d=typeof u==`function`?i(u(),n):u;if(d&&o(t,n,d),n.postProcess){let e=n.postProcess(d,t,n);return l.jsonSchema=d,e}return l.jsonSchema=d,d}const a=(e,r)=>{switch(r.$refStrategy){case`root`:return{$ref:e.path.join(`/`)};case`relative`:return{$ref:t(r.currentPath,e.path)};case`none`:case`seen`:return e.path.length<r.currentPath.length&&e.path.every((e,t)=>r.currentPath[t]===e)?(console.warn(`Recursive reference detected at ${r.currentPath.join(`/`)}! Defaulting to any`),n(r)):r.$refStrategy===`seen`?n(r):void 0}},o=(e,t,n)=>(e.description&&(n.description=e.description,t.markdownDescription&&(n.markdownDescription=e.description)),n);export{i as parseDef};
@@ -1 +0,0 @@
1
- import{getRelativePath as e}from"../getRelativePath.js";function t(t){if(t.target!==`openAi`)return{};let n=[...t.basePath,t.definitionPath,t.openAiAnyTypeName];return t.flags.hasReferencedOpenAiAnyType=!0,{$ref:t.$refStrategy===`relative`?e(n,t.currentPath):n.join(`/`)}}export{t as parseAnyDef};
@@ -1 +0,0 @@
1
- import{setResponseValueAndErrors as e}from"../errorMessages.js";import{parseDef as t}from"../parseDef.js";import{ZodFirstPartyTypeKind as n}from"zod/v3";function r(r,i){let a={type:`array`};return r.type?._def&&r.type?._def?.typeName!==n.ZodAny&&(a.items=t(r.type._def,{...i,currentPath:[...i.currentPath,`items`]})),r.minLength&&e(a,`minItems`,r.minLength.value,r.minLength.message,i),r.maxLength&&e(a,`maxItems`,r.maxLength.value,r.maxLength.message,i),r.exactLength&&(e(a,`minItems`,r.exactLength.value,r.exactLength.message,i),e(a,`maxItems`,r.exactLength.value,r.exactLength.message,i)),a}export{r as parseArrayDef};
@@ -1 +0,0 @@
1
- import{setResponseValueAndErrors as e}from"../errorMessages.js";function t(t,n){let r={type:`integer`,format:`int64`};if(!t.checks)return r;for(let i of t.checks)switch(i.kind){case`min`:n.target===`jsonSchema7`?i.inclusive?e(r,`minimum`,i.value,i.message,n):e(r,`exclusiveMinimum`,i.value,i.message,n):(i.inclusive||(r.exclusiveMinimum=!0),e(r,`minimum`,i.value,i.message,n));break;case`max`:n.target===`jsonSchema7`?i.inclusive?e(r,`maximum`,i.value,i.message,n):e(r,`exclusiveMaximum`,i.value,i.message,n):(i.inclusive||(r.exclusiveMaximum=!0),e(r,`maximum`,i.value,i.message,n));break;case`multipleOf`:e(r,`multipleOf`,i.value,i.message,n);break}return r}export{t as parseBigintDef};
@@ -1 +0,0 @@
1
- function e(){return{type:`boolean`}}export{e as parseBooleanDef};
@@ -1 +0,0 @@
1
- import{parseDef as e}from"../parseDef.js";function t(t,n){return e(t.type._def,n)}export{t as parseBrandedDef};
@@ -1 +0,0 @@
1
- import{parseDef as e}from"../parseDef.js";const t=(t,n)=>e(t.innerType._def,n);export{t as parseCatchDef};
@@ -1 +0,0 @@
1
- import{setResponseValueAndErrors as e}from"../errorMessages.js";function t(e,r,i){let a=i??r.dateStrategy;if(Array.isArray(a))return{anyOf:a.map((n,i)=>t(e,r,n))};switch(a){case`string`:case`format:date-time`:return{type:`string`,format:`date-time`};case`format:date`:return{type:`string`,format:`date`};case`integer`:return n(e,r)}}const n=(t,n)=>{let r={type:`integer`,format:`unix-time`};if(n.target===`openApi3`)return r;for(let i of t.checks)switch(i.kind){case`min`:e(r,`minimum`,i.value,i.message,n);break;case`max`:e(r,`maximum`,i.value,i.message,n);break}return r};export{t as parseDateDef};
@@ -1 +0,0 @@
1
- import{parseDef as e}from"../parseDef.js";function t(t,n){return{...e(t.innerType._def,n),default:t.defaultValue()}}export{t as parseDefaultDef};
@@ -1 +0,0 @@
1
- import{parseAnyDef as e}from"./any.js";import{parseDef as t}from"../parseDef.js";function n(n,r){return r.effectStrategy===`input`?t(n.schema._def,r):e(r)}export{n as parseEffectsDef};
@@ -1 +0,0 @@
1
- function e(e){return{type:`string`,enum:Array.from(e.values)}}export{e as parseEnumDef};
@@ -1 +0,0 @@
1
- import{parseDef as e}from"../parseDef.js";const t=e=>`type`in e&&e.type===`string`?!1:`allOf`in e;function n(n,r){let i=[e(n.left._def,{...r,currentPath:[...r.currentPath,`allOf`,`0`]}),e(n.right._def,{...r,currentPath:[...r.currentPath,`allOf`,`1`]})].filter(e=>!!e),a=r.target===`jsonSchema2019-09`?{unevaluatedProperties:!1}:void 0,o=[];return i.forEach(e=>{if(t(e))o.push(...e.allOf),e.unevaluatedProperties===void 0&&(a=void 0);else{let t=e;if(`additionalProperties`in e&&e.additionalProperties===!1){let{additionalProperties:n,...r}=e;t=r}else a=void 0;o.push(t)}}),o.length?{allOf:o,...a}:void 0}export{n as parseIntersectionDef};
@@ -1 +0,0 @@
1
- function e(e,t){let n=typeof e.value;return n!==`bigint`&&n!==`number`&&n!==`boolean`&&n!==`string`?{type:Array.isArray(e.value)?`array`:`object`}:t.target===`openApi3`?{type:n===`bigint`?`integer`:n,enum:[e.value]}:{type:n===`bigint`?`integer`:n,const:e.value}}export{e as parseLiteralDef};
@@ -1 +0,0 @@
1
- import{parseAnyDef as e}from"./any.js";import{parseRecordDef as t}from"./record.js";import{parseDef as n}from"../parseDef.js";function r(r,i){return i.mapStrategy===`record`?t(r,i):{type:`array`,maxItems:125,items:{type:`array`,items:[n(r.keyType._def,{...i,currentPath:[...i.currentPath,`items`,`items`,`0`]})||e(i),n(r.valueType._def,{...i,currentPath:[...i.currentPath,`items`,`items`,`1`]})||e(i)],minItems:2,maxItems:2}}}export{r as parseMapDef};
@@ -1 +0,0 @@
1
- function e(e){let t=e.values,n=Object.keys(e.values).filter(e=>typeof t[t[e]]!=`number`).map(e=>t[e]),r=Array.from(new Set(n.map(e=>typeof e)));return{type:r.length===1?r[0]===`string`?`string`:`number`:[`string`,`number`],enum:n}}export{e as parseNativeEnumDef};
@@ -1 +0,0 @@
1
- import{parseAnyDef as e}from"./any.js";function t(t){return t.target===`openAi`?void 0:{not:e({...t,currentPath:[...t.currentPath,`not`]})}}export{t as parseNeverDef};
@@ -1 +0,0 @@
1
- function e(e){return e.target===`openApi3`?{enum:[`null`],nullable:!0}:{type:`null`}}export{e as parseNullDef};
@@ -1 +0,0 @@
1
- import{primitiveMappings as e}from"./union.js";import{parseDef as t}from"../parseDef.js";function n(n,r){if([`ZodString`,`ZodNumber`,`ZodBigInt`,`ZodBoolean`,`ZodNull`].includes(n.innerType._def.typeName)&&(!n.innerType._def.checks||!n.innerType._def.checks.length))return r.target===`openApi3`?{type:e[n.innerType._def.typeName],nullable:!0}:{type:[e[n.innerType._def.typeName],`null`]};if(r.target===`openApi3`){let e=t(n.innerType._def,{...r,currentPath:[...r.currentPath]});return e&&`$ref`in e?{allOf:[e],nullable:!0}:e&&{...e,nullable:!0}}let i=t(n.innerType._def,{...r,currentPath:[...r.currentPath,`anyOf`,`0`]});return i&&{anyOf:[i,{type:`null`}]}}export{n as parseNullableDef};
@@ -1 +0,0 @@
1
- import{addErrorMessage as e,setResponseValueAndErrors as t}from"../errorMessages.js";function n(n,r){let i={type:`number`};if(!n.checks)return i;for(let a of n.checks)switch(a.kind){case`int`:i.type=`integer`,e(i,`type`,a.message,r);break;case`min`:r.target===`jsonSchema7`?a.inclusive?t(i,`minimum`,a.value,a.message,r):t(i,`exclusiveMinimum`,a.value,a.message,r):(a.inclusive||(i.exclusiveMinimum=!0),t(i,`minimum`,a.value,a.message,r));break;case`max`:r.target===`jsonSchema7`?a.inclusive?t(i,`maximum`,a.value,a.message,r):t(i,`exclusiveMaximum`,a.value,a.message,r):(a.inclusive||(i.exclusiveMaximum=!0),t(i,`maximum`,a.value,a.message,r));break;case`multipleOf`:t(i,`multipleOf`,a.value,a.message,r);break}return i}export{n as parseNumberDef};
@@ -1 +0,0 @@
1
- import{parseDef as e}from"../parseDef.js";function t(t,i){let a=i.target===`openAi`,o={type:`object`,properties:{}},s=[],c=t.shape();for(let t in c){let n=c[t];if(n===void 0||n._def===void 0)continue;let l=r(n);l&&a&&(n._def.typeName===`ZodOptional`&&(n=n._def.innerType),n.isNullable()||(n=n.nullable()),l=!1);let u=e(n._def,{...i,currentPath:[...i.currentPath,`properties`,t],propertyPath:[...i.currentPath,`properties`,t]});u!==void 0&&(o.properties[t]=u,l||s.push(t))}s.length&&(o.required=s);let l=n(t,i);return l!==void 0&&(o.additionalProperties=l),o}function n(t,n){if(t.catchall._def.typeName!==`ZodNever`)return e(t.catchall._def,{...n,currentPath:[...n.currentPath,`additionalProperties`]});switch(t.unknownKeys){case`passthrough`:return n.allowedAdditionalProperties;case`strict`:return n.rejectedAdditionalProperties;case`strip`:return n.removeAdditionalStrategy===`strict`?n.allowedAdditionalProperties:n.rejectedAdditionalProperties}}function r(e){try{return e.isOptional()}catch{return!0}}export{t as parseObjectDef};
@@ -1 +0,0 @@
1
- import{parseAnyDef as e}from"./any.js";import{parseDef as t}from"../parseDef.js";const n=(n,r)=>{if(r.currentPath.toString()===r.propertyPath?.toString())return t(n.innerType._def,r);let i=t(n.innerType._def,{...r,currentPath:[...r.currentPath,`anyOf`,`1`]});return i?{anyOf:[{not:e(r)},i]}:e(r)};export{n as parseOptionalDef};
@@ -1 +0,0 @@
1
- import{parseDef as e}from"../parseDef.js";const t=(t,n)=>{if(n.pipeStrategy===`input`)return e(t.in._def,n);if(n.pipeStrategy===`output`)return e(t.out._def,n);let r=e(t.in._def,{...n,currentPath:[...n.currentPath,`allOf`,`0`]});return{allOf:[r,e(t.out._def,{...n,currentPath:[...n.currentPath,`allOf`,r?`1`:`0`]})].filter(e=>e!==void 0)}};export{t as parsePipelineDef};
@@ -1 +0,0 @@
1
- import{parseDef as e}from"../parseDef.js";function t(t,n){return e(t.type._def,n)}export{t as parsePromiseDef};
@@ -1 +0,0 @@
1
- import{parseDef as e}from"../parseDef.js";const t=(t,n)=>e(t.innerType._def,n);export{t as parseReadonlyDef};
@@ -1 +0,0 @@
1
- import{parseAnyDef as e}from"./any.js";import{parseBrandedDef as t}from"./branded.js";import{parseStringDef as n}from"./string.js";import{parseDef as r}from"../parseDef.js";import{ZodFirstPartyTypeKind as i}from"zod/v3";function a(a,o){if(o.target===`openAi`&&console.warn(`Warning: OpenAI may not support records in schemas! Try an array of key-value pairs instead.`),o.target===`openApi3`&&a.keyType?._def.typeName===i.ZodEnum)return{type:`object`,required:a.keyType._def.values,properties:a.keyType._def.values.reduce((t,n)=>({...t,[n]:r(a.valueType._def,{...o,currentPath:[...o.currentPath,`properties`,n]})??e(o)}),{}),additionalProperties:o.rejectedAdditionalProperties};let s={type:`object`,additionalProperties:r(a.valueType._def,{...o,currentPath:[...o.currentPath,`additionalProperties`]})??o.allowedAdditionalProperties};if(o.target===`openApi3`)return s;if(a.keyType?._def.typeName===i.ZodString&&a.keyType._def.checks?.length){let{type:e,...t}=n(a.keyType._def,o);return{...s,propertyNames:t}}else if(a.keyType?._def.typeName===i.ZodEnum)return{...s,propertyNames:{enum:a.keyType._def.values}};else if(a.keyType?._def.typeName===i.ZodBranded&&a.keyType._def.type._def.typeName===i.ZodString&&a.keyType._def.type._def.checks?.length){let{type:e,...n}=t(a.keyType._def,o);return{...s,propertyNames:n}}return s}export{a as parseRecordDef};
@@ -1 +0,0 @@
1
- import{setResponseValueAndErrors as e}from"../errorMessages.js";import{parseDef as t}from"../parseDef.js";function n(n,r){let i={type:`array`,uniqueItems:!0,items:t(n.valueType._def,{...r,currentPath:[...r.currentPath,`items`]})};return n.minSize&&e(i,`minItems`,n.minSize.value,n.minSize.message,r),n.maxSize&&e(i,`maxItems`,n.maxSize.value,n.maxSize.message,r),i}export{n as parseSetDef};
@@ -1,3 +0,0 @@
1
- import{setResponseValueAndErrors as e}from"../errorMessages.js";let t;const n={cuid:/^[cC][^\s-]{8,}$/,cuid2:/^[0-9a-z]+$/,ulid:/^[0-9A-HJKMNP-TV-Z]{26}$/,email:/^(?!\.)(?!.*\.\.)([a-zA-Z0-9_'+\-\.]*)[a-zA-Z0-9_+-]@([a-zA-Z0-9][a-zA-Z0-9\-]*\.)+[a-zA-Z]{2,}$/,emoji:()=>(t===void 0&&(t=RegExp(`^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$`,`u`)),t),uuid:/^[0-9a-fA-F]{8}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{12}$/,ipv4:/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,ipv4Cidr:/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/(3[0-2]|[12]?[0-9])$/,ipv6:/^(([a-f0-9]{1,4}:){7}|::([a-f0-9]{1,4}:){0,6}|([a-f0-9]{1,4}:){1}:([a-f0-9]{1,4}:){0,5}|([a-f0-9]{1,4}:){2}:([a-f0-9]{1,4}:){0,4}|([a-f0-9]{1,4}:){3}:([a-f0-9]{1,4}:){0,3}|([a-f0-9]{1,4}:){4}:([a-f0-9]{1,4}:){0,2}|([a-f0-9]{1,4}:){5}:([a-f0-9]{1,4}:){0,1})([a-f0-9]{1,4}|(((25[0-5])|(2[0-4][0-9])|(1[0-9]{2})|([0-9]{1,2}))\.){3}((25[0-5])|(2[0-4][0-9])|(1[0-9]{2})|([0-9]{1,2})))$/,ipv6Cidr:/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,base64:/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,base64url:/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,nanoid:/^[a-zA-Z0-9_-]{21}$/,jwt:/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/};function r(t,r){let a={type:`string`};if(t.checks)for(let o of t.checks)switch(o.kind){case`min`:e(a,`minLength`,typeof a.minLength==`number`?Math.max(a.minLength,o.value):o.value,o.message,r);break;case`max`:e(a,`maxLength`,typeof a.maxLength==`number`?Math.min(a.maxLength,o.value):o.value,o.message,r);break;case`email`:switch(r.emailStrategy){case`format:email`:s(a,`email`,o.message,r);break;case`format:idn-email`:s(a,`idn-email`,o.message,r);break;case`pattern:zod`:c(a,n.email,o.message,r);break}break;case`url`:s(a,`uri`,o.message,r);break;case`uuid`:s(a,`uuid`,o.message,r);break;case`regex`:c(a,o.regex,o.message,r);break;case`cuid`:c(a,n.cuid,o.message,r);break;case`cuid2`:c(a,n.cuid2,o.message,r);break;case`startsWith`:c(a,RegExp(`^${i(o.value,r)}`),o.message,r);break;case`endsWith`:c(a,RegExp(`${i(o.value,r)}$`),o.message,r);break;case`datetime`:s(a,`date-time`,o.message,r);break;case`date`:s(a,`date`,o.message,r);break;case`time`:s(a,`time`,o.message,r);break;case`duration`:s(a,`duration`,o.message,r);break;case`length`:e(a,`minLength`,typeof a.minLength==`number`?Math.max(a.minLength,o.value):o.value,o.message,r),e(a,`maxLength`,typeof a.maxLength==`number`?Math.min(a.maxLength,o.value):o.value,o.message,r);break;case`includes`:c(a,RegExp(i(o.value,r)),o.message,r);break;case`ip`:o.version!==`v6`&&s(a,`ipv4`,o.message,r),o.version!==`v4`&&s(a,`ipv6`,o.message,r);break;case`base64url`:c(a,n.base64url,o.message,r);break;case`jwt`:c(a,n.jwt,o.message,r);break;case`cidr`:o.version!==`v6`&&c(a,n.ipv4Cidr,o.message,r),o.version!==`v4`&&c(a,n.ipv6Cidr,o.message,r);break;case`emoji`:c(a,n.emoji(),o.message,r);break;case`ulid`:c(a,n.ulid,o.message,r);break;case`base64`:switch(r.base64Strategy){case`format:binary`:s(a,`binary`,o.message,r);break;case`contentEncoding:base64`:e(a,`contentEncoding`,`base64`,o.message,r);break;case`pattern:zod`:c(a,n.base64,o.message,r);break}break;case`nanoid`:c(a,n.nanoid,o.message,r);case`toLowerCase`:case`toUpperCase`:case`trim`:break;default:(e=>{})(o)}return a}function i(e,t){return t.patternStrategy===`escape`?o(e):e}const a=new Set(`ABCDEFGHIJKLMNOPQRSTUVXYZabcdefghijklmnopqrstuvxyz0123456789`);function o(e){let t=``;for(let n=0;n<e.length;n++)a.has(e[n])||(t+=`\\`),t+=e[n];return t}function s(t,n,r,i){t.format||t.anyOf?.some(e=>e.format)?(t.anyOf||=[],t.format&&(t.anyOf.push({format:t.format,...t.errorMessage&&i.errorMessages&&{errorMessage:{format:t.errorMessage.format}}}),delete t.format,t.errorMessage&&(delete t.errorMessage.format,Object.keys(t.errorMessage).length===0&&delete t.errorMessage)),t.anyOf.push({format:n,...r&&i.errorMessages&&{errorMessage:{format:r}}})):e(t,`format`,n,r,i)}function c(t,n,r,i){t.pattern||t.allOf?.some(e=>e.pattern)?(t.allOf||=[],t.pattern&&(t.allOf.push({pattern:t.pattern,...t.errorMessage&&i.errorMessages&&{errorMessage:{pattern:t.errorMessage.pattern}}}),delete t.pattern,t.errorMessage&&(delete t.errorMessage.pattern,Object.keys(t.errorMessage).length===0&&delete t.errorMessage)),t.allOf.push({pattern:l(n,i),...r&&i.errorMessages&&{errorMessage:{pattern:r}}})):e(t,`pattern`,l(n,i),r,i)}function l(e,t){if(!t.applyRegexFlags||!e.flags)return e.source;let n={i:e.flags.includes(`i`),m:e.flags.includes(`m`),s:e.flags.includes(`s`)},r=n.i?e.source.toLowerCase():e.source,i=``,a=!1,o=!1,s=!1;for(let e=0;e<r.length;e++){if(a){i+=r[e],a=!1;continue}if(n.i){if(o){if(r[e].match(/[a-z]/)){s?(i+=r[e],i+=`${r[e-2]}-${r[e]}`.toUpperCase(),s=!1):r[e+1]===`-`&&r[e+2]?.match(/[a-z]/)?(i+=r[e],s=!0):i+=`${r[e]}${r[e].toUpperCase()}`;continue}}else if(r[e].match(/[a-z]/)){i+=`[${r[e]}${r[e].toUpperCase()}]`;continue}}if(n.m){if(r[e]===`^`){i+=`(^|(?<=[\r
2
- ]))`;continue}else if(r[e]===`$`){i+=`($|(?=[\r
3
- ]))`;continue}}if(n.s&&r[e]===`.`){i+=o?`${r[e]}\r\n`:`[${r[e]}\r\n]`;continue}i+=r[e],r[e]===`\\`?a=!0:o&&r[e]===`]`?o=!1:!o&&r[e]===`[`&&(o=!0)}try{new RegExp(i)}catch{return console.warn(`Could not convert regex pattern at ${t.currentPath.join(`/`)} to a flag-independent form! Falling back to the flag-ignorant source`),e.source}return i}export{r as parseStringDef,n as zodPatterns};
@@ -1 +0,0 @@
1
- import{parseDef as e}from"../parseDef.js";function t(t,n){return t.rest?{type:`array`,minItems:t.items.length,items:t.items.map((t,r)=>e(t._def,{...n,currentPath:[...n.currentPath,`items`,`${r}`]})).reduce((e,t)=>t===void 0?e:[...e,t],[]),additionalItems:e(t.rest._def,{...n,currentPath:[...n.currentPath,`additionalItems`]})}:{type:`array`,minItems:t.items.length,maxItems:t.items.length,items:t.items.map((t,r)=>e(t._def,{...n,currentPath:[...n.currentPath,`items`,`${r}`]})).reduce((e,t)=>t===void 0?e:[...e,t],[])}}export{t as parseTupleDef};
@@ -1 +0,0 @@
1
- import{parseAnyDef as e}from"./any.js";function t(t){return{not:e(t)}}export{t as parseUndefinedDef};
@@ -1 +0,0 @@
1
- import{parseDef as e}from"../parseDef.js";const t={ZodString:`string`,ZodNumber:`number`,ZodBigInt:`integer`,ZodBoolean:`boolean`,ZodNull:`null`};function n(e,n){if(n.target===`openApi3`)return r(e,n);let i=e.options instanceof Map?Array.from(e.options.values()):e.options;if(i.every(e=>e._def.typeName in t&&(!e._def.checks||!e._def.checks.length))){let e=i.reduce((e,n)=>{let r=t[n._def.typeName];return r&&!e.includes(r)?[...e,r]:e},[]);return{type:e.length>1?e:e[0]}}else if(i.every(e=>e._def.typeName===`ZodLiteral`&&!e.description)){let e=i.reduce((e,t)=>{let n=typeof t._def.value;switch(n){case`string`:case`number`:case`boolean`:return[...e,n];case`bigint`:return[...e,`integer`];case`object`:if(t._def.value===null)return[...e,`null`];case`symbol`:case`undefined`:case`function`:default:return e}},[]);if(e.length===i.length){let t=e.filter((e,t,n)=>n.indexOf(e)===t);return{type:t.length>1?t:t[0],enum:i.reduce((e,t)=>e.includes(t._def.value)?e:[...e,t._def.value],[])}}}else if(i.every(e=>e._def.typeName===`ZodEnum`))return{type:`string`,enum:i.reduce((e,t)=>[...e,...t._def.values.filter(t=>!e.includes(t))],[])};return r(e,n)}const r=(t,n)=>{let r=(t.options instanceof Map?Array.from(t.options.values()):t.options).map((t,r)=>e(t._def,{...n,currentPath:[...n.currentPath,`anyOf`,`${r}`]})).filter(e=>!!e&&(!n.strictUnions||typeof e==`object`&&Object.keys(e).length>0));return r.length?{anyOf:r}:void 0};export{n as parseUnionDef,t as primitiveMappings};
@@ -1 +0,0 @@
1
- import{parseAnyDef as e}from"./any.js";function t(t){return e(t)}export{t as parseUnknownDef};
@@ -1 +0,0 @@
1
- import{parseAnyDef as e}from"./parsers/any.js";import{parseArrayDef as t}from"./parsers/array.js";import{parseBigintDef as n}from"./parsers/bigint.js";import{parseBooleanDef as r}from"./parsers/boolean.js";import{parseBrandedDef as i}from"./parsers/branded.js";import{parseCatchDef as a}from"./parsers/catch.js";import{parseDateDef as o}from"./parsers/date.js";import{parseDefaultDef as s}from"./parsers/default.js";import{parseEffectsDef as c}from"./parsers/effects.js";import{parseEnumDef as l}from"./parsers/enum.js";import{parseIntersectionDef as u}from"./parsers/intersection.js";import{parseLiteralDef as d}from"./parsers/literal.js";import{parseStringDef as f}from"./parsers/string.js";import{parseRecordDef as p}from"./parsers/record.js";import{parseMapDef as m}from"./parsers/map.js";import{parseNativeEnumDef as h}from"./parsers/nativeEnum.js";import{parseNeverDef as g}from"./parsers/never.js";import{parseNullDef as _}from"./parsers/null.js";import{parseUnionDef as v}from"./parsers/union.js";import{parseNullableDef as y}from"./parsers/nullable.js";import{parseNumberDef as b}from"./parsers/number.js";import{parseObjectDef as x}from"./parsers/object.js";import{parseOptionalDef as S}from"./parsers/optional.js";import{parsePipelineDef as C}from"./parsers/pipeline.js";import{parsePromiseDef as w}from"./parsers/promise.js";import{parseSetDef as T}from"./parsers/set.js";import{parseTupleDef as E}from"./parsers/tuple.js";import{parseUndefinedDef as D}from"./parsers/undefined.js";import{parseUnknownDef as O}from"./parsers/unknown.js";import{parseReadonlyDef as k}from"./parsers/readonly.js";import{ZodFirstPartyTypeKind as A}from"zod/v3";const j=(j,M,N)=>{switch(M){case A.ZodString:return f(j,N);case A.ZodNumber:return b(j,N);case A.ZodObject:return x(j,N);case A.ZodBigInt:return n(j,N);case A.ZodBoolean:return r();case A.ZodDate:return o(j,N);case A.ZodUndefined:return D(N);case A.ZodNull:return _(N);case A.ZodArray:return t(j,N);case A.ZodUnion:case A.ZodDiscriminatedUnion:return v(j,N);case A.ZodIntersection:return u(j,N);case A.ZodTuple:return E(j,N);case A.ZodRecord:return p(j,N);case A.ZodLiteral:return d(j,N);case A.ZodEnum:return l(j);case A.ZodNativeEnum:return h(j);case A.ZodNullable:return y(j,N);case A.ZodOptional:return S(j,N);case A.ZodMap:return m(j,N);case A.ZodSet:return T(j,N);case A.ZodLazy:return()=>j.getter()._def;case A.ZodPromise:return w(j,N);case A.ZodNaN:case A.ZodNever:return g(N);case A.ZodEffects:return c(j,N);case A.ZodAny:return e(N);case A.ZodUnknown:return O(N);case A.ZodDefault:return s(j,N);case A.ZodBranded:return i(j,N);case A.ZodReadonly:return k(j,N);case A.ZodCatch:return a(j,N);case A.ZodPipeline:return C(j,N);case A.ZodFunction:case A.ZodVoid:case A.ZodSymbol:return;default:return(e=>void 0)(M)}};export{j as selectParser};
@@ -1 +0,0 @@
1
- import{getRefs as e}from"./Refs.js";import{parseAnyDef as t}from"./parsers/any.js";import{parseDef as n}from"./parseDef.js";const r=(r,i)=>{let a=e(i),o=typeof i==`object`&&i.definitions?Object.entries(i.definitions).reduce((e,[r,i])=>({...e,[r]:n(i._def,{...a,currentPath:[...a.basePath,a.definitionPath,r]},!0)??t(a)}),{}):void 0,s=typeof i==`string`?i:i?.nameStrategy===`title`?void 0:i?.name,c=n(r._def,s===void 0?a:{...a,currentPath:[...a.basePath,a.definitionPath,s]},!1)??t(a),l=typeof i==`object`&&i.name!==void 0&&i.nameStrategy===`title`?i.name:void 0;l!==void 0&&(c.title=l),a.flags.hasReferencedOpenAiAnyType&&(o||={},o[a.openAiAnyTypeName]||(o[a.openAiAnyTypeName]={type:[`string`,`number`,`integer`,`boolean`,`array`,`null`],items:{$ref:a.$refStrategy===`relative`?`1`:[...a.basePath,a.definitionPath,a.openAiAnyTypeName].join(`/`)}}));let u=s===void 0?o?{...c,[a.definitionPath]:o}:c:{$ref:[...a.$refStrategy===`relative`?[]:a.basePath,a.definitionPath,s].join(`/`),[a.definitionPath]:{...o,[s]:c}};return a.target===`jsonSchema7`?u.$schema=`http://json-schema.org/draft-07/schema#`:(a.target===`jsonSchema2019-09`||a.target===`openAi`)&&(u.$schema=`https://json-schema.org/draft/2019-09/schema#`),a.target===`openAi`&&(`anyOf`in u||`oneOf`in u||`allOf`in u||`type`in u&&Array.isArray(u.type))&&console.warn(`Warning: OpenAI may not support schemas with unions as roots! Try wrapping it in an object property.`),u};export{r as zodToJsonSchema};