@pstdio/ui 0.39.0 → 0.41.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (82) hide show
  1. package/dist/{MermaidComponent-81jr28u4.js → MermaidComponent-BCiI63_G.js} +3 -3
  2. package/dist/{MermaidComponent-81jr28u4.js.map → MermaidComponent-BCiI63_G.js.map} +1 -1
  3. package/dist/chat-question-bubble-w2vMbFsS.js +68 -0
  4. package/dist/chat-question-bubble-w2vMbFsS.js.map +1 -0
  5. package/dist/chat-ui.d.ts +94 -17
  6. package/dist/chat-ui.js +2240 -1476
  7. package/dist/chat-ui.js.map +1 -1
  8. package/dist/{data-table-stats-row-CpRe_xK2.js → data-table-stats-row-EiTEONdY.js} +2 -2
  9. package/dist/{data-table-stats-row-CpRe_xK2.js.map → data-table-stats-row-EiTEONdY.js.map} +1 -1
  10. package/dist/data-table.d.ts +27 -7
  11. package/dist/data-table.js +1035 -872
  12. package/dist/data-table.js.map +1 -1
  13. package/dist/diff-bubble-DewUd_2w.js +61 -0
  14. package/dist/diff-bubble-DewUd_2w.js.map +1 -0
  15. package/dist/{diff-drawer-45rpk3aq.js → diff-drawer-BwZBOObe.js} +106 -85
  16. package/dist/diff-drawer-BwZBOObe.js.map +1 -0
  17. package/dist/diff-viewer-kOOd7C7h.js +574 -0
  18. package/dist/diff-viewer-kOOd7C7h.js.map +1 -0
  19. package/dist/diff.d.ts +11 -0
  20. package/dist/diff.js +107 -98
  21. package/dist/diff.js.map +1 -1
  22. package/dist/display-sort-control-DPxc0e5z.js +587 -0
  23. package/dist/display-sort-control-DPxc0e5z.js.map +1 -0
  24. package/dist/{workspace-badge-Brm3Xr3m.d.ts → host-storage-DP0RLj4i.d.ts} +15 -1
  25. package/dist/{index-BfFLdci8.d.ts → index-C9mywhyX.d.ts} +49 -13
  26. package/dist/index-D3UJyWWh.d.ts +501 -0
  27. package/dist/index.d.ts +38 -13
  28. package/dist/index.js +941 -908
  29. package/dist/index.js.map +1 -1
  30. package/dist/kanban-renderer.d.ts +2 -326
  31. package/dist/kanban-renderer.js +991 -610
  32. package/dist/kanban-renderer.js.map +1 -1
  33. package/dist/list-row-DM0DiIrN.js +1167 -0
  34. package/dist/list-row-DM0DiIrN.js.map +1 -0
  35. package/dist/{mermaid-renderer-DImi0fDp.js → mermaid-renderer-0PmNkOXI.js} +29 -29
  36. package/dist/mermaid-renderer-0PmNkOXI.js.map +1 -0
  37. package/dist/mermaid.js +1 -1
  38. package/dist/param-editor.js +2 -3
  39. package/dist/prism-JVIsQMoJ.js +1029 -0
  40. package/dist/prism-JVIsQMoJ.js.map +1 -0
  41. package/dist/{resource-badge-95WPVlZf.d.ts → resource-badge-nOWPqxFU.d.ts} +1 -0
  42. package/dist/rich-text-DM24VNQZ.js +10447 -0
  43. package/dist/rich-text-DM24VNQZ.js.map +1 -0
  44. package/dist/rich-text.d.ts +2 -2
  45. package/dist/rich-text.js +2 -2
  46. package/dist/style.css +1 -1
  47. package/dist/terminal.d.ts +5 -63
  48. package/dist/terminal.js +102 -122
  49. package/dist/terminal.js.map +1 -1
  50. package/dist/{theme-BsOWAIi2.js → theme-at0rtSnX.js} +441 -246
  51. package/dist/theme-at0rtSnX.js.map +1 -0
  52. package/dist/theme-kKuLN2jb.js +80 -0
  53. package/dist/theme-kKuLN2jb.js.map +1 -0
  54. package/dist/theme-preference-BV4cbJNB.js +115 -0
  55. package/dist/theme-preference-BV4cbJNB.js.map +1 -0
  56. package/dist/theme.js +3 -2
  57. package/dist/{tree-list-WhISG-cz.js → tree-list-Cqgl8mnN.js} +400 -377
  58. package/dist/tree-list-Cqgl8mnN.js.map +1 -0
  59. package/package.json +4 -4
  60. package/dist/diff-bubble-DZsarmSG.js +0 -61
  61. package/dist/diff-bubble-DZsarmSG.js.map +0 -1
  62. package/dist/diff-drawer-45rpk3aq.js.map +0 -1
  63. package/dist/diff-viewer-DJ1B5hxL.js +0 -558
  64. package/dist/diff-viewer-DJ1B5hxL.js.map +0 -1
  65. package/dist/list-row-uqD-q4gv.js +0 -1018
  66. package/dist/list-row-uqD-q4gv.js.map +0 -1
  67. package/dist/mermaid-renderer-DImi0fDp.js.map +0 -1
  68. package/dist/param-editor-BQd4AOUP.js +0 -225
  69. package/dist/param-editor-BQd4AOUP.js.map +0 -1
  70. package/dist/param-editor-field-BJ_rLUnV.js +0 -2385
  71. package/dist/param-editor-field-BJ_rLUnV.js.map +0 -1
  72. package/dist/prism-BStPsJSB.js +0 -658
  73. package/dist/prism-BStPsJSB.js.map +0 -1
  74. package/dist/rich-text-VYAmEigU.js +0 -6979
  75. package/dist/rich-text-VYAmEigU.js.map +0 -1
  76. package/dist/slider-hwHYe98I.js +0 -423
  77. package/dist/slider-hwHYe98I.js.map +0 -1
  78. package/dist/theme-BsOWAIi2.js.map +0 -1
  79. package/dist/theme-preference-pzfuK5cH.js +0 -101
  80. package/dist/theme-preference-pzfuK5cH.js.map +0 -1
  81. package/dist/tree-list-WhISG-cz.js.map +0 -1
  82. package/dist/types-DWA3enV6.d.ts +0 -182
@@ -1,4 +1,4 @@
1
- import { L as e } from "./rich-text-VYAmEigU.js";
1
+ import { L as e } from "./rich-text-DM24VNQZ.js";
2
2
  import { Box as t, Flex as n, Table as r, Text as i } from "@chakra-ui/react";
3
3
  import { c as a } from "react/compiler-runtime";
4
4
  import { Fragment as o, jsx as s, jsxs as c } from "react/jsx-runtime";
@@ -412,4 +412,4 @@ function z(e) {
412
412
  //#endregion
413
413
  export { N as DataTableStatsRow };
414
414
 
415
- //# sourceMappingURL=data-table-stats-row-CpRe_xK2.js.map
415
+ //# sourceMappingURL=data-table-stats-row-EiTEONdY.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"data-table-stats-row-CpRe_xK2.js","names":["Chart","UseChartProps","useChart","ReactNode","Bar","BarChart","Tooltip","RechartsTooltip","useActiveTooltipCoordinate","usePlotArea","XAxis","YAxis","ChartSeries","NonNullable","T","StringKeyOf","Extract","StatChartCrosshair","$","_c","coordinate","plotArea","t0","y","height","t1","x","t2","width","t3","t4","DataTableStatChartProps","data","dataKey","color","ariaLabel","tooltipLabel","datum","tooltipValue","value","tooltipSeriesLabel","layout","categoryKey","domain","barSize","barCategoryGap","DataTableStatChart","props","undefined","name","series","chart","getBarValue","t5","datum_0","getCategoryValue","t6","t7","Symbol","for","top","right","bottom","left","t8","t9","t10","t11","t12","label","payload","datum_1","t13","t14","t15","t16","zIndex","t17","t18","t19","_c","_Fragment","RechartsTooltip","isDisplayValue","RowData","HistogramBin","start","end","count","HistogramStat","min","max","bins","TopValueStat","label","percentage","getStatValue","value","sortValue","getColumnStatValues","rows","columnId","map","row","filter","undefined","countUniqueStatValues","Set","size","buildTopValuesStat","limit","values","counts","Map","set","get","groups","entries","String","Math","round","length","sort","left","right","localeCompare","topGroups","slice","otherCount","reduce","total","group","buildHistogramStat","binCount","binWidth","Array","from","_","index","binIndex","floor","Box","Flex","Table","Text","Header","HeaderGroup","DataTableStatChart","buildHistogramStat","buildTopValuesStat","countUniqueStatValues","DataTableColumnStat","RowData","formatNumber","Intl","NumberFormat","undefined","maximumFractionDigits","format","STAT_CHART_COLOR","SingleValueStatProps","value","count","SingleValueStat","props","$","_c","t0","t1","t2","t3","t4","UniqueStatProps","rows","columnId","UniqueStat","T0","T1","t5","t6","t7","Symbol","for","t8","HistogramStatProps","binCount","HistogramStat","T2","t10","t9","bb0","histogram","t11","valueCount","bins","reduce","_temp","min","max","_temp2","_temp3","t12","t13","TopValuesStatProps","limit","TopValuesStat","groups","length","label","map","_temp6","DataTableStatProps","stat","DataTableStat","type","DataTableStatCellProps","header","headerGroup","columnStats","Partial","Record","fullWidth","DataTableStatCell","column","id","borderRight","headers","indexOf","width","DataTableStatsRowProps","noBorder","DataTableStatsRow","hasVisibleStats","some","header_0","total","bin","bin_0","start","end","Number","_temp4","datum","_temp5","group","percentage","_c","isDisplayValue","Tooltip$1","StatChartCrosshair","$","c","coordinate","useActiveTooltipCoordinate","plotArea","usePlotArea","t0","t1","t2","t3","t4","DataTableStatChart","props","layout","barCategoryGap","color","dataKey","data","chart","useChart","datum","getBarValue","t5","categoryKey","datum_0","getCategoryValue","t6","t7","t8","domain","Fragment","XAxis","YAxis","t9","t10","barSize","Bar","t11","t12","tooltipLabel","datum_1","payload","label","t13","tooltipSeriesLabel","tooltipValue","value","t14","Chart","t15","t16","t17","t18","BarChart","t19","ariaLabel","height","getStatValue","getColumnStatValues","rows","row","columnId","countUniqueStatValues","buildTopValuesStat","values","counts","groups","count","right","left","topGroups","limit","otherCount","total","group","buildHistogramStat","min","max","binWidth","binCount","bins","index","binIndex","formatNumber","STAT_CHART_COLOR","SingleValueStat","Text","Flex","UniqueStat","T0","T1","HistogramStat","T2","histogram","valueCount","_temp","_temp2","_temp3","TopValuesStat","_temp6","DataTableStat","stat","DataTableStatCell","columnStats","header","fullWidth","headerGroup","Table","DataTableStatsRow","noBorder","header_0","bin","bin_0","_temp4","_temp5","Box"],"sources":["../src/components/data-table/data-table-stat-chart.tsx","../src/components/data-table/data-table-stats.ts","../src/components/data-table/data-table-stats-row.tsx"],"sourcesContent":["import { Chart, type UseChartProps, useChart } from \"@chakra-ui/charts\";\nimport type { ReactNode } from \"react\";\nimport {\n Bar,\n BarChart,\n Tooltip as RechartsTooltip,\n useActiveTooltipCoordinate,\n usePlotArea,\n XAxis,\n YAxis,\n} from \"recharts\";\n\ntype ChartSeries<T> = NonNullable<UseChartProps<T>[\"series\"]>[number];\ntype StringKeyOf<T> = Extract<keyof T, string>;\n\nconst StatChartCrosshair = () => {\n const coordinate = useActiveTooltipCoordinate();\n const plotArea = usePlotArea();\n\n if (!coordinate || !plotArea) return null;\n\n return (\n <g pointerEvents=\"none\" stroke=\"var(--chakra-colors-border-emphasized)\" strokeWidth=\"1\">\n <line x1={coordinate.x} x2={coordinate.x} y1={plotArea.y} y2={plotArea.y + plotArea.height} />\n <line x1={plotArea.x} x2={plotArea.x + plotArea.width} y1={coordinate.y} y2={coordinate.y} />\n </g>\n );\n};\n\ninterface DataTableStatChartProps<T extends object> {\n data: T[];\n dataKey: StringKeyOf<T>;\n color: ChartSeries<T>[\"color\"];\n height: string;\n ariaLabel: string;\n tooltipLabel: (datum: T) => ReactNode;\n tooltipValue: (value: string | number) => ReactNode;\n tooltipSeriesLabel: string;\n layout?: \"horizontal\" | \"vertical\";\n categoryKey?: StringKeyOf<T>;\n domain?: [number, number];\n barSize?: number;\n barCategoryGap?: number;\n}\n\nexport const DataTableStatChart = <T extends object>(props: DataTableStatChartProps<T>) => {\n const {\n data,\n dataKey,\n color,\n height,\n ariaLabel,\n tooltipLabel,\n tooltipValue,\n tooltipSeriesLabel,\n layout = \"horizontal\",\n categoryKey,\n domain,\n barSize,\n barCategoryGap = 1,\n } = props;\n const chart = useChart({ data, series: [{ name: dataKey, color }] });\n const getBarValue = (datum: T) => datum[dataKey] as string | number;\n const getCategoryValue = categoryKey ? (datum: T) => datum[categoryKey] as string | number : undefined;\n\n return (\n <Chart.Root chart={chart} height={height} aspectRatio=\"auto\" cursor=\"crosshair\" aria-label={ariaLabel}>\n <BarChart\n responsive\n data={chart.data}\n layout={layout}\n margin={{ top: 2, right: 0, bottom: 0, left: 0 }}\n barCategoryGap={barCategoryGap}\n >\n {layout === \"vertical\" ? (\n <>\n <XAxis type=\"number\" domain={domain} hide />\n <YAxis type=\"category\" dataKey={getCategoryValue} hide />\n </>\n ) : null}\n <Bar dataKey={getBarValue} fill={chart.color(color)} barSize={barSize} isAnimationActive={false} />\n <RechartsTooltip\n allowEscapeViewBox={{ x: true, y: true }}\n content={\n <Chart.Tooltip\n labelFormatter={(label, payload) => {\n const datum = payload[0]?.payload as T | undefined;\n return datum ? tooltipLabel(datum) : label;\n }}\n formatter={(value) => [tooltipValue(value), tooltipSeriesLabel]}\n />\n }\n cursor={<StatChartCrosshair />}\n isAnimationActive={false}\n wrapperStyle={{ zIndex: 1800 }}\n />\n </BarChart>\n </Chart.Root>\n );\n};\n","import { isDisplayValue } from \"./helpers\";\nimport type { RowData } from \"./types\";\n\nexport interface HistogramBin {\n start: number;\n end: number;\n count: number;\n}\n\nexport interface HistogramStat {\n min: number;\n max: number;\n bins: HistogramBin[];\n}\n\nexport interface TopValueStat {\n label: string;\n count: number;\n percentage: number;\n}\n\nconst getStatValue = (value: unknown) => (isDisplayValue(value) ? value.sortValue : value);\n\nconst getColumnStatValues = (rows: RowData[], columnId: string) =>\n rows\n .map((row) => getStatValue(row[columnId]))\n .filter((value) => value !== null && value !== undefined && value !== \"\");\n\nexport const countUniqueStatValues = (rows: RowData[], columnId: string) =>\n new Set(getColumnStatValues(rows, columnId)).size;\n\nexport const buildTopValuesStat = (rows: RowData[], columnId: string, limit: number) => {\n const values = getColumnStatValues(rows, columnId);\n const counts = new Map<unknown, number>();\n\n for (const value of values) {\n counts.set(value, (counts.get(value) ?? 0) + 1);\n }\n\n const groups: TopValueStat[] = [...counts.entries()]\n .map(([value, count]) => ({\n label: String(value),\n count,\n percentage: Math.round((count / values.length) * 100),\n }))\n .sort((left, right) => right.count - left.count || left.label.localeCompare(right.label));\n const topGroups = groups.slice(0, limit);\n const otherCount = groups.slice(limit).reduce((total, group) => total + group.count, 0);\n\n if (otherCount === 0) return topGroups;\n\n return [\n ...topGroups,\n {\n label: \"Other\",\n count: otherCount,\n percentage: Math.round((otherCount / values.length) * 100),\n },\n ];\n};\n\nexport const buildHistogramStat = (rows: RowData[], columnId: string, binCount: number): HistogramStat | null => {\n const values = getColumnStatValues(rows, columnId).filter((value): value is number => typeof value === \"number\");\n if (values.length === 0) return null;\n\n const min = Math.min(...values);\n const max = Math.max(...values);\n const binWidth = (max - min) / binCount;\n const bins = Array.from({ length: binCount }, (_, index) => ({\n start: min + binWidth * index,\n end: min + binWidth * (index + 1),\n count: 0,\n }));\n\n for (const value of values) {\n const binIndex = value === max || binWidth === 0 ? binCount - 1 : Math.floor((value - min) / binWidth);\n bins[binIndex]!.count += 1;\n }\n\n return { min, max, bins };\n};\n","import { Box, Flex, Table, Text } from \"@chakra-ui/react\";\nimport type { Header, HeaderGroup } from \"@tanstack/react-table\";\nimport { DataTableStatChart } from \"./data-table-stat-chart\";\nimport { buildHistogramStat, buildTopValuesStat, countUniqueStatValues } from \"./data-table-stats\";\nimport type { DataTableColumnStat, RowData } from \"./types\";\n\nconst formatNumber = new Intl.NumberFormat(undefined, { maximumFractionDigits: 2 }).format;\nconst STAT_CHART_COLOR = \"vis.categorical.1\";\n\ninterface SingleValueStatProps {\n value: string;\n count: number;\n}\n\nconst SingleValueStat = (props: SingleValueStatProps) => {\n const { value, count } = props;\n\n return (\n <Flex data-single-value-stat direction=\"column\" gap=\"2xs\" alignItems=\"flex-start\" minWidth=\"0\">\n <Text textStyle=\"label/L/medium\" lineHeight=\"1\" maxWidth=\"100%\" truncate>\n {value}\n </Text>\n <Text textStyle=\"label/XS\" color=\"fg.muted\">\n {formatNumber(count)} {count === 1 ? \"value\" : \"values\"}\n </Text>\n </Flex>\n );\n};\n\ninterface UniqueStatProps {\n rows: RowData[];\n columnId: string;\n}\n\nconst UniqueStat = (props: UniqueStatProps) => {\n const { rows, columnId } = props;\n const count = countUniqueStatValues(rows, columnId);\n\n return (\n <Flex direction=\"column\" gap=\"2xs\" alignItems=\"flex-start\">\n <Text textStyle=\"label/L/medium\" lineHeight=\"1\">\n {formatNumber(count)}\n </Text>\n <Text textStyle=\"label/XS/regular\" color=\"fg.muted\">\n unique values\n </Text>\n </Flex>\n );\n};\n\ninterface HistogramStatProps {\n rows: RowData[];\n columnId: string;\n binCount: number;\n}\n\nconst HistogramStat = (props: HistogramStatProps) => {\n const { rows, columnId, binCount } = props;\n const histogram = buildHistogramStat(rows, columnId, binCount);\n\n if (!histogram) {\n return (\n <Text textStyle=\"label/XS/regular\" color=\"fg.muted\">\n No numeric values\n </Text>\n );\n }\n\n const valueCount = histogram.bins.reduce((total, bin) => total + bin.count, 0);\n if (histogram.min === histogram.max) {\n return <SingleValueStat value={formatNumber(histogram.min)} count={valueCount} />;\n }\n\n return (\n <Flex direction=\"column\" width=\"100%\" gap=\"2xs\">\n <DataTableStatChart\n data={histogram.bins}\n dataKey=\"count\"\n color={STAT_CHART_COLOR}\n height=\"40px\"\n ariaLabel={`Distribution for ${columnId}`}\n tooltipLabel={(bin) => `${formatNumber(bin.start)} – ${formatNumber(bin.end)}`}\n tooltipValue={(value) => `${formatNumber(Number(value))} values`}\n tooltipSeriesLabel=\"Count\"\n />\n <Flex justifyContent=\"space-between\" gap=\"xs\">\n <Text textStyle=\"label/XS/regular\" color=\"fg.muted\">\n {formatNumber(histogram.min)}\n </Text>\n <Text textStyle=\"label/XS/regular\" color=\"fg.muted\">\n {formatNumber(histogram.max)}\n </Text>\n </Flex>\n </Flex>\n );\n};\n\ninterface TopValuesStatProps {\n rows: RowData[];\n columnId: string;\n limit: number;\n}\n\nconst TopValuesStat = (props: TopValuesStatProps) => {\n const { rows, columnId, limit } = props;\n const groups = buildTopValuesStat(rows, columnId, limit);\n\n if (groups.length === 1 && groups[0]) {\n return <SingleValueStat value={groups[0].label} count={groups[0].count} />;\n }\n\n return (\n <Flex direction=\"column\" width=\"100%\" gap=\"2xs\">\n {groups.map((group) => (\n <Box key={group.label} position=\"relative\" height=\"18px\">\n <DataTableStatChart\n data={[group]}\n dataKey=\"percentage\"\n categoryKey=\"label\"\n color={STAT_CHART_COLOR}\n height=\"18px\"\n ariaLabel={`${group.label}: ${group.percentage}%`}\n layout=\"vertical\"\n domain={[0, 100]}\n barSize={18}\n tooltipLabel={(datum) => `${datum.label} · ${formatNumber(datum.count)} values`}\n tooltipValue={(value) => `${formatNumber(Number(value))}%`}\n tooltipSeriesLabel=\"Share\"\n />\n <Flex\n position=\"absolute\"\n inset=\"0\"\n paddingX=\"2xs\"\n justifyContent=\"space-between\"\n gap=\"xs\"\n pointerEvents=\"none\"\n >\n <Text textStyle=\"label/2XS\" color=\"fg.inverted\" truncate>\n {group.label}\n </Text>\n <Text textStyle=\"label/2XS/medium\" color=\"fg.muted\">\n {group.percentage}%\n </Text>\n </Flex>\n </Box>\n ))}\n </Flex>\n );\n};\n\ninterface DataTableStatProps {\n rows: RowData[];\n columnId: string;\n stat: DataTableColumnStat;\n}\n\nconst DataTableStat = (props: DataTableStatProps) => {\n const { rows, columnId, stat } = props;\n\n if (stat.type === \"unique\") return <UniqueStat rows={rows} columnId={columnId} />;\n if (stat.type === \"histogram\") {\n return <HistogramStat rows={rows} columnId={columnId} binCount={stat.bins ?? 10} />;\n }\n return <TopValuesStat rows={rows} columnId={columnId} limit={stat.limit ?? 2} />;\n};\n\ninterface DataTableStatCellProps {\n header: Header<RowData, unknown>;\n headerGroup: HeaderGroup<RowData>;\n rows: RowData[];\n columnStats: Partial<Record<string, DataTableColumnStat>>;\n fullWidth?: boolean;\n}\n\nconst DataTableStatCell = (props: DataTableStatCellProps) => {\n const { header, headerGroup, rows, columnStats, fullWidth } = props;\n const stat = columnStats[header.column.id];\n\n return (\n <Table.ColumnHeader\n data-column-id={header.column.id}\n data-stat-type={stat?.type}\n borderRight=\"1px solid\"\n _last={{ borderRight: \"none\" }}\n borderColor=\"border.subtle\"\n padding=\"xs\"\n verticalAlign=\"middle\"\n overflow=\"hidden\"\n style={{\n width:\n fullWidth && headerGroup.headers.indexOf(header) === headerGroup.headers.length - 1\n ? undefined\n : `calc(var(--header-${header.id}-size) * 1px)`,\n }}\n >\n {stat ? <DataTableStat rows={rows} columnId={header.column.id} stat={stat} /> : null}\n </Table.ColumnHeader>\n );\n};\n\ninterface DataTableStatsRowProps {\n headerGroup: HeaderGroup<RowData>;\n rows: RowData[];\n columnStats: Partial<Record<string, DataTableColumnStat>>;\n fullWidth?: boolean;\n noBorder?: boolean;\n}\n\nexport const DataTableStatsRow = (props: DataTableStatsRowProps) => {\n const { headerGroup, rows, columnStats, fullWidth, noBorder } = props;\n const hasVisibleStats = headerGroup.headers.some((header) => columnStats[header.column.id]);\n\n if (!hasVisibleStats) return null;\n\n return (\n <Table.Row\n className=\"data-table-stats-row\"\n borderRight={noBorder ? \"none\" : \"1px solid\"}\n borderColor=\"border.subtle\"\n >\n {headerGroup.headers.map((header) => (\n <DataTableStatCell\n key={header.id}\n header={header}\n headerGroup={headerGroup}\n rows={rows}\n columnStats={columnStats}\n fullWidth={fullWidth}\n />\n ))}\n </Table.Row>\n );\n};\n"],"mappings":"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"}
1
+ {"version":3,"file":"data-table-stats-row-EiTEONdY.js","names":["Chart","UseChartProps","useChart","ReactNode","Bar","BarChart","Tooltip","RechartsTooltip","useActiveTooltipCoordinate","usePlotArea","XAxis","YAxis","ChartSeries","NonNullable","T","StringKeyOf","Extract","StatChartCrosshair","$","_c","coordinate","plotArea","t0","y","height","t1","x","t2","width","t3","t4","DataTableStatChartProps","data","dataKey","color","ariaLabel","tooltipLabel","datum","tooltipValue","value","tooltipSeriesLabel","layout","categoryKey","domain","barSize","barCategoryGap","DataTableStatChart","props","undefined","name","series","chart","getBarValue","t5","datum_0","getCategoryValue","t6","t7","Symbol","for","top","right","bottom","left","t8","t9","t10","t11","t12","label","payload","datum_1","t13","t14","t15","t16","zIndex","t17","t18","t19","_c","_Fragment","RechartsTooltip","isDisplayValue","RowData","HistogramBin","start","end","count","HistogramStat","min","max","bins","TopValueStat","label","percentage","getStatValue","value","sortValue","getColumnStatValues","rows","columnId","map","row","filter","undefined","countUniqueStatValues","Set","size","buildTopValuesStat","limit","values","counts","Map","set","get","groups","entries","String","Math","round","length","sort","left","right","localeCompare","topGroups","slice","otherCount","reduce","total","group","buildHistogramStat","binCount","binWidth","Array","from","_","index","binIndex","floor","Box","Flex","Table","Text","Header","HeaderGroup","DataTableStatChart","buildHistogramStat","buildTopValuesStat","countUniqueStatValues","DataTableColumnStat","RowData","formatNumber","Intl","NumberFormat","undefined","maximumFractionDigits","format","STAT_CHART_COLOR","SingleValueStatProps","value","count","SingleValueStat","props","$","_c","t0","t1","t2","t3","t4","UniqueStatProps","rows","columnId","UniqueStat","T0","T1","t5","t6","t7","Symbol","for","t8","HistogramStatProps","binCount","HistogramStat","T2","t10","t9","bb0","histogram","t11","valueCount","bins","reduce","_temp","min","max","_temp2","_temp3","t12","t13","TopValuesStatProps","limit","TopValuesStat","groups","length","label","map","_temp6","DataTableStatProps","stat","DataTableStat","type","DataTableStatCellProps","header","headerGroup","columnStats","Partial","Record","fullWidth","DataTableStatCell","column","id","borderRight","headers","indexOf","width","DataTableStatsRowProps","noBorder","DataTableStatsRow","hasVisibleStats","some","header_0","total","bin","bin_0","start","end","Number","_temp4","datum","_temp5","group","percentage","_c","isDisplayValue","Tooltip$1","StatChartCrosshair","$","c","coordinate","useActiveTooltipCoordinate","plotArea","usePlotArea","t0","t1","t2","t3","t4","DataTableStatChart","props","layout","barCategoryGap","color","dataKey","data","chart","useChart","datum","getBarValue","t5","categoryKey","datum_0","getCategoryValue","t6","t7","t8","domain","Fragment","XAxis","YAxis","t9","t10","barSize","Bar","t11","t12","tooltipLabel","datum_1","payload","label","t13","tooltipSeriesLabel","tooltipValue","value","t14","Chart","t15","t16","t17","t18","BarChart","t19","ariaLabel","height","getStatValue","getColumnStatValues","rows","row","columnId","countUniqueStatValues","buildTopValuesStat","values","counts","groups","count","right","left","topGroups","limit","otherCount","total","group","buildHistogramStat","min","max","binWidth","binCount","bins","index","binIndex","formatNumber","STAT_CHART_COLOR","SingleValueStat","Text","Flex","UniqueStat","T0","T1","HistogramStat","T2","histogram","valueCount","_temp","_temp2","_temp3","TopValuesStat","_temp6","DataTableStat","stat","DataTableStatCell","columnStats","header","fullWidth","headerGroup","Table","DataTableStatsRow","noBorder","header_0","bin","bin_0","_temp4","_temp5","Box"],"sources":["../src/components/data-table/data-table-stat-chart.tsx","../src/components/data-table/data-table-stats.ts","../src/components/data-table/data-table-stats-row.tsx"],"sourcesContent":["import { Chart, type UseChartProps, useChart } from \"@chakra-ui/charts\";\nimport type { ReactNode } from \"react\";\nimport {\n Bar,\n BarChart,\n Tooltip as RechartsTooltip,\n useActiveTooltipCoordinate,\n usePlotArea,\n XAxis,\n YAxis,\n} from \"recharts\";\n\ntype ChartSeries<T> = NonNullable<UseChartProps<T>[\"series\"]>[number];\ntype StringKeyOf<T> = Extract<keyof T, string>;\n\nconst StatChartCrosshair = () => {\n const coordinate = useActiveTooltipCoordinate();\n const plotArea = usePlotArea();\n\n if (!coordinate || !plotArea) return null;\n\n return (\n <g pointerEvents=\"none\" stroke=\"var(--chakra-colors-border-emphasized)\" strokeWidth=\"1\">\n <line x1={coordinate.x} x2={coordinate.x} y1={plotArea.y} y2={plotArea.y + plotArea.height} />\n <line x1={plotArea.x} x2={plotArea.x + plotArea.width} y1={coordinate.y} y2={coordinate.y} />\n </g>\n );\n};\n\ninterface DataTableStatChartProps<T extends object> {\n data: T[];\n dataKey: StringKeyOf<T>;\n color: ChartSeries<T>[\"color\"];\n height: string;\n ariaLabel: string;\n tooltipLabel: (datum: T) => ReactNode;\n tooltipValue: (value: string | number) => ReactNode;\n tooltipSeriesLabel: string;\n layout?: \"horizontal\" | \"vertical\";\n categoryKey?: StringKeyOf<T>;\n domain?: [number, number];\n barSize?: number;\n barCategoryGap?: number;\n}\n\nexport const DataTableStatChart = <T extends object>(props: DataTableStatChartProps<T>) => {\n const {\n data,\n dataKey,\n color,\n height,\n ariaLabel,\n tooltipLabel,\n tooltipValue,\n tooltipSeriesLabel,\n layout = \"horizontal\",\n categoryKey,\n domain,\n barSize,\n barCategoryGap = 1,\n } = props;\n const chart = useChart({ data, series: [{ name: dataKey, color }] });\n const getBarValue = (datum: T) => datum[dataKey] as string | number;\n const getCategoryValue = categoryKey ? (datum: T) => datum[categoryKey] as string | number : undefined;\n\n return (\n <Chart.Root chart={chart} height={height} aspectRatio=\"auto\" cursor=\"crosshair\" aria-label={ariaLabel}>\n <BarChart\n responsive\n data={chart.data}\n layout={layout}\n margin={{ top: 2, right: 0, bottom: 0, left: 0 }}\n barCategoryGap={barCategoryGap}\n >\n {layout === \"vertical\" ? (\n <>\n <XAxis type=\"number\" domain={domain} hide />\n <YAxis type=\"category\" dataKey={getCategoryValue} hide />\n </>\n ) : null}\n <Bar dataKey={getBarValue} fill={chart.color(color)} barSize={barSize} isAnimationActive={false} />\n <RechartsTooltip\n allowEscapeViewBox={{ x: true, y: true }}\n content={\n <Chart.Tooltip\n labelFormatter={(label, payload) => {\n const datum = payload[0]?.payload as T | undefined;\n return datum ? tooltipLabel(datum) : label;\n }}\n formatter={(value) => [tooltipValue(value), tooltipSeriesLabel]}\n />\n }\n cursor={<StatChartCrosshair />}\n isAnimationActive={false}\n wrapperStyle={{ zIndex: 1800 }}\n />\n </BarChart>\n </Chart.Root>\n );\n};\n","import { isDisplayValue } from \"./helpers\";\nimport type { RowData } from \"./types\";\n\nexport interface HistogramBin {\n start: number;\n end: number;\n count: number;\n}\n\nexport interface HistogramStat {\n min: number;\n max: number;\n bins: HistogramBin[];\n}\n\nexport interface TopValueStat {\n label: string;\n count: number;\n percentage: number;\n}\n\nconst getStatValue = (value: unknown) => (isDisplayValue(value) ? value.sortValue : value);\n\nconst getColumnStatValues = (rows: RowData[], columnId: string) =>\n rows\n .map((row) => getStatValue(row[columnId]))\n .filter((value) => value !== null && value !== undefined && value !== \"\");\n\nexport const countUniqueStatValues = (rows: RowData[], columnId: string) =>\n new Set(getColumnStatValues(rows, columnId)).size;\n\nexport const buildTopValuesStat = (rows: RowData[], columnId: string, limit: number) => {\n const values = getColumnStatValues(rows, columnId);\n const counts = new Map<unknown, number>();\n\n for (const value of values) {\n counts.set(value, (counts.get(value) ?? 0) + 1);\n }\n\n const groups: TopValueStat[] = [...counts.entries()]\n .map(([value, count]) => ({\n label: String(value),\n count,\n percentage: Math.round((count / values.length) * 100),\n }))\n .sort((left, right) => right.count - left.count || left.label.localeCompare(right.label));\n const topGroups = groups.slice(0, limit);\n const otherCount = groups.slice(limit).reduce((total, group) => total + group.count, 0);\n\n if (otherCount === 0) return topGroups;\n\n return [\n ...topGroups,\n {\n label: \"Other\",\n count: otherCount,\n percentage: Math.round((otherCount / values.length) * 100),\n },\n ];\n};\n\nexport const buildHistogramStat = (rows: RowData[], columnId: string, binCount: number): HistogramStat | null => {\n const values = getColumnStatValues(rows, columnId).filter((value): value is number => typeof value === \"number\");\n if (values.length === 0) return null;\n\n const min = Math.min(...values);\n const max = Math.max(...values);\n const binWidth = (max - min) / binCount;\n const bins = Array.from({ length: binCount }, (_, index) => ({\n start: min + binWidth * index,\n end: min + binWidth * (index + 1),\n count: 0,\n }));\n\n for (const value of values) {\n const binIndex = value === max || binWidth === 0 ? binCount - 1 : Math.floor((value - min) / binWidth);\n bins[binIndex]!.count += 1;\n }\n\n return { min, max, bins };\n};\n","import { Box, Flex, Table, Text } from \"@chakra-ui/react\";\nimport type { Header, HeaderGroup } from \"@tanstack/react-table\";\nimport { DataTableStatChart } from \"./data-table-stat-chart\";\nimport { buildHistogramStat, buildTopValuesStat, countUniqueStatValues } from \"./data-table-stats\";\nimport type { DataTableColumnStat, RowData } from \"./types\";\n\nconst formatNumber = new Intl.NumberFormat(undefined, { maximumFractionDigits: 2 }).format;\nconst STAT_CHART_COLOR = \"vis.categorical.1\";\n\ninterface SingleValueStatProps {\n value: string;\n count: number;\n}\n\nconst SingleValueStat = (props: SingleValueStatProps) => {\n const { value, count } = props;\n\n return (\n <Flex data-single-value-stat direction=\"column\" gap=\"2xs\" alignItems=\"flex-start\" minWidth=\"0\">\n <Text textStyle=\"label/L/medium\" lineHeight=\"1\" maxWidth=\"100%\" truncate>\n {value}\n </Text>\n <Text textStyle=\"label/XS\" color=\"fg.muted\">\n {formatNumber(count)} {count === 1 ? \"value\" : \"values\"}\n </Text>\n </Flex>\n );\n};\n\ninterface UniqueStatProps {\n rows: RowData[];\n columnId: string;\n}\n\nconst UniqueStat = (props: UniqueStatProps) => {\n const { rows, columnId } = props;\n const count = countUniqueStatValues(rows, columnId);\n\n return (\n <Flex direction=\"column\" gap=\"2xs\" alignItems=\"flex-start\">\n <Text textStyle=\"label/L/medium\" lineHeight=\"1\">\n {formatNumber(count)}\n </Text>\n <Text textStyle=\"label/XS/regular\" color=\"fg.muted\">\n unique values\n </Text>\n </Flex>\n );\n};\n\ninterface HistogramStatProps {\n rows: RowData[];\n columnId: string;\n binCount: number;\n}\n\nconst HistogramStat = (props: HistogramStatProps) => {\n const { rows, columnId, binCount } = props;\n const histogram = buildHistogramStat(rows, columnId, binCount);\n\n if (!histogram) {\n return (\n <Text textStyle=\"label/XS/regular\" color=\"fg.muted\">\n No numeric values\n </Text>\n );\n }\n\n const valueCount = histogram.bins.reduce((total, bin) => total + bin.count, 0);\n if (histogram.min === histogram.max) {\n return <SingleValueStat value={formatNumber(histogram.min)} count={valueCount} />;\n }\n\n return (\n <Flex direction=\"column\" width=\"100%\" gap=\"2xs\">\n <DataTableStatChart\n data={histogram.bins}\n dataKey=\"count\"\n color={STAT_CHART_COLOR}\n height=\"40px\"\n ariaLabel={`Distribution for ${columnId}`}\n tooltipLabel={(bin) => `${formatNumber(bin.start)} – ${formatNumber(bin.end)}`}\n tooltipValue={(value) => `${formatNumber(Number(value))} values`}\n tooltipSeriesLabel=\"Count\"\n />\n <Flex justifyContent=\"space-between\" gap=\"xs\">\n <Text textStyle=\"label/XS/regular\" color=\"fg.muted\">\n {formatNumber(histogram.min)}\n </Text>\n <Text textStyle=\"label/XS/regular\" color=\"fg.muted\">\n {formatNumber(histogram.max)}\n </Text>\n </Flex>\n </Flex>\n );\n};\n\ninterface TopValuesStatProps {\n rows: RowData[];\n columnId: string;\n limit: number;\n}\n\nconst TopValuesStat = (props: TopValuesStatProps) => {\n const { rows, columnId, limit } = props;\n const groups = buildTopValuesStat(rows, columnId, limit);\n\n if (groups.length === 1 && groups[0]) {\n return <SingleValueStat value={groups[0].label} count={groups[0].count} />;\n }\n\n return (\n <Flex direction=\"column\" width=\"100%\" gap=\"2xs\">\n {groups.map((group) => (\n <Box key={group.label} position=\"relative\" height=\"18px\">\n <DataTableStatChart\n data={[group]}\n dataKey=\"percentage\"\n categoryKey=\"label\"\n color={STAT_CHART_COLOR}\n height=\"18px\"\n ariaLabel={`${group.label}: ${group.percentage}%`}\n layout=\"vertical\"\n domain={[0, 100]}\n barSize={18}\n tooltipLabel={(datum) => `${datum.label} · ${formatNumber(datum.count)} values`}\n tooltipValue={(value) => `${formatNumber(Number(value))}%`}\n tooltipSeriesLabel=\"Share\"\n />\n <Flex\n position=\"absolute\"\n inset=\"0\"\n paddingX=\"2xs\"\n justifyContent=\"space-between\"\n gap=\"xs\"\n pointerEvents=\"none\"\n >\n <Text textStyle=\"label/2XS\" color=\"fg.inverted\" truncate>\n {group.label}\n </Text>\n <Text textStyle=\"label/2XS/medium\" color=\"fg.muted\">\n {group.percentage}%\n </Text>\n </Flex>\n </Box>\n ))}\n </Flex>\n );\n};\n\ninterface DataTableStatProps {\n rows: RowData[];\n columnId: string;\n stat: DataTableColumnStat;\n}\n\nconst DataTableStat = (props: DataTableStatProps) => {\n const { rows, columnId, stat } = props;\n\n if (stat.type === \"unique\") return <UniqueStat rows={rows} columnId={columnId} />;\n if (stat.type === \"histogram\") {\n return <HistogramStat rows={rows} columnId={columnId} binCount={stat.bins ?? 10} />;\n }\n return <TopValuesStat rows={rows} columnId={columnId} limit={stat.limit ?? 2} />;\n};\n\ninterface DataTableStatCellProps {\n header: Header<RowData, unknown>;\n headerGroup: HeaderGroup<RowData>;\n rows: RowData[];\n columnStats: Partial<Record<string, DataTableColumnStat>>;\n fullWidth?: boolean;\n}\n\nconst DataTableStatCell = (props: DataTableStatCellProps) => {\n const { header, headerGroup, rows, columnStats, fullWidth } = props;\n const stat = columnStats[header.column.id];\n\n return (\n <Table.ColumnHeader\n data-column-id={header.column.id}\n data-stat-type={stat?.type}\n borderRight=\"1px solid\"\n _last={{ borderRight: \"none\" }}\n borderColor=\"border.subtle\"\n padding=\"xs\"\n verticalAlign=\"middle\"\n overflow=\"hidden\"\n style={{\n width:\n fullWidth && headerGroup.headers.indexOf(header) === headerGroup.headers.length - 1\n ? undefined\n : `calc(var(--header-${header.id}-size) * 1px)`,\n }}\n >\n {stat ? <DataTableStat rows={rows} columnId={header.column.id} stat={stat} /> : null}\n </Table.ColumnHeader>\n );\n};\n\ninterface DataTableStatsRowProps {\n headerGroup: HeaderGroup<RowData>;\n rows: RowData[];\n columnStats: Partial<Record<string, DataTableColumnStat>>;\n fullWidth?: boolean;\n noBorder?: boolean;\n}\n\nexport const DataTableStatsRow = (props: DataTableStatsRowProps) => {\n const { headerGroup, rows, columnStats, fullWidth, noBorder } = props;\n const hasVisibleStats = headerGroup.headers.some((header) => columnStats[header.column.id]);\n\n if (!hasVisibleStats) return null;\n\n return (\n <Table.Row\n className=\"data-table-stats-row\"\n borderRight={noBorder ? \"none\" : \"1px solid\"}\n borderColor=\"border.subtle\"\n >\n {headerGroup.headers.map((header) => (\n <DataTableStatCell\n key={header.id}\n header={header}\n headerGroup={headerGroup}\n rows={rows}\n columnStats={columnStats}\n fullWidth={fullWidth}\n />\n ))}\n </Table.Row>\n );\n};\n"],"mappings":"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"}
@@ -1,6 +1,13 @@
1
- import { v as KanbanRendererSavedView } from "./types-DWA3enV6.js";
1
+ import { et as CollectionSavedView, i as CollectionViewStoreState, tt as CollectionViewsSource } from "./index-D3UJyWWh.js";
2
2
  import { ReactElement, ReactNode } from "react";
3
+ import { DataTableRendererSettings, ViewFilterGroup, ViewSort } from "@pstdio/sdk/extensions";
3
4
  //#region src/components/data-table/types.d.ts
5
+ /** Display settings saved with a table view: grouping, row numbers, wrapping, statistics, and columns. */
6
+ type DataTableSettings = DataTableRendererSettings;
7
+ type DataTableSavedView = CollectionSavedView<DataTableSettings>;
8
+ type DataTableViewsSource = CollectionViewsSource<DataTableSettings>;
9
+ /** How filters and sorts compare a column. Without it the type is inferred from the values. */
10
+ type DataTableColumnType = "string" | "number" | "boolean" | "date";
4
11
  type RowData = Record<string, unknown>;
5
12
  interface DataTableThemeColor {
6
13
  light: string;
@@ -123,19 +130,22 @@ interface DataTableProps {
123
130
  compactHeaders?: Partial<Record<string, string>>;
124
131
  getRowId?: (row: RowData, index: number) => string;
125
132
  toolbarStorageKey?: string;
133
+ itemLabel?: string;
126
134
  toolbarActions?: ReactNode;
127
135
  contentPlaceholder?: ReactNode;
128
- defaultViews?: KanbanRendererSavedView[];
136
+ defaultSettings?: Partial<DataTableSettings>;
137
+ defaultFilter?: ViewFilterGroup;
138
+ defaultSorts?: ViewSort[];
139
+ /** Shared saved views. Without it the table offers its default views only. */
140
+ viewsSource?: DataTableViewsSource;
141
+ defaultViews?: DataTableSavedView[];
129
142
  defaultActiveViewId?: string;
130
143
  enableRowActivation?: boolean;
131
144
  getCellContextMenuActions?: (context: DataTableCellContext) => DataTableCellContextAction[];
132
145
  onCSVUpload?: (csv: string) => Promise<void>;
133
146
  onCSVDownload?: (scenarios: string[]) => void;
147
+ /** Columns that never show. Use `defaultSettings.hiddenColumns` for columns viewers can turn on. */
134
148
  hiddenColumns?: string[];
135
- /** Columns that start unchecked in the column menu. Viewers can still show them. */
136
- defaultHiddenColumns?: string[];
137
- /** Whether the statistics row starts visible when `columnStats` are set. Defaults to `true`. */
138
- defaultShowStats?: boolean;
139
149
  onRowClick?: (row: RowData) => void;
140
150
  isRowInteractive?: (row: RowData) => boolean;
141
151
  activeRowId?: string | null;
@@ -143,6 +153,11 @@ interface DataTableProps {
143
153
  columnDescriptions?: Partial<Record<string, string>>;
144
154
  columnStats?: Partial<Record<string, DataTableColumnStat>>;
145
155
  columnRenderers?: Partial<Record<string, DataTableColumnRenderer>>;
156
+ columnTypes?: Partial<Record<string, DataTableColumnType>>;
157
+ /** Columns offered under Grouping in the Display menu. */
158
+ groupableColumns?: string[];
159
+ /** Columns offered in Filter. Omit to allow every column; an empty list disables column filters. */
160
+ filterableColumns?: string[];
146
161
  }
147
162
  //#endregion
148
163
  //#region src/components/data-table/data-table.d.ts
@@ -172,5 +187,10 @@ export declare const FriendlyJsonDisplay: (props: FriendlyJsonDisplayProps) => i
172
187
  export declare const getIcon: (values: unknown[]) => ReactElement | null;
173
188
  export declare function formatDisplayValue(value: unknown): ReactNode;
174
189
  //#endregion
175
- export type { DataTableBadgeCategory, DataTableBadgePalette, DataTableCategoricalColor, DataTableCategoricalValue, DataTableCellContext, DataTableCellContextAction, DataTableColorScaleStop, DataTableColumnRenderer, DataTableColumnStat, DataTableDiffValue, DataTableEditModeAlignment, DataTableEditModeCellEditorProps, DataTableEditModeColumn, DataTableEditModeConfig, DataTableProps, DataTableRowAction, DataTableSelectionAction, DataTableSkeletonColumn, DataTableThemeColor, FriendlyJsonDisplayProps, RowData };
190
+ //#region src/components/data-table/use-data-table-view.d.ts
191
+ type DataTableViewDefaults = Pick<DataTableProps, "defaultSettings" | "defaultFilter" | "defaultSorts">;
192
+ /** The unsaved view state of one table. Hosts read it to send the view to their query. */
193
+ export declare const useDataTableViewStore: <T>(storageKey: string, selector: (state: CollectionViewStoreState<DataTableSettings>) => T, defaults?: DataTableViewDefaults) => T;
194
+ //#endregion
195
+ export type { DataTableBadgeCategory, DataTableBadgePalette, DataTableCategoricalColor, DataTableCategoricalValue, DataTableCellContext, DataTableCellContextAction, DataTableColorScaleStop, DataTableColumnRenderer, DataTableColumnStat, DataTableColumnType, DataTableDiffValue, DataTableEditModeAlignment, DataTableEditModeCellEditorProps, DataTableEditModeColumn, DataTableEditModeConfig, DataTableProps, DataTableRowAction, DataTableSavedView, DataTableSelectionAction, DataTableSettings, DataTableSkeletonColumn, DataTableThemeColor, DataTableViewsSource, FriendlyJsonDisplayProps, RowData };
176
196
  export {};