{
  "version": 3,
  "sources": ["../../src/modules/payload-table/components/DynamicTable/DynamicTableRow.tsx", "../../src/modules/payload-table/components/DynamicTable/PayloadDynamicTableColumnConfig.ts", "../../src/modules/payload-table/components/DynamicTable/Table.tsx", "../../src/modules/payload-table/components/Table/PayloadTableColumnConfig.ts", "../../src/modules/payload-table/components/Table/Table.tsx", "../../src/modules/payload-table/components/Table/TableBody.tsx", "../../src/modules/payload-table/components/Table/TableRow.tsx", "../../src/modules/payload-table/components/Table/TableFooter.tsx", "../../src/modules/payload-table/components/Table/TablePagination.tsx", "../../src/modules/payload-table/components/Table/TableHead.tsx", "../../src/modules/payload-table/components/Table/TableRowNoData.tsx"],
  "sourcesContent": ["import { usePromise } from '@ariestools/sdk-react/promise'\nimport { useBreakpoint } from '@ariestools/sdk-react/shared'\nimport {\n  CheckCircleOutlineRounded as CheckCircleOutlineRoundedIcon,\n  ErrorOutlineRounded as ErrorOutlineRoundedIcon,\n  WarningAmberRounded as WarningAmberRoundedIcon,\n} from '@mui/icons-material'\nimport type {\n  AvatarProps, TableCellProps, TableRowProps,\n} from '@mui/material'\nimport {\n  TableCell, TableRow, Typography,\n} from '@mui/material'\nimport type { Payload } from '@xyo-network/sdk'\nimport { PayloadBuilder, PayloadValidator } from '@xyo-network/sdk'\nimport type { ComponentType } from 'react'\nimport React, { useMemo } from 'react'\n\nimport { useNetwork } from '#network'\nimport type { PayloadRenderProps } from '#payload-plugin'\nimport { usePayloadRenderPluginResolver } from '#payload-plugin-resolver'\nimport { HashTableCell, usePayloadHash } from '#shared'\n\nimport type { TableCellRenderer } from '../lib/index.ts'\nimport type {\n  PayloadDynamicTableColumnConfig,\n  PayloadDynamicTableColumnSlug,\n} from './PayloadDynamicTableColumnConfig.ts'\nimport { payloadDynamicTableColumnConfigDefaults } from './PayloadDynamicTableColumnConfig.ts'\n\n/** Props for {@link PayloadDynamicTableRow}. */\nexport interface PayloadDynamicTableRowProps extends TableRowProps {\n  /** @deprecated - archives are no longer used */\n  archive?: string\n  columns?: PayloadDynamicTableColumnConfig\n  /** @deprecated - use event listeners instead of link building via props */\n  exploreDomain?: string\n  network?: string\n  payload?: Payload & { sources?: string[] }\n}\n\n/** Dynamic payload row with plugin render cells and validation status. */\nexport const PayloadDynamicTableRow: React.FC<PayloadDynamicTableRowProps> = ({\n  columns,\n  network: networkProp,\n  payload,\n  ...props\n}) => {\n  const breakPoint = useBreakpoint()\n  const payloadHash = usePayloadHash(payload)\n  const { network } = useNetwork()\n  const { resolver } = usePayloadRenderPluginResolver()\n  const [validationErrors = []] = usePromise(async () => (payload ? await new PayloadValidator(payload).validate() : undefined), [payload])\n  const isValid = validationErrors.length === 0\n  const payloadFieldCount = payload ? Object.keys(PayloadBuilder.hashableFields(payload)).length : 0\n\n  const hash: TableCellRenderer = props => (\n    <HashTableCell\n      key=\"hash\"\n      align=\"left\"\n      value={payloadHash}\n      dataType=\"payload\"\n      network={networkProp ?? network?.slug}\n      {...props}\n    />\n  )\n\n  const schema: TableCellRenderer = props => (\n    <TableCell key=\"payloads\" align=\"left\" {...props}>\n      <Typography\n        variant=\"body2\"\n        noWrap\n        sx={{ fontFamily: 'monospace' }}\n      >\n        {payload?.schema}\n      </Typography>\n    </TableCell>\n  )\n\n  const details: TableCellRenderer = props => (\n    <TableCell key=\"payloads\" align=\"left\" {...props}>\n      <Typography\n        variant=\"body2\"\n        noWrap\n        sx={{ fontFamily: 'monospace' }}\n      >\n        {payloadFieldCount}\n      </Typography>\n    </TableCell>\n  )\n\n  const render: TableCellRenderer = (props) => {\n    const Render: ComponentType<PayloadRenderProps & TableCellProps> | undefined\n      = payload ? resolver?.resolve(payload)?.components.table.cell : undefined\n    return Render ? <Render payload={payload} {...props} /> : <TableCell key=\"payloads\" align=\"left\" {...props}></TableCell>\n  }\n\n  const icon: TableCellRenderer = (props) => {\n    const Avatar: ComponentType<PayloadRenderProps & AvatarProps> | undefined\n      = payload ? resolver?.resolve(payload)?.components.avatar.image : undefined\n\n    return (\n      <TableCell key=\"payloads\" align=\"left\" {...props}>\n        {Avatar\n          ? <Avatar payload={payload} />\n          : null}\n      </TableCell>\n    )\n  }\n\n  const valid: TableCellRenderer = props => (\n    <TableCell key=\"valid\" align=\"center\" {...props}>\n      {isValid === undefined && payload != undefined\n        ? <WarningAmberRoundedIcon fontSize=\"small\" color=\"warning\" />\n        : isValid === true\n          ? <CheckCircleOutlineRoundedIcon fontSize=\"small\" color=\"success\" />\n          : isValid === false\n            ? <ErrorOutlineRoundedIcon color=\"error\" fontSize=\"small\" />\n          // nbsp to keep row height consistent even when no data is provided for the row\n            : <Typography> &nbsp;</Typography>}\n    </TableCell>\n  )\n\n  const tableCells: Record<PayloadDynamicTableColumnSlug, TableCellRenderer> = {\n    details,\n    hash,\n    icon,\n    render,\n    schema,\n    valid,\n  }\n\n  const columnsMemo = useMemo(() => columns ?? payloadDynamicTableColumnConfigDefaults(), [columns])\n\n  return breakPoint\n    ? (\n        <TableRow style={{ maxWidth: '100vw' }} {...props}>\n          {columnsMemo[breakPoint]?.map((column) => {\n            return column.slug ? tableCells[column.slug]({}) : null\n          })}\n        </TableRow>\n      )\n    : null\n}\n", "/** Column identifiers supported by {@link PayloadDynamicTable}. */\nexport type PayloadDynamicTableColumnSlug = 'hash' | 'schema' | 'valid' | 'details' | 'render' | 'icon'\n\n/** Header metadata for a single dynamic payload table column. */\nexport interface PayloadDynamicTableColumnHeadData {\n  alignment?: 'left' | 'center' | 'right'\n  name?: string\n  slug?: 'hash' | 'schema' | 'valid' | 'details' | 'render' | 'icon'\n  width?: string | number\n}\n\n/** Breakpoint-keyed column head configuration for dynamic payload tables. */\nexport interface PayloadDynamicTableColumnConfig {\n  xs?: PayloadDynamicTableColumnHeadData[]\n  // eslint-disable-next-line @typescript-eslint/member-ordering\n  sm?: PayloadDynamicTableColumnHeadData[]\n  // eslint-disable-next-line @typescript-eslint/member-ordering\n  md?: PayloadDynamicTableColumnHeadData[]\n  // eslint-disable-next-line @typescript-eslint/member-ordering\n  lg?: PayloadDynamicTableColumnHeadData[]\n  xl?: PayloadDynamicTableColumnHeadData[]\n}\n\n/** Returns the default responsive column heads for {@link PayloadDynamicTable}. */\nexport const payloadDynamicTableColumnConfigDefaults = (): PayloadDynamicTableColumnConfig => {\n  const xs: PayloadDynamicTableColumnHeadData[] = [\n    {\n      alignment: 'left', name: 'Hash', slug: 'hash', width: '100%',\n    },\n    {\n      alignment: 'left', name: 'Schema', slug: 'schema', width: '50px',\n    },\n    {\n      alignment: 'left', name: 'Valid', slug: 'valid', width: '50px',\n    },\n  ]\n  const sm: PayloadDynamicTableColumnHeadData[] = [\n    {\n      alignment: 'left', name: 'Icon', slug: 'icon', width: '50px',\n    },\n    {\n      alignment: 'left', name: 'Hash', slug: 'hash', width: '100%',\n    },\n    {\n      alignment: 'left', name: 'Schema', slug: 'schema', width: '50px',\n    },\n    {\n      alignment: 'left', name: 'Valid', slug: 'valid', width: '50px',\n    },\n  ]\n  const md: PayloadDynamicTableColumnHeadData[] = [\n    {\n      alignment: 'left', name: 'Icon', slug: 'icon', width: '50px',\n    },\n    {\n      alignment: 'left', name: 'Hash', slug: 'hash', width: '100%',\n    },\n    {\n      alignment: 'left', name: 'Schema', slug: 'schema', width: '50px',\n    },\n    {\n      alignment: 'left', name: 'Valid', slug: 'valid', width: '50px',\n    },\n  ]\n  const lg: PayloadDynamicTableColumnHeadData[] = [\n    {\n      alignment: 'left', name: 'Icon', slug: 'icon', width: '50px',\n    },\n    {\n      alignment: 'left', name: 'Hash', slug: 'hash', width: '100%',\n    },\n    {\n      alignment: 'left', name: 'Schema', slug: 'schema', width: '50px',\n    },\n    {\n      alignment: 'left', name: 'Render', slug: 'render', width: '50px',\n    },\n    {\n      alignment: 'left', name: 'Valid', slug: 'valid', width: '50px',\n    },\n  ]\n  const xl: PayloadDynamicTableColumnHeadData[] = [\n    {\n      alignment: 'left', name: 'Icon', slug: 'icon', width: '50px',\n    },\n    {\n      alignment: 'left', name: 'Hash', slug: 'hash', width: '100%',\n    },\n    {\n      alignment: 'left', name: 'Schema', slug: 'schema', width: '50px',\n    },\n    {\n      alignment: 'left', name: 'Render', slug: 'render', width: '50px',\n    },\n    {\n      alignment: 'left', name: 'Valid', slug: 'valid', width: '50px',\n    },\n  ]\n  return {\n    lg, md, sm, xl, xs,\n  }\n}\n", "import { ThrownErrorBoundary } from '@ariestools/sdk-react/error'\nimport { useResetState } from '@ariestools/sdk-react/hooks'\nimport { useBreakpoint } from '@ariestools/sdk-react/shared'\nimport {\n  FirstPage as FirstPageIcon, KeyboardArrowLeft, KeyboardArrowRight, LastPage as LastPageIcon,\n} from '@mui/icons-material'\nimport type { TableProps } from '@mui/material'\nimport {\n  Alert,\n  Box,\n  IconButton,\n  Table,\n  TableBody,\n  TableCell,\n  TableFooter,\n  TableHead,\n  TablePagination,\n  TableRow,\n  Typography,\n  useTheme,\n} from '@mui/material'\nimport type { Payload } from '@xyo-network/sdk'\nimport React, { useMemo, useState } from 'react'\n\nimport { usePayloadHashes } from '#shared'\n\nimport { PayloadDynamicTableRow } from './DynamicTableRow.tsx'\nimport type { PayloadDynamicTableColumnConfig } from './PayloadDynamicTableColumnConfig.ts'\nimport { payloadDynamicTableColumnConfigDefaults } from './PayloadDynamicTableColumnConfig.ts'\n\n/** Props for {@link PayloadDynamicTable}. */\nexport interface PayloadDynamicTableProps extends TableProps {\n  archive?: string\n  columns?: PayloadDynamicTableColumnConfig\n  exploreDomain?: string\n  onRowClick?: (value: Payload) => void\n  payloads?: Payload[] | null\n  rowsPerPage?: number\n}\n\ninterface TablePaginationActionsProps {\n  count: number\n  onPageChange: (event: React.MouseEvent<HTMLButtonElement>, newPage: number) => void\n  page: number\n  rowsPerPage: number\n}\n\nconst TablePaginationActions: React.FC<TablePaginationActionsProps> = (props) => {\n  const theme = useTheme()\n  const {\n    count, page, rowsPerPage, onPageChange,\n  } = props\n\n  const handleFirstPageButtonClick = (event: React.MouseEvent<HTMLButtonElement>) => {\n    onPageChange(event, 0)\n  }\n\n  const handleBackButtonClick = (event: React.MouseEvent<HTMLButtonElement>) => {\n    onPageChange(event, page - 1)\n  }\n\n  const handleNextButtonClick = (event: React.MouseEvent<HTMLButtonElement>) => {\n    onPageChange(event, page + 1)\n  }\n\n  const handleLastPageButtonClick = (event: React.MouseEvent<HTMLButtonElement>) => {\n    onPageChange(event, Math.max(0, Math.ceil(count / rowsPerPage) - 1))\n  }\n\n  return (\n    <Box sx={{ flexShrink: 0, ml: 2.5 }}>\n      <IconButton onClick={handleFirstPageButtonClick} disabled={page === 0} aria-label=\"first page\">\n        {theme.direction === 'rtl'\n          ? <LastPageIcon />\n          : <FirstPageIcon />}\n      </IconButton>\n      <IconButton onClick={handleBackButtonClick} disabled={page === 0} aria-label=\"previous page\">\n        {theme.direction === 'rtl'\n          ? <KeyboardArrowRight />\n          : <KeyboardArrowLeft />}\n      </IconButton>\n      <IconButton onClick={handleNextButtonClick} disabled={page >= Math.ceil(count / rowsPerPage) - 1} aria-label=\"next page\">\n        {theme.direction === 'rtl'\n          ? <KeyboardArrowLeft />\n          : <KeyboardArrowRight />}\n      </IconButton>\n      <IconButton onClick={handleLastPageButtonClick} disabled={page >= Math.ceil(count / rowsPerPage) - 1} aria-label=\"last page\">\n        {theme.direction === 'rtl'\n          ? <FirstPageIcon />\n          : <LastPageIcon />}\n      </IconButton>\n    </Box>\n  )\n}\n\n/** Paginated payload table with plugin-aware dynamic columns and rendering. */\nexport const PayloadDynamicTable: React.FC<PayloadDynamicTableProps> = ({\n  archive,\n  children,\n  columns,\n  exploreDomain,\n  onRowClick,\n  rowsPerPage: rowsPerPageProp = 10,\n  payloads,\n  ...props\n}) => {\n  const breakPoint = useBreakpoint()\n  const [page, setPage] = useState(0)\n  const [rowsPerPage, setRowsPerPage] = useResetState(rowsPerPageProp)\n  const payloadCount = payloads ? payloads.length : 0\n  // Avoid a layout jump when reaching the last page with empty rows.\n  const emptyRows = page > 0 ? Math.max(0, (1 + page) * rowsPerPage - payloadCount) : 0\n\n  const pagedPayloads = useMemo(() => payloads?.slice(page * rowsPerPage, page * rowsPerPage + rowsPerPage), [payloads, page, rowsPerPage])\n\n  const payloadPairs = usePayloadHashes(pagedPayloads)\n\n  const handleChangePage = (event: React.MouseEvent<HTMLButtonElement> | null, newPage: number) => {\n    setPage(newPage)\n  }\n\n  const handleChangeRowsPerPage = (event: React.ChangeEvent<HTMLInputElement | HTMLTextAreaElement>) => {\n    setRowsPerPage(Number.parseInt(event.target.value, 10))\n    setPage(0)\n  }\n\n  return breakPoint\n    ? (\n        <Table stickyHeader {...props}>\n          <TableHead>\n            <TableRow>\n              {(columns ?? payloadDynamicTableColumnConfigDefaults())[breakPoint]?.map((column) => {\n                return (\n                  <TableCell\n                    key={column.name}\n                    align={column.alignment ?? 'left'}\n                    sx={{ width: column.width }}\n                  >\n                    <Typography variant=\"body2\" noWrap>\n                      {column.name}\n                    </Typography>\n                  </TableCell>\n                )\n              })}\n            </TableRow>\n          </TableHead>\n          <TableBody sx={{ overflowY: 'scroll ' }}>\n            {payloadPairs?.map(([payload, hash]) => {\n              return (\n                <ThrownErrorBoundary\n                  boundaryName=\"PayloadTableBody\"\n                  key={hash}\n                  errorComponent={e => (\n                    <Alert severity=\"error\">\n                      Error Loading Payload:\n                      {' '}\n                      <Typography sx={{ fontWeight: 'bold' }}>\n                        {e.message}\n                      </Typography>\n                    </Alert>\n                  )}\n                >\n                  <PayloadDynamicTableRow\n                    archive={archive}\n                    onClick={\n                      onRowClick\n                        ? () => {\n                            onRowClick(payload)\n                          }\n                        : undefined\n                    }\n                    exploreDomain={exploreDomain}\n                    payload={payload}\n                  />\n                </ThrownErrorBoundary>\n              )\n            })}\n            {children}\n            {emptyRows ? Array.from({ length: emptyRows }, (_row, index) => <PayloadDynamicTableRow key={`empty-row-${index}`} />) : null}\n          </TableBody>\n          <TableFooter>\n            <TableRow>\n              <TablePagination\n                rowsPerPageOptions={[5, 10, 25, { label: 'All', value: -1 }]}\n                colSpan={5}\n                count={payloadCount}\n                rowsPerPage={rowsPerPage}\n                page={page}\n                onPageChange={handleChangePage}\n                onRowsPerPageChange={handleChangeRowsPerPage}\n                ActionsComponent={TablePaginationActions}\n                slotProps={{\n                  select: {\n                    inputProps: { 'aria-label': 'rows per page' },\n                    native: true,\n                  },\n                }}\n              />\n            </TableRow>\n          </TableFooter>\n        </Table>\n      )\n    : null\n}\n", "import type { TableColumnConfig, TableColumnNames } from './lib/index.ts'\n\n/** Responsive column configuration for {@link PayloadTable}. */\nexport type PayloadTableColumnConfig = TableColumnConfig<PayloadTableColumnSlug>\n\n/** Built-in or custom column identifiers for payload table columns. */\nexport type PayloadTableColumnSlug = 'hash' | 'schema' | 'valid' | string\n\n/** Display labels for standard payload table column slugs. */\nexport const payloadColumnNames: TableColumnNames<PayloadTableColumnSlug> = {\n  hash: 'Hash',\n  schema: 'Schema',\n  valid: 'Valid',\n}\n\n/** Returns the default responsive column set for {@link PayloadTable}. */\nexport const payloadTableColumnConfigDefaults = (): PayloadTableColumnConfig => {\n  const xs: PayloadTableColumnSlug[] = ['hash', 'schema', 'valid']\n  const sm: PayloadTableColumnSlug[] = ['hash', 'schema', 'valid']\n  const md: PayloadTableColumnSlug[] = ['hash', 'schema', 'valid']\n  const lg: PayloadTableColumnSlug[] = ['hash', 'schema', 'valid']\n  const xl: PayloadTableColumnSlug[] = ['hash', 'schema', 'valid']\n  return {\n    lg, md, sm, xl, xs,\n  }\n}\n", "import { type Hash, isDefinedNotNull } from '@ariestools/sdk'\nimport type { Payload } from '@xyo-network/sdk'\nimport type { ComponentType } from 'react'\nimport React, { useMemo, useState } from 'react'\n\nimport type { TableExProps } from '#table'\nimport { TableEx } from '#table'\n\nimport type { PayloadTableColumnConfig, PayloadTableColumnSlug } from './PayloadTableColumnConfig.ts'\nimport { PayloadTableBody } from './TableBody.tsx'\nimport { PayloadTableFooter } from './TableFooter.tsx'\nimport { PayloadTableHead } from './TableHead.tsx'\nimport { TableRowNoData } from './TableRowNoData.tsx'\nimport type {\n  PayloadTableBodyProps, PayloadTableFooterProps, PayloadTableHeadProps,\n} from './types/index.ts'\n\n/** Props for {@link PayloadTable}. */\nexport interface PayloadTableProps extends TableExProps {\n  PayloadTableBodyComponent?: ComponentType<PayloadTableBodyProps>\n  PayloadTableFooterComponent?: ComponentType<PayloadTableFooterProps>\n  PayloadTableHeadComponent?: ComponentType<PayloadTableHeadProps>\n  /** @deprecated - archives are no longer used */\n  archive?: string\n  clickableFields?: PayloadTableColumnSlug[]\n  columns?: PayloadTableColumnConfig\n  /** Total number of payloads passed */\n  count?: number\n  /** @deprecated - use events to build links instead of passing props */\n  exploreDomain?: string\n  /** External trigger to fetch more payloads */\n  fetchMorePayloads?: () => void\n  loading?: boolean\n  /** set number of schema parts to display starting from the end */\n  maxSchemaDepth?: number\n  onHashClick?: (value: Hash) => void\n  onRowClick?: (value: Payload) => void\n  payloads?: Payload[] | null\n  rowsPerPage?: number\n}\n\n/** Paginated table for listing payloads with hash, schema, and validity columns. */\nexport const PayloadTableWithRef: React.FC<PayloadTableProps> = (\n  {\n    clickableFields,\n    onHashClick,\n    onRowClick,\n    fetchMorePayloads,\n    rowsPerPage: rowsPerPageProp = 25,\n    payloads,\n    columns,\n    PayloadTableHeadComponent = PayloadTableHead,\n    PayloadTableBodyComponent = PayloadTableBody,\n    PayloadTableFooterComponent = PayloadTableFooter,\n    maxSchemaDepth,\n    count = 0,\n    loading = false,\n    variant = 'scrollable',\n    ...props\n  },\n) => {\n  const [page, setPage] = useState(0)\n  const [rowsPerPage, setRowsPerPage] = useState(rowsPerPageProp)\n  const [previousRowsPerPage, setPreviousRowsPerPage] = useState(rowsPerPageProp)\n  if (rowsPerPageProp !== previousRowsPerPage) {\n    setPreviousRowsPerPage(rowsPerPageProp)\n    setRowsPerPage(rowsPerPageProp)\n  }\n  const [visiblePayloads, setVisiblePayloads] = useState<Payload[]>([])\n\n  // Avoid a layout jump when reaching the last page with empty rows.\n  const emptyRows = page > 0 ? Math.max(0, (1 + page) * rowsPerPage - count || 0) : 0\n\n  // React to various prop changes to derive new visible payloads\n  // count is needed to show initial payloads added async to the same payloads reference\n  const [previousPayloads, setPreviousPayloads] = useState(payloads)\n  if (payloads !== previousPayloads) {\n    // If the payload reference changes, assume we have a new list and reset current page\n    setPreviousPayloads(payloads)\n    setPage(0)\n    if (isDefinedNotNull(payloads)) {\n      setVisiblePayloads(payloads.slice(page * rowsPerPage, page * rowsPerPage + rowsPerPage))\n    }\n  }\n\n  const handleAdditionalPayloads = () => {\n    if (fetchMorePayloads && payloads) {\n      const buffer = rowsPerPage * 2\n      const lastVisiblePayload = visiblePayloads?.at(-1)\n      if (lastVisiblePayload) {\n        const lastVisibleIndex = payloads?.indexOf(lastVisiblePayload)\n        if (lastVisibleIndex !== undefined && payloads.length - (lastVisibleIndex + 1) <= buffer) {\n          fetchMorePayloads()\n        }\n      }\n    }\n  }\n\n  const handleChangePage = (_event: React.MouseEvent<HTMLButtonElement> | null, newPage: number) => {\n    handleAdditionalPayloads()\n    setPage(newPage)\n  }\n\n  const handleChangeRowsPerPage = (event: React.ChangeEvent<HTMLInputElement | HTMLTextAreaElement>) => {\n    setRowsPerPage(Number.parseInt(event.target.value, 10))\n    setPage(0)\n  }\n\n  const noResults = useMemo(() => {\n    return !loading && (visiblePayloads.length === 0)\n  }, [loading, visiblePayloads])\n\n  return (\n    <TableEx variant={variant} {...props}>\n      <PayloadTableHeadComponent columns={columns} />\n      <PayloadTableBodyComponent\n        clickableFields={clickableFields}\n        payloads={visiblePayloads}\n        maxSchemaDepth={maxSchemaDepth}\n        onRowClick={onRowClick}\n        onHashClick={onHashClick}\n        emptyRows={emptyRows}\n        noResults={noResults}\n        NoResultRowComponent={TableRowNoData}\n      />\n      <PayloadTableFooterComponent\n        count={count}\n        variant={variant}\n        rowsPerPage={rowsPerPage}\n        handleChangePage={handleChangePage}\n        handleChangeRowsPerPage={handleChangeRowsPerPage}\n        fetchMorePayloads={fetchMorePayloads}\n        loading={loading}\n        page={page}\n      />\n    </TableEx>\n  )\n}\n\nPayloadTableWithRef.displayName = 'PayloadTable'\n\n/** Alias for {@link PayloadTableWithRef}. */\nexport const PayloadTable = PayloadTableWithRef\n", "import { ThrownErrorBoundary } from '@ariestools/sdk-react/error'\nimport {\n  Alert, TableBody, Typography,\n} from '@mui/material'\nimport React from 'react'\n\nimport { usePayloadHashes } from '#shared'\n\nimport { PayloadTableRow } from './TableRow.tsx'\nimport type { PayloadTableBodyProps } from './types/index.ts'\n\n/** Table body that maps payloads to {@link PayloadTableRow} entries. */\nexport const PayloadTableBody: React.FC<PayloadTableBodyProps> = ({\n  children,\n  clickableFields,\n  payloads,\n  maxSchemaDepth,\n  onHashClick,\n  onRowClick,\n  emptyRows,\n  noResults,\n  NoResultRowComponent,\n  ...props\n}) => {\n  const payloadPairs = usePayloadHashes(payloads)\n\n  return (\n    <TableBody {...props}>\n      {noResults && NoResultRowComponent\n        ? <NoResultRowComponent />\n        : null}\n      {payloadPairs?.map(([payload, hash]) => {\n        return (\n          <ThrownErrorBoundary\n            boundaryName=\"PayloadTableBody\"\n            key={hash}\n            errorComponent={e => (\n              <Alert severity=\"error\">\n                Error Loading Payload:\n                {' '}\n                <Typography sx={{ fontWeight: 'bold' }}>\n                  {e.message}\n                </Typography>\n              </Alert>\n            )}\n          >\n            <PayloadTableRow\n              clickableFields={clickableFields}\n              maxSchemaDepth={maxSchemaDepth}\n              onClick={\n                onRowClick\n                  ? () => {\n                      onRowClick(payload)\n                    }\n                  : undefined\n              }\n              onHashClick={onHashClick}\n              payload={payload}\n            />\n          </ThrownErrorBoundary>\n        )\n      })}\n      {children}\n      {emptyRows ? Array.from({ length: emptyRows }, (_row, index) => <PayloadTableRow key={`empty-row-${index}`} />) : null}\n    </TableBody>\n  )\n}\n", "import type { Hash } from '@ariestools/sdk'\nimport { isDefined } from '@ariestools/sdk'\nimport { usePromise } from '@ariestools/sdk-react/promise'\nimport { useBreakpoint } from '@ariestools/sdk-react/shared'\nimport {\n  CheckCircleOutlineRounded as CheckCircleOutlineRoundedIcon,\n  ErrorOutlineRounded as ErrorOutlineRoundedIcon,\n  WarningAmberRounded as WarningAmberRoundedIcon,\n} from '@mui/icons-material'\nimport type { TableRowProps } from '@mui/material'\nimport {\n  alpha, Link, TableCell, TableRow, Typography,\n} from '@mui/material'\nimport type { Payload } from '@xyo-network/sdk'\nimport { PayloadValidator } from '@xyo-network/sdk'\nimport React, { useMemo } from 'react'\n\nimport { useEvent } from '#event'\nimport { HashTableCell, usePayloadHash } from '#shared'\n\nimport type { TableCellRenderer } from '../lib/index.ts'\nimport type { PayloadTableColumnConfig, PayloadTableColumnSlug } from './PayloadTableColumnConfig.ts'\nimport { payloadTableColumnConfigDefaults } from './PayloadTableColumnConfig.ts'\n\n/** Props for {@link PayloadTableRow}. */\nexport interface PayloadTableRowProps extends TableRowProps {\n  /** @deprecated - archives are no longer used */\n  archive?: string\n  clickableFields?: PayloadTableColumnSlug[]\n  columns?: PayloadTableColumnConfig\n  /** @deprecated - use event listeners instead of link building via props */\n  exploreDomain?: string\n  maxSchemaDepth?: number\n  network?: string\n  onHashClick?: (value: Hash) => void\n  payload?: Payload\n}\n\n/** Single payload row showing hash, schema, and validation status. */\nexport const PayloadTableRow: React.FC<PayloadTableRowProps> = ({\n  clickableFields,\n  columns,\n  maxSchemaDepth,\n  network: networkProp,\n  onHashClick,\n  payload,\n  ...props\n}) => {\n  const breakPoint = useBreakpoint()\n  const payloadHash = usePayloadHash(payload)\n  const [anchorRef, dispatch] = useEvent<HTMLAnchorElement>()\n  const [errors = []] = usePromise(async () => (payload ? await new PayloadValidator(payload).validate() : undefined), [payload])\n  const isValid = errors.length === 0\n\n  const hash: TableCellRenderer = props => (\n    <HashTableCell\n      dataType=\"payload\"\n      key=\"hash\"\n      onHashClick={onHashClick}\n      value={payloadHash}\n      width=\"100%\"\n      {...props}\n    >\n      {isDefined(payloadHash) && (\n        <>\n          {clickableFields?.includes('hash')\n            ? (\n                <Link onClick={() => dispatch('hash', 'click', payloadHash)} ref={anchorRef} sx={{ cursor: 'pointer' }}>{payloadHash}</Link>\n              )\n            : payloadHash}\n        </>\n      )}\n    </HashTableCell>\n  )\n\n  const reduceSchemaDepth = (schema?: string, maxSchemaDepth?: number) => {\n    if (isDefined(maxSchemaDepth)) {\n      const parts = schema?.split('.') ?? []\n      const partsToRemove = Math.max(parts.length - maxSchemaDepth, 0)\n      if (partsToRemove > 0) {\n        return (\n          <>\n            <>&#x2026;</>\n            {\n\n              `${parts.slice(partsToRemove).reduce((previousValue, part) => previousValue + '.' + part, '')}`\n            }\n          </>\n        )\n      }\n    }\n    return schema\n  }\n\n  const schema: TableCellRenderer = props => (\n    <TableCell title={payload?.schema} key=\"payloads\" align=\"center\" {...props}>\n      <Typography\n        variant=\"body2\"\n        noWrap\n        sx={{ fontFamily: 'monospace' }}\n      >\n        {clickableFields?.includes('schema')\n          ? (\n              <Link sx={{ cursor: 'pointer' }}>{reduceSchemaDepth(payload?.schema, maxSchemaDepth)}</Link>\n            )\n          : reduceSchemaDepth(payload?.schema, maxSchemaDepth)}\n\n      </Typography>\n    </TableCell>\n  )\n\n  const valid: TableCellRenderer = props => (\n    <TableCell key=\"valid\" align=\"center\" {...props}>\n      {isValid === undefined && payload != undefined\n        ? <WarningAmberRoundedIcon fontSize=\"small\" color=\"warning\" />\n        : isValid === true\n          ? <CheckCircleOutlineRoundedIcon fontSize=\"small\" color=\"success\" />\n          : isValid === false\n            ? <ErrorOutlineRoundedIcon color=\"error\" fontSize=\"small\" />\n          // to keep row height consistent when no data provided, may need fix later\n            : <ErrorOutlineRoundedIcon sx={{ color: alpha('#fff', 0) }} fontSize=\"small\" />}\n    </TableCell>\n  )\n\n  const tableCells: Record<PayloadTableColumnSlug, TableCellRenderer> = {\n    hash,\n    schema,\n    valid,\n  }\n\n  const columnsMemo = useMemo(() => columns ?? payloadTableColumnConfigDefaults(), [columns])\n\n  return isDefined(breakPoint)\n    ? (\n        <TableRow style={{ maxWidth: '100vw' }} {...props}>\n          {columnsMemo[breakPoint]?.map((column) => {\n            return tableCells[column]({})\n          })}\n        </TableRow>\n      )\n    : null\n}\n", "import {\n  styled, TablePagination, TableRow,\n} from '@mui/material'\nimport React from 'react'\n\nimport { TableFooterEx } from '#table'\n\nimport { TablePaginationActions } from './TablePagination.tsx'\nimport type { PayloadTableFooterProps } from './types/index.ts'\n\n/** Table footer with pagination controls and optional fetch-more support. */\nexport const PayloadTableFooter: React.FC<PayloadTableFooterProps> = ({\n  count,\n  variant,\n  page,\n  rowsPerPage,\n  handleChangePage,\n  handleChangeRowsPerPage,\n  fetchMorePayloads,\n  loading,\n}) => (\n  <TableFooterEx variant={variant}>\n    <TableRow>\n      <StyledTablePagination\n        rowsPerPageOptions={[5, 10, 25, { label: 'All', value: -1 }]}\n        count={count ?? 0}\n        rowsPerPage={rowsPerPage ?? 10}\n        page={page ?? 0}\n        slotProps={{\n          select: {\n            inputProps: { 'aria-label': 'rows per page' },\n            native: true,\n          },\n        }}\n        onPageChange={handleChangePage ?? (() => { /* noop */ })}\n        onRowsPerPageChange={handleChangeRowsPerPage ?? (() => { /* noop */ })}\n        // eslint-disable-next-line @typescript-eslint/no-explicit-any\n        ActionsComponent={(props: any) => <TablePaginationActions enableNextPage={!!fetchMorePayloads} loading={loading} {...props} />}\n      />\n    </TableRow>\n  </TableFooterEx>\n)\n\nconst StyledTablePagination = styled(TablePagination)(({ theme }) => ({\n  '& > .MuiToolbar-root': { paddingLeft: theme.spacing(1) },\n  'borderTop': '1px solid',\n  'borderTopColor': theme.vars.palette.divider,\n}))\n", "import {\n  FirstPage as FirstPageIcon, KeyboardArrowLeft, KeyboardArrowRight, LastPage as LastPageIcon,\n} from '@mui/icons-material'\nimport {\n  Box, CircularProgress, IconButton, useTheme,\n} from '@mui/material'\nimport React from 'react'\n\nimport { useEvent } from '#event'\n\nimport type { PaginationNouns } from './types/index.ts'\n\n/** Props for {@link TablePaginationActions}. */\nexport interface TablePaginationActionsProps {\n  count: number\n  enableNextPage?: boolean\n  loading?: boolean\n  onPageChange: (event: React.MouseEvent<HTMLButtonElement>, newPage: number) => void\n  page: number\n  rowsPerPage: number\n}\n\n/** First/previous/next/last page controls for payload table pagination. */\nexport function TablePaginationActions({\n  count, enableNextPage, loading, onPageChange, page, rowsPerPage,\n}: Readonly<TablePaginationActionsProps>) {\n  const theme = useTheme()\n  const [paginationRef, paginationDispatch] = useEvent<HTMLButtonElement, PaginationNouns>()\n\n  const handleFirstPageButtonClick = (event: React.MouseEvent<HTMLButtonElement>) => {\n    paginationDispatch('firstPage', 'click', 'true')\n    onPageChange(event, 0)\n  }\n\n  const handleBackButtonClick = (event: React.MouseEvent<HTMLButtonElement>) => {\n    paginationDispatch('previousPage', 'click', (page - 1)?.toString())\n    onPageChange(event, page - 1)\n  }\n\n  const handleNextButtonClick = (event: React.MouseEvent<HTMLButtonElement>) => {\n    paginationDispatch('nextPage', 'click', (page + 1)?.toString())\n    onPageChange(event, page + 1)\n  }\n\n  const handleLastPageButtonClick = (event: React.MouseEvent<HTMLButtonElement>) => {\n    paginationDispatch('lastPage', 'click', 'true')\n    onPageChange(event, Math.max(0, Math.ceil(count / rowsPerPage) - 1))\n  }\n\n  return (\n    <>\n      {loading\n        ? (\n            <CircularProgress\n              size=\"small\"\n              sx={{\n                height: theme.spacing(2), position: 'absolute', width: theme.spacing(2),\n              }}\n            />\n          )\n        : null}\n      <Box sx={{ flexShrink: 0, ml: 2.5 }}>\n        <IconButton onClick={handleFirstPageButtonClick} disabled={page === 0} aria-label=\"first page\">\n          {theme.direction === 'rtl'\n            ? <LastPageIcon />\n            : <FirstPageIcon />}\n        </IconButton>\n        <IconButton ref={paginationRef} onClick={handleBackButtonClick} disabled={page === 0} aria-label=\"previous page\">\n          {theme.direction === 'rtl'\n            ? <KeyboardArrowRight />\n            : <KeyboardArrowLeft />}\n        </IconButton>\n        <IconButton\n          ref={paginationRef}\n          onClick={handleNextButtonClick}\n          disabled={!enableNextPage && page >= Math.ceil(count / rowsPerPage) - 1}\n          aria-label=\"next page\"\n        >\n          {theme.direction === 'rtl'\n            ? <KeyboardArrowLeft />\n            : <KeyboardArrowRight />}\n        </IconButton>\n        <IconButton onClick={handleLastPageButtonClick} disabled={page >= Math.ceil(count / rowsPerPage) - 1} aria-label=\"last page\">\n          {theme.direction === 'rtl'\n            ? <FirstPageIcon />\n            : <LastPageIcon />}\n        </IconButton>\n      </Box>\n    </>\n  )\n}\n", "import { useBreakpoint } from '@ariestools/sdk-react/shared'\nimport {\n  TableCell, TableHead, TableRow, Typography,\n} from '@mui/material'\nimport React, { useMemo } from 'react'\n\nimport type { PayloadTableColumnSlug } from './PayloadTableColumnConfig.ts'\nimport { payloadColumnNames, payloadTableColumnConfigDefaults } from './PayloadTableColumnConfig.ts'\nimport type { PayloadTableHeadProps } from './types/index.ts'\n\n/** Table head that renders responsive payload column headers. */\nexport const PayloadTableHead: React.FC<PayloadTableHeadProps<PayloadTableColumnSlug>> = ({ columns, ...props }) => {\n  const breakPoint = useBreakpoint()\n  const columnsMemo = useMemo(() => columns ?? payloadTableColumnConfigDefaults(), [columns])\n  return (\n    <TableHead {...props}>\n      <TableRow>\n        {breakPoint\n          ? columnsMemo[breakPoint]?.map((column, index) => {\n              return (\n                <TableCell\n                  key={column}\n                  align={index === 0 ? 'left' : 'center'}\n                  sx={{ width: index === 0 ? '100%' : undefined }}\n                >\n                  <Typography variant=\"body2\" noWrap>\n                    {payloadColumnNames[column]}\n                  </Typography>\n                </TableCell>\n              )\n            })\n          : null}\n      </TableRow>\n    </TableHead>\n  )\n}\n", "import type { TableRowProps, TypographyProps } from '@mui/material'\nimport {\n  styled, TableCell, TableRow, Typography,\n} from '@mui/material'\nimport React from 'react'\n\n/** Props for {@link TableRowNoData}. */\nexport interface TableRowNoDataProps extends TableRowProps {\n  additionalCells?: number\n  hideBorder?: boolean\n  typographyProps?: TypographyProps\n}\n\n/** Placeholder row shown when a payload table has no data. */\nexport const TableRowNoData: React.FC<TableRowNoDataProps> = ({\n  additionalCells, hideBorder = false, typographyProps, ...props\n}) => {\n  return (\n    <TableRow {...props}>\n      <StyledTableCell hideBorder={hideBorder}>\n        <Typography variant=\"body2\" {...typographyProps}>\n          No Data To Display...\n        </Typography>\n      </StyledTableCell>\n      {additionalCells\n        ? Array.from({ length: additionalCells }, (_fill, index) => <StyledTableCell key={`empty-row-${index}`} hideBorder={hideBorder} />)\n        : null}\n    </TableRow>\n  )\n}\n\ninterface StyledTableCellProps {\n  hideBorder?: boolean\n}\n\nconst StyledTableCell = styled(TableCell, {\n  name: 'StyledTableCell',\n  shouldForwardProp: (prop: string) => prop !== 'hideBorder',\n})<StyledTableCellProps>(({ hideBorder }) => ({ ...(hideBorder && { border: 'none' }) }))\n"],
  "mappings": "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",
  "names": ["props", "useBreakpoint", "TableCell", "TableRow", "Typography", "useMemo", "jsx", "useBreakpoint", "useMemo", "TableRow", "TableCell", "Typography", "useMemo", "useState", "ThrownErrorBoundary", "Alert", "TableBody", "Typography", "usePayloadHashes", "usePromise", "useBreakpoint", "CheckCircleOutlineRoundedIcon", "ErrorOutlineRoundedIcon", "WarningAmberRoundedIcon", "TableCell", "TableRow", "Typography", "PayloadValidator", "useMemo", "HashTableCell", "usePayloadHash", "jsx", "jsxs", "useBreakpoint", "usePayloadHash", "usePromise", "PayloadValidator", "props", "HashTableCell", "schema", "maxSchemaDepth", "TableCell", "Typography", "WarningAmberRoundedIcon", "CheckCircleOutlineRoundedIcon", "ErrorOutlineRoundedIcon", "useMemo", "TableRow", "jsx", "jsxs", "usePayloadHashes", "TableBody", "ThrownErrorBoundary", "Alert", "Typography", "TablePagination", "TableRow", "FirstPageIcon", "KeyboardArrowLeft", "KeyboardArrowRight", "LastPageIcon", "Box", "IconButton", "useTheme", "useEvent", "Fragment", "jsx", "jsxs", "TablePaginationActions", "jsx", "TableRow", "TablePaginationActions", "TablePagination", "useBreakpoint", "TableCell", "TableHead", "TableRow", "Typography", "useMemo", "jsx", "useBreakpoint", "useMemo", "TableHead", "TableRow", "TableCell", "Typography", "styled", "TableCell", "TableRow", "Typography", "jsx", "jsxs", "jsx", "jsxs", "useState", "useMemo"]
}
