@dynamic-labs/multi-wallet 0.16.0-RC.1 → 0.16.0-RC.11

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 (120) hide show
  1. package/CHANGELOG.md +172 -0
  2. package/package.json +11 -6
  3. package/src/index.d.ts +4 -4
  4. package/src/index.js +8 -7
  5. package/src/index.js.map +1 -1
  6. package/src/multi-wallet.d.ts +1 -0
  7. package/src/multi-wallet.js +59 -51
  8. package/src/multi-wallet.js.map +1 -1
  9. package/src/types.d.ts +23 -41
  10. package/src/utils/CancellablePromise/CancellablePromise.d.ts +9 -0
  11. package/src/utils/CancellablePromise/CancellablePromise.js +32 -0
  12. package/src/utils/CancellablePromise/CancellablePromise.js.map +1 -0
  13. package/src/utils/CancellablePromise/index.d.ts +1 -0
  14. package/src/utils/CancellablePromise/index.js +6 -0
  15. package/src/utils/CancellablePromise/index.js.map +1 -0
  16. package/src/utils/assignConfirmationScreenToProvider/assignConfirmationScreenToProvider.js +44 -14
  17. package/src/utils/assignConfirmationScreenToProvider/assignConfirmationScreenToProvider.js.map +1 -1
  18. package/src/utils/getChainInfo/getChainInfo.d.ts +2 -0
  19. package/src/utils/getChainInfo/getChainInfo.js +58 -0
  20. package/src/utils/getChainInfo/getChainInfo.js.map +1 -0
  21. package/src/utils/getChainInfo/index.d.ts +1 -0
  22. package/src/utils/getChainInfo/index.js +6 -0
  23. package/src/utils/getChainInfo/index.js.map +1 -0
  24. package/src/utils/isEmailOTPWalletConnector/index.d.ts +1 -0
  25. package/src/utils/isEmailOTPWalletConnector/index.js +6 -0
  26. package/src/utils/isEmailOTPWalletConnector/index.js.map +1 -0
  27. package/src/utils/isEmailOTPWalletConnector/isEmailOTPWalletConnector.d.ts +2 -0
  28. package/src/utils/isEmailOTPWalletConnector/isEmailOTPWalletConnector.js +6 -0
  29. package/src/utils/isEmailOTPWalletConnector/isEmailOTPWalletConnector.js.map +1 -0
  30. package/src/utils/isFunction/index.d.ts +1 -0
  31. package/src/utils/isFunction/index.js +6 -0
  32. package/src/utils/isFunction/index.js.map +1 -0
  33. package/src/utils/isFunction/isFunction.d.ts +1 -0
  34. package/src/utils/isFunction/isFunction.js +7 -0
  35. package/src/utils/isFunction/isFunction.js.map +1 -0
  36. package/src/utils/message.d.ts +2 -1
  37. package/src/utils/message.js +7 -10
  38. package/src/utils/message.js.map +1 -1
  39. package/src/utils/walletConnect.d.ts +1 -4
  40. package/src/utils/walletConnect.js +15 -15
  41. package/src/utils/walletConnect.js.map +1 -1
  42. package/src/wallets/algorand/myalgo.d.ts +1 -0
  43. package/src/wallets/algorand/myalgo.js +3 -0
  44. package/src/wallets/algorand/myalgo.js.map +1 -1
  45. package/src/wallets/clients/walletConnect/walletConnect.d.ts +4 -4
  46. package/src/wallets/clients/walletConnect/walletConnect.js +5 -4
  47. package/src/wallets/clients/walletConnect/walletConnect.js.map +1 -1
  48. package/src/wallets/cosmos/getKeplrConnector.d.ts +6 -0
  49. package/src/wallets/cosmos/getKeplrConnector.js +17 -0
  50. package/src/wallets/cosmos/getKeplrConnector.js.map +1 -0
  51. package/src/wallets/cosmos/index.d.ts +1 -0
  52. package/src/wallets/cosmos/index.js +6 -0
  53. package/src/wallets/cosmos/index.js.map +1 -0
  54. package/src/wallets/cosmos/keplr.d.ts +99 -0
  55. package/src/wallets/cosmos/keplr.js +210 -0
  56. package/src/wallets/cosmos/keplr.js.map +1 -0
  57. package/src/wallets/cosmos/keplrWalletConnect.d.ts +8 -0
  58. package/src/wallets/cosmos/keplrWalletConnect.js +11 -0
  59. package/src/wallets/cosmos/keplrWalletConnect.js.map +1 -0
  60. package/src/wallets/ethereum/MagicConnector/EmailMagicWalletConnector/EmailMagicWalletConnector.d.ts +12 -0
  61. package/src/wallets/ethereum/MagicConnector/EmailMagicWalletConnector/EmailMagicWalletConnector.js +56 -0
  62. package/src/wallets/ethereum/MagicConnector/EmailMagicWalletConnector/EmailMagicWalletConnector.js.map +1 -0
  63. package/src/wallets/ethereum/MagicConnector/EmailMagicWalletConnector/index.d.ts +1 -0
  64. package/src/wallets/ethereum/MagicConnector/EmailMagicWalletConnector/index.js +6 -0
  65. package/src/wallets/ethereum/MagicConnector/EmailMagicWalletConnector/index.js.map +1 -0
  66. package/src/wallets/ethereum/MagicConnector/EmailOTPMagicWalletConnector/EmailOTPMagicWalletConnector.d.ts +12 -0
  67. package/src/wallets/ethereum/MagicConnector/EmailOTPMagicWalletConnector/EmailOTPMagicWalletConnector.js +55 -0
  68. package/src/wallets/ethereum/MagicConnector/EmailOTPMagicWalletConnector/EmailOTPMagicWalletConnector.js.map +1 -0
  69. package/src/wallets/ethereum/MagicConnector/EmailOTPMagicWalletConnector/index.d.ts +1 -0
  70. package/src/wallets/ethereum/MagicConnector/EmailOTPMagicWalletConnector/index.js +6 -0
  71. package/src/wallets/ethereum/MagicConnector/EmailOTPMagicWalletConnector/index.js.map +1 -0
  72. package/src/wallets/ethereum/MagicConnector/MagicWalletConnector/MagicWalletConnector.d.ts +63 -0
  73. package/src/wallets/ethereum/{MagicLink.js → MagicConnector/MagicWalletConnector/MagicWalletConnector.js} +79 -63
  74. package/src/wallets/ethereum/MagicConnector/MagicWalletConnector/MagicWalletConnector.js.map +1 -0
  75. package/src/wallets/ethereum/MagicConnector/MagicWalletConnector/index.d.ts +2 -0
  76. package/src/wallets/ethereum/MagicConnector/MagicWalletConnector/index.js +6 -0
  77. package/src/wallets/ethereum/MagicConnector/MagicWalletConnector/index.js.map +1 -0
  78. package/src/wallets/ethereum/MagicConnector/index.d.ts +3 -0
  79. package/src/wallets/ethereum/MagicConnector/index.js +7 -0
  80. package/src/wallets/ethereum/MagicConnector/index.js.map +1 -0
  81. package/src/wallets/ethereum/ethProvider.d.ts +1 -0
  82. package/src/wallets/ethereum/ethProvider.js +4 -0
  83. package/src/wallets/ethereum/ethProvider.js.map +1 -1
  84. package/src/wallets/ethereum/ethProviderHelper.d.ts +1 -1
  85. package/src/wallets/ethereum/ethProviderHelper.js +18 -11
  86. package/src/wallets/ethereum/ethProviderHelper.js.map +1 -1
  87. package/src/wallets/ethereum/evm-network.d.ts +2 -0
  88. package/src/wallets/ethereum/evm-network.js.map +1 -1
  89. package/src/wallets/ethereum/injected/Dawn.d.ts +6 -0
  90. package/src/wallets/ethereum/injected/Dawn.js +13 -0
  91. package/src/wallets/ethereum/injected/Dawn.js.map +1 -0
  92. package/src/wallets/flow/flow-provider.d.ts +1 -0
  93. package/src/wallets/flow/flow-provider.js +3 -0
  94. package/src/wallets/flow/flow-provider.js.map +1 -1
  95. package/src/wallets/solana/solProvider.d.ts +1 -0
  96. package/src/wallets/solana/solProvider.js +4 -0
  97. package/src/wallets/solana/solProvider.js.map +1 -1
  98. package/src/wallets/starknet/braavos.d.ts +2 -1
  99. package/src/wallets/starknet/braavos.js +21 -0
  100. package/src/wallets/starknet/braavos.js.map +1 -1
  101. package/src/wallets/starknet/starknetProvider.d.ts +1 -0
  102. package/src/wallets/starknet/starknetProvider.js +3 -0
  103. package/src/wallets/starknet/starknetProvider.js.map +1 -1
  104. package/src/wallets/walletConnect/walletConnect.d.ts +1 -0
  105. package/src/wallets/walletConnect/walletConnect.js +19 -9
  106. package/src/wallets/walletConnect/walletConnect.js.map +1 -1
  107. package/src/wallets/walletConnect/walletConnectV2.d.ts +1 -0
  108. package/src/wallets/walletConnect/walletConnectV2.js +17 -7
  109. package/src/wallets/walletConnect/walletConnectV2.js.map +1 -1
  110. package/src/wallets/window.d.ts +9 -1
  111. package/src/data/wallet-connect-wallets.json +0 -9926
  112. package/src/data/wallet-links.json +0 -3912
  113. package/src/fixtures.d.ts +0 -11
  114. package/src/fixtures.js +0 -67
  115. package/src/fixtures.js.map +0 -1
  116. package/src/utils/walletLinks.d.ts +0 -13
  117. package/src/utils/walletLinks.js +0 -12
  118. package/src/utils/walletLinks.js.map +0 -1
  119. package/src/wallets/ethereum/MagicLink.d.ts +0 -48
  120. package/src/wallets/ethereum/MagicLink.js.map +0 -1
package/src/fixtures.d.ts DELETED
@@ -1,11 +0,0 @@
1
- import { WalletConnectWalletMetadata } from './types';
2
- import { WalletLinks } from './utils/walletLinks';
3
- type Primitive = string | number | boolean | null | undefined;
4
- type DeepPartial<T> = {
5
- [P in keyof T]?: T[P] extends Primitive ? T[P] : DeepPartial<T[P]>;
6
- };
7
- export declare const defaultWalletLinks: WalletLinks;
8
- export declare const createWalletLinks: (overrides?: DeepPartial<WalletLinks>) => WalletLinks;
9
- export declare const defaultWalletConnectMetadata: WalletConnectWalletMetadata;
10
- export declare const createWalletConnectWalletMetadata: (overrides?: DeepPartial<WalletConnectWalletMetadata>) => WalletConnectWalletMetadata;
11
- export {};
package/src/fixtures.js DELETED
@@ -1,67 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.createWalletConnectWalletMetadata = exports.defaultWalletConnectMetadata = exports.createWalletLinks = exports.defaultWalletLinks = void 0;
4
- exports.defaultWalletLinks = {
5
- desktop: {
6
- brave: '',
7
- chrome: '',
8
- edge: '',
9
- firefox: '',
10
- safari: '',
11
- },
12
- mobile: {
13
- android: '',
14
- disabled: false,
15
- ios: '',
16
- },
17
- };
18
- const createWalletLinks = (overrides = {}) => (Object.assign(Object.assign(Object.assign({}, exports.defaultWalletLinks), overrides), { desktop: Object.assign(Object.assign({}, exports.defaultWalletLinks.desktop), overrides.desktop), mobile: Object.assign(Object.assign({}, exports.defaultWalletLinks.mobile), overrides.mobile) }));
19
- exports.createWalletLinks = createWalletLinks;
20
- exports.defaultWalletConnectMetadata = {
21
- app: {
22
- android: null,
23
- browser: null,
24
- ios: null,
25
- linux: null,
26
- mac: null,
27
- windows: null,
28
- },
29
- app_type: '',
30
- chains: [],
31
- description: null,
32
- desktop: {
33
- native: null,
34
- universal: null,
35
- },
36
- homepage: '',
37
- id: '',
38
- image_id: '',
39
- image_url: {
40
- lg: '',
41
- md: '',
42
- sm: '',
43
- },
44
- metadata: {
45
- colors: {
46
- primary: null,
47
- secondary: null,
48
- },
49
- shortName: null,
50
- },
51
- mobile: {
52
- native: '',
53
- universal: '',
54
- },
55
- name: '',
56
- sdks: ['sign_v1'],
57
- versions: [],
58
- };
59
- const createWalletConnectWalletMetadata = (overrides = {}) => {
60
- var _a, _b, _c, _d, _e, _f, _g;
61
- return (Object.assign(Object.assign(Object.assign({}, exports.defaultWalletConnectMetadata), overrides), { app: Object.assign(Object.assign({}, exports.defaultWalletConnectMetadata.app), overrides.app), chains: (_b = (_a = overrides.chains) === null || _a === void 0 ? void 0 : _a.filter((chain) => chain !== undefined)) !== null && _b !== void 0 ? _b : exports.defaultWalletConnectMetadata.chains, desktop: Object.assign(Object.assign({}, exports.defaultWalletConnectMetadata.desktop), overrides.desktop), image_url: Object.assign(Object.assign({}, exports.defaultWalletConnectMetadata.image_url), overrides.image_url), metadata: Object.assign(Object.assign(Object.assign({}, exports.defaultWalletConnectMetadata.metadata), overrides.metadata), { colors: Object.assign(Object.assign({}, exports.defaultWalletConnectMetadata.metadata.colors), (_c = overrides.metadata) === null || _c === void 0 ? void 0 : _c.colors) }), mobile: Object.assign(Object.assign({}, exports.defaultWalletConnectMetadata.mobile), overrides.mobile), sdks: [
62
- ...exports.defaultWalletConnectMetadata.sdks,
63
- ...((_e = (_d = overrides.sdks) === null || _d === void 0 ? void 0 : _d.filter((sdk) => sdk !== undefined)) !== null && _e !== void 0 ? _e : []),
64
- ], versions: (_g = (_f = overrides.versions) === null || _f === void 0 ? void 0 : _f.filter((version) => version !== undefined)) !== null && _g !== void 0 ? _g : exports.defaultWalletConnectMetadata.versions }));
65
- };
66
- exports.createWalletConnectWalletMetadata = createWalletConnectWalletMetadata;
67
- //# sourceMappingURL=fixtures.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"fixtures.js","sourceRoot":"","sources":["../../../../packages/multi-wallet/src/fixtures.ts"],"names":[],"mappings":"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"}
@@ -1,13 +0,0 @@
1
- export type BrowserName = 'brave' | 'chrome' | 'edge' | 'firefox' | 'safari';
2
- export interface WalletLinks {
3
- desktop: Record<BrowserName, string>;
4
- mobile: {
5
- android: string;
6
- disabled: boolean;
7
- ios: string;
8
- };
9
- showOnlyIfInstalled?: boolean;
10
- switchNetworkOnlyFromWallet?: boolean;
11
- }
12
- export type WalletLinksJson = Record<string, WalletLinks>;
13
- export declare const getWalletLinks: (walletName: string) => WalletLinks;
@@ -1,12 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getWalletLinks = void 0;
4
- const tslib_1 = require("tslib");
5
- const wallet_links_json_1 = tslib_1.__importDefault(require("../data/wallet-links.json"));
6
- const normalizeWalletName_1 = require("./normalizeWalletName");
7
- const getWalletLinks = (walletName) => {
8
- const json = wallet_links_json_1.default;
9
- return json[(0, normalizeWalletName_1.normalizeWalletName)(walletName)];
10
- };
11
- exports.getWalletLinks = getWalletLinks;
12
- //# sourceMappingURL=walletLinks.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"walletLinks.js","sourceRoot":"","sources":["../../../../../packages/multi-wallet/src/utils/walletLinks.ts"],"names":[],"mappings":";;;;AAAA,0FAAwD;AAExD,+DAA4D;AAiBrD,MAAM,cAAc,GAAG,CAAC,UAAkB,EAAe,EAAE;IAChE,MAAM,IAAI,GAAoB,2BAAe,CAAC;IAC9C,OAAO,IAAI,CAAC,IAAA,yCAAmB,EAAC,UAAU,CAAC,CAAC,CAAC;AAC/C,CAAC,CAAC;AAHW,QAAA,cAAc,kBAGzB"}
@@ -1,48 +0,0 @@
1
- import { Magic as MagicClient, MagicUserMetadata } from 'magic-sdk';
2
- import { ethers } from 'ethers';
3
- import { Chain, EmailWalletConnector } from '@dynamic-labs/wallet-connector-core';
4
- import { WalletUiUtils } from '../../types';
5
- import { EvmNetwork } from './evm-network';
6
- export declare class MagicConnector implements EmailWalletConnector {
7
- canConnectViaCustodialService: boolean;
8
- canConnectViaQrCode: boolean;
9
- connectedChain: Chain;
10
- supportedChains: Chain[];
11
- isWalletConnect: boolean;
12
- name: string;
13
- canConnectViaEmail: boolean;
14
- switchNetworkOnlyFromWallet?: boolean;
15
- evmNetworks: EvmNetwork[];
16
- _apiKey: string;
17
- _email: string | undefined;
18
- _magicSdk: MagicClient | undefined;
19
- _walletUiUtils: WalletUiUtils;
20
- _provider: ethers.providers.Web3Provider | undefined;
21
- constructor({ apiKey, walletUiUtils, evmNetworks, }: {
22
- apiKey: string;
23
- evmNetworks: EvmNetwork[];
24
- walletUiUtils: WalletUiUtils;
25
- });
26
- get key(): string;
27
- _getClient(): Promise<MagicClient<import("magic-sdk").MagicSDKExtensionsOption<string>>>;
28
- get email(): string | undefined;
29
- setEmail(email: string): void;
30
- connect(): Promise<void>;
31
- endSession?(): Promise<void>;
32
- isLoggedIn(): Promise<boolean>;
33
- getUserMetadata(): Promise<MagicUserMetadata | undefined>;
34
- fetchPublicAddress(): Promise<string | undefined>;
35
- getBalance(): Promise<string | undefined>;
36
- getConnectedAccounts(): Promise<string[]>;
37
- getNetwork(): Promise<number | undefined>;
38
- getRpcProvider(): Promise<void | ethers.providers.JsonRpcProvider | undefined>;
39
- getSigner(): Promise<ethers.providers.JsonRpcSigner | undefined>;
40
- getWeb3Provider(): Promise<ethers.providers.Web3Provider>;
41
- isInstalledOnBrowser(): boolean;
42
- proveOwnership(messageToSign: string): Promise<string | undefined>;
43
- setupEventListeners(): void;
44
- signMessage(messageToSign: string): Promise<string | undefined>;
45
- supportsNetworkSwitching(): boolean;
46
- switchNetwork(): Promise<void>;
47
- teardownEventListeners(): void;
48
- }
@@ -1 +0,0 @@
1
- {"version":3,"file":"MagicLink.js","sourceRoot":"","sources":["../../../../../../packages/multi-wallet/src/wallets/ethereum/MagicLink.ts"],"names":[],"mappings":"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"}