@morscherlab/mint-sdk 1.1.9 → 1.1.10

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.
@@ -1,7 +1,7 @@
1
1
  import { a as SORT_OPTIONS, c as formatExperimentDate, d as resolveExperimentCode, i as EXPERIMENT_STATUS_VARIANT_MAP, l as formatExperimentStatus, 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 { r as useRequestSyncState } from "../EmptyState-p90quq8Z.js";
3
3
  import { A as useConcentrationUnits, B as useAnalysisArtifacts, C as controlsToViewIds, D as getTypeDefault, E as getFieldRegistryEntry, Et as useSelectionLimit, F as ATOMIC_WEIGHTS, G as resolveCurrentPluginId, I as useChemicalFormula, J as usePluginJobs, K as createGeneratedAnalysisTransport, N as useSequenceUtils, S as controlsToTopBarSettingsConfig, St as useTimeUtils, T as getDefaultControlView, Tt as useListSelection, _ as controlsToFormSchema, _t as isTimeInRange, a as defineDoseCalculatorControlProps, b as controlsToSettingsSchema, bt as snapToSlot, c as defineWellPlateDoseComponentBindings, ct as compareTime, d as defineControlModel, dt as findNearestTimeSlotIndex, ft as formatDuration, gt as generateTimeSlots, h as controlValuesToComponentProps, ht as fromMinutes, i as useControlSchema, l as defineWellPlateDoseControlProps, lt as durationMinutes, m as controlValuesToComponentBindingsById, mt as formatTimeSlot, n as defineControls, o as defineDoseDesignControlModel, p as controlValuesToComponentBindings, pt as formatTime, q as useGeneratedAnalysis, r as getControlDefaults, s as defineWellPlateControlProps, st as addMinutes, t as defineControlComponentBindings, u as useControlWorkspace, ut as findAvailableSlots, v as controlsToSectionFormSchema, vt as parseTime, w as controlsToViewItems, x as controlsToSidebarPanels, xt as toMinutes, y as controlsToSectionFormSchemas, yt as rangesOverlap } from "../useControlSchema-BMVb2XIQ.js";
4
- import { $ as compareSortValues, A as useFileImport, B as useDoseCalculator, D as detectDelimiter, F as extractSampleNamesFromDesignData, G as useMobileSupportGate, H as useJobsStatusTray, I as extractSampleOptionsFromDesignData, J as useTheme, K as APP_EXPERIMENT_KEY, L as unwrapExperimentDesignData, M as extractSamplesFromDesignData, N as useAutoGroup, O as parseDelimitedText, Q as useTextSearch, R as DEFAULT_COLORS, U as usePluginJobCenter, V as combinePluginJobSources, W as DEFAULT_MOBILE_VIEWPORT_QUERY, X as candidateMatchesSearch, Y as useToast, Z as normalizeSearchQuery, _ as useScheduleDrag, a as useReagentSeries, b as useExpansionSet, c as useBioTemplatePresetWorkspace, d as getBioTemplateComponentProps, et as useSortedItems, f as toBioTemplateComponentPropsByComponent, g as useExperimentSave, h as useTemplateCollection, i as generateDilutionSeries, j as validateImportFile, k as readFileAsText, l as useBioTemplatePackWorkspace, m as useBioTemplateControls, n as DEFAULT_PRESETS, o as useGroupAssignment, p as useBioTemplateComponents, q as useAppExperiment, r as DEFAULT_UNITS, s as useRackEditor, t as useProtocolTemplates, u as useBioTemplateWorkspace, v as useExperimentSamples, x as useSampleGroups, y as useExperimentData, z as useWellPlateEditor } from "../useProtocolTemplates-BWfNaynA.js";
4
+ import { $ as compareSortValues, A as useFileImport, B as useDoseCalculator, D as detectDelimiter, F as extractSampleNamesFromDesignData, G as useMobileSupportGate, H as useJobsStatusTray, I as extractSampleOptionsFromDesignData, J as useTheme, K as APP_EXPERIMENT_KEY, L as unwrapExperimentDesignData, M as extractSamplesFromDesignData, N as useAutoGroup, O as parseDelimitedText, Q as useTextSearch, R as DEFAULT_COLORS, U as usePluginJobCenter, V as combinePluginJobSources, W as DEFAULT_MOBILE_VIEWPORT_QUERY, X as candidateMatchesSearch, Y as useToast, Z as normalizeSearchQuery, _ as useScheduleDrag, a as useReagentSeries, b as useExpansionSet, c as useBioTemplatePresetWorkspace, d as getBioTemplateComponentProps, et as useSortedItems, f as toBioTemplateComponentPropsByComponent, g as useExperimentSave, h as useTemplateCollection, i as generateDilutionSeries, j as validateImportFile, k as readFileAsText, l as useBioTemplatePackWorkspace, m as useBioTemplateControls, n as DEFAULT_PRESETS, o as useGroupAssignment, p as useBioTemplateComponents, q as useAppExperiment, r as DEFAULT_UNITS, s as useRackEditor, t as useProtocolTemplates, u as useBioTemplateWorkspace, v as useExperimentSamples, x as useSampleGroups, y as useExperimentData, z as useWellPlateEditor } from "../useProtocolTemplates-D3IZKLqr.js";
5
5
  import { r as useApi, t as AuthenticationRequiredError } from "../useApi-CDBq6z23.js";
6
6
  import { i as usePlatformContext, n as evaluateCondition, r as useForm, t as useFormBuilder } from "../useFormBuilder-DG3HOFGA.js";
7
7
  import { t as ANALYSIS_FILE_ARTIFACT_SCHEMA } from "../analysisArtifactTypes-DQ0MjwHZ.js";
package/dist/index.js CHANGED
@@ -1,9 +1,9 @@
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-BbtUpCTv.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-HXV-ZkBg.js";
5
5
  import { s as FormField_default, t as SettingsModal_default } from "./SettingsModal-D7LFUokT.js";
6
- import { $ as compareSortValues, A as useFileImport, B as useDoseCalculator, D as detectDelimiter, E as hslToHex, F as extractSampleNamesFromDesignData, G as useMobileSupportGate, H as useJobsStatusTray, I as extractSampleOptionsFromDesignData, J as useTheme, K as APP_EXPERIMENT_KEY, L as unwrapExperimentDesignData, M as extractSamplesFromDesignData, N as useAutoGroup, O as parseDelimitedText, Q as useTextSearch, R as DEFAULT_COLORS, T as hexToHsl, U as usePluginJobCenter, V as combinePluginJobSources, W as DEFAULT_MOBILE_VIEWPORT_QUERY, X as candidateMatchesSearch, Y as useToast, Z as normalizeSearchQuery, _ as useScheduleDrag, a as useReagentSeries, b as useExpansionSet, c as useBioTemplatePresetWorkspace, d as getBioTemplateComponentProps, et as useSortedItems, f as toBioTemplateComponentPropsByComponent, g as useExperimentSave, h as useTemplateCollection, i as generateDilutionSeries, j as validateImportFile, k as readFileAsText, l as useBioTemplatePackWorkspace, m as useBioTemplateControls, n as DEFAULT_PRESETS, o as useGroupAssignment, p as useBioTemplateComponents, q as useAppExperiment, r as DEFAULT_UNITS, s as useRackEditor, t as useProtocolTemplates, u as useBioTemplateWorkspace, v as useExperimentSamples, w as deriveShade, x as useSampleGroups, y as useExperimentData, z as useWellPlateEditor } from "./useProtocolTemplates-BWfNaynA.js";
6
+ import { $ as compareSortValues, A as useFileImport, B as useDoseCalculator, D as detectDelimiter, E as hslToHex, F as extractSampleNamesFromDesignData, G as useMobileSupportGate, H as useJobsStatusTray, I as extractSampleOptionsFromDesignData, J as useTheme, K as APP_EXPERIMENT_KEY, L as unwrapExperimentDesignData, M as extractSamplesFromDesignData, N as useAutoGroup, O as parseDelimitedText, Q as useTextSearch, R as DEFAULT_COLORS, T as hexToHsl, U as usePluginJobCenter, V as combinePluginJobSources, W as DEFAULT_MOBILE_VIEWPORT_QUERY, X as candidateMatchesSearch, Y as useToast, Z as normalizeSearchQuery, _ as useScheduleDrag, a as useReagentSeries, b as useExpansionSet, c as useBioTemplatePresetWorkspace, d as getBioTemplateComponentProps, et as useSortedItems, f as toBioTemplateComponentPropsByComponent, g as useExperimentSave, h as useTemplateCollection, i as generateDilutionSeries, j as validateImportFile, k as readFileAsText, l as useBioTemplatePackWorkspace, m as useBioTemplateControls, n as DEFAULT_PRESETS, o as useGroupAssignment, p as useBioTemplateComponents, q as useAppExperiment, r as DEFAULT_UNITS, s as useRackEditor, t as useProtocolTemplates, u as useBioTemplateWorkspace, v as useExperimentSamples, w as deriveShade, x as useSampleGroups, y as useExperimentData, z as useWellPlateEditor } from "./useProtocolTemplates-D3IZKLqr.js";
7
7
  import { a as colorPalettes, i as useAuthStore, o as useSettingsStore, r as useApi, t as AuthenticationRequiredError } from "./useApi-CDBq6z23.js";
8
8
  import { i as usePlatformContext, n as evaluateCondition, r as useForm, t as useFormBuilder } from "./useFormBuilder-DG3HOFGA.js";
9
9
  import { ADMIN_PANEL_PERMISSIONS, ADMIN_ROLE, canAccessAdmin, canAccessByPolicy, canAccessPlugin, getAccessAudience, getRoleInfo, getUserPermissions, hasAllPermissions, hasAnyPermission, isAdminRole, isAdminUser, normalizeAccessPolicy } from "./permissions.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-BbtUpCTv.js";
4
+ import { t as components_exports } from "./components-HXV-ZkBg.js";
5
5
  import "./SettingsModal-D7LFUokT.js";
6
6
  import "./ExperimentPopover-tLwJ7XF4.js";
7
7
  import "./ExperimentSelectorModal-B6P2msT4.js";
@@ -2399,7 +2399,7 @@ function useAutoGroup() {
2399
2399
  }
2400
2400
  function schemasExposing(fieldKey) {
2401
2401
  return Object.entries(schemas.value).flatMap(([key, schema]) => {
2402
- const col = schema.columns.find((c) => (c.displayName ?? c.name) === fieldKey);
2402
+ const col = schema.columns.find((c) => (c.displayName ?? c.name) === fieldKey && (c.role === "factor" || c.role === "replicate" || schema.groupBy.includes(c.index)));
2403
2403
  return col ? [{
2404
2404
  key,
2405
2405
  index: col.index
@@ -2411,15 +2411,14 @@ function useAutoGroup() {
2411
2411
  return column ? column.displayName ?? column.name : void 0;
2412
2412
  }
2413
2413
  /**
2414
- * Toggle a grouping field across every class exposing it. The target state
2415
- * comes from the active class (what the card shows), so already-diverged
2416
- * classes converge instead of flipping in opposite directions.
2414
+ * Toggle a grouping field across every class exposing it. The batch card is
2415
+ * on when any schema groups by the field, so clicking it disables all such
2416
+ * schemas; only a fully disabled field is enabled across the batch.
2417
2417
  */
2418
2418
  function toggleGroupByField(fieldKey) {
2419
2419
  const targets = schemasExposing(fieldKey);
2420
2420
  if (targets.length === 0) return;
2421
- const active = targets.find((t) => t.key === activeClassKey.value) ?? targets[0];
2422
- const enable = !(schemas.value[active.key]?.groupBy.includes(active.index) ?? false);
2421
+ const enable = !targets.some(({ key, index }) => schemas.value[key]?.groupBy.includes(index));
2423
2422
  for (const { key, index } of targets) {
2424
2423
  const schema = schemas.value[key];
2425
2424
  if (!schema || schema.groupBy.includes(index) === enable) continue;
@@ -2435,7 +2434,7 @@ function useAutoGroup() {
2435
2434
  function moveGroupByField(fieldKey, direction) {
2436
2435
  const targets = schemasExposing(fieldKey);
2437
2436
  if (targets.length === 0) return;
2438
- const active = targets.find((target) => target.key === activeClassKey.value) ?? targets[0];
2437
+ const active = targets.find((target) => target.key === activeClassKey.value && schemas.value[target.key]?.groupBy.includes(target.index)) ?? targets.find((target) => schemas.value[target.key]?.groupBy.includes(target.index)) ?? targets[0];
2439
2438
  const activeSchema = schemas.value[active.key];
2440
2439
  if (!activeSchema) return;
2441
2440
  const from = activeSchema.groupBy.indexOf(active.index);
@@ -4937,4 +4936,4 @@ function useProtocolTemplates() {
4937
4936
  //#endregion
4938
4937
  export { compareSortValues as $, useFileImport as A, useDoseCalculator as B, getSampleGroupParentPath as C, detectDelimiter as D, hslToHex as E, extractSampleNamesFromDesignData as F, useMobileSupportGate as G, useJobsStatusTray as H, extractSampleOptionsFromDesignData as I, useTheme as J, APP_EXPERIMENT_KEY as K, unwrapExperimentDesignData as L, extractSamplesFromDesignData as M, useAutoGroup as N, parseDelimitedText as O, parseCSV as P, useTextSearch as Q, DEFAULT_COLORS as R, getSampleGroupMajorPrefix as S, hexToHsl as T, usePluginJobCenter as U, combinePluginJobSources as V, DEFAULT_MOBILE_VIEWPORT_QUERY as W, candidateMatchesSearch as X, useToast as Y, normalizeSearchQuery as Z, useScheduleDrag as _, useReagentSeries as a, useExpansionSet as b, useBioTemplatePresetWorkspace as c, getBioTemplateComponentProps as d, useSortedItems as et, toBioTemplateComponentPropsByComponent as f, useExperimentSave as g, useTemplateCollection as h, generateDilutionSeries as i, validateImportFile as j, readFileAsText as k, useBioTemplatePackWorkspace as l, useBioTemplateControls as m, DEFAULT_PRESETS as n, useGroupAssignment as o, useBioTemplateComponents as p, useAppExperiment as q, DEFAULT_UNITS as r, useRackEditor as s, useProtocolTemplates as t, useBioTemplateWorkspace as u, useExperimentSamples as v, deriveShade as w, useSampleGroups as x, useExperimentData as y, useWellPlateEditor as z };
4939
4938
 
4940
- //# sourceMappingURL=useProtocolTemplates-BWfNaynA.js.map
4939
+ //# sourceMappingURL=useProtocolTemplates-D3IZKLqr.js.map