@thisisagile/easy 15.29.2 → 15.29.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (619) hide show
  1. package/dist/{chunk-3MOFYE2N.mjs → chunk-2ZUDYGPP.mjs} +5 -5
  2. package/dist/chunk-2ZUDYGPP.mjs.map +1 -0
  3. package/dist/{chunk-A5MC57TL.mjs → chunk-3L4RAR24.mjs} +9 -7
  4. package/dist/chunk-3L4RAR24.mjs.map +1 -0
  5. package/dist/chunk-45GNHDKA.mjs +27 -0
  6. package/dist/chunk-45GNHDKA.mjs.map +1 -0
  7. package/dist/{chunk-BAXNN36F.mjs → chunk-4DJNTF2D.mjs} +5 -3
  8. package/dist/chunk-4DJNTF2D.mjs.map +1 -0
  9. package/dist/chunk-4G6AW6D6.mjs +35 -0
  10. package/dist/chunk-4G6AW6D6.mjs.map +1 -0
  11. package/dist/{chunk-I5MPU33B.mjs → chunk-5WSP2IYF.mjs} +4 -4
  12. package/dist/chunk-5WSP2IYF.mjs.map +1 -0
  13. package/dist/{chunk-GCPVSACZ.mjs → chunk-5YM5CLOG.mjs} +2 -2
  14. package/dist/{chunk-GUSPHVF2.mjs → chunk-6BQEFLOS.mjs} +5 -3
  15. package/dist/chunk-6BQEFLOS.mjs.map +1 -0
  16. package/dist/{chunk-MRIELSWP.mjs → chunk-6VLC4Z4H.mjs} +2 -2
  17. package/dist/chunk-6VLC4Z4H.mjs.map +1 -0
  18. package/dist/chunk-6YVMQB26.mjs +94 -0
  19. package/dist/chunk-6YVMQB26.mjs.map +1 -0
  20. package/dist/{chunk-YHL2CUBI.mjs → chunk-73UD7JJL.mjs} +2 -2
  21. package/dist/chunk-73UD7JJL.mjs.map +1 -0
  22. package/dist/{chunk-2L3GZ6NK.mjs → chunk-7K4QMDUN.mjs} +2 -2
  23. package/dist/chunk-7K4QMDUN.mjs.map +1 -0
  24. package/dist/{chunk-S5RHU67S.mjs → chunk-7TJ4VCBE.mjs} +15 -9
  25. package/dist/chunk-7TJ4VCBE.mjs.map +1 -0
  26. package/dist/{chunk-NKHZO3ME.mjs → chunk-A2JYVEBB.mjs} +4 -4
  27. package/dist/chunk-A2JYVEBB.mjs.map +1 -0
  28. package/dist/{chunk-57QV3J5N.mjs → chunk-A62OK7XE.mjs} +10 -6
  29. package/dist/{chunk-57QV3J5N.mjs.map → chunk-A62OK7XE.mjs.map} +1 -1
  30. package/dist/{chunk-TQUDYF6E.mjs → chunk-APYISY5K.mjs} +2 -2
  31. package/dist/chunk-APYISY5K.mjs.map +1 -0
  32. package/dist/{chunk-XLFC44Y3.mjs → chunk-ARTSACXM.mjs} +17 -22
  33. package/dist/chunk-ARTSACXM.mjs.map +1 -0
  34. package/dist/chunk-ARZEQQW5.mjs +315 -0
  35. package/dist/chunk-ARZEQQW5.mjs.map +1 -0
  36. package/dist/chunk-CAHTK3AT.mjs +30 -0
  37. package/dist/chunk-CAHTK3AT.mjs.map +1 -0
  38. package/dist/{chunk-ARN4MTMY.mjs → chunk-D4K4MC24.mjs} +3 -3
  39. package/dist/chunk-D4K4MC24.mjs.map +1 -0
  40. package/dist/{chunk-624IHTEI.mjs → chunk-D5FLGKVR.mjs} +18 -12
  41. package/dist/chunk-D5FLGKVR.mjs.map +1 -0
  42. package/dist/{chunk-UWNXWKBU.mjs → chunk-DEJ7A5PY.mjs} +1 -35
  43. package/dist/chunk-DEJ7A5PY.mjs.map +1 -0
  44. package/dist/chunk-DXQSIBC7.mjs +13 -0
  45. package/dist/chunk-DXQSIBC7.mjs.map +1 -0
  46. package/dist/{chunk-SG6BDC6T.mjs → chunk-EDVJUOFU.mjs} +18 -12
  47. package/dist/chunk-EDVJUOFU.mjs.map +1 -0
  48. package/dist/{chunk-IWLJEAQZ.mjs → chunk-EIJ3GSGG.mjs} +5 -3
  49. package/dist/chunk-EIJ3GSGG.mjs.map +1 -0
  50. package/dist/chunk-FHW5K2RR.mjs +150 -0
  51. package/dist/chunk-FHW5K2RR.mjs.map +1 -0
  52. package/dist/{chunk-WYT52YAX.mjs → chunk-GSZLYZSW.mjs} +23 -11
  53. package/dist/chunk-GSZLYZSW.mjs.map +1 -0
  54. package/dist/{chunk-I3DRDMCS.mjs → chunk-HBJMCX2I.mjs} +3 -3
  55. package/dist/chunk-HBJMCX2I.mjs.map +1 -0
  56. package/dist/{chunk-2KKIXOMB.mjs → chunk-HNVAFEZP.mjs} +3 -3
  57. package/dist/{chunk-QRN4Y2QC.mjs → chunk-HV4CI2QX.mjs} +18 -12
  58. package/dist/chunk-HV4CI2QX.mjs.map +1 -0
  59. package/dist/chunk-IAXKOENJ.mjs +55 -0
  60. package/dist/chunk-IAXKOENJ.mjs.map +1 -0
  61. package/dist/chunk-J6KN572O.mjs +20 -0
  62. package/dist/chunk-J6KN572O.mjs.map +1 -0
  63. package/dist/chunk-J7XKOXMW.mjs +203 -0
  64. package/dist/chunk-J7XKOXMW.mjs.map +1 -0
  65. package/dist/{chunk-RFG5LNDQ.mjs → chunk-JBJ2YERG.mjs} +6 -4
  66. package/dist/{chunk-RFG5LNDQ.mjs.map → chunk-JBJ2YERG.mjs.map} +1 -1
  67. package/dist/{chunk-J64VE55O.mjs → chunk-JFJLDIJB.mjs} +10 -10
  68. package/dist/chunk-JFJLDIJB.mjs.map +1 -0
  69. package/dist/{chunk-F4CWMZCV.mjs → chunk-JFU65NZU.mjs} +11 -9
  70. package/dist/chunk-JFU65NZU.mjs.map +1 -0
  71. package/dist/{chunk-PWCGCUT7.mjs → chunk-JSON7A4X.mjs} +6 -4
  72. package/dist/chunk-JSON7A4X.mjs.map +1 -0
  73. package/dist/chunk-JTGB3TSZ.mjs +24 -0
  74. package/dist/chunk-JTGB3TSZ.mjs.map +1 -0
  75. package/dist/{chunk-NOMZAVQC.mjs → chunk-KRLEHX37.mjs} +12 -6
  76. package/dist/chunk-KRLEHX37.mjs.map +1 -0
  77. package/dist/{chunk-H7NDGISC.mjs → chunk-LAR7AT6R.mjs} +2 -2
  78. package/dist/chunk-LAR7AT6R.mjs.map +1 -0
  79. package/dist/{chunk-OXVJLJIE.mjs → chunk-LXQQ5N6S.mjs} +2 -2
  80. package/dist/chunk-LYAPQ4QZ.mjs +40 -0
  81. package/dist/chunk-LYAPQ4QZ.mjs.map +1 -0
  82. package/dist/{chunk-QRLGQY7M.mjs → chunk-M47EOYDK.mjs} +6 -4
  83. package/dist/chunk-M47EOYDK.mjs.map +1 -0
  84. package/dist/{chunk-CJDDGEEK.mjs → chunk-NFWIUPZU.mjs} +8 -6
  85. package/dist/chunk-NFWIUPZU.mjs.map +1 -0
  86. package/dist/{chunk-7Z3YQCXR.mjs → chunk-NYYHRFBW.mjs} +6 -4
  87. package/dist/chunk-NYYHRFBW.mjs.map +1 -0
  88. package/dist/{chunk-4ROYPQPC.mjs → chunk-OFGI5FLG.mjs} +2 -2
  89. package/dist/chunk-PPWHEIZW.mjs +58 -0
  90. package/dist/chunk-PPWHEIZW.mjs.map +1 -0
  91. package/dist/chunk-Q5HABVOK.mjs +20 -0
  92. package/dist/chunk-Q5HABVOK.mjs.map +1 -0
  93. package/dist/{chunk-TG5IPJOG.mjs → chunk-QQRGOHU6.mjs} +2 -2
  94. package/dist/chunk-QQRGOHU6.mjs.map +1 -0
  95. package/dist/{chunk-5J3LAY32.mjs → chunk-QTPKH4PY.mjs} +5 -5
  96. package/dist/chunk-QTPKH4PY.mjs.map +1 -0
  97. package/dist/{chunk-65W3AYRE.mjs → chunk-RNROH3VJ.mjs} +6 -4
  98. package/dist/chunk-RNROH3VJ.mjs.map +1 -0
  99. package/dist/{chunk-GARRF3U7.mjs → chunk-TMZRZLA2.mjs} +3 -3
  100. package/dist/chunk-TMZRZLA2.mjs.map +1 -0
  101. package/dist/{chunk-L7JZMM3J.mjs → chunk-U53FLD4J.mjs} +4 -4
  102. package/dist/chunk-U53FLD4J.mjs.map +1 -0
  103. package/dist/{chunk-EB26LF5Z.mjs → chunk-UJEQAXZI.mjs} +4 -4
  104. package/dist/chunk-UJEQAXZI.mjs.map +1 -0
  105. package/dist/{chunk-ELFAMVTF.mjs → chunk-UKHDSTTZ.mjs} +5 -5
  106. package/dist/chunk-UKHDSTTZ.mjs.map +1 -0
  107. package/dist/chunk-UNHWYQ54.mjs +64 -0
  108. package/dist/chunk-UNHWYQ54.mjs.map +1 -0
  109. package/dist/chunk-USGZFNWP.mjs +34 -0
  110. package/dist/chunk-USGZFNWP.mjs.map +1 -0
  111. package/dist/{chunk-Y5WPU3ZU.mjs → chunk-UW6S2PNO.mjs} +12 -6
  112. package/dist/chunk-UW6S2PNO.mjs.map +1 -0
  113. package/dist/chunk-UYDZZAEK.mjs +11 -0
  114. package/dist/chunk-UYDZZAEK.mjs.map +1 -0
  115. package/dist/{chunk-GJFFYHHX.mjs → chunk-VV534JNS.mjs} +5 -3
  116. package/dist/chunk-VV534JNS.mjs.map +1 -0
  117. package/dist/{chunk-V7FP66LM.mjs → chunk-WJZFE5NE.mjs} +2 -2
  118. package/dist/chunk-WJZFE5NE.mjs.map +1 -0
  119. package/dist/{chunk-ZELLSP3E.mjs → chunk-X7FZPY3P.mjs} +6 -4
  120. package/dist/{chunk-ZELLSP3E.mjs.map → chunk-X7FZPY3P.mjs.map} +1 -1
  121. package/dist/{chunk-Q6RSBDMM.mjs → chunk-XBYDAQGZ.mjs} +2 -2
  122. package/dist/chunk-XBYDAQGZ.mjs.map +1 -0
  123. package/dist/{chunk-ZJKVMRGU.mjs → chunk-YSBACFUR.mjs} +5 -5
  124. package/dist/chunk-YSBACFUR.mjs.map +1 -0
  125. package/dist/chunk-ZHXKBOK2.mjs +22 -0
  126. package/dist/chunk-ZHXKBOK2.mjs.map +1 -0
  127. package/dist/chunk-ZPNFXK7Y.mjs +36 -0
  128. package/dist/chunk-ZPNFXK7Y.mjs.map +1 -0
  129. package/dist/data/Condition.d.ts +3 -2
  130. package/dist/data/Condition.mjs +12 -8
  131. package/dist/data/Database.d.ts +2 -1
  132. package/dist/data/Database.mjs +12 -7
  133. package/dist/data/Field.d.ts +1 -1
  134. package/dist/data/Field.mjs +15 -11
  135. package/dist/data/Field.mjs.map +1 -1
  136. package/dist/data/InMemoryGateway.d.ts +5 -1
  137. package/dist/data/InMemoryGateway.mjs +25 -10
  138. package/dist/data/InMemoryGateway.mjs.map +1 -1
  139. package/dist/data/Query.d.ts +1 -1
  140. package/dist/data/QueryProvider.d.ts +2 -1
  141. package/dist/domain/Audit.d.ts +3 -2
  142. package/dist/domain/Audit.mjs +25 -10
  143. package/dist/domain/Child.d.ts +2 -1
  144. package/dist/domain/Child.mjs +25 -10
  145. package/dist/domain/Child.mjs.map +1 -1
  146. package/dist/domain/{values/DateTime.d.ts → DateTime.d.ts} +3 -1
  147. package/dist/domain/DateTime.mjs +35 -0
  148. package/dist/domain/Entity.d.ts +2 -1
  149. package/dist/domain/Entity.mjs +27 -12
  150. package/dist/domain/Entity.mjs.map +1 -1
  151. package/dist/domain/Repo.d.ts +7 -1
  152. package/dist/domain/Repo.mjs +31 -12
  153. package/dist/domain/Repo.mjs.map +1 -1
  154. package/dist/domain/Struct.d.ts +2 -1
  155. package/dist/domain/Struct.mjs +22 -7
  156. package/dist/domain/Typo.d.ts +7 -2
  157. package/dist/domain/Typo.mjs +23 -8
  158. package/dist/domain/Typo.mjs.map +1 -1
  159. package/dist/health/HealthResource.d.ts +2 -2
  160. package/dist/health/HealthResource.mjs +30 -16
  161. package/dist/health/HealthResource.mjs.map +1 -1
  162. package/dist/health/HealthUri.d.ts +2 -2
  163. package/dist/health/HealthUri.mjs +22 -8
  164. package/dist/http/CacheControl.d.ts +1 -1
  165. package/dist/http/CacheControl.mjs +23 -9
  166. package/dist/http/ContentType.d.ts +2 -1
  167. package/dist/http/ContentType.mjs +12 -7
  168. package/dist/http/HttpStatus.d.ts +3 -1
  169. package/dist/http/HttpStatus.mjs +12 -7
  170. package/dist/http/HttpVerb.d.ts +1 -1
  171. package/dist/http/HttpVerb.mjs +12 -7
  172. package/dist/http/LocalRequestStore.d.ts +2 -1
  173. package/dist/http/LocalRequestStore.mjs +12 -6
  174. package/dist/http/LocalRequestStore.mjs.map +1 -1
  175. package/dist/http/OriginatedError.d.ts +1 -1
  176. package/dist/http/OriginatedError.mjs +1 -2
  177. package/dist/http/OriginatedError.mjs.map +1 -1
  178. package/dist/http/Request.d.ts +1 -1
  179. package/dist/http/RequestOptions.d.ts +6 -1
  180. package/dist/http/RequestOptions.mjs +16 -9
  181. package/dist/http/Response.d.ts +2 -5
  182. package/dist/http/Response.mjs +7 -13
  183. package/dist/http/RestResult.d.ts +3 -1
  184. package/dist/http/RestResult.mjs +23 -8
  185. package/dist/http/Verb.d.ts +4 -1
  186. package/dist/http/Verb.mjs +27 -13
  187. package/dist/http/toResponse.d.ts +6 -0
  188. package/dist/http/toResponse.mjs +33 -0
  189. package/dist/index.d.ts +118 -12
  190. package/dist/index.js +1645 -2904
  191. package/dist/index.js.map +1 -1
  192. package/dist/index.mjs +118 -12
  193. package/dist/index.mjs.map +1 -1
  194. package/dist/process/App.mjs +13 -7
  195. package/dist/process/App.mjs.map +1 -1
  196. package/dist/process/Manage.d.ts +3 -1
  197. package/dist/process/Manage.mjs +22 -8
  198. package/dist/process/Manage.mjs.map +1 -1
  199. package/dist/process/Scope.d.ts +4 -1
  200. package/dist/process/Scope.mjs +13 -7
  201. package/dist/process/Search.d.ts +7 -2
  202. package/dist/process/Search.mjs +22 -8
  203. package/dist/process/UseCase.d.ts +4 -1
  204. package/dist/process/UseCase.mjs +19 -10
  205. package/dist/process/UseCase.mjs.map +1 -1
  206. package/dist/resources/AppProvider.d.ts +1 -1
  207. package/dist/resources/Req.d.ts +6 -1
  208. package/dist/resources/Req.mjs +21 -7
  209. package/dist/resources/Req.mjs.map +1 -1
  210. package/dist/resources/Requires.d.ts +2 -1
  211. package/dist/resources/Requires.mjs +10 -6
  212. package/dist/resources/Requires.mjs.map +1 -1
  213. package/dist/resources/Route.d.ts +5 -3
  214. package/dist/resources/Route.mjs +21 -7
  215. package/dist/resources/Service.d.ts +3 -1
  216. package/dist/resources/Service.mjs +24 -8
  217. package/dist/resources/Service.mjs.map +1 -1
  218. package/dist/security/Jwt.d.ts +5 -1
  219. package/dist/security/Jwt.mjs +24 -8
  220. package/dist/security/Jwt.mjs.map +1 -1
  221. package/dist/services/Api.d.ts +8 -2
  222. package/dist/services/Api.mjs +32 -16
  223. package/dist/services/ApiGateway.d.ts +6 -2
  224. package/dist/services/ApiGateway.mjs +35 -19
  225. package/dist/services/AxiosProvider.d.ts +3 -1
  226. package/dist/services/AxiosProvider.mjs +30 -14
  227. package/dist/services/MappedRouteGateway.d.ts +7 -3
  228. package/dist/services/MappedRouteGateway.mjs +41 -24
  229. package/dist/services/MappedRouteGateway.mjs.map +1 -1
  230. package/dist/services/RouteGateway.d.ts +7 -1
  231. package/dist/services/RouteGateway.mjs +36 -20
  232. package/dist/services/ViewRouteGateway.d.ts +10 -6
  233. package/dist/services/ViewRouteGateway.mjs +39 -22
  234. package/dist/services/ViewRouteGateway.mjs.map +1 -1
  235. package/dist/sql/Clause.d.ts +3 -2
  236. package/dist/sql/Clause.mjs +7 -8
  237. package/dist/sql/Column.d.ts +3 -2
  238. package/dist/sql/Column.mjs +24 -10
  239. package/dist/sql/Count.mjs +11 -9
  240. package/dist/sql/Delete.mjs +10 -8
  241. package/dist/sql/Insert.d.ts +1 -1
  242. package/dist/sql/Insert.mjs +12 -10
  243. package/dist/sql/Select.d.ts +1 -1
  244. package/dist/sql/Select.mjs +10 -8
  245. package/dist/sql/SqlQuery.d.ts +5 -2
  246. package/dist/sql/SqlQuery.mjs +9 -7
  247. package/dist/sql/Table.d.ts +13 -12
  248. package/dist/sql/Table.mjs +37 -22
  249. package/dist/sql/Table.mjs.map +1 -1
  250. package/dist/sql/TableGateway.d.ts +6 -2
  251. package/dist/sql/TableGateway.mjs +23 -9
  252. package/dist/sql/TableGateway.mjs.map +1 -1
  253. package/dist/sql/Update.d.ts +1 -1
  254. package/dist/sql/Update.mjs +12 -10
  255. package/dist/types/Array.mjs +4 -2
  256. package/dist/types/Builder.mjs +2 -6
  257. package/dist/types/Builder.mjs.map +1 -1
  258. package/dist/types/Cache.mjs +10 -6
  259. package/dist/types/Cache.mjs.map +1 -1
  260. package/dist/types/CacheAge.mjs +22 -8
  261. package/dist/types/Case.d.ts +3 -1
  262. package/dist/types/Case.mjs +20 -6
  263. package/dist/types/Constructor.d.ts +1 -0
  264. package/dist/types/Constructor.mjs +5 -1
  265. package/dist/types/Context.mjs +12 -6
  266. package/dist/types/Enum.mjs +11 -6
  267. package/dist/{domain/enums → types}/Environment.d.ts +1 -1
  268. package/dist/types/Environment.mjs +28 -0
  269. package/dist/types/Environment.mjs.map +1 -0
  270. package/dist/types/ErrorOrigin.d.ts +1 -1
  271. package/dist/types/Exception.mjs +13 -6
  272. package/dist/types/Gateway.mjs +15 -7
  273. package/dist/types/Id.mjs +3 -4
  274. package/dist/types/Is.d.ts +0 -4
  275. package/dist/types/Is.mjs +1 -6
  276. package/dist/types/IsA.d.ts +2 -0
  277. package/dist/types/IsA.mjs +8 -4
  278. package/dist/types/IsEqual.mjs +21 -7
  279. package/dist/types/Json.mjs +10 -6
  280. package/dist/types/List.d.ts +3 -3
  281. package/dist/types/List.mjs +8 -6
  282. package/dist/types/Meta.d.ts +1 -2
  283. package/dist/types/Meta.mjs +10 -8
  284. package/dist/types/Number.mjs +21 -7
  285. package/dist/types/Object.d.ts +8 -0
  286. package/dist/types/Object.mjs +20 -0
  287. package/dist/types/PageList.mjs +21 -7
  288. package/dist/types/Parser.mjs +25 -10
  289. package/dist/types/Parser.mjs.map +1 -1
  290. package/dist/types/Primitive.mjs +2 -2
  291. package/dist/types/Repository.d.ts +5 -1
  292. package/dist/types/Repository.mjs +15 -7
  293. package/dist/types/Result.mjs +13 -6
  294. package/dist/types/Results.mjs +14 -6
  295. package/dist/types/Tag.mjs +10 -6
  296. package/dist/types/Tag.mjs.map +1 -1
  297. package/dist/types/Template.d.ts +41 -2
  298. package/dist/types/Template.mjs +19 -8
  299. package/dist/types/Text.d.ts +0 -38
  300. package/dist/types/Text.mjs +2 -10
  301. package/dist/types/Try.mjs +20 -6
  302. package/dist/types/Uri.mjs +21 -7
  303. package/dist/types/Uuid.mjs +2 -3
  304. package/dist/types/Validatable.mjs +5 -3
  305. package/dist/types/Value.d.ts +2 -1
  306. package/dist/types/Value.mjs +3 -6
  307. package/dist/utils/Base64.d.ts +1 -1
  308. package/dist/utils/Base64.mjs.map +1 -1
  309. package/dist/utils/Convert.mjs +3 -7
  310. package/dist/utils/If.d.ts +2 -1
  311. package/dist/utils/If.mjs +4 -2
  312. package/dist/utils/Loading.mjs +1 -2
  313. package/dist/utils/Loading.mjs.map +1 -1
  314. package/dist/utils/Log.d.ts +1 -1
  315. package/dist/utils/Log.mjs.map +1 -1
  316. package/dist/utils/Mapper.d.ts +6 -1
  317. package/dist/utils/Mapper.mjs +15 -10
  318. package/dist/utils/Promise.d.ts +2 -1
  319. package/dist/utils/Promise.mjs +9 -6
  320. package/dist/utils/Property.d.ts +2 -1
  321. package/dist/utils/Property.mjs +4 -8
  322. package/dist/utils/Sentence.d.ts +2 -1
  323. package/dist/utils/Sentence.mjs +11 -6
  324. package/dist/utils/Sentence.mjs.map +1 -1
  325. package/dist/utils/State.d.ts +1 -1
  326. package/dist/utils/State.mjs +4 -2
  327. package/dist/utils/View.d.ts +6 -1
  328. package/dist/utils/View.mjs +24 -9
  329. package/dist/validation/Contraints.d.ts +3 -1
  330. package/dist/validation/Contraints.mjs +21 -7
  331. package/dist/validation/Validate.d.ts +3 -1
  332. package/dist/validation/Validate.mjs +20 -6
  333. package/dist/validation/When.d.ts +4 -1
  334. package/dist/validation/When.mjs +20 -6
  335. package/package.json +57 -2
  336. package/src/data/Condition.ts +17 -5
  337. package/src/data/Database.ts +7 -2
  338. package/src/data/Field.ts +3 -2
  339. package/src/data/InMemoryGateway.ts +8 -2
  340. package/src/data/Query.ts +1 -1
  341. package/src/data/QueryProvider.ts +2 -1
  342. package/src/domain/Audit.ts +11 -7
  343. package/src/domain/Child.ts +3 -2
  344. package/src/domain/{values/DateTime.ts → DateTime.ts} +8 -2
  345. package/src/domain/Entity.ts +3 -2
  346. package/src/domain/Repo.ts +15 -4
  347. package/src/domain/Struct.ts +4 -2
  348. package/src/domain/Typo.ts +13 -4
  349. package/src/health/HealthResource.ts +5 -3
  350. package/src/health/HealthUri.ts +1 -1
  351. package/src/http/CacheControl.ts +9 -3
  352. package/src/http/ContentType.ts +8 -2
  353. package/src/http/HttpStatus.ts +4 -1
  354. package/src/http/HttpVerb.ts +1 -1
  355. package/src/http/LocalRequestStore.ts +3 -1
  356. package/src/http/OriginatedError.ts +6 -2
  357. package/src/http/Request.ts +1 -1
  358. package/src/http/RequestOptions.ts +16 -2
  359. package/src/http/Response.ts +4 -9
  360. package/src/http/RestResult.ts +7 -1
  361. package/src/http/Verb.ts +5 -2
  362. package/src/http/toResponse.ts +12 -0
  363. package/src/index.ts +129 -12
  364. package/src/process/Manage.ts +3 -1
  365. package/src/process/Scope.ts +12 -2
  366. package/src/process/Search.ts +9 -3
  367. package/src/process/UseCase.ts +12 -2
  368. package/src/resources/AppProvider.ts +1 -1
  369. package/src/resources/Req.ts +14 -3
  370. package/src/resources/Requires.ts +3 -2
  371. package/src/resources/Route.ts +8 -3
  372. package/src/resources/Service.ts +9 -2
  373. package/src/security/Jwt.ts +7 -1
  374. package/src/services/Api.ts +12 -3
  375. package/src/services/ApiGateway.ts +7 -2
  376. package/src/services/AxiosProvider.ts +14 -2
  377. package/src/services/MappedRouteGateway.ts +13 -4
  378. package/src/services/RouteGateway.ts +14 -3
  379. package/src/services/ViewRouteGateway.ts +7 -3
  380. package/src/sql/Clause.ts +10 -3
  381. package/src/sql/Column.ts +14 -4
  382. package/src/sql/Count.ts +1 -1
  383. package/src/sql/Delete.ts +1 -1
  384. package/src/sql/Insert.ts +5 -2
  385. package/src/sql/Select.ts +6 -2
  386. package/src/sql/SqlQuery.ts +9 -3
  387. package/src/sql/Table.ts +6 -3
  388. package/src/sql/TableGateway.ts +13 -5
  389. package/src/sql/Update.ts +6 -2
  390. package/src/types/CacheAge.ts +3 -1
  391. package/src/types/Case.ts +14 -4
  392. package/src/types/Constructor.ts +3 -1
  393. package/src/types/Context.ts +7 -8
  394. package/src/{domain/enums → types}/Environment.ts +1 -1
  395. package/src/types/ErrorOrigin.ts +1 -1
  396. package/src/types/Exception.ts +7 -2
  397. package/src/types/Gateway.ts +1 -1
  398. package/src/types/Is.ts +0 -7
  399. package/src/types/IsA.ts +4 -0
  400. package/src/types/Json.ts +2 -2
  401. package/src/types/List.ts +13 -12
  402. package/src/types/Meta.ts +12 -9
  403. package/src/types/Object.ts +16 -0
  404. package/src/types/Parser.ts +1 -1
  405. package/src/types/Repository.ts +7 -2
  406. package/src/types/Template.ts +149 -12
  407. package/src/types/Text.ts +3 -138
  408. package/src/types/Try.ts +1 -1
  409. package/src/types/Uri.ts +2 -1
  410. package/src/types/Value.ts +4 -1
  411. package/src/utils/Base64.ts +1 -1
  412. package/src/utils/Convert.ts +5 -2
  413. package/src/utils/If.ts +3 -1
  414. package/src/utils/Loading.ts +1 -1
  415. package/src/utils/Log.ts +1 -1
  416. package/src/utils/Mapper.ts +13 -2
  417. package/src/utils/Promise.ts +3 -1
  418. package/src/utils/Property.ts +6 -2
  419. package/src/utils/Sentence.ts +8 -2
  420. package/src/utils/State.ts +1 -1
  421. package/src/utils/View.ts +15 -22
  422. package/src/validation/Contraints.ts +9 -1
  423. package/src/validation/Validate.ts +26 -29
  424. package/src/validation/When.ts +13 -3
  425. package/dist/chunk-2L3GZ6NK.mjs.map +0 -1
  426. package/dist/chunk-3MOFYE2N.mjs.map +0 -1
  427. package/dist/chunk-5J3LAY32.mjs.map +0 -1
  428. package/dist/chunk-624IHTEI.mjs.map +0 -1
  429. package/dist/chunk-65W3AYRE.mjs.map +0 -1
  430. package/dist/chunk-7Z3YQCXR.mjs.map +0 -1
  431. package/dist/chunk-A5MC57TL.mjs.map +0 -1
  432. package/dist/chunk-ARN4MTMY.mjs.map +0 -1
  433. package/dist/chunk-BAXNN36F.mjs.map +0 -1
  434. package/dist/chunk-C7OPGGIF.mjs +0 -21
  435. package/dist/chunk-C7OPGGIF.mjs.map +0 -1
  436. package/dist/chunk-CJDDGEEK.mjs.map +0 -1
  437. package/dist/chunk-EB26LF5Z.mjs.map +0 -1
  438. package/dist/chunk-ELFAMVTF.mjs.map +0 -1
  439. package/dist/chunk-F4CWMZCV.mjs.map +0 -1
  440. package/dist/chunk-GARRF3U7.mjs.map +0 -1
  441. package/dist/chunk-GJFFYHHX.mjs.map +0 -1
  442. package/dist/chunk-GUSPHVF2.mjs.map +0 -1
  443. package/dist/chunk-H7NDGISC.mjs.map +0 -1
  444. package/dist/chunk-HBJUEFGA.mjs +0 -26
  445. package/dist/chunk-HBJUEFGA.mjs.map +0 -1
  446. package/dist/chunk-I2NKUYUM.mjs +0 -272
  447. package/dist/chunk-I2NKUYUM.mjs.map +0 -1
  448. package/dist/chunk-I3DRDMCS.mjs.map +0 -1
  449. package/dist/chunk-I5MPU33B.mjs.map +0 -1
  450. package/dist/chunk-IWLJEAQZ.mjs.map +0 -1
  451. package/dist/chunk-J64VE55O.mjs.map +0 -1
  452. package/dist/chunk-L7JZMM3J.mjs.map +0 -1
  453. package/dist/chunk-MRIELSWP.mjs.map +0 -1
  454. package/dist/chunk-NKHZO3ME.mjs.map +0 -1
  455. package/dist/chunk-NOMZAVQC.mjs.map +0 -1
  456. package/dist/chunk-PFAEQQXA.mjs +0 -900
  457. package/dist/chunk-PFAEQQXA.mjs.map +0 -1
  458. package/dist/chunk-PWCGCUT7.mjs.map +0 -1
  459. package/dist/chunk-Q5ATL34D.mjs +0 -13
  460. package/dist/chunk-Q5ATL34D.mjs.map +0 -1
  461. package/dist/chunk-Q6RSBDMM.mjs.map +0 -1
  462. package/dist/chunk-QRLGQY7M.mjs.map +0 -1
  463. package/dist/chunk-QRN4Y2QC.mjs.map +0 -1
  464. package/dist/chunk-S5RHU67S.mjs.map +0 -1
  465. package/dist/chunk-SG6BDC6T.mjs.map +0 -1
  466. package/dist/chunk-TG5IPJOG.mjs.map +0 -1
  467. package/dist/chunk-TQUDYF6E.mjs.map +0 -1
  468. package/dist/chunk-UWNXWKBU.mjs.map +0 -1
  469. package/dist/chunk-V7FP66LM.mjs.map +0 -1
  470. package/dist/chunk-WX6UP67J.mjs +0 -40
  471. package/dist/chunk-WX6UP67J.mjs.map +0 -1
  472. package/dist/chunk-WYT52YAX.mjs.map +0 -1
  473. package/dist/chunk-XLFC44Y3.mjs.map +0 -1
  474. package/dist/chunk-Y5WPU3ZU.mjs.map +0 -1
  475. package/dist/chunk-YHL2CUBI.mjs.map +0 -1
  476. package/dist/chunk-YUSOGMIJ.mjs +0 -183
  477. package/dist/chunk-YUSOGMIJ.mjs.map +0 -1
  478. package/dist/chunk-YXE66GAL.mjs +0 -19
  479. package/dist/chunk-YXE66GAL.mjs.map +0 -1
  480. package/dist/chunk-ZJKVMRGU.mjs.map +0 -1
  481. package/dist/data/index.d.ts +0 -7
  482. package/dist/data/index.mjs +0 -8
  483. package/dist/data/index.mjs.map +0 -1
  484. package/dist/domain/enums/Country.d.ts +0 -256
  485. package/dist/domain/enums/Country.mjs +0 -16
  486. package/dist/domain/enums/Currency.d.ts +0 -127
  487. package/dist/domain/enums/Currency.mjs +0 -19
  488. package/dist/domain/enums/Environment.mjs +0 -23
  489. package/dist/domain/enums/Environment.mjs.map +0 -1
  490. package/dist/domain/enums/Locale.d.ts +0 -571
  491. package/dist/domain/enums/Locale.mjs +0 -594
  492. package/dist/domain/enums/Locale.mjs.map +0 -1
  493. package/dist/domain/enums/UnitOfMeasurement.d.ts +0 -10
  494. package/dist/domain/enums/UnitOfMeasurement.mjs +0 -16
  495. package/dist/domain/enums/UnitOfMeasurement.mjs.map +0 -1
  496. package/dist/domain/enums/UnitOfWeight.d.ts +0 -8
  497. package/dist/domain/enums/UnitOfWeight.mjs +0 -16
  498. package/dist/domain/enums/UnitOfWeight.mjs.map +0 -1
  499. package/dist/domain/enums/index.d.ts +0 -6
  500. package/dist/domain/enums/index.mjs +0 -7
  501. package/dist/domain/enums/index.mjs.map +0 -1
  502. package/dist/domain/index.d.ts +0 -9
  503. package/dist/domain/index.mjs +0 -10
  504. package/dist/domain/index.mjs.map +0 -1
  505. package/dist/domain/structs/Address.d.ts +0 -12
  506. package/dist/domain/structs/Address.mjs +0 -65
  507. package/dist/domain/structs/Address.mjs.map +0 -1
  508. package/dist/domain/structs/Box.d.ts +0 -15
  509. package/dist/domain/structs/Box.mjs +0 -58
  510. package/dist/domain/structs/Box.mjs.map +0 -1
  511. package/dist/domain/structs/Dimension.d.ts +0 -10
  512. package/dist/domain/structs/Dimension.mjs +0 -20
  513. package/dist/domain/structs/Dimension.mjs.map +0 -1
  514. package/dist/domain/structs/Money.d.ts +0 -12
  515. package/dist/domain/structs/Money.mjs +0 -23
  516. package/dist/domain/structs/Money.mjs.map +0 -1
  517. package/dist/domain/structs/Name.d.ts +0 -9
  518. package/dist/domain/structs/Name.mjs +0 -42
  519. package/dist/domain/structs/Name.mjs.map +0 -1
  520. package/dist/domain/structs/Weight.d.ts +0 -13
  521. package/dist/domain/structs/Weight.mjs +0 -57
  522. package/dist/domain/structs/Weight.mjs.map +0 -1
  523. package/dist/domain/structs/index.d.ts +0 -6
  524. package/dist/domain/structs/index.mjs +0 -7
  525. package/dist/domain/structs/index.mjs.map +0 -1
  526. package/dist/domain/values/DateTime.mjs +0 -21
  527. package/dist/domain/values/EAN.d.ts +0 -5
  528. package/dist/domain/values/EAN.mjs +0 -30
  529. package/dist/domain/values/EAN.mjs.map +0 -1
  530. package/dist/domain/values/Email.d.ts +0 -8
  531. package/dist/domain/values/Email.mjs +0 -37
  532. package/dist/domain/values/Email.mjs.map +0 -1
  533. package/dist/domain/values/IBAN.d.ts +0 -5
  534. package/dist/domain/values/IBAN.mjs +0 -30
  535. package/dist/domain/values/IBAN.mjs.map +0 -1
  536. package/dist/domain/values/PostalCode.d.ts +0 -8
  537. package/dist/domain/values/PostalCode.mjs +0 -19
  538. package/dist/domain/values/PostalCode.mjs.map +0 -1
  539. package/dist/domain/values/Slug.d.ts +0 -6
  540. package/dist/domain/values/Slug.mjs +0 -31
  541. package/dist/domain/values/Slug.mjs.map +0 -1
  542. package/dist/domain/values/Url.d.ts +0 -22
  543. package/dist/domain/values/Url.mjs +0 -36
  544. package/dist/domain/values/Url.mjs.map +0 -1
  545. package/dist/domain/values/index.d.ts +0 -7
  546. package/dist/domain/values/index.mjs +0 -8
  547. package/dist/domain/values/index.mjs.map +0 -1
  548. package/dist/health/index.d.ts +0 -2
  549. package/dist/health/index.mjs +0 -3
  550. package/dist/health/index.mjs.map +0 -1
  551. package/dist/http/index.d.ts +0 -12
  552. package/dist/http/index.mjs +0 -13
  553. package/dist/http/index.mjs.map +0 -1
  554. package/dist/process/index.d.ts +0 -5
  555. package/dist/process/index.mjs +0 -6
  556. package/dist/process/index.mjs.map +0 -1
  557. package/dist/resources/index.d.ts +0 -7
  558. package/dist/resources/index.mjs +0 -8
  559. package/dist/resources/index.mjs.map +0 -1
  560. package/dist/security/index.d.ts +0 -1
  561. package/dist/security/index.mjs +0 -2
  562. package/dist/security/index.mjs.map +0 -1
  563. package/dist/services/index.d.ts +0 -6
  564. package/dist/services/index.mjs +0 -7
  565. package/dist/services/index.mjs.map +0 -1
  566. package/dist/sql/index.d.ts +0 -10
  567. package/dist/sql/index.mjs +0 -11
  568. package/dist/sql/index.mjs.map +0 -1
  569. package/dist/types/index.d.ts +0 -43
  570. package/dist/types/index.mjs +0 -44
  571. package/dist/types/index.mjs.map +0 -1
  572. package/dist/utils/index.d.ts +0 -13
  573. package/dist/utils/index.mjs +0 -14
  574. package/dist/utils/index.mjs.map +0 -1
  575. package/dist/validation/index.d.ts +0 -3
  576. package/dist/validation/index.mjs +0 -4
  577. package/dist/validation/index.mjs.map +0 -1
  578. package/src/data/index.ts +0 -7
  579. package/src/domain/enums/Country.ts +0 -265
  580. package/src/domain/enums/Currency.ts +0 -133
  581. package/src/domain/enums/Locale.ts +0 -579
  582. package/src/domain/enums/UnitOfMeasurement.ts +0 -13
  583. package/src/domain/enums/UnitOfWeight.ts +0 -11
  584. package/src/domain/enums/countries.json +0 -251
  585. package/src/domain/enums/currencies.json +0 -1073
  586. package/src/domain/enums/index.ts +0 -6
  587. package/src/domain/enums/locales.json +0 -565
  588. package/src/domain/index.ts +0 -9
  589. package/src/domain/structs/Address.ts +0 -22
  590. package/src/domain/structs/Box.ts +0 -29
  591. package/src/domain/structs/Dimension.ts +0 -25
  592. package/src/domain/structs/Money.ts +0 -31
  593. package/src/domain/structs/Name.ts +0 -15
  594. package/src/domain/structs/Weight.ts +0 -35
  595. package/src/domain/structs/index.ts +0 -6
  596. package/src/domain/values/EAN.ts +0 -12
  597. package/src/domain/values/Email.ts +0 -20
  598. package/src/domain/values/IBAN.ts +0 -12
  599. package/src/domain/values/PostalCode.ts +0 -17
  600. package/src/domain/values/Slug.ts +0 -14
  601. package/src/domain/values/Url.ts +0 -73
  602. package/src/domain/values/index.ts +0 -7
  603. package/src/health/index.ts +0 -2
  604. package/src/http/index.ts +0 -12
  605. package/src/process/index.ts +0 -5
  606. package/src/resources/index.ts +0 -7
  607. package/src/security/index.ts +0 -1
  608. package/src/services/index.ts +0 -6
  609. package/src/sql/index.ts +0 -10
  610. package/src/types/index.ts +0 -43
  611. package/src/utils/index.ts +0 -13
  612. package/src/validation/index.ts +0 -3
  613. /package/dist/{chunk-GCPVSACZ.mjs.map → chunk-5YM5CLOG.mjs.map} +0 -0
  614. /package/dist/{chunk-2KKIXOMB.mjs.map → chunk-HNVAFEZP.mjs.map} +0 -0
  615. /package/dist/{chunk-OXVJLJIE.mjs.map → chunk-LXQQ5N6S.mjs.map} +0 -0
  616. /package/dist/{chunk-4ROYPQPC.mjs.map → chunk-OFGI5FLG.mjs.map} +0 -0
  617. /package/dist/domain/{values/DateTime.mjs.map → DateTime.mjs.map} +0 -0
  618. /package/dist/{domain/enums/Country.mjs.map → http/toResponse.mjs.map} +0 -0
  619. /package/dist/{domain/enums/Currency.mjs.map → types/Object.mjs.map} +0 -0
@@ -0,0 +1,203 @@
1
+ import {
2
+ ifDefined,
3
+ ifTrue
4
+ } from "./chunk-JSON7A4X.mjs";
5
+ import {
6
+ toArray
7
+ } from "./chunk-X7FZPY3P.mjs";
8
+ import {
9
+ asString
10
+ } from "./chunk-45GNHDKA.mjs";
11
+ import {
12
+ ofGet,
13
+ ofProperty
14
+ } from "./chunk-SJGQU3OG.mjs";
15
+ import {
16
+ isA
17
+ } from "./chunk-ZHXKBOK2.mjs";
18
+ import {
19
+ on
20
+ } from "./chunk-ZPNFXK7Y.mjs";
21
+ import {
22
+ isArray,
23
+ isDefined,
24
+ isEmpty
25
+ } from "./chunk-DEJ7A5PY.mjs";
26
+
27
+ // src/types/List.ts
28
+ var List = class extends Array {
29
+ asc(p) {
30
+ return this.sort((e1, e2) => ofProperty(e1, p) > ofProperty(e2, p) ? 1 : -1);
31
+ }
32
+ desc(p) {
33
+ return this.sort((e1, e2) => ofProperty(e1, p) < ofProperty(e2, p) ? 1 : -1);
34
+ }
35
+ first(p, params) {
36
+ return p ? this.find(p, params) : this[0];
37
+ }
38
+ firstValue(f, alt) {
39
+ return ifDefined(
40
+ this.first((t) => !!f(t)),
41
+ f,
42
+ (v) => ofGet(alt, v)
43
+ );
44
+ }
45
+ isFirst(value) {
46
+ return value === this.first();
47
+ }
48
+ next(p, params) {
49
+ return p ? this[this.findIndex(p, params) + 1] : this[0];
50
+ }
51
+ prev(p, params) {
52
+ return p ? this[this.findIndex(p, params) - 1] : this[0];
53
+ }
54
+ last(p, params) {
55
+ return p ? this.filter(p, params).last() : this[this.length - 1];
56
+ }
57
+ isLast(value) {
58
+ return value === this.last();
59
+ }
60
+ overlaps(...items) {
61
+ return toList(...items).some((i) => this.some((t) => i === t));
62
+ }
63
+ diff(others) {
64
+ return this.filter((i) => !others.includes(i));
65
+ }
66
+ diffByKey(others, key) {
67
+ return this.filter((i) => !others.some((o) => o[key] === i[key]));
68
+ }
69
+ symmetricDiff(others) {
70
+ return this.diff(others).concat(toList(...others).diff(this));
71
+ }
72
+ symmetricDiffByKey(others, key) {
73
+ return this.diffByKey(others, key).concat(toList(...others).diffByKey(this, key));
74
+ }
75
+ intersect(others) {
76
+ return this.filter((i) => others.includes(i));
77
+ }
78
+ intersectByKey(others, key) {
79
+ return this.filter((i) => others.some((o) => o[key] === i[key]));
80
+ }
81
+ toJSON() {
82
+ return this.reduce((a, i) => {
83
+ a.push(JSON.parse(JSON.stringify(i ?? {})));
84
+ return a;
85
+ }, new Array());
86
+ }
87
+ map(f, params) {
88
+ return toList(super.map(f, params));
89
+ }
90
+ flatMap(f, params) {
91
+ return toList(super.flatMap(f, params));
92
+ }
93
+ mapDefined(f, params) {
94
+ return this.map(f, params).defined();
95
+ }
96
+ mapAsync(f) {
97
+ return Promise.all(super.map((e) => f(e))).then((a) => toList(a));
98
+ }
99
+ distinct() {
100
+ return this.filter((i, index) => this.indexOf(i) === index);
101
+ }
102
+ distinctByKey(key) {
103
+ return toList([...Object.values(this.toObject(key)), ...Object.values(Object.getPrototypeOf(this.toObject(key)))]);
104
+ }
105
+ filter(p, params) {
106
+ return toList(super.filter(p, params));
107
+ }
108
+ sum(p) {
109
+ return this.reduce((sum, i) => sum + p(i), 0);
110
+ }
111
+ max(key) {
112
+ return this.desc(key).first();
113
+ }
114
+ min(key) {
115
+ return this.asc(key).first();
116
+ }
117
+ byId(id) {
118
+ return this.first((i) => asString(i.id) === asString(id));
119
+ }
120
+ add(...items) {
121
+ super.push(...toArray(...items));
122
+ return this;
123
+ }
124
+ concat(...items) {
125
+ return toList(super.concat(...items));
126
+ }
127
+ reverse() {
128
+ return toList(super.reverse());
129
+ }
130
+ splice(start, deleteCount, ...items) {
131
+ return toList(super.splice(start, deleteCount, ...items));
132
+ }
133
+ remove(item) {
134
+ const index = this.indexOf(item);
135
+ if (index > -1) {
136
+ this.splice(index, 1);
137
+ }
138
+ return this;
139
+ }
140
+ replace(key, item) {
141
+ const index = this.findIndex((i) => i[key] === item?.[key]);
142
+ ifTrue(index != -1, () => this.splice(index, 1, item));
143
+ return this;
144
+ }
145
+ switch(item) {
146
+ return this.includes(item) ? this.remove(item) : this.add(item);
147
+ }
148
+ defined() {
149
+ return this.reduce((l, v) => isDefined(v) ? l.add(v) : l, toList());
150
+ }
151
+ toObject(key, options = {}) {
152
+ return this.reduce((o, i) => {
153
+ o[i[key]] = i;
154
+ if (options.deleteKey)
155
+ delete o[i[key]][key];
156
+ return o;
157
+ }, {});
158
+ }
159
+ toObjectList(key) {
160
+ return this.reduce(
161
+ (a, t) => {
162
+ const k = t[key];
163
+ a[k] = a[k] ?? toList();
164
+ a[k].push(t);
165
+ return a;
166
+ },
167
+ {}
168
+ );
169
+ }
170
+ orElse(...alt) {
171
+ return !isEmpty(this) ? this : !isEmpty(...alt) ? toList(...alt) : void 0;
172
+ }
173
+ weave(insertFrom, interval) {
174
+ for (let i = interval, n = 0; i <= this.length && n < insertFrom.length; i += interval + 1) {
175
+ this.splice(i, 0, insertFrom[n++]);
176
+ }
177
+ return this;
178
+ }
179
+ slice(start, end) {
180
+ return toList(super.slice(start, end));
181
+ }
182
+ none(p) {
183
+ return !this.some(p);
184
+ }
185
+ chunk(chunkSize) {
186
+ return this.reduce((acc, _, index) => index % chunkSize === 0 ? on(acc, (a) => a.push(this.slice(index, index + chunkSize))) : acc, toList());
187
+ }
188
+ };
189
+ var toList = (...items) => new List().add(...items);
190
+ var isList = (l) => isDefined(l) && isArray(l) && isA(l, "first", "last", "asc", "desc");
191
+ var asList = (c, items = []) => toList(toArray(items).map((i) => new c(i)));
192
+ var maxValue = (l, key) => l.desc(key).first()?.[key];
193
+ var minValue = (l, key) => l.asc(key).first()?.[key];
194
+
195
+ export {
196
+ List,
197
+ toList,
198
+ isList,
199
+ asList,
200
+ maxValue,
201
+ minValue
202
+ };
203
+ //# sourceMappingURL=chunk-J7XKOXMW.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/types/List.ts"],"sourcesContent":["import { ArrayLike, toArray } from './Array';\nimport { Constructor, on } from './Constructor';\nimport type { Json } from './Json';\nimport { isArray, isDefined, isEmpty } from './Is';\nimport { isA } from './IsA';\nimport { Get, GetProperty, ofGet, ofProperty } from './Get';\nimport type { Id } from './Id';\nimport { asString } from './Text';\nimport { Optional } from './Types';\nimport { ifDefined, ifTrue } from '../utils/If';\n\nexport class List<T = unknown> extends Array<T> {\n asc(p: GetProperty<T, any>): List<T> {\n return this.sort((e1, e2) => (ofProperty(e1, p) > ofProperty(e2, p) ? 1 : -1));\n }\n\n desc(p: GetProperty<T, any>): List<T> {\n return this.sort((e1, e2) => (ofProperty(e1, p) < ofProperty(e2, p) ? 1 : -1));\n }\n\n first(p?: (value: T, index: number, array: T[]) => unknown, params?: unknown): T {\n return (p ? this.find(p, params) : this[0]) as T;\n }\n\n firstValue<V>(f: (t: T) => V, alt?: Get<V, T>): Optional<V> {\n return ifDefined(\n this.first(t => !!f(t)),\n f,\n v => ofGet(alt, v)\n );\n }\n\n isFirst(value: T): boolean {\n return value === this.first();\n }\n\n next(p?: (value: T, index: number, array: T[]) => unknown, params?: unknown): T {\n return p ? this[this.findIndex(p, params) + 1] : this[0];\n }\n\n prev(p?: (value: T, index: number, array: T[]) => unknown, params?: unknown): T {\n return p ? this[this.findIndex(p, params) - 1] : this[0];\n }\n\n last(p?: (value: T, index: number, array: T[]) => unknown, params?: unknown): T {\n return p ? this.filter(p, params).last() : this[this.length - 1];\n }\n\n isLast(value: T): boolean {\n return value === this.last();\n }\n\n overlaps(...items: ArrayLike<T>): boolean {\n return toList<T>(...items).some(i => this.some(t => i === t));\n }\n\n diff(others: ArrayLike<T>): List<T> {\n return this.filter(i => !others.includes(i));\n }\n\n diffByKey(others: ArrayLike<T>, key: keyof T): List<T> {\n return this.filter((i: any) => !others.some((o: any) => o[key] === i[key]));\n }\n\n symmetricDiff(others: ArrayLike<T>): List<T> {\n return this.diff(others).concat(toList<T>(...others).diff(this));\n }\n symmetricDiffByKey(others: ArrayLike<T>, key: keyof T): List<T> {\n return this.diffByKey(others, key).concat(toList<T>(...others).diffByKey(this, key));\n }\n\n intersect(others: ArrayLike<T>): List<T> {\n return this.filter(i => others.includes(i));\n }\n\n intersectByKey(others: ArrayLike<T>, key: keyof T): List<T> {\n return this.filter((i: any) => others.some((o: any) => o[key] === i[key]));\n }\n\n toJSON(): Json[] {\n return this.reduce((a, i) => {\n a.push(JSON.parse(JSON.stringify(i ?? {})));\n return a;\n }, new Array<Json>());\n }\n\n map<U>(f: (value: T, index: number, array: T[]) => U, params?: unknown): List<U> {\n return toList<U>(super.map(f, params));\n }\n\n flatMap<U, This = unknown>(f: (this: This, value: T, index: number, array: T[]) => ReadonlyArray<U> | U, params?: This): List<U> {\n return toList<U>(super.flatMap(f, params));\n }\n\n mapDefined<U>(f: (value: T, index: number, array: T[]) => U, params?: unknown): List<NonNullable<U>> {\n return this.map(f, params).defined();\n }\n\n mapAsync(f: (i: T) => Promise<T>): Promise<List<T>> {\n return Promise.all(super.map(e => f(e))).then(a => toList<T>(a));\n }\n\n distinct(): List<T> {\n return this.filter((i, index) => this.indexOf(i) === index);\n }\n\n distinctByKey(key: keyof T): List<T> {\n return toList([...Object.values<T>(this.toObject(key)), ...Object.values<T>(Object.getPrototypeOf(this.toObject(key)))]);\n }\n\n filter(p: (value: T, index: number, array: T[]) => unknown, params?: unknown): List<T> {\n return toList<T>(super.filter(p, params));\n }\n\n sum(p: (t: T) => number): number {\n return this.reduce((sum: number, i) => sum + p(i), 0);\n }\n\n max(key: keyof T): T {\n return this.desc(key).first();\n }\n\n min(key: keyof T): T {\n return this.asc(key).first();\n }\n\n byId(id: Id): T {\n return this.first(i => asString((i as any).id) === asString(id));\n }\n\n add(...items: ArrayLike<T>): this {\n super.push(...toArray(...items));\n return this;\n }\n\n concat(...items: ConcatArray<T>[]): List<T>;\n concat(...items: (T | ConcatArray<T>)[]): List<T>;\n concat(...items: (T | ConcatArray<T>)[]): List<T> {\n return toList<T>(super.concat(...items));\n }\n\n reverse(): List<T> {\n return toList<T>(super.reverse());\n }\n\n splice(start: number, deleteCount?: number): List<T>;\n splice(start: number, deleteCount: number, ...items: T[]): List<T>;\n splice(start: number, deleteCount: number, ...items: T[]): List<T> {\n return toList<T>(super.splice(start, deleteCount, ...items));\n }\n\n remove(item: T): List<T> {\n const index = this.indexOf(item);\n if (index > -1) {\n this.splice(index, 1);\n }\n return this;\n }\n\n replace(key: keyof T, item: T): List<T> {\n const index = this.findIndex(i => i[key] === item?.[key]);\n ifTrue(index != -1, () => this.splice(index, 1, item));\n return this;\n }\n\n switch(item: T): List<T> {\n return this.includes(item) ? this.remove(item) : this.add(item);\n }\n\n defined(): List<NonNullable<T>> {\n return this.reduce((l, v) => (isDefined(v) ? l.add(v) : l), toList<NonNullable<T>>());\n }\n\n toObject(key: keyof T, options: { deleteKey?: boolean } = {}): Record<string | number | symbol, T> {\n return this.reduce((o: any, i) => {\n o[i[key]] = i;\n if (options.deleteKey) delete o[i[key]][key];\n return o;\n }, {});\n }\n\n toObjectList(key: keyof T): Record<string | number | symbol, List<T>> {\n return this.reduce(\n (a, t) => {\n const k = t[key] as unknown as string | number | symbol;\n a[k] = a[k] ?? toList();\n a[k].push(t);\n return a;\n },\n {} as Record<string | number | symbol, List<T>>\n );\n }\n\n orElse(...alt: ArrayLike<T>): Optional<List<T>> {\n return !isEmpty(this) ? this : !isEmpty(...alt) ? toList<T>(...alt) : undefined;\n }\n\n weave(insertFrom: T[], interval: number): this {\n for (let i = interval, n = 0; i <= this.length && n < insertFrom.length; i += interval + 1) {\n this.splice(i, 0, insertFrom[n++]);\n }\n return this;\n }\n\n slice(start?: number, end?: number): List<T> {\n return toList(super.slice(start, end));\n }\n\n none(p: (t: T) => boolean): boolean {\n return !this.some(p);\n }\n\n chunk(chunkSize: number): List<List<T>> {\n return this.reduce((acc, _, index) => (index % chunkSize === 0 ? on(acc, a => a.push(this.slice(index, index + chunkSize))) : acc), toList<List<T>>());\n }\n}\n\nexport const toList = <T = unknown>(...items: ArrayLike<T>): List<T> => new List<T>().add(...items);\n\nexport const isList = <T>(l?: unknown): l is List<T> => isDefined(l) && isArray(l) && isA<List<T>>(l, 'first', 'last', 'asc', 'desc');\n\nexport const asList = <T>(c: Constructor<T>, items: unknown = []): List<T> => toList<T>(toArray(items).map(i => new c(i)));\n\nexport const maxValue = <T>(l: List<T>, key: keyof T): T[keyof T] | undefined => l.desc(key).first()?.[key];\n\nexport const minValue = <T>(l: List<T>, key: keyof T): T[keyof T] | undefined => l.asc(key).first()?.[key];\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;AAWO,IAAM,OAAN,cAAgC,MAAS;AAAA,EAC9C,IAAI,GAAiC;AACnC,WAAO,KAAK,KAAK,CAAC,IAAI,OAAQ,WAAW,IAAI,CAAC,IAAI,WAAW,IAAI,CAAC,IAAI,IAAI,EAAG;AAAA,EAC/E;AAAA,EAEA,KAAK,GAAiC;AACpC,WAAO,KAAK,KAAK,CAAC,IAAI,OAAQ,WAAW,IAAI,CAAC,IAAI,WAAW,IAAI,CAAC,IAAI,IAAI,EAAG;AAAA,EAC/E;AAAA,EAEA,MAAM,GAAsD,QAAqB;AAC/E,WAAQ,IAAI,KAAK,KAAK,GAAG,MAAM,IAAI,KAAK,CAAC;AAAA,EAC3C;AAAA,EAEA,WAAc,GAAgB,KAA8B;AAC1D,WAAO;AAAA,MACL,KAAK,MAAM,OAAK,CAAC,CAAC,EAAE,CAAC,CAAC;AAAA,MACtB;AAAA,MACA,OAAK,MAAM,KAAK,CAAC;AAAA,IACnB;AAAA,EACF;AAAA,EAEA,QAAQ,OAAmB;AACzB,WAAO,UAAU,KAAK,MAAM;AAAA,EAC9B;AAAA,EAEA,KAAK,GAAsD,QAAqB;AAC9E,WAAO,IAAI,KAAK,KAAK,UAAU,GAAG,MAAM,IAAI,CAAC,IAAI,KAAK,CAAC;AAAA,EACzD;AAAA,EAEA,KAAK,GAAsD,QAAqB;AAC9E,WAAO,IAAI,KAAK,KAAK,UAAU,GAAG,MAAM,IAAI,CAAC,IAAI,KAAK,CAAC;AAAA,EACzD;AAAA,EAEA,KAAK,GAAsD,QAAqB;AAC9E,WAAO,IAAI,KAAK,OAAO,GAAG,MAAM,EAAE,KAAK,IAAI,KAAK,KAAK,SAAS,CAAC;AAAA,EACjE;AAAA,EAEA,OAAO,OAAmB;AACxB,WAAO,UAAU,KAAK,KAAK;AAAA,EAC7B;AAAA,EAEA,YAAY,OAA8B;AACxC,WAAO,OAAU,GAAG,KAAK,EAAE,KAAK,OAAK,KAAK,KAAK,OAAK,MAAM,CAAC,CAAC;AAAA,EAC9D;AAAA,EAEA,KAAK,QAA+B;AAClC,WAAO,KAAK,OAAO,OAAK,CAAC,OAAO,SAAS,CAAC,CAAC;AAAA,EAC7C;AAAA,EAEA,UAAU,QAAsB,KAAuB;AACrD,WAAO,KAAK,OAAO,CAAC,MAAW,CAAC,OAAO,KAAK,CAAC,MAAW,EAAE,GAAG,MAAM,EAAE,GAAG,CAAC,CAAC;AAAA,EAC5E;AAAA,EAEA,cAAc,QAA+B;AAC3C,WAAO,KAAK,KAAK,MAAM,EAAE,OAAO,OAAU,GAAG,MAAM,EAAE,KAAK,IAAI,CAAC;AAAA,EACjE;AAAA,EACA,mBAAmB,QAAsB,KAAuB;AAC9D,WAAO,KAAK,UAAU,QAAQ,GAAG,EAAE,OAAO,OAAU,GAAG,MAAM,EAAE,UAAU,MAAM,GAAG,CAAC;AAAA,EACrF;AAAA,EAEA,UAAU,QAA+B;AACvC,WAAO,KAAK,OAAO,OAAK,OAAO,SAAS,CAAC,CAAC;AAAA,EAC5C;AAAA,EAEA,eAAe,QAAsB,KAAuB;AAC1D,WAAO,KAAK,OAAO,CAAC,MAAW,OAAO,KAAK,CAAC,MAAW,EAAE,GAAG,MAAM,EAAE,GAAG,CAAC,CAAC;AAAA,EAC3E;AAAA,EAEA,SAAiB;AACf,WAAO,KAAK,OAAO,CAAC,GAAG,MAAM;AAC3B,QAAE,KAAK,KAAK,MAAM,KAAK,UAAU,KAAK,CAAC,CAAC,CAAC,CAAC;AAC1C,aAAO;AAAA,IACT,GAAG,IAAI,MAAY,CAAC;AAAA,EACtB;AAAA,EAEA,IAAO,GAA+C,QAA2B;AAC/E,WAAO,OAAU,MAAM,IAAI,GAAG,MAAM,CAAC;AAAA,EACvC;AAAA,EAEA,QAA2B,GAA8E,QAAwB;AAC/H,WAAO,OAAU,MAAM,QAAQ,GAAG,MAAM,CAAC;AAAA,EAC3C;AAAA,EAEA,WAAc,GAA+C,QAAwC;AACnG,WAAO,KAAK,IAAI,GAAG,MAAM,EAAE,QAAQ;AAAA,EACrC;AAAA,EAEA,SAAS,GAA2C;AAClD,WAAO,QAAQ,IAAI,MAAM,IAAI,OAAK,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,OAAK,OAAU,CAAC,CAAC;AAAA,EACjE;AAAA,EAEA,WAAoB;AAClB,WAAO,KAAK,OAAO,CAAC,GAAG,UAAU,KAAK,QAAQ,CAAC,MAAM,KAAK;AAAA,EAC5D;AAAA,EAEA,cAAc,KAAuB;AACnC,WAAO,OAAO,CAAC,GAAG,OAAO,OAAU,KAAK,SAAS,GAAG,CAAC,GAAG,GAAG,OAAO,OAAU,OAAO,eAAe,KAAK,SAAS,GAAG,CAAC,CAAC,CAAC,CAAC;AAAA,EACzH;AAAA,EAEA,OAAO,GAAqD,QAA2B;AACrF,WAAO,OAAU,MAAM,OAAO,GAAG,MAAM,CAAC;AAAA,EAC1C;AAAA,EAEA,IAAI,GAA6B;AAC/B,WAAO,KAAK,OAAO,CAAC,KAAa,MAAM,MAAM,EAAE,CAAC,GAAG,CAAC;AAAA,EACtD;AAAA,EAEA,IAAI,KAAiB;AACnB,WAAO,KAAK,KAAK,GAAG,EAAE,MAAM;AAAA,EAC9B;AAAA,EAEA,IAAI,KAAiB;AACnB,WAAO,KAAK,IAAI,GAAG,EAAE,MAAM;AAAA,EAC7B;AAAA,EAEA,KAAK,IAAW;AACd,WAAO,KAAK,MAAM,OAAK,SAAU,EAAU,EAAE,MAAM,SAAS,EAAE,CAAC;AAAA,EACjE;AAAA,EAEA,OAAO,OAA2B;AAChC,UAAM,KAAK,GAAG,QAAQ,GAAG,KAAK,CAAC;AAC/B,WAAO;AAAA,EACT;AAAA,EAIA,UAAU,OAAwC;AAChD,WAAO,OAAU,MAAM,OAAO,GAAG,KAAK,CAAC;AAAA,EACzC;AAAA,EAEA,UAAmB;AACjB,WAAO,OAAU,MAAM,QAAQ,CAAC;AAAA,EAClC;AAAA,EAIA,OAAO,OAAe,gBAAwB,OAAqB;AACjE,WAAO,OAAU,MAAM,OAAO,OAAO,aAAa,GAAG,KAAK,CAAC;AAAA,EAC7D;AAAA,EAEA,OAAO,MAAkB;AACvB,UAAM,QAAQ,KAAK,QAAQ,IAAI;AAC/B,QAAI,QAAQ,IAAI;AACd,WAAK,OAAO,OAAO,CAAC;AAAA,IACtB;AACA,WAAO;AAAA,EACT;AAAA,EAEA,QAAQ,KAAc,MAAkB;AACtC,UAAM,QAAQ,KAAK,UAAU,OAAK,EAAE,GAAG,MAAM,OAAO,GAAG,CAAC;AACxD,WAAO,SAAS,IAAI,MAAM,KAAK,OAAO,OAAO,GAAG,IAAI,CAAC;AACrD,WAAO;AAAA,EACT;AAAA,EAEA,OAAO,MAAkB;AACvB,WAAO,KAAK,SAAS,IAAI,IAAI,KAAK,OAAO,IAAI,IAAI,KAAK,IAAI,IAAI;AAAA,EAChE;AAAA,EAEA,UAAgC;AAC9B,WAAO,KAAK,OAAO,CAAC,GAAG,MAAO,UAAU,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,GAAI,OAAuB,CAAC;AAAA,EACtF;AAAA,EAEA,SAAS,KAAc,UAAmC,CAAC,GAAwC;AACjG,WAAO,KAAK,OAAO,CAAC,GAAQ,MAAM;AAChC,QAAE,EAAE,GAAG,CAAC,IAAI;AACZ,UAAI,QAAQ;AAAW,eAAO,EAAE,EAAE,GAAG,CAAC,EAAE,GAAG;AAC3C,aAAO;AAAA,IACT,GAAG,CAAC,CAAC;AAAA,EACP;AAAA,EAEA,aAAa,KAAyD;AACpE,WAAO,KAAK;AAAA,MACV,CAAC,GAAG,MAAM;AACR,cAAM,IAAI,EAAE,GAAG;AACf,UAAE,CAAC,IAAI,EAAE,CAAC,KAAK,OAAO;AACtB,UAAE,CAAC,EAAE,KAAK,CAAC;AACX,eAAO;AAAA,MACT;AAAA,MACA,CAAC;AAAA,IACH;AAAA,EACF;AAAA,EAEA,UAAU,KAAsC;AAC9C,WAAO,CAAC,QAAQ,IAAI,IAAI,OAAO,CAAC,QAAQ,GAAG,GAAG,IAAI,OAAU,GAAG,GAAG,IAAI;AAAA,EACxE;AAAA,EAEA,MAAM,YAAiB,UAAwB;AAC7C,aAAS,IAAI,UAAU,IAAI,GAAG,KAAK,KAAK,UAAU,IAAI,WAAW,QAAQ,KAAK,WAAW,GAAG;AAC1F,WAAK,OAAO,GAAG,GAAG,WAAW,GAAG,CAAC;AAAA,IACnC;AACA,WAAO;AAAA,EACT;AAAA,EAEA,MAAM,OAAgB,KAAuB;AAC3C,WAAO,OAAO,MAAM,MAAM,OAAO,GAAG,CAAC;AAAA,EACvC;AAAA,EAEA,KAAK,GAA+B;AAClC,WAAO,CAAC,KAAK,KAAK,CAAC;AAAA,EACrB;AAAA,EAEA,MAAM,WAAkC;AACtC,WAAO,KAAK,OAAO,CAAC,KAAK,GAAG,UAAW,QAAQ,cAAc,IAAI,GAAG,KAAK,OAAK,EAAE,KAAK,KAAK,MAAM,OAAO,QAAQ,SAAS,CAAC,CAAC,IAAI,KAAM,OAAgB,CAAC;AAAA,EACvJ;AACF;AAEO,IAAM,SAAS,IAAiB,UAAiC,IAAI,KAAQ,EAAE,IAAI,GAAG,KAAK;AAE3F,IAAM,SAAS,CAAI,MAA8B,UAAU,CAAC,KAAK,QAAQ,CAAC,KAAK,IAAa,GAAG,SAAS,QAAQ,OAAO,MAAM;AAE7H,IAAM,SAAS,CAAI,GAAmB,QAAiB,CAAC,MAAe,OAAU,QAAQ,KAAK,EAAE,IAAI,OAAK,IAAI,EAAE,CAAC,CAAC,CAAC;AAElH,IAAM,WAAW,CAAI,GAAY,QAAyC,EAAE,KAAK,GAAG,EAAE,MAAM,IAAI,GAAG;AAEnG,IAAM,WAAW,CAAI,GAAY,QAAyC,EAAE,IAAI,GAAG,EAAE,MAAM,IAAI,GAAG;","names":[]}
@@ -1,13 +1,15 @@
1
1
  import {
2
- asString,
3
2
  tryTo
4
- } from "./chunk-PFAEQQXA.mjs";
3
+ } from "./chunk-ARZEQQW5.mjs";
4
+ import {
5
+ asString
6
+ } from "./chunk-45GNHDKA.mjs";
5
7
  import {
6
8
  ofGet
7
9
  } from "./chunk-SJGQU3OG.mjs";
8
10
  import {
9
11
  isNumber
10
- } from "./chunk-UWNXWKBU.mjs";
12
+ } from "./chunk-DEJ7A5PY.mjs";
11
13
 
12
14
  // src/types/Number.ts
13
15
  var asNumber = (n, alt) => tryTo(() => asString(n)).map((s) => parseInt(s)).filter((n2) => isNumber(n2)).or(ofGet(alt) ?? NaN);
@@ -15,4 +17,4 @@ var asNumber = (n, alt) => tryTo(() => asString(n)).map((s) => parseInt(s)).filt
15
17
  export {
16
18
  asNumber
17
19
  };
18
- //# sourceMappingURL=chunk-RFG5LNDQ.mjs.map
20
+ //# sourceMappingURL=chunk-JBJ2YERG.mjs.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/types/Number.ts"],"sourcesContent":["import { Get, ofGet } from './Get';\nimport { tryTo } from './Try';\nimport { isNumber } from './Is';\nimport { asString } from './Text';\n\nexport const asNumber = (n: unknown, alt?: Get<number>): number =>\n tryTo(() => asString(n))\n .map(s => parseInt(s))\n .filter(n => isNumber(n))\n .or(ofGet(alt) ?? NaN);\n"],"mappings":";;;;;;;;;;;;AAKO,IAAM,WAAW,CAAC,GAAY,QACnC,MAAM,MAAM,SAAS,CAAC,CAAC,EACpB,IAAI,OAAK,SAAS,CAAC,CAAC,EACpB,OAAO,CAAAA,OAAK,SAASA,EAAC,CAAC,EACvB,GAAG,MAAM,GAAG,KAAK,GAAG;","names":["n"]}
1
+ {"version":3,"sources":["../src/types/Number.ts"],"sourcesContent":["import { Get, ofGet } from './Get';\nimport { tryTo } from './Try';\nimport { isNumber } from './Is';\nimport { asString } from './Text';\n\nexport const asNumber = (n: unknown, alt?: Get<number>): number =>\n tryTo(() => asString(n))\n .map(s => parseInt(s))\n .filter(n => isNumber(n))\n .or(ofGet(alt) ?? NaN);\n"],"mappings":";;;;;;;;;;;;;;AAKO,IAAM,WAAW,CAAC,GAAY,QACnC,MAAM,MAAM,SAAS,CAAC,CAAC,EACpB,IAAI,OAAK,SAAS,CAAC,CAAC,EACpB,OAAO,CAAAA,OAAK,SAASA,EAAC,CAAC,EACvB,GAAG,MAAM,GAAG,KAAK,GAAG;","names":["n"]}
@@ -1,18 +1,18 @@
1
1
  import {
2
- HttpStatus
3
- } from "./chunk-GARRF3U7.mjs";
4
- import {
5
- HttpVerb
6
- } from "./chunk-H7NDGISC.mjs";
2
+ CacheControl
3
+ } from "./chunk-NFWIUPZU.mjs";
7
4
  import {
8
5
  ContentType
9
- } from "./chunk-BAXNN36F.mjs";
6
+ } from "./chunk-4DJNTF2D.mjs";
10
7
  import {
11
- CacheControl
12
- } from "./chunk-CJDDGEEK.mjs";
8
+ HttpStatus
9
+ } from "./chunk-TMZRZLA2.mjs";
10
+ import {
11
+ HttpVerb
12
+ } from "./chunk-LAR7AT6R.mjs";
13
13
  import {
14
14
  meta
15
- } from "./chunk-PFAEQQXA.mjs";
15
+ } from "./chunk-PPWHEIZW.mjs";
16
16
 
17
17
  // src/http/Verb.ts
18
18
  var toVerbOptions = (options) => ({
@@ -43,4 +43,4 @@ export {
43
43
  del,
44
44
  stream
45
45
  };
46
- //# sourceMappingURL=chunk-J64VE55O.mjs.map
46
+ //# sourceMappingURL=chunk-JFJLDIJB.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/http/Verb.ts"],"sourcesContent":["import { meta } from '../types/Meta';\nimport { HttpStatus } from './HttpStatus';\nimport { ContentType } from './ContentType';\nimport { CacheControl } from './CacheControl';\nimport { HttpVerb } from './HttpVerb';\n\nexport type VerbOptions = { onOk?: HttpStatus; onNotFound?: HttpStatus; onError?: HttpStatus; type?: ContentType; cache?: CacheControl };\nexport type Verb = { verb: HttpVerb; options: VerbOptions };\n\nexport const toVerbOptions = (options?: VerbOptions): Required<VerbOptions> => ({\n onOk: options?.onOk ?? HttpStatus.Ok,\n onNotFound: options?.onNotFound ?? HttpStatus.NotFound,\n onError: options?.onError ?? HttpStatus.BadRequest,\n type: options?.type ?? ContentType.Json,\n cache: options?.cache ?? CacheControl.disabled(),\n});\n\nconst toVerb =\n <T>(verb: HttpVerb, options?: VerbOptions): PropertyDecorator =>\n (subject: unknown, property: string | symbol): void => {\n meta(subject).property(property).set('verb', { verb, options });\n };\n\nexport const get = (options?: VerbOptions): PropertyDecorator => toVerb(HttpVerb.Get, options);\n\nexport const search = (options?: VerbOptions): PropertyDecorator => toVerb(HttpVerb.Get, { onNotFound: HttpStatus.Ok, ...options });\n\nexport const put = (options?: VerbOptions): PropertyDecorator => toVerb(HttpVerb.Put, options);\n\nexport const patch = (options?: VerbOptions): PropertyDecorator => toVerb(HttpVerb.Patch, options);\n\nexport const post = (options?: VerbOptions): PropertyDecorator => toVerb(HttpVerb.Post, { onOk: HttpStatus.Created, ...options });\n\nexport const del = (options?: VerbOptions): PropertyDecorator => toVerb(HttpVerb.Delete, { onOk: HttpStatus.NoContent, ...options });\n\nexport const stream = (options?: VerbOptions): PropertyDecorator => toVerb(HttpVerb.Get, { type: ContentType.Stream, ...options });\n"],"mappings":";;;;;;;;;;;;;;;;;AASO,IAAM,gBAAgB,CAAC,aAAkD;AAAA,EAC9E,MAAM,SAAS,QAAQ,WAAW;AAAA,EAClC,YAAY,SAAS,cAAc,WAAW;AAAA,EAC9C,SAAS,SAAS,WAAW,WAAW;AAAA,EACxC,MAAM,SAAS,QAAQ,YAAY;AAAA,EACnC,OAAO,SAAS,SAAS,aAAa,SAAS;AACjD;AAEA,IAAM,SACJ,CAAI,MAAgB,YACpB,CAAC,SAAkB,aAAoC;AACrD,OAAK,OAAO,EAAE,SAAS,QAAQ,EAAE,IAAI,QAAQ,EAAE,MAAM,QAAQ,CAAC;AAChE;AAEK,IAAM,MAAM,CAAC,YAA6C,OAAO,SAAS,KAAK,OAAO;AAEtF,IAAM,SAAS,CAAC,YAA6C,OAAO,SAAS,KAAK,EAAE,YAAY,WAAW,IAAI,GAAG,QAAQ,CAAC;AAE3H,IAAM,MAAM,CAAC,YAA6C,OAAO,SAAS,KAAK,OAAO;AAEtF,IAAM,QAAQ,CAAC,YAA6C,OAAO,SAAS,OAAO,OAAO;AAE1F,IAAM,OAAO,CAAC,YAA6C,OAAO,SAAS,MAAM,EAAE,MAAM,WAAW,SAAS,GAAG,QAAQ,CAAC;AAEzH,IAAM,MAAM,CAAC,YAA6C,OAAO,SAAS,QAAQ,EAAE,MAAM,WAAW,WAAW,GAAG,QAAQ,CAAC;AAE5H,IAAM,SAAS,CAAC,YAA6C,OAAO,SAAS,KAAK,EAAE,MAAM,YAAY,QAAQ,GAAG,QAAQ,CAAC;","names":[]}
@@ -1,20 +1,22 @@
1
- import {
2
- DateTime
3
- } from "./chunk-A5MC57TL.mjs";
4
1
  import {
5
2
  required,
6
3
  valid
7
- } from "./chunk-Y5WPU3ZU.mjs";
4
+ } from "./chunk-UW6S2PNO.mjs";
5
+ import {
6
+ DateTime
7
+ } from "./chunk-3L4RAR24.mjs";
8
8
  import {
9
9
  Struct
10
- } from "./chunk-65W3AYRE.mjs";
10
+ } from "./chunk-RNROH3VJ.mjs";
11
+ import {
12
+ choose
13
+ } from "./chunk-ARZEQQW5.mjs";
11
14
  import {
12
- choose,
13
15
  ctx
14
- } from "./chunk-PFAEQQXA.mjs";
16
+ } from "./chunk-6YVMQB26.mjs";
15
17
  import {
16
18
  isIdentity
17
- } from "./chunk-UWNXWKBU.mjs";
19
+ } from "./chunk-ZHXKBOK2.mjs";
18
20
  import {
19
21
  __decorateClass
20
22
  } from "./chunk-4N72FQFX.mjs";
@@ -45,4 +47,4 @@ __decorateClass([
45
47
  export {
46
48
  Audit
47
49
  };
48
- //# sourceMappingURL=chunk-F4CWMZCV.mjs.map
50
+ //# sourceMappingURL=chunk-JFU65NZU.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/domain/Audit.ts"],"sourcesContent":["import { Struct } from './Struct';\nimport { DateTime } from './DateTime';\nimport { required, valid } from '../validation/Contraints';\nimport { Identity } from '../types/Identity';\nimport { Json } from '../types/Json';\nimport { choose } from '../types/Case';\nimport { isIdentity } from '../types/IsA';\nimport { ctx } from '../types/Context';\n\nexport class Audit extends Struct {\n @required() readonly by: Identity = { id: this.state.by?.id, user: this.state.by?.user };\n @valid() readonly when: DateTime = new DateTime(this.state.when);\n\n constructor(json?: Json) {\n super(\n choose(json)\n .is.defined(\n j => j,\n j => j\n )\n .else({\n by: isIdentity(ctx.request?.identity) ? ctx.request?.identity : { id: 0, user: 'easy' },\n when: DateTime.now.toJSON(),\n })\n );\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AASO,IAAM,QAAN,cAAoB,OAAO;AAAA,EACX,KAAe,EAAE,IAAI,KAAK,MAAM,IAAI,IAAI,MAAM,KAAK,MAAM,IAAI,KAAK;AAAA,EACrE,OAAiB,IAAI,SAAS,KAAK,MAAM,IAAI;AAAA,EAE/D,YAAY,MAAa;AACvB;AAAA,MACE,OAAO,IAAI,EACR,GAAG;AAAA,QACF,OAAK;AAAA,QACL,OAAK;AAAA,MACP,EACC,KAAK;AAAA,QACJ,IAAI,WAAW,IAAI,SAAS,QAAQ,IAAI,IAAI,SAAS,WAAW,EAAE,IAAI,GAAG,MAAM,OAAO;AAAA,QACtF,MAAM,SAAS,IAAI,OAAO;AAAA,MAC5B,CAAC;AAAA,IACL;AAAA,EACF;AACF;AAhBuB;AAAA,EAApB,SAAS;AAAA,GADC,MACU;AACH;AAAA,EAAjB,MAAM;AAAA,GAFI,MAEO;","names":[]}
@@ -1,9 +1,11 @@
1
+ import {
2
+ ofConstruct
3
+ } from "./chunk-ZPNFXK7Y.mjs";
1
4
  import {
2
5
  isDefined,
3
6
  isNotEmpty,
4
- isTrue,
5
- ofConstruct
6
- } from "./chunk-UWNXWKBU.mjs";
7
+ isTrue
8
+ } from "./chunk-DEJ7A5PY.mjs";
7
9
 
8
10
  // src/utils/If.ts
9
11
  function ifTrue(o, f, alt) {
@@ -25,4 +27,4 @@ export {
25
27
  ifDefined,
26
28
  ifNotEmpty
27
29
  };
28
- //# sourceMappingURL=chunk-PWCGCUT7.mjs.map
30
+ //# sourceMappingURL=chunk-JSON7A4X.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/utils/If.ts"],"sourcesContent":["import { isDefined, isNotEmpty, isTrue } from '../types/Is';\nimport { Optional } from '../types/Types';\nimport { Construct, ofConstruct } from '../types/Constructor';\n\nexport function ifTrue<Out, In = unknown>(o: unknown, f: Construct<Out, NonNullable<In>>, alt: Construct<Out>): Out;\nexport function ifTrue<Out, In = unknown>(o: unknown, f: Construct<Out, NonNullable<In>>, alt?: Construct<Out>): Optional<Out>;\nexport function ifTrue<Out, In = unknown>(o: unknown, f: Construct<Out, NonNullable<In>>, alt?: Construct<Out>): Optional<Out> {\n return isTrue(o) ? ofConstruct(f, o) : ofConstruct(alt, o);\n}\n\nexport function ifFalse<Out, In = unknown>(o: unknown, f: Construct<Out, NonNullable<In>>, alt: Construct<Out>): Out;\nexport function ifFalse<Out, In = unknown>(o: unknown, f: Construct<Out, NonNullable<In>>, alt?: Construct<Out>): Optional<Out>;\nexport function ifFalse<Out, In = unknown>(o: unknown, f: Construct<Out, NonNullable<In>>, alt?: Construct<Out>): Optional<Out> {\n return !isTrue(o) ? ofConstruct(f, o) : ofConstruct(alt, o);\n}\n\nexport function ifDefined<Out, In = unknown>(o: Optional<In>, f: Construct<Out, NonNullable<In>>, alt: Construct<Out>): Out;\nexport function ifDefined<Out, In = unknown>(o: Optional<In>, f: Construct<Out, NonNullable<In>>, alt?: Construct<Out>): Optional<Out>;\nexport function ifDefined<Out, In = unknown>(o: Optional<In>, f: Construct<Out, NonNullable<In>>, alt?: Construct<Out>): Optional<Out> {\n return isDefined(o) ? ofConstruct(f, o) : ofConstruct(alt);\n}\n\nexport function ifNotEmpty<Out, In = unknown>(o: In, f: Construct<Out, NonNullable<In>>, alt: Construct<Out>): Out;\nexport function ifNotEmpty<Out, In = unknown>(o: In, f?: Construct<Out, NonNullable<In>>, alt?: Construct<Out>): Optional<Out>;\nexport function ifNotEmpty<Out, In = unknown>(o: In, f: Construct<Out, NonNullable<In>>, alt?: Construct<Out>): Optional<Out>;\nexport function ifNotEmpty<Out, In = unknown>(o: In, f: Construct<Out, NonNullable<In>> = o => o as Out, alt?: Construct<Out>): Optional<Out> {\n return isNotEmpty(o) ? ofConstruct(f, o) : ofConstruct(alt, o);\n}\n"],"mappings":";;;;;;;;;;AAMO,SAAS,OAA0B,GAAY,GAAoC,KAAqC;AAC7H,SAAO,OAAO,CAAC,IAAI,YAAY,GAAG,CAAC,IAAI,YAAY,KAAK,CAAC;AAC3D;AAIO,SAAS,QAA2B,GAAY,GAAoC,KAAqC;AAC9H,SAAO,CAAC,OAAO,CAAC,IAAI,YAAY,GAAG,CAAC,IAAI,YAAY,KAAK,CAAC;AAC5D;AAIO,SAAS,UAA6B,GAAiB,GAAoC,KAAqC;AACrI,SAAO,UAAU,CAAC,IAAI,YAAY,GAAG,CAAC,IAAI,YAAY,GAAG;AAC3D;AAKO,SAAS,WAA8B,GAAO,IAAqC,CAAAA,OAAKA,IAAU,KAAqC;AAC5I,SAAO,WAAW,CAAC,IAAI,YAAY,GAAG,CAAC,IAAI,YAAY,KAAK,CAAC;AAC/D;","names":["o"]}
@@ -0,0 +1,24 @@
1
+ import {
2
+ toList
3
+ } from "./chunk-J7XKOXMW.mjs";
4
+ import {
5
+ ifDefined
6
+ } from "./chunk-JSON7A4X.mjs";
7
+
8
+ // src/types/Object.ts
9
+ function entries(subject) {
10
+ return ifDefined(
11
+ subject,
12
+ () => toList([...Object.entries(subject), ...Object.entries(Object.getPrototypeOf(subject))]),
13
+ () => toList()
14
+ );
15
+ }
16
+ function values(subject) {
17
+ return toList([...Object.values(subject), ...Object.values(Object.getPrototypeOf(subject))]);
18
+ }
19
+
20
+ export {
21
+ entries,
22
+ values
23
+ };
24
+ //# sourceMappingURL=chunk-JTGB3TSZ.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/types/Object.ts"],"sourcesContent":["import { List, toList } from './List';\nimport { ifDefined } from '../utils/If';\n\nexport type Entry<T = unknown> = [key: string, value: T];\n\nexport function entries<T = unknown>(subject: { [p: string]: T } | ArrayLike<T>): List<Entry<T>> {\n return ifDefined(\n subject,\n () => toList<Entry<T>>([...Object.entries(subject), ...Object.entries(Object.getPrototypeOf(subject))] as Entry<T>[]),\n () => toList<Entry<T>>()\n );\n}\n\nexport function values<T = unknown>(subject: { [p: string]: T } | ArrayLike<T>): List<T> {\n return toList([...Object.values<T>(subject), ...Object.values<T>(Object.getPrototypeOf(subject))]);\n}\n"],"mappings":";;;;;;;;AAKO,SAAS,QAAqB,SAA4D;AAC/F,SAAO;AAAA,IACL;AAAA,IACA,MAAM,OAAiB,CAAC,GAAG,OAAO,QAAQ,OAAO,GAAG,GAAG,OAAO,QAAQ,OAAO,eAAe,OAAO,CAAC,CAAC,CAAe;AAAA,IACpH,MAAM,OAAiB;AAAA,EACzB;AACF;AAEO,SAAS,OAAoB,SAAqD;AACvF,SAAO,OAAO,CAAC,GAAG,OAAO,OAAU,OAAO,GAAG,GAAG,OAAO,OAAU,OAAO,eAAe,OAAO,CAAC,CAAC,CAAC;AACnG;","names":[]}
@@ -1,12 +1,18 @@
1
1
  import {
2
- Enum,
3
- kebab,
4
- text,
2
+ text
3
+ } from "./chunk-FHW5K2RR.mjs";
4
+ import {
5
+ Enum
6
+ } from "./chunk-UNHWYQ54.mjs";
7
+ import {
5
8
  toList
6
- } from "./chunk-PFAEQQXA.mjs";
9
+ } from "./chunk-J7XKOXMW.mjs";
10
+ import {
11
+ kebab
12
+ } from "./chunk-45GNHDKA.mjs";
7
13
  import {
8
14
  isString
9
- } from "./chunk-UWNXWKBU.mjs";
15
+ } from "./chunk-DEJ7A5PY.mjs";
10
16
 
11
17
  // src/process/Scope.ts
12
18
  var Scope = class _Scope extends Enum {
@@ -30,4 +36,4 @@ var Scope = class _Scope extends Enum {
30
36
  export {
31
37
  Scope
32
38
  };
33
- //# sourceMappingURL=chunk-NOMZAVQC.mjs.map
39
+ //# sourceMappingURL=chunk-KRLEHX37.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/process/Scope.ts"],"sourcesContent":["import { Enum } from '../types/Enum';\nimport { text } from '../types/Template';\nimport type { Text } from '../types/Text';\nimport { List, toList } from '../types/List';\nimport { IdName } from '../types/Identity';\nimport { isString } from '../types/Is';\nimport { kebab } from '../types/Text';\n\nexport class Scope extends Enum {\n protected constructor(\n readonly name: string,\n id: Text = text(name).kebab,\n readonly subs: List<Scope> = toList()\n ) {\n super(name, id.toString());\n }\n\n for(item: string | IdName): Scope {\n return new Scope(`${this.name} ${isString(item) ? text(item).title : item.name}`, kebab(`${this.id} ${isString(item) ? item : item.id}`));\n }\n\n combines(...scopes: Scope[]): this {\n this.subs.add(scopes);\n return this;\n }\n\n expand(): List<Scope> {\n return this.subs\n .flatMap(s => s.expand())\n .add(this)\n .distinct();\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;AAQO,IAAM,QAAN,MAAM,eAAc,KAAK;AAAA,EACpB,YACC,MACT,KAAW,KAAK,IAAI,EAAE,OACb,OAAoB,OAAO,GACpC;AACA,UAAM,MAAM,GAAG,SAAS,CAAC;AAJhB;AAEA;AAAA,EAGX;AAAA,EAEA,IAAI,MAA8B;AAChC,WAAO,IAAI,OAAM,GAAG,KAAK,IAAI,IAAI,SAAS,IAAI,IAAI,KAAK,IAAI,EAAE,QAAQ,KAAK,IAAI,IAAI,MAAM,GAAG,KAAK,EAAE,IAAI,SAAS,IAAI,IAAI,OAAO,KAAK,EAAE,EAAE,CAAC;AAAA,EAC1I;AAAA,EAEA,YAAY,QAAuB;AACjC,SAAK,KAAK,IAAI,MAAM;AACpB,WAAO;AAAA,EACT;AAAA,EAEA,SAAsB;AACpB,WAAO,KAAK,KACT,QAAQ,OAAK,EAAE,OAAO,CAAC,EACvB,IAAI,IAAI,EACR,SAAS;AAAA,EACd;AACF;","names":[]}
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  Enum
3
- } from "./chunk-PFAEQQXA.mjs";
3
+ } from "./chunk-UNHWYQ54.mjs";
4
4
 
5
5
  // src/http/HttpVerb.ts
6
6
  var HttpVerb = class _HttpVerb extends Enum {
@@ -17,4 +17,4 @@ var HttpVerb = class _HttpVerb extends Enum {
17
17
  export {
18
18
  HttpVerb
19
19
  };
20
- //# sourceMappingURL=chunk-H7NDGISC.mjs.map
20
+ //# sourceMappingURL=chunk-LAR7AT6R.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/http/HttpVerb.ts"],"sourcesContent":["import { Enum } from '../types/Enum';\n\nexport class HttpVerb extends Enum {\n static Get = new HttpVerb('Get');\n static Put = new HttpVerb('Put');\n static Patch = new HttpVerb('Patch');\n static Post = new HttpVerb('Post');\n static Delete = new HttpVerb('Delete');\n\n constructor(name: string) {\n super(name, name.toLowerCase(), name.toUpperCase());\n }\n}\n"],"mappings":";;;;;AAEO,IAAM,WAAN,MAAM,kBAAiB,KAAK;AAAA,EACjC,OAAO,MAAM,IAAI,UAAS,KAAK;AAAA,EAC/B,OAAO,MAAM,IAAI,UAAS,KAAK;AAAA,EAC/B,OAAO,QAAQ,IAAI,UAAS,OAAO;AAAA,EACnC,OAAO,OAAO,IAAI,UAAS,MAAM;AAAA,EACjC,OAAO,SAAS,IAAI,UAAS,QAAQ;AAAA,EAErC,YAAY,MAAc;AACxB,UAAM,MAAM,KAAK,YAAY,GAAG,KAAK,YAAY,CAAC;AAAA,EACpD;AACF;","names":[]}
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  isString
3
- } from "./chunk-UWNXWKBU.mjs";
3
+ } from "./chunk-DEJ7A5PY.mjs";
4
4
 
5
5
  // src/types/Uuid.ts
6
6
  import { v4 as uuid } from "uuid";
@@ -12,4 +12,4 @@ export {
12
12
  isUuid,
13
13
  toUuid
14
14
  };
15
- //# sourceMappingURL=chunk-OXVJLJIE.mjs.map
15
+ //# sourceMappingURL=chunk-LXQQ5N6S.mjs.map
@@ -0,0 +1,40 @@
1
+ import {
2
+ text
3
+ } from "./chunk-FHW5K2RR.mjs";
4
+ import {
5
+ Enum
6
+ } from "./chunk-UNHWYQ54.mjs";
7
+ import {
8
+ asString
9
+ } from "./chunk-45GNHDKA.mjs";
10
+ import {
11
+ isDefined
12
+ } from "./chunk-DEJ7A5PY.mjs";
13
+
14
+ // src/types/Exception.ts
15
+ var Exception = class _Exception extends Enum {
16
+ constructor(message, id, reason) {
17
+ super(message, id ?? text(message).pascal.toString());
18
+ this.message = message;
19
+ this.reason = reason;
20
+ }
21
+ static AlreadyExists = new _Exception("Subject already exists");
22
+ static DoesNotExist = new _Exception("Does not exist");
23
+ static IsMissingId = new _Exception("Subject is missing an id");
24
+ static IsNotImplemented = new _Exception("Is not implemented");
25
+ static IsNotValid = new _Exception("Is not valid");
26
+ static Unknown = new _Exception("Unknown error");
27
+ static CouldNotExecute = (target) => new _Exception(`Could not execute ${target}.`, "CouldNotExecute");
28
+ static CouldNotValidate = (target) => new _Exception(`Could not validate ${target}.`, "CouldNotValidate");
29
+ static EnvironmentVariableNotFound = (variable) => new _Exception(`Environment variable ${text(variable).upper} could not be found.`, "EnvironmentVariableNotFound");
30
+ because = (reason) => new _Exception(this.message, this.id, reason);
31
+ };
32
+ var isException = (e, t) => e instanceof Exception && (isDefined(t) ? e.equals(asString(t)) : true);
33
+ var isDoesNotExist = (e) => e instanceof Exception && Exception.DoesNotExist.equals(e);
34
+
35
+ export {
36
+ Exception,
37
+ isException,
38
+ isDoesNotExist
39
+ };
40
+ //# sourceMappingURL=chunk-LYAPQ4QZ.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/types/Exception.ts"],"sourcesContent":["import { asString, Text } from './Text';\nimport { Enum } from './Enum';\nimport { isDefined } from './Is';\nimport { Id } from './Id';\nimport { text } from './Template';\n\nexport class Exception extends Enum {\n static readonly AlreadyExists = new Exception('Subject already exists');\n static readonly DoesNotExist = new Exception('Does not exist');\n static readonly IsMissingId = new Exception('Subject is missing an id');\n static readonly IsNotImplemented = new Exception('Is not implemented');\n static readonly IsNotValid = new Exception('Is not valid');\n static readonly Unknown = new Exception('Unknown error');\n\n constructor(\n readonly message: string,\n id?: Id,\n readonly reason?: Text\n ) {\n super(message, id ?? text(message).pascal.toString());\n }\n\n static readonly CouldNotExecute = (target: Text): Exception => new Exception(`Could not execute ${target}.`, 'CouldNotExecute');\n\n static readonly CouldNotValidate = (target: Text): Exception => new Exception(`Could not validate ${target}.`, 'CouldNotValidate');\n\n static readonly EnvironmentVariableNotFound = (variable: Text): Exception =>\n new Exception(`Environment variable ${text(variable).upper} could not be found.`, 'EnvironmentVariableNotFound');\n\n because = (reason: Text): Exception => new Exception(this.message, this.id, reason);\n}\n\nexport const isException = (e?: unknown, t?: Text): e is Exception => e instanceof Exception && (isDefined(t) ? e.equals(asString(t)) : true);\nexport const isDoesNotExist = (e?: unknown): e is Exception => e instanceof Exception && Exception.DoesNotExist.equals(e);\n"],"mappings":";;;;;;;;;;;;;;AAMO,IAAM,YAAN,MAAM,mBAAkB,KAAK;AAAA,EAQlC,YACW,SACT,IACS,QACT;AACA,UAAM,SAAS,MAAM,KAAK,OAAO,EAAE,OAAO,SAAS,CAAC;AAJ3C;AAEA;AAAA,EAGX;AAAA,EAbA,OAAgB,gBAAgB,IAAI,WAAU,wBAAwB;AAAA,EACtE,OAAgB,eAAe,IAAI,WAAU,gBAAgB;AAAA,EAC7D,OAAgB,cAAc,IAAI,WAAU,0BAA0B;AAAA,EACtE,OAAgB,mBAAmB,IAAI,WAAU,oBAAoB;AAAA,EACrE,OAAgB,aAAa,IAAI,WAAU,cAAc;AAAA,EACzD,OAAgB,UAAU,IAAI,WAAU,eAAe;AAAA,EAUvD,OAAgB,kBAAkB,CAAC,WAA4B,IAAI,WAAU,qBAAqB,MAAM,KAAK,iBAAiB;AAAA,EAE9H,OAAgB,mBAAmB,CAAC,WAA4B,IAAI,WAAU,sBAAsB,MAAM,KAAK,kBAAkB;AAAA,EAEjI,OAAgB,8BAA8B,CAAC,aAC7C,IAAI,WAAU,wBAAwB,KAAK,QAAQ,EAAE,KAAK,wBAAwB,6BAA6B;AAAA,EAEjH,UAAU,CAAC,WAA4B,IAAI,WAAU,KAAK,SAAS,KAAK,IAAI,MAAM;AACpF;AAEO,IAAM,cAAc,CAAC,GAAa,MAA6B,aAAa,cAAc,UAAU,CAAC,IAAI,EAAE,OAAO,SAAS,CAAC,CAAC,IAAI;AACjI,IAAM,iBAAiB,CAAC,MAAgC,aAAa,aAAa,UAAU,aAAa,OAAO,CAAC;","names":[]}
@@ -1,10 +1,12 @@
1
1
  import {
2
2
  toPageList
3
- } from "./chunk-57QV3J5N.mjs";
3
+ } from "./chunk-A62OK7XE.mjs";
4
+ import {
5
+ choose
6
+ } from "./chunk-ARZEQQW5.mjs";
4
7
  import {
5
- choose,
6
8
  resolve
7
- } from "./chunk-PFAEQQXA.mjs";
9
+ } from "./chunk-USGZFNWP.mjs";
8
10
 
9
11
  // src/process/Search.ts
10
12
  var Search = class {
@@ -43,4 +45,4 @@ var Search = class {
43
45
  export {
44
46
  Search
45
47
  };
46
- //# sourceMappingURL=chunk-QRLGQY7M.mjs.map
48
+ //# sourceMappingURL=chunk-M47EOYDK.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/process/Search.ts"],"sourcesContent":["import { FetchOptions } from '../types/Gateway';\nimport { Repository } from '../types/Repository';\nimport { PageList, toPageList } from '../types/PageList';\nimport { Id, Key } from '../types/Id';\nimport { List } from '../types/List';\nimport { Req } from '../resources/Req';\nimport { JsonValue } from '../types/Json';\nimport { choose } from '../types/Case';\nimport { resolve } from '../utils/Promise';\n\nexport class Search<T, Options = FetchOptions> {\n constructor(protected repo: Repository<T, Options>) {}\n\n all(options?: Options): Promise<PageList<T>> {\n return this.repo.all(options);\n }\n\n byId(id: Id): Promise<T> {\n return this.repo.byId(id);\n }\n\n byIds(...ids: Id[]): Promise<List<T>> {\n return this.repo.byIds(...ids);\n }\n\n byKey(key: Key, options?: Options): Promise<PageList<T>> {\n return this.repo.byKey(key, options);\n }\n\n query({ query, skip, take }: Req): Promise<PageList<T>> {\n return this.search(query, { skip, take } as Options);\n }\n\n search(query: JsonValue, options?: Options): Promise<PageList<T>> {\n return choose(query)\n .is.not.empty(\n q => q,\n q => this.repo.search(q, options)\n )\n .else(() => resolve(toPageList<T>()));\n }\n\n filter(options?: Options): Promise<PageList<T>> {\n return this.repo.filter(options);\n }\n\n exists(id: Id): Promise<boolean> {\n return this.repo.exists(id);\n }\n}\n"],"mappings":";;;;;;;;;;;AAUO,IAAM,SAAN,MAAwC;AAAA,EAC7C,YAAsB,MAA8B;AAA9B;AAAA,EAA+B;AAAA,EAErD,IAAI,SAAyC;AAC3C,WAAO,KAAK,KAAK,IAAI,OAAO;AAAA,EAC9B;AAAA,EAEA,KAAK,IAAoB;AACvB,WAAO,KAAK,KAAK,KAAK,EAAE;AAAA,EAC1B;AAAA,EAEA,SAAS,KAA6B;AACpC,WAAO,KAAK,KAAK,MAAM,GAAG,GAAG;AAAA,EAC/B;AAAA,EAEA,MAAM,KAAU,SAAyC;AACvD,WAAO,KAAK,KAAK,MAAM,KAAK,OAAO;AAAA,EACrC;AAAA,EAEA,MAAM,EAAE,OAAO,MAAM,KAAK,GAA8B;AACtD,WAAO,KAAK,OAAO,OAAO,EAAE,MAAM,KAAK,CAAY;AAAA,EACrD;AAAA,EAEA,OAAO,OAAkB,SAAyC;AAChE,WAAO,OAAO,KAAK,EAChB,GAAG,IAAI;AAAA,MACN,OAAK;AAAA,MACL,OAAK,KAAK,KAAK,OAAO,GAAG,OAAO;AAAA,IAClC,EACC,KAAK,MAAM,QAAQ,WAAc,CAAC,CAAC;AAAA,EACxC;AAAA,EAEA,OAAO,SAAyC;AAC9C,WAAO,KAAK,KAAK,OAAO,OAAO;AAAA,EACjC;AAAA,EAEA,OAAO,IAA0B;AAC/B,WAAO,KAAK,KAAK,OAAO,EAAE;AAAA,EAC5B;AACF;","names":[]}
@@ -1,16 +1,18 @@
1
1
  import {
2
2
  cacheAge
3
- } from "./chunk-7Z3YQCXR.mjs";
3
+ } from "./chunk-NYYHRFBW.mjs";
4
4
  import {
5
5
  entries
6
- } from "./chunk-PFAEQQXA.mjs";
6
+ } from "./chunk-JTGB3TSZ.mjs";
7
7
  import {
8
8
  ifDefined
9
- } from "./chunk-PWCGCUT7.mjs";
9
+ } from "./chunk-JSON7A4X.mjs";
10
10
  import {
11
- isNumber,
12
11
  on
13
- } from "./chunk-UWNXWKBU.mjs";
12
+ } from "./chunk-ZPNFXK7Y.mjs";
13
+ import {
14
+ isNumber
15
+ } from "./chunk-DEJ7A5PY.mjs";
14
16
 
15
17
  // src/http/CacheControl.ts
16
18
  var CacheControl = class _CacheControl {
@@ -43,4 +45,4 @@ var CacheControl = class _CacheControl {
43
45
  export {
44
46
  CacheControl
45
47
  };
46
- //# sourceMappingURL=chunk-CJDDGEEK.mjs.map
48
+ //# sourceMappingURL=chunk-NFWIUPZU.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/http/CacheControl.ts"],"sourcesContent":["import { cacheAge, CacheAge } from '../types/CacheAge';\nimport { on } from '../types/Constructor';\nimport { entries } from '../types/Object';\nimport { ifDefined } from '../utils/If';\nimport { isNumber } from '../types/Is';\n\nexport class CacheControl {\n name = 'Cache-Control';\n\n protected constructor(\n readonly enabled = true,\n private directives: Record<string, boolean | CacheAge | undefined> = {}\n ) {}\n\n static disabled = () => new CacheControl(false);\n\n static OneSecond = () => new CacheControl().maxAge(1).staleWhileRevalidate(1);\n\n static fiveSeconds = () => new CacheControl().maxAge(5).staleWhileRevalidate(5);\n\n static tenSeconds = () => new CacheControl().maxAge(10).staleWhileRevalidate(10);\n\n static thirtySeconds = () => new CacheControl().maxAge(30).staleWhileRevalidate(30);\n\n static sixtySeconds = () => new CacheControl().maxAge(60).staleWhileRevalidate(60);\n\n static custom = (maxAge?: CacheAge, staleWhileRevalidate?: CacheAge) => new CacheControl().maxAge(maxAge).staleWhileRevalidate(staleWhileRevalidate);\n\n readonly maxAge = (ca?: CacheAge): this => on(this, t => (t.directives['max-age'] = ca));\n\n readonly sharedMaxAge = (ca?: CacheAge): this => on(this, t => (t.directives['s-maxage'] = ca));\n\n readonly noCache = (a?: boolean): this => on(this, t => (t.directives['no-cache'] = a));\n\n readonly mustRevalidate = (a?: boolean): this => on(this, t => (t.directives['must-revalidate'] = a));\n\n readonly private = (a?: boolean): this => on(this, t => (t.directives['private'] = a));\n\n readonly public = (a?: boolean): this => on(this, t => (t.directives['public'] = a));\n\n readonly immutable = (a?: boolean): this => on(this, t => (t.directives['immutable'] = a));\n\n readonly staleWhileRevalidate = (ca?: CacheAge): this => on(this, t => (t.directives['stale-while-revalidate'] = ca));\n\n value = (): string => this.toString();\n\n toString(): string {\n return entries(this.directives)\n .mapDefined(([k, v]) => ifDefined(v, isNumber(v) ? `${k}=${cacheAge.toSeconds(v)}` : k))\n .join(',');\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;AAMO,IAAM,eAAN,MAAM,cAAa;AAAA,EAGd,YACC,UAAU,MACX,aAA6D,CAAC,GACtE;AAFS;AACD;AAAA,EACP;AAAA,EALH,OAAO;AAAA,EAOP,OAAO,WAAW,MAAM,IAAI,cAAa,KAAK;AAAA,EAE9C,OAAO,YAAY,MAAM,IAAI,cAAa,EAAE,OAAO,CAAC,EAAE,qBAAqB,CAAC;AAAA,EAE5E,OAAO,cAAc,MAAM,IAAI,cAAa,EAAE,OAAO,CAAC,EAAE,qBAAqB,CAAC;AAAA,EAE9E,OAAO,aAAa,MAAM,IAAI,cAAa,EAAE,OAAO,EAAE,EAAE,qBAAqB,EAAE;AAAA,EAE/E,OAAO,gBAAgB,MAAM,IAAI,cAAa,EAAE,OAAO,EAAE,EAAE,qBAAqB,EAAE;AAAA,EAElF,OAAO,eAAe,MAAM,IAAI,cAAa,EAAE,OAAO,EAAE,EAAE,qBAAqB,EAAE;AAAA,EAEjF,OAAO,SAAS,CAAC,QAAmB,yBAAoC,IAAI,cAAa,EAAE,OAAO,MAAM,EAAE,qBAAqB,oBAAoB;AAAA,EAE1I,SAAS,CAAC,OAAwB,GAAG,MAAM,OAAM,EAAE,WAAW,SAAS,IAAI,EAAG;AAAA,EAE9E,eAAe,CAAC,OAAwB,GAAG,MAAM,OAAM,EAAE,WAAW,UAAU,IAAI,EAAG;AAAA,EAErF,UAAU,CAAC,MAAsB,GAAG,MAAM,OAAM,EAAE,WAAW,UAAU,IAAI,CAAE;AAAA,EAE7E,iBAAiB,CAAC,MAAsB,GAAG,MAAM,OAAM,EAAE,WAAW,iBAAiB,IAAI,CAAE;AAAA,EAE3F,UAAU,CAAC,MAAsB,GAAG,MAAM,OAAM,EAAE,WAAW,SAAS,IAAI,CAAE;AAAA,EAE5E,SAAS,CAAC,MAAsB,GAAG,MAAM,OAAM,EAAE,WAAW,QAAQ,IAAI,CAAE;AAAA,EAE1E,YAAY,CAAC,MAAsB,GAAG,MAAM,OAAM,EAAE,WAAW,WAAW,IAAI,CAAE;AAAA,EAEhF,uBAAuB,CAAC,OAAwB,GAAG,MAAM,OAAM,EAAE,WAAW,wBAAwB,IAAI,EAAG;AAAA,EAEpH,QAAQ,MAAc,KAAK,SAAS;AAAA,EAEpC,WAAmB;AACjB,WAAO,QAAQ,KAAK,UAAU,EAC3B,WAAW,CAAC,CAAC,GAAG,CAAC,MAAM,UAAU,GAAG,SAAS,CAAC,IAAI,GAAG,CAAC,IAAI,SAAS,UAAU,CAAC,CAAC,KAAK,CAAC,CAAC,EACtF,KAAK,GAAG;AAAA,EACb;AACF;","names":[]}
@@ -1,10 +1,12 @@
1
1
  import {
2
2
  asNumber
3
- } from "./chunk-RFG5LNDQ.mjs";
3
+ } from "./chunk-JBJ2YERG.mjs";
4
4
  import {
5
- asString,
6
5
  choose
7
- } from "./chunk-PFAEQQXA.mjs";
6
+ } from "./chunk-ARZEQQW5.mjs";
7
+ import {
8
+ asString
9
+ } from "./chunk-45GNHDKA.mjs";
8
10
 
9
11
  // src/types/CacheAge.ts
10
12
  var ageNumber = (s) => asNumber(s.replace(/[a-z]/g, ""));
@@ -46,4 +48,4 @@ var cacheAge = {
46
48
  export {
47
49
  cacheAge
48
50
  };
49
- //# sourceMappingURL=chunk-7Z3YQCXR.mjs.map
51
+ //# sourceMappingURL=chunk-NYYHRFBW.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/types/CacheAge.ts"],"sourcesContent":["import { asNumber } from './Number';\nimport { choose } from './Case';\nimport { asString } from './Text';\n\nexport type CacheAge = `${number}${'ms' | 's' | 'm' | 'h' | 'd'}` | number;\n\nconst ageNumber = (s: string): number => asNumber(s.replace(/[a-z]/g, ''));\n\nexport const cacheAge = {\n toMilliseconds: (ca: CacheAge): number =>\n choose(asString(ca))\n .case(\n c => c.endsWith('ms'),\n c => ageNumber(c)\n )\n .case(\n c => c.endsWith('s'),\n c => ageNumber(c) * 1000\n )\n .case(\n c => c.endsWith('m'),\n c => ageNumber(c) * 60 * 1000\n )\n .case(\n c => c.endsWith('h'),\n c => ageNumber(c) * 3600 * 1000\n )\n .case(\n c => c.endsWith('d'),\n c => ageNumber(c) * 24 * 3600 * 1000\n )\n .else(ca as number),\n\n toSeconds: (ca: CacheAge): number =>\n choose(asString(ca))\n .case(\n c => c.endsWith('ms'),\n c => ageNumber(c) / 1000\n )\n .case(\n c => c.endsWith('s'),\n c => ageNumber(c)\n )\n .case(\n c => c.endsWith('m'),\n c => ageNumber(c) * 60\n )\n .case(\n c => c.endsWith('h'),\n c => ageNumber(c) * 3600\n )\n .case(\n c => c.endsWith('d'),\n c => ageNumber(c) * 24 * 3600\n )\n .else(ca as number),\n};\n"],"mappings":";;;;;;;;;;;AAMA,IAAM,YAAY,CAAC,MAAsB,SAAS,EAAE,QAAQ,UAAU,EAAE,CAAC;AAElE,IAAM,WAAW;AAAA,EACtB,gBAAgB,CAAC,OACf,OAAO,SAAS,EAAE,CAAC,EAChB;AAAA,IACC,OAAK,EAAE,SAAS,IAAI;AAAA,IACpB,OAAK,UAAU,CAAC;AAAA,EAClB,EACC;AAAA,IACC,OAAK,EAAE,SAAS,GAAG;AAAA,IACnB,OAAK,UAAU,CAAC,IAAI;AAAA,EACtB,EACC;AAAA,IACC,OAAK,EAAE,SAAS,GAAG;AAAA,IACnB,OAAK,UAAU,CAAC,IAAI,KAAK;AAAA,EAC3B,EACC;AAAA,IACC,OAAK,EAAE,SAAS,GAAG;AAAA,IACnB,OAAK,UAAU,CAAC,IAAI,OAAO;AAAA,EAC7B,EACC;AAAA,IACC,OAAK,EAAE,SAAS,GAAG;AAAA,IACnB,OAAK,UAAU,CAAC,IAAI,KAAK,OAAO;AAAA,EAClC,EACC,KAAK,EAAY;AAAA,EAEtB,WAAW,CAAC,OACV,OAAO,SAAS,EAAE,CAAC,EAChB;AAAA,IACC,OAAK,EAAE,SAAS,IAAI;AAAA,IACpB,OAAK,UAAU,CAAC,IAAI;AAAA,EACtB,EACC;AAAA,IACC,OAAK,EAAE,SAAS,GAAG;AAAA,IACnB,OAAK,UAAU,CAAC;AAAA,EAClB,EACC;AAAA,IACC,OAAK,EAAE,SAAS,GAAG;AAAA,IACnB,OAAK,UAAU,CAAC,IAAI;AAAA,EACtB,EACC;AAAA,IACC,OAAK,EAAE,SAAS,GAAG;AAAA,IACnB,OAAK,UAAU,CAAC,IAAI;AAAA,EACtB,EACC;AAAA,IACC,OAAK,EAAE,SAAS,GAAG;AAAA,IACnB,OAAK,UAAU,CAAC,IAAI,KAAK;AAAA,EAC3B,EACC,KAAK,EAAY;AACxB;","names":[]}
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  isA
3
- } from "./chunk-Q5ATL34D.mjs";
3
+ } from "./chunk-ZHXKBOK2.mjs";
4
4
 
5
5
  // src/types/Validatable.ts
6
6
  var isValidatable = (v) => isA(v, "isValid");
@@ -8,4 +8,4 @@ var isValidatable = (v) => isA(v, "isValid");
8
8
  export {
9
9
  isValidatable
10
10
  };
11
- //# sourceMappingURL=chunk-4ROYPQPC.mjs.map
11
+ //# sourceMappingURL=chunk-OFGI5FLG.mjs.map