{"version":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"],"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 { BlockiesAvatar } from '@xyo-network/react-chain-blockies'\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 { 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.666_666_666_7, 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 { BlockiesAvatar } from '@xyo-network/react-chain-blockies'\nimport { NetworkIcon } from '@xyo-network/react-chain-network'\nimport { MainNetworkIconString } from '@xyo-network/xl1-sdk'\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  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 direction=\"row\" gap={2} justifyContent=\"space-between\" width=\"100%\">\n          <Typography component=\"span\" fontFamily=\"monospace\" variant=\"caption\">\n            {transferCardHelper.addressComponent(asAddress(address), 'To')}\n          </Typography>\n          <Typography\n            component=\"span\"\n            fontFamily=\"monospace\"\n            variant=\"caption\"\n            title={isDefined(amount) ? hexToBigInt(amount).toString() : ''}\n            sx={{\n              display: 'inline-flex', alignItems: 'center', gap: theme.spacing(0.25),\n            }}\n          >\n            {transferCardHelper.formatAmountToXl1(amount)}\n            <NetworkIcon\n              icon={MainNetworkIconString}\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 { Address, 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 {\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?: Address, prefix?: string): ReactNode {\n    const resolvedPrefix = isDefined(prefix) ? `${prefix}: ` : ''\n    const text = `${this.formatAddress(address) ?? 'Unknown'}`\n    if (this.options?.links?.has('address')) {\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?: Address): 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.entries(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 } from '@xyo-network/react-chain-network'\nimport { MainNetworkIconString } from '@xyo-network/xl1-sdk'\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\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={MainNetworkIconString}\n        style={{\n          width: 16, height: 16, display: 'inline-flex', alignItems: 'end',\n        }}\n      />\n      (XL1)\n    </Typography>\n  )\n}\n"],"mappings":"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","names":["createPayloadRenderPlugin","TransferSchema","FlexCol","React","Card","CardContent","CardHeader","List","useMediaQuery","useTheme","asAddress","asHex","BlockiesAvatar","useEvent","asTransfer","React","useMemo","ListItem","ListItemAvatar","ListItemText","Stack","Typography","useTheme","asAddress","hexToBigInt","isDefined","BlockiesAvatar","NetworkIcon","MainNetworkIconString","React","TransferRenderListItem","address","amount","sx","transferCardHelper","props","theme","useTheme","ListItem","px","ListItemAvatar","minWidth","mr","spacing","BlockiesAvatar","title","width","height","blockiesOptions","seed","ListItemText","borderBottom","vars","palette","divider","Stack","direction","gap","justifyContent","Typography","component","fontFamily","variant","addressComponent","asAddress","isDefined","hexToBigInt","toString","display","alignItems","formatAmountToXl1","NetworkIcon","icon","MainNetworkIconString","style","Link","ellipsize","hexToBigInt","isDefined","isHex","isUndefined","XL1Places","XL1Amount","React","TransferCardHelper","_dispatch","_isMedium","_options","_payload","isMedium","payload","dispatch","options","linkedAddresses","links","has","addressComponent","address","prefix","resolvedPrefix","isDefined","text","formatAddress","React","Link","onClick","sx","cursor","ellipsize","formatAmountToXl1","amount","isUndefined","amountBigInt","isHex","hexToBigInt","xl1Amount","XL1Amount","fromAtto","toString","Number","XL1Places","xl1","maxDecimal","maxCharacters","minDecimals","locale","navigator","language","totalTransferred","transfers","total","Object","entries","Typography","useTheme","NetworkIcon","MainNetworkIconString","React","TransferRenderTotalTypography","transferRenderHelper","sx","props","theme","useTheme","React","Typography","display","gap","spacing","fontFamily","variant","strong","totalTransferred","NetworkIcon","icon","MainNetworkIconString","style","width","height","alignItems","TransferRenderCard","options","payload","props","theme","useTheme","isMedium","useMediaQuery","breakpoints","up","ref","dispatch","useEvent","transfer","asTransfer","from","transfers","transferCardHelper","useMemo","TransferCardHelper","React","Card","CardHeader","title","addressComponent","slotProps","variant","fontFamily","avatar","BlockiesAvatar","sx","width","height","blockiesOptions","seed","CardContent","pb","spacing","List","Object","entries","map","address","amount","TransferRenderListItem","key","asAddress","asHex","TransferRenderTotalTypography","transferRenderHelper","justifyContent","pt","TransferRenderBoxDetails","options","payload","props","React","FlexCol","TransferRenderCard","TransferRenderPlugin","createPayloadRenderPlugin","canRender","payload","schema","TransferSchema","components","box","detailsBox","TransferRenderBoxDetails","detailsCard","TransferRenderCard","name"]}