@godxjp/ui 31.5.0 → 31.7.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.
- package/agent/START-HERE.md +5 -5
- package/agent/components/BranchScopePicker.json +5 -0
- package/agent/components/Breadcrumb.json +1 -1
- package/agent/components/Cascader.json +1 -1
- package/agent/components/DataTable.json +2 -2
- package/agent/components/InfiniteQueryState.json +6 -1
- package/agent/components/PageContainer.json +1 -1
- package/agent/components/Progress.json +12 -1
- package/agent/components/RangeTimeline.json +6 -0
- package/agent/components/RecordPicker.json +10 -0
- package/agent/components/Text.json +1 -1
- package/agent/components/Transfer.json +5 -0
- package/agent/components/Tree.json +21 -4
- package/agent/components/TreeSelect.json +1 -1
- package/agent/components.json +72 -13
- package/agent/index.json +5 -5
- package/agent/llms.txt +6 -6
- package/agent/tokens.json +12 -0
- package/dist/components/data-display/data-table.d.ts +3 -0
- package/dist/components/data-display/data-table.js +415 -370
- package/dist/components/data-display/progress.d.ts +16 -0
- package/dist/components/data-display/progress.js +17 -3
- package/dist/components/data-display/range-timeline.d.ts +20 -0
- package/dist/components/data-display/range-timeline.js +217 -197
- package/dist/components/data-display/tree.js +179 -23
- package/dist/components/data-entry/branch-scope-picker.d.ts +1 -0
- package/dist/components/data-entry/branch-scope-picker.js +2 -1
- package/dist/components/data-entry/cascader.js +4 -5
- package/dist/components/data-entry/record-picker.d.ts +2 -0
- package/dist/components/data-entry/record-picker.js +22 -3
- package/dist/components/data-entry/transfer.d.ts +1 -1
- package/dist/components/data-entry/transfer.js +5 -2
- package/dist/components/data-entry/tree-select.js +14 -5
- package/dist/components/feedback/tooltip.d.ts +21 -0
- package/dist/components/feedback/tooltip.js +101 -0
- package/dist/components/general/typography.js +30 -11
- package/dist/components/layout/breadcrumb-ellipsis.d.ts +16 -0
- package/dist/components/layout/breadcrumb-ellipsis.js +28 -0
- package/dist/components/layout/breadcrumb.js +16 -7
- package/dist/components/layout/page-container.js +29 -20
- package/dist/components/query/infinite-query-state.d.ts +1 -1
- package/dist/components/query/infinite-query-state.js +2 -1
- package/dist/contracts/measurement.json +1 -1
- package/dist/i18n/messages/en.json +18 -3
- package/dist/i18n/messages/ja.json +9 -3
- package/dist/i18n/messages/vi.json +9 -3
- package/dist/lib/hooks.d.ts +8 -4
- package/dist/lib/hooks.js +5 -2
- package/dist/lib/tree.d.ts +23 -0
- package/dist/lib/tree.js +29 -0
- package/dist/props/components/data-display.prop.d.ts +21 -2
- package/dist/props/components/data-entry.prop.d.ts +31 -4
- package/dist/props/components/query.prop.d.ts +8 -1
- package/dist/props/registry.d.ts +29 -6
- package/dist/props/registry.js +46 -4
- package/dist/props/vocabulary/data.prop.d.ts +32 -2
- package/dist/props/vocabulary/index.d.ts +2 -2
- package/dist/props/vocabulary/navigation.prop.d.ts +14 -0
- package/dist/styles/data-display-layout.css +52 -0
- package/dist/styles/layers.json +3 -2
- package/dist/styles/layout.css +22 -0
- package/dist/styles/table-layout.css +24 -1
- package/dist/tokens/components/navigation.css +2 -0
- package/dist/tokens/components/tree.css +2 -0
- package/docs/data-display/data-table/examples/server-paged.tsx +23 -0
- package/docs/data-display/data-table/index.md +2 -0
- package/docs/data-display/progress.tsx +24 -6
- package/docs/data-display/timeline.tsx +33 -0
- package/docs/data-display/tree.tsx +154 -0
- package/docs/data-entry/branch-scope-picker.tsx +6 -1
- package/docs/data-entry/record-picker.tsx +1 -0
- package/docs/data-entry/transfer.tsx +1 -0
- package/docs/general/typography.tsx +84 -1
- package/docs/i18n/messages/en.json +48 -1
- package/docs/i18n/messages/ja.json +47 -1
- package/docs/i18n/messages/vi.json +47 -1
- package/docs/navigation/breadcrumb.tsx +24 -0
- package/docs/query/infinite-query-state.tsx +5 -1
- package/docs/roadmap/tree-components.md +2 -1
- package/package.json +2 -2
- package/scripts/ui-audit.mjs +15 -5
|
@@ -743,12 +743,31 @@ export type TreeProp = {
|
|
|
743
743
|
/** Start with every branch open (antd `defaultExpandAll`). Seeded once, never re-applied. */
|
|
744
744
|
defaultExpandAll?: boolean;
|
|
745
745
|
/**
|
|
746
|
-
* Lazy children (antd `loadData`). Called
|
|
747
|
-
* `
|
|
746
|
+
* Lazy children (antd `loadData`). Called when a branch with no `children` and
|
|
747
|
+
* `isLeaf !== true` is expanded, and never again once its promise RESOLVES; push the fetched
|
|
748
|
+
* children into `treeData`. A REJECTED promise is not a load: the branch folds back shut
|
|
749
|
+
* (uncontrolled expansion) and the next expand asks again, up to 10 attempts (rc-tree).
|
|
748
750
|
*/
|
|
749
751
|
loadData?: (node: TreeNodeProp) => void | Promise<void>;
|
|
750
752
|
/** Render a node's title (antd `titleRender`). */
|
|
751
753
|
titleRender?: (node: TreeNodeProp) => React.ReactNode;
|
|
754
|
+
/**
|
|
755
|
+
* Highlight the nodes this returns `true` for (antd `filterTreeNode`) — the match of a search
|
|
756
|
+
* box above the tree. Matching rows are marked, NOT hidden: the outline, the keyboard path and
|
|
757
|
+
* every ARIA attribute stay exactly as they were. The row gets `data-filter-node="true"` and its
|
|
758
|
+
* label reads `--tree-node-filter-foreground` in the medium weight, plus an sr-only "matches"
|
|
759
|
+
* so the mark is never colour alone. Receives the node data, as `titleRender` and `loadData` do.
|
|
760
|
+
*/
|
|
761
|
+
filterTreeNode?: (node: TreeNodeProp) => boolean;
|
|
762
|
+
/**
|
|
763
|
+
* Viewport height in px (antd `height`). The tree scrolls inside this height, and — unless
|
|
764
|
+
* `virtual` is `false` — renders only the rows in view (plus a small overscan), so a branch of
|
|
765
|
+
* several hundred lazily-loaded children stays a few dozen DOM rows. Rows must share one height
|
|
766
|
+
* (the `size` tier) for the window to be exact.
|
|
767
|
+
*/
|
|
768
|
+
height?: number;
|
|
769
|
+
/** Set `false` to render every row even when `height` is set (antd `virtual`). Default `true`. */
|
|
770
|
+
virtual?: boolean;
|
|
752
771
|
/** Draw the connector rails between a parent and its children (antd `showLine`). */
|
|
753
772
|
showLine?: boolean;
|
|
754
773
|
/**
|
|
@@ -1209,6 +1209,17 @@ export type RecordPickerProp = Omit<React.ButtonHTMLAttributes<HTMLButtonElement
|
|
|
1209
1209
|
};
|
|
1210
1210
|
placeholder?: string;
|
|
1211
1211
|
dialogTitle?: string;
|
|
1212
|
+
/**
|
|
1213
|
+
* Node shown when the search finds nothing (antd `notFoundContent`) — in the dropdown shape and
|
|
1214
|
+
* in the dialog alike. Localized `dataEntry.recordPicker.empty` otherwise.
|
|
1215
|
+
*/
|
|
1216
|
+
notFoundContent?: NotFoundContentProp;
|
|
1217
|
+
/**
|
|
1218
|
+
* Text of the dialog's load-more button (localized `dataEntry.recordPicker.more` otherwise). Only
|
|
1219
|
+
* the label: the button and when it appears (the server returned a `nextCursor`) stay the
|
|
1220
|
+
* picker's.
|
|
1221
|
+
*/
|
|
1222
|
+
loadMoreLabel?: LabelProp;
|
|
1212
1223
|
size?: "xs" | "sm" | "md" | "lg";
|
|
1213
1224
|
/**
|
|
1214
1225
|
* Tên trường, do `FormField` truyền xuống. Khai tường minh vì CẢ HAI nhánh phải giữ nó: một
|
|
@@ -1788,8 +1799,9 @@ export type CascaderProp = FieldA11yProps & {
|
|
|
1788
1799
|
*/
|
|
1789
1800
|
showCheckedStrategy?: Exclude<ShowCheckedStrategyProp, "SHOW_ALL">;
|
|
1790
1801
|
/**
|
|
1791
|
-
* Lazy children (antd `loadData`). Called
|
|
1792
|
-
* `
|
|
1802
|
+
* Lazy children (antd `loadData`). Called when a branch with no `children` and
|
|
1803
|
+
* `isLeaf !== true` is expanded, and never again once its promise RESOLVES; push the fetched
|
|
1804
|
+
* children into `options`. A REJECTED promise is forgotten, so the next activation asks again.
|
|
1793
1805
|
*/
|
|
1794
1806
|
loadData?: (selectedOptions: TreeOptionProp[]) => void | Promise<void>;
|
|
1795
1807
|
/** Render the trigger label from the selected path (antd `displayRender`). */
|
|
@@ -1864,8 +1876,10 @@ export type TreeSelectProp = FieldA11yProps & {
|
|
|
1864
1876
|
/** Panel open change (antd `onOpenChange`). Fires for both controlled and uncontrolled panels. */
|
|
1865
1877
|
onOpenChange?: OnOpenChangeProp;
|
|
1866
1878
|
/**
|
|
1867
|
-
* Lazy children (antd `loadData`). Called
|
|
1868
|
-
* `
|
|
1879
|
+
* Lazy children (antd `loadData`). Called when a branch with no `children` and
|
|
1880
|
+
* `isLeaf !== true` is expanded, and never again once its promise RESOLVES; push the fetched
|
|
1881
|
+
* children into `treeData`. A REJECTED promise folds the branch shut and the next expand asks
|
|
1882
|
+
* again, up to 10 attempts (rc-tree).
|
|
1869
1883
|
*/
|
|
1870
1884
|
loadData?: (node: TreeOptionProp) => void | Promise<void>;
|
|
1871
1885
|
/** Render a node's title (antd `treeTitleRender`). */
|
|
@@ -1945,6 +1959,14 @@ export type TransferProp = FieldA11yProps & {
|
|
|
1945
1959
|
className?: ClassNameProp;
|
|
1946
1960
|
selectedKeys?: [string[], string[]];
|
|
1947
1961
|
onSelectChange?: (sourceSelectedKeys: string[], targetSelectedKeys: string[]) => void;
|
|
1962
|
+
/**
|
|
1963
|
+
* antd `locale`, ported for `notFoundContent` only: the node an empty (or search-emptied) pane
|
|
1964
|
+
* shows. A `[source, target]` pair sets each pane separately, as in antd. Localized
|
|
1965
|
+
* `dataEntry.transfer.empty` otherwise.
|
|
1966
|
+
*/
|
|
1967
|
+
locale?: {
|
|
1968
|
+
notFoundContent?: NotFoundContentProp | [NotFoundContentProp, NotFoundContentProp];
|
|
1969
|
+
};
|
|
1948
1970
|
};
|
|
1949
1971
|
/** @see BranchScopePicker — scope mode: every branch, or an explicit subset. */
|
|
1950
1972
|
export type BranchScopeModeProp = "all" | "selected";
|
|
@@ -1989,6 +2011,11 @@ export type BranchScopePickerProp = FieldA11yProps & {
|
|
|
1989
2011
|
loading?: boolean;
|
|
1990
2012
|
/** Custom empty content when `branches` is empty; defaults to a localized message. */
|
|
1991
2013
|
empty?: React.ReactNode;
|
|
2014
|
+
/**
|
|
2015
|
+
* Shown when the branch search matches nothing (antd `notFoundContent`); localized
|
|
2016
|
+
* `dataEntry.branchScope.noMatches` otherwise. An empty `branches` list is `empty`'s, not this.
|
|
2017
|
+
*/
|
|
2018
|
+
notFoundContent?: NotFoundContentProp;
|
|
1992
2019
|
/** Branch-collection READ failure (distinct from `error`, which is field validation). */
|
|
1993
2020
|
listError?: React.ReactNode;
|
|
1994
2021
|
/** Permission-denied state — the branch read was refused. Takes precedence over `listError`. */
|
|
@@ -3,7 +3,7 @@ import type * as React from "react";
|
|
|
3
3
|
import type { InfiniteData, QueryKey, UseInfiniteQueryResult, UseMutationResult, UseQueryResult } from "@tanstack/react-query";
|
|
4
4
|
import type { LinkProps } from "react-router-dom";
|
|
5
5
|
import type { ButtonProp } from "./general.prop.js";
|
|
6
|
-
import type { ClassNameProp, HandlerProp } from "../vocabulary/index.js";
|
|
6
|
+
import type { ClassNameProp, HandlerProp, LabelProp } from "../vocabulary/index.js";
|
|
7
7
|
/** @see DataState — TanStack Query lifecycle widget (not a visual component). */
|
|
8
8
|
export type DataStateProp<T> = {
|
|
9
9
|
query: UseQueryResult<T>;
|
|
@@ -103,6 +103,13 @@ export type InfiniteQueryStateProp<TPage, TFlat = TPage extends {
|
|
|
103
103
|
loadingMore?: React.ReactNode;
|
|
104
104
|
/** Custom load-more footer; `false` hides footer entirely. */
|
|
105
105
|
loadMore?: React.ReactNode | false;
|
|
106
|
+
/**
|
|
107
|
+
* Text of the built-in load-more button (localized `query.loadMore` otherwise) — e.g.
|
|
108
|
+
* 「さらに表示」「さらに古い版を表示」. Only the idle label: the button, its pending label and its
|
|
109
|
+
* disabled-while-fetching behaviour stay the component's. Ignored when `loadMore` replaces the
|
|
110
|
+
* footer.
|
|
111
|
+
*/
|
|
112
|
+
loadMoreLabel?: LabelProp;
|
|
106
113
|
/** Show default load-more button when `hasNextPage`. Default `true`. */
|
|
107
114
|
showLoadMore?: boolean;
|
|
108
115
|
children: (flat: TFlat, helpers: InfiniteQueryHelpers) => React.ReactNode;
|
package/dist/props/registry.d.ts
CHANGED
|
@@ -304,10 +304,20 @@ export declare const VOCABULARY_REGISTRY: {
|
|
|
304
304
|
readonly category: "data";
|
|
305
305
|
readonly description: "One entry in the selection-column dropdown — { key, text, onSelect } (antd SelectionItem)";
|
|
306
306
|
};
|
|
307
|
+
readonly TableSelectionBuiltInProp: {
|
|
308
|
+
readonly file: "vocabulary/data.prop.ts";
|
|
309
|
+
readonly category: "data";
|
|
310
|
+
readonly description: "Built-in selections entry — SELECT_ALL | SELECT_INVERT | SELECT_NONE (antd Table.SELECTION_ALL / SELECTION_INVERT / SELECTION_NONE, published as DataTable.SELECTION_*)";
|
|
311
|
+
};
|
|
312
|
+
readonly TableSelectAllMatchingProp: {
|
|
313
|
+
readonly file: "vocabulary/data.prop.ts";
|
|
314
|
+
readonly category: "data";
|
|
315
|
+
readonly description: "Server-paged 'select all N matching' banner — { total, selected, onSelectedChange } (no antd equivalent; Gmail/Jira/GitHub pattern)";
|
|
316
|
+
};
|
|
307
317
|
readonly TableRowSelectionProp: {
|
|
308
318
|
readonly file: "vocabulary/data.prop.ts";
|
|
309
319
|
readonly category: "data";
|
|
310
|
-
readonly description: "DataTable row-selection config — type | selectedRowKeys | onChange | getCheckboxProps | preserveSelectedRowKeys | selections | hideSelectAll | columnTitle (antd TableRowSelection)";
|
|
320
|
+
readonly description: "DataTable row-selection config — type | selectedRowKeys | onChange | getCheckboxProps | preserveSelectedRowKeys | selections | hideSelectAll | columnTitle | selectAllLabel | matching (antd TableRowSelection + select-all-matching)";
|
|
311
321
|
};
|
|
312
322
|
readonly TableExpandableProp: {
|
|
313
323
|
readonly file: "vocabulary/data.prop.ts";
|
|
@@ -594,6 +604,11 @@ export declare const VOCABULARY_REGISTRY: {
|
|
|
594
604
|
readonly category: "navigation";
|
|
595
605
|
readonly description: "Single breadcrumb segment";
|
|
596
606
|
};
|
|
607
|
+
readonly BreadcrumbItemEllipsisProp: {
|
|
608
|
+
readonly file: "vocabulary/navigation.prop.ts";
|
|
609
|
+
readonly category: "navigation";
|
|
610
|
+
readonly description: "One-line truncation of a breadcrumb segment, with the full label in a tooltip";
|
|
611
|
+
};
|
|
597
612
|
readonly BreadcrumbProp: {
|
|
598
613
|
readonly file: "vocabulary/navigation.prop.ts";
|
|
599
614
|
readonly category: "navigation";
|
|
@@ -1810,7 +1825,7 @@ export declare const COMPONENT_PROP_REGISTRY: {
|
|
|
1810
1825
|
readonly RecordPickerProp: {
|
|
1811
1826
|
readonly group: "data-entry";
|
|
1812
1827
|
readonly file: "components/data-entry.prop.ts";
|
|
1813
|
-
readonly vocabulary: readonly ["ValueProp", "OnValueChangeProp", "DisabledProp", "SizeProp", "PlaceholderProp"];
|
|
1828
|
+
readonly vocabulary: readonly ["ValueProp", "OnValueChangeProp", "DisabledProp", "SizeProp", "PlaceholderProp", "NotFoundContentProp", "LabelProp"];
|
|
1814
1829
|
readonly note: "One picker whose SHAPE follows the size of the set: Select at or under `threshold`, a searchable Dialog with consumer-declared filters over it (gh#932).";
|
|
1815
1830
|
};
|
|
1816
1831
|
readonly RecordPickerFilterProp: {
|
|
@@ -1882,7 +1897,11 @@ export declare const COMPONENT_PROP_REGISTRY: {
|
|
|
1882
1897
|
readonly TransferProp: {
|
|
1883
1898
|
readonly group: "data-entry";
|
|
1884
1899
|
readonly file: "components/data-entry.prop.ts";
|
|
1885
|
-
readonly vocabulary: readonly ["DisabledProp", "ClassNameProp"
|
|
1900
|
+
readonly vocabulary: readonly ["DisabledProp", "ClassNameProp", {
|
|
1901
|
+
readonly field: "locale";
|
|
1902
|
+
readonly local: true;
|
|
1903
|
+
readonly reason: "antd Transfer `locale`, ported for `notFoundContent` only (one node, or a [source, target] pair) — gh#1044.";
|
|
1904
|
+
}];
|
|
1886
1905
|
};
|
|
1887
1906
|
readonly TransferItemProp: {
|
|
1888
1907
|
readonly group: "data-entry";
|
|
@@ -1940,7 +1959,7 @@ export declare const COMPONENT_PROP_REGISTRY: {
|
|
|
1940
1959
|
readonly DataTableProp: {
|
|
1941
1960
|
readonly group: "data-display";
|
|
1942
1961
|
readonly file: "components/data-display.prop.ts";
|
|
1943
|
-
readonly vocabulary: readonly ["ColumnDefProp", "DensityProp", "SortStateProp", "SelectedIdsProp", "GetRowLabelProp", "HandlerProp", "TablePresetProp", "TableColumnPriorityProp", "BreakpointProp", "ColumnFixedProp", "ColumnFilterItemProp", "ColumnFilterStateProp", "ColumnSorterProp", "TableRowSelectionProp", "TableExpandableProp", "TableSummaryProp", "TableScrollProp", "TableStickyProp", "OnRowProp", "TablePaginationProp", "TablePaginationPositionProp", "SortDirectionProp", "OnColumnFilterChangeProp"];
|
|
1962
|
+
readonly vocabulary: readonly ["ColumnDefProp", "DensityProp", "SortStateProp", "SelectedIdsProp", "GetRowLabelProp", "HandlerProp", "TablePresetProp", "TableColumnPriorityProp", "BreakpointProp", "ColumnFixedProp", "ColumnFilterItemProp", "ColumnFilterStateProp", "ColumnSorterProp", "TableRowSelectionProp", "TableSelectionBuiltInProp", "TableSelectAllMatchingProp", "TableExpandableProp", "TableSummaryProp", "TableScrollProp", "TableStickyProp", "OnRowProp", "TablePaginationProp", "TablePaginationPositionProp", "SortDirectionProp", "OnColumnFilterChangeProp"];
|
|
1944
1963
|
};
|
|
1945
1964
|
readonly ListRowDensityProp: {
|
|
1946
1965
|
readonly group: "data-display";
|
|
@@ -2408,7 +2427,7 @@ export declare const COMPONENT_PROP_REGISTRY: {
|
|
|
2408
2427
|
readonly InfiniteQueryStateProp: {
|
|
2409
2428
|
readonly group: "query";
|
|
2410
2429
|
readonly file: "components/query.prop.ts";
|
|
2411
|
-
readonly vocabulary: readonly ["HandlerProp"];
|
|
2430
|
+
readonly vocabulary: readonly ["HandlerProp", "LabelProp"];
|
|
2412
2431
|
};
|
|
2413
2432
|
readonly PrefetchLinkProp: {
|
|
2414
2433
|
readonly group: "query";
|
|
@@ -3293,6 +3312,10 @@ export declare const COMPONENT_PROP_REGISTRY: {
|
|
|
3293
3312
|
readonly field: "onRangeChange";
|
|
3294
3313
|
readonly local: true;
|
|
3295
3314
|
readonly reason: "An endpoint movement command, not an internally owned value; the consumer commits its row data.";
|
|
3315
|
+
}, {
|
|
3316
|
+
readonly field: "sticky";
|
|
3317
|
+
readonly local: true;
|
|
3318
|
+
readonly reason: "antd Table `sticky` — `true` or `{ offsetHeader }` (px) keeps the axis header on screen while the page scrolls (gh#1044).";
|
|
3296
3319
|
}, {
|
|
3297
3320
|
readonly field: "expandedValues";
|
|
3298
3321
|
readonly local: true;
|
|
@@ -3476,7 +3499,7 @@ export declare const COMPONENT_PROP_REGISTRY: {
|
|
|
3476
3499
|
readonly field: "empty";
|
|
3477
3500
|
readonly local: true;
|
|
3478
3501
|
readonly reason: "Custom empty content when there are no branches.";
|
|
3479
|
-
}, {
|
|
3502
|
+
}, "NotFoundContentProp", {
|
|
3480
3503
|
readonly field: "listError";
|
|
3481
3504
|
readonly local: true;
|
|
3482
3505
|
readonly reason: "Branch-collection READ failure — deliberately distinct from ErrorProp `error`, which stays field validation.";
|
package/dist/props/registry.js
CHANGED
|
@@ -302,10 +302,20 @@ const VOCABULARY_REGISTRY = {
|
|
|
302
302
|
category: "data",
|
|
303
303
|
description: "One entry in the selection-column dropdown \u2014 { key, text, onSelect } (antd SelectionItem)"
|
|
304
304
|
},
|
|
305
|
+
TableSelectionBuiltInProp: {
|
|
306
|
+
file: "vocabulary/data.prop.ts",
|
|
307
|
+
category: "data",
|
|
308
|
+
description: "Built-in selections entry \u2014 SELECT_ALL | SELECT_INVERT | SELECT_NONE (antd Table.SELECTION_ALL / SELECTION_INVERT / SELECTION_NONE, published as DataTable.SELECTION_*)"
|
|
309
|
+
},
|
|
310
|
+
TableSelectAllMatchingProp: {
|
|
311
|
+
file: "vocabulary/data.prop.ts",
|
|
312
|
+
category: "data",
|
|
313
|
+
description: "Server-paged 'select all N matching' banner \u2014 { total, selected, onSelectedChange } (no antd equivalent; Gmail/Jira/GitHub pattern)"
|
|
314
|
+
},
|
|
305
315
|
TableRowSelectionProp: {
|
|
306
316
|
file: "vocabulary/data.prop.ts",
|
|
307
317
|
category: "data",
|
|
308
|
-
description: "DataTable row-selection config \u2014 type | selectedRowKeys | onChange | getCheckboxProps | preserveSelectedRowKeys | selections | hideSelectAll | columnTitle (antd TableRowSelection)"
|
|
318
|
+
description: "DataTable row-selection config \u2014 type | selectedRowKeys | onChange | getCheckboxProps | preserveSelectedRowKeys | selections | hideSelectAll | columnTitle | selectAllLabel | matching (antd TableRowSelection + select-all-matching)"
|
|
309
319
|
},
|
|
310
320
|
TableExpandableProp: {
|
|
311
321
|
file: "vocabulary/data.prop.ts",
|
|
@@ -594,6 +604,11 @@ const VOCABULARY_REGISTRY = {
|
|
|
594
604
|
category: "navigation",
|
|
595
605
|
description: "Single breadcrumb segment"
|
|
596
606
|
},
|
|
607
|
+
BreadcrumbItemEllipsisProp: {
|
|
608
|
+
file: "vocabulary/navigation.prop.ts",
|
|
609
|
+
category: "navigation",
|
|
610
|
+
description: "One-line truncation of a breadcrumb segment, with the full label in a tooltip"
|
|
611
|
+
},
|
|
597
612
|
BreadcrumbProp: {
|
|
598
613
|
file: "vocabulary/navigation.prop.ts",
|
|
599
614
|
category: "navigation",
|
|
@@ -2146,7 +2161,16 @@ const COMPONENT_PROP_REGISTRY = {
|
|
|
2146
2161
|
RecordPickerProp: {
|
|
2147
2162
|
group: "data-entry",
|
|
2148
2163
|
file: "components/data-entry.prop.ts",
|
|
2149
|
-
vocabulary: [
|
|
2164
|
+
vocabulary: [
|
|
2165
|
+
"ValueProp",
|
|
2166
|
+
"OnValueChangeProp",
|
|
2167
|
+
"DisabledProp",
|
|
2168
|
+
"SizeProp",
|
|
2169
|
+
"PlaceholderProp",
|
|
2170
|
+
// gh#1044: antd `notFoundContent` for the empty search, and the dialog's load-more text.
|
|
2171
|
+
"NotFoundContentProp",
|
|
2172
|
+
"LabelProp"
|
|
2173
|
+
],
|
|
2150
2174
|
note: "One picker whose SHAPE follows the size of the set: Select at or under `threshold`, a searchable Dialog with consumer-declared filters over it (gh#932)."
|
|
2151
2175
|
},
|
|
2152
2176
|
RecordPickerFilterProp: {
|
|
@@ -2262,7 +2286,15 @@ const COMPONENT_PROP_REGISTRY = {
|
|
|
2262
2286
|
TransferProp: {
|
|
2263
2287
|
group: "data-entry",
|
|
2264
2288
|
file: "components/data-entry.prop.ts",
|
|
2265
|
-
vocabulary: [
|
|
2289
|
+
vocabulary: [
|
|
2290
|
+
"DisabledProp",
|
|
2291
|
+
"ClassNameProp",
|
|
2292
|
+
{
|
|
2293
|
+
field: "locale",
|
|
2294
|
+
local: true,
|
|
2295
|
+
reason: "antd Transfer `locale`, ported for `notFoundContent` only (one node, or a [source, target] pair) \u2014 gh#1044."
|
|
2296
|
+
}
|
|
2297
|
+
]
|
|
2266
2298
|
},
|
|
2267
2299
|
TransferItemProp: {
|
|
2268
2300
|
group: "data-entry",
|
|
@@ -2350,6 +2382,8 @@ const COMPONENT_PROP_REGISTRY = {
|
|
|
2350
2382
|
"ColumnFilterStateProp",
|
|
2351
2383
|
"ColumnSorterProp",
|
|
2352
2384
|
"TableRowSelectionProp",
|
|
2385
|
+
"TableSelectionBuiltInProp",
|
|
2386
|
+
"TableSelectAllMatchingProp",
|
|
2353
2387
|
"TableExpandableProp",
|
|
2354
2388
|
"TableSummaryProp",
|
|
2355
2389
|
"TableScrollProp",
|
|
@@ -2830,7 +2864,8 @@ const COMPONENT_PROP_REGISTRY = {
|
|
|
2830
2864
|
InfiniteQueryStateProp: {
|
|
2831
2865
|
group: "query",
|
|
2832
2866
|
file: "components/query.prop.ts",
|
|
2833
|
-
|
|
2867
|
+
// LabelProp: `loadMoreLabel`, the built-in button's idle text (gh#1044).
|
|
2868
|
+
vocabulary: ["HandlerProp", "LabelProp"]
|
|
2834
2869
|
},
|
|
2835
2870
|
PrefetchLinkProp: { group: "query", file: "components/query.prop.ts", vocabulary: [] },
|
|
2836
2871
|
AuthExpiryProviderProp: {
|
|
@@ -3905,6 +3940,11 @@ const COMPONENT_PROP_REGISTRY = {
|
|
|
3905
3940
|
local: true,
|
|
3906
3941
|
reason: "An endpoint movement command, not an internally owned value; the consumer commits its row data."
|
|
3907
3942
|
},
|
|
3943
|
+
{
|
|
3944
|
+
field: "sticky",
|
|
3945
|
+
local: true,
|
|
3946
|
+
reason: "antd Table `sticky` \u2014 `true` or `{ offsetHeader }` (px) keeps the axis header on screen while the page scrolls (gh#1044)."
|
|
3947
|
+
},
|
|
3908
3948
|
{
|
|
3909
3949
|
field: "expandedValues",
|
|
3910
3950
|
local: true,
|
|
@@ -4144,6 +4184,8 @@ const COMPONENT_PROP_REGISTRY = {
|
|
|
4144
4184
|
local: true,
|
|
4145
4185
|
reason: "Custom empty content when there are no branches."
|
|
4146
4186
|
},
|
|
4187
|
+
// gh#1044: antd `notFoundContent` — the line shown when the branch SEARCH matches nothing.
|
|
4188
|
+
"NotFoundContentProp",
|
|
4147
4189
|
{
|
|
4148
4190
|
field: "listError",
|
|
4149
4191
|
local: true,
|
|
@@ -207,6 +207,25 @@ export type TableSelectionItemProp = {
|
|
|
207
207
|
text: React.ReactNode;
|
|
208
208
|
onSelect: (currentRowKeys: string[]) => void;
|
|
209
209
|
};
|
|
210
|
+
/**
|
|
211
|
+
* A built-in entry for the `selections` list (antd `Table.SELECTION_ALL` / `SELECTION_INVERT` /
|
|
212
|
+
* `SELECTION_NONE`, published here as `DataTable.SELECTION_*`). Mix them with custom
|
|
213
|
+
* {@link TableSelectionItemProp} entries in any order, exactly as antd does.
|
|
214
|
+
*/
|
|
215
|
+
export type TableSelectionBuiltInProp = "SELECT_ALL" | "SELECT_INVERT" | "SELECT_NONE";
|
|
216
|
+
/**
|
|
217
|
+
* "Select all N matching" for a server-paged table (Gmail / Jira / GitHub; antd has no
|
|
218
|
+
* equivalent). Once every row of the page is selected, a banner above the header offers the whole
|
|
219
|
+
* result set; choosing it flips `selected`, and the consumer then sends its FILTER to the server
|
|
220
|
+
* instead of the ids. Unticking any row, or "Clear selection", reports `false`.
|
|
221
|
+
*/
|
|
222
|
+
export type TableSelectAllMatchingProp = {
|
|
223
|
+
/** Rows the current query matches on the server — the N in "Select all N". */
|
|
224
|
+
total: number;
|
|
225
|
+
/** Controlled: `true` while the whole matching set is selected. */
|
|
226
|
+
selected: boolean;
|
|
227
|
+
onSelectedChange: (selected: boolean) => void;
|
|
228
|
+
};
|
|
210
229
|
/**
|
|
211
230
|
* Row-selection configuration (antd `TableRowSelection`). The object form is the full surface;
|
|
212
231
|
* the older `selectable` / `selected` / `onSelectChange` triple stays and drives the same state.
|
|
@@ -224,10 +243,21 @@ export type TableRowSelectionProp<T> = {
|
|
|
224
243
|
};
|
|
225
244
|
/** Keep keys selected even once their row leaves `data` (server paging / filtering). */
|
|
226
245
|
preserveSelectedRowKeys?: boolean;
|
|
227
|
-
/**
|
|
228
|
-
|
|
246
|
+
/**
|
|
247
|
+
* Extra bulk-select entries under the header checkbox. `true` = the built-in all/invert/none;
|
|
248
|
+
* a list mixes `DataTable.SELECTION_*` built-ins with custom entries, in the order given.
|
|
249
|
+
*/
|
|
250
|
+
selections?: (TableSelectionItemProp | TableSelectionBuiltInProp)[] | boolean;
|
|
229
251
|
hideSelectAll?: boolean;
|
|
230
252
|
columnTitle?: React.ReactNode;
|
|
253
|
+
/**
|
|
254
|
+
* Accessible name of the header checkbox. Default: "Select all rows", or "Select all rows on
|
|
255
|
+
* this page" once `matching` is set. Name what it really selects — on a server-paged table it
|
|
256
|
+
* is the page, not the result set.
|
|
257
|
+
*/
|
|
258
|
+
selectAllLabel?: string;
|
|
259
|
+
/** Opt-in "select all N matching" banner for a server-paged table. */
|
|
260
|
+
matching?: TableSelectAllMatchingProp;
|
|
231
261
|
};
|
|
232
262
|
/** Expandable-row configuration (antd/rc-table `ExpandableConfig`). */
|
|
233
263
|
export type TableExpandableProp<T> = {
|
|
@@ -3,5 +3,5 @@ export type { ClassNameProp, ChildrenProp, IdProp, OpenProp, DefaultOpenProp, On
|
|
|
3
3
|
export type { TitleProp, SubtitleProp, StatusProp, DescriptionProp, ExtraProp, FooterProp, ActionProp, IconProp, ConfirmLabelProp, CancelLabelProp, ActionsProp, EmptyMessageProp, } from "./content.prop.js";
|
|
4
4
|
export type { PageDensityProp, PageContainerVariantProp, CenteredShellWidthProp, CenteredShellAlignProp, CenteredShellPresetProp, ErrorSurfaceModeProp, ErrorSurfaceStatusProp, AuthShellPresetProp, MobileShellHeightProp, MobileShellWidthProp, OrientationProp, TableDensityProp, DensityProp, GapNameProp, PadProp, PadRawProp, PadSides, GapProp, GapStepProp, } from "./layout.prop.js";
|
|
5
5
|
export type { ButtonVariantProp, ButtonSizeProp, BadgeVariantProp, AppSettingPickerAppearanceProp, AppSettingToggleAppearanceProp, ShapeProp, AvatarShapeProp, TextSizeProp, TextToneProp, FontWeightProp, HeadingLevelProp, TextAlignProp, TextWhitespaceProp, TextBreakProp, TypographyTypeProp, TitleLevelProp, TypographyCopyConfigProp, TypographyEditConfigProp, TypographyEllipsisConfigProp, TypographyActionsConfigProp, SizeProp, ControlStatusProp, ControlVariantProp, FormLayoutProp, DescriptionsLayoutProp, BreakpointProp, ConfirmVariantProp, ToneProp, AlertVariantProp, CalloutKindProp, SortDirectionProp, ColumnAlignProp, SortStateProp, RevealDelayProp, RevealTriggerProp, InViewAmountProp, ActivityVariantProp, ActivityAnnounceProp, IconSizeProp, } from "./interaction.prop.js";
|
|
6
|
-
export type { BreadcrumbItemProp, BreadcrumbProp, BreadcrumbItemMenuProp, BreadcrumbItemMenuEntryProp, BreadcrumbSeparatorProp, BreadcrumbItemRenderProp, } from "./navigation.prop.js";
|
|
7
|
-
export type { GetRowIdProp, GetRowLabelProp, OnRowClickProp, ColumnDefProp, TablePresetProp, TableColumnPriorityProp, TableCellIndentProp, SelectedIdsProp, OnSelectChangeProp, OnTableDensityChangeProp, TableRowToneProp, RowToneProp, OnSortChangeProp, OnSearchChangeProp, OnClearFiltersProp, HasActiveFiltersProp, StickyProp, ColumnFixedProp, ColumnFilterValueProp, ColumnFilterItemProp, ColumnFilterStateProp, OnColumnFilterChangeProp, ColumnCompareProp, ColumnSorterProp, TableSelectionItemProp, TableRowSelectionProp, TableExpandableProp, TableSummaryProp, TableScrollProp, TableStickyProp, OnRowProp, TablePaginationProp, TablePaginationPositionProp, DescriptionsColumnProp, DescriptionsSpanProp, DescriptionsItemsProp, } from "./data.prop.js";
|
|
6
|
+
export type { BreadcrumbItemProp, BreadcrumbProp, BreadcrumbItemMenuProp, BreadcrumbItemEllipsisProp, BreadcrumbItemMenuEntryProp, BreadcrumbSeparatorProp, BreadcrumbItemRenderProp, } from "./navigation.prop.js";
|
|
7
|
+
export type { GetRowIdProp, GetRowLabelProp, OnRowClickProp, ColumnDefProp, TablePresetProp, TableColumnPriorityProp, TableCellIndentProp, SelectedIdsProp, OnSelectChangeProp, OnTableDensityChangeProp, TableRowToneProp, RowToneProp, OnSortChangeProp, OnSearchChangeProp, OnClearFiltersProp, HasActiveFiltersProp, StickyProp, ColumnFixedProp, ColumnFilterValueProp, ColumnFilterItemProp, ColumnFilterStateProp, OnColumnFilterChangeProp, ColumnCompareProp, ColumnSorterProp, TableSelectionItemProp, TableSelectionBuiltInProp, TableSelectAllMatchingProp, TableRowSelectionProp, TableExpandableProp, TableSummaryProp, TableScrollProp, TableStickyProp, OnRowProp, TablePaginationProp, TablePaginationPositionProp, DescriptionsColumnProp, DescriptionsSpanProp, DescriptionsItemsProp, } from "./data.prop.js";
|
|
@@ -33,6 +33,20 @@ export type BreadcrumbItemProp = {
|
|
|
33
33
|
to?: string;
|
|
34
34
|
/** Ant Design `menu` — a sibling dropdown on this segment. @see BreadcrumbItemMenuProp */
|
|
35
35
|
menu?: BreadcrumbItemMenuProp;
|
|
36
|
+
/**
|
|
37
|
+
* One line, a long label cut with "…" (gh#1046). antd's Breadcrumb has no per-item ellipsis;
|
|
38
|
+
* the name and shape are antd Typography's `ellipsis`. The full label shows in a tooltip on hover
|
|
39
|
+
* and on keyboard focus of the crumb link — `true` / `{}` use the label, `{ tooltip: node }`
|
|
40
|
+
* replaces it, `{ tooltip: false }` drops it. Applies to link and current crumbs, not to a
|
|
41
|
+
* `menu` segment or an `itemRender` body. The trail then stays on one line; a theme may cap
|
|
42
|
+
* each such crumb with `--breadcrumb-item-max-inline-size`.
|
|
43
|
+
* @see BreadcrumbItemEllipsisProp
|
|
44
|
+
*/
|
|
45
|
+
ellipsis?: BreadcrumbItemEllipsisProp;
|
|
46
|
+
};
|
|
47
|
+
/** `BreadcrumbItemProp.ellipsis` — on, or on with an explicit tooltip (gh#1046). */
|
|
48
|
+
export type BreadcrumbItemEllipsisProp = boolean | {
|
|
49
|
+
tooltip?: React.ReactNode;
|
|
36
50
|
};
|
|
37
51
|
/** Ordered breadcrumb trail above page title. */
|
|
38
52
|
export type BreadcrumbProp = BreadcrumbItemProp[];
|
|
@@ -1129,6 +1129,11 @@
|
|
|
1129
1129
|
padding-inline-end: calc(var(--code-block-space-inset) + var(--control-height-xs));
|
|
1130
1130
|
}
|
|
1131
1131
|
|
|
1132
|
+
.ui-code-block[data-copyable][data-wrap="false"] {
|
|
1133
|
+
padding-inline-end: var(--code-block-space-inset);
|
|
1134
|
+
border-inline-end: calc(var(--control-height-xs) + 2 * var(--space-1)) solid transparent;
|
|
1135
|
+
}
|
|
1136
|
+
|
|
1132
1137
|
.ui-code-block-copy {
|
|
1133
1138
|
position: absolute;
|
|
1134
1139
|
inset-block-start: var(--space-1);
|
|
@@ -1139,6 +1144,11 @@
|
|
|
1139
1144
|
.ui-code-block[data-copyable] {
|
|
1140
1145
|
padding-inline-end: calc(var(--code-block-space-inset) + var(--control-height-default));
|
|
1141
1146
|
}
|
|
1147
|
+
|
|
1148
|
+
.ui-code-block[data-copyable][data-wrap="false"] {
|
|
1149
|
+
padding-inline-end: var(--code-block-space-inset);
|
|
1150
|
+
border-inline-end-width: calc(var(--control-height-default) + 2 * var(--space-1));
|
|
1151
|
+
}
|
|
1142
1152
|
}
|
|
1143
1153
|
|
|
1144
1154
|
.ui-code-block [data-code-token="comment"],
|
|
@@ -1545,6 +1555,20 @@
|
|
|
1545
1555
|
border: var(--stroke-hairline) solid hsl(var(--range-timeline-border-color));
|
|
1546
1556
|
border-radius: var(--radius-md, calc(var(--radius) / var(--radius-ratio)));
|
|
1547
1557
|
}
|
|
1558
|
+
|
|
1559
|
+
.ui-range-timeline[data-sticky="true"] {
|
|
1560
|
+
overflow: clip;
|
|
1561
|
+
}
|
|
1562
|
+
.ui-range-timeline-sticky-header {
|
|
1563
|
+
position: sticky;
|
|
1564
|
+
inset-block-start: var(--range-timeline-sticky-offset, 0px);
|
|
1565
|
+
z-index: 2;
|
|
1566
|
+
overflow: hidden;
|
|
1567
|
+
}
|
|
1568
|
+
.ui-range-timeline-scroller {
|
|
1569
|
+
overflow-x: auto;
|
|
1570
|
+
overflow-y: hidden;
|
|
1571
|
+
}
|
|
1548
1572
|
.ui-range-timeline-canvas {
|
|
1549
1573
|
min-inline-size: calc(
|
|
1550
1574
|
var(--range-timeline-label-width) + var(--range-timeline-columns, 1) *
|
|
@@ -2171,6 +2195,34 @@
|
|
|
2171
2195
|
border-block-start-color: transparent;
|
|
2172
2196
|
}
|
|
2173
2197
|
|
|
2198
|
+
.ui-tree-node[data-filter-node="true"]:not([data-disabled]) .ui-tree-label {
|
|
2199
|
+
color: var(--tree-node-filter-foreground, hsl(var(--text-brand, var(--primary))));
|
|
2200
|
+
font-weight: var(--font-weight-medium);
|
|
2201
|
+
}
|
|
2202
|
+
|
|
2203
|
+
.ui-tree[data-virtual="true"][data-show-line="true"] .ui-tree-node {
|
|
2204
|
+
position: relative;
|
|
2205
|
+
}
|
|
2206
|
+
|
|
2207
|
+
.ui-tree-rail {
|
|
2208
|
+
position: absolute;
|
|
2209
|
+
inset-block: 0;
|
|
2210
|
+
inset-inline-start: calc(
|
|
2211
|
+
var(--tree-node-padding-inline) + (var(--tree-rail-level, 1) - 1) * var(--tree-indent-width) +
|
|
2212
|
+
var(--tree-switcher-size) / 2
|
|
2213
|
+
);
|
|
2214
|
+
border-inline-start: var(--stroke-hairline) solid var(--tree-line-color, hsl(var(--border)));
|
|
2215
|
+
}
|
|
2216
|
+
|
|
2217
|
+
.ui-tree-spacer {
|
|
2218
|
+
flex: none;
|
|
2219
|
+
}
|
|
2220
|
+
|
|
2221
|
+
.ui-tree[data-virtual="true"][data-divided="true"]
|
|
2222
|
+
> .ui-tree-node[aria-level="1"][aria-posinset="1"] {
|
|
2223
|
+
border-block-start-color: transparent;
|
|
2224
|
+
}
|
|
2225
|
+
|
|
2174
2226
|
.ui-tree-loading {
|
|
2175
2227
|
display: flex;
|
|
2176
2228
|
align-items: center;
|
package/dist/styles/layers.json
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
{
|
|
2
|
-
"version": "31.
|
|
2
|
+
"version": "31.7.0",
|
|
3
3
|
"generatedBy": "scripts/gen-style-layers.mjs — do not edit by hand; run `pnpm gen:style-layers`",
|
|
4
4
|
"base": "base.css",
|
|
5
5
|
"fonts": "fonts.css",
|
|
@@ -702,7 +702,8 @@
|
|
|
702
702
|
},
|
|
703
703
|
"PageContainer": {
|
|
704
704
|
"layers": [
|
|
705
|
-
"layout.css"
|
|
705
|
+
"layout.css",
|
|
706
|
+
"dialog-layout.css"
|
|
706
707
|
]
|
|
707
708
|
},
|
|
708
709
|
"Pagination": {
|
package/dist/styles/layout.css
CHANGED
|
@@ -1036,6 +1036,28 @@
|
|
|
1036
1036
|
color: hsl(var(--foreground));
|
|
1037
1037
|
}
|
|
1038
1038
|
|
|
1039
|
+
.ui-breadcrumb-list[data-ellipsis] {
|
|
1040
|
+
flex-wrap: nowrap;
|
|
1041
|
+
}
|
|
1042
|
+
.ui-breadcrumb-list[data-ellipsis] > .ui-breadcrumb-item:not([data-ellipsis]) {
|
|
1043
|
+
flex-shrink: 0;
|
|
1044
|
+
white-space: nowrap;
|
|
1045
|
+
}
|
|
1046
|
+
.ui-breadcrumb-item[data-ellipsis] {
|
|
1047
|
+
min-inline-size: 0;
|
|
1048
|
+
max-inline-size: var(--breadcrumb-item-max-inline-size);
|
|
1049
|
+
}
|
|
1050
|
+
.ui-breadcrumb-item[data-ellipsis] > svg,
|
|
1051
|
+
.ui-breadcrumb-item[data-ellipsis] > .ui-breadcrumb-separator {
|
|
1052
|
+
flex-shrink: 0;
|
|
1053
|
+
}
|
|
1054
|
+
.ui-breadcrumb-ellipsis {
|
|
1055
|
+
min-inline-size: 0;
|
|
1056
|
+
overflow: hidden;
|
|
1057
|
+
text-overflow: ellipsis;
|
|
1058
|
+
white-space: nowrap;
|
|
1059
|
+
}
|
|
1060
|
+
|
|
1039
1061
|
.ui-empty-state {
|
|
1040
1062
|
display: flex;
|
|
1041
1063
|
flex-direction: column;
|
|
@@ -187,7 +187,9 @@
|
|
|
187
187
|
padding: 0;
|
|
188
188
|
}
|
|
189
189
|
|
|
190
|
-
.ui-table-row:
|
|
190
|
+
.ui-table-row:not([data-state="selected"]):has(
|
|
191
|
+
> [data-slot="table-cell"][data-flush] > [data-slot="list-row"][data-unread]
|
|
192
|
+
) {
|
|
191
193
|
background-color: var(--list-row-unread-background, hsl(var(--muted)));
|
|
192
194
|
}
|
|
193
195
|
|
|
@@ -210,6 +212,9 @@
|
|
|
210
212
|
font: inherit;
|
|
211
213
|
cursor: pointer;
|
|
212
214
|
outline: none;
|
|
215
|
+
|
|
216
|
+
max-inline-size: 100%;
|
|
217
|
+
min-inline-size: 0;
|
|
213
218
|
}
|
|
214
219
|
|
|
215
220
|
.ui-data-table-sort-button::after {
|
|
@@ -332,6 +337,11 @@
|
|
|
332
337
|
display: inline-flex;
|
|
333
338
|
align-items: center;
|
|
334
339
|
gap: var(--space-inline-xs);
|
|
340
|
+
min-inline-size: 0;
|
|
341
|
+
max-inline-size: 100%;
|
|
342
|
+
}
|
|
343
|
+
.ui-data-table-sort-label > .ui-data-table-sort-icon {
|
|
344
|
+
flex-shrink: 0;
|
|
335
345
|
}
|
|
336
346
|
|
|
337
347
|
:is(th, td).text-center > .ui-data-table-sort-button > .ui-data-table-sort-label {
|
|
@@ -554,6 +564,19 @@
|
|
|
554
564
|
gap: var(--table-selection-menu-gap);
|
|
555
565
|
}
|
|
556
566
|
|
|
567
|
+
.ui-data-table-matching[data-active] {
|
|
568
|
+
display: flex;
|
|
569
|
+
flex-wrap: wrap;
|
|
570
|
+
align-items: center;
|
|
571
|
+
justify-content: center;
|
|
572
|
+
gap: var(--space-inline-sm);
|
|
573
|
+
padding-block: var(--space-stack-xs);
|
|
574
|
+
padding-inline: var(--table-cell-space-x, var(--space-section-active));
|
|
575
|
+
border-block-end: var(--stroke-hairline) solid var(--table-border-color, hsl(var(--border)));
|
|
576
|
+
background-color: hsl(var(--muted));
|
|
577
|
+
font-size: var(--font-size-sm);
|
|
578
|
+
}
|
|
579
|
+
|
|
557
580
|
.ui-data-table-surface .ui-table-bordered {
|
|
558
581
|
border-width: 0;
|
|
559
582
|
}
|
|
@@ -46,6 +46,8 @@
|
|
|
46
46
|
--breadcrumb-font-size: var(--font-size-xs, calc(var(--font-size-base) / var(--font-size-ratio)));
|
|
47
47
|
|
|
48
48
|
--breadcrumb-menu-trigger-gap: var(--space-inline-xs);
|
|
49
|
+
|
|
50
|
+
--breadcrumb-item-max-inline-size: none;
|
|
49
51
|
--menu-shortcut-font-size: var(
|
|
50
52
|
--font-size-xs,
|
|
51
53
|
calc(var(--font-size-base) / var(--font-size-ratio))
|