@xyo-network/react-payload-details 8.0.0 → 9.0.0

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.
@@ -290,4 +290,4 @@ export {
290
290
  PayloadJsonDetails,
291
291
  PayloadValidationDetails
292
292
  };
293
- //# sourceMappingURL=index.mjs.map
293
+ //# sourceMappingURL=index.mjs.map
@@ -1 +1,7 @@
1
- {"version":3,"sources":["../../src/components/Details/DataDetails.tsx","../../src/components/Details/HashSourceDetails.tsx","../../src/components/Details/Details.tsx","../../src/components/Details/JsonDetails.tsx","../../src/components/Details/ValidationDetails/ValidationDetails.tsx"],"sourcesContent":["import { ContentCopy as ContentCopyIcon, Visibility as VisibilityIcon } from '@mui/icons-material'\nimport {\n Dialog, DialogActions, DialogContent, DialogTitle,\n} from '@mui/material'\nimport { ButtonEx } from '@xylabs/react-button'\nimport { forget } from '@xylabs/sdk-js'\nimport { PayloadBuilder } from '@xyo-network/payload-builder'\nimport type { Payload } from '@xyo-network/payload-model'\nimport type { PropertyAction, PropertyProps } from '@xyo-network/react-property'\nimport { Property } from '@xyo-network/react-property'\nimport type { SizeProp } from '@xyo-network/react-shared'\nimport { usePayloadHash } from '@xyo-network/react-shared'\nimport React, { useState } from 'react'\n\nimport { PayloadHashSourceDetails } from './HashSourceDetails.tsx'\n\nexport type PayloadDataDetailsProps = PropertyProps & {\n badge?: boolean\n payload?: Payload\n size?: SizeProp\n}\n\nexport const PayloadDataDetails: React.FC<PayloadDataDetailsProps> = ({\n size, badge, payload, ...props\n}) => {\n const payloadString = payload ? JSON.stringify(PayloadBuilder.hashableFields(payload), null, 2) : ''\n\n const [viewSourceOpen, setViewSourceOpen] = useState(false)\n const hash = usePayloadHash(payload)\n\n let elevation = 2\n if (props.paper) {\n elevation += props.elevation ?? 0\n }\n\n const actions: PropertyAction[] = [\n {\n icon: <VisibilityIcon />,\n name: 'View',\n onClick: () => setViewSourceOpen(true),\n },\n {\n icon: <ContentCopyIcon />,\n name: 'Copy',\n onClick: () => forget(navigator.clipboard.writeText(hash ?? '')),\n },\n ]\n\n const onCopy = () => {\n forget(navigator.clipboard.writeText(payloadString))\n }\n\n return (\n <>\n <Property\n titleProps={{ elevation }}\n badge={badge}\n size={size}\n actions={actions}\n title=\"Payload Hash\"\n value={hash ?? '<Unknown>'}\n tip=\"This is the payload hash\"\n {...props}\n />\n <Dialog open={viewSourceOpen} onClose={() => setViewSourceOpen(false)}>\n <DialogTitle>Hash Source</DialogTitle>\n <DialogContent>\n <PayloadHashSourceDetails noTitle payload={payload} />\n </DialogContent>\n <DialogActions>\n <ButtonEx\n onClick={onCopy}\n sx={{ color: 'secondary' }}\n >\n Copy\n </ButtonEx>\n <ButtonEx\n onClick={() => setViewSourceOpen(false)}\n sx={{ color: 'secondary' }}\n >\n Close\n </ButtonEx>\n </DialogActions>\n </Dialog>\n </>\n )\n}\n","import { ContentCopy as ContentCopyIcon } from '@mui/icons-material'\nimport {\n IconButton, Typography, useTheme,\n} from '@mui/material'\nimport type { FlexBoxProps } from '@xylabs/react-flexbox'\nimport {\n FlexCol, FlexGrowRow, FlexRow,\n} from '@xylabs/react-flexbox'\nimport { QuickTipButton } from '@xylabs/react-quick-tip-button'\nimport { PayloadBuilder } from '@xyo-network/payload-builder'\nimport type { Payload } from '@xyo-network/payload-model'\nimport React from 'react'\n\nexport interface PayloadHashSourceDetailsProps extends FlexBoxProps {\n noTitle?: boolean\n payload?: Payload\n}\n\nexport const PayloadHashSourceDetails: React.FC<PayloadHashSourceDetailsProps> = ({\n noTitle = false, payload, ...props\n}) => {\n const theme = useTheme()\n const payloadString = payload ? JSON.stringify(PayloadBuilder.hashableFields(payload), null, 2) : ''\n\n return (\n <FlexCol\n {...props}\n sx={[{ alignItems: 'stretch' }, ...(Array.isArray(props.sx) ? props.sx : [props.sx])]}\n >\n {noTitle\n ? null\n : (\n <FlexRow\n sx={{\n margin: 1,\n justifyContent: 'flex-start',\n }}\n >\n <Typography>Hash Source</Typography>\n <QuickTipButton title=\"Hash Source\">The actual string used to generate the hash (SHA256)</QuickTipButton>\n </FlexRow>\n )}\n <FlexRow>\n <FlexGrowRow\n background\n sx={{\n border: 1,\n borderColor: theme.vars.palette.divider,\n justifyContent: 'start',\n }}\n >\n <Typography\n variant=\"body1\"\n sx={{\n padding: 2,\n fontFamily: 'monospace',\n overflowWrap: 'break-word',\n wordBreak: 'break-all',\n }}\n >\n {payloadString}\n </Typography>\n </FlexGrowRow>\n <IconButton>\n <ContentCopyIcon />\n </IconButton>\n </FlexRow>\n {noTitle\n ? (\n <FlexRow\n sx={{\n margin: 1,\n justifyContent: 'flex-start',\n }}\n >\n <Typography variant=\"body2\">\n The actual string used to generate the hash (SHA256). This can be used to validate the hash manually.\n </Typography>\n </FlexRow>\n )\n : null}\n </FlexCol>\n )\n}\n","import type { FlexBoxProps } from '@xylabs/react-flexbox'\nimport { FlexCol } from '@xylabs/react-flexbox'\nimport type { Payload } from '@xyo-network/payload-model'\nimport React from 'react'\n\nimport { PayloadDataDetails } from './DataDetails.tsx'\nimport { PayloadJsonDetails } from './JsonDetails.tsx'\nimport { PayloadValidationDetails } from './ValidationDetails/index.ts'\n\nexport type WithPaper<T> = T & { paper: true }\nexport type WithoutPaper<T> = T & { paper?: false }\n\nexport type PayloadDetailsProps = FlexBoxProps & {\n paper?: boolean\n payload?: Payload\n}\n\nexport const PayloadDetails: React.FC<PayloadDetailsProps> = ({\n paper, payload, ...props\n}) => {\n return (\n <FlexCol\n {...props}\n sx={[{\n gap: 1,\n justifyContent: 'flex-start',\n alignItems: 'stretch',\n marginTop: 2,\n marginBottom: 8,\n }, ...(Array.isArray(props.sx) ? props.sx : [props.sx])]}\n >\n <PayloadDataDetails paper={paper} size=\"large\" badge payload={payload} />\n <PayloadValidationDetails paper={paper} value={payload} />\n <PayloadJsonDetails paper={paper} payload={payload} />\n </FlexCol>\n )\n}\n\nPayloadDetails.displayName = 'PayloadDetails'\n","import {\n Paper, useMediaQuery, useTheme,\n} from '@mui/material'\nimport type { Payload } from '@xyo-network/payload-model'\nimport type { JsonViewerExProps } from '@xyo-network/react-payload-raw-info'\nimport { JsonViewerEx } from '@xyo-network/react-payload-raw-info'\nimport type { PropertyGroupProps } from '@xyo-network/react-property'\nimport { PropertyGroup } from '@xyo-network/react-property'\nimport React from 'react'\n\nexport type PayloadJsonDetailsProps = PropertyGroupProps & {\n jsonViewProps?: JsonViewerExProps\n payload?: Payload\n}\n\nexport const PayloadJsonDetails: React.FC<PayloadJsonDetailsProps> = ({\n jsonViewProps, payload, ...props\n}) => {\n const { breakpoints } = useTheme()\n const belowSm = useMediaQuery(breakpoints.down('sm'))\n\n let elevation = 2\n if (props.paper) {\n elevation += props.elevation ?? 0\n }\n\n return (\n <PropertyGroup titleProps={{ elevation }} title=\"JSON\" tip=\"The raw JSON of the payload\" {...props}>\n <Paper\n square\n variant=\"elevation\"\n style={{\n overflow: 'hidden', padding: '16px', width: '100%',\n }}\n >\n <JsonViewerEx\n groupArraysAfterLength={20}\n style={{ overflow: 'hidden' }}\n value={payload}\n enableClipboard\n collapseStringsAfterLength={belowSm ? 24 : 32}\n {...jsonViewProps}\n />\n </Paper>\n </PropertyGroup>\n )\n}\n","import { Typography } from '@mui/material'\nimport { FlexCol } from '@xylabs/react-flexbox'\nimport { usePromise } from '@xylabs/react-promise'\nimport { PayloadValidator } from '@xyo-network/payload-validator'\nimport { Property, PropertyGroup } from '@xyo-network/react-property'\nimport { SchemaProperty } from '@xyo-network/react-schema'\nimport React from 'react'\n\nimport type { PayloadValidationDetailsProps } from './ValidationDetailsProps.ts'\n\nexport const PayloadValidationDetails: React.FC<PayloadValidationDetailsProps> = ({\n skipBody = false, value, ...props\n}) => {\n const [validateErrors] = usePromise(async () => (value ? await new PayloadValidator(value).validate() : undefined), [value])\n\n const bodyErrors = skipBody ? [] : (validateErrors ?? [])\n const errors: Error[] = [...bodyErrors]\n\n let elevation = 2\n if (props.paper) {\n elevation += props.elevation ?? 0\n }\n\n return (\n <PropertyGroup titleProps={{ elevation }} title=\"Validation\" tip=\"The results from validating the payload\" {...props}>\n <Property\n titleProps={{ elevation }}\n title=\"Valid\"\n value={errors.length === 0 ? 'True' : 'False'}\n tip={\n errors.length > 0\n ? (\n <FlexCol>\n {errors.map((error) => {\n return <Typography key={error.message}>{error.toString()}</Typography>\n })}\n </FlexCol>\n )\n : <Typography>No Errors</Typography>\n }\n sx={{ flexGrow: 1 }}\n />\n {value?.schema && (\n <SchemaProperty\n titleProps={{ elevation }}\n value={value.schema}\n sx={{ flexGrow: 1 }}\n />\n )}\n </PropertyGroup>\n )\n}\n"],"mappings":"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","names":["ContentCopyIcon","PayloadBuilder","jsx","jsxs","PayloadBuilder","ContentCopyIcon","FlexCol","useTheme","jsx","Typography","FlexCol","Property","PropertyGroup","jsx","jsxs","jsx","jsxs","FlexCol"]}
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/components/Details/DataDetails.tsx", "../../src/components/Details/HashSourceDetails.tsx", "../../src/components/Details/Details.tsx", "../../src/components/Details/JsonDetails.tsx", "../../src/components/Details/ValidationDetails/ValidationDetails.tsx"],
4
+ "sourcesContent": ["import { ContentCopy as ContentCopyIcon, Visibility as VisibilityIcon } from '@mui/icons-material'\nimport {\n Dialog, DialogActions, DialogContent, DialogTitle,\n} from '@mui/material'\nimport { ButtonEx } from '@xylabs/react-button'\nimport { forget } from '@xylabs/sdk-js'\nimport { PayloadBuilder } from '@xyo-network/payload-builder'\nimport type { Payload } from '@xyo-network/payload-model'\nimport type { PropertyAction, PropertyProps } from '@xyo-network/react-property'\nimport { Property } from '@xyo-network/react-property'\nimport type { SizeProp } from '@xyo-network/react-shared'\nimport { usePayloadHash } from '@xyo-network/react-shared'\nimport React, { useState } from 'react'\n\nimport { PayloadHashSourceDetails } from './HashSourceDetails.tsx'\n\nexport type PayloadDataDetailsProps = PropertyProps & {\n badge?: boolean\n payload?: Payload\n size?: SizeProp\n}\n\nexport const PayloadDataDetails: React.FC<PayloadDataDetailsProps> = ({\n size, badge, payload, ...props\n}) => {\n const payloadString = payload ? JSON.stringify(PayloadBuilder.hashableFields(payload), null, 2) : ''\n\n const [viewSourceOpen, setViewSourceOpen] = useState(false)\n const hash = usePayloadHash(payload)\n\n let elevation = 2\n if (props.paper) {\n elevation += props.elevation ?? 0\n }\n\n const actions: PropertyAction[] = [\n {\n icon: <VisibilityIcon />,\n name: 'View',\n onClick: () => setViewSourceOpen(true),\n },\n {\n icon: <ContentCopyIcon />,\n name: 'Copy',\n onClick: () => forget(navigator.clipboard.writeText(hash ?? '')),\n },\n ]\n\n const onCopy = () => {\n forget(navigator.clipboard.writeText(payloadString))\n }\n\n return (\n <>\n <Property\n titleProps={{ elevation }}\n badge={badge}\n size={size}\n actions={actions}\n title=\"Payload Hash\"\n value={hash ?? '<Unknown>'}\n tip=\"This is the payload hash\"\n {...props}\n />\n <Dialog open={viewSourceOpen} onClose={() => setViewSourceOpen(false)}>\n <DialogTitle>Hash Source</DialogTitle>\n <DialogContent>\n <PayloadHashSourceDetails noTitle payload={payload} />\n </DialogContent>\n <DialogActions>\n <ButtonEx\n onClick={onCopy}\n sx={{ color: 'secondary' }}\n >\n Copy\n </ButtonEx>\n <ButtonEx\n onClick={() => setViewSourceOpen(false)}\n sx={{ color: 'secondary' }}\n >\n Close\n </ButtonEx>\n </DialogActions>\n </Dialog>\n </>\n )\n}\n", "import { ContentCopy as ContentCopyIcon } from '@mui/icons-material'\nimport {\n IconButton, Typography, useTheme,\n} from '@mui/material'\nimport type { FlexBoxProps } from '@xylabs/react-flexbox'\nimport {\n FlexCol, FlexGrowRow, FlexRow,\n} from '@xylabs/react-flexbox'\nimport { QuickTipButton } from '@xylabs/react-quick-tip-button'\nimport { PayloadBuilder } from '@xyo-network/payload-builder'\nimport type { Payload } from '@xyo-network/payload-model'\nimport React from 'react'\n\nexport interface PayloadHashSourceDetailsProps extends FlexBoxProps {\n noTitle?: boolean\n payload?: Payload\n}\n\nexport const PayloadHashSourceDetails: React.FC<PayloadHashSourceDetailsProps> = ({\n noTitle = false, payload, ...props\n}) => {\n const theme = useTheme()\n const payloadString = payload ? JSON.stringify(PayloadBuilder.hashableFields(payload), null, 2) : ''\n\n return (\n <FlexCol\n {...props}\n sx={[{ alignItems: 'stretch' }, ...(Array.isArray(props.sx) ? props.sx : [props.sx])]}\n >\n {noTitle\n ? null\n : (\n <FlexRow\n sx={{\n margin: 1,\n justifyContent: 'flex-start',\n }}\n >\n <Typography>Hash Source</Typography>\n <QuickTipButton title=\"Hash Source\">The actual string used to generate the hash (SHA256)</QuickTipButton>\n </FlexRow>\n )}\n <FlexRow>\n <FlexGrowRow\n background\n sx={{\n border: 1,\n borderColor: theme.vars.palette.divider,\n justifyContent: 'start',\n }}\n >\n <Typography\n variant=\"body1\"\n sx={{\n padding: 2,\n fontFamily: 'monospace',\n overflowWrap: 'break-word',\n wordBreak: 'break-all',\n }}\n >\n {payloadString}\n </Typography>\n </FlexGrowRow>\n <IconButton>\n <ContentCopyIcon />\n </IconButton>\n </FlexRow>\n {noTitle\n ? (\n <FlexRow\n sx={{\n margin: 1,\n justifyContent: 'flex-start',\n }}\n >\n <Typography variant=\"body2\">\n The actual string used to generate the hash (SHA256). This can be used to validate the hash manually.\n </Typography>\n </FlexRow>\n )\n : null}\n </FlexCol>\n )\n}\n", "import type { FlexBoxProps } from '@xylabs/react-flexbox'\nimport { FlexCol } from '@xylabs/react-flexbox'\nimport type { Payload } from '@xyo-network/payload-model'\nimport React from 'react'\n\nimport { PayloadDataDetails } from './DataDetails.tsx'\nimport { PayloadJsonDetails } from './JsonDetails.tsx'\nimport { PayloadValidationDetails } from './ValidationDetails/index.ts'\n\nexport type WithPaper<T> = T & { paper: true }\nexport type WithoutPaper<T> = T & { paper?: false }\n\nexport type PayloadDetailsProps = FlexBoxProps & {\n paper?: boolean\n payload?: Payload\n}\n\nexport const PayloadDetails: React.FC<PayloadDetailsProps> = ({\n paper, payload, ...props\n}) => {\n return (\n <FlexCol\n {...props}\n sx={[{\n gap: 1,\n justifyContent: 'flex-start',\n alignItems: 'stretch',\n marginTop: 2,\n marginBottom: 8,\n }, ...(Array.isArray(props.sx) ? props.sx : [props.sx])]}\n >\n <PayloadDataDetails paper={paper} size=\"large\" badge payload={payload} />\n <PayloadValidationDetails paper={paper} value={payload} />\n <PayloadJsonDetails paper={paper} payload={payload} />\n </FlexCol>\n )\n}\n\nPayloadDetails.displayName = 'PayloadDetails'\n", "import {\n Paper, useMediaQuery, useTheme,\n} from '@mui/material'\nimport type { Payload } from '@xyo-network/payload-model'\nimport type { JsonViewerExProps } from '@xyo-network/react-payload-raw-info'\nimport { JsonViewerEx } from '@xyo-network/react-payload-raw-info'\nimport type { PropertyGroupProps } from '@xyo-network/react-property'\nimport { PropertyGroup } from '@xyo-network/react-property'\nimport React from 'react'\n\nexport type PayloadJsonDetailsProps = PropertyGroupProps & {\n jsonViewProps?: JsonViewerExProps\n payload?: Payload\n}\n\nexport const PayloadJsonDetails: React.FC<PayloadJsonDetailsProps> = ({\n jsonViewProps, payload, ...props\n}) => {\n const { breakpoints } = useTheme()\n const belowSm = useMediaQuery(breakpoints.down('sm'))\n\n let elevation = 2\n if (props.paper) {\n elevation += props.elevation ?? 0\n }\n\n return (\n <PropertyGroup titleProps={{ elevation }} title=\"JSON\" tip=\"The raw JSON of the payload\" {...props}>\n <Paper\n square\n variant=\"elevation\"\n style={{\n overflow: 'hidden', padding: '16px', width: '100%',\n }}\n >\n <JsonViewerEx\n groupArraysAfterLength={20}\n style={{ overflow: 'hidden' }}\n value={payload}\n enableClipboard\n collapseStringsAfterLength={belowSm ? 24 : 32}\n {...jsonViewProps}\n />\n </Paper>\n </PropertyGroup>\n )\n}\n", "import { Typography } from '@mui/material'\nimport { FlexCol } from '@xylabs/react-flexbox'\nimport { usePromise } from '@xylabs/react-promise'\nimport { PayloadValidator } from '@xyo-network/payload-validator'\nimport { Property, PropertyGroup } from '@xyo-network/react-property'\nimport { SchemaProperty } from '@xyo-network/react-schema'\nimport React from 'react'\n\nimport type { PayloadValidationDetailsProps } from './ValidationDetailsProps.ts'\n\nexport const PayloadValidationDetails: React.FC<PayloadValidationDetailsProps> = ({\n skipBody = false, value, ...props\n}) => {\n const [validateErrors] = usePromise(async () => (value ? await new PayloadValidator(value).validate() : undefined), [value])\n\n const bodyErrors = skipBody ? [] : (validateErrors ?? [])\n const errors: Error[] = [...bodyErrors]\n\n let elevation = 2\n if (props.paper) {\n elevation += props.elevation ?? 0\n }\n\n return (\n <PropertyGroup titleProps={{ elevation }} title=\"Validation\" tip=\"The results from validating the payload\" {...props}>\n <Property\n titleProps={{ elevation }}\n title=\"Valid\"\n value={errors.length === 0 ? 'True' : 'False'}\n tip={\n errors.length > 0\n ? (\n <FlexCol>\n {errors.map((error) => {\n return <Typography key={error.message}>{error.toString()}</Typography>\n })}\n </FlexCol>\n )\n : <Typography>No Errors</Typography>\n }\n sx={{ flexGrow: 1 }}\n />\n {value?.schema && (\n <SchemaProperty\n titleProps={{ elevation }}\n value={value.schema}\n sx={{ flexGrow: 1 }}\n />\n )}\n </PropertyGroup>\n )\n}\n"],
5
+ "mappings": "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",
6
+ "names": ["ContentCopyIcon", "PayloadBuilder", "jsx", "jsxs", "PayloadBuilder", "ContentCopyIcon", "FlexCol", "useTheme", "jsx", "Typography", "FlexCol", "Property", "PropertyGroup", "jsx", "jsxs", "jsx", "jsxs", "FlexCol"]
7
+ }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@xyo-network/react-payload-details",
3
- "version": "8.0.0",
3
+ "version": "9.0.0",
4
4
  "description": "Common React library for all XYO projects that use React",
5
5
  "keywords": [
6
6
  "xyo",
@@ -41,154 +41,155 @@
41
41
  "README.md"
42
42
  ],
43
43
  "dependencies": {
44
- "@xyo-network/react-payload-raw-info": "~8.0.0",
45
- "@xyo-network/react-property": "~8.0.0",
46
- "@xyo-network/react-schema": "~8.0.0",
47
- "@xyo-network/react-shared": "~8.0.0"
44
+ "@xyo-network/react-payload-raw-info": "~9.0.0",
45
+ "@xyo-network/react-schema": "~9.0.0",
46
+ "@xyo-network/react-property": "~9.0.0",
47
+ "@xyo-network/react-shared": "~9.0.0"
48
48
  },
49
49
  "devDependencies": {
50
50
  "@bitauth/libauth": "~3.0.0",
51
- "@emotion/react": "^11.14.0",
52
- "@emotion/styled": "^11.14.1",
53
- "@mui/icons-material": "~9.0",
54
- "@mui/material": "~9.0",
55
- "@mui/system": "~9.0",
56
- "@mui/x-tree-view": "~9.1",
51
+ "@mui/icons-material": "^9.0.1",
52
+ "@mui/material": "^9.0.1",
53
+ "@mui/system": "^9.0.1",
54
+ "@mui/x-tree-view": "~9.1.0",
57
55
  "@opentelemetry/api": "^1.9.1",
58
56
  "@opentelemetry/sdk-trace-base": "^2.7.1",
59
57
  "@react-spring/web": "~10.0.3",
60
58
  "@scure/base": "~2.2.0",
61
- "@storybook/react-vite": "~10.3.6",
62
- "@textea/json-viewer": "~4.0.1",
63
- "@types/react": "^19.2.14",
64
- "@xylabs/pixel": "~5.1.2",
65
- "@xylabs/react-async-effect": "~8.0",
66
- "@xylabs/react-button": "~8.0",
67
- "@xylabs/react-flexbox": "~8.0",
68
- "@xylabs/react-hooks": "~8.0",
69
- "@xylabs/react-identicon": "~8.0",
70
- "@xylabs/react-link": "~8.0",
71
- "@xylabs/react-promise": "~8.0",
72
- "@xylabs/react-quick-tip-button": "~8.0",
73
- "@xylabs/react-select": "~8.0",
74
- "@xylabs/react-shared": "~8.0",
75
- "@xylabs/react-theme": "~8.0",
76
- "@xylabs/sdk-js": "^5.1.2",
77
- "@xylabs/threads": "~5.1.2",
78
- "@xylabs/toolchain": "~7.13.22",
79
- "@xylabs/tsconfig": "^7.13.22",
80
- "@xylabs/tsconfig-dom": "^7.13.22",
81
- "@xylabs/tsconfig-react": "~7.13.22",
82
- "@xyo-network/account": "~5.6.2",
83
- "@xyo-network/account-model": "^5.6.3",
84
- "@xyo-network/boundwitness-builder": "^5.6.2",
85
- "@xyo-network/boundwitness-model": "^5.6.3",
86
- "@xyo-network/boundwitness-validator": "^5.6.2",
87
- "@xyo-network/boundwitness-wrapper": "~5.6.2",
88
- "@xyo-network/config-payload-plugin": "~5.6.3",
89
- "@xyo-network/diviner-model": "^5.6.4",
90
- "@xyo-network/diviner-schema-list": "~5.6.4",
91
- "@xyo-network/diviner-schema-stats": "~5.6.4",
92
- "@xyo-network/manifest-model": "~5.6.3",
93
- "@xyo-network/module-model": "^5.6.4",
59
+ "@storybook/react-vite": "~10.4.0",
60
+ "@types/react": "^19.2.15",
61
+ "@xylabs/pixel": "~6.0.2",
62
+ "@xylabs/react-async-effect": "~9.0.0",
63
+ "@xylabs/react-button": "~9.0.0",
64
+ "@xylabs/react-flexbox": "~9.0.0",
65
+ "@xylabs/react-hooks": "~9.0.0",
66
+ "@xylabs/react-identicon": "~9.0.0",
67
+ "@xylabs/react-link": "~9.0.0",
68
+ "@xylabs/react-promise": "~9.0.0",
69
+ "@xylabs/react-quick-tip-button": "~9.0.0",
70
+ "@xylabs/react-select": "~9.0.0",
71
+ "@xylabs/react-shared": "~9.0.0",
72
+ "@xylabs/react-theme": "~9.0.0",
73
+ "@xylabs/sdk-js": "^6.0.2",
74
+ "@xylabs/sdk-react": "~9.0",
75
+ "@xylabs/threads": "~6.0.2",
76
+ "@xylabs/toolchain": "~8.1.1",
77
+ "@xylabs/tsconfig": "^8.1.1",
78
+ "@xylabs/tsconfig-dom": "^8.1.1",
79
+ "@xylabs/tsconfig-react": "~8.1.1",
80
+ "@xyo-network/account": "~6.0.0",
81
+ "@xyo-network/account-model": "^6.0.0",
82
+ "@xyo-network/boundwitness-builder": "^6.0.0",
83
+ "@xyo-network/boundwitness-model": "^6.0.0",
84
+ "@xyo-network/boundwitness-validator": "^6.0.0",
85
+ "@xyo-network/boundwitness-wrapper": "~6.0.0",
86
+ "@xyo-network/config-payload-plugin": "~6.0.0",
87
+ "@xyo-network/diviner-model": "^6.0.0",
88
+ "@xyo-network/diviner-schema-list": "~6.0.0",
89
+ "@xyo-network/diviner-schema-stats": "~6.0.0",
90
+ "@xyo-network/manifest-model": "~6.0.0",
91
+ "@xyo-network/module-model": "^6.0.0",
94
92
  "@xyo-network/node-core-types": "~4.2.2",
95
- "@xyo-network/node-memory": "~5.6.4",
96
- "@xyo-network/node-model": "^5.6.4",
97
- "@xyo-network/payload-builder": "^5.6.2",
98
- "@xyo-network/payload-model": "^5.6.3",
99
- "@xyo-network/payload-validator": "^5.6.3",
100
- "@xyo-network/query-payload-plugin": "~5.6.3",
101
- "@xyo-network/schema-cache": "~5.6.3",
102
- "@xyo-network/schema-payload-plugin": "~5.6.3",
93
+ "@xyo-network/node-memory": "~6.0.0",
94
+ "@xyo-network/node-model": "^6.0.0",
95
+ "@xyo-network/payload-builder": "^6.0.0",
96
+ "@xyo-network/payload-model": "^6.0.0",
97
+ "@xyo-network/payload-validator": "^6.0.0",
98
+ "@xyo-network/query-payload-plugin": "~6.0.0",
99
+ "@xyo-network/schema-cache": "~6.0.0",
100
+ "@xyo-network/schema-payload-plugin": "~6.0.0",
103
101
  "@xyo-network/typeof": "~5.3.30",
104
- "@xyo-network/wallet-model": "^5.6.3",
102
+ "@xyo-network/wallet-model": "^6.0.0",
105
103
  "ajv": "^8.20.0",
106
104
  "async-mutex": "^0.5.0",
107
105
  "bn.js": "^5.2.3",
108
106
  "bowser": "^2.14.1",
109
107
  "buffer": "^6.0.3",
110
108
  "chalk": "^5.6.2",
109
+ "clsx": "~2.1.1",
111
110
  "debug": "~4.4.3",
112
- "eslint": "^10.3.0",
111
+ "eslint": "^10.4.0",
113
112
  "ethers": "^6.16.0",
114
113
  "fast-deep-equal": "~3.1.3",
115
114
  "hash-wasm": "~4.12.0",
116
- "js-cookie": "~3.0.5",
117
- "lru-cache": "^11.3.6",
115
+ "js-cookie": "~3.0.7",
116
+ "lru-cache": "^11.5.0",
118
117
  "md5": "~2.3.0",
119
- "mixpanel-browser": "~2.78.0",
118
+ "mixpanel-browser": "~2.79.0",
119
+ "numeral": "~2.0.6",
120
120
  "observable-fns": "~0.6.1",
121
121
  "pako": "^2.1.0",
122
122
  "query-string": "~9.3.1",
123
123
  "react": "^19.2.6",
124
124
  "react-dom": "^19.2.6",
125
125
  "react-is": "^19.2.6",
126
- "react-router-dom": "^7.15.0",
126
+ "react-router-dom": "^7.15.1",
127
127
  "recharts": "~3.8.1",
128
128
  "spark-md5": "~3.0.2",
129
- "storybook": "^10.3.6",
130
- "typescript": "^5.9.3",
131
- "vite": "^8.0.11",
129
+ "storybook": "^10.4.0",
130
+ "typescript": "^6.0.3",
131
+ "viem": "^2.50.4",
132
+ "vite": "^8.0.13",
132
133
  "wasm-feature-detect": "~1.8.0",
133
134
  "zod": "^4.4.3",
134
- "@xyo-network/react-storybook": "~8.0.0"
135
+ "zustand": "~5.0.13",
136
+ "@xyo-network/react-storybook": "~9.0.0"
135
137
  },
136
138
  "peerDependencies": {
137
139
  "@bitauth/libauth": "~3.0",
138
- "@emotion/react": "^11.14",
139
- "@emotion/styled": "^11.14",
140
- "@mui/icons-material": "~9.0",
141
- "@mui/material": "~9.0",
142
- "@mui/system": "~9.0",
140
+ "@mui/icons-material": "^9.0",
141
+ "@mui/material": "^9.0",
142
+ "@mui/system": "^9.0",
143
143
  "@mui/x-tree-view": "~9.1",
144
144
  "@opentelemetry/api": "^1.9",
145
145
  "@opentelemetry/sdk-trace-base": "^2.7",
146
146
  "@react-spring/web": "~10.0",
147
147
  "@scure/base": "~2.2",
148
- "@textea/json-viewer": "~4.0",
149
- "@xylabs/pixel": "~5.1",
150
- "@xylabs/react-async-effect": "~8.0",
151
- "@xylabs/react-button": "~8.0",
152
- "@xylabs/react-flexbox": "~8.0",
153
- "@xylabs/react-hooks": "~8.0",
154
- "@xylabs/react-identicon": "~8.0",
155
- "@xylabs/react-link": "~8.0",
156
- "@xylabs/react-promise": "~8.0",
157
- "@xylabs/react-quick-tip-button": "~8.0",
158
- "@xylabs/react-select": "~8.0",
159
- "@xylabs/react-shared": "~8.0",
160
- "@xylabs/react-theme": "~8.0",
161
- "@xylabs/sdk-js": "^5.1",
162
- "@xylabs/threads": "~5.1",
163
- "@xyo-network/account": "~5.6",
164
- "@xyo-network/account-model": "^5.6",
165
- "@xyo-network/boundwitness-builder": "^5.6",
166
- "@xyo-network/boundwitness-model": "^5.6",
167
- "@xyo-network/boundwitness-validator": "^5.6",
168
- "@xyo-network/boundwitness-wrapper": "~5.6",
169
- "@xyo-network/config-payload-plugin": "~5.6",
170
- "@xyo-network/diviner-model": "^5.6",
171
- "@xyo-network/diviner-schema-list": "~5.6",
172
- "@xyo-network/diviner-schema-stats": "~5.6",
173
- "@xyo-network/manifest-model": "~5.6",
174
- "@xyo-network/module-model": "^5.6",
148
+ "@xylabs/pixel": "~6.0",
149
+ "@xylabs/react-async-effect": "~9.0",
150
+ "@xylabs/react-button": "~9.0",
151
+ "@xylabs/react-flexbox": "~9.0",
152
+ "@xylabs/react-hooks": "~9.0",
153
+ "@xylabs/react-identicon": "~9.0",
154
+ "@xylabs/react-link": "~9.0",
155
+ "@xylabs/react-promise": "~9.0",
156
+ "@xylabs/react-quick-tip-button": "~9.0",
157
+ "@xylabs/react-select": "~9.0",
158
+ "@xylabs/react-shared": "~9.0",
159
+ "@xylabs/react-theme": "~9.0",
160
+ "@xylabs/sdk-js": "^6.0",
161
+ "@xylabs/sdk-react": "~9.0",
162
+ "@xylabs/threads": "~6.0",
163
+ "@xyo-network/account": "~6.0",
164
+ "@xyo-network/account-model": "^6.0",
165
+ "@xyo-network/boundwitness-builder": "^6.0",
166
+ "@xyo-network/boundwitness-model": "^6.0",
167
+ "@xyo-network/boundwitness-validator": "^6.0",
168
+ "@xyo-network/boundwitness-wrapper": "~6.0",
169
+ "@xyo-network/config-payload-plugin": "~6.0",
170
+ "@xyo-network/diviner-model": "^6.0",
171
+ "@xyo-network/diviner-schema-list": "~6.0",
172
+ "@xyo-network/diviner-schema-stats": "~6.0",
173
+ "@xyo-network/manifest-model": "~6.0",
174
+ "@xyo-network/module-model": "^6.0",
175
175
  "@xyo-network/node-core-types": "~4.2",
176
- "@xyo-network/node-memory": "~5.6",
177
- "@xyo-network/node-model": "^5.6",
178
- "@xyo-network/payload-builder": "^5.6",
179
- "@xyo-network/payload-model": "^5.6",
180
- "@xyo-network/payload-validator": "^5.6",
181
- "@xyo-network/query-payload-plugin": "~5.6",
182
- "@xyo-network/schema-cache": "~5.6",
183
- "@xyo-network/schema-payload-plugin": "~5.6",
176
+ "@xyo-network/node-memory": "~6.0",
177
+ "@xyo-network/node-model": "^6.0",
178
+ "@xyo-network/payload-builder": "^6.0",
179
+ "@xyo-network/payload-model": "^6.0",
180
+ "@xyo-network/payload-validator": "^6.0",
181
+ "@xyo-network/query-payload-plugin": "~6.0",
182
+ "@xyo-network/schema-cache": "~6.0",
183
+ "@xyo-network/schema-payload-plugin": "~6.0",
184
184
  "@xyo-network/typeof": "~5.3",
185
- "@xyo-network/wallet-model": "^5.6",
185
+ "@xyo-network/wallet-model": "^6.0",
186
186
  "ajv": "^8.20",
187
187
  "async-mutex": "^0.5",
188
188
  "bn.js": "^5.2",
189
189
  "bowser": "^2.14",
190
190
  "buffer": "^6.0",
191
191
  "chalk": "^5.6",
192
+ "clsx": "~2.1",
192
193
  "debug": "~4.4",
193
194
  "ethers": "^6.16",
194
195
  "fast-deep-equal": "~3.1",
@@ -196,7 +197,8 @@
196
197
  "js-cookie": "~3.0",
197
198
  "lru-cache": "^11.3",
198
199
  "md5": "~2.3",
199
- "mixpanel-browser": "~2.78",
200
+ "mixpanel-browser": "~2.79",
201
+ "numeral": "~2.0",
200
202
  "observable-fns": "~0.6",
201
203
  "pako": "^2.1",
202
204
  "query-string": "~9.3",
@@ -206,8 +208,10 @@
206
208
  "react-router-dom": "^7.15",
207
209
  "recharts": "~3.8",
208
210
  "spark-md5": "~3.0",
211
+ "viem": "^2.48",
209
212
  "wasm-feature-detect": "~1.8",
210
- "zod": "^4.4"
213
+ "zod": "^4.4",
214
+ "zustand": "~5.0"
211
215
  },
212
216
  "publishConfig": {
213
217
  "access": "public"