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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (165) hide show
  1. package/README.md +9 -2
  2. package/dist/__tests__/composables/experiment-utils.test.d.ts +1 -0
  3. package/dist/__tests__/composables/useApi.test.d.ts +1 -0
  4. package/dist/components/AppContainer.vue.d.ts +1 -1
  5. package/dist/components/AppLayout.vue.d.ts +20 -1
  6. package/dist/components/AppSidebar.vue.d.ts +56 -4
  7. package/dist/components/AppTopBar.vue.d.ts +7 -25
  8. package/dist/components/BioTemplateExperimentWorkspaceView.vue.d.ts +3 -1
  9. package/dist/components/BioTemplatePackWorkspaceView.vue.d.ts +1 -0
  10. package/dist/components/BioTemplatePresetWorkspaceView.vue.d.ts +5 -0
  11. package/dist/components/ComponentBindingRenderer.vue.d.ts +44 -0
  12. package/dist/components/ControlWorkspaceView.vue.d.ts +24 -7
  13. package/dist/components/DoseDesignWorkspaceView.vue.d.ts +149 -0
  14. package/dist/components/ExperimentTimeline.vue.d.ts +1 -1
  15. package/dist/components/FormBuilder.vue.d.ts +9 -9
  16. package/dist/components/PlateMapEditor.vue.d.ts +1 -1
  17. package/dist/components/PluginWorkspaceView.vue.d.ts +310 -0
  18. package/dist/components/SettingsModal.vue.d.ts +1 -1
  19. package/dist/components/WellPlate.vue.d.ts +2 -2
  20. package/dist/components/index.d.ts +3 -12
  21. package/dist/components/index.js +3 -3
  22. package/dist/components/{AppPageSelector.vue.d.ts → internal/AppPageSelectorInternal.vue.d.ts} +1 -1
  23. package/dist/components/{AppPillNav.vue.d.ts → internal/AppPillNavInternal.vue.d.ts} +3 -1
  24. package/dist/components/{CalendarGridPanel.vue.d.ts → internal/CalendarGridPanelInternal.vue.d.ts} +1 -1
  25. package/dist/components/internal/FormSectionRenderer.vue.d.ts +4 -4
  26. package/dist/components/{WellEditPopup.vue.d.ts → internal/WellEditPopupInternal.vue.d.ts} +1 -1
  27. package/dist/{components-D_Sr0adg.js → components-BkGF4B4y.js} +4484 -3967
  28. package/dist/components-BkGF4B4y.js.map +1 -0
  29. package/dist/composables/experiment-utils.d.ts +8 -0
  30. package/dist/composables/index.d.ts +5 -7
  31. package/dist/composables/index.js +4 -4
  32. package/dist/composables/useAppExperiment.d.ts +31 -2
  33. package/dist/composables/useBioTemplateComponents.d.ts +5 -3
  34. package/dist/composables/useBioTemplatePackWorkspace.d.ts +3 -2
  35. package/dist/composables/useBioTemplatePresetWorkspace.d.ts +6 -5
  36. package/dist/composables/useBioTemplateWorkspace.d.ts +5 -4
  37. package/dist/composables/useControlSchema.d.ts +43 -21
  38. package/dist/composables/usePluginClient.d.ts +5 -2
  39. package/dist/{composables-C3dpXQN5.js → composables-CHsME9H1.js} +40 -28
  40. package/dist/composables-CHsME9H1.js.map +1 -0
  41. package/dist/index.d.ts +5 -12
  42. package/dist/index.js +5 -5
  43. package/dist/install.js +2 -2
  44. package/dist/styles.css +3625 -3651
  45. package/dist/templates/componentBindings.d.ts +13 -0
  46. package/dist/templates/index.d.ts +3 -3
  47. package/dist/templates/index.js +2 -2
  48. package/dist/{templates-50NPjaxL.js → templates-B5jmTWuk.js} +111 -56
  49. package/dist/templates-B5jmTWuk.js.map +1 -0
  50. package/dist/types/components.d.ts +6 -25
  51. package/dist/types/index.d.ts +1 -1
  52. package/dist/{useScheduleDrag-D4oWdh41.js → useScheduleDrag-BgzpQT53.js} +160 -117
  53. package/dist/useScheduleDrag-BgzpQT53.js.map +1 -0
  54. package/package.json +1 -1
  55. package/src/__tests__/components/ActionItem.test.ts +6 -6
  56. package/src/__tests__/components/AppLayout.test.ts +44 -0
  57. package/src/__tests__/components/AppPageSelector.test.ts +8 -8
  58. package/src/__tests__/components/AppPillNav.test.ts +53 -6
  59. package/src/__tests__/components/AppSidebar.test.ts +126 -0
  60. package/src/__tests__/components/AppToastContainer.test.ts +0 -11
  61. package/src/__tests__/components/AppTopBar.test.ts +182 -119
  62. package/src/__tests__/components/BioTemplateExperimentWorkspaceView.test.ts +7 -1
  63. package/src/__tests__/components/BioTemplatePackWorkspaceView.test.ts +15 -1
  64. package/src/__tests__/components/BioTemplatePresetWorkspaceView.test.ts +26 -1
  65. package/src/__tests__/components/CalendarGridPanel.test.ts +3 -3
  66. package/src/__tests__/components/ComponentBindingRenderer.test.ts +161 -0
  67. package/src/__tests__/components/ControlWorkspaceView.test.ts +134 -63
  68. package/src/__tests__/components/DateTimePicker.test.ts +2 -2
  69. package/src/__tests__/components/DoseDesignWorkspaceView.test.ts +185 -0
  70. package/src/__tests__/components/PluginWorkspaceView.test.ts +548 -0
  71. package/src/__tests__/composables/experiment-utils.test.ts +30 -0
  72. package/src/__tests__/composables/useApi.test.ts +30 -0
  73. package/src/__tests__/composables/useAppExperiment.test.ts +100 -1
  74. package/src/__tests__/composables/useBioTemplatePackWorkspace.test.ts +6 -3
  75. package/src/__tests__/composables/useBioTemplatePresetWorkspace.test.ts +6 -6
  76. package/src/__tests__/composables/useBioTemplateWorkspace.test.ts +6 -1
  77. package/src/__tests__/composables/useControlSchema.test.ts +150 -36
  78. package/src/__tests__/composables/usePluginClient.test.ts +99 -2
  79. package/src/__tests__/docs/frontendDocsCatalog.test.ts +120 -25
  80. package/src/__tests__/templates/templates.test.ts +12 -0
  81. package/src/components/AppAvatarMenu.vue +3 -3
  82. package/src/components/AppLayout.story.vue +39 -0
  83. package/src/components/AppLayout.vue +83 -2
  84. package/src/components/AppPluginSwitcher.vue +5 -5
  85. package/src/components/AppSidebar.story.vue +113 -5
  86. package/src/components/AppSidebar.vue +144 -24
  87. package/src/components/AppTopBar.story.vue +2 -5
  88. package/src/components/AppTopBar.vue +35 -425
  89. package/src/components/BioTemplateExperimentWorkspaceView.story.vue +2 -2
  90. package/src/components/BioTemplateExperimentWorkspaceView.vue +6 -0
  91. package/src/components/BioTemplatePackWorkspaceView.story.vue +4 -4
  92. package/src/components/BioTemplatePackWorkspaceView.vue +1 -0
  93. package/src/components/BioTemplatePresetWorkspaceView.story.vue +14 -2
  94. package/src/components/BioTemplatePresetWorkspaceView.vue +11 -2
  95. package/src/components/BioTemplateRenderer.vue +15 -227
  96. package/src/components/ComponentBindingRenderer.story.vue +57 -0
  97. package/src/components/ComponentBindingRenderer.vue +308 -0
  98. package/src/components/ControlWorkspaceView.story.vue +20 -9
  99. package/src/components/ControlWorkspaceView.vue +43 -12
  100. package/src/components/DatePicker.vue +2 -2
  101. package/src/components/DateTimePicker.vue +2 -2
  102. package/src/components/DoseDesignWorkspaceView.story.vue +77 -0
  103. package/src/components/DoseDesignWorkspaceView.vue +255 -0
  104. package/src/components/ExperimentPopover.vue +2 -6
  105. package/src/components/ExperimentSelectorModal.vue +6 -5
  106. package/src/components/FormBuilder.story.vue +190 -0
  107. package/src/components/PluginWorkspaceView.story.vue +334 -0
  108. package/src/components/PluginWorkspaceView.vue +708 -0
  109. package/src/components/SettingsModal.story.vue +87 -0
  110. package/src/components/WellPlate.vue +2 -2
  111. package/src/components/index.ts +3 -12
  112. package/src/components/{AppPageSelector.vue → internal/AppPageSelectorInternal.vue} +9 -9
  113. package/src/components/internal/AppPillNavInternal.vue +194 -0
  114. package/src/components/{CalendarGridPanel.vue → internal/CalendarGridPanelInternal.vue} +1 -1
  115. package/src/components/{WellEditPopup.vue → internal/WellEditPopupInternal.vue} +3 -3
  116. package/src/composables/experiment-utils.ts +26 -0
  117. package/src/composables/index.ts +21 -7
  118. package/src/composables/useApi.ts +9 -2
  119. package/src/composables/useAppExperiment.ts +85 -13
  120. package/src/composables/useBioTemplateComponents.ts +12 -0
  121. package/src/composables/useBioTemplatePackWorkspace.ts +6 -2
  122. package/src/composables/useBioTemplatePresetWorkspace.ts +10 -21
  123. package/src/composables/useBioTemplateWorkspace.ts +6 -4
  124. package/src/composables/useControlSchema.ts +157 -69
  125. package/src/composables/usePluginClient.ts +50 -9
  126. package/src/index.ts +6 -563
  127. package/src/styles/components/app-layout.css +82 -0
  128. package/src/styles/components/app-pill-nav.css +70 -0
  129. package/src/styles/components/app-sidebar.css +119 -0
  130. package/src/styles/components/app-top-bar.css +0 -235
  131. package/src/styles/index.css +0 -1
  132. package/src/templates/componentBindings.ts +38 -0
  133. package/src/templates/index.ts +4 -0
  134. package/src/types/components.ts +6 -31
  135. package/src/types/index.ts +2 -6
  136. package/dist/__tests__/composables/usePluginApi.test.d.ts +0 -13
  137. package/dist/components/FormFieldRenderer.vue.d.ts +0 -28
  138. package/dist/components/FormSection.vue.d.ts +0 -30
  139. package/dist/components/GroupingModal.vue.d.ts +0 -12
  140. package/dist/components/SettingsButton.vue.d.ts +0 -30
  141. package/dist/components/ToastNotification.vue.d.ts +0 -2
  142. package/dist/components-D_Sr0adg.js.map +0 -1
  143. package/dist/composables/usePluginApi.d.ts +0 -22
  144. package/dist/composables-C3dpXQN5.js.map +0 -1
  145. package/dist/templates-50NPjaxL.js.map +0 -1
  146. package/dist/useScheduleDrag-D4oWdh41.js.map +0 -1
  147. package/src/__tests__/components/FormCompatibility.test.ts +0 -94
  148. package/src/__tests__/components/GroupingModal.test.ts +0 -73
  149. package/src/__tests__/components/SettingsButton.test.ts +0 -44
  150. package/src/__tests__/composables/usePluginApi.test.ts +0 -81
  151. package/src/components/AppPillNav.vue +0 -71
  152. package/src/components/FormFieldRenderer.vue +0 -35
  153. package/src/components/FormSection.vue +0 -37
  154. package/src/components/GroupingModal.story.vue +0 -52
  155. package/src/components/GroupingModal.vue +0 -61
  156. package/src/components/SettingsButton.story.vue +0 -58
  157. package/src/components/SettingsButton.vue +0 -64
  158. package/src/components/ToastNotification.vue +0 -9
  159. package/src/composables/usePluginApi.ts +0 -32
  160. package/src/styles/components/settings-button.css +0 -31
  161. /package/dist/__tests__/components/{FormCompatibility.test.d.ts → ComponentBindingRenderer.test.d.ts} +0 -0
  162. /package/dist/__tests__/components/{GroupingModal.test.d.ts → DoseDesignWorkspaceView.test.d.ts} +0 -0
  163. /package/dist/__tests__/components/{SettingsButton.test.d.ts → PluginWorkspaceView.test.d.ts} +0 -0
  164. /package/dist/components/{ActionItem.vue.d.ts → internal/ActionItemInternal.vue.d.ts} +0 -0
  165. /package/src/components/{ActionItem.vue → internal/ActionItemInternal.vue} +0 -0
@@ -23,7 +23,7 @@ declare function __VLS_template(): {
23
23
  attrs: Partial<{}>;
24
24
  slots: Partial<Record<`field:${string}`, (_: {
25
25
  field: import('..').FormFieldSchema;
26
- form: import('../composables').UseFormReturn<Record<string, unknown>>;
26
+ form: import('..').UseFormReturn<Record<string, unknown>>;
27
27
  fieldProps: {
28
28
  modelValue: unknown;
29
29
  'onUpdate:modelValue': (value: unknown) => void;
@@ -32,12 +32,12 @@ declare function __VLS_template(): {
32
32
  };
33
33
  }) => any>> & Partial<Record<`section:${string}`, (_: {
34
34
  section: import('..').FormSectionSchema;
35
- form: import('../composables').UseFormReturn<Record<string, unknown>>;
35
+ form: import('..').UseFormReturn<Record<string, unknown>>;
36
36
  }) => any>> & Partial<Record<`section:${string}:after`, (_: {
37
- form: import('../composables').UseFormReturn<Record<string, unknown>>;
37
+ form: import('..').UseFormReturn<Record<string, unknown>>;
38
38
  }) => any>> & Partial<Record<`field:${string}`, (_: {
39
39
  field: import('..').FormFieldSchema;
40
- form: import('../composables').UseFormReturn<Record<string, unknown>>;
40
+ form: import('..').UseFormReturn<Record<string, unknown>>;
41
41
  fieldProps: {
42
42
  modelValue: unknown;
43
43
  'onUpdate:modelValue': (value: unknown) => void;
@@ -46,16 +46,16 @@ declare function __VLS_template(): {
46
46
  };
47
47
  }) => any>> & Partial<Record<`section:${string}`, (_: {
48
48
  section: import('..').FormSectionSchema;
49
- form: import('../composables').UseFormReturn<Record<string, unknown>>;
49
+ form: import('..').UseFormReturn<Record<string, unknown>>;
50
50
  }) => any>> & Partial<Record<`section:${string}:after`, (_: {
51
- form: import('../composables').UseFormReturn<Record<string, unknown>>;
51
+ form: import('..').UseFormReturn<Record<string, unknown>>;
52
52
  }) => any>> & {
53
53
  actions?(_: {
54
- form: import('../composables').UseFormReturn<Record<string, unknown>>;
54
+ form: import('..').UseFormReturn<Record<string, unknown>>;
55
55
  builder: UseFormBuilderReturn<Record<string, unknown>>;
56
56
  }): any;
57
57
  actions?(_: {
58
- form: import('../composables').UseFormReturn<Record<string, unknown>>;
58
+ form: import('..').UseFormReturn<Record<string, unknown>>;
59
59
  builder: UseFormBuilderReturn<Record<string, unknown>>;
60
60
  }): any;
61
61
  };
@@ -166,7 +166,7 @@ declare function __VLS_template(): {
166
166
  };
167
167
  type __VLS_TemplateResult = ReturnType<typeof __VLS_template>;
168
168
  declare const __VLS_component: import('vue').DefineComponent<Props, {
169
- form: import('../composables').UseFormReturn<Record<string, unknown>>;
169
+ form: import('..').UseFormReturn<Record<string, unknown>>;
170
170
  validate: () => boolean;
171
171
  reset: (values?: Partial<Record<string, unknown>> | undefined) => void;
172
172
  updateSchema: (schema: FormSchema, values?: Partial<Record<string, unknown>> | undefined) => void;
@@ -41,9 +41,9 @@ declare const _default: import('vue').DefineComponent<Props, {}, {}, {}, {}, imp
41
41
  modelValue: PlateMapEditorState;
42
42
  format: WellPlateFormat;
43
43
  samples: SampleType[];
44
+ showSidebar: boolean;
44
45
  maxPlates: number;
45
46
  showToolbar: boolean;
46
- showSidebar: boolean;
47
47
  allowAddPlates: boolean;
48
48
  allowAddSamples: boolean;
49
49
  }, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, HTMLDivElement>;
@@ -0,0 +1,310 @@
1
+ import { AccountMenuItem, ExperimentSummary, PageSelectorItem, PageSelectorItemInput, PillNavItem, PillNavItemInput, PluginSwitcherInfo, PluginSwitcherPlugin, SidebarToolSection, TopBarSettingsConfig, PillNavOption, TopBarVariant } from '../types';
2
+ import { FormEnhancements, FormSchema } from '../types/form-builder';
3
+ import { ControlComponentBinding, ControlComponentBindingsById, ControlComponentBindingsConfig, ControlComponentPropsByIdMap, ControlComponentPropsMap, ControlModel, ControlModelBinding, ControlSchema, ControlWorkspaceOptions } from '../composables/useControlSchema';
4
+ import { AppExperimentRecord } from '../composables/useAppExperiment';
5
+ type SidebarVariant = 'default' | 'analysis';
6
+ interface Props {
7
+ /** App or plugin title shown in the top bar. */
8
+ title?: string;
9
+ /** Secondary copy shown under the title. */
10
+ subtitle?: string;
11
+ /** Top bar visual treatment. */
12
+ topBarVariant?: TopBarVariant;
13
+ /** Home link used by the top bar brand icon. */
14
+ homePath?: string;
15
+ /** Show the default MINT logo when no icon/logo slot is provided. */
16
+ showLogo?: boolean;
17
+ /** Preferred route-level page selector entries. */
18
+ pageSelector?: PageSelectorItemInput[];
19
+ /** Active page selector id. Defaults to activeView. */
20
+ currentPageSelectorId?: string;
21
+ /** Optional plugin switcher shown in the left navigation position. */
22
+ pluginSwitcher?: PluginSwitcherInfo;
23
+ /** Preferred centered navigation for local modes inside the current route. */
24
+ pillNav?: PillNavItemInput[];
25
+ /** Active centered pill id. Defaults to activeView. */
26
+ currentPillId?: string;
27
+ /** Show the theme toggle button. */
28
+ showThemeToggle?: boolean;
29
+ /** Show the settings button and modal. */
30
+ showSettings?: boolean;
31
+ /** Built-in settings modal configuration. */
32
+ settingsConfig?: TopBarSettingsConfig;
33
+ /** Show the standalone badge when not integrated into the platform. */
34
+ showStandaloneLabel?: boolean;
35
+ /** Custom standalone badge label. */
36
+ standaloneLabel?: string;
37
+ /** Account dropdown entries. */
38
+ accountMenu?: AccountMenuItem[];
39
+ /** Show the notifications icon button. */
40
+ showNotifications?: boolean;
41
+ /** Draw a notification dot on the notifications icon. */
42
+ hasNotificationDot?: boolean;
43
+ /** Show the classic admin shortcut. */
44
+ showAdmin?: boolean;
45
+ /** Route used by the classic admin shortcut. */
46
+ adminPath?: string;
47
+ /** Show the classic profile button when accountMenu is not provided. */
48
+ showProfile?: boolean;
49
+ /** Classic profile display name. */
50
+ userName?: string;
51
+ /** Explicit classic profile initial. */
52
+ userInitial?: string;
53
+ /** Classic profile email. */
54
+ userEmail?: string;
55
+ /** Enable the built-in AppTopBar experiment popover and selector flow. */
56
+ experimentShell?: boolean;
57
+ /** Current experiment mirrored into the AppTopBar experiment chip when experimentShell is enabled. */
58
+ experiment?: AppExperimentRecord | null;
59
+ /** Save handler used by the AppTopBar experiment chip. Return a message to flash success. */
60
+ experimentSave?: () => string | null | Promise<string | null>;
61
+ /** Disable the experiment save action. */
62
+ experimentSaveDisabled?: boolean;
63
+ /** Tooltip shown when the experiment save action is disabled. */
64
+ experimentSaveDisabledMessage?: string;
65
+ /** Active workspace view used by top bar navigation and sidebar panels. */
66
+ activeView?: string;
67
+ /** Initial active view when activeView is uncontrolled. */
68
+ defaultActiveView?: string;
69
+ /** Map of view IDs to sidebar tool sections. */
70
+ panels?: Record<string, SidebarToolSection[]>;
71
+ /** Optional FormBuilder schemas keyed by section ID. */
72
+ forms?: Record<string, FormSchema>;
73
+ /** Sidebar chrome title. */
74
+ sidebarTitle?: string;
75
+ /** Sidebar chrome subtitle. */
76
+ sidebarSubtitle?: string;
77
+ /** Optional compact badge/count rendered in the sidebar header. */
78
+ sidebarBadge?: string | number;
79
+ /** AppSidebar visual preset. `analysis` matches the LEAF-style MINT analysis sidebar language. */
80
+ sidebarVariant?: SidebarVariant;
81
+ /** Sidebar CSS width. Defaults to AppSidebar's variant width. */
82
+ sidebarWidth?: string;
83
+ /** Sidebar position in AppLayout. */
84
+ sidebarPosition?: 'left' | 'right';
85
+ /** Convert the sidebar into an SDK-owned mobile overlay below the AppLayout breakpoint. */
86
+ responsiveSidebar?: boolean;
87
+ /** Render the sidebar shell even when no panel matches the active view. */
88
+ showSidebarWhenEmpty?: boolean;
89
+ /** Disable the built-in sidebar surface entirely. */
90
+ showSidebar?: boolean;
91
+ /** DOM id for the AppSidebar scrollable content area. Use with route/tab-owned Teleport sidebars. */
92
+ sidebarContentId?: string;
93
+ /** Compact AppSidebar density. */
94
+ dense?: boolean;
95
+ /** Show a built-in collapse/expand button in the sidebar chrome. Defaults to AppSidebar's variant behavior. */
96
+ sidebarCollapsible?: boolean;
97
+ /** Sidebar width when collapsed. */
98
+ sidebarCollapsedWidth?: string;
99
+ /** Accessible label for the sidebar collapse action. */
100
+ sidebarCollapseButtonLabel?: string;
101
+ /** Accessible label for the sidebar expand action. */
102
+ sidebarExpandButtonLabel?: string;
103
+ /** Floating AppLayout style. */
104
+ floating?: boolean;
105
+ /** Optional compact control model for generated sidebar forms. */
106
+ model?: ControlModel | ControlModelBinding;
107
+ /** Compact control schema for generated sidebar forms. */
108
+ controls?: ControlSchema;
109
+ /** Options passed to compact control schema generation. */
110
+ controlOptions?: ControlWorkspaceOptions;
111
+ /** Optional SDK component bindings exposed to the default slot with resolved props. */
112
+ componentBindings?: ControlComponentBindingsConfig;
113
+ /** Optional mapping from workspace values to component props exposed to the default slot. */
114
+ componentProps?: ControlComponentPropsMap;
115
+ /** Optional named mappings from workspace values to component props exposed to the default slot. */
116
+ componentPropsById?: ControlComponentPropsByIdMap;
117
+ /** Shared values for auto-rendered sidebar forms. Supports default v-model. */
118
+ modelValue?: Record<string, unknown>;
119
+ /** Shared values for auto-rendered sidebar forms. */
120
+ values?: Record<string, unknown>;
121
+ /** Runtime FormBuilder enhancements for auto-rendered sidebar forms. */
122
+ formEnhancements?: FormEnhancements<Record<string, unknown>>;
123
+ /** Show submit/cancel actions inside auto-rendered sidebar forms. */
124
+ showFormActions?: boolean;
125
+ /** Loading/saving state for auto-rendered sidebar forms. */
126
+ formLoading?: boolean;
127
+ /** Disabled state for auto-rendered sidebar forms. */
128
+ formDisabled?: boolean;
129
+ /** Readonly state for auto-rendered sidebar forms. */
130
+ formReadonly?: boolean;
131
+ /** Size passed to auto-rendered sidebar forms. */
132
+ formSize?: 'sm' | 'md' | 'lg';
133
+ /** Controlled sidebar collapsed state. */
134
+ sidebarCollapsed?: boolean;
135
+ /** Initial sidebar collapsed state when uncontrolled. */
136
+ defaultSidebarCollapsed?: boolean;
137
+ /** Accessible label for the mobile sidebar toggle. */
138
+ sidebarToggleLabel?: string;
139
+ /** Accessible label used when the mobile sidebar is open. */
140
+ sidebarCloseLabel?: string;
141
+ }
142
+ interface PluginWorkspaceSlotProps {
143
+ activeView: string;
144
+ setActiveView: (viewId: string) => void;
145
+ values: Record<string, unknown>;
146
+ componentBindings: ControlComponentBinding[];
147
+ componentBindingsById: ControlComponentBindingsById;
148
+ componentProps: Record<string, unknown>;
149
+ componentPropsById: Record<string, Record<string, unknown>>;
150
+ }
151
+ type ForwardedSlotProps = Record<string, unknown>;
152
+ declare function __VLS_template(): {
153
+ attrs: Partial<{}>;
154
+ slots: Readonly<{
155
+ default?: (props: PluginWorkspaceSlotProps) => unknown;
156
+ topbar?: (props: PluginWorkspaceSlotProps) => unknown;
157
+ sidebar?: (props: PluginWorkspaceSlotProps) => unknown;
158
+ icon?: (props: ForwardedSlotProps) => unknown;
159
+ logo?: (props: ForwardedSlotProps) => unknown;
160
+ 'page-selector-icon'?: (props: ForwardedSlotProps) => unknown;
161
+ 'page-selector-item-icon'?: (props: ForwardedSlotProps) => unknown;
162
+ nav?: (props: ForwardedSlotProps) => unknown;
163
+ center?: (props: ForwardedSlotProps) => unknown;
164
+ actions?: (props: ForwardedSlotProps) => unknown;
165
+ 'account-menu-items'?: (props: ForwardedSlotProps) => unknown;
166
+ 'account-menu-item-icon'?: (props: ForwardedSlotProps) => unknown;
167
+ 'settings-appearance'?: (props: ForwardedSlotProps) => unknown;
168
+ header?: (props: ForwardedSlotProps) => unknown;
169
+ collapsed?: (props: ForwardedSlotProps) => unknown;
170
+ footer?: (props: ForwardedSlotProps) => unknown;
171
+ }> & {
172
+ default?: (props: PluginWorkspaceSlotProps) => unknown;
173
+ topbar?: (props: PluginWorkspaceSlotProps) => unknown;
174
+ sidebar?: (props: PluginWorkspaceSlotProps) => unknown;
175
+ icon?: (props: ForwardedSlotProps) => unknown;
176
+ logo?: (props: ForwardedSlotProps) => unknown;
177
+ 'page-selector-icon'?: (props: ForwardedSlotProps) => unknown;
178
+ 'page-selector-item-icon'?: (props: ForwardedSlotProps) => unknown;
179
+ nav?: (props: ForwardedSlotProps) => unknown;
180
+ center?: (props: ForwardedSlotProps) => unknown;
181
+ actions?: (props: ForwardedSlotProps) => unknown;
182
+ 'account-menu-items'?: (props: ForwardedSlotProps) => unknown;
183
+ 'account-menu-item-icon'?: (props: ForwardedSlotProps) => unknown;
184
+ 'settings-appearance'?: (props: ForwardedSlotProps) => unknown;
185
+ header?: (props: ForwardedSlotProps) => unknown;
186
+ collapsed?: (props: ForwardedSlotProps) => unknown;
187
+ footer?: (props: ForwardedSlotProps) => unknown;
188
+ };
189
+ refs: {};
190
+ rootEl: HTMLDivElement;
191
+ };
192
+ type __VLS_TemplateResult = ReturnType<typeof __VLS_template>;
193
+ declare const __VLS_component: import('vue').DefineComponent<Props, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
194
+ "update:modelValue": (values: Record<string, unknown>) => any;
195
+ "update:values": (values: Record<string, unknown>) => any;
196
+ "sign-out": () => any;
197
+ "profile-click": () => any;
198
+ "admin-click": () => any;
199
+ "page-selector-select": (page: PageSelectorItem) => any;
200
+ "pill-select": (item: PillNavItem) => any;
201
+ "pill-option-select": (option: PillNavOption, item: PillNavItem) => any;
202
+ "plugin-switcher-select": (plugin: PluginSwitcherPlugin) => any;
203
+ "plugin-switcher-install": () => any;
204
+ "account-menu-select": (item: AccountMenuItem) => any;
205
+ "notifications-click": () => any;
206
+ "settings-values-change": (data: Record<string, unknown>) => any;
207
+ "update:toggle": (sectionId: string, value: boolean) => any;
208
+ "form-submit": (sectionId: string, values: Record<string, unknown>) => any;
209
+ "form-cancel": (sectionId: string) => any;
210
+ "update:activeView": (value: string) => any;
211
+ "experiment-select": (experiment: ExperimentSummary) => any;
212
+ "experiment-detach": () => any;
213
+ "update:sidebarCollapsed": (value: boolean) => any;
214
+ }, string, import('vue').PublicProps, Readonly<Props> & Readonly<{
215
+ "onUpdate:modelValue"?: ((values: Record<string, unknown>) => any) | undefined;
216
+ "onUpdate:values"?: ((values: Record<string, unknown>) => any) | undefined;
217
+ "onSign-out"?: (() => any) | undefined;
218
+ "onProfile-click"?: (() => any) | undefined;
219
+ "onAdmin-click"?: (() => any) | undefined;
220
+ "onPage-selector-select"?: ((page: PageSelectorItem) => any) | undefined;
221
+ "onPill-select"?: ((item: PillNavItem) => any) | undefined;
222
+ "onPill-option-select"?: ((option: PillNavOption, item: PillNavItem) => any) | undefined;
223
+ "onPlugin-switcher-select"?: ((plugin: PluginSwitcherPlugin) => any) | undefined;
224
+ "onPlugin-switcher-install"?: (() => any) | undefined;
225
+ "onAccount-menu-select"?: ((item: AccountMenuItem) => any) | undefined;
226
+ "onNotifications-click"?: (() => any) | undefined;
227
+ "onSettings-values-change"?: ((data: Record<string, unknown>) => any) | undefined;
228
+ "onUpdate:toggle"?: ((sectionId: string, value: boolean) => any) | undefined;
229
+ "onForm-submit"?: ((sectionId: string, values: Record<string, unknown>) => any) | undefined;
230
+ "onForm-cancel"?: ((sectionId: string) => any) | undefined;
231
+ "onUpdate:activeView"?: ((value: string) => any) | undefined;
232
+ "onExperiment-select"?: ((experiment: ExperimentSummary) => any) | undefined;
233
+ "onExperiment-detach"?: (() => any) | undefined;
234
+ "onUpdate:sidebarCollapsed"?: ((value: boolean) => any) | undefined;
235
+ }>, {
236
+ values: Record<string, unknown>;
237
+ modelValue: Record<string, unknown>;
238
+ title: string;
239
+ subtitle: string;
240
+ controls: ControlSchema;
241
+ controlOptions: ControlWorkspaceOptions;
242
+ model: ControlModel | ControlModelBinding;
243
+ componentBindings: ControlComponentBindingsConfig;
244
+ componentProps: ControlComponentPropsMap;
245
+ componentPropsById: ControlComponentPropsByIdMap;
246
+ activeView: string;
247
+ panels: Record<string, SidebarToolSection[]>;
248
+ forms: Record<string, FormSchema>;
249
+ experiment: AppExperimentRecord | null;
250
+ dense: boolean;
251
+ userName: string;
252
+ userInitial: string;
253
+ userEmail: string;
254
+ showLogo: boolean;
255
+ homePath: string;
256
+ pageSelector: PageSelectorItemInput[];
257
+ currentPageSelectorId: string;
258
+ pluginSwitcher: PluginSwitcherInfo;
259
+ pillNav: PillNavItemInput[];
260
+ currentPillId: string;
261
+ accountMenu: AccountMenuItem[];
262
+ showNotifications: boolean;
263
+ hasNotificationDot: boolean;
264
+ showThemeToggle: boolean;
265
+ showSettings: boolean;
266
+ settingsConfig: TopBarSettingsConfig;
267
+ showStandaloneLabel: boolean;
268
+ standaloneLabel: string;
269
+ showAdmin: boolean;
270
+ adminPath: string;
271
+ showProfile: boolean;
272
+ floating: boolean;
273
+ formEnhancements: FormEnhancements<Record<string, unknown>>;
274
+ showFormActions: boolean;
275
+ formLoading: boolean;
276
+ formDisabled: boolean;
277
+ formReadonly: boolean;
278
+ formSize: "sm" | "md" | "lg";
279
+ sidebarPosition: "left" | "right";
280
+ sidebarWidth: string;
281
+ responsiveSidebar: boolean;
282
+ sidebarToggleLabel: string;
283
+ sidebarCloseLabel: string;
284
+ topBarVariant: TopBarVariant;
285
+ experimentShell: boolean;
286
+ experimentSave: () => string | null | Promise<string | null>;
287
+ experimentSaveDisabled: boolean;
288
+ experimentSaveDisabledMessage: string;
289
+ defaultActiveView: string;
290
+ sidebarTitle: string;
291
+ sidebarSubtitle: string;
292
+ sidebarBadge: string | number;
293
+ sidebarVariant: SidebarVariant;
294
+ showSidebarWhenEmpty: boolean;
295
+ showSidebar: boolean;
296
+ sidebarContentId: string;
297
+ sidebarCollapsible: boolean;
298
+ sidebarCollapsedWidth: string;
299
+ sidebarCollapseButtonLabel: string;
300
+ sidebarExpandButtonLabel: string;
301
+ sidebarCollapsed: boolean;
302
+ defaultSidebarCollapsed: boolean;
303
+ }, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, HTMLDivElement>;
304
+ declare const _default: __VLS_WithTemplateSlots<typeof __VLS_component, __VLS_TemplateResult["slots"]>;
305
+ export default _default;
306
+ type __VLS_WithTemplateSlots<T, S> = T & {
307
+ new (): {
308
+ $slots: S;
309
+ };
310
+ };
@@ -25,7 +25,7 @@ declare function __VLS_template(): {
25
25
  attrs: Partial<{}>;
26
26
  slots: Partial<Record<`field:${string}`, (_: {
27
27
  field: import('..').FormFieldSchema;
28
- form: import('../composables').UseFormReturn<Record<string, unknown>>;
28
+ form: import('..').UseFormReturn<Record<string, unknown>>;
29
29
  fieldProps: {
30
30
  modelValue: unknown;
31
31
  'onUpdate:modelValue': (value: unknown) => void;
@@ -53,17 +53,17 @@ declare const _default: import('vue').DefineComponent<Props, {}, {}, {}, {}, imp
53
53
  showSampleTypeIndicator: boolean;
54
54
  showLabels: boolean;
55
55
  selectionMode: WellPlateSelectionMode;
56
- sampleColors: Record<string, string>;
57
- legendItems: WellLegendItem[];
58
56
  editable: boolean;
59
57
  editFields: WellEditField[];
60
58
  defaultInjectionVolume: number;
61
59
  showWellIds: boolean;
62
60
  heatmap: HeatmapConfig;
61
+ sampleColors: Record<string, string>;
63
62
  zoom: number;
64
63
  wellShape: WellShape;
65
64
  showWellLabels: boolean;
66
65
  showBadges: boolean;
66
+ legendItems: WellLegendItem[];
67
67
  columnConditions: ColumnCondition[];
68
68
  rowConditions: RowCondition[];
69
69
  }, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {
@@ -22,22 +22,19 @@ export { default as TagsInput } from './TagsInput.vue';
22
22
  export { default as NumberInput } from './NumberInput.vue';
23
23
  export { default as FileUploader } from './FileUploader.vue';
24
24
  export { default as AlertBox } from './AlertBox.vue';
25
- /** @deprecated Use AppToastContainer instead. */
26
- export { default as ToastNotification } from './ToastNotification.vue';
27
25
  export { default as AppToastContainer } from './AppToastContainer.vue';
28
26
  export { default as IconButton } from './IconButton.vue';
29
27
  export { default as ThemeToggle } from './ThemeToggle.vue';
30
- /** @deprecated Use AppTopBar instead. */
31
- export { default as SettingsButton } from './SettingsButton.vue';
32
28
  export { default as CollapsibleCard } from './CollapsibleCard.vue';
33
29
  export { default as AppTopBar } from './AppTopBar.vue';
34
- export { default as AppPageSelector } from './AppPageSelector.vue';
35
- export { default as AppPillNav } from './AppPillNav.vue';
36
30
  export { default as AppAvatarMenu } from './AppAvatarMenu.vue';
37
31
  export { default as AppPluginSwitcher } from './AppPluginSwitcher.vue';
38
32
  export { default as AppSidebar } from './AppSidebar.vue';
39
33
  export { default as AppLayout } from './AppLayout.vue';
34
+ export { default as PluginWorkspaceView } from './PluginWorkspaceView.vue';
35
+ export { default as ComponentBindingRenderer } from './ComponentBindingRenderer.vue';
40
36
  export { default as ControlWorkspaceView } from './ControlWorkspaceView.vue';
37
+ export { default as DoseDesignWorkspaceView } from './DoseDesignWorkspaceView.vue';
41
38
  export { default as AppContainer } from './AppContainer.vue';
42
39
  export { default as PluginIcon } from './PluginIcon.vue';
43
40
  export { default as Skeleton } from './Skeleton.vue';
@@ -62,8 +59,6 @@ export { default as SampleLegend } from './SampleLegend.vue';
62
59
  export { default as PlateMapEditor } from './PlateMapEditor.vue';
63
60
  export { default as ExperimentTimeline } from './ExperimentTimeline.vue';
64
61
  export { default as SampleSelector } from './SampleSelector.vue';
65
- /** @deprecated Use AutoGroupModal instead. */
66
- export { default as GroupingModal } from './GroupingModal.vue';
67
62
  export { default as AutoGroupModal } from './AutoGroupModal.vue';
68
63
  export { default as GroupAssigner } from './GroupAssigner.vue';
69
64
  export { default as MoleculeInput } from './MoleculeInput.vue';
@@ -82,11 +77,7 @@ export { default as StepWizard } from './StepWizard.vue';
82
77
  export { default as AuditTrail } from './AuditTrail.vue';
83
78
  export { default as BatchProgressList } from './BatchProgressList.vue';
84
79
  export { default as FormBuilder } from './FormBuilder.vue';
85
- /** @deprecated Use FormBuilder instead. */
86
- export { default as FormSection } from './FormSection.vue';
87
80
  export { default as FormActions } from './FormActions.vue';
88
- /** @deprecated Use FormBuilder instead. */
89
- export { default as FormFieldRenderer } from './FormFieldRenderer.vue';
90
81
  export { default as ExperimentDataViewer } from './ExperimentDataViewer.vue';
91
82
  export { default as ExperimentCodeBadge } from './ExperimentCodeBadge.vue';
92
83
  export { default as DateTimePicker } from './DateTimePicker.vue';
@@ -1,3 +1,3 @@
1
- import { $ as ExperimentCodeBadge_default, A as DoseCalculator_default, B as ControlWorkspaceView_default, C as SampleSelector_default, D as SampleLegend_default, E as PlateMapEditor_default, F as ProgressBar_default, G as StepWizard_default, H as AppSidebar_default, I as StatusIndicator_default, J as AppAvatarMenu_default, K as AppTopBar_default, L as Divider_default, M as Tooltip_default, N as Breadcrumb_default, O as WellPlate_default, P as Avatar_default, Q as ExperimentSelectorModal_default, R as LoadingSpinner_default, S as BioTemplateRenderer_default, T as ReagentList_default, U as FormBuilder_default, V as AppLayout_default, W as FormActions_default, X as AppPageSelector_default, Y as AppPillNav_default, Z as PluginIcon_default, _ as GroupingModal_default, _t as SegmentedControl_default, a as TimeRangeInput_default, at as CollapsibleCard_default, b as BioTemplatePackWorkspaceView_default, bt as ColorSlider_default, c as FormSection_default, ct as IconButton_default, d as ChemicalFormula_default, dt as AlertBox_default, et as EmptyState_default, f as ScientificNumber_default, ft as FormField_default, g as GroupAssigner_default, gt as BasePill_default, h as ReagentEditor_default, ht as DropdownButton_default, i as ScheduleCalendar_default, it as SettingsModal_default, j as ChartContainer_default, k as ExperimentTimeline_default, l as BatchProgressList_default, lt as ToastNotification_default, m as SampleHierarchyTree_default, mt as Calendar_default, n as FitPanel_default, nt as ExperimentPopover_default, o as ExperimentDataViewer_default, ot as SettingsButton_default, p as ProtocolStepEditor_default, pt as DataFrame_default, q as AppPluginSwitcher_default, r as ResourceCard_default, rt as ConfirmDialog_default, s as FormFieldRenderer_default, st as ThemeToggle_default, tt as Skeleton_default, u as AuditTrail_default, ut as AppToastContainer_default, v as RackEditor_default, vt as BaseModal_default, w as AutoGroupModal_default, x as BioTemplateExperimentWorkspaceView_default, xt as BaseButton_default, y as BioTemplatePresetWorkspaceView_default, yt as BaseTabs_default, z as AppContainer_default } from "../components-D_Sr0adg.js";
2
- import { An as ConcentrationInput_default, Bn as FileUploader_default, Hn as TagsInput_default, In as FormulaInput_default, Nn as MoleculeInput_default, Pn as SequenceInput_default, Un as TimePicker_default, Vn as NumberInput_default, cr as MultiSelect_default, fr as BaseSlider_default, gr as BaseSelect_default, hr as BaseCheckbox_default, jn as UnitInput_default, mr as BaseToggle_default, or as DatePicker_default, pr as BaseRadioGroup_default, vr as BaseTextarea_default, yr as BaseInput_default, zn as DateTimePicker_default } from "../templates-50NPjaxL.js";
3
- export { AlertBox_default as AlertBox, AppAvatarMenu_default as AppAvatarMenu, AppContainer_default as AppContainer, AppLayout_default as AppLayout, AppPageSelector_default as AppPageSelector, AppPillNav_default as AppPillNav, AppPluginSwitcher_default as AppPluginSwitcher, AppSidebar_default as AppSidebar, AppToastContainer_default as AppToastContainer, AppTopBar_default as AppTopBar, AuditTrail_default as AuditTrail, AutoGroupModal_default as AutoGroupModal, Avatar_default as Avatar, BaseButton_default as BaseButton, BaseCheckbox_default as BaseCheckbox, BaseInput_default as BaseInput, BaseModal_default as BaseModal, BasePill_default as BasePill, BaseRadioGroup_default as BaseRadioGroup, BaseSelect_default as BaseSelect, BaseSlider_default as BaseSlider, BaseTabs_default as BaseTabs, BaseTextarea_default as BaseTextarea, BaseToggle_default as BaseToggle, BatchProgressList_default as BatchProgressList, BioTemplateExperimentWorkspaceView_default as BioTemplateExperimentWorkspaceView, BioTemplatePackWorkspaceView_default as BioTemplatePackWorkspaceView, BioTemplatePresetWorkspaceView_default as BioTemplatePresetWorkspaceView, BioTemplateRenderer_default as BioTemplateRenderer, Breadcrumb_default as Breadcrumb, Calendar_default as Calendar, ChartContainer_default as ChartContainer, ChemicalFormula_default as ChemicalFormula, CollapsibleCard_default as CollapsibleCard, ColorSlider_default as ColorSlider, ConcentrationInput_default as ConcentrationInput, ConfirmDialog_default as ConfirmDialog, ControlWorkspaceView_default as ControlWorkspaceView, DataFrame_default as DataFrame, DatePicker_default as DatePicker, DateTimePicker_default as DateTimePicker, Divider_default as Divider, DoseCalculator_default as DoseCalculator, DropdownButton_default as DropdownButton, EmptyState_default as EmptyState, ExperimentCodeBadge_default as ExperimentCodeBadge, ExperimentDataViewer_default as ExperimentDataViewer, ExperimentPopover_default as ExperimentPopover, ExperimentSelectorModal_default as ExperimentSelectorModal, ExperimentTimeline_default as ExperimentTimeline, FileUploader_default as FileUploader, FitPanel_default as FitPanel, FormActions_default as FormActions, FormBuilder_default as FormBuilder, FormField_default as FormField, FormFieldRenderer_default as FormFieldRenderer, FormSection_default as FormSection, FormulaInput_default as FormulaInput, GroupAssigner_default as GroupAssigner, GroupingModal_default as GroupingModal, IconButton_default as IconButton, LoadingSpinner_default as LoadingSpinner, MoleculeInput_default as MoleculeInput, MultiSelect_default as MultiSelect, NumberInput_default as NumberInput, PlateMapEditor_default as PlateMapEditor, PluginIcon_default as PluginIcon, ProgressBar_default as ProgressBar, ProtocolStepEditor_default as ProtocolStepEditor, RackEditor_default as RackEditor, ReagentEditor_default as ReagentEditor, ReagentList_default as ReagentList, ResourceCard_default as ResourceCard, SampleHierarchyTree_default as SampleHierarchyTree, SampleLegend_default as SampleLegend, SampleSelector_default as SampleSelector, ScheduleCalendar_default as ScheduleCalendar, ScientificNumber_default as ScientificNumber, SegmentedControl_default as SegmentedControl, SequenceInput_default as SequenceInput, SettingsButton_default as SettingsButton, SettingsModal_default as SettingsModal, Skeleton_default as Skeleton, StatusIndicator_default as StatusIndicator, StepWizard_default as StepWizard, TagsInput_default as TagsInput, ThemeToggle_default as ThemeToggle, TimePicker_default as TimePicker, TimeRangeInput_default as TimeRangeInput, ToastNotification_default as ToastNotification, Tooltip_default as Tooltip, UnitInput_default as UnitInput, WellPlate_default as WellPlate };
1
+ import { $ as Skeleton_default, A as ComponentBindingRenderer_default, B as PluginWorkspaceView_default, C as Avatar_default, D as AppContainer_default, E as Divider_default, F as PlateMapEditor_default, G as StepWizard_default, H as AppSidebar_default, I as SampleLegend_default, J as AppAvatarMenu_default, K as AppTopBar_default, L as WellPlate_default, M as AutoGroupModal_default, N as LoadingSpinner_default, O as DoseDesignWorkspaceView_default, P as ReagentList_default, Q as EmptyState_default, R as ExperimentTimeline_default, S as Breadcrumb_default, T as StatusIndicator_default, U as FormBuilder_default, V as AppLayout_default, W as FormActions_default, X as ExperimentSelectorModal_default, Y as PluginIcon_default, Z as ExperimentCodeBadge_default, _ as BioTemplatePackWorkspaceView_default, _t as BaseButton_default, a as TimeRangeInput_default, at as IconButton_default, b as ChartContainer_default, c as AuditTrail_default, ct as FormField_default, d as ProtocolStepEditor_default, dt as DropdownButton_default, et as ExperimentPopover_default, f as SampleHierarchyTree_default, ft as BasePill_default, g as BioTemplatePresetWorkspaceView_default, gt as ColorSlider_default, h as RackEditor_default, ht as BaseTabs_default, i as ScheduleCalendar_default, it as ThemeToggle_default, j as SampleSelector_default, k as ControlWorkspaceView_default, l as ChemicalFormula_default, lt as DataFrame_default, m as GroupAssigner_default, mt as BaseModal_default, n as FitPanel_default, nt as SettingsModal_default, o as ExperimentDataViewer_default, ot as AppToastContainer_default, p as ReagentEditor_default, pt as SegmentedControl_default, q as AppPluginSwitcher_default, r as ResourceCard_default, rt as CollapsibleCard_default, s as BatchProgressList_default, st as AlertBox_default, tt as ConfirmDialog_default, u as ScientificNumber_default, ut as Calendar_default, v as BioTemplateExperimentWorkspaceView_default, w as ProgressBar_default, x as Tooltip_default, y as BioTemplateRenderer_default, z as DoseCalculator_default } from "../components-BkGF4B4y.js";
2
+ import { Cr as BaseTextarea_default, Fn as ConcentrationInput_default, Gn as FileUploader_default, In as UnitInput_default, Jn as TimePicker_default, Kn as NumberInput_default, Rn as MoleculeInput_default, Vn as FormulaInput_default, Wn as DateTimePicker_default, _r as BaseSlider_default, br as BaseCheckbox_default, dr as DatePicker_default, pr as MultiSelect_default, qn as TagsInput_default, vr as BaseRadioGroup_default, wr as BaseInput_default, xr as BaseSelect_default, yr as BaseToggle_default, zn as SequenceInput_default } from "../templates-B5jmTWuk.js";
3
+ export { AlertBox_default as AlertBox, AppAvatarMenu_default as AppAvatarMenu, AppContainer_default as AppContainer, AppLayout_default as AppLayout, AppPluginSwitcher_default as AppPluginSwitcher, AppSidebar_default as AppSidebar, AppToastContainer_default as AppToastContainer, AppTopBar_default as AppTopBar, AuditTrail_default as AuditTrail, AutoGroupModal_default as AutoGroupModal, Avatar_default as Avatar, BaseButton_default as BaseButton, BaseCheckbox_default as BaseCheckbox, BaseInput_default as BaseInput, BaseModal_default as BaseModal, BasePill_default as BasePill, BaseRadioGroup_default as BaseRadioGroup, BaseSelect_default as BaseSelect, BaseSlider_default as BaseSlider, BaseTabs_default as BaseTabs, BaseTextarea_default as BaseTextarea, BaseToggle_default as BaseToggle, BatchProgressList_default as BatchProgressList, BioTemplateExperimentWorkspaceView_default as BioTemplateExperimentWorkspaceView, BioTemplatePackWorkspaceView_default as BioTemplatePackWorkspaceView, BioTemplatePresetWorkspaceView_default as BioTemplatePresetWorkspaceView, BioTemplateRenderer_default as BioTemplateRenderer, Breadcrumb_default as Breadcrumb, Calendar_default as Calendar, ChartContainer_default as ChartContainer, ChemicalFormula_default as ChemicalFormula, CollapsibleCard_default as CollapsibleCard, ColorSlider_default as ColorSlider, ComponentBindingRenderer_default as ComponentBindingRenderer, ConcentrationInput_default as ConcentrationInput, ConfirmDialog_default as ConfirmDialog, ControlWorkspaceView_default as ControlWorkspaceView, DataFrame_default as DataFrame, DatePicker_default as DatePicker, DateTimePicker_default as DateTimePicker, Divider_default as Divider, DoseCalculator_default as DoseCalculator, DoseDesignWorkspaceView_default as DoseDesignWorkspaceView, DropdownButton_default as DropdownButton, EmptyState_default as EmptyState, ExperimentCodeBadge_default as ExperimentCodeBadge, ExperimentDataViewer_default as ExperimentDataViewer, ExperimentPopover_default as ExperimentPopover, ExperimentSelectorModal_default as ExperimentSelectorModal, ExperimentTimeline_default as ExperimentTimeline, FileUploader_default as FileUploader, FitPanel_default as FitPanel, FormActions_default as FormActions, FormBuilder_default as FormBuilder, FormField_default as FormField, FormulaInput_default as FormulaInput, GroupAssigner_default as GroupAssigner, IconButton_default as IconButton, LoadingSpinner_default as LoadingSpinner, MoleculeInput_default as MoleculeInput, MultiSelect_default as MultiSelect, NumberInput_default as NumberInput, PlateMapEditor_default as PlateMapEditor, PluginIcon_default as PluginIcon, PluginWorkspaceView_default as PluginWorkspaceView, ProgressBar_default as ProgressBar, ProtocolStepEditor_default as ProtocolStepEditor, RackEditor_default as RackEditor, ReagentEditor_default as ReagentEditor, ReagentList_default as ReagentList, ResourceCard_default as ResourceCard, SampleHierarchyTree_default as SampleHierarchyTree, SampleLegend_default as SampleLegend, SampleSelector_default as SampleSelector, ScheduleCalendar_default as ScheduleCalendar, ScientificNumber_default as ScientificNumber, SegmentedControl_default as SegmentedControl, SequenceInput_default as SequenceInput, SettingsModal_default as SettingsModal, Skeleton_default as Skeleton, StatusIndicator_default as StatusIndicator, StepWizard_default as StepWizard, TagsInput_default as TagsInput, ThemeToggle_default as ThemeToggle, TimePicker_default as TimePicker, TimeRangeInput_default as TimeRangeInput, Tooltip_default as Tooltip, UnitInput_default as UnitInput, WellPlate_default as WellPlate };
@@ -1,4 +1,4 @@
1
- import { PageSelectorItem, PageSelectorItemInput } from '../types/components';
1
+ import { PageSelectorItem, PageSelectorItemInput } from '../../types/components';
2
2
  interface Props {
3
3
  pages: PageSelectorItemInput[];
4
4
  currentPageId?: string;
@@ -1,11 +1,13 @@
1
- import { PillNavItem, PillNavItemInput } from '../types/components';
1
+ import { PillNavItem, PillNavItemInput, PillNavOption } from '../../types/components';
2
2
  interface Props {
3
3
  items: PillNavItemInput[];
4
4
  currentItemId?: string;
5
5
  }
6
6
  declare const _default: import('vue').DefineComponent<Props, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
7
7
  select: (item: PillNavItem) => any;
8
+ "option-select": (option: PillNavOption, item: PillNavItem) => any;
8
9
  }, string, import('vue').PublicProps, Readonly<Props> & Readonly<{
9
10
  onSelect?: ((item: PillNavItem) => any) | undefined;
11
+ "onOption-select"?: ((option: PillNavOption, item: PillNavItem) => any) | undefined;
10
12
  }>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, HTMLElement>;
11
13
  export default _default;
@@ -1,4 +1,4 @@
1
- import { CalendarGridDay } from '../composables/useCalendarGrid';
1
+ import { CalendarGridDay } from '../../composables/useCalendarGrid';
2
2
  interface Props {
3
3
  weekDays: readonly string[];
4
4
  monthYear: string;
@@ -7,10 +7,10 @@ declare function __VLS_template(): {
7
7
  attrs: Partial<{}>;
8
8
  slots: Partial<Record<`section:${string}`, (_: {
9
9
  section: FormSectionSchema;
10
- form: import('../../composables').UseFormReturn<Record<string, unknown>>;
10
+ form: import('../..').UseFormReturn<Record<string, unknown>>;
11
11
  }) => any>> & Partial<Record<`field:${string}`, (_: {
12
12
  field: import('../..').FormFieldSchema;
13
- form: import('../../composables').UseFormReturn<Record<string, unknown>>;
13
+ form: import('../..').UseFormReturn<Record<string, unknown>>;
14
14
  fieldProps: {
15
15
  modelValue: unknown;
16
16
  'onUpdate:modelValue': (value: unknown) => void;
@@ -19,7 +19,7 @@ declare function __VLS_template(): {
19
19
  };
20
20
  }) => any>> & Partial<Record<`field:${string}`, (_: {
21
21
  field: import('../..').FormFieldSchema;
22
- form: import('../../composables').UseFormReturn<Record<string, unknown>>;
22
+ form: import('../..').UseFormReturn<Record<string, unknown>>;
23
23
  fieldProps: {
24
24
  modelValue: unknown;
25
25
  'onUpdate:modelValue': (value: unknown) => void;
@@ -27,7 +27,7 @@ declare function __VLS_template(): {
27
27
  error: string | null;
28
28
  };
29
29
  }) => any>> & Partial<Record<`section:${string}:after`, (_: {
30
- form: import('../../composables').UseFormReturn<Record<string, unknown>>;
30
+ form: import('../..').UseFormReturn<Record<string, unknown>>;
31
31
  }) => any>>;
32
32
  refs: {};
33
33
  rootEl: any;
@@ -1,4 +1,4 @@
1
- import { Well, WellEditData, WellEditField } from '../types';
1
+ import { Well, WellEditData, WellEditField } from '../../types';
2
2
  interface Props {
3
3
  wellId: string;
4
4
  wellData?: Partial<Well>;