@pstdio/ui 0.43.1-nightly.20261013030813 → 0.43.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/{MermaidComponent-CJCip-GB.js → MermaidComponent-_cmVeKKR.js} +2 -2
- package/dist/{MermaidComponent-CJCip-GB.js.map → MermaidComponent-_cmVeKKR.js.map} +1 -1
- package/dist/chat-ui.d.ts +84 -56
- package/dist/chat-ui.js +792 -788
- package/dist/chat-ui.js.map +1 -1
- package/dist/{collection-view-fields-CajuwtKF.d.ts → collection-view-fields-B3fhsgn7.d.ts} +2 -0
- package/dist/{collection-view-grouping-Bm7Hlt5w.js → collection-view-grouping-jIqOrBG8.js} +2 -2
- package/dist/{collection-view-grouping-Bm7Hlt5w.js.map → collection-view-grouping-jIqOrBG8.js.map} +1 -1
- package/dist/{collection-view-search-BqYMZQ4q.js → collection-view-search-KbQpKHdn.js} +728 -601
- package/dist/collection-view-search-KbQpKHdn.js.map +1 -0
- package/dist/collection-view.d.ts +90 -3
- package/dist/collection-view.js +1 -1
- package/dist/{data-table-stats-row-RwLXF9EW.js → data-table-stats-row-83mX8b1B.js} +2 -2
- package/dist/{data-table-stats-row-RwLXF9EW.js.map → data-table-stats-row-83mX8b1B.js.map} +1 -1
- package/dist/data-table.d.ts +2 -3
- package/dist/data-table.js +6 -6
- package/dist/{diff-viewer-BD2PQ4SS.js → diff-viewer-C5KXwq7E.js} +3 -3
- package/dist/{diff-viewer-BD2PQ4SS.js.map → diff-viewer-C5KXwq7E.js.map} +1 -1
- package/dist/diff.js +2 -2
- package/dist/{display-sort-control-BSFhWHgn.js → display-sort-control-BCkgKET1.js} +3 -3
- package/dist/{display-sort-control-BSFhWHgn.js.map → display-sort-control-BCkgKET1.js.map} +1 -1
- package/dist/{edit-mode-data-table-TdIRPVU1.js → edit-mode-data-table-ScVJJT9F.js} +5 -5
- package/dist/{edit-mode-data-table-TdIRPVU1.js.map → edit-mode-data-table-ScVJJT9F.js.map} +1 -1
- package/dist/{index-DjZsR4Ey.d.ts → index-DXpADqIg.d.ts} +8 -4
- package/dist/index.d.ts +49 -49
- package/dist/index.js +451 -453
- package/dist/index.js.map +1 -1
- package/dist/kanban-renderer.d.ts +3 -3
- package/dist/kanban-renderer.js +934 -744
- package/dist/kanban-renderer.js.map +1 -1
- package/dist/{list-row-DCHZXCVH.js → list-row-F8kBQGB-.js} +393 -383
- package/dist/list-row-F8kBQGB-.js.map +1 -0
- package/dist/{markdown-editor-6jAy_E3r.js → markdown-editor-Dm4Fi3sX.js} +4 -4
- package/dist/{markdown-editor-6jAy_E3r.js.map → markdown-editor-Dm4Fi3sX.js.map} +1 -1
- package/dist/{param-editor-f57ea8V9.js → param-editor-B9ASM5Lv.js} +2 -2
- package/dist/{param-editor-f57ea8V9.js.map → param-editor-B9ASM5Lv.js.map} +1 -1
- package/dist/{param-editor-field-CePT5hCj.js → param-editor-field-BmNUziwI.js} +5 -3
- package/dist/param-editor-field-BmNUziwI.js.map +1 -0
- package/dist/param-editor.js +2 -2
- package/dist/{rich-text-bKBLAco5.js → rich-text-Dx5F8Zm1.js} +3 -3
- package/dist/{rich-text-bKBLAco5.js.map → rich-text-Dx5F8Zm1.js.map} +1 -1
- package/dist/rich-text.js +3 -3
- package/dist/terminal.js +1 -1
- package/dist/{theme-bxwJIMKe.js → theme-CWDvF5Yn.js} +164 -72
- package/dist/theme-CWDvF5Yn.js.map +1 -0
- package/dist/theme.js +1 -1
- package/dist/{tree-list-nFNO7MV4.js → tree-list-Ces1hpRd.js} +2 -2
- package/dist/{tree-list-nFNO7MV4.js.map → tree-list-Ces1hpRd.js.map} +1 -1
- package/dist/{workspace-badge-oFp29Gbe.d.ts → workspace-badge-De6OQjb5.d.ts} +2 -1
- package/dist/{workspace-badge-BgiTennO.js → workspace-badge-DqQKSUJw.js} +11 -11
- package/dist/workspace-badge-DqQKSUJw.js.map +1 -0
- package/package.json +2 -2
- package/dist/collection-view-search-BqYMZQ4q.js.map +0 -1
- package/dist/index-r6SFPkUI.d.ts +0 -91
- package/dist/list-row-DCHZXCVH.js.map +0 -1
- package/dist/param-editor-field-CePT5hCj.js.map +0 -1
- package/dist/theme-bxwJIMKe.js.map +0 -1
- package/dist/workspace-badge-BgiTennO.js.map +0 -1
|
@@ -1,4 +1,91 @@
|
|
|
1
|
-
import { A as CollectionSavedView, F as ViewFilterGroup, I as ViewFilterRule, L as ViewSort, M as CollectionViewsSource, N as EMPTY_VIEW_FILTER, a as CollectionViewStoreState, i as CollectionViewStoreInitialState, j as CollectionViewState, o as useCollectionViewStore, r as withTitleField } from "./collection-view-fields-
|
|
2
|
-
import {
|
|
3
|
-
|
|
1
|
+
import { A as CollectionSavedView, F as ViewFilterGroup, I as ViewFilterRule, L as ViewSort, M as CollectionViewsSource, N as EMPTY_VIEW_FILTER, a as CollectionViewStoreState, i as CollectionViewStoreInitialState, j as CollectionViewState, o as useCollectionViewStore, r as withTitleField, s as AttributeDescriptor, x as KanbanRendererRow } from "./collection-view-fields-B3fhsgn7.js";
|
|
2
|
+
import { ReactNode, RefObject } from "react";
|
|
3
|
+
import { ViewFilterGroup as ViewFilterGroup$1, ViewFilterRule as ViewFilterRule$1 } from "@pstdio/sdk/extensions";
|
|
4
|
+
//#region src/components/collection-view/filter-rule-value.d.ts
|
|
5
|
+
interface RuleValueOption {
|
|
6
|
+
value: string;
|
|
7
|
+
label: string;
|
|
8
|
+
count?: number;
|
|
9
|
+
icon?: string | null;
|
|
10
|
+
color?: string;
|
|
11
|
+
}
|
|
12
|
+
//#endregion
|
|
13
|
+
//#region src/components/collection-view/collection-filter.d.ts
|
|
14
|
+
interface CollectionFilterProps {
|
|
15
|
+
itemLabel?: string;
|
|
16
|
+
fields: AttributeDescriptor[];
|
|
17
|
+
filter: ViewFilterGroup$1;
|
|
18
|
+
optionsFor: (field: AttributeDescriptor) => RuleValueOption[];
|
|
19
|
+
onFilterChange: (filter: ViewFilterGroup$1) => void;
|
|
20
|
+
}
|
|
21
|
+
/** The collection picker and editable criteria, without saved views or search. */
|
|
22
|
+
export declare function CollectionFilter(props: CollectionFilterProps): import("react/jsx-runtime").JSX.Element;
|
|
23
|
+
//#endregion
|
|
24
|
+
//#region src/components/collection-view/collection-view-bar.d.ts
|
|
25
|
+
interface CollectionViewBarProps<TSettings> {
|
|
26
|
+
storageKey: string;
|
|
27
|
+
/** Singular resource label used as the subject of boolean predicates. */
|
|
28
|
+
itemLabel?: string;
|
|
29
|
+
initialState: CollectionViewStoreInitialState<TSettings>;
|
|
30
|
+
views: (CollectionSavedView<TSettings> & {
|
|
31
|
+
builtIn: boolean;
|
|
32
|
+
})[];
|
|
33
|
+
viewsSource?: CollectionViewsSource<TSettings>;
|
|
34
|
+
/** Every field of the view. Filter offers the filterable ones and Sort the sortable ones. */
|
|
35
|
+
fields: AttributeDescriptor[];
|
|
36
|
+
optionsFor: (field: AttributeDescriptor) => RuleValueOption[];
|
|
37
|
+
/** Search is screen state owned by the renderer. It is never saved. */
|
|
38
|
+
search: string;
|
|
39
|
+
onSearchChange: (value: string) => void;
|
|
40
|
+
searchResultLabel?: string;
|
|
41
|
+
leading?: ReactNode;
|
|
42
|
+
actions?: ReactNode;
|
|
43
|
+
displayControl: ReactNode;
|
|
44
|
+
align?: "split" | "end";
|
|
45
|
+
}
|
|
46
|
+
/** One view bar for data tables and both kanban displays: saved views, then Search, Filter, and Display. */
|
|
47
|
+
export declare const CollectionViewBar: <TSettings>(props: CollectionViewBarProps<TSettings>) => import("react/jsx-runtime").JSX.Element;
|
|
48
|
+
//#endregion
|
|
49
|
+
//#region src/components/collection-view/collection-view-filter.d.ts
|
|
50
|
+
/** Rules that are incomplete or no longer fit a field are skipped, so they never hide rows. */
|
|
51
|
+
export declare const filterRowsByView: <TRow extends KanbanRendererRow>(rows: TRow[], filter: ViewFilterGroup$1, fields: AttributeDescriptor[], today?: Date) => TRow[];
|
|
52
|
+
//#endregion
|
|
53
|
+
//#region src/components/collection-view/collection-view-search.d.ts
|
|
54
|
+
/** Search only looks at the text a view shows, which the caller collects per row. */
|
|
55
|
+
export declare const searchRows: <TRow>(rows: TRow[], query: string, textsOf: (row: TRow) => string[]) => TRow[];
|
|
56
|
+
//#endregion
|
|
57
|
+
//#region src/components/collection-view/use-collection-views.d.ts
|
|
58
|
+
interface CollectionViewsInput<TSettings> {
|
|
59
|
+
storageKey: string;
|
|
60
|
+
fields?: AttributeDescriptor[];
|
|
61
|
+
initialState: CollectionViewStoreInitialState<TSettings>;
|
|
62
|
+
viewsSource?: CollectionViewsSource<TSettings>;
|
|
63
|
+
defaultViews?: CollectionSavedView<TSettings>[];
|
|
64
|
+
defaultActiveViewId?: string;
|
|
65
|
+
}
|
|
66
|
+
/** Picks the views a renderer offers and keeps the store on a view that still exists. */
|
|
67
|
+
export declare const useCollectionViews: <TSettings>(input: CollectionViewsInput<TSettings>) => {
|
|
68
|
+
views: (CollectionSavedView<TSettings> & {
|
|
69
|
+
builtIn: boolean;
|
|
70
|
+
})[];
|
|
71
|
+
defaultId: string | undefined;
|
|
72
|
+
};
|
|
73
|
+
//#endregion
|
|
74
|
+
//#region src/components/collection-view/view-bar-popover.d.ts
|
|
75
|
+
interface ViewBarPopoverProps {
|
|
76
|
+
open: boolean;
|
|
77
|
+
onOpenChange: (open: boolean) => void;
|
|
78
|
+
/** The button the menu opens from. Several buttons can open the same menu. */
|
|
79
|
+
anchorRef: RefObject<HTMLElement | null>;
|
|
80
|
+
width: string;
|
|
81
|
+
placement?: "bottom-start" | "bottom-end";
|
|
82
|
+
/** The quick picker draws its own panes edge to edge. */
|
|
83
|
+
padding?: "0" | "2xs";
|
|
84
|
+
testId?: string;
|
|
85
|
+
children: ReactNode;
|
|
86
|
+
}
|
|
87
|
+
/** The menu shell for Search, Filter, and Sort. Menus inside it render in place, so using them never closes it. */
|
|
88
|
+
export declare const ViewBarPopover: (props: ViewBarPopoverProps) => import("react/jsx-runtime").JSX.Element;
|
|
89
|
+
//#endregion
|
|
90
|
+
export { type CollectionFilterProps, type CollectionSavedView, type CollectionViewBarProps, type CollectionViewState, type CollectionViewStoreInitialState, type CollectionViewStoreState, type CollectionViewsInput, type CollectionViewsSource, EMPTY_VIEW_FILTER, type ViewBarPopoverProps, type ViewFilterGroup, type ViewFilterRule, type ViewSort, useCollectionViewStore, withTitleField };
|
|
4
91
|
export {};
|
package/dist/collection-view.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { n as e } from "./scroll-area-IeoRS73V.js";
|
|
2
|
-
import { F as t, I as n, L as r, T as i, _ as a, a as o, c as s, d as c, f as l, g as u, i as d, l as f, n as p, o as m, r as h, s as g, u as _, v } from "./collection-view-search-
|
|
2
|
+
import { F as t, I as n, L as r, T as i, _ as a, a as o, c as s, d as c, f as l, g as u, i as d, l as f, n as p, o as m, r as h, s as g, u as _, v } from "./collection-view-search-KbQpKHdn.js";
|
|
3
3
|
import { Button as y, HStack as b, Icon as x } from "@chakra-ui/react";
|
|
4
4
|
import { c as S } from "react/compiler-runtime";
|
|
5
5
|
import { jsx as C, jsxs as w } from "react/jsx-runtime";
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { g as e } from "./edit-mode-data-table-
|
|
1
|
+
import { g as e } from "./edit-mode-data-table-ScVJJT9F.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-
|
|
415
|
+
//# sourceMappingURL=data-table-stats-row-83mX8b1B.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"data-table-stats-row-RwLXF9EW.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-83mX8b1B.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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"}
|
package/dist/data-table.d.ts
CHANGED
|
@@ -1,6 +1,5 @@
|
|
|
1
|
-
import { A as CollectionSavedView, M as CollectionViewsSource, a as CollectionViewStoreState } from "./collection-view-fields-
|
|
2
|
-
import "./index-
|
|
3
|
-
import "./index-DjZsR4Ey.js";
|
|
1
|
+
import { A as CollectionSavedView, M as CollectionViewsSource, a as CollectionViewStoreState } from "./collection-view-fields-B3fhsgn7.js";
|
|
2
|
+
import "./index-DXpADqIg.js";
|
|
4
3
|
import { ReactElement, ReactNode } from "react";
|
|
5
4
|
import { DataTableRendererSettings, ViewFilterGroup, ViewSort } from "@pstdio/sdk/extensions";
|
|
6
5
|
//#region src/components/data-table/types.d.ts
|
package/dist/data-table.js
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import { n as e, t } from "./scroll-area-IeoRS73V.js";
|
|
2
|
-
import { a as n, o as r, t as i, u as a } from "./list-row-
|
|
2
|
+
import { a as n, o as r, t as i, u as a } from "./list-row-F8kBQGB-.js";
|
|
3
3
|
import { n as o } from "./prism-EZSmZh-a.js";
|
|
4
|
-
import { b as s, h as c } from "./collection-view-search-
|
|
5
|
-
import { C as l, S as u, T as d, _ as f, a as p, b as m, c as h, d as g, f as _, h as v, i as y, l as b, m as x, n as S, o as C, p as w, r as T, s as E, t as D, u as O, v as k, w as A, x as j, y as M } from "./edit-mode-data-table-
|
|
6
|
-
import { a as N } from "./collection-view-grouping-
|
|
4
|
+
import { b as s, h as c } from "./collection-view-search-KbQpKHdn.js";
|
|
5
|
+
import { C as l, S as u, T as d, _ as f, a as p, b as m, c as h, d as g, f as _, h as v, i as y, l as b, m as x, n as S, o as C, p as w, r as T, s as E, t as D, u as O, v as k, w as A, x as j, y as M } from "./edit-mode-data-table-ScVJJT9F.js";
|
|
6
|
+
import { a as N } from "./collection-view-grouping-jIqOrBG8.js";
|
|
7
7
|
import { t as P } from "./diff-bubble-DewUd_2w.js";
|
|
8
|
-
import { i as F, n as I, t as L } from "./display-sort-control-
|
|
8
|
+
import { i as F, n as I, t as L } from "./display-sort-control-BCkgKET1.js";
|
|
9
9
|
import { Badge as R, Box as z, Button as B, Flex as ee, HStack as V, Icon as H, IconButton as te, Image as ne, Menu as U, Popover as W, Portal as re, Skeleton as G, Stack as ie, Table as K, Text as q, chakra as J } from "@chakra-ui/react";
|
|
10
10
|
import { c as Y } from "react/compiler-runtime";
|
|
11
11
|
import { jsx as X, jsxs as Z } from "react/jsx-runtime";
|
|
@@ -1187,7 +1187,7 @@ var Mt = (e) => {
|
|
|
1187
1187
|
background: x,
|
|
1188
1188
|
children: S
|
|
1189
1189
|
}, u), t[10] = n.id, t[11] = d, t[12] = b, t[13] = x, t[14] = S, t[15] = f, t[16] = p, t[17] = m, t[18] = h, t[19] = g, t[20] = _, t[21] = v, t[22] = C) : C = t[22], C;
|
|
1190
|
-
}, zt = se(() => import("./data-table-stats-row-
|
|
1190
|
+
}, zt = se(() => import("./data-table-stats-row-83mX8b1B.js").then((e) => ({ default: e.DataTableStatsRow }))), Bt = (e) => {
|
|
1191
1191
|
let t = {};
|
|
1192
1192
|
for (let n of e.getFlatHeaders()) t[`--header-${n.id}-size`] = n.getSize(), t[`--col-${n.column.id}-size`] = n.column.getSize();
|
|
1193
1193
|
return t;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { t as e } from "./scroll-area-IeoRS73V.js";
|
|
2
|
-
import { s as t, t as n } from "./list-row-
|
|
3
|
-
import { r, t as i } from "./tree-list-
|
|
2
|
+
import { s as t, t as n } from "./list-row-F8kBQGB-.js";
|
|
3
|
+
import { r, t as i } from "./tree-list-Ces1hpRd.js";
|
|
4
4
|
import { t as a } from "./empty-state-3mVV_pV-.js";
|
|
5
5
|
import { t as o } from "./diff-bubble-DewUd_2w.js";
|
|
6
6
|
import { n as s, t as c } from "./file-change-badge-0QFNv82B.js";
|
|
@@ -571,4 +571,4 @@ function ge(e) {
|
|
|
571
571
|
//#endregion
|
|
572
572
|
export { q as DiffViewer };
|
|
573
573
|
|
|
574
|
-
//# sourceMappingURL=diff-viewer-
|
|
574
|
+
//# sourceMappingURL=diff-viewer-C5KXwq7E.js.map
|