@morscherlab/mint-sdk 1.4.0-beta.2 → 1.4.0-beta.20

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 (330) hide show
  1. package/README.md +14 -3
  2. package/dist/{ActionMenu-CScINahU.js → AlertBox-CzLg0UaL.js} +40 -209
  3. package/dist/AlertBox-CzLg0UaL.js.map +1 -0
  4. package/dist/{AppSidebar-BmiiPfz9.js → AppSidebar-6oTT-gPO.js} +1249 -239
  5. package/dist/AppSidebar-6oTT-gPO.js.map +1 -0
  6. package/dist/{ConfirmDialog-CJ7hqYUP.js → ConfirmDialog-CSls2Nuv.js} +2 -2
  7. package/dist/{ConfirmDialog-CJ7hqYUP.js.map → ConfirmDialog-CSls2Nuv.js.map} +1 -1
  8. package/dist/ExperimentPopover-9l4QZlvQ.js +337 -0
  9. package/dist/ExperimentPopover-9l4QZlvQ.js.map +1 -0
  10. package/dist/{ExperimentSelectorModal-D-9z7cNx.js → ExperimentSelectorModal-pR5fK3pA.js} +244 -211
  11. package/dist/ExperimentSelectorModal-pR5fK3pA.js.map +1 -0
  12. package/dist/{SegmentedControl-DERBN-Xd.js → SegmentedControl-CJ7EAmOq.js} +2 -2
  13. package/dist/{SegmentedControl-DERBN-Xd.js.map → SegmentedControl-CJ7EAmOq.js.map} +1 -1
  14. package/dist/{SettingsModal-CSLE31yg.js → SettingsModal-Dyitgzfp.js} +28 -27
  15. package/dist/SettingsModal-Dyitgzfp.js.map +1 -0
  16. package/dist/__stories__/experiment-helpers.d.ts +10 -0
  17. package/dist/__tests__/components/AppTopBarOnboarding.test.d.ts +1 -0
  18. package/dist/__tests__/composables/useOnboarding.test.d.ts +1 -0
  19. package/dist/__tests__/styles/paletteTokens.test.d.ts +1 -0
  20. package/dist/__tests__/styles/v2AuditRules.test.d.ts +1 -0
  21. package/dist/components/AppSidebar.vue.d.ts +1 -1
  22. package/dist/components/AppTopBar.vue.d.ts +20 -5
  23. package/dist/components/ArtifactSaveDialog.vue.d.ts +9 -1
  24. package/dist/components/AuditTrail.vue.d.ts +1 -1
  25. package/dist/components/BaseButton.vue.d.ts +4 -2
  26. package/dist/components/BaseSelect.vue.d.ts +2 -2
  27. package/dist/components/ChartContainer.vue.d.ts +2 -0
  28. package/dist/components/DatePicker.vue.d.ts +1 -1
  29. package/dist/components/ExperimentPopover.vue.d.ts +18 -0
  30. package/dist/components/ExperimentSelectorModal.vue.d.ts +15 -5
  31. package/dist/components/FilePicker.vue.d.ts +1 -1
  32. package/dist/components/FileUploader.vue.d.ts +2 -2
  33. package/dist/components/JobsStatusTray.vue.d.ts +15 -4
  34. package/dist/components/PluginIcon.vue.d.ts +2 -2
  35. package/dist/components/PluginWorkspaceView.props.d.ts +3 -0
  36. package/dist/components/PluginWorkspaceView.vue.d.ts +3 -0
  37. package/dist/components/SampleSelector.vue.d.ts +6 -6
  38. package/dist/components/SequenceProgressBar.vue.d.ts +3 -0
  39. package/dist/components/SmartGroupFieldRecipe.vue.d.ts +1 -1
  40. package/dist/components/StepWizard.vue.d.ts +3 -0
  41. package/dist/components/internal/AppTopBarOnboardingInternal.vue.d.ts +7 -0
  42. package/dist/components/internal/AppTopBarPageSelectorInternal.vue.d.ts +2 -1
  43. package/dist/components/internal/AutoGroupModalInternal.vue.d.ts +1 -1
  44. package/dist/components/internal/DatePickerTimeInternal.vue.d.ts +1 -1
  45. package/dist/components/internal/OnboardingLayerInternal.vue.d.ts +7 -0
  46. package/dist/components/internal/ResourcePickerListInternal.vue.d.ts +2 -7
  47. package/dist/components/internal/SelectMultipleInternal.vue.d.ts +4 -0
  48. package/dist/components/internal/WorkspaceShellInternal.vue.d.ts +8 -0
  49. package/dist/composables/createClient.d.ts +2 -0
  50. package/dist/composables/index.d.ts +1 -0
  51. package/dist/composables/pluginIdentity.d.ts +24 -0
  52. package/dist/composables/pluginWorkspaceModel.d.ts +2 -2
  53. package/dist/composables/useAppExperiment.d.ts +8 -0
  54. package/dist/composables/useCalendarGrid.d.ts +1 -1
  55. package/dist/composables/useExperimentSelector.d.ts +6 -2
  56. package/dist/composables/useJobCenter.d.ts +41 -3
  57. package/dist/composables/useOnboarding.d.ts +119 -0
  58. package/dist/composables/usePlatform.d.ts +1 -0
  59. package/dist/{controlSchemaModel-CP5-_nAj.js → controlSchemaModel-DCUOx8ll.js} +2 -2
  60. package/dist/{controlSchemaModel-CP5-_nAj.js.map → controlSchemaModel-DCUOx8ll.js.map} +1 -1
  61. package/dist/{data-C2PwI_dn.js → data-DBnmeBZX.js} +179 -125
  62. package/dist/data-DBnmeBZX.js.map +1 -0
  63. package/dist/data.js +8 -8
  64. package/dist/{experiment-43OJtH7R.js → experiment-DyO54FQB.js} +25 -61
  65. package/dist/experiment-DyO54FQB.js.map +1 -0
  66. package/dist/{experimentStatus-BZmU4czV.js → experimentStatus-BFrKpHAH.js} +3 -3
  67. package/dist/{experimentStatus-BZmU4czV.js.map → experimentStatus-BFrKpHAH.js.map} +1 -1
  68. package/dist/index.js +20 -20
  69. package/dist/{install-DAID6c2-.js → install-qjELyNwc.js} +15 -14
  70. package/dist/{install-DAID6c2-.js.map → install-qjELyNwc.js.map} +1 -1
  71. package/dist/install.js +1 -1
  72. package/dist/{lab-DLwRl_Ql.js → lab-UyTbokQC.js} +136 -148
  73. package/dist/lab-UyTbokQC.js.map +1 -0
  74. package/dist/lab.js +4 -3
  75. package/dist/{records-BzTcxekG.js → records-CR_pYzIP.js} +533 -335
  76. package/dist/records-CR_pYzIP.js.map +1 -0
  77. package/dist/{runtime-D6gVat6r.js → runtime-CoHhBP10.js} +417 -54
  78. package/dist/runtime-CoHhBP10.js.map +1 -0
  79. package/dist/runtime.d.ts +1 -1
  80. package/dist/runtime.js +7 -7
  81. package/dist/{shell-5ju97nOS.js → shell-BDuZf2zb.js} +10 -5
  82. package/dist/{shell-5ju97nOS.js.map → shell-BDuZf2zb.js.map} +1 -1
  83. package/dist/shell.d.ts +1 -0
  84. package/dist/shell.js +6 -6
  85. package/dist/stores/index.d.ts +1 -1
  86. package/dist/stores/index.js +2 -2
  87. package/dist/stores/settings.d.ts +4 -12
  88. package/dist/styles.css +2732 -2083
  89. package/dist/types/componentWorkflowTypes.d.ts +2 -0
  90. package/dist/types/components.d.ts +2 -0
  91. package/dist/types/generated/platformContext.d.ts +1 -0
  92. package/dist/types/generated-ui.d.ts +4 -0
  93. package/dist/types/index.d.ts +1 -1
  94. package/dist/types/jobs.d.ts +9 -0
  95. package/dist/types/platform.d.ts +1 -1
  96. package/dist/{BaseModal-DfRIuVoj.js → useDropdownState-Bb2N4m40.js} +74 -4
  97. package/dist/useDropdownState-Bb2N4m40.js.map +1 -0
  98. package/dist/{useExperimentSamples-CxcnxZ8h.js → useExperimentSamples-Dno1fFMq.js} +4 -4
  99. package/dist/{useExperimentSamples-CxcnxZ8h.js.map → useExperimentSamples-Dno1fFMq.js.map} +1 -1
  100. package/dist/{useListReorder-CcbEYxX-.js → useListReorder-CQ9OCScc.js} +183 -351
  101. package/dist/useListReorder-CQ9OCScc.js.map +1 -0
  102. package/dist/{useRackEditor-BD5NIo5s.js → useRackEditor-wL3kPrRT.js} +73 -59
  103. package/dist/useRackEditor-wL3kPrRT.js.map +1 -0
  104. package/dist/useRealtime-C3whhVvb.js +508 -0
  105. package/dist/useRealtime-C3whhVvb.js.map +1 -0
  106. package/dist/useRequest-CDkrXNU7.js +244 -0
  107. package/dist/useRequest-CDkrXNU7.js.map +1 -0
  108. package/dist/utils/time.d.ts +7 -0
  109. package/package.json +1 -1
  110. package/src/__stories__/experiment-helpers.ts +3 -3
  111. package/src/__tests__/components/AppTopBar.test.ts +257 -3
  112. package/src/__tests__/components/AppTopBarOnboarding.test.ts +160 -0
  113. package/src/__tests__/components/AppTopBarPageSelector.test.ts +125 -9
  114. package/src/__tests__/components/AppTopBarPillNav.test.ts +35 -0
  115. package/src/__tests__/components/ArtifactSaveDialog.test.ts +78 -0
  116. package/src/__tests__/components/BaseButton.test.ts +19 -0
  117. package/src/__tests__/components/BaseSelect.multiple.test.ts +87 -32
  118. package/src/__tests__/components/BaseSelect.test.ts +2 -1
  119. package/src/__tests__/components/BatchProgressList.test.ts +16 -0
  120. package/src/__tests__/components/CalendarGridPanel.test.ts +2 -2
  121. package/src/__tests__/components/ChartContainer.test.ts +11 -0
  122. package/src/__tests__/components/ChemicalFormula.test.ts +6 -3
  123. package/src/__tests__/components/DatePicker.datetime.test.ts +6 -0
  124. package/src/__tests__/components/DatePicker.test.ts +21 -0
  125. package/src/__tests__/components/DatePicker.time.test.ts +2 -2
  126. package/src/__tests__/components/EmptyState.test.ts +1 -1
  127. package/src/__tests__/components/ExperimentPopover.test.ts +125 -16
  128. package/src/__tests__/components/ExperimentSelectorModal.test.ts +153 -14
  129. package/src/__tests__/components/GeneratedPluginView.test.ts +23 -2
  130. package/src/__tests__/components/InstrumentStateBadge.test.ts +4 -4
  131. package/src/__tests__/components/JobsStatusTray.test.ts +373 -71
  132. package/src/__tests__/components/PluginWorkspaceView.test.ts +63 -1
  133. package/src/__tests__/components/ResourcePickerListInternal.test.ts +0 -20
  134. package/src/__tests__/components/SampleSelector.test.ts +33 -8
  135. package/src/__tests__/components/SequenceProgressBar.test.ts +12 -0
  136. package/src/__tests__/components/SettingsModal.test.ts +9 -2
  137. package/src/__tests__/components/StepWizard.test.ts +11 -0
  138. package/src/__tests__/components/WellPlate.decoration.test.ts +11 -4
  139. package/src/__tests__/components/deprecationTags.test.ts +1 -1
  140. package/src/__tests__/composables/useAppExperiment.test.ts +27 -1
  141. package/src/__tests__/composables/useCalendarGrid.test.ts +4 -2
  142. package/src/__tests__/composables/useExperimentSelector.test.ts +111 -0
  143. package/src/__tests__/composables/useJobCenter.test.ts +262 -3
  144. package/src/__tests__/composables/useOnboarding.test.ts +317 -0
  145. package/src/__tests__/docs/frontendDocsCatalog.test.ts +4 -3
  146. package/src/__tests__/stores/settings.test.ts +21 -21
  147. package/src/__tests__/styles/baseControlsRules.test.ts +6 -2
  148. package/src/__tests__/styles/controlRefreshRules.test.ts +0 -6
  149. package/src/__tests__/styles/cssTokens.test.ts +6 -3
  150. package/src/__tests__/styles/menusShellRefresh.test.ts +22 -12
  151. package/src/__tests__/styles/paletteTokens.test.ts +44 -0
  152. package/src/__tests__/styles/v2AuditRules.test.ts +104 -0
  153. package/src/__tests__/utils/plotlyTemplate.test.ts +4 -4
  154. package/src/__tests__/utils/time.test.ts +18 -1
  155. package/src/components/AdductText.story.vue +7 -0
  156. package/src/components/AdductText.vue +1 -1
  157. package/src/components/AlertBox.story.vue +2 -2
  158. package/src/components/AlertBox.vue +18 -16
  159. package/src/components/AppSidebar.story.vue +0 -28
  160. package/src/components/AppTopBar.onboarding.story.vue +69 -0
  161. package/src/components/AppTopBar.story.vue +105 -15
  162. package/src/components/AppTopBar.vue +248 -122
  163. package/src/components/ArtifactSaveDialog.story.vue +23 -0
  164. package/src/components/ArtifactSaveDialog.vue +102 -12
  165. package/src/components/AuditTrail.story.vue +2 -1
  166. package/src/components/AuditTrail.vue +2 -21
  167. package/src/components/Avatar.vue +10 -14
  168. package/src/components/BaseButton.vue +16 -2
  169. package/src/components/BaseSelect.multiple.story.vue +13 -2
  170. package/src/components/BaseSelect.vue +4 -3
  171. package/src/components/BatchProgressList.vue +35 -25
  172. package/src/components/ChartContainer.story.vue +2 -1
  173. package/src/components/ChartContainer.vue +8 -6
  174. package/src/components/ConfirmDialog.story.vue +1 -1
  175. package/src/components/EmptyState.vue +1 -1
  176. package/src/components/ExperimentPopover.story.vue +165 -53
  177. package/src/components/ExperimentPopover.vue +169 -187
  178. package/src/components/ExperimentSelectorModal.story.vue +73 -31
  179. package/src/components/ExperimentSelectorModal.vue +144 -111
  180. package/src/components/FormField.story.vue +8 -48
  181. package/src/components/GeneratedPluginView.vue +11 -10
  182. package/src/components/GeneratedResultRenderer.vue +3 -4
  183. package/src/components/InstrumentStateBadge.vue +1 -1
  184. package/src/components/JobsStatusTray.story.vue +97 -43
  185. package/src/components/JobsStatusTray.vue +287 -290
  186. package/src/components/LayoutResizeHandle.story.vue +65 -4
  187. package/src/components/LoadingSpinner.vue +1 -1
  188. package/src/components/NumberInput.vue +3 -6
  189. package/src/components/PluginIcon.story.vue +2 -10
  190. package/src/components/PluginIcon.vue +2 -2
  191. package/src/components/PluginWorkspaceView.props.ts +3 -0
  192. package/src/components/PluginWorkspaceView.story.vue +1 -1
  193. package/src/components/PluginWorkspaceView.vue +17 -0
  194. package/src/components/RuntimeUpdateNotice.vue +1 -1
  195. package/src/components/SampleSelector.story.vue +22 -7
  196. package/src/components/SampleSelector.vue +34 -37
  197. package/src/components/SampleSelectorGroupNode.vue +1 -1
  198. package/src/components/SectionCard.story.vue +35 -2
  199. package/src/components/SequenceProgressBar.story.vue +9 -0
  200. package/src/components/SequenceProgressBar.vue +6 -1
  201. package/src/components/SettingsModal.schema.ts +1 -1
  202. package/src/components/SettingsModal.vue +9 -14
  203. package/src/components/SmartGroupFieldRecipe.story.vue +1 -1
  204. package/src/components/SmartGroupManual.story.vue +1 -1
  205. package/src/components/StepWizard.story.vue +33 -0
  206. package/src/components/StepWizard.vue +8 -1
  207. package/src/components/WellPlate.story.vue +3 -1
  208. package/src/components/WellPlate.vue +7 -0
  209. package/src/components/internal/AppTopBarOnboardingInternal.vue +172 -0
  210. package/src/components/internal/AppTopBarPageSelectorInternal.vue +140 -72
  211. package/src/components/internal/AppTopBarPillNavInternal.vue +33 -2
  212. package/src/components/internal/DatePickerDateInternal.vue +16 -40
  213. package/src/components/internal/DatePickerDateTimeInternal.vue +3 -13
  214. package/src/components/internal/DatePickerTimeInternal.vue +5 -8
  215. package/src/components/internal/OnboardingLayerInternal.vue +173 -0
  216. package/src/components/internal/ResourcePickerListInternal.vue +45 -85
  217. package/src/components/internal/SelectMultipleInternal.vue +182 -65
  218. package/src/components/internal/SelectSearchableInternal.vue +2 -3
  219. package/src/components/internal/WorkspaceShellInternal.vue +12 -0
  220. package/src/composables/createClient.ts +2 -0
  221. package/src/composables/index.ts +1 -0
  222. package/src/composables/pluginIdentity.ts +31 -0
  223. package/src/composables/pluginWorkspaceModel.ts +2 -2
  224. package/src/composables/useAppExperiment.ts +20 -0
  225. package/src/composables/useCalendarGrid.ts +4 -3
  226. package/src/composables/useExperimentSelector.ts +77 -31
  227. package/src/composables/useJobCenter.ts +188 -6
  228. package/src/composables/useOnboarding.ts +465 -0
  229. package/src/composables/usePluginWorkspace.ts +1 -1
  230. package/src/runtime.ts +2 -1
  231. package/src/shell.ts +17 -0
  232. package/src/stores/index.ts +0 -2
  233. package/src/stores/settings.ts +20 -50
  234. package/src/styles/components/adduct-text.css +13 -5
  235. package/src/styles/components/alert-box.css +39 -58
  236. package/src/styles/components/app-layout.css +7 -5
  237. package/src/styles/components/app-page-selector.css +121 -44
  238. package/src/styles/components/app-pill-nav.css +11 -12
  239. package/src/styles/components/app-sidebar.css +9 -18
  240. package/src/styles/components/app-top-bar.css +219 -55
  241. package/src/styles/components/artifact-save-dialog.css +153 -2
  242. package/src/styles/components/audit-trail.css +16 -19
  243. package/src/styles/components/avatar.css +6 -4
  244. package/src/styles/components/batch-progress-list.css +38 -36
  245. package/src/styles/components/button.css +36 -59
  246. package/src/styles/components/calendar.css +12 -12
  247. package/src/styles/components/chart-container.css +34 -23
  248. package/src/styles/components/checkbox.css +2 -12
  249. package/src/styles/components/collapsible-card.css +27 -29
  250. package/src/styles/components/confirm-dialog.css +13 -14
  251. package/src/styles/components/dataframe.css +13 -5
  252. package/src/styles/components/date-picker.css +80 -92
  253. package/src/styles/components/datetime-picker.css +31 -43
  254. package/src/styles/components/divider.css +20 -20
  255. package/src/styles/components/dose-calculator.css +3 -3
  256. package/src/styles/components/empty-state.css +20 -17
  257. package/src/styles/components/experiment-code-badge.css +2 -0
  258. package/src/styles/components/experiment-popover.css +174 -329
  259. package/src/styles/components/experiment-selector-modal.css +88 -56
  260. package/src/styles/components/file-picker.css +3 -3
  261. package/src/styles/components/file-uploader.css +38 -49
  262. package/src/styles/components/form-builder.css +3 -3
  263. package/src/styles/components/formula-input.css +1 -1
  264. package/src/styles/components/icon-button.css +18 -24
  265. package/src/styles/components/input.css +5 -4
  266. package/src/styles/components/instrument-monitor.css +13 -15
  267. package/src/styles/components/jobs-status-tray.css +140 -296
  268. package/src/styles/components/layout-resize-handle.css +59 -16
  269. package/src/styles/components/modal.css +4 -6
  270. package/src/styles/components/molecule-input.css +2 -2
  271. package/src/styles/components/multi-select.css +65 -117
  272. package/src/styles/components/number-input.css +26 -19
  273. package/src/styles/components/onboarding.css +368 -0
  274. package/src/styles/components/pill.css +3 -2
  275. package/src/styles/components/plate-editor.css +0 -1
  276. package/src/styles/components/plugin-icon.css +26 -23
  277. package/src/styles/components/popover.css +2 -2
  278. package/src/styles/components/presence-avatars.css +1 -1
  279. package/src/styles/components/progress-bar.css +3 -3
  280. package/src/styles/components/protocol-step-editor.css +1 -3
  281. package/src/styles/components/resource-card.css +2 -2
  282. package/src/styles/components/resource-picker-list.css +6 -57
  283. package/src/styles/components/sample-hierarchy-tree.css +4 -4
  284. package/src/styles/components/sample-selector.css +138 -79
  285. package/src/styles/components/schedule-calendar.css +8 -8
  286. package/src/styles/components/searchable-select.css +12 -12
  287. package/src/styles/components/section-card.css +54 -49
  288. package/src/styles/components/segmented-control.css +18 -15
  289. package/src/styles/components/select.css +3 -3
  290. package/src/styles/components/sequence-input.css +2 -2
  291. package/src/styles/components/sequence-progress-bar.css +17 -8
  292. package/src/styles/components/settings-modal.css +7 -2
  293. package/src/styles/components/smart-group.css +18 -18
  294. package/src/styles/components/step-wizard.css +52 -16
  295. package/src/styles/components/tabs.css +2 -2
  296. package/src/styles/components/textarea.css +3 -3
  297. package/src/styles/components/time-picker.css +36 -21
  298. package/src/styles/components/toast.css +12 -10
  299. package/src/styles/components/toggle.css +1 -11
  300. package/src/styles/components/tooltip.css +10 -9
  301. package/src/styles/components/unit-input.css +8 -7
  302. package/src/styles/components/well-plate.css +9 -2
  303. package/src/styles/index.css +1 -0
  304. package/src/styles/variables.css +241 -78
  305. package/src/types/componentWorkflowTypes.ts +2 -0
  306. package/src/types/components.ts +2 -0
  307. package/src/types/generated/platformContext.ts +1 -0
  308. package/src/types/generated-ui.ts +4 -0
  309. package/src/types/index.ts +1 -0
  310. package/src/types/jobs.ts +10 -0
  311. package/src/types/platform.ts +1 -1
  312. package/src/utils/time.ts +21 -0
  313. package/dist/ActionMenu-CScINahU.js.map +0 -1
  314. package/dist/AppSidebar-BmiiPfz9.js.map +0 -1
  315. package/dist/BaseModal-DfRIuVoj.js.map +0 -1
  316. package/dist/ExperimentPopover-C4sGw-is.js +0 -359
  317. package/dist/ExperimentPopover-C4sGw-is.js.map +0 -1
  318. package/dist/ExperimentSelectorModal-D-9z7cNx.js.map +0 -1
  319. package/dist/SettingsModal-CSLE31yg.js.map +0 -1
  320. package/dist/data-C2PwI_dn.js.map +0 -1
  321. package/dist/experiment-43OJtH7R.js.map +0 -1
  322. package/dist/lab-DLwRl_Ql.js.map +0 -1
  323. package/dist/records-BzTcxekG.js.map +0 -1
  324. package/dist/runtime-D6gVat6r.js.map +0 -1
  325. package/dist/useListReorder-CcbEYxX-.js.map +0 -1
  326. package/dist/useRackEditor-BD5NIo5s.js.map +0 -1
  327. package/dist/useRealtime-PalKue84.js +0 -696
  328. package/dist/useRealtime-PalKue84.js.map +0 -1
  329. package/dist/useRequest-D5JDfsgZ.js +0 -76
  330. package/dist/useRequest-D5JDfsgZ.js.map +0 -1
@@ -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) */
@@ -29,6 +29,7 @@
29
29
  @import './components/input.css';
30
30
  @import './components/modal.css';
31
31
  @import './components/number-input.css';
32
+ @import './components/onboarding.css';
32
33
  @import './components/plate-editor.css';
33
34
  @import './components/radio-group.css';
34
35
  @import './components/section-card.css';