@xyo-network/os-react-runtime 4.1.4 → 4.2.0-rc.10
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/DappPathSwitcher.d.ts.map +1 -1
- package/dist/browser/helpers/BridgeActivityHelper.d.ts +10 -10
- package/dist/browser/helpers/index.d.ts +0 -1
- package/dist/browser/helpers/index.d.ts.map +1 -1
- package/dist/browser/hooks/intent/useDappIntentListener.d.ts.map +1 -1
- package/dist/browser/hooks/os/useDappContextCreator.d.ts +2 -2
- package/dist/browser/hooks/os/useDappContextCreator.d.ts.map +1 -1
- package/dist/browser/hooks/useAccountArchivist.d.ts +10 -10
- package/dist/browser/index.mjs +454 -470
- package/dist/browser/index.mjs.map +1 -1
- package/dist/browser/modules/Dapp/Button/IconEx.d.ts +4 -2
- package/dist/browser/modules/Dapp/Button/IconEx.d.ts.map +1 -1
- package/dist/browser/modules/Dapp/Container.d.ts +3 -0
- package/dist/browser/modules/Dapp/Container.d.ts.map +1 -1
- package/dist/browser/modules/Dapp/Page/Row.d.ts +2 -1
- package/dist/browser/modules/Dapp/Page/Row.d.ts.map +1 -1
- package/dist/browser/modules/Dapp/modules/Window/DappWindow.d.ts +10 -3
- package/dist/browser/modules/Dapp/modules/Window/DappWindow.d.ts.map +1 -1
- package/dist/browser/modules/Dapp/modules/Window/hooks/index.d.ts +2 -1
- package/dist/browser/modules/Dapp/modules/Window/hooks/index.d.ts.map +1 -1
- package/dist/browser/modules/Dapp/modules/Window/hooks/lib/deriveDappState.d.ts +8 -0
- package/dist/browser/modules/Dapp/modules/Window/hooks/lib/deriveDappState.d.ts.map +1 -0
- package/dist/browser/modules/Dapp/modules/Window/hooks/lib/index.d.ts +2 -1
- package/dist/browser/modules/Dapp/modules/Window/hooks/lib/index.d.ts.map +1 -1
- package/dist/browser/modules/Dapp/modules/Window/hooks/route/helpers/index.d.ts +4 -4
- package/dist/browser/modules/Dapp/modules/Window/hooks/route/helpers/index.d.ts.map +1 -1
- package/dist/browser/modules/Dapp/modules/Window/hooks/route/helpers/useManageDappInjectableParamsFromRoute.d.ts +1 -1
- package/dist/browser/modules/Dapp/modules/Window/hooks/route/helpers/useManageDappInjectableParamsFromRoute.d.ts.map +1 -1
- package/dist/browser/modules/Dapp/modules/Window/hooks/route/helpers/useManageDappPathFromRoute.d.ts +2 -0
- package/dist/browser/modules/Dapp/modules/Window/hooks/route/helpers/useManageDappPathFromRoute.d.ts.map +1 -1
- package/dist/browser/modules/Dapp/modules/Window/hooks/route/helpers/useManageDappStateFromRoute.d.ts +2 -2
- package/dist/browser/modules/Dapp/modules/Window/hooks/route/helpers/useManageDappStateFromRoute.d.ts.map +1 -1
- package/dist/browser/modules/Dapp/modules/Window/hooks/route/index.d.ts +0 -1
- package/dist/browser/modules/Dapp/modules/Window/hooks/route/index.d.ts.map +1 -1
- package/package.json +11 -10
- package/src/DappPathSwitcher.tsx +11 -9
- package/src/helpers/index.ts +0 -1
- package/src/hooks/intent/useDappIntentListener.tsx +3 -1
- package/src/hooks/os/useDappContextCreator.tsx +25 -19
- package/src/hooks/os/useWidgetDapps.tsx +1 -1
- package/src/modules/Dapp/Button/IconEx.tsx +16 -13
- package/src/modules/Dapp/Container.tsx +33 -5
- package/src/modules/Dapp/Page/Row.tsx +14 -5
- package/src/modules/Dapp/modules/Window/DappWindow.tsx +25 -26
- package/src/modules/Dapp/modules/Window/hooks/index.ts +2 -1
- package/src/modules/Dapp/modules/Window/hooks/lib/deriveDappState.ts +20 -0
- package/src/modules/Dapp/modules/Window/hooks/lib/index.ts +2 -1
- package/src/modules/Dapp/modules/Window/hooks/menu/useDappMenu.tsx +1 -1
- package/src/modules/Dapp/modules/Window/hooks/route/helpers/RoutingNodes.md +7 -0
- package/src/modules/Dapp/modules/Window/hooks/route/helpers/index.ts +4 -4
- package/src/modules/Dapp/modules/Window/hooks/route/helpers/useManageDappInjectableParamsFromRoute.tsx +1 -1
- package/src/modules/Dapp/modules/Window/hooks/route/helpers/useManageDappPathFromRoute.tsx +2 -0
- package/src/modules/Dapp/modules/Window/hooks/route/helpers/useManageDappStateFromRoute.tsx +26 -20
- package/src/modules/Dapp/modules/Window/hooks/route/index.ts +0 -1
- package/dist/browser/helpers/widgets/UpperWidgetTrayLayout.d.ts +0 -6
- package/dist/browser/helpers/widgets/UpperWidgetTrayLayout.d.ts.map +0 -1
- package/dist/browser/helpers/widgets/index.d.ts +0 -2
- package/dist/browser/helpers/widgets/index.d.ts.map +0 -1
- package/dist/browser/modules/Dapp/modules/Window/hooks/route/useManageDappBasedOffRoute.d.ts +0 -19
- package/dist/browser/modules/Dapp/modules/Window/hooks/route/useManageDappBasedOffRoute.d.ts.map +0 -1
- package/dist/browser/modules/Dapp/modules/Window/hooks/useDappState.d.ts +0 -8
- package/dist/browser/modules/Dapp/modules/Window/hooks/useDappState.d.ts.map +0 -1
- package/src/helpers/widgets/UpperWidgetTrayLayout.ts +0 -20
- package/src/helpers/widgets/index.ts +0 -1
- package/src/modules/Dapp/modules/Window/hooks/route/useManageDappBasedOffRoute.tsx +0 -33
- package/src/modules/Dapp/modules/Window/hooks/useDappState.tsx +0 -14
|
@@ -1,10 +1,12 @@
|
|
|
1
1
|
import type { ButtonExProps } from '@xylabs/react-button';
|
|
2
2
|
import type { DappIcon, DappName } from '@xyo-network/os-model';
|
|
3
3
|
import React from 'react';
|
|
4
|
-
|
|
4
|
+
import type { DappState } from '../modules/index.ts';
|
|
5
|
+
export type DappIconButtonProps = ButtonExProps & {
|
|
5
6
|
dappIcon?: DappIcon;
|
|
6
7
|
dappIconSvg?: string;
|
|
7
8
|
dappName?: DappName;
|
|
9
|
+
dappState?: DappState;
|
|
8
10
|
};
|
|
9
|
-
export declare const DappIconButton: React.FC<
|
|
11
|
+
export declare const DappIconButton: React.FC<DappIconButtonProps>;
|
|
10
12
|
//# sourceMappingURL=IconEx.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"IconEx.d.ts","sourceRoot":"","sources":["../../../../../src/modules/Dapp/Button/IconEx.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAA;AAEzD,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"IconEx.d.ts","sourceRoot":"","sources":["../../../../../src/modules/Dapp/Button/IconEx.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAA;AAEzD,OAAO,KAAK,EACV,QAAQ,EACR,QAAQ,EACT,MAAM,uBAAuB,CAAA;AAG9B,OAAO,KAAiB,MAAM,OAAO,CAAA;AAKrC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAA;AAQpD,MAAM,MAAM,mBAAmB,GAAG,aAAa,GAAG;IAChD,QAAQ,CAAC,EAAE,QAAQ,CAAA;IACnB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,QAAQ,CAAC,EAAE,QAAQ,CAAA;IACnB,SAAS,CAAC,EAAE,SAAS,CAAA;CACtB,CAAA;AAED,eAAO,MAAM,cAAc,EAAE,KAAK,CAAC,EAAE,CAAC,mBAAmB,CAiExD,CAAA"}
|
|
@@ -1,9 +1,12 @@
|
|
|
1
|
+
import type { DappIntent } from '@xyo-network/os-model';
|
|
1
2
|
import type { RegisteredReactDappSet } from '@xyo-network/os-react-model';
|
|
2
3
|
import React from 'react';
|
|
3
4
|
export interface DappContainerProps {
|
|
5
|
+
currentIntent?: DappIntent;
|
|
4
6
|
dappSet: RegisteredReactDappSet;
|
|
5
7
|
xnsNetwork: string | undefined;
|
|
6
8
|
xnsNodeUrl: string | undefined;
|
|
7
9
|
}
|
|
8
10
|
export declare const DappContainer: React.FC<DappContainerProps>;
|
|
11
|
+
export declare const DappContainerMemo: React.NamedExoticComponent<DappContainerProps>;
|
|
9
12
|
//# sourceMappingURL=Container.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Container.d.ts","sourceRoot":"","sources":["../../../../src/modules/Dapp/Container.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAA;AACzE,OAAO,
|
|
1
|
+
{"version":3,"file":"Container.d.ts","sourceRoot":"","sources":["../../../../src/modules/Dapp/Container.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAA;AACvD,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAA;AACzE,OAAO,KAAwB,MAAM,OAAO,CAAA;AAM5C,MAAM,WAAW,kBAAkB;IACjC,aAAa,CAAC,EAAE,UAAU,CAAA;IAC1B,OAAO,EAAE,sBAAsB,CAAA;IAC/B,UAAU,EAAE,MAAM,GAAG,SAAS,CAAA;IAC9B,UAAU,EAAE,MAAM,GAAG,SAAS,CAAA;CAC/B;AAED,eAAO,MAAM,aAAa,EAAE,KAAK,CAAC,EAAE,CAAC,kBAAkB,CAgCtD,CAAA;AAED,eAAO,MAAM,iBAAiB,gDAAsB,CAAA"}
|
|
@@ -1,8 +1,9 @@
|
|
|
1
|
-
import type { InstallationType } from '@xyo-network/os-model';
|
|
1
|
+
import type { DappIntent, InstallationType } from '@xyo-network/os-model';
|
|
2
2
|
import type { RegisteredReactDappSet } from '@xyo-network/os-react-model';
|
|
3
3
|
import React from 'react';
|
|
4
4
|
export interface DappsRowProps {
|
|
5
5
|
chipLabel: string;
|
|
6
|
+
currentIntent?: DappIntent;
|
|
6
7
|
installType: InstallationType;
|
|
7
8
|
registeredDappsSet?: RegisteredReactDappSet[];
|
|
8
9
|
xnsNetwork: string | undefined;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Row.d.ts","sourceRoot":"","sources":["../../../../../src/modules/Dapp/Page/Row.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"Row.d.ts","sourceRoot":"","sources":["../../../../../src/modules/Dapp/Page/Row.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,UAAU,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAA;AACzE,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAA;AACzE,OAAO,KAAkB,MAAM,OAAO,CAAA;AAMtC,MAAM,WAAW,aAAa;IAC5B,SAAS,EAAE,MAAM,CAAA;IACjB,aAAa,CAAC,EAAE,UAAU,CAAA;IAC1B,WAAW,EAAE,gBAAgB,CAAA;IAC7B,kBAAkB,CAAC,EAAE,sBAAsB,EAAE,CAAA;IAC7C,UAAU,EAAE,MAAM,GAAG,SAAS,CAAA;IAC9B,UAAU,EAAE,MAAM,GAAG,SAAS,CAAA;CAC/B;AAED,eAAO,MAAM,QAAQ,EAAE,KAAK,CAAC,EAAE,CAAC,aAAa,CAsC5C,CAAA;AAED,eAAO,MAAM,mBAAmB,ySAQ7B,CAAA"}
|
|
@@ -1,9 +1,16 @@
|
|
|
1
|
-
import type {
|
|
1
|
+
import type { DappIntent } from '@xyo-network/os-model';
|
|
2
|
+
import type { RegisteredReactDappSet, XyOsUiContext } from '@xyo-network/os-react-model';
|
|
3
|
+
import type { WalletInstance } from '@xyo-network/wallet-model';
|
|
2
4
|
import React from 'react';
|
|
5
|
+
import type { DappState } from './hooks/index.ts';
|
|
3
6
|
export interface DappWindowProps {
|
|
7
|
+
context?: XyOsUiContext | null;
|
|
4
8
|
dappSet?: RegisteredReactDappSet;
|
|
5
|
-
|
|
6
|
-
|
|
9
|
+
dappState?: DappState;
|
|
10
|
+
dappWallet?: WalletInstance;
|
|
11
|
+
errors?: Error[];
|
|
12
|
+
intent?: DappIntent;
|
|
13
|
+
nodeCreateError?: Error;
|
|
7
14
|
}
|
|
8
15
|
/** A component that can load immediately, but delays node loading and dapp mounting till corresponding launch intent arrives */
|
|
9
16
|
export declare const DappWindow: React.FC<DappWindowProps>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DappWindow.d.ts","sourceRoot":"","sources":["../../../../../../src/modules/Dapp/modules/Window/DappWindow.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"DappWindow.d.ts","sourceRoot":"","sources":["../../../../../../src/modules/Dapp/modules/Window/DappWindow.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAA;AACvD,OAAO,KAAK,EAAE,sBAAsB,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAA;AAIxF,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAA;AAC/D,OAAO,KAAkB,MAAM,OAAO,CAAA;AAOtC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAA;AAOjD,MAAM,WAAW,eAAe;IAC9B,OAAO,CAAC,EAAE,aAAa,GAAG,IAAI,CAAA;IAC9B,OAAO,CAAC,EAAE,sBAAsB,CAAA;IAChC,SAAS,CAAC,EAAE,SAAS,CAAA;IACrB,UAAU,CAAC,EAAE,cAAc,CAAA;IAC3B,MAAM,CAAC,EAAE,KAAK,EAAE,CAAA;IAChB,MAAM,CAAC,EAAE,UAAU,CAAA;IACnB,eAAe,CAAC,EAAE,KAAK,CAAA;CACxB;AAED,gIAAgI;AAChI,eAAO,MAAM,UAAU,EAAE,KAAK,CAAC,EAAE,CAAC,eAAe,CAoHhD,CAAA"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
|
+
export * from './lib/index.ts';
|
|
1
2
|
export * from './menu/index.ts';
|
|
2
3
|
export * from './route/index.ts';
|
|
3
|
-
export * from './
|
|
4
|
+
export * from './useDappMenuResourceValues.tsx';
|
|
4
5
|
export * from './useDecomposeDappSet.js';
|
|
5
6
|
export * from './useSkipLoadingScreen.js';
|
|
6
7
|
export * from './useSyncOsRegisteredAccessInterfaces.js';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../src/modules/Dapp/modules/Window/hooks/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAA;AAC/B,cAAc,kBAAkB,CAAA;AAChC,cAAc,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../src/modules/Dapp/modules/Window/hooks/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAA;AAC9B,cAAc,iBAAiB,CAAA;AAC/B,cAAc,kBAAkB,CAAA;AAChC,cAAc,iCAAiC,CAAA;AAC/C,cAAc,0BAA0B,CAAA;AACxC,cAAc,2BAA2B,CAAA;AACzC,cAAc,0CAA0C,CAAA"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import type { DappIntent } from '@xyo-network/os-model';
|
|
2
|
+
export interface DappState {
|
|
3
|
+
active: boolean;
|
|
4
|
+
closed: boolean;
|
|
5
|
+
minimized: boolean;
|
|
6
|
+
}
|
|
7
|
+
export declare const deriveDappState: (intent?: DappIntent) => DappState;
|
|
8
|
+
//# sourceMappingURL=deriveDappState.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"deriveDappState.d.ts","sourceRoot":"","sources":["../../../../../../../../src/modules/Dapp/modules/Window/hooks/lib/deriveDappState.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAA;AAGvD,MAAM,WAAW,SAAS;IACxB,MAAM,EAAE,OAAO,CAAA;IACf,MAAM,EAAE,OAAO,CAAA;IACf,SAAS,EAAE,OAAO,CAAA;CACnB;AAED,eAAO,MAAM,eAAe,YAAa,UAAU,KAAG,SAUrD,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../../src/modules/Dapp/modules/Window/hooks/lib/index.ts"],"names":[],"mappings":"AAAA,cAAc,sBAAsB,CAAA"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../../src/modules/Dapp/modules/Window/hooks/lib/index.ts"],"names":[],"mappings":"AAAA,cAAc,sBAAsB,CAAA;AACpC,cAAc,sBAAsB,CAAA"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
export * from './useManageDappInjectableParamsFromRoute.
|
|
2
|
-
export * from './useManageDappIntentRequest.
|
|
3
|
-
export * from './useManageDappPathFromRoute.
|
|
4
|
-
export * from './useManageDappStateFromRoute.
|
|
1
|
+
export * from './useManageDappInjectableParamsFromRoute.tsx';
|
|
2
|
+
export * from './useManageDappIntentRequest.tsx';
|
|
3
|
+
export * from './useManageDappPathFromRoute.tsx';
|
|
4
|
+
export * from './useManageDappStateFromRoute.tsx';
|
|
5
5
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../../../src/modules/Dapp/modules/Window/hooks/route/helpers/index.ts"],"names":[],"mappings":"AAAA,cAAc,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../../../src/modules/Dapp/modules/Window/hooks/route/helpers/index.ts"],"names":[],"mappings":"AAAA,cAAc,8CAA8C,CAAA;AAC5D,cAAc,kCAAkC,CAAA;AAChD,cAAc,kCAAkC,CAAA;AAChD,cAAc,mCAAmC,CAAA"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import type { XyOsContext } from '@xyo-network/os-model';
|
|
2
|
-
/**
|
|
2
|
+
/** Update the dapp archivist with injectable params based off changes in the query params */
|
|
3
3
|
export declare const useManageDappInjectableParamsFromRoute: (context?: XyOsContext | null) => (Error | undefined)[];
|
|
4
4
|
//# sourceMappingURL=useManageDappInjectableParamsFromRoute.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useManageDappInjectableParamsFromRoute.d.ts","sourceRoot":"","sources":["../../../../../../../../../src/modules/Dapp/modules/Window/hooks/route/helpers/useManageDappInjectableParamsFromRoute.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAA;AAOxD,
|
|
1
|
+
{"version":3,"file":"useManageDappInjectableParamsFromRoute.d.ts","sourceRoot":"","sources":["../../../../../../../../../src/modules/Dapp/modules/Window/hooks/route/helpers/useManageDappInjectableParamsFromRoute.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAA;AAOxD,6FAA6F;AAC7F,eAAO,MAAM,sCAAsC,aAAc,WAAW,GAAG,IAAI,0BA8ClF,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useManageDappPathFromRoute.d.ts","sourceRoot":"","sources":["../../../../../../../../../src/modules/Dapp/modules/Window/hooks/route/helpers/useManageDappPathFromRoute.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAA;AAUxD
|
|
1
|
+
{"version":3,"file":"useManageDappPathFromRoute.d.ts","sourceRoot":"","sources":["../../../../../../../../../src/modules/Dapp/modules/Window/hooks/route/helpers/useManageDappPathFromRoute.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAA;AAUxD;;;;;;;;;;GAUG;AAEH,iDAAiD;AACjD,eAAO,MAAM,0BAA0B,aAAc,WAAW,GAAG,IAAI,aAAa,MAAM,SAiDzF,CAAA"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import type { DappIntent } from '@xyo-network/os-model';
|
|
2
|
-
/**
|
|
3
|
-
export declare const useManageDappStateFromRoute: (intentPayload?: DappIntent
|
|
2
|
+
/** Launch or close the dapp based off changes to the `dappName` route param */
|
|
3
|
+
export declare const useManageDappStateFromRoute: (intentPayload?: DappIntent) => void;
|
|
4
4
|
//# sourceMappingURL=useManageDappStateFromRoute.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useManageDappStateFromRoute.d.ts","sourceRoot":"","sources":["../../../../../../../../../src/modules/Dapp/modules/Window/hooks/route/helpers/useManageDappStateFromRoute.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAA;
|
|
1
|
+
{"version":3,"file":"useManageDappStateFromRoute.d.ts","sourceRoot":"","sources":["../../../../../../../../../src/modules/Dapp/modules/Window/hooks/route/helpers/useManageDappStateFromRoute.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAA;AAQvD,+EAA+E;AAC/E,eAAO,MAAM,2BAA2B,mBAAoB,UAAU,SAwCrE,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../../src/modules/Dapp/modules/Window/hooks/route/index.ts"],"names":[],"mappings":"AAAA,cAAc,oBAAoB,CAAA
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../../src/modules/Dapp/modules/Window/hooks/route/index.ts"],"names":[],"mappings":"AAAA,cAAc,oBAAoB,CAAA"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@xyo-network/os-react-runtime",
|
|
3
|
-
"version": "4.
|
|
3
|
+
"version": "4.2.0-rc.10",
|
|
4
4
|
"description": "Primary SDK for using XYO Protocol 2.0",
|
|
5
5
|
"homepage": "https://xyo.network",
|
|
6
6
|
"bugs": {
|
|
@@ -48,23 +48,23 @@
|
|
|
48
48
|
"@xylabs/react-shared": "^5.3.14",
|
|
49
49
|
"@xyo-network/archivist-indexeddb": "^3.6.6",
|
|
50
50
|
"@xyo-network/archivist-model": "^3.6.6",
|
|
51
|
-
"@xyo-network/bios-browser": "^4.
|
|
52
|
-
"@xyo-network/bios-model": "^4.
|
|
51
|
+
"@xyo-network/bios-browser": "^4.2.0-rc.10",
|
|
52
|
+
"@xyo-network/bios-model": "^4.2.0-rc.10",
|
|
53
53
|
"@xyo-network/diviner-boundwitness-indexeddb": "^3.6.6",
|
|
54
54
|
"@xyo-network/diviner-model": "^3.6.6",
|
|
55
55
|
"@xyo-network/diviner-payload-generic": "^3.6.6",
|
|
56
56
|
"@xyo-network/diviner-payload-indexeddb": "^3.6.6",
|
|
57
57
|
"@xyo-network/diviner-payload-model": "^3.6.6",
|
|
58
|
-
"@xyo-network/kernel": "^4.
|
|
59
|
-
"@xyo-network/kernel-model": "^4.
|
|
58
|
+
"@xyo-network/kernel": "^4.2.0-rc.10",
|
|
59
|
+
"@xyo-network/kernel-model": "^4.2.0-rc.10",
|
|
60
60
|
"@xyo-network/module-event-emitter": "^3.6.6",
|
|
61
61
|
"@xyo-network/module-events": "^3.6.6",
|
|
62
62
|
"@xyo-network/module-factory-locator": "^3.6.6",
|
|
63
63
|
"@xyo-network/node-model": "^3.6.6",
|
|
64
|
-
"@xyo-network/os-model": "^4.
|
|
65
|
-
"@xyo-network/os-react-debug": "^4.
|
|
66
|
-
"@xyo-network/os-react-model": "^4.
|
|
67
|
-
"@xyo-network/os-runtime": "^4.
|
|
64
|
+
"@xyo-network/os-model": "^4.2.0-rc.10",
|
|
65
|
+
"@xyo-network/os-react-debug": "^4.2.0-rc.10",
|
|
66
|
+
"@xyo-network/os-react-model": "^4.2.0-rc.10",
|
|
67
|
+
"@xyo-network/os-runtime": "^4.2.0-rc.10",
|
|
68
68
|
"@xyo-network/payload-model": "^3.6.6",
|
|
69
69
|
"@xyo-network/react-archivist": "^4.3.1",
|
|
70
70
|
"@xyo-network/react-card": "^4.3.1",
|
|
@@ -112,5 +112,6 @@
|
|
|
112
112
|
},
|
|
113
113
|
"publishConfig": {
|
|
114
114
|
"access": "public"
|
|
115
|
-
}
|
|
115
|
+
},
|
|
116
|
+
"stableVersion": "4.1.4"
|
|
116
117
|
}
|
package/src/DappPathSwitcher.tsx
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { animated, useTransition } from '@react-spring/web'
|
|
2
2
|
import { ErrorRender } from '@xylabs/react-error'
|
|
3
3
|
import type { ReactNode } from 'react'
|
|
4
|
-
import React from 'react'
|
|
4
|
+
import React, { useMemo } from 'react'
|
|
5
5
|
|
|
6
6
|
export interface PathToComponent<PathNames extends string = string> {
|
|
7
7
|
component: ReactNode
|
|
@@ -23,9 +23,17 @@ export const DappPathSwitcher: React.FC<DappPathSwitcherProps> = ({ activePath,
|
|
|
23
23
|
const possibleZIndex = pathToComponent?.findIndex(item => item.path === activePath)
|
|
24
24
|
const zIndex = possibleZIndex !== -1 && possibleZIndex !== undefined ? possibleZIndex : 1
|
|
25
25
|
|
|
26
|
+
const activeComponent = useMemo(() => {
|
|
27
|
+
const activeIndex = pathToComponent?.findIndex(({ path: componentPath }) => activePath === componentPath)
|
|
28
|
+
const activeItem = pathToComponent && activeIndex !== -1 && activeIndex !== undefined ? pathToComponent[activeIndex] : undefined
|
|
29
|
+
return activeItem
|
|
30
|
+
? activeItem.component
|
|
31
|
+
: <ErrorRender error={new Error(`No component found for path: ${activePath}`)} scope="DappPathSwitcher" />
|
|
32
|
+
}, [activePath, pathToComponent])
|
|
33
|
+
|
|
26
34
|
return (
|
|
27
35
|
<>
|
|
28
|
-
{transitions(
|
|
36
|
+
{transitions(transitionProps => (
|
|
29
37
|
<animated.div
|
|
30
38
|
style={{
|
|
31
39
|
...transitionProps,
|
|
@@ -43,13 +51,7 @@ export const DappPathSwitcher: React.FC<DappPathSwitcherProps> = ({ activePath,
|
|
|
43
51
|
zIndex,
|
|
44
52
|
}}
|
|
45
53
|
>
|
|
46
|
-
{
|
|
47
|
-
const activeIndex = pathToComponent?.findIndex(({ path: componentPath }) => activePath === componentPath)
|
|
48
|
-
const activeItem = pathToComponent && activeIndex !== -1 && activeIndex !== undefined ? pathToComponent[activeIndex] : undefined
|
|
49
|
-
return activeItem
|
|
50
|
-
? activeItem.component
|
|
51
|
-
: <ErrorRender error={new Error(`No component found for path: ${activePath}`)} scope="DappPathSwitcher" />
|
|
52
|
-
})()}
|
|
54
|
+
{activeComponent}
|
|
53
55
|
</animated.div>
|
|
54
56
|
))}
|
|
55
57
|
</>
|
package/src/helpers/index.ts
CHANGED
|
@@ -16,7 +16,9 @@ export const useDappIntentListener = (dappName?: string | null, targetMode = Dap
|
|
|
16
16
|
const listener = ({ payloads }: ArchivistModuleEventData['inserted']) => {
|
|
17
17
|
const filteredPayloads = payloads.filter(isDappIntentWithMeta)
|
|
18
18
|
for (const payload of filteredPayloads) {
|
|
19
|
-
|
|
19
|
+
const allDapps = dappName === null && payload.targetMode === targetMode
|
|
20
|
+
const targetDapps = dappName === payload.targetDappId && payload.targetMode === targetMode
|
|
21
|
+
if (allDapps || targetDapps) {
|
|
20
22
|
setIntentPayload(payload)
|
|
21
23
|
switch (payload.intent) {
|
|
22
24
|
case DappIntentTypes.Close: {
|
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
import { useAsyncEffect } from '@xylabs/react-async-effect'
|
|
2
|
-
import type {
|
|
2
|
+
import type {
|
|
3
|
+
DappIntent, RegisteredDapp, WindowDappNodeSet,
|
|
4
|
+
} from '@xyo-network/os-model'
|
|
3
5
|
import { DappIntentTypes } from '@xyo-network/os-model'
|
|
4
6
|
import { DappContextCreator, RunningDappCache } from '@xyo-network/os-runtime'
|
|
5
7
|
import {
|
|
@@ -7,7 +9,6 @@ import {
|
|
|
7
9
|
} from 'react'
|
|
8
10
|
|
|
9
11
|
import { useXyOsUiContext } from '../../modules/index.ts'
|
|
10
|
-
import { useDappIntentListener } from '../intent/index.ts'
|
|
11
12
|
|
|
12
13
|
/**
|
|
13
14
|
* Creates a dapp node for the provided dapp and name
|
|
@@ -18,6 +19,7 @@ export const useDappContextCreator = (
|
|
|
18
19
|
xnsNodeUrl: string | undefined,
|
|
19
20
|
xnsNetwork: string | undefined,
|
|
20
21
|
dapp?: RegisteredDapp,
|
|
22
|
+
currentIntent?: DappIntent,
|
|
21
23
|
allowedNames?: string[],
|
|
22
24
|
createOnMount = false,
|
|
23
25
|
): WindowDappNodeSet & {
|
|
@@ -26,7 +28,8 @@ export const useDappContextCreator = (
|
|
|
26
28
|
const context = useXyOsUiContext()
|
|
27
29
|
const [windowDappNodeSet, setWindowDappNodeSet] = useState<WindowDappNodeSet>({ context: undefined, dappWallet: undefined })
|
|
28
30
|
const [dappWindowNodeError, setDappWindowNodeError] = useState<Error>()
|
|
29
|
-
|
|
31
|
+
// ensure the dapp is targeted by the current intent
|
|
32
|
+
const targetedDapp = !!(dapp && context && currentIntent?.targetDappId === dapp?.config.name)
|
|
30
33
|
|
|
31
34
|
// Keep a ref of the windowDappNodeSet to use in effect hooks without needing it as a dependency
|
|
32
35
|
const windowDappNodeSetRef = useRef<WindowDappNodeSet>(windowDappNodeSet)
|
|
@@ -35,7 +38,7 @@ export const useDappContextCreator = (
|
|
|
35
38
|
}, [windowDappNodeSet])
|
|
36
39
|
|
|
37
40
|
const createNode = useCallback(async () => {
|
|
38
|
-
if (
|
|
41
|
+
if (targetedDapp) {
|
|
39
42
|
try {
|
|
40
43
|
const windowDappNodeSet = await RunningDappCache.findOrCreate(dapp, context, allowedNames ?? [], xnsNodeUrl, xnsNetwork)
|
|
41
44
|
setWindowDappNodeSet(windowDappNodeSet)
|
|
@@ -43,7 +46,7 @@ export const useDappContextCreator = (
|
|
|
43
46
|
setDappWindowNodeError(e as Error)
|
|
44
47
|
}
|
|
45
48
|
}
|
|
46
|
-
}, [dapp, context, allowedNames])
|
|
49
|
+
}, [dapp, currentIntent, context, allowedNames])
|
|
47
50
|
|
|
48
51
|
useEffect(() => {
|
|
49
52
|
if (createOnMount) {
|
|
@@ -57,24 +60,27 @@ export const useDappContextCreator = (
|
|
|
57
60
|
useAsyncEffect(
|
|
58
61
|
|
|
59
62
|
async () => {
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
63
|
+
// unless the dapp was passed, do nothing
|
|
64
|
+
if (targetedDapp) {
|
|
65
|
+
switch (currentIntent?.intent) {
|
|
66
|
+
case DappIntentTypes.Launch: {
|
|
67
|
+
await createNode()
|
|
68
|
+
break
|
|
69
|
+
}
|
|
70
|
+
case DappIntentTypes.Close: {
|
|
71
|
+
if (windowDappNodeSetRef.current.context) {
|
|
72
|
+
// In case a cached dapp was closed, clear its Dapp Archivist to allow for a fresh start upon next launch
|
|
73
|
+
await DappContextCreator.resetDappArchivist(windowDappNodeSetRef.current.context)
|
|
74
|
+
setWindowDappNodeSet({ context: null, dappWallet: undefined })
|
|
75
|
+
}
|
|
76
|
+
break
|
|
70
77
|
}
|
|
71
|
-
|
|
78
|
+
case DappIntentTypes.Minimize:
|
|
79
|
+
// do nothing
|
|
72
80
|
}
|
|
73
|
-
case DappIntentTypes.Minimize:
|
|
74
|
-
// do nothing
|
|
75
81
|
}
|
|
76
82
|
},
|
|
77
|
-
[createNode,
|
|
83
|
+
[createNode, currentIntent],
|
|
78
84
|
)
|
|
79
85
|
|
|
80
86
|
return {
|
|
@@ -15,7 +15,7 @@ export const useWidgetDapps = (
|
|
|
15
15
|
): [WidgetResults, Error | undefined, UsePromiseState | undefined] => {
|
|
16
16
|
const context = useXyOsUiContext()
|
|
17
17
|
return usePromise(async () => {
|
|
18
|
-
if (registeredDapps && context && widgetTrayLayout) {
|
|
18
|
+
if (registeredDapps && registeredDapps.length > 0 && context && widgetTrayLayout) {
|
|
19
19
|
const caller = new WidgetCaller(context, registeredDapps, widgetTrayLayout)
|
|
20
20
|
return await caller.buildWidgetComponents()
|
|
21
21
|
}
|
|
@@ -2,14 +2,18 @@
|
|
|
2
2
|
import { Circle } from '@mui/icons-material'
|
|
3
3
|
import type { ButtonExProps } from '@xylabs/react-button'
|
|
4
4
|
import { FlexCol } from '@xylabs/react-flexbox'
|
|
5
|
-
import type {
|
|
5
|
+
import type {
|
|
6
|
+
DappIcon,
|
|
7
|
+
DappName,
|
|
8
|
+
} from '@xyo-network/os-model'
|
|
6
9
|
import { DappIntentTypes } from '@xyo-network/os-model'
|
|
7
10
|
import { DappIntentCaller, XyOsMonitor } from '@xyo-network/os-runtime'
|
|
8
11
|
import React, { useRef } from 'react'
|
|
9
12
|
|
|
10
13
|
import { RenderHtml } from '../../../components/index.ts'
|
|
11
|
-
import {
|
|
14
|
+
import { useSendDappIntent } from '../../../hooks/index.ts'
|
|
12
15
|
import { DEFAULT_ICON_SIZE } from '../lib/index.ts'
|
|
16
|
+
import type { DappState } from '../modules/index.ts'
|
|
13
17
|
import { useLaunchPoint } from './hooks/index.ts'
|
|
14
18
|
import { DappLaunchFrame } from './LaunchFrame.js'
|
|
15
19
|
import { decomposeProps } from './lib/index.ts'
|
|
@@ -17,36 +21,35 @@ import {
|
|
|
17
21
|
StyledDappIconButtonEx, StyledDappName, StyledDefaultDappIcon,
|
|
18
22
|
} from './StyledComponents.js'
|
|
19
23
|
|
|
20
|
-
export type
|
|
24
|
+
export type DappIconButtonProps = ButtonExProps & {
|
|
21
25
|
dappIcon?: DappIcon
|
|
22
26
|
dappIconSvg?: string
|
|
23
27
|
dappName?: DappName
|
|
28
|
+
dappState?: DappState
|
|
24
29
|
}
|
|
25
30
|
|
|
26
|
-
export const DappIconButton: React.FC<
|
|
27
|
-
children, dappIcon, dappIconSvg, dappName, ...props
|
|
31
|
+
export const DappIconButton: React.FC<DappIconButtonProps> = ({
|
|
32
|
+
children, dappIcon, dappIconSvg, dappName, dappState, ...props
|
|
28
33
|
}) => {
|
|
29
34
|
const {
|
|
30
35
|
DappIconSize, color, nonSxProps, sx,
|
|
31
36
|
} = decomposeProps(dappIcon, props)
|
|
32
37
|
const iconSize = DEFAULT_ICON_SIZE
|
|
33
38
|
|
|
39
|
+
const { active, minimized } = dappState ?? {}
|
|
40
|
+
|
|
34
41
|
// Functions to invoke Dapp intents
|
|
35
42
|
const sendIntent = useSendDappIntent()
|
|
36
43
|
|
|
37
|
-
// Current state of the dapp based off intents
|
|
38
|
-
const { dappIntentType: intentType } = useDappIntentListener(dappName)
|
|
39
|
-
|
|
40
44
|
// Use the DappIconButton to calculate the launch point for the DappWindow
|
|
41
45
|
const iconButtonRef = useRef<HTMLSpanElement>(null)
|
|
42
46
|
const { left: launchLeft, top: launchTop } = useLaunchPoint(iconButtonRef)
|
|
43
47
|
|
|
44
|
-
const minimized = intentType === DappIntentTypes.Minimize
|
|
45
48
|
const MiddleEllipsisFunction = (str: DappName | undefined) => {
|
|
46
49
|
if (str && str.length > 25) {
|
|
47
|
-
console.log(str)
|
|
48
|
-
console.log(str.slice(0, 15))
|
|
49
|
-
console.log(str.slice(-10, str.length - 10 + str.length))
|
|
50
|
+
// console.log(str)
|
|
51
|
+
// console.log(str.slice(0, 15))
|
|
52
|
+
// console.log(str.slice(-10, str.length - 10 + str.length))
|
|
50
53
|
return str.slice(0, 15) + '...' + str.slice(-7, str.length - 7 + str.length)
|
|
51
54
|
}
|
|
52
55
|
return str
|
|
@@ -59,7 +62,7 @@ export const DappIconButton: React.FC<DappProps> = ({
|
|
|
59
62
|
|
|
60
63
|
return (
|
|
61
64
|
<FlexCol alignItems="stretch" justifyContent="stretch">
|
|
62
|
-
<DappLaunchFrame id="dapp-launch-frame" open={
|
|
65
|
+
<DappLaunchFrame id="dapp-launch-frame" open={!!active} launchLeft={launchLeft} launchTop={launchTop}>
|
|
63
66
|
{children}
|
|
64
67
|
</DappLaunchFrame>
|
|
65
68
|
<span
|
|
@@ -1,22 +1,50 @@
|
|
|
1
|
+
import type { DappIntent } from '@xyo-network/os-model'
|
|
1
2
|
import type { RegisteredReactDappSet } from '@xyo-network/os-react-model'
|
|
2
|
-
import React from 'react'
|
|
3
|
+
import React, { memo, useMemo } from 'react'
|
|
3
4
|
|
|
5
|
+
import { useDappContextCreator } from '../../hooks/index.ts'
|
|
4
6
|
import { DappIconButton } from './Button/index.ts'
|
|
5
|
-
import { DappWindow } from './modules/
|
|
7
|
+
import { DappWindow, deriveDappState } from './modules/index.ts'
|
|
6
8
|
|
|
7
9
|
export interface DappContainerProps {
|
|
10
|
+
currentIntent?: DappIntent
|
|
8
11
|
dappSet: RegisteredReactDappSet
|
|
9
12
|
xnsNetwork: string | undefined
|
|
10
13
|
xnsNodeUrl: string | undefined
|
|
11
14
|
}
|
|
12
15
|
|
|
13
16
|
export const DappContainer: React.FC<DappContainerProps> = ({
|
|
14
|
-
dappSet, xnsNodeUrl, xnsNetwork,
|
|
17
|
+
currentIntent, dappSet, xnsNodeUrl, xnsNetwork,
|
|
15
18
|
}) => {
|
|
16
19
|
const { dapp, dappIcon } = dappSet
|
|
20
|
+
|
|
21
|
+
const {
|
|
22
|
+
dappWallet, context, nodeCreateError,
|
|
23
|
+
} = useDappContextCreator(xnsNodeUrl, xnsNetwork, dapp, currentIntent)
|
|
24
|
+
|
|
25
|
+
const dappState = useMemo(() => {
|
|
26
|
+
if (currentIntent?.targetDappId === dapp.config.name) {
|
|
27
|
+
return deriveDappState(currentIntent)
|
|
28
|
+
}
|
|
29
|
+
}, [currentIntent, dapp])
|
|
30
|
+
|
|
17
31
|
return (
|
|
18
|
-
<DappIconButton
|
|
19
|
-
|
|
32
|
+
<DappIconButton
|
|
33
|
+
dappIcon={dappIcon}
|
|
34
|
+
dappIconSvg={dapp.params.iconSvg}
|
|
35
|
+
dappName={dapp?.config.name}
|
|
36
|
+
dappState={dappState}
|
|
37
|
+
>
|
|
38
|
+
<DappWindow
|
|
39
|
+
context={context}
|
|
40
|
+
dappSet={dappSet}
|
|
41
|
+
dappState={dappState}
|
|
42
|
+
dappWallet={dappWallet}
|
|
43
|
+
intent={currentIntent}
|
|
44
|
+
nodeCreateError={nodeCreateError}
|
|
45
|
+
/>
|
|
20
46
|
</DappIconButton>
|
|
21
47
|
)
|
|
22
48
|
}
|
|
49
|
+
|
|
50
|
+
export const DappContainerMemo = memo(DappContainer)
|
|
@@ -1,17 +1,17 @@
|
|
|
1
|
-
/* eslint-disable @eslint-react/no-array-index-key */
|
|
2
1
|
import {
|
|
3
2
|
Divider, Fade, styled,
|
|
4
3
|
} from '@mui/material'
|
|
5
|
-
import type { InstallationType } from '@xyo-network/os-model'
|
|
4
|
+
import type { DappIntent, InstallationType } from '@xyo-network/os-model'
|
|
6
5
|
import type { RegisteredReactDappSet } from '@xyo-network/os-react-model'
|
|
7
6
|
import React, { useMemo } from 'react'
|
|
8
7
|
|
|
9
8
|
import { DappInstallTypeFilters } from '../../../utils/index.ts'
|
|
10
|
-
import {
|
|
9
|
+
import { DappContainerMemo } from '../Container.tsx'
|
|
11
10
|
import { DividerChip } from './DividerChip.js'
|
|
12
11
|
|
|
13
12
|
export interface DappsRowProps {
|
|
14
13
|
chipLabel: string
|
|
14
|
+
currentIntent?: DappIntent
|
|
15
15
|
installType: InstallationType
|
|
16
16
|
registeredDappsSet?: RegisteredReactDappSet[]
|
|
17
17
|
xnsNetwork: string | undefined
|
|
@@ -19,9 +19,10 @@ export interface DappsRowProps {
|
|
|
19
19
|
}
|
|
20
20
|
|
|
21
21
|
export const DappsRow: React.FC<DappsRowProps> = ({
|
|
22
|
-
chipLabel, installType, registeredDappsSet, xnsNetwork, xnsNodeUrl,
|
|
22
|
+
chipLabel, currentIntent, installType, registeredDappsSet, xnsNetwork, xnsNodeUrl,
|
|
23
23
|
}) => {
|
|
24
24
|
const filteredRegisteredDappSets = useMemo(() => DappInstallTypeFilters[installType](registeredDappsSet), [installType, registeredDappsSet])
|
|
25
|
+
|
|
25
26
|
return (
|
|
26
27
|
<>
|
|
27
28
|
<Divider
|
|
@@ -39,7 +40,15 @@ export const DappsRow: React.FC<DappsRowProps> = ({
|
|
|
39
40
|
<Fade in={!!filteredRegisteredDappSets?.length} timeout={1000}>
|
|
40
41
|
<StyledGridContainer>
|
|
41
42
|
{filteredRegisteredDappSets?.map(
|
|
42
|
-
|
|
43
|
+
dappSet => (
|
|
44
|
+
<DappContainerMemo
|
|
45
|
+
currentIntent={currentIntent}
|
|
46
|
+
key={dappSet.dapp.config.name}
|
|
47
|
+
dappSet={dappSet as RegisteredReactDappSet}
|
|
48
|
+
xnsNodeUrl={xnsNodeUrl}
|
|
49
|
+
xnsNetwork={xnsNetwork}
|
|
50
|
+
/>
|
|
51
|
+
),
|
|
43
52
|
)}
|
|
44
53
|
</StyledGridContainer>
|
|
45
54
|
</Fade>
|