@effect-atom/atom 0.4.1 → 0.4.3

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.
@@ -1 +1 @@
1
- {"version":3,"file":"registry.js","names":["Effect","Equal","Exit","pipe","globalValue","Option","Queue","Stream","Result","constImmediate","immediate","constListener","_","TypeId","make","options","RegistryImpl","initialValues","scheduleTask","timeoutResolution","defaultIdleTTL","SerializableTypeId","atomKey","atom","key","constructor","cb","queueMicrotask","undefined","Math","round","value","ensureNode","setValue","nodes","Map","preloadedSerializable","timeoutBuckets","nodeTimeoutBucket","disposed","getNodes","get","set","write","writeContext","setSerializable","encoded","modify","f","node","result","update","refresh","invalidateAtom","subscribe","remove","_value","canBeRemoved","scheduleNodeRemoval","mount","atomHasTtl","keepAlive","idleTTL","createNode","removeNodeTimeout","has","delete","decoded","decode","Error","scheduleAtomRemoval","Node","invalidate","removeNode","setNodeTimeout","currentSweepTTL","ttl","ceil","timestamp","Date","now","bucket","entry","Set","setTimeout","sweepBucket","add","handle","size","clearTimeout","forEach","reset","clear","dispose","NodeFlags","NodeState","registry","WriteContextImpl","state","uninitialized","lifetime","parents","previousParents","children","listeners","skipInvalidation","length","waitingForValue","makeLifetime","read","i","removeChild","valueOption","initialized","none","some","valid","batchState","phase","BatchPhase","collect","notify","equals","invalidateChildren","addParent","parent","push","index","indexOf","pop","child","stale","disposeLifetime","lazy","childrenAreActive","commit","removed","listener","current","stack","stackIndex","len","disposedError","LifetimeProto","addFinalizer","finalizers","isFn","resultOnce","suspendOnWaiting","waiting","never","_tag","failCause","cause","succeed","async","resume","once","toExit","cancel","sync","someOnce","isSome","isNone","self","refreshSelf","setSelf","a","stream","acquireRelease","bounded","bufferSize","shutdown","tap","queue","unsafeOffer","withoutInitialValue","map","fromQueue","unwrapScoped","streamResult","filter","isNotInitial","flatMap","Object","setPrototypeOf","disabled","depth","batch","batchRebuildNode"],"sources":["../../../src/internal/registry.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"registry.js","names":["Effect","Equal","Exit","pipe","globalValue","Option","Queue","Stream","Result","constImmediate","immediate","constListener","_","TypeId","make","options","RegistryImpl","initialValues","scheduleTask","timeoutResolution","defaultIdleTTL","SerializableTypeId","atomKey","atom","key","constructor","cb","queueMicrotask","undefined","Math","round","value","ensureNode","setValue","nodes","Map","preloadedSerializable","timeoutBuckets","nodeTimeoutBucket","disposed","getNodes","get","set","write","writeContext","setSerializable","encoded","modify","f","node","result","update","refresh","invalidateAtom","subscribe","remove","_value","canBeRemoved","scheduleNodeRemoval","mount","atomHasTtl","keepAlive","idleTTL","createNode","removeNodeTimeout","has","delete","decoded","decode","Error","scheduleAtomRemoval","Node","invalidate","removeNode","setNodeTimeout","currentSweepTTL","ttl","ceil","timestamp","Date","now","bucket","entry","Set","setTimeout","sweepBucket","add","handle","size","clearTimeout","forEach","reset","clear","dispose","NodeFlags","NodeState","registry","WriteContextImpl","state","uninitialized","lifetime","parents","previousParents","children","listeners","skipInvalidation","length","waitingForValue","makeLifetime","read","i","removeChild","valueOption","initialized","none","some","valid","batchState","phase","BatchPhase","collect","notify","equals","invalidateChildren","addParent","parent","push","index","indexOf","pop","child","stale","disposeLifetime","lazy","childrenAreActive","commit","removed","listener","current","stack","stackIndex","len","disposedError","LifetimeProto","addFinalizer","finalizers","isFn","resultOnce","suspendOnWaiting","waiting","never","_tag","failCause","cause","succeed","async","resume","once","toExit","cancel","sync","someOnce","isSome","isNone","self","refreshSelf","setSelf","a","stream","acquireRelease","bounded","bufferSize","shutdown","tap","queue","unsafeOffer","withoutInitialValue","map","fromQueue","unwrapScoped","streamResult","filter","isNotInitial","flatMap","Object","setPrototypeOf","disabled","depth","batch","batchRebuildNode"],"sources":["../../../src/internal/registry.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@effect-atom/atom",
3
- "version": "0.4.1",
3
+ "version": "0.4.3",
4
4
  "description": "Reactive toolkit for Effect",
5
5
  "license": "MIT",
6
6
  "repository": {
package/src/Atom.ts CHANGED
@@ -167,6 +167,28 @@ export interface WriteContext<A> {
167
167
  set<R, W>(this: WriteContext<A>, atom: Writable<R, W>, value: W): void
168
168
  }
169
169
 
170
+ /**
171
+ * @since 1.0.0
172
+ * @category combinators
173
+ */
174
+ export const setIdleTTL: {
175
+ (duration: Duration.DurationInput): <A extends Atom<any>>(self: A) => A
176
+ <A extends Atom<any>>(self: A, duration: Duration.DurationInput): A
177
+ } = dual<
178
+ (duration: Duration.DurationInput) => <A extends Atom<any>>(self: A) => A,
179
+ <A extends Atom<any>>(self: A, duration: Duration.DurationInput) => A
180
+ >(2, (self, durationInput) => {
181
+ const duration = Duration.decode(durationInput)
182
+ const isFinite = Duration.isFinite(duration)
183
+ return Object.assign(Object.create(Object.getPrototypeOf(self)), {
184
+ ...self,
185
+ keepAlive: !isFinite,
186
+ idleTTL: isFinite ? Duration.toMillis(duration) : undefined
187
+ })
188
+ })
189
+
190
+ const removeTtl = setIdleTTL(0)
191
+
170
192
  const AtomProto = {
171
193
  [TypeId]: TypeId,
172
194
  pipe() {
@@ -217,7 +239,7 @@ const RuntimeProto = {
217
239
  readonly disableAccumulation?: boolean
218
240
  readonly initialValue?: ReadonlyArray<any>
219
241
  }) {
220
- const pullSignal = state(0)
242
+ const pullSignal = removeTtl(state(0))
221
243
  const pullAtom = readable((get) => {
222
244
  const previous = get.self<Result.Result<any, any>>()
223
245
  const runtimeResult = get(this)
@@ -236,7 +258,7 @@ const RuntimeProto = {
236
258
 
237
259
  subscriptionRef(this: AtomRuntime<any, any>, ref: any) {
238
260
  return makeSubRef(
239
- readable((get) => {
261
+ removeTtl(readable((get) => {
240
262
  const previous = get.self<Result.Result<any, any>>()
241
263
  const runtimeResult = get(this)
242
264
  if (runtimeResult._tag !== "Success") {
@@ -246,7 +268,7 @@ const RuntimeProto = {
246
268
  return SubscriptionRef.SubscriptionRefTypeId in value
247
269
  ? value
248
270
  : makeEffect(get, value, Result.initial(true), runtimeResult.value)
249
- }),
271
+ })),
250
272
  (get, ref) => {
251
273
  const runtime = Result.getOrThrow(get(this))
252
274
  return readSubscribable(get, ref, runtime)
@@ -677,11 +699,11 @@ export const context: (options: {
677
699
  factory.addGlobalLayer = (layer: Layer.Layer<any, any, AtomRegistry | Reactivity.Reactivity>) => {
678
700
  globalLayer = Layer.provideMerge(globalLayer, Layer.provide(layer, Reactivity.layer))
679
701
  }
680
- const reactivityAtom = make(
702
+ const reactivityAtom = removeTtl(make(
681
703
  Effect.scopeWith((scope) => Layer.buildWithMemoMap(Reactivity.layer, options.memoMap, scope)).pipe(
682
704
  Effect.map(EffectContext.get(Reactivity.Reactivity))
683
705
  )
684
- )
706
+ ))
685
707
  factory.withReactivity =
686
708
  (keys: ReadonlyArray<unknown> | ReadonlyRecord<string, ReadonlyArray<unknown>>) =>
687
709
  <A extends Atom<any>>(atom: A): A =>
@@ -1007,7 +1029,7 @@ export const fnSync: {
1007
1029
  const makeFnSync = <Arg, A>(f: (arg: Arg, get: FnContext) => A, options?: {
1008
1030
  readonly initialValue?: A
1009
1031
  }): Writable<Option.Option<A> | A, Arg> => {
1010
- const argAtom = state<[number, Arg]>([0, undefined as any])
1032
+ const argAtom = removeTtl(state<[number, Arg]>([0, undefined as any]))
1011
1033
  const hasInitialValue = options?.initialValue !== undefined
1012
1034
  return writable(function(get) {
1013
1035
  ;(get as any).isFn = true
@@ -1100,16 +1122,16 @@ function makeResultFn<Arg, E, A>(
1100
1122
  readonly concurrent?: boolean | undefined
1101
1123
  }
1102
1124
  ) {
1103
- const argAtom = state<[number, Arg | Interrupt]>([0, undefined as any])
1125
+ const argAtom = removeTtl(state<[number, Arg | Interrupt]>([0, undefined as any]))
1104
1126
  const initialValue = options?.initialValue !== undefined
1105
1127
  ? Result.success<A, E>(options.initialValue)
1106
1128
  : Result.initial<A, E>()
1107
1129
  const fibersAtom = options?.concurrent
1108
- ? make((get) => {
1130
+ ? removeTtl(readable((get) => {
1109
1131
  const fibers = new Set<Fiber.RuntimeFiber<any, any>>()
1110
1132
  get.addFinalizer(() => fibers.forEach((f) => f.unsafeInterruptAsFork(FiberId.none)))
1111
1133
  return fibers
1112
- })
1134
+ }))
1113
1135
  : undefined
1114
1136
 
1115
1137
  function read(get: Context, runtime?: Runtime.Runtime<any>): Result.Result<A, E | NoSuchElementException> {
@@ -1202,12 +1224,10 @@ export const pull = <A, E>(
1202
1224
  readonly disableAccumulation?: boolean | undefined
1203
1225
  }
1204
1226
  ): Writable<PullResult<A, E>, void> => {
1205
- const pullSignal = state(0)
1206
- const pullAtom = readable(
1207
- makeRead(function(get) {
1208
- return makeStreamPullEffect(get, pullSignal, create, options)
1209
- })
1210
- )
1227
+ const pullSignal = removeTtl(state(0))
1228
+ const pullAtom = readable(makeRead(function(get) {
1229
+ return makeStreamPullEffect(get, pullSignal, create, options)
1230
+ }))
1211
1231
  return makeStreamPull(pullSignal, pullAtom)
1212
1232
  }
1213
1233
 
@@ -1452,26 +1472,6 @@ export const withLabel: {
1452
1472
  label: [name, new Error().stack?.split("\n")[5] ?? ""]
1453
1473
  }))
1454
1474
 
1455
- /**
1456
- * @since 1.0.0
1457
- * @category combinators
1458
- */
1459
- export const setIdleTTL: {
1460
- (duration: Duration.DurationInput): <A extends Atom<any>>(self: A) => A
1461
- <A extends Atom<any>>(self: A, duration: Duration.DurationInput): A
1462
- } = dual<
1463
- (duration: Duration.DurationInput) => <A extends Atom<any>>(self: A) => A,
1464
- <A extends Atom<any>>(self: A, duration: Duration.DurationInput) => A
1465
- >(2, (self, durationInput) => {
1466
- const duration = Duration.decode(durationInput)
1467
- const isFinite = Duration.isFinite(duration)
1468
- return Object.assign(Object.create(Object.getPrototypeOf(self)), {
1469
- ...self,
1470
- keepAlive: !isFinite,
1471
- idleTTL: isFinite ? Duration.toMillis(duration) : undefined
1472
- })
1473
- })
1474
-
1475
1475
  /**
1476
1476
  * @since 1.0.0
1477
1477
  * @category combinators
@@ -1593,12 +1593,12 @@ export const debounce: {
1593
1593
  */
1594
1594
  export const optimistic = <A>(self: Atom<A>): Writable<A, Atom<Result.Result<A, unknown>>> => {
1595
1595
  let counter = 0
1596
- const writeAtom = state(
1596
+ const writeAtom = removeTtl(state(
1597
1597
  [
1598
1598
  counter,
1599
1599
  undefined as any as Atom<Result.Result<A, unknown>>
1600
1600
  ] as const
1601
- )
1601
+ ))
1602
1602
  return writable(
1603
1603
  (get) => {
1604
1604
  let lastValue = get.once(self)
@@ -1714,7 +1714,7 @@ export const optimisticFn: {
1714
1714
  | ((set: (result: NoInfer<W>) => void) => AtomResultFn<OW, XA, XE>)
1715
1715
  }
1716
1716
  ): AtomResultFn<OW, XA, XE> => {
1717
- const transition = state<Result.Result<W, unknown>>(Result.initial())
1717
+ const transition = removeTtl(state<Result.Result<W, unknown>>(Result.initial()))
1718
1718
  return fn((arg: OW, get) => {
1719
1719
  let value = options.reducer(get(self), arg)
1720
1720
  if (Result.isResult(value)) {
@@ -376,6 +376,9 @@ class Node<A> {
376
376
 
377
377
  if (parent.children.indexOf(this) === -1) {
378
378
  parent.children.push(this)
379
+ if (parent.skipInvalidation) {
380
+ parent.skipInvalidation = false
381
+ }
379
382
  }
380
383
  }
381
384