@morscherlab/mint-sdk 1.4.0-beta.9 → 1.4.1
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 +14 -3
- package/dist/{AlertBox-B2Bgr3ei.js → AlertBox-DwgNTEqf.js} +3 -3
- package/dist/{AlertBox-B2Bgr3ei.js.map → AlertBox-DwgNTEqf.js.map} +1 -1
- package/dist/{AppSidebar-Dq9W1jE2.js → AppSidebar-CZZaxni0.js} +1103 -144
- package/dist/AppSidebar-CZZaxni0.js.map +1 -0
- package/dist/{ConfirmDialog-nbJj51is.js → ConfirmDialog-CjWoxAD1.js} +2 -2
- package/dist/{ConfirmDialog-nbJj51is.js.map → ConfirmDialog-CjWoxAD1.js.map} +1 -1
- package/dist/{ExperimentPopover-5T1fAq2L.js → ExperimentPopover-DujiuQIO.js} +5 -5
- package/dist/{ExperimentPopover-5T1fAq2L.js.map → ExperimentPopover-DujiuQIO.js.map} +1 -1
- package/dist/{ExperimentSelectorModal-65peG4Up.js → ExperimentSelectorModal-B4j4eUOJ.js} +114 -98
- package/dist/ExperimentSelectorModal-B4j4eUOJ.js.map +1 -0
- package/dist/{SegmentedControl-BtnnjWzs.js → SegmentedControl-DyUPH3I5.js} +2 -2
- package/dist/{SegmentedControl-BtnnjWzs.js.map → SegmentedControl-DyUPH3I5.js.map} +1 -1
- package/dist/{SettingsModal-483nyI6b.js → SettingsModal-D2MOOtuO.js} +26 -25
- package/dist/SettingsModal-D2MOOtuO.js.map +1 -0
- package/dist/__stories__/experiment-helpers.d.ts +10 -0
- package/dist/__tests__/components/AppTopBarOnboarding.test.d.ts +1 -0
- package/dist/__tests__/components/FloatingPanelsInModal.test.d.ts +1 -0
- package/dist/__tests__/composables/useFloatingPanel.test.d.ts +1 -0
- package/dist/__tests__/composables/useOnboarding.test.d.ts +1 -0
- package/dist/__tests__/styles/paletteTokens.test.d.ts +1 -0
- package/dist/__tests__/styles/v2AuditRules.test.d.ts +1 -0
- package/dist/components/AppTopBar.vue.d.ts +20 -5
- package/dist/components/BaseButton.vue.d.ts +4 -2
- package/dist/components/ExperimentSelectorModal.vue.d.ts +15 -1
- package/dist/components/JobsStatusTray.vue.d.ts +15 -4
- package/dist/components/PluginWorkspaceView.props.d.ts +3 -0
- package/dist/components/PluginWorkspaceView.vue.d.ts +3 -0
- package/dist/components/SmartGroupFieldRecipe.vue.d.ts +3 -3
- package/dist/components/internal/AppTopBarOnboardingInternal.vue.d.ts +7 -0
- package/dist/components/internal/AppTopBarPageSelectorInternal.vue.d.ts +2 -1
- package/dist/components/internal/AutoGroupModalInternal.vue.d.ts +2 -2
- package/dist/components/internal/OnboardingLayerInternal.vue.d.ts +7 -0
- package/dist/components/internal/WorkspaceShellInternal.vue.d.ts +8 -0
- package/dist/composables/pluginWorkspaceModel.d.ts +2 -2
- package/dist/composables/useFileImport.d.ts +7 -0
- package/dist/composables/useFloatingPanel.d.ts +29 -0
- package/dist/composables/useJobCenter.d.ts +41 -3
- package/dist/composables/useOnboarding.d.ts +119 -0
- package/dist/{controlSchemaModel-B8CTXagP.js → controlSchemaModel-Bsg0t5Ab.js} +2 -2
- package/dist/{controlSchemaModel-B8CTXagP.js.map → controlSchemaModel-Bsg0t5Ab.js.map} +1 -1
- package/dist/{data-CgILxDLW.js → data-Boeh4uPI.js} +13 -12
- package/dist/{data-CgILxDLW.js.map → data-Boeh4uPI.js.map} +1 -1
- package/dist/data.d.ts +1 -1
- package/dist/data.js +9 -9
- package/dist/{experiment-43OJtH7R.js → experiment-DyO54FQB.js} +25 -61
- package/dist/experiment-DyO54FQB.js.map +1 -0
- package/dist/{experimentStatus-Cqp6qNrR.js → experimentStatus-DCn2QKG7.js} +2 -2
- package/dist/{experimentStatus-Cqp6qNrR.js.map → experimentStatus-DCn2QKG7.js.map} +1 -1
- package/dist/index.js +20 -20
- package/dist/{install-BtLWTk6H.js → install-BEHp7Mo-.js} +15 -15
- package/dist/{install-BtLWTk6H.js.map → install-BEHp7Mo-.js.map} +1 -1
- package/dist/install.js +1 -1
- package/dist/{lab-MHzp-_J8.js → lab-D61eaX6f.js} +68 -61
- package/dist/{lab-MHzp-_J8.js.map → lab-D61eaX6f.js.map} +1 -1
- package/dist/lab.js +4 -4
- package/dist/{records-B6gpM_3e.js → records-D4aQXyZu.js} +193 -133
- package/dist/records-D4aQXyZu.js.map +1 -0
- package/dist/{runtime-7vfl_bI3.js → runtime-q-R0CNLh.js} +400 -33
- package/dist/runtime-q-R0CNLh.js.map +1 -0
- package/dist/runtime.d.ts +1 -1
- package/dist/runtime.js +7 -7
- package/dist/{shell-Cs9OJMnm.js → shell-6CGFvUUw.js} +10 -5
- package/dist/{shell-Cs9OJMnm.js.map → shell-6CGFvUUw.js.map} +1 -1
- package/dist/shell.d.ts +1 -0
- package/dist/shell.js +6 -6
- package/dist/stores/index.d.ts +1 -1
- package/dist/stores/index.js +2 -2
- package/dist/stores/settings.d.ts +4 -12
- package/dist/styles.css +1191 -479
- package/dist/types/components.d.ts +2 -0
- package/dist/types/index.d.ts +1 -1
- package/dist/types/jobs.d.ts +9 -0
- package/dist/types/platform.d.ts +1 -1
- package/dist/{useDropdownState-8yWMu-7_.js → useDropdownState-uFIz6Yv8.js} +16 -4
- package/dist/useDropdownState-uFIz6Yv8.js.map +1 -0
- package/dist/{useExperimentSamples-DHnxKFAF.js → useExperimentSamples-QEFoq4tf.js} +48 -6
- package/dist/useExperimentSamples-QEFoq4tf.js.map +1 -0
- package/dist/{useListReorder-BitdUhxn.js → useListReorder-DsuzwWGS.js} +122 -172
- package/dist/useListReorder-DsuzwWGS.js.map +1 -0
- package/dist/{useRackEditor-DiwCt77M.js → useRackEditor-KpZ4iJ6o.js} +22 -32
- package/dist/useRackEditor-KpZ4iJ6o.js.map +1 -0
- package/dist/useRealtime-B58Lo-Tm.js +508 -0
- package/dist/useRealtime-B58Lo-Tm.js.map +1 -0
- package/dist/{useRequest-D506eHi8.js → useRequest-BuDmW8Jc.js} +8 -37
- package/dist/useRequest-BuDmW8Jc.js.map +1 -0
- package/package.json +3 -2
- package/src/__stories__/experiment-helpers.ts +3 -3
- package/src/__tests__/components/ActionMenu.test.ts +2 -2
- package/src/__tests__/components/AppTopBar.test.ts +206 -1
- package/src/__tests__/components/AppTopBarOnboarding.test.ts +160 -0
- package/src/__tests__/components/AppTopBarPageSelector.test.ts +125 -9
- package/src/__tests__/components/BaseButton.test.ts +19 -0
- package/src/__tests__/components/BaseModal.test.ts +13 -0
- package/src/__tests__/components/ExperimentSelectorModal.test.ts +34 -1
- package/src/__tests__/components/FloatingPanelsInModal.test.ts +94 -0
- package/src/__tests__/components/GeneratedPluginView.test.ts +1 -1
- package/src/__tests__/components/JobsStatusTray.test.ts +373 -71
- package/src/__tests__/components/PluginWorkspaceView.test.ts +63 -1
- package/src/__tests__/components/SampleSelector.test.ts +20 -0
- package/src/__tests__/components/SettingsModal.test.ts +9 -2
- package/src/__tests__/composables/useFileImport.test.ts +36 -0
- package/src/__tests__/composables/useFloatingPanel.test.ts +68 -0
- package/src/__tests__/composables/useJobCenter.test.ts +262 -3
- package/src/__tests__/composables/useOnboarding.test.ts +317 -0
- package/src/__tests__/docs/frontendDocsCatalog.test.ts +4 -3
- package/src/__tests__/fixtures/table-import/cells.xlsx +0 -0
- package/src/__tests__/fixtures/table-import/samples.xlsx +0 -0
- package/src/__tests__/stores/settings.test.ts +21 -21
- package/src/__tests__/styles/cssTokens.test.ts +4 -1
- package/src/__tests__/styles/menusShellRefresh.test.ts +8 -2
- package/src/__tests__/styles/paletteTokens.test.ts +44 -0
- package/src/__tests__/styles/v2AuditRules.test.ts +104 -0
- package/src/components/ActionMenu.vue +6 -37
- package/src/components/AppTopBar.onboarding.story.vue +69 -0
- package/src/components/AppTopBar.story.vue +59 -4
- package/src/components/AppTopBar.vue +132 -10
- package/src/components/BaseButton.vue +16 -2
- package/src/components/BaseModal.vue +2 -1
- package/src/components/ExperimentSelectorModal.story.vue +38 -0
- package/src/components/ExperimentSelectorModal.vue +20 -1
- package/src/components/GeneratedPluginView.vue +4 -9
- package/src/components/GeneratedResultRenderer.vue +3 -4
- package/src/components/JobsStatusTray.story.vue +97 -43
- package/src/components/JobsStatusTray.vue +287 -290
- package/src/components/LayoutResizeHandle.story.vue +65 -4
- package/src/components/PluginWorkspaceView.props.ts +3 -0
- package/src/components/PluginWorkspaceView.vue +17 -0
- package/src/components/SampleSelector.story.vue +21 -6
- package/src/components/SampleSelector.vue +10 -3
- package/src/components/SectionCard.story.vue +33 -0
- package/src/components/SettingsModal.vue +7 -12
- package/src/components/Tooltip.vue +9 -32
- package/src/components/internal/AppTopBarOnboardingInternal.vue +172 -0
- package/src/components/internal/AppTopBarPageSelectorInternal.vue +140 -72
- package/src/components/internal/DatePickerDateInternal.vue +7 -45
- package/src/components/internal/DatePickerDateTimeInternal.vue +7 -1
- package/src/components/internal/DatePickerTimeInternal.vue +8 -1
- package/src/components/internal/NumberUnitInputInternal.vue +4 -18
- package/src/components/internal/OnboardingLayerInternal.vue +173 -0
- package/src/components/internal/SelectMultipleInternal.vue +6 -1
- package/src/components/internal/SelectSearchableInternal.vue +6 -1
- package/src/components/internal/WellEditPopupInternal.vue +11 -22
- package/src/components/internal/WorkspaceShellInternal.vue +12 -0
- package/src/composables/pluginWorkspaceModel.ts +2 -2
- package/src/composables/useFileImport.ts +51 -1
- package/src/composables/useFloatingPanel.ts +107 -0
- package/src/composables/useJobCenter.ts +188 -6
- package/src/composables/useOnboarding.ts +465 -0
- package/src/composables/usePluginWorkspace.ts +1 -1
- package/src/data.ts +1 -0
- package/src/runtime.ts +2 -1
- package/src/shell.ts +17 -0
- package/src/stores/index.ts +0 -2
- package/src/stores/settings.ts +20 -50
- package/src/styles/components/action-menu.css +1 -1
- package/src/styles/components/app-layout.css +6 -3
- package/src/styles/components/app-page-selector.css +120 -45
- package/src/styles/components/app-top-bar.css +165 -3
- package/src/styles/components/button.css +8 -0
- package/src/styles/components/dataframe.css +1 -1
- package/src/styles/components/date-picker.css +4 -2
- package/src/styles/components/datetime-picker.css +4 -4
- package/src/styles/components/experiment-selector-modal.css +13 -0
- package/src/styles/components/jobs-status-tray.css +134 -296
- package/src/styles/components/layout-resize-handle.css +59 -16
- package/src/styles/components/modal.css +3 -3
- package/src/styles/components/number-input.css +1 -1
- package/src/styles/components/onboarding.css +368 -0
- package/src/styles/components/progress-bar.css +3 -3
- package/src/styles/components/sample-selector.css +43 -0
- package/src/styles/components/searchable-select.css +3 -7
- package/src/styles/components/section-card.css +30 -6
- package/src/styles/components/settings-modal.css +7 -2
- package/src/styles/components/time-picker.css +3 -6
- package/src/styles/components/toast.css +1 -1
- package/src/styles/components/tooltip.css +2 -2
- package/src/styles/components/unit-input.css +1 -1
- package/src/styles/components/well-edit-popup.css +2 -2
- package/src/styles/index.css +1 -0
- package/src/styles/variables.css +153 -15
- package/src/types/components.ts +2 -0
- package/src/types/index.ts +1 -0
- package/src/types/jobs.ts +10 -0
- package/src/types/platform.ts +1 -1
- package/dist/AppSidebar-Dq9W1jE2.js.map +0 -1
- package/dist/ExperimentSelectorModal-65peG4Up.js.map +0 -1
- package/dist/SettingsModal-483nyI6b.js.map +0 -1
- package/dist/experiment-43OJtH7R.js.map +0 -1
- package/dist/records-B6gpM_3e.js.map +0 -1
- package/dist/runtime-7vfl_bI3.js.map +0 -1
- package/dist/useDropdownState-8yWMu-7_.js.map +0 -1
- package/dist/useExperimentSamples-DHnxKFAF.js.map +0 -1
- package/dist/useListReorder-BitdUhxn.js.map +0 -1
- package/dist/useRackEditor-DiwCt77M.js.map +0 -1
- package/dist/useRealtime-C3iy9QkU.js +0 -699
- package/dist/useRealtime-C3iy9QkU.js.map +0 -1
- package/dist/useRequest-D506eHi8.js.map +0 -1
package/dist/lab.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { P as time_exports } from "./records-
|
|
2
|
-
import { C as
|
|
3
|
-
import { C as defineWellPlateControlProps, S as defineDoseDesignControlModel, T as defineWellPlateDoseControlProps, _ as SampleSelector_default, a as useReagentSeries, c as InstrumentStatusPanels_default, d as ChemicalFormula_default, f as AdductText_default, g as SampleHierarchyTree_default, h as useProtocolTemplates, i as generateDilutionSeries, l as InstrumentStateBadge_default, m as ProtocolStepEditor_default, n as DEFAULT_PRESETS, o as ResourceCard_default, p as ScientificNumber_default, r as DEFAULT_UNITS, s as TimeRangeInput_default, u as SequenceProgressBar_default, v as useSampleGroups, w as defineWellPlateDoseComponentBindings, x as defineDoseCalculatorControlProps } from "./lab-
|
|
4
|
-
import { C as hexToHsl, E as sampleTypeMarker, S as deriveShade, T as WellPlate_default, _ as mintPlotlyTemplate, b as PlateEditor_default, g as ChartContainer_default, h as PlotlyChart_default, n as ScheduleCalendar_default, r as useScheduleDrag, t as useRackEditor, v as DoseCalculator_default, w as hslToHex, y as dose_exports } from "./useRackEditor-
|
|
1
|
+
import { P as time_exports } from "./records-D4aQXyZu.js";
|
|
2
|
+
import { C as FormulaInput_default, L as definePlateEditor, S as useSequenceUtils, a as StepWizard_default, b as MoleculeInput_default, v as ConcentrationInput_default, w as formula_exports, x as SequenceInput_default, y as useConcentrationUnits, z as defineWellPlate } from "./useListReorder-DsuzwWGS.js";
|
|
3
|
+
import { C as defineWellPlateControlProps, S as defineDoseDesignControlModel, T as defineWellPlateDoseControlProps, _ as SampleSelector_default, a as useReagentSeries, c as InstrumentStatusPanels_default, d as ChemicalFormula_default, f as AdductText_default, g as SampleHierarchyTree_default, h as useProtocolTemplates, i as generateDilutionSeries, l as InstrumentStateBadge_default, m as ProtocolStepEditor_default, n as DEFAULT_PRESETS, o as ResourceCard_default, p as ScientificNumber_default, r as DEFAULT_UNITS, s as TimeRangeInput_default, u as SequenceProgressBar_default, v as useSampleGroups, w as defineWellPlateDoseComponentBindings, x as defineDoseCalculatorControlProps } from "./lab-D61eaX6f.js";
|
|
4
|
+
import { C as hexToHsl, E as sampleTypeMarker, S as deriveShade, T as WellPlate_default, _ as mintPlotlyTemplate, b as PlateEditor_default, g as ChartContainer_default, h as PlotlyChart_default, n as ScheduleCalendar_default, r as useScheduleDrag, t as useRackEditor, v as DoseCalculator_default, w as hslToHex, y as dose_exports } from "./useRackEditor-KpZ4iJ6o.js";
|
|
5
5
|
export { AdductText_default as AdductText, ChartContainer_default as ChartContainer, ChemicalFormula_default as ChemicalFormula, ConcentrationInput_default as ConcentrationInput, DEFAULT_PRESETS, DEFAULT_UNITS, DoseCalculator_default as DoseCalculator, FormulaInput_default as FormulaInput, InstrumentStateBadge_default as InstrumentStateBadge, InstrumentStatusPanels_default as InstrumentStatusPanels, MoleculeInput_default as MoleculeInput, PlateEditor_default as PlateEditor, PlotlyChart_default as PlotlyChart, ProtocolStepEditor_default as ProtocolStepEditor, ResourceCard_default as ResourceCard, SampleHierarchyTree_default as SampleHierarchyTree, SampleSelector_default as SampleSelector, ScheduleCalendar_default as ScheduleCalendar, ScientificNumber_default as ScientificNumber, SequenceInput_default as SequenceInput, SequenceProgressBar_default as SequenceProgressBar, StepWizard_default as StepWizard, TimeRangeInput_default as TimeRangeInput, WellPlate_default as WellPlate, defineDoseCalculatorControlProps, defineDoseDesignControlModel, definePlateEditor, defineWellPlate, defineWellPlateControlProps, defineWellPlateDoseComponentBindings, defineWellPlateDoseControlProps, deriveShade, dose_exports as dose, formula_exports as formula, generateDilutionSeries, hexToHsl, hslToHex, mintPlotlyTemplate, sampleTypeMarker, time_exports as time, useConcentrationUnits, useProtocolTemplates, useRackEditor, useReagentSeries, useSampleGroups, useScheduleDrag, useSequenceUtils };
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { a as BaseButton_default, i as useEventListener, o as __exportAll, t as useDropdownState } from "./useDropdownState-
|
|
2
|
-
import { t as useExperimentStore } from "./experiment-
|
|
1
|
+
import { a as BaseButton_default, i as useEventListener, o as __exportAll, t as useDropdownState } from "./useDropdownState-uFIz6Yv8.js";
|
|
2
|
+
import { t as useExperimentStore } from "./experiment-DyO54FQB.js";
|
|
3
3
|
import { Fragment, Teleport, TransitionGroup, computed, createBlock, createCommentVNode, createElementBlock, createElementVNode, createSlots, createTextVNode, createVNode, defineComponent, guardReactiveProps, mergeProps, nextTick, normalizeClass, normalizeProps, normalizeStyle, onBeforeUnmount, onScopeDispose, openBlock, provide, ref, renderList, renderSlot, toDisplayString, toValue, unref, useAttrs, useId, useSlots, useTemplateRef, vModelText, watch, withCtx, withDirectives, withKeys, withModifiers } from "vue";
|
|
4
4
|
import { Check, ChevronDown, ChevronsUpDown, X } from "lucide-vue-next";
|
|
5
|
-
import { computePosition, flip, offset, shift } from "@floating-ui/dom";
|
|
5
|
+
import { autoUpdate, computePosition, flip, hide, offset, shift, size } from "@floating-ui/dom";
|
|
6
6
|
//#region src/components/BaseInput.vue?vue&type=script&setup=true&lang.ts
|
|
7
7
|
var _hoisted_1$12 = [
|
|
8
8
|
"value",
|
|
@@ -207,6 +207,84 @@ function findOptionByDomValue(options, value) {
|
|
|
207
207
|
return options.find((option) => String(option.value) === value);
|
|
208
208
|
}
|
|
209
209
|
//#endregion
|
|
210
|
+
//#region src/composables/useFloatingPanel.ts
|
|
211
|
+
/**
|
|
212
|
+
* Places `floating` next to `reference` with fixed positioning (offset, flip,
|
|
213
|
+
* shift, size, hide). A fixed panel escapes the `overflow` of its ancestors (a
|
|
214
|
+
* modal body) unless one of them has a transform, so it can stay in the DOM right
|
|
215
|
+
* after its trigger: Tab order, focus traps and outside-click checks are those of
|
|
216
|
+
* an in-place panel. The size middleware publishes the free height as
|
|
217
|
+
* `--mint-floating-available-height`; a panel whose list scrolls caps its
|
|
218
|
+
* `max-height` with it.
|
|
219
|
+
*/
|
|
220
|
+
function useFloatingPanel(reference, floating, open, options = {}) {
|
|
221
|
+
const style = ref({
|
|
222
|
+
position: "fixed",
|
|
223
|
+
left: "0px",
|
|
224
|
+
top: "0px"
|
|
225
|
+
});
|
|
226
|
+
const placement = ref(toValue(options.placement) ?? "bottom-start");
|
|
227
|
+
async function update() {
|
|
228
|
+
const referenceEl = toValue(reference);
|
|
229
|
+
const floatingEl = floating.value;
|
|
230
|
+
if (!referenceEl || !floatingEl) return;
|
|
231
|
+
const result = await computePosition(referenceEl, floatingEl, {
|
|
232
|
+
placement: toValue(options.placement) ?? "bottom-start",
|
|
233
|
+
strategy: "fixed",
|
|
234
|
+
middleware: [
|
|
235
|
+
offset(options.offset ?? 4),
|
|
236
|
+
flip(),
|
|
237
|
+
shift({ padding: 8 }),
|
|
238
|
+
size({
|
|
239
|
+
padding: 8,
|
|
240
|
+
apply({ availableHeight, rects, elements }) {
|
|
241
|
+
const target = elements.floating.style;
|
|
242
|
+
target.setProperty("--mint-floating-available-height", `${Math.max(0, availableHeight)}px`);
|
|
243
|
+
if (options.matchWidth) {
|
|
244
|
+
target.minWidth = `${rects.reference.width}px`;
|
|
245
|
+
target.maxWidth = "28rem";
|
|
246
|
+
}
|
|
247
|
+
}
|
|
248
|
+
}),
|
|
249
|
+
hide()
|
|
250
|
+
]
|
|
251
|
+
});
|
|
252
|
+
const next = {
|
|
253
|
+
position: "fixed",
|
|
254
|
+
left: `${result.x}px`,
|
|
255
|
+
top: `${result.y}px`
|
|
256
|
+
};
|
|
257
|
+
if (result.middlewareData.hide?.referenceHidden) next.visibility = "hidden";
|
|
258
|
+
const current = style.value;
|
|
259
|
+
if (current.left !== next.left || current.top !== next.top || current.visibility !== next.visibility) style.value = next;
|
|
260
|
+
placement.value = result.placement;
|
|
261
|
+
}
|
|
262
|
+
let stop;
|
|
263
|
+
function release() {
|
|
264
|
+
stop?.();
|
|
265
|
+
stop = void 0;
|
|
266
|
+
}
|
|
267
|
+
watch([
|
|
268
|
+
open,
|
|
269
|
+
() => toValue(reference),
|
|
270
|
+
floating
|
|
271
|
+
], ([isOpen, referenceEl, floatingEl]) => {
|
|
272
|
+
release();
|
|
273
|
+
if (!isOpen || !referenceEl || !floatingEl) return;
|
|
274
|
+
if (options.follow ?? true) stop = autoUpdate(referenceEl, floatingEl, () => void update());
|
|
275
|
+
else update();
|
|
276
|
+
}, {
|
|
277
|
+
flush: "post",
|
|
278
|
+
immediate: true
|
|
279
|
+
});
|
|
280
|
+
onScopeDispose(release);
|
|
281
|
+
return {
|
|
282
|
+
style,
|
|
283
|
+
placement,
|
|
284
|
+
update
|
|
285
|
+
};
|
|
286
|
+
}
|
|
287
|
+
//#endregion
|
|
210
288
|
//#region src/composables/useSelectionLimit.ts
|
|
211
289
|
/** Shared cap logic for chip, tag, and multi-select controls. */
|
|
212
290
|
function useSelectionLimit(options) {
|
|
@@ -342,21 +420,17 @@ var _hoisted_4$8 = {
|
|
|
342
420
|
key: 0,
|
|
343
421
|
class: "mint-multi-select__placeholder"
|
|
344
422
|
};
|
|
345
|
-
var _hoisted_5$8 = {
|
|
346
|
-
|
|
347
|
-
|
|
348
|
-
};
|
|
349
|
-
var _hoisted_6$8 = { class: "mint-searchable-select__search-wrap" };
|
|
350
|
-
var _hoisted_7$7 = ["aria-expanded", "aria-activedescendant"];
|
|
351
|
-
var _hoisted_8$3 = [
|
|
423
|
+
var _hoisted_5$8 = { class: "mint-searchable-select__search-wrap" };
|
|
424
|
+
var _hoisted_6$8 = ["aria-expanded", "aria-activedescendant"];
|
|
425
|
+
var _hoisted_7$7 = [
|
|
352
426
|
"id",
|
|
353
427
|
"aria-selected",
|
|
354
428
|
"aria-disabled",
|
|
355
429
|
"onMouseenter",
|
|
356
430
|
"onClick"
|
|
357
431
|
];
|
|
358
|
-
var
|
|
359
|
-
var
|
|
432
|
+
var _hoisted_8$3 = { class: "mint-menu-item__label" };
|
|
433
|
+
var _hoisted_9$3 = {
|
|
360
434
|
key: 0,
|
|
361
435
|
class: "mint-searchable-select__empty"
|
|
362
436
|
};
|
|
@@ -396,6 +470,7 @@ var SelectMultipleInternal_default = /* @__PURE__ */ defineComponent({
|
|
|
396
470
|
const root = ref(null);
|
|
397
471
|
const field = ref(null);
|
|
398
472
|
const search = ref(null);
|
|
473
|
+
const panel = ref(null);
|
|
399
474
|
const open = ref(false);
|
|
400
475
|
const query = ref("");
|
|
401
476
|
const activeIndex = ref(-1);
|
|
@@ -468,6 +543,7 @@ var SelectMultipleInternal_default = /* @__PURE__ */ defineComponent({
|
|
|
468
543
|
else return;
|
|
469
544
|
event.preventDefault();
|
|
470
545
|
}
|
|
546
|
+
const { style: panelStyle } = useFloatingPanel(field, panel, open, { matchWidth: true });
|
|
471
547
|
watch(visibleOptions, (options) => {
|
|
472
548
|
activeIndex.value = options.length > 0 ? 0 : -1;
|
|
473
549
|
});
|
|
@@ -527,7 +603,13 @@ var SelectMultipleInternal_default = /* @__PURE__ */ defineComponent({
|
|
|
527
603
|
class: "mint-multi-select__icon",
|
|
528
604
|
size: 14,
|
|
529
605
|
"aria-hidden": "true"
|
|
530
|
-
})], 16, _hoisted_1$11), open.value ? (openBlock(), createElementBlock("div",
|
|
606
|
+
})], 16, _hoisted_1$11), open.value ? (openBlock(), createElementBlock("div", {
|
|
607
|
+
key: 0,
|
|
608
|
+
ref_key: "panel",
|
|
609
|
+
ref: panel,
|
|
610
|
+
class: "mint-popover mint-searchable-select__panel",
|
|
611
|
+
style: normalizeStyle(unref(panelStyle))
|
|
612
|
+
}, [createElementVNode("div", _hoisted_5$8, [_cache[4] || (_cache[4] = createElementVNode("svg", {
|
|
531
613
|
viewBox: "0 0 20 20",
|
|
532
614
|
fill: "none",
|
|
533
615
|
stroke: "currentColor",
|
|
@@ -550,7 +632,7 @@ var SelectMultipleInternal_default = /* @__PURE__ */ defineComponent({
|
|
|
550
632
|
"aria-activedescendant": activeDescendant.value,
|
|
551
633
|
"aria-autocomplete": "list",
|
|
552
634
|
onKeydown: handleSearchKeydown
|
|
553
|
-
}, null, 40,
|
|
635
|
+
}, null, 40, _hoisted_6$8), [[vModelText, query.value]])]), createElementVNode("ul", {
|
|
554
636
|
id: listboxId,
|
|
555
637
|
class: "mint-searchable-select__list",
|
|
556
638
|
role: "listbox",
|
|
@@ -573,8 +655,8 @@ var SelectMultipleInternal_default = /* @__PURE__ */ defineComponent({
|
|
|
573
655
|
key: 0,
|
|
574
656
|
size: 10,
|
|
575
657
|
"stroke-width": 3.5
|
|
576
|
-
})) : createCommentVNode("", true)], 2), createElementVNode("span",
|
|
577
|
-
}), 128)), visibleOptions.value.length === 0 ? (openBlock(), createElementBlock("li",
|
|
658
|
+
})) : createCommentVNode("", true)], 2), createElementVNode("span", _hoisted_8$3, toDisplayString(option.label), 1)], 42, _hoisted_7$7);
|
|
659
|
+
}), 128)), visibleOptions.value.length === 0 ? (openBlock(), createElementBlock("li", _hoisted_9$3, "No matching options")) : createCommentVNode("", true)])], 4)) : createCommentVNode("", true)], 38);
|
|
578
660
|
};
|
|
579
661
|
}
|
|
580
662
|
});
|
|
@@ -587,39 +669,35 @@ var _hoisted_1$10 = [
|
|
|
587
669
|
"aria-invalid",
|
|
588
670
|
"aria-expanded"
|
|
589
671
|
];
|
|
590
|
-
var _hoisted_2$10 = {
|
|
591
|
-
|
|
592
|
-
class: "mint-popover mint-searchable-select__panel"
|
|
593
|
-
};
|
|
594
|
-
var _hoisted_3$10 = { class: "mint-searchable-select__search-wrap" };
|
|
595
|
-
var _hoisted_4$7 = [
|
|
672
|
+
var _hoisted_2$10 = { class: "mint-searchable-select__search-wrap" };
|
|
673
|
+
var _hoisted_3$10 = [
|
|
596
674
|
"placeholder",
|
|
597
675
|
"aria-label",
|
|
598
676
|
"aria-expanded",
|
|
599
677
|
"aria-activedescendant"
|
|
600
678
|
];
|
|
601
|
-
var
|
|
679
|
+
var _hoisted_4$7 = [
|
|
602
680
|
"id",
|
|
603
681
|
"aria-selected",
|
|
604
682
|
"aria-disabled",
|
|
605
683
|
"onMouseenter",
|
|
606
684
|
"onClick"
|
|
607
685
|
];
|
|
608
|
-
var
|
|
609
|
-
var
|
|
610
|
-
var
|
|
686
|
+
var _hoisted_5$7 = { class: "mint-menu-item__text mint-searchable-select__option-text" };
|
|
687
|
+
var _hoisted_6$7 = { class: "mint-menu-item__label mint-searchable-select__option-label" };
|
|
688
|
+
var _hoisted_7$6 = {
|
|
611
689
|
key: 0,
|
|
612
690
|
class: "mint-menu-item__description mint-searchable-select__option-description"
|
|
613
691
|
};
|
|
614
|
-
var
|
|
692
|
+
var _hoisted_8$2 = {
|
|
615
693
|
key: 0,
|
|
616
694
|
class: "mint-menu-item__meta mint-searchable-select__option-meta"
|
|
617
695
|
};
|
|
618
|
-
var
|
|
696
|
+
var _hoisted_9$2 = {
|
|
619
697
|
key: 0,
|
|
620
698
|
class: "mint-searchable-select__empty"
|
|
621
699
|
};
|
|
622
|
-
var
|
|
700
|
+
var _hoisted_10$2 = {
|
|
623
701
|
key: 0,
|
|
624
702
|
class: "mint-searchable-select__footer"
|
|
625
703
|
};
|
|
@@ -661,6 +739,7 @@ var SelectSearchableInternal_default = /* @__PURE__ */ defineComponent({
|
|
|
661
739
|
const root = ref(null);
|
|
662
740
|
const trigger = ref(null);
|
|
663
741
|
const search = ref(null);
|
|
742
|
+
const panel = ref(null);
|
|
664
743
|
const open = ref(false);
|
|
665
744
|
const query = ref("");
|
|
666
745
|
const activeIndex = ref(-1);
|
|
@@ -736,6 +815,7 @@ var SelectSearchableInternal_default = /* @__PURE__ */ defineComponent({
|
|
|
736
815
|
if (event.key === "ArrowUp") moveActive(-1);
|
|
737
816
|
});
|
|
738
817
|
}
|
|
818
|
+
const { style: panelStyle } = useFloatingPanel(trigger, panel, open, { matchWidth: true });
|
|
739
819
|
watch(visibleOptions, (options) => {
|
|
740
820
|
activeIndex.value = firstEnabledIndex(options);
|
|
741
821
|
});
|
|
@@ -774,8 +854,14 @@ var SelectSearchableInternal_default = /* @__PURE__ */ defineComponent({
|
|
|
774
854
|
}), [createElementVNode("span", { class: normalizeClass(["mint-searchable-select__value", { "mint-searchable-select__value--placeholder": !selectedOption.value }]) }, toDisplayString(selectedOption.value?.label ?? __props.placeholder), 3), createVNode(unref(ChevronsUpDown), {
|
|
775
855
|
size: 14,
|
|
776
856
|
"aria-hidden": "true"
|
|
777
|
-
})], 16, _hoisted_1$10), open.value ? (openBlock(), createElementBlock("div",
|
|
778
|
-
|
|
857
|
+
})], 16, _hoisted_1$10), open.value ? (openBlock(), createElementBlock("div", {
|
|
858
|
+
key: 0,
|
|
859
|
+
ref_key: "panel",
|
|
860
|
+
ref: panel,
|
|
861
|
+
class: "mint-popover mint-searchable-select__panel",
|
|
862
|
+
style: normalizeStyle(unref(panelStyle))
|
|
863
|
+
}, [
|
|
864
|
+
createElementVNode("div", _hoisted_2$10, [_cache[4] || (_cache[4] = createElementVNode("svg", {
|
|
779
865
|
viewBox: "0 0 20 20",
|
|
780
866
|
fill: "none",
|
|
781
867
|
stroke: "currentColor",
|
|
@@ -798,7 +884,7 @@ var SelectSearchableInternal_default = /* @__PURE__ */ defineComponent({
|
|
|
798
884
|
"aria-activedescendant": activeDescendant.value,
|
|
799
885
|
"aria-autocomplete": "list",
|
|
800
886
|
onKeydown: handleSearchKeydown
|
|
801
|
-
}, null, 40,
|
|
887
|
+
}, null, 40, _hoisted_3$10), [[vModelText, query.value]])]),
|
|
802
888
|
createElementVNode("ul", {
|
|
803
889
|
id: listboxId,
|
|
804
890
|
class: "mint-searchable-select__list",
|
|
@@ -823,8 +909,8 @@ var SelectSearchableInternal_default = /* @__PURE__ */ defineComponent({
|
|
|
823
909
|
selected: __props.modelValue === option.value,
|
|
824
910
|
active: activeIndex.value === index
|
|
825
911
|
}, () => [
|
|
826
|
-
createElementVNode("span",
|
|
827
|
-
option.meta ? (openBlock(), createElementBlock("span",
|
|
912
|
+
createElementVNode("span", _hoisted_5$7, [createElementVNode("span", _hoisted_6$7, toDisplayString(option.label), 1), (option.disabled ? option.disabledReason || option.description : option.description) ? (openBlock(), createElementBlock("span", _hoisted_7$6, toDisplayString(option.disabled ? option.disabledReason || option.description : option.description), 1)) : createCommentVNode("", true)]),
|
|
913
|
+
option.meta ? (openBlock(), createElementBlock("span", _hoisted_8$2, toDisplayString(option.meta), 1)) : createCommentVNode("", true),
|
|
828
914
|
_cache[5] || (_cache[5] = createElementVNode("svg", {
|
|
829
915
|
class: "mint-menu-item__check mint-searchable-select__check",
|
|
830
916
|
viewBox: "0 0 20 20",
|
|
@@ -837,10 +923,10 @@ var SelectSearchableInternal_default = /* @__PURE__ */ defineComponent({
|
|
|
837
923
|
"stroke-width": "2",
|
|
838
924
|
d: "m5 10 3 3 7-7"
|
|
839
925
|
})], -1))
|
|
840
|
-
])], 42,
|
|
841
|
-
}), 128)), visibleOptions.value.length === 0 ? (openBlock(), createElementBlock("li",
|
|
842
|
-
_ctx.$slots.footer ? (openBlock(), createElementBlock("div",
|
|
843
|
-
])) : createCommentVNode("", true)], 38);
|
|
926
|
+
])], 42, _hoisted_4$7);
|
|
927
|
+
}), 128)), visibleOptions.value.length === 0 ? (openBlock(), createElementBlock("li", _hoisted_9$2, toDisplayString(__props.noResultsText), 1)) : createCommentVNode("", true)]),
|
|
928
|
+
_ctx.$slots.footer ? (openBlock(), createElementBlock("div", _hoisted_10$2, [renderSlot(_ctx.$slots, "footer")])) : createCommentVNode("", true)
|
|
929
|
+
], 4)) : createCommentVNode("", true)], 38);
|
|
844
930
|
};
|
|
845
931
|
}
|
|
846
932
|
});
|
|
@@ -1037,41 +1123,16 @@ var Tooltip_default = /* @__PURE__ */ defineComponent({
|
|
|
1037
1123
|
const props = __props;
|
|
1038
1124
|
const tooltipId = `mint-tooltip-${Math.random().toString(36).slice(2, 9)}`;
|
|
1039
1125
|
const visible = ref(false);
|
|
1040
|
-
const actualPlacement = ref(props.position);
|
|
1041
1126
|
const triggerRef = ref(null);
|
|
1042
1127
|
const contentRef = ref(null);
|
|
1043
|
-
const coords = ref({
|
|
1044
|
-
top: "0px",
|
|
1045
|
-
left: "0px"
|
|
1046
|
-
});
|
|
1047
1128
|
let timeoutId;
|
|
1048
|
-
|
|
1049
|
-
|
|
1050
|
-
|
|
1051
|
-
placement: props.position,
|
|
1052
|
-
middleware: [
|
|
1053
|
-
offset(6),
|
|
1054
|
-
flip(),
|
|
1055
|
-
shift({ padding: 8 })
|
|
1056
|
-
]
|
|
1057
|
-
});
|
|
1058
|
-
coords.value = {
|
|
1059
|
-
top: `${y}px`,
|
|
1060
|
-
left: `${x}px`
|
|
1061
|
-
};
|
|
1062
|
-
actualPlacement.value = placement;
|
|
1063
|
-
}
|
|
1064
|
-
useEventListener(() => window, "scroll", updatePosition, {
|
|
1065
|
-
passive: true,
|
|
1066
|
-
capture: true,
|
|
1067
|
-
enabled: visible
|
|
1129
|
+
const { style: coords, placement: actualPlacement } = useFloatingPanel(triggerRef, contentRef, visible, {
|
|
1130
|
+
placement: () => props.position,
|
|
1131
|
+
offset: 6
|
|
1068
1132
|
});
|
|
1069
|
-
|
|
1070
|
-
|
|
1071
|
-
timeoutId = setTimeout(async () => {
|
|
1133
|
+
function show() {
|
|
1134
|
+
timeoutId = setTimeout(() => {
|
|
1072
1135
|
visible.value = true;
|
|
1073
|
-
await nextTick();
|
|
1074
|
-
await updatePosition();
|
|
1075
1136
|
}, props.delay);
|
|
1076
1137
|
}
|
|
1077
1138
|
function hide() {
|
|
@@ -1103,12 +1164,11 @@ var Tooltip_default = /* @__PURE__ */ defineComponent({
|
|
|
1103
1164
|
ref: contentRef,
|
|
1104
1165
|
class: normalizeClass([
|
|
1105
1166
|
"mint-tooltip__content",
|
|
1106
|
-
`mint-tooltip__content--${actualPlacement
|
|
1167
|
+
`mint-tooltip__content--${unref(actualPlacement)}`,
|
|
1107
1168
|
__props.maxWidth ? "mint-tooltip__content--multiline" : ""
|
|
1108
1169
|
]),
|
|
1109
1170
|
style: normalizeStyle({
|
|
1110
|
-
|
|
1111
|
-
left: coords.value.left,
|
|
1171
|
+
...unref(coords),
|
|
1112
1172
|
maxWidth: resolvedMaxWidth(__props.maxWidth)
|
|
1113
1173
|
}),
|
|
1114
1174
|
role: "tooltip"
|
|
@@ -2493,6 +2553,66 @@ function useAppExperiment(options = {}) {
|
|
|
2493
2553
|
};
|
|
2494
2554
|
}
|
|
2495
2555
|
//#endregion
|
|
2556
|
+
//#region src/jobs.ts
|
|
2557
|
+
var ACTIVE_JOB_STATUSES = /* @__PURE__ */ new Set([
|
|
2558
|
+
"awaiting_input",
|
|
2559
|
+
"queued",
|
|
2560
|
+
"running"
|
|
2561
|
+
]);
|
|
2562
|
+
var TERMINAL_JOB_STATUSES = /* @__PURE__ */ new Set([
|
|
2563
|
+
"completed",
|
|
2564
|
+
"failed",
|
|
2565
|
+
"cancelled"
|
|
2566
|
+
]);
|
|
2567
|
+
/** Resolve action support while retaining one-cycle legacy status inference. */
|
|
2568
|
+
function resolveJobCapabilities(job) {
|
|
2569
|
+
const legacyCanCancel = job.status === "queued" || job.status === "running";
|
|
2570
|
+
const legacyCanDelete = TERMINAL_JOB_STATUSES.has(job.status);
|
|
2571
|
+
return {
|
|
2572
|
+
can_cancel: typeof job.can_cancel === "boolean" ? job.can_cancel : legacyCanCancel,
|
|
2573
|
+
can_delete: typeof job.can_delete === "boolean" ? job.can_delete : legacyCanDelete
|
|
2574
|
+
};
|
|
2575
|
+
}
|
|
2576
|
+
/** Clamp invalid or out-of-range progress values for safe display. */
|
|
2577
|
+
function normalizeJobPercent(value) {
|
|
2578
|
+
if (!Number.isFinite(value)) return 0;
|
|
2579
|
+
return Math.min(100, Math.max(0, value));
|
|
2580
|
+
}
|
|
2581
|
+
/** Create a detached canonical state without changing the transport input. */
|
|
2582
|
+
function normalizeJobState(job) {
|
|
2583
|
+
const capabilities = resolveJobCapabilities(job);
|
|
2584
|
+
return {
|
|
2585
|
+
...job,
|
|
2586
|
+
definition_id: job.definition_id ?? (typeof job.metadata.definition_id === "string" ? job.metadata.definition_id : null),
|
|
2587
|
+
result_status: job.result_status ?? (job.status === "completed" && job.metadata.has_result === true ? "available" : "none"),
|
|
2588
|
+
result_expires_at: job.result_expires_at ?? null,
|
|
2589
|
+
progress: {
|
|
2590
|
+
...job.progress,
|
|
2591
|
+
percent: normalizeJobPercent(job.progress.percent)
|
|
2592
|
+
},
|
|
2593
|
+
warnings: [...job.warnings],
|
|
2594
|
+
folders: [...job.folders],
|
|
2595
|
+
metadata: { ...job.metadata },
|
|
2596
|
+
...capabilities
|
|
2597
|
+
};
|
|
2598
|
+
}
|
|
2599
|
+
function isActiveJobStatus(status) {
|
|
2600
|
+
return ACTIVE_JOB_STATUSES.has(status);
|
|
2601
|
+
}
|
|
2602
|
+
function isTerminalJobStatus(status) {
|
|
2603
|
+
return TERMINAL_JOB_STATUSES.has(status);
|
|
2604
|
+
}
|
|
2605
|
+
function jobStatusLabel(status) {
|
|
2606
|
+
return {
|
|
2607
|
+
awaiting_input: "Waiting for input",
|
|
2608
|
+
queued: "Queued",
|
|
2609
|
+
running: "Running",
|
|
2610
|
+
completed: "Completed",
|
|
2611
|
+
failed: "Failed",
|
|
2612
|
+
cancelled: "Cancelled"
|
|
2613
|
+
}[status];
|
|
2614
|
+
}
|
|
2615
|
+
//#endregion
|
|
2496
2616
|
//#region src/utils/pluginSecrets.ts
|
|
2497
2617
|
var pluginSecrets_exports = /* @__PURE__ */ __exportAll({
|
|
2498
2618
|
FORMAT_KEY: () => FORMAT_KEY,
|
|
@@ -2959,66 +3079,6 @@ var TagsInput_default = /* @__PURE__ */ defineComponent({
|
|
|
2959
3079
|
}
|
|
2960
3080
|
});
|
|
2961
3081
|
//#endregion
|
|
2962
|
-
//#region src/jobs.ts
|
|
2963
|
-
var ACTIVE_JOB_STATUSES = /* @__PURE__ */ new Set([
|
|
2964
|
-
"awaiting_input",
|
|
2965
|
-
"queued",
|
|
2966
|
-
"running"
|
|
2967
|
-
]);
|
|
2968
|
-
var TERMINAL_JOB_STATUSES = /* @__PURE__ */ new Set([
|
|
2969
|
-
"completed",
|
|
2970
|
-
"failed",
|
|
2971
|
-
"cancelled"
|
|
2972
|
-
]);
|
|
2973
|
-
/** Resolve action support while retaining one-cycle legacy status inference. */
|
|
2974
|
-
function resolveJobCapabilities(job) {
|
|
2975
|
-
const legacyCanCancel = job.status === "queued" || job.status === "running";
|
|
2976
|
-
const legacyCanDelete = TERMINAL_JOB_STATUSES.has(job.status);
|
|
2977
|
-
return {
|
|
2978
|
-
can_cancel: typeof job.can_cancel === "boolean" ? job.can_cancel : legacyCanCancel,
|
|
2979
|
-
can_delete: typeof job.can_delete === "boolean" ? job.can_delete : legacyCanDelete
|
|
2980
|
-
};
|
|
2981
|
-
}
|
|
2982
|
-
/** Clamp invalid or out-of-range progress values for safe display. */
|
|
2983
|
-
function normalizeJobPercent(value) {
|
|
2984
|
-
if (!Number.isFinite(value)) return 0;
|
|
2985
|
-
return Math.min(100, Math.max(0, value));
|
|
2986
|
-
}
|
|
2987
|
-
/** Create a detached canonical state without changing the transport input. */
|
|
2988
|
-
function normalizeJobState(job) {
|
|
2989
|
-
const capabilities = resolveJobCapabilities(job);
|
|
2990
|
-
return {
|
|
2991
|
-
...job,
|
|
2992
|
-
definition_id: job.definition_id ?? (typeof job.metadata.definition_id === "string" ? job.metadata.definition_id : null),
|
|
2993
|
-
result_status: job.result_status ?? (job.status === "completed" && job.metadata.has_result === true ? "available" : "none"),
|
|
2994
|
-
result_expires_at: job.result_expires_at ?? null,
|
|
2995
|
-
progress: {
|
|
2996
|
-
...job.progress,
|
|
2997
|
-
percent: normalizeJobPercent(job.progress.percent)
|
|
2998
|
-
},
|
|
2999
|
-
warnings: [...job.warnings],
|
|
3000
|
-
folders: [...job.folders],
|
|
3001
|
-
metadata: { ...job.metadata },
|
|
3002
|
-
...capabilities
|
|
3003
|
-
};
|
|
3004
|
-
}
|
|
3005
|
-
function isActiveJobStatus(status) {
|
|
3006
|
-
return ACTIVE_JOB_STATUSES.has(status);
|
|
3007
|
-
}
|
|
3008
|
-
function isTerminalJobStatus(status) {
|
|
3009
|
-
return TERMINAL_JOB_STATUSES.has(status);
|
|
3010
|
-
}
|
|
3011
|
-
function jobStatusLabel(status) {
|
|
3012
|
-
return {
|
|
3013
|
-
awaiting_input: "Waiting for input",
|
|
3014
|
-
queued: "Queued",
|
|
3015
|
-
running: "Running",
|
|
3016
|
-
completed: "Completed",
|
|
3017
|
-
failed: "Failed",
|
|
3018
|
-
cancelled: "Cancelled"
|
|
3019
|
-
}[status];
|
|
3020
|
-
}
|
|
3021
|
-
//#endregion
|
|
3022
3082
|
//#region src/composables/platformContextHelpers.ts
|
|
3023
3083
|
function getInjectedPlatformContext() {
|
|
3024
3084
|
if (typeof window === "undefined") return void 0;
|
|
@@ -3263,6 +3323,6 @@ function isRecord(value) {
|
|
|
3263
3323
|
return typeof value === "object" && value !== null && !Array.isArray(value);
|
|
3264
3324
|
}
|
|
3265
3325
|
//#endregion
|
|
3266
|
-
export { formatRelativeTime as A, Tooltip_default as B, formatExperimentDate as C, compareTime as D, useMenuKeyboard as E, toMinutes as F,
|
|
3326
|
+
export { formatRelativeTime as A, Tooltip_default as B, formatExperimentDate as C, compareTime as D, useMenuKeyboard as E, toMinutes as F, normalizeOptionInput as G, useListSelection as H, FormField_default as I, BaseInput_default as K, EmptyState_default as L, formatTimeSlot as M, generateTimeSlots as N, durationMinutes as O, time_exports as P, useRovingFocus as R, experimentIdFromRoute as S, FileUploader_default as T, useSelectionLimit as U, BaseSelect_default as V, useFloatingPanel as W, APP_EXPERIMENT_KEY as _, parseExperimentId as a, SORT_OPTIONS as b, SecretInput_default as c, isActiveJobStatus as d, isTerminalJobStatus as f, resolveJobCapabilities as g, normalizeJobState as h, getInjectedPlatformContext as i, formatTime as j, findNearestTimeSlotIndex as k, FORMAT_KEY as l, normalizeJobPercent as m, ResourcePickerListInternal_default as n, resolveCurrentPluginId as o, jobStatusLabel as p, Skeleton_default as r, TagsInput_default as s, isRecord as t, pluginSecrets_exports as u, useAppExperiment as v, resolveExperimentCode as w, datePresetToISO as x, DATE_PRESET_OPTIONS as y, BaseCheckbox_default as z };
|
|
3267
3327
|
|
|
3268
|
-
//# sourceMappingURL=records-
|
|
3328
|
+
//# sourceMappingURL=records-D4aQXyZu.js.map
|