@morscherlab/mint-sdk 1.0.0-beta.2 → 1.0.0-beta.3
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 +218 -6
- package/dist/__tests__/components/ActionItem.test.d.ts +1 -0
- package/dist/__tests__/components/AppAvatarMenu.test.d.ts +1 -0
- package/dist/__tests__/components/AppPageSelector.test.d.ts +1 -0
- package/dist/__tests__/components/AppPillNav.test.d.ts +1 -0
- package/dist/__tests__/components/AppPluginSwitcher.test.d.ts +1 -0
- package/dist/__tests__/components/AppToastContainer.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/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/CalendarGridPanel.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/DatePicker.test.d.ts +1 -0
- package/dist/__tests__/components/DateTimePicker.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/FormBuilder.test.d.ts +1 -0
- package/dist/__tests__/components/FormCompatibility.test.d.ts +1 -0
- package/dist/__tests__/components/GroupAssigner.test.d.ts +1 -0
- package/dist/__tests__/components/GroupingModal.test.d.ts +1 -0
- package/dist/__tests__/components/MultiSelect.test.d.ts +1 -0
- package/dist/__tests__/components/ProtocolStepEditor.test.d.ts +1 -0
- package/dist/__tests__/components/ReagentList.test.d.ts +1 -0
- package/dist/__tests__/components/SampleHierarchyTree.test.d.ts +1 -0
- package/dist/__tests__/components/SampleSelector.test.d.ts +1 -0
- package/dist/__tests__/components/SegmentedControl.test.d.ts +1 -0
- package/dist/__tests__/components/SettingsButton.test.d.ts +1 -0
- package/dist/__tests__/components/SettingsModal.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__/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/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/useExpansionSet.test.d.ts +1 -0
- package/dist/__tests__/composables/useExperimentData.test.d.ts +1 -0
- package/dist/__tests__/composables/useExperimentSelector.test.d.ts +1 -0
- package/dist/__tests__/composables/useGroupAssignment.test.d.ts +1 -0
- package/dist/__tests__/composables/useListSelection.test.d.ts +1 -0
- package/dist/__tests__/composables/usePluginClient.test.d.ts +1 -0
- package/dist/__tests__/composables/usePluginConfig.test.d.ts +1 -0
- package/dist/__tests__/composables/useRequestSyncState.test.d.ts +1 -0
- package/dist/__tests__/composables/useSampleGroups.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__/docs/frontendDocsCatalog.test.d.ts +1 -0
- package/dist/__tests__/templates/templates.test.d.ts +1 -0
- package/dist/{auth-DsI0rQ7_.js → auth-QQj2kkze.js} +12 -5
- package/dist/auth-QQj2kkze.js.map +1 -0
- package/dist/components/ActionItem.vue.d.ts +32 -0
- package/dist/components/AppAvatarMenu.vue.d.ts +2 -7
- package/dist/components/AppPageSelector.vue.d.ts +3 -6
- package/dist/components/AppPillNav.vue.d.ts +2 -2
- package/dist/components/AppSidebar.vue.d.ts +56 -3
- package/dist/components/AppToastContainer.vue.d.ts +2 -0
- package/dist/components/AppTopBar.vue.d.ts +41 -10
- package/dist/components/BaseButton.vue.d.ts +1 -1
- package/dist/components/BaseCheckbox.vue.d.ts +1 -1
- package/dist/components/BaseInput.vue.d.ts +2 -2
- package/dist/components/BasePill.vue.d.ts +2 -2
- package/dist/components/BaseRadioGroup.vue.d.ts +3 -3
- package/dist/components/BaseSelect.vue.d.ts +3 -3
- package/dist/components/BaseTabs.vue.d.ts +2 -2
- package/dist/components/BaseTextarea.vue.d.ts +1 -1
- package/dist/components/BaseToggle.vue.d.ts +1 -1
- package/dist/components/BioTemplateExperimentWorkspaceView.vue.d.ts +117 -0
- package/dist/components/BioTemplatePackWorkspaceView.vue.d.ts +92 -0
- package/dist/components/BioTemplatePresetWorkspaceView.vue.d.ts +82 -0
- package/dist/components/BioTemplateRenderer.vue.d.ts +29 -0
- package/dist/components/Breadcrumb.vue.d.ts +2 -2
- package/dist/components/Calendar.vue.d.ts +1 -1
- package/dist/components/CalendarGridPanel.vue.d.ts +25 -0
- package/dist/components/CollapsibleCard.vue.d.ts +1 -1
- package/dist/components/ConcentrationInput.vue.d.ts +2 -2
- package/dist/components/ConfirmDialog.vue.d.ts +2 -2
- package/dist/components/ControlWorkspaceView.vue.d.ts +130 -0
- package/dist/components/DatePicker.vue.d.ts +1 -1
- package/dist/components/DateTimePicker.vue.d.ts +3 -3
- package/dist/components/Divider.vue.d.ts +1 -1
- package/dist/components/DropdownButton.vue.d.ts +3 -3
- package/dist/components/EmptyState.vue.d.ts +1 -2
- package/dist/components/ExperimentDataViewer.vue.d.ts +1 -1
- package/dist/components/ExperimentTimeline.vue.d.ts +2 -2
- package/dist/components/FileUploader.vue.d.ts +1 -1
- package/dist/components/FitPanel.vue.d.ts +1 -1
- package/dist/components/FormActions.vue.d.ts +4 -4
- package/dist/components/FormBuilder.vue.d.ts +22 -8
- package/dist/components/FormFieldRenderer.vue.d.ts +7 -10
- package/dist/components/FormSection.vue.d.ts +11 -24
- package/dist/components/FormulaInput.vue.d.ts +2 -2
- package/dist/components/MoleculeInput.vue.d.ts +2 -2
- package/dist/components/MultiSelect.vue.d.ts +3 -3
- package/dist/components/NumberInput.vue.d.ts +1 -1
- package/dist/components/ProgressBar.vue.d.ts +1 -1
- package/dist/components/ProtocolStepEditor.vue.d.ts +3 -1
- package/dist/components/RackEditor.vue.d.ts +2 -2
- package/dist/components/SampleLegend.vue.d.ts +2 -2
- package/dist/components/ScheduleCalendar.vue.d.ts +2 -2
- package/dist/components/SegmentedControl.vue.d.ts +2 -2
- package/dist/components/SequenceInput.vue.d.ts +3 -3
- package/dist/components/SettingsButton.vue.d.ts +2 -2
- package/dist/components/SettingsModal.vue.d.ts +13 -5
- package/dist/components/StatusIndicator.vue.d.ts +1 -1
- package/dist/components/TagsInput.vue.d.ts +3 -2
- package/dist/components/TimePicker.vue.d.ts +3 -3
- package/dist/components/TimeRangeInput.vue.d.ts +1 -1
- package/dist/components/UnitInput.vue.d.ts +2 -2
- package/dist/components/WellPlate.vue.d.ts +8 -8
- package/dist/components/index.d.ts +11 -1
- package/dist/components/index.js +3 -3
- package/dist/components/internal/FormFieldRendererInternal.vue.d.ts +31 -0
- package/dist/components/internal/FormSectionRenderer.vue.d.ts +43 -0
- package/dist/{components-_XqPEhP9.js → components-D_Sr0adg.js} +7290 -6518
- package/dist/components-D_Sr0adg.js.map +1 -0
- package/dist/composables/index.d.ts +21 -2
- package/dist/composables/index.js +4 -3
- package/dist/composables/platformContextHelpers.d.ts +14 -0
- package/dist/composables/useBioTemplateComponents.d.ts +20 -0
- package/dist/composables/useBioTemplateControls.d.ts +6 -0
- package/dist/composables/useBioTemplatePackWorkspace.d.ts +45 -0
- package/dist/composables/useBioTemplatePresetWorkspace.d.ts +74 -0
- package/dist/composables/useBioTemplateWorkspace.d.ts +50 -0
- package/dist/composables/useCalendarGrid.d.ts +26 -0
- package/dist/composables/useControlSchema.d.ts +321 -0
- package/dist/composables/useDebouncedWatch.d.ts +20 -0
- package/dist/composables/useDropdownState.d.ts +19 -0
- package/dist/composables/useEventListener.d.ts +13 -0
- package/dist/composables/useExpansionSet.d.ts +21 -0
- package/dist/composables/useExperimentData.d.ts +10 -0
- package/dist/composables/useExperimentSave.d.ts +31 -2
- package/dist/composables/useExperimentSelector.d.ts +20 -0
- package/dist/composables/useForm.d.ts +2 -0
- package/dist/composables/useGroupAssignment.d.ts +31 -0
- package/dist/composables/useListSelection.d.ts +35 -0
- package/dist/composables/usePlatformContext.d.ts +21 -3
- package/dist/composables/usePluginApi.d.ts +7 -14
- package/dist/composables/usePluginClient.d.ts +109 -0
- package/dist/composables/usePluginConfig.d.ts +12 -0
- package/dist/composables/useRequestSyncState.d.ts +34 -0
- package/dist/composables/useSampleGroups.d.ts +32 -0
- package/dist/composables/useSelectionLimit.d.ts +17 -0
- package/dist/composables/useSortedItems.d.ts +32 -0
- package/dist/composables/useTemplateCollection.d.ts +58 -0
- package/dist/composables/useTextSearch.d.ts +18 -0
- package/dist/composables/useTimeUtils.d.ts +8 -0
- package/dist/{composables-tiZqLu1M.js → composables-C3dpXQN5.js} +228 -146
- package/dist/composables-C3dpXQN5.js.map +1 -0
- package/dist/index.d.ts +12 -3
- package/dist/index.js +6 -5
- package/dist/install.d.ts +7 -2
- package/dist/install.js +2 -2
- package/dist/install.js.map +1 -1
- package/dist/stores/index.js +1 -1
- package/dist/stores/settings.d.ts +4 -1
- package/dist/styles.css +5235 -5977
- package/dist/templates/adapters.d.ts +43 -0
- package/dist/templates/builders.d.ts +63 -0
- package/dist/templates/catalog.d.ts +188 -0
- package/dist/templates/componentBindings.d.ts +58 -0
- package/dist/templates/controlSchemas.d.ts +25 -0
- package/dist/templates/index.d.ts +15 -0
- package/dist/templates/index.js +2 -0
- package/dist/templates/lookup.d.ts +4 -0
- package/dist/templates/packs.d.ts +18 -0
- package/dist/templates/presets.d.ts +90 -0
- package/dist/templates/types.d.ts +531 -0
- package/dist/templates-50NPjaxL.js +9333 -0
- package/dist/templates-50NPjaxL.js.map +1 -0
- package/dist/types/components.d.ts +26 -4
- package/dist/types/form-builder.d.ts +6 -8
- package/dist/types/index.d.ts +2 -2
- package/dist/types/platform.d.ts +7 -1
- package/dist/useScheduleDrag-D4oWdh41.js +4371 -0
- package/dist/useScheduleDrag-D4oWdh41.js.map +1 -0
- package/dist/utils/formModelSync.d.ts +5 -0
- package/dist/utils/items.d.ts +8 -0
- package/dist/utils/options.d.ts +6 -0
- package/dist/utils/pluginIcon.d.ts +9 -0
- package/package.json +7 -2
- package/src/__tests__/components/ActionItem.test.ts +99 -0
- package/src/__tests__/components/AppAvatarMenu.test.ts +27 -0
- package/src/__tests__/components/AppPageSelector.test.ts +134 -0
- package/src/__tests__/components/AppPillNav.test.ts +78 -0
- package/src/__tests__/components/AppPluginSwitcher.test.ts +44 -0
- package/src/__tests__/components/AppSidebar.test.ts +370 -0
- package/src/__tests__/components/AppToastContainer.test.ts +48 -0
- package/src/__tests__/components/AppTopBar.test.ts +383 -0
- package/src/__tests__/components/BaseRadioGroup.test.ts +25 -0
- package/src/__tests__/components/BaseSelect.test.ts +21 -0
- package/src/__tests__/components/BaseTabs.test.ts +25 -0
- package/src/__tests__/components/BatchProgressList.test.ts +52 -0
- package/src/__tests__/components/BioTemplateExperimentWorkspaceView.test.ts +153 -0
- package/src/__tests__/components/BioTemplatePackWorkspaceView.test.ts +161 -0
- package/src/__tests__/components/BioTemplatePresetWorkspaceView.test.ts +281 -0
- package/src/__tests__/components/BioTemplateRenderer.test.ts +71 -0
- package/src/__tests__/components/Breadcrumb.test.ts +23 -0
- package/src/__tests__/components/CalendarGridPanel.test.ts +36 -0
- package/src/__tests__/components/ConcentrationInput.test.ts +45 -0
- package/src/__tests__/components/ControlWorkspaceView.test.ts +1031 -0
- package/src/__tests__/components/DataFrame.test.ts +11 -0
- package/src/__tests__/components/DatePicker.test.ts +45 -0
- package/src/__tests__/components/DateTimePicker.test.ts +48 -0
- package/src/__tests__/components/DropdownButton.test.ts +23 -0
- package/src/__tests__/components/EmptyState.test.ts +23 -0
- package/src/__tests__/components/ExperimentPopover.test.ts +56 -0
- package/src/__tests__/components/FormBuilder.test.ts +296 -0
- package/src/__tests__/components/FormCompatibility.test.ts +94 -0
- package/src/__tests__/components/GroupAssigner.test.ts +30 -0
- package/src/__tests__/components/GroupingModal.test.ts +73 -0
- package/src/__tests__/components/MultiSelect.test.ts +48 -0
- package/src/__tests__/components/ProtocolStepEditor.test.ts +33 -0
- package/src/__tests__/components/ReagentList.test.ts +82 -0
- package/src/__tests__/components/SampleHierarchyTree.test.ts +53 -0
- package/src/__tests__/components/SampleSelector.test.ts +60 -0
- package/src/__tests__/components/SegmentedControl.test.ts +24 -0
- package/src/__tests__/components/SettingsButton.test.ts +44 -0
- package/src/__tests__/components/SettingsModal.test.ts +296 -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__/composables/useBioTemplatePackWorkspace.test.ts +122 -0
- package/src/__tests__/composables/useBioTemplatePresetWorkspace.test.ts +199 -0
- package/src/__tests__/composables/useBioTemplateWorkspace.test.ts +99 -0
- package/src/__tests__/composables/useCalendarGrid.test.ts +38 -0
- package/src/__tests__/composables/useControlSchema.test.ts +919 -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/useExpansionSet.test.ts +62 -0
- package/src/__tests__/composables/useExperimentData.test.ts +4 -0
- package/src/__tests__/composables/useExperimentSave.test.ts +203 -8
- package/src/__tests__/composables/useExperimentSelector.test.ts +164 -0
- package/src/__tests__/composables/useForm.test.ts +58 -0
- package/src/__tests__/composables/useFormBuilder.test.ts +77 -0
- package/src/__tests__/composables/useGroupAssignment.test.ts +73 -0
- package/src/__tests__/composables/useListSelection.test.ts +66 -0
- package/src/__tests__/composables/usePluginClient.test.ts +444 -0
- package/src/__tests__/composables/usePluginConfig.test.ts +5 -0
- package/src/__tests__/composables/useRequestSyncState.test.ts +92 -0
- package/src/__tests__/composables/useSampleGroups.test.ts +66 -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__/docs/frontendDocsCatalog.test.ts +229 -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__/templates/templates.test.ts +1043 -0
- package/src/components/ActionItem.vue +82 -0
- package/src/components/AppAvatarMenu.vue +15 -69
- package/src/components/AppLayout.story.vue +25 -25
- package/src/components/AppPageSelector.vue +63 -94
- package/src/components/AppPillNav.vue +44 -39
- package/src/components/AppPluginSwitcher.vue +41 -145
- package/src/components/AppSidebar.story.vue +94 -0
- package/src/components/AppSidebar.vue +187 -12
- package/src/components/{ToastNotification.story.vue → AppToastContainer.story.vue} +6 -6
- package/src/components/AppToastContainer.vue +62 -0
- package/src/components/AppTopBar.story.vue +7 -30
- package/src/components/AppTopBar.vue +251 -57
- package/src/components/BaseModal.vue +3 -5
- package/src/components/BaseRadioGroup.vue +7 -3
- package/src/components/BaseSelect.vue +11 -7
- package/src/components/BaseTabs.vue +6 -4
- package/src/components/BatchProgressList.vue +5 -8
- package/src/components/BioTemplateExperimentWorkspaceView.story.vue +123 -0
- package/src/components/BioTemplateExperimentWorkspaceView.vue +337 -0
- package/src/components/BioTemplatePackWorkspaceView.story.vue +107 -0
- package/src/components/BioTemplatePackWorkspaceView.vue +176 -0
- package/src/components/BioTemplatePresetWorkspaceView.story.vue +151 -0
- package/src/components/BioTemplatePresetWorkspaceView.vue +392 -0
- package/src/components/BioTemplateRenderer.story.vue +57 -0
- package/src/components/BioTemplateRenderer.vue +269 -0
- package/src/components/Breadcrumb.vue +14 -8
- package/src/components/CalendarGridPanel.vue +120 -0
- package/src/components/ConcentrationInput.vue +27 -64
- package/src/components/ControlWorkspaceView.story.vue +336 -0
- package/src/components/ControlWorkspaceView.vue +347 -0
- package/src/components/DataFrame.vue +34 -50
- package/src/components/DatePicker.vue +59 -192
- package/src/components/DateTimePicker.vue +50 -171
- package/src/components/DropdownButton.vue +14 -32
- package/src/components/EmptyState.vue +4 -2
- package/src/components/ExperimentPopover.vue +5 -22
- package/src/components/FormBuilder.vue +124 -27
- package/src/components/FormFieldRenderer.vue +15 -38
- package/src/components/FormSection.vue +20 -73
- package/src/components/GroupAssigner.vue +24 -56
- package/src/components/GroupingModal.story.vue +3 -3
- package/src/components/GroupingModal.vue +30 -391
- package/src/components/MultiSelect.vue +17 -12
- package/src/components/PlateMapEditor.vue +3 -8
- package/src/components/PluginIcon.vue +2 -22
- package/src/components/ProtocolStepEditor.vue +13 -22
- package/src/components/ReagentList.vue +25 -33
- package/src/components/SampleHierarchyTree.vue +12 -23
- package/src/components/SampleSelector.vue +42 -122
- package/src/components/SegmentedControl.vue +7 -3
- package/src/components/SettingsButton.story.vue +1 -1
- package/src/components/SettingsButton.vue +15 -27
- package/src/components/SettingsModal.story.vue +1 -1
- package/src/components/SettingsModal.vue +120 -29
- package/src/components/TagsInput.vue +29 -14
- package/src/components/ThemeToggle.vue +9 -7
- package/src/components/TimePicker.vue +19 -41
- package/src/components/ToastNotification.vue +4 -57
- package/src/components/Tooltip.vue +7 -12
- package/src/components/WellEditPopup.vue +3 -8
- package/src/components/WellPlate.vue +4 -10
- package/src/components/index.ts +11 -1
- package/src/components/internal/FormFieldRendererInternal.vue +50 -0
- package/src/components/internal/FormSectionRenderer.vue +78 -0
- package/src/composables/index.ts +212 -0
- package/src/composables/platformContextHelpers.ts +74 -0
- package/src/composables/useBioTemplateComponents.ts +93 -0
- package/src/composables/useBioTemplateControls.ts +41 -0
- package/src/composables/useBioTemplatePackWorkspace.ts +181 -0
- package/src/composables/useBioTemplatePresetWorkspace.ts +337 -0
- package/src/composables/useBioTemplateWorkspace.ts +139 -0
- package/src/composables/useCalendarGrid.ts +140 -0
- package/src/composables/useControlSchema.ts +1274 -0
- package/src/composables/useDebouncedWatch.ts +119 -0
- package/src/composables/useDropdownState.ts +83 -0
- package/src/composables/useEventListener.ts +111 -0
- package/src/composables/useExpansionSet.ts +117 -0
- package/src/composables/useExperimentData.ts +20 -11
- package/src/composables/useExperimentSave.ts +202 -50
- package/src/composables/useExperimentSelector.ts +86 -72
- package/src/composables/useForm.ts +49 -4
- package/src/composables/useFormBuilder.ts +93 -42
- package/src/composables/useGroupAssignment.ts +148 -0
- package/src/composables/useListSelection.ts +158 -0
- package/src/composables/usePluginApi.ts +7 -14
- package/src/composables/usePluginClient.ts +425 -0
- package/src/composables/usePluginConfig.ts +34 -13
- package/src/composables/useRequestSyncState.ts +126 -0
- package/src/composables/useSampleGroups.ts +126 -0
- package/src/composables/useSelectionLimit.ts +57 -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 +2 -28
- package/src/composables/useTimeUtils.ts +26 -2
- package/src/composables/useWellPlateEditor.ts +13 -9
- package/src/index.ts +224 -4
- package/src/install.ts +11 -4
- package/src/stores/settings.ts +13 -9
- package/src/styles/components/app-page-selector.css +23 -0
- package/src/styles/components/app-pill-nav.css +7 -0
- package/src/styles/components/app-top-bar.css +34 -0
- package/src/styles/components/concentration-input.css +3 -142
- package/src/styles/components/empty-state.css +0 -16
- package/src/styles/components/settings-button.css +3 -66
- package/src/styles/components/theme-toggle.css +3 -66
- package/src/styles/index.css +0 -1
- package/src/templates/adapters.ts +785 -0
- package/src/templates/builders.ts +2149 -0
- package/src/templates/catalog.ts +245 -0
- package/src/templates/componentBindings.ts +615 -0
- package/src/templates/controlSchemas.ts +718 -0
- package/src/templates/index.ts +314 -0
- package/src/templates/lookup.ts +18 -0
- package/src/templates/packs.ts +156 -0
- package/src/templates/presets.ts +146 -0
- package/src/templates/types.ts +668 -0
- package/src/types/components.ts +41 -4
- package/src/types/form-builder.ts +7 -2
- package/src/types/index.ts +14 -0
- package/src/types/platform.ts +7 -1
- 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 +30 -0
- package/dist/auth-DsI0rQ7_.js.map +0 -1
- package/dist/components-_XqPEhP9.js.map +0 -1
- package/dist/composables-tiZqLu1M.js.map +0 -1
- package/dist/useScheduleDrag-CA9sGNJG.js +0 -7181
- package/dist/useScheduleDrag-CA9sGNJG.js.map +0 -1
- package/src/styles/components/grouping-modal.css +0 -323
|
@@ -8,13 +8,15 @@ export { useForm, type ValidationRule, type FieldRules, type FieldState, type Us
|
|
|
8
8
|
export { useAsync, useAsyncBatch, type AsyncError, type AsyncState, type UseAsyncReturn, type UseAsyncOptions, } from './useAsync';
|
|
9
9
|
export { useWellPlateEditor, type UseWellPlateEditorOptions, type UseWellPlateEditorReturn, } from './useWellPlateEditor';
|
|
10
10
|
export { useConcentrationUnits, type ConcentrationValue, type ConcentrationUnit, type MolarityUnit, type MassVolumeUnit, type PercentageUnit, type UnitCategory, type UseConcentrationUnitsReturn, } from './useConcentrationUnits';
|
|
11
|
-
export { useDoseCalculator, type VolumeUnit, type VolumeValue, type DilutionParams, type DilutionResult, type SerialDilutionParams, type SerialDilutionStep, type SerialDilutionResult, type WellConcentration, type UseDoseCalculatorReturn, } from './useDoseCalculator';
|
|
11
|
+
export { useDoseCalculator, type VolumeUnit, type VolumeValue, type DilutionParams, type DilutionResult, type SerialDilutionParams, type SerialDilutionStep, type SerialDilutionResult, type ConversionResult, type WellConcentration, type UseDoseCalculatorReturn, } from './useDoseCalculator';
|
|
12
12
|
export { useProtocolTemplates, type ParameterDefinition, type StepTemplate, type ValidationResult, type UseProtocolTemplatesReturn, } from './useProtocolTemplates';
|
|
13
13
|
export { useRackEditor, type UseRackEditorOptions, type UseRackEditorReturn, } from './useRackEditor';
|
|
14
14
|
export { useChemicalFormula, ATOMIC_WEIGHTS, type ParsedElement, type FormulaParseResult, type FormulaPart, type FormulaPartType, } from './useChemicalFormula';
|
|
15
15
|
export { useSequenceUtils, type SequenceType, type SequenceStats, } from './useSequenceUtils';
|
|
16
|
-
export { useTimeUtils, parseTime, formatTime, generateTimeSlots, rangesOverlap, durationMinutes, formatDuration, isTimeInRange, findAvailableSlots, snapToSlot, addMinutes, compareTime, } from './useTimeUtils';
|
|
16
|
+
export { useTimeUtils, parseTime, formatTime, formatTimeSlot, generateTimeSlots, rangesOverlap, durationMinutes, formatDuration, isTimeInRange, findAvailableSlots, snapToSlot, addMinutes, compareTime, findNearestTimeSlotIndex, toMinutes, fromMinutes, } from './useTimeUtils';
|
|
17
17
|
export { useScheduleDrag } from './useScheduleDrag';
|
|
18
|
+
export { useEventListener, type EventListenerEnabled, type EventFor, type EventListenerStop, type EventMapFor, type EventTargetGetter, type EventTargetLike, type UseEventListenerObjectOptions, type UseEventListenerOptions, } from './useEventListener';
|
|
19
|
+
export { useDebouncedWatch, type DebouncedWatchCallback, type DebouncedWatchCleanup, type DebouncedWatchSource, type UseDebouncedWatchOptions, type UseDebouncedWatchReturn, } from './useDebouncedWatch';
|
|
18
20
|
export { useFormBuilder, evaluateCondition } from './useFormBuilder';
|
|
19
21
|
export { useAutoGroup, DEFAULT_COLORS, extractSamplesFromDesignData } from './useAutoGroup';
|
|
20
22
|
export { useReagentSeries, generateDilutionSeries, DEFAULT_PRESETS, DEFAULT_UNITS, type LevelEntry, type DilutionPreset, type UseReagentSeriesReturn, } from './useReagentSeries';
|
|
@@ -25,4 +27,21 @@ export { useExperimentData, type UseExperimentDataOptions, type UseExperimentDat
|
|
|
25
27
|
export { getFieldRegistryEntry, getTypeDefault, type RegistryEntry, } from './formBuilderRegistry';
|
|
26
28
|
export { useAppExperiment, APP_EXPERIMENT_KEY, type UseAppExperimentOptions, type UseAppExperimentReturn, type AppExperimentState, } from './useAppExperiment';
|
|
27
29
|
export { useExperimentSave, type UseExperimentSaveOptions, type UseExperimentSaveReturn, } from './useExperimentSave';
|
|
30
|
+
export { useTemplateCollection, type TemplateCollectionInput, type UseTemplateCollectionOptions, type UseTemplateCollectionReturn, } from './useTemplateCollection';
|
|
31
|
+
export { useRequestSyncState, type RequestSyncRunOptions, type RequestSyncSuccessKind, type UseRequestSyncStateReturn, } from './useRequestSyncState';
|
|
32
|
+
export { useSelectionLimit, type SelectionLimitSource, type UseSelectionLimitOptions, type UseSelectionLimitReturn, } from './useSelectionLimit';
|
|
33
|
+
export { useListSelection, type ListSelectionSource, type ListSelectionValue, type UseListSelectionOptions, type UseListSelectionReturn, type WidenListSelectionValue, } from './useListSelection';
|
|
34
|
+
export { useGroupAssignment, type GroupAssignmentSource, type GroupAssignmentState, type GroupAssignmentZone, type UseGroupAssignmentOptions, type UseGroupAssignmentReturn, } from './useGroupAssignment';
|
|
35
|
+
export { useSampleGroups, type DisplaySampleSubGroup, type SampleGroupSource, type SampleMajorGroup, type UseSampleGroupsOptions, type UseSampleGroupsReturn, } from './useSampleGroups';
|
|
36
|
+
export { useExpansionSet, type ExpansionSetSource, type UseExpansionSetOptions, type UseExpansionSetReturn, } from './useExpansionSet';
|
|
37
|
+
export { compareSortValues, useSortedItems, type CompareSortValuesOptions, type SortComparator, type SortComparatorContext, type SortDescriptor, type SortedItemsSource, type SortOrder, type UseSortedItemsOptions, type UseSortedItemsReturn, } from './useSortedItems';
|
|
38
|
+
export { candidateMatchesSearch, normalizeSearchQuery, useTextSearch, type TextSearchCandidate, type TextSearchSource, type UseTextSearchOptions, type UseTextSearchReturn, } from './useTextSearch';
|
|
39
|
+
/** @deprecated Use generated plugin clients from `mint sdk generate` instead. */
|
|
28
40
|
export { usePluginApi, type UsePluginApiOptions, } from './usePluginApi';
|
|
41
|
+
export { controlsToFormSchema, controlsToSectionFormSchema, controlsToSectionFormSchemas, controlsToSidebarPanels, controlsToSettingsSchema, controlsToTopBarSettingsConfig, controlsToTopBarTabs, controlsToViewIds, controlsToViewItems, controlValuesToComponentProps, defineControlModel, defineDoseDesignControlModel, defineDoseCalculatorControlProps, defineControls, defineWellPlateControlProps, defineWellPlateDoseControlProps, getDefaultControlView, getControlDefaults, useControlSchema, useControlWorkspace, type ControlDefinition, 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 ControlWorkspaceAppTopBarTabsBinding, type ControlWorkspaceComponentBindings, type ControlWorkspaceFormBinding, type ControlWorkspacePillNavBinding, type ControlWorkspaceSidebarBinding, type ControlWorkspaceTopBarBinding, type ControlWorkspaceTopBarSettingsBinding, type UseControlWorkspaceReturn, type WellPlateControlPropsOptions, type WellPlateDoseControlPropsOptions, } from './useControlSchema';
|
|
42
|
+
export { getBioTemplateControlSchema, requireBioTemplateControlSchema, useBioTemplateControls, type BioTemplateControlSchema, type BioTemplateControlTarget, } from './useBioTemplateControls';
|
|
43
|
+
export { getBioTemplateComponentProps, getBioTemplateComponentBindings, toBioTemplateComponentProps, toBioTemplateComponentPropsByComponent, toBioTemplateComponentPropsById, useBioTemplateComponents, type BioTemplateComponentBinding, type BioTemplateComponentPropsByComponent, type BioTemplateComponentPropsBinding, type BioTemplateComponentPropsById, type BioTemplateComponentPropsLookupOptions, type BioTemplateComponentTarget, type UseBioTemplateComponentsReturn, } from './useBioTemplateComponents';
|
|
44
|
+
export { useBioTemplateWorkspace, type BioTemplateRendererBinding, type BioTemplateWorkspaceBindings, type BioTemplateWorkspaceTarget, type UseBioTemplateWorkspaceReturn, } from './useBioTemplateWorkspace';
|
|
45
|
+
export { useBioTemplatePresetWorkspace, type BioTemplatePresetWorkspaceBindings, type UseBioTemplatePresetWorkspaceOptions, type UseBioTemplatePresetWorkspaceReturn, } from './useBioTemplatePresetWorkspace';
|
|
46
|
+
export { useBioTemplatePackWorkspace, type UseBioTemplatePackWorkspaceOptions, type UseBioTemplatePackWorkspaceReturn, } from './useBioTemplatePackWorkspace';
|
|
47
|
+
export { buildPluginEndpointUrl, createPluginClient, resolvePluginBaseUrl, usePluginClient, usePluginSettings, useCurrentExperiment, type BuildPluginEndpointUrlOptions, type PluginContract, type PluginEndpointContract, type PluginEndpointDefinition, type PluginHttpMethod, type PluginNavItemContract, type CreatePluginClientOptions, type UseCurrentExperimentOptions, type UseCurrentExperimentReturn, } from './usePluginClient';
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
-
import { $ as
|
|
2
|
-
import { a as
|
|
3
|
-
|
|
1
|
+
import { $n as generateTimeSlots, Cn as getControlDefaults, Dn as useControlWorkspace, En as useControlSchema, Fn as useSequenceUtils, Gn as compareTime, Jn as findNearestTimeSlotIndex, Kn as durationMinutes, Ln as ATOMIC_WEIGHTS, Mn as useConcentrationUnits, On as getFieldRegistryEntry, Qn as fromMinutes, Rn as useChemicalFormula, Sn as defineWellPlateDoseControlProps, Wn as addMinutes, Xn as formatTime, Yn as formatDuration, Zn as formatTimeSlot, _n as defineControlModel, ar as useTimeUtils, bn as defineDoseDesignControlModel, cn as controlsToFormSchema, dn as controlsToSettingsSchema, dr as useEventListener, er as isTimeInRange, fn as controlsToSidebarPanels, g as toBioTemplateComponentPropsById, gn as controlsToViewItems, hn as controlsToViewIds, ir as toMinutes, kn as getTypeDefault, l as requireBioTemplateControlSchema, ln as controlsToSectionFormSchema, lr as useListSelection, m as toBioTemplateComponentProps, mn as controlsToTopBarTabs, nr as rangesOverlap, o as getBioTemplateControlSchema, pn as controlsToTopBarSettingsConfig, qn as findAvailableSlots, rr as snapToSlot, sn as controlValuesToComponentProps, tr as parseTime, u as getBioTemplateComponentBindings, un as controlsToSectionFormSchemas, ur as useSelectionLimit, vn as defineControls, wn as getDefaultControlView, xn as defineWellPlateControlProps, yn as defineDoseCalculatorControlProps } from "../templates-50NPjaxL.js";
|
|
2
|
+
import { $ as normalizeSearchQuery, A as useAutoGroup, B as EXPERIMENT_STATUS_VARIANT_MAP, C as useSampleGroups, D as DEFAULT_COLORS, F as usePlatformContext, G as useDebouncedWatch, H as datePresetToISO, I as useExperimentSelector, J as useFormBuilder, K as useApi, L as DATE_PRESET_OPTIONS, M as useDoseCalculator, N as APP_EXPERIMENT_KEY, O as extractSamplesFromDesignData, P as useAppExperiment, Q as candidateMatchesSearch, R as EXPERIMENT_STATUS_LABELS, S as useExpansionSet, U as formatExperimentDate, V as SORT_OPTIONS, W as useRequestSyncState, X as useTheme, Y as useForm, Z as useToast, _ as useTemplateCollection, a as DEFAULT_UNITS, c as useGroupAssignment, d as useBioTemplatePackWorkspace, et as useTextSearch, f as useBioTemplateWorkspace, g as useBioTemplateControls, h as useBioTemplateComponents, i as DEFAULT_PRESETS, j as useWellPlateEditor, l as useRackEditor, m as toBioTemplateComponentPropsByComponent, n as useExperimentData, nt as useSortedItems, o as generateDilutionSeries, p as getBioTemplateComponentProps, q as evaluateCondition, r as useProtocolTemplates, s as useReagentSeries, t as useScheduleDrag, tt as compareSortValues, u as useBioTemplatePresetWorkspace, v as useExperimentSave, z as EXPERIMENT_STATUS_OPTIONS } from "../useScheduleDrag-D4oWdh41.js";
|
|
3
|
+
import { a as usePluginClient, c as usePluginConfig, d as usePasskey, f as useAuth, i as useCurrentExperiment, l as useAsync, n as createPluginClient, o as usePluginSettings, r as resolvePluginBaseUrl, s as usePluginApi, t as buildPluginEndpointUrl, u as useAsyncBatch } from "../composables-C3dpXQN5.js";
|
|
4
|
+
export { APP_EXPERIMENT_KEY, ATOMIC_WEIGHTS, DATE_PRESET_OPTIONS, DEFAULT_COLORS, DEFAULT_PRESETS, DEFAULT_UNITS, EXPERIMENT_STATUS_LABELS, EXPERIMENT_STATUS_OPTIONS, EXPERIMENT_STATUS_VARIANT_MAP, SORT_OPTIONS, addMinutes, buildPluginEndpointUrl, candidateMatchesSearch, compareSortValues, compareTime, controlValuesToComponentProps, controlsToFormSchema, controlsToSectionFormSchema, controlsToSectionFormSchemas, controlsToSettingsSchema, controlsToSidebarPanels, controlsToTopBarSettingsConfig, controlsToTopBarTabs, controlsToViewIds, controlsToViewItems, createPluginClient, datePresetToISO, defineControlModel, defineControls, defineDoseCalculatorControlProps, defineDoseDesignControlModel, defineWellPlateControlProps, defineWellPlateDoseControlProps, durationMinutes, evaluateCondition, extractSamplesFromDesignData, findAvailableSlots, findNearestTimeSlotIndex, formatDuration, formatExperimentDate, formatTime, formatTimeSlot, fromMinutes, generateDilutionSeries, generateTimeSlots, getBioTemplateComponentBindings, getBioTemplateComponentProps, getBioTemplateControlSchema, getControlDefaults, getDefaultControlView, getFieldRegistryEntry, getTypeDefault, isTimeInRange, normalizeSearchQuery, parseTime, rangesOverlap, requireBioTemplateControlSchema, resolvePluginBaseUrl, snapToSlot, toBioTemplateComponentProps, toBioTemplateComponentPropsByComponent, toBioTemplateComponentPropsById, toMinutes, useApi, useAppExperiment, useAsync, useAsyncBatch, useAuth, useAutoGroup, useBioTemplateComponents, useBioTemplateControls, useBioTemplatePackWorkspace, useBioTemplatePresetWorkspace, useBioTemplateWorkspace, useChemicalFormula, useConcentrationUnits, useControlSchema, useControlWorkspace, useCurrentExperiment, useDebouncedWatch, useDoseCalculator, useEventListener, useExpansionSet, useExperimentData, useExperimentSave, useExperimentSelector, useForm, useFormBuilder, useGroupAssignment, useListSelection, usePasskey, usePlatformContext, usePluginApi, usePluginClient, usePluginConfig, usePluginSettings, useProtocolTemplates, useRackEditor, useReagentSeries, useRequestSyncState, useSampleGroups, useScheduleDrag, useSelectionLimit, useSequenceUtils, useSortedItems, useTemplateCollection, useTextSearch, useTheme, useTimeUtils, useToast, useWellPlateEditor };
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { PlatformContext } from '../types';
|
|
2
|
+
export type ExperimentAwarePlatformContext = PlatformContext & {
|
|
3
|
+
currentExperiment?: unknown;
|
|
4
|
+
currentExperimentId?: unknown;
|
|
5
|
+
experiment?: unknown;
|
|
6
|
+
experimentId?: unknown;
|
|
7
|
+
};
|
|
8
|
+
export declare function getInjectedPlatformContext(): PlatformContext | undefined;
|
|
9
|
+
export declare function getInjectedExperimentContext(): ExperimentAwarePlatformContext | undefined;
|
|
10
|
+
export declare function currentExperimentFromContext<TExperiment>(context?: ExperimentAwarePlatformContext | undefined): TExperiment | undefined;
|
|
11
|
+
export declare function currentExperimentIdFromContext(context?: ExperimentAwarePlatformContext | undefined): number | undefined;
|
|
12
|
+
export declare function currentExperimentIdFromUrl(): number | undefined;
|
|
13
|
+
export declare function resolveCurrentExperimentId(context?: ExperimentAwarePlatformContext | undefined): number | undefined;
|
|
14
|
+
export declare function parseExperimentId(value: unknown): number | undefined;
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { getBioTemplateComponentBindings, toBioTemplateComponentImports, toBioTemplateComponentProps, toBioTemplateComponentPropsById, toBioTemplateComponentSnippets, toBioTemplateComponentUsage, BioTemplateComponentBinding, BioTemplateComponentImport, BioTemplateComponentPropsByComponent, BioTemplateComponentPropsBinding, BioTemplateComponentPropsById, BioTemplateComponentPropsLookupOptions, BioTemplateComponentSnippet, BioTemplateComponentTarget, BioTemplateComponentUsage } from '../templates/componentBindings';
|
|
2
|
+
import { BioTemplateEnvelope, TemplateCollectionEnvelope } from '../templates/types';
|
|
3
|
+
export { getBioTemplateComponentBindings, toBioTemplateComponentImports, toBioTemplateComponentProps, toBioTemplateComponentPropsById, toBioTemplateComponentSnippets, toBioTemplateComponentUsage, };
|
|
4
|
+
export type { BioTemplateComponentBinding, BioTemplateComponentImport, BioTemplateComponentPropsByComponent, BioTemplateComponentPropsBinding, BioTemplateComponentPropsById, BioTemplateComponentPropsLookupOptions, BioTemplateComponentSnippet, BioTemplateComponentTarget, BioTemplateComponentUsage, };
|
|
5
|
+
export interface UseBioTemplateComponentsReturn {
|
|
6
|
+
bindings: BioTemplateComponentBinding[];
|
|
7
|
+
imports: BioTemplateComponentImport[];
|
|
8
|
+
componentProps: BioTemplateComponentPropsBinding[];
|
|
9
|
+
componentPropsById: BioTemplateComponentPropsById;
|
|
10
|
+
componentPropsByComponent: BioTemplateComponentPropsByComponent;
|
|
11
|
+
snippets: BioTemplateComponentSnippet[];
|
|
12
|
+
usage: BioTemplateComponentUsage | null;
|
|
13
|
+
getComponentProps: (component: string, options?: BioTemplateComponentPropsLookupOptions) => Record<string, unknown> | undefined;
|
|
14
|
+
}
|
|
15
|
+
/** Return component props grouped by SDK component name for direct WellPlate/DoseCalculator binding. */
|
|
16
|
+
export declare function toBioTemplateComponentPropsByComponent(target: BioTemplateEnvelope<unknown> | TemplateCollectionEnvelope): BioTemplateComponentPropsByComponent;
|
|
17
|
+
/** Return the first props object for an SDK component, optionally restricted by template id or binding id. */
|
|
18
|
+
export declare function getBioTemplateComponentProps(target: BioTemplateEnvelope<unknown> | TemplateCollectionEnvelope, component: string, options?: BioTemplateComponentPropsLookupOptions): Record<string, unknown> | undefined;
|
|
19
|
+
/** Map built-in biology templates to SDK components such as WellPlate, DataFrame, DoseCalculator, and PlateMapEditor. */
|
|
20
|
+
export declare function useBioTemplateComponents(target: BioTemplateComponentTarget): UseBioTemplateComponentsReturn;
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { getBioTemplateControlSchema, requireBioTemplateControlSchema, BioTemplateControlSchema, BioTemplateControlTarget } from '../templates/controlSchemas';
|
|
2
|
+
import { ControlWorkspaceOptions, UseControlSchemaReturn } from './useControlSchema';
|
|
3
|
+
export { getBioTemplateControlSchema, requireBioTemplateControlSchema, };
|
|
4
|
+
export type { BioTemplateControlSchema, BioTemplateControlTarget, };
|
|
5
|
+
/** Build FormBuilder schema, AppSidebar panels, and defaults for a built-in biology template or preset. */
|
|
6
|
+
export declare function useBioTemplateControls(target: BioTemplateControlTarget, options?: ControlWorkspaceOptions): UseControlSchemaReturn<BioTemplateControlSchema>;
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import { ComputedRef, Ref } from 'vue';
|
|
2
|
+
import { BioTemplatePackEntry, TemplateCollectionEnvelope, TemplatePackId } from '../templates';
|
|
3
|
+
import { UseTemplateCollectionOptions, UseTemplateCollectionReturn } from './useTemplateCollection';
|
|
4
|
+
import { BioTemplateRendererBinding, BioTemplateWorkspaceBindings, UseBioTemplateWorkspaceReturn } from './useBioTemplateWorkspace';
|
|
5
|
+
import { BioTemplateComponentBinding, BioTemplateComponentImport, BioTemplateComponentPropsByComponent, BioTemplateComponentPropsBinding, BioTemplateComponentPropsById, BioTemplateComponentSnippet, BioTemplateComponentUsage } from './useBioTemplateComponents';
|
|
6
|
+
export type UseBioTemplatePackWorkspaceOptions = UseTemplateCollectionOptions;
|
|
7
|
+
export interface UseBioTemplatePackWorkspaceReturn {
|
|
8
|
+
packId: TemplatePackId;
|
|
9
|
+
pack: BioTemplatePackEntry;
|
|
10
|
+
collection: Ref<TemplateCollectionEnvelope>;
|
|
11
|
+
templates: UseTemplateCollectionReturn['templates'];
|
|
12
|
+
templateIds: UseTemplateCollectionReturn['templateIds'];
|
|
13
|
+
currentExperimentId: UseTemplateCollectionReturn['currentExperimentId'];
|
|
14
|
+
hasCurrentExperiment: UseTemplateCollectionReturn['hasCurrentExperiment'];
|
|
15
|
+
loading: UseTemplateCollectionReturn['isLoading'];
|
|
16
|
+
saving: UseTemplateCollectionReturn['isSaving'];
|
|
17
|
+
error: UseTemplateCollectionReturn['error'];
|
|
18
|
+
lastLoadedAt: UseTemplateCollectionReturn['lastLoadedAt'];
|
|
19
|
+
lastSavedAt: UseTemplateCollectionReturn['lastSavedAt'];
|
|
20
|
+
renderer: ComputedRef<BioTemplateRendererBinding>;
|
|
21
|
+
workspace: ComputedRef<UseBioTemplateWorkspaceReturn>;
|
|
22
|
+
form: ComputedRef<UseBioTemplateWorkspaceReturn['form']>;
|
|
23
|
+
sidebar: ComputedRef<UseBioTemplateWorkspaceReturn['sidebar']>;
|
|
24
|
+
topBar: ComputedRef<UseBioTemplateWorkspaceReturn['topBar']>;
|
|
25
|
+
pillNav: ComputedRef<UseBioTemplateWorkspaceReturn['pillNav']>;
|
|
26
|
+
topBarSettings: ComputedRef<UseBioTemplateWorkspaceReturn['topBarSettings']>;
|
|
27
|
+
bindings: ComputedRef<BioTemplateWorkspaceBindings>;
|
|
28
|
+
componentBindings: ComputedRef<BioTemplateComponentBinding[]>;
|
|
29
|
+
componentImports: ComputedRef<BioTemplateComponentImport[]>;
|
|
30
|
+
componentProps: ComputedRef<BioTemplateComponentPropsBinding[]>;
|
|
31
|
+
componentPropsById: ComputedRef<BioTemplateComponentPropsById>;
|
|
32
|
+
componentPropsByComponent: ComputedRef<BioTemplateComponentPropsByComponent>;
|
|
33
|
+
componentSnippets: ComputedRef<BioTemplateComponentSnippet[]>;
|
|
34
|
+
componentUsage: ComputedRef<BioTemplateComponentUsage | null>;
|
|
35
|
+
getComponentProps: UseBioTemplateWorkspaceReturn['getComponentProps'];
|
|
36
|
+
applyCollection: (value: unknown, metadata?: Record<string, unknown>) => TemplateCollectionEnvelope;
|
|
37
|
+
resetToDefaultCollection: () => TemplateCollectionEnvelope;
|
|
38
|
+
save: UseTemplateCollectionReturn['save'];
|
|
39
|
+
saveCurrent: UseTemplateCollectionReturn['saveCurrent'];
|
|
40
|
+
load: UseTemplateCollectionReturn['load'];
|
|
41
|
+
loadCurrent: UseTemplateCollectionReturn['loadCurrent'];
|
|
42
|
+
requireCurrentExperimentId: UseTemplateCollectionReturn['requireCurrentExperimentId'];
|
|
43
|
+
}
|
|
44
|
+
/** Create a complete workspace for a curated biology template pack from a single pack id. */
|
|
45
|
+
export declare function useBioTemplatePackWorkspace(packId: TemplatePackId | string, options?: UseBioTemplatePackWorkspaceOptions): UseBioTemplatePackWorkspaceReturn;
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
import { ComputedRef, Ref } from 'vue';
|
|
2
|
+
import { PillNavItem } from '../types';
|
|
3
|
+
import { BioTemplateControlValues, BioTemplatePresetEntry, TemplateCollectionEnvelope, TemplatePresetId } from '../templates';
|
|
4
|
+
import { ControlWorkspaceAppTopBarPillBinding, ControlWorkspaceAppTopBarTabsBinding, ControlWorkspaceOptions, ControlWorkspaceFormBinding, ControlWorkspacePillNavBinding, ControlWorkspaceSidebarBinding, ControlWorkspaceTopBarBinding, ControlWorkspaceTopBarSettingsBinding, UseControlSchemaReturn } from './useControlSchema';
|
|
5
|
+
import { UseTemplateCollectionOptions, UseTemplateCollectionReturn } from './useTemplateCollection';
|
|
6
|
+
import { BioTemplateRendererBinding, UseBioTemplateWorkspaceReturn } from './useBioTemplateWorkspace';
|
|
7
|
+
import { BioTemplateComponentBinding, BioTemplateComponentImport, BioTemplateComponentPropsByComponent, BioTemplateComponentPropsBinding, BioTemplateComponentPropsById, BioTemplateComponentSnippet, BioTemplateComponentUsage } from './useBioTemplateComponents';
|
|
8
|
+
import { BioTemplateControlSchema } from './useBioTemplateControls';
|
|
9
|
+
export interface UseBioTemplatePresetWorkspaceOptions extends UseTemplateCollectionOptions {
|
|
10
|
+
/** Optional schema-rendering options for the generated FormBuilder/AppSidebar controls. */
|
|
11
|
+
controlOptions?: ControlWorkspaceOptions;
|
|
12
|
+
/** Initial control values for the generated preset. Merged over controlOptions.initialValues. */
|
|
13
|
+
initialValues?: BioTemplateControlValues;
|
|
14
|
+
}
|
|
15
|
+
export interface UseBioTemplatePresetWorkspaceReturn {
|
|
16
|
+
presetId: TemplatePresetId;
|
|
17
|
+
presetInfo: ComputedRef<BioTemplatePresetEntry | undefined>;
|
|
18
|
+
presetLabel: ComputedRef<string>;
|
|
19
|
+
collection: Ref<TemplateCollectionEnvelope>;
|
|
20
|
+
templates: UseTemplateCollectionReturn['templates'];
|
|
21
|
+
templateIds: UseTemplateCollectionReturn['templateIds'];
|
|
22
|
+
currentExperimentId: UseTemplateCollectionReturn['currentExperimentId'];
|
|
23
|
+
hasCurrentExperiment: UseTemplateCollectionReturn['hasCurrentExperiment'];
|
|
24
|
+
saving: UseTemplateCollectionReturn['isSaving'];
|
|
25
|
+
error: UseTemplateCollectionReturn['error'];
|
|
26
|
+
lastSavedAt: UseTemplateCollectionReturn['lastSavedAt'];
|
|
27
|
+
controls: UseControlSchemaReturn<BioTemplateControlSchema>;
|
|
28
|
+
controlSchema: BioTemplateControlSchema;
|
|
29
|
+
controlValues: Ref<BioTemplateControlValues>;
|
|
30
|
+
controlViewIds: ComputedRef<string[]>;
|
|
31
|
+
controlViewItems: ComputedRef<PillNavItem[]>;
|
|
32
|
+
activeControlView: Ref<string>;
|
|
33
|
+
form: ControlWorkspaceFormBinding;
|
|
34
|
+
sidebar: ControlWorkspaceSidebarBinding;
|
|
35
|
+
topBar: ControlWorkspaceTopBarBinding;
|
|
36
|
+
pillNav: ControlWorkspacePillNavBinding;
|
|
37
|
+
topBarSettings: ControlWorkspaceTopBarSettingsBinding;
|
|
38
|
+
bindings: BioTemplatePresetWorkspaceBindings;
|
|
39
|
+
renderer: ComputedRef<BioTemplateRendererBinding>;
|
|
40
|
+
workspace: ComputedRef<UseBioTemplateWorkspaceReturn>;
|
|
41
|
+
componentBindings: ComputedRef<BioTemplateComponentBinding[]>;
|
|
42
|
+
componentImports: ComputedRef<BioTemplateComponentImport[]>;
|
|
43
|
+
componentProps: ComputedRef<BioTemplateComponentPropsBinding[]>;
|
|
44
|
+
componentPropsById: ComputedRef<BioTemplateComponentPropsById>;
|
|
45
|
+
componentPropsByComponent: ComputedRef<BioTemplateComponentPropsByComponent>;
|
|
46
|
+
componentSnippets: ComputedRef<BioTemplateComponentSnippet[]>;
|
|
47
|
+
componentUsage: ComputedRef<BioTemplateComponentUsage | null>;
|
|
48
|
+
getComponentProps: UseBioTemplateWorkspaceReturn['getComponentProps'];
|
|
49
|
+
setActiveControlView: (viewId: string) => void;
|
|
50
|
+
setControlValues: (values: BioTemplateControlValues) => TemplateCollectionEnvelope;
|
|
51
|
+
updateControlValues: (values: Partial<BioTemplateControlValues>) => TemplateCollectionEnvelope;
|
|
52
|
+
applyCollection: (value: TemplateCollectionEnvelope) => TemplateCollectionEnvelope;
|
|
53
|
+
resetToDefaultCollection: () => TemplateCollectionEnvelope;
|
|
54
|
+
save: UseTemplateCollectionReturn['save'];
|
|
55
|
+
saveCurrent: UseTemplateCollectionReturn['saveCurrent'];
|
|
56
|
+
}
|
|
57
|
+
export interface BioTemplatePresetWorkspaceBindings {
|
|
58
|
+
renderer: ComputedRef<BioTemplateRendererBinding>;
|
|
59
|
+
form: ControlWorkspaceFormBinding;
|
|
60
|
+
sidebar: ControlWorkspaceSidebarBinding;
|
|
61
|
+
topBar: ComputedRef<ControlWorkspaceAppTopBarPillBinding>;
|
|
62
|
+
topBarTabs: ComputedRef<ControlWorkspaceAppTopBarTabsBinding>;
|
|
63
|
+
topBarSettings: ControlWorkspaceTopBarSettingsBinding;
|
|
64
|
+
pillNav: ControlWorkspacePillNavBinding;
|
|
65
|
+
componentBindings: ComputedRef<BioTemplateComponentBinding[]>;
|
|
66
|
+
componentProps: ComputedRef<BioTemplateComponentPropsBinding[]>;
|
|
67
|
+
componentPropsById: ComputedRef<BioTemplateComponentPropsById>;
|
|
68
|
+
componentPropsByComponent: ComputedRef<BioTemplateComponentPropsByComponent>;
|
|
69
|
+
componentSnippets: ComputedRef<BioTemplateComponentSnippet[]>;
|
|
70
|
+
componentUsage: ComputedRef<BioTemplateComponentUsage | null>;
|
|
71
|
+
getComponentProps: UseBioTemplateWorkspaceReturn['getComponentProps'];
|
|
72
|
+
}
|
|
73
|
+
/** Create a complete editable WellPlate/DoseCalculator workspace for dose design from a built-in biology template preset with current-experiment save wiring. */
|
|
74
|
+
export declare function useBioTemplatePresetWorkspace(presetId: TemplatePresetId, options?: UseBioTemplatePresetWorkspaceOptions): UseBioTemplatePresetWorkspaceReturn;
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
import { BioTemplateEnvelope, TemplateCollectionEnvelope } from '../templates';
|
|
2
|
+
import { ControlWorkspaceFormBinding, ControlWorkspaceOptions, ControlWorkspacePillNavBinding, ControlWorkspaceSidebarBinding, ControlWorkspaceTopBarBinding, ControlWorkspaceTopBarSettingsBinding, UseControlSchemaReturn, UseControlWorkspaceReturn } from './useControlSchema';
|
|
3
|
+
import { BioTemplateControlSchema, BioTemplateControlTarget } from './useBioTemplateControls';
|
|
4
|
+
import { BioTemplateComponentBinding, BioTemplateComponentImport, BioTemplateComponentPropsByComponent, BioTemplateComponentPropsBinding, BioTemplateComponentPropsById, BioTemplateComponentSnippet, BioTemplateComponentUsage, UseBioTemplateComponentsReturn } from './useBioTemplateComponents';
|
|
5
|
+
export type BioTemplateWorkspaceTarget = BioTemplateControlTarget;
|
|
6
|
+
export interface BioTemplateRendererBinding {
|
|
7
|
+
target: BioTemplateEnvelope<unknown> | TemplateCollectionEnvelope;
|
|
8
|
+
}
|
|
9
|
+
export interface BioTemplateWorkspaceBindings {
|
|
10
|
+
renderer: BioTemplateRendererBinding | null;
|
|
11
|
+
form: ControlWorkspaceFormBinding;
|
|
12
|
+
sidebar: ControlWorkspaceSidebarBinding;
|
|
13
|
+
topBar: UseControlWorkspaceReturn<BioTemplateControlSchema>['bindings']['topBar'];
|
|
14
|
+
topBarTabs: UseControlWorkspaceReturn<BioTemplateControlSchema>['bindings']['topBarTabs'];
|
|
15
|
+
topBarSettings: ControlWorkspaceTopBarSettingsBinding;
|
|
16
|
+
pillNav: ControlWorkspacePillNavBinding;
|
|
17
|
+
componentBindings: BioTemplateComponentBinding[];
|
|
18
|
+
componentProps: BioTemplateComponentPropsBinding[];
|
|
19
|
+
componentPropsById: BioTemplateComponentPropsById;
|
|
20
|
+
componentPropsByComponent: BioTemplateComponentPropsByComponent;
|
|
21
|
+
componentSnippets: BioTemplateComponentSnippet[];
|
|
22
|
+
componentUsage: BioTemplateComponentUsage | null;
|
|
23
|
+
getComponentProps: UseBioTemplateComponentsReturn['getComponentProps'];
|
|
24
|
+
}
|
|
25
|
+
export interface UseBioTemplateWorkspaceReturn {
|
|
26
|
+
target: BioTemplateWorkspaceTarget;
|
|
27
|
+
controls: UseControlSchemaReturn<BioTemplateControlSchema>;
|
|
28
|
+
workspace: UseControlWorkspaceReturn<BioTemplateControlSchema>;
|
|
29
|
+
controlSchema: BioTemplateControlSchema;
|
|
30
|
+
components: UseBioTemplateComponentsReturn;
|
|
31
|
+
values: UseControlWorkspaceReturn<BioTemplateControlSchema>['values'];
|
|
32
|
+
activeView: UseControlWorkspaceReturn<BioTemplateControlSchema>['activeView'];
|
|
33
|
+
form: ControlWorkspaceFormBinding;
|
|
34
|
+
sidebar: ControlWorkspaceSidebarBinding;
|
|
35
|
+
topBar: ControlWorkspaceTopBarBinding;
|
|
36
|
+
pillNav: ControlWorkspacePillNavBinding;
|
|
37
|
+
topBarSettings: ControlWorkspaceTopBarSettingsBinding;
|
|
38
|
+
bindings: BioTemplateWorkspaceBindings;
|
|
39
|
+
renderer: BioTemplateRendererBinding | null;
|
|
40
|
+
componentBindings: BioTemplateComponentBinding[];
|
|
41
|
+
componentImports: BioTemplateComponentImport[];
|
|
42
|
+
componentProps: BioTemplateComponentPropsBinding[];
|
|
43
|
+
componentPropsById: BioTemplateComponentPropsById;
|
|
44
|
+
componentPropsByComponent: BioTemplateComponentPropsByComponent;
|
|
45
|
+
componentSnippets: BioTemplateComponentSnippet[];
|
|
46
|
+
componentUsage: BioTemplateComponentUsage | null;
|
|
47
|
+
getComponentProps: UseBioTemplateComponentsReturn['getComponentProps'];
|
|
48
|
+
}
|
|
49
|
+
/** One-stop wiring for BioTemplateRenderer, FormBuilder, AppSidebar, and template-aware SDK components. */
|
|
50
|
+
export declare function useBioTemplateWorkspace(target: BioTemplateWorkspaceTarget, options?: ControlWorkspaceOptions): UseBioTemplateWorkspaceReturn;
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { ComputedRef, Ref } from 'vue';
|
|
2
|
+
export interface CalendarGridDay {
|
|
3
|
+
date: Date;
|
|
4
|
+
isCurrentMonth: boolean;
|
|
5
|
+
isDisabled: boolean;
|
|
6
|
+
}
|
|
7
|
+
export interface UseCalendarGridOptions {
|
|
8
|
+
min?: () => string | undefined;
|
|
9
|
+
max?: () => string | undefined;
|
|
10
|
+
locale?: () => string | undefined;
|
|
11
|
+
}
|
|
12
|
+
export interface UseCalendarGridReturn {
|
|
13
|
+
currentMonth: Ref<Date>;
|
|
14
|
+
weekDays: readonly string[];
|
|
15
|
+
monthYear: ComputedRef<string>;
|
|
16
|
+
calendarDays: ComputedRef<CalendarGridDay[]>;
|
|
17
|
+
isDateDisabled: (date: Date) => boolean;
|
|
18
|
+
isSameDay: (date: Date, other: Date | null | undefined) => boolean;
|
|
19
|
+
isToday: (date: Date) => boolean;
|
|
20
|
+
formatDateValue: (date: Date) => string;
|
|
21
|
+
setCurrentMonthFromDate: (date: Date) => void;
|
|
22
|
+
prevMonth: () => void;
|
|
23
|
+
nextMonth: () => void;
|
|
24
|
+
}
|
|
25
|
+
/** Shared calendar grid state for date and datetime pickers. */
|
|
26
|
+
export declare function useCalendarGrid(options?: UseCalendarGridOptions): UseCalendarGridReturn;
|