@nicolastoulemont/std 0.5.1 → 0.7.0

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 (207) hide show
  1. package/README.md +546 -0
  2. package/dist/adt/index.d.mts +2 -2
  3. package/dist/adt/index.mjs +1 -1
  4. package/dist/adt-DajUZvJe.mjs +2 -0
  5. package/dist/adt-DajUZvJe.mjs.map +1 -0
  6. package/dist/brand/index.d.mts +2 -2
  7. package/dist/brand/index.mjs +1 -1
  8. package/dist/brand-Bia3Vj6l.mjs +2 -0
  9. package/dist/brand-Bia3Vj6l.mjs.map +1 -0
  10. package/dist/chunk-C934ptG5.mjs +1 -0
  11. package/dist/context/index.d.mts +2 -0
  12. package/dist/context/index.mjs +1 -0
  13. package/dist/context-CCHj1nab.mjs +2 -0
  14. package/dist/context-CCHj1nab.mjs.map +1 -0
  15. package/dist/context-r8ESJiFn.d.mts +176 -0
  16. package/dist/context-r8ESJiFn.d.mts.map +1 -0
  17. package/dist/data/index.d.mts +2 -2
  18. package/dist/data/index.mjs +1 -1
  19. package/dist/data-CJxw6al9.mjs +2 -0
  20. package/dist/data-CJxw6al9.mjs.map +1 -0
  21. package/dist/data.tagged-error.types-CLlJJ3n5.d.mts +50 -0
  22. package/dist/data.tagged-error.types-CLlJJ3n5.d.mts.map +1 -0
  23. package/dist/{discriminator.types-DkThfvNE.d.mts → discriminator.types-CTURejXz.d.mts} +1 -1
  24. package/dist/discriminator.types-CTURejXz.d.mts.map +1 -0
  25. package/dist/dual-CZhzZslG.mjs +2 -0
  26. package/dist/dual-CZhzZslG.mjs.map +1 -0
  27. package/dist/either/index.d.mts +2 -2
  28. package/dist/either/index.mjs +1 -1
  29. package/dist/either-6BwadiFj.mjs +2 -0
  30. package/dist/either-6BwadiFj.mjs.map +1 -0
  31. package/dist/equality-CoyUHWh9.mjs +2 -0
  32. package/dist/equality-CoyUHWh9.mjs.map +1 -0
  33. package/dist/flow-D8_tllWl.mjs +2 -0
  34. package/dist/flow-D8_tllWl.mjs.map +1 -0
  35. package/dist/functions/index.d.mts +2 -0
  36. package/dist/functions/index.mjs +1 -0
  37. package/dist/functions-BkevX2Dw.mjs +2 -0
  38. package/dist/functions-BkevX2Dw.mjs.map +1 -0
  39. package/dist/fx/index.d.mts +2 -3
  40. package/dist/fx/index.mjs +1 -1
  41. package/dist/fx-BzxLbf1Q.mjs +2 -0
  42. package/dist/fx-BzxLbf1Q.mjs.map +1 -0
  43. package/dist/fx.runtime-BcC6yMSy.mjs +2 -0
  44. package/dist/fx.runtime-BcC6yMSy.mjs.map +1 -0
  45. package/dist/{fx.types-CXTwEa1G.mjs → fx.types-Bg-Mmdm5.mjs} +1 -1
  46. package/dist/fx.types-Bg-Mmdm5.mjs.map +1 -0
  47. package/dist/{fx.types-DO-8yG4c.d.mts → fx.types-DeEWEltG.d.mts} +3 -8
  48. package/dist/{fx.types-DO-8yG4c.d.mts.map → fx.types-DeEWEltG.d.mts.map} +1 -1
  49. package/dist/index-7Lv982Om.d.mts +217 -0
  50. package/dist/index-7Lv982Om.d.mts.map +1 -0
  51. package/dist/index-B_iY5tq0.d.mts +241 -0
  52. package/dist/index-B_iY5tq0.d.mts.map +1 -0
  53. package/dist/index-B_wWGszy.d.mts +129 -0
  54. package/dist/index-B_wWGszy.d.mts.map +1 -0
  55. package/dist/index-BiiE8NS7.d.mts +108 -0
  56. package/dist/index-BiiE8NS7.d.mts.map +1 -0
  57. package/dist/index-By6dNRc4.d.mts +277 -0
  58. package/dist/index-By6dNRc4.d.mts.map +1 -0
  59. package/dist/index-CCo85AdC.d.mts +121 -0
  60. package/dist/index-CCo85AdC.d.mts.map +1 -0
  61. package/dist/index-CUZn-ohG.d.mts +490 -0
  62. package/dist/index-CUZn-ohG.d.mts.map +1 -0
  63. package/dist/index-CugDqdx6.d.mts +464 -0
  64. package/dist/index-CugDqdx6.d.mts.map +1 -0
  65. package/dist/index-DEAWPlcI.d.mts +405 -0
  66. package/dist/index-DEAWPlcI.d.mts.map +1 -0
  67. package/dist/index-DKS1g1oC.d.mts +449 -0
  68. package/dist/index-DKS1g1oC.d.mts.map +1 -0
  69. package/dist/index-DSsDFLGw.d.mts +777 -0
  70. package/dist/index-DSsDFLGw.d.mts.map +1 -0
  71. package/dist/{index-DjjJIDaA.d.mts → index-DXbYlSnB.d.mts} +66 -103
  72. package/dist/index-DXbYlSnB.d.mts.map +1 -0
  73. package/dist/{index-DtAPrec7.d.mts → index-DaTvFhZ8.d.mts} +167 -52
  74. package/dist/index-DaTvFhZ8.d.mts.map +1 -0
  75. package/dist/index-Dm2dFysv.d.mts +415 -0
  76. package/dist/index-Dm2dFysv.d.mts.map +1 -0
  77. package/dist/index.d.mts +23 -16
  78. package/dist/index.mjs +1 -1
  79. package/dist/layer/index.d.mts +2 -0
  80. package/dist/layer/index.mjs +1 -0
  81. package/dist/layer-BttmtDrs.mjs +2 -0
  82. package/dist/layer-BttmtDrs.mjs.map +1 -0
  83. package/dist/layer.types-DgpCIsk_.d.mts +100 -0
  84. package/dist/layer.types-DgpCIsk_.d.mts.map +1 -0
  85. package/dist/multithread/index.d.mts +2 -0
  86. package/dist/multithread/index.mjs +1 -0
  87. package/dist/multithread-xUUh4eLn.mjs +19 -0
  88. package/dist/multithread-xUUh4eLn.mjs.map +1 -0
  89. package/dist/option/index.d.mts +2 -3
  90. package/dist/option/index.mjs +1 -1
  91. package/dist/option-Qt1H-u7c.mjs +2 -0
  92. package/dist/option-Qt1H-u7c.mjs.map +1 -0
  93. package/dist/option.types-DRUm2QiI.mjs +2 -0
  94. package/dist/option.types-DRUm2QiI.mjs.map +1 -0
  95. package/dist/{option.types-Cluybn30.d.mts → option.types-DlAb6Sr0.d.mts} +6 -11
  96. package/dist/option.types-DlAb6Sr0.d.mts.map +1 -0
  97. package/dist/order/index.d.mts +2 -0
  98. package/dist/order/index.mjs +1 -0
  99. package/dist/order-D5c4QChk.mjs +2 -0
  100. package/dist/order-D5c4QChk.mjs.map +1 -0
  101. package/dist/pipeable-COGyGMUV.mjs +2 -0
  102. package/dist/pipeable-COGyGMUV.mjs.map +1 -0
  103. package/dist/{pipeable-KHu4D8ol.d.mts → pipeable-rfqacPxZ.d.mts} +2 -9
  104. package/dist/{pipeable-KHu4D8ol.d.mts.map → pipeable-rfqacPxZ.d.mts.map} +1 -1
  105. package/dist/predicate/index.d.mts +2 -2
  106. package/dist/predicate/index.mjs +1 -1
  107. package/dist/predicate-DUhhQqWY.mjs +2 -0
  108. package/dist/predicate-DUhhQqWY.mjs.map +1 -0
  109. package/dist/provide/index.d.mts +2 -0
  110. package/dist/provide/index.mjs +1 -0
  111. package/dist/provide-B_SqJpCd.mjs +2 -0
  112. package/dist/provide-B_SqJpCd.mjs.map +1 -0
  113. package/dist/queue/index.d.mts +2 -0
  114. package/dist/queue/index.mjs +1 -0
  115. package/dist/queue-CG5izEBS.mjs +2 -0
  116. package/dist/queue-CG5izEBS.mjs.map +1 -0
  117. package/dist/queue.types-CD2LOu37.d.mts +36 -0
  118. package/dist/queue.types-CD2LOu37.d.mts.map +1 -0
  119. package/dist/result/index.d.mts +2 -3
  120. package/dist/result/index.mjs +1 -1
  121. package/dist/result-B5WbPg8C.mjs +1 -0
  122. package/dist/result-BEzV0DYC.mjs +2 -0
  123. package/dist/result-BEzV0DYC.mjs.map +1 -0
  124. package/dist/{result.types-fIbuBwVQ.d.mts → result.types-_xDAei3-.d.mts} +31 -109
  125. package/dist/result.types-_xDAei3-.d.mts.map +1 -0
  126. package/dist/schedule/index.d.mts +2 -0
  127. package/dist/schedule/index.mjs +1 -0
  128. package/dist/schedule-C6tjcJ1O.mjs +2 -0
  129. package/dist/schedule-C6tjcJ1O.mjs.map +1 -0
  130. package/dist/schedule-DlX2Dg69.d.mts +144 -0
  131. package/dist/schedule-DlX2Dg69.d.mts.map +1 -0
  132. package/dist/scope/index.d.mts +2 -0
  133. package/dist/scope/index.mjs +1 -0
  134. package/dist/scope-CZdp4wKX.d.mts +79 -0
  135. package/dist/scope-CZdp4wKX.d.mts.map +1 -0
  136. package/dist/scope-qwL1VUh2.mjs +2 -0
  137. package/dist/scope-qwL1VUh2.mjs.map +1 -0
  138. package/dist/service/index.d.mts +2 -0
  139. package/dist/service/index.mjs +1 -0
  140. package/dist/service-3PYQTUdH.mjs +2 -0
  141. package/dist/service-3PYQTUdH.mjs.map +1 -0
  142. package/dist/service-DrXU7KJG.d.mts +69 -0
  143. package/dist/service-DrXU7KJG.d.mts.map +1 -0
  144. package/dist/service-resolution-C19smeaO.mjs +2 -0
  145. package/dist/service-resolution-C19smeaO.mjs.map +1 -0
  146. package/package.json +52 -13
  147. package/dist/adt-DZmVJG4P.mjs +0 -2
  148. package/dist/adt-DZmVJG4P.mjs.map +0 -1
  149. package/dist/apply-fn.types-CMgY6WQe.d.mts +0 -8
  150. package/dist/apply-fn.types-CMgY6WQe.d.mts.map +0 -1
  151. package/dist/brand-BUqMmkzC.mjs +0 -2
  152. package/dist/brand-BUqMmkzC.mjs.map +0 -1
  153. package/dist/data-DzqKBCQg.mjs +0 -2
  154. package/dist/data-DzqKBCQg.mjs.map +0 -1
  155. package/dist/discriminator.types-DkThfvNE.d.mts.map +0 -1
  156. package/dist/either-BDY9T5oz.mjs +0 -2
  157. package/dist/either-BDY9T5oz.mjs.map +0 -1
  158. package/dist/equality-D2EJvZm4.mjs +0 -2
  159. package/dist/equality-D2EJvZm4.mjs.map +0 -1
  160. package/dist/err/index.d.mts +0 -2
  161. package/dist/err/index.mjs +0 -1
  162. package/dist/err-CYs4b1RV.mjs +0 -2
  163. package/dist/err-CYs4b1RV.mjs.map +0 -1
  164. package/dist/flow/index.d.mts +0 -2
  165. package/dist/flow/index.mjs +0 -1
  166. package/dist/flow-CxKQ5yac.mjs +0 -2
  167. package/dist/flow-CxKQ5yac.mjs.map +0 -1
  168. package/dist/fx-C4UuWCqP.mjs +0 -2
  169. package/dist/fx-C4UuWCqP.mjs.map +0 -1
  170. package/dist/fx.types-CXTwEa1G.mjs.map +0 -1
  171. package/dist/index-78LWwTds.d.mts +0 -288
  172. package/dist/index-78LWwTds.d.mts.map +0 -1
  173. package/dist/index-BQ5wVDSP.d.mts +0 -441
  174. package/dist/index-BQ5wVDSP.d.mts.map +0 -1
  175. package/dist/index-BahMvQpA.d.mts +0 -80
  176. package/dist/index-BahMvQpA.d.mts.map +0 -1
  177. package/dist/index-Bs5TTFlK.d.mts +0 -882
  178. package/dist/index-Bs5TTFlK.d.mts.map +0 -1
  179. package/dist/index-BuLJRX1e.d.mts +0 -476
  180. package/dist/index-BuLJRX1e.d.mts.map +0 -1
  181. package/dist/index-CDio8mJY.d.mts +0 -225
  182. package/dist/index-CDio8mJY.d.mts.map +0 -1
  183. package/dist/index-DLlx9jiG.d.mts +0 -389
  184. package/dist/index-DLlx9jiG.d.mts.map +0 -1
  185. package/dist/index-DjjJIDaA.d.mts.map +0 -1
  186. package/dist/index-DtAPrec7.d.mts.map +0 -1
  187. package/dist/index-IdejL485.d.mts +0 -79
  188. package/dist/index-IdejL485.d.mts.map +0 -1
  189. package/dist/index-UYodvXes.d.mts +0 -846
  190. package/dist/index-UYodvXes.d.mts.map +0 -1
  191. package/dist/option-Qiv7Ls7L.mjs +0 -2
  192. package/dist/option-Qiv7Ls7L.mjs.map +0 -1
  193. package/dist/option.types-By5UOfC2.mjs +0 -2
  194. package/dist/option.types-By5UOfC2.mjs.map +0 -1
  195. package/dist/option.types-Cluybn30.d.mts.map +0 -1
  196. package/dist/pipe/index.d.mts +0 -2
  197. package/dist/pipe/index.mjs +0 -1
  198. package/dist/pipe-BROILDeC.mjs +0 -2
  199. package/dist/pipe-BROILDeC.mjs.map +0 -1
  200. package/dist/pipeable-rQvolRqh.mjs +0 -2
  201. package/dist/pipeable-rQvolRqh.mjs.map +0 -1
  202. package/dist/predicate-DvXnfmeJ.mjs +0 -2
  203. package/dist/predicate-DvXnfmeJ.mjs.map +0 -1
  204. package/dist/result-B68pxC7l.mjs +0 -2
  205. package/dist/result-B68pxC7l.mjs.map +0 -1
  206. package/dist/result.types-fIbuBwVQ.d.mts.map +0 -1
  207. /package/dist/{result-uRORQlAQ.mjs → option-CBCwzF0L.mjs} +0 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index-DSsDFLGw.d.mts","names":[],"sources":["../src/either/either.types.ts","../src/either/either.ts"],"sourcesContent":[],"mappings":"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EAAA,OAAA;CAAG,CAAA;;;;;;;;;;;;;;AAEiD,cC8E7E,MD9E6E,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,MAAA,EC8ErD,QD9EqD,CC8E1C,CD9E0C,EC8EvC,CD9EuC,CAAA,EAAA,GAAA,MAAA,IC8ExB,OD9EwB,CC8EhB,QD9EgB,CC8EL,CD9EK,EC8EF,CD9EE,CAAA,EAAA;EAAI,IAAA,EAAA,MAAA;CAAX,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAG0B,cC8GhG,GD9GgG,EC8G3F,SD9G2F;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAW/E,cCyIjB,ODzIiB,ECyIR,aDzIQ;;;;;;;;AAY9B;;;;;;;;;;;;;;;;;;;;;AAK2B,cCiKd,KDjKc,ECiKP,WDjKO;;;;;;;;;;;;;;;;;AAQ3B;;;;;;;;;;;AAG6B,cCoMhB,ODpMgB,ECoMP,aDpMO;;;;;;;;;;;;;;;;;;;;;;;;;;;AAU7B;;;;;;AAI0B,cCgOb,GDhOa,ECgOR,SDhOQ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAaY,cC6PzB,OD7PyB,EC6PhB,aD7PgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;AASb,cCgSZ,MDhSY,ECgSJ,YDhSI;;;;;;;;;;;;;;;;;;;;AAKqC,cCoTjD,IDpTiD,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,GAAA,GAAA,CAAA,MAAA,ECsTnD,QDtTmD,CCsTxC,CDtTwC,ECsTrC,CDtTqC,CAAA,EAAA,GCsThC,QDtTgC,CCsTrB,CDtTqB,ECsTlB,CDtTkB,CAAA;;;;;;;;;AAO9D;;;;;;;;;;;;;;;;;;;AAGmE,cC+UtD,MD/UsD,EC+U9C,YD/U8C;;;;;;;;;;;;;;;;;;;;;;AAGpC,cCkXlB,GDlXkB,ECkXb,SDlXa;;;;;;;;;AAO/B;;;;;;;;;;;;;;;;;;AAKwB,cCyZX,QDzZW,ECyZD,cDzZC;;;;;;;;;;;;;;;;AAQxB;;;;;;;;;AAEiE,cC6apD,YD7aoD,EC6atC,kBD7asC;;;;;;;;;;;;;;;;;;;;;;;;;AAWjE;;;;;;AAE8E,cCocjE,KDpciE,ECoc1D,WDpc0D;;;;;;;;;;;;;;;;;;;;AAG9B,cC8dnC,UD9dmC,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,MAAA,EC8dP,MD9dO,CC8dI,CD9dJ,EC8dO,CD9dP,CAAA,EAAA,GC8dY,QD9dZ,CC8duB,CD9dvB,EC8d0B,CD9d1B,CAAA;;;;;;;;;;;;;;;;;;;;AAC2C,cCmf9E,QDnf8E,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,MAAA,ECmfpD,QDnfoD,CCmfzC,CDnfyC,ECmftC,CDnfsC,CAAA,EAAA,GCmfjC,MDnfiC,CCmftB,CDnfsB,ECmfnB,CDnfmB,CAAA;;;;AAO3F;;;;;;;;;;;;;;;;;AAI2G,cC+f9F,UD/f8F,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,MAAA,EC+flE,MD/fkE,CC+fvD,CD/fuD,CAAA,EAAA,MAAA,EAAA,GAAA,GC+frC,CD/fqC,EAAA,GC+fjC,QD/fiC,CC+ftB,CD/fsB,EC+fnB,CD/fmB,CAAA;;;;;AAQ3G;;;;;;;;;;;;;;AAWA;AAEwB,cCggBX,QDhgBW,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,MAAA,ECggBe,QDhgBf,CCggB0B,CDhgB1B,ECggB6B,CDhgB7B,CAAA,EAAA,GCggBkC,MDhgBlC,CCggB6C,CDhgB7C,CAAA;;;;;;;;;;;;;AASxB;;;;;;AAEoF,cC0gBvE,YD1gBuE,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,KAAA,EC0gB1C,CD1gB0C,GAAA,IAAA,GAAA,SAAA,EAAA,MAAA,EAAA,GAAA,GC0gBN,CD1gBM,EAAA,GC0gBF,QD1gBE,CC0gBS,CD1gBT,EC0gBY,CD1gBZ,CAAA;;;;;;;;;;;;;;;;;;;;cCgiBvE,6BACJ,sBACY,+BACH,MAAM,MACrB,SAAW,GAAG"}
@@ -1,7 +1,6 @@
1
- import { n as Result } from "./result.types-fIbuBwVQ.mjs";
1
+ import { t as Result } from "./result.types-_xDAei3-.mjs";
2
2
 
3
3
  //#region src/brand/brand.types.d.ts
4
-
5
4
  /**
6
5
  * Unique symbol for brand keys to ensure true nominal typing.
7
6
  * Using a symbol prevents collision with actual property keys.
@@ -13,7 +12,7 @@ declare const BrandSymbol: unique symbol;
13
12
  *
14
13
  * @template K - The brand key (typically a string literal type)
15
14
  */
16
- type Brand$1<K extends string> = {
15
+ type Brand<K extends string> = {
17
16
  readonly [BrandSymbol]: K;
18
17
  };
19
18
  /**
@@ -34,20 +33,14 @@ type Brand$1<K extends string> = {
34
33
  * userId = orderId // Type error!
35
34
  * ```
36
35
  */
37
- type Branded<T, K extends string> = T & Brand$1<K>;
36
+ type Branded$1<T, K extends string> = T & Brand<K>;
38
37
  /**
39
38
  * Extract the base type from a branded type.
40
39
  * Useful for working with the underlying value.
41
40
  *
42
41
  * @template B - A branded type
43
42
  */
44
- type Unbrand<B> = B extends Branded<infer T, string> ? T : B;
45
- /**
46
- * Extract the brand key from a branded type.
47
- *
48
- * @template B - A branded type
49
- */
50
- type BrandKey<B> = B extends Brand$1<infer K> ? K : never;
43
+ type Unbrand<B> = B extends Branded$1<infer T, string> ? T : B;
51
44
  /**
52
45
  * A validation function that checks if a value can be branded.
53
46
  * Returns true if the value passes validation, false otherwise.
@@ -55,27 +48,46 @@ type BrandKey<B> = B extends Brand$1<infer K> ? K : never;
55
48
  * @template T - The base type being validated
56
49
  */
57
50
  type Validator<T> = (value: T) => boolean;
58
- /**
59
- * A refinement predicate that narrows from T to the branded type B.
60
- * Used to create type guards with validation.
61
- *
62
- * @template T - The base type
63
- * @template B - The branded type (must extend T)
64
- */
65
- type BrandRefinement<T, B extends T> = (value: T) => value is B;
66
51
  /**
67
52
  * Error type returned when brand validation fails.
68
53
  * Contains the original value and error message for debugging.
69
54
  *
70
55
  * @template T - The type of the value that failed validation
71
56
  */
72
- type BrandError<T = unknown> = {
57
+ type BrandError$1<T = unknown> = {
73
58
  readonly _tag: "BrandError";
74
59
  readonly value: T;
75
60
  readonly message: string;
76
61
  };
77
- //#endregion
78
- //#region src/brand/brand.d.ts
62
+ declare namespace brand_d_exports {
63
+ export { BrandError, Branded, is, make, refine, unsafeMake };
64
+ }
65
+ /**
66
+ * Re-exported nominal brand helper type.
67
+ *
68
+ * @example
69
+ * ```ts
70
+ * import { Brand } from "@nicolastoulemont/std"
71
+ *
72
+ * type Example = typeof Brand
73
+ * ```
74
+ *
75
+ * @category Type-level
76
+ */
77
+ type Branded<T, K extends string> = Branded$1<T, K>;
78
+ /**
79
+ * Re-exported brand validation error type.
80
+ *
81
+ * @example
82
+ * ```ts
83
+ * import { Brand } from "@nicolastoulemont/std"
84
+ *
85
+ * type Example = typeof Brand
86
+ * ```
87
+ *
88
+ * @category Type-level
89
+ */
90
+ type BrandError<T> = BrandError$1<T>;
79
91
  /**
80
92
  * Create a branded value without validation.
81
93
  * This is a type-level cast with zero runtime cost.
@@ -89,17 +101,15 @@ type BrandError<T = unknown> = {
89
101
  *
90
102
  * @example
91
103
  * ```ts
92
- * type UserId = Branded<string, "UserId">
93
- *
94
- * // Trust the value from database
95
- * const userId = Brand.make<UserId>(row.id)
104
+ * import { Brand } from "@nicolastoulemont/std"
96
105
  *
97
- * // Or use in a validated factory
98
- * function createUserId(input: string): UserId {
99
- * if (!input.startsWith("user_")) throw new Error("Invalid")
100
- * return Brand.make<UserId>(input)
101
- * }
106
+ * type UserId = Brand.Branded<string, "UserId">
107
+ * const raw = "user_123" as UserId
108
+ * const userId = Brand.make<UserId>(raw)
109
+ * // => brand-preserving cast
102
110
  * ```
111
+ *
112
+ * @category Utilities
103
113
  */
104
114
  declare const make: <B extends Branded<unknown, string>>(value: Unbrand<B>) => B;
105
115
  /**
@@ -112,11 +122,15 @@ declare const make: <B extends Branded<unknown, string>>(value: Unbrand<B>) => B
112
122
  *
113
123
  * @example
114
124
  * ```ts
115
- * type PositiveNumber = Branded<number, "PositiveNumber">
125
+ * import { Brand } from "@nicolastoulemont/std"
116
126
  *
117
- * // Explicitly unsafe - reader knows no validation
118
- * const n = Brand.unsafeMake<PositiveNumber>(-5) // No error, but logically wrong
127
+ * type UserId = Brand.Branded<string, "UserId">
128
+ * const raw = "user_123" as UserId
129
+ * const userId = Brand.unsafeMake<UserId>(raw)
130
+ * // => unchecked brand cast
119
131
  * ```
132
+ *
133
+ * @category Utilities
120
134
  */
121
135
  declare const unsafeMake: <B extends Branded<unknown, string>>(value: Unbrand<B>) => B;
122
136
  /**
@@ -130,23 +144,22 @@ declare const unsafeMake: <B extends Branded<unknown, string>>(value: Unbrand<B>
130
144
  *
131
145
  * @example
132
146
  * ```ts
133
- * type PositiveNumber = Branded<number, "PositiveNumber">
134
- *
135
- * const isPositive = Brand.is<number, "PositiveNumber">(n => n > 0)
147
+ * import { Brand } from "@nicolastoulemont/std"
136
148
  *
137
- * const value: number = 42
138
- * if (isPositive(value)) {
139
- * // value is now PositiveNumber
140
- * acceptPositive(value) // OK
141
- * }
149
+ * type UserId = Brand.Branded<string, "UserId">
150
+ * const isUserId = Brand.is<string, "UserId">((value) => value.startsWith("user_"))
151
+ * const valid = isUserId("user_123")
152
+ * // => true
142
153
  * ```
154
+ *
155
+ * @category Utilities
143
156
  */
144
157
  declare const is: <T, K extends string>(validator: Validator<T>) => ((value: T) => value is Branded<T, K>);
145
158
  /**
146
159
  * Create a validated branded value wrapped in a Result.
147
160
  * Returns `Result.ok(brandedValue)` on success, `Result.err(BrandError)` on failure.
148
161
  *
149
- * The returned Result is yieldable in Do computations via `yield*`.
162
+ * The returned Result is yieldable in Fx.gen computations via `yield*`.
150
163
  *
151
164
  * @template B - The branded type
152
165
  * @param validator - A function that validates the base value
@@ -155,67 +168,17 @@ declare const is: <T, K extends string>(validator: Validator<T>) => ((value: T)
155
168
  *
156
169
  * @example
157
170
  * ```ts
158
- * type Email = Branded<string, "Email">
159
- *
160
- * const parseEmail = Brand.refine<Email>(
161
- * s => s.includes("@"),
162
- * (v) => `Invalid email: ${v}`
163
- * )
164
- *
165
- * // Basic usage
166
- * const result = parseEmail("user@example.com")
167
- * // { ok: true, value: "user@example.com" }
168
- *
169
- * const bad = parseEmail("not-an-email")
170
- * // { ok: false, error: { _tag: "BrandError", value: "not-an-email", message: "..." } }
171
- *
172
- * // With Do computation
173
- * const computation = Fx.gen(function* () {
174
- * const email = yield* parseEmail(input)
175
- * return email
176
- * })
177
- *
178
- * // With pipe
179
- * pipe(
180
- * userInput,
181
- * parseEmail,
182
- * Result.map(email => sendTo(email)),
183
- * Result.unwrapOr(defaultEmail)
184
- * )
185
- * ```
186
- */
187
- declare const refine: <B extends Branded<unknown, string>>(validator: Validator<Unbrand<B>>, errorMessage?: string | ((value: Unbrand<B>) => string)) => ((value: Unbrand<B>) => Result<B, BrandError<Unbrand<B>>>);
188
- /**
189
- * Brand namespace containing utilities for nominal typing in TypeScript.
190
- *
191
- * Brand types add type-level distinctiveness to primitive types without
192
- * any runtime overhead. This prevents accidental mixing of semantically
193
- * different values that share the same structural type.
194
- *
195
- * @example
196
- * ```ts
197
- * import { Brand } from "@repo/std"
198
- * import type { Branded } from "@repo/std"
171
+ * import { Brand } from "@nicolastoulemont/std"
199
172
  *
200
- * // Define branded types
201
- * type UserId = Branded<string, "UserId">
202
- * type Email = Branded<string, "Email">
203
- *
204
- * // Create values
205
- * const userId = Brand.make<UserId>("user-123")
206
- * const isValidEmail = Brand.is<Email>(s => s.includes("@"))
207
- *
208
- * // Type safety
209
- * function sendEmail(email: Email) { ... }
210
- * sendEmail(userId) // Type error! UserId is not Email
173
+ * type UserId = Brand.Branded<string, "UserId">
174
+ * const toUserId = Brand.refine<UserId>((value) => value.startsWith("user_"), "Invalid user id")
175
+ * const parsed = toUserId("user_123" as UserId)
176
+ * // => { _tag: "Ok", value: "user_123" }
211
177
  * ```
178
+ *
179
+ * @category Utilities
212
180
  */
213
- declare const Brand: {
214
- readonly make: <B extends Branded<unknown, string>>(value: Unbrand<B>) => B;
215
- readonly unsafeMake: <B extends Branded<unknown, string>>(value: Unbrand<B>) => B;
216
- readonly is: <T, K extends string>(validator: Validator<T>) => ((value: T) => value is Branded<T, K>);
217
- readonly refine: <B extends Branded<unknown, string>>(validator: Validator<Unbrand<B>>, errorMessage?: string | ((value: Unbrand<B>) => string)) => ((value: Unbrand<B>) => Result<B, BrandError<Unbrand<B>>>);
218
- };
181
+ declare const refine: <B extends Branded<unknown, string>>(validator: Validator<Unbrand<B>>, errorMessage?: string | ((value: Unbrand<B>) => string)) => ((value: Unbrand<B>) => Result<B, BrandError<Unbrand<B>>>);
219
182
  //#endregion
220
- export { unsafeMake as a, BrandKey as c, Unbrand as d, refine as i, BrandRefinement as l, is as n, Brand$1 as o, make as r, BrandError as s, Brand as t, Branded as u };
221
- //# sourceMappingURL=index-DjjJIDaA.d.mts.map
183
+ export { brand_d_exports as t };
184
+ //# sourceMappingURL=index-DXbYlSnB.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index-DXbYlSnB.d.mts","names":[],"sources":["../src/brand/brand.types.ts","../src/brand/brand.ts"],"sourcesContent":[],"mappings":";;;;;;;cAIc,WAA0B,EAAA,OAAA,MAAA;AAAA;AA8BxC;;;;;AAQA,KA9BK,KA8BO,CAAA,UAAO,MAAA,CAAA,GAAA;EAAM,UA7Bb,WAAA,CA6Ba,EA7BC,CA6BD;CAAU;;;AAQnC;AAQA;;;;;;;;;;;;ACZA;;;AAA2C,KDZ/B,SCY+B,CAAA,CAAA,EAAA,UAAA,MAAA,CAAA,GDZA,CCYA,GDZI,KCYJ,CDZU,CCYV,CAAA;;AAc3C;AA2BA;;;;AAA6E,KD7CjE,OC6CiE,CAAA,CAAA,CAAA,GD7CpD,CC6CoD,SD7C1C,SC6C0C,CAAA,KAAA,EAAA,EAAA,MAAA,CAAA,GAAA,CAAA,GD7CX,CC6CW;;AAwB7E;;;;;AAEC,KD/DW,SC+DX,CAAA,CAAA,CAAA,GAAA,CAAA,KAAA,ED/DkC,CC+DlC,EAAA,GAAA,OAAA;AAuBD;;;;;;AAA0F,KD9E9E,YC8E8E,CAAA,IAAA,OAAA,CAAA,GAAA;EAAO,SAAA,IAAA,EAAA,YAAA;EA2BpF,SAWZ,KAAA,EDlHiB,CCkHjB;EAXgC,SAAA,OAAA,EAAA,MAAA;CACF;AAAA;;;;;;ADhKS;AA8BxC;;;;;AAQA;;;AAAkE,KCItD,ODJsD,CAAA,CAAA,EAAA,UAAA,MAAA,CAAA,GCIvB,SDJuB,CCIX,CDJW,ECIR,CDJQ,CAAA;;AAQlE;AAQA;;;;;;;;;;KCEY,gBAAgB,aAAe;;AAd3C;;;;;AAcA;AA2BA;;;;;;AAwBA;;;;;;AAyBA;;;;AAAkG,cAjDrF,IAiDqF,EAAA,CAAA,UAjDnE,OAiDmE,CAAA,OAAA,EAAA,MAAA,CAAA,CAAA,CAAA,KAAA,EAjDlC,OAiDkC,CAjD1B,CAiD0B,CAAA,EAAA,GAjDrB,CAiDqB;;;;AA2BlG;;;;;;;;;;;;;;;;;cApDa,uBAAwB,iCAAiC,QAAQ,OAAK;;;;;;;;;;;;;;;;;;;;;;cAyBtE,qCAAsC,UAAU,gBAAc,eAAe,QAAQ,GAAG;;;;;;;;;;;;;;;;;;;;;;;;cA2BxF,mBAAoB,qCACpB,UAAU,QAAQ,sCACI,QAAQ,4BAC/B,QAAQ,OAAO,OAAW,GAAG,WAAW,QAAQ"}
@@ -1,7 +1,7 @@
1
- import { t as Discriminator } from "./discriminator.types-DkThfvNE.mjs";
1
+ import { t as Discriminator } from "./discriminator.types-CTURejXz.mjs";
2
+ import { t as TaggedErrorFactory } from "./data.tagged-error.types-CLlJJ3n5.mjs";
2
3
 
3
4
  //#region src/data/data.types.d.ts
4
-
5
5
  /**
6
6
  * A tagged value object created by tagged().
7
7
  * Contains the data fields plus a readonly _tag discriminator.
@@ -77,40 +77,44 @@ type ArrayValue<out T> = {
77
77
  join(separator?: string): string;
78
78
  };
79
79
  //#endregion
80
- //#region src/data/data.tagged.d.ts
80
+ //#region src/data/data.array.d.ts
81
81
  /**
82
- * Create a tagged value constructor without schema validation.
82
+ * Create an array with structural equality.
83
83
  *
84
- * Unlike record(), this creates values directly without validation.
85
- * Values are frozen and have structural equality via equals() and hash() methods.
84
+ * The returned array is frozen (immutable) and has non-enumerable
85
+ * equals() and hash() methods for structural comparison.
86
86
  *
87
- * @template T - The data shape type (excluding _tag)
88
- * @param tag - The _tag discriminator value
89
- * @returns A constructor function with is(), equals(), and hash() methods
87
+ * The map() and filter() methods are overridden to return ArrayValue,
88
+ * enabling method chaining with preserved equality semantics.
90
89
  *
91
- * @see {@link record} for validated records with schema support
92
- * @see {@link struct} for untagged value objects
90
+ * @template T - The element type of the array
91
+ * @param items - The array elements
92
+ * @returns A frozen array with equals(), hash(), map(), and filter()
93
+ *
94
+ * @see {@link tuple} for fixed-length typed tuples
95
+ * @see {@link struct} for object value types
93
96
  *
94
97
  * @example
95
98
  * ```ts
96
- * const Person = tagged<{ name: string; age: number }>("Person")
99
+ * const arr1 = array([1, 2, 3])
100
+ * const arr2 = array([1, 2, 3])
97
101
  *
98
- * const alice = Person({ name: "Alice", age: 30 })
99
- * // => { _tag: "Person", name: "Alice", age: 30 }
102
+ * arr1.equals(arr2) // true
103
+ * arr1.hash() // number
100
104
  *
101
- * Person.equals(alice, Person({ name: "Alice", age: 30 })) // true
102
- * Person.is(alice) // true
105
+ * // Chainable operations return ArrayValue
106
+ * arr1.map(x => x * 2) // ArrayValue<number>
107
+ * arr1.filter(x => x > 1) // ArrayValue<number>
103
108
  *
104
- * // Type guard usage
105
- * if (Person.is(unknownValue)) {
106
- * console.log(unknownValue.name) // TypeScript knows it's a Person
107
- * }
109
+ * // Chained equality check
110
+ * arr1.map(x => x * 2).equals(array([2, 4, 6])) // true
108
111
  *
109
- * // Values are frozen (immutable)
110
- * alice.name = "Bob" // TypeError
112
+ * // Array is frozen
113
+ * arr1[0] = 5 // TypeError
114
+ * arr1.push(4) // TypeError
111
115
  * ```
112
116
  */
113
- declare function tagged<T extends Record<string, unknown>>(tag: string): TaggedConstructor<typeof tag, T>;
117
+ declare function array$1<T>(items: readonly T[]): ArrayValue<T>;
114
118
  //#endregion
115
119
  //#region src/data/data.struct.d.ts
116
120
  /**
@@ -144,7 +148,79 @@ declare function tagged<T extends Record<string, unknown>>(tag: string): TaggedC
144
148
  * Object.keys(point) // ["x", "y"]
145
149
  * ```
146
150
  */
147
- declare function struct<T extends Record<string, unknown>>(input: T): StructValue<T>;
151
+ declare function struct$1<T extends Record<string, unknown>>(input: T): StructValue<T>;
152
+ //#endregion
153
+ //#region src/data/data.tagged-error.d.ts
154
+ /**
155
+ * Create a class-based tagged error type (Effect-style syntax).
156
+ * Returns a class that can be extended to create custom error types.
157
+ * Errors are native Error objects with proper stack traces and instanceof support.
158
+ * Implements Yieldable protocol so errors can be directly yielded in Fx.gen computations.
159
+ *
160
+ * @template Tag - The error tag (discriminator string)
161
+ * @param tag - The error tag
162
+ * @returns A class that can be extended with custom data
163
+ *
164
+ * @example
165
+ * ```ts
166
+ * // Error with data
167
+ * class NotFoundError extends TaggedError("NotFoundError")<{ id: string }> {}
168
+ * const err = new NotFoundError({ id: "123" })
169
+ * err.id // "123"
170
+ * err._tag // "NotFoundError"
171
+ * err.stack // Error stack trace
172
+ *
173
+ * // Error without data
174
+ * class UnauthorizedError extends TaggedError("UnauthorizedError") {}
175
+ * const err2 = new UnauthorizedError()
176
+ *
177
+ * // Direct yielding in Fx.gen computation
178
+ * const program = Fx.gen(function* () {
179
+ * yield* new NotFoundError({ id: "123" }) // Short-circuits with error
180
+ * })
181
+ *
182
+ * // instanceof checks work
183
+ * if (err instanceof NotFoundError) {
184
+ * console.log(err.id)
185
+ * }
186
+ * ```
187
+ */
188
+ declare function TaggedError$1<Tag extends string>(tag: Tag): TaggedErrorFactory<Tag>;
189
+ //#endregion
190
+ //#region src/data/data.tagged.d.ts
191
+ /**
192
+ * Create a tagged value constructor without schema validation.
193
+ *
194
+ * Unlike variant(), this creates values directly without validation.
195
+ * Values are frozen and have structural equality via equals() and hash() methods.
196
+ *
197
+ * @template T - The data shape type (excluding _tag)
198
+ * @param tag - The _tag discriminator value
199
+ * @returns A constructor function with is(), equals(), and hash() methods
200
+ *
201
+ * @see {@link variant} for validated variant with schema support
202
+ * @see {@link struct} for untagged value objects
203
+ *
204
+ * @example
205
+ * ```ts
206
+ * const Person = tagged<{ name: string; age: number }>("Person")
207
+ *
208
+ * const alice = Person({ name: "Alice", age: 30 })
209
+ * // => { _tag: "Person", name: "Alice", age: 30 }
210
+ *
211
+ * Person.equals(alice, Person({ name: "Alice", age: 30 })) // true
212
+ * Person.is(alice) // true
213
+ *
214
+ * // Type guard usage
215
+ * if (Person.is(unknownValue)) {
216
+ * console.log(unknownValue.name) // TypeScript knows it's a Person
217
+ * }
218
+ *
219
+ * // Values are frozen (immutable)
220
+ * alice.name = "Bob" // TypeError
221
+ * ```
222
+ */
223
+ declare function tagged$1<T extends Record<string, unknown>>(tag: string): TaggedConstructor<typeof tag, T>;
148
224
  //#endregion
149
225
  //#region src/data/data.tuple.d.ts
150
226
  /**
@@ -177,46 +253,85 @@ declare function struct<T extends Record<string, unknown>>(input: T): StructValu
177
253
  * t1[0] = 5 // TypeError
178
254
  * ```
179
255
  */
180
- declare function tuple<T extends readonly unknown[]>(...args: T): TupleValue<T>;
181
- //#endregion
182
- //#region src/data/data.array.d.ts
256
+ declare function tuple$1<T extends readonly unknown[]>(...args: T): TupleValue<T>;
257
+ declare namespace data_d_exports {
258
+ export { TaggedError, array, struct, tagged, tuple };
259
+ }
183
260
  /**
184
- * Create an array with structural equality.
261
+ * Construct tagged data objects.
185
262
  *
186
- * The returned array is frozen (immutable) and has non-enumerable
187
- * equals() and hash() methods for structural comparison.
263
+ * @example
264
+ * ```ts
265
+ * import { Data } from "@nicolastoulemont/std"
188
266
  *
189
- * The map() and filter() methods are overridden to return ArrayValue,
190
- * enabling method chaining with preserved equality semantics.
267
+ * const User = Data.tagged<{ id: string }>("User")
268
+ * const user = User({ id: "u1" })
269
+ * // => { _tag: "User", id: "u1" }
270
+ * ```
191
271
  *
192
- * @template T - The element type of the array
193
- * @param items - The array elements
194
- * @returns A frozen array with equals(), hash(), map(), and filter()
272
+ * @category Constructors
273
+ */
274
+ declare const tagged: typeof tagged$1;
275
+ /**
276
+ * Construct tagged error classes.
195
277
  *
196
- * @see {@link tuple} for fixed-length typed tuples
197
- * @see {@link struct} for object value types
278
+ * @example
279
+ * ```ts
280
+ * import { Data } from "@nicolastoulemont/std"
281
+ *
282
+ * class NotFoundError extends Data.TaggedError("NotFoundError")<{ id: string }> {}
283
+ * const error = new NotFoundError({ id: "u1" })
284
+ * // => { _tag: "NotFoundError", id: "u1" }
285
+ * ```
286
+ *
287
+ * @category Constructors
288
+ */
289
+ declare const TaggedError: typeof TaggedError$1;
290
+ /**
291
+ * Construct immutable-like structs with stable structural behavior.
198
292
  *
199
293
  * @example
200
294
  * ```ts
201
- * const arr1 = array([1, 2, 3])
202
- * const arr2 = array([1, 2, 3])
295
+ * import { Data } from "@nicolastoulemont/std"
203
296
  *
204
- * arr1.equals(arr2) // true
205
- * arr1.hash() // number
297
+ * const point = Data.struct({ x: 1, y: 2 })
298
+ * const same = point.equals({ x: 1, y: 2 })
299
+ * // => true
300
+ * ```
206
301
  *
207
- * // Chainable operations return ArrayValue
208
- * arr1.map(x => x * 2) // ArrayValue<number>
209
- * arr1.filter(x => x > 1) // ArrayValue<number>
302
+ * @category Constructors
303
+ */
304
+ declare const struct: typeof struct$1;
305
+ /**
306
+ * Construct immutable-like tuples with stable structural behavior.
210
307
  *
211
- * // Chained equality check
212
- * arr1.map(x => x * 2).equals(array([2, 4, 6])) // true
308
+ * @example
309
+ * ```ts
310
+ * import { Data } from "@nicolastoulemont/std"
213
311
  *
214
- * // Array is frozen
215
- * arr1[0] = 5 // TypeError
216
- * arr1.push(4) // TypeError
312
+ * const pair = Data.tuple("left", 1)
313
+ * const first = pair[0]
314
+ * // => "left"
315
+ * ```
316
+ *
317
+ * @category Constructors
318
+ */
319
+ declare const tuple: typeof tuple$1;
320
+ /**
321
+ * Construct immutable-like arrays with stable structural behavior.
322
+ *
323
+ * @example
324
+ * ```ts
325
+ * import { Data } from "@nicolastoulemont/std"
326
+ *
327
+ * const ids = Data.array(["a", "b"])
328
+ * const upper = ids.map((id) => id.toUpperCase())
329
+ * // => ["A", "B"]
217
330
  * ```
331
+ *
332
+ * @category Constructors
218
333
  */
219
- declare function array<T>(items: readonly T[]): ArrayValue<T>;
334
+ declare const array: typeof array$1;
220
335
  //#endregion
221
- export { ArrayValue as a, TaggedValue as c, tagged as i, TupleValue as l, tuple as n, StructValue as o, struct as r, TaggedConstructor as s, array as t };
222
- //# sourceMappingURL=index-DtAPrec7.d.mts.map
336
+ export { data_d_exports as t };
337
+ //# sourceMappingURL=index-DaTvFhZ8.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index-DaTvFhZ8.d.mts","names":[],"sources":["../src/data/data.types.ts","../src/data/data.array.ts","../src/data/data.struct.ts","../src/data/data.tagged-error.ts","../src/data/data.tagged.ts","../src/data/data.tuple.ts","../src/data/data.ts"],"sourcesContent":[],"mappings":"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"}