@duplojs/lang 0.0.1-beta.1 → 0.0.1-beta.11

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 (561) hide show
  1. package/dist/array/at/default.d.ts +1 -1
  2. package/dist/array/chunk.d.ts +3 -2
  3. package/dist/array/concat.d.ts +1 -1
  4. package/dist/array/copyWithin.d.ts +1 -1
  5. package/dist/array/fill/all.d.ts +1 -1
  6. package/dist/array/fill/default.d.ts +3 -3
  7. package/dist/array/filter.d.ts +1 -1
  8. package/dist/array/findAndReplace.d.ts +1 -1
  9. package/dist/array/findAndSplice/delete.d.ts +1 -1
  10. package/dist/array/findAndSplice/insert.d.ts +1 -1
  11. package/dist/array/index.cjs +0 -3
  12. package/dist/array/index.d.ts +0 -1
  13. package/dist/array/index.mjs +1 -3
  14. package/dist/array/insert.d.ts +3 -3
  15. package/dist/array/length.d.ts +1 -1
  16. package/dist/array/lengthEqual.d.ts +1 -1
  17. package/dist/array/map.d.ts +1 -1
  18. package/dist/array/maxElements.d.ts +1 -1
  19. package/dist/array/minElements.d.ts +1 -1
  20. package/dist/array/pop.d.ts +1 -1
  21. package/dist/array/prepend.d.ts +1 -1
  22. package/dist/array/push.d.ts +3 -3
  23. package/dist/array/reverse.d.ts +1 -1
  24. package/dist/array/shift.d.ts +1 -1
  25. package/dist/array/sort.d.ts +1 -1
  26. package/dist/array/splice/delete.d.ts +1 -1
  27. package/dist/array/splice/insert.d.ts +1 -1
  28. package/dist/array/unshift.d.ts +3 -3
  29. package/dist/chrono/createDate.cjs +9 -9
  30. package/dist/chrono/createDate.d.ts +3 -3
  31. package/dist/chrono/createDate.mjs +9 -9
  32. package/dist/chrono/createTime.cjs +24 -13
  33. package/dist/chrono/createTime.mjs +24 -13
  34. package/dist/chrono/theDate.cjs +15 -16
  35. package/dist/chrono/theDate.d.ts +15 -15
  36. package/dist/chrono/theDate.mjs +15 -16
  37. package/dist/chrono/theTime.cjs +0 -1
  38. package/dist/chrono/theTime.mjs +0 -1
  39. package/dist/chrono/types/spoolingTime.d.ts +2 -1
  40. package/dist/common/constraint/cast/index.d.ts +3 -3
  41. package/dist/common/constraint/cast/number.d.ts +15 -0
  42. package/dist/common/constraint/cast/string.d.ts +21 -0
  43. package/dist/common/constraint/index.d.ts +2 -0
  44. package/dist/common/constraint/infer/array.d.ts +7 -0
  45. package/dist/{array/infer.cjs → common/constraint/infer/index.cjs} +1 -1
  46. package/dist/common/constraint/infer/index.d.ts +26 -0
  47. package/dist/{string/infer.mjs → common/constraint/infer/index.mjs} +1 -1
  48. package/dist/common/constraint/infer/number.d.ts +11 -0
  49. package/dist/common/constraint/infer/string.d.ts +13 -0
  50. package/dist/common/constraint/remove.cjs +6 -0
  51. package/dist/common/constraint/remove.d.ts +2 -0
  52. package/dist/common/constraint/remove.mjs +6 -0
  53. package/dist/common/index.cjs +6 -0
  54. package/dist/common/index.mjs +5 -1
  55. package/dist/common/isType.d.ts +3 -2
  56. package/dist/common/types/forward.d.ts +1 -0
  57. package/dist/common/types/index.d.ts +3 -0
  58. package/dist/common/types/isObject.d.ts +8 -0
  59. package/dist/common/types/json.d.ts +1 -1
  60. package/dist/common/types/splitPromise.d.ts +1 -0
  61. package/dist/dataStructure/common/codec/base.cjs +29 -0
  62. package/dist/dataStructure/common/{codec.d.ts → codec/base.d.ts} +8 -8
  63. package/dist/dataStructure/common/codec/base.mjs +26 -0
  64. package/dist/dataStructure/common/codec/defaults/index.d.ts +2 -0
  65. package/dist/dataStructure/common/codec/defaults/json.cjs +26 -0
  66. package/dist/dataStructure/common/codec/defaults/json.d.ts +6 -0
  67. package/dist/dataStructure/common/codec/defaults/json.mjs +26 -0
  68. package/dist/dataStructure/common/codec/defaults/string.cjs +44 -0
  69. package/dist/dataStructure/common/codec/defaults/string.d.ts +11 -0
  70. package/dist/dataStructure/common/codec/defaults/string.mjs +44 -0
  71. package/dist/dataStructure/common/codec/index.d.ts +2 -0
  72. package/dist/dataStructure/common/error/base.cjs +73 -0
  73. package/dist/dataStructure/common/error/base.d.ts +50 -0
  74. package/dist/dataStructure/common/error/base.mjs +69 -0
  75. package/dist/dataStructure/common/error/defaultInterpreter.cjs +87 -0
  76. package/dist/dataStructure/common/error/defaultInterpreter.d.ts +60 -0
  77. package/dist/dataStructure/common/error/defaultInterpreter.mjs +86 -0
  78. package/dist/dataStructure/common/error/index.d.ts +3 -0
  79. package/dist/dataStructure/common/error/interpreter.cjs +44 -0
  80. package/dist/dataStructure/common/error/interpreter.d.ts +32 -0
  81. package/dist/dataStructure/common/error/interpreter.mjs +44 -0
  82. package/dist/dataStructure/constraint/base.cjs +34 -5
  83. package/dist/dataStructure/constraint/base.d.ts +13 -4
  84. package/dist/dataStructure/constraint/base.mjs +34 -6
  85. package/dist/dataStructure/constraint/defaults/absolutePath.cjs +13 -0
  86. package/dist/dataStructure/constraint/defaults/absolutePath.d.ts +10 -0
  87. package/dist/dataStructure/constraint/defaults/absolutePath.mjs +12 -0
  88. package/dist/dataStructure/constraint/defaults/allowedCharacters.cjs +1 -1
  89. package/dist/dataStructure/constraint/defaults/allowedCharacters.d.ts +1 -3
  90. package/dist/dataStructure/constraint/defaults/allowedCharacters.mjs +1 -1
  91. package/dist/dataStructure/constraint/defaults/arrayLengthEqual.cjs +1 -1
  92. package/dist/dataStructure/constraint/defaults/arrayLengthEqual.d.ts +1 -1
  93. package/dist/dataStructure/constraint/defaults/arrayLengthEqual.mjs +1 -1
  94. package/dist/dataStructure/constraint/defaults/betweenThan.cjs +1 -1
  95. package/dist/dataStructure/constraint/defaults/betweenThan.d.ts +1 -1
  96. package/dist/dataStructure/constraint/defaults/betweenThan.mjs +1 -1
  97. package/dist/dataStructure/constraint/defaults/betweenThanOrEqual.cjs +1 -1
  98. package/dist/dataStructure/constraint/defaults/betweenThanOrEqual.d.ts +1 -1
  99. package/dist/dataStructure/constraint/defaults/betweenThanOrEqual.mjs +1 -1
  100. package/dist/dataStructure/constraint/defaults/email.cjs +1 -1
  101. package/dist/dataStructure/constraint/defaults/email.d.ts +1 -1
  102. package/dist/dataStructure/constraint/defaults/email.mjs +1 -1
  103. package/dist/dataStructure/constraint/defaults/even.cjs +1 -1
  104. package/dist/dataStructure/constraint/defaults/even.d.ts +1 -1
  105. package/dist/dataStructure/constraint/defaults/even.mjs +1 -1
  106. package/dist/dataStructure/constraint/defaults/greaterThan.cjs +1 -1
  107. package/dist/dataStructure/constraint/defaults/greaterThan.d.ts +1 -1
  108. package/dist/dataStructure/constraint/defaults/greaterThan.mjs +1 -1
  109. package/dist/dataStructure/constraint/defaults/greaterThanOrEqual.cjs +1 -1
  110. package/dist/dataStructure/constraint/defaults/greaterThanOrEqual.d.ts +1 -1
  111. package/dist/dataStructure/constraint/defaults/greaterThanOrEqual.mjs +1 -1
  112. package/dist/dataStructure/constraint/defaults/index.d.ts +6 -0
  113. package/dist/dataStructure/constraint/defaults/integer.cjs +1 -1
  114. package/dist/dataStructure/constraint/defaults/integer.d.ts +1 -1
  115. package/dist/dataStructure/constraint/defaults/integer.mjs +1 -1
  116. package/dist/dataStructure/constraint/defaults/lessThan.cjs +1 -1
  117. package/dist/dataStructure/constraint/defaults/lessThan.d.ts +1 -1
  118. package/dist/dataStructure/constraint/defaults/lessThan.mjs +1 -1
  119. package/dist/dataStructure/constraint/defaults/lessThanOrEqual.cjs +1 -1
  120. package/dist/dataStructure/constraint/defaults/lessThanOrEqual.d.ts +1 -1
  121. package/dist/dataStructure/constraint/defaults/lessThanOrEqual.mjs +1 -1
  122. package/dist/dataStructure/constraint/defaults/maxCharacters.cjs +1 -1
  123. package/dist/dataStructure/constraint/defaults/maxCharacters.d.ts +1 -1
  124. package/dist/dataStructure/constraint/defaults/maxCharacters.mjs +1 -1
  125. package/dist/dataStructure/constraint/defaults/maxElements.cjs +1 -1
  126. package/dist/dataStructure/constraint/defaults/maxElements.d.ts +1 -1
  127. package/dist/dataStructure/constraint/defaults/maxElements.mjs +1 -1
  128. package/dist/dataStructure/constraint/defaults/minCharacters.cjs +4 -4
  129. package/dist/dataStructure/constraint/defaults/minCharacters.d.ts +2 -2
  130. package/dist/dataStructure/constraint/defaults/minCharacters.mjs +4 -4
  131. package/dist/dataStructure/constraint/defaults/minElements.cjs +1 -1
  132. package/dist/dataStructure/constraint/defaults/minElements.d.ts +1 -1
  133. package/dist/dataStructure/constraint/defaults/minElements.mjs +1 -1
  134. package/dist/dataStructure/constraint/defaults/multipleOf.cjs +1 -1
  135. package/dist/dataStructure/constraint/defaults/multipleOf.d.ts +1 -1
  136. package/dist/dataStructure/constraint/defaults/multipleOf.mjs +1 -1
  137. package/dist/dataStructure/constraint/defaults/negative.cjs +1 -1
  138. package/dist/dataStructure/constraint/defaults/negative.d.ts +1 -1
  139. package/dist/dataStructure/constraint/defaults/negative.mjs +1 -1
  140. package/dist/dataStructure/constraint/defaults/notEmpty.cjs +1 -1
  141. package/dist/dataStructure/constraint/defaults/notEmpty.d.ts +1 -1
  142. package/dist/dataStructure/constraint/defaults/notEmpty.mjs +1 -1
  143. package/dist/dataStructure/constraint/defaults/notZero.cjs +1 -1
  144. package/dist/dataStructure/constraint/defaults/notZero.d.ts +1 -1
  145. package/dist/dataStructure/constraint/defaults/notZero.mjs +1 -1
  146. package/dist/dataStructure/constraint/defaults/numberInString.cjs +13 -0
  147. package/dist/dataStructure/constraint/defaults/numberInString.d.ts +10 -0
  148. package/dist/dataStructure/constraint/defaults/numberInString.mjs +12 -0
  149. package/dist/dataStructure/constraint/defaults/odd.cjs +1 -1
  150. package/dist/dataStructure/constraint/defaults/odd.d.ts +1 -1
  151. package/dist/dataStructure/constraint/defaults/odd.mjs +1 -1
  152. package/dist/dataStructure/constraint/defaults/path.cjs +13 -0
  153. package/dist/dataStructure/constraint/defaults/path.d.ts +10 -0
  154. package/dist/dataStructure/constraint/defaults/path.mjs +12 -0
  155. package/dist/dataStructure/constraint/defaults/positive.cjs +1 -1
  156. package/dist/dataStructure/constraint/defaults/positive.d.ts +1 -1
  157. package/dist/dataStructure/constraint/defaults/positive.mjs +1 -1
  158. package/dist/dataStructure/constraint/defaults/refine.cjs +1 -1
  159. package/dist/dataStructure/constraint/defaults/refine.d.ts +1 -1
  160. package/dist/dataStructure/constraint/defaults/refine.mjs +1 -1
  161. package/dist/dataStructure/constraint/defaults/regex.cjs +13 -0
  162. package/dist/dataStructure/constraint/defaults/regex.d.ts +10 -0
  163. package/dist/dataStructure/constraint/defaults/regex.mjs +12 -0
  164. package/dist/dataStructure/constraint/defaults/safe.cjs +1 -1
  165. package/dist/dataStructure/constraint/defaults/safe.d.ts +1 -1
  166. package/dist/dataStructure/constraint/defaults/safe.mjs +1 -1
  167. package/dist/dataStructure/constraint/defaults/segmentPath.cjs +13 -0
  168. package/dist/dataStructure/constraint/defaults/segmentPath.d.ts +10 -0
  169. package/dist/dataStructure/constraint/defaults/segmentPath.mjs +12 -0
  170. package/dist/dataStructure/constraint/defaults/strictNegative.cjs +1 -1
  171. package/dist/dataStructure/constraint/defaults/strictNegative.d.ts +1 -1
  172. package/dist/dataStructure/constraint/defaults/strictNegative.mjs +1 -1
  173. package/dist/dataStructure/constraint/defaults/strictPositive.cjs +1 -1
  174. package/dist/dataStructure/constraint/defaults/strictPositive.d.ts +1 -1
  175. package/dist/dataStructure/constraint/defaults/strictPositive.mjs +1 -1
  176. package/dist/dataStructure/constraint/defaults/stringLengthEqual.cjs +1 -1
  177. package/dist/dataStructure/constraint/defaults/stringLengthEqual.d.ts +1 -1
  178. package/dist/dataStructure/constraint/defaults/stringLengthEqual.mjs +1 -1
  179. package/dist/dataStructure/constraint/defaults/trimmed.cjs +13 -0
  180. package/dist/dataStructure/constraint/defaults/trimmed.d.ts +10 -0
  181. package/dist/dataStructure/constraint/defaults/trimmed.mjs +12 -0
  182. package/dist/dataStructure/constraint/defaults/url.cjs +2 -2
  183. package/dist/dataStructure/constraint/defaults/url.d.ts +2 -3
  184. package/dist/dataStructure/constraint/defaults/url.mjs +2 -2
  185. package/dist/dataStructure/constraint/defaults/uuid.cjs +2 -4
  186. package/dist/dataStructure/constraint/defaults/uuid.d.ts +1 -3
  187. package/dist/dataStructure/constraint/defaults/uuid.mjs +4 -5
  188. package/dist/dataStructure/constraint/identifier.d.ts +3 -4
  189. package/dist/dataStructure/constraint/types/constraints.d.ts +22 -15
  190. package/dist/dataStructure/fundamentalType/base.cjs +3 -3
  191. package/dist/dataStructure/fundamentalType/base.d.ts +4 -5
  192. package/dist/dataStructure/fundamentalType/base.mjs +3 -3
  193. package/dist/dataStructure/fundamentalType/defaults/bigint.cjs +4 -2
  194. package/dist/dataStructure/fundamentalType/defaults/bigint.d.ts +4 -4
  195. package/dist/dataStructure/fundamentalType/defaults/bigint.mjs +5 -2
  196. package/dist/dataStructure/fundamentalType/defaults/boolean.cjs +4 -2
  197. package/dist/dataStructure/fundamentalType/defaults/boolean.d.ts +4 -4
  198. package/dist/dataStructure/fundamentalType/defaults/boolean.mjs +5 -2
  199. package/dist/dataStructure/fundamentalType/defaults/date.cjs +4 -2
  200. package/dist/dataStructure/fundamentalType/defaults/date.d.ts +4 -4
  201. package/dist/dataStructure/fundamentalType/defaults/date.mjs +5 -2
  202. package/dist/dataStructure/fundamentalType/defaults/null.cjs +4 -2
  203. package/dist/dataStructure/fundamentalType/defaults/null.d.ts +4 -4
  204. package/dist/dataStructure/fundamentalType/defaults/null.mjs +5 -2
  205. package/dist/dataStructure/fundamentalType/defaults/number.cjs +4 -2
  206. package/dist/dataStructure/fundamentalType/defaults/number.d.ts +4 -4
  207. package/dist/dataStructure/fundamentalType/defaults/number.mjs +5 -2
  208. package/dist/dataStructure/fundamentalType/defaults/string.cjs +4 -2
  209. package/dist/dataStructure/fundamentalType/defaults/string.d.ts +4 -4
  210. package/dist/dataStructure/fundamentalType/defaults/string.mjs +5 -2
  211. package/dist/dataStructure/fundamentalType/defaults/time.cjs +4 -2
  212. package/dist/dataStructure/fundamentalType/defaults/time.d.ts +4 -4
  213. package/dist/dataStructure/fundamentalType/defaults/time.mjs +5 -2
  214. package/dist/dataStructure/fundamentalType/defaults/undefined.cjs +4 -2
  215. package/dist/dataStructure/fundamentalType/defaults/undefined.d.ts +4 -4
  216. package/dist/dataStructure/fundamentalType/defaults/undefined.mjs +5 -2
  217. package/dist/dataStructure/fundamentalType/identifier.d.ts +3 -4
  218. package/dist/dataStructure/helpers/absolutePath.cjs +7 -0
  219. package/dist/dataStructure/helpers/absolutePath.d.ts +2 -0
  220. package/dist/dataStructure/helpers/absolutePath.mjs +7 -0
  221. package/dist/dataStructure/helpers/array.d.ts +1 -1
  222. package/dist/dataStructure/helpers/bigint.d.ts +1 -1
  223. package/dist/dataStructure/helpers/boolean.d.ts +1 -1
  224. package/dist/dataStructure/helpers/date.d.ts +1 -1
  225. package/dist/dataStructure/helpers/extend.d.ts +1 -1
  226. package/dist/dataStructure/helpers/index.d.ts +10 -1
  227. package/dist/dataStructure/helpers/isNullable.cjs +12 -0
  228. package/dist/dataStructure/helpers/isNullable.d.ts +2 -0
  229. package/dist/dataStructure/helpers/isNullable.mjs +12 -0
  230. package/dist/dataStructure/helpers/isOptional.cjs +12 -0
  231. package/dist/dataStructure/helpers/isOptional.d.ts +2 -0
  232. package/dist/dataStructure/helpers/isOptional.mjs +12 -0
  233. package/dist/dataStructure/helpers/lazy.d.ts +1 -1
  234. package/dist/dataStructure/helpers/null.d.ts +1 -1
  235. package/dist/dataStructure/helpers/nullable.cjs +5 -2
  236. package/dist/dataStructure/helpers/nullable.mjs +5 -2
  237. package/dist/dataStructure/helpers/number.d.ts +1 -1
  238. package/dist/dataStructure/helpers/numberInString.cjs +7 -0
  239. package/dist/dataStructure/helpers/numberInString.d.ts +2 -0
  240. package/dist/dataStructure/helpers/numberInString.mjs +7 -0
  241. package/dist/dataStructure/helpers/object.d.ts +1 -1
  242. package/dist/dataStructure/helpers/optional.cjs +5 -2
  243. package/dist/dataStructure/helpers/optional.mjs +5 -2
  244. package/dist/dataStructure/helpers/partial.cjs +5 -2
  245. package/dist/dataStructure/helpers/partial.mjs +5 -2
  246. package/dist/dataStructure/helpers/path.cjs +7 -0
  247. package/dist/dataStructure/helpers/path.d.ts +2 -0
  248. package/dist/dataStructure/helpers/path.mjs +7 -0
  249. package/dist/dataStructure/helpers/record.d.ts +1 -1
  250. package/dist/dataStructure/helpers/regex.cjs +7 -0
  251. package/dist/dataStructure/helpers/regex.d.ts +2 -0
  252. package/dist/dataStructure/helpers/regex.mjs +7 -0
  253. package/dist/dataStructure/helpers/required.cjs +6 -3
  254. package/dist/dataStructure/helpers/required.d.ts +2 -1
  255. package/dist/dataStructure/helpers/required.mjs +6 -3
  256. package/dist/dataStructure/helpers/segmentPath.cjs +7 -0
  257. package/dist/dataStructure/helpers/segmentPath.d.ts +2 -0
  258. package/dist/dataStructure/helpers/segmentPath.mjs +7 -0
  259. package/dist/dataStructure/helpers/string.d.ts +1 -1
  260. package/dist/dataStructure/helpers/time.d.ts +1 -1
  261. package/dist/dataStructure/helpers/trimmed.cjs +7 -0
  262. package/dist/dataStructure/helpers/trimmed.d.ts +2 -0
  263. package/dist/dataStructure/helpers/trimmed.mjs +7 -0
  264. package/dist/dataStructure/helpers/undefined.d.ts +1 -1
  265. package/dist/dataStructure/helpers/union.d.ts +1 -1
  266. package/dist/dataStructure/helpers/unwrapLazy.cjs +9 -0
  267. package/dist/dataStructure/helpers/unwrapLazy.d.ts +2 -0
  268. package/dist/dataStructure/helpers/unwrapLazy.mjs +9 -0
  269. package/dist/dataStructure/helpers/url.cjs +2 -2
  270. package/dist/dataStructure/helpers/url.d.ts +1 -2
  271. package/dist/dataStructure/helpers/url.mjs +2 -2
  272. package/dist/dataStructure/index.cjs +158 -60
  273. package/dist/dataStructure/index.mjs +80 -21
  274. package/dist/dataStructure/structure/base.cjs +22 -12
  275. package/dist/dataStructure/structure/base.d.ts +8 -5
  276. package/dist/dataStructure/structure/base.mjs +16 -6
  277. package/dist/dataStructure/structure/defaults/array.d.ts +2 -2
  278. package/dist/dataStructure/structure/defaults/index.d.ts +1 -0
  279. package/dist/dataStructure/structure/defaults/lazy.cjs +10 -3
  280. package/dist/dataStructure/structure/defaults/lazy.d.ts +2 -2
  281. package/dist/dataStructure/structure/defaults/lazy.mjs +10 -3
  282. package/dist/dataStructure/structure/defaults/nonEncodableString.cjs +17 -0
  283. package/dist/dataStructure/structure/defaults/nonEncodableString.d.ts +10 -0
  284. package/dist/dataStructure/structure/defaults/nonEncodableString.mjs +16 -0
  285. package/dist/dataStructure/structure/defaults/object.d.ts +2 -2
  286. package/dist/dataStructure/structure/defaults/record.cjs +7 -7
  287. package/dist/dataStructure/structure/defaults/record.d.ts +3 -3
  288. package/dist/dataStructure/structure/defaults/record.mjs +7 -7
  289. package/dist/dataStructure/structure/defaults/type.cjs +1 -1
  290. package/dist/dataStructure/structure/defaults/type.d.ts +2 -2
  291. package/dist/dataStructure/structure/defaults/type.mjs +2 -2
  292. package/dist/dataStructure/structure/defaults/union.cjs +23 -17
  293. package/dist/dataStructure/structure/defaults/union.d.ts +3 -3
  294. package/dist/dataStructure/structure/defaults/union.mjs +21 -15
  295. package/dist/dataStructure/structure/identifier.d.ts +3 -4
  296. package/dist/dataStructure/structure/types/constraintsValue.d.ts +1 -1
  297. package/dist/dataStructure/structure/types/structures.d.ts +2 -1
  298. package/dist/dataStructure/structure/types/value.d.ts +1 -1
  299. package/dist/dataStructure/type/base.cjs +17 -4
  300. package/dist/dataStructure/type/base.d.ts +7 -3
  301. package/dist/dataStructure/type/base.mjs +17 -4
  302. package/dist/dataStructure/type/defaults/bigint.d.ts +1 -1
  303. package/dist/dataStructure/type/defaults/bigintLiteral.cjs +1 -1
  304. package/dist/dataStructure/type/defaults/bigintLiteral.d.ts +1 -1
  305. package/dist/dataStructure/type/defaults/bigintLiteral.mjs +1 -1
  306. package/dist/dataStructure/type/defaults/boolean.d.ts +1 -1
  307. package/dist/dataStructure/type/defaults/booleanLiteral.cjs +1 -1
  308. package/dist/dataStructure/type/defaults/booleanLiteral.d.ts +1 -1
  309. package/dist/dataStructure/type/defaults/booleanLiteral.mjs +1 -1
  310. package/dist/dataStructure/type/defaults/date.d.ts +1 -1
  311. package/dist/dataStructure/type/defaults/null.d.ts +1 -1
  312. package/dist/dataStructure/type/defaults/number.d.ts +1 -1
  313. package/dist/dataStructure/type/defaults/numberLiteral.cjs +1 -1
  314. package/dist/dataStructure/type/defaults/numberLiteral.d.ts +1 -1
  315. package/dist/dataStructure/type/defaults/numberLiteral.mjs +1 -1
  316. package/dist/dataStructure/type/defaults/string.d.ts +1 -1
  317. package/dist/dataStructure/type/defaults/stringLiteral.cjs +1 -1
  318. package/dist/dataStructure/type/defaults/stringLiteral.d.ts +1 -1
  319. package/dist/dataStructure/type/defaults/stringLiteral.mjs +1 -1
  320. package/dist/dataStructure/type/defaults/time.d.ts +1 -1
  321. package/dist/dataStructure/type/defaults/undefined.d.ts +1 -1
  322. package/dist/dataStructure/type/identifier.d.ts +3 -4
  323. package/dist/either/index.cjs +30 -8
  324. package/dist/either/index.d.ts +4 -0
  325. package/dist/either/index.mjs +23 -9
  326. package/dist/either/left/index.d.ts +3 -2
  327. package/dist/either/left/none.cjs +15 -0
  328. package/dist/either/left/none.d.ts +7 -0
  329. package/dist/either/left/none.mjs +14 -0
  330. package/dist/either/matchInformationOtherwise.d.ts +1 -1
  331. package/dist/either/rewriteInformation.cjs +22 -0
  332. package/dist/either/rewriteInformation.d.ts +14 -0
  333. package/dist/either/rewriteInformation.mjs +22 -0
  334. package/dist/either/right/asyncGroup.cjs +2 -2
  335. package/dist/either/right/asyncGroup.mjs +2 -2
  336. package/dist/either/right/group.cjs +1 -1
  337. package/dist/either/right/group.mjs +1 -1
  338. package/dist/either/right/index.d.ts +6 -5
  339. package/dist/either/right/some.cjs +15 -0
  340. package/dist/either/right/some.d.ts +7 -0
  341. package/dist/either/right/some.mjs +14 -0
  342. package/dist/either/toMaybe.cjs +12 -0
  343. package/dist/either/toMaybe.d.ts +5 -0
  344. package/dist/either/toMaybe.mjs +12 -0
  345. package/dist/either/types/mayBe.d.ts +3 -0
  346. package/dist/either/unwrapOr.cjs +14 -0
  347. package/dist/either/unwrapOr.d.ts +8 -0
  348. package/dist/either/unwrapOr.mjs +14 -0
  349. package/dist/either/unwrapOtherwise.cjs +14 -0
  350. package/dist/either/unwrapOtherwise.d.ts +8 -0
  351. package/dist/either/unwrapOtherwise.mjs +14 -0
  352. package/dist/generator/asyncChunk.d.ts +3 -2
  353. package/dist/generator/chunk.d.ts +3 -2
  354. package/dist/generator/reduce.cjs +2 -1
  355. package/dist/generator/reduce.mjs +1 -1
  356. package/dist/generator/types/flat.d.ts +2 -2
  357. package/dist/index.cjs +43 -39
  358. package/dist/index.mjs +4 -2
  359. package/dist/invocation/flow/base.d.ts +8 -3
  360. package/dist/invocation/flow/controller/base.d.ts +1 -0
  361. package/dist/invocation/flow/controller/defaults/aborter.cjs +38 -0
  362. package/dist/invocation/flow/controller/defaults/aborter.d.ts +17 -0
  363. package/dist/invocation/flow/controller/defaults/aborter.mjs +36 -0
  364. package/dist/invocation/flow/controller/defaults/debounce.d.ts +1 -1
  365. package/dist/invocation/flow/controller/defaults/filter.cjs +5 -3
  366. package/dist/invocation/flow/controller/defaults/filter.d.ts +1 -1
  367. package/dist/invocation/flow/controller/defaults/filter.mjs +5 -3
  368. package/dist/invocation/flow/controller/defaults/index.d.ts +1 -0
  369. package/dist/invocation/flow/controller/defaults/retry.d.ts +1 -1
  370. package/dist/invocation/flow/controller/defaults/throttling.d.ts +1 -1
  371. package/dist/invocation/flow/controller/defaults/timeout.d.ts +1 -1
  372. package/dist/invocation/index.cjs +15 -8
  373. package/dist/invocation/index.d.ts +1 -1
  374. package/dist/invocation/index.mjs +10 -6
  375. package/dist/invocation/reader.cjs +26 -0
  376. package/dist/invocation/reader.d.ts +28 -0
  377. package/dist/invocation/reader.mjs +25 -0
  378. package/dist/kind/createIdentifier.d.ts +8 -4
  379. package/dist/kind/types/getName.d.ts +2 -0
  380. package/dist/kind/types/getNamespaceName.d.ts +3 -0
  381. package/dist/kind/types/index.d.ts +2 -0
  382. package/dist/kind/types/remove.d.ts +2 -2
  383. package/dist/modeling/entity/base.cjs +38 -11
  384. package/dist/modeling/entity/base.d.ts +25 -10
  385. package/dist/modeling/entity/base.mjs +32 -6
  386. package/dist/modeling/entity/helper.d.ts +1 -1
  387. package/dist/modeling/entity/index.d.ts +0 -1
  388. package/dist/modeling/entity/namespace.cjs +2 -2
  389. package/dist/modeling/entity/namespace.d.ts +1 -1
  390. package/dist/modeling/entity/namespace.mjs +3 -3
  391. package/dist/modeling/flag/base.cjs +1 -5
  392. package/dist/modeling/flag/base.d.ts +6 -7
  393. package/dist/modeling/flag/base.mjs +1 -5
  394. package/dist/modeling/index.cjs +45 -28
  395. package/dist/modeling/index.d.ts +1 -0
  396. package/dist/modeling/index.mjs +18 -9
  397. package/dist/modeling/newType/base.cjs +34 -13
  398. package/dist/modeling/newType/base.d.ts +9 -2
  399. package/dist/modeling/newType/base.mjs +26 -7
  400. package/dist/modeling/newType/helper.cjs +2 -2
  401. package/dist/modeling/newType/helper.d.ts +1 -1
  402. package/dist/modeling/newType/helper.mjs +2 -2
  403. package/dist/modeling/taggedObject/base.cjs +113 -0
  404. package/dist/modeling/taggedObject/base.d.ts +61 -0
  405. package/dist/modeling/taggedObject/base.mjs +110 -0
  406. package/dist/modeling/taggedObject/helper.cjs +34 -0
  407. package/dist/modeling/taggedObject/helper.d.ts +15 -0
  408. package/dist/modeling/taggedObject/helper.mjs +31 -0
  409. package/dist/modeling/taggedObject/index.d.ts +2 -0
  410. package/dist/number/betweenThan.d.ts +2 -2
  411. package/dist/number/betweenThanOrEqual.d.ts +2 -2
  412. package/dist/number/greaterThan.d.ts +1 -1
  413. package/dist/number/greaterThanOrEqual.d.ts +1 -1
  414. package/dist/number/index.cjs +0 -3
  415. package/dist/number/index.d.ts +0 -1
  416. package/dist/number/index.mjs +1 -3
  417. package/dist/number/lessThan.d.ts +1 -1
  418. package/dist/number/lessThanOrEqual.d.ts +1 -1
  419. package/dist/number/sort.d.ts +1 -1
  420. package/dist/number/types/isGreater.d.ts +5 -5
  421. package/dist/object/assign.d.ts +3 -3
  422. package/dist/object/types/assign.d.ts +2 -0
  423. package/dist/object/types/forbiddenUndefinedProps.d.ts +3 -0
  424. package/dist/object/types/index.d.ts +4 -2
  425. package/dist/object/types/override.d.ts +4 -0
  426. package/dist/object/types/split.d.ts +2 -2
  427. package/dist/path/computeRelative.cjs +5 -6
  428. package/dist/path/computeRelative.d.ts +1 -1
  429. package/dist/path/computeRelative.mjs +5 -6
  430. package/dist/path/constraints/absolute.d.ts +1 -1
  431. package/dist/path/constraints/index.d.ts +2 -1
  432. package/dist/path/constraints/segment.d.ts +3 -0
  433. package/dist/path/getBaseName.cjs +7 -7
  434. package/dist/path/getBaseName.d.ts +2 -2
  435. package/dist/path/getBaseName.mjs +7 -7
  436. package/dist/path/getExtensionName.cjs +9 -4
  437. package/dist/path/getExtensionName.d.ts +2 -2
  438. package/dist/path/getExtensionName.mjs +9 -4
  439. package/dist/path/getParentFolderPath.cjs +9 -4
  440. package/dist/path/getParentFolderPath.d.ts +1 -2
  441. package/dist/path/getParentFolderPath.mjs +9 -4
  442. package/dist/path/index.cjs +6 -3
  443. package/dist/path/index.d.ts +3 -2
  444. package/dist/path/index.mjs +5 -3
  445. package/dist/path/is.cjs +9 -4
  446. package/dist/path/is.d.ts +4 -2
  447. package/dist/path/is.mjs +9 -4
  448. package/dist/path/isAbsolute.cjs +3 -5
  449. package/dist/path/isAbsolute.d.ts +4 -2
  450. package/dist/path/isAbsolute.mjs +3 -5
  451. package/dist/path/isSegment.cjs +6 -0
  452. package/dist/path/isSegment.d.ts +4 -0
  453. package/dist/path/isSegment.mjs +6 -0
  454. package/dist/path/normalize.cjs +18 -0
  455. package/dist/path/normalize.d.ts +2 -0
  456. package/dist/path/normalize.mjs +18 -0
  457. package/dist/path/resolveFrom.cjs +4 -5
  458. package/dist/path/resolveFrom.d.ts +10 -2
  459. package/dist/path/resolveFrom.mjs +4 -5
  460. package/dist/path/resolveRelative.cjs +17 -20
  461. package/dist/path/resolveRelative.d.ts +9 -2
  462. package/dist/path/resolveRelative.mjs +17 -20
  463. package/dist/path/types/index.d.ts +6 -0
  464. package/dist/path/types/isLiteralAbsolutePath.d.ts +2 -0
  465. package/dist/path/types/isLiteralPath.d.ts +20 -0
  466. package/dist/path/types/isLiteralSegmentPath.d.ts +9 -0
  467. package/dist/path/types/requireLiteralAbsolutePath.d.ts +3 -0
  468. package/dist/path/types/requireLiteralPath.d.ts +3 -0
  469. package/dist/path/types/requireLiteralSegmentPath.d.ts +3 -0
  470. package/dist/pattern/index.cjs +12 -0
  471. package/dist/pattern/index.d.ts +4 -0
  472. package/dist/pattern/index.mjs +9 -1
  473. package/dist/pattern/matchWithEntity.cjs +12 -0
  474. package/dist/pattern/matchWithEntity.d.ts +12 -0
  475. package/dist/pattern/matchWithEntity.mjs +12 -0
  476. package/dist/pattern/matchWithEntityOtherwise.cjs +13 -0
  477. package/dist/pattern/matchWithEntityOtherwise.d.ts +14 -0
  478. package/dist/pattern/matchWithEntityOtherwise.mjs +13 -0
  479. package/dist/pattern/matchWithNumber.d.ts +4 -4
  480. package/dist/pattern/matchWithNumberOtherwise.cjs +2 -6
  481. package/dist/pattern/matchWithNumberOtherwise.d.ts +4 -4
  482. package/dist/pattern/matchWithNumberOtherwise.mjs +2 -6
  483. package/dist/pattern/matchWithString.d.ts +4 -4
  484. package/dist/pattern/matchWithStringOtherwise.cjs +2 -6
  485. package/dist/pattern/matchWithStringOtherwise.d.ts +5 -5
  486. package/dist/pattern/matchWithStringOtherwise.mjs +2 -6
  487. package/dist/pattern/matchWithTaggedObject.cjs +12 -0
  488. package/dist/pattern/matchWithTaggedObject.d.ts +12 -0
  489. package/dist/pattern/matchWithTaggedObject.mjs +12 -0
  490. package/dist/pattern/matchWithTaggedObjectOtherwise.cjs +13 -0
  491. package/dist/pattern/matchWithTaggedObjectOtherwise.d.ts +14 -0
  492. package/dist/pattern/matchWithTaggedObjectOtherwise.mjs +13 -0
  493. package/dist/string/at.d.ts +2 -2
  494. package/dist/string/constraints/allowedCharacters.d.ts +3 -3
  495. package/dist/string/constraints/index.d.ts +2 -1
  496. package/dist/string/constraints/number.d.ts +4 -0
  497. package/dist/string/first.d.ts +1 -1
  498. package/dist/string/index.cjs +6 -3
  499. package/dist/string/index.d.ts +1 -1
  500. package/dist/string/index.mjs +5 -3
  501. package/dist/string/isComposedOf.cjs +0 -1
  502. package/dist/string/isComposedOf.d.ts +5 -8
  503. package/dist/string/isComposedOf.mjs +0 -1
  504. package/dist/string/isNumber.cjs +7 -0
  505. package/dist/string/isNumber.d.ts +5 -0
  506. package/dist/string/isNumber.mjs +7 -0
  507. package/dist/string/isUrl.cjs +2 -11
  508. package/dist/string/isUrl.d.ts +1 -5
  509. package/dist/string/isUrl.mjs +2 -11
  510. package/dist/string/last.d.ts +1 -1
  511. package/dist/string/lengthEqual.d.ts +1 -1
  512. package/dist/string/maxCharacters.d.ts +1 -1
  513. package/dist/string/minCharacters.d.ts +1 -1
  514. package/dist/string/padEnd.d.ts +1 -1
  515. package/dist/string/padStart.d.ts +1 -1
  516. package/dist/string/pop.d.ts +1 -1
  517. package/dist/string/shift.d.ts +1 -1
  518. package/dist/string/slice.d.ts +1 -1
  519. package/dist/string/substring.d.ts +1 -1
  520. package/dist/string/to.d.ts +9 -2
  521. package/dist/string/trim/default.d.ts +1 -1
  522. package/dist/string/trim/end.d.ts +1 -1
  523. package/dist/string/trim/index.d.ts +1 -0
  524. package/dist/string/trim/is.cjs +6 -0
  525. package/dist/string/trim/is.d.ts +2 -0
  526. package/dist/string/trim/is.mjs +6 -0
  527. package/dist/string/trim/start.d.ts +1 -1
  528. package/dist/string/types/IsAllowedString.d.ts +5 -0
  529. package/dist/string/types/index.d.ts +5 -5
  530. package/dist/string/types/numberInString.d.ts +1 -0
  531. package/dist/string/types/split.d.ts +1 -1
  532. package/dist/tuple/from.cjs +6 -0
  533. package/dist/tuple/from.d.ts +8 -0
  534. package/dist/tuple/from.mjs +6 -0
  535. package/dist/tuple/index.cjs +6 -1
  536. package/dist/tuple/index.d.ts +1 -0
  537. package/dist/tuple/index.mjs +6 -2
  538. package/package.json +2 -2
  539. package/dist/array/infer.d.ts +0 -14
  540. package/dist/array/infer.mjs +0 -6
  541. package/dist/dataStructure/common/codec.cjs +0 -28
  542. package/dist/dataStructure/common/codec.mjs +0 -25
  543. package/dist/dataStructure/common/error.cjs +0 -53
  544. package/dist/dataStructure/common/error.d.ts +0 -30
  545. package/dist/dataStructure/common/error.mjs +0 -52
  546. package/dist/invocation/useCase.cjs +0 -26
  547. package/dist/invocation/useCase.d.ts +0 -28
  548. package/dist/invocation/useCase.mjs +0 -25
  549. package/dist/modeling/entity/entityName.cjs +0 -13
  550. package/dist/modeling/entity/entityName.d.ts +0 -13
  551. package/dist/modeling/entity/entityName.mjs +0 -13
  552. package/dist/number/infer.cjs +0 -6
  553. package/dist/number/infer.d.ts +0 -12
  554. package/dist/number/infer.mjs +0 -6
  555. package/dist/object/types/assignObjects.d.ts +0 -2
  556. package/dist/path/fix.cjs +0 -8
  557. package/dist/path/fix.d.ts +0 -1
  558. package/dist/path/fix.mjs +0 -8
  559. package/dist/string/infer.cjs +0 -6
  560. package/dist/string/infer.d.ts +0 -12
  561. package/dist/string/types/number.d.ts +0 -1
@@ -1,8 +1,8 @@
1
1
  import { entries } from "../../object/entries.mjs";
2
2
  import { isLeft } from "../left/is.mjs";
3
+ import { reduce, reduceFrom } from "../../array/reduce.mjs";
3
4
  import { success } from "./success.mjs";
4
5
  import { whenIsRight } from "./when.mjs";
5
- import { reduce, reduceFrom } from "../../array/reduce.mjs";
6
6
  import { isType } from "../../common/isType.mjs";
7
7
  import { pipe } from "../../common/pipe.mjs";
8
8
  import { when } from "../../common/when.mjs";
@@ -1,13 +1,14 @@
1
+ export * from './asyncGroup';
1
2
  export * from './asyncPipe';
2
3
  export * from './create';
4
+ export * from './group';
3
5
  export * from './is';
4
6
  export * from './ok';
5
7
  export * from './pipe';
8
+ export * from './result';
9
+ export * from './some';
6
10
  export * from './success';
11
+ export * from './unwrap';
12
+ export * from './unwrapOrThrow';
7
13
  export * from './when';
8
14
  export * from './whenOtherwise';
9
- export * from './result';
10
- export * from './unwrapOrThrow';
11
- export * from './unwrap';
12
- export * from './group';
13
- export * from './asyncGroup';
@@ -0,0 +1,15 @@
1
+ const require_kind = require("../kind.cjs");
2
+ const require_create = require("./create.cjs");
3
+ //#region scripts/either/right/some.ts
4
+ const someKind = require_kind.createKind("some");
5
+ function some(value) {
6
+ return {
7
+ [require_create.rightKind.runTimeKey]: null,
8
+ [require_kind.informationKind.runTimeKey]: "some",
9
+ [require_kind.valueKind.runTimeKey]: value,
10
+ [someKind.runTimeKey]: null
11
+ };
12
+ }
13
+ //#endregion
14
+ exports.some = some;
15
+ exports.someKind = someKind;
@@ -0,0 +1,7 @@
1
+ import { Right } from './create';
2
+ import type * as DKind from '../../kind';
3
+ import type * as DCommon from '../../common';
4
+ export declare const someKind: DKind.Handler<DKind.Definition<"@DuplojsLangEither/some", unknown>>;
5
+ export interface Some<GenericValue extends unknown> extends DCommon.Forward<DKind.Kind<typeof someKind> & Right<"some", GenericValue>> {
6
+ }
7
+ export declare function some<GenericValue extends unknown>(value: GenericValue): Some<GenericValue>;
@@ -0,0 +1,14 @@
1
+ import { createKind, informationKind, valueKind } from "../kind.mjs";
2
+ import { rightKind } from "./create.mjs";
3
+ //#region scripts/either/right/some.ts
4
+ const someKind = createKind("some");
5
+ function some(value) {
6
+ return {
7
+ [rightKind.runTimeKey]: null,
8
+ [informationKind.runTimeKey]: "some",
9
+ [valueKind.runTimeKey]: value,
10
+ [someKind.runTimeKey]: null
11
+ };
12
+ }
13
+ //#endregion
14
+ export { some, someKind };
@@ -0,0 +1,12 @@
1
+ const require_is = require("./left/is.cjs");
2
+ const require_none = require("./left/none.cjs");
3
+ const require_is$1 = require("./right/is.cjs");
4
+ const require_some = require("./right/some.cjs");
5
+ //#region scripts/either/toMaybe.ts
6
+ function toMaybe(input) {
7
+ if (require_is$1.isRight(input) || require_is.isLeft(input)) return input;
8
+ if (input === null || input === void 0) return require_none.none();
9
+ return require_some.some(input);
10
+ }
11
+ //#endregion
12
+ exports.toMaybe = toMaybe;
@@ -0,0 +1,5 @@
1
+ import { Left, None } from './left';
2
+ import { Some, Right } from './right';
3
+ type Either = Right | Left;
4
+ export declare function toMaybe<GenericInput extends unknown>(input: GenericInput): (GenericInput extends Either ? GenericInput : GenericInput extends null | undefined ? None : Some<GenericInput>);
5
+ export {};
@@ -0,0 +1,12 @@
1
+ import { isLeft } from "./left/is.mjs";
2
+ import { none } from "./left/none.mjs";
3
+ import { isRight } from "./right/is.mjs";
4
+ import { some } from "./right/some.mjs";
5
+ //#region scripts/either/toMaybe.ts
6
+ function toMaybe(input) {
7
+ if (isRight(input) || isLeft(input)) return input;
8
+ if (input === null || input === void 0) return none();
9
+ return some(input);
10
+ }
11
+ //#endregion
12
+ export { toMaybe };
@@ -0,0 +1,3 @@
1
+ import { None } from '../left';
2
+ import { Some } from '../right';
3
+ export type MayBe<GenericValue extends unknown> = (Some<GenericValue> | None);
@@ -0,0 +1,14 @@
1
+ const require_kind = require("./kind.cjs");
2
+ const require_is = require("./right/is.cjs");
3
+ //#region scripts/either/unwrapOr.ts
4
+ function unwrapOr(...args) {
5
+ if (args.length === 1) {
6
+ const [value] = args;
7
+ return (input) => unwrapOr(input, value);
8
+ }
9
+ const [input, value] = args;
10
+ if (require_is.isRight(input)) return require_kind.valueKind.getValue(input);
11
+ return value;
12
+ }
13
+ //#endregion
14
+ exports.unwrapOr = unwrapOr;
@@ -0,0 +1,8 @@
1
+ import { Left } from './left';
2
+ import { Right } from './right';
3
+ import { GetValue } from './types';
4
+ import type * as DCommon from '../common';
5
+ type Either = Right | Left;
6
+ export declare function unwrapOr<GenericInput extends Either | DCommon.AnyValue, const GenericValue extends unknown>(input: GenericInput, value: GenericValue): (GetValue<Extract<GenericInput, Right>> | GenericValue);
7
+ export declare function unwrapOr<GenericInput extends Either | DCommon.AnyValue, const GenericValue extends unknown>(value: GenericValue): (input: GenericInput) => (GetValue<Extract<GenericInput, Right>> | GenericValue);
8
+ export {};
@@ -0,0 +1,14 @@
1
+ import { valueKind } from "./kind.mjs";
2
+ import { isRight } from "./right/is.mjs";
3
+ //#region scripts/either/unwrapOr.ts
4
+ function unwrapOr(...args) {
5
+ if (args.length === 1) {
6
+ const [value] = args;
7
+ return (input) => unwrapOr(input, value);
8
+ }
9
+ const [input, value] = args;
10
+ if (isRight(input)) return valueKind.getValue(input);
11
+ return value;
12
+ }
13
+ //#endregion
14
+ export { unwrapOr };
@@ -0,0 +1,14 @@
1
+ const require_kind = require("./kind.cjs");
2
+ const require_is = require("./right/is.cjs");
3
+ //#region scripts/either/unwrapOtherwise.ts
4
+ function unwrapOtherwise(...args) {
5
+ if (args.length === 1) {
6
+ const [value] = args;
7
+ return (input) => unwrapOtherwise(input, value);
8
+ }
9
+ const [input, value] = args;
10
+ if (require_is.isRight(input)) return require_kind.valueKind.getValue(input);
11
+ return value();
12
+ }
13
+ //#endregion
14
+ exports.unwrapOtherwise = unwrapOtherwise;
@@ -0,0 +1,8 @@
1
+ import { Left } from './left';
2
+ import { Right } from './right';
3
+ import { GetValue } from './types';
4
+ import type * as DCommon from '../common';
5
+ type Either = Right | Left;
6
+ export declare function unwrapOtherwise<GenericInput extends Either | DCommon.AnyValue, const GenericValue extends unknown>(input: GenericInput, value: () => GenericValue): (GetValue<Extract<GenericInput, Right>> | GenericValue);
7
+ export declare function unwrapOtherwise<GenericInput extends Either | DCommon.AnyValue, const GenericValue extends unknown>(value: () => GenericValue): (input: GenericInput) => (GetValue<Extract<GenericInput, Right>> | GenericValue);
8
+ export {};
@@ -0,0 +1,14 @@
1
+ import { valueKind } from "./kind.mjs";
2
+ import { isRight } from "./right/is.mjs";
3
+ //#region scripts/either/unwrapOtherwise.ts
4
+ function unwrapOtherwise(...args) {
5
+ if (args.length === 1) {
6
+ const [value] = args;
7
+ return (input) => unwrapOtherwise(input, value);
8
+ }
9
+ const [input, value] = args;
10
+ if (isRight(input)) return valueKind.getValue(input);
11
+ return value();
12
+ }
13
+ //#endregion
14
+ export { unwrapOtherwise };
@@ -1,2 +1,3 @@
1
- export declare function asyncChunk<const GenericItem extends unknown>(size: number): (iterator: AsyncIterable<GenericItem>) => AsyncGenerator<GenericItem[], unknown, unknown>;
2
- export declare function asyncChunk<const GenericItem extends unknown>(iterator: AsyncIterable<GenericItem>, size: number): AsyncGenerator<GenericItem[], unknown, unknown>;
1
+ import type * as DArray from '../array';
2
+ export declare function asyncChunk<const GenericItem extends unknown, GenericSize extends number>(size: GenericSize): (iterator: AsyncIterable<GenericItem>) => AsyncGenerator<readonly GenericItem[] & DArray.MinElements<1> & (number extends GenericSize ? unknown : DArray.MaxElements<GenericSize>), unknown, unknown>;
3
+ export declare function asyncChunk<const GenericItem extends unknown, GenericSize extends number>(iterator: AsyncIterable<GenericItem>, size: GenericSize): AsyncGenerator<readonly GenericItem[] & DArray.MinElements<1> & (number extends GenericSize ? unknown : DArray.MaxElements<GenericSize>), unknown, unknown>;
@@ -1,2 +1,3 @@
1
- export declare function chunk<const GenericItem extends unknown>(size: number): (iterator: Iterable<GenericItem>) => Generator<GenericItem[], unknown, unknown>;
2
- export declare function chunk<const GenericItem extends unknown>(iterator: Iterable<GenericItem>, size: number): Generator<GenericItem[], unknown, unknown>;
1
+ import type * as DArray from '../array';
2
+ export declare function chunk<const GenericItem extends unknown, GenericSize extends number>(size: GenericSize): (iterator: Iterable<GenericItem>) => Generator<readonly GenericItem[] & DArray.MinElements<1> & (number extends GenericSize ? unknown : DArray.MaxElements<GenericSize>), unknown, unknown>;
3
+ export declare function chunk<const GenericItem extends unknown, GenericSize extends number>(iterator: Iterable<GenericItem>, size: GenericSize): Generator<readonly GenericItem[] & DArray.MinElements<1> & (number extends GenericSize ? unknown : DArray.MaxElements<GenericSize>), unknown, unknown>;
@@ -1,6 +1,7 @@
1
+ const require_kind = require("./kind.cjs");
1
2
  const require_reduce = require("../array/reduce.cjs");
2
3
  //#region scripts/generator/reduce.ts
3
- const reduceKind = require("./kind.cjs").createKind("reduce");
4
+ const reduceKind = require_kind.createKind("reduce");
4
5
  function reduceFrom(value) {
5
6
  return { [reduceKind.runTimeKey]: value };
6
7
  }
@@ -1,5 +1,5 @@
1
- import { reduceTools } from "../array/reduce.mjs";
2
1
  import { createKind } from "./kind.mjs";
2
+ import { reduceTools } from "../array/reduce.mjs";
3
3
  //#region scripts/generator/reduce.ts
4
4
  const reduceKind = createKind("reduce");
5
5
  function reduceFrom(value) {
@@ -1,3 +1,3 @@
1
1
  import type * as DCommon from '../../common';
2
- export type FlatIterator<GenericValue extends unknown, GenericDepth extends number, GenericAcc extends never[] = []> = DCommon.IsEqual<GenericAcc["length"], GenericDepth> extends true ? GenericValue : DCommon.IsEqual<GenericAcc["length"], 250> extends true ? GenericValue : GenericValue extends Iterable<infer InferredValue> ? FlatIterator<InferredValue, GenericDepth, [...GenericAcc, never]> : GenericValue;
3
- export type FlatAsyncIterator<GenericValue extends unknown, GenericDepth extends number, GenericAcc extends never[] = []> = DCommon.IsEqual<GenericAcc["length"], GenericDepth> extends true ? GenericValue : DCommon.IsEqual<GenericAcc["length"], 250> extends true ? GenericValue : GenericValue extends Iterable<infer InferredValue> ? FlatIterator<InferredValue, GenericDepth, [...GenericAcc, never]> : GenericValue extends AsyncIterable<infer InferredValue> ? FlatIterator<InferredValue, GenericDepth, [...GenericAcc, never]> : GenericValue;
2
+ export type FlatIterator<GenericValue extends unknown, GenericDepth extends number, GenericAcc extends never[] = []> = DCommon.IsEqual<GenericAcc["length"], GenericDepth> extends true ? GenericValue : DCommon.IsEqual<GenericAcc["length"], 250> extends true ? GenericValue : GenericValue extends string ? GenericValue : GenericValue extends Iterable<infer InferredValue> ? FlatIterator<InferredValue, GenericDepth, [...GenericAcc, never]> : GenericValue;
3
+ export type FlatAsyncIterator<GenericValue extends unknown, GenericDepth extends number, GenericAcc extends never[] = []> = DCommon.IsEqual<GenericAcc["length"], GenericDepth> extends true ? GenericValue : DCommon.IsEqual<GenericAcc["length"], 250> extends true ? GenericValue : GenericValue extends string ? GenericValue : GenericValue extends Iterable<infer InferredValue> ? FlatIterator<InferredValue, GenericDepth, [...GenericAcc, never]> : GenericValue extends AsyncIterable<infer InferredValue> ? FlatIterator<InferredValue, GenericDepth, [...GenericAcc, never]> : GenericValue;
package/dist/index.cjs CHANGED
@@ -15,16 +15,18 @@ const require_callThen = require("./common/callThen.cjs");
15
15
  const require_index$1 = require("./object/index.cjs");
16
16
  const require_clone = require("./common/clone.cjs");
17
17
  const require_index$2 = require("./common/constraint/cast/index.cjs");
18
+ const require_index$3 = require("./common/constraint/infer/index.cjs");
19
+ const require_remove = require("./common/constraint/remove.cjs");
18
20
  const require_detachObjectMethod = require("./common/detachObjectMethod.cjs");
19
21
  const require_enum = require("./common/enum.cjs");
20
22
  const require_equal = require("./common/equal.cjs");
21
23
  const require_escapeRegExp = require("./common/escapeRegExp.cjs");
22
24
  const require_externalPromise = require("./common/externalPromise.cjs");
23
25
  const require_falsy = require("./common/falsy.cjs");
24
- const require_index$3 = require("./array/index.cjs");
25
- const require_index$4 = require("./generator/index.cjs");
26
- const require_index$5 = require("./either/index.cjs");
27
- const require_index$6 = require("./chrono/index.cjs");
26
+ const require_index$4 = require("./array/index.cjs");
27
+ const require_index$5 = require("./generator/index.cjs");
28
+ const require_index$6 = require("./either/index.cjs");
29
+ const require_index$7 = require("./chrono/index.cjs");
28
30
  const require_formData = require("./common/formData.cjs");
29
31
  const require_forward = require("./common/forward.cjs");
30
32
  const require_forwardAsserts = require("./common/forwardAsserts.cjs");
@@ -49,7 +51,7 @@ const require_promiseAll = require("./common/promiseAll.cjs");
49
51
  const require_promiseObject = require("./common/promiseObject.cjs");
50
52
  const require_queue = require("./common/queue.cjs");
51
53
  const require_simpleClone = require("./common/simpleClone.cjs");
52
- const require_index$7 = require("./string/index.cjs");
54
+ const require_index$8 = require("./string/index.cjs");
53
55
  const require_stringToBytes = require("./common/stringToBytes.cjs");
54
56
  const require_stringToMillisecond = require("./common/stringToMillisecond.cjs");
55
57
  const require_toCurriedPredicate = require("./common/toCurriedPredicate.cjs");
@@ -59,68 +61,68 @@ const require_truthy = require("./common/truthy.cjs");
59
61
  const require_when = require("./common/when.cjs");
60
62
  const require_whenElse = require("./common/whenElse.cjs");
61
63
  const require_whenNot = require("./common/whenNot.cjs");
62
- const require_index$8 = require("./common/index.cjs");
63
- const require_index$9 = require("./number/index.cjs");
64
- const require_index$10 = require("./dataStructure/index.cjs");
65
- const require_index$11 = require("./tuple/index.cjs");
66
- const require_index$12 = require("./modeling/index.cjs");
67
- const require_index$13 = require("./pattern/index.cjs");
68
- const require_index$14 = require("./invocation/index.cjs");
69
- const require_index$15 = require("./path/index.cjs");
70
- const require_index$16 = require("./printer/index.cjs");
64
+ const require_index$9 = require("./common/index.cjs");
65
+ const require_index$10 = require("./path/index.cjs");
66
+ const require_index$11 = require("./number/index.cjs");
67
+ const require_index$12 = require("./dataStructure/index.cjs");
68
+ const require_index$13 = require("./tuple/index.cjs");
69
+ const require_index$14 = require("./modeling/index.cjs");
70
+ const require_index$15 = require("./pattern/index.cjs");
71
+ const require_index$16 = require("./invocation/index.cjs");
72
+ const require_index$17 = require("./printer/index.cjs");
71
73
  Object.defineProperty(exports, "A", {
72
74
  enumerable: true,
73
75
  get: function() {
74
- return require_index$3.array_exports;
76
+ return require_index$4.array_exports;
75
77
  }
76
78
  });
77
79
  exports.AssertsError = require_asserts.AssertsError;
78
80
  Object.defineProperty(exports, "C", {
79
81
  enumerable: true,
80
82
  get: function() {
81
- return require_index$6.chrono_exports;
83
+ return require_index$7.chrono_exports;
82
84
  }
83
85
  });
84
86
  Object.defineProperty(exports, "DArray", {
85
87
  enumerable: true,
86
88
  get: function() {
87
- return require_index$3.array_exports;
89
+ return require_index$4.array_exports;
88
90
  }
89
91
  });
90
92
  Object.defineProperty(exports, "DChrono", {
91
93
  enumerable: true,
92
94
  get: function() {
93
- return require_index$6.chrono_exports;
95
+ return require_index$7.chrono_exports;
94
96
  }
95
97
  });
96
98
  Object.defineProperty(exports, "DCommon", {
97
99
  enumerable: true,
98
100
  get: function() {
99
- return require_index$8.common_exports;
101
+ return require_index$9.common_exports;
100
102
  }
101
103
  });
102
104
  Object.defineProperty(exports, "DDataStructure", {
103
105
  enumerable: true,
104
106
  get: function() {
105
- return require_index$10.dataStructure_exports;
107
+ return require_index$12.dataStructure_exports;
106
108
  }
107
109
  });
108
110
  Object.defineProperty(exports, "DEither", {
109
111
  enumerable: true,
110
112
  get: function() {
111
- return require_index$5.either_exports;
113
+ return require_index$6.either_exports;
112
114
  }
113
115
  });
114
116
  Object.defineProperty(exports, "DGenerator", {
115
117
  enumerable: true,
116
118
  get: function() {
117
- return require_index$4.generator_exports;
119
+ return require_index$5.generator_exports;
118
120
  }
119
121
  });
120
122
  Object.defineProperty(exports, "DInvocation", {
121
123
  enumerable: true,
122
124
  get: function() {
123
- return require_index$14.invocation_exports;
125
+ return require_index$16.invocation_exports;
124
126
  }
125
127
  });
126
128
  Object.defineProperty(exports, "DKind", {
@@ -132,13 +134,13 @@ Object.defineProperty(exports, "DKind", {
132
134
  Object.defineProperty(exports, "DModeling", {
133
135
  enumerable: true,
134
136
  get: function() {
135
- return require_index$12.modeling_exports;
137
+ return require_index$14.modeling_exports;
136
138
  }
137
139
  });
138
140
  Object.defineProperty(exports, "DNumber", {
139
141
  enumerable: true,
140
142
  get: function() {
141
- return require_index$9.number_exports;
143
+ return require_index$11.number_exports;
142
144
  }
143
145
  });
144
146
  Object.defineProperty(exports, "DObject", {
@@ -150,55 +152,55 @@ Object.defineProperty(exports, "DObject", {
150
152
  Object.defineProperty(exports, "DPath", {
151
153
  enumerable: true,
152
154
  get: function() {
153
- return require_index$15.path_exports;
155
+ return require_index$10.path_exports;
154
156
  }
155
157
  });
156
158
  Object.defineProperty(exports, "DPattern", {
157
159
  enumerable: true,
158
160
  get: function() {
159
- return require_index$13.pattern_exports;
161
+ return require_index$15.pattern_exports;
160
162
  }
161
163
  });
162
164
  Object.defineProperty(exports, "DPrinter", {
163
165
  enumerable: true,
164
166
  get: function() {
165
- return require_index$16.printer_exports;
167
+ return require_index$17.printer_exports;
166
168
  }
167
169
  });
168
170
  Object.defineProperty(exports, "DS", {
169
171
  enumerable: true,
170
172
  get: function() {
171
- return require_index$10.dataStructure_exports;
173
+ return require_index$12.dataStructure_exports;
172
174
  }
173
175
  });
174
176
  Object.defineProperty(exports, "DString", {
175
177
  enumerable: true,
176
178
  get: function() {
177
- return require_index$7.string_exports;
179
+ return require_index$8.string_exports;
178
180
  }
179
181
  });
180
182
  Object.defineProperty(exports, "DTuple", {
181
183
  enumerable: true,
182
184
  get: function() {
183
- return require_index$11.tuple_exports;
185
+ return require_index$13.tuple_exports;
184
186
  }
185
187
  });
186
188
  Object.defineProperty(exports, "E", {
187
189
  enumerable: true,
188
190
  get: function() {
189
- return require_index$5.either_exports;
191
+ return require_index$6.either_exports;
190
192
  }
191
193
  });
192
194
  Object.defineProperty(exports, "G", {
193
195
  enumerable: true,
194
196
  get: function() {
195
- return require_index$4.generator_exports;
197
+ return require_index$5.generator_exports;
196
198
  }
197
199
  });
198
200
  Object.defineProperty(exports, "I", {
199
201
  enumerable: true,
200
202
  get: function() {
201
- return require_index$14.invocation_exports;
203
+ return require_index$16.invocation_exports;
202
204
  }
203
205
  });
204
206
  exports.InvalidBytesInStringError = require_stringToBytes.InvalidBytesInStringError;
@@ -206,14 +208,14 @@ exports.InvalidMillisecondInStringError = require_stringToMillisecond.InvalidMil
206
208
  Object.defineProperty(exports, "M", {
207
209
  enumerable: true,
208
210
  get: function() {
209
- return require_index$12.modeling_exports;
211
+ return require_index$14.modeling_exports;
210
212
  }
211
213
  });
212
214
  exports.MissingBuilderMethodsError = require_builder.MissingBuilderMethodsError;
213
215
  Object.defineProperty(exports, "N", {
214
216
  enumerable: true,
215
217
  get: function() {
216
- return require_index$9.number_exports;
218
+ return require_index$11.number_exports;
217
219
  }
218
220
  });
219
221
  Object.defineProperty(exports, "O", {
@@ -225,19 +227,19 @@ Object.defineProperty(exports, "O", {
225
227
  Object.defineProperty(exports, "P", {
226
228
  enumerable: true,
227
229
  get: function() {
228
- return require_index$13.pattern_exports;
230
+ return require_index$15.pattern_exports;
229
231
  }
230
232
  });
231
233
  Object.defineProperty(exports, "S", {
232
234
  enumerable: true,
233
235
  get: function() {
234
- return require_index$7.string_exports;
236
+ return require_index$8.string_exports;
235
237
  }
236
238
  });
237
239
  Object.defineProperty(exports, "T", {
238
240
  enumerable: true,
239
241
  get: function() {
240
- return require_index$11.tuple_exports;
242
+ return require_index$13.tuple_exports;
241
243
  }
242
244
  });
243
245
  exports.TheFormData = require_formData.TheFormData;
@@ -268,6 +270,7 @@ exports.falsy = require_falsy.falsy;
268
270
  exports.forward = require_forward.forward;
269
271
  exports.forwardAsserts = require_forwardAsserts.forwardAsserts;
270
272
  exports.forwardLog = require_forwardLog.forwardLog;
273
+ exports.infer = require_index$3.infer;
271
274
  exports.innerPipe = require_innerPipe.innerPipe;
272
275
  exports.instanceOf = require_instanceOf.instanceOf;
273
276
  exports.isType = require_isType.isType;
@@ -286,6 +289,7 @@ exports.preparePipe = require_preparePipe.preparePipe;
286
289
  exports.promiseAll = require_promiseAll.promiseAll;
287
290
  exports.promiseObject = require_promiseObject.promiseObject;
288
291
  exports.queueKind = require_queue.queueKind;
292
+ exports.removeConstraint = require_remove.removeConstraint;
289
293
  exports.shameOnYou = require_index$2.shameOnYou;
290
294
  exports.simpleClone = require_simpleClone.simpleClone;
291
295
  exports.stringToBytes = require_stringToBytes.stringToBytes;
package/dist/index.mjs CHANGED
@@ -14,6 +14,8 @@ import { callThen } from "./common/callThen.mjs";
14
14
  import { object_exports } from "./object/index.mjs";
15
15
  import { clone } from "./common/clone.mjs";
16
16
  import { cast, shameOnYou } from "./common/constraint/cast/index.mjs";
17
+ import { infer } from "./common/constraint/infer/index.mjs";
18
+ import { removeConstraint } from "./common/constraint/remove.mjs";
17
19
  import { detachObjectMethod } from "./common/detachObjectMethod.mjs";
18
20
  import { createEnum } from "./common/enum.mjs";
19
21
  import { equal } from "./common/equal.mjs";
@@ -59,12 +61,12 @@ import { when } from "./common/when.mjs";
59
61
  import { whenElse } from "./common/whenElse.mjs";
60
62
  import { whenNot } from "./common/whenNot.mjs";
61
63
  import { common_exports } from "./common/index.mjs";
64
+ import { path_exports } from "./path/index.mjs";
62
65
  import { number_exports } from "./number/index.mjs";
63
66
  import { dataStructure_exports } from "./dataStructure/index.mjs";
64
67
  import { tuple_exports } from "./tuple/index.mjs";
65
68
  import { modeling_exports } from "./modeling/index.mjs";
66
69
  import { pattern_exports } from "./pattern/index.mjs";
67
70
  import { invocation_exports } from "./invocation/index.mjs";
68
- import { path_exports } from "./path/index.mjs";
69
71
  import { printer_exports } from "./printer/index.mjs";
70
- export { array_exports as A, AssertsError, chrono_exports as C, array_exports as DArray, chrono_exports as DChrono, common_exports as DCommon, dataStructure_exports as DDataStructure, either_exports as DEither, generator_exports as DGenerator, invocation_exports as DInvocation, kind_exports as DKind, modeling_exports as DModeling, number_exports as DNumber, object_exports as DObject, path_exports as DPath, pattern_exports as DPattern, printer_exports as DPrinter, dataStructure_exports as DS, string_exports as DString, tuple_exports as DTuple, either_exports as E, generator_exports as G, invocation_exports as I, InvalidBytesInStringError, InvalidMillisecondInStringError, modeling_exports as M, MissingBuilderMethodsError, number_exports as N, object_exports as O, pattern_exports as P, string_exports as S, tuple_exports as T, TheFormData, and, asserts, asyncInnerPipe, asyncLoop, asyncPipe, bindPrototypeMethods, builderKind, callThen, cast, clone, createAsyncRetry, createBuilder, createEnum, createExternalPromise, createFormData, createGlobalStore, createInterpolation, createKind, createQueue, createTransformer, detachObjectMethod, equal, escapeRegExp, falsy, forward, forwardAsserts, forwardLog, innerPipe, instanceOf, isType, justExec, justReturn, loop, memo, memoObject, memoPromise, mimeType, or, pipe, pipeCall, prepareAsyncPipe, preparePipe, promiseAll, promiseObject, queueKind, shameOnYou, simpleClone, stringToBytes, stringToMillisecond, timeout, toCurriedPredicate, toJSON, toNative, toRegExp, transformer, truthy, useAsyncRetry, when, whenElse, whenNot };
72
+ export { array_exports as A, AssertsError, chrono_exports as C, array_exports as DArray, chrono_exports as DChrono, common_exports as DCommon, dataStructure_exports as DDataStructure, either_exports as DEither, generator_exports as DGenerator, invocation_exports as DInvocation, kind_exports as DKind, modeling_exports as DModeling, number_exports as DNumber, object_exports as DObject, path_exports as DPath, pattern_exports as DPattern, printer_exports as DPrinter, dataStructure_exports as DS, string_exports as DString, tuple_exports as DTuple, either_exports as E, generator_exports as G, invocation_exports as I, InvalidBytesInStringError, InvalidMillisecondInStringError, modeling_exports as M, MissingBuilderMethodsError, number_exports as N, object_exports as O, pattern_exports as P, string_exports as S, tuple_exports as T, TheFormData, and, asserts, asyncInnerPipe, asyncLoop, asyncPipe, bindPrototypeMethods, builderKind, callThen, cast, clone, createAsyncRetry, createBuilder, createEnum, createExternalPromise, createFormData, createGlobalStore, createInterpolation, createKind, createQueue, createTransformer, detachObjectMethod, equal, escapeRegExp, falsy, forward, forwardAsserts, forwardLog, infer, innerPipe, instanceOf, isType, justExec, justReturn, loop, memo, memoObject, memoPromise, mimeType, or, pipe, pipeCall, prepareAsyncPipe, preparePipe, promiseAll, promiseObject, queueKind, removeConstraint, shameOnYou, simpleClone, stringToBytes, stringToMillisecond, timeout, toCurriedPredicate, toJSON, toNative, toRegExp, transformer, truthy, useAsyncRetry, when, whenElse, whenNot };
@@ -1,12 +1,17 @@
1
- import { FlowControllerExit, FlowControllerResult, flowControllerExitKind, FlowControllerPreviousFunctionResult } from './controller';
2
- import { DKind } from '../../index.ts';
1
+ import { FlowControllerExit, FlowControllerResult, flowControllerExitKind, FlowControllerPreviousFunctionResult, UnwrapFlowControllerResult } from './controller';
3
2
  import * as DCommon from '../../common';
3
+ import type * as DKind from '../../kind';
4
4
  type ComputeLastUsableValue<GenericAccumulator extends DCommon.AnyTuple> = GenericAccumulator extends [
5
5
  ...infer InferredRest,
6
6
  infer InferredLast
7
7
  ] ? InferredLast extends FlowControllerResult<infer InferredFlowControllerResult> ? Exclude<Awaited<InferredFlowControllerResult>, FlowControllerPreviousFunctionResult | FlowControllerExit> extends infer InferredOutputValue ? DCommon.HasSomething<InferredOutputValue> extends true ? InferredOutputValue : InferredRest extends DCommon.AnyTuple ? ComputeLastUsableValue<InferredRest> : never : never : InferredLast : never;
8
8
  type Pipe<GenericAccumulator extends DCommon.AnyTuple, GenericOutput extends unknown> = (this: never, input: Awaited<ComputeLastUsableValue<GenericAccumulator>>) => GenericOutput;
9
- type ComputeTypeOutput<GenericAccumulator extends DCommon.AnyTuple> = Extract<(ComputeLastUsableValue<GenericAccumulator> | (GenericAccumulator[number] extends infer InferredPipeResult ? InferredPipeResult extends FlowControllerResult<infer InferredResult> ? InferredResult extends FlowControllerExit ? DKind.GetValue<typeof flowControllerExitKind, InferredResult> : InferredResult extends Promise<infer InferredExit extends FlowControllerExit> ? Promise<DKind.GetValue<typeof flowControllerExitKind, InferredExit>> : never : never : never)) extends infer InferredResult ? DCommon.ContainExtends<InferredResult, Promise<any>> extends true ? Promise<Awaited<InferredResult>> : InferredResult : never, any>;
9
+ type IsMaybePromise<GenericAccumulator extends DCommon.AnyTuple> = {
10
+ [Index in keyof GenericAccumulator]: UnwrapFlowControllerResult<GenericAccumulator[Index]> extends infer InferredResult ? DCommon.IsExtends<InferredResult, Promise<unknown>> extends true ? false : DCommon.ContainExtends<InferredResult, Promise<any>> : never;
11
+ }[number] extends false ? false : true;
12
+ type ComputeTypeOutput<GenericAccumulator extends DCommon.AnyTuple> = Extract<(ComputeLastUsableValue<GenericAccumulator> | (UnwrapFlowControllerResult<GenericAccumulator[number]> extends infer InferredResult ? InferredResult extends FlowControllerExit ? DKind.GetValue<typeof flowControllerExitKind, InferredResult> : InferredResult extends Promise<infer InferredExit extends FlowControllerExit> ? Promise<DKind.GetValue<typeof flowControllerExitKind, InferredExit>> : InferredResult extends Promise<unknown> ? Promise<never> : never : never)) extends infer InferredResult ? DCommon.Or<[
13
+ DCommon.ContainExtends<InferredResult, Promise<any>>
14
+ ]> extends true ? IsMaybePromise<GenericAccumulator> extends true ? DCommon.MaybePromise<Awaited<InferredResult>> : Promise<Awaited<InferredResult>> : InferredResult : never, any>;
10
15
  export declare function flow<const GenericInput extends unknown, const GenericOutput1 extends unknown>(pipe1: Pipe<[
11
16
  GenericInput
12
17
  ], GenericOutput1>): (input: GenericInput) => DCommon.BreakGenericLink<Extract<ComputeTypeOutput<[
@@ -11,6 +11,7 @@ export type FlowControllerPreviousFunctionResult = DCommon.MaybePromise<(DCommon
11
11
  export interface FlowControllerResult<GenericResult extends unknown> {
12
12
  readonly [FlowControllerResultSymbol]: GenericResult;
13
13
  }
14
+ export type UnwrapFlowControllerResult<GenericValue extends unknown> = GenericValue extends FlowControllerResult<infer InferredResult> ? InferredResult : GenericValue;
14
15
  export interface FlowController<GenericInput extends unknown = unknown, GenericOutput extends unknown = unknown> extends DKind.Kind<typeof flowControllerKind> {
15
16
  (this: never, input: GenericInput): FlowControllerResult<GenericOutput>;
16
17
  exec(previousFunction: () => FlowControllerPreviousFunctionResult): (FlowControllerPreviousFunctionResult | GenericOutput | DCommon.MergePromise<FlowControllerPreviousFunctionResult | GenericOutput>);
@@ -0,0 +1,38 @@
1
+ const require_parentClass = require("../../../../kind/parentClass.cjs");
2
+ const require_create = require("../../../../either/left/create.cjs");
3
+ const require_stringToMillisecond = require("../../../../common/stringToMillisecond.cjs");
4
+ const require_kind = require("../../../kind.cjs");
5
+ const require_base = require("../base.cjs");
6
+ //#region scripts/invocation/flow/controller/defaults/aborter.ts
7
+ const flowControllerAborterKind = require_kind.createKind("flow-controller-aborter");
8
+ var AbortErrorFlowController = class extends require_parentClass.parentClass(require_kind.createKind("abort-error-flow-controller"), Error) {
9
+ abortController;
10
+ constructor(abortController) {
11
+ super(null, "Flow is aborted by FlowControllerAborter.");
12
+ this.abortController = abortController;
13
+ }
14
+ };
15
+ const aborter = require_base.createFlowController(flowControllerAborterKind, ({ init, exitFlow }) => (theFunction, params) => {
16
+ let aborter = void 0;
17
+ const formattedTimeout = params?.timeout === void 0 ? void 0 : require_stringToMillisecond.stringToMillisecond(params.timeout);
18
+ return init(async (previousFunction) => {
19
+ const result = previousFunction();
20
+ if (require_base.flowControllerExitKind.has(result)) return result;
21
+ aborter?.abort(new AbortErrorFlowController(aborter));
22
+ const currentAborter = new AbortController();
23
+ aborter = currentAborter;
24
+ if (formattedTimeout !== void 0) setTimeout(() => void currentAborter.abort(new AbortErrorFlowController(currentAborter)), formattedTimeout);
25
+ try {
26
+ const abortResult = await theFunction(result, currentAborter);
27
+ if (currentAborter.signal.aborted === true) return exitFlow(require_create.left("signal-aborted", currentAborter.signal.reason));
28
+ return abortResult;
29
+ } catch (error) {
30
+ if (error instanceof AbortErrorFlowController) return exitFlow(require_create.left("signal-aborted", currentAborter.signal.reason));
31
+ throw error;
32
+ }
33
+ });
34
+ });
35
+ //#endregion
36
+ exports.AbortErrorFlowController = AbortErrorFlowController;
37
+ exports.aborter = aborter;
38
+ exports.flowControllerAborterKind = flowControllerAborterKind;
@@ -0,0 +1,17 @@
1
+ import { FlowController } from '../base';
2
+ import * as DCommon from '../../../../common';
3
+ import * as DKind from '../../../../kind';
4
+ import * as DEither from '../../../../either';
5
+ export declare const flowControllerAborterKind: DKind.Handler<DKind.Definition<"@DuplojsLangInvocation/flow-controller-aborter", unknown>>;
6
+ export interface FlowControllerAborter<GenericInput extends unknown = unknown, GenericOutput extends unknown = unknown> extends DCommon.Forward<FlowController<GenericInput, Promise<Awaited<GenericOutput> | DEither.Left<"signal-aborted", AbortErrorFlowController>>> & DKind.Kind<typeof flowControllerAborterKind>> {
7
+ }
8
+ declare const AbortErrorFlowController_base: DKind.KindClass<DKind.Handler<DKind.Definition<"@DuplojsLangInvocation/abort-error-flow-controller", unknown>>, ErrorConstructor>;
9
+ export declare class AbortErrorFlowController extends AbortErrorFlowController_base {
10
+ abortController: AbortController;
11
+ constructor(abortController: AbortController);
12
+ }
13
+ export interface FlowControllerAborterParams {
14
+ timeout?: DCommon.TimeInString;
15
+ }
16
+ export declare const aborter: <GenericInput extends unknown, GenericOutput extends unknown>(theFunction: (input: GenericInput, aborter: AbortController) => GenericOutput, params?: FlowControllerAborterParams) => FlowControllerAborter<GenericInput, GenericOutput>;
17
+ export {};