blendsdk 5.33.0

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 (538) hide show
  1. package/README.md +125 -0
  2. package/dist/cmdline/cmdline.d.ts +144 -0
  3. package/dist/cmdline/cmdline.d.ts.map +1 -0
  4. package/dist/cmdline/cmdline.js +683 -0
  5. package/dist/cmdline/cmdline.js.map +1 -0
  6. package/dist/cmdline/errors.d.ts +105 -0
  7. package/dist/cmdline/errors.d.ts.map +1 -0
  8. package/dist/cmdline/errors.js +153 -0
  9. package/dist/cmdline/errors.js.map +1 -0
  10. package/dist/cmdline/index.d.ts +5 -0
  11. package/dist/cmdline/index.d.ts.map +1 -0
  12. package/dist/cmdline/index.js +5 -0
  13. package/dist/cmdline/index.js.map +1 -0
  14. package/dist/cmdline/types.d.ts +260 -0
  15. package/dist/cmdline/types.d.ts.map +1 -0
  16. package/dist/cmdline/types.js +9 -0
  17. package/dist/cmdline/types.js.map +1 -0
  18. package/dist/cmdline/validators.d.ts +28 -0
  19. package/dist/cmdline/validators.d.ts.map +1 -0
  20. package/dist/cmdline/validators.js +211 -0
  21. package/dist/cmdline/validators.js.map +1 -0
  22. package/dist/codegen/database/index.d.ts +3 -0
  23. package/dist/codegen/database/index.d.ts.map +1 -0
  24. package/dist/codegen/database/index.js +3 -0
  25. package/dist/codegen/database/index.js.map +1 -0
  26. package/dist/codegen/database/introspect/index.d.ts +3 -0
  27. package/dist/codegen/database/introspect/index.d.ts.map +1 -0
  28. package/dist/codegen/database/introspect/index.js +3 -0
  29. package/dist/codegen/database/introspect/index.js.map +1 -0
  30. package/dist/codegen/database/introspect/introspect-query.d.ts +2 -0
  31. package/dist/codegen/database/introspect/introspect-query.d.ts.map +1 -0
  32. package/dist/codegen/database/introspect/introspect-query.js +416 -0
  33. package/dist/codegen/database/introspect/introspect-query.js.map +1 -0
  34. package/dist/codegen/database/introspect/introspect-types.d.ts +45 -0
  35. package/dist/codegen/database/introspect/introspect-types.d.ts.map +1 -0
  36. package/dist/codegen/database/introspect/introspect-types.js +2 -0
  37. package/dist/codegen/database/introspect/introspect-types.js.map +1 -0
  38. package/dist/codegen/database/introspect/introspect.d.ts +21 -0
  39. package/dist/codegen/database/introspect/introspect.d.ts.map +1 -0
  40. package/dist/codegen/database/introspect/introspect.js +223 -0
  41. package/dist/codegen/database/introspect/introspect.js.map +1 -0
  42. package/dist/codegen/database/schema/check-constraint.d.ts +8 -0
  43. package/dist/codegen/database/schema/check-constraint.d.ts.map +1 -0
  44. package/dist/codegen/database/schema/check-constraint.js +12 -0
  45. package/dist/codegen/database/schema/check-constraint.js.map +1 -0
  46. package/dist/codegen/database/schema/column-schema.d.ts +7 -0
  47. package/dist/codegen/database/schema/column-schema.d.ts.map +1 -0
  48. package/dist/codegen/database/schema/column-schema.js +9 -0
  49. package/dist/codegen/database/schema/column-schema.js.map +1 -0
  50. package/dist/codegen/database/schema/constraint-base.d.ts +13 -0
  51. package/dist/codegen/database/schema/constraint-base.d.ts.map +1 -0
  52. package/dist/codegen/database/schema/constraint-base.js +32 -0
  53. package/dist/codegen/database/schema/constraint-base.js.map +1 -0
  54. package/dist/codegen/database/schema/database-schema.d.ts +19 -0
  55. package/dist/codegen/database/schema/database-schema.d.ts.map +1 -0
  56. package/dist/codegen/database/schema/database-schema.js +48 -0
  57. package/dist/codegen/database/schema/database-schema.js.map +1 -0
  58. package/dist/codegen/database/schema/dataobject-schema.d.ts +9 -0
  59. package/dist/codegen/database/schema/dataobject-schema.d.ts.map +1 -0
  60. package/dist/codegen/database/schema/dataobject-schema.js +18 -0
  61. package/dist/codegen/database/schema/dataobject-schema.js.map +1 -0
  62. package/dist/codegen/database/schema/fkey-constraints.d.ts +21 -0
  63. package/dist/codegen/database/schema/fkey-constraints.d.ts.map +1 -0
  64. package/dist/codegen/database/schema/fkey-constraints.js +58 -0
  65. package/dist/codegen/database/schema/fkey-constraints.js.map +1 -0
  66. package/dist/codegen/database/schema/index-constraint.d.ts +34 -0
  67. package/dist/codegen/database/schema/index-constraint.d.ts.map +1 -0
  68. package/dist/codegen/database/schema/index-constraint.js +79 -0
  69. package/dist/codegen/database/schema/index-constraint.js.map +1 -0
  70. package/dist/codegen/database/schema/index.d.ts +5 -0
  71. package/dist/codegen/database/schema/index.d.ts.map +1 -0
  72. package/dist/codegen/database/schema/index.js +5 -0
  73. package/dist/codegen/database/schema/index.js.map +1 -0
  74. package/dist/codegen/database/schema/primarykey-constraint.d.ts +4 -0
  75. package/dist/codegen/database/schema/primarykey-constraint.d.ts.map +1 -0
  76. package/dist/codegen/database/schema/primarykey-constraint.js +4 -0
  77. package/dist/codegen/database/schema/primarykey-constraint.js.map +1 -0
  78. package/dist/codegen/database/schema/relation-schema.d.ts +16 -0
  79. package/dist/codegen/database/schema/relation-schema.d.ts.map +1 -0
  80. package/dist/codegen/database/schema/relation-schema.js +32 -0
  81. package/dist/codegen/database/schema/relation-schema.js.map +1 -0
  82. package/dist/codegen/database/schema/table-column-schema.d.ts +59 -0
  83. package/dist/codegen/database/schema/table-column-schema.d.ts.map +1 -0
  84. package/dist/codegen/database/schema/table-column-schema.js +137 -0
  85. package/dist/codegen/database/schema/table-column-schema.js.map +1 -0
  86. package/dist/codegen/database/schema/table-schema.d.ts +48 -0
  87. package/dist/codegen/database/schema/table-schema.d.ts.map +1 -0
  88. package/dist/codegen/database/schema/table-schema.js +219 -0
  89. package/dist/codegen/database/schema/table-schema.js.map +1 -0
  90. package/dist/codegen/database/schema/types.d.ts +13 -0
  91. package/dist/codegen/database/schema/types.d.ts.map +1 -0
  92. package/dist/codegen/database/schema/types.js +175 -0
  93. package/dist/codegen/database/schema/types.js.map +1 -0
  94. package/dist/codegen/database/schema/unique-constraint.d.ts +4 -0
  95. package/dist/codegen/database/schema/unique-constraint.d.ts.map +1 -0
  96. package/dist/codegen/database/schema/unique-constraint.js +4 -0
  97. package/dist/codegen/database/schema/unique-constraint.js.map +1 -0
  98. package/dist/codegen/database/schema/view-schema.d.ts +14 -0
  99. package/dist/codegen/database/schema/view-schema.d.ts.map +1 -0
  100. package/dist/codegen/database/schema/view-schema.js +32 -0
  101. package/dist/codegen/database/schema/view-schema.js.map +1 -0
  102. package/dist/codegen/generator/ctype-generator.d.ts +5 -0
  103. package/dist/codegen/generator/ctype-generator.d.ts.map +1 -0
  104. package/dist/codegen/generator/ctype-generator.js +26 -0
  105. package/dist/codegen/generator/ctype-generator.js.map +1 -0
  106. package/dist/codegen/generator/generator.d.ts +17 -0
  107. package/dist/codegen/generator/generator.d.ts.map +1 -0
  108. package/dist/codegen/generator/generator.js +57 -0
  109. package/dist/codegen/generator/generator.js.map +1 -0
  110. package/dist/codegen/generator/index.d.ts +8 -0
  111. package/dist/codegen/generator/index.d.ts.map +1 -0
  112. package/dist/codegen/generator/index.js +8 -0
  113. package/dist/codegen/generator/index.js.map +1 -0
  114. package/dist/codegen/generator/openapi-generator.d.ts +239 -0
  115. package/dist/codegen/generator/openapi-generator.d.ts.map +1 -0
  116. package/dist/codegen/generator/openapi-generator.js +434 -0
  117. package/dist/codegen/generator/openapi-generator.js.map +1 -0
  118. package/dist/codegen/generator/openapi-types.d.ts +263 -0
  119. package/dist/codegen/generator/openapi-types.d.ts.map +1 -0
  120. package/dist/codegen/generator/openapi-types.js +11 -0
  121. package/dist/codegen/generator/openapi-types.js.map +1 -0
  122. package/dist/codegen/generator/postgres-schema-generator.d.ts +48 -0
  123. package/dist/codegen/generator/postgres-schema-generator.d.ts.map +1 -0
  124. package/dist/codegen/generator/postgres-schema-generator.js +339 -0
  125. package/dist/codegen/generator/postgres-schema-generator.js.map +1 -0
  126. package/dist/codegen/generator/type-generator.d.ts +113 -0
  127. package/dist/codegen/generator/type-generator.d.ts.map +1 -0
  128. package/dist/codegen/generator/type-generator.js +249 -0
  129. package/dist/codegen/generator/type-generator.js.map +1 -0
  130. package/dist/codegen/generator/zod-generator.d.ts +15 -0
  131. package/dist/codegen/generator/zod-generator.d.ts.map +1 -0
  132. package/dist/codegen/generator/zod-generator.js +86 -0
  133. package/dist/codegen/generator/zod-generator.js.map +1 -0
  134. package/dist/codegen/generator/zod-to-openapi.d.ts +69 -0
  135. package/dist/codegen/generator/zod-to-openapi.d.ts.map +1 -0
  136. package/dist/codegen/generator/zod-to-openapi.js +480 -0
  137. package/dist/codegen/generator/zod-to-openapi.js.map +1 -0
  138. package/dist/codegen/index.d.ts +4 -0
  139. package/dist/codegen/index.d.ts.map +1 -0
  140. package/dist/codegen/index.js +4 -0
  141. package/dist/codegen/index.js.map +1 -0
  142. package/dist/codegen/schema/any-schema.d.ts +6 -0
  143. package/dist/codegen/schema/any-schema.d.ts.map +1 -0
  144. package/dist/codegen/schema/any-schema.js +12 -0
  145. package/dist/codegen/schema/any-schema.js.map +1 -0
  146. package/dist/codegen/schema/boolean-schema.d.ts +6 -0
  147. package/dist/codegen/schema/boolean-schema.d.ts.map +1 -0
  148. package/dist/codegen/schema/boolean-schema.js +12 -0
  149. package/dist/codegen/schema/boolean-schema.js.map +1 -0
  150. package/dist/codegen/schema/date-schema.d.ts +6 -0
  151. package/dist/codegen/schema/date-schema.d.ts.map +1 -0
  152. package/dist/codegen/schema/date-schema.js +12 -0
  153. package/dist/codegen/schema/date-schema.js.map +1 -0
  154. package/dist/codegen/schema/index.d.ts +10 -0
  155. package/dist/codegen/schema/index.d.ts.map +1 -0
  156. package/dist/codegen/schema/index.js +10 -0
  157. package/dist/codegen/schema/index.js.map +1 -0
  158. package/dist/codegen/schema/object-schema.d.ts +10 -0
  159. package/dist/codegen/schema/object-schema.d.ts.map +1 -0
  160. package/dist/codegen/schema/object-schema.js +21 -0
  161. package/dist/codegen/schema/object-schema.js.map +1 -0
  162. package/dist/codegen/schema/primitive-schema.d.ts +20 -0
  163. package/dist/codegen/schema/primitive-schema.d.ts.map +1 -0
  164. package/dist/codegen/schema/primitive-schema.js +48 -0
  165. package/dist/codegen/schema/primitive-schema.js.map +1 -0
  166. package/dist/codegen/schema/ref-schema.d.ts +6 -0
  167. package/dist/codegen/schema/ref-schema.d.ts.map +1 -0
  168. package/dist/codegen/schema/ref-schema.js +11 -0
  169. package/dist/codegen/schema/ref-schema.js.map +1 -0
  170. package/dist/codegen/schema/schema-container.d.ts +14 -0
  171. package/dist/codegen/schema/schema-container.d.ts.map +1 -0
  172. package/dist/codegen/schema/schema-container.js +38 -0
  173. package/dist/codegen/schema/schema-container.js.map +1 -0
  174. package/dist/codegen/schema/schema-object.d.ts +42 -0
  175. package/dist/codegen/schema/schema-object.d.ts.map +1 -0
  176. package/dist/codegen/schema/schema-object.js +90 -0
  177. package/dist/codegen/schema/schema-object.js.map +1 -0
  178. package/dist/codegen/schema/schema-scope.d.ts +23 -0
  179. package/dist/codegen/schema/schema-scope.d.ts.map +1 -0
  180. package/dist/codegen/schema/schema-scope.js +67 -0
  181. package/dist/codegen/schema/schema-scope.js.map +1 -0
  182. package/dist/codegen/schema/utils.d.ts +17 -0
  183. package/dist/codegen/schema/utils.d.ts.map +1 -0
  184. package/dist/codegen/schema/utils.js +47 -0
  185. package/dist/codegen/schema/utils.js.map +1 -0
  186. package/dist/dbcore/crud-statement.d.ts +67 -0
  187. package/dist/dbcore/crud-statement.d.ts.map +1 -0
  188. package/dist/dbcore/crud-statement.js +75 -0
  189. package/dist/dbcore/crud-statement.js.map +1 -0
  190. package/dist/dbcore/database.d.ts +272 -0
  191. package/dist/dbcore/database.d.ts.map +1 -0
  192. package/dist/dbcore/database.js +53 -0
  193. package/dist/dbcore/database.js.map +1 -0
  194. package/dist/dbcore/dataservice-base.d.ts +18 -0
  195. package/dist/dbcore/dataservice-base.d.ts.map +1 -0
  196. package/dist/dbcore/dataservice-base.js +19 -0
  197. package/dist/dbcore/dataservice-base.js.map +1 -0
  198. package/dist/dbcore/delete-statement.d.ts +29 -0
  199. package/dist/dbcore/delete-statement.d.ts.map +1 -0
  200. package/dist/dbcore/delete-statement.js +30 -0
  201. package/dist/dbcore/delete-statement.js.map +1 -0
  202. package/dist/dbcore/filterable-statement.d.ts +126 -0
  203. package/dist/dbcore/filterable-statement.d.ts.map +1 -0
  204. package/dist/dbcore/filterable-statement.js +178 -0
  205. package/dist/dbcore/filterable-statement.js.map +1 -0
  206. package/dist/dbcore/from-statement.d.ts +120 -0
  207. package/dist/dbcore/from-statement.d.ts.map +1 -0
  208. package/dist/dbcore/from-statement.js +150 -0
  209. package/dist/dbcore/from-statement.js.map +1 -0
  210. package/dist/dbcore/index.d.ts +21 -0
  211. package/dist/dbcore/index.d.ts.map +1 -0
  212. package/dist/dbcore/index.js +21 -0
  213. package/dist/dbcore/index.js.map +1 -0
  214. package/dist/dbcore/insert-statement.d.ts +48 -0
  215. package/dist/dbcore/insert-statement.d.ts.map +1 -0
  216. package/dist/dbcore/insert-statement.js +52 -0
  217. package/dist/dbcore/insert-statement.js.map +1 -0
  218. package/dist/dbcore/query-dataservice.d.ts +144 -0
  219. package/dist/dbcore/query-dataservice.d.ts.map +1 -0
  220. package/dist/dbcore/query-dataservice.js +144 -0
  221. package/dist/dbcore/query-dataservice.js.map +1 -0
  222. package/dist/dbcore/statement.d.ts +133 -0
  223. package/dist/dbcore/statement.d.ts.map +1 -0
  224. package/dist/dbcore/statement.js +138 -0
  225. package/dist/dbcore/statement.js.map +1 -0
  226. package/dist/dbcore/update-statement.d.ts +48 -0
  227. package/dist/dbcore/update-statement.d.ts.map +1 -0
  228. package/dist/dbcore/update-statement.js +52 -0
  229. package/dist/dbcore/update-statement.js.map +1 -0
  230. package/dist/expression/builders/comparison-builder.d.ts +47 -0
  231. package/dist/expression/builders/comparison-builder.d.ts.map +1 -0
  232. package/dist/expression/builders/comparison-builder.js +197 -0
  233. package/dist/expression/builders/comparison-builder.js.map +1 -0
  234. package/dist/expression/builders/query-builder.d.ts +80 -0
  235. package/dist/expression/builders/query-builder.d.ts.map +1 -0
  236. package/dist/expression/builders/query-builder.js +229 -0
  237. package/dist/expression/builders/query-builder.js.map +1 -0
  238. package/dist/expression/compiler/postgresql-compiler.d.ts +56 -0
  239. package/dist/expression/compiler/postgresql-compiler.d.ts.map +1 -0
  240. package/dist/expression/compiler/postgresql-compiler.js +217 -0
  241. package/dist/expression/compiler/postgresql-compiler.js.map +1 -0
  242. package/dist/expression/core/ast-node.d.ts +47 -0
  243. package/dist/expression/core/ast-node.d.ts.map +1 -0
  244. package/dist/expression/core/ast-node.js +154 -0
  245. package/dist/expression/core/ast-node.js.map +1 -0
  246. package/dist/expression/core/parameter-manager.d.ts +84 -0
  247. package/dist/expression/core/parameter-manager.d.ts.map +1 -0
  248. package/dist/expression/core/parameter-manager.js +164 -0
  249. package/dist/expression/core/parameter-manager.js.map +1 -0
  250. package/dist/expression/core/query-builder-interfaces.d.ts +188 -0
  251. package/dist/expression/core/query-builder-interfaces.d.ts.map +1 -0
  252. package/dist/expression/core/query-builder-interfaces.js +6 -0
  253. package/dist/expression/core/query-builder-interfaces.js.map +1 -0
  254. package/dist/expression/core/types.d.ts +239 -0
  255. package/dist/expression/core/types.d.ts.map +1 -0
  256. package/dist/expression/core/types.js +121 -0
  257. package/dist/expression/core/types.js.map +1 -0
  258. package/dist/expression/index.d.ts +11 -0
  259. package/dist/expression/index.d.ts.map +1 -0
  260. package/dist/expression/index.js +11 -0
  261. package/dist/expression/index.js.map +1 -0
  262. package/dist/i18n/content-file-source.d.ts +109 -0
  263. package/dist/i18n/content-file-source.d.ts.map +1 -0
  264. package/dist/i18n/content-file-source.js +218 -0
  265. package/dist/i18n/content-file-source.js.map +1 -0
  266. package/dist/i18n/index.d.ts +19 -0
  267. package/dist/i18n/index.d.ts.map +1 -0
  268. package/dist/i18n/index.js +21 -0
  269. package/dist/i18n/index.js.map +1 -0
  270. package/dist/i18n/json-file-source.d.ts +96 -0
  271. package/dist/i18n/json-file-source.d.ts.map +1 -0
  272. package/dist/i18n/json-file-source.js +258 -0
  273. package/dist/i18n/json-file-source.js.map +1 -0
  274. package/dist/i18n/merge-catalogs.d.ts +20 -0
  275. package/dist/i18n/merge-catalogs.d.ts.map +1 -0
  276. package/dist/i18n/merge-catalogs.js +34 -0
  277. package/dist/i18n/merge-catalogs.js.map +1 -0
  278. package/dist/i18n/node.d.ts +20 -0
  279. package/dist/i18n/node.d.ts.map +1 -0
  280. package/dist/i18n/node.js +19 -0
  281. package/dist/i18n/node.js.map +1 -0
  282. package/dist/i18n/translation-source.d.ts +35 -0
  283. package/dist/i18n/translation-source.d.ts.map +1 -0
  284. package/dist/i18n/translation-source.js +2 -0
  285. package/dist/i18n/translation-source.js.map +1 -0
  286. package/dist/i18n/translator.d.ts +162 -0
  287. package/dist/i18n/translator.d.ts.map +1 -0
  288. package/dist/i18n/translator.js +259 -0
  289. package/dist/i18n/translator.js.map +1 -0
  290. package/dist/i18n/types.d.ts +80 -0
  291. package/dist/i18n/types.d.ts.map +1 -0
  292. package/dist/i18n/types.js +2 -0
  293. package/dist/i18n/types.js.map +1 -0
  294. package/dist/postgresql/database.d.ts +204 -0
  295. package/dist/postgresql/database.d.ts.map +1 -0
  296. package/dist/postgresql/database.js +321 -0
  297. package/dist/postgresql/database.js.map +1 -0
  298. package/dist/postgresql/delete-statement.d.ts +36 -0
  299. package/dist/postgresql/delete-statement.d.ts.map +1 -0
  300. package/dist/postgresql/delete-statement.js +54 -0
  301. package/dist/postgresql/delete-statement.js.map +1 -0
  302. package/dist/postgresql/index.d.ts +12 -0
  303. package/dist/postgresql/index.d.ts.map +1 -0
  304. package/dist/postgresql/index.js +12 -0
  305. package/dist/postgresql/index.js.map +1 -0
  306. package/dist/postgresql/insert-statement.d.ts +34 -0
  307. package/dist/postgresql/insert-statement.d.ts.map +1 -0
  308. package/dist/postgresql/insert-statement.js +48 -0
  309. package/dist/postgresql/insert-statement.js.map +1 -0
  310. package/dist/postgresql/update-statement.d.ts +38 -0
  311. package/dist/postgresql/update-statement.d.ts.map +1 -0
  312. package/dist/postgresql/update-statement.js +75 -0
  313. package/dist/postgresql/update-statement.js.map +1 -0
  314. package/dist/stdlib/formatString.d.ts +52 -0
  315. package/dist/stdlib/formatString.d.ts.map +1 -0
  316. package/dist/stdlib/formatString.js +118 -0
  317. package/dist/stdlib/formatString.js.map +1 -0
  318. package/dist/stdlib/index.d.ts +8 -0
  319. package/dist/stdlib/index.d.ts.map +1 -0
  320. package/dist/stdlib/index.js +8 -0
  321. package/dist/stdlib/index.js.map +1 -0
  322. package/dist/stdlib/isBoolean.d.ts +15 -0
  323. package/dist/stdlib/isBoolean.d.ts.map +1 -0
  324. package/dist/stdlib/isBoolean.js +17 -0
  325. package/dist/stdlib/isBoolean.js.map +1 -0
  326. package/dist/stdlib/isNullOrUndef.d.ts +24 -0
  327. package/dist/stdlib/isNullOrUndef.d.ts.map +1 -0
  328. package/dist/stdlib/isNullOrUndef.js +28 -0
  329. package/dist/stdlib/isNullOrUndef.js.map +1 -0
  330. package/dist/stdlib/isNumeric.d.ts +20 -0
  331. package/dist/stdlib/isNumeric.d.ts.map +1 -0
  332. package/dist/stdlib/isNumeric.js +39 -0
  333. package/dist/stdlib/isNumeric.js.map +1 -0
  334. package/dist/stdlib/isString.d.ts +15 -0
  335. package/dist/stdlib/isString.d.ts.map +1 -0
  336. package/dist/stdlib/isString.js +17 -0
  337. package/dist/stdlib/isString.js.map +1 -0
  338. package/dist/stdlib/isTemplateString.d.ts +18 -0
  339. package/dist/stdlib/isTemplateString.d.ts.map +1 -0
  340. package/dist/stdlib/isTemplateString.js +38 -0
  341. package/dist/stdlib/isTemplateString.js.map +1 -0
  342. package/dist/stdlib/wrapInArray.d.ts +14 -0
  343. package/dist/stdlib/wrapInArray.d.ts.map +1 -0
  344. package/dist/stdlib/wrapInArray.js +17 -0
  345. package/dist/stdlib/wrapInArray.js.map +1 -0
  346. package/dist/webafx/application/application-settings.d.ts +129 -0
  347. package/dist/webafx/application/application-settings.d.ts.map +1 -0
  348. package/dist/webafx/application/application-settings.js +162 -0
  349. package/dist/webafx/application/application-settings.js.map +1 -0
  350. package/dist/webafx/application/base-controller.d.ts +128 -0
  351. package/dist/webafx/application/base-controller.d.ts.map +1 -0
  352. package/dist/webafx/application/base-controller.js +122 -0
  353. package/dist/webafx/application/base-controller.js.map +1 -0
  354. package/dist/webafx/application/console-logger.d.ts +81 -0
  355. package/dist/webafx/application/console-logger.d.ts.map +1 -0
  356. package/dist/webafx/application/console-logger.js +111 -0
  357. package/dist/webafx/application/console-logger.js.map +1 -0
  358. package/dist/webafx/application/controller-registry.d.ts +34 -0
  359. package/dist/webafx/application/controller-registry.d.ts.map +1 -0
  360. package/dist/webafx/application/controller-registry.js +32 -0
  361. package/dist/webafx/application/controller-registry.js.map +1 -0
  362. package/dist/webafx/application/error-handler-middleware.d.ts +22 -0
  363. package/dist/webafx/application/error-handler-middleware.d.ts.map +1 -0
  364. package/dist/webafx/application/error-handler-middleware.js +70 -0
  365. package/dist/webafx/application/error-handler-middleware.js.map +1 -0
  366. package/dist/webafx/application/index.d.ts +13 -0
  367. package/dist/webafx/application/index.d.ts.map +1 -0
  368. package/dist/webafx/application/index.js +13 -0
  369. package/dist/webafx/application/index.js.map +1 -0
  370. package/dist/webafx/application/logger.d.ts +2 -0
  371. package/dist/webafx/application/logger.d.ts.map +1 -0
  372. package/dist/webafx/application/logger.js +2 -0
  373. package/dist/webafx/application/logger.js.map +1 -0
  374. package/dist/webafx/application/plugin.d.ts +73 -0
  375. package/dist/webafx/application/plugin.d.ts.map +1 -0
  376. package/dist/webafx/application/plugin.js +90 -0
  377. package/dist/webafx/application/plugin.js.map +1 -0
  378. package/dist/webafx/application/rate-limiter.d.ts +35 -0
  379. package/dist/webafx/application/rate-limiter.d.ts.map +1 -0
  380. package/dist/webafx/application/rate-limiter.js +74 -0
  381. package/dist/webafx/application/rate-limiter.js.map +1 -0
  382. package/dist/webafx/application/request-context.d.ts +62 -0
  383. package/dist/webafx/application/request-context.d.ts.map +1 -0
  384. package/dist/webafx/application/request-context.js +54 -0
  385. package/dist/webafx/application/request-context.js.map +1 -0
  386. package/dist/webafx/application/request-id-middleware.d.ts +30 -0
  387. package/dist/webafx/application/request-id-middleware.d.ts.map +1 -0
  388. package/dist/webafx/application/request-id-middleware.js +57 -0
  389. package/dist/webafx/application/request-id-middleware.js.map +1 -0
  390. package/dist/webafx/application/route-builder.d.ts +231 -0
  391. package/dist/webafx/application/route-builder.d.ts.map +1 -0
  392. package/dist/webafx/application/route-builder.js +182 -0
  393. package/dist/webafx/application/route-builder.js.map +1 -0
  394. package/dist/webafx/application/service-container.d.ts +144 -0
  395. package/dist/webafx/application/service-container.d.ts.map +1 -0
  396. package/dist/webafx/application/service-container.js +192 -0
  397. package/dist/webafx/application/service-container.js.map +1 -0
  398. package/dist/webafx/application/services.d.ts +27 -0
  399. package/dist/webafx/application/services.d.ts.map +1 -0
  400. package/dist/webafx/application/services.js +33 -0
  401. package/dist/webafx/application/services.js.map +1 -0
  402. package/dist/webafx/application/structured-logger.d.ts +99 -0
  403. package/dist/webafx/application/structured-logger.d.ts.map +1 -0
  404. package/dist/webafx/application/structured-logger.js +132 -0
  405. package/dist/webafx/application/structured-logger.js.map +1 -0
  406. package/dist/webafx/application/type.d.ts +29 -0
  407. package/dist/webafx/application/type.d.ts.map +1 -0
  408. package/dist/webafx/application/type.js +2 -0
  409. package/dist/webafx/application/type.js.map +1 -0
  410. package/dist/webafx/application/web-application.d.ts +257 -0
  411. package/dist/webafx/application/web-application.d.ts.map +1 -0
  412. package/dist/webafx/application/web-application.js +611 -0
  413. package/dist/webafx/application/web-application.js.map +1 -0
  414. package/dist/webafx/errors/api-error.d.ts +21 -0
  415. package/dist/webafx/errors/api-error.d.ts.map +1 -0
  416. package/dist/webafx/errors/api-error.js +38 -0
  417. package/dist/webafx/errors/api-error.js.map +1 -0
  418. package/dist/webafx/errors/http-errors.d.ts +56 -0
  419. package/dist/webafx/errors/http-errors.d.ts.map +1 -0
  420. package/dist/webafx/errors/http-errors.js +74 -0
  421. package/dist/webafx/errors/http-errors.js.map +1 -0
  422. package/dist/webafx/errors/index.d.ts +4 -0
  423. package/dist/webafx/errors/index.d.ts.map +1 -0
  424. package/dist/webafx/errors/index.js +4 -0
  425. package/dist/webafx/errors/index.js.map +1 -0
  426. package/dist/webafx/errors/types.d.ts +42 -0
  427. package/dist/webafx/errors/types.d.ts.map +1 -0
  428. package/dist/webafx/errors/types.js +2 -0
  429. package/dist/webafx/errors/types.js.map +1 -0
  430. package/dist/webafx/index.d.ts +3 -0
  431. package/dist/webafx/index.d.ts.map +1 -0
  432. package/dist/webafx/index.js +3 -0
  433. package/dist/webafx/index.js.map +1 -0
  434. package/dist/webafx-auth/abstract-auth-provider.d.ts +178 -0
  435. package/dist/webafx-auth/abstract-auth-provider.d.ts.map +1 -0
  436. package/dist/webafx-auth/abstract-auth-provider.js +240 -0
  437. package/dist/webafx-auth/abstract-auth-provider.js.map +1 -0
  438. package/dist/webafx-auth/index.d.ts +27 -0
  439. package/dist/webafx-auth/index.d.ts.map +1 -0
  440. package/dist/webafx-auth/index.js +32 -0
  441. package/dist/webafx-auth/index.js.map +1 -0
  442. package/dist/webafx-auth/jwt-auth-provider.d.ts +100 -0
  443. package/dist/webafx-auth/jwt-auth-provider.d.ts.map +1 -0
  444. package/dist/webafx-auth/jwt-auth-provider.js +154 -0
  445. package/dist/webafx-auth/jwt-auth-provider.js.map +1 -0
  446. package/dist/webafx-auth/memory-auth-provider.d.ts +100 -0
  447. package/dist/webafx-auth/memory-auth-provider.d.ts.map +1 -0
  448. package/dist/webafx-auth/memory-auth-provider.js +122 -0
  449. package/dist/webafx-auth/memory-auth-provider.js.map +1 -0
  450. package/dist/webafx-auth/types.d.ts +333 -0
  451. package/dist/webafx-auth/types.d.ts.map +1 -0
  452. package/dist/webafx-auth/types.js +24 -0
  453. package/dist/webafx-auth/types.js.map +1 -0
  454. package/dist/webafx-cache/abstract-cache-provider.d.ts +185 -0
  455. package/dist/webafx-cache/abstract-cache-provider.d.ts.map +1 -0
  456. package/dist/webafx-cache/abstract-cache-provider.js +133 -0
  457. package/dist/webafx-cache/abstract-cache-provider.js.map +1 -0
  458. package/dist/webafx-cache/abstract-pubsub-provider.d.ts +170 -0
  459. package/dist/webafx-cache/abstract-pubsub-provider.d.ts.map +1 -0
  460. package/dist/webafx-cache/abstract-pubsub-provider.js +132 -0
  461. package/dist/webafx-cache/abstract-pubsub-provider.js.map +1 -0
  462. package/dist/webafx-cache/cache-plugin.d.ts +114 -0
  463. package/dist/webafx-cache/cache-plugin.d.ts.map +1 -0
  464. package/dist/webafx-cache/cache-plugin.js +176 -0
  465. package/dist/webafx-cache/cache-plugin.js.map +1 -0
  466. package/dist/webafx-cache/index.d.ts +33 -0
  467. package/dist/webafx-cache/index.d.ts.map +1 -0
  468. package/dist/webafx-cache/index.js +44 -0
  469. package/dist/webafx-cache/index.js.map +1 -0
  470. package/dist/webafx-cache/memory-cache-provider.d.ts +99 -0
  471. package/dist/webafx-cache/memory-cache-provider.d.ts.map +1 -0
  472. package/dist/webafx-cache/memory-cache-provider.js +251 -0
  473. package/dist/webafx-cache/memory-cache-provider.js.map +1 -0
  474. package/dist/webafx-cache/memory-pubsub-provider.d.ts +124 -0
  475. package/dist/webafx-cache/memory-pubsub-provider.d.ts.map +1 -0
  476. package/dist/webafx-cache/memory-pubsub-provider.js +195 -0
  477. package/dist/webafx-cache/memory-pubsub-provider.js.map +1 -0
  478. package/dist/webafx-cache/pubsub-plugin.d.ts +128 -0
  479. package/dist/webafx-cache/pubsub-plugin.d.ts.map +1 -0
  480. package/dist/webafx-cache/pubsub-plugin.js +182 -0
  481. package/dist/webafx-cache/pubsub-plugin.js.map +1 -0
  482. package/dist/webafx-cache/redis-cache-provider.d.ts +81 -0
  483. package/dist/webafx-cache/redis-cache-provider.d.ts.map +1 -0
  484. package/dist/webafx-cache/redis-cache-provider.js +209 -0
  485. package/dist/webafx-cache/redis-cache-provider.js.map +1 -0
  486. package/dist/webafx-cache/redis-pubsub-provider.d.ts +164 -0
  487. package/dist/webafx-cache/redis-pubsub-provider.d.ts.map +1 -0
  488. package/dist/webafx-cache/redis-pubsub-provider.js +329 -0
  489. package/dist/webafx-cache/redis-pubsub-provider.js.map +1 -0
  490. package/dist/webafx-cache/types.d.ts +206 -0
  491. package/dist/webafx-cache/types.d.ts.map +1 -0
  492. package/dist/webafx-cache/types.js +27 -0
  493. package/dist/webafx-cache/types.js.map +1 -0
  494. package/dist/webafx-i18n/i18n-plugin.d.ts +29 -0
  495. package/dist/webafx-i18n/i18n-plugin.d.ts.map +1 -0
  496. package/dist/webafx-i18n/i18n-plugin.js +145 -0
  497. package/dist/webafx-i18n/i18n-plugin.js.map +1 -0
  498. package/dist/webafx-i18n/index.d.ts +12 -0
  499. package/dist/webafx-i18n/index.d.ts.map +1 -0
  500. package/dist/webafx-i18n/index.js +12 -0
  501. package/dist/webafx-i18n/index.js.map +1 -0
  502. package/dist/webafx-i18n/locale-resolver.d.ts +33 -0
  503. package/dist/webafx-i18n/locale-resolver.d.ts.map +1 -0
  504. package/dist/webafx-i18n/locale-resolver.js +67 -0
  505. package/dist/webafx-i18n/locale-resolver.js.map +1 -0
  506. package/dist/webafx-i18n/postgresql-source.d.ts +101 -0
  507. package/dist/webafx-i18n/postgresql-source.d.ts.map +1 -0
  508. package/dist/webafx-i18n/postgresql-source.js +101 -0
  509. package/dist/webafx-i18n/postgresql-source.js.map +1 -0
  510. package/dist/webafx-i18n/types.d.ts +70 -0
  511. package/dist/webafx-i18n/types.d.ts.map +1 -0
  512. package/dist/webafx-i18n/types.js +2 -0
  513. package/dist/webafx-i18n/types.js.map +1 -0
  514. package/dist/webafx-mailer/abstract-mail-provider.d.ts +55 -0
  515. package/dist/webafx-mailer/abstract-mail-provider.d.ts.map +1 -0
  516. package/dist/webafx-mailer/abstract-mail-provider.js +37 -0
  517. package/dist/webafx-mailer/abstract-mail-provider.js.map +1 -0
  518. package/dist/webafx-mailer/index.d.ts +24 -0
  519. package/dist/webafx-mailer/index.d.ts.map +1 -0
  520. package/dist/webafx-mailer/index.js +34 -0
  521. package/dist/webafx-mailer/index.js.map +1 -0
  522. package/dist/webafx-mailer/mail-plugin.d.ts +98 -0
  523. package/dist/webafx-mailer/mail-plugin.d.ts.map +1 -0
  524. package/dist/webafx-mailer/mail-plugin.js +155 -0
  525. package/dist/webafx-mailer/mail-plugin.js.map +1 -0
  526. package/dist/webafx-mailer/memory-mail-provider.d.ts +85 -0
  527. package/dist/webafx-mailer/memory-mail-provider.d.ts.map +1 -0
  528. package/dist/webafx-mailer/memory-mail-provider.js +111 -0
  529. package/dist/webafx-mailer/memory-mail-provider.js.map +1 -0
  530. package/dist/webafx-mailer/smtp-mail-provider.d.ts +65 -0
  531. package/dist/webafx-mailer/smtp-mail-provider.d.ts.map +1 -0
  532. package/dist/webafx-mailer/smtp-mail-provider.js +113 -0
  533. package/dist/webafx-mailer/smtp-mail-provider.js.map +1 -0
  534. package/dist/webafx-mailer/types.d.ts +136 -0
  535. package/dist/webafx-mailer/types.d.ts.map +1 -0
  536. package/dist/webafx-mailer/types.js +13 -0
  537. package/dist/webafx-mailer/types.js.map +1 -0
  538. package/package.json +159 -0
@@ -0,0 +1,480 @@
1
+ // ─── Public API ─────────────────────────────────────────────────────────────
2
+ /**
3
+ * Convert a Zod v4 schema to an OpenAPI JSON Schema object.
4
+ *
5
+ * This is the main entry point for schema conversion. It extracts the
6
+ * internal `_zod` node from the schema and delegates to the recursive
7
+ * node converter.
8
+ *
9
+ * @param zodSchema - Any Zod v4 schema instance (z.string(), z.object(), etc.)
10
+ * @returns An OpenAPI-compatible JSON Schema object
11
+ *
12
+ * @example
13
+ * ```typescript
14
+ * import { z } from 'zod';
15
+ * import { zodToOpenAPISchema } from './zod-to-openapi.js';
16
+ *
17
+ * const schema = z.object({ name: z.string().min(1), age: z.number().int() });
18
+ * const openApiSchema = zodToOpenAPISchema(schema);
19
+ * // { type: 'object', properties: { name: { type: 'string', minLength: 1 }, age: { type: 'integer' } }, required: ['name', 'age'] }
20
+ * ```
21
+ */
22
+ export function zodToOpenAPISchema(zodSchema) {
23
+ const node = extractZodNode(zodSchema);
24
+ if (!node) {
25
+ // Fallback for unrecognized schemas
26
+ return { type: 'object' };
27
+ }
28
+ return convertNode(node);
29
+ }
30
+ /**
31
+ * Convert a Zod v4 object schema into an array of OpenAPI query parameters.
32
+ *
33
+ * Each top-level property of the Zod object becomes a separate query parameter.
34
+ * Optional properties become non-required parameters. Default values are included.
35
+ *
36
+ * @param zodSchema - A Zod v4 object schema (z.object({ ... }))
37
+ * @returns Array of OpenAPI parameter objects with `in: 'query'`
38
+ *
39
+ * @example
40
+ * ```typescript
41
+ * const schema = z.object({
42
+ * page: z.coerce.number().default(1),
43
+ * search: z.string().optional(),
44
+ * });
45
+ * const params = zodToQueryParameters(schema);
46
+ * // [
47
+ * // { name: 'page', in: 'query', schema: { type: 'number', default: 1 } },
48
+ * // { name: 'search', in: 'query', schema: { type: 'string' } },
49
+ * // ]
50
+ * ```
51
+ */
52
+ export function zodToQueryParameters(zodSchema) {
53
+ const node = extractZodNode(zodSchema);
54
+ if (!node) {
55
+ return [];
56
+ }
57
+ // Unwrap wrappers (optional, default, nullable) to find the object schema
58
+ const objectNode = unwrapToObject(node);
59
+ if (!objectNode || objectNode.def.type !== 'object' || !objectNode.def.shape) {
60
+ return [];
61
+ }
62
+ const parameters = [];
63
+ for (const [propName, propNode] of Object.entries(objectNode.def.shape)) {
64
+ const { schema: propSchema, isOptional } = convertPropertyWithOptional(propNode);
65
+ const param = {
66
+ name: propName,
67
+ in: 'query',
68
+ schema: propSchema,
69
+ };
70
+ // Query params are required only if the property is not optional/default
71
+ if (!isOptional) {
72
+ param.required = true;
73
+ }
74
+ parameters.push(param);
75
+ }
76
+ return parameters;
77
+ }
78
+ // ─── Internal Conversion Logic ──────────────────────────────────────────────
79
+ /**
80
+ * Extract the internal `_zod` node from a Zod schema instance.
81
+ *
82
+ * @param zodSchema - A Zod schema (or any value)
83
+ * @returns The internal ZodNode, or null if not a valid Zod schema
84
+ */
85
+ function extractZodNode(zodSchema) {
86
+ if (zodSchema &&
87
+ typeof zodSchema === 'object' &&
88
+ '_zod' in zodSchema &&
89
+ typeof zodSchema._zod === 'object' &&
90
+ zodSchema._zod?.def) {
91
+ return zodSchema._zod;
92
+ }
93
+ return null;
94
+ }
95
+ /**
96
+ * Unwrap optional/nullable/default wrappers to find an underlying object node.
97
+ * Used by query parameter conversion to reach the object shape.
98
+ *
99
+ * @param node - The ZodNode to unwrap
100
+ * @returns The unwrapped ZodNode (possibly the same node if it's already an object)
101
+ */
102
+ function unwrapToObject(node) {
103
+ const type = node.def.type;
104
+ if (type === 'object') {
105
+ return node;
106
+ }
107
+ // Unwrap wrappers that contain an innerType
108
+ if ((type === 'optional' || type === 'nullable' || type === 'default') && node.def.innerType) {
109
+ return unwrapToObject(node.def.innerType);
110
+ }
111
+ // Unwrap pipe (transform/pipe) — use the input schema for OpenAPI
112
+ if (type === 'pipe' && node.def.in?._zod) {
113
+ return unwrapToObject(node.def.in._zod);
114
+ }
115
+ return null;
116
+ }
117
+ /**
118
+ * Convert a ZodNode to an OpenAPI schema object.
119
+ * This is the main recursive dispatcher that handles all Zod types.
120
+ *
121
+ * @param node - The internal Zod node to convert
122
+ * @returns The corresponding OpenAPI schema
123
+ */
124
+ function convertNode(node) {
125
+ const type = node.def.type;
126
+ switch (type) {
127
+ case 'string':
128
+ return convertString(node);
129
+ case 'number':
130
+ return convertNumber(node);
131
+ case 'boolean':
132
+ return convertBoolean();
133
+ case 'enum':
134
+ return convertEnum(node);
135
+ case 'literal':
136
+ return convertLiteral(node);
137
+ case 'array':
138
+ return convertArray(node);
139
+ case 'object':
140
+ return convertObject(node);
141
+ case 'optional':
142
+ return convertOptional(node);
143
+ case 'nullable':
144
+ return convertNullable(node);
145
+ case 'default':
146
+ return convertDefault(node);
147
+ case 'union':
148
+ return convertUnion(node);
149
+ case 'pipe':
150
+ return convertPipe(node);
151
+ default:
152
+ // Fallback for unsupported types — return generic object
153
+ return { type: 'object' };
154
+ }
155
+ }
156
+ /**
157
+ * Convert a Zod string schema to OpenAPI string schema.
158
+ * Extracts format, minLength, and maxLength from checks.
159
+ *
160
+ * @param node - String ZodNode
161
+ * @returns OpenAPI string schema with constraints
162
+ */
163
+ function convertString(node) {
164
+ const schema = { type: 'string' };
165
+ // Process checks for constraints and format
166
+ if (node.def.checks) {
167
+ for (const check of node.def.checks) {
168
+ const checkDef = check._zod?.def;
169
+ if (!checkDef) {
170
+ continue;
171
+ }
172
+ switch (checkDef.check) {
173
+ case 'min_length':
174
+ if (checkDef.minimum !== undefined) {
175
+ schema.minLength = checkDef.minimum;
176
+ }
177
+ break;
178
+ case 'max_length':
179
+ if (checkDef.maximum !== undefined) {
180
+ schema.maxLength = checkDef.maximum;
181
+ }
182
+ break;
183
+ case 'string_format':
184
+ // Map Zod format names to OpenAPI format names
185
+ if (checkDef.format) {
186
+ schema.format = checkDef.format;
187
+ }
188
+ break;
189
+ }
190
+ }
191
+ }
192
+ return schema;
193
+ }
194
+ /**
195
+ * Convert a Zod number schema to OpenAPI number/integer schema.
196
+ * Extracts minimum, maximum, and determines if integer from checks.
197
+ *
198
+ * @param node - Number ZodNode
199
+ * @returns OpenAPI number or integer schema with constraints
200
+ */
201
+ function convertNumber(node) {
202
+ const schema = { type: 'number' };
203
+ let isInt = false;
204
+ // Process checks for constraints and format
205
+ if (node.def.checks) {
206
+ for (const check of node.def.checks) {
207
+ const checkDef = check._zod?.def;
208
+ if (!checkDef) {
209
+ continue;
210
+ }
211
+ switch (checkDef.check) {
212
+ case 'greater_than':
213
+ if (checkDef.value !== undefined) {
214
+ // OpenAPI uses minimum/exclusiveMinimum
215
+ if (checkDef.inclusive) {
216
+ schema.minimum = checkDef.value;
217
+ }
218
+ else {
219
+ // For exclusive, use the value + note: OpenAPI 3.1 supports exclusiveMinimum as number
220
+ schema.minimum = checkDef.value;
221
+ }
222
+ }
223
+ break;
224
+ case 'less_than':
225
+ if (checkDef.value !== undefined) {
226
+ if (checkDef.inclusive) {
227
+ schema.maximum = checkDef.value;
228
+ }
229
+ else {
230
+ schema.maximum = checkDef.value;
231
+ }
232
+ }
233
+ break;
234
+ case 'number_format':
235
+ // 'safeint' format means .int() was called
236
+ if (checkDef.format === 'safeint') {
237
+ isInt = true;
238
+ }
239
+ break;
240
+ }
241
+ }
242
+ }
243
+ // Use 'integer' type when .int() is applied
244
+ if (isInt) {
245
+ schema.type = 'integer';
246
+ }
247
+ return schema;
248
+ }
249
+ /**
250
+ * Convert a Zod boolean schema to OpenAPI boolean schema.
251
+ *
252
+ * @returns OpenAPI boolean schema
253
+ */
254
+ function convertBoolean() {
255
+ return { type: 'boolean' };
256
+ }
257
+ /**
258
+ * Convert a Zod enum schema to OpenAPI string schema with enum values.
259
+ *
260
+ * @param node - Enum ZodNode with `def.entries`
261
+ * @returns OpenAPI string schema with enum array
262
+ */
263
+ function convertEnum(node) {
264
+ const schema = { type: 'string' };
265
+ if (node.def.entries) {
266
+ // Entries is Record<value, value> — extract the values
267
+ schema.enum = Object.values(node.def.entries);
268
+ }
269
+ return schema;
270
+ }
271
+ /**
272
+ * Convert a Zod literal schema to OpenAPI schema with enum containing the literal value.
273
+ *
274
+ * @param node - Literal ZodNode with `def.values`
275
+ * @returns OpenAPI schema with enum for the literal value
276
+ */
277
+ function convertLiteral(node) {
278
+ const values = node.def.values || [];
279
+ if (values.length === 1) {
280
+ const val = values[0];
281
+ const schema = {
282
+ type: typeof val === 'number' ? 'number' : typeof val === 'boolean' ? 'boolean' : 'string',
283
+ enum: [val],
284
+ };
285
+ return schema;
286
+ }
287
+ // Multiple literal values — use enum
288
+ return { enum: values };
289
+ }
290
+ /**
291
+ * Convert a Zod array schema to OpenAPI array schema.
292
+ * Extracts minItems and maxItems from checks.
293
+ *
294
+ * @param node - Array ZodNode with `def.element`
295
+ * @returns OpenAPI array schema with items and constraints
296
+ */
297
+ function convertArray(node) {
298
+ const schema = { type: 'array' };
299
+ // Convert element type
300
+ if (node.def.element) {
301
+ schema.items = convertNode(node.def.element);
302
+ }
303
+ // Process array-specific checks (min/max items)
304
+ if (node.def.checks) {
305
+ for (const check of node.def.checks) {
306
+ const checkDef = check._zod?.def;
307
+ if (!checkDef) {
308
+ continue;
309
+ }
310
+ switch (checkDef.check) {
311
+ case 'min_length':
312
+ if (checkDef.minimum !== undefined) {
313
+ schema.minItems = checkDef.minimum;
314
+ }
315
+ break;
316
+ case 'max_length':
317
+ if (checkDef.maximum !== undefined) {
318
+ schema.maxItems = checkDef.maximum;
319
+ }
320
+ break;
321
+ }
322
+ }
323
+ }
324
+ return schema;
325
+ }
326
+ /**
327
+ * Convert a Zod object schema to OpenAPI object schema.
328
+ * Iterates over shape properties and determines which are required.
329
+ *
330
+ * @param node - Object ZodNode with `def.shape`
331
+ * @returns OpenAPI object schema with properties and required list
332
+ */
333
+ function convertObject(node) {
334
+ const schema = { type: 'object' };
335
+ if (!node.def.shape) {
336
+ return schema;
337
+ }
338
+ const properties = {};
339
+ const required = [];
340
+ for (const [propName, propNode] of Object.entries(node.def.shape)) {
341
+ const { schema: propSchema, isOptional } = convertPropertyWithOptional(propNode);
342
+ properties[propName] = propSchema;
343
+ // Add to required list if not optional and not default
344
+ if (!isOptional) {
345
+ required.push(propName);
346
+ }
347
+ }
348
+ if (Object.keys(properties).length > 0) {
349
+ schema.properties = properties;
350
+ }
351
+ if (required.length > 0) {
352
+ schema.required = required;
353
+ }
354
+ return schema;
355
+ }
356
+ /**
357
+ * Convert a property ZodNode, tracking whether it is optional.
358
+ * Unwraps optional/default wrappers and returns both the schema
359
+ * and an isOptional flag for the parent to use.
360
+ *
361
+ * @param node - The property's ZodNode
362
+ * @returns Object with the converted schema and optionality flag
363
+ */
364
+ function convertPropertyWithOptional(node) {
365
+ const type = node.def.type;
366
+ if (type === 'optional') {
367
+ // Unwrap optional and convert inner type
368
+ if (node.def.innerType) {
369
+ const innerResult = convertPropertyWithOptional(node.def.innerType);
370
+ return { schema: innerResult.schema, isOptional: true };
371
+ }
372
+ return { schema: { type: 'object' }, isOptional: true };
373
+ }
374
+ if (type === 'default') {
375
+ // Unwrap default, convert inner type, and add default value
376
+ if (node.def.innerType) {
377
+ const innerResult = convertPropertyWithOptional(node.def.innerType);
378
+ const schema = { ...innerResult.schema };
379
+ if (node.def.defaultValue !== undefined) {
380
+ schema.default = node.def.defaultValue;
381
+ }
382
+ // Properties with defaults are treated as optional (not required)
383
+ return { schema, isOptional: true };
384
+ }
385
+ return { schema: { type: 'object' }, isOptional: true };
386
+ }
387
+ // For all other types, convert normally
388
+ return { schema: convertNode(node), isOptional: false };
389
+ }
390
+ /**
391
+ * Convert a Zod optional schema to OpenAPI schema.
392
+ * When encountered at a non-property level (e.g., as a standalone schema),
393
+ * simply returns the inner type's schema.
394
+ *
395
+ * @param node - Optional ZodNode with `def.innerType`
396
+ * @returns The inner type's OpenAPI schema
397
+ */
398
+ function convertOptional(node) {
399
+ if (node.def.innerType) {
400
+ return convertNode(node.def.innerType);
401
+ }
402
+ return { type: 'object' };
403
+ }
404
+ /**
405
+ * Convert a Zod nullable schema to OpenAPI schema.
406
+ * Adds `nullable: true` to the inner type's schema.
407
+ *
408
+ * @param node - Nullable ZodNode with `def.innerType`
409
+ * @returns The inner type's OpenAPI schema with nullable flag
410
+ */
411
+ function convertNullable(node) {
412
+ if (node.def.innerType) {
413
+ const schema = convertNode(node.def.innerType);
414
+ schema.nullable = true;
415
+ return schema;
416
+ }
417
+ return { type: 'object', nullable: true };
418
+ }
419
+ /**
420
+ * Convert a Zod default schema to OpenAPI schema.
421
+ * Adds the `default` value to the inner type's schema.
422
+ *
423
+ * @param node - Default ZodNode with `def.innerType` and `def.defaultValue`
424
+ * @returns The inner type's OpenAPI schema with default value
425
+ */
426
+ function convertDefault(node) {
427
+ if (node.def.innerType) {
428
+ const schema = convertNode(node.def.innerType);
429
+ if (node.def.defaultValue !== undefined) {
430
+ schema.default = node.def.defaultValue;
431
+ }
432
+ return schema;
433
+ }
434
+ return { type: 'object' };
435
+ }
436
+ /**
437
+ * Convert a Zod union schema to OpenAPI anyOf schema.
438
+ *
439
+ * @param node - Union ZodNode with `def.options`
440
+ * @returns OpenAPI schema with anyOf containing all union members
441
+ */
442
+ function convertUnion(node) {
443
+ if (!node.def.options || node.def.options.length === 0) {
444
+ return { type: 'object' };
445
+ }
446
+ const schemas = node.def.options.map(optionNode => convertNode(optionNode));
447
+ return { anyOf: schemas };
448
+ }
449
+ /**
450
+ * Convert a Zod pipe schema to OpenAPI schema.
451
+ *
452
+ * Pipe types are created by `.transform()` and `.pipe()`. They have:
453
+ * - `def.in` — the input schema (what the API consumer sends)
454
+ * - `def.out` — the output schema (what the code receives after transformation)
455
+ *
456
+ * For OpenAPI, we use the **input** schema because that represents what the
457
+ * API consumer needs to send. The transform/pipe output is a runtime concern
458
+ * that doesn't affect the API contract.
459
+ *
460
+ * @example
461
+ * ```typescript
462
+ * // z.string().transform(val => val.split(',')) → { type: 'string' }
463
+ * // z.string().pipe(z.number()) → { type: 'string' }
464
+ * // z.object({...}).transform(obj => obj.name) → { type: 'object', ... }
465
+ * ```
466
+ *
467
+ * @param node - Pipe ZodNode with `def.in` (input) and `def.out` (output)
468
+ * @returns The input schema's OpenAPI representation
469
+ */
470
+ function convertPipe(node) {
471
+ // Extract the input schema from the pipe — this is a full Zod schema
472
+ // object (not a ZodNode), so we access _zod to get the node
473
+ const inputNode = node.def.in?._zod;
474
+ if (inputNode) {
475
+ return convertNode(inputNode);
476
+ }
477
+ // Fallback if no input schema found
478
+ return { type: 'object' };
479
+ }
480
+ //# sourceMappingURL=zod-to-openapi.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"zod-to-openapi.js","sourceRoot":"","sources":["../../src/generator/zod-to-openapi.ts"],"names":[],"mappings":"AA6GA,+EAA+E;AAE/E;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAM,UAAU,kBAAkB,CAAC,SAAkB;IACnD,MAAM,IAAI,GAAG,cAAc,CAAC,SAAS,CAAC,CAAC;IACvC,IAAI,CAAC,IAAI,EAAE,CAAC;QACV,oCAAoC;QACpC,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;IAC5B,CAAC;IACD,OAAO,WAAW,CAAC,IAAI,CAAC,CAAC;AAC3B,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,MAAM,UAAU,oBAAoB,CAAC,SAAkB;IACrD,MAAM,IAAI,GAAG,cAAc,CAAC,SAAS,CAAC,CAAC;IACvC,IAAI,CAAC,IAAI,EAAE,CAAC;QACV,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,0EAA0E;IAC1E,MAAM,UAAU,GAAG,cAAc,CAAC,IAAI,CAAC,CAAC;IACxC,IAAI,CAAC,UAAU,IAAI,UAAU,CAAC,GAAG,CAAC,IAAI,KAAK,QAAQ,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC;QAC7E,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,MAAM,UAAU,GAAuB,EAAE,CAAC;IAE1C,KAAK,MAAM,CAAC,QAAQ,EAAE,QAAQ,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;QACxE,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,UAAU,EAAE,GAAG,2BAA2B,CAAC,QAAQ,CAAC,CAAC;QAEjF,MAAM,KAAK,GAAqB;YAC9B,IAAI,EAAE,QAAQ;YACd,EAAE,EAAE,OAAO;YACX,MAAM,EAAE,UAAU;SACnB,CAAC;QAEF,yEAAyE;QACzE,IAAI,CAAC,UAAU,EAAE,CAAC;YAChB,KAAK,CAAC,QAAQ,GAAG,IAAI,CAAC;QACxB,CAAC;QAED,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACzB,CAAC;IAED,OAAO,UAAU,CAAC;AACpB,CAAC;AAED,+EAA+E;AAE/E;;;;;GAKG;AACH,SAAS,cAAc,CAAC,SAAkB;IACxC,IACE,SAAS;QACT,OAAO,SAAS,KAAK,QAAQ;QAC7B,MAAM,IAAI,SAAS;QACnB,OAAQ,SAAiB,CAAC,IAAI,KAAK,QAAQ;QAC1C,SAAiB,CAAC,IAAI,EAAE,GAAG,EAC5B,CAAC;QACD,OAAQ,SAAiB,CAAC,IAAe,CAAC;IAC5C,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;;;;;GAMG;AACH,SAAS,cAAc,CAAC,IAAa;IACnC,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC;IAE3B,IAAI,IAAI,KAAK,QAAQ,EAAE,CAAC;QACtB,OAAO,IAAI,CAAC;IACd,CAAC;IAED,4CAA4C;IAC5C,IAAI,CAAC,IAAI,KAAK,UAAU,IAAI,IAAI,KAAK,UAAU,IAAI,IAAI,KAAK,SAAS,CAAC,IAAI,IAAI,CAAC,GAAG,CAAC,SAAS,EAAE,CAAC;QAC7F,OAAO,cAAc,CAAC,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;IAC5C,CAAC;IAED,kEAAkE;IAClE,IAAI,IAAI,KAAK,MAAM,IAAI,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,IAAI,EAAE,CAAC;QACzC,OAAO,cAAc,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC;IAC1C,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;;;;;GAMG;AACH,SAAS,WAAW,CAAC,IAAa;IAChC,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC;IAE3B,QAAQ,IAAI,EAAE,CAAC;QACb,KAAK,QAAQ;YACX,OAAO,aAAa,CAAC,IAAI,CAAC,CAAC;QAC7B,KAAK,QAAQ;YACX,OAAO,aAAa,CAAC,IAAI,CAAC,CAAC;QAC7B,KAAK,SAAS;YACZ,OAAO,cAAc,EAAE,CAAC;QAC1B,KAAK,MAAM;YACT,OAAO,WAAW,CAAC,IAAI,CAAC,CAAC;QAC3B,KAAK,SAAS;YACZ,OAAO,cAAc,CAAC,IAAI,CAAC,CAAC;QAC9B,KAAK,OAAO;YACV,OAAO,YAAY,CAAC,IAAI,CAAC,CAAC;QAC5B,KAAK,QAAQ;YACX,OAAO,aAAa,CAAC,IAAI,CAAC,CAAC;QAC7B,KAAK,UAAU;YACb,OAAO,eAAe,CAAC,IAAI,CAAC,CAAC;QAC/B,KAAK,UAAU;YACb,OAAO,eAAe,CAAC,IAAI,CAAC,CAAC;QAC/B,KAAK,SAAS;YACZ,OAAO,cAAc,CAAC,IAAI,CAAC,CAAC;QAC9B,KAAK,OAAO;YACV,OAAO,YAAY,CAAC,IAAI,CAAC,CAAC;QAC5B,KAAK,MAAM;YACT,OAAO,WAAW,CAAC,IAAI,CAAC,CAAC;QAC3B;YACE,yDAAyD;YACzD,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;IAC9B,CAAC;AACH,CAAC;AAED;;;;;;GAMG;AACH,SAAS,aAAa,CAAC,IAAa;IAClC,MAAM,MAAM,GAAkB,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;IAEjD,4CAA4C;IAC5C,IAAI,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,CAAC;QACpB,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,CAAC;YACpC,MAAM,QAAQ,GAAG,KAAK,CAAC,IAAI,EAAE,GAAG,CAAC;YACjC,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACd,SAAS;YACX,CAAC;YAED,QAAQ,QAAQ,CAAC,KAAK,EAAE,CAAC;gBACvB,KAAK,YAAY;oBACf,IAAI,QAAQ,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;wBACnC,MAAM,CAAC,SAAS,GAAG,QAAQ,CAAC,OAAO,CAAC;oBACtC,CAAC;oBACD,MAAM;gBACR,KAAK,YAAY;oBACf,IAAI,QAAQ,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;wBACnC,MAAM,CAAC,SAAS,GAAG,QAAQ,CAAC,OAAO,CAAC;oBACtC,CAAC;oBACD,MAAM;gBACR,KAAK,eAAe;oBAClB,+CAA+C;oBAC/C,IAAI,QAAQ,CAAC,MAAM,EAAE,CAAC;wBACpB,MAAM,CAAC,MAAM,GAAG,QAAQ,CAAC,MAAM,CAAC;oBAClC,CAAC;oBACD,MAAM;YACV,CAAC;QACH,CAAC;IACH,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;;;;;GAMG;AACH,SAAS,aAAa,CAAC,IAAa;IAClC,MAAM,MAAM,GAAkB,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;IACjD,IAAI,KAAK,GAAG,KAAK,CAAC;IAElB,4CAA4C;IAC5C,IAAI,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,CAAC;QACpB,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,CAAC;YACpC,MAAM,QAAQ,GAAG,KAAK,CAAC,IAAI,EAAE,GAAG,CAAC;YACjC,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACd,SAAS;YACX,CAAC;YAED,QAAQ,QAAQ,CAAC,KAAK,EAAE,CAAC;gBACvB,KAAK,cAAc;oBACjB,IAAI,QAAQ,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;wBACjC,wCAAwC;wBACxC,IAAI,QAAQ,CAAC,SAAS,EAAE,CAAC;4BACvB,MAAM,CAAC,OAAO,GAAG,QAAQ,CAAC,KAAK,CAAC;wBAClC,CAAC;6BAAM,CAAC;4BACN,uFAAuF;4BACvF,MAAM,CAAC,OAAO,GAAG,QAAQ,CAAC,KAAK,CAAC;wBAClC,CAAC;oBACH,CAAC;oBACD,MAAM;gBACR,KAAK,WAAW;oBACd,IAAI,QAAQ,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;wBACjC,IAAI,QAAQ,CAAC,SAAS,EAAE,CAAC;4BACvB,MAAM,CAAC,OAAO,GAAG,QAAQ,CAAC,KAAK,CAAC;wBAClC,CAAC;6BAAM,CAAC;4BACN,MAAM,CAAC,OAAO,GAAG,QAAQ,CAAC,KAAK,CAAC;wBAClC,CAAC;oBACH,CAAC;oBACD,MAAM;gBACR,KAAK,eAAe;oBAClB,2CAA2C;oBAC3C,IAAI,QAAQ,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;wBAClC,KAAK,GAAG,IAAI,CAAC;oBACf,CAAC;oBACD,MAAM;YACV,CAAC;QACH,CAAC;IACH,CAAC;IAED,4CAA4C;IAC5C,IAAI,KAAK,EAAE,CAAC;QACV,MAAM,CAAC,IAAI,GAAG,SAAS,CAAC;IAC1B,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;;;GAIG;AACH,SAAS,cAAc;IACrB,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;AAC7B,CAAC;AAED;;;;;GAKG;AACH,SAAS,WAAW,CAAC,IAAa;IAChC,MAAM,MAAM,GAAkB,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;IAEjD,IAAI,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC;QACrB,uDAAuD;QACvD,MAAM,CAAC,IAAI,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IAChD,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;;;;GAKG;AACH,SAAS,cAAc,CAAC,IAAa;IACnC,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,IAAI,EAAE,CAAC;IAErC,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACxB,MAAM,GAAG,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;QACtB,MAAM,MAAM,GAAkB;YAC5B,IAAI,EAAE,OAAO,GAAG,KAAK,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,OAAO,GAAG,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,QAAQ;YAC1F,IAAI,EAAE,CAAC,GAAG,CAAC;SACZ,CAAC;QACF,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,qCAAqC;IACrC,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;AAC1B,CAAC;AAED;;;;;;GAMG;AACH,SAAS,YAAY,CAAC,IAAa;IACjC,MAAM,MAAM,GAAkB,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;IAEhD,uBAAuB;IACvB,IAAI,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC;QACrB,MAAM,CAAC,KAAK,GAAG,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IAC/C,CAAC;IAED,gDAAgD;IAChD,IAAI,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,CAAC;QACpB,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,CAAC;YACpC,MAAM,QAAQ,GAAG,KAAK,CAAC,IAAI,EAAE,GAAG,CAAC;YACjC,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACd,SAAS;YACX,CAAC;YAED,QAAQ,QAAQ,CAAC,KAAK,EAAE,CAAC;gBACvB,KAAK,YAAY;oBACf,IAAI,QAAQ,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;wBACnC,MAAM,CAAC,QAAQ,GAAG,QAAQ,CAAC,OAAO,CAAC;oBACrC,CAAC;oBACD,MAAM;gBACR,KAAK,YAAY;oBACf,IAAI,QAAQ,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;wBACnC,MAAM,CAAC,QAAQ,GAAG,QAAQ,CAAC,OAAO,CAAC;oBACrC,CAAC;oBACD,MAAM;YACV,CAAC;QACH,CAAC;IACH,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;;;;;GAMG;AACH,SAAS,aAAa,CAAC,IAAa;IAClC,MAAM,MAAM,GAAkB,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;IAEjD,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC;QACpB,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,MAAM,UAAU,GAAkC,EAAE,CAAC;IACrD,MAAM,QAAQ,GAAa,EAAE,CAAC;IAE9B,KAAK,MAAM,CAAC,QAAQ,EAAE,QAAQ,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;QAClE,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,UAAU,EAAE,GAAG,2BAA2B,CAAC,QAAQ,CAAC,CAAC;QACjF,UAAU,CAAC,QAAQ,CAAC,GAAG,UAAU,CAAC;QAElC,uDAAuD;QACvD,IAAI,CAAC,UAAU,EAAE,CAAC;YAChB,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAC1B,CAAC;IACH,CAAC;IAED,IAAI,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACvC,MAAM,CAAC,UAAU,GAAG,UAAU,CAAC;IACjC,CAAC;IACD,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACxB,MAAM,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAC7B,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;;;;;;GAOG;AACH,SAAS,2BAA2B,CAAC,IAAa;IAChD,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC;IAE3B,IAAI,IAAI,KAAK,UAAU,EAAE,CAAC;QACxB,yCAAyC;QACzC,IAAI,IAAI,CAAC,GAAG,CAAC,SAAS,EAAE,CAAC;YACvB,MAAM,WAAW,GAAG,2BAA2B,CAAC,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;YACpE,OAAO,EAAE,MAAM,EAAE,WAAW,CAAC,MAAM,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC;QAC1D,CAAC;QACD,OAAO,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC;IAC1D,CAAC;IAED,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;QACvB,4DAA4D;QAC5D,IAAI,IAAI,CAAC,GAAG,CAAC,SAAS,EAAE,CAAC;YACvB,MAAM,WAAW,GAAG,2BAA2B,CAAC,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;YACpE,MAAM,MAAM,GAAG,EAAE,GAAG,WAAW,CAAC,MAAM,EAAE,CAAC;YACzC,IAAI,IAAI,CAAC,GAAG,CAAC,YAAY,KAAK,SAAS,EAAE,CAAC;gBACxC,MAAM,CAAC,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC;YACzC,CAAC;YACD,kEAAkE;YAClE,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC;QACtC,CAAC;QACD,OAAO,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC;IAC1D,CAAC;IAED,wCAAwC;IACxC,OAAO,EAAE,MAAM,EAAE,WAAW,CAAC,IAAI,CAAC,EAAE,UAAU,EAAE,KAAK,EAAE,CAAC;AAC1D,CAAC;AAED;;;;;;;GAOG;AACH,SAAS,eAAe,CAAC,IAAa;IACpC,IAAI,IAAI,CAAC,GAAG,CAAC,SAAS,EAAE,CAAC;QACvB,OAAO,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;IACzC,CAAC;IACD,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;AAC5B,CAAC;AAED;;;;;;GAMG;AACH,SAAS,eAAe,CAAC,IAAa;IACpC,IAAI,IAAI,CAAC,GAAG,CAAC,SAAS,EAAE,CAAC;QACvB,MAAM,MAAM,GAAG,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QAC/C,MAAM,CAAC,QAAQ,GAAG,IAAI,CAAC;QACvB,OAAO,MAAM,CAAC;IAChB,CAAC;IACD,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;AAC5C,CAAC;AAED;;;;;;GAMG;AACH,SAAS,cAAc,CAAC,IAAa;IACnC,IAAI,IAAI,CAAC,GAAG,CAAC,SAAS,EAAE,CAAC;QACvB,MAAM,MAAM,GAAG,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QAC/C,IAAI,IAAI,CAAC,GAAG,CAAC,YAAY,KAAK,SAAS,EAAE,CAAC;YACxC,MAAM,CAAC,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC;QACzC,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IACD,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;AAC5B,CAAC;AAED;;;;;GAKG;AACH,SAAS,YAAY,CAAC,IAAa;IACjC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,IAAI,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACvD,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;IAC5B,CAAC;IAED,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC,CAAC;IAC5E,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC;AAC5B,CAAC;AAED;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,SAAS,WAAW,CAAC,IAAa;IAChC,qEAAqE;IACrE,4DAA4D;IAC5D,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,IAAI,CAAC;IACpC,IAAI,SAAS,EAAE,CAAC;QACd,OAAO,WAAW,CAAC,SAAS,CAAC,CAAC;IAChC,CAAC;IAED,oCAAoC;IACpC,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;AAC5B,CAAC"}
@@ -0,0 +1,4 @@
1
+ export * from './database/index.js';
2
+ export * from './generator/index.js';
3
+ export * from './schema/index.js';
4
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,qBAAqB,CAAC;AACpC,cAAc,sBAAsB,CAAC;AACrC,cAAc,mBAAmB,CAAC"}
@@ -0,0 +1,4 @@
1
+ export * from './database/index.js';
2
+ export * from './generator/index.js';
3
+ export * from './schema/index.js';
4
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,qBAAqB,CAAC;AACpC,cAAc,sBAAsB,CAAC;AACrC,cAAc,mBAAmB,CAAC"}
@@ -0,0 +1,6 @@
1
+ import { SchemaContainer } from './schema-container.js';
2
+ import { SchemaObject } from './schema-object.js';
3
+ export declare class AnySchema extends SchemaObject {
4
+ constructor(container: SchemaContainer);
5
+ }
6
+ //# sourceMappingURL=any-schema.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"any-schema.d.ts","sourceRoot":"","sources":["../../src/schema/any-schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAElD,qBAAa,SAAU,SAAQ,YAAY;gBAC7B,SAAS,EAAE,eAAe;CAQvC"}
@@ -0,0 +1,12 @@
1
+ import { SchemaObject } from './schema-object.js';
2
+ export class AnySchema extends SchemaObject {
3
+ constructor(container) {
4
+ super(container);
5
+ this.setData({
6
+ primitive: true,
7
+ tsType: 'any',
8
+ zodType: 'any',
9
+ });
10
+ }
11
+ }
12
+ //# sourceMappingURL=any-schema.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"any-schema.js","sourceRoot":"","sources":["../../src/schema/any-schema.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAElD,MAAM,OAAO,SAAU,SAAQ,YAAY;IACzC,YAAY,SAA0B;QACpC,KAAK,CAAC,SAAS,CAAC,CAAC;QACjB,IAAI,CAAC,OAAO,CAAC;YACX,SAAS,EAAE,IAAI;YACf,MAAM,EAAE,KAAK;YACb,OAAO,EAAE,KAAK;SACf,CAAC,CAAC;IACL,CAAC;CACF"}
@@ -0,0 +1,6 @@
1
+ import { SchemaContainer } from './schema-container.js';
2
+ import { SchemaObject } from './schema-object.js';
3
+ export declare class BooleanSchema extends SchemaObject {
4
+ constructor(container: SchemaContainer);
5
+ }
6
+ //# sourceMappingURL=boolean-schema.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"boolean-schema.d.ts","sourceRoot":"","sources":["../../src/schema/boolean-schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAElD,qBAAa,aAAc,SAAQ,YAAY;gBACjC,SAAS,EAAE,eAAe;CAQvC"}
@@ -0,0 +1,12 @@
1
+ import { SchemaObject } from './schema-object.js';
2
+ export class BooleanSchema extends SchemaObject {
3
+ constructor(container) {
4
+ super(container);
5
+ this.setData({
6
+ primitive: true,
7
+ tsType: 'boolean',
8
+ zodType: 'boolean'
9
+ });
10
+ }
11
+ }
12
+ //# sourceMappingURL=boolean-schema.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"boolean-schema.js","sourceRoot":"","sources":["../../src/schema/boolean-schema.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAElD,MAAM,OAAO,aAAc,SAAQ,YAAY;IAC7C,YAAY,SAA0B;QACpC,KAAK,CAAC,SAAS,CAAC,CAAC;QACjB,IAAI,CAAC,OAAO,CAAC;YACX,SAAS,EAAE,IAAI;YACf,MAAM,EAAE,SAAS;YACjB,OAAO,EAAC,SAAS;SAClB,CAAC,CAAC;IACL,CAAC;CACF"}
@@ -0,0 +1,6 @@
1
+ import { SchemaContainer } from './schema-container.js';
2
+ import { SchemaObject } from './schema-object.js';
3
+ export declare class DateSchema extends SchemaObject {
4
+ constructor(container: SchemaContainer);
5
+ }
6
+ //# sourceMappingURL=date-schema.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"date-schema.d.ts","sourceRoot":"","sources":["../../src/schema/date-schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAElD,qBAAa,UAAW,SAAQ,YAAY;gBAC9B,SAAS,EAAE,eAAe;CAQvC"}
@@ -0,0 +1,12 @@
1
+ import { SchemaObject } from './schema-object.js';
2
+ export class DateSchema extends SchemaObject {
3
+ constructor(container) {
4
+ super(container);
5
+ this.setData({
6
+ primitive: true,
7
+ tsType: 'Date',
8
+ zodType: 'date',
9
+ });
10
+ }
11
+ }
12
+ //# sourceMappingURL=date-schema.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"date-schema.js","sourceRoot":"","sources":["../../src/schema/date-schema.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAElD,MAAM,OAAO,UAAW,SAAQ,YAAY;IAC1C,YAAY,SAA0B;QACpC,KAAK,CAAC,SAAS,CAAC,CAAC;QACjB,IAAI,CAAC,OAAO,CAAC;YACX,SAAS,EAAE,IAAI;YACf,MAAM,EAAE,MAAM;YACd,OAAO,EAAE,MAAM;SAChB,CAAC,CAAC;IACL,CAAC;CACF"}
@@ -0,0 +1,10 @@
1
+ export * from './any-schema.js';
2
+ export * from './boolean-schema.js';
3
+ export * from './date-schema.js';
4
+ export * from './object-schema.js';
5
+ export * from './primitive-schema.js';
6
+ export * from './ref-schema.js';
7
+ export * from './schema-container.js';
8
+ export * from './schema-scope.js';
9
+ export * from './utils.js';
10
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/schema/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAC;AAChC,cAAc,qBAAqB,CAAC;AACpC,cAAc,kBAAkB,CAAC;AACjC,cAAc,oBAAoB,CAAC;AACnC,cAAc,uBAAuB,CAAC;AACtC,cAAc,iBAAiB,CAAC;AAChC,cAAc,uBAAuB,CAAC;AACtC,cAAc,mBAAmB,CAAC;AAClC,cAAc,YAAY,CAAC"}
@@ -0,0 +1,10 @@
1
+ export * from './any-schema.js';
2
+ export * from './boolean-schema.js';
3
+ export * from './date-schema.js';
4
+ export * from './object-schema.js';
5
+ export * from './primitive-schema.js';
6
+ export * from './ref-schema.js';
7
+ export * from './schema-container.js';
8
+ export * from './schema-scope.js';
9
+ export * from './utils.js';
10
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/schema/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAC;AAChC,cAAc,qBAAqB,CAAC;AACpC,cAAc,kBAAkB,CAAC;AACjC,cAAc,oBAAoB,CAAC;AACnC,cAAc,uBAAuB,CAAC;AACtC,cAAc,iBAAiB,CAAC;AAChC,cAAc,uBAAuB,CAAC;AACtC,cAAc,mBAAmB,CAAC;AAClC,cAAc,YAAY,CAAC"}
@@ -0,0 +1,10 @@
1
+ import { SchemaContainer } from './schema-container.js';
2
+ import { SchemaObject } from './schema-object.js';
3
+ export type ObjectProps = Record<string, SchemaObject>;
4
+ export declare class ObjectSchema extends SchemaObject {
5
+ protected props: ObjectProps;
6
+ constructor(container: SchemaContainer);
7
+ properties(props: ObjectProps): void;
8
+ getProperties(): ObjectProps;
9
+ }
10
+ //# sourceMappingURL=object-schema.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"object-schema.d.ts","sourceRoot":"","sources":["../../src/schema/object-schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAElD,MAAM,MAAM,WAAW,GAAG,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;AAEvD,qBAAa,YAAa,SAAQ,YAAY;IAC5C,SAAS,CAAC,KAAK,EAAE,WAAW,CAAC;gBACjB,SAAS,EAAE,eAAe;IAUtC,UAAU,CAAC,KAAK,EAAE,WAAW;IAK7B,aAAa;CAGd"}