@undefineds.co/xpod 0.4.20 → 0.4.27

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 (1354) hide show
  1. package/config/cloud.json +54 -11
  2. package/config/components-ignore.json +13 -8
  3. package/config/local.json +32 -1
  4. package/config/xpod.base.json +271 -1
  5. package/config/xpod.json +17 -1
  6. package/dist/agent-directory/client/AgentDirectoryClient.d.ts +54 -0
  7. package/dist/agent-directory/client/AgentDirectoryClient.js +152 -0
  8. package/dist/agent-directory/client/index.d.ts +1 -0
  9. package/dist/agent-directory/client/index.js +18 -0
  10. package/dist/agent-directory/index.d.ts +1 -0
  11. package/dist/agent-directory/index.js +18 -0
  12. package/dist/agent-directory/protocol.d.ts +126 -0
  13. package/dist/agent-directory/protocol.js +13 -0
  14. package/dist/agent-directory/protocol.jsonld +296 -0
  15. package/dist/api/ApiServer.d.ts +9 -0
  16. package/dist/api/ApiServer.js +113 -16
  17. package/dist/api/ai-config/AiConfigStore.js +18 -6
  18. package/dist/api/ai-gateway/AiGatewayService.d.ts +9 -1
  19. package/dist/api/ai-gateway/AiGatewayService.js +22 -7
  20. package/dist/api/ai-gateway/CloudGatewayModelsClient.d.ts +3 -0
  21. package/dist/api/ai-gateway/CloudGatewayModelsClient.js +2 -0
  22. package/dist/api/ai-gateway/InvocationMetadata.d.ts +9 -0
  23. package/dist/api/ai-gateway/InvocationMetadata.js +40 -0
  24. package/dist/api/ai-gateway/auth/AiConnectionsInvocationKeyIssuer.d.ts +14 -0
  25. package/dist/api/ai-gateway/auth/AiConnectionsInvocationKeyIssuer.js +24 -5
  26. package/dist/api/ai-gateway/connect/AuthorizationCallbackPage.d.ts +4 -0
  27. package/dist/api/ai-gateway/connect/AuthorizationCallbackPage.js +75 -0
  28. package/dist/api/ai-gateway/connect/LoopbackAuthorizationCallbackReceiver.js +6 -5
  29. package/dist/api/ai-gateway/connect/index.d.ts +16 -1
  30. package/dist/api/ai-gateway/connect/index.js +119 -31
  31. package/dist/api/ai-gateway/models/ProviderModelsAdapter.js +5 -2
  32. package/dist/api/ai-gateway/pod/HostedPodRoute.d.ts +0 -7
  33. package/dist/api/ai-gateway/pod/HostedPodRoute.js +3 -71
  34. package/dist/api/ai-gateway/pod/OwnerPodAccess.d.ts +0 -1
  35. package/dist/api/ai-gateway/pod/OwnerPodAccess.js +59 -19
  36. package/dist/api/ai-gateway/providers/AnthropicRuntimeAdapter.js +2 -0
  37. package/dist/api/ai-gateway/providers/BailianRuntimeAdapter.js +4 -0
  38. package/dist/api/ai-gateway/providers/OpenAiRuntimeAdapter.js +2 -1
  39. package/dist/api/ai-gateway/providers/ProviderRegistry.d.ts +2 -8
  40. package/dist/api/ai-gateway/providers/ProviderRegistry.js +21 -132
  41. package/dist/api/ai-gateway/providers/ProviderRuntimeAdapter.d.ts +3 -1
  42. package/dist/api/ai-gateway/providers/ProviderRuntimeAdapter.js +25 -4
  43. package/dist/api/ai-gateway/routing/ModelRouter.js +13 -0
  44. package/dist/api/auth/SolidSessionFactory.d.ts +2 -1
  45. package/dist/api/auth/SolidSessionFactory.js +33 -11
  46. package/dist/api/background-service-supervisor.d.ts +63 -0
  47. package/dist/api/background-service-supervisor.js +144 -0
  48. package/dist/api/chatkit/pod-store.d.ts +34 -4
  49. package/dist/api/chatkit/pod-store.js +315 -185
  50. package/dist/api/chatkit/store.d.ts +2 -1
  51. package/dist/api/chatkit/store.js +7 -8
  52. package/dist/api/container/common.js +100 -17
  53. package/dist/api/container/index.js +24 -8
  54. package/dist/api/container/local.js +6 -3
  55. package/dist/api/container/rdf.d.ts +4 -0
  56. package/dist/api/container/rdf.js +5 -1
  57. package/dist/api/container/routes.js +30 -0
  58. package/dist/api/container/types.d.ts +4 -2
  59. package/dist/api/handlers/AdminHandler.d.ts +4 -3
  60. package/dist/api/handlers/AdminHandler.js +27 -39
  61. package/dist/api/handlers/AiConfigHandler.d.ts +12 -0
  62. package/dist/api/handlers/AiConfigHandler.js +7 -5
  63. package/dist/api/handlers/AiGatewayHandler.d.ts +1 -0
  64. package/dist/api/handlers/AiGatewayHandler.js +57 -3
  65. package/dist/api/handlers/AiGatewayManagementHandler.js +17 -0
  66. package/dist/api/handlers/DeviceNotificationRuntime.d.ts +1 -1
  67. package/dist/api/handlers/DeviceNotificationRuntime.js +5 -8
  68. package/dist/api/handlers/InngestHandler.d.ts +7 -0
  69. package/dist/api/handlers/InngestHandler.js +45 -0
  70. package/dist/api/handlers/NetworkSettingsHandler.d.ts +31 -1
  71. package/dist/api/handlers/NetworkSettingsHandler.js +76 -3
  72. package/dist/api/handlers/PodAccessFailureResponse.d.ts +2 -1
  73. package/dist/api/handlers/PodAccessFailureResponse.js +4 -5
  74. package/dist/api/handlers/PodDeletionGrantHandler.d.ts +9 -0
  75. package/dist/api/handlers/PodDeletionGrantHandler.js +129 -0
  76. package/dist/api/handlers/PodManagementHandler.d.ts +2 -0
  77. package/dist/api/handlers/PodManagementHandler.js +137 -71
  78. package/dist/api/handlers/ProvisionHandler.d.ts +2 -0
  79. package/dist/api/handlers/ProvisionHandler.js +13 -1
  80. package/dist/api/handlers/ReachabilityHandler.js +5 -0
  81. package/dist/api/handlers/RunHandler.js +7 -27
  82. package/dist/api/handlers/ServiceInfoHandler.d.ts +10 -0
  83. package/dist/api/handlers/ServiceInfoHandler.js +32 -0
  84. package/dist/api/handlers/SettingsHandler.js +5 -0
  85. package/dist/api/handlers/TaskHandler.d.ts +41 -0
  86. package/dist/api/handlers/TaskHandler.js +200 -0
  87. package/dist/api/matrix/PodMatrixStore.js +16 -9
  88. package/dist/api/network/EndpointReachabilityProbe.d.ts +40 -0
  89. package/dist/api/network/EndpointReachabilityProbe.js +129 -0
  90. package/dist/api/network/NetworkEnvironmentConfigurationStore.js +1 -1
  91. package/dist/api/runs/AgentRuntimeTypes.d.ts +7 -0
  92. package/dist/api/runs/ConditionalResourceDocument.d.ts +20 -0
  93. package/dist/api/runs/ConditionalResourceDocument.js +100 -0
  94. package/dist/api/runs/EmbeddedInngestService.d.ts +80 -0
  95. package/dist/api/runs/EmbeddedInngestService.js +311 -37
  96. package/dist/api/runs/InngestRunExecutionBackend.d.ts +2 -2
  97. package/dist/api/runs/InngestRunExecutionBackend.js +5 -0
  98. package/dist/api/runs/ManagedRunWorker.d.ts +0 -3
  99. package/dist/api/runs/ManagedRunWorker.js +101 -88
  100. package/dist/api/runs/PiAgentRuntimeDriver.d.ts +24 -0
  101. package/dist/api/runs/PiAgentRuntimeDriver.js +274 -15
  102. package/dist/api/runs/PiAgentRuntimeWorker.js +12 -2
  103. package/dist/api/runs/PodRdfAccessScopeResolver.d.ts +16 -0
  104. package/dist/api/runs/PodRdfAccessScopeResolver.js +83 -0
  105. package/dist/api/runs/RdfRunContextRetriever.d.ts +1 -1
  106. package/dist/api/runs/RdfRunContextRetriever.js +5 -6
  107. package/dist/api/runs/RunApproval.d.ts +17 -0
  108. package/dist/api/runs/RunApproval.js +45 -0
  109. package/dist/api/runs/RunCancellation.d.ts +20 -0
  110. package/dist/api/runs/RunCancellation.js +83 -0
  111. package/dist/api/runs/RunExecutionBackend.d.ts +2 -0
  112. package/dist/api/runs/RunStateCenter.d.ts +0 -3
  113. package/dist/api/runs/RunStateCenter.js +130 -116
  114. package/dist/api/runs/RunStateMerge.d.ts +4 -0
  115. package/dist/api/runs/RunStateMerge.js +19 -0
  116. package/dist/api/runs/store.d.ts +7 -1
  117. package/dist/api/runs/store.js +32 -1
  118. package/dist/api/runtime.js +51 -21
  119. package/dist/api/service/provider-http-transport.d.ts +14 -1
  120. package/dist/api/service/provider-http-transport.js +173 -20
  121. package/dist/api/tasks/InngestTaskScheduler.d.ts +4 -4
  122. package/dist/api/tasks/TaskAgentBinding.d.ts +14 -0
  123. package/dist/api/tasks/TaskAgentBinding.js +25 -0
  124. package/dist/api/tasks/TaskAuthBinding.js +16 -2
  125. package/dist/api/tasks/TaskMaterializer.d.ts +5 -4
  126. package/dist/api/tasks/TaskMaterializer.js +174 -126
  127. package/dist/api/tasks/TaskResumeDiagnostics.d.ts +28 -0
  128. package/dist/api/tasks/TaskResumeDiagnostics.js +148 -0
  129. package/dist/api/tasks/TaskService.d.ts +28 -3
  130. package/dist/api/tasks/TaskService.js +142 -44
  131. package/dist/api/tasks/cron.d.ts +2 -0
  132. package/dist/api/tasks/cron.js +51 -0
  133. package/dist/api/tasks/schema.d.ts +3 -0
  134. package/dist/api/tasks/store.d.ts +10 -1
  135. package/dist/authentication/ConfiguredLoopbackDPoPWebIdExtractor.d.ts +6 -1
  136. package/dist/authentication/ConfiguredLoopbackDPoPWebIdExtractor.js +33 -9
  137. package/dist/authentication/ConfiguredLoopbackDPoPWebIdExtractor.jsonld +9 -1
  138. package/dist/authentication/SolidTokenCaches.js +44 -10
  139. package/dist/cli/agent-fs/args.d.ts +37 -0
  140. package/dist/cli/agent-fs/args.js +254 -0
  141. package/dist/cli/agent-fs/auth-proxy.d.ts +27 -0
  142. package/dist/cli/agent-fs/auth-proxy.js +208 -0
  143. package/dist/cli/agent-fs/install.d.ts +18 -0
  144. package/dist/cli/agent-fs/install.js +54 -0
  145. package/dist/cli/agent-fs/mount.d.ts +35 -0
  146. package/dist/cli/agent-fs/mount.js +111 -0
  147. package/dist/cli/agent-fs/native.d.ts +6 -0
  148. package/dist/cli/agent-fs/native.js +104 -0
  149. package/dist/cli/agent-fs/pending-store.d.ts +14 -0
  150. package/dist/cli/agent-fs/pending-store.js +37 -0
  151. package/dist/cli/agent-fs/pod-lower.d.ts +127 -0
  152. package/dist/cli/agent-fs/pod-lower.js +398 -0
  153. package/dist/cli/agent-fs/rg-entry.d.ts +6 -0
  154. package/dist/cli/agent-fs/rg-entry.js +132 -0
  155. package/dist/cli/agent-fs/roots.d.ts +18 -0
  156. package/dist/cli/agent-fs/roots.js +152 -0
  157. package/dist/cli/agent-fs/runner.d.ts +18 -0
  158. package/dist/cli/agent-fs/runner.js +145 -0
  159. package/dist/cli/agent-fs/session-view.d.ts +7 -0
  160. package/dist/cli/agent-fs/session-view.js +31 -0
  161. package/dist/cli/commands/agent-fs.d.ts +2 -0
  162. package/dist/cli/commands/agent-fs.js +491 -0
  163. package/dist/cli/commands/start.d.ts +11 -18
  164. package/dist/cli/commands/start.js +38 -37
  165. package/dist/cli/commands/stop.js +7 -1
  166. package/dist/cli/index.js +11 -2
  167. package/dist/cli/lib/auth-context.d.ts +6 -0
  168. package/dist/cli/lib/auth-context.js +1 -1
  169. package/dist/cli/lib/launcher.d.ts +2 -0
  170. package/dist/cli/lib/launcher.js +19 -0
  171. package/dist/components/components.jsonld +18 -0
  172. package/dist/components/context.jsonld +472 -6
  173. package/dist/dns/cloudflare/CloudflareDnsProvider.d.ts +10 -1
  174. package/dist/dns/cloudflare/CloudflareDnsProvider.js +59 -28
  175. package/dist/edge/EdgeNodeAgent.d.ts +5 -0
  176. package/dist/edge/EdgeNodeAgent.js +8 -0
  177. package/dist/edge/acme/AcmeCertificateManager.d.ts +24 -0
  178. package/dist/edge/acme/AcmeCertificateManager.js +75 -7
  179. package/dist/edge/acme/AcmeCertificateManager.jsonld +24 -0
  180. package/dist/edge/acme/CertificateRenewalScheduler.d.ts +67 -0
  181. package/dist/edge/acme/CertificateRenewalScheduler.js +116 -0
  182. package/dist/edge/frp/FrpcProcessManager.d.ts +16 -0
  183. package/dist/edge/frp/FrpcProcessManager.js +73 -13
  184. package/dist/edge/reachability/ManagedClientFetch.d.ts +2 -0
  185. package/dist/edge/reachability/ManagedClientFetch.js +24 -12
  186. package/dist/edge/reachability/ManagedClientFetch.jsonld +4 -0
  187. package/dist/edge/reachability/ManagedRouteSelector.d.ts +2 -0
  188. package/dist/edge/reachability/ManagedRouteSelector.js +8 -13
  189. package/dist/edge/reachability/ManagedRouteSelector.jsonld +4 -0
  190. package/dist/edge/reachability/P2PDataPlane.d.ts +67 -4
  191. package/dist/edge/reachability/P2PDataPlane.js +156 -15
  192. package/dist/edge/reachability/P2PDataPlane.jsonld +64 -0
  193. package/dist/edge/reachability/P2PDataPlaneCrypto.d.ts +42 -0
  194. package/dist/edge/reachability/P2PDataPlaneCrypto.js +113 -0
  195. package/dist/edge/reachability/P2PDataPlaneCrypto.jsonld +69 -0
  196. package/dist/edge/reachability/P2PSignalingClient.d.ts +2 -0
  197. package/dist/edge/reachability/P2PSignalingClient.js +1 -0
  198. package/dist/edge/reachability/P2PSignalingClient.jsonld +4 -0
  199. package/dist/edge/reachability/ReachabilitySessionService.d.ts +19 -0
  200. package/dist/edge/reachability/ReachabilitySessionService.js +122 -52
  201. package/dist/edge/reachability/ReachabilitySessionService.jsonld +26 -0
  202. package/dist/edge/reachability/RouteValidation.d.ts +29 -0
  203. package/dist/edge/reachability/RouteValidation.js +58 -0
  204. package/dist/edge/reachability/TcpP2PDataPlaneTransport.d.ts +28 -4
  205. package/dist/edge/reachability/TcpP2PDataPlaneTransport.js +540 -32
  206. package/dist/edge/reachability/TcpP2PDataPlaneTransport.jsonld +51 -0
  207. package/dist/edge/reachability/TcpP2PSignalingSession.d.ts +7 -0
  208. package/dist/edge/reachability/TcpP2PSignalingSession.js +25 -1
  209. package/dist/edge/reachability/TcpP2PSignalingSession.jsonld +12 -0
  210. package/dist/edge/reachability/index.d.ts +1 -0
  211. package/dist/edge/reachability/index.js +1 -0
  212. package/dist/edge/reachability/types.d.ts +8 -0
  213. package/dist/edge/reachability/types.jsonld +8 -0
  214. package/dist/http/DeviceNotificationWebSocketServer.d.ts +5 -1
  215. package/dist/http/DeviceNotificationWebSocketServer.js +36 -8
  216. package/dist/http/DeviceNotificationWebSocketServer.jsonld +16 -0
  217. package/dist/http/HeadSafeResponseWriter.d.ts +9 -0
  218. package/dist/http/HeadSafeResponseWriter.js +22 -0
  219. package/dist/http/HeadSafeResponseWriter.jsonld +39 -0
  220. package/dist/http/LocalPodDeletionHttpHandler.d.ts +21 -0
  221. package/dist/http/LocalPodDeletionHttpHandler.js +125 -0
  222. package/dist/http/LocalPodDeletionHttpHandler.jsonld +115 -0
  223. package/dist/http/PodDeletionMutationGuard.d.ts +9 -0
  224. package/dist/http/PodDeletionMutationGuard.js +29 -0
  225. package/dist/http/PodDeletionMutationGuard.jsonld +58 -0
  226. package/dist/http/PodMutationLockingHttpHandler.d.ts +14 -0
  227. package/dist/http/PodMutationLockingHttpHandler.js +93 -0
  228. package/dist/http/PodMutationLockingHttpHandler.jsonld +99 -0
  229. package/dist/http/StoragePutOperationHandler.d.ts +7 -0
  230. package/dist/http/StoragePutOperationHandler.js +27 -0
  231. package/dist/http/StoragePutOperationHandler.jsonld +57 -0
  232. package/dist/http/SubgraphSparqlHttpHandler.d.ts +3 -1
  233. package/dist/http/SubgraphSparqlHttpHandler.js +107 -33
  234. package/dist/http/SubgraphSparqlHttpHandler.jsonld +19 -0
  235. package/dist/http/agent-directory/AgentDirectoryHttpHandler.d.ts +87 -0
  236. package/dist/http/agent-directory/AgentDirectoryHttpHandler.js +717 -0
  237. package/dist/http/agent-directory/AgentDirectoryHttpHandler.jsonld +302 -0
  238. package/dist/http/agent-directory/index.d.ts +1 -0
  239. package/dist/http/agent-directory/index.js +18 -0
  240. package/dist/identity/CloudProfilePreparationHandler.d.ts +7 -0
  241. package/dist/identity/CloudProfilePreparationHandler.js +24 -0
  242. package/dist/identity/CloudProfilePreparationHandler.jsonld +42 -0
  243. package/dist/identity/PodDeletionInteractionHandler.d.ts +12 -0
  244. package/dist/identity/PodDeletionInteractionHandler.js +35 -0
  245. package/dist/identity/PodDeletionInteractionHandler.jsonld +73 -0
  246. package/dist/identity/PodDeletionInventoryHandler.d.ts +11 -0
  247. package/dist/identity/PodDeletionInventoryHandler.js +40 -0
  248. package/dist/identity/PodDeletionInventoryHandler.jsonld +69 -0
  249. package/dist/identity/ValidatingIdentityProviderHttpHandler.js +29 -10
  250. package/dist/identity/drizzle/EdgeNodeRepository.d.ts +17 -0
  251. package/dist/identity/drizzle/EdgeNodeRepository.js +61 -0
  252. package/dist/identity/drizzle/PodDeletionOperationRepository.d.ts +64 -0
  253. package/dist/identity/drizzle/PodDeletionOperationRepository.js +241 -0
  254. package/dist/identity/drizzle/db.d.ts +8 -0
  255. package/dist/identity/drizzle/db.js +17 -0
  256. package/dist/index.d.ts +18 -1
  257. package/dist/index.js +28 -3
  258. package/dist/logging/log-secrets.d.ts +2 -0
  259. package/dist/logging/log-secrets.js +35 -0
  260. package/dist/logging/normalize-log.d.ts +5 -0
  261. package/dist/logging/normalize-log.js +12 -0
  262. package/dist/main.js +2 -0
  263. package/dist/pods/ReservedSuffixIdentifierGenerator.js +2 -1
  264. package/dist/provision/CloudProfileCreator.d.ts +35 -0
  265. package/dist/provision/CloudProfileCreator.js +229 -0
  266. package/dist/provision/CloudProfileCreator.jsonld +186 -0
  267. package/dist/provision/LocalPodProvisioningService.d.ts +2 -0
  268. package/dist/provision/LocalPodProvisioningService.js +76 -32
  269. package/dist/provision/LocalPodProvisioningService.jsonld +8 -0
  270. package/dist/provision/PodDeletionRoute.d.ts +2 -0
  271. package/dist/provision/PodDeletionRoute.js +12 -0
  272. package/dist/provision/PodMutationLock.d.ts +5 -0
  273. package/dist/provision/PodMutationLock.js +13 -0
  274. package/dist/provision/ProvisionPodCreator.d.ts +9 -13
  275. package/dist/provision/ProvisionPodCreator.js +48 -17
  276. package/dist/provision/ProvisionPodCreator.jsonld +31 -1
  277. package/dist/provision/ProvisionPodStore.js +19 -5
  278. package/dist/provision/ProvisionReceiptCodec.d.ts +4 -0
  279. package/dist/provision/ProvisionReceiptCodec.js +2 -0
  280. package/dist/runtime/GatewayAdminProxyAuth.d.ts +2 -2
  281. package/dist/runtime/Proxy.d.ts +2 -0
  282. package/dist/runtime/Proxy.js +55 -22
  283. package/dist/runtime/XpodRuntime.js +20 -4
  284. package/dist/runtime/bootstrap.js +1 -0
  285. package/dist/runtime/compat/ensureSupportedBun.d.ts +2 -0
  286. package/dist/runtime/compat/ensureSupportedBun.js +23 -0
  287. package/dist/runtime/css-process.d.ts +3 -3
  288. package/dist/runtime/gateway-locator-secret.js +9 -135
  289. package/dist/runtime/host/node/NodeRuntimeHost.d.ts +3 -2
  290. package/dist/runtime/host/node/NodeRuntimeHost.js +37 -12
  291. package/dist/runtime/host/types.d.ts +8 -1
  292. package/dist/runtime/index.d.ts +7 -1
  293. package/dist/runtime/index.js +21 -1
  294. package/dist/runtime/ingress-occupant.d.ts +39 -0
  295. package/dist/runtime/ingress-occupant.js +111 -0
  296. package/dist/runtime/ingress-port.d.ts +89 -0
  297. package/dist/runtime/ingress-port.js +165 -0
  298. package/dist/runtime/lifecycle.js +22 -5
  299. package/dist/runtime/local-secret-file.d.ts +9 -0
  300. package/dist/runtime/local-secret-file.js +152 -0
  301. package/dist/runtime/port-finder.d.ts +23 -3
  302. package/dist/runtime/port-finder.js +43 -20
  303. package/dist/runtime/port-reservations.d.ts +86 -0
  304. package/dist/runtime/port-reservations.js +183 -0
  305. package/dist/runtime/runner/node/CommunitySolidServerCssRunner.js +2 -0
  306. package/dist/runtime/runtime-types.d.ts +2 -0
  307. package/dist/runtime/safe-env.d.ts +1 -1
  308. package/dist/runtime/secret-cell-root-key.d.ts +7 -0
  309. package/dist/runtime/secret-cell-root-key.js +38 -0
  310. package/dist/runtime/socket-http.js +5 -1
  311. package/dist/runtime/socket-transport.js +3 -4
  312. package/dist/runtime/user-env.d.ts +2 -2
  313. package/dist/service/PodDataDeletionService.d.ts +28 -0
  314. package/dist/service/PodDataDeletionService.js +126 -0
  315. package/dist/service/PodDataDeletionService.jsonld +111 -0
  316. package/dist/service/PodDeletionLifecycleService.d.ts +39 -0
  317. package/dist/service/PodDeletionLifecycleService.js +262 -0
  318. package/dist/service/PodDeletionLifecycleService.jsonld +210 -0
  319. package/dist/shared/xpod-route-policy.d.ts +3 -1
  320. package/dist/shared/xpod-route-policy.js +19 -1
  321. package/dist/solidfs/LocalRdfAuthorityRecoveryInitializer.js +1 -1
  322. package/dist/solidfs/PodSolidFsHttpClient.d.ts +5 -5
  323. package/dist/solidfs/PodSolidFsHttpClient.js +14 -55
  324. package/dist/solidfs/PodSolidFsHydrator.d.ts +2 -4
  325. package/dist/solidfs/PodSolidFsHydrator.js +6 -6
  326. package/dist/solidfs/PodSolidFsSyncer.d.ts +10 -8
  327. package/dist/solidfs/PodSolidFsSyncer.js +20 -16
  328. package/dist/solidfs/RdfIndexSolidFsSyncer.d.ts +3 -0
  329. package/dist/solidfs/RdfIndexSolidFsSyncer.js +4 -3
  330. package/dist/solidfs/SolidFsSyncJournal.d.ts +11 -0
  331. package/dist/solidfs/SolidFsSyncJournal.js +130 -21
  332. package/dist/solidfs/SolidFsSyncJournal.jsonld +4 -0
  333. package/dist/storage/HierarchyLockingResourceStore.d.ts +17 -0
  334. package/dist/storage/HierarchyLockingResourceStore.js +147 -0
  335. package/dist/storage/HierarchyLockingResourceStore.jsonld +104 -0
  336. package/dist/storage/RepresentationPartialConvertingStore.js +11 -2
  337. package/dist/storage/SparqlUpdateResourceStore.js +5 -0
  338. package/dist/storage/StorageVersion.d.ts +16 -0
  339. package/dist/storage/StorageVersion.js +36 -0
  340. package/dist/storage/accessors/MinioDataAccessor.js +2 -1
  341. package/dist/storage/accessors/MixDataAccessor.d.ts +7 -0
  342. package/dist/storage/accessors/MixDataAccessor.js +99 -10
  343. package/dist/storage/accessors/MixDataAccessor.jsonld +8 -0
  344. package/dist/storage/accessors/SolidRdfDataAccessor.d.ts +3 -0
  345. package/dist/storage/accessors/SolidRdfDataAccessor.js +30 -7
  346. package/dist/storage/accessors/SolidRdfDataAccessor.jsonld +8 -0
  347. package/dist/storage/conditions/StorageETagHandler.d.ts +9 -0
  348. package/dist/storage/conditions/StorageETagHandler.js +41 -0
  349. package/dist/storage/conditions/StorageETagHandler.jsonld +34 -0
  350. package/dist/storage/locking/PodLifecycleLocker.d.ts +8 -0
  351. package/dist/storage/locking/PodLifecycleLocker.js +17 -0
  352. package/dist/storage/locking/PodLifecycleLocker.jsonld +47 -0
  353. package/dist/storage/locking/PodLifecycleRedisLocker.d.ts +19 -0
  354. package/dist/storage/locking/PodLifecycleRedisLocker.js +52 -0
  355. package/dist/storage/locking/PodLifecycleRedisLocker.jsonld +156 -0
  356. package/dist/storage/locking/UrlAwareRedisLocker.d.ts +21 -9
  357. package/dist/storage/locking/UrlAwareRedisLocker.js +80 -121
  358. package/dist/storage/locking/UrlAwareRedisLocker.jsonld +71 -21
  359. package/dist/storage/rdf/PostgresRdfEngine.d.ts +2 -1
  360. package/dist/storage/rdf/PostgresRdfEngine.js +3 -0
  361. package/dist/storage/rdf/PostgresRdfEngine.jsonld +4 -0
  362. package/dist/storage/rdf/RdfAccessScope.js +23 -18
  363. package/dist/supervisor/Supervisor.d.ts +29 -5
  364. package/dist/supervisor/Supervisor.js +137 -27
  365. package/dist/supervisor/types.d.ts +14 -1
  366. package/dist/test-utils/local-managed-client-p2p-e2e-smoke.js +15 -0
  367. package/dist/tunnel/LocalTunnelProvider.d.ts +7 -0
  368. package/dist/tunnel/LocalTunnelProvider.js +11 -3
  369. package/dist/tunnel/LocalTunnelProvider.jsonld +39 -0
  370. package/dist/tunnel/NgrokTunnelProvider.d.ts +2 -0
  371. package/dist/tunnel/NgrokTunnelProvider.js +3 -1
  372. package/dist/tunnel/NgrokTunnelProvider.jsonld +39 -0
  373. package/dist/tunnel/SakuraFrpTunnelProvider.d.ts +3 -1
  374. package/dist/tunnel/SakuraFrpTunnelProvider.js +7 -3
  375. package/dist/tunnel/TunnelClientManager.d.ts +73 -0
  376. package/dist/tunnel/TunnelClientManager.js +181 -0
  377. package/dist/tunnel/TunnelClientResolver.d.ts +56 -0
  378. package/dist/tunnel/TunnelClientResolver.js +135 -0
  379. package/dist/tunnel/TunnelDeclaredOrigin.d.ts +78 -0
  380. package/dist/tunnel/TunnelDeclaredOrigin.js +185 -0
  381. package/dist/tunnel/TunnelLifecycle.d.ts +9 -1
  382. package/dist/tunnel/TunnelLifecycle.js +24 -3
  383. package/dist/tunnel/TunnelProviderCatalog.d.ts +32 -0
  384. package/dist/tunnel/TunnelProviderCatalog.js +43 -0
  385. package/dist/util/identifiers/ClusterIdentifierStrategy.d.ts +1 -0
  386. package/dist/util/identifiers/ClusterIdentifierStrategy.js +3 -3
  387. package/dist/util/task-model-diagnostics.d.ts +67 -0
  388. package/dist/util/task-model-diagnostics.js +118 -0
  389. package/node_modules/@inrupt/solid-client-authn-core/dist/authenticatedFetch/dpopUtils.d.ts +3 -1
  390. package/node_modules/@inrupt/solid-client-authn-core/dist/index.js +85 -58
  391. package/node_modules/@inrupt/solid-client-authn-core/dist/index.mjs +86 -59
  392. package/node_modules/@undefineds.co/ai-connections/dist/AiApiKeyPool.d.ts +4 -3
  393. package/node_modules/@undefineds.co/ai-connections/dist/AiApiKeyPool.js +3 -2
  394. package/node_modules/@undefineds.co/ai-connections/dist/AiAuthorizationActions.d.ts +1 -1
  395. package/node_modules/@undefineds.co/ai-connections/dist/AiClientConfigurationSection.d.ts +2 -1
  396. package/node_modules/@undefineds.co/ai-connections/dist/AiClientConfigurationSection.js +39 -10
  397. package/node_modules/@undefineds.co/ai-connections/dist/AiConnectDialog.d.ts +6 -5
  398. package/node_modules/@undefineds.co/ai-connections/dist/AiConnectDialog.js +9 -8
  399. package/node_modules/@undefineds.co/ai-connections/dist/AiConnectionsHeader.d.ts +1 -1
  400. package/node_modules/@undefineds.co/ai-connections/dist/AiConnectionsHeader.js +4 -4
  401. package/node_modules/@undefineds.co/ai-connections/dist/AiConnectionsList.d.ts +1 -1
  402. package/node_modules/@undefineds.co/ai-connections/dist/AiConnectionsList.js +7 -6
  403. package/node_modules/@undefineds.co/ai-connections/dist/AiConnectionsMain.d.ts +1 -1
  404. package/node_modules/@undefineds.co/ai-connections/dist/AiConnectionsMain.js +2 -2
  405. package/node_modules/@undefineds.co/ai-connections/dist/AiConnectionsMainHeader.d.ts +1 -1
  406. package/node_modules/@undefineds.co/ai-connections/dist/AiConnectionsPanel.d.ts +6 -5
  407. package/node_modules/@undefineds.co/ai-connections/dist/AiConnectionsPanel.js +10 -8
  408. package/node_modules/@undefineds.co/ai-connections/dist/AiCredentialPoolSection.d.ts +4 -3
  409. package/node_modules/@undefineds.co/ai-connections/dist/AiCredentialPoolSection.js +20 -45
  410. package/node_modules/@undefineds.co/ai-connections/dist/AiCredentialRow.d.ts +5 -3
  411. package/node_modules/@undefineds.co/ai-connections/dist/AiCredentialRow.js +16 -4
  412. package/node_modules/@undefineds.co/ai-connections/dist/AiCustomProviderDialog.d.ts +1 -1
  413. package/node_modules/@undefineds.co/ai-connections/dist/AiCustomProviderDialog.js +2 -2
  414. package/node_modules/@undefineds.co/ai-connections/dist/AiEndpointList.d.ts +1 -1
  415. package/node_modules/@undefineds.co/ai-connections/dist/AiGatewayKeyRow.d.ts +12 -3
  416. package/node_modules/@undefineds.co/ai-connections/dist/AiGatewayKeyRow.js +14 -5
  417. package/node_modules/@undefineds.co/ai-connections/dist/AiGatewayKeysSection.d.ts +5 -4
  418. package/node_modules/@undefineds.co/ai-connections/dist/AiGatewayKeysSection.js +140 -32
  419. package/node_modules/@undefineds.co/ai-connections/dist/AiGatewayModelsSection.d.ts +1 -1
  420. package/node_modules/@undefineds.co/ai-connections/dist/AiGatewayModelsSection.js +4 -4
  421. package/node_modules/@undefineds.co/ai-connections/dist/AiModelCatalog.d.ts +11 -5
  422. package/node_modules/@undefineds.co/ai-connections/dist/AiModelCatalog.js +16 -7
  423. package/node_modules/@undefineds.co/ai-connections/dist/AiOfferingDetails.d.ts +1 -1
  424. package/node_modules/@undefineds.co/ai-connections/dist/AiOfferingDetails.js +2 -4
  425. package/node_modules/@undefineds.co/ai-connections/dist/AiProviderCard.d.ts +5 -4
  426. package/node_modules/@undefineds.co/ai-connections/dist/AiProviderCard.js +14 -9
  427. package/node_modules/@undefineds.co/ai-connections/dist/AiProviderHeader.d.ts +2 -1
  428. package/node_modules/@undefineds.co/ai-connections/dist/AiProviderHeader.js +2 -2
  429. package/node_modules/@undefineds.co/ai-connections/dist/AiQuotaCard.d.ts +1 -1
  430. package/node_modules/@undefineds.co/ai-connections/dist/AiQuotaCard.js +2 -2
  431. package/node_modules/@undefineds.co/ai-connections/dist/AiSortableCredentialList.d.ts +1 -1
  432. package/node_modules/@undefineds.co/ai-connections/dist/AiSortableCredentialList.js +59 -59
  433. package/node_modules/@undefineds.co/ai-connections/dist/authorization-methods.d.ts +1 -1
  434. package/node_modules/@undefineds.co/ai-connections/dist/client-visuals.d.ts +1 -1
  435. package/node_modules/@undefineds.co/ai-connections/dist/collection-runtime.d.ts +2 -2
  436. package/node_modules/@undefineds.co/ai-connections/dist/collection-runtime.js +2 -0
  437. package/node_modules/@undefineds.co/ai-connections/dist/collections.d.ts +2 -2
  438. package/node_modules/@undefineds.co/ai-connections/dist/collections.js +16 -8
  439. package/node_modules/@undefineds.co/ai-connections/dist/contract/ai-connections-client.d.ts +7 -6
  440. package/node_modules/@undefineds.co/ai-connections/dist/contract/ai-connections-client.js +1 -0
  441. package/node_modules/@undefineds.co/ai-connections/dist/contract/client/gateway-model-roles.d.ts +11 -0
  442. package/node_modules/@undefineds.co/ai-connections/dist/contract/client/gateway-model-roles.js +11 -0
  443. package/node_modules/@undefineds.co/ai-connections/dist/contract/client/normalize.d.ts +2 -1
  444. package/node_modules/@undefineds.co/ai-connections/dist/contract/client/normalize.js +21 -15
  445. package/node_modules/@undefineds.co/ai-connections/dist/contract/client/request.d.ts +1 -1
  446. package/node_modules/@undefineds.co/ai-connections/dist/contract/client/request.js +10 -2
  447. package/node_modules/@undefineds.co/ai-connections/dist/contract/client/types.d.ts +18 -1
  448. package/node_modules/@undefineds.co/ai-connections/dist/contract/client-config/base-adapter.d.ts +3 -3
  449. package/node_modules/@undefineds.co/ai-connections/dist/contract/client-config/codex.d.ts +2 -2
  450. package/node_modules/@undefineds.co/ai-connections/dist/contract/client-config/index.cjs +42 -40
  451. package/node_modules/@undefineds.co/ai-connections/dist/contract/client-config/index.d.ts +6 -6
  452. package/node_modules/@undefineds.co/ai-connections/dist/contract/client-config/json-env-adapter.d.ts +2 -2
  453. package/node_modules/@undefineds.co/ai-connections/dist/contract/client-config/pi.d.ts +2 -2
  454. package/node_modules/@undefineds.co/ai-connections/dist/contract/client-config/transaction.d.ts +1 -1
  455. package/node_modules/@undefineds.co/ai-connections/dist/contract/index.d.ts +1 -1
  456. package/node_modules/@undefineds.co/ai-connections/dist/contract/provider-catalog.cjs +28 -15
  457. package/node_modules/@undefineds.co/ai-connections/dist/contract/provider-catalog.d.ts +4 -4
  458. package/node_modules/@undefineds.co/ai-connections/dist/contract/provider-catalog.js +18 -7
  459. package/node_modules/@undefineds.co/ai-connections/dist/controller.d.ts +5 -4
  460. package/node_modules/@undefineds.co/ai-connections/dist/controller.js +24 -9
  461. package/node_modules/@undefineds.co/ai-connections/dist/credential-labels.d.ts +5 -1
  462. package/node_modules/@undefineds.co/ai-connections/dist/credential-labels.js +24 -0
  463. package/node_modules/@undefineds.co/ai-connections/dist/display-wording.d.ts +2 -7
  464. package/node_modules/@undefineds.co/ai-connections/dist/display-wording.js +4 -25
  465. package/node_modules/@undefineds.co/ai-connections/dist/error-wording.d.ts +1 -1
  466. package/node_modules/@undefineds.co/ai-connections/dist/error-wording.js +5 -1
  467. package/node_modules/@undefineds.co/ai-connections/dist/gateway-endpoints.d.ts +1 -1
  468. package/node_modules/@undefineds.co/ai-connections/dist/index.d.ts +25 -25
  469. package/node_modules/@undefineds.co/ai-connections/dist/offering-endpoints.d.ts +1 -1
  470. package/node_modules/@undefineds.co/ai-connections/dist/offering-label.d.ts +3 -1
  471. package/node_modules/@undefineds.co/ai-connections/dist/offering-label.js +7 -1
  472. package/node_modules/@undefineds.co/ai-connections/dist/provider-visuals.d.ts +4 -3
  473. package/node_modules/@undefineds.co/ai-connections/dist/provider-visuals.js +3 -2
  474. package/node_modules/@undefineds.co/ai-connections/dist/useAiConnectDialog.d.ts +3 -2
  475. package/node_modules/@undefineds.co/ai-connections/dist/useAiConnectDialog.js +18 -5
  476. package/node_modules/@undefineds.co/ai-connections/package.json +2 -2
  477. package/node_modules/@undefineds.co/drizzle-solid/dist/core/query-builders/select-query-builder.js +3 -0
  478. package/node_modules/@undefineds.co/drizzle-solid/dist/core/subject/resolver.js +2 -3
  479. package/node_modules/@undefineds.co/drizzle-solid/dist/core/triple/builder.js +2 -5
  480. package/node_modules/@undefineds.co/drizzle-solid/dist/core/uri/resolver.d.ts +2 -0
  481. package/node_modules/@undefineds.co/drizzle-solid/dist/core/uri/resolver.js +12 -3
  482. package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/query-builders/select-query-builder.js +3 -0
  483. package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/subject/resolver.js +2 -3
  484. package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/triple/builder.js +2 -5
  485. package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/uri/resolver.js +11 -3
  486. package/node_modules/@undefineds.co/drizzle-solid/package.json +1 -1
  487. package/node_modules/@undefineds.co/extension-sdk/dist/index.d.ts +6 -5
  488. package/node_modules/@undefineds.co/extension-sdk/dist/index.js +1 -0
  489. package/node_modules/@undefineds.co/extension-sdk/dist/layout.d.ts +39 -0
  490. package/node_modules/@undefineds.co/extension-sdk/dist/layout.js +40 -0
  491. package/node_modules/@undefineds.co/extension-sdk/dist/react/app-layout.d.ts +13 -1
  492. package/node_modules/@undefineds.co/extension-sdk/dist/react/app-layout.js +11 -3
  493. package/node_modules/@undefineds.co/extension-sdk/dist/react/workspace-layout.d.ts +29 -5
  494. package/node_modules/@undefineds.co/extension-sdk/dist/react/workspace-layout.js +77 -13
  495. package/node_modules/@undefineds.co/extension-sdk/dist/react.d.ts +5 -5
  496. package/node_modules/@undefineds.co/extension-sdk/dist/shell-state.d.ts +55 -0
  497. package/node_modules/@undefineds.co/extension-sdk/dist/shell-state.js +1 -0
  498. package/node_modules/@undefineds.co/extension-sdk/dist/solid-permissions.d.ts +1 -1
  499. package/node_modules/@undefineds.co/extension-sdk/dist/testing.d.ts +1 -1
  500. package/node_modules/@undefineds.co/extension-sdk/dist/web.d.ts +7 -6
  501. package/node_modules/@undefineds.co/extension-sdk/package.json +2 -2
  502. package/node_modules/@undefineds.co/extensions/dist-cjs/adapters/langchain.js +49 -0
  503. package/node_modules/@undefineds.co/extensions/dist-cjs/adapters/llamaindex.js +54 -0
  504. package/node_modules/@undefineds.co/extensions/dist-cjs/index.js +22 -0
  505. package/node_modules/@undefineds.co/extensions/dist-cjs/package.json +3 -0
  506. package/node_modules/@undefineds.co/extensions/dist-cjs/paddleocr.js +304 -0
  507. package/node_modules/@undefineds.co/extensions/dist-cjs/reader.js +44 -0
  508. package/node_modules/@undefineds.co/extensions/dist-cjs/registry.js +99 -0
  509. package/node_modules/@undefineds.co/extensions/dist-cjs/types.js +2 -0
  510. package/node_modules/@undefineds.co/models/dist/approval.repository.d.ts +20 -0
  511. package/node_modules/@undefineds.co/models/dist/approval.repository.js +81 -0
  512. package/node_modules/@undefineds.co/models/dist/credential.schema.d.ts +12 -0
  513. package/node_modules/@undefineds.co/models/dist/credential.schema.js +5 -0
  514. package/node_modules/@undefineds.co/models/dist/index.d.ts +1 -1
  515. package/node_modules/@undefineds.co/models/dist/index.js +1 -1
  516. package/node_modules/@undefineds.co/models/dist/namespaces.js +3 -0
  517. package/node_modules/@undefineds.co/models/dist/pod-storage-descriptor.d.ts +50 -0
  518. package/node_modules/@undefineds.co/models/dist/pod-storage-descriptor.js +16 -1
  519. package/node_modules/@undefineds.co/models/dist/schema.d.ts +10 -0
  520. package/node_modules/@undefineds.co/models/dist/task.schema.d.ts +6 -0
  521. package/node_modules/@undefineds.co/models/dist/task.schema.js +3 -0
  522. package/node_modules/@undefineds.co/models/package.json +2 -2
  523. package/node_modules/@undefineds.co/pod-collections/dist/index.cjs +93 -46
  524. package/node_modules/@undefineds.co/pod-collections/dist/mapping.d.ts +16 -1
  525. package/node_modules/@undefineds.co/pod-collections/dist/mapping.js +51 -0
  526. package/node_modules/@undefineds.co/pod-collections/dist/mutations.js +14 -18
  527. package/node_modules/@undefineds.co/pod-collections/package.json +2 -2
  528. package/node_modules/@undefineds.co/shared-ui/dist/auth-surface.js +6 -6
  529. package/node_modules/@undefineds.co/shared-ui/dist/badge.d.ts +1 -1
  530. package/node_modules/@undefineds.co/shared-ui/dist/badge.js +2 -0
  531. package/node_modules/@undefineds.co/shared-ui/dist/brand-info.d.ts +9 -0
  532. package/node_modules/@undefineds.co/shared-ui/dist/brand-info.js +19 -0
  533. package/node_modules/@undefineds.co/shared-ui/dist/button.js +1 -1
  534. package/node_modules/@undefineds.co/shared-ui/dist/checkbox.d.ts +6 -0
  535. package/node_modules/@undefineds.co/shared-ui/dist/checkbox.js +16 -0
  536. package/node_modules/@undefineds.co/shared-ui/dist/confirmation-dialog.d.ts +16 -0
  537. package/node_modules/@undefineds.co/shared-ui/dist/confirmation-dialog.js +22 -0
  538. package/node_modules/@undefineds.co/shared-ui/dist/dialog.d.ts +3 -0
  539. package/node_modules/@undefineds.co/shared-ui/dist/dialog.js +5 -5
  540. package/node_modules/@undefineds.co/shared-ui/dist/email-input.d.ts +9 -0
  541. package/node_modules/@undefineds.co/shared-ui/dist/email-input.js +42 -0
  542. package/node_modules/@undefineds.co/shared-ui/dist/empty-state.d.ts +8 -0
  543. package/node_modules/@undefineds.co/shared-ui/dist/empty-state.js +6 -0
  544. package/node_modules/@undefineds.co/shared-ui/dist/focus.d.ts +3 -4
  545. package/node_modules/@undefineds.co/shared-ui/dist/focus.js +3 -4
  546. package/node_modules/@undefineds.co/shared-ui/dist/form-control.d.ts +2 -0
  547. package/node_modules/@undefineds.co/shared-ui/dist/form-control.js +3 -0
  548. package/node_modules/@undefineds.co/shared-ui/dist/form-field.d.ts +15 -0
  549. package/node_modules/@undefineds.co/shared-ui/dist/form-field.js +11 -0
  550. package/node_modules/@undefineds.co/shared-ui/dist/index.d.ts +45 -28
  551. package/node_modules/@undefineds.co/shared-ui/dist/index.js +17 -0
  552. package/node_modules/@undefineds.co/shared-ui/dist/input.js +2 -2
  553. package/node_modules/@undefineds.co/shared-ui/dist/list.d.ts +32 -0
  554. package/node_modules/@undefineds.co/shared-ui/dist/list.js +24 -0
  555. package/node_modules/@undefineds.co/shared-ui/dist/login/LocalReachabilitySummary.d.ts +1 -1
  556. package/node_modules/@undefineds.co/shared-ui/dist/login/LoginModal.d.ts +1 -1
  557. package/node_modules/@undefineds.co/shared-ui/dist/login/LoginView.d.ts +1 -1
  558. package/node_modules/@undefineds.co/shared-ui/dist/login/error-messages.d.ts +1 -1
  559. package/node_modules/@undefineds.co/shared-ui/dist/login/index.d.ts +5 -5
  560. package/node_modules/@undefineds.co/shared-ui/dist/login/presentation.d.ts +1 -1
  561. package/node_modules/@undefineds.co/shared-ui/dist/login/provider-model.d.ts +1 -1
  562. package/node_modules/@undefineds.co/shared-ui/dist/login/types.d.ts +3 -3
  563. package/node_modules/@undefineds.co/shared-ui/dist/login.d.ts +1 -1
  564. package/node_modules/@undefineds.co/shared-ui/dist/login.js +1 -1
  565. package/node_modules/@undefineds.co/shared-ui/dist/meter.d.ts +24 -0
  566. package/node_modules/@undefineds.co/shared-ui/dist/meter.js +22 -0
  567. package/node_modules/@undefineds.co/shared-ui/dist/native-select.d.ts +5 -0
  568. package/node_modules/@undefineds.co/shared-ui/dist/native-select.js +7 -0
  569. package/node_modules/@undefineds.co/shared-ui/dist/notice.d.ts +25 -0
  570. package/node_modules/@undefineds.co/shared-ui/dist/notice.js +32 -0
  571. package/node_modules/@undefineds.co/shared-ui/dist/pod-sign-in/AccountSections.d.ts +12 -5
  572. package/node_modules/@undefineds.co/shared-ui/dist/pod-sign-in/AccountSections.js +8 -2
  573. package/node_modules/@undefineds.co/shared-ui/dist/pod-sign-in/ConsentView.d.ts +4 -2
  574. package/node_modules/@undefineds.co/shared-ui/dist/pod-sign-in/ConsentView.js +3 -3
  575. package/node_modules/@undefineds.co/shared-ui/dist/pod-sign-in/DeviceDialogs.d.ts +3 -3
  576. package/node_modules/@undefineds.co/shared-ui/dist/pod-sign-in/IdpChrome.d.ts +1 -1
  577. package/node_modules/@undefineds.co/shared-ui/dist/pod-sign-in/IdpChrome.js +1 -1
  578. package/node_modules/@undefineds.co/shared-ui/dist/pod-sign-in/IdpViews.d.ts +1 -1
  579. package/node_modules/@undefineds.co/shared-ui/dist/pod-sign-in/IdpViews.js +5 -4
  580. package/node_modules/@undefineds.co/shared-ui/dist/pod-sign-in/NetworkPanel.d.ts +1 -1
  581. package/node_modules/@undefineds.co/shared-ui/dist/pod-sign-in/PodSignIn.d.ts +5 -3
  582. package/node_modules/@undefineds.co/shared-ui/dist/pod-sign-in/PodSignIn.js +2 -2
  583. package/node_modules/@undefineds.co/shared-ui/dist/pod-sign-in/PodSignInFrame.d.ts +1 -1
  584. package/node_modules/@undefineds.co/shared-ui/dist/pod-sign-in/PodSignInFrame.js +1 -1
  585. package/node_modules/@undefineds.co/shared-ui/dist/pod-sign-in/StorageBadge.d.ts +1 -1
  586. package/node_modules/@undefineds.co/shared-ui/dist/pod-sign-in/account-parts.d.ts +2 -2
  587. package/node_modules/@undefineds.co/shared-ui/dist/pod-sign-in/copy.d.ts +5 -0
  588. package/node_modules/@undefineds.co/shared-ui/dist/pod-sign-in/copy.js +10 -0
  589. package/node_modules/@undefineds.co/shared-ui/dist/pod-sign-in/index.d.ts +15 -15
  590. package/node_modules/@undefineds.co/shared-ui/dist/pod-sign-in/parts.d.ts +9 -18
  591. package/node_modules/@undefineds.co/shared-ui/dist/pod-sign-in/parts.js +11 -13
  592. package/node_modules/@undefineds.co/shared-ui/dist/search-input.d.ts +5 -0
  593. package/node_modules/@undefineds.co/shared-ui/dist/search-input.js +8 -0
  594. package/node_modules/@undefineds.co/shared-ui/dist/section-header.d.ts +13 -0
  595. package/node_modules/@undefineds.co/shared-ui/dist/section-header.js +10 -0
  596. package/node_modules/@undefineds.co/shared-ui/dist/segmented-control.d.ts +30 -0
  597. package/node_modules/@undefineds.co/shared-ui/dist/segmented-control.js +81 -0
  598. package/node_modules/@undefineds.co/shared-ui/dist/select.d.ts +10 -0
  599. package/node_modules/@undefineds.co/shared-ui/dist/select.js +20 -0
  600. package/node_modules/@undefineds.co/shared-ui/dist/setting-row.d.ts +23 -0
  601. package/node_modules/@undefineds.co/shared-ui/dist/setting-row.js +14 -0
  602. package/node_modules/@undefineds.co/shared-ui/dist/status.d.ts +35 -0
  603. package/node_modules/@undefineds.co/shared-ui/dist/status.js +29 -0
  604. package/node_modules/@undefineds.co/shared-ui/dist/textarea.d.ts +4 -0
  605. package/node_modules/@undefineds.co/shared-ui/dist/textarea.js +6 -0
  606. package/node_modules/@undefineds.co/shared-ui/dist/theme.css +141 -75
  607. package/node_modules/@undefineds.co/shared-ui/dist/toast.js +1 -1
  608. package/node_modules/@undefineds.co/shared-ui/dist/tooltip.d.ts +2 -1
  609. package/node_modules/@undefineds.co/shared-ui/dist/tooltip.js +3 -2
  610. package/node_modules/@undefineds.co/shared-ui/dist/workspace.d.ts +14 -0
  611. package/node_modules/@undefineds.co/shared-ui/dist/workspace.js +14 -0
  612. package/node_modules/@undefineds.co/shared-ui/package.json +3 -2
  613. package/node_modules/@undefineds.co/solid-sdk/dist/access-route.cjs +13 -9
  614. package/node_modules/@undefineds.co/solid-sdk/dist/access-route.d.ts +2 -1
  615. package/node_modules/@undefineds.co/solid-sdk/dist/access-route.js +20 -10
  616. package/node_modules/@undefineds.co/solid-sdk/dist/index.bun.js +9 -0
  617. package/node_modules/@undefineds.co/solid-sdk/dist/index.cjs +177 -101
  618. package/node_modules/@undefineds.co/solid-sdk/dist/index.d.ts +8 -8
  619. package/node_modules/@undefineds.co/solid-sdk/dist/local-route-fetch.cjs +61 -17
  620. package/node_modules/@undefineds.co/solid-sdk/dist/local-route-fetch.d.ts +23 -0
  621. package/node_modules/@undefineds.co/solid-sdk/dist/local-route-fetch.js +73 -11
  622. package/node_modules/@undefineds.co/solid-sdk/dist/react.d.ts +2 -2
  623. package/node_modules/@undefineds.co/solid-sdk/dist/session.cjs +333 -0
  624. package/node_modules/@undefineds.co/solid-sdk/dist/session.js +54 -25
  625. package/node_modules/@undefineds.co/solid-sdk/dist/storage-selection.d.ts +2 -2
  626. package/node_modules/@undefineds.co/solid-sdk/package.json +4 -2
  627. package/node_modules/jose/package.json +120 -30
  628. package/node_modules/openid-client/node_modules/jose/package.json +1 -1
  629. package/node_modules/openid-client/types/index.d.ts +623 -0
  630. package/package.json +13 -7
  631. package/scripts/patch-jose.js +5 -3
  632. package/static/app/assets/index-hMwukuNA.js +230 -0
  633. package/static/app/assets/inrupt-smoke.js +57 -56
  634. package/static/app/assets/main.css +1 -1
  635. package/static/app/assets/main.js +30 -30
  636. package/static/app/auth.html +2 -2
  637. package/static/app/brand/xpod-app-16.svg +1 -0
  638. package/static/app/brand/xpod-app-24.svg +1 -0
  639. package/static/app/index.html +3 -3
  640. package/static/app/inrupt-smoke.html +2 -1
  641. package/static/dashboard/assets/AccountAuthBoundary-Dv52SZc6.js +1 -0
  642. package/static/dashboard/assets/DesktopOidcCallback-DaT_Rumf.js +1 -0
  643. package/static/dashboard/assets/DevicePages-HjclpIVm.js +2 -0
  644. package/static/dashboard/assets/ModelsPage-Be2TPd-x.js +11 -0
  645. package/static/dashboard/assets/PaneListHeader-DtvnRmFq.js +1 -0
  646. package/static/dashboard/assets/PodDeletionAuthorizationPanel-BJk_8rJq.js +42 -0
  647. package/static/dashboard/assets/PodPage-C4gzEspV.js +1 -0
  648. package/static/dashboard/assets/SystemSettingsPage-HaNrP1H1.js +1 -0
  649. package/static/dashboard/assets/TasksPage-BdO5K2L7.js +1 -0
  650. package/static/dashboard/assets/TasksPage-DPpAgn4C.css +1 -0
  651. package/static/dashboard/assets/WebDesktopEntry-Cj9_ZfJU.js +1 -0
  652. package/static/dashboard/assets/XpodAiConnectionsPodStore-B7gmXBmC.js +3 -0
  653. package/static/dashboard/assets/XpodShellApp-Bwom2xL3.css +1 -0
  654. package/static/dashboard/assets/XpodShellApp-D_KY4nCW.js +4 -0
  655. package/static/dashboard/assets/account-session-DlcKNG7k.js +1 -0
  656. package/static/dashboard/assets/button-wslF55uZ.js +1 -0
  657. package/static/dashboard/assets/collection-runtime-uxxgEu13.js +1 -0
  658. package/static/dashboard/assets/createLucideIcon-BJQl82Qk.js +1 -0
  659. package/static/dashboard/assets/dashboard-CbJ-JkrI.css +1 -0
  660. package/static/dashboard/assets/dashboard-Or0gnkou.js +12 -0
  661. package/static/dashboard/assets/index-BqFeOML9.js +1 -0
  662. package/static/dashboard/assets/index-DgKn1twH.js +20 -0
  663. package/static/dashboard/assets/label-CS6Sx6Zb.js +1 -0
  664. package/static/dashboard/assets/list-UyhlCFKk.js +1 -0
  665. package/static/dashboard/assets/nav-item-style-CW1Nnorq.js +1 -0
  666. package/static/dashboard/assets/pod-collections-host-DjK2xf-b.js +8 -0
  667. package/static/dashboard/assets/safe-continuation-ClWAhcma.js +1 -0
  668. package/static/dashboard/assets/section-header-CEIEcco-.js +1 -0
  669. package/static/dashboard/assets/setting-row-CaYv3dfF.js +1 -0
  670. package/static/dashboard/assets/xpod-remembered-login-BUF9fin1.js +310 -0
  671. package/static/dashboard/auth.html +2 -2
  672. package/static/dashboard/brand/xpod-app-16.svg +1 -0
  673. package/static/dashboard/brand/xpod-app-24.svg +1 -0
  674. package/static/dashboard/dashboard.html +4 -3
  675. package/static/settings/assets/AccountAuthBoundary-Chqd38oU.js +1 -0
  676. package/static/settings/assets/DesktopOidcCallback-VUrOSM_q.js +1 -0
  677. package/static/settings/assets/DevicePages-C6qwvWwu.js +2 -0
  678. package/static/settings/assets/ModelsPage-Ry_dObRQ.js +11 -0
  679. package/static/settings/assets/PaneListHeader-B5RkRqr4.js +1 -0
  680. package/static/settings/assets/PodDeletionAuthorizationPanel-DPM-5Izt.js +42 -0
  681. package/static/settings/assets/PodPage-CxND6wwc.js +1 -0
  682. package/static/settings/assets/SystemSettingsPage-C8EdMkW7.js +1 -0
  683. package/static/settings/assets/TasksPage-DPpAgn4C.css +1 -0
  684. package/static/settings/assets/TasksPage-DuqptEm8.js +1 -0
  685. package/static/settings/assets/WebDesktopEntry-BRcyktkv.js +1 -0
  686. package/static/settings/assets/XpodAiConnectionsPodStore-CyA_BJVC.js +3 -0
  687. package/static/settings/assets/XpodShellApp-Bwom2xL3.css +1 -0
  688. package/static/settings/assets/XpodShellApp-CsivHJl0.js +4 -0
  689. package/static/settings/assets/XpodThemeProvider-CbJ-JkrI.css +1 -0
  690. package/static/settings/assets/XpodThemeProvider-DK3pIdRG.js +12 -0
  691. package/static/settings/assets/account-session-DJOZ03xr.js +1 -0
  692. package/static/settings/assets/auth-callback-GIBYEz_7.js +1 -0
  693. package/static/settings/assets/button-D3yW-2o1.js +1 -0
  694. package/static/settings/assets/collection-runtime-DfGo25mh.js +1 -0
  695. package/static/settings/assets/createLucideIcon-CacwLsmB.js +1 -0
  696. package/static/settings/assets/index-r5KRYsKC.js +20 -0
  697. package/static/settings/assets/label-MJjUmvzG.js +1 -0
  698. package/static/settings/assets/list-Ce-5k1MX.js +1 -0
  699. package/static/settings/assets/nav-item-style-ZUbL8KOZ.js +1 -0
  700. package/static/settings/assets/pod-collections-host-DjK2xf-b.js +8 -0
  701. package/static/settings/assets/safe-continuation-vlBZFSlU.js +1 -0
  702. package/static/settings/assets/section-header-DGJdEvQw.js +1 -0
  703. package/static/settings/assets/setting-row-C7tuFiho.js +1 -0
  704. package/static/settings/assets/settings-CyQPih1O.js +1 -0
  705. package/static/settings/assets/xpod-remembered-login-D-TzzT5K.js +567 -0
  706. package/static/settings/auth-callback.html +4 -3
  707. package/static/settings/auth.html +2 -2
  708. package/static/settings/brand/xpod-app-16.svg +1 -0
  709. package/static/settings/brand/xpod-app-24.svg +1 -0
  710. package/static/settings/settings.html +5 -4
  711. package/node_modules/@solid/access-token-verifier/node_modules/n3/browser/n3.min.js +0 -1
  712. package/node_modules/@solid/community-server/node_modules/n3/browser/n3.min.js +0 -1
  713. package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/aggregates.d.ts +0 -19
  714. package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/ast-to-sparql.d.ts +0 -66
  715. package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/compile-time-types.d.ts +0 -40
  716. package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/comunica-patch.d.ts +0 -2
  717. package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/conflict-resolution.d.ts +0 -110
  718. package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/discovery/composite-discovery.d.ts +0 -18
  719. package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/discovery/index.d.ts +0 -7
  720. package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/discovery/interop-discovery.d.ts +0 -36
  721. package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/discovery/interop-tables.d.ts +0 -37
  722. package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/discovery/interop-types.d.ts +0 -36
  723. package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/discovery/provider-cache.d.ts +0 -99
  724. package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/discovery/typeindex-discovery.d.ts +0 -32
  725. package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/discovery/types.d.ts +0 -132
  726. package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/exact-records.d.ts +0 -21
  727. package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/execution/index.d.ts +0 -14
  728. package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/execution/ldp-executor.d.ts +0 -76
  729. package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/execution/ldp-strategy.d.ts +0 -53
  730. package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/execution/pod-executor-types.d.ts +0 -9
  731. package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/execution/pod-executor.d.ts +0 -73
  732. package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/execution/sparql-strategy.d.ts +0 -31
  733. package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/execution/strategy-factory.d.ts +0 -42
  734. package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/execution/types.d.ts +0 -85
  735. package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/expressions.d.ts +0 -40
  736. package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/federated/executor.d.ts +0 -98
  737. package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/federated/index.d.ts +0 -3
  738. package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/federated/types.d.ts +0 -69
  739. package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/notifications/channels/base-channel.d.ts +0 -29
  740. package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/notifications/channels/index.d.ts +0 -4
  741. package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/notifications/channels/sse-channel.d.ts +0 -50
  742. package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/notifications/channels/websocket-channel.d.ts +0 -16
  743. package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/notifications/index.d.ts +0 -3
  744. package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/notifications/notifications-client.d.ts +0 -88
  745. package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/notifications/types.d.ts +0 -228
  746. package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/order-by.d.ts +0 -9
  747. package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/pod-database.d.ts +0 -548
  748. package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/pod-dialect.d.ts +0 -324
  749. package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/pod-discovery.d.ts +0 -20
  750. package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/pod-session.d.ts +0 -52
  751. package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/profile-manager.d.ts +0 -90
  752. package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/query-builders/default-id-template.d.ts +0 -10
  753. package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/query-builders/delete-query-builder.d.ts +0 -31
  754. package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/query-builders/helpers.d.ts +0 -11
  755. package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/query-builders/index.d.ts +0 -7
  756. package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/query-builders/insert-query-builder.d.ts +0 -37
  757. package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/query-builders/select-query-builder.d.ts +0 -150
  758. package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/query-builders/types.d.ts +0 -40
  759. package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/query-builders/update-query-builder.d.ts +0 -34
  760. package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/query-conditions.d.ts +0 -60
  761. package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/query-where-policy.d.ts +0 -8
  762. package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/rdf-constants.d.ts +0 -16
  763. package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/rdf-schema-parser.d.ts +0 -34
  764. package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/repository.d.ts +0 -78
  765. package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/resource-reference.d.ts +0 -31
  766. package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/resource-resolver/base-resolver.d.ts +0 -141
  767. package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/resource-resolver/document-resolver.d.ts +0 -36
  768. package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/resource-resolver/factory.d.ts +0 -27
  769. package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/resource-resolver/fragment-resolver.d.ts +0 -34
  770. package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/resource-resolver/index.d.ts +0 -11
  771. package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/resource-resolver/types.d.ts +0 -57
  772. package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/runtime/pod-runtime.d.ts +0 -60
  773. package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/schema/columns.d.ts +0 -74
  774. package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/schema/defs.d.ts +0 -101
  775. package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/schema/factories.d.ts +0 -29
  776. package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/schema/index.d.ts +0 -9
  777. package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/schema/pod-table.d.ts +0 -118
  778. package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/schema/relations.d.ts +0 -26
  779. package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/schema/solid-schema.d.ts +0 -22
  780. package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/schema/types.d.ts +0 -45
  781. package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/schema/utils.d.ts +0 -15
  782. package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/select-plan.d.ts +0 -50
  783. package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/services/pod-services.d.ts +0 -43
  784. package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/shape/generator.d.ts +0 -12
  785. package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/shape/index.d.ts +0 -4
  786. package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/shape/manager.d.ts +0 -45
  787. package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/shape/shacl-parser.d.ts +0 -19
  788. package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/shape/shacl.d.ts +0 -11
  789. package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/shape/types.d.ts +0 -149
  790. package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/shape/validator.d.ts +0 -11
  791. package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/solid-n3-client.d.ts +0 -86
  792. package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/sparql/builder/expression-builder.d.ts +0 -56
  793. package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/sparql/builder/select-builder.d.ts +0 -44
  794. package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/sparql/builder/update-builder.d.ts +0 -33
  795. package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/sparql/helpers.d.ts +0 -19
  796. package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/sparql/types.d.ts +0 -10
  797. package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/sparql-engine.d.ts +0 -16
  798. package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/sparql-executor.d.ts +0 -40
  799. package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/subject/index.d.ts +0 -29
  800. package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/subject/resolver.d.ts +0 -116
  801. package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/subject/types.d.ts +0 -97
  802. package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/triple/builder.d.ts +0 -86
  803. package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/triple/handlers/array.d.ts +0 -23
  804. package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/triple/handlers/default.d.ts +0 -20
  805. package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/triple/handlers/index.d.ts +0 -35
  806. package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/triple/handlers/inline.d.ts +0 -35
  807. package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/triple/handlers/inverse.d.ts +0 -26
  808. package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/triple/handlers/uri.d.ts +0 -28
  809. package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/triple/index.d.ts +0 -9
  810. package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/triple/types.d.ts +0 -156
  811. package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/typeindex-manager.d.ts +0 -130
  812. package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/types.d.ts +0 -57
  813. package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/uri/index.d.ts +0 -8
  814. package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/uri/resolver.d.ts +0 -153
  815. package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/uri/types.d.ts +0 -154
  816. package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/utils/debug-logger.d.ts +0 -19
  817. package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/utils/origin-auth.d.ts +0 -28
  818. package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/utils/pod-root.d.ts +0 -15
  819. package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/zod-integration.d.ts +0 -97
  820. package/node_modules/@undefineds.co/drizzle-solid/dist/esm/driver.d.ts +0 -60
  821. package/node_modules/@undefineds.co/drizzle-solid/dist/esm/index.d.ts +0 -31
  822. package/node_modules/@undefineds.co/drizzle-solid/dist/esm/pod.d.ts +0 -140
  823. package/node_modules/@undefineds.co/drizzle-solid/dist/esm/solid.d.ts +0 -21
  824. package/node_modules/@undefineds.co/drizzle-solid/dist/esm/test-utils/real-test-helpers.d.ts +0 -5
  825. package/node_modules/@undefineds.co/drizzle-solid/dist/esm/types/sparql-types.d.ts +0 -27
  826. package/node_modules/@undefineds.co/drizzle-solid/dist/esm/utils/find-by-iri.d.ts +0 -11
  827. package/node_modules/@undefineds.co/drizzle-solid/dist/esm/utils/helpers.d.ts +0 -17
  828. package/node_modules/@undefineds.co/drizzle-solid/dist/esm/utils/namespace.d.ts +0 -4
  829. package/node_modules/@undefineds.co/drizzle-solid/dist/esm/utils/rdf-helpers.d.ts +0 -17
  830. package/node_modules/@undefineds.co/drizzle-solid/dist/esm/utils/rdf-validation.d.ts +0 -27
  831. package/node_modules/@undefineds.co/drizzle-solid/dist/esm/utils/thing-operations.d.ts +0 -28
  832. package/node_modules/@undefineds.co/drizzle-solid/dist/esm/utils/webid-resolver.d.ts +0 -23
  833. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/index.ts +0 -4
  834. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/locales/index.ts +0 -1
  835. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/mini/index.ts +0 -3
  836. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v3/ZodError.ts +0 -330
  837. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v3/benchmarks/datetime.ts +0 -58
  838. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v3/benchmarks/discriminatedUnion.ts +0 -80
  839. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v3/benchmarks/index.ts +0 -59
  840. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v3/benchmarks/ipv4.ts +0 -57
  841. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v3/benchmarks/object.ts +0 -69
  842. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v3/benchmarks/primitives.ts +0 -162
  843. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v3/benchmarks/realworld.ts +0 -63
  844. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v3/benchmarks/string.ts +0 -55
  845. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v3/benchmarks/union.ts +0 -80
  846. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v3/errors.ts +0 -13
  847. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v3/external.ts +0 -6
  848. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v3/helpers/enumUtil.ts +0 -17
  849. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v3/helpers/errorUtil.ts +0 -8
  850. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v3/helpers/parseUtil.ts +0 -176
  851. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v3/helpers/partialUtil.ts +0 -34
  852. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v3/helpers/typeAliases.ts +0 -2
  853. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v3/helpers/util.ts +0 -224
  854. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v3/index.ts +0 -4
  855. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v3/locales/en.ts +0 -124
  856. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v3/standard-schema.ts +0 -113
  857. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v3/tests/Mocker.ts +0 -54
  858. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v3/tests/all-errors.test.ts +0 -157
  859. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v3/tests/anyunknown.test.ts +0 -28
  860. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v3/tests/array.test.ts +0 -71
  861. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v3/tests/async-parsing.test.ts +0 -388
  862. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v3/tests/async-refinements.test.ts +0 -46
  863. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v3/tests/base.test.ts +0 -29
  864. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v3/tests/bigint.test.ts +0 -55
  865. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v3/tests/branded.test.ts +0 -53
  866. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v3/tests/catch.test.ts +0 -220
  867. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v3/tests/coerce.test.ts +0 -133
  868. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v3/tests/complex.test.ts +0 -70
  869. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v3/tests/custom.test.ts +0 -31
  870. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v3/tests/date.test.ts +0 -32
  871. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v3/tests/deepmasking.test.ts +0 -186
  872. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v3/tests/default.test.ts +0 -112
  873. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v3/tests/description.test.ts +0 -33
  874. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v3/tests/discriminated-unions.test.ts +0 -315
  875. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v3/tests/enum.test.ts +0 -80
  876. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v3/tests/error.test.ts +0 -551
  877. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v3/tests/firstparty.test.ts +0 -87
  878. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v3/tests/firstpartyschematypes.test.ts +0 -21
  879. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v3/tests/function.test.ts +0 -261
  880. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v3/tests/generics.test.ts +0 -48
  881. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v3/tests/instanceof.test.ts +0 -37
  882. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v3/tests/intersection.test.ts +0 -110
  883. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v3/tests/language-server.source.ts +0 -76
  884. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v3/tests/language-server.test.ts +0 -207
  885. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v3/tests/literal.test.ts +0 -36
  886. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v3/tests/map.test.ts +0 -110
  887. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v3/tests/masking.test.ts +0 -4
  888. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v3/tests/mocker.test.ts +0 -19
  889. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v3/tests/nan.test.ts +0 -24
  890. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v3/tests/nativeEnum.test.ts +0 -87
  891. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v3/tests/nullable.test.ts +0 -42
  892. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v3/tests/number.test.ts +0 -176
  893. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v3/tests/object-augmentation.test.ts +0 -29
  894. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v3/tests/object-in-es5-env.test.ts +0 -29
  895. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v3/tests/object.test.ts +0 -434
  896. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v3/tests/optional.test.ts +0 -42
  897. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v3/tests/parseUtil.test.ts +0 -23
  898. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v3/tests/parser.test.ts +0 -41
  899. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v3/tests/partials.test.ts +0 -243
  900. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v3/tests/pickomit.test.ts +0 -111
  901. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v3/tests/pipeline.test.ts +0 -29
  902. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v3/tests/preprocess.test.ts +0 -186
  903. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v3/tests/primitive.test.ts +0 -440
  904. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v3/tests/promise.test.ts +0 -90
  905. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v3/tests/readonly.test.ts +0 -194
  906. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v3/tests/record.test.ts +0 -171
  907. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v3/tests/recursive.test.ts +0 -197
  908. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v3/tests/refine.test.ts +0 -313
  909. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v3/tests/safeparse.test.ts +0 -27
  910. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v3/tests/set.test.ts +0 -142
  911. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v3/tests/standard-schema.test.ts +0 -83
  912. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v3/tests/string.test.ts +0 -916
  913. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v3/tests/transformer.test.ts +0 -233
  914. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v3/tests/tuple.test.ts +0 -90
  915. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v3/tests/unions.test.ts +0 -57
  916. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v3/tests/validations.test.ts +0 -133
  917. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v3/tests/void.test.ts +0 -15
  918. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v3/types.ts +0 -5138
  919. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/checks.ts +0 -32
  920. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/coerce.ts +0 -27
  921. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/compat.ts +0 -70
  922. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/errors.ts +0 -82
  923. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/external.ts +0 -52
  924. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/from-json-schema.ts +0 -659
  925. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/index.ts +0 -5
  926. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/iso.ts +0 -90
  927. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/parse.ts +0 -82
  928. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/schemas.ts +0 -2672
  929. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/tests/anyunknown.test.ts +0 -26
  930. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/tests/apply.test.ts +0 -59
  931. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/tests/array.test.ts +0 -264
  932. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/tests/assignability.test.ts +0 -216
  933. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/tests/async-parsing.test.ts +0 -381
  934. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/tests/async-refinements.test.ts +0 -68
  935. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/tests/base.test.ts +0 -7
  936. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/tests/bigint.test.ts +0 -54
  937. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/tests/brand.test.ts +0 -106
  938. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/tests/catch.test.ts +0 -326
  939. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/tests/coalesce.test.ts +0 -20
  940. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/tests/codec-examples.test.ts +0 -573
  941. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/tests/codec.test.ts +0 -703
  942. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/tests/coerce.test.ts +0 -160
  943. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/tests/continuability.test.ts +0 -374
  944. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/tests/custom.test.ts +0 -40
  945. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/tests/date.test.ts +0 -62
  946. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/tests/datetime.test.ts +0 -302
  947. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/tests/default.test.ts +0 -409
  948. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/tests/describe-meta-checks.test.ts +0 -27
  949. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/tests/description.test.ts +0 -32
  950. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/tests/detached-methods.test.ts +0 -197
  951. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/tests/discriminated-unions.test.ts +0 -694
  952. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/tests/enum.test.ts +0 -285
  953. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/tests/error-utils.test.ts +0 -807
  954. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/tests/error.test.ts +0 -711
  955. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/tests/file.test.ts +0 -96
  956. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/tests/firstparty.test.ts +0 -179
  957. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/tests/fix-json-issue.test.ts +0 -26
  958. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/tests/from-json-schema.test.ts +0 -895
  959. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/tests/function.test.ts +0 -360
  960. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/tests/generics.test.ts +0 -72
  961. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/tests/global-config.test.ts +0 -39
  962. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/tests/hash.test.ts +0 -68
  963. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/tests/index.test.ts +0 -939
  964. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/tests/instanceof.test.ts +0 -60
  965. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/tests/intersection.test.ts +0 -198
  966. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/tests/jitless-allows-eval.test.ts +0 -46
  967. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/tests/json.test.ts +0 -109
  968. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/tests/lazy.test.ts +0 -227
  969. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/tests/literal.test.ts +0 -117
  970. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/tests/locales_ka.test.ts +0 -29
  971. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/tests/locales_ro.test.ts +0 -24
  972. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/tests/map.test.ts +0 -330
  973. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/tests/nan.test.ts +0 -21
  974. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/tests/nested-refine.test.ts +0 -168
  975. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/tests/nonoptional.test.ts +0 -101
  976. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/tests/nullable.test.ts +0 -22
  977. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/tests/number.test.ts +0 -325
  978. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/tests/object.test.ts +0 -717
  979. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/tests/optional.test.ts +0 -333
  980. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/tests/partial.test.ts +0 -450
  981. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/tests/pickomit.test.ts +0 -211
  982. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/tests/pipe.test.ts +0 -101
  983. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/tests/prefault.test.ts +0 -74
  984. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/tests/preprocess-types.test.ts +0 -26
  985. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/tests/preprocess.test.ts +0 -351
  986. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/tests/primitive.test.ts +0 -175
  987. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/tests/promise.test.ts +0 -81
  988. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/tests/prototypes.test.ts +0 -23
  989. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/tests/readonly.test.ts +0 -252
  990. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/tests/record.test.ts +0 -717
  991. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/tests/recursive-types.test.ts +0 -631
  992. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/tests/refine.test.ts +0 -633
  993. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/tests/registries.test.ts +0 -243
  994. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/tests/set.test.ts +0 -181
  995. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/tests/standard-schema.test.ts +0 -134
  996. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/tests/string-formats.test.ts +0 -125
  997. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/tests/string.test.ts +0 -1224
  998. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/tests/stringbool.test.ts +0 -106
  999. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/tests/template-literal.test.ts +0 -771
  1000. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/tests/to-json-schema-methods.test.ts +0 -438
  1001. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/tests/to-json-schema.test.ts +0 -3125
  1002. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/tests/transform.test.ts +0 -378
  1003. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/tests/tuple.test.ts +0 -496
  1004. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/tests/union.test.ts +0 -273
  1005. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/tests/url.test.ts +0 -13
  1006. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/tests/validations.test.ts +0 -283
  1007. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/tests/void.test.ts +0 -12
  1008. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/core/api.ts +0 -1823
  1009. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/core/checks.ts +0 -1293
  1010. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/core/config.ts +0 -15
  1011. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/core/core.ts +0 -153
  1012. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/core/doc.ts +0 -44
  1013. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/core/errors.ts +0 -455
  1014. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/core/index.ts +0 -16
  1015. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/core/json-schema-generator.ts +0 -126
  1016. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/core/json-schema-processors.ts +0 -666
  1017. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/core/json-schema.ts +0 -147
  1018. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/core/parse.ts +0 -195
  1019. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/core/regexes.ts +0 -190
  1020. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/core/registries.ts +0 -105
  1021. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/core/schemas.ts +0 -4730
  1022. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/core/standard-schema.ts +0 -159
  1023. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/core/tests/extend.test.ts +0 -59
  1024. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/core/tests/index.test.ts +0 -46
  1025. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/core/tests/locales/be.test.ts +0 -124
  1026. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/core/tests/locales/el.test.ts +0 -215
  1027. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/core/tests/locales/en.test.ts +0 -22
  1028. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/core/tests/locales/es.test.ts +0 -181
  1029. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/core/tests/locales/fr.test.ts +0 -72
  1030. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/core/tests/locales/he.test.ts +0 -379
  1031. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/core/tests/locales/hr.test.ts +0 -163
  1032. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/core/tests/locales/nl.test.ts +0 -46
  1033. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/core/tests/locales/ru.test.ts +0 -128
  1034. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/core/tests/locales/tr.test.ts +0 -69
  1035. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/core/tests/locales/uz.test.ts +0 -105
  1036. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/core/tests/record-constructor.test.ts +0 -125
  1037. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/core/tests/recursive-tuples.test.ts +0 -45
  1038. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/core/to-json-schema.ts +0 -622
  1039. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/core/util.ts +0 -983
  1040. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/core/versions.ts +0 -5
  1041. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/core/zsf.ts +0 -323
  1042. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/index.ts +0 -4
  1043. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/locales/ar.ts +0 -115
  1044. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/locales/az.ts +0 -111
  1045. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/locales/be.ts +0 -176
  1046. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/locales/bg.ts +0 -128
  1047. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/locales/ca.ts +0 -116
  1048. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/locales/cs.ts +0 -118
  1049. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/locales/da.ts +0 -123
  1050. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/locales/de.ts +0 -116
  1051. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/locales/el.ts +0 -121
  1052. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/locales/en.ts +0 -123
  1053. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/locales/eo.ts +0 -118
  1054. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/locales/es.ts +0 -141
  1055. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/locales/fa.ts +0 -126
  1056. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/locales/fi.ts +0 -121
  1057. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/locales/fr-CA.ts +0 -116
  1058. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/locales/fr.ts +0 -132
  1059. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/locales/he.ts +0 -246
  1060. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/locales/hr.ts +0 -131
  1061. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/locales/hu.ts +0 -117
  1062. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/locales/hy.ts +0 -164
  1063. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/locales/id.ts +0 -115
  1064. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/locales/index.ts +0 -52
  1065. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/locales/is.ts +0 -119
  1066. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/locales/it.ts +0 -116
  1067. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/locales/ja.ts +0 -114
  1068. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/locales/ka.ts +0 -123
  1069. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/locales/kh.ts +0 -7
  1070. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/locales/km.ts +0 -119
  1071. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/locales/ko.ts +0 -121
  1072. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/locales/lt.ts +0 -239
  1073. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/locales/mk.ts +0 -118
  1074. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/locales/ms.ts +0 -115
  1075. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/locales/nl.ts +0 -121
  1076. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/locales/no.ts +0 -116
  1077. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/locales/ota.ts +0 -117
  1078. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/locales/pl.ts +0 -118
  1079. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/locales/ps.ts +0 -126
  1080. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/locales/pt.ts +0 -116
  1081. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/locales/ro.ts +0 -129
  1082. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/locales/ru.ts +0 -176
  1083. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/locales/sl.ts +0 -118
  1084. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/locales/sv.ts +0 -119
  1085. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/locales/ta.ts +0 -118
  1086. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/locales/th.ts +0 -119
  1087. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/locales/tr.ts +0 -111
  1088. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/locales/ua.ts +0 -7
  1089. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/locales/uk.ts +0 -117
  1090. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/locales/ur.ts +0 -119
  1091. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/locales/uz.ts +0 -117
  1092. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/locales/vi.ts +0 -117
  1093. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/locales/yo.ts +0 -124
  1094. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/locales/zh-CN.ts +0 -116
  1095. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/locales/zh-TW.ts +0 -115
  1096. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/mini/checks.ts +0 -32
  1097. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/mini/coerce.ts +0 -27
  1098. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/mini/external.ts +0 -41
  1099. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/mini/index.ts +0 -3
  1100. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/mini/iso.ts +0 -66
  1101. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/mini/parse.ts +0 -14
  1102. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/mini/schemas.ts +0 -1947
  1103. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/mini/tests/apply.test.ts +0 -24
  1104. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/mini/tests/assignability.test.ts +0 -129
  1105. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/mini/tests/brand.test.ts +0 -94
  1106. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/mini/tests/checks.test.ts +0 -144
  1107. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/mini/tests/codec.test.ts +0 -548
  1108. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/mini/tests/computed.test.ts +0 -36
  1109. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/mini/tests/error.test.ts +0 -22
  1110. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/mini/tests/functions.test.ts +0 -5
  1111. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/mini/tests/index.test.ts +0 -993
  1112. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/mini/tests/number.test.ts +0 -95
  1113. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/mini/tests/object.test.ts +0 -227
  1114. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/mini/tests/prototypes.test.ts +0 -43
  1115. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/mini/tests/recursive-types.test.ts +0 -325
  1116. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/mini/tests/standard-schema.test.ts +0 -50
  1117. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/mini/tests/string.test.ts +0 -352
  1118. package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4-mini/index.ts +0 -3
  1119. package/node_modules/@undefineds.co/models/node_modules/n3/browser/n3.min.js +0 -1
  1120. package/node_modules/jose/dist/browser/index.js +0 -30
  1121. package/node_modules/jose/dist/browser/jwe/compact/decrypt.js +0 -27
  1122. package/node_modules/jose/dist/browser/jwe/compact/encrypt.js +0 -26
  1123. package/node_modules/jose/dist/browser/jwe/flattened/decrypt.js +0 -161
  1124. package/node_modules/jose/dist/browser/jwe/flattened/encrypt.js +0 -153
  1125. package/node_modules/jose/dist/browser/jwe/general/decrypt.js +0 -31
  1126. package/node_modules/jose/dist/browser/jwe/general/encrypt.js +0 -174
  1127. package/node_modules/jose/dist/browser/jwk/embedded.js +0 -17
  1128. package/node_modules/jose/dist/browser/jwk/thumbprint.js +0 -53
  1129. package/node_modules/jose/dist/browser/jwks/local.js +0 -124
  1130. package/node_modules/jose/dist/browser/jwks/remote.js +0 -139
  1131. package/node_modules/jose/dist/browser/jws/compact/sign.js +0 -17
  1132. package/node_modules/jose/dist/browser/jws/compact/verify.js +0 -21
  1133. package/node_modules/jose/dist/browser/jws/flattened/sign.js +0 -81
  1134. package/node_modules/jose/dist/browser/jws/flattened/verify.js +0 -122
  1135. package/node_modules/jose/dist/browser/jws/general/sign.js +0 -67
  1136. package/node_modules/jose/dist/browser/jws/general/verify.js +0 -24
  1137. package/node_modules/jose/dist/browser/jwt/decrypt.js +0 -23
  1138. package/node_modules/jose/dist/browser/jwt/encrypt.js +0 -68
  1139. package/node_modules/jose/dist/browser/jwt/produce.js +0 -75
  1140. package/node_modules/jose/dist/browser/jwt/sign.js +0 -20
  1141. package/node_modules/jose/dist/browser/jwt/unsecured.js +0 -32
  1142. package/node_modules/jose/dist/browser/jwt/verify.js +0 -15
  1143. package/node_modules/jose/dist/browser/key/export.js +0 -12
  1144. package/node_modules/jose/dist/browser/key/generate_key_pair.js +0 -4
  1145. package/node_modules/jose/dist/browser/key/generate_secret.js +0 -4
  1146. package/node_modules/jose/dist/browser/key/import.js +0 -45
  1147. package/node_modules/jose/dist/browser/lib/aesgcmkw.js +0 -16
  1148. package/node_modules/jose/dist/browser/lib/buffer_utils.js +0 -51
  1149. package/node_modules/jose/dist/browser/lib/cek.js +0 -20
  1150. package/node_modules/jose/dist/browser/lib/check_iv_length.js +0 -8
  1151. package/node_modules/jose/dist/browser/lib/check_key_type.js +0 -77
  1152. package/node_modules/jose/dist/browser/lib/check_p2s.js +0 -6
  1153. package/node_modules/jose/dist/browser/lib/crypto_key.js +0 -157
  1154. package/node_modules/jose/dist/browser/lib/decrypt_key_management.js +0 -129
  1155. package/node_modules/jose/dist/browser/lib/encrypt_key_management.js +0 -89
  1156. package/node_modules/jose/dist/browser/lib/epoch.js +0 -1
  1157. package/node_modules/jose/dist/browser/lib/format_pem.js +0 -4
  1158. package/node_modules/jose/dist/browser/lib/invalid_key_input.js +0 -31
  1159. package/node_modules/jose/dist/browser/lib/is_disjoint.js +0 -22
  1160. package/node_modules/jose/dist/browser/lib/is_jwk.js +0 -13
  1161. package/node_modules/jose/dist/browser/lib/is_object.js +0 -16
  1162. package/node_modules/jose/dist/browser/lib/iv.js +0 -20
  1163. package/node_modules/jose/dist/browser/lib/jwt_claims_set.js +0 -104
  1164. package/node_modules/jose/dist/browser/lib/private_symbols.js +0 -1
  1165. package/node_modules/jose/dist/browser/lib/secs.js +0 -55
  1166. package/node_modules/jose/dist/browser/lib/validate_algorithms.js +0 -11
  1167. package/node_modules/jose/dist/browser/lib/validate_crit.js +0 -34
  1168. package/node_modules/jose/dist/browser/package.json +0 -1
  1169. package/node_modules/jose/dist/browser/runtime/aeskw.js +0 -32
  1170. package/node_modules/jose/dist/browser/runtime/asn1.js +0 -205
  1171. package/node_modules/jose/dist/browser/runtime/base64url.js +0 -37
  1172. package/node_modules/jose/dist/browser/runtime/bogus.js +0 -6
  1173. package/node_modules/jose/dist/browser/runtime/check_cek_length.js +0 -8
  1174. package/node_modules/jose/dist/browser/runtime/check_key_length.js +0 -8
  1175. package/node_modules/jose/dist/browser/runtime/decrypt.js +0 -91
  1176. package/node_modules/jose/dist/browser/runtime/digest.js +0 -6
  1177. package/node_modules/jose/dist/browser/runtime/ecdhes.js +0 -47
  1178. package/node_modules/jose/dist/browser/runtime/encrypt.js +0 -76
  1179. package/node_modules/jose/dist/browser/runtime/fetch_jwks.js +0 -34
  1180. package/node_modules/jose/dist/browser/runtime/generate.js +0 -143
  1181. package/node_modules/jose/dist/browser/runtime/get_sign_verify_key.js +0 -24
  1182. package/node_modules/jose/dist/browser/runtime/is_key_like.js +0 -8
  1183. package/node_modules/jose/dist/browser/runtime/jwk_to_key.js +0 -104
  1184. package/node_modules/jose/dist/browser/runtime/key_to_jwk.js +0 -21
  1185. package/node_modules/jose/dist/browser/runtime/normalize_key.js +0 -68
  1186. package/node_modules/jose/dist/browser/runtime/pbes2kw.js +0 -51
  1187. package/node_modules/jose/dist/browser/runtime/random.js +0 -2
  1188. package/node_modules/jose/dist/browser/runtime/rsaes.js +0 -37
  1189. package/node_modules/jose/dist/browser/runtime/runtime.js +0 -1
  1190. package/node_modules/jose/dist/browser/runtime/sign.js +0 -11
  1191. package/node_modules/jose/dist/browser/runtime/subtle_dsa.js +0 -28
  1192. package/node_modules/jose/dist/browser/runtime/subtle_rsaes.js +0 -12
  1193. package/node_modules/jose/dist/browser/runtime/timing_safe_equal.js +0 -19
  1194. package/node_modules/jose/dist/browser/runtime/verify.js +0 -16
  1195. package/node_modules/jose/dist/browser/runtime/webcrypto.js +0 -2
  1196. package/node_modules/jose/dist/browser/util/base64url.js +0 -3
  1197. package/node_modules/jose/dist/browser/util/decode_jwt.js +0 -32
  1198. package/node_modules/jose/dist/browser/util/decode_protected_header.js +0 -34
  1199. package/node_modules/jose/dist/browser/util/errors.js +0 -114
  1200. package/node_modules/jose/dist/browser/util/runtime.js +0 -2
  1201. package/node_modules/openid-client/node_modules/jose/dist/browser/index.js +0 -32
  1202. package/node_modules/openid-client/node_modules/jose/dist/browser/jwe/compact/decrypt.js +0 -27
  1203. package/node_modules/openid-client/node_modules/jose/dist/browser/jwe/compact/encrypt.js +0 -26
  1204. package/node_modules/openid-client/node_modules/jose/dist/browser/jwe/flattened/decrypt.js +0 -166
  1205. package/node_modules/openid-client/node_modules/jose/dist/browser/jwe/flattened/encrypt.js +0 -175
  1206. package/node_modules/openid-client/node_modules/jose/dist/browser/jwe/general/decrypt.js +0 -31
  1207. package/node_modules/openid-client/node_modules/jose/dist/browser/jwe/general/encrypt.js +0 -178
  1208. package/node_modules/openid-client/node_modules/jose/dist/browser/jwk/embedded.js +0 -17
  1209. package/node_modules/openid-client/node_modules/jose/dist/browser/jwk/thumbprint.js +0 -53
  1210. package/node_modules/openid-client/node_modules/jose/dist/browser/jwks/local.js +0 -116
  1211. package/node_modules/openid-client/node_modules/jose/dist/browser/jwks/remote.js +0 -76
  1212. package/node_modules/openid-client/node_modules/jose/dist/browser/jws/compact/sign.js +0 -17
  1213. package/node_modules/openid-client/node_modules/jose/dist/browser/jws/compact/verify.js +0 -21
  1214. package/node_modules/openid-client/node_modules/jose/dist/browser/jws/flattened/sign.js +0 -81
  1215. package/node_modules/openid-client/node_modules/jose/dist/browser/jws/flattened/verify.js +0 -115
  1216. package/node_modules/openid-client/node_modules/jose/dist/browser/jws/general/sign.js +0 -67
  1217. package/node_modules/openid-client/node_modules/jose/dist/browser/jws/general/verify.js +0 -24
  1218. package/node_modules/openid-client/node_modules/jose/dist/browser/jwt/decrypt.js +0 -23
  1219. package/node_modules/openid-client/node_modules/jose/dist/browser/jwt/encrypt.js +0 -68
  1220. package/node_modules/openid-client/node_modules/jose/dist/browser/jwt/produce.js +0 -54
  1221. package/node_modules/openid-client/node_modules/jose/dist/browser/jwt/sign.js +0 -21
  1222. package/node_modules/openid-client/node_modules/jose/dist/browser/jwt/unsecured.js +0 -32
  1223. package/node_modules/openid-client/node_modules/jose/dist/browser/jwt/verify.js +0 -16
  1224. package/node_modules/openid-client/node_modules/jose/dist/browser/key/export.js +0 -12
  1225. package/node_modules/openid-client/node_modules/jose/dist/browser/key/generate_key_pair.js +0 -4
  1226. package/node_modules/openid-client/node_modules/jose/dist/browser/key/generate_secret.js +0 -4
  1227. package/node_modules/openid-client/node_modules/jose/dist/browser/key/import.js +0 -50
  1228. package/node_modules/openid-client/node_modules/jose/dist/browser/lib/aesgcmkw.js +0 -14
  1229. package/node_modules/openid-client/node_modules/jose/dist/browser/lib/buffer_utils.js +0 -51
  1230. package/node_modules/openid-client/node_modules/jose/dist/browser/lib/cek.js +0 -20
  1231. package/node_modules/openid-client/node_modules/jose/dist/browser/lib/check_iv_length.js +0 -8
  1232. package/node_modules/openid-client/node_modules/jose/dist/browser/lib/check_key_type.js +0 -45
  1233. package/node_modules/openid-client/node_modules/jose/dist/browser/lib/check_p2s.js +0 -6
  1234. package/node_modules/openid-client/node_modules/jose/dist/browser/lib/crypto_key.js +0 -152
  1235. package/node_modules/openid-client/node_modules/jose/dist/browser/lib/decrypt_key_management.js +0 -127
  1236. package/node_modules/openid-client/node_modules/jose/dist/browser/lib/encrypt_key_management.js +0 -87
  1237. package/node_modules/openid-client/node_modules/jose/dist/browser/lib/epoch.js +0 -1
  1238. package/node_modules/openid-client/node_modules/jose/dist/browser/lib/format_pem.js +0 -4
  1239. package/node_modules/openid-client/node_modules/jose/dist/browser/lib/invalid_key_input.js +0 -30
  1240. package/node_modules/openid-client/node_modules/jose/dist/browser/lib/is_disjoint.js +0 -22
  1241. package/node_modules/openid-client/node_modules/jose/dist/browser/lib/is_object.js +0 -16
  1242. package/node_modules/openid-client/node_modules/jose/dist/browser/lib/iv.js +0 -20
  1243. package/node_modules/openid-client/node_modules/jose/dist/browser/lib/jwt_claims_set.js +0 -102
  1244. package/node_modules/openid-client/node_modules/jose/dist/browser/lib/secs.js +0 -44
  1245. package/node_modules/openid-client/node_modules/jose/dist/browser/lib/validate_algorithms.js +0 -11
  1246. package/node_modules/openid-client/node_modules/jose/dist/browser/lib/validate_crit.js +0 -34
  1247. package/node_modules/openid-client/node_modules/jose/dist/browser/package.json +0 -1
  1248. package/node_modules/openid-client/node_modules/jose/dist/browser/runtime/aeskw.js +0 -32
  1249. package/node_modules/openid-client/node_modules/jose/dist/browser/runtime/asn1.js +0 -202
  1250. package/node_modules/openid-client/node_modules/jose/dist/browser/runtime/base64url.js +0 -37
  1251. package/node_modules/openid-client/node_modules/jose/dist/browser/runtime/bogus.js +0 -6
  1252. package/node_modules/openid-client/node_modules/jose/dist/browser/runtime/check_cek_length.js +0 -8
  1253. package/node_modules/openid-client/node_modules/jose/dist/browser/runtime/check_key_length.js +0 -8
  1254. package/node_modules/openid-client/node_modules/jose/dist/browser/runtime/decrypt.js +0 -85
  1255. package/node_modules/openid-client/node_modules/jose/dist/browser/runtime/digest.js +0 -6
  1256. package/node_modules/openid-client/node_modules/jose/dist/browser/runtime/ecdhes.js +0 -46
  1257. package/node_modules/openid-client/node_modules/jose/dist/browser/runtime/encrypt.js +0 -68
  1258. package/node_modules/openid-client/node_modules/jose/dist/browser/runtime/fetch_jwks.js +0 -34
  1259. package/node_modules/openid-client/node_modules/jose/dist/browser/runtime/generate.js +0 -141
  1260. package/node_modules/openid-client/node_modules/jose/dist/browser/runtime/get_sign_verify_key.js +0 -17
  1261. package/node_modules/openid-client/node_modules/jose/dist/browser/runtime/is_key_like.js +0 -5
  1262. package/node_modules/openid-client/node_modules/jose/dist/browser/runtime/jwk_to_key.js +0 -143
  1263. package/node_modules/openid-client/node_modules/jose/dist/browser/runtime/key_to_jwk.js +0 -21
  1264. package/node_modules/openid-client/node_modules/jose/dist/browser/runtime/pbes2kw.js +0 -51
  1265. package/node_modules/openid-client/node_modules/jose/dist/browser/runtime/random.js +0 -2
  1266. package/node_modules/openid-client/node_modules/jose/dist/browser/runtime/rsaes.js +0 -37
  1267. package/node_modules/openid-client/node_modules/jose/dist/browser/runtime/runtime.js +0 -1
  1268. package/node_modules/openid-client/node_modules/jose/dist/browser/runtime/sign.js +0 -11
  1269. package/node_modules/openid-client/node_modules/jose/dist/browser/runtime/subtle_dsa.js +0 -26
  1270. package/node_modules/openid-client/node_modules/jose/dist/browser/runtime/subtle_rsaes.js +0 -12
  1271. package/node_modules/openid-client/node_modules/jose/dist/browser/runtime/timing_safe_equal.js +0 -19
  1272. package/node_modules/openid-client/node_modules/jose/dist/browser/runtime/verify.js +0 -16
  1273. package/node_modules/openid-client/node_modules/jose/dist/browser/runtime/webcrypto.js +0 -2
  1274. package/node_modules/openid-client/node_modules/jose/dist/browser/runtime/zlib.js +0 -7
  1275. package/node_modules/openid-client/node_modules/jose/dist/browser/util/base64url.js +0 -3
  1276. package/node_modules/openid-client/node_modules/jose/dist/browser/util/decode_jwt.js +0 -32
  1277. package/node_modules/openid-client/node_modules/jose/dist/browser/util/decode_protected_header.js +0 -34
  1278. package/node_modules/openid-client/node_modules/jose/dist/browser/util/errors.js +0 -158
  1279. package/node_modules/openid-client/node_modules/jose/dist/browser/util/runtime.js +0 -2
  1280. package/static/app/assets/index-BCZVzMpj.js +0 -230
  1281. package/static/dashboard/assets/AiConfigContext-CZEW16so.js +0 -1
  1282. package/static/dashboard/assets/AiConfigPage-Cfp0fRX1.js +0 -1
  1283. package/static/dashboard/assets/DocumentProcessingPanel-DaaRCLp6.js +0 -1
  1284. package/static/dashboard/assets/IndexLifecyclePanel-BCz3jNM8.js +0 -1
  1285. package/static/dashboard/assets/IndexSubjectPanel-DVCVIt7V.js +0 -1
  1286. package/static/dashboard/assets/ModelAssignmentsPanel-DxauxtEY.js +0 -1
  1287. package/static/dashboard/assets/ModelsPage-B8F3AtZL.js +0 -11
  1288. package/static/dashboard/assets/NetworkPage-Cu7ty71x.js +0 -2
  1289. package/static/dashboard/assets/PaneListHeader-BEAXSlD9.js +0 -1
  1290. package/static/dashboard/assets/SearchIndexingPanel-DEr1EDDC.js +0 -1
  1291. package/static/dashboard/assets/StatusSubjectPanel-Cg92MGhO.js +0 -1
  1292. package/static/dashboard/assets/StatusWorkspace-BmJSOF3z.js +0 -1
  1293. package/static/dashboard/assets/SystemSettingsPage-rziu4Q3U.js +0 -1
  1294. package/static/dashboard/assets/SystemSettingsSubjectPanel-D16DGDNW.js +0 -33
  1295. package/static/dashboard/assets/XpodAiConnectionsPodStore-FlZ0LEn0.js +0 -18
  1296. package/static/dashboard/assets/activity-D55X-5L5.js +0 -1
  1297. package/static/dashboard/assets/admin-C6qCRFiY.js +0 -1
  1298. package/static/dashboard/assets/ai-connections-Dr4-rSzX.js +0 -1
  1299. package/static/dashboard/assets/badge-CRf1ISRJ.js +0 -1
  1300. package/static/dashboard/assets/collection-runtime-CfXMuwNc.js +0 -1
  1301. package/static/dashboard/assets/dashboard-B3kGI946.css +0 -1
  1302. package/static/dashboard/assets/dashboard-D4DWPaAy.js +0 -306
  1303. package/static/dashboard/assets/dialog-EVyIyybL.js +0 -1
  1304. package/static/dashboard/assets/download-Et4aRDT2.js +0 -1
  1305. package/static/dashboard/assets/external-link-DT746o7t.js +0 -1
  1306. package/static/dashboard/assets/index-D2agcVRx.js +0 -41
  1307. package/static/dashboard/assets/index-_wC13YGI.js +0 -1
  1308. package/static/dashboard/assets/index-z6TnJzW6.js +0 -4
  1309. package/static/dashboard/assets/key-round-CHnogQ1D.js +0 -1
  1310. package/static/dashboard/assets/pod-collections-host-KnnGFZHL.js +0 -8
  1311. package/static/dashboard/assets/rotate-ccw-BNVDC4Zr.js +0 -1
  1312. package/static/dashboard/assets/settings-projection-CUkyprDQ.js +0 -1
  1313. package/static/dashboard/assets/skeleton-BzsZekVf.js +0 -1
  1314. package/static/dashboard/assets/waypoints-CLZA22UN.js +0 -1
  1315. package/static/dashboard/assets/workspace-layout-urYcwAhS.js +0 -1
  1316. package/static/settings/assets/AiConfigContext-B2cVJFNu.js +0 -1
  1317. package/static/settings/assets/AiConfigPage-D_5jSPPF.js +0 -1
  1318. package/static/settings/assets/DocumentProcessingPanel-DodGlYIk.js +0 -1
  1319. package/static/settings/assets/IndexLifecyclePanel-BtH-0GKv.js +0 -1
  1320. package/static/settings/assets/IndexSubjectPanel-CqKhUcw2.js +0 -1
  1321. package/static/settings/assets/ModelAssignmentsPanel-Cam9V9BN.js +0 -1
  1322. package/static/settings/assets/ModelsPage-DWFic09l.js +0 -11
  1323. package/static/settings/assets/NetworkPage-CSwHoAWm.js +0 -2
  1324. package/static/settings/assets/PaneListHeader-270Z179Z.js +0 -1
  1325. package/static/settings/assets/SearchIndexingPanel-ATHKMDBQ.js +0 -1
  1326. package/static/settings/assets/StatusSubjectPanel-DDWo3v3d.js +0 -1
  1327. package/static/settings/assets/StatusWorkspace-BYgqeCBM.js +0 -1
  1328. package/static/settings/assets/SystemSettingsPage-BRaQAFWC.js +0 -1
  1329. package/static/settings/assets/SystemSettingsSubjectPanel-Dc0roh9d.js +0 -33
  1330. package/static/settings/assets/XpodAiConnectionsPodStore-OndzbigX.js +0 -3
  1331. package/static/settings/assets/activity-BAZEToJ3.js +0 -1
  1332. package/static/settings/assets/admin-C6qCRFiY.js +0 -1
  1333. package/static/settings/assets/ai-connections-DexTPyfC.js +0 -1
  1334. package/static/settings/assets/auth-callback-Bd3tvCOa.js +0 -1
  1335. package/static/settings/assets/badge-Cpol0LWF.js +0 -1
  1336. package/static/settings/assets/collection-runtime-B5vGx3gk.js +0 -1
  1337. package/static/settings/assets/dialog-_7AVvv5q.js +0 -1
  1338. package/static/settings/assets/download-DRAi-dnn.js +0 -1
  1339. package/static/settings/assets/external-link--Yq8inDb.js +0 -1
  1340. package/static/settings/assets/global-B3kGI946.css +0 -1
  1341. package/static/settings/assets/global-DMtP8ZF4.js +0 -306
  1342. package/static/settings/assets/index-C36H49PZ.js +0 -4
  1343. package/static/settings/assets/index-CQR3iePj.js +0 -41
  1344. package/static/settings/assets/index-DURnCfoQ.js +0 -1
  1345. package/static/settings/assets/index-browser-kAl2JmYB.js +0 -273
  1346. package/static/settings/assets/key-round-DzpWBVN9.js +0 -1
  1347. package/static/settings/assets/pod-collections-host-KnnGFZHL.js +0 -8
  1348. package/static/settings/assets/rotate-ccw-CtVsCcAx.js +0 -1
  1349. package/static/settings/assets/settings-DQtt6lql.js +0 -1
  1350. package/static/settings/assets/settings-projection-CUkyprDQ.js +0 -1
  1351. package/static/settings/assets/skeleton-R_ACks7d.js +0 -1
  1352. package/static/settings/assets/waypoints-D-Qv_sME.js +0 -1
  1353. package/static/settings/assets/workspace-layout-BSMCQq35.js +0 -1
  1354. /package/static/app/assets/{_commonjsHelpers-B-UnjaXt.js → global-BsV9-QbH.js} +0 -0
@@ -1,3125 +0,0 @@
1
- import { Validator } from "@seriousme/openapi-schema-validator";
2
- import { describe, expect, test } from "vitest";
3
- import * as z from "zod";
4
- // import * as zCore from "zod/v4/core";
5
-
6
- const openAPI30Validator = new Validator();
7
- /** @see https://github.com/colinhacks/zod/issues/5147 */
8
- const validateOpenAPI30Schema = async (zodJSONSchema: Record<string, unknown>): Promise<true> => {
9
- const res = await openAPI30Validator.validate({
10
- openapi: "3.0.0",
11
- info: {
12
- title: "SampleApi",
13
- description: "Sample backend service",
14
- version: "1.0.0",
15
- },
16
- components: { schemas: { test: zodJSONSchema } },
17
- paths: {},
18
- });
19
-
20
- if (!res.valid) {
21
- // `console.error` should make `vitest` trow an unhandled error
22
- // printing the validation messages in consoles
23
- console.error(
24
- `OpenAPI schema is not valid against ${openAPI30Validator.version}`,
25
- JSON.stringify(res.errors, null, 2)
26
- );
27
- }
28
-
29
- return true;
30
- };
31
-
32
- describe("toJSONSchema", () => {
33
- test("primitive types", () => {
34
- expect(z.toJSONSchema(z.string())).toMatchInlineSnapshot(`
35
- {
36
- "$schema": "https://json-schema.org/draft/2020-12/schema",
37
- "type": "string",
38
- }
39
- `);
40
- expect(z.toJSONSchema(z.number())).toMatchInlineSnapshot(`
41
- {
42
- "$schema": "https://json-schema.org/draft/2020-12/schema",
43
- "type": "number",
44
- }
45
- `);
46
- expect(z.toJSONSchema(z.boolean())).toMatchInlineSnapshot(`
47
- {
48
- "$schema": "https://json-schema.org/draft/2020-12/schema",
49
- "type": "boolean",
50
- }
51
- `);
52
- expect(z.toJSONSchema(z.null())).toMatchInlineSnapshot(`
53
- {
54
- "$schema": "https://json-schema.org/draft/2020-12/schema",
55
- "type": "null",
56
- }
57
- `);
58
- expect(z.toJSONSchema(z.undefined(), { unrepresentable: "any" })).toMatchInlineSnapshot(`
59
- {
60
- "$schema": "https://json-schema.org/draft/2020-12/schema",
61
- }
62
- `);
63
- expect(z.toJSONSchema(z.any())).toMatchInlineSnapshot(`
64
- {
65
- "$schema": "https://json-schema.org/draft/2020-12/schema",
66
- }
67
- `);
68
- expect(z.toJSONSchema(z.unknown())).toMatchInlineSnapshot(`
69
- {
70
- "$schema": "https://json-schema.org/draft/2020-12/schema",
71
- }
72
- `);
73
- expect(z.toJSONSchema(z.never())).toMatchInlineSnapshot(`
74
- {
75
- "$schema": "https://json-schema.org/draft/2020-12/schema",
76
- "not": {},
77
- }
78
- `);
79
- expect(z.toJSONSchema(z.email())).toMatchInlineSnapshot(`
80
- {
81
- "$schema": "https://json-schema.org/draft/2020-12/schema",
82
- "format": "email",
83
- "pattern": "^(?!\\.)(?!.*\\.\\.)([A-Za-z0-9_'+\\-\\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$",
84
- "type": "string",
85
- }
86
- `);
87
- expect(z.toJSONSchema(z.iso.datetime())).toMatchInlineSnapshot(`
88
- {
89
- "$schema": "https://json-schema.org/draft/2020-12/schema",
90
- "format": "date-time",
91
- "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$",
92
- "type": "string",
93
- }
94
- `);
95
- expect(z.toJSONSchema(z.iso.date())).toMatchInlineSnapshot(`
96
- {
97
- "$schema": "https://json-schema.org/draft/2020-12/schema",
98
- "format": "date",
99
- "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$",
100
- "type": "string",
101
- }
102
- `);
103
- expect(z.toJSONSchema(z.iso.time())).toMatchInlineSnapshot(`
104
- {
105
- "$schema": "https://json-schema.org/draft/2020-12/schema",
106
- "pattern": "^(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?$",
107
- "type": "string",
108
- }
109
- `);
110
- expect(z.toJSONSchema(z.iso.time({ precision: -1 }))).toMatchInlineSnapshot(`
111
- {
112
- "$schema": "https://json-schema.org/draft/2020-12/schema",
113
- "pattern": "^(?:[01]\\d|2[0-3]):[0-5]\\d$",
114
- "type": "string",
115
- }
116
- `);
117
- expect(z.toJSONSchema(z.iso.time({ precision: 0 }))).toMatchInlineSnapshot(`
118
- {
119
- "$schema": "https://json-schema.org/draft/2020-12/schema",
120
- "pattern": "^(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d$",
121
- "type": "string",
122
- }
123
- `);
124
- expect(z.toJSONSchema(z.iso.time({ precision: 3 }))).toMatchInlineSnapshot(`
125
- {
126
- "$schema": "https://json-schema.org/draft/2020-12/schema",
127
- "pattern": "^(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d\\.\\d{3}$",
128
- "type": "string",
129
- }
130
- `);
131
- expect(z.toJSONSchema(z.iso.duration())).toMatchInlineSnapshot(`
132
- {
133
- "$schema": "https://json-schema.org/draft/2020-12/schema",
134
- "format": "duration",
135
- "pattern": "^P(?:(\\d+W)|(?!.*W)(?=\\d|T\\d)(\\d+Y)?(\\d+M)?(\\d+D)?(T(?=\\d)(\\d+H)?(\\d+M)?(\\d+([.,]\\d+)?S)?)?)$",
136
- "type": "string",
137
- }
138
- `);
139
- expect(z.toJSONSchema(z.ipv4())).toMatchInlineSnapshot(`
140
- {
141
- "$schema": "https://json-schema.org/draft/2020-12/schema",
142
- "format": "ipv4",
143
- "pattern": "^(?:(?: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])$",
144
- "type": "string",
145
- }
146
- `);
147
- expect(z.toJSONSchema(z.ipv6())).toMatchInlineSnapshot(`
148
- {
149
- "$schema": "https://json-schema.org/draft/2020-12/schema",
150
- "format": "ipv6",
151
- "pattern": "^(([0-9a-fA-F]{1,4}:){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}|:))$",
152
- "type": "string",
153
- }
154
- `);
155
- expect(z.toJSONSchema(z.mac())).toMatchInlineSnapshot(`
156
- {
157
- "$schema": "https://json-schema.org/draft/2020-12/schema",
158
- "format": "mac",
159
- "pattern": "^(?:[0-9A-F]{2}:){5}[0-9A-F]{2}$|^(?:[0-9a-f]{2}:){5}[0-9a-f]{2}$",
160
- "type": "string",
161
- }
162
- `);
163
- expect(z.toJSONSchema(z.mac({ delimiter: ":" }))).toMatchInlineSnapshot(`
164
- {
165
- "$schema": "https://json-schema.org/draft/2020-12/schema",
166
- "format": "mac",
167
- "pattern": "^(?:[0-9A-F]{2}:){5}[0-9A-F]{2}$|^(?:[0-9a-f]{2}:){5}[0-9a-f]{2}$",
168
- "type": "string",
169
- }
170
- `);
171
- expect(z.toJSONSchema(z.mac({ delimiter: "-" }))).toMatchInlineSnapshot(`
172
- {
173
- "$schema": "https://json-schema.org/draft/2020-12/schema",
174
- "format": "mac",
175
- "pattern": "^(?:[0-9A-F]{2}-){5}[0-9A-F]{2}$|^(?:[0-9a-f]{2}-){5}[0-9a-f]{2}$",
176
- "type": "string",
177
- }
178
- `);
179
- expect(z.toJSONSchema(z.uuid())).toMatchInlineSnapshot(`
180
- {
181
- "$schema": "https://json-schema.org/draft/2020-12/schema",
182
- "format": "uuid",
183
- "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$",
184
- "type": "string",
185
- }
186
- `);
187
- expect(z.toJSONSchema(z.guid())).toMatchInlineSnapshot(`
188
- {
189
- "$schema": "https://json-schema.org/draft/2020-12/schema",
190
- "format": "uuid",
191
- "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12})$",
192
- "type": "string",
193
- }
194
- `);
195
- expect(z.toJSONSchema(z.url())).toMatchInlineSnapshot(`
196
- {
197
- "$schema": "https://json-schema.org/draft/2020-12/schema",
198
- "format": "uri",
199
- "type": "string",
200
- }
201
- `);
202
- expect(z.toJSONSchema(z.base64())).toMatchInlineSnapshot(`
203
- {
204
- "$schema": "https://json-schema.org/draft/2020-12/schema",
205
- "contentEncoding": "base64",
206
- "format": "base64",
207
- "pattern": "^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$",
208
- "type": "string",
209
- }
210
- `);
211
- expect(z.toJSONSchema(z.cuid())).toMatchInlineSnapshot(`
212
- {
213
- "$schema": "https://json-schema.org/draft/2020-12/schema",
214
- "format": "cuid",
215
- "pattern": "^[cC][0-9a-z]{6,}$",
216
- "type": "string",
217
- }
218
- `);
219
- // expect(z.toJSONSchema(z.regex(/asdf/))).toMatchInlineSnapshot();
220
- expect(z.toJSONSchema(z.emoji())).toMatchInlineSnapshot(`
221
- {
222
- "$schema": "https://json-schema.org/draft/2020-12/schema",
223
- "format": "emoji",
224
- "pattern": "^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$",
225
- "type": "string",
226
- }
227
- `);
228
- expect(z.toJSONSchema(z.nanoid())).toMatchInlineSnapshot(`
229
- {
230
- "$schema": "https://json-schema.org/draft/2020-12/schema",
231
- "format": "nanoid",
232
- "pattern": "^[a-zA-Z0-9_-]{21}$",
233
- "type": "string",
234
- }
235
- `);
236
- expect(z.toJSONSchema(z.cuid2())).toMatchInlineSnapshot(`
237
- {
238
- "$schema": "https://json-schema.org/draft/2020-12/schema",
239
- "format": "cuid2",
240
- "pattern": "^[0-9a-z]+$",
241
- "type": "string",
242
- }
243
- `);
244
- expect(z.toJSONSchema(z.ulid())).toMatchInlineSnapshot(`
245
- {
246
- "$schema": "https://json-schema.org/draft/2020-12/schema",
247
- "format": "ulid",
248
- "pattern": "^[0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{26}$",
249
- "type": "string",
250
- }
251
- `);
252
- // expect(z.toJSONSchema(z.cidr())).toMatchInlineSnapshot();
253
- expect(z.toJSONSchema(z.number())).toMatchInlineSnapshot(`
254
- {
255
- "$schema": "https://json-schema.org/draft/2020-12/schema",
256
- "type": "number",
257
- }
258
- `);
259
- expect(z.toJSONSchema(z.int())).toMatchInlineSnapshot(`
260
- {
261
- "$schema": "https://json-schema.org/draft/2020-12/schema",
262
- "maximum": 9007199254740991,
263
- "minimum": -9007199254740991,
264
- "type": "integer",
265
- }
266
- `);
267
- expect(z.toJSONSchema(z.int32())).toMatchInlineSnapshot(`
268
- {
269
- "$schema": "https://json-schema.org/draft/2020-12/schema",
270
- "maximum": 2147483647,
271
- "minimum": -2147483648,
272
- "type": "integer",
273
- }
274
- `);
275
- expect(z.toJSONSchema(z.float32())).toMatchInlineSnapshot(`
276
- {
277
- "$schema": "https://json-schema.org/draft/2020-12/schema",
278
- "maximum": 3.4028234663852886e+38,
279
- "minimum": -3.4028234663852886e+38,
280
- "type": "number",
281
- }
282
- `);
283
- expect(z.toJSONSchema(z.float64())).toMatchInlineSnapshot(`
284
- {
285
- "$schema": "https://json-schema.org/draft/2020-12/schema",
286
- "maximum": 1.7976931348623157e+308,
287
- "minimum": -1.7976931348623157e+308,
288
- "type": "number",
289
- }
290
- `);
291
- expect(z.toJSONSchema(z.jwt())).toMatchInlineSnapshot(`
292
- {
293
- "$schema": "https://json-schema.org/draft/2020-12/schema",
294
- "format": "jwt",
295
- "type": "string",
296
- }
297
- `);
298
- });
299
-
300
- test("unsupported schema types", () => {
301
- expect(() => z.toJSONSchema(z.bigint())).toThrow("BigInt cannot be represented in JSON Schema");
302
- expect(() => z.toJSONSchema(z.int64())).toThrow("BigInt cannot be represented in JSON Schema");
303
- expect(() => z.toJSONSchema(z.symbol())).toThrow("Symbols cannot be represented in JSON Schema");
304
- expect(() => z.toJSONSchema(z.void())).toThrow("Void cannot be represented in JSON Schema");
305
- expect(() => z.toJSONSchema(z.undefined())).toThrow("Undefined cannot be represented in JSON Schema");
306
- expect(() => z.toJSONSchema(z.date())).toThrow("Date cannot be represented in JSON Schema");
307
- expect(() => z.toJSONSchema(z.map(z.string(), z.number()))).toThrow("Map cannot be represented in JSON Schema");
308
- expect(() => z.toJSONSchema(z.set(z.string()))).toThrow("Set cannot be represented in JSON Schema");
309
- expect(() => z.toJSONSchema(z.custom(() => true))).toThrow("Custom types cannot be represented in JSON Schema");
310
-
311
- // Transform
312
- const transformSchema = z.string().transform((val) => Number.parseInt(val));
313
- expect(() => z.toJSONSchema(transformSchema)).toThrow("Transforms cannot be represented in JSON Schema");
314
-
315
- // Static catch values
316
- const staticCatchSchema = z.string().catch(() => "sup");
317
- expect(z.toJSONSchema(staticCatchSchema)).toMatchInlineSnapshot(`
318
- {
319
- "$schema": "https://json-schema.org/draft/2020-12/schema",
320
- "default": "sup",
321
- "type": "string",
322
- }
323
- `);
324
-
325
- // Dynamic catch values
326
- const dynamicCatchSchema = z.string().catch((ctx) => `${ctx.issues.length}`);
327
- expect(() => z.toJSONSchema(dynamicCatchSchema)).toThrow("Dynamic catch values are not supported in JSON Schema");
328
- });
329
-
330
- test("string formats", () => {
331
- expect(z.toJSONSchema(z.string().email())).toMatchInlineSnapshot(`
332
- {
333
- "$schema": "https://json-schema.org/draft/2020-12/schema",
334
- "format": "email",
335
- "pattern": "^(?!\\.)(?!.*\\.\\.)([A-Za-z0-9_'+\\-\\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$",
336
- "type": "string",
337
- }
338
- `);
339
- expect(z.toJSONSchema(z.string().uuid())).toMatchInlineSnapshot(`
340
- {
341
- "$schema": "https://json-schema.org/draft/2020-12/schema",
342
- "format": "uuid",
343
- "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$",
344
- "type": "string",
345
- }
346
- `);
347
- expect(z.toJSONSchema(z.iso.datetime())).toMatchInlineSnapshot(`
348
- {
349
- "$schema": "https://json-schema.org/draft/2020-12/schema",
350
- "format": "date-time",
351
- "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$",
352
- "type": "string",
353
- }
354
- `);
355
-
356
- expect(z.toJSONSchema(z.iso.date())).toMatchInlineSnapshot(`
357
- {
358
- "$schema": "https://json-schema.org/draft/2020-12/schema",
359
- "format": "date",
360
- "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$",
361
- "type": "string",
362
- }
363
- `);
364
- expect(z.toJSONSchema(z.iso.time())).toMatchInlineSnapshot(`
365
- {
366
- "$schema": "https://json-schema.org/draft/2020-12/schema",
367
- "pattern": "^(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?$",
368
- "type": "string",
369
- }
370
- `);
371
- expect(z.toJSONSchema(z.iso.duration())).toMatchInlineSnapshot(`
372
- {
373
- "$schema": "https://json-schema.org/draft/2020-12/schema",
374
- "format": "duration",
375
- "pattern": "^P(?:(\\d+W)|(?!.*W)(?=\\d|T\\d)(\\d+Y)?(\\d+M)?(\\d+D)?(T(?=\\d)(\\d+H)?(\\d+M)?(\\d+([.,]\\d+)?S)?)?)$",
376
- "type": "string",
377
- }
378
- `);
379
- // expect(z.toJSONSchema(z.string().ip())).toMatchInlineSnapshot(`
380
- // {
381
- // "pattern": /\\(\\^\\(\\?:\\(\\?: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\\]\\)\\$\\)\\|\\(\\^\\(\\(\\[a-fA-F0-9\\]\\{1,4\\}:\\)\\{7\\}\\|::\\(\\[a-fA-F0-9\\]\\{1,4\\}:\\)\\{0,6\\}\\|\\(\\[a-fA-F0-9\\]\\{1,4\\}:\\)\\{1\\}:\\(\\[a-fA-F0-9\\]\\{1,4\\}:\\)\\{0,5\\}\\|\\(\\[a-fA-F0-9\\]\\{1,4\\}:\\)\\{2\\}:\\(\\[a-fA-F0-9\\]\\{1,4\\}:\\)\\{0,4\\}\\|\\(\\[a-fA-F0-9\\]\\{1,4\\}:\\)\\{3\\}:\\(\\[a-fA-F0-9\\]\\{1,4\\}:\\)\\{0,3\\}\\|\\(\\[a-fA-F0-9\\]\\{1,4\\}:\\)\\{4\\}:\\(\\[a-fA-F0-9\\]\\{1,4\\}:\\)\\{0,2\\}\\|\\(\\[a-fA-F0-9\\]\\{1,4\\}:\\)\\{5\\}:\\(\\[a-fA-F0-9\\]\\{1,4\\}:\\)\\{0,1\\}\\)\\(\\[a-fA-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\\}\\)\\)\\)\\$\\)/,
382
- // "type": "string",
383
- // }
384
- // `);
385
- expect(z.toJSONSchema(z.ipv4())).toMatchInlineSnapshot(`
386
- {
387
- "$schema": "https://json-schema.org/draft/2020-12/schema",
388
- "format": "ipv4",
389
- "pattern": "^(?:(?: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])$",
390
- "type": "string",
391
- }
392
- `);
393
-
394
- expect(z.toJSONSchema(z.ipv6())).toMatchInlineSnapshot(`
395
- {
396
- "$schema": "https://json-schema.org/draft/2020-12/schema",
397
- "format": "ipv6",
398
- "pattern": "^(([0-9a-fA-F]{1,4}:){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}|:))$",
399
- "type": "string",
400
- }
401
- `);
402
-
403
- expect(z.toJSONSchema(z.mac())).toMatchInlineSnapshot(`
404
- {
405
- "$schema": "https://json-schema.org/draft/2020-12/schema",
406
- "format": "mac",
407
- "pattern": "^(?:[0-9A-F]{2}:){5}[0-9A-F]{2}$|^(?:[0-9a-f]{2}:){5}[0-9a-f]{2}$",
408
- "type": "string",
409
- }
410
- `);
411
- expect(z.toJSONSchema(z.mac({ delimiter: ":" }))).toMatchInlineSnapshot(`
412
- {
413
- "$schema": "https://json-schema.org/draft/2020-12/schema",
414
- "format": "mac",
415
- "pattern": "^(?:[0-9A-F]{2}:){5}[0-9A-F]{2}$|^(?:[0-9a-f]{2}:){5}[0-9a-f]{2}$",
416
- "type": "string",
417
- }
418
- `);
419
- expect(z.toJSONSchema(z.mac({ delimiter: "-" }))).toMatchInlineSnapshot(`
420
- {
421
- "$schema": "https://json-schema.org/draft/2020-12/schema",
422
- "format": "mac",
423
- "pattern": "^(?:[0-9A-F]{2}-){5}[0-9A-F]{2}$|^(?:[0-9a-f]{2}-){5}[0-9a-f]{2}$",
424
- "type": "string",
425
- }
426
- `);
427
-
428
- expect(z.toJSONSchema(z.base64())).toMatchInlineSnapshot(`
429
- {
430
- "$schema": "https://json-schema.org/draft/2020-12/schema",
431
- "contentEncoding": "base64",
432
- "format": "base64",
433
- "pattern": "^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$",
434
- "type": "string",
435
- }
436
- `);
437
- expect(z.toJSONSchema(z.url())).toMatchInlineSnapshot(`
438
- {
439
- "$schema": "https://json-schema.org/draft/2020-12/schema",
440
- "format": "uri",
441
- "type": "string",
442
- }
443
- `);
444
- expect(z.toJSONSchema(z.guid())).toMatchInlineSnapshot(`
445
- {
446
- "$schema": "https://json-schema.org/draft/2020-12/schema",
447
- "format": "uuid",
448
- "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12})$",
449
- "type": "string",
450
- }
451
- `);
452
- expect(z.toJSONSchema(z.string().regex(/asdf/))).toMatchInlineSnapshot(`
453
- {
454
- "$schema": "https://json-schema.org/draft/2020-12/schema",
455
- "pattern": "asdf",
456
- "type": "string",
457
- }
458
- `);
459
- });
460
-
461
- test("string patterns", () => {
462
- expect(
463
- z.toJSONSchema(
464
- z
465
- .string()
466
- .startsWith("hello")
467
- .includes("cruel")
468
- .includes("dark", { position: 10 })
469
- .endsWith("world")
470
- .regex(/stuff/)
471
- )
472
- ).toMatchInlineSnapshot(`
473
- {
474
- "$schema": "https://json-schema.org/draft/2020-12/schema",
475
- "allOf": [
476
- {
477
- "pattern": "^hello.*",
478
- },
479
- {
480
- "pattern": "cruel",
481
- },
482
- {
483
- "pattern": "^.{10}dark",
484
- },
485
- {
486
- "pattern": ".*world$",
487
- },
488
- {
489
- "pattern": "stuff",
490
- },
491
- ],
492
- "type": "string",
493
- }
494
- `);
495
-
496
- expect(
497
- z.toJSONSchema(
498
- z
499
- .string()
500
- .startsWith("hello")
501
- .includes("cruel")
502
- .includes("dark", { position: 10 })
503
- .endsWith("world")
504
- .regex(/stuff/),
505
- {
506
- target: "draft-7",
507
- }
508
- )
509
- ).toMatchInlineSnapshot(`
510
- {
511
- "$schema": "http://json-schema.org/draft-07/schema#",
512
- "allOf": [
513
- {
514
- "pattern": "^hello.*",
515
- "type": "string",
516
- },
517
- {
518
- "pattern": "cruel",
519
- "type": "string",
520
- },
521
- {
522
- "pattern": "^.{10}dark",
523
- "type": "string",
524
- },
525
- {
526
- "pattern": ".*world$",
527
- "type": "string",
528
- },
529
- {
530
- "pattern": "stuff",
531
- "type": "string",
532
- },
533
- ],
534
- "type": "string",
535
- }
536
- `);
537
- });
538
-
539
- test("number constraints", () => {
540
- expect(z.toJSONSchema(z.number().min(5).max(10))).toMatchInlineSnapshot(
541
- `
542
- {
543
- "$schema": "https://json-schema.org/draft/2020-12/schema",
544
- "maximum": 10,
545
- "minimum": 5,
546
- "type": "number",
547
- }
548
- `
549
- );
550
-
551
- expect(z.toJSONSchema(z.number().gt(5).gt(10))).toMatchInlineSnapshot(`
552
- {
553
- "$schema": "https://json-schema.org/draft/2020-12/schema",
554
- "exclusiveMinimum": 10,
555
- "type": "number",
556
- }
557
- `);
558
-
559
- expect(z.toJSONSchema(z.number().gt(5).gte(10))).toMatchInlineSnapshot(`
560
- {
561
- "$schema": "https://json-schema.org/draft/2020-12/schema",
562
- "minimum": 10,
563
- "type": "number",
564
- }
565
- `);
566
-
567
- expect(z.toJSONSchema(z.number().lt(5).lt(3))).toMatchInlineSnapshot(`
568
- {
569
- "$schema": "https://json-schema.org/draft/2020-12/schema",
570
- "exclusiveMaximum": 3,
571
- "type": "number",
572
- }
573
- `);
574
-
575
- expect(z.toJSONSchema(z.number().lt(5).lt(3).lte(2))).toMatchInlineSnapshot(`
576
- {
577
- "$schema": "https://json-schema.org/draft/2020-12/schema",
578
- "maximum": 2,
579
- "type": "number",
580
- }
581
- `);
582
-
583
- expect(z.toJSONSchema(z.number().lt(5).lte(3))).toMatchInlineSnapshot(`
584
- {
585
- "$schema": "https://json-schema.org/draft/2020-12/schema",
586
- "maximum": 3,
587
- "type": "number",
588
- }
589
- `);
590
-
591
- expect(z.toJSONSchema(z.number().gt(5).lt(10))).toMatchInlineSnapshot(`
592
- {
593
- "$schema": "https://json-schema.org/draft/2020-12/schema",
594
- "exclusiveMaximum": 10,
595
- "exclusiveMinimum": 5,
596
- "type": "number",
597
- }
598
- `);
599
- expect(z.toJSONSchema(z.number().gte(5).lte(10))).toMatchInlineSnapshot(`
600
- {
601
- "$schema": "https://json-schema.org/draft/2020-12/schema",
602
- "maximum": 10,
603
- "minimum": 5,
604
- "type": "number",
605
- }
606
- `);
607
- expect(z.toJSONSchema(z.number().positive())).toMatchInlineSnapshot(`
608
- {
609
- "$schema": "https://json-schema.org/draft/2020-12/schema",
610
- "exclusiveMinimum": 0,
611
- "type": "number",
612
- }
613
- `);
614
- expect(z.toJSONSchema(z.number().negative())).toMatchInlineSnapshot(`
615
- {
616
- "$schema": "https://json-schema.org/draft/2020-12/schema",
617
- "exclusiveMaximum": 0,
618
- "type": "number",
619
- }
620
- `);
621
- expect(z.toJSONSchema(z.number().nonpositive())).toMatchInlineSnapshot(`
622
- {
623
- "$schema": "https://json-schema.org/draft/2020-12/schema",
624
- "maximum": 0,
625
- "type": "number",
626
- }
627
- `);
628
- expect(z.toJSONSchema(z.number().nonnegative())).toMatchInlineSnapshot(`
629
- {
630
- "$schema": "https://json-schema.org/draft/2020-12/schema",
631
- "minimum": 0,
632
- "type": "number",
633
- }
634
- `);
635
- });
636
-
637
- test("number constraints draft-4", () => {
638
- expect(z.toJSONSchema(z.number().gt(5).lt(10), { target: "draft-4" })).toMatchInlineSnapshot(`
639
- {
640
- "$schema": "http://json-schema.org/draft-04/schema#",
641
- "exclusiveMaximum": true,
642
- "exclusiveMinimum": true,
643
- "maximum": 10,
644
- "minimum": 5,
645
- "type": "number",
646
- }
647
- `);
648
- });
649
-
650
- test("number constraints intersection draft-04", () => {
651
- // When both minimum (from .int()) and exclusiveMinimum (from .positive()) exist,
652
- // the more restrictive constraint should be used
653
- expect(z.toJSONSchema(z.number().int().positive().lte(65535), { target: "draft-04" })).toMatchInlineSnapshot(`
654
- {
655
- "$schema": "http://json-schema.org/draft-04/schema#",
656
- "exclusiveMinimum": true,
657
- "maximum": 65535,
658
- "minimum": 0,
659
- "type": "integer",
660
- }
661
- `);
662
- // Same for openapi-3.0
663
- expect(z.toJSONSchema(z.number().int().positive().lte(65535), { target: "openapi-3.0" })).toMatchInlineSnapshot(`
664
- {
665
- "exclusiveMinimum": true,
666
- "maximum": 65535,
667
- "minimum": 0,
668
- "type": "integer",
669
- }
670
- `);
671
- // When inclusive minimum is more restrictive than exclusive minimum
672
- expect(z.toJSONSchema(z.number().gt(3).gte(10), { target: "draft-04" })).toMatchInlineSnapshot(`
673
- {
674
- "$schema": "http://json-schema.org/draft-04/schema#",
675
- "minimum": 10,
676
- "type": "number",
677
- }
678
- `);
679
- // Same logic for maximum constraints
680
- expect(z.toJSONSchema(z.number().int().negative(), { target: "draft-04" })).toMatchInlineSnapshot(`
681
- {
682
- "$schema": "http://json-schema.org/draft-04/schema#",
683
- "exclusiveMaximum": true,
684
- "maximum": 0,
685
- "minimum": -9007199254740991,
686
- "type": "integer",
687
- }
688
- `);
689
- });
690
-
691
- test("target normalization draft-04 and draft-07", () => {
692
- // Test that both old (draft-4, draft-7) and new (draft-04, draft-07) target formats work
693
- // Test draft-04 / draft-4
694
- expect(z.toJSONSchema(z.number().gt(5), { target: "draft-04" })).toMatchInlineSnapshot(`
695
- {
696
- "$schema": "http://json-schema.org/draft-04/schema#",
697
- "exclusiveMinimum": true,
698
- "minimum": 5,
699
- "type": "number",
700
- }
701
- `);
702
- expect(z.toJSONSchema(z.number().gt(5), { target: "draft-4" })).toMatchInlineSnapshot(`
703
- {
704
- "$schema": "http://json-schema.org/draft-04/schema#",
705
- "exclusiveMinimum": true,
706
- "minimum": 5,
707
- "type": "number",
708
- }
709
- `);
710
- // Test draft-07 / draft-7
711
- expect(z.toJSONSchema(z.number().gt(5), { target: "draft-07" })).toMatchInlineSnapshot(`
712
- {
713
- "$schema": "http://json-schema.org/draft-07/schema#",
714
- "exclusiveMinimum": 5,
715
- "type": "number",
716
- }
717
- `);
718
- expect(z.toJSONSchema(z.number().gt(5), { target: "draft-7" })).toMatchInlineSnapshot(`
719
- {
720
- "$schema": "http://json-schema.org/draft-07/schema#",
721
- "exclusiveMinimum": 5,
722
- "type": "number",
723
- }
724
- `);
725
- });
726
-
727
- test("nullable openapi-3.0", () => {
728
- const schema = z.string().nullable();
729
- const jsonSchema = z.toJSONSchema(schema, { target: "openapi-3.0" });
730
- validateOpenAPI30Schema(jsonSchema);
731
- expect(jsonSchema).toMatchInlineSnapshot(`
732
- {
733
- "nullable": true,
734
- "type": "string",
735
- }
736
- `);
737
- });
738
-
739
- test("union with null openapi-3.0", () => {
740
- const schema = z.union([z.string(), z.null()]);
741
- const jsonSchema = z.toJSONSchema(schema, { target: "openapi-3.0" });
742
- validateOpenAPI30Schema(jsonSchema);
743
- expect(jsonSchema).toMatchInlineSnapshot(`
744
- {
745
- "anyOf": [
746
- {
747
- "type": "string",
748
- },
749
- {
750
- "enum": [
751
- null,
752
- ],
753
- "nullable": true,
754
- "type": "string",
755
- },
756
- ],
757
- }
758
- `);
759
- });
760
-
761
- test("number with exclusive min-max openapi-3.0", () => {
762
- const schema = z.number().lt(100).gt(1);
763
- const jsonSchema = z.toJSONSchema(schema, { target: "openapi-3.0" });
764
- validateOpenAPI30Schema(jsonSchema);
765
- expect(jsonSchema).toMatchInlineSnapshot(`
766
- {
767
- "exclusiveMaximum": true,
768
- "exclusiveMinimum": true,
769
- "maximum": 100,
770
- "minimum": 1,
771
- "type": "number",
772
- }
773
- `);
774
- });
775
-
776
- test("arrays", () => {
777
- expect(z.toJSONSchema(z.array(z.string()))).toMatchInlineSnapshot(`
778
- {
779
- "$schema": "https://json-schema.org/draft/2020-12/schema",
780
- "items": {
781
- "type": "string",
782
- },
783
- "type": "array",
784
- }
785
- `);
786
- });
787
-
788
- test("unions", () => {
789
- const schema = z.union([z.string(), z.number()]);
790
- expect(z.toJSONSchema(schema)).toMatchInlineSnapshot(`
791
- {
792
- "$schema": "https://json-schema.org/draft/2020-12/schema",
793
- "anyOf": [
794
- {
795
- "type": "string",
796
- },
797
- {
798
- "type": "number",
799
- },
800
- ],
801
- }
802
- `);
803
- });
804
-
805
- test("discriminated unions", () => {
806
- const schema = z.discriminatedUnion("type", [
807
- z.object({ type: z.literal("success"), data: z.string() }),
808
- z.object({ type: z.literal("error"), message: z.string() }),
809
- ]);
810
- expect(z.toJSONSchema(schema)).toMatchInlineSnapshot(`
811
- {
812
- "$schema": "https://json-schema.org/draft/2020-12/schema",
813
- "oneOf": [
814
- {
815
- "additionalProperties": false,
816
- "properties": {
817
- "data": {
818
- "type": "string",
819
- },
820
- "type": {
821
- "const": "success",
822
- "type": "string",
823
- },
824
- },
825
- "required": [
826
- "type",
827
- "data",
828
- ],
829
- "type": "object",
830
- },
831
- {
832
- "additionalProperties": false,
833
- "properties": {
834
- "message": {
835
- "type": "string",
836
- },
837
- "type": {
838
- "const": "error",
839
- "type": "string",
840
- },
841
- },
842
- "required": [
843
- "type",
844
- "message",
845
- ],
846
- "type": "object",
847
- },
848
- ],
849
- }
850
- `);
851
- });
852
-
853
- test("intersections", () => {
854
- const schema = z.intersection(z.object({ name: z.string() }), z.object({ age: z.number() }));
855
-
856
- expect(z.toJSONSchema(schema)).toMatchInlineSnapshot(`
857
- {
858
- "$schema": "https://json-schema.org/draft/2020-12/schema",
859
- "allOf": [
860
- {
861
- "additionalProperties": false,
862
- "properties": {
863
- "name": {
864
- "type": "string",
865
- },
866
- },
867
- "required": [
868
- "name",
869
- ],
870
- "type": "object",
871
- },
872
- {
873
- "additionalProperties": false,
874
- "properties": {
875
- "age": {
876
- "type": "number",
877
- },
878
- },
879
- "required": [
880
- "age",
881
- ],
882
- "type": "object",
883
- },
884
- ],
885
- }
886
- `);
887
- });
888
-
889
- test("record", () => {
890
- const schema = z.record(z.string(), z.boolean());
891
- expect(z.toJSONSchema(schema)).toMatchInlineSnapshot(`
892
- {
893
- "$schema": "https://json-schema.org/draft/2020-12/schema",
894
- "additionalProperties": {
895
- "type": "boolean",
896
- },
897
- "propertyNames": {
898
- "type": "string",
899
- },
900
- "type": "object",
901
- }
902
- `);
903
- });
904
-
905
- test("record openapi-3.0", () => {
906
- const schema = z.record(z.string(), z.boolean());
907
- const jsonSchema = z.toJSONSchema(schema, { target: "openapi-3.0" });
908
- validateOpenAPI30Schema(jsonSchema);
909
- expect(jsonSchema).toMatchInlineSnapshot(`
910
- {
911
- "additionalProperties": {
912
- "type": "boolean",
913
- },
914
- "type": "object",
915
- }
916
- `);
917
- });
918
-
919
- test("record with enum keys adds required", () => {
920
- const schema = z.record(z.enum(["key1", "key2"]), z.number());
921
-
922
- expect(z.toJSONSchema(schema)).toMatchInlineSnapshot(`
923
- {
924
- "$schema": "https://json-schema.org/draft/2020-12/schema",
925
- "additionalProperties": {
926
- "type": "number",
927
- },
928
- "propertyNames": {
929
- "enum": [
930
- "key1",
931
- "key2",
932
- ],
933
- "type": "string",
934
- },
935
- "required": [
936
- "key1",
937
- "key2",
938
- ],
939
- "type": "object",
940
- }
941
- `);
942
- });
943
-
944
- test("record filters enum values to strings and numbers for required", () => {
945
- enum NumberEnum {
946
- Zero = 0,
947
- One = 1,
948
- }
949
- const schema = z.record(z.enum(NumberEnum), z.string());
950
-
951
- expect(z.toJSONSchema(schema)).toMatchInlineSnapshot(`
952
- {
953
- "$schema": "https://json-schema.org/draft/2020-12/schema",
954
- "additionalProperties": {
955
- "type": "string",
956
- },
957
- "propertyNames": {
958
- "enum": [
959
- 0,
960
- 1,
961
- ],
962
- "type": "number",
963
- },
964
- "required": [
965
- 0,
966
- 1,
967
- ],
968
- "type": "object",
969
- }
970
- `);
971
- });
972
-
973
- test("strict record with regex key uses propertyNames", () => {
974
- const schema = z.record(z.string().regex(/^label:[a-z]{2}$/), z.string());
975
-
976
- expect(z.toJSONSchema(schema)).toMatchInlineSnapshot(`
977
- {
978
- "$schema": "https://json-schema.org/draft/2020-12/schema",
979
- "additionalProperties": {
980
- "type": "string",
981
- },
982
- "propertyNames": {
983
- "pattern": "^label:[a-z]{2}$",
984
- "type": "string",
985
- },
986
- "type": "object",
987
- }
988
- `);
989
- });
990
-
991
- test("looseRecord with regex key uses patternProperties", () => {
992
- const schema = z.looseRecord(z.string().regex(/^label:[a-z]{2}$/), z.string());
993
-
994
- expect(z.toJSONSchema(schema)).toMatchInlineSnapshot(`
995
- {
996
- "$schema": "https://json-schema.org/draft/2020-12/schema",
997
- "patternProperties": {
998
- "^label:[a-z]{2}$": {
999
- "type": "string",
1000
- },
1001
- },
1002
- "type": "object",
1003
- }
1004
- `);
1005
- });
1006
-
1007
- test("looseRecord with multiple regex patterns uses patternProperties", () => {
1008
- const schema = z.looseRecord(
1009
- z
1010
- .string()
1011
- .regex(/^prefix_/)
1012
- .regex(/_suffix$/),
1013
- z.number()
1014
- );
1015
-
1016
- expect(z.toJSONSchema(schema)).toMatchInlineSnapshot(`
1017
- {
1018
- "$schema": "https://json-schema.org/draft/2020-12/schema",
1019
- "patternProperties": {
1020
- "^prefix_": {
1021
- "type": "number",
1022
- },
1023
- "_suffix$": {
1024
- "type": "number",
1025
- },
1026
- },
1027
- "type": "object",
1028
- }
1029
- `);
1030
- });
1031
-
1032
- test("looseRecord without regex key uses propertyNames", () => {
1033
- // looseRecord with plain string key should still use propertyNames
1034
- const schema = z.looseRecord(z.string(), z.boolean());
1035
-
1036
- expect(z.toJSONSchema(schema)).toMatchInlineSnapshot(`
1037
- {
1038
- "$schema": "https://json-schema.org/draft/2020-12/schema",
1039
- "additionalProperties": {
1040
- "type": "boolean",
1041
- },
1042
- "propertyNames": {
1043
- "type": "string",
1044
- },
1045
- "type": "object",
1046
- }
1047
- `);
1048
- });
1049
-
1050
- test("intersection of object with looseRecord uses patternProperties", () => {
1051
- const zLabeled = z.object({ label: z.string() });
1052
- const zLocalizedLabeled = z.looseRecord(z.string().regex(/^label:[a-z]{2}$/), z.string());
1053
- const schema = zLabeled.and(zLocalizedLabeled);
1054
-
1055
- expect(z.toJSONSchema(schema)).toMatchInlineSnapshot(`
1056
- {
1057
- "$schema": "https://json-schema.org/draft/2020-12/schema",
1058
- "allOf": [
1059
- {
1060
- "additionalProperties": false,
1061
- "properties": {
1062
- "label": {
1063
- "type": "string",
1064
- },
1065
- },
1066
- "required": [
1067
- "label",
1068
- ],
1069
- "type": "object",
1070
- },
1071
- {
1072
- "patternProperties": {
1073
- "^label:[a-z]{2}$": {
1074
- "type": "string",
1075
- },
1076
- },
1077
- "type": "object",
1078
- },
1079
- ],
1080
- }
1081
- `);
1082
- });
1083
-
1084
- test("tuple", () => {
1085
- const schema = z.tuple([z.string(), z.number()]);
1086
- expect(z.toJSONSchema(schema)).toMatchInlineSnapshot(`
1087
- {
1088
- "$schema": "https://json-schema.org/draft/2020-12/schema",
1089
- "prefixItems": [
1090
- {
1091
- "type": "string",
1092
- },
1093
- {
1094
- "type": "number",
1095
- },
1096
- ],
1097
- "type": "array",
1098
- }
1099
- `);
1100
- });
1101
-
1102
- test("tuple with rest", () => {
1103
- const schema = z.tuple([z.string(), z.number()]).rest(z.boolean());
1104
- expect(z.toJSONSchema(schema)).toMatchInlineSnapshot(`
1105
- {
1106
- "$schema": "https://json-schema.org/draft/2020-12/schema",
1107
- "items": {
1108
- "type": "boolean",
1109
- },
1110
- "prefixItems": [
1111
- {
1112
- "type": "string",
1113
- },
1114
- {
1115
- "type": "number",
1116
- },
1117
- ],
1118
- "type": "array",
1119
- }
1120
- `);
1121
- });
1122
-
1123
- test("tuple openapi-3.0", () => {
1124
- const schema = z.tuple([z.string(), z.number()]);
1125
- const jsonSchema = z.toJSONSchema(schema, { target: "openapi-3.0" });
1126
- validateOpenAPI30Schema(jsonSchema);
1127
- expect(jsonSchema).toMatchInlineSnapshot(`
1128
- {
1129
- "items": {
1130
- "anyOf": [
1131
- {
1132
- "type": "string",
1133
- },
1134
- {
1135
- "type": "number",
1136
- },
1137
- ],
1138
- },
1139
- "maxItems": 2,
1140
- "minItems": 2,
1141
- "type": "array",
1142
- }
1143
- `);
1144
- });
1145
-
1146
- test("tuple with rest openapi-3.0", () => {
1147
- const schema = z.tuple([z.string(), z.number()]).rest(z.boolean());
1148
- const jsonSchema = z.toJSONSchema(schema, { target: "openapi-3.0" });
1149
- validateOpenAPI30Schema(jsonSchema);
1150
- expect(jsonSchema).toMatchInlineSnapshot(`
1151
- {
1152
- "items": {
1153
- "anyOf": [
1154
- {
1155
- "type": "string",
1156
- },
1157
- {
1158
- "type": "number",
1159
- },
1160
- {
1161
- "type": "boolean",
1162
- },
1163
- ],
1164
- },
1165
- "minItems": 3,
1166
- "type": "array",
1167
- }
1168
- `);
1169
- });
1170
-
1171
- test("tuple with null openapi-3.0", () => {
1172
- const schema = z.tuple([z.string(), z.number(), z.null()]);
1173
- const jsonSchema = z.toJSONSchema(schema, { target: "openapi-3.0" });
1174
- validateOpenAPI30Schema(jsonSchema);
1175
- expect(jsonSchema).toMatchInlineSnapshot(`
1176
- {
1177
- "items": {
1178
- "anyOf": [
1179
- {
1180
- "type": "string",
1181
- },
1182
- {
1183
- "type": "number",
1184
- },
1185
- {
1186
- "enum": [
1187
- null,
1188
- ],
1189
- "nullable": true,
1190
- "type": "string",
1191
- },
1192
- ],
1193
- },
1194
- "maxItems": 3,
1195
- "minItems": 3,
1196
- "type": "array",
1197
- }
1198
- `);
1199
- });
1200
-
1201
- test("tuple draft-7", () => {
1202
- const schema = z.tuple([z.string(), z.number()]);
1203
- expect(z.toJSONSchema(schema, { target: "draft-7", io: "input" })).toMatchInlineSnapshot(`
1204
- {
1205
- "$schema": "http://json-schema.org/draft-07/schema#",
1206
- "items": [
1207
- {
1208
- "type": "string",
1209
- },
1210
- {
1211
- "type": "number",
1212
- },
1213
- ],
1214
- "type": "array",
1215
- }
1216
- `);
1217
- });
1218
-
1219
- test("tuple with rest draft-7", () => {
1220
- const schema = z.tuple([z.string(), z.number()]).rest(z.boolean());
1221
- expect(z.toJSONSchema(schema, { target: "draft-7", io: "input" })).toMatchInlineSnapshot(`
1222
- {
1223
- "$schema": "http://json-schema.org/draft-07/schema#",
1224
- "additionalItems": {
1225
- "type": "boolean",
1226
- },
1227
- "items": [
1228
- {
1229
- "type": "string",
1230
- },
1231
- {
1232
- "type": "number",
1233
- },
1234
- ],
1235
- "type": "array",
1236
- }
1237
- `);
1238
- });
1239
-
1240
- test("tuple with rest draft-7 - issue #5151 regression test", () => {
1241
- // This test addresses issue #5151: tuple with rest elements and ids
1242
- // in draft-7 had incorrect internal path handling affecting complex scenarios
1243
- const primarySchema = z.string().meta({ id: "primary" });
1244
- const restSchema = z.number().meta({ id: "rest" });
1245
- const testSchema = z.tuple([primarySchema], restSchema);
1246
-
1247
- // Test both final output structure AND internal path handling
1248
- const capturedPaths: string[] = [];
1249
- const result = z.toJSONSchema(testSchema, {
1250
- target: "draft-7",
1251
- override: (ctx) => capturedPaths.push(ctx.path.join("/")),
1252
- });
1253
-
1254
- // Verify correct draft-7 structure with metadata extraction
1255
- expect(result).toMatchInlineSnapshot(`
1256
- {
1257
- "$schema": "http://json-schema.org/draft-07/schema#",
1258
- "additionalItems": {
1259
- "$ref": "#/definitions/rest",
1260
- },
1261
- "definitions": {
1262
- "primary": {
1263
- "type": "string",
1264
- },
1265
- "rest": {
1266
- "type": "number",
1267
- },
1268
- },
1269
- "items": [
1270
- {
1271
- "$ref": "#/definitions/primary",
1272
- },
1273
- ],
1274
- "type": "array",
1275
- }
1276
- `);
1277
-
1278
- // Verify internal paths are correct (this was the actual bug)
1279
- expect(capturedPaths).toContain("items/0"); // prefix items should use "items" path
1280
- expect(capturedPaths).toContain("additionalItems"); // rest should use "additionalItems" path
1281
- expect(capturedPaths).not.toContain("prefixItems/0"); // should not use draft-2020-12 paths
1282
-
1283
- // Structural validations
1284
- expect(Array.isArray(result.items)).toBe(true);
1285
- expect(result.additionalItems).toBeDefined();
1286
- });
1287
-
1288
- test("promise", () => {
1289
- const schema = z.promise(z.string());
1290
- expect(z.toJSONSchema(schema)).toMatchInlineSnapshot(`
1291
- {
1292
- "$schema": "https://json-schema.org/draft/2020-12/schema",
1293
- "type": "string",
1294
- }
1295
- `);
1296
- });
1297
-
1298
- test("lazy", () => {
1299
- const schema = z.lazy(() => z.string());
1300
- expect(z.toJSONSchema(schema)).toMatchInlineSnapshot(`
1301
- {
1302
- "$schema": "https://json-schema.org/draft/2020-12/schema",
1303
- "type": "string",
1304
- }
1305
- `);
1306
- });
1307
-
1308
- // enum
1309
- test("enum", () => {
1310
- const a = z.enum(["a", "b", "c"]);
1311
- expect(z.toJSONSchema(a)).toMatchInlineSnapshot(`
1312
- {
1313
- "$schema": "https://json-schema.org/draft/2020-12/schema",
1314
- "enum": [
1315
- "a",
1316
- "b",
1317
- "c",
1318
- ],
1319
- "type": "string",
1320
- }
1321
- `);
1322
-
1323
- enum B {
1324
- A = 0,
1325
- B = 1,
1326
- C = 2,
1327
- }
1328
-
1329
- const b = z.enum(B);
1330
- expect(z.toJSONSchema(b)).toMatchInlineSnapshot(`
1331
- {
1332
- "$schema": "https://json-schema.org/draft/2020-12/schema",
1333
- "enum": [
1334
- 0,
1335
- 1,
1336
- 2,
1337
- ],
1338
- "type": "number",
1339
- }
1340
- `);
1341
- });
1342
-
1343
- // literal
1344
- test("literal", () => {
1345
- const a = z.literal("hello");
1346
- expect(z.toJSONSchema(a)).toMatchInlineSnapshot(`
1347
- {
1348
- "$schema": "https://json-schema.org/draft/2020-12/schema",
1349
- "const": "hello",
1350
- "type": "string",
1351
- }
1352
- `);
1353
-
1354
- const b = z.literal(7);
1355
- expect(z.toJSONSchema(b)).toMatchInlineSnapshot(`
1356
- {
1357
- "$schema": "https://json-schema.org/draft/2020-12/schema",
1358
- "const": 7,
1359
- "type": "number",
1360
- }
1361
- `);
1362
-
1363
- const c = z.literal(["hello", undefined, null, 5, BigInt(1324)]);
1364
- expect(() => z.toJSONSchema(c)).toThrow();
1365
-
1366
- const d = z.literal(["hello", null, 5]);
1367
- expect(z.toJSONSchema(d)).toMatchInlineSnapshot(`
1368
- {
1369
- "$schema": "https://json-schema.org/draft/2020-12/schema",
1370
- "enum": [
1371
- "hello",
1372
- null,
1373
- 5,
1374
- ],
1375
- }
1376
- `);
1377
-
1378
- const e = z.literal(["hello", "zod", "v4"]);
1379
- expect(z.toJSONSchema(e)).toMatchInlineSnapshot(`
1380
- {
1381
- "$schema": "https://json-schema.org/draft/2020-12/schema",
1382
- "enum": [
1383
- "hello",
1384
- "zod",
1385
- "v4",
1386
- ],
1387
- "type": "string",
1388
- }
1389
- `);
1390
- });
1391
-
1392
- test("literal draft-4", () => {
1393
- const a = z.literal("hello");
1394
- expect(z.toJSONSchema(a, { target: "draft-4" })).toMatchInlineSnapshot(`
1395
- {
1396
- "$schema": "http://json-schema.org/draft-04/schema#",
1397
- "enum": [
1398
- "hello",
1399
- ],
1400
- "type": "string",
1401
- }
1402
- `);
1403
- });
1404
-
1405
- // pipe
1406
- test("pipe", () => {
1407
- const schema = z
1408
- .string()
1409
- .transform((val) => Number.parseInt(val))
1410
- .pipe(z.number());
1411
- expect(z.toJSONSchema(schema)).toMatchInlineSnapshot(`
1412
- {
1413
- "$schema": "https://json-schema.org/draft/2020-12/schema",
1414
- "type": "number",
1415
- }
1416
- `);
1417
- });
1418
-
1419
- test("simple objects", () => {
1420
- const schema = z.object({
1421
- name: z.string(),
1422
- age: z.number(),
1423
- });
1424
-
1425
- expect(z.toJSONSchema(schema)).toMatchInlineSnapshot(
1426
- `
1427
- {
1428
- "$schema": "https://json-schema.org/draft/2020-12/schema",
1429
- "additionalProperties": false,
1430
- "properties": {
1431
- "age": {
1432
- "type": "number",
1433
- },
1434
- "name": {
1435
- "type": "string",
1436
- },
1437
- },
1438
- "required": [
1439
- "name",
1440
- "age",
1441
- ],
1442
- "type": "object",
1443
- }
1444
- `
1445
- );
1446
- });
1447
-
1448
- test("additionalproperties in z.object", () => {
1449
- const a = z.object({
1450
- name: z.string(),
1451
- });
1452
- expect(z.toJSONSchema(a)).toMatchInlineSnapshot(`
1453
- {
1454
- "$schema": "https://json-schema.org/draft/2020-12/schema",
1455
- "additionalProperties": false,
1456
- "properties": {
1457
- "name": {
1458
- "type": "string",
1459
- },
1460
- },
1461
- "required": [
1462
- "name",
1463
- ],
1464
- "type": "object",
1465
- }
1466
- `);
1467
- expect(z.toJSONSchema(a, { io: "input" })).toMatchInlineSnapshot(`
1468
- {
1469
- "$schema": "https://json-schema.org/draft/2020-12/schema",
1470
- "properties": {
1471
- "name": {
1472
- "type": "string",
1473
- },
1474
- },
1475
- "required": [
1476
- "name",
1477
- ],
1478
- "type": "object",
1479
- }
1480
- `);
1481
- expect(
1482
- z.toJSONSchema(a, {
1483
- io: "input",
1484
- override(ctx) {
1485
- const def = ctx.zodSchema._zod.def;
1486
- if (def.type === "object" && !def.catchall) {
1487
- (ctx.jsonSchema as z.core.JSONSchema.ObjectSchema).additionalProperties = false;
1488
- }
1489
- },
1490
- })
1491
- ).toMatchInlineSnapshot(`
1492
- {
1493
- "$schema": "https://json-schema.org/draft/2020-12/schema",
1494
- "additionalProperties": false,
1495
- "properties": {
1496
- "name": {
1497
- "type": "string",
1498
- },
1499
- },
1500
- "required": [
1501
- "name",
1502
- ],
1503
- "type": "object",
1504
- }
1505
- `);
1506
- });
1507
-
1508
- test("catchall objects", () => {
1509
- const a = z.strictObject({
1510
- name: z.string(),
1511
- age: z.number(),
1512
- });
1513
-
1514
- expect(z.toJSONSchema(a)).toMatchInlineSnapshot(`
1515
- {
1516
- "$schema": "https://json-schema.org/draft/2020-12/schema",
1517
- "additionalProperties": false,
1518
- "properties": {
1519
- "age": {
1520
- "type": "number",
1521
- },
1522
- "name": {
1523
- "type": "string",
1524
- },
1525
- },
1526
- "required": [
1527
- "name",
1528
- "age",
1529
- ],
1530
- "type": "object",
1531
- }
1532
- `);
1533
-
1534
- const b = z
1535
- .object({
1536
- name: z.string(),
1537
- })
1538
- .catchall(z.string());
1539
-
1540
- expect(z.toJSONSchema(b)).toMatchInlineSnapshot(`
1541
- {
1542
- "$schema": "https://json-schema.org/draft/2020-12/schema",
1543
- "additionalProperties": {
1544
- "type": "string",
1545
- },
1546
- "properties": {
1547
- "name": {
1548
- "type": "string",
1549
- },
1550
- },
1551
- "required": [
1552
- "name",
1553
- ],
1554
- "type": "object",
1555
- }
1556
- `);
1557
-
1558
- const c = z.looseObject({
1559
- name: z.string(),
1560
- });
1561
-
1562
- expect(z.toJSONSchema(c)).toMatchInlineSnapshot(`
1563
- {
1564
- "$schema": "https://json-schema.org/draft/2020-12/schema",
1565
- "additionalProperties": {},
1566
- "properties": {
1567
- "name": {
1568
- "type": "string",
1569
- },
1570
- },
1571
- "required": [
1572
- "name",
1573
- ],
1574
- "type": "object",
1575
- }
1576
- `);
1577
- });
1578
-
1579
- test("optional fields - object", () => {
1580
- const schema = z.object({
1581
- required: z.string(),
1582
- optional: z.string().optional(),
1583
- nonoptional: z.string().optional().nonoptional(),
1584
- });
1585
-
1586
- const result = z.toJSONSchema(schema);
1587
-
1588
- expect(result).toMatchInlineSnapshot(`
1589
- {
1590
- "$schema": "https://json-schema.org/draft/2020-12/schema",
1591
- "additionalProperties": false,
1592
- "properties": {
1593
- "nonoptional": {
1594
- "type": "string",
1595
- },
1596
- "optional": {
1597
- "type": "string",
1598
- },
1599
- "required": {
1600
- "type": "string",
1601
- },
1602
- },
1603
- "required": [
1604
- "required",
1605
- "nonoptional",
1606
- ],
1607
- "type": "object",
1608
- }
1609
- `);
1610
- });
1611
-
1612
- test("recursive object", () => {
1613
- interface Category {
1614
- name: string;
1615
- subcategories: Category[];
1616
- }
1617
-
1618
- const categorySchema: z.ZodType<Category> = z.object({
1619
- name: z.string(),
1620
- subcategories: z.array(z.lazy(() => categorySchema)),
1621
- });
1622
-
1623
- const result = z.toJSONSchema(categorySchema);
1624
- expect(result).toMatchInlineSnapshot(`
1625
- {
1626
- "$schema": "https://json-schema.org/draft/2020-12/schema",
1627
- "additionalProperties": false,
1628
- "properties": {
1629
- "name": {
1630
- "type": "string",
1631
- },
1632
- "subcategories": {
1633
- "items": {
1634
- "$ref": "#",
1635
- },
1636
- "type": "array",
1637
- },
1638
- },
1639
- "required": [
1640
- "name",
1641
- "subcategories",
1642
- ],
1643
- "type": "object",
1644
- }
1645
- `);
1646
- });
1647
-
1648
- test("simple interface", () => {
1649
- const userSchema = z.object({
1650
- name: z.string(),
1651
- age: z.number().optional(),
1652
- });
1653
-
1654
- const result = z.toJSONSchema(userSchema);
1655
- expect(result).toMatchInlineSnapshot(`
1656
- {
1657
- "$schema": "https://json-schema.org/draft/2020-12/schema",
1658
- "additionalProperties": false,
1659
- "properties": {
1660
- "age": {
1661
- "type": "number",
1662
- },
1663
- "name": {
1664
- "type": "string",
1665
- },
1666
- },
1667
- "required": [
1668
- "name",
1669
- ],
1670
- "type": "object",
1671
- }
1672
- `);
1673
- });
1674
-
1675
- test("catchall interface", () => {
1676
- const a = z.strictObject({
1677
- name: z.string(),
1678
- age: z.number(),
1679
- });
1680
-
1681
- expect(z.toJSONSchema(a)).toMatchInlineSnapshot(`
1682
- {
1683
- "$schema": "https://json-schema.org/draft/2020-12/schema",
1684
- "additionalProperties": false,
1685
- "properties": {
1686
- "age": {
1687
- "type": "number",
1688
- },
1689
- "name": {
1690
- "type": "string",
1691
- },
1692
- },
1693
- "required": [
1694
- "name",
1695
- "age",
1696
- ],
1697
- "type": "object",
1698
- }
1699
- `);
1700
-
1701
- const b = z
1702
- .object({
1703
- name: z.string(),
1704
- })
1705
- .catchall(z.string());
1706
-
1707
- expect(z.toJSONSchema(b)).toMatchInlineSnapshot(`
1708
- {
1709
- "$schema": "https://json-schema.org/draft/2020-12/schema",
1710
- "additionalProperties": {
1711
- "type": "string",
1712
- },
1713
- "properties": {
1714
- "name": {
1715
- "type": "string",
1716
- },
1717
- },
1718
- "required": [
1719
- "name",
1720
- ],
1721
- "type": "object",
1722
- }
1723
- `);
1724
-
1725
- const c = z.looseObject({
1726
- name: z.string(),
1727
- });
1728
-
1729
- expect(z.toJSONSchema(c)).toMatchInlineSnapshot(`
1730
- {
1731
- "$schema": "https://json-schema.org/draft/2020-12/schema",
1732
- "additionalProperties": {},
1733
- "properties": {
1734
- "name": {
1735
- "type": "string",
1736
- },
1737
- },
1738
- "required": [
1739
- "name",
1740
- ],
1741
- "type": "object",
1742
- }
1743
- `);
1744
- });
1745
-
1746
- test("recursive interface schemas", () => {
1747
- const TreeNodeSchema = z.object({
1748
- id: z.string(),
1749
- get children() {
1750
- return TreeNodeSchema;
1751
- },
1752
- });
1753
-
1754
- const result = z.toJSONSchema(TreeNodeSchema);
1755
-
1756
- // Should have definitions for recursive schema
1757
- expect(JSON.stringify(result, null, 2)).toMatchInlineSnapshot(
1758
- `
1759
- "{
1760
- "$schema": "https://json-schema.org/draft/2020-12/schema",
1761
- "type": "object",
1762
- "properties": {
1763
- "id": {
1764
- "type": "string"
1765
- },
1766
- "children": {
1767
- "$ref": "#"
1768
- }
1769
- },
1770
- "required": [
1771
- "id",
1772
- "children"
1773
- ],
1774
- "additionalProperties": false
1775
- }"
1776
- `
1777
- );
1778
- });
1779
-
1780
- test("mutually recursive interface schemas", () => {
1781
- const FolderSchema = z.object({
1782
- name: z.string(),
1783
- get files() {
1784
- return z.array(FileSchema);
1785
- },
1786
- });
1787
-
1788
- const FileSchema = z.object({
1789
- name: z.string(),
1790
- get parent() {
1791
- return FolderSchema;
1792
- },
1793
- });
1794
-
1795
- const result = z.toJSONSchema(FolderSchema);
1796
-
1797
- // Should have definitions for both schemas
1798
- expect(JSON.stringify(result, null, 2)).toMatchInlineSnapshot(
1799
- `
1800
- "{
1801
- "$schema": "https://json-schema.org/draft/2020-12/schema",
1802
- "type": "object",
1803
- "properties": {
1804
- "name": {
1805
- "type": "string"
1806
- },
1807
- "files": {
1808
- "type": "array",
1809
- "items": {
1810
- "type": "object",
1811
- "properties": {
1812
- "name": {
1813
- "type": "string"
1814
- },
1815
- "parent": {
1816
- "$ref": "#"
1817
- }
1818
- },
1819
- "required": [
1820
- "name",
1821
- "parent"
1822
- ],
1823
- "additionalProperties": false
1824
- }
1825
- }
1826
- },
1827
- "required": [
1828
- "name",
1829
- "files"
1830
- ],
1831
- "additionalProperties": false
1832
- }"
1833
- `
1834
- );
1835
- });
1836
- });
1837
-
1838
- test("override", () => {
1839
- const schema = z.toJSONSchema(z.string(), {
1840
- override: (ctx) => {
1841
- ctx.zodSchema;
1842
- ctx.jsonSchema;
1843
- ctx.jsonSchema.whatever = "sup";
1844
- },
1845
- });
1846
- expect(schema).toMatchInlineSnapshot(`
1847
- {
1848
- "$schema": "https://json-schema.org/draft/2020-12/schema",
1849
- "type": "string",
1850
- "whatever": "sup",
1851
- }
1852
- `);
1853
- });
1854
-
1855
- test("override: do not run on references", () => {
1856
- let overrideCount = 0;
1857
- const schema = z
1858
- .union([z.string().date(), z.string().datetime(), z.string().datetime({ local: true })])
1859
- .meta({ a: true })
1860
- .transform((str) => new Date(str))
1861
- .meta({ b: true })
1862
- .pipe(z.date())
1863
- .meta({ c: true })
1864
- .brand("dateIn");
1865
- z.toJSONSchema(schema, {
1866
- unrepresentable: "any",
1867
- io: "input",
1868
- override(_) {
1869
- overrideCount++;
1870
- },
1871
- });
1872
-
1873
- expect(overrideCount).toBe(12);
1874
- });
1875
-
1876
- test("override with refs", () => {
1877
- const a = z.string().optional();
1878
- const result = z.toJSONSchema(a, {
1879
- override(ctx) {
1880
- if (ctx.zodSchema._zod.def.type === "string") {
1881
- ctx.jsonSchema.type = "STRING" as "string";
1882
- }
1883
- },
1884
- });
1885
-
1886
- expect(result).toMatchInlineSnapshot(`
1887
- {
1888
- "$schema": "https://json-schema.org/draft/2020-12/schema",
1889
- "type": "STRING",
1890
- }
1891
- `);
1892
- });
1893
-
1894
- test("override execution order", () => {
1895
- const schema = z.union([z.string(), z.number()]);
1896
- let unionSchema!: any;
1897
- z.toJSONSchema(schema, {
1898
- override(ctx) {
1899
- if (ctx.zodSchema._zod.def.type === "union") {
1900
- unionSchema = ctx.jsonSchema;
1901
- }
1902
- },
1903
- });
1904
-
1905
- expect(unionSchema).toMatchInlineSnapshot(`
1906
- {
1907
- "anyOf": [
1908
- {
1909
- "type": "string",
1910
- },
1911
- {
1912
- "type": "number",
1913
- },
1914
- ],
1915
- }
1916
- `);
1917
- });
1918
-
1919
- test("override with path", () => {
1920
- const userSchema = z.object({
1921
- name: z.string(),
1922
- age: z.number(),
1923
- });
1924
-
1925
- const capturedPaths: (string | number)[][] = [];
1926
-
1927
- z.toJSONSchema(userSchema, {
1928
- override(ctx) {
1929
- capturedPaths.push(ctx.path);
1930
- },
1931
- });
1932
-
1933
- expect(capturedPaths).toMatchInlineSnapshot(`
1934
- [
1935
- [
1936
- "properties",
1937
- "age",
1938
- ],
1939
- [
1940
- "properties",
1941
- "name",
1942
- ],
1943
- [],
1944
- ]
1945
- `);
1946
- });
1947
-
1948
- test("pipe", () => {
1949
- const mySchema = z
1950
- .string()
1951
- .transform((val) => val.length)
1952
- .pipe(z.number());
1953
- // ZodPipe
1954
-
1955
- const a = z.toJSONSchema(mySchema);
1956
- expect(a).toMatchInlineSnapshot(`
1957
- {
1958
- "$schema": "https://json-schema.org/draft/2020-12/schema",
1959
- "type": "number",
1960
- }
1961
- `);
1962
- // => { type: "number" }
1963
-
1964
- const b = z.toJSONSchema(mySchema, { io: "input" });
1965
- expect(b).toMatchInlineSnapshot(`
1966
- {
1967
- "$schema": "https://json-schema.org/draft/2020-12/schema",
1968
- "type": "string",
1969
- }
1970
- `);
1971
- // => { type: "string" }
1972
- });
1973
-
1974
- test("passthrough schemas", () => {
1975
- const Internal = z.object({
1976
- num: z.number(),
1977
- str: z.string(),
1978
- });
1979
- //.meta({ id: "Internal" });
1980
-
1981
- const External = z.object({
1982
- a: Internal,
1983
- b: Internal.optional(),
1984
- c: z.lazy(() => Internal),
1985
- d: z.promise(Internal),
1986
- e: z.pipe(Internal, Internal),
1987
- });
1988
-
1989
- const result = z.toJSONSchema(External, {
1990
- reused: "ref",
1991
- });
1992
- expect(result).toMatchInlineSnapshot(`
1993
- {
1994
- "$defs": {
1995
- "__schema0": {
1996
- "additionalProperties": false,
1997
- "properties": {
1998
- "num": {
1999
- "type": "number",
2000
- },
2001
- "str": {
2002
- "type": "string",
2003
- },
2004
- },
2005
- "required": [
2006
- "num",
2007
- "str",
2008
- ],
2009
- "type": "object",
2010
- },
2011
- },
2012
- "$schema": "https://json-schema.org/draft/2020-12/schema",
2013
- "additionalProperties": false,
2014
- "properties": {
2015
- "a": {
2016
- "$ref": "#/$defs/__schema0",
2017
- },
2018
- "b": {
2019
- "$ref": "#/$defs/__schema0",
2020
- },
2021
- "c": {
2022
- "$ref": "#/$defs/__schema0",
2023
- },
2024
- "d": {
2025
- "$ref": "#/$defs/__schema0",
2026
- },
2027
- "e": {
2028
- "$ref": "#/$defs/__schema0",
2029
- },
2030
- },
2031
- "required": [
2032
- "a",
2033
- "c",
2034
- "d",
2035
- "e",
2036
- ],
2037
- "type": "object",
2038
- }
2039
- `);
2040
- });
2041
-
2042
- test("extract schemas with id", () => {
2043
- const name = z.string().meta({ id: "name" });
2044
- const result = z.toJSONSchema(
2045
- z.object({
2046
- first_name: name,
2047
- last_name: name.nullable(),
2048
- middle_name: name.optional(),
2049
- age: z.number().meta({ id: "age" }),
2050
- })
2051
- );
2052
- expect(result).toMatchInlineSnapshot(`
2053
- {
2054
- "$defs": {
2055
- "age": {
2056
- "type": "number",
2057
- },
2058
- "name": {
2059
- "type": "string",
2060
- },
2061
- },
2062
- "$schema": "https://json-schema.org/draft/2020-12/schema",
2063
- "additionalProperties": false,
2064
- "properties": {
2065
- "age": {
2066
- "$ref": "#/$defs/age",
2067
- },
2068
- "first_name": {
2069
- "$ref": "#/$defs/name",
2070
- },
2071
- "last_name": {
2072
- "anyOf": [
2073
- {
2074
- "$ref": "#/$defs/name",
2075
- },
2076
- {
2077
- "type": "null",
2078
- },
2079
- ],
2080
- },
2081
- "middle_name": {
2082
- "$ref": "#/$defs/name",
2083
- },
2084
- },
2085
- "required": [
2086
- "first_name",
2087
- "last_name",
2088
- "age",
2089
- ],
2090
- "type": "object",
2091
- }
2092
- `);
2093
- });
2094
-
2095
- test("unrepresentable literal values are ignored", () => {
2096
- const a = z.toJSONSchema(z.literal(["hello", null, 5, BigInt(1324), undefined]), { unrepresentable: "any" });
2097
- expect(a).toMatchInlineSnapshot(`
2098
- {
2099
- "$schema": "https://json-schema.org/draft/2020-12/schema",
2100
- "enum": [
2101
- "hello",
2102
- null,
2103
- 5,
2104
- 1324,
2105
- ],
2106
- }
2107
- `);
2108
-
2109
- const b = z.toJSONSchema(z.literal([undefined, null, 5, BigInt(1324)]), {
2110
- unrepresentable: "any",
2111
- });
2112
- expect(b).toMatchInlineSnapshot(`
2113
- {
2114
- "$schema": "https://json-schema.org/draft/2020-12/schema",
2115
- "enum": [
2116
- null,
2117
- 5,
2118
- 1324,
2119
- ],
2120
- }
2121
- `);
2122
-
2123
- const c = z.toJSONSchema(z.literal([undefined]), {
2124
- unrepresentable: "any",
2125
- });
2126
- expect(c).toMatchInlineSnapshot(`
2127
- {
2128
- "$schema": "https://json-schema.org/draft/2020-12/schema",
2129
- }
2130
- `);
2131
- });
2132
-
2133
- test("describe with id", () => {
2134
- const jobId = z.string().meta({ id: "jobId" });
2135
-
2136
- const a = z.toJSONSchema(
2137
- z.object({
2138
- current: jobId.describe("Current job"),
2139
- previous: jobId.describe("Previous job"),
2140
- })
2141
- );
2142
- expect(a).toMatchInlineSnapshot(`
2143
- {
2144
- "$defs": {
2145
- "jobId": {
2146
- "type": "string",
2147
- },
2148
- },
2149
- "$schema": "https://json-schema.org/draft/2020-12/schema",
2150
- "additionalProperties": false,
2151
- "properties": {
2152
- "current": {
2153
- "$ref": "#/$defs/jobId",
2154
- "description": "Current job",
2155
- },
2156
- "previous": {
2157
- "$ref": "#/$defs/jobId",
2158
- "description": "Previous job",
2159
- },
2160
- },
2161
- "required": [
2162
- "current",
2163
- "previous",
2164
- ],
2165
- "type": "object",
2166
- }
2167
- `);
2168
- });
2169
-
2170
- test("id is stripped from $defs entries (draft-2020-12)", () => {
2171
- // The `id` in `.meta()` is a registration tag — it determines the $defs key
2172
- // but should not leak into the definition body, where it is redundant.
2173
- const inner = z.string().meta({ id: "Inner" });
2174
- const result = z.toJSONSchema(z.object({ a: inner, b: inner }));
2175
- expect(result.$defs?.Inner).toEqual({ type: "string" });
2176
- expect((result.$defs?.Inner as any).id).toBeUndefined();
2177
- });
2178
-
2179
- test("id is stripped from definitions entries (draft-04)", () => {
2180
- // In draft-04, `id` is a reserved keyword that sets a base URI for the
2181
- // subschema. Leaking Zod's registration tag here is semantically wrong, so
2182
- // ensure it is stripped.
2183
- const inner = z.string().meta({ id: "Inner" });
2184
- const result = z.toJSONSchema(z.object({ a: inner, b: inner }), { target: "draft-04" }) as any;
2185
- expect(result.definitions?.Inner).toEqual({ type: "string" });
2186
- expect(result.definitions?.Inner?.id).toBeUndefined();
2187
- });
2188
-
2189
- test("id is stripped from root schema", () => {
2190
- // The registration tag should not appear on the root either.
2191
- const A = z.object({ name: z.string() }).meta({ id: "A" });
2192
- const result = z.toJSONSchema(A);
2193
- expect((result as any).id).toBeUndefined();
2194
- });
2195
-
2196
- test("id is observable in override callback", () => {
2197
- // The strip happens after override callbacks run, so userland override code
2198
- // can still read `jsonSchema.id` if it wants to.
2199
- const inner = z.string().meta({ id: "Inner" });
2200
- const seenIds: Array<string | undefined> = [];
2201
- z.toJSONSchema(z.object({ a: inner }), {
2202
- override: ({ jsonSchema }) => {
2203
- if (jsonSchema.id !== undefined) seenIds.push(jsonSchema.id as string);
2204
- },
2205
- });
2206
- expect(seenIds).toContain("Inner");
2207
- });
2208
-
2209
- test("describe with id on wrapper", () => {
2210
- // Test that $ref propagation works when processor sets a different ref (readonly -> innerType)
2211
- // but parent was extracted due to having an id
2212
- const roJobId = z.string().readonly().meta({ id: "roJobId" });
2213
-
2214
- const a = z.toJSONSchema(
2215
- z.object({
2216
- current: roJobId.describe("Current readonly job"),
2217
- previous: roJobId.describe("Previous readonly job"),
2218
- })
2219
- );
2220
- expect(a).toMatchInlineSnapshot(`
2221
- {
2222
- "$defs": {
2223
- "roJobId": {
2224
- "readOnly": true,
2225
- "type": "string",
2226
- },
2227
- },
2228
- "$schema": "https://json-schema.org/draft/2020-12/schema",
2229
- "additionalProperties": false,
2230
- "properties": {
2231
- "current": {
2232
- "$ref": "#/$defs/roJobId",
2233
- "description": "Current readonly job",
2234
- },
2235
- "previous": {
2236
- "$ref": "#/$defs/roJobId",
2237
- "description": "Previous readonly job",
2238
- },
2239
- },
2240
- "required": [
2241
- "current",
2242
- "previous",
2243
- ],
2244
- "type": "object",
2245
- }
2246
- `);
2247
- });
2248
-
2249
- test("overwrite id", () => {
2250
- const jobId = z.string().meta({ id: "aaa" });
2251
-
2252
- const a = z.toJSONSchema(
2253
- z.object({
2254
- current: jobId,
2255
- previous: jobId.meta({ id: "bbb" }),
2256
- })
2257
- );
2258
- expect(a).toMatchInlineSnapshot(`
2259
- {
2260
- "$defs": {
2261
- "aaa": {
2262
- "type": "string",
2263
- },
2264
- "bbb": {
2265
- "$ref": "#/$defs/aaa",
2266
- },
2267
- },
2268
- "$schema": "https://json-schema.org/draft/2020-12/schema",
2269
- "additionalProperties": false,
2270
- "properties": {
2271
- "current": {
2272
- "$ref": "#/$defs/aaa",
2273
- },
2274
- "previous": {
2275
- "$ref": "#/$defs/bbb",
2276
- },
2277
- },
2278
- "required": [
2279
- "current",
2280
- "previous",
2281
- ],
2282
- "type": "object",
2283
- }
2284
- `);
2285
-
2286
- const b = z.toJSONSchema(
2287
- z.object({
2288
- current: jobId,
2289
- previous: jobId.meta({ id: "ccc" }),
2290
- }),
2291
- {
2292
- reused: "ref",
2293
- }
2294
- );
2295
- expect(b).toMatchInlineSnapshot(`
2296
- {
2297
- "$defs": {
2298
- "aaa": {
2299
- "type": "string",
2300
- },
2301
- "ccc": {
2302
- "$ref": "#/$defs/aaa",
2303
- },
2304
- },
2305
- "$schema": "https://json-schema.org/draft/2020-12/schema",
2306
- "additionalProperties": false,
2307
- "properties": {
2308
- "current": {
2309
- "$ref": "#/$defs/aaa",
2310
- },
2311
- "previous": {
2312
- "$ref": "#/$defs/ccc",
2313
- },
2314
- },
2315
- "required": [
2316
- "current",
2317
- "previous",
2318
- ],
2319
- "type": "object",
2320
- }
2321
- `);
2322
- });
2323
-
2324
- test("overwrite descriptions", () => {
2325
- const field = z.string().describe("a").describe("b").describe("c");
2326
-
2327
- const a = z.toJSONSchema(
2328
- z.object({
2329
- d: field.describe("d"),
2330
- e: field.describe("e"),
2331
- })
2332
- );
2333
- expect(a).toMatchInlineSnapshot(`
2334
- {
2335
- "$schema": "https://json-schema.org/draft/2020-12/schema",
2336
- "additionalProperties": false,
2337
- "properties": {
2338
- "d": {
2339
- "description": "d",
2340
- "type": "string",
2341
- },
2342
- "e": {
2343
- "description": "e",
2344
- "type": "string",
2345
- },
2346
- },
2347
- "required": [
2348
- "d",
2349
- "e",
2350
- ],
2351
- "type": "object",
2352
- }
2353
- `);
2354
-
2355
- const b = z.toJSONSchema(
2356
- z.object({
2357
- d: field.describe("d"),
2358
- e: field.describe("e"),
2359
- }),
2360
- {
2361
- reused: "ref",
2362
- }
2363
- );
2364
- expect(b).toMatchInlineSnapshot(`
2365
- {
2366
- "$defs": {
2367
- "__schema0": {
2368
- "description": "c",
2369
- "type": "string",
2370
- },
2371
- },
2372
- "$schema": "https://json-schema.org/draft/2020-12/schema",
2373
- "additionalProperties": false,
2374
- "properties": {
2375
- "d": {
2376
- "$ref": "#/$defs/__schema0",
2377
- "description": "d",
2378
- },
2379
- "e": {
2380
- "$ref": "#/$defs/__schema0",
2381
- "description": "e",
2382
- },
2383
- },
2384
- "required": [
2385
- "d",
2386
- "e",
2387
- ],
2388
- "type": "object",
2389
- }
2390
- `);
2391
- });
2392
-
2393
- test("top-level readonly", () => {
2394
- const A = z
2395
- .object({
2396
- name: z.string(),
2397
- get b() {
2398
- return B;
2399
- },
2400
- })
2401
- .readonly()
2402
- .meta({ id: "A" });
2403
- // z.globalRegistry.add(A, { id: "A" });
2404
- // .meta({ id: "A" });
2405
-
2406
- const B = z
2407
- .object({
2408
- name: z.string(),
2409
- get a() {
2410
- return A;
2411
- },
2412
- })
2413
- .readonly()
2414
- .meta({ id: "B" });
2415
- // z.globalRegistry.add(B, { id: "B" });
2416
- // .meta({ id: "B" });
2417
-
2418
- const result = z.toJSONSchema(A);
2419
- expect(result).toMatchInlineSnapshot(`
2420
- {
2421
- "$defs": {
2422
- "B": {
2423
- "additionalProperties": false,
2424
- "properties": {
2425
- "a": {
2426
- "$ref": "#",
2427
- },
2428
- "name": {
2429
- "type": "string",
2430
- },
2431
- },
2432
- "readOnly": true,
2433
- "required": [
2434
- "name",
2435
- "a",
2436
- ],
2437
- "type": "object",
2438
- },
2439
- },
2440
- "$schema": "https://json-schema.org/draft/2020-12/schema",
2441
- "additionalProperties": false,
2442
- "properties": {
2443
- "b": {
2444
- "$ref": "#/$defs/B",
2445
- },
2446
- "name": {
2447
- "type": "string",
2448
- },
2449
- },
2450
- "readOnly": true,
2451
- "required": [
2452
- "name",
2453
- "b",
2454
- ],
2455
- "type": "object",
2456
- }
2457
- `);
2458
- });
2459
-
2460
- test("basic registry", () => {
2461
- const myRegistry = z.registry<{ id: string }>();
2462
- const User = z.object({
2463
- name: z.string(),
2464
- get posts() {
2465
- return z.array(Post);
2466
- },
2467
- });
2468
-
2469
- const Post = z.object({
2470
- title: z.string(),
2471
- content: z.string(),
2472
- get author() {
2473
- return User;
2474
- },
2475
- });
2476
-
2477
- myRegistry.add(User, { id: "User" });
2478
- myRegistry.add(Post, { id: "Post" });
2479
-
2480
- const result = z.toJSONSchema(myRegistry, {
2481
- uri: (id) => `https://example.com/${id}.json`,
2482
- });
2483
- expect(result).toMatchInlineSnapshot(`
2484
- {
2485
- "schemas": {
2486
- "Post": {
2487
- "$id": "https://example.com/Post.json",
2488
- "$schema": "https://json-schema.org/draft/2020-12/schema",
2489
- "additionalProperties": false,
2490
- "properties": {
2491
- "author": {
2492
- "$ref": "https://example.com/User.json",
2493
- },
2494
- "content": {
2495
- "type": "string",
2496
- },
2497
- "title": {
2498
- "type": "string",
2499
- },
2500
- },
2501
- "required": [
2502
- "title",
2503
- "content",
2504
- "author",
2505
- ],
2506
- "type": "object",
2507
- },
2508
- "User": {
2509
- "$id": "https://example.com/User.json",
2510
- "$schema": "https://json-schema.org/draft/2020-12/schema",
2511
- "additionalProperties": false,
2512
- "properties": {
2513
- "name": {
2514
- "type": "string",
2515
- },
2516
- "posts": {
2517
- "items": {
2518
- "$ref": "https://example.com/Post.json",
2519
- },
2520
- "type": "array",
2521
- },
2522
- },
2523
- "required": [
2524
- "name",
2525
- "posts",
2526
- ],
2527
- "type": "object",
2528
- },
2529
- },
2530
- }
2531
- `);
2532
- });
2533
-
2534
- test("_ref", () => {
2535
- // const a = z.promise(z.string().describe("a"));
2536
- const a = z.toJSONSchema(z.promise(z.string().describe("a")));
2537
- expect(a).toMatchInlineSnapshot(`
2538
- {
2539
- "$schema": "https://json-schema.org/draft/2020-12/schema",
2540
- "description": "a",
2541
- "type": "string",
2542
- }
2543
- `);
2544
-
2545
- const b = z.toJSONSchema(z.lazy(() => z.string().describe("a")));
2546
- expect(b).toMatchInlineSnapshot(`
2547
- {
2548
- "$schema": "https://json-schema.org/draft/2020-12/schema",
2549
- "description": "a",
2550
- "type": "string",
2551
- }
2552
- `);
2553
-
2554
- const c = z.toJSONSchema(z.optional(z.string().describe("a")));
2555
- expect(c).toMatchInlineSnapshot(`
2556
- {
2557
- "$schema": "https://json-schema.org/draft/2020-12/schema",
2558
- "description": "a",
2559
- "type": "string",
2560
- }
2561
- `);
2562
-
2563
- const d = z.toJSONSchema(z.string().meta({ id: "foo" }).describe("bar").optional());
2564
- expect(d).toMatchInlineSnapshot(`
2565
- {
2566
- "$defs": {
2567
- "foo": {
2568
- "type": "string",
2569
- },
2570
- },
2571
- "$ref": "#/$defs/foo",
2572
- "$schema": "https://json-schema.org/draft/2020-12/schema",
2573
- "description": "bar",
2574
- }
2575
- `);
2576
- });
2577
-
2578
- test("defaults/prefaults", () => {
2579
- const a = z
2580
- .string()
2581
- .transform((val) => val.length)
2582
- .pipe(z.number());
2583
- const b = a.prefault("hello");
2584
- const c = a.default(1234);
2585
-
2586
- // a
2587
- expect(z.toJSONSchema(a)).toMatchInlineSnapshot(`
2588
- {
2589
- "$schema": "https://json-schema.org/draft/2020-12/schema",
2590
- "type": "number",
2591
- }
2592
- `);
2593
- expect(z.toJSONSchema(a, { io: "input" })).toMatchInlineSnapshot(`
2594
- {
2595
- "$schema": "https://json-schema.org/draft/2020-12/schema",
2596
- "type": "string",
2597
- }
2598
- `);
2599
-
2600
- // b
2601
- expect(z.toJSONSchema(b)).toMatchInlineSnapshot(`
2602
- {
2603
- "$schema": "https://json-schema.org/draft/2020-12/schema",
2604
- "type": "number",
2605
- }
2606
- `);
2607
- expect(z.toJSONSchema(b, { io: "input" })).toMatchInlineSnapshot(`
2608
- {
2609
- "$schema": "https://json-schema.org/draft/2020-12/schema",
2610
- "default": "hello",
2611
- "type": "string",
2612
- }
2613
- `);
2614
- // c
2615
- expect(z.toJSONSchema(c)).toMatchInlineSnapshot(`
2616
- {
2617
- "$schema": "https://json-schema.org/draft/2020-12/schema",
2618
- "default": 1234,
2619
- "type": "number",
2620
- }
2621
- `);
2622
- expect(z.toJSONSchema(c, { io: "input" })).toMatchInlineSnapshot(`
2623
- {
2624
- "$schema": "https://json-schema.org/draft/2020-12/schema",
2625
- "type": "string",
2626
- }
2627
- `);
2628
- });
2629
-
2630
- test("falsy prefaults (false, 0, empty string)", () => {
2631
- // boolean prefault false
2632
- const a = z.boolean().prefault(false);
2633
- expect(z.toJSONSchema(a, { io: "input" })).toMatchInlineSnapshot(`
2634
- {
2635
- "$schema": "https://json-schema.org/draft/2020-12/schema",
2636
- "default": false,
2637
- "type": "boolean",
2638
- }
2639
- `);
2640
-
2641
- // number prefault 0
2642
- const b = z.number().prefault(0);
2643
- expect(z.toJSONSchema(b, { io: "input" })).toMatchInlineSnapshot(`
2644
- {
2645
- "$schema": "https://json-schema.org/draft/2020-12/schema",
2646
- "default": 0,
2647
- "type": "number",
2648
- }
2649
- `);
2650
-
2651
- // string prefault empty string
2652
- const c = z.string().prefault("");
2653
- expect(z.toJSONSchema(c, { io: "input" })).toMatchInlineSnapshot(`
2654
- {
2655
- "$schema": "https://json-schema.org/draft/2020-12/schema",
2656
- "default": "",
2657
- "type": "string",
2658
- }
2659
- `);
2660
- });
2661
-
2662
- test("input type", () => {
2663
- const schema = z.object({
2664
- a: z.string(),
2665
- b: z.string().optional(),
2666
- c: z.string().default("hello"),
2667
- d: z.string().nullable(),
2668
- e: z.string().prefault("hello"),
2669
- f: z.string().catch("hello"),
2670
- g: z.never(),
2671
- h: z.union([z.string(), z.number().default(2)]),
2672
- i: z.union([z.string(), z.string().optional()]),
2673
- });
2674
- expect(z.toJSONSchema(schema, { io: "input" })).toMatchInlineSnapshot(`
2675
- {
2676
- "$schema": "https://json-schema.org/draft/2020-12/schema",
2677
- "properties": {
2678
- "a": {
2679
- "type": "string",
2680
- },
2681
- "b": {
2682
- "type": "string",
2683
- },
2684
- "c": {
2685
- "default": "hello",
2686
- "type": "string",
2687
- },
2688
- "d": {
2689
- "anyOf": [
2690
- {
2691
- "type": "string",
2692
- },
2693
- {
2694
- "type": "null",
2695
- },
2696
- ],
2697
- },
2698
- "e": {
2699
- "default": "hello",
2700
- "type": "string",
2701
- },
2702
- "f": {
2703
- "default": "hello",
2704
- "type": "string",
2705
- },
2706
- "g": {
2707
- "not": {},
2708
- },
2709
- "h": {
2710
- "anyOf": [
2711
- {
2712
- "type": "string",
2713
- },
2714
- {
2715
- "default": 2,
2716
- "type": "number",
2717
- },
2718
- ],
2719
- },
2720
- "i": {
2721
- "anyOf": [
2722
- {
2723
- "type": "string",
2724
- },
2725
- {
2726
- "type": "string",
2727
- },
2728
- ],
2729
- },
2730
- },
2731
- "required": [
2732
- "a",
2733
- "d",
2734
- "g",
2735
- ],
2736
- "type": "object",
2737
- }
2738
- `);
2739
- expect(z.toJSONSchema(schema, { io: "output" })).toMatchInlineSnapshot(`
2740
- {
2741
- "$schema": "https://json-schema.org/draft/2020-12/schema",
2742
- "additionalProperties": false,
2743
- "properties": {
2744
- "a": {
2745
- "type": "string",
2746
- },
2747
- "b": {
2748
- "type": "string",
2749
- },
2750
- "c": {
2751
- "default": "hello",
2752
- "type": "string",
2753
- },
2754
- "d": {
2755
- "anyOf": [
2756
- {
2757
- "type": "string",
2758
- },
2759
- {
2760
- "type": "null",
2761
- },
2762
- ],
2763
- },
2764
- "e": {
2765
- "type": "string",
2766
- },
2767
- "f": {
2768
- "default": "hello",
2769
- "type": "string",
2770
- },
2771
- "g": {
2772
- "not": {},
2773
- },
2774
- "h": {
2775
- "anyOf": [
2776
- {
2777
- "type": "string",
2778
- },
2779
- {
2780
- "default": 2,
2781
- "type": "number",
2782
- },
2783
- ],
2784
- },
2785
- "i": {
2786
- "anyOf": [
2787
- {
2788
- "type": "string",
2789
- },
2790
- {
2791
- "type": "string",
2792
- },
2793
- ],
2794
- },
2795
- },
2796
- "required": [
2797
- "a",
2798
- "c",
2799
- "d",
2800
- "e",
2801
- "f",
2802
- "g",
2803
- "h",
2804
- ],
2805
- "type": "object",
2806
- }
2807
- `);
2808
- });
2809
-
2810
- test("examples on pipe", () => {
2811
- const schema = z
2812
- .string()
2813
- .meta({ examples: ["test"] })
2814
- .transform(Number)
2815
- // .pipe(z.transform(Number).meta({ examples: [4] }))
2816
- .meta({ examples: [4] });
2817
-
2818
- const i = z.toJSONSchema(schema, { io: "input", unrepresentable: "any" });
2819
- expect(i).toMatchInlineSnapshot(`
2820
- {
2821
- "$schema": "https://json-schema.org/draft/2020-12/schema",
2822
- "examples": [
2823
- "test",
2824
- ],
2825
- "type": "string",
2826
- }
2827
- `);
2828
- const o = z.toJSONSchema(schema, { io: "output", unrepresentable: "any" });
2829
- expect(o).toMatchInlineSnapshot(`
2830
- {
2831
- "$schema": "https://json-schema.org/draft/2020-12/schema",
2832
- "examples": [
2833
- 4,
2834
- ],
2835
- }
2836
- `);
2837
- });
2838
-
2839
- // test("number checks", () => {
2840
- // expect(z.toJSONSchema(z.number().int())).toMatchInlineSnapshot(`
2841
- // {
2842
- // "maximum": 9007199254740991,
2843
- // "minimum": -9007199254740991,
2844
- // "type": "integer",
2845
- // }
2846
- // `);
2847
- // expect(z.toJSONSchema(z.int())).toMatchInlineSnapshot(`
2848
- // {
2849
- // "maximum": 9007199254740991,
2850
- // "minimum": -9007199254740991,
2851
- // "type": "integer",
2852
- // }
2853
- // `);
2854
- // expect(z.toJSONSchema(z.int().positive())).toMatchInlineSnapshot(`
2855
- // {
2856
- // "exclusiveMinimum": 0,
2857
- // "maximum": 9007199254740991,
2858
- // "minimum": -9007199254740991,
2859
- // "type": "integer",
2860
- // }
2861
- // `);
2862
- // expect(z.toJSONSchema(z.int().nonnegative())).toMatchInlineSnapshot(`
2863
- // {
2864
- // "maximum": 9007199254740991,
2865
- // "minimum": 0,
2866
- // "type": "integer",
2867
- // }
2868
- // `);
2869
- // expect(z.toJSONSchema(z.int().gt(0))).toMatchInlineSnapshot(`
2870
- // {
2871
- // "exclusiveMinimum": 0,
2872
- // "maximum": 9007199254740991,
2873
- // "minimum": -9007199254740991,
2874
- // "type": "integer",
2875
- // }
2876
- // `);
2877
- // expect(z.toJSONSchema(z.int().gte(0))).toMatchInlineSnapshot(`
2878
- // {
2879
- // "maximum": 9007199254740991,
2880
- // "minimum": 0,
2881
- // "type": "integer",
2882
- // }
2883
- // `);
2884
-
2885
- // });
2886
-
2887
- test("use output type for preprocess", () => {
2888
- const a = z.preprocess((val) => String(val), z.string());
2889
-
2890
- expect(z.toJSONSchema(a, { io: "input" })).toMatchInlineSnapshot(`
2891
- {
2892
- "$schema": "https://json-schema.org/draft/2020-12/schema",
2893
- "type": "string",
2894
- }
2895
- `);
2896
- });
2897
-
2898
- test("strip output-side examples from input JSON schema for codec", () => {
2899
- const codec = z
2900
- .codec(z.string(), z.number(), { decode: (s) => Number(s), encode: (n) => String(n) })
2901
- .meta({ examples: [42] });
2902
-
2903
- expect(z.toJSONSchema(codec, { io: "input" })).toMatchInlineSnapshot(`
2904
- {
2905
- "$schema": "https://json-schema.org/draft/2020-12/schema",
2906
- "type": "string",
2907
- }
2908
- `);
2909
- expect(z.toJSONSchema(codec, { io: "output" })).toMatchInlineSnapshot(`
2910
- {
2911
- "$schema": "https://json-schema.org/draft/2020-12/schema",
2912
- "examples": [
2913
- 42,
2914
- ],
2915
- "type": "number",
2916
- }
2917
- `);
2918
- });
2919
-
2920
- // test("isTransforming", () => {
2921
- // const tx = z.core.isTransforming;
2922
- // expect(tx(z.string())).toEqual(false);
2923
- // expect(tx(z.string().transform((val) => val))).toEqual(true);
2924
- // expect(tx(z.string().pipe(z.string()))).toEqual(false);
2925
- // expect(
2926
- // tx(
2927
- // z
2928
- // .string()
2929
- // .transform((val) => val)
2930
- // .pipe(z.string())
2931
- // )
2932
- // ).toEqual(true);
2933
-
2934
- // const a = z.transform((val) => val);
2935
- // expect(tx(z.transform((val) => val))).toEqual(true);
2936
- // expect(tx(a.optional())).toEqual(true);
2937
-
2938
- // const b = z.string().optional();
2939
- // expect(tx(b)).toEqual(false);
2940
-
2941
- // const c = z.string().prefault("hello");
2942
- // expect(tx(c)).toEqual(false);
2943
-
2944
- // const d = z.string().default("hello");
2945
- // expect(tx(d)).toEqual(false);
2946
- // });
2947
-
2948
- test("flatten simple intersections", () => {
2949
- const FirstSchema = z.object({
2950
- testNum: z.number(),
2951
- });
2952
-
2953
- const SecondSchema = z.object({
2954
- testStr: z.string(),
2955
- });
2956
-
2957
- const ThirdSchema = z.object({
2958
- testBool: z.boolean(),
2959
- });
2960
-
2961
- const HelloSchema = FirstSchema.and(SecondSchema).and(ThirdSchema).describe("123");
2962
-
2963
- // Zod 3
2964
- // console.log(JSON.stringify(zodToJsonSchema(HelloSchema), null, 2));
2965
-
2966
- // Zod 4
2967
- const result = z.toJSONSchema(HelloSchema, { target: "draft-7" });
2968
- expect(result).toMatchInlineSnapshot(`
2969
- {
2970
- "$schema": "http://json-schema.org/draft-07/schema#",
2971
- "allOf": [
2972
- {
2973
- "additionalProperties": false,
2974
- "properties": {
2975
- "testNum": {
2976
- "type": "number",
2977
- },
2978
- },
2979
- "required": [
2980
- "testNum",
2981
- ],
2982
- "type": "object",
2983
- },
2984
- {
2985
- "additionalProperties": false,
2986
- "properties": {
2987
- "testStr": {
2988
- "type": "string",
2989
- },
2990
- },
2991
- "required": [
2992
- "testStr",
2993
- ],
2994
- "type": "object",
2995
- },
2996
- {
2997
- "additionalProperties": false,
2998
- "properties": {
2999
- "testBool": {
3000
- "type": "boolean",
3001
- },
3002
- },
3003
- "required": [
3004
- "testBool",
3005
- ],
3006
- "type": "object",
3007
- },
3008
- ],
3009
- "description": "123",
3010
- }
3011
- `);
3012
- });
3013
-
3014
- test("z.file()", () => {
3015
- const a = z.file();
3016
- expect(z.toJSONSchema(a)).toMatchInlineSnapshot(`
3017
- {
3018
- "$schema": "https://json-schema.org/draft/2020-12/schema",
3019
- "contentEncoding": "binary",
3020
- "format": "binary",
3021
- "type": "string",
3022
- }
3023
- `);
3024
-
3025
- const b = z.file().mime("image/png").min(1000).max(10000);
3026
- expect(z.toJSONSchema(b)).toMatchInlineSnapshot(`
3027
- {
3028
- "$schema": "https://json-schema.org/draft/2020-12/schema",
3029
- "contentEncoding": "binary",
3030
- "contentMediaType": "image/png",
3031
- "format": "binary",
3032
- "maxLength": 10000,
3033
- "minLength": 1000,
3034
- "type": "string",
3035
- }
3036
- `);
3037
-
3038
- const c = z.file().mime(["image/png", "image/jpg"]).min(1000).max(10000);
3039
- expect(z.toJSONSchema(c)).toMatchInlineSnapshot(`
3040
- {
3041
- "$schema": "https://json-schema.org/draft/2020-12/schema",
3042
- "anyOf": [
3043
- {
3044
- "contentMediaType": "image/png",
3045
- },
3046
- {
3047
- "contentMediaType": "image/jpg",
3048
- },
3049
- ],
3050
- "contentEncoding": "binary",
3051
- "format": "binary",
3052
- "maxLength": 10000,
3053
- "minLength": 1000,
3054
- "type": "string",
3055
- }
3056
- `);
3057
- });
3058
-
3059
- test("custom toJSONSchema", () => {
3060
- const schema = z.instanceof(Date);
3061
- schema._zod.toJSONSchema = () => ({
3062
- type: "string",
3063
- format: "date-time",
3064
- });
3065
-
3066
- expect(z.toJSONSchema(schema)).toMatchInlineSnapshot(`
3067
- {
3068
- "$schema": "https://json-schema.org/draft/2020-12/schema",
3069
- "format": "date-time",
3070
- "type": "string",
3071
- }
3072
- `);
3073
- });
3074
-
3075
- test("cycle detection - root", () => {
3076
- const schema = z.object({
3077
- name: z.string(),
3078
- get subcategories() {
3079
- return z.array(schema);
3080
- },
3081
- });
3082
-
3083
- expect(() => z.toJSONSchema(schema, { cycles: "throw" })).toThrowErrorMatchingInlineSnapshot(`
3084
- [Error: Cycle detected: #/properties/subcategories/items/<root>
3085
-
3086
- Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.]
3087
- `);
3088
- });
3089
-
3090
- test("cycle detection - mutual recursion", () => {
3091
- const A = z.object({
3092
- name: z.string(),
3093
- get subcategories() {
3094
- return z.array(B);
3095
- },
3096
- });
3097
-
3098
- const B = z.object({
3099
- name: z.string(),
3100
- get subcategories() {
3101
- return z.array(A);
3102
- },
3103
- });
3104
-
3105
- expect(() => z.toJSONSchema(A, { cycles: "throw" })).toThrowErrorMatchingInlineSnapshot(`
3106
- [Error: Cycle detected: #/properties/subcategories/items/properties/subcategories/items/<root>
3107
-
3108
- Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.]
3109
- `);
3110
- });
3111
-
3112
- test("recursive lazy with describe does not stack overflow", () => {
3113
- const NodeSchema: z.ZodType = z.lazy(() =>
3114
- z
3115
- .object({
3116
- value: z.string().describe("node value"),
3117
- children: z.array(NodeSchema.describe("child node")).optional().describe("child list"),
3118
- })
3119
- .describe("tree node")
3120
- );
3121
-
3122
- const result = z.toJSONSchema(NodeSchema, { cycles: "ref", reused: "ref" });
3123
- expect(result).toBeDefined();
3124
- expect(result.$defs).toBeDefined();
3125
- });