@morscherlab/mint-sdk 1.2.0-beta.3 → 1.2.0-beta.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +8 -2
- package/dist/EmptyState-p90quq8Z.js +2 -0
- package/dist/EmptyState-p90quq8Z.js.map +1 -0
- package/dist/{ExperimentPopover-Bn6PIGHE.js → ExperimentPopover-tLwJ7XF4.js} +10 -5
- package/dist/ExperimentPopover-tLwJ7XF4.js.map +1 -0
- package/dist/{ExperimentSelectorModal-DGhrJSSV.js → ExperimentSelectorModal-B6P2msT4.js} +11 -6
- package/dist/ExperimentSelectorModal-B6P2msT4.js.map +1 -0
- package/dist/{SettingsModal-wF2btHu6.js → SettingsModal-CkNM8qAI.js} +12 -7
- package/dist/SettingsModal-CkNM8qAI.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.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/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/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/AuditTrail.vue.d.ts +38 -0
- package/dist/components/AutoGroupModal.vue.d.ts +1 -1
- package/dist/components/BioTemplateExperimentWorkspaceView.vue.d.ts +1 -1
- package/dist/components/ColorSlider.vue.d.ts +34 -0
- package/dist/components/DoseDesignWorkspaceView.vue.d.ts +149 -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/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/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 +9 -0
- package/dist/components/index.js +6 -6
- package/dist/{components-DpyzaeIc.js → components-MGNL6tRn.js} +3268 -1353
- package/dist/components-MGNL6tRn.js.map +1 -0
- package/dist/composables/autoGroupConstants.d.ts +1 -0
- package/dist/composables/autoGroupGrouping.d.ts +3 -0
- package/dist/composables/index.d.ts +10 -2
- package/dist/composables/index.js +9 -9
- package/dist/composables/useAnalysisArtifacts.d.ts +2 -0
- package/dist/composables/useAsync.d.ts +128 -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/useCommandHistory.d.ts +29 -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/usePluginClient.d.ts +4 -0
- package/dist/composables/usePluginConfig.d.ts +25 -0
- package/dist/composables/useRackEditor.d.ts +31 -0
- package/dist/composables/useResourceCrud.d.ts +40 -0
- package/dist/composables/useWellPainting.d.ts +35 -0
- package/dist/composables/useWellPlateAdapter.d.ts +36 -0
- package/dist/{composables-yz8bTkEV.js → composables-CKxOcvgh.js} +764 -59
- package/dist/composables-CKxOcvgh.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 +2 -0
- package/dist/experiment-utils-CLnzPPq5.js.map +1 -0
- package/dist/histoire.setup.d.ts +1 -0
- package/dist/index.js +18 -33
- 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 +2836 -270
- package/dist/tailwind.preset.js +2 -0
- package/dist/tailwind.preset.js.map +1 -0
- package/dist/templates/catalog.d.ts +4 -4
- package/dist/templates/index.js +2 -2
- package/dist/templates/presets.d.ts +2 -2
- package/dist/{templates-Pbxjdqlh.js → templates-BTJ9C9Kb.js} +22 -5
- package/dist/templates-BTJ9C9Kb.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/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-CXhxTul7.js} +104 -9
- package/dist/useControlSchema-CXhxTul7.js.map +1 -0
- package/dist/{useDropdownState-WIGW6Rr-.js → useDropdownState-DSb3BC3N.js} +2 -0
- package/dist/useDropdownState-DSb3BC3N.js.map +1 -0
- package/dist/{useExperimentSelector-DXqsZuSk.js → useExperimentSelector-D0pjj9WH.js} +3 -1
- package/dist/useExperimentSelector-D0pjj9WH.js.map +1 -0
- package/dist/{useFormBuilder-1so6QSQL.js → useFormBuilder-CuOFB3aP.js} +3 -1
- package/dist/useFormBuilder-CuOFB3aP.js.map +1 -0
- package/dist/{useProtocolTemplates-Cv0ca1AM.js → useProtocolTemplates-BWhQIWV5.js} +584 -47
- package/dist/useProtocolTemplates-BWhQIWV5.js.map +1 -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 +38 -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 +40 -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 +494 -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.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/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/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 +1772 -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 +133 -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 +328 -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 +82 -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 +350 -0
- package/src/components/BioTemplatePackWorkspaceView.story.vue +107 -0
- package/src/components/BioTemplatePackWorkspaceView.vue +184 -0
- package/src/components/BioTemplatePresetWorkspaceView.story.vue +163 -0
- package/src/components/BioTemplatePresetWorkspaceView.vue +408 -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 +324 -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 +381 -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 +262 -0
- package/src/components/DropdownButton.story.vue +102 -0
- package/src/components/DropdownButton.vue +163 -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 +169 -0
- package/src/components/PluginWorkspaceView.shell.ts +67 -0
- package/src/components/PluginWorkspaceView.story.vue +341 -0
- package/src/components/PluginWorkspaceView.vue +395 -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/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 +139 -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 +230 -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 +182 -0
- package/src/composables/formBuilderRegistry.ts +81 -0
- package/src/composables/formBuilderSchema.ts +153 -0
- package/src/composables/index.ts +530 -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/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 +323 -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 +193 -0
- package/src/composables/useBioTemplatePresetWorkspace.ts +326 -0
- package/src/composables/useBioTemplateWorkspace.ts +141 -0
- package/src/composables/useCalendarGrid.ts +140 -0
- package/src/composables/useChemicalFormula.ts +275 -0
- package/src/composables/useCommandHistory.ts +113 -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/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/useMobileSupportGate.ts +80 -0
- package/src/composables/useOptimisticMutation.ts +107 -0
- package/src/composables/usePasskey.ts +216 -0
- package/src/composables/usePlatformContext.ts +299 -0
- package/src/composables/usePluginClient.ts +968 -0
- package/src/composables/usePluginConfig.ts +250 -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 +245 -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 +187 -0
- package/src/composables/useWellPlateAdapter.ts +147 -0
- package/src/composables/useWellPlateEditor.ts +425 -0
- package/src/composables/useWellPlateValidation.ts +85 -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 +67 -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/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 +93 -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 +57 -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 +69 -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 +87 -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 +207 -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 +52 -0
- package/src/utils/items.ts +28 -0
- package/src/utils/options.ts +23 -0
- package/src/utils/pluginIcon.ts +190 -0
- package/src/utils/rack.ts +209 -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;
|
|
@@ -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,5 @@ 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';
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import { a as SORT_OPTIONS, c as formatExperimentDate, d as resolveExperimentCode, i as EXPERIMENT_STATUS_VARIANT_MAP, l as formatExperimentStatus, n as EXPERIMENT_STATUS_LABELS, o as datePresetToISO, p as useEventListener, r as EXPERIMENT_STATUS_OPTIONS, s as experimentIdFromRoute, t as DATE_PRESET_OPTIONS, u as getExperimentStatusVariant } from "../experiment-utils-CLnzPPq5.js";
|
|
2
2
|
import { r as useRequestSyncState } from "../EmptyState-p90quq8Z.js";
|
|
3
|
-
import { A as useConcentrationUnits, C as controlsToViewIds, D as getTypeDefault, E as getFieldRegistryEntry, F as ATOMIC_WEIGHTS, G as createGeneratedAnalysisTransport, I as useChemicalFormula, K as useGeneratedAnalysis, N as useSequenceUtils, S as controlsToTopBarSettingsConfig, T as getDefaultControlView, W as resolveCurrentPluginId, _ as controlsToFormSchema, _t as
|
|
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 };
|
|
3
|
+
import { A as useConcentrationUnits, C as controlsToViewIds, Ct as useTimeUtils, D as getTypeDefault, Dt as useSelectionLimit, E as getFieldRegistryEntry, Et as useListSelection, F as ATOMIC_WEIGHTS, G as createGeneratedAnalysisTransport, I as useChemicalFormula, K as useGeneratedAnalysis, N as useSequenceUtils, S as controlsToTopBarSettingsConfig, St as toMinutes, T as getDefaultControlView, W as resolveCurrentPluginId, _ as controlsToFormSchema, _t as generateTimeSlots, a as defineDoseCalculatorControlProps, b as controlsToSettingsSchema, bt as rangesOverlap, c as defineWellPlateDoseComponentBindings, ct as addMinutes, d as defineControlModel, dt as findAvailableSlots, ft as findNearestTimeSlotIndex, gt as fromMinutes, h as controlValuesToComponentProps, ht as formatTimeSlot, i as useControlSchema, l as defineWellPlateDoseControlProps, lt as compareTime, m as controlValuesToComponentBindingsById, mt as formatTime, n as defineControls, o as defineDoseDesignControlModel, p as controlValuesToComponentBindings, pt as formatDuration, q as usePluginJobs, r as getControlDefaults, s as defineWellPlateControlProps, t as defineControlComponentBindings, u as useControlWorkspace, ut as durationMinutes, v as controlsToSectionFormSchema, vt as isTimeInRange, w as controlsToViewItems, x as controlsToSidebarPanels, xt as snapToSlot, y as controlsToSectionFormSchemas, yt as parseTime, z as useAnalysisArtifacts } from "../useControlSchema-CXhxTul7.js";
|
|
4
|
+
import { $ as useToast, A as useFileImport, B as useDoseCalculator, D as detectDelimiter, F as extractSampleNamesFromDesignData, G as useMobileSupportGate, H as useJobsStatusTray, I as extractSampleOptionsFromDesignData, J as getInjectedFrontendRevision, K as APP_EXPERIMENT_KEY, L as unwrapExperimentDesignData, M as extractSamplesFromDesignData, N as useAutoGroup, O as parseDelimitedText, Q as useTheme, R as DEFAULT_COLORS, U as usePluginJobCenter, V as combinePluginJobSources, W as DEFAULT_MOBILE_VIEWPORT_QUERY, X as getPresenceClientId, Y as useRuntimeAlignment, Z as usePresenceHeartbeat, _ as useScheduleDrag, a as useReagentSeries, b as useExpansionSet, c as useBioTemplatePresetWorkspace, d as getBioTemplateComponentProps, et as candidateMatchesSearch, f as toBioTemplateComponentPropsByComponent, g as useExperimentSave, h as useTemplateCollection, i as generateDilutionSeries, it as useSortedItems, j as validateImportFile, k as readFileAsText, l as useBioTemplatePackWorkspace, m as useBioTemplateControls, n as DEFAULT_PRESETS, nt as useTextSearch, o as useGroupAssignment, p as useBioTemplateComponents, q as useAppExperiment, r as DEFAULT_UNITS, rt as compareSortValues, s as useRackEditor, t as useProtocolTemplates, tt as normalizeSearchQuery, u as useBioTemplateWorkspace, v as useExperimentSamples, x as useSampleGroups, y as useExperimentData, z as useWellPlateEditor } from "../useProtocolTemplates-BWhQIWV5.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-CuOFB3aP.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-BTJ9C9Kb.js";
|
|
9
|
+
import { n as useDebouncedWatch, t as useExperimentSelector } from "../useExperimentSelector-D0pjj9WH.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-CKxOcvgh.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, useForm, useFormBuilder, useGeneratedAnalysis, useGroupAssignment, useJobsStatusTray, useListSelection, useMobileSupportGate, useOptimisticMutation, usePasskey, usePlatformContext, usePluginClient, usePluginConfig, usePluginEventStream, usePluginJobCenter, usePluginJobs, usePluginSettings, usePresenceHeartbeat, useProtocolTemplates, useRackEditor, useReagentSeries, useRequestSyncState, useResourceCrud, useRuntimeAlignment, useSampleGroups, useScheduleDrag, useSelectionLimit, useSequenceUtils, useSortedItems, useTemplateCollection, useTextSearch, useTheme, useTimeUtils, useToast, useWellPainting, useWellPlateAdapter, useWellPlateEditor, useWellPlateValidation, validateImportFile, wellIdToCoordinate, wellIdsInRectangle };
|
|
@@ -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,128 @@
|
|
|
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
|
+
/** Wraps an async function with reactive loading, error, and success state plus optional auto-execute. */
|
|
104
|
+
export declare function useAsync<T>(asyncFn: (...args: unknown[]) => Promise<T>, options?: UseAsyncOptions<T>): UseAsyncReturn<T>;
|
|
105
|
+
/**
|
|
106
|
+
* Create a batch of async operations that can be executed in parallel.
|
|
107
|
+
*
|
|
108
|
+
* @example
|
|
109
|
+
* ```typescript
|
|
110
|
+
* const { results, isLoading, execute } = useAsyncBatch([
|
|
111
|
+
* () => fetchUser(userId),
|
|
112
|
+
* () => fetchPosts(userId),
|
|
113
|
+
* () => fetchComments(userId),
|
|
114
|
+
* ])
|
|
115
|
+
*
|
|
116
|
+
* await execute()
|
|
117
|
+
* // results.value = [user, posts, comments]
|
|
118
|
+
* ```
|
|
119
|
+
*/
|
|
120
|
+
export declare function useAsyncBatch<T extends readonly (() => Promise<unknown>)[]>(asyncFns: T): {
|
|
121
|
+
results: Ref<{
|
|
122
|
+
[K in keyof T]: Awaited<ReturnType<T[K]>> | null;
|
|
123
|
+
}>;
|
|
124
|
+
errors: Ref<(AsyncError | null)[]>;
|
|
125
|
+
isLoading: Ref<boolean>;
|
|
126
|
+
execute: () => Promise<void>;
|
|
127
|
+
reset: () => void;
|
|
128
|
+
};
|
|
@@ -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 {};
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { ComputedRef, Ref } from 'vue';
|
|
2
|
+
export type CommandHistoryResult = void | Promise<void>;
|
|
3
|
+
export interface CommandHistoryCommand {
|
|
4
|
+
execute: () => CommandHistoryResult;
|
|
5
|
+
undo: () => CommandHistoryResult;
|
|
6
|
+
redo?: () => CommandHistoryResult;
|
|
7
|
+
description?: string;
|
|
8
|
+
}
|
|
9
|
+
export interface CommandHistoryExecuteOptions {
|
|
10
|
+
skipExecute?: boolean;
|
|
11
|
+
}
|
|
12
|
+
export interface UseCommandHistoryOptions {
|
|
13
|
+
maxDepth?: number;
|
|
14
|
+
}
|
|
15
|
+
export interface UseCommandHistoryReturn<TCommand extends CommandHistoryCommand = CommandHistoryCommand> {
|
|
16
|
+
undoStack: Ref<TCommand[]>;
|
|
17
|
+
redoStack: Ref<TCommand[]>;
|
|
18
|
+
canUndo: ComputedRef<boolean>;
|
|
19
|
+
canRedo: ComputedRef<boolean>;
|
|
20
|
+
undoDescription: ComputedRef<string>;
|
|
21
|
+
redoDescription: ComputedRef<string>;
|
|
22
|
+
execute: (command: TCommand, options?: CommandHistoryExecuteOptions) => CommandHistoryResult;
|
|
23
|
+
push: (command: TCommand) => void;
|
|
24
|
+
undo: () => CommandHistoryResult;
|
|
25
|
+
redo: () => CommandHistoryResult;
|
|
26
|
+
clear: () => void;
|
|
27
|
+
}
|
|
28
|
+
/** Generic command-stack state for plugin editors with undo/redo controls. */
|
|
29
|
+
export declare function useCommandHistory<TCommand extends CommandHistoryCommand = CommandHistoryCommand>(options?: UseCommandHistoryOptions): UseCommandHistoryReturn<TCommand>;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { ComputedRef, Ref, ShallowRef } from 'vue';
|
|
2
|
-
import { PluginJobCenterSource } from './useJobsStatusTray';
|
|
2
|
+
import { JobsStatusTrayAdapter, PluginJobCenterSource } from './useJobsStatusTray';
|
|
3
3
|
import { GeneratedAnalysisJob, GeneratedAnalysisResult, GeneratedSession, GeneratedAnalysisManifest, PluginJobPathInput, PluginJobPathUpload, PluginJobStagedPartInput, PluginJobStagedPartUploadResult, PluginJobStaging, PluginJobStagingPagination } from '../types/generated-ui';
|
|
4
4
|
export type GeneratedAnalysisTransport = (input: RequestInfo | URL, init?: RequestInit) => Promise<Response>;
|
|
5
5
|
export interface GeneratedAnalysisTransportOptions {
|
|
@@ -34,6 +34,7 @@ export interface UsePluginJobsReturn extends PluginJobCenterSource {
|
|
|
34
34
|
error: ShallowRef<string | null>;
|
|
35
35
|
status: ShallowRef<'idle' | 'initializing' | 'ready' | 'paused' | 'error' | 'disposed'>;
|
|
36
36
|
initialize: () => Promise<void>;
|
|
37
|
+
ready: () => Promise<void>;
|
|
37
38
|
uploadPath: (input: PluginJobPathInput, definitionId?: string) => Promise<PluginJobPathUpload>;
|
|
38
39
|
uploadStagedPart: <Metadata>(input: PluginJobStagedPartInput<Metadata>) => Promise<PluginJobStagedPartUploadResult<Metadata>>;
|
|
39
40
|
getJobStaging: <Metadata = unknown>(job: GeneratedAnalysisJob | string, pagination?: PluginJobStagingPagination) => Promise<PluginJobStaging<Metadata>>;
|
|
@@ -42,6 +43,7 @@ export interface UsePluginJobsReturn extends PluginJobCenterSource {
|
|
|
42
43
|
loadResult: (job: GeneratedAnalysisJob) => Promise<GeneratedAnalysisResult | null>;
|
|
43
44
|
resultForJob: (jobId: string) => GeneratedAnalysisResult | null;
|
|
44
45
|
refreshJobs: () => Promise<GeneratedAnalysisJob[]>;
|
|
46
|
+
refresh: () => Promise<GeneratedAnalysisJob[]>;
|
|
45
47
|
getJob: (jobId: string, options?: PluginJobRequestOptions) => Promise<GeneratedAnalysisJob>;
|
|
46
48
|
waitForJob: (job: GeneratedAnalysisJob | string, options?: PluginJobWaitOptions) => Promise<GeneratedAnalysisJob>;
|
|
47
49
|
jobsFor: (definitionId: string) => GeneratedAnalysisJob[];
|
|
@@ -51,6 +53,8 @@ export interface UsePluginJobsReturn extends PluginJobCenterSource {
|
|
|
51
53
|
pause: () => void;
|
|
52
54
|
resume: () => void;
|
|
53
55
|
dispose: () => void;
|
|
56
|
+
/** @deprecated Pass the runtime itself to SDK job UI as its source. */
|
|
57
|
+
jobsAdapter: JobsStatusTrayAdapter;
|
|
54
58
|
}
|
|
55
59
|
export type UseGeneratedAnalysisReturn = UsePluginJobsReturn;
|
|
56
60
|
export declare function createGeneratedAnalysisTransport(options?: GeneratedAnalysisTransportOptions): GeneratedAnalysisTransport;
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import { ComputedRef, Ref } from 'vue';
|
|
2
|
+
import { GroupItem } from '../types';
|
|
3
|
+
export type GroupAssignmentZone = 'zone1' | 'zone2';
|
|
4
|
+
export type GroupAssignmentSource<T> = T | Ref<T> | ComputedRef<T> | (() => T);
|
|
5
|
+
export interface GroupAssignmentState {
|
|
6
|
+
group1: string[];
|
|
7
|
+
group2: string[];
|
|
8
|
+
}
|
|
9
|
+
export interface UseGroupAssignmentOptions {
|
|
10
|
+
groups: GroupAssignmentSource<readonly GroupItem[]>;
|
|
11
|
+
group1: GroupAssignmentSource<readonly string[]>;
|
|
12
|
+
group2: GroupAssignmentSource<readonly string[]>;
|
|
13
|
+
label1?: GroupAssignmentSource<string | null | undefined>;
|
|
14
|
+
label2?: GroupAssignmentSource<string | null | undefined>;
|
|
15
|
+
minPerGroup?: GroupAssignmentSource<number | null | undefined>;
|
|
16
|
+
}
|
|
17
|
+
export interface UseGroupAssignmentReturn {
|
|
18
|
+
unassignedGroups: ComputedRef<GroupItem[]>;
|
|
19
|
+
zone1Groups: ComputedRef<GroupItem[]>;
|
|
20
|
+
zone2Groups: ComputedRef<GroupItem[]>;
|
|
21
|
+
zone1Count: ComputedRef<number>;
|
|
22
|
+
zone2Count: ComputedRef<number>;
|
|
23
|
+
isValid: ComputedRef<boolean>;
|
|
24
|
+
validationMessage: ComputedRef<string | null>;
|
|
25
|
+
getZoneForGroup: (groupName: string) => GroupAssignmentZone | null;
|
|
26
|
+
assignToZone: (groupName: string, zone: GroupAssignmentZone) => GroupAssignmentState;
|
|
27
|
+
removeFromZone: (groupName: string, zone: GroupAssignmentZone) => GroupAssignmentState;
|
|
28
|
+
clearAll: () => GroupAssignmentState;
|
|
29
|
+
}
|
|
30
|
+
/** Shared two-zone group assignment model for control/treatment style workflows. */
|
|
31
|
+
export declare function useGroupAssignment(options: UseGroupAssignmentOptions): UseGroupAssignmentReturn;
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { ComputedRef, MaybeRefOrGetter, Ref, ShallowRef } from 'vue';
|
|
2
|
-
import { JobState } from '../types/jobs';
|
|
2
|
+
import { JobListPayload, JobState, JobStateInput, JobStreamData } from '../types/jobs';
|
|
3
|
+
import { UsePluginEventStreamReturn } from './usePluginClient';
|
|
3
4
|
export type JobsStatusTrayTab = 'active' | 'history';
|
|
4
5
|
/**
|
|
5
6
|
* The canonical owner of a collection of plugin jobs.
|
|
@@ -8,14 +9,46 @@ export type JobsStatusTrayTab = 'active' | 'history';
|
|
|
8
9
|
* mutations. This keeps components and consumers on one reactive job graph.
|
|
9
10
|
*/
|
|
10
11
|
export interface PluginJobCenterSource {
|
|
11
|
-
jobs: MaybeRefOrGetter<readonly
|
|
12
|
-
refreshJobs?: () => Promise<readonly
|
|
13
|
-
cancelJob?: (jobId: string) => Promise<
|
|
12
|
+
jobs: MaybeRefOrGetter<readonly JobStateInput[]>;
|
|
13
|
+
refreshJobs?: () => Promise<JobListPayload | readonly JobStateInput[] | void>;
|
|
14
|
+
cancelJob?: (jobId: string) => Promise<JobStateInput | void>;
|
|
14
15
|
deleteJob?: (jobId: string) => Promise<boolean | void>;
|
|
15
16
|
clearFinishedJobs?: () => Promise<number | void>;
|
|
17
|
+
dispose?: () => void;
|
|
18
|
+
}
|
|
19
|
+
export interface CombinedPluginJobCenterSource extends PluginJobCenterSource {
|
|
20
|
+
jobs: ComputedRef<readonly JobStateInput[]>;
|
|
21
|
+
}
|
|
22
|
+
/**
|
|
23
|
+
* Combines independent job runtimes without copying their reactive state.
|
|
24
|
+
*
|
|
25
|
+
* Job ids must be globally unique across the sources. A duplicate id throws
|
|
26
|
+
* when jobs are read or an id-routed action is requested, rather than silently
|
|
27
|
+
* dispatching a mutation to the wrong owner.
|
|
28
|
+
*/
|
|
29
|
+
export declare function combinePluginJobSources(sources: readonly PluginJobCenterSource[]): CombinedPluginJobCenterSource;
|
|
30
|
+
/** @deprecated Prefer a {@link PluginJobCenterSource}. */
|
|
31
|
+
export interface JobsStatusTrayAdapter {
|
|
32
|
+
listJobs?: () => Promise<JobListPayload | readonly JobStateInput[]>;
|
|
33
|
+
cancelJob?: (job: JobState) => Promise<JobStateInput | void>;
|
|
34
|
+
deleteJob?: (job: JobState) => Promise<boolean | void>;
|
|
35
|
+
clearFinishedJobs?: (jobs: readonly JobState[]) => Promise<number | void>;
|
|
16
36
|
}
|
|
17
37
|
export interface UsePluginJobCenterOptions {
|
|
18
38
|
source?: MaybeRefOrGetter<PluginJobCenterSource | undefined>;
|
|
39
|
+
/** @deprecated Pass a source with its canonical jobs ref. */
|
|
40
|
+
jobs?: MaybeRefOrGetter<readonly JobStateInput[] | undefined>;
|
|
41
|
+
/** @deprecated Pass source actions instead. */
|
|
42
|
+
adapter?: MaybeRefOrGetter<JobsStatusTrayAdapter | undefined>;
|
|
43
|
+
/** @deprecated Event handling belongs to the source runtime. */
|
|
44
|
+
eventStream?: MaybeRefOrGetter<UsePluginEventStreamReturn<JobStreamData> | undefined>;
|
|
45
|
+
loadOnMount?: boolean;
|
|
46
|
+
}
|
|
47
|
+
export interface UseJobsStatusTrayOptions extends UsePluginJobCenterOptions {
|
|
48
|
+
}
|
|
49
|
+
export interface JobStreamMessage {
|
|
50
|
+
event: string;
|
|
51
|
+
data: JobStreamData;
|
|
19
52
|
}
|
|
20
53
|
export interface UsePluginJobCenterReturn {
|
|
21
54
|
jobs: ComputedRef<JobState[]>;
|
|
@@ -36,11 +69,13 @@ export interface UsePluginJobCenterReturn {
|
|
|
36
69
|
close: () => void;
|
|
37
70
|
toggle: () => void;
|
|
38
71
|
refresh: () => Promise<boolean>;
|
|
72
|
+
applyStreamMessage: (message: JobStreamMessage) => void;
|
|
39
73
|
cancelJob: (job: JobState) => Promise<boolean>;
|
|
40
74
|
deleteJob: (job: JobState) => Promise<boolean>;
|
|
41
75
|
clearFinished: () => Promise<boolean>;
|
|
42
76
|
isPending: (job: JobState) => boolean;
|
|
43
77
|
}
|
|
78
|
+
export type UseJobsStatusTrayReturn = UsePluginJobCenterReturn;
|
|
44
79
|
/**
|
|
45
80
|
* Headless controller for plugin job presentation and actions.
|
|
46
81
|
*
|
|
@@ -48,3 +83,5 @@ export interface UsePluginJobCenterReturn {
|
|
|
48
83
|
* source. The controller never mirrors source jobs into another ref.
|
|
49
84
|
*/
|
|
50
85
|
export declare function usePluginJobCenter(options?: UsePluginJobCenterOptions): UsePluginJobCenterReturn;
|
|
86
|
+
/** @deprecated Use `usePluginJobCenter()` for the plugin job-center controller. */
|
|
87
|
+
export declare function useJobsStatusTray(options?: UseJobsStatusTrayOptions): UseJobsStatusTrayReturn;
|
|
@@ -133,6 +133,8 @@ export interface UsePluginSettingsReturn<TSettings = Record<string, unknown>> {
|
|
|
133
133
|
settings: ComputedRef<PluginSettingsValues<TSettings>>;
|
|
134
134
|
/** Editable settings values for SettingsModal. */
|
|
135
135
|
values: Ref<PluginSettingsValues<TSettings>>;
|
|
136
|
+
/** Alias for values, kept for callers that think in platform config terms. */
|
|
137
|
+
config: Ref<PluginSettingsValues<TSettings>>;
|
|
136
138
|
/** Ready-to-pass AppTopBar/PluginWorkspaceView settingsConfig. */
|
|
137
139
|
settingsConfig: ComputedRef<TopBarSettingsConfig>;
|
|
138
140
|
isLoading: Ref<boolean>;
|
|
@@ -207,6 +209,8 @@ export declare function createPluginClient<TClient extends object = GeneratedPlu
|
|
|
207
209
|
export declare function uploadPluginEndpoint<TResponse = unknown>(contract: PluginContract, endpoint: PluginEndpointDefinition, payload?: unknown, options?: PluginEndpointRequestOptions): Promise<TResponse>;
|
|
208
210
|
/** Fetch a generated plugin endpoint as a Blob and optionally trigger a browser download. */
|
|
209
211
|
export declare function downloadPluginEndpoint(contract: PluginContract, endpoint: PluginEndpointDefinition, payload?: unknown, options?: DownloadPluginEndpointOptions): Promise<Blob>;
|
|
212
|
+
/** @deprecated Use `useGeneratedPluginClient()` for generated clients. */
|
|
213
|
+
export declare function usePluginClient<TClient>(client: TClient): TClient;
|
|
210
214
|
/** Load, edit, and persist plugin settings from platform config or the plugin-local settings router. */
|
|
211
215
|
export declare function usePluginSettings<TSettings = Record<string, unknown>>(options?: UsePluginSettingsOptions | string): UsePluginSettingsReturn<TSettings>;
|
|
212
216
|
/** Consume a generated plugin SSE endpoint with auth headers, reconnect, and teardown. */
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { Ref, ComputedRef } from 'vue';
|
|
2
|
+
export interface UsePluginConfigReturn {
|
|
3
|
+
/** Editable plugin configuration values. */
|
|
4
|
+
config: Ref<Record<string, unknown>>;
|
|
5
|
+
/** Whether the config is currently loading. */
|
|
6
|
+
isLoading: Ref<boolean>;
|
|
7
|
+
/** Whether the config is currently saving. */
|
|
8
|
+
isSaving: Ref<boolean>;
|
|
9
|
+
/** Error message from the last failed operation, or null. */
|
|
10
|
+
error: Ref<string | null>;
|
|
11
|
+
/** Timestamp of the last successful load, or null. */
|
|
12
|
+
lastLoadedAt: Ref<Date | null>;
|
|
13
|
+
/** Timestamp of the last successful save, or null. */
|
|
14
|
+
lastSavedAt: Ref<Date | null>;
|
|
15
|
+
/** Whether local config differs from the last loaded or saved snapshot. */
|
|
16
|
+
isDirty: ComputedRef<boolean>;
|
|
17
|
+
/** Load plugin configuration from the platform. */
|
|
18
|
+
load: () => Promise<void>;
|
|
19
|
+
/** Save plugin configuration to the platform. */
|
|
20
|
+
save: () => Promise<boolean>;
|
|
21
|
+
/** Restore the last loaded or saved configuration snapshot. */
|
|
22
|
+
reset: () => void;
|
|
23
|
+
}
|
|
24
|
+
/** @deprecated Use `usePluginSettings()` for typed plugin settings. */
|
|
25
|
+
export declare function usePluginConfig(pluginName?: string): UsePluginConfigReturn;
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import { Ref, ComputedRef } from 'vue';
|
|
2
|
+
import { Rack, WellPlateFormat, Well } from '../types';
|
|
3
|
+
export interface UseRackEditorOptions {
|
|
4
|
+
defaultFormat?: WellPlateFormat;
|
|
5
|
+
defaultInjectionVolume?: number;
|
|
6
|
+
maxRacks?: number;
|
|
7
|
+
minRacks?: number;
|
|
8
|
+
}
|
|
9
|
+
export interface UseRackEditorReturn {
|
|
10
|
+
racks: Ref<Rack[]>;
|
|
11
|
+
activeRack: ComputedRef<Rack | undefined>;
|
|
12
|
+
activeRackId: Ref<string>;
|
|
13
|
+
addRack(name?: string): Rack;
|
|
14
|
+
removeRack(rackId: string): void;
|
|
15
|
+
reorderRacks(fromIndex: number, toIndex: number): void;
|
|
16
|
+
updateRack(rackId: string, data: Partial<Rack>): void;
|
|
17
|
+
setActiveRack(rackId: string): void;
|
|
18
|
+
setWellData(rackId: string, wellId: string, data: Partial<Well>): void;
|
|
19
|
+
clearWell(rackId: string, wellId: string): void;
|
|
20
|
+
clearAllWells(rackId: string): void;
|
|
21
|
+
fillSeries(rackId: string, prefix?: string): void;
|
|
22
|
+
getAllWells(): Array<{
|
|
23
|
+
rackId: string;
|
|
24
|
+
wellId: string;
|
|
25
|
+
well: Partial<Well>;
|
|
26
|
+
}>;
|
|
27
|
+
totalSampleCount: ComputedRef<number>;
|
|
28
|
+
reset(): void;
|
|
29
|
+
}
|
|
30
|
+
/** Manages a set of sample racks with well-level assignment, series fill, and multi-rack reordering. */
|
|
31
|
+
export declare function useRackEditor(initialRacks?: Rack[], options?: UseRackEditorOptions): UseRackEditorReturn;
|