moonflower 0.11.2 → 1.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (472) hide show
  1. package/dist/errors/BaseHttpError.cjs +2 -0
  2. package/dist/errors/BaseHttpError.cjs.map +1 -0
  3. package/dist/{src/errors → errors}/BaseHttpError.d.ts +1 -0
  4. package/dist/errors/BaseHttpError.d.ts.map +1 -0
  5. package/dist/errors/BaseHttpError.mjs +10 -0
  6. package/dist/errors/BaseHttpError.mjs.map +1 -0
  7. package/dist/errors/HttpErrorHandler.cjs +2 -0
  8. package/dist/errors/HttpErrorHandler.cjs.map +1 -0
  9. package/dist/{src/errors → errors}/HttpErrorHandler.d.ts +2 -1
  10. package/dist/errors/HttpErrorHandler.d.ts.map +1 -0
  11. package/dist/errors/HttpErrorHandler.mjs +19 -0
  12. package/dist/errors/HttpErrorHandler.mjs.map +1 -0
  13. package/dist/errors/UserFacingErrors.cjs +2 -0
  14. package/dist/errors/UserFacingErrors.cjs.map +1 -0
  15. package/dist/{src/errors → errors}/UserFacingErrors.d.ts +1 -0
  16. package/dist/errors/UserFacingErrors.d.ts.map +1 -0
  17. package/dist/errors/UserFacingErrors.mjs +23 -0
  18. package/dist/errors/UserFacingErrors.mjs.map +1 -0
  19. package/dist/hooks/authentication/useAuth.cjs +2 -0
  20. package/dist/hooks/authentication/useAuth.cjs.map +1 -0
  21. package/dist/{src/hooks → hooks}/authentication/useAuth.d.ts +1 -0
  22. package/dist/hooks/authentication/useAuth.d.ts.map +1 -0
  23. package/dist/hooks/authentication/useAuth.mjs +5 -0
  24. package/dist/hooks/authentication/useAuth.mjs.map +1 -0
  25. package/dist/hooks/authentication/useOptionalAuth.cjs +2 -0
  26. package/dist/hooks/authentication/useOptionalAuth.cjs.map +1 -0
  27. package/dist/{src/hooks → hooks}/authentication/useOptionalAuth.d.ts +1 -0
  28. package/dist/hooks/authentication/useOptionalAuth.d.ts.map +1 -0
  29. package/dist/hooks/authentication/useOptionalAuth.mjs +14 -0
  30. package/dist/hooks/authentication/useOptionalAuth.mjs.map +1 -0
  31. package/dist/hooks/useApiEndpoint.cjs +2 -0
  32. package/dist/hooks/useApiEndpoint.cjs.map +1 -0
  33. package/dist/hooks/useApiEndpoint.d.ts.map +1 -0
  34. package/dist/hooks/useApiEndpoint.mjs +5 -0
  35. package/dist/hooks/useApiEndpoint.mjs.map +1 -0
  36. package/dist/hooks/useApiEndpoint.spec.d.ts +2 -0
  37. package/dist/hooks/useApiEndpoint.spec.d.ts.map +1 -0
  38. package/dist/hooks/useApiHeader/index.d.ts.map +1 -0
  39. package/dist/hooks/useApiHeader/useApiHeader.cjs +2 -0
  40. package/dist/hooks/useApiHeader/useApiHeader.cjs.map +1 -0
  41. package/dist/{src/hooks → hooks}/useApiHeader/useApiHeader.d.ts +1 -0
  42. package/dist/hooks/useApiHeader/useApiHeader.d.ts.map +1 -0
  43. package/dist/hooks/useApiHeader/useApiHeader.mjs +6 -0
  44. package/dist/hooks/useApiHeader/useApiHeader.mjs.map +1 -0
  45. package/dist/hooks/useApiHeader/useApiHeader.spec.d.ts +2 -0
  46. package/dist/hooks/useApiHeader/useApiHeader.spec.d.ts.map +1 -0
  47. package/dist/hooks/useApiHeader/useApiHeader.spec.data.d.ts.map +1 -0
  48. package/dist/hooks/useCookieParams.cjs +2 -0
  49. package/dist/hooks/useCookieParams.cjs.map +1 -0
  50. package/dist/{src/hooks → hooks}/useCookieParams.d.ts +1 -0
  51. package/dist/hooks/useCookieParams.d.ts.map +1 -0
  52. package/dist/hooks/useCookieParams.mjs +41 -0
  53. package/dist/hooks/useCookieParams.mjs.map +1 -0
  54. package/dist/hooks/useCookieParams.spec.d.ts +2 -0
  55. package/dist/hooks/useCookieParams.spec.d.ts.map +1 -0
  56. package/dist/hooks/useExposeApiModel/index.d.ts.map +1 -0
  57. package/dist/hooks/useExposeApiModel/useExposeApiModel.d.ts.map +1 -0
  58. package/dist/hooks/useExposeApiModel/useExposeApiModel.spec.d.ts +2 -0
  59. package/dist/hooks/useExposeApiModel/useExposeApiModel.spec.d.ts.map +1 -0
  60. package/dist/hooks/useExposeApiModel/useExposeApiModel.spec.data.d.ts.map +1 -0
  61. package/dist/hooks/useExposeApiModel.cjs +2 -0
  62. package/dist/hooks/useExposeApiModel.cjs.map +1 -0
  63. package/dist/hooks/useExposeApiModel.d.ts +1 -0
  64. package/dist/hooks/useExposeApiModel.mjs +8 -0
  65. package/dist/hooks/useExposeApiModel.mjs.map +1 -0
  66. package/dist/hooks/useHeaderParams.cjs +2 -0
  67. package/dist/hooks/useHeaderParams.cjs.map +1 -0
  68. package/dist/{src/hooks → hooks}/useHeaderParams.d.ts +1 -0
  69. package/dist/hooks/useHeaderParams.d.ts.map +1 -0
  70. package/dist/hooks/useHeaderParams.mjs +42 -0
  71. package/dist/hooks/useHeaderParams.mjs.map +1 -0
  72. package/dist/hooks/useHeaderParams.spec.d.ts +2 -0
  73. package/dist/hooks/useHeaderParams.spec.d.ts.map +1 -0
  74. package/dist/hooks/usePathParams.cjs +2 -0
  75. package/dist/hooks/usePathParams.cjs.map +1 -0
  76. package/dist/{src/hooks → hooks}/usePathParams.d.ts +1 -0
  77. package/dist/hooks/usePathParams.d.ts.map +1 -0
  78. package/dist/hooks/usePathParams.mjs +35 -0
  79. package/dist/hooks/usePathParams.mjs.map +1 -0
  80. package/dist/hooks/usePathParams.spec.d.ts +2 -0
  81. package/dist/hooks/usePathParams.spec.d.ts.map +1 -0
  82. package/dist/hooks/useQueryParams.cjs +2 -0
  83. package/dist/hooks/useQueryParams.cjs.map +1 -0
  84. package/dist/{src/hooks → hooks}/useQueryParams.d.ts +1 -0
  85. package/dist/hooks/useQueryParams.d.ts.map +1 -0
  86. package/dist/hooks/useQueryParams.mjs +40 -0
  87. package/dist/hooks/useQueryParams.mjs.map +1 -0
  88. package/dist/hooks/useQueryParams.spec.d.ts +2 -0
  89. package/dist/hooks/useQueryParams.spec.d.ts.map +1 -0
  90. package/dist/hooks/useRequestBody.cjs +2 -0
  91. package/dist/hooks/useRequestBody.cjs.map +1 -0
  92. package/dist/{src/hooks → hooks}/useRequestBody.d.ts +1 -0
  93. package/dist/hooks/useRequestBody.d.ts.map +1 -0
  94. package/dist/hooks/useRequestBody.mjs +42 -0
  95. package/dist/hooks/useRequestBody.mjs.map +1 -0
  96. package/dist/hooks/useRequestBody.spec.d.ts +2 -0
  97. package/dist/hooks/useRequestBody.spec.d.ts.map +1 -0
  98. package/dist/hooks/useRequestRawBody.cjs +2 -0
  99. package/dist/hooks/useRequestRawBody.cjs.map +1 -0
  100. package/dist/{src/hooks → hooks}/useRequestRawBody.d.ts +1 -0
  101. package/dist/hooks/useRequestRawBody.d.ts.map +1 -0
  102. package/dist/hooks/useRequestRawBody.mjs +27 -0
  103. package/dist/hooks/useRequestRawBody.mjs.map +1 -0
  104. package/dist/hooks/useRequestRawBody.spec.d.ts +2 -0
  105. package/dist/hooks/useRequestRawBody.spec.d.ts.map +1 -0
  106. package/dist/hooks/useReturnValue.cjs +2 -0
  107. package/dist/hooks/useReturnValue.cjs.map +1 -0
  108. package/dist/hooks/useReturnValue.d.ts.map +1 -0
  109. package/dist/hooks/useReturnValue.mjs +10 -0
  110. package/dist/hooks/useReturnValue.mjs.map +1 -0
  111. package/dist/hooks/useReturnValue.spec.d.ts +2 -0
  112. package/dist/hooks/useReturnValue.spec.d.ts.map +1 -0
  113. package/dist/index.cjs +2 -0
  114. package/dist/index.cjs.map +1 -0
  115. package/dist/index.d.ts.map +1 -0
  116. package/dist/index.mjs +54 -0
  117. package/dist/index.mjs.map +1 -0
  118. package/dist/openapi/analyzerModule/analyzerModule.cjs +2 -0
  119. package/dist/openapi/analyzerModule/analyzerModule.cjs.map +1 -0
  120. package/dist/{src/openapi → openapi}/analyzerModule/analyzerModule.d.ts +1 -0
  121. package/dist/openapi/analyzerModule/analyzerModule.d.ts.map +1 -0
  122. package/dist/openapi/analyzerModule/analyzerModule.mjs +142 -0
  123. package/dist/openapi/analyzerModule/analyzerModule.mjs.map +1 -0
  124. package/dist/openapi/analyzerModule/getSourceFileTimestamp.cjs +2 -0
  125. package/dist/openapi/analyzerModule/getSourceFileTimestamp.cjs.map +1 -0
  126. package/dist/{src/openapi → openapi}/analyzerModule/getSourceFileTimestamp.d.ts +1 -0
  127. package/dist/openapi/analyzerModule/getSourceFileTimestamp.d.ts.map +1 -0
  128. package/dist/openapi/analyzerModule/getSourceFileTimestamp.mjs +37 -0
  129. package/dist/openapi/analyzerModule/getSourceFileTimestamp.mjs.map +1 -0
  130. package/dist/openapi/analyzerModule/nodeParsers.cjs +2 -0
  131. package/dist/openapi/analyzerModule/nodeParsers.cjs.map +1 -0
  132. package/dist/{src/openapi → openapi}/analyzerModule/nodeParsers.d.ts +2 -1
  133. package/dist/openapi/analyzerModule/nodeParsers.d.ts.map +1 -0
  134. package/dist/openapi/analyzerModule/nodeParsers.mjs +371 -0
  135. package/dist/openapi/analyzerModule/nodeParsers.mjs.map +1 -0
  136. package/dist/openapi/analyzerModule/parseEndpoint.cjs +2 -0
  137. package/dist/openapi/analyzerModule/parseEndpoint.cjs.map +1 -0
  138. package/dist/{src/openapi → openapi}/analyzerModule/parseEndpoint.d.ts +1 -0
  139. package/dist/openapi/analyzerModule/parseEndpoint.d.ts.map +1 -0
  140. package/dist/openapi/analyzerModule/parseEndpoint.mjs +185 -0
  141. package/dist/openapi/analyzerModule/parseEndpoint.mjs.map +1 -0
  142. package/dist/openapi/analyzerModule/parseExposedModels.cjs +2 -0
  143. package/dist/openapi/analyzerModule/parseExposedModels.cjs.map +1 -0
  144. package/dist/{src/openapi → openapi}/analyzerModule/parseExposedModels.d.ts +1 -0
  145. package/dist/openapi/analyzerModule/parseExposedModels.d.ts.map +1 -0
  146. package/dist/openapi/analyzerModule/parseExposedModels.mjs +23 -0
  147. package/dist/openapi/analyzerModule/parseExposedModels.mjs.map +1 -0
  148. package/dist/openapi/analyzerModule/sourceFileCache.cjs +2 -0
  149. package/dist/openapi/analyzerModule/sourceFileCache.cjs.map +1 -0
  150. package/dist/{src/openapi → openapi}/analyzerModule/sourceFileCache.d.ts +1 -0
  151. package/dist/openapi/analyzerModule/sourceFileCache.d.ts.map +1 -0
  152. package/dist/openapi/analyzerModule/sourceFileCache.mjs +49 -0
  153. package/dist/openapi/analyzerModule/sourceFileCache.mjs.map +1 -0
  154. package/dist/openapi/analyzerModule/test/openApiAnalyzer.spec.d.ts +2 -0
  155. package/dist/openapi/analyzerModule/test/openApiAnalyzer.spec.d.ts.map +1 -0
  156. package/dist/openapi/analyzerModule/test/openApiAnalyzer.spec.data.d.ts.map +1 -0
  157. package/dist/openapi/analyzerModule/types.d.ts.map +1 -0
  158. package/dist/openapi/discoveryModule/discoverImports/discoverImports.cjs +2 -0
  159. package/dist/openapi/discoveryModule/discoverImports/discoverImports.cjs.map +1 -0
  160. package/dist/{src/openapi → openapi}/discoveryModule/discoverImports/discoverImports.d.ts +1 -0
  161. package/dist/openapi/discoveryModule/discoverImports/discoverImports.d.ts.map +1 -0
  162. package/dist/openapi/discoveryModule/discoverImports/discoverImports.mjs +18 -0
  163. package/dist/openapi/discoveryModule/discoverImports/discoverImports.mjs.map +1 -0
  164. package/dist/openapi/discoveryModule/discoverRouterFiles/data/testRouterA.spec.data.d.ts +4 -0
  165. package/dist/openapi/discoveryModule/discoverRouterFiles/data/testRouterA.spec.data.d.ts.map +1 -0
  166. package/dist/openapi/discoveryModule/discoverRouterFiles/data/testRouterB.spec.data.d.ts +4 -0
  167. package/dist/openapi/discoveryModule/discoverRouterFiles/data/testRouterB.spec.data.d.ts.map +1 -0
  168. package/dist/openapi/discoveryModule/discoverRouterFiles/discoverRouterFiles.cjs +2 -0
  169. package/dist/openapi/discoveryModule/discoverRouterFiles/discoverRouterFiles.cjs.map +1 -0
  170. package/dist/{src/openapi → openapi}/discoveryModule/discoverRouterFiles/discoverRouterFiles.d.ts +3 -3
  171. package/dist/openapi/discoveryModule/discoverRouterFiles/discoverRouterFiles.d.ts.map +1 -0
  172. package/dist/openapi/discoveryModule/discoverRouterFiles/discoverRouterFiles.mjs +43 -0
  173. package/dist/openapi/discoveryModule/discoverRouterFiles/discoverRouterFiles.mjs.map +1 -0
  174. package/dist/openapi/discoveryModule/discoverRouterFiles/discoverRouterFiles.spec.d.ts +2 -0
  175. package/dist/openapi/discoveryModule/discoverRouterFiles/discoverRouterFiles.spec.d.ts.map +1 -0
  176. package/dist/openapi/discoveryModule/discoverRouters/discoverRouters.cjs +2 -0
  177. package/dist/openapi/discoveryModule/discoverRouters/discoverRouters.cjs.map +1 -0
  178. package/dist/{src/openapi → openapi}/discoveryModule/discoverRouters/discoverRouters.d.ts +2 -1
  179. package/dist/openapi/discoveryModule/discoverRouters/discoverRouters.d.ts.map +1 -0
  180. package/dist/openapi/discoveryModule/discoverRouters/discoverRouters.mjs +25 -0
  181. package/dist/openapi/discoveryModule/discoverRouters/discoverRouters.mjs.map +1 -0
  182. package/dist/openapi/discoveryModule/discoverRouters/discoverRouters.spec.d.ts +2 -0
  183. package/dist/openapi/discoveryModule/discoverRouters/discoverRouters.spec.d.ts.map +1 -0
  184. package/dist/openapi/discoveryModule/discoverRouters/discoverRouters.spec.data.d.ts +5 -0
  185. package/dist/openapi/discoveryModule/discoverRouters/discoverRouters.spec.data.d.ts.map +1 -0
  186. package/dist/openapi/discoveryModule/index.d.ts.map +1 -0
  187. package/dist/openapi/generatorModule/generateComponentSchemas.cjs +2 -0
  188. package/dist/openapi/generatorModule/generateComponentSchemas.cjs.map +1 -0
  189. package/dist/{src/openapi → openapi}/generatorModule/generateComponentSchemas.d.ts +1 -0
  190. package/dist/openapi/generatorModule/generateComponentSchemas.d.ts.map +1 -0
  191. package/dist/openapi/generatorModule/generateComponentSchemas.mjs +11 -0
  192. package/dist/openapi/generatorModule/generateComponentSchemas.mjs.map +1 -0
  193. package/dist/openapi/generatorModule/generatePaths.cjs +2 -0
  194. package/dist/openapi/generatorModule/generatePaths.cjs.map +1 -0
  195. package/dist/{src/openapi → openapi}/generatorModule/generatePaths.d.ts +1 -0
  196. package/dist/openapi/generatorModule/generatePaths.d.ts.map +1 -0
  197. package/dist/openapi/generatorModule/generatePaths.mjs +77 -0
  198. package/dist/openapi/generatorModule/generatePaths.mjs.map +1 -0
  199. package/dist/openapi/generatorModule/generatorModule.cjs +2 -0
  200. package/dist/openapi/generatorModule/generatorModule.cjs.map +1 -0
  201. package/dist/openapi/generatorModule/generatorModule.d.ts +17 -0
  202. package/dist/openapi/generatorModule/generatorModule.d.ts.map +1 -0
  203. package/dist/openapi/generatorModule/generatorModule.mjs +17 -0
  204. package/dist/openapi/generatorModule/generatorModule.mjs.map +1 -0
  205. package/dist/openapi/generatorModule/getSchema.cjs +2 -0
  206. package/dist/openapi/generatorModule/getSchema.cjs.map +1 -0
  207. package/dist/{src/openapi → openapi}/generatorModule/getSchema.d.ts +1 -0
  208. package/dist/openapi/generatorModule/getSchema.d.ts.map +1 -0
  209. package/dist/openapi/generatorModule/getSchema.mjs +108 -0
  210. package/dist/openapi/generatorModule/getSchema.mjs.map +1 -0
  211. package/dist/openapi/generatorModule/index.d.ts.map +1 -0
  212. package/dist/openapi/generatorModule/test/openApiGenerator.spec.d.ts +2 -0
  213. package/dist/openapi/generatorModule/test/openApiGenerator.spec.d.ts.map +1 -0
  214. package/dist/{src/openapi → openapi}/generatorModule/test/openApiGenerator.spec.data.d.ts +1 -0
  215. package/dist/{src/openapi → openapi}/generatorModule/test/openApiGenerator.spec.data.d.ts.map +1 -1
  216. package/dist/openapi/initOpenApiEngine.cjs +2 -0
  217. package/dist/openapi/initOpenApiEngine.cjs.map +1 -0
  218. package/dist/{src/openapi → openapi}/initOpenApiEngine.d.ts +2 -1
  219. package/dist/openapi/initOpenApiEngine.d.ts.map +1 -0
  220. package/dist/openapi/initOpenApiEngine.mjs +11 -0
  221. package/dist/openapi/initOpenApiEngine.mjs.map +1 -0
  222. package/dist/openapi/manager/OpenApiManager.cjs +2 -0
  223. package/dist/openapi/manager/OpenApiManager.cjs.map +1 -0
  224. package/dist/{src/openapi → openapi}/manager/OpenApiManager.d.ts +1 -0
  225. package/dist/openapi/manager/OpenApiManager.d.ts.map +1 -0
  226. package/dist/openapi/manager/OpenApiManager.mjs +81 -0
  227. package/dist/openapi/manager/OpenApiManager.mjs.map +1 -0
  228. package/dist/openapi/router/OpenApiRouter.cjs +2 -0
  229. package/dist/openapi/router/OpenApiRouter.cjs.map +1 -0
  230. package/dist/openapi/router/OpenApiRouter.d.ts +4 -0
  231. package/dist/openapi/router/OpenApiRouter.d.ts.map +1 -0
  232. package/dist/openapi/router/OpenApiRouter.mjs +10 -0
  233. package/dist/openapi/router/OpenApiRouter.mjs.map +1 -0
  234. package/dist/{src/openapi → openapi}/types.d.ts +1 -0
  235. package/dist/openapi/types.d.ts.map +1 -0
  236. package/dist/router/Router.cjs +2 -0
  237. package/dist/router/Router.cjs.map +1 -0
  238. package/dist/{src/router → router}/Router.d.ts +3 -2
  239. package/dist/router/Router.d.ts.map +1 -0
  240. package/dist/router/Router.mjs +63 -0
  241. package/dist/router/Router.mjs.map +1 -0
  242. package/dist/router/parseEndpointReturnValue.cjs +2 -0
  243. package/dist/router/parseEndpointReturnValue.cjs.map +1 -0
  244. package/dist/router/parseEndpointReturnValue.d.ts.map +1 -0
  245. package/dist/router/parseEndpointReturnValue.mjs +21 -0
  246. package/dist/router/parseEndpointReturnValue.mjs.map +1 -0
  247. package/dist/router/parseEndpointReturnValue.spec.d.ts +2 -0
  248. package/dist/router/parseEndpointReturnValue.spec.d.ts.map +1 -0
  249. package/dist/{src/setupTests.d.ts.map → setupTests.d.ts.map} +1 -1
  250. package/dist/test/TestAppRouter.d.ts +8 -0
  251. package/dist/test/TestAppRouter.d.ts.map +1 -0
  252. package/dist/test/app.d.ts +4 -0
  253. package/dist/test/app.d.ts.map +1 -0
  254. package/dist/test/app.spec.d.ts +2 -0
  255. package/dist/test/app.spec.d.ts.map +1 -0
  256. package/dist/utils/TypeUtils.d.ts.map +1 -0
  257. package/dist/utils/loadTestData.d.ts +2 -0
  258. package/dist/utils/loadTestData.d.ts.map +1 -0
  259. package/dist/utils/logger.cjs +2 -0
  260. package/dist/utils/logger.cjs.map +1 -0
  261. package/dist/utils/logger.d.ts.map +1 -0
  262. package/dist/utils/logger.mjs +62 -0
  263. package/dist/utils/logger.mjs.map +1 -0
  264. package/dist/{src/utils → utils}/mockContext.d.ts +2 -1
  265. package/dist/utils/mockContext.d.ts.map +1 -0
  266. package/dist/utils/nameOf.d.ts.map +1 -0
  267. package/dist/utils/object.cjs +2 -0
  268. package/dist/utils/object.cjs.map +1 -0
  269. package/dist/utils/object.d.ts.map +1 -0
  270. package/dist/utils/object.mjs +7 -0
  271. package/dist/utils/object.mjs.map +1 -0
  272. package/dist/utils/object.spec.d.ts +2 -0
  273. package/dist/utils/object.spec.d.ts.map +1 -0
  274. package/dist/{src/utils → utils}/printers.d.ts +1 -0
  275. package/dist/utils/printers.d.ts.map +1 -0
  276. package/dist/utils/printers.spec.d.ts +2 -0
  277. package/dist/utils/printers.spec.d.ts.map +1 -0
  278. package/dist/utils/validationMessages.cjs +2 -0
  279. package/dist/utils/validationMessages.cjs.map +1 -0
  280. package/dist/{src/utils → utils}/validationMessages.d.ts +1 -0
  281. package/dist/utils/validationMessages.d.ts.map +1 -0
  282. package/dist/utils/validationMessages.mjs +20 -0
  283. package/dist/utils/validationMessages.mjs.map +1 -0
  284. package/dist/validators/BuiltInValidators.cjs +2 -0
  285. package/dist/validators/BuiltInValidators.cjs.map +1 -0
  286. package/dist/{src/validators → validators}/BuiltInValidators.d.ts +10 -10
  287. package/dist/validators/BuiltInValidators.d.ts.map +1 -0
  288. package/dist/validators/BuiltInValidators.mjs +66 -0
  289. package/dist/validators/BuiltInValidators.mjs.map +1 -0
  290. package/dist/validators/InternalParamWrappers.cjs +2 -0
  291. package/dist/validators/InternalParamWrappers.cjs.map +1 -0
  292. package/dist/{src/validators → validators}/InternalParamWrappers.d.ts +1 -0
  293. package/dist/validators/InternalParamWrappers.d.ts.map +1 -0
  294. package/dist/validators/InternalParamWrappers.mjs +8 -0
  295. package/dist/validators/InternalParamWrappers.mjs.map +1 -0
  296. package/dist/validators/ParamWrappers.cjs +2 -0
  297. package/dist/validators/ParamWrappers.cjs.map +1 -0
  298. package/dist/{src/validators → validators}/ParamWrappers.d.ts +1 -0
  299. package/dist/validators/ParamWrappers.d.ts.map +1 -0
  300. package/dist/validators/ParamWrappers.mjs +16 -0
  301. package/dist/validators/ParamWrappers.mjs.map +1 -0
  302. package/dist/validators/types.d.ts.map +1 -0
  303. package/eslint.config.mjs +1 -2
  304. package/package.json +110 -10
  305. package/src/openapi/analyzerModule/nodeParsers.ts +17 -1
  306. package/src/openapi/discoveryModule/discoverImports/discoverImports.ts +0 -1
  307. package/src/openapi/discoveryModule/discoverRouters/discoverRouters.ts +1 -3
  308. package/tsconfig.json +4 -2
  309. package/vite.config.ts +92 -5
  310. package/dist/cli/cli.d.ts +0 -2
  311. package/dist/cli/cli.d.ts.map +0 -1
  312. package/dist/cli/cli.js +0 -89
  313. package/dist/cli/prettyprint.d.ts +0 -4
  314. package/dist/cli/prettyprint.d.ts.map +0 -1
  315. package/dist/cli/prettyprint.js +0 -19
  316. package/dist/src/errors/BaseHttpError.d.ts.map +0 -1
  317. package/dist/src/errors/BaseHttpError.js +0 -13
  318. package/dist/src/errors/HttpErrorHandler.d.ts.map +0 -1
  319. package/dist/src/errors/HttpErrorHandler.js +0 -23
  320. package/dist/src/errors/UserFacingErrors.d.ts.map +0 -1
  321. package/dist/src/errors/UserFacingErrors.js +0 -23
  322. package/dist/src/hooks/authentication/useAuth.d.ts.map +0 -1
  323. package/dist/src/hooks/authentication/useAuth.js +0 -7
  324. package/dist/src/hooks/authentication/useOptionalAuth.d.ts.map +0 -1
  325. package/dist/src/hooks/authentication/useOptionalAuth.js +0 -16
  326. package/dist/src/hooks/useApiEndpoint.d.ts.map +0 -1
  327. package/dist/src/hooks/useApiEndpoint.js +0 -7
  328. package/dist/src/hooks/useApiHeader/index.d.ts.map +0 -1
  329. package/dist/src/hooks/useApiHeader/index.js +0 -17
  330. package/dist/src/hooks/useApiHeader/useApiHeader.d.ts.map +0 -1
  331. package/dist/src/hooks/useApiHeader/useApiHeader.js +0 -6
  332. package/dist/src/hooks/useApiHeader/useApiHeader.spec.data.d.ts.map +0 -1
  333. package/dist/src/hooks/useApiHeader/useApiHeader.spec.data.js +0 -22
  334. package/dist/src/hooks/useCookieParams.d.ts.map +0 -1
  335. package/dist/src/hooks/useCookieParams.js +0 -50
  336. package/dist/src/hooks/useExposeApiModel/index.d.ts.map +0 -1
  337. package/dist/src/hooks/useExposeApiModel/index.js +0 -17
  338. package/dist/src/hooks/useExposeApiModel/useExposeApiModel.d.ts.map +0 -1
  339. package/dist/src/hooks/useExposeApiModel/useExposeApiModel.js +0 -9
  340. package/dist/src/hooks/useExposeApiModel/useExposeApiModel.spec.data.d.ts.map +0 -1
  341. package/dist/src/hooks/useExposeApiModel/useExposeApiModel.spec.data.js +0 -16
  342. package/dist/src/hooks/useHeaderParams.d.ts.map +0 -1
  343. package/dist/src/hooks/useHeaderParams.js +0 -52
  344. package/dist/src/hooks/usePathParams.d.ts.map +0 -1
  345. package/dist/src/hooks/usePathParams.js +0 -46
  346. package/dist/src/hooks/useQueryParams.d.ts.map +0 -1
  347. package/dist/src/hooks/useQueryParams.js +0 -50
  348. package/dist/src/hooks/useRequestBody.d.ts.map +0 -1
  349. package/dist/src/hooks/useRequestBody.js +0 -59
  350. package/dist/src/hooks/useRequestRawBody.d.ts.map +0 -1
  351. package/dist/src/hooks/useRequestRawBody.js +0 -34
  352. package/dist/src/hooks/useReturnValue.d.ts.map +0 -1
  353. package/dist/src/hooks/useReturnValue.js +0 -12
  354. package/dist/src/index.d.ts.map +0 -1
  355. package/dist/src/index.js +0 -34
  356. package/dist/src/openapi/analyzerModule/analyzerModule.d.ts.map +0 -1
  357. package/dist/src/openapi/analyzerModule/analyzerModule.js +0 -257
  358. package/dist/src/openapi/analyzerModule/analyzerWorker.d.ts +0 -2
  359. package/dist/src/openapi/analyzerModule/analyzerWorker.d.ts.map +0 -1
  360. package/dist/src/openapi/analyzerModule/analyzerWorker.js +0 -10
  361. package/dist/src/openapi/analyzerModule/getSourceFileTimestamp.d.ts.map +0 -1
  362. package/dist/src/openapi/analyzerModule/getSourceFileTimestamp.js +0 -52
  363. package/dist/src/openapi/analyzerModule/nodeParsers.d.ts.map +0 -1
  364. package/dist/src/openapi/analyzerModule/nodeParsers.js +0 -555
  365. package/dist/src/openapi/analyzerModule/parseEndpoint.d.ts.map +0 -1
  366. package/dist/src/openapi/analyzerModule/parseEndpoint.js +0 -291
  367. package/dist/src/openapi/analyzerModule/parseExposedModels.d.ts.map +0 -1
  368. package/dist/src/openapi/analyzerModule/parseExposedModels.js +0 -32
  369. package/dist/src/openapi/analyzerModule/sourceFileCache.d.ts.map +0 -1
  370. package/dist/src/openapi/analyzerModule/sourceFileCache.js +0 -67
  371. package/dist/src/openapi/analyzerModule/test/openApiAnalyzer.spec.data.d.ts.map +0 -1
  372. package/dist/src/openapi/analyzerModule/test/openApiAnalyzer.spec.data.js +0 -427
  373. package/dist/src/openapi/analyzerModule/types.d.ts.map +0 -1
  374. package/dist/src/openapi/analyzerModule/types.js +0 -2
  375. package/dist/src/openapi/discoveryModule/discoverImports/discoverImports.d.ts.map +0 -1
  376. package/dist/src/openapi/discoveryModule/discoverImports/discoverImports.js +0 -33
  377. package/dist/src/openapi/discoveryModule/discoverRouterFiles/data/testRouterA.spec.data.d.ts +0 -3
  378. package/dist/src/openapi/discoveryModule/discoverRouterFiles/data/testRouterA.spec.data.d.ts.map +0 -1
  379. package/dist/src/openapi/discoveryModule/discoverRouterFiles/data/testRouterA.spec.data.js +0 -8
  380. package/dist/src/openapi/discoveryModule/discoverRouterFiles/data/testRouterB.spec.data.d.ts +0 -3
  381. package/dist/src/openapi/discoveryModule/discoverRouterFiles/data/testRouterB.spec.data.d.ts.map +0 -1
  382. package/dist/src/openapi/discoveryModule/discoverRouterFiles/data/testRouterB.spec.data.js +0 -8
  383. package/dist/src/openapi/discoveryModule/discoverRouterFiles/discoverRouterFiles.d.ts.map +0 -1
  384. package/dist/src/openapi/discoveryModule/discoverRouterFiles/discoverRouterFiles.js +0 -91
  385. package/dist/src/openapi/discoveryModule/discoverRouters/discoverRouters.d.ts.map +0 -1
  386. package/dist/src/openapi/discoveryModule/discoverRouters/discoverRouters.js +0 -31
  387. package/dist/src/openapi/discoveryModule/discoverRouters/discoverRouters.spec.data.d.ts +0 -4
  388. package/dist/src/openapi/discoveryModule/discoverRouters/discoverRouters.spec.data.d.ts.map +0 -1
  389. package/dist/src/openapi/discoveryModule/discoverRouters/discoverRouters.spec.data.js +0 -38
  390. package/dist/src/openapi/discoveryModule/index.d.ts.map +0 -1
  391. package/dist/src/openapi/discoveryModule/index.js +0 -18
  392. package/dist/src/openapi/generatorModule/generateComponentSchemas.d.ts.map +0 -1
  393. package/dist/src/openapi/generatorModule/generateComponentSchemas.js +0 -12
  394. package/dist/src/openapi/generatorModule/generatePaths.d.ts.map +0 -1
  395. package/dist/src/openapi/generatorModule/generatePaths.js +0 -118
  396. package/dist/src/openapi/generatorModule/generatorModule.d.ts +0 -16
  397. package/dist/src/openapi/generatorModule/generatorModule.d.ts.map +0 -1
  398. package/dist/src/openapi/generatorModule/generatorModule.js +0 -18
  399. package/dist/src/openapi/generatorModule/getSchema.d.ts.map +0 -1
  400. package/dist/src/openapi/generatorModule/getSchema.js +0 -143
  401. package/dist/src/openapi/generatorModule/index.d.ts.map +0 -1
  402. package/dist/src/openapi/generatorModule/index.js +0 -20
  403. package/dist/src/openapi/generatorModule/test/openApiGenerator.spec.data.js +0 -1126
  404. package/dist/src/openapi/initOpenApiEngine.d.ts.map +0 -1
  405. package/dist/src/openapi/initOpenApiEngine.js +0 -14
  406. package/dist/src/openapi/manager/OpenApiManager.d.ts.map +0 -1
  407. package/dist/src/openapi/manager/OpenApiManager.js +0 -86
  408. package/dist/src/openapi/router/OpenApiRouter.d.ts +0 -3
  409. package/dist/src/openapi/router/OpenApiRouter.d.ts.map +0 -1
  410. package/dist/src/openapi/router/OpenApiRouter.js +0 -11
  411. package/dist/src/openapi/types.d.ts.map +0 -1
  412. package/dist/src/openapi/types.js +0 -2
  413. package/dist/src/router/Router.d.ts.map +0 -1
  414. package/dist/src/router/Router.js +0 -84
  415. package/dist/src/router/parseEndpointReturnValue.d.ts.map +0 -1
  416. package/dist/src/router/parseEndpointReturnValue.js +0 -40
  417. package/dist/src/router/responseValueToJson.d.ts +0 -2
  418. package/dist/src/router/responseValueToJson.d.ts.map +0 -1
  419. package/dist/src/router/responseValueToJson.js +0 -10
  420. package/dist/src/setupTests.js +0 -3
  421. package/dist/src/test/TestAppRouter.d.ts +0 -7
  422. package/dist/src/test/TestAppRouter.d.ts.map +0 -1
  423. package/dist/src/test/TestAppRouter.js +0 -64
  424. package/dist/src/test/app.d.ts +0 -3
  425. package/dist/src/test/app.d.ts.map +0 -1
  426. package/dist/src/test/app.js +0 -41
  427. package/dist/src/utils/TypeUtils.d.ts.map +0 -1
  428. package/dist/src/utils/TypeUtils.js +0 -2
  429. package/dist/src/utils/loadTestData.d.ts +0 -2
  430. package/dist/src/utils/loadTestData.d.ts.map +0 -1
  431. package/dist/src/utils/loadTestData.js +0 -50
  432. package/dist/src/utils/logger.d.ts.map +0 -1
  433. package/dist/src/utils/logger.js +0 -80
  434. package/dist/src/utils/mockContext.d.ts.map +0 -1
  435. package/dist/src/utils/mockContext.js +0 -95
  436. package/dist/src/utils/nameOf.d.ts.map +0 -1
  437. package/dist/src/utils/nameOf.js +0 -7
  438. package/dist/src/utils/object.d.ts.map +0 -1
  439. package/dist/src/utils/object.js +0 -25
  440. package/dist/src/utils/printers.d.ts.map +0 -1
  441. package/dist/src/utils/printers.js +0 -86
  442. package/dist/src/utils/validationMessages.d.ts.map +0 -1
  443. package/dist/src/utils/validationMessages.js +0 -43
  444. package/dist/src/validators/BuiltInValidators.d.ts.map +0 -1
  445. package/dist/src/validators/BuiltInValidators.js +0 -66
  446. package/dist/src/validators/InternalParamWrappers.d.ts.map +0 -1
  447. package/dist/src/validators/InternalParamWrappers.js +0 -5
  448. package/dist/src/validators/ParamWrappers.d.ts.map +0 -1
  449. package/dist/src/validators/ParamWrappers.js +0 -9
  450. package/dist/src/validators/types.d.ts.map +0 -1
  451. package/dist/src/validators/types.js +0 -2
  452. package/dist/tsconfig.build.tsbuildinfo +0 -1
  453. package/tsconfig.build.json +0 -15
  454. /package/dist/{src/hooks → hooks}/useApiEndpoint.d.ts +0 -0
  455. /package/dist/{src/hooks → hooks}/useApiHeader/index.d.ts +0 -0
  456. /package/dist/{src/hooks → hooks}/useApiHeader/useApiHeader.spec.data.d.ts +0 -0
  457. /package/dist/{src/hooks → hooks}/useExposeApiModel/index.d.ts +0 -0
  458. /package/dist/{src/hooks → hooks}/useExposeApiModel/useExposeApiModel.d.ts +0 -0
  459. /package/dist/{src/hooks → hooks}/useExposeApiModel/useExposeApiModel.spec.data.d.ts +0 -0
  460. /package/dist/{src/hooks → hooks}/useReturnValue.d.ts +0 -0
  461. /package/dist/{src/index.d.ts → index.d.ts} +0 -0
  462. /package/dist/{src/openapi → openapi}/analyzerModule/test/openApiAnalyzer.spec.data.d.ts +0 -0
  463. /package/dist/{src/openapi → openapi}/analyzerModule/types.d.ts +0 -0
  464. /package/dist/{src/openapi → openapi}/discoveryModule/index.d.ts +0 -0
  465. /package/dist/{src/openapi → openapi}/generatorModule/index.d.ts +0 -0
  466. /package/dist/{src/router → router}/parseEndpointReturnValue.d.ts +0 -0
  467. /package/dist/{src/setupTests.d.ts → setupTests.d.ts} +0 -0
  468. /package/dist/{src/utils → utils}/TypeUtils.d.ts +0 -0
  469. /package/dist/{src/utils → utils}/logger.d.ts +0 -0
  470. /package/dist/{src/utils → utils}/nameOf.d.ts +0 -0
  471. /package/dist/{src/utils → utils}/object.d.ts +0 -0
  472. /package/dist/{src/validators → validators}/types.d.ts +0 -0
@@ -0,0 +1,2 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("../errors/UserFacingErrors.cjs"),r=require("./InternalParamWrappers.cjs"),t=r.BuiltInValidatorParam({parse:a=>String(a),validate:a=>a.includes("@"),description:"A string containing an '@' sign",errorMessage:"Must include an '@' sign"}),l=r.BuiltInValidatorParam({prevalidate:a=>a==="0"||a==="1"||a==="false"||a==="true",parse:a=>a==="1"||a==="true",description:"Any boolean value",errorMessage:"Must be '0', '1', 'false' or 'true'"}),i=r.BuiltInValidatorParam({prevalidate:a=>a==="0"||a==="1"||a==="false"||a==="true"||a===null,parse:a=>a==="1"||a==="true"||a===null,description:"Any boolean value",errorMessage:"Must be '0', '1', 'false' or 'true'"}),n=r.BuiltInValidatorParam({parse:a=>String(a),description:"Any string value",errorMessage:"Must be a valid string"}),o=r.BuiltInValidatorParam({parse:a=>a,description:"Any string or null value",errorMessage:"Must be a valid string or null"}),s=r.BuiltInValidatorParam({parse:a=>String(a),validate:a=>a.length>0,description:"Any string value with at least one character",errorMessage:"Must be a string with at least one character"}),u=r.BuiltInValidatorParam({parse:a=>Number(a),validate:a=>Number.isFinite(a)&&!Number.isNaN(a),description:"Any numeric value",errorMessage:"Must be a valid number"}),d=r.BuiltInValidatorParam({parse:a=>a===null?null:Number(a),validate:a=>a===null||Number.isFinite(a)&&!Number.isNaN(a),description:"Any numeric value",errorMessage:"Must be a valid number"}),g=r.BuiltInValidatorParam({parse:a=>{if(a===null)throw new e.ValidationError("Encountered an unexpected null value");return BigInt(a)},description:"Any numeric value",errorMessage:"Must be a valid number"}),c=r.BuiltInValidatorParam({parse:a=>a===null?null:BigInt(a),description:"Any numeric value",errorMessage:"Must be a valid number"});exports.BigIntValidator=g;exports.BooleanValidator=l;exports.EmailValidator=t;exports.NonEmptyStringValidator=s;exports.NullableBigIntValidator=c;exports.NullableBooleanValidator=i;exports.NullableNumberValidator=d;exports.NullableStringValidator=o;exports.NumberValidator=u;exports.StringValidator=n;
2
+ //# sourceMappingURL=BuiltInValidators.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BuiltInValidators.cjs","sources":["../../src/validators/BuiltInValidators.ts"],"sourcesContent":["import { ValidationError } from '../errors/UserFacingErrors'\nimport { BuiltInValidatorParam } from './InternalParamWrappers'\n\nexport const EmailValidator = BuiltInValidatorParam({\n\tparse: (v) => String(v),\n\tvalidate: (v) => v.includes('@'),\n\tdescription: \"A string containing an '@' sign\",\n\terrorMessage: \"Must include an '@' sign\",\n})\nexport const BooleanValidator = BuiltInValidatorParam({\n\tprevalidate: (v) => v === '0' || v === '1' || v === 'false' || v === 'true',\n\tparse: (v) => v === '1' || v === 'true',\n\tdescription: 'Any boolean value',\n\terrorMessage: \"Must be '0', '1', 'false' or 'true'\",\n})\nexport const NullableBooleanValidator = BuiltInValidatorParam({\n\tprevalidate: (v) => v === '0' || v === '1' || v === 'false' || v === 'true' || v === null,\n\tparse: (v) => v === '1' || v === 'true' || v === null,\n\tdescription: 'Any boolean value',\n\terrorMessage: \"Must be '0', '1', 'false' or 'true'\",\n})\nexport const StringValidator = BuiltInValidatorParam({\n\tparse: (v) => String(v),\n\tdescription: 'Any string value',\n\terrorMessage: 'Must be a valid string',\n})\nexport const NullableStringValidator = BuiltInValidatorParam({\n\tparse: (v) => v,\n\tdescription: 'Any string or null value',\n\terrorMessage: 'Must be a valid string or null',\n})\nexport const NonEmptyStringValidator = BuiltInValidatorParam({\n\tparse: (v) => String(v),\n\tvalidate: (v) => v.length > 0,\n\tdescription: 'Any string value with at least one character',\n\terrorMessage: 'Must be a string with at least one character',\n})\nexport const NumberValidator = BuiltInValidatorParam({\n\tparse: (v) => Number(v),\n\tvalidate: (v) => Number.isFinite(v) && !Number.isNaN(v),\n\tdescription: 'Any numeric value',\n\terrorMessage: 'Must be a valid number',\n})\nexport const NullableNumberValidator = BuiltInValidatorParam({\n\tparse: (v) => (v === null ? null : Number(v)),\n\tvalidate: (v) => v === null || (Number.isFinite(v) && !Number.isNaN(v)),\n\tdescription: 'Any numeric value',\n\terrorMessage: 'Must be a valid number',\n})\nexport const BigIntValidator = BuiltInValidatorParam({\n\tparse: (v) => {\n\t\tif (v === null) {\n\t\t\tthrow new ValidationError('Encountered an unexpected null value')\n\t\t}\n\t\treturn BigInt(v)\n\t},\n\tdescription: 'Any numeric value',\n\terrorMessage: 'Must be a valid number',\n})\nexport const NullableBigIntValidator = BuiltInValidatorParam({\n\tparse: (v) => (v === null ? null : BigInt(v)),\n\tdescription: 'Any numeric value',\n\terrorMessage: 'Must be a valid number',\n})\n"],"names":["EmailValidator","BuiltInValidatorParam","v","BooleanValidator","NullableBooleanValidator","StringValidator","NullableStringValidator","NonEmptyStringValidator","NumberValidator","NullableNumberValidator","BigIntValidator","ValidationError","NullableBigIntValidator"],"mappings":"2KAGaA,EAAiBC,EAAAA,sBAAsB,CACnD,MAAQC,GAAM,OAAOA,CAAC,EACtB,SAAWA,GAAMA,EAAE,SAAS,GAAG,EAC/B,YAAa,kCACb,aAAc,0BACf,CAAC,EACYC,EAAmBF,EAAAA,sBAAsB,CACrD,YAAcC,GAAMA,IAAM,KAAOA,IAAM,KAAOA,IAAM,SAAWA,IAAM,OACrE,MAAQA,GAAMA,IAAM,KAAOA,IAAM,OACjC,YAAa,oBACb,aAAc,qCACf,CAAC,EACYE,EAA2BH,EAAAA,sBAAsB,CAC7D,YAAcC,GAAMA,IAAM,KAAOA,IAAM,KAAOA,IAAM,SAAWA,IAAM,QAAUA,IAAM,KACrF,MAAQA,GAAMA,IAAM,KAAOA,IAAM,QAAUA,IAAM,KACjD,YAAa,oBACb,aAAc,qCACf,CAAC,EACYG,EAAkBJ,EAAAA,sBAAsB,CACpD,MAAQC,GAAM,OAAOA,CAAC,EACtB,YAAa,mBACb,aAAc,wBACf,CAAC,EACYI,EAA0BL,EAAAA,sBAAsB,CAC5D,MAAQC,GAAMA,EACd,YAAa,2BACb,aAAc,gCACf,CAAC,EACYK,EAA0BN,EAAAA,sBAAsB,CAC5D,MAAQC,GAAM,OAAOA,CAAC,EACtB,SAAWA,GAAMA,EAAE,OAAS,EAC5B,YAAa,+CACb,aAAc,8CACf,CAAC,EACYM,EAAkBP,EAAAA,sBAAsB,CACpD,MAAQC,GAAM,OAAOA,CAAC,EACtB,SAAWA,GAAM,OAAO,SAASA,CAAC,GAAK,CAAC,OAAO,MAAMA,CAAC,EACtD,YAAa,oBACb,aAAc,wBACf,CAAC,EACYO,EAA0BR,EAAAA,sBAAsB,CAC5D,MAAQC,GAAOA,IAAM,KAAO,KAAO,OAAOA,CAAC,EAC3C,SAAWA,GAAMA,IAAM,MAAS,OAAO,SAASA,CAAC,GAAK,CAAC,OAAO,MAAMA,CAAC,EACrE,YAAa,oBACb,aAAc,wBACf,CAAC,EACYQ,EAAkBT,EAAAA,sBAAsB,CACpD,MAAQC,GAAM,CACb,GAAIA,IAAM,KACH,MAAA,IAAIS,kBAAgB,sCAAsC,EAEjE,OAAO,OAAOT,CAAC,CAChB,EACA,YAAa,oBACb,aAAc,wBACf,CAAC,EACYU,EAA0BX,EAAAA,sBAAsB,CAC5D,MAAQC,GAAOA,IAAM,KAAO,KAAO,OAAOA,CAAC,EAC3C,YAAa,oBACb,aAAc,wBACf,CAAC"}
@@ -1,58 +1,58 @@
1
- export declare const EmailValidator: import("./types").Validator<string> & {
1
+ export declare const EmailValidator: import('./types').Validator<string> & {
2
2
  description: "A string containing an '@' sign";
3
3
  errorMessage: "Must include an '@' sign";
4
4
  } & {
5
5
  optional: false;
6
6
  };
7
- export declare const BooleanValidator: import("./types").Validator<boolean> & {
7
+ export declare const BooleanValidator: import('./types').Validator<boolean> & {
8
8
  description: "Any boolean value";
9
9
  errorMessage: "Must be '0', '1', 'false' or 'true'";
10
10
  } & {
11
11
  optional: false;
12
12
  };
13
- export declare const NullableBooleanValidator: import("./types").Validator<boolean> & {
13
+ export declare const NullableBooleanValidator: import('./types').Validator<boolean> & {
14
14
  description: "Any boolean value";
15
15
  errorMessage: "Must be '0', '1', 'false' or 'true'";
16
16
  } & {
17
17
  optional: false;
18
18
  };
19
- export declare const StringValidator: import("./types").Validator<string> & {
19
+ export declare const StringValidator: import('./types').Validator<string> & {
20
20
  description: "Any string value";
21
21
  errorMessage: "Must be a valid string";
22
22
  } & {
23
23
  optional: false;
24
24
  };
25
- export declare const NullableStringValidator: import("./types").Validator<string | null> & {
25
+ export declare const NullableStringValidator: import('./types').Validator<string | null> & {
26
26
  description: "Any string or null value";
27
27
  errorMessage: "Must be a valid string or null";
28
28
  } & {
29
29
  optional: false;
30
30
  };
31
- export declare const NonEmptyStringValidator: import("./types").Validator<string> & {
31
+ export declare const NonEmptyStringValidator: import('./types').Validator<string> & {
32
32
  description: "Any string value with at least one character";
33
33
  errorMessage: "Must be a string with at least one character";
34
34
  } & {
35
35
  optional: false;
36
36
  };
37
- export declare const NumberValidator: import("./types").Validator<number> & {
37
+ export declare const NumberValidator: import('./types').Validator<number> & {
38
38
  description: "Any numeric value";
39
39
  errorMessage: "Must be a valid number";
40
40
  } & {
41
41
  optional: false;
42
42
  };
43
- export declare const NullableNumberValidator: import("./types").Validator<number | null> & {
43
+ export declare const NullableNumberValidator: import('./types').Validator<number | null> & {
44
44
  description: "Any numeric value";
45
45
  errorMessage: "Must be a valid number";
46
46
  } & {
47
47
  optional: false;
48
48
  };
49
- export declare const BigIntValidator: import("./types").Validator<bigint> & {
49
+ export declare const BigIntValidator: import('./types').Validator<bigint> & {
50
50
  description: "Any numeric value";
51
51
  errorMessage: "Must be a valid number";
52
52
  } & {
53
53
  optional: false;
54
54
  };
55
- export declare const NullableBigIntValidator: import("./types").Validator<bigint | null> & {
55
+ export declare const NullableBigIntValidator: import('./types').Validator<bigint | null> & {
56
56
  description: "Any numeric value";
57
57
  errorMessage: "Must be a valid number";
58
58
  } & {
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BuiltInValidators.d.ts","sourceRoot":"","sources":["../../src/validators/BuiltInValidators.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,cAAc;;;;;CAKzB,CAAA;AACF,eAAO,MAAM,gBAAgB;;;;;CAK3B,CAAA;AACF,eAAO,MAAM,wBAAwB;;;;;CAKnC,CAAA;AACF,eAAO,MAAM,eAAe;;;;;CAI1B,CAAA;AACF,eAAO,MAAM,uBAAuB;;;;;CAIlC,CAAA;AACF,eAAO,MAAM,uBAAuB;;;;;CAKlC,CAAA;AACF,eAAO,MAAM,eAAe;;;;;CAK1B,CAAA;AACF,eAAO,MAAM,uBAAuB;;;;;CAKlC,CAAA;AACF,eAAO,MAAM,eAAe;;;;;CAS1B,CAAA;AACF,eAAO,MAAM,uBAAuB;;;;;CAIlC,CAAA"}
@@ -0,0 +1,66 @@
1
+ import { ValidationError as a } from "../errors/UserFacingErrors.mjs";
2
+ import { BuiltInValidatorParam as r } from "./InternalParamWrappers.mjs";
3
+ const i = r({
4
+ parse: (e) => String(e),
5
+ validate: (e) => e.includes("@"),
6
+ description: "A string containing an '@' sign",
7
+ errorMessage: "Must include an '@' sign"
8
+ }), l = r({
9
+ prevalidate: (e) => e === "0" || e === "1" || e === "false" || e === "true",
10
+ parse: (e) => e === "1" || e === "true",
11
+ description: "Any boolean value",
12
+ errorMessage: "Must be '0', '1', 'false' or 'true'"
13
+ }), s = r({
14
+ prevalidate: (e) => e === "0" || e === "1" || e === "false" || e === "true" || e === null,
15
+ parse: (e) => e === "1" || e === "true" || e === null,
16
+ description: "Any boolean value",
17
+ errorMessage: "Must be '0', '1', 'false' or 'true'"
18
+ }), o = r({
19
+ parse: (e) => String(e),
20
+ description: "Any string value",
21
+ errorMessage: "Must be a valid string"
22
+ }), u = r({
23
+ parse: (e) => e,
24
+ description: "Any string or null value",
25
+ errorMessage: "Must be a valid string or null"
26
+ }), d = r({
27
+ parse: (e) => String(e),
28
+ validate: (e) => e.length > 0,
29
+ description: "Any string value with at least one character",
30
+ errorMessage: "Must be a string with at least one character"
31
+ }), c = r({
32
+ parse: (e) => Number(e),
33
+ validate: (e) => Number.isFinite(e) && !Number.isNaN(e),
34
+ description: "Any numeric value",
35
+ errorMessage: "Must be a valid number"
36
+ }), g = r({
37
+ parse: (e) => e === null ? null : Number(e),
38
+ validate: (e) => e === null || Number.isFinite(e) && !Number.isNaN(e),
39
+ description: "Any numeric value",
40
+ errorMessage: "Must be a valid number"
41
+ }), b = r({
42
+ parse: (e) => {
43
+ if (e === null)
44
+ throw new a("Encountered an unexpected null value");
45
+ return BigInt(e);
46
+ },
47
+ description: "Any numeric value",
48
+ errorMessage: "Must be a valid number"
49
+ }), p = r({
50
+ parse: (e) => e === null ? null : BigInt(e),
51
+ description: "Any numeric value",
52
+ errorMessage: "Must be a valid number"
53
+ });
54
+ export {
55
+ b as BigIntValidator,
56
+ l as BooleanValidator,
57
+ i as EmailValidator,
58
+ d as NonEmptyStringValidator,
59
+ p as NullableBigIntValidator,
60
+ s as NullableBooleanValidator,
61
+ g as NullableNumberValidator,
62
+ u as NullableStringValidator,
63
+ c as NumberValidator,
64
+ o as StringValidator
65
+ };
66
+ //# sourceMappingURL=BuiltInValidators.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BuiltInValidators.mjs","sources":["../../src/validators/BuiltInValidators.ts"],"sourcesContent":["import { ValidationError } from '../errors/UserFacingErrors'\nimport { BuiltInValidatorParam } from './InternalParamWrappers'\n\nexport const EmailValidator = BuiltInValidatorParam({\n\tparse: (v) => String(v),\n\tvalidate: (v) => v.includes('@'),\n\tdescription: \"A string containing an '@' sign\",\n\terrorMessage: \"Must include an '@' sign\",\n})\nexport const BooleanValidator = BuiltInValidatorParam({\n\tprevalidate: (v) => v === '0' || v === '1' || v === 'false' || v === 'true',\n\tparse: (v) => v === '1' || v === 'true',\n\tdescription: 'Any boolean value',\n\terrorMessage: \"Must be '0', '1', 'false' or 'true'\",\n})\nexport const NullableBooleanValidator = BuiltInValidatorParam({\n\tprevalidate: (v) => v === '0' || v === '1' || v === 'false' || v === 'true' || v === null,\n\tparse: (v) => v === '1' || v === 'true' || v === null,\n\tdescription: 'Any boolean value',\n\terrorMessage: \"Must be '0', '1', 'false' or 'true'\",\n})\nexport const StringValidator = BuiltInValidatorParam({\n\tparse: (v) => String(v),\n\tdescription: 'Any string value',\n\terrorMessage: 'Must be a valid string',\n})\nexport const NullableStringValidator = BuiltInValidatorParam({\n\tparse: (v) => v,\n\tdescription: 'Any string or null value',\n\terrorMessage: 'Must be a valid string or null',\n})\nexport const NonEmptyStringValidator = BuiltInValidatorParam({\n\tparse: (v) => String(v),\n\tvalidate: (v) => v.length > 0,\n\tdescription: 'Any string value with at least one character',\n\terrorMessage: 'Must be a string with at least one character',\n})\nexport const NumberValidator = BuiltInValidatorParam({\n\tparse: (v) => Number(v),\n\tvalidate: (v) => Number.isFinite(v) && !Number.isNaN(v),\n\tdescription: 'Any numeric value',\n\terrorMessage: 'Must be a valid number',\n})\nexport const NullableNumberValidator = BuiltInValidatorParam({\n\tparse: (v) => (v === null ? null : Number(v)),\n\tvalidate: (v) => v === null || (Number.isFinite(v) && !Number.isNaN(v)),\n\tdescription: 'Any numeric value',\n\terrorMessage: 'Must be a valid number',\n})\nexport const BigIntValidator = BuiltInValidatorParam({\n\tparse: (v) => {\n\t\tif (v === null) {\n\t\t\tthrow new ValidationError('Encountered an unexpected null value')\n\t\t}\n\t\treturn BigInt(v)\n\t},\n\tdescription: 'Any numeric value',\n\terrorMessage: 'Must be a valid number',\n})\nexport const NullableBigIntValidator = BuiltInValidatorParam({\n\tparse: (v) => (v === null ? null : BigInt(v)),\n\tdescription: 'Any numeric value',\n\terrorMessage: 'Must be a valid number',\n})\n"],"names":["EmailValidator","BuiltInValidatorParam","v","BooleanValidator","NullableBooleanValidator","StringValidator","NullableStringValidator","NonEmptyStringValidator","NumberValidator","NullableNumberValidator","BigIntValidator","ValidationError","NullableBigIntValidator"],"mappings":";;AAGO,MAAMA,IAAiBC,EAAsB;AAAA,EACnD,OAAO,CAACC,MAAM,OAAOA,CAAC;AAAA,EACtB,UAAU,CAACA,MAAMA,EAAE,SAAS,GAAG;AAAA,EAC/B,aAAa;AAAA,EACb,cAAc;AACf,CAAC,GACYC,IAAmBF,EAAsB;AAAA,EACrD,aAAa,CAACC,MAAMA,MAAM,OAAOA,MAAM,OAAOA,MAAM,WAAWA,MAAM;AAAA,EACrE,OAAO,CAACA,MAAMA,MAAM,OAAOA,MAAM;AAAA,EACjC,aAAa;AAAA,EACb,cAAc;AACf,CAAC,GACYE,IAA2BH,EAAsB;AAAA,EAC7D,aAAa,CAACC,MAAMA,MAAM,OAAOA,MAAM,OAAOA,MAAM,WAAWA,MAAM,UAAUA,MAAM;AAAA,EACrF,OAAO,CAACA,MAAMA,MAAM,OAAOA,MAAM,UAAUA,MAAM;AAAA,EACjD,aAAa;AAAA,EACb,cAAc;AACf,CAAC,GACYG,IAAkBJ,EAAsB;AAAA,EACpD,OAAO,CAACC,MAAM,OAAOA,CAAC;AAAA,EACtB,aAAa;AAAA,EACb,cAAc;AACf,CAAC,GACYI,IAA0BL,EAAsB;AAAA,EAC5D,OAAO,CAACC,MAAMA;AAAA,EACd,aAAa;AAAA,EACb,cAAc;AACf,CAAC,GACYK,IAA0BN,EAAsB;AAAA,EAC5D,OAAO,CAACC,MAAM,OAAOA,CAAC;AAAA,EACtB,UAAU,CAACA,MAAMA,EAAE,SAAS;AAAA,EAC5B,aAAa;AAAA,EACb,cAAc;AACf,CAAC,GACYM,IAAkBP,EAAsB;AAAA,EACpD,OAAO,CAACC,MAAM,OAAOA,CAAC;AAAA,EACtB,UAAU,CAACA,MAAM,OAAO,SAASA,CAAC,KAAK,CAAC,OAAO,MAAMA,CAAC;AAAA,EACtD,aAAa;AAAA,EACb,cAAc;AACf,CAAC,GACYO,IAA0BR,EAAsB;AAAA,EAC5D,OAAO,CAACC,MAAOA,MAAM,OAAO,OAAO,OAAOA,CAAC;AAAA,EAC3C,UAAU,CAACA,MAAMA,MAAM,QAAS,OAAO,SAASA,CAAC,KAAK,CAAC,OAAO,MAAMA,CAAC;AAAA,EACrE,aAAa;AAAA,EACb,cAAc;AACf,CAAC,GACYQ,IAAkBT,EAAsB;AAAA,EACpD,OAAO,CAACC,MAAM;AACb,QAAIA,MAAM;AACH,YAAA,IAAIS,EAAgB,sCAAsC;AAEjE,WAAO,OAAOT,CAAC;AAAA,EAChB;AAAA,EACA,aAAa;AAAA,EACb,cAAc;AACf,CAAC,GACYU,IAA0BX,EAAsB;AAAA,EAC5D,OAAO,CAACC,MAAOA,MAAM,OAAO,OAAO,OAAOA,CAAC;AAAA,EAC3C,aAAa;AAAA,EACb,cAAc;AACf,CAAC;"}
@@ -0,0 +1,2 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=a=>({...a,optional:!1});exports.BuiltInValidatorParam=t;
2
+ //# sourceMappingURL=InternalParamWrappers.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"InternalParamWrappers.cjs","sources":["../../src/validators/InternalParamWrappers.ts"],"sourcesContent":["import { BuiltInValidator } from './types'\n\n/**\n * More complex type to preserve description and errorMessage in .d.ts file.\n * Functionally identical to RequiredParam.\n * For internal use only.\n */\nexport const BuiltInValidatorParam = <T, DescriptionT extends string, ErrorMessageT extends string>(\n\tvalidator: Omit<BuiltInValidator<T, DescriptionT, ErrorMessageT>, 'optional'> &\n\t\tPick<BuiltInValidator<T, DescriptionT, ErrorMessageT>, 'description' | 'errorMessage'>,\n): BuiltInValidator<T, DescriptionT, ErrorMessageT> & { optional: false } => ({\n\t...validator,\n\toptional: false,\n})\n"],"names":["BuiltInValidatorParam","validator"],"mappings":"gFAOa,MAAAA,EACZC,IAE6E,CAC7E,GAAGA,EACH,SAAU,EACX"}
@@ -1,4 +1,5 @@
1
1
  import { BuiltInValidator } from './types';
2
+
2
3
  export declare const BuiltInValidatorParam: <T, DescriptionT extends string, ErrorMessageT extends string>(validator: Omit<BuiltInValidator<T, DescriptionT, ErrorMessageT>, "optional"> & Pick<BuiltInValidator<T, DescriptionT, ErrorMessageT>, "description" | "errorMessage">) => BuiltInValidator<T, DescriptionT, ErrorMessageT> & {
3
4
  optional: false;
4
5
  };
@@ -0,0 +1 @@
1
+ {"version":3,"file":"InternalParamWrappers.d.ts","sourceRoot":"","sources":["../../src/validators/InternalParamWrappers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAA;AAO1C,eAAO,MAAM,qBAAqB,GAAI,CAAC,EAAE,YAAY,SAAS,MAAM,EAAE,aAAa,SAAS,MAAM,aACtF,IAAI,CAAC,gBAAgB,CAAC,CAAC,EAAE,YAAY,EAAE,aAAa,CAAC,EAAE,UAAU,CAAC,GAC5E,IAAI,CAAC,gBAAgB,CAAC,CAAC,EAAE,YAAY,EAAE,aAAa,CAAC,EAAE,aAAa,GAAG,cAAc,CAAC,KACrF,gBAAgB,CAAC,CAAC,EAAE,YAAY,EAAE,aAAa,CAAC,GAAG;IAAE,QAAQ,EAAE,KAAK,CAAA;CAGrE,CAAA"}
@@ -0,0 +1,8 @@
1
+ const o = (a) => ({
2
+ ...a,
3
+ optional: !1
4
+ });
5
+ export {
6
+ o as BuiltInValidatorParam
7
+ };
8
+ //# sourceMappingURL=InternalParamWrappers.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"InternalParamWrappers.mjs","sources":["../../src/validators/InternalParamWrappers.ts"],"sourcesContent":["import { BuiltInValidator } from './types'\n\n/**\n * More complex type to preserve description and errorMessage in .d.ts file.\n * Functionally identical to RequiredParam.\n * For internal use only.\n */\nexport const BuiltInValidatorParam = <T, DescriptionT extends string, ErrorMessageT extends string>(\n\tvalidator: Omit<BuiltInValidator<T, DescriptionT, ErrorMessageT>, 'optional'> &\n\t\tPick<BuiltInValidator<T, DescriptionT, ErrorMessageT>, 'description' | 'errorMessage'>,\n): BuiltInValidator<T, DescriptionT, ErrorMessageT> & { optional: false } => ({\n\t...validator,\n\toptional: false,\n})\n"],"names":["BuiltInValidatorParam","validator"],"mappings":"AAOa,MAAAA,IAAwB,CACpCC,OAE6E;AAAA,EAC7E,GAAGA;AAAA,EACH,UAAU;AACX;"}
@@ -0,0 +1,2 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=a=>({...a,optional:!1}),o=a=>({...a,optional:!1}),e=a=>({...a,optional:!0});exports.OptionalParam=e;exports.PathParam=t;exports.RequiredParam=o;
2
+ //# sourceMappingURL=ParamWrappers.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ParamWrappers.cjs","sources":["../../src/validators/ParamWrappers.ts"],"sourcesContent":["import { Validator } from './types'\n\nexport const PathParam = <T>(\n\tvalidator: Omit<Validator<T>, 'optional'>,\n): Validator<T> & { optional: false } => ({\n\t...validator,\n\toptional: false,\n})\n\nexport const RequiredParam = <T>(\n\tvalidator: Omit<Validator<T>, 'optional'>,\n): Validator<T> & { optional: false } => ({\n\t...validator,\n\toptional: false,\n})\n\nexport const OptionalParam = <T>(\n\tvalidator: Omit<Validator<T>, 'optional'>,\n): Validator<T> & { optional: true } => ({\n\t...validator,\n\toptional: true,\n})\n"],"names":["PathParam","validator","RequiredParam","OptionalParam"],"mappings":"gFAEa,MAAAA,EACZC,IACyC,CACzC,GAAGA,EACH,SAAU,EACX,GAEaC,EACZD,IACyC,CACzC,GAAGA,EACH,SAAU,EACX,GAEaE,EACZF,IACwC,CACxC,GAAGA,EACH,SAAU,EACX"}
@@ -1,4 +1,5 @@
1
1
  import { Validator } from './types';
2
+
2
3
  export declare const PathParam: <T>(validator: Omit<Validator<T>, "optional">) => Validator<T> & {
3
4
  optional: false;
4
5
  };
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ParamWrappers.d.ts","sourceRoot":"","sources":["../../src/validators/ParamWrappers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAA;AAEnC,eAAO,MAAM,SAAS,GAAI,CAAC,aACf,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,UAAU,CAAC,KACvC,SAAS,CAAC,CAAC,CAAC,GAAG;IAAE,QAAQ,EAAE,KAAK,CAAA;CAGjC,CAAA;AAEF,eAAO,MAAM,aAAa,GAAI,CAAC,aACnB,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,UAAU,CAAC,KACvC,SAAS,CAAC,CAAC,CAAC,GAAG;IAAE,QAAQ,EAAE,KAAK,CAAA;CAGjC,CAAA;AAEF,eAAO,MAAM,aAAa,GAAI,CAAC,aACnB,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,UAAU,CAAC,KACvC,SAAS,CAAC,CAAC,CAAC,GAAG;IAAE,QAAQ,EAAE,IAAI,CAAA;CAGhC,CAAA"}
@@ -0,0 +1,16 @@
1
+ const o = (a) => ({
2
+ ...a,
3
+ optional: !1
4
+ }), t = (a) => ({
5
+ ...a,
6
+ optional: !1
7
+ }), n = (a) => ({
8
+ ...a,
9
+ optional: !0
10
+ });
11
+ export {
12
+ n as OptionalParam,
13
+ o as PathParam,
14
+ t as RequiredParam
15
+ };
16
+ //# sourceMappingURL=ParamWrappers.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ParamWrappers.mjs","sources":["../../src/validators/ParamWrappers.ts"],"sourcesContent":["import { Validator } from './types'\n\nexport const PathParam = <T>(\n\tvalidator: Omit<Validator<T>, 'optional'>,\n): Validator<T> & { optional: false } => ({\n\t...validator,\n\toptional: false,\n})\n\nexport const RequiredParam = <T>(\n\tvalidator: Omit<Validator<T>, 'optional'>,\n): Validator<T> & { optional: false } => ({\n\t...validator,\n\toptional: false,\n})\n\nexport const OptionalParam = <T>(\n\tvalidator: Omit<Validator<T>, 'optional'>,\n): Validator<T> & { optional: true } => ({\n\t...validator,\n\toptional: true,\n})\n"],"names":["PathParam","validator","RequiredParam","OptionalParam"],"mappings":"AAEa,MAAAA,IAAY,CACxBC,OACyC;AAAA,EACzC,GAAGA;AAAA,EACH,UAAU;AACX,IAEaC,IAAgB,CAC5BD,OACyC;AAAA,EACzC,GAAGA;AAAA,EACH,UAAU;AACX,IAEaE,IAAgB,CAC5BF,OACwC;AAAA,EACxC,GAAGA;AAAA,EACH,UAAU;AACX;"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/validators/types.ts"],"names":[],"mappings":"AAAA,KAAK,WAAW,CAAC,CAAC,IAAI;KACpB,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS,KAAK,CAAC,MAAM,CAAC,CAAC,GACzC,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,GACrB,CAAC,CAAC,CAAC,CAAC,SAAS,aAAa,CAAC,MAAM,CAAC,CAAC,GAClC,aAAa,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,GAC7B,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;CACrB,CAAA;AAED,MAAM,MAAM,WAAW,CAAC,CAAC,IAAI,CAAC,SAAS,MAAM,GAAG,WAAW,CAAC,CAAC,CAAC,GAAG,CAAC,CAAA;AAElE,MAAM,MAAM,SAAS,CAAC,CAAC,IAAI;IAC1B,WAAW,CAAC,EAAE,CAAC,CAAC,EAAE,MAAM,GAAG,IAAI,KAAK,OAAO,CAAA;IAC3C,KAAK,EAAE,CAAC,CAAC,EAAE,MAAM,GAAG,IAAI,KAAK,CAAC,CAAA;IAC9B,QAAQ,CAAC,EAAE,CAAC,CAAC,EAAE,WAAW,CAAC,CAAC,CAAC,KAAK,OAAO,CAAA;IAMzC,QAAQ,EAAE,OAAO,CAAA;IAKjB,WAAW,CAAC,EAAE,MAAM,CAAA;IAIpB,YAAY,CAAC,EAAE,MAAM,CAAA;CACrB,CAAA;AAED,MAAM,MAAM,gBAAgB,CAAC,CAAC,EAAE,YAAY,SAAS,MAAM,EAAE,aAAa,SAAS,MAAM,IAAI,SAAS,CAAC,CAAC,CAAC,GAAG;IAC3G,WAAW,EAAE,YAAY,CAAA;IACzB,YAAY,EAAE,aAAa,CAAA;CAC3B,CAAA"}
package/eslint.config.mjs CHANGED
@@ -2,12 +2,11 @@ import typescript from '@typescript-eslint/eslint-plugin'
2
2
  import typescriptParser from '@typescript-eslint/parser'
3
3
  import simpleImportSort from 'eslint-plugin-simple-import-sort'
4
4
  import unusedImports from 'eslint-plugin-unused-imports'
5
- import prettier from 'eslint-config-prettier'
6
5
  import prettierPlugin from 'eslint-plugin-prettier'
7
6
 
8
7
  export default [
9
8
  {
10
- files: ['src/**/*.ts', 'src/**/*.tsx'],
9
+ files: ['src/**/*.ts', 'src/**/*.tsx', '*.ts', '*.tsx'],
11
10
  ignores: ['**/dist/**', '*.md'],
12
11
  languageOptions: {
13
12
  parser: typescriptParser,
package/package.json CHANGED
@@ -1,24 +1,123 @@
1
1
  {
2
2
  "name": "moonflower",
3
- "version": "0.11.2",
3
+ "version": "1.0.1",
4
4
  "description": "",
5
5
  "author": "tenebrie",
6
6
  "license": "MIT",
7
7
  "homepage": "https://github.com/tenebrie/moonflower",
8
- "main": "./dist/src/index.js",
9
- "types": "./dist/src/index.d.ts",
8
+ "main": "./dist/index.cjs",
9
+ "module": "./dist/index.mjs",
10
+ "types": "./dist/index.d.ts",
11
+ "exports": {
12
+ ".": {
13
+ "types": "./dist/index.d.ts",
14
+ "import": "./dist/index.mjs",
15
+ "require": "./dist/index.cjs"
16
+ },
17
+ "./errors/HttpErrorHandler": {
18
+ "types": "./dist/errors/HttpErrorHandler.d.ts",
19
+ "import": "./dist/errors/HttpErrorHandler.mjs",
20
+ "require": "./dist/errors/HttpErrorHandler.cjs"
21
+ },
22
+ "./errors/UserFacingErrors": {
23
+ "types": "./dist/errors/UserFacingErrors.d.ts",
24
+ "import": "./dist/errors/UserFacingErrors.mjs",
25
+ "require": "./dist/errors/UserFacingErrors.cjs"
26
+ },
27
+ "./hooks/authentication/useAuth": {
28
+ "types": "./dist/hooks/authentication/useAuth.d.ts",
29
+ "import": "./dist/hooks/authentication/useAuth.mjs",
30
+ "require": "./dist/hooks/authentication/useAuth.cjs"
31
+ },
32
+ "./hooks/authentication/useOptionalAuth": {
33
+ "types": "./dist/hooks/authentication/useOptionalAuth.d.ts",
34
+ "import": "./dist/hooks/authentication/useOptionalAuth.mjs",
35
+ "require": "./dist/hooks/authentication/useOptionalAuth.cjs"
36
+ },
37
+ "./hooks/useApiEndpoint": {
38
+ "types": "./dist/hooks/useApiEndpoint.d.ts",
39
+ "import": "./dist/hooks/useApiEndpoint.mjs",
40
+ "require": "./dist/hooks/useApiEndpoint.cjs"
41
+ },
42
+ "./hooks/useApiHeader": {
43
+ "types": "./dist/hooks/useApiHeader/useApiHeader.d.ts",
44
+ "import": "./dist/hooks/useApiHeader/useApiHeader.mjs",
45
+ "require": "./dist/hooks/useApiHeader/useApiHeader.cjs"
46
+ },
47
+ "./hooks/useCookieParams": {
48
+ "types": "./dist/hooks/useCookieParams.d.ts",
49
+ "import": "./dist/hooks/useCookieParams.mjs",
50
+ "require": "./dist/hooks/useCookieParams.cjs"
51
+ },
52
+ "./hooks/useExposeApiModel": {
53
+ "types": "./dist/hooks/useExposeApiModel.d.ts",
54
+ "import": "./dist/hooks/useExposeApiModel.mjs",
55
+ "require": "./dist/hooks/useExposeApiModel.cjs"
56
+ },
57
+ "./hooks/useHeaderParams": {
58
+ "types": "./dist/hooks/useHeaderParams.d.ts",
59
+ "import": "./dist/hooks/useHeaderParams.mjs",
60
+ "require": "./dist/hooks/useHeaderParams.cjs"
61
+ },
62
+ "./hooks/usePathParams": {
63
+ "types": "./dist/hooks/usePathParams.d.ts",
64
+ "import": "./dist/hooks/usePathParams.mjs",
65
+ "require": "./dist/hooks/usePathParams.cjs"
66
+ },
67
+ "./hooks/useQueryParams": {
68
+ "types": "./dist/hooks/useQueryParams.d.ts",
69
+ "import": "./dist/hooks/useQueryParams.mjs",
70
+ "require": "./dist/hooks/useQueryParams.cjs"
71
+ },
72
+ "./hooks/useRequestBody": {
73
+ "types": "./dist/hooks/useRequestBody.d.ts",
74
+ "import": "./dist/hooks/useRequestBody.mjs",
75
+ "require": "./dist/hooks/useRequestBody.cjs"
76
+ },
77
+ "./hooks/useRequestRawBody": {
78
+ "types": "./dist/hooks/useRequestRawBody.d.ts",
79
+ "import": "./dist/hooks/useRequestRawBody.mjs",
80
+ "require": "./dist/hooks/useRequestRawBody.cjs"
81
+ },
82
+ "./hooks/useReturnValue": {
83
+ "types": "./dist/hooks/useReturnValue.d.ts",
84
+ "import": "./dist/hooks/useReturnValue.mjs",
85
+ "require": "./dist/hooks/useReturnValue.cjs"
86
+ },
87
+ "./openapi/initOpenApiEngine": {
88
+ "types": "./dist/openapi/initOpenApiEngine.d.ts",
89
+ "import": "./dist/openapi/initOpenApiEngine.mjs",
90
+ "require": "./dist/openapi/initOpenApiEngine.cjs"
91
+ },
92
+ "./router/Router": {
93
+ "types": "./dist/router/Router.d.ts",
94
+ "import": "./dist/router/Router.mjs",
95
+ "require": "./dist/router/Router.cjs"
96
+ },
97
+ "./validators/BuiltInValidators": {
98
+ "types": "./dist/validators/BuiltInValidators.d.ts",
99
+ "import": "./dist/validators/BuiltInValidators.mjs",
100
+ "require": "./dist/validators/BuiltInValidators.cjs"
101
+ },
102
+ "./validators/ParamWrappers": {
103
+ "types": "./dist/validators/ParamWrappers.d.ts",
104
+ "import": "./dist/validators/ParamWrappers.mjs",
105
+ "require": "./dist/validators/ParamWrappers.cjs"
106
+ }
107
+ },
10
108
  "bin": "cli/entry.cjs",
11
109
  "scripts": {
12
- "prepublish": "tsc -p ./tsconfig.build.json",
13
- "build": "tsc -p ./tsconfig.build.json",
110
+ "prepublish": "vite build",
111
+ "build": "vite build",
14
112
  "lint": "eslint src/",
15
113
  "lint-fix": "eslint src/ --fix",
16
114
  "test": "vitest",
17
115
  "test-coverage": "vitest --coverage"
18
116
  },
19
117
  "dependencies": {
20
- "http-status-codes": "^2.3.0",
21
- "module-alias": "^2.2.3"
118
+ "module-alias": "^2.2.3",
119
+ "ts-morph": "^24.0.0",
120
+ "typescript": "^5.7.2"
22
121
  },
23
122
  "peerDependencies": {
24
123
  "@koa/router": "^13.1.0",
@@ -41,6 +140,7 @@
41
140
  "eslint-plugin-prettier": "^5.2.1",
42
141
  "eslint-plugin-simple-import-sort": "^12.1.1",
43
142
  "eslint-plugin-unused-imports": "^4.1.4",
143
+ "http-status-codes": "^2.3.0",
44
144
  "jest": "29.7.0",
45
145
  "koa": "^2.15.3",
46
146
  "koa-bodyparser": "^4.4.1",
@@ -49,11 +149,11 @@
49
149
  "source-map-support": "^0.5.20",
50
150
  "supertest": "^7.0.0",
51
151
  "ts-jest": "29.2.5",
52
- "ts-morph": "^24.0.0",
53
152
  "ts-node": "^10.9.2",
54
153
  "tsconfig-paths": "4.2.0",
55
- "typescript": "^5.7.2",
56
- "vitest": "^2.1.8",
154
+ "vite": "^6.2.2",
155
+ "vite-plugin-dts": "^3.7.3",
156
+ "vitest": "^3.0.9",
57
157
  "yargs": "^17.7.2"
58
158
  }
59
159
  }
@@ -11,6 +11,7 @@ import {
11
11
  } from 'ts-morph'
12
12
 
13
13
  import { Logger } from '../../utils/logger'
14
+ import { debugNode } from '../../utils/printers'
14
15
  import { OpenApiManager } from '../manager/OpenApiManager'
15
16
  import { ShapeOfProperty, ShapeOfType, ShapeOfUnionEntry } from './types'
16
17
 
@@ -75,7 +76,7 @@ export const findPropertyAssignmentValueNode = (
75
76
  }
76
77
 
77
78
  export const getTypeReferenceShape = (node: TypeReferenceNode): ShapeOfType['shape'] => {
78
- const firstChild = node.getFirstChild()!
79
+ const firstChild = node.getFirstChildByKind(SyntaxKind.SyntaxList)!
79
80
  if (firstChild.isKind(SyntaxKind.SyntaxList)) {
80
81
  return getRecursiveNodeShape(firstChild.getFirstChild()!)
81
82
  } else {
@@ -339,8 +340,23 @@ export const getValidatorPropertyShape = (innerLiteralNode: Node): ShapeOfType['
339
340
  return getRecursiveNodeShape(targetSyntaxList.getFirstChild()!)
340
341
  }
341
342
 
343
+ // Intersection type with Validator
344
+ const intersectionType = innerLiteralNode.isKind(SyntaxKind.IntersectionType)
345
+ ? innerLiteralNode
346
+ : innerLiteralNode.getParent()?.isKind(SyntaxKind.VariableDeclaration)
347
+ ? innerLiteralNode.getParent()?.getFirstChildByKind(SyntaxKind.IntersectionType)
348
+ : null
349
+
350
+ if (intersectionType) {
351
+ const validatorType = intersectionType.getFirstChildByKind(SyntaxKind.TypeReference)
352
+ if (validatorType) {
353
+ return getTypeReferenceShape(validatorType)
354
+ }
355
+ }
356
+
342
357
  const fileName = innerLiteralNode.getSourceFile().getFilePath().split('/').pop()
343
358
  Logger.warn(`[${fileName}] Unknown import type node`)
359
+
344
360
  return 'unknown_2'
345
361
  }
346
362
 
@@ -9,7 +9,6 @@ export const discoverImportedName = ({ sourceFile, originalName }: Props): strin
9
9
  const importDeclarations = sourceFile.getDescendantsOfKind(SyntaxKind.ImportDeclaration)
10
10
  const discoveredName = importDeclarations
11
11
  .filter((declaration) => {
12
- // declaration
13
12
  const importPathNode = declaration.getLastChildByKind(SyntaxKind.StringLiteral)
14
13
  if (!importPathNode) {
15
14
  return false
@@ -1,13 +1,11 @@
1
1
  import { SourceFile, SyntaxKind } from 'ts-morph'
2
2
 
3
- import { Router } from '../../../router/Router'
4
- import { nameOf } from '../../../utils/nameOf'
5
3
  import { discoverImportedName } from '../discoverImports/discoverImports'
6
4
 
7
5
  export const discoverRouters = (sourceFile: SourceFile) => {
8
6
  const routerClassName = discoverImportedName({
9
7
  sourceFile,
10
- originalName: nameOf(Router),
8
+ originalName: 'Router',
11
9
  })
12
10
 
13
11
  if (!routerClassName) {
package/tsconfig.json CHANGED
@@ -1,6 +1,7 @@
1
1
  {
2
2
  "compilerOptions": {
3
- "module": "commonjs",
3
+ "module": "ESNext",
4
+ "moduleResolution": "bundler",
4
5
  "declaration": true,
5
6
  "declarationMap": true,
6
7
  "removeComments": true,
@@ -8,7 +9,7 @@
8
9
  "emitDecoratorMetadata": true,
9
10
  "experimentalDecorators": true,
10
11
  "allowSyntheticDefaultImports": true,
11
- "target": "es2017",
12
+ "target": "ES2020",
12
13
  "esModuleInterop": true,
13
14
  "sourceMap": true,
14
15
  "outDir": "./dist",
@@ -25,5 +26,6 @@
25
26
  "src/**/*",
26
27
  ".eslintrc.js",
27
28
  "vite.config.ts",
29
+ "vitest.config.ts"
28
30
  ]
29
31
  }
package/vite.config.ts CHANGED
@@ -1,15 +1,102 @@
1
1
  import { resolve } from 'path'
2
- import { defineConfig, UserConfig } from 'vitest/config'
2
+ import dts from 'vite-plugin-dts'
3
+ import { defineConfig, ViteUserConfig } from 'vitest/config'
3
4
 
4
- export const baseViteConfig: UserConfig = {
5
- test: {
6
- globals: true,
7
- setupFiles: 'src/setupTests.ts',
5
+ // Define all the entry points we want to bundle separately
6
+ const entries = {
7
+ index: resolve(__dirname, 'src/index.ts'),
8
+ 'errors/HttpErrorHandler': resolve(__dirname, 'src/errors/HttpErrorHandler.ts'),
9
+ 'errors/UserFacingErrors': resolve(__dirname, 'src/errors/UserFacingErrors.ts'),
10
+ 'hooks/authentication/useAuth': resolve(__dirname, 'src/hooks/authentication/useAuth.ts'),
11
+ 'hooks/authentication/useOptionalAuth': resolve(__dirname, 'src/hooks/authentication/useOptionalAuth.ts'),
12
+ 'hooks/useApiEndpoint': resolve(__dirname, 'src/hooks/useApiEndpoint.ts'),
13
+ 'hooks/useApiHeader/useApiHeader': resolve(__dirname, 'src/hooks/useApiHeader/useApiHeader.ts'),
14
+ 'hooks/useCookieParams': resolve(__dirname, 'src/hooks/useCookieParams.ts'),
15
+ 'hooks/useExposeApiModel': resolve(__dirname, 'src/hooks/useExposeApiModel/useExposeApiModel.ts'),
16
+ 'hooks/useHeaderParams': resolve(__dirname, 'src/hooks/useHeaderParams.ts'),
17
+ 'hooks/usePathParams': resolve(__dirname, 'src/hooks/usePathParams.ts'),
18
+ 'hooks/useQueryParams': resolve(__dirname, 'src/hooks/useQueryParams.ts'),
19
+ 'hooks/useRequestBody': resolve(__dirname, 'src/hooks/useRequestBody.ts'),
20
+ 'hooks/useRequestRawBody': resolve(__dirname, 'src/hooks/useRequestRawBody.ts'),
21
+ 'hooks/useReturnValue': resolve(__dirname, 'src/hooks/useReturnValue.ts'),
22
+ 'openapi/initOpenApiEngine': resolve(__dirname, 'src/openapi/initOpenApiEngine.ts'),
23
+ 'router/Router': resolve(__dirname, 'src/router/Router.ts'),
24
+ 'validators/BuiltInValidators': resolve(__dirname, 'src/validators/BuiltInValidators.ts'),
25
+ 'validators/ParamWrappers': resolve(__dirname, 'src/validators/ParamWrappers.ts'),
26
+ }
27
+
28
+ export const baseViteConfig: ViteUserConfig = {
29
+ build: {
30
+ lib: {
31
+ entry: entries,
32
+ formats: ['es', 'cjs'],
33
+ fileName: (format, entryName) => {
34
+ // For the main index, use the original naming
35
+ if (entryName === 'index') {
36
+ return `index.${format === 'es' ? 'mjs' : 'cjs'}`
37
+ }
38
+ // For other entries, maintain the directory structure
39
+ return `${entryName}.${format === 'es' ? 'mjs' : 'cjs'}`
40
+ },
41
+ },
42
+ rollupOptions: {
43
+ external: [
44
+ 'koa',
45
+ '@koa/router',
46
+ 'koa-bodyparser',
47
+ 'path',
48
+ 'fs',
49
+ 'fs/promises',
50
+ 'assert',
51
+ 'crypto',
52
+ 'perf_hooks',
53
+ '@ts-morph/common',
54
+ 'typescript',
55
+ 'ts-morph',
56
+ ],
57
+ output: {
58
+ globals: {
59
+ koa: 'Koa',
60
+ '@koa/router': 'Router',
61
+ 'koa-bodyparser': 'bodyParser',
62
+ },
63
+ // Preserve directory structure in output
64
+ preserveModules: true,
65
+ preserveModulesRoot: 'src',
66
+ },
67
+ },
68
+ sourcemap: true,
69
+ outDir: 'dist',
70
+ target: 'node18',
71
+ commonjsOptions: {
72
+ include: [/node_modules/],
73
+ },
8
74
  },
75
+ plugins: [
76
+ dts({
77
+ insertTypesEntry: true,
78
+ include: ['src/**/*'],
79
+ }),
80
+ ],
9
81
  resolve: {
10
82
  alias: {
11
83
  '@src': resolve(__dirname, './src'),
12
84
  },
85
+ preserveSymlinks: true,
86
+ },
87
+ optimizeDeps: {
88
+ exclude: ['@ts-morph/common', 'typescript', 'ts-morph'],
89
+ },
90
+ test: {
91
+ globals: true,
92
+ setupFiles: 'src/setupTests.ts',
93
+ include: ['src/**/*.spec.ts'],
94
+ coverage: {
95
+ provider: 'v8',
96
+ reporter: ['text', 'json', 'html'],
97
+ include: ['src/**/*.ts'],
98
+ exclude: ['src/**/*.test.ts', 'src/**/*.d.ts'],
99
+ },
13
100
  },
14
101
  }
15
102
 
package/dist/cli/cli.d.ts DELETED
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=cli.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../../cli/cli.ts"],"names":[],"mappings":""}