@duplojs/lang 0.0.1-beta.8 → 0.1.0-beta.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (267) hide show
  1. package/dist/array/concat.d.ts +2 -2
  2. package/dist/array/flat.d.ts +1 -1
  3. package/dist/array/flatMap.d.ts +2 -2
  4. package/dist/array/from.d.ts +1 -1
  5. package/dist/array/length.d.ts +3 -2
  6. package/dist/array/push.d.ts +4 -2
  7. package/dist/chrono/operators/addTime.d.ts +2 -4
  8. package/dist/common/constraint/cast/index.d.ts +5 -5
  9. package/dist/common/constraint/cast/string.d.ts +4 -0
  10. package/dist/common/constraint/infer/index.d.ts +2 -1
  11. package/dist/common/constraint/infer/string.d.ts +1 -0
  12. package/dist/common/constraint/types/index.d.ts +1 -0
  13. package/dist/common/constraint/types/maybe.d.ts +2 -0
  14. package/dist/common/formData.d.ts +2 -1
  15. package/dist/common/memo.cjs +3 -2
  16. package/dist/common/memo.mjs +3 -2
  17. package/dist/common/memoPromise.cjs +3 -2
  18. package/dist/common/memoPromise.mjs +3 -2
  19. package/dist/common/timeout.cjs +2 -2
  20. package/dist/common/timeout.d.ts +1 -1
  21. package/dist/common/timeout.mjs +2 -2
  22. package/dist/common/types/applyPromiseIf.d.ts +1 -0
  23. package/dist/common/types/index.d.ts +2 -0
  24. package/dist/common/types/isObject.d.ts +8 -0
  25. package/dist/common/types/json.d.ts +12 -1
  26. package/dist/dataStructure/common/codec/base.cjs +2 -2
  27. package/dist/dataStructure/common/codec/base.mjs +2 -2
  28. package/dist/dataStructure/common/codec/defaults/string.cjs +1 -1
  29. package/dist/dataStructure/common/codec/defaults/string.d.ts +1 -1
  30. package/dist/dataStructure/common/codec/defaults/string.mjs +1 -1
  31. package/dist/dataStructure/common/{error.cjs → error/base.cjs} +22 -5
  32. package/dist/dataStructure/common/{error.d.ts → error/base.d.ts} +18 -9
  33. package/dist/dataStructure/common/{error.mjs → error/base.mjs} +21 -6
  34. package/dist/dataStructure/common/error/defaultInterpreter.cjs +87 -0
  35. package/dist/dataStructure/common/error/defaultInterpreter.d.ts +60 -0
  36. package/dist/dataStructure/common/error/defaultInterpreter.mjs +86 -0
  37. package/dist/dataStructure/common/error/index.d.ts +3 -0
  38. package/dist/dataStructure/common/error/interpreter.cjs +44 -0
  39. package/dist/dataStructure/common/error/interpreter.d.ts +32 -0
  40. package/dist/dataStructure/common/error/interpreter.mjs +44 -0
  41. package/dist/dataStructure/common/index.d.ts +0 -1
  42. package/dist/dataStructure/constraint/defaults/allowedCharacters.d.ts +1 -3
  43. package/dist/dataStructure/constraint/types/constraints.d.ts +1 -0
  44. package/dist/dataStructure/fundamentalType/types/fundamentalTypes.d.ts +1 -0
  45. package/dist/dataStructure/helpers/extend.cjs +1 -1
  46. package/dist/dataStructure/helpers/extend.d.ts +1 -1
  47. package/dist/dataStructure/helpers/extend.mjs +1 -1
  48. package/dist/dataStructure/helpers/index.d.ts +6 -2
  49. package/dist/dataStructure/helpers/isNullable.cjs +12 -0
  50. package/dist/dataStructure/helpers/isNullable.d.ts +2 -0
  51. package/dist/dataStructure/helpers/isNullable.mjs +12 -0
  52. package/dist/dataStructure/helpers/isOptional.cjs +12 -0
  53. package/dist/dataStructure/helpers/isOptional.d.ts +2 -0
  54. package/dist/dataStructure/helpers/isOptional.mjs +12 -0
  55. package/dist/dataStructure/helpers/partial.cjs +1 -1
  56. package/dist/dataStructure/helpers/partial.mjs +1 -1
  57. package/dist/dataStructure/helpers/required.cjs +1 -1
  58. package/dist/dataStructure/helpers/required.mjs +1 -1
  59. package/dist/dataStructure/helpers/typeStructureIdentifier.cjs +14 -0
  60. package/dist/dataStructure/helpers/typeStructureIdentifier.d.ts +6 -0
  61. package/dist/dataStructure/helpers/typeStructureIdentifier.mjs +14 -0
  62. package/dist/dataStructure/helpers/unwrapLazy.cjs +9 -0
  63. package/dist/dataStructure/helpers/unwrapLazy.d.ts +2 -0
  64. package/dist/dataStructure/helpers/unwrapLazy.mjs +9 -0
  65. package/dist/dataStructure/index.cjs +56 -35
  66. package/dist/dataStructure/index.mjs +18 -5
  67. package/dist/dataStructure/structure/base.cjs +31 -19
  68. package/dist/dataStructure/structure/base.d.ts +16 -16
  69. package/dist/dataStructure/structure/base.mjs +25 -13
  70. package/dist/dataStructure/structure/defaults/array.cjs +10 -0
  71. package/dist/dataStructure/structure/defaults/array.d.ts +1 -1
  72. package/dist/dataStructure/structure/defaults/array.mjs +10 -0
  73. package/dist/dataStructure/structure/defaults/lazy.cjs +1 -0
  74. package/dist/dataStructure/structure/defaults/lazy.d.ts +1 -1
  75. package/dist/dataStructure/structure/defaults/lazy.mjs +1 -0
  76. package/dist/dataStructure/structure/defaults/nonEncodableString.cjs +1 -0
  77. package/dist/dataStructure/structure/defaults/nonEncodableString.mjs +1 -0
  78. package/dist/dataStructure/structure/defaults/object.cjs +18 -7
  79. package/dist/dataStructure/structure/defaults/object.d.ts +3 -2
  80. package/dist/dataStructure/structure/defaults/object.mjs +18 -7
  81. package/dist/dataStructure/structure/defaults/record.cjs +20 -7
  82. package/dist/dataStructure/structure/defaults/record.d.ts +1 -1
  83. package/dist/dataStructure/structure/defaults/record.mjs +20 -7
  84. package/dist/dataStructure/structure/defaults/type.cjs +1 -0
  85. package/dist/dataStructure/structure/defaults/type.d.ts +1 -1
  86. package/dist/dataStructure/structure/defaults/type.mjs +1 -0
  87. package/dist/dataStructure/structure/defaults/union.cjs +26 -6
  88. package/dist/dataStructure/structure/defaults/union.d.ts +1 -1
  89. package/dist/dataStructure/structure/defaults/union.mjs +21 -1
  90. package/dist/dataStructure/structure/types/value.d.ts +2 -0
  91. package/dist/dataStructure/type/types/types.d.ts +1 -0
  92. package/dist/either/index.cjs +29 -7
  93. package/dist/either/index.d.ts +4 -0
  94. package/dist/either/index.mjs +22 -8
  95. package/dist/either/left/create.d.ts +2 -1
  96. package/dist/either/left/index.d.ts +3 -2
  97. package/dist/either/left/none.cjs +15 -0
  98. package/dist/either/left/none.d.ts +7 -0
  99. package/dist/either/left/none.mjs +14 -0
  100. package/dist/either/matchInformationOtherwise.d.ts +1 -1
  101. package/dist/either/rewriteInformation.cjs +22 -0
  102. package/dist/either/rewriteInformation.d.ts +14 -0
  103. package/dist/either/rewriteInformation.mjs +22 -0
  104. package/dist/either/right/asyncGroup.cjs +2 -2
  105. package/dist/either/right/asyncGroup.mjs +2 -2
  106. package/dist/either/right/create.d.ts +2 -1
  107. package/dist/either/right/group.cjs +1 -1
  108. package/dist/either/right/group.mjs +1 -1
  109. package/dist/either/right/index.d.ts +6 -5
  110. package/dist/either/right/some.cjs +15 -0
  111. package/dist/either/right/some.d.ts +7 -0
  112. package/dist/either/right/some.mjs +14 -0
  113. package/dist/either/toMaybe.cjs +12 -0
  114. package/dist/either/toMaybe.d.ts +5 -0
  115. package/dist/either/toMaybe.mjs +12 -0
  116. package/dist/either/types/index.d.ts +1 -0
  117. package/dist/either/types/mayBe.d.ts +3 -0
  118. package/dist/either/unwrapOr.cjs +14 -0
  119. package/dist/either/unwrapOr.d.ts +8 -0
  120. package/dist/either/unwrapOr.mjs +14 -0
  121. package/dist/either/unwrapOtherwise.cjs +14 -0
  122. package/dist/either/unwrapOtherwise.d.ts +8 -0
  123. package/dist/either/unwrapOtherwise.mjs +14 -0
  124. package/dist/generator/reduce.cjs +2 -1
  125. package/dist/generator/reduce.mjs +1 -1
  126. package/dist/invocation/evidence.d.ts +1 -1
  127. package/dist/invocation/flow/base.cjs +4 -4
  128. package/dist/invocation/flow/base.d.ts +1 -1
  129. package/dist/invocation/flow/base.mjs +4 -4
  130. package/dist/invocation/flow/controller/defaults/debounce.cjs +1 -1
  131. package/dist/invocation/flow/controller/defaults/debounce.mjs +1 -1
  132. package/dist/invocation/flow/controller/defaults/throttling.cjs +1 -1
  133. package/dist/invocation/flow/controller/defaults/throttling.mjs +1 -1
  134. package/dist/invocation/index.cjs +18 -8
  135. package/dist/invocation/index.d.ts +3 -1
  136. package/dist/invocation/index.mjs +12 -6
  137. package/dist/invocation/reader.cjs +30 -0
  138. package/dist/invocation/reader.d.ts +30 -0
  139. package/dist/invocation/reader.mjs +29 -0
  140. package/dist/invocation/resolver.cjs +31 -0
  141. package/dist/invocation/resolver.d.ts +14 -0
  142. package/dist/invocation/resolver.mjs +31 -0
  143. package/dist/invocation/signature.cjs +8 -0
  144. package/dist/invocation/signature.d.ts +7 -0
  145. package/dist/invocation/signature.mjs +8 -0
  146. package/dist/modeling/entity/base.cjs +22 -11
  147. package/dist/modeling/entity/base.d.ts +16 -8
  148. package/dist/modeling/entity/base.mjs +16 -5
  149. package/dist/modeling/entity/helper.d.ts +6 -8
  150. package/dist/modeling/entity/namespace.cjs +0 -2
  151. package/dist/modeling/entity/namespace.d.ts +0 -2
  152. package/dist/modeling/entity/namespace.mjs +0 -2
  153. package/dist/modeling/fact/base.cjs +36 -0
  154. package/dist/modeling/fact/base.d.ts +29 -0
  155. package/dist/modeling/fact/base.mjs +35 -0
  156. package/dist/modeling/fact/index.d.ts +1 -0
  157. package/dist/modeling/flag/base.cjs +2 -6
  158. package/dist/modeling/flag/base.d.ts +10 -11
  159. package/dist/modeling/flag/base.mjs +2 -6
  160. package/dist/modeling/index.cjs +17 -12
  161. package/dist/modeling/index.d.ts +1 -0
  162. package/dist/modeling/index.mjs +5 -2
  163. package/dist/modeling/newType/base.cjs +12 -11
  164. package/dist/modeling/newType/base.d.ts +8 -8
  165. package/dist/modeling/newType/base.mjs +6 -5
  166. package/dist/modeling/taggedObject/base.cjs +22 -11
  167. package/dist/modeling/taggedObject/base.d.ts +12 -7
  168. package/dist/modeling/taggedObject/base.mjs +16 -5
  169. package/dist/object/assign.d.ts +3 -3
  170. package/dist/object/deepOverride.cjs +33 -0
  171. package/dist/object/deepOverride.d.ts +20 -0
  172. package/dist/object/deepOverride.mjs +33 -0
  173. package/dist/object/entries.d.ts +3 -3
  174. package/dist/object/index.cjs +4 -1
  175. package/dist/object/index.d.ts +1 -0
  176. package/dist/object/index.mjs +4 -2
  177. package/dist/object/isSimple.cjs +1 -1
  178. package/dist/object/isSimple.mjs +1 -1
  179. package/dist/object/keys.d.ts +1 -1
  180. package/dist/object/override.cjs +1 -1
  181. package/dist/object/override.d.ts +5 -2
  182. package/dist/object/override.mjs +1 -1
  183. package/dist/object/types/assign.d.ts +2 -0
  184. package/dist/object/types/forbiddenKey.d.ts +1 -1
  185. package/dist/object/types/forbiddenUndefinedProps.d.ts +3 -0
  186. package/dist/object/types/hasKeySignature.d.ts +1 -0
  187. package/dist/object/types/index.d.ts +6 -2
  188. package/dist/object/types/keyofWithoutSignature.d.ts +3 -0
  189. package/dist/object/types/override.d.ts +4 -0
  190. package/dist/object/types/split.d.ts +2 -2
  191. package/dist/object/values.d.ts +1 -1
  192. package/dist/path/create.cjs +11 -0
  193. package/dist/path/create.d.ts +3 -0
  194. package/dist/path/create.mjs +11 -0
  195. package/dist/path/createAbsolute.cjs +12 -0
  196. package/dist/path/createAbsolute.d.ts +3 -0
  197. package/dist/path/createAbsolute.mjs +12 -0
  198. package/dist/path/createAbsoluteOrThrow.cjs +22 -0
  199. package/dist/path/createAbsoluteOrThrow.d.ts +9 -0
  200. package/dist/path/createAbsoluteOrThrow.mjs +21 -0
  201. package/dist/path/createOrThrow.cjs +22 -0
  202. package/dist/path/createOrThrow.d.ts +9 -0
  203. package/dist/path/createOrThrow.mjs +21 -0
  204. package/dist/path/createSegment.cjs +12 -0
  205. package/dist/path/createSegment.d.ts +3 -0
  206. package/dist/path/createSegment.mjs +12 -0
  207. package/dist/path/createSegmentOrThrow.cjs +22 -0
  208. package/dist/path/createSegmentOrThrow.d.ts +9 -0
  209. package/dist/path/createSegmentOrThrow.mjs +21 -0
  210. package/dist/path/declareAbsolutePath.cjs +6 -0
  211. package/dist/path/declareAbsolutePath.d.ts +3 -0
  212. package/dist/path/declareAbsolutePath.mjs +6 -0
  213. package/dist/path/declarePath.cjs +6 -0
  214. package/dist/path/declarePath.d.ts +3 -0
  215. package/dist/path/declarePath.mjs +6 -0
  216. package/dist/path/declareSegment.cjs +6 -0
  217. package/dist/path/declareSegment.d.ts +3 -0
  218. package/dist/path/declareSegment.mjs +6 -0
  219. package/dist/path/index.cjs +39 -3
  220. package/dist/path/index.d.ts +10 -0
  221. package/dist/path/index.mjs +27 -4
  222. package/dist/path/kind.cjs +4 -0
  223. package/dist/path/kind.d.ts +2 -0
  224. package/dist/path/kind.mjs +5 -0
  225. package/dist/pattern/index.cjs +6 -0
  226. package/dist/pattern/index.d.ts +2 -0
  227. package/dist/pattern/index.mjs +5 -1
  228. package/dist/pattern/match/builder.cjs +1 -1
  229. package/dist/pattern/match/builder.mjs +1 -1
  230. package/dist/pattern/matchWithEntityOtherwise.d.ts +2 -2
  231. package/dist/pattern/matchWithFact.cjs +12 -0
  232. package/dist/pattern/matchWithFact.d.ts +12 -0
  233. package/dist/pattern/matchWithFact.mjs +12 -0
  234. package/dist/pattern/matchWithFactOtherwise.cjs +13 -0
  235. package/dist/pattern/matchWithFactOtherwise.d.ts +14 -0
  236. package/dist/pattern/matchWithFactOtherwise.mjs +13 -0
  237. package/dist/pattern/matchWithNumber.d.ts +4 -4
  238. package/dist/pattern/matchWithNumberOtherwise.d.ts +4 -4
  239. package/dist/pattern/matchWithString.d.ts +4 -4
  240. package/dist/pattern/matchWithStringOtherwise.d.ts +4 -4
  241. package/dist/pattern/matchWithTaggedObjectOtherwise.d.ts +2 -2
  242. package/dist/pattern/types/complexUnMatchedValue/getIncompleteUnion.d.ts +8 -8
  243. package/dist/string/capitalize.d.ts +1 -1
  244. package/dist/string/concat.d.ts +2 -2
  245. package/dist/string/constraints/allowedCharacters.d.ts +3 -3
  246. package/dist/string/isComposedOf.cjs +0 -1
  247. package/dist/string/isComposedOf.d.ts +5 -8
  248. package/dist/string/isComposedOf.mjs +0 -1
  249. package/dist/string/prepend.d.ts +2 -2
  250. package/dist/string/split.cjs +1 -0
  251. package/dist/string/split.d.ts +3 -3
  252. package/dist/string/split.mjs +1 -0
  253. package/dist/string/toLowerCase.d.ts +1 -1
  254. package/dist/string/toUpperCase.d.ts +1 -1
  255. package/dist/string/types/IsAllowedString.d.ts +5 -0
  256. package/dist/string/types/index.d.ts +1 -0
  257. package/dist/string/uncapitalize.d.ts +1 -1
  258. package/dist/tuple/types/map.d.ts +1 -1
  259. package/package.json +16 -30
  260. package/dist/dataStructure/common/errorInterpreter.cjs +0 -45
  261. package/dist/dataStructure/common/errorInterpreter.d.ts +0 -32
  262. package/dist/dataStructure/common/errorInterpreter.mjs +0 -45
  263. package/dist/invocation/useCase.cjs +0 -26
  264. package/dist/invocation/useCase.d.ts +0 -28
  265. package/dist/invocation/useCase.mjs +0 -25
  266. package/dist/object/types/assignObjects.d.ts +0 -2
  267. /package/{README.md → README} +0 -0
@@ -0,0 +1,14 @@
1
+ import { structureIdentifier } from "../structure/identifier.mjs";
2
+ import { typeStructureKind } from "../structure/defaults/type.mjs";
3
+ import { typeIdentifier } from "../type/identifier.mjs";
4
+ //#region scripts/dataStructure/helpers/typeStructureIdentifier.ts
5
+ function typeStructureIdentifier(...args) {
6
+ if (args.length === 1) {
7
+ const [typeKind] = args;
8
+ return (structure) => typeStructureIdentifier(structure, typeKind);
9
+ }
10
+ const [structure, typeKind] = args;
11
+ return structureIdentifier(structure, typeStructureKind) && typeIdentifier(structure.definition.type, typeKind);
12
+ }
13
+ //#endregion
14
+ export { typeStructureIdentifier };
@@ -0,0 +1,9 @@
1
+ const require_identifier = require("../structure/identifier.cjs");
2
+ const require_lazy = require("../structure/defaults/lazy.cjs");
3
+ //#region scripts/dataStructure/helpers/unwrapLazy.ts
4
+ function unwrapLazy(structure) {
5
+ if (require_identifier.structureIdentifier(structure, require_lazy.lazyStructureKind)) return structure.definition.getter.value;
6
+ return structure;
7
+ }
8
+ //#endregion
9
+ exports.unwrapLazy = unwrapLazy;
@@ -0,0 +1,2 @@
1
+ import { Structure, StructureValue } from '../structure';
2
+ export declare function unwrapLazy<GenericStructure extends Structure>(structure: GenericStructure): Structure<StructureValue<GenericStructure>>;
@@ -0,0 +1,9 @@
1
+ import { structureIdentifier } from "../structure/identifier.mjs";
2
+ import { lazyStructureKind } from "../structure/defaults/lazy.mjs";
3
+ //#region scripts/dataStructure/helpers/unwrapLazy.ts
4
+ function unwrapLazy(structure) {
5
+ if (structureIdentifier(structure, lazyStructureKind)) return structure.definition.getter.value;
6
+ return structure;
7
+ }
8
+ //#endregion
9
+ export { unwrapLazy };
@@ -14,9 +14,10 @@ const require_undefined = require("./fundamentalType/defaults/undefined.cjs");
14
14
  const require_identifier = require("./fundamentalType/identifier.cjs");
15
15
  const require_json = require("./common/codec/defaults/json.cjs");
16
16
  const require_string$1 = require("./common/codec/defaults/string.cjs");
17
- const require_error = require("./common/error.cjs");
18
- const require_errorInterpreter = require("./common/errorInterpreter.cjs");
19
- const require_base$2 = require("./constraint/base.cjs");
17
+ const require_base$2 = require("./common/error/base.cjs");
18
+ const require_interpreter = require("./common/error/interpreter.cjs");
19
+ const require_defaultInterpreter = require("./common/error/defaultInterpreter.cjs");
20
+ const require_base$3 = require("./constraint/base.cjs");
20
21
  const require_absolutePath = require("./constraint/defaults/absolutePath.cjs");
21
22
  const require_allowedCharacters = require("./constraint/defaults/allowedCharacters.cjs");
22
23
  const require_arrayLengthEqual = require("./constraint/defaults/arrayLengthEqual.cjs");
@@ -54,7 +55,7 @@ const require_regex = require("./constraint/defaults/regex.cjs");
54
55
  const require_identifier$1 = require("./constraint/identifier.cjs");
55
56
  const require_absolutePath$1 = require("./helpers/absolutePath.cjs");
56
57
  const require_allowedCharacters$1 = require("./helpers/allowedCharacters.cjs");
57
- const require_base$3 = require("./structure/base.cjs");
58
+ const require_base$4 = require("./structure/base.cjs");
58
59
  const require_array = require("./structure/defaults/array.cjs");
59
60
  const require_identifier$2 = require("./structure/identifier.cjs");
60
61
  const require_lazy = require("./structure/defaults/lazy.cjs");
@@ -62,7 +63,7 @@ const require_nonEncodableString = require("./structure/defaults/nonEncodableStr
62
63
  const require_object = require("./structure/defaults/object.cjs");
63
64
  const require_union = require("./structure/defaults/union.cjs");
64
65
  const require_type = require("./structure/defaults/type.cjs");
65
- const require_base$4 = require("./type/base.cjs");
66
+ const require_base$5 = require("./type/base.cjs");
66
67
  const require_bigint$1 = require("./type/defaults/bigint.cjs");
67
68
  const require_bigintLiteral = require("./type/defaults/bigintLiteral.cjs");
68
69
  const require_boolean$1 = require("./type/defaults/boolean.cjs");
@@ -91,7 +92,9 @@ const require_greaterThan$1 = require("./helpers/greaterThan.cjs");
91
92
  const require_greaterThanOrEqual$1 = require("./helpers/greaterThanOrEqual.cjs");
92
93
  const require_integer$1 = require("./helpers/integer.cjs");
93
94
  const require_isNullStructure = require("./helpers/isNullStructure.cjs");
95
+ const require_isNullable = require("./helpers/isNullable.cjs");
94
96
  const require_isUndefinedStructure = require("./helpers/isUndefinedStructure.cjs");
97
+ const require_isOptional = require("./helpers/isOptional.cjs");
95
98
  const require_lazy$1 = require("./helpers/lazy.cjs");
96
99
  const require_lessThan$1 = require("./helpers/lessThan.cjs");
97
100
  const require_lessThanOrEqual$1 = require("./helpers/lessThanOrEqual.cjs");
@@ -118,18 +121,20 @@ const require_path$1 = require("./helpers/path.cjs");
118
121
  const require_positive$1 = require("./helpers/positive.cjs");
119
122
  const require_record$1 = require("./helpers/record.cjs");
120
123
  const require_refine$1 = require("./helpers/refine.cjs");
124
+ const require_regex$1 = require("./helpers/regex.cjs");
121
125
  const require_required = require("./helpers/required.cjs");
122
126
  const require_safe$1 = require("./helpers/safe.cjs");
123
127
  const require_segmentPath$1 = require("./helpers/segmentPath.cjs");
124
- const require_string$3 = require("./helpers/string.cjs");
125
128
  const require_strictNegative$1 = require("./helpers/strictNegative.cjs");
126
129
  const require_strictPositive$1 = require("./helpers/strictPositive.cjs");
130
+ const require_string$3 = require("./helpers/string.cjs");
127
131
  const require_stringLengthEqual$1 = require("./helpers/stringLengthEqual.cjs");
128
132
  const require_time$2 = require("./helpers/time.cjs");
129
133
  const require_trimmed$1 = require("./helpers/trimmed.cjs");
134
+ const require_typeStructureIdentifier = require("./helpers/typeStructureIdentifier.cjs");
135
+ const require_unwrapLazy = require("./helpers/unwrapLazy.cjs");
130
136
  const require_url$1 = require("./helpers/url.cjs");
131
137
  const require_uuid$1 = require("./helpers/uuid.cjs");
132
- const require_regex$1 = require("./helpers/regex.cjs");
133
138
  //#region scripts/dataStructure/index.ts
134
139
  var dataStructure_exports = /* @__PURE__ */ require_runtime.__exportAll({
135
140
  AbsolutePathConstraint: () => require_absolutePath.AbsolutePathConstraint,
@@ -142,9 +147,11 @@ var dataStructure_exports = /* @__PURE__ */ require_runtime.__exportAll({
142
147
  BigintType: () => require_bigint$1.BigintType,
143
148
  BooleanLiteralType: () => require_booleanLiteral.BooleanLiteralType,
144
149
  BooleanType: () => require_boolean$1.BooleanType,
145
- ConstraintBase: () => require_base$2.ConstraintBase,
150
+ ConstraintBase: () => require_base$3.ConstraintBase,
146
151
  DateType: () => require_date$1.DateType,
147
152
  EmailConstraint: () => require_email.EmailConstraint,
153
+ Error: () => require_base$2.Error,
154
+ ErrorPromise: () => require_base$2.ErrorPromise,
148
155
  ErrorSymbol: () => require_resultSymbol.ErrorSymbol,
149
156
  EvenConstraint: () => require_even.EvenConstraint,
150
157
  GreaterThanConstraint: () => require_greaterThan.GreaterThanConstraint,
@@ -180,7 +187,7 @@ var dataStructure_exports = /* @__PURE__ */ require_runtime.__exportAll({
180
187
  StringLengthEqualConstraint: () => require_stringLengthEqual.StringLengthEqualConstraint,
181
188
  StringLiteralType: () => require_stringLiteral.StringLiteralType,
182
189
  StringType: () => require_string$2.StringType,
183
- StructureClass: () => require_base$3.StructureClass,
190
+ StructureClass: () => require_base$4.StructureClass,
184
191
  SuccessSymbol: () => require_resultSymbol.SuccessSymbol,
185
192
  TheBigint: () => require_bigint.TheBigint,
186
193
  TheBoolean: () => require_boolean.TheBoolean,
@@ -222,24 +229,26 @@ var dataStructure_exports = /* @__PURE__ */ require_runtime.__exportAll({
222
229
  codecsKind: () => require_base.codecsKind,
223
230
  codecsString: () => require_string$1.codecsString,
224
231
  constraintIdentifier: () => require_identifier$1.constraintIdentifier,
225
- constraintKind: () => require_base$2.constraintKind,
232
+ constraintKind: () => require_base$3.constraintKind,
226
233
  createCodec: () => require_base.createCodec,
227
234
  createCodecs: () => require_base.createCodecs,
228
- createConstraint: () => require_base$2.createConstraint,
229
- createErrorHandler: () => require_error.createErrorHandler,
230
- createErrorInterpreter: () => require_errorInterpreter.createErrorInterpreter,
235
+ createConstraint: () => require_base$3.createConstraint,
236
+ createErrorHandler: () => require_base$2.createErrorHandler,
237
+ createErrorInterpreter: () => require_interpreter.createErrorInterpreter,
231
238
  createFundamentalType: () => require_base$1.createFundamentalType,
232
- createGetErrorHandler: () => require_error.createGetErrorHandler,
239
+ createGetErrorHandler: () => require_base$2.createGetErrorHandler,
233
240
  createKind: () => require_kind.createKind,
234
- createStructure: () => require_base$3.createStructure,
235
- createType: () => require_base$4.createType,
241
+ createStructure: () => require_base$4.createStructure,
242
+ createType: () => require_base$5.createType,
236
243
  date: () => require_date$2.date,
237
244
  dateFundamentalTypeKind: () => require_date.dateFundamentalTypeKind,
238
245
  dateTypeKind: () => require_date$1.dateTypeKind,
239
- decodeIssueKind: () => require_error.decodeIssueKind,
246
+ decodeIssueKind: () => require_base$2.decodeIssueKind,
247
+ defaultErrorInterpreterCodecDictionary: () => require_defaultInterpreter.defaultErrorInterpreterCodecDictionary,
248
+ defaultErrorInterpreterDataStructureDictionary: () => require_defaultInterpreter.defaultErrorInterpreterDataStructureDictionary,
240
249
  email: () => require_email$1.email,
241
250
  emailConstraintKind: () => require_email.emailConstraintKind,
242
- encodeIssueKind: () => require_error.encodeIssueKind,
251
+ encodeIssueKind: () => require_base$2.encodeIssueKind,
243
252
  even: () => require_even$1.even,
244
253
  evenConstraintKind: () => require_even.evenConstraintKind,
245
254
  extend: () => require_extend.extend,
@@ -252,8 +261,10 @@ var dataStructure_exports = /* @__PURE__ */ require_runtime.__exportAll({
252
261
  integer: () => require_integer$1.integer,
253
262
  integerConstraintKind: () => require_integer.integerConstraintKind,
254
263
  isNullStructure: () => require_isNullStructure.isNullStructure,
264
+ isNullable: () => require_isNullable.isNullable,
265
+ isOptional: () => require_isOptional.isOptional,
255
266
  isUndefinedStructure: () => require_isUndefinedStructure.isUndefinedStructure,
256
- issueKind: () => require_error.issueKind,
267
+ issueKind: () => require_base$2.issueKind,
257
268
  lazy: () => require_lazy$1.lazy,
258
269
  lazyStructureKind: () => require_lazy.lazyStructureKind,
259
270
  lessThan: () => require_lessThan$1.lessThan,
@@ -320,20 +331,22 @@ var dataStructure_exports = /* @__PURE__ */ require_runtime.__exportAll({
320
331
  stringLiteralTypeKind: () => require_stringLiteral.stringLiteralTypeKind,
321
332
  stringTypeKind: () => require_string$2.stringTypeKind,
322
333
  structureIdentifier: () => require_identifier$2.structureIdentifier,
323
- structureKind: () => require_base$3.structureKind,
334
+ structureKind: () => require_base$4.structureKind,
324
335
  time: () => require_time$2.time,
325
336
  timeFundamentalTypeKind: () => require_time.timeFundamentalTypeKind,
326
337
  timeTypeKind: () => require_time$1.timeTypeKind,
327
338
  trimmed: () => require_trimmed$1.trimmed,
328
339
  trimmedConstraintKind: () => require_trimmed.trimmedConstraintKind,
329
340
  typeIdentifier: () => require_identifier$3.typeIdentifier,
330
- typeKind: () => require_base$4.typeKind,
341
+ typeKind: () => require_base$5.typeKind,
342
+ typeStructureIdentifier: () => require_typeStructureIdentifier.typeStructureIdentifier,
331
343
  typeStructureKind: () => require_type.typeStructureKind,
332
344
  undefined: () => require_undefined$2.undefined,
333
345
  undefinedFundamentalTypeKind: () => require_undefined.undefinedFundamentalTypeKind,
334
346
  undefinedTypeKind: () => require_undefined$1.undefinedTypeKind,
335
347
  union: () => require_union$1.union,
336
348
  unionStructureKind: () => require_union.unionStructureKind,
349
+ unwrapLazy: () => require_unwrapLazy.unwrapLazy,
337
350
  url: () => require_url$1.url,
338
351
  urlConstraintKind: () => require_url.urlConstraintKind,
339
352
  uuid: () => require_uuid$1.uuid,
@@ -350,9 +363,11 @@ exports.BigintLiteralType = require_bigintLiteral.BigintLiteralType;
350
363
  exports.BigintType = require_bigint$1.BigintType;
351
364
  exports.BooleanLiteralType = require_booleanLiteral.BooleanLiteralType;
352
365
  exports.BooleanType = require_boolean$1.BooleanType;
353
- exports.ConstraintBase = require_base$2.ConstraintBase;
366
+ exports.ConstraintBase = require_base$3.ConstraintBase;
354
367
  exports.DateType = require_date$1.DateType;
355
368
  exports.EmailConstraint = require_email.EmailConstraint;
369
+ exports.Error = require_base$2.Error;
370
+ exports.ErrorPromise = require_base$2.ErrorPromise;
356
371
  exports.ErrorSymbol = require_resultSymbol.ErrorSymbol;
357
372
  exports.EvenConstraint = require_even.EvenConstraint;
358
373
  exports.GreaterThanConstraint = require_greaterThan.GreaterThanConstraint;
@@ -388,7 +403,7 @@ exports.StrictPositiveConstraint = require_strictPositive.StrictPositiveConstrai
388
403
  exports.StringLengthEqualConstraint = require_stringLengthEqual.StringLengthEqualConstraint;
389
404
  exports.StringLiteralType = require_stringLiteral.StringLiteralType;
390
405
  exports.StringType = require_string$2.StringType;
391
- exports.StructureClass = require_base$3.StructureClass;
406
+ exports.StructureClass = require_base$4.StructureClass;
392
407
  exports.SuccessSymbol = require_resultSymbol.SuccessSymbol;
393
408
  exports.TheBigint = require_bigint.TheBigint;
394
409
  exports.TheBoolean = require_boolean.TheBoolean;
@@ -430,17 +445,17 @@ exports.codecsJson = require_json.codecsJson;
430
445
  exports.codecsKind = require_base.codecsKind;
431
446
  exports.codecsString = require_string$1.codecsString;
432
447
  exports.constraintIdentifier = require_identifier$1.constraintIdentifier;
433
- exports.constraintKind = require_base$2.constraintKind;
448
+ exports.constraintKind = require_base$3.constraintKind;
434
449
  exports.createCodec = require_base.createCodec;
435
450
  exports.createCodecs = require_base.createCodecs;
436
- exports.createConstraint = require_base$2.createConstraint;
437
- exports.createErrorHandler = require_error.createErrorHandler;
438
- exports.createErrorInterpreter = require_errorInterpreter.createErrorInterpreter;
451
+ exports.createConstraint = require_base$3.createConstraint;
452
+ exports.createErrorHandler = require_base$2.createErrorHandler;
453
+ exports.createErrorInterpreter = require_interpreter.createErrorInterpreter;
439
454
  exports.createFundamentalType = require_base$1.createFundamentalType;
440
- exports.createGetErrorHandler = require_error.createGetErrorHandler;
455
+ exports.createGetErrorHandler = require_base$2.createGetErrorHandler;
441
456
  exports.createKind = require_kind.createKind;
442
- exports.createStructure = require_base$3.createStructure;
443
- exports.createType = require_base$4.createType;
457
+ exports.createStructure = require_base$4.createStructure;
458
+ exports.createType = require_base$5.createType;
444
459
  Object.defineProperty(exports, "dataStructure_exports", {
445
460
  enumerable: true,
446
461
  get: function() {
@@ -450,10 +465,12 @@ Object.defineProperty(exports, "dataStructure_exports", {
450
465
  exports.date = require_date$2.date;
451
466
  exports.dateFundamentalTypeKind = require_date.dateFundamentalTypeKind;
452
467
  exports.dateTypeKind = require_date$1.dateTypeKind;
453
- exports.decodeIssueKind = require_error.decodeIssueKind;
468
+ exports.decodeIssueKind = require_base$2.decodeIssueKind;
469
+ exports.defaultErrorInterpreterCodecDictionary = require_defaultInterpreter.defaultErrorInterpreterCodecDictionary;
470
+ exports.defaultErrorInterpreterDataStructureDictionary = require_defaultInterpreter.defaultErrorInterpreterDataStructureDictionary;
454
471
  exports.email = require_email$1.email;
455
472
  exports.emailConstraintKind = require_email.emailConstraintKind;
456
- exports.encodeIssueKind = require_error.encodeIssueKind;
473
+ exports.encodeIssueKind = require_base$2.encodeIssueKind;
457
474
  exports.even = require_even$1.even;
458
475
  exports.evenConstraintKind = require_even.evenConstraintKind;
459
476
  exports.extend = require_extend.extend;
@@ -466,8 +483,10 @@ exports.greaterThanOrEqualConstraintKind = require_greaterThanOrEqual.greaterTha
466
483
  exports.integer = require_integer$1.integer;
467
484
  exports.integerConstraintKind = require_integer.integerConstraintKind;
468
485
  exports.isNullStructure = require_isNullStructure.isNullStructure;
486
+ exports.isNullable = require_isNullable.isNullable;
487
+ exports.isOptional = require_isOptional.isOptional;
469
488
  exports.isUndefinedStructure = require_isUndefinedStructure.isUndefinedStructure;
470
- exports.issueKind = require_error.issueKind;
489
+ exports.issueKind = require_base$2.issueKind;
471
490
  exports.lazy = require_lazy$1.lazy;
472
491
  exports.lazyStructureKind = require_lazy.lazyStructureKind;
473
492
  exports.lessThan = require_lessThan$1.lessThan;
@@ -534,20 +553,22 @@ exports.stringLengthEqualConstraintKind = require_stringLengthEqual.stringLength
534
553
  exports.stringLiteralTypeKind = require_stringLiteral.stringLiteralTypeKind;
535
554
  exports.stringTypeKind = require_string$2.stringTypeKind;
536
555
  exports.structureIdentifier = require_identifier$2.structureIdentifier;
537
- exports.structureKind = require_base$3.structureKind;
556
+ exports.structureKind = require_base$4.structureKind;
538
557
  exports.time = require_time$2.time;
539
558
  exports.timeFundamentalTypeKind = require_time.timeFundamentalTypeKind;
540
559
  exports.timeTypeKind = require_time$1.timeTypeKind;
541
560
  exports.trimmed = require_trimmed$1.trimmed;
542
561
  exports.trimmedConstraintKind = require_trimmed.trimmedConstraintKind;
543
562
  exports.typeIdentifier = require_identifier$3.typeIdentifier;
544
- exports.typeKind = require_base$4.typeKind;
563
+ exports.typeKind = require_base$5.typeKind;
564
+ exports.typeStructureIdentifier = require_typeStructureIdentifier.typeStructureIdentifier;
545
565
  exports.typeStructureKind = require_type.typeStructureKind;
546
566
  exports.undefined = require_undefined$2.undefined;
547
567
  exports.undefinedFundamentalTypeKind = require_undefined.undefinedFundamentalTypeKind;
548
568
  exports.undefinedTypeKind = require_undefined$1.undefinedTypeKind;
549
569
  exports.union = require_union$1.union;
550
570
  exports.unionStructureKind = require_union.unionStructureKind;
571
+ exports.unwrapLazy = require_unwrapLazy.unwrapLazy;
551
572
  exports.url = require_url$1.url;
552
573
  exports.urlConstraintKind = require_url.urlConstraintKind;
553
574
  exports.uuid = require_uuid$1.uuid;
@@ -14,8 +14,9 @@ import { TheUndefined, undefinedFundamentalTypeKind } from "./fundamentalType/de
14
14
  import { fundamentalTypeIdentifier } from "./fundamentalType/identifier.mjs";
15
15
  import { codecsJson } from "./common/codec/defaults/json.mjs";
16
16
  import { codecsString } from "./common/codec/defaults/string.mjs";
17
- import { createErrorHandler, createGetErrorHandler, decodeIssueKind, encodeIssueKind, issueKind } from "./common/error.mjs";
18
- import { createErrorInterpreter } from "./common/errorInterpreter.mjs";
17
+ import { Error, ErrorPromise, createErrorHandler, createGetErrorHandler, decodeIssueKind, encodeIssueKind, issueKind } from "./common/error/base.mjs";
18
+ import { createErrorInterpreter } from "./common/error/interpreter.mjs";
19
+ import { defaultErrorInterpreterCodecDictionary, defaultErrorInterpreterDataStructureDictionary } from "./common/error/defaultInterpreter.mjs";
19
20
  import { ConstraintBase, constraintKind, createConstraint } from "./constraint/base.mjs";
20
21
  import { AbsolutePathConstraint, absolutePathConstraintKind } from "./constraint/defaults/absolutePath.mjs";
21
22
  import { AllowedCharactersConstraint, allowedCharactersConstraintKind } from "./constraint/defaults/allowedCharacters.mjs";
@@ -91,7 +92,9 @@ import { greaterThan } from "./helpers/greaterThan.mjs";
91
92
  import { greaterThanOrEqual } from "./helpers/greaterThanOrEqual.mjs";
92
93
  import { integer } from "./helpers/integer.mjs";
93
94
  import { isNullStructure } from "./helpers/isNullStructure.mjs";
95
+ import { isNullable } from "./helpers/isNullable.mjs";
94
96
  import { isUndefinedStructure } from "./helpers/isUndefinedStructure.mjs";
97
+ import { isOptional } from "./helpers/isOptional.mjs";
95
98
  import { lazy } from "./helpers/lazy.mjs";
96
99
  import { lessThan } from "./helpers/lessThan.mjs";
97
100
  import { lessThanOrEqual } from "./helpers/lessThanOrEqual.mjs";
@@ -118,18 +121,20 @@ import { path } from "./helpers/path.mjs";
118
121
  import { positive } from "./helpers/positive.mjs";
119
122
  import { record } from "./helpers/record.mjs";
120
123
  import { refine } from "./helpers/refine.mjs";
124
+ import { regex } from "./helpers/regex.mjs";
121
125
  import { required } from "./helpers/required.mjs";
122
126
  import { safe } from "./helpers/safe.mjs";
123
127
  import { segmentPath } from "./helpers/segmentPath.mjs";
124
- import { string } from "./helpers/string.mjs";
125
128
  import { strictNegative } from "./helpers/strictNegative.mjs";
126
129
  import { strictPositive } from "./helpers/strictPositive.mjs";
130
+ import { string } from "./helpers/string.mjs";
127
131
  import { stringLengthEqual } from "./helpers/stringLengthEqual.mjs";
128
132
  import { time } from "./helpers/time.mjs";
129
133
  import { trimmed } from "./helpers/trimmed.mjs";
134
+ import { typeStructureIdentifier } from "./helpers/typeStructureIdentifier.mjs";
135
+ import { unwrapLazy } from "./helpers/unwrapLazy.mjs";
130
136
  import { url } from "./helpers/url.mjs";
131
137
  import { uuid } from "./helpers/uuid.mjs";
132
- import { regex } from "./helpers/regex.mjs";
133
138
  //#region scripts/dataStructure/index.ts
134
139
  var dataStructure_exports = /* @__PURE__ */ __exportAll({
135
140
  AbsolutePathConstraint: () => AbsolutePathConstraint,
@@ -145,6 +150,8 @@ var dataStructure_exports = /* @__PURE__ */ __exportAll({
145
150
  ConstraintBase: () => ConstraintBase,
146
151
  DateType: () => DateType,
147
152
  EmailConstraint: () => EmailConstraint,
153
+ Error: () => Error,
154
+ ErrorPromise: () => ErrorPromise,
148
155
  ErrorSymbol: () => ErrorSymbol,
149
156
  EvenConstraint: () => EvenConstraint,
150
157
  GreaterThanConstraint: () => GreaterThanConstraint,
@@ -237,6 +244,8 @@ var dataStructure_exports = /* @__PURE__ */ __exportAll({
237
244
  dateFundamentalTypeKind: () => dateFundamentalTypeKind,
238
245
  dateTypeKind: () => dateTypeKind,
239
246
  decodeIssueKind: () => decodeIssueKind,
247
+ defaultErrorInterpreterCodecDictionary: () => defaultErrorInterpreterCodecDictionary,
248
+ defaultErrorInterpreterDataStructureDictionary: () => defaultErrorInterpreterDataStructureDictionary,
240
249
  email: () => email,
241
250
  emailConstraintKind: () => emailConstraintKind,
242
251
  encodeIssueKind: () => encodeIssueKind,
@@ -252,6 +261,8 @@ var dataStructure_exports = /* @__PURE__ */ __exportAll({
252
261
  integer: () => integer,
253
262
  integerConstraintKind: () => integerConstraintKind,
254
263
  isNullStructure: () => isNullStructure,
264
+ isNullable: () => isNullable,
265
+ isOptional: () => isOptional,
255
266
  isUndefinedStructure: () => isUndefinedStructure,
256
267
  issueKind: () => issueKind,
257
268
  lazy: () => lazy,
@@ -328,16 +339,18 @@ var dataStructure_exports = /* @__PURE__ */ __exportAll({
328
339
  trimmedConstraintKind: () => trimmedConstraintKind,
329
340
  typeIdentifier: () => typeIdentifier,
330
341
  typeKind: () => typeKind,
342
+ typeStructureIdentifier: () => typeStructureIdentifier,
331
343
  typeStructureKind: () => typeStructureKind,
332
344
  undefined: () => undefinedHelper,
333
345
  undefinedFundamentalTypeKind: () => undefinedFundamentalTypeKind,
334
346
  undefinedTypeKind: () => undefinedTypeKind,
335
347
  union: () => union,
336
348
  unionStructureKind: () => unionStructureKind,
349
+ unwrapLazy: () => unwrapLazy,
337
350
  url: () => url,
338
351
  urlConstraintKind: () => urlConstraintKind,
339
352
  uuid: () => uuid,
340
353
  uuidConstraintKind: () => uuidConstraintKind
341
354
  });
342
355
  //#endregion
343
- export { AbsolutePathConstraint, AllowedCharactersConstraint, ArrayLengthEqualConstraint, ArrayStructure, BetweenThanConstraint, BetweenThanOrEqualConstraint, BigintLiteralType, BigintType, BooleanLiteralType, BooleanType, ConstraintBase, DateType, EmailConstraint, ErrorSymbol, EvenConstraint, GreaterThanConstraint, GreaterThanOrEqualConstraint, IntegerConstraint, LazyStructure, LessThanConstraint, LessThanOrEqualConstraint, MaxCharactersConstraint, MaxElementsConstraint, MinCharactersConstraint, MinElementsConstraint, MultipleOfConstraint, NegativeConstraint, NonEncodableStringStructure, NotEmptyConstraint, NotZeroConstraint, NullType, NumberInStringConstraint, NumberLiteralType, NumberType, ObjectStructure, OddConstraint, PathConstraint, PositiveConstraint, RecordStructure, RefineConstraint, RegexConstraint, SafeConstraint, SegmentPathConstraint, StrictNegativeConstraint, StrictPositiveConstraint, StringLengthEqualConstraint, StringLiteralType, StringType, StructureClass, SuccessSymbol, TheBigint, TheBoolean, TheDate, TheNull, TheNumber, TheString, TheTime, TheUndefined, TimeType, TrimmedConstraint, TypeStructure, UndefinedType, UnionStructure, UrlConstraint, UuidConstraint, absolutePath, absolutePathConstraintKind, allowedCharacters, allowedCharactersConstraintKind, array, arrayLengthEqual, arrayLengthEqualConstraintKind, arrayStructureKind, betweenThan, betweenThanConstraintKind, betweenThanOrEqual, betweenThanOrEqualConstraintKind, bigint, bigintFundamentalTypeKind, bigintLiteralTypeKind, bigintTypeKind, boolean, booleanFundamentalTypeKind, booleanLiteralTypeKind, booleanTypeKind, codecKind, codecsJson, codecsKind, codecsString, constraintIdentifier, constraintKind, createCodec, createCodecs, createConstraint, createErrorHandler, createErrorInterpreter, createFundamentalType, createGetErrorHandler, createKind, createStructure, createType, dataStructure_exports, date, dateFundamentalTypeKind, dateTypeKind, decodeIssueKind, email, emailConstraintKind, encodeIssueKind, even, evenConstraintKind, extend, fundamentalTypeIdentifier, fundamentalTypeKind, greaterThan, greaterThanConstraintKind, greaterThanOrEqual, greaterThanOrEqualConstraintKind, integer, integerConstraintKind, isNullStructure, isUndefinedStructure, issueKind, lazy, lazyStructureKind, lessThan, lessThanConstraintKind, lessThanOrEqual, lessThanOrEqualConstraintKind, literal, maxCharacters, maxCharactersConstraintKind, maxElements, maxElementsConstraintKind, minCharacters, minCharactersConstraintKind, minElements, minElementsConstraintKind, multipleOf, multipleOfConstraintKind, negative, negativeConstraintKind, nonEncodableStringStructureKind, notEmpty, notEmptyConstraintKind, notZero, notZeroConstraintKind, nullHelper as null, nullFundamentalTypeKind, nullTypeKind, nullable, number, numberFundamentalTypeKind, numberInString, numberInStringConstraintKind, numberLiteralTypeKind, numberTypeKind, object, objectStructureKind, odd, oddConstraintKind, optional, partial, path, pathConstraintKind, positive, positiveConstraintKind, record, recordStructureKind, refine, refineConstraintKind, regex, regexConstraintKind, required, safe, safeConstraintKind, segmentPath, segmentPathConstraintKind, strictNegative, strictNegativeConstraintKind, strictPositive, strictPositiveConstraintKind, string, stringFundamentalTypeKind, stringLengthEqual, stringLengthEqualConstraintKind, stringLiteralTypeKind, stringTypeKind, structureIdentifier, structureKind, time, timeFundamentalTypeKind, timeTypeKind, trimmed, trimmedConstraintKind, typeIdentifier, typeKind, typeStructureKind, undefinedHelper as undefined, undefinedFundamentalTypeKind, undefinedTypeKind, union, unionStructureKind, url, urlConstraintKind, uuid, uuidConstraintKind };
356
+ export { AbsolutePathConstraint, AllowedCharactersConstraint, ArrayLengthEqualConstraint, ArrayStructure, BetweenThanConstraint, BetweenThanOrEqualConstraint, BigintLiteralType, BigintType, BooleanLiteralType, BooleanType, ConstraintBase, DateType, EmailConstraint, Error, ErrorPromise, ErrorSymbol, EvenConstraint, GreaterThanConstraint, GreaterThanOrEqualConstraint, IntegerConstraint, LazyStructure, LessThanConstraint, LessThanOrEqualConstraint, MaxCharactersConstraint, MaxElementsConstraint, MinCharactersConstraint, MinElementsConstraint, MultipleOfConstraint, NegativeConstraint, NonEncodableStringStructure, NotEmptyConstraint, NotZeroConstraint, NullType, NumberInStringConstraint, NumberLiteralType, NumberType, ObjectStructure, OddConstraint, PathConstraint, PositiveConstraint, RecordStructure, RefineConstraint, RegexConstraint, SafeConstraint, SegmentPathConstraint, StrictNegativeConstraint, StrictPositiveConstraint, StringLengthEqualConstraint, StringLiteralType, StringType, StructureClass, SuccessSymbol, TheBigint, TheBoolean, TheDate, TheNull, TheNumber, TheString, TheTime, TheUndefined, TimeType, TrimmedConstraint, TypeStructure, UndefinedType, UnionStructure, UrlConstraint, UuidConstraint, absolutePath, absolutePathConstraintKind, allowedCharacters, allowedCharactersConstraintKind, array, arrayLengthEqual, arrayLengthEqualConstraintKind, arrayStructureKind, betweenThan, betweenThanConstraintKind, betweenThanOrEqual, betweenThanOrEqualConstraintKind, bigint, bigintFundamentalTypeKind, bigintLiteralTypeKind, bigintTypeKind, boolean, booleanFundamentalTypeKind, booleanLiteralTypeKind, booleanTypeKind, codecKind, codecsJson, codecsKind, codecsString, constraintIdentifier, constraintKind, createCodec, createCodecs, createConstraint, createErrorHandler, createErrorInterpreter, createFundamentalType, createGetErrorHandler, createKind, createStructure, createType, dataStructure_exports, date, dateFundamentalTypeKind, dateTypeKind, decodeIssueKind, defaultErrorInterpreterCodecDictionary, defaultErrorInterpreterDataStructureDictionary, email, emailConstraintKind, encodeIssueKind, even, evenConstraintKind, extend, fundamentalTypeIdentifier, fundamentalTypeKind, greaterThan, greaterThanConstraintKind, greaterThanOrEqual, greaterThanOrEqualConstraintKind, integer, integerConstraintKind, isNullStructure, isNullable, isOptional, isUndefinedStructure, issueKind, lazy, lazyStructureKind, lessThan, lessThanConstraintKind, lessThanOrEqual, lessThanOrEqualConstraintKind, literal, maxCharacters, maxCharactersConstraintKind, maxElements, maxElementsConstraintKind, minCharacters, minCharactersConstraintKind, minElements, minElementsConstraintKind, multipleOf, multipleOfConstraintKind, negative, negativeConstraintKind, nonEncodableStringStructureKind, notEmpty, notEmptyConstraintKind, notZero, notZeroConstraintKind, nullHelper as null, nullFundamentalTypeKind, nullTypeKind, nullable, number, numberFundamentalTypeKind, numberInString, numberInStringConstraintKind, numberLiteralTypeKind, numberTypeKind, object, objectStructureKind, odd, oddConstraintKind, optional, partial, path, pathConstraintKind, positive, positiveConstraintKind, record, recordStructureKind, refine, refineConstraintKind, regex, regexConstraintKind, required, safe, safeConstraintKind, segmentPath, segmentPathConstraintKind, strictNegative, strictNegativeConstraintKind, strictPositive, strictPositiveConstraintKind, string, stringFundamentalTypeKind, stringLengthEqual, stringLengthEqualConstraintKind, stringLiteralTypeKind, stringTypeKind, structureIdentifier, structureKind, time, timeFundamentalTypeKind, timeTypeKind, trimmed, trimmedConstraintKind, typeIdentifier, typeKind, typeStructureIdentifier, typeStructureKind, undefinedHelper as undefined, undefinedFundamentalTypeKind, undefinedTypeKind, union, unionStructureKind, unwrapLazy, url, urlConstraintKind, uuid, uuidConstraintKind };
@@ -5,7 +5,7 @@ const require_create$1 = require("../../either/right/create.cjs");
5
5
  const require_simpleClone = require("../../common/simpleClone.cjs");
6
6
  const require_kind = require("../kind.cjs");
7
7
  const require_resultSymbol = require("../common/resultSymbol.cjs");
8
- const require_error = require("../common/error.cjs");
8
+ const require_base = require("../common/error/base.cjs");
9
9
  //#region scripts/dataStructure/structure/base.ts
10
10
  var StructureClass = class StructureClass {
11
11
  constructor() {}
@@ -23,7 +23,7 @@ var StructureClass = class StructureClass {
23
23
  };
24
24
  const structureKind = require_kind.createKind("structure");
25
25
  function createStructure(kindHandler, createConstructor) {
26
- const init = (definition, { executeCheck, executeEncode, executeDecode, isAsynchronous }, ...rest) => {
26
+ const init = (definition, { executeCheck, executeEncode, executeDecode, executeParse, isAsynchronous }, ...rest) => {
27
27
  let cachedIsAsynchronous = void 0;
28
28
  const self = StructureClass.init({
29
29
  ...Object.fromEntries(Object.entries(rest[0] ?? {}).map(([key, prop]) => typeof prop === "function" ? [key, (...args) => prop(self, ...args)] : [key, prop])),
@@ -35,12 +35,14 @@ function createStructure(kindHandler, createConstructor) {
35
35
  executeCheck,
36
36
  executeEncode,
37
37
  executeDecode,
38
+ executeParse,
38
39
  isAsynchronous
39
40
  }, ...rest),
40
41
  executeConstraints: (data, errorHandler) => definition.constraints.reduce((accumulator, constraint) => require_callThen.callThen(accumulator, (result) => result === require_resultSymbol.ErrorSymbol ? require_resultSymbol.ErrorSymbol : require_callThen.callThen(constraint.executeCheck(data), (constraintResult) => constraintResult === require_resultSymbol.ErrorSymbol ? errorHandler?.().addIssue(self, data, constraint) ?? require_resultSymbol.ErrorSymbol : require_resultSymbol.SuccessSymbol)), require_resultSymbol.SuccessSymbol),
41
42
  executeCheck: (data, errorHandler) => require_callThen.callThen(executeCheck(self, data, errorHandler), (result) => result === require_resultSymbol.ErrorSymbol ? require_resultSymbol.ErrorSymbol : self.executeConstraints(data, errorHandler)),
42
43
  executeEncode: (codecContext, data, errorHandler) => executeEncode(self, codecContext, data, errorHandler),
43
44
  executeDecode: (codecContext, data, errorHandler) => executeDecode(self, codecContext, data, errorHandler),
45
+ executeParse: (codecContext, data, errorHandler) => executeParse(self, codecContext, data, errorHandler),
44
46
  isAsynchronous: () => {
45
47
  if (cachedIsAsynchronous !== void 0) return cachedIsAsynchronous;
46
48
  cachedIsAsynchronous = false;
@@ -50,14 +52,14 @@ function createStructure(kindHandler, createConstructor) {
50
52
  return cachedIsAsynchronous;
51
53
  },
52
54
  check: (data) => {
53
- const errorHandler = require_error.createGetErrorHandler();
55
+ const errorHandler = require_base.createGetErrorHandler();
54
56
  const result = self.executeCheck(data, errorHandler);
55
- if (result instanceof Promise) return require_create.left("async-error", void 0);
57
+ if (result instanceof Promise) return require_create.left("async-error", new require_base.ErrorPromise());
56
58
  if (result === require_resultSymbol.ErrorSymbol) return require_create.left("check-error", errorHandler().createError());
57
59
  return require_create$1.right("check-success", data);
58
60
  },
59
61
  asyncCheck: async (data) => {
60
- const errorHandler = require_error.createGetErrorHandler();
62
+ const errorHandler = require_base.createGetErrorHandler();
61
63
  if (await self.executeCheck(data, errorHandler) === require_resultSymbol.ErrorSymbol) return require_create.left("check-error", errorHandler().createError());
62
64
  return require_create$1.right("check-success", data);
63
65
  },
@@ -66,41 +68,51 @@ function createStructure(kindHandler, createConstructor) {
66
68
  if (result instanceof Promise || result === require_resultSymbol.ErrorSymbol) return false;
67
69
  return true;
68
70
  },
69
- encode: (codecs, data) => self.unsafeEncode(codecs, data),
70
- asyncEncode: (codecs, data) => self.asyncUnsafeEncode(codecs, data),
71
- unsafeEncode: (codecs, data) => {
72
- const errorHandler = require_error.createGetErrorHandler();
71
+ encode: (codecs, data) => {
72
+ const errorHandler = require_base.createGetErrorHandler();
73
73
  const result = self.executeEncode(codecs.context.value, data, errorHandler);
74
- if (result instanceof Promise) return require_create.left("async-error", void 0);
74
+ if (result instanceof Promise) return require_create.left("async-error", new require_base.ErrorPromise());
75
75
  if (result === require_resultSymbol.ErrorSymbol) return require_create.left("encode-error", errorHandler().createError());
76
76
  return require_create$1.right("encode-success", result);
77
77
  },
78
- asyncUnsafeEncode: async (codecs, data) => {
79
- const errorHandler = require_error.createGetErrorHandler();
78
+ asyncEncode: async (codecs, data) => {
79
+ const errorHandler = require_base.createGetErrorHandler();
80
80
  const result = await self.executeEncode(codecs.context.value, data, errorHandler);
81
81
  if (result === require_resultSymbol.ErrorSymbol) return require_create.left("encode-error", errorHandler().createError());
82
82
  return require_create$1.right("encode-success", result);
83
83
  },
84
- decode: (codecs, data) => self.unsafeDecode(codecs, data),
85
- asyncDecode: (codecs, data) => self.asyncUnsafeDecode(codecs, data),
86
- unsafeDecode: (codecs, data) => {
87
- const errorHandler = require_error.createGetErrorHandler();
84
+ decode: (codecs, data) => {
85
+ const errorHandler = require_base.createGetErrorHandler();
88
86
  const result = self.executeDecode(codecs.context.value, data, errorHandler);
89
- if (result instanceof Promise) return require_create.left("async-error", void 0);
87
+ if (result instanceof Promise) return require_create.left("async-error", new require_base.ErrorPromise());
90
88
  if (result === require_resultSymbol.ErrorSymbol) return require_create.left("decode-error", errorHandler().createError());
91
89
  return require_create$1.right("decode-success", result);
92
90
  },
93
- asyncUnsafeDecode: async (codecs, data) => {
94
- const errorHandler = require_error.createGetErrorHandler();
91
+ asyncDecode: async (codecs, data) => {
92
+ const errorHandler = require_base.createGetErrorHandler();
95
93
  const result = await self.executeDecode(codecs.context.value, data, errorHandler);
96
94
  if (result === require_resultSymbol.ErrorSymbol) return require_create.left("decode-error", errorHandler().createError());
97
95
  return require_create$1.right("decode-success", result);
98
96
  },
97
+ parse: (data, codecs) => {
98
+ const errorHandler = require_base.createGetErrorHandler();
99
+ const result = self.executeParse(codecs?.context.value ?? /* @__PURE__ */ new Map(), data, errorHandler);
100
+ if (result instanceof Promise) return require_create.left("async-error", new require_base.ErrorPromise());
101
+ if (result === require_resultSymbol.ErrorSymbol) return require_create.left("parse-error", errorHandler().createError());
102
+ return require_create$1.right("parse-success", result);
103
+ },
104
+ asyncParse: async (data, codecs) => {
105
+ const errorHandler = require_base.createGetErrorHandler();
106
+ const result = await self.executeParse(codecs?.context.value ?? /* @__PURE__ */ new Map(), data, errorHandler);
107
+ if (result === require_resultSymbol.ErrorSymbol) return require_create.left("parse-error", errorHandler().createError());
108
+ return require_create$1.right("parse-success", result);
109
+ },
99
110
  contract: () => self,
100
111
  clone: () => init(require_simpleClone.simpleClone(definition), {
101
112
  executeCheck,
102
113
  executeEncode,
103
114
  executeDecode,
115
+ executeParse,
104
116
  isAsynchronous
105
117
  }, ...rest),
106
118
  setMessage: (message) => {
@@ -1,6 +1,6 @@
1
- import { ErrorSymbol, GetErrorHandler, SuccessSymbol, EncodedValue, CodecContext, Error, Codecs } from '../common';
1
+ import { ErrorPromise, ErrorSymbol, GetErrorHandler, SuccessSymbol, EncodedValue, CodecContext, Error, Codecs } from '../common';
2
2
  import { Constraint } from '../constraint';
3
- import { StructureConstraintsValue, StructureValue } from './types';
3
+ import { ComputeStructureValue } from './types';
4
4
  import type * as DKind from '../../kind';
5
5
  import * as DEither from '../../either';
6
6
  import * as DCommon from '../../common';
@@ -14,26 +14,25 @@ export interface StructureDefinition<GenericConstraints extends readonly Constra
14
14
  readonly message?: string;
15
15
  readonly constraints: readonly [...GenericConstraints];
16
16
  }
17
- export interface Structure<GenericValue extends unknown = unknown, GenericDefinition extends StructureDefinition<readonly Constraint<GenericValue>[]> = StructureDefinition<readonly Constraint<GenericValue>[]>> extends DKind.Kind<typeof structureKind, (GenericValue & StructureConstraintsValue<GenericDefinition["constraints"][number]>)> {
17
+ export interface Structure<out GenericValue extends unknown = unknown, out GenericDefinition extends StructureDefinition<readonly Constraint<unknown, GenericValue>[]> = StructureDefinition<readonly Constraint<unknown, GenericValue>[]>> extends DKind.Kind<typeof structureKind, ComputeStructureValue<GenericValue, GenericDefinition["constraints"]>> {
18
18
  readonly definition: GenericDefinition;
19
- addConstraint<const GenericNewConstraints extends DCommon.AnyTuple<Constraint<GenericValue>>>(...args: DCommon.FixDeepFunctionInfer<DCommon.AnyTuple<Constraint<GenericValue>>, GenericNewConstraints>): Structure<StructureValue<this>, StructureDefinition<readonly [...this["definition"]["constraints"], ...GenericNewConstraints]>>;
19
+ addConstraint<const GenericNewConstraints extends DCommon.AnyTuple<Constraint<GenericValue>>>(...args: DCommon.FixDeepFunctionInfer<DCommon.AnyTuple<Constraint<GenericValue>>, GenericNewConstraints>): Structure<ComputeStructureValue<GenericValue, GenericDefinition["constraints"]>, StructureDefinition<readonly [...this["definition"]["constraints"], ...GenericNewConstraints]>>;
20
20
  executeConstraints(data: unknown, errorHandler?: GetErrorHandler): DCommon.MaybePromise<SuccessSymbol | ErrorSymbol>;
21
21
  executeCheck(data: unknown, errorHandler?: GetErrorHandler): DCommon.MaybePromise<SuccessSymbol | ErrorSymbol>;
22
22
  executeEncode(codecContext: CodecContext, data: unknown, errorHandler?: GetErrorHandler): unknown;
23
23
  executeDecode(codecContext: CodecContext, data: unknown, errorHandler?: GetErrorHandler): unknown;
24
+ executeParse(codecContext: CodecContext, data: unknown, errorHandler?: GetErrorHandler): unknown;
24
25
  isAsynchronous(): boolean;
25
- check(data: unknown): (DEither.Right<"check-success", StructureValue<this>> | DEither.Left<"async-error", undefined> | DEither.Left<"check-error", Error>);
26
- asyncCheck(data: unknown): Promise<DEither.Right<"check-success", StructureValue<this>> | DEither.Left<"check-error", Error>>;
27
- is(data: unknown): data is StructureValue<this>;
28
- encode<GenericCodecs extends Codecs>(codecs: GenericCodecs, data: StructureValue<this>): (DEither.Right<"encode-success", EncodedValue<StructureValue<this>, GenericCodecs>> | DEither.Left<"async-error", undefined> | DEither.Left<"encode-error", Error>);
29
- asyncEncode<GenericCodecs extends Codecs>(codecs: GenericCodecs, data: StructureValue<this>): Promise<DEither.Right<"encode-success", EncodedValue<StructureValue<this>, GenericCodecs>> | DEither.Left<"encode-error", Error>>;
30
- unsafeEncode<GenericCodecs extends Codecs>(codecs: GenericCodecs, data: unknown): (DEither.Right<"encode-success", EncodedValue<StructureValue<this>, GenericCodecs>> | DEither.Left<"async-error", undefined> | DEither.Left<"encode-error", Error>);
31
- asyncUnsafeEncode<GenericCodecs extends Codecs>(codecs: GenericCodecs, data: unknown): Promise<DEither.Right<"encode-success", EncodedValue<StructureValue<this>, GenericCodecs>> | DEither.Left<"encode-error", Error>>;
32
- decode<GenericCodecs extends Codecs>(codecs: GenericCodecs, data: EncodedValue<StructureValue<this>, GenericCodecs>): (DEither.Right<"decode-success", StructureValue<this>> | DEither.Left<"async-error", undefined> | DEither.Left<"decode-error", Error>);
33
- asyncDecode<GenericCodecs extends Codecs>(codecs: GenericCodecs, data: EncodedValue<StructureValue<this>, GenericCodecs>): Promise<DEither.Right<"decode-success", StructureValue<this>> | DEither.Left<"decode-error", Error>>;
34
- unsafeDecode(codecs: Codecs, data: unknown): (DEither.Right<"decode-success", StructureValue<this>> | DEither.Left<"async-error", undefined> | DEither.Left<"decode-error", Error>);
35
- asyncUnsafeDecode(codecs: Codecs, data: unknown): Promise<DEither.Right<"decode-success", StructureValue<this>> | DEither.Left<"decode-error", Error>>;
36
- contract<GenericValue extends unknown, GenericThis extends this>(...args: DCommon.IsEqual<StructureValue<GenericThis>, GenericValue> extends true ? [] : [] & DCommon.ComputedTypeError<"Contract error.">): Structure<GenericValue>;
26
+ check(data: unknown): (DEither.Right<"check-success", ComputeStructureValue<GenericValue, GenericDefinition["constraints"]>> | DEither.Left<"async-error", ErrorPromise> | DEither.Left<"check-error", Error>);
27
+ asyncCheck(data: unknown): Promise<DEither.Right<"check-success", ComputeStructureValue<GenericValue, GenericDefinition["constraints"]>> | DEither.Left<"check-error", Error>>;
28
+ is(data: unknown): data is ComputeStructureValue<GenericValue, GenericDefinition["constraints"]>;
29
+ encode<GenericCodecs extends Codecs>(codecs: GenericCodecs, data: unknown): (DEither.Right<"encode-success", EncodedValue<ComputeStructureValue<GenericValue, GenericDefinition["constraints"]>, GenericCodecs>> | DEither.Left<"async-error", ErrorPromise> | DEither.Left<"encode-error", Error>);
30
+ asyncEncode<GenericCodecs extends Codecs>(codecs: GenericCodecs, data: unknown): Promise<DEither.Right<"encode-success", EncodedValue<ComputeStructureValue<GenericValue, GenericDefinition["constraints"]>, GenericCodecs>> | DEither.Left<"encode-error", Error>>;
31
+ decode<GenericCodecs extends Codecs>(codecs: GenericCodecs, data: unknown): (DEither.Right<"decode-success", ComputeStructureValue<GenericValue, GenericDefinition["constraints"]>> | DEither.Left<"async-error", ErrorPromise> | DEither.Left<"decode-error", Error>);
32
+ asyncDecode<GenericCodecs extends Codecs>(codecs: GenericCodecs, data: unknown): Promise<DEither.Right<"decode-success", ComputeStructureValue<GenericValue, GenericDefinition["constraints"]>> | DEither.Left<"decode-error", Error>>;
33
+ parse(data: unknown, codecs?: Codecs): (DEither.Right<"parse-success", ComputeStructureValue<GenericValue, GenericDefinition["constraints"]>> | DEither.Left<"async-error", ErrorPromise> | DEither.Left<"parse-error", Error>);
34
+ asyncParse(data: unknown, codecs?: Codecs): Promise<DEither.Right<"parse-success", ComputeStructureValue<GenericValue, GenericDefinition["constraints"]>> | DEither.Left<"parse-error", Error>>;
35
+ contract<GenericContractValue extends unknown, GenericArgs extends (DCommon.IsEqual<ComputeStructureValue<GenericValue, GenericDefinition["constraints"]>, GenericContractValue> extends true ? [] : [] & DCommon.ComputedTypeError<"Contract error.">) = (DCommon.IsEqual<ComputeStructureValue<GenericValue, GenericDefinition["constraints"]>, GenericContractValue> extends true ? [] : [] & DCommon.ComputedTypeError<"Contract error.">)>(...args: NoInfer<GenericArgs>): Structure<GenericContractValue>;
37
36
  clone(): this;
38
37
  setMessage(massage: string): this;
39
38
  addMessage(massage: string): this;
@@ -42,6 +41,7 @@ export interface CreateStructureInitParams<GenericStructure extends Structure =
42
41
  executeCheck(self: GenericStructure, data: unknown, errorHandler?: GetErrorHandler): DCommon.MaybePromise<SuccessSymbol | ErrorSymbol>;
43
42
  executeEncode(self: GenericStructure, codecContext: CodecContext, data: unknown, errorHandler?: GetErrorHandler): unknown;
44
43
  executeDecode(self: GenericStructure, codecContext: CodecContext, data: unknown, errorHandler?: GetErrorHandler): unknown;
44
+ executeParse(self: GenericStructure, codecContext: CodecContext, data: unknown, errorHandler?: GetErrorHandler): unknown;
45
45
  isAsynchronous(self: GenericStructure): boolean;
46
46
  }
47
47
  export type CreateStructureInitRest<GenericStructure extends Structure = Structure> = {