@typed/fx 1.22.2 → 1.23.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 (112) hide show
  1. package/dist/cjs/Form.js.map +1 -1
  2. package/dist/cjs/Fx.js.map +1 -1
  3. package/dist/cjs/Idle.js.map +1 -1
  4. package/dist/cjs/Match.js.map +1 -1
  5. package/dist/cjs/Pull.js.map +1 -1
  6. package/dist/cjs/Subject.js.map +1 -1
  7. package/dist/cjs/internal/core.js.map +1 -1
  8. package/dist/cjs/internal/helpers.js.map +1 -1
  9. package/dist/cjs/internal/keyed.js +1 -1
  10. package/dist/cjs/internal/keyed.js.map +1 -1
  11. package/dist/cjs/internal/share.js.map +1 -1
  12. package/dist/cjs/internal/sync-producer.js.map +1 -1
  13. package/dist/dts/AsyncData.d.ts +33 -33
  14. package/dist/dts/AsyncData.d.ts.map +1 -1
  15. package/dist/dts/Emitter.d.ts +6 -6
  16. package/dist/dts/Emitter.d.ts.map +1 -1
  17. package/dist/dts/Form.d.ts +12 -12
  18. package/dist/dts/Form.d.ts.map +1 -1
  19. package/dist/dts/FormEntry.d.ts +9 -9
  20. package/dist/dts/FormEntry.d.ts.map +1 -1
  21. package/dist/dts/Fx.d.ts +113 -113
  22. package/dist/dts/Fx.d.ts.map +1 -1
  23. package/dist/dts/Guard.d.ts +5 -5
  24. package/dist/dts/Guard.d.ts.map +1 -1
  25. package/dist/dts/Idle.d.ts +12 -12
  26. package/dist/dts/Idle.d.ts.map +1 -1
  27. package/dist/dts/Pull.d.ts +5 -5
  28. package/dist/dts/Pull.d.ts.map +1 -1
  29. package/dist/dts/Push.d.ts +20 -20
  30. package/dist/dts/Push.d.ts.map +1 -1
  31. package/dist/dts/RefArray.d.ts +33 -33
  32. package/dist/dts/RefArray.d.ts.map +1 -1
  33. package/dist/dts/RefChunk.d.ts +27 -27
  34. package/dist/dts/RefChunk.d.ts.map +1 -1
  35. package/dist/dts/RefHashMap.d.ts +17 -17
  36. package/dist/dts/RefHashMap.d.ts.map +1 -1
  37. package/dist/dts/RefHashSet.d.ts +5 -5
  38. package/dist/dts/RefHashSet.d.ts.map +1 -1
  39. package/dist/dts/RefSubject.d.ts +53 -53
  40. package/dist/dts/RefSubject.d.ts.map +1 -1
  41. package/dist/dts/Sink.d.ts +31 -31
  42. package/dist/dts/Sink.d.ts.map +1 -1
  43. package/dist/dts/Stream.d.ts +11 -11
  44. package/dist/dts/Stream.d.ts.map +1 -1
  45. package/dist/dts/Subject.d.ts +5 -5
  46. package/dist/dts/Subject.d.ts.map +1 -1
  47. package/dist/dts/Versioned.d.ts +11 -11
  48. package/dist/dts/Versioned.d.ts.map +1 -1
  49. package/dist/dts/internal/DeferredRef.d.ts +7 -7
  50. package/dist/dts/internal/core.d.ts +51 -51
  51. package/dist/dts/internal/core.d.ts.map +1 -1
  52. package/dist/dts/internal/effect-loop-operator.d.ts +4 -4
  53. package/dist/dts/internal/effect-loop-operator.d.ts.map +1 -1
  54. package/dist/dts/internal/effect-operator.d.ts +11 -11
  55. package/dist/dts/internal/effect-operator.d.ts.map +1 -1
  56. package/dist/dts/internal/effect-producer.d.ts +9 -9
  57. package/dist/dts/internal/effect-producer.d.ts.map +1 -1
  58. package/dist/dts/internal/helpers.d.ts +25 -25
  59. package/dist/dts/internal/helpers.d.ts.map +1 -1
  60. package/dist/dts/internal/protos.d.ts +9 -9
  61. package/dist/dts/internal/protos.d.ts.map +1 -1
  62. package/dist/dts/internal/provide.d.ts +10 -10
  63. package/dist/dts/internal/provide.d.ts.map +1 -1
  64. package/dist/dts/internal/share.d.ts +2 -2
  65. package/dist/dts/internal/share.d.ts.map +1 -1
  66. package/dist/dts/internal/sync-producer.d.ts +6 -6
  67. package/dist/dts/internal/sync-producer.d.ts.map +1 -1
  68. package/dist/esm/Form.js.map +1 -1
  69. package/dist/esm/FormEntry.js.map +1 -1
  70. package/dist/esm/Fx.js.map +1 -1
  71. package/dist/esm/Idle.js.map +1 -1
  72. package/dist/esm/Match.js.map +1 -1
  73. package/dist/esm/Pull.js.map +1 -1
  74. package/dist/esm/RefSubject.js.map +1 -1
  75. package/dist/esm/Subject.js.map +1 -1
  76. package/dist/esm/internal/core.js.map +1 -1
  77. package/dist/esm/internal/helpers.js.map +1 -1
  78. package/dist/esm/internal/keyed.js +1 -1
  79. package/dist/esm/internal/keyed.js.map +1 -1
  80. package/dist/esm/internal/share.js.map +1 -1
  81. package/dist/esm/internal/sync-producer.js.map +1 -1
  82. package/package.json +6 -6
  83. package/src/AsyncData.ts +86 -86
  84. package/src/Emitter.ts +9 -9
  85. package/src/Form.ts +39 -39
  86. package/src/FormEntry.ts +25 -25
  87. package/src/Fx.ts +122 -124
  88. package/src/Guard.ts +7 -7
  89. package/src/Idle.ts +23 -23
  90. package/src/Match.ts +3 -3
  91. package/src/Pull.ts +10 -10
  92. package/src/Push.ts +33 -33
  93. package/src/RefArray.ts +36 -36
  94. package/src/RefChunk.ts +30 -30
  95. package/src/RefHashMap.ts +24 -24
  96. package/src/RefHashSet.ts +6 -6
  97. package/src/RefSubject.ts +184 -184
  98. package/src/Sink.ts +91 -91
  99. package/src/Stream.ts +19 -19
  100. package/src/Subject.ts +21 -21
  101. package/src/Versioned.ts +23 -23
  102. package/src/internal/DeferredRef.ts +6 -6
  103. package/src/internal/core.ts +132 -132
  104. package/src/internal/effect-loop-operator.ts +4 -4
  105. package/src/internal/effect-operator.ts +13 -13
  106. package/src/internal/effect-producer.ts +14 -14
  107. package/src/internal/helpers.ts +36 -36
  108. package/src/internal/keyed.ts +3 -3
  109. package/src/internal/protos.ts +12 -12
  110. package/src/internal/provide.ts +10 -10
  111. package/src/internal/share.ts +4 -4
  112. package/src/internal/sync-producer.ts +12 -12
package/src/RefArray.ts CHANGED
@@ -28,18 +28,18 @@ export interface RefArray<out R, in out E, in out A> extends RefSubject.RefSubje
28
28
  * @category constructors
29
29
  */
30
30
  export function make<R, E, A>(
31
- initial: Effect.Effect<R, E, ReadonlyArray<A>>,
31
+ initial: Effect.Effect<ReadonlyArray<A>, E, R>,
32
32
  eq?: Equivalence<A>
33
- ): Effect.Effect<R | Scope.Scope, never, RefArray<never, E, A>>
33
+ ): Effect.Effect<RefArray<never, E, A>, never, R | Scope.Scope>
34
34
  export function make<R, E, A>(
35
35
  initial: Fx.Fx<R, E, ReadonlyArray<A>>,
36
36
  eq?: Equivalence<A>
37
- ): Effect.Effect<R | Scope.Scope, never, RefArray<never, E, A>>
37
+ ): Effect.Effect<RefArray<never, E, A>, never, R | Scope.Scope>
38
38
 
39
39
  export function make<R, E, A>(
40
- initial: Effect.Effect<R, E, ReadonlyArray<A>> | Fx.Fx<R, E, ReadonlyArray<A>>,
40
+ initial: Effect.Effect<ReadonlyArray<A>, E, R> | Fx.Fx<R, E, ReadonlyArray<A>>,
41
41
  eq: Equivalence<A> = equals
42
- ): Effect.Effect<R | Scope.Scope, never, RefArray<never, E, A>> {
42
+ ): Effect.Effect<RefArray<never, E, A>, never, R | Scope.Scope> {
43
43
  return RefSubject.make(
44
44
  initial,
45
45
  {
@@ -91,8 +91,8 @@ export function tagged(): {
91
91
  * @category combinators
92
92
  */
93
93
  export const prepend: {
94
- <A>(value: A): <R, E>(ref: RefArray<R, E, A>) => Effect.Effect<R, E, ReadonlyArray<A>>
95
- <R, E, A>(ref: RefArray<R, E, A>, value: A): Effect.Effect<R, E, ReadonlyArray<A>>
94
+ <A>(value: A): <R, E>(ref: RefArray<R, E, A>) => Effect.Effect<ReadonlyArray<A>, E, R>
95
+ <R, E, A>(ref: RefArray<R, E, A>, value: A): Effect.Effect<ReadonlyArray<A>, E, R>
96
96
  } = dual(2, function prepend<R, E, A>(ref: RefArray<R, E, A>, value: A) {
97
97
  return RefSubject.update(ref, ReadonlyArray.prepend(value))
98
98
  })
@@ -103,8 +103,8 @@ export const prepend: {
103
103
  * @category combinators
104
104
  */
105
105
  export const prependAll: {
106
- <A>(value: Iterable<A>): <R, E>(ref: RefArray<R, E, A>) => Effect.Effect<R, E, ReadonlyArray<A>>
107
- <R, E, A>(ref: RefArray<R, E, A>, value: Iterable<A>): Effect.Effect<R, E, ReadonlyArray<A>>
106
+ <A>(value: Iterable<A>): <R, E>(ref: RefArray<R, E, A>) => Effect.Effect<ReadonlyArray<A>, E, R>
107
+ <R, E, A>(ref: RefArray<R, E, A>, value: Iterable<A>): Effect.Effect<ReadonlyArray<A>, E, R>
108
108
  } = dual(
109
109
  2,
110
110
  function prependAll<R, E, A>(ref: RefArray<R, E, A>, value: Iterable<A>) {
@@ -118,8 +118,8 @@ export const prependAll: {
118
118
  * @category combinators
119
119
  */
120
120
  export const append: {
121
- <A>(value: A): <R, E>(ref: RefArray<R, E, A>) => Effect.Effect<R, E, ReadonlyArray<A>>
122
- <R, E, A>(ref: RefArray<R, E, A>, value: A): Effect.Effect<R, E, ReadonlyArray<A>>
121
+ <A>(value: A): <R, E>(ref: RefArray<R, E, A>) => Effect.Effect<ReadonlyArray<A>, E, R>
122
+ <R, E, A>(ref: RefArray<R, E, A>, value: A): Effect.Effect<ReadonlyArray<A>, E, R>
123
123
  } = dual(2, function append<R, E, A>(ref: RefArray<R, E, A>, value: A) {
124
124
  return RefSubject.update(ref, ReadonlyArray.append(value))
125
125
  })
@@ -132,8 +132,8 @@ export const append: {
132
132
  export const appendAll: {
133
133
  <A>(
134
134
  value: Iterable<A>
135
- ): <R, E>(ref: RefArray<R, E, A>) => Effect.Effect<R, E, ReadonlyArray<A>>
136
- <R, E, A>(ref: RefArray<R, E, A>, value: Iterable<A>): Effect.Effect<R, E, ReadonlyArray<A>>
135
+ ): <R, E>(ref: RefArray<R, E, A>) => Effect.Effect<ReadonlyArray<A>, E, R>
136
+ <R, E, A>(ref: RefArray<R, E, A>, value: Iterable<A>): Effect.Effect<ReadonlyArray<A>, E, R>
137
137
  } = dual(2, function appendAll<R, E, A>(ref: RefArray<R, E, A>, value: Iterable<A>) {
138
138
  return RefSubject.update(ref, ReadonlyArray.appendAll(value))
139
139
  })
@@ -144,8 +144,8 @@ export const appendAll: {
144
144
  * @category combinators
145
145
  */
146
146
  export const drop: {
147
- (n: number): <R, E, A>(ref: RefArray<R, E, A>) => Effect.Effect<R, E, ReadonlyArray<A>>
148
- <R, E, A>(ref: RefArray<R, E, A>, n: number): Effect.Effect<R, E, ReadonlyArray<A>>
147
+ (n: number): <R, E, A>(ref: RefArray<R, E, A>) => Effect.Effect<ReadonlyArray<A>, E, R>
148
+ <R, E, A>(ref: RefArray<R, E, A>, n: number): Effect.Effect<ReadonlyArray<A>, E, R>
149
149
  } = dual(2, function drop<R, E, A>(ref: RefArray<R, E, A>, n: number) {
150
150
  return RefSubject.update(ref, ReadonlyArray.drop(n))
151
151
  })
@@ -156,8 +156,8 @@ export const drop: {
156
156
  * @category combinators
157
157
  */
158
158
  export const dropRight: {
159
- (n: number): <R, E, A>(ref: RefArray<R, E, A>) => Effect.Effect<R, E, ReadonlyArray<A>>
160
- <R, E, A>(ref: RefArray<R, E, A>, n: number): Effect.Effect<R, E, ReadonlyArray<A>>
159
+ (n: number): <R, E, A>(ref: RefArray<R, E, A>) => Effect.Effect<ReadonlyArray<A>, E, R>
160
+ <R, E, A>(ref: RefArray<R, E, A>, n: number): Effect.Effect<ReadonlyArray<A>, E, R>
161
161
  } = dual(2, function dropRight<R, E, A>(ref: RefArray<R, E, A>, n: number) {
162
162
  return RefSubject.update(ref, ReadonlyArray.dropRight(n))
163
163
  })
@@ -170,11 +170,11 @@ export const dropRight: {
170
170
  export const dropWhile: {
171
171
  <A>(
172
172
  predicate: (a: A) => boolean
173
- ): <R, E>(ref: RefArray<R, E, A>) => Effect.Effect<R, E, ReadonlyArray<A>>
173
+ ): <R, E>(ref: RefArray<R, E, A>) => Effect.Effect<ReadonlyArray<A>, E, R>
174
174
  <R, E, A>(
175
175
  ref: RefArray<R, E, A>,
176
176
  predicate: (a: unknown) => boolean
177
- ): Effect.Effect<R, E, ReadonlyArray<A>>
177
+ ): Effect.Effect<ReadonlyArray<A>, E, R>
178
178
  } = dual(
179
179
  2,
180
180
  function dropWhile<R, E, A>(ref: RefArray<R, E, A>, predicate: (a: unknown) => boolean) {
@@ -239,12 +239,12 @@ export const insertAt: {
239
239
  <A>(
240
240
  index: number,
241
241
  a: A
242
- ): <R, E>(ref: RefArray<R, E, A>) => Effect.Effect<R, E, ReadonlyArray<A>>
242
+ ): <R, E>(ref: RefArray<R, E, A>) => Effect.Effect<ReadonlyArray<A>, E, R>
243
243
  <R, E, A>(
244
244
  ref: RefArray<R, E, A>,
245
245
  index: number,
246
246
  a: A
247
- ): Effect.Effect<R, E, ReadonlyArray<A>>
247
+ ): Effect.Effect<ReadonlyArray<A>, E, R>
248
248
  } = dual(3, function insertAt<R, E, A>(ref: RefArray<R, E, A>, index: number, a: A) {
249
249
  return RefSubject.update(ref, (as) => Option.getOrElse(ReadonlyArray.insertAt(as, index, a), () => [...as, a]))
250
250
  })
@@ -320,12 +320,12 @@ export const modifyAt: {
320
320
  <A>(
321
321
  index: number,
322
322
  f: (a: A) => A
323
- ): <R, E>(ref: RefArray<R, E, A>) => Effect.Effect<R, E, ReadonlyArray<A>>
323
+ ): <R, E>(ref: RefArray<R, E, A>) => Effect.Effect<ReadonlyArray<A>, E, R>
324
324
  <R, E, A>(
325
325
  ref: RefArray<R, E, A>,
326
326
  index: number,
327
327
  f: (a: A) => A
328
- ): Effect.Effect<R, E, ReadonlyArray<A>>
328
+ ): Effect.Effect<ReadonlyArray<A>, E, R>
329
329
  } = dual(3, function modifyAt<R, E, A>(ref: RefArray<R, E, A>, index: number, f: (a: A) => A) {
330
330
  return RefSubject.update(ref, ReadonlyArray.modify(index, f))
331
331
  })
@@ -407,12 +407,12 @@ export const replaceAt: {
407
407
  <A>(
408
408
  index: number,
409
409
  a: A
410
- ): <R, E>(ref: RefArray<R, E, A>) => Effect.Effect<R, E, ReadonlyArray<A>>
410
+ ): <R, E>(ref: RefArray<R, E, A>) => Effect.Effect<ReadonlyArray<A>, E, R>
411
411
  <R, E, A>(
412
412
  ref: RefArray<R, E, A>,
413
413
  index: number,
414
414
  a: A
415
- ): Effect.Effect<R, E, ReadonlyArray<A>>
415
+ ): Effect.Effect<ReadonlyArray<A>, E, R>
416
416
  } = dual(3, function replaceAt<R, E, A>(ref: RefArray<R, E, A>, index: number, a: A) {
417
417
  return RefSubject.update(ref, ReadonlyArray.replace(index, a))
418
418
  })
@@ -423,8 +423,8 @@ export const replaceAt: {
423
423
  * @category combinators
424
424
  */
425
425
  export const rotate: {
426
- (n: number): <R, E, A>(ref: RefArray<R, E, A>) => Effect.Effect<R, E, ReadonlyArray<A>>
427
- <R, E, A>(ref: RefArray<R, E, A>, n: number): Effect.Effect<R, E, ReadonlyArray<A>>
426
+ (n: number): <R, E, A>(ref: RefArray<R, E, A>) => Effect.Effect<ReadonlyArray<A>, E, R>
427
+ <R, E, A>(ref: RefArray<R, E, A>, n: number): Effect.Effect<ReadonlyArray<A>, E, R>
428
428
  } = dual(2, function rotate<R, E, A>(ref: RefArray<R, E, A>, n: number) {
429
429
  return RefSubject.update(ref, ReadonlyArray.rotate(n))
430
430
  })
@@ -437,11 +437,11 @@ export const rotate: {
437
437
  export const sortBy: {
438
438
  <A>(
439
439
  orders: Iterable<Order.Order<A>>
440
- ): <R, E>(ref: RefArray<R, E, A>) => Effect.Effect<R, E, ReadonlyArray<A>>
440
+ ): <R, E>(ref: RefArray<R, E, A>) => Effect.Effect<ReadonlyArray<A>, E, R>
441
441
  <R, E, A>(
442
442
  ref: RefArray<R, E, A>,
443
443
  orders: Iterable<Order.Order<A>>
444
- ): Effect.Effect<R, E, ReadonlyArray<A>>
444
+ ): Effect.Effect<ReadonlyArray<A>, E, R>
445
445
  } = dual(2, function sortBy<R, E, A>(ref: RefArray<R, E, A>, orders: Iterable<Order.Order<A>>) {
446
446
  return RefSubject.update(ref, ReadonlyArray.sortBy(...orders))
447
447
  })
@@ -452,8 +452,8 @@ export const sortBy: {
452
452
  * @category combinators
453
453
  */
454
454
  export const take: {
455
- (n: number): <R, E, A>(ref: RefArray<R, E, A>) => Effect.Effect<R, E, ReadonlyArray<A>>
456
- <R, E, A>(ref: RefArray<R, E, A>, n: number): Effect.Effect<R, E, ReadonlyArray<A>>
455
+ (n: number): <R, E, A>(ref: RefArray<R, E, A>) => Effect.Effect<ReadonlyArray<A>, E, R>
456
+ <R, E, A>(ref: RefArray<R, E, A>, n: number): Effect.Effect<ReadonlyArray<A>, E, R>
457
457
  } = dual(2, function take<R, E, A>(ref: RefArray<R, E, A>, n: number) {
458
458
  return RefSubject.update(ref, ReadonlyArray.take(n))
459
459
  })
@@ -464,8 +464,8 @@ export const take: {
464
464
  * @category combinators
465
465
  */
466
466
  export const takeRight: {
467
- (n: number): <R, E, A>(ref: RefArray<R, E, A>) => Effect.Effect<R, E, ReadonlyArray<A>>
468
- <R, E, A>(ref: RefArray<R, E, A>, n: number): Effect.Effect<R, E, ReadonlyArray<A>>
467
+ (n: number): <R, E, A>(ref: RefArray<R, E, A>) => Effect.Effect<ReadonlyArray<A>, E, R>
468
+ <R, E, A>(ref: RefArray<R, E, A>, n: number): Effect.Effect<ReadonlyArray<A>, E, R>
469
469
  } = dual(2, function takeRight<R, E, A>(ref: RefArray<R, E, A>, n: number) {
470
470
  return RefSubject.update(ref, ReadonlyArray.takeRight(n))
471
471
  })
@@ -478,11 +478,11 @@ export const takeRight: {
478
478
  export const takeWhile: {
479
479
  <A>(
480
480
  predicate: (a: A) => boolean
481
- ): <R, E>(ref: RefArray<R, E, A>) => Effect.Effect<R, E, ReadonlyArray<A>>
481
+ ): <R, E>(ref: RefArray<R, E, A>) => Effect.Effect<ReadonlyArray<A>, E, R>
482
482
  <R, E, A>(
483
483
  ref: RefArray<R, E, A>,
484
484
  predicate: (a: unknown) => boolean
485
- ): Effect.Effect<R, E, ReadonlyArray<A>>
485
+ ): Effect.Effect<ReadonlyArray<A>, E, R>
486
486
  } = dual(
487
487
  2,
488
488
  function takeWhile<R, E, A>(ref: RefArray<R, E, A>, predicate: (a: unknown) => boolean) {
@@ -496,7 +496,7 @@ export const takeWhile: {
496
496
  * @category combinators
497
497
  */
498
498
  export const dedupeWith =
499
- <A>(valueEq: Equivalence<A>) => <R, E>(ref: RefArray<R, E, A>): Effect.Effect<R, E, ReadonlyArray<A>> =>
499
+ <A>(valueEq: Equivalence<A>) => <R, E>(ref: RefArray<R, E, A>): Effect.Effect<ReadonlyArray<A>, E, R> =>
500
500
  RefSubject.update(ref, ReadonlyArray.dedupeWith(valueEq))
501
501
 
502
502
  /**
package/src/RefChunk.ts CHANGED
@@ -26,18 +26,18 @@ export interface RefChunk<out R, in out E, in out A> extends RefSubject.RefSubje
26
26
  * @category constructors
27
27
  */
28
28
  export function make<R, E, A>(
29
- initial: Effect.Effect<R, E, Chunk.Chunk<A>>,
29
+ initial: Effect.Effect<Chunk.Chunk<A>, E, R>,
30
30
  eq?: Equivalence<A>
31
- ): Effect.Effect<R | Scope.Scope, never, RefChunk<never, E, A>>
31
+ ): Effect.Effect<RefChunk<never, E, A>, never, R | Scope.Scope>
32
32
  export function make<R, E, A>(
33
33
  initial: Fx.Fx<R, E, Chunk.Chunk<A>>,
34
34
  eq?: Equivalence<A>
35
- ): Effect.Effect<R | Scope.Scope, never, RefChunk<never, E, A>>
35
+ ): Effect.Effect<RefChunk<never, E, A>, never, R | Scope.Scope>
36
36
 
37
37
  export function make<R, E, A>(
38
- initial: Fx.Fx<R, E, Chunk.Chunk<A>> | Effect.Effect<R, E, Chunk.Chunk<A>>,
38
+ initial: Fx.Fx<R, E, Chunk.Chunk<A>> | Effect.Effect<Chunk.Chunk<A>, E, R>,
39
39
  eq: Equivalence<A> = equals
40
- ): Effect.Effect<R | Scope.Scope, never, RefChunk<never, E, A>> {
40
+ ): Effect.Effect<RefChunk<never, E, A>, never, R | Scope.Scope> {
41
41
  return RefSubject.make(
42
42
  initial,
43
43
  {
@@ -65,8 +65,8 @@ export const tagged: <A>() => {
65
65
  * @category combinators
66
66
  */
67
67
  export const prepend: {
68
- <A>(value: A): <R, E>(ref: RefChunk<R, E, A>) => Effect.Effect<R, E, Chunk.Chunk<A>>
69
- <R, E, A>(ref: RefChunk<R, E, A>, value: A): Effect.Effect<R, E, Chunk.Chunk<A>>
68
+ <A>(value: A): <R, E>(ref: RefChunk<R, E, A>) => Effect.Effect<Chunk.Chunk<A>, E, R>
69
+ <R, E, A>(ref: RefChunk<R, E, A>, value: A): Effect.Effect<Chunk.Chunk<A>, E, R>
70
70
  } = dual(2, function prepend<R, E, A>(ref: RefChunk<R, E, A>, value: A) {
71
71
  return RefSubject.update(ref, Chunk.prepend(value))
72
72
  })
@@ -77,8 +77,8 @@ export const prepend: {
77
77
  * @category combinators
78
78
  */
79
79
  export const prependAll: {
80
- <A>(value: Iterable<A>): <R, E>(ref: RefChunk<R, E, A>) => Effect.Effect<R, E, Chunk.Chunk<A>>
81
- <R, E, A>(ref: RefChunk<R, E, A>, value: Iterable<A>): Effect.Effect<R, E, Chunk.Chunk<A>>
80
+ <A>(value: Iterable<A>): <R, E>(ref: RefChunk<R, E, A>) => Effect.Effect<Chunk.Chunk<A>, E, R>
81
+ <R, E, A>(ref: RefChunk<R, E, A>, value: Iterable<A>): Effect.Effect<Chunk.Chunk<A>, E, R>
82
82
  } = dual(
83
83
  2,
84
84
  function prependAll<R, E, A>(ref: RefChunk<R, E, A>, value: Iterable<A>) {
@@ -92,8 +92,8 @@ export const prependAll: {
92
92
  * @category combinators
93
93
  */
94
94
  export const append: {
95
- <A>(value: A): <R, E>(ref: RefChunk<R, E, A>) => Effect.Effect<R, E, Chunk.Chunk<A>>
96
- <R, E, A>(ref: RefChunk<R, E, A>, value: A): Effect.Effect<R, E, Chunk.Chunk<A>>
95
+ <A>(value: A): <R, E>(ref: RefChunk<R, E, A>) => Effect.Effect<Chunk.Chunk<A>, E, R>
96
+ <R, E, A>(ref: RefChunk<R, E, A>, value: A): Effect.Effect<Chunk.Chunk<A>, E, R>
97
97
  } = dual(2, function append<R, E, A>(ref: RefChunk<R, E, A>, value: A) {
98
98
  return RefSubject.update(ref, Chunk.append(value))
99
99
  })
@@ -106,8 +106,8 @@ export const append: {
106
106
  export const appendAll: {
107
107
  <A>(
108
108
  value: Iterable<A>
109
- ): <R, E>(ref: RefChunk<R, E, A>) => Effect.Effect<R, E, Chunk.Chunk<A>>
110
- <R, E, A>(ref: RefChunk<R, E, A>, value: Iterable<A>): Effect.Effect<R, E, Chunk.Chunk<A>>
109
+ ): <R, E>(ref: RefChunk<R, E, A>) => Effect.Effect<Chunk.Chunk<A>, E, R>
110
+ <R, E, A>(ref: RefChunk<R, E, A>, value: Iterable<A>): Effect.Effect<Chunk.Chunk<A>, E, R>
111
111
  } = dual(2, function appendAll<R, E, A>(ref: RefChunk<R, E, A>, value: Iterable<A>) {
112
112
  return RefSubject.update(ref, Chunk.appendAll(Chunk.fromIterable(value)))
113
113
  })
@@ -118,8 +118,8 @@ export const appendAll: {
118
118
  * @category combinators
119
119
  */
120
120
  export const drop: {
121
- (n: number): <R, E, A>(ref: RefChunk<R, E, A>) => Effect.Effect<R, E, Chunk.Chunk<A>>
122
- <R, E, A>(ref: RefChunk<R, E, A>, n: number): Effect.Effect<R, E, Chunk.Chunk<A>>
121
+ (n: number): <R, E, A>(ref: RefChunk<R, E, A>) => Effect.Effect<Chunk.Chunk<A>, E, R>
122
+ <R, E, A>(ref: RefChunk<R, E, A>, n: number): Effect.Effect<Chunk.Chunk<A>, E, R>
123
123
  } = dual(2, function drop<R, E, A>(ref: RefChunk<R, E, A>, n: number) {
124
124
  return RefSubject.update(ref, Chunk.drop(n))
125
125
  })
@@ -130,8 +130,8 @@ export const drop: {
130
130
  * @category combinators
131
131
  */
132
132
  export const dropRight: {
133
- (n: number): <R, E, A>(ref: RefChunk<R, E, A>) => Effect.Effect<R, E, Chunk.Chunk<A>>
134
- <R, E, A>(ref: RefChunk<R, E, A>, n: number): Effect.Effect<R, E, Chunk.Chunk<A>>
133
+ (n: number): <R, E, A>(ref: RefChunk<R, E, A>) => Effect.Effect<Chunk.Chunk<A>, E, R>
134
+ <R, E, A>(ref: RefChunk<R, E, A>, n: number): Effect.Effect<Chunk.Chunk<A>, E, R>
135
135
  } = dual(2, function dropRight<R, E, A>(ref: RefChunk<R, E, A>, n: number) {
136
136
  return RefSubject.update(ref, Chunk.dropRight(n))
137
137
  })
@@ -144,11 +144,11 @@ export const dropRight: {
144
144
  export const dropWhile: {
145
145
  <A>(
146
146
  predicate: (a: A) => boolean
147
- ): <R, E>(ref: RefChunk<R, E, A>) => Effect.Effect<R, E, Chunk.Chunk<A>>
147
+ ): <R, E>(ref: RefChunk<R, E, A>) => Effect.Effect<Chunk.Chunk<A>, E, R>
148
148
  <R, E, A>(
149
149
  ref: RefChunk<R, E, A>,
150
150
  predicate: (a: A) => boolean
151
- ): Effect.Effect<R, E, Chunk.Chunk<A>>
151
+ ): Effect.Effect<Chunk.Chunk<A>, E, R>
152
152
  } = dual(
153
153
  2,
154
154
  function dropWhile<R, E, A>(ref: RefChunk<R, E, A>, predicate: (a: A) => boolean) {
@@ -256,12 +256,12 @@ export const modifyAt: {
256
256
  <A>(
257
257
  index: number,
258
258
  f: (a: A) => A
259
- ): <R, E>(ref: RefChunk<R, E, A>) => Effect.Effect<R, E, Chunk.Chunk<A>>
259
+ ): <R, E>(ref: RefChunk<R, E, A>) => Effect.Effect<Chunk.Chunk<A>, E, R>
260
260
  <R, E, A>(
261
261
  ref: RefChunk<R, E, A>,
262
262
  index: number,
263
263
  f: (a: A) => A
264
- ): Effect.Effect<R, E, Chunk.Chunk<A>>
264
+ ): Effect.Effect<Chunk.Chunk<A>, E, R>
265
265
  } = dual(3, function modifyAt<R, E, A>(ref: RefChunk<R, E, A>, index: number, f: (a: A) => A) {
266
266
  return RefSubject.update(ref, Chunk.modify(index, f))
267
267
  })
@@ -343,12 +343,12 @@ export const replaceAt: {
343
343
  <A>(
344
344
  index: number,
345
345
  a: A
346
- ): <R, E>(ref: RefChunk<R, E, A>) => Effect.Effect<R, E, Chunk.Chunk<A>>
346
+ ): <R, E>(ref: RefChunk<R, E, A>) => Effect.Effect<Chunk.Chunk<A>, E, R>
347
347
  <R, E, A>(
348
348
  ref: RefChunk<R, E, A>,
349
349
  index: number,
350
350
  a: A
351
- ): Effect.Effect<R, E, Chunk.Chunk<A>>
351
+ ): Effect.Effect<Chunk.Chunk<A>, E, R>
352
352
  } = dual(3, function replaceAt<R, E, A>(ref: RefChunk<R, E, A>, index: number, a: A) {
353
353
  return RefSubject.update(ref, Chunk.replace(index, a))
354
354
  })
@@ -359,8 +359,8 @@ export const replaceAt: {
359
359
  * @category combinators
360
360
  */
361
361
  export const take: {
362
- (n: number): <R, E, A>(ref: RefChunk<R, E, A>) => Effect.Effect<R, E, Chunk.Chunk<A>>
363
- <R, E, A>(ref: RefChunk<R, E, A>, n: number): Effect.Effect<R, E, Chunk.Chunk<A>>
362
+ (n: number): <R, E, A>(ref: RefChunk<R, E, A>) => Effect.Effect<Chunk.Chunk<A>, E, R>
363
+ <R, E, A>(ref: RefChunk<R, E, A>, n: number): Effect.Effect<Chunk.Chunk<A>, E, R>
364
364
  } = dual(2, function take<R, E, A>(ref: RefChunk<R, E, A>, n: number) {
365
365
  return RefSubject.update(ref, Chunk.take(n))
366
366
  })
@@ -371,8 +371,8 @@ export const take: {
371
371
  * @category combinators
372
372
  */
373
373
  export const takeRight: {
374
- (n: number): <R, E, A>(ref: RefChunk<R, E, A>) => Effect.Effect<R, E, Chunk.Chunk<A>>
375
- <R, E, A>(ref: RefChunk<R, E, A>, n: number): Effect.Effect<R, E, Chunk.Chunk<A>>
374
+ (n: number): <R, E, A>(ref: RefChunk<R, E, A>) => Effect.Effect<Chunk.Chunk<A>, E, R>
375
+ <R, E, A>(ref: RefChunk<R, E, A>, n: number): Effect.Effect<Chunk.Chunk<A>, E, R>
376
376
  } = dual(2, function takeRight<R, E, A>(ref: RefChunk<R, E, A>, n: number) {
377
377
  return RefSubject.update(ref, Chunk.takeRight(n))
378
378
  })
@@ -385,11 +385,11 @@ export const takeRight: {
385
385
  export const takeWhile: {
386
386
  <A>(
387
387
  predicate: (a: A) => boolean
388
- ): <R, E>(ref: RefChunk<R, E, A>) => Effect.Effect<R, E, Chunk.Chunk<A>>
388
+ ): <R, E>(ref: RefChunk<R, E, A>) => Effect.Effect<Chunk.Chunk<A>, E, R>
389
389
  <R, E, A>(
390
390
  ref: RefChunk<R, E, A>,
391
391
  predicate: (a: A) => boolean
392
- ): Effect.Effect<R, E, Chunk.Chunk<A>>
392
+ ): Effect.Effect<Chunk.Chunk<A>, E, R>
393
393
  } = dual(
394
394
  2,
395
395
  function takeWhile<R, E, A>(ref: RefChunk<R, E, A>, predicate: (a: A) => boolean) {
@@ -402,5 +402,5 @@ export const takeWhile: {
402
402
  * @since 1.18.0
403
403
  * @category combinators
404
404
  */
405
- export const dedupe = <R, E, A>(ref: RefChunk<R, E, A>): Effect.Effect<R, E, Chunk.Chunk<A>> =>
405
+ export const dedupe = <R, E, A>(ref: RefChunk<R, E, A>): Effect.Effect<Chunk.Chunk<A>, E, R> =>
406
406
  RefSubject.update(ref, Chunk.dedupe)
package/src/RefHashMap.ts CHANGED
@@ -27,15 +27,15 @@ export interface RefHashMap<out R, in out E, in out K, in out V>
27
27
  * @category constructors
28
28
  */
29
29
  export function make<R, E, K, V>(
30
- initial: Effect.Effect<R, E, HashMap.HashMap<K, V>>
31
- ): Effect.Effect<R | Scope.Scope, never, RefHashMap<never, E, K, V>>
30
+ initial: Effect.Effect<HashMap.HashMap<K, V>, E, R>
31
+ ): Effect.Effect<RefHashMap<never, E, K, V>, never, R | Scope.Scope>
32
32
  export function make<R, E, K, V>(
33
33
  initial: Fx.Fx<R, E, HashMap.HashMap<K, V>>
34
- ): Effect.Effect<R | Scope.Scope, never, RefHashMap<never, E, K, V>>
34
+ ): Effect.Effect<RefHashMap<never, E, K, V>, never, R | Scope.Scope>
35
35
 
36
36
  export function make<R, E, K, V>(
37
- initial: Effect.Effect<R, E, HashMap.HashMap<K, V>> | Fx.Fx<R, E, HashMap.HashMap<K, V>>
38
- ): Effect.Effect<R | Scope.Scope, never, RefHashMap<never, E, K, V>> {
37
+ initial: Effect.Effect<HashMap.HashMap<K, V>, E, R> | Fx.Fx<R, E, HashMap.HashMap<K, V>>
38
+ ): Effect.Effect<RefHashMap<never, E, K, V>, never, R | Scope.Scope> {
39
39
  return RefSubject.make(initial)
40
40
  }
41
41
 
@@ -59,7 +59,7 @@ export const tagged: <K, V>() => {
59
59
  */
60
60
  export function of<K, V>(
61
61
  map: HashMap.HashMap<K, V>
62
- ): Effect.Effect<Scope.Scope, never, RefHashMap<never, never, K, V>> {
62
+ ): Effect.Effect<RefHashMap<never, never, K, V>, never, Scope.Scope> {
63
63
  return make(Effect.succeed(map))
64
64
  }
65
65
 
@@ -129,12 +129,12 @@ export function keys<R, E, K, V>(refHashMap: RefHashMap<R, E, K, V>): RefSubject
129
129
  export const map: {
130
130
  <K, V>(
131
131
  f: (v: V, k: K) => V
132
- ): <R, E>(refHashMap: RefHashMap<R, E, K, V>) => Effect.Effect<R, E, HashMap.HashMap<K, V>>
133
- <R, E, K, V>(refHashMap: RefHashMap<R, E, K, V>, f: (v: V, k: K) => V): Effect.Effect<R, E, HashMap.HashMap<K, V>>
132
+ ): <R, E>(refHashMap: RefHashMap<R, E, K, V>) => Effect.Effect<HashMap.HashMap<K, V>, E, R>
133
+ <R, E, K, V>(refHashMap: RefHashMap<R, E, K, V>, f: (v: V, k: K) => V): Effect.Effect<HashMap.HashMap<K, V>, E, R>
134
134
  } = dual(2, function map<R, E, K, V>(
135
135
  refHashMap: RefHashMap<R, E, K, V>,
136
136
  f: (v: V, k: K) => V
137
- ): Effect.Effect<R, E, HashMap.HashMap<K, V>> {
137
+ ): Effect.Effect<HashMap.HashMap<K, V>, E, R> {
138
138
  return RefSubject.update(refHashMap, HashMap.map(f))
139
139
  })
140
140
 
@@ -147,17 +147,17 @@ export const modify: {
147
147
  <K, V>(
148
148
  key: K,
149
149
  f: (v: V) => V
150
- ): <R, E>(refHashMap: RefHashMap<R, E, K, V>) => Effect.Effect<R, E, HashMap.HashMap<K, V>>
150
+ ): <R, E>(refHashMap: RefHashMap<R, E, K, V>) => Effect.Effect<HashMap.HashMap<K, V>, E, R>
151
151
  <R, E, K, V>(
152
152
  refHashMap: RefHashMap<R, E, K, V>,
153
153
  key: K,
154
154
  f: (v: V) => V
155
- ): Effect.Effect<R, E, HashMap.HashMap<K, V>>
155
+ ): Effect.Effect<HashMap.HashMap<K, V>, E, R>
156
156
  } = dual(3, function map<R, E, K, V>(
157
157
  refHashMap: RefHashMap<R, E, K, V>,
158
158
  key: K,
159
159
  f: (v: V) => V
160
- ): Effect.Effect<R, E, HashMap.HashMap<K, V>> {
160
+ ): Effect.Effect<HashMap.HashMap<K, V>, E, R> {
161
161
  return RefSubject.update(refHashMap, HashMap.modify(key, f))
162
162
  })
163
163
 
@@ -170,17 +170,17 @@ export const modifyAt: {
170
170
  <K, V>(
171
171
  key: K,
172
172
  f: HashMap.HashMap.UpdateFn<V>
173
- ): <R, E>(self: RefHashMap<R, E, K, V>) => Effect.Effect<R, E, HashMap.HashMap<K, V>>
173
+ ): <R, E>(self: RefHashMap<R, E, K, V>) => Effect.Effect<HashMap.HashMap<K, V>, E, R>
174
174
  <R, E, K, V>(
175
175
  self: RefHashMap<R, E, K, V>,
176
176
  key: K,
177
177
  f: HashMap.HashMap.UpdateFn<V>
178
- ): Effect.Effect<R, E, HashMap.HashMap<K, V>>
178
+ ): Effect.Effect<HashMap.HashMap<K, V>, E, R>
179
179
  } = dual(3, function modifyAt<R, E, K, V>(
180
180
  self: RefHashMap<R, E, K, V>,
181
181
  key: K,
182
182
  f: HashMap.HashMap.UpdateFn<V>
183
- ): Effect.Effect<R, E, HashMap.HashMap<K, V>> {
183
+ ): Effect.Effect<HashMap.HashMap<K, V>, E, R> {
184
184
  return RefSubject.update(self, HashMap.modifyAt(key, f))
185
185
  })
186
186
 
@@ -194,19 +194,19 @@ export const modifyHash: {
194
194
  key: K,
195
195
  hash: number,
196
196
  f: HashMap.HashMap.UpdateFn<V>
197
- ): <R, E>(self: RefHashMap<R, E, K, V>) => Effect.Effect<R, E, HashMap.HashMap<K, V>>
197
+ ): <R, E>(self: RefHashMap<R, E, K, V>) => Effect.Effect<HashMap.HashMap<K, V>, E, R>
198
198
  <R, E, K, V>(
199
199
  self: RefHashMap<R, E, K, V>,
200
200
  key: K,
201
201
  hash: number,
202
202
  f: HashMap.HashMap.UpdateFn<V>
203
- ): Effect.Effect<R, E, HashMap.HashMap<K, V>>
203
+ ): Effect.Effect<HashMap.HashMap<K, V>, E, R>
204
204
  } = dual(4, function modifyAt<R, E, K, V>(
205
205
  self: RefHashMap<R, E, K, V>,
206
206
  key: K,
207
207
  hash: number,
208
208
  f: HashMap.HashMap.UpdateFn<V>
209
- ): Effect.Effect<R, E, HashMap.HashMap<K, V>> {
209
+ ): Effect.Effect<HashMap.HashMap<K, V>, E, R> {
210
210
  return RefSubject.update(self, HashMap.modifyHash(key, hash, f))
211
211
  })
212
212
 
@@ -239,8 +239,8 @@ export const reduce: {
239
239
  * @category combinators
240
240
  */
241
241
  export const remove: {
242
- <K>(key: K): <R, E, V>(refHashMap: RefHashMap<R, E, K, V>) => Effect.Effect<R, E, HashMap.HashMap<K, V>>
243
- <R, E, K, V>(refHashMap: RefHashMap<R, E, K, V>, key: K): Effect.Effect<R, E, HashMap.HashMap<K, V>>
242
+ <K>(key: K): <R, E, V>(refHashMap: RefHashMap<R, E, K, V>) => Effect.Effect<HashMap.HashMap<K, V>, E, R>
243
+ <R, E, K, V>(refHashMap: RefHashMap<R, E, K, V>, key: K): Effect.Effect<HashMap.HashMap<K, V>, E, R>
244
244
  } = dual(2, function remove<R, E, K, V>(refHashMap: RefHashMap<R, E, K, V>, key: K) {
245
245
  return RefSubject.update(refHashMap, HashMap.remove(key))
246
246
  })
@@ -251,8 +251,8 @@ export const remove: {
251
251
  * @category combinators
252
252
  */
253
253
  export const removeMany: {
254
- <K>(key: Iterable<K>): <R, E, V>(refHashMap: RefHashMap<R, E, K, V>) => Effect.Effect<R, E, HashMap.HashMap<K, V>>
255
- <R, E, K, V>(refHashMap: RefHashMap<R, E, K, V>, key: Iterable<K>): Effect.Effect<R, E, HashMap.HashMap<K, V>>
254
+ <K>(key: Iterable<K>): <R, E, V>(refHashMap: RefHashMap<R, E, K, V>) => Effect.Effect<HashMap.HashMap<K, V>, E, R>
255
+ <R, E, K, V>(refHashMap: RefHashMap<R, E, K, V>, key: Iterable<K>): Effect.Effect<HashMap.HashMap<K, V>, E, R>
256
256
  } = dual(2, function removeMany<R, E, K, V>(refHashMap: RefHashMap<R, E, K, V>, key: Iterable<K>) {
257
257
  return RefSubject.update(refHashMap, HashMap.removeMany(key))
258
258
  })
@@ -266,8 +266,8 @@ export const set: {
266
266
  <K, V>(
267
267
  key: K,
268
268
  value: V
269
- ): <R, E>(refHashMap: RefHashMap<R, E, K, V>) => Effect.Effect<R, E, HashMap.HashMap<K, V>>
270
- <R, E, K, V>(refHashMap: RefHashMap<R, E, K, V>, key: K, value: V): Effect.Effect<R, E, HashMap.HashMap<K, V>>
269
+ ): <R, E>(refHashMap: RefHashMap<R, E, K, V>) => Effect.Effect<HashMap.HashMap<K, V>, E, R>
270
+ <R, E, K, V>(refHashMap: RefHashMap<R, E, K, V>, key: K, value: V): Effect.Effect<HashMap.HashMap<K, V>, E, R>
271
271
  } = dual(3, function set<R, E, K, V>(refHashMap: RefHashMap<R, E, K, V>, key: K, value: V) {
272
272
  return RefSubject.update(refHashMap, HashMap.set(key, value))
273
273
  })
package/src/RefHashSet.ts CHANGED
@@ -22,8 +22,8 @@ export interface RefHashSet<out R, in out E, in out A> extends RefSubject.RefSub
22
22
  * @since 1.18.0
23
23
  */
24
24
  export function make<R, E, A>(
25
- initial: Effect.Effect<R, E, HashSet.HashSet<A>> | Fx.Fx<R, E, HashSet.HashSet<A>>
26
- ): Effect.Effect<R | Scope.Scope, never, RefHashSet<never, E, A>> {
25
+ initial: Effect.Effect<HashSet.HashSet<A>, E, R> | Fx.Fx<R, E, HashSet.HashSet<A>>
26
+ ): Effect.Effect<RefHashSet<never, E, A>, never, R | Scope.Scope> {
27
27
  return RefSubject.make(
28
28
  initial
29
29
  )
@@ -48,8 +48,8 @@ export const tagged: <A>() => {
48
48
  * @category combinators
49
49
  */
50
50
  export const add: {
51
- <A>(value: A): <R, E>(ref: RefHashSet<R, E, A>) => Effect.Effect<R, E, HashSet.HashSet<A>>
52
- <R, E, A>(ref: RefHashSet<R, E, A>, value: A): Effect.Effect<R, E, HashSet.HashSet<A>>
51
+ <A>(value: A): <R, E>(ref: RefHashSet<R, E, A>) => Effect.Effect<HashSet.HashSet<A>, E, R>
52
+ <R, E, A>(ref: RefHashSet<R, E, A>, value: A): Effect.Effect<HashSet.HashSet<A>, E, R>
53
53
  } = dual(2, function add<R, E, A>(ref: RefHashSet<R, E, A>, value: A) {
54
54
  return RefSubject.update(ref, HashSet.add(value))
55
55
  })
@@ -62,8 +62,8 @@ export const add: {
62
62
  export const appendAll: {
63
63
  <A>(
64
64
  value: Iterable<A>
65
- ): <R, E>(ref: RefHashSet<R, E, A>) => Effect.Effect<R, E, HashSet.HashSet<A>>
66
- <R, E, A>(ref: RefHashSet<R, E, A>, value: Iterable<A>): Effect.Effect<R, E, HashSet.HashSet<A>>
65
+ ): <R, E>(ref: RefHashSet<R, E, A>) => Effect.Effect<HashSet.HashSet<A>, E, R>
66
+ <R, E, A>(ref: RefHashSet<R, E, A>, value: Iterable<A>): Effect.Effect<HashSet.HashSet<A>, E, R>
67
67
  } = dual(2, function appendAll<R, E, A>(ref: RefHashSet<R, E, A>, value: Iterable<A>) {
68
68
  return RefSubject.update(ref, (set) =>
69
69
  HashSet.mutate(set, (set) => {