@ai-matrx/design-system 0.36.0 → 0.38.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/CHANGELOG.md +31 -0
- package/dist/content-transfer.cjs +81 -17
- package/dist/content-transfer.cjs.map +1 -1
- package/dist/content-transfer.js +81 -17
- package/dist/content-transfer.js.map +1 -1
- package/dist/data-table/copy-helpers.d.cts +1 -1
- package/dist/data-table/copy-helpers.d.ts +1 -1
- package/dist/data-table/data-row-inspector.cjs +81 -17
- package/dist/data-table/data-row-inspector.cjs.map +1 -1
- package/dist/data-table/data-row-inspector.js +83 -19
- package/dist/data-table/data-row-inspector.js.map +1 -1
- package/dist/data-table/data-row-window.cjs +81 -17
- package/dist/data-table/data-row-window.cjs.map +1 -1
- package/dist/data-table/data-row-window.js +83 -19
- package/dist/data-table/data-row-window.js.map +1 -1
- package/dist/data-table/filter-engine.d.cts +1 -1
- package/dist/data-table/filter-engine.d.ts +1 -1
- package/dist/data-table/host.d.cts +1 -1
- package/dist/data-table/host.d.ts +1 -1
- package/dist/data-table/index.cjs +127 -25
- package/dist/data-table/index.cjs.map +1 -1
- package/dist/data-table/index.d.cts +2 -2
- package/dist/data-table/index.d.ts +2 -2
- package/dist/data-table/index.js +223 -121
- package/dist/data-table/index.js.map +1 -1
- package/dist/data-table/infer-filter.d.cts +1 -1
- package/dist/data-table/infer-filter.d.ts +1 -1
- package/dist/data-table/layered-filters.d.cts +1 -1
- package/dist/data-table/layered-filters.d.ts +1 -1
- package/dist/data-table/query-control.d.cts +1 -1
- package/dist/data-table/query-control.d.ts +1 -1
- package/dist/data-table/types.cjs.map +1 -1
- package/dist/data-table/types.d.cts +1 -1
- package/dist/data-table/types.d.ts +1 -1
- package/dist/data-table/url-state.d.cts +1 -1
- package/dist/data-table/url-state.d.ts +1 -1
- package/dist/data-table/xlsx.d.cts +1 -1
- package/dist/data-table/xlsx.d.ts +1 -1
- package/dist/index.cjs +81 -17
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +21 -0
- package/dist/index.d.ts +21 -0
- package/dist/index.js +91 -27
- package/dist/index.js.map +1 -1
- package/dist/{types-Cxm5XK0L.d.ts → types-B8vwElPz.d.ts} +25 -1
- package/dist/{types-kiV-CAuZ.d.cts → types-BuMHbFjs.d.cts} +25 -1
- package/package.json +7 -7
|
@@ -2,7 +2,7 @@ import { ContentTransferReference } from './content-transfer.js';
|
|
|
2
2
|
import { ReactNode } from 'react';
|
|
3
3
|
import { AiVariant, AiCustomSource, CopyExportConfig } from './data-table/copy-types.js';
|
|
4
4
|
import { F as FieldFormatConfig } from './types-CJWU1Gae.js';
|
|
5
|
-
import { GroupAggregateSpec, GroupOrder } from './data-table/grouping.js';
|
|
5
|
+
import { GroupAggregateSpec, GroupOrder, TableGroup } from './data-table/grouping.js';
|
|
6
6
|
import { CellPatch } from './data-table/fill.js';
|
|
7
7
|
import { ColumnFacets } from './data-table/facets.js';
|
|
8
8
|
import { SpreadsheetIntent, SpreadsheetPastePlan } from './data-table/spreadsheet.js';
|
|
@@ -689,8 +689,19 @@ interface AnyOfColumnSearch {
|
|
|
689
689
|
interface MatrxDataTableToolbar {
|
|
690
690
|
/** Optional human-readable table title, rendered by the shared title row. */
|
|
691
691
|
title?: string;
|
|
692
|
+
/** Source-owned total displayed beside the shared title. */
|
|
693
|
+
titleCount?: {
|
|
694
|
+
value: number;
|
|
695
|
+
label: string;
|
|
696
|
+
};
|
|
692
697
|
/** Global search across all accessor values. Default true. */
|
|
693
698
|
search?: boolean;
|
|
699
|
+
/**
|
|
700
|
+
* A caller-owned search control for a deliberately narrower query contract.
|
|
701
|
+
* It occupies the canonical title-row search slot and never changes table
|
|
702
|
+
* query state, so the caller remains honest about its source boundary.
|
|
703
|
+
*/
|
|
704
|
+
customSearch?: ReactNode;
|
|
694
705
|
searchPlaceholder?: string;
|
|
695
706
|
searchValue?: string;
|
|
696
707
|
onSearchChange?: (value: string) => void;
|
|
@@ -1181,6 +1192,12 @@ interface MatrxDataTableGroupingConfig<T> {
|
|
|
1181
1192
|
emptyLabel?: string | undefined;
|
|
1182
1193
|
/** Singular noun for a group's summary ("job" → "12 jobs"). */
|
|
1183
1194
|
rowNoun?: string | undefined;
|
|
1195
|
+
/**
|
|
1196
|
+
* Replaces the group's plain-text label while retaining the canonical
|
|
1197
|
+
* collapse control, count, and aggregate cells. Use when a group identity is
|
|
1198
|
+
* an addressable platform entity and must keep its Open/new-tab/Peek doors.
|
|
1199
|
+
*/
|
|
1200
|
+
renderLabel?: ((group: TableGroup<T>) => ReactNode) | undefined;
|
|
1184
1201
|
/**
|
|
1185
1202
|
* Reads the grouping value for a column. Defaults to the column's own
|
|
1186
1203
|
* accessor.
|
|
@@ -1227,6 +1244,11 @@ interface MatrxDataTableVirtualizeConfig {
|
|
|
1227
1244
|
* whose rows are all in hand.
|
|
1228
1245
|
*/
|
|
1229
1246
|
interface MatrxDataTableCoverageConfig {
|
|
1247
|
+
/**
|
|
1248
|
+
* Number of rows loaded from the source before the host narrows `data` with
|
|
1249
|
+
* a domain filter. Defaults to `data.length`.
|
|
1250
|
+
*/
|
|
1251
|
+
loaded?: number | undefined;
|
|
1230
1252
|
/** Rows the source says match the current query, when it can say. */
|
|
1231
1253
|
matched?: number | undefined;
|
|
1232
1254
|
/** Rows in the table irrespective of the query, when known. */
|
|
@@ -1425,6 +1447,8 @@ interface MatrxDataTableProps<T> {
|
|
|
1425
1447
|
hideToolbar?: boolean;
|
|
1426
1448
|
/** Hide numbered pagination; local rows remain available to the caller. */
|
|
1427
1449
|
hidePagination?: boolean;
|
|
1450
|
+
/** Host wording for a controlled source range when visible rows are a local projection. */
|
|
1451
|
+
paginationLabelFormat?: (start: number, end: number, total: number) => string;
|
|
1428
1452
|
/** Optional deferred Apply/Cancel copy for column filter popovers. */
|
|
1429
1453
|
filterUi?: MatrxDataTableFilterUi;
|
|
1430
1454
|
/** Row click opens the side panel unless `window.openOnRowClick` is true. */
|
|
@@ -2,7 +2,7 @@ import { ContentTransferReference } from './content-transfer.cjs';
|
|
|
2
2
|
import { ReactNode } from 'react';
|
|
3
3
|
import { AiVariant, AiCustomSource, CopyExportConfig } from './data-table/copy-types.cjs';
|
|
4
4
|
import { F as FieldFormatConfig } from './types-CJWU1Gae.cjs';
|
|
5
|
-
import { GroupAggregateSpec, GroupOrder } from './data-table/grouping.cjs';
|
|
5
|
+
import { GroupAggregateSpec, GroupOrder, TableGroup } from './data-table/grouping.cjs';
|
|
6
6
|
import { CellPatch } from './data-table/fill.cjs';
|
|
7
7
|
import { ColumnFacets } from './data-table/facets.cjs';
|
|
8
8
|
import { SpreadsheetIntent, SpreadsheetPastePlan } from './data-table/spreadsheet.cjs';
|
|
@@ -689,8 +689,19 @@ interface AnyOfColumnSearch {
|
|
|
689
689
|
interface MatrxDataTableToolbar {
|
|
690
690
|
/** Optional human-readable table title, rendered by the shared title row. */
|
|
691
691
|
title?: string;
|
|
692
|
+
/** Source-owned total displayed beside the shared title. */
|
|
693
|
+
titleCount?: {
|
|
694
|
+
value: number;
|
|
695
|
+
label: string;
|
|
696
|
+
};
|
|
692
697
|
/** Global search across all accessor values. Default true. */
|
|
693
698
|
search?: boolean;
|
|
699
|
+
/**
|
|
700
|
+
* A caller-owned search control for a deliberately narrower query contract.
|
|
701
|
+
* It occupies the canonical title-row search slot and never changes table
|
|
702
|
+
* query state, so the caller remains honest about its source boundary.
|
|
703
|
+
*/
|
|
704
|
+
customSearch?: ReactNode;
|
|
694
705
|
searchPlaceholder?: string;
|
|
695
706
|
searchValue?: string;
|
|
696
707
|
onSearchChange?: (value: string) => void;
|
|
@@ -1181,6 +1192,12 @@ interface MatrxDataTableGroupingConfig<T> {
|
|
|
1181
1192
|
emptyLabel?: string | undefined;
|
|
1182
1193
|
/** Singular noun for a group's summary ("job" → "12 jobs"). */
|
|
1183
1194
|
rowNoun?: string | undefined;
|
|
1195
|
+
/**
|
|
1196
|
+
* Replaces the group's plain-text label while retaining the canonical
|
|
1197
|
+
* collapse control, count, and aggregate cells. Use when a group identity is
|
|
1198
|
+
* an addressable platform entity and must keep its Open/new-tab/Peek doors.
|
|
1199
|
+
*/
|
|
1200
|
+
renderLabel?: ((group: TableGroup<T>) => ReactNode) | undefined;
|
|
1184
1201
|
/**
|
|
1185
1202
|
* Reads the grouping value for a column. Defaults to the column's own
|
|
1186
1203
|
* accessor.
|
|
@@ -1227,6 +1244,11 @@ interface MatrxDataTableVirtualizeConfig {
|
|
|
1227
1244
|
* whose rows are all in hand.
|
|
1228
1245
|
*/
|
|
1229
1246
|
interface MatrxDataTableCoverageConfig {
|
|
1247
|
+
/**
|
|
1248
|
+
* Number of rows loaded from the source before the host narrows `data` with
|
|
1249
|
+
* a domain filter. Defaults to `data.length`.
|
|
1250
|
+
*/
|
|
1251
|
+
loaded?: number | undefined;
|
|
1230
1252
|
/** Rows the source says match the current query, when it can say. */
|
|
1231
1253
|
matched?: number | undefined;
|
|
1232
1254
|
/** Rows in the table irrespective of the query, when known. */
|
|
@@ -1425,6 +1447,8 @@ interface MatrxDataTableProps<T> {
|
|
|
1425
1447
|
hideToolbar?: boolean;
|
|
1426
1448
|
/** Hide numbered pagination; local rows remain available to the caller. */
|
|
1427
1449
|
hidePagination?: boolean;
|
|
1450
|
+
/** Host wording for a controlled source range when visible rows are a local projection. */
|
|
1451
|
+
paginationLabelFormat?: (start: number, end: number, total: number) => string;
|
|
1428
1452
|
/** Optional deferred Apply/Cancel copy for column filter popovers. */
|
|
1429
1453
|
filterUi?: MatrxDataTableFilterUi;
|
|
1430
1454
|
/** Row click opens the side panel unless `window.openOnRowClick` is true. */
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@ai-matrx/design-system",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.38.0",
|
|
4
4
|
"description": "AI Matrx semantic React primitives shared across Vite, Next.js, desktop, and customer-built applications.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"license": "MIT",
|
|
@@ -399,7 +399,7 @@
|
|
|
399
399
|
"class-variance-authority": "^0.7.1",
|
|
400
400
|
"clsx": "^2.1.1",
|
|
401
401
|
"cmdk": "^1.1.1",
|
|
402
|
-
"react-resizable-panels": "^4.
|
|
402
|
+
"react-resizable-panels": "^4.13.2",
|
|
403
403
|
"tailwind-merge": "^3.7.0",
|
|
404
404
|
"vaul": "^1.1.2",
|
|
405
405
|
"xlsx": "^0.18.5",
|
|
@@ -414,18 +414,18 @@
|
|
|
414
414
|
"@arethetypeswrong/cli": "^0.18.5",
|
|
415
415
|
"@tailwindcss/vite": "^4.3.3",
|
|
416
416
|
"@testing-library/react": "^16.3.3",
|
|
417
|
-
"@types/node": "^26.6.
|
|
417
|
+
"@types/node": "^26.6.2",
|
|
418
418
|
"@types/react": "19.3.0",
|
|
419
419
|
"@types/react-dom": "19.3.0",
|
|
420
|
-
"@vitejs/plugin-react": "^5.
|
|
421
|
-
"jsdom": "^30.
|
|
420
|
+
"@vitejs/plugin-react": "^5.2.0",
|
|
421
|
+
"jsdom": "^30.1.1",
|
|
422
422
|
"publint": "^0.3.24",
|
|
423
423
|
"react": "^19.3.0",
|
|
424
424
|
"react-dom": "^19.3.0",
|
|
425
425
|
"tailwindcss": "^4.3.3",
|
|
426
426
|
"tsup": "^8.5.1",
|
|
427
|
-
"typescript": "^
|
|
428
|
-
"vite": "^7.3.
|
|
427
|
+
"typescript": "^6.0.3",
|
|
428
|
+
"vite": "^7.3.6",
|
|
429
429
|
"vitest": "^5.0.1"
|
|
430
430
|
},
|
|
431
431
|
"publishConfig": {
|