@machinemetrics/mm-react-components 0.2.3-18 → 0.2.3-19

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.
@@ -0,0 +1,2 @@
1
+ export default function DatePickerPreview(): import("react/jsx-runtime").JSX.Element;
2
+ //# sourceMappingURL=DatePickerPreview.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DatePickerPreview.d.ts","sourceRoot":"","sources":["../../src/preview/DatePickerPreview.tsx"],"names":[],"mappings":"AAGA,MAAM,CAAC,OAAO,UAAU,iBAAiB,4CA6ExC"}
@@ -1 +1 @@
1
- {"version":3,"file":"SpinnerPreview.d.ts","sourceRoot":"","sources":["../../src/preview/SpinnerPreview.tsx"],"names":[],"mappings":"AAIA,MAAM,CAAC,OAAO,UAAU,cAAc,4CAqFrC"}
1
+ {"version":3,"file":"SpinnerPreview.d.ts","sourceRoot":"","sources":["../../src/preview/SpinnerPreview.tsx"],"names":[],"mappings":"AAIA,MAAM,CAAC,OAAO,UAAU,cAAc,4CAuGrC"}
@@ -380,6 +380,10 @@
380
380
  --button-destructive-hover-bg: var(--red-700);
381
381
  --button-outline-bg: var(--bg-input);
382
382
 
383
+ /* Spinner tokens (Carbide scope) */
384
+ --spinner-foreground: var(--indigo-600);
385
+ --spinner-background: var(--grey-300);
386
+
383
387
  /* Table action trigger hover (distinct from row hover) */
384
388
  --table-action-hover-bg: var(--grey-300);
385
389
 
@@ -405,60 +409,13 @@
405
409
  /* =============================
406
410
  KNOWLEDGE HUB STATUS BADGES
407
411
  ============================= */
408
- .carbide .mmc-khub [data-slot='badge'] {
409
- border-radius: 9999px;
410
- }
411
-
412
- .carbide .mmc-khub [data-slot='badge'][data-status='Waiting'] {
413
- background-color: var(--indigo-200);
414
- color: var(--grey-700);
415
- border-color: var(--indigo-200);
416
- }
417
-
418
- .carbide .mmc-khub [data-slot='badge'][data-status='Uploading'],
419
- .carbide .mmc-khub [data-slot='badge'][data-status='Processing'] {
420
- background-color: transparent;
421
- color: var(--grey-700);
422
- border-color: transparent;
423
- padding-inline: 0;
424
- }
425
-
426
- .carbide .mmc-khub [data-slot='badge'][data-status='Failed'],
427
- .carbide .mmc-khub [data-slot='badge'][data-status='Upload Failed'],
428
- .carbide .mmc-khub [data-slot='badge'][data-status='Processing Failed'] {
429
- background-color: var(--red-200);
430
- color: var(--grey-700);
431
- border-color: var(--red-200);
432
- }
433
-
412
+ /* Keep intentional lighter tone for Processed in Knowledge Hub */
434
413
  .carbide .mmc-khub [data-slot='badge'][data-status='Processed'] {
435
414
  background-color: var(--grey-200);
436
415
  color: var(--grey-500);
437
416
  border-color: var(--grey-200);
438
417
  }
439
418
 
440
- .carbide.dark .mmc-khub [data-slot='badge'][data-status='Waiting'] {
441
- background-color: var(--indigo-700);
442
- color: var(--grey-00);
443
- border-color: var(--indigo-700);
444
- }
445
-
446
- .carbide.dark .mmc-khub [data-slot='badge'][data-status='Uploading'],
447
- .carbide.dark .mmc-khub [data-slot='badge'][data-status='Processing'] {
448
- background-color: transparent;
449
- color: var(--grey-200);
450
- border-color: transparent;
451
- padding-inline: 0;
452
- }
453
-
454
- .carbide.dark .mmc-khub [data-slot='badge'][data-status='Failed'],
455
- .carbide.dark .mmc-khub [data-slot='badge'][data-status='Upload Failed'],
456
- .carbide.dark .mmc-khub [data-slot='badge'][data-status='Processing Failed'] {
457
- background-color: var(--red-700);
458
- color: var(--grey-00);
459
- border-color: var(--red-700);
460
- }
461
-
462
419
  .carbide.dark .mmc-khub [data-slot='badge'][data-status='Processed'] {
463
420
  background-color: var(--grey-750);
464
421
  color: var(--grey-300);
@@ -606,6 +563,10 @@
606
563
  --button-destructive-hover-bg: var(--red-500);
607
564
  --button-outline-bg: color-mix(in srgb, var(--bg-input) 30%, transparent);
608
565
 
566
+ /* Spinner tokens (Carbide scope, dark) */
567
+ --spinner-foreground: var(--grey-00);
568
+ --spinner-background: color-mix(in srgb, var(--grey-00) 25%, transparent);
569
+
609
570
  /* Table action trigger hover (distinct from row hover) */
610
571
  --table-action-hover-bg: var(--grey-800);
611
572
  }
@@ -1025,6 +986,50 @@
1025
986
  border-color: var(--border);
1026
987
  }
1027
988
 
989
+ /* Data Table: Row actions trigger visibility */
990
+ tr td[data-col-id='actions'] .mmc-table-action-trigger,
991
+ tr td[data-col-id='actions'] [data-slot='table-action-trigger'] {
992
+ opacity: 0;
993
+ pointer-events: none;
994
+ transition: opacity 0.15s ease-in-out;
995
+ }
996
+ /* Visible when row is hovered, trigger is keyboard-focused, menu is open, or row flagged */
997
+ tr:hover td[data-col-id='actions'] .mmc-table-action-trigger,
998
+ tr:hover td[data-col-id='actions'] [data-slot='table-action-trigger'],
999
+ tr td[data-col-id='actions'] .mmc-table-action-trigger:focus-visible,
1000
+ tr td[data-col-id='actions'] [data-slot='table-action-trigger']:focus-visible,
1001
+ tr td[data-col-id='actions'] .mmc-table-action-trigger[aria-expanded='true'],
1002
+ tr
1003
+ td[data-col-id='actions']
1004
+ [data-slot='table-action-trigger'][aria-expanded='true'],
1005
+ tr[data-action-visible='true']
1006
+ td[data-col-id='actions']
1007
+ .mmc-table-action-trigger,
1008
+ tr[data-action-visible='true']
1009
+ td[data-col-id='actions']
1010
+ [data-slot='table-action-trigger'] {
1011
+ opacity: 1;
1012
+ pointer-events: auto;
1013
+ }
1014
+
1015
+ /* Keep trigger visible and indicate active when menu is open */
1016
+ tr td[data-col-id='actions'] .mmc-table-action-trigger[data-state='open'],
1017
+ tr
1018
+ td[data-col-id='actions']
1019
+ [data-slot='table-action-trigger'][data-state='open'] {
1020
+ opacity: 1;
1021
+ pointer-events: auto;
1022
+ }
1023
+
1024
+ .carbide [data-slot='table-action-trigger'][data-state='open'],
1025
+ .carbide [data-slot='table-action-trigger'][aria-expanded='true'] {
1026
+ background-color: var(--table-action-hover-bg);
1027
+ }
1028
+ .carbide.dark [data-slot='table-action-trigger'][data-state='open'],
1029
+ .carbide.dark [data-slot='table-action-trigger'][aria-expanded='true'] {
1030
+ background-color: var(--table-action-hover-bg);
1031
+ }
1032
+
1028
1033
  /* =============================
1029
1034
  TABS
1030
1035
  ============================= */
@@ -1090,6 +1095,63 @@
1090
1095
  color: var(--destructive-foreground) !important;
1091
1096
  }
1092
1097
 
1098
+ /* =============================
1099
+ SPINNER (SEMANTIC HOOK)
1100
+ ============================= */
1101
+ .carbide [data-slot='spinner'] {
1102
+ color: var(--spinner-foreground);
1103
+ }
1104
+ .carbide [data-slot='spinner'] circle:first-of-type {
1105
+ /* track color */
1106
+ stroke: var(--spinner-background);
1107
+ }
1108
+ .carbide [data-slot='spinner'] circle:last-of-type {
1109
+ /* arc color sync with current color */
1110
+ stroke: currentColor;
1111
+ }
1112
+
1113
+ /* Contextual overrides when inside buttons */
1114
+ .carbide [data-slot='button'] [data-slot='spinner'] {
1115
+ /* Default button uses primary bg → use on-dark pair for contrast */
1116
+ --spinner-foreground: var(--primary-foreground);
1117
+ --spinner-background: color-mix(
1118
+ in srgb,
1119
+ var(--primary-foreground) 25%,
1120
+ transparent
1121
+ );
1122
+ }
1123
+ .carbide [data-slot='button'][data-variant='outline'] [data-slot='spinner'],
1124
+ .carbide [data-slot='button'][data-variant='secondary'] [data-slot='spinner'],
1125
+ .carbide [data-slot='button'][data-variant='ghost'] [data-slot='spinner'],
1126
+ .carbide [data-slot='button'][data-variant='link'] [data-slot='spinner'] {
1127
+ /* Light backgrounds → use on-light pair */
1128
+ --spinner-foreground: var(--indigo-600);
1129
+ --spinner-background: var(--grey-300);
1130
+ }
1131
+
1132
+ /* In dark theme, outline/secondary/ghost/link often sit on dark surfaces → use on-dark pair */
1133
+ .carbide.dark
1134
+ [data-slot='button'][data-variant='outline']
1135
+ [data-slot='spinner'],
1136
+ .carbide.dark
1137
+ [data-slot='button'][data-variant='secondary']
1138
+ [data-slot='spinner'],
1139
+ .carbide.dark [data-slot='button'][data-variant='ghost'] [data-slot='spinner'],
1140
+ .carbide.dark [data-slot='button'][data-variant='link'] [data-slot='spinner'] {
1141
+ --spinner-foreground: var(--grey-00);
1142
+ --spinner-background: color-mix(in srgb, var(--grey-00) 25%, transparent);
1143
+ }
1144
+
1145
+ /* Optional forcing utilities */
1146
+ .carbide .mmc-spinner--on-dark {
1147
+ --spinner-foreground: var(--grey-00);
1148
+ --spinner-background: color-mix(in srgb, var(--grey-00) 25%, transparent);
1149
+ }
1150
+ .carbide .mmc-spinner--on-light {
1151
+ --spinner-foreground: var(--indigo-600);
1152
+ --spinner-background: var(--grey-300);
1153
+ }
1154
+
1093
1155
  /* Input Border Utility */
1094
1156
  .carbide .border-input,
1095
1157
  .carbide.dark .border-input {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@machinemetrics/mm-react-components",
3
- "version": "0.2.3-18",
3
+ "version": "0.2.3-19",
4
4
  "description": "Industrial-grade React components for manufacturing applications",
5
5
  "keywords": [
6
6
  "react",