@morscherlab/mint-sdk 1.1.6 → 1.1.8

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.
package/dist/index.js CHANGED
@@ -1,7 +1,7 @@
1
1
  import { a as SORT_OPTIONS, c as formatExperimentDate, d as resolveExperimentCode, f as BaseModal_default, i as EXPERIMENT_STATUS_VARIANT_MAP, l as formatExperimentStatus, m as BaseButton_default, n as EXPERIMENT_STATUS_LABELS, o as datePresetToISO, p as useEventListener, r as EXPERIMENT_STATUS_OPTIONS, s as experimentIdFromRoute, t as DATE_PRESET_OPTIONS, u as getExperimentStatusVariant } from "./experiment-utils-CLnzPPq5.js";
2
2
  import { a as BaseSelect_default, i as BasePill_default, n as Skeleton_default, r as useRequestSyncState, s as BaseInput_default, t as EmptyState_default } from "./EmptyState-p90quq8Z.js";
3
3
  import { $ as normalizeJobState, A as useConcentrationUnits, At as BaseCheckbox_default, B as useAnalysisArtifacts, C as controlsToViewIds, Ct as DatePicker_default, D as getTypeDefault, Dt as BaseSlider_default, E as getFieldRegistryEntry, Et as useSelectionLimit, F as ATOMIC_WEIGHTS, G as resolveCurrentPluginId, I as useChemicalFormula, It as BaseTextarea_default, J as usePluginJobs, K as createGeneratedAnalysisTransport, L as GeneratedPathInput_default, M as SequenceInput_default, N as useSequenceUtils, O as ConcentrationInput_default, Ot as BaseRadioGroup_default, P as FormulaInput_default, Q as normalizeJobPercent, S as controlsToTopBarSettingsConfig, St as useTimeUtils, T as getDefaultControlView, Tt as useListSelection, X as isTerminalJobStatus, Y as isActiveJobStatus, Z as jobStatusLabel, _ as controlsToFormSchema, _t as isTimeInRange, a as defineDoseCalculatorControlProps, at as TagsInput_default, b as controlsToSettingsSchema, bt as snapToSlot, c as defineWellPlateDoseComponentBindings, ct as compareTime, d as defineControlModel, dt as findNearestTimeSlotIndex, et as resolveJobCapabilities, ft as formatDuration, gt as generateTimeSlots, h as controlValuesToComponentProps, ht as fromMinutes, i as useControlSchema, it as NumberInput_default, j as MoleculeInput_default, jt as Tooltip_default, k as UnitInput_default, kt as BaseToggle_default, l as defineWellPlateDoseControlProps, lt as durationMinutes, m as controlValuesToComponentBindingsById, mt as formatTimeSlot, n as defineControls, nt as AlertBox_default, o as defineDoseDesignControlModel, ot as TimePicker_default, p as controlValuesToComponentBindings, pt as formatTime, q as useGeneratedAnalysis, r as getControlDefaults, rt as FileUploader_default, s as defineWellPlateControlProps, st as addMinutes, t as defineControlComponentBindings, tt as DateTimePicker_default, u as useControlWorkspace, ut as findAvailableSlots, v as controlsToSectionFormSchema, vt as parseTime, w as controlsToViewItems, wt as MultiSelect_default, x as controlsToSidebarPanels, xt as toMinutes, y as controlsToSectionFormSchemas, yt as rangesOverlap, z as ArtifactSelectorModal_default } from "./useControlSchema-BMVb2XIQ.js";
4
- import { $ as SmartGroupFieldRecipe_default, A as ProtocolStepEditor_default, At as AppToastContainer_default, B as Breadcrumb_default, C as estimateSequenceRemainingSeconds, Ct as AppPluginSwitcher_default, D as sequenceSamplesRemaining, Dt as ThemeToggle_default, E as sequenceProgressPercent, Et as CollapsibleCard_default, F as RackEditor_default, Ft as BaseTabs_default, G as AppContainer_default, H as ProgressBar_default, I as BioTemplatePresetWorkspaceView_default, It as ColorSlider_default, J as ComponentBindingRenderer_default, K as DoseDesignWorkspaceView_default, L as BioTemplatePackWorkspaceView_default, M as ReagentEditor_default, Mt as Calendar_default, N as SmartGroupModal_default, Nt as DropdownButton_default, O as ChemicalFormula_default, Ot as ActionMenu_default, P as GroupAssigner_default, Pt as SegmentedControl_default, Q as SmartGroupManual_default, R as BioTemplateExperimentWorkspaceView_default, S as estimateSequenceFinishDate, St as AppTopBar_default, T as formatSequenceRemaining, Tt as PluginIcon_default, U as StatusIndicator_default, V as Avatar_default, W as Divider_default, X as SampleSelector_default, Y as ScheduleCalendar_default, Z as AutoGroupModal_default, _ as reconstructLcmsPlateCellsFromSequenceItems, _t as AppLayout_default, a as ResourceCard_default, at as DoseCalculator_default, b as InstrumentAlertLog_default, bt as FormActions_default, c as BatchProgressList_default, ct as GeneratedResultRenderer_default, d as DEFAULT_LCMS_SEQUENCE_COLUMNS, dt as LoadingSpinner_default, et as ReagentList_default, f as basenameFromWindowsPath, ft as generatedJobDefaults, g as lcmsWellIdFromPosition, gt as MobileSupportGate_default, h as inferLcmsPlateTypeFromWellIds, ht as PluginWorkspaceView_default, i as SectionCard_default, it as ExperimentTimeline_default, j as SampleHierarchyTree_default, jt as DataFrame_default, k as ScientificNumber_default, kt as IconButton_default, l as AuditTrail_default, lt as GeneratedPlotlyResult_default, m as extractLcmsSampleName, mt as normalizeGeneratedJobInput, n as FitPanel_default, nt as SampleLegend_default, o as TimeRangeInput_default, ot as GeneratedPluginView_default, p as extractLcmsCommonPrefix, pt as generatedJobFormSchema, q as ControlWorkspaceView_default, r as ArtifactSaveDialog_default, rt as WellPlate_default, s as ExperimentDataViewer_default, st as JobsStatusTray_default, tt as PlateMapEditor_default, u as LcmsSequenceTable_default, ut as ChartContainer_default, v as InstrumentStatusCard_default, vt as AppSidebar_default, w as formatSequenceEta, wt as AppAvatarMenu_default, x as SequenceProgressBar_default, xt as StepWizard_default, y as InstrumentStateBadge_default, yt as FormBuilder_default, z as BioTemplateRenderer_default } from "./components-Dra_ac_5.js";
4
+ import { $ as SmartGroupFieldRecipe_default, A as ProtocolStepEditor_default, At as AppToastContainer_default, B as Breadcrumb_default, C as estimateSequenceRemainingSeconds, Ct as AppPluginSwitcher_default, D as sequenceSamplesRemaining, Dt as ThemeToggle_default, E as sequenceProgressPercent, Et as CollapsibleCard_default, F as RackEditor_default, Ft as BaseTabs_default, G as AppContainer_default, H as ProgressBar_default, I as BioTemplatePresetWorkspaceView_default, It as ColorSlider_default, J as ComponentBindingRenderer_default, K as DoseDesignWorkspaceView_default, L as BioTemplatePackWorkspaceView_default, M as ReagentEditor_default, Mt as Calendar_default, N as SmartGroupModal_default, Nt as DropdownButton_default, O as ChemicalFormula_default, Ot as ActionMenu_default, P as GroupAssigner_default, Pt as SegmentedControl_default, Q as SmartGroupManual_default, R as BioTemplateExperimentWorkspaceView_default, S as estimateSequenceFinishDate, St as AppTopBar_default, T as formatSequenceRemaining, Tt as PluginIcon_default, U as StatusIndicator_default, V as Avatar_default, W as Divider_default, X as SampleSelector_default, Y as ScheduleCalendar_default, Z as AutoGroupModal_default, _ as reconstructLcmsPlateCellsFromSequenceItems, _t as AppLayout_default, a as ResourceCard_default, at as DoseCalculator_default, b as InstrumentAlertLog_default, bt as FormActions_default, c as BatchProgressList_default, ct as GeneratedResultRenderer_default, d as DEFAULT_LCMS_SEQUENCE_COLUMNS, dt as LoadingSpinner_default, et as ReagentList_default, f as basenameFromWindowsPath, ft as generatedJobDefaults, g as lcmsWellIdFromPosition, gt as MobileSupportGate_default, h as inferLcmsPlateTypeFromWellIds, ht as PluginWorkspaceView_default, i as SectionCard_default, it as ExperimentTimeline_default, j as SampleHierarchyTree_default, jt as DataFrame_default, k as ScientificNumber_default, kt as IconButton_default, l as AuditTrail_default, lt as GeneratedPlotlyResult_default, m as extractLcmsSampleName, mt as normalizeGeneratedJobInput, n as FitPanel_default, nt as SampleLegend_default, o as TimeRangeInput_default, ot as GeneratedPluginView_default, p as extractLcmsCommonPrefix, pt as generatedJobFormSchema, q as ControlWorkspaceView_default, r as ArtifactSaveDialog_default, rt as WellPlate_default, s as ExperimentDataViewer_default, st as JobsStatusTray_default, tt as PlateMapEditor_default, u as LcmsSequenceTable_default, ut as ChartContainer_default, v as InstrumentStatusCard_default, vt as AppSidebar_default, w as formatSequenceEta, wt as AppAvatarMenu_default, x as SequenceProgressBar_default, xt as StepWizard_default, y as InstrumentStateBadge_default, yt as FormBuilder_default, z as BioTemplateRenderer_default } from "./components-CDomhGSj.js";
5
5
  import { s as FormField_default, t as SettingsModal_default } from "./SettingsModal-D7LFUokT.js";
6
6
  import { A as extractSamplesFromDesignData, B as useJobsStatusTray, C as hexToHsl, D as readFileAsText, E as parseDelimitedText, F as unwrapExperimentDesignData, G as useAppExperiment, H as DEFAULT_MOBILE_VIEWPORT_QUERY, I as DEFAULT_COLORS, J as candidateMatchesSearch, K as useTheme, L as useWellPlateEditor, N as extractSampleNamesFromDesignData, O as useFileImport, P as extractSampleOptionsFromDesignData, Q as useSortedItems, R as useDoseCalculator, S as deriveShade, T as detectDelimiter, U as useMobileSupportGate, V as usePluginJobCenter, W as APP_EXPERIMENT_KEY, X as useTextSearch, Y as normalizeSearchQuery, Z as compareSortValues, _ as useScheduleDrag, a as useReagentSeries, b as useExpansionSet, c as useBioTemplatePresetWorkspace, d as getBioTemplateComponentProps, f as toBioTemplateComponentPropsByComponent, g as useExperimentSave, h as useTemplateCollection, i as generateDilutionSeries, j as useAutoGroup, k as validateImportFile, l as useBioTemplatePackWorkspace, m as useBioTemplateControls, n as DEFAULT_PRESETS, o as useGroupAssignment, p as useBioTemplateComponents, q as useToast, r as DEFAULT_UNITS, s as useRackEditor, t as useProtocolTemplates, u as useBioTemplateWorkspace, v as useExperimentSamples, w as hslToHex, x as useSampleGroups, y as useExperimentData, z as combinePluginJobSources } from "./useProtocolTemplates-BMt0LlXf.js";
7
7
  import { a as colorPalettes, i as useAuthStore, o as useSettingsStore, r as useApi, t as AuthenticationRequiredError } from "./useApi-CDBq6z23.js";
package/dist/install.js CHANGED
@@ -1,7 +1,7 @@
1
1
  import "./experiment-utils-CLnzPPq5.js";
2
2
  import "./EmptyState-p90quq8Z.js";
3
3
  import "./useControlSchema-BMVb2XIQ.js";
4
- import { t as components_exports } from "./components-Dra_ac_5.js";
4
+ import { t as components_exports } from "./components-CDomhGSj.js";
5
5
  import "./SettingsModal-D7LFUokT.js";
6
6
  import "./ExperimentPopover-tLwJ7XF4.js";
7
7
  import "./ExperimentSelectorModal-B6P2msT4.js";
package/dist/styles.css CHANGED
@@ -6945,8 +6945,8 @@ to {
6945
6945
  flex-shrink: 0;
6946
6946
  }
6947
6947
  .mint-action-menu__trigger-icon {
6948
- width: 0.875rem;
6949
- height: 0.875rem;
6948
+ width: 1rem;
6949
+ height: 1rem;
6950
6950
  }
6951
6951
  .mint-action-menu__panel {
6952
6952
  position: fixed;
@@ -21078,8 +21078,8 @@ code, pre {
21078
21078
  flex-shrink: 0;
21079
21079
  }
21080
21080
  .mint-action-menu__trigger-icon {
21081
- width: 0.875rem;
21082
- height: 0.875rem;
21081
+ width: 1rem;
21082
+ height: 1rem;
21083
21083
  }
21084
21084
  .mint-action-menu__panel {
21085
21085
  position: fixed;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@morscherlab/mint-sdk",
3
- "version": "1.1.6",
3
+ "version": "1.1.8",
4
4
  "description": "MINT Platform SDK — Vue 3 components, composables, and types for plugin development. MINT = Mass-spec INtegrated Toolkit.",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
@@ -84,6 +84,7 @@
84
84
  "dependencies": {
85
85
  "@floating-ui/dom": "^1.7.6",
86
86
  "axios": "1.13.6",
87
+ "lucide-vue-next": "1.0.0",
87
88
  "plotly.js-dist-min": "^3.7.0"
88
89
  },
89
90
  "devDependencies": {
@@ -1,3 +1,5 @@
1
+ import { readFileSync } from 'node:fs'
2
+ import { resolve } from 'node:path'
1
3
  import { enableAutoUnmount, mount } from '@vue/test-utils'
2
4
  import { afterEach, describe, expect, it } from 'vitest'
3
5
  import ActionMenu from '../../components/ActionMenu.vue'
@@ -10,6 +12,25 @@ const items = [
10
12
  enableAutoUnmount(afterEach)
11
13
 
12
14
  describe('ActionMenu', () => {
15
+ it('should render the default trigger with the Lucide ellipsis icon', () => {
16
+ const wrapper = mount(ActionMenu, {
17
+ props: { label: 'More user actions', items },
18
+ })
19
+
20
+ expect(wrapper.find('svg.lucide-ellipsis').exists()).toBe(true)
21
+ })
22
+
23
+ it('should keep the default trigger icon at 16 pixels', () => {
24
+ const styles = readFileSync(
25
+ resolve(process.cwd(), 'src/styles/components/action-menu.css'),
26
+ 'utf8',
27
+ )
28
+
29
+ expect(styles).toMatch(
30
+ /\.mint-action-menu__trigger-icon\s*\{[^}]*width:\s*1rem;[^}]*height:\s*1rem;/s,
31
+ )
32
+ })
33
+
13
34
  it('should expose menu semantics on the square trigger', () => {
14
35
  const wrapper = mount(ActionMenu, {
15
36
  props: { label: 'More user actions', items },
@@ -1,6 +1,7 @@
1
1
  <script setup lang="ts">
2
2
  /** Compact overflow actions with an IconButton trigger and a viewport-safe teleported menu. */
3
3
  import { computePosition, flip, offset, shift } from '@floating-ui/dom'
4
+ import { Ellipsis } from 'lucide-vue-next'
4
5
  import { nextTick, onBeforeUnmount, ref } from 'vue'
5
6
  import type { ActionMenuItem } from '../types/components'
6
7
  import IconButton from './IconButton.vue'
@@ -158,16 +159,12 @@ onBeforeUnmount(removeGlobalListeners)
158
159
  :aria-expanded="isOpen"
159
160
  @click="toggleMenu"
160
161
  >
161
- <svg
162
+ <Ellipsis
162
163
  class="mint-action-menu__trigger-icon"
163
- viewBox="0 0 24 24"
164
- fill="currentColor"
164
+ :size="16"
165
+ :stroke-width="2"
165
166
  aria-hidden="true"
166
- >
167
- <circle cx="5" cy="12" r="1.6" />
168
- <circle cx="12" cy="12" r="1.6" />
169
- <circle cx="19" cy="12" r="1.6" />
170
- </svg>
167
+ />
171
168
  </IconButton>
172
169
  </span>
173
170
 
@@ -6,8 +6,8 @@
6
6
  }
7
7
 
8
8
  .mint-action-menu__trigger-icon {
9
- width: 0.875rem;
10
- height: 0.875rem;
9
+ width: 1rem;
10
+ height: 1rem;
11
11
  }
12
12
 
13
13
  .mint-action-menu__panel {