@ai-matrx/design-system 0.34.0 → 0.36.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.
Files changed (53) hide show
  1. package/CHANGELOG.md +58 -0
  2. package/dist/content-transfer.cjs +3 -1
  3. package/dist/content-transfer.cjs.map +1 -1
  4. package/dist/content-transfer.js +3 -1
  5. package/dist/content-transfer.js.map +1 -1
  6. package/dist/data-table/copy-helpers.d.cts +1 -1
  7. package/dist/data-table/copy-helpers.d.ts +1 -1
  8. package/dist/data-table/data-row-inspector.cjs +3 -1
  9. package/dist/data-table/data-row-inspector.cjs.map +1 -1
  10. package/dist/data-table/data-row-inspector.js +3 -1
  11. package/dist/data-table/data-row-inspector.js.map +1 -1
  12. package/dist/data-table/data-row-window.cjs +3 -1
  13. package/dist/data-table/data-row-window.cjs.map +1 -1
  14. package/dist/data-table/data-row-window.js +3 -1
  15. package/dist/data-table/data-row-window.js.map +1 -1
  16. package/dist/data-table/filter-engine.d.cts +1 -1
  17. package/dist/data-table/filter-engine.d.ts +1 -1
  18. package/dist/data-table/host.d.cts +1 -1
  19. package/dist/data-table/host.d.ts +1 -1
  20. package/dist/data-table/index.cjs +57 -22
  21. package/dist/data-table/index.cjs.map +1 -1
  22. package/dist/data-table/index.d.cts +2 -2
  23. package/dist/data-table/index.d.ts +2 -2
  24. package/dist/data-table/index.js +57 -22
  25. package/dist/data-table/index.js.map +1 -1
  26. package/dist/data-table/infer-filter.d.cts +1 -1
  27. package/dist/data-table/infer-filter.d.ts +1 -1
  28. package/dist/data-table/layered-filters.d.cts +1 -1
  29. package/dist/data-table/layered-filters.d.ts +1 -1
  30. package/dist/data-table/query-control.d.cts +1 -1
  31. package/dist/data-table/query-control.d.ts +1 -1
  32. package/dist/data-table/spreadsheet.cjs +18 -0
  33. package/dist/data-table/spreadsheet.cjs.map +1 -1
  34. package/dist/data-table/spreadsheet.d.cts +5 -0
  35. package/dist/data-table/spreadsheet.d.ts +5 -0
  36. package/dist/data-table/spreadsheet.js +18 -0
  37. package/dist/data-table/spreadsheet.js.map +1 -1
  38. package/dist/data-table/types.cjs.map +1 -1
  39. package/dist/data-table/types.d.cts +1 -1
  40. package/dist/data-table/types.d.ts +1 -1
  41. package/dist/data-table/url-state.d.cts +1 -1
  42. package/dist/data-table/url-state.d.ts +1 -1
  43. package/dist/data-table/xlsx.d.cts +1 -1
  44. package/dist/data-table/xlsx.d.ts +1 -1
  45. package/dist/index.cjs +4 -2
  46. package/dist/index.cjs.map +1 -1
  47. package/dist/index.d.cts +28 -0
  48. package/dist/index.d.ts +28 -0
  49. package/dist/index.js +4 -2
  50. package/dist/index.js.map +1 -1
  51. package/dist/{types-CFmCZXVn.d.ts → types-Cxm5XK0L.d.ts} +25 -7
  52. package/dist/{types-CYkwg9jR.d.cts → types-kiV-CAuZ.d.cts} +25 -7
  53. package/package.json +1 -1
@@ -894,17 +894,35 @@ interface MatrxDataTableRecordControls {
894
894
  * Controlled inline detail rendered immediately below its owning table row.
895
895
  *
896
896
  * Use this when detail belongs in the scan path of a dense table. The caller
897
- * owns which one row is expanded and supplies the domain-specific body; the
898
- * canonical renderer retains sorting, filtering, selection, row actions, and
899
- * the correct column span.
897
+ * owns which row or rows are expanded and supplies the domain-specific body;
898
+ * the canonical renderer retains sorting, filtering, selection, row actions,
899
+ * and the correct column span.
900
900
  */
901
- interface MatrxDataTableExpandedDetailConfig<T> {
902
- expandedId: string | null;
903
- onExpandedIdChange: (id: string | null) => void;
901
+ interface MatrxDataTableExpandedDetailSharedConfig<T> {
904
902
  canExpand?: (row: T) => boolean;
905
903
  render: (row: T, controls: MatrxDataTableRecordControls) => ReactNode;
906
904
  className?: string;
907
905
  }
906
+ /** The default detail mode: exactly zero or one row may be expanded. */
907
+ interface MatrxDataTableSingleExpandedDetailConfig<T> extends MatrxDataTableExpandedDetailSharedConfig<T> {
908
+ expandedId: string | null;
909
+ onExpandedIdChange: (id: string | null) => void;
910
+ expandedIds?: never;
911
+ onExpandedIdsChange?: never;
912
+ }
913
+ /**
914
+ * Multi-detail mode: every ID in `expandedIds` renders its own inline detail.
915
+ *
916
+ * Pass a new Set to `onExpandedIdsChange`; the table never mutates the
917
+ * caller-owned set.
918
+ */
919
+ interface MatrxDataTableMultiExpandedDetailConfig<T> extends MatrxDataTableExpandedDetailSharedConfig<T> {
920
+ expandedIds: ReadonlySet<string>;
921
+ onExpandedIdsChange: (ids: Set<string>) => void;
922
+ expandedId?: never;
923
+ onExpandedIdChange?: never;
924
+ }
925
+ type MatrxDataTableExpandedDetailConfig<T> = MatrxDataTableSingleExpandedDetailConfig<T> | MatrxDataTableMultiExpandedDetailConfig<T>;
908
926
  /**
909
927
  * THE FOUR LEVELS of a right-click, as opaque host-owned descriptors.
910
928
  *
@@ -1546,4 +1564,4 @@ interface MatrxDataTableProps<T> {
1546
1564
  onRowOpen?: (row: T) => void;
1547
1565
  }
1548
1566
 
1549
- export { SWATCH_CLASS as $, type AnyOfColumnSearch as A, BOOLEAN_TRUE_COLOR as B, type ColumnFiltersState as C, type MatrxDataTableFilterUi as D, EMPTY_TABLE_STYLE as E, type MatrxDataTableGroupingConfig as F, type MatrxDataTableHierarchyConfig as G, type MatrxDataTableHierarchyMove as H, type MatrxDataTableMobileCardControls as I, type MatrxDataTableQueryControl as J, type MatrxDataTableSelectionConfig as K, type LayeredFilterRule as L, type MatrxColumnDef as M, type MatrxDataTableSourceProcessing as N, type MatrxDataTableSpreadsheetConfig as O, type MatrxDataTableStyleConfig as P, type MatrxDataTableToolbar as Q, type MatrxDataTableUrlStateConfig as R, type SortState as S, type TableSearchMatchMode as T, type MatrxDataTableVirtualizeConfig as U, type MatrxDataTableWindowConfig as V, type MatrxTablePagination as W, OPS_WITH_VALUE as X, ROW_TINT_CLASS as Y, STYLE_COLORS as Z, STYLE_COLOR_LABELS as _, type ColumnFilterValue as a, type SortDirection as a0, type StyleColor as a1, type StylePath as a2, type StyleTarget as a3, TABLE_STYLE_METADATA_KEY as a4, TABLE_STYLE_VERSION as a5, type TableRankedSearchOptions as a6, type TableSearchRole as a7, type TableSearchScope as a8, type TableStyle as a9, layeredFilterMatchesValue as aA, layeredFilterNeedsValue as aB, layeredFilterRuleSummary as aC, operatorsForLayeredField as aD, type TableViewQuery as aa, type TextFilterMode as ab, type ToolbarFacet as ac, applyStylePath as ad, colorForChoice as ae, evaluateRule as af, inferTableSearchRole as ag, isStyleColor as ah, parseTableStyle as ai, rankTableSearchRows as aj, resolveCellColor as ak, resolveRowColor as al, resolveTableSearchScopes as am, stylePath as an, tableStyleFromMetadata as ao, tableStyleIsEmpty as ap, LAYERED_FILTER_OPERATORS as aq, LAYERED_FILTER_OPERATOR_LABELS as ar, type LayeredFilterField as as, type LayeredFilterOperator as at, columnFiltersToLayeredRules as au, completeLayeredFilterRules as av, decodeLayeredFilterRules as aw, encodeLayeredFilterRules as ax, isCompleteLayeredFilterRule as ay, isLayeredFilterOperator as az, type TableSavedViewsProps as b, type MatrxDataTableDensity as c, type MatrxDataTableRecordControls as d, type MatrxDataTableQueryState as e, type ColumnFilterKind as f, type MatrxDataTableCopyConfig as g, type MatrxDataTableProps as h, type TableViewSnapshot as i, type ColumnMarker as j, CELL_TINT_CLASS as k, COLOR_RULE_OPS as l, COLOR_RULE_OP_LABELS as m, type CellEditType as n, type CellEditsMap as o, type ChoiceColorLookup as p, type ColorBy as q, type ColorRule as r, type ColorRuleOp as s, type MatrxDataTableContextMenuConfig as t, type MatrxDataTableCoverageConfig as u, type MatrxDataTableDetailConfig as v, type MatrxDataTableEditConfig as w, type MatrxDataTableEmptyState as x, type MatrxDataTableExpandedDetailConfig as y, type MatrxDataTableFacetsConfig as z };
1567
+ export { STYLE_COLORS as $, type AnyOfColumnSearch as A, BOOLEAN_TRUE_COLOR as B, type ColumnFiltersState as C, type MatrxDataTableFilterUi as D, EMPTY_TABLE_STYLE as E, type MatrxDataTableGroupingConfig as F, type MatrxDataTableHierarchyConfig as G, type MatrxDataTableHierarchyMove as H, type MatrxDataTableMobileCardControls as I, type MatrxDataTableMultiExpandedDetailConfig as J, type MatrxDataTableQueryControl as K, type LayeredFilterRule as L, type MatrxColumnDef as M, type MatrxDataTableSelectionConfig as N, type MatrxDataTableSingleExpandedDetailConfig as O, type MatrxDataTableSourceProcessing as P, type MatrxDataTableSpreadsheetConfig as Q, type MatrxDataTableStyleConfig as R, type SortState as S, type TableSearchMatchMode as T, type MatrxDataTableToolbar as U, type MatrxDataTableUrlStateConfig as V, type MatrxDataTableVirtualizeConfig as W, type MatrxDataTableWindowConfig as X, type MatrxTablePagination as Y, OPS_WITH_VALUE as Z, ROW_TINT_CLASS as _, type ColumnFilterValue as a, STYLE_COLOR_LABELS as a0, SWATCH_CLASS as a1, type SortDirection as a2, type StyleColor as a3, type StylePath as a4, type StyleTarget as a5, TABLE_STYLE_METADATA_KEY as a6, TABLE_STYLE_VERSION as a7, type TableRankedSearchOptions as a8, type TableSearchRole as a9, isCompleteLayeredFilterRule as aA, isLayeredFilterOperator as aB, layeredFilterMatchesValue as aC, layeredFilterNeedsValue as aD, layeredFilterRuleSummary as aE, operatorsForLayeredField as aF, type TableSearchScope as aa, type TableStyle as ab, type TableViewQuery as ac, type TextFilterMode as ad, type ToolbarFacet as ae, applyStylePath as af, colorForChoice as ag, evaluateRule as ah, inferTableSearchRole as ai, isStyleColor as aj, parseTableStyle as ak, rankTableSearchRows as al, resolveCellColor as am, resolveRowColor as an, resolveTableSearchScopes as ao, stylePath as ap, tableStyleFromMetadata as aq, tableStyleIsEmpty as ar, LAYERED_FILTER_OPERATORS as as, LAYERED_FILTER_OPERATOR_LABELS as at, type LayeredFilterField as au, type LayeredFilterOperator as av, columnFiltersToLayeredRules as aw, completeLayeredFilterRules as ax, decodeLayeredFilterRules as ay, encodeLayeredFilterRules as az, type TableSavedViewsProps as b, type MatrxDataTableDensity as c, type MatrxDataTableRecordControls as d, type MatrxDataTableQueryState as e, type ColumnFilterKind as f, type MatrxDataTableCopyConfig as g, type MatrxDataTableProps as h, type TableViewSnapshot as i, type ColumnMarker as j, CELL_TINT_CLASS as k, COLOR_RULE_OPS as l, COLOR_RULE_OP_LABELS as m, type CellEditType as n, type CellEditsMap as o, type ChoiceColorLookup as p, type ColorBy as q, type ColorRule as r, type ColorRuleOp as s, type MatrxDataTableContextMenuConfig as t, type MatrxDataTableCoverageConfig as u, type MatrxDataTableDetailConfig as v, type MatrxDataTableEditConfig as w, type MatrxDataTableEmptyState as x, type MatrxDataTableExpandedDetailConfig as y, type MatrxDataTableFacetsConfig as z };
@@ -894,17 +894,35 @@ interface MatrxDataTableRecordControls {
894
894
  * Controlled inline detail rendered immediately below its owning table row.
895
895
  *
896
896
  * Use this when detail belongs in the scan path of a dense table. The caller
897
- * owns which one row is expanded and supplies the domain-specific body; the
898
- * canonical renderer retains sorting, filtering, selection, row actions, and
899
- * the correct column span.
897
+ * owns which row or rows are expanded and supplies the domain-specific body;
898
+ * the canonical renderer retains sorting, filtering, selection, row actions,
899
+ * and the correct column span.
900
900
  */
901
- interface MatrxDataTableExpandedDetailConfig<T> {
902
- expandedId: string | null;
903
- onExpandedIdChange: (id: string | null) => void;
901
+ interface MatrxDataTableExpandedDetailSharedConfig<T> {
904
902
  canExpand?: (row: T) => boolean;
905
903
  render: (row: T, controls: MatrxDataTableRecordControls) => ReactNode;
906
904
  className?: string;
907
905
  }
906
+ /** The default detail mode: exactly zero or one row may be expanded. */
907
+ interface MatrxDataTableSingleExpandedDetailConfig<T> extends MatrxDataTableExpandedDetailSharedConfig<T> {
908
+ expandedId: string | null;
909
+ onExpandedIdChange: (id: string | null) => void;
910
+ expandedIds?: never;
911
+ onExpandedIdsChange?: never;
912
+ }
913
+ /**
914
+ * Multi-detail mode: every ID in `expandedIds` renders its own inline detail.
915
+ *
916
+ * Pass a new Set to `onExpandedIdsChange`; the table never mutates the
917
+ * caller-owned set.
918
+ */
919
+ interface MatrxDataTableMultiExpandedDetailConfig<T> extends MatrxDataTableExpandedDetailSharedConfig<T> {
920
+ expandedIds: ReadonlySet<string>;
921
+ onExpandedIdsChange: (ids: Set<string>) => void;
922
+ expandedId?: never;
923
+ onExpandedIdChange?: never;
924
+ }
925
+ type MatrxDataTableExpandedDetailConfig<T> = MatrxDataTableSingleExpandedDetailConfig<T> | MatrxDataTableMultiExpandedDetailConfig<T>;
908
926
  /**
909
927
  * THE FOUR LEVELS of a right-click, as opaque host-owned descriptors.
910
928
  *
@@ -1546,4 +1564,4 @@ interface MatrxDataTableProps<T> {
1546
1564
  onRowOpen?: (row: T) => void;
1547
1565
  }
1548
1566
 
1549
- export { SWATCH_CLASS as $, type AnyOfColumnSearch as A, BOOLEAN_TRUE_COLOR as B, type ColumnFiltersState as C, type MatrxDataTableFilterUi as D, EMPTY_TABLE_STYLE as E, type MatrxDataTableGroupingConfig as F, type MatrxDataTableHierarchyConfig as G, type MatrxDataTableHierarchyMove as H, type MatrxDataTableMobileCardControls as I, type MatrxDataTableQueryControl as J, type MatrxDataTableSelectionConfig as K, type LayeredFilterRule as L, type MatrxColumnDef as M, type MatrxDataTableSourceProcessing as N, type MatrxDataTableSpreadsheetConfig as O, type MatrxDataTableStyleConfig as P, type MatrxDataTableToolbar as Q, type MatrxDataTableUrlStateConfig as R, type SortState as S, type TableSearchMatchMode as T, type MatrxDataTableVirtualizeConfig as U, type MatrxDataTableWindowConfig as V, type MatrxTablePagination as W, OPS_WITH_VALUE as X, ROW_TINT_CLASS as Y, STYLE_COLORS as Z, STYLE_COLOR_LABELS as _, type ColumnFilterValue as a, type SortDirection as a0, type StyleColor as a1, type StylePath as a2, type StyleTarget as a3, TABLE_STYLE_METADATA_KEY as a4, TABLE_STYLE_VERSION as a5, type TableRankedSearchOptions as a6, type TableSearchRole as a7, type TableSearchScope as a8, type TableStyle as a9, layeredFilterMatchesValue as aA, layeredFilterNeedsValue as aB, layeredFilterRuleSummary as aC, operatorsForLayeredField as aD, type TableViewQuery as aa, type TextFilterMode as ab, type ToolbarFacet as ac, applyStylePath as ad, colorForChoice as ae, evaluateRule as af, inferTableSearchRole as ag, isStyleColor as ah, parseTableStyle as ai, rankTableSearchRows as aj, resolveCellColor as ak, resolveRowColor as al, resolveTableSearchScopes as am, stylePath as an, tableStyleFromMetadata as ao, tableStyleIsEmpty as ap, LAYERED_FILTER_OPERATORS as aq, LAYERED_FILTER_OPERATOR_LABELS as ar, type LayeredFilterField as as, type LayeredFilterOperator as at, columnFiltersToLayeredRules as au, completeLayeredFilterRules as av, decodeLayeredFilterRules as aw, encodeLayeredFilterRules as ax, isCompleteLayeredFilterRule as ay, isLayeredFilterOperator as az, type TableSavedViewsProps as b, type MatrxDataTableDensity as c, type MatrxDataTableRecordControls as d, type MatrxDataTableQueryState as e, type ColumnFilterKind as f, type MatrxDataTableCopyConfig as g, type MatrxDataTableProps as h, type TableViewSnapshot as i, type ColumnMarker as j, CELL_TINT_CLASS as k, COLOR_RULE_OPS as l, COLOR_RULE_OP_LABELS as m, type CellEditType as n, type CellEditsMap as o, type ChoiceColorLookup as p, type ColorBy as q, type ColorRule as r, type ColorRuleOp as s, type MatrxDataTableContextMenuConfig as t, type MatrxDataTableCoverageConfig as u, type MatrxDataTableDetailConfig as v, type MatrxDataTableEditConfig as w, type MatrxDataTableEmptyState as x, type MatrxDataTableExpandedDetailConfig as y, type MatrxDataTableFacetsConfig as z };
1567
+ export { STYLE_COLORS as $, type AnyOfColumnSearch as A, BOOLEAN_TRUE_COLOR as B, type ColumnFiltersState as C, type MatrxDataTableFilterUi as D, EMPTY_TABLE_STYLE as E, type MatrxDataTableGroupingConfig as F, type MatrxDataTableHierarchyConfig as G, type MatrxDataTableHierarchyMove as H, type MatrxDataTableMobileCardControls as I, type MatrxDataTableMultiExpandedDetailConfig as J, type MatrxDataTableQueryControl as K, type LayeredFilterRule as L, type MatrxColumnDef as M, type MatrxDataTableSelectionConfig as N, type MatrxDataTableSingleExpandedDetailConfig as O, type MatrxDataTableSourceProcessing as P, type MatrxDataTableSpreadsheetConfig as Q, type MatrxDataTableStyleConfig as R, type SortState as S, type TableSearchMatchMode as T, type MatrxDataTableToolbar as U, type MatrxDataTableUrlStateConfig as V, type MatrxDataTableVirtualizeConfig as W, type MatrxDataTableWindowConfig as X, type MatrxTablePagination as Y, OPS_WITH_VALUE as Z, ROW_TINT_CLASS as _, type ColumnFilterValue as a, STYLE_COLOR_LABELS as a0, SWATCH_CLASS as a1, type SortDirection as a2, type StyleColor as a3, type StylePath as a4, type StyleTarget as a5, TABLE_STYLE_METADATA_KEY as a6, TABLE_STYLE_VERSION as a7, type TableRankedSearchOptions as a8, type TableSearchRole as a9, isCompleteLayeredFilterRule as aA, isLayeredFilterOperator as aB, layeredFilterMatchesValue as aC, layeredFilterNeedsValue as aD, layeredFilterRuleSummary as aE, operatorsForLayeredField as aF, type TableSearchScope as aa, type TableStyle as ab, type TableViewQuery as ac, type TextFilterMode as ad, type ToolbarFacet as ae, applyStylePath as af, colorForChoice as ag, evaluateRule as ah, inferTableSearchRole as ai, isStyleColor as aj, parseTableStyle as ak, rankTableSearchRows as al, resolveCellColor as am, resolveRowColor as an, resolveTableSearchScopes as ao, stylePath as ap, tableStyleFromMetadata as aq, tableStyleIsEmpty as ar, LAYERED_FILTER_OPERATORS as as, LAYERED_FILTER_OPERATOR_LABELS as at, type LayeredFilterField as au, type LayeredFilterOperator as av, columnFiltersToLayeredRules as aw, completeLayeredFilterRules as ax, decodeLayeredFilterRules as ay, encodeLayeredFilterRules as az, type TableSavedViewsProps as b, type MatrxDataTableDensity as c, type MatrxDataTableRecordControls as d, type MatrxDataTableQueryState as e, type ColumnFilterKind as f, type MatrxDataTableCopyConfig as g, type MatrxDataTableProps as h, type TableViewSnapshot as i, type ColumnMarker as j, CELL_TINT_CLASS as k, COLOR_RULE_OPS as l, COLOR_RULE_OP_LABELS as m, type CellEditType as n, type CellEditsMap as o, type ChoiceColorLookup as p, type ColorBy as q, type ColorRule as r, type ColorRuleOp as s, type MatrxDataTableContextMenuConfig as t, type MatrxDataTableCoverageConfig as u, type MatrxDataTableDetailConfig as v, type MatrxDataTableEditConfig as w, type MatrxDataTableEmptyState as x, type MatrxDataTableExpandedDetailConfig as y, type MatrxDataTableFacetsConfig as z };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ai-matrx/design-system",
3
- "version": "0.34.0",
3
+ "version": "0.36.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",