@xyo-network/react-chain-boundwitness 1.23.2 → 2.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.
- package/dist/browser/index.mjs +2 -2
- package/dist/browser/index.mjs.map +3 -3
- package/package.json +151 -143
package/dist/browser/index.mjs
CHANGED
|
@@ -188,7 +188,7 @@ import {
|
|
|
188
188
|
} from "@mui/material";
|
|
189
189
|
import { ErrorRender } from "@xylabs/react-error";
|
|
190
190
|
import { isUndefined as isUndefined3 } from "@xylabs/sdk-js";
|
|
191
|
-
import { DetailsStack, LabelValueStack } from "@xyo-network/react-
|
|
191
|
+
import { DetailsStack, LabelValueStack } from "@xyo-network/xl1-react-client-sdk";
|
|
192
192
|
import { GrSteps } from "react-icons/gr";
|
|
193
193
|
import { IoStatsChartOutline } from "react-icons/io5";
|
|
194
194
|
import { VscSymbolNamespace } from "react-icons/vsc";
|
|
@@ -576,9 +576,9 @@ import {
|
|
|
576
576
|
isDefined as isDefined5,
|
|
577
577
|
isUndefined as isUndefined5
|
|
578
578
|
} from "@xylabs/sdk-js";
|
|
579
|
-
import { DetailsStack as DetailsStack2, LabelValueStack as LabelValueStack2 } from "@xyo-network/react-chain-shared";
|
|
580
579
|
import { useEvent as useEvent2 } from "@xyo-network/react-event";
|
|
581
580
|
import { BlockiesAvatarAddress as BlockiesAvatarAddress2 } from "@xyo-network/xl1-blockies";
|
|
581
|
+
import { DetailsStack as DetailsStack2, LabelValueStack as LabelValueStack2 } from "@xyo-network/xl1-react-client-sdk";
|
|
582
582
|
import { FaCopy as FaCopy2 } from "react-icons/fa";
|
|
583
583
|
import { GiReceiveMoney, GiSandsOfTime } from "react-icons/gi";
|
|
584
584
|
import { IoStatsChartOutline as IoStatsChartOutline2 } from "react-icons/io5";
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../src/components/block/BlockBoundWitnessDetails.tsx", "../../src/lib/formatFees.ts", "../../src/lib/formatNumber.ts", "../../src/lib/formatPayloadsForTable.ts", "../../src/lib/formatResults.ts", "../../src/components/PayloadTable.tsx", "../../src/components/block/card/actions/BlockBoundWitnessActions.tsx", "../../src/components/block/card/actions/BlockBoundWitnessVerification.tsx", "../../src/components/block/card/Card.tsx", "../../src/components/block/card/CardHeader.tsx", "../../src/components/block/card/hooks/useDetails.ts", "../../src/components/transactions/card/actions/TransactionActions.tsx", "../../src/components/transactions/card/actions/TransactionVerification.tsx", "../../src/components/transactions/card/Card.tsx", "../../src/components/transactions/card/hooks/useDetails.ts", "../../src/components/transactions/TransactionBoundWitnessDetails.tsx", "../../src/components/transactions/hooks/usePayloadTypes.ts"],
|
|
4
|
-
"sourcesContent": ["import { ErrorRender } from '@xylabs/react-error'\nimport type { FlexBoxProps } from '@xylabs/react-flexbox'\nimport { FlexCol } from '@xylabs/react-flexbox'\nimport { usePromise } from '@xylabs/react-promise'\nimport { filterAs } from '@xylabs/sdk-js'\nimport { isBoundWitness } from '@xyo-network/boundwitness-model'\nimport { HydratedBlockWrapper } from '@xyo-network/chain-wrappers'\nimport {\n BoundWitnessPayloadsTable,\n BoundWitnessSignatureTable,\n HashHeadingPaper,\n HeadingPaper,\n} from '@xyo-network/react-boundwitness-plugin'\nimport { useTxsFromBlock } from '@xyo-network/react-chain-blockchain'\nimport type { EventNoun } from '@xyo-network/react-event'\nimport { usePayloadHash } from '@xyo-network/react-shared'\nimport { PayloadBuilder } from '@xyo-network/sdk-js'\nimport type { SignedHydratedBlockWithHashMeta, XyoViewer } from '@xyo-network/xl1-sdk'\nimport { isTransactionBoundWitness } from '@xyo-network/xl1-sdk'\nimport React, { useMemo } from 'react'\nimport { FaSignature } from 'react-icons/fa'\nimport { GrTransaction } from 'react-icons/gr'\nimport { VscSymbolMethod, VscSymbolNamespace } from 'react-icons/vsc'\n\nimport { formatPayloadsForTable } from '../../lib/index.ts'\nimport type { TransactionBoundWitnessEvents } from '../../types/index.ts'\nimport { PayloadTableFlexbox } from '../PayloadTable.tsx'\nimport { BlockBoundWitnessActions, BlockBoundWitnessCard } from './card/index.ts'\n\nexport interface BoundWitnessDetailsProps extends FlexBoxProps {\n block?: SignedHydratedBlockWithHashMeta\n viewer?: XyoViewer\n}\n\nexport const BlockBoundWitnessDetails = ({\n block, paper, viewer, children, ...props\n}: BoundWitnessDetailsProps) => {\n const [wrapper, wrapperError] = usePromise(async () => {\n if (block) {\n return await HydratedBlockWrapper.parse(block)\n }\n }, [block])\n\n const boundWitness = block?.[0]\n const payloads = block?.[1]\n\n const hash = usePayloadHash(boundWitness)\n\n const [transactions, txFromBlockError] = useTxsFromBlock(block)\n\n const { hashes: txHashes, schemas: txSchemas } = useMemo(() => formatPayloadsForTable(transactions ?? []), [transactions])\n\n const [nonTxBoundWitnesses, bwsFromBlockError] = usePromise(async () => {\n const bws = filterAs(payloads ?? [], payload =>\n (!isTransactionBoundWitness(payload) && isBoundWitness(payload)) ? payload : undefined)\n return await PayloadBuilder.hashPairs(bws)\n }, [payloads])\n\n const { hashes: nonTxBwHashes, schemas: nonTxBwSchemas } = useMemo(() => formatPayloadsForTable(nonTxBoundWitnesses ?? []), [nonTxBoundWitnesses])\n const hasNonTxBoundWitnesses = (nonTxBoundWitnesses?.length ?? 0) > 0\n\n return (\n <FlexCol\n {...props}\n sx={[{\n alignItems: 'stretch',\n rowGap: 4,\n }, ...(Array.isArray(props.sx) ? props.sx : [props.sx])]}\n >\n <ErrorRender error={txFromBlockError ?? bwsFromBlockError} scope=\"BlockBoundWitnessDetails.tsx\" />\n <ErrorRender error={wrapperError} scope=\"BlockBoundWitnessDetails.tsx:wrapperError\" />\n <HashHeadingPaper\n hash={hash}\n paperProps={{ sx: { p: 2 } }}\n AdornmentEnd={<BlockBoundWitnessActions boundwitness={boundWitness} />}\n identiconProps={{ sx: { p: 0.75 }, size: 24 }}\n />\n <BlockBoundWitnessCard elevation={4} viewer={viewer} wrapper={wrapper} />\n {(transactions?.length ?? 0) > 0\n ? (\n <PayloadTableFlexbox<TransactionBoundWitnessEvents>\n IconComponent={<GrTransaction />}\n eventNoun=\"transaction\"\n clickableFields={['hash']}\n hashes={txHashes}\n headingTitle=\"Transactions\"\n schemas={txSchemas}\n sx={{ mb: 1 }}\n />\n )\n : null}\n <FlexCol\n sx={{\n alignItems: 'stretch',\n rowGap: 1,\n mb: 1,\n }}\n >\n <HeadingPaper IconComponent={<VscSymbolNamespace />} heading=\"Payloads\" />\n <BoundWitnessPayloadsTable boundwitness={boundWitness} eventNoun=\"payload\" clickableFields={['hash']} />\n </FlexCol>\n {hasNonTxBoundWitnesses\n ? (\n <PayloadTableFlexbox<EventNoun>\n IconComponent={<VscSymbolMethod />}\n eventNoun=\"boundwitness\"\n hashes={nonTxBwHashes}\n headingTitle=\"Bound Witnesses\"\n schemas={nonTxBwSchemas}\n sx={{ mb: 1 }}\n />\n )\n : null}\n <FlexCol\n sx={{\n alignItems: 'stretch',\n rowGap: 1,\n mb: 1,\n }}\n >\n <HeadingPaper IconComponent={<FaSignature />} heading=\"Signatures\" />\n <BoundWitnessSignatureTable block={boundWitness} />\n </FlexCol>\n </FlexCol>\n )\n}\n", "import { isUndefined } from '@xylabs/sdk-js'\nimport { bigIntToFixedPointString } from '@xyo-network/chain-utils'\n\nexport const formatFee = (fee?: bigint) => {\n if (isUndefined(fee)) return 'N/A'\n const stringValue = bigIntToFixedPointString(fee, 12)\n if (stringValue === '0') return stringValue\n return stringValue\n}\n", "export const formatNumber = (num: number | bigint): string => {\n return num.toLocaleString(navigator.language ?? 'en-US')\n}\n", "import type { Hash } from '@xylabs/sdk-js'\nimport type { Payload } from '@xyo-network/sdk-js'\n\nexport const formatPayloadsForTable = (pairs: [Payload, Hash][]) => {\n const hashes: Hash[] = []\n const schemas: string[] = []\n for (const [bw, hash] of pairs ?? []) {\n hashes.push(hash)\n schemas.push(bw?.schema ?? '')\n }\n return { hashes, schemas }\n}\n", "export const formatResults = (results: Record<string, string>) => {\n const result = { labels: [] as string[], values: [] as string[] }\n for (const [label, value] of Object.entries(results)) {\n result.labels.push(label)\n result.values.push(value)\n }\n return result\n}\n", "import { InfoOutlined } from '@mui/icons-material'\nimport { Tooltip } from '@mui/material'\nimport type { FlexBoxProps } from '@xylabs/react-flexbox'\nimport { FlexCol } from '@xylabs/react-flexbox'\nimport type { Hash } from '@xylabs/sdk-js'\nimport { isDefined } from '@xylabs/sdk-js'\nimport type { ClickableFields } from '@xyo-network/react-boundwitness-plugin'\nimport {\n BoundWitnessPayloadTableBody, BoundWitnessPayloadTableHead, HeadingPaper,\n} from '@xyo-network/react-boundwitness-plugin'\nimport type { EventNoun, ExtendEventNoun } from '@xyo-network/react-event'\nimport { TableEx } from '@xyo-network/react-table'\nimport React from 'react'\nimport { VscSymbolMethod } from 'react-icons/vsc'\n\nexport interface BWPayloadTableFlexboxProps<TNoun extends ExtendEventNoun<string> = EventNoun> extends FlexBoxProps {\n IconComponent?: React.ReactNode\n clickableFields?: ClickableFields[]\n eventNoun?: TNoun\n hashes?: Hash[]\n headingTitle?: string\n schemas?: string[]\n tooltip?: string\n}\n\nexport const PayloadTableFlexbox = <TNoun extends ExtendEventNoun<string> = EventNoun>({\n IconComponent,\n eventNoun,\n hashes,\n schemas,\n headingTitle,\n clickableFields,\n tooltip,\n ...props\n}: BWPayloadTableFlexboxProps<TNoun>) => {\n const resolvedIconComponent = IconComponent ?? <VscSymbolMethod />\n return (\n <FlexCol\n {...props}\n sx={[{\n alignItems: 'stretch',\n rowGap: 1,\n }, ...(Array.isArray(props.sx) ? props.sx : [props.sx])]}\n >\n <HeadingPaper\n AdornmentEnd={isDefined(tooltip)\n ? (\n <Tooltip title={tooltip}>\n <InfoOutlined\n sx={{\n fontSize: 'small',\n py: 2,\n px: 1,\n }}\n />\n </Tooltip>\n )\n : null}\n IconComponent={resolvedIconComponent}\n heading={headingTitle}\n />\n <TableEx>\n <BoundWitnessPayloadTableHead />\n <BoundWitnessPayloadTableBody<TNoun> payloadHashes={hashes} payloadSchemas={schemas} eventNoun={eventNoun} clickableFields={clickableFields} />\n </TableEx>\n </FlexCol>\n )\n}\n", "import { DataObject as DataObjectIcon } from '@mui/icons-material'\nimport type { FlexBoxProps } from '@xylabs/react-flexbox'\nimport { FlexRow } from '@xylabs/react-flexbox'\nimport { QuickTipButton } from '@xylabs/react-quick-tip-button'\nimport { ellipsize } from '@xylabs/sdk-js'\nimport type { BoundWitness } from '@xyo-network/boundwitness-model'\nimport { BWPreviousHashQuickTipButton } from '@xyo-network/react-boundwitness-plugin'\nimport { usePayloadHash } from '@xyo-network/react-shared'\nimport React from 'react'\n\nimport { BlockBoundWitnessVerification } from './BlockBoundWitnessVerification.tsx'\n\nexport interface BlockBoundWitnessActionsProps extends FlexBoxProps {\n boundwitness?: BoundWitness\n validationIconColors?: boolean\n}\n\nexport const BlockBoundWitnessActions: React.FC<BlockBoundWitnessActionsProps> = ({\n boundwitness,\n validationIconColors = false,\n ...props\n}) => {\n const hash = usePayloadHash(boundwitness)\n\n return (\n <FlexRow {...props}>\n {boundwitness?.previous_hashes.length === 0 ? null : <BWPreviousHashQuickTipButton boundwitness={boundwitness} />}\n <BlockBoundWitnessVerification iconColors={validationIconColors} block={boundwitness} />\n <QuickTipButton\n Icon={DataObjectIcon}\n title={`JSON for ${ellipsize(hash ?? '', 8)}`}\n dialogProps={{ fullWidth: true, maxWidth: 'md' }}\n >\n <pre style={{ wordBreak: 'break-all' }}>{boundwitness ? JSON.stringify(boundwitness, null, 2) : null}</pre>\n </QuickTipButton>\n </FlexRow>\n )\n}\n", "import { CancelRounded as CancelRoundedIcon } from '@mui/icons-material'\nimport type { SvgIconProps } from '@mui/material'\nimport { ErrorQuickTipButton } from '@xylabs/react-error'\nimport { usePromise } from '@xylabs/react-promise'\nimport type { QuickTipButtonProps } from '@xylabs/react-quick-tip-button'\nimport { assertEx, isDefined } from '@xylabs/sdk-js'\nimport type { BoundWitness } from '@xyo-network/boundwitness-model'\nimport { validateBlock } from '@xyo-network/chain-validation'\nimport { useBaseContext } from '@xyo-network/react-chain-blockchain'\nimport type { BlockValidationError } from '@xyo-network/xl1-sdk'\nimport { isBlockBoundWitness } from '@xyo-network/xl1-sdk'\nimport React, { useMemo } from 'react'\n\nconst InvalidIcon = ({ ref, ...props }: SvgIconProps\n & { ref?: React.Ref<SVGSVGElement | null> }) => <CancelRoundedIcon color=\"error\" ref={ref} {...props} />\nInvalidIcon.displayName = 'InvalidIcon'\n\nexport interface BWVerification extends QuickTipButtonProps {\n block?: BoundWitness\n iconColors?: boolean\n}\n\nexport const BlockBoundWitnessVerification: React.FC<BWVerification> = ({ block, ...props }) => {\n const context = useBaseContext()\n const [validationErrors, validateError] = usePromise(async () => {\n if (isDefined(block)) {\n const resolvedBlock = assertEx(isBlockBoundWitness(block) ? block : undefined, () => 'Block must be a BlockBoundWitness')\n return await validateBlock(context, resolvedBlock)\n }\n }, [block, context])\n\n const resolvedErrors = useMemo(() => {\n const errors: (Error | BlockValidationError)[] = []\n if (isDefined(validationErrors)) {\n if (Array.isArray(validationErrors)) errors.push(...validationErrors)\n if (validationErrors instanceof Error) errors.push(validationErrors)\n if (isDefined(validateError)) errors.push(validateError)\n return errors\n }\n }, [validateError, validationErrors])\n\n return (\n <ErrorQuickTipButton boundWitnessType=\"Block\" errors={resolvedErrors} {...props} />\n )\n}\n", "import type { CardProps } from '@mui/material'\nimport {\n Card, CardContent, Grid,\n Skeleton,\n Stack,\n} from '@mui/material'\nimport { ErrorRender } from '@xylabs/react-error'\nimport { isUndefined } from '@xylabs/sdk-js'\nimport { DetailsStack, LabelValueStack } from '@xyo-network/react-chain-shared'\nimport type { HydratedBlockInstance, XyoViewer } from '@xyo-network/xl1-sdk'\nimport React from 'react'\nimport { GrSteps } from 'react-icons/gr'\nimport { IoStatsChartOutline } from 'react-icons/io5'\nimport { VscSymbolNamespace } from 'react-icons/vsc'\n\nimport { BlockBoundWitnessCardHeader } from './CardHeader.tsx'\nimport { useBlockDetails } from './hooks/index.ts'\n\nexport interface BlockBoundWitnessCardProps extends CardProps {\n linkedAddress?: boolean\n viewer?: XyoViewer\n wrapper?: HydratedBlockInstance\n}\n\nexport const BlockBoundWitnessCard: React.FC<BlockBoundWitnessCardProps> = ({\n linkedAddress = true, viewer, wrapper, ...props\n}) => {\n const {\n stats, payloads, stepHashes, stepHashesError, stepHashesLoading,\n } = useBlockDetails(wrapper, viewer)\n\n if (isUndefined(wrapper) || isUndefined(stats) || isUndefined(payloads) || isUndefined(stepHashes)) return null\n return (\n <Card {...props}>\n {wrapper?.boundWitness.addresses.map(address => (\n <BlockBoundWitnessCardHeader\n key={address}\n address={address}\n linked={linkedAddress}\n chainId={wrapper.boundWitness.chain}\n />\n ))}\n <ErrorRender error={stepHashesError} scope=\"BlockBoundWitnessCard.tsx:stepHashesError\" />\n <CardContent>\n <Grid container spacing={6} sx={{ width: '100%' }}>\n <Grid size={{\n xs: 12, sm: 6, md: 4,\n }}\n >\n <DetailsStack IconComponent={IoStatsChartOutline} heading=\"Stats\" tooltipTitle=\"Block Statistics\">\n <LabelValueStack labels={stats.labels} values={stats.values} />\n </DetailsStack>\n </Grid>\n <Grid size={{\n xs: 12, sm: 6, md: 4,\n }}\n >\n <DetailsStack IconComponent={VscSymbolNamespace} heading=\"Payloads\" tooltipTitle=\"Payloads within the Block\">\n <LabelValueStack labels={payloads.labels} values={payloads.values} />\n </DetailsStack>\n </Grid>\n <Grid size={{\n xs: 12, sm: 6, md: 4,\n }}\n >\n <DetailsStack IconComponent={GrSteps} heading=\"Step Hashes\" tooltipTitle=\"Step Hashes for the Block\">\n {stepHashesLoading === 'pending'\n ? (\n <Stack sx={{ gap: 0.25 }}>\n <Skeleton variant=\"text\" width=\"100%\" height={20} />\n <Skeleton variant=\"text\" width=\"100%\" height={20} />\n <Skeleton variant=\"text\" width=\"100%\" height={20} />\n <Skeleton variant=\"text\" width=\"100%\" height={20} />\n </Stack>\n )\n : null}\n <LabelValueStack labels={stepHashes?.labels ?? []} values={stepHashes?.values ?? []} />\n </DetailsStack>\n </Grid>\n </Grid>\n </CardContent>\n </Card>\n )\n}\n", "import type { CardHeaderProps } from '@mui/material'\nimport {\n CardHeader, Icon, IconButton, Link,\n Tooltip, Typography,\n} from '@mui/material'\nimport type { Address } from '@xylabs/sdk-js'\nimport { ellipsize, isDefined } from '@xylabs/sdk-js'\nimport { useEvent } from '@xyo-network/react-event'\nimport { BlockiesAvatarAddress } from '@xyo-network/xl1-blockies'\nimport type { ChainId } from '@xyo-network/xl1-sdk'\nimport React from 'react'\nimport { FaCopy } from 'react-icons/fa'\n\nexport interface BlockBoundWitnessCardHeaderProps extends CardHeaderProps {\n address?: Address\n chainId?: ChainId\n linked?: boolean\n}\n\nexport const BlockBoundWitnessCardHeader: React.FC<BlockBoundWitnessCardHeaderProps> = ({\n linked = true, address, chainId,\n}) => {\n const [ref, dispatch] = useEvent<HTMLDivElement>()\n\n return (\n <CardHeader\n ref={ref}\n title={(\n <Typography\n onClick={() => linked && dispatch('address', 'click', address)}\n variant=\"body2\"\n sx={{\n maxWidth: '100%', textOverflow: 'ellipsis', overflow: 'hidden', fontFamily: 'monospace',\n }}\n >\n {linked\n ? (\n <Link sx={{ cursor: 'pointer' }}>{address}</Link>\n )\n : address}\n </Typography>\n )}\n subheader={isDefined(chainId)\n ? (\n <Typography\n variant=\"subtitle2\"\n sx={{\n fontFamily: 'monospace', fontSize: 12, opacity: 0.5, mt: 0.25,\n }}\n title={`chain: ${chainId}`}\n >\n {ellipsize(chainId, 8)}\n <IconButton size=\"small\" onClick={() => void navigator.clipboard.writeText(chainId)}>\n <Icon sx={{ fontSize: '0.7rem' }}>\n <FaCopy />\n </Icon>\n </IconButton>\n </Typography>\n )\n : null}\n avatar={(\n <Tooltip title={`Address - ${address}`}>\n <BlockiesAvatarAddress\n address={address}\n onClick={() => dispatch('address', 'click', address)}\n size={21}\n sx={{ cursor: 'pointer' }}\n />\n </Tooltip>\n )}\n />\n )\n}\n", "import { usePromise } from '@xylabs/react-promise'\nimport { isUndefined } from '@xylabs/sdk-js'\nimport type { HydratedBlockInstance, XyoViewer } from '@xyo-network/xl1-sdk'\nimport { StepSizes } from '@xyo-network/xl1-sdk'\nimport { useMemo } from 'react'\n\nimport { formatNumber, formatResults } from '../../../../lib/index.ts'\n\nconst generateStepHashText = (blockNumber: number, stepHashIndex: number): [string, string] => {\n const stepSize = StepSizes[stepHashIndex]\n const stepStart = blockNumber - stepSize + 1\n const stepStop = blockNumber\n\n return [`Step ${stepHashIndex} (${stepSize})`, `${formatNumber(stepStart)} - ${formatNumber(stepStop)}`]\n}\n\nexport const useBlockDetails = (wrapper: HydratedBlockInstance | undefined, viewer?: XyoViewer) => {\n const stats = useMemo(() => {\n if (isUndefined(wrapper)) return\n const epochDate = new Date(wrapper.boundWitness.$epoch)\n const stats = {\n Height: formatNumber(wrapper.boundWitness.block),\n // protocol should always be defined except for malformed blocks and very early blocks in the chain\n Protocol: wrapper.boundWitness.protocol?.toString() ?? 'N/A',\n Signatures: formatNumber(wrapper.signatureCount),\n $epoch: `${epochDate.toLocaleDateString()} ${epochDate.toLocaleTimeString()}`,\n }\n\n return formatResults(stats)\n }, [wrapper])\n\n const payloads = useMemo(() => {\n if (isUndefined(wrapper)) return\n const payloads = {\n 'Transactions': formatNumber(wrapper.transactionCount),\n 'Total Payloads': formatNumber(wrapper.payloadCount),\n }\n\n return formatResults(payloads)\n }, [wrapper])\n\n const [stepHashes, stepHashesError, stepHashesLoading] = usePromise(async () => {\n if (isUndefined(wrapper) || isUndefined(viewer)) return\n const stepHashes: Record<string, string> = {}\n for (const [index, hash] of (wrapper.boundWitness.step_hashes ?? []).entries()) {\n try {\n const block = await viewer.blockByHash(hash)\n if (block === null) {\n console.warn(`Block not found for step hash ${hash}`)\n stepHashes[`Step ${index}`] = 'N/A'\n continue\n }\n\n const blockNumber = block[0].block\n const [label, value] = generateStepHashText(blockNumber, index)\n stepHashes[label] = value\n } catch (e) {\n console.error(`Error fetching block for step hash ${hash}:`, e)\n stepHashes[`Step ${index}`] = 'N/A'\n }\n }\n\n return formatResults(stepHashes)\n }, [wrapper, viewer], { defaultValue: { labels: [], values: [] } })\n\n return {\n stats, payloads, stepHashes, stepHashesError, stepHashesLoading,\n }\n}\n", "import { DataObject as DataObjectIcon } from '@mui/icons-material'\nimport type { FlexBoxProps } from '@xylabs/react-flexbox'\nimport { FlexRow } from '@xylabs/react-flexbox'\nimport { QuickTipButton } from '@xylabs/react-quick-tip-button'\nimport { ellipsize } from '@xylabs/sdk-js'\nimport { BWPreviousHashQuickTipButton } from '@xyo-network/react-boundwitness-plugin'\nimport { usePayloadHash } from '@xyo-network/react-shared'\nimport type { SignedHydratedTransactionWithStorageMeta } from '@xyo-network/xl1-sdk'\nimport React from 'react'\n\nimport { TransactionVerification } from './TransactionVerification.tsx'\n\nexport interface TransactionActionsProps extends FlexBoxProps {\n transaction?: SignedHydratedTransactionWithStorageMeta | null\n validationIconColors?: boolean\n}\n\nexport const TransactionActions: React.FC<TransactionActionsProps> = ({\n transaction,\n validationIconColors = false,\n ...props\n}) => {\n const txBw = transaction?.[0]\n const hash = usePayloadHash(txBw)\n return (\n <FlexRow {...props}>\n {txBw?.previous_hashes.length === 0 ? null : <BWPreviousHashQuickTipButton boundwitness={txBw} />}\n <TransactionVerification iconColors={validationIconColors} transaction={transaction} />\n <QuickTipButton\n Icon={DataObjectIcon}\n title={`JSON for ${ellipsize(hash ?? '', 8)}`}\n dialogProps={{ fullWidth: true, maxWidth: 'md' }}\n >\n <pre style={{ wordBreak: 'break-all' }}>{transaction ? JSON.stringify(transaction, null, 2) : null}</pre>\n </QuickTipButton>\n </FlexRow>\n )\n}\n", "import { CancelRounded as CancelRoundedIcon } from '@mui/icons-material'\nimport type { SvgIconProps } from '@mui/material'\nimport { ErrorQuickTipButton } from '@xylabs/react-error'\nimport { usePromise } from '@xylabs/react-promise'\nimport type { QuickTipButtonProps } from '@xylabs/react-quick-tip-button'\nimport { assertEx, isDefined } from '@xylabs/sdk-js'\nimport type { HydratedTransactionValidationError, SignedHydratedTransactionWithStorageMeta } from '@xyo-network/xl1-sdk'\nimport { isSignedHydratedTransactionWithStorageMeta, validateTransaction } from '@xyo-network/xl1-sdk'\nimport React, { useMemo } from 'react'\n\nconst InvalidIcon = ({ ref, ...props }: SvgIconProps\n & { ref?: React.Ref<SVGSVGElement | null> }) => <CancelRoundedIcon color=\"error\" ref={ref} {...props} />\nInvalidIcon.displayName = 'InvalidIcon'\n\nexport interface TxVerification extends QuickTipButtonProps {\n iconColors?: boolean\n transaction?: SignedHydratedTransactionWithStorageMeta | null\n}\n\nexport const TransactionVerification: React.FC<TxVerification> = ({ transaction, ...props }) => {\n const [validationErrors, validateError] = usePromise(async () => {\n if (isDefined(transaction)) {\n const resolvedTransaction = assertEx(isSignedHydratedTransactionWithStorageMeta(transaction)\n ? transaction\n : undefined, () => 'Transaction must be a SignedHydratedTransactionWithStorageMeta')\n return await validateTransaction({ singletons: {}, chainId: resolvedTransaction[0].chain }, resolvedTransaction)\n }\n }, [transaction])\n\n const resolvedErrors = useMemo(() => {\n const errors: (Error | HydratedTransactionValidationError)[] = []\n if (isDefined(validationErrors)) {\n if (Array.isArray(validationErrors)) errors.push(...validationErrors)\n if (validationErrors instanceof Error) errors.push(validationErrors)\n if (isDefined(validateError)) errors.push(validateError)\n return errors\n }\n }, [validateError, validationErrors])\n\n return (\n <ErrorQuickTipButton boundWitnessType=\"Transaction\" errors={resolvedErrors} {...props} />\n )\n}\n", "import type { CardProps } from '@mui/material'\nimport {\n Card, CardContent, CardHeader, Grid, Icon, IconButton, Link, Tooltip, Typography,\n} from '@mui/material'\nimport {\n ellipsize, isDefined, isUndefined,\n} from '@xylabs/sdk-js'\nimport { DetailsStack, LabelValueStack } from '@xyo-network/react-chain-shared'\nimport { useEvent } from '@xyo-network/react-event'\nimport { BlockiesAvatarAddress } from '@xyo-network/xl1-blockies'\nimport type { HydratedTransactionInstance } from '@xyo-network/xl1-sdk'\nimport React from 'react'\nimport { FaCopy } from 'react-icons/fa'\nimport { GiReceiveMoney, GiSandsOfTime } from 'react-icons/gi'\nimport { IoStatsChartOutline } from 'react-icons/io5'\n\nimport { useTransactionDetails } from './hooks/index.ts'\n\nexport interface TransactionBoundWitnessCardProps extends CardProps {\n linkedAddress?: boolean\n wrapper?: HydratedTransactionInstance\n}\n\nexport const TransactionBoundWitnessCard: React.FC<TransactionBoundWitnessCardProps> = ({\n linkedAddress = true, wrapper, ...props\n}) => {\n const chainId = wrapper?.boundWitness.chain\n\n const {\n stats, fees, blockDuration,\n } = useTransactionDetails(wrapper)\n\n const [ref, dispatch] = useEvent<HTMLDivElement>()\n\n if (isUndefined(wrapper) || isUndefined(stats) || isUndefined(fees) || isUndefined(blockDuration)) return null\n return (\n <Card ref={ref} {...props}>\n <CardHeader\n title={(\n <Typography\n onClick={() => linkedAddress && dispatch('address', 'click', wrapper.boundWitness.from)}\n variant=\"body2\"\n sx={{\n maxWidth: '100%', textOverflow: 'ellipsis', overflow: 'hidden', fontFamily: 'monospace',\n }}\n >\n {linkedAddress\n ? (\n <Link sx={{ cursor: 'pointer' }}>{wrapper?.boundWitness.from}</Link>\n )\n : wrapper?.boundWitness.from}\n </Typography>\n )}\n subheader={isDefined(chainId)\n ? (\n <Typography\n variant=\"subtitle2\"\n sx={{\n fontFamily: 'monospace', fontSize: 12, opacity: 0.5, mt: 0.25,\n }}\n title={`chain: ${chainId}`}\n >\n {ellipsize(chainId, 8)}\n <IconButton size=\"small\" onClick={() => void navigator.clipboard.writeText(chainId)}>\n <Icon sx={{ fontSize: '0.7rem' }}>\n <FaCopy />\n </Icon>\n </IconButton>\n </Typography>\n )\n : null}\n avatar={(\n <Tooltip title={`From Address - ${wrapper?.boundWitness.from}`}>\n <BlockiesAvatarAddress\n address={wrapper?.boundWitness.from}\n onClick={() => dispatch('address', 'click', wrapper.boundWitness.from)}\n size={21}\n sx={{ cursor: 'pointer' }}\n />\n </Tooltip>\n )}\n />\n <CardContent>\n <Grid container spacing={6} sx={{ width: '100%' }}>\n <Grid size={{\n xs: 12, sm: 6, md: 4,\n }}\n >\n <DetailsStack IconComponent={IoStatsChartOutline} heading=\"Stats\" tooltipTitle=\"Transaction Statistics\">\n <LabelValueStack labels={stats.labels} values={stats.values} />\n </DetailsStack>\n </Grid>\n <Grid size={{\n xs: 12, sm: 6, md: 4,\n }}\n >\n <DetailsStack IconComponent={GiReceiveMoney} heading=\"Fees\" tooltipTitle=\"Fees offered to the producer\">\n <LabelValueStack labels={fees.labels} values={fees.values} />\n </DetailsStack>\n </Grid>\n <Grid size={{\n xs: 12, sm: 6, md: 4,\n }}\n >\n <DetailsStack IconComponent={GiSandsOfTime} heading=\"Block Duration\" tooltipTitle=\"Block window for the transaction to be valid\">\n <LabelValueStack labels={blockDuration.labels} values={blockDuration.values} />\n </DetailsStack>\n </Grid>\n </Grid>\n </CardContent>\n </Card>\n )\n}\n", "import { isUndefined } from '@xylabs/sdk-js'\nimport type { HydratedTransactionInstance } from '@xyo-network/xl1-sdk'\nimport { useMemo } from 'react'\n\nimport {\n formatFee, formatNumber, formatResults,\n} from '../../../../lib/index.ts'\n\nexport const useTransactionDetails = (wrapper: HydratedTransactionInstance | undefined) => {\n const stats = useMemo(() => {\n if (isUndefined(wrapper)) return\n const stats = {\n 'Reward': formatNumber(wrapper.reward()),\n 'On Chain Payloads': formatNumber(wrapper.elevatedPayloadCount),\n 'Public Payloads': formatNumber(Object.values(wrapper.publicExternalPayloads).length),\n 'Referenced Payloads': formatNumber(Object.entries(wrapper.privateExternalPayloads).length),\n 'Signatures': formatNumber(wrapper.signatureCount),\n }\n\n return formatResults(stats)\n }, [wrapper])\n\n const fees = useMemo(() => {\n if (isUndefined(wrapper)) return\n const fees = {\n 'Base': formatFee(wrapper.fees.base),\n 'Gas': formatFee(wrapper.fees.gasPrice),\n 'Priority': formatFee(wrapper.fees.priority),\n 'Gas Limit': formatFee(wrapper.fees.gasLimit),\n }\n\n return formatResults(fees)\n }, [wrapper])\n\n const blockDuration = useMemo(() => {\n if (isUndefined(wrapper)) return\n const blockDuration = {\n 'Expiration': wrapper.boundWitness.exp.toLocaleString(navigator.language ?? 'en-US'),\n 'Not Before': wrapper.boundWitness.nbf.toLocaleString(navigator.language ?? 'en-US'),\n }\n\n return formatResults(blockDuration)\n }, [wrapper])\n\n return {\n stats, fees, blockDuration,\n }\n}\n", "import { ErrorRender } from '@xylabs/react-error'\nimport { type FlexBoxProps, FlexCol } from '@xylabs/react-flexbox'\nimport { usePromise } from '@xylabs/react-promise'\nimport {\n BoundWitnessSignatureTable, HashHeadingPaper, HeadingPaper,\n} from '@xyo-network/react-boundwitness-plugin'\nimport type { SignedHydratedTransactionWithStorageMeta } from '@xyo-network/xl1-sdk'\nimport { HydratedTransactionWrapper } from '@xyo-network/xl1-sdk'\nimport React from 'react'\nimport { FaSignature } from 'react-icons/fa'\nimport { VscSymbolNamespace } from 'react-icons/vsc'\n\nimport { PayloadTableFlexbox } from '../PayloadTable.tsx'\nimport { TransactionActions, TransactionBoundWitnessCard } from './card/index.ts'\nimport { useTransactionPayloadTypes } from './hooks/index.ts'\n\nexport interface TransactionBoundWitnessDetailsProps extends FlexBoxProps {\n linkedProducerAddress?: boolean\n transaction?: SignedHydratedTransactionWithStorageMeta | null\n}\n\nexport const TransactionBoundWitnessDetails: React.FC<TransactionBoundWitnessDetailsProps> = ({\n linkedProducerAddress, transaction, ...props\n}) => {\n const [wrapper, wrapperError] = usePromise(async () => {\n if (transaction) {\n return await HydratedTransactionWrapper.parse(transaction)\n }\n }, [transaction])\n\n const {\n elevatedPayloadHashes, elevatedPayloadSchemas, elevatedPayloadSetsError,\n publicPayloadHashes, publicPayloadSchemas, publicPayloadsError,\n referencedPayloadHashes, referencedPayloadSchemas, referencedPayloadsError,\n } = useTransactionPayloadTypes(wrapper)\n\n return (\n <FlexCol\n {...props}\n sx={[{\n alignItems: 'stretch',\n rowGap: 2,\n }, ...(Array.isArray(props.sx) ? props.sx : [props.sx])]}\n >\n <HashHeadingPaper\n hash={wrapper?.boundWitness?._hash}\n paperProps={{ sx: { p: 2 } }}\n AdornmentEnd={<TransactionActions transaction={transaction} />}\n identiconProps={{ sx: { p: 0.75 }, size: 24 }}\n />\n <ErrorRender error={wrapperError} scope=\"wrapperError:TransactionBoundWitnessDetails.tsx\" />\n <ErrorRender error={elevatedPayloadSetsError} scope=\"elevatedPayloadSetsError:TransactionBoundWitnessDetails.tsx\" />\n <ErrorRender error={publicPayloadsError} scope=\"publicPayloadsError:TransactionBoundWitnessDetails.tsx\" />\n {referencedPayloadsError.map(error =>\n <ErrorRender key={error.message} error={error} scope=\"referencedPayloadsError:TransactionBoundWitnessDetails.tsx\" />)}\n <TransactionBoundWitnessCard elevation={4} linkedAddress={linkedProducerAddress} wrapper={wrapper} />\n <PayloadTableFlexbox\n eventNoun=\"payload\"\n clickableFields={['hash']}\n tooltip=\"Payloads included in the transaction that are elevated and validated.\"\n IconComponent={<VscSymbolNamespace />}\n hashes={elevatedPayloadHashes}\n headingTitle=\"On Chain Payloads\"\n schemas={elevatedPayloadSchemas}\n sx={{ mb: 1 }}\n />\n {(publicPayloadHashes?.length ?? 0) > 0\n ? (\n <PayloadTableFlexbox\n eventNoun=\"payload\"\n clickableFields={['hash']}\n tooltip=\"Public payloads included in the transaction.\"\n IconComponent={<VscSymbolNamespace />}\n hashes={publicPayloadHashes}\n headingTitle=\"Public Payloads\"\n schemas={publicPayloadSchemas}\n sx={{ mb: 1 }}\n />\n )\n : null}\n {(referencedPayloadHashes?.length ?? 0) > 0\n ? (\n <PayloadTableFlexbox\n eventNoun=\"payload\"\n clickableFields={['hash']}\n tooltip=\"Payload hashes referenced by the transaction but not included.\"\n IconComponent={<VscSymbolNamespace />}\n hashes={referencedPayloadHashes}\n headingTitle=\"Referenced Payloads\"\n schemas={referencedPayloadSchemas}\n sx={{ mb: 1 }}\n />\n )\n : null}\n <FlexCol\n sx={{\n alignItems: 'stretch',\n rowGap: 1,\n mb: 1,\n }}\n >\n <HeadingPaper IconComponent={<FaSignature />} heading=\"Signatures\" />\n <BoundWitnessSignatureTable block={wrapper?.boundWitness} />\n </FlexCol>\n </FlexCol>\n )\n}\n", "import { usePromise } from '@xylabs/react-promise'\nimport type { Hash } from '@xylabs/sdk-js'\nimport { isDefined, isHash } from '@xylabs/sdk-js'\nimport type { Schema } from '@xyo-network/sdk-js'\nimport { isSchema, PayloadBuilder } from '@xyo-network/sdk-js'\nimport type { HydratedTransactionInstance } from '@xyo-network/xl1-sdk'\nimport { useMemo } from 'react'\n\nimport { formatPayloadsForTable } from '../../../lib/index.ts'\n\nexport const useTransactionPayloadTypes = (wrapper?: HydratedTransactionInstance) => {\n const [elevatedPayloadSets, elevatedPayloadSetsError] = usePromise(async () => {\n if (isDefined(wrapper)) {\n const elevatedPayloads = wrapper.elevatedPayloads\n const pairs = await PayloadBuilder.hashPairs(elevatedPayloads)\n return formatPayloadsForTable(pairs)\n } else {\n return { hashes: [], schemas: [] }\n }\n }, [wrapper])\n\n const [publicPayloads, publicPayloadsError] = usePromise(async () => {\n if (isDefined(wrapper)) {\n const publicPayloads = wrapper.publicExternalPayloads\n const pairs = await PayloadBuilder.hashPairs(publicPayloads)\n return formatPayloadsForTable(pairs)\n } else {\n return { hashes: [], schemas: [] }\n }\n }, [wrapper])\n\n const [referencedPayloads, referencedPayloadsError] = useMemo(() => {\n const ret = { hashes: [] as Hash[], schemas: [] as Schema[] }\n const errors: Error[] = []\n if (isDefined(wrapper)) {\n const referencedPayloads = wrapper.privateExternalPayloads\n for (const [hash, schema] of Object.entries(referencedPayloads)) {\n const hashValid = isHash(hash)\n const schemaValid = isSchema(schema)\n if (hashValid) ret.hashes.push(hash)\n if (schemaValid) ret.schemas.push(schema)\n if (!hashValid && !schemaValid) {\n errors.push(new Error(`Unexpected payload or schema type for hash ${hash}: ${schema}`))\n }\n }\n }\n return [ret, errors] as const\n }, [wrapper])\n\n const { hashes: elevatedPayloadHashes, schemas: elevatedPayloadSchemas } = elevatedPayloadSets ?? {}\n const { hashes: publicPayloadHashes, schemas: publicPayloadSchemas } = publicPayloads ?? {}\n const { hashes: referencedPayloadHashes, schemas: referencedPayloadSchemas } = referencedPayloads ?? {}\n\n return {\n elevatedPayloadHashes,\n elevatedPayloadSchemas,\n elevatedPayloadSetsError,\n publicPayloadHashes,\n publicPayloadSchemas,\n publicPayloadsError,\n referencedPayloadHashes,\n referencedPayloadSchemas,\n referencedPayloadsError,\n }\n}\n"],
|
|
5
|
-
"mappings": "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",
|
|
6
|
-
"names": ["ErrorRender", "FlexCol", "usePromise", "HeadingPaper", "usePayloadHash", "useMemo", "VscSymbolMethod", "VscSymbolNamespace", "isDefined", "jsx", "jsx", "jsxs", "isUndefined", "Tooltip", "ellipsize", "isDefined", "jsx", "jsxs", "usePromise", "isUndefined", "useMemo", "useMemo", "isUndefined", "stats", "payloads", "usePromise", "stepHashes", "jsx", "jsxs", "isUndefined", "jsx", "jsxs", "usePromise", "usePayloadHash", "useMemo", "FlexCol", "ErrorRender", "HeadingPaper", "VscSymbolNamespace", "VscSymbolMethod", "DataObjectIcon", "FlexRow", "QuickTipButton", "ellipsize", "BWPreviousHashQuickTipButton", "usePayloadHash", "CancelRoundedIcon", "ErrorQuickTipButton", "usePromise", "assertEx", "isDefined", "useMemo", "jsx", "InvalidIcon", "jsx", "jsxs", "usePayloadHash", "FlexRow", "BWPreviousHashQuickTipButton", "QuickTipButton", "DataObjectIcon", "ellipsize", "Card", "CardContent", "CardHeader", "Grid", "Icon", "IconButton", "Link", "Tooltip", "Typography", "ellipsize", "isDefined", "isUndefined", "
|
|
4
|
+
"sourcesContent": ["import { ErrorRender } from '@xylabs/react-error'\nimport type { FlexBoxProps } from '@xylabs/react-flexbox'\nimport { FlexCol } from '@xylabs/react-flexbox'\nimport { usePromise } from '@xylabs/react-promise'\nimport { filterAs } from '@xylabs/sdk-js'\nimport { isBoundWitness } from '@xyo-network/boundwitness-model'\nimport { HydratedBlockWrapper } from '@xyo-network/chain-wrappers'\nimport {\n BoundWitnessPayloadsTable,\n BoundWitnessSignatureTable,\n HashHeadingPaper,\n HeadingPaper,\n} from '@xyo-network/react-boundwitness-plugin'\nimport { useTxsFromBlock } from '@xyo-network/react-chain-blockchain'\nimport type { EventNoun } from '@xyo-network/react-event'\nimport { usePayloadHash } from '@xyo-network/react-shared'\nimport { PayloadBuilder } from '@xyo-network/sdk-js'\nimport type { SignedHydratedBlockWithHashMeta, XyoViewer } from '@xyo-network/xl1-sdk'\nimport { isTransactionBoundWitness } from '@xyo-network/xl1-sdk'\nimport React, { useMemo } from 'react'\nimport { FaSignature } from 'react-icons/fa'\nimport { GrTransaction } from 'react-icons/gr'\nimport { VscSymbolMethod, VscSymbolNamespace } from 'react-icons/vsc'\n\nimport { formatPayloadsForTable } from '../../lib/index.ts'\nimport type { TransactionBoundWitnessEvents } from '../../types/index.ts'\nimport { PayloadTableFlexbox } from '../PayloadTable.tsx'\nimport { BlockBoundWitnessActions, BlockBoundWitnessCard } from './card/index.ts'\n\nexport interface BoundWitnessDetailsProps extends FlexBoxProps {\n block?: SignedHydratedBlockWithHashMeta\n viewer?: XyoViewer\n}\n\nexport const BlockBoundWitnessDetails = ({\n block, paper, viewer, children, ...props\n}: BoundWitnessDetailsProps) => {\n const [wrapper, wrapperError] = usePromise(async () => {\n if (block) {\n return await HydratedBlockWrapper.parse(block)\n }\n }, [block])\n\n const boundWitness = block?.[0]\n const payloads = block?.[1]\n\n const hash = usePayloadHash(boundWitness)\n\n const [transactions, txFromBlockError] = useTxsFromBlock(block)\n\n const { hashes: txHashes, schemas: txSchemas } = useMemo(() => formatPayloadsForTable(transactions ?? []), [transactions])\n\n const [nonTxBoundWitnesses, bwsFromBlockError] = usePromise(async () => {\n const bws = filterAs(payloads ?? [], payload =>\n (!isTransactionBoundWitness(payload) && isBoundWitness(payload)) ? payload : undefined)\n return await PayloadBuilder.hashPairs(bws)\n }, [payloads])\n\n const { hashes: nonTxBwHashes, schemas: nonTxBwSchemas } = useMemo(() => formatPayloadsForTable(nonTxBoundWitnesses ?? []), [nonTxBoundWitnesses])\n const hasNonTxBoundWitnesses = (nonTxBoundWitnesses?.length ?? 0) > 0\n\n return (\n <FlexCol\n {...props}\n sx={[{\n alignItems: 'stretch',\n rowGap: 4,\n }, ...(Array.isArray(props.sx) ? props.sx : [props.sx])]}\n >\n <ErrorRender error={txFromBlockError ?? bwsFromBlockError} scope=\"BlockBoundWitnessDetails.tsx\" />\n <ErrorRender error={wrapperError} scope=\"BlockBoundWitnessDetails.tsx:wrapperError\" />\n <HashHeadingPaper\n hash={hash}\n paperProps={{ sx: { p: 2 } }}\n AdornmentEnd={<BlockBoundWitnessActions boundwitness={boundWitness} />}\n identiconProps={{ sx: { p: 0.75 }, size: 24 }}\n />\n <BlockBoundWitnessCard elevation={4} viewer={viewer} wrapper={wrapper} />\n {(transactions?.length ?? 0) > 0\n ? (\n <PayloadTableFlexbox<TransactionBoundWitnessEvents>\n IconComponent={<GrTransaction />}\n eventNoun=\"transaction\"\n clickableFields={['hash']}\n hashes={txHashes}\n headingTitle=\"Transactions\"\n schemas={txSchemas}\n sx={{ mb: 1 }}\n />\n )\n : null}\n <FlexCol\n sx={{\n alignItems: 'stretch',\n rowGap: 1,\n mb: 1,\n }}\n >\n <HeadingPaper IconComponent={<VscSymbolNamespace />} heading=\"Payloads\" />\n <BoundWitnessPayloadsTable boundwitness={boundWitness} eventNoun=\"payload\" clickableFields={['hash']} />\n </FlexCol>\n {hasNonTxBoundWitnesses\n ? (\n <PayloadTableFlexbox<EventNoun>\n IconComponent={<VscSymbolMethod />}\n eventNoun=\"boundwitness\"\n hashes={nonTxBwHashes}\n headingTitle=\"Bound Witnesses\"\n schemas={nonTxBwSchemas}\n sx={{ mb: 1 }}\n />\n )\n : null}\n <FlexCol\n sx={{\n alignItems: 'stretch',\n rowGap: 1,\n mb: 1,\n }}\n >\n <HeadingPaper IconComponent={<FaSignature />} heading=\"Signatures\" />\n <BoundWitnessSignatureTable block={boundWitness} />\n </FlexCol>\n </FlexCol>\n )\n}\n", "import { isUndefined } from '@xylabs/sdk-js'\nimport { bigIntToFixedPointString } from '@xyo-network/chain-utils'\n\nexport const formatFee = (fee?: bigint) => {\n if (isUndefined(fee)) return 'N/A'\n const stringValue = bigIntToFixedPointString(fee, 12)\n if (stringValue === '0') return stringValue\n return stringValue\n}\n", "export const formatNumber = (num: number | bigint): string => {\n return num.toLocaleString(navigator.language ?? 'en-US')\n}\n", "import type { Hash } from '@xylabs/sdk-js'\nimport type { Payload } from '@xyo-network/sdk-js'\n\nexport const formatPayloadsForTable = (pairs: [Payload, Hash][]) => {\n const hashes: Hash[] = []\n const schemas: string[] = []\n for (const [bw, hash] of pairs ?? []) {\n hashes.push(hash)\n schemas.push(bw?.schema ?? '')\n }\n return { hashes, schemas }\n}\n", "export const formatResults = (results: Record<string, string>) => {\n const result = { labels: [] as string[], values: [] as string[] }\n for (const [label, value] of Object.entries(results)) {\n result.labels.push(label)\n result.values.push(value)\n }\n return result\n}\n", "import { InfoOutlined } from '@mui/icons-material'\nimport { Tooltip } from '@mui/material'\nimport type { FlexBoxProps } from '@xylabs/react-flexbox'\nimport { FlexCol } from '@xylabs/react-flexbox'\nimport type { Hash } from '@xylabs/sdk-js'\nimport { isDefined } from '@xylabs/sdk-js'\nimport type { ClickableFields } from '@xyo-network/react-boundwitness-plugin'\nimport {\n BoundWitnessPayloadTableBody, BoundWitnessPayloadTableHead, HeadingPaper,\n} from '@xyo-network/react-boundwitness-plugin'\nimport type { EventNoun, ExtendEventNoun } from '@xyo-network/react-event'\nimport { TableEx } from '@xyo-network/react-table'\nimport React from 'react'\nimport { VscSymbolMethod } from 'react-icons/vsc'\n\nexport interface BWPayloadTableFlexboxProps<TNoun extends ExtendEventNoun<string> = EventNoun> extends FlexBoxProps {\n IconComponent?: React.ReactNode\n clickableFields?: ClickableFields[]\n eventNoun?: TNoun\n hashes?: Hash[]\n headingTitle?: string\n schemas?: string[]\n tooltip?: string\n}\n\nexport const PayloadTableFlexbox = <TNoun extends ExtendEventNoun<string> = EventNoun>({\n IconComponent,\n eventNoun,\n hashes,\n schemas,\n headingTitle,\n clickableFields,\n tooltip,\n ...props\n}: BWPayloadTableFlexboxProps<TNoun>) => {\n const resolvedIconComponent = IconComponent ?? <VscSymbolMethod />\n return (\n <FlexCol\n {...props}\n sx={[{\n alignItems: 'stretch',\n rowGap: 1,\n }, ...(Array.isArray(props.sx) ? props.sx : [props.sx])]}\n >\n <HeadingPaper\n AdornmentEnd={isDefined(tooltip)\n ? (\n <Tooltip title={tooltip}>\n <InfoOutlined\n sx={{\n fontSize: 'small',\n py: 2,\n px: 1,\n }}\n />\n </Tooltip>\n )\n : null}\n IconComponent={resolvedIconComponent}\n heading={headingTitle}\n />\n <TableEx>\n <BoundWitnessPayloadTableHead />\n <BoundWitnessPayloadTableBody<TNoun> payloadHashes={hashes} payloadSchemas={schemas} eventNoun={eventNoun} clickableFields={clickableFields} />\n </TableEx>\n </FlexCol>\n )\n}\n", "import { DataObject as DataObjectIcon } from '@mui/icons-material'\nimport type { FlexBoxProps } from '@xylabs/react-flexbox'\nimport { FlexRow } from '@xylabs/react-flexbox'\nimport { QuickTipButton } from '@xylabs/react-quick-tip-button'\nimport { ellipsize } from '@xylabs/sdk-js'\nimport type { BoundWitness } from '@xyo-network/boundwitness-model'\nimport { BWPreviousHashQuickTipButton } from '@xyo-network/react-boundwitness-plugin'\nimport { usePayloadHash } from '@xyo-network/react-shared'\nimport React from 'react'\n\nimport { BlockBoundWitnessVerification } from './BlockBoundWitnessVerification.tsx'\n\nexport interface BlockBoundWitnessActionsProps extends FlexBoxProps {\n boundwitness?: BoundWitness\n validationIconColors?: boolean\n}\n\nexport const BlockBoundWitnessActions: React.FC<BlockBoundWitnessActionsProps> = ({\n boundwitness,\n validationIconColors = false,\n ...props\n}) => {\n const hash = usePayloadHash(boundwitness)\n\n return (\n <FlexRow {...props}>\n {boundwitness?.previous_hashes.length === 0 ? null : <BWPreviousHashQuickTipButton boundwitness={boundwitness} />}\n <BlockBoundWitnessVerification iconColors={validationIconColors} block={boundwitness} />\n <QuickTipButton\n Icon={DataObjectIcon}\n title={`JSON for ${ellipsize(hash ?? '', 8)}`}\n dialogProps={{ fullWidth: true, maxWidth: 'md' }}\n >\n <pre style={{ wordBreak: 'break-all' }}>{boundwitness ? JSON.stringify(boundwitness, null, 2) : null}</pre>\n </QuickTipButton>\n </FlexRow>\n )\n}\n", "import { CancelRounded as CancelRoundedIcon } from '@mui/icons-material'\nimport type { SvgIconProps } from '@mui/material'\nimport { ErrorQuickTipButton } from '@xylabs/react-error'\nimport { usePromise } from '@xylabs/react-promise'\nimport type { QuickTipButtonProps } from '@xylabs/react-quick-tip-button'\nimport { assertEx, isDefined } from '@xylabs/sdk-js'\nimport type { BoundWitness } from '@xyo-network/boundwitness-model'\nimport { validateBlock } from '@xyo-network/chain-validation'\nimport { useBaseContext } from '@xyo-network/react-chain-blockchain'\nimport type { BlockValidationError } from '@xyo-network/xl1-sdk'\nimport { isBlockBoundWitness } from '@xyo-network/xl1-sdk'\nimport React, { useMemo } from 'react'\n\nconst InvalidIcon = ({ ref, ...props }: SvgIconProps\n & { ref?: React.Ref<SVGSVGElement | null> }) => <CancelRoundedIcon color=\"error\" ref={ref} {...props} />\nInvalidIcon.displayName = 'InvalidIcon'\n\nexport interface BWVerification extends QuickTipButtonProps {\n block?: BoundWitness\n iconColors?: boolean\n}\n\nexport const BlockBoundWitnessVerification: React.FC<BWVerification> = ({ block, ...props }) => {\n const context = useBaseContext()\n const [validationErrors, validateError] = usePromise(async () => {\n if (isDefined(block)) {\n const resolvedBlock = assertEx(isBlockBoundWitness(block) ? block : undefined, () => 'Block must be a BlockBoundWitness')\n return await validateBlock(context, resolvedBlock)\n }\n }, [block, context])\n\n const resolvedErrors = useMemo(() => {\n const errors: (Error | BlockValidationError)[] = []\n if (isDefined(validationErrors)) {\n if (Array.isArray(validationErrors)) errors.push(...validationErrors)\n if (validationErrors instanceof Error) errors.push(validationErrors)\n if (isDefined(validateError)) errors.push(validateError)\n return errors\n }\n }, [validateError, validationErrors])\n\n return (\n <ErrorQuickTipButton boundWitnessType=\"Block\" errors={resolvedErrors} {...props} />\n )\n}\n", "import type { CardProps } from '@mui/material'\nimport {\n Card, CardContent, Grid,\n Skeleton,\n Stack,\n} from '@mui/material'\nimport { ErrorRender } from '@xylabs/react-error'\nimport { isUndefined } from '@xylabs/sdk-js'\nimport { DetailsStack, LabelValueStack } from '@xyo-network/xl1-react-client-sdk'\nimport type { HydratedBlockInstance, XyoViewer } from '@xyo-network/xl1-sdk'\nimport React from 'react'\nimport { GrSteps } from 'react-icons/gr'\nimport { IoStatsChartOutline } from 'react-icons/io5'\nimport { VscSymbolNamespace } from 'react-icons/vsc'\n\nimport { BlockBoundWitnessCardHeader } from './CardHeader.tsx'\nimport { useBlockDetails } from './hooks/index.ts'\n\nexport interface BlockBoundWitnessCardProps extends CardProps {\n linkedAddress?: boolean\n viewer?: XyoViewer\n wrapper?: HydratedBlockInstance\n}\n\nexport const BlockBoundWitnessCard: React.FC<BlockBoundWitnessCardProps> = ({\n linkedAddress = true, viewer, wrapper, ...props\n}) => {\n const {\n stats, payloads, stepHashes, stepHashesError, stepHashesLoading,\n } = useBlockDetails(wrapper, viewer)\n\n if (isUndefined(wrapper) || isUndefined(stats) || isUndefined(payloads) || isUndefined(stepHashes)) return null\n return (\n <Card {...props}>\n {wrapper?.boundWitness.addresses.map(address => (\n <BlockBoundWitnessCardHeader\n key={address}\n address={address}\n linked={linkedAddress}\n chainId={wrapper.boundWitness.chain}\n />\n ))}\n <ErrorRender error={stepHashesError} scope=\"BlockBoundWitnessCard.tsx:stepHashesError\" />\n <CardContent>\n <Grid container spacing={6} sx={{ width: '100%' }}>\n <Grid size={{\n xs: 12, sm: 6, md: 4,\n }}\n >\n <DetailsStack IconComponent={IoStatsChartOutline} heading=\"Stats\" tooltipTitle=\"Block Statistics\">\n <LabelValueStack labels={stats.labels} values={stats.values} />\n </DetailsStack>\n </Grid>\n <Grid size={{\n xs: 12, sm: 6, md: 4,\n }}\n >\n <DetailsStack IconComponent={VscSymbolNamespace} heading=\"Payloads\" tooltipTitle=\"Payloads within the Block\">\n <LabelValueStack labels={payloads.labels} values={payloads.values} />\n </DetailsStack>\n </Grid>\n <Grid size={{\n xs: 12, sm: 6, md: 4,\n }}\n >\n <DetailsStack IconComponent={GrSteps} heading=\"Step Hashes\" tooltipTitle=\"Step Hashes for the Block\">\n {stepHashesLoading === 'pending'\n ? (\n <Stack sx={{ gap: 0.25 }}>\n <Skeleton variant=\"text\" width=\"100%\" height={20} />\n <Skeleton variant=\"text\" width=\"100%\" height={20} />\n <Skeleton variant=\"text\" width=\"100%\" height={20} />\n <Skeleton variant=\"text\" width=\"100%\" height={20} />\n </Stack>\n )\n : null}\n <LabelValueStack labels={stepHashes?.labels ?? []} values={stepHashes?.values ?? []} />\n </DetailsStack>\n </Grid>\n </Grid>\n </CardContent>\n </Card>\n )\n}\n", "import type { CardHeaderProps } from '@mui/material'\nimport {\n CardHeader, Icon, IconButton, Link,\n Tooltip, Typography,\n} from '@mui/material'\nimport type { Address } from '@xylabs/sdk-js'\nimport { ellipsize, isDefined } from '@xylabs/sdk-js'\nimport { useEvent } from '@xyo-network/react-event'\nimport { BlockiesAvatarAddress } from '@xyo-network/xl1-blockies'\nimport type { ChainId } from '@xyo-network/xl1-sdk'\nimport React from 'react'\nimport { FaCopy } from 'react-icons/fa'\n\nexport interface BlockBoundWitnessCardHeaderProps extends CardHeaderProps {\n address?: Address\n chainId?: ChainId\n linked?: boolean\n}\n\nexport const BlockBoundWitnessCardHeader: React.FC<BlockBoundWitnessCardHeaderProps> = ({\n linked = true, address, chainId,\n}) => {\n const [ref, dispatch] = useEvent<HTMLDivElement>()\n\n return (\n <CardHeader\n ref={ref}\n title={(\n <Typography\n onClick={() => linked && dispatch('address', 'click', address)}\n variant=\"body2\"\n sx={{\n maxWidth: '100%', textOverflow: 'ellipsis', overflow: 'hidden', fontFamily: 'monospace',\n }}\n >\n {linked\n ? (\n <Link sx={{ cursor: 'pointer' }}>{address}</Link>\n )\n : address}\n </Typography>\n )}\n subheader={isDefined(chainId)\n ? (\n <Typography\n variant=\"subtitle2\"\n sx={{\n fontFamily: 'monospace', fontSize: 12, opacity: 0.5, mt: 0.25,\n }}\n title={`chain: ${chainId}`}\n >\n {ellipsize(chainId, 8)}\n <IconButton size=\"small\" onClick={() => void navigator.clipboard.writeText(chainId)}>\n <Icon sx={{ fontSize: '0.7rem' }}>\n <FaCopy />\n </Icon>\n </IconButton>\n </Typography>\n )\n : null}\n avatar={(\n <Tooltip title={`Address - ${address}`}>\n <BlockiesAvatarAddress\n address={address}\n onClick={() => dispatch('address', 'click', address)}\n size={21}\n sx={{ cursor: 'pointer' }}\n />\n </Tooltip>\n )}\n />\n )\n}\n", "import { usePromise } from '@xylabs/react-promise'\nimport { isUndefined } from '@xylabs/sdk-js'\nimport type { HydratedBlockInstance, XyoViewer } from '@xyo-network/xl1-sdk'\nimport { StepSizes } from '@xyo-network/xl1-sdk'\nimport { useMemo } from 'react'\n\nimport { formatNumber, formatResults } from '../../../../lib/index.ts'\n\nconst generateStepHashText = (blockNumber: number, stepHashIndex: number): [string, string] => {\n const stepSize = StepSizes[stepHashIndex]\n const stepStart = blockNumber - stepSize + 1\n const stepStop = blockNumber\n\n return [`Step ${stepHashIndex} (${stepSize})`, `${formatNumber(stepStart)} - ${formatNumber(stepStop)}`]\n}\n\nexport const useBlockDetails = (wrapper: HydratedBlockInstance | undefined, viewer?: XyoViewer) => {\n const stats = useMemo(() => {\n if (isUndefined(wrapper)) return\n const epochDate = new Date(wrapper.boundWitness.$epoch)\n const stats = {\n Height: formatNumber(wrapper.boundWitness.block),\n // protocol should always be defined except for malformed blocks and very early blocks in the chain\n Protocol: wrapper.boundWitness.protocol?.toString() ?? 'N/A',\n Signatures: formatNumber(wrapper.signatureCount),\n $epoch: `${epochDate.toLocaleDateString()} ${epochDate.toLocaleTimeString()}`,\n }\n\n return formatResults(stats)\n }, [wrapper])\n\n const payloads = useMemo(() => {\n if (isUndefined(wrapper)) return\n const payloads = {\n 'Transactions': formatNumber(wrapper.transactionCount),\n 'Total Payloads': formatNumber(wrapper.payloadCount),\n }\n\n return formatResults(payloads)\n }, [wrapper])\n\n const [stepHashes, stepHashesError, stepHashesLoading] = usePromise(async () => {\n if (isUndefined(wrapper) || isUndefined(viewer)) return\n const stepHashes: Record<string, string> = {}\n for (const [index, hash] of (wrapper.boundWitness.step_hashes ?? []).entries()) {\n try {\n const block = await viewer.blockByHash(hash)\n if (block === null) {\n console.warn(`Block not found for step hash ${hash}`)\n stepHashes[`Step ${index}`] = 'N/A'\n continue\n }\n\n const blockNumber = block[0].block\n const [label, value] = generateStepHashText(blockNumber, index)\n stepHashes[label] = value\n } catch (e) {\n console.error(`Error fetching block for step hash ${hash}:`, e)\n stepHashes[`Step ${index}`] = 'N/A'\n }\n }\n\n return formatResults(stepHashes)\n }, [wrapper, viewer], { defaultValue: { labels: [], values: [] } })\n\n return {\n stats, payloads, stepHashes, stepHashesError, stepHashesLoading,\n }\n}\n", "import { DataObject as DataObjectIcon } from '@mui/icons-material'\nimport type { FlexBoxProps } from '@xylabs/react-flexbox'\nimport { FlexRow } from '@xylabs/react-flexbox'\nimport { QuickTipButton } from '@xylabs/react-quick-tip-button'\nimport { ellipsize } from '@xylabs/sdk-js'\nimport { BWPreviousHashQuickTipButton } from '@xyo-network/react-boundwitness-plugin'\nimport { usePayloadHash } from '@xyo-network/react-shared'\nimport type { SignedHydratedTransactionWithStorageMeta } from '@xyo-network/xl1-sdk'\nimport React from 'react'\n\nimport { TransactionVerification } from './TransactionVerification.tsx'\n\nexport interface TransactionActionsProps extends FlexBoxProps {\n transaction?: SignedHydratedTransactionWithStorageMeta | null\n validationIconColors?: boolean\n}\n\nexport const TransactionActions: React.FC<TransactionActionsProps> = ({\n transaction,\n validationIconColors = false,\n ...props\n}) => {\n const txBw = transaction?.[0]\n const hash = usePayloadHash(txBw)\n return (\n <FlexRow {...props}>\n {txBw?.previous_hashes.length === 0 ? null : <BWPreviousHashQuickTipButton boundwitness={txBw} />}\n <TransactionVerification iconColors={validationIconColors} transaction={transaction} />\n <QuickTipButton\n Icon={DataObjectIcon}\n title={`JSON for ${ellipsize(hash ?? '', 8)}`}\n dialogProps={{ fullWidth: true, maxWidth: 'md' }}\n >\n <pre style={{ wordBreak: 'break-all' }}>{transaction ? JSON.stringify(transaction, null, 2) : null}</pre>\n </QuickTipButton>\n </FlexRow>\n )\n}\n", "import { CancelRounded as CancelRoundedIcon } from '@mui/icons-material'\nimport type { SvgIconProps } from '@mui/material'\nimport { ErrorQuickTipButton } from '@xylabs/react-error'\nimport { usePromise } from '@xylabs/react-promise'\nimport type { QuickTipButtonProps } from '@xylabs/react-quick-tip-button'\nimport { assertEx, isDefined } from '@xylabs/sdk-js'\nimport type { HydratedTransactionValidationError, SignedHydratedTransactionWithStorageMeta } from '@xyo-network/xl1-sdk'\nimport { isSignedHydratedTransactionWithStorageMeta, validateTransaction } from '@xyo-network/xl1-sdk'\nimport React, { useMemo } from 'react'\n\nconst InvalidIcon = ({ ref, ...props }: SvgIconProps\n & { ref?: React.Ref<SVGSVGElement | null> }) => <CancelRoundedIcon color=\"error\" ref={ref} {...props} />\nInvalidIcon.displayName = 'InvalidIcon'\n\nexport interface TxVerification extends QuickTipButtonProps {\n iconColors?: boolean\n transaction?: SignedHydratedTransactionWithStorageMeta | null\n}\n\nexport const TransactionVerification: React.FC<TxVerification> = ({ transaction, ...props }) => {\n const [validationErrors, validateError] = usePromise(async () => {\n if (isDefined(transaction)) {\n const resolvedTransaction = assertEx(isSignedHydratedTransactionWithStorageMeta(transaction)\n ? transaction\n : undefined, () => 'Transaction must be a SignedHydratedTransactionWithStorageMeta')\n return await validateTransaction({ singletons: {}, chainId: resolvedTransaction[0].chain }, resolvedTransaction)\n }\n }, [transaction])\n\n const resolvedErrors = useMemo(() => {\n const errors: (Error | HydratedTransactionValidationError)[] = []\n if (isDefined(validationErrors)) {\n if (Array.isArray(validationErrors)) errors.push(...validationErrors)\n if (validationErrors instanceof Error) errors.push(validationErrors)\n if (isDefined(validateError)) errors.push(validateError)\n return errors\n }\n }, [validateError, validationErrors])\n\n return (\n <ErrorQuickTipButton boundWitnessType=\"Transaction\" errors={resolvedErrors} {...props} />\n )\n}\n", "import type { CardProps } from '@mui/material'\nimport {\n Card, CardContent, CardHeader, Grid, Icon, IconButton, Link, Tooltip, Typography,\n} from '@mui/material'\nimport {\n ellipsize, isDefined, isUndefined,\n} from '@xylabs/sdk-js'\nimport { useEvent } from '@xyo-network/react-event'\nimport { BlockiesAvatarAddress } from '@xyo-network/xl1-blockies'\nimport { DetailsStack, LabelValueStack } from '@xyo-network/xl1-react-client-sdk'\nimport type { HydratedTransactionInstance } from '@xyo-network/xl1-sdk'\nimport React from 'react'\nimport { FaCopy } from 'react-icons/fa'\nimport { GiReceiveMoney, GiSandsOfTime } from 'react-icons/gi'\nimport { IoStatsChartOutline } from 'react-icons/io5'\n\nimport { useTransactionDetails } from './hooks/index.ts'\n\nexport interface TransactionBoundWitnessCardProps extends CardProps {\n linkedAddress?: boolean\n wrapper?: HydratedTransactionInstance\n}\n\nexport const TransactionBoundWitnessCard: React.FC<TransactionBoundWitnessCardProps> = ({\n linkedAddress = true, wrapper, ...props\n}) => {\n const chainId = wrapper?.boundWitness.chain\n\n const {\n stats, fees, blockDuration,\n } = useTransactionDetails(wrapper)\n\n const [ref, dispatch] = useEvent<HTMLDivElement>()\n\n if (isUndefined(wrapper) || isUndefined(stats) || isUndefined(fees) || isUndefined(blockDuration)) return null\n return (\n <Card ref={ref} {...props}>\n <CardHeader\n title={(\n <Typography\n onClick={() => linkedAddress && dispatch('address', 'click', wrapper.boundWitness.from)}\n variant=\"body2\"\n sx={{\n maxWidth: '100%', textOverflow: 'ellipsis', overflow: 'hidden', fontFamily: 'monospace',\n }}\n >\n {linkedAddress\n ? (\n <Link sx={{ cursor: 'pointer' }}>{wrapper?.boundWitness.from}</Link>\n )\n : wrapper?.boundWitness.from}\n </Typography>\n )}\n subheader={isDefined(chainId)\n ? (\n <Typography\n variant=\"subtitle2\"\n sx={{\n fontFamily: 'monospace', fontSize: 12, opacity: 0.5, mt: 0.25,\n }}\n title={`chain: ${chainId}`}\n >\n {ellipsize(chainId, 8)}\n <IconButton size=\"small\" onClick={() => void navigator.clipboard.writeText(chainId)}>\n <Icon sx={{ fontSize: '0.7rem' }}>\n <FaCopy />\n </Icon>\n </IconButton>\n </Typography>\n )\n : null}\n avatar={(\n <Tooltip title={`From Address - ${wrapper?.boundWitness.from}`}>\n <BlockiesAvatarAddress\n address={wrapper?.boundWitness.from}\n onClick={() => dispatch('address', 'click', wrapper.boundWitness.from)}\n size={21}\n sx={{ cursor: 'pointer' }}\n />\n </Tooltip>\n )}\n />\n <CardContent>\n <Grid container spacing={6} sx={{ width: '100%' }}>\n <Grid size={{\n xs: 12, sm: 6, md: 4,\n }}\n >\n <DetailsStack IconComponent={IoStatsChartOutline} heading=\"Stats\" tooltipTitle=\"Transaction Statistics\">\n <LabelValueStack labels={stats.labels} values={stats.values} />\n </DetailsStack>\n </Grid>\n <Grid size={{\n xs: 12, sm: 6, md: 4,\n }}\n >\n <DetailsStack IconComponent={GiReceiveMoney} heading=\"Fees\" tooltipTitle=\"Fees offered to the producer\">\n <LabelValueStack labels={fees.labels} values={fees.values} />\n </DetailsStack>\n </Grid>\n <Grid size={{\n xs: 12, sm: 6, md: 4,\n }}\n >\n <DetailsStack IconComponent={GiSandsOfTime} heading=\"Block Duration\" tooltipTitle=\"Block window for the transaction to be valid\">\n <LabelValueStack labels={blockDuration.labels} values={blockDuration.values} />\n </DetailsStack>\n </Grid>\n </Grid>\n </CardContent>\n </Card>\n )\n}\n", "import { isUndefined } from '@xylabs/sdk-js'\nimport type { HydratedTransactionInstance } from '@xyo-network/xl1-sdk'\nimport { useMemo } from 'react'\n\nimport {\n formatFee, formatNumber, formatResults,\n} from '../../../../lib/index.ts'\n\nexport const useTransactionDetails = (wrapper: HydratedTransactionInstance | undefined) => {\n const stats = useMemo(() => {\n if (isUndefined(wrapper)) return\n const stats = {\n 'Reward': formatNumber(wrapper.reward()),\n 'On Chain Payloads': formatNumber(wrapper.elevatedPayloadCount),\n 'Public Payloads': formatNumber(Object.values(wrapper.publicExternalPayloads).length),\n 'Referenced Payloads': formatNumber(Object.entries(wrapper.privateExternalPayloads).length),\n 'Signatures': formatNumber(wrapper.signatureCount),\n }\n\n return formatResults(stats)\n }, [wrapper])\n\n const fees = useMemo(() => {\n if (isUndefined(wrapper)) return\n const fees = {\n 'Base': formatFee(wrapper.fees.base),\n 'Gas': formatFee(wrapper.fees.gasPrice),\n 'Priority': formatFee(wrapper.fees.priority),\n 'Gas Limit': formatFee(wrapper.fees.gasLimit),\n }\n\n return formatResults(fees)\n }, [wrapper])\n\n const blockDuration = useMemo(() => {\n if (isUndefined(wrapper)) return\n const blockDuration = {\n 'Expiration': wrapper.boundWitness.exp.toLocaleString(navigator.language ?? 'en-US'),\n 'Not Before': wrapper.boundWitness.nbf.toLocaleString(navigator.language ?? 'en-US'),\n }\n\n return formatResults(blockDuration)\n }, [wrapper])\n\n return {\n stats, fees, blockDuration,\n }\n}\n", "import { ErrorRender } from '@xylabs/react-error'\nimport { type FlexBoxProps, FlexCol } from '@xylabs/react-flexbox'\nimport { usePromise } from '@xylabs/react-promise'\nimport {\n BoundWitnessSignatureTable, HashHeadingPaper, HeadingPaper,\n} from '@xyo-network/react-boundwitness-plugin'\nimport type { SignedHydratedTransactionWithStorageMeta } from '@xyo-network/xl1-sdk'\nimport { HydratedTransactionWrapper } from '@xyo-network/xl1-sdk'\nimport React from 'react'\nimport { FaSignature } from 'react-icons/fa'\nimport { VscSymbolNamespace } from 'react-icons/vsc'\n\nimport { PayloadTableFlexbox } from '../PayloadTable.tsx'\nimport { TransactionActions, TransactionBoundWitnessCard } from './card/index.ts'\nimport { useTransactionPayloadTypes } from './hooks/index.ts'\n\nexport interface TransactionBoundWitnessDetailsProps extends FlexBoxProps {\n linkedProducerAddress?: boolean\n transaction?: SignedHydratedTransactionWithStorageMeta | null\n}\n\nexport const TransactionBoundWitnessDetails: React.FC<TransactionBoundWitnessDetailsProps> = ({\n linkedProducerAddress, transaction, ...props\n}) => {\n const [wrapper, wrapperError] = usePromise(async () => {\n if (transaction) {\n return await HydratedTransactionWrapper.parse(transaction)\n }\n }, [transaction])\n\n const {\n elevatedPayloadHashes, elevatedPayloadSchemas, elevatedPayloadSetsError,\n publicPayloadHashes, publicPayloadSchemas, publicPayloadsError,\n referencedPayloadHashes, referencedPayloadSchemas, referencedPayloadsError,\n } = useTransactionPayloadTypes(wrapper)\n\n return (\n <FlexCol\n {...props}\n sx={[{\n alignItems: 'stretch',\n rowGap: 2,\n }, ...(Array.isArray(props.sx) ? props.sx : [props.sx])]}\n >\n <HashHeadingPaper\n hash={wrapper?.boundWitness?._hash}\n paperProps={{ sx: { p: 2 } }}\n AdornmentEnd={<TransactionActions transaction={transaction} />}\n identiconProps={{ sx: { p: 0.75 }, size: 24 }}\n />\n <ErrorRender error={wrapperError} scope=\"wrapperError:TransactionBoundWitnessDetails.tsx\" />\n <ErrorRender error={elevatedPayloadSetsError} scope=\"elevatedPayloadSetsError:TransactionBoundWitnessDetails.tsx\" />\n <ErrorRender error={publicPayloadsError} scope=\"publicPayloadsError:TransactionBoundWitnessDetails.tsx\" />\n {referencedPayloadsError.map(error =>\n <ErrorRender key={error.message} error={error} scope=\"referencedPayloadsError:TransactionBoundWitnessDetails.tsx\" />)}\n <TransactionBoundWitnessCard elevation={4} linkedAddress={linkedProducerAddress} wrapper={wrapper} />\n <PayloadTableFlexbox\n eventNoun=\"payload\"\n clickableFields={['hash']}\n tooltip=\"Payloads included in the transaction that are elevated and validated.\"\n IconComponent={<VscSymbolNamespace />}\n hashes={elevatedPayloadHashes}\n headingTitle=\"On Chain Payloads\"\n schemas={elevatedPayloadSchemas}\n sx={{ mb: 1 }}\n />\n {(publicPayloadHashes?.length ?? 0) > 0\n ? (\n <PayloadTableFlexbox\n eventNoun=\"payload\"\n clickableFields={['hash']}\n tooltip=\"Public payloads included in the transaction.\"\n IconComponent={<VscSymbolNamespace />}\n hashes={publicPayloadHashes}\n headingTitle=\"Public Payloads\"\n schemas={publicPayloadSchemas}\n sx={{ mb: 1 }}\n />\n )\n : null}\n {(referencedPayloadHashes?.length ?? 0) > 0\n ? (\n <PayloadTableFlexbox\n eventNoun=\"payload\"\n clickableFields={['hash']}\n tooltip=\"Payload hashes referenced by the transaction but not included.\"\n IconComponent={<VscSymbolNamespace />}\n hashes={referencedPayloadHashes}\n headingTitle=\"Referenced Payloads\"\n schemas={referencedPayloadSchemas}\n sx={{ mb: 1 }}\n />\n )\n : null}\n <FlexCol\n sx={{\n alignItems: 'stretch',\n rowGap: 1,\n mb: 1,\n }}\n >\n <HeadingPaper IconComponent={<FaSignature />} heading=\"Signatures\" />\n <BoundWitnessSignatureTable block={wrapper?.boundWitness} />\n </FlexCol>\n </FlexCol>\n )\n}\n", "import { usePromise } from '@xylabs/react-promise'\nimport type { Hash } from '@xylabs/sdk-js'\nimport { isDefined, isHash } from '@xylabs/sdk-js'\nimport type { Schema } from '@xyo-network/sdk-js'\nimport { isSchema, PayloadBuilder } from '@xyo-network/sdk-js'\nimport type { HydratedTransactionInstance } from '@xyo-network/xl1-sdk'\nimport { useMemo } from 'react'\n\nimport { formatPayloadsForTable } from '../../../lib/index.ts'\n\nexport const useTransactionPayloadTypes = (wrapper?: HydratedTransactionInstance) => {\n const [elevatedPayloadSets, elevatedPayloadSetsError] = usePromise(async () => {\n if (isDefined(wrapper)) {\n const elevatedPayloads = wrapper.elevatedPayloads\n const pairs = await PayloadBuilder.hashPairs(elevatedPayloads)\n return formatPayloadsForTable(pairs)\n } else {\n return { hashes: [], schemas: [] }\n }\n }, [wrapper])\n\n const [publicPayloads, publicPayloadsError] = usePromise(async () => {\n if (isDefined(wrapper)) {\n const publicPayloads = wrapper.publicExternalPayloads\n const pairs = await PayloadBuilder.hashPairs(publicPayloads)\n return formatPayloadsForTable(pairs)\n } else {\n return { hashes: [], schemas: [] }\n }\n }, [wrapper])\n\n const [referencedPayloads, referencedPayloadsError] = useMemo(() => {\n const ret = { hashes: [] as Hash[], schemas: [] as Schema[] }\n const errors: Error[] = []\n if (isDefined(wrapper)) {\n const referencedPayloads = wrapper.privateExternalPayloads\n for (const [hash, schema] of Object.entries(referencedPayloads)) {\n const hashValid = isHash(hash)\n const schemaValid = isSchema(schema)\n if (hashValid) ret.hashes.push(hash)\n if (schemaValid) ret.schemas.push(schema)\n if (!hashValid && !schemaValid) {\n errors.push(new Error(`Unexpected payload or schema type for hash ${hash}: ${schema}`))\n }\n }\n }\n return [ret, errors] as const\n }, [wrapper])\n\n const { hashes: elevatedPayloadHashes, schemas: elevatedPayloadSchemas } = elevatedPayloadSets ?? {}\n const { hashes: publicPayloadHashes, schemas: publicPayloadSchemas } = publicPayloads ?? {}\n const { hashes: referencedPayloadHashes, schemas: referencedPayloadSchemas } = referencedPayloads ?? {}\n\n return {\n elevatedPayloadHashes,\n elevatedPayloadSchemas,\n elevatedPayloadSetsError,\n publicPayloadHashes,\n publicPayloadSchemas,\n publicPayloadsError,\n referencedPayloadHashes,\n referencedPayloadSchemas,\n referencedPayloadsError,\n }\n}\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": ["ErrorRender", "FlexCol", "usePromise", "HeadingPaper", "usePayloadHash", "useMemo", "VscSymbolMethod", "VscSymbolNamespace", "isDefined", "jsx", "jsx", "jsxs", "isUndefined", "Tooltip", "ellipsize", "isDefined", "jsx", "jsxs", "usePromise", "isUndefined", "useMemo", "useMemo", "isUndefined", "stats", "payloads", "usePromise", "stepHashes", "jsx", "jsxs", "isUndefined", "jsx", "jsxs", "usePromise", "usePayloadHash", "useMemo", "FlexCol", "ErrorRender", "HeadingPaper", "VscSymbolNamespace", "VscSymbolMethod", "DataObjectIcon", "FlexRow", "QuickTipButton", "ellipsize", "BWPreviousHashQuickTipButton", "usePayloadHash", "CancelRoundedIcon", "ErrorQuickTipButton", "usePromise", "assertEx", "isDefined", "useMemo", "jsx", "InvalidIcon", "jsx", "jsxs", "usePayloadHash", "FlexRow", "BWPreviousHashQuickTipButton", "QuickTipButton", "DataObjectIcon", "ellipsize", "Card", "CardContent", "CardHeader", "Grid", "Icon", "IconButton", "Link", "Tooltip", "Typography", "ellipsize", "isDefined", "isUndefined", "useEvent", "BlockiesAvatarAddress", "DetailsStack", "LabelValueStack", "FaCopy", "IoStatsChartOutline", "isUndefined", "useMemo", "useMemo", "isUndefined", "stats", "fees", "blockDuration", "jsx", "jsxs", "useEvent", "isUndefined", "Card", "CardHeader", "Typography", "Link", "isDefined", "ellipsize", "IconButton", "Icon", "FaCopy", "Tooltip", "BlockiesAvatarAddress", "CardContent", "Grid", "DetailsStack", "IoStatsChartOutline", "LabelValueStack", "ErrorRender", "FlexCol", "usePromise", "BoundWitnessSignatureTable", "HashHeadingPaper", "HeadingPaper", "FaSignature", "VscSymbolNamespace", "usePromise", "isDefined", "PayloadBuilder", "useMemo", "usePromise", "isDefined", "PayloadBuilder", "publicPayloads", "useMemo", "referencedPayloads", "jsx", "jsxs", "usePromise", "FlexCol", "HashHeadingPaper", "ErrorRender", "VscSymbolNamespace", "HeadingPaper", "FaSignature", "BoundWitnessSignatureTable"]
|
|
7
7
|
}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"$schema": "http://json.schemastore.org/package.json",
|
|
3
3
|
"name": "@xyo-network/react-chain-boundwitness",
|
|
4
|
-
"version": "
|
|
4
|
+
"version": "2.0.0",
|
|
5
5
|
"description": "XYO Layer One React SDK BoundWitness",
|
|
6
6
|
"homepage": "https://xylabs.com",
|
|
7
7
|
"bugs": {
|
|
@@ -39,11 +39,10 @@
|
|
|
39
39
|
"README.md"
|
|
40
40
|
],
|
|
41
41
|
"dependencies": {
|
|
42
|
-
"@xyo-network/chain-
|
|
43
|
-
"@xyo-network/chain-
|
|
44
|
-
"@xyo-network/react-chain-blockchain": "~
|
|
45
|
-
"@xyo-network/chain-
|
|
46
|
-
"@xyo-network/react-chain-shared": "~1.23.2"
|
|
42
|
+
"@xyo-network/chain-validation": "~2.0.0",
|
|
43
|
+
"@xyo-network/chain-wrappers": "~2.0.0",
|
|
44
|
+
"@xyo-network/react-chain-blockchain": "~2.0.0",
|
|
45
|
+
"@xyo-network/chain-utils": "~2.0.0"
|
|
47
46
|
},
|
|
48
47
|
"devDependencies": {
|
|
49
48
|
"@bitauth/libauth": "~3.0.0",
|
|
@@ -51,7 +50,7 @@
|
|
|
51
50
|
"@emotion/styled": "^11.14.1",
|
|
52
51
|
"@metamask/json-rpc-engine": "^10.5.0",
|
|
53
52
|
"@metamask/providers": "^22.1.1",
|
|
54
|
-
"@metamask/utils": "
|
|
53
|
+
"@metamask/utils": "^11.11.0",
|
|
55
54
|
"@mui/icons-material": "~9.0.1",
|
|
56
55
|
"@mui/material": "~9.0.1",
|
|
57
56
|
"@mui/system": "~9.0.1",
|
|
@@ -64,92 +63,94 @@
|
|
|
64
63
|
"@scure/base": "~2.2.0",
|
|
65
64
|
"@scure/bip39": "~2.2.0",
|
|
66
65
|
"@storybook/react-vite": "^10.4.0",
|
|
67
|
-
"@
|
|
68
|
-
"@
|
|
69
|
-
"@xylabs/
|
|
70
|
-
"@xylabs/
|
|
71
|
-
"@xylabs/
|
|
72
|
-
"@xylabs/react-
|
|
73
|
-
"@xylabs/react-
|
|
74
|
-
"@xylabs/react-
|
|
75
|
-
"@xylabs/react-
|
|
76
|
-
"@xylabs/react-
|
|
77
|
-
"@xylabs/react-
|
|
78
|
-
"@xylabs/react-
|
|
79
|
-
"@xylabs/react-
|
|
80
|
-
"@xylabs/react-
|
|
81
|
-
"@xylabs/react-
|
|
82
|
-
"@xylabs/react-
|
|
83
|
-
"@xylabs/react-
|
|
84
|
-
"@xylabs/
|
|
85
|
-
"@xylabs/sdk-
|
|
86
|
-
"@xylabs/threads": "~
|
|
87
|
-
"@xylabs/toolchain": "~8.
|
|
88
|
-
"@xylabs/tsconfig": "~8.
|
|
89
|
-
"@xylabs/tsconfig-dom": "~8.
|
|
90
|
-
"@xylabs/tsconfig-react": "~8.
|
|
91
|
-
"@xyo-network/account": "~
|
|
92
|
-
"@xyo-network/account-model": "~
|
|
93
|
-
"@xyo-network/api": "~
|
|
94
|
-
"@xyo-network/api-models": "~
|
|
95
|
-
"@xyo-network/boundwitness-builder": "~
|
|
96
|
-
"@xyo-network/boundwitness-model": "~
|
|
97
|
-
"@xyo-network/boundwitness-validator": "~
|
|
98
|
-
"@xyo-network/boundwitness-wrapper": "~
|
|
99
|
-
"@xyo-network/config-payload-plugin": "~
|
|
100
|
-
"@xyo-network/diviner-model": "
|
|
101
|
-
"@xyo-network/diviner-schema-list": "~
|
|
102
|
-
"@xyo-network/diviner-schema-stats": "~
|
|
103
|
-
"@xyo-network/hash": "~
|
|
104
|
-
"@xyo-network/huri": "~
|
|
105
|
-
"@xyo-network/manifest-model": "~
|
|
106
|
-
"@xyo-network/module-model": "
|
|
107
|
-
"@xyo-network/network": "~
|
|
66
|
+
"@types/react": "^19.2.15",
|
|
67
|
+
"@xylabs/fetch": "~6.0.2",
|
|
68
|
+
"@xylabs/geo": "~6.0.2",
|
|
69
|
+
"@xylabs/pixel": "~6.0.2",
|
|
70
|
+
"@xylabs/react-animation": "~9.0",
|
|
71
|
+
"@xylabs/react-async-effect": "~9.0",
|
|
72
|
+
"@xylabs/react-button": "~9.0",
|
|
73
|
+
"@xylabs/react-error": "~9.0",
|
|
74
|
+
"@xylabs/react-flexbox": "~9.0",
|
|
75
|
+
"@xylabs/react-hooks": "~9.0",
|
|
76
|
+
"@xylabs/react-identicon": "~9.0",
|
|
77
|
+
"@xylabs/react-link": "~9.0",
|
|
78
|
+
"@xylabs/react-promise": "~9.0",
|
|
79
|
+
"@xylabs/react-quick-tip-button": "~9.0",
|
|
80
|
+
"@xylabs/react-select": "~9.0",
|
|
81
|
+
"@xylabs/react-shared": "~9.0",
|
|
82
|
+
"@xylabs/react-theme": "~9.0.0",
|
|
83
|
+
"@xylabs/sdk-js": "^6.0.2",
|
|
84
|
+
"@xylabs/sdk-react": "~9.0",
|
|
85
|
+
"@xylabs/threads": "~6.0.2",
|
|
86
|
+
"@xylabs/toolchain": "~8.1.1",
|
|
87
|
+
"@xylabs/tsconfig": "~8.1.1",
|
|
88
|
+
"@xylabs/tsconfig-dom": "~8.1.1",
|
|
89
|
+
"@xylabs/tsconfig-react": "~8.1.1",
|
|
90
|
+
"@xyo-network/account": "~6.0.0",
|
|
91
|
+
"@xyo-network/account-model": "~6.0.0",
|
|
92
|
+
"@xyo-network/api": "~6.0",
|
|
93
|
+
"@xyo-network/api-models": "~6.0",
|
|
94
|
+
"@xyo-network/boundwitness-builder": "~6.0.0",
|
|
95
|
+
"@xyo-network/boundwitness-model": "~6.0.0",
|
|
96
|
+
"@xyo-network/boundwitness-validator": "~6.0",
|
|
97
|
+
"@xyo-network/boundwitness-wrapper": "~6.0.0",
|
|
98
|
+
"@xyo-network/config-payload-plugin": "~6.0.0",
|
|
99
|
+
"@xyo-network/diviner-model": "~6.0",
|
|
100
|
+
"@xyo-network/diviner-schema-list": "~6.0",
|
|
101
|
+
"@xyo-network/diviner-schema-stats": "~6.0",
|
|
102
|
+
"@xyo-network/hash": "~6.0",
|
|
103
|
+
"@xyo-network/huri": "~6.0",
|
|
104
|
+
"@xyo-network/manifest-model": "~6.0.0",
|
|
105
|
+
"@xyo-network/module-model": "~6.0",
|
|
106
|
+
"@xyo-network/network": "~6.0",
|
|
108
107
|
"@xyo-network/node-core-types": "~4.2.2",
|
|
109
|
-
"@xyo-network/node-memory": "~
|
|
110
|
-
"@xyo-network/node-model": "
|
|
111
|
-
"@xyo-network/payload-builder": "~
|
|
112
|
-
"@xyo-network/payload-model": "~
|
|
113
|
-
"@xyo-network/payload-plugin": "~
|
|
114
|
-
"@xyo-network/payload-validator": "
|
|
115
|
-
"@xyo-network/payload-wrapper": "~
|
|
116
|
-
"@xyo-network/payloadset-plugin": "
|
|
117
|
-
"@xyo-network/query-payload-plugin": "~
|
|
118
|
-
"@xyo-network/react-boundwitness-plugin": "~
|
|
119
|
-
"@xyo-network/react-error": "~
|
|
120
|
-
"@xyo-network/react-event": "~
|
|
121
|
-
"@xyo-network/react-payload-raw-info": "~
|
|
122
|
-
"@xyo-network/react-payload-table": "~
|
|
123
|
-
"@xyo-network/react-shared": "~
|
|
124
|
-
"@xyo-network/react-table": "~
|
|
125
|
-
"@xyo-network/schema-cache": "~
|
|
126
|
-
"@xyo-network/schema-payload-plugin": "~
|
|
127
|
-
"@xyo-network/sdk-js": "
|
|
128
|
-
"@xyo-network/sdk-protocol-js": "~
|
|
108
|
+
"@xyo-network/node-memory": "~6.0",
|
|
109
|
+
"@xyo-network/node-model": "~6.0",
|
|
110
|
+
"@xyo-network/payload-builder": "~6.0.0",
|
|
111
|
+
"@xyo-network/payload-model": "~6.0.0",
|
|
112
|
+
"@xyo-network/payload-plugin": "~6.0",
|
|
113
|
+
"@xyo-network/payload-validator": "~6.0",
|
|
114
|
+
"@xyo-network/payload-wrapper": "~6.0.0",
|
|
115
|
+
"@xyo-network/payloadset-plugin": "~6.0",
|
|
116
|
+
"@xyo-network/query-payload-plugin": "~6.0.0",
|
|
117
|
+
"@xyo-network/react-boundwitness-plugin": "~9.0",
|
|
118
|
+
"@xyo-network/react-error": "~9.0",
|
|
119
|
+
"@xyo-network/react-event": "~9.0",
|
|
120
|
+
"@xyo-network/react-payload-raw-info": "~9.0",
|
|
121
|
+
"@xyo-network/react-payload-table": "~9.0",
|
|
122
|
+
"@xyo-network/react-shared": "~9.0",
|
|
123
|
+
"@xyo-network/react-table": "~9.0",
|
|
124
|
+
"@xyo-network/schema-cache": "~6.0",
|
|
125
|
+
"@xyo-network/schema-payload-plugin": "~6.0",
|
|
126
|
+
"@xyo-network/sdk-js": "~6.0",
|
|
127
|
+
"@xyo-network/sdk-protocol-js": "~6.0",
|
|
129
128
|
"@xyo-network/typeof": "~5.3.30",
|
|
130
|
-
"@xyo-network/wallet": "~
|
|
131
|
-
"@xyo-network/wallet-model": "^
|
|
132
|
-
"@xyo-network/xl1-blockies": "
|
|
133
|
-
"@xyo-network/xl1-react-client-sdk": "^
|
|
134
|
-
"@xyo-network/xl1-sdk": "
|
|
129
|
+
"@xyo-network/wallet": "~6.0",
|
|
130
|
+
"@xyo-network/wallet-model": "^6.0.0",
|
|
131
|
+
"@xyo-network/xl1-blockies": "~2.0",
|
|
132
|
+
"@xyo-network/xl1-react-client-sdk": "^2.0.0",
|
|
133
|
+
"@xyo-network/xl1-sdk": "~2.0",
|
|
135
134
|
"ajv": "^8.20.0",
|
|
136
135
|
"async-mutex": "^0.5.0",
|
|
137
136
|
"bn.js": "^5.2.3",
|
|
138
137
|
"bowser": "^2.14.1",
|
|
139
138
|
"buffer": "^6.0.3",
|
|
140
139
|
"chalk": "^5.6.2",
|
|
140
|
+
"clsx": "~2.1.1",
|
|
141
141
|
"cosmiconfig": "^9.0.1",
|
|
142
142
|
"debug": "~4.4.3",
|
|
143
|
-
"eslint": "^10.
|
|
143
|
+
"eslint": "^10.4.0",
|
|
144
144
|
"ethers": "^6.16.0",
|
|
145
145
|
"fast-deep-equal": "~3.1.3",
|
|
146
146
|
"hash-wasm": "~4.12.0",
|
|
147
147
|
"idb": "^8.0.3",
|
|
148
|
-
"js-cookie": "~3.0.
|
|
149
|
-
"lru-cache": "^11.
|
|
150
|
-
"mapbox-gl": "^3.
|
|
148
|
+
"js-cookie": "~3.0.7",
|
|
149
|
+
"lru-cache": "^11.5.0",
|
|
150
|
+
"mapbox-gl": "^3.24.0",
|
|
151
151
|
"md5": "~2.3.0",
|
|
152
|
-
"mixpanel-browser": "~2.
|
|
152
|
+
"mixpanel-browser": "~2.79",
|
|
153
|
+
"numeral": "~2.0.6",
|
|
153
154
|
"observable-fns": "~0.6.1",
|
|
154
155
|
"pako": "^2.1.0",
|
|
155
156
|
"prop-types": "^15.8.1",
|
|
@@ -167,12 +168,15 @@
|
|
|
167
168
|
"storybook": "^10.4.0",
|
|
168
169
|
"typescript": "~6.0.3",
|
|
169
170
|
"uuid": "~14.0.0",
|
|
171
|
+
"viem": "^2.50.4",
|
|
170
172
|
"vite": "^8.0.13",
|
|
171
173
|
"wasm-feature-detect": "~1.8.0",
|
|
172
174
|
"webextension-polyfill": "^0.12.0",
|
|
173
175
|
"zod": "~4.4.3",
|
|
174
|
-
"
|
|
175
|
-
"@xyo-network/react-chain-
|
|
176
|
+
"zustand": "~5.0.13",
|
|
177
|
+
"@xyo-network/react-chain-network": "~2.0.0",
|
|
178
|
+
"@xyo-network/react-chain-provider": "~2.0.0",
|
|
179
|
+
"@xyo-network/react-chain-shared": "~2.0.0"
|
|
176
180
|
},
|
|
177
181
|
"peerDependencies": {
|
|
178
182
|
"@bitauth/libauth": "~3.0",
|
|
@@ -180,7 +184,7 @@
|
|
|
180
184
|
"@emotion/styled": "^11.14",
|
|
181
185
|
"@metamask/json-rpc-engine": "^10.3",
|
|
182
186
|
"@metamask/providers": "^22.1",
|
|
183
|
-
"@metamask/utils": "
|
|
187
|
+
"@metamask/utils": "^11.11",
|
|
184
188
|
"@mui/icons-material": "~9.0",
|
|
185
189
|
"@mui/material": "~9.0",
|
|
186
190
|
"@mui/system": "~9.0",
|
|
@@ -193,74 +197,75 @@
|
|
|
193
197
|
"@scure/base": "~2.2",
|
|
194
198
|
"@scure/bip39": "~2.2",
|
|
195
199
|
"@storybook/react-vite": "^10.3",
|
|
196
|
-
"@
|
|
197
|
-
"@xylabs/
|
|
198
|
-
"@xylabs/
|
|
199
|
-
"@xylabs/
|
|
200
|
-
"@xylabs/react-
|
|
201
|
-
"@xylabs/react-
|
|
202
|
-
"@xylabs/react-
|
|
203
|
-
"@xylabs/react-
|
|
204
|
-
"@xylabs/react-
|
|
205
|
-
"@xylabs/react-
|
|
206
|
-
"@xylabs/react-
|
|
207
|
-
"@xylabs/react-
|
|
208
|
-
"@xylabs/react-
|
|
209
|
-
"@xylabs/react-
|
|
210
|
-
"@xylabs/react-
|
|
211
|
-
"@xylabs/react-
|
|
212
|
-
"@xylabs/
|
|
213
|
-
"@xylabs/sdk-
|
|
214
|
-
"@xylabs/threads": "~
|
|
215
|
-
"@xyo-network/account": "~
|
|
216
|
-
"@xyo-network/account-model": "~
|
|
217
|
-
"@xyo-network/api": "~
|
|
218
|
-
"@xyo-network/api-models": "~
|
|
219
|
-
"@xyo-network/boundwitness-builder": "~
|
|
220
|
-
"@xyo-network/boundwitness-model": "~
|
|
221
|
-
"@xyo-network/boundwitness-validator": "~
|
|
222
|
-
"@xyo-network/boundwitness-wrapper": "~
|
|
223
|
-
"@xyo-network/config-payload-plugin": "~
|
|
224
|
-
"@xyo-network/diviner-model": "^
|
|
225
|
-
"@xyo-network/diviner-schema-list": "~
|
|
226
|
-
"@xyo-network/diviner-schema-stats": "~
|
|
227
|
-
"@xyo-network/huri": "~
|
|
228
|
-
"@xyo-network/manifest-model": "~
|
|
229
|
-
"@xyo-network/module-model": "^
|
|
230
|
-
"@xyo-network/network": "~
|
|
200
|
+
"@xylabs/fetch": "^6.0",
|
|
201
|
+
"@xylabs/geo": "^6.0",
|
|
202
|
+
"@xylabs/pixel": "~6.0",
|
|
203
|
+
"@xylabs/react-animation": "~9.0",
|
|
204
|
+
"@xylabs/react-async-effect": "~9.0",
|
|
205
|
+
"@xylabs/react-button": "~9.0",
|
|
206
|
+
"@xylabs/react-error": "~9.0",
|
|
207
|
+
"@xylabs/react-flexbox": "~9.0",
|
|
208
|
+
"@xylabs/react-hooks": "~9.0",
|
|
209
|
+
"@xylabs/react-identicon": "~9.0",
|
|
210
|
+
"@xylabs/react-link": "~9.0",
|
|
211
|
+
"@xylabs/react-promise": "~9.0",
|
|
212
|
+
"@xylabs/react-quick-tip-button": "~9.0",
|
|
213
|
+
"@xylabs/react-select": "~9.0",
|
|
214
|
+
"@xylabs/react-shared": "~9.0",
|
|
215
|
+
"@xylabs/react-theme": "~9.0",
|
|
216
|
+
"@xylabs/sdk-js": "^6.0",
|
|
217
|
+
"@xylabs/sdk-react": "~9.0",
|
|
218
|
+
"@xylabs/threads": "~6.0",
|
|
219
|
+
"@xyo-network/account": "~6.0",
|
|
220
|
+
"@xyo-network/account-model": "~6.0",
|
|
221
|
+
"@xyo-network/api": "~6.0",
|
|
222
|
+
"@xyo-network/api-models": "~6.0",
|
|
223
|
+
"@xyo-network/boundwitness-builder": "~6.0",
|
|
224
|
+
"@xyo-network/boundwitness-model": "~6.0",
|
|
225
|
+
"@xyo-network/boundwitness-validator": "~6.0",
|
|
226
|
+
"@xyo-network/boundwitness-wrapper": "~6.0",
|
|
227
|
+
"@xyo-network/config-payload-plugin": "~6.0",
|
|
228
|
+
"@xyo-network/diviner-model": "^6.0",
|
|
229
|
+
"@xyo-network/diviner-schema-list": "~6.0",
|
|
230
|
+
"@xyo-network/diviner-schema-stats": "~6.0",
|
|
231
|
+
"@xyo-network/huri": "~6.0",
|
|
232
|
+
"@xyo-network/manifest-model": "~6.0",
|
|
233
|
+
"@xyo-network/module-model": "^6.0",
|
|
234
|
+
"@xyo-network/network": "~6.0",
|
|
231
235
|
"@xyo-network/node-core-types": "~4.2",
|
|
232
|
-
"@xyo-network/node-memory": "~
|
|
233
|
-
"@xyo-network/node-model": "^
|
|
234
|
-
"@xyo-network/payload-builder": "~
|
|
235
|
-
"@xyo-network/payload-model": "~
|
|
236
|
-
"@xyo-network/payload-plugin": "~
|
|
237
|
-
"@xyo-network/payload-validator": "^
|
|
238
|
-
"@xyo-network/payload-wrapper": "~
|
|
239
|
-
"@xyo-network/payloadset-plugin": "^
|
|
240
|
-
"@xyo-network/query-payload-plugin": "~
|
|
241
|
-
"@xyo-network/react-boundwitness-plugin": "~
|
|
242
|
-
"@xyo-network/react-error": "~
|
|
243
|
-
"@xyo-network/react-event": "~
|
|
244
|
-
"@xyo-network/react-payload-raw-info": "~
|
|
245
|
-
"@xyo-network/react-payload-table": "~
|
|
246
|
-
"@xyo-network/react-shared": "~
|
|
247
|
-
"@xyo-network/react-table": "~
|
|
248
|
-
"@xyo-network/schema-cache": "~
|
|
249
|
-
"@xyo-network/schema-payload-plugin": "~
|
|
250
|
-
"@xyo-network/sdk-js": "^
|
|
251
|
-
"@xyo-network/sdk-protocol-js": "~
|
|
236
|
+
"@xyo-network/node-memory": "~6.0",
|
|
237
|
+
"@xyo-network/node-model": "^6.0",
|
|
238
|
+
"@xyo-network/payload-builder": "~6.0",
|
|
239
|
+
"@xyo-network/payload-model": "~6.0",
|
|
240
|
+
"@xyo-network/payload-plugin": "~6.0",
|
|
241
|
+
"@xyo-network/payload-validator": "^6.0",
|
|
242
|
+
"@xyo-network/payload-wrapper": "~6.0",
|
|
243
|
+
"@xyo-network/payloadset-plugin": "^6.0",
|
|
244
|
+
"@xyo-network/query-payload-plugin": "~6.0",
|
|
245
|
+
"@xyo-network/react-boundwitness-plugin": "~9.0",
|
|
246
|
+
"@xyo-network/react-error": "~9.0",
|
|
247
|
+
"@xyo-network/react-event": "~9.0",
|
|
248
|
+
"@xyo-network/react-payload-raw-info": "~9.0",
|
|
249
|
+
"@xyo-network/react-payload-table": "~9.0",
|
|
250
|
+
"@xyo-network/react-shared": "~9.0",
|
|
251
|
+
"@xyo-network/react-table": "~9.0",
|
|
252
|
+
"@xyo-network/schema-cache": "~6.0",
|
|
253
|
+
"@xyo-network/schema-payload-plugin": "~6.0",
|
|
254
|
+
"@xyo-network/sdk-js": "^6.0",
|
|
255
|
+
"@xyo-network/sdk-protocol-js": "~6.0",
|
|
252
256
|
"@xyo-network/typeof": "~5.3",
|
|
253
|
-
"@xyo-network/wallet": "~
|
|
254
|
-
"@xyo-network/wallet-model": "^
|
|
255
|
-
"@xyo-network/xl1-blockies": "^
|
|
256
|
-
"@xyo-network/xl1-react-client-sdk": "^
|
|
257
|
-
"@xyo-network/xl1-sdk": "^
|
|
257
|
+
"@xyo-network/wallet": "~6.0",
|
|
258
|
+
"@xyo-network/wallet-model": "^6.0",
|
|
259
|
+
"@xyo-network/xl1-blockies": "^2.0",
|
|
260
|
+
"@xyo-network/xl1-react-client-sdk": "^2.0",
|
|
261
|
+
"@xyo-network/xl1-sdk": "^2.0",
|
|
258
262
|
"ajv": "^8.20",
|
|
259
263
|
"async-mutex": "^0.5",
|
|
260
264
|
"bn.js": "^5.2",
|
|
261
265
|
"bowser": "^2.14",
|
|
262
266
|
"buffer": "^6.0",
|
|
263
267
|
"chalk": "^5.6",
|
|
268
|
+
"clsx": "~2.1",
|
|
264
269
|
"cosmiconfig": "^9.0",
|
|
265
270
|
"debug": "~4.4",
|
|
266
271
|
"ethers": "^6.16",
|
|
@@ -271,7 +276,8 @@
|
|
|
271
276
|
"lru-cache": "^11.3",
|
|
272
277
|
"mapbox-gl": "^3.23",
|
|
273
278
|
"md5": "~2.3",
|
|
274
|
-
"mixpanel-browser": "~2.
|
|
279
|
+
"mixpanel-browser": "~2.79",
|
|
280
|
+
"numeral": "~2.0",
|
|
275
281
|
"observable-fns": "~0.6",
|
|
276
282
|
"pako": "^2.1",
|
|
277
283
|
"prop-types": "^15.8",
|
|
@@ -288,10 +294,12 @@
|
|
|
288
294
|
"store2": "~2.14",
|
|
289
295
|
"storybook": "^10.3",
|
|
290
296
|
"uuid": "~14.0",
|
|
297
|
+
"viem": "^2.48",
|
|
291
298
|
"vite": "^8.0",
|
|
292
299
|
"wasm-feature-detect": "~1.8",
|
|
293
300
|
"webextension-polyfill": "^0.12",
|
|
294
|
-
"zod": "~4.4"
|
|
301
|
+
"zod": "~4.4",
|
|
302
|
+
"zustand": "~5.0"
|
|
295
303
|
},
|
|
296
304
|
"engines": {
|
|
297
305
|
"node": ">=24"
|