@morscherlab/mint-sdk 1.3.0-beta.3 → 1.3.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 (42) hide show
  1. package/dist/components/FilePicker.vue.d.ts +4 -1
  2. package/dist/components/index.js +1 -1
  3. package/dist/components/internal/FilePickerListInternal.vue.d.ts +2 -0
  4. package/dist/{components-CvY105kJ.js → components-CF0XMy8W.js} +326 -234
  5. package/dist/components-CF0XMy8W.js.map +1 -0
  6. package/dist/composables/createFilePickerAdapter.d.ts +5 -1
  7. package/dist/composables/filePicker/usePickerNavigation.d.ts +3 -2
  8. package/dist/composables/index.js +1 -1
  9. package/dist/composables/useFilePicker.d.ts +4 -1
  10. package/dist/{composables-DL4Vca7L.js → composables-Dlyz_Aiv.js} +92 -29
  11. package/dist/{composables-DL4Vca7L.js.map → composables-Dlyz_Aiv.js.map} +1 -1
  12. package/dist/index.js +2 -2
  13. package/dist/install.js +1 -1
  14. package/dist/{plotly.min-D6Ge6qgX.js → plotly.min-DDhZCNEM.js} +2 -2
  15. package/dist/{plotly.min-D6Ge6qgX.js.map → plotly.min-DDhZCNEM.js.map} +1 -1
  16. package/dist/styles.css +32 -1
  17. package/dist/types/auth.d.ts +4 -0
  18. package/dist/types/components.d.ts +4 -0
  19. package/dist/types/fileBrowserTypes.d.ts +13 -0
  20. package/dist/types/filePicker.d.ts +8 -1
  21. package/dist/types/index.d.ts +1 -1
  22. package/package.json +1 -1
  23. package/src/__tests__/components/ActionMenu.test.ts +10 -0
  24. package/src/__tests__/components/FilePicker.test.ts +65 -1
  25. package/src/__tests__/composables/createFilePickerAdapter.test.ts +92 -1
  26. package/src/__tests__/composables/usePickerNavigation.test.ts +61 -1
  27. package/src/__tests__/composables/usePlatformFilePickerAdapter.test.ts +18 -6
  28. package/src/components/ActionMenu.vue +10 -2
  29. package/src/components/FilePicker.vue +42 -0
  30. package/src/components/internal/FilePickerListInternal.vue +11 -2
  31. package/src/composables/createFilePickerAdapter.ts +82 -22
  32. package/src/composables/filePicker/usePickerNavigation.ts +29 -2
  33. package/src/composables/useFilePicker.ts +8 -1
  34. package/src/composables/usePlatformFilePickerAdapter.ts +26 -4
  35. package/src/styles/components/action-menu.css +10 -0
  36. package/src/styles/components/file-picker.css +23 -1
  37. package/src/types/auth.ts +4 -0
  38. package/src/types/components.ts +4 -0
  39. package/src/types/fileBrowserTypes.ts +15 -0
  40. package/src/types/filePicker.ts +8 -1
  41. package/src/types/index.ts +2 -0
  42. package/dist/components-CvY105kJ.js.map +0 -1
@@ -8,7 +8,7 @@ import { a as useApi, o as useAuthStore, t as useExperimentStore } from "./exper
8
8
  import { t as ANALYSIS_FILE_ARTIFACT_SCHEMA } from "./analysisArtifactTypes-Cy3D0Ipg.js";
9
9
  import { Fragment, Teleport, Transition, TransitionGroup, computed, createBlock, createCommentVNode, createElementBlock, createElementVNode, createSlots, createStaticVNode, createTextVNode, createVNode, defineAsyncComponent, defineComponent, effectScope, guardReactiveProps, h, inject, isRef, mergeModels, mergeProps, nextTick, normalizeClass, normalizeProps, normalizeStyle, onBeforeUnmount, onMounted, onScopeDispose, onUnmounted, openBlock, provide, reactive, ref, renderList, renderSlot, resolveComponent, resolveDynamicComponent, shallowRef, toDisplayString, toHandlers, toRaw, toRef, unref, useId, useModel, useSlots, useTemplateRef, vModelCheckbox, vModelText, vShow, watch, withCtx, withDirectives, withKeys, withModifiers } from "vue";
10
10
  import { computePosition, flip, offset, shift } from "@floating-ui/dom";
11
- import { ChevronRight, Download, Ellipsis, Move, Plus, Redo2, RefreshCw, Trash2, Undo2, Upload, X } from "lucide-vue-next";
11
+ import { Check, ChevronRight, Download, Ellipsis, Move, Plus, Redo2, RefreshCw, Trash2, Undo2, Upload, X } from "lucide-vue-next";
12
12
  //#region \0rolldown/runtime.js
13
13
  var __create = Object.create;
14
14
  var __defProp = Object.defineProperty;
@@ -1099,11 +1099,11 @@ var _hoisted_18$22 = {
1099
1099
  key: 0,
1100
1100
  class: "mint-dataframe__state"
1101
1101
  };
1102
- var _hoisted_19$21 = {
1102
+ var _hoisted_19$22 = {
1103
1103
  key: 1,
1104
1104
  class: "mint-dataframe__state"
1105
1105
  };
1106
- var _hoisted_20$20 = {
1106
+ var _hoisted_20$21 = {
1107
1107
  key: 2,
1108
1108
  class: "mint-dataframe__loading"
1109
1109
  };
@@ -1567,12 +1567,12 @@ var DataFrame_default = /* @__PURE__ */ defineComponent({
1567
1567
  __props.error ? (openBlock(), createElementBlock("div", _hoisted_18$22, [renderSlot(_ctx.$slots, "error", { error: __props.error }, () => [createVNode(DataStateInternal_default, {
1568
1568
  state: "error",
1569
1569
  title: __props.error
1570
- }, null, 8, ["title"])])])) : paginatedData.value.length === 0 && !__props.loading ? (openBlock(), createElementBlock("div", _hoisted_19$21, [renderSlot(_ctx.$slots, "empty", {}, () => [createVNode(DataStateInternal_default, {
1570
+ }, null, 8, ["title"])])])) : paginatedData.value.length === 0 && !__props.loading ? (openBlock(), createElementBlock("div", _hoisted_19$22, [renderSlot(_ctx.$slots, "empty", {}, () => [createVNode(DataStateInternal_default, {
1571
1571
  state: "empty",
1572
1572
  title: __props.emptyText,
1573
1573
  "icon-path": EMPTY_ICON_PATH$2
1574
1574
  }, null, 8, ["title"])])])) : createCommentVNode("", true),
1575
- __props.loading ? (openBlock(), createElementBlock("div", _hoisted_20$20, [renderSlot(_ctx.$slots, "loading", {}, () => [createVNode(LoadingSpinner_default, { size: "lg" })])])) : createCommentVNode("", true)
1575
+ __props.loading ? (openBlock(), createElementBlock("div", _hoisted_20$21, [renderSlot(_ctx.$slots, "loading", {}, () => [createVNode(LoadingSpinner_default, { size: "lg" })])])) : createCommentVNode("", true)
1576
1576
  ], 4),
1577
1577
  __props.pagination ? (openBlock(), createElementBlock("div", _hoisted_21$18, [renderSlot(_ctx.$slots, "footer", {}, () => [createElementVNode("span", _hoisted_22$18, toDisplayString((__props.pagination.page - 1) * __props.pagination.pageSize + 1) + "–" + toDisplayString(Math.min(__props.pagination.page * __props.pagination.pageSize, unref(sortedData).length)) + " of " + toDisplayString(unref(sortedData).length), 1), createElementVNode("div", _hoisted_23$15, [
1578
1578
  createElementVNode("button", {
@@ -2077,7 +2077,12 @@ var _hoisted_2$63 = [
2077
2077
  "rel",
2078
2078
  "onClick"
2079
2079
  ];
2080
- var _hoisted_3$55 = ["disabled", "onClick"];
2080
+ var _hoisted_3$55 = [
2081
+ "role",
2082
+ "aria-checked",
2083
+ "disabled",
2084
+ "onClick"
2085
+ ];
2081
2086
  //#endregion
2082
2087
  //#region src/components/ActionMenu.vue
2083
2088
  var ActionMenu_default = /* @__PURE__ */ defineComponent({
@@ -2215,10 +2220,16 @@ var ActionMenu_default = /* @__PURE__ */ defineComponent({
2215
2220
  key: 2,
2216
2221
  type: "button",
2217
2222
  class: normalizeClass(["mint-menu-item mint-action-menu__item", { "mint-menu-item--danger mint-action-menu__item--danger": item.danger }]),
2218
- role: "menuitem",
2223
+ role: item.checked === void 0 ? "menuitem" : "menuitemradio",
2224
+ "aria-checked": item.checked,
2219
2225
  disabled: item.disabled,
2220
2226
  onClick: ($event) => handleSelect(item)
2221
- }, toDisplayString(item.label), 11, _hoisted_3$55))], 64);
2227
+ }, [item.checked !== void 0 ? (openBlock(), createBlock(unref(Check), {
2228
+ key: 0,
2229
+ class: normalizeClass(["mint-action-menu__check", { "mint-action-menu__check--off": !item.checked }]),
2230
+ size: 14,
2231
+ "aria-hidden": "true"
2232
+ }, null, 8, ["class"])) : createCommentVNode("", true), createTextVNode(" " + toDisplayString(item.label), 1)], 10, _hoisted_3$55))], 64);
2222
2233
  }), 128))], 36)) : createCommentVNode("", true)]))], 64);
2223
2234
  };
2224
2235
  }
@@ -3512,8 +3523,8 @@ var _hoisted_18$21 = {
3512
3523
  key: 5,
3513
3524
  class: "mint-topbar__center"
3514
3525
  };
3515
- var _hoisted_19$20 = { class: "mint-topbar__right" };
3516
- var _hoisted_20$19 = {
3526
+ var _hoisted_19$21 = { class: "mint-topbar__right" };
3527
+ var _hoisted_20$20 = {
3517
3528
  key: 0,
3518
3529
  class: "mint-topbar__standalone-badge"
3519
3530
  };
@@ -3717,8 +3728,8 @@ var AppTopBar_default = /* @__PURE__ */ defineComponent({
3717
3728
  onSelect: _cache[1] || (_cache[1] = ($event) => emit("pill-select", $event)),
3718
3729
  onOptionSelect: _cache[2] || (_cache[2] = (option, item) => emit("pill-option-select", option, item))
3719
3730
  }, null, 8, ["items", "current-item-id"])) : createCommentVNode("", true)])])) : createCommentVNode("", true),
3720
- createElementVNode("div", _hoisted_19$20, [
3721
- __props.showStandaloneLabel && isStandalone.value && !unref(appExperiment) ? (openBlock(), createElementBlock("span", _hoisted_20$19, toDisplayString(__props.standaloneLabel), 1)) : createCommentVNode("", true),
3731
+ createElementVNode("div", _hoisted_19$21, [
3732
+ __props.showStandaloneLabel && isStandalone.value && !unref(appExperiment) ? (openBlock(), createElementBlock("span", _hoisted_20$20, toDisplayString(__props.standaloneLabel), 1)) : createCommentVNode("", true),
3722
3733
  unref(appExperiment) && !isStandalone.value && canBindExperiment.value ? (openBlock(), createBlock(unref(ExperimentPopover), mergeProps({ key: 1 }, unref(appExperiment).popover.value, {
3723
3734
  onSelect: _cache[3] || (_cache[3] = ($event) => unref(appExperiment).openModal()),
3724
3735
  onSave: _cache[4] || (_cache[4] = ($event) => unref(appExperiment).handleSave()),
@@ -4619,13 +4630,13 @@ var _hoisted_17$20 = {
4619
4630
  class: "mint-sidebar__group-subtitle"
4620
4631
  };
4621
4632
  var _hoisted_18$20 = { class: "mint-sidebar__group-tail" };
4622
- var _hoisted_19$19 = [
4633
+ var _hoisted_19$20 = [
4623
4634
  "disabled",
4624
4635
  "aria-label",
4625
4636
  "title",
4626
4637
  "onClick"
4627
4638
  ];
4628
- var _hoisted_20$18 = {
4639
+ var _hoisted_20$19 = {
4629
4640
  key: 0,
4630
4641
  class: "mint-sidebar__group-action-icon",
4631
4642
  viewBox: "0 0 24 24",
@@ -4973,7 +4984,7 @@ var AppSidebar_default = /* @__PURE__ */ defineComponent({
4973
4984
  "aria-label": action.label,
4974
4985
  title: action.label,
4975
4986
  onClick: ($event) => handleSectionAction(section.id, action.id)
4976
- }, [action.icon && isSvgIcon(action.icon) ? (openBlock(), createElementBlock("svg", _hoisted_20$18, [Array.isArray(action.icon) ? (openBlock(true), createElementBlock(Fragment, { key: 0 }, renderList(action.icon, (d, i) => {
4987
+ }, [action.icon && isSvgIcon(action.icon) ? (openBlock(), createElementBlock("svg", _hoisted_20$19, [Array.isArray(action.icon) ? (openBlock(true), createElementBlock(Fragment, { key: 0 }, renderList(action.icon, (d, i) => {
4977
4988
  return openBlock(), createElementBlock("path", {
4978
4989
  key: i,
4979
4990
  d
@@ -4981,7 +4992,7 @@ var AppSidebar_default = /* @__PURE__ */ defineComponent({
4981
4992
  }), 128)) : (openBlock(), createElementBlock("path", {
4982
4993
  key: 1,
4983
4994
  d: action.icon
4984
- }, null, 8, _hoisted_22$16))])) : action.icon ? (openBlock(), createElementBlock("span", _hoisted_23$14, toDisplayString(action.icon), 1)) : createCommentVNode("", true)], 14, _hoisted_19$19);
4995
+ }, null, 8, _hoisted_22$16))])) : action.icon ? (openBlock(), createElementBlock("span", _hoisted_23$14, toDisplayString(action.icon), 1)) : createCommentVNode("", true)], 14, _hoisted_19$20);
4985
4996
  }), 128)),
4986
4997
  section.showToggle ? (openBlock(), createElementBlock("button", {
4987
4998
  key: 1,
@@ -6068,7 +6079,7 @@ var PlotlyChart_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__
6068
6079
  let revision = 0;
6069
6080
  async function loadPlotly() {
6070
6081
  if (props.plotly) return props.plotly;
6071
- const module = await import("./plotly.min-D6Ge6qgX.js").then((m) => /* @__PURE__ */ __toESM(m.default, 1));
6082
+ const module = await import("./plotly.min-DDhZCNEM.js").then((m) => /* @__PURE__ */ __toESM(m.default, 1));
6072
6083
  return "default" in module ? module.default : module;
6073
6084
  }
6074
6085
  function bindEvents(element) {
@@ -6476,8 +6487,8 @@ var _hoisted_16$19 = {
6476
6487
  };
6477
6488
  var _hoisted_17$19 = { class: "mint-jobs-tray__job-heading" };
6478
6489
  var _hoisted_18$19 = { class: "mint-jobs-tray__job-identity" };
6479
- var _hoisted_19$18 = ["onClick"];
6480
- var _hoisted_20$17 = { class: "mint-jobs-tray__kind" };
6490
+ var _hoisted_19$19 = ["onClick"];
6491
+ var _hoisted_20$18 = { class: "mint-jobs-tray__kind" };
6481
6492
  var _hoisted_21$15 = {
6482
6493
  key: 0,
6483
6494
  class: "mint-jobs-tray__percent"
@@ -6724,7 +6735,7 @@ var JobsStatusTray_default = /* @__PURE__ */ defineComponent({
6724
6735
  type: "button",
6725
6736
  class: "mint-jobs-tray__job-select",
6726
6737
  onClick: ($event) => emit("select", job)
6727
- }, toDisplayString(job.name), 9, _hoisted_19$18), createElementVNode("span", _hoisted_20$17, toDisplayString(job.kind), 1)]),
6738
+ }, toDisplayString(job.name), 9, _hoisted_19$19), createElementVNode("span", _hoisted_20$18, toDisplayString(job.kind), 1)]),
6728
6739
  createElementVNode("span", { class: normalizeClass(["mint-jobs-tray__status", statusClass(job)]) }, [_cache[8] || (_cache[8] = createElementVNode("span", {
6729
6740
  class: "mint-jobs-tray__status-dot",
6730
6741
  "aria-hidden": "true"
@@ -7066,8 +7077,8 @@ var _hoisted_15$21 = {
7066
7077
  var _hoisted_16$18 = { class: "mint-dose-calculator__preview-steps" };
7067
7078
  var _hoisted_17$18 = { class: "mint-dose-calculator__preview-step" };
7068
7079
  var _hoisted_18$18 = { class: "mint-dose-calculator__preview-step-num" };
7069
- var _hoisted_19$17 = { class: "mint-dose-calculator__preview-step-conc" };
7070
- var _hoisted_20$16 = {
7080
+ var _hoisted_19$18 = { class: "mint-dose-calculator__preview-step-conc" };
7081
+ var _hoisted_20$17 = {
7071
7082
  key: 0,
7072
7083
  class: "mint-dose-calculator__preview-arrow"
7073
7084
  };
@@ -7334,7 +7345,7 @@ var DoseCalculator_default = /* @__PURE__ */ defineComponent({
7334
7345
  ]),
7335
7346
  _cache[17] || (_cache[17] = createElementVNode("div", { class: "mint-dose-calculator__divider" }, null, -1)),
7336
7347
  serialResult.value?.valid ? (openBlock(), createElementBlock("div", _hoisted_15$21, [_cache[16] || (_cache[16] = createElementVNode("div", { class: "mint-dose-calculator__preview-title" }, "Preview", -1)), createElementVNode("div", _hoisted_16$18, [(openBlock(true), createElementBlock(Fragment, null, renderList(serialResult.value.steps, (step, index) => {
7337
- return openBlock(), createElementBlock(Fragment, { key: step.stepNumber }, [createElementVNode("div", _hoisted_17$18, [createElementVNode("span", _hoisted_18$18, toDisplayString(step.stepNumber) + ":", 1), createElementVNode("span", _hoisted_19$17, toDisplayString(unref(formatWithUnit)(step.concentration, 3)), 1)]), index < serialResult.value.steps.length - 1 ? (openBlock(), createElementBlock("span", _hoisted_20$16, " → ")) : createCommentVNode("", true)], 64);
7348
+ return openBlock(), createElementBlock(Fragment, { key: step.stepNumber }, [createElementVNode("div", _hoisted_17$18, [createElementVNode("span", _hoisted_18$18, toDisplayString(step.stepNumber) + ":", 1), createElementVNode("span", _hoisted_19$18, toDisplayString(unref(formatWithUnit)(step.concentration, 3)), 1)]), index < serialResult.value.steps.length - 1 ? (openBlock(), createElementBlock("span", _hoisted_20$17, " → ")) : createCommentVNode("", true)], 64);
7338
7349
  }), 128))])])) : serialResult.value?.error ? (openBlock(), createElementBlock("div", _hoisted_21$14, toDisplayString(serialResult.value.error), 1)) : createCommentVNode("", true)
7339
7350
  ])) : activeMode.value === "conversion" ? (openBlock(), createElementBlock("div", _hoisted_22$14, [createVNode(FormField_default, { label: "Input Concentration" }, {
7340
7351
  default: withCtx(() => [createVNode(ConcentrationInput_default, {
@@ -7432,11 +7443,11 @@ var _hoisted_16$17 = {
7432
7443
  };
7433
7444
  var _hoisted_17$17 = ["onClick"];
7434
7445
  var _hoisted_18$17 = ["aria-label", "onClick"];
7435
- var _hoisted_19$16 = {
7446
+ var _hoisted_19$17 = {
7436
7447
  key: 2,
7437
7448
  class: "mint-timeline__spacer--vertical"
7438
7449
  };
7439
- var _hoisted_20$15 = {
7450
+ var _hoisted_20$16 = {
7440
7451
  key: 3,
7441
7452
  class: "mint-timeline__spacer--horizontal"
7442
7453
  };
@@ -7744,8 +7755,8 @@ var ExperimentTimeline_default = /* @__PURE__ */ defineComponent({
7744
7755
  "stroke-width": "2",
7745
7756
  d: "M12 4v16m8-8H4"
7746
7757
  })], -1)])], 8, _hoisted_18$17)) : createCommentVNode("", true),
7747
- __props.orientation === "vertical" && index < sortedSteps.value.length - 1 ? (openBlock(), createElementBlock("div", _hoisted_19$16)) : createCommentVNode("", true),
7748
- __props.orientation === "horizontal" && index < sortedSteps.value.length - 1 ? (openBlock(), createElementBlock("div", _hoisted_20$15)) : createCommentVNode("", true)
7758
+ __props.orientation === "vertical" && index < sortedSteps.value.length - 1 ? (openBlock(), createElementBlock("div", _hoisted_19$17)) : createCommentVNode("", true),
7759
+ __props.orientation === "horizontal" && index < sortedSteps.value.length - 1 ? (openBlock(), createElementBlock("div", _hoisted_20$16)) : createCommentVNode("", true)
7749
7760
  ], 40, _hoisted_2$44);
7750
7761
  }), 128)),
7751
7762
  __props.error ? (openBlock(), createElementBlock("div", _hoisted_21$13, [renderSlot(_ctx.$slots, "error", { error: __props.error }, () => [createVNode(DataStateInternal_default, {
@@ -8815,8 +8826,8 @@ var _hoisted_18$16 = {
8815
8826
  key: 3,
8816
8827
  class: "mint-well-plate__corner-glyph"
8817
8828
  };
8818
- var _hoisted_19$15 = ["title"];
8819
- var _hoisted_20$14 = {
8829
+ var _hoisted_19$16 = ["title"];
8830
+ var _hoisted_20$15 = {
8820
8831
  key: 0,
8821
8832
  class: "mint-well-plate__legend"
8822
8833
  };
@@ -9167,13 +9178,13 @@ var WellPlate_default = /* @__PURE__ */ defineComponent({
9167
9178
  class: normalizeClass(["mint-well-plate__badge", { "mint-well-plate__badge--dot": !getWellBadge(well)?.text }]),
9168
9179
  style: normalizeStyle({ backgroundColor: getWellBadge(well)?.color }),
9169
9180
  title: getWellBadge(well)?.text ? `${getWellBadge(well)?.text}x injections` : "Custom method"
9170
- }, toDisplayString(getWellBadge(well)?.text), 15, _hoisted_19$15)) : createCommentVNode("", true)
9181
+ }, toDisplayString(getWellBadge(well)?.text), 15, _hoisted_19$16)) : createCommentVNode("", true)
9171
9182
  ], 46, _hoisted_14$19)]);
9172
9183
  }), 128))
9173
9184
  ]);
9174
9185
  }), 128))])
9175
9186
  ], 12, _hoisted_6$29),
9176
- props.heatmap?.enabled && props.heatmap.showLegend ? (openBlock(), createElementBlock("div", _hoisted_20$14, [
9187
+ props.heatmap?.enabled && props.heatmap.showLegend ? (openBlock(), createElementBlock("div", _hoisted_20$15, [
9177
9188
  createElementVNode("span", _hoisted_21$12, toDisplayString(props.heatmap.min ?? 0), 1),
9178
9189
  createElementVNode("div", _hoisted_22$12, [(openBlock(true), createElementBlock(Fragment, null, renderList(props.heatmap.colorScale === "custom" && props.heatmap.customColors?.length ? props.heatmap.customColors : unref(HEATMAP_COLORS)[props.heatmap.colorScale || "viridis"], (color, index) => {
9179
9190
  return openBlock(), createElementBlock("div", {
@@ -9391,11 +9402,11 @@ var _hoisted_15$18 = { class: "mint-plate-editor__toolbar-end" };
9391
9402
  var _hoisted_16$15 = ["disabled", "title"];
9392
9403
  var _hoisted_17$15 = ["aria-pressed"];
9393
9404
  var _hoisted_18$15 = ["disabled"];
9394
- var _hoisted_19$14 = {
9405
+ var _hoisted_19$15 = {
9395
9406
  key: 1,
9396
9407
  class: "mint-plate-editor__body"
9397
9408
  };
9398
- var _hoisted_20$13 = { class: "mint-plate-editor__main" };
9409
+ var _hoisted_20$14 = { class: "mint-plate-editor__main" };
9399
9410
  var _hoisted_21$11 = {
9400
9411
  key: 0,
9401
9412
  class: "mint-plate-editor__footer"
@@ -9974,7 +9985,7 @@ var PlateEditor_default = /* @__PURE__ */ defineComponent({
9974
9985
  renderSlot(_ctx.$slots, "toolbar-extra")
9975
9986
  ])
9976
9987
  ])) : createCommentVNode("", true),
9977
- activeRack.value ? (openBlock(), createElementBlock("div", _hoisted_19$14, [createElementVNode("div", _hoisted_20$13, [(openBlock(), createBlock(WellPlate_default, {
9988
+ activeRack.value ? (openBlock(), createElementBlock("div", _hoisted_19$15, [createElementVNode("div", _hoisted_20$14, [(openBlock(), createBlock(WellPlate_default, {
9978
9989
  key: activeRack.value.id,
9979
9990
  "model-value": selection.value,
9980
9991
  format: activeRack.value.format,
@@ -10339,11 +10350,11 @@ var _hoisted_18$14 = {
10339
10350
  key: 4,
10340
10351
  class: "mint-reagent-list__cell"
10341
10352
  };
10342
- var _hoisted_19$13 = {
10353
+ var _hoisted_19$14 = {
10343
10354
  key: 0,
10344
10355
  class: "mint-reagent-list__expired-text"
10345
10356
  };
10346
- var _hoisted_20$12 = { key: 1 };
10357
+ var _hoisted_20$13 = { key: 1 };
10347
10358
  var _hoisted_21$10 = {
10348
10359
  key: 2,
10349
10360
  class: "mint-reagent-list__badge mint-reagent-list__badge--error"
@@ -10639,7 +10650,7 @@ var ReagentList_default = /* @__PURE__ */ defineComponent({
10639
10650
  }, toDisplayString(reagent.name), 9, _hoisted_14$17)) : (openBlock(), createElementBlock("span", _hoisted_15$17, toDisplayString(reagent.name), 1))])) : createCommentVNode("", true),
10640
10651
  __props.columns.includes("catalog") ? (openBlock(), createElementBlock("td", _hoisted_16$14, toDisplayString(reagent.catalogNumber || "-"), 1)) : createCommentVNode("", true),
10641
10652
  __props.columns.includes("lot") ? (openBlock(), createElementBlock("td", _hoisted_17$14, toDisplayString(reagent.lotNumber || "-"), 1)) : createCommentVNode("", true),
10642
- __props.columns.includes("expiry") ? (openBlock(), createElementBlock("td", _hoisted_18$14, [unref(isReagentExpired)(reagent) ? (openBlock(), createElementBlock("span", _hoisted_19$13, toDisplayString(unref(formatReagentExpiryDate)(reagent.expiryDate)), 1)) : (openBlock(), createElementBlock("span", _hoisted_20$12, toDisplayString(unref(formatReagentExpiryDate)(reagent.expiryDate)), 1)), unref(isReagentExpired)(reagent) ? (openBlock(), createElementBlock("span", _hoisted_21$10, " Expired ")) : unref(isReagentExpiringSoon)(reagent) ? (openBlock(), createElementBlock("span", _hoisted_22$10, [_cache[6] || (_cache[6] = createElementVNode("svg", {
10653
+ __props.columns.includes("expiry") ? (openBlock(), createElementBlock("td", _hoisted_18$14, [unref(isReagentExpired)(reagent) ? (openBlock(), createElementBlock("span", _hoisted_19$14, toDisplayString(unref(formatReagentExpiryDate)(reagent.expiryDate)), 1)) : (openBlock(), createElementBlock("span", _hoisted_20$13, toDisplayString(unref(formatReagentExpiryDate)(reagent.expiryDate)), 1)), unref(isReagentExpired)(reagent) ? (openBlock(), createElementBlock("span", _hoisted_21$10, " Expired ")) : unref(isReagentExpiringSoon)(reagent) ? (openBlock(), createElementBlock("span", _hoisted_22$10, [_cache[6] || (_cache[6] = createElementVNode("svg", {
10643
10654
  class: "mint-reagent-list__badge-icon",
10644
10655
  fill: "none",
10645
10656
  stroke: "currentColor",
@@ -10832,12 +10843,12 @@ var _hoisted_17$13 = {
10832
10843
  class: "sg-field__order"
10833
10844
  };
10834
10845
  var _hoisted_18$13 = { class: "sg-field__layer" };
10835
- var _hoisted_19$12 = [
10846
+ var _hoisted_19$13 = [
10836
10847
  "disabled",
10837
10848
  "aria-label",
10838
10849
  "onClick"
10839
10850
  ];
10840
- var _hoisted_20$11 = [
10851
+ var _hoisted_20$12 = [
10841
10852
  "disabled",
10842
10853
  "aria-label",
10843
10854
  "onClick"
@@ -11256,7 +11267,7 @@ var SmartGroupFieldRecipe_default = /* @__PURE__ */ defineComponent({
11256
11267
  }, [createVNode(Icon, {
11257
11268
  d: ICON.chevUp,
11258
11269
  size: 12
11259
- }, null, 8, ["d"])], 8, _hoisted_19$12),
11270
+ }, null, 8, ["d"])], 8, _hoisted_19$13),
11260
11271
  createElementVNode("button", {
11261
11272
  type: "button",
11262
11273
  class: "sg-field__order-btn",
@@ -11267,7 +11278,7 @@ var SmartGroupFieldRecipe_default = /* @__PURE__ */ defineComponent({
11267
11278
  }, [createVNode(Icon, {
11268
11279
  d: ICON.chev,
11269
11280
  size: 12
11270
- }, null, 8, ["d"])], 8, _hoisted_20$11)
11281
+ }, null, 8, ["d"])], 8, _hoisted_20$12)
11271
11282
  ])) : createCommentVNode("", true),
11272
11283
  createElementVNode("div", _hoisted_21$9, toDisplayString(field.vals), 1)
11273
11284
  ], 2);
@@ -11445,11 +11456,11 @@ var _hoisted_15$15 = {
11445
11456
  var _hoisted_16$12 = ["onClick"];
11446
11457
  var _hoisted_17$12 = ["checked"];
11447
11458
  var _hoisted_18$12 = { class: "mg2-row__name" };
11448
- var _hoisted_19$11 = {
11459
+ var _hoisted_19$12 = {
11449
11460
  key: 0,
11450
11461
  class: "mg2-row__tag"
11451
11462
  };
11452
- var _hoisted_20$10 = {
11463
+ var _hoisted_20$11 = {
11453
11464
  key: 1,
11454
11465
  class: "mg2-row__tag mg2-row__tag--none"
11455
11466
  };
@@ -11777,14 +11788,14 @@ var SmartGroupManual_default = /* @__PURE__ */ defineComponent({
11777
11788
  readonly: ""
11778
11789
  }, null, 8, _hoisted_17$12),
11779
11790
  createElementVNode("span", _hoisted_18$12, toDisplayString(match.sample.name), 1),
11780
- match.sample.group ? (openBlock(), createElementBlock("span", _hoisted_19$11, [
11791
+ match.sample.group ? (openBlock(), createElementBlock("span", _hoisted_19$12, [
11781
11792
  createElementVNode("span", {
11782
11793
  class: "sg-dot",
11783
11794
  style: normalizeStyle({ background: match.sample.color ?? void 0 })
11784
11795
  }, null, 4),
11785
11796
  createTextVNode(toDisplayString(match.sample.group), 1),
11786
11797
  match.sample.sub ? (openBlock(), createElementBlock(Fragment, { key: 0 }, [createTextVNode(" · " + toDisplayString(match.sample.sub), 1)], 64)) : createCommentVNode("", true)
11787
- ])) : (openBlock(), createElementBlock("span", _hoisted_20$10, "unassigned"))
11798
+ ])) : (openBlock(), createElementBlock("span", _hoisted_20$11, "unassigned"))
11788
11799
  ], 10, _hoisted_16$12);
11789
11800
  }), 128))])
11790
11801
  ]), createElementVNode("div", _hoisted_21$8, [
@@ -12995,8 +13006,8 @@ var _hoisted_17$11 = {
12995
13006
  class: "mint-sample-selector__ungrouped-list"
12996
13007
  };
12997
13008
  var _hoisted_18$11 = { class: "mint-sample-selector__new-group" };
12998
- var _hoisted_19$10 = ["value"];
12999
- var _hoisted_20$9 = {
13009
+ var _hoisted_19$11 = ["value"];
13010
+ var _hoisted_20$10 = {
13000
13011
  key: 6,
13001
13012
  class: "mint-sample-selector__flat"
13002
13013
  };
@@ -13358,9 +13369,9 @@ var SampleSelector_default = /* @__PURE__ */ defineComponent({
13358
13369
  class: "mint-sample-selector__color-input",
13359
13370
  value: colorPickerSeed.value,
13360
13371
  onChange: handleColorChange
13361
- }, null, 40, _hoisted_19$10)
13372
+ }, null, 40, _hoisted_19$11)
13362
13373
  ])) : createCommentVNode("", true),
13363
- !isPlaceholderState.value && !groupingEnabled.value ? (openBlock(), createElementBlock("div", _hoisted_20$9, [createElementVNode("div", _hoisted_21$7, [_cache[17] || (_cache[17] = createElementVNode("svg", {
13374
+ !isPlaceholderState.value && !groupingEnabled.value ? (openBlock(), createElementBlock("div", _hoisted_20$10, [createElementVNode("div", _hoisted_21$7, [_cache[17] || (_cache[17] = createElementVNode("svg", {
13364
13375
  class: "mint-sample-selector__search-icon",
13365
13376
  fill: "none",
13366
13377
  stroke: "currentColor",
@@ -13659,8 +13670,8 @@ var _hoisted_15$13 = [
13659
13670
  var _hoisted_16$10 = ["onPointerdown"];
13660
13671
  var _hoisted_17$10 = { class: "mint-schedule__event-title" };
13661
13672
  var _hoisted_18$10 = { class: "mint-schedule__event-time" };
13662
- var _hoisted_19$9 = ["onPointerdown"];
13663
- var _hoisted_20$8 = {
13673
+ var _hoisted_19$10 = ["onPointerdown"];
13674
+ var _hoisted_20$9 = {
13664
13675
  key: 0,
13665
13676
  class: "mint-schedule__blocked-label"
13666
13677
  };
@@ -14015,7 +14026,7 @@ var ScheduleCalendar_default = /* @__PURE__ */ defineComponent({
14015
14026
  key: 1,
14016
14027
  class: "mint-schedule__event-resize-handle mint-schedule__event-resize-handle--bottom",
14017
14028
  onPointerdown: ($event) => onResizePointerDown(event, "bottom", dayIdx, $event)
14018
- }, null, 40, _hoisted_19$9)) : createCommentVNode("", true)
14029
+ }, null, 40, _hoisted_19$10)) : createCommentVNode("", true)
14019
14030
  ])], 46, _hoisted_15$13);
14020
14031
  }), 128)),
14021
14032
  (openBlock(true), createElementBlock(Fragment, null, renderList(unref(getBlockedForDay)(day), (blocked, bIdx) => {
@@ -14023,7 +14034,7 @@ var ScheduleCalendar_default = /* @__PURE__ */ defineComponent({
14023
14034
  key: `b-${bIdx}`,
14024
14035
  class: "mint-schedule__blocked",
14025
14036
  style: normalizeStyle(unref(getBlockedStyle)(blocked))
14026
- }, [blocked.label ? (openBlock(), createElementBlock("span", _hoisted_20$8, toDisplayString(blocked.label), 1)) : createCommentVNode("", true)], 4);
14037
+ }, [blocked.label ? (openBlock(), createElementBlock("span", _hoisted_20$9, toDisplayString(blocked.label), 1)) : createCommentVNode("", true)], 4);
14027
14038
  }), 128)),
14028
14039
  __props.showNowIndicator && unref(isToday)(day) && unref(getNowIndicatorStyle)() ? (openBlock(), createElementBlock("div", {
14029
14040
  key: 0,
@@ -15331,8 +15342,8 @@ var _hoisted_18$9 = {
15331
15342
  class: "mint-settings-modal__swatches",
15332
15343
  "aria-hidden": "true"
15333
15344
  };
15334
- var _hoisted_19$8 = { class: "mint-settings-modal__palette-name" };
15335
- var _hoisted_20$7 = { class: "mint-settings-modal__setting mint-settings-modal__setting--inline" };
15345
+ var _hoisted_19$9 = { class: "mint-settings-modal__palette-name" };
15346
+ var _hoisted_20$8 = { class: "mint-settings-modal__setting mint-settings-modal__setting--inline" };
15336
15347
  var _hoisted_21$5 = {
15337
15348
  class: "mint-settings-modal__status",
15338
15349
  role: "status"
@@ -15786,7 +15797,7 @@ var SettingsModal_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ de
15786
15797
  style: normalizeStyle({ backgroundColor: color })
15787
15798
  }, null, 4);
15788
15799
  }), 128))]),
15789
- createElementVNode("span", _hoisted_19$8, toDisplayString(palette.name), 1),
15800
+ createElementVNode("span", _hoisted_19$9, toDisplayString(palette.name), 1),
15790
15801
  _cache[9] || (_cache[9] = createElementVNode("svg", {
15791
15802
  class: "mint-settings-modal__palette-check",
15792
15803
  viewBox: "0 0 16 16",
@@ -15799,7 +15810,7 @@ var SettingsModal_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ de
15799
15810
  }, [createElementVNode("path", { d: "M3.5 8.5l3 3 6-7" })], -1))
15800
15811
  ], 10, _hoisted_17$9);
15801
15812
  }), 128))])]),
15802
- createElementVNode("div", _hoisted_20$7, [
15813
+ createElementVNode("div", _hoisted_20$8, [
15803
15814
  _cache[12] || (_cache[12] = createElementVNode("div", { class: "mint-settings-modal__setting-text" }, [createElementVNode("span", { class: "mint-settings-modal__setting-label" }, "Table density"), createElementVNode("span", { class: "mint-settings-modal__setting-hint" }, "Adjusts row height in data tables")], -1)),
15804
15815
  createVNode(SegmentedControl_default, {
15805
15816
  "model-value": unref(settings).tableDensity,
@@ -16601,8 +16612,8 @@ var _hoisted_16$8 = [
16601
16612
  ];
16602
16613
  var _hoisted_17$8 = { class: "mint-group-assigner__pill-name" };
16603
16614
  var _hoisted_18$8 = { class: "mint-group-assigner__pill-count" };
16604
- var _hoisted_19$7 = ["onClick"];
16605
- var _hoisted_20$6 = {
16615
+ var _hoisted_19$8 = ["onClick"];
16616
+ var _hoisted_20$7 = {
16606
16617
  key: 0,
16607
16618
  class: "mint-group-assigner__zone-empty"
16608
16619
  };
@@ -16815,9 +16826,9 @@ var GroupAssigner_default = /* @__PURE__ */ defineComponent({
16815
16826
  fill: "none",
16816
16827
  stroke: "currentColor",
16817
16828
  "stroke-width": "2"
16818
- }, [createElementVNode("path", { d: "M6 18L18 6M6 6l12 12" })], -1)])], 8, _hoisted_19$7)
16829
+ }, [createElementVNode("path", { d: "M6 18L18 6M6 6l12 12" })], -1)])], 8, _hoisted_19$8)
16819
16830
  ], 40, _hoisted_16$8);
16820
- }), 128)), unref(zone2Groups).length === 0 ? (openBlock(), createElementBlock("div", _hoisted_20$6, " Drag groups here ")) : createCommentVNode("", true)])], 38)]),
16831
+ }), 128)), unref(zone2Groups).length === 0 ? (openBlock(), createElementBlock("div", _hoisted_20$7, " Drag groups here ")) : createCommentVNode("", true)])], 38)]),
16821
16832
  unref(unassignedGroups).length > 0 ? (openBlock(), createElementBlock("div", _hoisted_21$4, [createElementVNode("div", _hoisted_22$4, [_cache[6] || (_cache[6] = createElementVNode("span", { class: "mint-group-assigner__unassigned-title" }, "Available Groups", -1)), __props.group1.length > 0 || __props.group2.length > 0 ? (openBlock(), createElementBlock("button", {
16822
16833
  key: 0,
16823
16834
  type: "button",
@@ -16956,8 +16967,8 @@ var _hoisted_15$10 = ["value"];
16956
16967
  var _hoisted_16$7 = { class: "mint-reagent-editor__generator" };
16957
16968
  var _hoisted_17$7 = { class: "mint-reagent-editor__generator-inputs" };
16958
16969
  var _hoisted_18$7 = { class: "mint-reagent-editor__field mint-reagent-editor__field--flex" };
16959
- var _hoisted_19$6 = { class: "mint-reagent-editor__field mint-reagent-editor__field--flex" };
16960
- var _hoisted_20$5 = { class: "mint-reagent-editor__presets" };
16970
+ var _hoisted_19$7 = { class: "mint-reagent-editor__field mint-reagent-editor__field--flex" };
16971
+ var _hoisted_20$6 = { class: "mint-reagent-editor__presets" };
16961
16972
  var _hoisted_21$3 = ["onClick"];
16962
16973
  var _hoisted_22$3 = ["disabled"];
16963
16974
  var _hoisted_23$2 = {
@@ -17205,14 +17216,14 @@ var ReagentEditor_default = /* @__PURE__ */ defineComponent({
17205
17216
  min: 0,
17206
17217
  step: 10,
17207
17218
  size: "sm"
17208
- }, null, 8, ["modelValue"])]), createElementVNode("div", _hoisted_19$6, [_cache[10] || (_cache[10] = createElementVNode("label", { class: "mint-reagent-editor__label" }, "Doses", -1)), createVNode(NumberInput_default, {
17219
+ }, null, 8, ["modelValue"])]), createElementVNode("div", _hoisted_19$7, [_cache[10] || (_cache[10] = createElementVNode("label", { class: "mint-reagent-editor__label" }, "Doses", -1)), createVNode(NumberInput_default, {
17209
17220
  modelValue: generatorCount.value,
17210
17221
  "onUpdate:modelValue": _cache[1] || (_cache[1] = ($event) => generatorCount.value = $event),
17211
17222
  min: 2,
17212
17223
  max: __props.maxLevels,
17213
17224
  step: 1,
17214
17225
  size: "sm"
17215
- }, null, 8, ["modelValue", "max"])])]), createElementVNode("div", _hoisted_20$5, [(openBlock(true), createElementBlock(Fragment, null, renderList(__props.presets, (preset) => {
17226
+ }, null, 8, ["modelValue", "max"])])]), createElementVNode("div", _hoisted_20$6, [(openBlock(true), createElementBlock(Fragment, null, renderList(__props.presets, (preset) => {
17216
17227
  return openBlock(), createElementBlock("button", {
17217
17228
  key: preset.label,
17218
17229
  type: "button",
@@ -18805,11 +18816,11 @@ var _hoisted_18$6 = {
18805
18816
  key: 2,
18806
18817
  class: "mint-batch-progress__state"
18807
18818
  };
18808
- var _hoisted_19$5 = {
18819
+ var _hoisted_19$6 = {
18809
18820
  key: 3,
18810
18821
  class: "mint-batch-progress__state"
18811
18822
  };
18812
- var _hoisted_20$4 = {
18823
+ var _hoisted_20$5 = {
18813
18824
  key: 4,
18814
18825
  class: "mint-batch-progress__state"
18815
18826
  };
@@ -18987,11 +18998,11 @@ var BatchProgressList_default = /* @__PURE__ */ defineComponent({
18987
18998
  state: "error",
18988
18999
  size: "sm",
18989
19000
  title: __props.error
18990
- }, null, 8, ["title"])])])) : __props.loading ? (openBlock(), createElementBlock("div", _hoisted_19$5, [renderSlot(_ctx.$slots, "loading", {}, () => [createVNode(DataStateInternal_default, {
19001
+ }, null, 8, ["title"])])])) : __props.loading ? (openBlock(), createElementBlock("div", _hoisted_19$6, [renderSlot(_ctx.$slots, "loading", {}, () => [createVNode(DataStateInternal_default, {
18991
19002
  state: "loading",
18992
19003
  size: "sm",
18993
19004
  "loading-label": "Loading batch"
18994
- })])])) : __props.items.length === 0 ? (openBlock(), createElementBlock("div", _hoisted_20$4, [renderSlot(_ctx.$slots, "empty", {}, () => [createVNode(DataStateInternal_default, {
19005
+ })])])) : __props.items.length === 0 ? (openBlock(), createElementBlock("div", _hoisted_20$5, [renderSlot(_ctx.$slots, "empty", {}, () => [createVNode(DataStateInternal_default, {
18995
19006
  state: "empty",
18996
19007
  size: "sm",
18997
19008
  title: __props.emptyMessage
@@ -19101,8 +19112,8 @@ var _hoisted_16$5 = {
19101
19112
  };
19102
19113
  var _hoisted_17$5 = { class: "mint-summary__pill-key" };
19103
19114
  var _hoisted_18$5 = { class: "mint-summary__pill-value" };
19104
- var _hoisted_19$4 = { class: "mint-summary__table-header" };
19105
- var _hoisted_20$3 = { class: "mint-summary__section-label" };
19115
+ var _hoisted_19$5 = { class: "mint-summary__table-header" };
19116
+ var _hoisted_20$4 = { class: "mint-summary__section-label" };
19106
19117
  var _hoisted_21$1 = { class: "mint-summary__section-count" };
19107
19118
  var _hoisted_22$1 = {
19108
19119
  key: 3,
@@ -19300,7 +19311,7 @@ var ExperimentDataViewer_default = /* @__PURE__ */ defineComponent({
19300
19311
  "searchable"
19301
19312
  ])) : createCommentVNode("", true)
19302
19313
  ]);
19303
- }), 128)) : section.type === "table" && section.rows ? (openBlock(), createElementBlock(Fragment, { key: 1 }, [createElementVNode("div", _hoisted_19$4, [createElementVNode("span", _hoisted_20$3, toDisplayString(section.label), 1), createElementVNode("span", _hoisted_21$1, toDisplayString(section.row_count) + " rows", 1)]), createVNode(DataFrame_default, {
19314
+ }), 128)) : section.type === "table" && section.rows ? (openBlock(), createElementBlock(Fragment, { key: 1 }, [createElementVNode("div", _hoisted_19$5, [createElementVNode("span", _hoisted_20$4, toDisplayString(section.label), 1), createElementVNode("span", _hoisted_21$1, toDisplayString(section.row_count) + " rows", 1)]), createVNode(DataFrame_default, {
19304
19315
  data: section.rows,
19305
19316
  columns: columnsForSection(section.columns || []),
19306
19317
  searchable: (section.rows?.length || 0) > 10,
@@ -19583,8 +19594,8 @@ var _hoisted_18$4 = {
19583
19594
  key: 1,
19584
19595
  class: "mint-resource-card__footer"
19585
19596
  };
19586
- var _hoisted_19$3 = { class: "mint-resource-card__tags" };
19587
- var _hoisted_20$2 = { class: "mint-resource-card__action" };
19597
+ var _hoisted_19$4 = { class: "mint-resource-card__tags" };
19598
+ var _hoisted_20$3 = { class: "mint-resource-card__action" };
19588
19599
  //#endregion
19589
19600
  //#region src/components/ResourceCard.vue
19590
19601
  var ResourceCard_default = /* @__PURE__ */ defineComponent({
@@ -19678,7 +19689,7 @@ var ResourceCard_default = /* @__PURE__ */ defineComponent({
19678
19689
  class: "mint-resource-card__spec"
19679
19690
  }, [createElementVNode("span", _hoisted_16$4, toDisplayString(spec.label), 1), createElementVNode("span", _hoisted_17$4, toDisplayString(spec.value), 1)]);
19680
19691
  }), 128))])])) : createCommentVNode("", true),
19681
- __props.tags.length > 0 || __props.showBookAction || _ctx.$slots.action ? (openBlock(), createElementBlock("div", _hoisted_18$4, [createElementVNode("div", _hoisted_19$3, [(openBlock(true), createElementBlock(Fragment, null, renderList(__props.tags, (tag) => {
19692
+ __props.tags.length > 0 || __props.showBookAction || _ctx.$slots.action ? (openBlock(), createElementBlock("div", _hoisted_18$4, [createElementVNode("div", _hoisted_19$4, [(openBlock(true), createElementBlock(Fragment, null, renderList(__props.tags, (tag) => {
19682
19693
  return openBlock(), createBlock(BasePill_default, {
19683
19694
  key: tag,
19684
19695
  size: "sm"
@@ -19686,7 +19697,7 @@ var ResourceCard_default = /* @__PURE__ */ defineComponent({
19686
19697
  default: withCtx(() => [createTextVNode(toDisplayString(tag), 1)]),
19687
19698
  _: 2
19688
19699
  }, 1024);
19689
- }), 128))]), createElementVNode("div", _hoisted_20$2, [renderSlot(_ctx.$slots, "action", {}, () => [__props.showBookAction ? (openBlock(), createElementBlock("button", {
19700
+ }), 128))]), createElementVNode("div", _hoisted_20$3, [renderSlot(_ctx.$slots, "action", {}, () => [__props.showBookAction ? (openBlock(), createElementBlock("button", {
19690
19701
  key: 0,
19691
19702
  type: "button",
19692
19703
  class: "mint-resource-card__book-btn",
@@ -20656,8 +20667,8 @@ var _hoisted_18$3 = {
20656
20667
  class: "mint-experiment-popover__card mint-experiment-popover__card--error",
20657
20668
  role: "alert"
20658
20669
  };
20659
- var _hoisted_19$2 = { class: "mint-experiment-popover__card-info" };
20660
- var _hoisted_20$1 = { class: "mint-experiment-popover__card-message" };
20670
+ var _hoisted_19$3 = { class: "mint-experiment-popover__card-info" };
20671
+ var _hoisted_20$2 = { class: "mint-experiment-popover__card-message" };
20661
20672
  var _hoisted_21 = { class: "mint-experiment-popover__card-actions" };
20662
20673
  var _hoisted_22 = {
20663
20674
  key: 2,
@@ -20864,7 +20875,7 @@ var ExperimentPopover_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*
20864
20875
  "stroke-linejoin": "round",
20865
20876
  "stroke-width": "1.75",
20866
20877
  d: "M12 9v3.75m9-.75a9 9 0 11-18 0 9 9 0 0118 0zm-9 3.75h.008v.008H12v-.008z"
20867
- })])], -1)), createElementVNode("div", _hoisted_19$2, [_cache[7] || (_cache[7] = createElementVNode("div", { class: "mint-experiment-popover__card-name" }, "Experiment unavailable", -1)), createElementVNode("div", _hoisted_20$1, toDisplayString(__props.error), 1)])]), createElementVNode("div", _hoisted_21, [createElementVNode("button", {
20878
+ })])], -1)), createElementVNode("div", _hoisted_19$3, [_cache[7] || (_cache[7] = createElementVNode("div", { class: "mint-experiment-popover__card-name" }, "Experiment unavailable", -1)), createElementVNode("div", _hoisted_20$2, toDisplayString(__props.error), 1)])]), createElementVNode("div", _hoisted_21, [createElementVNode("button", {
20868
20879
  type: "button",
20869
20880
  class: "mint-experiment-popover__change-btn",
20870
20881
  onClick: handleSelect
@@ -20994,12 +21005,12 @@ var _hoisted_17$2 = {
20994
21005
  d: "M3.5 8.5l3 3 6-7"
20995
21006
  };
20996
21007
  var _hoisted_18$2 = { key: 1 };
20997
- var _hoisted_19$1 = {
21008
+ var _hoisted_19$2 = {
20998
21009
  key: 0,
20999
21010
  class: "mint-fit-panel__check-shape",
21000
21011
  d: "M8 1.5l7 12.5H1z"
21001
21012
  };
21002
- var _hoisted_20 = {
21013
+ var _hoisted_20$1 = {
21003
21014
  key: 1,
21004
21015
  class: "mint-fit-panel__check-shape",
21005
21016
  cx: "8",
@@ -21119,7 +21130,7 @@ var FitPanel_default = /* @__PURE__ */ defineComponent({
21119
21130
  return openBlock(), createElementBlock("span", {
21120
21131
  key: idx,
21121
21132
  class: normalizeClass(["mint-fit-panel__check", `mint-fit-panel__check--${item.variant ?? "default"}`])
21122
- }, [(openBlock(), createElementBlock("svg", _hoisted_16$2, [item.variant === "success" ? (openBlock(), createElementBlock("path", _hoisted_17$2)) : (openBlock(), createElementBlock("g", _hoisted_18$2, [item.variant === "warning" ? (openBlock(), createElementBlock("path", _hoisted_19$1)) : (openBlock(), createElementBlock("circle", _hoisted_20)), _cache[3] || (_cache[3] = createElementVNode("path", {
21133
+ }, [(openBlock(), createElementBlock("svg", _hoisted_16$2, [item.variant === "success" ? (openBlock(), createElementBlock("path", _hoisted_17$2)) : (openBlock(), createElementBlock("g", _hoisted_18$2, [item.variant === "warning" ? (openBlock(), createElementBlock("path", _hoisted_19$2)) : (openBlock(), createElementBlock("circle", _hoisted_20$1)), _cache[3] || (_cache[3] = createElementVNode("path", {
21123
21134
  class: "mint-fit-panel__check-mark",
21124
21135
  d: "M8 6v3M8 11.5v.01"
21125
21136
  }, null, -1))]))])), createTextVNode(" " + toDisplayString(item.label) + " " + toDisplayString(item.value), 1)], 2);
@@ -21178,19 +21189,24 @@ var _hoisted_1$2 = [
21178
21189
  ];
21179
21190
  var _hoisted_2$2 = {
21180
21191
  key: 0,
21181
- class: "mint-picker__skeleton"
21192
+ class: "mint-picker__truncated",
21193
+ role: "status"
21182
21194
  };
21183
21195
  var _hoisted_3$2 = {
21184
21196
  key: 1,
21185
- role: "alert",
21186
- class: "mint-picker__empty"
21197
+ class: "mint-picker__skeleton"
21187
21198
  };
21188
21199
  var _hoisted_4$2 = {
21189
21200
  key: 2,
21201
+ role: "alert",
21202
+ class: "mint-picker__empty"
21203
+ };
21204
+ var _hoisted_5$2 = {
21205
+ key: 3,
21190
21206
  class: "mint-picker__empty",
21191
21207
  role: "status"
21192
21208
  };
21193
- var _hoisted_5$2 = [
21209
+ var _hoisted_6$2 = [
21194
21210
  "role",
21195
21211
  "data-path",
21196
21212
  "aria-level",
@@ -21203,8 +21219,8 @@ var _hoisted_5$2 = [
21203
21219
  "onDblclick",
21204
21220
  "onKeydown"
21205
21221
  ];
21206
- var _hoisted_6$2 = { class: "mint-picker__cell mint-picker__cell--check" };
21207
- var _hoisted_7$2 = {
21222
+ var _hoisted_7$2 = { class: "mint-picker__cell mint-picker__cell--check" };
21223
+ var _hoisted_8$2 = {
21208
21224
  key: 0,
21209
21225
  class: "mint-picker__lock",
21210
21226
  viewBox: "0 0 24 24",
@@ -21213,13 +21229,13 @@ var _hoisted_7$2 = {
21213
21229
  "stroke-width": "1.8",
21214
21230
  "aria-hidden": "true"
21215
21231
  };
21216
- var _hoisted_8$2 = ["d"];
21217
- var _hoisted_9$2 = { class: "mint-picker__cell mint-picker__cell--name" };
21218
- var _hoisted_10$2 = {
21232
+ var _hoisted_9$2 = ["d"];
21233
+ var _hoisted_10$2 = { class: "mint-picker__cell mint-picker__cell--name" };
21234
+ var _hoisted_11$2 = {
21219
21235
  key: 1,
21220
21236
  class: "mint-picker__disclosure"
21221
21237
  };
21222
- var _hoisted_11$2 = {
21238
+ var _hoisted_12$2 = {
21223
21239
  class: "mint-picker__node-icon",
21224
21240
  viewBox: "0 0 24 24",
21225
21241
  fill: "none",
@@ -21227,19 +21243,19 @@ var _hoisted_11$2 = {
21227
21243
  "stroke-width": "1.7",
21228
21244
  "aria-hidden": "true"
21229
21245
  };
21230
- var _hoisted_12$2 = ["d"];
21231
- var _hoisted_13$2 = { class: "mint-picker__name" };
21232
- var _hoisted_14$2 = { key: 0 };
21233
- var _hoisted_15$2 = {
21246
+ var _hoisted_13$2 = ["d"];
21247
+ var _hoisted_14$2 = { class: "mint-picker__name" };
21248
+ var _hoisted_15$2 = { key: 0 };
21249
+ var _hoisted_16$1 = {
21234
21250
  key: 1,
21235
21251
  class: "mint-picker__reason"
21236
21252
  };
21237
- var _hoisted_16$1 = {
21253
+ var _hoisted_17$1 = {
21238
21254
  key: 2,
21239
21255
  class: "mint-picker__parent-name"
21240
21256
  };
21241
- var _hoisted_17$1 = { class: "mint-picker__cell mint-picker__cell--time" };
21242
- var _hoisted_18$1 = {
21257
+ var _hoisted_18$1 = { class: "mint-picker__cell mint-picker__cell--time" };
21258
+ var _hoisted_19$1 = {
21243
21259
  key: 0,
21244
21260
  class: "mint-picker__branch-error",
21245
21261
  role: "alert"
@@ -21255,6 +21271,7 @@ var FilePickerListInternal_default = /* @__PURE__ */ defineComponent({
21255
21271
  loading: { type: Boolean },
21256
21272
  error: {},
21257
21273
  query: {},
21274
+ truncated: { type: Boolean },
21258
21275
  mode: {},
21259
21276
  selected: { type: Function },
21260
21277
  selectable: { type: Function },
@@ -21382,106 +21399,110 @@ var FilePickerListInternal_default = /* @__PURE__ */ defineComponent({
21382
21399
  "aria-label": "Folders and files",
21383
21400
  "aria-multiselectable": multi.value,
21384
21401
  "aria-busy": __props.loading
21385
- }, [_cache[6] || (_cache[6] = createElementVNode("div", {
21386
- class: "mint-picker__list-head",
21387
- "aria-hidden": "true"
21388
21402
  }, [
21389
- createElementVNode("span"),
21390
- createElementVNode("span", null, "Name"),
21391
- createElementVNode("span", null, "Size"),
21392
- createElementVNode("span", null, "Modified")
21393
- ], -1)), __props.loading ? (openBlock(), createElementBlock("div", _hoisted_2$2, [(openBlock(), createElementBlock(Fragment, null, renderList(6, (n) => {
21394
- return createVNode(Skeleton_default, {
21395
- key: n,
21396
- width: "100%",
21397
- height: "1.25rem"
21398
- });
21399
- }), 64))])) : __props.error ? (openBlock(), createElementBlock("div", _hoisted_3$2, [createElementVNode("span", null, toDisplayString(__props.error), 1), createVNode(BaseButton_default, {
21400
- variant: "secondary",
21401
- size: "sm",
21402
- onClick: _cache[0] || (_cache[0] = ($event) => emit("retry"))
21403
- }, {
21404
- default: withCtx(() => [..._cache[2] || (_cache[2] = [createTextVNode("Try again", -1)])]),
21405
- _: 1
21406
- })])) : !__props.rows.length ? (openBlock(), createElementBlock("div", _hoisted_4$2, [createElementVNode("strong", null, toDisplayString(__props.query ? "No matching folders or files" : __props.emptyTitle || "No readable files"), 1), createElementVNode("span", null, toDisplayString(__props.query ? "Try a different search or include subfolders." : "Choose another location."), 1)])) : (openBlock(true), createElementBlock(Fragment, { key: 3 }, renderList(__props.rows, (row) => {
21407
- return openBlock(), createElementBlock(Fragment, { key: row.node.path }, [createElementVNode("div", {
21408
- role: tree.value ? "treeitem" : "option",
21409
- "data-path": row.node.path,
21410
- "aria-level": tree.value ? row.depth + 1 : void 0,
21411
- "aria-selected": __props.selected(row.node),
21412
- "aria-disabled": !!reason(row.node),
21413
- "aria-expanded": tree.value && row.node.kind === "folder" && !reason(row.node) ? row.expanded : void 0,
21414
- tabindex: !reason(row.node) && row.node.path === focusablePath.value ? 0 : -1,
21415
- class: normalizeClass(["mint-picker__row", {
21416
- "mint-picker__row--selected": __props.selected(row.node),
21417
- "mint-picker__row--unreadable": !!reason(row.node)
21418
- }]),
21419
- style: normalizeStyle({ "--picker-depth": row.depth }),
21420
- title: reason(row.node) || row.node.name,
21421
- onClick: ($event) => !reason(row.node) && emit("select", row.node, $event),
21422
- onDblclick: ($event) => !reason(row.node) && emit("enter", row.node),
21423
- onKeydown: ($event) => keydown($event, row)
21403
+ _cache[6] || (_cache[6] = createElementVNode("div", {
21404
+ class: "mint-picker__list-head",
21405
+ "aria-hidden": "true"
21424
21406
  }, [
21425
- createElementVNode("span", _hoisted_6$2, [locked(row.node) ? (openBlock(), createElementBlock("svg", _hoisted_7$2, [createElementVNode("path", { d: unref(FILE_PICKER_ICONS).lock }, null, 8, _hoisted_8$2)])) : multi.value && __props.selectable(row.node) ? (openBlock(), createBlock(BaseCheckbox_default, {
21426
- key: 1,
21427
- size: "sm",
21428
- inert: "",
21429
- "aria-hidden": "true",
21430
- "model-value": __props.selected(row.node),
21431
- indeterminate: partial(row.node)
21432
- }, null, 8, ["model-value", "indeterminate"])) : createCommentVNode("", true)]),
21433
- createElementVNode("span", _hoisted_9$2, [
21434
- tree.value ? (openBlock(), createElementBlock(Fragment, { key: 0 }, [row.node.kind === "folder" && row.node.hasChildren !== false && !reason(row.node) ? (openBlock(), createBlock(IconButton_default, {
21435
- key: 0,
21436
- size: "sm",
21437
- variant: "ghost",
21438
- class: "mint-picker__disclosure",
21439
- label: `${row.expanded ? "Collapse" : "Expand"} ${row.node.name}`,
21440
- tabindex: "-1",
21441
- loading: row.loading,
21442
- onClick: withModifiers(($event) => emit("expand", row.node), ["stop"]),
21443
- onDblclick: _cache[1] || (_cache[1] = withModifiers(() => {}, ["stop"]))
21444
- }, {
21445
- default: withCtx(() => [(openBlock(), createElementBlock("svg", {
21446
- viewBox: "0 0 16 16",
21447
- fill: "currentColor",
21448
- "aria-hidden": "true",
21449
- class: normalizeClass({ "mint-picker__chevron--open": row.expanded })
21450
- }, [..._cache[3] || (_cache[3] = [createElementVNode("path", { d: "m6 3 5 5-5 5z" }, null, -1)])], 2))]),
21451
- _: 2
21452
- }, 1032, [
21453
- "label",
21454
- "loading",
21455
- "onClick"
21456
- ])) : (openBlock(), createElementBlock("span", _hoisted_10$2))], 64)) : createCommentVNode("", true),
21457
- (openBlock(), createElementBlock("svg", _hoisted_11$2, [createElementVNode("path", { d: row.node.kind === "folder" ? unref(FILE_PICKER_ICONS).folder : unref(FILE_PICKER_ICONS).file }, null, 8, _hoisted_12$2)])),
21458
- createElementVNode("span", _hoisted_13$2, [
21459
- createTextVNode(toDisplayString(parts(row.node.name)[0]), 1),
21460
- parts(row.node.name)[1] ? (openBlock(), createElementBlock("mark", _hoisted_14$2, toDisplayString(parts(row.node.name)[1]), 1)) : createCommentVNode("", true),
21461
- createTextVNode(toDisplayString(parts(row.node.name)[2]), 1)
21462
- ]),
21463
- reason(row.node) ? (openBlock(), createElementBlock("span", _hoisted_15$2, toDisplayString(shortReason(row.node)), 1)) : __props.query && row.node.parentName ? (openBlock(), createElementBlock("span", _hoisted_16$1, toDisplayString(row.node.parentName), 1)) : createCommentVNode("", true),
21464
- __props.query && __props.mode === "folder" && row.node.kind === "file" && row.node.parentPath && !reason(row.node) ? (openBlock(), createBlock(BaseButton_default, {
21465
- key: 3,
21466
- variant: "ghost",
21467
- size: "sm",
21468
- onClick: withModifiers(($event) => emit("parent", row.node), ["stop"])
21469
- }, {
21470
- default: withCtx(() => [..._cache[4] || (_cache[4] = [createTextVNode("Select its folder", -1)])]),
21471
- _: 1
21472
- }, 8, ["onClick"])) : createCommentVNode("", true)
21473
- ]),
21474
- createElementVNode("span", { class: normalizeClass(["mint-picker__cell mint-picker__cell--size", { "mint-picker__partial": partial(row.node) }]) }, toDisplayString(size(row.node)), 3),
21475
- createElementVNode("span", _hoisted_17$1, toDisplayString(unref(formatModified)(row.node.modifiedAt)), 1)
21476
- ], 46, _hoisted_5$2), row.error ? (openBlock(), createElementBlock("div", _hoisted_18$1, [createTextVNode(toDisplayString(row.error), 1), createVNode(BaseButton_default, {
21477
- variant: "ghost",
21407
+ createElementVNode("span"),
21408
+ createElementVNode("span", null, "Name"),
21409
+ createElementVNode("span", null, "Size"),
21410
+ createElementVNode("span", null, "Modified")
21411
+ ], -1)),
21412
+ __props.truncated && !__props.loading && !__props.error && __props.rows.length ? (openBlock(), createElementBlock("p", _hoisted_2$2, " Showing the first " + toDisplayString(__props.rows.length) + " matches. Search a smaller folder or use a more specific search to see the rest. ", 1)) : createCommentVNode("", true),
21413
+ __props.loading ? (openBlock(), createElementBlock("div", _hoisted_3$2, [(openBlock(), createElementBlock(Fragment, null, renderList(6, (n) => {
21414
+ return createVNode(Skeleton_default, {
21415
+ key: n,
21416
+ width: "100%",
21417
+ height: "1.25rem"
21418
+ });
21419
+ }), 64))])) : __props.error ? (openBlock(), createElementBlock("div", _hoisted_4$2, [createElementVNode("span", null, toDisplayString(__props.error), 1), createVNode(BaseButton_default, {
21420
+ variant: "secondary",
21478
21421
  size: "sm",
21479
- onClick: ($event) => emit("expand", row.node)
21422
+ onClick: _cache[0] || (_cache[0] = ($event) => emit("retry"))
21480
21423
  }, {
21481
- default: withCtx(() => [..._cache[5] || (_cache[5] = [createTextVNode("Close branch", -1)])]),
21424
+ default: withCtx(() => [..._cache[2] || (_cache[2] = [createTextVNode("Try again", -1)])]),
21482
21425
  _: 1
21483
- }, 8, ["onClick"])])) : createCommentVNode("", true)], 64);
21484
- }), 128))], 8, _hoisted_1$2);
21426
+ })])) : !__props.rows.length ? (openBlock(), createElementBlock("div", _hoisted_5$2, [createElementVNode("strong", null, toDisplayString(__props.truncated ? "Search stopped before finding a match" : __props.query ? "No matching folders or files" : __props.emptyTitle || "No readable files"), 1), createElementVNode("span", null, toDisplayString(__props.truncated ? "Search a smaller folder or use a more specific search." : __props.query ? "Try a different search or include subfolders." : "Choose another location."), 1)])) : (openBlock(true), createElementBlock(Fragment, { key: 4 }, renderList(__props.rows, (row) => {
21427
+ return openBlock(), createElementBlock(Fragment, { key: row.node.path }, [createElementVNode("div", {
21428
+ role: tree.value ? "treeitem" : "option",
21429
+ "data-path": row.node.path,
21430
+ "aria-level": tree.value ? row.depth + 1 : void 0,
21431
+ "aria-selected": __props.selected(row.node),
21432
+ "aria-disabled": !!reason(row.node),
21433
+ "aria-expanded": tree.value && row.node.kind === "folder" && !reason(row.node) ? row.expanded : void 0,
21434
+ tabindex: !reason(row.node) && row.node.path === focusablePath.value ? 0 : -1,
21435
+ class: normalizeClass(["mint-picker__row", {
21436
+ "mint-picker__row--selected": __props.selected(row.node),
21437
+ "mint-picker__row--unreadable": !!reason(row.node)
21438
+ }]),
21439
+ style: normalizeStyle({ "--picker-depth": row.depth }),
21440
+ title: reason(row.node) || row.node.name,
21441
+ onClick: ($event) => !reason(row.node) && emit("select", row.node, $event),
21442
+ onDblclick: ($event) => !reason(row.node) && emit("enter", row.node),
21443
+ onKeydown: ($event) => keydown($event, row)
21444
+ }, [
21445
+ createElementVNode("span", _hoisted_7$2, [locked(row.node) ? (openBlock(), createElementBlock("svg", _hoisted_8$2, [createElementVNode("path", { d: unref(FILE_PICKER_ICONS).lock }, null, 8, _hoisted_9$2)])) : multi.value && __props.selectable(row.node) ? (openBlock(), createBlock(BaseCheckbox_default, {
21446
+ key: 1,
21447
+ size: "sm",
21448
+ inert: "",
21449
+ "aria-hidden": "true",
21450
+ "model-value": __props.selected(row.node),
21451
+ indeterminate: partial(row.node)
21452
+ }, null, 8, ["model-value", "indeterminate"])) : createCommentVNode("", true)]),
21453
+ createElementVNode("span", _hoisted_10$2, [
21454
+ tree.value ? (openBlock(), createElementBlock(Fragment, { key: 0 }, [row.node.kind === "folder" && row.node.hasChildren !== false && !reason(row.node) ? (openBlock(), createBlock(IconButton_default, {
21455
+ key: 0,
21456
+ size: "sm",
21457
+ variant: "ghost",
21458
+ class: "mint-picker__disclosure",
21459
+ label: `${row.expanded ? "Collapse" : "Expand"} ${row.node.name}`,
21460
+ tabindex: "-1",
21461
+ loading: row.loading,
21462
+ onClick: withModifiers(($event) => emit("expand", row.node), ["stop"]),
21463
+ onDblclick: _cache[1] || (_cache[1] = withModifiers(() => {}, ["stop"]))
21464
+ }, {
21465
+ default: withCtx(() => [(openBlock(), createElementBlock("svg", {
21466
+ viewBox: "0 0 16 16",
21467
+ fill: "currentColor",
21468
+ "aria-hidden": "true",
21469
+ class: normalizeClass({ "mint-picker__chevron--open": row.expanded })
21470
+ }, [..._cache[3] || (_cache[3] = [createElementVNode("path", { d: "m6 3 5 5-5 5z" }, null, -1)])], 2))]),
21471
+ _: 2
21472
+ }, 1032, [
21473
+ "label",
21474
+ "loading",
21475
+ "onClick"
21476
+ ])) : (openBlock(), createElementBlock("span", _hoisted_11$2))], 64)) : createCommentVNode("", true),
21477
+ (openBlock(), createElementBlock("svg", _hoisted_12$2, [createElementVNode("path", { d: row.node.kind === "folder" ? unref(FILE_PICKER_ICONS).folder : unref(FILE_PICKER_ICONS).file }, null, 8, _hoisted_13$2)])),
21478
+ createElementVNode("span", _hoisted_14$2, [
21479
+ createTextVNode(toDisplayString(parts(row.node.name)[0]), 1),
21480
+ parts(row.node.name)[1] ? (openBlock(), createElementBlock("mark", _hoisted_15$2, toDisplayString(parts(row.node.name)[1]), 1)) : createCommentVNode("", true),
21481
+ createTextVNode(toDisplayString(parts(row.node.name)[2]), 1)
21482
+ ]),
21483
+ reason(row.node) ? (openBlock(), createElementBlock("span", _hoisted_16$1, toDisplayString(shortReason(row.node)), 1)) : __props.query && row.node.parentName ? (openBlock(), createElementBlock("span", _hoisted_17$1, toDisplayString(row.node.parentName), 1)) : createCommentVNode("", true),
21484
+ __props.query && __props.mode === "folder" && row.node.kind === "file" && row.node.parentPath && !reason(row.node) ? (openBlock(), createBlock(BaseButton_default, {
21485
+ key: 3,
21486
+ variant: "ghost",
21487
+ size: "sm",
21488
+ onClick: withModifiers(($event) => emit("parent", row.node), ["stop"])
21489
+ }, {
21490
+ default: withCtx(() => [..._cache[4] || (_cache[4] = [createTextVNode("Select its folder", -1)])]),
21491
+ _: 1
21492
+ }, 8, ["onClick"])) : createCommentVNode("", true)
21493
+ ]),
21494
+ createElementVNode("span", { class: normalizeClass(["mint-picker__cell mint-picker__cell--size", { "mint-picker__partial": partial(row.node) }]) }, toDisplayString(size(row.node)), 3),
21495
+ createElementVNode("span", _hoisted_18$1, toDisplayString(unref(formatModified)(row.node.modifiedAt)), 1)
21496
+ ], 46, _hoisted_6$2), row.error ? (openBlock(), createElementBlock("div", _hoisted_19$1, [createTextVNode(toDisplayString(row.error), 1), createVNode(BaseButton_default, {
21497
+ variant: "ghost",
21498
+ size: "sm",
21499
+ onClick: ($event) => emit("expand", row.node)
21500
+ }, {
21501
+ default: withCtx(() => [..._cache[5] || (_cache[5] = [createTextVNode("Close branch", -1)])]),
21502
+ _: 1
21503
+ }, 8, ["onClick"])])) : createCommentVNode("", true)], 64);
21504
+ }), 128))
21505
+ ], 8, _hoisted_1$2);
21485
21506
  };
21486
21507
  }
21487
21508
  });
@@ -21594,7 +21615,25 @@ var FilePickerPreviewInternal_default = /* @__PURE__ */ defineComponent({
21594
21615
  });
21595
21616
  //#endregion
21596
21617
  //#region src/composables/filePicker/usePickerNavigation.ts
21597
- function usePickerNavigation(adapter, request, systemFilter = () => true) {
21618
+ var byName = new Intl.Collator(void 0, {
21619
+ numeric: true,
21620
+ sensitivity: "base"
21621
+ }).compare;
21622
+ /** Folders first; undated rows go last in either time order. */
21623
+ function ordered(items, sort) {
21624
+ if (!sort) return items;
21625
+ const times = new Map(items.map((node) => [node, node.modifiedAt ? Date.parse(node.modifiedAt) : NaN]));
21626
+ const time = (node) => times.get(node);
21627
+ return [...items].sort((a, b) => {
21628
+ if (a.kind !== b.kind) return a.kind === "folder" ? -1 : 1;
21629
+ if (sort === "name") return byName(a.name, b.name);
21630
+ if (sort === "name-desc") return byName(b.name, a.name);
21631
+ const [ta, tb] = [time(a), time(b)];
21632
+ if (Number.isNaN(ta) || Number.isNaN(tb)) return Number.isNaN(ta) === Number.isNaN(tb) ? byName(a.name, b.name) : Number.isNaN(ta) ? 1 : -1;
21633
+ return (sort === "newest" ? tb - ta : ta - tb) || byName(a.name, b.name);
21634
+ });
21635
+ }
21636
+ function usePickerNavigation(adapter, request, systemFilter = () => true, sort = () => void 0) {
21598
21637
  const path = shallowRef("");
21599
21638
  const trail = ref([]);
21600
21639
  const entries = shallowRef([]);
@@ -21605,6 +21644,8 @@ function usePickerNavigation(adapter, request, systemFilter = () => true) {
21605
21644
  const expansionErrors = ref(/* @__PURE__ */ new Map());
21606
21645
  const loading = shallowRef(false);
21607
21646
  const error = shallowRef("");
21647
+ /** True when the current search results stopped at an adapter limit. */
21648
+ const truncated = shallowRef(false);
21608
21649
  let epoch = 0;
21609
21650
  let navigation = 0;
21610
21651
  let controller;
@@ -21724,13 +21765,16 @@ function usePickerNavigation(adapter, request, systemFilter = () => true) {
21724
21765
  };
21725
21766
  loading.value = true;
21726
21767
  error.value = "";
21768
+ truncated.value = false;
21727
21769
  entries.value = [];
21728
21770
  try {
21729
- const items = query.trim() ? await adapter().search(query.trim(), {
21771
+ const found = query.trim() ? await adapter().search(query.trim(), {
21730
21772
  path: path.value,
21731
21773
  recursive
21732
21774
  }, options) : path.value ? await loadChildren(path.value, [], refresh) : await adapter().listRoot(options);
21733
21775
  if (token !== navigation) return;
21776
+ const items = Array.isArray(found) ? found : found.nodes;
21777
+ truncated.value = !Array.isArray(found) && found.truncated;
21734
21778
  register(items, query.trim() ? void 0 : path.value);
21735
21779
  entries.value = items;
21736
21780
  if (!query.trim()) prefetch(items);
@@ -21776,8 +21820,9 @@ function usePickerNavigation(adapter, request, systemFilter = () => true) {
21776
21820
  }
21777
21821
  const rows = computed(() => {
21778
21822
  const result = [];
21823
+ const order = sort();
21779
21824
  function visit(items, depth, ancestors) {
21780
- for (const item of items) {
21825
+ for (const item of ordered(items, order)) {
21781
21826
  if (ancestors.has(item.path) || depth > 30) continue;
21782
21827
  const node = nodes.value.get(item.path) ?? item;
21783
21828
  if (!isAllowed(node)) continue;
@@ -21806,6 +21851,7 @@ function usePickerNavigation(adapter, request, systemFilter = () => true) {
21806
21851
  expansionErrors,
21807
21852
  loading,
21808
21853
  error,
21854
+ truncated,
21809
21855
  rows,
21810
21856
  isAllowed,
21811
21857
  clear,
@@ -22111,12 +22157,13 @@ function useFilePicker(props, emit, searchArea) {
22111
22157
  const source = shallowRef(allowedSources.value.includes(props.initialSelection?.source) ? props.initialSelection.source : allowedSources.value[0] ?? "server");
22112
22158
  const query = shallowRef("");
22113
22159
  const recursive = shallowRef(false);
22160
+ const sort = shallowRef(props.defaultSort);
22114
22161
  const skipBlanks = shallowRef(false);
22115
22162
  const reviewing = shallowRef(false);
22116
22163
  const localFiles = shallowRef([]);
22117
22164
  const localPaths = /* @__PURE__ */ new WeakMap();
22118
22165
  const localAdapter = computed(() => localFilesAdapter(localFiles.value, localFiles.value.map((file) => localPaths.get(toRaw(file)))));
22119
- const nav = usePickerNavigation(() => source.value === "localFile" ? localAdapter.value : props.adapter, () => ({ source: source.value }), (node) => props.systemFilter?.(node, source.value) !== false);
22166
+ const nav = usePickerNavigation(() => source.value === "localFile" ? localAdapter.value : props.adapter, () => ({ source: source.value }), (node) => props.systemFilter?.(node, source.value) !== false, () => sort.value);
22120
22167
  const capability = computed(() => props.capabilities[source.value]);
22121
22168
  const selection = usePickerSelection(nav, () => props.selectionMode, () => capability.value, () => skipBlanks.value);
22122
22169
  const { path, trail, loading, error, rows } = nav;
@@ -22199,6 +22246,7 @@ function useFilePicker(props, emit, searchArea) {
22199
22246
  watch(() => props.open, (open) => {
22200
22247
  clearTimeout(timer);
22201
22248
  if (open) {
22249
+ sort.value = props.defaultSort;
22202
22250
  if (!initialized) {
22203
22251
  path.value = props.initialPath;
22204
22252
  if (path.value) trail.value = [{
@@ -22360,10 +22408,11 @@ function useFilePicker(props, emit, searchArea) {
22360
22408
  }
22361
22409
  async function selectLocalFiles() {
22362
22410
  const token = openGeneration;
22363
- const items = props.selectionMode === "single-file" || props.selectionMode === "multi-file" ? await localAdapter.value.search("", {
22411
+ const found = props.selectionMode === "single-file" || props.selectionMode === "multi-file" ? await localAdapter.value.search("", {
22364
22412
  path: "",
22365
22413
  recursive: true
22366
22414
  }) : nav.entries.value;
22415
+ const items = Array.isArray(found) ? found : found.nodes;
22367
22416
  if (token !== openGeneration || !props.open || source.value !== "localFile") return;
22368
22417
  nav.register(items);
22369
22418
  const candidates = items.filter((node) => selection.selectable(node));
@@ -22408,6 +22457,7 @@ function useFilePicker(props, emit, searchArea) {
22408
22457
  source,
22409
22458
  query,
22410
22459
  recursive,
22460
+ sort,
22411
22461
  skipBlanks,
22412
22462
  reviewing,
22413
22463
  nav,
@@ -22470,32 +22520,38 @@ var _hoisted_8 = {
22470
22520
  key: 0,
22471
22521
  class: "mint-picker__accepts"
22472
22522
  };
22473
- var _hoisted_9 = ["aria-pressed"];
22474
- var _hoisted_10 = ["disabled"];
22475
- var _hoisted_11 = {
22523
+ var _hoisted_9 = [
22524
+ "aria-expanded",
22525
+ "aria-label",
22526
+ "onClick",
22527
+ "onKeydown"
22528
+ ];
22529
+ var _hoisted_10 = ["aria-pressed"];
22530
+ var _hoisted_11 = ["disabled"];
22531
+ var _hoisted_12 = {
22476
22532
  key: 1,
22477
22533
  class: "mint-picker__empty"
22478
22534
  };
22479
- var _hoisted_12 = {
22535
+ var _hoisted_13 = {
22480
22536
  key: 0,
22481
22537
  class: "mint-picker__local-upload"
22482
22538
  };
22483
- var _hoisted_13 = {
22539
+ var _hoisted_14 = {
22484
22540
  key: 0,
22485
22541
  role: "alert"
22486
22542
  };
22487
- var _hoisted_14 = {
22543
+ var _hoisted_15 = {
22488
22544
  key: 1,
22489
22545
  class: "mint-picker__workspace"
22490
22546
  };
22491
- var _hoisted_15 = { class: "mint-picker__footer" };
22492
- var _hoisted_16 = {
22547
+ var _hoisted_16 = { class: "mint-picker__footer" };
22548
+ var _hoisted_17 = {
22493
22549
  class: "mint-picker__receipt",
22494
22550
  role: "status"
22495
22551
  };
22496
- var _hoisted_17 = { class: "mint-picker__summary" };
22497
- var _hoisted_18 = { key: 2 };
22498
- var _hoisted_19 = { class: "mint-picker__actions" };
22552
+ var _hoisted_18 = { class: "mint-picker__summary" };
22553
+ var _hoisted_19 = { key: 2 };
22554
+ var _hoisted_20 = { class: "mint-picker__actions" };
22499
22555
  //#endregion
22500
22556
  //#region src/components/FilePicker.vue
22501
22557
  var FilePicker_default = /* @__PURE__ */ defineComponent({
@@ -22510,6 +22566,7 @@ var FilePicker_default = /* @__PURE__ */ defineComponent({
22510
22566
  initialSelection: { default: null },
22511
22567
  title: { default: "Choose data" },
22512
22568
  view: { default: "list" },
22569
+ defaultSort: { default: "newest" },
22513
22570
  systemFilter: {}
22514
22571
  },
22515
22572
  emits: [
@@ -22530,7 +22587,7 @@ var FilePicker_default = /* @__PURE__ */ defineComponent({
22530
22587
  const props = __props;
22531
22588
  const emit = __emit;
22532
22589
  const uploadError = ref("");
22533
- const { previewNode, sourceNames, mounts, segments, activeSegment, mountView, allowedSources, source, query, recursive, skipBlanks, reviewing, nav, selection, capability, path, trail, loading, error, rows, roots, chosen, focused, resolving, resolutionError, confirmLabel, folderCount, canConfirm, chooseSegment, clearSelection, selectNode, enter, up, refresh, selectParent, chooseLocal, cancel, confirm, keyboard } = useFilePicker(props, emit, useTemplateRef("searchArea"));
22590
+ const { previewNode, sourceNames, mounts, segments, activeSegment, mountView, allowedSources, source, query, recursive, sort, skipBlanks, reviewing, nav, selection, capability, path, trail, loading, error, rows, roots, chosen, focused, resolving, resolutionError, confirmLabel, folderCount, canConfirm, chooseSegment, clearSelection, selectNode, enter, up, refresh, selectParent, chooseLocal, cancel, confirm, keyboard } = useFilePicker(props, emit, useTemplateRef("searchArea"));
22534
22591
  const sourceLabel = computed(() => {
22535
22592
  const node = previewNode.value;
22536
22593
  if (!mountView.value || !node) return sourceNames[source.value];
@@ -22540,6 +22597,17 @@ var FilePicker_default = /* @__PURE__ */ defineComponent({
22540
22597
  }
22541
22598
  return mounts.value.find((item) => item.path === props.adapter.mountOf?.(node.path))?.name ?? sourceNames.server;
22542
22599
  });
22600
+ const SORT_LABELS = {
22601
+ newest: "Newest first",
22602
+ oldest: "Oldest first",
22603
+ name: "Name A–Z",
22604
+ "name-desc": "Name Z–A"
22605
+ };
22606
+ const sortItems = computed(() => Object.keys(SORT_LABELS).map((id) => ({
22607
+ id,
22608
+ label: SORT_LABELS[id],
22609
+ checked: sort.value === id
22610
+ })));
22543
22611
  const accepts = computed(() => (capability.value?.formats ?? []).map((format) => `.${format.replace(/^\./, "")}`).join(" "));
22544
22612
  const summary = computed(() => {
22545
22613
  if (!roots.value.length) return "No selection";
@@ -22582,7 +22650,7 @@ var FilePicker_default = /* @__PURE__ */ defineComponent({
22582
22650
  "aria-label": "Search folders and files",
22583
22651
  placeholder: "Search this source"
22584
22652
  }, {
22585
- prefix: withCtx(() => [..._cache[12] || (_cache[12] = [createElementVNode("svg", {
22653
+ prefix: withCtx(() => [..._cache[13] || (_cache[13] = [createElementVNode("svg", {
22586
22654
  viewBox: "0 0 24 24",
22587
22655
  fill: "none",
22588
22656
  stroke: "currentColor",
@@ -22593,40 +22661,40 @@ var FilePicker_default = /* @__PURE__ */ defineComponent({
22593
22661
  cy: "10.5",
22594
22662
  r: "7"
22595
22663
  }), createElementVNode("path", { d: "m16 16 5 5" })], -1)])]),
22596
- suffix: withCtx(() => [..._cache[13] || (_cache[13] = [createElementVNode("kbd", null, "/", -1)])]),
22664
+ suffix: withCtx(() => [..._cache[14] || (_cache[14] = [createElementVNode("kbd", null, "/", -1)])]),
22597
22665
  _: 1
22598
22666
  }, 8, ["modelValue"])], 512)) : createCommentVNode("", true)
22599
22667
  ], 32)]),
22600
- footer: withCtx(() => [createElementVNode("div", _hoisted_15, [createElementVNode("div", _hoisted_16, [
22601
- createElementVNode("span", _hoisted_17, toDisplayString(summary.value), 1),
22668
+ footer: withCtx(() => [createElementVNode("div", _hoisted_16, [createElementVNode("div", _hoisted_17, [
22669
+ createElementVNode("span", _hoisted_18, toDisplayString(summary.value), 1),
22602
22670
  unref(roots).length ? (openBlock(), createElementBlock("button", {
22603
22671
  key: 0,
22604
22672
  type: "button",
22605
22673
  class: "mint-picker__link mint-picker__clear",
22606
- onClick: _cache[9] || (_cache[9] = (...args) => unref(clearSelection) && unref(clearSelection)(...args))
22674
+ onClick: _cache[10] || (_cache[10] = (...args) => unref(clearSelection) && unref(clearSelection)(...args))
22607
22675
  }, " Clear ")) : createCommentVNode("", true),
22608
22676
  unref(chosen).excluded.length && unref(source) === "server" ? (openBlock(), createElementBlock("button", {
22609
22677
  key: 1,
22610
22678
  type: "button",
22611
22679
  class: "mint-picker__link",
22612
- onClick: _cache[10] || (_cache[10] = ($event) => reviewing.value = !unref(reviewing))
22613
- }, toDisplayString(unref(chosen).excluded.length) + " skipped ", 1)) : unref(chosen).excluded.length ? (openBlock(), createElementBlock("span", _hoisted_18, toDisplayString(unref(chosen).excluded.length) + " skipped", 1)) : createCommentVNode("", true),
22680
+ onClick: _cache[11] || (_cache[11] = ($event) => reviewing.value = !unref(reviewing))
22681
+ }, toDisplayString(unref(chosen).excluded.length) + " skipped ", 1)) : unref(chosen).excluded.length ? (openBlock(), createElementBlock("span", _hoisted_19, toDisplayString(unref(chosen).excluded.length) + " skipped", 1)) : createCommentVNode("", true),
22614
22682
  unref(capability)?.isBlank ? (openBlock(), createBlock(BaseButton_default, {
22615
22683
  key: 3,
22616
22684
  size: "sm",
22617
22685
  variant: "ghost",
22618
22686
  "aria-pressed": unref(skipBlanks),
22619
- onClick: _cache[11] || (_cache[11] = ($event) => skipBlanks.value = !unref(skipBlanks))
22687
+ onClick: _cache[12] || (_cache[12] = ($event) => skipBlanks.value = !unref(skipBlanks))
22620
22688
  }, {
22621
22689
  default: withCtx(() => [createTextVNode("Skip blanks " + toDisplayString(unref(skipBlanks) ? "on" : "off"), 1)]),
22622
22690
  _: 1
22623
22691
  }, 8, ["aria-pressed"])) : createCommentVNode("", true)
22624
- ]), createElementVNode("div", _hoisted_19, [createVNode(BaseButton_default, {
22692
+ ]), createElementVNode("div", _hoisted_20, [createVNode(BaseButton_default, {
22625
22693
  variant: "ghost",
22626
22694
  size: "sm",
22627
22695
  onClick: unref(cancel)
22628
22696
  }, {
22629
- default: withCtx(() => [..._cache[16] || (_cache[16] = [createTextVNode("Cancel", -1)])]),
22697
+ default: withCtx(() => [..._cache[18] || (_cache[18] = [createTextVNode("Cancel", -1)])]),
22630
22698
  _: 1
22631
22699
  }, 8, ["onClick"]), createVNode(BaseButton_default, {
22632
22700
  size: "sm",
@@ -22639,7 +22707,7 @@ var FilePicker_default = /* @__PURE__ */ defineComponent({
22639
22707
  default: withCtx(() => [(openBlock(), createElementBlock("div", {
22640
22708
  key: unref(source),
22641
22709
  class: "mint-picker mint-picker__source-panel",
22642
- onKeydown: _cache[8] || (_cache[8] = (...args) => unref(keyboard) && unref(keyboard)(...args))
22710
+ onKeydown: _cache[9] || (_cache[9] = (...args) => unref(keyboard) && unref(keyboard)(...args))
22643
22711
  }, [unref(source) === "server" ? (openBlock(), createElementBlock("div", _hoisted_3, [
22644
22712
  createElementVNode("nav", _hoisted_4, [!unref(mountView) ? (openBlock(), createElementBlock("button", {
22645
22713
  key: 0,
@@ -22648,7 +22716,7 @@ var FilePicker_default = /* @__PURE__ */ defineComponent({
22648
22716
  "aria-current": unref(trail).length ? void 0 : "location",
22649
22717
  onClick: _cache[2] || (_cache[2] = ($event) => unref(up)(""))
22650
22718
  }, toDisplayString(unref(sourceNames)[unref(source)]), 9, _hoisted_5)) : createCommentVNode("", true), (openBlock(true), createElementBlock(Fragment, null, renderList(unref(trail), (crumb, index) => {
22651
- return openBlock(), createElementBlock(Fragment, { key: crumb.path }, [index > 0 || !unref(mountView) ? (openBlock(), createElementBlock("svg", _hoisted_6, [..._cache[14] || (_cache[14] = [createElementVNode("path", { d: "M6 4l4 4-4 4" }, null, -1)])])) : createCommentVNode("", true), createElementVNode("button", {
22719
+ return openBlock(), createElementBlock(Fragment, { key: crumb.path }, [index > 0 || !unref(mountView) ? (openBlock(), createElementBlock("svg", _hoisted_6, [..._cache[15] || (_cache[15] = [createElementVNode("path", { d: "M6 4l4 4-4 4" }, null, -1)])])) : createCommentVNode("", true), createElementVNode("button", {
22652
22720
  type: "button",
22653
22721
  class: "mint-picker__crumb",
22654
22722
  "aria-current": index === unref(trail).length - 1 ? "location" : void 0,
@@ -22656,43 +22724,66 @@ var FilePicker_default = /* @__PURE__ */ defineComponent({
22656
22724
  }, toDisplayString(crumb.label), 9, _hoisted_7)], 64);
22657
22725
  }), 128))]),
22658
22726
  accepts.value ? (openBlock(), createElementBlock("span", _hoisted_8, "Accepts " + toDisplayString(accepts.value), 1)) : createCommentVNode("", true),
22727
+ createVNode(ActionMenu_default, {
22728
+ label: "Sort",
22729
+ items: sortItems.value,
22730
+ onSelect: _cache[3] || (_cache[3] = ($event) => sort.value = $event.id)
22731
+ }, {
22732
+ trigger: withCtx(({ open: menuOpen, toggle, keydown }) => [createElementVNode("button", {
22733
+ type: "button",
22734
+ class: "mint-picker__sort",
22735
+ "aria-haspopup": "menu",
22736
+ "aria-expanded": menuOpen,
22737
+ "aria-label": `Sort: ${SORT_LABELS[unref(sort)]}`,
22738
+ onClick: toggle,
22739
+ onKeydown: keydown
22740
+ }, [createTextVNode(toDisplayString(SORT_LABELS[unref(sort)]) + " ", 1), _cache[16] || (_cache[16] = createElementVNode("svg", {
22741
+ viewBox: "0 0 16 16",
22742
+ fill: "none",
22743
+ stroke: "currentColor",
22744
+ "stroke-width": "1.5",
22745
+ "aria-hidden": "true"
22746
+ }, [createElementVNode("path", { d: "M4 6l4 4 4-4" })], -1))], 40, _hoisted_9)]),
22747
+ _: 1
22748
+ }, 8, ["items"]),
22659
22749
  createElementVNode("button", {
22660
22750
  type: "button",
22661
22751
  class: "mint-picker__scope",
22662
22752
  "aria-pressed": unref(recursive),
22663
- onClick: _cache[3] || (_cache[3] = ($event) => recursive.value = !unref(recursive))
22664
- }, toDisplayString(unref(recursive) ? "Subfolders" : "This folder"), 9, _hoisted_9),
22753
+ onClick: _cache[4] || (_cache[4] = ($event) => recursive.value = !unref(recursive))
22754
+ }, toDisplayString(unref(recursive) ? "Subfolders" : "This folder"), 9, _hoisted_10),
22665
22755
  createElementVNode("button", {
22666
22756
  type: "button",
22667
22757
  class: "mint-picker__scope mint-picker__refresh",
22668
22758
  "aria-label": "Refresh location",
22669
22759
  title: "Refresh location",
22670
22760
  disabled: unref(loading),
22671
- onClick: _cache[4] || (_cache[4] = ($event) => unref(refresh)())
22672
- }, [..._cache[15] || (_cache[15] = [createElementVNode("svg", {
22761
+ onClick: _cache[5] || (_cache[5] = ($event) => unref(refresh)())
22762
+ }, [..._cache[17] || (_cache[17] = [createElementVNode("svg", {
22673
22763
  viewBox: "0 0 24 24",
22674
22764
  fill: "none",
22675
22765
  stroke: "currentColor",
22676
22766
  "stroke-width": "1.8",
22677
22767
  "aria-hidden": "true"
22678
- }, [createElementVNode("path", { d: "M20 7v5h-5M4 17v-5h5M6 8a7 7 0 0 1 12-2l2 3M4 15l2 3a7 7 0 0 0 12-2" })], -1)])], 8, _hoisted_10)
22679
- ])) : createCommentVNode("", true), !unref(allowedSources).length ? (openBlock(), createElementBlock("div", _hoisted_11, " No data sources are enabled. ")) : (openBlock(), createElementBlock(Fragment, { key: 2 }, [unref(source) === "localFile" ? (openBlock(), createElementBlock("div", _hoisted_12, [createVNode(FileUploader_default, {
22768
+ }, [createElementVNode("path", { d: "M20 7v5h-5M4 17v-5h5M6 8a7 7 0 0 1 12-2l2 3M4 15l2 3a7 7 0 0 0 12-2" })], -1)])], 8, _hoisted_11)
22769
+ ])) : createCommentVNode("", true), !unref(allowedSources).length ? (openBlock(), createElementBlock("div", _hoisted_12, " No data sources are enabled. ")) : (openBlock(), createElementBlock(Fragment, { key: 2 }, [unref(source) === "localFile" ? (openBlock(), createElementBlock("div", _hoisted_13, [createVNode(FileUploader_default, {
22680
22770
  size: "lg",
22681
22771
  mode: __props.selectionMode === "folder" ? "folder" : __props.selectionMode === "single-file" ? "file" : "file+folder",
22682
22772
  multiple: __props.selectionMode !== "single-file",
22683
22773
  "show-files": false,
22684
- onUpload: _cache[5] || (_cache[5] = (...args) => {
22774
+ onUpload: _cache[6] || (_cache[6] = (...args) => {
22685
22775
  uploadError.value = "";
22686
22776
  unref(chooseLocal)(...args);
22687
22777
  }),
22688
- onError: _cache[6] || (_cache[6] = ($event) => uploadError.value = $event)
22689
- }, null, 8, ["mode", "multiple"]), uploadError.value || unref(error) || unref(resolutionError) ? (openBlock(), createElementBlock("p", _hoisted_13, toDisplayString(uploadError.value || unref(error) || unref(resolutionError)), 1)) : createCommentVNode("", true)])) : (openBlock(), createElementBlock("div", _hoisted_14, [createVNode(FilePickerListInternal_default, {
22778
+ onError: _cache[7] || (_cache[7] = ($event) => uploadError.value = $event)
22779
+ }, null, 8, ["mode", "multiple"]), uploadError.value || unref(error) || unref(resolutionError) ? (openBlock(), createElementBlock("p", _hoisted_14, toDisplayString(uploadError.value || unref(error) || unref(resolutionError)), 1)) : createCommentVNode("", true)])) : (openBlock(), createElementBlock("div", _hoisted_15, [createVNode(FilePickerListInternal_default, {
22690
22780
  "empty-title": unref(path) ? "No readable files" : "No server locations configured",
22691
22781
  view: __props.view,
22692
22782
  rows: unref(rows),
22693
22783
  loading: unref(loading),
22694
22784
  error: unref(error),
22695
22785
  query: unref(query),
22786
+ truncated: unref(nav).truncated.value,
22696
22787
  mode: __props.selectionMode,
22697
22788
  selected: unref(selection).selected,
22698
22789
  selectable: unref(selection).selectable,
@@ -22712,6 +22803,7 @@ var FilePicker_default = /* @__PURE__ */ defineComponent({
22712
22803
  "loading",
22713
22804
  "error",
22714
22805
  "query",
22806
+ "truncated",
22715
22807
  "mode",
22716
22808
  "selected",
22717
22809
  "selectable",
@@ -22732,7 +22824,7 @@ var FilePicker_default = /* @__PURE__ */ defineComponent({
22732
22824
  busy: unref(resolving),
22733
22825
  error: unref(resolutionError),
22734
22826
  reviewing: unref(reviewing),
22735
- onReview: _cache[7] || (_cache[7] = ($event) => reviewing.value = !unref(reviewing)),
22827
+ onReview: _cache[8] || (_cache[8] = ($event) => reviewing.value = !unref(reviewing)),
22736
22828
  onRetry: unref(selection).resolve
22737
22829
  }, null, 8, [
22738
22830
  "node",
@@ -22863,4 +22955,4 @@ var components_exports = /* @__PURE__ */ __exportAll({
22863
22955
  //#endregion
22864
22956
  export { PlateEditor_default as $, SampleLegend_default as A, AppToastContainer_default as At, StatusIndicator_default as B, __commonJSMin as Bt, ChemicalFormula_default as C, AppAvatarMenu_default as Ct, ReagentEditor_default as D, ActionMenu_default as Dt, SampleHierarchyTree_default as E, ThemeToggle_default as Et, SettingsModal_default as F, Calendar_default as Ft, ControlWorkspaceView_default as G, LayoutResizeHandle_default as H, AdductText_default as I, BasePill_default as It, SampleSelector_default as J, ComponentBindingRenderer_default as K, Breadcrumb_default as L, SegmentedControl_default as Lt, BioTemplatePackWorkspaceView_default as M, FormField_default as Mt, BioTemplateExperimentWorkspaceView_default as N, DataFrame_default as Nt, SmartGroupModal_default as O, IconButton_default as Ot, BioTemplateRenderer_default as P, LoadingSpinner_default as Pt, ReagentList_default as Q, Avatar_default as R, BaseTabs_default as Rt, sequenceSamplesRemaining as S, AppTopBar_default as St, ProtocolStepEditor_default as T, CollapsibleCard_default as Tt, AppContainer_default as U, Divider_default as V, DoseDesignWorkspaceView_default as W, SmartGroupManual_default as X, AutoGroupModal_default as Y, SmartGroupFieldRecipe_default as Z, estimateSequenceFinishDate as _, AppLayout_default as _t, ArtifactSaveDialog_default as a, GeneratedPluginView_default as at, formatSequenceRemaining as b, FormActions_default as bt, SectionCard_default as c, GeneratedPlotlyResult_default as ct, ExperimentCodeBadge_default as d, ChartContainer_default as dt, ConfirmDialog_default as et, ExperimentDataViewer_default as f, generatedJobDefaults as ft, SequenceProgressBar_default as g, MobileSupportGate_default as gt, InstrumentStateBadge_default as h, PluginWorkspaceView_default as ht, ExperimentPopover_default as i, DoseCalculator_default as it, BioTemplatePresetWorkspaceView_default as j, AlertBox_default as jt, GroupAssigner_default as k, RuntimeUpdateNotice_default as kt, ResourceCard_default as l, PlotlyChart_default as lt, AuditTrail_default as m, normalizeGeneratedJobInput as mt, FilePicker_default as n, sampleTypeMarker as nt, ArtifactSelectorModal_default as o, JobsStatusTray_default as ot, BatchProgressList_default as p, generatedJobFormSchema as pt, ScheduleCalendar_default as q, FitPanel_default as r, ExperimentTimeline_default as rt, ExperimentSelectorModal_default as s, GeneratedResultRenderer_default as st, components_exports as t, WellPlate_default as tt, TimeRangeInput_default as u, mintPlotlyTemplate as ut, estimateSequenceRemainingSeconds as v, AppSidebar_default as vt, ScientificNumber_default as w, PluginIcon_default as wt, sequenceProgressPercent as x, StepWizard_default as xt, formatSequenceEta as y, FormBuilder_default as yt, ProgressBar_default as z, SearchableSelect_default as zt };
22865
22957
 
22866
- //# sourceMappingURL=components-CvY105kJ.js.map
22958
+ //# sourceMappingURL=components-CF0XMy8W.js.map