@btc-embedded/cdk-extensions 0.10.0 → 0.10.3

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 (388) hide show
  1. package/.jsii +27 -25
  2. package/API.md +5 -0
  3. package/CHANGELOG.md +20 -0
  4. package/lib/constructs/EventPipe.d.ts +5 -0
  5. package/lib/constructs/EventPipe.js +3 -3
  6. package/lib/constructs/S3Bucket.js +1 -1
  7. package/lib/constructs/SecureRestApi.js +1 -1
  8. package/lib/constructs/SecureRestApiV2.js +1 -1
  9. package/lib/extensions/ApiGatewayExtension.js +1 -1
  10. package/lib/extensions/ApplicationLoadBalancerExtension.js +1 -1
  11. package/lib/extensions/ApplicationLoadBalancerExtensionV2.js +1 -1
  12. package/lib/extensions/CloudMapExtension.js +1 -1
  13. package/lib/extensions/DeactivatableServiceExtension.js +1 -1
  14. package/lib/extensions/DocumentDbAccessExtension.js +1 -1
  15. package/lib/extensions/DomainEventMessagingExtension.js +1 -1
  16. package/lib/extensions/ExtraContainerExtension.js +1 -1
  17. package/lib/extensions/HTTPApiExtension.js +1 -1
  18. package/lib/extensions/LogExtension.js +1 -1
  19. package/lib/extensions/ModifyContainerDefinitionExtension.js +1 -1
  20. package/lib/extensions/ModifyTaskDefinitionExtension.js +1 -1
  21. package/lib/extensions/OpenTelemetryExtension.js +1 -1
  22. package/lib/extensions/PostgresDbAccessExtension.js +1 -1
  23. package/lib/extensions/SharedVolumeExtension.js +1 -1
  24. package/lib/extensions/TcpKeepAliveExtension.js +1 -1
  25. package/lib/platform/ApiGateway.js +1 -1
  26. package/lib/platform/ApiGatewayV2.js +2 -2
  27. package/lib/platform/ApplicationLoadBalancer.js +1 -1
  28. package/lib/platform/ApplicationLoadBalancerV2.js +2 -2
  29. package/lib/platform/CognitoUserPool.js +2 -2
  30. package/lib/platform/DefaultUserPoolClients.js +1 -1
  31. package/lib/platform/DocumentDB.js +2 -2
  32. package/lib/platform/PrivateDnsNamespace.js +1 -1
  33. package/lib/platform/ResourceServer.js +1 -1
  34. package/lib/platform/Vpc.js +1 -1
  35. package/lib/utils/StackParameter.js +1 -1
  36. package/node_modules/yaml/README.md +2 -0
  37. package/node_modules/yaml/browser/dist/compose/compose-collection.js +2 -2
  38. package/node_modules/yaml/browser/dist/compose/resolve-props.js +2 -4
  39. package/node_modules/yaml/browser/dist/compose/util-empty-scalar-position.js +1 -2
  40. package/node_modules/yaml/browser/dist/doc/anchors.js +1 -2
  41. package/node_modules/yaml/browser/dist/doc/createNode.js +1 -2
  42. package/node_modules/yaml/browser/dist/nodes/Alias.js +24 -11
  43. package/node_modules/yaml/browser/dist/nodes/YAMLMap.js +1 -1
  44. package/node_modules/yaml/browser/dist/nodes/addPairToJSMap.js +1 -0
  45. package/node_modules/yaml/browser/dist/parse/parser.js +14 -1
  46. package/node_modules/yaml/browser/dist/schema/tags.js +3 -3
  47. package/node_modules/yaml/browser/dist/schema/yaml-1.1/binary.js +3 -2
  48. package/node_modules/yaml/browser/dist/schema/yaml-1.1/pairs.js +1 -1
  49. package/node_modules/yaml/browser/dist/schema/yaml-1.1/timestamp.js +1 -1
  50. package/node_modules/yaml/browser/dist/stringify/stringify.js +3 -4
  51. package/node_modules/yaml/browser/dist/stringify/stringifyString.js +3 -4
  52. package/node_modules/yaml/dist/cli.d.ts +1 -1
  53. package/node_modules/yaml/dist/cli.mjs +5 -3
  54. package/node_modules/yaml/dist/compose/compose-collection.js +2 -2
  55. package/node_modules/yaml/dist/compose/composer.js +1 -1
  56. package/node_modules/yaml/dist/compose/resolve-props.js +2 -4
  57. package/node_modules/yaml/dist/compose/util-empty-scalar-position.js +1 -2
  58. package/node_modules/yaml/dist/doc/anchors.js +1 -2
  59. package/node_modules/yaml/dist/doc/createNode.js +1 -2
  60. package/node_modules/yaml/dist/log.js +1 -1
  61. package/node_modules/yaml/dist/nodes/Alias.d.ts +1 -1
  62. package/node_modules/yaml/dist/nodes/Alias.js +23 -10
  63. package/node_modules/yaml/dist/nodes/addPairToJSMap.js +1 -0
  64. package/node_modules/yaml/dist/nodes/toJS.d.ts +2 -0
  65. package/node_modules/yaml/dist/parse/parser.js +15 -2
  66. package/node_modules/yaml/dist/schema/yaml-1.1/binary.js +4 -3
  67. package/node_modules/yaml/dist/schema/yaml-1.1/timestamp.js +1 -1
  68. package/node_modules/yaml/dist/stringify/stringify.js +3 -4
  69. package/node_modules/yaml/dist/stringify/stringifyString.js +2 -3
  70. package/node_modules/yaml/package.json +2 -2
  71. package/node_modules/zod/LICENSE +1 -1
  72. package/node_modules/zod/README.md +105 -2971
  73. package/node_modules/zod/{lib/external.js → dist/cjs/index.js} +6 -6
  74. package/node_modules/zod/dist/cjs/package.json +3 -0
  75. package/node_modules/zod/{lib → dist/cjs/v3}/ZodError.js +3 -3
  76. package/node_modules/zod/{lib → dist/cjs/v3}/benchmarks/datetime.js +1 -1
  77. package/node_modules/zod/{lib → dist/cjs/v3}/benchmarks/discriminatedUnion.js +15 -15
  78. package/node_modules/zod/dist/cjs/v3/benchmarks/index.js +59 -0
  79. package/node_modules/zod/{lib → dist/cjs/v3}/benchmarks/object.js +11 -11
  80. package/node_modules/zod/{lib → dist/cjs/v3}/benchmarks/primitives.js +22 -33
  81. package/node_modules/zod/{lib → dist/cjs/v3}/benchmarks/realworld.js +12 -12
  82. package/node_modules/zod/{lib → dist/cjs/v3}/benchmarks/string.js +5 -5
  83. package/node_modules/zod/{lib → dist/cjs/v3}/benchmarks/union.js +15 -15
  84. package/node_modules/zod/{lib → dist/cjs/v3}/errors.js +6 -6
  85. package/node_modules/zod/dist/cjs/v3/external.js +22 -0
  86. package/node_modules/zod/{lib → dist/cjs/v3}/helpers/errorUtil.js +2 -1
  87. package/node_modules/zod/{lib → dist/cjs/v3}/helpers/parseUtil.js +7 -8
  88. package/node_modules/zod/{lib → dist/cjs/v3}/helpers/util.js +5 -10
  89. package/node_modules/zod/{lib → dist/cjs/v3}/index.js +2 -2
  90. package/node_modules/zod/{lib → dist/cjs/v3}/locales/en.js +30 -50
  91. package/node_modules/zod/{lib → dist/cjs/v3}/types.js +466 -539
  92. package/node_modules/zod/dist/cjs/v4/classic/checks.js +32 -0
  93. package/node_modules/zod/dist/cjs/v4/classic/coerce.js +47 -0
  94. package/node_modules/zod/dist/cjs/v4/classic/compat.js +63 -0
  95. package/node_modules/zod/dist/cjs/v4/classic/errors.js +67 -0
  96. package/node_modules/zod/dist/cjs/v4/classic/external.js +69 -0
  97. package/node_modules/zod/dist/cjs/v4/classic/index.js +33 -0
  98. package/node_modules/zod/dist/cjs/v4/classic/iso.js +60 -0
  99. package/node_modules/zod/dist/cjs/v4/classic/parse.js +32 -0
  100. package/node_modules/zod/dist/cjs/v4/classic/schemas.js +1100 -0
  101. package/node_modules/zod/dist/cjs/v4/core/api.js +1021 -0
  102. package/node_modules/zod/dist/cjs/v4/core/checks.js +580 -0
  103. package/node_modules/zod/dist/cjs/v4/core/config.js +10 -0
  104. package/node_modules/zod/dist/cjs/v4/core/core.js +63 -0
  105. package/node_modules/zod/dist/cjs/v4/core/doc.js +39 -0
  106. package/node_modules/zod/dist/cjs/v4/core/errors.js +222 -0
  107. package/node_modules/zod/dist/cjs/v4/core/function.js +102 -0
  108. package/node_modules/zod/dist/cjs/v4/core/index.js +44 -0
  109. package/node_modules/zod/dist/cjs/v4/core/json-schema.js +2 -0
  110. package/node_modules/zod/dist/cjs/v4/core/parse.js +87 -0
  111. package/node_modules/zod/dist/cjs/v4/core/regexes.js +103 -0
  112. package/node_modules/zod/dist/cjs/v4/core/registries.js +47 -0
  113. package/node_modules/zod/dist/cjs/v4/core/schemas.js +1719 -0
  114. package/node_modules/zod/dist/cjs/v4/core/standard-schema.js +2 -0
  115. package/node_modules/zod/dist/cjs/v4/core/to-json-schema.js +833 -0
  116. package/node_modules/zod/dist/cjs/v4/core/util.js +537 -0
  117. package/node_modules/zod/dist/cjs/v4/core/versions.js +8 -0
  118. package/node_modules/zod/dist/cjs/v4/core/zsf.js +172 -0
  119. package/node_modules/zod/dist/cjs/v4/index.js +22 -0
  120. package/node_modules/zod/dist/cjs/v4/locales/ar.js +142 -0
  121. package/node_modules/zod/dist/cjs/v4/locales/az.js +141 -0
  122. package/node_modules/zod/dist/cjs/v4/locales/be.js +190 -0
  123. package/node_modules/zod/dist/cjs/v4/locales/ca.js +144 -0
  124. package/node_modules/zod/dist/cjs/v4/locales/cs.js +161 -0
  125. package/node_modules/zod/dist/cjs/v4/locales/de.js +142 -0
  126. package/node_modules/zod/dist/cjs/v4/locales/en.js +145 -0
  127. package/node_modules/zod/dist/cjs/v4/locales/es.js +143 -0
  128. package/node_modules/zod/dist/cjs/v4/locales/fa.js +148 -0
  129. package/node_modules/zod/dist/cjs/v4/locales/fi.js +148 -0
  130. package/node_modules/zod/dist/cjs/v4/locales/fr-CA.js +143 -0
  131. package/node_modules/zod/dist/cjs/v4/locales/fr.js +142 -0
  132. package/node_modules/zod/dist/cjs/v4/locales/he.js +143 -0
  133. package/node_modules/zod/dist/cjs/v4/locales/hu.js +143 -0
  134. package/node_modules/zod/dist/cjs/v4/locales/id.js +142 -0
  135. package/node_modules/zod/dist/cjs/v4/locales/index.js +82 -0
  136. package/node_modules/zod/dist/cjs/v4/locales/it.js +143 -0
  137. package/node_modules/zod/dist/cjs/v4/locales/ja.js +141 -0
  138. package/node_modules/zod/dist/cjs/v4/locales/kh.js +143 -0
  139. package/node_modules/zod/dist/cjs/v4/locales/ko.js +147 -0
  140. package/node_modules/zod/dist/cjs/v4/locales/mk.js +144 -0
  141. package/node_modules/zod/dist/cjs/v4/locales/ms.js +142 -0
  142. package/node_modules/zod/dist/cjs/v4/locales/nl.js +143 -0
  143. package/node_modules/zod/dist/cjs/v4/locales/no.js +142 -0
  144. package/node_modules/zod/dist/cjs/v4/locales/ota.js +143 -0
  145. package/node_modules/zod/dist/cjs/v4/locales/pl.js +143 -0
  146. package/node_modules/zod/dist/cjs/v4/locales/ps.js +148 -0
  147. package/node_modules/zod/dist/cjs/v4/locales/pt.js +142 -0
  148. package/node_modules/zod/dist/cjs/v4/locales/ru.js +190 -0
  149. package/node_modules/zod/dist/cjs/v4/locales/sl.js +143 -0
  150. package/node_modules/zod/dist/cjs/v4/locales/sv.js +144 -0
  151. package/node_modules/zod/dist/cjs/v4/locales/ta.js +143 -0
  152. package/node_modules/zod/dist/cjs/v4/locales/th.js +143 -0
  153. package/node_modules/zod/dist/cjs/v4/locales/tr.js +143 -0
  154. package/node_modules/zod/dist/cjs/v4/locales/ua.js +143 -0
  155. package/node_modules/zod/dist/cjs/v4/locales/ur.js +143 -0
  156. package/node_modules/zod/dist/cjs/v4/locales/vi.js +142 -0
  157. package/node_modules/zod/dist/cjs/v4/locales/zh-CN.js +142 -0
  158. package/node_modules/zod/dist/cjs/v4/locales/zh-TW.js +143 -0
  159. package/node_modules/zod/dist/cjs/v4/mini/checks.js +34 -0
  160. package/node_modules/zod/dist/cjs/v4/mini/coerce.js +47 -0
  161. package/node_modules/zod/dist/cjs/v4/mini/external.js +61 -0
  162. package/node_modules/zod/dist/cjs/v4/mini/index.js +32 -0
  163. package/node_modules/zod/dist/cjs/v4/mini/iso.js +60 -0
  164. package/node_modules/zod/dist/cjs/v4/mini/parse.js +8 -0
  165. package/node_modules/zod/dist/cjs/v4/mini/schemas.js +831 -0
  166. package/node_modules/zod/dist/esm/index.js +3 -0
  167. package/node_modules/zod/dist/esm/package.json +3 -0
  168. package/node_modules/zod/dist/esm/v3/ZodError.js +132 -0
  169. package/node_modules/zod/dist/esm/v3/benchmarks/datetime.js +49 -0
  170. package/node_modules/zod/dist/esm/v3/benchmarks/discriminatedUnion.js +74 -0
  171. package/node_modules/zod/dist/esm/v3/benchmarks/index.js +54 -0
  172. package/node_modules/zod/dist/esm/v3/benchmarks/ipv4.js +49 -0
  173. package/node_modules/zod/dist/esm/v3/benchmarks/object.js +65 -0
  174. package/node_modules/zod/dist/esm/v3/benchmarks/primitives.js +154 -0
  175. package/node_modules/zod/dist/esm/v3/benchmarks/realworld.js +51 -0
  176. package/node_modules/zod/dist/esm/v3/benchmarks/string.js +50 -0
  177. package/node_modules/zod/dist/esm/v3/benchmarks/union.js +74 -0
  178. package/node_modules/zod/dist/esm/v3/errors.js +9 -0
  179. package/node_modules/zod/dist/esm/v3/external.js +6 -0
  180. package/node_modules/zod/dist/esm/v3/helpers/errorUtil.js +6 -0
  181. package/node_modules/zod/dist/esm/v3/helpers/parseUtil.js +109 -0
  182. package/node_modules/zod/dist/esm/v3/helpers/partialUtil.js +1 -0
  183. package/node_modules/zod/dist/esm/v3/helpers/typeAliases.js +1 -0
  184. package/node_modules/zod/dist/esm/v3/helpers/util.js +133 -0
  185. package/node_modules/zod/dist/esm/v3/index.js +4 -0
  186. package/node_modules/zod/dist/esm/v3/locales/en.js +107 -0
  187. package/node_modules/zod/dist/esm/v3/standard-schema.js +1 -0
  188. package/node_modules/zod/dist/esm/v3/tests/Mocker.js +53 -0
  189. package/node_modules/zod/{lib/index.mjs → dist/esm/v3/types.js} +148 -862
  190. package/node_modules/zod/dist/esm/v4/classic/checks.js +1 -0
  191. package/node_modules/zod/dist/esm/v4/classic/coerce.js +17 -0
  192. package/node_modules/zod/dist/esm/v4/classic/compat.js +33 -0
  193. package/node_modules/zod/dist/esm/v4/classic/errors.js +41 -0
  194. package/node_modules/zod/dist/esm/v4/classic/external.js +18 -0
  195. package/node_modules/zod/dist/esm/v4/classic/index.js +4 -0
  196. package/node_modules/zod/dist/esm/v4/classic/iso.js +30 -0
  197. package/node_modules/zod/dist/esm/v4/classic/parse.js +6 -0
  198. package/node_modules/zod/dist/esm/v4/classic/schemas.js +998 -0
  199. package/node_modules/zod/dist/esm/v4/core/api.js +889 -0
  200. package/node_modules/zod/dist/esm/v4/core/checks.js +554 -0
  201. package/node_modules/zod/dist/esm/v4/core/config.js +6 -0
  202. package/node_modules/zod/dist/esm/v4/core/core.js +57 -0
  203. package/node_modules/zod/dist/esm/v4/core/doc.js +35 -0
  204. package/node_modules/zod/dist/esm/v4/core/errors.js +191 -0
  205. package/node_modules/zod/dist/esm/v4/core/function.js +75 -0
  206. package/node_modules/zod/dist/esm/v4/core/index.js +15 -0
  207. package/node_modules/zod/dist/esm/v4/core/json-schema.js +1 -0
  208. package/node_modules/zod/dist/esm/v4/core/parse.js +57 -0
  209. package/node_modules/zod/dist/esm/v4/core/regexes.js +95 -0
  210. package/node_modules/zod/dist/esm/v4/core/registries.js +42 -0
  211. package/node_modules/zod/dist/esm/v4/core/schemas.js +1688 -0
  212. package/node_modules/zod/dist/esm/v4/core/standard-schema.js +1 -0
  213. package/node_modules/zod/dist/esm/v4/core/to-json-schema.js +828 -0
  214. package/node_modules/zod/dist/esm/v4/core/util.js +491 -0
  215. package/node_modules/zod/dist/esm/v4/core/versions.js +5 -0
  216. package/node_modules/zod/dist/esm/v4/core/zsf.js +171 -0
  217. package/node_modules/zod/dist/esm/v4/index.js +3 -0
  218. package/node_modules/zod/dist/esm/v4/locales/ar.js +116 -0
  219. package/node_modules/zod/dist/esm/v4/locales/az.js +115 -0
  220. package/node_modules/zod/dist/esm/v4/locales/be.js +164 -0
  221. package/node_modules/zod/dist/esm/v4/locales/ca.js +118 -0
  222. package/node_modules/zod/dist/esm/v4/locales/cs.js +135 -0
  223. package/node_modules/zod/dist/esm/v4/locales/de.js +116 -0
  224. package/node_modules/zod/dist/esm/v4/locales/en.js +117 -0
  225. package/node_modules/zod/dist/esm/v4/locales/es.js +117 -0
  226. package/node_modules/zod/dist/esm/v4/locales/fa.js +122 -0
  227. package/node_modules/zod/dist/esm/v4/locales/fi.js +122 -0
  228. package/node_modules/zod/dist/esm/v4/locales/fr-CA.js +117 -0
  229. package/node_modules/zod/dist/esm/v4/locales/fr.js +116 -0
  230. package/node_modules/zod/dist/esm/v4/locales/he.js +117 -0
  231. package/node_modules/zod/dist/esm/v4/locales/hu.js +117 -0
  232. package/node_modules/zod/dist/esm/v4/locales/id.js +116 -0
  233. package/node_modules/zod/dist/esm/v4/locales/index.js +38 -0
  234. package/node_modules/zod/dist/esm/v4/locales/it.js +117 -0
  235. package/node_modules/zod/dist/esm/v4/locales/ja.js +115 -0
  236. package/node_modules/zod/dist/esm/v4/locales/kh.js +117 -0
  237. package/node_modules/zod/dist/esm/v4/locales/ko.js +121 -0
  238. package/node_modules/zod/dist/esm/v4/locales/mk.js +118 -0
  239. package/node_modules/zod/dist/esm/v4/locales/ms.js +116 -0
  240. package/node_modules/zod/dist/esm/v4/locales/nl.js +117 -0
  241. package/node_modules/zod/dist/esm/v4/locales/no.js +116 -0
  242. package/node_modules/zod/dist/esm/v4/locales/ota.js +117 -0
  243. package/node_modules/zod/dist/esm/v4/locales/pl.js +117 -0
  244. package/node_modules/zod/dist/esm/v4/locales/ps.js +122 -0
  245. package/node_modules/zod/dist/esm/v4/locales/pt.js +116 -0
  246. package/node_modules/zod/dist/esm/v4/locales/ru.js +164 -0
  247. package/node_modules/zod/dist/esm/v4/locales/sl.js +117 -0
  248. package/node_modules/zod/dist/esm/v4/locales/sv.js +118 -0
  249. package/node_modules/zod/dist/esm/v4/locales/ta.js +117 -0
  250. package/node_modules/zod/dist/esm/v4/locales/th.js +117 -0
  251. package/node_modules/zod/dist/esm/v4/locales/tr.js +115 -0
  252. package/node_modules/zod/dist/esm/v4/locales/ua.js +117 -0
  253. package/node_modules/zod/dist/esm/v4/locales/ur.js +117 -0
  254. package/node_modules/zod/dist/esm/v4/locales/vi.js +116 -0
  255. package/node_modules/zod/dist/esm/v4/locales/zh-CN.js +116 -0
  256. package/node_modules/zod/dist/esm/v4/locales/zh-TW.js +117 -0
  257. package/node_modules/zod/dist/esm/v4/mini/checks.js +1 -0
  258. package/node_modules/zod/dist/esm/v4/mini/coerce.js +17 -0
  259. package/node_modules/zod/dist/esm/v4/mini/external.js +13 -0
  260. package/node_modules/zod/dist/esm/v4/mini/index.js +3 -0
  261. package/node_modules/zod/dist/esm/v4/mini/iso.js +30 -0
  262. package/node_modules/zod/dist/esm/v4/mini/parse.js +1 -0
  263. package/node_modules/zod/dist/esm/v4/mini/schemas.js +725 -0
  264. package/node_modules/zod/dist/types/index.d.ts +3 -0
  265. package/node_modules/zod/dist/types/package.json +3 -0
  266. package/node_modules/zod/{lib → dist/types/v3}/ZodError.d.ts +7 -7
  267. package/node_modules/zod/dist/types/v3/benchmarks/index.d.ts +1 -0
  268. package/node_modules/zod/{lib → dist/types/v3}/errors.d.ts +2 -2
  269. package/node_modules/zod/dist/types/v3/external.d.ts +6 -0
  270. package/node_modules/zod/{lib → dist/types/v3}/helpers/errorUtil.d.ts +1 -1
  271. package/node_modules/zod/{lib → dist/types/v3}/helpers/parseUtil.d.ts +4 -4
  272. package/node_modules/zod/{lib → dist/types/v3}/helpers/partialUtil.d.ts +1 -1
  273. package/node_modules/zod/{lib → dist/types/v3}/helpers/util.d.ts +14 -11
  274. package/node_modules/zod/dist/types/v3/index.d.ts +4 -0
  275. package/node_modules/zod/{lib → dist/types/v3}/locales/en.d.ts +1 -1
  276. package/node_modules/zod/{lib/__tests__ → dist/types/v3/tests}/Mocker.d.ts +6 -6
  277. package/node_modules/zod/{lib → dist/types/v3}/types.d.ts +120 -151
  278. package/node_modules/zod/dist/types/v4/classic/checks.d.ts +1 -0
  279. package/node_modules/zod/dist/types/v4/classic/coerce.d.ts +17 -0
  280. package/node_modules/zod/dist/types/v4/classic/compat.d.ts +48 -0
  281. package/node_modules/zod/dist/types/v4/classic/errors.d.ts +30 -0
  282. package/node_modules/zod/dist/types/v4/classic/external.d.ts +13 -0
  283. package/node_modules/zod/dist/types/v4/classic/index.d.ts +4 -0
  284. package/node_modules/zod/dist/types/v4/classic/iso.d.ts +22 -0
  285. package/node_modules/zod/dist/types/v4/classic/parse.d.ts +23 -0
  286. package/node_modules/zod/dist/types/v4/classic/schemas.d.ts +624 -0
  287. package/node_modules/zod/dist/types/v4/core/api.d.ts +281 -0
  288. package/node_modules/zod/dist/types/v4/core/checks.d.ts +277 -0
  289. package/node_modules/zod/dist/types/v4/core/config.d.ts +9 -0
  290. package/node_modules/zod/dist/types/v4/core/core.d.ts +47 -0
  291. package/node_modules/zod/dist/types/v4/core/doc.d.ts +14 -0
  292. package/node_modules/zod/dist/types/v4/core/errors.d.ts +204 -0
  293. package/node_modules/zod/dist/types/v4/core/function.d.ts +52 -0
  294. package/node_modules/zod/dist/types/v4/core/index.d.ts +15 -0
  295. package/node_modules/zod/dist/types/v4/core/json-schema.d.ts +87 -0
  296. package/node_modules/zod/dist/types/v4/core/parse.d.ts +25 -0
  297. package/node_modules/zod/dist/types/v4/core/regexes.d.ts +62 -0
  298. package/node_modules/zod/dist/types/v4/core/registries.d.ts +39 -0
  299. package/node_modules/zod/dist/types/v4/core/schemas.d.ts +1005 -0
  300. package/node_modules/zod/dist/types/v4/core/standard-schema.d.ts +55 -0
  301. package/node_modules/zod/dist/types/v4/core/to-json-schema.d.ts +84 -0
  302. package/node_modules/zod/dist/types/v4/core/util.d.ts +183 -0
  303. package/node_modules/zod/dist/types/v4/core/versions.d.ts +5 -0
  304. package/node_modules/zod/dist/types/v4/core/zsf.d.ts +91 -0
  305. package/node_modules/zod/dist/types/v4/index.d.ts +3 -0
  306. package/node_modules/zod/dist/types/v4/locales/ar.d.ts +4 -0
  307. package/node_modules/zod/dist/types/v4/locales/az.d.ts +4 -0
  308. package/node_modules/zod/dist/types/v4/locales/be.d.ts +4 -0
  309. package/node_modules/zod/dist/types/v4/locales/ca.d.ts +4 -0
  310. package/node_modules/zod/dist/types/v4/locales/cs.d.ts +4 -0
  311. package/node_modules/zod/dist/types/v4/locales/de.d.ts +4 -0
  312. package/node_modules/zod/dist/types/v4/locales/en.d.ts +5 -0
  313. package/node_modules/zod/dist/types/v4/locales/es.d.ts +4 -0
  314. package/node_modules/zod/dist/types/v4/locales/fa.d.ts +4 -0
  315. package/node_modules/zod/dist/types/v4/locales/fi.d.ts +4 -0
  316. package/node_modules/zod/dist/types/v4/locales/fr-CA.d.ts +4 -0
  317. package/node_modules/zod/dist/types/v4/locales/fr.d.ts +4 -0
  318. package/node_modules/zod/dist/types/v4/locales/he.d.ts +4 -0
  319. package/node_modules/zod/dist/types/v4/locales/hu.d.ts +4 -0
  320. package/node_modules/zod/dist/types/v4/locales/id.d.ts +4 -0
  321. package/node_modules/zod/dist/types/v4/locales/index.d.ts +38 -0
  322. package/node_modules/zod/dist/types/v4/locales/it.d.ts +4 -0
  323. package/node_modules/zod/dist/types/v4/locales/ja.d.ts +4 -0
  324. package/node_modules/zod/dist/types/v4/locales/kh.d.ts +4 -0
  325. package/node_modules/zod/dist/types/v4/locales/ko.d.ts +4 -0
  326. package/node_modules/zod/dist/types/v4/locales/mk.d.ts +4 -0
  327. package/node_modules/zod/dist/types/v4/locales/ms.d.ts +4 -0
  328. package/node_modules/zod/dist/types/v4/locales/nl.d.ts +4 -0
  329. package/node_modules/zod/dist/types/v4/locales/no.d.ts +4 -0
  330. package/node_modules/zod/dist/types/v4/locales/ota.d.ts +4 -0
  331. package/node_modules/zod/dist/types/v4/locales/pl.d.ts +4 -0
  332. package/node_modules/zod/dist/types/v4/locales/ps.d.ts +4 -0
  333. package/node_modules/zod/dist/types/v4/locales/pt.d.ts +4 -0
  334. package/node_modules/zod/dist/types/v4/locales/ru.d.ts +4 -0
  335. package/node_modules/zod/dist/types/v4/locales/sl.d.ts +4 -0
  336. package/node_modules/zod/dist/types/v4/locales/sv.d.ts +4 -0
  337. package/node_modules/zod/dist/types/v4/locales/ta.d.ts +4 -0
  338. package/node_modules/zod/dist/types/v4/locales/th.d.ts +4 -0
  339. package/node_modules/zod/dist/types/v4/locales/tr.d.ts +5 -0
  340. package/node_modules/zod/dist/types/v4/locales/ua.d.ts +4 -0
  341. package/node_modules/zod/dist/types/v4/locales/ur.d.ts +4 -0
  342. package/node_modules/zod/dist/types/v4/locales/vi.d.ts +4 -0
  343. package/node_modules/zod/dist/types/v4/locales/zh-CN.d.ts +4 -0
  344. package/node_modules/zod/dist/types/v4/locales/zh-TW.d.ts +4 -0
  345. package/node_modules/zod/dist/types/v4/mini/checks.d.ts +1 -0
  346. package/node_modules/zod/dist/types/v4/mini/coerce.d.ts +7 -0
  347. package/node_modules/zod/dist/types/v4/mini/external.d.ts +11 -0
  348. package/node_modules/zod/dist/types/v4/mini/index.d.ts +3 -0
  349. package/node_modules/zod/dist/types/v4/mini/iso.d.ts +22 -0
  350. package/node_modules/zod/dist/types/v4/mini/parse.d.ts +1 -0
  351. package/node_modules/zod/dist/types/v4/mini/schemas.d.ts +351 -0
  352. package/node_modules/zod/package.json +105 -107
  353. package/node_modules/zod/v3/index.d.ts +3 -0
  354. package/node_modules/zod/v3/index.js +1 -0
  355. package/node_modules/zod/v4/core/index.d.ts +1 -0
  356. package/node_modules/zod/v4/core/index.js +1 -0
  357. package/node_modules/zod/v4/index.d.ts +3 -0
  358. package/node_modules/zod/v4/index.js +1 -0
  359. package/node_modules/zod/v4/locales/en.d.ts +2 -0
  360. package/node_modules/zod/v4/locales/en.js +2 -0
  361. package/node_modules/zod/v4/locales/index.d.ts +1 -0
  362. package/node_modules/zod/v4/locales/index.js +1 -0
  363. package/node_modules/zod/v4-mini/index.d.ts +1 -0
  364. package/node_modules/zod/v4-mini/index.js +1 -0
  365. package/package.json +16 -16
  366. package/node_modules/zod/index.d.ts +0 -2
  367. package/node_modules/zod/lib/benchmarks/index.js +0 -59
  368. package/node_modules/zod/lib/external.d.ts +0 -6
  369. package/node_modules/zod/lib/index.d.ts +0 -4
  370. package/node_modules/zod/lib/index.umd.js +0 -4520
  371. /package/node_modules/zod/{lib → dist/cjs/v3}/benchmarks/ipv4.js +0 -0
  372. /package/node_modules/zod/{lib → dist/cjs/v3}/helpers/enumUtil.js +0 -0
  373. /package/node_modules/zod/{lib → dist/cjs/v3}/helpers/partialUtil.js +0 -0
  374. /package/node_modules/zod/{lib → dist/cjs/v3}/helpers/typeAliases.js +0 -0
  375. /package/node_modules/zod/{lib → dist/cjs/v3}/standard-schema.js +0 -0
  376. /package/node_modules/zod/{lib/__tests__ → dist/cjs/v3/tests}/Mocker.js +0 -0
  377. /package/node_modules/zod/{lib/benchmarks/index.d.ts → dist/esm/v3/helpers/enumUtil.js} +0 -0
  378. /package/node_modules/zod/{lib → dist/types/v3}/benchmarks/datetime.d.ts +0 -0
  379. /package/node_modules/zod/{lib → dist/types/v3}/benchmarks/discriminatedUnion.d.ts +0 -0
  380. /package/node_modules/zod/{lib → dist/types/v3}/benchmarks/ipv4.d.ts +0 -0
  381. /package/node_modules/zod/{lib → dist/types/v3}/benchmarks/object.d.ts +0 -0
  382. /package/node_modules/zod/{lib → dist/types/v3}/benchmarks/primitives.d.ts +0 -0
  383. /package/node_modules/zod/{lib → dist/types/v3}/benchmarks/realworld.d.ts +0 -0
  384. /package/node_modules/zod/{lib → dist/types/v3}/benchmarks/string.d.ts +0 -0
  385. /package/node_modules/zod/{lib → dist/types/v3}/benchmarks/union.d.ts +0 -0
  386. /package/node_modules/zod/{lib → dist/types/v3}/helpers/enumUtil.d.ts +0 -0
  387. /package/node_modules/zod/{lib → dist/types/v3}/helpers/typeAliases.d.ts +0 -0
  388. /package/node_modules/zod/{lib → dist/types/v3}/standard-schema.d.ts +0 -0
@@ -0,0 +1,3 @@
1
+ import z3 from "./v3/index.js";
2
+ export * from "./v3/index.js";
3
+ export default z3;
@@ -0,0 +1,3 @@
1
+ {
2
+ "type": "module"
3
+ }
@@ -0,0 +1,132 @@
1
+ import { util } from "./helpers/util.js";
2
+ export const ZodIssueCode = util.arrayToEnum([
3
+ "invalid_type",
4
+ "invalid_literal",
5
+ "custom",
6
+ "invalid_union",
7
+ "invalid_union_discriminator",
8
+ "invalid_enum_value",
9
+ "unrecognized_keys",
10
+ "invalid_arguments",
11
+ "invalid_return_type",
12
+ "invalid_date",
13
+ "invalid_string",
14
+ "too_small",
15
+ "too_big",
16
+ "invalid_intersection_types",
17
+ "not_multiple_of",
18
+ "not_finite",
19
+ ]);
20
+ export const quotelessJson = (obj) => {
21
+ const json = JSON.stringify(obj, null, 2);
22
+ return json.replace(/"([^"]+)":/g, "$1:");
23
+ };
24
+ export class ZodError extends Error {
25
+ get errors() {
26
+ return this.issues;
27
+ }
28
+ constructor(issues) {
29
+ super();
30
+ this.issues = [];
31
+ this.addIssue = (sub) => {
32
+ this.issues = [...this.issues, sub];
33
+ };
34
+ this.addIssues = (subs = []) => {
35
+ this.issues = [...this.issues, ...subs];
36
+ };
37
+ const actualProto = new.target.prototype;
38
+ if (Object.setPrototypeOf) {
39
+ // eslint-disable-next-line ban/ban
40
+ Object.setPrototypeOf(this, actualProto);
41
+ }
42
+ else {
43
+ this.__proto__ = actualProto;
44
+ }
45
+ this.name = "ZodError";
46
+ this.issues = issues;
47
+ }
48
+ format(_mapper) {
49
+ const mapper = _mapper ||
50
+ function (issue) {
51
+ return issue.message;
52
+ };
53
+ const fieldErrors = { _errors: [] };
54
+ const processError = (error) => {
55
+ for (const issue of error.issues) {
56
+ if (issue.code === "invalid_union") {
57
+ issue.unionErrors.map(processError);
58
+ }
59
+ else if (issue.code === "invalid_return_type") {
60
+ processError(issue.returnTypeError);
61
+ }
62
+ else if (issue.code === "invalid_arguments") {
63
+ processError(issue.argumentsError);
64
+ }
65
+ else if (issue.path.length === 0) {
66
+ fieldErrors._errors.push(mapper(issue));
67
+ }
68
+ else {
69
+ let curr = fieldErrors;
70
+ let i = 0;
71
+ while (i < issue.path.length) {
72
+ const el = issue.path[i];
73
+ const terminal = i === issue.path.length - 1;
74
+ if (!terminal) {
75
+ curr[el] = curr[el] || { _errors: [] };
76
+ // if (typeof el === "string") {
77
+ // curr[el] = curr[el] || { _errors: [] };
78
+ // } else if (typeof el === "number") {
79
+ // const errorArray: any = [];
80
+ // errorArray._errors = [];
81
+ // curr[el] = curr[el] || errorArray;
82
+ // }
83
+ }
84
+ else {
85
+ curr[el] = curr[el] || { _errors: [] };
86
+ curr[el]._errors.push(mapper(issue));
87
+ }
88
+ curr = curr[el];
89
+ i++;
90
+ }
91
+ }
92
+ }
93
+ };
94
+ processError(this);
95
+ return fieldErrors;
96
+ }
97
+ static assert(value) {
98
+ if (!(value instanceof ZodError)) {
99
+ throw new Error(`Not a ZodError: ${value}`);
100
+ }
101
+ }
102
+ toString() {
103
+ return this.message;
104
+ }
105
+ get message() {
106
+ return JSON.stringify(this.issues, util.jsonStringifyReplacer, 2);
107
+ }
108
+ get isEmpty() {
109
+ return this.issues.length === 0;
110
+ }
111
+ flatten(mapper = (issue) => issue.message) {
112
+ const fieldErrors = {};
113
+ const formErrors = [];
114
+ for (const sub of this.issues) {
115
+ if (sub.path.length > 0) {
116
+ fieldErrors[sub.path[0]] = fieldErrors[sub.path[0]] || [];
117
+ fieldErrors[sub.path[0]].push(mapper(sub));
118
+ }
119
+ else {
120
+ formErrors.push(mapper(sub));
121
+ }
122
+ }
123
+ return { formErrors, fieldErrors };
124
+ }
125
+ get formErrors() {
126
+ return this.flatten();
127
+ }
128
+ }
129
+ ZodError.create = (issues) => {
130
+ const error = new ZodError(issues);
131
+ return error;
132
+ };
@@ -0,0 +1,49 @@
1
+ import Benchmark from "benchmark";
2
+ const datetimeValidationSuite = new Benchmark.Suite("datetime");
3
+ const DATA = "2021-01-01";
4
+ const MONTHS_31 = new Set([1, 3, 5, 7, 8, 10, 12]);
5
+ const MONTHS_30 = new Set([4, 6, 9, 11]);
6
+ const simpleDatetimeRegex = /^(\d{4})-(\d{2})-(\d{2})$/;
7
+ const datetimeRegexNoLeapYearValidation = /^\d{4}-((0[13578]|10|12)-31|(0[13-9]|1[0-2])-30|(0[1-9]|1[0-2])-(0[1-9]|1\d|2\d))$/;
8
+ const datetimeRegexWithLeapYearValidation = /^((\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])))$/;
9
+ datetimeValidationSuite
10
+ .add("new Date()", () => {
11
+ return !Number.isNaN(new Date(DATA).getTime());
12
+ })
13
+ .add("regex (no validation)", () => {
14
+ return simpleDatetimeRegex.test(DATA);
15
+ })
16
+ .add("regex (no leap year)", () => {
17
+ return datetimeRegexNoLeapYearValidation.test(DATA);
18
+ })
19
+ .add("regex (w/ leap year)", () => {
20
+ return datetimeRegexWithLeapYearValidation.test(DATA);
21
+ })
22
+ .add("capture groups + code", () => {
23
+ const match = DATA.match(simpleDatetimeRegex);
24
+ if (!match)
25
+ return false;
26
+ // Extract year, month, and day from the capture groups
27
+ const year = Number.parseInt(match[1], 10);
28
+ const month = Number.parseInt(match[2], 10); // month is 0-indexed in JavaScript Date, so subtract 1
29
+ const day = Number.parseInt(match[3], 10);
30
+ if (month === 2) {
31
+ if ((year % 4 === 0 && year % 100 !== 0) || year % 400 === 0) {
32
+ return day <= 29;
33
+ }
34
+ return day <= 28;
35
+ }
36
+ if (MONTHS_30.has(month)) {
37
+ return day <= 30;
38
+ }
39
+ if (MONTHS_31.has(month)) {
40
+ return day <= 31;
41
+ }
42
+ return false;
43
+ })
44
+ .on("cycle", (e) => {
45
+ console.log(`${datetimeValidationSuite.name}: ${e.target}`);
46
+ });
47
+ export default {
48
+ suites: [datetimeValidationSuite],
49
+ };
@@ -0,0 +1,74 @@
1
+ import Benchmark from "benchmark";
2
+ import { z } from "zod/v3";
3
+ const doubleSuite = new Benchmark.Suite("z.discriminatedUnion: double");
4
+ const manySuite = new Benchmark.Suite("z.discriminatedUnion: many");
5
+ const aSchema = z.object({
6
+ type: z.literal("a"),
7
+ });
8
+ const objA = {
9
+ type: "a",
10
+ };
11
+ const bSchema = z.object({
12
+ type: z.literal("b"),
13
+ });
14
+ const objB = {
15
+ type: "b",
16
+ };
17
+ const cSchema = z.object({
18
+ type: z.literal("c"),
19
+ });
20
+ const objC = {
21
+ type: "c",
22
+ };
23
+ const dSchema = z.object({
24
+ type: z.literal("d"),
25
+ });
26
+ const double = z.discriminatedUnion("type", [aSchema, bSchema]);
27
+ const many = z.discriminatedUnion("type", [aSchema, bSchema, cSchema, dSchema]);
28
+ doubleSuite
29
+ .add("valid: a", () => {
30
+ double.parse(objA);
31
+ })
32
+ .add("valid: b", () => {
33
+ double.parse(objB);
34
+ })
35
+ .add("invalid: null", () => {
36
+ try {
37
+ double.parse(null);
38
+ }
39
+ catch (_err) { }
40
+ })
41
+ .add("invalid: wrong shape", () => {
42
+ try {
43
+ double.parse(objC);
44
+ }
45
+ catch (_err) { }
46
+ })
47
+ .on("cycle", (e) => {
48
+ console.log(`${doubleSuite.name}: ${e.target}`);
49
+ });
50
+ manySuite
51
+ .add("valid: a", () => {
52
+ many.parse(objA);
53
+ })
54
+ .add("valid: c", () => {
55
+ many.parse(objC);
56
+ })
57
+ .add("invalid: null", () => {
58
+ try {
59
+ many.parse(null);
60
+ }
61
+ catch (_err) { }
62
+ })
63
+ .add("invalid: wrong shape", () => {
64
+ try {
65
+ many.parse({ type: "unknown" });
66
+ }
67
+ catch (_err) { }
68
+ })
69
+ .on("cycle", (e) => {
70
+ console.log(`${manySuite.name}: ${e.target}`);
71
+ });
72
+ export default {
73
+ suites: [doubleSuite, manySuite],
74
+ };
@@ -0,0 +1,54 @@
1
+ import datetimeBenchmarks from "./datetime.js";
2
+ import discriminatedUnionBenchmarks from "./discriminatedUnion.js";
3
+ import ipv4Benchmarks from "./ipv4.js";
4
+ import objectBenchmarks from "./object.js";
5
+ import primitiveBenchmarks from "./primitives.js";
6
+ import realworld from "./realworld.js";
7
+ import stringBenchmarks from "./string.js";
8
+ import unionBenchmarks from "./union.js";
9
+ const argv = process.argv.slice(2);
10
+ let suites = [];
11
+ if (!argv.length) {
12
+ suites = [
13
+ ...realworld.suites,
14
+ ...primitiveBenchmarks.suites,
15
+ ...stringBenchmarks.suites,
16
+ ...objectBenchmarks.suites,
17
+ ...unionBenchmarks.suites,
18
+ ...discriminatedUnionBenchmarks.suites,
19
+ ];
20
+ }
21
+ else {
22
+ if (argv.includes("--realworld")) {
23
+ suites.push(...realworld.suites);
24
+ }
25
+ if (argv.includes("--primitives")) {
26
+ suites.push(...primitiveBenchmarks.suites);
27
+ }
28
+ if (argv.includes("--string")) {
29
+ suites.push(...stringBenchmarks.suites);
30
+ }
31
+ if (argv.includes("--object")) {
32
+ suites.push(...objectBenchmarks.suites);
33
+ }
34
+ if (argv.includes("--union")) {
35
+ suites.push(...unionBenchmarks.suites);
36
+ }
37
+ if (argv.includes("--discriminatedUnion")) {
38
+ suites.push(...datetimeBenchmarks.suites);
39
+ }
40
+ if (argv.includes("--datetime")) {
41
+ suites.push(...datetimeBenchmarks.suites);
42
+ }
43
+ if (argv.includes("--ipv4")) {
44
+ suites.push(...ipv4Benchmarks.suites);
45
+ }
46
+ }
47
+ for (const suite of suites) {
48
+ suite.run({});
49
+ }
50
+ // exit on Ctrl-C
51
+ process.on("SIGINT", function () {
52
+ console.log("Exiting...");
53
+ process.exit();
54
+ });
@@ -0,0 +1,49 @@
1
+ import Benchmark from "benchmark";
2
+ const suite = new Benchmark.Suite("ipv4");
3
+ const DATA = "127.0.0.1";
4
+ const ipv4RegexA = /^(((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}))$/;
5
+ const ipv4RegexB = /^(?:(?:(?=(25[0-5]))\1|(?=(2[0-4][0-9]))\2|(?=(1[0-9]{2}))\3|(?=([0-9]{1,2}))\4)\.){3}(?:(?=(25[0-5]))\5|(?=(2[0-4][0-9]))\6|(?=(1[0-9]{2}))\7|(?=([0-9]{1,2}))\8)$/;
6
+ const ipv4RegexC = /^(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)\.){3}(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)$/;
7
+ const ipv4RegexD = /^(\b25[0-5]|\b2[0-4][0-9]|\b[01]?[0-9][0-9]?)(\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)){3}$/;
8
+ const ipv4RegexE = /^((25[0-5]|(2[0-4]|1\d|[1-9]|)\d)\.){3}(25[0-5]|(2[0-4]|1\d|[1-9]|)\d)$/;
9
+ const ipv4RegexF = /^((25[0-5]|(2[0-4]|1\d|[1-9]|)\d)\.?\b){4}$/;
10
+ const ipv4RegexG = /^((25[0-5]|(2[0-4]|1\d|[1-9]|)\d)(\.(?!$)|$)){4}$/;
11
+ const ipv4RegexH = /^((25[0-5]|(2[0-4]|1[0-9]|[1-9]|)[0-9])(\.(?!$)|$)){4}$/;
12
+ const ipv4RegexI = /^(?:(?: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])$/;
13
+ suite
14
+ .add("A", () => {
15
+ return ipv4RegexA.test(DATA);
16
+ })
17
+ .add("B", () => {
18
+ return ipv4RegexB.test(DATA);
19
+ })
20
+ .add("C", () => {
21
+ return ipv4RegexC.test(DATA);
22
+ })
23
+ .add("D", () => {
24
+ return ipv4RegexD.test(DATA);
25
+ })
26
+ .add("E", () => {
27
+ return ipv4RegexE.test(DATA);
28
+ })
29
+ .add("F", () => {
30
+ return ipv4RegexF.test(DATA);
31
+ })
32
+ .add("G", () => {
33
+ return ipv4RegexG.test(DATA);
34
+ })
35
+ .add("H", () => {
36
+ return ipv4RegexH.test(DATA);
37
+ })
38
+ .add("I", () => {
39
+ return ipv4RegexI.test(DATA);
40
+ })
41
+ .on("cycle", (e) => {
42
+ console.log(`${suite.name}: ${e.target}`);
43
+ });
44
+ export default {
45
+ suites: [suite],
46
+ };
47
+ if (require.main === module) {
48
+ suite.run();
49
+ }
@@ -0,0 +1,65 @@
1
+ import Benchmark from "benchmark";
2
+ import { z } from "zod/v3";
3
+ const emptySuite = new Benchmark.Suite("z.object: empty");
4
+ const shortSuite = new Benchmark.Suite("z.object: short");
5
+ const longSuite = new Benchmark.Suite("z.object: long");
6
+ const empty = z.object({});
7
+ const short = z.object({
8
+ string: z.string(),
9
+ });
10
+ const long = z.object({
11
+ string: z.string(),
12
+ number: z.number(),
13
+ boolean: z.boolean(),
14
+ });
15
+ emptySuite
16
+ .add("valid", () => {
17
+ empty.parse({});
18
+ })
19
+ .add("valid: extra keys", () => {
20
+ empty.parse({ string: "string" });
21
+ })
22
+ .add("invalid: null", () => {
23
+ try {
24
+ empty.parse(null);
25
+ }
26
+ catch (_err) { }
27
+ })
28
+ .on("cycle", (e) => {
29
+ console.log(`${emptySuite.name}: ${e.target}`);
30
+ });
31
+ shortSuite
32
+ .add("valid", () => {
33
+ short.parse({ string: "string" });
34
+ })
35
+ .add("valid: extra keys", () => {
36
+ short.parse({ string: "string", number: 42 });
37
+ })
38
+ .add("invalid: null", () => {
39
+ try {
40
+ short.parse(null);
41
+ }
42
+ catch (_err) { }
43
+ })
44
+ .on("cycle", (e) => {
45
+ console.log(`${shortSuite.name}: ${e.target}`);
46
+ });
47
+ longSuite
48
+ .add("valid", () => {
49
+ long.parse({ string: "string", number: 42, boolean: true });
50
+ })
51
+ .add("valid: extra keys", () => {
52
+ long.parse({ string: "string", number: 42, boolean: true, list: [] });
53
+ })
54
+ .add("invalid: null", () => {
55
+ try {
56
+ long.parse(null);
57
+ }
58
+ catch (_err) { }
59
+ })
60
+ .on("cycle", (e) => {
61
+ console.log(`${longSuite.name}: ${e.target}`);
62
+ });
63
+ export default {
64
+ suites: [emptySuite, shortSuite, longSuite],
65
+ };
@@ -0,0 +1,154 @@
1
+ import Benchmark from "benchmark";
2
+ import { z } from "zod/v3";
3
+ import { Mocker } from "../tests/Mocker.js";
4
+ const val = new Mocker();
5
+ const enumSuite = new Benchmark.Suite("z.enum");
6
+ const enumSchema = z.enum(["a", "b", "c"]);
7
+ enumSuite
8
+ .add("valid", () => {
9
+ enumSchema.parse("a");
10
+ })
11
+ .add("invalid", () => {
12
+ try {
13
+ enumSchema.parse("x");
14
+ }
15
+ catch (_e) { }
16
+ })
17
+ .on("cycle", (e) => {
18
+ console.log(`z.enum: ${e.target}`);
19
+ });
20
+ const longEnumSuite = new Benchmark.Suite("long z.enum");
21
+ const longEnumSchema = z.enum([
22
+ "one",
23
+ "two",
24
+ "three",
25
+ "four",
26
+ "five",
27
+ "six",
28
+ "seven",
29
+ "eight",
30
+ "nine",
31
+ "ten",
32
+ "eleven",
33
+ "twelve",
34
+ "thirteen",
35
+ "fourteen",
36
+ "fifteen",
37
+ "sixteen",
38
+ "seventeen",
39
+ ]);
40
+ longEnumSuite
41
+ .add("valid", () => {
42
+ longEnumSchema.parse("five");
43
+ })
44
+ .add("invalid", () => {
45
+ try {
46
+ longEnumSchema.parse("invalid");
47
+ }
48
+ catch (_e) { }
49
+ })
50
+ .on("cycle", (e) => {
51
+ console.log(`long z.enum: ${e.target}`);
52
+ });
53
+ const undefinedSuite = new Benchmark.Suite("z.undefined");
54
+ const undefinedSchema = z.undefined();
55
+ undefinedSuite
56
+ .add("valid", () => {
57
+ undefinedSchema.parse(undefined);
58
+ })
59
+ .add("invalid", () => {
60
+ try {
61
+ undefinedSchema.parse(1);
62
+ }
63
+ catch (_e) { }
64
+ })
65
+ .on("cycle", (e) => {
66
+ console.log(`z.undefined: ${e.target}`);
67
+ });
68
+ const literalSuite = new Benchmark.Suite("z.literal");
69
+ const short = "short";
70
+ const bad = "bad";
71
+ const literalSchema = z.literal("short");
72
+ literalSuite
73
+ .add("valid", () => {
74
+ literalSchema.parse(short);
75
+ })
76
+ .add("invalid", () => {
77
+ try {
78
+ literalSchema.parse(bad);
79
+ }
80
+ catch (_e) { }
81
+ })
82
+ .on("cycle", (e) => {
83
+ console.log(`z.literal: ${e.target}`);
84
+ });
85
+ const numberSuite = new Benchmark.Suite("z.number");
86
+ const numberSchema = z.number().int();
87
+ numberSuite
88
+ .add("valid", () => {
89
+ numberSchema.parse(1);
90
+ })
91
+ .add("invalid type", () => {
92
+ try {
93
+ numberSchema.parse("bad");
94
+ }
95
+ catch (_e) { }
96
+ })
97
+ .add("invalid number", () => {
98
+ try {
99
+ numberSchema.parse(0.5);
100
+ }
101
+ catch (_e) { }
102
+ })
103
+ .on("cycle", (e) => {
104
+ console.log(`z.number: ${e.target}`);
105
+ });
106
+ const dateSuite = new Benchmark.Suite("z.date");
107
+ const plainDate = z.date();
108
+ const minMaxDate = z.date().min(new Date("2021-01-01")).max(new Date("2030-01-01"));
109
+ dateSuite
110
+ .add("valid", () => {
111
+ plainDate.parse(new Date());
112
+ })
113
+ .add("invalid", () => {
114
+ try {
115
+ plainDate.parse(1);
116
+ }
117
+ catch (_e) { }
118
+ })
119
+ .add("valid min and max", () => {
120
+ minMaxDate.parse(new Date("2023-01-01"));
121
+ })
122
+ .add("invalid min", () => {
123
+ try {
124
+ minMaxDate.parse(new Date("2019-01-01"));
125
+ }
126
+ catch (_e) { }
127
+ })
128
+ .add("invalid max", () => {
129
+ try {
130
+ minMaxDate.parse(new Date("2031-01-01"));
131
+ }
132
+ catch (_e) { }
133
+ })
134
+ .on("cycle", (e) => {
135
+ console.log(`z.date: ${e.target}`);
136
+ });
137
+ const symbolSuite = new Benchmark.Suite("z.symbol");
138
+ const symbolSchema = z.symbol();
139
+ symbolSuite
140
+ .add("valid", () => {
141
+ symbolSchema.parse(val.symbol);
142
+ })
143
+ .add("invalid", () => {
144
+ try {
145
+ symbolSchema.parse(1);
146
+ }
147
+ catch (_e) { }
148
+ })
149
+ .on("cycle", (e) => {
150
+ console.log(`z.symbol: ${e.target}`);
151
+ });
152
+ export default {
153
+ suites: [enumSuite, longEnumSuite, undefinedSuite, literalSuite, numberSuite, dateSuite, symbolSuite],
154
+ };
@@ -0,0 +1,51 @@
1
+ import Benchmark from "benchmark";
2
+ import { z } from "zod/v3";
3
+ const shortSuite = new Benchmark.Suite("realworld");
4
+ const People = z.array(z.object({
5
+ type: z.literal("person"),
6
+ hair: z.enum(["blue", "brown"]),
7
+ active: z.boolean(),
8
+ name: z.string(),
9
+ age: z.number().int(),
10
+ hobbies: z.array(z.string()),
11
+ address: z.object({
12
+ street: z.string(),
13
+ zip: z.string(),
14
+ country: z.string(),
15
+ }),
16
+ }));
17
+ let i = 0;
18
+ function num() {
19
+ return ++i;
20
+ }
21
+ function str() {
22
+ return (++i % 100).toString(16);
23
+ }
24
+ function array(fn) {
25
+ return Array.from({ length: ++i % 10 }, () => fn());
26
+ }
27
+ const people = Array.from({ length: 100 }, () => {
28
+ return {
29
+ type: "person",
30
+ hair: i % 2 ? "blue" : "brown",
31
+ active: !!(i % 2),
32
+ name: str(),
33
+ age: num(),
34
+ hobbies: array(str),
35
+ address: {
36
+ street: str(),
37
+ zip: str(),
38
+ country: str(),
39
+ },
40
+ };
41
+ });
42
+ shortSuite
43
+ .add("valid", () => {
44
+ People.parse(people);
45
+ })
46
+ .on("cycle", (e) => {
47
+ console.log(`${shortSuite.name}: ${e.target}`);
48
+ });
49
+ export default {
50
+ suites: [shortSuite],
51
+ };
@@ -0,0 +1,50 @@
1
+ import Benchmark from "benchmark";
2
+ import { z } from "zod/v3";
3
+ const SUITE_NAME = "z.string";
4
+ const suite = new Benchmark.Suite(SUITE_NAME);
5
+ const empty = "";
6
+ const short = "short";
7
+ const long = "long".repeat(256);
8
+ const manual = (str) => {
9
+ if (typeof str !== "string") {
10
+ throw new Error("Not a string");
11
+ }
12
+ return str;
13
+ };
14
+ const stringSchema = z.string();
15
+ const optionalStringSchema = z.string().optional();
16
+ const optionalNullableStringSchema = z.string().optional().nullable();
17
+ suite
18
+ .add("empty string", () => {
19
+ stringSchema.parse(empty);
20
+ })
21
+ .add("short string", () => {
22
+ stringSchema.parse(short);
23
+ })
24
+ .add("long string", () => {
25
+ stringSchema.parse(long);
26
+ })
27
+ .add("optional string", () => {
28
+ optionalStringSchema.parse(long);
29
+ })
30
+ .add("nullable string", () => {
31
+ optionalNullableStringSchema.parse(long);
32
+ })
33
+ .add("nullable (null) string", () => {
34
+ optionalNullableStringSchema.parse(null);
35
+ })
36
+ .add("invalid: null", () => {
37
+ try {
38
+ stringSchema.parse(null);
39
+ }
40
+ catch (_err) { }
41
+ })
42
+ .add("manual parser: long", () => {
43
+ manual(long);
44
+ })
45
+ .on("cycle", (e) => {
46
+ console.log(`${SUITE_NAME}: ${e.target}`);
47
+ });
48
+ export default {
49
+ suites: [suite],
50
+ };