@bigmi/react 0.8.1 → 0.9.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 (52) hide show
  1. package/CHANGELOG.md +23 -0
  2. package/README.md +2 -2
  3. package/dist/cjs/context.d.ts +0 -1
  4. package/dist/cjs/context.js.map +1 -1
  5. package/dist/cjs/errors/context.d.ts +0 -1
  6. package/dist/cjs/hooks/useAccount.d.ts +0 -1
  7. package/dist/cjs/hooks/useAccount.js.map +1 -1
  8. package/dist/cjs/hooks/useConfig.d.ts +0 -1
  9. package/dist/cjs/hooks/useConfig.js.map +1 -1
  10. package/dist/cjs/hooks/useConnect.d.ts +0 -1
  11. package/dist/cjs/hooks/useConnect.js.map +1 -1
  12. package/dist/cjs/hooks/useConnectors.d.ts +0 -1
  13. package/dist/cjs/hooks/useConnectors.js.map +1 -1
  14. package/dist/cjs/hooks/useReconnect.d.ts +0 -1
  15. package/dist/cjs/hooks/useReconnect.js.map +1 -1
  16. package/dist/cjs/hooks/useSyncExternalStoreWithTracked.js.map +1 -1
  17. package/dist/cjs/hydrate.d.ts +0 -1
  18. package/dist/cjs/hydrate.js.map +1 -1
  19. package/dist/cjs/types.d.ts +0 -1
  20. package/dist/cjs/utils/query.d.ts +0 -1
  21. package/dist/cjs/version.d.ts +1 -1
  22. package/dist/cjs/version.js +1 -1
  23. package/dist/cjs/version.js.map +1 -1
  24. package/dist/esm/context.d.ts +0 -1
  25. package/dist/esm/context.d.ts.map +1 -1
  26. package/dist/esm/errors/context.d.ts +0 -1
  27. package/dist/esm/errors/context.d.ts.map +1 -1
  28. package/dist/esm/hooks/useAccount.d.ts +0 -1
  29. package/dist/esm/hooks/useAccount.d.ts.map +1 -1
  30. package/dist/esm/hooks/useConfig.d.ts +0 -1
  31. package/dist/esm/hooks/useConfig.d.ts.map +1 -1
  32. package/dist/esm/hooks/useConnect.d.ts +0 -1
  33. package/dist/esm/hooks/useConnect.d.ts.map +1 -1
  34. package/dist/esm/hooks/useConnectors.d.ts +0 -1
  35. package/dist/esm/hooks/useConnectors.d.ts.map +1 -1
  36. package/dist/esm/hooks/useReconnect.d.ts +0 -1
  37. package/dist/esm/hooks/useReconnect.d.ts.map +1 -1
  38. package/dist/esm/hooks/useSyncExternalStoreWithTracked.d.ts.map +1 -1
  39. package/dist/esm/hooks/useSyncExternalStoreWithTracked.js.map +1 -1
  40. package/dist/esm/hydrate.d.ts +0 -1
  41. package/dist/esm/hydrate.d.ts.map +1 -1
  42. package/dist/esm/hydrate.js.map +1 -1
  43. package/dist/esm/types.d.ts +0 -1
  44. package/dist/esm/types.d.ts.map +1 -1
  45. package/dist/esm/utils/query.d.ts +0 -1
  46. package/dist/esm/utils/query.d.ts.map +1 -1
  47. package/dist/esm/version.d.ts +1 -1
  48. package/dist/esm/version.d.ts.map +1 -1
  49. package/dist/esm/version.js +1 -1
  50. package/dist/esm/version.js.map +1 -1
  51. package/package.json +3 -3
  52. package/src/version.ts +1 -1
package/CHANGELOG.md CHANGED
@@ -1,5 +1,28 @@
1
1
  # @bigmi/react
2
2
 
3
+ ## 0.9.0
4
+
5
+ ### Minor Changes
6
+
7
+ - [#62](https://github.com/lifinance/bigmi/pull/62) [`3569fc2`](https://github.com/lifinance/bigmi/commit/3569fc295a7877daf5b47989edecde85b2c38ea8) Thanks [@chybisov](https://github.com/chybisov)! - chore: migrate the toolchain to TypeScript 7
8
+
9
+ Bump the `typescript` devDependency from `6.x` to `7.x` (the native compiler) across the workspace, and bump `tsdown` `0.22.3` → `0.22.7` so its peer range accepts `typescript@^7`.
10
+
11
+ This is a build-time-only change with **no integration impact**: `typescript` is a devDependency (never a peer/runtime dependency), so consumers' own TypeScript version is untouched, and `.d.ts`/`.js` emit is handled by tsdown (Rolldown + OXC isolated declarations), not `tsc`. `tsc --noEmit` type-checks cleanly on TS 7 with zero source changes, and the public type surface is semantically identical (a rebuild only reformats declaration whitespace/comments via the newer `rolldown-plugin-dts` printer). Safe to ship as a minor.
12
+
13
+ ### Patch Changes
14
+
15
+ - Updated dependencies [[`3569fc2`](https://github.com/lifinance/bigmi/commit/3569fc295a7877daf5b47989edecde85b2c38ea8)]:
16
+ - @bigmi/core@0.9.0
17
+ - @bigmi/client@0.10.0
18
+
19
+ ## 0.8.2
20
+
21
+ ### Patch Changes
22
+
23
+ - Updated dependencies [[`d16c7bf`](https://github.com/lifinance/bigmi/commit/d16c7bf4b420185a6de05739b34fea14e76fb1ff), [`3300f33`](https://github.com/lifinance/bigmi/commit/3300f33d2ac7b903e712a35bad29b1c31701c7a4)]:
24
+ - @bigmi/client@0.9.0
25
+
3
26
  ## 0.8.1
4
27
 
5
28
  ### Patch Changes
package/README.md CHANGED
@@ -110,12 +110,12 @@ Simple bigmi setup with a react app:
110
110
 
111
111
  import { bitcoin, http, createClient } from '@bigmi/core'
112
112
  import { BigmiProvider, createConfig } from '@bigmi/react'
113
- import { binance, xverse, phantom } from '@bigmi/client'
113
+ import { binance, xverse } from '@bigmi/client'
114
114
 
115
115
  // Create bigmi config object
116
116
  const config = createConfig({
117
117
  chains: [bitcoin],
118
- connectors: [binance(), xverse(), phantom()],
118
+ connectors: [binance(), xverse()],
119
119
  client: ({ chain }) => createClient({ chain, transport: http() }),
120
120
  ssr: true // If using Next.js or SSR
121
121
  })
@@ -1,7 +1,6 @@
1
1
  import { ResolvedRegister } from "./types.js";
2
2
  import { State } from "@bigmi/client";
3
3
  import { Context, PropsWithChildren, ReactElement } from "react";
4
-
5
4
  //#region src/context.d.ts
6
5
  declare const BigmiContext: Context<ResolvedRegister["config"] | undefined>;
7
6
  type BigmiProviderProps = {
@@ -1 +1 @@
1
- {"version":3,"file":"context.js","names":["Hydrate"],"sources":["../../src/context.ts"],"sourcesContent":["'use client'\nimport type { State } from '@bigmi/client'\nimport {\n type Context,\n createContext,\n createElement,\n type PropsWithChildren,\n type ReactElement,\n} from 'react'\nimport { Hydrate } from './hydrate.js'\nimport type { ResolvedRegister } from './types.js'\n\nexport const BigmiContext: Context<ResolvedRegister['config'] | undefined> =\n createContext<ResolvedRegister['config'] | undefined>(undefined)\n\nexport type BigmiProviderProps = {\n config: ResolvedRegister['config']\n initialState?: State | undefined\n reconnectOnMount?: boolean | undefined\n}\n\nexport function BigmiProvider(\n parameters: PropsWithChildren<BigmiProviderProps>\n): ReactElement {\n const { children, config } = parameters\n\n const props = { value: config }\n return createElement(\n Hydrate,\n parameters,\n createElement(BigmiContext.Provider, props, children)\n )\n}\n"],"mappings":";;;;;AAYA,MAAa,gBAAA,GAAA,MAAA,eAC2C,KAAA,CAAS;AAQjE,SAAgB,cACd,YACc;CACd,MAAM,EAAE,UAAU,WAAW;CAE7B,MAAM,QAAQ,EAAE,OAAO,OAAO;CAC9B,QAAA,GAAA,MAAA,eACEA,gBAAAA,SACA,aAAA,GAAA,MAAA,eACc,aAAa,UAAU,OAAO,QAAQ,CACtD;AACF"}
1
+ {"version":3,"file":"context.js","names":["Hydrate"],"sources":["../../src/context.ts"],"sourcesContent":["'use client'\nimport type { State } from '@bigmi/client'\nimport {\n type Context,\n createContext,\n createElement,\n type PropsWithChildren,\n type ReactElement,\n} from 'react'\nimport { Hydrate } from './hydrate.js'\nimport type { ResolvedRegister } from './types.js'\n\nexport const BigmiContext: Context<ResolvedRegister['config'] | undefined> =\n createContext<ResolvedRegister['config'] | undefined>(undefined)\n\nexport type BigmiProviderProps = {\n config: ResolvedRegister['config']\n initialState?: State | undefined\n reconnectOnMount?: boolean | undefined\n}\n\nexport function BigmiProvider(\n parameters: PropsWithChildren<BigmiProviderProps>\n): ReactElement {\n const { children, config } = parameters\n\n const props = { value: config }\n return createElement(\n Hydrate,\n parameters,\n createElement(BigmiContext.Provider, props, children)\n )\n}\n"],"mappings":";;;;;AAYA,MAAa,gBAAA,GAAA,MAAA,cAAA,CAC2C,KAAA,CAAS;AAQjE,SAAgB,cACd,YACc;CACd,MAAM,EAAE,UAAU,WAAW;CAE7B,MAAM,QAAQ,EAAE,OAAO,OAAO;CAC9B,QAAA,GAAA,MAAA,cAAA,CACEA,gBAAAA,SACA,aAAA,GAAA,MAAA,cAAA,CACc,aAAa,UAAU,OAAO,QAAQ,CACtD;AACF"}
@@ -1,5 +1,4 @@
1
1
  import { BaseError } from "@bigmi/core";
2
-
3
2
  //#region src/errors/context.d.ts
4
3
  type BigmiProviderNotFoundErrorType = BigmiProviderNotFoundError & {
5
4
  name: "BigmiProviderNotFoundError";
@@ -1,7 +1,6 @@
1
1
  import { ResolvedRegister } from "../types.js";
2
2
  import { ConfigParameter } from "./useConfig.js";
3
3
  import { Config, GetAccountReturnType } from "@bigmi/client";
4
-
5
4
  //#region src/hooks/useAccount.d.ts
6
5
  type UseAccountParameters<config extends Config = Config> = ConfigParameter<config>;
7
6
  type UseAccountReturnType<config extends Config = Config> = GetAccountReturnType<config>;
@@ -1 +1 @@
1
- {"version":3,"file":"useAccount.js","names":["useConfig","useSyncExternalStoreWithTracked"],"sources":["../../../src/hooks/useAccount.ts"],"sourcesContent":["'use client'\n\nimport {\n type Config,\n type GetAccountReturnType,\n getAccount,\n watchAccount,\n} from '@bigmi/client'\n\nimport type { ResolvedRegister } from '../types.js'\nimport { type ConfigParameter, useConfig } from './useConfig.js'\nimport { useSyncExternalStoreWithTracked } from './useSyncExternalStoreWithTracked.js'\n\nexport type UseAccountParameters<config extends Config = Config> =\n ConfigParameter<config>\n\nexport type UseAccountReturnType<config extends Config = Config> =\n GetAccountReturnType<config>\n\nconst DISCONNECTED_ACCOUNT: GetAccountReturnType = {\n account: undefined,\n accounts: undefined,\n chain: undefined,\n chainId: undefined,\n connector: undefined,\n isConnected: false,\n isConnecting: false,\n isDisconnected: true,\n isReconnecting: false,\n status: 'disconnected',\n}\n\nexport function useAccount<C extends Config = ResolvedRegister['config']>(\n parameters: UseAccountParameters<C> = {}\n): UseAccountReturnType<C> {\n const config = useConfig(parameters)\n\n return useSyncExternalStoreWithTracked(\n (onChange) => watchAccount(config, { onChange }),\n () => getAccount(config),\n () => DISCONNECTED_ACCOUNT as UseAccountReturnType<C>\n )\n}\n"],"mappings":";;;;;;AAmBA,MAAM,uBAA6C;CACjD,SAAS,KAAA;CACT,UAAU,KAAA;CACV,OAAO,KAAA;CACP,SAAS,KAAA;CACT,WAAW,KAAA;CACX,aAAa;CACb,cAAc;CACd,gBAAgB;CAChB,gBAAgB;CAChB,QAAQ;AACV;AAEA,SAAgB,WACd,aAAsC,CAAC,GACd;CACzB,MAAM,SAASA,wBAAAA,UAAU,UAAU;CAEnC,OAAOC,8CAAAA,iCACJ,cAAA,GAAA,cAAA,cAA0B,QAAQ,EAAE,SAAS,CAAC,UAAA,GAAA,cAAA,YAC9B,MAAM,SACjB,oBACR;AACF"}
1
+ {"version":3,"file":"useAccount.js","names":["useConfig","useSyncExternalStoreWithTracked"],"sources":["../../../src/hooks/useAccount.ts"],"sourcesContent":["'use client'\n\nimport {\n type Config,\n type GetAccountReturnType,\n getAccount,\n watchAccount,\n} from '@bigmi/client'\n\nimport type { ResolvedRegister } from '../types.js'\nimport { type ConfigParameter, useConfig } from './useConfig.js'\nimport { useSyncExternalStoreWithTracked } from './useSyncExternalStoreWithTracked.js'\n\nexport type UseAccountParameters<config extends Config = Config> =\n ConfigParameter<config>\n\nexport type UseAccountReturnType<config extends Config = Config> =\n GetAccountReturnType<config>\n\nconst DISCONNECTED_ACCOUNT: GetAccountReturnType = {\n account: undefined,\n accounts: undefined,\n chain: undefined,\n chainId: undefined,\n connector: undefined,\n isConnected: false,\n isConnecting: false,\n isDisconnected: true,\n isReconnecting: false,\n status: 'disconnected',\n}\n\nexport function useAccount<C extends Config = ResolvedRegister['config']>(\n parameters: UseAccountParameters<C> = {}\n): UseAccountReturnType<C> {\n const config = useConfig(parameters)\n\n return useSyncExternalStoreWithTracked(\n (onChange) => watchAccount(config, { onChange }),\n () => getAccount(config),\n () => DISCONNECTED_ACCOUNT as UseAccountReturnType<C>\n )\n}\n"],"mappings":";;;;;;AAmBA,MAAM,uBAA6C;CACjD,SAAS,KAAA;CACT,UAAU,KAAA;CACV,OAAO,KAAA;CACP,SAAS,KAAA;CACT,WAAW,KAAA;CACX,aAAa;CACb,cAAc;CACd,gBAAgB;CAChB,gBAAgB;CAChB,QAAQ;AACV;AAEA,SAAgB,WACd,aAAsC,CAAC,GACd;CACzB,MAAM,SAASA,wBAAAA,UAAU,UAAU;CAEnC,OAAOC,8CAAAA,iCACJ,cAAA,GAAA,cAAA,aAAA,CAA0B,QAAQ,EAAE,SAAS,CAAC,UAAA,GAAA,cAAA,WAAA,CAC9B,MAAM,SACjB,oBACR;AACF"}
@@ -1,6 +1,5 @@
1
1
  import { ResolvedRegister } from "../types.js";
2
2
  import { Config } from "@bigmi/client";
3
-
4
3
  //#region src/hooks/useConfig.d.ts
5
4
  type ConfigParameter<config extends Config = Config> = {
6
5
  config?: Config | config | undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"useConfig.js","names":["BigmiContext","BigmiProviderNotFoundError"],"sources":["../../../src/hooks/useConfig.ts"],"sourcesContent":["'use client'\n\nimport type { Config } from '@bigmi/client'\nimport { useContext } from 'react'\nimport { BigmiContext } from '../context.js'\nimport { BigmiProviderNotFoundError } from '../errors/context.js'\nimport type { ResolvedRegister } from '../types.js'\n\nexport type ConfigParameter<config extends Config = Config> = {\n config?: Config | config | undefined\n}\n\nexport type UseConfigParameters<config extends Config = Config> =\n ConfigParameter<config>\n\nexport type UseConfigReturnType<config extends Config = Config> = config\n\nexport function useConfig<C extends Config = ResolvedRegister['config']>(\n parameters: UseConfigParameters<C> = {}\n): UseConfigReturnType<C> {\n // biome-ignore lint/correctness/useHookAtTopLevel: part of the hook\n const config = parameters.config ?? useContext(BigmiContext)\n if (!config) {\n throw new BigmiProviderNotFoundError()\n }\n return config as UseConfigReturnType<C>\n}\n"],"mappings":";;;;;;AAiBA,SAAgB,UACd,aAAqC,CAAC,GACd;CAExB,MAAM,SAAS,WAAW,WAAA,GAAA,MAAA,YAAqBA,gBAAAA,YAAY;CAC3D,IAAI,CAAC,QACH,MAAM,IAAIC,uBAAAA,2BAA2B;CAEvC,OAAO;AACT"}
1
+ {"version":3,"file":"useConfig.js","names":["BigmiContext","BigmiProviderNotFoundError"],"sources":["../../../src/hooks/useConfig.ts"],"sourcesContent":["'use client'\n\nimport type { Config } from '@bigmi/client'\nimport { useContext } from 'react'\nimport { BigmiContext } from '../context.js'\nimport { BigmiProviderNotFoundError } from '../errors/context.js'\nimport type { ResolvedRegister } from '../types.js'\n\nexport type ConfigParameter<config extends Config = Config> = {\n config?: Config | config | undefined\n}\n\nexport type UseConfigParameters<config extends Config = Config> =\n ConfigParameter<config>\n\nexport type UseConfigReturnType<config extends Config = Config> = config\n\nexport function useConfig<C extends Config = ResolvedRegister['config']>(\n parameters: UseConfigParameters<C> = {}\n): UseConfigReturnType<C> {\n // biome-ignore lint/correctness/useHookAtTopLevel: part of the hook\n const config = parameters.config ?? useContext(BigmiContext)\n if (!config) {\n throw new BigmiProviderNotFoundError()\n }\n return config as UseConfigReturnType<C>\n}\n"],"mappings":";;;;;;AAiBA,SAAgB,UACd,aAAqC,CAAC,GACd;CAExB,MAAM,SAAS,WAAW,WAAA,GAAA,MAAA,WAAA,CAAqBA,gBAAAA,YAAY;CAC3D,IAAI,CAAC,QACH,MAAM,IAAIC,uBAAAA,2BAA2B;CAEvC,OAAO;AACT"}
@@ -4,7 +4,6 @@ import { UseMutationParameters, UseMutationReturnType } from "../utils/query.js"
4
4
  import { UseConnectorsReturnType } from "./useConnectors.js";
5
5
  import { Config, ConnectData, ConnectErrorType, ConnectMutate, ConnectMutateAsync, ConnectVariables } from "@bigmi/client";
6
6
  import { Compute } from "@bigmi/core";
7
-
8
7
  //#region src/hooks/useConnect.d.ts
9
8
  type UseConnectParameters<config extends Config = Config, context = unknown> = Compute<ConfigParameter<config> & {
10
9
  mutation?: UseMutationParameters<ConnectData<config>, ConnectErrorType, ConnectVariables<config, config["connectors"][number]>, context> | undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"useConnect.js","names":["useConfig","useConnectors"],"sources":["../../../src/hooks/useConnect.ts"],"sourcesContent":["'use client'\n\nimport {\n type Config,\n type ConnectData,\n type ConnectErrorType,\n type ConnectMutate,\n type ConnectMutateAsync,\n type ConnectVariables,\n connectMutationOptions,\n} from '@bigmi/client'\nimport type { Compute } from '@bigmi/core'\nimport { useMutation } from '@tanstack/react-query'\nimport { useEffect } from 'react'\nimport type { ResolvedRegister } from '../types.js'\nimport type {\n UseMutationParameters,\n UseMutationReturnType,\n} from '../utils/query.js'\nimport { type ConfigParameter, useConfig } from './useConfig.js'\nimport { type UseConnectorsReturnType, useConnectors } from './useConnectors.js'\n\nexport type UseConnectParameters<\n config extends Config = Config,\n context = unknown,\n> = Compute<\n ConfigParameter<config> & {\n mutation?:\n | UseMutationParameters<\n ConnectData<config>,\n ConnectErrorType,\n ConnectVariables<config, config['connectors'][number]>,\n context\n >\n | undefined\n }\n>\n\nexport type UseConnectReturnType<\n config extends Config = Config,\n context = unknown,\n> = Compute<\n UseMutationReturnType<\n ConnectData<config>,\n ConnectErrorType,\n ConnectVariables<config, config['connectors'][number]>,\n context\n > & {\n connect: ConnectMutate<config, context>\n connectAsync: ConnectMutateAsync<config, context>\n connectors: Compute<UseConnectorsReturnType> | config['connectors']\n }\n>\n\nexport function useConnect<\n config extends Config = ResolvedRegister['config'],\n context = unknown,\n>(\n parameters: UseConnectParameters<config, context> = {}\n): UseConnectReturnType<config, context> {\n const { mutation } = parameters\n\n const config = useConfig(parameters)\n\n const mutationOptions = connectMutationOptions(config)\n const { mutate, mutateAsync, reset, ...result } = useMutation({\n ...mutation,\n ...mutationOptions,\n })\n\n // Reset mutation back to an idle state when the connector disconnects.\n useEffect(() => {\n return config.subscribe(\n ({ status }) => status,\n (status, previousStatus) => {\n if (previousStatus === 'connected' && status === 'disconnected') {\n reset()\n }\n }\n )\n }, [config, reset])\n\n type Return = UseConnectReturnType<config, context>\n return {\n ...(result as Return),\n connect: mutate as Return['connect'],\n connectAsync: mutateAsync as Return['connectAsync'],\n connectors: useConnectors({ config }),\n }\n}\n"],"mappings":";;;;;;;;AAsDA,SAAgB,WAId,aAAoD,CAAC,GACd;CACvC,MAAM,EAAE,aAAa;CAErB,MAAM,SAASA,wBAAAA,UAAU,UAAU;CAEnC,MAAM,mBAAA,GAAA,cAAA,wBAAyC,MAAM;CACrD,MAAM,EAAE,QAAQ,aAAa,OAAO,GAAG,YAAA,GAAA,sBAAA,aAAuB;EAC5D,GAAG;EACH,GAAG;CACL,CAAC;CAGD,CAAA,GAAA,MAAA,iBAAgB;EACd,OAAO,OAAO,WACX,EAAE,aAAa,SACf,QAAQ,mBAAmB;GAC1B,IAAI,mBAAmB,eAAe,WAAW,gBAC/C,MAAM;EAEV,CACF;CACF,GAAG,CAAC,QAAQ,KAAK,CAAC;CAGlB,OAAO;EACL,GAAI;EACJ,SAAS;EACT,cAAc;EACd,YAAYC,4BAAAA,cAAc,EAAE,OAAO,CAAC;CACtC;AACF"}
1
+ {"version":3,"file":"useConnect.js","names":["useConfig","useConnectors"],"sources":["../../../src/hooks/useConnect.ts"],"sourcesContent":["'use client'\n\nimport {\n type Config,\n type ConnectData,\n type ConnectErrorType,\n type ConnectMutate,\n type ConnectMutateAsync,\n type ConnectVariables,\n connectMutationOptions,\n} from '@bigmi/client'\nimport type { Compute } from '@bigmi/core'\nimport { useMutation } from '@tanstack/react-query'\nimport { useEffect } from 'react'\nimport type { ResolvedRegister } from '../types.js'\nimport type {\n UseMutationParameters,\n UseMutationReturnType,\n} from '../utils/query.js'\nimport { type ConfigParameter, useConfig } from './useConfig.js'\nimport { type UseConnectorsReturnType, useConnectors } from './useConnectors.js'\n\nexport type UseConnectParameters<\n config extends Config = Config,\n context = unknown,\n> = Compute<\n ConfigParameter<config> & {\n mutation?:\n | UseMutationParameters<\n ConnectData<config>,\n ConnectErrorType,\n ConnectVariables<config, config['connectors'][number]>,\n context\n >\n | undefined\n }\n>\n\nexport type UseConnectReturnType<\n config extends Config = Config,\n context = unknown,\n> = Compute<\n UseMutationReturnType<\n ConnectData<config>,\n ConnectErrorType,\n ConnectVariables<config, config['connectors'][number]>,\n context\n > & {\n connect: ConnectMutate<config, context>\n connectAsync: ConnectMutateAsync<config, context>\n connectors: Compute<UseConnectorsReturnType> | config['connectors']\n }\n>\n\nexport function useConnect<\n config extends Config = ResolvedRegister['config'],\n context = unknown,\n>(\n parameters: UseConnectParameters<config, context> = {}\n): UseConnectReturnType<config, context> {\n const { mutation } = parameters\n\n const config = useConfig(parameters)\n\n const mutationOptions = connectMutationOptions(config)\n const { mutate, mutateAsync, reset, ...result } = useMutation({\n ...mutation,\n ...mutationOptions,\n })\n\n // Reset mutation back to an idle state when the connector disconnects.\n useEffect(() => {\n return config.subscribe(\n ({ status }) => status,\n (status, previousStatus) => {\n if (previousStatus === 'connected' && status === 'disconnected') {\n reset()\n }\n }\n )\n }, [config, reset])\n\n type Return = UseConnectReturnType<config, context>\n return {\n ...(result as Return),\n connect: mutate as Return['connect'],\n connectAsync: mutateAsync as Return['connectAsync'],\n connectors: useConnectors({ config }),\n }\n}\n"],"mappings":";;;;;;;;AAsDA,SAAgB,WAId,aAAoD,CAAC,GACd;CACvC,MAAM,EAAE,aAAa;CAErB,MAAM,SAASA,wBAAAA,UAAU,UAAU;CAEnC,MAAM,mBAAA,GAAA,cAAA,uBAAA,CAAyC,MAAM;CACrD,MAAM,EAAE,QAAQ,aAAa,OAAO,GAAG,YAAA,GAAA,sBAAA,YAAA,CAAuB;EAC5D,GAAG;EACH,GAAG;CACL,CAAC;CAGD,CAAA,GAAA,MAAA,UAAA,OAAgB;EACd,OAAO,OAAO,WACX,EAAE,aAAa,SACf,QAAQ,mBAAmB;GAC1B,IAAI,mBAAmB,eAAe,WAAW,gBAC/C,MAAM;EAEV,CACF;CACF,GAAG,CAAC,QAAQ,KAAK,CAAC;CAGlB,OAAO;EACL,GAAI;EACJ,SAAS;EACT,cAAc;EACd,YAAYC,4BAAAA,cAAc,EAAE,OAAO,CAAC;CACtC;AACF"}
@@ -1,7 +1,6 @@
1
1
  import { ResolvedRegister } from "../types.js";
2
2
  import { ConfigParameter } from "./useConfig.js";
3
3
  import { Config, GetConnectorsReturnType } from "@bigmi/client";
4
-
5
4
  //#region src/hooks/useConnectors.d.ts
6
5
  type UseConnectorsParameters<config extends Config = Config> = ConfigParameter<config>;
7
6
  type UseConnectorsReturnType<config extends Config = Config> = GetConnectorsReturnType<config>;
@@ -1 +1 @@
1
- {"version":3,"file":"useConnectors.js","names":["useConfig"],"sources":["../../../src/hooks/useConnectors.ts"],"sourcesContent":["'use client'\n\nimport {\n type Config,\n type GetConnectorsReturnType,\n getConnectors,\n watchConnectors,\n} from '@bigmi/client'\nimport { useSyncExternalStore } from 'react'\nimport type { ResolvedRegister } from '../types.js'\nimport { type ConfigParameter, useConfig } from './useConfig.js'\n\nexport type UseConnectorsParameters<config extends Config = Config> =\n ConfigParameter<config>\n\nexport type UseConnectorsReturnType<config extends Config = Config> =\n GetConnectorsReturnType<config>\n\nconst EMPTY_CONNECTORS: readonly [] = []\n\nexport function useConnectors<\n config extends Config = ResolvedRegister['config'],\n>(\n parameters: UseConnectorsParameters<config> = {}\n): UseConnectorsReturnType<config> {\n const config = useConfig(parameters)\n\n return useSyncExternalStore(\n (onChange) => watchConnectors(config, { onChange }),\n () => getConnectors(config),\n () => EMPTY_CONNECTORS as UseConnectorsReturnType<config>\n )\n}\n"],"mappings":";;;;;;AAkBA,MAAM,mBAAgC,CAAC;AAEvC,SAAgB,cAGd,aAA8C,CAAC,GACd;CACjC,MAAM,SAASA,wBAAAA,UAAU,UAAU;CAEnC,QAAA,GAAA,MAAA,uBACG,cAAA,GAAA,cAAA,iBAA6B,QAAQ,EAAE,SAAS,CAAC,UAAA,GAAA,cAAA,eAC9B,MAAM,SACpB,gBACR;AACF"}
1
+ {"version":3,"file":"useConnectors.js","names":["useConfig"],"sources":["../../../src/hooks/useConnectors.ts"],"sourcesContent":["'use client'\n\nimport {\n type Config,\n type GetConnectorsReturnType,\n getConnectors,\n watchConnectors,\n} from '@bigmi/client'\nimport { useSyncExternalStore } from 'react'\nimport type { ResolvedRegister } from '../types.js'\nimport { type ConfigParameter, useConfig } from './useConfig.js'\n\nexport type UseConnectorsParameters<config extends Config = Config> =\n ConfigParameter<config>\n\nexport type UseConnectorsReturnType<config extends Config = Config> =\n GetConnectorsReturnType<config>\n\nconst EMPTY_CONNECTORS: readonly [] = []\n\nexport function useConnectors<\n config extends Config = ResolvedRegister['config'],\n>(\n parameters: UseConnectorsParameters<config> = {}\n): UseConnectorsReturnType<config> {\n const config = useConfig(parameters)\n\n return useSyncExternalStore(\n (onChange) => watchConnectors(config, { onChange }),\n () => getConnectors(config),\n () => EMPTY_CONNECTORS as UseConnectorsReturnType<config>\n )\n}\n"],"mappings":";;;;;;AAkBA,MAAM,mBAAgC,CAAC;AAEvC,SAAgB,cAGd,aAA8C,CAAC,GACd;CACjC,MAAM,SAASA,wBAAAA,UAAU,UAAU;CAEnC,QAAA,GAAA,MAAA,qBAAA,EACG,cAAA,GAAA,cAAA,gBAAA,CAA6B,QAAQ,EAAE,SAAS,CAAC,UAAA,GAAA,cAAA,cAAA,CAC9B,MAAM,SACpB,gBACR;AACF"}
@@ -1,5 +1,4 @@
1
1
  import { Config } from "@bigmi/client";
2
-
3
2
  //#region src/hooks/useReconnect.d.ts
4
3
  declare const useReconnect: (config: Config) => void;
5
4
  //#endregion
@@ -1 +1 @@
1
- {"version":3,"file":"useReconnect.js","names":[],"sources":["../../../src/hooks/useReconnect.ts"],"sourcesContent":["'use client'\n\nimport { type Config, reconnect } from '@bigmi/client'\n\nimport { useEffect } from 'react'\n\nexport const useReconnect = (config: Config): void => {\n useEffect(() => {\n reconnect(config)\n }, [config])\n}\n"],"mappings":";;;;;AAMA,MAAa,gBAAgB,WAAyB;CACpD,CAAA,GAAA,MAAA,iBAAgB;EACd,CAAA,GAAA,cAAA,WAAU,MAAM;CAClB,GAAG,CAAC,MAAM,CAAC;AACb"}
1
+ {"version":3,"file":"useReconnect.js","names":[],"sources":["../../../src/hooks/useReconnect.ts"],"sourcesContent":["'use client'\n\nimport { type Config, reconnect } from '@bigmi/client'\n\nimport { useEffect } from 'react'\n\nexport const useReconnect = (config: Config): void => {\n useEffect(() => {\n reconnect(config)\n }, [config])\n}\n"],"mappings":";;;;;AAMA,MAAa,gBAAgB,WAAyB;CACpD,CAAA,GAAA,MAAA,UAAA,OAAgB;EACd,CAAA,GAAA,cAAA,UAAA,CAAU,MAAM;CAClB,GAAG,CAAC,MAAM,CAAC;AACb"}
@@ -1 +1 @@
1
- {"version":3,"file":"useSyncExternalStoreWithTracked.js","names":["deepEqual"],"sources":["../../../src/hooks/useSyncExternalStoreWithTracked.ts"],"sourcesContent":["'use client'\nimport { deepEqual } from '@bigmi/core'\nimport { useMemo, useRef, useSyncExternalStore } from 'react'\n\nconst isPlainObject = (obj: unknown): obj is Record<string, any> =>\n typeof obj === 'object' && !Array.isArray(obj)\n\nexport function useSyncExternalStoreWithTracked<\n Snapshot extends Selection,\n Selection = Snapshot,\n>(\n subscribe: (onStoreChange: () => void) => () => void,\n getSnapshot: () => Snapshot,\n getServerSnapshot: (() => Snapshot) | undefined = getSnapshot,\n isEqual: (a: Selection, b: Selection) => boolean = deepEqual\n): Selection {\n const trackedKeys = useRef<Set<string>>(new Set())\n const previousResult = useRef<Selection | undefined>(undefined)\n const snapshotCache = useRef(getSnapshot())\n\n const snapshot = useSyncExternalStore(\n (onChange) =>\n subscribe(() => {\n snapshotCache.current = getSnapshot()\n onChange()\n }),\n () => snapshotCache.current!,\n getServerSnapshot\n )\n\n const result = useMemo(() => {\n if (!isPlainObject(snapshot)) {\n return snapshot\n }\n\n const trackedResult = { ...snapshot }\n Object.defineProperties(\n trackedResult,\n Object.fromEntries(\n Object.entries(trackedResult).map(([key, value]) => [\n key,\n {\n configurable: false,\n enumerable: true,\n get: () => {\n trackedKeys.current.add(key)\n return value\n },\n },\n ])\n )\n )\n return trackedResult\n }, [snapshot])\n\n return useMemo(() => {\n if (!trackedKeys.current.size || !previousResult.current) {\n previousResult.current = result\n return result\n }\n\n const hasChanged = Array.from(trackedKeys.current).some(\n (key) =>\n !isEqual(\n (result as Record<string, Selection>)[key],\n (previousResult.current as Record<string, Selection>)[key]\n )\n )\n\n if (!hasChanged) {\n return previousResult.current\n }\n previousResult.current = result\n return result\n }, [result, isEqual])\n}\n"],"mappings":";;;;;AAIA,MAAM,iBAAiB,QACrB,OAAO,QAAQ,YAAY,CAAC,MAAM,QAAQ,GAAG;AAE/C,SAAgB,gCAId,WACA,aACA,oBAAkD,aAClD,UAAmDA,YAAAA,WACxC;CACX,MAAM,eAAA,GAAA,MAAA,wBAAkC,IAAI,IAAI,CAAC;CACjD,MAAM,kBAAA,GAAA,MAAA,QAA+C,KAAA,CAAS;CAC9D,MAAM,iBAAA,GAAA,MAAA,QAAuB,YAAY,CAAC;CAE1C,MAAM,YAAA,GAAA,MAAA,uBACH,aACC,gBAAgB;EACd,cAAc,UAAU,YAAY;EACpC,SAAS;CACX,CAAC,SACG,cAAc,SACpB,iBACF;CAEA,MAAM,UAAA,GAAA,MAAA,eAAuB;EAC3B,IAAI,CAAC,cAAc,QAAQ,GACzB,OAAO;EAGT,MAAM,gBAAgB,EAAE,GAAG,SAAS;EACpC,OAAO,iBACL,eACA,OAAO,YACL,OAAO,QAAQ,aAAa,EAAE,KAAK,CAAC,KAAK,WAAW,CAClD,KACA;GACE,cAAc;GACd,YAAY;GACZ,WAAW;IACT,YAAY,QAAQ,IAAI,GAAG;IAC3B,OAAO;GACT;EACF,CACF,CAAC,CACH,CACF;EACA,OAAO;CACT,GAAG,CAAC,QAAQ,CAAC;CAEb,QAAA,GAAA,MAAA,eAAqB;EACnB,IAAI,CAAC,YAAY,QAAQ,QAAQ,CAAC,eAAe,SAAS;GACxD,eAAe,UAAU;GACzB,OAAO;EACT;EAUA,IAAI,CARe,MAAM,KAAK,YAAY,OAAO,EAAE,MAChD,QACC,CAAC,QACE,OAAqC,MACrC,eAAe,QAAsC,IACxD,CAGU,GACZ,OAAO,eAAe;EAExB,eAAe,UAAU;EACzB,OAAO;CACT,GAAG,CAAC,QAAQ,OAAO,CAAC;AACtB"}
1
+ {"version":3,"file":"useSyncExternalStoreWithTracked.js","names":["deepEqual"],"sources":["../../../src/hooks/useSyncExternalStoreWithTracked.ts"],"sourcesContent":["'use client'\nimport { deepEqual } from '@bigmi/core'\nimport { useMemo, useRef, useSyncExternalStore } from 'react'\n\nconst isPlainObject = (obj: unknown): obj is Record<string, any> =>\n typeof obj === 'object' && !Array.isArray(obj)\n\nexport function useSyncExternalStoreWithTracked<\n Snapshot extends Selection,\n Selection = Snapshot,\n>(\n subscribe: (onStoreChange: () => void) => () => void,\n getSnapshot: () => Snapshot,\n getServerSnapshot: (() => Snapshot) | undefined = getSnapshot,\n isEqual: (a: Selection, b: Selection) => boolean = deepEqual\n): Selection {\n const trackedKeys = useRef<Set<string>>(new Set())\n const previousResult = useRef<Selection | undefined>(undefined)\n const snapshotCache = useRef(getSnapshot())\n\n const snapshot = useSyncExternalStore(\n (onChange) =>\n subscribe(() => {\n snapshotCache.current = getSnapshot()\n onChange()\n }),\n () => snapshotCache.current!,\n getServerSnapshot\n )\n\n const result = useMemo(() => {\n if (!isPlainObject(snapshot)) {\n return snapshot\n }\n\n const trackedResult = { ...snapshot }\n Object.defineProperties(\n trackedResult,\n Object.fromEntries(\n Object.entries(trackedResult).map(([key, value]) => [\n key,\n {\n configurable: false,\n enumerable: true,\n get: () => {\n trackedKeys.current.add(key)\n return value\n },\n },\n ])\n )\n )\n return trackedResult\n }, [snapshot])\n\n return useMemo(() => {\n if (!trackedKeys.current.size || !previousResult.current) {\n previousResult.current = result\n return result\n }\n\n const hasChanged = Array.from(trackedKeys.current).some(\n (key) =>\n !isEqual(\n (result as Record<string, Selection>)[key],\n (previousResult.current as Record<string, Selection>)[key]\n )\n )\n\n if (!hasChanged) {\n return previousResult.current\n }\n previousResult.current = result\n return result\n }, [result, isEqual])\n}\n"],"mappings":";;;;;AAIA,MAAM,iBAAiB,QACrB,OAAO,QAAQ,YAAY,CAAC,MAAM,QAAQ,GAAG;AAE/C,SAAgB,gCAId,WACA,aACA,oBAAkD,aAClD,UAAmDA,YAAAA,WACxC;CACX,MAAM,eAAA,GAAA,MAAA,OAAA,iBAAkC,IAAI,IAAI,CAAC;CACjD,MAAM,kBAAA,GAAA,MAAA,OAAA,CAA+C,KAAA,CAAS;CAC9D,MAAM,iBAAA,GAAA,MAAA,OAAA,CAAuB,YAAY,CAAC;CAE1C,MAAM,YAAA,GAAA,MAAA,qBAAA,EACH,aACC,gBAAgB;EACd,cAAc,UAAU,YAAY;EACpC,SAAS;CACX,CAAC,SACG,cAAc,SACpB,iBACF;CAEA,MAAM,UAAA,GAAA,MAAA,QAAA,OAAuB;EAC3B,IAAI,CAAC,cAAc,QAAQ,GACzB,OAAO;EAGT,MAAM,gBAAgB,EAAE,GAAG,SAAS;EACpC,OAAO,iBACL,eACA,OAAO,YACL,OAAO,QAAQ,aAAa,CAAC,CAAC,KAAK,CAAC,KAAK,WAAW,CAClD,KACA;GACE,cAAc;GACd,YAAY;GACZ,WAAW;IACT,YAAY,QAAQ,IAAI,GAAG;IAC3B,OAAO;GACT;EACF,CACF,CAAC,CACH,CACF;EACA,OAAO;CACT,GAAG,CAAC,QAAQ,CAAC;CAEb,QAAA,GAAA,MAAA,QAAA,OAAqB;EACnB,IAAI,CAAC,YAAY,QAAQ,QAAQ,CAAC,eAAe,SAAS;GACxD,eAAe,UAAU;GACzB,OAAO;EACT;EAUA,IAAI,CARe,MAAM,KAAK,YAAY,OAAO,CAAC,CAAC,MAChD,QACC,CAAC,QACE,OAAqC,MACrC,eAAe,QAAsC,IACxD,CAGU,GACZ,OAAO,eAAe;EAExB,eAAe,UAAU;EACzB,OAAO;CACT,GAAG,CAAC,QAAQ,OAAO,CAAC;AACtB"}
@@ -1,7 +1,6 @@
1
1
  import { ResolvedRegister } from "./types.js";
2
2
  import { Config, State } from "@bigmi/client";
3
3
  import { ReactElement } from "react";
4
-
5
4
  //#region src/hydrate.d.ts
6
5
  type HydrateProps = {
7
6
  config: ResolvedRegister["config"];
@@ -1 +1 @@
1
- {"version":3,"file":"hydrate.js","names":[],"sources":["../../src/hydrate.ts"],"sourcesContent":["'use client'\n\nimport { type Config, reconnect, type State } from '@bigmi/client'\n\nimport { type ReactElement, useEffect, useRef } from 'react'\n\nimport type { ResolvedRegister } from './types.js'\n\nexport type HydrateProps = {\n config: ResolvedRegister['config']\n initialState?: State | undefined\n reconnectOnMount?: boolean | undefined\n}\n\ntype HydrateParameters = {\n initialState?: State | undefined\n reconnectOnMount?: boolean | undefined\n}\n\nexport function hydrate(\n config: Config,\n parameters: HydrateParameters\n): { onMount(): Promise<void> } {\n const { initialState, reconnectOnMount } = parameters\n\n if (initialState && !config._internal.store.persist.hasHydrated()) {\n config.setState({\n ...initialState,\n chainId: config.chains.some((x) => x.id === initialState.chainId)\n ? initialState.chainId\n : config.chains[0].id,\n connections: reconnectOnMount ? initialState.connections : new Map(),\n status: reconnectOnMount ? 'reconnecting' : 'disconnected',\n })\n }\n\n return {\n async onMount(): Promise<void> {\n if (config._internal.ssr) {\n await config._internal.store.persist.rehydrate()\n }\n\n if (reconnectOnMount) {\n reconnect(config)\n } else if (config.storage) {\n // Reset connections that may have been hydrated from storage.\n config.setState((x) => ({\n ...x,\n connections: new Map(),\n }))\n }\n },\n }\n}\n\nexport function Hydrate(parameters: React.PropsWithChildren<HydrateProps>) {\n const { children, config, initialState, reconnectOnMount = true } = parameters\n\n const { onMount } = hydrate(config, {\n initialState,\n reconnectOnMount,\n })\n\n // Hydrate for non-SSR\n if (!config._internal.ssr) {\n onMount()\n }\n\n // Hydrate for SSR\n const active = useRef(true)\n // biome-ignore lint/correctness/useExhaustiveDependencies: `queryKey` not required\n useEffect(() => {\n if (!active.current) {\n return\n }\n if (!config._internal.ssr) {\n return\n }\n onMount()\n return () => {\n active.current = false\n }\n }, [])\n\n return children as ReactElement\n}\n"],"mappings":";;;;;AAmBA,SAAgB,QACd,QACA,YAC8B;CAC9B,MAAM,EAAE,cAAc,qBAAqB;CAE3C,IAAI,gBAAgB,CAAC,OAAO,UAAU,MAAM,QAAQ,YAAY,GAC9D,OAAO,SAAS;EACd,GAAG;EACH,SAAS,OAAO,OAAO,MAAM,MAAM,EAAE,OAAO,aAAa,OAAO,IAC5D,aAAa,UACb,OAAO,OAAO,GAAG;EACrB,aAAa,mBAAmB,aAAa,8BAAc,IAAI,IAAI;EACnE,QAAQ,mBAAmB,iBAAiB;CAC9C,CAAC;CAGH,OAAO,EACL,MAAM,UAAyB;EAC7B,IAAI,OAAO,UAAU,KACnB,MAAM,OAAO,UAAU,MAAM,QAAQ,UAAU;EAGjD,IAAI,kBACF,CAAA,GAAA,cAAA,WAAU,MAAM;OACX,IAAI,OAAO,SAEhB,OAAO,UAAU,OAAO;GACtB,GAAG;GACH,6BAAa,IAAI,IAAI;EACvB,EAAE;CAEN,EACF;AACF;AAEA,SAAgB,QAAQ,YAAmD;CACzE,MAAM,EAAE,UAAU,QAAQ,cAAc,mBAAmB,SAAS;CAEpE,MAAM,EAAE,YAAY,QAAQ,QAAQ;EAClC;EACA;CACF,CAAC;CAGD,IAAI,CAAC,OAAO,UAAU,KACpB,QAAQ;CAIV,MAAM,UAAA,GAAA,MAAA,QAAgB,IAAI;CAE1B,CAAA,GAAA,MAAA,iBAAgB;EACd,IAAI,CAAC,OAAO,SACV;EAEF,IAAI,CAAC,OAAO,UAAU,KACpB;EAEF,QAAQ;EACR,aAAa;GACX,OAAO,UAAU;EACnB;CACF,GAAG,CAAC,CAAC;CAEL,OAAO;AACT"}
1
+ {"version":3,"file":"hydrate.js","names":[],"sources":["../../src/hydrate.ts"],"sourcesContent":["'use client'\n\nimport { type Config, reconnect, type State } from '@bigmi/client'\n\nimport { type ReactElement, useEffect, useRef } from 'react'\n\nimport type { ResolvedRegister } from './types.js'\n\nexport type HydrateProps = {\n config: ResolvedRegister['config']\n initialState?: State | undefined\n reconnectOnMount?: boolean | undefined\n}\n\ntype HydrateParameters = {\n initialState?: State | undefined\n reconnectOnMount?: boolean | undefined\n}\n\nexport function hydrate(\n config: Config,\n parameters: HydrateParameters\n): { onMount(): Promise<void> } {\n const { initialState, reconnectOnMount } = parameters\n\n if (initialState && !config._internal.store.persist.hasHydrated()) {\n config.setState({\n ...initialState,\n chainId: config.chains.some((x) => x.id === initialState.chainId)\n ? initialState.chainId\n : config.chains[0].id,\n connections: reconnectOnMount ? initialState.connections : new Map(),\n status: reconnectOnMount ? 'reconnecting' : 'disconnected',\n })\n }\n\n return {\n async onMount(): Promise<void> {\n if (config._internal.ssr) {\n await config._internal.store.persist.rehydrate()\n }\n\n if (reconnectOnMount) {\n reconnect(config)\n } else if (config.storage) {\n // Reset connections that may have been hydrated from storage.\n config.setState((x) => ({\n ...x,\n connections: new Map(),\n }))\n }\n },\n }\n}\n\nexport function Hydrate(parameters: React.PropsWithChildren<HydrateProps>) {\n const { children, config, initialState, reconnectOnMount = true } = parameters\n\n const { onMount } = hydrate(config, {\n initialState,\n reconnectOnMount,\n })\n\n // Hydrate for non-SSR\n if (!config._internal.ssr) {\n onMount()\n }\n\n // Hydrate for SSR\n const active = useRef(true)\n // biome-ignore lint/correctness/useExhaustiveDependencies: `queryKey` not required\n useEffect(() => {\n if (!active.current) {\n return\n }\n if (!config._internal.ssr) {\n return\n }\n onMount()\n return () => {\n active.current = false\n }\n }, [])\n\n return children as ReactElement\n}\n"],"mappings":";;;;;AAmBA,SAAgB,QACd,QACA,YAC8B;CAC9B,MAAM,EAAE,cAAc,qBAAqB;CAE3C,IAAI,gBAAgB,CAAC,OAAO,UAAU,MAAM,QAAQ,YAAY,GAC9D,OAAO,SAAS;EACd,GAAG;EACH,SAAS,OAAO,OAAO,MAAM,MAAM,EAAE,OAAO,aAAa,OAAO,IAC5D,aAAa,UACb,OAAO,OAAO,EAAE,CAAC;EACrB,aAAa,mBAAmB,aAAa,8BAAc,IAAI,IAAI;EACnE,QAAQ,mBAAmB,iBAAiB;CAC9C,CAAC;CAGH,OAAO,EACL,MAAM,UAAyB;EAC7B,IAAI,OAAO,UAAU,KACnB,MAAM,OAAO,UAAU,MAAM,QAAQ,UAAU;EAGjD,IAAI,kBACF,CAAA,GAAA,cAAA,UAAA,CAAU,MAAM;OACX,IAAI,OAAO,SAEhB,OAAO,UAAU,OAAO;GACtB,GAAG;GACH,6BAAa,IAAI,IAAI;EACvB,EAAE;CAEN,EACF;AACF;AAEA,SAAgB,QAAQ,YAAmD;CACzE,MAAM,EAAE,UAAU,QAAQ,cAAc,mBAAmB,SAAS;CAEpE,MAAM,EAAE,YAAY,QAAQ,QAAQ;EAClC;EACA;CACF,CAAC;CAGD,IAAI,CAAC,OAAO,UAAU,KACpB,QAAQ;CAIV,MAAM,UAAA,GAAA,MAAA,OAAA,CAAgB,IAAI;CAE1B,CAAA,GAAA,MAAA,UAAA,OAAgB;EACd,IAAI,CAAC,OAAO,SACV;EAEF,IAAI,CAAC,OAAO,UAAU,KACpB;EAEF,QAAQ;EACR,aAAa;GACX,OAAO,UAAU;EACnB;CACF,GAAG,CAAC,CAAC;CAEL,OAAO;AACT"}
@@ -1,5 +1,4 @@
1
1
  import { Config } from "@bigmi/client";
2
-
3
2
  //#region src/types.d.ts
4
3
  type Register = {};
5
4
  type ResolvedRegister = {
@@ -1,6 +1,5 @@
1
1
  import { Compute, UnionStrictOmit } from "@bigmi/core";
2
2
  import { UseMutationOptions, UseMutationResult } from "@tanstack/react-query";
3
-
4
3
  //#region src/utils/query.d.ts
5
4
  type UseMutationParameters<data = unknown, error = Error, variables = void, context = unknown> = Compute<Omit<UseMutationOptions<data, error, Compute<variables>, context>, "mutationFn" | "mutationKey" | "throwOnError">>;
6
5
  type UseMutationReturnType<data = unknown, error = Error, variables = void, context = unknown> = Compute<UnionStrictOmit<UseMutationResult<data, error, variables, context>, "mutate" | "mutateAsync">>;
@@ -1,6 +1,6 @@
1
1
  //#region src/version.d.ts
2
2
  declare const name = "@bigmi/react";
3
- declare const version = "0.8.1";
3
+ declare const version = "0.9.0";
4
4
  //#endregion
5
5
  export { name, version };
6
6
  //# sourceMappingURL=version.d.ts.map
@@ -1,7 +1,7 @@
1
1
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
2
  //#region src/version.ts
3
3
  const name = "@bigmi/react";
4
- const version = "0.8.1";
4
+ const version = "0.9.0";
5
5
  //#endregion
6
6
  exports.name = name;
7
7
  exports.version = version;
@@ -1 +1 @@
1
- {"version":3,"file":"version.js","names":[],"sources":["../../src/version.ts"],"sourcesContent":["export const name = '@bigmi/react'\nexport const version = '0.8.1'\n"],"mappings":";;AAAA,MAAa,OAAO;AACpB,MAAa,UAAU"}
1
+ {"version":3,"file":"version.js","names":[],"sources":["../../src/version.ts"],"sourcesContent":["export const name = '@bigmi/react'\nexport const version = '0.9.0'\n"],"mappings":";;AAAA,MAAa,OAAO;AACpB,MAAa,UAAU"}
@@ -1,7 +1,6 @@
1
1
  import { ResolvedRegister } from "./types.js";
2
2
  import { Context, PropsWithChildren, ReactElement } from "react";
3
3
  import { State } from "@bigmi/client";
4
-
5
4
  //#region src/context.d.ts
6
5
  declare const BigmiContext: Context<ResolvedRegister["config"] | undefined>;
7
6
  type BigmiProviderProps = {
@@ -1 +1 @@
1
- {"version":3,"file":"context.d.ts","names":[],"sources":["../../src/context.ts"],"mappings":";;;;;cAYa,YAAA,EAAc,OAAA,CAAQ,gBAAA;AAAA,KAGvB,kBAAA;EACV,MAAA,EAAQ,gBAAA;EACR,YAAA,GAAe,KAAA;EACf,gBAAA;AAAA;AAAA,iBAGc,aAAA,CACd,UAAA,EAAY,iBAAA,CAAkB,kBAAA,IAC7B,YAAA"}
1
+ {"version":3,"file":"context.d.ts","names":[],"sources":["../../src/context.ts"],"mappings":";;;;cAYa,cAAc,QAAQ;KAGvB;EACV,QAAQ;EACR,eAAe;EACf;;iBAGc,cACd,YAAY,kBAAkB,sBAC7B"}
@@ -1,5 +1,4 @@
1
1
  import { BaseError } from "@bigmi/core";
2
-
3
2
  //#region src/errors/context.d.ts
4
3
  type BigmiProviderNotFoundErrorType = BigmiProviderNotFoundError & {
5
4
  name: "BigmiProviderNotFoundError";
@@ -1 +1 @@
1
- {"version":3,"file":"context.d.ts","names":[],"sources":["../../../src/errors/context.ts"],"mappings":";;;KAEY,8BAAA,GAAiC,0BAAA;EAC3C,IAAA;AAAA;AAAA,cAEW,0BAAA,SAAmC,SAAA;EAAA,SACrC,IAAA;EACT,WAAA;AAAA"}
1
+ {"version":3,"file":"context.d.ts","names":[],"sources":["../../../src/errors/context.ts"],"mappings":";;KAEY,iCAAiC;EAC3C;;cAEW,mCAAmC;WACrC;EACT"}
@@ -1,7 +1,6 @@
1
1
  import { ResolvedRegister } from "../types.js";
2
2
  import { ConfigParameter } from "./useConfig.js";
3
3
  import { Config, GetAccountReturnType } from "@bigmi/client";
4
-
5
4
  //#region src/hooks/useAccount.d.ts
6
5
  type UseAccountParameters<config extends Config = Config> = ConfigParameter<config>;
7
6
  type UseAccountReturnType<config extends Config = Config> = GetAccountReturnType<config>;
@@ -1 +1 @@
1
- {"version":3,"file":"useAccount.d.ts","names":[],"sources":["../../../src/hooks/useAccount.ts"],"mappings":";;;;;KAaY,oBAAA,gBAAoC,MAAA,GAAS,MAAA,IACvD,eAAA,CAAgB,MAAA;AAAA,KAEN,oBAAA,gBAAoC,MAAA,GAAS,MAAA,IACvD,oBAAA,CAAqB,MAAA;AAAA,iBAeP,UAAA,WAAqB,MAAA,GAAS,gBAAA,YAC5C,UAAA,GAAY,oBAAA,CAAqB,CAAA,IAChC,oBAAA,CAAqB,CAAA"}
1
+ {"version":3,"file":"useAccount.d.ts","names":[],"sources":["../../../src/hooks/useAccount.ts"],"mappings":";;;;KAaY,qBAAqB,eAAe,SAAS,UACvD,gBAAgB;KAEN,qBAAqB,eAAe,SAAS,UACvD,qBAAqB;iBAeP,WAAW,UAAU,SAAS,4BAC5C,aAAY,qBAAqB,KAChC,qBAAqB"}
@@ -1,6 +1,5 @@
1
1
  import { ResolvedRegister } from "../types.js";
2
2
  import { Config } from "@bigmi/client";
3
-
4
3
  //#region src/hooks/useConfig.d.ts
5
4
  type ConfigParameter<config extends Config = Config> = {
6
5
  config?: Config | config | undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"useConfig.d.ts","names":[],"sources":["../../../src/hooks/useConfig.ts"],"mappings":";;;;KAQY,eAAA,gBAA+B,MAAA,GAAS,MAAA;EAClD,MAAA,GAAS,MAAA,GAAS,MAAA;AAAA;AAAA,KAGR,mBAAA,gBAAmC,MAAA,GAAS,MAAA,IACtD,eAAA,CAAgB,MAAA;AAAA,KAEN,mBAAA,gBAAmC,MAAA,GAAS,MAAA,IAAU,MAAA;AAAA,iBAElD,SAAA,WAAoB,MAAA,GAAS,gBAAA,YAC3C,UAAA,GAAY,mBAAA,CAAoB,CAAA,IAC/B,mBAAA,CAAoB,CAAA"}
1
+ {"version":3,"file":"useConfig.d.ts","names":[],"sources":["../../../src/hooks/useConfig.ts"],"mappings":";;;KAQY,gBAAgB,eAAe,SAAS;EAClD,SAAS,SAAS;;KAGR,oBAAoB,eAAe,SAAS,UACtD,gBAAgB;KAEN,oBAAoB,eAAe,SAAS,UAAU;iBAElD,UAAU,UAAU,SAAS,4BAC3C,aAAY,oBAAoB,KAC/B,oBAAoB"}
@@ -4,7 +4,6 @@ import { UseMutationParameters, UseMutationReturnType } from "../utils/query.js"
4
4
  import { UseConnectorsReturnType } from "./useConnectors.js";
5
5
  import { Config, ConnectData, ConnectErrorType, ConnectMutate, ConnectMutateAsync, ConnectVariables } from "@bigmi/client";
6
6
  import { Compute } from "@bigmi/core";
7
-
8
7
  //#region src/hooks/useConnect.d.ts
9
8
  type UseConnectParameters<config extends Config = Config, context = unknown> = Compute<ConfigParameter<config> & {
10
9
  mutation?: UseMutationParameters<ConnectData<config>, ConnectErrorType, ConnectVariables<config, config["connectors"][number]>, context> | undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"useConnect.d.ts","names":[],"sources":["../../../src/hooks/useConnect.ts"],"mappings":";;;;;;;;KAsBY,oBAAA,gBACK,MAAA,GAAS,MAAA,uBAEtB,OAAA,CACF,eAAA,CAAgB,MAAA;EACd,QAAA,GACI,qBAAA,CACE,WAAA,CAAY,MAAA,GACZ,gBAAA,EACA,gBAAA,CAAiB,MAAA,EAAQ,MAAA,yBACzB,OAAA;AAAA;AAAA,KAME,oBAAA,gBACK,MAAA,GAAS,MAAA,uBAEtB,OAAA,CACF,qBAAA,CACE,WAAA,CAAY,MAAA,GACZ,gBAAA,EACA,gBAAA,CAAiB,MAAA,EAAQ,MAAA,yBACzB,OAAA;EAEA,OAAA,EAAS,aAAA,CAAc,MAAA,EAAQ,OAAA;EAC/B,YAAA,EAAc,kBAAA,CAAmB,MAAA,EAAQ,OAAA;EACzC,UAAA,EAAY,OAAA,CAAQ,uBAAA,IAA2B,MAAA;AAAA;AAAA,iBAInC,UAAA,gBACC,MAAA,GAAS,gBAAA,+BAGxB,UAAA,GAAY,oBAAA,CAAqB,MAAA,EAAQ,OAAA,IACxC,oBAAA,CAAqB,MAAA,EAAQ,OAAA"}
1
+ {"version":3,"file":"useConnect.d.ts","names":[],"sources":["../../../src/hooks/useConnect.ts"],"mappings":";;;;;;;KAsBY,qBACV,eAAe,SAAS,QACxB,qBACE,QACF,gBAAgB;EACd,WACI,sBACE,YAAY,SACZ,kBACA,iBAAiB,QAAQ,+BACzB;;KAME,qBACV,eAAe,SAAS,QACxB,qBACE,QACF,sBACE,YAAY,SACZ,kBACA,iBAAiB,QAAQ,+BACzB;EAEA,SAAS,cAAc,QAAQ;EAC/B,cAAc,mBAAmB,QAAQ;EACzC,YAAY,QAAQ,2BAA2B;;iBAInC,WACd,eAAe,SAAS,4BACxB,mBAEA,aAAY,qBAAqB,QAAQ,WACxC,qBAAqB,QAAQ"}
@@ -1,7 +1,6 @@
1
1
  import { ResolvedRegister } from "../types.js";
2
2
  import { ConfigParameter } from "./useConfig.js";
3
3
  import { Config, GetConnectorsReturnType } from "@bigmi/client";
4
-
5
4
  //#region src/hooks/useConnectors.d.ts
6
5
  type UseConnectorsParameters<config extends Config = Config> = ConfigParameter<config>;
7
6
  type UseConnectorsReturnType<config extends Config = Config> = GetConnectorsReturnType<config>;
@@ -1 +1 @@
1
- {"version":3,"file":"useConnectors.d.ts","names":[],"sources":["../../../src/hooks/useConnectors.ts"],"mappings":";;;;;KAYY,uBAAA,gBAAuC,MAAA,GAAS,MAAA,IAC1D,eAAA,CAAgB,MAAA;AAAA,KAEN,uBAAA,gBAAuC,MAAA,GAAS,MAAA,IAC1D,uBAAA,CAAwB,MAAA;AAAA,iBAIV,aAAA,gBACC,MAAA,GAAS,gBAAA,YAExB,UAAA,GAAY,uBAAA,CAAwB,MAAA,IACnC,uBAAA,CAAwB,MAAA"}
1
+ {"version":3,"file":"useConnectors.d.ts","names":[],"sources":["../../../src/hooks/useConnectors.ts"],"mappings":";;;;KAYY,wBAAwB,eAAe,SAAS,UAC1D,gBAAgB;KAEN,wBAAwB,eAAe,SAAS,UAC1D,wBAAwB;iBAIV,cACd,eAAe,SAAS,4BAExB,aAAY,wBAAwB,UACnC,wBAAwB"}
@@ -1,5 +1,4 @@
1
1
  import { Config } from "@bigmi/client";
2
-
3
2
  //#region src/hooks/useReconnect.d.ts
4
3
  declare const useReconnect: (config: Config) => void;
5
4
  //#endregion
@@ -1 +1 @@
1
- {"version":3,"file":"useReconnect.d.ts","names":[],"sources":["../../../src/hooks/useReconnect.ts"],"mappings":";;;cAMa,YAAA,GAAgB,MAAQ,EAAA,MAAA"}
1
+ {"version":3,"file":"useReconnect.d.ts","names":[],"sources":["../../../src/hooks/useReconnect.ts"],"mappings":";;cAMa,eAAgB,QAAQ"}
@@ -1 +1 @@
1
- {"version":3,"file":"useSyncExternalStoreWithTracked.d.ts","names":[],"sources":["../../../src/hooks/useSyncExternalStoreWithTracked.ts"],"mappings":";iBAOgB,+BAAA,kBACG,SAAA,cACL,QAAA,EAEZ,SAAA,GAAY,aAAA,6BACZ,WAAA,QAAmB,QAAA,EACnB,iBAAA,UAA0B,QAAA,eAC1B,OAAA,IAAU,CAAA,EAAG,SAAA,EAAW,CAAA,EAAG,SAAA,eAC1B,SAAA"}
1
+ {"version":3,"file":"useSyncExternalStoreWithTracked.d.ts","names":[],"sources":["../../../src/hooks/useSyncExternalStoreWithTracked.ts"],"mappings":";iBAOgB,gCACd,iBAAiB,WACjB,YAAY,UAEZ,YAAY,0CACZ,mBAAmB,UACnB,2BAA0B,uBAC1B,WAAU,GAAG,WAAW,GAAG,wBAC1B"}
@@ -1 +1 @@
1
- {"version":3,"file":"useSyncExternalStoreWithTracked.js","names":[],"sources":["../../../src/hooks/useSyncExternalStoreWithTracked.ts"],"sourcesContent":["'use client'\nimport { deepEqual } from '@bigmi/core'\nimport { useMemo, useRef, useSyncExternalStore } from 'react'\n\nconst isPlainObject = (obj: unknown): obj is Record<string, any> =>\n typeof obj === 'object' && !Array.isArray(obj)\n\nexport function useSyncExternalStoreWithTracked<\n Snapshot extends Selection,\n Selection = Snapshot,\n>(\n subscribe: (onStoreChange: () => void) => () => void,\n getSnapshot: () => Snapshot,\n getServerSnapshot: (() => Snapshot) | undefined = getSnapshot,\n isEqual: (a: Selection, b: Selection) => boolean = deepEqual\n): Selection {\n const trackedKeys = useRef<Set<string>>(new Set())\n const previousResult = useRef<Selection | undefined>(undefined)\n const snapshotCache = useRef(getSnapshot())\n\n const snapshot = useSyncExternalStore(\n (onChange) =>\n subscribe(() => {\n snapshotCache.current = getSnapshot()\n onChange()\n }),\n () => snapshotCache.current!,\n getServerSnapshot\n )\n\n const result = useMemo(() => {\n if (!isPlainObject(snapshot)) {\n return snapshot\n }\n\n const trackedResult = { ...snapshot }\n Object.defineProperties(\n trackedResult,\n Object.fromEntries(\n Object.entries(trackedResult).map(([key, value]) => [\n key,\n {\n configurable: false,\n enumerable: true,\n get: () => {\n trackedKeys.current.add(key)\n return value\n },\n },\n ])\n )\n )\n return trackedResult\n }, [snapshot])\n\n return useMemo(() => {\n if (!trackedKeys.current.size || !previousResult.current) {\n previousResult.current = result\n return result\n }\n\n const hasChanged = Array.from(trackedKeys.current).some(\n (key) =>\n !isEqual(\n (result as Record<string, Selection>)[key],\n (previousResult.current as Record<string, Selection>)[key]\n )\n )\n\n if (!hasChanged) {\n return previousResult.current\n }\n previousResult.current = result\n return result\n }, [result, isEqual])\n}\n"],"mappings":";;;;AAIA,MAAM,iBAAiB,QACrB,OAAO,QAAQ,YAAY,CAAC,MAAM,QAAQ,GAAG;AAE/C,SAAgB,gCAId,WACA,aACA,oBAAkD,aAClD,UAAmD,WACxC;CACX,MAAM,cAAc,uBAAoB,IAAI,IAAI,CAAC;CACjD,MAAM,iBAAiB,OAA8B,KAAA,CAAS;CAC9D,MAAM,gBAAgB,OAAO,YAAY,CAAC;CAE1C,MAAM,WAAW,sBACd,aACC,gBAAgB;EACd,cAAc,UAAU,YAAY;EACpC,SAAS;CACX,CAAC,SACG,cAAc,SACpB,iBACF;CAEA,MAAM,SAAS,cAAc;EAC3B,IAAI,CAAC,cAAc,QAAQ,GACzB,OAAO;EAGT,MAAM,gBAAgB,EAAE,GAAG,SAAS;EACpC,OAAO,iBACL,eACA,OAAO,YACL,OAAO,QAAQ,aAAa,EAAE,KAAK,CAAC,KAAK,WAAW,CAClD,KACA;GACE,cAAc;GACd,YAAY;GACZ,WAAW;IACT,YAAY,QAAQ,IAAI,GAAG;IAC3B,OAAO;GACT;EACF,CACF,CAAC,CACH,CACF;EACA,OAAO;CACT,GAAG,CAAC,QAAQ,CAAC;CAEb,OAAO,cAAc;EACnB,IAAI,CAAC,YAAY,QAAQ,QAAQ,CAAC,eAAe,SAAS;GACxD,eAAe,UAAU;GACzB,OAAO;EACT;EAUA,IAAI,CARe,MAAM,KAAK,YAAY,OAAO,EAAE,MAChD,QACC,CAAC,QACE,OAAqC,MACrC,eAAe,QAAsC,IACxD,CAGU,GACZ,OAAO,eAAe;EAExB,eAAe,UAAU;EACzB,OAAO;CACT,GAAG,CAAC,QAAQ,OAAO,CAAC;AACtB"}
1
+ {"version":3,"file":"useSyncExternalStoreWithTracked.js","names":[],"sources":["../../../src/hooks/useSyncExternalStoreWithTracked.ts"],"sourcesContent":["'use client'\nimport { deepEqual } from '@bigmi/core'\nimport { useMemo, useRef, useSyncExternalStore } from 'react'\n\nconst isPlainObject = (obj: unknown): obj is Record<string, any> =>\n typeof obj === 'object' && !Array.isArray(obj)\n\nexport function useSyncExternalStoreWithTracked<\n Snapshot extends Selection,\n Selection = Snapshot,\n>(\n subscribe: (onStoreChange: () => void) => () => void,\n getSnapshot: () => Snapshot,\n getServerSnapshot: (() => Snapshot) | undefined = getSnapshot,\n isEqual: (a: Selection, b: Selection) => boolean = deepEqual\n): Selection {\n const trackedKeys = useRef<Set<string>>(new Set())\n const previousResult = useRef<Selection | undefined>(undefined)\n const snapshotCache = useRef(getSnapshot())\n\n const snapshot = useSyncExternalStore(\n (onChange) =>\n subscribe(() => {\n snapshotCache.current = getSnapshot()\n onChange()\n }),\n () => snapshotCache.current!,\n getServerSnapshot\n )\n\n const result = useMemo(() => {\n if (!isPlainObject(snapshot)) {\n return snapshot\n }\n\n const trackedResult = { ...snapshot }\n Object.defineProperties(\n trackedResult,\n Object.fromEntries(\n Object.entries(trackedResult).map(([key, value]) => [\n key,\n {\n configurable: false,\n enumerable: true,\n get: () => {\n trackedKeys.current.add(key)\n return value\n },\n },\n ])\n )\n )\n return trackedResult\n }, [snapshot])\n\n return useMemo(() => {\n if (!trackedKeys.current.size || !previousResult.current) {\n previousResult.current = result\n return result\n }\n\n const hasChanged = Array.from(trackedKeys.current).some(\n (key) =>\n !isEqual(\n (result as Record<string, Selection>)[key],\n (previousResult.current as Record<string, Selection>)[key]\n )\n )\n\n if (!hasChanged) {\n return previousResult.current\n }\n previousResult.current = result\n return result\n }, [result, isEqual])\n}\n"],"mappings":";;;;AAIA,MAAM,iBAAiB,QACrB,OAAO,QAAQ,YAAY,CAAC,MAAM,QAAQ,GAAG;AAE/C,SAAgB,gCAId,WACA,aACA,oBAAkD,aAClD,UAAmD,WACxC;CACX,MAAM,cAAc,uBAAoB,IAAI,IAAI,CAAC;CACjD,MAAM,iBAAiB,OAA8B,KAAA,CAAS;CAC9D,MAAM,gBAAgB,OAAO,YAAY,CAAC;CAE1C,MAAM,WAAW,sBACd,aACC,gBAAgB;EACd,cAAc,UAAU,YAAY;EACpC,SAAS;CACX,CAAC,SACG,cAAc,SACpB,iBACF;CAEA,MAAM,SAAS,cAAc;EAC3B,IAAI,CAAC,cAAc,QAAQ,GACzB,OAAO;EAGT,MAAM,gBAAgB,EAAE,GAAG,SAAS;EACpC,OAAO,iBACL,eACA,OAAO,YACL,OAAO,QAAQ,aAAa,CAAC,CAAC,KAAK,CAAC,KAAK,WAAW,CAClD,KACA;GACE,cAAc;GACd,YAAY;GACZ,WAAW;IACT,YAAY,QAAQ,IAAI,GAAG;IAC3B,OAAO;GACT;EACF,CACF,CAAC,CACH,CACF;EACA,OAAO;CACT,GAAG,CAAC,QAAQ,CAAC;CAEb,OAAO,cAAc;EACnB,IAAI,CAAC,YAAY,QAAQ,QAAQ,CAAC,eAAe,SAAS;GACxD,eAAe,UAAU;GACzB,OAAO;EACT;EAUA,IAAI,CARe,MAAM,KAAK,YAAY,OAAO,CAAC,CAAC,MAChD,QACC,CAAC,QACE,OAAqC,MACrC,eAAe,QAAsC,IACxD,CAGU,GACZ,OAAO,eAAe;EAExB,eAAe,UAAU;EACzB,OAAO;CACT,GAAG,CAAC,QAAQ,OAAO,CAAC;AACtB"}
@@ -1,7 +1,6 @@
1
1
  import { ResolvedRegister } from "./types.js";
2
2
  import { ReactElement } from "react";
3
3
  import { Config, State } from "@bigmi/client";
4
-
5
4
  //#region src/hydrate.d.ts
6
5
  type HydrateProps = {
7
6
  config: ResolvedRegister["config"];
@@ -1 +1 @@
1
- {"version":3,"file":"hydrate.d.ts","names":[],"sources":["../../src/hydrate.ts"],"mappings":";;;;;KAQY,YAAA;EACV,MAAA,EAAQ,gBAAA;EACR,YAAA,GAAe,KAAA;EACf,gBAAA;AAAA;AAAA,KAGG,iBAAA;EACH,YAAA,GAAe,KAAA;EACf,gBAAA;AAAA;AAAA,iBAGc,OAAA,CACd,MAAA,EAAQ,MAAA,EACR,UAAA,EAAY,iBAAA;EACT,OAAA,IAAW,OAAA;AAAA;AAAA,iBAiCA,OAAA,CAAQ,UAAA,EAAY,KAAA,CAAM,iBAAA,CAAkB,YAAA,IA6BvC,YAAA"}
1
+ {"version":3,"file":"hydrate.d.ts","names":[],"sources":["../../src/hydrate.ts"],"mappings":";;;;KAQY;EACV,QAAQ;EACR,eAAe;EACf;;KAGG;EACH,eAAe;EACf;;iBAGc,QACd,QAAQ,QACR,YAAY;EACT,WAAW;;iBAiCA,QAAQ,YAAY,MAAM,kBAAkB,gBA6BvC"}
@@ -1 +1 @@
1
- {"version":3,"file":"hydrate.js","names":[],"sources":["../../src/hydrate.ts"],"sourcesContent":["'use client'\n\nimport { type Config, reconnect, type State } from '@bigmi/client'\n\nimport { type ReactElement, useEffect, useRef } from 'react'\n\nimport type { ResolvedRegister } from './types.js'\n\nexport type HydrateProps = {\n config: ResolvedRegister['config']\n initialState?: State | undefined\n reconnectOnMount?: boolean | undefined\n}\n\ntype HydrateParameters = {\n initialState?: State | undefined\n reconnectOnMount?: boolean | undefined\n}\n\nexport function hydrate(\n config: Config,\n parameters: HydrateParameters\n): { onMount(): Promise<void> } {\n const { initialState, reconnectOnMount } = parameters\n\n if (initialState && !config._internal.store.persist.hasHydrated()) {\n config.setState({\n ...initialState,\n chainId: config.chains.some((x) => x.id === initialState.chainId)\n ? initialState.chainId\n : config.chains[0].id,\n connections: reconnectOnMount ? initialState.connections : new Map(),\n status: reconnectOnMount ? 'reconnecting' : 'disconnected',\n })\n }\n\n return {\n async onMount(): Promise<void> {\n if (config._internal.ssr) {\n await config._internal.store.persist.rehydrate()\n }\n\n if (reconnectOnMount) {\n reconnect(config)\n } else if (config.storage) {\n // Reset connections that may have been hydrated from storage.\n config.setState((x) => ({\n ...x,\n connections: new Map(),\n }))\n }\n },\n }\n}\n\nexport function Hydrate(parameters: React.PropsWithChildren<HydrateProps>) {\n const { children, config, initialState, reconnectOnMount = true } = parameters\n\n const { onMount } = hydrate(config, {\n initialState,\n reconnectOnMount,\n })\n\n // Hydrate for non-SSR\n if (!config._internal.ssr) {\n onMount()\n }\n\n // Hydrate for SSR\n const active = useRef(true)\n // biome-ignore lint/correctness/useExhaustiveDependencies: `queryKey` not required\n useEffect(() => {\n if (!active.current) {\n return\n }\n if (!config._internal.ssr) {\n return\n }\n onMount()\n return () => {\n active.current = false\n }\n }, [])\n\n return children as ReactElement\n}\n"],"mappings":";;;;AAmBA,SAAgB,QACd,QACA,YAC8B;CAC9B,MAAM,EAAE,cAAc,qBAAqB;CAE3C,IAAI,gBAAgB,CAAC,OAAO,UAAU,MAAM,QAAQ,YAAY,GAC9D,OAAO,SAAS;EACd,GAAG;EACH,SAAS,OAAO,OAAO,MAAM,MAAM,EAAE,OAAO,aAAa,OAAO,IAC5D,aAAa,UACb,OAAO,OAAO,GAAG;EACrB,aAAa,mBAAmB,aAAa,8BAAc,IAAI,IAAI;EACnE,QAAQ,mBAAmB,iBAAiB;CAC9C,CAAC;CAGH,OAAO,EACL,MAAM,UAAyB;EAC7B,IAAI,OAAO,UAAU,KACnB,MAAM,OAAO,UAAU,MAAM,QAAQ,UAAU;EAGjD,IAAI,kBACF,UAAU,MAAM;OACX,IAAI,OAAO,SAEhB,OAAO,UAAU,OAAO;GACtB,GAAG;GACH,6BAAa,IAAI,IAAI;EACvB,EAAE;CAEN,EACF;AACF;AAEA,SAAgB,QAAQ,YAAmD;CACzE,MAAM,EAAE,UAAU,QAAQ,cAAc,mBAAmB,SAAS;CAEpE,MAAM,EAAE,YAAY,QAAQ,QAAQ;EAClC;EACA;CACF,CAAC;CAGD,IAAI,CAAC,OAAO,UAAU,KACpB,QAAQ;CAIV,MAAM,SAAS,OAAO,IAAI;CAE1B,gBAAgB;EACd,IAAI,CAAC,OAAO,SACV;EAEF,IAAI,CAAC,OAAO,UAAU,KACpB;EAEF,QAAQ;EACR,aAAa;GACX,OAAO,UAAU;EACnB;CACF,GAAG,CAAC,CAAC;CAEL,OAAO;AACT"}
1
+ {"version":3,"file":"hydrate.js","names":[],"sources":["../../src/hydrate.ts"],"sourcesContent":["'use client'\n\nimport { type Config, reconnect, type State } from '@bigmi/client'\n\nimport { type ReactElement, useEffect, useRef } from 'react'\n\nimport type { ResolvedRegister } from './types.js'\n\nexport type HydrateProps = {\n config: ResolvedRegister['config']\n initialState?: State | undefined\n reconnectOnMount?: boolean | undefined\n}\n\ntype HydrateParameters = {\n initialState?: State | undefined\n reconnectOnMount?: boolean | undefined\n}\n\nexport function hydrate(\n config: Config,\n parameters: HydrateParameters\n): { onMount(): Promise<void> } {\n const { initialState, reconnectOnMount } = parameters\n\n if (initialState && !config._internal.store.persist.hasHydrated()) {\n config.setState({\n ...initialState,\n chainId: config.chains.some((x) => x.id === initialState.chainId)\n ? initialState.chainId\n : config.chains[0].id,\n connections: reconnectOnMount ? initialState.connections : new Map(),\n status: reconnectOnMount ? 'reconnecting' : 'disconnected',\n })\n }\n\n return {\n async onMount(): Promise<void> {\n if (config._internal.ssr) {\n await config._internal.store.persist.rehydrate()\n }\n\n if (reconnectOnMount) {\n reconnect(config)\n } else if (config.storage) {\n // Reset connections that may have been hydrated from storage.\n config.setState((x) => ({\n ...x,\n connections: new Map(),\n }))\n }\n },\n }\n}\n\nexport function Hydrate(parameters: React.PropsWithChildren<HydrateProps>) {\n const { children, config, initialState, reconnectOnMount = true } = parameters\n\n const { onMount } = hydrate(config, {\n initialState,\n reconnectOnMount,\n })\n\n // Hydrate for non-SSR\n if (!config._internal.ssr) {\n onMount()\n }\n\n // Hydrate for SSR\n const active = useRef(true)\n // biome-ignore lint/correctness/useExhaustiveDependencies: `queryKey` not required\n useEffect(() => {\n if (!active.current) {\n return\n }\n if (!config._internal.ssr) {\n return\n }\n onMount()\n return () => {\n active.current = false\n }\n }, [])\n\n return children as ReactElement\n}\n"],"mappings":";;;;AAmBA,SAAgB,QACd,QACA,YAC8B;CAC9B,MAAM,EAAE,cAAc,qBAAqB;CAE3C,IAAI,gBAAgB,CAAC,OAAO,UAAU,MAAM,QAAQ,YAAY,GAC9D,OAAO,SAAS;EACd,GAAG;EACH,SAAS,OAAO,OAAO,MAAM,MAAM,EAAE,OAAO,aAAa,OAAO,IAC5D,aAAa,UACb,OAAO,OAAO,EAAE,CAAC;EACrB,aAAa,mBAAmB,aAAa,8BAAc,IAAI,IAAI;EACnE,QAAQ,mBAAmB,iBAAiB;CAC9C,CAAC;CAGH,OAAO,EACL,MAAM,UAAyB;EAC7B,IAAI,OAAO,UAAU,KACnB,MAAM,OAAO,UAAU,MAAM,QAAQ,UAAU;EAGjD,IAAI,kBACF,UAAU,MAAM;OACX,IAAI,OAAO,SAEhB,OAAO,UAAU,OAAO;GACtB,GAAG;GACH,6BAAa,IAAI,IAAI;EACvB,EAAE;CAEN,EACF;AACF;AAEA,SAAgB,QAAQ,YAAmD;CACzE,MAAM,EAAE,UAAU,QAAQ,cAAc,mBAAmB,SAAS;CAEpE,MAAM,EAAE,YAAY,QAAQ,QAAQ;EAClC;EACA;CACF,CAAC;CAGD,IAAI,CAAC,OAAO,UAAU,KACpB,QAAQ;CAIV,MAAM,SAAS,OAAO,IAAI;CAE1B,gBAAgB;EACd,IAAI,CAAC,OAAO,SACV;EAEF,IAAI,CAAC,OAAO,UAAU,KACpB;EAEF,QAAQ;EACR,aAAa;GACX,OAAO,UAAU;EACnB;CACF,GAAG,CAAC,CAAC;CAEL,OAAO;AACT"}
@@ -1,5 +1,4 @@
1
1
  import { Config } from "@bigmi/client";
2
-
3
2
  //#region src/types.d.ts
4
3
  type Register = {};
5
4
  type ResolvedRegister = {
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","names":[],"sources":["../../src/types.ts"],"mappings":";;;KAGY,QAAA;AAAA,KACA,gBAAA;EACV,MAAA,EAAQ,QAAA;IAAmB,MAAA,uBAA6B,MAAA;EAAA,IACpD,MAAA,GACA,MAAA;AAAA"}
1
+ {"version":3,"file":"types.d.ts","names":[],"sources":["../../src/types.ts"],"mappings":";;KAGY;KACA;EACV,QAAQ;IAAmB,cAAc,eAAe;MACpD,SACA"}
@@ -1,6 +1,5 @@
1
1
  import { Compute, UnionStrictOmit } from "@bigmi/core";
2
2
  import { UseMutationOptions, UseMutationResult } from "@tanstack/react-query";
3
-
4
3
  //#region src/utils/query.d.ts
5
4
  type UseMutationParameters<data = unknown, error = Error, variables = void, context = unknown> = Compute<Omit<UseMutationOptions<data, error, Compute<variables>, context>, "mutationFn" | "mutationKey" | "throwOnError">>;
6
5
  type UseMutationReturnType<data = unknown, error = Error, variables = void, context = unknown> = Compute<UnionStrictOmit<UseMutationResult<data, error, variables, context>, "mutate" | "mutateAsync">>;
@@ -1 +1 @@
1
- {"version":3,"file":"query.d.ts","names":[],"sources":["../../../src/utils/query.ts"],"mappings":";;;;KAQY,qBAAA,yBAEF,KAAA,yCAGN,OAAA,CACF,IAAA,CACE,kBAAA,CAAmB,IAAA,EAAM,KAAA,EAAO,OAAA,CAAQ,SAAA,GAAY,OAAA;AAAA,KAK5C,qBAAA,yBAEF,KAAA,yCAGN,OAAA,CACF,eAAA,CACE,iBAAA,CAAkB,IAAA,EAAM,KAAA,EAAO,SAAA,EAAW,OAAA"}
1
+ {"version":3,"file":"query.d.ts","names":[],"sources":["../../../src/utils/query.ts"],"mappings":";;;KAQY,sBACV,gBACA,QAAQ,OACR,kBACA,qBACE,QACF,KACE,mBAAmB,MAAM,OAAO,QAAQ,YAAY;KAK5C,sBACV,gBACA,QAAQ,OACR,kBACA,qBACE,QACF,gBACE,kBAAkB,MAAM,OAAO,WAAW"}
@@ -1,6 +1,6 @@
1
1
  //#region src/version.d.ts
2
2
  declare const name = "@bigmi/react";
3
- declare const version = "0.8.1";
3
+ declare const version = "0.9.0";
4
4
  //#endregion
5
5
  export { name, version };
6
6
  //# sourceMappingURL=version.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"version.d.ts","names":[],"sources":["../../src/version.ts"],"mappings":";cAAa,IAAA;AAAA,cACA,OAAA"}
1
+ {"version":3,"file":"version.d.ts","names":[],"sources":["../../src/version.ts"],"mappings":";cAAa;cACA"}
@@ -1,6 +1,6 @@
1
1
  //#region src/version.ts
2
2
  const name = "@bigmi/react";
3
- const version = "0.8.1";
3
+ const version = "0.9.0";
4
4
  //#endregion
5
5
  export { name, version };
6
6
 
@@ -1 +1 @@
1
- {"version":3,"file":"version.js","names":[],"sources":["../../src/version.ts"],"sourcesContent":["export const name = '@bigmi/react'\nexport const version = '0.8.1'\n"],"mappings":";AAAA,MAAa,OAAO;AACpB,MAAa,UAAU"}
1
+ {"version":3,"file":"version.js","names":[],"sources":["../../src/version.ts"],"sourcesContent":["export const name = '@bigmi/react'\nexport const version = '0.9.0'\n"],"mappings":";AAAA,MAAa,OAAO;AACpB,MAAa,UAAU"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@bigmi/react",
3
- "version": "0.8.1",
3
+ "version": "0.9.0",
4
4
  "description": "React primitives for Bitcoin apps.",
5
5
  "type": "module",
6
6
  "main": "./dist/esm/index.js",
@@ -29,8 +29,8 @@
29
29
  "hooks"
30
30
  ],
31
31
  "dependencies": {
32
- "@bigmi/client": "0.8.1",
33
- "@bigmi/core": "0.8.1"
32
+ "@bigmi/client": "0.10.0",
33
+ "@bigmi/core": "0.9.0"
34
34
  },
35
35
  "peerDependencies": {
36
36
  "@tanstack/react-query": ">=5.68.0",
package/src/version.ts CHANGED
@@ -1,2 +1,2 @@
1
1
  export const name = '@bigmi/react'
2
- export const version = '0.8.1'
2
+ export const version = '0.9.0'