@pibit.ai/cure-design-system 0.3.45 → 0.3.50

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 (67) hide show
  1. package/dist/applications/loading-indicator/index.d.ts +2 -0
  2. package/dist/applications/loading-indicator/index.d.ts.map +1 -0
  3. package/dist/applications/loading-indicator/loading-indicator.d.ts +1 -2
  4. package/dist/applications/loading-indicator/loading-indicator.d.ts.map +1 -1
  5. package/dist/assets/icons/filtered-view.svg.js +4 -0
  6. package/dist/index.d.ts +4 -3
  7. package/dist/index.d.ts.map +1 -1
  8. package/dist/index.js +188 -168
  9. package/dist/patterns/table/TableWrapper.d.ts.map +1 -1
  10. package/dist/patterns/table/TableWrapper.js +447 -447
  11. package/dist/patterns/table/TableZoomControl.d.ts +2 -2
  12. package/dist/patterns/table/TableZoomControl.d.ts.map +1 -1
  13. package/dist/patterns/table/TableZoomControl.js +124 -46
  14. package/dist/patterns/table/index.d.ts +2 -2
  15. package/dist/patterns/table/index.d.ts.map +1 -1
  16. package/dist/patterns/table/storyHelpers/mockTableViewsApi.d.ts +25 -0
  17. package/dist/patterns/table/storyHelpers/mockTableViewsApi.d.ts.map +1 -0
  18. package/dist/patterns/table/tableZoomLayout.d.ts +6 -0
  19. package/dist/patterns/table/tableZoomLayout.d.ts.map +1 -1
  20. package/dist/patterns/table/tableZoomLayout.js +39 -33
  21. package/dist/patterns/table/toolbar/SummaryFooter.d.ts +10 -3
  22. package/dist/patterns/table/toolbar/SummaryFooter.d.ts.map +1 -1
  23. package/dist/patterns/table/toolbar/SummaryFooter.js +61 -71
  24. package/dist/patterns/table/toolbar/TableToolbar.d.ts +8 -0
  25. package/dist/patterns/table/toolbar/TableToolbar.d.ts.map +1 -1
  26. package/dist/patterns/table/toolbar/TableToolbar.js +200 -159
  27. package/dist/patterns/table/toolbar/TableViewDirtyActions.d.ts +7 -0
  28. package/dist/patterns/table/toolbar/TableViewDirtyActions.d.ts.map +1 -0
  29. package/dist/patterns/table/toolbar/TableViewDirtyActions.js +39 -0
  30. package/dist/patterns/table/toolbar/TableViewsDropdown.d.ts +8 -0
  31. package/dist/patterns/table/toolbar/TableViewsDropdown.d.ts.map +1 -0
  32. package/dist/patterns/table/toolbar/TableViewsDropdown.js +171 -0
  33. package/dist/patterns/table/toolbar/index.d.ts +4 -0
  34. package/dist/patterns/table/toolbar/index.d.ts.map +1 -1
  35. package/dist/patterns/table/toolbar/tableViewSnapshot.d.ts +18 -0
  36. package/dist/patterns/table/toolbar/tableViewSnapshot.d.ts.map +1 -0
  37. package/dist/patterns/table/toolbar/tableViewSnapshot.js +168 -0
  38. package/dist/patterns/table/toolbar/tableViewSnapshot.test.d.ts +2 -0
  39. package/dist/patterns/table/toolbar/tableViewSnapshot.test.d.ts.map +1 -0
  40. package/dist/patterns/table/toolbar/tableViewTypes.d.ts +73 -0
  41. package/dist/patterns/table/toolbar/tableViewTypes.d.ts.map +1 -0
  42. package/dist/patterns/table/toolbar/tableViewTypes.js +4 -0
  43. package/dist/patterns/table/types.d.ts +24 -1
  44. package/dist/patterns/table/types.d.ts.map +1 -1
  45. package/dist/patterns/table/useFitTableToViewport.d.ts +15 -0
  46. package/dist/patterns/table/useFitTableToViewport.d.ts.map +1 -0
  47. package/dist/patterns/table/useFitTableToViewport.js +47 -0
  48. package/dist/patterns/table/useTableZoomState.d.ts +20 -0
  49. package/dist/patterns/table/useTableZoomState.d.ts.map +1 -0
  50. package/dist/patterns/table/useTableZoomState.js +30 -0
  51. package/dist/patterns/table-component/TableComponent.d.ts.map +1 -1
  52. package/dist/patterns/table-component/TableComponent.js +385 -384
  53. package/dist/patterns/table-component/types.d.ts +2 -0
  54. package/dist/patterns/table-component/types.d.ts.map +1 -1
  55. package/dist/primitives/input/hint-text.d.ts +1 -2
  56. package/dist/primitives/input/hint-text.d.ts.map +1 -1
  57. package/dist/primitives/input/index.d.ts +3 -1
  58. package/dist/primitives/input/index.d.ts.map +1 -1
  59. package/dist/primitives/input/input.js +7 -7
  60. package/dist/primitives/input/label.d.ts +1 -2
  61. package/dist/primitives/input/label.d.ts.map +1 -1
  62. package/dist/primitives/select/index.d.ts +1 -0
  63. package/dist/primitives/select/index.d.ts.map +1 -1
  64. package/dist/primitives/select/select-item.d.ts +1 -2
  65. package/dist/primitives/select/select-item.d.ts.map +1 -1
  66. package/dist/styles/components.css +1 -1
  67. package/package.json +5 -1
@@ -1,12 +1,12 @@
1
1
  export type TableZoomControlProps = {
2
2
  value: number;
3
- defaultValue: number;
4
3
  minValue: number;
5
4
  maxValue: number;
6
5
  step: number;
7
6
  onChange: (value: number) => void;
7
+ onFitToViewport: () => void;
8
8
  isDisabled?: boolean;
9
9
  };
10
10
  /** Shared zoom control used by both the React Aria and TanStack table renderers. */
11
- export declare const TableZoomControl: ({ value, defaultValue, minValue, maxValue, step, onChange, isDisabled, }: TableZoomControlProps) => import("react/jsx-runtime").JSX.Element;
11
+ export declare const TableZoomControl: ({ value, minValue, maxValue, step, onChange, onFitToViewport, isDisabled, }: TableZoomControlProps) => import("react/jsx-runtime").JSX.Element;
12
12
  //# sourceMappingURL=TableZoomControl.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"TableZoomControl.d.ts","sourceRoot":"","sources":["../../../src/patterns/table/TableZoomControl.tsx"],"names":[],"mappings":"AAGA,MAAM,MAAM,qBAAqB,GAAG;IAClC,KAAK,EAAE,MAAM,CAAC;IACd,YAAY,EAAE,MAAM,CAAC;IACrB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAClC,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB,CAAC;AAEF,oFAAoF;AACpF,eAAO,MAAM,gBAAgB,GAAI,0EAQ9B,qBAAqB,4CA0CvB,CAAC"}
1
+ {"version":3,"file":"TableZoomControl.d.ts","sourceRoot":"","sources":["../../../src/patterns/table/TableZoomControl.tsx"],"names":[],"mappings":"AAOA,MAAM,MAAM,qBAAqB,GAAG;IAClC,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAClC,eAAe,EAAE,MAAM,IAAI,CAAC;IAC5B,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB,CAAC;AAEF,oFAAoF;AACpF,eAAO,MAAM,gBAAgB,GAAI,6EAQ9B,qBAAqB,4CA+GvB,CAAC"}
@@ -1,58 +1,136 @@
1
- import { jsxs as o, jsx as r, Fragment as c } from "react/jsx-runtime";
2
- import { Slider as m, SliderTrack as h, SliderThumb as u } from "react-aria-components";
3
- import { clamp as f } from "./tableZoomLayout.js";
4
- const y = ({
5
- value: n,
6
- defaultValue: l,
7
- minValue: s,
8
- maxValue: t,
9
- step: b,
10
- onChange: i,
11
- isDisabled: d = !1
1
+ import { jsx as e, jsxs as t, Fragment as g } from "react/jsx-runtime";
2
+ import { useState as x, useEffect as w } from "react";
3
+ import { Slider as N, SliderTrack as z, SliderThumb as T } from "react-aria-components";
4
+ import { clamp as u } from "./tableZoomLayout.js";
5
+ import { Dropdown as p } from "../../primitives/dropdown/dropdown.js";
6
+ import { Button as k } from "../../primitives/button/button.js";
7
+ import { Icon as d } from "../../primitives/icon/icon.js";
8
+ const q = ({
9
+ value: b,
10
+ minValue: o,
11
+ maxValue: a,
12
+ step: f,
13
+ onChange: m,
14
+ onFitToViewport: h,
15
+ isDisabled: s = !1
12
16
  }) => {
13
- const a = f(n, s, t);
14
- return /* @__PURE__ */ o("div", { className: "flex items-center gap-2", children: [
15
- /* @__PURE__ */ r(
16
- m,
17
+ const l = u(b, o, a), y = u(100, o, a), [n, i] = x(!1);
18
+ return w(() => {
19
+ if (!n) return;
20
+ const r = (v) => {
21
+ const c = v.target;
22
+ if (!(c instanceof Element)) {
23
+ i(!1);
24
+ return;
25
+ }
26
+ c.closest("[data-table-zoom-menu]") || c.closest('[aria-label="Table zoom options"]') || i(!1);
27
+ };
28
+ return document.addEventListener("pointerdown", r, !0), () => document.removeEventListener(
29
+ "pointerdown",
30
+ r,
31
+ !0
32
+ );
33
+ }, [n]), /* @__PURE__ */ e("div", { className: "relative z-50 shrink-0", children: /* @__PURE__ */ t(p.Root, { isOpen: n, onOpenChange: i, children: [
34
+ /* @__PURE__ */ t(
35
+ k,
17
36
  {
18
- "aria-label": "Table zoom",
19
- className: "w-24 shrink-0",
20
- minValue: s,
21
- maxValue: t,
22
- step: b,
23
- value: a,
24
- onChange: (e) => i(Array.isArray(e) ? e[0] : e),
25
- isDisabled: d || s >= t,
26
- children: /* @__PURE__ */ r(h, { className: "relative flex h-4 w-full items-center data-[disabled]:opacity-50", children: ({ state: e }) => /* @__PURE__ */ o(c, { children: [
27
- /* @__PURE__ */ r("div", { className: "absolute h-1 w-full rounded-full bg-tertiary" }),
28
- /* @__PURE__ */ r(
29
- "div",
30
- {
31
- className: "absolute h-1 rounded-full bg-brand-solid",
32
- style: { width: `${e.getThumbPercent(0) * 100}%` }
33
- }
34
- ),
35
- /* @__PURE__ */ r(u, { className: "top-1/2 size-3 rounded-full border-2 border-slider-handle-border bg-slider-handle-bg shadow-sm outline-none data-[focus-visible]:ring-2 data-[focus-visible]:ring-focus-ring" })
36
- ] }) })
37
+ size: "xs",
38
+ color: "secondary",
39
+ "aria-label": "Table zoom options",
40
+ isDisabled: s,
41
+ className: "w-16 justify-between gap-0 pl-1 pr-2 tabular-nums",
42
+ iconTrailing: /* @__PURE__ */ e(d, { name: "ChevronDown", size: 12, className: "shrink-0" }),
43
+ children: [
44
+ l,
45
+ "%"
46
+ ]
37
47
  }
38
48
  ),
39
- /* @__PURE__ */ o(
40
- "button",
49
+ /* @__PURE__ */ t(
50
+ p.Popover,
41
51
  {
42
- type: "button",
43
- "aria-label": `Reset table zoom to ${l}%`,
44
- title: "Reset zoom",
45
- className: "w-9 shrink-0 text-right text-xs tabular-nums text-secondary enabled:hover:text-primary disabled:opacity-50",
46
- disabled: d || a === l,
47
- onClick: () => i(l),
52
+ placement: "bottom end",
53
+ className: "w-64 overflow-hidden p-0",
54
+ "data-table-zoom-menu": !0,
48
55
  children: [
49
- a,
50
- "%"
56
+ /* @__PURE__ */ t(
57
+ "button",
58
+ {
59
+ type: "button",
60
+ className: "flex w-full items-center gap-2 px-4 py-3 text-left text-xs text-secondary hover:bg-primary_hover disabled:opacity-50",
61
+ disabled: s,
62
+ onClick: h,
63
+ children: [
64
+ /* @__PURE__ */ e(
65
+ d,
66
+ {
67
+ name: "SpacingWidth01",
68
+ size: 16,
69
+ className: "shrink-0 text-fg-quaternary"
70
+ }
71
+ ),
72
+ "Fit Whole Table"
73
+ ]
74
+ }
75
+ ),
76
+ /* @__PURE__ */ t(
77
+ "button",
78
+ {
79
+ type: "button",
80
+ className: "flex w-full items-center gap-2 px-4 py-3 text-left text-xs text-secondary hover:bg-primary_hover disabled:opacity-50",
81
+ disabled: s,
82
+ onClick: () => m(y),
83
+ children: [
84
+ /* @__PURE__ */ e(
85
+ d,
86
+ {
87
+ name: "Maximize02",
88
+ size: 16,
89
+ className: "shrink-0 text-fg-quaternary"
90
+ }
91
+ ),
92
+ "Actual Size 100%"
93
+ ]
94
+ }
95
+ ),
96
+ /* @__PURE__ */ t("div", { className: "border-t border-secondary px-4 py-3", children: [
97
+ /* @__PURE__ */ t("div", { className: "mb-2 flex items-center justify-between text-xs font-medium text-secondary", children: [
98
+ /* @__PURE__ */ e("span", { children: "Zoom level" }),
99
+ /* @__PURE__ */ t("span", { className: "tabular-nums", children: [
100
+ l,
101
+ "%"
102
+ ] })
103
+ ] }),
104
+ /* @__PURE__ */ e(
105
+ N,
106
+ {
107
+ "aria-label": "Table zoom",
108
+ className: "w-full",
109
+ minValue: o,
110
+ maxValue: a,
111
+ step: f,
112
+ value: l,
113
+ onChange: (r) => m(Array.isArray(r) ? r[0] : r),
114
+ isDisabled: s || o >= a,
115
+ children: /* @__PURE__ */ e(z, { className: "relative flex h-4 w-full items-center data-[disabled]:opacity-50", children: ({ state: r }) => /* @__PURE__ */ t(g, { children: [
116
+ /* @__PURE__ */ e("div", { className: "absolute h-1 w-full rounded-full bg-tertiary" }),
117
+ /* @__PURE__ */ e(
118
+ "div",
119
+ {
120
+ className: "absolute h-1 rounded-full bg-brand-solid",
121
+ style: { width: `${r.getThumbPercent(0) * 100}%` }
122
+ }
123
+ ),
124
+ /* @__PURE__ */ e(T, { className: "top-1/2 size-4 rounded-full border-2 border-brand-solid bg-primary shadow-sm outline-none data-[focus-visible]:ring-2 data-[focus-visible]:ring-focus-ring" })
125
+ ] }) })
126
+ }
127
+ )
128
+ ] })
51
129
  ]
52
130
  }
53
131
  )
54
- ] });
132
+ ] }) });
55
133
  };
56
134
  export {
57
- y as TableZoomControl
135
+ q as TableZoomControl
58
136
  };
@@ -8,8 +8,8 @@ export { Pagination } from './pagination-base';
8
8
  export { ROW_HEIGHT_ICONS, type RowHeightIconKey } from './row-height-icons';
9
9
  export { TOOLBAR_ICONS } from './toolbar-icons';
10
10
  export type { TableColumnSchema, TableColumnMenuSchema, TableColumnValueType, } from './types';
11
- export { TableToolbar, pickCoreToolbarProps, registerToolbarExtensions, getToolbarExtensions, RowHeightDropdown, HideFieldsDropdown, AlignDropdown, GroupByDropdown, ShowSummaryDropdown, SummaryFooterRow, ColumnHeaderMenu, RowActionsMenu, BulkActionBar, applyHideAndReorder, getDefaultAlignmentForType, getEffectiveAlignment, alignmentClass, getAggregationsForType, computeAggregation, groupRows, resolveColumnLabel, resolveSummaryDisplayValueType, ROW_HEIGHT_CLASS, AGGREGATION_LABELS, } from './toolbar';
12
- export type { SearchToolConfig, SortToolConfig, FilterToolConfig, RowHeightToolConfig, HideFieldsToolConfig, AlignToolConfig, GroupByToolConfig, SummaryToolConfig, UndoRedoToolConfig, ToolbarExtensionComponents, LegacySortToolConfig, LegacyFilterToolConfig, RowHeightOption, SummaryFooterRowProps, ColumnMenuAction, ColumnMenuCapabilities, RowActionsConfig, CellAlignment, AggregationType, AggregationOption, RowGroup, } from './toolbar';
11
+ export { TableToolbar, pickCoreToolbarProps, registerToolbarExtensions, getToolbarExtensions, RowHeightDropdown, HideFieldsDropdown, AlignDropdown, GroupByDropdown, ShowSummaryDropdown, SummaryFooterRow, ColumnHeaderMenu, RowActionsMenu, BulkActionBar, applyHideAndReorder, getDefaultAlignmentForType, getEffectiveAlignment, alignmentClass, getAggregationsForType, computeAggregation, groupRows, resolveColumnLabel, resolveSummaryDisplayValueType, ROW_HEIGHT_CLASS, AGGREGATION_LABELS, applyTableViewSnapshot, toTableViewSnapshot, isTableViewDirty, getInitialTableViewSnapshot, snapshotFromViewRecord, parseTableSavedViewRecord, TableViewsDropdown, DEFAULT_TABLE_VIEW_ID, } from './toolbar';
12
+ export type { SearchToolConfig, SortToolConfig, FilterToolConfig, RowHeightToolConfig, HideFieldsToolConfig, AlignToolConfig, GroupByToolConfig, SummaryToolConfig, UndoRedoToolConfig, ToolbarExtensionComponents, LegacySortToolConfig, LegacyFilterToolConfig, RowHeightOption, SummaryFooterRowProps, ColumnMenuAction, ColumnMenuCapabilities, RowActionsConfig, CellAlignment, AggregationType, AggregationOption, RowGroup, TableViewKind, TableViewDirtyAction, TableViewSnapshot, TableViewSharee, TableSavedViewRecord, TableViewsByTableName, TableViewListItem, TableViewsConfig, SaveTableViewRequest, } from './toolbar';
13
13
  export { GridNavProvider, useGridKeyboardNavigation, isWithinCellEditor, findGridCell, focusGridCell, getGridNeighbor, getGridTabNeighbor, type FocusGridCellOptions, type GridNavDirection, type GridNeighbor, type GridNavValue, } from './useGridKeyboardNavigation';
14
14
  export { CELL_SCROLL_PADDING_PX, computeCellScrollDelta, getAxisScrollParent, getScrollportRect, measureStickyInsets, scrollGridCellIntoView, type CellScrollDelta, type EdgeRect, type GridScrollDirection, type StickyInsets, } from './scrollCellIntoView';
15
15
  export { TableUndoRedoProvider, useTableUndoRedo, useTableUndoRedoScope, MAX_HISTORY, wrapColumnHeaderActionWithUndoRedo, wrapEditChromeWithUndoRedo, wrapRowActionsWithUndoRedo, wrapSummaryFooterWithUndoRedo, wrapToolbarWithUndoRedo, type TableUndoRedoRegistration, type TableUndoRedoScopeApi, type TableUndoRedoState, type TableUndoSnapshot, } from './useTableUndoRedo';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/patterns/table/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/patterns/table/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,25 @@
1
+ import { SaveTableViewRequest, TableSavedViewRecord, TableViewsByTableName } from '../toolbar/tableViewTypes';
2
+ /**
3
+ * Hardcoded GET shape for `claims_summary_agg` — same contract as submission overview
4
+ * table views until the real endpoint exists.
5
+ */
6
+ export declare const HARDCODED_TABLE_VIEWS_RESPONSE: TableViewsByTableName;
7
+ export declare const DUMMY_SHARE_DIRECTORY: ({
8
+ id: string;
9
+ label: string;
10
+ kind: "user";
11
+ } | {
12
+ id: string;
13
+ label: string;
14
+ kind: "team";
15
+ })[];
16
+ export declare function resetDummyTableViewsStore(): void;
17
+ export declare function fetchTableViews(tableName: string): Promise<{
18
+ views: TableSavedViewRecord[];
19
+ }>;
20
+ export declare function saveTableView(payload: SaveTableViewRequest): Promise<TableSavedViewRecord>;
21
+ export declare function updateTableViewSnapshot(tableName: string, viewId: string, snapshot: SaveTableViewRequest): Promise<TableSavedViewRecord | null>;
22
+ export declare function deleteTableView(tableName: string, viewId: string): Promise<void>;
23
+ export declare function renameTableView(tableName: string, viewId: string, name: string): Promise<void>;
24
+ export declare function shareTableView(tableName: string, viewId: string, shareUserIds: string[], shareTeamIds: string[]): Promise<void>;
25
+ //# sourceMappingURL=mockTableViewsApi.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mockTableViewsApi.d.ts","sourceRoot":"","sources":["../../../../src/patterns/table/storyHelpers/mockTableViewsApi.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,oBAAoB,EAAE,oBAAoB,EAAE,qBAAqB,EAAE,MAAM,2BAA2B,CAAC;AAKnH;;;GAGG;AACH,eAAO,MAAM,8BAA8B,EAAE,qBAkC5C,CAAC;AAEF,eAAO,MAAM,qBAAqB;;;;;;;;IAIjC,CAAC;AAIF,wBAAgB,yBAAyB,IAAI,IAAI,CAEhD;AAED,wBAAsB,eAAe,CACnC,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC;IAAE,KAAK,EAAE,oBAAoB,EAAE,CAAA;CAAE,CAAC,CAI5C;AAED,wBAAsB,aAAa,CACjC,OAAO,EAAE,oBAAoB,GAC5B,OAAO,CAAC,oBAAoB,CAAC,CAwB/B;AAED,wBAAsB,uBAAuB,CAC3C,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,oBAAoB,GAC7B,OAAO,CAAC,oBAAoB,GAAG,IAAI,CAAC,CAsBtC;AAED,wBAAsB,eAAe,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAOtF;AAED,wBAAsB,eAAe,CACnC,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,MAAM,GACX,OAAO,CAAC,IAAI,CAAC,CAOf;AAED,wBAAsB,cAAc,CAClC,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,MAAM,EACd,YAAY,EAAE,MAAM,EAAE,EACtB,YAAY,EAAE,MAAM,EAAE,GACrB,OAAO,CAAC,IAAI,CAAC,CAiBf"}
@@ -78,4 +78,10 @@ export declare const computeNeedsHorizontalScroll: (fillBaseWidth: number | null
78
78
  export declare const computeEffectiveTableWidth: (fillBaseWidth: number | null, containerWidth: number | null, zoomScale: number) => number | null;
79
79
  /** Pre-zoom width each flexible column receives once fixed-width columns are accounted for. */
80
80
  export declare const computeFlexColumnWidth: (effectiveTableWidth: number | null, fixedColumnWidthTotal: number, flexibleColumnCount: number) => number | null;
81
+ /**
82
+ * Linear estimate of the largest configured zoom step that keeps the table inside its
83
+ * scroll viewport. `paintedTableWidth` is measured at `currentZoom`, which lets this work
84
+ * for both natural-width and fill-width tables without temporarily removing CSS `zoom`.
85
+ */
86
+ export declare const computeFitTableZoom: (viewportWidth: number, paintedTableWidth: number, currentZoom: number, minZoom: number, maxZoom: number, step: number) => number;
81
87
  //# sourceMappingURL=tableZoomLayout.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"tableZoomLayout.d.ts","sourceRoot":"","sources":["../../../src/patterns/table/tableZoomLayout.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAE/C;;;;;GAKG;AAEH,eAAO,MAAM,kBAAkB,MAAM,CAAC;AACtC,eAAO,MAAM,sBAAsB,KAAK,CAAC;AACzC,eAAO,MAAM,sBAAsB,MAAM,CAAC;AAC1C,eAAO,MAAM,uBAAuB,KAAK,CAAC;AAC1C,eAAO,MAAM,wBAAwB,UAAU,CAAC;AAChD,eAAO,MAAM,iCAAiC,UAAU,CAAC;AAEzD,eAAO,MAAM,KAAK,GAAI,OAAO,MAAM,EAAE,KAAK,MAAM,EAAE,KAAK,MAAM,WACxB,CAAC;AAEtC;;;;GAIG;AACH,eAAO,MAAM,uBAAuB,KAAK,CAAC;AAC1C,kFAAkF;AAClF,eAAO,MAAM,sBAAsB,KAAK,CAAC;AACzC;;;GAGG;AACH,eAAO,MAAM,iCAAiC,KAAyB,CAAC;AAExE;;;;;;;GAOG;AACH,eAAO,MAAM,oBAAoB,GAAI,aAAa,MAAM,KAAG,MAAM,GAAG,SASnE,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,iBAAiB,MAAM,CAAC;AAErC,eAAO,MAAM,YAAY,GAAI,OAAO,MAAM,GAAG,SAAS,KAAG,MAIxD,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,eAAe,QAAO,OAGJ,CAAC;AAEhC,eAAO,MAAM,mBAAmB,GAAI,QAAQ,eAAe;;;;;CAiB1D,CAAC;AAEF;;;;;;;GAOG;AACH,eAAO,MAAM,oBAAoB,GAC/B,gBAAgB,MAAM,GAAG,IAAI,EAC7B,eAAe,MAAM,KACpB,MAAoF,CAAC;AAExF,yFAAyF;AACzF,eAAO,MAAM,4BAA4B,GACvC,eAAe,MAAM,GAAG,IAAI,EAC5B,gBAAgB,MAAM,GAAG,IAAI,EAC7B,WAAW,MAAM,KAChB,OAKA,CAAC;AAEJ;;;;;;;;;GASG;AACH,eAAO,MAAM,0BAA0B,GACrC,eAAe,MAAM,GAAG,IAAI,EAC5B,gBAAgB,MAAM,GAAG,IAAI,EAC7B,WAAW,MAAM,KAChB,MAAM,GAAG,IAKX,CAAC;AAEF,+FAA+F;AAC/F,eAAO,MAAM,sBAAsB,GACjC,qBAAqB,MAAM,GAAG,IAAI,EAClC,uBAAuB,MAAM,EAC7B,qBAAqB,MAAM,KAC1B,MAAM,GAAG,IAOX,CAAC"}
1
+ {"version":3,"file":"tableZoomLayout.d.ts","sourceRoot":"","sources":["../../../src/patterns/table/tableZoomLayout.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAE/C;;;;;GAKG;AAEH,eAAO,MAAM,kBAAkB,MAAM,CAAC;AACtC,eAAO,MAAM,sBAAsB,KAAK,CAAC;AACzC,eAAO,MAAM,sBAAsB,MAAM,CAAC;AAC1C,eAAO,MAAM,uBAAuB,KAAK,CAAC;AAC1C,eAAO,MAAM,wBAAwB,UAAU,CAAC;AAChD,eAAO,MAAM,iCAAiC,UAAU,CAAC;AAEzD,eAAO,MAAM,KAAK,GAAI,OAAO,MAAM,EAAE,KAAK,MAAM,EAAE,KAAK,MAAM,WACxB,CAAC;AAEtC;;;;GAIG;AACH,eAAO,MAAM,uBAAuB,KAAK,CAAC;AAC1C,kFAAkF;AAClF,eAAO,MAAM,sBAAsB,KAAK,CAAC;AACzC;;;GAGG;AACH,eAAO,MAAM,iCAAiC,KAAyB,CAAC;AAExE;;;;;;;GAOG;AACH,eAAO,MAAM,oBAAoB,GAAI,aAAa,MAAM,KAAG,MAAM,GAAG,SASnE,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,iBAAiB,MAAM,CAAC;AAErC,eAAO,MAAM,YAAY,GAAI,OAAO,MAAM,GAAG,SAAS,KAAG,MAIxD,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,eAAe,QAAO,OAGJ,CAAC;AAEhC,eAAO,MAAM,mBAAmB,GAAI,QAAQ,eAAe;;;;;CAiB1D,CAAC;AAEF;;;;;;;GAOG;AACH,eAAO,MAAM,oBAAoB,GAC/B,gBAAgB,MAAM,GAAG,IAAI,EAC7B,eAAe,MAAM,KACpB,MAAoF,CAAC;AAExF,yFAAyF;AACzF,eAAO,MAAM,4BAA4B,GACvC,eAAe,MAAM,GAAG,IAAI,EAC5B,gBAAgB,MAAM,GAAG,IAAI,EAC7B,WAAW,MAAM,KAChB,OAKA,CAAC;AAEJ;;;;;;;;;GASG;AACH,eAAO,MAAM,0BAA0B,GACrC,eAAe,MAAM,GAAG,IAAI,EAC5B,gBAAgB,MAAM,GAAG,IAAI,EAC7B,WAAW,MAAM,KAChB,MAAM,GAAG,IAKX,CAAC;AAEF,+FAA+F;AAC/F,eAAO,MAAM,sBAAsB,GACjC,qBAAqB,MAAM,GAAG,IAAI,EAClC,uBAAuB,MAAM,EAC7B,qBAAqB,MAAM,KAC1B,MAAM,GAAG,IAOX,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,mBAAmB,GAC9B,eAAe,MAAM,EACrB,mBAAmB,MAAM,EACzB,aAAa,MAAM,EACnB,SAAS,MAAM,EACf,SAAS,MAAM,EACf,MAAM,MAAM,KACX,MAUF,CAAC"}
@@ -1,49 +1,55 @@
1
- const O = 100, n = 60, M = 120, A = 10, L = "300px", s = "160px", E = (_, o, t) => Math.min(Math.max(_, o), t), m = 14, r = 18, c = 60, Z = (_) => {
1
+ const L = 100, c = 60, r = 120, e = 10, a = "300px", u = "160px", E = (_, t, o) => Math.min(Math.max(_, t), o), m = 14, p = 18, Z = 60, S = (_) => {
2
2
  if (_ <= 0 || _ >= 100) return;
3
- const t = E((100 - _) / 40, 0, 1);
3
+ const o = E((100 - _) / 40, 0, 1);
4
4
  return Math.floor(
5
- 14 + 4 * t
5
+ 14 + 4 * o
6
6
  );
7
- }, a = 0.5, u = (_) => {
7
+ }, B = 0.5, X = (_) => {
8
8
  if (!_) return 0;
9
- const o = _.match(/^(\d+(?:\.\d+)?)px$/);
10
- return o ? Number(o[1]) : 0;
11
- }, e = () => typeof CSS > "u" || typeof CSS.supports != "function" ? !0 : CSS.supports("zoom", "1"), p = (_) => {
12
- const o = Math.max(1, _.step ?? 10), t = Math.ceil(
13
- Math.max(1, _.minZoom ?? 60) / o
14
- ) * o, T = Math.max(t, _.maxZoom ?? 120);
9
+ const t = _.match(/^(\d+(?:\.\d+)?)px$/);
10
+ return t ? Number(t[1]) : 0;
11
+ }, F = () => typeof CSS > "u" || typeof CSS.supports != "function" ? !0 : CSS.supports("zoom", "1"), x = (_) => {
12
+ const t = Math.max(1, _.step ?? 10), o = Math.ceil(
13
+ Math.max(1, _.minZoom ?? 60) / t
14
+ ) * t, T = Math.max(o, _.maxZoom ?? 120);
15
15
  return {
16
- minZoom: t,
16
+ minZoom: o,
17
17
  maxZoom: T,
18
- step: o,
18
+ step: t,
19
19
  defaultZoom: E(
20
20
  _.defaultZoom ?? 100,
21
- t,
21
+ o,
22
22
  T
23
23
  )
24
24
  };
25
- }, S = (_, o) => _ ? Math.max(_, o) : o, B = (_, o, t) => !!(_ && o && _ * t > o + 0.5), X = (_, o, t) => _ == null ? null : o ? Math.max(_, o / t) : _, x = (_, o, t) => !_ || t === 0 ? null : Math.max(
25
+ }, P = (_, t) => _ ? Math.max(_, t) : t, D = (_, t, o) => !!(_ && t && _ * o > t + 0.5), U = (_, t, o) => _ == null ? null : t ? Math.max(_, t / o) : _, l = (_, t, o) => !_ || o === 0 ? null : Math.max(
26
26
  0,
27
- (_ - o) / t
28
- );
27
+ (_ - t) / o
28
+ ), N = (_, t, o, T, O, n) => {
29
+ if (_ <= 0 || t <= 0 || o <= 0)
30
+ return E(o, T, O);
31
+ const M = o * _ / t, s = Math.max(1, n), A = Math.floor(M / s) * s;
32
+ return E(A, T, O);
33
+ };
29
34
  export {
30
- L as DEFAULT_COLUMN_MAX_WIDTH,
31
- O as DEFAULT_TABLE_ZOOM,
32
- M as DEFAULT_TABLE_ZOOM_MAX,
33
- n as DEFAULT_TABLE_ZOOM_MIN,
34
- A as DEFAULT_TABLE_ZOOM_STEP,
35
- s as DEFAULT_ZOOMABLE_COLUMN_MIN_WIDTH,
36
- a as SCROLL_EPSILON_PX,
35
+ a as DEFAULT_COLUMN_MAX_WIDTH,
36
+ L as DEFAULT_TABLE_ZOOM,
37
+ r as DEFAULT_TABLE_ZOOM_MAX,
38
+ c as DEFAULT_TABLE_ZOOM_MIN,
39
+ e as DEFAULT_TABLE_ZOOM_STEP,
40
+ u as DEFAULT_ZOOMABLE_COLUMN_MIN_WIDTH,
41
+ B as SCROLL_EPSILON_PX,
37
42
  m as TABLE_ZOOM_TEXT_BASE_PX,
38
- c as TABLE_ZOOM_TEXT_GROW_STOP_PERCENT,
39
- r as TABLE_ZOOM_TEXT_MAX_PX,
43
+ Z as TABLE_ZOOM_TEXT_GROW_STOP_PERCENT,
44
+ p as TABLE_ZOOM_TEXT_MAX_PX,
40
45
  E as clamp,
41
- X as computeEffectiveTableWidth,
42
- S as computeFillBaseWidth,
43
- x as computeFlexColumnWidth,
44
- B as computeNeedsHorizontalScroll,
45
- Z as getTableZoomFontSize,
46
- p as normalizeZoomConfig,
47
- u as parsePxValue,
48
- e as supportsCssZoom
46
+ U as computeEffectiveTableWidth,
47
+ P as computeFillBaseWidth,
48
+ N as computeFitTableZoom,
49
+ l as computeFlexColumnWidth,
50
+ D as computeNeedsHorizontalScroll,
51
+ S as getTableZoomFontSize,
52
+ x as normalizeZoomConfig,
53
+ X as parsePxValue,
54
+ F as supportsCssZoom
49
55
  };
@@ -1,16 +1,23 @@
1
- import { Dispatch, FC, SetStateAction } from 'react';
1
+ import { default as React } from 'react';
2
2
  import { TableColumnSchema } from '../types';
3
3
  import { AggregationType, CellAlignment } from './tableToolbarHelpers';
4
4
  export interface SummaryFooterRowProps {
5
5
  schema: TableColumnSchema[];
6
6
  summaryByColumn: Record<string, string>;
7
7
  summaryAggregations: ReadonlyMap<string, AggregationType>;
8
- setSummaryAggregations: Dispatch<SetStateAction<Map<string, AggregationType>>>;
8
+ setSummaryAggregations: React.Dispatch<React.SetStateAction<Map<string, AggregationType>>>;
9
9
  columnAlignments: ReadonlyMap<string, CellAlignment>;
10
10
  fieldDataTypeMap?: Readonly<Record<string, string>>;
11
11
  hasActionsColumn: boolean;
12
12
  hasSelectionColumn?: boolean;
13
13
  showBorders: boolean;
14
+ /** Render native table markup for TableComponent; defaults to React Aria markup for TableWrapper. */
15
+ variant?: "aria" | "html";
16
+ /** Row height class used by the native HTML variant. */
17
+ rowClassName?: string;
18
+ /** Cell padding/text class used by the native HTML variant. */
19
+ cellClassName?: string;
14
20
  }
15
- export declare const SummaryFooterRow: FC<SummaryFooterRowProps>;
21
+ /** Renders an in-table summary row so its cells share the table's column layout. */
22
+ export declare const SummaryFooterRow: React.FC<SummaryFooterRowProps>;
16
23
  //# sourceMappingURL=SummaryFooter.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"SummaryFooter.d.ts","sourceRoot":"","sources":["../../../../src/patterns/table/toolbar/SummaryFooter.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,EAAE,EAAE,cAAc,EAAE,MAAM,OAAO,CAAC;AAO1D,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAC;AAClD,OAAO,EAEL,KAAK,eAAe,EACpB,KAAK,aAAa,EAInB,MAAM,uBAAuB,CAAC;AAE/B,MAAM,WAAW,qBAAqB;IACpC,MAAM,EAAE,iBAAiB,EAAE,CAAC;IAC5B,eAAe,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACxC,mBAAmB,EAAE,WAAW,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC;IAC1D,sBAAsB,EAAE,QAAQ,CAAC,cAAc,CAAC,GAAG,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC,CAAC,CAAC;IAC/E,gBAAgB,EAAE,WAAW,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;IACrD,gBAAgB,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;IACpD,gBAAgB,EAAE,OAAO,CAAC;IAC1B,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,WAAW,EAAE,OAAO,CAAC;CACtB;AA2DD,eAAO,MAAM,gBAAgB,EAAE,EAAE,CAAC,qBAAqB,CAkEtD,CAAC"}
1
+ {"version":3,"file":"SummaryFooter.d.ts","sourceRoot":"","sources":["../../../../src/patterns/table/toolbar/SummaryFooter.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAM1B,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAC;AAElD,OAAO,EAEL,KAAK,eAAe,EACpB,KAAK,aAAa,EAInB,MAAM,uBAAuB,CAAC;AAE/B,MAAM,WAAW,qBAAqB;IACpC,MAAM,EAAE,iBAAiB,EAAE,CAAC;IAC5B,eAAe,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACxC,mBAAmB,EAAE,WAAW,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC;IAC1D,sBAAsB,EAAE,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,cAAc,CAAC,GAAG,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC,CAAC,CAAC;IAC3F,gBAAgB,EAAE,WAAW,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;IACrD,gBAAgB,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;IACpD,gBAAgB,EAAE,OAAO,CAAC;IAC1B,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,WAAW,EAAE,OAAO,CAAC;IACrB,qGAAqG;IACrG,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAC1B,wDAAwD;IACxD,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,+DAA+D;IAC/D,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAoED,oFAAoF;AACpF,eAAO,MAAM,gBAAgB,EAAE,KAAK,CAAC,EAAE,CAAC,qBAAqB,CAwE5D,CAAC"}
@@ -1,90 +1,80 @@
1
- import { jsxs as u, jsx as e } from "react/jsx-runtime";
2
- import { ChevronDown as w } from "@untitledui/icons";
3
- import { Button as A } from "react-aria-components";
4
- import { Table as c } from "../table.js";
5
- import { cx as f } from "../../../utils/cn.js";
6
- import { getEffectiveAlignment as L, getAggregationsForType as j, resolveAggregationValueType as S, AGGREGATION_CELL_LABELS as T } from "./tableToolbarHelpers.js";
7
- import { Dropdown as d } from "../../../primitives/dropdown/dropdown.js";
8
- import { EllipsisContentWithTooltip as E } from "../../../primitives/tooltip/ellipsis-content.js";
9
- const R = (n) => n === "right" ? "justify-end" : n === "center" ? "justify-center" : "justify-start", _ = ({
10
- column: n,
11
- aggregation: l,
12
- displayValue: s,
13
- align: g,
14
- fieldDataTypeMap: p,
15
- onChange: b
1
+ import { jsxs as p, Fragment as _, jsx as e } from "react/jsx-runtime";
2
+ import { ChevronDown as E } from "@untitledui/icons";
3
+ import { Button as R } from "react-aria-components";
4
+ import { Table as A } from "../table.js";
5
+ import { cx as l } from "../../../utils/cn.js";
6
+ import { getEffectiveAlignment as k, getAggregationsForType as F, resolveAggregationValueType as G, AGGREGATION_CELL_LABELS as M } from "./tableToolbarHelpers.js";
7
+ import { Dropdown as h } from "../../../primitives/dropdown/dropdown.js";
8
+ import { EllipsisContentWithTooltip as $ } from "../../../primitives/tooltip/ellipsis-content.js";
9
+ const B = (t) => t === "right" ? "justify-end" : t === "center" ? "justify-center" : "justify-start", v = ({ variant: t, cellClassName: o, className: r, children: a }) => t === "html" ? /* @__PURE__ */ e("td", { className: l(o, r), children: a }) : /* @__PURE__ */ e(A.Cell, { className: r, children: a }), D = ({
10
+ column: t,
11
+ aggregation: o,
12
+ displayValue: r,
13
+ align: a,
14
+ fieldDataTypeMap: f,
15
+ onChange: g
16
16
  }) => {
17
- const i = j(S(n, p)), o = T[l];
18
- return /* @__PURE__ */ u(d.Root, { children: [
19
- /* @__PURE__ */ u(
20
- A,
17
+ const m = F(G(t, f)), c = M[o];
18
+ return /* @__PURE__ */ p(h.Root, { children: [
19
+ /* @__PURE__ */ p(
20
+ R,
21
21
  {
22
- className: f(
22
+ className: l(
23
23
  "group flex w-full items-center gap-2 rounded px-2 py-1 text-xs outline-hidden",
24
24
  "text-tertiary hover:bg-primary_hover cursor-pointer",
25
- R(g)
25
+ B(a)
26
26
  ),
27
- "aria-label": `${o}${s ? `: ${s}` : ""}`,
27
+ "aria-label": `${c}${r ? `: ${r}` : ""}`,
28
28
  children: [
29
- /* @__PURE__ */ u("span", { className: "flex items-center gap-1.5 min-w-0", children: [
30
- /* @__PURE__ */ e("span", { className: "font-normal text-tertiary shrink-0", children: o }),
31
- s && /* @__PURE__ */ e(
32
- E,
33
- {
34
- content: s,
35
- textClassName: "font-semibold text-secondary"
36
- }
37
- )
29
+ /* @__PURE__ */ p("span", { className: "flex items-center gap-1.5 min-w-0", children: [
30
+ /* @__PURE__ */ e("span", { className: "font-normal text-tertiary shrink-0", children: c }),
31
+ r && /* @__PURE__ */ e($, { content: r, textClassName: "font-semibold text-secondary" })
38
32
  ] }),
39
- /* @__PURE__ */ e(w, { size: 14, className: "ml-auto shrink-0 stroke-2 text-fg-quaternary" })
33
+ /* @__PURE__ */ e(E, { size: 14, className: "ml-auto shrink-0 stroke-2 text-fg-quaternary" })
40
34
  ]
41
35
  }
42
36
  ),
43
- /* @__PURE__ */ e(d.Popover, { className: "w-44", children: /* @__PURE__ */ e(d.Menu, { selectionMode: "none", onAction: (t) => b(t), children: i.map((t) => /* @__PURE__ */ e(d.Item, { id: t.id, label: t.label, isSelected: l === t.id }, t.id)) }) })
37
+ /* @__PURE__ */ e(h.Popover, { className: "w-44", children: /* @__PURE__ */ e(h.Menu, { selectionMode: "none", onAction: (n) => g(n), children: m.map((n) => /* @__PURE__ */ e(h.Item, { id: n.id, label: n.label, isSelected: o === n.id }, n.id)) }) })
44
38
  ] });
45
- }, z = ({
46
- schema: n,
47
- summaryByColumn: l,
48
- summaryAggregations: s,
49
- setSummaryAggregations: g,
50
- columnAlignments: p,
51
- hasActionsColumn: b,
52
- hasSelectionColumn: i = !1,
53
- showBorders: o,
54
- fieldDataTypeMap: t
39
+ }, Q = ({
40
+ schema: t,
41
+ summaryByColumn: o,
42
+ summaryAggregations: r,
43
+ setSummaryAggregations: a,
44
+ columnAlignments: f,
45
+ hasActionsColumn: g,
46
+ hasSelectionColumn: m = !1,
47
+ showBorders: c,
48
+ fieldDataTypeMap: n,
49
+ variant: d = "aria",
50
+ rowClassName: L,
51
+ cellClassName: b
55
52
  }) => {
56
- const v = (r, m) => {
57
- g((h) => {
58
- const a = new Map(h);
59
- return m === "count" ? a.delete(r) : a.set(r, m), a;
53
+ const S = (s, u) => {
54
+ a((x) => {
55
+ const i = new Map(x);
56
+ return u === "count" ? i.delete(s) : i.set(s, u), i;
60
57
  });
61
- }, y = i ? "selection" : n.length > 0 ? "first-schema" : "none", x = () => /* @__PURE__ */ e("span", { className: "text-xs font-medium text-tertiary px-2 py-1", children: "Summary" });
62
- return /* @__PURE__ */ u(c.Row, { className: "bg-secondary_subtle hover:bg-secondary_subtle", highlightSelectedRow: !1, children: [
63
- i && /* @__PURE__ */ e(c.Cell, { className: f("relative w-10", o && "border-r border-secondary last:border-r-0"), children: y === "selection" && x() }),
64
- n.map((r, m) => {
65
- const h = s.get(r.value) ?? "count", a = L(r, p), N = y === "first-schema" && m === 0;
66
- return /* @__PURE__ */ e(
67
- c.Cell,
58
+ }, w = m ? "selection" : t.length > 0 ? "first-schema" : "none", N = () => /* @__PURE__ */ e("span", { className: "px-2 py-1 text-xs font-medium text-tertiary", children: "Summary" }), y = c ? "border-r border-secondary last:border-r-0" : void 0, C = /* @__PURE__ */ p(_, { children: [
59
+ m && /* @__PURE__ */ e(v, { variant: d, cellClassName: b, className: l("relative h-10 w-10", y), children: w === "selection" && N() }),
60
+ t.map((s, u) => {
61
+ const x = r.get(s.value) ?? "count", i = k(s, f), j = w === "first-schema" && u === 0;
62
+ return /* @__PURE__ */ e(v, { variant: d, cellClassName: b, className: l("relative", y), children: j ? N() : /* @__PURE__ */ e("div", { className: "absolute inset-0 flex items-center px-3", children: /* @__PURE__ */ e(
63
+ D,
68
64
  {
69
- className: f("relative", o && "border-r border-secondary last:border-r-0"),
70
- children: N ? x() : /* @__PURE__ */ e("div", { className: "absolute inset-0 flex items-center px-3", children: /* @__PURE__ */ e(
71
- _,
72
- {
73
- column: r,
74
- aggregation: h,
75
- displayValue: l[r.value] ?? "",
76
- align: a,
77
- fieldDataTypeMap: t,
78
- onChange: (C) => v(r.value, C)
79
- }
80
- ) })
81
- },
82
- r.value
83
- );
65
+ column: s,
66
+ aggregation: x,
67
+ displayValue: o[s.value] ?? "",
68
+ align: i,
69
+ fieldDataTypeMap: n,
70
+ onChange: (T) => S(s.value, T)
71
+ }
72
+ ) }) }, s.value);
84
73
  }),
85
- b && /* @__PURE__ */ e(c.Cell, { className: f("relative w-14", o && "border-r border-secondary last:border-r-0") })
74
+ g && /* @__PURE__ */ e(v, { variant: d, cellClassName: b, className: l("relative w-14", y) })
86
75
  ] });
76
+ return d === "html" ? /* @__PURE__ */ e("tr", { className: l("bg-secondary_subtle", L), children: C }) : /* @__PURE__ */ e(A.Row, { className: "bg-secondary_subtle hover:bg-secondary_subtle", highlightSelectedRow: !1, children: C });
87
77
  };
88
78
  export {
89
- z as SummaryFooterRow
79
+ Q as SummaryFooterRow
90
80
  };
@@ -5,6 +5,7 @@ import { HideFieldsDropdownProps } from './HideFieldsDropdown';
5
5
  import { RowHeightDropdownProps } from './RowHeightDropdown';
6
6
  import { ShowSummaryDropdownProps } from './ShowSummaryDropdown';
7
7
  import { LegacyFilterToolConfig, LegacySortToolConfig } from './legacyToolbarTypes';
8
+ import { TableViewsConfig } from './tableViewTypes';
8
9
  export type SortToolConfig = LegacySortToolConfig;
9
10
  export type FilterToolConfig = LegacyFilterToolConfig;
10
11
  export interface SearchToolConfig {
@@ -44,10 +45,17 @@ export interface TableToolbarProps {
44
45
  trailing?: ReactNode;
45
46
  searchCollapsible?: boolean;
46
47
  disableExtendedTools?: boolean;
48
+ /** View mode keeps only Sort, Filter, Hide Fields, Align, and Zoom visible. */
49
+ isEditMode?: boolean;
47
50
  /** Consumer-rendered sort UI (e.g. platform-ui `SortComponent`). Required for sort popover content. */
48
51
  sortContent?: ReactNode;
49
52
  /** Consumer-rendered filter UI (e.g. platform-ui `SchemaFilter`). Required for filter popover content. */
50
53
  filterContent?: ReactNode;
54
+ /**
55
+ * Saved-view chrome. The design system only renders the trigger, dropdown, and
56
+ * Save / Revert / Update buttons — open state for modals and API calls stay in the consumer.
57
+ */
58
+ views?: TableViewsConfig;
51
59
  }
52
60
  export declare const TableToolbar: FC<TableToolbarProps>;
53
61
  /** Sort, filter, and search only — extended tools must be passed explicitly when enabled. */
@@ -1 +1 @@
1
- {"version":3,"file":"TableToolbar.d.ts","sourceRoot":"","sources":["../../../../src/patterns/table/toolbar/TableToolbar.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"TableToolbar.d.ts","sourceRoot":"","sources":["../../../../src/patterns/table/toolbar/TableToolbar.tsx"],"names":[],"mappings":"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"}