@highstate/designer 0.19.1 → 0.21.1

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 (557) hide show
  1. package/.output/nitro.json +5 -5
  2. package/.output/public/_nuxt/-OnKOwAh.js +1 -0
  3. package/.output/public/_nuxt/32ctXXKs.js +1 -0
  4. package/.output/public/_nuxt/5X7smno1.js +1 -0
  5. package/.output/public/_nuxt/5gjbd9sK.js +1 -0
  6. package/.output/public/_nuxt/9OHRRPkh.js +1 -0
  7. package/.output/public/_nuxt/B-dJABhs.js +1 -0
  8. package/.output/public/_nuxt/B2SoM2pd.js +2 -0
  9. package/.output/public/_nuxt/B4FDp1sn.js +1 -0
  10. package/.output/public/_nuxt/{CmALWFRB.js → B69Z0Xk1.js} +16 -468
  11. package/.output/public/_nuxt/B7RpoNQl.js +1 -0
  12. package/.output/public/_nuxt/B7c-h3xW.js +1 -0
  13. package/.output/public/_nuxt/BA47KaF1.js +1 -0
  14. package/.output/public/_nuxt/BArXRmKu.js +1 -0
  15. package/.output/public/_nuxt/BBf5iR-q.js +1 -0
  16. package/.output/public/_nuxt/BCJKqJxW.js +1 -0
  17. package/.output/public/_nuxt/{YB_1Ta41.js → BD_Kvn-W.js} +1 -1
  18. package/.output/public/_nuxt/BGHnOYBU.js +1 -0
  19. package/.output/public/_nuxt/BH7IYjvW.js +1 -0
  20. package/.output/public/_nuxt/BIPWeF69.js +1 -0
  21. package/.output/public/_nuxt/BJDFO7_C.js +1 -0
  22. package/.output/public/_nuxt/BKIVPvZX.js +1 -0
  23. package/.output/public/_nuxt/{Xi2tawMN.js → BLmx8bSh.js} +1 -1
  24. package/.output/public/_nuxt/BN7gUcg9.js +1 -0
  25. package/.output/public/_nuxt/{DlfHMoPT.js → BPQ3VLAy.js} +1 -1
  26. package/.output/public/_nuxt/{BBGuKPBd.js → BR5kRUq4.js} +1 -1
  27. package/.output/public/_nuxt/BTd2ZN65.js +1 -0
  28. package/.output/public/_nuxt/BTifaqeh.js +1 -0
  29. package/.output/public/_nuxt/BUw7H-hv.js +1 -0
  30. package/.output/public/_nuxt/{DRprw4p4.js → BVQ-GDCI.js} +1 -1
  31. package/.output/public/_nuxt/BXphdu9w.js +2 -0
  32. package/.output/public/_nuxt/{BbQj0Z2C.js → BYV0-3_D.js} +1 -1
  33. package/.output/public/_nuxt/BYmSxWA_.js +1 -0
  34. package/.output/public/_nuxt/BZvkOJ9d.js +1 -0
  35. package/.output/public/_nuxt/BcVCzyr7.js +1 -0
  36. package/.output/public/_nuxt/BdRuKvw2.js +1 -0
  37. package/.output/public/_nuxt/Bdd5S2WL.js +1 -0
  38. package/.output/public/_nuxt/BeH2EWoN.js +1 -0
  39. package/.output/public/_nuxt/BhozkjGO.js +1 -0
  40. package/.output/public/_nuxt/Bl_Sz9PU.js +1 -0
  41. package/.output/public/_nuxt/Bmn6On1c.js +1 -0
  42. package/.output/public/_nuxt/{BIAuTxu3.js → Br6cN0cg.js} +1 -1
  43. package/.output/public/_nuxt/Bs8TB6Bu.js +1 -0
  44. package/.output/public/_nuxt/BtrNScOx.js +1 -0
  45. package/.output/public/_nuxt/{DcmvOc98.js → Bu1xs0Fv.js} +1 -1
  46. package/.output/public/_nuxt/BupMEc6X.js +6 -0
  47. package/.output/public/_nuxt/Bv_4Rxtq.js +1 -0
  48. package/.output/public/_nuxt/Bv_vOb-Y.js +14 -0
  49. package/.output/public/_nuxt/BvzEVeQv.js +1 -0
  50. package/.output/public/_nuxt/BwKAHWnp.js +1 -0
  51. package/.output/public/_nuxt/BxAss8Tj.js +1 -0
  52. package/.output/public/_nuxt/BxgE0vQu.js +1 -0
  53. package/.output/public/_nuxt/ByE1aAlg.js +2 -0
  54. package/.output/public/_nuxt/{COI20M4I.js → BzTr9Aqm.js} +1 -1
  55. package/.output/public/_nuxt/BzhaMbyl.js +1 -0
  56. package/.output/public/_nuxt/{CXu1NL6O.js → C-HG3fhB.js} +1 -1
  57. package/.output/public/_nuxt/C2zyO9uX.js +1 -0
  58. package/.output/public/_nuxt/C3Wv6jpd.js +1 -0
  59. package/.output/public/_nuxt/C4EeE6gA.js +1 -0
  60. package/.output/public/_nuxt/C4XpvUuq.js +1 -0
  61. package/.output/public/_nuxt/{C-Jbm3Hp.js → C4gqWexZ.js} +1 -1
  62. package/.output/public/_nuxt/C5BYcBs_.js +1 -0
  63. package/.output/public/_nuxt/{DTMYz4Jt.js → C5YyOfLZ.js} +1 -1
  64. package/.output/public/_nuxt/C7zT0LnQ.js +1 -0
  65. package/.output/public/_nuxt/C973_vs5.js +5 -0
  66. package/.output/public/_nuxt/C9dUb6Cb.js +1 -0
  67. package/.output/public/_nuxt/{DS1LvVMU.js → C9oPPf7i.js} +1 -1
  68. package/.output/public/_nuxt/CBIEPWAA.js +1 -0
  69. package/.output/public/_nuxt/CBVcjGJL.js +1 -0
  70. package/.output/public/_nuxt/CENFIVCM.js +1 -0
  71. package/.output/public/_nuxt/{D1uDOp7C.js → CFHQjOhq.js} +1 -1
  72. package/.output/public/_nuxt/{DKzvysjW.js → CH1njM8p.js} +1 -1
  73. package/.output/public/_nuxt/CJN4g-3R.js +1 -0
  74. package/.output/public/_nuxt/CLZrNe3w.js +1 -0
  75. package/.output/public/_nuxt/CMTm3GFP.js +1 -0
  76. package/.output/public/_nuxt/COcwbKMJ.js +1 -0
  77. package/.output/public/_nuxt/CPsHsqGU.js +1 -0
  78. package/.output/public/_nuxt/CTRkBkra.js +1 -0
  79. package/.output/public/_nuxt/{CcyOm34o.js → CVdnzihN.js} +1 -1
  80. package/.output/public/_nuxt/CW8IKDeL.js +1 -0
  81. package/.output/public/_nuxt/{pkIJ47B4.js → CXZktZb0.js} +1 -1
  82. package/.output/public/_nuxt/CYL3VlR9.js +1 -0
  83. package/.output/public/_nuxt/CYpkKp66.js +1 -0
  84. package/.output/public/_nuxt/CYsAdtH9.js +1 -0
  85. package/.output/public/_nuxt/{BUyGWigt.js → CZhp0h8q.js} +1 -1
  86. package/.output/public/_nuxt/CaehGOgh.js +1 -0
  87. package/.output/public/_nuxt/CemiMtCX.js +1 -0
  88. package/.output/public/_nuxt/{oTG82Wo1.js → CenWIFCC.js} +1 -1
  89. package/.output/public/_nuxt/{Dtc2v4kS.js → CgK0fS9t.js} +1 -1
  90. package/.output/public/_nuxt/{BtsDLbAf.js → Cl0AqbOI.js} +1 -1
  91. package/.output/public/_nuxt/{DUSGQflk.js → Cm3UrAx6.js} +1 -1
  92. package/.output/public/_nuxt/{BGHREFWD.js → CmIQRyeF.js} +1 -1
  93. package/.output/public/_nuxt/CmJE87KM.js +1 -0
  94. package/.output/public/_nuxt/Cn-bp-IR.js +1 -0
  95. package/.output/public/_nuxt/{f7oK2omx.js → Cn7AkR1O.js} +1 -1
  96. package/.output/public/_nuxt/CnhVSb6R.js +1 -0
  97. package/.output/public/_nuxt/{JhPuU2gP.js → CnnebwVN.js} +1 -1
  98. package/.output/public/_nuxt/CnsnAmq5.js +1 -0
  99. package/.output/public/_nuxt/CoDkCxhg.js +1 -0
  100. package/.output/public/_nuxt/CpGRan2R.js +1 -0
  101. package/.output/public/_nuxt/{B-hkwWGT.js → CpOuai2O.js} +1 -1
  102. package/.output/public/_nuxt/CqQg8Ldy.js +1 -0
  103. package/.output/public/_nuxt/Cs-GjQ8R.js +1 -0
  104. package/.output/public/_nuxt/CtbC3i8L.js +1 -0
  105. package/.output/public/_nuxt/{BDzgwa52.js → CufHLc7y.js} +1 -1
  106. package/.output/public/_nuxt/CvSiusML.js +1 -0
  107. package/.output/public/_nuxt/CwoSXNpI.js +1 -0
  108. package/.output/public/_nuxt/CxLEBnE3.js +1 -0
  109. package/.output/public/_nuxt/{DNrj_gVY.js → CxbxFI8M.js} +1 -1
  110. package/.output/public/_nuxt/CxoCegAs.js +13 -0
  111. package/.output/public/_nuxt/Cz-197mS.js +1 -0
  112. package/.output/public/_nuxt/Cz2AlsmD.js +1 -0
  113. package/.output/public/_nuxt/D-7HtdRe.js +12 -0
  114. package/.output/public/_nuxt/{NleAzG8P.js → D4_iv3hh.js} +1 -1
  115. package/.output/public/_nuxt/D53aC0YG.js +1 -0
  116. package/.output/public/_nuxt/{Dg5xB15N.js → D82vCrfD.js} +1 -1
  117. package/.output/public/_nuxt/D87Tk5Gz.js +1 -0
  118. package/.output/public/_nuxt/D8_7TLub.js +1 -0
  119. package/.output/public/_nuxt/D8l8udqQ.js +1 -0
  120. package/.output/public/_nuxt/DCK6hB22.js +1 -0
  121. package/.output/public/_nuxt/{Cb0HU5_O.js → DDvzSYfr.js} +1 -1
  122. package/.output/public/_nuxt/DEtIJe2u.js +1 -0
  123. package/.output/public/_nuxt/DEthMvLe.js +1 -0
  124. package/.output/public/_nuxt/DFWUc33u.js +1 -0
  125. package/.output/public/_nuxt/{5bLW0GMw.js → DGP4VlC8.js} +1 -1
  126. package/.output/public/_nuxt/DHJ62FKo.js +2 -0
  127. package/.output/public/_nuxt/{CnK8MTSM.js → DHQR4-dF.js} +1 -1
  128. package/.output/public/_nuxt/DJjDtW9f.js +1 -0
  129. package/.output/public/_nuxt/DKWXhhCy.js +1 -0
  130. package/.output/public/_nuxt/DPOp833l.js +1 -0
  131. package/.output/public/_nuxt/DQyhUUbL.js +1 -0
  132. package/.output/public/_nuxt/DRJZaHtK.js +1 -0
  133. package/.output/public/_nuxt/{DPcUKYIF.js → DRw_LuNl.js} +1 -1
  134. package/.output/public/_nuxt/DSDbyhpJ.js +1 -0
  135. package/.output/public/_nuxt/{B8ROHVmM.js → DSeZwD4N.js} +1 -1
  136. package/.output/public/_nuxt/{GAB5JH5K.js → DSpiceQe.js} +1 -1
  137. package/.output/public/_nuxt/DTPYfUid.js +1 -0
  138. package/.output/public/_nuxt/DUHba1vY.js +1 -0
  139. package/.output/public/_nuxt/DV7GczEv.js +1 -0
  140. package/.output/public/_nuxt/DXyfavJr.js +1 -0
  141. package/.output/public/_nuxt/DYE7WIF3.js +1 -0
  142. package/.output/public/_nuxt/DZf3V79B.js +1 -0
  143. package/.output/public/_nuxt/{BPzJO5Oe.js → DZu-aV2c.js} +1 -1
  144. package/.output/public/_nuxt/D_wY_uke.js +1 -0
  145. package/.output/public/_nuxt/Dahes9VH.js +1 -0
  146. package/.output/public/_nuxt/DdvHdmGh.js +1 -0
  147. package/.output/public/_nuxt/DfvKjH24.js +1 -0
  148. package/.output/public/_nuxt/DgsIRcX7.js +1 -0
  149. package/.output/public/_nuxt/{Cdx7mHEO.js → DhmSosst.js} +1 -1
  150. package/.output/public/_nuxt/{D32k8WzR.js → DjAJT7YJ.js} +1 -1
  151. package/.output/public/_nuxt/Djg8J2AC.js +1 -0
  152. package/.output/public/_nuxt/DkkrdwgN.js +1 -0
  153. package/.output/public/_nuxt/DnpKvmH_.js +1 -0
  154. package/.output/public/_nuxt/{CA7CTBwS.js → Dph4kLrZ.js} +1 -1
  155. package/.output/public/_nuxt/DqQDbK_p.js +1 -0
  156. package/.output/public/_nuxt/DrWe3t51.js +2 -0
  157. package/.output/public/_nuxt/DsG1SoRB.js +1 -0
  158. package/.output/public/_nuxt/Dspwwk_N.js +1 -0
  159. package/.output/public/_nuxt/DsumFeuD.js +1 -0
  160. package/.output/public/_nuxt/DtBrxin9.js +1 -0
  161. package/.output/public/_nuxt/{D7ScPSBf.js → DxNHbxmM.js} +1 -1
  162. package/.output/public/_nuxt/{CLvts2aQ.js → DxSwrfjg.js} +1 -1
  163. package/.output/public/_nuxt/{COEtLSDF.js → Dzze3sRP.js} +1 -1
  164. package/.output/public/_nuxt/EnN6XTXK.js +1 -0
  165. package/.output/public/_nuxt/Fcs-0n6A.js +1 -0
  166. package/.output/public/_nuxt/{B5ZR69Tn.js → FtFNcQmh.js} +1 -1
  167. package/.output/public/_nuxt/GXzlut8R.js +1 -0
  168. package/.output/public/_nuxt/{DkhsQLT2.js → GsRaNv29.js} +1 -1
  169. package/.output/public/_nuxt/IF9eRakj.js +1 -0
  170. package/.output/public/_nuxt/Lks7C8cK.js +3 -0
  171. package/.output/public/_nuxt/M0WOzN-S.js +269 -0
  172. package/.output/public/_nuxt/OuCcJFrZ.js +1 -0
  173. package/.output/public/_nuxt/{SecretValueField.DcyO8gGc.css → SecretValueField.Dy80RlGP.css} +1 -1
  174. package/.output/public/_nuxt/UD_auLNX.js +1 -0
  175. package/.output/public/_nuxt/Ve4PFQV2.js +1 -0
  176. package/.output/public/_nuxt/{CU27uY9n.js → W9tJ9s81.js} +1 -1
  177. package/.output/public/_nuxt/{DeWFVDHI.js → YqXBG_HV.js} +1 -1
  178. package/.output/public/_nuxt/ZpmLW6rw.js +1 -0
  179. package/.output/public/_nuxt/_H4v1dQx.js +1 -0
  180. package/.output/public/_nuxt/_snapshotId_.ChuSNeNY.css +1 -0
  181. package/.output/public/_nuxt/builds/latest.json +1 -1
  182. package/.output/public/_nuxt/builds/meta/d356de5d-6230-4e66-aba2-c48f455ae207.json +1 -0
  183. package/.output/public/_nuxt/builds/meta/ed797280-2bf0-44e6-a601-2ff2462bfbbc.json +1 -0
  184. package/.output/public/_nuxt/c6k-jVO-.js +1 -0
  185. package/.output/public/_nuxt/edge-router-BdPMCV6u.js +1 -0
  186. package/.output/public/_nuxt/{entry.dxugZJXl.css → entry.Bc0aTA0K.css} +1 -1
  187. package/.output/public/_nuxt/eo99z4R2.js +1 -0
  188. package/.output/public/_nuxt/error-404.iOXvqd5J.css +1 -0
  189. package/.output/public/_nuxt/error-500.D0BgXBui.css +1 -0
  190. package/.output/public/_nuxt/{DrZfEa88.js → fKv21gyL.js} +1 -1
  191. package/.output/public/_nuxt/graph-layout-B7wl80r3.js +1 -0
  192. package/.output/public/_nuxt/graph-resolver-E9RSC1Ga.js +180 -0
  193. package/.output/public/_nuxt/hAFXcJ2_.js +1 -0
  194. package/.output/public/_nuxt/{CGqH5EJj.js → hJgmCMqR.js} +1 -1
  195. package/.output/public/_nuxt/{BoKiGodi.js → k_qm7-4y.js} +1 -1
  196. package/.output/public/_nuxt/{IvJ92aGK.js → m17aaUwq.js} +1 -1
  197. package/.output/public/_nuxt/mWjccvbQ.js +1 -0
  198. package/.output/public/_nuxt/{BXY8tDGw.js → mjskCLCv.js} +1 -1
  199. package/.output/public/_nuxt/monaco-editor.DOXZIHvr.css +1 -0
  200. package/.output/public/_nuxt/n2N0HUVH.js +1 -0
  201. package/.output/public/_nuxt/oH_c3LbQ.js +1 -0
  202. package/.output/public/_nuxt/{BHrmToEH.js → qdsjHGoJ.js} +1 -1
  203. package/.output/public/_nuxt/{BbcW6ACK.js → rGO070M0.js} +1 -1
  204. package/.output/public/_nuxt/rZm6bMo-.js +1 -0
  205. package/.output/public/_nuxt/rscZxuQ2.js +1 -0
  206. package/.output/public/_nuxt/sB5TSp0H.js +18 -0
  207. package/.output/public/_nuxt/u5AG7uiY.js +1 -0
  208. package/.output/public/_nuxt/uYugtg8r.js +1 -0
  209. package/.output/public/_nuxt/vuetify.BzdWZaIq.css +1 -0
  210. package/.output/public/_nuxt/wCosSBIO.js +1 -0
  211. package/.output/public/_nuxt/{BMMyXqK5.js → wDzz0qaB.js} +1 -1
  212. package/.output/public/_nuxt/xnReCuE4.js +1 -0
  213. package/.output/public/_nuxt/y0GN4iGv.js +1 -0
  214. package/.output/public/_nuxt/yaml.worker-CYOhFCVP.js +395 -0
  215. package/.output/public/libavoid.wasm +0 -0
  216. package/.output/server/index.mjs +3216 -13095
  217. package/.output/server/index.mjs.map +1 -1
  218. package/.output/server/node_modules/@babel/parser/lib/index.js +428 -441
  219. package/.output/server/node_modules/@babel/parser/package.json +6 -6
  220. package/.output/server/node_modules/@trpc/server/dist/adapters/fetch/index.cjs +57 -0
  221. package/.output/server/node_modules/@trpc/server/dist/adapters/fetch/index.mjs +4 -4
  222. package/.output/server/node_modules/@trpc/server/dist/codes-BfZsPdy-.cjs +222 -0
  223. package/.output/server/node_modules/@trpc/server/dist/{utils-CLZnJdb_.mjs → codes-DagpWZLc.mjs} +66 -66
  224. package/.output/server/node_modules/@trpc/server/dist/{contentTypeParsers-SN4WL9ze.mjs → contentTypeParsers-iAFF_pJG.cjs} +7 -2
  225. package/.output/server/node_modules/@trpc/server/dist/getErrorShape-MR4DZeb7.cjs +341 -0
  226. package/.output/server/node_modules/@trpc/server/dist/{getErrorShape-BH60iMC2.mjs → getErrorShape-vC8mUXJD.mjs} +3 -3
  227. package/.output/server/node_modules/@trpc/server/dist/http.cjs +14 -0
  228. package/.output/server/node_modules/@trpc/server/dist/index.cjs +22 -0
  229. package/.output/server/node_modules/@trpc/server/dist/index.mjs +4 -4
  230. package/.output/server/node_modules/@trpc/server/dist/{initTRPC-CB9uBez5.mjs → initTRPC-B1ggxyJl.mjs} +4 -4
  231. package/.output/server/node_modules/@trpc/server/dist/initTRPC-BXPPV9Tx.cjs +416 -0
  232. package/.output/server/node_modules/@trpc/server/dist/observable/index.cjs +13 -0
  233. package/.output/server/node_modules/@trpc/server/dist/observable-B1Nk6r1H.cjs +181 -0
  234. package/.output/server/node_modules/@trpc/server/dist/{observable-CUiPknO-.mjs → observable-BVzLuBs6.cjs} +42 -8
  235. package/.output/server/node_modules/@trpc/server/dist/{parseTRPCMessage-BlZeZ60t.mjs → parseTRPCMessage-7Ltmq-Fb.cjs} +14 -4
  236. package/.output/server/node_modules/@trpc/server/dist/resolveResponse-B0CCg8nq.cjs +2365 -0
  237. package/.output/server/node_modules/@trpc/server/dist/{resolveResponse-DngSgha6.mjs → resolveResponse-C5I6V_wc.mjs} +109 -63
  238. package/.output/server/node_modules/@trpc/server/dist/rpc.cjs +6 -0
  239. package/.output/server/node_modules/@trpc/server/dist/{tracked-Blz8XOf1.mjs → tracked-DiE3uR1B.mjs} +22 -11
  240. package/.output/server/node_modules/@trpc/server/dist/tracked-Dj_dpOJE.cjs +486 -0
  241. package/.output/server/node_modules/@trpc/server/package.json +17 -7
  242. package/.output/server/node_modules/@vue/compiler-core/dist/compiler-core.cjs.prod.js +129 -107
  243. package/.output/server/node_modules/@vue/compiler-core/package.json +5 -5
  244. package/.output/server/node_modules/@vue/compiler-dom/dist/compiler-dom.cjs.prod.js +54 -54
  245. package/.output/server/node_modules/@vue/compiler-dom/package.json +3 -3
  246. package/.output/server/node_modules/@vue/compiler-ssr/dist/compiler-ssr.cjs.js +35 -33
  247. package/.output/server/node_modules/@vue/compiler-ssr/package.json +3 -3
  248. package/.output/server/node_modules/@vue/reactivity/dist/reactivity.cjs.prod.js +134 -53
  249. package/.output/server/node_modules/@vue/reactivity/package.json +2 -2
  250. package/.output/server/node_modules/@vue/runtime-core/dist/runtime-core.cjs.prod.js +1900 -1771
  251. package/.output/server/node_modules/@vue/runtime-core/package.json +3 -3
  252. package/.output/server/node_modules/@vue/runtime-dom/dist/runtime-dom.cjs.prod.js +147 -39
  253. package/.output/server/node_modules/@vue/runtime-dom/package.json +5 -5
  254. package/.output/server/node_modules/@vue/server-renderer/dist/server-renderer.cjs.prod.js +8 -4
  255. package/.output/server/node_modules/@vue/server-renderer/package.json +4 -4
  256. package/.output/server/node_modules/@vue/shared/dist/shared.cjs.prod.js +1 -1
  257. package/.output/server/node_modules/@vue/shared/package.json +1 -1
  258. package/.output/server/node_modules/copy-anything/dist/index.js +47 -31
  259. package/.output/server/node_modules/copy-anything/package.json +19 -72
  260. package/.output/server/node_modules/devalue/index.js +1 -0
  261. package/.output/server/node_modules/devalue/package.json +5 -2
  262. package/.output/server/node_modules/devalue/src/base64.js +46 -96
  263. package/.output/server/node_modules/devalue/src/constants.js +1 -0
  264. package/.output/server/node_modules/devalue/src/parse.js +82 -9
  265. package/.output/server/node_modules/devalue/src/stringify.js +108 -34
  266. package/.output/server/node_modules/devalue/src/uneval.js +207 -58
  267. package/.output/server/node_modules/devalue/src/utils.js +38 -8
  268. package/.output/server/node_modules/entities/{lib/decode_codepoint.js → dist/commonjs/decode-codepoint.js} +16 -15
  269. package/.output/server/node_modules/entities/{lib → dist/commonjs}/decode.js +200 -168
  270. package/.output/server/node_modules/entities/dist/commonjs/generated/decode-data-html.js +7 -0
  271. package/.output/server/node_modules/entities/dist/commonjs/generated/decode-data-xml.js +7 -0
  272. package/.output/server/node_modules/entities/dist/commonjs/internal/bin-trie-flags.js +21 -0
  273. package/.output/server/node_modules/entities/dist/commonjs/internal/decode-shared.js +31 -0
  274. package/.output/server/node_modules/entities/dist/commonjs/package.json +3 -0
  275. package/.output/server/node_modules/entities/package.json +99 -69
  276. package/.output/server/node_modules/hookable/dist/index.mjs +238 -271
  277. package/.output/server/node_modules/hookable/package.json +33 -29
  278. package/.output/server/node_modules/is-what/dist/getType.js +4 -0
  279. package/.output/server/node_modules/is-what/dist/index.js +43 -171
  280. package/.output/server/node_modules/is-what/dist/isAnyObject.js +8 -0
  281. package/.output/server/node_modules/is-what/dist/isArray.js +5 -0
  282. package/.output/server/node_modules/is-what/dist/isBigInt.js +5 -0
  283. package/.output/server/node_modules/is-what/dist/isBlob.js +5 -0
  284. package/.output/server/node_modules/is-what/dist/isBoolean.js +5 -0
  285. package/.output/server/node_modules/is-what/dist/isDate.js +5 -0
  286. package/.output/server/node_modules/is-what/dist/isEmptyArray.js +5 -0
  287. package/.output/server/node_modules/is-what/dist/isEmptyObject.js +8 -0
  288. package/.output/server/node_modules/is-what/dist/isEmptyString.js +4 -0
  289. package/.output/server/node_modules/is-what/dist/isError.js +5 -0
  290. package/.output/server/node_modules/is-what/dist/isFile.js +5 -0
  291. package/.output/server/node_modules/is-what/dist/isFullArray.js +5 -0
  292. package/.output/server/node_modules/is-what/dist/isFullObject.js +8 -0
  293. package/.output/server/node_modules/is-what/dist/isFullString.js +5 -0
  294. package/.output/server/node_modules/is-what/dist/isFunction.js +4 -0
  295. package/.output/server/node_modules/is-what/dist/isHexDecimal.js +12 -0
  296. package/.output/server/node_modules/is-what/dist/isInstanceOf.js +19 -0
  297. package/.output/server/node_modules/is-what/dist/isInteger.js +5 -0
  298. package/.output/server/node_modules/is-what/dist/isIterable.js +16 -0
  299. package/.output/server/node_modules/is-what/dist/isMap.js +5 -0
  300. package/.output/server/node_modules/is-what/dist/isNaNValue.js +5 -0
  301. package/.output/server/node_modules/is-what/dist/isNegativeInteger.js +5 -0
  302. package/.output/server/node_modules/is-what/dist/isNegativeNumber.js +5 -0
  303. package/.output/server/node_modules/is-what/dist/isNull.js +5 -0
  304. package/.output/server/node_modules/is-what/dist/isNullOrUndefined.js +5 -0
  305. package/.output/server/node_modules/is-what/dist/isNumber.js +9 -0
  306. package/.output/server/node_modules/is-what/dist/isObject.js +8 -0
  307. package/.output/server/node_modules/is-what/dist/isObjectLike.js +11 -0
  308. package/.output/server/node_modules/is-what/dist/isOneOf.js +15 -0
  309. package/.output/server/node_modules/is-what/dist/isPlainObject.js +11 -0
  310. package/.output/server/node_modules/is-what/dist/isPositiveInteger.js +5 -0
  311. package/.output/server/node_modules/is-what/dist/isPositiveNumber.js +5 -0
  312. package/.output/server/node_modules/is-what/dist/isPrimitive.js +21 -0
  313. package/.output/server/node_modules/is-what/dist/isPromise.js +5 -0
  314. package/.output/server/node_modules/is-what/dist/isRegExp.js +5 -0
  315. package/.output/server/node_modules/is-what/dist/isSet.js +5 -0
  316. package/.output/server/node_modules/is-what/dist/isString.js +5 -0
  317. package/.output/server/node_modules/is-what/dist/isSymbol.js +5 -0
  318. package/.output/server/node_modules/is-what/dist/isType.js +20 -0
  319. package/.output/server/node_modules/is-what/dist/isUndefined.js +5 -0
  320. package/.output/server/node_modules/is-what/dist/isWeakMap.js +5 -0
  321. package/.output/server/node_modules/is-what/dist/isWeakSet.js +5 -0
  322. package/.output/server/node_modules/is-what/package.json +23 -88
  323. package/.output/server/node_modules/superjson/dist/index.js +9 -6
  324. package/.output/server/node_modules/superjson/dist/pathstringifier.js +13 -2
  325. package/.output/server/node_modules/superjson/dist/plainer.js +23 -11
  326. package/.output/server/node_modules/superjson/dist/transformer.js +4 -1
  327. package/.output/server/node_modules/superjson/package.json +5 -21
  328. package/.output/server/node_modules/trpc-bun-adapter/dist/index.js +406 -0
  329. package/.output/server/node_modules/trpc-bun-adapter/package.json +44 -0
  330. package/.output/server/node_modules/ufo/dist/index.mjs +16 -9
  331. package/.output/server/node_modules/ufo/package.json +15 -14
  332. package/.output/server/node_modules/unhead/dist/plugins.mjs +4 -4
  333. package/.output/server/node_modules/unhead/dist/server.mjs +4 -6
  334. package/.output/server/node_modules/unhead/dist/shared/{unhead.BpRRHAhY.mjs → unhead.B5FWS6X0.mjs} +35 -22
  335. package/.output/server/node_modules/unhead/dist/shared/{unhead.DZbvapt-.mjs → unhead.CbpEuj3y.mjs} +3 -2
  336. package/.output/server/node_modules/unhead/dist/shared/{unhead.DH45uomy.mjs → unhead.Ct24BOby.mjs} +6 -4
  337. package/.output/server/node_modules/unhead/dist/shared/unhead.D4vSFytZ.mjs +236 -0
  338. package/.output/server/node_modules/unhead/dist/shared/{unhead.Djo8ep_Y.mjs → unhead.TxTMM7cM.mjs} +2 -2
  339. package/.output/server/node_modules/unhead/dist/utils.mjs +2 -2
  340. package/.output/server/node_modules/unhead/package.json +2 -2
  341. package/.output/server/node_modules/vue/dist/vue.cjs.js +1 -1
  342. package/.output/server/node_modules/vue/dist/vue.cjs.prod.js +1 -1
  343. package/.output/server/node_modules/vue/package.json +7 -7
  344. package/.output/server/node_modules/zod/package.json +1 -1
  345. package/.output/server/node_modules/zod/v4/classic/checks.js +1 -1
  346. package/.output/server/node_modules/zod/v4/classic/external.js +3 -1
  347. package/.output/server/node_modules/zod/v4/classic/from-json-schema.js +584 -0
  348. package/.output/server/node_modules/zod/v4/classic/schemas.js +121 -4
  349. package/.output/server/node_modules/zod/v4/core/api.js +157 -0
  350. package/.output/server/node_modules/zod/v4/core/checks.js +8 -2
  351. package/.output/server/node_modules/zod/v4/core/core.js +20 -11
  352. package/.output/server/node_modules/zod/v4/core/index.js +2 -0
  353. package/.output/server/node_modules/zod/v4/core/json-schema-generator.js +95 -0
  354. package/.output/server/node_modules/zod/v4/core/json-schema-processors.js +605 -0
  355. package/.output/server/node_modules/zod/v4/core/regexes.js +8 -2
  356. package/.output/server/node_modules/zod/v4/core/registries.js +3 -4
  357. package/.output/server/node_modules/zod/v4/core/schemas.js +204 -66
  358. package/.output/server/node_modules/zod/v4/core/to-json-schema.js +391 -869
  359. package/.output/server/node_modules/zod/v4/core/util.js +58 -8
  360. package/.output/server/node_modules/zod/v4/core/versions.js +2 -2
  361. package/.output/server/node_modules/zod/v4/locales/ar.js +14 -24
  362. package/.output/server/node_modules/zod/v4/locales/az.js +14 -24
  363. package/.output/server/node_modules/zod/v4/locales/be.js +16 -24
  364. package/.output/server/node_modules/zod/v4/locales/bg.js +16 -24
  365. package/.output/server/node_modules/zod/v4/locales/ca.js +14 -25
  366. package/.output/server/node_modules/zod/v4/locales/cs.js +18 -42
  367. package/.output/server/node_modules/zod/v4/locales/da.js +23 -39
  368. package/.output/server/node_modules/zod/v4/locales/de.js +16 -24
  369. package/.output/server/node_modules/zod/v4/locales/en.js +16 -24
  370. package/.output/server/node_modules/zod/v4/locales/eo.js +17 -24
  371. package/.output/server/node_modules/zod/v4/locales/es.js +42 -59
  372. package/.output/server/node_modules/zod/v4/locales/fa.js +16 -24
  373. package/.output/server/node_modules/zod/v4/locales/fi.js +14 -24
  374. package/.output/server/node_modules/zod/v4/locales/fr-CA.js +14 -24
  375. package/.output/server/node_modules/zod/v4/locales/fr.js +16 -24
  376. package/.output/server/node_modules/zod/v4/locales/he.js +175 -78
  377. package/.output/server/node_modules/zod/v4/locales/hu.js +16 -25
  378. package/.output/server/node_modules/zod/v4/locales/hy.js +147 -0
  379. package/.output/server/node_modules/zod/v4/locales/id.js +14 -24
  380. package/.output/server/node_modules/zod/v4/locales/index.js +2 -0
  381. package/.output/server/node_modules/zod/v4/locales/is.js +16 -24
  382. package/.output/server/node_modules/zod/v4/locales/it.js +16 -25
  383. package/.output/server/node_modules/zod/v4/locales/ja.js +16 -24
  384. package/.output/server/node_modules/zod/v4/locales/ka.js +19 -32
  385. package/.output/server/node_modules/zod/v4/locales/km.js +17 -24
  386. package/.output/server/node_modules/zod/v4/locales/ko.js +14 -24
  387. package/.output/server/node_modules/zod/v4/locales/lt.js +27 -54
  388. package/.output/server/node_modules/zod/v4/locales/mk.js +16 -25
  389. package/.output/server/node_modules/zod/v4/locales/ms.js +15 -24
  390. package/.output/server/node_modules/zod/v4/locales/nl.js +25 -32
  391. package/.output/server/node_modules/zod/v4/locales/no.js +16 -24
  392. package/.output/server/node_modules/zod/v4/locales/ota.js +17 -25
  393. package/.output/server/node_modules/zod/v4/locales/pl.js +16 -24
  394. package/.output/server/node_modules/zod/v4/locales/ps.js +16 -24
  395. package/.output/server/node_modules/zod/v4/locales/pt.js +16 -24
  396. package/.output/server/node_modules/zod/v4/locales/ru.js +16 -24
  397. package/.output/server/node_modules/zod/v4/locales/sl.js +16 -24
  398. package/.output/server/node_modules/zod/v4/locales/sv.js +16 -24
  399. package/.output/server/node_modules/zod/v4/locales/ta.js +17 -24
  400. package/.output/server/node_modules/zod/v4/locales/th.js +17 -24
  401. package/.output/server/node_modules/zod/v4/locales/tr.js +14 -24
  402. package/.output/server/node_modules/zod/v4/locales/uk.js +16 -25
  403. package/.output/server/node_modules/zod/v4/locales/ur.js +17 -24
  404. package/.output/server/node_modules/zod/v4/locales/uz.js +109 -0
  405. package/.output/server/node_modules/zod/v4/locales/vi.js +16 -24
  406. package/.output/server/node_modules/zod/v4/locales/yo.js +16 -24
  407. package/.output/server/node_modules/zod/v4/locales/zh-CN.js +17 -24
  408. package/.output/server/node_modules/zod/v4/locales/zh-TW.js +14 -24
  409. package/.output/server/package.json +22 -22
  410. package/package.json +20 -14
  411. package/.output/public/_nuxt/-oaD50UK.js +0 -1
  412. package/.output/public/_nuxt/0ekw3e2V.js +0 -1
  413. package/.output/public/_nuxt/1DNp92w6.js +0 -1
  414. package/.output/public/_nuxt/1f5tAgHw.js +0 -1
  415. package/.output/public/_nuxt/5ggY4uig.js +0 -1
  416. package/.output/public/_nuxt/6nHXG8SA.js +0 -1
  417. package/.output/public/_nuxt/9hmcqHPO.js +0 -1
  418. package/.output/public/_nuxt/BBxmzUt6.js +0 -1
  419. package/.output/public/_nuxt/BE2KfCdU.js +0 -1
  420. package/.output/public/_nuxt/BFNM2w_f.js +0 -1
  421. package/.output/public/_nuxt/BGLu70Yq.js +0 -1
  422. package/.output/public/_nuxt/BIuj43Wh.js +0 -1
  423. package/.output/public/_nuxt/BLsOQd1H.js +0 -280
  424. package/.output/public/_nuxt/BNGfscqk.js +0 -1
  425. package/.output/public/_nuxt/BQvybpQq.js +0 -1
  426. package/.output/public/_nuxt/BU7Cl-8B.js +0 -1
  427. package/.output/public/_nuxt/BUXOnL59.js +0 -1
  428. package/.output/public/_nuxt/Bbwybh3N.js +0 -2
  429. package/.output/public/_nuxt/BczD6j-v.js +0 -1
  430. package/.output/public/_nuxt/BepWV7mh.js +0 -1
  431. package/.output/public/_nuxt/Bh0qehhp.js +0 -1
  432. package/.output/public/_nuxt/Bl2oy6fF.js +0 -1
  433. package/.output/public/_nuxt/BmDdxTjo.js +0 -1
  434. package/.output/public/_nuxt/BqeRdtD4.js +0 -2
  435. package/.output/public/_nuxt/BvAqAH-y.js +0 -1
  436. package/.output/public/_nuxt/BxZD33h1.js +0 -1
  437. package/.output/public/_nuxt/C4zpeTvm.js +0 -1
  438. package/.output/public/_nuxt/C7Pw0Ztw.js +0 -1
  439. package/.output/public/_nuxt/C8-UwF3o.js +0 -1
  440. package/.output/public/_nuxt/CCd08HS_.js +0 -1
  441. package/.output/public/_nuxt/CEYFgC8B.js +0 -1
  442. package/.output/public/_nuxt/CHadp7IV.js +0 -1
  443. package/.output/public/_nuxt/CHh-QcGE.js +0 -1
  444. package/.output/public/_nuxt/CIUZ1G5V.js +0 -1
  445. package/.output/public/_nuxt/CJ6lOLXp.js +0 -1
  446. package/.output/public/_nuxt/CN9dMhDM.js +0 -1
  447. package/.output/public/_nuxt/CQ4fj8p0.js +0 -1
  448. package/.output/public/_nuxt/CTWiQX6C.js +0 -1
  449. package/.output/public/_nuxt/CUEJCptM.js +0 -1
  450. package/.output/public/_nuxt/CXxzV4dz.js +0 -1
  451. package/.output/public/_nuxt/CZlF05X6.js +0 -1
  452. package/.output/public/_nuxt/CatV_12G.js +0 -1
  453. package/.output/public/_nuxt/CeMkeBDb.js +0 -1
  454. package/.output/public/_nuxt/CelvVQyk.js +0 -1
  455. package/.output/public/_nuxt/CfV455SO.js +0 -1
  456. package/.output/public/_nuxt/CfeIJUat.js +0 -1
  457. package/.output/public/_nuxt/CfqrF6sE.js +0 -1
  458. package/.output/public/_nuxt/Cfs9EX91.js +0 -1
  459. package/.output/public/_nuxt/ChH_ziBE.js +0 -1
  460. package/.output/public/_nuxt/ChM1GEGa.js +0 -1
  461. package/.output/public/_nuxt/Cp2bjttb.js +0 -1
  462. package/.output/public/_nuxt/Cu8OsqJL.js +0 -1
  463. package/.output/public/_nuxt/CusJppg0.js +0 -1
  464. package/.output/public/_nuxt/Cv9koXgw.js +0 -1
  465. package/.output/public/_nuxt/CvELRi2k.js +0 -5
  466. package/.output/public/_nuxt/Cw6nGM9K.js +0 -1
  467. package/.output/public/_nuxt/CwUT5n6w.js +0 -1
  468. package/.output/public/_nuxt/D-AHKB2i.js +0 -6
  469. package/.output/public/_nuxt/D-kcn2fr.js +0 -1
  470. package/.output/public/_nuxt/D08WgyRC.js +0 -1
  471. package/.output/public/_nuxt/D1Jbgd7O.js +0 -13
  472. package/.output/public/_nuxt/D1ibY74j.js +0 -1
  473. package/.output/public/_nuxt/D22FLkUw.js +0 -1
  474. package/.output/public/_nuxt/D2CYqzqI.js +0 -1
  475. package/.output/public/_nuxt/D34EmFco.js +0 -1
  476. package/.output/public/_nuxt/D4OhWExI.js +0 -1
  477. package/.output/public/_nuxt/DDHikT5j.js +0 -1
  478. package/.output/public/_nuxt/DDTT3lYc.js +0 -1
  479. package/.output/public/_nuxt/DHLkt8Yr.js +0 -1
  480. package/.output/public/_nuxt/DHuTDtaT.js +0 -12
  481. package/.output/public/_nuxt/DKYwYmdq.js +0 -1
  482. package/.output/public/_nuxt/DMDPKkZ0.js +0 -1
  483. package/.output/public/_nuxt/DNEoBllO.js +0 -1
  484. package/.output/public/_nuxt/DRzH1pOL.js +0 -1
  485. package/.output/public/_nuxt/DSUF3NDE.js +0 -1
  486. package/.output/public/_nuxt/DTAwr92a.js +0 -1
  487. package/.output/public/_nuxt/DWmtspXK.js +0 -1
  488. package/.output/public/_nuxt/DXh9HyqW.js +0 -1
  489. package/.output/public/_nuxt/DXtl0MQI.js +0 -1
  490. package/.output/public/_nuxt/D_zCY0Xl.js +0 -1
  491. package/.output/public/_nuxt/DaZJpzOl.js +0 -1
  492. package/.output/public/_nuxt/Df68jz8_.js +0 -1
  493. package/.output/public/_nuxt/DhQfdAdO.js +0 -1
  494. package/.output/public/_nuxt/DiinP2Uv.js +0 -1
  495. package/.output/public/_nuxt/DljmTZ5-.js +0 -1
  496. package/.output/public/_nuxt/Dm4QKadl.js +0 -26
  497. package/.output/public/_nuxt/DmCK90gL.js +0 -1
  498. package/.output/public/_nuxt/Dn2_MT6a.js +0 -1
  499. package/.output/public/_nuxt/Don94nLk.js +0 -1
  500. package/.output/public/_nuxt/Dr8Zlu6v.js +0 -1
  501. package/.output/public/_nuxt/Drp5UXmf.js +0 -1
  502. package/.output/public/_nuxt/DtFoCuZo.js +0 -1
  503. package/.output/public/_nuxt/Dv7Oe6Be.js +0 -1
  504. package/.output/public/_nuxt/DxuitVdg.js +0 -2
  505. package/.output/public/_nuxt/DyJlTyXw.js +0 -1
  506. package/.output/public/_nuxt/Jep7L2Wt.js +0 -1
  507. package/.output/public/_nuxt/LUl67wzp.js +0 -1
  508. package/.output/public/_nuxt/M2rHlmBj.js +0 -1
  509. package/.output/public/_nuxt/N3RVRbLb.js +0 -1
  510. package/.output/public/_nuxt/NBseiqgx.js +0 -1
  511. package/.output/public/_nuxt/PoHY5YXO.js +0 -1
  512. package/.output/public/_nuxt/SdwduGaY.js +0 -1
  513. package/.output/public/_nuxt/SytC7lKg.js +0 -1
  514. package/.output/public/_nuxt/U3pqMjXV.js +0 -1
  515. package/.output/public/_nuxt/UInuXPgp.js +0 -1
  516. package/.output/public/_nuxt/YXI84j39.js +0 -2
  517. package/.output/public/_nuxt/ZZ6g6dXy.js +0 -2
  518. package/.output/public/_nuxt/builds/meta/033f259e-8ba9-4c82-8824-56febea80b7d.json +0 -1
  519. package/.output/public/_nuxt/dglhsJpM.js +0 -1
  520. package/.output/public/_nuxt/dwrHE3tM.js +0 -14
  521. package/.output/public/_nuxt/edge-router-yEORMNQw.js +0 -4
  522. package/.output/public/_nuxt/error-404.CttAF9VE.css +0 -1
  523. package/.output/public/_nuxt/error-500.DXXd6-x4.css +0 -1
  524. package/.output/public/_nuxt/ga9TZ2z5.js +0 -1
  525. package/.output/public/_nuxt/graph-layout-CFj469YF.js +0 -1
  526. package/.output/public/_nuxt/graph-resolver-eG1ZUsYn.js +0 -166
  527. package/.output/public/_nuxt/monaco-editor.D_J4ItrK.css +0 -1
  528. package/.output/public/_nuxt/ov4D99rA.js +0 -1
  529. package/.output/public/_nuxt/qYU5Tabh.js +0 -1
  530. package/.output/public/_nuxt/qliWkHmV.js +0 -1
  531. package/.output/public/_nuxt/uMbE6_td.js +0 -1
  532. package/.output/public/_nuxt/vuetify.BrkCt9t5.css +0 -5
  533. package/.output/public/_nuxt/yaml.worker-CQ6dFw39.js +0 -405
  534. package/.output/server/node_modules/@trpc/server/dist/adapters/ws.mjs +0 -15
  535. package/.output/server/node_modules/@trpc/server/dist/node-http-8dtdvMrE.mjs +0 -222
  536. package/.output/server/node_modules/@trpc/server/dist/unstable-core-do-not-import-D89CaGtL.mjs +0 -29
  537. package/.output/server/node_modules/@trpc/server/dist/ws-BR20IWki.mjs +0 -420
  538. package/.output/server/node_modules/entities/lib/generated/decode-data-html.js +0 -9
  539. package/.output/server/node_modules/entities/lib/generated/decode-data-xml.js +0 -9
  540. package/.output/server/node_modules/unhead/dist/shared/unhead.CApf5sj3.mjs +0 -148
  541. package/.output/server/node_modules/ws/lib/buffer-util.js +0 -131
  542. package/.output/server/node_modules/ws/lib/constants.js +0 -18
  543. package/.output/server/node_modules/ws/lib/event-target.js +0 -292
  544. package/.output/server/node_modules/ws/lib/extension.js +0 -203
  545. package/.output/server/node_modules/ws/lib/limiter.js +0 -55
  546. package/.output/server/node_modules/ws/lib/permessage-deflate.js +0 -528
  547. package/.output/server/node_modules/ws/lib/receiver.js +0 -706
  548. package/.output/server/node_modules/ws/lib/sender.js +0 -602
  549. package/.output/server/node_modules/ws/lib/stream.js +0 -161
  550. package/.output/server/node_modules/ws/lib/subprotocol.js +0 -62
  551. package/.output/server/node_modules/ws/lib/validation.js +0 -152
  552. package/.output/server/node_modules/ws/lib/websocket-server.js +0 -550
  553. package/.output/server/node_modules/ws/lib/websocket.js +0 -1388
  554. package/.output/server/node_modules/ws/package.json +0 -69
  555. package/.output/server/node_modules/ws/wrapper.mjs +0 -8
  556. package/LICENSE +0 -21
  557. /package/.output/server/node_modules/@trpc/server/dist/{http-CWyjOa1l.mjs → http-DXy3XyhL.cjs} +0 -0
@@ -0,0 +1,605 @@
1
+ import { extractDefs, finalize, initializeContext, process, } from "./to-json-schema.js";
2
+ import { getEnumValues } from "./util.js";
3
+ const formatMap = {
4
+ guid: "uuid",
5
+ url: "uri",
6
+ datetime: "date-time",
7
+ json_string: "json-string",
8
+ regex: "", // do not set
9
+ };
10
+ // ==================== SIMPLE TYPE PROCESSORS ====================
11
+ export const stringProcessor = (schema, ctx, _json, _params) => {
12
+ const json = _json;
13
+ json.type = "string";
14
+ const { minimum, maximum, format, patterns, contentEncoding } = schema._zod
15
+ .bag;
16
+ if (typeof minimum === "number")
17
+ json.minLength = minimum;
18
+ if (typeof maximum === "number")
19
+ json.maxLength = maximum;
20
+ // custom pattern overrides format
21
+ if (format) {
22
+ json.format = formatMap[format] ?? format;
23
+ if (json.format === "")
24
+ delete json.format; // empty format is not valid
25
+ // JSON Schema format: "time" requires a full time with offset or Z
26
+ // z.iso.time() does not include timezone information, so format: "time" should never be used
27
+ if (format === "time") {
28
+ delete json.format;
29
+ }
30
+ }
31
+ if (contentEncoding)
32
+ json.contentEncoding = contentEncoding;
33
+ if (patterns && patterns.size > 0) {
34
+ const regexes = [...patterns];
35
+ if (regexes.length === 1)
36
+ json.pattern = regexes[0].source;
37
+ else if (regexes.length > 1) {
38
+ json.allOf = [
39
+ ...regexes.map((regex) => ({
40
+ ...(ctx.target === "draft-07" || ctx.target === "draft-04" || ctx.target === "openapi-3.0"
41
+ ? { type: "string" }
42
+ : {}),
43
+ pattern: regex.source,
44
+ })),
45
+ ];
46
+ }
47
+ }
48
+ };
49
+ export const numberProcessor = (schema, ctx, _json, _params) => {
50
+ const json = _json;
51
+ const { minimum, maximum, format, multipleOf, exclusiveMaximum, exclusiveMinimum } = schema._zod.bag;
52
+ if (typeof format === "string" && format.includes("int"))
53
+ json.type = "integer";
54
+ else
55
+ json.type = "number";
56
+ if (typeof exclusiveMinimum === "number") {
57
+ if (ctx.target === "draft-04" || ctx.target === "openapi-3.0") {
58
+ json.minimum = exclusiveMinimum;
59
+ json.exclusiveMinimum = true;
60
+ }
61
+ else {
62
+ json.exclusiveMinimum = exclusiveMinimum;
63
+ }
64
+ }
65
+ if (typeof minimum === "number") {
66
+ json.minimum = minimum;
67
+ if (typeof exclusiveMinimum === "number" && ctx.target !== "draft-04") {
68
+ if (exclusiveMinimum >= minimum)
69
+ delete json.minimum;
70
+ else
71
+ delete json.exclusiveMinimum;
72
+ }
73
+ }
74
+ if (typeof exclusiveMaximum === "number") {
75
+ if (ctx.target === "draft-04" || ctx.target === "openapi-3.0") {
76
+ json.maximum = exclusiveMaximum;
77
+ json.exclusiveMaximum = true;
78
+ }
79
+ else {
80
+ json.exclusiveMaximum = exclusiveMaximum;
81
+ }
82
+ }
83
+ if (typeof maximum === "number") {
84
+ json.maximum = maximum;
85
+ if (typeof exclusiveMaximum === "number" && ctx.target !== "draft-04") {
86
+ if (exclusiveMaximum <= maximum)
87
+ delete json.maximum;
88
+ else
89
+ delete json.exclusiveMaximum;
90
+ }
91
+ }
92
+ if (typeof multipleOf === "number")
93
+ json.multipleOf = multipleOf;
94
+ };
95
+ export const booleanProcessor = (_schema, _ctx, json, _params) => {
96
+ json.type = "boolean";
97
+ };
98
+ export const bigintProcessor = (_schema, ctx, _json, _params) => {
99
+ if (ctx.unrepresentable === "throw") {
100
+ throw new Error("BigInt cannot be represented in JSON Schema");
101
+ }
102
+ };
103
+ export const symbolProcessor = (_schema, ctx, _json, _params) => {
104
+ if (ctx.unrepresentable === "throw") {
105
+ throw new Error("Symbols cannot be represented in JSON Schema");
106
+ }
107
+ };
108
+ export const nullProcessor = (_schema, ctx, json, _params) => {
109
+ if (ctx.target === "openapi-3.0") {
110
+ json.type = "string";
111
+ json.nullable = true;
112
+ json.enum = [null];
113
+ }
114
+ else {
115
+ json.type = "null";
116
+ }
117
+ };
118
+ export const undefinedProcessor = (_schema, ctx, _json, _params) => {
119
+ if (ctx.unrepresentable === "throw") {
120
+ throw new Error("Undefined cannot be represented in JSON Schema");
121
+ }
122
+ };
123
+ export const voidProcessor = (_schema, ctx, _json, _params) => {
124
+ if (ctx.unrepresentable === "throw") {
125
+ throw new Error("Void cannot be represented in JSON Schema");
126
+ }
127
+ };
128
+ export const neverProcessor = (_schema, _ctx, json, _params) => {
129
+ json.not = {};
130
+ };
131
+ export const anyProcessor = (_schema, _ctx, _json, _params) => {
132
+ // empty schema accepts anything
133
+ };
134
+ export const unknownProcessor = (_schema, _ctx, _json, _params) => {
135
+ // empty schema accepts anything
136
+ };
137
+ export const dateProcessor = (_schema, ctx, _json, _params) => {
138
+ if (ctx.unrepresentable === "throw") {
139
+ throw new Error("Date cannot be represented in JSON Schema");
140
+ }
141
+ };
142
+ export const enumProcessor = (schema, _ctx, json, _params) => {
143
+ const def = schema._zod.def;
144
+ const values = getEnumValues(def.entries);
145
+ // Number enums can have both string and number values
146
+ if (values.every((v) => typeof v === "number"))
147
+ json.type = "number";
148
+ if (values.every((v) => typeof v === "string"))
149
+ json.type = "string";
150
+ json.enum = values;
151
+ };
152
+ export const literalProcessor = (schema, ctx, json, _params) => {
153
+ const def = schema._zod.def;
154
+ const vals = [];
155
+ for (const val of def.values) {
156
+ if (val === undefined) {
157
+ if (ctx.unrepresentable === "throw") {
158
+ throw new Error("Literal `undefined` cannot be represented in JSON Schema");
159
+ }
160
+ else {
161
+ // do not add to vals
162
+ }
163
+ }
164
+ else if (typeof val === "bigint") {
165
+ if (ctx.unrepresentable === "throw") {
166
+ throw new Error("BigInt literals cannot be represented in JSON Schema");
167
+ }
168
+ else {
169
+ vals.push(Number(val));
170
+ }
171
+ }
172
+ else {
173
+ vals.push(val);
174
+ }
175
+ }
176
+ if (vals.length === 0) {
177
+ // do nothing (an undefined literal was stripped)
178
+ }
179
+ else if (vals.length === 1) {
180
+ const val = vals[0];
181
+ json.type = val === null ? "null" : typeof val;
182
+ if (ctx.target === "draft-04" || ctx.target === "openapi-3.0") {
183
+ json.enum = [val];
184
+ }
185
+ else {
186
+ json.const = val;
187
+ }
188
+ }
189
+ else {
190
+ if (vals.every((v) => typeof v === "number"))
191
+ json.type = "number";
192
+ if (vals.every((v) => typeof v === "string"))
193
+ json.type = "string";
194
+ if (vals.every((v) => typeof v === "boolean"))
195
+ json.type = "boolean";
196
+ if (vals.every((v) => v === null))
197
+ json.type = "null";
198
+ json.enum = vals;
199
+ }
200
+ };
201
+ export const nanProcessor = (_schema, ctx, _json, _params) => {
202
+ if (ctx.unrepresentable === "throw") {
203
+ throw new Error("NaN cannot be represented in JSON Schema");
204
+ }
205
+ };
206
+ export const templateLiteralProcessor = (schema, _ctx, json, _params) => {
207
+ const _json = json;
208
+ const pattern = schema._zod.pattern;
209
+ if (!pattern)
210
+ throw new Error("Pattern not found in template literal");
211
+ _json.type = "string";
212
+ _json.pattern = pattern.source;
213
+ };
214
+ export const fileProcessor = (schema, _ctx, json, _params) => {
215
+ const _json = json;
216
+ const file = {
217
+ type: "string",
218
+ format: "binary",
219
+ contentEncoding: "binary",
220
+ };
221
+ const { minimum, maximum, mime } = schema._zod.bag;
222
+ if (minimum !== undefined)
223
+ file.minLength = minimum;
224
+ if (maximum !== undefined)
225
+ file.maxLength = maximum;
226
+ if (mime) {
227
+ if (mime.length === 1) {
228
+ file.contentMediaType = mime[0];
229
+ Object.assign(_json, file);
230
+ }
231
+ else {
232
+ Object.assign(_json, file); // shared props at root
233
+ _json.anyOf = mime.map((m) => ({ contentMediaType: m })); // only contentMediaType differs
234
+ }
235
+ }
236
+ else {
237
+ Object.assign(_json, file);
238
+ }
239
+ };
240
+ export const successProcessor = (_schema, _ctx, json, _params) => {
241
+ json.type = "boolean";
242
+ };
243
+ export const customProcessor = (_schema, ctx, _json, _params) => {
244
+ if (ctx.unrepresentable === "throw") {
245
+ throw new Error("Custom types cannot be represented in JSON Schema");
246
+ }
247
+ };
248
+ export const functionProcessor = (_schema, ctx, _json, _params) => {
249
+ if (ctx.unrepresentable === "throw") {
250
+ throw new Error("Function types cannot be represented in JSON Schema");
251
+ }
252
+ };
253
+ export const transformProcessor = (_schema, ctx, _json, _params) => {
254
+ if (ctx.unrepresentable === "throw") {
255
+ throw new Error("Transforms cannot be represented in JSON Schema");
256
+ }
257
+ };
258
+ export const mapProcessor = (_schema, ctx, _json, _params) => {
259
+ if (ctx.unrepresentable === "throw") {
260
+ throw new Error("Map cannot be represented in JSON Schema");
261
+ }
262
+ };
263
+ export const setProcessor = (_schema, ctx, _json, _params) => {
264
+ if (ctx.unrepresentable === "throw") {
265
+ throw new Error("Set cannot be represented in JSON Schema");
266
+ }
267
+ };
268
+ // ==================== COMPOSITE TYPE PROCESSORS ====================
269
+ export const arrayProcessor = (schema, ctx, _json, params) => {
270
+ const json = _json;
271
+ const def = schema._zod.def;
272
+ const { minimum, maximum } = schema._zod.bag;
273
+ if (typeof minimum === "number")
274
+ json.minItems = minimum;
275
+ if (typeof maximum === "number")
276
+ json.maxItems = maximum;
277
+ json.type = "array";
278
+ json.items = process(def.element, ctx, { ...params, path: [...params.path, "items"] });
279
+ };
280
+ export const objectProcessor = (schema, ctx, _json, params) => {
281
+ const json = _json;
282
+ const def = schema._zod.def;
283
+ json.type = "object";
284
+ json.properties = {};
285
+ const shape = def.shape;
286
+ for (const key in shape) {
287
+ json.properties[key] = process(shape[key], ctx, {
288
+ ...params,
289
+ path: [...params.path, "properties", key],
290
+ });
291
+ }
292
+ // required keys
293
+ const allKeys = new Set(Object.keys(shape));
294
+ const requiredKeys = new Set([...allKeys].filter((key) => {
295
+ const v = def.shape[key]._zod;
296
+ if (ctx.io === "input") {
297
+ return v.optin === undefined;
298
+ }
299
+ else {
300
+ return v.optout === undefined;
301
+ }
302
+ }));
303
+ if (requiredKeys.size > 0) {
304
+ json.required = Array.from(requiredKeys);
305
+ }
306
+ // catchall
307
+ if (def.catchall?._zod.def.type === "never") {
308
+ // strict
309
+ json.additionalProperties = false;
310
+ }
311
+ else if (!def.catchall) {
312
+ // regular
313
+ if (ctx.io === "output")
314
+ json.additionalProperties = false;
315
+ }
316
+ else if (def.catchall) {
317
+ json.additionalProperties = process(def.catchall, ctx, {
318
+ ...params,
319
+ path: [...params.path, "additionalProperties"],
320
+ });
321
+ }
322
+ };
323
+ export const unionProcessor = (schema, ctx, json, params) => {
324
+ const def = schema._zod.def;
325
+ // Exclusive unions (inclusive === false) use oneOf (exactly one match) instead of anyOf (one or more matches)
326
+ // This includes both z.xor() and discriminated unions
327
+ const isExclusive = def.inclusive === false;
328
+ const options = def.options.map((x, i) => process(x, ctx, {
329
+ ...params,
330
+ path: [...params.path, isExclusive ? "oneOf" : "anyOf", i],
331
+ }));
332
+ if (isExclusive) {
333
+ json.oneOf = options;
334
+ }
335
+ else {
336
+ json.anyOf = options;
337
+ }
338
+ };
339
+ export const intersectionProcessor = (schema, ctx, json, params) => {
340
+ const def = schema._zod.def;
341
+ const a = process(def.left, ctx, {
342
+ ...params,
343
+ path: [...params.path, "allOf", 0],
344
+ });
345
+ const b = process(def.right, ctx, {
346
+ ...params,
347
+ path: [...params.path, "allOf", 1],
348
+ });
349
+ const isSimpleIntersection = (val) => "allOf" in val && Object.keys(val).length === 1;
350
+ const allOf = [
351
+ ...(isSimpleIntersection(a) ? a.allOf : [a]),
352
+ ...(isSimpleIntersection(b) ? b.allOf : [b]),
353
+ ];
354
+ json.allOf = allOf;
355
+ };
356
+ export const tupleProcessor = (schema, ctx, _json, params) => {
357
+ const json = _json;
358
+ const def = schema._zod.def;
359
+ json.type = "array";
360
+ const prefixPath = ctx.target === "draft-2020-12" ? "prefixItems" : "items";
361
+ const restPath = ctx.target === "draft-2020-12" ? "items" : ctx.target === "openapi-3.0" ? "items" : "additionalItems";
362
+ const prefixItems = def.items.map((x, i) => process(x, ctx, {
363
+ ...params,
364
+ path: [...params.path, prefixPath, i],
365
+ }));
366
+ const rest = def.rest
367
+ ? process(def.rest, ctx, {
368
+ ...params,
369
+ path: [...params.path, restPath, ...(ctx.target === "openapi-3.0" ? [def.items.length] : [])],
370
+ })
371
+ : null;
372
+ if (ctx.target === "draft-2020-12") {
373
+ json.prefixItems = prefixItems;
374
+ if (rest) {
375
+ json.items = rest;
376
+ }
377
+ }
378
+ else if (ctx.target === "openapi-3.0") {
379
+ json.items = {
380
+ anyOf: prefixItems,
381
+ };
382
+ if (rest) {
383
+ json.items.anyOf.push(rest);
384
+ }
385
+ json.minItems = prefixItems.length;
386
+ if (!rest) {
387
+ json.maxItems = prefixItems.length;
388
+ }
389
+ }
390
+ else {
391
+ json.items = prefixItems;
392
+ if (rest) {
393
+ json.additionalItems = rest;
394
+ }
395
+ }
396
+ // length
397
+ const { minimum, maximum } = schema._zod.bag;
398
+ if (typeof minimum === "number")
399
+ json.minItems = minimum;
400
+ if (typeof maximum === "number")
401
+ json.maxItems = maximum;
402
+ };
403
+ export const recordProcessor = (schema, ctx, _json, params) => {
404
+ const json = _json;
405
+ const def = schema._zod.def;
406
+ json.type = "object";
407
+ // For looseRecord with regex patterns, use patternProperties
408
+ // This correctly represents "only validate keys matching the pattern" semantics
409
+ // and composes well with allOf (intersections)
410
+ const keyType = def.keyType;
411
+ const keyBag = keyType._zod.bag;
412
+ const patterns = keyBag?.patterns;
413
+ if (def.mode === "loose" && patterns && patterns.size > 0) {
414
+ // Use patternProperties for looseRecord with regex patterns
415
+ const valueSchema = process(def.valueType, ctx, {
416
+ ...params,
417
+ path: [...params.path, "patternProperties", "*"],
418
+ });
419
+ json.patternProperties = {};
420
+ for (const pattern of patterns) {
421
+ json.patternProperties[pattern.source] = valueSchema;
422
+ }
423
+ }
424
+ else {
425
+ // Default behavior: use propertyNames + additionalProperties
426
+ if (ctx.target === "draft-07" || ctx.target === "draft-2020-12") {
427
+ json.propertyNames = process(def.keyType, ctx, {
428
+ ...params,
429
+ path: [...params.path, "propertyNames"],
430
+ });
431
+ }
432
+ json.additionalProperties = process(def.valueType, ctx, {
433
+ ...params,
434
+ path: [...params.path, "additionalProperties"],
435
+ });
436
+ }
437
+ // Add required for keys with discrete values (enum, literal, etc.)
438
+ const keyValues = keyType._zod.values;
439
+ if (keyValues) {
440
+ const validKeyValues = [...keyValues].filter((v) => typeof v === "string" || typeof v === "number");
441
+ if (validKeyValues.length > 0) {
442
+ json.required = validKeyValues;
443
+ }
444
+ }
445
+ };
446
+ export const nullableProcessor = (schema, ctx, json, params) => {
447
+ const def = schema._zod.def;
448
+ const inner = process(def.innerType, ctx, params);
449
+ const seen = ctx.seen.get(schema);
450
+ if (ctx.target === "openapi-3.0") {
451
+ seen.ref = def.innerType;
452
+ json.nullable = true;
453
+ }
454
+ else {
455
+ json.anyOf = [inner, { type: "null" }];
456
+ }
457
+ };
458
+ export const nonoptionalProcessor = (schema, ctx, _json, params) => {
459
+ const def = schema._zod.def;
460
+ process(def.innerType, ctx, params);
461
+ const seen = ctx.seen.get(schema);
462
+ seen.ref = def.innerType;
463
+ };
464
+ export const defaultProcessor = (schema, ctx, json, params) => {
465
+ const def = schema._zod.def;
466
+ process(def.innerType, ctx, params);
467
+ const seen = ctx.seen.get(schema);
468
+ seen.ref = def.innerType;
469
+ json.default = JSON.parse(JSON.stringify(def.defaultValue));
470
+ };
471
+ export const prefaultProcessor = (schema, ctx, json, params) => {
472
+ const def = schema._zod.def;
473
+ process(def.innerType, ctx, params);
474
+ const seen = ctx.seen.get(schema);
475
+ seen.ref = def.innerType;
476
+ if (ctx.io === "input")
477
+ json._prefault = JSON.parse(JSON.stringify(def.defaultValue));
478
+ };
479
+ export const catchProcessor = (schema, ctx, json, params) => {
480
+ const def = schema._zod.def;
481
+ process(def.innerType, ctx, params);
482
+ const seen = ctx.seen.get(schema);
483
+ seen.ref = def.innerType;
484
+ let catchValue;
485
+ try {
486
+ catchValue = def.catchValue(undefined);
487
+ }
488
+ catch {
489
+ throw new Error("Dynamic catch values are not supported in JSON Schema");
490
+ }
491
+ json.default = catchValue;
492
+ };
493
+ export const pipeProcessor = (schema, ctx, _json, params) => {
494
+ const def = schema._zod.def;
495
+ const innerType = ctx.io === "input" ? (def.in._zod.def.type === "transform" ? def.out : def.in) : def.out;
496
+ process(innerType, ctx, params);
497
+ const seen = ctx.seen.get(schema);
498
+ seen.ref = innerType;
499
+ };
500
+ export const readonlyProcessor = (schema, ctx, json, params) => {
501
+ const def = schema._zod.def;
502
+ process(def.innerType, ctx, params);
503
+ const seen = ctx.seen.get(schema);
504
+ seen.ref = def.innerType;
505
+ json.readOnly = true;
506
+ };
507
+ export const promiseProcessor = (schema, ctx, _json, params) => {
508
+ const def = schema._zod.def;
509
+ process(def.innerType, ctx, params);
510
+ const seen = ctx.seen.get(schema);
511
+ seen.ref = def.innerType;
512
+ };
513
+ export const optionalProcessor = (schema, ctx, _json, params) => {
514
+ const def = schema._zod.def;
515
+ process(def.innerType, ctx, params);
516
+ const seen = ctx.seen.get(schema);
517
+ seen.ref = def.innerType;
518
+ };
519
+ export const lazyProcessor = (schema, ctx, _json, params) => {
520
+ const innerType = schema._zod.innerType;
521
+ process(innerType, ctx, params);
522
+ const seen = ctx.seen.get(schema);
523
+ seen.ref = innerType;
524
+ };
525
+ // ==================== ALL PROCESSORS ====================
526
+ export const allProcessors = {
527
+ string: stringProcessor,
528
+ number: numberProcessor,
529
+ boolean: booleanProcessor,
530
+ bigint: bigintProcessor,
531
+ symbol: symbolProcessor,
532
+ null: nullProcessor,
533
+ undefined: undefinedProcessor,
534
+ void: voidProcessor,
535
+ never: neverProcessor,
536
+ any: anyProcessor,
537
+ unknown: unknownProcessor,
538
+ date: dateProcessor,
539
+ enum: enumProcessor,
540
+ literal: literalProcessor,
541
+ nan: nanProcessor,
542
+ template_literal: templateLiteralProcessor,
543
+ file: fileProcessor,
544
+ success: successProcessor,
545
+ custom: customProcessor,
546
+ function: functionProcessor,
547
+ transform: transformProcessor,
548
+ map: mapProcessor,
549
+ set: setProcessor,
550
+ array: arrayProcessor,
551
+ object: objectProcessor,
552
+ union: unionProcessor,
553
+ intersection: intersectionProcessor,
554
+ tuple: tupleProcessor,
555
+ record: recordProcessor,
556
+ nullable: nullableProcessor,
557
+ nonoptional: nonoptionalProcessor,
558
+ default: defaultProcessor,
559
+ prefault: prefaultProcessor,
560
+ catch: catchProcessor,
561
+ pipe: pipeProcessor,
562
+ readonly: readonlyProcessor,
563
+ promise: promiseProcessor,
564
+ optional: optionalProcessor,
565
+ lazy: lazyProcessor,
566
+ };
567
+ export function toJSONSchema(input, params) {
568
+ if ("_idmap" in input) {
569
+ // Registry case
570
+ const registry = input;
571
+ const ctx = initializeContext({ ...params, processors: allProcessors });
572
+ const defs = {};
573
+ // First pass: process all schemas to build the seen map
574
+ for (const entry of registry._idmap.entries()) {
575
+ const [_, schema] = entry;
576
+ process(schema, ctx);
577
+ }
578
+ const schemas = {};
579
+ const external = {
580
+ registry,
581
+ uri: params?.uri,
582
+ defs,
583
+ };
584
+ // Update the context with external configuration
585
+ ctx.external = external;
586
+ // Second pass: emit each schema
587
+ for (const entry of registry._idmap.entries()) {
588
+ const [key, schema] = entry;
589
+ extractDefs(ctx, schema);
590
+ schemas[key] = finalize(ctx, schema);
591
+ }
592
+ if (Object.keys(defs).length > 0) {
593
+ const defsSegment = ctx.target === "draft-2020-12" ? "$defs" : "definitions";
594
+ schemas.__shared = {
595
+ [defsSegment]: defs,
596
+ };
597
+ }
598
+ return { schemas };
599
+ }
600
+ // Single schema case
601
+ const ctx = initializeContext({ ...params, processors: allProcessors });
602
+ process(input, ctx);
603
+ extractDefs(ctx, input);
604
+ return finalize(ctx, input);
605
+ }
@@ -1,3 +1,4 @@
1
+ import * as util from "./util.js";
1
2
  export const cuid = /^[cC][^\s-]{8,}$/;
2
3
  export const cuid2 = /^[0-9a-z]+$/;
3
4
  export const ulid = /^[0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{26}$/;
@@ -38,6 +39,10 @@ export function emoji() {
38
39
  }
39
40
  export const ipv4 = /^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/;
40
41
  export const ipv6 = /^(([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}|:))$/;
42
+ export const mac = (delimiter) => {
43
+ const escapedDelim = util.escapeRegex(delimiter ?? ":");
44
+ return new RegExp(`^(?:[0-9A-F]{2}${escapedDelim}){5}[0-9A-F]{2}$|^(?:[0-9a-f]{2}${escapedDelim}){5}[0-9a-f]{2}$`);
45
+ };
41
46
  export const cidrv4 = /^((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])\/([0-9]|[1-2][0-9]|3[0-2])$/;
42
47
  export const cidrv6 = /^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|::|([0-9a-fA-F]{1,4})?::([0-9a-fA-F]{1,4}:?){0,6})\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/;
43
48
  // https://stackoverflow.com/questions/7860392/determine-if-string-is-in-base64-using-javascript
@@ -48,7 +53,8 @@ export const base64url = /^[A-Za-z0-9_-]*$/;
48
53
  export const hostname = /^(?=.{1,253}\.?$)[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[-0-9a-zA-Z]{0,61}[0-9a-zA-Z])?)*\.?$/;
49
54
  export const domain = /^([a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?\.)+[a-zA-Z]{2,}$/;
50
55
  // https://blog.stevenlevithan.com/archives/validate-phone-number#r4-3 (regex sans spaces)
51
- export const e164 = /^\+(?:[0-9]){6,14}[0-9]$/;
56
+ // E.164: leading digit must be 1-9; total digits (excluding '+') between 7-15
57
+ export const e164 = /^\+[1-9]\d{6,14}$/;
52
58
  // const dateSource = `((\\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])))`;
53
59
  const dateSource = `(?:(?:\\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])))`;
54
60
  export const date = /*@__PURE__*/ new RegExp(`^${dateSource}$`);
@@ -84,7 +90,7 @@ export const string = (params) => {
84
90
  };
85
91
  export const bigint = /^-?\d+n?$/;
86
92
  export const integer = /^-?\d+$/;
87
- export const number = /^-?\d+(?:\.\d+)?/;
93
+ export const number = /^-?\d+(?:\.\d+)?$/;
88
94
  export const boolean = /^(?:true|false)$/i;
89
95
  const _null = /^null$/i;
90
96
  export { _null as null };
@@ -1,3 +1,4 @@
1
+ var _a;
1
2
  export const $output = Symbol("ZodOutput");
2
3
  export const $input = Symbol("ZodInput");
3
4
  export class $ZodRegistry {
@@ -9,9 +10,6 @@ export class $ZodRegistry {
9
10
  const meta = _meta[0];
10
11
  this._map.set(schema, meta);
11
12
  if (meta && typeof meta === "object" && "id" in meta) {
12
- if (this._idmap.has(meta.id)) {
13
- throw new Error(`ID ${meta.id} already exists in the registry`);
14
- }
15
13
  this._idmap.set(meta.id, schema);
16
14
  }
17
15
  return this;
@@ -49,4 +47,5 @@ export class $ZodRegistry {
49
47
  export function registry() {
50
48
  return new $ZodRegistry();
51
49
  }
52
- export const globalRegistry = /*@__PURE__*/ registry();
50
+ (_a = globalThis).__zod_globalRegistry ?? (_a.__zod_globalRegistry = registry());
51
+ export const globalRegistry = globalThis.__zod_globalRegistry;