@effect-app/vue 4.0.0-beta.330 → 4.0.0-beta.332

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 (47) hide show
  1. package/CHANGELOG.md +13 -0
  2. package/dist/atomQuery.d.ts +3 -3
  3. package/dist/atomQuery.d.ts.map +1 -1
  4. package/dist/atomQuery.js +5 -5
  5. package/dist/commander.d.ts +1 -1
  6. package/dist/commander.d.ts.map +1 -1
  7. package/dist/commander.js +2 -2
  8. package/dist/internal/tanstackQuery.js +4 -4
  9. package/dist/lib.d.ts +1 -1
  10. package/dist/lib.d.ts.map +1 -1
  11. package/dist/lib.js +3 -3
  12. package/dist/makeClient.d.ts +1 -1
  13. package/dist/makeClient.d.ts.map +1 -1
  14. package/dist/makeClient.js +2 -2
  15. package/dist/mutate.d.ts +2 -2
  16. package/dist/mutate.d.ts.map +1 -1
  17. package/dist/mutate.js +2 -2
  18. package/dist/query.d.ts +2 -2
  19. package/dist/query.d.ts.map +1 -1
  20. package/dist/query.js +3 -3
  21. package/dist/queryLifetime.d.ts +2 -2
  22. package/dist/queryLifetime.d.ts.map +1 -1
  23. package/dist/queryLifetime.js +2 -2
  24. package/dist/suspense.d.ts +1 -1
  25. package/dist/suspense.d.ts.map +1 -1
  26. package/dist/suspense.js +2 -2
  27. package/package.json +6 -6
  28. package/src/atomQuery.ts +4 -4
  29. package/src/commander.ts +1 -1
  30. package/src/internal/tanstackQuery.ts +3 -3
  31. package/src/lib.ts +2 -2
  32. package/src/makeClient.ts +2 -2
  33. package/src/mutate.ts +2 -2
  34. package/src/query.ts +2 -2
  35. package/src/queryLifetime.ts +2 -2
  36. package/src/suspense.ts +1 -1
  37. package/test/dependencyInvalidation.test.ts +1 -1
  38. package/test/dist/stubs.d.ts +5 -5
  39. package/test/dist/stubs.js +2 -2
  40. package/test/inactiveInvalidation.test.ts +2 -2
  41. package/test/interrupt-refetch-repro.test.ts +2 -2
  42. package/test/makeClient.test.ts +5 -7
  43. package/test/query-span.test.ts +1 -1
  44. package/test/queryOptions.test.ts +1 -1
  45. package/test/stubs.ts +3 -3
  46. package/test/suspense-regression.test.ts +4 -4
  47. package/test/suspense.test.ts +2 -2
package/src/atomQuery.ts CHANGED
@@ -24,14 +24,14 @@ import * as Cause from "effect/Cause"
24
24
  import * as Duration from "effect/Duration"
25
25
  import * as Equal from "effect/Equal"
26
26
  import * as Hash from "effect/Hash"
27
+ import { isHttpClientError } from "effect/http/HttpClientError"
27
28
  import type * as Layer from "effect/Layer"
29
+ import * as AsyncResult from "effect/reactivity/AsyncResult"
30
+ import * as Atom from "effect/reactivity/Atom"
31
+ import * as AtomRegistry from "effect/reactivity/AtomRegistry"
28
32
  import * as Ref from "effect/Ref"
29
33
  import * as Stream from "effect/Stream"
30
34
  import type * as Tracer from "effect/Tracer"
31
- import { isHttpClientError } from "effect/unstable/http/HttpClientError"
32
- import * as AsyncResult from "effect/unstable/reactivity/AsyncResult"
33
- import * as Atom from "effect/unstable/reactivity/Atom"
34
- import * as AtomRegistry from "effect/unstable/reactivity/AtomRegistry"
35
35
  import { clearQueryReadDependencies, getQueryReadDependencies, type QueryInvalidationMode, registerQueryInvalidationMode, setQueryReadDependencies } from "./dependencyMetadata.ts"
36
36
  import { reportRuntimeError } from "./lib.ts"
37
37
  import { beginLiveQueryFetch, endLiveQueryFetch, type LiveQueryOptions, registerLiveQuery } from "./liveQueryInvalidation.ts"
package/src/commander.ts CHANGED
@@ -17,8 +17,8 @@ import { flow } from "effect/Function"
17
17
  import * as MutableHashMap from "effect/MutableHashMap"
18
18
  import * as Predicate from "effect/Predicate"
19
19
  import { type Refinement } from "effect/Predicate"
20
+ import * as AsyncResult from "effect/reactivity/AsyncResult"
20
21
  import * as Stream from "effect/Stream"
21
- import * as AsyncResult from "effect/unstable/reactivity/AsyncResult"
22
22
  import { type FormatXMLElementFn, type PrimitiveType } from "intl-messageformat"
23
23
  import { computed, type ComputedRef, reactive, ref, toRaw } from "vue"
24
24
  import { Confirm } from "./confirm.ts"
@@ -8,11 +8,11 @@ import * as Effect from "effect-app/Effect"
8
8
  import * as Option from "effect-app/Option"
9
9
  import * as S from "effect-app/Schema"
10
10
  import * as Cause from "effect/Cause"
11
+ import { isHttpClientError } from "effect/http/HttpClientError"
12
+ import * as AsyncResult from "effect/reactivity/AsyncResult"
13
+ import * as Atom from "effect/reactivity/Atom"
11
14
  import * as Ref from "effect/Ref"
12
15
  import type * as Tracer from "effect/Tracer"
13
- import { isHttpClientError } from "effect/unstable/http/HttpClientError"
14
- import * as AsyncResult from "effect/unstable/reactivity/AsyncResult"
15
- import * as Atom from "effect/unstable/reactivity/Atom"
16
16
  import { computed, type MaybeRefOrGetter, shallowRef, toValue, watch, type WatchSource } from "vue"
17
17
  import { replaceEqualDeep } from "../atomQuery.ts"
18
18
  import { clearQueryReadDependencies, registerQueryInvalidationMode, setQueryReadDependencies } from "../dependencyMetadata.ts"
package/src/lib.ts CHANGED
@@ -3,11 +3,11 @@ import type { Req } from "effect-app/client"
3
3
  import type { RequestHandlerWithInput } from "effect-app/client/clientFor"
4
4
  import type * as Effect from "effect-app/Effect"
5
5
  import * as Cause from "effect/Cause"
6
- import { isHttpClientError } from "effect/unstable/http/HttpClientError"
6
+ import { isHttpClientError } from "effect/http/HttpClientError"
7
7
  import { isProxy, isReactive, isRef, type MaybeRefOrGetter, toRaw } from "vue"
8
8
  import { reportError } from "./errorReporter.ts"
9
9
 
10
- export * as AsyncResult from "effect/unstable/reactivity/AsyncResult"
10
+ export * as AsyncResult from "effect/reactivity/AsyncResult"
11
11
 
12
12
  const reportRuntimeError_ = reportError("Runtime")
13
13
 
package/src/makeClient.ts CHANGED
@@ -14,10 +14,10 @@ import * as Exit from "effect/Exit"
14
14
  import { type Fiber } from "effect/Fiber"
15
15
  import * as Hash from "effect/Hash"
16
16
  import type * as ManagedRuntime from "effect/ManagedRuntime"
17
+ import type * as AsyncResult from "effect/reactivity/AsyncResult"
18
+ import * as Reactivity from "effect/reactivity/Reactivity"
17
19
  import type * as Stream from "effect/Stream"
18
20
  import * as Struct from "effect/Struct"
19
- import type * as AsyncResult from "effect/unstable/reactivity/AsyncResult"
20
- import * as Reactivity from "effect/unstable/reactivity/Reactivity"
21
21
  import { type ComputedRef, effectScope, onBeforeUnmount, onScopeDispose, ref, type WatchSource } from "vue"
22
22
  import { type AtomClientRuntime, invalidateAndAwait, invalidateSoft, makeAtomClientRuntime } from "./atomQuery.ts"
23
23
  import { type Commander, CommanderStatic, type Progress } from "./commander.ts"
package/src/mutate.ts CHANGED
@@ -8,10 +8,10 @@ import * as Option from "effect-app/Option"
8
8
  import { isReadonlyArrayNonEmpty } from "effect/Array"
9
9
  import type * as Cause from "effect/Cause"
10
10
  import * as Exit from "effect/Exit"
11
+ import * as AsyncResult from "effect/reactivity/AsyncResult"
12
+ import type * as Reactivity from "effect/reactivity/Reactivity"
11
13
  import * as Ref from "effect/Ref"
12
14
  import * as Stream from "effect/Stream"
13
- import * as AsyncResult from "effect/unstable/reactivity/AsyncResult"
14
- import type * as Reactivity from "effect/unstable/reactivity/Reactivity"
15
15
  import { computed, type ComputedRef, shallowRef } from "vue"
16
16
  import { invalidateAndAwait, invalidateSoft } from "./atomQuery.ts"
17
17
  import { getDerivedInvalidationKeys, partitionInvalidationKeys } from "./dependencyMetadata.ts"
package/src/query.ts CHANGED
@@ -13,9 +13,9 @@ import * as Effect from "effect-app/Effect"
13
13
  import * as Option from "effect-app/Option"
14
14
  import type * as Cause from "effect/Cause"
15
15
  import * as Exit from "effect/Exit"
16
+ import * as AsyncResult from "effect/reactivity/AsyncResult"
17
+ import * as Atom from "effect/reactivity/Atom"
16
18
  import * as Stream from "effect/Stream"
17
- import * as AsyncResult from "effect/unstable/reactivity/AsyncResult"
18
- import * as Atom from "effect/unstable/reactivity/Atom"
19
19
  import { computed, type ComputedRef, effectScope, type MaybeRefOrGetter, onBeforeUnmount, onMounted, onScopeDispose, ref, toValue, type WatchSource } from "vue"
20
20
  import { type AtomClientRuntime, type AtomQueryOptions, awaitAtomResult, buildQueryFamily, buildStreamQueryFamily, disabledQueryAtom, isStaleResult, queryKeyForAtom, refreshAtomWithCurrentSpan, staleTimeMsOf, withQueryOptions } from "./atomQuery.ts"
21
21
  import type { QueryInvalidationMode } from "./dependencyMetadata.ts"
@@ -1,5 +1,5 @@
1
- import type * as AsyncResult from "effect/unstable/reactivity/AsyncResult"
2
- import * as Atom from "effect/unstable/reactivity/Atom"
1
+ import type * as AsyncResult from "effect/reactivity/AsyncResult"
2
+ import * as Atom from "effect/reactivity/Atom"
3
3
 
4
4
  /**
5
5
  * Per-query observer count + invalidation flag. Lives on the family atom so
package/src/suspense.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  import { Effect } from "effect-app"
2
- import * as AsyncResult from "effect/unstable/reactivity/AsyncResult"
2
+ import * as AsyncResult from "effect/reactivity/AsyncResult"
3
3
  import { computed, type ComputedRef, nextTick } from "vue"
4
4
 
5
5
  /**
@@ -9,9 +9,9 @@ import * as Deferred from "effect/Deferred"
9
9
  import * as Fiber from "effect/Fiber"
10
10
  import * as Layer from "effect/Layer"
11
11
  import * as ManagedRuntime from "effect/ManagedRuntime"
12
+ import * as Reactivity from "effect/reactivity/Reactivity"
12
13
  import * as Stream from "effect/Stream"
13
14
  import { TestClock } from "effect/testing"
14
- import * as Reactivity from "effect/unstable/reactivity/Reactivity"
15
15
  import { createApp, effectScope, ref } from "vue"
16
16
  import { awaitAtomResult, buildQueryFamily, invalidateAndAwait, makeAtomClientRuntime } from "../src/atomQuery.js"
17
17
  import { clearQueryReadDependencies, getDerivedInvalidationKeys, partitionInvalidationKeys, registerQueryInvalidationMode, setQueryReadDependencies } from "../src/dependencyMetadata.js"
@@ -23,7 +23,7 @@ declare const RequestContextMap_base: (new () => {
23
23
  readonly config: {};
24
24
  }) & {
25
25
  config: {};
26
- getConfig: (rpc: import("effect/unstable/rpc/Rpc").AnyWithProps) => RpcContextMap.GetContextConfig<{}>;
26
+ getConfig: (rpc: import("effect/rpc/Rpc").AnyWithProps) => RpcContextMap.GetContextConfig<{}>;
27
27
  get: <Key extends (never) & string>(key: Key) => import("effect-app/rpc/RpcMiddleware").RpcDynamic<Key, {}[Key]>;
28
28
  };
29
29
  export declare class RequestContextMap extends RequestContextMap_base {
@@ -1823,10 +1823,10 @@ declare const SomethingGetSomething2WithDependencies_base: S.Opaque<SomethingGet
1823
1823
  id: S.String;
1824
1824
  };
1825
1825
  readonly _tag: "GetSomething2";
1826
- readonly success: S.Codec<number, string, "dep-a", never>;
1826
+ readonly success: S.FiniteFromString;
1827
1827
  readonly error: S.String;
1828
1828
  readonly config: Omit<Omit<RpcContextMap.GetContextConfig<{}> & Record<string, any>, "invalidatesQueries"> & {
1829
- success: S.Codec<number, string, "dep-a", never>;
1829
+ success: S.FiniteFromString;
1830
1830
  error: S.String;
1831
1831
  } & Partial<{
1832
1832
  readonly invalidatesQueries: import("effect-app/client").InvalidationCallback<never, {
@@ -3070,10 +3070,10 @@ declare const SomethingElseGetSomething2WithDependencies_base: S.Opaque<Somethin
3070
3070
  id: S.String;
3071
3071
  };
3072
3072
  readonly _tag: "GetSomething2";
3073
- readonly success: S.Codec<number, string, "dep-a", never>;
3073
+ readonly success: S.FiniteFromString;
3074
3074
  readonly error: S.String;
3075
3075
  readonly config: Omit<Omit<RpcContextMap.GetContextConfig<{}> & Record<string, any>, "invalidatesQueries"> & {
3076
- success: S.Codec<number, string, "dep-a", never>;
3076
+ success: S.FiniteFromString;
3077
3077
  error: S.String;
3078
3078
  } & Partial<{
3079
3079
  readonly invalidatesQueries: import("effect-app/client").InvalidationCallback<never, {
@@ -6,8 +6,8 @@ import * as Option from "effect-app/Option";
6
6
  import { RpcContextMap } from "effect-app/rpc";
7
7
  import * as S from "effect-app/Schema";
8
8
  import * as Exit from "effect/Exit";
9
+ import * as FetchHttpClient from "effect/http/FetchHttpClient";
9
10
  import * as ManagedRuntime from "effect/ManagedRuntime";
10
- import * as FetchHttpClient from "effect/unstable/http/FetchHttpClient";
11
11
  import { createApp, ref } from "vue";
12
12
  import { Commander } from "../src/commander.js";
13
13
  import { I18n } from "../src/intl.js";
@@ -261,4 +261,4 @@ export const useClient = (options) => {
261
261
  };
262
262
  return { ...rawClient, clientFor };
263
263
  };
264
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3R1YnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zdHVicy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxPQUFPLEtBQUssSUFBSSxNQUFNLGdCQUFnQixDQUFBO0FBQ3RDLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxhQUFhLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQTtBQUNuRSxPQUFPLEtBQUssTUFBTSxNQUFNLG1CQUFtQixDQUFBO0FBQzNDLE9BQU8sS0FBSyxLQUFLLE1BQU0sa0JBQWtCLENBQUE7QUFDekMsT0FBTyxLQUFLLE1BQU0sTUFBTSxtQkFBbUIsQ0FBQTtBQUMzQyxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sZ0JBQWdCLENBQUE7QUFDOUMsT0FBTyxLQUFLLENBQUMsTUFBTSxtQkFBbUIsQ0FBQTtBQUN0QyxPQUFPLEtBQUssSUFBSSxNQUFNLGFBQWEsQ0FBQTtBQUNuQyxPQUFPLEtBQUssY0FBYyxNQUFNLHVCQUF1QixDQUFBO0FBQ3ZELE9BQU8sS0FBSyxlQUFlLE1BQU0sc0NBQXNDLENBQUE7QUFDdkUsT0FBTyxFQUFFLFNBQVMsRUFBRSxHQUFHLEVBQUUsTUFBTSxLQUFLLENBQUE7QUFDcEMsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLHFCQUFxQixDQUFBO0FBQy9DLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQTtBQUNyQyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sc0JBQXNCLENBQUE7QUFFakQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLDBCQUEwQixDQUFBO0FBQ3pELE9BQU8sS0FBSyxLQUFLLE1BQU0saUJBQWlCLENBQUE7QUFDeEMsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLHFCQUFxQixDQUFBO0FBRS9DLE1BQU0sY0FBYyxHQUFHLENBQUMsTUFBTSxHQUFVLEVBQUUsRUFBRSxFQUFFLENBQzVDLEtBQUssQ0FBQyxNQUFNLENBQ1YsS0FBSyxDQUFDLEtBQUssRUFDWCxNQUFN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
264
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3R1YnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zdHVicy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxPQUFPLEtBQUssSUFBSSxNQUFNLGdCQUFnQixDQUFBO0FBQ3RDLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxhQUFhLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQTtBQUNuRSxPQUFPLEtBQUssTUFBTSxNQUFNLG1CQUFtQixDQUFBO0FBQzNDLE9BQU8sS0FBSyxLQUFLLE1BQU0sa0JBQWtCLENBQUE7QUFDekMsT0FBTyxLQUFLLE1BQU0sTUFBTSxtQkFBbUIsQ0FBQTtBQUMzQyxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sZ0JBQWdCLENBQUE7QUFDOUMsT0FBTyxLQUFLLENBQUMsTUFBTSxtQkFBbUIsQ0FBQTtBQUN0QyxPQUFPLEtBQUssSUFBSSxNQUFNLGFBQWEsQ0FBQTtBQUNuQyxPQUFPLEtBQUssZUFBZSxNQUFNLDZCQUE2QixDQUFBO0FBQzlELE9BQU8sS0FBSyxjQUFjLE1BQU0sdUJBQXVCLENBQUE7QUFDdkQsT0FBTyxFQUFFLFNBQVMsRUFBRSxHQUFHLEVBQUUsTUFBTSxLQUFLLENBQUE7QUFDcEMsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLHFCQUFxQixDQUFBO0FBQy9DLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQTtBQUNyQyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sc0JBQXNCLENBQUE7QUFFakQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLDBCQUEwQixDQUFBO0FBQ3pELE9BQU8sS0FBSyxLQUFLLE1BQU0saUJBQWlCLENBQUE7QUFDeEMsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLHFCQUFxQixDQUFBO0FBRS9DLE1BQU0sY0FBYyxHQUFHLENBQUMsTUFBTSxHQUFVLEVBQUUsRUFBRSxFQUFFLENBQzVDLEtBQUssQ0FBQyxNQUFNLENBQ1YsS0FBSyxDQUFDLEtBQUssRUFDWCxNQUFN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
@@ -6,8 +6,8 @@ import * as Option from "effect-app/Option"
6
6
  import * as Latch from "effect/Latch"
7
7
  import * as Layer from "effect/Layer"
8
8
  import * as ManagedRuntime from "effect/ManagedRuntime"
9
- import * as AsyncResult from "effect/unstable/reactivity/AsyncResult"
10
- import * as Reactivity from "effect/unstable/reactivity/Reactivity"
9
+ import * as AsyncResult from "effect/reactivity/AsyncResult"
10
+ import * as Reactivity from "effect/reactivity/Reactivity"
11
11
  import { describe, expect, it } from "vitest"
12
12
  import { createApp, nextTick } from "vue"
13
13
  import { buildQueryFamily, invalidateAndAwait, makeAtomClientRuntime, withQueryOptions } from "../src/atomQuery.js"
@@ -27,8 +27,8 @@ import * as Fiber from "effect/Fiber"
27
27
  import * as Latch from "effect/Latch"
28
28
  import * as Layer from "effect/Layer"
29
29
  import * as ManagedRuntime from "effect/ManagedRuntime"
30
- import * as AsyncResult from "effect/unstable/reactivity/AsyncResult"
31
- import * as Reactivity from "effect/unstable/reactivity/Reactivity"
30
+ import * as AsyncResult from "effect/reactivity/AsyncResult"
31
+ import * as Reactivity from "effect/reactivity/Reactivity"
32
32
  import { createApp, nextTick } from "vue"
33
33
  import { awaitAtomResult, buildQueryFamily, invalidateAndAwait, makeAtomClientRuntime, queryFetchStates, withQueryOptions } from "../src/atomQuery.js"
34
34
  import { invalidateQueries } from "../src/mutate.js"
@@ -6,8 +6,8 @@ import * as Effect from "effect-app/Effect"
6
6
  import * as S from "effect-app/Schema"
7
7
  import * as Exit from "effect/Exit"
8
8
  import * as Fiber from "effect/Fiber"
9
+ import * as Atom from "effect/reactivity/Atom"
9
10
  import { TestClock } from "effect/testing"
10
- import * as Atom from "effect/unstable/reactivity/Atom"
11
11
  import type { CommandFromRequest } from "../src/makeClient.js"
12
12
  import { combineQueryInvalidators, invalidateQueries } from "../src/mutate.js"
13
13
  import { useAtomQuery, useAtomSuspense } from "../src/query.js"
@@ -352,7 +352,7 @@ it("additive atom query api type tests", () => {
352
352
  const mappedFamilyAtom = Atom.mapResult(familyAtom, (data) => data.toString())
353
353
  expectTypeOf<Atom.Success<typeof mappedFamilyAtom>>().toEqualTypeOf<string>()
354
354
  expectTypeOf(useAtomQuery(() => mappedFamilyAtom).data.value).toEqualTypeOf<string | undefined>()
355
- useAtomSuspense(() => mappedFamilyAtom).then((view) => {
355
+ void useAtomSuspense(() => mappedFamilyAtom).then((view) => {
356
356
  expectTypeOf(view[1].value).toEqualTypeOf<string>()
357
357
  return view
358
358
  })
@@ -368,7 +368,7 @@ it("additive atom query api type tests", () => {
368
368
  const selected = client.GetSomething2.queryNew({ id: "a" }, { select: (data) => data.toString() })
369
369
  expectTypeOf(selected.data.value).toEqualTypeOf<string | undefined>()
370
370
 
371
- client.GetSomething2.suspenseNew({ id: "a" }, { select: (data) => data.toString() }).then((view) => {
371
+ void client.GetSomething2.suspenseNew({ id: "a" }, { select: (data) => data.toString() }).then((view) => {
372
372
  expectTypeOf(view[1].value).toEqualTypeOf<string>()
373
373
  return view
374
374
  })
@@ -379,7 +379,7 @@ it("additive atom query api type tests", () => {
379
379
  const projectedAtom = projected.atom({ id: "a" })
380
380
  expectTypeOf<Atom.Success<typeof projectedAtom>>().toEqualTypeOf<string>()
381
381
  expectTypeOf(projected.queryNew({ id: "a" }).data.value).toEqualTypeOf<string | undefined>()
382
- projected.suspenseNew({ id: "a" }).then((view) => {
382
+ void projected.suspenseNew({ id: "a" }).then((view) => {
383
383
  expectTypeOf(view[1].value).toEqualTypeOf<string>()
384
384
  return view
385
385
  })
@@ -387,7 +387,7 @@ it("additive atom query api type tests", () => {
387
387
  const helperFamilyAtom = client.helpers.getSomething2QueryFamily({ id: "a" })
388
388
  expectTypeOf<Atom.Success<typeof helperFamilyAtom>>().toEqualTypeOf<number>()
389
389
  expectTypeOf(client.helpers.getSomething2QueryNew({ id: "a" }).data.value).toEqualTypeOf<number | undefined>()
390
- client.helpers.getSomething2SuspenseQueryNew({ id: "a" }).then((view) => {
390
+ void client.helpers.getSomething2SuspenseQueryNew({ id: "a" }).then((view) => {
391
391
  expectTypeOf(view[1].value).toEqualTypeOf<number>()
392
392
  return view
393
393
  })
@@ -423,9 +423,7 @@ it.skip("works", () => {
423
423
  // @ts-expect-error query request does not match Command.wrap mutation signature
424
424
  const e000 = Command.wrap(client.GetSomething2WithDependencies)
425
425
  const e00 = client.GetSomething2WithDependencies.request(null as any)
426
- // @ts-expect-error dependencies required that are not provided
427
426
  const e1 = client.GetSomething2WithDependencies.suspense(null as any)
428
- // @ts-expect-error dependencies required that are not provided
429
427
  const e2 = client.GetSomething2WithDependencies.query(null as any)
430
428
  // @ts-expect-error query requests no longer expose command helpers
431
429
  const f0 = client.GetSomething2WithDependencies.fn(null as any)
@@ -6,7 +6,7 @@ import * as Effect from "effect-app/Effect"
6
6
  import * as Layer from "effect-app/Layer"
7
7
  import * as Option from "effect-app/Option"
8
8
  import type * as Cause from "effect/Cause"
9
- import * as AsyncResult from "effect/unstable/reactivity/AsyncResult"
9
+ import * as AsyncResult from "effect/reactivity/AsyncResult"
10
10
  import { createApp, effectScope, nextTick } from "vue"
11
11
  import { buildQueryFamily, makeAtomClientRuntime } from "../src/atomQuery.js"
12
12
  import { makeTanstackQuery } from "../src/internal/tanstackQuery.js"
@@ -1,7 +1,7 @@
1
1
  import { expect, it } from "@effect/vitest"
2
2
  import * as Cause from "effect/Cause"
3
3
  import * as Option from "effect/Option"
4
- import * as AsyncResult from "effect/unstable/reactivity/AsyncResult"
4
+ import * as AsyncResult from "effect/reactivity/AsyncResult"
5
5
  import { shallowRef } from "vue"
6
6
  import { withDataFallback } from "../src/query.js"
7
7
 
package/test/stubs.ts CHANGED
@@ -8,8 +8,8 @@ import * as Option from "effect-app/Option"
8
8
  import { RpcContextMap } from "effect-app/rpc"
9
9
  import * as S from "effect-app/Schema"
10
10
  import * as Exit from "effect/Exit"
11
+ import * as FetchHttpClient from "effect/http/FetchHttpClient"
11
12
  import * as ManagedRuntime from "effect/ManagedRuntime"
12
- import * as FetchHttpClient from "effect/unstable/http/FetchHttpClient"
13
13
  import { createApp, ref } from "vue"
14
14
  import { Commander } from "../src/commander.js"
15
15
  import { I18n } from "../src/intl.js"
@@ -146,7 +146,7 @@ class SomethingGetSomething2WithDependencies
146
146
  id: S.String
147
147
  }, {
148
148
  // this is intentilally fake, to simulate a codec that requires a dependency
149
- success: S.FiniteFromString as S.Codec<number, string, "dep-a">,
149
+ success: S.FiniteFromString,
150
150
  error: S.String
151
151
  })
152
152
  {}
@@ -262,7 +262,7 @@ class SomethingElseGetSomething2WithDependencies
262
262
  extends SomethingElseQuery<SomethingElseGetSomething2WithDependencies>()("GetSomething2", {
263
263
  id: S.String
264
264
  }, {
265
- success: S.FiniteFromString as S.Codec<number, string, "dep-a">,
265
+ success: S.FiniteFromString,
266
266
  error: S.String
267
267
  })
268
268
  {}
@@ -6,7 +6,7 @@ import * as Effect from "effect-app/Effect"
6
6
  import * as Option from "effect-app/Option"
7
7
  import * as Layer from "effect/Layer"
8
8
  import * as ManagedRuntime from "effect/ManagedRuntime"
9
- import * as AsyncResult from "effect/unstable/reactivity/AsyncResult"
9
+ import * as AsyncResult from "effect/reactivity/AsyncResult"
10
10
  import { createApp, effectScope, nextTick, ref } from "vue"
11
11
  import { makeAtomClientRuntime } from "../src/atomQuery.js"
12
12
  import { makeTanstackQuery } from "../src/internal/tanstackQuery.js"
@@ -37,9 +37,9 @@ it("makeClient .suspense(): observer re-pointed mid-flight -> resolves (seeded)
37
37
  const getRuntime = () => Context.empty()
38
38
  const qi = new QueryImpl(
39
39
  getRuntime,
40
- (() => {
40
+ () => {
41
41
  throw new Error("atom runtime is unused by this legacy TanStack regression")
42
- }) as any,
42
+ },
43
43
  makeTanstackQuery(getRuntime, queryClient)
44
44
  )
45
45
 
@@ -115,7 +115,7 @@ it("atom engine .suspense(): reactive arg switched to an uncached input serves t
115
115
  app.provide(registryKey, defaultRegistry)
116
116
  app.mount(host)
117
117
 
118
- const [resultRef, latestRef] = (await promise) as any
118
+ const [resultRef, latestRef] = await promise
119
119
  expect(latestRef.value).toBe("DATA_A")
120
120
 
121
121
  // Re-point to an input whose atom has never fetched -> Initial, no previousSuccess.
@@ -1,7 +1,7 @@
1
1
  import { defaultRegistry, registryKey } from "@effect/atom-vue"
2
2
  import { Effect, Option } from "effect-app"
3
- import * as AsyncResult from "effect/unstable/reactivity/AsyncResult"
4
- import * as Atom from "effect/unstable/reactivity/Atom"
3
+ import * as AsyncResult from "effect/reactivity/AsyncResult"
4
+ import * as Atom from "effect/reactivity/Atom"
5
5
  import { computed, createApp, nextTick, ref } from "vue"
6
6
  import { withQueryOptions } from "../src/atomQuery.js"
7
7
  import { useAtomQuery, useAtomSuspense } from "../src/query.js"