@machinemetrics/mm-react-components 1.3.2 → 1.4.1

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 (57) hide show
  1. package/CHANGELOG.md +77 -0
  2. package/dist/App.d.ts.map +1 -1
  3. package/dist/components/ui/data-table/TableView.d.ts.map +1 -1
  4. package/dist/components/ui/data-table/cards/ResponsiveTable.d.ts +9 -0
  5. package/dist/components/ui/data-table/cards/ResponsiveTable.d.ts.map +1 -1
  6. package/dist/components/ui/data-table/columnTypes/createColumn.d.ts.map +1 -1
  7. package/dist/components/ui/data-table/columnTypes/selectionColumn.d.ts.map +1 -1
  8. package/dist/components/ui/data-table/index.d.ts +2 -2
  9. package/dist/components/ui/data-table/index.d.ts.map +1 -1
  10. package/dist/components/ui/data-table/metadata/ColumnRegistry.d.ts +7 -0
  11. package/dist/components/ui/data-table/metadata/ColumnRegistry.d.ts.map +1 -1
  12. package/dist/components/ui/data-table/parts/BatchActionsToolbar.d.ts +8 -3
  13. package/dist/components/ui/data-table/parts/BatchActionsToolbar.d.ts.map +1 -1
  14. package/dist/components/ui/data-table/parts/ColGroup.d.ts.map +1 -1
  15. package/dist/components/ui/data-table/parts/SortableHeader.d.ts +3 -1
  16. package/dist/components/ui/data-table/parts/SortableHeader.d.ts.map +1 -1
  17. package/dist/components/ui/data-table/parts/TableBody.d.ts.map +1 -1
  18. package/dist/components/ui/data-table/parts/TableHeader.d.ts +3 -1
  19. package/dist/components/ui/data-table/parts/TableHeader.d.ts.map +1 -1
  20. package/dist/components/ui/data-table/state/index.d.ts +1 -0
  21. package/dist/components/ui/data-table/state/index.d.ts.map +1 -1
  22. package/dist/components/ui/data-table/state/useContainerWidth.d.ts +10 -0
  23. package/dist/components/ui/data-table/state/useContainerWidth.d.ts.map +1 -0
  24. package/dist/components/ui/data-table/toolbar/DataTableToolbar.d.ts.map +1 -1
  25. package/dist/components/ui/data-table/toolbar/filters/FilterMenu.d.ts +10 -1
  26. package/dist/components/ui/data-table/toolbar/filters/FilterMenu.d.ts.map +1 -1
  27. package/dist/components/ui/data-table/types.d.ts +46 -0
  28. package/dist/components/ui/data-table/types.d.ts.map +1 -1
  29. package/dist/components/ui/data-table/useDragAndDrop.d.ts.map +1 -1
  30. package/dist/components/ui/data-table/utils.d.ts +13 -1
  31. package/dist/components/ui/data-table/utils.d.ts.map +1 -1
  32. package/dist/components/ui/dropdown-menu.d.ts +1 -0
  33. package/dist/components/ui/dropdown-menu.d.ts.map +1 -1
  34. package/dist/components/ui/dropzone/index.d.ts.map +1 -1
  35. package/dist/components/ui/file-grid/FileGrid.d.ts +17 -1
  36. package/dist/components/ui/file-grid/FileGrid.d.ts.map +1 -1
  37. package/dist/components/ui/select.d.ts +8 -0
  38. package/dist/components/ui/select.d.ts.map +1 -1
  39. package/dist/index.d.ts +2 -2
  40. package/dist/index.d.ts.map +1 -1
  41. package/dist/lib/mm-react-components.css +1 -1
  42. package/dist/mm-react-components.es.js +427 -428
  43. package/dist/mm-react-components.es.js.map +1 -1
  44. package/dist/mm-react-components.umd.js +1 -1
  45. package/dist/mm-react-components.umd.js.map +1 -1
  46. package/dist/preview/DataTableLimitationsPreview.d.ts +2 -0
  47. package/dist/preview/DataTableLimitationsPreview.d.ts.map +1 -0
  48. package/dist/preview/DataTablePreview.d.ts +1 -1
  49. package/dist/preview/DataTablePreview.d.ts.map +1 -1
  50. package/dist/preview/DropzonePreview.d.ts.map +1 -1
  51. package/dist/preview/FileGridPreview.d.ts +0 -4
  52. package/dist/preview/FileGridPreview.d.ts.map +1 -1
  53. package/dist/preview/JobDocsPreview.d.ts +11 -0
  54. package/dist/preview/JobDocsPreview.d.ts.map +1 -0
  55. package/dist/preview/SelectPreview.d.ts.map +1 -1
  56. package/dist/themes/carbide.css +51 -4
  57. package/package.json +1 -1
@@ -0,0 +1,2 @@
1
+ export default function DataTableLimitationsPreview(): import("react/jsx-runtime").JSX.Element;
2
+ //# sourceMappingURL=DataTableLimitationsPreview.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DataTableLimitationsPreview.d.ts","sourceRoot":"","sources":["../../src/preview/DataTableLimitationsPreview.tsx"],"names":[],"mappings":"AAqPA,MAAM,CAAC,OAAO,UAAU,2BAA2B,4CAelD"}
@@ -1,4 +1,4 @@
1
- export type Profile = 'basic' | 'knowledge-hub' | 'server-pagination';
1
+ export type Profile = 'basic' | 'knowledge-hub' | 'server-pagination' | 'job-docs';
2
2
  type DataTablePreviewProps = {
3
3
  profile?: Profile;
4
4
  devForceLoading?: boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"DataTablePreview.d.ts","sourceRoot":"","sources":["../../src/preview/DataTablePreview.tsx"],"names":[],"mappings":"AAoKA,MAAM,MAAM,OAAO,GAAG,OAAO,GAAG,eAAe,GAAG,mBAAmB,CAAC;AAEtE,KAAK,qBAAqB,GAAG;IAC3B,OAAO,CAAC,EAAE,OAAO,CAAC;IAElB,eAAe,CAAC,EAAE,OAAO,CAAC;IAE1B,aAAa,CAAC,EAAE,OAAO,CAAC;CACzB,CAAC;AAEF,MAAM,CAAC,OAAO,UAAU,gBAAgB,CAAC,EACvC,OAAO,EAAE,iBAAiB,EAC1B,eAAuB,EACvB,aAAqB,GACtB,EAAE,QAAQ,CAAC,qBAAqB,CAAC,2CA4OjC"}
1
+ {"version":3,"file":"DataTablePreview.d.ts","sourceRoot":"","sources":["../../src/preview/DataTablePreview.tsx"],"names":[],"mappings":"AAqKA,MAAM,MAAM,OAAO,GACf,OAAO,GACP,eAAe,GACf,mBAAmB,GACnB,UAAU,CAAC;AAEf,KAAK,qBAAqB,GAAG;IAC3B,OAAO,CAAC,EAAE,OAAO,CAAC;IAElB,eAAe,CAAC,EAAE,OAAO,CAAC;IAE1B,aAAa,CAAC,EAAE,OAAO,CAAC;CACzB,CAAC;AAEF,MAAM,CAAC,OAAO,UAAU,gBAAgB,CAAC,EACvC,OAAO,EAAE,iBAAiB,EAC1B,eAAuB,EACvB,aAAqB,GACtB,EAAE,QAAQ,CAAC,qBAAqB,CAAC,2CAgPjC"}
@@ -1 +1 @@
1
- {"version":3,"file":"DropzonePreview.d.ts","sourceRoot":"","sources":["../../src/preview/DropzonePreview.tsx"],"names":[],"mappings":"AAQA,MAAM,CAAC,OAAO,UAAU,eAAe,4CAuEtC"}
1
+ {"version":3,"file":"DropzonePreview.d.ts","sourceRoot":"","sources":["../../src/preview/DropzonePreview.tsx"],"names":[],"mappings":"AASA,MAAM,CAAC,OAAO,UAAU,eAAe,4CAoGtC"}
@@ -1,6 +1,2 @@
1
- /**
2
- * Focus: `FileGrid` bound to the same TanStack `table` as `DataTable` via
3
- * `useTableController`. See FileThumbnail / FileIcon previews for tile variants.
4
- */
5
1
  export default function FileGridPreview(): import("react/jsx-runtime").JSX.Element;
6
2
  //# sourceMappingURL=FileGridPreview.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"FileGridPreview.d.ts","sourceRoot":"","sources":["../../src/preview/FileGridPreview.tsx"],"names":[],"mappings":"AAkGA;;;GAGG;AACH,MAAM,CAAC,OAAO,UAAU,eAAe,4CA0DtC"}
1
+ {"version":3,"file":"FileGridPreview.d.ts","sourceRoot":"","sources":["../../src/preview/FileGridPreview.tsx"],"names":[],"mappings":"AA4KA,MAAM,CAAC,OAAO,UAAU,eAAe,4CAuItC"}
@@ -0,0 +1,11 @@
1
+ /**
2
+ * The Job Docs table itself — reused by the standalone preview and the Data
3
+ * Table preview's "Job Docs" tab. Accepts the preview dev controls so the tab's
4
+ * loading/empty selector drives it like the other profiles.
5
+ */
6
+ export declare function JobDocsTable({ loading, forceEmpty, }: Readonly<{
7
+ loading?: boolean;
8
+ forceEmpty?: boolean;
9
+ }>): import("react/jsx-runtime").JSX.Element;
10
+ export default function JobDocsPreview(): import("react/jsx-runtime").JSX.Element;
11
+ //# sourceMappingURL=JobDocsPreview.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"JobDocsPreview.d.ts","sourceRoot":"","sources":["../../src/preview/JobDocsPreview.tsx"],"names":[],"mappings":"AAgGA;;;;GAIG;AACH,wBAAgB,YAAY,CAAC,EAC3B,OAAe,EACf,UAAkB,GACnB,EAAE,QAAQ,CAAC;IAAE,OAAO,CAAC,EAAE,OAAO,CAAC;IAAC,UAAU,CAAC,EAAE,OAAO,CAAA;CAAE,CAAC,2CA8JvD;AAED,MAAM,CAAC,OAAO,UAAU,cAAc,4CAgBrC"}
@@ -1 +1 @@
1
- {"version":3,"file":"SelectPreview.d.ts","sourceRoot":"","sources":["../../src/preview/SelectPreview.tsx"],"names":[],"mappings":"AAUA,MAAM,CAAC,OAAO,UAAU,aAAa,4CAiCpC"}
1
+ {"version":3,"file":"SelectPreview.d.ts","sourceRoot":"","sources":["../../src/preview/SelectPreview.tsx"],"names":[],"mappings":"AAUA,MAAM,CAAC,OAAO,UAAU,aAAa,4CA8CpC"}
@@ -992,6 +992,27 @@
992
992
  .carbide.dark [data-slot='select-trigger']:where(:not(:disabled)):hover {
993
993
  background-color: var(--input-surface-hover-bg);
994
994
  }
995
+ /* Ghost variant: transparent, borderless trigger for inline/row contexts
996
+ (e.g. table row controls). Rest-state reset only — the rule ties the base
997
+ hover rules on specificity, so hover is re-asserted below; focus-visible
998
+ rules follow in source order and still win their tie. */
999
+ .carbide [data-slot='select-trigger'][data-variant='ghost'] {
1000
+ background-color: transparent;
1001
+ border-color: transparent;
1002
+ box-shadow: none;
1003
+ }
1004
+ .carbide
1005
+ [data-slot='select-trigger'][data-variant='ghost']:where(
1006
+ :not(:disabled)
1007
+ ):hover {
1008
+ background-color: var(--accent);
1009
+ }
1010
+ .carbide.dark
1011
+ [data-slot='select-trigger'][data-variant='ghost']:where(
1012
+ :not(:disabled)
1013
+ ):hover {
1014
+ background-color: var(--input-surface-hover-bg);
1015
+ }
995
1016
  .carbide [data-slot='select-trigger']:focus-visible {
996
1017
  outline: none;
997
1018
  border-color: var(--ring);
@@ -1682,11 +1703,37 @@ tr
1682
1703
  /* =============================
1683
1704
  DATA TABLE: ALIGNMENT BASELINE FIX
1684
1705
  ============================= */
1685
- /* Unify left-aligned body cells to the sortable-header baseline (0.25rem) */
1706
+ /*
1707
+ * Unify body cells to the sortable-header baseline (0.25rem). Applies to every
1708
+ * data-table cell (matched by `[data-col-id]`), NOT only `.text-left` ones —
1709
+ * columns built from a plain `ColumnDef` (no `meta.align`) carry no alignment
1710
+ * class, so requiring `.text-left` left their body content at `px-4` (16px)
1711
+ * while the header was pinned to 0.25rem, reading misaligned. `select`/`actions`
1712
+ * keep their own fixed layout. Scoped to left/default-aligned columns
1713
+ * (`:not(.text-right):not(.text-center)`) so centered/right-aligned columns keep
1714
+ * symmetric padding — a plain `ColumnDef` carries no alignment class and is
1715
+ * treated as left, which is the case this targets.
1716
+ */
1686
1717
  .carbide
1687
- td.text-left[data-col-id]:not([data-col-id='select']):not(
1688
- [data-col-id='actions']
1689
- ) {
1718
+ td[data-col-id]:not([data-col-id='select']):not([data-col-id='actions']):not(
1719
+ .text-right
1720
+ ):not(.text-center) {
1721
+ padding-left: 0.25rem !important;
1722
+ }
1723
+
1724
+ /*
1725
+ * Pin the data-table header's left inset to the same 0.25rem baseline. The
1726
+ * shared TableHead ships `px-2` (8px), but body cells are unified to 0.25rem
1727
+ * (4px) above, so left-aligned header labels read 4px off from their column's
1728
+ * body content. Scoped to `[data-col-id]` so it only affects data-table headers
1729
+ * (select/actions headers carry no data-col-id and basic <Table> headers are
1730
+ * untouched). The ghost-button (-ml-3 px-3) and non-button label rules both net
1731
+ * to this inset, so the header label now shares the body's left edge. Scoped to
1732
+ * left/default-aligned headers so centered/right-aligned headers keep symmetric
1733
+ * insets (matching the body rule above).
1734
+ */
1735
+ .carbide
1736
+ th[data-slot='table-head'][data-col-id]:not(.text-right):not(.text-center) {
1690
1737
  padding-left: 0.25rem !important;
1691
1738
  }
1692
1739
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@machinemetrics/mm-react-components",
3
- "version": "1.3.2",
3
+ "version": "1.4.1",
4
4
  "description": "Industrial-grade React components for manufacturing applications",
5
5
  "keywords": [
6
6
  "react",