@xyo-network/react-connected-accounts 10.0.3 → 10.0.4
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/dist/browser/classes/EnabledWallets.d.ts +1 -1
- package/dist/browser/classes/EnabledWallets.d.ts.map +1 -1
- package/dist/browser/components/ConnectedAccountsFlexbox.d.ts +1 -1
- package/dist/browser/components/ConnectedAccountsFlexbox.d.ts.map +1 -1
- package/dist/browser/components/wallet/dialogs/connect/LinkedProvidersFlexbox.d.ts +1 -1
- package/dist/browser/components/wallet/dialogs/connect/LinkedProvidersFlexbox.d.ts.map +1 -1
- package/dist/browser/components/wallet/dialogs/connect/Permissions.d.ts +1 -1
- package/dist/browser/components/wallet/dialogs/connect/Permissions.d.ts.map +1 -1
- package/dist/browser/components/wallet/dialogs/revoke/Dialog.d.ts.map +1 -1
- package/dist/browser/components/wallet/lib/ActiveProvider.d.ts +1 -1
- package/dist/browser/components/wallet/lib/ActiveProvider.d.ts.map +1 -1
- package/dist/browser/components/wallet/table/ConnectedWalletsTable.d.ts +1 -1
- package/dist/browser/components/wallet/table/ConnectedWalletsTable.d.ts.map +1 -1
- package/dist/browser/components/wallet/table/ConnectedWalletsTableRow.d.ts +1 -1
- package/dist/browser/components/wallet/table/ConnectedWalletsTableRow.d.ts.map +1 -1
- package/dist/browser/hooks/useDetectWallets.d.ts +1 -1
- package/dist/browser/hooks/useDetectWallets.d.ts.map +1 -1
- package/dist/browser/index.mjs +13 -13
- package/dist/browser/index.mjs.map +3 -3
- package/package.json +32 -30
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EnabledWallets.d.ts","sourceRoot":"","sources":["../../../src/classes/EnabledWallets.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"EnabledWallets.d.ts","sourceRoot":"","sources":["../../../src/classes/EnabledWallets.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAA;AAIvF;;GAEG;AACH,MAAM,MAAM,sBAAsB,GAAG,MAAM,CAAC,MAAM,EAAE;IAClD,OAAO,EAAE,OAAO,CAAA;IAChB,MAAM,EAAE,gBAAgB,CAAA;CACzB,CAAC,CAAA;AAEF;;GAEG;AACH,MAAM,MAAM,wBAAwB,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;AAE9D,MAAM,MAAM,cAAc,GAAG,MAAM,IAAI,CAAA;AAEvC,qBAAa,2BAA2B;IAEtC,kBAAkB,UAAO;IAGzB,OAAO,CAAC,cAAc,CAA+B;IAGrD,OAAO,CAAC,eAAe,CAA6B;IAGpD,OAAO,CAAC,SAAS,CAAuB;IAGxC,OAAO,CAAC,eAAe,CAA4B;gBAEvC,eAAe,SAA4B;IAKvD,IAAI,OAAO,2BAEV;IAED,aAAa,CAAC,IAAI,EAAE,MAAM;IAI1B,YAAY,CAAC,IAAI,EAAE,MAAM;IAIzB;;OAEG;IACH,YAAY,CAAC,OAAO,EAAE,iBAAiB;IAoBvC,SAAS,CAAC,QAAQ,EAAE,cAAc;IAOlC,mBAAmB,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO;IAQlD,OAAO,CAAC,UAAU;IAQlB,OAAO,CAAC,aAAa;IAMrB,OAAO,CAAC,eAAe;IAavB,OAAO,CAAC,cAAc;CAWvB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ConnectedAccountsFlexbox.d.ts","sourceRoot":"","sources":["../../../src/components/ConnectedAccountsFlexbox.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"ConnectedAccountsFlexbox.d.ts","sourceRoot":"","sources":["../../../src/components/ConnectedAccountsFlexbox.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAA;AAGjE,OAAO,KAAK,MAAM,OAAO,CAAA;AAKzB,MAAM,WAAW,6BAA8B,SAAQ,YAAY;IACjE,mBAAmB,CAAC,EAAE,OAAO,CAAA;IAE7B,qBAAqB,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,IAAI,CAAA;CACnD;AAED,eAAO,MAAM,wBAAwB;oEAElC,6BAA6B;;CAgC/B,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LinkedProvidersFlexbox.d.ts","sourceRoot":"","sources":["../../../../../../src/components/wallet/dialogs/connect/LinkedProvidersFlexbox.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"LinkedProvidersFlexbox.d.ts","sourceRoot":"","sources":["../../../../../../src/components/wallet/dialogs/connect/LinkedProvidersFlexbox.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAA;AAIjE,OAAO,KAAK,MAAM,OAAO,CAAA;AAIzB,MAAM,WAAW,2BAA4B,SAAQ,YAAY;IAC/D,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,YAAY,CAAC,EAAE,MAAM,CAAA;CACtB;AAED,eAAO,MAAM,sBAAsB,EAAE,KAAK,CAAC,EAAE,CAAC,2BAA2B,CA2BxE,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Permissions.d.ts","sourceRoot":"","sources":["../../../../../../src/components/wallet/dialogs/connect/Permissions.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"Permissions.d.ts","sourceRoot":"","sources":["../../../../../../src/components/wallet/dialogs/connect/Permissions.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAA;AAGjE,OAAO,KAAK,MAAM,OAAO,CAAA;AAEzB,MAAM,WAAW,6BAA8B,SAAQ,YAAY;CAAG;AAEtE,eAAO,MAAM,wBAAwB,EAAE,KAAK,CAAC,EAAE,CAAC,6BAA6B,CAiC5E,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Dialog.d.ts","sourceRoot":"","sources":["../../../../../../src/components/wallet/dialogs/revoke/Dialog.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"Dialog.d.ts","sourceRoot":"","sources":["../../../../../../src/components/wallet/dialogs/revoke/Dialog.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,eAAe,CAAA;AAIhD,OAAO,KAAK,MAAM,OAAO,CAAA;AAEzB,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAA;AAExD,MAAM,WAAW,iCAAkC,SAAQ,WAAW;IACpE,cAAc,CAAC,EAAE,cAAc,CAAA;CAChC;AAED,eAAO,MAAM,4BAA4B,EAAE,KAAK,CAAC,EAAE,CAAC,iCAAiC,CAmCpF,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ActiveProvider.d.ts","sourceRoot":"","sources":["../../../../../src/components/wallet/lib/ActiveProvider.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"ActiveProvider.d.ts","sourceRoot":"","sources":["../../../../../src/components/wallet/lib/ActiveProvider.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,8BAA8B,CAAA;AAE7D,MAAM,WAAW,cAAc;IAC7B,aAAa,CAAC,EAAE,SAAS,CAAC,eAAe,CAAC,CAAA;IAC1C,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,YAAY,CAAC,EAAE,MAAM,CAAA;CACtB"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
+
import type { EIP6963Connector } from '@ariestools/sdk-react/crypto';
|
|
1
2
|
import type { TableProps } from '@mui/material';
|
|
2
|
-
import type { EIP6963Connector } from '@xylabs/react-crypto';
|
|
3
3
|
import React from 'react';
|
|
4
4
|
export interface ConnectedWalletsTableProps extends TableProps {
|
|
5
5
|
ignoreConnectDialog?: boolean;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ConnectedWalletsTable.d.ts","sourceRoot":"","sources":["../../../../../src/components/wallet/table/ConnectedWalletsTable.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"ConnectedWalletsTable.d.ts","sourceRoot":"","sources":["../../../../../src/components/wallet/table/ConnectedWalletsTable.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAA;AACpE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,eAAe,CAAA;AAI/C,OAAO,KAAmB,MAAM,OAAO,CAAA;AAQvC,MAAM,WAAW,0BAA2B,SAAQ,UAAU;IAC5D,mBAAmB,CAAC,EAAE,OAAO,CAAA;IAC7B,qBAAqB,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,IAAI,CAAA;IAClD,OAAO,CAAC,EAAE,gBAAgB,EAAE,CAAA;CAC7B;AAED,eAAO,MAAM,qBAAqB,EAAE,KAAK,CAAC,EAAE,CAAC,0BAA0B,CAiDtE,CAAA"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
+
import type { EthWalletConnectorBase } from '@ariestools/sdk-react/crypto';
|
|
1
2
|
import type { TableRowProps } from '@mui/material';
|
|
2
|
-
import type { EthWalletConnectorBase } from '@xylabs/react-crypto';
|
|
3
3
|
import React from 'react';
|
|
4
4
|
import type { ActiveProvider } from '../lib/index.ts';
|
|
5
5
|
export interface WalletConnectionsTableRowProps extends TableRowProps {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ConnectedWalletsTableRow.d.ts","sourceRoot":"","sources":["../../../../../src/components/wallet/table/ConnectedWalletsTableRow.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"ConnectedWalletsTableRow.d.ts","sourceRoot":"","sources":["../../../../../src/components/wallet/table/ConnectedWalletsTableRow.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,8BAA8B,CAAA;AAE1E,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,eAAe,CAAA;AAElD,OAAO,KAA+B,MAAM,OAAO,CAAA;AAEnD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAA;AAGrD,MAAM,WAAW,8BAA+B,SAAQ,aAAa;IACnE,mBAAmB,CAAC,EAAE,OAAO,CAAA;IAC7B,cAAc,CAAC,EAAE,CAAC,cAAc,EAAE,cAAc,KAAK,IAAI,CAAA;IACzD,QAAQ,CAAC,EAAE,CAAC,cAAc,EAAE,cAAc,KAAK,IAAI,CAAA;IACnD,MAAM,EAAE,sBAAsB,CAAA;CAC/B;AAED,eAAO,MAAM,yBAAyB,EAAE,KAAK,CAAC,EAAE,CAAC,8BAA8B,CA4D9E,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useDetectWallets.d.ts","sourceRoot":"","sources":["../../../src/hooks/useDetectWallets.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAqB,gBAAgB,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"useDetectWallets.d.ts","sourceRoot":"","sources":["../../../src/hooks/useDetectWallets.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAqB,gBAAgB,EAAE,MAAM,8BAA8B,CAAA;AAkBvF,eAAO,MAAM,kBAAkB;;;CAU9B,CAAA"}
|
package/dist/browser/index.mjs
CHANGED
|
@@ -91,11 +91,11 @@ var EnabledEthWalletConnections = class {
|
|
|
91
91
|
};
|
|
92
92
|
|
|
93
93
|
// src/components/ConnectedAccountsFlexbox.tsx
|
|
94
|
+
import { FlexCol as FlexCol3 } from "@ariestools/sdk-react/flexbox";
|
|
94
95
|
import { Typography as Typography6, useTheme as useTheme2 } from "@mui/material";
|
|
95
|
-
import { FlexCol as FlexCol3 } from "@xylabs/react-flexbox";
|
|
96
96
|
|
|
97
97
|
// src/hooks/useDetectWallets.tsx
|
|
98
|
-
import { useWalletDiscovery } from "@
|
|
98
|
+
import { useWalletDiscovery } from "@ariestools/sdk-react/crypto";
|
|
99
99
|
import { useMemo } from "react";
|
|
100
100
|
var sortWallets = (wallets) => {
|
|
101
101
|
const result = [];
|
|
@@ -120,7 +120,7 @@ var useDetectedWallets = () => {
|
|
|
120
120
|
};
|
|
121
121
|
|
|
122
122
|
// src/hooks/useEnabledWallets.tsx
|
|
123
|
-
import { useWalletDiscovery as useWalletDiscovery2 } from "@
|
|
123
|
+
import { useWalletDiscovery as useWalletDiscovery2 } from "@ariestools/sdk-react/crypto";
|
|
124
124
|
import { useMemo as useMemo2, useSyncExternalStore } from "react";
|
|
125
125
|
var enabledEthWalletsRef = { current: void 0 };
|
|
126
126
|
var useEnabledWalletsInner = (enabledWalletsRdns) => {
|
|
@@ -174,10 +174,10 @@ import {
|
|
|
174
174
|
} from "@mui/material";
|
|
175
175
|
|
|
176
176
|
// src/components/wallet/dialogs/connect/LinkedProvidersFlexbox.tsx
|
|
177
|
+
import { ConstrainedImage } from "@ariestools/sdk-react/crypto";
|
|
178
|
+
import { FlexCol, FlexRow } from "@ariestools/sdk-react/flexbox";
|
|
177
179
|
import { SyncAlt } from "@mui/icons-material";
|
|
178
180
|
import { Typography } from "@mui/material";
|
|
179
|
-
import { ConstrainedImage } from "@xylabs/react-crypto";
|
|
180
|
-
import { FlexCol, FlexRow } from "@xylabs/react-flexbox";
|
|
181
181
|
|
|
182
182
|
// src/img/xyo-color-logo.svg
|
|
183
183
|
var xyo_color_logo_default = '<svg id="Layer_1" data-name="Layer 1" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 256 238"><defs><style>.cls-1{fill:#8d8fc6;}.cls-2{fill:#579fd6;}.cls-3{fill:#f27046;}.cls-4{fill:#eb407a;}</style></defs><path class="cls-1" d="M74.5,28.33,21.29,120.5,74.5,212.67H180.94l1.76-3,51.46-89.13L180.94,28.33ZM84.65,40.54h78.83L111.65,56.93a15.85,15.85,0,0,1,2,5l59.66-18.81L185.22,101a20.12,20.12,0,0,1,5.36-.78l-10-47.91,37.87,65.53h-7.62a24.21,24.21,0,0,1,.15,2.68,23.29,23.29,0,0,1-.15,2.68h7.62l-39.1,67.75,10.92-50.13A20.57,20.57,0,0,1,185,140l-12.88,59-58.37-19.53a17.61,17.61,0,0,1-1.7,5l47.5,15.92H84.65l4-6.85A20.17,20.17,0,0,1,83.93,191L80,197.78,42.67,133.13l37,32.66a20.52,20.52,0,0,1,3.6-4L36.69,120.66,85,77.79a17.45,17.45,0,0,1-3.19-4.32l-39.46,35L80,43.22l5.56,9.69A17.51,17.51,0,0,1,90.12,50Zm28.24,31.17a16.15,16.15,0,0,1-2.68,4.64l62,35.81a19.74,19.74,0,0,1,2.83-4.54Zm-20,10.51v75.33a18,18,0,0,1,2.47-.16,17.18,17.18,0,0,1,2.89.21v-75a11.21,11.21,0,0,1-1.29,0,17.57,17.57,0,0,1-4.07-.47Zm79.34,46.63-62.08,35.81a18.45,18.45,0,0,1,2.68,4.68l62.23-36a19.68,19.68,0,0,1-2.83-4.53Z"/><path class="cls-2" d="M97,48.58a17.06,17.06,0,1,0,17,17,17.08,17.08,0,0,0-17-17Zm0,5.36a11.7,11.7,0,1,1-11.7,11.69A11.65,11.65,0,0,1,97,53.94Z"/><path class="cls-3" d="M95.37,157.39a18.73,18.73,0,1,0,18.7,18.7,18.74,18.74,0,0,0-18.7-18.7Zm0,5.31A13.4,13.4,0,1,1,82,176.09a13.37,13.37,0,0,1,13.4-13.39Z"/><path class="cls-4" d="M190.73,100.2A20.3,20.3,0,1,0,211,120.5a20.34,20.34,0,0,0-20.3-20.3Zm0,5.36a14.94,14.94,0,1,1-14.94,14.94,14.88,14.88,0,0,1,14.94-14.94Z"/></svg>';
|
|
@@ -221,8 +221,8 @@ var LinkedProvidersFlexbox = ({
|
|
|
221
221
|
};
|
|
222
222
|
|
|
223
223
|
// src/components/wallet/dialogs/connect/Permissions.tsx
|
|
224
|
+
import { FlexCol as FlexCol2 } from "@ariestools/sdk-react/flexbox";
|
|
224
225
|
import { Link, Typography as Typography2 } from "@mui/material";
|
|
225
|
-
import { FlexCol as FlexCol2 } from "@xylabs/react-flexbox";
|
|
226
226
|
import { jsx as jsx3, jsxs as jsxs3 } from "react/jsx-runtime";
|
|
227
227
|
var WalletPermissionsFlexbox = (props) => {
|
|
228
228
|
return /* @__PURE__ */ jsxs3(
|
|
@@ -312,6 +312,8 @@ var ConnectWalletDialog = ({
|
|
|
312
312
|
};
|
|
313
313
|
|
|
314
314
|
// src/components/wallet/dialogs/revoke/Dialog.tsx
|
|
315
|
+
import { ConstrainedImage as ConstrainedImage2 } from "@ariestools/sdk-react/crypto";
|
|
316
|
+
import { FlexRow as FlexRow2 } from "@ariestools/sdk-react/flexbox";
|
|
315
317
|
import {
|
|
316
318
|
Button as Button2,
|
|
317
319
|
Dialog as Dialog2,
|
|
@@ -320,8 +322,6 @@ import {
|
|
|
320
322
|
DialogTitle as DialogTitle2,
|
|
321
323
|
Typography as Typography3
|
|
322
324
|
} from "@mui/material";
|
|
323
|
-
import { ConstrainedImage as ConstrainedImage2 } from "@xylabs/react-crypto";
|
|
324
|
-
import { FlexRow as FlexRow2 } from "@xylabs/react-flexbox";
|
|
325
325
|
import { jsx as jsx5, jsxs as jsxs5 } from "react/jsx-runtime";
|
|
326
326
|
var RevokeWalletConnectionDialog = ({ activeProvider, ...props }) => {
|
|
327
327
|
return /* @__PURE__ */ jsxs5(Dialog2, { ...props, children: [
|
|
@@ -420,6 +420,7 @@ var ConnectedWalletsAccountsTableCell = ({
|
|
|
420
420
|
};
|
|
421
421
|
|
|
422
422
|
// src/components/wallet/table/cells/Actions.tsx
|
|
423
|
+
import { FlexRow as FlexRow3 } from "@ariestools/sdk-react/flexbox";
|
|
423
424
|
import { Check, InfoOutlined } from "@mui/icons-material";
|
|
424
425
|
import {
|
|
425
426
|
Button as Button3,
|
|
@@ -427,7 +428,6 @@ import {
|
|
|
427
428
|
TableCell as TableCell2,
|
|
428
429
|
Typography as Typography5
|
|
429
430
|
} from "@mui/material";
|
|
430
|
-
import { FlexRow as FlexRow3 } from "@xylabs/react-flexbox";
|
|
431
431
|
import { jsx as jsx7, jsxs as jsxs6 } from "react/jsx-runtime";
|
|
432
432
|
var ConnectedWalletsActionsTableCell = ({
|
|
433
433
|
connected,
|
|
@@ -461,8 +461,8 @@ var ConnectedWalletsChainNameTableCell = ({ chainName, tableCellProps }) => {
|
|
|
461
461
|
};
|
|
462
462
|
|
|
463
463
|
// src/components/wallet/table/cells/State.tsx
|
|
464
|
+
import { isDefined } from "@ariestools/sdk";
|
|
464
465
|
import { Switch, TableCell as TableCell4 } from "@mui/material";
|
|
465
|
-
import { isDefined } from "@xylabs/sdk";
|
|
466
466
|
import { useMemo as useMemo3 } from "react";
|
|
467
467
|
import { jsx as jsx9 } from "react/jsx-runtime";
|
|
468
468
|
var ConnectedWalletState = ({
|
|
@@ -486,9 +486,9 @@ var ConnectedWalletState = ({
|
|
|
486
486
|
};
|
|
487
487
|
|
|
488
488
|
// src/components/wallet/table/cells/Wallet.tsx
|
|
489
|
+
import { ConstrainedImage as ConstrainedImage3 } from "@ariestools/sdk-react/crypto";
|
|
490
|
+
import { FlexRow as FlexRow4 } from "@ariestools/sdk-react/flexbox";
|
|
489
491
|
import { TableCell as TableCell5, useTheme } from "@mui/material";
|
|
490
|
-
import { ConstrainedImage as ConstrainedImage3 } from "@xylabs/react-crypto";
|
|
491
|
-
import { FlexRow as FlexRow4 } from "@xylabs/react-flexbox";
|
|
492
492
|
import { jsx as jsx10, jsxs as jsxs7 } from "react/jsx-runtime";
|
|
493
493
|
var ConnectedWalletsWalletTableCell = ({
|
|
494
494
|
icon,
|
|
@@ -531,8 +531,8 @@ import {
|
|
|
531
531
|
import { useState as useState2 } from "react";
|
|
532
532
|
|
|
533
533
|
// src/components/wallet/table/ConnectedWalletsTableRow.tsx
|
|
534
|
+
import { useEthWallet } from "@ariestools/sdk-react/crypto";
|
|
534
535
|
import { TableRow } from "@mui/material";
|
|
535
|
-
import { useEthWallet } from "@xylabs/react-crypto";
|
|
536
536
|
import { useCallback, useMemo as useMemo4 } from "react";
|
|
537
537
|
import { jsx as jsx11 } from "react/jsx-runtime";
|
|
538
538
|
var WalletConnectionsTableRow = ({
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../src/classes/EnabledWallets.ts", "../../src/components/ConnectedAccountsFlexbox.tsx", "../../src/hooks/useDetectWallets.tsx", "../../src/hooks/useEnabledWallets.tsx", "../../src/components/wallet/dialogs/connect/CheckboxFormControl.tsx", "../../src/components/wallet/dialogs/connect/Dialog.tsx", "../../src/components/wallet/dialogs/connect/LinkedProvidersFlexbox.tsx", "../../src/img/xyo-color-logo.svg", "../../src/components/wallet/dialogs/connect/Permissions.tsx", "../../src/components/wallet/dialogs/revoke/Dialog.tsx", "../../src/components/wallet/lib/TableHeadData.ts", "../../src/components/wallet/table/cells/Accounts.tsx", "../../src/components/wallet/table/cells/Actions.tsx", "../../src/components/wallet/table/cells/ChainName.tsx", "../../src/components/wallet/table/cells/State.tsx", "../../src/components/wallet/table/cells/Wallet.tsx", "../../src/components/wallet/table/cells/Cells.tsx", "../../src/components/wallet/table/ConnectedWalletsTable.tsx", "../../src/components/wallet/table/ConnectedWalletsTableRow.tsx", "../../src/components/wallet/table/hooks/useActiveProviderDialogState.tsx"],
|
|
4
|
-
"sourcesContent": ["import type { DiscoveredWallets, EIP6963Connector } from '@xylabs/react-crypto'\n\nconst DEFAULT_LOCAL_STORAGE_KEY = 'XYO|EnabledWallets'\n\n/**\n * State for storing wallets and their enabled/disabled status by name\n */\nexport type EnabledEthWalletsState = Record<string, {\n enabled: boolean\n wallet: EIP6963Connector\n}>\n\n/**\n * State for storing only enabled/disabled status of a wallet by name\n */\nexport type EnabledWalletsSavedState = Record<string, boolean>\n\nexport type WalletListener = () => void\n\nexport class EnabledEthWalletConnections {\n // control whether or not enabled/disabled preferences are persisted (i.e. in localStorage)\n persistPreferences = true\n\n // Map of wallet names and their enabled/disabled state\n private enabledWallets: EnabledWalletsSavedState = {}\n\n // Map of wallet names, their enabled/disabled state, and their wallet class\n private ethWalletsState: EnabledEthWalletsState = {}\n\n // list of listeners that want to be notified on wallet changes\n private listeners: WalletListener[] = []\n\n // key to use in localStorage when persisting preferences\n private localStorageKey = DEFAULT_LOCAL_STORAGE_KEY\n\n constructor(localStorageKey = DEFAULT_LOCAL_STORAGE_KEY) {\n this.localStorageKey = localStorageKey\n this.reviveSettings()\n }\n\n get wallets() {\n return this.ethWalletsState\n }\n\n disableWallet(rdns: string) {\n this.toggleEnabledWallet(rdns, false)\n }\n\n enableWallet(rdns: string) {\n this.toggleEnabledWallet(rdns, true)\n }\n\n /**\n * Given a new set of wallets, set their enabled state based off previous preferences\n */\n resetWallets(wallets: DiscoveredWallets) {\n const newWallets: EnabledEthWalletsState = {}\n\n const addWallet = ([walletName, wallet]: [string, EIP6963Connector]) => {\n newWallets[walletName] = {\n // preserve the existing enabled state\n enabled: walletName in this.enabledWallets ? this.enabledWallets[walletName] : true,\n wallet,\n }\n }\n\n Object.entries(wallets).forEach((wallet) => {\n if (wallet !== undefined) {\n addWallet.bind(this)\n }\n })\n this.ethWalletsState = newWallets\n this.emitChange()\n }\n\n subscribe(listener: WalletListener) {\n this.listeners = [...this.listeners, listener]\n return () => {\n this.listeners = this.listeners.filter(existingListener => existingListener !== listener)\n }\n }\n\n toggleEnabledWallet(rdns: string, enabled: boolean) {\n if (rdns && this.ethWalletsState[rdns]) {\n this.ethWalletsState[rdns].enabled = enabled\n this.ethWalletsState = { ...this.ethWalletsState }\n this.emitChange()\n }\n }\n\n private emitChange() {\n for (const listener of this.listeners) {\n listener()\n }\n\n this.persistSettings()\n }\n\n private isPersistance(method: () => void) {\n if (this.persistPreferences) {\n method()\n }\n }\n\n private persistSettings() {\n this.isPersistance(() => {\n // convert wallet enabled selections into serializable state\n\n const enabledWallets = Object.entries(this.ethWalletsState).reduce((acc, [rdns, { enabled }]) => {\n acc[rdns] = enabled\n return acc\n }, {} as EnabledWalletsSavedState)\n\n localStorage.setItem(this.localStorageKey, JSON.stringify(enabledWallets))\n })\n }\n\n private reviveSettings() {\n this.isPersistance(() => {\n const existingEntries = localStorage.getItem(this.localStorageKey)\n try {\n const entries = existingEntries ? JSON.parse(existingEntries) : {}\n this.enabledWallets = entries\n } catch (e) {\n console.warn(`Error parsing saved enabled wallet entries: ${(e as Error).message}`)\n }\n })\n }\n}\n", "import { Typography, useTheme } from '@mui/material'\nimport type { FlexBoxProps } from '@xylabs/react-flexbox'\nimport { FlexCol } from '@xylabs/react-flexbox'\nimport React from 'react'\n\nimport { useDetectedWallets } from '../hooks/index.ts'\nimport { ConnectedWalletsTable } from './wallet/index.ts'\n\nexport interface ConnectedAccountsFlexboxProps extends FlexBoxProps {\n ignoreConnectDialog?: boolean\n // A callback that is invoked when the option to ignore the dialog is checked\n onIgnoreConnectDialog?: (checked: boolean) => void\n}\n\nexport const ConnectedAccountsFlexbox = ({\n ref, ignoreConnectDialog, onIgnoreConnectDialog, ...props\n}: ConnectedAccountsFlexboxProps) => {\n const theme = useTheme()\n\n const { totalConnectedAccounts, sortedWallets } = useDetectedWallets()\n\n return (\n <FlexCol\n ref={ref}\n {...props}\n sx={[{\n alignItems: 'stretch',\n justifyContent: 'start',\n gap: 2,\n }, ...(Array.isArray(props.sx) ? props.sx : [props.sx])]}\n >\n <FlexCol sx={{ alignItems: 'start' }}>\n <Typography variant=\"h2\" sx={{ mb: 0.5 }}>\n Detected Web3 Wallets\n </Typography>\n {totalConnectedAccounts\n ? (\n <Typography variant=\"subtitle1\" color={theme.vars.palette.secondary.main} sx={{ opacity: 0.5 }}>\n Total Connected Accounts:\n {' '}\n {totalConnectedAccounts}\n </Typography>\n )\n : null}\n </FlexCol>\n <ConnectedWalletsTable wallets={sortedWallets} ignoreConnectDialog={ignoreConnectDialog} onIgnoreConnectDialog={onIgnoreConnectDialog} />\n </FlexCol>\n )\n}\n\nConnectedAccountsFlexbox.displayName = 'ConnectedAccountsFlexbox'\n", "import type { DiscoveredWallets, EIP6963Connector } from '@xylabs/react-crypto'\nimport { useWalletDiscovery } from '@xylabs/react-crypto'\nimport { useMemo } from 'react'\n\nconst sortWallets = (wallets: DiscoveredWallets) => {\n const result: EIP6963Connector[] = []\n\n for (const wallet of Object.values(wallets)) {\n if (wallet) {\n if (wallet.allowedAccounts.length > 0)\n result.unshift(wallet)\n else\n result.push(wallet)\n }\n }\n return result\n}\n\nexport const useDetectedWallets = () => {\n const wallets = useWalletDiscovery()\n const sortedWallets = useMemo(() => sortWallets(wallets), [wallets])\n\n const totalConnectedAccounts = useMemo(\n () => Object.values(sortedWallets).reduce((acc, wallet) => acc + wallet.allowedAccounts.length, 0),\n [sortedWallets],\n )\n\n return { sortedWallets, totalConnectedAccounts }\n}\n", "import { useWalletDiscovery } from '@xylabs/react-crypto'\nimport { useMemo, useSyncExternalStore } from 'react'\n\nimport type { EnabledEthWalletsState, EnabledWalletsSavedState } from '../classes/index.ts'\nimport { EnabledEthWalletConnections } from '../classes/index.ts'\n\nconst enabledEthWalletsRef = { current: undefined as EnabledEthWalletConnections | undefined }\n\n/**\n * Takes the discovered wallets and tracks their enabled state globally\n */\nexport const useEnabledWalletsInner = (enabledWalletsRdns?: EnabledWalletsSavedState) => {\n const discoveredWallets = useWalletDiscovery()\n\n // when we discover new wallets, build their enabled state\n const wallets = useMemo(() => {\n // eslint-disable-next-line react-hooks/immutability\n if (enabledEthWalletsRef.current === undefined) enabledEthWalletsRef.current = new EnabledEthWalletConnections()\n enabledEthWalletsRef.current.resetWallets(discoveredWallets)\n for (const [rdns, enabled] of Object.entries(enabledWalletsRdns ?? {})) enabledEthWalletsRef.current?.toggleEnabledWallet(rdns, enabled)\n return enabledEthWalletsRef.current\n }, [discoveredWallets, enabledWalletsRdns])\n\n return useSyncExternalStore(wallets.subscribe.bind(wallets), () => wallets.wallets)\n}\n\n/**\n * Expose an interface for enabling and disabling wallets\n */\nexport const useEnabledWallets = (enabledWalletsRdns?: EnabledWalletsSavedState) => {\n const wallets = useEnabledWalletsInner(enabledWalletsRdns)\n const enabledWallets = useMemo(\n () =>\n\n Object.entries(wallets).reduce((acc, [walletName, wallet]) => {\n if (wallet.enabled) acc[walletName] = wallet\n return acc\n }, {} as EnabledEthWalletsState),\n [wallets],\n )\n\n return {\n disableWallet: enabledEthWalletsRef.current?.disableWallet.bind(enabledEthWalletsRef.current),\n enableWallet: enabledEthWalletsRef.current?.enableWallet.bind(enabledEthWalletsRef.current),\n enabledWallets,\n wallets,\n }\n}\n", "import type { FormControlProps } from '@mui/material'\nimport {\n Checkbox, FormControl, FormLabel,\n} from '@mui/material'\nimport React from 'react'\n\nexport interface CheckboxFormControlProps extends FormControlProps {\n onCheckChanged?: (checked: boolean) => void\n}\n\nexport const CheckboxFormControl: React.FC<CheckboxFormControlProps> = ({ onCheckChanged, ...props }) => {\n return (\n <FormControl {...props}>\n <FormLabel>\n <Checkbox onChange={(_, checked) => onCheckChanged?.(checked)} />\n Do not show this again.\n </FormLabel>\n </FormControl>\n )\n}\n", "import type { DialogProps } from '@mui/material'\nimport {\n Button, Dialog, DialogActions, DialogContent, DialogTitle,\n} from '@mui/material'\nimport React from 'react'\n\nimport type { ActiveProvider } from '../../lib/index.ts'\nimport { CheckboxFormControl } from './CheckboxFormControl.tsx'\nimport { LinkedProvidersFlexbox } from './LinkedProvidersFlexbox.tsx'\nimport { WalletPermissionsFlexbox } from './Permissions.tsx'\n\nexport interface ConnectWalletDialogProps extends DialogProps {\n activeProvider?: ActiveProvider\n onIgnoreConnectDialog?: (checked: boolean) => void\n}\n\nexport const ConnectWalletDialog: React.FC<ConnectWalletDialogProps> = ({\n activeProvider, onIgnoreConnectDialog, ...props\n}) => {\n const { icon, providerName } = activeProvider ?? {}\n\n const onConnect = async () => {\n try {\n await activeProvider?.connectWallet?.()\n props.onClose?.({}, 'escapeKeyDown')\n } catch (e) {\n console.warn(`Error connecting to wallet: ${(e as Error).message}`)\n }\n }\n\n return (\n <Dialog\n slotProps={{ paper: { sx: { display: 'flex', gap: 4 } } }}\n {...props}\n >\n <DialogTitle sx={{ textAlign: 'center' }}>XYO Wants To Access The Blockchain on Your Behalf</DialogTitle>\n <DialogContent sx={{\n display: 'flex', flexDirection: 'column', gap: 4,\n }}\n >\n <LinkedProvidersFlexbox icon={icon} providerName={providerName} />\n <WalletPermissionsFlexbox />\n <CheckboxFormControl onCheckChanged={onIgnoreConnectDialog} />\n </DialogContent>\n <DialogActions>\n <Button variant=\"outlined\" onClick={() => props.onClose?.({}, 'escapeKeyDown')}>\n Close\n </Button>\n <Button variant=\"contained\" onClick={onConnect}>\n Connect\n </Button>\n </DialogActions>\n </Dialog>\n )\n}\n", "import { SyncAlt } from '@mui/icons-material'\nimport { Typography } from '@mui/material'\nimport { ConstrainedImage } from '@xylabs/react-crypto'\nimport type { FlexBoxProps } from '@xylabs/react-flexbox'\nimport { FlexCol, FlexRow } from '@xylabs/react-flexbox'\nimport React from 'react'\n\nimport { xyoColorLogo } from '../../../../img/index.ts'\n\nexport interface LinkedProvidersFlexboxProps extends FlexBoxProps {\n icon?: string\n providerName?: string\n}\n\nexport const LinkedProvidersFlexbox: React.FC<LinkedProvidersFlexboxProps> = ({\n icon, providerName, ...props\n}) => {\n return (\n <FlexRow\n {...props}\n sx={[{\n gap: 4,\n justifyContent: 'space-evenly',\n }, ...(Array.isArray(props.sx) ? props.sx : [props.sx])]}\n >\n <FlexCol sx={{ gap: 0.5 }}>\n <img alt=\"XYO Logo\" src={xyoColorLogo} style={{ height: '48px' }} />\n <Typography variant=\"subtitle1\">XYO App</Typography>\n </FlexCol>\n <SyncAlt sx={{ fontSize: 'large' }} />\n <FlexCol sx={{ gap: 0.5 }}>\n <ConstrainedImage\n constrainedValue=\"48px\"\n src={icon}\n alt={providerName}\n style={{ height: '48px', maxWidth: '48px' }}\n />\n <Typography variant=\"subtitle1\">{providerName}</Typography>\n </FlexCol>\n </FlexRow>\n )\n}\n", "<svg id=\"Layer_1\" data-name=\"Layer 1\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 256 238\"><defs><style>.cls-1{fill:#8d8fc6;}.cls-2{fill:#579fd6;}.cls-3{fill:#f27046;}.cls-4{fill:#eb407a;}</style></defs><path class=\"cls-1\" d=\"M74.5,28.33,21.29,120.5,74.5,212.67H180.94l1.76-3,51.46-89.13L180.94,28.33ZM84.65,40.54h78.83L111.65,56.93a15.85,15.85,0,0,1,2,5l59.66-18.81L185.22,101a20.12,20.12,0,0,1,5.36-.78l-10-47.91,37.87,65.53h-7.62a24.21,24.21,0,0,1,.15,2.68,23.29,23.29,0,0,1-.15,2.68h7.62l-39.1,67.75,10.92-50.13A20.57,20.57,0,0,1,185,140l-12.88,59-58.37-19.53a17.61,17.61,0,0,1-1.7,5l47.5,15.92H84.65l4-6.85A20.17,20.17,0,0,1,83.93,191L80,197.78,42.67,133.13l37,32.66a20.52,20.52,0,0,1,3.6-4L36.69,120.66,85,77.79a17.45,17.45,0,0,1-3.19-4.32l-39.46,35L80,43.22l5.56,9.69A17.51,17.51,0,0,1,90.12,50Zm28.24,31.17a16.15,16.15,0,0,1-2.68,4.64l62,35.81a19.74,19.74,0,0,1,2.83-4.54Zm-20,10.51v75.33a18,18,0,0,1,2.47-.16,17.18,17.18,0,0,1,2.89.21v-75a11.21,11.21,0,0,1-1.29,0,17.57,17.57,0,0,1-4.07-.47Zm79.34,46.63-62.08,35.81a18.45,18.45,0,0,1,2.68,4.68l62.23-36a19.68,19.68,0,0,1-2.83-4.53Z\"/><path class=\"cls-2\" d=\"M97,48.58a17.06,17.06,0,1,0,17,17,17.08,17.08,0,0,0-17-17Zm0,5.36a11.7,11.7,0,1,1-11.7,11.69A11.65,11.65,0,0,1,97,53.94Z\"/><path class=\"cls-3\" d=\"M95.37,157.39a18.73,18.73,0,1,0,18.7,18.7,18.74,18.74,0,0,0-18.7-18.7Zm0,5.31A13.4,13.4,0,1,1,82,176.09a13.37,13.37,0,0,1,13.4-13.39Z\"/><path class=\"cls-4\" d=\"M190.73,100.2A20.3,20.3,0,1,0,211,120.5a20.34,20.34,0,0,0-20.3-20.3Zm0,5.36a14.94,14.94,0,1,1-14.94,14.94,14.88,14.88,0,0,1,14.94-14.94Z\"/></svg>", "import { Link, Typography } from '@mui/material'\nimport type { FlexBoxProps } from '@xylabs/react-flexbox'\nimport { FlexCol } from '@xylabs/react-flexbox'\nimport React from 'react'\n\nexport interface WalletPermissionsFlexBoxProps extends FlexBoxProps {}\n\nexport const WalletPermissionsFlexbox: React.FC<WalletPermissionsFlexBoxProps> = (props) => {\n return (\n <FlexCol\n {...props}\n sx={[{ gap: 4 }, ...(Array.isArray(props.sx) ? props.sx : [props.sx])]}\n >\n <Typography\n sx={{\n fontWeight: 'bold',\n textAlign: 'center',\n }}\n >\n This will allow XYO to:\n </Typography>\n <ul>\n <li>View your wallet account(s) and address(es)</li>\n <li>Read-only access to browse the public blockchain(s) you select</li>\n </ul>\n <Typography variant=\"subtitle1\" sx={{ textAlign: 'center' }}>\n You control what accounts to share and what blockchains to view. You can see or revoke access via your wallet's settings at anytime. View\n more on XYO's sovereign data philosophy\n {' '}\n <Link\n href=\"https://cointelegraph.com/innovation-circle/decentralization-and-sovereignty-debunking-our-approach-to-digital-sovereignty\"\n sx={{ fontWeight: 'bold' }}\n target=\"_blank\"\n >\n here\n </Link>\n .\n </Typography>\n </FlexCol>\n )\n}\n", "import type { DialogProps } from '@mui/material'\nimport {\n Button, Dialog, DialogActions, DialogContent, DialogTitle, Typography,\n} from '@mui/material'\nimport { ConstrainedImage } from '@xylabs/react-crypto'\nimport { FlexRow } from '@xylabs/react-flexbox'\nimport React from 'react'\n\nimport type { ActiveProvider } from '../../lib/index.ts'\n\nexport interface RevokeWalletConnectionDialogProps extends DialogProps {\n activeProvider?: ActiveProvider\n}\n\nexport const RevokeWalletConnectionDialog: React.FC<RevokeWalletConnectionDialogProps> = ({ activeProvider, ...props }) => {\n return (\n <Dialog {...props}>\n <FlexRow\n sx={{\n gap: 2,\n justifyContent: 'start',\n pl: 2,\n }}\n >\n <ConstrainedImage src={activeProvider?.icon} constrainedValue=\"24px\" />\n <DialogTitle sx={{ pl: 0 }}>\n Revoke\n {activeProvider?.providerName}\n {' '}\n Access\n </DialogTitle>\n </FlexRow>\n <DialogContent>\n <Typography>\n Revoking access to your wallet must be done from the wallet's browser extension. Wallets grant access to specific domains please\n consult\n {' '}\n {activeProvider?.providerName}\n 's documentation on how to revoke access to this website:\n </Typography>\n <Typography>{globalThis.location.origin}</Typography>\n </DialogContent>\n <DialogActions>\n <Button variant=\"contained\" onClick={() => props.onClose?.({}, 'escapeKeyDown')}>\n Close\n </Button>\n </DialogActions>\n </Dialog>\n )\n}\n", "import type { TableHeadCell } from '@xyo-network/react-table'\n\nexport const WalletsTableHeadCells: TableHeadCell[] = [\n {\n disablePadding: false,\n id: 'wallet',\n label: 'Wallet',\n numeric: false,\n showOnMobile: true,\n },\n {\n disablePadding: false,\n id: 'chain',\n label: 'Chain',\n numeric: false,\n showOnMobile: true,\n },\n {\n disablePadding: false,\n id: 'accounts',\n label: 'Accounts',\n numeric: true,\n showOnMobile: true,\n },\n {\n disablePadding: false,\n id: 'actions',\n label: 'Actions',\n numeric: false,\n showOnMobile: true,\n },\n {\n disablePadding: false,\n id: 'enabled',\n label: 'Enabled',\n numeric: false,\n showOnMobile: true,\n },\n]\n", "import {\n TableCell, Tooltip, Typography,\n} from '@mui/material'\nimport React from 'react'\n\nimport type { ConnectedWalletTableCellProps } from './lib/index.ts'\n\nexport const ConnectedWalletsAccountsTableCell: React.FC<ConnectedWalletTableCellProps> = ({\n additionalAccounts,\n currentAccount,\n totalAccounts,\n tableCellProps,\n}) => {\n return (\n <TableCell {...tableCellProps}>\n <Tooltip\n sx={{ cursor: totalAccounts > 0 ? 'pointer' : 'auto' }}\n title={[...(currentAccount ?? []), ...(additionalAccounts ?? [])].map(address => (\n <p key={address}>{address}</p>\n ))}\n >\n <Typography>{totalAccounts}</Typography>\n </Tooltip>\n </TableCell>\n )\n}\n", "import { Check, InfoOutlined } from '@mui/icons-material'\nimport {\n Button, IconButton, TableCell, Typography,\n} from '@mui/material'\nimport { FlexRow } from '@xylabs/react-flexbox'\nimport React from 'react'\n\nimport type { ConnectedWalletTableCellProps } from './lib/index.ts'\n\nexport const ConnectedWalletsActionsTableCell: React.FC<ConnectedWalletTableCellProps> = ({\n connected, onConnect, onRevoke, tableCellProps,\n}) => {\n return (\n <TableCell {...tableCellProps}>\n <FlexRow\n sx={{\n gap: 2,\n justifyContent: 'start',\n }}\n >\n {connected\n ? (\n <Typography sx={{ display: 'inline-flex', gap: 0.5 }}>\n <Check />\n Connected\n </Typography>\n )\n : (\n <Button variant=\"contained\" onClick={onConnect}>\n Connect\n </Button>\n )}\n {connected\n ? (\n <IconButton onClick={onRevoke}>\n <InfoOutlined />\n </IconButton>\n )\n : null}\n </FlexRow>\n </TableCell>\n )\n}\n", "import { TableCell } from '@mui/material'\nimport React from 'react'\n\nimport type { ConnectedWalletTableCellProps } from './lib/index.ts'\n\nexport const ConnectedWalletsChainNameTableCell: React.FC<ConnectedWalletTableCellProps> = ({ chainName, tableCellProps }) => {\n return <TableCell {...tableCellProps}>{chainName}</TableCell>\n}\n", "import { Switch, TableCell } from '@mui/material'\nimport { isDefined } from '@xylabs/sdk'\nimport type { ChangeEvent } from 'react'\nimport React, { useMemo } from 'react'\n\nimport { useEnabledWallets } from '../../../../hooks/index.ts'\nimport type { ConnectedWalletTableCellProps } from './lib/index.ts'\n\nexport const ConnectedWalletState: React.FC<ConnectedWalletTableCellProps> = ({\n connected, walletRdns, tableCellProps,\n}) => {\n const {\n disableWallet, enableWallet, wallets,\n } = useEnabledWallets()\n\n const enabled = useMemo(() => (isDefined(walletRdns) ? wallets[walletRdns]?.enabled : false), [wallets, walletRdns])\n\n const handleClick = (event: ChangeEvent<HTMLInputElement>) => {\n const checked = event.target?.checked\n if (isDefined(walletRdns)) {\n // eslint-disable-next-line @typescript-eslint/no-unused-expressions\n checked ? enableWallet?.(walletRdns) : disableWallet?.(walletRdns)\n }\n }\n return (\n <TableCell {...tableCellProps}>\n <Switch disabled={!connected} checked={connected && enabled} onChange={handleClick} />\n </TableCell>\n )\n}\n", "import { TableCell, useTheme } from '@mui/material'\nimport { ConstrainedImage } from '@xylabs/react-crypto'\nimport { FlexRow } from '@xylabs/react-flexbox'\nimport React from 'react'\n\nimport type { ConnectedWalletTableCellProps } from './lib/index.ts'\n\nexport const ConnectedWalletsWalletTableCell: React.FC<ConnectedWalletTableCellProps> = ({\n icon, walletName, tableCellProps,\n}) => {\n const theme = useTheme()\n\n return (\n <TableCell {...tableCellProps}>\n <FlexRow\n sx={{\n gap: 2,\n justifyContent: 'start',\n }}\n >\n <ConstrainedImage constrainedValue={theme.spacing(4)} src={icon} />\n {walletName}\n </FlexRow>\n </TableCell>\n )\n}\n", "import type { ComponentType } from 'react'\n\nimport { ConnectedWalletsAccountsTableCell } from './Accounts.tsx'\nimport { ConnectedWalletsActionsTableCell } from './Actions.tsx'\nimport { ConnectedWalletsChainNameTableCell } from './ChainName.tsx'\nimport type { ConnectedWalletTableCellProps } from './lib/index.ts'\nimport { ConnectedWalletState } from './State.tsx'\nimport { ConnectedWalletsWalletTableCell } from './Wallet.tsx'\n\nexport const ConnectedWalletTableCells: ComponentType<ConnectedWalletTableCellProps>[] = [\n ConnectedWalletsWalletTableCell,\n ConnectedWalletsChainNameTableCell,\n ConnectedWalletsAccountsTableCell,\n ConnectedWalletsActionsTableCell,\n ConnectedWalletState,\n]\n", "import type { TableProps } from '@mui/material'\nimport {\n Table, TableBody, TableCell, TableHead, TableRow,\n} from '@mui/material'\nimport type { EIP6963Connector } from '@xylabs/react-crypto'\nimport React, { useState } from 'react'\n\nimport { ConnectWalletDialog, RevokeWalletConnectionDialog } from '../dialogs/index.ts'\nimport type { ActiveProvider } from '../lib/index.ts'\nimport { WalletsTableHeadCells } from '../lib/index.ts'\nimport { WalletConnectionsTableRow } from './ConnectedWalletsTableRow.tsx'\nimport { useActiveProviderDialogState } from './hooks/index.ts'\n\nexport interface ConnectedWalletsTableProps extends TableProps {\n ignoreConnectDialog?: boolean\n onIgnoreConnectDialog?: (checked: boolean) => void\n wallets?: EIP6963Connector[]\n}\n\nexport const ConnectedWalletsTable: React.FC<ConnectedWalletsTableProps> = ({\n ignoreConnectDialog, onIgnoreConnectDialog, wallets, ...props\n}) => {\n const [activeProvider, setActiveProvider] = useState<ActiveProvider>()\n const [showConnect, onSetActiveProviderConnect, onConnectClose] = useActiveProviderDialogState(setActiveProvider)\n const [showRevoke, onSetActiveProviderRevoke, onRevokeClose] = useActiveProviderDialogState(setActiveProvider)\n\n return (\n <>\n <Table {...props}>\n <TableHead>\n <TableRow>\n {WalletsTableHeadCells.map(({\n disablePadding, id, label, align, width,\n }) => (\n <TableCell\n align={align}\n key={id}\n sx={{\n padding: disablePadding ? 'none' : 'normal',\n width: width ?? 'auto',\n }}\n >\n {label}\n </TableCell>\n ))}\n </TableRow>\n </TableHead>\n <TableBody>\n {(wallets ?? []).map(wallet => (\n <WalletConnectionsTableRow\n ignoreConnectDialog={ignoreConnectDialog}\n key={wallet.providerInfo?.rdns}\n onConnectClick={onSetActiveProviderConnect}\n onRevoke={onSetActiveProviderRevoke}\n wallet={wallet}\n />\n ))}\n </TableBody>\n </Table>\n <RevokeWalletConnectionDialog open={showRevoke} onClose={onRevokeClose} activeProvider={activeProvider} />\n <ConnectWalletDialog\n activeProvider={activeProvider}\n onClose={onConnectClose}\n open={showConnect}\n onIgnoreConnectDialog={onIgnoreConnectDialog}\n />\n </>\n )\n}\n", "import type { TableRowProps } from '@mui/material'\nimport { TableRow } from '@mui/material'\nimport type { EthWalletConnectorBase } from '@xylabs/react-crypto'\nimport { useEthWallet } from '@xylabs/react-crypto'\nimport React, { useCallback, useMemo } from 'react'\n\nimport type { ActiveProvider } from '../lib/index.ts'\nimport { ConnectedWalletTableCells } from './cells/index.ts'\n\nexport interface WalletConnectionsTableRowProps extends TableRowProps {\n ignoreConnectDialog?: boolean\n onConnectClick?: (activeProvider: ActiveProvider) => void\n onRevoke?: (activeProvider: ActiveProvider) => void\n wallet: EthWalletConnectorBase\n}\n\nexport const WalletConnectionsTableRow: React.FC<WalletConnectionsTableRowProps> = ({\n ignoreConnectDialog,\n onConnectClick,\n onRevoke,\n wallet,\n ...props\n}) => {\n const {\n currentAccount: currentAccountFromWallet, additionalAccounts, chainName, connectWallet, providerInfo,\n } = useEthWallet(wallet)\n\n const currentAccount = currentAccountFromWallet?.toString() ? [currentAccountFromWallet.toString()] : []\n const totalAccounts = (additionalAccounts?.length ?? 0) + (currentAccount?.length ?? 0)\n const connected = !!(currentAccount?.length)\n const {\n icon, name, rdns,\n } = useMemo(() => providerInfo ?? {\n icon: undefined, name: undefined, rdns: undefined,\n }, [providerInfo])\n\n const activeProvider = useMemo<ActiveProvider>(\n () => ({\n connectWallet,\n icon,\n providerName: name,\n }),\n [connectWallet, icon, name],\n )\n\n const onRevokeLocal = useCallback(() => {\n onRevoke?.(activeProvider)\n }, [activeProvider, onRevoke])\n\n const onConnectLocal = useCallback(async () => {\n if (ignoreConnectDialog) {\n await connectWallet?.()\n } else {\n onConnectClick?.(activeProvider)\n }\n }, [activeProvider, connectWallet, ignoreConnectDialog, onConnectClick])\n\n return (\n <TableRow {...props}>\n {Object.entries(ConnectedWalletTableCells).map(([cellName, Cell]) => (\n <Cell\n key={cellName}\n additionalAccounts={additionalAccounts}\n chainName={chainName}\n connected={connected}\n currentAccount={currentAccount}\n icon={icon}\n onConnect={onConnectLocal}\n onRevoke={onRevokeLocal}\n totalAccounts={totalAccounts}\n walletName={name}\n walletRdns={rdns}\n />\n ))}\n </TableRow>\n )\n}\n", "import type { Dispatch, SetStateAction } from 'react'\nimport { useState } from 'react'\n\nimport type { ActiveProvider } from '../../lib/index.ts'\n\nexport const useActiveProviderDialogState = (\n setActiveProvider: Dispatch<SetStateAction<ActiveProvider | undefined>>,\n): [boolean, (activeProvider: ActiveProvider) => void, () => void] => {\n const [show, setShow] = useState(false)\n const onSetActiveProvider = (activeProvider: ActiveProvider) => {\n setShow(true)\n setActiveProvider(activeProvider)\n }\n\n const onClose = () => {\n setShow(false)\n setActiveProvider({})\n }\n\n return [show, onSetActiveProvider, onClose]\n}\n"],
|
|
5
|
-
"mappings": "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",
|
|
6
|
-
"names": ["
|
|
4
|
+
"sourcesContent": ["import type { DiscoveredWallets, EIP6963Connector } from '@ariestools/sdk-react/crypto'\n\nconst DEFAULT_LOCAL_STORAGE_KEY = 'XYO|EnabledWallets'\n\n/**\n * State for storing wallets and their enabled/disabled status by name\n */\nexport type EnabledEthWalletsState = Record<string, {\n enabled: boolean\n wallet: EIP6963Connector\n}>\n\n/**\n * State for storing only enabled/disabled status of a wallet by name\n */\nexport type EnabledWalletsSavedState = Record<string, boolean>\n\nexport type WalletListener = () => void\n\nexport class EnabledEthWalletConnections {\n // control whether or not enabled/disabled preferences are persisted (i.e. in localStorage)\n persistPreferences = true\n\n // Map of wallet names and their enabled/disabled state\n private enabledWallets: EnabledWalletsSavedState = {}\n\n // Map of wallet names, their enabled/disabled state, and their wallet class\n private ethWalletsState: EnabledEthWalletsState = {}\n\n // list of listeners that want to be notified on wallet changes\n private listeners: WalletListener[] = []\n\n // key to use in localStorage when persisting preferences\n private localStorageKey = DEFAULT_LOCAL_STORAGE_KEY\n\n constructor(localStorageKey = DEFAULT_LOCAL_STORAGE_KEY) {\n this.localStorageKey = localStorageKey\n this.reviveSettings()\n }\n\n get wallets() {\n return this.ethWalletsState\n }\n\n disableWallet(rdns: string) {\n this.toggleEnabledWallet(rdns, false)\n }\n\n enableWallet(rdns: string) {\n this.toggleEnabledWallet(rdns, true)\n }\n\n /**\n * Given a new set of wallets, set their enabled state based off previous preferences\n */\n resetWallets(wallets: DiscoveredWallets) {\n const newWallets: EnabledEthWalletsState = {}\n\n const addWallet = ([walletName, wallet]: [string, EIP6963Connector]) => {\n newWallets[walletName] = {\n // preserve the existing enabled state\n enabled: walletName in this.enabledWallets ? this.enabledWallets[walletName] : true,\n wallet,\n }\n }\n\n Object.entries(wallets).forEach((wallet) => {\n if (wallet !== undefined) {\n addWallet.bind(this)\n }\n })\n this.ethWalletsState = newWallets\n this.emitChange()\n }\n\n subscribe(listener: WalletListener) {\n this.listeners = [...this.listeners, listener]\n return () => {\n this.listeners = this.listeners.filter(existingListener => existingListener !== listener)\n }\n }\n\n toggleEnabledWallet(rdns: string, enabled: boolean) {\n if (rdns && this.ethWalletsState[rdns]) {\n this.ethWalletsState[rdns].enabled = enabled\n this.ethWalletsState = { ...this.ethWalletsState }\n this.emitChange()\n }\n }\n\n private emitChange() {\n for (const listener of this.listeners) {\n listener()\n }\n\n this.persistSettings()\n }\n\n private isPersistance(method: () => void) {\n if (this.persistPreferences) {\n method()\n }\n }\n\n private persistSettings() {\n this.isPersistance(() => {\n // convert wallet enabled selections into serializable state\n\n const enabledWallets = Object.entries(this.ethWalletsState).reduce((acc, [rdns, { enabled }]) => {\n acc[rdns] = enabled\n return acc\n }, {} as EnabledWalletsSavedState)\n\n localStorage.setItem(this.localStorageKey, JSON.stringify(enabledWallets))\n })\n }\n\n private reviveSettings() {\n this.isPersistance(() => {\n const existingEntries = localStorage.getItem(this.localStorageKey)\n try {\n const entries = existingEntries ? JSON.parse(existingEntries) : {}\n this.enabledWallets = entries\n } catch (e) {\n console.warn(`Error parsing saved enabled wallet entries: ${(e as Error).message}`)\n }\n })\n }\n}\n", "import type { FlexBoxProps } from '@ariestools/sdk-react/flexbox'\nimport { FlexCol } from '@ariestools/sdk-react/flexbox'\nimport { Typography, useTheme } from '@mui/material'\nimport React from 'react'\n\nimport { useDetectedWallets } from '../hooks/index.ts'\nimport { ConnectedWalletsTable } from './wallet/index.ts'\n\nexport interface ConnectedAccountsFlexboxProps extends FlexBoxProps {\n ignoreConnectDialog?: boolean\n // A callback that is invoked when the option to ignore the dialog is checked\n onIgnoreConnectDialog?: (checked: boolean) => void\n}\n\nexport const ConnectedAccountsFlexbox = ({\n ref, ignoreConnectDialog, onIgnoreConnectDialog, ...props\n}: ConnectedAccountsFlexboxProps) => {\n const theme = useTheme()\n\n const { totalConnectedAccounts, sortedWallets } = useDetectedWallets()\n\n return (\n <FlexCol\n ref={ref}\n {...props}\n sx={[{\n alignItems: 'stretch',\n justifyContent: 'start',\n gap: 2,\n }, ...(Array.isArray(props.sx) ? props.sx : [props.sx])]}\n >\n <FlexCol sx={{ alignItems: 'start' }}>\n <Typography variant=\"h2\" sx={{ mb: 0.5 }}>\n Detected Web3 Wallets\n </Typography>\n {totalConnectedAccounts\n ? (\n <Typography variant=\"subtitle1\" color={theme.vars.palette.secondary.main} sx={{ opacity: 0.5 }}>\n Total Connected Accounts:\n {' '}\n {totalConnectedAccounts}\n </Typography>\n )\n : null}\n </FlexCol>\n <ConnectedWalletsTable wallets={sortedWallets} ignoreConnectDialog={ignoreConnectDialog} onIgnoreConnectDialog={onIgnoreConnectDialog} />\n </FlexCol>\n )\n}\n\nConnectedAccountsFlexbox.displayName = 'ConnectedAccountsFlexbox'\n", "import type { DiscoveredWallets, EIP6963Connector } from '@ariestools/sdk-react/crypto'\nimport { useWalletDiscovery } from '@ariestools/sdk-react/crypto'\nimport { useMemo } from 'react'\n\nconst sortWallets = (wallets: DiscoveredWallets) => {\n const result: EIP6963Connector[] = []\n\n for (const wallet of Object.values(wallets)) {\n if (wallet) {\n if (wallet.allowedAccounts.length > 0)\n result.unshift(wallet)\n else\n result.push(wallet)\n }\n }\n return result\n}\n\nexport const useDetectedWallets = () => {\n const wallets = useWalletDiscovery()\n const sortedWallets = useMemo(() => sortWallets(wallets), [wallets])\n\n const totalConnectedAccounts = useMemo(\n () => Object.values(sortedWallets).reduce((acc, wallet) => acc + wallet.allowedAccounts.length, 0),\n [sortedWallets],\n )\n\n return { sortedWallets, totalConnectedAccounts }\n}\n", "import { useWalletDiscovery } from '@ariestools/sdk-react/crypto'\nimport { useMemo, useSyncExternalStore } from 'react'\n\nimport type { EnabledEthWalletsState, EnabledWalletsSavedState } from '../classes/index.ts'\nimport { EnabledEthWalletConnections } from '../classes/index.ts'\n\nconst enabledEthWalletsRef = { current: undefined as EnabledEthWalletConnections | undefined }\n\n/**\n * Takes the discovered wallets and tracks their enabled state globally\n */\nexport const useEnabledWalletsInner = (enabledWalletsRdns?: EnabledWalletsSavedState) => {\n const discoveredWallets = useWalletDiscovery()\n\n // when we discover new wallets, build their enabled state\n const wallets = useMemo(() => {\n // eslint-disable-next-line react-hooks/immutability\n if (enabledEthWalletsRef.current === undefined) enabledEthWalletsRef.current = new EnabledEthWalletConnections()\n enabledEthWalletsRef.current.resetWallets(discoveredWallets)\n for (const [rdns, enabled] of Object.entries(enabledWalletsRdns ?? {})) enabledEthWalletsRef.current?.toggleEnabledWallet(rdns, enabled)\n return enabledEthWalletsRef.current\n }, [discoveredWallets, enabledWalletsRdns])\n\n return useSyncExternalStore(wallets.subscribe.bind(wallets), () => wallets.wallets)\n}\n\n/**\n * Expose an interface for enabling and disabling wallets\n */\nexport const useEnabledWallets = (enabledWalletsRdns?: EnabledWalletsSavedState) => {\n const wallets = useEnabledWalletsInner(enabledWalletsRdns)\n const enabledWallets = useMemo(\n () =>\n\n Object.entries(wallets).reduce((acc, [walletName, wallet]) => {\n if (wallet.enabled) acc[walletName] = wallet\n return acc\n }, {} as EnabledEthWalletsState),\n [wallets],\n )\n\n return {\n disableWallet: enabledEthWalletsRef.current?.disableWallet.bind(enabledEthWalletsRef.current),\n enableWallet: enabledEthWalletsRef.current?.enableWallet.bind(enabledEthWalletsRef.current),\n enabledWallets,\n wallets,\n }\n}\n", "import type { FormControlProps } from '@mui/material'\nimport {\n Checkbox, FormControl, FormLabel,\n} from '@mui/material'\nimport React from 'react'\n\nexport interface CheckboxFormControlProps extends FormControlProps {\n onCheckChanged?: (checked: boolean) => void\n}\n\nexport const CheckboxFormControl: React.FC<CheckboxFormControlProps> = ({ onCheckChanged, ...props }) => {\n return (\n <FormControl {...props}>\n <FormLabel>\n <Checkbox onChange={(_, checked) => onCheckChanged?.(checked)} />\n Do not show this again.\n </FormLabel>\n </FormControl>\n )\n}\n", "import type { DialogProps } from '@mui/material'\nimport {\n Button, Dialog, DialogActions, DialogContent, DialogTitle,\n} from '@mui/material'\nimport React from 'react'\n\nimport type { ActiveProvider } from '../../lib/index.ts'\nimport { CheckboxFormControl } from './CheckboxFormControl.tsx'\nimport { LinkedProvidersFlexbox } from './LinkedProvidersFlexbox.tsx'\nimport { WalletPermissionsFlexbox } from './Permissions.tsx'\n\nexport interface ConnectWalletDialogProps extends DialogProps {\n activeProvider?: ActiveProvider\n onIgnoreConnectDialog?: (checked: boolean) => void\n}\n\nexport const ConnectWalletDialog: React.FC<ConnectWalletDialogProps> = ({\n activeProvider, onIgnoreConnectDialog, ...props\n}) => {\n const { icon, providerName } = activeProvider ?? {}\n\n const onConnect = async () => {\n try {\n await activeProvider?.connectWallet?.()\n props.onClose?.({}, 'escapeKeyDown')\n } catch (e) {\n console.warn(`Error connecting to wallet: ${(e as Error).message}`)\n }\n }\n\n return (\n <Dialog\n slotProps={{ paper: { sx: { display: 'flex', gap: 4 } } }}\n {...props}\n >\n <DialogTitle sx={{ textAlign: 'center' }}>XYO Wants To Access The Blockchain on Your Behalf</DialogTitle>\n <DialogContent sx={{\n display: 'flex', flexDirection: 'column', gap: 4,\n }}\n >\n <LinkedProvidersFlexbox icon={icon} providerName={providerName} />\n <WalletPermissionsFlexbox />\n <CheckboxFormControl onCheckChanged={onIgnoreConnectDialog} />\n </DialogContent>\n <DialogActions>\n <Button variant=\"outlined\" onClick={() => props.onClose?.({}, 'escapeKeyDown')}>\n Close\n </Button>\n <Button variant=\"contained\" onClick={onConnect}>\n Connect\n </Button>\n </DialogActions>\n </Dialog>\n )\n}\n", "import { ConstrainedImage } from '@ariestools/sdk-react/crypto'\nimport type { FlexBoxProps } from '@ariestools/sdk-react/flexbox'\nimport { FlexCol, FlexRow } from '@ariestools/sdk-react/flexbox'\nimport { SyncAlt } from '@mui/icons-material'\nimport { Typography } from '@mui/material'\nimport React from 'react'\n\nimport { xyoColorLogo } from '../../../../img/index.ts'\n\nexport interface LinkedProvidersFlexboxProps extends FlexBoxProps {\n icon?: string\n providerName?: string\n}\n\nexport const LinkedProvidersFlexbox: React.FC<LinkedProvidersFlexboxProps> = ({\n icon, providerName, ...props\n}) => {\n return (\n <FlexRow\n {...props}\n sx={[{\n gap: 4,\n justifyContent: 'space-evenly',\n }, ...(Array.isArray(props.sx) ? props.sx : [props.sx])]}\n >\n <FlexCol sx={{ gap: 0.5 }}>\n <img alt=\"XYO Logo\" src={xyoColorLogo} style={{ height: '48px' }} />\n <Typography variant=\"subtitle1\">XYO App</Typography>\n </FlexCol>\n <SyncAlt sx={{ fontSize: 'large' }} />\n <FlexCol sx={{ gap: 0.5 }}>\n <ConstrainedImage\n constrainedValue=\"48px\"\n src={icon}\n alt={providerName}\n style={{ height: '48px', maxWidth: '48px' }}\n />\n <Typography variant=\"subtitle1\">{providerName}</Typography>\n </FlexCol>\n </FlexRow>\n )\n}\n", "<svg id=\"Layer_1\" data-name=\"Layer 1\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 256 238\"><defs><style>.cls-1{fill:#8d8fc6;}.cls-2{fill:#579fd6;}.cls-3{fill:#f27046;}.cls-4{fill:#eb407a;}</style></defs><path class=\"cls-1\" d=\"M74.5,28.33,21.29,120.5,74.5,212.67H180.94l1.76-3,51.46-89.13L180.94,28.33ZM84.65,40.54h78.83L111.65,56.93a15.85,15.85,0,0,1,2,5l59.66-18.81L185.22,101a20.12,20.12,0,0,1,5.36-.78l-10-47.91,37.87,65.53h-7.62a24.21,24.21,0,0,1,.15,2.68,23.29,23.29,0,0,1-.15,2.68h7.62l-39.1,67.75,10.92-50.13A20.57,20.57,0,0,1,185,140l-12.88,59-58.37-19.53a17.61,17.61,0,0,1-1.7,5l47.5,15.92H84.65l4-6.85A20.17,20.17,0,0,1,83.93,191L80,197.78,42.67,133.13l37,32.66a20.52,20.52,0,0,1,3.6-4L36.69,120.66,85,77.79a17.45,17.45,0,0,1-3.19-4.32l-39.46,35L80,43.22l5.56,9.69A17.51,17.51,0,0,1,90.12,50Zm28.24,31.17a16.15,16.15,0,0,1-2.68,4.64l62,35.81a19.74,19.74,0,0,1,2.83-4.54Zm-20,10.51v75.33a18,18,0,0,1,2.47-.16,17.18,17.18,0,0,1,2.89.21v-75a11.21,11.21,0,0,1-1.29,0,17.57,17.57,0,0,1-4.07-.47Zm79.34,46.63-62.08,35.81a18.45,18.45,0,0,1,2.68,4.68l62.23-36a19.68,19.68,0,0,1-2.83-4.53Z\"/><path class=\"cls-2\" d=\"M97,48.58a17.06,17.06,0,1,0,17,17,17.08,17.08,0,0,0-17-17Zm0,5.36a11.7,11.7,0,1,1-11.7,11.69A11.65,11.65,0,0,1,97,53.94Z\"/><path class=\"cls-3\" d=\"M95.37,157.39a18.73,18.73,0,1,0,18.7,18.7,18.74,18.74,0,0,0-18.7-18.7Zm0,5.31A13.4,13.4,0,1,1,82,176.09a13.37,13.37,0,0,1,13.4-13.39Z\"/><path class=\"cls-4\" d=\"M190.73,100.2A20.3,20.3,0,1,0,211,120.5a20.34,20.34,0,0,0-20.3-20.3Zm0,5.36a14.94,14.94,0,1,1-14.94,14.94,14.88,14.88,0,0,1,14.94-14.94Z\"/></svg>", "import type { FlexBoxProps } from '@ariestools/sdk-react/flexbox'\nimport { FlexCol } from '@ariestools/sdk-react/flexbox'\nimport { Link, Typography } from '@mui/material'\nimport React from 'react'\n\nexport interface WalletPermissionsFlexBoxProps extends FlexBoxProps {}\n\nexport const WalletPermissionsFlexbox: React.FC<WalletPermissionsFlexBoxProps> = (props) => {\n return (\n <FlexCol\n {...props}\n sx={[{ gap: 4 }, ...(Array.isArray(props.sx) ? props.sx : [props.sx])]}\n >\n <Typography\n sx={{\n fontWeight: 'bold',\n textAlign: 'center',\n }}\n >\n This will allow XYO to:\n </Typography>\n <ul>\n <li>View your wallet account(s) and address(es)</li>\n <li>Read-only access to browse the public blockchain(s) you select</li>\n </ul>\n <Typography variant=\"subtitle1\" sx={{ textAlign: 'center' }}>\n You control what accounts to share and what blockchains to view. You can see or revoke access via your wallet's settings at anytime. View\n more on XYO's sovereign data philosophy\n {' '}\n <Link\n href=\"https://cointelegraph.com/innovation-circle/decentralization-and-sovereignty-debunking-our-approach-to-digital-sovereignty\"\n sx={{ fontWeight: 'bold' }}\n target=\"_blank\"\n >\n here\n </Link>\n .\n </Typography>\n </FlexCol>\n )\n}\n", "import { ConstrainedImage } from '@ariestools/sdk-react/crypto'\nimport { FlexRow } from '@ariestools/sdk-react/flexbox'\nimport type { DialogProps } from '@mui/material'\nimport {\n Button, Dialog, DialogActions, DialogContent, DialogTitle, Typography,\n} from '@mui/material'\nimport React from 'react'\n\nimport type { ActiveProvider } from '../../lib/index.ts'\n\nexport interface RevokeWalletConnectionDialogProps extends DialogProps {\n activeProvider?: ActiveProvider\n}\n\nexport const RevokeWalletConnectionDialog: React.FC<RevokeWalletConnectionDialogProps> = ({ activeProvider, ...props }) => {\n return (\n <Dialog {...props}>\n <FlexRow\n sx={{\n gap: 2,\n justifyContent: 'start',\n pl: 2,\n }}\n >\n <ConstrainedImage src={activeProvider?.icon} constrainedValue=\"24px\" />\n <DialogTitle sx={{ pl: 0 }}>\n Revoke\n {activeProvider?.providerName}\n {' '}\n Access\n </DialogTitle>\n </FlexRow>\n <DialogContent>\n <Typography>\n Revoking access to your wallet must be done from the wallet's browser extension. Wallets grant access to specific domains please\n consult\n {' '}\n {activeProvider?.providerName}\n 's documentation on how to revoke access to this website:\n </Typography>\n <Typography>{globalThis.location.origin}</Typography>\n </DialogContent>\n <DialogActions>\n <Button variant=\"contained\" onClick={() => props.onClose?.({}, 'escapeKeyDown')}>\n Close\n </Button>\n </DialogActions>\n </Dialog>\n )\n}\n", "import type { TableHeadCell } from '@xyo-network/react-table'\n\nexport const WalletsTableHeadCells: TableHeadCell[] = [\n {\n disablePadding: false,\n id: 'wallet',\n label: 'Wallet',\n numeric: false,\n showOnMobile: true,\n },\n {\n disablePadding: false,\n id: 'chain',\n label: 'Chain',\n numeric: false,\n showOnMobile: true,\n },\n {\n disablePadding: false,\n id: 'accounts',\n label: 'Accounts',\n numeric: true,\n showOnMobile: true,\n },\n {\n disablePadding: false,\n id: 'actions',\n label: 'Actions',\n numeric: false,\n showOnMobile: true,\n },\n {\n disablePadding: false,\n id: 'enabled',\n label: 'Enabled',\n numeric: false,\n showOnMobile: true,\n },\n]\n", "import {\n TableCell, Tooltip, Typography,\n} from '@mui/material'\nimport React from 'react'\n\nimport type { ConnectedWalletTableCellProps } from './lib/index.ts'\n\nexport const ConnectedWalletsAccountsTableCell: React.FC<ConnectedWalletTableCellProps> = ({\n additionalAccounts,\n currentAccount,\n totalAccounts,\n tableCellProps,\n}) => {\n return (\n <TableCell {...tableCellProps}>\n <Tooltip\n sx={{ cursor: totalAccounts > 0 ? 'pointer' : 'auto' }}\n title={[...(currentAccount ?? []), ...(additionalAccounts ?? [])].map(address => (\n <p key={address}>{address}</p>\n ))}\n >\n <Typography>{totalAccounts}</Typography>\n </Tooltip>\n </TableCell>\n )\n}\n", "import { FlexRow } from '@ariestools/sdk-react/flexbox'\nimport { Check, InfoOutlined } from '@mui/icons-material'\nimport {\n Button, IconButton, TableCell, Typography,\n} from '@mui/material'\nimport React from 'react'\n\nimport type { ConnectedWalletTableCellProps } from './lib/index.ts'\n\nexport const ConnectedWalletsActionsTableCell: React.FC<ConnectedWalletTableCellProps> = ({\n connected, onConnect, onRevoke, tableCellProps,\n}) => {\n return (\n <TableCell {...tableCellProps}>\n <FlexRow\n sx={{\n gap: 2,\n justifyContent: 'start',\n }}\n >\n {connected\n ? (\n <Typography sx={{ display: 'inline-flex', gap: 0.5 }}>\n <Check />\n Connected\n </Typography>\n )\n : (\n <Button variant=\"contained\" onClick={onConnect}>\n Connect\n </Button>\n )}\n {connected\n ? (\n <IconButton onClick={onRevoke}>\n <InfoOutlined />\n </IconButton>\n )\n : null}\n </FlexRow>\n </TableCell>\n )\n}\n", "import { TableCell } from '@mui/material'\nimport React from 'react'\n\nimport type { ConnectedWalletTableCellProps } from './lib/index.ts'\n\nexport const ConnectedWalletsChainNameTableCell: React.FC<ConnectedWalletTableCellProps> = ({ chainName, tableCellProps }) => {\n return <TableCell {...tableCellProps}>{chainName}</TableCell>\n}\n", "import { isDefined } from '@ariestools/sdk'\nimport { Switch, TableCell } from '@mui/material'\nimport type { ChangeEvent } from 'react'\nimport React, { useMemo } from 'react'\n\nimport { useEnabledWallets } from '../../../../hooks/index.ts'\nimport type { ConnectedWalletTableCellProps } from './lib/index.ts'\n\nexport const ConnectedWalletState: React.FC<ConnectedWalletTableCellProps> = ({\n connected, walletRdns, tableCellProps,\n}) => {\n const {\n disableWallet, enableWallet, wallets,\n } = useEnabledWallets()\n\n const enabled = useMemo(() => (isDefined(walletRdns) ? wallets[walletRdns]?.enabled : false), [wallets, walletRdns])\n\n const handleClick = (event: ChangeEvent<HTMLInputElement>) => {\n const checked = event.target?.checked\n if (isDefined(walletRdns)) {\n // eslint-disable-next-line @typescript-eslint/no-unused-expressions\n checked ? enableWallet?.(walletRdns) : disableWallet?.(walletRdns)\n }\n }\n return (\n <TableCell {...tableCellProps}>\n <Switch disabled={!connected} checked={connected && enabled} onChange={handleClick} />\n </TableCell>\n )\n}\n", "import { ConstrainedImage } from '@ariestools/sdk-react/crypto'\nimport { FlexRow } from '@ariestools/sdk-react/flexbox'\nimport { TableCell, useTheme } from '@mui/material'\nimport React from 'react'\n\nimport type { ConnectedWalletTableCellProps } from './lib/index.ts'\n\nexport const ConnectedWalletsWalletTableCell: React.FC<ConnectedWalletTableCellProps> = ({\n icon, walletName, tableCellProps,\n}) => {\n const theme = useTheme()\n\n return (\n <TableCell {...tableCellProps}>\n <FlexRow\n sx={{\n gap: 2,\n justifyContent: 'start',\n }}\n >\n <ConstrainedImage constrainedValue={theme.spacing(4)} src={icon} />\n {walletName}\n </FlexRow>\n </TableCell>\n )\n}\n", "import type { ComponentType } from 'react'\n\nimport { ConnectedWalletsAccountsTableCell } from './Accounts.tsx'\nimport { ConnectedWalletsActionsTableCell } from './Actions.tsx'\nimport { ConnectedWalletsChainNameTableCell } from './ChainName.tsx'\nimport type { ConnectedWalletTableCellProps } from './lib/index.ts'\nimport { ConnectedWalletState } from './State.tsx'\nimport { ConnectedWalletsWalletTableCell } from './Wallet.tsx'\n\nexport const ConnectedWalletTableCells: ComponentType<ConnectedWalletTableCellProps>[] = [\n ConnectedWalletsWalletTableCell,\n ConnectedWalletsChainNameTableCell,\n ConnectedWalletsAccountsTableCell,\n ConnectedWalletsActionsTableCell,\n ConnectedWalletState,\n]\n", "import type { EIP6963Connector } from '@ariestools/sdk-react/crypto'\nimport type { TableProps } from '@mui/material'\nimport {\n Table, TableBody, TableCell, TableHead, TableRow,\n} from '@mui/material'\nimport React, { useState } from 'react'\n\nimport { ConnectWalletDialog, RevokeWalletConnectionDialog } from '../dialogs/index.ts'\nimport type { ActiveProvider } from '../lib/index.ts'\nimport { WalletsTableHeadCells } from '../lib/index.ts'\nimport { WalletConnectionsTableRow } from './ConnectedWalletsTableRow.tsx'\nimport { useActiveProviderDialogState } from './hooks/index.ts'\n\nexport interface ConnectedWalletsTableProps extends TableProps {\n ignoreConnectDialog?: boolean\n onIgnoreConnectDialog?: (checked: boolean) => void\n wallets?: EIP6963Connector[]\n}\n\nexport const ConnectedWalletsTable: React.FC<ConnectedWalletsTableProps> = ({\n ignoreConnectDialog, onIgnoreConnectDialog, wallets, ...props\n}) => {\n const [activeProvider, setActiveProvider] = useState<ActiveProvider>()\n const [showConnect, onSetActiveProviderConnect, onConnectClose] = useActiveProviderDialogState(setActiveProvider)\n const [showRevoke, onSetActiveProviderRevoke, onRevokeClose] = useActiveProviderDialogState(setActiveProvider)\n\n return (\n <>\n <Table {...props}>\n <TableHead>\n <TableRow>\n {WalletsTableHeadCells.map(({\n disablePadding, id, label, align, width,\n }) => (\n <TableCell\n align={align}\n key={id}\n sx={{\n padding: disablePadding ? 'none' : 'normal',\n width: width ?? 'auto',\n }}\n >\n {label}\n </TableCell>\n ))}\n </TableRow>\n </TableHead>\n <TableBody>\n {(wallets ?? []).map(wallet => (\n <WalletConnectionsTableRow\n ignoreConnectDialog={ignoreConnectDialog}\n key={wallet.providerInfo?.rdns}\n onConnectClick={onSetActiveProviderConnect}\n onRevoke={onSetActiveProviderRevoke}\n wallet={wallet}\n />\n ))}\n </TableBody>\n </Table>\n <RevokeWalletConnectionDialog open={showRevoke} onClose={onRevokeClose} activeProvider={activeProvider} />\n <ConnectWalletDialog\n activeProvider={activeProvider}\n onClose={onConnectClose}\n open={showConnect}\n onIgnoreConnectDialog={onIgnoreConnectDialog}\n />\n </>\n )\n}\n", "import type { EthWalletConnectorBase } from '@ariestools/sdk-react/crypto'\nimport { useEthWallet } from '@ariestools/sdk-react/crypto'\nimport type { TableRowProps } from '@mui/material'\nimport { TableRow } from '@mui/material'\nimport React, { useCallback, useMemo } from 'react'\n\nimport type { ActiveProvider } from '../lib/index.ts'\nimport { ConnectedWalletTableCells } from './cells/index.ts'\n\nexport interface WalletConnectionsTableRowProps extends TableRowProps {\n ignoreConnectDialog?: boolean\n onConnectClick?: (activeProvider: ActiveProvider) => void\n onRevoke?: (activeProvider: ActiveProvider) => void\n wallet: EthWalletConnectorBase\n}\n\nexport const WalletConnectionsTableRow: React.FC<WalletConnectionsTableRowProps> = ({\n ignoreConnectDialog,\n onConnectClick,\n onRevoke,\n wallet,\n ...props\n}) => {\n const {\n currentAccount: currentAccountFromWallet, additionalAccounts, chainName, connectWallet, providerInfo,\n } = useEthWallet(wallet)\n\n const currentAccount = currentAccountFromWallet?.toString() ? [currentAccountFromWallet.toString()] : []\n const totalAccounts = (additionalAccounts?.length ?? 0) + (currentAccount?.length ?? 0)\n const connected = !!(currentAccount?.length)\n const {\n icon, name, rdns,\n } = useMemo(() => providerInfo ?? {\n icon: undefined, name: undefined, rdns: undefined,\n }, [providerInfo])\n\n const activeProvider = useMemo<ActiveProvider>(\n () => ({\n connectWallet,\n icon,\n providerName: name,\n }),\n [connectWallet, icon, name],\n )\n\n const onRevokeLocal = useCallback(() => {\n onRevoke?.(activeProvider)\n }, [activeProvider, onRevoke])\n\n const onConnectLocal = useCallback(async () => {\n if (ignoreConnectDialog) {\n await connectWallet?.()\n } else {\n onConnectClick?.(activeProvider)\n }\n }, [activeProvider, connectWallet, ignoreConnectDialog, onConnectClick])\n\n return (\n <TableRow {...props}>\n {Object.entries(ConnectedWalletTableCells).map(([cellName, Cell]) => (\n <Cell\n key={cellName}\n additionalAccounts={additionalAccounts}\n chainName={chainName}\n connected={connected}\n currentAccount={currentAccount}\n icon={icon}\n onConnect={onConnectLocal}\n onRevoke={onRevokeLocal}\n totalAccounts={totalAccounts}\n walletName={name}\n walletRdns={rdns}\n />\n ))}\n </TableRow>\n )\n}\n", "import type { Dispatch, SetStateAction } from 'react'\nimport { useState } from 'react'\n\nimport type { ActiveProvider } from '../../lib/index.ts'\n\nexport const useActiveProviderDialogState = (\n setActiveProvider: Dispatch<SetStateAction<ActiveProvider | undefined>>,\n): [boolean, (activeProvider: ActiveProvider) => void, () => void] => {\n const [show, setShow] = useState(false)\n const onSetActiveProvider = (activeProvider: ActiveProvider) => {\n setShow(true)\n setActiveProvider(activeProvider)\n }\n\n const onClose = () => {\n setShow(false)\n setActiveProvider({})\n }\n\n return [show, onSetActiveProvider, onClose]\n}\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": ["FlexCol", "Typography", "useTheme", "useWalletDiscovery", "useMemo", "useWalletDiscovery", "useMemo", "jsx", "jsxs", "FlexCol", "Typography", "jsx", "jsxs", "jsx", "jsxs", "ConstrainedImage", "FlexRow", "Button", "Dialog", "DialogActions", "DialogContent", "DialogTitle", "Typography", "jsx", "jsxs", "Typography", "jsx", "FlexRow", "Button", "TableCell", "Typography", "jsx", "jsxs", "TableCell", "jsx", "TableCell", "useMemo", "jsx", "useMemo", "TableCell", "ConstrainedImage", "FlexRow", "TableCell", "jsx", "jsxs", "TableCell", "TableRow", "useState", "useMemo", "jsx", "useMemo", "jsx", "jsxs", "useState", "TableRow", "TableCell", "jsx", "jsxs", "useTheme", "FlexCol", "Typography"]
|
|
7
7
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@xyo-network/react-connected-accounts",
|
|
3
|
-
"version": "10.0.
|
|
3
|
+
"version": "10.0.4",
|
|
4
4
|
"description": "Common React library for all XYO projects that use React",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"xyo",
|
|
@@ -41,63 +41,65 @@
|
|
|
41
41
|
"README.md"
|
|
42
42
|
],
|
|
43
43
|
"dependencies": {
|
|
44
|
-
"@xyo-network/react-table": "~10.0.
|
|
44
|
+
"@xyo-network/react-table": "~10.0.4"
|
|
45
45
|
},
|
|
46
46
|
"devDependencies": {
|
|
47
|
-
"@
|
|
48
|
-
"@
|
|
47
|
+
"@ariestools/sdk": "^7.0.5",
|
|
48
|
+
"@ariestools/sdk-react": "^10.0.2",
|
|
49
|
+
"@mui/icons-material": "^9.2.0",
|
|
50
|
+
"@mui/material": "^9.2.0",
|
|
49
51
|
"@opentelemetry/api": "^1.9.1",
|
|
50
|
-
"@opentelemetry/sdk-trace-base": "^2.
|
|
52
|
+
"@opentelemetry/sdk-trace-base": "^2.9.0",
|
|
53
|
+
"@react-spring/web": "^10.1.2",
|
|
51
54
|
"@storybook/react-vite": "~10.4.6",
|
|
52
55
|
"@types/react": "^19.2.17",
|
|
53
|
-
"@xylabs/eth-address": "^7.0.
|
|
54
|
-
"@xylabs/pixel": "^7.0.
|
|
55
|
-
"@xylabs/
|
|
56
|
-
"@xylabs/
|
|
57
|
-
"@xylabs/
|
|
58
|
-
"@xylabs/react
|
|
59
|
-
"@xylabs/sdk": "^7.0.1",
|
|
60
|
-
"@xylabs/toolchain": "~8.5.3",
|
|
61
|
-
"@xylabs/tsconfig": "^8.5.3",
|
|
62
|
-
"@xylabs/tsconfig-dom": "^8.5.3",
|
|
63
|
-
"@xylabs/tsconfig-react": "~8.5.3",
|
|
56
|
+
"@xylabs/eth-address": "^7.0.5",
|
|
57
|
+
"@xylabs/pixel": "^7.0.5",
|
|
58
|
+
"@xylabs/toolchain": "~8.5.15",
|
|
59
|
+
"@xylabs/tsconfig": "^8.5.15",
|
|
60
|
+
"@xylabs/tsconfig-dom": "^8.5.15",
|
|
61
|
+
"@xylabs/tsconfig-react": "~8.5.15",
|
|
64
62
|
"async-mutex": "^0.5.0",
|
|
63
|
+
"clsx": "^2.1.1",
|
|
65
64
|
"eslint": "^10.6.0",
|
|
66
65
|
"ethers": "^6.17.0",
|
|
67
66
|
"lru-cache": "^11.5.1",
|
|
68
|
-
"md5": "
|
|
69
|
-
"
|
|
67
|
+
"md5": "^2.3.0",
|
|
68
|
+
"numeral": "^2.0.6",
|
|
69
|
+
"query-string": "^9.4.1",
|
|
70
70
|
"react": "^19.2.7",
|
|
71
71
|
"react-dom": "^19.2.7",
|
|
72
|
-
"react-router-dom": "^7.18.
|
|
72
|
+
"react-router-dom": "^7.18.1",
|
|
73
73
|
"storybook": "^10.4.6",
|
|
74
74
|
"typescript": "^6.0.3",
|
|
75
|
-
"viem": "^2.
|
|
76
|
-
"vite": "^8.1.
|
|
77
|
-
"zod": "^4.4.3"
|
|
75
|
+
"viem": "^2.54.2",
|
|
76
|
+
"vite": "^8.1.3",
|
|
77
|
+
"zod": "^4.4.3",
|
|
78
|
+
"zustand": "^5.0.14"
|
|
78
79
|
},
|
|
79
80
|
"peerDependencies": {
|
|
81
|
+
"@ariestools/sdk": "^7.0",
|
|
82
|
+
"@ariestools/sdk-react": "^10.0",
|
|
80
83
|
"@mui/icons-material": "^9.0",
|
|
81
84
|
"@mui/material": "^9.0",
|
|
82
85
|
"@opentelemetry/api": "^1.9",
|
|
83
86
|
"@opentelemetry/sdk-trace-base": "^2.7",
|
|
87
|
+
"@react-spring/web": "^10.1",
|
|
84
88
|
"@xylabs/eth-address": "^7.0",
|
|
85
89
|
"@xylabs/pixel": "^7.0",
|
|
86
|
-
"@xylabs/react-crypto": "^10.0",
|
|
87
|
-
"@xylabs/react-flexbox": "^10.0",
|
|
88
|
-
"@xylabs/react-hooks": "^10.0",
|
|
89
|
-
"@xylabs/react-shared": "^10.0",
|
|
90
|
-
"@xylabs/sdk": "^7.0",
|
|
91
90
|
"async-mutex": "^0.5",
|
|
91
|
+
"clsx": "^2.1",
|
|
92
92
|
"ethers": "^6.16",
|
|
93
93
|
"lru-cache": "^11.3",
|
|
94
|
-
"md5": "
|
|
95
|
-
"
|
|
94
|
+
"md5": "^2.3",
|
|
95
|
+
"numeral": "^2.0",
|
|
96
|
+
"query-string": "^9.4",
|
|
96
97
|
"react": "^19.2",
|
|
97
98
|
"react-dom": "^19.2",
|
|
98
99
|
"react-router-dom": "^7.15",
|
|
99
100
|
"viem": "^2.48",
|
|
100
|
-
"zod": "^4.4"
|
|
101
|
+
"zod": "^4.4",
|
|
102
|
+
"zustand": "^5.0"
|
|
101
103
|
},
|
|
102
104
|
"publishConfig": {
|
|
103
105
|
"access": "public"
|