@xyo-network/react-payload-table 2.67.5 → 2.67.7

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.
@@ -177,7 +177,7 @@ var PayloadDynamicTable = ({
177
177
  setPage(newPage);
178
178
  };
179
179
  const handleChangeRowsPerPage = (event) => {
180
- setRowsPerPage(parseInt(event.target.value, 10));
180
+ setRowsPerPage(Number.parseInt(event.target.value, 10));
181
181
  setPage(0);
182
182
  };
183
183
  return breakPoint ? /* @__PURE__ */ jsxs(Table, { stickyHeader: true, ...props, children: [
@@ -306,6 +306,7 @@ var PayloadTableRow = ({
306
306
  if (partsToRemove > 0) {
307
307
  return /* @__PURE__ */ jsxs2(Fragment, { children: [
308
308
  /* @__PURE__ */ jsx3(Fragment, { children: "\u2026" }),
309
+ // eslint-disable-next-line unicorn/no-array-reduce
309
310
  `${parts.slice(partsToRemove).reduce((previousValue, part) => `${previousValue}.${part}`)}`
310
311
  ] });
311
312
  }
@@ -431,8 +432,10 @@ var PayloadTableFooter = ({
431
432
  variant,
432
433
  page,
433
434
  rowsPerPage,
434
- handleChangePage = () => void 0,
435
- handleChangeRowsPerPage = () => void 0,
435
+ handleChangePage = () => {
436
+ },
437
+ handleChangeRowsPerPage = () => {
438
+ },
436
439
  fetchMorePayloads,
437
440
  loading
438
441
  }) => /* @__PURE__ */ jsx6(TableFooterEx, { variant, children: /* @__PURE__ */ jsx6(TableRow4, { children: /* @__PURE__ */ jsx6(
@@ -479,7 +482,7 @@ import { jsx as jsx8, jsxs as jsxs5 } from "react/jsx-runtime";
479
482
  var TableRowNoData = ({ additionalCells, hideBorder = false, typographyProps, ...props }) => {
480
483
  return /* @__PURE__ */ jsxs5(TableRow6, { ...props, children: [
481
484
  /* @__PURE__ */ jsx8(StyledTableCell, { hideBorder, children: /* @__PURE__ */ jsx8(Typography6, { variant: "body2", ...typographyProps, children: "No Data To Display..." }) }),
482
- additionalCells ? Array(additionalCells).fill(void 0).map((_fill, index) => /* @__PURE__ */ jsx8(StyledTableCell, { hideBorder }, index)) : null
485
+ additionalCells ? Array(additionalCells).fill(null).map((_fill, index) => /* @__PURE__ */ jsx8(StyledTableCell, { hideBorder }, index)) : null
483
486
  ] });
484
487
  };
485
488
  var StyledTableCell = styled2(TableCell5, {
@@ -541,7 +544,7 @@ var PayloadTableWithRef = forwardRef(
541
544
  setPage(newPage);
542
545
  };
543
546
  const handleChangeRowsPerPage = (event) => {
544
- setRowsPerPage(parseInt(event.target.value, 10));
547
+ setRowsPerPage(Number.parseInt(event.target.value, 10));
545
548
  setPage(0);
546
549
  };
547
550
  const noResults = useMemo2(() => {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/components/DynamicTable/DynamicTableRow.tsx","../../src/components/DynamicTable/PayloadDynamicTableColumnConfig.ts","../../src/components/DynamicTable/Table.tsx","../../src/components/Table/PayloadTableColumnConfig.ts","../../src/components/Table/Table.tsx","../../src/components/Table/TableBody.tsx","../../src/components/Table/TableRow.tsx","../../src/components/Table/TableFooter.tsx","../../src/components/Table/TablePagination.tsx","../../src/components/Table/TableHead.tsx","../../src/components/Table/TableRowNoData.tsx"],"sourcesContent":["import {\n CheckCircleOutlineRounded as CheckCircleOutlineRoundedIcon,\n ErrorOutlineRounded as ErrorOutlineRoundedIcon,\n WarningAmberRounded as WarningAmberRoundedIcon,\n} from '@mui/icons-material'\nimport { AvatarProps, TableCell, TableCellProps, TableRow, TableRowProps, Typography } from '@mui/material'\nimport { usePromise } from '@xylabs/react-promise'\nimport { useBreakpoint } from '@xylabs/react-shared'\nimport { PayloadHasher } from '@xyo-network/hash'\nimport { Payload } from '@xyo-network/payload-model'\nimport { PayloadValidator } from '@xyo-network/payload-validator'\nimport { useNetwork } from '@xyo-network/react-network'\nimport { PayloadRenderProps } from '@xyo-network/react-payload-plugin'\nimport { usePayloadRenderPluginResolver } from '@xyo-network/react-payload-plugin-resolver'\nimport { HashTableCell, HashTableCellProps, usePayloadHash } from '@xyo-network/react-shared'\nimport { ComponentType } from 'react'\n\nimport {\n PayloadDynamicTableColumnConfig,\n payloadDynamicTableColumnConfigDefaults,\n PayloadDynamicTableColumnSlug,\n} from './PayloadDynamicTableColumnConfig'\n\nexport interface PayloadDynamicTableRowProps extends TableRowProps {\n archive?: string\n columns?: PayloadDynamicTableColumnConfig\n exploreDomain?: string\n network?: string\n payload?: Payload & { sources?: string[] }\n}\n\nexport const PayloadDynamicTableRow: React.FC<PayloadDynamicTableRowProps> = ({\n archive,\n columns = payloadDynamicTableColumnConfigDefaults(),\n exploreDomain,\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(PayloadHasher.hashFields(payload)).length : 0\n const hash: React.FC<HashTableCellProps> = (props) => (\n <HashTableCell\n key=\"hash\"\n align=\"left\"\n archive={archive}\n value={payloadHash}\n dataType=\"payload\"\n exploreDomain={exploreDomain}\n network={networkProp ?? network?.slug}\n {...props}\n />\n )\n\n const schema: React.FC<TableCellProps> = (props) => (\n <TableCell key=\"payloads\" align=\"left\" {...props}>\n <Typography fontFamily=\"monospace\" variant=\"body2\" noWrap>\n {payload?.schema}\n </Typography>\n </TableCell>\n )\n\n const details: React.FC<TableCellProps> = (props) => (\n <TableCell key=\"payloads\" align=\"left\" {...props}>\n <Typography fontFamily=\"monospace\" variant=\"body2\" noWrap>\n {payloadFieldCount}\n </Typography>\n </TableCell>\n )\n\n const render: React.FC<TableCellProps> = (props) => {\n const Render: ComponentType<PayloadRenderProps & TableCellProps> | undefined = payload\n ? resolver?.resolve(payload)?.components.table.cell\n : undefined\n return Render ? <Render payload={payload} {...props} /> : <TableCell key=\"payloads\" align=\"left\" {...props}></TableCell>\n }\n\n const icon: React.FC<TableCellProps> = (props) => {\n const Avatar: ComponentType<PayloadRenderProps & AvatarProps> | undefined = payload\n ? resolver?.resolve(payload)?.components.avatar.image\n : undefined\n\n return (\n <TableCell key=\"payloads\" align=\"left\" {...props}>\n {Avatar ? <Avatar payload={payload} /> : null}\n </TableCell>\n )\n }\n\n const valid: React.FC<TableCellProps> = (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 ) : (\n //nbsp to keep row height consistent even when no data is provided for the row\n <Typography> &nbsp;</Typography>\n )}\n </TableCell>\n )\n\n const tableCells: Record<PayloadDynamicTableColumnSlug, React.FC<TableCellProps>> = {\n details,\n hash,\n icon,\n render,\n schema,\n valid,\n }\n\n return breakPoint ? (\n <TableRow style={{ maxWidth: '100vw' }} {...props}>\n {columns[breakPoint]?.map((column) => {\n return column.slug ? tableCells[column.slug]({}) : null\n })}\n </TableRow>\n ) : null\n}\n","export type PayloadDynamicTableColumnSlug = 'hash' | 'schema' | 'valid' | 'details' | 'render' | 'icon'\n\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\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\nexport const payloadDynamicTableColumnConfigDefaults = (): PayloadDynamicTableColumnConfig => {\n const xs: PayloadDynamicTableColumnHeadData[] = [\n { alignment: 'left', name: 'Hash', slug: 'hash', width: '100%' },\n { alignment: 'left', name: 'Schema', slug: 'schema', width: '50px' },\n { alignment: 'left', name: 'Valid', slug: 'valid', width: '50px' },\n ]\n const sm: PayloadDynamicTableColumnHeadData[] = [\n { alignment: 'left', name: 'Icon', slug: 'icon', width: '50px' },\n { alignment: 'left', name: 'Hash', slug: 'hash', width: '100%' },\n { alignment: 'left', name: 'Schema', slug: 'schema', width: '50px' },\n { alignment: 'left', name: 'Valid', slug: 'valid', width: '50px' },\n ]\n const md: PayloadDynamicTableColumnHeadData[] = [\n { alignment: 'left', name: 'Icon', slug: 'icon', width: '50px' },\n { alignment: 'left', name: 'Hash', slug: 'hash', width: '100%' },\n { alignment: 'left', name: 'Schema', slug: 'schema', width: '50px' },\n { alignment: 'left', name: 'Valid', slug: 'valid', width: '50px' },\n ]\n const lg: PayloadDynamicTableColumnHeadData[] = [\n { alignment: 'left', name: 'Icon', slug: 'icon', width: '50px' },\n { alignment: 'left', name: 'Hash', slug: 'hash', width: '100%' },\n { alignment: 'left', name: 'Schema', slug: 'schema', width: '50px' },\n { alignment: 'left', name: 'Render', slug: 'render', width: '50px' },\n { alignment: 'left', name: 'Valid', slug: 'valid', width: '50px' },\n ]\n const xl: PayloadDynamicTableColumnHeadData[] = [\n { alignment: 'left', name: 'Icon', slug: 'icon', width: '50px' },\n { alignment: 'left', name: 'Hash', slug: 'hash', width: '100%' },\n { alignment: 'left', name: 'Schema', slug: 'schema', width: '50px' },\n { alignment: 'left', name: 'Render', slug: 'render', width: '50px' },\n { alignment: 'left', name: 'Valid', slug: 'valid', width: '50px' },\n ]\n return { lg, md, sm, xl, xs }\n}\n","import { FirstPage as FirstPageIcon, KeyboardArrowLeft, KeyboardArrowRight, LastPage as LastPageIcon } from '@mui/icons-material'\nimport {\n Alert,\n Box,\n IconButton,\n Table,\n TableBody,\n TableCell,\n TableFooter,\n TableHead,\n TablePagination,\n TableProps,\n TableRow,\n Typography,\n useTheme,\n} from '@mui/material'\nimport { useBreakpoint } from '@xylabs/react-shared'\nimport { Payload } from '@xyo-network/payload-model'\nimport { ThrownErrorBoundary } from '@xyo-network/react-error'\nimport { usePayloadHashes } from '@xyo-network/react-shared'\nimport { useEffect, useMemo, useState } from 'react'\n\nimport { PayloadDynamicTableRow } from './DynamicTableRow'\nimport { PayloadDynamicTableColumnConfig, payloadDynamicTableColumnConfigDefaults } from './PayloadDynamicTableColumnConfig'\n\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\nfunction TablePaginationActions(props: TablePaginationActionsProps) {\n const theme = useTheme()\n const { count, page, rowsPerPage, onPageChange } = 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' ? <LastPageIcon /> : <FirstPageIcon />}\n </IconButton>\n <IconButton onClick={handleBackButtonClick} disabled={page === 0} aria-label=\"previous page\">\n {theme.direction === 'rtl' ? <KeyboardArrowRight /> : <KeyboardArrowLeft />}\n </IconButton>\n <IconButton onClick={handleNextButtonClick} disabled={page >= Math.ceil(count / rowsPerPage) - 1} aria-label=\"next page\">\n {theme.direction === 'rtl' ? <KeyboardArrowLeft /> : <KeyboardArrowRight />}\n </IconButton>\n <IconButton onClick={handleLastPageButtonClick} disabled={page >= Math.ceil(count / rowsPerPage) - 1} aria-label=\"last page\">\n {theme.direction === 'rtl' ? <FirstPageIcon /> : <LastPageIcon />}\n </IconButton>\n </Box>\n )\n}\n\nexport const PayloadDynamicTable: React.FC<PayloadDynamicTableProps> = ({\n archive,\n children,\n columns = payloadDynamicTableColumnConfigDefaults(),\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] = useState(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 useEffect(() => {\n setRowsPerPage(rowsPerPageProp)\n }, [rowsPerPageProp])\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(parseInt(event.target.value, 10))\n setPage(0)\n }\n\n return breakPoint ? (\n <Table stickyHeader {...props}>\n <TableHead>\n <TableRow>\n {columns[breakPoint]?.map((column, index) => {\n return (\n <TableCell key={index} align={column.alignment ?? 'left'} width={column.width}>\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], index) => {\n return (\n <ThrownErrorBoundary\n boundaryName=\"PayloadTableBody\"\n key={`${hash}-${index}`}\n errorComponent={(e) => (\n <Alert severity=\"error\">\n Error Loading Payload: <Typography fontWeight=\"bold\">{e.message}</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 > 0 && Array(emptyRows).fill(<PayloadDynamicTableRow />)}\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 SelectProps={{\n inputProps: {\n 'aria-label': 'rows per page',\n },\n native: true,\n }}\n onPageChange={handleChangePage}\n onRowsPerPageChange={handleChangeRowsPerPage}\n ActionsComponent={TablePaginationActions}\n />\n </TableRow>\n </TableFooter>\n </Table>\n ) : null\n}\n","export type PayloadTableColumnSlug = 'hash' | 'schema' | 'valid'\n\nexport interface PayloadTableColumnConfig<T = PayloadTableColumnSlug> {\n xs?: T[]\n // eslint-disable-next-line @typescript-eslint/member-ordering\n sm?: T[]\n // eslint-disable-next-line @typescript-eslint/member-ordering\n md?: T[]\n // eslint-disable-next-line @typescript-eslint/member-ordering\n lg?: T[]\n xl?: T[]\n}\n\nexport const payloadColumnNames: Record<PayloadTableColumnSlug, string> = {\n hash: 'Hash',\n schema: 'Schema',\n valid: 'Valid',\n}\n\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 { lg, md, sm, xl, xs }\n}\n","import { Payload } from '@xyo-network/payload-model'\nimport { TableEx, TableExProps } from '@xyo-network/react-table'\nimport { ComponentType, forwardRef, useEffect, useMemo, useState } from 'react'\n\nimport { PayloadTableColumnConfig } from './PayloadTableColumnConfig'\nimport { PayloadTableBody } from './TableBody'\nimport { PayloadTableFooter } from './TableFooter'\nimport { PayloadTableHead } from './TableHead'\nimport { TableRowNoData } from './TableRowNoData'\nimport { PayloadTableBodyProps, PayloadTableFooterProps, PayloadTableHeadProps } from './types'\n\nexport interface PayloadTableProps extends TableExProps {\n PayloadTableBodyComponent?: ComponentType<PayloadTableBodyProps>\n PayloadTableFooterComponent?: ComponentType<PayloadTableFooterProps>\n PayloadTableHeadComponent?: ComponentType<PayloadTableHeadProps>\n archive?: string\n columns?: PayloadTableColumnConfig\n /** Total number of payloads passed */\n count?: number\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 onRowClick?: (value: Payload) => void\n payloads?: Payload[] | null\n rowsPerPage?: number\n}\n\nexport const PayloadTableWithRef = forwardRef<HTMLTableElement, PayloadTableProps>(\n (\n {\n exploreDomain,\n archive,\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 ref,\n ) => {\n const [page, setPage] = useState(0)\n const [rowsPerPage, setRowsPerPage] = useState(rowsPerPageProp)\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 useEffect(() => {\n setRowsPerPage(rowsPerPageProp)\n }, [rowsPerPageProp])\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 useEffect(() => {\n if (payloads) {\n setVisiblePayloads(payloads.slice(page * rowsPerPage, page * rowsPerPage + rowsPerPage))\n }\n }, [count, page, payloads, rowsPerPage])\n\n // If the payload reference changes, assume we have a new list and reset current page\n useEffect(() => {\n setPage(0)\n }, [payloads])\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(parseInt(event.target.value, 10))\n setPage(0)\n }\n\n const noResults = useMemo(() => {\n return !loading && (!visiblePayloads || visiblePayloads.length === 0)\n }, [loading, visiblePayloads])\n\n return (\n <TableEx variant={variant} ref={ref} {...props}>\n <PayloadTableHeadComponent columns={columns} />\n <PayloadTableBodyComponent\n payloads={visiblePayloads}\n exploreDomain={exploreDomain}\n archive={archive}\n maxSchemaDepth={maxSchemaDepth}\n onRowClick={onRowClick}\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)\n\nPayloadTableWithRef.displayName = 'PayloadTable'\n\nexport const PayloadTable = PayloadTableWithRef\n","import { Alert, TableBody, Typography } from '@mui/material'\nimport { ThrownErrorBoundary } from '@xyo-network/react-error'\nimport { usePayloadHashes } from '@xyo-network/react-shared'\n\nimport { PayloadTableRow } from './TableRow'\nimport { PayloadTableBodyProps } from './types'\n\nexport const PayloadTableBody: React.FC<PayloadTableBodyProps> = ({\n children,\n exploreDomain,\n payloads,\n archive,\n maxSchemaDepth,\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 ? <NoResultRowComponent /> : null}\n {payloadPairs?.map(([payload, hash], index) => {\n return (\n <ThrownErrorBoundary\n boundaryName=\"PayloadTableBody\"\n key={`${hash}-${index}`}\n errorComponent={(e) => (\n <Alert severity=\"error\">\n Error Loading Payload: <Typography fontWeight=\"bold\">{e.message}</Typography>\n </Alert>\n )}\n >\n <PayloadTableRow\n maxSchemaDepth={maxSchemaDepth}\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 ?? 0) > 0 && Array(emptyRows).fill(<PayloadTableRow />)}\n </TableBody>\n )\n}\n","import {\n CheckCircleOutlineRounded as CheckCircleOutlineRoundedIcon,\n ErrorOutlineRounded as ErrorOutlineRoundedIcon,\n WarningAmberRounded as WarningAmberRoundedIcon,\n} from '@mui/icons-material'\nimport { alpha, TableCell, TableCellProps, TableRow, TableRowProps, Typography } from '@mui/material'\nimport { usePromise } from '@xylabs/react-promise'\nimport { useBreakpoint } from '@xylabs/react-shared'\nimport { Payload } from '@xyo-network/payload-model'\nimport { PayloadValidator } from '@xyo-network/payload-validator'\nimport { useNetwork } from '@xyo-network/react-network'\nimport { HashTableCell, usePayloadHash } from '@xyo-network/react-shared'\n\nimport { PayloadTableColumnConfig, payloadTableColumnConfigDefaults, PayloadTableColumnSlug } from './PayloadTableColumnConfig'\n\nexport interface PayloadTableRowProps extends TableRowProps {\n archive?: string\n columns?: PayloadTableColumnConfig\n exploreDomain?: string\n maxSchemaDepth?: number\n network?: string\n payload?: Payload\n}\n\nexport const PayloadTableRow: React.FC<PayloadTableRowProps> = ({\n archive,\n columns = payloadTableColumnConfigDefaults(),\n exploreDomain,\n maxSchemaDepth,\n network: networkProp,\n payload,\n ...props\n}) => {\n const breakPoint = useBreakpoint()\n const payloadHash = usePayloadHash(payload)\n const { network } = useNetwork()\n const [errors = []] = usePromise(async () => (payload ? await new PayloadValidator(payload).validate() : undefined), [payload])\n const isValid = errors.length === 0\n\n const hash: React.FC<TableCellProps> = (props) => (\n <HashTableCell\n key=\"hash\"\n archive={archive}\n width=\"100%\"\n value={payloadHash}\n dataType=\"payload\"\n exploreDomain={exploreDomain}\n network={networkProp ?? network?.slug}\n {...props}\n />\n )\n\n const reduceSchemaDepth = (schema?: string, maxSchemaDepth?: number) => {\n if (maxSchemaDepth) {\n const parts = schema?.split('.') ?? []\n const partsToRemove = parts.length - maxSchemaDepth > 0 ? parts.length - maxSchemaDepth : 0\n if (partsToRemove > 0) {\n return (\n <>\n <>&#x2026;</>\n {`${parts.slice(partsToRemove).reduce((previousValue, part) => `${previousValue}.${part}`)}`}\n </>\n )\n }\n }\n return schema\n }\n\n const schema: React.FC<TableCellProps> = (props) => (\n <TableCell title={payload?.schema} key=\"payloads\" align=\"center\" {...props}>\n <Typography fontFamily=\"monospace\" variant=\"body2\" noWrap>\n {reduceSchemaDepth(payload?.schema, maxSchemaDepth)}\n </Typography>\n </TableCell>\n )\n\n const valid: React.FC<TableCellProps> = (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 ) : (\n //to keep row height consistent when no data provided, may need fix later\n <ErrorOutlineRoundedIcon sx={{ color: alpha('#fff', 0) }} fontSize=\"small\" />\n )}\n </TableCell>\n )\n\n const tableCells: Record<PayloadTableColumnSlug, React.FC<TableCellProps>> = {\n hash,\n schema,\n valid,\n }\n\n return breakPoint ? (\n <TableRow style={{ maxWidth: '100vw' }} {...props}>\n {columns[breakPoint]?.map((column) => {\n return tableCells[column]({})\n })}\n </TableRow>\n ) : null\n}\n","import { styled, TablePagination, TableRow } from '@mui/material'\nimport { TableFooterEx } from '@xyo-network/react-table'\n\nimport { TablePaginationActions } from './TablePagination'\nimport { PayloadTableFooterProps } from './types'\n\nexport const PayloadTableFooter: React.FC<PayloadTableFooterProps> = ({\n count,\n variant,\n page,\n rowsPerPage,\n handleChangePage = () => undefined,\n handleChangeRowsPerPage = () => undefined,\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 SelectProps={{\n inputProps: {\n 'aria-label': 'rows per page',\n },\n native: true,\n }}\n onPageChange={handleChangePage}\n onRowsPerPageChange={handleChangeRowsPerPage}\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': {\n paddingLeft: theme.spacing(1),\n },\n borderTop: '1px solid',\n borderTopColor: theme.palette.divider,\n}))\n","import { FirstPage as FirstPageIcon, KeyboardArrowLeft, KeyboardArrowRight, LastPage as LastPageIcon } from '@mui/icons-material'\nimport { Box, CircularProgress, IconButton, useTheme } from '@mui/material'\nimport { useEvent } from '@xyo-network/react-event'\n\nimport { PaginationNouns } from './types'\n\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\nexport function TablePaginationActions({ count, enableNextPage, loading, onPageChange, page, rowsPerPage }: 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 ? <CircularProgress size={'small'} sx={{ height: theme.spacing(2), position: 'absolute', width: theme.spacing(2) }} /> : null}\n <Box sx={{ flexShrink: 0, ml: 2.5 }}>\n <IconButton onClick={handleFirstPageButtonClick} disabled={page === 0} aria-label=\"first page\">\n {theme.direction === 'rtl' ? <LastPageIcon /> : <FirstPageIcon />}\n </IconButton>\n <IconButton ref={paginationRef} onClick={handleBackButtonClick} disabled={page === 0} aria-label=\"previous page\">\n {theme.direction === 'rtl' ? <KeyboardArrowRight /> : <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' ? <KeyboardArrowLeft /> : <KeyboardArrowRight />}\n </IconButton>\n <IconButton onClick={handleLastPageButtonClick} disabled={page >= Math.ceil(count / rowsPerPage) - 1} aria-label=\"last page\">\n {theme.direction === 'rtl' ? <FirstPageIcon /> : <LastPageIcon />}\n </IconButton>\n </Box>\n </>\n )\n}\n","import { TableCell, TableHead, TableRow, Typography } from '@mui/material'\nimport { useBreakpoint } from '@xylabs/react-shared'\n\nimport { payloadColumnNames, payloadTableColumnConfigDefaults } from './PayloadTableColumnConfig'\nimport { PayloadTableHeadProps } from './types'\n\nexport const PayloadTableHead: React.FC<PayloadTableHeadProps> = ({ columns = payloadTableColumnConfigDefaults(), ...props }) => {\n const breakPoint = useBreakpoint()\n return (\n <TableHead {...props}>\n <TableRow>\n {breakPoint && columns\n ? columns[breakPoint]?.map((column, index) => {\n return (\n <TableCell key={index} width={index === 0 ? '100%' : undefined} align={index === 0 ? 'left' : 'center'}>\n <Typography variant=\"body2\" noWrap>\n {payloadColumnNames[column]}\n </Typography>\n </TableCell>\n )\n })\n : null}\n </TableRow>\n </TableHead>\n )\n}\n","import { styled, TableCell, TableRow, TableRowProps, Typography, TypographyProps } from '@mui/material'\n\nexport interface TableRowNoDataProps extends TableRowProps {\n additionalCells?: number\n hideBorder?: boolean\n typographyProps?: TypographyProps\n}\n\nexport const TableRowNoData: React.FC<TableRowNoDataProps> = ({ additionalCells, hideBorder = false, typographyProps, ...props }) => {\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(additionalCells)\n .fill(undefined)\n .map((_fill, index) => <StyledTableCell key={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 }) => ({\n ...(hideBorder && { border: 'none' }),\n}))\n"],"mappings":"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","names":["props","_a","TableCell","TableRow","Typography","useBreakpoint","jsx","useBreakpoint","TableRow","TableCell","Typography","useEffect","useMemo","useState","Alert","TableBody","Typography","ThrownErrorBoundary","usePayloadHashes","CheckCircleOutlineRoundedIcon","ErrorOutlineRoundedIcon","WarningAmberRoundedIcon","TableCell","TableRow","Typography","usePromise","useBreakpoint","PayloadValidator","useNetwork","HashTableCell","usePayloadHash","jsx","jsxs","useBreakpoint","usePayloadHash","useNetwork","usePromise","PayloadValidator","props","HashTableCell","schema","maxSchemaDepth","TableCell","Typography","WarningAmberRoundedIcon","CheckCircleOutlineRoundedIcon","ErrorOutlineRoundedIcon","TableRow","jsx","jsxs","usePayloadHashes","TableBody","ThrownErrorBoundary","Alert","Typography","TablePagination","TableRow","FirstPageIcon","KeyboardArrowLeft","KeyboardArrowRight","LastPageIcon","Box","IconButton","useTheme","Fragment","jsx","jsxs","TablePaginationActions","jsx","TableRow","TablePaginationActions","TablePagination","TableCell","TableHead","TableRow","Typography","useBreakpoint","jsx","useBreakpoint","TableHead","TableRow","TableCell","Typography","styled","TableCell","TableRow","Typography","jsx","jsxs","jsx","jsxs","useState","useEffect","useMemo"]}
1
+ {"version":3,"sources":["../../src/components/DynamicTable/DynamicTableRow.tsx","../../src/components/DynamicTable/PayloadDynamicTableColumnConfig.ts","../../src/components/DynamicTable/Table.tsx","../../src/components/Table/PayloadTableColumnConfig.ts","../../src/components/Table/Table.tsx","../../src/components/Table/TableBody.tsx","../../src/components/Table/TableRow.tsx","../../src/components/Table/TableFooter.tsx","../../src/components/Table/TablePagination.tsx","../../src/components/Table/TableHead.tsx","../../src/components/Table/TableRowNoData.tsx"],"sourcesContent":["import {\n CheckCircleOutlineRounded as CheckCircleOutlineRoundedIcon,\n ErrorOutlineRounded as ErrorOutlineRoundedIcon,\n WarningAmberRounded as WarningAmberRoundedIcon,\n} from '@mui/icons-material'\nimport { AvatarProps, TableCell, TableCellProps, TableRow, TableRowProps, Typography } from '@mui/material'\nimport { usePromise } from '@xylabs/react-promise'\nimport { useBreakpoint } from '@xylabs/react-shared'\nimport { PayloadHasher } from '@xyo-network/hash'\nimport { Payload } from '@xyo-network/payload-model'\nimport { PayloadValidator } from '@xyo-network/payload-validator'\nimport { useNetwork } from '@xyo-network/react-network'\nimport { PayloadRenderProps } from '@xyo-network/react-payload-plugin'\nimport { usePayloadRenderPluginResolver } from '@xyo-network/react-payload-plugin-resolver'\nimport { HashTableCell, HashTableCellProps, usePayloadHash } from '@xyo-network/react-shared'\nimport { ComponentType } from 'react'\n\nimport {\n PayloadDynamicTableColumnConfig,\n payloadDynamicTableColumnConfigDefaults,\n PayloadDynamicTableColumnSlug,\n} from './PayloadDynamicTableColumnConfig'\n\nexport interface PayloadDynamicTableRowProps extends TableRowProps {\n archive?: string\n columns?: PayloadDynamicTableColumnConfig\n exploreDomain?: string\n network?: string\n payload?: Payload & { sources?: string[] }\n}\n\nexport const PayloadDynamicTableRow: React.FC<PayloadDynamicTableRowProps> = ({\n archive,\n columns = payloadDynamicTableColumnConfigDefaults(),\n exploreDomain,\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(PayloadHasher.hashFields(payload)).length : 0\n const hash: React.FC<HashTableCellProps> = (props) => (\n <HashTableCell\n key=\"hash\"\n align=\"left\"\n archive={archive}\n value={payloadHash}\n dataType=\"payload\"\n exploreDomain={exploreDomain}\n network={networkProp ?? network?.slug}\n {...props}\n />\n )\n\n const schema: React.FC<TableCellProps> = (props) => (\n <TableCell key=\"payloads\" align=\"left\" {...props}>\n <Typography fontFamily=\"monospace\" variant=\"body2\" noWrap>\n {payload?.schema}\n </Typography>\n </TableCell>\n )\n\n const details: React.FC<TableCellProps> = (props) => (\n <TableCell key=\"payloads\" align=\"left\" {...props}>\n <Typography fontFamily=\"monospace\" variant=\"body2\" noWrap>\n {payloadFieldCount}\n </Typography>\n </TableCell>\n )\n\n const render: React.FC<TableCellProps> = (props) => {\n const Render: ComponentType<PayloadRenderProps & TableCellProps> | undefined = payload\n ? resolver?.resolve(payload)?.components.table.cell\n : undefined\n return Render ? <Render payload={payload} {...props} /> : <TableCell key=\"payloads\" align=\"left\" {...props}></TableCell>\n }\n\n const icon: React.FC<TableCellProps> = (props) => {\n const Avatar: ComponentType<PayloadRenderProps & AvatarProps> | undefined = payload\n ? resolver?.resolve(payload)?.components.avatar.image\n : undefined\n\n return (\n <TableCell key=\"payloads\" align=\"left\" {...props}>\n {Avatar ? <Avatar payload={payload} /> : null}\n </TableCell>\n )\n }\n\n const valid: React.FC<TableCellProps> = (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 ) : (\n //nbsp to keep row height consistent even when no data is provided for the row\n <Typography> &nbsp;</Typography>\n )}\n </TableCell>\n )\n\n const tableCells: Record<PayloadDynamicTableColumnSlug, React.FC<TableCellProps>> = {\n details,\n hash,\n icon,\n render,\n schema,\n valid,\n }\n\n return breakPoint ? (\n <TableRow style={{ maxWidth: '100vw' }} {...props}>\n {columns[breakPoint]?.map((column) => {\n return column.slug ? tableCells[column.slug]({}) : null\n })}\n </TableRow>\n ) : null\n}\n","export type PayloadDynamicTableColumnSlug = 'hash' | 'schema' | 'valid' | 'details' | 'render' | 'icon'\n\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\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\nexport const payloadDynamicTableColumnConfigDefaults = (): PayloadDynamicTableColumnConfig => {\n const xs: PayloadDynamicTableColumnHeadData[] = [\n { alignment: 'left', name: 'Hash', slug: 'hash', width: '100%' },\n { alignment: 'left', name: 'Schema', slug: 'schema', width: '50px' },\n { alignment: 'left', name: 'Valid', slug: 'valid', width: '50px' },\n ]\n const sm: PayloadDynamicTableColumnHeadData[] = [\n { alignment: 'left', name: 'Icon', slug: 'icon', width: '50px' },\n { alignment: 'left', name: 'Hash', slug: 'hash', width: '100%' },\n { alignment: 'left', name: 'Schema', slug: 'schema', width: '50px' },\n { alignment: 'left', name: 'Valid', slug: 'valid', width: '50px' },\n ]\n const md: PayloadDynamicTableColumnHeadData[] = [\n { alignment: 'left', name: 'Icon', slug: 'icon', width: '50px' },\n { alignment: 'left', name: 'Hash', slug: 'hash', width: '100%' },\n { alignment: 'left', name: 'Schema', slug: 'schema', width: '50px' },\n { alignment: 'left', name: 'Valid', slug: 'valid', width: '50px' },\n ]\n const lg: PayloadDynamicTableColumnHeadData[] = [\n { alignment: 'left', name: 'Icon', slug: 'icon', width: '50px' },\n { alignment: 'left', name: 'Hash', slug: 'hash', width: '100%' },\n { alignment: 'left', name: 'Schema', slug: 'schema', width: '50px' },\n { alignment: 'left', name: 'Render', slug: 'render', width: '50px' },\n { alignment: 'left', name: 'Valid', slug: 'valid', width: '50px' },\n ]\n const xl: PayloadDynamicTableColumnHeadData[] = [\n { alignment: 'left', name: 'Icon', slug: 'icon', width: '50px' },\n { alignment: 'left', name: 'Hash', slug: 'hash', width: '100%' },\n { alignment: 'left', name: 'Schema', slug: 'schema', width: '50px' },\n { alignment: 'left', name: 'Render', slug: 'render', width: '50px' },\n { alignment: 'left', name: 'Valid', slug: 'valid', width: '50px' },\n ]\n return { lg, md, sm, xl, xs }\n}\n","import { FirstPage as FirstPageIcon, KeyboardArrowLeft, KeyboardArrowRight, LastPage as LastPageIcon } from '@mui/icons-material'\nimport {\n Alert,\n Box,\n IconButton,\n Table,\n TableBody,\n TableCell,\n TableFooter,\n TableHead,\n TablePagination,\n TableProps,\n TableRow,\n Typography,\n useTheme,\n} from '@mui/material'\nimport { useBreakpoint } from '@xylabs/react-shared'\nimport { Payload } from '@xyo-network/payload-model'\nimport { ThrownErrorBoundary } from '@xyo-network/react-error'\nimport { usePayloadHashes } from '@xyo-network/react-shared'\nimport { useEffect, useMemo, useState } from 'react'\n\nimport { PayloadDynamicTableRow } from './DynamicTableRow'\nimport { PayloadDynamicTableColumnConfig, payloadDynamicTableColumnConfigDefaults } from './PayloadDynamicTableColumnConfig'\n\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\nfunction TablePaginationActions(props: TablePaginationActionsProps) {\n const theme = useTheme()\n const { count, page, rowsPerPage, onPageChange } = 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' ? <LastPageIcon /> : <FirstPageIcon />}\n </IconButton>\n <IconButton onClick={handleBackButtonClick} disabled={page === 0} aria-label=\"previous page\">\n {theme.direction === 'rtl' ? <KeyboardArrowRight /> : <KeyboardArrowLeft />}\n </IconButton>\n <IconButton onClick={handleNextButtonClick} disabled={page >= Math.ceil(count / rowsPerPage) - 1} aria-label=\"next page\">\n {theme.direction === 'rtl' ? <KeyboardArrowLeft /> : <KeyboardArrowRight />}\n </IconButton>\n <IconButton onClick={handleLastPageButtonClick} disabled={page >= Math.ceil(count / rowsPerPage) - 1} aria-label=\"last page\">\n {theme.direction === 'rtl' ? <FirstPageIcon /> : <LastPageIcon />}\n </IconButton>\n </Box>\n )\n}\n\nexport const PayloadDynamicTable: React.FC<PayloadDynamicTableProps> = ({\n archive,\n children,\n columns = payloadDynamicTableColumnConfigDefaults(),\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] = useState(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 useEffect(() => {\n setRowsPerPage(rowsPerPageProp)\n }, [rowsPerPageProp])\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 <Table stickyHeader {...props}>\n <TableHead>\n <TableRow>\n {columns[breakPoint]?.map((column, index) => {\n return (\n <TableCell key={index} align={column.alignment ?? 'left'} width={column.width}>\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], index) => {\n return (\n <ThrownErrorBoundary\n boundaryName=\"PayloadTableBody\"\n key={`${hash}-${index}`}\n errorComponent={(e) => (\n <Alert severity=\"error\">\n Error Loading Payload: <Typography fontWeight=\"bold\">{e.message}</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 > 0 && Array(emptyRows).fill(<PayloadDynamicTableRow />)}\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 SelectProps={{\n inputProps: {\n 'aria-label': 'rows per page',\n },\n native: true,\n }}\n onPageChange={handleChangePage}\n onRowsPerPageChange={handleChangeRowsPerPage}\n ActionsComponent={TablePaginationActions}\n />\n </TableRow>\n </TableFooter>\n </Table>\n ) : null\n}\n","export type PayloadTableColumnSlug = 'hash' | 'schema' | 'valid'\n\nexport interface PayloadTableColumnConfig<T = PayloadTableColumnSlug> {\n xs?: T[]\n // eslint-disable-next-line @typescript-eslint/member-ordering\n sm?: T[]\n // eslint-disable-next-line @typescript-eslint/member-ordering\n md?: T[]\n // eslint-disable-next-line @typescript-eslint/member-ordering\n lg?: T[]\n xl?: T[]\n}\n\nexport const payloadColumnNames: Record<PayloadTableColumnSlug, string> = {\n hash: 'Hash',\n schema: 'Schema',\n valid: 'Valid',\n}\n\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 { lg, md, sm, xl, xs }\n}\n","import { Payload } from '@xyo-network/payload-model'\nimport { TableEx, TableExProps } from '@xyo-network/react-table'\nimport { ComponentType, forwardRef, useEffect, useMemo, useState } from 'react'\n\nimport { PayloadTableColumnConfig } from './PayloadTableColumnConfig'\nimport { PayloadTableBody } from './TableBody'\nimport { PayloadTableFooter } from './TableFooter'\nimport { PayloadTableHead } from './TableHead'\nimport { TableRowNoData } from './TableRowNoData'\nimport { PayloadTableBodyProps, PayloadTableFooterProps, PayloadTableHeadProps } from './types'\n\nexport interface PayloadTableProps extends TableExProps {\n PayloadTableBodyComponent?: ComponentType<PayloadTableBodyProps>\n PayloadTableFooterComponent?: ComponentType<PayloadTableFooterProps>\n PayloadTableHeadComponent?: ComponentType<PayloadTableHeadProps>\n archive?: string\n columns?: PayloadTableColumnConfig\n /** Total number of payloads passed */\n count?: number\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 onRowClick?: (value: Payload) => void\n payloads?: Payload[] | null\n rowsPerPage?: number\n}\n\nexport const PayloadTableWithRef = forwardRef<HTMLTableElement, PayloadTableProps>(\n (\n {\n exploreDomain,\n archive,\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 ref,\n ) => {\n const [page, setPage] = useState(0)\n const [rowsPerPage, setRowsPerPage] = useState(rowsPerPageProp)\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 useEffect(() => {\n setRowsPerPage(rowsPerPageProp)\n }, [rowsPerPageProp])\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 useEffect(() => {\n if (payloads) {\n setVisiblePayloads(payloads.slice(page * rowsPerPage, page * rowsPerPage + rowsPerPage))\n }\n }, [count, page, payloads, rowsPerPage])\n\n // If the payload reference changes, assume we have a new list and reset current page\n useEffect(() => {\n setPage(0)\n }, [payloads])\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 || visiblePayloads.length === 0)\n }, [loading, visiblePayloads])\n\n return (\n <TableEx variant={variant} ref={ref} {...props}>\n <PayloadTableHeadComponent columns={columns} />\n <PayloadTableBodyComponent\n payloads={visiblePayloads}\n exploreDomain={exploreDomain}\n archive={archive}\n maxSchemaDepth={maxSchemaDepth}\n onRowClick={onRowClick}\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)\n\nPayloadTableWithRef.displayName = 'PayloadTable'\n\nexport const PayloadTable = PayloadTableWithRef\n","import { Alert, TableBody, Typography } from '@mui/material'\nimport { ThrownErrorBoundary } from '@xyo-network/react-error'\nimport { usePayloadHashes } from '@xyo-network/react-shared'\n\nimport { PayloadTableRow } from './TableRow'\nimport { PayloadTableBodyProps } from './types'\n\nexport const PayloadTableBody: React.FC<PayloadTableBodyProps> = ({\n children,\n exploreDomain,\n payloads,\n archive,\n maxSchemaDepth,\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 ? <NoResultRowComponent /> : null}\n {payloadPairs?.map(([payload, hash], index) => {\n return (\n <ThrownErrorBoundary\n boundaryName=\"PayloadTableBody\"\n key={`${hash}-${index}`}\n errorComponent={(e) => (\n <Alert severity=\"error\">\n Error Loading Payload: <Typography fontWeight=\"bold\">{e.message}</Typography>\n </Alert>\n )}\n >\n <PayloadTableRow\n maxSchemaDepth={maxSchemaDepth}\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 ?? 0) > 0 && Array(emptyRows).fill(<PayloadTableRow />)}\n </TableBody>\n )\n}\n","import {\n CheckCircleOutlineRounded as CheckCircleOutlineRoundedIcon,\n ErrorOutlineRounded as ErrorOutlineRoundedIcon,\n WarningAmberRounded as WarningAmberRoundedIcon,\n} from '@mui/icons-material'\nimport { alpha, TableCell, TableCellProps, TableRow, TableRowProps, Typography } from '@mui/material'\nimport { usePromise } from '@xylabs/react-promise'\nimport { useBreakpoint } from '@xylabs/react-shared'\nimport { Payload } from '@xyo-network/payload-model'\nimport { PayloadValidator } from '@xyo-network/payload-validator'\nimport { useNetwork } from '@xyo-network/react-network'\nimport { HashTableCell, usePayloadHash } from '@xyo-network/react-shared'\n\nimport { PayloadTableColumnConfig, payloadTableColumnConfigDefaults, PayloadTableColumnSlug } from './PayloadTableColumnConfig'\n\nexport interface PayloadTableRowProps extends TableRowProps {\n archive?: string\n columns?: PayloadTableColumnConfig\n exploreDomain?: string\n maxSchemaDepth?: number\n network?: string\n payload?: Payload\n}\n\nexport const PayloadTableRow: React.FC<PayloadTableRowProps> = ({\n archive,\n columns = payloadTableColumnConfigDefaults(),\n exploreDomain,\n maxSchemaDepth,\n network: networkProp,\n payload,\n ...props\n}) => {\n const breakPoint = useBreakpoint()\n const payloadHash = usePayloadHash(payload)\n const { network } = useNetwork()\n const [errors = []] = usePromise(async () => (payload ? await new PayloadValidator(payload).validate() : undefined), [payload])\n const isValid = errors.length === 0\n\n const hash: React.FC<TableCellProps> = (props) => (\n <HashTableCell\n key=\"hash\"\n archive={archive}\n width=\"100%\"\n value={payloadHash}\n dataType=\"payload\"\n exploreDomain={exploreDomain}\n network={networkProp ?? network?.slug}\n {...props}\n />\n )\n\n const reduceSchemaDepth = (schema?: string, maxSchemaDepth?: number) => {\n if (maxSchemaDepth) {\n const parts = schema?.split('.') ?? []\n const partsToRemove = parts.length - maxSchemaDepth > 0 ? parts.length - maxSchemaDepth : 0\n if (partsToRemove > 0) {\n return (\n <>\n <>&#x2026;</>\n {\n // eslint-disable-next-line unicorn/no-array-reduce\n `${parts.slice(partsToRemove).reduce((previousValue, part) => `${previousValue}.${part}`)}`\n }\n </>\n )\n }\n }\n return schema\n }\n\n const schema: React.FC<TableCellProps> = (props) => (\n <TableCell title={payload?.schema} key=\"payloads\" align=\"center\" {...props}>\n <Typography fontFamily=\"monospace\" variant=\"body2\" noWrap>\n {reduceSchemaDepth(payload?.schema, maxSchemaDepth)}\n </Typography>\n </TableCell>\n )\n\n const valid: React.FC<TableCellProps> = (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 ) : (\n //to keep row height consistent when no data provided, may need fix later\n <ErrorOutlineRoundedIcon sx={{ color: alpha('#fff', 0) }} fontSize=\"small\" />\n )}\n </TableCell>\n )\n\n const tableCells: Record<PayloadTableColumnSlug, React.FC<TableCellProps>> = {\n hash,\n schema,\n valid,\n }\n\n return breakPoint ? (\n <TableRow style={{ maxWidth: '100vw' }} {...props}>\n {columns[breakPoint]?.map((column) => {\n return tableCells[column]({})\n })}\n </TableRow>\n ) : null\n}\n","import { styled, TablePagination, TableRow } from '@mui/material'\nimport { TableFooterEx } from '@xyo-network/react-table'\n\nimport { TablePaginationActions } from './TablePagination'\nimport { PayloadTableFooterProps } from './types'\n\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 SelectProps={{\n inputProps: {\n 'aria-label': 'rows per page',\n },\n native: true,\n }}\n onPageChange={handleChangePage}\n onRowsPerPageChange={handleChangeRowsPerPage}\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': {\n paddingLeft: theme.spacing(1),\n },\n borderTop: '1px solid',\n borderTopColor: theme.palette.divider,\n}))\n","import { FirstPage as FirstPageIcon, KeyboardArrowLeft, KeyboardArrowRight, LastPage as LastPageIcon } from '@mui/icons-material'\nimport { Box, CircularProgress, IconButton, useTheme } from '@mui/material'\nimport { useEvent } from '@xyo-network/react-event'\n\nimport { PaginationNouns } from './types'\n\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\nexport function TablePaginationActions({ count, enableNextPage, loading, onPageChange, page, rowsPerPage }: 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 ? <CircularProgress size={'small'} sx={{ height: theme.spacing(2), position: 'absolute', width: theme.spacing(2) }} /> : null}\n <Box sx={{ flexShrink: 0, ml: 2.5 }}>\n <IconButton onClick={handleFirstPageButtonClick} disabled={page === 0} aria-label=\"first page\">\n {theme.direction === 'rtl' ? <LastPageIcon /> : <FirstPageIcon />}\n </IconButton>\n <IconButton ref={paginationRef} onClick={handleBackButtonClick} disabled={page === 0} aria-label=\"previous page\">\n {theme.direction === 'rtl' ? <KeyboardArrowRight /> : <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' ? <KeyboardArrowLeft /> : <KeyboardArrowRight />}\n </IconButton>\n <IconButton onClick={handleLastPageButtonClick} disabled={page >= Math.ceil(count / rowsPerPage) - 1} aria-label=\"last page\">\n {theme.direction === 'rtl' ? <FirstPageIcon /> : <LastPageIcon />}\n </IconButton>\n </Box>\n </>\n )\n}\n","import { TableCell, TableHead, TableRow, Typography } from '@mui/material'\nimport { useBreakpoint } from '@xylabs/react-shared'\n\nimport { payloadColumnNames, payloadTableColumnConfigDefaults } from './PayloadTableColumnConfig'\nimport { PayloadTableHeadProps } from './types'\n\nexport const PayloadTableHead: React.FC<PayloadTableHeadProps> = ({ columns = payloadTableColumnConfigDefaults(), ...props }) => {\n const breakPoint = useBreakpoint()\n return (\n <TableHead {...props}>\n <TableRow>\n {breakPoint && columns\n ? columns[breakPoint]?.map((column, index) => {\n return (\n <TableCell key={index} width={index === 0 ? '100%' : undefined} align={index === 0 ? 'left' : 'center'}>\n <Typography variant=\"body2\" noWrap>\n {payloadColumnNames[column]}\n </Typography>\n </TableCell>\n )\n })\n : null}\n </TableRow>\n </TableHead>\n )\n}\n","import { styled, TableCell, TableRow, TableRowProps, Typography, TypographyProps } from '@mui/material'\n\nexport interface TableRowNoDataProps extends TableRowProps {\n additionalCells?: number\n hideBorder?: boolean\n typographyProps?: TypographyProps\n}\n\nexport const TableRowNoData: React.FC<TableRowNoDataProps> = ({ additionalCells, hideBorder = false, typographyProps, ...props }) => {\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(additionalCells)\n .fill(null)\n .map((_fill, index) => <StyledTableCell key={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 }) => ({\n ...(hideBorder && { border: 'none' }),\n}))\n"],"mappings":"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","names":["props","_a","TableCell","TableRow","Typography","useBreakpoint","jsx","useBreakpoint","TableRow","TableCell","Typography","useEffect","useMemo","useState","Alert","TableBody","Typography","ThrownErrorBoundary","usePayloadHashes","CheckCircleOutlineRoundedIcon","ErrorOutlineRoundedIcon","WarningAmberRoundedIcon","TableCell","TableRow","Typography","usePromise","useBreakpoint","PayloadValidator","useNetwork","HashTableCell","usePayloadHash","jsx","jsxs","useBreakpoint","usePayloadHash","useNetwork","usePromise","PayloadValidator","props","HashTableCell","schema","maxSchemaDepth","TableCell","Typography","WarningAmberRoundedIcon","CheckCircleOutlineRoundedIcon","ErrorOutlineRoundedIcon","TableRow","jsx","jsxs","usePayloadHashes","TableBody","ThrownErrorBoundary","Alert","Typography","TablePagination","TableRow","FirstPageIcon","KeyboardArrowLeft","KeyboardArrowRight","LastPageIcon","Box","IconButton","useTheme","Fragment","jsx","jsxs","TablePaginationActions","jsx","TableRow","TablePaginationActions","TablePagination","TableCell","TableHead","TableRow","Typography","useBreakpoint","jsx","useBreakpoint","TableHead","TableRow","TableCell","Typography","styled","TableCell","TableRow","Typography","jsx","jsxs","jsx","jsxs","useState","useEffect","useMemo"]}
package/package.json CHANGED
@@ -12,25 +12,25 @@
12
12
  "dependencies": {
13
13
  "@xylabs/react-promise": "^3.0.35",
14
14
  "@xylabs/react-shared": "^3.0.35",
15
- "@xyo-network/hash": "^2.84.7",
16
- "@xyo-network/payload-model": "^2.84.7",
17
- "@xyo-network/payload-validator": "^2.84.7",
18
- "@xyo-network/react-error": "~2.67.5",
19
- "@xyo-network/react-event": "~2.67.5",
20
- "@xyo-network/react-network": "~2.67.5",
21
- "@xyo-network/react-payload-plugin": "~2.67.5",
22
- "@xyo-network/react-payload-plugin-resolver": "~2.67.5",
23
- "@xyo-network/react-shared": "~2.67.5",
24
- "@xyo-network/react-table": "~2.67.5"
15
+ "@xyo-network/hash": "^2.85.4",
16
+ "@xyo-network/payload-model": "^2.85.4",
17
+ "@xyo-network/payload-validator": "^2.85.4",
18
+ "@xyo-network/react-error": "~2.67.7",
19
+ "@xyo-network/react-event": "~2.67.7",
20
+ "@xyo-network/react-network": "~2.67.7",
21
+ "@xyo-network/react-payload-plugin": "~2.67.7",
22
+ "@xyo-network/react-payload-plugin-resolver": "~2.67.7",
23
+ "@xyo-network/react-shared": "~2.67.7",
24
+ "@xyo-network/react-table": "~2.67.7"
25
25
  },
26
26
  "devDependencies": {
27
- "@storybook/react": "^7.6.5",
28
- "@xylabs/delay": "^2.13.20",
29
- "@xylabs/ts-scripts-yarn3": "^3.2.24",
30
- "@xylabs/tsconfig-react": "^3.2.24",
31
- "@xyo-network/react-crypto-market-uniswap-plugin": "~2.67.5",
32
- "@xyo-network/react-storybook": "~2.67.5",
33
- "react-router-dom": "^6.21.0",
27
+ "@storybook/react": "^7.6.6",
28
+ "@xylabs/delay": "^2.13.22",
29
+ "@xylabs/ts-scripts-yarn3": "^3.2.25",
30
+ "@xylabs/tsconfig-react": "^3.2.25",
31
+ "@xyo-network/react-crypto-market-uniswap-plugin": "~2.67.7",
32
+ "@xyo-network/react-storybook": "~2.67.7",
33
+ "react-router-dom": "^6.21.1",
34
34
  "typescript": "^5.3.3"
35
35
  },
36
36
  "peerDependencies": {
@@ -91,6 +91,6 @@
91
91
  "license": "yarn license-checker --exclude \"MIT, ISC, Apache-2.0, BSD, BSD-2-Clause, CC-BY-4.0, Unlicense, CC-BY-3.0, CC0-1.0\""
92
92
  },
93
93
  "sideEffects": false,
94
- "version": "2.67.5",
94
+ "version": "2.67.7",
95
95
  "type": "module"
96
96
  }
@@ -107,7 +107,7 @@ export const PayloadDynamicTable: React.FC<PayloadDynamicTableProps> = ({
107
107
  }
108
108
 
109
109
  const handleChangeRowsPerPage = (event: React.ChangeEvent<HTMLInputElement | HTMLTextAreaElement>) => {
110
- setRowsPerPage(parseInt(event.target.value, 10))
110
+ setRowsPerPage(Number.parseInt(event.target.value, 10))
111
111
  setPage(0)
112
112
  }
113
113
 
@@ -92,7 +92,7 @@ export const PayloadTableWithRef = forwardRef<HTMLTableElement, PayloadTableProp
92
92
  }
93
93
 
94
94
  const handleChangeRowsPerPage = (event: React.ChangeEvent<HTMLInputElement | HTMLTextAreaElement>) => {
95
- setRowsPerPage(parseInt(event.target.value, 10))
95
+ setRowsPerPage(Number.parseInt(event.target.value, 10))
96
96
  setPage(0)
97
97
  }
98
98
 
@@ -9,8 +9,8 @@ export const PayloadTableFooter: React.FC<PayloadTableFooterProps> = ({
9
9
  variant,
10
10
  page,
11
11
  rowsPerPage,
12
- handleChangePage = () => undefined,
13
- handleChangeRowsPerPage = () => undefined,
12
+ handleChangePage = () => {},
13
+ handleChangeRowsPerPage = () => {},
14
14
  fetchMorePayloads,
15
15
  loading,
16
16
  }) => (
@@ -58,7 +58,10 @@ export const PayloadTableRow: React.FC<PayloadTableRowProps> = ({
58
58
  return (
59
59
  <>
60
60
  <>&#x2026;</>
61
- {`${parts.slice(partsToRemove).reduce((previousValue, part) => `${previousValue}.${part}`)}`}
61
+ {
62
+ // eslint-disable-next-line unicorn/no-array-reduce
63
+ `${parts.slice(partsToRemove).reduce((previousValue, part) => `${previousValue}.${part}`)}`
64
+ }
62
65
  </>
63
66
  )
64
67
  }
@@ -16,7 +16,7 @@ export const TableRowNoData: React.FC<TableRowNoDataProps> = ({ additionalCells,
16
16
  </StyledTableCell>
17
17
  {additionalCells
18
18
  ? Array(additionalCells)
19
- .fill(undefined)
19
+ .fill(null)
20
20
  .map((_fill, index) => <StyledTableCell key={index} hideBorder={hideBorder} />)
21
21
  : null}
22
22
  </TableRow>