@morscherlab/mint-sdk 1.2.0-beta.3 → 1.2.0-beta.5
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 +8 -2
- package/dist/{EmptyState-p90quq8Z.js → EmptyState-NBqf2_8z.js} +3 -1
- package/dist/EmptyState-NBqf2_8z.js.map +1 -0
- package/dist/{ExperimentPopover-Bn6PIGHE.js → ExperimentPopover-CfOdh5Rm.js} +11 -6
- package/dist/ExperimentPopover-CfOdh5Rm.js.map +1 -0
- package/dist/{ExperimentSelectorModal-DGhrJSSV.js → ExperimentSelectorModal-DvIagrxY.js} +13 -8
- package/dist/ExperimentSelectorModal-DvIagrxY.js.map +1 -0
- package/dist/{SettingsModal-wF2btHu6.js → SettingsModal-W3TYfnP9.js} +13 -11
- package/dist/SettingsModal-W3TYfnP9.js.map +1 -0
- package/dist/__stories__/experiment-helpers.d.ts +28 -0
- package/dist/__tests__/components/ActionItem.test.d.ts +1 -0
- package/dist/__tests__/components/ActionMenu.test.d.ts +1 -0
- package/dist/__tests__/components/AppAvatarMenu.test.d.ts +1 -0
- package/dist/__tests__/components/AppLayout.test.d.ts +1 -0
- package/dist/__tests__/components/AppPluginSwitcher.test.d.ts +1 -0
- package/dist/__tests__/components/AppSidebar.test.d.ts +1 -0
- package/dist/__tests__/components/AppToastContainer.test.d.ts +1 -0
- package/dist/__tests__/components/AppTopBar.navigation.test.d.ts +1 -0
- package/dist/__tests__/components/AppTopBar.test.d.ts +1 -0
- package/dist/__tests__/components/AppTopBarPageSelector.test.d.ts +1 -0
- package/dist/__tests__/components/AppTopBarPillNav.test.d.ts +1 -0
- package/dist/__tests__/components/AppTopBarPresence.test.d.ts +1 -0
- package/dist/__tests__/components/ArtifactSaveDialog.test.d.ts +1 -0
- package/dist/__tests__/components/ArtifactSelectorModal.test.d.ts +1 -0
- package/dist/__tests__/components/AutoGroupModal.adapter.test.d.ts +1 -0
- package/dist/__tests__/components/BaseInput.test.d.ts +1 -0
- package/dist/__tests__/components/BaseModal.test.d.ts +1 -0
- package/dist/__tests__/components/BasePill.test.d.ts +1 -0
- package/dist/__tests__/components/BaseRadioGroup.test.d.ts +1 -0
- package/dist/__tests__/components/BaseSelect.test.d.ts +1 -0
- package/dist/__tests__/components/BaseTabs.test.d.ts +1 -0
- package/dist/__tests__/components/BaseToggle.test.d.ts +1 -0
- package/dist/__tests__/components/BatchProgressList.test.d.ts +1 -0
- package/dist/__tests__/components/BioTemplateExperimentWorkspaceView.test.d.ts +1 -0
- package/dist/__tests__/components/BioTemplatePackWorkspaceView.test.d.ts +1 -0
- package/dist/__tests__/components/BioTemplatePresetWorkspaceView.test.d.ts +1 -0
- package/dist/__tests__/components/BioTemplateRenderer.test.d.ts +1 -0
- package/dist/__tests__/components/Breadcrumb.test.d.ts +1 -0
- package/dist/__tests__/components/Calendar.test.d.ts +1 -0
- package/dist/__tests__/components/CalendarGridPanel.test.d.ts +1 -0
- package/dist/__tests__/components/CollapsibleCard.test.d.ts +1 -0
- package/dist/__tests__/components/ComponentBindingRenderer.test.d.ts +1 -0
- package/dist/__tests__/components/ConcentrationInput.test.d.ts +1 -0
- package/dist/__tests__/components/ControlWorkspaceView.test.d.ts +1 -0
- package/dist/__tests__/components/DataFrame.test.d.ts +1 -0
- package/dist/__tests__/components/DatePicker.test.d.ts +1 -0
- package/dist/__tests__/components/DateTimePicker.test.d.ts +1 -0
- package/dist/__tests__/components/DoseCalculatorVolumeField.test.d.ts +1 -0
- package/dist/__tests__/components/DoseDesignWorkspaceView.test.d.ts +1 -0
- package/dist/__tests__/components/DropdownButton.test.d.ts +1 -0
- package/dist/__tests__/components/EmptyState.test.d.ts +1 -0
- package/dist/__tests__/components/ExperimentPopover.test.d.ts +1 -0
- package/dist/__tests__/components/ExperimentSelectorModal.test.d.ts +1 -0
- package/dist/__tests__/components/FormBuilder.test.d.ts +1 -0
- package/dist/__tests__/components/GeneratedPathInput.test.d.ts +1 -0
- package/dist/__tests__/components/GeneratedPlotlyResult.test.d.ts +1 -0
- package/dist/__tests__/components/GeneratedPluginView.test.d.ts +1 -0
- package/dist/__tests__/components/GeneratedResultRenderer.test.d.ts +1 -0
- package/dist/__tests__/components/GroupAssigner.test.d.ts +1 -0
- package/dist/__tests__/components/InstrumentAlertLog.test.d.ts +1 -0
- package/dist/__tests__/components/JobsStatusTray.test.d.ts +1 -0
- package/dist/__tests__/components/LcmsSequenceTable.test.d.ts +1 -0
- package/dist/__tests__/components/MobileSupportGate.test.d.ts +1 -0
- package/dist/__tests__/components/MultiSelect.test.d.ts +1 -0
- package/dist/__tests__/components/PlateMapEditorToolbarInternal.test.d.ts +1 -0
- package/dist/__tests__/components/PluginIcon.test.d.ts +1 -0
- package/dist/__tests__/components/PluginWorkspaceView.controls.test.d.ts +1 -0
- package/dist/__tests__/components/PluginWorkspaceView.internal.test.d.ts +1 -0
- package/dist/__tests__/components/PluginWorkspaceView.navigation.test.d.ts +1 -0
- package/dist/__tests__/components/PluginWorkspaceView.shell.test.d.ts +1 -0
- package/dist/__tests__/components/PluginWorkspaceView.test.d.ts +1 -0
- package/dist/__tests__/components/ProgressBar.test.d.ts +1 -0
- package/dist/__tests__/components/ProtocolStep.presentation.test.d.ts +1 -0
- package/dist/__tests__/components/ProtocolStepEditor.state.test.d.ts +1 -0
- package/dist/__tests__/components/ProtocolStepEditor.test.d.ts +1 -0
- package/dist/__tests__/components/ProtocolStepParameterField.test.d.ts +1 -0
- package/dist/__tests__/components/RackEditor.test.d.ts +1 -0
- package/dist/__tests__/components/ReagentList.presentation.test.d.ts +1 -0
- package/dist/__tests__/components/ReagentList.test.d.ts +1 -0
- package/dist/__tests__/components/RetiredStyles.test.d.ts +1 -0
- package/dist/__tests__/components/RuntimeUpdateNotice.test.d.ts +1 -0
- package/dist/__tests__/components/SampleHierarchyTree.test.d.ts +1 -0
- package/dist/__tests__/components/SampleSelector.colors.test.d.ts +1 -0
- package/dist/__tests__/components/SampleSelector.drag.test.d.ts +1 -0
- package/dist/__tests__/components/SampleSelector.groups.test.d.ts +1 -0
- package/dist/__tests__/components/SampleSelector.selection.test.d.ts +1 -0
- package/dist/__tests__/components/SampleSelector.test.d.ts +1 -0
- package/dist/__tests__/components/SampleSelectorSampleRow.test.d.ts +1 -0
- package/dist/__tests__/components/ScheduleCalendar.test.d.ts +1 -0
- package/dist/__tests__/components/SecretInput.test.d.ts +1 -0
- package/dist/__tests__/components/SectionCard.test.d.ts +1 -0
- package/dist/__tests__/components/SegmentedControl.test.d.ts +1 -0
- package/dist/__tests__/components/SequenceProgressBar.test.d.ts +1 -0
- package/dist/__tests__/components/SettingsModal.schema.test.d.ts +1 -0
- package/dist/__tests__/components/SettingsModal.test.d.ts +1 -0
- package/dist/__tests__/components/SmartGroupFieldRecipe.groups.test.d.ts +1 -0
- package/dist/__tests__/components/SmartGroupManual.cohorts.test.d.ts +1 -0
- package/dist/__tests__/components/TagsInput.test.d.ts +1 -0
- package/dist/__tests__/components/ThemeToggle.test.d.ts +1 -0
- package/dist/__tests__/components/TimePicker.test.d.ts +1 -0
- package/dist/__tests__/components/WellEditPopupInternal.test.d.ts +1 -0
- package/dist/__tests__/components/WellPlate.colors.test.d.ts +1 -0
- package/dist/__tests__/components/WellPlate.conditions.test.d.ts +1 -0
- package/dist/__tests__/components/WellPlate.geometry.test.d.ts +1 -0
- package/dist/__tests__/components/WellPlate.interaction.test.d.ts +1 -0
- package/dist/__tests__/components/WellPlate.legend.test.d.ts +1 -0
- package/dist/__tests__/components/WellPlate.rendering.test.d.ts +1 -0
- package/dist/__tests__/components/WellPlate.sampleDrop.test.d.ts +1 -0
- package/dist/__tests__/composables/analysisArtifactTarget.test.d.ts +1 -0
- package/dist/__tests__/composables/autoGroup/classKey.test.d.ts +1 -0
- package/dist/__tests__/composables/autoGroup/classify.test.d.ts +1 -0
- package/dist/__tests__/composables/autoGroup/columns.test.d.ts +1 -0
- package/dist/__tests__/composables/autoGroup/compose.test.d.ts +1 -0
- package/dist/__tests__/composables/autoGroup/cooccurrence.test.d.ts +1 -0
- package/dist/__tests__/composables/autoGroup/fingerprint.test.d.ts +1 -0
- package/dist/__tests__/composables/autoGroup/groupByOrder.test.d.ts +1 -0
- package/dist/__tests__/composables/autoGroup/groupTree.test.d.ts +1 -0
- package/dist/__tests__/composables/autoGroup/integration.test.d.ts +1 -0
- package/dist/__tests__/composables/autoGroup/template.test.d.ts +1 -0
- package/dist/__tests__/composables/autoGroup/tokenLength.test.d.ts +1 -0
- package/dist/__tests__/composables/autoGroup/tokenize.test.d.ts +1 -0
- package/dist/__tests__/composables/experiment-utils.test.d.ts +1 -0
- package/dist/__tests__/composables/formBuilderRegistry.test.d.ts +1 -0
- package/dist/__tests__/composables/resolvePluginFrontendBase.test.d.ts +1 -0
- package/dist/__tests__/composables/useAnalysisArtifacts.test.d.ts +1 -0
- package/dist/__tests__/composables/useApi.test.d.ts +1 -0
- package/dist/__tests__/composables/useAppExperiment.test.d.ts +1 -0
- package/dist/__tests__/composables/useAuth.test.d.ts +1 -0
- package/dist/__tests__/composables/useAutoGroup.test.d.ts +1 -0
- package/dist/__tests__/composables/useAutoGroupInputSources.test.d.ts +1 -0
- package/dist/__tests__/composables/useBioTemplatePackWorkspace.test.d.ts +1 -0
- package/dist/__tests__/composables/useBioTemplatePresetWorkspace.test.d.ts +1 -0
- package/dist/__tests__/composables/useBioTemplateWorkspace.test.d.ts +1 -0
- package/dist/__tests__/composables/useCalendarGrid.test.d.ts +1 -0
- package/dist/__tests__/composables/useCommandHistory.test.d.ts +1 -0
- package/dist/__tests__/composables/useControlSchema.test.d.ts +1 -0
- package/dist/__tests__/composables/useDebouncedWatch.test.d.ts +1 -0
- package/dist/__tests__/composables/useDropdownState.test.d.ts +1 -0
- package/dist/__tests__/composables/useEventListener.test.d.ts +1 -0
- package/dist/__tests__/composables/useEventStream.test.d.ts +1 -0
- package/dist/__tests__/composables/useExpansionSet.test.d.ts +1 -0
- package/dist/__tests__/composables/useExperimentData.test.d.ts +14 -0
- package/dist/__tests__/composables/useExperimentSamples.test.d.ts +1 -0
- package/dist/__tests__/composables/useExperimentSave.test.d.ts +1 -0
- package/dist/__tests__/composables/useExperimentSelector.test.d.ts +1 -0
- package/dist/__tests__/composables/useFileImport.test.d.ts +1 -0
- package/dist/__tests__/composables/useForm.test.d.ts +1 -0
- package/dist/__tests__/composables/useFormBuilder.test.d.ts +1 -0
- package/dist/__tests__/composables/useGeneratedAnalysis.test.d.ts +1 -0
- package/dist/__tests__/composables/useGroupAssignment.test.d.ts +1 -0
- package/dist/__tests__/composables/useJobsStatusTray.test.d.ts +1 -0
- package/dist/__tests__/composables/useListSelection.test.d.ts +1 -0
- package/dist/__tests__/composables/useMobileSupportGate.test.d.ts +1 -0
- package/dist/__tests__/composables/useOptimisticMutation.test.d.ts +1 -0
- package/dist/__tests__/composables/usePlatformContext.test.d.ts +1 -0
- package/dist/__tests__/composables/usePluginClient.test.d.ts +1 -0
- package/dist/__tests__/composables/usePluginConfig.test.d.ts +15 -0
- package/dist/__tests__/composables/usePresenceHeartbeat.test.d.ts +1 -0
- package/dist/__tests__/composables/useProtocolTemplates.test.d.ts +1 -0
- package/dist/__tests__/composables/useRequestSyncState.test.d.ts +1 -0
- package/dist/__tests__/composables/useResourceCrud.test.d.ts +1 -0
- package/dist/__tests__/composables/useRuntimeAlignment.test.d.ts +1 -0
- package/dist/__tests__/composables/useSampleGroups.test.d.ts +1 -0
- package/dist/__tests__/composables/useSampleGroups.tree.test.d.ts +1 -0
- package/dist/__tests__/composables/useScheduleCalendarLayout.test.d.ts +1 -0
- package/dist/__tests__/composables/useSelectionLimit.test.d.ts +1 -0
- package/dist/__tests__/composables/useSortedItems.test.d.ts +1 -0
- package/dist/__tests__/composables/useTemplateCollection.test.d.ts +1 -0
- package/dist/__tests__/composables/useTextSearch.test.d.ts +1 -0
- package/dist/__tests__/composables/useTheme.test.d.ts +1 -0
- package/dist/__tests__/composables/useTimeUtils.test.d.ts +1 -0
- package/dist/__tests__/composables/useWellPainting.test.d.ts +1 -0
- package/dist/__tests__/composables/useWellPlateAdapter.test.d.ts +1 -0
- package/dist/__tests__/composables/useWellPlateValidation.test.d.ts +1 -0
- package/dist/__tests__/docs/extractDocsComponents.test.d.ts +1 -0
- package/dist/__tests__/docs/extractDocsExports.test.d.ts +1 -0
- package/dist/__tests__/docs/extractDocsParsing.test.d.ts +1 -0
- package/dist/__tests__/docs/extractDocsTemplates.test.d.ts +1 -0
- package/dist/__tests__/docs/extractDocsTheme.test.d.ts +1 -0
- package/dist/__tests__/docs/frontendDocsCatalog.test.d.ts +1 -0
- package/dist/__tests__/generatedUi.test.d.ts +1 -0
- package/dist/__tests__/stores/experiment.test.d.ts +1 -0
- package/dist/__tests__/stores/settings.test.d.ts +1 -0
- package/dist/__tests__/templates/templates.test.d.ts +1 -0
- package/dist/__tests__/types/GeneratedJsonSchema.test.d.ts +1 -0
- package/dist/__tests__/utils/color.test.d.ts +1 -0
- package/dist/__tests__/utils/instrument.test.d.ts +1 -0
- package/dist/__tests__/utils/jobs.test.d.ts +1 -0
- package/dist/__tests__/utils/lcms.test.d.ts +1 -0
- package/dist/__tests__/utils/permissions.test.d.ts +1 -0
- package/dist/__tests__/utils/rack.test.d.ts +1 -0
- package/dist/{analysisArtifactTypes-ejqR8MX3.js → analysisArtifactTypes-DQ0MjwHZ.js} +2 -0
- package/dist/analysisArtifactTypes-DQ0MjwHZ.js.map +1 -0
- package/dist/chunk-BoAXSpZd.js +33 -0
- package/dist/components/AppAvatarMenu.vue.d.ts +4 -0
- package/dist/components/AppSidebar.vue.d.ts +1 -1
- package/dist/components/AuditTrail.vue.d.ts +38 -0
- package/dist/components/AutoGroupModal.vue.d.ts +1 -1
- package/dist/components/BioTemplateExperimentWorkspaceView.vue.d.ts +2 -2
- package/dist/components/ColorSlider.vue.d.ts +34 -0
- package/dist/components/DoseDesignWorkspaceView.vue.d.ts +149 -0
- package/dist/components/DropdownButton.vue.d.ts +2 -0
- package/dist/components/FitPanel.vue.d.ts +46 -0
- package/dist/components/GroupAssigner.vue.d.ts +25 -0
- package/dist/components/JobsStatusTray.vue.d.ts +11 -2
- package/dist/components/PluginWorkspaceView.props.d.ts +29 -1
- package/dist/components/PluginWorkspaceView.vue.d.ts +5 -5
- package/dist/components/RackEditor.vue.d.ts +78 -0
- package/dist/components/ReagentEditor.vue.d.ts +30 -0
- package/dist/components/ResourceCard.vue.d.ts +50 -0
- package/dist/components/SampleLegend.vue.d.ts +1 -1
- package/dist/components/SampleSelector.vue.d.ts +1 -1
- package/dist/components/ScientificNumber.vue.d.ts +14 -0
- package/dist/components/SecretInput.vue.d.ts +28 -0
- package/dist/components/SettingsModal.vue.d.ts +1 -1
- package/dist/components/SmartGroupFieldRecipe.vue.d.ts +3 -3
- package/dist/components/SmartGroupManual.vue.d.ts +2 -2
- package/dist/components/WellPlate.vue.d.ts +1 -1
- package/dist/components/index.d.ts +18 -0
- package/dist/components/index.js +8 -8
- package/dist/components/internal/WellEditPopupInternal.vue.d.ts +3 -1
- package/dist/components/internal/WorkspaceControlsInternal.vue.d.ts +23 -0
- package/dist/components/internal/WorkspaceShellInternal.vue.d.ts +70 -0
- package/dist/components/internal/WorkspaceSidebarInternal.vue.d.ts +43 -0
- package/dist/{components-DpyzaeIc.js → components-B80gV0P6.js} +3729 -1800
- package/dist/components-B80gV0P6.js.map +1 -0
- package/dist/composables/autoGroupConstants.d.ts +1 -0
- package/dist/composables/autoGroupGrouping.d.ts +3 -0
- package/dist/composables/flattenWorkspaceBindings.d.ts +61 -0
- package/dist/composables/index.d.ts +15 -2
- package/dist/composables/index.js +11 -11
- package/dist/composables/pluginWorkspaceModel.d.ts +164 -0
- package/dist/composables/useAnalysisArtifacts.d.ts +2 -0
- package/dist/composables/useAsync.d.ts +132 -0
- package/dist/composables/useAuth.d.ts +2 -0
- package/dist/composables/useAutoGroup.d.ts +30 -1
- package/dist/composables/useAutoGroupInputSources.d.ts +32 -0
- package/dist/composables/useBioTemplateWorkspace.d.ts +4 -20
- package/dist/composables/useCommandHistory.d.ts +33 -0
- package/dist/composables/useFocusTrap.d.ts +21 -0
- package/dist/composables/useGeneratedAnalysis.d.ts +5 -1
- package/dist/composables/useGroupAssignment.d.ts +31 -0
- package/dist/composables/useJobsStatusTray.d.ts +41 -4
- package/dist/composables/useMenuKeyboard.d.ts +29 -0
- package/dist/composables/useOptimisticMutation.d.ts +5 -1
- package/dist/composables/usePluginClient.d.ts +4 -0
- package/dist/composables/usePluginConfig.d.ts +25 -0
- package/dist/composables/usePluginWorkspace.d.ts +51 -0
- package/dist/composables/useRackEditor.d.ts +31 -0
- package/dist/composables/useResourceCrud.d.ts +44 -0
- package/dist/composables/useRovingFocus.d.ts +24 -0
- package/dist/composables/useWellPainting.d.ts +39 -0
- package/dist/composables/useWellPlateAdapter.d.ts +40 -0
- package/dist/composables/useWellPlateValidation.d.ts +5 -1
- package/dist/composables/workspaceRecipes.d.ts +188 -0
- package/dist/{composables-yz8bTkEV.js → composables-C8mmD5ta.js} +821 -68
- package/dist/composables-C8mmD5ta.js.map +1 -0
- package/dist/{experiment-D08H_TIH.js → experiment-Y9Iz7KYi.js} +3 -1
- package/dist/experiment-Y9Iz7KYi.js.map +1 -0
- package/dist/{experiment-utils-CLnzPPq5.js → experiment-utils-DV3DrvE_.js} +71 -50
- package/dist/experiment-utils-DV3DrvE_.js.map +1 -0
- package/dist/histoire.setup.d.ts +1 -0
- package/dist/index.d.ts +1 -0
- package/dist/index.js +20 -35
- package/dist/index.js.map +1 -0
- package/dist/install.js +28 -0
- package/dist/install.js.map +1 -0
- package/dist/jobs.d.ts +15 -1
- package/dist/permissions.d.ts +5 -0
- package/dist/permissions.js +4 -2
- package/dist/permissions.js.map +1 -0
- package/dist/plotly.min-c2Sez60c.js +180634 -0
- package/dist/plotly.min-c2Sez60c.js.map +1 -0
- package/dist/stores/auth.d.ts +6 -0
- package/dist/stores/index.js +2 -2
- package/dist/styles.css +2917 -300
- package/dist/tailwind.preset.js +2 -0
- package/dist/tailwind.preset.js.map +1 -0
- package/dist/templates/builderReadUtils.d.ts +1 -1
- package/dist/templates/catalog.d.ts +4 -4
- package/dist/templates/index.js +4 -4
- package/dist/templates/presets.d.ts +2 -2
- package/dist/{templates-Pbxjdqlh.js → templates-CK72aKO1.js} +34 -26
- package/dist/templates-CK72aKO1.js.map +1 -0
- package/dist/types/auth.d.ts +1 -0
- package/dist/types/auto-group.d.ts +7 -0
- package/dist/types/componentWorkflowTypes.d.ts +22 -0
- package/dist/types/components.d.ts +1 -1
- package/dist/types/form-builder.d.ts +1 -1
- package/dist/types/generated-ui.d.ts +11 -2
- package/dist/types/index.d.ts +4 -4
- package/dist/types/index.js +1 -1
- package/dist/types/jobs.d.ts +11 -3
- package/dist/{useApi-yE0re8k-.js → useApi-CDBq6z23.js} +15 -0
- package/dist/useApi-CDBq6z23.js.map +1 -0
- package/dist/{useControlSchema-Ds4VeFxt.js → useControlSchema-_OVhavKq.js} +381 -69
- package/dist/useControlSchema-_OVhavKq.js.map +1 -0
- package/dist/{useDropdownState-WIGW6Rr-.js → useDropdownState-D5G4UvWd.js} +3 -1
- package/dist/useDropdownState-D5G4UvWd.js.map +1 -0
- package/dist/{useExperimentSelector-DXqsZuSk.js → useExperimentSelector-DSEckf_g.js} +5 -3
- package/dist/useExperimentSelector-DSEckf_g.js.map +1 -0
- package/dist/{useFormBuilder-1so6QSQL.js → useFormBuilder-Bd714C7y.js} +3 -1
- package/dist/useFormBuilder-Bd714C7y.js.map +1 -0
- package/dist/{useProtocolTemplates-Cv0ca1AM.js → useProtocolTemplates-Dq5Pzwyd.js} +1055 -83
- package/dist/useProtocolTemplates-Dq5Pzwyd.js.map +1 -0
- package/dist/utils/pluginSecrets.d.ts +53 -0
- package/dist/utils/records.d.ts +4 -0
- package/package.json +8 -2
- package/src/__stories__/experiment-helpers.ts +86 -0
- package/src/__tests__/components/ActionItem.test.ts +99 -0
- package/src/__tests__/components/ActionMenu.test.ts +120 -0
- package/src/__tests__/components/AppAvatarMenu.test.ts +161 -0
- package/src/__tests__/components/AppLayout.test.ts +207 -0
- package/src/__tests__/components/AppPluginSwitcher.test.ts +44 -0
- package/src/__tests__/components/AppSidebar.test.ts +857 -0
- package/src/__tests__/components/AppToastContainer.test.ts +37 -0
- package/src/__tests__/components/AppTopBar.navigation.test.ts +68 -0
- package/src/__tests__/components/AppTopBar.test.ts +1256 -0
- package/src/__tests__/components/AppTopBarPageSelector.test.ts +156 -0
- package/src/__tests__/components/AppTopBarPillNav.test.ts +125 -0
- package/src/__tests__/components/AppTopBarPresence.test.ts +47 -0
- package/src/__tests__/components/ArtifactSaveDialog.test.ts +566 -0
- package/src/__tests__/components/ArtifactSelectorModal.test.ts +178 -0
- package/src/__tests__/components/AutoGroupModal.adapter.test.ts +204 -0
- package/src/__tests__/components/BaseInput.test.ts +99 -0
- package/src/__tests__/components/BaseModal.test.ts +133 -0
- package/src/__tests__/components/BasePill.test.ts +291 -0
- package/src/__tests__/components/BaseRadioGroup.test.ts +25 -0
- package/src/__tests__/components/BaseSelect.test.ts +73 -0
- package/src/__tests__/components/BaseTabs.test.ts +107 -0
- package/src/__tests__/components/BaseToggle.test.ts +40 -0
- package/src/__tests__/components/BatchProgressList.test.ts +52 -0
- package/src/__tests__/components/BioTemplateExperimentWorkspaceView.test.ts +159 -0
- package/src/__tests__/components/BioTemplatePackWorkspaceView.test.ts +192 -0
- package/src/__tests__/components/BioTemplatePresetWorkspaceView.test.ts +328 -0
- package/src/__tests__/components/BioTemplateRenderer.test.ts +96 -0
- package/src/__tests__/components/Breadcrumb.test.ts +23 -0
- package/src/__tests__/components/Calendar.test.ts +566 -0
- package/src/__tests__/components/CalendarGridPanel.test.ts +36 -0
- package/src/__tests__/components/CollapsibleCard.test.ts +571 -0
- package/src/__tests__/components/ComponentBindingRenderer.test.ts +278 -0
- package/src/__tests__/components/ConcentrationInput.test.ts +45 -0
- package/src/__tests__/components/ControlWorkspaceView.test.ts +1102 -0
- package/src/__tests__/components/DataFrame.test.ts +915 -0
- package/src/__tests__/components/DatePicker.test.ts +45 -0
- package/src/__tests__/components/DateTimePicker.test.ts +48 -0
- package/src/__tests__/components/DoseCalculatorVolumeField.test.ts +53 -0
- package/src/__tests__/components/DoseDesignWorkspaceView.test.ts +185 -0
- package/src/__tests__/components/DropdownButton.test.ts +628 -0
- package/src/__tests__/components/EmptyState.test.ts +23 -0
- package/src/__tests__/components/ExperimentPopover.test.ts +143 -0
- package/src/__tests__/components/ExperimentSelectorModal.test.ts +143 -0
- package/src/__tests__/components/FormBuilder.test.ts +353 -0
- package/src/__tests__/components/GeneratedPathInput.test.ts +132 -0
- package/src/__tests__/components/GeneratedPlotlyResult.test.ts +117 -0
- package/src/__tests__/components/GeneratedPluginView.test.ts +235 -0
- package/src/__tests__/components/GeneratedResultRenderer.test.ts +93 -0
- package/src/__tests__/components/GroupAssigner.test.ts +48 -0
- package/src/__tests__/components/InstrumentAlertLog.test.ts +59 -0
- package/src/__tests__/components/JobsStatusTray.test.ts +165 -0
- package/src/__tests__/components/LcmsSequenceTable.test.ts +57 -0
- package/src/__tests__/components/MobileSupportGate.test.ts +120 -0
- package/src/__tests__/components/MultiSelect.test.ts +48 -0
- package/src/__tests__/components/PlateMapEditorToolbarInternal.test.ts +54 -0
- package/src/__tests__/components/PluginIcon.test.ts +215 -0
- package/src/__tests__/components/PluginWorkspaceView.controls.test.ts +156 -0
- package/src/__tests__/components/PluginWorkspaceView.internal.test.ts +230 -0
- package/src/__tests__/components/PluginWorkspaceView.navigation.test.ts +102 -0
- package/src/__tests__/components/PluginWorkspaceView.shell.test.ts +43 -0
- package/src/__tests__/components/PluginWorkspaceView.test.ts +719 -0
- package/src/__tests__/components/ProgressBar.test.ts +18 -0
- package/src/__tests__/components/ProtocolStep.presentation.test.ts +31 -0
- package/src/__tests__/components/ProtocolStepEditor.state.test.ts +165 -0
- package/src/__tests__/components/ProtocolStepEditor.test.ts +33 -0
- package/src/__tests__/components/ProtocolStepParameterField.test.ts +44 -0
- package/src/__tests__/components/RackEditor.test.ts +125 -0
- package/src/__tests__/components/ReagentList.presentation.test.ts +68 -0
- package/src/__tests__/components/ReagentList.test.ts +82 -0
- package/src/__tests__/components/RetiredStyles.test.ts +82 -0
- package/src/__tests__/components/RuntimeUpdateNotice.test.ts +14 -0
- package/src/__tests__/components/SampleHierarchyTree.test.ts +53 -0
- package/src/__tests__/components/SampleSelector.colors.test.ts +49 -0
- package/src/__tests__/components/SampleSelector.drag.test.ts +126 -0
- package/src/__tests__/components/SampleSelector.groups.test.ts +94 -0
- package/src/__tests__/components/SampleSelector.selection.test.ts +56 -0
- package/src/__tests__/components/SampleSelector.test.ts +466 -0
- package/src/__tests__/components/SampleSelectorSampleRow.test.ts +40 -0
- package/src/__tests__/components/ScheduleCalendar.test.ts +44 -0
- package/src/__tests__/components/SecretInput.test.ts +87 -0
- package/src/__tests__/components/SectionCard.test.ts +181 -0
- package/src/__tests__/components/SegmentedControl.test.ts +69 -0
- package/src/__tests__/components/SequenceProgressBar.test.ts +39 -0
- package/src/__tests__/components/SettingsModal.schema.test.ts +97 -0
- package/src/__tests__/components/SettingsModal.test.ts +407 -0
- package/src/__tests__/components/SmartGroupFieldRecipe.groups.test.ts +101 -0
- package/src/__tests__/components/SmartGroupManual.cohorts.test.ts +97 -0
- package/src/__tests__/components/TagsInput.test.ts +75 -0
- package/src/__tests__/components/ThemeToggle.test.ts +47 -0
- package/src/__tests__/components/TimePicker.test.ts +38 -0
- package/src/__tests__/components/WellEditPopupInternal.test.ts +108 -0
- package/src/__tests__/components/WellPlate.colors.test.ts +28 -0
- package/src/__tests__/components/WellPlate.conditions.test.ts +68 -0
- package/src/__tests__/components/WellPlate.geometry.test.ts +54 -0
- package/src/__tests__/components/WellPlate.interaction.test.ts +171 -0
- package/src/__tests__/components/WellPlate.legend.test.ts +13 -0
- package/src/__tests__/components/WellPlate.rendering.test.ts +122 -0
- package/src/__tests__/components/WellPlate.sampleDrop.test.ts +70 -0
- package/src/__tests__/composables/analysisArtifactTarget.test.ts +77 -0
- package/src/__tests__/composables/autoGroup/classKey.test.ts +25 -0
- package/src/__tests__/composables/autoGroup/classify.test.ts +107 -0
- package/src/__tests__/composables/autoGroup/columns.test.ts +135 -0
- package/src/__tests__/composables/autoGroup/compose.test.ts +226 -0
- package/src/__tests__/composables/autoGroup/cooccurrence.test.ts +91 -0
- package/src/__tests__/composables/autoGroup/fingerprint.test.ts +122 -0
- package/src/__tests__/composables/autoGroup/groupByOrder.test.ts +278 -0
- package/src/__tests__/composables/autoGroup/groupTree.test.ts +99 -0
- package/src/__tests__/composables/autoGroup/integration.test.ts +75 -0
- package/src/__tests__/composables/autoGroup/template.test.ts +70 -0
- package/src/__tests__/composables/autoGroup/tokenLength.test.ts +85 -0
- package/src/__tests__/composables/autoGroup/tokenize.test.ts +33 -0
- package/src/__tests__/composables/experiment-utils.test.ts +63 -0
- package/src/__tests__/composables/formBuilderRegistry.test.ts +191 -0
- package/src/__tests__/composables/resolvePluginFrontendBase.test.ts +65 -0
- package/src/__tests__/composables/useAnalysisArtifacts.test.ts +740 -0
- package/src/__tests__/composables/useApi.test.ts +157 -0
- package/src/__tests__/composables/useAppExperiment.test.ts +899 -0
- package/src/__tests__/composables/useAuth.test.ts +233 -0
- package/src/__tests__/composables/useAutoGroup.test.ts +524 -0
- package/src/__tests__/composables/useAutoGroupInputSources.test.ts +127 -0
- package/src/__tests__/composables/useBioTemplatePackWorkspace.test.ts +125 -0
- package/src/__tests__/composables/useBioTemplatePresetWorkspace.test.ts +199 -0
- package/src/__tests__/composables/useBioTemplateWorkspace.test.ts +104 -0
- package/src/__tests__/composables/useCalendarGrid.test.ts +38 -0
- package/src/__tests__/composables/useCommandHistory.test.ts +43 -0
- package/src/__tests__/composables/useControlSchema.test.ts +1060 -0
- package/src/__tests__/composables/useDebouncedWatch.test.ts +93 -0
- package/src/__tests__/composables/useDropdownState.test.ts +95 -0
- package/src/__tests__/composables/useEventListener.test.ts +116 -0
- package/src/__tests__/composables/useEventStream.test.ts +140 -0
- package/src/__tests__/composables/useExpansionSet.test.ts +62 -0
- package/src/__tests__/composables/useExperimentData.test.ts +154 -0
- package/src/__tests__/composables/useExperimentSamples.test.ts +91 -0
- package/src/__tests__/composables/useExperimentSave.test.ts +542 -0
- package/src/__tests__/composables/useExperimentSelector.test.ts +338 -0
- package/src/__tests__/composables/useFileImport.test.ts +44 -0
- package/src/__tests__/composables/useForm.test.ts +263 -0
- package/src/__tests__/composables/useFormBuilder.test.ts +994 -0
- package/src/__tests__/composables/useGeneratedAnalysis.test.ts +1903 -0
- package/src/__tests__/composables/useGroupAssignment.test.ts +73 -0
- package/src/__tests__/composables/useJobsStatusTray.test.ts +283 -0
- package/src/__tests__/composables/useListSelection.test.ts +66 -0
- package/src/__tests__/composables/useMobileSupportGate.test.ts +74 -0
- package/src/__tests__/composables/useOptimisticMutation.test.ts +40 -0
- package/src/__tests__/composables/usePlatformContext.test.ts +148 -0
- package/src/__tests__/composables/usePluginClient.test.ts +1912 -0
- package/src/__tests__/composables/usePluginConfig.test.ts +497 -0
- package/src/__tests__/composables/usePresenceHeartbeat.test.ts +164 -0
- package/src/__tests__/composables/useProtocolTemplates.test.ts +64 -0
- package/src/__tests__/composables/useRequestSyncState.test.ts +92 -0
- package/src/__tests__/composables/useResourceCrud.test.ts +56 -0
- package/src/__tests__/composables/useRuntimeAlignment.test.ts +145 -0
- package/src/__tests__/composables/useSampleGroups.test.ts +66 -0
- package/src/__tests__/composables/useSampleGroups.tree.test.ts +145 -0
- package/src/__tests__/composables/useScheduleCalendarLayout.test.ts +89 -0
- package/src/__tests__/composables/useSelectionLimit.test.ts +41 -0
- package/src/__tests__/composables/useSortedItems.test.ts +87 -0
- package/src/__tests__/composables/useTemplateCollection.test.ts +147 -0
- package/src/__tests__/composables/useTextSearch.test.ts +55 -0
- package/src/__tests__/composables/useTheme.test.ts +91 -0
- package/src/__tests__/composables/useTimeUtils.test.ts +35 -0
- package/src/__tests__/composables/useWellPainting.test.ts +52 -0
- package/src/__tests__/composables/useWellPlateAdapter.test.ts +50 -0
- package/src/__tests__/composables/useWellPlateValidation.test.ts +42 -0
- package/src/__tests__/docs/extractDocsComponents.test.ts +156 -0
- package/src/__tests__/docs/extractDocsExports.test.ts +92 -0
- package/src/__tests__/docs/extractDocsParsing.test.ts +91 -0
- package/src/__tests__/docs/extractDocsTemplates.test.ts +53 -0
- package/src/__tests__/docs/extractDocsTheme.test.ts +89 -0
- package/src/__tests__/docs/frontendDocsCatalog.test.ts +436 -0
- package/src/__tests__/fixtures/auto-group/mixed-lc-ms-batch.txt +187 -0
- package/src/__tests__/fixtures/templates/dose-response.json +81 -0
- package/src/__tests__/fixtures/templates/plate-map.json +54 -0
- package/src/__tests__/fixtures/templates/qpcr-plate.json +96 -0
- package/src/__tests__/fixtures/templates/sample-sheet.json +71 -0
- package/src/__tests__/generatedUi.test.ts +119 -0
- package/src/__tests__/stores/experiment.test.ts +300 -0
- package/src/__tests__/stores/settings.test.ts +78 -0
- package/src/__tests__/templates/templates.test.ts +1185 -0
- package/src/__tests__/types/GeneratedJsonSchema.test.ts +62 -0
- package/src/__tests__/utils/color.test.ts +96 -0
- package/src/__tests__/utils/instrument.test.ts +47 -0
- package/src/__tests__/utils/jobs.test.ts +95 -0
- package/src/__tests__/utils/lcms.test.ts +73 -0
- package/src/__tests__/utils/permissions.test.ts +62 -0
- package/src/__tests__/utils/rack.test.ts +120 -0
- package/src/components/ActionMenu.story.vue +26 -0
- package/src/components/ActionMenu.vue +209 -0
- package/src/components/AlertBox.story.vue +204 -0
- package/src/components/AlertBox.vue +88 -0
- package/src/components/AppAvatarMenu.story.vue +155 -0
- package/src/components/AppAvatarMenu.vue +164 -0
- package/src/components/AppContainer.story.vue +104 -0
- package/src/components/AppContainer.vue +34 -0
- package/src/components/AppLayout.story.vue +331 -0
- package/src/components/AppLayout.vue +156 -0
- package/src/components/AppPluginSwitcher.vue +137 -0
- package/src/components/AppSidebar.story.vue +584 -0
- package/src/components/AppSidebar.vue +471 -0
- package/src/components/AppToastContainer.story.vue +157 -0
- package/src/components/AppToastContainer.vue +62 -0
- package/src/components/AppTopBar.navigation.ts +60 -0
- package/src/components/AppTopBar.story.vue +280 -0
- package/src/components/AppTopBar.vue +474 -0
- package/src/components/ArtifactSaveDialog.story.vue +319 -0
- package/src/components/ArtifactSaveDialog.vue +434 -0
- package/src/components/ArtifactSelectorModal.story.vue +295 -0
- package/src/components/ArtifactSelectorModal.vue +333 -0
- package/src/components/AuditTrail.story.vue +163 -0
- package/src/components/AuditTrail.vue +151 -0
- package/src/components/AutoGroupModal.adapter.ts +203 -0
- package/src/components/AutoGroupModal.story.vue +458 -0
- package/src/components/AutoGroupModal.vue +294 -0
- package/src/components/Avatar.story.vue +115 -0
- package/src/components/Avatar.vue +79 -0
- package/src/components/BaseButton.story.vue +96 -0
- package/src/components/BaseButton.vue +75 -0
- package/src/components/BaseCheckbox.story.vue +100 -0
- package/src/components/BaseCheckbox.vue +131 -0
- package/src/components/BaseInput.story.vue +98 -0
- package/src/components/BaseInput.vue +76 -0
- package/src/components/BaseModal.story.vue +335 -0
- package/src/components/BaseModal.vue +280 -0
- package/src/components/BasePill.story.vue +142 -0
- package/src/components/BasePill.vue +89 -0
- package/src/components/BaseRadioGroup.story.vue +145 -0
- package/src/components/BaseRadioGroup.vue +128 -0
- package/src/components/BaseSelect.story.vue +120 -0
- package/src/components/BaseSelect.vue +89 -0
- package/src/components/BaseSlider.story.vue +122 -0
- package/src/components/BaseSlider.vue +126 -0
- package/src/components/BaseTabs.story.vue +127 -0
- package/src/components/BaseTabs.vue +107 -0
- package/src/components/BaseTextarea.story.vue +91 -0
- package/src/components/BaseTextarea.vue +62 -0
- package/src/components/BaseToggle.story.vue +108 -0
- package/src/components/BaseToggle.vue +143 -0
- package/src/components/BatchProgressList.story.vue +92 -0
- package/src/components/BatchProgressList.vue +181 -0
- package/src/components/BioTemplateExperimentWorkspaceView.story.vue +123 -0
- package/src/components/BioTemplateExperimentWorkspaceView.vue +339 -0
- package/src/components/BioTemplatePackWorkspaceView.story.vue +107 -0
- package/src/components/BioTemplatePackWorkspaceView.vue +180 -0
- package/src/components/BioTemplatePresetWorkspaceView.story.vue +163 -0
- package/src/components/BioTemplatePresetWorkspaceView.vue +403 -0
- package/src/components/BioTemplateRenderer.story.vue +57 -0
- package/src/components/BioTemplateRenderer.vue +64 -0
- package/src/components/Breadcrumb.story.vue +106 -0
- package/src/components/Breadcrumb.vue +81 -0
- package/src/components/Calendar.story.vue +106 -0
- package/src/components/Calendar.vue +367 -0
- package/src/components/ChartContainer.story.vue +113 -0
- package/src/components/ChartContainer.vue +64 -0
- package/src/components/ChemicalFormula.story.vue +102 -0
- package/src/components/ChemicalFormula.vue +39 -0
- package/src/components/CollapsibleCard.story.vue +135 -0
- package/src/components/CollapsibleCard.vue +245 -0
- package/src/components/ColorSlider.story.vue +120 -0
- package/src/components/ColorSlider.vue +164 -0
- package/src/components/ComponentBindingRenderer.story.vue +87 -0
- package/src/components/ComponentBindingRenderer.vue +322 -0
- package/src/components/ConcentrationInput.story.vue +77 -0
- package/src/components/ConcentrationInput.vue +149 -0
- package/src/components/ConfirmDialog.story.vue +248 -0
- package/src/components/ConfirmDialog.vue +100 -0
- package/src/components/ControlWorkspaceView.story.vue +347 -0
- package/src/components/ControlWorkspaceView.vue +370 -0
- package/src/components/DataFrame.story.vue +148 -0
- package/src/components/DataFrame.vue +520 -0
- package/src/components/DatePicker.story.vue +119 -0
- package/src/components/DatePicker.vue +197 -0
- package/src/components/DateTimePicker.story.vue +112 -0
- package/src/components/DateTimePicker.vue +271 -0
- package/src/components/Divider.story.vue +80 -0
- package/src/components/Divider.vue +49 -0
- package/src/components/DoseCalculator.story.vue +68 -0
- package/src/components/DoseCalculator.vue +416 -0
- package/src/components/DoseCalculatorVolumeField.vue +61 -0
- package/src/components/DoseDesignWorkspaceView.story.vue +77 -0
- package/src/components/DoseDesignWorkspaceView.vue +243 -0
- package/src/components/DropdownButton.story.vue +102 -0
- package/src/components/DropdownButton.vue +193 -0
- package/src/components/EmptyState.story.vue +135 -0
- package/src/components/EmptyState.vue +71 -0
- package/src/components/ExperimentCodeBadge.story.vue +77 -0
- package/src/components/ExperimentCodeBadge.vue +64 -0
- package/src/components/ExperimentDataViewer.story.vue +174 -0
- package/src/components/ExperimentDataViewer.vue +293 -0
- package/src/components/ExperimentPopover.story.vue +442 -0
- package/src/components/ExperimentPopover.vue +312 -0
- package/src/components/ExperimentSelectorModal.story.vue +381 -0
- package/src/components/ExperimentSelectorModal.vue +432 -0
- package/src/components/ExperimentTimeline.story.vue +161 -0
- package/src/components/ExperimentTimeline.vue +357 -0
- package/src/components/FileUploader.story.vue +107 -0
- package/src/components/FileUploader.vue +424 -0
- package/src/components/FitPanel.story.vue +125 -0
- package/src/components/FitPanel.vue +120 -0
- package/src/components/FormActions.vue +92 -0
- package/src/components/FormBuilder.story.vue +203 -0
- package/src/components/FormBuilder.vue +311 -0
- package/src/components/FormField.story.vue +132 -0
- package/src/components/FormField.vue +59 -0
- package/src/components/FormulaInput.story.vue +96 -0
- package/src/components/FormulaInput.vue +125 -0
- package/src/components/GeneratedPathInput.vue +218 -0
- package/src/components/GeneratedPlotlyResult.vue +87 -0
- package/src/components/GeneratedPluginView.vue +289 -0
- package/src/components/GeneratedResultRenderer.vue +147 -0
- package/src/components/GroupAssigner.story.vue +83 -0
- package/src/components/GroupAssigner.vue +257 -0
- package/src/components/IconButton.story.vue +140 -0
- package/src/components/IconButton.vue +73 -0
- package/src/components/InstrumentAlertLog.vue +191 -0
- package/src/components/InstrumentStateBadge.vue +50 -0
- package/src/components/InstrumentStatusCard.vue +188 -0
- package/src/components/JobsStatusTray.story.vue +126 -0
- package/src/components/JobsStatusTray.vue +407 -0
- package/src/components/LcmsSequenceTable.vue +191 -0
- package/src/components/LoadingSpinner.story.vue +70 -0
- package/src/components/LoadingSpinner.vue +50 -0
- package/src/components/MobileSupportGate.story.vue +52 -0
- package/src/components/MobileSupportGate.vue +115 -0
- package/src/components/MoleculeInput.story.vue +66 -0
- package/src/components/MoleculeInput.vue +426 -0
- package/src/components/MultiSelect.story.vue +132 -0
- package/src/components/MultiSelect.vue +123 -0
- package/src/components/NumberInput.story.vue +122 -0
- package/src/components/NumberInput.vue +162 -0
- package/src/components/PlateMapEditor.story.vue +92 -0
- package/src/components/PlateMapEditor.vue +434 -0
- package/src/components/PluginIcon.story.vue +103 -0
- package/src/components/PluginIcon.vue +158 -0
- package/src/components/PluginWorkspaceView.controls.ts +182 -0
- package/src/components/PluginWorkspaceView.navigation.ts +106 -0
- package/src/components/PluginWorkspaceView.props.ts +207 -0
- package/src/components/PluginWorkspaceView.shell.ts +67 -0
- package/src/components/PluginWorkspaceView.story.vue +341 -0
- package/src/components/PluginWorkspaceView.vue +224 -0
- package/src/components/ProgressBar.story.vue +148 -0
- package/src/components/ProgressBar.vue +117 -0
- package/src/components/ProtocolStep.presentation.ts +31 -0
- package/src/components/ProtocolStepEditor.state.ts +104 -0
- package/src/components/ProtocolStepEditor.story.vue +69 -0
- package/src/components/ProtocolStepEditor.vue +382 -0
- package/src/components/ProtocolStepParameterField.vue +134 -0
- package/src/components/RackEditor.story.vue +100 -0
- package/src/components/RackEditor.vue +442 -0
- package/src/components/ReagentEditor.story.vue +153 -0
- package/src/components/ReagentEditor.vue +418 -0
- package/src/components/ReagentList.presentation.ts +105 -0
- package/src/components/ReagentList.story.vue +137 -0
- package/src/components/ReagentList.vue +392 -0
- package/src/components/ResourceCard.story.vue +150 -0
- package/src/components/ResourceCard.vue +161 -0
- package/src/components/RuntimeUpdateNotice.vue +51 -0
- package/src/components/SampleHierarchyTree.story.vue +161 -0
- package/src/components/SampleHierarchyTree.vue +246 -0
- package/src/components/SampleLegend.story.vue +91 -0
- package/src/components/SampleLegend.vue +119 -0
- package/src/components/SampleSelector.colors.ts +48 -0
- package/src/components/SampleSelector.drag.ts +164 -0
- package/src/components/SampleSelector.groups.ts +109 -0
- package/src/components/SampleSelector.selection.ts +64 -0
- package/src/components/SampleSelector.story.vue +192 -0
- package/src/components/SampleSelector.tree.ts +48 -0
- package/src/components/SampleSelector.vue +451 -0
- package/src/components/SampleSelectorGroupNode.vue +197 -0
- package/src/components/SampleSelectorSampleRow.vue +68 -0
- package/src/components/ScheduleCalendar.story.vue +195 -0
- package/src/components/ScheduleCalendar.vue +414 -0
- package/src/components/ScientificNumber.story.vue +127 -0
- package/src/components/ScientificNumber.vue +197 -0
- package/src/components/SecretInput.story.vue +79 -0
- package/src/components/SecretInput.vue +150 -0
- package/src/components/SectionCard.story.vue +163 -0
- package/src/components/SectionCard.vue +98 -0
- package/src/components/SegmentedControl.story.vue +149 -0
- package/src/components/SegmentedControl.vue +94 -0
- package/src/components/SequenceInput.story.vue +119 -0
- package/src/components/SequenceInput.vue +209 -0
- package/src/components/SequenceProgressBar.vue +71 -0
- package/src/components/SettingsModal.schema.ts +74 -0
- package/src/components/SettingsModal.story.vue +524 -0
- package/src/components/SettingsModal.vue +399 -0
- package/src/components/Skeleton.story.vue +141 -0
- package/src/components/Skeleton.vue +74 -0
- package/src/components/SmartGroup.types.ts +98 -0
- package/src/components/SmartGroupFieldRecipe.groups.ts +109 -0
- package/src/components/SmartGroupFieldRecipe.story.vue +58 -0
- package/src/components/SmartGroupFieldRecipe.vue +499 -0
- package/src/components/SmartGroupManual.cohorts.ts +112 -0
- package/src/components/SmartGroupManual.story.vue +55 -0
- package/src/components/SmartGroupManual.vue +398 -0
- package/src/components/SmartGroupModal.story.vue +61 -0
- package/src/components/SmartGroupModal.vue +61 -0
- package/src/components/StatusIndicator.story.vue +99 -0
- package/src/components/StatusIndicator.vue +40 -0
- package/src/components/StepWizard.story.vue +155 -0
- package/src/components/StepWizard.vue +223 -0
- package/src/components/TagsInput.story.vue +155 -0
- package/src/components/TagsInput.vue +280 -0
- package/src/components/ThemeToggle.story.vue +36 -0
- package/src/components/ThemeToggle.vue +56 -0
- package/src/components/TimePicker.story.vue +96 -0
- package/src/components/TimePicker.vue +251 -0
- package/src/components/TimeRangeInput.story.vue +104 -0
- package/src/components/TimeRangeInput.vue +122 -0
- package/src/components/Tooltip.story.vue +138 -0
- package/src/components/Tooltip.vue +114 -0
- package/src/components/UnitInput.story.vue +194 -0
- package/src/components/UnitInput.vue +217 -0
- package/src/components/WellPlate.colors.ts +56 -0
- package/src/components/WellPlate.conditions.ts +100 -0
- package/src/components/WellPlate.geometry.ts +91 -0
- package/src/components/WellPlate.interaction.ts +272 -0
- package/src/components/WellPlate.legend.ts +8 -0
- package/src/components/WellPlate.rendering.ts +105 -0
- package/src/components/WellPlate.sampleDrop.ts +73 -0
- package/src/components/WellPlate.story.vue +282 -0
- package/src/components/WellPlate.vue +497 -0
- package/src/components/index.ts +148 -0
- package/src/components/internal/ActionItemInternal.vue +82 -0
- package/src/components/internal/AppTopBarPageSelectorInternal.vue +127 -0
- package/src/components/internal/AppTopBarPillNavInternal.vue +194 -0
- package/src/components/internal/CalendarGridPanelInternal.vue +120 -0
- package/src/components/internal/FormFieldRendererInternal.vue +68 -0
- package/src/components/internal/FormSectionRenderer.vue +78 -0
- package/src/components/internal/PlateMapEditorToolbarInternal.vue +128 -0
- package/src/components/internal/WellEditPopupInternal.vue +249 -0
- package/src/components/internal/WorkspaceControlsInternal.vue +20 -0
- package/src/components/internal/WorkspaceShellInternal.vue +125 -0
- package/src/components/internal/WorkspaceSidebarInternal.vue +82 -0
- package/src/composables/analysisArtifactTarget.ts +53 -0
- package/src/composables/autoGroup/classKey.ts +8 -0
- package/src/composables/autoGroup/classify.ts +205 -0
- package/src/composables/autoGroup/colors.ts +6 -0
- package/src/composables/autoGroup/columns.ts +226 -0
- package/src/composables/autoGroup/compose.ts +244 -0
- package/src/composables/autoGroup/cooccurrence.ts +46 -0
- package/src/composables/autoGroup/csv-shim.ts +44 -0
- package/src/composables/autoGroup/fingerprint.ts +63 -0
- package/src/composables/autoGroup/index.ts +22 -0
- package/src/composables/autoGroup/replicatePreGroup.ts +124 -0
- package/src/composables/autoGroup/template.ts +126 -0
- package/src/composables/autoGroup/tokenLength.ts +53 -0
- package/src/composables/autoGroup/tokenize.ts +41 -0
- package/src/composables/autoGroup/vocab.json +66 -0
- package/src/composables/autoGroupConstants.ts +4 -0
- package/src/composables/autoGroupGrouping.ts +148 -0
- package/src/composables/controlComponentBindings.ts +80 -0
- package/src/composables/controlSchemaAdapters.ts +199 -0
- package/src/composables/controlSchemaDoseDesign.ts +222 -0
- package/src/composables/controlSchemaFormFields.ts +64 -0
- package/src/composables/controlSchemaLayout.ts +59 -0
- package/src/composables/controlSchemaModel.ts +172 -0
- package/src/composables/controlSchemaNormalize.ts +101 -0
- package/src/composables/controlSchemaTypes.ts +372 -0
- package/src/composables/controlSchemaUtils.ts +36 -0
- package/src/composables/controlWorkspaceOptions.ts +21 -0
- package/src/composables/experiment-utils.ts +105 -0
- package/src/composables/experimentDesignData.ts +180 -0
- package/src/composables/flattenWorkspaceBindings.ts +104 -0
- package/src/composables/formBuilderRegistry.ts +86 -0
- package/src/composables/formBuilderSchema.ts +153 -0
- package/src/composables/index.ts +556 -0
- package/src/composables/platformContextHelpers.ts +81 -0
- package/src/composables/pluginEndpointBuilder.ts +267 -0
- package/src/composables/pluginFrontendBase.ts +22 -0
- package/src/composables/pluginWorkspaceModel.ts +182 -0
- package/src/composables/protocolTemplateCatalog.ts +325 -0
- package/src/composables/useAnalysisArtifacts.ts +361 -0
- package/src/composables/useApi.ts +319 -0
- package/src/composables/useAppExperiment.ts +228 -0
- package/src/composables/useAsync.ts +327 -0
- package/src/composables/useAuth.ts +458 -0
- package/src/composables/useAutoGroup.ts +682 -0
- package/src/composables/useAutoGroupInputSources.ts +147 -0
- package/src/composables/useBioTemplateComponents.ts +105 -0
- package/src/composables/useBioTemplateControls.ts +41 -0
- package/src/composables/useBioTemplatePackWorkspace.ts +199 -0
- package/src/composables/useBioTemplatePresetWorkspace.ts +325 -0
- package/src/composables/useBioTemplateWorkspace.ts +116 -0
- package/src/composables/useCalendarGrid.ts +140 -0
- package/src/composables/useChemicalFormula.ts +275 -0
- package/src/composables/useCommandHistory.ts +117 -0
- package/src/composables/useConcentrationUnits.ts +246 -0
- package/src/composables/useControlSchema.ts +135 -0
- package/src/composables/useControlWorkspace.ts +209 -0
- package/src/composables/useDebouncedWatch.ts +119 -0
- package/src/composables/useDoseCalculator.ts +370 -0
- package/src/composables/useDropdownState.ts +83 -0
- package/src/composables/useEventListener.ts +111 -0
- package/src/composables/useEventStream.ts +314 -0
- package/src/composables/useExpansionSet.ts +117 -0
- package/src/composables/useExperimentData.ts +136 -0
- package/src/composables/useExperimentSamples.ts +142 -0
- package/src/composables/useExperimentSave.ts +344 -0
- package/src/composables/useExperimentSelector.ts +408 -0
- package/src/composables/useFileImport.ts +231 -0
- package/src/composables/useFocusTrap.ts +91 -0
- package/src/composables/useForm.ts +279 -0
- package/src/composables/useFormBuilder.ts +292 -0
- package/src/composables/useFormValidation.ts +154 -0
- package/src/composables/useGeneratedAnalysis.ts +1227 -0
- package/src/composables/useGroupAssignment.ts +148 -0
- package/src/composables/useJobsStatusTray.ts +493 -0
- package/src/composables/useListSelection.ts +158 -0
- package/src/composables/useMenuKeyboard.ts +90 -0
- package/src/composables/useMobileSupportGate.ts +80 -0
- package/src/composables/useOptimisticMutation.ts +111 -0
- package/src/composables/usePasskey.ts +216 -0
- package/src/composables/usePlatformContext.ts +299 -0
- package/src/composables/usePluginClient.ts +1006 -0
- package/src/composables/usePluginConfig.ts +250 -0
- package/src/composables/usePluginWorkspace.ts +208 -0
- package/src/composables/usePresenceHeartbeat.ts +201 -0
- package/src/composables/useProtocolTemplates.ts +212 -0
- package/src/composables/useRackEditor.ts +223 -0
- package/src/composables/useReagentSeries.ts +91 -0
- package/src/composables/useRequestSyncState.ts +126 -0
- package/src/composables/useResourceCrud.ts +249 -0
- package/src/composables/useRovingFocus.ts +66 -0
- package/src/composables/useRuntimeAlignment.ts +184 -0
- package/src/composables/useSampleGroups.ts +211 -0
- package/src/composables/useScheduleCalendarLayout.ts +287 -0
- package/src/composables/useScheduleDrag.ts +245 -0
- package/src/composables/useSelectionLimit.ts +57 -0
- package/src/composables/useSequenceUtils.ts +105 -0
- package/src/composables/useSortedItems.ts +118 -0
- package/src/composables/useTemplateCollection.ts +229 -0
- package/src/composables/useTextSearch.ts +60 -0
- package/src/composables/useTheme.ts +32 -0
- package/src/composables/useTimeUtils.ts +155 -0
- package/src/composables/useToast.ts +40 -0
- package/src/composables/useWellPainting.ts +191 -0
- package/src/composables/useWellPlateAdapter.ts +151 -0
- package/src/composables/useWellPlateEditor.ts +425 -0
- package/src/composables/useWellPlateValidation.ts +89 -0
- package/src/composables/workspaceRecipes.ts +267 -0
- package/src/generated/schema.ts +130 -0
- package/src/generated-ui/main.ts +21 -0
- package/src/histoire.setup.ts +17 -0
- package/src/index.ts +83 -0
- package/src/install.ts +39 -0
- package/src/instrument.ts +90 -0
- package/src/jobs.ts +80 -0
- package/src/lcms.ts +108 -0
- package/src/permissions.ts +144 -0
- package/src/plotly-dist.d.ts +3 -0
- package/src/stores/auth.ts +206 -0
- package/src/stores/experiment.ts +120 -0
- package/src/stores/index.ts +3 -0
- package/src/stores/settings.ts +232 -0
- package/src/styles/components/action-menu.css +59 -0
- package/src/styles/components/alert-box.css +150 -0
- package/src/styles/components/app-avatar-menu.css +156 -0
- package/src/styles/components/app-container.css +33 -0
- package/src/styles/components/app-layout.css +180 -0
- package/src/styles/components/app-page-selector.css +212 -0
- package/src/styles/components/app-pill-nav.css +133 -0
- package/src/styles/components/app-plugin-switcher.css +196 -0
- package/src/styles/components/app-sidebar.css +392 -0
- package/src/styles/components/app-top-bar.css +249 -0
- package/src/styles/components/artifact-save-dialog.css +17 -0
- package/src/styles/components/artifact-selector-modal.css +216 -0
- package/src/styles/components/audit-trail.css +143 -0
- package/src/styles/components/avatar.css +73 -0
- package/src/styles/components/batch-progress-list.css +196 -0
- package/src/styles/components/breadcrumb.css +64 -0
- package/src/styles/components/button.css +192 -0
- package/src/styles/components/calendar.css +192 -0
- package/src/styles/components/chart-container.css +69 -0
- package/src/styles/components/checkbox.css +210 -0
- package/src/styles/components/chemical-formula.css +46 -0
- package/src/styles/components/collapsible-card.css +393 -0
- package/src/styles/components/color-slider.css +110 -0
- package/src/styles/components/concentration-input.css +17 -0
- package/src/styles/components/confirm-dialog.css +59 -0
- package/src/styles/components/dataframe.css +554 -0
- package/src/styles/components/date-picker.css +243 -0
- package/src/styles/components/datetime-picker.css +229 -0
- package/src/styles/components/divider.css +63 -0
- package/src/styles/components/dose-calculator.css +297 -0
- package/src/styles/components/dropdown-button.css +280 -0
- package/src/styles/components/empty-state.css +135 -0
- package/src/styles/components/experiment-code-badge.css +33 -0
- package/src/styles/components/experiment-data-viewer.css +138 -0
- package/src/styles/components/experiment-popover.css +563 -0
- package/src/styles/components/experiment-selector-modal.css +341 -0
- package/src/styles/components/experiment-timeline.css +529 -0
- package/src/styles/components/file-uploader.css +310 -0
- package/src/styles/components/fit-panel.css +67 -0
- package/src/styles/components/form-builder.css +69 -0
- package/src/styles/components/form-field.css +48 -0
- package/src/styles/components/formula-input.css +103 -0
- package/src/styles/components/group-assigner.css +200 -0
- package/src/styles/components/icon-button.css +196 -0
- package/src/styles/components/input.css +65 -0
- package/src/styles/components/instrument-monitor.css +478 -0
- package/src/styles/components/jobs-status-tray.css +420 -0
- package/src/styles/components/lcms-sequence-table.css +189 -0
- package/src/styles/components/loading-spinner.css +67 -0
- package/src/styles/components/mobile-support-gate.css +119 -0
- package/src/styles/components/modal.css +646 -0
- package/src/styles/components/molecule-input.css +186 -0
- package/src/styles/components/multi-select.css +131 -0
- package/src/styles/components/number-input.css +199 -0
- package/src/styles/components/pill.css +188 -0
- package/src/styles/components/plate-map-editor.css +464 -0
- package/src/styles/components/plugin-icon.css +46 -0
- package/src/styles/components/progress-bar.css +133 -0
- package/src/styles/components/protocol-step-editor.css +443 -0
- package/src/styles/components/rack-editor.css +265 -0
- package/src/styles/components/radio-group.css +240 -0
- package/src/styles/components/reagent-editor.css +505 -0
- package/src/styles/components/reagent-list.css +407 -0
- package/src/styles/components/resource-card.css +360 -0
- package/src/styles/components/sample-hierarchy-tree.css +310 -0
- package/src/styles/components/sample-legend.css +201 -0
- package/src/styles/components/sample-selector.css +682 -0
- package/src/styles/components/schedule-calendar.css +472 -0
- package/src/styles/components/scientific-number.css +63 -0
- package/src/styles/components/secret-input.css +60 -0
- package/src/styles/components/section-card.css +161 -0
- package/src/styles/components/segmented-control.css +194 -0
- package/src/styles/components/select.css +77 -0
- package/src/styles/components/sequence-input.css +184 -0
- package/src/styles/components/sequence-progress-bar.css +63 -0
- package/src/styles/components/settings-modal.css +76 -0
- package/src/styles/components/skeleton.css +49 -0
- package/src/styles/components/slider.css +74 -0
- package/src/styles/components/smart-group.css +734 -0
- package/src/styles/components/status-indicator.css +66 -0
- package/src/styles/components/step-wizard.css +192 -0
- package/src/styles/components/tabs.css +103 -0
- package/src/styles/components/tags-input.css +195 -0
- package/src/styles/components/textarea.css +81 -0
- package/src/styles/components/theme-toggle.css +6 -0
- package/src/styles/components/time-picker.css +171 -0
- package/src/styles/components/time-range-input.css +42 -0
- package/src/styles/components/toast.css +91 -0
- package/src/styles/components/toggle.css +226 -0
- package/src/styles/components/tooltip.css +91 -0
- package/src/styles/components/unit-input.css +123 -0
- package/src/styles/components/well-edit-popup.css +258 -0
- package/src/styles/components/well-plate.css +286 -0
- package/src/styles/index.css +94 -0
- package/src/styles/variables.css +1150 -0
- package/src/tailwind.preset.ts +66 -0
- package/src/templates/adapters.ts +137 -0
- package/src/templates/assayLookups.ts +33 -0
- package/src/templates/assayMatrixAdapters.ts +78 -0
- package/src/templates/assayMatrixBuilder.ts +59 -0
- package/src/templates/assayNormalizers.ts +34 -0
- package/src/templates/builderDefaults.ts +11 -0
- package/src/templates/builderIdUtils.ts +20 -0
- package/src/templates/builderPresetControls.ts +165 -0
- package/src/templates/builderReadUtils.ts +55 -0
- package/src/templates/builders.ts +122 -0
- package/src/templates/calibrationCurveAdapters.ts +59 -0
- package/src/templates/calibrationCurveBuilder.ts +99 -0
- package/src/templates/calibrationNormalizers.ts +60 -0
- package/src/templates/catalog.ts +245 -0
- package/src/templates/componentBindingCatalog.ts +90 -0
- package/src/templates/componentBindingHelpers.ts +93 -0
- package/src/templates/componentBindings.ts +253 -0
- package/src/templates/componentDoseResponseProps.ts +42 -0
- package/src/templates/componentGenericProps.ts +77 -0
- package/src/templates/componentPlateHelpers.ts +29 -0
- package/src/templates/componentPlateMapProps.ts +32 -0
- package/src/templates/componentPropsFactory.ts +21 -0
- package/src/templates/componentQpcrPlateProps.ts +28 -0
- package/src/templates/componentTargetResolvers.ts +67 -0
- package/src/templates/componentTemplateProps.ts +78 -0
- package/src/templates/controlSchemaClone.ts +32 -0
- package/src/templates/controlSchemaConstants.ts +11 -0
- package/src/templates/controlSchemaMerge.ts +40 -0
- package/src/templates/controlSchemaTargets.ts +85 -0
- package/src/templates/controlSchemaTypes.ts +20 -0
- package/src/templates/controlSchemas.ts +104 -0
- package/src/templates/defaultBioTemplateBuilder.ts +124 -0
- package/src/templates/doseResponseAdapters.ts +45 -0
- package/src/templates/doseResponseBuilder.ts +44 -0
- package/src/templates/elisaAssayCollectionBuilder.ts +62 -0
- package/src/templates/flowCytometryAssayCollectionBuilder.ts +41 -0
- package/src/templates/flowCytometryPanelBuilder.ts +53 -0
- package/src/templates/flowNormalizers.ts +58 -0
- package/src/templates/flowPanelAdapters.ts +58 -0
- package/src/templates/index.ts +326 -0
- package/src/templates/instrumentRunAdapterHelpers.ts +94 -0
- package/src/templates/instrumentRunAdapters.ts +163 -0
- package/src/templates/instrumentRunBuilder.ts +97 -0
- package/src/templates/lcmsBatchCollectionBuilder.ts +38 -0
- package/src/templates/lookup.ts +18 -0
- package/src/templates/packs.ts +162 -0
- package/src/templates/plateGeometry.ts +62 -0
- package/src/templates/plateMapAdapters.ts +36 -0
- package/src/templates/plateMapBuilder.ts +43 -0
- package/src/templates/presetControlSchemas.ts +258 -0
- package/src/templates/presets.ts +179 -0
- package/src/templates/protocolAdapters.ts +69 -0
- package/src/templates/protocolNormalizers.ts +37 -0
- package/src/templates/protocolStepsBuilder.ts +36 -0
- package/src/templates/qpcrAdapters.ts +104 -0
- package/src/templates/qpcrExpressionCollectionBuilder.ts +33 -0
- package/src/templates/qpcrPlateBuilder.ts +96 -0
- package/src/templates/reagentAdapters.ts +77 -0
- package/src/templates/reagentListBuilder.ts +30 -0
- package/src/templates/runNormalizers.ts +63 -0
- package/src/templates/sampleNormalizers.ts +58 -0
- package/src/templates/samplePrepAdapters.ts +63 -0
- package/src/templates/samplePrepBuilder.ts +51 -0
- package/src/templates/sampleSheetAdapters.ts +75 -0
- package/src/templates/sampleSheetBuilder.ts +23 -0
- package/src/templates/targetedMetabolomicsCollectionBuilder.ts +79 -0
- package/src/templates/targetedMetabolomicsHelpers.ts +102 -0
- package/src/templates/templateAdapterTypes.ts +58 -0
- package/src/templates/templateControlSchemas.ts +320 -0
- package/src/templates/templateCreateOptions.ts +208 -0
- package/src/templates/templateEnvelopes.ts +137 -0
- package/src/templates/templatePackCollectionBuilder.ts +23 -0
- package/src/templates/templatePresetCollectionBuilder.ts +139 -0
- package/src/templates/templateQpcrTypes.ts +48 -0
- package/src/templates/templateValidators.ts +414 -0
- package/src/templates/timeCourseAdapters.ts +73 -0
- package/src/templates/timeCourseBuilder.ts +64 -0
- package/src/templates/types.ts +493 -0
- package/src/templates/wellPlateScreenCollectionBuilder.ts +36 -0
- package/src/templates/westernBlotAssayCollectionBuilder.ts +68 -0
- package/src/types/analysisArtifactTypes.ts +176 -0
- package/src/types/auth.ts +59 -0
- package/src/types/auto-group.ts +157 -0
- package/src/types/componentLabTypes.ts +235 -0
- package/src/types/componentWorkflowTypes.ts +190 -0
- package/src/types/components.ts +527 -0
- package/src/types/form-builder.ts +208 -0
- package/src/types/generated-ui.ts +189 -0
- package/src/types/index.ts +299 -0
- package/src/types/instrument.ts +62 -0
- package/src/types/jobs.ts +70 -0
- package/src/types/platform.ts +132 -0
- package/src/utils/color.ts +96 -0
- package/src/utils/formModelSync.ts +50 -0
- package/src/utils/items.ts +28 -0
- package/src/utils/options.ts +23 -0
- package/src/utils/pluginIcon.ts +188 -0
- package/src/utils/pluginSecrets.ts +102 -0
- package/src/utils/rack.ts +209 -0
- package/src/utils/records.ts +9 -0
- package/src/utils/sampleGroupPath.ts +19 -0
- package/dist/ExperimentPopover-C1e0cd94.js +0 -3
- package/dist/ExperimentSelectorModal-DCWTFyos.js +0 -4
- package/dist/SettingsModal-Bpybht86.js +0 -5
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const DEFAULT_COLORS: string[];
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import { AutoGroupResult, ColumnInfo, OutlierAction, ParsedCsvData } from '../types/auto-group';
|
|
2
|
+
export declare function computeGroups(allSamples: string[], columns: ColumnInfo[], enabledFields: Set<number>, outlierActions: Map<number, OutlierAction>, delimiter: string, minFieldCount: number): AutoGroupResult;
|
|
3
|
+
export declare function computeGroupsFromCsv(csvData: ParsedCsvData, columns: ColumnInfo[], enabledFields: Set<number>): AutoGroupResult;
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
import { ComputedRef } from 'vue';
|
|
2
|
+
import { BioTemplateComponentBinding, BioTemplateComponentBindingsById, BioTemplateComponentImport, BioTemplateComponentPropsByComponent, BioTemplateComponentPropsBinding, BioTemplateComponentPropsById, BioTemplateComponentPropsLookupOptions, BioTemplateComponentSnippet, BioTemplateComponentUsage } from './useBioTemplateComponents';
|
|
3
|
+
/**
|
|
4
|
+
* The template-component slice of `UseBioTemplateWorkspaceReturn`: the ~9 keys every
|
|
5
|
+
* bio-template workspace composable (`useBioTemplateWorkspace`, `useBioTemplatePackWorkspace`,
|
|
6
|
+
* `useBioTemplatePresetWorkspace`) re-exposes verbatim from `useBioTemplateComponents()`.
|
|
7
|
+
*/
|
|
8
|
+
export interface BioTemplateWorkspaceComponentBindings {
|
|
9
|
+
componentBindings: BioTemplateComponentBinding[];
|
|
10
|
+
componentBindingsById: BioTemplateComponentBindingsById;
|
|
11
|
+
componentImports: BioTemplateComponentImport[];
|
|
12
|
+
componentProps: BioTemplateComponentPropsBinding[];
|
|
13
|
+
componentPropsById: BioTemplateComponentPropsById;
|
|
14
|
+
componentPropsByComponent: BioTemplateComponentPropsByComponent;
|
|
15
|
+
componentSnippets: BioTemplateComponentSnippet[];
|
|
16
|
+
componentUsage: BioTemplateComponentUsage | null;
|
|
17
|
+
getComponentProps: (component: string, options?: BioTemplateComponentPropsLookupOptions) => Record<string, unknown> | undefined;
|
|
18
|
+
}
|
|
19
|
+
/** Structural source shape accepted by {@link flattenWorkspaceComponentBindings}. */
|
|
20
|
+
export interface BioTemplateWorkspaceComponentSource {
|
|
21
|
+
componentBindings: BioTemplateComponentBinding[];
|
|
22
|
+
componentBindingsById: BioTemplateComponentBindingsById;
|
|
23
|
+
componentImports: BioTemplateComponentImport[];
|
|
24
|
+
componentProps: BioTemplateComponentPropsBinding[];
|
|
25
|
+
componentPropsById: BioTemplateComponentPropsById;
|
|
26
|
+
componentPropsByComponent: BioTemplateComponentPropsByComponent;
|
|
27
|
+
componentSnippets: BioTemplateComponentSnippet[];
|
|
28
|
+
componentUsage: BioTemplateComponentUsage | null;
|
|
29
|
+
getComponentProps: (component: string, options?: BioTemplateComponentPropsLookupOptions) => Record<string, unknown> | undefined;
|
|
30
|
+
}
|
|
31
|
+
/**
|
|
32
|
+
* Pick the shared template-component binding keys off a resolved bio-template workspace
|
|
33
|
+
* (or its `components` source directly), so composables that build on `useBioTemplateWorkspace`
|
|
34
|
+
* spread one object instead of re-listing all 9 keys by hand.
|
|
35
|
+
*
|
|
36
|
+
* @example Recommended
|
|
37
|
+
* ```ts
|
|
38
|
+
* const bindings = { renderer, ...flattenWorkspaceComponentBindings(components) }
|
|
39
|
+
* ```
|
|
40
|
+
*/
|
|
41
|
+
export declare function flattenWorkspaceComponentBindings(source: BioTemplateWorkspaceComponentSource): BioTemplateWorkspaceComponentBindings;
|
|
42
|
+
/** Keys of {@link BioTemplateWorkspaceComponentBindings} that are plain (non-reactive) values, lifted to `ComputedRef`s by {@link liftWorkspaceComponentBindings}. */
|
|
43
|
+
export type LiftedBioTemplateWorkspaceComponentBindings = {
|
|
44
|
+
[K in Exclude<keyof BioTemplateWorkspaceComponentBindings, 'getComponentProps'>]: ComputedRef<BioTemplateWorkspaceComponentBindings[K]>;
|
|
45
|
+
} & {
|
|
46
|
+
getComponentProps: BioTemplateWorkspaceComponentBindings['getComponentProps'];
|
|
47
|
+
};
|
|
48
|
+
/**
|
|
49
|
+
* `computed()`-lifted version of {@link flattenWorkspaceComponentBindings} for composables
|
|
50
|
+
* that hold their resolved workspace behind a `ComputedRef` (e.g. a regenerated workspace
|
|
51
|
+
* swapped in via `shallowRef`/`effectScope`), so each key stays independently reactive
|
|
52
|
+
* instead of forcing consumers to unwrap the whole workspace to read one field.
|
|
53
|
+
* `getComponentProps` stays a plain callable function, matching the un-lifted composables.
|
|
54
|
+
*
|
|
55
|
+
* @example Recommended
|
|
56
|
+
* ```ts
|
|
57
|
+
* const workspace = computed(() => workspaceRef.value)
|
|
58
|
+
* const { componentBindings, componentProps, getComponentProps } = liftWorkspaceComponentBindings(workspace)
|
|
59
|
+
* ```
|
|
60
|
+
*/
|
|
61
|
+
export declare function liftWorkspaceComponentBindings<TSource extends BioTemplateWorkspaceComponentSource>(workspace: ComputedRef<TSource>): LiftedBioTemplateWorkspaceComponentBindings;
|
|
@@ -8,10 +8,12 @@ export { resolvePluginFrontendBase } from './pluginFrontendBase';
|
|
|
8
8
|
export { getPresenceClientId, usePresenceHeartbeat, type PresenceHeartbeatOptions, type PresenceHeartbeatPayload, type PresenceHeartbeatResponse, type UsePresenceHeartbeatReturn, } from './usePresenceHeartbeat';
|
|
9
9
|
export { getInjectedFrontendRevision, useRuntimeAlignment, type RuntimeAlignmentOptions, type RuntimeRevisionResponse, type UseRuntimeAlignmentReturn, } from './useRuntimeAlignment';
|
|
10
10
|
export { useForm, type ValidationRule, type FieldRules, type FieldState, type UseFormReturn, } from './useForm';
|
|
11
|
+
export { useAsync, useAsyncBatch, type AsyncError, type AsyncState, type UseAsyncReturn, type UseAsyncOptions, } from './useAsync';
|
|
11
12
|
export { useWellPlateEditor, type UseWellPlateEditorOptions, type UseWellPlateEditorReturn, } from './useWellPlateEditor';
|
|
12
13
|
export { useConcentrationUnits, type ConcentrationValue, type ConcentrationUnit, type MolarityUnit, type MassVolumeUnit, type PercentageUnit, type UnitCategory, type UseConcentrationUnitsReturn, } from './useConcentrationUnits';
|
|
13
14
|
export { useDoseCalculator, type VolumeUnit, type VolumeValue, type DilutionParams, type DilutionResult, type SerialDilutionParams, type SerialDilutionStep, type SerialDilutionResult, type ConversionResult, type WellConcentration, type UseDoseCalculatorReturn, } from './useDoseCalculator';
|
|
14
15
|
export { useProtocolTemplates, type ParameterDefinition, type StepTemplate, type ValidationResult, type UseProtocolTemplatesReturn, } from './useProtocolTemplates';
|
|
16
|
+
export { useRackEditor, type UseRackEditorOptions, type UseRackEditorReturn, } from './useRackEditor';
|
|
15
17
|
export { useChemicalFormula, ATOMIC_WEIGHTS, type ParsedElement, type FormulaParseResult, type FormulaPart, type FormulaPartType, } from './useChemicalFormula';
|
|
16
18
|
export { useSequenceUtils, type SequenceType, type SequenceStats, } from './useSequenceUtils';
|
|
17
19
|
export { useTimeUtils, parseTime, formatTime, formatTimeSlot, generateTimeSlots, rangesOverlap, durationMinutes, formatDuration, isTimeInRange, findAvailableSlots, snapToSlot, addMinutes, compareTime, findNearestTimeSlotIndex, toMinutes, fromMinutes, } from './useTimeUtils';
|
|
@@ -22,6 +24,7 @@ export { useDebouncedWatch, type DebouncedWatchCallback, type DebouncedWatchClea
|
|
|
22
24
|
export { useFormBuilder, evaluateCondition } from './useFormBuilder';
|
|
23
25
|
export { createGeneratedAnalysisTransport, useGeneratedAnalysis, usePluginJobs, type GeneratedAnalysisTransport, type GeneratedAnalysisOptions, type PluginJobRequestOptions, type PluginJobWaitOptions, type UsePluginJobsOptions, type UsePluginJobsReturn, type UseGeneratedAnalysisReturn, } from './useGeneratedAnalysis';
|
|
24
26
|
export { useAutoGroup, DEFAULT_COLORS, extractSamplesFromDesignData } from './useAutoGroup';
|
|
27
|
+
export { usePluginConfig, type UsePluginConfigReturn } from './usePluginConfig';
|
|
25
28
|
export { useReagentSeries, generateDilutionSeries, DEFAULT_PRESETS, DEFAULT_UNITS, type LevelEntry, type DilutionPreset, type UseReagentSeriesReturn, } from './useReagentSeries';
|
|
26
29
|
export { useExperimentSelector, type UseExperimentSelectorOptions, type UseExperimentSelectorReturn, } from './useExperimentSelector';
|
|
27
30
|
export { useAnalysisArtifacts, ANALYSIS_FILE_ARTIFACT_SCHEMA, type UseAnalysisArtifactsOptions, type UseAnalysisArtifactsReturn, } from './useAnalysisArtifacts';
|
|
@@ -36,14 +39,19 @@ export { useAppExperiment, APP_EXPERIMENT_KEY, type UseAppExperimentOptions, typ
|
|
|
36
39
|
export { useExperimentSave, type UseExperimentSaveOptions, type UseExperimentSaveReturn, } from './useExperimentSave';
|
|
37
40
|
export { useTemplateCollection, type TemplateCollectionInput, type UseTemplateCollectionOptions, type UseTemplateCollectionReturn, } from './useTemplateCollection';
|
|
38
41
|
export { useRequestSyncState, type RequestSyncRunOptions, type RequestSyncSuccessKind, type UseRequestSyncStateReturn, } from './useRequestSyncState';
|
|
42
|
+
export { useCommandHistory, type CommandHistoryCommand, type CommandHistoryExecuteOptions, type CommandHistoryResult, type UseCommandHistoryOptions, type UseCommandHistoryReturn, } from './useCommandHistory';
|
|
39
43
|
export { useOptimisticMutation, type OptimisticMutationContext, type UseOptimisticMutationOptions, type UseOptimisticMutationReturn, } from './useOptimisticMutation';
|
|
44
|
+
export { createPluginResourceClient, useResourceCrud, type PluginResourceClientOptions, type ResourceCrudAdapter, type ResourceKey, type UseResourceCrudOptions, type UseResourceCrudReturn, } from './useResourceCrud';
|
|
40
45
|
export { detectDelimiter, parseDelimitedText, readFileAsText, useFileImport, validateImportFile, type DelimitedTable, type FileImportOptions, type FileImportValidationOptions, type ParseDelimitedTextOptions, type UseFileImportReturn, } from './useFileImport';
|
|
41
46
|
export { useSelectionLimit, type SelectionLimitSource, type UseSelectionLimitOptions, type UseSelectionLimitReturn, } from './useSelectionLimit';
|
|
42
47
|
export { useListSelection, type ListSelectionSource, type ListSelectionValue, type UseListSelectionOptions, type UseListSelectionReturn, type WidenListSelectionValue, } from './useListSelection';
|
|
48
|
+
export { useGroupAssignment, type GroupAssignmentSource, type GroupAssignmentState, type GroupAssignmentZone, type UseGroupAssignmentOptions, type UseGroupAssignmentReturn, } from './useGroupAssignment';
|
|
43
49
|
export { useSampleGroups, type DisplaySampleSubGroup, type SampleGroupNode, type SampleGroupSource, type SampleMajorGroup, type UseSampleGroupsOptions, type UseSampleGroupsReturn, } from './useSampleGroups';
|
|
44
50
|
export { useExpansionSet, type ExpansionSetSource, type UseExpansionSetOptions, type UseExpansionSetReturn, } from './useExpansionSet';
|
|
45
51
|
export { compareSortValues, useSortedItems, type CompareSortValuesOptions, type SortComparator, type SortComparatorContext, type SortDescriptor, type SortedItemsSource, type SortOrder, type UseSortedItemsOptions, type UseSortedItemsReturn, } from './useSortedItems';
|
|
46
52
|
export { candidateMatchesSearch, normalizeSearchQuery, useTextSearch, type TextSearchCandidate, type TextSearchSource, type UseTextSearchOptions, type UseTextSearchReturn, } from './useTextSearch';
|
|
53
|
+
export { coordinateToWellId, useWellPainting, wellIdToCoordinate, wellIdsInRectangle, type UseWellPaintingOptions, type UseWellPaintingReturn, type WellCoordinate, type WellPaintResult, type WellPlateSource, } from './useWellPainting';
|
|
54
|
+
export { createColumnConditions, createRowConditions, createWellPlateWells, useWellPlateAdapter, type AxisConditionEntry, type UseWellPlateAdapterReturn, type WellPlateAdapterOptions, type WellPlateAdapterSource, type WellPlateEntry, } from './useWellPlateAdapter';
|
|
47
55
|
export { runWellPlateValidation, useWellPlateValidation, type UseWellPlateValidationOptions, type UseWellPlateValidationReturn, type WellPlateValidationRule, type WellPlateValidationSeverity, type WellPlateValidationSource, type WellPlateValidationWarning, } from './useWellPlateValidation';
|
|
48
56
|
export { controlsToFormSchema, controlsToSectionFormSchema, controlsToSectionFormSchemas, controlsToSidebarPanels, controlsToSettingsSchema, controlsToTopBarSettingsConfig, controlsToViewIds, controlsToViewItems, controlValuesToComponentBindings, controlValuesToComponentBindingsById, controlValuesToComponentProps, defineControlComponentBindings, defineControlModel, defineDoseDesignControlModel, defineDoseCalculatorControlProps, defineControls, defineWellPlateControlProps, defineWellPlateDoseComponentBindings, defineWellPlateDoseControlProps, getDefaultControlView, getControlDefaults, useControlSchema, useControlWorkspace, type ControlDefinition, type ControlComponentBinding, type ControlComponentBindingConfig, type ControlComponentBindingRecordConfig, type ControlComponentBindingsById, type ControlComponentBindingsConfig, type ControlComponentPropSource, type ControlComponentPropsByIdMap, type ControlComponentPropsMap, type DoseDesignControlModelOptions, type DoseCalculatorControlPropsOptions, type ControlFormSchema, type ControlInput, type ControlModel, type ControlModelBinding, type ControlModelSectionConfig, type ControlModelViewConfig, type ControlOption, type ControlOptionValue, type ControlPrimitive, type ControlSchema, type ControlSchemaOptions, type ControlShorthand, type ControlWorkspaceOptions, type ControlFormBinding, type ControlSettingsBinding, type ControlSidebarBinding, type ControlSectionConfig, type ControlSidebarConfig, type ControlTopBarSettingsBinding, type ControlViewConfig, type ControlValues, type UseControlSchemaReturn, type ControlWorkspaceAppTopBarPillBinding, type ControlWorkspaceComponentBindings, type ControlWorkspaceFormBinding, type ControlWorkspacePillNavBinding, type ControlWorkspaceSidebarBinding, type ControlWorkspaceTopBarBinding, type ControlWorkspaceTopBarSettingsBinding, type UseControlWorkspaceReturn, type WellPlateControlPropsOptions, type WellPlateDoseControlPropsOptions, } from './useControlSchema';
|
|
49
57
|
export { getBioTemplateControlSchema, requireBioTemplateControlSchema, useBioTemplateControls, type BioTemplateControlSchema, type BioTemplateControlTarget, } from './useBioTemplateControls';
|
|
@@ -51,5 +59,10 @@ export { getBioTemplateComponentProps, getBioTemplateComponentBindings, toBioTem
|
|
|
51
59
|
export { useBioTemplateWorkspace, type BioTemplateRendererBinding, type BioTemplateWorkspaceBindings, type BioTemplateWorkspaceTarget, type UseBioTemplateWorkspaceReturn, } from './useBioTemplateWorkspace';
|
|
52
60
|
export { useBioTemplatePresetWorkspace, type BioTemplatePresetWorkspaceBindings, type UseBioTemplatePresetWorkspaceOptions, type UseBioTemplatePresetWorkspaceReturn, } from './useBioTemplatePresetWorkspace';
|
|
53
61
|
export { useBioTemplatePackWorkspace, type UseBioTemplatePackWorkspaceOptions, type UseBioTemplatePackWorkspaceReturn, } from './useBioTemplatePackWorkspace';
|
|
54
|
-
export { buildPluginEndpointUrl, createPluginClient, downloadBlob, downloadPluginEndpoint, getPluginPageSelectorItems, pluginFormDataFromPayload, resolvePluginBaseUrl, uploadPluginEndpoint, usePluginEventStream, usePluginSettings, useCurrentExperiment, type BuildPluginEndpointUrlOptions, type DownloadBlobOptions, type DownloadPluginEndpointOptions, type PluginContract, type PluginContractSettings, type PluginClientRequestOptions, type PluginEndpointContract, type PluginEndpointDefinition, type PluginHttpMethod, type PluginNavItemContract, type PluginEndpointRequestOptions, type PluginEventStreamMessage, type PluginEventStreamOptions, type PluginFormDataPayload, type PluginFormDataValue, type CreatePluginClientOptions, type UseCurrentExperimentOptions, type UseCurrentExperimentReturn, type UsePluginEventStreamReturn, type UsePluginSettingsOptions, type UsePluginSettingsReturn, } from './usePluginClient';
|
|
55
|
-
export { usePluginJobCenter, type PluginJobCenterSource, type JobsStatusTrayTab, type UsePluginJobCenterOptions, type UsePluginJobCenterReturn, } from './useJobsStatusTray';
|
|
62
|
+
export { buildPluginEndpointUrl, createPluginClient, downloadBlob, downloadPluginEndpoint, getPluginPageSelectorItems, pluginFormDataFromPayload, resolvePluginBaseUrl, uploadPluginEndpoint, usePluginClient, usePluginEventStream, usePluginSettings, useCurrentExperiment, type BuildPluginEndpointUrlOptions, type DownloadBlobOptions, type DownloadPluginEndpointOptions, type PluginContract, type PluginContractSettings, type PluginClientRequestOptions, type PluginEndpointContract, type PluginEndpointDefinition, type PluginHttpMethod, type PluginNavItemContract, type PluginEndpointRequestOptions, type PluginEventStreamMessage, type PluginEventStreamOptions, type PluginFormDataPayload, type PluginFormDataValue, type CreatePluginClientOptions, type UseCurrentExperimentOptions, type UseCurrentExperimentReturn, type UsePluginEventStreamReturn, type UsePluginSettingsOptions, type UsePluginSettingsReturn, } from './usePluginClient';
|
|
63
|
+
export { combinePluginJobSources, usePluginJobCenter, useJobsStatusTray, type CombinedPluginJobCenterSource, type JobsStatusTrayAdapter, type JobStreamMessage, type PluginJobCenterSource, type JobsStatusTrayTab, type UseJobsStatusTrayOptions, type UseJobsStatusTrayReturn, type UsePluginJobCenterOptions, type UsePluginJobCenterReturn, } from './useJobsStatusTray';
|
|
64
|
+
export { usePluginWorkspace, type PluginWorkspaceSlotsLike, type UsePluginWorkspaceOptions, type UsePluginWorkspaceReturn, } from './usePluginWorkspace';
|
|
65
|
+
export { type PluginWorkspaceControlsModel, type PluginWorkspaceShellModel, type PluginWorkspaceSidebarModel, } from './pluginWorkspaceModel';
|
|
66
|
+
export { useFocusTrap, type UseFocusTrapOptions, type UseFocusTrapReturn, } from './useFocusTrap';
|
|
67
|
+
export { useRovingFocus, type UseRovingFocusOptions, type UseRovingFocusReturn, } from './useRovingFocus';
|
|
68
|
+
export { useMenuKeyboard, type UseMenuKeyboardOptions, type UseMenuKeyboardReturn, } from './useMenuKeyboard';
|
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
import { a as SORT_OPTIONS, c as formatExperimentDate, d as resolveExperimentCode, i as EXPERIMENT_STATUS_VARIANT_MAP, l as formatExperimentStatus, n as EXPERIMENT_STATUS_LABELS, o as datePresetToISO, p as
|
|
2
|
-
import { r as useRequestSyncState } from "../EmptyState-
|
|
3
|
-
import { A as useConcentrationUnits, C as controlsToViewIds, D as getTypeDefault, E as getFieldRegistryEntry,
|
|
4
|
-
import { $ as
|
|
5
|
-
import { r as useApi, t as AuthenticationRequiredError } from "../useApi-
|
|
6
|
-
import { i as usePlatformContext, n as evaluateCondition, r as useForm, t as useFormBuilder } from "../useFormBuilder-
|
|
7
|
-
import { t as ANALYSIS_FILE_ARTIFACT_SCHEMA } from "../analysisArtifactTypes-
|
|
8
|
-
import { B as toBioTemplateComponentProps, H as toBioTemplateComponentPropsById, L as toBioTemplateComponentBindings, P as getBioTemplateComponentBindings, R as toBioTemplateComponentBindingsById, l as requireBioTemplateControlSchema, o as getBioTemplateControlSchema } from "../templates-
|
|
9
|
-
import { n as useDebouncedWatch, t as useExperimentSelector } from "../useExperimentSelector-
|
|
10
|
-
import { C as useAuth, S as
|
|
11
|
-
export { ANALYSIS_FILE_ARTIFACT_SCHEMA, APP_EXPERIMENT_KEY, ATOMIC_WEIGHTS, AuthenticationRequiredError, DATE_PRESET_OPTIONS, DEFAULT_COLORS, DEFAULT_MOBILE_VIEWPORT_QUERY, DEFAULT_PRESETS, DEFAULT_UNITS, EXPERIMENT_STATUS_LABELS, EXPERIMENT_STATUS_OPTIONS, EXPERIMENT_STATUS_VARIANT_MAP, SORT_OPTIONS, addMinutes, buildAnalysisArtifactTargetQuery, buildPluginEndpointUrl, candidateMatchesSearch, compareSortValues, compareTime, controlValuesToComponentBindings, controlValuesToComponentBindingsById, controlValuesToComponentProps, controlsToFormSchema, controlsToSectionFormSchema, controlsToSectionFormSchemas, controlsToSettingsSchema, controlsToSidebarPanels, controlsToTopBarSettingsConfig, controlsToViewIds, controlsToViewItems, createGeneratedAnalysisTransport, createPluginClient, datePresetToISO, defineControlComponentBindings, defineControlModel, defineControls, defineDoseCalculatorControlProps, defineDoseDesignControlModel, defineWellPlateControlProps, defineWellPlateDoseComponentBindings, defineWellPlateDoseControlProps, detectDelimiter, downloadBlob, downloadPluginEndpoint, durationMinutes, evaluateCondition, experimentIdFromRoute, extractSampleNamesFromDesignData, extractSampleOptionsFromDesignData, extractSamplesFromDesignData, findAvailableSlots, findNearestTimeSlotIndex, formatDuration, formatExperimentDate, formatExperimentStatus, formatTime, formatTimeSlot, fromMinutes, generateDilutionSeries, generateTimeSlots, getBioTemplateComponentBindings, getBioTemplateComponentProps, getBioTemplateControlSchema, getControlDefaults, getDefaultControlView, getExperimentStatusVariant, getFieldRegistryEntry, getInjectedFrontendRevision, getPluginPageSelectorItems, getPresenceClientId, getTypeDefault, isTimeInRange, normalizeSearchQuery, parseAnalysisArtifactTarget, parseDelimitedText, parseTime, pluginFormDataFromPayload, rangesOverlap, readFileAsText, requireBioTemplateControlSchema, resolveCurrentPluginId, resolveExperimentCode, resolvePluginBaseUrl, resolvePluginFrontendBase, runWellPlateValidation, snapToSlot, toBioTemplateComponentBindings, toBioTemplateComponentBindingsById, toBioTemplateComponentProps, toBioTemplateComponentPropsByComponent, toBioTemplateComponentPropsById, toMinutes, unwrapExperimentDesignData, uploadPluginEndpoint, useAnalysisArtifacts, useApi, useAppExperiment, useAuth, useAutoGroup, useBioTemplateComponents, useBioTemplateControls, useBioTemplatePackWorkspace, useBioTemplatePresetWorkspace, useBioTemplateWorkspace, useChemicalFormula, useConcentrationUnits, useControlSchema, useControlWorkspace, useCurrentExperiment, useDebouncedWatch, useDoseCalculator, useEventListener, useExpansionSet, useExperimentData, useExperimentSamples, useExperimentSave, useExperimentSelector, useFileImport, useForm, useFormBuilder, useGeneratedAnalysis, useListSelection, useMobileSupportGate, useOptimisticMutation, usePasskey, usePlatformContext, usePluginEventStream, usePluginJobCenter, usePluginJobs, usePluginSettings, usePresenceHeartbeat, useProtocolTemplates, useReagentSeries, useRequestSyncState, useRuntimeAlignment, useSampleGroups, useScheduleDrag, useSelectionLimit, useSequenceUtils, useSortedItems, useTemplateCollection, useTextSearch, useTheme, useTimeUtils, useToast, useWellPlateEditor, useWellPlateValidation, validateImportFile };
|
|
1
|
+
import { a as SORT_OPTIONS, c as formatExperimentDate, d as resolveExperimentCode, i as EXPERIMENT_STATUS_VARIANT_MAP, l as formatExperimentStatus, m as useEventListener, n as EXPERIMENT_STATUS_LABELS, o as datePresetToISO, p as useFocusTrap, r as EXPERIMENT_STATUS_OPTIONS, s as experimentIdFromRoute, t as DATE_PRESET_OPTIONS, u as getExperimentStatusVariant } from "../experiment-utils-DV3DrvE_.js";
|
|
2
|
+
import { r as useRequestSyncState } from "../EmptyState-NBqf2_8z.js";
|
|
3
|
+
import { A as useConcentrationUnits, At as formatTimeSlot, C as controlsToViewIds, Ct as addMinutes, D as getTypeDefault, Dt as findNearestTimeSlotIndex, E as getFieldRegistryEntry, Et as findAvailableSlots, F as ATOMIC_WEIGHTS, Ft as rangesOverlap, G as createGeneratedAnalysisTransport, Ht as useSelectionLimit, I as useChemicalFormula, It as snapToSlot, K as useGeneratedAnalysis, Lt as toMinutes, Mt as generateTimeSlots, N as useSequenceUtils, Nt as isTimeInRange, Ot as formatDuration, Pt as parseTime, Rt as useTimeUtils, S as controlsToTopBarSettingsConfig, T as getDefaultControlView, Tt as durationMinutes, Vt as useListSelection, W as resolveCurrentPluginId, _ as controlsToFormSchema, a as defineDoseCalculatorControlProps, b as controlsToSettingsSchema, c as defineWellPlateDoseComponentBindings, d as defineControlModel, h as controlValuesToComponentProps, i as useControlSchema, jt as fromMinutes, kt as formatTime, l as defineWellPlateDoseControlProps, m as controlValuesToComponentBindingsById, n as defineControls, o as defineDoseDesignControlModel, p as controlValuesToComponentBindings, q as usePluginJobs, r as getControlDefaults, s as defineWellPlateControlProps, t as defineControlComponentBindings, u as useControlWorkspace, v as controlsToSectionFormSchema, w as controlsToViewItems, wt as compareTime, x as controlsToSidebarPanels, y as controlsToSectionFormSchemas, z as useAnalysisArtifacts } from "../useControlSchema-_OVhavKq.js";
|
|
4
|
+
import { $ as useTheme, A as useFileImport, B as useDoseCalculator, D as detectDelimiter, F as extractSampleNamesFromDesignData, G as DEFAULT_MOBILE_VIEWPORT_QUERY, H as useJobsStatusTray, I as extractSampleOptionsFromDesignData, J as useAppExperiment, K as useMobileSupportGate, L as unwrapExperimentDesignData, M as extractSamplesFromDesignData, N as useAutoGroup, O as parseDelimitedText, Q as usePresenceHeartbeat, R as DEFAULT_COLORS, U as usePluginJobCenter, V as combinePluginJobSources, W as usePluginWorkspace, X as useRuntimeAlignment, Y as getInjectedFrontendRevision, Z as getPresenceClientId, _ as useScheduleDrag, a as useReagentSeries, at as useSortedItems, b as useExpansionSet, c as useBioTemplatePresetWorkspace, d as getBioTemplateComponentProps, et as useToast, f as toBioTemplateComponentPropsByComponent, g as useExperimentSave, h as useTemplateCollection, i as generateDilutionSeries, it as compareSortValues, j as validateImportFile, k as readFileAsText, l as useBioTemplatePackWorkspace, m as useBioTemplateControls, n as DEFAULT_PRESETS, nt as normalizeSearchQuery, o as useGroupAssignment, ot as useMenuKeyboard, p as useBioTemplateComponents, q as APP_EXPERIMENT_KEY, r as DEFAULT_UNITS, rt as useTextSearch, s as useRackEditor, st as useRovingFocus, t as useProtocolTemplates, tt as candidateMatchesSearch, u as useBioTemplateWorkspace, v as useExperimentSamples, x as useSampleGroups, y as useExperimentData, z as useWellPlateEditor } from "../useProtocolTemplates-Dq5Pzwyd.js";
|
|
5
|
+
import { r as useApi, t as AuthenticationRequiredError } from "../useApi-CDBq6z23.js";
|
|
6
|
+
import { i as usePlatformContext, n as evaluateCondition, r as useForm, t as useFormBuilder } from "../useFormBuilder-Bd714C7y.js";
|
|
7
|
+
import { t as ANALYSIS_FILE_ARTIFACT_SCHEMA } from "../analysisArtifactTypes-DQ0MjwHZ.js";
|
|
8
|
+
import { B as toBioTemplateComponentProps, H as toBioTemplateComponentPropsById, L as toBioTemplateComponentBindings, P as getBioTemplateComponentBindings, R as toBioTemplateComponentBindingsById, l as requireBioTemplateControlSchema, o as getBioTemplateControlSchema } from "../templates-CK72aKO1.js";
|
|
9
|
+
import { n as useDebouncedWatch, t as useExperimentSelector } from "../useExperimentSelector-DSEckf_g.js";
|
|
10
|
+
import { A as useAsync, C as createPluginResourceClient, D as buildAnalysisArtifactTargetQuery, E as useCommandHistory, M as resolvePluginFrontendBase, N as usePasskey, O as parseAnalysisArtifactTarget, P as useAuth, S as wellIdsInRectangle, T as useOptimisticMutation, _ as createWellPlateWells, a as pluginFormDataFromPayload, b as useWellPainting, c as usePluginClient, d as buildPluginEndpointUrl, f as resolvePluginBaseUrl, g as createRowConditions, h as createColumnConditions, i as getPluginPageSelectorItems, j as useAsyncBatch, k as usePluginConfig, l as usePluginEventStream, m as useWellPlateValidation, n as downloadBlob, o as uploadPluginEndpoint, p as runWellPlateValidation, r as downloadPluginEndpoint, s as useCurrentExperiment, t as createPluginClient, u as usePluginSettings, v as useWellPlateAdapter, w as useResourceCrud, x as wellIdToCoordinate, y as coordinateToWellId } from "../composables-C8mmD5ta.js";
|
|
11
|
+
export { ANALYSIS_FILE_ARTIFACT_SCHEMA, APP_EXPERIMENT_KEY, ATOMIC_WEIGHTS, AuthenticationRequiredError, DATE_PRESET_OPTIONS, DEFAULT_COLORS, DEFAULT_MOBILE_VIEWPORT_QUERY, DEFAULT_PRESETS, DEFAULT_UNITS, EXPERIMENT_STATUS_LABELS, EXPERIMENT_STATUS_OPTIONS, EXPERIMENT_STATUS_VARIANT_MAP, SORT_OPTIONS, addMinutes, buildAnalysisArtifactTargetQuery, buildPluginEndpointUrl, candidateMatchesSearch, combinePluginJobSources, compareSortValues, compareTime, controlValuesToComponentBindings, controlValuesToComponentBindingsById, controlValuesToComponentProps, controlsToFormSchema, controlsToSectionFormSchema, controlsToSectionFormSchemas, controlsToSettingsSchema, controlsToSidebarPanels, controlsToTopBarSettingsConfig, controlsToViewIds, controlsToViewItems, coordinateToWellId, createColumnConditions, createGeneratedAnalysisTransport, createPluginClient, createPluginResourceClient, createRowConditions, createWellPlateWells, datePresetToISO, defineControlComponentBindings, defineControlModel, defineControls, defineDoseCalculatorControlProps, defineDoseDesignControlModel, defineWellPlateControlProps, defineWellPlateDoseComponentBindings, defineWellPlateDoseControlProps, detectDelimiter, downloadBlob, downloadPluginEndpoint, durationMinutes, evaluateCondition, experimentIdFromRoute, extractSampleNamesFromDesignData, extractSampleOptionsFromDesignData, extractSamplesFromDesignData, findAvailableSlots, findNearestTimeSlotIndex, formatDuration, formatExperimentDate, formatExperimentStatus, formatTime, formatTimeSlot, fromMinutes, generateDilutionSeries, generateTimeSlots, getBioTemplateComponentBindings, getBioTemplateComponentProps, getBioTemplateControlSchema, getControlDefaults, getDefaultControlView, getExperimentStatusVariant, getFieldRegistryEntry, getInjectedFrontendRevision, getPluginPageSelectorItems, getPresenceClientId, getTypeDefault, isTimeInRange, normalizeSearchQuery, parseAnalysisArtifactTarget, parseDelimitedText, parseTime, pluginFormDataFromPayload, rangesOverlap, readFileAsText, requireBioTemplateControlSchema, resolveCurrentPluginId, resolveExperimentCode, resolvePluginBaseUrl, resolvePluginFrontendBase, runWellPlateValidation, snapToSlot, toBioTemplateComponentBindings, toBioTemplateComponentBindingsById, toBioTemplateComponentProps, toBioTemplateComponentPropsByComponent, toBioTemplateComponentPropsById, toMinutes, unwrapExperimentDesignData, uploadPluginEndpoint, useAnalysisArtifacts, useApi, useAppExperiment, useAsync, useAsyncBatch, useAuth, useAutoGroup, useBioTemplateComponents, useBioTemplateControls, useBioTemplatePackWorkspace, useBioTemplatePresetWorkspace, useBioTemplateWorkspace, useChemicalFormula, useCommandHistory, useConcentrationUnits, useControlSchema, useControlWorkspace, useCurrentExperiment, useDebouncedWatch, useDoseCalculator, useEventListener, useExpansionSet, useExperimentData, useExperimentSamples, useExperimentSave, useExperimentSelector, useFileImport, useFocusTrap, useForm, useFormBuilder, useGeneratedAnalysis, useGroupAssignment, useJobsStatusTray, useListSelection, useMenuKeyboard, useMobileSupportGate, useOptimisticMutation, usePasskey, usePlatformContext, usePluginClient, usePluginConfig, usePluginEventStream, usePluginJobCenter, usePluginJobs, usePluginSettings, usePluginWorkspace, usePresenceHeartbeat, useProtocolTemplates, useRackEditor, useReagentSeries, useRequestSyncState, useResourceCrud, useRovingFocus, useRuntimeAlignment, useSampleGroups, useScheduleDrag, useSelectionLimit, useSequenceUtils, useSortedItems, useTemplateCollection, useTextSearch, useTheme, useTimeUtils, useToast, useWellPainting, useWellPlateAdapter, useWellPlateEditor, useWellPlateValidation, validateImportFile, wellIdToCoordinate, wellIdsInRectangle };
|
|
@@ -0,0 +1,164 @@
|
|
|
1
|
+
import { AccountMenuItem, PageSelectorItemInput, PillNavItemInput, PluginSwitcherInfo, SidebarToolSection, TopBarSettingsConfig, TopBarVariant } from '../types';
|
|
2
|
+
import { FormEnhancements, FormSchema } from '../types/form-builder';
|
|
3
|
+
import { ControlComponentBinding, ControlComponentBindingsById, ControlModel, ControlModelBinding, ControlSchema, ControlWorkspaceOptions } from './useControlSchema';
|
|
4
|
+
import { PluginWorkspaceSidebarVariant } from '../components/PluginWorkspaceView.props';
|
|
5
|
+
/**
|
|
6
|
+
* Scoped-slot payload shared by PluginWorkspaceView's `default`, `topbar`, and `sidebar`
|
|
7
|
+
* slots: the resolved active view plus the values and component bindings/props derived
|
|
8
|
+
* from the compact control schema. WorkspaceControlsInternal renders a component's default
|
|
9
|
+
* slot bound to exactly this shape.
|
|
10
|
+
*/
|
|
11
|
+
export interface PluginWorkspaceControlsModel {
|
|
12
|
+
/** Currently resolved workspace view id. */
|
|
13
|
+
activeView: string;
|
|
14
|
+
/** Sets the active view, updating any uncontrolled state and emitting `update:activeView`. */
|
|
15
|
+
setActiveView: (viewId: string) => void;
|
|
16
|
+
/** Current control values, shared between the auto-rendered sidebar form and the default slot. */
|
|
17
|
+
values: Record<string, unknown>;
|
|
18
|
+
/** Ordered SDK component bindings resolved from the current control values. */
|
|
19
|
+
componentBindings: ControlComponentBinding[];
|
|
20
|
+
/** SDK component bindings resolved from the current control values, keyed by binding id. */
|
|
21
|
+
componentBindingsById: ControlComponentBindingsById;
|
|
22
|
+
/** Flat component props resolved from the current control values. */
|
|
23
|
+
componentProps: Record<string, unknown>;
|
|
24
|
+
/** Named component prop mappings resolved from the current control values. */
|
|
25
|
+
componentPropsById: Record<string, Record<string, unknown>>;
|
|
26
|
+
}
|
|
27
|
+
/**
|
|
28
|
+
* Resolved AppLayout + AppTopBar configuration consumed by WorkspaceShellInternal: top bar
|
|
29
|
+
* chrome and navigation, plus the AppLayout layout/collapse props that own the responsive
|
|
30
|
+
* mobile sidebar toggle.
|
|
31
|
+
*/
|
|
32
|
+
export interface PluginWorkspaceShellModel {
|
|
33
|
+
/** AppLayout sidebar position. */
|
|
34
|
+
sidebarPosition: 'left' | 'right';
|
|
35
|
+
/** AppLayout sidebar width, forwarded so the layout can reserve space before AppSidebar mounts. */
|
|
36
|
+
sidebarWidth?: string;
|
|
37
|
+
/** AppLayout floating style. */
|
|
38
|
+
floating: boolean;
|
|
39
|
+
/** Convert the sidebar into an SDK-owned mobile overlay below the AppLayout breakpoint. */
|
|
40
|
+
responsiveSidebar: boolean;
|
|
41
|
+
/** Accessible label for the mobile sidebar toggle. */
|
|
42
|
+
sidebarToggleLabel: string;
|
|
43
|
+
/** Accessible label used when the mobile sidebar is open. */
|
|
44
|
+
sidebarCloseLabel: string;
|
|
45
|
+
/** Whether AppLayout should render a `#sidebar` template at all. */
|
|
46
|
+
hasSidebarSurface: boolean;
|
|
47
|
+
/** App or plugin title shown in the top bar. */
|
|
48
|
+
title: string;
|
|
49
|
+
/** Secondary copy shown under the title. */
|
|
50
|
+
subtitle?: string;
|
|
51
|
+
/** Top bar visual treatment. */
|
|
52
|
+
topBarVariant: TopBarVariant;
|
|
53
|
+
/** Home link used by the top bar brand icon. */
|
|
54
|
+
homePath: string;
|
|
55
|
+
/** Show the default MINT logo when no icon/logo slot is provided. */
|
|
56
|
+
showLogo: boolean;
|
|
57
|
+
/** Preferred route-level page selector entries. */
|
|
58
|
+
pageSelector?: PageSelectorItemInput[];
|
|
59
|
+
/** Resolved active page selector id. */
|
|
60
|
+
currentPageSelectorId: string;
|
|
61
|
+
/** Optional plugin switcher shown in the left navigation position. */
|
|
62
|
+
pluginSwitcher?: PluginSwitcherInfo;
|
|
63
|
+
/** Resolved centered pill navigation, generated from the control schema when omitted. */
|
|
64
|
+
pillNav?: PillNavItemInput[];
|
|
65
|
+
/** Resolved active centered pill id. */
|
|
66
|
+
currentPillId: string;
|
|
67
|
+
/** Show the theme toggle button. */
|
|
68
|
+
showThemeToggle: boolean;
|
|
69
|
+
/** Show the settings button and modal. */
|
|
70
|
+
showSettings: boolean;
|
|
71
|
+
/** Built-in settings modal configuration. */
|
|
72
|
+
settingsConfig?: TopBarSettingsConfig;
|
|
73
|
+
/** Show the standalone badge when not integrated into the platform. */
|
|
74
|
+
showStandaloneLabel: boolean;
|
|
75
|
+
/** Custom standalone badge label. */
|
|
76
|
+
standaloneLabel: string;
|
|
77
|
+
/** Account dropdown entries. */
|
|
78
|
+
accountMenu?: AccountMenuItem[];
|
|
79
|
+
/** Show the notifications icon button. */
|
|
80
|
+
showNotifications: boolean;
|
|
81
|
+
/** Draw a notification dot on the notifications icon. */
|
|
82
|
+
hasNotificationDot: boolean;
|
|
83
|
+
/** Show the admin shortcut. */
|
|
84
|
+
showAdmin: boolean;
|
|
85
|
+
/** Route used by the admin shortcut. */
|
|
86
|
+
adminPath: string;
|
|
87
|
+
/** Account display name. */
|
|
88
|
+
userName?: string;
|
|
89
|
+
/** Explicit account avatar initial. */
|
|
90
|
+
userInitial?: string;
|
|
91
|
+
/** Account email shown in the avatar menu. */
|
|
92
|
+
userEmail?: string;
|
|
93
|
+
/** Names of AppTopBar passthrough slots the caller actually provided. */
|
|
94
|
+
topBarSlotNames: string[];
|
|
95
|
+
/** Scoped-slot payload exposed to the `topbar` override slot. */
|
|
96
|
+
controls: PluginWorkspaceControlsModel;
|
|
97
|
+
}
|
|
98
|
+
/**
|
|
99
|
+
* Resolved AppSidebar configuration consumed by WorkspaceSidebarInternal: sidebar chrome,
|
|
100
|
+
* panels/forms, collapse behavior, and the compact control-schema props that drive
|
|
101
|
+
* AppSidebar's auto-generated form.
|
|
102
|
+
*/
|
|
103
|
+
export interface PluginWorkspaceSidebarModel {
|
|
104
|
+
/** Sidebar chrome title. */
|
|
105
|
+
title?: string;
|
|
106
|
+
/** Sidebar chrome subtitle. */
|
|
107
|
+
subtitle?: string;
|
|
108
|
+
/** Optional compact badge/count rendered in the sidebar header. */
|
|
109
|
+
badge?: string | number;
|
|
110
|
+
/** AppSidebar visual preset. */
|
|
111
|
+
variant: PluginWorkspaceSidebarVariant;
|
|
112
|
+
/** Map of view IDs to sidebar tool sections. */
|
|
113
|
+
panels: Record<string, SidebarToolSection[]>;
|
|
114
|
+
/** Resolved active view, used to pick which panels/forms render. */
|
|
115
|
+
activeView: string;
|
|
116
|
+
/** AppSidebar floating style (always false: PluginWorkspaceView docks the sidebar inside AppLayout). */
|
|
117
|
+
floating: boolean;
|
|
118
|
+
/** Compact AppSidebar density. */
|
|
119
|
+
dense: boolean;
|
|
120
|
+
/** Sidebar CSS width. */
|
|
121
|
+
width?: string;
|
|
122
|
+
/** Sidebar position, mirrors the shell's `sidebarPosition`. */
|
|
123
|
+
side: 'left' | 'right';
|
|
124
|
+
/** Optional FormBuilder schemas keyed by section ID. */
|
|
125
|
+
forms: Record<string, FormSchema>;
|
|
126
|
+
/** DOM id for the AppSidebar scrollable content area. */
|
|
127
|
+
contentId?: string;
|
|
128
|
+
/** Render the sidebar shell even when no panel matches the active view. */
|
|
129
|
+
showWhenEmpty: boolean;
|
|
130
|
+
/** Optional compact control model for the generated sidebar form. */
|
|
131
|
+
model?: ControlModel | ControlModelBinding;
|
|
132
|
+
/** Compact control schema for the generated sidebar form. */
|
|
133
|
+
controlSchema?: ControlSchema;
|
|
134
|
+
/** Options passed to compact control schema generation. */
|
|
135
|
+
controlOptions: ControlWorkspaceOptions;
|
|
136
|
+
/** Shared values for the auto-rendered sidebar form. */
|
|
137
|
+
values: Record<string, unknown>;
|
|
138
|
+
/** Runtime FormBuilder enhancements for the auto-rendered sidebar form. */
|
|
139
|
+
formEnhancements?: FormEnhancements<Record<string, unknown>>;
|
|
140
|
+
/** Show submit/cancel actions inside the auto-rendered sidebar form. */
|
|
141
|
+
showFormActions: boolean;
|
|
142
|
+
/** Loading/saving state for the auto-rendered sidebar form. */
|
|
143
|
+
formLoading: boolean;
|
|
144
|
+
/** Disabled state for the auto-rendered sidebar form. */
|
|
145
|
+
formDisabled: boolean;
|
|
146
|
+
/** Readonly state for the auto-rendered sidebar form. */
|
|
147
|
+
formReadonly: boolean;
|
|
148
|
+
/** Size passed to the auto-rendered sidebar form. */
|
|
149
|
+
formSize: 'sm' | 'md' | 'lg';
|
|
150
|
+
/** Show a built-in collapse/expand button in the sidebar chrome. */
|
|
151
|
+
collapsible?: boolean;
|
|
152
|
+
/** Controlled sidebar collapsed state. */
|
|
153
|
+
collapsed?: boolean;
|
|
154
|
+
/** Initial sidebar collapsed state when uncontrolled. */
|
|
155
|
+
defaultCollapsed: boolean;
|
|
156
|
+
/** Sidebar width when collapsed. */
|
|
157
|
+
collapsedWidth: string;
|
|
158
|
+
/** Accessible label for the sidebar collapse action. */
|
|
159
|
+
collapseButtonLabel: string;
|
|
160
|
+
/** Accessible label for the sidebar expand action. */
|
|
161
|
+
expandButtonLabel: string;
|
|
162
|
+
/** Names of AppSidebar passthrough slots the caller actually provided. */
|
|
163
|
+
slotNames: string[];
|
|
164
|
+
}
|
|
@@ -40,6 +40,8 @@ export interface UseAnalysisArtifactsReturn {
|
|
|
40
40
|
pluginFilter: Ref<string | null>;
|
|
41
41
|
/** Fetch the artifact list for the current experiment. */
|
|
42
42
|
list: () => Promise<AnalysisArtifactSummary[]>;
|
|
43
|
+
/** Alias of list. */
|
|
44
|
+
refresh: () => Promise<AnalysisArtifactSummary[]>;
|
|
43
45
|
/** Fetch one artifact with its result payload; null when it fails or is superseded. */
|
|
44
46
|
getDetail: (artifactId: number) => Promise<AnalysisArtifactDetail | null>;
|
|
45
47
|
/** Resolve and fetch the exact stable artifact identity. */
|
|
@@ -0,0 +1,132 @@
|
|
|
1
|
+
import { Ref, ComputedRef } from 'vue';
|
|
2
|
+
/**
|
|
3
|
+
* Error type for async operations.
|
|
4
|
+
*/
|
|
5
|
+
export interface AsyncError {
|
|
6
|
+
message: string;
|
|
7
|
+
code?: string;
|
|
8
|
+
details?: Record<string, unknown>;
|
|
9
|
+
originalError?: unknown;
|
|
10
|
+
}
|
|
11
|
+
/**
|
|
12
|
+
* State of an async operation.
|
|
13
|
+
*/
|
|
14
|
+
export type AsyncState = 'idle' | 'loading' | 'success' | 'error';
|
|
15
|
+
/**
|
|
16
|
+
* Return type for useAsync composable.
|
|
17
|
+
*/
|
|
18
|
+
export interface UseAsyncReturn<T> {
|
|
19
|
+
data: Ref<T | null>;
|
|
20
|
+
error: Ref<AsyncError | null>;
|
|
21
|
+
state: Ref<AsyncState>;
|
|
22
|
+
isIdle: ComputedRef<boolean>;
|
|
23
|
+
isLoading: ComputedRef<boolean>;
|
|
24
|
+
isSuccess: ComputedRef<boolean>;
|
|
25
|
+
isError: ComputedRef<boolean>;
|
|
26
|
+
execute: (...args: unknown[]) => Promise<T | null>;
|
|
27
|
+
reset: () => void;
|
|
28
|
+
setData: (data: T | null) => void;
|
|
29
|
+
setError: (error: AsyncError | null) => void;
|
|
30
|
+
}
|
|
31
|
+
/**
|
|
32
|
+
* Options for useAsync.
|
|
33
|
+
*/
|
|
34
|
+
export interface UseAsyncOptions<T> {
|
|
35
|
+
initialData?: T | null;
|
|
36
|
+
immediate?: boolean;
|
|
37
|
+
immediateArgs?: unknown[];
|
|
38
|
+
transformError?: (error: unknown) => AsyncError;
|
|
39
|
+
onSuccess?: (data: T) => void;
|
|
40
|
+
onError?: (error: AsyncError) => void;
|
|
41
|
+
resetOnExecute?: boolean;
|
|
42
|
+
}
|
|
43
|
+
/**
|
|
44
|
+
* Composable for managing async operation state.
|
|
45
|
+
*
|
|
46
|
+
* Provides standardized loading, error, and success state management
|
|
47
|
+
* for any async function.
|
|
48
|
+
*
|
|
49
|
+
* @param asyncFn - The async function to wrap
|
|
50
|
+
* @param options - Configuration options
|
|
51
|
+
*
|
|
52
|
+
* @example
|
|
53
|
+
* ```typescript
|
|
54
|
+
* // Basic usage
|
|
55
|
+
* const { data, isLoading, error, execute } = useAsync(
|
|
56
|
+
* async (id: string) => {
|
|
57
|
+
* const response = await api.get(`/users/${id}`)
|
|
58
|
+
* return response.data
|
|
59
|
+
* }
|
|
60
|
+
* )
|
|
61
|
+
*
|
|
62
|
+
* // Execute the function
|
|
63
|
+
* await execute('user-123')
|
|
64
|
+
*
|
|
65
|
+
* // In template
|
|
66
|
+
* <div v-if="isLoading">Loading...</div>
|
|
67
|
+
* <div v-else-if="error">{{ error.message }}</div>
|
|
68
|
+
* <div v-else-if="data">{{ data.name }}</div>
|
|
69
|
+
* ```
|
|
70
|
+
*
|
|
71
|
+
* @example
|
|
72
|
+
* ```typescript
|
|
73
|
+
* // With options
|
|
74
|
+
* const { data, execute } = useAsync(
|
|
75
|
+
* fetchUser,
|
|
76
|
+
* {
|
|
77
|
+
* immediate: true,
|
|
78
|
+
* immediateArgs: ['default-user'],
|
|
79
|
+
* onSuccess: (user) => console.log('Fetched:', user.name),
|
|
80
|
+
* onError: (error) => toast.error(error.message),
|
|
81
|
+
* }
|
|
82
|
+
* )
|
|
83
|
+
* ```
|
|
84
|
+
*
|
|
85
|
+
* @example
|
|
86
|
+
* ```typescript
|
|
87
|
+
* // Form submission
|
|
88
|
+
* const { isLoading, error, execute: submit } = useAsync(
|
|
89
|
+
* async (formData: FormData) => {
|
|
90
|
+
* await api.post('/submit', formData)
|
|
91
|
+
* },
|
|
92
|
+
* {
|
|
93
|
+
* onSuccess: () => {
|
|
94
|
+
* toast.success('Submitted!')
|
|
95
|
+
* router.push('/success')
|
|
96
|
+
* },
|
|
97
|
+
* }
|
|
98
|
+
* )
|
|
99
|
+
*
|
|
100
|
+
* const handleSubmit = () => submit(new FormData(formRef.value))
|
|
101
|
+
* ```
|
|
102
|
+
*/
|
|
103
|
+
/**
|
|
104
|
+
* Wraps an async function with reactive loading, error, and success state plus optional auto-execute.
|
|
105
|
+
*
|
|
106
|
+
* @deprecated Unused by the MINT platform and scheduled for removal in MINT 1.3; use `useRequestSyncState()` instead.
|
|
107
|
+
*/
|
|
108
|
+
export declare function useAsync<T>(asyncFn: (...args: unknown[]) => Promise<T>, options?: UseAsyncOptions<T>): UseAsyncReturn<T>;
|
|
109
|
+
/**
|
|
110
|
+
* Create a batch of async operations that can be executed in parallel.
|
|
111
|
+
*
|
|
112
|
+
* @example
|
|
113
|
+
* ```typescript
|
|
114
|
+
* const { results, isLoading, execute } = useAsyncBatch([
|
|
115
|
+
* () => fetchUser(userId),
|
|
116
|
+
* () => fetchPosts(userId),
|
|
117
|
+
* () => fetchComments(userId),
|
|
118
|
+
* ])
|
|
119
|
+
*
|
|
120
|
+
* await execute()
|
|
121
|
+
* // results.value = [user, posts, comments]
|
|
122
|
+
* ```
|
|
123
|
+
*/
|
|
124
|
+
export declare function useAsyncBatch<T extends readonly (() => Promise<unknown>)[]>(asyncFns: T): {
|
|
125
|
+
results: Ref<{
|
|
126
|
+
[K in keyof T]: Awaited<ReturnType<T[K]>> | null;
|
|
127
|
+
}>;
|
|
128
|
+
errors: Ref<(AsyncError | null)[]>;
|
|
129
|
+
isLoading: Ref<boolean>;
|
|
130
|
+
execute: () => Promise<void>;
|
|
131
|
+
reset: () => void;
|
|
132
|
+
};
|
|
@@ -41,5 +41,7 @@ export interface UseAuthReturn {
|
|
|
41
41
|
refreshToken: () => Promise<boolean>;
|
|
42
42
|
isRefreshing: Ref<boolean>;
|
|
43
43
|
}
|
|
44
|
+
/** @internal Reset module-level state — only for use in tests. */
|
|
45
|
+
export declare function _resetAuthStateForTesting(): void;
|
|
44
46
|
/** Manages authentication state with login/logout/register and automatic JWT token refresh. */
|
|
45
47
|
export declare function useAuth(): UseAuthReturn;
|
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
import { AutoGroupResult, ClassDisposition, ClassSchema, ColumnRole, InputMode, MergeSuggestion, NumericBinning, ParsedCsvData, SampleClass, SchemaFingerprint, ValueOps } from '../types/auto-group';
|
|
1
|
+
import { AutoGroupResult, ClassDisposition, ClassSchema, ColumnInfo, ColumnRole, InputMode, MergeSuggestion, NumericBinning, OutlierAction, OutlierInfo, ParsedCsvData, SampleClass, SchemaFingerprint, ValueOps } from '../types/auto-group';
|
|
2
|
+
import { TemplateOptions } from './autoGroup';
|
|
2
3
|
export { DEFAULT_COLORS } from './autoGroup';
|
|
3
4
|
type ParsedExperimentCsvData = ParsedCsvData & {
|
|
4
5
|
sampleTypeHints: (string | undefined)[];
|
|
@@ -42,6 +43,8 @@ export declare function useAutoGroup(): {
|
|
|
42
43
|
schemas: import('vue').Ref<Record<string, ClassSchema>, Record<string, ClassSchema>>;
|
|
43
44
|
activeClassKey: import('vue').Ref<string, string>;
|
|
44
45
|
delimiter: import('vue').Ref<"-" | "." | "_", "-" | "." | "_">;
|
|
46
|
+
dominantFieldCount: import('vue').ComputedRef<number>;
|
|
47
|
+
minFieldCount: import('vue').ComputedRef<number>;
|
|
45
48
|
samples: import('vue').ComputedRef<string[]>;
|
|
46
49
|
tokenized: import('vue').Ref<string[][], string[][]>;
|
|
47
50
|
activeSchema: import('vue').ComputedRef<ClassSchema | null>;
|
|
@@ -52,6 +55,24 @@ export declare function useAutoGroup(): {
|
|
|
52
55
|
excludedSamples: import('vue').ComputedRef<string[]>;
|
|
53
56
|
result: import('vue').ComputedRef<AutoGroupResult>;
|
|
54
57
|
fingerprint: import('vue').ComputedRef<SchemaFingerprint>;
|
|
58
|
+
fields: import('vue').ComputedRef<ColumnInfo[]>;
|
|
59
|
+
fieldNames: import('vue').ComputedRef<Record<number, string>>;
|
|
60
|
+
enabledFields: import('vue').ComputedRef<Set<number>>;
|
|
61
|
+
effectiveColumns: import('vue').ComputedRef<ColumnInfo[]>;
|
|
62
|
+
hasOutliers: import('vue').ComputedRef<boolean>;
|
|
63
|
+
outliers: import('vue').Ref<{
|
|
64
|
+
sample: string;
|
|
65
|
+
index: number;
|
|
66
|
+
fieldCount: number;
|
|
67
|
+
action: OutlierAction;
|
|
68
|
+
}[], OutlierInfo[] | {
|
|
69
|
+
sample: string;
|
|
70
|
+
index: number;
|
|
71
|
+
fieldCount: number;
|
|
72
|
+
action: OutlierAction;
|
|
73
|
+
}[]>;
|
|
74
|
+
conformingSamples: import('vue').ComputedRef<string[]>;
|
|
75
|
+
allSingletons: import('vue').ComputedRef<boolean>;
|
|
55
76
|
canDownloadTemplate: import('vue').ComputedRef<boolean>;
|
|
56
77
|
setClassDisposition: (key: string, disposition: ClassDisposition) => void;
|
|
57
78
|
setClassDispositions: (predicate: (c: SampleClass) => boolean, disposition: ClassDisposition) => void;
|
|
@@ -67,7 +88,15 @@ export declare function useAutoGroup(): {
|
|
|
67
88
|
loadFingerprint: (fp: SchemaFingerprint) => void;
|
|
68
89
|
parseInput: () => void;
|
|
69
90
|
downloadTemplate: (mode?: "blank" | "prefilled", format?: "csv" | "tsv") => void;
|
|
91
|
+
composeTemplateForTest: (opts: Pick<TemplateOptions, "mode" | "format">) => {
|
|
92
|
+
content: string;
|
|
93
|
+
filename: string;
|
|
94
|
+
};
|
|
70
95
|
loadExperimentData: (rawData: Record<string, unknown>, options?: LoadExperimentDataOptions) => boolean;
|
|
71
96
|
reset: () => void;
|
|
97
|
+
setOutlierAction: (_: number, __: OutlierAction) => void;
|
|
98
|
+
setAllOutlierActions: (__: OutlierAction) => void;
|
|
99
|
+
toggleField: (index: number) => void;
|
|
100
|
+
renameField: (index: number, name: string) => void;
|
|
72
101
|
};
|
|
73
102
|
export declare function extractSamplesFromDesignData(rawData: Record<string, unknown>, options?: LoadExperimentDataOptions): ParsedExperimentCsvData | null;
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import { Ref } from 'vue';
|
|
2
|
+
import { useAutoGroup } from './useAutoGroup';
|
|
3
|
+
import { UseApiReturn } from './useApi';
|
|
4
|
+
import { WizardStep } from '../types/components';
|
|
5
|
+
type AutoGroupController = ReturnType<typeof useAutoGroup>;
|
|
6
|
+
type ReadableRef<T> = Readonly<Ref<T>>;
|
|
7
|
+
type AutoGroupApi = Pick<UseApiReturn, 'get'>;
|
|
8
|
+
export interface UseAutoGroupInputSourcesOptions {
|
|
9
|
+
autoGroup: AutoGroupController;
|
|
10
|
+
samples: ReadableRef<readonly string[]>;
|
|
11
|
+
experimentId: ReadableRef<number | undefined>;
|
|
12
|
+
designData: ReadableRef<Record<string, unknown> | undefined>;
|
|
13
|
+
currentStep: Ref<number>;
|
|
14
|
+
dynamicSteps: ReadableRef<readonly WizardStep[]>;
|
|
15
|
+
api?: AutoGroupApi;
|
|
16
|
+
}
|
|
17
|
+
/** Manages AutoGroupModal input sources: pasted samples, CSV/TSV files, and experiment metadata. */
|
|
18
|
+
export declare function useAutoGroupInputSources(options: UseAutoGroupInputSourcesOptions): {
|
|
19
|
+
isDragOver: Ref<boolean, boolean>;
|
|
20
|
+
csvFileName: Ref<string, string>;
|
|
21
|
+
experimentLoading: Ref<boolean, boolean>;
|
|
22
|
+
experimentError: Ref<string | null, string | null>;
|
|
23
|
+
csvError: Ref<string | null, string | null>;
|
|
24
|
+
experimentFieldNames: import('vue').ComputedRef<string[]>;
|
|
25
|
+
initializeInputSources: () => Promise<void>;
|
|
26
|
+
fetchExperimentData: () => Promise<void>;
|
|
27
|
+
handleFileDrop: (event: DragEvent) => void;
|
|
28
|
+
handleFileInput: (event: Event) => void;
|
|
29
|
+
processFile: (file: File) => Promise<void>;
|
|
30
|
+
clearCsvFile: () => void;
|
|
31
|
+
};
|
|
32
|
+
export {};
|