@xyo-network/react-chain-transfer-plugin 3.0.0 → 3.0.1

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.
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/transfer/box/Details.tsx", "../../src/transfer/card/TransferRenderCard.tsx", "../../src/transfer/card/ListItem.tsx", "../../src/transfer/card/TransferRenderCardHelper.tsx", "../../src/transfer/card/TransferRenderTotalTypography.tsx", "../../src/transfer/Plugin.ts"],
4
- "sourcesContent": ["import type { FlexBoxProps } from '@xylabs/react-flexbox'\nimport { FlexCol } from '@xylabs/react-flexbox'\nimport type { PayloadDetailsRenderProps } from '@xyo-network/react-payload-plugin'\nimport type { Payload } from '@xyo-network/sdk-js'\nimport React from 'react'\n\nimport { TransferRenderCard } from '../card/index.ts'\nimport type { TransferRenderOptions } from '../lib/index.ts'\n\nexport interface TransferRenderBoxDetailsProps extends PayloadDetailsRenderProps, FlexBoxProps {\n options?: TransferRenderOptions\n payload?: Payload\n}\n\nexport const TransferRenderBoxDetails: React.FC<TransferRenderBoxDetailsProps> = ({\n options,\n payload,\n ...props\n}) => {\n return (\n <FlexCol {...props}>\n <TransferRenderCard\n options={options}\n payload={payload}\n />\n </FlexCol>\n )\n}\n", "import type { CardProps } from '@mui/material'\nimport {\n Card, CardContent, CardHeader, List, useMediaQuery, useTheme,\n} from '@mui/material'\nimport { asAddress, asHex } from '@xylabs/sdk-js'\nimport { useEvent } from '@xyo-network/react-event'\nimport type { PayloadDetailsRenderProps } from '@xyo-network/react-payload-plugin'\nimport type { Payload } from '@xyo-network/sdk-js'\nimport { BlockiesAvatar } from '@xyo-network/xl1-blockies'\nimport { asTransfer } from '@xyo-network/xl1-sdk'\nimport React, { useMemo } from 'react'\n\nimport type { TransferRenderOptions } from '../lib/index.ts'\nimport { TransferRenderListItem } from './ListItem.tsx'\nimport { TransferCardHelper } from './TransferRenderCardHelper.tsx'\nimport { TransferRenderTotalTypography } from './TransferRenderTotalTypography.tsx'\n\nexport interface TransferRenderCardProps extends PayloadDetailsRenderProps, CardProps {\n options?: TransferRenderOptions\n payload?: Payload\n}\n\nexport const TransferRenderCard: React.FC<TransferRenderCardProps> = ({\n options, payload, ...props\n}) => {\n const theme = useTheme()\n const isMedium = useMediaQuery(theme => theme.breakpoints.up('sm'))\n const [ref, dispatch] = useEvent<HTMLDivElement>()\n const transfer = asTransfer(payload)\n const { from, transfers } = transfer ?? {}\n\n const transferCardHelper = useMemo(\n () =>\n new TransferCardHelper(isMedium, asTransfer(payload), dispatch, options),\n [isMedium, payload, dispatch, options],\n )\n\n return (\n <Card ref={ref} {...props}>\n <CardHeader\n title={transferCardHelper.addressComponent(from, 'From')}\n slotProps={{\n title: {\n title: from, variant: 'body1', fontFamily: 'monospace',\n },\n }}\n avatar={<BlockiesAvatar sx={{ width: 30, height: 30 }} title={from} blockiesOptions={{ seed: from }} />}\n />\n <CardContent sx={{ '&:last-child': { pb: theme.spacing(0) } }}>\n <List>\n {Object.entries(transfers ?? {}).map(([address, amount]) => (\n <TransferRenderListItem\n key={address}\n address={asAddress(address)}\n amount={asHex(amount)}\n transferCardHelper={transferCardHelper}\n />\n ))}\n </List>\n <TransferRenderTotalTypography\n transferRenderHelper={transferCardHelper}\n sx={{\n // pt matches bottom padding of the ListItem\n width: '100%', justifyContent: 'end', pt: 0.6666666667, pb: theme.spacing(2),\n }}\n />\n </CardContent>\n </Card>\n )\n}\n", "import {\n ListItem, ListItemAvatar, type ListItemProps, ListItemText, Stack, Typography,\n useTheme,\n} from '@mui/material'\nimport type { Address, Hex } from '@xylabs/sdk-js'\nimport {\n asAddress, hexToBigInt, isDefined,\n} from '@xylabs/sdk-js'\nimport { NetworkIcon, useChainNetwork } from '@xyo-network/react-chain-network'\nimport { BlockiesAvatar } from '@xyo-network/xl1-blockies'\nimport React from 'react'\n\nimport type { TransferCardHelper } from './TransferRenderCardHelper.tsx'\n\nexport interface TransferRenderListItem extends ListItemProps {\n address?: Address\n amount?: Hex\n transferCardHelper: TransferCardHelper\n}\n\nexport const TransferRenderListItem: React.FC<TransferRenderListItem> = ({\n address, amount, sx, transferCardHelper, ...props\n}) => {\n const theme = useTheme()\n const { activeNetwork } = useChainNetwork(false)\n return (\n <ListItem sx={{ px: 0, ...sx }} {...props}>\n <ListItemAvatar sx={{ minWidth: 30, mr: theme.spacing(2) }}>\n <BlockiesAvatar title={address} sx={{ width: 30, height: 30 }} blockiesOptions={{ seed: address }} />\n </ListItemAvatar>\n <ListItemText sx={{ borderBottom: `1px solid ${theme.vars.palette.divider}` }}>\n <Stack\n direction=\"row\"\n sx={{\n gap: 2,\n justifyContent: 'space-between',\n width: '100%',\n }}\n >\n <Typography\n component=\"span\"\n variant=\"caption\"\n sx={{ fontFamily: 'monospace' }}\n >\n {transferCardHelper.addressComponent(asAddress(address), 'To')}\n </Typography>\n <Typography\n component=\"span\"\n variant=\"caption\"\n title={isDefined(amount) ? hexToBigInt(amount).toString() : ''}\n sx={{\n fontFamily: 'monospace',\n display: 'inline-flex',\n alignItems: 'center',\n gap: theme.spacing(0.25),\n }}\n >\n {transferCardHelper.formatAmountToXl1(amount)}\n <NetworkIcon\n icon={activeNetwork?.icon}\n style={{\n width: 16, height: 16, display: 'inline-flex', alignItems: 'end',\n }}\n />\n (XL1)\n </Typography>\n </Stack>\n </ListItemText>\n </ListItem>\n )\n}\n", "import { Link } from '@mui/material'\nimport type { Hex } from '@xylabs/sdk-js'\nimport {\n ellipsize, hexToBigInt, isDefined, isHex, isUndefined,\n} from '@xylabs/sdk-js'\nimport type { XyoAddress } from '@xyo-network/address'\nimport type { EventDispatch } from '@xyo-network/react-event'\nimport {\n type AttoXL1, type Transfer, XL1Places,\n} from '@xyo-network/xl1-sdk'\nimport { XL1Amount } from '@xyo-network/xl1-sdk'\nimport type { ReactNode } from 'react'\nimport React from 'react'\n\nimport type { TransferRenderOptions } from '../lib/index.ts'\n\nexport class TransferCardHelper {\n private _dispatch: EventDispatch | undefined\n private _isMedium: boolean\n private _options: TransferRenderOptions | undefined\n private _payload: Transfer | undefined\n\n constructor(\n isMedium: boolean,\n payload?: Transfer,\n dispatch?: EventDispatch,\n options?: TransferRenderOptions,\n ) {\n this._isMedium = isMedium\n this._options = options\n this._payload = payload\n this._dispatch = dispatch\n }\n\n get dispatch() {\n return this._dispatch\n }\n\n get isMedium() {\n return this._isMedium\n }\n\n get linkedAddresses() {\n return this.options?.links?.has('address')\n }\n\n get options() {\n return this._options\n }\n\n get payload(): Transfer | undefined {\n return this._payload\n }\n\n addressComponent(address?: XyoAddress, prefix?: string): ReactNode {\n const resolvedPrefix = isDefined(prefix) ? `${prefix}: ` : ''\n const text = this.formatAddress(address) ?? 'Unknown'\n if (this.options?.links?.has('address') === true) {\n return (\n <>\n {resolvedPrefix}\n {' '}\n <Link\n onClick={() => {\n this.dispatch?.('address', 'click', address)\n }}\n sx={{ cursor: 'pointer' }}\n >\n {text}\n </Link>\n </>\n )\n }\n return `${resolvedPrefix}${text}`\n }\n\n formatAddress(address?: XyoAddress): string {\n return (address ? (this.isMedium ? address : ellipsize(address, 5)) : '')\n }\n\n formatAmountToXl1(amount?: Hex | bigint): string {\n if (isUndefined(amount)) return ''\n const amountBigInt = isHex(amount) ? hexToBigInt(amount) : amount\n const xl1Amount = XL1Amount.fromAtto(amountBigInt as AttoXL1).toString(Number(XL1Places.xl1), {\n maxDecimal: 18, maxCharacters: 19, minDecimals: 0, locale: navigator.language,\n })\n return xl1Amount\n }\n\n totalTransferred() {\n if (isUndefined(this.payload?.transfers)) return '0'\n let total = 0n\n for (const amount of Object.values(this.payload.transfers)) {\n if (isDefined(amount)) {\n total += hexToBigInt(amount)\n }\n }\n return this.formatAmountToXl1(total)\n }\n}\n", "import type { TypographyProps } from '@mui/material'\nimport { Typography, useTheme } from '@mui/material'\nimport { NetworkIcon, useChainNetwork } from '@xyo-network/react-chain-network'\nimport React from 'react'\n\nimport type { TransferCardHelper } from './TransferRenderCardHelper.tsx'\n\nexport interface TransferRenderTotalTypographyProps extends TypographyProps {\n transferRenderHelper: TransferCardHelper\n}\n\nexport const TransferRenderTotalTypography: React.FC<TransferRenderTotalTypographyProps> = ({\n transferRenderHelper, sx, ...props\n}) => {\n const theme = useTheme()\n const { activeNetwork } = useChainNetwork(false)\n\n return (\n <Typography\n sx={{\n display: 'inline-flex', gap: theme.spacing(0.25), fontFamily: 'monospace', ...sx,\n }}\n variant=\"caption\"\n {...props}\n >\n Total:\n {' '}\n <strong>{transferRenderHelper?.totalTransferred()}</strong>\n <NetworkIcon\n icon={activeNetwork?.icon}\n style={{\n width: 16, height: 16, display: 'inline-flex', alignItems: 'end',\n }}\n />\n (XL1)\n </Typography>\n )\n}\n", "import type { PayloadRenderPlugin } from '@xyo-network/react-payload-plugin'\nimport { createPayloadRenderPlugin } from '@xyo-network/react-payload-plugin'\nimport type { Payload } from '@xyo-network/sdk-js'\nimport { TransferSchema } from '@xyo-network/xl1-sdk'\n\nimport { TransferRenderBoxDetails } from './box/index.ts'\nimport { TransferRenderCard } from './card/index.ts'\n\nexport const TransferRenderPlugin: PayloadRenderPlugin = {\n ...createPayloadRenderPlugin({\n canRender: (payload?: Payload) => payload?.schema === TransferSchema,\n components: { box: { detailsBox: TransferRenderBoxDetails, detailsCard: TransferRenderCard } },\n name: 'Transfer',\n }),\n}\n\nexport default TransferRenderPlugin\n"],
4
+ "sourcesContent": ["import type { FlexBoxProps } from '@xylabs/react-flexbox'\nimport { FlexCol } from '@xylabs/react-flexbox'\nimport type { PayloadDetailsRenderProps } from '@xyo-network/react-payload-plugin'\nimport type { Payload } from '@xyo-network/sdk-js'\nimport React from 'react'\n\nimport { TransferRenderCard } from '../card/index.ts'\nimport type { TransferRenderOptions } from '../lib/index.ts'\n\nexport interface TransferRenderBoxDetailsProps extends PayloadDetailsRenderProps, FlexBoxProps {\n options?: TransferRenderOptions\n payload?: Payload\n}\n\nexport const TransferRenderBoxDetails: React.FC<TransferRenderBoxDetailsProps> = ({\n options,\n payload,\n ...props\n}) => {\n return (\n <FlexCol {...props}>\n <TransferRenderCard\n options={options}\n payload={payload}\n />\n </FlexCol>\n )\n}\n", "import type { CardProps } from '@mui/material'\nimport {\n Card, CardContent, CardHeader, List, useMediaQuery, useTheme,\n} from '@mui/material'\nimport { asAddress, asHex } from '@xylabs/sdk-js'\nimport { useEvent } from '@xyo-network/react-event'\nimport type { PayloadDetailsRenderProps } from '@xyo-network/react-payload-plugin'\nimport type { Payload } from '@xyo-network/sdk-js'\nimport { BlockiesAvatar } from '@xyo-network/xl1-blockies'\nimport { asTransfer } from '@xyo-network/xl1-sdk'\nimport React, { useMemo } from 'react'\n\nimport type { TransferRenderOptions } from '../lib/index.ts'\nimport { TransferRenderListItem } from './ListItem.tsx'\nimport { TransferCardHelper } from './TransferRenderCardHelper.tsx'\nimport { TransferRenderTotalTypography } from './TransferRenderTotalTypography.tsx'\n\nexport interface TransferRenderCardProps extends PayloadDetailsRenderProps, CardProps {\n options?: TransferRenderOptions\n payload?: Payload\n}\n\nexport const TransferRenderCard: React.FC<TransferRenderCardProps> = ({\n options, payload, ...props\n}) => {\n const theme = useTheme()\n const isMedium = useMediaQuery(theme => theme.breakpoints.up('sm'))\n const [ref, dispatch] = useEvent<HTMLDivElement>()\n const transfer = asTransfer(payload)\n const { from, transfers } = transfer ?? {}\n\n const transferCardHelper = useMemo(\n () =>\n new TransferCardHelper(isMedium, asTransfer(payload), dispatch, options),\n [isMedium, payload, dispatch, options],\n )\n\n return (\n <Card ref={ref} {...props}>\n <CardHeader\n title={transferCardHelper.addressComponent(from, 'From')}\n slotProps={{\n title: {\n title: from, variant: 'body1', fontFamily: 'monospace',\n },\n }}\n avatar={<BlockiesAvatar sx={{ width: 30, height: 30 }} title={from} blockiesOptions={{ seed: from }} />}\n />\n <CardContent sx={{ '&:last-child': { pb: theme.spacing(0) } }}>\n <List>\n {Object.entries(transfers ?? {}).map(([address, amount]) => (\n <TransferRenderListItem\n key={address}\n address={asAddress(address)}\n amount={asHex(amount)}\n transferCardHelper={transferCardHelper}\n />\n ))}\n </List>\n <TransferRenderTotalTypography\n transferRenderHelper={transferCardHelper}\n sx={{\n // pt matches bottom padding of the ListItem\n width: '100%', justifyContent: 'end', pt: 0.6666666667, pb: theme.spacing(2),\n }}\n />\n </CardContent>\n </Card>\n )\n}\n", "import {\n ListItem, ListItemAvatar, type ListItemProps, ListItemText, Stack, Typography,\n useTheme,\n} from '@mui/material'\nimport type { Address, Hex } from '@xylabs/sdk-js'\nimport {\n asAddress, hexToBigInt, isDefined,\n} from '@xylabs/sdk-js'\nimport { NetworkIcon, useChainNetwork } from '@xyo-network/react-chain-network'\nimport { BlockiesAvatar } from '@xyo-network/xl1-blockies'\nimport React from 'react'\n\nimport type { TransferCardHelper } from './TransferRenderCardHelper.tsx'\n\nexport interface TransferRenderListItem extends ListItemProps {\n address?: Address\n amount?: Hex\n transferCardHelper: TransferCardHelper\n}\n\nexport const TransferRenderListItem: React.FC<TransferRenderListItem> = ({\n address, amount, sx, transferCardHelper, ...props\n}) => {\n const theme = useTheme()\n const { activeNetwork } = useChainNetwork(false)\n return (\n <ListItem sx={{ px: 0, ...sx }} {...props}>\n <ListItemAvatar sx={{ minWidth: 30, mr: theme.spacing(2) }}>\n <BlockiesAvatar title={address} sx={{ width: 30, height: 30 }} blockiesOptions={{ seed: address }} />\n </ListItemAvatar>\n <ListItemText sx={{ borderBottom: `1px solid ${theme.vars.palette.divider}` }}>\n <Stack\n direction=\"row\"\n sx={{\n gap: 2,\n justifyContent: 'space-between',\n width: '100%',\n }}\n >\n <Typography\n component=\"span\"\n variant=\"caption\"\n sx={{ fontFamily: 'monospace' }}\n >\n {transferCardHelper.addressComponent(asAddress(address), 'To')}\n </Typography>\n <Typography\n component=\"span\"\n variant=\"caption\"\n title={isDefined(amount) ? hexToBigInt(amount).toString() : ''}\n sx={{\n fontFamily: 'monospace',\n display: 'inline-flex',\n alignItems: 'center',\n gap: theme.spacing(0.25),\n }}\n >\n {transferCardHelper.formatAmountToXl1(amount)}\n <NetworkIcon\n icon={activeNetwork?.icon}\n style={{\n width: 16, height: 16, display: 'inline-flex', alignItems: 'end',\n }}\n />\n (XL1)\n </Typography>\n </Stack>\n </ListItemText>\n </ListItem>\n )\n}\n", "import { Link } from '@mui/material'\nimport type { Hex } from '@xylabs/sdk-js'\nimport {\n ellipsize, hexToBigInt, isDefined, isHex, isUndefined,\n} from '@xylabs/sdk-js'\nimport type { EventDispatch } from '@xyo-network/react-event'\nimport type { XyoAddress } from '@xyo-network/sdk-js'\nimport {\n type AttoXL1, type Transfer, XL1Places,\n} from '@xyo-network/xl1-sdk'\nimport { XL1Amount } from '@xyo-network/xl1-sdk'\nimport type { ReactNode } from 'react'\nimport React from 'react'\n\nimport type { TransferRenderOptions } from '../lib/index.ts'\n\nexport class TransferCardHelper {\n private _dispatch: EventDispatch | undefined\n private _isMedium: boolean\n private _options: TransferRenderOptions | undefined\n private _payload: Transfer | undefined\n\n constructor(\n isMedium: boolean,\n payload?: Transfer,\n dispatch?: EventDispatch,\n options?: TransferRenderOptions,\n ) {\n this._isMedium = isMedium\n this._options = options\n this._payload = payload\n this._dispatch = dispatch\n }\n\n get dispatch() {\n return this._dispatch\n }\n\n get isMedium() {\n return this._isMedium\n }\n\n get linkedAddresses() {\n return this.options?.links?.has('address')\n }\n\n get options() {\n return this._options\n }\n\n get payload(): Transfer | undefined {\n return this._payload\n }\n\n addressComponent(address?: XyoAddress, prefix?: string): ReactNode {\n const resolvedPrefix = isDefined(prefix) ? `${prefix}: ` : ''\n const text = this.formatAddress(address) ?? 'Unknown'\n if (this.options?.links?.has('address') === true) {\n return (\n <>\n {resolvedPrefix}\n {' '}\n <Link\n onClick={() => {\n this.dispatch?.('address', 'click', address)\n }}\n sx={{ cursor: 'pointer' }}\n >\n {text}\n </Link>\n </>\n )\n }\n return `${resolvedPrefix}${text}`\n }\n\n formatAddress(address?: XyoAddress): string {\n return (address ? (this.isMedium ? address : ellipsize(address, 5)) : '')\n }\n\n formatAmountToXl1(amount?: Hex | bigint): string {\n if (isUndefined(amount)) return ''\n const amountBigInt = isHex(amount) ? hexToBigInt(amount) : amount\n const xl1Amount = XL1Amount.fromAtto(amountBigInt as AttoXL1).toString(Number(XL1Places.xl1), {\n maxDecimal: 18, maxCharacters: 19, minDecimals: 0, locale: navigator.language,\n })\n return xl1Amount\n }\n\n totalTransferred() {\n if (isUndefined(this.payload?.transfers)) return '0'\n let total = 0n\n for (const amount of Object.values(this.payload.transfers)) {\n if (isDefined(amount)) {\n total += hexToBigInt(amount)\n }\n }\n return this.formatAmountToXl1(total)\n }\n}\n", "import type { TypographyProps } from '@mui/material'\nimport { Typography, useTheme } from '@mui/material'\nimport { NetworkIcon, useChainNetwork } from '@xyo-network/react-chain-network'\nimport React from 'react'\n\nimport type { TransferCardHelper } from './TransferRenderCardHelper.tsx'\n\nexport interface TransferRenderTotalTypographyProps extends TypographyProps {\n transferRenderHelper: TransferCardHelper\n}\n\nexport const TransferRenderTotalTypography: React.FC<TransferRenderTotalTypographyProps> = ({\n transferRenderHelper, sx, ...props\n}) => {\n const theme = useTheme()\n const { activeNetwork } = useChainNetwork(false)\n\n return (\n <Typography\n sx={{\n display: 'inline-flex', gap: theme.spacing(0.25), fontFamily: 'monospace', ...sx,\n }}\n variant=\"caption\"\n {...props}\n >\n Total:\n {' '}\n <strong>{transferRenderHelper?.totalTransferred()}</strong>\n <NetworkIcon\n icon={activeNetwork?.icon}\n style={{\n width: 16, height: 16, display: 'inline-flex', alignItems: 'end',\n }}\n />\n (XL1)\n </Typography>\n )\n}\n", "import type { PayloadRenderPlugin } from '@xyo-network/react-payload-plugin'\nimport { createPayloadRenderPlugin } from '@xyo-network/react-payload-plugin'\nimport type { Payload } from '@xyo-network/sdk-js'\nimport { TransferSchema } from '@xyo-network/xl1-sdk'\n\nimport { TransferRenderBoxDetails } from './box/index.ts'\nimport { TransferRenderCard } from './card/index.ts'\n\nexport const TransferRenderPlugin: PayloadRenderPlugin = {\n ...createPayloadRenderPlugin({\n canRender: (payload?: Payload) => payload?.schema === TransferSchema,\n components: { box: { detailsBox: TransferRenderBoxDetails, detailsCard: TransferRenderCard } },\n name: 'Transfer',\n }),\n}\n\nexport default TransferRenderPlugin\n"],
5
5
  "mappings": "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",
6
6
  "names": ["useTheme", "asAddress", "BlockiesAvatar", "hexToBigInt", "isDefined", "jsx", "jsxs", "Typography", "useTheme", "NetworkIcon", "useChainNetwork", "jsx", "jsxs", "jsx", "jsxs", "useTheme", "theme", "BlockiesAvatar", "asAddress", "jsx"]
7
7
  }
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/transfer/Plugin.ts", "../../../src/transfer/box/Details.tsx", "../../../src/transfer/card/TransferRenderCard.tsx", "../../../src/transfer/card/ListItem.tsx", "../../../src/transfer/card/TransferRenderCardHelper.tsx", "../../../src/transfer/card/TransferRenderTotalTypography.tsx"],
4
- "sourcesContent": ["import type { PayloadRenderPlugin } from '@xyo-network/react-payload-plugin'\nimport { createPayloadRenderPlugin } from '@xyo-network/react-payload-plugin'\nimport type { Payload } from '@xyo-network/sdk-js'\nimport { TransferSchema } from '@xyo-network/xl1-sdk'\n\nimport { TransferRenderBoxDetails } from './box/index.ts'\nimport { TransferRenderCard } from './card/index.ts'\n\nexport const TransferRenderPlugin: PayloadRenderPlugin = {\n ...createPayloadRenderPlugin({\n canRender: (payload?: Payload) => payload?.schema === TransferSchema,\n components: { box: { detailsBox: TransferRenderBoxDetails, detailsCard: TransferRenderCard } },\n name: 'Transfer',\n }),\n}\n\nexport default TransferRenderPlugin\n", "import type { FlexBoxProps } from '@xylabs/react-flexbox'\nimport { FlexCol } from '@xylabs/react-flexbox'\nimport type { PayloadDetailsRenderProps } from '@xyo-network/react-payload-plugin'\nimport type { Payload } from '@xyo-network/sdk-js'\nimport React from 'react'\n\nimport { TransferRenderCard } from '../card/index.ts'\nimport type { TransferRenderOptions } from '../lib/index.ts'\n\nexport interface TransferRenderBoxDetailsProps extends PayloadDetailsRenderProps, FlexBoxProps {\n options?: TransferRenderOptions\n payload?: Payload\n}\n\nexport const TransferRenderBoxDetails: React.FC<TransferRenderBoxDetailsProps> = ({\n options,\n payload,\n ...props\n}) => {\n return (\n <FlexCol {...props}>\n <TransferRenderCard\n options={options}\n payload={payload}\n />\n </FlexCol>\n )\n}\n", "import type { CardProps } from '@mui/material'\nimport {\n Card, CardContent, CardHeader, List, useMediaQuery, useTheme,\n} from '@mui/material'\nimport { asAddress, asHex } from '@xylabs/sdk-js'\nimport { useEvent } from '@xyo-network/react-event'\nimport type { PayloadDetailsRenderProps } from '@xyo-network/react-payload-plugin'\nimport type { Payload } from '@xyo-network/sdk-js'\nimport { BlockiesAvatar } from '@xyo-network/xl1-blockies'\nimport { asTransfer } from '@xyo-network/xl1-sdk'\nimport React, { useMemo } from 'react'\n\nimport type { TransferRenderOptions } from '../lib/index.ts'\nimport { TransferRenderListItem } from './ListItem.tsx'\nimport { TransferCardHelper } from './TransferRenderCardHelper.tsx'\nimport { TransferRenderTotalTypography } from './TransferRenderTotalTypography.tsx'\n\nexport interface TransferRenderCardProps extends PayloadDetailsRenderProps, CardProps {\n options?: TransferRenderOptions\n payload?: Payload\n}\n\nexport const TransferRenderCard: React.FC<TransferRenderCardProps> = ({\n options, payload, ...props\n}) => {\n const theme = useTheme()\n const isMedium = useMediaQuery(theme => theme.breakpoints.up('sm'))\n const [ref, dispatch] = useEvent<HTMLDivElement>()\n const transfer = asTransfer(payload)\n const { from, transfers } = transfer ?? {}\n\n const transferCardHelper = useMemo(\n () =>\n new TransferCardHelper(isMedium, asTransfer(payload), dispatch, options),\n [isMedium, payload, dispatch, options],\n )\n\n return (\n <Card ref={ref} {...props}>\n <CardHeader\n title={transferCardHelper.addressComponent(from, 'From')}\n slotProps={{\n title: {\n title: from, variant: 'body1', fontFamily: 'monospace',\n },\n }}\n avatar={<BlockiesAvatar sx={{ width: 30, height: 30 }} title={from} blockiesOptions={{ seed: from }} />}\n />\n <CardContent sx={{ '&:last-child': { pb: theme.spacing(0) } }}>\n <List>\n {Object.entries(transfers ?? {}).map(([address, amount]) => (\n <TransferRenderListItem\n key={address}\n address={asAddress(address)}\n amount={asHex(amount)}\n transferCardHelper={transferCardHelper}\n />\n ))}\n </List>\n <TransferRenderTotalTypography\n transferRenderHelper={transferCardHelper}\n sx={{\n // pt matches bottom padding of the ListItem\n width: '100%', justifyContent: 'end', pt: 0.6666666667, pb: theme.spacing(2),\n }}\n />\n </CardContent>\n </Card>\n )\n}\n", "import {\n ListItem, ListItemAvatar, type ListItemProps, ListItemText, Stack, Typography,\n useTheme,\n} from '@mui/material'\nimport type { Address, Hex } from '@xylabs/sdk-js'\nimport {\n asAddress, hexToBigInt, isDefined,\n} from '@xylabs/sdk-js'\nimport { NetworkIcon, useChainNetwork } from '@xyo-network/react-chain-network'\nimport { BlockiesAvatar } from '@xyo-network/xl1-blockies'\nimport React from 'react'\n\nimport type { TransferCardHelper } from './TransferRenderCardHelper.tsx'\n\nexport interface TransferRenderListItem extends ListItemProps {\n address?: Address\n amount?: Hex\n transferCardHelper: TransferCardHelper\n}\n\nexport const TransferRenderListItem: React.FC<TransferRenderListItem> = ({\n address, amount, sx, transferCardHelper, ...props\n}) => {\n const theme = useTheme()\n const { activeNetwork } = useChainNetwork(false)\n return (\n <ListItem sx={{ px: 0, ...sx }} {...props}>\n <ListItemAvatar sx={{ minWidth: 30, mr: theme.spacing(2) }}>\n <BlockiesAvatar title={address} sx={{ width: 30, height: 30 }} blockiesOptions={{ seed: address }} />\n </ListItemAvatar>\n <ListItemText sx={{ borderBottom: `1px solid ${theme.vars.palette.divider}` }}>\n <Stack\n direction=\"row\"\n sx={{\n gap: 2,\n justifyContent: 'space-between',\n width: '100%',\n }}\n >\n <Typography\n component=\"span\"\n variant=\"caption\"\n sx={{ fontFamily: 'monospace' }}\n >\n {transferCardHelper.addressComponent(asAddress(address), 'To')}\n </Typography>\n <Typography\n component=\"span\"\n variant=\"caption\"\n title={isDefined(amount) ? hexToBigInt(amount).toString() : ''}\n sx={{\n fontFamily: 'monospace',\n display: 'inline-flex',\n alignItems: 'center',\n gap: theme.spacing(0.25),\n }}\n >\n {transferCardHelper.formatAmountToXl1(amount)}\n <NetworkIcon\n icon={activeNetwork?.icon}\n style={{\n width: 16, height: 16, display: 'inline-flex', alignItems: 'end',\n }}\n />\n (XL1)\n </Typography>\n </Stack>\n </ListItemText>\n </ListItem>\n )\n}\n", "import { Link } from '@mui/material'\nimport type { Hex } from '@xylabs/sdk-js'\nimport {\n ellipsize, hexToBigInt, isDefined, isHex, isUndefined,\n} from '@xylabs/sdk-js'\nimport type { XyoAddress } from '@xyo-network/address'\nimport type { EventDispatch } from '@xyo-network/react-event'\nimport {\n type AttoXL1, type Transfer, XL1Places,\n} from '@xyo-network/xl1-sdk'\nimport { XL1Amount } from '@xyo-network/xl1-sdk'\nimport type { ReactNode } from 'react'\nimport React from 'react'\n\nimport type { TransferRenderOptions } from '../lib/index.ts'\n\nexport class TransferCardHelper {\n private _dispatch: EventDispatch | undefined\n private _isMedium: boolean\n private _options: TransferRenderOptions | undefined\n private _payload: Transfer | undefined\n\n constructor(\n isMedium: boolean,\n payload?: Transfer,\n dispatch?: EventDispatch,\n options?: TransferRenderOptions,\n ) {\n this._isMedium = isMedium\n this._options = options\n this._payload = payload\n this._dispatch = dispatch\n }\n\n get dispatch() {\n return this._dispatch\n }\n\n get isMedium() {\n return this._isMedium\n }\n\n get linkedAddresses() {\n return this.options?.links?.has('address')\n }\n\n get options() {\n return this._options\n }\n\n get payload(): Transfer | undefined {\n return this._payload\n }\n\n addressComponent(address?: XyoAddress, prefix?: string): ReactNode {\n const resolvedPrefix = isDefined(prefix) ? `${prefix}: ` : ''\n const text = this.formatAddress(address) ?? 'Unknown'\n if (this.options?.links?.has('address') === true) {\n return (\n <>\n {resolvedPrefix}\n {' '}\n <Link\n onClick={() => {\n this.dispatch?.('address', 'click', address)\n }}\n sx={{ cursor: 'pointer' }}\n >\n {text}\n </Link>\n </>\n )\n }\n return `${resolvedPrefix}${text}`\n }\n\n formatAddress(address?: XyoAddress): string {\n return (address ? (this.isMedium ? address : ellipsize(address, 5)) : '')\n }\n\n formatAmountToXl1(amount?: Hex | bigint): string {\n if (isUndefined(amount)) return ''\n const amountBigInt = isHex(amount) ? hexToBigInt(amount) : amount\n const xl1Amount = XL1Amount.fromAtto(amountBigInt as AttoXL1).toString(Number(XL1Places.xl1), {\n maxDecimal: 18, maxCharacters: 19, minDecimals: 0, locale: navigator.language,\n })\n return xl1Amount\n }\n\n totalTransferred() {\n if (isUndefined(this.payload?.transfers)) return '0'\n let total = 0n\n for (const amount of Object.values(this.payload.transfers)) {\n if (isDefined(amount)) {\n total += hexToBigInt(amount)\n }\n }\n return this.formatAmountToXl1(total)\n }\n}\n", "import type { TypographyProps } from '@mui/material'\nimport { Typography, useTheme } from '@mui/material'\nimport { NetworkIcon, useChainNetwork } from '@xyo-network/react-chain-network'\nimport React from 'react'\n\nimport type { TransferCardHelper } from './TransferRenderCardHelper.tsx'\n\nexport interface TransferRenderTotalTypographyProps extends TypographyProps {\n transferRenderHelper: TransferCardHelper\n}\n\nexport const TransferRenderTotalTypography: React.FC<TransferRenderTotalTypographyProps> = ({\n transferRenderHelper, sx, ...props\n}) => {\n const theme = useTheme()\n const { activeNetwork } = useChainNetwork(false)\n\n return (\n <Typography\n sx={{\n display: 'inline-flex', gap: theme.spacing(0.25), fontFamily: 'monospace', ...sx,\n }}\n variant=\"caption\"\n {...props}\n >\n Total:\n {' '}\n <strong>{transferRenderHelper?.totalTransferred()}</strong>\n <NetworkIcon\n icon={activeNetwork?.icon}\n style={{\n width: 16, height: 16, display: 'inline-flex', alignItems: 'end',\n }}\n />\n (XL1)\n </Typography>\n )\n}\n"],
4
+ "sourcesContent": ["import type { PayloadRenderPlugin } from '@xyo-network/react-payload-plugin'\nimport { createPayloadRenderPlugin } from '@xyo-network/react-payload-plugin'\nimport type { Payload } from '@xyo-network/sdk-js'\nimport { TransferSchema } from '@xyo-network/xl1-sdk'\n\nimport { TransferRenderBoxDetails } from './box/index.ts'\nimport { TransferRenderCard } from './card/index.ts'\n\nexport const TransferRenderPlugin: PayloadRenderPlugin = {\n ...createPayloadRenderPlugin({\n canRender: (payload?: Payload) => payload?.schema === TransferSchema,\n components: { box: { detailsBox: TransferRenderBoxDetails, detailsCard: TransferRenderCard } },\n name: 'Transfer',\n }),\n}\n\nexport default TransferRenderPlugin\n", "import type { FlexBoxProps } from '@xylabs/react-flexbox'\nimport { FlexCol } from '@xylabs/react-flexbox'\nimport type { PayloadDetailsRenderProps } from '@xyo-network/react-payload-plugin'\nimport type { Payload } from '@xyo-network/sdk-js'\nimport React from 'react'\n\nimport { TransferRenderCard } from '../card/index.ts'\nimport type { TransferRenderOptions } from '../lib/index.ts'\n\nexport interface TransferRenderBoxDetailsProps extends PayloadDetailsRenderProps, FlexBoxProps {\n options?: TransferRenderOptions\n payload?: Payload\n}\n\nexport const TransferRenderBoxDetails: React.FC<TransferRenderBoxDetailsProps> = ({\n options,\n payload,\n ...props\n}) => {\n return (\n <FlexCol {...props}>\n <TransferRenderCard\n options={options}\n payload={payload}\n />\n </FlexCol>\n )\n}\n", "import type { CardProps } from '@mui/material'\nimport {\n Card, CardContent, CardHeader, List, useMediaQuery, useTheme,\n} from '@mui/material'\nimport { asAddress, asHex } from '@xylabs/sdk-js'\nimport { useEvent } from '@xyo-network/react-event'\nimport type { PayloadDetailsRenderProps } from '@xyo-network/react-payload-plugin'\nimport type { Payload } from '@xyo-network/sdk-js'\nimport { BlockiesAvatar } from '@xyo-network/xl1-blockies'\nimport { asTransfer } from '@xyo-network/xl1-sdk'\nimport React, { useMemo } from 'react'\n\nimport type { TransferRenderOptions } from '../lib/index.ts'\nimport { TransferRenderListItem } from './ListItem.tsx'\nimport { TransferCardHelper } from './TransferRenderCardHelper.tsx'\nimport { TransferRenderTotalTypography } from './TransferRenderTotalTypography.tsx'\n\nexport interface TransferRenderCardProps extends PayloadDetailsRenderProps, CardProps {\n options?: TransferRenderOptions\n payload?: Payload\n}\n\nexport const TransferRenderCard: React.FC<TransferRenderCardProps> = ({\n options, payload, ...props\n}) => {\n const theme = useTheme()\n const isMedium = useMediaQuery(theme => theme.breakpoints.up('sm'))\n const [ref, dispatch] = useEvent<HTMLDivElement>()\n const transfer = asTransfer(payload)\n const { from, transfers } = transfer ?? {}\n\n const transferCardHelper = useMemo(\n () =>\n new TransferCardHelper(isMedium, asTransfer(payload), dispatch, options),\n [isMedium, payload, dispatch, options],\n )\n\n return (\n <Card ref={ref} {...props}>\n <CardHeader\n title={transferCardHelper.addressComponent(from, 'From')}\n slotProps={{\n title: {\n title: from, variant: 'body1', fontFamily: 'monospace',\n },\n }}\n avatar={<BlockiesAvatar sx={{ width: 30, height: 30 }} title={from} blockiesOptions={{ seed: from }} />}\n />\n <CardContent sx={{ '&:last-child': { pb: theme.spacing(0) } }}>\n <List>\n {Object.entries(transfers ?? {}).map(([address, amount]) => (\n <TransferRenderListItem\n key={address}\n address={asAddress(address)}\n amount={asHex(amount)}\n transferCardHelper={transferCardHelper}\n />\n ))}\n </List>\n <TransferRenderTotalTypography\n transferRenderHelper={transferCardHelper}\n sx={{\n // pt matches bottom padding of the ListItem\n width: '100%', justifyContent: 'end', pt: 0.6666666667, pb: theme.spacing(2),\n }}\n />\n </CardContent>\n </Card>\n )\n}\n", "import {\n ListItem, ListItemAvatar, type ListItemProps, ListItemText, Stack, Typography,\n useTheme,\n} from '@mui/material'\nimport type { Address, Hex } from '@xylabs/sdk-js'\nimport {\n asAddress, hexToBigInt, isDefined,\n} from '@xylabs/sdk-js'\nimport { NetworkIcon, useChainNetwork } from '@xyo-network/react-chain-network'\nimport { BlockiesAvatar } from '@xyo-network/xl1-blockies'\nimport React from 'react'\n\nimport type { TransferCardHelper } from './TransferRenderCardHelper.tsx'\n\nexport interface TransferRenderListItem extends ListItemProps {\n address?: Address\n amount?: Hex\n transferCardHelper: TransferCardHelper\n}\n\nexport const TransferRenderListItem: React.FC<TransferRenderListItem> = ({\n address, amount, sx, transferCardHelper, ...props\n}) => {\n const theme = useTheme()\n const { activeNetwork } = useChainNetwork(false)\n return (\n <ListItem sx={{ px: 0, ...sx }} {...props}>\n <ListItemAvatar sx={{ minWidth: 30, mr: theme.spacing(2) }}>\n <BlockiesAvatar title={address} sx={{ width: 30, height: 30 }} blockiesOptions={{ seed: address }} />\n </ListItemAvatar>\n <ListItemText sx={{ borderBottom: `1px solid ${theme.vars.palette.divider}` }}>\n <Stack\n direction=\"row\"\n sx={{\n gap: 2,\n justifyContent: 'space-between',\n width: '100%',\n }}\n >\n <Typography\n component=\"span\"\n variant=\"caption\"\n sx={{ fontFamily: 'monospace' }}\n >\n {transferCardHelper.addressComponent(asAddress(address), 'To')}\n </Typography>\n <Typography\n component=\"span\"\n variant=\"caption\"\n title={isDefined(amount) ? hexToBigInt(amount).toString() : ''}\n sx={{\n fontFamily: 'monospace',\n display: 'inline-flex',\n alignItems: 'center',\n gap: theme.spacing(0.25),\n }}\n >\n {transferCardHelper.formatAmountToXl1(amount)}\n <NetworkIcon\n icon={activeNetwork?.icon}\n style={{\n width: 16, height: 16, display: 'inline-flex', alignItems: 'end',\n }}\n />\n (XL1)\n </Typography>\n </Stack>\n </ListItemText>\n </ListItem>\n )\n}\n", "import { Link } from '@mui/material'\nimport type { Hex } from '@xylabs/sdk-js'\nimport {\n ellipsize, hexToBigInt, isDefined, isHex, isUndefined,\n} from '@xylabs/sdk-js'\nimport type { EventDispatch } from '@xyo-network/react-event'\nimport type { XyoAddress } from '@xyo-network/sdk-js'\nimport {\n type AttoXL1, type Transfer, XL1Places,\n} from '@xyo-network/xl1-sdk'\nimport { XL1Amount } from '@xyo-network/xl1-sdk'\nimport type { ReactNode } from 'react'\nimport React from 'react'\n\nimport type { TransferRenderOptions } from '../lib/index.ts'\n\nexport class TransferCardHelper {\n private _dispatch: EventDispatch | undefined\n private _isMedium: boolean\n private _options: TransferRenderOptions | undefined\n private _payload: Transfer | undefined\n\n constructor(\n isMedium: boolean,\n payload?: Transfer,\n dispatch?: EventDispatch,\n options?: TransferRenderOptions,\n ) {\n this._isMedium = isMedium\n this._options = options\n this._payload = payload\n this._dispatch = dispatch\n }\n\n get dispatch() {\n return this._dispatch\n }\n\n get isMedium() {\n return this._isMedium\n }\n\n get linkedAddresses() {\n return this.options?.links?.has('address')\n }\n\n get options() {\n return this._options\n }\n\n get payload(): Transfer | undefined {\n return this._payload\n }\n\n addressComponent(address?: XyoAddress, prefix?: string): ReactNode {\n const resolvedPrefix = isDefined(prefix) ? `${prefix}: ` : ''\n const text = this.formatAddress(address) ?? 'Unknown'\n if (this.options?.links?.has('address') === true) {\n return (\n <>\n {resolvedPrefix}\n {' '}\n <Link\n onClick={() => {\n this.dispatch?.('address', 'click', address)\n }}\n sx={{ cursor: 'pointer' }}\n >\n {text}\n </Link>\n </>\n )\n }\n return `${resolvedPrefix}${text}`\n }\n\n formatAddress(address?: XyoAddress): string {\n return (address ? (this.isMedium ? address : ellipsize(address, 5)) : '')\n }\n\n formatAmountToXl1(amount?: Hex | bigint): string {\n if (isUndefined(amount)) return ''\n const amountBigInt = isHex(amount) ? hexToBigInt(amount) : amount\n const xl1Amount = XL1Amount.fromAtto(amountBigInt as AttoXL1).toString(Number(XL1Places.xl1), {\n maxDecimal: 18, maxCharacters: 19, minDecimals: 0, locale: navigator.language,\n })\n return xl1Amount\n }\n\n totalTransferred() {\n if (isUndefined(this.payload?.transfers)) return '0'\n let total = 0n\n for (const amount of Object.values(this.payload.transfers)) {\n if (isDefined(amount)) {\n total += hexToBigInt(amount)\n }\n }\n return this.formatAmountToXl1(total)\n }\n}\n", "import type { TypographyProps } from '@mui/material'\nimport { Typography, useTheme } from '@mui/material'\nimport { NetworkIcon, useChainNetwork } from '@xyo-network/react-chain-network'\nimport React from 'react'\n\nimport type { TransferCardHelper } from './TransferRenderCardHelper.tsx'\n\nexport interface TransferRenderTotalTypographyProps extends TypographyProps {\n transferRenderHelper: TransferCardHelper\n}\n\nexport const TransferRenderTotalTypography: React.FC<TransferRenderTotalTypographyProps> = ({\n transferRenderHelper, sx, ...props\n}) => {\n const theme = useTheme()\n const { activeNetwork } = useChainNetwork(false)\n\n return (\n <Typography\n sx={{\n display: 'inline-flex', gap: theme.spacing(0.25), fontFamily: 'monospace', ...sx,\n }}\n variant=\"caption\"\n {...props}\n >\n Total:\n {' '}\n <strong>{transferRenderHelper?.totalTransferred()}</strong>\n <NetworkIcon\n icon={activeNetwork?.icon}\n style={{\n width: 16, height: 16, display: 'inline-flex', alignItems: 'end',\n }}\n />\n (XL1)\n </Typography>\n )\n}\n"],
5
5
  "mappings": "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",
6
6
  "names": ["useTheme", "asAddress", "BlockiesAvatar", "hexToBigInt", "isDefined", "jsx", "jsxs", "Typography", "useTheme", "NetworkIcon", "useChainNetwork", "jsx", "jsxs", "jsx", "jsxs", "useTheme", "theme", "BlockiesAvatar", "asAddress", "jsx"]
7
7
  }
@@ -1,6 +1,6 @@
1
1
  import type { Hex } from '@xylabs/sdk-js';
2
- import type { XyoAddress } from '@xyo-network/address';
3
2
  import type { EventDispatch } from '@xyo-network/react-event';
3
+ import type { XyoAddress } from '@xyo-network/sdk-js';
4
4
  import { type Transfer } from '@xyo-network/xl1-sdk';
5
5
  import type { ReactNode } from 'react';
6
6
  import type { TransferRenderOptions } from '../lib/index.ts';
@@ -1 +1 @@
1
- {"version":3,"file":"TransferRenderCardHelper.d.ts","sourceRoot":"","sources":["../../../../src/transfer/card/TransferRenderCardHelper.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,gBAAgB,CAAA;AAIzC,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAA;AACtD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAA;AAC7D,OAAO,EACS,KAAK,QAAQ,EAC5B,MAAM,sBAAsB,CAAA;AAE7B,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AAGtC,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,iBAAiB,CAAA;AAE5D,qBAAa,kBAAkB;IAC7B,OAAO,CAAC,SAAS,CAA2B;IAC5C,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,QAAQ,CAAmC;IACnD,OAAO,CAAC,QAAQ,CAAsB;gBAGpC,QAAQ,EAAE,OAAO,EACjB,OAAO,CAAC,EAAE,QAAQ,EAClB,QAAQ,CAAC,EAAE,aAAa,EACxB,OAAO,CAAC,EAAE,qBAAqB;IAQjC,IAAI,QAAQ,8BAEX;IAED,IAAI,QAAQ,YAEX;IAED,IAAI,eAAe,wBAElB;IAED,IAAI,OAAO,sCAEV;IAED,IAAI,OAAO,IAAI,QAAQ,GAAG,SAAS,CAElC;IAED,gBAAgB,CAAC,OAAO,CAAC,EAAE,UAAU,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS;IAsBlE,aAAa,CAAC,OAAO,CAAC,EAAE,UAAU,GAAG,MAAM;IAI3C,iBAAiB,CAAC,MAAM,CAAC,EAAE,GAAG,GAAG,MAAM,GAAG,MAAM;IAShD,gBAAgB;CAUjB"}
1
+ {"version":3,"file":"TransferRenderCardHelper.d.ts","sourceRoot":"","sources":["../../../../src/transfer/card/TransferRenderCardHelper.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,gBAAgB,CAAA;AAIzC,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAA;AAC7D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAA;AACrD,OAAO,EACS,KAAK,QAAQ,EAC5B,MAAM,sBAAsB,CAAA;AAE7B,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AAGtC,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,iBAAiB,CAAA;AAE5D,qBAAa,kBAAkB;IAC7B,OAAO,CAAC,SAAS,CAA2B;IAC5C,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,QAAQ,CAAmC;IACnD,OAAO,CAAC,QAAQ,CAAsB;gBAGpC,QAAQ,EAAE,OAAO,EACjB,OAAO,CAAC,EAAE,QAAQ,EAClB,QAAQ,CAAC,EAAE,aAAa,EACxB,OAAO,CAAC,EAAE,qBAAqB;IAQjC,IAAI,QAAQ,8BAEX;IAED,IAAI,QAAQ,YAEX;IAED,IAAI,eAAe,wBAElB;IAED,IAAI,OAAO,sCAEV;IAED,IAAI,OAAO,IAAI,QAAQ,GAAG,SAAS,CAElC;IAED,gBAAgB,CAAC,OAAO,CAAC,EAAE,UAAU,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS;IAsBlE,aAAa,CAAC,OAAO,CAAC,EAAE,UAAU,GAAG,MAAM;IAI3C,iBAAiB,CAAC,MAAM,CAAC,EAAE,GAAG,GAAG,MAAM,GAAG,MAAM;IAShD,gBAAgB;CAUjB"}
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-transfer-plugin",
4
- "version": "3.0.0",
4
+ "version": "3.0.1",
5
5
  "description": "XYO Layer One API",
6
6
  "homepage": "https://xylabs.com",
7
7
  "bugs": {
@@ -43,7 +43,7 @@
43
43
  "README.md"
44
44
  ],
45
45
  "dependencies": {
46
- "@xyo-network/react-chain-network": "~3.0.0"
46
+ "@xyo-network/react-chain-network": "~3.0.1"
47
47
  },
48
48
  "devDependencies": {
49
49
  "@bitauth/libauth": "~3.0.0",
@@ -78,13 +78,12 @@
78
78
  "@xylabs/react-shared": "^9.1.2",
79
79
  "@xylabs/react-theme": "^9.1.2",
80
80
  "@xylabs/sdk-js": "^6.1.3",
81
- "@xylabs/sdk-react": "~9.1.2",
81
+ "@xylabs/sdk-react": "^9.1.2",
82
82
  "@xylabs/threads": "^6.1.3",
83
- "@xylabs/toolchain": "~8.2.7",
84
- "@xylabs/tsconfig": "~8.2.7",
85
- "@xylabs/tsconfig-dom": "~8.2.7",
86
- "@xylabs/tsconfig-react": "~8.2.7",
87
- "@xyo-network/address": "^6.1.1",
83
+ "@xylabs/toolchain": "~8.3.0",
84
+ "@xylabs/tsconfig": "~8.3.0",
85
+ "@xylabs/tsconfig-dom": "~8.3.0",
86
+ "@xylabs/tsconfig-react": "~8.3.0",
88
87
  "@xyo-network/diviner-schema-list": "~6.1",
89
88
  "@xyo-network/diviner-schema-stats": "~6.1",
90
89
  "@xyo-network/node-core-types": "~4.2.2",
@@ -94,35 +93,35 @@
94
93
  "@xyo-network/sdk-js": "^6.1.0",
95
94
  "@xyo-network/sdk-protocol-js": "~6.1.1",
96
95
  "@xyo-network/typeof": "~5.3.30",
97
- "@xyo-network/xl1-blockies": "~3.0",
98
- "@xyo-network/xl1-react-client-sdk": "~3.0",
99
- "@xyo-network/xl1-sdk": "~3.0",
96
+ "@xyo-network/xl1-blockies": "~3.0.6",
97
+ "@xyo-network/xl1-react-client-sdk": "~3.0.6",
98
+ "@xyo-network/xl1-sdk": "^3.0.6",
100
99
  "ajv": "^8.20.0",
101
100
  "async-mutex": "^0.5.0",
102
- "clsx": "~2.1.1",
101
+ "clsx": "^2.1.1",
103
102
  "cosmiconfig": "^9.0.2",
104
103
  "debug": "~4.4.3",
105
104
  "eslint": "^10.5.0",
106
- "ethers": "^6.16.0",
105
+ "ethers": "^6.17.0",
107
106
  "hash-wasm": "~4.12.0",
108
107
  "idb": "^8.0.3",
109
108
  "lru-cache": "^11.5.1",
110
- "md5": "~2.3.0",
111
- "numeral": "~2.0.6",
109
+ "md5": "^2.3.0",
110
+ "numeral": "^2.0.6",
112
111
  "observable-fns": "~0.6.1",
113
- "query-string": "~9.3.1",
112
+ "query-string": "^9.4.0",
114
113
  "react": "^19.2.7",
115
114
  "react-dom": "^19.2.7",
116
115
  "react-router-dom": "^7.18.0",
117
116
  "storybook": "^10.4.6",
118
117
  "typescript": "~6.0.3",
119
- "uuid": "~14.0.0",
120
- "viem": "^2.52.2",
118
+ "uuid": "~14.0.1",
119
+ "viem": "^2.53.1",
121
120
  "vite": "^8.0.16",
122
121
  "vitest": "^4.1.9",
123
122
  "webextension-polyfill": "^0.12.0",
124
123
  "zod": "~4.4.3",
125
- "zustand": "~5.0.14"
124
+ "zustand": "^5.0.14"
126
125
  },
127
126
  "peerDependencies": {
128
127
  "@bitauth/libauth": "~3.0",
@@ -158,7 +157,6 @@
158
157
  "@xylabs/sdk-js": "^6.0",
159
158
  "@xylabs/sdk-react": "^9.1",
160
159
  "@xylabs/threads": "^6.1",
161
- "@xyo-network/address": "^6.0",
162
160
  "@xyo-network/diviner-schema-list": "~6.1",
163
161
  "@xyo-network/diviner-schema-stats": "~6.1",
164
162
  "@xyo-network/node-core-types": "~4.2",
@@ -173,17 +171,17 @@
173
171
  "@xyo-network/xl1-sdk": "^3.0",
174
172
  "ajv": "^8.20",
175
173
  "async-mutex": "^0.5",
176
- "clsx": "~2.1",
174
+ "clsx": "^2.1",
177
175
  "cosmiconfig": "^9.0",
178
176
  "debug": "~4.4",
179
177
  "ethers": "^6.16",
180
178
  "hash-wasm": "~4.12",
181
179
  "idb": "^8.0",
182
180
  "lru-cache": "^11.3",
183
- "md5": "~2.3",
184
- "numeral": "~2.0",
181
+ "md5": "^2.3",
182
+ "numeral": "^2.0",
185
183
  "observable-fns": "~0.6",
186
- "query-string": "~9.3",
184
+ "query-string": "^9.3",
187
185
  "react": "^19.2",
188
186
  "react-dom": "^19.2",
189
187
  "react-router-dom": "^7.15",
@@ -193,7 +191,7 @@
193
191
  "vite": "^8.0",
194
192
  "webextension-polyfill": "^0.12",
195
193
  "zod": "~4.4",
196
- "zustand": "~5.0"
194
+ "zustand": "^5.0"
197
195
  },
198
196
  "engines": {
199
197
  "node": ">=24"