@ai-matrx/design-system 0.55.0 → 0.56.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 +39 -0
- package/README.md +20 -0
- package/dist/data-table/copy-helpers.d.cts +1 -1
- package/dist/data-table/copy-helpers.d.ts +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 +2294 -2238
- package/dist/data-table/index.cjs.map +1 -1
- package/dist/data-table/index.d.cts +8 -3
- package/dist/data-table/index.d.ts +8 -3
- package/dist/data-table/index.js +2406 -2350
- 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 +2 -2
- package/dist/index.cjs.map +1 -1
- package/dist/index.js +2 -2
- package/dist/index.js.map +1 -1
- package/dist/{layered-filters-v-hFI3Pk.d.cts → layered-filters-CNFxkmfs.d.cts} +21 -10
- package/dist/{layered-filters-DlGwwJbD.d.ts → layered-filters-cXDqSLSR.d.ts} +21 -10
- package/dist/styles.css +46 -27
- package/dist/tokens.css +19 -5
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,7 +1,46 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## 0.56.0
|
|
4
|
+
|
|
5
|
+
- **THE PANEL MOTION (the motion standard, Arman 2026-10-02).** Every panel-like slide the
|
|
6
|
+
package ships now opens AND closes on one token pair, `--matrx-motion-duration-panel` /
|
|
7
|
+
`--matrx-motion-ease-panel`: the Sheet on every side (was 500ms `ease-out` in, 300ms
|
|
8
|
+
`ease-in` out), the mobile Dialog / CommandDialog bottom sheet (was 200ms), the vaul Drawer
|
|
9
|
+
and its scrim (was vaul 1.1.2's 0.5s `cubic-bezier(0.32,0.72,0,1)`, including the inline
|
|
10
|
+
settle after a released drag — a drag itself still has no transition), and the Sidebar's
|
|
11
|
+
collapse (`--sidebar-duration` / `--sidebar-easing` are now defined from the pair, was
|
|
12
|
+
200ms `linear`). The names are the package's contract; `tokens.css` ships the standard as
|
|
13
|
+
the layered default — 600ms, `cubic-bezier(0.4, 0, 0.2, 1)`, 0ms under
|
|
14
|
+
`prefers-reduced-motion: reduce` — and a host that declares them unlayered owns the values.
|
|
15
|
+
`--matrx-motion-duration-sheet` is removed (nothing reads it). Menus, popovers, tooltips and
|
|
16
|
+
dialogs keep the small-motion tokens. Guard: `src/panel-motion.test.ts` (15 red on 0.55.1).
|
|
17
|
+
|
|
18
|
+
### Consumer action
|
|
19
|
+
|
|
20
|
+
- Hosts that already define `--matrx-motion-duration-panel` / `--matrx-motion-ease-panel`
|
|
21
|
+
(matrx-frontend `app/globals.css`) need nothing. Any other host gets the standard from
|
|
22
|
+
`tokens.css`; to retime every panel at once, redeclare the two tokens unlayered.
|
|
23
|
+
- Remove any host override of `--matrx-motion-duration-sheet` (no longer read).
|
|
24
|
+
|
|
25
|
+
## 0.55.1
|
|
26
|
+
|
|
27
|
+
Automatic changed-only republish (docs/metadata drift since the last tag — see
|
|
28
|
+
`git diff npm/design-system/v0.55.0..npm/design-system/v0.55.1 -- apps/shared/design-system`).
|
|
29
|
+
No source changes intended and no consumer action required.
|
|
30
|
+
|
|
3
31
|
## 0.55.0
|
|
4
32
|
|
|
33
|
+
- **Icon-only standard row actions (Arman, October 2).** `rowActions` now returns
|
|
34
|
+
`MatrxTableIconAction[]`: id, icon component, accessible label, callback and optional
|
|
35
|
+
tooltip, disabled/loading state, tone and button variant. The package owns button markup
|
|
36
|
+
and sizing; no children, text renderer or React-node escape hatch is accepted. A complex
|
|
37
|
+
menu/editor declares a column with `customActions` instead. That column is non-data,
|
|
38
|
+
not draggable, excluded from copy/spreadsheet cells, and carries the live record controls.
|
|
39
|
+
Custom header controls belong to that column's `header`; `rowActionsHeader` is removed.
|
|
40
|
+
Frontend, Dashboard, Records Grid and desktop callers are migrated without changing writes.
|
|
41
|
+
Guards: `TableIconActions.test.tsx`, edit-actions, layout-look, density and row-cost tests.
|
|
42
|
+
|
|
43
|
+
|
|
5
44
|
- **Custom fields on every list (lane 7 STANDARD-TABLES W5).** `MatrxDataTable` takes `rowToken`
|
|
6
45
|
(the registry token of its rows); the host port `useCustomFieldColumns(token, organizationIds)` —
|
|
7
46
|
a hook bound once — answers that token's custom-field columns for the rows' own organizations
|
package/README.md
CHANGED
|
@@ -223,3 +223,23 @@ component lifetime. A return to that identity restores its drafts; drafts from
|
|
|
223
223
|
other results offer Copy and confirmed Discard, never a save against the current
|
|
224
224
|
rows. Applications own persistence across unmounts and must remount the table
|
|
225
225
|
when changing authenticated users so prior-user drafts are not exposed.
|
|
226
|
+
|
|
227
|
+
### Table row actions
|
|
228
|
+
|
|
229
|
+
Standard `MatrxDataTable.rowActions` returns icon descriptors, never React content:
|
|
230
|
+
|
|
231
|
+
```tsx
|
|
232
|
+
rowActions={(row) => [{
|
|
233
|
+
id: "inspect", icon: Eye, label: `Inspect ${row.name}`,
|
|
234
|
+
tooltip: "Open record details", onClick: () => openRecord(row.id),
|
|
235
|
+
variant: "ghost", tone: "primary",
|
|
236
|
+
}]}
|
|
237
|
+
```
|
|
238
|
+
|
|
239
|
+
`label` is the accessible name and default tooltip, not visible button text. `disabled` and
|
|
240
|
+
`loading` retain the icon button; the table owns density and sizing. `onClick` receives the
|
|
241
|
+
button event for callers that need modifier keys. A menu, editor or other React content must
|
|
242
|
+
be declared in its own column: `{ id: "workflow", header: "Workflow", customActions: (row,
|
|
243
|
+
controls) => <WorkflowMenu row={row} controls={controls} /> }`. Custom columns carry live
|
|
244
|
+
record controls, never participate in sort/filter/copy/spreadsheet data, and are not draggable
|
|
245
|
+
(their headers may contain controls). Hidden custom columns stay hidden in mobile cards too.
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { AgentPayloadInput } from './copy-types.cjs';
|
|
2
|
-
import { g as MatrxDataTableCopyConfig, M as MatrxColumnDef } from '../layered-filters-
|
|
2
|
+
import { g as MatrxDataTableCopyConfig, M as MatrxColumnDef } from '../layered-filters-CNFxkmfs.cjs';
|
|
3
3
|
import '../content-transfer.cjs';
|
|
4
4
|
import 'react';
|
|
5
5
|
import '@ai-matrx/kit/content-transfer';
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { AgentPayloadInput } from './copy-types.js';
|
|
2
|
-
import { g as MatrxDataTableCopyConfig, M as MatrxColumnDef } from '../layered-filters-
|
|
2
|
+
import { g as MatrxDataTableCopyConfig, M as MatrxColumnDef } from '../layered-filters-cXDqSLSR.js';
|
|
3
3
|
import '../content-transfer.js';
|
|
4
4
|
import 'react';
|
|
5
5
|
import '@ai-matrx/kit/content-transfer';
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { M as MatrxColumnDef, C as ColumnFiltersState, S as SortState, L as LayeredFilterRule, T as TableSearchMatchMode, a as ColumnFilterValue } from '../layered-filters-
|
|
1
|
+
import { M as MatrxColumnDef, C as ColumnFiltersState, S as SortState, L as LayeredFilterRule, T as TableSearchMatchMode, a as ColumnFilterValue } from '../layered-filters-CNFxkmfs.cjs';
|
|
2
2
|
import '../content-transfer.cjs';
|
|
3
3
|
import 'react';
|
|
4
4
|
import '@ai-matrx/kit/content-transfer';
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { M as MatrxColumnDef, C as ColumnFiltersState, S as SortState, L as LayeredFilterRule, T as TableSearchMatchMode, a as ColumnFilterValue } from '../layered-filters-
|
|
1
|
+
import { M as MatrxColumnDef, C as ColumnFiltersState, S as SortState, L as LayeredFilterRule, T as TableSearchMatchMode, a as ColumnFilterValue } from '../layered-filters-cXDqSLSR.js';
|
|
2
2
|
import '../content-transfer.js';
|
|
3
3
|
import 'react';
|
|
4
4
|
import '@ai-matrx/kit/content-transfer';
|
|
@@ -2,7 +2,7 @@ import * as React from 'react';
|
|
|
2
2
|
import { ComponentType, ReactNode, MouseEventHandler } from 'react';
|
|
3
3
|
import { CopyControlProps } from './copy-types.cjs';
|
|
4
4
|
export { AgentPayloadInput, AiCustomSource, AiVariant, CopyExportConfig } from './copy-types.cjs';
|
|
5
|
-
import { M as MatrxColumnDef, b as TableSavedViewsProps, c as MatrxDataTableDensity, d as MatrxDataTableRecordControls } from '../layered-filters-
|
|
5
|
+
import { M as MatrxColumnDef, b as TableSavedViewsProps, c as MatrxDataTableDensity, d as MatrxDataTableRecordControls } from '../layered-filters-CNFxkmfs.cjs';
|
|
6
6
|
import { MatrxTableMenuItem, MatrxTableMenuTarget, MatrxTableMenuPayload, MatrxTableMenuSectionsResolver, MatrxTableMenuIconName } from './menu-targets.cjs';
|
|
7
7
|
export { MatrxTableMenuSection } from './menu-targets.cjs';
|
|
8
8
|
import '../content-transfer.cjs';
|
|
@@ -2,7 +2,7 @@ import * as React from 'react';
|
|
|
2
2
|
import { ComponentType, ReactNode, MouseEventHandler } from 'react';
|
|
3
3
|
import { CopyControlProps } from './copy-types.js';
|
|
4
4
|
export { AgentPayloadInput, AiCustomSource, AiVariant, CopyExportConfig } from './copy-types.js';
|
|
5
|
-
import { M as MatrxColumnDef, b as TableSavedViewsProps, c as MatrxDataTableDensity, d as MatrxDataTableRecordControls } from '../layered-filters-
|
|
5
|
+
import { M as MatrxColumnDef, b as TableSavedViewsProps, c as MatrxDataTableDensity, d as MatrxDataTableRecordControls } from '../layered-filters-cXDqSLSR.js';
|
|
6
6
|
import { MatrxTableMenuItem, MatrxTableMenuTarget, MatrxTableMenuPayload, MatrxTableMenuSectionsResolver, MatrxTableMenuIconName } from './menu-targets.js';
|
|
7
7
|
export { MatrxTableMenuSection } from './menu-targets.js';
|
|
8
8
|
import '../content-transfer.js';
|