@morscherlab/mint-sdk 1.4.0-beta.1 → 1.4.0-beta.11

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 (266) hide show
  1. package/dist/{ActionMenu-CScINahU.js → AlertBox-B2Bgr3ei.js} +40 -209
  2. package/dist/AlertBox-B2Bgr3ei.js.map +1 -0
  3. package/dist/{AppSidebar-BmiiPfz9.js → AppSidebar-mvm--GxN.js} +161 -110
  4. package/dist/AppSidebar-mvm--GxN.js.map +1 -0
  5. package/dist/{ConfirmDialog-CJ7hqYUP.js → ConfirmDialog-nbJj51is.js} +2 -2
  6. package/dist/{ConfirmDialog-CJ7hqYUP.js.map → ConfirmDialog-nbJj51is.js.map} +1 -1
  7. package/dist/ExperimentPopover-5T1fAq2L.js +337 -0
  8. package/dist/ExperimentPopover-5T1fAq2L.js.map +1 -0
  9. package/dist/{ExperimentSelectorModal-D-9z7cNx.js → ExperimentSelectorModal-65peG4Up.js} +198 -181
  10. package/dist/ExperimentSelectorModal-65peG4Up.js.map +1 -0
  11. package/dist/{SegmentedControl-DERBN-Xd.js → SegmentedControl-BtnnjWzs.js} +2 -2
  12. package/dist/{SegmentedControl-DERBN-Xd.js.map → SegmentedControl-BtnnjWzs.js.map} +1 -1
  13. package/dist/{SettingsModal-CSLE31yg.js → SettingsModal-DO3IZ7qz.js} +9 -9
  14. package/dist/SettingsModal-DO3IZ7qz.js.map +1 -0
  15. package/dist/__tests__/styles/v2AuditRules.test.d.ts +1 -0
  16. package/dist/components/AppSidebar.vue.d.ts +1 -1
  17. package/dist/components/ArtifactSaveDialog.vue.d.ts +9 -1
  18. package/dist/components/AuditTrail.vue.d.ts +1 -1
  19. package/dist/components/BaseSelect.vue.d.ts +2 -2
  20. package/dist/components/ChartContainer.vue.d.ts +2 -0
  21. package/dist/components/DatePicker.vue.d.ts +1 -1
  22. package/dist/components/ExperimentPopover.vue.d.ts +18 -0
  23. package/dist/components/ExperimentSelectorModal.vue.d.ts +0 -4
  24. package/dist/components/FilePicker.vue.d.ts +1 -1
  25. package/dist/components/FileUploader.vue.d.ts +2 -2
  26. package/dist/components/PluginIcon.vue.d.ts +2 -2
  27. package/dist/components/SampleSelector.vue.d.ts +6 -6
  28. package/dist/components/SequenceProgressBar.vue.d.ts +3 -0
  29. package/dist/components/StepWizard.vue.d.ts +3 -0
  30. package/dist/components/internal/AutoGroupModalInternal.vue.d.ts +1 -1
  31. package/dist/components/internal/DatePickerTimeInternal.vue.d.ts +1 -1
  32. package/dist/components/internal/ResourcePickerListInternal.vue.d.ts +2 -7
  33. package/dist/components/internal/SelectMultipleInternal.vue.d.ts +4 -0
  34. package/dist/composables/createClient.d.ts +2 -0
  35. package/dist/composables/index.d.ts +1 -0
  36. package/dist/composables/pluginIdentity.d.ts +24 -0
  37. package/dist/composables/pluginWorkspaceModel.d.ts +2 -2
  38. package/dist/composables/useAppExperiment.d.ts +8 -0
  39. package/dist/composables/useCalendarGrid.d.ts +1 -1
  40. package/dist/composables/useExperimentSelector.d.ts +6 -2
  41. package/dist/composables/usePlatform.d.ts +1 -0
  42. package/dist/{controlSchemaModel-CP5-_nAj.js → controlSchemaModel-B8CTXagP.js} +2 -2
  43. package/dist/{controlSchemaModel-CP5-_nAj.js.map → controlSchemaModel-B8CTXagP.js.map} +1 -1
  44. package/dist/{data-C2PwI_dn.js → data-CgILxDLW.js} +178 -124
  45. package/dist/data-CgILxDLW.js.map +1 -0
  46. package/dist/data.js +8 -8
  47. package/dist/{experimentStatus-BZmU4czV.js → experimentStatus-Cqp6qNrR.js} +3 -3
  48. package/dist/{experimentStatus-BZmU4czV.js.map → experimentStatus-Cqp6qNrR.js.map} +1 -1
  49. package/dist/index.js +19 -19
  50. package/dist/{install-DAID6c2-.js → install-mB8-IyvO.js} +15 -14
  51. package/dist/{install-DAID6c2-.js.map → install-mB8-IyvO.js.map} +1 -1
  52. package/dist/install.js +1 -1
  53. package/dist/{lab-DLwRl_Ql.js → lab-D5bIX426.js} +128 -147
  54. package/dist/lab-D5bIX426.js.map +1 -0
  55. package/dist/lab.js +4 -3
  56. package/dist/{records-BzTcxekG.js → records-B6gpM_3e.js} +472 -274
  57. package/dist/records-B6gpM_3e.js.map +1 -0
  58. package/dist/{runtime-D6gVat6r.js → runtime-D7vKpfbF.js} +27 -31
  59. package/dist/runtime-D7vKpfbF.js.map +1 -0
  60. package/dist/runtime.js +6 -6
  61. package/dist/{shell-5ju97nOS.js → shell-CywENwBT.js} +5 -5
  62. package/dist/{shell-5ju97nOS.js.map → shell-CywENwBT.js.map} +1 -1
  63. package/dist/shell.js +5 -5
  64. package/dist/styles.css +1644 -1688
  65. package/dist/types/componentWorkflowTypes.d.ts +2 -0
  66. package/dist/types/generated/platformContext.d.ts +1 -0
  67. package/dist/types/generated-ui.d.ts +4 -0
  68. package/dist/{BaseModal-DfRIuVoj.js → useDropdownState-8yWMu-7_.js} +60 -2
  69. package/dist/useDropdownState-8yWMu-7_.js.map +1 -0
  70. package/dist/{useExperimentSamples-CxcnxZ8h.js → useExperimentSamples-DHnxKFAF.js} +3 -3
  71. package/dist/{useExperimentSamples-CxcnxZ8h.js.map → useExperimentSamples-DHnxKFAF.js.map} +1 -1
  72. package/dist/{useListReorder-CcbEYxX-.js → useListReorder-BitdUhxn.js} +109 -277
  73. package/dist/useListReorder-BitdUhxn.js.map +1 -0
  74. package/dist/{useRackEditor-BD5NIo5s.js → useRackEditor-Q8xO-cCy.js} +72 -58
  75. package/dist/useRackEditor-Q8xO-cCy.js.map +1 -0
  76. package/dist/{useRealtime-PalKue84.js → useRealtime-C3iy9QkU.js} +7 -4
  77. package/dist/useRealtime-C3iy9QkU.js.map +1 -0
  78. package/dist/useRequest-D506eHi8.js +244 -0
  79. package/dist/useRequest-D506eHi8.js.map +1 -0
  80. package/dist/utils/time.d.ts +7 -0
  81. package/package.json +1 -1
  82. package/src/__tests__/components/AppTopBar.test.ts +51 -2
  83. package/src/__tests__/components/AppTopBarPillNav.test.ts +35 -0
  84. package/src/__tests__/components/ArtifactSaveDialog.test.ts +78 -0
  85. package/src/__tests__/components/BaseSelect.multiple.test.ts +87 -32
  86. package/src/__tests__/components/BaseSelect.test.ts +2 -1
  87. package/src/__tests__/components/BatchProgressList.test.ts +16 -0
  88. package/src/__tests__/components/CalendarGridPanel.test.ts +2 -2
  89. package/src/__tests__/components/ChartContainer.test.ts +11 -0
  90. package/src/__tests__/components/ChemicalFormula.test.ts +6 -3
  91. package/src/__tests__/components/DatePicker.datetime.test.ts +6 -0
  92. package/src/__tests__/components/DatePicker.test.ts +21 -0
  93. package/src/__tests__/components/DatePicker.time.test.ts +2 -2
  94. package/src/__tests__/components/EmptyState.test.ts +1 -1
  95. package/src/__tests__/components/ExperimentPopover.test.ts +125 -16
  96. package/src/__tests__/components/ExperimentSelectorModal.test.ts +119 -13
  97. package/src/__tests__/components/GeneratedPluginView.test.ts +22 -1
  98. package/src/__tests__/components/InstrumentStateBadge.test.ts +4 -4
  99. package/src/__tests__/components/PluginWorkspaceView.test.ts +7 -0
  100. package/src/__tests__/components/ResourcePickerListInternal.test.ts +0 -20
  101. package/src/__tests__/components/SampleSelector.test.ts +13 -8
  102. package/src/__tests__/components/SequenceProgressBar.test.ts +12 -0
  103. package/src/__tests__/components/StepWizard.test.ts +11 -0
  104. package/src/__tests__/components/WellPlate.decoration.test.ts +11 -4
  105. package/src/__tests__/components/deprecationTags.test.ts +1 -1
  106. package/src/__tests__/composables/useAppExperiment.test.ts +27 -1
  107. package/src/__tests__/composables/useCalendarGrid.test.ts +4 -2
  108. package/src/__tests__/composables/useExperimentSelector.test.ts +111 -0
  109. package/src/__tests__/styles/baseControlsRules.test.ts +6 -2
  110. package/src/__tests__/styles/controlRefreshRules.test.ts +0 -6
  111. package/src/__tests__/styles/cssTokens.test.ts +2 -2
  112. package/src/__tests__/styles/menusShellRefresh.test.ts +14 -10
  113. package/src/__tests__/styles/v2AuditRules.test.ts +96 -0
  114. package/src/__tests__/utils/plotlyTemplate.test.ts +4 -4
  115. package/src/__tests__/utils/time.test.ts +18 -1
  116. package/src/components/AdductText.story.vue +7 -0
  117. package/src/components/AdductText.vue +1 -1
  118. package/src/components/AlertBox.story.vue +2 -2
  119. package/src/components/AlertBox.vue +18 -16
  120. package/src/components/AppSidebar.story.vue +0 -28
  121. package/src/components/AppTopBar.story.vue +47 -12
  122. package/src/components/AppTopBar.vue +118 -114
  123. package/src/components/ArtifactSaveDialog.story.vue +23 -0
  124. package/src/components/ArtifactSaveDialog.vue +102 -12
  125. package/src/components/AuditTrail.story.vue +2 -1
  126. package/src/components/AuditTrail.vue +2 -21
  127. package/src/components/Avatar.vue +10 -14
  128. package/src/components/BaseSelect.multiple.story.vue +13 -2
  129. package/src/components/BaseSelect.vue +4 -3
  130. package/src/components/BatchProgressList.vue +35 -25
  131. package/src/components/ChartContainer.story.vue +2 -1
  132. package/src/components/ChartContainer.vue +8 -6
  133. package/src/components/ConfirmDialog.story.vue +1 -1
  134. package/src/components/EmptyState.vue +1 -1
  135. package/src/components/ExperimentPopover.story.vue +165 -53
  136. package/src/components/ExperimentPopover.vue +169 -187
  137. package/src/components/ExperimentSelectorModal.story.vue +40 -36
  138. package/src/components/ExperimentSelectorModal.vue +124 -110
  139. package/src/components/FormField.story.vue +8 -48
  140. package/src/components/GeneratedPluginView.vue +7 -1
  141. package/src/components/GeneratedResultRenderer.vue +3 -4
  142. package/src/components/InstrumentStateBadge.vue +1 -1
  143. package/src/components/JobsStatusTray.vue +1 -1
  144. package/src/components/LoadingSpinner.vue +1 -1
  145. package/src/components/NumberInput.vue +3 -6
  146. package/src/components/PluginIcon.story.vue +2 -10
  147. package/src/components/PluginIcon.vue +2 -2
  148. package/src/components/PluginWorkspaceView.story.vue +1 -1
  149. package/src/components/RuntimeUpdateNotice.vue +1 -1
  150. package/src/components/SampleSelector.story.vue +1 -1
  151. package/src/components/SampleSelector.vue +27 -37
  152. package/src/components/SampleSelectorGroupNode.vue +1 -1
  153. package/src/components/SectionCard.story.vue +2 -2
  154. package/src/components/SequenceProgressBar.story.vue +9 -0
  155. package/src/components/SequenceProgressBar.vue +6 -1
  156. package/src/components/SettingsModal.schema.ts +1 -1
  157. package/src/components/SettingsModal.vue +2 -2
  158. package/src/components/SmartGroupFieldRecipe.story.vue +1 -1
  159. package/src/components/SmartGroupManual.story.vue +1 -1
  160. package/src/components/StepWizard.story.vue +33 -0
  161. package/src/components/StepWizard.vue +8 -1
  162. package/src/components/WellPlate.story.vue +3 -1
  163. package/src/components/WellPlate.vue +7 -0
  164. package/src/components/internal/AppTopBarPillNavInternal.vue +33 -2
  165. package/src/components/internal/DatePickerDateInternal.vue +16 -40
  166. package/src/components/internal/DatePickerDateTimeInternal.vue +3 -13
  167. package/src/components/internal/DatePickerTimeInternal.vue +5 -8
  168. package/src/components/internal/ResourcePickerListInternal.vue +45 -85
  169. package/src/components/internal/SelectMultipleInternal.vue +182 -65
  170. package/src/components/internal/SelectSearchableInternal.vue +2 -3
  171. package/src/composables/createClient.ts +2 -0
  172. package/src/composables/index.ts +1 -0
  173. package/src/composables/pluginIdentity.ts +31 -0
  174. package/src/composables/pluginWorkspaceModel.ts +2 -2
  175. package/src/composables/useAppExperiment.ts +20 -0
  176. package/src/composables/useCalendarGrid.ts +4 -3
  177. package/src/composables/useExperimentSelector.ts +77 -31
  178. package/src/composables/usePluginWorkspace.ts +1 -1
  179. package/src/styles/components/adduct-text.css +13 -5
  180. package/src/styles/components/alert-box.css +39 -58
  181. package/src/styles/components/app-layout.css +7 -5
  182. package/src/styles/components/app-page-selector.css +3 -1
  183. package/src/styles/components/app-pill-nav.css +11 -12
  184. package/src/styles/components/app-sidebar.css +9 -18
  185. package/src/styles/components/app-top-bar.css +57 -55
  186. package/src/styles/components/artifact-save-dialog.css +153 -2
  187. package/src/styles/components/audit-trail.css +16 -19
  188. package/src/styles/components/avatar.css +6 -4
  189. package/src/styles/components/batch-progress-list.css +38 -36
  190. package/src/styles/components/button.css +28 -59
  191. package/src/styles/components/calendar.css +12 -12
  192. package/src/styles/components/chart-container.css +34 -23
  193. package/src/styles/components/checkbox.css +2 -12
  194. package/src/styles/components/collapsible-card.css +27 -29
  195. package/src/styles/components/confirm-dialog.css +13 -14
  196. package/src/styles/components/dataframe.css +13 -5
  197. package/src/styles/components/date-picker.css +80 -92
  198. package/src/styles/components/datetime-picker.css +31 -43
  199. package/src/styles/components/divider.css +20 -20
  200. package/src/styles/components/dose-calculator.css +3 -3
  201. package/src/styles/components/empty-state.css +20 -17
  202. package/src/styles/components/experiment-code-badge.css +2 -0
  203. package/src/styles/components/experiment-popover.css +174 -329
  204. package/src/styles/components/experiment-selector-modal.css +75 -56
  205. package/src/styles/components/file-picker.css +3 -3
  206. package/src/styles/components/file-uploader.css +38 -49
  207. package/src/styles/components/form-builder.css +3 -3
  208. package/src/styles/components/formula-input.css +1 -1
  209. package/src/styles/components/icon-button.css +18 -24
  210. package/src/styles/components/input.css +5 -4
  211. package/src/styles/components/instrument-monitor.css +13 -15
  212. package/src/styles/components/jobs-status-tray.css +31 -25
  213. package/src/styles/components/modal.css +4 -6
  214. package/src/styles/components/molecule-input.css +2 -2
  215. package/src/styles/components/multi-select.css +65 -117
  216. package/src/styles/components/number-input.css +26 -19
  217. package/src/styles/components/pill.css +3 -2
  218. package/src/styles/components/plate-editor.css +0 -1
  219. package/src/styles/components/plugin-icon.css +26 -23
  220. package/src/styles/components/popover.css +2 -2
  221. package/src/styles/components/presence-avatars.css +1 -1
  222. package/src/styles/components/progress-bar.css +3 -3
  223. package/src/styles/components/protocol-step-editor.css +1 -3
  224. package/src/styles/components/resource-card.css +2 -2
  225. package/src/styles/components/resource-picker-list.css +6 -57
  226. package/src/styles/components/sample-hierarchy-tree.css +4 -4
  227. package/src/styles/components/sample-selector.css +95 -79
  228. package/src/styles/components/schedule-calendar.css +8 -8
  229. package/src/styles/components/searchable-select.css +12 -12
  230. package/src/styles/components/section-card.css +30 -47
  231. package/src/styles/components/segmented-control.css +18 -15
  232. package/src/styles/components/select.css +3 -3
  233. package/src/styles/components/sequence-input.css +2 -2
  234. package/src/styles/components/sequence-progress-bar.css +17 -8
  235. package/src/styles/components/settings-modal.css +7 -2
  236. package/src/styles/components/smart-group.css +18 -18
  237. package/src/styles/components/step-wizard.css +52 -16
  238. package/src/styles/components/tabs.css +2 -2
  239. package/src/styles/components/textarea.css +3 -3
  240. package/src/styles/components/time-picker.css +36 -21
  241. package/src/styles/components/toast.css +12 -10
  242. package/src/styles/components/toggle.css +1 -11
  243. package/src/styles/components/tooltip.css +10 -9
  244. package/src/styles/components/unit-input.css +8 -7
  245. package/src/styles/components/well-plate.css +9 -2
  246. package/src/styles/variables.css +118 -77
  247. package/src/types/componentWorkflowTypes.ts +2 -0
  248. package/src/types/generated/platformContext.ts +1 -0
  249. package/src/types/generated-ui.ts +4 -0
  250. package/src/utils/time.ts +21 -0
  251. package/dist/ActionMenu-CScINahU.js.map +0 -1
  252. package/dist/AppSidebar-BmiiPfz9.js.map +0 -1
  253. package/dist/BaseModal-DfRIuVoj.js.map +0 -1
  254. package/dist/ExperimentPopover-C4sGw-is.js +0 -359
  255. package/dist/ExperimentPopover-C4sGw-is.js.map +0 -1
  256. package/dist/ExperimentSelectorModal-D-9z7cNx.js.map +0 -1
  257. package/dist/SettingsModal-CSLE31yg.js.map +0 -1
  258. package/dist/data-C2PwI_dn.js.map +0 -1
  259. package/dist/lab-DLwRl_Ql.js.map +0 -1
  260. package/dist/records-BzTcxekG.js.map +0 -1
  261. package/dist/runtime-D6gVat6r.js.map +0 -1
  262. package/dist/useListReorder-CcbEYxX-.js.map +0 -1
  263. package/dist/useRackEditor-BD5NIo5s.js.map +0 -1
  264. package/dist/useRealtime-PalKue84.js.map +0 -1
  265. package/dist/useRequest-D5JDfsgZ.js +0 -76
  266. package/dist/useRequest-D5JDfsgZ.js.map +0 -1
@@ -50,17 +50,17 @@
50
50
 
51
51
  /* Size variants */
52
52
  .mint-textarea--sm {
53
- padding: 0.375rem 0.625rem;
53
+ padding: 0.25rem 0.625rem;
54
54
  font-size: 0.8125rem;
55
55
  }
56
56
 
57
57
  .mint-textarea--md {
58
- padding: 0.5rem 0.75rem;
58
+ padding: 0.375rem 0.75rem;
59
59
  font-size: 0.875rem;
60
60
  }
61
61
 
62
62
  .mint-textarea--lg {
63
- padding: 0.75rem 1rem;
63
+ padding: 0.5rem 1rem;
64
64
  font-size: 1rem;
65
65
  }
66
66
 
@@ -11,7 +11,7 @@
11
11
  position: relative;
12
12
  }
13
13
 
14
- /* Trigger follows the field rules (1e) + clock icon; value in mono tabular. */
14
+ /* Trigger follows the field rules (1e) + leading clock icon; value in mono tabular. */
15
15
  .mint-time-picker__input {
16
16
  width: 100%;
17
17
  border-radius: var(--radius-md);
@@ -20,10 +20,12 @@
20
20
  color: var(--text-primary);
21
21
  font-family: var(--font-mono);
22
22
  font-variant-numeric: tabular-nums;
23
- transition: border-color 150ms ease, box-shadow 150ms ease;
23
+ transition: border-color var(--mint-transition), box-shadow var(--mint-transition);
24
24
  cursor: pointer;
25
- padding-right: 2.5rem;
25
+ padding-left: 1.875rem;
26
+ padding-right: 2rem;
26
27
  box-sizing: border-box;
28
+ line-height: 1.25;
27
29
  }
28
30
 
29
31
  .mint-time-picker__input::placeholder {
@@ -42,18 +44,24 @@
42
44
  }
43
45
 
44
46
  .mint-time-picker__input--sm {
45
- padding: 0.375rem 0.625rem;
46
- font-size: 0.8125rem;
47
+ padding-top: 0.25rem;
48
+ padding-bottom: 0.25rem;
49
+ font-size: 0.75rem;
50
+ min-height: var(--form-height-sm);
47
51
  }
48
52
 
49
53
  .mint-time-picker__input--md {
50
- padding: 0.5rem 0.75rem;
51
- font-size: 0.8125rem;
54
+ padding-top: 0.375rem;
55
+ padding-bottom: 0.375rem;
56
+ font-size: 0.75rem;
57
+ min-height: var(--form-height-md);
52
58
  }
53
59
 
54
60
  .mint-time-picker__input--lg {
55
- padding: 0.75rem 1rem;
61
+ padding-top: 0.5rem;
62
+ padding-bottom: 0.5rem;
56
63
  font-size: 1rem;
64
+ min-height: var(--form-height-lg);
57
65
  }
58
66
 
59
67
  .mint-time-picker__input--error,
@@ -78,17 +86,17 @@
78
86
  position: absolute;
79
87
  top: 0;
80
88
  bottom: 0;
81
- right: 0;
89
+ left: 0;
82
90
  display: flex;
83
91
  align-items: center;
84
- padding-right: 0.75rem;
92
+ padding-left: 0.625rem;
85
93
  pointer-events: none;
86
94
  }
87
95
 
88
96
  .mint-time-picker__icon svg {
89
97
  width: 0.875rem;
90
98
  height: 0.875rem;
91
- color: var(--text-secondary);
99
+ color: var(--text-muted);
92
100
  }
93
101
 
94
102
  /* Clear button */
@@ -96,7 +104,7 @@
96
104
  position: absolute;
97
105
  top: 0;
98
106
  bottom: 0;
99
- right: 1.75rem;
107
+ right: 0.375rem;
100
108
  display: flex;
101
109
  align-items: center;
102
110
  padding: 0 0.25rem;
@@ -104,7 +112,7 @@
104
112
  border: none;
105
113
  cursor: pointer;
106
114
  color: var(--text-secondary);
107
- transition: color 150ms ease;
115
+ transition: color var(--mint-transition);
108
116
  }
109
117
 
110
118
  .mint-time-picker__clear-btn:hover {
@@ -116,18 +124,21 @@
116
124
  height: 0.875rem;
117
125
  }
118
126
 
119
- /* Dropdown — placement only; the look is .mint-popover. */
127
+ /* Dropdown — placement only; the look is .mint-popover. Spans the field width. */
120
128
  .mint-time-picker__dropdown {
121
129
  position: absolute;
122
130
  z-index: 50;
123
131
  margin-top: 0.25rem;
124
132
  width: 100%;
125
- min-width: 10rem;
133
+ min-width: 100%;
126
134
  overflow: hidden;
127
135
  }
128
136
 
129
- /* Slot list */
137
+ /* Slot list — one column that fills the dropdown. */
130
138
  .mint-time-picker__list {
139
+ display: flex;
140
+ flex-direction: column;
141
+ flex: 1;
131
142
  max-height: 16rem;
132
143
  overflow-y: auto;
133
144
  padding: 0;
@@ -135,8 +146,11 @@
135
146
  list-style: none;
136
147
  }
137
148
 
138
- /* Slot = menu item; the time is mono tabular. Selected = trailing check + primary text. */
149
+ /* Slot = 26px menu item; the time is mono tabular. Selected = soft primary fill + primary ink, no check. */
139
150
  .mint-time-picker__slot {
151
+ width: 100%;
152
+ min-height: 26px;
153
+ flex-shrink: 0;
140
154
  white-space: nowrap;
141
155
  }
142
156
 
@@ -146,12 +160,13 @@
146
160
  font-variant-numeric: tabular-nums;
147
161
  }
148
162
 
149
- .mint-time-picker__slot--active .mint-time-picker__slot-time {
150
- font-weight: 600;
163
+ /* 0,3,0 so the fill also wins over the menu-item hover / highlight (popover.css loads first). */
164
+ .mint-time-picker__list .mint-time-picker__slot--active.mint-menu-item {
165
+ background: var(--color-primary-soft);
151
166
  }
152
167
 
153
- .mint-time-picker__slot .mint-menu-item__check {
154
- margin-left: auto;
168
+ .mint-time-picker__slot--active .mint-time-picker__slot-time {
169
+ font-weight: 500;
155
170
  }
156
171
 
157
172
  /* Unavailable slots stay readable (no opacity). */
@@ -23,7 +23,7 @@
23
23
  border-radius: var(--radius-md);
24
24
  background-color: var(--bg-card);
25
25
  border: 1px solid var(--border-color);
26
- box-shadow: var(--card-shadow);
26
+ box-shadow: var(--mint-shadow-pop);
27
27
  pointer-events: auto;
28
28
  cursor: pointer;
29
29
  overflow: hidden;
@@ -45,7 +45,7 @@ html.dark .mint-toast__item {
45
45
  box-shadow:
46
46
  0 3px 0 -1px var(--bg-card),
47
47
  0 3px 0 0 var(--border-color),
48
- var(--card-shadow);
48
+ var(--mint-shadow-pop);
49
49
  }
50
50
 
51
51
  .mint-toast__icon {
@@ -123,7 +123,7 @@ html.dark .mint-toast__item {
123
123
  .mint-toast__action--primary {
124
124
  background: var(--color-primary);
125
125
  border-color: var(--color-primary);
126
- color: white;
126
+ color: var(--text-on-accent);
127
127
  }
128
128
 
129
129
  .mint-toast__action--primary:hover {
@@ -139,15 +139,16 @@ html.dark .mint-toast__item {
139
139
 
140
140
  .mint-toast__close {
141
141
  position: absolute;
142
- top: 0.3125rem;
143
- right: 0.3125rem;
142
+ top: 0.5rem;
143
+ right: 0.5rem;
144
144
  display: flex;
145
145
  align-items: center;
146
146
  justify-content: center;
147
- width: 1.25rem;
148
- height: 1.25rem;
147
+ width: 1.375rem;
148
+ height: 1.375rem;
149
+ padding: 0;
149
150
  border: 0;
150
- border-radius: var(--radius-sm);
151
+ border-radius: var(--radius);
151
152
  background: transparent;
152
153
  color: var(--text-muted);
153
154
  cursor: pointer;
@@ -160,8 +161,9 @@ html.dark .mint-toast__item {
160
161
  }
161
162
 
162
163
  .mint-toast__close svg {
163
- width: 0.75rem;
164
- height: 0.75rem;
164
+ width: 0.875rem;
165
+ height: 0.875rem;
166
+ flex-shrink: 0;
165
167
  }
166
168
 
167
169
  /* TTL progress bar — shrinks 100% → 0 over duration */
@@ -61,13 +61,7 @@
61
61
  width: 0.875rem;
62
62
  height: 0.875rem;
63
63
  flex-shrink: 0;
64
- transition:
65
- color 0.15s ease,
66
- transform 0.15s ease;
67
- }
68
-
69
- .mint-toggle--row:hover .mint-toggle__row-icon {
70
- transform: scale(1.04);
64
+ transition: color 0.15s ease;
71
65
  }
72
66
 
73
67
  .mint-toggle__row-svg {
@@ -209,8 +203,4 @@
209
203
  .mint-toggle__knob {
210
204
  transition: none;
211
205
  }
212
-
213
- .mint-toggle--row:hover .mint-toggle__row-icon {
214
- transform: none;
215
- }
216
206
  }
@@ -10,15 +10,15 @@
10
10
  display: inline-flex;
11
11
  align-items: center;
12
12
  gap: 0.5rem;
13
- padding: 0.375rem 0.625rem;
13
+ padding: 0.25rem 0.5rem;
14
14
  font-size: 0.75rem;
15
- line-height: 1.2;
15
+ line-height: 1.35;
16
16
  color: var(--bg-card);
17
17
  background: var(--text-primary);
18
- border-radius: var(--radius-sm);
18
+ border-radius: var(--radius);
19
19
  white-space: nowrap;
20
20
  pointer-events: none;
21
- box-shadow: var(--shadow-md);
21
+ box-shadow: var(--mint-shadow-pop);
22
22
  }
23
23
 
24
24
  /* Multi-line opt-in via maxWidth prop */
@@ -35,13 +35,14 @@
35
35
  .mint-tooltip__shortcut {
36
36
  display: inline-flex;
37
37
  align-items: center;
38
- padding: 0.0625rem 0.3125rem;
38
+ padding: 0 0.25rem;
39
39
  font-family: var(--font-mono);
40
40
  font-size: 0.6875rem;
41
- background: color-mix(in srgb, var(--bg-card) 14%, transparent);
42
- border: 1px solid color-mix(in srgb, var(--bg-card) 24%, transparent);
43
- border-radius: 3px;
44
- line-height: 1;
41
+ background: transparent;
42
+ border: 1px solid color-mix(in srgb, var(--bg-card) 22%, transparent);
43
+ border-radius: var(--radius-sm);
44
+ line-height: 1rem;
45
+ opacity: 0.85;
45
46
  }
46
47
 
47
48
  /* Arrow — same color as the tooltip bg */
@@ -14,8 +14,9 @@
14
14
  background-color: var(--bg-secondary);
15
15
  border: 1px solid var(--border-color);
16
16
  border-radius: var(--radius-md);
17
- transition: border-color 0.15s ease, box-shadow 0.15s ease;
17
+ transition: border-color var(--mint-transition), box-shadow var(--mint-transition);
18
18
  overflow: hidden;
19
+ box-sizing: border-box;
19
20
  }
20
21
 
21
22
  .mint-unit-input__controls--sm { min-height: var(--form-height-sm); }
@@ -49,7 +50,7 @@
49
50
  color: var(--text-muted);
50
51
  }
51
52
 
52
- /* ---------- Value input — Fira Code, left-aligned ---------- */
53
+ /* ---------- Value input — mono, left-aligned ---------- */
53
54
 
54
55
  .mint-unit-input__value {
55
56
  flex: 1;
@@ -76,9 +77,9 @@
76
77
 
77
78
  /* Horizontal padding matches BaseInput canonical scale (10/12/16) so FormField's
78
79
  12px label indent aligns with the value text across all input types. */
79
- .mint-unit-input__value--sm { padding: 0.375rem 0.625rem; font-size: 0.875rem; }
80
- .mint-unit-input__value--md { padding: 0.5rem 0.75rem; font-size: 0.875rem; }
81
- .mint-unit-input__value--lg { padding: 0.75rem 1rem; font-size: 1rem; }
80
+ .mint-unit-input__value--sm { padding: 0.25rem 0.625rem; font-size: 0.875rem; }
81
+ .mint-unit-input__value--md { padding: 0.375rem 0.75rem; font-size: 0.75rem; }
82
+ .mint-unit-input__value--lg { padding: 0.5rem 1rem; font-size: 1rem; }
82
83
 
83
84
  /* ---------- Unit segment = BaseInput #suffix look (1e / 4b) ---------- */
84
85
 
@@ -100,7 +101,7 @@
100
101
  font-size: 0.75rem;
101
102
  line-height: 1;
102
103
  white-space: nowrap;
103
- transition: background-color 0.15s ease;
104
+ transition: background-color var(--mint-transition);
104
105
  }
105
106
 
106
107
  button.mint-unit-input__unit {
@@ -128,7 +129,7 @@ button.mint-unit-input__unit:focus-visible {
128
129
  height: 12px;
129
130
  flex-shrink: 0;
130
131
  color: var(--text-secondary);
131
- transition: transform 0.15s ease;
132
+ transition: transform var(--mint-transition);
132
133
  }
133
134
 
134
135
  .mint-unit-input__unit--open .mint-unit-input__chevron {
@@ -81,7 +81,7 @@
81
81
  justify-content: center;
82
82
  font-weight: 500;
83
83
  cursor: pointer;
84
- transition: background-color 0.15s ease, border-color 0.15s ease, box-shadow 0.15s ease, opacity 0.15s ease;
84
+ transition: background-color var(--mint-transition), border-color var(--mint-transition), box-shadow var(--mint-transition), opacity var(--mint-transition);
85
85
  background-color: var(--bg-tertiary);
86
86
  border: 1px dashed var(--border-color);
87
87
  }
@@ -164,6 +164,13 @@
164
164
  color: var(--text-primary);
165
165
  }
166
166
 
167
+ /* QC / iQC marker glyph */
168
+ .mint-well-plate__indicator {
169
+ font-family: var(--font-mono);
170
+ pointer-events: none;
171
+ color: var(--text-primary);
172
+ }
173
+
167
174
  /* Condition header - drug label row */
168
175
  .mint-well-plate__condition-label {
169
176
  font-weight: 600;
@@ -184,7 +191,7 @@
184
191
  height: 100%;
185
192
  border-radius: 4px;
186
193
  font-weight: 600;
187
- transition: background-color 0.15s ease;
194
+ transition: background-color var(--mint-transition);
188
195
  }
189
196
 
190
197
  /* Row condition label cell (rotated text) */