@morscherlab/mint-sdk 1.0.0-beta.3 → 1.0.0-beta.4
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/README.md +9 -2
- package/dist/__tests__/composables/experiment-utils.test.d.ts +1 -0
- package/dist/__tests__/composables/useApi.test.d.ts +1 -0
- package/dist/components/AppContainer.vue.d.ts +1 -1
- package/dist/components/AppLayout.vue.d.ts +20 -1
- package/dist/components/AppSidebar.vue.d.ts +56 -4
- package/dist/components/AppTopBar.vue.d.ts +7 -25
- package/dist/components/BioTemplateExperimentWorkspaceView.vue.d.ts +3 -1
- package/dist/components/BioTemplatePackWorkspaceView.vue.d.ts +1 -0
- package/dist/components/BioTemplatePresetWorkspaceView.vue.d.ts +5 -0
- package/dist/components/ComponentBindingRenderer.vue.d.ts +44 -0
- package/dist/components/ControlWorkspaceView.vue.d.ts +24 -7
- package/dist/components/DoseDesignWorkspaceView.vue.d.ts +149 -0
- package/dist/components/ExperimentTimeline.vue.d.ts +1 -1
- package/dist/components/FormBuilder.vue.d.ts +9 -9
- package/dist/components/PlateMapEditor.vue.d.ts +1 -1
- package/dist/components/PluginWorkspaceView.vue.d.ts +310 -0
- package/dist/components/SettingsModal.vue.d.ts +1 -1
- package/dist/components/WellPlate.vue.d.ts +2 -2
- package/dist/components/index.d.ts +3 -12
- package/dist/components/index.js +3 -3
- package/dist/components/{AppPageSelector.vue.d.ts → internal/AppPageSelectorInternal.vue.d.ts} +1 -1
- package/dist/components/{AppPillNav.vue.d.ts → internal/AppPillNavInternal.vue.d.ts} +3 -1
- package/dist/components/{CalendarGridPanel.vue.d.ts → internal/CalendarGridPanelInternal.vue.d.ts} +1 -1
- package/dist/components/internal/FormSectionRenderer.vue.d.ts +4 -4
- package/dist/components/{WellEditPopup.vue.d.ts → internal/WellEditPopupInternal.vue.d.ts} +1 -1
- package/dist/{components-D_Sr0adg.js → components-BkGF4B4y.js} +4484 -3967
- package/dist/components-BkGF4B4y.js.map +1 -0
- package/dist/composables/experiment-utils.d.ts +8 -0
- package/dist/composables/index.d.ts +5 -7
- package/dist/composables/index.js +4 -4
- package/dist/composables/useAppExperiment.d.ts +31 -2
- package/dist/composables/useBioTemplateComponents.d.ts +5 -3
- package/dist/composables/useBioTemplatePackWorkspace.d.ts +3 -2
- package/dist/composables/useBioTemplatePresetWorkspace.d.ts +6 -5
- package/dist/composables/useBioTemplateWorkspace.d.ts +5 -4
- package/dist/composables/useControlSchema.d.ts +43 -21
- package/dist/composables/usePluginClient.d.ts +5 -2
- package/dist/{composables-C3dpXQN5.js → composables-CHsME9H1.js} +40 -28
- package/dist/composables-CHsME9H1.js.map +1 -0
- package/dist/index.d.ts +5 -12
- package/dist/index.js +5 -5
- package/dist/install.js +2 -2
- package/dist/styles.css +3625 -3651
- package/dist/templates/componentBindings.d.ts +13 -0
- package/dist/templates/index.d.ts +3 -3
- package/dist/templates/index.js +2 -2
- package/dist/{templates-50NPjaxL.js → templates-B5jmTWuk.js} +111 -56
- package/dist/templates-B5jmTWuk.js.map +1 -0
- package/dist/types/components.d.ts +6 -25
- package/dist/types/index.d.ts +1 -1
- package/dist/{useScheduleDrag-D4oWdh41.js → useScheduleDrag-BgzpQT53.js} +160 -117
- package/dist/useScheduleDrag-BgzpQT53.js.map +1 -0
- package/package.json +1 -1
- package/src/__tests__/components/ActionItem.test.ts +6 -6
- package/src/__tests__/components/AppLayout.test.ts +44 -0
- package/src/__tests__/components/AppPageSelector.test.ts +8 -8
- package/src/__tests__/components/AppPillNav.test.ts +53 -6
- package/src/__tests__/components/AppSidebar.test.ts +126 -0
- package/src/__tests__/components/AppToastContainer.test.ts +0 -11
- package/src/__tests__/components/AppTopBar.test.ts +182 -119
- package/src/__tests__/components/BioTemplateExperimentWorkspaceView.test.ts +7 -1
- package/src/__tests__/components/BioTemplatePackWorkspaceView.test.ts +15 -1
- package/src/__tests__/components/BioTemplatePresetWorkspaceView.test.ts +26 -1
- package/src/__tests__/components/CalendarGridPanel.test.ts +3 -3
- package/src/__tests__/components/ComponentBindingRenderer.test.ts +161 -0
- package/src/__tests__/components/ControlWorkspaceView.test.ts +134 -63
- package/src/__tests__/components/DateTimePicker.test.ts +2 -2
- package/src/__tests__/components/DoseDesignWorkspaceView.test.ts +185 -0
- package/src/__tests__/components/PluginWorkspaceView.test.ts +548 -0
- package/src/__tests__/composables/experiment-utils.test.ts +30 -0
- package/src/__tests__/composables/useApi.test.ts +30 -0
- package/src/__tests__/composables/useAppExperiment.test.ts +100 -1
- package/src/__tests__/composables/useBioTemplatePackWorkspace.test.ts +6 -3
- package/src/__tests__/composables/useBioTemplatePresetWorkspace.test.ts +6 -6
- package/src/__tests__/composables/useBioTemplateWorkspace.test.ts +6 -1
- package/src/__tests__/composables/useControlSchema.test.ts +150 -36
- package/src/__tests__/composables/usePluginClient.test.ts +99 -2
- package/src/__tests__/docs/frontendDocsCatalog.test.ts +120 -25
- package/src/__tests__/templates/templates.test.ts +12 -0
- package/src/components/AppAvatarMenu.vue +3 -3
- package/src/components/AppLayout.story.vue +39 -0
- package/src/components/AppLayout.vue +83 -2
- package/src/components/AppPluginSwitcher.vue +5 -5
- package/src/components/AppSidebar.story.vue +113 -5
- package/src/components/AppSidebar.vue +144 -24
- package/src/components/AppTopBar.story.vue +2 -5
- package/src/components/AppTopBar.vue +35 -425
- package/src/components/BioTemplateExperimentWorkspaceView.story.vue +2 -2
- package/src/components/BioTemplateExperimentWorkspaceView.vue +6 -0
- package/src/components/BioTemplatePackWorkspaceView.story.vue +4 -4
- package/src/components/BioTemplatePackWorkspaceView.vue +1 -0
- package/src/components/BioTemplatePresetWorkspaceView.story.vue +14 -2
- package/src/components/BioTemplatePresetWorkspaceView.vue +11 -2
- package/src/components/BioTemplateRenderer.vue +15 -227
- package/src/components/ComponentBindingRenderer.story.vue +57 -0
- package/src/components/ComponentBindingRenderer.vue +308 -0
- package/src/components/ControlWorkspaceView.story.vue +20 -9
- package/src/components/ControlWorkspaceView.vue +43 -12
- package/src/components/DatePicker.vue +2 -2
- package/src/components/DateTimePicker.vue +2 -2
- package/src/components/DoseDesignWorkspaceView.story.vue +77 -0
- package/src/components/DoseDesignWorkspaceView.vue +255 -0
- package/src/components/ExperimentPopover.vue +2 -6
- package/src/components/ExperimentSelectorModal.vue +6 -5
- package/src/components/FormBuilder.story.vue +190 -0
- package/src/components/PluginWorkspaceView.story.vue +334 -0
- package/src/components/PluginWorkspaceView.vue +708 -0
- package/src/components/SettingsModal.story.vue +87 -0
- package/src/components/WellPlate.vue +2 -2
- package/src/components/index.ts +3 -12
- package/src/components/{AppPageSelector.vue → internal/AppPageSelectorInternal.vue} +9 -9
- package/src/components/internal/AppPillNavInternal.vue +194 -0
- package/src/components/{CalendarGridPanel.vue → internal/CalendarGridPanelInternal.vue} +1 -1
- package/src/components/{WellEditPopup.vue → internal/WellEditPopupInternal.vue} +3 -3
- package/src/composables/experiment-utils.ts +26 -0
- package/src/composables/index.ts +21 -7
- package/src/composables/useApi.ts +9 -2
- package/src/composables/useAppExperiment.ts +85 -13
- package/src/composables/useBioTemplateComponents.ts +12 -0
- package/src/composables/useBioTemplatePackWorkspace.ts +6 -2
- package/src/composables/useBioTemplatePresetWorkspace.ts +10 -21
- package/src/composables/useBioTemplateWorkspace.ts +6 -4
- package/src/composables/useControlSchema.ts +157 -69
- package/src/composables/usePluginClient.ts +50 -9
- package/src/index.ts +6 -563
- package/src/styles/components/app-layout.css +82 -0
- package/src/styles/components/app-pill-nav.css +70 -0
- package/src/styles/components/app-sidebar.css +119 -0
- package/src/styles/components/app-top-bar.css +0 -235
- package/src/styles/index.css +0 -1
- package/src/templates/componentBindings.ts +38 -0
- package/src/templates/index.ts +4 -0
- package/src/types/components.ts +6 -31
- package/src/types/index.ts +2 -6
- package/dist/__tests__/composables/usePluginApi.test.d.ts +0 -13
- package/dist/components/FormFieldRenderer.vue.d.ts +0 -28
- package/dist/components/FormSection.vue.d.ts +0 -30
- package/dist/components/GroupingModal.vue.d.ts +0 -12
- package/dist/components/SettingsButton.vue.d.ts +0 -30
- package/dist/components/ToastNotification.vue.d.ts +0 -2
- package/dist/components-D_Sr0adg.js.map +0 -1
- package/dist/composables/usePluginApi.d.ts +0 -22
- package/dist/composables-C3dpXQN5.js.map +0 -1
- package/dist/templates-50NPjaxL.js.map +0 -1
- package/dist/useScheduleDrag-D4oWdh41.js.map +0 -1
- package/src/__tests__/components/FormCompatibility.test.ts +0 -94
- package/src/__tests__/components/GroupingModal.test.ts +0 -73
- package/src/__tests__/components/SettingsButton.test.ts +0 -44
- package/src/__tests__/composables/usePluginApi.test.ts +0 -81
- package/src/components/AppPillNav.vue +0 -71
- package/src/components/FormFieldRenderer.vue +0 -35
- package/src/components/FormSection.vue +0 -37
- package/src/components/GroupingModal.story.vue +0 -52
- package/src/components/GroupingModal.vue +0 -61
- package/src/components/SettingsButton.story.vue +0 -58
- package/src/components/SettingsButton.vue +0 -64
- package/src/components/ToastNotification.vue +0 -9
- package/src/composables/usePluginApi.ts +0 -32
- package/src/styles/components/settings-button.css +0 -31
- /package/dist/__tests__/components/{FormCompatibility.test.d.ts → ComponentBindingRenderer.test.d.ts} +0 -0
- /package/dist/__tests__/components/{GroupingModal.test.d.ts → DoseDesignWorkspaceView.test.d.ts} +0 -0
- /package/dist/__tests__/components/{SettingsButton.test.d.ts → PluginWorkspaceView.test.d.ts} +0 -0
- /package/dist/components/{ActionItem.vue.d.ts → internal/ActionItemInternal.vue.d.ts} +0 -0
- /package/src/components/{ActionItem.vue → internal/ActionItemInternal.vue} +0 -0
|
@@ -12,6 +12,15 @@ export interface BioTemplateComponentBinding {
|
|
|
12
12
|
export interface BioTemplateComponentPropsBinding extends BioTemplateComponentBinding {
|
|
13
13
|
propsObject: Record<string, unknown>;
|
|
14
14
|
}
|
|
15
|
+
export interface BioTemplateResolvedComponentBinding extends Omit<BioTemplateComponentBinding, 'props'> {
|
|
16
|
+
/** Prop names advertised by the static template/component compatibility catalog. */
|
|
17
|
+
propNames: readonly string[];
|
|
18
|
+
/** Concrete props ready for direct `v-bind="componentBindingsById[id].props"` use. */
|
|
19
|
+
props: Record<string, unknown>;
|
|
20
|
+
/** Backward-compatible alias for callers that already consume componentProps entries. */
|
|
21
|
+
propsObject: Record<string, unknown>;
|
|
22
|
+
}
|
|
23
|
+
export type BioTemplateComponentBindingsById = Record<string, BioTemplateResolvedComponentBinding>;
|
|
15
24
|
export type BioTemplateComponentPropsById = Record<string, Record<string, unknown>>;
|
|
16
25
|
export type BioTemplateComponentPropsByComponent = Record<string, Record<string, unknown>[]>;
|
|
17
26
|
export interface BioTemplateComponentPropsLookupOptions {
|
|
@@ -47,6 +56,10 @@ export interface BioTemplateComponentUsage {
|
|
|
47
56
|
export declare function listBioTemplateComponentBindings(): Record<TemplateId, BioTemplateComponentBinding[]>;
|
|
48
57
|
export declare function getBioTemplateComponentBindings(target: BioTemplateComponentTarget): BioTemplateComponentBinding[];
|
|
49
58
|
export declare function toBioTemplateComponentProps(target: BioTemplateEnvelope<unknown> | TemplateCollectionEnvelope): BioTemplateComponentPropsBinding[];
|
|
59
|
+
/** Return resolved component bindings with concrete props for direct slot rendering. */
|
|
60
|
+
export declare function toBioTemplateComponentBindings(target: BioTemplateEnvelope<unknown> | TemplateCollectionEnvelope): BioTemplateResolvedComponentBinding[];
|
|
61
|
+
/** Return resolved component bindings keyed by stable template component id. */
|
|
62
|
+
export declare function toBioTemplateComponentBindingsById(target: BioTemplateEnvelope<unknown> | TemplateCollectionEnvelope): BioTemplateComponentBindingsById;
|
|
50
63
|
/** Return component props keyed by stable binding id for direct `v-bind="componentPropsById[id]"` use. */
|
|
51
64
|
export declare function toBioTemplateComponentPropsById(target: BioTemplateEnvelope<unknown> | TemplateCollectionEnvelope): BioTemplateComponentPropsById;
|
|
52
65
|
/** Return component props grouped by SDK component name for direct WellPlate/DoseCalculator binding. */
|
|
@@ -2,14 +2,14 @@ export { assertTemplateEnvelope, bioTemplatePresetControlValuesToOptions, create
|
|
|
2
2
|
export type { BioTemplateControlValues, } from './builders';
|
|
3
3
|
export { bioTemplateCatalog, getBioTemplateInfo, listBioTemplateCatalog, searchBioTemplateCatalog, } from './catalog';
|
|
4
4
|
export { bioTemplateControlsToFormSchema, bioTemplateControlsToSectionFormSchemas, bioTemplateControlsToSidebarPanels, createBioTemplateControlToolkit, getBioTemplateControlDefaults, getBioTemplateControlSchema, listBioTemplateControlSchemas, listBioTemplatePresetControlSchemas, requireBioTemplateControlSchema, } from './controlSchemas';
|
|
5
|
-
export { getBioTemplateComponentProps, getBioTemplateComponentBindings, listBioTemplateComponentBindings, toBioTemplateComponentImports, toBioTemplateComponentProps, toBioTemplateComponentPropsByComponent, toBioTemplateComponentPropsById, toBioTemplateComponentSnippets, toBioTemplateComponentUsage, } from './componentBindings';
|
|
6
|
-
export type { BioTemplateComponentPropsByComponent, BioTemplateComponentPropsById, BioTemplateComponentPropsLookupOptions, } from './componentBindings';
|
|
5
|
+
export { getBioTemplateComponentProps, getBioTemplateComponentBindings, listBioTemplateComponentBindings, toBioTemplateComponentBindings, toBioTemplateComponentBindingsById, toBioTemplateComponentImports, toBioTemplateComponentProps, toBioTemplateComponentPropsByComponent, toBioTemplateComponentPropsById, toBioTemplateComponentSnippets, toBioTemplateComponentUsage, } from './componentBindings';
|
|
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
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
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';
|
|
11
11
|
export type { BioTemplateCatalogEntry, } from './catalog';
|
|
12
|
-
export type { BioTemplateComponentBinding, BioTemplateComponentImport, BioTemplateComponentPropsBinding, BioTemplateComponentSnippet, BioTemplateComponentSnippetOptions, BioTemplateComponentTarget, BioTemplateComponentUsage, BioTemplateComponentUsageOptions, } from './componentBindings';
|
|
12
|
+
export type { BioTemplateComponentBinding, BioTemplateComponentImport, BioTemplateComponentPropsBinding, BioTemplateResolvedComponentBinding, BioTemplateComponentSnippet, BioTemplateComponentSnippetOptions, BioTemplateComponentTarget, BioTemplateComponentUsage, BioTemplateComponentUsageOptions, } from './componentBindings';
|
|
13
13
|
export type { BioTemplateControlSchema, BioTemplateControlTarget, } from './controlSchemas';
|
|
14
14
|
export type { BioTemplatePresetEntry, } from './presets';
|
|
15
15
|
export type { BioTemplatePackEntry, } from './packs';
|
package/dist/templates/index.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { $ as
|
|
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, 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 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 };
|
|
@@ -1036,7 +1036,7 @@ function startOfDay(date) {
|
|
|
1036
1036
|
return copy;
|
|
1037
1037
|
}
|
|
1038
1038
|
//#endregion
|
|
1039
|
-
//#region src/components/
|
|
1039
|
+
//#region src/components/internal/CalendarGridPanelInternal.vue?vue&type=script&setup=true&lang.ts
|
|
1040
1040
|
var _hoisted_1$11 = { class: "mint-calendar-grid-panel" };
|
|
1041
1041
|
var _hoisted_2$10 = { class: "mint-date-picker__header" };
|
|
1042
1042
|
var _hoisted_3$9 = ["aria-label"];
|
|
@@ -1051,9 +1051,9 @@ var _hoisted_8$5 = [
|
|
|
1051
1051
|
"onClick"
|
|
1052
1052
|
];
|
|
1053
1053
|
//#endregion
|
|
1054
|
-
//#region src/components/
|
|
1055
|
-
var
|
|
1056
|
-
__name: "
|
|
1054
|
+
//#region src/components/internal/CalendarGridPanelInternal.vue
|
|
1055
|
+
var CalendarGridPanelInternal_default = /* @__PURE__ */ defineComponent({
|
|
1056
|
+
__name: "CalendarGridPanelInternal",
|
|
1057
1057
|
props: {
|
|
1058
1058
|
weekDays: {},
|
|
1059
1059
|
monthYear: {},
|
|
@@ -1286,7 +1286,7 @@ var DatePicker_default = /* @__PURE__ */ defineComponent({
|
|
|
1286
1286
|
role: "dialog",
|
|
1287
1287
|
"aria-modal": "true",
|
|
1288
1288
|
"aria-label": "Date picker"
|
|
1289
|
-
}, [createVNode(
|
|
1289
|
+
}, [createVNode(CalendarGridPanelInternal_default, {
|
|
1290
1290
|
"week-days": unref(weekDays),
|
|
1291
1291
|
"month-year": unref(monthYear),
|
|
1292
1292
|
days: unref(calendarDays),
|
|
@@ -2643,7 +2643,7 @@ var DateTimePicker_default = /* @__PURE__ */ defineComponent({
|
|
|
2643
2643
|
"leave-to-class": "mint-datetime-picker__dropdown-leave-to"
|
|
2644
2644
|
}, {
|
|
2645
2645
|
default: withCtx(() => [unref(isOpen) ? (openBlock(), createElementBlock("div", _hoisted_3$4, [
|
|
2646
|
-
createElementVNode("div", _hoisted_4$4, [createVNode(
|
|
2646
|
+
createElementVNode("div", _hoisted_4$4, [createVNode(CalendarGridPanelInternal_default, {
|
|
2647
2647
|
"week-days": unref(weekDays),
|
|
2648
2648
|
"month-year": unref(monthYear),
|
|
2649
2649
|
days: unref(calendarDays),
|
|
@@ -4232,9 +4232,14 @@ function getTypeDefault(type) {
|
|
|
4232
4232
|
function defineControls(controls) {
|
|
4233
4233
|
return controls;
|
|
4234
4234
|
}
|
|
4235
|
-
/**
|
|
4235
|
+
/** Preserve literal SDK component binding ids while marking an object as generated workspace component bindings. */
|
|
4236
|
+
function defineControlComponentBindings(bindings) {
|
|
4237
|
+
return bindings;
|
|
4238
|
+
}
|
|
4239
|
+
/** Create a complete workspace component binding from a simple controls data model for ControlWorkspaceView, generated forms, and sidebars. */
|
|
4236
4240
|
function defineControlModel(model) {
|
|
4237
|
-
const { controls: rootControls, sections: rootSections, views: modelViews, componentProps, componentPropsById, ...baseOptions } = model;
|
|
4241
|
+
const { controls: rootControls, sections: rootSections, views: modelViews, components, componentBindings, componentProps, componentPropsById, ...baseOptions } = model;
|
|
4242
|
+
const resolvedComponentBindings = componentBindings ?? components;
|
|
4238
4243
|
const controls = {};
|
|
4239
4244
|
const views = {};
|
|
4240
4245
|
const sections = {};
|
|
@@ -4280,6 +4285,7 @@ function defineControlModel(model) {
|
|
|
4280
4285
|
return {
|
|
4281
4286
|
controls,
|
|
4282
4287
|
controlOptions,
|
|
4288
|
+
...resolvedComponentBindings === void 0 ? {} : { componentBindings: resolvedComponentBindings },
|
|
4283
4289
|
...componentProps === void 0 ? {} : { componentProps },
|
|
4284
4290
|
...componentPropsById === void 0 ? {} : { componentPropsById }
|
|
4285
4291
|
};
|
|
@@ -4302,6 +4308,19 @@ function controlValuesToComponentProps(values, mapping) {
|
|
|
4302
4308
|
for (const [prop, source] of Object.entries(mapping)) props[prop] = typeof source === "function" ? source(values) : values[source];
|
|
4303
4309
|
return props;
|
|
4304
4310
|
}
|
|
4311
|
+
/** Map control workspace values into named SDK component bindings for direct slot rendering. */
|
|
4312
|
+
function controlValuesToComponentBindings(values, bindings) {
|
|
4313
|
+
if (bindings === void 0) return [];
|
|
4314
|
+
return normalizeControlComponentBindingConfigs(bindings).map((binding) => ({
|
|
4315
|
+
id: binding.id,
|
|
4316
|
+
component: binding.component,
|
|
4317
|
+
props: controlValuesToComponentProps(values, binding.props)
|
|
4318
|
+
}));
|
|
4319
|
+
}
|
|
4320
|
+
/** Map control workspace values into SDK component bindings keyed by binding id. */
|
|
4321
|
+
function controlValuesToComponentBindingsById(values, bindings) {
|
|
4322
|
+
return Object.fromEntries(controlValuesToComponentBindings(values, bindings).map((binding) => [binding.id, binding]));
|
|
4323
|
+
}
|
|
4305
4324
|
/** Return a default WellPlate prop mapping for generated control workspaces. */
|
|
4306
4325
|
function defineWellPlateControlProps(options = {}) {
|
|
4307
4326
|
const selectedWells = options.selectedWells ?? sourceKey("selectedWells");
|
|
@@ -4337,6 +4356,18 @@ function defineWellPlateDoseControlProps(options = {}) {
|
|
|
4337
4356
|
[options.doseId ?? "dose"]: defineDoseCalculatorControlProps(options.dose)
|
|
4338
4357
|
};
|
|
4339
4358
|
}
|
|
4359
|
+
/** Return named WellPlate + DoseCalculator component bindings for one dose-design control model. */
|
|
4360
|
+
function defineWellPlateDoseComponentBindings(options = {}) {
|
|
4361
|
+
return [{
|
|
4362
|
+
id: options.plateId ?? "plate",
|
|
4363
|
+
component: "WellPlate",
|
|
4364
|
+
props: defineWellPlateControlProps(options.plate)
|
|
4365
|
+
}, {
|
|
4366
|
+
id: options.doseId ?? "dose",
|
|
4367
|
+
component: "DoseCalculator",
|
|
4368
|
+
props: defineDoseCalculatorControlProps(options.dose)
|
|
4369
|
+
}];
|
|
4370
|
+
}
|
|
4340
4371
|
/** Return a complete ControlWorkspaceView model for WellPlate + DoseCalculator dose design. */
|
|
4341
4372
|
function defineDoseDesignControlModel(options = {}) {
|
|
4342
4373
|
const viewId = options.viewId ?? "design";
|
|
@@ -4372,14 +4403,16 @@ function defineDoseDesignControlModel(options = {}) {
|
|
|
4372
4403
|
default: options.molecularWeight ?? 300,
|
|
4373
4404
|
min: 0
|
|
4374
4405
|
};
|
|
4406
|
+
const componentProps = {
|
|
4407
|
+
...options.componentProps,
|
|
4408
|
+
dose: {
|
|
4409
|
+
...options.componentProps?.dose ?? {},
|
|
4410
|
+
...options.includeMolecularWeight && options.componentProps?.dose?.molecularWeight === void 0 ? { molecularWeight: "molecularWeight" } : {}
|
|
4411
|
+
}
|
|
4412
|
+
};
|
|
4375
4413
|
return defineControlModel({
|
|
4376
|
-
|
|
4377
|
-
|
|
4378
|
-
dose: {
|
|
4379
|
-
...options.componentProps?.dose ?? {},
|
|
4380
|
-
...options.includeMolecularWeight && options.componentProps?.dose?.molecularWeight === void 0 ? { molecularWeight: "molecularWeight" } : {}
|
|
4381
|
-
}
|
|
4382
|
-
}),
|
|
4414
|
+
componentBindings: defineWellPlateDoseComponentBindings(componentProps),
|
|
4415
|
+
componentPropsById: defineWellPlateDoseControlProps(componentProps),
|
|
4383
4416
|
views: { [viewId]: {
|
|
4384
4417
|
label: options.viewLabel ?? "Design",
|
|
4385
4418
|
sections: { [sectionId]: {
|
|
@@ -4483,14 +4516,10 @@ function controlsToTopBarSettingsConfig(controls, options = {}, config = {}) {
|
|
|
4483
4516
|
function controlsToViewIds(controls, options = {}) {
|
|
4484
4517
|
return controlsToViewItems(controls, options).map((item) => item.id);
|
|
4485
4518
|
}
|
|
4486
|
-
/** Return
|
|
4519
|
+
/** Return AppTopBar pillNav-compatible view items for switching generated control sidebars. */
|
|
4487
4520
|
function controlsToViewItems(controls, options = {}) {
|
|
4488
4521
|
return Object.entries(controlsToSidebarPanels(controls, options)).filter(([, sections]) => sections.length > 0).map(([id]) => controlViewItem(id, options));
|
|
4489
4522
|
}
|
|
4490
|
-
/** Return AppTopBar-compatible tabs for the same views that drive generated AppSidebar panels. */
|
|
4491
|
-
function controlsToTopBarTabs(controls, options = {}) {
|
|
4492
|
-
return Object.entries(controlsToSidebarPanels(controls, options)).filter(([, sections]) => sections.length > 0).map(([id]) => controlTopBarTab(id, options));
|
|
4493
|
-
}
|
|
4494
4523
|
/** Return the first generated sidebar view ID, or an empty string when controls render no sidebar panels. */
|
|
4495
4524
|
function getDefaultControlView(controls, options = {}) {
|
|
4496
4525
|
return controlsToViewIds(controls, options)[0] ?? "";
|
|
@@ -4533,7 +4562,6 @@ function useControlSchema(controls, options = {}) {
|
|
|
4533
4562
|
const sidebarPanels = controlsToSidebarPanels(controls, options);
|
|
4534
4563
|
const viewItems = controlsToViewItems(controls, options);
|
|
4535
4564
|
const viewIds = viewItems.map((item) => item.id);
|
|
4536
|
-
const topBarTabs = controlsToTopBarTabs(controls, options);
|
|
4537
4565
|
const defaultView = viewIds[0] ?? "";
|
|
4538
4566
|
const sectionSchemas = controlsToSectionFormSchemas(controls, options);
|
|
4539
4567
|
return {
|
|
@@ -4551,7 +4579,6 @@ function useControlSchema(controls, options = {}) {
|
|
|
4551
4579
|
sidebarPanels,
|
|
4552
4580
|
viewIds,
|
|
4553
4581
|
viewItems,
|
|
4554
|
-
topBarTabs,
|
|
4555
4582
|
defaultView,
|
|
4556
4583
|
sectionSchemas,
|
|
4557
4584
|
sidebar: {
|
|
@@ -4583,7 +4610,6 @@ function useControlWorkspace(controlsOrModel, options = {}) {
|
|
|
4583
4610
|
if (!schema.viewIds.includes(viewId)) return;
|
|
4584
4611
|
if (activeView.value !== viewId) activeView.value = viewId;
|
|
4585
4612
|
if (sidebar.activeView !== viewId) sidebar.activeView = viewId;
|
|
4586
|
-
if (topBar.currentTabId !== viewId) topBar.currentTabId = viewId;
|
|
4587
4613
|
if (pillNav.currentItemId !== viewId) pillNav.currentItemId = viewId;
|
|
4588
4614
|
}
|
|
4589
4615
|
function setValues(nextValues) {
|
|
@@ -4602,8 +4628,16 @@ function useControlWorkspace(controlsOrModel, options = {}) {
|
|
|
4602
4628
|
if (mappings === void 0) return {};
|
|
4603
4629
|
return Object.fromEntries(Object.entries(mappings).map(([id, mapping]) => [id, controlValuesToComponentProps(values, mapping)]));
|
|
4604
4630
|
}
|
|
4631
|
+
function getComponentBindings(bindings) {
|
|
4632
|
+
return controlValuesToComponentBindings(values, bindings);
|
|
4633
|
+
}
|
|
4634
|
+
function getComponentBindingsById(bindings) {
|
|
4635
|
+
return controlValuesToComponentBindingsById(values, bindings);
|
|
4636
|
+
}
|
|
4605
4637
|
const componentProps = computed(() => model?.componentProps === void 0 ? {} : getComponentProps(model.componentProps));
|
|
4606
4638
|
const componentPropsById = computed(() => getComponentPropsById(model?.componentPropsById));
|
|
4639
|
+
const componentBindings = computed(() => getComponentBindings(model?.componentBindings));
|
|
4640
|
+
const componentBindingsById = computed(() => getComponentBindingsById(model?.componentBindings));
|
|
4607
4641
|
const form = {
|
|
4608
4642
|
...schema.form,
|
|
4609
4643
|
modelValue: values,
|
|
@@ -4622,11 +4656,6 @@ function useControlWorkspace(controlsOrModel, options = {}) {
|
|
|
4622
4656
|
values,
|
|
4623
4657
|
"onUpdate:values": setValues
|
|
4624
4658
|
});
|
|
4625
|
-
const topBar = reactive({
|
|
4626
|
-
tabs: schema.topBarTabs,
|
|
4627
|
-
currentTabId: activeView.value,
|
|
4628
|
-
onTabSelect: (tab) => setActiveView(tab.id)
|
|
4629
|
-
});
|
|
4630
4659
|
const pillNav = reactive({
|
|
4631
4660
|
items: schema.viewItems,
|
|
4632
4661
|
currentItemId: activeView.value,
|
|
@@ -4637,29 +4666,25 @@ function useControlWorkspace(controlsOrModel, options = {}) {
|
|
|
4637
4666
|
settingsConfig: topBarSettingsConfig,
|
|
4638
4667
|
onSettingsValuesChange: setValues
|
|
4639
4668
|
};
|
|
4669
|
+
const topBarProps = computed(() => ({
|
|
4670
|
+
pillNav: pillNav.items,
|
|
4671
|
+
currentPillId: pillNav.currentItemId,
|
|
4672
|
+
onPillSelect: pillNav.onSelect,
|
|
4673
|
+
...topBarSettingsBinding
|
|
4674
|
+
}));
|
|
4640
4675
|
const bindings = {
|
|
4641
4676
|
form,
|
|
4642
4677
|
sidebar,
|
|
4643
|
-
topBar:
|
|
4644
|
-
pillNav: pillNav.items,
|
|
4645
|
-
currentPillId: pillNav.currentItemId,
|
|
4646
|
-
onPillSelect: pillNav.onSelect,
|
|
4647
|
-
...topBarSettingsBinding
|
|
4648
|
-
})),
|
|
4649
|
-
topBarTabs: computed(() => ({
|
|
4650
|
-
tabs: topBar.tabs,
|
|
4651
|
-
currentTabId: topBar.currentTabId,
|
|
4652
|
-
onTabSelect: topBar.onTabSelect,
|
|
4653
|
-
...topBarSettingsBinding
|
|
4654
|
-
})),
|
|
4678
|
+
topBar: topBarProps,
|
|
4655
4679
|
topBarSettings: topBarSettingsBinding,
|
|
4656
4680
|
pillNav,
|
|
4681
|
+
componentBindings,
|
|
4682
|
+
componentBindingsById,
|
|
4657
4683
|
componentProps,
|
|
4658
4684
|
componentPropsById
|
|
4659
4685
|
};
|
|
4660
4686
|
watch(activeView, syncActiveView, { flush: "sync" });
|
|
4661
4687
|
watch(() => sidebar.activeView, syncActiveView, { flush: "sync" });
|
|
4662
|
-
watch(() => topBar.currentTabId, syncActiveView, { flush: "sync" });
|
|
4663
4688
|
watch(() => pillNav.currentItemId, syncActiveView, { flush: "sync" });
|
|
4664
4689
|
return {
|
|
4665
4690
|
...schema,
|
|
@@ -4669,17 +4694,21 @@ function useControlWorkspace(controlsOrModel, options = {}) {
|
|
|
4669
4694
|
topBarSettingsConfig,
|
|
4670
4695
|
form,
|
|
4671
4696
|
sidebar,
|
|
4672
|
-
topBar,
|
|
4697
|
+
topBar: topBarProps,
|
|
4673
4698
|
pillNav,
|
|
4674
4699
|
topBarSettings: topBarSettingsBinding,
|
|
4675
4700
|
bindings,
|
|
4701
|
+
componentBindings,
|
|
4702
|
+
componentBindingsById,
|
|
4676
4703
|
componentProps,
|
|
4677
4704
|
componentPropsById,
|
|
4678
4705
|
setActiveView,
|
|
4679
4706
|
setValues,
|
|
4680
4707
|
resetValues,
|
|
4681
4708
|
getComponentProps,
|
|
4682
|
-
getComponentPropsById
|
|
4709
|
+
getComponentPropsById,
|
|
4710
|
+
getComponentBindings,
|
|
4711
|
+
getComponentBindingsById
|
|
4683
4712
|
};
|
|
4684
4713
|
}
|
|
4685
4714
|
function normalizeControls(controls, options = {}) {
|
|
@@ -4825,6 +4854,26 @@ function optionValue(option) {
|
|
|
4825
4854
|
function compactComponentPropsMap(mapping) {
|
|
4826
4855
|
return Object.fromEntries(Object.entries(mapping).filter((entry) => entry[1] !== void 0));
|
|
4827
4856
|
}
|
|
4857
|
+
function normalizeControlComponentBindingConfigs(bindings) {
|
|
4858
|
+
if (Array.isArray(bindings)) {
|
|
4859
|
+
const usedIds = /* @__PURE__ */ new Map();
|
|
4860
|
+
return bindings.map((binding) => ({
|
|
4861
|
+
id: uniqueComponentBindingId(binding.id ?? binding.component, usedIds),
|
|
4862
|
+
component: binding.component,
|
|
4863
|
+
props: binding.props
|
|
4864
|
+
}));
|
|
4865
|
+
}
|
|
4866
|
+
return Object.entries(bindings).map(([id, binding]) => ({
|
|
4867
|
+
id,
|
|
4868
|
+
component: binding.component,
|
|
4869
|
+
props: binding.props
|
|
4870
|
+
}));
|
|
4871
|
+
}
|
|
4872
|
+
function uniqueComponentBindingId(id, usedIds) {
|
|
4873
|
+
const count = usedIds.get(id) ?? 0;
|
|
4874
|
+
usedIds.set(id, count + 1);
|
|
4875
|
+
return count === 0 ? id : `${id}-${count + 1}`;
|
|
4876
|
+
}
|
|
4828
4877
|
function sourceKey(key) {
|
|
4829
4878
|
return key;
|
|
4830
4879
|
}
|
|
@@ -4880,17 +4929,6 @@ function controlViewItem(viewId, options) {
|
|
|
4880
4929
|
...config?.icon !== void 0 ? { icon: config.icon } : {},
|
|
4881
4930
|
...config?.to !== void 0 ? { to: config.to } : {},
|
|
4882
4931
|
...config?.href !== void 0 ? { href: config.href } : {},
|
|
4883
|
-
...config?.disabled !== void 0 ? { disabled: config.disabled } : {}
|
|
4884
|
-
};
|
|
4885
|
-
}
|
|
4886
|
-
function controlTopBarTab(viewId, options) {
|
|
4887
|
-
const config = options.views?.[viewId];
|
|
4888
|
-
return {
|
|
4889
|
-
id: viewId,
|
|
4890
|
-
label: config?.label ?? humanize(viewId),
|
|
4891
|
-
...config?.to !== void 0 ? { to: config.to } : {},
|
|
4892
|
-
...config?.href !== void 0 ? { href: config.href } : {},
|
|
4893
|
-
...config?.icon !== void 0 ? { icon: config.icon } : {},
|
|
4894
4932
|
...config?.disabled !== void 0 ? { disabled: config.disabled } : {},
|
|
4895
4933
|
...config?.children !== void 0 ? { children: config.children } : {}
|
|
4896
4934
|
};
|
|
@@ -8129,6 +8167,14 @@ function toBioTemplateComponentProps(target) {
|
|
|
8129
8167
|
const collection = extractTemplateCollection(target);
|
|
8130
8168
|
return Object.values(collection).flatMap((template) => propsForTemplate(template));
|
|
8131
8169
|
}
|
|
8170
|
+
/** Return resolved component bindings with concrete props for direct slot rendering. */
|
|
8171
|
+
function toBioTemplateComponentBindings(target) {
|
|
8172
|
+
return toBioTemplateComponentProps(target).map(toResolvedComponentBinding);
|
|
8173
|
+
}
|
|
8174
|
+
/** Return resolved component bindings keyed by stable template component id. */
|
|
8175
|
+
function toBioTemplateComponentBindingsById(target) {
|
|
8176
|
+
return Object.fromEntries(toBioTemplateComponentBindings(target).map((binding) => [binding.id, binding]));
|
|
8177
|
+
}
|
|
8132
8178
|
/** Return component props keyed by stable binding id for direct `v-bind="componentPropsById[id]"` use. */
|
|
8133
8179
|
function toBioTemplateComponentPropsById(target) {
|
|
8134
8180
|
return Object.fromEntries(toBioTemplateComponentProps(target).map((binding) => [binding.id, binding.propsObject]));
|
|
@@ -8152,6 +8198,15 @@ function getBioTemplateComponentProps(target, component, options = {}) {
|
|
|
8152
8198
|
return true;
|
|
8153
8199
|
})?.propsObject;
|
|
8154
8200
|
}
|
|
8201
|
+
function toResolvedComponentBinding(binding) {
|
|
8202
|
+
const { props: propNames, propsObject, ...rest } = binding;
|
|
8203
|
+
return {
|
|
8204
|
+
...rest,
|
|
8205
|
+
propNames,
|
|
8206
|
+
props: propsObject,
|
|
8207
|
+
propsObject
|
|
8208
|
+
};
|
|
8209
|
+
}
|
|
8155
8210
|
function toBioTemplateComponentImports(target) {
|
|
8156
8211
|
const groups = /* @__PURE__ */ new Map();
|
|
8157
8212
|
for (const binding of getBioTemplateComponentBindings(target)) {
|
|
@@ -9328,6 +9383,6 @@ function capitalize(value) {
|
|
|
9328
9383
|
return value.charAt(0).toUpperCase() + value.slice(1);
|
|
9329
9384
|
}
|
|
9330
9385
|
//#endregion
|
|
9331
|
-
export {
|
|
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 };
|
|
9332
9387
|
|
|
9333
|
-
//# sourceMappingURL=templates-
|
|
9388
|
+
//# sourceMappingURL=templates-B5jmTWuk.js.map
|