@w3ux/react-connect-kit 1.2.1 → 1.3.0-alpha.2
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/ExtensionAccountsProvider/Extensions.js +75 -167
- package/ExtensionAccountsProvider/Extensions.js.map +1 -1
- package/ExtensionAccountsProvider/defaults.js +7 -5
- package/ExtensionAccountsProvider/defaults.js.map +1 -1
- package/ExtensionAccountsProvider/index.js +139 -256
- package/ExtensionAccountsProvider/index.js.map +1 -1
- package/ExtensionAccountsProvider/snap.js +52 -121
- package/ExtensionAccountsProvider/snap.js.map +1 -1
- package/ExtensionAccountsProvider/types.js +2 -0
- package/ExtensionAccountsProvider/types.js.map +1 -1
- package/ExtensionAccountsProvider/useImportExtension.js +24 -44
- package/ExtensionAccountsProvider/useImportExtension.js.map +1 -1
- package/ExtensionAccountsProvider/utils.js +14 -17
- package/ExtensionAccountsProvider/utils.js.map +1 -1
- package/ExtensionsProvider/defaults.js +8 -6
- package/ExtensionsProvider/defaults.js.map +1 -1
- package/ExtensionsProvider/index.js +56 -115
- package/ExtensionsProvider/index.js.map +1 -1
- package/ExtensionsProvider/types.js +2 -0
- package/ExtensionsProvider/types.js.map +1 -1
- package/ExtensionsProvider/utils.js +21 -73
- package/ExtensionsProvider/utils.js.map +1 -1
- package/LedgerAccountsProvider/defaults.js +9 -7
- package/LedgerAccountsProvider/defaults.js.map +1 -1
- package/LedgerAccountsProvider/index.js +39 -68
- package/LedgerAccountsProvider/index.js.map +1 -1
- package/LedgerAccountsProvider/types.js +2 -0
- package/LedgerAccountsProvider/types.js.map +1 -1
- package/LedgerAccountsProvider/utils.js +16 -25
- package/LedgerAccountsProvider/utils.js.map +1 -1
- package/VaultAccountsProvider/defaults.js +9 -7
- package/VaultAccountsProvider/defaults.js.map +1 -1
- package/VaultAccountsProvider/index.js +40 -66
- package/VaultAccountsProvider/index.js.map +1 -1
- package/VaultAccountsProvider/types.js +2 -0
- package/VaultAccountsProvider/types.js.map +1 -1
- package/VaultAccountsProvider/utils.js +6 -4
- package/VaultAccountsProvider/utils.js.map +1 -1
- package/index.js +2 -0
- package/index.js.map +1 -1
- package/package.json +5 -5
- package/types.js +2 -0
- package/types.js.map +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/LedgerAccountsProvider/index.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"sources":["../src/LedgerAccountsProvider/index.tsx"],"names":[],"mappings":"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","file":"index.js","sourcesContent":["/* @license Copyright 2024 w3ux authors & contributors\nSPDX-License-Identifier: GPL-3.0-only */\n\nimport { createContext, useContext, useRef, useState } from \"react\";\nimport { defaultLedgerAccountsContext } from \"./defaults\";\nimport {\n LedgerAccountsContextInterface,\n LedgerAccountsProviderProps,\n} from \"./types\";\nimport { LedgerAccount } from \"../types\";\nimport {\n getLocalLedgerAccounts,\n getLocalLedgerAddresses,\n isLocalLedgerAccount,\n renameLocalLedgerAddress,\n} from \"./utils\";\nimport { setStateWithRef } from \"@w3ux/utils\";\n\nexport const LedgerAccountsContext =\n createContext<LedgerAccountsContextInterface>(defaultLedgerAccountsContext);\n\nexport const useLedgerAccounts = () => useContext(LedgerAccountsContext);\n\nexport const LedgerAccountsProvider = ({\n children,\n}: LedgerAccountsProviderProps) => {\n // Store the fetched ledger accounts.\n const [ledgerAccounts, setLedgerAccountsState] = useState<LedgerAccount[]>(\n getLocalLedgerAccounts()\n );\n const ledgerAccountsRef = useRef(ledgerAccounts);\n\n // Check if a Ledger address exists in imported addresses.\n const ledgerAccountExists = (network: string, address: string) =>\n !!getLocalLedgerAccounts().find((account) =>\n isLocalLedgerAccount(network, account, address)\n );\n\n // Adds a ledger address to the list of fetched addresses.\n const addLedgerAccount = (\n network: string,\n address: string,\n index: number,\n callback?: () => void\n ) => {\n let newLedgerAccounts = getLocalLedgerAccounts();\n\n const ledgerAddress = getLocalLedgerAddresses().find((a) =>\n isLocalLedgerAccount(network, a, address)\n );\n\n if (\n ledgerAddress &&\n !newLedgerAccounts.find((account) =>\n isLocalLedgerAccount(network, account, address)\n )\n ) {\n const newAccount = {\n address,\n network,\n name: ledgerAddress.name,\n source: \"ledger\",\n index,\n };\n\n // Update the full list of local ledger accounts with new entry.\n newLedgerAccounts = [...newLedgerAccounts].concat(newAccount);\n localStorage.setItem(\n \"ledger_accounts\",\n JSON.stringify(newLedgerAccounts)\n );\n\n // Store only those accounts on the current network in state.\n setStateWithRef(\n newLedgerAccounts.filter((account) => account.network === network),\n setLedgerAccountsState,\n ledgerAccountsRef\n );\n\n // Handle optional callback function.\n if (typeof callback === \"function\") {\n callback();\n }\n return newAccount;\n }\n return null;\n };\n\n // Removes a Ledger account from state and local storage.\n const removeLedgerAccount = (\n network: string,\n address: string,\n callback?: () => void\n ) => {\n // Remove th account from local storage records\n const newLedgerAccounts = getLocalLedgerAccounts().filter((account) => {\n if (account.address !== address) {\n return true;\n }\n if (account.network !== network) {\n return true;\n }\n return false;\n });\n if (!newLedgerAccounts.length) {\n localStorage.removeItem(\"ledger_accounts\");\n } else {\n localStorage.setItem(\n \"ledger_accounts\",\n JSON.stringify(newLedgerAccounts)\n );\n }\n\n // Update state with the new list of accounts.\n setStateWithRef(\n newLedgerAccounts.filter((account) => account.network === network),\n setLedgerAccountsState,\n ledgerAccountsRef\n );\n\n // Handle optional callback function.\n if (typeof callback === \"function\") {\n callback();\n }\n };\n\n // Renames an imported ledger account.\n const renameLedgerAccount = (\n network: string,\n address: string,\n newName: string\n ) => {\n // Update the local storage records.\n const newLedgerAccounts = getLocalLedgerAccounts().map((account) =>\n isLocalLedgerAccount(network, account, address)\n ? {\n ...account,\n name: newName,\n }\n : account\n );\n renameLocalLedgerAddress(address, newName, network);\n localStorage.setItem(\"ledger_accounts\", JSON.stringify(newLedgerAccounts));\n\n // Update state with the new list of accounts.\n setStateWithRef(\n newLedgerAccounts.filter((account) => account.network === network),\n setLedgerAccountsState,\n ledgerAccountsRef\n );\n };\n\n // Gets an imported address along with its Ledger metadata.\n const getLedgerAccount = (network: string, address: string) => {\n const localLedgerAccounts = getLocalLedgerAccounts();\n if (!localLedgerAccounts) {\n return null;\n }\n return (\n localLedgerAccounts.find((account) =>\n isLocalLedgerAccount(network, account, address)\n ) || null\n );\n };\n\n // Gets Ledger accounts for a network.\n const getLedgerAccounts = (network: string) =>\n ledgerAccountsRef.current.filter((a) => a.network === network);\n\n return (\n <LedgerAccountsContext.Provider\n value={{\n ledgerAccountExists,\n getLedgerAccount,\n addLedgerAccount,\n removeLedgerAccount,\n renameLedgerAccount,\n getLedgerAccounts,\n ledgerAccounts: ledgerAccountsRef.current,\n }}\n >\n {children}\n </LedgerAccountsContext.Provider>\n );\n};\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/LedgerAccountsProvider/types.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"sources":["../src/LedgerAccountsProvider/types.ts"],"names":[],"mappings":"","file":"types.js","sourcesContent":["/* @license Copyright 2024 w3ux authors & contributors\nSPDX-License-Identifier: GPL-3.0-only */\n\nimport { ReactNode } from \"react\";\nimport { LedgerAccount } from \"../types\";\n\nexport interface LedgerAccountsContextInterface {\n ledgerAccountExists: (network: string, a: string) => boolean;\n addLedgerAccount: (\n network: string,\n address: string,\n index: number,\n callback?: () => void\n ) => LedgerAccount | null;\n removeLedgerAccount: (\n network: string,\n address: string,\n callback?: () => void\n ) => void;\n renameLedgerAccount: (network: string, address: string, name: string) => void;\n getLedgerAccount: (network: string, address: string) => LedgerAccount | null;\n getLedgerAccounts: (network: string) => LedgerAccount[];\n ledgerAccounts: LedgerAccount[];\n}\n\nexport interface LedgerAccountsProviderProps {\n children: ReactNode;\n}\n\nexport interface LedgerAddress {\n address: string;\n index: number;\n name: string;\n network: string;\n pubKey: string;\n}\n"]}
|
|
@@ -1,38 +1,29 @@
|
|
|
1
|
-
var __assign = (this && this.__assign) || function () {
|
|
2
|
-
__assign = Object.assign || function(t) {
|
|
3
|
-
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
4
|
-
s = arguments[i];
|
|
5
|
-
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
|
6
|
-
t[p] = s[p];
|
|
7
|
-
}
|
|
8
|
-
return t;
|
|
9
|
-
};
|
|
10
|
-
return __assign.apply(this, arguments);
|
|
11
|
-
};
|
|
12
1
|
import { localStorageOrDefault } from "@w3ux/utils";
|
|
13
|
-
export
|
|
14
|
-
|
|
2
|
+
export const getLocalLedgerAccounts = (network) => {
|
|
3
|
+
const localAddresses = localStorageOrDefault("ledger_accounts", [], true);
|
|
15
4
|
return network
|
|
16
|
-
? localAddresses.filter(
|
|
5
|
+
? localAddresses.filter((a) => a.network === network)
|
|
17
6
|
: localAddresses;
|
|
18
7
|
};
|
|
19
|
-
export
|
|
20
|
-
export
|
|
21
|
-
|
|
8
|
+
export const isLocalLedgerAccount = (network, account, address) => account.address === address && account.network === network;
|
|
9
|
+
export const getLocalLedgerAddresses = (network) => {
|
|
10
|
+
const localAddresses = localStorageOrDefault("ledger_addresses", [], true);
|
|
22
11
|
return network
|
|
23
|
-
? localAddresses.filter(
|
|
12
|
+
? localAddresses.filter((a) => a.network === network)
|
|
24
13
|
: localAddresses;
|
|
25
14
|
};
|
|
26
|
-
export
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
15
|
+
export const renameLocalLedgerAddress = (address, name, network) => {
|
|
16
|
+
const localLedger = localStorageOrDefault("ledger_addresses", [], true)?.map((i) => !(i.address === address && i.network === network)
|
|
17
|
+
? i
|
|
18
|
+
: {
|
|
19
|
+
...i,
|
|
20
|
+
name,
|
|
21
|
+
});
|
|
33
22
|
if (localLedger) {
|
|
34
23
|
localStorage.setItem("ledger_addresses", JSON.stringify(localLedger));
|
|
35
24
|
}
|
|
36
25
|
};
|
|
37
26
|
|
|
27
|
+
//# sourceMappingURL=utils.js.map
|
|
38
28
|
|
|
29
|
+
//# sourceMappingURL=utils.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/LedgerAccountsProvider/utils.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"sources":["../src/LedgerAccountsProvider/utils.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AAKpD,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,OAAgB,EAAmB,EAAE;IAC1E,MAAM,cAAc,GAAG,qBAAqB,CAC1C,iBAAiB,EACjB,EAAE,EACF,IAAI,CACc,CAAC;IAErB,OAAO,OAAO;QACZ,CAAC,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,KAAK,OAAO,CAAC;QACrD,CAAC,CAAC,cAAc,CAAC;AACrB,CAAC,CAAC;AAGF,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAClC,OAAe,EACf,OAAoD,EACpD,OAAe,EACf,EAAE,CAAC,OAAO,CAAC,OAAO,KAAK,OAAO,IAAI,OAAO,CAAC,OAAO,KAAK,OAAO,CAAC;AAGhE,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,OAAgB,EAAE,EAAE;IAC1D,MAAM,cAAc,GAAG,qBAAqB,CAC1C,kBAAkB,EAClB,EAAE,EACF,IAAI,CACc,CAAC;IAErB,OAAO,OAAO;QACZ,CAAC,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,KAAK,OAAO,CAAC;QACrD,CAAC,CAAC,cAAc,CAAC;AACrB,CAAC,CAAC;AAGF,MAAM,CAAC,MAAM,wBAAwB,GAAG,CACtC,OAAe,EACf,IAAY,EACZ,OAAe,EACf,EAAE;IACF,MAAM,WAAW,GACf,qBAAqB,CAAC,kBAAkB,EAAE,EAAE,EAAE,IAAI,CACnD,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CACX,CAAC,CAAC,CAAC,CAAC,OAAO,KAAK,OAAO,IAAI,CAAC,CAAC,OAAO,KAAK,OAAO,CAAC;QAC/C,CAAC,CAAC,CAAC;QACH,CAAC,CAAC;YACE,GAAG,CAAC;YACJ,IAAI;SACL,CACN,CAAC;IACF,IAAI,WAAW,EAAE,CAAC;QAChB,YAAY,CAAC,OAAO,CAAC,kBAAkB,EAAE,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC,CAAC;IACxE,CAAC;AACH,CAAC,CAAC","file":"utils.js","sourcesContent":["/* @license Copyright 2024 w3ux authors & contributors\nSPDX-License-Identifier: GPL-3.0-only */\n\nimport { localStorageOrDefault } from \"@w3ux/utils\";\nimport { LedgerAccount } from \"../types\";\nimport { LedgerAddress } from \"./types\";\n\n// Gets imported Ledger accounts from local storage.\nexport const getLocalLedgerAccounts = (network?: string): LedgerAccount[] => {\n const localAddresses = localStorageOrDefault(\n \"ledger_accounts\",\n [],\n true\n ) as LedgerAccount[];\n\n return network\n ? localAddresses.filter((a) => a.network === network)\n : localAddresses;\n};\n\n// Gets whether an address is a local Ledger account.\nexport const isLocalLedgerAccount = (\n network: string,\n account: { address: string | null; network: string },\n address: string\n) => account.address === address && account.network === network;\n\n// Gets saved ledger addresses from local storage.\nexport const getLocalLedgerAddresses = (network?: string) => {\n const localAddresses = localStorageOrDefault(\n \"ledger_addresses\",\n [],\n true\n ) as LedgerAddress[];\n\n return network\n ? localAddresses.filter((a) => a.network === network)\n : localAddresses;\n};\n\n// Renames a record from local ledger addresses.\nexport const renameLocalLedgerAddress = (\n address: string,\n name: string,\n network: string\n) => {\n const localLedger = (\n localStorageOrDefault(\"ledger_addresses\", [], true) as LedgerAddress[]\n )?.map((i) =>\n !(i.address === address && i.network === network)\n ? i\n : {\n ...i,\n name,\n }\n );\n if (localLedger) {\n localStorage.setItem(\"ledger_addresses\", JSON.stringify(localLedger));\n }\n};\n"]}
|
|
@@ -1,11 +1,13 @@
|
|
|
1
|
-
export
|
|
2
|
-
vaultAccountExists:
|
|
3
|
-
addVaultAccount:
|
|
4
|
-
removeVaultAccount:
|
|
5
|
-
renameVaultAccount:
|
|
6
|
-
getVaultAccount:
|
|
7
|
-
getVaultAccounts:
|
|
1
|
+
export const defaultVaultAccountsContext = {
|
|
2
|
+
vaultAccountExists: (network, address) => false,
|
|
3
|
+
addVaultAccount: (network, address, index, callback) => null,
|
|
4
|
+
removeVaultAccount: (network, address, callback) => { },
|
|
5
|
+
renameVaultAccount: (network, address, newName) => { },
|
|
6
|
+
getVaultAccount: (network, address) => null,
|
|
7
|
+
getVaultAccounts: (network) => [],
|
|
8
8
|
vaultAccounts: [],
|
|
9
9
|
};
|
|
10
10
|
|
|
11
|
+
//# sourceMappingURL=defaults.js.map
|
|
11
12
|
|
|
13
|
+
//# sourceMappingURL=defaults.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/VaultAccountsProvider/defaults.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"sources":["../src/VaultAccountsProvider/defaults.ts"],"names":[],"mappings":"AAMA,MAAM,CAAC,MAAM,2BAA2B,GAAkC;IACxE,kBAAkB,EAAE,CAAC,OAAO,EAAE,OAAO,EAAE,EAAE,CAAC,KAAK;IAC/C,eAAe,EAAE,CAAC,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE,CAAC,IAAI;IAC5D,kBAAkB,EAAE,CAAC,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,EAAE,GAAE,CAAC;IACtD,kBAAkB,EAAE,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,EAAE,GAAE,CAAC;IACrD,eAAe,EAAE,CAAC,OAAO,EAAE,OAAO,EAAE,EAAE,CAAC,IAAI;IAC3C,gBAAgB,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC,EAAE;IACjC,aAAa,EAAE,EAAE;CAClB,CAAC","file":"defaults.js","sourcesContent":["/* @license Copyright 2024 w3ux authors & contributors\nSPDX-License-Identifier: GPL-3.0-only */\n/* eslint-disable @typescript-eslint/no-unused-vars, @typescript-eslint/no-empty-function, no-unused-vars */\n\nimport type { VaultAccountsContextInterface } from \"./types\";\n\nexport const defaultVaultAccountsContext: VaultAccountsContextInterface = {\n vaultAccountExists: (network, address) => false,\n addVaultAccount: (network, address, index, callback) => null,\n removeVaultAccount: (network, address, callback) => {},\n renameVaultAccount: (network, address, newName) => {},\n getVaultAccount: (network, address) => null,\n getVaultAccounts: (network) => [],\n vaultAccounts: [],\n};\n"]}
|
|
@@ -1,52 +1,27 @@
|
|
|
1
|
-
var __assign = (this && this.__assign) || function () {
|
|
2
|
-
__assign = Object.assign || function(t) {
|
|
3
|
-
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
4
|
-
s = arguments[i];
|
|
5
|
-
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
|
6
|
-
t[p] = s[p];
|
|
7
|
-
}
|
|
8
|
-
return t;
|
|
9
|
-
};
|
|
10
|
-
return __assign.apply(this, arguments);
|
|
11
|
-
};
|
|
12
|
-
var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
|
|
13
|
-
if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
|
|
14
|
-
if (ar || !(i in from)) {
|
|
15
|
-
if (!ar) ar = Array.prototype.slice.call(from, 0, i);
|
|
16
|
-
ar[i] = from[i];
|
|
17
|
-
}
|
|
18
|
-
}
|
|
19
|
-
return to.concat(ar || Array.prototype.slice.call(from));
|
|
20
|
-
};
|
|
21
1
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
22
2
|
import { ellipsisFn, setStateWithRef } from "@w3ux/utils";
|
|
23
3
|
import { createContext, useContext, useRef, useState } from "react";
|
|
24
4
|
import { getLocalVaultAccounts, isLocalNetworkAddress } from "./utils";
|
|
25
5
|
import { defaultVaultAccountsContext } from "./defaults";
|
|
26
|
-
export
|
|
27
|
-
export
|
|
28
|
-
export
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
var newVaultAccounts = getLocalVaultAccounts();
|
|
39
|
-
if (!newVaultAccounts.find(function (a) { return isLocalNetworkAddress(network, a, address); })) {
|
|
40
|
-
var account = {
|
|
41
|
-
address: address,
|
|
42
|
-
network: network,
|
|
6
|
+
export const VaultAccountsContext = createContext(defaultVaultAccountsContext);
|
|
7
|
+
export const useVaultAccounts = () => useContext(VaultAccountsContext);
|
|
8
|
+
export const VaultAccountsProvider = ({ children, }) => {
|
|
9
|
+
const [vaultAccounts, seVaultAccountsState] = useState(getLocalVaultAccounts());
|
|
10
|
+
const vaultAccountsRef = useRef(vaultAccounts);
|
|
11
|
+
const vaultAccountExists = (network, address) => !!getLocalVaultAccounts().find((a) => isLocalNetworkAddress(network, a, address));
|
|
12
|
+
const addVaultAccount = (network, address, index, callback) => {
|
|
13
|
+
let newVaultAccounts = getLocalVaultAccounts();
|
|
14
|
+
if (!newVaultAccounts.find((a) => isLocalNetworkAddress(network, a, address))) {
|
|
15
|
+
const account = {
|
|
16
|
+
address,
|
|
17
|
+
network,
|
|
43
18
|
name: ellipsisFn(address),
|
|
44
19
|
source: "vault",
|
|
45
|
-
index
|
|
20
|
+
index,
|
|
46
21
|
};
|
|
47
|
-
newVaultAccounts =
|
|
22
|
+
newVaultAccounts = [...newVaultAccounts].concat(account);
|
|
48
23
|
localStorage.setItem("polkadot_vault_accounts", JSON.stringify(newVaultAccounts));
|
|
49
|
-
setStateWithRef(newVaultAccounts.filter(
|
|
24
|
+
setStateWithRef(newVaultAccounts.filter((a) => a.network === network), seVaultAccountsState, vaultAccountsRef);
|
|
50
25
|
if (typeof callback === "function") {
|
|
51
26
|
callback();
|
|
52
27
|
}
|
|
@@ -54,9 +29,9 @@ export var VaultAccountsProvider = function (_a) {
|
|
|
54
29
|
}
|
|
55
30
|
return null;
|
|
56
31
|
};
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
newVaultAccounts = newVaultAccounts.filter(
|
|
32
|
+
const removeVaultAccount = (network, address, callback) => {
|
|
33
|
+
let newVaultAccounts = getLocalVaultAccounts();
|
|
34
|
+
newVaultAccounts = newVaultAccounts.filter((a) => {
|
|
60
35
|
if (a.address !== address) {
|
|
61
36
|
return true;
|
|
62
37
|
}
|
|
@@ -71,42 +46,41 @@ export var VaultAccountsProvider = function (_a) {
|
|
|
71
46
|
else {
|
|
72
47
|
localStorage.setItem("polkadot_vault_accounts", JSON.stringify(newVaultAccounts));
|
|
73
48
|
}
|
|
74
|
-
setStateWithRef(newVaultAccounts.filter(
|
|
49
|
+
setStateWithRef(newVaultAccounts.filter((a) => a.network === network), seVaultAccountsState, vaultAccountsRef);
|
|
75
50
|
if (typeof callback === "function") {
|
|
76
51
|
callback();
|
|
77
52
|
}
|
|
78
53
|
};
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
var localVaultAccounts = getLocalVaultAccounts();
|
|
54
|
+
const getVaultAccount = (network, address) => {
|
|
55
|
+
const localVaultAccounts = getLocalVaultAccounts();
|
|
82
56
|
if (!localVaultAccounts) {
|
|
83
57
|
return null;
|
|
84
58
|
}
|
|
85
|
-
return (
|
|
86
|
-
return isLocalNetworkAddress(network, a, address);
|
|
87
|
-
})) !== null && _a !== void 0 ? _a : null);
|
|
59
|
+
return (localVaultAccounts.find((a) => isLocalNetworkAddress(network, a, address)) ?? null);
|
|
88
60
|
};
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
newVaultAccounts = newVaultAccounts.map(
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
61
|
+
const renameVaultAccount = (network, address, newName) => {
|
|
62
|
+
let newVaultAccounts = getLocalVaultAccounts();
|
|
63
|
+
newVaultAccounts = newVaultAccounts.map((a) => isLocalNetworkAddress(network, a, address)
|
|
64
|
+
? {
|
|
65
|
+
...a,
|
|
66
|
+
name: newName,
|
|
67
|
+
}
|
|
68
|
+
: a);
|
|
95
69
|
localStorage.setItem("polkadot_vault_accounts", JSON.stringify(newVaultAccounts));
|
|
96
|
-
setStateWithRef(newVaultAccounts.filter(
|
|
97
|
-
};
|
|
98
|
-
var getVaultAccounts = function (network) {
|
|
99
|
-
return vaultAccountsRef.current.filter(function (a) { return a.network === network; });
|
|
70
|
+
setStateWithRef(newVaultAccounts.filter((a) => a.network === network), seVaultAccountsState, vaultAccountsRef);
|
|
100
71
|
};
|
|
72
|
+
const getVaultAccounts = (network) => vaultAccountsRef.current.filter((a) => a.network === network);
|
|
101
73
|
return (_jsx(VaultAccountsContext.Provider, { value: {
|
|
102
|
-
vaultAccountExists
|
|
103
|
-
addVaultAccount
|
|
104
|
-
removeVaultAccount
|
|
105
|
-
renameVaultAccount
|
|
106
|
-
getVaultAccount
|
|
107
|
-
getVaultAccounts
|
|
74
|
+
vaultAccountExists,
|
|
75
|
+
addVaultAccount,
|
|
76
|
+
removeVaultAccount,
|
|
77
|
+
renameVaultAccount,
|
|
78
|
+
getVaultAccount,
|
|
79
|
+
getVaultAccounts,
|
|
108
80
|
vaultAccounts: vaultAccountsRef.current,
|
|
109
81
|
}, children: children }));
|
|
110
82
|
};
|
|
111
83
|
|
|
84
|
+
//# sourceMappingURL=index.js.map
|
|
112
85
|
|
|
86
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/VaultAccountsProvider/index.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"sources":["../src/VaultAccountsProvider/index.tsx"],"names":[],"mappings":"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","file":"index.js","sourcesContent":["/* @license Copyright 2024 w3ux authors & contributors\nSPDX-License-Identifier: GPL-3.0-only */\n\nimport { ellipsisFn, setStateWithRef } from \"@w3ux/utils\";\nimport { createContext, useContext, useRef, useState } from \"react\";\nimport { getLocalVaultAccounts, isLocalNetworkAddress } from \"./utils\";\nimport type {\n VaultAccountsContextInterface,\n VaultAccountsProviderProps,\n} from \"./types\";\nimport { defaultVaultAccountsContext } from \"./defaults\";\nimport { VaultAccount } from \"../types\";\n\nexport const VaultAccountsContext =\n createContext<VaultAccountsContextInterface>(defaultVaultAccountsContext);\n\nexport const useVaultAccounts = () => useContext(VaultAccountsContext);\n\nexport const VaultAccountsProvider = ({\n children,\n}: VaultAccountsProviderProps) => {\n const [vaultAccounts, seVaultAccountsState] = useState<VaultAccount[]>(\n getLocalVaultAccounts()\n );\n const vaultAccountsRef = useRef(vaultAccounts);\n\n // Check if a Vault address exists in imported addresses.\n const vaultAccountExists = (network: string, address: string) =>\n !!getLocalVaultAccounts().find((a) =>\n isLocalNetworkAddress(network, a, address)\n );\n\n // Adds a vault account to state and local storage.\n const addVaultAccount = (\n network: string,\n address: string,\n index: number,\n callback?: () => void\n ) => {\n let newVaultAccounts = getLocalVaultAccounts();\n\n if (\n !newVaultAccounts.find((a) => isLocalNetworkAddress(network, a, address))\n ) {\n const account = {\n address,\n network,\n name: ellipsisFn(address),\n source: \"vault\",\n index,\n };\n\n newVaultAccounts = [...newVaultAccounts].concat(account);\n localStorage.setItem(\n \"polkadot_vault_accounts\",\n JSON.stringify(newVaultAccounts)\n );\n\n // store only those accounts on the current network in state.\n setStateWithRef(\n newVaultAccounts.filter((a) => a.network === network),\n seVaultAccountsState,\n vaultAccountsRef\n );\n\n // Handle optional callback function.\n if (typeof callback === \"function\") {\n callback();\n }\n\n return account;\n }\n return null;\n };\n\n const removeVaultAccount = (\n network: string,\n address: string,\n callback?: () => void\n ) => {\n let newVaultAccounts = getLocalVaultAccounts();\n\n newVaultAccounts = newVaultAccounts.filter((a) => {\n if (a.address !== address) {\n return true;\n }\n if (a.network !== network) {\n return true;\n }\n return false;\n });\n\n if (!newVaultAccounts.length) {\n localStorage.removeItem(\"polkadot_vault_accounts\");\n } else {\n localStorage.setItem(\n \"polkadot_vault_accounts\",\n JSON.stringify(newVaultAccounts)\n );\n }\n setStateWithRef(\n newVaultAccounts.filter((a) => a.network === network),\n seVaultAccountsState,\n vaultAccountsRef\n );\n\n // Handle optional callback function.\n if (typeof callback === \"function\") {\n callback();\n }\n };\n\n const getVaultAccount = (network: string, address: string) => {\n const localVaultAccounts = getLocalVaultAccounts();\n if (!localVaultAccounts) {\n return null;\n }\n return (\n localVaultAccounts.find((a) =>\n isLocalNetworkAddress(network, a, address)\n ) ?? null\n );\n };\n\n const renameVaultAccount = (\n network: string,\n address: string,\n newName: string\n ) => {\n let newVaultAccounts = getLocalVaultAccounts();\n\n newVaultAccounts = newVaultAccounts.map((a) =>\n isLocalNetworkAddress(network, a, address)\n ? {\n ...a,\n name: newName,\n }\n : a\n );\n localStorage.setItem(\n \"polkadot_vault_accounts\",\n JSON.stringify(newVaultAccounts)\n );\n setStateWithRef(\n newVaultAccounts.filter((a) => a.network === network),\n seVaultAccountsState,\n vaultAccountsRef\n );\n };\n\n // Gets Vault accounts for a network.\n const getVaultAccounts = (network: string) =>\n vaultAccountsRef.current.filter((a) => a.network === network);\n\n return (\n <VaultAccountsContext.Provider\n value={{\n vaultAccountExists,\n addVaultAccount,\n removeVaultAccount,\n renameVaultAccount,\n getVaultAccount,\n getVaultAccounts,\n vaultAccounts: vaultAccountsRef.current,\n }}\n >\n {children}\n </VaultAccountsContext.Provider>\n );\n};\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/VaultAccountsProvider/types.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"sources":["../src/VaultAccountsProvider/types.ts"],"names":[],"mappings":"","file":"types.js","sourcesContent":["/* @license Copyright 2024 w3ux authors & contributors\nSPDX-License-Identifier: GPL-3.0-only */\n\nimport { ReactNode } from \"react\";\nimport { VaultAccount } from \"../types\";\n\nexport interface VaultAccountsProviderProps {\n children: ReactNode;\n network: string;\n}\n\nexport interface VaultAccountsContextInterface {\n vaultAccountExists: (network: string, address: string) => boolean;\n addVaultAccount: (\n network: string,\n address: string,\n index: number,\n callback?: () => void\n ) => VaultAccount | null;\n removeVaultAccount: (\n network: string,\n address: string,\n callback?: () => void\n ) => void;\n renameVaultAccount: (\n network: string,\n address: string,\n newName: string\n ) => void;\n getVaultAccount: (network: string, address: string) => VaultAccount | null;\n getVaultAccounts: (network: string) => VaultAccount[];\n vaultAccounts: VaultAccount[];\n}\n"]}
|
|
@@ -1,10 +1,12 @@
|
|
|
1
1
|
import { localStorageOrDefault } from "@w3ux/utils";
|
|
2
|
-
export
|
|
3
|
-
|
|
2
|
+
export const getLocalVaultAccounts = (network) => {
|
|
3
|
+
const localAddresses = localStorageOrDefault("polkadot_vault_accounts", [], true);
|
|
4
4
|
return network
|
|
5
|
-
? localAddresses.filter(
|
|
5
|
+
? localAddresses.filter((a) => a.network === network)
|
|
6
6
|
: localAddresses;
|
|
7
7
|
};
|
|
8
|
-
export
|
|
8
|
+
export const isLocalNetworkAddress = (chain, a, address) => a.address === address && a.network === chain;
|
|
9
9
|
|
|
10
|
+
//# sourceMappingURL=utils.js.map
|
|
10
11
|
|
|
12
|
+
//# sourceMappingURL=utils.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/VaultAccountsProvider/utils.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"sources":["../src/VaultAccountsProvider/utils.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AAIpD,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,OAAgB,EAAE,EAAE;IACxD,MAAM,cAAc,GAAG,qBAAqB,CAC1C,yBAAyB,EACzB,EAAE,EACF,IAAI,CACa,CAAC;IAEpB,OAAO,OAAO;QACZ,CAAC,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,KAAK,OAAO,CAAC;QACrD,CAAC,CAAC,cAAc,CAAC;AACrB,CAAC,CAAC;AAGF,MAAM,CAAC,MAAM,qBAAqB,GAAG,CACnC,KAAa,EACb,CAAmD,EACnD,OAAe,EACf,EAAE,CAAC,CAAC,CAAC,OAAO,KAAK,OAAO,IAAI,CAAC,CAAC,OAAO,KAAK,KAAK,CAAC","file":"utils.js","sourcesContent":["/* @license Copyright 2024 w3ux authors & contributors\nSPDX-License-Identifier: GPL-3.0-only */\n\nimport { localStorageOrDefault } from \"@w3ux/utils\";\nimport { VaultAccount } from \"../types\";\n\n// Gets imported Vault accounts from local storage.\nexport const getLocalVaultAccounts = (network?: string) => {\n const localAddresses = localStorageOrDefault(\n \"polkadot_vault_accounts\",\n [],\n true\n ) as VaultAccount[];\n\n return network\n ? localAddresses.filter((a) => a.network === network)\n : localAddresses;\n};\n\n// Gets whether an address is a local network address.\nexport const isLocalNetworkAddress = (\n chain: string,\n a: { address: string | undefined; network: string },\n address: string\n) => a.address === address && a.network === chain;\n"]}
|
package/index.js
CHANGED
package/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"sources":["../src/index.ts"],"names":[],"mappings":"AAGA,cAAc,4BAA4B,CAAC;AAC3C,cAAc,mCAAmC,CAAC;AAClD,cAAc,gCAAgC,CAAC;AAC/C,cAAc,+BAA+B,CAAC","file":"index.js","sourcesContent":["/* @license Copyright 2024 w3ux authors & contributors\nSPDX-License-Identifier: GPL-3.0-only */\n\nexport * from \"./ExtensionsProvider/index\";\nexport * from \"./ExtensionAccountsProvider/index\";\nexport * from \"./LedgerAccountsProvider/index\";\nexport * from \"./VaultAccountsProvider/index\";\n"]}
|
package/package.json
CHANGED
|
@@ -1,16 +1,16 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@w3ux/react-connect-kit",
|
|
3
|
-
"version": "1.2
|
|
3
|
+
"version": "1.3.0-alpha.2",
|
|
4
4
|
"license": "GPL-3.0-only",
|
|
5
|
-
"type": "module",
|
|
6
5
|
"dependencies": {
|
|
7
6
|
"@chainsafe/metamask-polkadot-adapter": "^0.6.0",
|
|
8
7
|
"@polkadot/util": "^12.6.2",
|
|
9
8
|
"@polkagate/extension-dapp": "^0.46.13",
|
|
10
|
-
"@w3ux/extension-assets": "^0.
|
|
11
|
-
"@w3ux/hooks": "^1.
|
|
12
|
-
"@w3ux/utils": "^0.
|
|
9
|
+
"@w3ux/extension-assets": "^0.3.0",
|
|
10
|
+
"@w3ux/hooks": "^1.1.0",
|
|
11
|
+
"@w3ux/utils": "^0.4.0"
|
|
13
12
|
},
|
|
13
|
+
"type": "module",
|
|
14
14
|
"peerDependencies": {
|
|
15
15
|
"@polkadot/api": "^11"
|
|
16
16
|
}
|
package/types.js
CHANGED
package/types.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/types.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"sources":["../src/types.ts"],"names":[],"mappings":"AAYA,cAAc,4BAA4B,CAAC;AAC3C,cAAc,mCAAmC,CAAC;AAClD,cAAc,gCAAgC,CAAC;AAC/C,cAAc,+BAA+B,CAAC","file":"types.js","sourcesContent":["/* @license Copyright 2024 w3ux authors & contributors\nSPDX-License-Identifier: GPL-3.0-only */\n\nimport {\n ExtensionAccount,\n ExtensionInterface,\n} from \"./ExtensionsProvider/types\";\n\n/*------------------------------------------------------------\n Re-export package inner types.\n ------------------------------------------------------------*/\n\nexport * from \"./ExtensionsProvider/types\";\nexport * from \"./ExtensionAccountsProvider/types\";\nexport * from \"./LedgerAccountsProvider/types\";\nexport * from \"./VaultAccountsProvider/types\";\n\n/*------------------------------------------------------------\n Imported account types.\n ------------------------------------------------------------*/\nexport type MaybeAddress = string | null;\n\nexport type AccountSource = \"extension\" | \"external\" | \"ledger\" | \"vault\";\n\nexport type ExternalAccountAddedBy = \"system\" | \"user\";\n\nexport type ImportedAccount =\n | ExtensionAccount\n | ExternalAccount\n | LedgerAccount\n | VaultAccount;\n\nexport interface ExternalAccount {\n address: string;\n network: string;\n name: string;\n source: string;\n addedBy: ExternalAccountAddedBy;\n}\n\nexport interface LedgerAccount {\n address: string;\n network: string;\n name: string;\n source: string;\n index: number;\n}\n\nexport interface VaultAccount {\n address: string;\n network: string;\n name: string;\n source: string;\n index: number;\n}\n\n/*------------------------------------------------------------\n Extension import process types.\n ------------------------------------------------------------*/\n\nexport type RawExtensions = Map<string, RawExtensionEnable>;\n\nexport type RawExtensionEnable = (name?: string) => Promise<ExtensionInterface>;\n\nexport type ExtensionEnableStatus =\n | \"valid\"\n | \"extension_not_found\"\n | \"enable_invalid\";\n\nexport type ExtensionEnableResults = Map<string, ExtensionEnableResult>;\n\nexport interface ExtensionEnableResult {\n extension?: ExtensionInterface;\n connected: boolean;\n error?: string;\n}\n"]}
|