@morscherlab/mint-sdk 1.0.0-beta.4 → 1.0.0-beta.6

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 (58) hide show
  1. package/dist/components/AppSidebar.vue.d.ts +1 -1
  2. package/dist/components/index.js +2 -2
  3. package/dist/{components-BkGF4B4y.js → components-DihbSJjU.js} +2524 -2517
  4. package/dist/components-DihbSJjU.js.map +1 -0
  5. package/dist/composables/index.js +3 -3
  6. package/dist/{composables-CHsME9H1.js → composables-BcgZ6diz.js} +2 -2
  7. package/dist/{composables-CHsME9H1.js.map → composables-BcgZ6diz.js.map} +1 -1
  8. package/dist/index.js +5 -5
  9. package/dist/install.js +2 -2
  10. package/dist/styles.css +738 -738
  11. package/dist/templates/adapters.d.ts +7 -1
  12. package/dist/templates/catalog.d.ts +5 -5
  13. package/dist/templates/index.d.ts +2 -2
  14. package/dist/templates/index.js +2 -2
  15. package/dist/templates/presets.d.ts +4 -4
  16. package/dist/templates/types.d.ts +4 -1
  17. package/dist/{templates-B5jmTWuk.js → templates-Cyt0Suwf.js} +213 -19
  18. package/dist/{templates-B5jmTWuk.js.map → templates-Cyt0Suwf.js.map} +1 -1
  19. package/dist/{useScheduleDrag-BgzpQT53.js → useExperimentData-CM6Y0u5L.js} +183 -183
  20. package/dist/useExperimentData-CM6Y0u5L.js.map +1 -0
  21. package/package.json +1 -1
  22. package/src/__tests__/components/AppSidebar.test.ts +4 -2
  23. package/src/__tests__/components/AppTopBar.test.ts +9 -3
  24. package/src/__tests__/components/{AppPageSelector.test.ts → AppTopBarPageSelector.test.ts} +8 -8
  25. package/src/__tests__/components/{AppPillNav.test.ts → AppTopBarPillNav.test.ts} +7 -7
  26. package/src/__tests__/components/BioTemplatePackWorkspaceView.test.ts +17 -0
  27. package/src/__tests__/components/BioTemplatePresetWorkspaceView.test.ts +22 -0
  28. package/src/__tests__/components/BioTemplateRenderer.test.ts +25 -0
  29. package/src/__tests__/components/ComponentBindingRenderer.test.ts +117 -0
  30. package/src/__tests__/composables/useBioTemplatePackWorkspace.test.ts +1 -1
  31. package/src/__tests__/composables/useBioTemplatePresetWorkspace.test.ts +1 -1
  32. package/src/__tests__/composables/useControlSchema.test.ts +1 -1
  33. package/src/__tests__/templates/templates.test.ts +44 -0
  34. package/src/components/AppSidebar.vue +3 -3
  35. package/src/components/AppTopBar.vue +7 -7
  36. package/src/components/BioTemplatePresetWorkspaceView.vue +3 -3
  37. package/src/components/BioTemplateRenderer.story.vue +2 -2
  38. package/src/components/ComponentBindingRenderer.story.vue +30 -0
  39. package/src/components/ComponentBindingRenderer.vue +9 -0
  40. package/src/components/ExperimentPopover.story.vue +2 -2
  41. package/src/styles/components/app-page-selector.css +1 -1
  42. package/src/styles/components/app-pill-nav.css +1 -1
  43. package/src/styles/components/experiment-popover.css +2 -2
  44. package/src/templates/adapters.ts +193 -0
  45. package/src/templates/catalog.ts +5 -5
  46. package/src/templates/componentBindings.ts +52 -3
  47. package/src/templates/index.ts +6 -0
  48. package/src/templates/packs.ts +10 -1
  49. package/src/templates/presets.ts +14 -4
  50. package/src/templates/types.ts +4 -0
  51. package/dist/components-BkGF4B4y.js.map +0 -1
  52. package/dist/useScheduleDrag-BgzpQT53.js.map +0 -1
  53. /package/dist/__tests__/components/{AppPageSelector.test.d.ts → AppTopBarPageSelector.test.d.ts} +0 -0
  54. /package/dist/__tests__/components/{AppPillNav.test.d.ts → AppTopBarPillNav.test.d.ts} +0 -0
  55. /package/dist/components/internal/{AppPageSelectorInternal.vue.d.ts → AppTopBarPageSelectorInternal.vue.d.ts} +0 -0
  56. /package/dist/components/internal/{AppPillNavInternal.vue.d.ts → AppTopBarPillNavInternal.vue.d.ts} +0 -0
  57. /package/src/components/internal/{AppPageSelectorInternal.vue → AppTopBarPageSelectorInternal.vue} +0 -0
  58. /package/src/components/internal/{AppPillNavInternal.vue → AppTopBarPillNavInternal.vue} +0 -0
@@ -1,5 +1,5 @@
1
1
  import { PlateMapEditorState, Well } from '../types';
2
- import { AssayMatrixColumnsAdapterResult, AssayMatrixDataFrameAdapterResult, AssayMatrixRowsAdapterResult, AssayMatrixTemplate, AssayMatrixTemplateData, BioTemplateEnvelope, CalibrationCurveColumnsAdapterResult, CalibrationCurveDataFrameAdapterResult, CalibrationCurveRowsAdapterResult, CalibrationCurveTemplate, CalibrationCurveTemplateData, DataFrameTemplate, DoseConditionsAdapterResult, DoseResponseTemplate, DoseResponseTemplateData, FlowCytometryPanelTemplate, FlowCytometryPanelTemplateData, FlowPanelColumnsAdapterResult, FlowPanelDataFrameAdapterResult, FlowPanelRowsAdapterResult, InstrumentRunColumnsAdapterResult, InstrumentRunDataFrameAdapterResult, InstrumentRunRowsAdapterResult, InstrumentRunTemplate, InstrumentRunTemplateData, PlateMapEditorAdapterResult, PlateMapTemplate, PlateMapTemplateData, ProtocolColumnsAdapterResult, ProtocolDataFrameAdapterResult, ProtocolRowsAdapterResult, ProtocolStepsAdapterResult, ProtocolStepsTemplate, ProtocolStepsTemplateData, QpcrColumnsAdapterResult, QpcrDataFrameAdapterResult, QpcrPlateTemplate, QpcrPlateTemplateData, QpcrRowsAdapterResult, QpcrWellMapAdapterResult, ReagentColumnsAdapterResult, ReagentDataFrameAdapterResult, ReagentListItemsAdapterResult, ReagentListTemplate, ReagentListTemplateData, ReagentRowsAdapterResult, SampleColumnsAdapterResult, SampleDataFrameAdapterResult, SampleOptionsAdapterResult, SamplePrepColumnsAdapterResult, SamplePrepDataFrameAdapterResult, SamplePrepRowsAdapterResult, SamplePrepTemplate, SamplePrepTemplateData, SampleRowsAdapterResult, SampleSheetTemplate, SampleSheetTemplateData, TimeCourseColumnsAdapterResult, TimeCourseDataFrameAdapterResult, TimeCourseRowsAdapterResult, TimeCourseStepsAdapterResult, TimeCourseTemplate, TimeCourseTemplateData, TemplateDataFrameAdapterResult, WellMapAdapterResult } from './types';
2
+ import { AssayMatrixColumnsAdapterResult, AssayMatrixDataFrameAdapterResult, AssayMatrixRowsAdapterResult, AssayMatrixSampleOptionsAdapterResult, AssayMatrixTemplate, AssayMatrixTemplateData, BioTemplateEnvelope, CalibrationCurveColumnsAdapterResult, CalibrationCurveDataFrameAdapterResult, CalibrationCurveRowsAdapterResult, CalibrationCurveTemplate, CalibrationCurveTemplateData, DataFrameTemplate, DoseConditionsAdapterResult, DoseResponseTemplate, DoseResponseTemplateData, FlowCytometryPanelTemplate, FlowCytometryPanelTemplateData, FlowPanelColumnsAdapterResult, FlowPanelDataFrameAdapterResult, FlowPanelRowsAdapterResult, InstrumentRunColumnsAdapterResult, InstrumentRunDataFrameAdapterResult, InstrumentRunRowsAdapterResult, InstrumentRunScheduleEventsAdapterResult, InstrumentRunStepsAdapterResult, InstrumentRunTemplate, InstrumentRunTemplateData, PlateMapEditorAdapterResult, PlateMapTemplate, PlateMapTemplateData, ProtocolColumnsAdapterResult, ProtocolDataFrameAdapterResult, ProtocolRowsAdapterResult, ProtocolStepsAdapterResult, ProtocolStepsTemplate, ProtocolStepsTemplateData, QpcrColumnsAdapterResult, QpcrDataFrameAdapterResult, QpcrPlateTemplate, QpcrPlateTemplateData, QpcrRowsAdapterResult, QpcrWellMapAdapterResult, ReagentColumnsAdapterResult, ReagentDataFrameAdapterResult, ReagentListItemsAdapterResult, ReagentListTemplate, ReagentListTemplateData, ReagentRowsAdapterResult, SampleColumnsAdapterResult, SampleDataFrameAdapterResult, SampleOptionsAdapterResult, SamplePrepColumnsAdapterResult, SamplePrepDataFrameAdapterResult, SamplePrepRowsAdapterResult, SamplePrepTemplate, SamplePrepTemplateData, SampleRowsAdapterResult, SampleSheetTemplate, SampleSheetTemplateData, TimeCourseColumnsAdapterResult, TimeCourseDataFrameAdapterResult, TimeCourseRowsAdapterResult, TimeCourseStepsAdapterResult, TimeCourseTemplate, TimeCourseTemplateData, TemplateDataFrameAdapterResult, WellMapAdapterResult } from './types';
3
3
  export declare function toPlateMapEditorState(template: PlateMapTemplate | PlateMapTemplateData): PlateMapEditorAdapterResult;
4
4
  export declare function toWellPlateWells(template: PlateMapTemplate | PlateMapTemplateData, plateId?: string): WellMapAdapterResult;
5
5
  export declare function toSampleRows(template: SampleSheetTemplate | SampleSheetTemplateData): SampleRowsAdapterResult;
@@ -25,6 +25,8 @@ export declare function toProtocolDataFrame(template: ProtocolStepsTemplate | Pr
25
25
  export declare function toAssayMatrixRows(template: AssayMatrixTemplate | AssayMatrixTemplateData): AssayMatrixRowsAdapterResult;
26
26
  export declare function toAssayMatrixColumns(template: AssayMatrixTemplate | AssayMatrixTemplateData): AssayMatrixColumnsAdapterResult;
27
27
  export declare function toAssayMatrixDataFrame(template: AssayMatrixTemplate | AssayMatrixTemplateData): AssayMatrixDataFrameAdapterResult;
28
+ /** Convert an assay-matrix template into SampleSelector options derived from assay samples. */
29
+ export declare function toAssayMatrixSampleOptions(template: AssayMatrixTemplate | AssayMatrixTemplateData): AssayMatrixSampleOptionsAdapterResult;
28
30
  export declare function toReagentListItems(template: ReagentListTemplate | ReagentListTemplateData): ReagentListItemsAdapterResult;
29
31
  export declare function toReagentRows(template: ReagentListTemplate | ReagentListTemplateData): ReagentRowsAdapterResult;
30
32
  export declare function toReagentColumns(): ReagentColumnsAdapterResult;
@@ -35,6 +37,10 @@ export declare function toFlowPanelDataFrame(template: FlowCytometryPanelTemplat
35
37
  export declare function toInstrumentRunRows(template: InstrumentRunTemplate | InstrumentRunTemplateData): InstrumentRunRowsAdapterResult;
36
38
  export declare function toInstrumentRunColumns(): InstrumentRunColumnsAdapterResult;
37
39
  export declare function toInstrumentRunDataFrame(template: InstrumentRunTemplate | InstrumentRunTemplateData): InstrumentRunDataFrameAdapterResult;
40
+ /** Convert an instrument-run template into ExperimentTimeline protocol steps for acquisition queue previews. */
41
+ export declare function toInstrumentRunSteps(template: InstrumentRunTemplate | InstrumentRunTemplateData): InstrumentRunStepsAdapterResult;
42
+ /** Convert an instrument-run template into readonly ScheduleCalendar events ordered by run queue timing. */
43
+ export declare function toInstrumentRunScheduleEvents(template: InstrumentRunTemplate | InstrumentRunTemplateData): InstrumentRunScheduleEventsAdapterResult;
38
44
  export declare function toQpcrRows(template: QpcrPlateTemplate | QpcrPlateTemplateData): QpcrRowsAdapterResult;
39
45
  export declare function toQpcrColumns(): QpcrColumnsAdapterResult;
40
46
  export declare function toQpcrDataFrame(template: QpcrPlateTemplate | QpcrPlateTemplateData): QpcrDataFrameAdapterResult;
@@ -122,8 +122,8 @@ export declare const bioTemplateCatalog: readonly [{
122
122
  readonly aliases: readonly ["omics matrix", "measurement matrix", "readout matrix", "feature table"];
123
123
  readonly python_import: "from mint_sdk.templates import AssayMatrixTemplate, save_template";
124
124
  readonly python_example: "AssayMatrixTemplate.create(samples=[\"S001\", \"S002\"], features=[\"Lactate\", \"Glucose\"])";
125
- readonly frontend_import: "import { toTemplateDataFrame } from '@morscherlab/mint-sdk/templates'";
126
- readonly frontend_adapters: readonly ["toTemplateDataFrame", "toAssayMatrixDataFrame", "toAssayMatrixRows", "toAssayMatrixColumns"];
125
+ readonly frontend_import: "import { toAssayMatrixSampleOptions, toTemplateDataFrame } from '@morscherlab/mint-sdk/templates'";
126
+ readonly frontend_adapters: readonly ["toTemplateDataFrame", "toAssayMatrixDataFrame", "toAssayMatrixRows", "toAssayMatrixColumns", "toAssayMatrixSampleOptions"];
127
127
  readonly components: readonly ["DataFrame", "ChartContainer", "SampleSelector"];
128
128
  readonly add_command: "mint add data-template assay-matrix --page";
129
129
  }, {
@@ -164,9 +164,9 @@ export declare const bioTemplateCatalog: readonly [{
164
164
  readonly aliases: readonly ["run queue", "sequence table", "sample queue", "lcms run", "instrument sequence", "batch run"];
165
165
  readonly python_import: "from mint_sdk.templates import InstrumentRunTemplate, save_template";
166
166
  readonly python_example: "InstrumentRunTemplate.create([\"S001\", \"S002\"], instrument=\"LC-MS\")";
167
- readonly frontend_import: "import { toInstrumentRunDataFrame, toTemplateDataFrame } from '@morscherlab/mint-sdk/templates'";
168
- readonly frontend_adapters: readonly ["toTemplateDataFrame", "toInstrumentRunDataFrame", "toInstrumentRunRows", "toInstrumentRunColumns"];
169
- readonly components: readonly ["DataFrame", "ScheduleCalendar", "SampleSelector"];
167
+ readonly frontend_import: "import { toInstrumentRunDataFrame, toInstrumentRunScheduleEvents, toInstrumentRunSteps, toTemplateDataFrame } from '@morscherlab/mint-sdk/templates'";
168
+ readonly frontend_adapters: readonly ["toTemplateDataFrame", "toInstrumentRunDataFrame", "toInstrumentRunRows", "toInstrumentRunColumns", "toInstrumentRunSteps", "toInstrumentRunScheduleEvents"];
169
+ readonly components: readonly ["DataFrame", "ExperimentTimeline", "ScheduleCalendar", "SampleSelector"];
170
170
  readonly add_command: "mint add data-template instrument-run --page";
171
171
  }, {
172
172
  readonly name: "qpcr-plate";
@@ -6,8 +6,8 @@ export { getBioTemplateComponentProps, getBioTemplateComponentBindings, listBioT
6
6
  export type { BioTemplateComponentBindingsById, BioTemplateComponentPropsByComponent, BioTemplateComponentPropsById, BioTemplateComponentPropsLookupOptions, } from './componentBindings';
7
7
  export { bioTemplatePresets, getBioTemplatePresetInfo, listBioTemplatePresets, searchBioTemplatePresets, } from './presets';
8
8
  export { bioTemplatePacks, getBioTemplatePackInfo, listBioTemplatePacks, searchBioTemplatePacks, } from './packs';
9
- export { toAssayMatrixColumns, toAssayMatrixDataFrame, toAssayMatrixRows, toCalibrationCurveColumns, toCalibrationCurveDataFrame, toCalibrationCurveRows, toDoseConditions, toDoseLayoutState, toFlowPanelColumns, toFlowPanelDataFrame, toFlowPanelRows, toInstrumentRunColumns, toInstrumentRunDataFrame, toInstrumentRunRows, toPlateMapEditorState, toProtocolColumns, toProtocolDataFrame, toProtocolRows, toProtocolSteps, toQpcrColumns, toQpcrDataFrame, toQpcrRows, toQpcrWellPlateWells, toReagentColumns, toReagentDataFrame, toReagentListItems, toReagentRows, toSampleColumns, toSampleDataFrame, toSampleOptions, toSamplePrepColumns, toSamplePrepDataFrame, toSamplePrepRows, toSampleRows, toTemplateDataFrame, toTimeCourseColumns, toTimeCourseDataFrame, toTimeCourseRows, toTimeCourseSteps, toWellMapArray, toWellPlateWells, } from './adapters';
10
- export type { AssayFeature, AssayFeatureType, AssayMatrixColumnsAdapterResult, AssayMatrixDataFrameAdapterResult, AssayMatrixRowsAdapterResult, AssayMatrixTemplate, AssayMatrixTemplateData, AssayMeasurement, AssaySample, BioTemplateEnvelope, CalibrationAcceptance, CalibrationAcceptanceInput, CalibrationCurveColumnsAdapterResult, CalibrationCurveDataFrameAdapterResult, CalibrationCurveRowsAdapterResult, CalibrationCurveTemplate, CalibrationCurveTemplateData, CalibrationModel, CalibrationPoint, CalibrationPointInput, CalibrationPointRole, CalibrationPointStatus, CompoundDoseSeries, ControlDefinition, ControlRole, CreateBioTemplatePackCollectionOptions, CreateAssayMatrixTemplateOptions, CreateCalibrationCurveTemplateOptions, CreateDoseResponseTemplateOptions, CreateElisaAssayCollectionOptions, CreateFlowCytometryAssayCollectionOptions, CreateWesternBlotAssayCollectionOptions, CreateFlowCytometryPanelTemplateOptions, CreateInstrumentRunTemplateOptions, CreateLcmsBatchCollectionOptions, CreatePlateMapTemplateOptions, CreateProtocolStepsTemplateOptions, CreateQpcrExpressionCollectionOptions, CreateQpcrPlateTemplateOptions, CreateReagentListTemplateOptions, CreateSampleSheetTemplateOptions, CreateSamplePrepTemplateOptions, CreateTimeCourseTemplateOptions, CreateWellPlateScreenCollectionOptions, DoseConditionsAdapterResult, DoseResponseTemplate, DoseResponseTemplateData, FlowControlKind, FlowCytometryPanelTemplate, FlowCytometryPanelTemplateData, FlowMarkerPurpose, FlowPanelColumnsAdapterResult, FlowPanelControl, FlowPanelDataFrameAdapterResult, FlowPanelMarker, FlowPanelRowsAdapterResult, InstrumentMethod, InstrumentMethodInput, InstrumentRunColumnsAdapterResult, InstrumentRunDataFrameAdapterResult, InstrumentRunItem, InstrumentRunItemInput, InstrumentRunItemKind, InstrumentRunRowsAdapterResult, InstrumentRunStatus, InstrumentRunTemplate, InstrumentRunTemplateData, DataFrameAdapterResult, DataFrameTemplate, PlateMapEditorAdapterResult, PlateMapTemplate, PlateMapTemplateData, ProtocolColumnsAdapterResult, ProtocolDataFrameAdapterResult, ProtocolRowsAdapterResult, ProtocolStepRecord, ProtocolStepsAdapterResult, ProtocolStepsTemplate, ProtocolStepsTemplateData, QpcrChemistry, QpcrColumnsAdapterResult, QpcrControlKind, QpcrDataFrameAdapterResult, QpcrPlateTemplate, QpcrPlateTemplateData, QpcrReaction, QpcrRowsAdapterResult, QpcrSample, QpcrTarget, QpcrWellMapAdapterResult, ReagentColumnsAdapterResult, ReagentDataFrameAdapterResult, ReagentKind, ReagentListItemsAdapterResult, ReagentListTemplate, ReagentListTemplateData, ReagentRecord, ReagentTemplateInput, ReagentRowsAdapterResult, SampleColumn, SampleColumnType, SampleColumnsAdapterResult, SampleDataFrameAdapterResult, SampleGroupDefinition, SampleOptionsAdapterResult, SamplePrepColumnsAdapterResult, SamplePrepDataFrameAdapterResult, SamplePrepRowsAdapterResult, SamplePrepStatus, SamplePrepStep, SamplePrepStepInput, SamplePrepStepType, SamplePrepTemplate, SamplePrepTemplateData, SampleRecord, SampleRowsAdapterResult, SampleSheetTemplate, SampleSheetTemplateData, TimeCourseColumnsAdapterResult, TimeCourseCondition, TimeCourseDataFrameAdapterResult, TimeCourseRowsAdapterResult, TimeCourseSample, TimeCourseStepsAdapterResult, TimeCourseTemplate, TimeCourseTemplateData, TimePoint, TimeUnit, TemplateId, TemplatePackId, TemplatePresetId, TemplateCollection, TemplateCollectionEnvelope, TemplateDataFrameAdapterResult, TemplateKind, TemplatePlateMap, TemplateSample, TemplateWell, WellMapAdapterResult, } from './types';
9
+ export { toAssayMatrixColumns, toAssayMatrixDataFrame, toAssayMatrixRows, toAssayMatrixSampleOptions, toCalibrationCurveColumns, toCalibrationCurveDataFrame, toCalibrationCurveRows, toDoseConditions, toDoseLayoutState, toFlowPanelColumns, toFlowPanelDataFrame, toFlowPanelRows, toInstrumentRunColumns, toInstrumentRunDataFrame, toInstrumentRunRows, toInstrumentRunScheduleEvents, toInstrumentRunSteps, toPlateMapEditorState, toProtocolColumns, toProtocolDataFrame, toProtocolRows, toProtocolSteps, toQpcrColumns, toQpcrDataFrame, toQpcrRows, toQpcrWellPlateWells, toReagentColumns, toReagentDataFrame, toReagentListItems, toReagentRows, toSampleColumns, toSampleDataFrame, toSampleOptions, toSamplePrepColumns, toSamplePrepDataFrame, toSamplePrepRows, toSampleRows, toTemplateDataFrame, toTimeCourseColumns, toTimeCourseDataFrame, toTimeCourseRows, toTimeCourseSteps, toWellMapArray, toWellPlateWells, } from './adapters';
10
+ export type { AssayFeature, AssayFeatureType, AssayMatrixColumnsAdapterResult, AssayMatrixDataFrameAdapterResult, AssayMatrixRowsAdapterResult, AssayMatrixSampleOptionsAdapterResult, AssayMatrixTemplate, AssayMatrixTemplateData, AssayMeasurement, AssaySample, BioTemplateEnvelope, CalibrationAcceptance, CalibrationAcceptanceInput, CalibrationCurveColumnsAdapterResult, CalibrationCurveDataFrameAdapterResult, CalibrationCurveRowsAdapterResult, CalibrationCurveTemplate, CalibrationCurveTemplateData, CalibrationModel, CalibrationPoint, CalibrationPointInput, CalibrationPointRole, CalibrationPointStatus, CompoundDoseSeries, ControlDefinition, ControlRole, CreateBioTemplatePackCollectionOptions, CreateAssayMatrixTemplateOptions, CreateCalibrationCurveTemplateOptions, CreateDoseResponseTemplateOptions, CreateElisaAssayCollectionOptions, CreateFlowCytometryAssayCollectionOptions, CreateWesternBlotAssayCollectionOptions, CreateFlowCytometryPanelTemplateOptions, CreateInstrumentRunTemplateOptions, CreateLcmsBatchCollectionOptions, CreatePlateMapTemplateOptions, CreateProtocolStepsTemplateOptions, CreateQpcrExpressionCollectionOptions, CreateQpcrPlateTemplateOptions, CreateReagentListTemplateOptions, CreateSampleSheetTemplateOptions, CreateSamplePrepTemplateOptions, CreateTimeCourseTemplateOptions, CreateWellPlateScreenCollectionOptions, DoseConditionsAdapterResult, DoseResponseTemplate, DoseResponseTemplateData, FlowControlKind, FlowCytometryPanelTemplate, FlowCytometryPanelTemplateData, FlowMarkerPurpose, FlowPanelColumnsAdapterResult, FlowPanelControl, FlowPanelDataFrameAdapterResult, FlowPanelMarker, FlowPanelRowsAdapterResult, InstrumentMethod, InstrumentMethodInput, InstrumentRunColumnsAdapterResult, InstrumentRunDataFrameAdapterResult, InstrumentRunItem, InstrumentRunItemInput, InstrumentRunItemKind, InstrumentRunRowsAdapterResult, InstrumentRunScheduleEventsAdapterResult, InstrumentRunStepsAdapterResult, InstrumentRunStatus, InstrumentRunTemplate, InstrumentRunTemplateData, DataFrameAdapterResult, DataFrameTemplate, PlateMapEditorAdapterResult, PlateMapTemplate, PlateMapTemplateData, ProtocolColumnsAdapterResult, ProtocolDataFrameAdapterResult, ProtocolRowsAdapterResult, ProtocolStepRecord, ProtocolStepsAdapterResult, ProtocolStepsTemplate, ProtocolStepsTemplateData, QpcrChemistry, QpcrColumnsAdapterResult, QpcrControlKind, QpcrDataFrameAdapterResult, QpcrPlateTemplate, QpcrPlateTemplateData, QpcrReaction, QpcrRowsAdapterResult, QpcrSample, QpcrTarget, QpcrWellMapAdapterResult, ReagentColumnsAdapterResult, ReagentDataFrameAdapterResult, ReagentKind, ReagentListItemsAdapterResult, ReagentListTemplate, ReagentListTemplateData, ReagentRecord, ReagentTemplateInput, ReagentRowsAdapterResult, SampleColumn, SampleColumnType, SampleColumnsAdapterResult, SampleDataFrameAdapterResult, SampleGroupDefinition, SampleOptionsAdapterResult, SamplePrepColumnsAdapterResult, SamplePrepDataFrameAdapterResult, SamplePrepRowsAdapterResult, SamplePrepStatus, SamplePrepStep, SamplePrepStepInput, SamplePrepStepType, SamplePrepTemplate, SamplePrepTemplateData, SampleRecord, SampleRowsAdapterResult, SampleSheetTemplate, SampleSheetTemplateData, TimeCourseColumnsAdapterResult, TimeCourseCondition, TimeCourseDataFrameAdapterResult, TimeCourseRowsAdapterResult, TimeCourseSample, TimeCourseStepsAdapterResult, TimeCourseTemplate, TimeCourseTemplateData, TimePoint, TimeUnit, TemplateId, TemplatePackId, TemplatePresetId, TemplateCollection, TemplateCollectionEnvelope, TemplateDataFrameAdapterResult, TemplateKind, TemplatePlateMap, TemplateSample, TemplateWell, WellMapAdapterResult, } from './types';
11
11
  export type { BioTemplateCatalogEntry, } from './catalog';
12
12
  export type { BioTemplateComponentBinding, BioTemplateComponentImport, BioTemplateComponentPropsBinding, BioTemplateResolvedComponentBinding, BioTemplateComponentSnippet, BioTemplateComponentSnippetOptions, BioTemplateComponentTarget, BioTemplateComponentUsage, BioTemplateComponentUsageOptions, } from './componentBindings';
13
13
  export type { BioTemplateControlSchema, BioTemplateControlTarget, } from './controlSchemas';
@@ -1,2 +1,2 @@
1
- import { $ as toSamplePrepRows, $t as listBioTemplatePresets, A as toFlowPanelDataFrame, At as createTemplateCollection, B as toQpcrColumns, Bt as validateCalibrationCurveData, C as toAssayMatrixRows, Ct as createPlateMapTemplate, D as toDoseConditions, Dt as createReagentListTemplate, E as toCalibrationCurveRows, Et as createQpcrPlateTemplate, F as toPlateMapEditorState, Ft as ensureTemplateEnvelope, G as toReagentDataFrame, Gt as validateProtocolStepsData, H as toQpcrRows, Ht as validateFlowCytometryPanelData, I as toProtocolColumns, It as ensureTemplateFromCollection, J as toSampleColumns, Jt as validateSamplePrepData, K as toReagentListItems, Kt as validateQpcrPlateData, L as toProtocolDataFrame, Lt as extractTemplateCollection, M as toInstrumentRunColumns, Mt as createTimeCourseTemplate, N as toInstrumentRunDataFrame, Nt as createWellPlateScreenCollection, O as toDoseLayoutState, Ot as createSamplePrepTemplate, P as toInstrumentRunRows, Pt as createWesternBlotAssayCollection, Q as toSamplePrepDataFrame, Qt as getBioTemplatePresetInfo, R as toProtocolRows, Rt as getTemplateData, S as toAssayMatrixDataFrame, St as createLcmsBatchCollection, T as toCalibrationCurveDataFrame, Tt as createQpcrExpressionCollection, U as toQpcrWellPlateWells, Ut as validateInstrumentRunData, V as toQpcrDataFrame, Vt as validateDoseResponseData, W as toReagentColumns, Wt as validatePlateMapData, X as toSampleOptions, Xt as validateTimeCourseData, Y as toSampleDataFrame, Yt as validateSampleSheetData, Z as toSamplePrepColumns, Zt as bioTemplatePresets, _ as toBioTemplateComponentPropsByComponent, _t as createDoseResponseTemplate, a as getBioTemplateControlDefaults, an as bioTemplateCatalog, at as toTimeCourseSteps, b as toBioTemplateComponentUsage, bt as createFlowCytometryPanelTemplate, c as listBioTemplatePresetControlSchemas, cn as searchBioTemplateCatalog, ct as TEMPLATE_COLLECTION_KEY, d as getBioTemplateComponentProps, dt as createAssayMatrixTemplate, en as searchBioTemplatePresets, et as toSampleRows, f as listBioTemplateComponentBindings, ft as createBioTemplatePackCollection, g as toBioTemplateComponentProps, gt as createDefaultBioTemplate, h as toBioTemplateComponentImports, ht as createCalibrationCurveTemplate, i as createBioTemplateControlToolkit, in as searchBioTemplatePacks, it as toTimeCourseRows, j as toFlowPanelRows, jt as createTemplateEnvelope, k as toFlowPanelColumns, kt as createSampleSheetTemplate, l as requireBioTemplateControlSchema, lt as assertTemplateEnvelope, m as toBioTemplateComponentBindingsById, mt as createBioTemplatePresetCollectionFromControls, n as bioTemplateControlsToSectionFormSchemas, nn as getBioTemplatePackInfo, nt as toTimeCourseColumns, o as getBioTemplateControlSchema, on as getBioTemplateInfo, ot as toWellMapArray, p as toBioTemplateComponentBindings, pt as createBioTemplatePresetCollection, q as toReagentRows, qt as validateReagentListData, r as bioTemplateControlsToSidebarPanels, rn as listBioTemplatePacks, rt as toTimeCourseDataFrame, s as listBioTemplateControlSchemas, sn as listBioTemplateCatalog, st as toWellPlateWells, t as bioTemplateControlsToFormSchema, tn as bioTemplatePacks, tt as toTemplateDataFrame, u as getBioTemplateComponentBindings, ut as bioTemplatePresetControlValuesToOptions, v as toBioTemplateComponentPropsById, vt as createElisaAssayCollection, w as toCalibrationCurveColumns, wt as createProtocolStepsTemplate, x as toAssayMatrixColumns, xt as createInstrumentRunTemplate, y as toBioTemplateComponentSnippets, yt as createFlowCytometryAssayCollection, z as toProtocolSteps, zt as validateAssayMatrixData } from "../templates-B5jmTWuk.js";
2
- export { TEMPLATE_COLLECTION_KEY, assertTemplateEnvelope, bioTemplateCatalog, bioTemplateControlsToFormSchema, bioTemplateControlsToSectionFormSchemas, bioTemplateControlsToSidebarPanels, bioTemplatePacks, bioTemplatePresetControlValuesToOptions, bioTemplatePresets, createAssayMatrixTemplate, createBioTemplateControlToolkit, createBioTemplatePackCollection, createBioTemplatePresetCollection, createBioTemplatePresetCollectionFromControls, createCalibrationCurveTemplate, createDefaultBioTemplate, createDoseResponseTemplate, createElisaAssayCollection, createFlowCytometryAssayCollection, createFlowCytometryPanelTemplate, createInstrumentRunTemplate, createLcmsBatchCollection, createPlateMapTemplate, createProtocolStepsTemplate, createQpcrExpressionCollection, createQpcrPlateTemplate, createReagentListTemplate, createSamplePrepTemplate, createSampleSheetTemplate, createTemplateCollection, createTemplateEnvelope, createTimeCourseTemplate, createWellPlateScreenCollection, createWesternBlotAssayCollection, ensureTemplateEnvelope, ensureTemplateFromCollection, extractTemplateCollection, getBioTemplateComponentBindings, getBioTemplateComponentProps, getBioTemplateControlDefaults, getBioTemplateControlSchema, getBioTemplateInfo, getBioTemplatePackInfo, getBioTemplatePresetInfo, getTemplateData, listBioTemplateCatalog, listBioTemplateComponentBindings, listBioTemplateControlSchemas, listBioTemplatePacks, listBioTemplatePresetControlSchemas, listBioTemplatePresets, requireBioTemplateControlSchema, searchBioTemplateCatalog, searchBioTemplatePacks, searchBioTemplatePresets, toAssayMatrixColumns, toAssayMatrixDataFrame, toAssayMatrixRows, toBioTemplateComponentBindings, toBioTemplateComponentBindingsById, toBioTemplateComponentImports, toBioTemplateComponentProps, toBioTemplateComponentPropsByComponent, toBioTemplateComponentPropsById, toBioTemplateComponentSnippets, toBioTemplateComponentUsage, toCalibrationCurveColumns, toCalibrationCurveDataFrame, toCalibrationCurveRows, toDoseConditions, toDoseLayoutState, toFlowPanelColumns, toFlowPanelDataFrame, toFlowPanelRows, toInstrumentRunColumns, toInstrumentRunDataFrame, toInstrumentRunRows, toPlateMapEditorState, toProtocolColumns, toProtocolDataFrame, toProtocolRows, toProtocolSteps, toQpcrColumns, toQpcrDataFrame, toQpcrRows, toQpcrWellPlateWells, toReagentColumns, toReagentDataFrame, toReagentListItems, toReagentRows, toSampleColumns, toSampleDataFrame, toSampleOptions, toSamplePrepColumns, toSamplePrepDataFrame, toSamplePrepRows, toSampleRows, toTemplateDataFrame, toTimeCourseColumns, toTimeCourseDataFrame, toTimeCourseRows, toTimeCourseSteps, toWellMapArray, toWellPlateWells, validateAssayMatrixData, validateCalibrationCurveData, validateDoseResponseData, validateFlowCytometryPanelData, validateInstrumentRunData, validatePlateMapData, validateProtocolStepsData, validateQpcrPlateData, validateReagentListData, validateSamplePrepData, validateSampleSheetData, validateTimeCourseData };
1
+ import { $ as toSampleOptions, $t as validateTimeCourseData, A as toFlowPanelColumns, At as createReagentListTemplate, B as toProtocolDataFrame, Bt as extractTemplateCollection, C as toAssayMatrixRows, Ct as createFlowCytometryPanelTemplate, D as toCalibrationCurveRows, Dt as createProtocolStepsTemplate, E as toCalibrationCurveDataFrame, Et as createPlateMapTemplate, F as toInstrumentRunRows, Ft as createTimeCourseTemplate, G as toQpcrRows, Gt as validateFlowCytometryPanelData, H as toProtocolSteps, Ht as validateAssayMatrixData, I as toInstrumentRunScheduleEvents, It as createWellPlateScreenCollection, J as toReagentDataFrame, Jt as validateProtocolStepsData, K as toQpcrWellPlateWells, Kt as validateInstrumentRunData, L as toInstrumentRunSteps, Lt as createWesternBlotAssayCollection, M as toFlowPanelRows, Mt as createSampleSheetTemplate, N as toInstrumentRunColumns, Nt as createTemplateCollection, O as toDoseConditions, Ot as createQpcrExpressionCollection, P as toInstrumentRunDataFrame, Pt as createTemplateEnvelope, Q as toSampleDataFrame, Qt as validateSampleSheetData, R as toPlateMapEditorState, Rt as ensureTemplateEnvelope, S as toAssayMatrixDataFrame, St as createFlowCytometryAssayCollection, T as toCalibrationCurveColumns, Tt as createLcmsBatchCollection, U as toQpcrColumns, Ut as validateCalibrationCurveData, V as toProtocolRows, Vt as getTemplateData, W as toQpcrDataFrame, Wt as validateDoseResponseData, X as toReagentRows, Xt as validateReagentListData, Y as toReagentListItems, Yt as validateQpcrPlateData, Z as toSampleColumns, Zt as validateSamplePrepData, _ as toBioTemplateComponentPropsByComponent, _t as createBioTemplatePresetCollectionFromControls, a as getBioTemplateControlDefaults, an as getBioTemplatePackInfo, at as toTimeCourseColumns, b as toBioTemplateComponentUsage, bt as createDoseResponseTemplate, c as listBioTemplatePresetControlSchemas, cn as bioTemplateCatalog, ct as toTimeCourseSteps, d as getBioTemplateComponentProps, dn as searchBioTemplateCatalog, dt as TEMPLATE_COLLECTION_KEY, en as bioTemplatePresets, et as toSamplePrepColumns, f as listBioTemplateComponentBindings, ft as assertTemplateEnvelope, g as toBioTemplateComponentProps, gt as createBioTemplatePresetCollection, h as toBioTemplateComponentImports, ht as createBioTemplatePackCollection, i as createBioTemplateControlToolkit, in as bioTemplatePacks, it as toTemplateDataFrame, j as toFlowPanelDataFrame, jt as createSamplePrepTemplate, k as toDoseLayoutState, kt as createQpcrPlateTemplate, l as requireBioTemplateControlSchema, ln as getBioTemplateInfo, lt as toWellMapArray, m as toBioTemplateComponentBindingsById, mt as createAssayMatrixTemplate, n as bioTemplateControlsToSectionFormSchemas, nn as listBioTemplatePresets, nt as toSamplePrepRows, o as getBioTemplateControlSchema, on as listBioTemplatePacks, ot as toTimeCourseDataFrame, p as toBioTemplateComponentBindings, pt as bioTemplatePresetControlValuesToOptions, q as toReagentColumns, qt as validatePlateMapData, r as bioTemplateControlsToSidebarPanels, rn as searchBioTemplatePresets, rt as toSampleRows, s as listBioTemplateControlSchemas, sn as searchBioTemplatePacks, st as toTimeCourseRows, t as bioTemplateControlsToFormSchema, tn as getBioTemplatePresetInfo, tt as toSamplePrepDataFrame, u as getBioTemplateComponentBindings, un as listBioTemplateCatalog, ut as toWellPlateWells, v as toBioTemplateComponentPropsById, vt as createCalibrationCurveTemplate, w as toAssayMatrixSampleOptions, wt as createInstrumentRunTemplate, x as toAssayMatrixColumns, xt as createElisaAssayCollection, y as toBioTemplateComponentSnippets, yt as createDefaultBioTemplate, z as toProtocolColumns, zt as ensureTemplateFromCollection } from "../templates-Cyt0Suwf.js";
2
+ export { TEMPLATE_COLLECTION_KEY, assertTemplateEnvelope, bioTemplateCatalog, bioTemplateControlsToFormSchema, bioTemplateControlsToSectionFormSchemas, bioTemplateControlsToSidebarPanels, bioTemplatePacks, bioTemplatePresetControlValuesToOptions, bioTemplatePresets, createAssayMatrixTemplate, createBioTemplateControlToolkit, createBioTemplatePackCollection, createBioTemplatePresetCollection, createBioTemplatePresetCollectionFromControls, createCalibrationCurveTemplate, createDefaultBioTemplate, createDoseResponseTemplate, createElisaAssayCollection, createFlowCytometryAssayCollection, createFlowCytometryPanelTemplate, createInstrumentRunTemplate, createLcmsBatchCollection, createPlateMapTemplate, createProtocolStepsTemplate, createQpcrExpressionCollection, createQpcrPlateTemplate, createReagentListTemplate, createSamplePrepTemplate, createSampleSheetTemplate, createTemplateCollection, createTemplateEnvelope, createTimeCourseTemplate, createWellPlateScreenCollection, createWesternBlotAssayCollection, ensureTemplateEnvelope, ensureTemplateFromCollection, extractTemplateCollection, getBioTemplateComponentBindings, getBioTemplateComponentProps, getBioTemplateControlDefaults, getBioTemplateControlSchema, getBioTemplateInfo, getBioTemplatePackInfo, getBioTemplatePresetInfo, getTemplateData, listBioTemplateCatalog, listBioTemplateComponentBindings, listBioTemplateControlSchemas, listBioTemplatePacks, listBioTemplatePresetControlSchemas, listBioTemplatePresets, requireBioTemplateControlSchema, searchBioTemplateCatalog, searchBioTemplatePacks, searchBioTemplatePresets, toAssayMatrixColumns, toAssayMatrixDataFrame, toAssayMatrixRows, toAssayMatrixSampleOptions, toBioTemplateComponentBindings, toBioTemplateComponentBindingsById, toBioTemplateComponentImports, toBioTemplateComponentProps, toBioTemplateComponentPropsByComponent, toBioTemplateComponentPropsById, toBioTemplateComponentSnippets, toBioTemplateComponentUsage, toCalibrationCurveColumns, toCalibrationCurveDataFrame, toCalibrationCurveRows, toDoseConditions, toDoseLayoutState, toFlowPanelColumns, toFlowPanelDataFrame, toFlowPanelRows, toInstrumentRunColumns, toInstrumentRunDataFrame, toInstrumentRunRows, toInstrumentRunScheduleEvents, toInstrumentRunSteps, toPlateMapEditorState, toProtocolColumns, toProtocolDataFrame, toProtocolRows, toProtocolSteps, toQpcrColumns, toQpcrDataFrame, toQpcrRows, toQpcrWellPlateWells, toReagentColumns, toReagentDataFrame, toReagentListItems, toReagentRows, toSampleColumns, toSampleDataFrame, toSampleOptions, toSamplePrepColumns, toSamplePrepDataFrame, toSamplePrepRows, toSampleRows, toTemplateDataFrame, toTimeCourseColumns, toTimeCourseDataFrame, toTimeCourseRows, toTimeCourseSteps, toWellMapArray, toWellPlateWells, validateAssayMatrixData, validateCalibrationCurveData, validateDoseResponseData, validateFlowCytometryPanelData, validateInstrumentRunData, validatePlateMapData, validateProtocolStepsData, validateQpcrPlateData, validateReagentListData, validateSamplePrepData, validateSampleSheetData, validateTimeCourseData };
@@ -42,12 +42,12 @@ export declare const bioTemplatePresets: readonly [{
42
42
  readonly category: "bio-template-preset";
43
43
  readonly purpose: "Sample metadata, instrument queue, and assay matrix payloads for omics acquisition batches.";
44
44
  readonly templates: readonly ["sample-sheet", "instrument-run", "assay-matrix"];
45
- readonly aliases: readonly ["lcms", "lc-ms", "mass spec batch", "omics batch", "run queue", "sequence table"];
45
+ readonly aliases: readonly ["lcms", "lc-ms", "mass spec batch", "omics batch", "metabolomics", "metabolism", "metabolite profiling", "run queue", "sequence table"];
46
46
  readonly python_import: "from mint_sdk.templates import create_lcms_batch_collection, save_template_collection";
47
47
  readonly python_example: "create_lcms_batch_collection(samples=[\"S001\", \"S002\"], features=[\"Glucose\", \"Lactate\"], instrument=\"LC-MS\")";
48
- readonly frontend_import: "import { createLcmsBatchCollection, toInstrumentRunDataFrame, toTemplateDataFrame } from '@morscherlab/mint-sdk/templates'";
49
- readonly frontend_adapters: readonly ["toTemplateDataFrame", "toInstrumentRunDataFrame", "toAssayMatrixDataFrame"];
50
- readonly components: readonly ["DataFrame", "ScheduleCalendar", "ChartContainer", "SampleSelector"];
48
+ readonly frontend_import: "import { createLcmsBatchCollection, toAssayMatrixSampleOptions, toInstrumentRunDataFrame, toInstrumentRunScheduleEvents, toInstrumentRunSteps, toTemplateDataFrame } from '@morscherlab/mint-sdk/templates'";
49
+ readonly frontend_adapters: readonly ["toTemplateDataFrame", "toInstrumentRunDataFrame", "toInstrumentRunSteps", "toInstrumentRunScheduleEvents", "toAssayMatrixDataFrame", "toAssayMatrixSampleOptions"];
50
+ readonly components: readonly ["DataFrame", "ExperimentTimeline", "ScheduleCalendar", "ChartContainer", "SampleSelector"];
51
51
  }, {
52
52
  readonly name: "elisa-assay";
53
53
  readonly label: "ELISA assay";
@@ -1,4 +1,4 @@
1
- import { DataFrameColumn, PlateCondition, PlateMap, PlateMapEditorState, ProtocolStep, Reagent, SampleType, SelectOption, Well, WellPlateFormat } from '../types';
1
+ import { DataFrameColumn, PlateCondition, PlateMap, PlateMapEditorState, ProtocolStep, Reagent, ScheduleEvent, SampleType, SelectOption, Well, WellPlateFormat } from '../types';
2
2
  export type TemplateKind = 'experiment-design';
3
3
  export type TemplateId = 'plate-map' | 'sample-sheet' | 'sample-prep' | 'dose-response' | 'calibration-curve' | 'time-course' | 'protocol-steps' | 'assay-matrix' | 'reagent-list' | 'flow-cytometry-panel' | 'instrument-run' | 'qpcr-plate';
4
4
  export type TemplatePresetId = 'wellplate-screen' | 'qpcr-expression' | 'lcms-batch' | 'elisa-assay' | 'flow-cytometry-assay' | 'western-blot-assay';
@@ -514,6 +514,7 @@ export type ProtocolDataFrameAdapterResult = DataFrameAdapterResult;
514
514
  export type AssayMatrixRowsAdapterResult = Array<Record<string, unknown>>;
515
515
  export type AssayMatrixColumnsAdapterResult = DataFrameColumn<Record<string, unknown>>[];
516
516
  export type AssayMatrixDataFrameAdapterResult = DataFrameAdapterResult;
517
+ export type AssayMatrixSampleOptionsAdapterResult = SelectOption<string>[];
517
518
  export type ReagentListItemsAdapterResult = Reagent[];
518
519
  export type ReagentRowsAdapterResult = Array<Record<string, unknown>>;
519
520
  export type ReagentColumnsAdapterResult = DataFrameColumn<Record<string, unknown>>[];
@@ -524,6 +525,8 @@ export type FlowPanelDataFrameAdapterResult = DataFrameAdapterResult;
524
525
  export type InstrumentRunRowsAdapterResult = Array<Record<string, unknown>>;
525
526
  export type InstrumentRunColumnsAdapterResult = DataFrameColumn<Record<string, unknown>>[];
526
527
  export type InstrumentRunDataFrameAdapterResult = DataFrameAdapterResult;
528
+ export type InstrumentRunStepsAdapterResult = ProtocolStep[];
529
+ export type InstrumentRunScheduleEventsAdapterResult = ScheduleEvent[];
527
530
  export type QpcrRowsAdapterResult = Array<Record<string, unknown>>;
528
531
  export type QpcrColumnsAdapterResult = DataFrameColumn<Record<string, unknown>>[];
529
532
  export type QpcrDataFrameAdapterResult = DataFrameAdapterResult;
@@ -1393,7 +1393,7 @@ function snapToSlot(time, stepMinutes) {
1393
1393
  const total = toMinutes(time);
1394
1394
  return fromMinutes(Math.round(total / stepMinutes) * stepMinutes);
1395
1395
  }
1396
- function addMinutes(time, minutes) {
1396
+ function addMinutes$1(time, minutes) {
1397
1397
  const total = toMinutes(time) + minutes;
1398
1398
  return fromMinutes(Math.max(0, Math.min(total, 1439)));
1399
1399
  }
@@ -1438,7 +1438,7 @@ function useTimeUtils() {
1438
1438
  isTimeInRange,
1439
1439
  findAvailableSlots,
1440
1440
  snapToSlot,
1441
- addMinutes,
1441
+ addMinutes: addMinutes$1,
1442
1442
  compareTime,
1443
1443
  findNearestTimeSlotIndex,
1444
1444
  toMinutes,
@@ -5180,12 +5180,13 @@ var bioTemplateCatalog = [
5180
5180
  ],
5181
5181
  python_import: "from mint_sdk.templates import AssayMatrixTemplate, save_template",
5182
5182
  python_example: "AssayMatrixTemplate.create(samples=[\"S001\", \"S002\"], features=[\"Lactate\", \"Glucose\"])",
5183
- frontend_import: "import { toTemplateDataFrame } from '@morscherlab/mint-sdk/templates'",
5183
+ frontend_import: "import { toAssayMatrixSampleOptions, toTemplateDataFrame } from '@morscherlab/mint-sdk/templates'",
5184
5184
  frontend_adapters: [
5185
5185
  "toTemplateDataFrame",
5186
5186
  "toAssayMatrixDataFrame",
5187
5187
  "toAssayMatrixRows",
5188
- "toAssayMatrixColumns"
5188
+ "toAssayMatrixColumns",
5189
+ "toAssayMatrixSampleOptions"
5189
5190
  ],
5190
5191
  components: [
5191
5192
  "DataFrame",
@@ -5269,15 +5270,18 @@ var bioTemplateCatalog = [
5269
5270
  ],
5270
5271
  python_import: "from mint_sdk.templates import InstrumentRunTemplate, save_template",
5271
5272
  python_example: "InstrumentRunTemplate.create([\"S001\", \"S002\"], instrument=\"LC-MS\")",
5272
- frontend_import: "import { toInstrumentRunDataFrame, toTemplateDataFrame } from '@morscherlab/mint-sdk/templates'",
5273
+ frontend_import: "import { toInstrumentRunDataFrame, toInstrumentRunScheduleEvents, toInstrumentRunSteps, toTemplateDataFrame } from '@morscherlab/mint-sdk/templates'",
5273
5274
  frontend_adapters: [
5274
5275
  "toTemplateDataFrame",
5275
5276
  "toInstrumentRunDataFrame",
5276
5277
  "toInstrumentRunRows",
5277
- "toInstrumentRunColumns"
5278
+ "toInstrumentRunColumns",
5279
+ "toInstrumentRunSteps",
5280
+ "toInstrumentRunScheduleEvents"
5278
5281
  ],
5279
5282
  components: [
5280
5283
  "DataFrame",
5284
+ "ExperimentTimeline",
5281
5285
  "ScheduleCalendar",
5282
5286
  "SampleSelector"
5283
5287
  ],
@@ -5406,6 +5410,8 @@ var bioTemplatePacks = [
5406
5410
  aliases: [
5407
5411
  "omics",
5408
5412
  "metabolomics",
5413
+ "metabolism",
5414
+ "metabolite profiling",
5409
5415
  "proteomics",
5410
5416
  "assay matrix",
5411
5417
  "lcms",
@@ -5560,19 +5566,26 @@ var bioTemplatePresets = [
5560
5566
  "lc-ms",
5561
5567
  "mass spec batch",
5562
5568
  "omics batch",
5569
+ "metabolomics",
5570
+ "metabolism",
5571
+ "metabolite profiling",
5563
5572
  "run queue",
5564
5573
  "sequence table"
5565
5574
  ],
5566
5575
  python_import: "from mint_sdk.templates import create_lcms_batch_collection, save_template_collection",
5567
5576
  python_example: "create_lcms_batch_collection(samples=[\"S001\", \"S002\"], features=[\"Glucose\", \"Lactate\"], instrument=\"LC-MS\")",
5568
- frontend_import: "import { createLcmsBatchCollection, toInstrumentRunDataFrame, toTemplateDataFrame } from '@morscherlab/mint-sdk/templates'",
5577
+ frontend_import: "import { createLcmsBatchCollection, toAssayMatrixSampleOptions, toInstrumentRunDataFrame, toInstrumentRunScheduleEvents, toInstrumentRunSteps, toTemplateDataFrame } from '@morscherlab/mint-sdk/templates'",
5569
5578
  frontend_adapters: [
5570
5579
  "toTemplateDataFrame",
5571
5580
  "toInstrumentRunDataFrame",
5572
- "toAssayMatrixDataFrame"
5581
+ "toInstrumentRunSteps",
5582
+ "toInstrumentRunScheduleEvents",
5583
+ "toAssayMatrixDataFrame",
5584
+ "toAssayMatrixSampleOptions"
5573
5585
  ],
5574
5586
  components: [
5575
5587
  "DataFrame",
5588
+ "ExperimentTimeline",
5576
5589
  "ScheduleCalendar",
5577
5590
  "ChartContainer",
5578
5591
  "SampleSelector"
@@ -7679,6 +7692,16 @@ function toAssayMatrixDataFrame(template) {
7679
7692
  rowKey: "sampleId"
7680
7693
  };
7681
7694
  }
7695
+ /** Convert an assay-matrix template into SampleSelector options derived from assay samples. */
7696
+ function toAssayMatrixSampleOptions(template) {
7697
+ const data = getTemplateData(template, "assay-matrix");
7698
+ validateAssayMatrixData(data);
7699
+ return data.samples.map((sample) => ({
7700
+ value: sample.sampleId,
7701
+ label: sample.name ?? sample.sampleId,
7702
+ description: sample.group
7703
+ }));
7704
+ }
7682
7705
  function toReagentListItems(template) {
7683
7706
  const data = getTemplateData(template, "reagent-list");
7684
7707
  validateReagentListData(data);
@@ -7940,6 +7963,88 @@ function toInstrumentRunDataFrame(template) {
7940
7963
  rowKey: "id"
7941
7964
  };
7942
7965
  }
7966
+ /** Convert an instrument-run template into ExperimentTimeline protocol steps for acquisition queue previews. */
7967
+ function toInstrumentRunSteps(template) {
7968
+ const data = getTemplateData(template, "instrument-run");
7969
+ validateInstrumentRunData(data);
7970
+ const methods = new Map(data.methods.map((method) => [method.id, method]));
7971
+ return [...data.items].sort((a, b) => a.order - b.order).map((item) => {
7972
+ const method = methods.get(item.methodId);
7973
+ const name = item.name ?? item.sampleId ?? item.kind;
7974
+ return {
7975
+ id: item.id,
7976
+ type: instrumentRunStepType(item.kind),
7977
+ name,
7978
+ description: [
7979
+ item.kind,
7980
+ method?.name,
7981
+ item.vial ? `Vial ${item.vial}` : void 0,
7982
+ item.wellId ? `Well ${item.wellId}` : void 0
7983
+ ].filter(Boolean).join(" / "),
7984
+ duration: item.expectedDurationMin,
7985
+ status: instrumentRunStepStatus(item.status),
7986
+ parameters: {
7987
+ kind: item.kind,
7988
+ sampleId: item.sampleId,
7989
+ methodId: item.methodId,
7990
+ method: method?.name,
7991
+ vial: item.vial,
7992
+ plateId: item.plateId,
7993
+ wellId: item.wellId,
7994
+ injectionVolume: item.injectionVolume,
7995
+ instrument: data.instrument ?? method?.instrument
7996
+ },
7997
+ order: item.order
7998
+ };
7999
+ });
8000
+ }
8001
+ /** Convert an instrument-run template into readonly ScheduleCalendar events ordered by run queue timing. */
8002
+ function toInstrumentRunScheduleEvents(template) {
8003
+ const data = getTemplateData(template, "instrument-run");
8004
+ validateInstrumentRunData(data);
8005
+ const methods = new Map(data.methods.map((method) => [method.id, method]));
8006
+ let cursor = dateFromMetadata(data.metadata, [
8007
+ "scheduledStart",
8008
+ "runStart",
8009
+ "start",
8010
+ "startedAt"
8011
+ ]) ?? /* @__PURE__ */ new Date("2024-01-01T08:00:00.000Z");
8012
+ return [...data.items].sort((a, b) => a.order - b.order).map((item) => {
8013
+ const method = methods.get(item.methodId);
8014
+ const start = dateFromMetadata(item.metadata, [
8015
+ "scheduledStart",
8016
+ "start",
8017
+ "startedAt"
8018
+ ]) ?? cursor;
8019
+ const end = dateFromMetadata(item.metadata, [
8020
+ "scheduledEnd",
8021
+ "end",
8022
+ "completedAt"
8023
+ ]) ?? addMinutes(start, Math.max(item.expectedDurationMin ?? 10, 1));
8024
+ cursor = end;
8025
+ return {
8026
+ id: item.id,
8027
+ title: item.name ?? item.sampleId ?? item.kind,
8028
+ start: start.toISOString(),
8029
+ end: end.toISOString(),
8030
+ color: instrumentRunScheduleColor(item.kind),
8031
+ status: instrumentRunScheduleStatus(item.status),
8032
+ draggable: false,
8033
+ resizable: false,
8034
+ metadata: {
8035
+ kind: item.kind,
8036
+ sampleId: item.sampleId,
8037
+ methodId: item.methodId,
8038
+ method: method?.name,
8039
+ vial: item.vial,
8040
+ plateId: item.plateId,
8041
+ wellId: item.wellId,
8042
+ injectionVolume: item.injectionVolume,
8043
+ instrument: data.instrument ?? method?.instrument
8044
+ }
8045
+ };
8046
+ });
8047
+ }
7943
8048
  function toQpcrRows(template) {
7944
8049
  const data = getTemplateData(template, "qpcr-plate");
7945
8050
  validateQpcrPlateData(data);
@@ -8077,6 +8182,58 @@ function sampleColumnKey(columnId) {
8077
8182
  well_id: "wellId"
8078
8183
  }[columnId] ?? columnId;
8079
8184
  }
8185
+ function instrumentRunStepType(kind) {
8186
+ switch (kind) {
8187
+ case "wash": return "wash";
8188
+ case "blank":
8189
+ case "qc":
8190
+ case "standard":
8191
+ case "calibration":
8192
+ case "sample": return "measurement";
8193
+ default: return "custom";
8194
+ }
8195
+ }
8196
+ function instrumentRunStepStatus(status) {
8197
+ switch (status) {
8198
+ case "running": return "in_progress";
8199
+ case "completed": return "completed";
8200
+ case "failed": return "failed";
8201
+ case "skipped": return "skipped";
8202
+ default: return "pending";
8203
+ }
8204
+ }
8205
+ function instrumentRunScheduleStatus(status) {
8206
+ switch (status) {
8207
+ case "running": return "in-progress";
8208
+ case "completed": return "confirmed";
8209
+ case "failed":
8210
+ case "skipped": return "cancelled";
8211
+ default: return "pending";
8212
+ }
8213
+ }
8214
+ function instrumentRunScheduleColor(kind) {
8215
+ switch (kind) {
8216
+ case "blank": return "#64748b";
8217
+ case "qc": return "#8b5cf6";
8218
+ case "standard":
8219
+ case "calibration": return "#f59e0b";
8220
+ case "wash": return "#06b6d4";
8221
+ case "sample": return "#2563eb";
8222
+ default: return "#475569";
8223
+ }
8224
+ }
8225
+ function dateFromMetadata(metadata, keys) {
8226
+ if (!metadata) return void 0;
8227
+ for (const key of keys) {
8228
+ const value = metadata[key];
8229
+ if (!(typeof value === "string" || value instanceof Date)) continue;
8230
+ const date = new Date(value);
8231
+ if (!Number.isNaN(date.getTime())) return date;
8232
+ }
8233
+ }
8234
+ function addMinutes(date, minutes) {
8235
+ return new Date(date.getTime() + minutes * 6e4);
8236
+ }
8080
8237
  //#endregion
8081
8238
  //#region src/templates/componentBindings.ts
8082
8239
  var templateComponentBindings = {
@@ -8129,7 +8286,7 @@ var templateComponentBindings = {
8129
8286
  "data",
8130
8287
  "columns",
8131
8288
  "rowKey"
8132
- ], "Render sample-by-feature measurements.")],
8289
+ ], "Render sample-by-feature measurements."), binding("assay-matrix", "SampleSelector", ["toAssayMatrixSampleOptions"], ["samples", "modelValue"], "Select samples from assay-matrix records.")],
8133
8290
  "reagent-list": [binding("reagent-list", "ReagentList", ["toReagentListItems"], ["modelValue"], "Render reagents with lot, storage, and stock metadata."), binding("reagent-list", "DataFrame", ["toTemplateDataFrame"], [
8134
8291
  "data",
8135
8292
  "columns",
@@ -8140,11 +8297,27 @@ var templateComponentBindings = {
8140
8297
  "columns",
8141
8298
  "rowKey"
8142
8299
  ], "Render markers, fluorophores, detectors, and controls.")],
8143
- "instrument-run": [binding("instrument-run", "DataFrame", ["toTemplateDataFrame"], [
8144
- "data",
8145
- "columns",
8146
- "rowKey"
8147
- ], "Render acquisition queues, methods, QC, and run status.")],
8300
+ "instrument-run": [
8301
+ binding("instrument-run", "DataFrame", ["toTemplateDataFrame"], [
8302
+ "data",
8303
+ "columns",
8304
+ "rowKey"
8305
+ ], "Render acquisition queues, methods, QC, and run status."),
8306
+ binding("instrument-run", "ScheduleCalendar", ["toInstrumentRunScheduleEvents"], [
8307
+ "modelValue",
8308
+ "events",
8309
+ "view",
8310
+ "readonly",
8311
+ "showNavigation",
8312
+ "showViewToggle"
8313
+ ], "Render acquisition queues as a scheduled run calendar."),
8314
+ binding("instrument-run", "ExperimentTimeline", ["toInstrumentRunSteps"], [
8315
+ "modelValue",
8316
+ "orientation",
8317
+ "showDuration",
8318
+ "editable"
8319
+ ], "Render acquisition queues as an ordered run timeline.")
8320
+ ],
8148
8321
  "qpcr-plate": [binding("qpcr-plate", "WellPlate", ["toQpcrWellPlateWells"], [
8149
8322
  "format",
8150
8323
  "wells",
@@ -8269,9 +8442,13 @@ function propsForTemplate(template) {
8269
8442
  case "sample-sheet": return [dataFrameProps(template), sampleSelectorProps(template)];
8270
8443
  case "sample-prep":
8271
8444
  case "calibration-curve":
8272
- case "assay-matrix":
8273
- case "flow-cytometry-panel":
8274
- case "instrument-run": return [dataFrameProps(template)];
8445
+ case "flow-cytometry-panel": return [dataFrameProps(template)];
8446
+ case "assay-matrix": return [dataFrameProps(template), assayMatrixSampleSelectorProps(template)];
8447
+ case "instrument-run": return [
8448
+ dataFrameProps(template),
8449
+ scheduleCalendarProps(template),
8450
+ timelineProps(template, toInstrumentRunSteps(template))
8451
+ ];
8275
8452
  case "dose-response": return doseResponseProps(template);
8276
8453
  case "time-course": return [timelineProps(template, toTimeCourseSteps(template)), dataFrameProps(template)];
8277
8454
  case "protocol-steps": return [timelineProps(template, toProtocolSteps(template), true), dataFrameProps(template)];
@@ -8352,6 +8529,12 @@ function sampleSelectorProps(template) {
8352
8529
  modelValue: []
8353
8530
  });
8354
8531
  }
8532
+ function assayMatrixSampleSelectorProps(template) {
8533
+ return propsBinding("assay-matrix", "SampleSelector", {
8534
+ samples: toAssayMatrixSampleOptions(template).map((option) => option.label),
8535
+ modelValue: []
8536
+ });
8537
+ }
8355
8538
  function timelineProps(template, steps, editable = false) {
8356
8539
  return propsBinding(template.template_id, "ExperimentTimeline", {
8357
8540
  modelValue: steps,
@@ -8359,6 +8542,17 @@ function timelineProps(template, steps, editable = false) {
8359
8542
  editable
8360
8543
  });
8361
8544
  }
8545
+ function scheduleCalendarProps(template) {
8546
+ const events = toInstrumentRunScheduleEvents(template);
8547
+ return propsBinding("instrument-run", "ScheduleCalendar", {
8548
+ modelValue: events[0]?.start,
8549
+ events,
8550
+ view: "day",
8551
+ readonly: true,
8552
+ showNavigation: false,
8553
+ showViewToggle: false
8554
+ });
8555
+ }
8362
8556
  function reagentListProps(template) {
8363
8557
  return propsBinding("reagent-list", "ReagentList", {
8364
8558
  modelValue: toReagentListItems(template),
@@ -9383,6 +9577,6 @@ function capitalize(value) {
9383
9577
  return value.charAt(0).toUpperCase() + value.slice(1);
9384
9578
  }
9385
9579
  //#endregion
9386
- export { toSamplePrepRows as $, findNearestTimeSlotIndex as $n, listBioTemplatePresets as $t, toFlowPanelDataFrame as A, mergeControlWorkspaceOptions as An, createTemplateCollection as At, toQpcrColumns as B, useSequenceUtils as Bn, validateCalibrationCurveData as Bt, toAssayMatrixRows as C, defineDoseCalculatorControlProps as Cn, BaseTextarea_default as Cr, createPlateMapTemplate as Ct, toDoseConditions as D, defineWellPlateDoseControlProps as Dn, createReagentListTemplate as Dt, toCalibrationCurveRows as E, defineWellPlateDoseComponentBindings as En, createQpcrPlateTemplate as Et, toPlateMapEditorState as F, ConcentrationInput_default as Fn, ensureTemplateEnvelope as Ft, toReagentDataFrame as G, FileUploader_default as Gn, validateProtocolStepsData as Gt, toQpcrRows as H, ATOMIC_WEIGHTS as Hn, validateFlowCytometryPanelData as Ht, toProtocolColumns as I, UnitInput_default as In, ensureTemplateFromCollection as It, toSampleColumns as J, TimePicker_default as Jn, validateSamplePrepData as Jt, toReagentListItems as K, NumberInput_default as Kn, validateQpcrPlateData as Kt, toProtocolDataFrame as L, useConcentrationUnits as Ln, extractTemplateCollection as Lt, toInstrumentRunColumns as M, useControlWorkspace as Mn, createTimeCourseTemplate as Mt, toInstrumentRunDataFrame as N, getFieldRegistryEntry as Nn, createWellPlateScreenCollection as Nt, toDoseLayoutState as O, getControlDefaults as On, createSamplePrepTemplate as Ot, toInstrumentRunRows as P, getTypeDefault as Pn, createWesternBlotAssayCollection as Pt, toSamplePrepDataFrame as Q, findAvailableSlots as Qn, getBioTemplatePresetInfo as Qt, toProtocolRows as R, MoleculeInput_default as Rn, getTemplateData as Rt, toAssayMatrixDataFrame as S, defineControls as Sn, normalizeOptionInput as Sr, createLcmsBatchCollection as St, toCalibrationCurveDataFrame as T, defineWellPlateControlProps as Tn, createQpcrExpressionCollection as Tt, toQpcrWellPlateWells as U, useChemicalFormula as Un, validateInstrumentRunData as Ut, toQpcrDataFrame as V, FormulaInput_default as Vn, validateDoseResponseData as Vt, toReagentColumns as W, DateTimePicker_default as Wn, validatePlateMapData as Wt, toSampleOptions as X, compareTime as Xn, validateTimeCourseData as Xt, toSampleDataFrame as Y, addMinutes as Yn, validateSampleSheetData as Yt, toSamplePrepColumns as Z, durationMinutes as Zn, bioTemplatePresets as Zt, toBioTemplateComponentPropsByComponent as _, controlsToTopBarSettingsConfig as _n, BaseSlider_default as _r, createDoseResponseTemplate as _t, getBioTemplateControlDefaults as a, bioTemplateCatalog as an, isTimeInRange as ar, toTimeCourseSteps as at, toBioTemplateComponentUsage as b, defineControlComponentBindings as bn, BaseCheckbox_default as br, createFlowCytometryPanelTemplate as bt, listBioTemplatePresetControlSchemas as c, searchBioTemplateCatalog as cn, snapToSlot as cr, TEMPLATE_COLLECTION_KEY as ct, getBioTemplateComponentProps as d, controlValuesToComponentProps as dn, DatePicker_default as dr, createAssayMatrixTemplate as dt, searchBioTemplatePresets as en, formatDuration as er, toSampleRows as et, listBioTemplateComponentBindings as f, controlsToFormSchema as fn, useDropdownState as fr, createBioTemplatePackCollection as ft, toBioTemplateComponentProps as g, controlsToSidebarPanels as gn, useEventListener as gr, createDefaultBioTemplate as gt, toBioTemplateComponentImports as h, controlsToSettingsSchema as hn, useSelectionLimit as hr, createCalibrationCurveTemplate as ht, createBioTemplateControlToolkit as i, searchBioTemplatePacks as in, generateTimeSlots as ir, toTimeCourseRows as it, toFlowPanelRows as j, useControlSchema as jn, createTemplateEnvelope as jt, toFlowPanelColumns as k, getDefaultControlView as kn, createSampleSheetTemplate as kt, requireBioTemplateControlSchema as l, controlValuesToComponentBindings as ln, toMinutes as lr, assertTemplateEnvelope as lt, toBioTemplateComponentBindingsById as m, controlsToSectionFormSchemas as mn, useListSelection as mr, createBioTemplatePresetCollectionFromControls as mt, bioTemplateControlsToSectionFormSchemas as n, getBioTemplatePackInfo as nn, formatTimeSlot as nr, toTimeCourseColumns as nt, getBioTemplateControlSchema as o, getBioTemplateInfo as on, parseTime as or, toWellMapArray as ot, toBioTemplateComponentBindings as p, controlsToSectionFormSchema as pn, MultiSelect_default as pr, createBioTemplatePresetCollection as pt, toReagentRows as q, TagsInput_default as qn, validateReagentListData as qt, bioTemplateControlsToSidebarPanels as r, listBioTemplatePacks as rn, fromMinutes as rr, toTimeCourseDataFrame as rt, listBioTemplateControlSchemas as s, listBioTemplateCatalog as sn, rangesOverlap as sr, toWellPlateWells as st, bioTemplateControlsToFormSchema as t, bioTemplatePacks as tn, formatTime as tr, toTemplateDataFrame as tt, getBioTemplateComponentBindings as u, controlValuesToComponentBindingsById as un, useTimeUtils as ur, bioTemplatePresetControlValuesToOptions as ut, toBioTemplateComponentPropsById as v, controlsToViewIds as vn, BaseRadioGroup_default as vr, createElisaAssayCollection as vt, toCalibrationCurveColumns as w, defineDoseDesignControlModel as wn, BaseInput_default as wr, createProtocolStepsTemplate as wt, toAssayMatrixColumns as x, defineControlModel as xn, BaseSelect_default as xr, createInstrumentRunTemplate as xt, toBioTemplateComponentSnippets as y, controlsToViewItems as yn, BaseToggle_default as yr, createFlowCytometryAssayCollection as yt, toProtocolSteps as z, SequenceInput_default as zn, validateAssayMatrixData as zt };
9580
+ export { toSampleOptions as $, compareTime as $n, validateTimeCourseData as $t, toFlowPanelColumns as A, defineWellPlateDoseControlProps as An, createReagentListTemplate as At, toProtocolDataFrame as B, useConcentrationUnits as Bn, extractTemplateCollection as Bt, toAssayMatrixRows as C, defineControlComponentBindings as Cn, BaseCheckbox_default as Cr, createFlowCytometryPanelTemplate as Ct, toCalibrationCurveRows as D, defineDoseDesignControlModel as Dn, BaseInput_default as Dr, createProtocolStepsTemplate as Dt, toCalibrationCurveDataFrame as E, defineDoseCalculatorControlProps as En, BaseTextarea_default as Er, createPlateMapTemplate as Et, toInstrumentRunRows as F, useControlWorkspace as Fn, createTimeCourseTemplate as Ft, toQpcrRows as G, ATOMIC_WEIGHTS as Gn, validateFlowCytometryPanelData as Gt, toProtocolSteps as H, SequenceInput_default as Hn, validateAssayMatrixData as Ht, toInstrumentRunScheduleEvents as I, getFieldRegistryEntry as In, createWellPlateScreenCollection as It, toReagentDataFrame as J, FileUploader_default as Jn, validateProtocolStepsData as Jt, toQpcrWellPlateWells as K, useChemicalFormula as Kn, validateInstrumentRunData as Kt, toInstrumentRunSteps as L, getTypeDefault as Ln, createWesternBlotAssayCollection as Lt, toFlowPanelRows as M, getDefaultControlView as Mn, createSampleSheetTemplate as Mt, toInstrumentRunColumns as N, mergeControlWorkspaceOptions as Nn, createTemplateCollection as Nt, toDoseConditions as O, defineWellPlateControlProps as On, createQpcrExpressionCollection as Ot, toInstrumentRunDataFrame as P, useControlSchema as Pn, createTemplateEnvelope as Pt, toSampleDataFrame as Q, addMinutes$1 as Qn, validateSampleSheetData as Qt, toPlateMapEditorState as R, ConcentrationInput_default as Rn, ensureTemplateEnvelope as Rt, toAssayMatrixDataFrame as S, controlsToViewItems as Sn, BaseToggle_default as Sr, createFlowCytometryAssayCollection as St, toCalibrationCurveColumns as T, defineControls as Tn, normalizeOptionInput as Tr, createLcmsBatchCollection as Tt, toQpcrColumns as U, useSequenceUtils as Un, validateCalibrationCurveData as Ut, toProtocolRows as V, MoleculeInput_default as Vn, getTemplateData as Vt, toQpcrDataFrame as W, FormulaInput_default as Wn, validateDoseResponseData as Wt, toReagentRows as X, TagsInput_default as Xn, validateReagentListData as Xt, toReagentListItems as Y, NumberInput_default as Yn, validateQpcrPlateData as Yt, toSampleColumns as Z, TimePicker_default as Zn, validateSamplePrepData as Zt, toBioTemplateComponentPropsByComponent as _, controlsToSectionFormSchemas as _n, useListSelection as _r, createBioTemplatePresetCollectionFromControls as _t, getBioTemplateControlDefaults as a, getBioTemplatePackInfo as an, formatTimeSlot as ar, toTimeCourseColumns as at, toBioTemplateComponentUsage as b, controlsToTopBarSettingsConfig as bn, BaseSlider_default as br, createDoseResponseTemplate as bt, listBioTemplatePresetControlSchemas as c, bioTemplateCatalog as cn, isTimeInRange as cr, toTimeCourseSteps as ct, getBioTemplateComponentProps as d, searchBioTemplateCatalog as dn, snapToSlot as dr, TEMPLATE_COLLECTION_KEY as dt, bioTemplatePresets as en, durationMinutes as er, toSamplePrepColumns as et, listBioTemplateComponentBindings as f, controlValuesToComponentBindings as fn, toMinutes as fr, assertTemplateEnvelope as ft, toBioTemplateComponentProps as g, controlsToSectionFormSchema as gn, MultiSelect_default as gr, createBioTemplatePresetCollection as gt, toBioTemplateComponentImports as h, controlsToFormSchema as hn, useDropdownState as hr, createBioTemplatePackCollection as ht, createBioTemplateControlToolkit as i, bioTemplatePacks as in, formatTime as ir, toTemplateDataFrame as it, toFlowPanelDataFrame as j, getControlDefaults as jn, createSamplePrepTemplate as jt, toDoseLayoutState as k, defineWellPlateDoseComponentBindings as kn, createQpcrPlateTemplate as kt, requireBioTemplateControlSchema as l, getBioTemplateInfo as ln, parseTime as lr, toWellMapArray as lt, toBioTemplateComponentBindingsById as m, controlValuesToComponentProps as mn, DatePicker_default as mr, createAssayMatrixTemplate as mt, bioTemplateControlsToSectionFormSchemas as n, listBioTemplatePresets as nn, findNearestTimeSlotIndex as nr, toSamplePrepRows as nt, getBioTemplateControlSchema as o, listBioTemplatePacks as on, fromMinutes as or, toTimeCourseDataFrame as ot, toBioTemplateComponentBindings as p, controlValuesToComponentBindingsById as pn, useTimeUtils as pr, bioTemplatePresetControlValuesToOptions as pt, toReagentColumns as q, DateTimePicker_default as qn, validatePlateMapData as qt, bioTemplateControlsToSidebarPanels as r, searchBioTemplatePresets as rn, formatDuration as rr, toSampleRows as rt, listBioTemplateControlSchemas as s, searchBioTemplatePacks as sn, generateTimeSlots as sr, toTimeCourseRows as st, bioTemplateControlsToFormSchema as t, getBioTemplatePresetInfo as tn, findAvailableSlots as tr, toSamplePrepDataFrame as tt, getBioTemplateComponentBindings as u, listBioTemplateCatalog as un, rangesOverlap as ur, toWellPlateWells as ut, toBioTemplateComponentPropsById as v, controlsToSettingsSchema as vn, useSelectionLimit as vr, createCalibrationCurveTemplate as vt, toAssayMatrixSampleOptions as w, defineControlModel as wn, BaseSelect_default as wr, createInstrumentRunTemplate as wt, toAssayMatrixColumns as x, controlsToViewIds as xn, BaseRadioGroup_default as xr, createElisaAssayCollection as xt, toBioTemplateComponentSnippets as y, controlsToSidebarPanels as yn, useEventListener as yr, createDefaultBioTemplate as yt, toProtocolColumns as z, UnitInput_default as zn, ensureTemplateFromCollection as zt };
9387
9581
 
9388
- //# sourceMappingURL=templates-B5jmTWuk.js.map
9582
+ //# sourceMappingURL=templates-Cyt0Suwf.js.map