@xyo-network/react-module 2.38.17
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/LICENSE +165 -0
- package/README.md +70 -0
- package/dist/cjs/ModuleRenderProps.d.ts +5 -0
- package/dist/cjs/ModuleRenderProps.d.ts.map +1 -0
- package/dist/cjs/ModuleRenderProps.js +3 -0
- package/dist/cjs/ModuleRenderProps.js.map +1 -0
- package/dist/cjs/components/ArchivistCard.d.ts +6 -0
- package/dist/cjs/components/ArchivistCard.d.ts.map +1 -0
- package/dist/cjs/components/ArchivistCard.js +15 -0
- package/dist/cjs/components/ArchivistCard.js.map +1 -0
- package/dist/cjs/components/ArchivistCardHeader.d.ts +6 -0
- package/dist/cjs/components/ArchivistCardHeader.d.ts.map +1 -0
- package/dist/cjs/components/ArchivistCardHeader.js +12 -0
- package/dist/cjs/components/ArchivistCardHeader.js.map +1 -0
- package/dist/cjs/components/ArchivistContent.d.ts +6 -0
- package/dist/cjs/components/ArchivistContent.d.ts.map +1 -0
- package/dist/cjs/components/ArchivistContent.js +32 -0
- package/dist/cjs/components/ArchivistContent.js.map +1 -0
- package/dist/cjs/components/Card.d.ts +5 -0
- package/dist/cjs/components/Card.d.ts.map +1 -0
- package/dist/cjs/components/Card.js +15 -0
- package/dist/cjs/components/Card.js.map +1 -0
- package/dist/cjs/components/CardActions.d.ts +5 -0
- package/dist/cjs/components/CardActions.d.ts.map +1 -0
- package/dist/cjs/components/CardActions.js +15 -0
- package/dist/cjs/components/CardActions.js.map +1 -0
- package/dist/cjs/components/CardContent.d.ts +5 -0
- package/dist/cjs/components/CardContent.d.ts.map +1 -0
- package/dist/cjs/components/CardContent.js +29 -0
- package/dist/cjs/components/CardContent.js.map +1 -0
- package/dist/cjs/components/CardHeader.d.ts +5 -0
- package/dist/cjs/components/CardHeader.d.ts.map +1 -0
- package/dist/cjs/components/CardHeader.js +15 -0
- package/dist/cjs/components/CardHeader.js.map +1 -0
- package/dist/cjs/components/DetailsBox.d.ts +5 -0
- package/dist/cjs/components/DetailsBox.d.ts.map +1 -0
- package/dist/cjs/components/DetailsBox.js +16 -0
- package/dist/cjs/components/DetailsBox.js.map +1 -0
- package/dist/cjs/components/TableCell.d.ts +5 -0
- package/dist/cjs/components/TableCell.d.ts.map +1 -0
- package/dist/cjs/components/TableCell.js +16 -0
- package/dist/cjs/components/TableCell.js.map +1 -0
- package/dist/cjs/components/index.d.ts +6 -0
- package/dist/cjs/components/index.d.ts.map +1 -0
- package/dist/cjs/components/index.js +9 -0
- package/dist/cjs/components/index.js.map +1 -0
- package/dist/cjs/index.d.ts +3 -0
- package/dist/cjs/index.d.ts.map +1 -0
- package/dist/cjs/index.js +6 -0
- package/dist/cjs/index.js.map +1 -0
- package/dist/docs.json +869 -0
- package/dist/esm/ModuleRenderProps.d.ts +5 -0
- package/dist/esm/ModuleRenderProps.d.ts.map +1 -0
- package/dist/esm/ModuleRenderProps.js +2 -0
- package/dist/esm/ModuleRenderProps.js.map +1 -0
- package/dist/esm/components/ArchivistCard.d.ts +6 -0
- package/dist/esm/components/ArchivistCard.d.ts.map +1 -0
- package/dist/esm/components/ArchivistCard.js +9 -0
- package/dist/esm/components/ArchivistCard.js.map +1 -0
- package/dist/esm/components/ArchivistCardHeader.d.ts +6 -0
- package/dist/esm/components/ArchivistCardHeader.d.ts.map +1 -0
- package/dist/esm/components/ArchivistCardHeader.js +6 -0
- package/dist/esm/components/ArchivistCardHeader.js.map +1 -0
- package/dist/esm/components/ArchivistContent.d.ts +6 -0
- package/dist/esm/components/ArchivistContent.d.ts.map +1 -0
- package/dist/esm/components/ArchivistContent.js +25 -0
- package/dist/esm/components/ArchivistContent.js.map +1 -0
- package/dist/esm/components/Card.d.ts +5 -0
- package/dist/esm/components/Card.d.ts.map +1 -0
- package/dist/esm/components/Card.js +9 -0
- package/dist/esm/components/Card.js.map +1 -0
- package/dist/esm/components/CardActions.d.ts +5 -0
- package/dist/esm/components/CardActions.d.ts.map +1 -0
- package/dist/esm/components/CardActions.js +9 -0
- package/dist/esm/components/CardActions.js.map +1 -0
- package/dist/esm/components/CardContent.d.ts +5 -0
- package/dist/esm/components/CardContent.d.ts.map +1 -0
- package/dist/esm/components/CardContent.js +23 -0
- package/dist/esm/components/CardContent.js.map +1 -0
- package/dist/esm/components/CardHeader.d.ts +5 -0
- package/dist/esm/components/CardHeader.d.ts.map +1 -0
- package/dist/esm/components/CardHeader.js +9 -0
- package/dist/esm/components/CardHeader.js.map +1 -0
- package/dist/esm/components/DetailsBox.d.ts +5 -0
- package/dist/esm/components/DetailsBox.d.ts.map +1 -0
- package/dist/esm/components/DetailsBox.js +10 -0
- package/dist/esm/components/DetailsBox.js.map +1 -0
- package/dist/esm/components/TableCell.d.ts +5 -0
- package/dist/esm/components/TableCell.d.ts.map +1 -0
- package/dist/esm/components/TableCell.js +10 -0
- package/dist/esm/components/TableCell.js.map +1 -0
- package/dist/esm/components/index.d.ts +6 -0
- package/dist/esm/components/index.d.ts.map +1 -0
- package/dist/esm/components/index.js +6 -0
- package/dist/esm/components/index.js.map +1 -0
- package/dist/esm/index.d.ts +3 -0
- package/dist/esm/index.d.ts.map +1 -0
- package/dist/esm/index.js +3 -0
- package/dist/esm/index.js.map +1 -0
- package/package.json +83 -0
- package/src/ModuleRenderProps.tsx +5 -0
- package/src/components/ArchivistCard.stories.tsx +54 -0
- package/src/components/ArchivistCard.tsx +17 -0
- package/src/components/ArchivistCardHeader.tsx +9 -0
- package/src/components/ArchivistContent.tsx +37 -0
- package/src/components/Card.stories.tsx +49 -0
- package/src/components/Card.tsx +16 -0
- package/src/components/CardActions.tsx +15 -0
- package/src/components/CardContent.tsx +35 -0
- package/src/components/CardHeader.tsx +17 -0
- package/src/components/DetailsBox.tsx +15 -0
- package/src/components/TableCell.tsx +15 -0
- package/src/components/index.ts +5 -0
- package/src/index.ts +2 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ModuleRenderProps.d.ts","sourceRoot":"","sources":["../../src/ModuleRenderProps.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAA;AAE5C,MAAM,WAAW,iBAAiB,CAAC,CAAC,SAAS,MAAM,GAAG,MAAM;IAC1D,MAAM,CAAC,EAAE,CAAC,CAAA;CACX"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ModuleRenderProps.js","sourceRoot":"","sources":["../../src/ModuleRenderProps.tsx"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
/// <reference types="react" />
|
|
2
|
+
import { CardProps } from '@mui/material';
|
|
3
|
+
import { PayloadArchivist } from '@xyo-network/archivist';
|
|
4
|
+
import { ModuleRenderProps } from '../ModuleRenderProps';
|
|
5
|
+
export declare const ArchivistCard: React.FC<CardProps & ModuleRenderProps<PayloadArchivist>>;
|
|
6
|
+
//# sourceMappingURL=ArchivistCard.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ArchivistCard.d.ts","sourceRoot":"","sources":["../../../src/components/ArchivistCard.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAQ,SAAS,EAAE,MAAM,eAAe,CAAA;AAC/C,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAA;AAEzD,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAA;AAKxD,eAAO,MAAM,aAAa,EAAE,KAAK,CAAC,EAAE,CAAC,SAAS,GAAG,iBAAiB,CAAC,gBAAgB,CAAC,CAQnF,CAAA"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { Card } from '@mui/material';
|
|
3
|
+
import { ArchivistCardHeader } from './ArchivistCardHeader';
|
|
4
|
+
import { ArchivistCardContent } from './ArchivistContent';
|
|
5
|
+
import { ModuleCardActions } from './CardActions';
|
|
6
|
+
export const ArchivistCard = ({ module, ...props }) => {
|
|
7
|
+
return (_jsxs(Card, { ...props, children: [_jsx(ArchivistCardHeader, { module: module }), _jsx(ArchivistCardContent, { module: module }), _jsx(ModuleCardActions, { module: module })] }));
|
|
8
|
+
};
|
|
9
|
+
//# sourceMappingURL=ArchivistCard.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ArchivistCard.js","sourceRoot":"","sources":["../../../src/components/ArchivistCard.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,IAAI,EAAa,MAAM,eAAe,CAAA;AAI/C,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAA;AAC3D,OAAO,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAA;AACzD,OAAO,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAA;AAEjD,MAAM,CAAC,MAAM,aAAa,GAA8D,CAAC,EAAE,MAAM,EAAE,GAAG,KAAK,EAAE,EAAE,EAAE;IAC/G,OAAO,CACL,MAAC,IAAI,OAAK,KAAK,aACb,KAAC,mBAAmB,IAAC,MAAM,EAAE,MAAM,GAAI,EACvC,KAAC,oBAAoB,IAAC,MAAM,EAAE,MAAM,GAAI,EACxC,KAAC,iBAAiB,IAAC,MAAM,EAAE,MAAM,GAAI,IAChC,CACR,CAAA;AACH,CAAC,CAAA"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
/// <reference types="react" />
|
|
2
|
+
import { CardHeaderProps } from '@mui/material';
|
|
3
|
+
import { PayloadArchivist } from '@xyo-network/archivist';
|
|
4
|
+
import { ModuleRenderProps } from '../ModuleRenderProps';
|
|
5
|
+
export declare const ArchivistCardHeader: React.FC<ModuleRenderProps<PayloadArchivist> & CardHeaderProps>;
|
|
6
|
+
//# sourceMappingURL=ArchivistCardHeader.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ArchivistCardHeader.d.ts","sourceRoot":"","sources":["../../../src/components/ArchivistCardHeader.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAA;AAC/C,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAA;AAEzD,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAA;AAGxD,eAAO,MAAM,mBAAmB,EAAE,KAAK,CAAC,EAAE,CAAC,iBAAiB,CAAC,gBAAgB,CAAC,GAAG,eAAe,CAE/F,CAAA"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import { ModuleCardHeader } from './CardHeader';
|
|
3
|
+
export const ArchivistCardHeader = ({ title, module, ...props }) => {
|
|
4
|
+
return _jsx(ModuleCardHeader, { module: module, title: title ?? 'Archivist', ...props });
|
|
5
|
+
};
|
|
6
|
+
//# sourceMappingURL=ArchivistCardHeader.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ArchivistCardHeader.js","sourceRoot":"","sources":["../../../src/components/ArchivistCardHeader.tsx"],"names":[],"mappings":";AAIA,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAA;AAE/C,MAAM,CAAC,MAAM,mBAAmB,GAAoE,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,KAAK,EAAE,EAAE,EAAE;IAClI,OAAO,KAAC,gBAAgB,IAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,IAAI,WAAW,KAAM,KAAK,GAAI,CAAA;AACrF,CAAC,CAAA"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
/// <reference types="react" />
|
|
2
|
+
import { CardContentProps } from '@mui/material';
|
|
3
|
+
import { PayloadArchivist } from '@xyo-network/archivist';
|
|
4
|
+
import { ModuleRenderProps } from '../ModuleRenderProps';
|
|
5
|
+
export declare const ArchivistCardContent: React.FC<ModuleRenderProps<PayloadArchivist> & CardContentProps>;
|
|
6
|
+
//# sourceMappingURL=ArchivistContent.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ArchivistContent.d.ts","sourceRoot":"","sources":["../../../src/components/ArchivistContent.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,gBAAgB,EAAc,MAAM,eAAe,CAAA;AAI5D,OAAO,EAAE,gBAAgB,EAAsB,MAAM,wBAAwB,CAAA;AAI7E,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAA;AAGxD,eAAO,MAAM,oBAAoB,EAAE,KAAK,CAAC,EAAE,CAAC,iBAAiB,CAAC,gBAAgB,CAAC,GAAG,gBAAgB,CAyBjG,CAAA"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { Typography } from '@mui/material';
|
|
3
|
+
import { useAsyncEffect } from '@xylabs/react-shared';
|
|
4
|
+
import { EthAddress } from '@xylabs/sdk-js';
|
|
5
|
+
import { EthAccountBox } from '@xylabs/sdk-react';
|
|
6
|
+
import { XyoModuleWrapper } from '@xyo-network/module';
|
|
7
|
+
import { useState } from 'react';
|
|
8
|
+
import { ModuleCardContent } from './CardContent';
|
|
9
|
+
export const ArchivistCardContent = ({ children, module, ...props }) => {
|
|
10
|
+
const [config, setConfig] = useState();
|
|
11
|
+
useAsyncEffect(
|
|
12
|
+
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
13
|
+
async (mounted) => {
|
|
14
|
+
const wrapper = module ? new XyoModuleWrapper(module) : undefined;
|
|
15
|
+
const payloads = await wrapper?.discover();
|
|
16
|
+
console.log(`Payloads: ${JSON.stringify(payloads, null, 2)}`);
|
|
17
|
+
if (mounted()) {
|
|
18
|
+
setConfig(payloads?.[0]);
|
|
19
|
+
}
|
|
20
|
+
}, [module]);
|
|
21
|
+
return (_jsxs(ModuleCardContent, { module: module, ...props, children: [_jsx(Typography, { children: "Parents" }), config?.parents?.commit?.map((address) => {
|
|
22
|
+
return _jsx(EthAccountBox, { address: EthAddress.fromString(address) }, address);
|
|
23
|
+
}), children] }));
|
|
24
|
+
};
|
|
25
|
+
//# sourceMappingURL=ArchivistContent.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ArchivistContent.js","sourceRoot":"","sources":["../../../src/components/ArchivistContent.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAoB,UAAU,EAAE,MAAM,eAAe,CAAA;AAC5D,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAA;AACrD,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAA;AAC3C,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAA;AAEjD,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAA;AACtD,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAA;AAGhC,OAAO,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAA;AAEjD,MAAM,CAAC,MAAM,oBAAoB,GAAqE,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,KAAK,EAAE,EAAE,EAAE;IACvI,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,QAAQ,EAAsB,CAAA;IAE1D,cAAc;IACZ,uDAAuD;IACvD,KAAK,EAAE,OAAO,EAAE,EAAE;QAChB,MAAM,OAAO,GAAG,MAAM,CAAC,CAAC,CAAC,IAAI,gBAAgB,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS,CAAA;QACjE,MAAM,QAAQ,GAAG,MAAM,OAAO,EAAE,QAAQ,EAAE,CAAA;QAC1C,OAAO,CAAC,GAAG,CAAC,aAAa,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC,CAAA;QAC7D,IAAI,OAAO,EAAE,EAAE;YACb,SAAS,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,CAAC,CAAA;SACzB;IACH,CAAC,EACD,CAAC,MAAM,CAAC,CACT,CAAA;IAED,OAAO,CACL,MAAC,iBAAiB,IAAC,MAAM,EAAE,MAAM,KAAM,KAAK,aAC1C,KAAC,UAAU,0BAAqB,EAC/B,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE;gBACxC,OAAO,KAAC,aAAa,IAAe,OAAO,EAAE,UAAU,CAAC,UAAU,CAAC,OAAO,CAAC,IAAhD,OAAO,CAA6C,CAAA;YACjF,CAAC,CAAC,EACD,QAAQ,IACS,CACrB,CAAA;AACH,CAAC,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Card.d.ts","sourceRoot":"","sources":["../../../src/components/Card.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAQ,SAAS,EAAE,MAAM,eAAe,CAAA;AAE/C,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAA;AAKxD,eAAO,MAAM,UAAU,EAAE,KAAK,CAAC,EAAE,CAAC,SAAS,GAAG,iBAAiB,CAQ9D,CAAA"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { Card } from '@mui/material';
|
|
3
|
+
import { ModuleCardActions } from './CardActions';
|
|
4
|
+
import { ModuleCardContent } from './CardContent';
|
|
5
|
+
import { ModuleCardHeader } from './CardHeader';
|
|
6
|
+
export const ModuleCard = ({ module, ...props }) => {
|
|
7
|
+
return (_jsxs(Card, { ...props, children: [_jsx(ModuleCardHeader, { module: module }), _jsx(ModuleCardContent, { module: module }), _jsx(ModuleCardActions, { module: module })] }));
|
|
8
|
+
};
|
|
9
|
+
//# sourceMappingURL=Card.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Card.js","sourceRoot":"","sources":["../../../src/components/Card.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,IAAI,EAAa,MAAM,eAAe,CAAA;AAG/C,OAAO,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAA;AACjD,OAAO,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAA;AACjD,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAA;AAE/C,MAAM,CAAC,MAAM,UAAU,GAA4C,CAAC,EAAE,MAAM,EAAE,GAAG,KAAK,EAAE,EAAE,EAAE;IAC1F,OAAO,CACL,MAAC,IAAI,OAAK,KAAK,aACb,KAAC,gBAAgB,IAAC,MAAM,EAAE,MAAM,GAAI,EACpC,KAAC,iBAAiB,IAAC,MAAM,EAAE,MAAM,GAAI,EACrC,KAAC,iBAAiB,IAAC,MAAM,EAAE,MAAM,GAAI,IAChC,CACR,CAAA;AACH,CAAC,CAAA"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
/// <reference types="react" />
|
|
2
|
+
import { CardActionsProps } from '@mui/material';
|
|
3
|
+
import { ModuleRenderProps } from '../ModuleRenderProps';
|
|
4
|
+
export declare const ModuleCardActions: React.FC<CardActionsProps & ModuleRenderProps>;
|
|
5
|
+
//# sourceMappingURL=CardActions.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CardActions.d.ts","sourceRoot":"","sources":["../../../src/components/CardActions.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAe,gBAAgB,EAAE,MAAM,eAAe,CAAA;AAI7D,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAA;AAExD,eAAO,MAAM,iBAAiB,EAAE,KAAK,CAAC,EAAE,CAAC,gBAAgB,GAAG,iBAAiB,CAQ5E,CAAA"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { CardActions } from '@mui/material';
|
|
3
|
+
import { ButtonEx } from '@xylabs/react-button';
|
|
4
|
+
import { XyoModuleWrapper } from '@xyo-network/module';
|
|
5
|
+
export const ModuleCardActions = ({ children, module, ...props }) => {
|
|
6
|
+
const wrapper = module ? new XyoModuleWrapper(module) : undefined;
|
|
7
|
+
return (_jsxs(CardActions, { ...props, children: [_jsx(ButtonEx, { onClick: () => wrapper?.discover(), children: "Discover" }), children] }));
|
|
8
|
+
};
|
|
9
|
+
//# sourceMappingURL=CardActions.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CardActions.js","sourceRoot":"","sources":["../../../src/components/CardActions.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,WAAW,EAAoB,MAAM,eAAe,CAAA;AAC7D,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAA;AAC/C,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAA;AAItD,MAAM,CAAC,MAAM,iBAAiB,GAAmD,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,KAAK,EAAE,EAAE,EAAE;IAClH,MAAM,OAAO,GAAG,MAAM,CAAC,CAAC,CAAC,IAAI,gBAAgB,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS,CAAA;IACjE,OAAO,CACL,MAAC,WAAW,OAAK,KAAK,aACpB,KAAC,QAAQ,IAAC,OAAO,EAAE,GAAG,EAAE,CAAC,OAAO,EAAE,QAAQ,EAAE,yBAAqB,EAChE,QAAQ,IACG,CACf,CAAA;AACH,CAAC,CAAA"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
/// <reference types="react" />
|
|
2
|
+
import { CardContentProps } from '@mui/material';
|
|
3
|
+
import { ModuleRenderProps } from '../ModuleRenderProps';
|
|
4
|
+
export declare const ModuleCardContent: React.FC<ModuleRenderProps & CardContentProps>;
|
|
5
|
+
//# sourceMappingURL=CardContent.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CardContent.d.ts","sourceRoot":"","sources":["../../../src/components/CardContent.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAe,gBAAgB,EAAc,MAAM,eAAe,CAAA;AAOzE,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAA;AAExD,eAAO,MAAM,iBAAiB,EAAE,KAAK,CAAC,EAAE,CAAC,iBAAiB,GAAG,gBAAgB,CAyB5E,CAAA"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { CardContent, Typography } from '@mui/material';
|
|
3
|
+
import { useAsyncEffect } from '@xylabs/react-shared';
|
|
4
|
+
import { EthAddress } from '@xylabs/sdk-js';
|
|
5
|
+
import { EthAccountBox } from '@xylabs/sdk-react';
|
|
6
|
+
import { XyoModuleWrapper } from '@xyo-network/module';
|
|
7
|
+
import { useState } from 'react';
|
|
8
|
+
export const ModuleCardContent = ({ children, module, ...props }) => {
|
|
9
|
+
const [config, setConfig] = useState();
|
|
10
|
+
const account = module?.address ? EthAddress.fromString(module?.address) : undefined;
|
|
11
|
+
useAsyncEffect(
|
|
12
|
+
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
13
|
+
async (mounted) => {
|
|
14
|
+
const wrapper = module ? new XyoModuleWrapper(module) : undefined;
|
|
15
|
+
const payloads = await wrapper?.discover();
|
|
16
|
+
console.log(`Payloads: ${JSON.stringify(payloads, null, 2)}`);
|
|
17
|
+
if (mounted()) {
|
|
18
|
+
setConfig(payloads?.[0]);
|
|
19
|
+
}
|
|
20
|
+
}, [module]);
|
|
21
|
+
return (_jsxs(CardContent, { ...props, children: [_jsx(EthAccountBox, { address: account }), children, _jsx(Typography, { variant: "subtitle2", children: config?.schema })] }));
|
|
22
|
+
};
|
|
23
|
+
//# sourceMappingURL=CardContent.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CardContent.js","sourceRoot":"","sources":["../../../src/components/CardContent.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,WAAW,EAAoB,UAAU,EAAE,MAAM,eAAe,CAAA;AACzE,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAA;AACrD,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAA;AAC3C,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAA;AACjD,OAAO,EAAmB,gBAAgB,EAAE,MAAM,qBAAqB,CAAA;AACvE,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAA;AAIhC,MAAM,CAAC,MAAM,iBAAiB,GAAmD,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,KAAK,EAAE,EAAE,EAAE;IAClH,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,QAAQ,EAAmB,CAAA;IAEvD,MAAM,OAAO,GAAG,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC,UAAU,CAAC,UAAU,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS,CAAA;IAEpF,cAAc;IACZ,uDAAuD;IACvD,KAAK,EAAE,OAAO,EAAE,EAAE;QAChB,MAAM,OAAO,GAAG,MAAM,CAAC,CAAC,CAAC,IAAI,gBAAgB,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS,CAAA;QACjE,MAAM,QAAQ,GAAG,MAAM,OAAO,EAAE,QAAQ,EAAE,CAAA;QAC1C,OAAO,CAAC,GAAG,CAAC,aAAa,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC,CAAA;QAC7D,IAAI,OAAO,EAAE,EAAE;YACb,SAAS,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,CAAC,CAAA;SACzB;IACH,CAAC,EACD,CAAC,MAAM,CAAC,CACT,CAAA;IAED,OAAO,CACL,MAAC,WAAW,OAAK,KAAK,aACpB,KAAC,aAAa,IAAC,OAAO,EAAE,OAAO,GAAI,EAClC,QAAQ,EACT,KAAC,UAAU,IAAC,OAAO,EAAC,WAAW,YAAE,MAAM,EAAE,MAAM,GAAc,IACjD,CACf,CAAA;AACH,CAAC,CAAA"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
/// <reference types="react" />
|
|
2
|
+
import { CardHeaderProps } from '@mui/material';
|
|
3
|
+
import { ModuleRenderProps } from '../ModuleRenderProps';
|
|
4
|
+
export declare const ModuleCardHeader: React.FC<ModuleRenderProps & CardHeaderProps>;
|
|
5
|
+
//# sourceMappingURL=CardHeader.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CardHeader.d.ts","sourceRoot":"","sources":["../../../src/components/CardHeader.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAc,eAAe,EAAE,MAAM,eAAe,CAAA;AAI3D,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAA;AAExD,eAAO,MAAM,gBAAgB,EAAE,KAAK,CAAC,EAAE,CAAC,iBAAiB,GAAG,eAAe,CAU1E,CAAA"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import { CardHeader } from '@mui/material';
|
|
3
|
+
import { Identicon } from '@xylabs/react-identicon';
|
|
4
|
+
import { XyoModuleWrapper } from '@xyo-network/module';
|
|
5
|
+
export const ModuleCardHeader = ({ subheader, avatar, title, module, ...props }) => {
|
|
6
|
+
const wrapper = module ? new XyoModuleWrapper(module) : undefined;
|
|
7
|
+
return (_jsx(CardHeader, { title: title ?? 'Module', subheader: subheader ?? wrapper?.address, avatar: avatar ?? _jsx(Identicon, { size: 24, value: wrapper?.address }), ...props }));
|
|
8
|
+
};
|
|
9
|
+
//# sourceMappingURL=CardHeader.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CardHeader.js","sourceRoot":"","sources":["../../../src/components/CardHeader.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,EAAmB,MAAM,eAAe,CAAA;AAC3D,OAAO,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAA;AACnD,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAA;AAItD,MAAM,CAAC,MAAM,gBAAgB,GAAkD,CAAC,EAAE,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,KAAK,EAAE,EAAE,EAAE;IAChI,MAAM,OAAO,GAAG,MAAM,CAAC,CAAC,CAAC,IAAI,gBAAgB,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS,CAAA;IACjE,OAAO,CACL,KAAC,UAAU,IACT,KAAK,EAAE,KAAK,IAAI,QAAQ,EACxB,SAAS,EAAE,SAAS,IAAI,OAAO,EAAE,OAAO,EACxC,MAAM,EAAE,MAAM,IAAI,KAAC,SAAS,IAAC,IAAI,EAAE,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,GAAI,KAC9D,KAAK,GACT,CACH,CAAA;AACH,CAAC,CAAA"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
/// <reference types="react" />
|
|
2
|
+
import { FlexBoxProps } from '@xylabs/react-flexbox';
|
|
3
|
+
import { ModuleRenderProps } from '../ModuleRenderProps';
|
|
4
|
+
export declare const ModuleDetailsBox: React.FC<ModuleRenderProps & FlexBoxProps>;
|
|
5
|
+
//# sourceMappingURL=DetailsBox.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DetailsBox.d.ts","sourceRoot":"","sources":["../../../src/components/DetailsBox.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,YAAY,EAAW,MAAM,uBAAuB,CAAA;AAK7D,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAA;AAExD,eAAO,MAAM,gBAAgB,EAAE,KAAK,CAAC,EAAE,CAAC,iBAAiB,GAAG,YAAY,CAOvE,CAAA"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import { FlexCol } from '@xylabs/react-flexbox';
|
|
3
|
+
import { EthAddress } from '@xylabs/sdk-js';
|
|
4
|
+
import { EthAccountBox } from '@xylabs/sdk-react';
|
|
5
|
+
import { XyoModuleWrapper } from '@xyo-network/module';
|
|
6
|
+
export const ModuleDetailsBox = ({ module, ...props }) => {
|
|
7
|
+
const wrapper = module ? new XyoModuleWrapper(module) : undefined;
|
|
8
|
+
return (_jsx(FlexCol, { ...props, children: _jsx(EthAccountBox, { address: EthAddress.fromString(wrapper?.address) }) }));
|
|
9
|
+
};
|
|
10
|
+
//# sourceMappingURL=DetailsBox.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DetailsBox.js","sourceRoot":"","sources":["../../../src/components/DetailsBox.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAgB,OAAO,EAAE,MAAM,uBAAuB,CAAA;AAC7D,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAA;AAC3C,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAA;AACjD,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAA;AAItD,MAAM,CAAC,MAAM,gBAAgB,GAA+C,CAAC,EAAE,MAAM,EAAE,GAAG,KAAK,EAAE,EAAE,EAAE;IACnG,MAAM,OAAO,GAAG,MAAM,CAAC,CAAC,CAAC,IAAI,gBAAgB,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS,CAAA;IACjE,OAAO,CACL,KAAC,OAAO,OAAK,KAAK,YAChB,KAAC,aAAa,IAAC,OAAO,EAAE,UAAU,CAAC,UAAU,CAAC,OAAO,EAAE,OAAO,CAAC,GAAI,GAC3D,CACX,CAAA;AACH,CAAC,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TableCell.d.ts","sourceRoot":"","sources":["../../../src/components/TableCell.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAa,cAAc,EAAE,MAAM,eAAe,CAAA;AAKzD,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAA;AAExD,eAAO,MAAM,eAAe,EAAE,KAAK,CAAC,EAAE,CAAC,iBAAiB,GAAG,cAAc,CAOxE,CAAA"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import { TableCell } from '@mui/material';
|
|
3
|
+
import { EthAddress } from '@xylabs/sdk-js';
|
|
4
|
+
import { EthAccountBox } from '@xylabs/sdk-react';
|
|
5
|
+
import { XyoModuleWrapper } from '@xyo-network/module';
|
|
6
|
+
export const ModuleTableCell = ({ module, ...props }) => {
|
|
7
|
+
const wrapper = module ? new XyoModuleWrapper(module) : undefined;
|
|
8
|
+
return (_jsx(TableCell, { ...props, children: _jsx(EthAccountBox, { address: EthAddress.fromString(wrapper?.address) }) }));
|
|
9
|
+
};
|
|
10
|
+
//# sourceMappingURL=TableCell.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TableCell.js","sourceRoot":"","sources":["../../../src/components/TableCell.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAkB,MAAM,eAAe,CAAA;AACzD,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAA;AAC3C,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAA;AACjD,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAA;AAItD,MAAM,CAAC,MAAM,eAAe,GAAiD,CAAC,EAAE,MAAM,EAAE,GAAG,KAAK,EAAE,EAAE,EAAE;IACpG,MAAM,OAAO,GAAG,MAAM,CAAC,CAAC,CAAC,IAAI,gBAAgB,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS,CAAA;IACjE,OAAO,CACL,KAAC,SAAS,OAAK,KAAK,YAClB,KAAC,aAAa,IAAC,OAAO,EAAE,UAAU,CAAC,UAAU,CAAC,OAAO,EAAE,OAAO,CAAC,GAAI,GACzD,CACb,CAAA;AACH,CAAC,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAA;AAC7B,cAAc,eAAe,CAAA;AAC7B,cAAc,cAAc,CAAA;AAC5B,cAAc,cAAc,CAAA;AAC5B,cAAc,aAAa,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAA;AAC7B,cAAc,eAAe,CAAA;AAC7B,cAAc,cAAc,CAAA;AAC5B,cAAc,cAAc,CAAA;AAC5B,cAAc,aAAa,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAA;AAC5B,cAAc,qBAAqB,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAA;AAC5B,cAAc,qBAAqB,CAAA"}
|
package/package.json
ADDED
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@xyo-network/react-module",
|
|
3
|
+
"author": {
|
|
4
|
+
"email": "support@xyo.network",
|
|
5
|
+
"name": "XYO Development Team",
|
|
6
|
+
"url": "https://xyo.network"
|
|
7
|
+
},
|
|
8
|
+
"bugs": {
|
|
9
|
+
"email": "support@xyo.network",
|
|
10
|
+
"url": "https://github.com/XYOracleNetwork/sdk-xyo-react-js/issues"
|
|
11
|
+
},
|
|
12
|
+
"dependencies": {
|
|
13
|
+
"@xylabs/react-flexbox": "^2.15.1",
|
|
14
|
+
"@xylabs/react-identicon": "^2.15.1",
|
|
15
|
+
"@xylabs/sdk-js": "^2.6.9",
|
|
16
|
+
"lodash": "^4.17.21",
|
|
17
|
+
"tslib": "^2.4.0"
|
|
18
|
+
},
|
|
19
|
+
"peerDependencies": {
|
|
20
|
+
"@mui/icons-material": "^5.10.3",
|
|
21
|
+
"@mui/material": "^5.10.3",
|
|
22
|
+
"@mui/styles": "^5.10.3",
|
|
23
|
+
"@xylabs/react-button": "^2.15.1",
|
|
24
|
+
"@xylabs/react-shared": "^2.15.1",
|
|
25
|
+
"@xylabs/sdk-react": "^2.15.1",
|
|
26
|
+
"@xyo-network/archivist": "*",
|
|
27
|
+
"@xyo-network/diviner": "*",
|
|
28
|
+
"@xyo-network/module": "*",
|
|
29
|
+
"@xyo-network/payload": "*",
|
|
30
|
+
"@xyo-network/payload-plugin": "*",
|
|
31
|
+
"@xyo-network/schema-payload-plugin": "*",
|
|
32
|
+
"@xyo-network/utils": "*",
|
|
33
|
+
"axios": "^1.1.3",
|
|
34
|
+
"pako": "^2.0.4",
|
|
35
|
+
"react": "^18.2.0",
|
|
36
|
+
"react-dom": "^18.2.0",
|
|
37
|
+
"react-router-dom": "^6.3.0"
|
|
38
|
+
},
|
|
39
|
+
"description": "Common React library for all XYO projects that use React",
|
|
40
|
+
"browser": "dist/esm/index.js",
|
|
41
|
+
"docs": "dist/docs.json",
|
|
42
|
+
"exports": {
|
|
43
|
+
".": {
|
|
44
|
+
"node": {
|
|
45
|
+
"import": "./dist/esm/index.js",
|
|
46
|
+
"require": "./dist/cjs/index.js"
|
|
47
|
+
},
|
|
48
|
+
"browser": {
|
|
49
|
+
"import": "./dist/esm/index.js",
|
|
50
|
+
"require": "./dist/cjs/index.js"
|
|
51
|
+
},
|
|
52
|
+
"default": "./dist/esm/index.js"
|
|
53
|
+
},
|
|
54
|
+
"./dist/docs.json": {
|
|
55
|
+
"default": "./dist/docs.json"
|
|
56
|
+
},
|
|
57
|
+
"./package.json": "./package.json"
|
|
58
|
+
},
|
|
59
|
+
"main": "dist/cjs/index.js",
|
|
60
|
+
"module": "dist/esm/index.js",
|
|
61
|
+
"homepage": "https://xyo.network",
|
|
62
|
+
"keywords": [
|
|
63
|
+
"xyo",
|
|
64
|
+
"utility",
|
|
65
|
+
"typescript",
|
|
66
|
+
"react"
|
|
67
|
+
],
|
|
68
|
+
"license": "LGPL-3.0",
|
|
69
|
+
"publishConfig": {
|
|
70
|
+
"access": "public"
|
|
71
|
+
},
|
|
72
|
+
"repository": {
|
|
73
|
+
"type": "git",
|
|
74
|
+
"url": "https://github.com/XYOracleNetwork/sdk-xyo-react-js.git"
|
|
75
|
+
},
|
|
76
|
+
"scripts": {
|
|
77
|
+
"lint-pkg": "npmPkgJsonLint .",
|
|
78
|
+
"license": "yarn license-checker --exclude \"MIT, ISC, Apache-2.0, BSD, BSD-2-Clause, CC-BY-4.0, Unlicense, CC-BY-3.0, CC0-1.0\""
|
|
79
|
+
},
|
|
80
|
+
"sideEffects": false,
|
|
81
|
+
"types": "dist/esm/index.d.ts",
|
|
82
|
+
"version": "2.38.17"
|
|
83
|
+
}
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
import { ComponentMeta, ComponentStory } from '@storybook/react'
|
|
2
|
+
import { useAsyncEffect } from '@xylabs/react-shared'
|
|
3
|
+
import { PayloadArchivist, XyoMemoryArchivist, XyoMemoryArchivistConfigSchema } from '@xyo-network/archivist'
|
|
4
|
+
import { useState } from 'react'
|
|
5
|
+
|
|
6
|
+
import { ArchivistCard } from './ArchivistCard'
|
|
7
|
+
|
|
8
|
+
const StorybookEntry = {
|
|
9
|
+
argTypes: {
|
|
10
|
+
authState: {
|
|
11
|
+
jwtToken: 'badToken',
|
|
12
|
+
loggedInAccount: 'none@none.com',
|
|
13
|
+
},
|
|
14
|
+
},
|
|
15
|
+
component: ArchivistCard,
|
|
16
|
+
parameters: {
|
|
17
|
+
docs: {
|
|
18
|
+
page: null,
|
|
19
|
+
},
|
|
20
|
+
},
|
|
21
|
+
title: 'module/ArchivistCard',
|
|
22
|
+
} as ComponentMeta<typeof ArchivistCard>
|
|
23
|
+
|
|
24
|
+
const Template: ComponentStory<typeof ArchivistCard> = () => {
|
|
25
|
+
const [module, setModule] = useState<PayloadArchivist>()
|
|
26
|
+
|
|
27
|
+
useAsyncEffect(
|
|
28
|
+
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
29
|
+
async (mounted) => {
|
|
30
|
+
if (!module) {
|
|
31
|
+
const newParentModule = await XyoMemoryArchivist.create()
|
|
32
|
+
const newModule = await XyoMemoryArchivist.create({
|
|
33
|
+
config: {
|
|
34
|
+
parents: { commit: [newParentModule.address], read: [newParentModule.address], write: [newParentModule.address] },
|
|
35
|
+
schema: XyoMemoryArchivistConfigSchema,
|
|
36
|
+
},
|
|
37
|
+
})
|
|
38
|
+
if (mounted()) {
|
|
39
|
+
setModule(newModule)
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
},
|
|
43
|
+
[module],
|
|
44
|
+
)
|
|
45
|
+
|
|
46
|
+
return <ArchivistCard module={module} />
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
const SingleModule = Template.bind({})
|
|
50
|
+
|
|
51
|
+
export { SingleModule }
|
|
52
|
+
|
|
53
|
+
// eslint-disable-next-line import/no-default-export
|
|
54
|
+
export default StorybookEntry
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { Card, CardProps } from '@mui/material'
|
|
2
|
+
import { PayloadArchivist } from '@xyo-network/archivist'
|
|
3
|
+
|
|
4
|
+
import { ModuleRenderProps } from '../ModuleRenderProps'
|
|
5
|
+
import { ArchivistCardHeader } from './ArchivistCardHeader'
|
|
6
|
+
import { ArchivistCardContent } from './ArchivistContent'
|
|
7
|
+
import { ModuleCardActions } from './CardActions'
|
|
8
|
+
|
|
9
|
+
export const ArchivistCard: React.FC<CardProps & ModuleRenderProps<PayloadArchivist>> = ({ module, ...props }) => {
|
|
10
|
+
return (
|
|
11
|
+
<Card {...props}>
|
|
12
|
+
<ArchivistCardHeader module={module} />
|
|
13
|
+
<ArchivistCardContent module={module} />
|
|
14
|
+
<ModuleCardActions module={module} />
|
|
15
|
+
</Card>
|
|
16
|
+
)
|
|
17
|
+
}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { CardHeaderProps } from '@mui/material'
|
|
2
|
+
import { PayloadArchivist } from '@xyo-network/archivist'
|
|
3
|
+
|
|
4
|
+
import { ModuleRenderProps } from '../ModuleRenderProps'
|
|
5
|
+
import { ModuleCardHeader } from './CardHeader'
|
|
6
|
+
|
|
7
|
+
export const ArchivistCardHeader: React.FC<ModuleRenderProps<PayloadArchivist> & CardHeaderProps> = ({ title, module, ...props }) => {
|
|
8
|
+
return <ModuleCardHeader module={module} title={title ?? 'Archivist'} {...props} />
|
|
9
|
+
}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import { CardContentProps, Typography } from '@mui/material'
|
|
2
|
+
import { useAsyncEffect } from '@xylabs/react-shared'
|
|
3
|
+
import { EthAddress } from '@xylabs/sdk-js'
|
|
4
|
+
import { EthAccountBox } from '@xylabs/sdk-react'
|
|
5
|
+
import { PayloadArchivist, XyoArchivistConfig } from '@xyo-network/archivist'
|
|
6
|
+
import { XyoModuleWrapper } from '@xyo-network/module'
|
|
7
|
+
import { useState } from 'react'
|
|
8
|
+
|
|
9
|
+
import { ModuleRenderProps } from '../ModuleRenderProps'
|
|
10
|
+
import { ModuleCardContent } from './CardContent'
|
|
11
|
+
|
|
12
|
+
export const ArchivistCardContent: React.FC<ModuleRenderProps<PayloadArchivist> & CardContentProps> = ({ children, module, ...props }) => {
|
|
13
|
+
const [config, setConfig] = useState<XyoArchivistConfig>()
|
|
14
|
+
|
|
15
|
+
useAsyncEffect(
|
|
16
|
+
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
17
|
+
async (mounted) => {
|
|
18
|
+
const wrapper = module ? new XyoModuleWrapper(module) : undefined
|
|
19
|
+
const payloads = await wrapper?.discover()
|
|
20
|
+
console.log(`Payloads: ${JSON.stringify(payloads, null, 2)}`)
|
|
21
|
+
if (mounted()) {
|
|
22
|
+
setConfig(payloads?.[0])
|
|
23
|
+
}
|
|
24
|
+
},
|
|
25
|
+
[module],
|
|
26
|
+
)
|
|
27
|
+
|
|
28
|
+
return (
|
|
29
|
+
<ModuleCardContent module={module} {...props}>
|
|
30
|
+
<Typography>Parents</Typography>
|
|
31
|
+
{config?.parents?.commit?.map((address) => {
|
|
32
|
+
return <EthAccountBox key={address} address={EthAddress.fromString(address)} />
|
|
33
|
+
})}
|
|
34
|
+
{children}
|
|
35
|
+
</ModuleCardContent>
|
|
36
|
+
)
|
|
37
|
+
}
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
import { ComponentMeta, ComponentStory } from '@storybook/react'
|
|
2
|
+
import { useAsyncEffect } from '@xylabs/react-shared'
|
|
3
|
+
import { XyoMemoryArchivist } from '@xyo-network/archivist'
|
|
4
|
+
import { Module } from '@xyo-network/module'
|
|
5
|
+
import { useState } from 'react'
|
|
6
|
+
|
|
7
|
+
import { ModuleCard } from './Card'
|
|
8
|
+
|
|
9
|
+
const StorybookEntry = {
|
|
10
|
+
argTypes: {
|
|
11
|
+
authState: {
|
|
12
|
+
jwtToken: 'badToken',
|
|
13
|
+
loggedInAccount: 'none@none.com',
|
|
14
|
+
},
|
|
15
|
+
},
|
|
16
|
+
component: ModuleCard,
|
|
17
|
+
parameters: {
|
|
18
|
+
docs: {
|
|
19
|
+
page: null,
|
|
20
|
+
},
|
|
21
|
+
},
|
|
22
|
+
title: 'module/ModuleCard',
|
|
23
|
+
} as ComponentMeta<typeof ModuleCard>
|
|
24
|
+
|
|
25
|
+
const Template: ComponentStory<typeof ModuleCard> = () => {
|
|
26
|
+
const [module, setModule] = useState<Module>()
|
|
27
|
+
|
|
28
|
+
useAsyncEffect(
|
|
29
|
+
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
30
|
+
async (mounted) => {
|
|
31
|
+
if (!module) {
|
|
32
|
+
const newModule = await XyoMemoryArchivist.create()
|
|
33
|
+
if (mounted()) {
|
|
34
|
+
setModule(newModule)
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
},
|
|
38
|
+
[module],
|
|
39
|
+
)
|
|
40
|
+
|
|
41
|
+
return <ModuleCard module={module} />
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
const SingleModule = Template.bind({})
|
|
45
|
+
|
|
46
|
+
export { SingleModule }
|
|
47
|
+
|
|
48
|
+
// eslint-disable-next-line import/no-default-export
|
|
49
|
+
export default StorybookEntry
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { Card, CardProps } from '@mui/material'
|
|
2
|
+
|
|
3
|
+
import { ModuleRenderProps } from '../ModuleRenderProps'
|
|
4
|
+
import { ModuleCardActions } from './CardActions'
|
|
5
|
+
import { ModuleCardContent } from './CardContent'
|
|
6
|
+
import { ModuleCardHeader } from './CardHeader'
|
|
7
|
+
|
|
8
|
+
export const ModuleCard: React.FC<CardProps & ModuleRenderProps> = ({ module, ...props }) => {
|
|
9
|
+
return (
|
|
10
|
+
<Card {...props}>
|
|
11
|
+
<ModuleCardHeader module={module} />
|
|
12
|
+
<ModuleCardContent module={module} />
|
|
13
|
+
<ModuleCardActions module={module} />
|
|
14
|
+
</Card>
|
|
15
|
+
)
|
|
16
|
+
}
|