@layerswap/wallets 1.7.0-next.1 → 2.0.0-next.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 (39) hide show
  1. package/README.md +38 -33
  2. package/dist/esm/descriptors/bitcoin.js +34 -0
  3. package/dist/esm/descriptors/defineWalletDescriptor.js +17 -0
  4. package/dist/esm/descriptors/fuel.js +26 -0
  5. package/dist/esm/descriptors/imtblPassport.js +22 -0
  6. package/dist/esm/descriptors/paradex.js +32 -0
  7. package/dist/esm/descriptors/persistedSession.js +26 -0
  8. package/dist/esm/descriptors/starknet.js +32 -0
  9. package/dist/esm/descriptors/svm.js +39 -0
  10. package/dist/esm/descriptors/ton.js +29 -0
  11. package/dist/esm/descriptors/tron.js +24 -0
  12. package/dist/esm/eager/imtblPassport.js +8 -0
  13. package/dist/esm/index.js +57 -85
  14. package/dist/tsconfig.tsbuildinfo +1 -1
  15. package/dist/types/descriptors/bitcoin.d.ts +9 -0
  16. package/dist/types/descriptors/bitcoin.d.ts.map +1 -0
  17. package/dist/types/descriptors/defineWalletDescriptor.d.ts +26 -0
  18. package/dist/types/descriptors/defineWalletDescriptor.d.ts.map +1 -0
  19. package/dist/types/descriptors/fuel.d.ts +9 -0
  20. package/dist/types/descriptors/fuel.d.ts.map +1 -0
  21. package/dist/types/descriptors/imtblPassport.d.ts +12 -0
  22. package/dist/types/descriptors/imtblPassport.d.ts.map +1 -0
  23. package/dist/types/descriptors/paradex.d.ts +8 -0
  24. package/dist/types/descriptors/paradex.d.ts.map +1 -0
  25. package/dist/types/descriptors/persistedSession.d.ts +8 -0
  26. package/dist/types/descriptors/persistedSession.d.ts.map +1 -0
  27. package/dist/types/descriptors/starknet.d.ts +9 -0
  28. package/dist/types/descriptors/starknet.d.ts.map +1 -0
  29. package/dist/types/descriptors/svm.d.ts +11 -0
  30. package/dist/types/descriptors/svm.d.ts.map +1 -0
  31. package/dist/types/descriptors/ton.d.ts +11 -0
  32. package/dist/types/descriptors/ton.d.ts.map +1 -0
  33. package/dist/types/descriptors/tron.d.ts +10 -0
  34. package/dist/types/descriptors/tron.d.ts.map +1 -0
  35. package/dist/types/eager/imtblPassport.d.ts +3 -0
  36. package/dist/types/eager/imtblPassport.d.ts.map +1 -0
  37. package/dist/types/index.d.ts +28 -68
  38. package/dist/types/index.d.ts.map +1 -1
  39. package/package.json +18 -12
@@ -0,0 +1,9 @@
1
+ import type { WalletProviderDescriptor } from "@layerswap/wallet-core/types";
2
+ import { type DescriptorNetworkOptions } from "./defineWalletDescriptor";
3
+ /**
4
+ * Tree-shake-safe stand-in for `createBitcoinProvider`. Defers `bitcoinjs-lib`,
5
+ * `@bigmi/client`, `bn.js`, and `tweetnacl` — combined ~280 KB parsed /
6
+ * ~88 KB gzip — out of the host's entry chunk.
7
+ */
8
+ export declare function createBitcoinDescriptor(options?: DescriptorNetworkOptions): WalletProviderDescriptor;
9
+ //# sourceMappingURL=bitcoin.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bitcoin.d.ts","sourceRoot":"","sources":["../../../src/descriptors/bitcoin.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,8BAA8B,CAAA;AAC5E,OAAO,EAA0B,KAAK,wBAAwB,EAAE,MAAM,0BAA0B,CAAA;AAKhG;;;;GAIG;AACH,wBAAgB,uBAAuB,CAAC,OAAO,CAAC,EAAE,wBAAwB,GAAG,wBAAwB,CAyBpG"}
@@ -0,0 +1,26 @@
1
+ import type { WalletProvider, WalletProviderDescriptor, WalletWrapper } from "@layerswap/wallet-core/types";
2
+ import type { WalletProviderId } from "@layerswap/widget-types";
3
+ export type DescriptorNetworkOptions = {
4
+ supportedNetworks?: string[];
5
+ };
6
+ /**
7
+ * Identity helper that pins a default descriptor's `id` at the type level:
8
+ *
9
+ * 1. The id must be a member of the public `WalletProviderId` union in
10
+ * `@layerswap/widget-types` — the contract `walletProvidersConfig`'s
11
+ * `include`/`exclude` filters are typed against.
12
+ * 2. The provider returned by `loadProvider()` must declare the same literal
13
+ * id (chain packages type their factories as
14
+ * `WalletProvider & { id: typeof id }`), so the registry key cannot flip
15
+ * when a descriptor hydrates into its real provider.
16
+ *
17
+ * Either kind of drift is a compile error instead of a silently broken
18
+ * id-keyed lookup.
19
+ */
20
+ export declare function defineWalletDescriptor<Id extends WalletProviderId>(descriptor: Omit<WalletProviderDescriptor, 'id' | 'loadProvider'> & {
21
+ id: Id;
22
+ loadProvider: () => Promise<(WalletProvider | WalletWrapper) & {
23
+ id: NoInfer<Id>;
24
+ }>;
25
+ }): WalletProviderDescriptor;
26
+ //# sourceMappingURL=defineWalletDescriptor.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"defineWalletDescriptor.d.ts","sourceRoot":"","sources":["../../../src/descriptors/defineWalletDescriptor.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,wBAAwB,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAA;AAC3G,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAA;AAE/D,MAAM,MAAM,wBAAwB,GAAG;IACnC,iBAAiB,CAAC,EAAE,MAAM,EAAE,CAAA;CAC/B,CAAA;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,sBAAsB,CAAC,EAAE,SAAS,gBAAgB,EAC9D,UAAU,EAAE,IAAI,CAAC,wBAAwB,EAAE,IAAI,GAAG,cAAc,CAAC,GAAG;IAChE,EAAE,EAAE,EAAE,CAAA;IAGN,YAAY,EAAE,MAAM,OAAO,CAAC,CAAC,cAAc,GAAG,aAAa,CAAC,GAAG;QAAE,EAAE,EAAE,OAAO,CAAC,EAAE,CAAC,CAAA;KAAE,CAAC,CAAA;CACtF,GACF,wBAAwB,CAE1B"}
@@ -0,0 +1,9 @@
1
+ import type { WalletProviderDescriptor } from "@layerswap/wallet-core/types";
2
+ import { type DescriptorNetworkOptions } from "./defineWalletDescriptor";
3
+ /**
4
+ * Tree-shake-safe stand-in for `createFuelProvider`. Defers `@fuel-ts/*` +
5
+ * `@fuels/vm-asm` — ~373 KB parsed / ~116 KB gzip — out of the host's entry
6
+ * chunk.
7
+ */
8
+ export declare function createFuelDescriptor(options?: DescriptorNetworkOptions): WalletProviderDescriptor;
9
+ //# sourceMappingURL=fuel.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fuel.d.ts","sourceRoot":"","sources":["../../../src/descriptors/fuel.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,8BAA8B,CAAA;AAC5E,OAAO,EAA0B,KAAK,wBAAwB,EAAE,MAAM,0BAA0B,CAAA;AAKhG;;;;GAIG;AACH,wBAAgB,oBAAoB,CAAC,OAAO,CAAC,EAAE,wBAAwB,GAAG,wBAAwB,CAiBjG"}
@@ -0,0 +1,12 @@
1
+ import type { WalletProviderDescriptor } from "@layerswap/wallet-core/types";
2
+ import type { ImtblPassportConfig } from "@layerswap/wallet-imtbl-passport";
3
+ /**
4
+ * Tree-shake-safe stand-in for `createImmutablePassportProvider`. The factory
5
+ * is small, but running it imports `ImtblPassportService`, whose `@imtbl/sdk`
6
+ * chunks (~993 KB) then load eagerly on `/` — so defer the factory call
7
+ * itself. `/imtblRedirect` is unaffected (it imports the real factory
8
+ * directly). Empty network arrays are intentional: Passport authenticates and
9
+ * delegates to the EVM provider, so it's a connector, never a route source.
10
+ */
11
+ export declare function createImmutablePassportDescriptor(imtblPassportConfig: ImtblPassportConfig): WalletProviderDescriptor;
12
+ //# sourceMappingURL=imtblPassport.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"imtblPassport.d.ts","sourceRoot":"","sources":["../../../src/descriptors/imtblPassport.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,8BAA8B,CAAA;AAC5E,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,kCAAkC,CAAA;AAG3E;;;;;;;GAOG;AACH,wBAAgB,iCAAiC,CAAC,mBAAmB,EAAE,mBAAmB,GAAG,wBAAwB,CAYpH"}
@@ -0,0 +1,8 @@
1
+ import type { WalletProviderDescriptor } from "@layerswap/wallet-core/types";
2
+ import { type DescriptorNetworkOptions } from "./defineWalletDescriptor";
3
+ /**
4
+ * Tree-shake-safe stand-in for `createParadexProvider` — defers
5
+ * `@paradex/sdk` → `starknet` out of the host's entry chunk.
6
+ */
7
+ export declare function createParadexDescriptor(options?: DescriptorNetworkOptions): WalletProviderDescriptor;
8
+ //# sourceMappingURL=paradex.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"paradex.d.ts","sourceRoot":"","sources":["../../../src/descriptors/paradex.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,8BAA8B,CAAA;AAC5E,OAAO,EAA0B,KAAK,wBAAwB,EAAE,MAAM,0BAA0B,CAAA;AAQhG;;;GAGG;AACH,wBAAgB,uBAAuB,CAAC,OAAO,CAAC,EAAE,wBAAwB,GAAG,wBAAwB,CAuBpG"}
@@ -0,0 +1,8 @@
1
+ /**
2
+ * Probe helpers for descriptor `hasPersistedSession`. Storage-key literals
3
+ * are inlined at each call site — importing an SDK's key constant would drag
4
+ * in the SDK that descriptors exist to defer.
5
+ */
6
+ export declare function hasStorageKey(key: string): boolean;
7
+ export declare function readStorageJson(key: string): unknown;
8
+ //# sourceMappingURL=persistedSession.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"persistedSession.d.ts","sourceRoot":"","sources":["../../../src/descriptors/persistedSession.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,wBAAgB,aAAa,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAOlD;AAED,wBAAgB,eAAe,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAQpD"}
@@ -0,0 +1,9 @@
1
+ import type { WalletProviderDescriptor } from "@layerswap/wallet-core/types";
2
+ import { type DescriptorNetworkOptions } from "./defineWalletDescriptor";
3
+ /**
4
+ * Tree-shake-safe stand-in for `createStarknetProvider` — defers
5
+ * `@layerswap/wallet-starknet` (`starknet`, starknetkit) out of the host's
6
+ * entry chunk.
7
+ */
8
+ export declare function createStarknetDescriptor(options?: DescriptorNetworkOptions): WalletProviderDescriptor;
9
+ //# sourceMappingURL=starknet.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"starknet.d.ts","sourceRoot":"","sources":["../../../src/descriptors/starknet.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,8BAA8B,CAAA;AAC5E,OAAO,EAA0B,KAAK,wBAAwB,EAAE,MAAM,0BAA0B,CAAA;AAOhG;;;;GAIG;AACH,wBAAgB,wBAAwB,CAAC,OAAO,CAAC,EAAE,wBAAwB,GAAG,wBAAwB,CAuBrG"}
@@ -0,0 +1,11 @@
1
+ import type { WalletProviderDescriptor } from "@layerswap/wallet-core/types";
2
+ import type { WalletConnectConfig } from "@layerswap/wallet-evm";
3
+ import { type DescriptorNetworkOptions } from "./defineWalletDescriptor";
4
+ /**
5
+ * Tree-shake-safe stand-in for `createSVMProvider`. Defers the eager portion
6
+ * of `@solana/web3.js` (~142 KB parsed) and `@walletconnect` adapters dragged
7
+ * by `SolanaWalletConnectAdapter` (~138 KB parsed) out of the host's entry
8
+ * chunk.
9
+ */
10
+ export declare function createSVMDescriptor(walletConnectConfigs?: WalletConnectConfig, options?: DescriptorNetworkOptions): WalletProviderDescriptor;
11
+ //# sourceMappingURL=svm.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"svm.d.ts","sourceRoot":"","sources":["../../../src/descriptors/svm.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,8BAA8B,CAAA;AAE5E,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAA;AAChE,OAAO,EAA0B,KAAK,wBAAwB,EAAE,MAAM,0BAA0B,CAAA;AAUhG;;;;;GAKG;AACH,wBAAgB,mBAAmB,CAAC,oBAAoB,CAAC,EAAE,mBAAmB,EAAE,OAAO,CAAC,EAAE,wBAAwB,GAAG,wBAAwB,CAwB5I"}
@@ -0,0 +1,11 @@
1
+ import type { WalletProviderDescriptor } from "@layerswap/wallet-core/types";
2
+ import type { TonClientConfig } from "@layerswap/wallet-ton";
3
+ import { type DescriptorNetworkOptions } from "./defineWalletDescriptor";
4
+ /**
5
+ * Tree-shake-safe stand-in for `createTONProvider`. Defers `@tonconnect/sdk`
6
+ * + `@ton/*` (~404 KB parsed / 139 KB gzip on `apps/bridge`) out of the
7
+ * host's entry chunk. The TON wallet only appears when a tonConfigs is
8
+ * supplied, mirroring the previous conditional in `getDefaultProviders`.
9
+ */
10
+ export declare function createTONDescriptor(tonConfigs: TonClientConfig, options?: DescriptorNetworkOptions): WalletProviderDescriptor;
11
+ //# sourceMappingURL=ton.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ton.d.ts","sourceRoot":"","sources":["../../../src/descriptors/ton.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,8BAA8B,CAAA;AAC5E,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAA;AAC5D,OAAO,EAA0B,KAAK,wBAAwB,EAAE,MAAM,0BAA0B,CAAA;AAQhG;;;;;GAKG;AACH,wBAAgB,mBAAmB,CAAC,UAAU,EAAE,eAAe,EAAE,OAAO,CAAC,EAAE,wBAAwB,GAAG,wBAAwB,CAgB7H"}
@@ -0,0 +1,10 @@
1
+ import type { WalletProviderDescriptor } from "@layerswap/wallet-core/types";
2
+ import { type DescriptorNetworkOptions } from "./defineWalletDescriptor";
3
+ /**
4
+ * Tree-shake-safe stand-in for `createTronProvider`. Defers `tronweb` +
5
+ * `validator` (a transitive 125 KB dep of tronweb) + `bignumber.js` +
6
+ * `google-protobuf` schemas — ~775 KB parsed / ~165 KB gzip — out of the
7
+ * host's entry chunk.
8
+ */
9
+ export declare function createTronDescriptor(options?: DescriptorNetworkOptions): WalletProviderDescriptor;
10
+ //# sourceMappingURL=tron.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tron.d.ts","sourceRoot":"","sources":["../../../src/descriptors/tron.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,8BAA8B,CAAA;AAC5E,OAAO,EAA0B,KAAK,wBAAwB,EAAE,MAAM,0BAA0B,CAAA;AAKhG;;;;;GAKG;AACH,wBAAgB,oBAAoB,CAAC,OAAO,CAAC,EAAE,wBAAwB,GAAG,wBAAwB,CAcjG"}
@@ -0,0 +1,3 @@
1
+ export { createImmutablePassportProvider, imtblPassportLoginCallback, } from "@layerswap/wallet-imtbl-passport";
2
+ export type { ImmutablePassportProviderConfig, ImtblPassportConfig, } from "@layerswap/wallet-imtbl-passport";
3
+ //# sourceMappingURL=imtblPassport.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"imtblPassport.d.ts","sourceRoot":"","sources":["../../../src/eager/imtblPassport.ts"],"names":[],"mappings":"AAOA,OAAO,EACH,+BAA+B,EAC/B,0BAA0B,GAC7B,MAAM,kCAAkC,CAAC;AAC1C,YAAY,EACR,+BAA+B,EAC/B,mBAAmB,GACtB,MAAM,kCAAkC,CAAC"}
@@ -1,76 +1,42 @@
1
- import { createBitcoinProvider } from "@layerswap/wallet-bitcoin";
2
1
  import type { BitcoinProviderConfig } from "@layerswap/wallet-bitcoin";
3
- import { createEVMProvider, useChainConfigs } from "@layerswap/wallet-evm";
2
+ import { createBitcoinDescriptor } from "./descriptors/bitcoin";
3
+ import { createEVMProvider } from "@layerswap/wallet-evm";
4
4
  import type { EVMProviderConfig, WalletConnectConfig } from "@layerswap/wallet-evm";
5
- import { createFuelProvider } from "@layerswap/wallet-fuel";
6
5
  import type { FuelProviderConfig } from "@layerswap/wallet-fuel";
7
- import { createImmutablePassportProvider, ImtblRedirect } from "@layerswap/wallet-imtbl-passport";
6
+ import { createFuelDescriptor } from "./descriptors/fuel";
8
7
  import type { ImmutablePassportProviderConfig, ImtblPassportConfig } from "@layerswap/wallet-imtbl-passport";
9
- import { createParadexProvider } from "@layerswap/wallet-paradex";
8
+ import { createImmutablePassportDescriptor } from "./descriptors/imtblPassport";
10
9
  import type { ParadexProviderConfig } from "@layerswap/wallet-paradex";
11
- import { createStarknetProvider } from "@layerswap/wallet-starknet";
10
+ import { createParadexDescriptor } from "./descriptors/paradex";
12
11
  import type { StarknetProviderConfig } from "@layerswap/wallet-starknet";
13
- import { createSVMProvider } from "@layerswap/wallet-svm";
12
+ import { createStarknetDescriptor } from "./descriptors/starknet";
14
13
  import type { SVMProviderConfig } from "@layerswap/wallet-svm";
15
- import { createTONProvider } from "@layerswap/wallet-ton";
14
+ import { createSVMDescriptor } from "./descriptors/svm";
16
15
  import type { TONProviderConfig, TonClientConfig } from "@layerswap/wallet-ton";
17
- import { createTronProvider } from "@layerswap/wallet-tron";
16
+ import { createTONDescriptor } from "./descriptors/ton";
18
17
  import type { TronProviderConfig } from "@layerswap/wallet-tron";
19
- import { WalletProvider, WalletWrapper } from "@layerswap/widget/types";
20
- export { createBitcoinProvider };
18
+ import { createTronDescriptor } from "./descriptors/tron";
19
+ import { WalletProviderDescriptor, WalletProvider, WalletWrapper } from "@layerswap/wallet-core/types";
20
+ export { defineWalletDescriptor } from "./descriptors/defineWalletDescriptor";
21
+ export type { DescriptorNetworkOptions } from "./descriptors/defineWalletDescriptor";
22
+ export { createBitcoinDescriptor };
21
23
  export type { BitcoinProviderConfig };
22
- export { createEVMProvider, useChainConfigs };
24
+ export { createEVMProvider };
23
25
  export type { EVMProviderConfig, WalletConnectConfig };
24
- export { createFuelProvider };
26
+ export { createFuelDescriptor };
25
27
  export type { FuelProviderConfig };
26
- export { createImmutablePassportProvider, ImtblRedirect };
28
+ export { createImmutablePassportDescriptor };
27
29
  export type { ImmutablePassportProviderConfig, ImtblPassportConfig };
28
- export { createParadexProvider };
30
+ export { createParadexDescriptor };
29
31
  export type { ParadexProviderConfig };
30
- export { createStarknetProvider };
32
+ export { createStarknetDescriptor };
31
33
  export type { StarknetProviderConfig };
32
- export { createSVMProvider };
34
+ export { createSVMDescriptor };
33
35
  export type { SVMProviderConfig };
34
- export { createTONProvider };
36
+ export { createTONDescriptor };
35
37
  export type { TONProviderConfig, TonClientConfig };
36
- export { createTronProvider };
38
+ export { createTronDescriptor };
37
39
  export type { TronProviderConfig };
38
- /**
39
- * @deprecated Use createBitcoinProvider() instead. This export will be removed in a future version.
40
- */
41
- export { BitcoinProvider } from "@layerswap/wallet-bitcoin";
42
- /**
43
- * @deprecated Use createEVMProvider() instead. This export will be removed in a future version.
44
- */
45
- export { EVMProvider } from "@layerswap/wallet-evm";
46
- /**
47
- * @deprecated Use createFuelProvider() instead. This export will be removed in a future version.
48
- */
49
- export { FuelProvider } from "@layerswap/wallet-fuel";
50
- /**
51
- * @deprecated Use createImmutablePassportProvider() instead. This export will be removed in a future version.
52
- */
53
- export { ImtblPassportProvider } from "@layerswap/wallet-imtbl-passport";
54
- /**
55
- * @deprecated Use createParadexProvider() instead. This export will be removed in a future version.
56
- */
57
- export { ParadexProvider } from "@layerswap/wallet-paradex";
58
- /**
59
- * @deprecated Use createStarknetProvider() instead. This export will be removed in a future version.
60
- */
61
- export { StarknetProvider } from "@layerswap/wallet-starknet";
62
- /**
63
- * @deprecated Use createSVMProvider() instead. This export will be removed in a future version.
64
- */
65
- export { SVMProvider } from "@layerswap/wallet-svm";
66
- /**
67
- * @deprecated Use createTONProvider() instead. This export will be removed in a future version.
68
- */
69
- export { TONProvider } from "@layerswap/wallet-ton";
70
- /**
71
- * @deprecated Use createTronProvider() instead. This export will be removed in a future version.
72
- */
73
- export { TronProvider } from "@layerswap/wallet-tron";
74
40
  /**
75
41
  * Configuration options for getDefaultProviders function
76
42
  */
@@ -82,20 +48,14 @@ export type DefaultWalletConfig = {
82
48
  /**
83
49
  * Creates and returns a default configuration of all wallet providers.
84
50
  *
85
- * This function provides a convenient way to instantiate all supported wallet providers
86
- * with a single function call. Providers are configured based on the options provided:
87
- *
88
- * - **EVM, Starknet, SVM**: Use WalletConnect configuration if provided, with fallback to undefined
89
- * - **TON**: Always included, uses provided configuration or undefined as fallback
90
- * - **Immutable Passport**: Included only if Immutable Passport configuration is provided
91
- * - **Bitcoin, Fuel, Tron, Paradex, ImmutableX**: Always included (no configuration required)
92
- * - **EVM**: Includes zkSync and Loopring modules by default
51
+ * Only EVM (and Immutable Passport, when configured) is wired eagerly. Every
52
+ * other chain ships as a `WalletProviderDescriptor` the real SDK is
53
+ * dynamic-imported on first connect-modal open. This keeps starknet,
54
+ * @paradex/sdk, @ton/*, @tonconnect/sdk, @fuel-ts/*, @solana/web3.js,
55
+ * tronweb (+ its transitive `validator`/`bignumber.js`), bitcoinjs-lib,
56
+ * @bigmi, and the connector adapters out of the host's entry chunk.
93
57
  *
94
58
  * @param config - Configuration options for the wallet providers
95
- * @param config.walletConnect - Optional WalletConnect configuration (projectId, name, description, url, icons)
96
- * @param config.ton - Optional TON client configuration (tonApiKey, manifestUrl)
97
- * @param config.immutablePassport - Optional Immutable Passport configuration (publishableKey, clientId, redirectUri, logoutRedirectUri)
98
- *
99
59
  * @returns Array of configured wallet providers ready to be passed to LayerswapProvider
100
60
  *
101
61
  * @example
@@ -126,5 +86,5 @@ export type DefaultWalletConfig = {
126
86
  * }
127
87
  * ```
128
88
  */
129
- export declare function getDefaultProviders(config?: DefaultWalletConfig): (WalletWrapper | WalletProvider)[];
89
+ export declare function getDefaultProviders(config?: DefaultWalletConfig): (WalletProviderDescriptor | WalletWrapper | WalletProvider)[];
130
90
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,2BAA2B,CAAC;AACvE,OAAO,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAC;AAEhE,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAC1D,OAAO,KAAK,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAEpF,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AACjE,OAAO,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAe1D,OAAO,KAAK,EAAE,+BAA+B,EAAE,mBAAmB,EAAE,MAAM,kCAAkC,CAAC;AAC7G,OAAO,EAAE,iCAAiC,EAAE,MAAM,6BAA6B,CAAC;AAEhF,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,2BAA2B,CAAC;AACvE,OAAO,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAC;AAEhE,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAC;AACzE,OAAO,EAAE,wBAAwB,EAAE,MAAM,wBAAwB,CAAC;AAElE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAC/D,OAAO,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAExD,OAAO,KAAK,EAAE,iBAAiB,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAChF,OAAO,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAExD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AACjE,OAAO,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAE1D,OAAO,EAAE,wBAAwB,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAA;AAEtG,OAAO,EAAE,sBAAsB,EAAE,MAAM,sCAAsC,CAAC;AAC9E,YAAY,EAAE,wBAAwB,EAAE,MAAM,sCAAsC,CAAC;AAErF,OAAO,EAAE,uBAAuB,EAAE,CAAC;AACnC,YAAY,EAAE,qBAAqB,EAAE,CAAC;AAEtC,OAAO,EAAE,iBAAiB,EAAE,CAAC;AAC7B,YAAY,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,CAAC;AAEvD,OAAO,EAAE,oBAAoB,EAAE,CAAC;AAChC,YAAY,EAAE,kBAAkB,EAAE,CAAC;AAEnC,OAAO,EAAE,iCAAiC,EAAE,CAAC;AAC7C,YAAY,EAAE,+BAA+B,EAAE,mBAAmB,EAAE,CAAC;AAIrE,OAAO,EAAE,uBAAuB,EAAE,CAAC;AACnC,YAAY,EAAE,qBAAqB,EAAE,CAAC;AAEtC,OAAO,EAAE,wBAAwB,EAAE,CAAC;AACpC,YAAY,EAAE,sBAAsB,EAAE,CAAC;AAEvC,OAAO,EAAE,mBAAmB,EAAE,CAAC;AAC/B,YAAY,EAAE,iBAAiB,EAAE,CAAC;AAElC,OAAO,EAAE,mBAAmB,EAAE,CAAC;AAC/B,YAAY,EAAE,iBAAiB,EAAE,eAAe,EAAE,CAAC;AAEnD,OAAO,EAAE,oBAAoB,EAAE,CAAC;AAChC,YAAY,EAAE,kBAAkB,EAAE,CAAC;AAEnC;;GAEG;AACH,MAAM,MAAM,mBAAmB,GAAG;IAC9B,aAAa,CAAC,EAAE,mBAAmB,CAAA;IACnC,GAAG,CAAC,EAAE,eAAe,CAAA;IACrB,iBAAiB,CAAC,EAAE,mBAAmB,CAAA;CAC1C,CAAA;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAwCG;AACH,wBAAgB,mBAAmB,CAAC,MAAM,GAAE,mBAAwB,iEAgCnE"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@layerswap/wallets",
3
- "version": "1.7.0-next.1",
3
+ "version": "2.0.0-next.0",
4
4
  "description": "All Layerswap Wallet Providers bundled together",
5
5
  "type": "module",
6
6
  "main": "dist/esm/index.js",
@@ -10,6 +10,10 @@
10
10
  ".": {
11
11
  "types": "./dist/types/index.d.ts",
12
12
  "default": "./dist/esm/index.js"
13
+ },
14
+ "./eager/imtbl-passport": {
15
+ "types": "./dist/types/eager/imtblPassport.d.ts",
16
+ "default": "./dist/esm/eager/imtblPassport.js"
13
17
  }
14
18
  },
15
19
  "sideEffects": false,
@@ -32,15 +36,16 @@
32
36
  ],
33
37
  "license": "MIT",
34
38
  "dependencies": {
35
- "@layerswap/wallet-imtbl-passport": "^1.7.0-next.1",
36
- "@layerswap/wallet-paradex": "^1.7.0-next.1",
37
- "@layerswap/wallet-fuel": "^1.7.0-next.1",
38
- "@layerswap/wallet-starknet": "^1.7.0-next.1",
39
- "@layerswap/wallet-bitcoin": "^1.7.0-next.1",
40
- "@layerswap/wallet-evm": "^1.7.0-next.1",
41
- "@layerswap/wallet-tron": "^1.7.0-next.1",
42
- "@layerswap/wallet-svm": "^1.7.0-next.1",
43
- "@layerswap/wallet-ton": "^1.7.0-next.1"
39
+ "@layerswap/wallet-bitcoin": "^2.0.0-next.0",
40
+ "@layerswap/wallet-fuel": "^2.0.0-next.0",
41
+ "@layerswap/wallet-paradex": "^2.0.0-next.0",
42
+ "@layerswap/wallet-evm": "^2.0.0-next.0",
43
+ "@layerswap/wallet-imtbl-passport": "^2.0.0-next.0",
44
+ "@layerswap/wallet-starknet": "^2.0.0-next.0",
45
+ "@layerswap/wallet-tron": "^2.0.0-next.0",
46
+ "@layerswap/wallet-ton": "^2.0.0-next.0",
47
+ "@layerswap/wallet-svm": "^2.0.0-next.0",
48
+ "@layerswap/widget-types": "^1.0.0-next.0"
44
49
  },
45
50
  "peerDependencies": {
46
51
  "@tanstack/react-query": "5.90.11",
@@ -48,7 +53,7 @@
48
53
  "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0.0 || ^19.0.0-rc",
49
54
  "viem": "^2.21.16",
50
55
  "wagmi": "2.14.11",
51
- "@layerswap/widget": "^1.7.0-next.1"
56
+ "@layerswap/wallet-core": "^2.0.0-next.0"
52
57
  },
53
58
  "engines": {
54
59
  "node": ">=22"
@@ -57,11 +62,12 @@
57
62
  "url": "https://github.com/layerswap/layerswapapp/issues"
58
63
  },
59
64
  "devDependencies": {
60
- "@layerswap/widget": "^1.7.0-next.1"
65
+ "@layerswap/wallet-core": "^2.0.0-next.0"
61
66
  },
62
67
  "scripts": {
63
68
  "build": "pnpm run clean && pnpm run build:esm+types",
64
69
  "build:esm+types": "tsc --project tsconfig.json --rootDir ./src --outDir ./dist/esm --declaration --declarationMap --declarationDir ./dist/types && tsc-alias -p tsconfig.json --outDir ./dist/esm && tsc-alias -p tsconfig.json --outDir ./dist/types",
70
+ "dev": "tsc-watch -p tsconfig.json --outDir ./dist/esm --onSuccess \"tsc-alias -p tsconfig.json --outDir ./dist/esm\"",
65
71
  "check:types": "tsc --noEmit",
66
72
  "clean": "rimraf dist tsconfig.tsbuildinfo"
67
73
  }