@thisisagile/easy 17.18.5 → 17.18.7

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 (199) hide show
  1. package/dist/{chunk-S33RXRXR.mjs → chunk-2VL6B3UJ.mjs} +9 -9
  2. package/dist/{chunk-MLAU6FXE.mjs → chunk-3E3YJR6L.mjs} +5 -5
  3. package/dist/{chunk-SEWX25XP.mjs → chunk-3TI2Y4HN.mjs} +2 -2
  4. package/dist/{chunk-MCCIBDEH.mjs → chunk-3Y7X2UQ6.mjs} +3 -3
  5. package/dist/{chunk-ZZ65BSDI.mjs → chunk-4IH3OE4Y.mjs} +3 -3
  6. package/dist/{chunk-VAT2WY5Y.mjs → chunk-4REZO4ZW.mjs} +3 -3
  7. package/dist/{chunk-DF6AC3AA.mjs → chunk-55KHMBCA.mjs} +2 -2
  8. package/dist/{chunk-6ILWOSEE.mjs → chunk-56HLMAA4.mjs} +16 -13
  9. package/dist/chunk-56HLMAA4.mjs.map +1 -0
  10. package/dist/{chunk-H2762RTS.mjs → chunk-5FX7PFZG.mjs} +3 -5
  11. package/dist/{chunk-H2762RTS.mjs.map → chunk-5FX7PFZG.mjs.map} +1 -1
  12. package/dist/{chunk-D5KAY6YW.mjs → chunk-5HLBJ56K.mjs} +9 -9
  13. package/dist/{chunk-SSQRH66L.mjs → chunk-6VTDQIEE.mjs} +3 -3
  14. package/dist/{chunk-OEL3QKBX.mjs → chunk-744LD44R.mjs} +4 -4
  15. package/dist/{chunk-Q3WMGUO2.mjs → chunk-BGSOJQAU.mjs} +2 -2
  16. package/dist/{chunk-55SDDPJZ.mjs → chunk-BLB72GKW.mjs} +2 -2
  17. package/dist/{chunk-A7C3XND3.mjs → chunk-CCJAHP7Z.mjs} +34 -8
  18. package/dist/chunk-CCJAHP7Z.mjs.map +1 -0
  19. package/dist/{chunk-Q56PAJ4T.mjs → chunk-COJ6DGFZ.mjs} +2 -2
  20. package/dist/{chunk-T3CJ5MZK.mjs → chunk-DIJQ6NKV.mjs} +4 -4
  21. package/dist/{chunk-OYQIOBV7.mjs → chunk-DK6TQHF3.mjs} +3 -3
  22. package/dist/{chunk-6LGUOSH3.mjs → chunk-DKTEKZ4O.mjs} +4 -4
  23. package/dist/{chunk-TU7SVDUE.mjs → chunk-DLJOM2QT.mjs} +4 -4
  24. package/dist/{chunk-WIBQ7LKH.mjs → chunk-EL4LXAN7.mjs} +3 -3
  25. package/dist/{chunk-6TR4LD27.mjs → chunk-FT66ANA7.mjs} +6 -6
  26. package/dist/{chunk-KD36HS3N.mjs → chunk-H27UMLDT.mjs} +2 -2
  27. package/dist/{chunk-3AB2A6WF.mjs → chunk-HCIL5KUZ.mjs} +3 -3
  28. package/dist/{chunk-BU6LSSQP.mjs → chunk-HN6COYSV.mjs} +2 -2
  29. package/dist/{chunk-WTFW6DLP.mjs → chunk-HTKGQGMZ.mjs} +3 -3
  30. package/dist/{chunk-KTENM2OG.mjs → chunk-IANSP3JJ.mjs} +3 -3
  31. package/dist/{chunk-NKSCRMWF.mjs → chunk-IRUM7VWE.mjs} +2 -2
  32. package/dist/{chunk-7JFDA4UI.mjs → chunk-KFSHBLFI.mjs} +2 -2
  33. package/dist/{chunk-LJPESIYZ.mjs → chunk-KXOBVHGI.mjs} +3 -3
  34. package/dist/{chunk-NCEWAKOZ.mjs → chunk-KYQULNU4.mjs} +2 -2
  35. package/dist/{chunk-MMGVG4ZW.mjs → chunk-LXCI7XE5.mjs} +3 -3
  36. package/dist/{chunk-IABTCMHB.mjs → chunk-M6LRND3Z.mjs} +4 -4
  37. package/dist/{chunk-5HENJTR6.mjs → chunk-PKILDKWU.mjs} +2 -2
  38. package/dist/{chunk-FD7AIHNO.mjs → chunk-PWTOW5KS.mjs} +2 -2
  39. package/dist/{chunk-ROJDO7ZE.mjs → chunk-QZUUK6PI.mjs} +4 -4
  40. package/dist/{chunk-VORW47OU.mjs → chunk-R3LDH6ZW.mjs} +2 -2
  41. package/dist/{chunk-3Q26WV4F.mjs → chunk-SCNDLTL6.mjs} +9 -9
  42. package/dist/chunk-SCNDLTL6.mjs.map +1 -0
  43. package/dist/{chunk-K3FRMONT.mjs → chunk-SOXQOCCH.mjs} +6 -6
  44. package/dist/{chunk-W7D4GZRE.mjs → chunk-TZZJ3U5V.mjs} +5 -7
  45. package/dist/{chunk-W7D4GZRE.mjs.map → chunk-TZZJ3U5V.mjs.map} +1 -1
  46. package/dist/{chunk-LXENNRRB.mjs → chunk-VCSOI44U.mjs} +2 -2
  47. package/dist/{chunk-JQQGQCYH.mjs → chunk-YDC3NPU4.mjs} +3 -5
  48. package/dist/{chunk-JQQGQCYH.mjs.map → chunk-YDC3NPU4.mjs.map} +1 -1
  49. package/dist/{chunk-MBXA7ZCQ.mjs → chunk-YDEAOY7R.mjs} +2 -2
  50. package/dist/{chunk-NDCIZJXB.mjs → chunk-YGKMN5UC.mjs} +2 -2
  51. package/dist/{chunk-KDK2E7CA.mjs → chunk-YH4CTU3I.mjs} +3 -3
  52. package/dist/{chunk-P2GDPTZ3.mjs → chunk-YQZVVYMQ.mjs} +2 -2
  53. package/dist/data/Condition.mjs +4 -5
  54. package/dist/data/Database.mjs +5 -6
  55. package/dist/data/Field.mjs +4 -5
  56. package/dist/data/Field.mjs.map +1 -1
  57. package/dist/data/InMemoryGateway.mjs +13 -14
  58. package/dist/data/InMemoryGateway.mjs.map +1 -1
  59. package/dist/domain/Audit.mjs +17 -18
  60. package/dist/domain/Child.mjs +14 -15
  61. package/dist/domain/Child.mjs.map +1 -1
  62. package/dist/domain/DateTime.d.ts +4 -3
  63. package/dist/domain/DateTime.mjs +13 -14
  64. package/dist/domain/Entity.mjs +17 -18
  65. package/dist/domain/Entity.mjs.map +1 -1
  66. package/dist/domain/Repo.mjs +13 -14
  67. package/dist/domain/Repo.mjs.map +1 -1
  68. package/dist/domain/Struct.mjs +13 -14
  69. package/dist/domain/Typo.mjs +12 -13
  70. package/dist/domain/Typo.mjs.map +1 -1
  71. package/dist/http/CacheControl.mjs +13 -14
  72. package/dist/http/CacheControl.mjs.map +1 -1
  73. package/dist/http/ContentType.mjs +5 -6
  74. package/dist/http/HttpStatus.mjs +5 -6
  75. package/dist/http/HttpVerb.mjs +5 -6
  76. package/dist/http/LocalRequestStore.mjs +4 -5
  77. package/dist/http/LocalRequestStore.mjs.map +1 -1
  78. package/dist/http/RequestOptions.mjs +8 -9
  79. package/dist/http/RestResult.mjs +13 -14
  80. package/dist/http/toResponse.mjs +14 -15
  81. package/dist/index.js +35 -24
  82. package/dist/index.js.map +1 -1
  83. package/dist/process/App.mjs +6 -7
  84. package/dist/process/App.mjs.map +1 -1
  85. package/dist/process/Manage.mjs +13 -14
  86. package/dist/process/Manage.mjs.map +1 -1
  87. package/dist/process/Scope.mjs +6 -7
  88. package/dist/process/Search.mjs +13 -14
  89. package/dist/process/UseCase.mjs +5 -6
  90. package/dist/process/UseCase.mjs.map +1 -1
  91. package/dist/resources/Req.mjs +12 -13
  92. package/dist/resources/Req.mjs.map +1 -1
  93. package/dist/services/Api.mjs +21 -22
  94. package/dist/services/ApiGateway.mjs +24 -25
  95. package/dist/services/AxiosProvider.mjs +19 -20
  96. package/dist/services/MappedRouteGateway.mjs +27 -28
  97. package/dist/services/MappedRouteGateway.mjs.map +1 -1
  98. package/dist/services/RouteGateway.mjs +25 -26
  99. package/dist/services/ViewRouteGateway.mjs +28 -29
  100. package/dist/services/ViewRouteGateway.mjs.map +1 -1
  101. package/dist/sql/Column.mjs +12 -13
  102. package/dist/sql/Count.mjs +4 -5
  103. package/dist/sql/Delete.mjs +3 -4
  104. package/dist/sql/Insert.mjs +3 -4
  105. package/dist/sql/Select.mjs +3 -4
  106. package/dist/sql/SqlQuery.mjs +2 -3
  107. package/dist/sql/Table.mjs +21 -22
  108. package/dist/sql/Table.mjs.map +1 -1
  109. package/dist/sql/TableGateway.mjs +13 -14
  110. package/dist/sql/TableGateway.mjs.map +1 -1
  111. package/dist/sql/Update.mjs +3 -4
  112. package/dist/types/Cache.mjs +3 -4
  113. package/dist/types/Cache.mjs.map +1 -1
  114. package/dist/types/CacheAge.mjs +13 -14
  115. package/dist/types/Case.mjs +11 -12
  116. package/dist/types/Context.mjs +4 -5
  117. package/dist/types/Enum.mjs +4 -5
  118. package/dist/types/Environment.mjs +4 -5
  119. package/dist/types/Environment.mjs.map +1 -1
  120. package/dist/types/Exception.mjs +6 -7
  121. package/dist/types/Gateway.mjs +8 -9
  122. package/dist/types/IsEqual.mjs +12 -13
  123. package/dist/types/Json.mjs +3 -4
  124. package/dist/types/List.mjs +1 -2
  125. package/dist/types/Meta.mjs +3 -4
  126. package/dist/types/Number.mjs +12 -13
  127. package/dist/types/Object.mjs +2 -3
  128. package/dist/types/PageList.mjs +12 -13
  129. package/dist/types/Parser.mjs +11 -12
  130. package/dist/types/Parser.mjs.map +1 -1
  131. package/dist/types/Repository.mjs +8 -9
  132. package/dist/types/Result.mjs +5 -6
  133. package/dist/types/Results.mjs +6 -7
  134. package/dist/types/Tag.mjs +3 -4
  135. package/dist/types/Tag.mjs.map +1 -1
  136. package/dist/types/Template.mjs +3 -4
  137. package/dist/types/Try.mjs +11 -12
  138. package/dist/types/Uri.mjs +11 -12
  139. package/dist/types/Uri.mjs.map +1 -1
  140. package/dist/utils/If.d.ts +4 -0
  141. package/dist/utils/If.mjs +7 -1
  142. package/dist/utils/Mapper.mjs +5 -6
  143. package/dist/utils/Promise.mjs +2 -3
  144. package/dist/utils/Seconds.mjs +2 -3
  145. package/dist/utils/Sentence.mjs +3 -4
  146. package/dist/utils/Sentence.mjs.map +1 -1
  147. package/dist/utils/View.mjs +15 -16
  148. package/dist/validation/Contraints.mjs +12 -13
  149. package/dist/validation/Validate.mjs +11 -12
  150. package/dist/validation/When.mjs +11 -12
  151. package/package.json +1 -1
  152. package/src/domain/DateTime.ts +22 -12
  153. package/src/utils/If.ts +14 -2
  154. package/src/utils/View.ts +1 -1
  155. package/dist/chunk-3Q26WV4F.mjs.map +0 -1
  156. package/dist/chunk-6ILWOSEE.mjs.map +0 -1
  157. package/dist/chunk-A7C3XND3.mjs.map +0 -1
  158. package/dist/chunk-JSON7A4X.mjs +0 -30
  159. package/dist/chunk-JSON7A4X.mjs.map +0 -1
  160. /package/dist/{chunk-S33RXRXR.mjs.map → chunk-2VL6B3UJ.mjs.map} +0 -0
  161. /package/dist/{chunk-MLAU6FXE.mjs.map → chunk-3E3YJR6L.mjs.map} +0 -0
  162. /package/dist/{chunk-SEWX25XP.mjs.map → chunk-3TI2Y4HN.mjs.map} +0 -0
  163. /package/dist/{chunk-MCCIBDEH.mjs.map → chunk-3Y7X2UQ6.mjs.map} +0 -0
  164. /package/dist/{chunk-ZZ65BSDI.mjs.map → chunk-4IH3OE4Y.mjs.map} +0 -0
  165. /package/dist/{chunk-VAT2WY5Y.mjs.map → chunk-4REZO4ZW.mjs.map} +0 -0
  166. /package/dist/{chunk-DF6AC3AA.mjs.map → chunk-55KHMBCA.mjs.map} +0 -0
  167. /package/dist/{chunk-D5KAY6YW.mjs.map → chunk-5HLBJ56K.mjs.map} +0 -0
  168. /package/dist/{chunk-SSQRH66L.mjs.map → chunk-6VTDQIEE.mjs.map} +0 -0
  169. /package/dist/{chunk-OEL3QKBX.mjs.map → chunk-744LD44R.mjs.map} +0 -0
  170. /package/dist/{chunk-Q3WMGUO2.mjs.map → chunk-BGSOJQAU.mjs.map} +0 -0
  171. /package/dist/{chunk-55SDDPJZ.mjs.map → chunk-BLB72GKW.mjs.map} +0 -0
  172. /package/dist/{chunk-Q56PAJ4T.mjs.map → chunk-COJ6DGFZ.mjs.map} +0 -0
  173. /package/dist/{chunk-T3CJ5MZK.mjs.map → chunk-DIJQ6NKV.mjs.map} +0 -0
  174. /package/dist/{chunk-OYQIOBV7.mjs.map → chunk-DK6TQHF3.mjs.map} +0 -0
  175. /package/dist/{chunk-6LGUOSH3.mjs.map → chunk-DKTEKZ4O.mjs.map} +0 -0
  176. /package/dist/{chunk-TU7SVDUE.mjs.map → chunk-DLJOM2QT.mjs.map} +0 -0
  177. /package/dist/{chunk-WIBQ7LKH.mjs.map → chunk-EL4LXAN7.mjs.map} +0 -0
  178. /package/dist/{chunk-6TR4LD27.mjs.map → chunk-FT66ANA7.mjs.map} +0 -0
  179. /package/dist/{chunk-KD36HS3N.mjs.map → chunk-H27UMLDT.mjs.map} +0 -0
  180. /package/dist/{chunk-3AB2A6WF.mjs.map → chunk-HCIL5KUZ.mjs.map} +0 -0
  181. /package/dist/{chunk-BU6LSSQP.mjs.map → chunk-HN6COYSV.mjs.map} +0 -0
  182. /package/dist/{chunk-WTFW6DLP.mjs.map → chunk-HTKGQGMZ.mjs.map} +0 -0
  183. /package/dist/{chunk-KTENM2OG.mjs.map → chunk-IANSP3JJ.mjs.map} +0 -0
  184. /package/dist/{chunk-NKSCRMWF.mjs.map → chunk-IRUM7VWE.mjs.map} +0 -0
  185. /package/dist/{chunk-7JFDA4UI.mjs.map → chunk-KFSHBLFI.mjs.map} +0 -0
  186. /package/dist/{chunk-LJPESIYZ.mjs.map → chunk-KXOBVHGI.mjs.map} +0 -0
  187. /package/dist/{chunk-NCEWAKOZ.mjs.map → chunk-KYQULNU4.mjs.map} +0 -0
  188. /package/dist/{chunk-MMGVG4ZW.mjs.map → chunk-LXCI7XE5.mjs.map} +0 -0
  189. /package/dist/{chunk-IABTCMHB.mjs.map → chunk-M6LRND3Z.mjs.map} +0 -0
  190. /package/dist/{chunk-5HENJTR6.mjs.map → chunk-PKILDKWU.mjs.map} +0 -0
  191. /package/dist/{chunk-FD7AIHNO.mjs.map → chunk-PWTOW5KS.mjs.map} +0 -0
  192. /package/dist/{chunk-ROJDO7ZE.mjs.map → chunk-QZUUK6PI.mjs.map} +0 -0
  193. /package/dist/{chunk-VORW47OU.mjs.map → chunk-R3LDH6ZW.mjs.map} +0 -0
  194. /package/dist/{chunk-K3FRMONT.mjs.map → chunk-SOXQOCCH.mjs.map} +0 -0
  195. /package/dist/{chunk-LXENNRRB.mjs.map → chunk-VCSOI44U.mjs.map} +0 -0
  196. /package/dist/{chunk-MBXA7ZCQ.mjs.map → chunk-YDEAOY7R.mjs.map} +0 -0
  197. /package/dist/{chunk-NDCIZJXB.mjs.map → chunk-YGKMN5UC.mjs.map} +0 -0
  198. /package/dist/{chunk-KDK2E7CA.mjs.map → chunk-YH4CTU3I.mjs.map} +0 -0
  199. /package/dist/{chunk-P2GDPTZ3.mjs.map → chunk-YQZVVYMQ.mjs.map} +0 -0
@@ -1,23 +1,22 @@
1
1
  import {
2
2
  isRestResult,
3
3
  rest
4
- } from "../chunk-6TR4LD27.mjs";
5
- import "../chunk-KD36HS3N.mjs";
4
+ } from "../chunk-FT66ANA7.mjs";
5
+ import "../chunk-H27UMLDT.mjs";
6
6
  import "../chunk-UYDZZAEK.mjs";
7
- import "../chunk-D5KAY6YW.mjs";
7
+ import "../chunk-5HLBJ56K.mjs";
8
8
  import "../chunk-OFGI5FLG.mjs";
9
- import "../chunk-NCEWAKOZ.mjs";
10
- import "../chunk-Q3WMGUO2.mjs";
11
- import "../chunk-5HENJTR6.mjs";
12
- import "../chunk-LJPESIYZ.mjs";
9
+ import "../chunk-KYQULNU4.mjs";
10
+ import "../chunk-BGSOJQAU.mjs";
11
+ import "../chunk-PKILDKWU.mjs";
12
+ import "../chunk-KXOBVHGI.mjs";
13
13
  import "../chunk-WSBULPUZ.mjs";
14
- import "../chunk-NDCIZJXB.mjs";
15
- import "../chunk-MCCIBDEH.mjs";
16
- import "../chunk-3AB2A6WF.mjs";
17
- import "../chunk-WTFW6DLP.mjs";
18
- import "../chunk-H2762RTS.mjs";
19
- import "../chunk-A7C3XND3.mjs";
20
- import "../chunk-JSON7A4X.mjs";
14
+ import "../chunk-YGKMN5UC.mjs";
15
+ import "../chunk-3Y7X2UQ6.mjs";
16
+ import "../chunk-HCIL5KUZ.mjs";
17
+ import "../chunk-HTKGQGMZ.mjs";
18
+ import "../chunk-5FX7PFZG.mjs";
19
+ import "../chunk-CCJAHP7Z.mjs";
21
20
  import "../chunk-CO2AFYVD.mjs";
22
21
  import "../chunk-BDA5LB4S.mjs";
23
22
  import "../chunk-SJGQU3OG.mjs";
@@ -1,23 +1,22 @@
1
1
  import {
2
2
  toResponse
3
- } from "../chunk-WIBQ7LKH.mjs";
4
- import "../chunk-6TR4LD27.mjs";
5
- import "../chunk-KD36HS3N.mjs";
3
+ } from "../chunk-EL4LXAN7.mjs";
4
+ import "../chunk-FT66ANA7.mjs";
5
+ import "../chunk-H27UMLDT.mjs";
6
6
  import "../chunk-UYDZZAEK.mjs";
7
- import "../chunk-D5KAY6YW.mjs";
7
+ import "../chunk-5HLBJ56K.mjs";
8
8
  import "../chunk-OFGI5FLG.mjs";
9
- import "../chunk-NCEWAKOZ.mjs";
10
- import "../chunk-Q3WMGUO2.mjs";
11
- import "../chunk-5HENJTR6.mjs";
12
- import "../chunk-LJPESIYZ.mjs";
9
+ import "../chunk-KYQULNU4.mjs";
10
+ import "../chunk-BGSOJQAU.mjs";
11
+ import "../chunk-PKILDKWU.mjs";
12
+ import "../chunk-KXOBVHGI.mjs";
13
13
  import "../chunk-WSBULPUZ.mjs";
14
- import "../chunk-NDCIZJXB.mjs";
15
- import "../chunk-MCCIBDEH.mjs";
16
- import "../chunk-3AB2A6WF.mjs";
17
- import "../chunk-WTFW6DLP.mjs";
18
- import "../chunk-H2762RTS.mjs";
19
- import "../chunk-A7C3XND3.mjs";
20
- import "../chunk-JSON7A4X.mjs";
14
+ import "../chunk-YGKMN5UC.mjs";
15
+ import "../chunk-3Y7X2UQ6.mjs";
16
+ import "../chunk-HCIL5KUZ.mjs";
17
+ import "../chunk-HTKGQGMZ.mjs";
18
+ import "../chunk-5FX7PFZG.mjs";
19
+ import "../chunk-CCJAHP7Z.mjs";
21
20
  import "../chunk-CO2AFYVD.mjs";
22
21
  import "../chunk-BDA5LB4S.mjs";
23
22
  import "../chunk-SJGQU3OG.mjs";
package/dist/index.js CHANGED
@@ -144,6 +144,7 @@ __export(src_exports, {
144
144
  gte: () => gte,
145
145
  ifA: () => ifA,
146
146
  ifDefined: () => ifDefined,
147
+ ifEither: () => ifEither,
147
148
  ifFalse: () => ifFalse,
148
149
  ifGet: () => ifGet,
149
150
  ifNotEmpty: () => ifNotEmpty,
@@ -346,20 +347,6 @@ var ofGet = (g, ...args) => isFunc(g) ? g(...args) : g;
346
347
  var ifGet = (pred, valid2, invalid) => ofGet(pred) ? ofGet(valid2) : ofGet(invalid);
347
348
  var ofProperty = (t, p) => isFunc(p) ? p(t) : t[p];
348
349
 
349
- // src/utils/If.ts
350
- function ifTrue(o, f, alt) {
351
- return isTrue(o) ? ofConstruct(f, o) : ofConstruct(alt, o);
352
- }
353
- function ifFalse(o, f, alt) {
354
- return !isTrue(o) ? ofConstruct(f, o) : ofConstruct(alt, o);
355
- }
356
- function ifDefined(o, f, alt) {
357
- return isDefined(o) ? ofConstruct(f, o) : ofConstruct(alt);
358
- }
359
- function ifNotEmpty(o, f = (o2) => o2, alt) {
360
- return isNotEmpty(o) ? ofConstruct(f, o) : ofConstruct(alt, o);
361
- }
362
-
363
350
  // src/types/Array.ts
364
351
  var toArray = (...items) => items.length > 1 ? items : isArray(items[0]) ? items[0] : isDefined(items[0]) ? [items[0]] : [];
365
352
  var toObject = (key, ...items) => toArray(...items).reduce((o, i) => {
@@ -622,6 +609,26 @@ var asList = (c, items = []) => toList(toArray(items).map((i) => new c(i)));
622
609
  var maxValue = (l, key) => l.desc(key).first()?.[key];
623
610
  var minValue = (l, key) => l.asc(key).first()?.[key];
624
611
 
612
+ // src/utils/If.ts
613
+ function ifTrue(o, f, alt) {
614
+ return isTrue(o) ? ofConstruct(f, o) : ofConstruct(alt, o);
615
+ }
616
+ function ifFalse(o, f, alt) {
617
+ return !isTrue(o) ? ofConstruct(f, o) : ofConstruct(alt, o);
618
+ }
619
+ function ifDefined(o, f, alt) {
620
+ return isDefined(o) ? ofConstruct(f, o) : ofConstruct(alt);
621
+ }
622
+ function ifNotEmpty(o, f = (o2) => o2, alt) {
623
+ return isNotEmpty(o) ? ofConstruct(f, o) : ofConstruct(alt, o);
624
+ }
625
+ function ifEither(os, f = (o) => o, alt) {
626
+ return use(
627
+ toList(os).first((o) => isPresent(o)),
628
+ (o) => isDefined(o) ? ofConstruct(f, o) : ofConstruct(alt, o)
629
+ );
630
+ }
631
+
625
632
  // src/types/Object.ts
626
633
  function entries(subject) {
627
634
  return ifDefined(
@@ -1719,6 +1726,18 @@ var DateTime = class _DateTime extends Value {
1719
1726
  get fromNow() {
1720
1727
  return this.from();
1721
1728
  }
1729
+ get inAmsterdam() {
1730
+ return this.withZone("Europe/Amsterdam");
1731
+ }
1732
+ get inNewYork() {
1733
+ return this.withZone("America/New_York");
1734
+ }
1735
+ get inLondon() {
1736
+ return this.withZone("Europe/London");
1737
+ }
1738
+ get inWarsaw() {
1739
+ return this.withZone("Europe/Warsaw");
1740
+ }
1722
1741
  get utc() {
1723
1742
  return this.luxon.setZone("utc");
1724
1743
  }
@@ -1762,15 +1781,6 @@ var DateTime = class _DateTime extends Value {
1762
1781
  withZone(zone) {
1763
1782
  return new _DateTime(this.luxon.setZone(zone));
1764
1783
  }
1765
- inAmsterdam() {
1766
- return this.withZone("Europe/Amsterdam");
1767
- }
1768
- inNewYork() {
1769
- return this.withZone("America/New_York");
1770
- }
1771
- inLondon() {
1772
- return this.withZone("Europe/London");
1773
- }
1774
1784
  toString() {
1775
1785
  return this.value ?? "";
1776
1786
  }
@@ -2823,7 +2833,7 @@ var toViewer = (key, value) => choose(value).is.not.defined((v) => v, { key, f:
2823
2833
  })).type(isConstructor, (c) => ({
2824
2834
  key,
2825
2835
  f: (a, key2) => use(traverse(a, key2), (v) => isArray(v) ? v.map((i) => optional2(c, i)) : optional2(c, v))
2826
- })).type(isSimpleView, (f) => ({ key, f: (a) => f.from(traverse(a, key)) })).type(isFunction, (f) => ({ key, f })).else((v) => ({ key, f: () => v }));
2836
+ })).type(isSimpleView, (f) => ({ key, f: (a) => ifDefined(traverse(a, key), (v) => f.from(v)) })).type(isFunction, (f) => ({ key, f })).else((v) => ({ key, f: () => v }));
2827
2837
  var optional2 = (c, v) => ifDefined(
2828
2838
  v,
2829
2839
  (i) => new c(i),
@@ -3508,6 +3518,7 @@ var wait = (millis) => Wait.wait(millis);
3508
3518
  gte,
3509
3519
  ifA,
3510
3520
  ifDefined,
3521
+ ifEither,
3511
3522
  ifFalse,
3512
3523
  ifGet,
3513
3524
  ifNotEmpty,