@reown/appkit-core-react-native 0.0.0-canary-20240912195440
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.
- package/lib/commonjs/controllers/AccountController.js +59 -0
- package/lib/commonjs/controllers/AccountController.js.map +1 -0
- package/lib/commonjs/controllers/ApiController.js +332 -0
- package/lib/commonjs/controllers/ApiController.js.map +1 -0
- package/lib/commonjs/controllers/AssetController.js +34 -0
- package/lib/commonjs/controllers/AssetController.js.map +1 -0
- package/lib/commonjs/controllers/BlockchainApiController.js +45 -0
- package/lib/commonjs/controllers/BlockchainApiController.js.map +1 -0
- package/lib/commonjs/controllers/ConnectionController.js +98 -0
- package/lib/commonjs/controllers/ConnectionController.js.map +1 -0
- package/lib/commonjs/controllers/ConnectorController.js +41 -0
- package/lib/commonjs/controllers/ConnectorController.js.map +1 -0
- package/lib/commonjs/controllers/EventsController.js +79 -0
- package/lib/commonjs/controllers/EventsController.js.map +1 -0
- package/lib/commonjs/controllers/ModalController.js +64 -0
- package/lib/commonjs/controllers/ModalController.js.map +1 -0
- package/lib/commonjs/controllers/NetworkController.js +65 -0
- package/lib/commonjs/controllers/NetworkController.js.map +1 -0
- package/lib/commonjs/controllers/OptionsController.js +63 -0
- package/lib/commonjs/controllers/OptionsController.js.map +1 -0
- package/lib/commonjs/controllers/PublicStateController.js +33 -0
- package/lib/commonjs/controllers/PublicStateController.js.map +1 -0
- package/lib/commonjs/controllers/RouterController.js +56 -0
- package/lib/commonjs/controllers/RouterController.js.map +1 -0
- package/lib/commonjs/controllers/SnackController.js +34 -0
- package/lib/commonjs/controllers/SnackController.js.map +1 -0
- package/lib/commonjs/controllers/ThemeController.js +32 -0
- package/lib/commonjs/controllers/ThemeController.js.map +1 -0
- package/lib/commonjs/index.js +146 -0
- package/lib/commonjs/index.js.map +1 -0
- package/lib/commonjs/utils/AssetUtil.js +37 -0
- package/lib/commonjs/utils/AssetUtil.js.map +1 -0
- package/lib/commonjs/utils/ConstantsUtil.js +14 -0
- package/lib/commonjs/utils/ConstantsUtil.js.map +1 -0
- package/lib/commonjs/utils/CoreHelperUtil.js +214 -0
- package/lib/commonjs/utils/CoreHelperUtil.js.map +1 -0
- package/lib/commonjs/utils/EventUtil.js +25 -0
- package/lib/commonjs/utils/EventUtil.js.map +1 -0
- package/lib/commonjs/utils/FetchUtil.js +118 -0
- package/lib/commonjs/utils/FetchUtil.js.map +1 -0
- package/lib/commonjs/utils/RouterUtil.js +25 -0
- package/lib/commonjs/utils/RouterUtil.js.map +1 -0
- package/lib/commonjs/utils/StorageUtil.js +130 -0
- package/lib/commonjs/utils/StorageUtil.js.map +1 -0
- package/lib/commonjs/utils/TypeUtil.js +2 -0
- package/lib/commonjs/utils/TypeUtil.js.map +1 -0
- package/lib/module/controllers/AccountController.js +54 -0
- package/lib/module/controllers/AccountController.js.map +1 -0
- package/lib/module/controllers/ApiController.js +327 -0
- package/lib/module/controllers/ApiController.js.map +1 -0
- package/lib/module/controllers/AssetController.js +29 -0
- package/lib/module/controllers/AssetController.js.map +1 -0
- package/lib/module/controllers/BlockchainApiController.js +40 -0
- package/lib/module/controllers/BlockchainApiController.js.map +1 -0
- package/lib/module/controllers/ConnectionController.js +93 -0
- package/lib/module/controllers/ConnectionController.js.map +1 -0
- package/lib/module/controllers/ConnectorController.js +36 -0
- package/lib/module/controllers/ConnectorController.js.map +1 -0
- package/lib/module/controllers/EventsController.js +73 -0
- package/lib/module/controllers/EventsController.js.map +1 -0
- package/lib/module/controllers/ModalController.js +59 -0
- package/lib/module/controllers/ModalController.js.map +1 -0
- package/lib/module/controllers/NetworkController.js +60 -0
- package/lib/module/controllers/NetworkController.js.map +1 -0
- package/lib/module/controllers/OptionsController.js +58 -0
- package/lib/module/controllers/OptionsController.js.map +1 -0
- package/lib/module/controllers/PublicStateController.js +28 -0
- package/lib/module/controllers/PublicStateController.js.map +1 -0
- package/lib/module/controllers/RouterController.js +51 -0
- package/lib/module/controllers/RouterController.js.map +1 -0
- package/lib/module/controllers/SnackController.js +29 -0
- package/lib/module/controllers/SnackController.js.map +1 -0
- package/lib/module/controllers/ThemeController.js +27 -0
- package/lib/module/controllers/ThemeController.js.map +1 -0
- package/lib/module/index.js +23 -0
- package/lib/module/index.js.map +1 -0
- package/lib/module/utils/AssetUtil.js +31 -0
- package/lib/module/utils/AssetUtil.js.map +1 -0
- package/lib/module/utils/ConstantsUtil.js +8 -0
- package/lib/module/utils/ConstantsUtil.js.map +1 -0
- package/lib/module/utils/CoreHelperUtil.js +208 -0
- package/lib/module/utils/CoreHelperUtil.js.map +1 -0
- package/lib/module/utils/EventUtil.js +19 -0
- package/lib/module/utils/EventUtil.js.map +1 -0
- package/lib/module/utils/FetchUtil.js +111 -0
- package/lib/module/utils/FetchUtil.js.map +1 -0
- package/lib/module/utils/RouterUtil.js +19 -0
- package/lib/module/utils/RouterUtil.js.map +1 -0
- package/lib/module/utils/StorageUtil.js +122 -0
- package/lib/module/utils/StorageUtil.js.map +1 -0
- package/lib/module/utils/TypeUtil.js +2 -0
- package/lib/module/utils/TypeUtil.js.map +1 -0
- package/lib/typescript/controllers/AccountController.d.ts +25 -0
- package/lib/typescript/controllers/AccountController.d.ts.map +1 -0
- package/lib/typescript/controllers/ApiController.d.ts +37 -0
- package/lib/typescript/controllers/ApiController.d.ts.map +1 -0
- package/lib/typescript/controllers/AssetController.d.ts +14 -0
- package/lib/typescript/controllers/AssetController.d.ts.map +1 -0
- package/lib/typescript/controllers/BlockchainApiController.d.ts +12 -0
- package/lib/typescript/controllers/BlockchainApiController.d.ts.map +1 -0
- package/lib/typescript/controllers/ConnectionController.d.ts +47 -0
- package/lib/typescript/controllers/ConnectionController.d.ts.map +1 -0
- package/lib/typescript/controllers/ConnectorController.d.ts +17 -0
- package/lib/typescript/controllers/ConnectorController.d.ts.map +1 -0
- package/lib/typescript/controllers/EventsController.d.ts +18 -0
- package/lib/typescript/controllers/EventsController.d.ts.map +1 -0
- package/lib/typescript/controllers/ModalController.d.ts +17 -0
- package/lib/typescript/controllers/ModalController.d.ts.map +1 -0
- package/lib/typescript/controllers/NetworkController.d.ts +28 -0
- package/lib/typescript/controllers/NetworkController.d.ts.map +1 -0
- package/lib/typescript/controllers/OptionsController.d.ts +35 -0
- package/lib/typescript/controllers/OptionsController.d.ts.map +1 -0
- package/lib/typescript/controllers/PublicStateController.d.ts +12 -0
- package/lib/typescript/controllers/PublicStateController.d.ts.map +1 -0
- package/lib/typescript/controllers/RouterController.d.ts +21 -0
- package/lib/typescript/controllers/RouterController.d.ts.map +1 -0
- package/lib/typescript/controllers/SnackController.d.ts +12 -0
- package/lib/typescript/controllers/SnackController.d.ts.map +1 -0
- package/lib/typescript/controllers/ThemeController.d.ts +12 -0
- package/lib/typescript/controllers/ThemeController.d.ts.map +1 -0
- package/lib/typescript/index.d.ts +35 -0
- package/lib/typescript/index.d.ts.map +1 -0
- package/lib/typescript/utils/AssetUtil.d.ts +7 -0
- package/lib/typescript/utils/AssetUtil.d.ts.map +1 -0
- package/lib/typescript/utils/ConstantsUtil.d.ts +8 -0
- package/lib/typescript/utils/ConstantsUtil.d.ts.map +1 -0
- package/lib/typescript/utils/CoreHelperUtil.d.ts +32 -0
- package/lib/typescript/utils/CoreHelperUtil.d.ts.map +1 -0
- package/lib/typescript/utils/EventUtil.d.ts +5 -0
- package/lib/typescript/utils/EventUtil.d.ts.map +1 -0
- package/lib/typescript/utils/FetchUtil.d.ts +26 -0
- package/lib/typescript/utils/FetchUtil.d.ts.map +1 -0
- package/lib/typescript/utils/RouterUtil.d.ts +5 -0
- package/lib/typescript/utils/RouterUtil.d.ts.map +1 -0
- package/lib/typescript/utils/StorageUtil.d.ts +19 -0
- package/lib/typescript/utils/StorageUtil.d.ts.map +1 -0
- package/lib/typescript/utils/TypeUtil.d.ts +277 -0
- package/lib/typescript/utils/TypeUtil.d.ts.map +1 -0
- package/package.json +69 -0
- package/readme.md +9 -0
- package/src/controllers/AccountController.ts +80 -0
- package/src/controllers/ApiController.ts +360 -0
- package/src/controllers/AssetController.ts +38 -0
- package/src/controllers/BlockchainApiController.ts +43 -0
- package/src/controllers/ConnectionController.ts +147 -0
- package/src/controllers/ConnectorController.ts +50 -0
- package/src/controllers/EventsController.ts +79 -0
- package/src/controllers/ModalController.ts +64 -0
- package/src/controllers/NetworkController.ts +79 -0
- package/src/controllers/OptionsController.ts +89 -0
- package/src/controllers/PublicStateController.ts +37 -0
- package/src/controllers/RouterController.ts +84 -0
- package/src/controllers/SnackController.ts +36 -0
- package/src/controllers/ThemeController.ts +31 -0
- package/src/index.ts +57 -0
- package/src/utils/AssetUtil.ts +40 -0
- package/src/utils/ConstantsUtil.ts +11 -0
- package/src/utils/CoreHelperUtil.ts +249 -0
- package/src/utils/EventUtil.ts +22 -0
- package/src/utils/FetchUtil.ts +117 -0
- package/src/utils/RouterUtil.ts +18 -0
- package/src/utils/StorageUtil.ts +138 -0
- package/src/utils/TypeUtil.ts +342 -0
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
import { proxy } from 'valtio';
|
|
2
|
+
import { AccountController } from './AccountController';
|
|
3
|
+
import { RouterController } from './RouterController';
|
|
4
|
+
import { PublicStateController } from './PublicStateController';
|
|
5
|
+
import { EventsController } from './EventsController';
|
|
6
|
+
import { ApiController } from './ApiController';
|
|
7
|
+
|
|
8
|
+
// -- Types --------------------------------------------- //
|
|
9
|
+
|
|
10
|
+
// -- State --------------------------------------------- //
|
|
11
|
+
const state = proxy({
|
|
12
|
+
open: false,
|
|
13
|
+
loading: false
|
|
14
|
+
});
|
|
15
|
+
|
|
16
|
+
// -- Controller ---------------------------------------- //
|
|
17
|
+
export const ModalController = {
|
|
18
|
+
state,
|
|
19
|
+
async open(options) {
|
|
20
|
+
await ApiController.state.prefetchPromise;
|
|
21
|
+
const connected = AccountController.state.isConnected;
|
|
22
|
+
if (options?.view) {
|
|
23
|
+
RouterController.reset(options.view);
|
|
24
|
+
} else if (AccountController.state.isConnected) {
|
|
25
|
+
RouterController.reset('Account');
|
|
26
|
+
} else {
|
|
27
|
+
RouterController.reset('Connect');
|
|
28
|
+
}
|
|
29
|
+
state.open = true;
|
|
30
|
+
PublicStateController.set({
|
|
31
|
+
open: true
|
|
32
|
+
});
|
|
33
|
+
EventsController.sendEvent({
|
|
34
|
+
type: 'track',
|
|
35
|
+
event: 'MODAL_OPEN',
|
|
36
|
+
properties: {
|
|
37
|
+
connected
|
|
38
|
+
}
|
|
39
|
+
});
|
|
40
|
+
},
|
|
41
|
+
close() {
|
|
42
|
+
const connected = AccountController.state.isConnected;
|
|
43
|
+
state.open = false;
|
|
44
|
+
PublicStateController.set({
|
|
45
|
+
open: false
|
|
46
|
+
});
|
|
47
|
+
EventsController.sendEvent({
|
|
48
|
+
type: 'track',
|
|
49
|
+
event: 'MODAL_CLOSE',
|
|
50
|
+
properties: {
|
|
51
|
+
connected
|
|
52
|
+
}
|
|
53
|
+
});
|
|
54
|
+
},
|
|
55
|
+
setLoading(loading) {
|
|
56
|
+
state.loading = loading;
|
|
57
|
+
}
|
|
58
|
+
};
|
|
59
|
+
//# sourceMappingURL=ModalController.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["proxy","AccountController","RouterController","PublicStateController","EventsController","ApiController","state","open","loading","ModalController","options","prefetchPromise","connected","isConnected","view","reset","set","sendEvent","type","event","properties","close","setLoading"],"sourceRoot":"../../../src","sources":["controllers/ModalController.ts"],"mappings":"AAAA,SAASA,KAAK,QAAQ,QAAQ;AAC9B,SAASC,iBAAiB,QAAQ,qBAAqB;AAEvD,SAASC,gBAAgB,QAAQ,oBAAoB;AACrD,SAASC,qBAAqB,QAAQ,yBAAyB;AAC/D,SAASC,gBAAgB,QAAQ,oBAAoB;AACrD,SAASC,aAAa,QAAQ,iBAAiB;;AAE/C;;AAYA;AACA,MAAMC,KAAK,GAAGN,KAAK,CAAuB;EACxCO,IAAI,EAAE,KAAK;EACXC,OAAO,EAAE;AACX,CAAC,CAAC;;AAEF;AACA,OAAO,MAAMC,eAAe,GAAG;EAC7BH,KAAK;EAEL,MAAMC,IAAIA,CAACG,OAA0C,EAAE;IACrD,MAAML,aAAa,CAACC,KAAK,CAACK,eAAe;IACzC,MAAMC,SAAS,GAAGX,iBAAiB,CAACK,KAAK,CAACO,WAAW;IACrD,IAAIH,OAAO,EAAEI,IAAI,EAAE;MACjBZ,gBAAgB,CAACa,KAAK,CAACL,OAAO,CAACI,IAAI,CAAC;IACtC,CAAC,MAAM,IAAIb,iBAAiB,CAACK,KAAK,CAACO,WAAW,EAAE;MAC9CX,gBAAgB,CAACa,KAAK,CAAC,SAAS,CAAC;IACnC,CAAC,MAAM;MACLb,gBAAgB,CAACa,KAAK,CAAC,SAAS,CAAC;IACnC;IACAT,KAAK,CAACC,IAAI,GAAG,IAAI;IACjBJ,qBAAqB,CAACa,GAAG,CAAC;MAAET,IAAI,EAAE;IAAK,CAAC,CAAC;IACzCH,gBAAgB,CAACa,SAAS,CAAC;MACzBC,IAAI,EAAE,OAAO;MACbC,KAAK,EAAE,YAAY;MACnBC,UAAU,EAAE;QAAER;MAAU;IAC1B,CAAC,CAAC;EACJ,CAAC;EAEDS,KAAKA,CAAA,EAAG;IACN,MAAMT,SAAS,GAAGX,iBAAiB,CAACK,KAAK,CAACO,WAAW;IACrDP,KAAK,CAACC,IAAI,GAAG,KAAK;IAClBJ,qBAAqB,CAACa,GAAG,CAAC;MAAET,IAAI,EAAE;IAAM,CAAC,CAAC;IAC1CH,gBAAgB,CAACa,SAAS,CAAC;MACzBC,IAAI,EAAE,OAAO;MACbC,KAAK,EAAE,aAAa;MACpBC,UAAU,EAAE;QAAER;MAAU;IAC1B,CAAC,CAAC;EACJ,CAAC;EAEDU,UAAUA,CAACd,OAAwC,EAAE;IACnDF,KAAK,CAACE,OAAO,GAAGA,OAAO;EACzB;AACF,CAAC"}
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
import { proxy, ref } from 'valtio';
|
|
2
|
+
import { PublicStateController } from './PublicStateController';
|
|
3
|
+
|
|
4
|
+
// -- Types --------------------------------------------- //
|
|
5
|
+
|
|
6
|
+
// -- State --------------------------------------------- //
|
|
7
|
+
const state = proxy({
|
|
8
|
+
supportsAllNetworks: true,
|
|
9
|
+
isDefaultCaipNetwork: false
|
|
10
|
+
});
|
|
11
|
+
|
|
12
|
+
// -- Controller ---------------------------------------- //
|
|
13
|
+
export const NetworkController = {
|
|
14
|
+
state,
|
|
15
|
+
_getClient() {
|
|
16
|
+
if (!state._client) {
|
|
17
|
+
throw new Error('NetworkController client not set');
|
|
18
|
+
}
|
|
19
|
+
return state._client;
|
|
20
|
+
},
|
|
21
|
+
setClient(client) {
|
|
22
|
+
state._client = ref(client);
|
|
23
|
+
},
|
|
24
|
+
setCaipNetwork(caipNetwork) {
|
|
25
|
+
state.caipNetwork = caipNetwork;
|
|
26
|
+
PublicStateController.set({
|
|
27
|
+
selectedNetworkId: caipNetwork?.id
|
|
28
|
+
});
|
|
29
|
+
},
|
|
30
|
+
setDefaultCaipNetwork(caipNetwork) {
|
|
31
|
+
state.caipNetwork = caipNetwork;
|
|
32
|
+
state.isDefaultCaipNetwork = true;
|
|
33
|
+
PublicStateController.set({
|
|
34
|
+
selectedNetworkId: caipNetwork?.id
|
|
35
|
+
});
|
|
36
|
+
},
|
|
37
|
+
setRequestedCaipNetworks(requestedNetworks) {
|
|
38
|
+
state.requestedCaipNetworks = requestedNetworks;
|
|
39
|
+
},
|
|
40
|
+
async getApprovedCaipNetworksData() {
|
|
41
|
+
const data = await this._getClient().getApprovedCaipNetworksData();
|
|
42
|
+
state.supportsAllNetworks = data.supportsAllNetworks;
|
|
43
|
+
state.approvedCaipNetworkIds = data.approvedCaipNetworkIds;
|
|
44
|
+
},
|
|
45
|
+
async switchActiveNetwork(network) {
|
|
46
|
+
await this._getClient().switchCaipNetwork(network);
|
|
47
|
+
state.caipNetwork = network;
|
|
48
|
+
PublicStateController.set({
|
|
49
|
+
selectedNetworkId: network?.id
|
|
50
|
+
});
|
|
51
|
+
},
|
|
52
|
+
resetNetwork() {
|
|
53
|
+
if (!state.isDefaultCaipNetwork) {
|
|
54
|
+
state.caipNetwork = undefined;
|
|
55
|
+
}
|
|
56
|
+
state.approvedCaipNetworkIds = undefined;
|
|
57
|
+
state.supportsAllNetworks = true;
|
|
58
|
+
}
|
|
59
|
+
};
|
|
60
|
+
//# sourceMappingURL=NetworkController.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["proxy","ref","PublicStateController","state","supportsAllNetworks","isDefaultCaipNetwork","NetworkController","_getClient","_client","Error","setClient","client","setCaipNetwork","caipNetwork","set","selectedNetworkId","id","setDefaultCaipNetwork","setRequestedCaipNetworks","requestedNetworks","requestedCaipNetworks","getApprovedCaipNetworksData","data","approvedCaipNetworkIds","switchActiveNetwork","network","switchCaipNetwork","resetNetwork","undefined"],"sourceRoot":"../../../src","sources":["controllers/NetworkController.ts"],"mappings":"AAAA,SAASA,KAAK,EAAEC,GAAG,QAAQ,QAAQ;AAEnC,SAASC,qBAAqB,QAAQ,yBAAyB;;AAE/D;;AAkBA;AACA,MAAMC,KAAK,GAAGH,KAAK,CAAyB;EAC1CI,mBAAmB,EAAE,IAAI;EACzBC,oBAAoB,EAAE;AACxB,CAAC,CAAC;;AAEF;AACA,OAAO,MAAMC,iBAAiB,GAAG;EAC/BH,KAAK;EAELI,UAAUA,CAAA,EAAG;IACX,IAAI,CAACJ,KAAK,CAACK,OAAO,EAAE;MAClB,MAAM,IAAIC,KAAK,CAAC,kCAAkC,CAAC;IACrD;IAEA,OAAON,KAAK,CAACK,OAAO;EACtB,CAAC;EAEDE,SAASA,CAACC,MAA+B,EAAE;IACzCR,KAAK,CAACK,OAAO,GAAGP,GAAG,CAACU,MAAM,CAAC;EAC7B,CAAC;EAEDC,cAAcA,CAACC,WAAkD,EAAE;IACjEV,KAAK,CAACU,WAAW,GAAGA,WAAW;IAC/BX,qBAAqB,CAACY,GAAG,CAAC;MAAEC,iBAAiB,EAAEF,WAAW,EAAEG;IAAG,CAAC,CAAC;EACnE,CAAC;EAEDC,qBAAqBA,CAACJ,WAAkD,EAAE;IACxEV,KAAK,CAACU,WAAW,GAAGA,WAAW;IAC/BV,KAAK,CAACE,oBAAoB,GAAG,IAAI;IACjCH,qBAAqB,CAACY,GAAG,CAAC;MAAEC,iBAAiB,EAAEF,WAAW,EAAEG;IAAG,CAAC,CAAC;EACnE,CAAC;EAEDE,wBAAwBA,CAACC,iBAAkE,EAAE;IAC3FhB,KAAK,CAACiB,qBAAqB,GAAGD,iBAAiB;EACjD,CAAC;EAED,MAAME,2BAA2BA,CAAA,EAAG;IAClC,MAAMC,IAAI,GAAG,MAAM,IAAI,CAACf,UAAU,CAAC,CAAC,CAACc,2BAA2B,CAAC,CAAC;IAClElB,KAAK,CAACC,mBAAmB,GAAGkB,IAAI,CAAClB,mBAAmB;IACpDD,KAAK,CAACoB,sBAAsB,GAAGD,IAAI,CAACC,sBAAsB;EAC5D,CAAC;EAED,MAAMC,mBAAmBA,CAACC,OAA8C,EAAE;IACxE,MAAM,IAAI,CAAClB,UAAU,CAAC,CAAC,CAACmB,iBAAiB,CAACD,OAAO,CAAC;IAClDtB,KAAK,CAACU,WAAW,GAAGY,OAAO;IAC3BvB,qBAAqB,CAACY,GAAG,CAAC;MAAEC,iBAAiB,EAAEU,OAAO,EAAET;IAAG,CAAC,CAAC;EAC/D,CAAC;EAEDW,YAAYA,CAAA,EAAG;IACb,IAAI,CAACxB,KAAK,CAACE,oBAAoB,EAAE;MAC/BF,KAAK,CAACU,WAAW,GAAGe,SAAS;IAC/B;IACAzB,KAAK,CAACoB,sBAAsB,GAAGK,SAAS;IACxCzB,KAAK,CAACC,mBAAmB,GAAG,IAAI;EAClC;AACF,CAAC"}
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
import { proxy, ref } from 'valtio';
|
|
2
|
+
|
|
3
|
+
// -- Types --------------------------------------------- //
|
|
4
|
+
|
|
5
|
+
// -- State --------------------------------------------- //
|
|
6
|
+
const state = proxy({
|
|
7
|
+
projectId: '',
|
|
8
|
+
sdkType: 'appkit',
|
|
9
|
+
sdkVersion: 'react-native-wagmi-undefined'
|
|
10
|
+
});
|
|
11
|
+
|
|
12
|
+
// -- Controller ---------------------------------------- //
|
|
13
|
+
export const OptionsController = {
|
|
14
|
+
state,
|
|
15
|
+
setClipboardClient(client) {
|
|
16
|
+
state._clipboardClient = ref(client);
|
|
17
|
+
},
|
|
18
|
+
setProjectId(projectId) {
|
|
19
|
+
state.projectId = projectId;
|
|
20
|
+
},
|
|
21
|
+
setIncludeWalletIds(includeWalletIds) {
|
|
22
|
+
state.includeWalletIds = includeWalletIds;
|
|
23
|
+
},
|
|
24
|
+
setExcludeWalletIds(excludeWalletIds) {
|
|
25
|
+
state.excludeWalletIds = excludeWalletIds;
|
|
26
|
+
},
|
|
27
|
+
setFeaturedWalletIds(featuredWalletIds) {
|
|
28
|
+
state.featuredWalletIds = featuredWalletIds;
|
|
29
|
+
},
|
|
30
|
+
setTokens(tokens) {
|
|
31
|
+
state.tokens = tokens;
|
|
32
|
+
},
|
|
33
|
+
setCustomWallets(customWallets) {
|
|
34
|
+
state.customWallets = customWallets;
|
|
35
|
+
},
|
|
36
|
+
setEnableAnalytics(enableAnalytics) {
|
|
37
|
+
state.enableAnalytics = enableAnalytics;
|
|
38
|
+
},
|
|
39
|
+
setSdkVersion(sdkVersion) {
|
|
40
|
+
state.sdkVersion = sdkVersion;
|
|
41
|
+
},
|
|
42
|
+
setMetadata(metadata) {
|
|
43
|
+
state.metadata = metadata;
|
|
44
|
+
},
|
|
45
|
+
setIsSiweEnabled(isSiweEnabled) {
|
|
46
|
+
state.isSiweEnabled = isSiweEnabled;
|
|
47
|
+
},
|
|
48
|
+
isClipboardAvailable() {
|
|
49
|
+
return !!state._clipboardClient;
|
|
50
|
+
},
|
|
51
|
+
copyToClipboard(value) {
|
|
52
|
+
const client = state._clipboardClient;
|
|
53
|
+
if (client) {
|
|
54
|
+
client.setString(value);
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
};
|
|
58
|
+
//# sourceMappingURL=OptionsController.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["proxy","ref","state","projectId","sdkType","sdkVersion","OptionsController","setClipboardClient","client","_clipboardClient","setProjectId","setIncludeWalletIds","includeWalletIds","setExcludeWalletIds","excludeWalletIds","setFeaturedWalletIds","featuredWalletIds","setTokens","tokens","setCustomWallets","customWallets","setEnableAnalytics","enableAnalytics","setSdkVersion","setMetadata","metadata","setIsSiweEnabled","isSiweEnabled","isClipboardAvailable","copyToClipboard","value","setString"],"sourceRoot":"../../../src","sources":["controllers/OptionsController.ts"],"mappings":"AAAA,SAASA,KAAK,EAAEC,GAAG,QAAQ,QAAQ;;AAGnC;;AAoBA;AACA,MAAMC,KAAK,GAAGF,KAAK,CAAyB;EAC1CG,SAAS,EAAE,EAAE;EACbC,OAAO,EAAE,QAAQ;EACjBC,UAAU,EAAE;AACd,CAAC,CAAC;;AAEF;AACA,OAAO,MAAMC,iBAAiB,GAAG;EAC/BJ,KAAK;EAELK,kBAAkBA,CAACC,MAAuB,EAAE;IAC1CN,KAAK,CAACO,gBAAgB,GAAGR,GAAG,CAACO,MAAM,CAAC;EACtC,CAAC;EAEDE,YAAYA,CAACP,SAA8C,EAAE;IAC3DD,KAAK,CAACC,SAAS,GAAGA,SAAS;EAC7B,CAAC;EAEDQ,mBAAmBA,CAACC,gBAA4D,EAAE;IAChFV,KAAK,CAACU,gBAAgB,GAAGA,gBAAgB;EAC3C,CAAC;EAEDC,mBAAmBA,CAACC,gBAA4D,EAAE;IAChFZ,KAAK,CAACY,gBAAgB,GAAGA,gBAAgB;EAC3C,CAAC;EAEDC,oBAAoBA,CAACC,iBAA8D,EAAE;IACnFd,KAAK,CAACc,iBAAiB,GAAGA,iBAAiB;EAC7C,CAAC;EAEDC,SAASA,CAACC,MAAwC,EAAE;IAClDhB,KAAK,CAACgB,MAAM,GAAGA,MAAM;EACvB,CAAC;EAEDC,gBAAgBA,CAACC,aAAsD,EAAE;IACvElB,KAAK,CAACkB,aAAa,GAAGA,aAAa;EACrC,CAAC;EAEDC,kBAAkBA,CAACC,eAA0D,EAAE;IAC7EpB,KAAK,CAACoB,eAAe,GAAGA,eAAe;EACzC,CAAC;EAEDC,aAAaA,CAAClB,UAAgD,EAAE;IAC9DH,KAAK,CAACG,UAAU,GAAGA,UAAU;EAC/B,CAAC;EAEDmB,WAAWA,CAACC,QAA4C,EAAE;IACxDvB,KAAK,CAACuB,QAAQ,GAAGA,QAAQ;EAC3B,CAAC;EAEDC,gBAAgBA,CAACC,aAAsD,EAAE;IACvEzB,KAAK,CAACyB,aAAa,GAAGA,aAAa;EACrC,CAAC;EAEDC,oBAAoBA,CAAA,EAAG;IACrB,OAAO,CAAC,CAAC1B,KAAK,CAACO,gBAAgB;EACjC,CAAC;EAEDoB,eAAeA,CAACC,KAAa,EAAE;IAC7B,MAAMtB,MAAM,GAAGN,KAAK,CAACO,gBAAgB;IACrC,IAAID,MAAM,EAAE;MACVA,MAAM,CAACuB,SAAS,CAACD,KAAK,CAAC;IACzB;EACF;AACF,CAAC"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { proxy, subscribe as sub } from 'valtio';
|
|
2
|
+
import { subscribeKey as subKey } from 'valtio/utils';
|
|
3
|
+
|
|
4
|
+
// -- Types --------------------------------------------- //
|
|
5
|
+
|
|
6
|
+
// -- State --------------------------------------------- //
|
|
7
|
+
const state = proxy({
|
|
8
|
+
open: false,
|
|
9
|
+
selectedNetworkId: undefined
|
|
10
|
+
});
|
|
11
|
+
|
|
12
|
+
// -- Controller ---------------------------------------- //
|
|
13
|
+
export const PublicStateController = {
|
|
14
|
+
state,
|
|
15
|
+
subscribe(callback) {
|
|
16
|
+
return sub(state, () => callback(state));
|
|
17
|
+
},
|
|
18
|
+
subscribeKey(key, callback) {
|
|
19
|
+
return subKey(state, key, callback);
|
|
20
|
+
},
|
|
21
|
+
set(newState) {
|
|
22
|
+
Object.assign(state, {
|
|
23
|
+
...state,
|
|
24
|
+
...newState
|
|
25
|
+
});
|
|
26
|
+
}
|
|
27
|
+
};
|
|
28
|
+
//# sourceMappingURL=PublicStateController.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["proxy","subscribe","sub","subscribeKey","subKey","state","open","selectedNetworkId","undefined","PublicStateController","callback","key","set","newState","Object","assign"],"sourceRoot":"../../../src","sources":["controllers/PublicStateController.ts"],"mappings":"AAAA,SAASA,KAAK,EAAEC,SAAS,IAAIC,GAAG,QAAQ,QAAQ;AAChD,SAASC,YAAY,IAAIC,MAAM,QAAQ,cAAc;;AAGrD;;AAQA;AACA,MAAMC,KAAK,GAAGL,KAAK,CAA6B;EAC9CM,IAAI,EAAE,KAAK;EACXC,iBAAiB,EAAEC;AACrB,CAAC,CAAC;;AAEF;AACA,OAAO,MAAMC,qBAAqB,GAAG;EACnCJ,KAAK;EAELJ,SAASA,CAACS,QAAwD,EAAE;IAClE,OAAOR,GAAG,CAACG,KAAK,EAAE,MAAMK,QAAQ,CAACL,KAAK,CAAC,CAAC;EAC1C,CAAC;EAEDF,YAAYA,CACVQ,GAAM,EACND,QAAwD,EACxD;IACA,OAAON,MAAM,CAACC,KAAK,EAAEM,GAAG,EAAED,QAAQ,CAAC;EACrC,CAAC;EAEDE,GAAGA,CAACC,QAA6C,EAAE;IACjDC,MAAM,CAACC,MAAM,CAACV,KAAK,EAAE;MAAE,GAAGA,KAAK;MAAE,GAAGQ;IAAS,CAAC,CAAC;EACjD;AACF,CAAC"}
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
import { proxy } from 'valtio';
|
|
2
|
+
|
|
3
|
+
// -- Types --------------------------------------------- //
|
|
4
|
+
|
|
5
|
+
// -- State --------------------------------------------- //
|
|
6
|
+
const state = proxy({
|
|
7
|
+
view: 'Connect',
|
|
8
|
+
history: ['Connect']
|
|
9
|
+
});
|
|
10
|
+
|
|
11
|
+
// -- Controller ---------------------------------------- //
|
|
12
|
+
export const RouterController = {
|
|
13
|
+
state,
|
|
14
|
+
push(view, data) {
|
|
15
|
+
if (view !== state.view) {
|
|
16
|
+
state.view = view;
|
|
17
|
+
state.history.push(view);
|
|
18
|
+
state.data = data;
|
|
19
|
+
}
|
|
20
|
+
},
|
|
21
|
+
reset(view) {
|
|
22
|
+
state.view = view;
|
|
23
|
+
state.history = [view];
|
|
24
|
+
},
|
|
25
|
+
replace(view, data) {
|
|
26
|
+
if (state.history.length > 1 && state.history.at(-1) !== view) {
|
|
27
|
+
state.view = view;
|
|
28
|
+
state.history[state.history.length - 1] = view;
|
|
29
|
+
state.data = data;
|
|
30
|
+
}
|
|
31
|
+
},
|
|
32
|
+
goBack() {
|
|
33
|
+
if (state.history.length > 1) {
|
|
34
|
+
state.history.pop();
|
|
35
|
+
const [last] = state.history.slice(-1);
|
|
36
|
+
if (last) {
|
|
37
|
+
state.view = last;
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
},
|
|
41
|
+
goBackToIndex(historyIndex) {
|
|
42
|
+
if (state.history.length > 1) {
|
|
43
|
+
state.history = state.history.slice(0, historyIndex + 1);
|
|
44
|
+
const [last] = state.history.slice(-1);
|
|
45
|
+
if (last) {
|
|
46
|
+
state.view = last;
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
};
|
|
51
|
+
//# sourceMappingURL=RouterController.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["proxy","state","view","history","RouterController","push","data","reset","replace","length","at","goBack","pop","last","slice","goBackToIndex","historyIndex"],"sourceRoot":"../../../src","sources":["controllers/RouterController.ts"],"mappings":"AAAA,SAASA,KAAK,QAAQ,QAAQ;;AAG9B;;AA8BA;AACA,MAAMC,KAAK,GAAGD,KAAK,CAAwB;EACzCE,IAAI,EAAE,SAAS;EACfC,OAAO,EAAE,CAAC,SAAS;AACrB,CAAC,CAAC;;AAEF;AACA,OAAO,MAAMC,gBAAgB,GAAG;EAC9BH,KAAK;EAELI,IAAIA,CAACH,IAAmC,EAAEI,IAAoC,EAAE;IAC9E,IAAIJ,IAAI,KAAKD,KAAK,CAACC,IAAI,EAAE;MACvBD,KAAK,CAACC,IAAI,GAAGA,IAAI;MACjBD,KAAK,CAACE,OAAO,CAACE,IAAI,CAACH,IAAI,CAAC;MACxBD,KAAK,CAACK,IAAI,GAAGA,IAAI;IACnB;EACF,CAAC;EAEDC,KAAKA,CAACL,IAAmC,EAAE;IACzCD,KAAK,CAACC,IAAI,GAAGA,IAAI;IACjBD,KAAK,CAACE,OAAO,GAAG,CAACD,IAAI,CAAC;EACxB,CAAC;EAEDM,OAAOA,CAACN,IAAmC,EAAEI,IAAoC,EAAE;IACjF,IAAIL,KAAK,CAACE,OAAO,CAACM,MAAM,GAAG,CAAC,IAAIR,KAAK,CAACE,OAAO,CAACO,EAAE,CAAC,CAAC,CAAC,CAAC,KAAKR,IAAI,EAAE;MAC7DD,KAAK,CAACC,IAAI,GAAGA,IAAI;MACjBD,KAAK,CAACE,OAAO,CAACF,KAAK,CAACE,OAAO,CAACM,MAAM,GAAG,CAAC,CAAC,GAAGP,IAAI;MAC9CD,KAAK,CAACK,IAAI,GAAGA,IAAI;IACnB;EACF,CAAC;EAEDK,MAAMA,CAAA,EAAG;IACP,IAAIV,KAAK,CAACE,OAAO,CAACM,MAAM,GAAG,CAAC,EAAE;MAC5BR,KAAK,CAACE,OAAO,CAACS,GAAG,CAAC,CAAC;MACnB,MAAM,CAACC,IAAI,CAAC,GAAGZ,KAAK,CAACE,OAAO,CAACW,KAAK,CAAC,CAAC,CAAC,CAAC;MACtC,IAAID,IAAI,EAAE;QACRZ,KAAK,CAACC,IAAI,GAAGW,IAAI;MACnB;IACF;EACF,CAAC;EAEDE,aAAaA,CAACC,YAAoB,EAAE;IAClC,IAAIf,KAAK,CAACE,OAAO,CAACM,MAAM,GAAG,CAAC,EAAE;MAC5BR,KAAK,CAACE,OAAO,GAAGF,KAAK,CAACE,OAAO,CAACW,KAAK,CAAC,CAAC,EAAEE,YAAY,GAAG,CAAC,CAAC;MACxD,MAAM,CAACH,IAAI,CAAC,GAAGZ,KAAK,CAACE,OAAO,CAACW,KAAK,CAAC,CAAC,CAAC,CAAC;MACtC,IAAID,IAAI,EAAE;QACRZ,KAAK,CAACC,IAAI,GAAGW,IAAI;MACnB;IACF;EACF;AACF,CAAC"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { proxy } from 'valtio';
|
|
2
|
+
|
|
3
|
+
// -- Types --------------------------------------------- //
|
|
4
|
+
|
|
5
|
+
// -- State --------------------------------------------- //
|
|
6
|
+
const state = proxy({
|
|
7
|
+
message: '',
|
|
8
|
+
variant: 'success',
|
|
9
|
+
open: false
|
|
10
|
+
});
|
|
11
|
+
|
|
12
|
+
// -- Controller ---------------------------------------- //
|
|
13
|
+
export const SnackController = {
|
|
14
|
+
state,
|
|
15
|
+
showSuccess(message) {
|
|
16
|
+
state.message = message;
|
|
17
|
+
state.variant = 'success';
|
|
18
|
+
state.open = true;
|
|
19
|
+
},
|
|
20
|
+
showError(message) {
|
|
21
|
+
state.message = message;
|
|
22
|
+
state.variant = 'error';
|
|
23
|
+
state.open = true;
|
|
24
|
+
},
|
|
25
|
+
hide() {
|
|
26
|
+
state.open = false;
|
|
27
|
+
}
|
|
28
|
+
};
|
|
29
|
+
//# sourceMappingURL=SnackController.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["proxy","state","message","variant","open","SnackController","showSuccess","showError","hide"],"sourceRoot":"../../../src","sources":["controllers/SnackController.ts"],"mappings":"AAAA,SAASA,KAAK,QAAQ,QAAQ;;AAE9B;;AAOA;AACA,MAAMC,KAAK,GAAGD,KAAK,CAAuB;EACxCE,OAAO,EAAE,EAAE;EACXC,OAAO,EAAE,SAAS;EAClBC,IAAI,EAAE;AACR,CAAC,CAAC;;AAEF;AACA,OAAO,MAAMC,eAAe,GAAG;EAC7BJ,KAAK;EAELK,WAAWA,CAACJ,OAAwC,EAAE;IACpDD,KAAK,CAACC,OAAO,GAAGA,OAAO;IACvBD,KAAK,CAACE,OAAO,GAAG,SAAS;IACzBF,KAAK,CAACG,IAAI,GAAG,IAAI;EACnB,CAAC;EAEDG,SAASA,CAACL,OAAwC,EAAE;IAClDD,KAAK,CAACC,OAAO,GAAGA,OAAO;IACvBD,KAAK,CAACE,OAAO,GAAG,OAAO;IACvBF,KAAK,CAACG,IAAI,GAAG,IAAI;EACnB,CAAC;EAEDI,IAAIA,CAAA,EAAG;IACLP,KAAK,CAACG,IAAI,GAAG,KAAK;EACpB;AACF,CAAC"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { proxy, subscribe as sub } from 'valtio';
|
|
2
|
+
|
|
3
|
+
// -- Types --------------------------------------------- //
|
|
4
|
+
|
|
5
|
+
// -- State --------------------------------------------- //
|
|
6
|
+
const state = proxy({
|
|
7
|
+
themeMode: 'dark',
|
|
8
|
+
themeVariables: {}
|
|
9
|
+
});
|
|
10
|
+
|
|
11
|
+
// -- Controller ---------------------------------------- //
|
|
12
|
+
export const ThemeController = {
|
|
13
|
+
state,
|
|
14
|
+
subscribe(callback) {
|
|
15
|
+
return sub(state, () => callback(state));
|
|
16
|
+
},
|
|
17
|
+
setThemeMode(themeMode) {
|
|
18
|
+
state.themeMode = themeMode;
|
|
19
|
+
},
|
|
20
|
+
setThemeVariables(themeVariables) {
|
|
21
|
+
state.themeVariables = {
|
|
22
|
+
...state.themeVariables,
|
|
23
|
+
...themeVariables
|
|
24
|
+
};
|
|
25
|
+
}
|
|
26
|
+
};
|
|
27
|
+
//# sourceMappingURL=ThemeController.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["proxy","subscribe","sub","state","themeMode","themeVariables","ThemeController","callback","setThemeMode","setThemeVariables"],"sourceRoot":"../../../src","sources":["controllers/ThemeController.ts"],"mappings":"AAAA,SAASA,KAAK,EAAEC,SAAS,IAAIC,GAAG,QAAQ,QAAQ;;AAGhD;;AAMA;AACA,MAAMC,KAAK,GAAGH,KAAK,CAAuB;EACxCI,SAAS,EAAE,MAAM;EACjBC,cAAc,EAAE,CAAC;AACnB,CAAC,CAAC;;AAEF;AACA,OAAO,MAAMC,eAAe,GAAG;EAC7BH,KAAK;EAELF,SAASA,CAACM,QAAkD,EAAE;IAC5D,OAAOL,GAAG,CAACC,KAAK,EAAE,MAAMI,QAAQ,CAACJ,KAAK,CAAC,CAAC;EAC1C,CAAC;EAEDK,YAAYA,CAACJ,SAA4C,EAAE;IACzDD,KAAK,CAACC,SAAS,GAAGA,SAAS;EAC7B,CAAC;EAEDK,iBAAiBA,CAACJ,cAAsD,EAAE;IACxEF,KAAK,CAACE,cAAc,GAAG;MAAE,GAAGF,KAAK,CAACE,cAAc;MAAE,GAAGA;IAAe,CAAC;EACvE;AACF,CAAC"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
// -- Controllers -------------------------------------------------------------
|
|
2
|
+
export { ModalController } from './controllers/ModalController';
|
|
3
|
+
export { RouterController } from './controllers/RouterController';
|
|
4
|
+
export { AccountController } from './controllers/AccountController';
|
|
5
|
+
export { NetworkController } from './controllers/NetworkController';
|
|
6
|
+
export { ConnectionController } from './controllers/ConnectionController';
|
|
7
|
+
export { ConnectorController } from './controllers/ConnectorController';
|
|
8
|
+
export { SnackController } from './controllers/SnackController';
|
|
9
|
+
export { ApiController } from './controllers/ApiController';
|
|
10
|
+
export { AssetController } from './controllers/AssetController';
|
|
11
|
+
export { ThemeController } from './controllers/ThemeController';
|
|
12
|
+
export { OptionsController } from './controllers/OptionsController';
|
|
13
|
+
export { PublicStateController } from './controllers/PublicStateController';
|
|
14
|
+
export { BlockchainApiController } from './controllers/BlockchainApiController';
|
|
15
|
+
export { EventsController } from './controllers/EventsController';
|
|
16
|
+
// -- Utils -------------------------------------------------------------------
|
|
17
|
+
export { AssetUtil } from './utils/AssetUtil';
|
|
18
|
+
export { ConstantsUtil } from './utils/ConstantsUtil';
|
|
19
|
+
export { CoreHelperUtil } from './utils/CoreHelperUtil';
|
|
20
|
+
export { StorageUtil } from './utils/StorageUtil';
|
|
21
|
+
export { EventUtil } from './utils/EventUtil';
|
|
22
|
+
export { RouterUtil } from './utils/RouterUtil';
|
|
23
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["ModalController","RouterController","AccountController","NetworkController","ConnectionController","ConnectorController","SnackController","ApiController","AssetController","ThemeController","OptionsController","PublicStateController","BlockchainApiController","EventsController","AssetUtil","ConstantsUtil","CoreHelperUtil","StorageUtil","EventUtil","RouterUtil"],"sourceRoot":"../../src","sources":["index.ts"],"mappings":"AAAA;AACA,SAASA,eAAe,QAAQ,+BAA+B;AAG/D,SAASC,gBAAgB,QAAQ,gCAAgC;AAGjE,SAASC,iBAAiB,QAAQ,iCAAiC;AAGnE,SAASC,iBAAiB,QAAQ,iCAAiC;AAMnE,SAASC,oBAAoB,QAAQ,oCAAoC;AAMzE,SAASC,mBAAmB,QAAQ,mCAAmC;AAGvE,SAASC,eAAe,QAAQ,+BAA+B;AAG/D,SAASC,aAAa,QAAQ,6BAA6B;AAG3D,SAASC,eAAe,QAAQ,+BAA+B;AAG/D,SAASC,eAAe,QAAQ,+BAA+B;AAG/D,SAASC,iBAAiB,QAAQ,iCAAiC;AAGnE,SAASC,qBAAqB,QAAQ,qCAAqC;AAG3E,SAASC,uBAAuB,QAAQ,uCAAuC;AAE/E,SAASC,gBAAgB,QAAQ,gCAAgC;AAGjE;AACA,SAASC,SAAS,QAAQ,mBAAmB;AAC7C,SAASC,aAAa,QAAQ,uBAAuB;AACrD,SAASC,cAAc,QAAQ,wBAAwB;AACvD,SAASC,WAAW,QAAQ,qBAAqB;AACjD,SAASC,SAAS,QAAQ,mBAAmB;AAC7C,SAASC,UAAU,QAAQ,oBAAoB"}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import { AssetController } from '../controllers/AssetController';
|
|
2
|
+
export const AssetUtil = {
|
|
3
|
+
getWalletImage(wallet) {
|
|
4
|
+
if (wallet?.image_url) {
|
|
5
|
+
return wallet?.image_url;
|
|
6
|
+
}
|
|
7
|
+
if (wallet?.image_id) {
|
|
8
|
+
return AssetController.state.walletImages[wallet.image_id];
|
|
9
|
+
}
|
|
10
|
+
return undefined;
|
|
11
|
+
},
|
|
12
|
+
getNetworkImage(network) {
|
|
13
|
+
if (network?.imageUrl) {
|
|
14
|
+
return network?.imageUrl;
|
|
15
|
+
}
|
|
16
|
+
if (network?.imageId) {
|
|
17
|
+
return AssetController.state.networkImages[network.imageId];
|
|
18
|
+
}
|
|
19
|
+
return undefined;
|
|
20
|
+
},
|
|
21
|
+
getConnectorImage(connector) {
|
|
22
|
+
if (connector?.imageUrl) {
|
|
23
|
+
return connector.imageUrl;
|
|
24
|
+
}
|
|
25
|
+
if (connector?.imageId) {
|
|
26
|
+
return AssetController.state.connectorImages[connector.imageId];
|
|
27
|
+
}
|
|
28
|
+
return undefined;
|
|
29
|
+
}
|
|
30
|
+
};
|
|
31
|
+
//# sourceMappingURL=AssetUtil.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["AssetController","AssetUtil","getWalletImage","wallet","image_url","image_id","state","walletImages","undefined","getNetworkImage","network","imageUrl","imageId","networkImages","getConnectorImage","connector","connectorImages"],"sourceRoot":"../../../src","sources":["utils/AssetUtil.ts"],"mappings":"AAAA,SAASA,eAAe,QAAQ,gCAAgC;AAGhE,OAAO,MAAMC,SAAS,GAAG;EACvBC,cAAcA,CAACC,MAAiB,EAAE;IAChC,IAAIA,MAAM,EAAEC,SAAS,EAAE;MACrB,OAAOD,MAAM,EAAEC,SAAS;IAC1B;IAEA,IAAID,MAAM,EAAEE,QAAQ,EAAE;MACpB,OAAOL,eAAe,CAACM,KAAK,CAACC,YAAY,CAACJ,MAAM,CAACE,QAAQ,CAAC;IAC5D;IAEA,OAAOG,SAAS;EAClB,CAAC;EAEDC,eAAeA,CAACC,OAAqB,EAAE;IACrC,IAAIA,OAAO,EAAEC,QAAQ,EAAE;MACrB,OAAOD,OAAO,EAAEC,QAAQ;IAC1B;IAEA,IAAID,OAAO,EAAEE,OAAO,EAAE;MACpB,OAAOZ,eAAe,CAACM,KAAK,CAACO,aAAa,CAACH,OAAO,CAACE,OAAO,CAAC;IAC7D;IAEA,OAAOJ,SAAS;EAClB,CAAC;EAEDM,iBAAiBA,CAACC,SAAqB,EAAE;IACvC,IAAIA,SAAS,EAAEJ,QAAQ,EAAE;MACvB,OAAOI,SAAS,CAACJ,QAAQ;IAC3B;IAEA,IAAII,SAAS,EAAEH,OAAO,EAAE;MACtB,OAAOZ,eAAe,CAACM,KAAK,CAACU,eAAe,CAACD,SAAS,CAACH,OAAO,CAAC;IACjE;IAEA,OAAOJ,SAAS;EAClB;AACF,CAAC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
export const ConstantsUtil = {
|
|
2
|
+
FOUR_MINUTES_MS: 240000,
|
|
3
|
+
TEN_SEC_MS: 10000,
|
|
4
|
+
ONE_SEC_MS: 1000,
|
|
5
|
+
EMAIL_REGEX: /^[a-zA-Z0-9.!#$%&’*+/=?^_`{|}~-]+@[a-zA-Z0-9-]+(?:\.[a-zA-Z0-9-]+)+$/,
|
|
6
|
+
LINKING_ERROR: 'LINKING_ERROR'
|
|
7
|
+
};
|
|
8
|
+
//# sourceMappingURL=ConstantsUtil.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["ConstantsUtil","FOUR_MINUTES_MS","TEN_SEC_MS","ONE_SEC_MS","EMAIL_REGEX","LINKING_ERROR"],"sourceRoot":"../../../src","sources":["utils/ConstantsUtil.ts"],"mappings":"AAAA,OAAO,MAAMA,aAAa,GAAG;EAC3BC,eAAe,EAAE,MAAM;EAEvBC,UAAU,EAAE,KAAK;EAEjBC,UAAU,EAAE,IAAI;EAEhBC,WAAW,EAAE,sEAAsE;EAEnFC,aAAa,EAAE;AACjB,CAAC"}
|
|
@@ -0,0 +1,208 @@
|
|
|
1
|
+
/* eslint-disable no-bitwise */
|
|
2
|
+
|
|
3
|
+
import { Linking, Platform } from 'react-native';
|
|
4
|
+
import { ConstantsUtil as CommonConstants } from '@reown/appkit-common-react-native';
|
|
5
|
+
import { ConstantsUtil } from './ConstantsUtil';
|
|
6
|
+
// -- Helpers -----------------------------------------------------------------
|
|
7
|
+
async function isAppInstalledIos(deepLink) {
|
|
8
|
+
try {
|
|
9
|
+
return deepLink ? Linking.canOpenURL(deepLink) : Promise.resolve(false);
|
|
10
|
+
} catch (error) {
|
|
11
|
+
return Promise.resolve(false);
|
|
12
|
+
}
|
|
13
|
+
}
|
|
14
|
+
async function isAppInstalledAndroid(packageName) {
|
|
15
|
+
try {
|
|
16
|
+
//@ts-ignore
|
|
17
|
+
if (!packageName || typeof global?.Application?.isAppInstalled !== 'function') {
|
|
18
|
+
return Promise.resolve(false);
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
//@ts-ignore
|
|
22
|
+
return global?.Application?.isAppInstalled(packageName);
|
|
23
|
+
} catch (error) {
|
|
24
|
+
return Promise.resolve(false);
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
// -- Utility --------------------------------------------------------------------
|
|
29
|
+
export const CoreHelperUtil = {
|
|
30
|
+
isPairingExpired(expiry) {
|
|
31
|
+
return expiry ? expiry - Date.now() <= ConstantsUtil.TEN_SEC_MS : true;
|
|
32
|
+
},
|
|
33
|
+
isAllowedRetry(lastRetry) {
|
|
34
|
+
return Date.now() - lastRetry >= ConstantsUtil.ONE_SEC_MS;
|
|
35
|
+
},
|
|
36
|
+
getPairingExpiry() {
|
|
37
|
+
return Date.now() + ConstantsUtil.FOUR_MINUTES_MS;
|
|
38
|
+
},
|
|
39
|
+
getNetworkId(caipAddress) {
|
|
40
|
+
return caipAddress?.split(':')[1];
|
|
41
|
+
},
|
|
42
|
+
getPlainAddress(caipAddress) {
|
|
43
|
+
return caipAddress?.split(':')[2];
|
|
44
|
+
},
|
|
45
|
+
async wait(milliseconds) {
|
|
46
|
+
return new Promise(resolve => {
|
|
47
|
+
setTimeout(resolve, milliseconds);
|
|
48
|
+
});
|
|
49
|
+
},
|
|
50
|
+
debounce(func, timeout = 500) {
|
|
51
|
+
let timer;
|
|
52
|
+
return (...args) => {
|
|
53
|
+
function next() {
|
|
54
|
+
func(...args);
|
|
55
|
+
}
|
|
56
|
+
if (timer) {
|
|
57
|
+
clearTimeout(timer);
|
|
58
|
+
}
|
|
59
|
+
timer = setTimeout(next, timeout);
|
|
60
|
+
};
|
|
61
|
+
},
|
|
62
|
+
isHttpUrl(url) {
|
|
63
|
+
return url.startsWith('http://') || url.startsWith('https://');
|
|
64
|
+
},
|
|
65
|
+
isLinkModeURL(url) {
|
|
66
|
+
if (!url) {
|
|
67
|
+
return false;
|
|
68
|
+
}
|
|
69
|
+
return CoreHelperUtil.isHttpUrl(url) && url.includes('wc_ev');
|
|
70
|
+
},
|
|
71
|
+
formatNativeUrl(appUrl, wcUri) {
|
|
72
|
+
if (CoreHelperUtil.isLinkModeURL(wcUri)) {
|
|
73
|
+
return {
|
|
74
|
+
redirect: wcUri,
|
|
75
|
+
href: wcUri
|
|
76
|
+
};
|
|
77
|
+
}
|
|
78
|
+
if (CoreHelperUtil.isHttpUrl(appUrl)) {
|
|
79
|
+
return this.formatUniversalUrl(appUrl, wcUri);
|
|
80
|
+
}
|
|
81
|
+
let safeAppUrl = appUrl;
|
|
82
|
+
if (!safeAppUrl.includes('://')) {
|
|
83
|
+
safeAppUrl = appUrl.replaceAll('/', '').replaceAll(':', '');
|
|
84
|
+
safeAppUrl = `${safeAppUrl}://`;
|
|
85
|
+
}
|
|
86
|
+
if (!safeAppUrl.endsWith('/')) {
|
|
87
|
+
safeAppUrl = `${safeAppUrl}/`;
|
|
88
|
+
}
|
|
89
|
+
const encodedWcUrl = encodeURIComponent(wcUri);
|
|
90
|
+
return {
|
|
91
|
+
redirect: `${safeAppUrl}wc?uri=${encodedWcUrl}`,
|
|
92
|
+
href: safeAppUrl
|
|
93
|
+
};
|
|
94
|
+
},
|
|
95
|
+
formatUniversalUrl(appUrl, wcUri) {
|
|
96
|
+
if (CoreHelperUtil.isLinkModeURL(wcUri)) {
|
|
97
|
+
return {
|
|
98
|
+
redirect: wcUri,
|
|
99
|
+
href: wcUri
|
|
100
|
+
};
|
|
101
|
+
}
|
|
102
|
+
if (!CoreHelperUtil.isHttpUrl(appUrl)) {
|
|
103
|
+
return this.formatNativeUrl(appUrl, wcUri);
|
|
104
|
+
}
|
|
105
|
+
let safeAppUrl = appUrl;
|
|
106
|
+
if (!safeAppUrl.endsWith('/')) {
|
|
107
|
+
safeAppUrl = `${safeAppUrl}/`;
|
|
108
|
+
}
|
|
109
|
+
const encodedWcUrl = encodeURIComponent(wcUri);
|
|
110
|
+
return {
|
|
111
|
+
redirect: `${safeAppUrl}wc?uri=${encodedWcUrl}`,
|
|
112
|
+
href: safeAppUrl
|
|
113
|
+
};
|
|
114
|
+
},
|
|
115
|
+
async openLink(url) {
|
|
116
|
+
try {
|
|
117
|
+
await Linking.openURL(url);
|
|
118
|
+
} catch (error) {
|
|
119
|
+
throw new Error(ConstantsUtil.LINKING_ERROR);
|
|
120
|
+
}
|
|
121
|
+
},
|
|
122
|
+
formatBalance(balance, symbol, decimals = 3) {
|
|
123
|
+
let formattedBalance;
|
|
124
|
+
if (balance === '0') {
|
|
125
|
+
formattedBalance = '0.000';
|
|
126
|
+
} else if (typeof balance === 'string') {
|
|
127
|
+
const number = Number(balance);
|
|
128
|
+
if (number) {
|
|
129
|
+
const regex = new RegExp(`^-?\\d+(?:\\.\\d{0,${decimals}})?`, 'u');
|
|
130
|
+
formattedBalance = number.toString().match(regex)?.[0];
|
|
131
|
+
}
|
|
132
|
+
}
|
|
133
|
+
return formattedBalance ? `${formattedBalance} ${symbol}` : `0.000 ${symbol || ''}`;
|
|
134
|
+
},
|
|
135
|
+
getApiUrl() {
|
|
136
|
+
return CommonConstants.API_URL;
|
|
137
|
+
},
|
|
138
|
+
getBlockchainApiUrl() {
|
|
139
|
+
return CommonConstants.BLOCKCHAIN_API_RPC_URL;
|
|
140
|
+
},
|
|
141
|
+
getAnalyticsUrl() {
|
|
142
|
+
return CommonConstants.PULSE_API_URL;
|
|
143
|
+
},
|
|
144
|
+
getUUID() {
|
|
145
|
+
if (global?.crypto.getRandomValues) {
|
|
146
|
+
const buffer = new Uint8Array(16);
|
|
147
|
+
global?.crypto.getRandomValues(buffer);
|
|
148
|
+
|
|
149
|
+
// Set the version (4) and variant (8, 9, A, or B) bits
|
|
150
|
+
buffer[6] = (buffer[6] ?? 0 & 0x0f) | 0x40;
|
|
151
|
+
buffer[8] = (buffer[8] ?? 0 & 0x3f) | 0x80;
|
|
152
|
+
|
|
153
|
+
// Convert the buffer to a hexadecimal string
|
|
154
|
+
const hexString = Array.from(buffer, byte => byte.toString(16).padStart(2, '0')).join('');
|
|
155
|
+
const formatted = `${hexString.slice(0, 8)}-${hexString.slice(8, 12)}-${hexString.slice(12, 16)}-${hexString.slice(16, 20)}-${hexString.slice(20)}`;
|
|
156
|
+
return formatted;
|
|
157
|
+
}
|
|
158
|
+
return 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/gu, c => {
|
|
159
|
+
const r = Math.random() * 16 | 0;
|
|
160
|
+
const v = c === 'x' ? r : r & 0x3 | 0x8;
|
|
161
|
+
return v.toString(16);
|
|
162
|
+
});
|
|
163
|
+
},
|
|
164
|
+
getBundleId() {
|
|
165
|
+
if (global?.Application?.applicationId) {
|
|
166
|
+
return global?.Application?.applicationId;
|
|
167
|
+
}
|
|
168
|
+
return undefined;
|
|
169
|
+
},
|
|
170
|
+
parseError(error) {
|
|
171
|
+
if (typeof error === 'string') {
|
|
172
|
+
return error;
|
|
173
|
+
} else if (typeof error?.issues?.[0]?.message === 'string') {
|
|
174
|
+
return error.issues[0].message;
|
|
175
|
+
} else if (error instanceof Error) {
|
|
176
|
+
return error.message;
|
|
177
|
+
}
|
|
178
|
+
return 'Unknown error';
|
|
179
|
+
},
|
|
180
|
+
async checkInstalled(wallet) {
|
|
181
|
+
let isInstalled = false;
|
|
182
|
+
const scheme = wallet.ios_schema;
|
|
183
|
+
const appId = wallet.android_app_id;
|
|
184
|
+
try {
|
|
185
|
+
isInstalled = await Platform.select({
|
|
186
|
+
ios: isAppInstalledIos(scheme),
|
|
187
|
+
android: isAppInstalledAndroid(appId),
|
|
188
|
+
default: Promise.resolve(false)
|
|
189
|
+
});
|
|
190
|
+
} catch {
|
|
191
|
+
isInstalled = false;
|
|
192
|
+
}
|
|
193
|
+
return isInstalled;
|
|
194
|
+
},
|
|
195
|
+
isValidEmail(email) {
|
|
196
|
+
return ConstantsUtil.EMAIL_REGEX.test(email);
|
|
197
|
+
},
|
|
198
|
+
allSettled(promises) {
|
|
199
|
+
return Promise.all(promises.map(promise => promise.then(value => ({
|
|
200
|
+
status: 'fulfilled',
|
|
201
|
+
value
|
|
202
|
+
})).catch(reason => ({
|
|
203
|
+
status: 'rejected',
|
|
204
|
+
reason
|
|
205
|
+
}))));
|
|
206
|
+
}
|
|
207
|
+
};
|
|
208
|
+
//# sourceMappingURL=CoreHelperUtil.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["Linking","Platform","ConstantsUtil","CommonConstants","isAppInstalledIos","deepLink","canOpenURL","Promise","resolve","error","isAppInstalledAndroid","packageName","global","Application","isAppInstalled","CoreHelperUtil","isPairingExpired","expiry","Date","now","TEN_SEC_MS","isAllowedRetry","lastRetry","ONE_SEC_MS","getPairingExpiry","FOUR_MINUTES_MS","getNetworkId","caipAddress","split","getPlainAddress","wait","milliseconds","setTimeout","debounce","func","timeout","timer","args","next","clearTimeout","isHttpUrl","url","startsWith","isLinkModeURL","includes","formatNativeUrl","appUrl","wcUri","redirect","href","formatUniversalUrl","safeAppUrl","replaceAll","endsWith","encodedWcUrl","encodeURIComponent","openLink","openURL","Error","LINKING_ERROR","formatBalance","balance","symbol","decimals","formattedBalance","number","Number","regex","RegExp","toString","match","getApiUrl","API_URL","getBlockchainApiUrl","BLOCKCHAIN_API_RPC_URL","getAnalyticsUrl","PULSE_API_URL","getUUID","crypto","getRandomValues","buffer","Uint8Array","hexString","Array","from","byte","padStart","join","formatted","slice","replace","c","r","Math","random","v","getBundleId","applicationId","undefined","parseError","issues","message","checkInstalled","wallet","isInstalled","scheme","ios_schema","appId","android_app_id","select","ios","android","default","isValidEmail","email","EMAIL_REGEX","test","allSettled","promises","all","map","promise","then","value","status","catch","reason"],"sourceRoot":"../../../src","sources":["utils/CoreHelperUtil.ts"],"mappings":"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"}
|