@thisisagile/easy 15.26.2 → 15.27.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 (678) hide show
  1. package/dist/chunk-2BXKHPA2.mjs +49 -0
  2. package/dist/chunk-2BXKHPA2.mjs.map +1 -0
  3. package/dist/chunk-35PSIDGU.mjs +17 -0
  4. package/dist/chunk-35PSIDGU.mjs.map +1 -0
  5. package/dist/chunk-3P7J7XPW.mjs +23 -0
  6. package/dist/chunk-3P7J7XPW.mjs.map +1 -0
  7. package/dist/chunk-44GVWK5Q.mjs +132 -0
  8. package/dist/chunk-44GVWK5Q.mjs.map +1 -0
  9. package/dist/chunk-4OQNWUOH.mjs +94 -0
  10. package/dist/chunk-4OQNWUOH.mjs.map +1 -0
  11. package/dist/chunk-4QX4EMLL.mjs +13 -0
  12. package/dist/chunk-4QX4EMLL.mjs.map +1 -0
  13. package/dist/chunk-5FFXP2S2.mjs +54 -0
  14. package/dist/chunk-5FFXP2S2.mjs.map +1 -0
  15. package/dist/chunk-ADJAEGCT.mjs +21 -0
  16. package/dist/chunk-ADJAEGCT.mjs.map +1 -0
  17. package/dist/chunk-AJMFM4WW.mjs +15 -0
  18. package/dist/chunk-AJMFM4WW.mjs.map +1 -0
  19. package/dist/chunk-AKYA7FHU.mjs +15 -0
  20. package/dist/chunk-AKYA7FHU.mjs.map +1 -0
  21. package/dist/chunk-AQ7VCOZV.mjs +21 -0
  22. package/dist/chunk-AQ7VCOZV.mjs.map +1 -0
  23. package/dist/chunk-CMRS457E.mjs +11 -0
  24. package/dist/chunk-CMRS457E.mjs.map +1 -0
  25. package/dist/chunk-CN756KJF.mjs +38 -0
  26. package/dist/chunk-CN756KJF.mjs.map +1 -0
  27. package/dist/chunk-CQFW65RV.mjs +25 -0
  28. package/dist/chunk-CQFW65RV.mjs.map +1 -0
  29. package/dist/chunk-DICMUQFL.mjs +11 -0
  30. package/dist/chunk-DICMUQFL.mjs.map +1 -0
  31. package/dist/chunk-DO2JKVJC.mjs +60 -0
  32. package/dist/chunk-DO2JKVJC.mjs.map +1 -0
  33. package/dist/chunk-EDT4SIWF.mjs +41 -0
  34. package/dist/chunk-EDT4SIWF.mjs.map +1 -0
  35. package/dist/chunk-FAAERRP2.mjs +37 -0
  36. package/dist/chunk-FAAERRP2.mjs.map +1 -0
  37. package/dist/chunk-FZ3RGBVB.mjs +53 -0
  38. package/dist/chunk-FZ3RGBVB.mjs.map +1 -0
  39. package/dist/chunk-GI5TZOAG.mjs +30 -0
  40. package/dist/chunk-GI5TZOAG.mjs.map +1 -0
  41. package/dist/chunk-GWPYA4FN.mjs +50 -0
  42. package/dist/chunk-GWPYA4FN.mjs.map +1 -0
  43. package/dist/chunk-GY5U2EMP.mjs +183 -0
  44. package/dist/chunk-GY5U2EMP.mjs.map +1 -0
  45. package/dist/chunk-GZ4W5NPB.mjs +902 -0
  46. package/dist/chunk-GZ4W5NPB.mjs.map +1 -0
  47. package/dist/chunk-HWJY57VM.mjs +18 -0
  48. package/dist/chunk-HWJY57VM.mjs.map +1 -0
  49. package/dist/chunk-IDVKM57Y.mjs +57 -0
  50. package/dist/chunk-IDVKM57Y.mjs.map +1 -0
  51. package/dist/chunk-IDYINFVS.mjs +23 -0
  52. package/dist/chunk-IDYINFVS.mjs.map +1 -0
  53. package/dist/chunk-IOLGWNHS.mjs +46 -0
  54. package/dist/chunk-IOLGWNHS.mjs.map +1 -0
  55. package/dist/chunk-IOSZQN37.mjs +40 -0
  56. package/dist/chunk-IOSZQN37.mjs.map +1 -0
  57. package/dist/chunk-JXJ5LRH3.mjs +30 -0
  58. package/dist/chunk-JXJ5LRH3.mjs.map +1 -0
  59. package/dist/chunk-LPPJKRX6.mjs +33 -0
  60. package/dist/chunk-LPPJKRX6.mjs.map +1 -0
  61. package/dist/chunk-MDBZV377.mjs +20 -0
  62. package/dist/chunk-MDBZV377.mjs.map +1 -0
  63. package/dist/chunk-MDLVDMKY.mjs +11 -0
  64. package/dist/chunk-MDLVDMKY.mjs.map +1 -0
  65. package/dist/chunk-MHEEKAJP.mjs +86 -0
  66. package/dist/chunk-MHEEKAJP.mjs.map +1 -0
  67. package/dist/chunk-MXVK2OXS.mjs +18 -0
  68. package/dist/chunk-MXVK2OXS.mjs.map +1 -0
  69. package/dist/chunk-OLZQGTHX.mjs +28 -0
  70. package/dist/chunk-OLZQGTHX.mjs.map +1 -0
  71. package/dist/chunk-OPRP2CJ4.mjs +19 -0
  72. package/dist/chunk-OPRP2CJ4.mjs.map +1 -0
  73. package/dist/chunk-OQNZEKWO.mjs +24 -0
  74. package/dist/chunk-OQNZEKWO.mjs.map +1 -0
  75. package/dist/chunk-OXBQSJDF.mjs +45 -0
  76. package/dist/chunk-OXBQSJDF.mjs.map +1 -0
  77. package/dist/chunk-P6WU6SWZ.mjs +42 -0
  78. package/dist/chunk-P6WU6SWZ.mjs.map +1 -0
  79. package/dist/{types/PageList.js → chunk-P76FDCQK.mjs} +31 -48
  80. package/dist/chunk-P76FDCQK.mjs.map +1 -0
  81. package/dist/chunk-PIRWVOO2.mjs +7 -0
  82. package/dist/chunk-PIRWVOO2.mjs.map +1 -0
  83. package/dist/chunk-PLDACKJ3.mjs +49 -0
  84. package/dist/chunk-PLDACKJ3.mjs.map +1 -0
  85. package/dist/chunk-PSIJUWZT.mjs +13 -0
  86. package/dist/chunk-PSIJUWZT.mjs.map +1 -0
  87. package/dist/chunk-QCRJIUXC.mjs +70 -0
  88. package/dist/chunk-QCRJIUXC.mjs.map +1 -0
  89. package/dist/chunk-QXQDFZ7B.mjs +26 -0
  90. package/dist/chunk-QXQDFZ7B.mjs.map +1 -0
  91. package/dist/chunk-S232OWAN.mjs +26 -0
  92. package/dist/chunk-S232OWAN.mjs.map +1 -0
  93. package/dist/chunk-S3VRHUDC.mjs +43 -0
  94. package/dist/chunk-S3VRHUDC.mjs.map +1 -0
  95. package/dist/chunk-SIEX4MPW.mjs +25 -0
  96. package/dist/chunk-SIEX4MPW.mjs.map +1 -0
  97. package/dist/chunk-SJGQU3OG.mjs +15 -0
  98. package/dist/chunk-SJGQU3OG.mjs.map +1 -0
  99. package/dist/chunk-SW2OCUH3.mjs +10 -0
  100. package/dist/chunk-SW2OCUH3.mjs.map +1 -0
  101. package/dist/chunk-TGX44YE7.mjs +43 -0
  102. package/dist/chunk-TGX44YE7.mjs.map +1 -0
  103. package/dist/chunk-TMH4PWZS.mjs +113 -0
  104. package/dist/chunk-TMH4PWZS.mjs.map +1 -0
  105. package/dist/chunk-U5XK45SM.mjs +18 -0
  106. package/dist/chunk-U5XK45SM.mjs.map +1 -0
  107. package/dist/chunk-U7RLT5MZ.mjs +94 -0
  108. package/dist/chunk-U7RLT5MZ.mjs.map +1 -0
  109. package/dist/chunk-W36ZTL43.mjs +49 -0
  110. package/dist/chunk-W36ZTL43.mjs.map +1 -0
  111. package/dist/chunk-W4LMCXTM.mjs +82 -0
  112. package/dist/chunk-W4LMCXTM.mjs.map +1 -0
  113. package/dist/chunk-XBACKQ4V.mjs +46 -0
  114. package/dist/chunk-XBACKQ4V.mjs.map +1 -0
  115. package/dist/chunk-XDCE35QQ.mjs +79 -0
  116. package/dist/chunk-XDCE35QQ.mjs.map +1 -0
  117. package/dist/chunk-XLB3EVKK.mjs +87 -0
  118. package/dist/chunk-XLB3EVKK.mjs.map +1 -0
  119. package/dist/chunk-YD2WQWXL.mjs +272 -0
  120. package/dist/chunk-YD2WQWXL.mjs.map +1 -0
  121. package/dist/chunk-YNQ6HDJA.mjs +46 -0
  122. package/dist/chunk-YNQ6HDJA.mjs.map +1 -0
  123. package/dist/chunk-ZBIJKCDP.mjs +48 -0
  124. package/dist/chunk-ZBIJKCDP.mjs.map +1 -0
  125. package/dist/chunk-ZVTPK2NJ.mjs +20 -0
  126. package/dist/chunk-ZVTPK2NJ.mjs.map +1 -0
  127. package/dist/data/Condition.mjs +18 -35
  128. package/dist/data/Condition.mjs.map +1 -1
  129. package/dist/data/Database.mjs +14 -12
  130. package/dist/data/Database.mjs.map +1 -1
  131. package/dist/data/Field.mjs +27 -6
  132. package/dist/data/Field.mjs.map +1 -1
  133. package/dist/data/InMemoryGateway.mjs +25 -4
  134. package/dist/data/InMemoryGateway.mjs.map +1 -1
  135. package/dist/domain/Audit.mjs +17 -24
  136. package/dist/domain/Audit.mjs.map +1 -1
  137. package/dist/domain/Child.mjs +27 -5
  138. package/dist/domain/Child.mjs.map +1 -1
  139. package/dist/domain/Entity.mjs +31 -6
  140. package/dist/domain/Entity.mjs.map +1 -1
  141. package/dist/domain/Repo.mjs +26 -5
  142. package/dist/domain/Repo.mjs.map +1 -1
  143. package/dist/domain/Struct.mjs +14 -25
  144. package/dist/domain/Struct.mjs.map +1 -1
  145. package/dist/domain/Typo.mjs +20 -4
  146. package/dist/domain/Typo.mjs.map +1 -1
  147. package/dist/domain/enums/Country.mjs +13 -262
  148. package/dist/domain/enums/Country.mjs.map +1 -1
  149. package/dist/domain/enums/Currency.mjs +16 -131
  150. package/dist/domain/enums/Currency.mjs.map +1 -1
  151. package/dist/domain/enums/Environment.mjs +20 -7
  152. package/dist/domain/enums/Environment.mjs.map +1 -1
  153. package/dist/domain/enums/Locale.mjs +580 -566
  154. package/dist/domain/enums/Locale.mjs.map +1 -1
  155. package/dist/domain/enums/UnitOfMeasurement.mjs +13 -12
  156. package/dist/domain/enums/UnitOfMeasurement.mjs.map +1 -1
  157. package/dist/domain/enums/UnitOfWeight.mjs +13 -10
  158. package/dist/domain/enums/UnitOfWeight.mjs.map +1 -1
  159. package/dist/domain/structs/Address.mjs +33 -8
  160. package/dist/domain/structs/Address.mjs.map +1 -1
  161. package/dist/domain/structs/Box.mjs +25 -5
  162. package/dist/domain/structs/Box.mjs.map +1 -1
  163. package/dist/domain/structs/Dimension.mjs +17 -26
  164. package/dist/domain/structs/Dimension.mjs.map +1 -1
  165. package/dist/domain/structs/Money.mjs +18 -32
  166. package/dist/domain/structs/Money.mjs.map +1 -1
  167. package/dist/domain/structs/Name.mjs +24 -6
  168. package/dist/domain/structs/Name.mjs.map +1 -1
  169. package/dist/domain/structs/Weight.mjs +25 -6
  170. package/dist/domain/structs/Weight.mjs.map +1 -1
  171. package/dist/domain/values/DateTime.mjs +16 -88
  172. package/dist/domain/values/DateTime.mjs.map +1 -1
  173. package/dist/domain/values/EAN.mjs +20 -4
  174. package/dist/domain/values/EAN.mjs.map +1 -1
  175. package/dist/domain/values/Email.mjs +22 -5
  176. package/dist/domain/values/Email.mjs.map +1 -1
  177. package/dist/domain/values/IBAN.mjs +20 -4
  178. package/dist/domain/values/IBAN.mjs.map +1 -1
  179. package/dist/domain/values/PostalCode.mjs +15 -13
  180. package/dist/domain/values/PostalCode.mjs.map +1 -1
  181. package/dist/domain/values/Slug.mjs +20 -4
  182. package/dist/domain/values/Slug.mjs.map +1 -1
  183. package/dist/domain/values/Url.mjs +21 -5
  184. package/dist/domain/values/Url.mjs.map +1 -1
  185. package/dist/health/HealthResource.mjs +31 -4
  186. package/dist/health/HealthResource.mjs.map +1 -1
  187. package/dist/health/HealthUri.mjs +14 -5
  188. package/dist/health/HealthUri.mjs.map +1 -1
  189. package/dist/http/CacheControl.mjs +15 -28
  190. package/dist/http/CacheControl.mjs.map +1 -1
  191. package/dist/http/ContentType.mjs +13 -15
  192. package/dist/http/ContentType.mjs.map +1 -1
  193. package/dist/http/HttpHeader.mjs +3 -4
  194. package/dist/http/HttpHeader.mjs.map +1 -1
  195. package/dist/http/HttpStatus.mjs +15 -80
  196. package/dist/http/HttpStatus.mjs.map +1 -1
  197. package/dist/http/HttpVerb.mjs +13 -11
  198. package/dist/http/HttpVerb.mjs.map +1 -1
  199. package/dist/http/LocalRequestStore.mjs +16 -3
  200. package/dist/http/LocalRequestStore.mjs.map +1 -1
  201. package/dist/http/OriginatedError.mjs +9 -5
  202. package/dist/http/OriginatedError.mjs.map +1 -1
  203. package/dist/http/RequestOptions.mjs +18 -59
  204. package/dist/http/RequestOptions.mjs.map +1 -1
  205. package/dist/http/Response.mjs +15 -9
  206. package/dist/http/Response.mjs.map +1 -1
  207. package/dist/http/RestResult.mjs +15 -26
  208. package/dist/http/RestResult.mjs.map +1 -1
  209. package/dist/http/Verb.mjs +26 -19
  210. package/dist/http/Verb.mjs.map +1 -1
  211. package/dist/index.js +4791 -27
  212. package/dist/index.js.map +1 -1
  213. package/dist/process/App.mjs +18 -4
  214. package/dist/process/App.mjs.map +1 -1
  215. package/dist/process/Manage.mjs +18 -3
  216. package/dist/process/Manage.mjs.map +1 -1
  217. package/dist/process/Scope.mjs +13 -18
  218. package/dist/process/Scope.mjs.map +1 -1
  219. package/dist/process/Search.mjs +14 -34
  220. package/dist/process/Search.mjs.map +1 -1
  221. package/dist/process/UseCase.mjs +23 -4
  222. package/dist/process/UseCase.mjs.map +1 -1
  223. package/dist/resources/Req.mjs +19 -4
  224. package/dist/resources/Req.mjs.map +1 -1
  225. package/dist/resources/Requires.mjs +17 -4
  226. package/dist/resources/Requires.mjs.map +1 -1
  227. package/dist/resources/Route.mjs +14 -32
  228. package/dist/resources/Route.mjs.map +1 -1
  229. package/dist/resources/Service.mjs +18 -3
  230. package/dist/resources/Service.mjs.map +1 -1
  231. package/dist/security/Jwt.mjs +20 -5
  232. package/dist/security/Jwt.mjs.map +1 -1
  233. package/dist/services/Api.mjs +24 -63
  234. package/dist/services/Api.mjs.map +1 -1
  235. package/dist/services/ApiGateway.mjs +26 -29
  236. package/dist/services/ApiGateway.mjs.map +1 -1
  237. package/dist/services/AxiosProvider.mjs +21 -23
  238. package/dist/services/AxiosProvider.mjs.map +1 -1
  239. package/dist/services/MappedRouteGateway.mjs +39 -5
  240. package/dist/services/MappedRouteGateway.mjs.map +1 -1
  241. package/dist/services/RouteGateway.mjs +27 -42
  242. package/dist/services/RouteGateway.mjs.map +1 -1
  243. package/dist/services/ViewRouteGateway.mjs +38 -5
  244. package/dist/services/ViewRouteGateway.mjs.map +1 -1
  245. package/dist/sql/Clause.mjs +18 -22
  246. package/dist/sql/Clause.mjs.map +1 -1
  247. package/dist/sql/Column.mjs +18 -64
  248. package/dist/sql/Column.mjs.map +1 -1
  249. package/dist/sql/Count.mjs +15 -7
  250. package/dist/sql/Count.mjs.map +1 -1
  251. package/dist/sql/Delete.mjs +14 -7
  252. package/dist/sql/Delete.mjs.map +1 -1
  253. package/dist/sql/Insert.mjs +16 -12
  254. package/dist/sql/Insert.mjs.map +1 -1
  255. package/dist/sql/Join.mjs +3 -18
  256. package/dist/sql/Join.mjs.map +1 -1
  257. package/dist/sql/Select.mjs +14 -40
  258. package/dist/sql/Select.mjs.map +1 -1
  259. package/dist/sql/SqlQuery.mjs +13 -11
  260. package/dist/sql/SqlQuery.mjs.map +1 -1
  261. package/dist/sql/Table.mjs +52 -12
  262. package/dist/sql/Table.mjs.map +1 -1
  263. package/dist/sql/TableGateway.mjs +26 -5
  264. package/dist/sql/TableGateway.mjs.map +1 -1
  265. package/dist/sql/Update.mjs +16 -13
  266. package/dist/sql/Update.mjs.map +1 -1
  267. package/dist/types/Array.mjs +9 -22
  268. package/dist/types/Array.mjs.map +1 -1
  269. package/dist/types/Builder.mjs +20 -7
  270. package/dist/types/Builder.mjs.map +1 -1
  271. package/dist/types/Cache.mjs +16 -3
  272. package/dist/types/Cache.mjs.map +1 -1
  273. package/dist/types/CacheAge.mjs +14 -36
  274. package/dist/types/CacheAge.mjs.map +1 -1
  275. package/dist/types/Case.mjs +12 -87
  276. package/dist/types/Case.mjs.map +1 -1
  277. package/dist/types/Constructor.mjs +11 -12
  278. package/dist/types/Constructor.mjs.map +1 -1
  279. package/dist/types/Context.mjs +16 -81
  280. package/dist/types/Context.mjs.map +1 -1
  281. package/dist/types/Enum.mjs +13 -46
  282. package/dist/types/Enum.mjs.map +1 -1
  283. package/dist/types/Exception.mjs +14 -22
  284. package/dist/types/Exception.mjs.map +1 -1
  285. package/dist/types/Falsy.mjs +4 -2
  286. package/dist/types/Falsy.mjs.map +1 -1
  287. package/dist/types/Func.mjs +3 -1
  288. package/dist/types/Func.mjs.map +1 -1
  289. package/dist/types/Gateway.mjs +13 -34
  290. package/dist/types/Gateway.mjs.map +1 -1
  291. package/dist/types/Get.mjs +6 -4
  292. package/dist/types/Get.mjs.map +1 -1
  293. package/dist/types/Id.mjs +5 -2
  294. package/dist/types/Id.mjs.map +1 -1
  295. package/dist/types/Is.mjs +21 -21
  296. package/dist/types/Is.mjs.map +1 -1
  297. package/dist/types/IsA.mjs +6 -3
  298. package/dist/types/IsA.mjs.map +1 -1
  299. package/dist/types/IsDate.mjs +6 -12
  300. package/dist/types/IsDate.mjs.map +1 -1
  301. package/dist/types/IsEqual.mjs +13 -11
  302. package/dist/types/IsEqual.mjs.map +1 -1
  303. package/dist/types/Json.d.ts +1 -0
  304. package/dist/types/Json.mjs +16 -31
  305. package/dist/types/Json.mjs.map +1 -1
  306. package/dist/types/List.mjs +17 -170
  307. package/dist/types/List.mjs.map +1 -1
  308. package/dist/types/Message.mjs +6 -2
  309. package/dist/types/Message.mjs.map +1 -1
  310. package/dist/types/Meta.mjs +13 -41
  311. package/dist/types/Meta.mjs.map +1 -1
  312. package/dist/types/Nullish.mjs +3 -1
  313. package/dist/types/Nullish.mjs.map +1 -1
  314. package/dist/types/Number.mjs +13 -5
  315. package/dist/types/Number.mjs.map +1 -1
  316. package/dist/types/PageList.mjs +18 -118
  317. package/dist/types/PageList.mjs.map +1 -1
  318. package/dist/types/Parser.mjs +29 -7
  319. package/dist/types/Parser.mjs.map +1 -1
  320. package/dist/types/Primitive.mjs +4 -4
  321. package/dist/types/Primitive.mjs.map +1 -1
  322. package/dist/types/Repository.mjs +13 -40
  323. package/dist/types/Repository.mjs.map +1 -1
  324. package/dist/types/Result.mjs +13 -8
  325. package/dist/types/Result.mjs.map +1 -1
  326. package/dist/types/Results.mjs +14 -19
  327. package/dist/types/Results.mjs.map +1 -1
  328. package/dist/types/Sort.mjs +4 -2
  329. package/dist/types/Sort.mjs.map +1 -1
  330. package/dist/types/Tag.mjs +16 -3
  331. package/dist/types/Tag.mjs.map +1 -1
  332. package/dist/types/Template.mjs +13 -35
  333. package/dist/types/Template.mjs.map +1 -1
  334. package/dist/types/Text.mjs +18 -97
  335. package/dist/types/Text.mjs.map +1 -1
  336. package/dist/types/Try.mjs +13 -107
  337. package/dist/types/Try.mjs.map +1 -1
  338. package/dist/types/Uri.mjs +15 -74
  339. package/dist/types/Uri.mjs.map +1 -1
  340. package/dist/types/Uuid.mjs +5 -5
  341. package/dist/types/Uuid.mjs.map +1 -1
  342. package/dist/types/Validatable.mjs +6 -2
  343. package/dist/types/Validatable.mjs.map +1 -1
  344. package/dist/types/Value.mjs +13 -17
  345. package/dist/types/Value.mjs.map +1 -1
  346. package/dist/utils/Base64.mjs +3 -1
  347. package/dist/utils/Base64.mjs.map +1 -1
  348. package/dist/utils/Convert.mjs +14 -39
  349. package/dist/utils/Convert.mjs.map +1 -1
  350. package/dist/utils/If.mjs +10 -13
  351. package/dist/utils/If.mjs.map +1 -1
  352. package/dist/utils/Loading.mjs +6 -2
  353. package/dist/utils/Loading.mjs.map +1 -1
  354. package/dist/utils/Log.mjs +2 -0
  355. package/dist/utils/Log.mjs.map +1 -1
  356. package/dist/utils/Mapper.mjs +18 -101
  357. package/dist/utils/Mapper.mjs.map +1 -1
  358. package/dist/utils/Promise.mjs +18 -16
  359. package/dist/utils/Promise.mjs.map +1 -1
  360. package/dist/utils/Property.mjs +14 -14
  361. package/dist/utils/Property.mjs.map +1 -1
  362. package/dist/utils/Sentence.mjs +27 -14
  363. package/dist/utils/Sentence.mjs.map +1 -1
  364. package/dist/utils/State.mjs +7 -8
  365. package/dist/utils/State.mjs.map +1 -1
  366. package/dist/utils/Traverse.mjs +3 -5
  367. package/dist/utils/Traverse.mjs.map +1 -1
  368. package/dist/utils/View.mjs +20 -64
  369. package/dist/utils/View.mjs.map +1 -1
  370. package/dist/utils/Wait.mjs +5 -3
  371. package/dist/utils/Wait.mjs.map +1 -1
  372. package/dist/validation/Contraints.mjs +31 -29
  373. package/dist/validation/Contraints.mjs.map +1 -1
  374. package/dist/validation/Validate.mjs +15 -28
  375. package/dist/validation/Validate.mjs.map +1 -1
  376. package/dist/validation/When.mjs +13 -38
  377. package/dist/validation/When.mjs.map +1 -1
  378. package/package.json +4 -3
  379. package/src/types/Json.ts +2 -0
  380. package/dist/data/Condition.js +0 -71
  381. package/dist/data/Condition.js.map +0 -1
  382. package/dist/data/DataProvider.js +0 -17
  383. package/dist/data/DataProvider.js.map +0 -1
  384. package/dist/data/Database.js +0 -42
  385. package/dist/data/Database.js.map +0 -1
  386. package/dist/data/Field.js +0 -48
  387. package/dist/data/Field.js.map +0 -1
  388. package/dist/data/InMemoryGateway.js +0 -59
  389. package/dist/data/InMemoryGateway.js.map +0 -1
  390. package/dist/data/Query.js +0 -17
  391. package/dist/data/Query.js.map +0 -1
  392. package/dist/data/QueryProvider.js +0 -17
  393. package/dist/data/QueryProvider.js.map +0 -1
  394. package/dist/data/index.js +0 -35
  395. package/dist/data/index.js.map +0 -1
  396. package/dist/domain/Audit.js +0 -59
  397. package/dist/domain/Audit.js.map +0 -1
  398. package/dist/domain/Child.js +0 -49
  399. package/dist/domain/Child.js.map +0 -1
  400. package/dist/domain/Entity.js +0 -62
  401. package/dist/domain/Entity.js.map +0 -1
  402. package/dist/domain/Repo.js +0 -81
  403. package/dist/domain/Repo.js.map +0 -1
  404. package/dist/domain/Struct.js +0 -55
  405. package/dist/domain/Struct.js.map +0 -1
  406. package/dist/domain/Typo.js +0 -62
  407. package/dist/domain/Typo.js.map +0 -1
  408. package/dist/domain/enums/Country.js +0 -290
  409. package/dist/domain/enums/Country.js.map +0 -1
  410. package/dist/domain/enums/Currency.js +0 -159
  411. package/dist/domain/enums/Currency.js.map +0 -1
  412. package/dist/domain/enums/Environment.js +0 -35
  413. package/dist/domain/enums/Environment.js.map +0 -1
  414. package/dist/domain/enums/Locale.js +0 -605
  415. package/dist/domain/enums/Locale.js.map +0 -1
  416. package/dist/domain/enums/UnitOfMeasurement.js +0 -40
  417. package/dist/domain/enums/UnitOfMeasurement.js.map +0 -1
  418. package/dist/domain/enums/UnitOfWeight.js +0 -38
  419. package/dist/domain/enums/UnitOfWeight.js.map +0 -1
  420. package/dist/domain/enums/index.js +0 -33
  421. package/dist/domain/enums/index.js.map +0 -1
  422. package/dist/domain/index.js +0 -39
  423. package/dist/domain/index.js.map +0 -1
  424. package/dist/domain/structs/Address.js +0 -73
  425. package/dist/domain/structs/Address.js.map +0 -1
  426. package/dist/domain/structs/Box.js +0 -70
  427. package/dist/domain/structs/Box.js.map +0 -1
  428. package/dist/domain/structs/Dimension.js +0 -61
  429. package/dist/domain/structs/Dimension.js.map +0 -1
  430. package/dist/domain/structs/Money.js +0 -71
  431. package/dist/domain/structs/Money.js.map +0 -1
  432. package/dist/domain/structs/Name.js +0 -57
  433. package/dist/domain/structs/Name.js.map +0 -1
  434. package/dist/domain/structs/Weight.js +0 -71
  435. package/dist/domain/structs/Weight.js.map +0 -1
  436. package/dist/domain/structs/index.js +0 -33
  437. package/dist/domain/structs/index.js.map +0 -1
  438. package/dist/domain/values/DateTime.js +0 -120
  439. package/dist/domain/values/DateTime.js.map +0 -1
  440. package/dist/domain/values/EAN.js +0 -50
  441. package/dist/domain/values/EAN.js.map +0 -1
  442. package/dist/domain/values/Email.js +0 -57
  443. package/dist/domain/values/Email.js.map +0 -1
  444. package/dist/domain/values/IBAN.js +0 -50
  445. package/dist/domain/values/IBAN.js.map +0 -1
  446. package/dist/domain/values/PostalCode.js +0 -53
  447. package/dist/domain/values/PostalCode.js.map +0 -1
  448. package/dist/domain/values/Slug.js +0 -41
  449. package/dist/domain/values/Slug.js.map +0 -1
  450. package/dist/domain/values/Url.js +0 -57
  451. package/dist/domain/values/Url.js.map +0 -1
  452. package/dist/domain/values/index.js +0 -35
  453. package/dist/domain/values/index.js.map +0 -1
  454. package/dist/health/HealthResource.js +0 -49
  455. package/dist/health/HealthResource.js.map +0 -1
  456. package/dist/health/HealthUri.js +0 -33
  457. package/dist/health/HealthUri.js.map +0 -1
  458. package/dist/health/index.js +0 -25
  459. package/dist/health/index.js.map +0 -1
  460. package/dist/http/CacheControl.js +0 -56
  461. package/dist/http/CacheControl.js.map +0 -1
  462. package/dist/http/ContentType.js +0 -53
  463. package/dist/http/ContentType.js.map +0 -1
  464. package/dist/http/HttpHeader.js +0 -32
  465. package/dist/http/HttpHeader.js.map +0 -1
  466. package/dist/http/HttpStatus.js +0 -112
  467. package/dist/http/HttpStatus.js.map +0 -1
  468. package/dist/http/HttpVerb.js +0 -39
  469. package/dist/http/HttpVerb.js.map +0 -1
  470. package/dist/http/LocalRequestStore.js +0 -36
  471. package/dist/http/LocalRequestStore.js.map +0 -1
  472. package/dist/http/OriginatedError.js +0 -44
  473. package/dist/http/OriginatedError.js.map +0 -1
  474. package/dist/http/Request.js +0 -17
  475. package/dist/http/Request.js.map +0 -1
  476. package/dist/http/RequestOptions.js +0 -91
  477. package/dist/http/RequestOptions.js.map +0 -1
  478. package/dist/http/RequestProvider.js +0 -17
  479. package/dist/http/RequestProvider.js.map +0 -1
  480. package/dist/http/Response.js +0 -39
  481. package/dist/http/Response.js.map +0 -1
  482. package/dist/http/RestResult.js +0 -56
  483. package/dist/http/RestResult.js.map +0 -1
  484. package/dist/http/Verb.js +0 -61
  485. package/dist/http/Verb.js.map +0 -1
  486. package/dist/http/index.js +0 -45
  487. package/dist/http/index.js.map +0 -1
  488. package/dist/process/App.js +0 -35
  489. package/dist/process/App.js.map +0 -1
  490. package/dist/process/Manage.js +0 -43
  491. package/dist/process/Manage.js.map +0 -1
  492. package/dist/process/Scope.js +0 -46
  493. package/dist/process/Scope.js.map +0 -1
  494. package/dist/process/Search.js +0 -62
  495. package/dist/process/Search.js.map +0 -1
  496. package/dist/process/UseCase.js +0 -50
  497. package/dist/process/UseCase.js.map +0 -1
  498. package/dist/process/index.js +0 -31
  499. package/dist/process/index.js.map +0 -1
  500. package/dist/resources/AppProvider.js +0 -17
  501. package/dist/resources/AppProvider.js.map +0 -1
  502. package/dist/resources/Req.js +0 -54
  503. package/dist/resources/Req.js.map +0 -1
  504. package/dist/resources/Requires.js +0 -48
  505. package/dist/resources/Requires.js.map +0 -1
  506. package/dist/resources/Resource.js +0 -17
  507. package/dist/resources/Resource.js.map +0 -1
  508. package/dist/resources/Route.js +0 -62
  509. package/dist/resources/Route.js.map +0 -1
  510. package/dist/resources/Service.js +0 -49
  511. package/dist/resources/Service.js.map +0 -1
  512. package/dist/resources/index.js +0 -35
  513. package/dist/resources/index.js.map +0 -1
  514. package/dist/security/Jwt.js +0 -48
  515. package/dist/security/Jwt.js.map +0 -1
  516. package/dist/security/index.js +0 -23
  517. package/dist/security/index.js.map +0 -1
  518. package/dist/services/Api.js +0 -93
  519. package/dist/services/Api.js.map +0 -1
  520. package/dist/services/ApiGateway.js +0 -57
  521. package/dist/services/ApiGateway.js.map +0 -1
  522. package/dist/services/AxiosProvider.js +0 -61
  523. package/dist/services/AxiosProvider.js.map +0 -1
  524. package/dist/services/MappedRouteGateway.js +0 -52
  525. package/dist/services/MappedRouteGateway.js.map +0 -1
  526. package/dist/services/RouteGateway.js +0 -70
  527. package/dist/services/RouteGateway.js.map +0 -1
  528. package/dist/services/ViewRouteGateway.js +0 -55
  529. package/dist/services/ViewRouteGateway.js.map +0 -1
  530. package/dist/services/index.js +0 -33
  531. package/dist/services/index.js.map +0 -1
  532. package/dist/sql/Clause.js +0 -58
  533. package/dist/sql/Clause.js.map +0 -1
  534. package/dist/sql/Column.js +0 -96
  535. package/dist/sql/Column.js.map +0 -1
  536. package/dist/sql/Count.js +0 -35
  537. package/dist/sql/Count.js.map +0 -1
  538. package/dist/sql/Delete.js +0 -35
  539. package/dist/sql/Delete.js.map +0 -1
  540. package/dist/sql/Insert.js +0 -40
  541. package/dist/sql/Insert.js.map +0 -1
  542. package/dist/sql/Join.js +0 -46
  543. package/dist/sql/Join.js.map +0 -1
  544. package/dist/sql/Select.js +0 -68
  545. package/dist/sql/Select.js.map +0 -1
  546. package/dist/sql/SqlQuery.js +0 -39
  547. package/dist/sql/SqlQuery.js.map +0 -1
  548. package/dist/sql/Table.js +0 -63
  549. package/dist/sql/Table.js.map +0 -1
  550. package/dist/sql/TableGateway.js +0 -62
  551. package/dist/sql/TableGateway.js.map +0 -1
  552. package/dist/sql/Update.js +0 -41
  553. package/dist/sql/Update.js.map +0 -1
  554. package/dist/sql/index.js +0 -41
  555. package/dist/sql/index.js.map +0 -1
  556. package/dist/types/Array.js +0 -54
  557. package/dist/types/Array.js.map +0 -1
  558. package/dist/types/Builder.js +0 -43
  559. package/dist/types/Builder.js.map +0 -1
  560. package/dist/types/Cache.js +0 -38
  561. package/dist/types/Cache.js.map +0 -1
  562. package/dist/types/CacheAge.js +0 -64
  563. package/dist/types/CacheAge.js.map +0 -1
  564. package/dist/types/Case.js +0 -115
  565. package/dist/types/Case.js.map +0 -1
  566. package/dist/types/Constructor.js +0 -50
  567. package/dist/types/Constructor.js.map +0 -1
  568. package/dist/types/Context.js +0 -117
  569. package/dist/types/Context.js.map +0 -1
  570. package/dist/types/Enum.js +0 -76
  571. package/dist/types/Enum.js.map +0 -1
  572. package/dist/types/ErrorOrigin.js +0 -17
  573. package/dist/types/ErrorOrigin.js.map +0 -1
  574. package/dist/types/Exception.js +0 -54
  575. package/dist/types/Exception.js.map +0 -1
  576. package/dist/types/Falsy.js +0 -32
  577. package/dist/types/Falsy.js.map +0 -1
  578. package/dist/types/Func.js +0 -29
  579. package/dist/types/Func.js.map +0 -1
  580. package/dist/types/Gateway.js +0 -62
  581. package/dist/types/Gateway.js.map +0 -1
  582. package/dist/types/Get.js +0 -36
  583. package/dist/types/Get.js.map +0 -1
  584. package/dist/types/Id.js +0 -30
  585. package/dist/types/Id.js.map +0 -1
  586. package/dist/types/Identity.js +0 -17
  587. package/dist/types/Identity.js.map +0 -1
  588. package/dist/types/Is.js +0 -85
  589. package/dist/types/Is.js.map +0 -1
  590. package/dist/types/IsA.js +0 -33
  591. package/dist/types/IsA.js.map +0 -1
  592. package/dist/types/IsDate.js +0 -46
  593. package/dist/types/IsDate.js.map +0 -1
  594. package/dist/types/IsEqual.js +0 -39
  595. package/dist/types/IsEqual.js.map +0 -1
  596. package/dist/types/Json.js +0 -67
  597. package/dist/types/Json.js.map +0 -1
  598. package/dist/types/List.js +0 -208
  599. package/dist/types/List.js.map +0 -1
  600. package/dist/types/Message.js +0 -30
  601. package/dist/types/Message.js.map +0 -1
  602. package/dist/types/Meta.js +0 -71
  603. package/dist/types/Meta.js.map +0 -1
  604. package/dist/types/Nullish.js +0 -29
  605. package/dist/types/Nullish.js.map +0 -1
  606. package/dist/types/Number.js +0 -33
  607. package/dist/types/Number.js.map +0 -1
  608. package/dist/types/PageList.js.map +0 -1
  609. package/dist/types/Parser.js +0 -69
  610. package/dist/types/Parser.js.map +0 -1
  611. package/dist/types/Primitive.js +0 -32
  612. package/dist/types/Primitive.js.map +0 -1
  613. package/dist/types/Repository.js +0 -68
  614. package/dist/types/Repository.js.map +0 -1
  615. package/dist/types/Result.js +0 -38
  616. package/dist/types/Result.js.map +0 -1
  617. package/dist/types/Results.js +0 -51
  618. package/dist/types/Results.js.map +0 -1
  619. package/dist/types/Sort.js +0 -32
  620. package/dist/types/Sort.js.map +0 -1
  621. package/dist/types/Tag.js +0 -35
  622. package/dist/types/Tag.js.map +0 -1
  623. package/dist/types/Template.js +0 -65
  624. package/dist/types/Template.js.map +0 -1
  625. package/dist/types/Text.js +0 -137
  626. package/dist/types/Text.js.map +0 -1
  627. package/dist/types/Try.js +0 -137
  628. package/dist/types/Try.js.map +0 -1
  629. package/dist/types/TypeGuard.js +0 -17
  630. package/dist/types/TypeGuard.js.map +0 -1
  631. package/dist/types/Types.js +0 -17
  632. package/dist/types/Types.js.map +0 -1
  633. package/dist/types/Uri.js +0 -106
  634. package/dist/types/Uri.js.map +0 -1
  635. package/dist/types/Uuid.js +0 -35
  636. package/dist/types/Uuid.js.map +0 -1
  637. package/dist/types/Validatable.js +0 -30
  638. package/dist/types/Validatable.js.map +0 -1
  639. package/dist/types/Value.js +0 -47
  640. package/dist/types/Value.js.map +0 -1
  641. package/dist/types/index.js +0 -107
  642. package/dist/types/index.js.map +0 -1
  643. package/dist/utils/Base64.js +0 -33
  644. package/dist/utils/Base64.js.map +0 -1
  645. package/dist/utils/Convert.js +0 -69
  646. package/dist/utils/Convert.js.map +0 -1
  647. package/dist/utils/If.js +0 -47
  648. package/dist/utils/If.js.map +0 -1
  649. package/dist/utils/Loading.js +0 -30
  650. package/dist/utils/Loading.js.map +0 -1
  651. package/dist/utils/Log.js +0 -43
  652. package/dist/utils/Log.js.map +0 -1
  653. package/dist/utils/Mapper.js +0 -133
  654. package/dist/utils/Mapper.js.map +0 -1
  655. package/dist/utils/Promise.js +0 -56
  656. package/dist/utils/Promise.js.map +0 -1
  657. package/dist/utils/Property.js +0 -42
  658. package/dist/utils/Property.js.map +0 -1
  659. package/dist/utils/Sentence.js +0 -80
  660. package/dist/utils/Sentence.js.map +0 -1
  661. package/dist/utils/State.js +0 -36
  662. package/dist/utils/State.js.map +0 -1
  663. package/dist/utils/Traverse.js +0 -33
  664. package/dist/utils/Traverse.js.map +0 -1
  665. package/dist/utils/View.js +0 -86
  666. package/dist/utils/View.js.map +0 -1
  667. package/dist/utils/Wait.js +0 -39
  668. package/dist/utils/Wait.js.map +0 -1
  669. package/dist/utils/index.js +0 -47
  670. package/dist/utils/index.js.map +0 -1
  671. package/dist/validation/Contraints.js +0 -91
  672. package/dist/validation/Contraints.js.map +0 -1
  673. package/dist/validation/Validate.js +0 -46
  674. package/dist/validation/Validate.js.map +0 -1
  675. package/dist/validation/When.js +0 -68
  676. package/dist/validation/When.js.map +0 -1
  677. package/dist/validation/index.js +0 -27
  678. package/dist/validation/index.js.map +0 -1
@@ -0,0 +1,902 @@
1
+ import {
2
+ isValidatable
3
+ } from "./chunk-CMRS457E.mjs";
4
+ import {
5
+ ifDefined
6
+ } from "./chunk-JXJ5LRH3.mjs";
7
+ import {
8
+ isA,
9
+ isAn
10
+ } from "./chunk-4QX4EMLL.mjs";
11
+ import {
12
+ ofGet,
13
+ ofProperty
14
+ } from "./chunk-SJGQU3OG.mjs";
15
+ import {
16
+ toArray
17
+ } from "./chunk-FAAERRP2.mjs";
18
+ import {
19
+ ofConstruct,
20
+ on,
21
+ toName,
22
+ use
23
+ } from "./chunk-GI5TZOAG.mjs";
24
+ import {
25
+ isFunc
26
+ } from "./chunk-PIRWVOO2.mjs";
27
+ import {
28
+ isArray,
29
+ isDefined,
30
+ isEmpty,
31
+ isFunction,
32
+ isIn,
33
+ isNotEmpty,
34
+ isObject,
35
+ isTrue
36
+ } from "./chunk-OXBQSJDF.mjs";
37
+
38
+ // src/types/Meta.ts
39
+ import "reflect-metadata";
40
+
41
+ // src/types/Json.ts
42
+ var isJson = (subject) => isA(subject, "toJSON");
43
+ var json = {
44
+ parse: (subject) => JSON.parse(JSON.stringify(subject ?? {})),
45
+ merge: (...subjects) => json.parse(subjects.map((s) => asJson(s, (s2) => json.parse(s2))).reduce((js, j) => ({ ...js, ...j }), {})),
46
+ delete: (subject, key) => {
47
+ ifDefined(subject, () => delete subject[key]);
48
+ return subject;
49
+ },
50
+ set: (subject, key = "", value) => isEmpty(key) ? subject : value !== void 0 ? { ...subject, ...{ [key]: value } } : json.delete(subject, key),
51
+ omit: (subject, ...keys) => keys.reduce((js, k) => json.delete(js, k), json.parse(subject)),
52
+ defaults: (options = {}, defaults = {}) => json.merge(defaults, options),
53
+ isSubset: (subject, subset) => !entries(subset).some(([k, v]) => subject[k] !== v)
54
+ };
55
+ var toJson = json.merge;
56
+ var asJson = (j, alt = {}) => isJson(j) ? j.toJSON() : isObject(j) ? j : ofGet(alt, j);
57
+ var Any = class {
58
+ constructor(value) {
59
+ this.value = value;
60
+ }
61
+ merge = (...subjects) => any(json.merge(this.value, ...subjects));
62
+ delete = (key) => any(json.delete(this.value, key));
63
+ omit = (...keys) => any(json.omit(this.value, ...keys));
64
+ set = (key, value) => any(json.set(this.value, key, value));
65
+ toJSON() {
66
+ return this.value;
67
+ }
68
+ };
69
+ var any = (value) => new Any(value);
70
+
71
+ // src/validation/When.ts
72
+ var When = class _When {
73
+ constructor(subject, valid = true, results) {
74
+ this.subject = subject;
75
+ this.valid = valid;
76
+ this.results = results;
77
+ }
78
+ get not() {
79
+ return this.clone(!this.valid);
80
+ }
81
+ get and() {
82
+ return this.clone(this.valid);
83
+ }
84
+ get isDefined() {
85
+ return this.clone(this.valid === isDefined(this.subject));
86
+ }
87
+ get isEmpty() {
88
+ return this.clone(this.valid === isEmpty(this.subject));
89
+ }
90
+ get isTrue() {
91
+ return this.clone(this.valid === !!this.subject);
92
+ }
93
+ get isValid() {
94
+ this.results = validate(this.subject);
95
+ return this.clone(this.valid === this.results.isValid);
96
+ }
97
+ isInstance = (c) => this.clone(this.valid === this.subject instanceof c);
98
+ with = (pred) => this.clone(this.valid === ofGet(pred, this.subject));
99
+ contains = (property) => this.clone(this.valid === isDefined(ofGet(property, this.subject)));
100
+ in = (...items) => this.clone(this.valid === isIn(this.subject, toArray(...items)));
101
+ is = (item) => this.clone(this.valid === (this.subject === item));
102
+ reject = (error) => !this.valid ? resolve(this.subject) : reject(ofGet(error, this.subject) ?? this.results ?? Exception.Unknown);
103
+ recover = (f) => resolve(!this.valid ? this.subject : f(this.subject));
104
+ clone = (result = true) => new _When(this.subject, result, this.results);
105
+ };
106
+ var when = (subject) => new When(subject);
107
+
108
+ // src/validation/Validate.ts
109
+ var asResults = (subject, template2, options = {}) => toResults(toResult(text(template2).parse(subject, options), toName(subject)));
110
+ var validators = (subject) => meta(subject).keys("constraint").reduce((list, vs) => list.add(vs), toList());
111
+ var runValidator = (v, subject) => tryTo(() => isFunction(subject[v.property]) ? subject[v.property]() : subject[v.property]).map((actual) => [actual, v.constraint(actual)]).map(([actual, res]) => isResults(res) ? res : !res ? asResults(subject, v.text, { ...v, actual }) : toResults()).recover((e) => asResults(subject, asString(e))).value;
112
+ var constraints = (subject) => tryTo(() => validators(subject)).map((vs) => vs.mapDefined((v) => runValidator(v, subject))).map((res) => res.reduce((rs, r) => rs.add(...r.results), toResults())).value;
113
+ var validate = (subject) => choose(subject).is.not.defined(
114
+ (s) => s,
115
+ () => toResults("Subject is not defined.")
116
+ ).type(isEnum, (e) => e.isValid ? toResults() : asResults(e, "This is not a valid {type}.")).type(isValue, (v) => v.isValid ? toResults() : asResults(v, "This is not a valid {type}.")).type(isArray, (a) => a.map((i) => validate(i)).reduce((rs, r) => rs.add(...r.results), toResults())).type(isValidatable, (v) => constraints(v)).else(toResults());
117
+ var validateReject = (subject) => when(subject).not.isValid.reject();
118
+ var isValid = (t) => validate(t).isValid;
119
+
120
+ // src/types/Try.ts
121
+ var Try = class _Try {
122
+ is = {
123
+ defined: (prop) => this.filter((v) => isDefined(prop ? prop(v) : v)),
124
+ empty: (prop) => this.filter((v) => isEmpty(prop ? prop(v) : v)),
125
+ valid: (prop) => this.filter((v) => validate(prop ? prop(v) : v).isValid),
126
+ true: (prop) => this.filter((v) => isTrue(prop ? prop(v) : v)),
127
+ false: (prop) => this.filter((v) => !isTrue(prop ? prop(v) : v)),
128
+ not: {
129
+ defined: (prop) => this.filter((v) => !isDefined(prop ? prop(v) : v)),
130
+ empty: (prop) => this.filter((v) => !isEmpty(prop ? prop(v) : v)),
131
+ valid: (prop) => this.filter((v) => !validate(prop ? prop(v) : v).isValid)
132
+ }
133
+ };
134
+ if = this.is;
135
+ static of = (c, ...args) => {
136
+ try {
137
+ const out = ofGet(c, ...args);
138
+ return new Success(out instanceof _Try ? out.value : out);
139
+ } catch (e) {
140
+ return new Failure(e);
141
+ }
142
+ };
143
+ };
144
+ var Success = class extends Try {
145
+ constructor(value) {
146
+ super();
147
+ this.value = value;
148
+ }
149
+ get error() {
150
+ throw new Error("No error found");
151
+ }
152
+ get isValid() {
153
+ return true;
154
+ }
155
+ map(f) {
156
+ return tryTo(f, this.value);
157
+ }
158
+ recover(f) {
159
+ return this;
160
+ }
161
+ recoverFrom(type, f) {
162
+ return this;
163
+ }
164
+ accept(f) {
165
+ return tryTo(() => {
166
+ f(this.value);
167
+ return this;
168
+ });
169
+ }
170
+ filter(predicate) {
171
+ return tryTo(() => {
172
+ if (predicate(this.value))
173
+ return this;
174
+ throw new Error(`Applying filter(${predicate.toString()}) failed.`);
175
+ });
176
+ }
177
+ or(value) {
178
+ return this.value;
179
+ }
180
+ orElse(value) {
181
+ return this.value;
182
+ }
183
+ orThrow(_error) {
184
+ return this.value;
185
+ }
186
+ };
187
+ var Failure = class _Failure extends Try {
188
+ constructor(error) {
189
+ super();
190
+ this.error = error;
191
+ }
192
+ get value() {
193
+ throw this.error;
194
+ }
195
+ get isValid() {
196
+ return false;
197
+ }
198
+ map(f) {
199
+ return new _Failure(this.error);
200
+ }
201
+ recover(f) {
202
+ return tryTo(f, this.error);
203
+ }
204
+ recoverFrom(type, f) {
205
+ return tryTo(() => this.error instanceof type ? this.recover(f) : this);
206
+ }
207
+ accept(f) {
208
+ return this;
209
+ }
210
+ filter(predicate) {
211
+ return this;
212
+ }
213
+ or(value) {
214
+ return ofGet(value);
215
+ }
216
+ orElse(value) {
217
+ return ofGet(value);
218
+ }
219
+ orThrow(error) {
220
+ throw ofConstruct(error);
221
+ }
222
+ };
223
+ var tryTo = (c, ...args) => Try.of(c, ...args);
224
+
225
+ // src/types/List.ts
226
+ var List2 = class extends Array {
227
+ asc(p) {
228
+ return this.sort((e1, e2) => ofProperty(e1, p) > ofProperty(e2, p) ? 1 : -1);
229
+ }
230
+ desc(p) {
231
+ return this.sort((e1, e2) => ofProperty(e1, p) < ofProperty(e2, p) ? 1 : -1);
232
+ }
233
+ first(p, params) {
234
+ return p ? this.find(p, params) : this[0];
235
+ }
236
+ firstValue(f, alt) {
237
+ return tryTo(() => this.first((t) => !!f(t))).map((i) => i ? f(i) : ofGet(alt, i)).value;
238
+ }
239
+ isFirst(value) {
240
+ return value === this.first();
241
+ }
242
+ next(p, params) {
243
+ return p ? this[this.findIndex(p, params) + 1] : this[0];
244
+ }
245
+ prev(p, params) {
246
+ return p ? this[this.findIndex(p, params) - 1] : this[0];
247
+ }
248
+ last(p, params) {
249
+ return p ? this.filter(p, params).last() : this[this.length - 1];
250
+ }
251
+ isLast(value) {
252
+ return value === this.last();
253
+ }
254
+ overlaps(...items) {
255
+ return toList(...items).some((i) => this.some((t) => i === t));
256
+ }
257
+ diff(others) {
258
+ return this.filter((i) => !others.includes(i));
259
+ }
260
+ diffByKey(others, key) {
261
+ return this.filter((i) => !others.some((o) => o[key] === i[key]));
262
+ }
263
+ symmetricDiff(others) {
264
+ return this.diff(others).concat(toList(...others).diff(this));
265
+ }
266
+ symmetricDiffByKey(others, key) {
267
+ return this.diffByKey(others, key).concat(toList(...others).diffByKey(this, key));
268
+ }
269
+ intersect(others) {
270
+ return this.filter((i) => others.includes(i));
271
+ }
272
+ intersectByKey(others, key) {
273
+ return this.filter((i) => others.some((o) => o[key] === i[key]));
274
+ }
275
+ toJSON() {
276
+ return this.reduce((a, i) => {
277
+ a.push(json.parse(i));
278
+ return a;
279
+ }, new Array());
280
+ }
281
+ map(f, params) {
282
+ return toList(super.map(f, params));
283
+ }
284
+ flatMap(f, params) {
285
+ return toList(super.flatMap(f, params));
286
+ }
287
+ mapDefined(f, params) {
288
+ return this.map(f, params).defined();
289
+ }
290
+ mapAsync(f) {
291
+ return Promise.all(super.map((e) => f(e))).then((a) => toList(a));
292
+ }
293
+ distinct() {
294
+ return this.filter((i, index) => this.indexOf(i) === index);
295
+ }
296
+ distinctByKey(key) {
297
+ return meta(this.toObject(key)).values();
298
+ }
299
+ filter(p, params) {
300
+ return toList(super.filter(p, params));
301
+ }
302
+ sum(p) {
303
+ return this.reduce((sum, i) => sum + p(i), 0);
304
+ }
305
+ max(key) {
306
+ return this.desc(key).first();
307
+ }
308
+ min(key) {
309
+ return this.asc(key).first();
310
+ }
311
+ byId(id) {
312
+ return this.first((i) => asString(i.id) === asString(id));
313
+ }
314
+ add(...items) {
315
+ super.push(...toArray(...items));
316
+ return this;
317
+ }
318
+ concat(...items) {
319
+ return toList(super.concat(...items));
320
+ }
321
+ reverse() {
322
+ return toList(super.reverse());
323
+ }
324
+ splice(start, deleteCount, ...items) {
325
+ return toList(super.splice(start, deleteCount, ...items));
326
+ }
327
+ remove(item) {
328
+ const index = this.indexOf(item);
329
+ if (index > -1) {
330
+ this.splice(index, 1);
331
+ }
332
+ return this;
333
+ }
334
+ replace(key, item) {
335
+ tryTo(() => item[key]).map((k) => this.findIndex((i) => i[key] === k)).filter((i) => i > -1).map((i) => this[i] = item);
336
+ return this;
337
+ }
338
+ switch(item) {
339
+ return this.includes(item) ? this.remove(item) : this.add(item);
340
+ }
341
+ defined() {
342
+ return this.reduce((l, v) => isDefined(v) ? l.add(v) : l, toList());
343
+ }
344
+ toObject(key, options = {}) {
345
+ return this.reduce((o, i) => {
346
+ o[i[key]] = i;
347
+ if (options.deleteKey)
348
+ delete o[i[key]][key];
349
+ return o;
350
+ }, {});
351
+ }
352
+ toObjectList(key) {
353
+ return this.reduce(
354
+ (a, t) => {
355
+ const k = t[key];
356
+ a[k] = a[k] ?? toList();
357
+ a[k].push(t);
358
+ return a;
359
+ },
360
+ {}
361
+ );
362
+ }
363
+ orElse(...alt) {
364
+ return !isEmpty(this) ? this : !isEmpty(...alt) ? toList(...alt) : void 0;
365
+ }
366
+ weave(insertFrom, interval) {
367
+ for (let i = interval, n = 0; i <= this.length && n < insertFrom.length; i += interval + 1) {
368
+ this.splice(i, 0, insertFrom[n++]);
369
+ }
370
+ return this;
371
+ }
372
+ slice(start, end) {
373
+ return toList(super.slice(start, end));
374
+ }
375
+ none(p) {
376
+ return !this.some(p);
377
+ }
378
+ chunk(chunkSize) {
379
+ return this.reduce((acc, _, index) => index % chunkSize === 0 ? on(acc, (a) => a.push(this.slice(index, index + chunkSize))) : acc, toList());
380
+ }
381
+ };
382
+ var toList = (...items) => new List2().add(...items);
383
+ var isList = (l) => isDefined(l) && isArray(l) && isA(l, "first", "last", "asc", "desc");
384
+ var asList = (c, items = []) => toList(toArray(items).map((i) => new c(i)));
385
+ var maxValue = (l, key) => l.desc(key).first()?.[key];
386
+ var minValue = (l, key) => l.asc(key).first()?.[key];
387
+
388
+ // src/types/Meta.ts
389
+ var ClassMeta = class {
390
+ constructor(subject, data = (subject.prototype ?? subject).constructor) {
391
+ this.subject = subject;
392
+ this.data = data;
393
+ }
394
+ get = (key) => Reflect.getMetadata(key, this.data);
395
+ set = (key, value) => {
396
+ Reflect.defineMetadata(key, value, this.data);
397
+ return value;
398
+ };
399
+ entries = () => toList([...Object.entries(this.subject), ...Object.entries(Object.getPrototypeOf(this.subject))]);
400
+ parse = (f, options = {}) => {
401
+ const { initial = {}, skipUndefined = false } = options;
402
+ return this.entries().reduce((a, [k, val]) => use(f(val), (v) => isDefined(v) || !skipUndefined ? on(a, (a2) => a2[k] = v) : a), initial);
403
+ };
404
+ properties = (key) => toList([...Object.getOwnPropertyNames(this.subject), ...Object.getOwnPropertyNames(Object.getPrototypeOf(this.subject))]).map((p) => this.property(p)).filter((p) => key ? p.get(key) : p);
405
+ keys = (key) => this.properties().map((p) => p.get(key)).reduce((list, u) => u ? list.add(u) : list, toList());
406
+ values = () => toList([...Object.values(this.subject), ...Object.values(Object.getPrototypeOf(this.subject))]);
407
+ property = (property) => new PropertyMeta(this.subject, property);
408
+ };
409
+ var PropertyMeta = class {
410
+ constructor(subject, property, data = Reflect.getMetadata(property, subject)) {
411
+ this.subject = subject;
412
+ this.property = property;
413
+ this.data = data;
414
+ }
415
+ get value() {
416
+ return this.subject[this.property];
417
+ }
418
+ get = (key) => isDefined(this.data) && isDefined(this.data[key]) ? this.data[key] : void 0;
419
+ set = (key, value) => {
420
+ Reflect.defineMetadata(this.property, { ...this.data, [key]: value }, this.subject);
421
+ return value;
422
+ };
423
+ };
424
+ var meta = (subject) => new ClassMeta(subject ?? {});
425
+ var entries = (subject) => meta(subject).entries();
426
+
427
+ // src/types/Template.ts
428
+ var Template = class {
429
+ constructor(template2, subject = {}, options = {}) {
430
+ this.template = template2;
431
+ this.subject = subject;
432
+ this.options = options;
433
+ }
434
+ toString = () => {
435
+ return meta(this.options).entries().reduce((t, [k]) => this.option(t, k), this.object()).replace(" ", " ");
436
+ };
437
+ value = (subject, prop) => tryTo(() => prop.split(".")).map((p) => [p, p.splice(1)]).map(([p, ps]) => ps.reduce((t, s) => t[s], text(subject[p[0]]))).map((p) => p.toString()).value;
438
+ props = (tmpl, key, result = toList()) => {
439
+ const i1 = tmpl.indexOf(`{${key}`);
440
+ if (i1 < 0) {
441
+ return result;
442
+ }
443
+ const i2 = tmpl.indexOf("}", i1);
444
+ return this.props(tmpl.slice(i2 + 1), key, result.add(tmpl.substring(i1 + 1, i2)));
445
+ };
446
+ object = () => {
447
+ return this.props(this.template, "this").reduce((t, p) => t.replace(`{${p}}`, this.value(this.subject, p.replace("this.", ""))), this.template);
448
+ };
449
+ option = (tmpl, prop) => {
450
+ return this.props(tmpl, prop).reduce((t, p) => t.replace(`{${p}}`, this.value(this.options, p)), tmpl);
451
+ };
452
+ };
453
+ var template = (tmpl, subject, options = {}) => new Template(asString(tmpl), subject, {
454
+ type: toName(subject),
455
+ subject: text(JSON.stringify(subject)),
456
+ ...options
457
+ });
458
+
459
+ // src/types/Text.ts
460
+ var isText = (t) => isDefined(t) && isFunc(t.toString);
461
+ var asString = (t, alt = "") => (isText(t) ? t : ofGet(alt)).toString();
462
+ var replaceAll = (origin, search, replace = "") => asString(origin).split(asString(search)).join(asString(replace));
463
+ var toWords = (input) => {
464
+ return asString(input).replace(/(\p{Lower})(\p{Upper})/gu, "$1 $2").replace(/(\p{Upper})(\p{Upper}\p{Lower})/gu, "$1 $2").split(/[_\W]+/g).filter(Boolean);
465
+ };
466
+ var kebab = (s = "") => toWords(s).join("-").toLowerCase();
467
+ var ToText2 = class {
468
+ constructor(subject) {
469
+ this.subject = subject;
470
+ }
471
+ get cap() {
472
+ return this.map((s) => s.charAt(0).toUpperCase() + s.slice(1).toLowerCase());
473
+ }
474
+ get title() {
475
+ return this.map(
476
+ (s) => s.split(" ").map((w) => text(w).cap).join(" ")
477
+ );
478
+ }
479
+ get pascal() {
480
+ return this.title.replace(" ", "");
481
+ }
482
+ get lower() {
483
+ return this.map((s) => s.toLowerCase());
484
+ }
485
+ get upper() {
486
+ return this.map((s) => s.toUpperCase());
487
+ }
488
+ get camel() {
489
+ return this.title.trim.map((s) => `${s.charAt(0).toLowerCase()}${s.slice(1)}`);
490
+ }
491
+ get kebab() {
492
+ return this.lower.replace(" ", "-");
493
+ }
494
+ get strictKebab() {
495
+ return this.map((s) => s.replace(/[^a-z\d]+/gi, " ").trim()).kebab;
496
+ }
497
+ get slug() {
498
+ return this.map(
499
+ (s) => s.replace(/ß/g, "ss").normalize("NFKD").replace(/[\u0300-\u036F]/g, "").toLowerCase().replace(/[^a-z\d]+/g, "-").replace(/(^-)|(-$)/g, "")
500
+ );
501
+ }
502
+ get snake() {
503
+ return this.upper.replace(" ", "_");
504
+ }
505
+ get plural() {
506
+ return this.ifLike("") ?? this.add("s");
507
+ }
508
+ get space() {
509
+ return this.map((s) => s.replace(/([a-z0-9])([A-Z])/g, "$1 $2").replace(/[_-]/g, " "));
510
+ }
511
+ get sentence() {
512
+ return this.isEmpty ? this : this.map((s) => `${s.charAt(0).toUpperCase()}${s.slice(1)}.`);
513
+ }
514
+ get initials() {
515
+ return this.map(
516
+ (s) => s.split(" ").map((w) => w[0]).join("")
517
+ );
518
+ }
519
+ get trim() {
520
+ return this.map((s) => s.replace(/[- ,_#]/g, ""));
521
+ }
522
+ get isEmpty() {
523
+ return isEmpty(this.toString());
524
+ }
525
+ parse = (subject, options = {}) => text(template(this.subject, subject, { type: toName(subject), ...options }));
526
+ is = (...others) => others.some((o) => this.toString() === text(o).toString());
527
+ equals = this.is;
528
+ isLike = (...others) => others.some((o) => this.trim.lower.is(text(o).trim.lower));
529
+ ifLike = (...others) => this.isLike(...others) ? this : void 0;
530
+ endsWith = (end) => this.subject.endsWith(asString(end));
531
+ startsWith = (end) => this.subject.startsWith(asString(end));
532
+ first = (n) => this.map((s) => s.substring(0, n));
533
+ last = (n) => this.map((s) => s.substring(s.length - n));
534
+ map = (func) => text(ofGet(func, this.subject));
535
+ replace = (search, replace) => this.map((s) => replaceAll(s, search, replace));
536
+ add = (add, separator = "") => this.map((s) => isNotEmpty(add) ? `${s}${separator}${text(add)}` : s);
537
+ with = (separator, ...other) => this.map(
538
+ (s) => toList(s).add(...other.map((u) => text(u).toString())).filter((s2) => isNotEmpty(s2)).join(separator)
539
+ );
540
+ toString() {
541
+ return this.subject;
542
+ }
543
+ toJSON() {
544
+ return this.subject;
545
+ }
546
+ };
547
+ var text = (subject, alt = "") => {
548
+ const sub = subject ? asString(subject) : alt;
549
+ return new ToText2(sub !== "[object Object]" ? sub : "");
550
+ };
551
+
552
+ // src/types/Case.ts
553
+ var CaseBuilder = class {
554
+ constructor(v) {
555
+ this.v = v;
556
+ }
557
+ case(pred, out) {
558
+ return new Case(this.v).case(pred, out);
559
+ }
560
+ type(guard, out) {
561
+ return new Case(this.v).type(guard, out);
562
+ }
563
+ equals(value, out) {
564
+ return new Case(this.v).equals(value, out);
565
+ }
566
+ is = {
567
+ defined: (prop, out) => new Case(this.v).case(isDefined(prop(this.v)), out),
568
+ empty: (prop, out) => new Case(this.v).case(isEmpty(prop(this.v)), out),
569
+ valid: (prop, out) => new Case(this.v).case(validate(prop(this.v)).isValid, out),
570
+ not: {
571
+ defined: (prop, out) => new Case(this.v).case(!isDefined(prop(this.v)), out),
572
+ empty: (prop, out) => new Case(this.v).case(!isEmpty(prop(this.v)), out),
573
+ valid: (prop, out) => new Case(this.v).case(!validate(prop(this.v)).isValid, out)
574
+ }
575
+ };
576
+ if = this.is;
577
+ };
578
+ var Case = class _Case {
579
+ constructor(value, outcome) {
580
+ this.value = value;
581
+ this.outcome = outcome;
582
+ }
583
+ case(pred, out) {
584
+ return tryTo(pred, this.value).is.true().map(() => ofGet(out, this.value)).map((res) => new Found(this.value, res)).or(this);
585
+ }
586
+ type(guard, out) {
587
+ return tryTo(guard, this.value).is.true().map(() => out(this.value)).map((res) => new Found(this.value, res)).or(this);
588
+ }
589
+ equals(value, out) {
590
+ return this.case(this.value === value, out);
591
+ }
592
+ is = {
593
+ defined: (prop, out) => new _Case(this.value).case(isDefined(prop(this.value)), out),
594
+ empty: (prop, out) => new _Case(this.value).case(isEmpty(prop(this.value)), out),
595
+ valid: (prop, out) => new _Case(this.value).case(validate(prop(this.value)).isValid, out),
596
+ not: {
597
+ defined: (prop, out) => new _Case(this.value).case(!isDefined(prop(this.value)), out),
598
+ empty: (prop, out) => new _Case(this.value).case(!isEmpty(prop(this.value)), out),
599
+ valid: (prop, out) => new _Case(this.value).case(!validate(prop(this.value)).isValid, out)
600
+ }
601
+ };
602
+ if = this.is;
603
+ else(alt) {
604
+ return ofGet(alt, this.value);
605
+ }
606
+ };
607
+ var Found = class extends Case {
608
+ constructor(value, outcome) {
609
+ super(value, outcome);
610
+ this.value = value;
611
+ this.outcome = outcome;
612
+ }
613
+ case(pred, out) {
614
+ return this;
615
+ }
616
+ type(guard, out) {
617
+ return this;
618
+ }
619
+ equals(value, out) {
620
+ return this;
621
+ }
622
+ is = {
623
+ defined: (_prop, _out) => this,
624
+ empty: (_prop, _out) => this,
625
+ valid: (_prop, _out) => this,
626
+ not: {
627
+ defined: (_prop, _out) => this,
628
+ empty: (_prop, _out) => this,
629
+ valid: (_prop, _out) => this
630
+ }
631
+ };
632
+ if = this.is;
633
+ else(alt) {
634
+ return this.outcome;
635
+ }
636
+ };
637
+ var choose = (value) => new CaseBuilder(value);
638
+
639
+ // src/types/Context.ts
640
+ var DotEnvContext = class {
641
+ domain = process.env.DOMAIN ?? "easy";
642
+ name = process.env.ENVIRONMENT_NAME ?? "";
643
+ host = process.env.HOST ?? "";
644
+ port = Number.parseInt(process.env.PORT ?? "8080");
645
+ app = process.env.APP ?? "";
646
+ get = (key, alt) => tryTo(
647
+ () => text(key).map((k) => k.replace(/([a-z])([A-Z])/g, "$1 $2")).snake.toString()
648
+ ).map((k) => process.env[k] ?? alt).value;
649
+ };
650
+ var BaseRequestContext = class {
651
+ state = {};
652
+ get token() {
653
+ return this.get("token");
654
+ }
655
+ set token(token) {
656
+ this.set("token", token);
657
+ }
658
+ get identity() {
659
+ return this.token;
660
+ }
661
+ get jwt() {
662
+ return this.get("jwt");
663
+ }
664
+ set jwt(jwt) {
665
+ this.set("jwt", jwt);
666
+ }
667
+ get correlationId() {
668
+ return this.get("correlationId");
669
+ }
670
+ set correlationId(id) {
671
+ this.set("correlationId", id);
672
+ }
673
+ get lastError() {
674
+ return this.get("lastError");
675
+ }
676
+ set lastError(error) {
677
+ this.set("lastError", error);
678
+ }
679
+ get(key) {
680
+ return this.state[key];
681
+ }
682
+ set(key, value) {
683
+ return this.state[key] = value;
684
+ }
685
+ create = (f) => f();
686
+ wrap = (f) => f();
687
+ };
688
+ var BaseContext = class extends BaseRequestContext {
689
+ };
690
+ var Context = class {
691
+ constructor(state = {}) {
692
+ this.state = state;
693
+ this.state = {
694
+ ...{
695
+ env: new DotEnvContext(),
696
+ request: new BaseRequestContext(),
697
+ other: {}
698
+ },
699
+ ...this.state
700
+ };
701
+ }
702
+ get env() {
703
+ return this.state.env;
704
+ }
705
+ set env(env) {
706
+ this.state.env = env;
707
+ }
708
+ get request() {
709
+ return this.state.request;
710
+ }
711
+ set request(request) {
712
+ this.state.request = request;
713
+ }
714
+ get other() {
715
+ return this.state.other;
716
+ }
717
+ };
718
+ var ctx = new Context();
719
+
720
+ // src/types/Enum.ts
721
+ var Enum = class {
722
+ constructor(name, id = name.toLowerCase(), code = id.toString()) {
723
+ this.name = name;
724
+ this.id = id;
725
+ this.code = code;
726
+ }
727
+ get isValid() {
728
+ return isDefined(this.id);
729
+ }
730
+ static all() {
731
+ return meta(this.allTuple()).values();
732
+ }
733
+ static allTuple() {
734
+ return meta(this).get(`all-${this.name}`) ?? meta(this).set(`all-${this.name}`, meta(this).values().filter(isEnum).toObject("id"));
735
+ }
736
+ static filter(p, params) {
737
+ return this.all().filter(p, params);
738
+ }
739
+ static first(p, params) {
740
+ return this.all().first(p, params);
741
+ }
742
+ static byIds(ids = []) {
743
+ return toList(ids).mapDefined((id) => this.byId(id)).distinct();
744
+ }
745
+ static byId(id, alt) {
746
+ return this.allTuple()[id] ?? ofGet(alt);
747
+ }
748
+ equals(other) {
749
+ return this.id === (isEnum(other) ? other.id : other);
750
+ }
751
+ isIn(...items) {
752
+ return items.some((i) => this.equals(i));
753
+ }
754
+ toJSON() {
755
+ return this.id;
756
+ }
757
+ toString() {
758
+ return this.id.toString();
759
+ }
760
+ };
761
+ var isEnum = (e) => isDefined(e) && e instanceof Enum && isAn(e, "name", "id", "code");
762
+
763
+ // src/types/Exception.ts
764
+ var Exception = class _Exception extends Enum {
765
+ constructor(message, id, reason) {
766
+ super(message, id ?? text(message).pascal.toString());
767
+ this.message = message;
768
+ this.reason = reason;
769
+ }
770
+ static AlreadyExists = new _Exception("Subject already exists");
771
+ static DoesNotExist = new _Exception("Does not exist");
772
+ static IsMissingId = new _Exception("Subject is missing an id");
773
+ static IsNotImplemented = new _Exception("Is not implemented");
774
+ static IsNotValid = new _Exception("Is not valid");
775
+ static Unknown = new _Exception("Unknown error");
776
+ static CouldNotExecute = (target) => new _Exception(`Could not execute ${target}.`, "CouldNotExecute");
777
+ static CouldNotValidate = (target) => new _Exception(`Could not validate ${target}.`, "CouldNotValidate");
778
+ static EnvironmentVariableNotFound = (variable) => new _Exception(`Environment variable ${text(variable).upper} could not be found.`, "EnvironmentVariableNotFound");
779
+ because = (reason) => new _Exception(this.message, this.id, reason);
780
+ };
781
+ var isException = (e, t) => e instanceof Exception && (isDefined(t) ? e.equals(asString(t)) : true);
782
+ var isDoesNotExist = (e) => e instanceof Exception && Exception.DoesNotExist.equals(e);
783
+
784
+ // src/types/Result.ts
785
+ var toResult = (message, location, domain = ctx.env.domain) => ({
786
+ message: message.toString(),
787
+ location: location?.toString(),
788
+ domain: domain?.toString()
789
+ });
790
+ var isResult = (r) => isA(r, "message");
791
+
792
+ // src/types/Results.ts
793
+ var parse = (...rs) => toArray(...rs).map((r) => isResult(r) ? r : toResult(r));
794
+ var Results3 = class {
795
+ results;
796
+ constructor(...rs) {
797
+ this.results = parse(...rs);
798
+ }
799
+ get length() {
800
+ return this.results.length;
801
+ }
802
+ get isValid() {
803
+ return this.results.length === 0;
804
+ }
805
+ add = (...rs) => toResults(...this.results, ...parse(...rs));
806
+ };
807
+ var toResults = (...r) => new Results3(...r);
808
+ var isResults = (r) => isDefined(r) && r instanceof Results3;
809
+
810
+ // src/types/Value.ts
811
+ var Value = class {
812
+ constructor(value) {
813
+ this.value = value;
814
+ this.value = value;
815
+ }
816
+ get isValid() {
817
+ return isDefined(this.value);
818
+ }
819
+ toJSON() {
820
+ return this.value;
821
+ }
822
+ toString() {
823
+ return asString(this.value);
824
+ }
825
+ };
826
+ var isValue = (v) => v instanceof Value;
827
+
828
+ // src/utils/Promise.ts
829
+ var resolve = (subject) => Promise.resolve(subject);
830
+ var reject = (e) => Promise.reject(e);
831
+ var tuple = {
832
+ 2: (first, second) => Promise.all([first, second]),
833
+ 3: (first, second, third) => Promise.all([first, second, third]),
834
+ 4: (first, second, third, forth) => Promise.all([first, second, third, forth]),
835
+ 5: (first, second, third, forth, fifth) => Promise.all([first, second, third, forth, fifth]),
836
+ all: (first, second) => Promise.all([first, Promise.all(second)]),
837
+ spread: (first, ...second) => Promise.all([first, Promise.all(toArray(second))]),
838
+ list: (list) => Promise.all([...list]).then(toList)
839
+ };
840
+ var tuple2 = tuple[2];
841
+ var tuple3 = tuple[3];
842
+ var tuple4 = tuple[4];
843
+ var tuple5 = tuple[5];
844
+
845
+ export {
846
+ resolve,
847
+ reject,
848
+ tuple,
849
+ tuple2,
850
+ tuple3,
851
+ tuple4,
852
+ tuple5,
853
+ isJson,
854
+ json,
855
+ toJson,
856
+ asJson,
857
+ any,
858
+ When,
859
+ when,
860
+ asResults,
861
+ validate,
862
+ validateReject,
863
+ isValid,
864
+ Try,
865
+ tryTo,
866
+ List2 as List,
867
+ toList,
868
+ isList,
869
+ asList,
870
+ maxValue,
871
+ minValue,
872
+ meta,
873
+ entries,
874
+ Template,
875
+ template,
876
+ isText,
877
+ asString,
878
+ replaceAll,
879
+ toWords,
880
+ kebab,
881
+ ToText2 as ToText,
882
+ text,
883
+ choose,
884
+ DotEnvContext,
885
+ BaseRequestContext,
886
+ BaseContext,
887
+ Context,
888
+ ctx,
889
+ Enum,
890
+ isEnum,
891
+ Exception,
892
+ isException,
893
+ isDoesNotExist,
894
+ toResult,
895
+ isResult,
896
+ Results3 as Results,
897
+ toResults,
898
+ isResults,
899
+ Value,
900
+ isValue
901
+ };
902
+ //# sourceMappingURL=chunk-GZ4W5NPB.mjs.map