@rango-dev/wallets-core 0.1.11-next.69

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.
@@ -0,0 +1,20 @@
1
+ import { Network, WalletType, BlockchainMeta } from '@rango-dev/wallets-shared';
2
+ import { State, WalletProvider, WalletProviders } from './types';
3
+ import { Options, State as WalletState } from './wallet';
4
+ export declare function choose(wallets: any[], type: WalletType): any | null;
5
+ export declare const defaultWalletState: WalletState;
6
+ export declare function state_reducer(state: State, action: any): State;
7
+ export declare function formatAddressWithNetwork(address: string, network?: Network | null): string;
8
+ export declare function accountAddressesWithNetwork(addresses: string[] | null, network?: Network | null): string[];
9
+ export declare function readAccountAddress(addressWithNetwork: string): {
10
+ address: string;
11
+ network: Network;
12
+ };
13
+ export declare function connectedWallets(providersState: State): WalletType[];
14
+ export declare function availableWallets(providersState: State): WalletType[];
15
+ export declare function checkWalletProviders(list: WalletProvider[]): WalletProviders;
16
+ export declare function isAsync(fn: Function): boolean;
17
+ export declare function needsCheckInstallation(options: Options): boolean;
18
+ export declare function isWalletDerivedFromWalletConnect(wallet_type: WalletType): boolean;
19
+ export declare function getComptaibleProvider(supportedChains: BlockchainMeta[], provider: any, type: WalletType): any;
20
+ //# sourceMappingURL=helpers.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["src/helpers.ts"],"names":[],"mappings":"AACA,OAAO,EAGL,OAAO,EACP,UAAU,EAEV,cAAc,EACf,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAAE,KAAK,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AACjE,OAAO,EAAE,OAAO,EAAE,KAAK,IAAI,WAAW,EAAE,MAAM,UAAU,CAAC;AAEzD,wBAAgB,MAAM,CAAC,OAAO,EAAE,GAAG,EAAE,EAAE,IAAI,EAAE,UAAU,GAAG,GAAG,GAAG,IAAI,CAEnE;AAED,eAAO,MAAM,kBAAkB,EAAE,WAOhC,CAAC;AAEF,wBAAgB,aAAa,CAAC,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,SA0BtD;AAED,wBAAgB,wBAAwB,CACtC,OAAO,EAAE,MAAM,EACf,OAAO,CAAC,EAAE,OAAO,GAAG,IAAI,UAGzB;AAED,wBAAgB,2BAA2B,CACzC,SAAS,EAAE,MAAM,EAAE,GAAG,IAAI,EAC1B,OAAO,CAAC,EAAE,OAAO,GAAG,IAAI,YAOzB;AAED,wBAAgB,kBAAkB,CAAC,kBAAkB,EAAE,MAAM,GAAG;IAC9D,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,OAAO,CAAC;CAClB,CAOA;AAED,wBAAgB,gBAAgB,CAAC,cAAc,EAAE,KAAK,GAAG,UAAU,EAAE,CAQpE;AAED,wBAAgB,gBAAgB,CAAC,cAAc,EAAE,KAAK,GAAG,UAAU,EAAE,CAIpE;AAED,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,cAAc,EAAE,GAAG,eAAe,CAY5E;AAGD,wBAAgB,OAAO,CAAC,EAAE,EAAE,QAAQ,WAEnC;AAED,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,OAAO,WAGtD;AAOD,wBAAgB,gCAAgC,CAAC,WAAW,EAAE,UAAU,WAEvE;AAED,wBAAgB,qBAAqB,CACnC,eAAe,EAAE,cAAc,EAAE,EACjC,QAAQ,EAAE,GAAG,EACb,IAAI,EAAE,UAAU,OAejB"}
@@ -0,0 +1,4 @@
1
+ export * from './helpers';
2
+ export { default as Provider, useWallets } from './provider';
3
+ export * from './types';
4
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["src/index.ts"],"names":[],"mappings":"AAAA,cAAc,WAAW,CAAC;AAC1B,OAAO,EAAE,OAAO,IAAI,QAAQ,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAC7D,cAAc,SAAS,CAAC"}
package/dist/index.js ADDED
@@ -0,0 +1,8 @@
1
+
2
+ 'use strict'
3
+
4
+ if (process.env.NODE_ENV === 'production') {
5
+ module.exports = require('./wallets-core.cjs.production.min.js')
6
+ } else {
7
+ module.exports = require('./wallets-core.cjs.development.js')
8
+ }
@@ -0,0 +1,6 @@
1
+ /// <reference types="react" />
2
+ import { ProviderProps, ProviderContext } from './types';
3
+ declare function Provider(props: ProviderProps): JSX.Element;
4
+ export declare function useWallets(): ProviderContext;
5
+ export default Provider;
6
+ //# sourceMappingURL=provider.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"provider.d.ts","sourceRoot":"","sources":["src/provider.tsx"],"names":[],"mappings":";AAgBA,OAAO,EACL,aAAa,EACb,eAAe,EAGhB,MAAM,SAAS,CAAC;AAgEjB,iBAAS,QAAQ,CAAC,KAAK,EAAE,aAAa,eAgKrC;AAED,wBAAgB,UAAU,IAAI,eAAe,CAK5C;AAED,eAAe,QAAQ,CAAC"}
@@ -0,0 +1,101 @@
1
+ import { PropsWithChildren } from 'react';
2
+ import { Network, WalletType, BlockchainMeta, WalletInfo, WalletSigners } from '@rango-dev/wallets-shared';
3
+ import { EventHandler as WalletEventHandler, State as WalletState } from './wallet';
4
+ export declare type State = {
5
+ [key in WalletType]?: WalletState;
6
+ };
7
+ export declare type ConnectResult = {
8
+ accounts: string[] | null;
9
+ network: Network | null;
10
+ provider: any;
11
+ };
12
+ export declare type Providers = {
13
+ [type in WalletType]?: any;
14
+ };
15
+ export declare type ProviderContext = {
16
+ connect(type: WalletType, network?: Network): Promise<ConnectResult>;
17
+ disconnect(type: WalletType): Promise<void>;
18
+ disconnectAll(): Promise<PromiseSettledResult<any>[]>;
19
+ state(type: WalletType): WalletState;
20
+ canSwitchNetworkTo(type: WalletType, network: Network): boolean;
21
+ providers(): Providers;
22
+ getSigners(type: WalletType): WalletSigners;
23
+ getWalletInfo(type: WalletType): WalletInfo;
24
+ };
25
+ export declare type ProviderProps = PropsWithChildren<{
26
+ onUpdateState?: WalletEventHandler;
27
+ allBlockChains?: BlockchainMeta[];
28
+ providers: WalletProvider[];
29
+ }>;
30
+ export declare enum Events {
31
+ CONNECTED = "connected",
32
+ CONNECTING = "connecting",
33
+ REACHABLE = "reachable",
34
+ INSTALLED = "installed",
35
+ ACCOUNTS = "accounts",
36
+ NETWORK = "network"
37
+ }
38
+ export declare type ProviderConnectResult = {
39
+ accounts: string[];
40
+ chainId: string;
41
+ };
42
+ export declare type GetInstanceOptions = {
43
+ network?: Network;
44
+ currentProvider: any;
45
+ meta: BlockchainMeta[];
46
+ force?: boolean;
47
+ };
48
+ export declare type GetInstance = (() => any) | ((options: GetInstanceOptions) => Promise<any>);
49
+ export declare type TryGetInstance = (() => any) | ((options: Pick<GetInstanceOptions, 'force' | 'network'>) => Promise<any>);
50
+ export declare type Connect = (options: {
51
+ instance: any;
52
+ network?: Network;
53
+ meta: BlockchainMeta[];
54
+ }) => Promise<ProviderConnectResult | ProviderConnectResult[]>;
55
+ export declare type Disconnect = (options: {
56
+ instance: any;
57
+ destroyInstance: () => void;
58
+ }) => Promise<void>;
59
+ export declare type Subscribe = (options: {
60
+ instance: any;
61
+ state: WalletState;
62
+ meta: BlockchainMeta[];
63
+ updateChainId: (chainId: string) => void;
64
+ updateAccounts: (accounts: string[], chainId?: string) => void;
65
+ connect: (network?: Network) => void;
66
+ disconnect: () => void;
67
+ }) => void;
68
+ export declare type SwitchNetwork = (options: {
69
+ instance: any;
70
+ network: Network;
71
+ meta: BlockchainMeta[];
72
+ newInstance?: TryGetInstance;
73
+ }) => Promise<void>;
74
+ export declare type CanSwitchNetwork = (options: {
75
+ network: Network;
76
+ meta: BlockchainMeta[];
77
+ }) => boolean;
78
+ export interface WalletActions {
79
+ connect: Connect;
80
+ getInstance: any;
81
+ disconnect?: Disconnect;
82
+ subscribe?: Subscribe;
83
+ switchNetwork?: SwitchNetwork;
84
+ getSigners: (provider: any) => WalletSigners;
85
+ canSwitchNetworkTo?: CanSwitchNetwork;
86
+ getWalletInfo(allBlockChains: BlockchainMeta[]): WalletInfo;
87
+ }
88
+ export interface WalletConfig {
89
+ type: WalletType;
90
+ defaultNetwork?: Network;
91
+ checkInstallation?: boolean;
92
+ isAsyncInstance?: boolean;
93
+ }
94
+ export declare type WalletProviders = Map<WalletType, {
95
+ actions: WalletActions;
96
+ config: WalletConfig;
97
+ }>;
98
+ export declare type WalletProvider = {
99
+ config: WalletConfig;
100
+ } & WalletActions;
101
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["src/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,OAAO,CAAC;AAC1C,OAAO,EACL,OAAO,EACP,UAAU,EACV,cAAc,EACd,UAAU,EACV,aAAa,EACd,MAAM,2BAA2B,CAAC;AACnC,OAAO,EACL,YAAY,IAAI,kBAAkB,EAClC,KAAK,IAAI,WAAW,EACrB,MAAM,UAAU,CAAC;AAElB,oBAAY,KAAK,GAAG;KACjB,GAAG,IAAI,UAAU,CAAC,CAAC,EAAE,WAAW;CAClC,CAAC;AAEF,oBAAY,aAAa,GAAG;IAC1B,QAAQ,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;IAC1B,OAAO,EAAE,OAAO,GAAG,IAAI,CAAC;IACxB,QAAQ,EAAE,GAAG,CAAC;CACf,CAAC;AAEF,oBAAY,SAAS,GAAG;KAAG,IAAI,IAAI,UAAU,CAAC,CAAC,EAAE,GAAG;CAAE,CAAC;AAEvD,oBAAY,eAAe,GAAG;IAC5B,OAAO,CAAC,IAAI,EAAE,UAAU,EAAE,OAAO,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,aAAa,CAAC,CAAC;IACrE,UAAU,CAAC,IAAI,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC5C,aAAa,IAAI,OAAO,CAAC,oBAAoB,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IACtD,KAAK,CAAC,IAAI,EAAE,UAAU,GAAG,WAAW,CAAC;IACrC,kBAAkB,CAAC,IAAI,EAAE,UAAU,EAAE,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC;IAChE,SAAS,IAAI,SAAS,CAAC;IACvB,UAAU,CAAC,IAAI,EAAE,UAAU,GAAG,aAAa,CAAC;IAC5C,aAAa,CAAC,IAAI,EAAE,UAAU,GAAG,UAAU,CAAC;CAC7C,CAAC;AAEF,oBAAY,aAAa,GAAG,iBAAiB,CAAC;IAC5C,aAAa,CAAC,EAAE,kBAAkB,CAAC;IACnC,cAAc,CAAC,EAAE,cAAc,EAAE,CAAC;IAClC,SAAS,EAAE,cAAc,EAAE,CAAC;CAC7B,CAAC,CAAC;AAEH,oBAAY,MAAM;IAChB,SAAS,cAAc;IACvB,UAAU,eAAe;IACzB,SAAS,cAAc;IACvB,SAAS,cAAc;IACvB,QAAQ,aAAa;IACrB,OAAO,YAAY;CACpB;AAED,oBAAY,qBAAqB,GAAG;IAClC,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,OAAO,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF,oBAAY,kBAAkB,GAAG;IAC/B,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,eAAe,EAAE,GAAG,CAAC;IACrB,IAAI,EAAE,cAAc,EAAE,CAAC;IACvB,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB,CAAC;AACF,oBAAY,WAAW,GACnB,CAAC,MAAM,GAAG,CAAC,GACX,CAAC,CAAC,OAAO,EAAE,kBAAkB,KAAK,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC;AACpD,oBAAY,cAAc,GACtB,CAAC,MAAM,GAAG,CAAC,GACX,CAAC,CAAC,OAAO,EAAE,IAAI,CAAC,kBAAkB,EAAE,OAAO,GAAG,SAAS,CAAC,KAAK,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC;AAC/E,oBAAY,OAAO,GAAG,CAAC,OAAO,EAAE;IAC9B,QAAQ,EAAE,GAAG,CAAC;IACd,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,IAAI,EAAE,cAAc,EAAE,CAAC;CACxB,KAAK,OAAO,CAAC,qBAAqB,GAAG,qBAAqB,EAAE,CAAC,CAAC;AAE/D,oBAAY,UAAU,GAAG,CAAC,OAAO,EAAE;IACjC,QAAQ,EAAE,GAAG,CAAC;IACd,eAAe,EAAE,MAAM,IAAI,CAAC;CAC7B,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;AACpB,oBAAY,SAAS,GAAG,CAAC,OAAO,EAAE;IAChC,QAAQ,EAAE,GAAG,CAAC;IACd,KAAK,EAAE,WAAW,CAAC;IACnB,IAAI,EAAE,cAAc,EAAE,CAAC;IACvB,aAAa,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;IACzC,cAAc,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,EAAE,OAAO,CAAC,EAAE,MAAM,KAAK,IAAI,CAAC;IAC/D,OAAO,EAAE,CAAC,OAAO,CAAC,EAAE,OAAO,KAAK,IAAI,CAAC;IACrC,UAAU,EAAE,MAAM,IAAI,CAAC;CACxB,KAAK,IAAI,CAAC;AAEX,oBAAY,aAAa,GAAG,CAAC,OAAO,EAAE;IACpC,QAAQ,EAAE,GAAG,CAAC;IACd,OAAO,EAAE,OAAO,CAAC;IACjB,IAAI,EAAE,cAAc,EAAE,CAAC;IACvB,WAAW,CAAC,EAAE,cAAc,CAAC;CAC9B,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;AAEpB,oBAAY,gBAAgB,GAAG,CAAC,OAAO,EAAE;IACvC,OAAO,EAAE,OAAO,CAAC;IACjB,IAAI,EAAE,cAAc,EAAE,CAAC;CACxB,KAAK,OAAO,CAAC;AAEd,MAAM,WAAW,aAAa;IAC5B,OAAO,EAAE,OAAO,CAAC;IACjB,WAAW,EAAE,GAAG,CAAC;IACjB,UAAU,CAAC,EAAE,UAAU,CAAC;IACxB,SAAS,CAAC,EAAE,SAAS,CAAC;IAKtB,aAAa,CAAC,EAAE,aAAa,CAAC;IAC9B,UAAU,EAAE,CAAC,QAAQ,EAAE,GAAG,KAAK,aAAa,CAAC;IAC7C,kBAAkB,CAAC,EAAE,gBAAgB,CAAC;IACtC,aAAa,CAAC,cAAc,EAAE,cAAc,EAAE,GAAG,UAAU,CAAC;CAC7D;AAED,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,UAAU,CAAC;IACjB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,eAAe,CAAC,EAAE,OAAO,CAAC;CAC3B;AAED,oBAAY,eAAe,GAAG,GAAG,CAC/B,UAAU,EACV;IACE,OAAO,EAAE,aAAa,CAAC;IACvB,MAAM,EAAE,YAAY,CAAC;CACtB,CACF,CAAC;AAEF,oBAAY,cAAc,GAAG;IAAE,MAAM,EAAE,YAAY,CAAA;CAAE,GAAG,aAAa,CAAC"}
@@ -0,0 +1,52 @@
1
+ import { BlockchainMeta, Network, WalletType } from '@rango-dev/wallets-shared';
2
+ import { Events, WalletActions, WalletConfig } from './types';
3
+ export declare type EventHandler = (type: WalletType, event: Events, value: any, coreState: State, supportedChains: BlockchainMeta[]) => void;
4
+ export interface State {
5
+ connected: boolean;
6
+ connecting: boolean;
7
+ reachable: boolean;
8
+ installed: boolean;
9
+ accounts: string[] | null;
10
+ network: Network | null;
11
+ }
12
+ export interface Options {
13
+ config: WalletConfig;
14
+ handler: EventHandler;
15
+ }
16
+ declare class Wallet<InstanceType = any> {
17
+ private actions;
18
+ private state;
19
+ private options;
20
+ private meta;
21
+ provider: InstanceType | null;
22
+ constructor(options: Options, actions: WalletActions);
23
+ eagerConnection(): Promise<{
24
+ accounts: string[] | null;
25
+ network: Network | null;
26
+ provider: InstanceType;
27
+ } | null>;
28
+ connect(network?: Network): Promise<{
29
+ accounts: string[] | null;
30
+ network: Network | undefined;
31
+ provider: InstanceType | null;
32
+ } | {
33
+ accounts: string[] | null;
34
+ network: Network | null;
35
+ provider: InstanceType | null;
36
+ }>;
37
+ disconnect(): Promise<void>;
38
+ getSigners(provider: any): import("@rango-dev/wallets-shared").WalletSigners;
39
+ getWalletInfo(allBlockChains: BlockchainMeta[]): import("@rango-dev/wallets-shared").WalletInfo;
40
+ canSwitchNetworkTo(network: Network): boolean;
41
+ onInit(): void;
42
+ setProvider(value: any): void;
43
+ setMeta(value: BlockchainMeta[]): void;
44
+ setHandler(handler: EventHandler): void;
45
+ getState(): State;
46
+ updateState(states: Partial<State>): void;
47
+ resetState(): void;
48
+ private setInstalledAs;
49
+ private tryGetInstance;
50
+ }
51
+ export default Wallet;
52
+ //# sourceMappingURL=wallet.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"wallet.d.ts","sourceRoot":"","sources":["src/wallet.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,cAAc,EAEd,OAAO,EACP,UAAU,EACX,MAAM,2BAA2B,CAAC;AAEnC,OAAO,EACL,MAAM,EAEN,aAAa,EACb,YAAY,EACb,MAAM,SAAS,CAAC;AAEjB,oBAAY,YAAY,GAAG,CACzB,IAAI,EAAE,UAAU,EAChB,KAAK,EAAE,MAAM,EACb,KAAK,EAAE,GAAG,EACV,SAAS,EAAE,KAAK,EAChB,eAAe,EAAE,cAAc,EAAE,KAC9B,IAAI,CAAC;AAEV,MAAM,WAAW,KAAK;IACpB,SAAS,EAAE,OAAO,CAAC;IACnB,UAAU,EAAE,OAAO,CAAC;IACpB,SAAS,EAAE,OAAO,CAAC;IACnB,SAAS,EAAE,OAAO,CAAC;IACnB,QAAQ,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;IAC1B,OAAO,EAAE,OAAO,GAAG,IAAI,CAAC;CACzB;AAED,MAAM,WAAW,OAAO;IACtB,MAAM,EAAE,YAAY,CAAC;IACrB,OAAO,EAAE,YAAY,CAAC;CACvB;AAED,cAAM,MAAM,CAAC,YAAY,GAAG,GAAG;IAC7B,OAAO,CAAC,OAAO,CAAgB;IAC/B,OAAO,CAAC,KAAK,CAAQ;IACrB,OAAO,CAAC,OAAO,CAAU;IACzB,OAAO,CAAC,IAAI,CAAmB;IACxB,QAAQ,EAAE,YAAY,GAAG,IAAI,CAAC;gBAEzB,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,aAAa;IAoB9C,eAAe;;;;;IAiBf,OAAO,CAAC,OAAO,CAAC,EAAE,OAAO;;;;;;;;;IAsHzB,UAAU;IAchB,UAAU,CAAC,QAAQ,EAAE,GAAG;IAGxB,aAAa,CAAC,cAAc,EAAE,cAAc,EAAE;IAG9C,kBAAkB,CAAC,OAAO,EAAE,OAAO;IAUnC,MAAM;IASN,WAAW,CAAC,KAAK,EAAE,GAAG;IAoCtB,OAAO,CAAC,KAAK,EAAE,cAAc,EAAE;IAI/B,UAAU,CAAC,OAAO,EAAE,YAAY;IAIhC,QAAQ,IAAI,KAAK;IAGjB,WAAW,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,CAAC;IAsClC,UAAU;IAUV,OAAO,CAAC,cAAc;YAOR,cAAc;CAyC7B;AAED,eAAe,MAAM,CAAC"}