rei-kit 2.20.0 → 2.22.0
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 +3 -3
- package/dist/{BaseListbox-Btibgnaf.js → BaseListbox-DMR-Zn1u.js} +232 -4
- package/dist/BaseListbox-DMR-Zn1u.js.map +1 -0
- package/dist/app/guards.d.ts +43 -1
- package/dist/app/index.d.ts +1 -1
- package/dist/app.js +51 -5
- package/dist/app.js.map +1 -1
- package/dist/components/AnnounceHost.vue.d.ts +3 -0
- package/dist/components/BaseCheckbox.vue.d.ts +19 -0
- package/dist/components/ErrorSummary.vue.d.ts +60 -0
- package/dist/components/FormField.vue.d.ts +6 -0
- package/dist/components/ScrollArea.vue.d.ts +68 -0
- package/dist/components/VirtualList.vue.d.ts +37 -0
- package/dist/composables/use-announce.d.ts +65 -0
- package/dist/composables/use-virtual-window.d.ts +39 -0
- package/dist/{BaseSheet-B7401rS7.js → focus-target-D0WsXwKh.js} +109 -9
- package/dist/focus-target-D0WsXwKh.js.map +1 -0
- package/dist/index.d.ts +33 -0
- package/dist/index.js +443 -262
- package/dist/index.js.map +1 -1
- package/dist/motion.js +1 -1
- package/dist/motion.js.map +1 -1
- package/dist/styles.css +469 -323
- package/dist/{GoogleButton-mCqGbrXm.js → use-announce-B1LsfsZx.js} +59 -86
- package/dist/use-announce-B1LsfsZx.js.map +1 -0
- package/dist/utils/direction.d.ts +20 -0
- package/dist/utils/focus-target.d.ts +18 -0
- package/dist/web/SkipLink.vue.d.ts +43 -0
- package/dist/web/index.d.ts +6 -0
- package/dist/web.js +154 -133
- package/dist/web.js.map +1 -1
- package/package.json +2 -2
- package/dist/BaseListbox-Btibgnaf.js.map +0 -1
- package/dist/BaseSheet-B7401rS7.js.map +0 -1
- package/dist/GoogleButton-mCqGbrXm.js.map +0 -1
package/dist/index.js
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { a as addDays, c as lastNDays, d as toDateKey, f as todayKey, i as needsIosInstall, l as leadingBlanks, n as isApplePortable, o as eachDayOfYear, r as isInstalled, s as fromDateKey, t as SettingsGroup_default, u as startOfWeek } from "./SettingsGroup-BXkajKGl.js";
|
|
2
2
|
import { n as formatNumber, r as setFormatLocale, t as formatDate } from "./format-BEvBK1SJ.js";
|
|
3
|
-
import { a as
|
|
4
|
-
import { a as
|
|
3
|
+
import { a as useBoundValue, c as ensureSheetRoot, n as BaseCheckbox_default, o as useVisualViewport, r as BaseSheet_default, s as SHEET_ROOT_ID, t as focusTarget } from "./focus-target-D0WsXwKh.js";
|
|
4
|
+
import { a as FormField_default, c as useOnline, d as readStoredTheme, f as setThemeStorageKey, g as toRedirectPath, h as safeRedirect, i as BaseInput_default, l as applyTheme, m as tapFeedback, n as useAnnounce, o as BaseAlert_default, p as useTheme, r as GoogleButton_default, s as useToast, t as announce, u as isThemePreference } from "./use-announce-B1LsfsZx.js";
|
|
5
5
|
import { n as registerErrorMapper, r as toAppError, t as AppError } from "./app-error-DF9cijE0.js";
|
|
6
|
-
import {
|
|
6
|
+
import { a as useMediaQuery, i as useMenuKeys, n as ScrollArea_default, o as useDragScroll, r as BaseSkeleton_default, t as BaseListbox_default } from "./BaseListbox-DMR-Zn1u.js";
|
|
7
7
|
import { t as _plugin_vue_export_helper_default } from "./_plugin-vue_export-helper-BOaGB7Aw.js";
|
|
8
8
|
import { t as BaseButton_default } from "./BaseButton-RN2an975.js";
|
|
9
9
|
import { t as SettingsRow_default } from "./SettingsRow-Ct1p2C9Q.js";
|
|
@@ -271,90 +271,14 @@ function useDebouncedCallback(callback, delay = 800) {
|
|
|
271
271
|
};
|
|
272
272
|
}
|
|
273
273
|
//#endregion
|
|
274
|
-
//#region src/composables/use-drag-scroll.ts
|
|
275
|
-
/** Movement before a press counts as a drag rather than a tap. */
|
|
276
|
-
var DRAG_THRESHOLD_PX = 6;
|
|
277
|
-
/**
|
|
278
|
-
* Drag-to-scroll for a horizontally scrolling element.
|
|
279
|
-
*
|
|
280
|
-
* The app puts `touch-action: pan-y` on the page content so the tab-swipe
|
|
281
|
-
* gesture keeps its pointer events — the browser never claims a horizontal
|
|
282
|
-
* drag, which also means it never pans this element natively. Rather than give
|
|
283
|
-
* that up, horizontal scrolling is driven here.
|
|
284
|
-
*
|
|
285
|
-
* @param target - The scroll container.
|
|
286
|
-
* @returns `didDrag`, so a click handler can ignore the press that ended a drag.
|
|
287
|
-
*
|
|
288
|
-
* @example
|
|
289
|
-
* ```ts
|
|
290
|
-
* const scroller = ref<HTMLElement | null>(null)
|
|
291
|
-
* const { didDrag } = useDragScroll(scroller)
|
|
292
|
-
*
|
|
293
|
-
* function onClick() {
|
|
294
|
-
* if (didDrag()) return
|
|
295
|
-
* // …treat as a tap
|
|
296
|
-
* }
|
|
297
|
-
* ```
|
|
298
|
-
*/
|
|
299
|
-
function useDragScroll(target) {
|
|
300
|
-
let pointerId = null;
|
|
301
|
-
let startX = 0;
|
|
302
|
-
let startScroll = 0;
|
|
303
|
-
let dragged = false;
|
|
304
|
-
function onPointerDown(event) {
|
|
305
|
-
const element = target.value;
|
|
306
|
-
if (!element || event.pointerType === "mouse") return;
|
|
307
|
-
pointerId = event.pointerId;
|
|
308
|
-
startX = event.clientX;
|
|
309
|
-
startScroll = element.scrollLeft;
|
|
310
|
-
dragged = false;
|
|
311
|
-
}
|
|
312
|
-
function onPointerMove(event) {
|
|
313
|
-
const element = target.value;
|
|
314
|
-
if (!element || event.pointerId !== pointerId) return;
|
|
315
|
-
const dx = event.clientX - startX;
|
|
316
|
-
if (!dragged && Math.abs(dx) < DRAG_THRESHOLD_PX) return;
|
|
317
|
-
if (!dragged) {
|
|
318
|
-
dragged = true;
|
|
319
|
-
element.setPointerCapture(event.pointerId);
|
|
320
|
-
}
|
|
321
|
-
element.scrollLeft = startScroll - dx;
|
|
322
|
-
}
|
|
323
|
-
function onPointerUp(event) {
|
|
324
|
-
const element = target.value;
|
|
325
|
-
if (element?.hasPointerCapture(event.pointerId)) element.releasePointerCapture(event.pointerId);
|
|
326
|
-
pointerId = null;
|
|
327
|
-
}
|
|
328
|
-
function bind(element) {
|
|
329
|
-
element.addEventListener("pointerdown", onPointerDown);
|
|
330
|
-
element.addEventListener("pointermove", onPointerMove);
|
|
331
|
-
element.addEventListener("pointerup", onPointerUp);
|
|
332
|
-
element.addEventListener("pointercancel", onPointerUp);
|
|
333
|
-
}
|
|
334
|
-
function unbind(element) {
|
|
335
|
-
element.removeEventListener("pointerdown", onPointerDown);
|
|
336
|
-
element.removeEventListener("pointermove", onPointerMove);
|
|
337
|
-
element.removeEventListener("pointerup", onPointerUp);
|
|
338
|
-
element.removeEventListener("pointercancel", onPointerUp);
|
|
339
|
-
}
|
|
340
|
-
watch(target, (element, previous) => {
|
|
341
|
-
if (previous) unbind(previous);
|
|
342
|
-
if (element) bind(element);
|
|
343
|
-
}, { immediate: true });
|
|
344
|
-
onScopeDispose(() => {
|
|
345
|
-
if (target.value) unbind(target.value);
|
|
346
|
-
});
|
|
347
|
-
return { didDrag: () => dragged };
|
|
348
|
-
}
|
|
349
|
-
//#endregion
|
|
350
274
|
//#region src/components/BaseAvatar.vue?vue&type=script&setup=true&lang.ts
|
|
351
|
-
var _hoisted_1$
|
|
275
|
+
var _hoisted_1$48 = [
|
|
352
276
|
"role",
|
|
353
277
|
"aria-label",
|
|
354
278
|
"aria-hidden"
|
|
355
279
|
];
|
|
356
|
-
var _hoisted_2$
|
|
357
|
-
var _hoisted_3$
|
|
280
|
+
var _hoisted_2$42 = ["src"];
|
|
281
|
+
var _hoisted_3$28 = {
|
|
358
282
|
key: 1,
|
|
359
283
|
class: "rk-avatar-initials"
|
|
360
284
|
};
|
|
@@ -404,7 +328,7 @@ var BaseAvatar_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__P
|
|
|
404
328
|
alt: "",
|
|
405
329
|
class: "rk-avatar-img",
|
|
406
330
|
onError: _cache[0] || (_cache[0] = ($event) => broken.value = true)
|
|
407
|
-
}, null, 40, _hoisted_2$
|
|
331
|
+
}, null, 40, _hoisted_2$42)) : __props.fallback === "initials" && initials.value ? (openBlock(), createElementBlock("span", _hoisted_3$28, toDisplayString(initials.value), 1)) : (openBlock(), createElementBlock("svg", _hoisted_4$20, [..._cache[1] || (_cache[1] = [createElementVNode("circle", {
|
|
408
332
|
cx: "10",
|
|
409
333
|
cy: "6.75",
|
|
410
334
|
r: "3.25",
|
|
@@ -413,7 +337,7 @@ var BaseAvatar_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__P
|
|
|
413
337
|
d: "M3.75 17c0-3.05 2.8-5.25 6.25-5.25S16.25 13.95 16.25 17",
|
|
414
338
|
"stroke-width": "1.5",
|
|
415
339
|
"stroke-linecap": "round"
|
|
416
|
-
}, null, -1)])]))], 10, _hoisted_1$
|
|
340
|
+
}, null, -1)])]))], 10, _hoisted_1$48);
|
|
417
341
|
};
|
|
418
342
|
}
|
|
419
343
|
}), [["__scopeId", "data-v-47586bec"]]);
|
|
@@ -438,12 +362,12 @@ var BaseBadge_default = /* @__PURE__ */ defineComponent({
|
|
|
438
362
|
});
|
|
439
363
|
//#endregion
|
|
440
364
|
//#region src/components/BaseMenu.vue?vue&type=script&setup=true&lang.ts
|
|
441
|
-
var _hoisted_1$
|
|
365
|
+
var _hoisted_1$47 = [
|
|
442
366
|
"aria-label",
|
|
443
367
|
"aria-expanded",
|
|
444
368
|
"aria-controls"
|
|
445
369
|
];
|
|
446
|
-
var _hoisted_2$
|
|
370
|
+
var _hoisted_2$41 = ["id"];
|
|
447
371
|
//#endregion
|
|
448
372
|
//#region src/components/BaseMenu.vue
|
|
449
373
|
var BaseMenu_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PURE__ */ defineComponent({
|
|
@@ -512,17 +436,17 @@ var BaseMenu_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PUR
|
|
|
512
436
|
"aria-haspopup": true,
|
|
513
437
|
"aria-controls": open.value ? unref(id) : void 0,
|
|
514
438
|
onClick: _cache[0] || (_cache[0] = ($event) => open.value = !open.value)
|
|
515
|
-
}, [renderSlot(_ctx.$slots, "trigger", { open: open.value }, void 0, true)], 8, _hoisted_1$
|
|
439
|
+
}, [renderSlot(_ctx.$slots, "trigger", { open: open.value }, void 0, true)], 8, _hoisted_1$47), open.value ? (openBlock(), createElementBlock("div", {
|
|
516
440
|
key: 0,
|
|
517
441
|
id: unref(id),
|
|
518
442
|
ref_key: "panel",
|
|
519
443
|
ref: panel,
|
|
520
444
|
class: normalizeClass(["rk-menu-panel surface-overlay", `is-${__props.align}`]),
|
|
521
445
|
role: "menu"
|
|
522
|
-
}, [renderSlot(_ctx.$slots, "default", {}, void 0, true)], 10, _hoisted_2$
|
|
446
|
+
}, [renderSlot(_ctx.$slots, "default", {}, void 0, true)], 10, _hoisted_2$41)) : createCommentVNode("", true)], 544);
|
|
523
447
|
};
|
|
524
448
|
}
|
|
525
|
-
}), [["__scopeId", "data-v-
|
|
449
|
+
}), [["__scopeId", "data-v-eaeecb75"]]);
|
|
526
450
|
//#endregion
|
|
527
451
|
//#region src/components/BaseCard.vue
|
|
528
452
|
var BaseCard_default = /* @__PURE__ */ defineComponent({
|
|
@@ -589,14 +513,68 @@ var BaseCard_default = /* @__PURE__ */ defineComponent({
|
|
|
589
513
|
}
|
|
590
514
|
});
|
|
591
515
|
//#endregion
|
|
516
|
+
//#region src/composables/use-virtual-window.ts
|
|
517
|
+
/** Rows of slack each way, so a fast scroll does not show a gap before the
|
|
518
|
+
* next frame fills it. */
|
|
519
|
+
var OVERSCAN_ROWS = 3;
|
|
520
|
+
/**
|
|
521
|
+
* The arithmetic behind a windowed list: which rows are near the viewport,
|
|
522
|
+
* and how much empty space stands in for the rest.
|
|
523
|
+
*
|
|
524
|
+
* This is the part `BaseCombobox` and `VirtualList` share. It was written
|
|
525
|
+
* inside the combobox first, and pulling it out here is the reason there is
|
|
526
|
+
* one copy of it rather than two — the second would have drifted, and the
|
|
527
|
+
* half that drifts silently is the padding, which is what keeps the
|
|
528
|
+
* scrollbar honest about how long the list is.
|
|
529
|
+
*
|
|
530
|
+
* There is no clock and no observer in here: it is a function of the scroll
|
|
531
|
+
* position, and the component that owns the element is what tells it where
|
|
532
|
+
* that is. That is also what makes it testable without a layout.
|
|
533
|
+
*/
|
|
534
|
+
function useVirtualWindow({ count, rowHeight, threshold }) {
|
|
535
|
+
/** How far down the list is scrolled. Set by the owner from a scroll event. */
|
|
536
|
+
const scrollTop = ref(0);
|
|
537
|
+
/** How tall the viewport is. Measured by the owner, never guessed here. */
|
|
538
|
+
const viewportHeight = ref(0);
|
|
539
|
+
const active = computed(() => count.value > threshold.value);
|
|
540
|
+
const window_ = computed(() => {
|
|
541
|
+
if (!active.value) return {
|
|
542
|
+
start: 0,
|
|
543
|
+
end: count.value
|
|
544
|
+
};
|
|
545
|
+
const first = Math.max(0, Math.floor(scrollTop.value / rowHeight.value) - OVERSCAN_ROWS);
|
|
546
|
+
const rows = Math.ceil(viewportHeight.value / rowHeight.value) + 6;
|
|
547
|
+
return {
|
|
548
|
+
start: first,
|
|
549
|
+
end: Math.min(count.value, first + rows)
|
|
550
|
+
};
|
|
551
|
+
});
|
|
552
|
+
/** The empty space standing in for the rows above and below the window. */
|
|
553
|
+
const padTop = computed(() => active.value ? window_.value.start * rowHeight.value : 0);
|
|
554
|
+
const padBottom = computed(() => active.value ? (count.value - window_.value.end) * rowHeight.value : 0);
|
|
555
|
+
/** Takes the scroll position straight off the event the owner received. */
|
|
556
|
+
function onScroll(event) {
|
|
557
|
+
scrollTop.value = event.target.scrollTop;
|
|
558
|
+
}
|
|
559
|
+
return {
|
|
560
|
+
active,
|
|
561
|
+
window: window_,
|
|
562
|
+
padTop,
|
|
563
|
+
padBottom,
|
|
564
|
+
scrollTop,
|
|
565
|
+
viewportHeight,
|
|
566
|
+
onScroll
|
|
567
|
+
};
|
|
568
|
+
}
|
|
569
|
+
//#endregion
|
|
592
570
|
//#region src/components/BaseCombobox.vue?vue&type=script&setup=true&lang.ts
|
|
593
|
-
var _hoisted_1$
|
|
594
|
-
var _hoisted_2$
|
|
571
|
+
var _hoisted_1$46 = ["for"];
|
|
572
|
+
var _hoisted_2$40 = [
|
|
595
573
|
"aria-label",
|
|
596
574
|
"disabled",
|
|
597
575
|
"onClick"
|
|
598
576
|
];
|
|
599
|
-
var _hoisted_3$
|
|
577
|
+
var _hoisted_3$27 = [
|
|
600
578
|
"id",
|
|
601
579
|
"placeholder",
|
|
602
580
|
"disabled",
|
|
@@ -606,7 +584,7 @@ var _hoisted_3$25 = [
|
|
|
606
584
|
"aria-describedby"
|
|
607
585
|
];
|
|
608
586
|
var _hoisted_4$19 = ["disabled"];
|
|
609
|
-
var _hoisted_5$
|
|
587
|
+
var _hoisted_5$11 = [
|
|
610
588
|
"aria-label",
|
|
611
589
|
"aria-multiselectable",
|
|
612
590
|
"aria-busy"
|
|
@@ -720,32 +698,18 @@ var BaseCombobox_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @_
|
|
|
720
698
|
if (timer) clearTimeout(timer);
|
|
721
699
|
timer = setTimeout(() => emit("search", value.trim()), __props.debounce);
|
|
722
700
|
}
|
|
723
|
-
const virtual
|
|
724
|
-
|
|
725
|
-
|
|
726
|
-
|
|
727
|
-
const window_ = computed(() => {
|
|
728
|
-
if (!virtual.value) return {
|
|
729
|
-
start: 0,
|
|
730
|
-
end: matches.value.length
|
|
731
|
-
};
|
|
732
|
-
const first = Math.max(0, Math.floor(scrollTop.value / __props.rowHeight) - 3);
|
|
733
|
-
const count = Math.ceil(viewport.value / __props.rowHeight) + 6;
|
|
734
|
-
return {
|
|
735
|
-
start: first,
|
|
736
|
-
end: Math.min(matches.value.length, first + count)
|
|
737
|
-
};
|
|
701
|
+
const { active: virtual, window: window_, padTop, padBottom, viewportHeight: viewport, onScroll } = useVirtualWindow({
|
|
702
|
+
count: computed(() => matches.value.length),
|
|
703
|
+
rowHeight: computed(() => __props.rowHeight),
|
|
704
|
+
threshold: computed(() => __props.virtualizeAfter)
|
|
738
705
|
});
|
|
706
|
+
/** How tall the list box is; read once it is open, and this until then. */
|
|
707
|
+
viewport.value = 224;
|
|
739
708
|
const rows = computed(() => matches.value.slice(window_.value.start, window_.value.end).map((option, index) => ({
|
|
740
709
|
option,
|
|
741
710
|
/** The row's place in the whole list, not in the window. */
|
|
742
711
|
index: window_.value.start + index
|
|
743
712
|
})));
|
|
744
|
-
const padTop = computed(() => virtual.value ? window_.value.start * __props.rowHeight : 0);
|
|
745
|
-
const padBottom = computed(() => virtual.value ? (matches.value.length - window_.value.end) * __props.rowHeight : 0);
|
|
746
|
-
function onScroll(event) {
|
|
747
|
-
scrollTop.value = event.target.scrollTop;
|
|
748
|
-
}
|
|
749
713
|
function choose(option) {
|
|
750
714
|
if (!option) return;
|
|
751
715
|
if (multiple.value) {
|
|
@@ -841,7 +805,7 @@ var BaseCombobox_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @_
|
|
|
841
805
|
createElementVNode("label", {
|
|
842
806
|
for: unref(id),
|
|
843
807
|
class: "rk-combo-label"
|
|
844
|
-
}, toDisplayString(__props.label), 9, _hoisted_1$
|
|
808
|
+
}, toDisplayString(__props.label), 9, _hoisted_1$46),
|
|
845
809
|
createElementVNode("div", { class: normalizeClass(["rk-combo-field", multiple.value ? "is-multiple control" : ""]) }, [
|
|
846
810
|
(openBlock(true), createElementBlock(Fragment, null, renderList(multiple.value ? chosenOptions.value : [], (option) => {
|
|
847
811
|
return openBlock(), createElementBlock("span", {
|
|
@@ -854,7 +818,7 @@ var BaseCombobox_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @_
|
|
|
854
818
|
"aria-label": __props.removeLabel(option.label),
|
|
855
819
|
disabled: __props.disabled,
|
|
856
820
|
onClick: ($event) => remove(option.value)
|
|
857
|
-
}, " × ", 8, _hoisted_2$
|
|
821
|
+
}, " × ", 8, _hoisted_2$40)) : createCommentVNode("", true)]);
|
|
858
822
|
}), 128)),
|
|
859
823
|
withDirectives(createElementVNode("input", {
|
|
860
824
|
id: unref(id),
|
|
@@ -873,7 +837,7 @@ var BaseCombobox_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @_
|
|
|
873
837
|
"aria-describedby": describedBy.value,
|
|
874
838
|
onKeydown,
|
|
875
839
|
onFocus: _cache[1] || (_cache[1] = ($event) => open.value = true)
|
|
876
|
-
}, null, 42, _hoisted_3$
|
|
840
|
+
}, null, 42, _hoisted_3$27), [[vModelText, text.value]]),
|
|
877
841
|
createElementVNode("button", {
|
|
878
842
|
type: "button",
|
|
879
843
|
class: "rk-combo-toggle",
|
|
@@ -892,11 +856,11 @@ var BaseCombobox_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @_
|
|
|
892
856
|
"aria-label": __props.label,
|
|
893
857
|
"aria-multiselectable": multiple.value ? true : void 0,
|
|
894
858
|
"aria-busy": __props.loading ? true : void 0,
|
|
895
|
-
onScroll
|
|
859
|
+
onScroll: _cache[3] || (_cache[3] = (...args) => unref(onScroll) && unref(onScroll)(...args))
|
|
896
860
|
}, [
|
|
897
|
-
padTop
|
|
861
|
+
unref(padTop) > 0 ? (openBlock(), createElementBlock("li", {
|
|
898
862
|
key: 0,
|
|
899
|
-
style: normalizeStyle({ height: `${padTop
|
|
863
|
+
style: normalizeStyle({ height: `${unref(padTop)}px` }),
|
|
900
864
|
"aria-hidden": "true"
|
|
901
865
|
}, null, 4)) : createCommentVNode("", true),
|
|
902
866
|
(openBlock(true), createElementBlock(Fragment, null, renderList(rows.value, (row) => {
|
|
@@ -908,7 +872,7 @@ var BaseCombobox_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @_
|
|
|
908
872
|
"is-highlighted": row.index === highlighted.value,
|
|
909
873
|
"is-selected": chosen.value.includes(row.option.value)
|
|
910
874
|
}]),
|
|
911
|
-
style: normalizeStyle(virtual
|
|
875
|
+
style: normalizeStyle(unref(virtual) ? { height: `${__props.rowHeight}px` } : void 0),
|
|
912
876
|
"aria-selected": chosen.value.includes(row.option.value),
|
|
913
877
|
"aria-setsize": matches.value.length,
|
|
914
878
|
"aria-posinset": row.index + 1,
|
|
@@ -916,9 +880,9 @@ var BaseCombobox_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @_
|
|
|
916
880
|
onPointermove: ($event) => highlighted.value = row.index
|
|
917
881
|
}, toDisplayString(row.option.label), 47, _hoisted_6$7);
|
|
918
882
|
}), 128)),
|
|
919
|
-
padBottom
|
|
883
|
+
unref(padBottom) > 0 ? (openBlock(), createElementBlock("li", {
|
|
920
884
|
key: 1,
|
|
921
|
-
style: normalizeStyle({ height: `${padBottom
|
|
885
|
+
style: normalizeStyle({ height: `${unref(padBottom)}px` }),
|
|
922
886
|
"aria-hidden": "true"
|
|
923
887
|
}, null, 4)) : createCommentVNode("", true),
|
|
924
888
|
__props.loading ? (openBlock(), createElementBlock("li", _hoisted_7$4, [__props.loadingLabel ? (openBlock(), createElementBlock("span", _hoisted_8$3, toDisplayString(__props.loadingLabel), 1)) : createCommentVNode("", true), createElementVNode("span", _hoisted_9$3, [(openBlock(), createElementBlock(Fragment, null, renderList(3, (n) => {
|
|
@@ -928,7 +892,7 @@ var BaseCombobox_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @_
|
|
|
928
892
|
height: "0.75rem"
|
|
929
893
|
});
|
|
930
894
|
}), 64))])])) : matches.value.length === 0 ? (openBlock(), createElementBlock("li", _hoisted_10$3, toDisplayString(__props.emptyLabel), 1)) : createCommentVNode("", true)
|
|
931
|
-
], 40, _hoisted_5$
|
|
895
|
+
], 40, _hoisted_5$11), [[vShow, open.value]]),
|
|
932
896
|
__props.error ? (openBlock(), createElementBlock("p", {
|
|
933
897
|
key: 0,
|
|
934
898
|
id: errorId,
|
|
@@ -941,16 +905,16 @@ var BaseCombobox_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @_
|
|
|
941
905
|
], 512);
|
|
942
906
|
};
|
|
943
907
|
}
|
|
944
|
-
}), [["__scopeId", "data-v-
|
|
908
|
+
}), [["__scopeId", "data-v-0ae3b425"]]);
|
|
945
909
|
//#endregion
|
|
946
910
|
//#region src/components/BaseRadioGroup.vue?vue&type=script&setup=true&lang.ts
|
|
947
|
-
var _hoisted_1$
|
|
948
|
-
var _hoisted_2$
|
|
911
|
+
var _hoisted_1$45 = ["aria-describedby"];
|
|
912
|
+
var _hoisted_2$39 = [
|
|
949
913
|
"name",
|
|
950
914
|
"value",
|
|
951
915
|
"disabled"
|
|
952
916
|
];
|
|
953
|
-
var _hoisted_3$
|
|
917
|
+
var _hoisted_3$26 = { class: "text-ink text-sm" };
|
|
954
918
|
//#endregion
|
|
955
919
|
//#region src/components/BaseRadioGroup.vue
|
|
956
920
|
var BaseRadioGroup_default = /* @__PURE__ */ defineComponent({
|
|
@@ -994,7 +958,7 @@ var BaseRadioGroup_default = /* @__PURE__ */ defineComponent({
|
|
|
994
958
|
value: option.value,
|
|
995
959
|
disabled: option.disabled,
|
|
996
960
|
class: "accent-primary focus-visible:outline-primary size-4 shrink-0 focus-visible:outline-2 focus-visible:outline-offset-2"
|
|
997
|
-
}, null, 8, _hoisted_2$
|
|
961
|
+
}, null, 8, _hoisted_2$39), [[vModelRadio, unref(model)]]), createElementVNode("span", _hoisted_3$26, toDisplayString(option.label), 1)], 2);
|
|
998
962
|
}), 128)),
|
|
999
963
|
__props.error ? (openBlock(), createElementBlock("p", {
|
|
1000
964
|
key: 0,
|
|
@@ -1005,19 +969,19 @@ var BaseRadioGroup_default = /* @__PURE__ */ defineComponent({
|
|
|
1005
969
|
id: hintId,
|
|
1006
970
|
class: "text-ink-soft text-xs"
|
|
1007
971
|
}, toDisplayString(__props.hint), 1)) : createCommentVNode("", true)
|
|
1008
|
-
], 8, _hoisted_1$
|
|
972
|
+
], 8, _hoisted_1$45);
|
|
1009
973
|
};
|
|
1010
974
|
}
|
|
1011
975
|
});
|
|
1012
976
|
//#endregion
|
|
1013
977
|
//#region src/components/BaseSelect.vue?vue&type=script&setup=true&lang.ts
|
|
1014
|
-
var _hoisted_1$
|
|
1015
|
-
var _hoisted_2$
|
|
978
|
+
var _hoisted_1$44 = { class: "relative" };
|
|
979
|
+
var _hoisted_2$38 = [
|
|
1016
980
|
"id",
|
|
1017
981
|
"aria-invalid",
|
|
1018
982
|
"aria-describedby"
|
|
1019
983
|
];
|
|
1020
|
-
var _hoisted_3$
|
|
984
|
+
var _hoisted_3$25 = {
|
|
1021
985
|
key: 0,
|
|
1022
986
|
value: void 0,
|
|
1023
987
|
disabled: ""
|
|
@@ -1058,7 +1022,7 @@ var BaseSelect_default = /* @__PURE__ */ defineComponent({
|
|
|
1058
1022
|
"label-hidden": __props.labelHidden,
|
|
1059
1023
|
size: __props.size
|
|
1060
1024
|
}, {
|
|
1061
|
-
default: withCtx(({ id, describedBy, invalid }) => [createElementVNode("div", _hoisted_1$
|
|
1025
|
+
default: withCtx(({ id, describedBy, invalid }) => [createElementVNode("div", _hoisted_1$44, [withDirectives(createElementVNode("select", {
|
|
1062
1026
|
id,
|
|
1063
1027
|
"onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => model.value = $event),
|
|
1064
1028
|
"aria-invalid": invalid,
|
|
@@ -1068,13 +1032,13 @@ var BaseSelect_default = /* @__PURE__ */ defineComponent({
|
|
|
1068
1032
|
__props.variant === "unstyled" ? "" : SIZE_CLASS[__props.size],
|
|
1069
1033
|
__props.variant !== "unstyled" && invalid ? "border-negative" : ""
|
|
1070
1034
|
]])
|
|
1071
|
-
}, [__props.placeholder ? (openBlock(), createElementBlock("option", _hoisted_3$
|
|
1035
|
+
}, [__props.placeholder ? (openBlock(), createElementBlock("option", _hoisted_3$25, toDisplayString(__props.placeholder), 1)) : createCommentVNode("", true), (openBlock(true), createElementBlock(Fragment, null, renderList(__props.options, (option) => {
|
|
1072
1036
|
return openBlock(), createElementBlock("option", {
|
|
1073
1037
|
key: option.value,
|
|
1074
1038
|
value: option.value,
|
|
1075
1039
|
disabled: option.disabled
|
|
1076
1040
|
}, toDisplayString(option.label), 9, _hoisted_4$18);
|
|
1077
|
-
}), 128))], 10, _hoisted_2$
|
|
1041
|
+
}), 128))], 10, _hoisted_2$38), [[vModelSelect, model.value]]), createVNode(unref(ChevronDown), {
|
|
1078
1042
|
class: "text-ink-soft pointer-events-none absolute top-1/2 right-3 size-4 -translate-y-1/2",
|
|
1079
1043
|
"aria-hidden": "true"
|
|
1080
1044
|
})])]),
|
|
@@ -1091,11 +1055,11 @@ var BaseSelect_default = /* @__PURE__ */ defineComponent({
|
|
|
1091
1055
|
});
|
|
1092
1056
|
//#endregion
|
|
1093
1057
|
//#region src/components/BaseSlider.vue?vue&type=script&setup=true&lang.ts
|
|
1094
|
-
var _hoisted_1$
|
|
1095
|
-
var _hoisted_2$
|
|
1096
|
-
var _hoisted_3$
|
|
1058
|
+
var _hoisted_1$43 = { class: "rk-slider" };
|
|
1059
|
+
var _hoisted_2$37 = { class: "rk-slider-head" };
|
|
1060
|
+
var _hoisted_3$24 = ["for"];
|
|
1097
1061
|
var _hoisted_4$17 = ["for"];
|
|
1098
|
-
var _hoisted_5$
|
|
1062
|
+
var _hoisted_5$10 = [
|
|
1099
1063
|
"id",
|
|
1100
1064
|
"min",
|
|
1101
1065
|
"max",
|
|
@@ -1139,11 +1103,11 @@ var BaseSlider_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__P
|
|
|
1139
1103
|
return span <= 0 ? 0 : (model.value - __props.min) / span * 100;
|
|
1140
1104
|
});
|
|
1141
1105
|
return (_ctx, _cache) => {
|
|
1142
|
-
return openBlock(), createElementBlock("div", _hoisted_1$
|
|
1143
|
-
createElementVNode("div", _hoisted_2$
|
|
1106
|
+
return openBlock(), createElementBlock("div", _hoisted_1$43, [
|
|
1107
|
+
createElementVNode("div", _hoisted_2$37, [createElementVNode("label", {
|
|
1144
1108
|
for: unref(id),
|
|
1145
1109
|
class: "rk-slider-label"
|
|
1146
|
-
}, toDisplayString(__props.label), 9, _hoisted_3$
|
|
1110
|
+
}, toDisplayString(__props.label), 9, _hoisted_3$24), __props.showValue ? (openBlock(), createElementBlock("output", {
|
|
1147
1111
|
key: 0,
|
|
1148
1112
|
for: unref(id),
|
|
1149
1113
|
class: "rk-slider-value"
|
|
@@ -1160,7 +1124,7 @@ var BaseSlider_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__P
|
|
|
1160
1124
|
"aria-valuetext": text.value,
|
|
1161
1125
|
"aria-describedby": __props.hint ? hintId : void 0,
|
|
1162
1126
|
style: normalizeStyle({ "--rk-slider-filled": `${filled.value}%` })
|
|
1163
|
-
}, null, 12, _hoisted_5$
|
|
1127
|
+
}, null, 12, _hoisted_5$10), [[
|
|
1164
1128
|
vModelText,
|
|
1165
1129
|
model.value,
|
|
1166
1130
|
void 0,
|
|
@@ -1177,8 +1141,8 @@ var BaseSlider_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__P
|
|
|
1177
1141
|
}), [["__scopeId", "data-v-7fa2769b"]]);
|
|
1178
1142
|
//#endregion
|
|
1179
1143
|
//#region src/components/NumberInput.vue?vue&type=script&setup=true&lang.ts
|
|
1180
|
-
var _hoisted_1$
|
|
1181
|
-
var _hoisted_2$
|
|
1144
|
+
var _hoisted_1$42 = ["aria-label", "disabled"];
|
|
1145
|
+
var _hoisted_2$36 = [
|
|
1182
1146
|
"id",
|
|
1183
1147
|
"value",
|
|
1184
1148
|
"aria-valuenow",
|
|
@@ -1188,7 +1152,7 @@ var _hoisted_2$33 = [
|
|
|
1188
1152
|
"aria-describedby",
|
|
1189
1153
|
"disabled"
|
|
1190
1154
|
];
|
|
1191
|
-
var _hoisted_3$
|
|
1155
|
+
var _hoisted_3$23 = ["aria-label", "disabled"];
|
|
1192
1156
|
//#endregion
|
|
1193
1157
|
//#region src/components/NumberInput.vue
|
|
1194
1158
|
var NumberInput_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PURE__ */ defineComponent({
|
|
@@ -1291,7 +1255,7 @@ var NumberInput_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__
|
|
|
1291
1255
|
}, [createVNode(unref(Minus), {
|
|
1292
1256
|
class: "size-4",
|
|
1293
1257
|
"aria-hidden": "true"
|
|
1294
|
-
})], 8, _hoisted_1$
|
|
1258
|
+
})], 8, _hoisted_1$42),
|
|
1295
1259
|
createElementVNode("input", {
|
|
1296
1260
|
id,
|
|
1297
1261
|
value: draft.value,
|
|
@@ -1309,7 +1273,7 @@ var NumberInput_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__
|
|
|
1309
1273
|
onInput,
|
|
1310
1274
|
onBlur: commit,
|
|
1311
1275
|
onKeydown
|
|
1312
|
-
}, null, 40, _hoisted_2$
|
|
1276
|
+
}, null, 40, _hoisted_2$36),
|
|
1313
1277
|
createElementVNode("button", {
|
|
1314
1278
|
type: "button",
|
|
1315
1279
|
class: "rk-number-step focus-ring",
|
|
@@ -1320,7 +1284,7 @@ var NumberInput_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__
|
|
|
1320
1284
|
}, [createVNode(unref(Plus), {
|
|
1321
1285
|
class: "size-4",
|
|
1322
1286
|
"aria-hidden": "true"
|
|
1323
|
-
})], 8, _hoisted_3$
|
|
1287
|
+
})], 8, _hoisted_3$23)
|
|
1324
1288
|
], 2)]),
|
|
1325
1289
|
_: 1
|
|
1326
1290
|
}, 8, [
|
|
@@ -1335,7 +1299,7 @@ var NumberInput_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__
|
|
|
1335
1299
|
}), [["__scopeId", "data-v-082bd3d7"]]);
|
|
1336
1300
|
//#endregion
|
|
1337
1301
|
//#region src/components/SliderField.vue?vue&type=script&setup=true&lang.ts
|
|
1338
|
-
var _hoisted_1$
|
|
1302
|
+
var _hoisted_1$41 = { class: "rk-slider-field" };
|
|
1339
1303
|
//#endregion
|
|
1340
1304
|
//#region src/components/SliderField.vue
|
|
1341
1305
|
var SliderField_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PURE__ */ defineComponent({
|
|
@@ -1376,7 +1340,7 @@ var SliderField_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__
|
|
|
1376
1340
|
}
|
|
1377
1341
|
});
|
|
1378
1342
|
return (_ctx, _cache) => {
|
|
1379
|
-
return openBlock(), createElementBlock("div", _hoisted_1$
|
|
1343
|
+
return openBlock(), createElementBlock("div", _hoisted_1$41, [createVNode(BaseSlider_default, {
|
|
1380
1344
|
modelValue: model.value,
|
|
1381
1345
|
"onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => model.value = $event),
|
|
1382
1346
|
label: __props.label,
|
|
@@ -1424,11 +1388,11 @@ var SliderField_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__
|
|
|
1424
1388
|
}), [["__scopeId", "data-v-6ec3163a"]]);
|
|
1425
1389
|
//#endregion
|
|
1426
1390
|
//#region src/components/BaseSpinner.vue?vue&type=script&setup=true&lang.ts
|
|
1427
|
-
var _hoisted_1$
|
|
1391
|
+
var _hoisted_1$40 = {
|
|
1428
1392
|
class: "rk-spin-wrap",
|
|
1429
1393
|
role: "status"
|
|
1430
1394
|
};
|
|
1431
|
-
var _hoisted_2$
|
|
1395
|
+
var _hoisted_2$35 = { class: "rk-spin-label" };
|
|
1432
1396
|
//#endregion
|
|
1433
1397
|
//#region src/components/BaseSpinner.vue
|
|
1434
1398
|
var BaseSpinner_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PURE__ */ defineComponent({
|
|
@@ -1456,25 +1420,25 @@ var BaseSpinner_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__
|
|
|
1456
1420
|
lg: "2.5rem"
|
|
1457
1421
|
};
|
|
1458
1422
|
return (_ctx, _cache) => {
|
|
1459
|
-
return openBlock(), createElementBlock("span", _hoisted_1$
|
|
1423
|
+
return openBlock(), createElementBlock("span", _hoisted_1$40, [createElementVNode("span", {
|
|
1460
1424
|
class: "rk-spin",
|
|
1461
1425
|
style: normalizeStyle({
|
|
1462
1426
|
width: SIZES[__props.size],
|
|
1463
1427
|
height: SIZES[__props.size]
|
|
1464
1428
|
}),
|
|
1465
1429
|
"aria-hidden": "true"
|
|
1466
|
-
}, null, 4), createElementVNode("span", _hoisted_2$
|
|
1430
|
+
}, null, 4), createElementVNode("span", _hoisted_2$35, toDisplayString(__props.label), 1)]);
|
|
1467
1431
|
};
|
|
1468
1432
|
}
|
|
1469
1433
|
}), [["__scopeId", "data-v-842da62c"]]);
|
|
1470
1434
|
//#endregion
|
|
1471
1435
|
//#region src/components/BaseSwitch.vue?vue&type=script&setup=true&lang.ts
|
|
1472
|
-
var _hoisted_1$
|
|
1473
|
-
var _hoisted_2$
|
|
1436
|
+
var _hoisted_1$39 = { class: "flex items-center justify-between gap-4" };
|
|
1437
|
+
var _hoisted_2$34 = {
|
|
1474
1438
|
key: 0,
|
|
1475
1439
|
class: "min-w-0"
|
|
1476
1440
|
};
|
|
1477
|
-
var _hoisted_3$
|
|
1441
|
+
var _hoisted_3$22 = ["id"];
|
|
1478
1442
|
var _hoisted_4$16 = [
|
|
1479
1443
|
"aria-checked",
|
|
1480
1444
|
"aria-labelledby",
|
|
@@ -1514,10 +1478,10 @@ var BaseSwitch_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__P
|
|
|
1514
1478
|
if (!__props.disabled) model.value = !model.value;
|
|
1515
1479
|
}
|
|
1516
1480
|
return (_ctx, _cache) => {
|
|
1517
|
-
return openBlock(), createElementBlock("div", _hoisted_1$
|
|
1481
|
+
return openBlock(), createElementBlock("div", _hoisted_1$39, [!__props.labelHidden ? (openBlock(), createElementBlock("span", _hoisted_2$34, [createElementVNode("span", {
|
|
1518
1482
|
id: unref(id),
|
|
1519
1483
|
class: "text-ink block text-sm"
|
|
1520
|
-
}, toDisplayString(__props.label), 9, _hoisted_3$
|
|
1484
|
+
}, toDisplayString(__props.label), 9, _hoisted_3$22), __props.hint ? (openBlock(), createElementBlock("span", {
|
|
1521
1485
|
key: 0,
|
|
1522
1486
|
id: hintId,
|
|
1523
1487
|
class: "text-ink-soft mt-0.5 block text-xs"
|
|
@@ -1537,14 +1501,13 @@ var BaseSwitch_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__P
|
|
|
1537
1501
|
}, null, -1)])], 10, _hoisted_4$16)]);
|
|
1538
1502
|
};
|
|
1539
1503
|
}
|
|
1540
|
-
}), [["__scopeId", "data-v-
|
|
1504
|
+
}), [["__scopeId", "data-v-d90e1aa6"]]);
|
|
1541
1505
|
//#endregion
|
|
1542
1506
|
//#region src/components/BaseTable.vue?vue&type=script&setup=true&lang.ts
|
|
1543
|
-
var _hoisted_1$
|
|
1544
|
-
var _hoisted_2$
|
|
1545
|
-
var _hoisted_3$
|
|
1546
|
-
var _hoisted_4$15 =
|
|
1547
|
-
var _hoisted_5$10 = ["colspan"];
|
|
1507
|
+
var _hoisted_1$38 = { class: "rk-table" };
|
|
1508
|
+
var _hoisted_2$33 = { key: 0 };
|
|
1509
|
+
var _hoisted_3$21 = { key: 1 };
|
|
1510
|
+
var _hoisted_4$15 = ["colspan"];
|
|
1548
1511
|
//#endregion
|
|
1549
1512
|
//#region src/components/BaseTable.vue
|
|
1550
1513
|
var BaseTable_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PURE__ */ defineComponent({
|
|
@@ -1562,41 +1525,43 @@ var BaseTable_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PU
|
|
|
1562
1525
|
setup(__props) {
|
|
1563
1526
|
const keyFor = (row, index) => __props.rowKey ? String(row[__props.rowKey]) : index;
|
|
1564
1527
|
return (_ctx, _cache) => {
|
|
1565
|
-
return openBlock(),
|
|
1566
|
-
|
|
1567
|
-
|
|
1568
|
-
|
|
1569
|
-
|
|
1570
|
-
|
|
1571
|
-
|
|
1572
|
-
|
|
1573
|
-
|
|
1574
|
-
key: column.key,
|
|
1575
|
-
scope: "col",
|
|
1576
|
-
class: normalizeClass([column.align && `is-${column.align}`, column.nowrap && "is-nowrap"])
|
|
1577
|
-
}, toDisplayString(column.label), 3);
|
|
1578
|
-
}), 128))])]),
|
|
1579
|
-
__props.rows.length > 0 ? (openBlock(), createElementBlock("tbody", _hoisted_3$19, [(openBlock(true), createElementBlock(Fragment, null, renderList(__props.rows, (row, index) => {
|
|
1580
|
-
return openBlock(), createElementBlock("tr", { key: keyFor(row, index) }, [(openBlock(true), createElementBlock(Fragment, null, renderList(__props.columns, (column) => {
|
|
1581
|
-
return openBlock(), createElementBlock("td", {
|
|
1528
|
+
return openBlock(), createBlock(ScrollArea_default, {
|
|
1529
|
+
axis: "x",
|
|
1530
|
+
label: __props.caption,
|
|
1531
|
+
class: "rk-table-scroll"
|
|
1532
|
+
}, {
|
|
1533
|
+
default: withCtx(() => [createElementVNode("table", _hoisted_1$38, [
|
|
1534
|
+
createElementVNode("caption", { class: normalizeClass(__props.captionHidden ? "rk-table-caption-hidden" : "rk-table-caption") }, toDisplayString(__props.caption), 3),
|
|
1535
|
+
createElementVNode("thead", null, [createElementVNode("tr", null, [(openBlock(true), createElementBlock(Fragment, null, renderList(__props.columns, (column) => {
|
|
1536
|
+
return openBlock(), createElementBlock("th", {
|
|
1582
1537
|
key: column.key,
|
|
1538
|
+
scope: "col",
|
|
1583
1539
|
class: normalizeClass([column.align && `is-${column.align}`, column.nowrap && "is-nowrap"])
|
|
1584
|
-
},
|
|
1585
|
-
|
|
1586
|
-
|
|
1587
|
-
|
|
1588
|
-
|
|
1589
|
-
|
|
1590
|
-
|
|
1591
|
-
|
|
1592
|
-
|
|
1593
|
-
|
|
1540
|
+
}, toDisplayString(column.label), 3);
|
|
1541
|
+
}), 128))])]),
|
|
1542
|
+
__props.rows.length > 0 ? (openBlock(), createElementBlock("tbody", _hoisted_2$33, [(openBlock(true), createElementBlock(Fragment, null, renderList(__props.rows, (row, index) => {
|
|
1543
|
+
return openBlock(), createElementBlock("tr", { key: keyFor(row, index) }, [(openBlock(true), createElementBlock(Fragment, null, renderList(__props.columns, (column) => {
|
|
1544
|
+
return openBlock(), createElementBlock("td", {
|
|
1545
|
+
key: column.key,
|
|
1546
|
+
class: normalizeClass([column.align && `is-${column.align}`, column.nowrap && "is-nowrap"])
|
|
1547
|
+
}, [renderSlot(_ctx.$slots, column.key, {
|
|
1548
|
+
row,
|
|
1549
|
+
value: row[column.key]
|
|
1550
|
+
}, () => [createTextVNode(toDisplayString(row[column.key]), 1)], true)], 2);
|
|
1551
|
+
}), 128))]);
|
|
1552
|
+
}), 128))])) : (openBlock(), createElementBlock("tbody", _hoisted_3$21, [createElementVNode("tr", null, [createElementVNode("td", {
|
|
1553
|
+
colspan: __props.columns.length,
|
|
1554
|
+
class: "rk-table-empty"
|
|
1555
|
+
}, [renderSlot(_ctx.$slots, "empty", {}, void 0, true)], 8, _hoisted_4$15)])]))
|
|
1556
|
+
])]),
|
|
1557
|
+
_: 3
|
|
1558
|
+
}, 8, ["label"]);
|
|
1594
1559
|
};
|
|
1595
1560
|
}
|
|
1596
|
-
}), [["__scopeId", "data-v-
|
|
1561
|
+
}), [["__scopeId", "data-v-cc1197ef"]]);
|
|
1597
1562
|
//#endregion
|
|
1598
1563
|
//#region src/components/BaseTextarea.vue?vue&type=script&setup=true&lang.ts
|
|
1599
|
-
var _hoisted_1$
|
|
1564
|
+
var _hoisted_1$37 = [
|
|
1600
1565
|
"id",
|
|
1601
1566
|
"rows",
|
|
1602
1567
|
"aria-invalid",
|
|
@@ -1642,7 +1607,7 @@ var BaseTextarea_default = /* @__PURE__ */ defineComponent({
|
|
|
1642
1607
|
__props.variant === "unstyled" ? "" : "control text-ink rounded-card focus-visible:outline-primary resize-y px-3 py-2 leading-relaxed focus-visible:outline-2 focus-visible:outline-offset-1",
|
|
1643
1608
|
"text-base",
|
|
1644
1609
|
__props.variant !== "unstyled" && invalid ? "border-negative" : ""
|
|
1645
|
-
] }), null, 16, _hoisted_1$
|
|
1610
|
+
] }), null, 16, _hoisted_1$37), [[vModelText, unref(model)]])]),
|
|
1646
1611
|
_: 1
|
|
1647
1612
|
}, 8, [
|
|
1648
1613
|
"label",
|
|
@@ -1656,12 +1621,12 @@ var BaseTextarea_default = /* @__PURE__ */ defineComponent({
|
|
|
1656
1621
|
});
|
|
1657
1622
|
//#endregion
|
|
1658
1623
|
//#region src/components/EmptyState.vue?vue&type=script&setup=true&lang.ts
|
|
1659
|
-
var _hoisted_1$
|
|
1660
|
-
var _hoisted_2$
|
|
1624
|
+
var _hoisted_1$36 = { class: "flex flex-col items-center gap-3 px-6 py-10 text-center" };
|
|
1625
|
+
var _hoisted_2$32 = {
|
|
1661
1626
|
key: 0,
|
|
1662
1627
|
class: "bg-muted text-primary rounded-card flex size-12 items-center justify-center"
|
|
1663
1628
|
};
|
|
1664
|
-
var _hoisted_3$
|
|
1629
|
+
var _hoisted_3$20 = { class: "text-ink text-base font-semibold" };
|
|
1665
1630
|
var _hoisted_4$14 = {
|
|
1666
1631
|
key: 1,
|
|
1667
1632
|
class: "text-ink-soft max-w-[36ch] text-sm"
|
|
@@ -1688,9 +1653,9 @@ var EmptyState_default = /* @__PURE__ */ defineComponent({
|
|
|
1688
1653
|
* goes — the button that creates the first one.
|
|
1689
1654
|
*/
|
|
1690
1655
|
return (_ctx, _cache) => {
|
|
1691
|
-
return openBlock(), createElementBlock("div", _hoisted_1$
|
|
1692
|
-
_ctx.$slots.icon ? (openBlock(), createElementBlock("div", _hoisted_2$
|
|
1693
|
-
createElementVNode("h3", _hoisted_3$
|
|
1656
|
+
return openBlock(), createElementBlock("div", _hoisted_1$36, [
|
|
1657
|
+
_ctx.$slots.icon ? (openBlock(), createElementBlock("div", _hoisted_2$32, [renderSlot(_ctx.$slots, "icon")])) : createCommentVNode("", true),
|
|
1658
|
+
createElementVNode("h3", _hoisted_3$20, toDisplayString(__props.title), 1),
|
|
1694
1659
|
__props.description ? (openBlock(), createElementBlock("p", _hoisted_4$14, toDisplayString(__props.description), 1)) : createCommentVNode("", true),
|
|
1695
1660
|
_ctx.$slots.action ? (openBlock(), createElementBlock("div", _hoisted_5$9, [renderSlot(_ctx.$slots, "action")])) : createCommentVNode("", true)
|
|
1696
1661
|
]);
|
|
@@ -1759,9 +1724,9 @@ var PageContainer_default = /* @__PURE__ */ defineComponent({
|
|
|
1759
1724
|
});
|
|
1760
1725
|
//#endregion
|
|
1761
1726
|
//#region src/components/PageHeader.vue?vue&type=script&setup=true&lang.ts
|
|
1762
|
-
var _hoisted_1$
|
|
1763
|
-
var _hoisted_2$
|
|
1764
|
-
var _hoisted_3$
|
|
1727
|
+
var _hoisted_1$35 = { class: "grid h-12 shrink-0 grid-cols-[2.5rem_1fr_2.5rem] items-center" };
|
|
1728
|
+
var _hoisted_2$31 = { class: "justify-self-start" };
|
|
1729
|
+
var _hoisted_3$19 = { class: "text-ink flex min-w-0 justify-center text-base font-semibold tabular-nums" };
|
|
1765
1730
|
var _hoisted_4$13 = { class: "truncate" };
|
|
1766
1731
|
var _hoisted_5$8 = { class: "justify-self-end" };
|
|
1767
1732
|
//#endregion
|
|
@@ -1780,9 +1745,9 @@ var PageHeader_default = /* @__PURE__ */ defineComponent({
|
|
|
1780
1745
|
* each other.
|
|
1781
1746
|
*/
|
|
1782
1747
|
return (_ctx, _cache) => {
|
|
1783
|
-
return openBlock(), createElementBlock("header", _hoisted_1$
|
|
1784
|
-
createElementVNode("div", _hoisted_2$
|
|
1785
|
-
createElementVNode("h1", _hoisted_3$
|
|
1748
|
+
return openBlock(), createElementBlock("header", _hoisted_1$35, [
|
|
1749
|
+
createElementVNode("div", _hoisted_2$31, [renderSlot(_ctx.$slots, "left")]),
|
|
1750
|
+
createElementVNode("h1", _hoisted_3$19, [renderSlot(_ctx.$slots, "title", {}, () => [createElementVNode("span", _hoisted_4$13, toDisplayString(__props.title), 1)])]),
|
|
1786
1751
|
createElementVNode("div", _hoisted_5$8, [renderSlot(_ctx.$slots, "right")])
|
|
1787
1752
|
]);
|
|
1788
1753
|
};
|
|
@@ -1790,7 +1755,7 @@ var PageHeader_default = /* @__PURE__ */ defineComponent({
|
|
|
1790
1755
|
});
|
|
1791
1756
|
//#endregion
|
|
1792
1757
|
//#region src/components/ProgressBar.vue?vue&type=script&setup=true&lang.ts
|
|
1793
|
-
var _hoisted_1$
|
|
1758
|
+
var _hoisted_1$34 = ["aria-valuenow", "aria-label"];
|
|
1794
1759
|
//#endregion
|
|
1795
1760
|
//#region src/components/ProgressBar.vue
|
|
1796
1761
|
var ProgressBar_default = /* @__PURE__ */ defineComponent({
|
|
@@ -1822,18 +1787,18 @@ var ProgressBar_default = /* @__PURE__ */ defineComponent({
|
|
|
1822
1787
|
}, [createElementVNode("div", {
|
|
1823
1788
|
class: "bg-primary h-full rounded-full transition-[width] duration-700 ease-out",
|
|
1824
1789
|
style: normalizeStyle({ width: `${portion.value}%` })
|
|
1825
|
-
}, null, 4)], 10, _hoisted_1$
|
|
1790
|
+
}, null, 4)], 10, _hoisted_1$34);
|
|
1826
1791
|
};
|
|
1827
1792
|
}
|
|
1828
1793
|
});
|
|
1829
1794
|
//#endregion
|
|
1830
1795
|
//#region src/components/PriceCard.vue?vue&type=script&setup=true&lang.ts
|
|
1831
|
-
var _hoisted_1$
|
|
1796
|
+
var _hoisted_1$33 = {
|
|
1832
1797
|
key: 0,
|
|
1833
1798
|
class: "bg-primary rounded-cell text-on-primary absolute -top-3 left-7 px-3 py-1 text-[0.7rem] font-semibold"
|
|
1834
1799
|
};
|
|
1835
|
-
var _hoisted_2$
|
|
1836
|
-
var _hoisted_3$
|
|
1800
|
+
var _hoisted_2$30 = { class: "flex items-start justify-between gap-4" };
|
|
1801
|
+
var _hoisted_3$18 = { class: "text-ink mt-5 text-lg font-semibold" };
|
|
1837
1802
|
var _hoisted_4$12 = {
|
|
1838
1803
|
key: 1,
|
|
1839
1804
|
class: "text-ink-soft mt-1.5 text-sm leading-relaxed"
|
|
@@ -1903,15 +1868,15 @@ var PriceCard_default = /* @__PURE__ */ defineComponent({
|
|
|
1903
1868
|
const palette = computed(() => TONE[__props.tone]);
|
|
1904
1869
|
return (_ctx, _cache) => {
|
|
1905
1870
|
return openBlock(), createElementBlock("article", { class: normalizeClass(["surface rounded-card ease-standard relative flex h-full flex-col p-7 transition-[border-color,box-shadow,transform] duration-(--duration-slower) hover:[--surface-border-color:color-mix(in_oklab,var(--color-primary)_60%,transparent)] hover:[--surface-shadow:var(--shadow-raised)] sm:p-8", [palette.value.ring, __props.recommended ? "[--surface-shadow:var(--shadow-raised)]" : "hover:-translate-y-0.5"]]) }, [
|
|
1906
|
-
__props.badge && __props.recommended ? (openBlock(), createElementBlock("span", _hoisted_1$
|
|
1907
|
-
createElementVNode("div", _hoisted_2$
|
|
1871
|
+
__props.badge && __props.recommended ? (openBlock(), createElementBlock("span", _hoisted_1$33, toDisplayString(__props.badge), 1)) : createCommentVNode("", true),
|
|
1872
|
+
createElementVNode("div", _hoisted_2$30, [_ctx.$slots.icon ? (openBlock(), createElementBlock("span", {
|
|
1908
1873
|
key: 0,
|
|
1909
1874
|
class: normalizeClass(["rounded-card grid size-11 place-items-center text-xl", palette.value.icon])
|
|
1910
1875
|
}, [renderSlot(_ctx.$slots, "icon")], 2)) : createCommentVNode("", true), __props.chip ? (openBlock(), createElementBlock("span", {
|
|
1911
1876
|
key: 1,
|
|
1912
1877
|
class: normalizeClass(["rounded-cell ml-auto px-2.5 py-1 text-[0.7rem] font-medium", palette.value.soft])
|
|
1913
1878
|
}, toDisplayString(__props.chip), 3)) : createCommentVNode("", true)]),
|
|
1914
|
-
createElementVNode("h3", _hoisted_3$
|
|
1879
|
+
createElementVNode("h3", _hoisted_3$18, toDisplayString(__props.name), 1),
|
|
1915
1880
|
__props.lead ? (openBlock(), createElementBlock("p", _hoisted_4$12, toDisplayString(__props.lead), 1)) : createCommentVNode("", true),
|
|
1916
1881
|
createElementVNode("p", _hoisted_5$7, [createElementVNode("span", _hoisted_6$6, toDisplayString(__props.price), 1), __props.period ? (openBlock(), createElementBlock("span", _hoisted_7$3, toDisplayString(__props.period), 1)) : createCommentVNode("", true)]),
|
|
1917
1882
|
__props.note ? (openBlock(), createElementBlock("p", _hoisted_8$2, toDisplayString(__props.note), 1)) : createCommentVNode("", true),
|
|
@@ -1928,8 +1893,8 @@ var PriceCard_default = /* @__PURE__ */ defineComponent({
|
|
|
1928
1893
|
});
|
|
1929
1894
|
//#endregion
|
|
1930
1895
|
//#region src/components/ToneDot.vue?vue&type=script&setup=true&lang.ts
|
|
1931
|
-
var _hoisted_1$
|
|
1932
|
-
var _hoisted_2$
|
|
1896
|
+
var _hoisted_1$32 = { class: "inline-flex items-center gap-1.5" };
|
|
1897
|
+
var _hoisted_2$29 = {
|
|
1933
1898
|
key: 0,
|
|
1934
1899
|
class: "text-ink-soft text-xs font-medium"
|
|
1935
1900
|
};
|
|
@@ -1950,13 +1915,13 @@ var ToneDot_default = /* @__PURE__ */ defineComponent({
|
|
|
1950
1915
|
* priorities — without this component knowing about any of them.
|
|
1951
1916
|
*/
|
|
1952
1917
|
return (_ctx, _cache) => {
|
|
1953
|
-
return openBlock(), createElementBlock("span", _hoisted_1$
|
|
1918
|
+
return openBlock(), createElementBlock("span", _hoisted_1$32, [createElementVNode("span", { class: normalizeClass(["size-2 rounded-full", __props.fill]) }, null, 2), __props.label ? (openBlock(), createElementBlock("span", _hoisted_2$29, toDisplayString(__props.label), 1)) : createCommentVNode("", true)]);
|
|
1954
1919
|
};
|
|
1955
1920
|
}
|
|
1956
1921
|
});
|
|
1957
1922
|
//#endregion
|
|
1958
1923
|
//#region src/components/SectionHeading.vue?vue&type=script&setup=true&lang.ts
|
|
1959
|
-
var _hoisted_1$
|
|
1924
|
+
var _hoisted_1$31 = {
|
|
1960
1925
|
key: 0,
|
|
1961
1926
|
class: "text-ink-soft text-xs tabular-nums"
|
|
1962
1927
|
};
|
|
@@ -1974,15 +1939,15 @@ var SectionHeading_default = /* @__PURE__ */ defineComponent({
|
|
|
1974
1939
|
return openBlock(), createElementBlock("h2", { class: normalizeClass(["flex w-fit items-center gap-2 self-start rounded-full border px-3 py-1", __props.tone.card]) }, [
|
|
1975
1940
|
createVNode(ToneDot_default, { fill: __props.tone.fill }, null, 8, ["fill"]),
|
|
1976
1941
|
createElementVNode("span", { class: normalizeClass(["text-xs font-semibold tracking-wide uppercase", __props.tone.text]) }, toDisplayString(__props.label), 3),
|
|
1977
|
-
__props.count > 0 ? (openBlock(), createElementBlock("span", _hoisted_1$
|
|
1942
|
+
__props.count > 0 ? (openBlock(), createElementBlock("span", _hoisted_1$31, toDisplayString(__props.count), 1)) : createCommentVNode("", true)
|
|
1978
1943
|
], 2);
|
|
1979
1944
|
};
|
|
1980
1945
|
}
|
|
1981
1946
|
});
|
|
1982
1947
|
//#endregion
|
|
1983
1948
|
//#region src/components/SegmentedControl.vue?vue&type=script&setup=true&lang.ts
|
|
1984
|
-
var _hoisted_1$
|
|
1985
|
-
var _hoisted_2$
|
|
1949
|
+
var _hoisted_1$30 = { class: "bg-muted rounded-card flex w-full gap-1 p-1" };
|
|
1950
|
+
var _hoisted_2$28 = ["value", "name"];
|
|
1986
1951
|
//#endregion
|
|
1987
1952
|
//#region src/components/SegmentedControl.vue
|
|
1988
1953
|
var SegmentedControl_default = /* @__PURE__ */ defineComponent({
|
|
@@ -1996,7 +1961,7 @@ var SegmentedControl_default = /* @__PURE__ */ defineComponent({
|
|
|
1996
1961
|
const model = useModel(__props, "modelValue");
|
|
1997
1962
|
const name = useId();
|
|
1998
1963
|
return (_ctx, _cache) => {
|
|
1999
|
-
return openBlock(), createElementBlock("div", _hoisted_1$
|
|
1964
|
+
return openBlock(), createElementBlock("div", _hoisted_1$30, [(openBlock(true), createElementBlock(Fragment, null, renderList(__props.options, (option) => {
|
|
2000
1965
|
return openBlock(), createElementBlock("label", {
|
|
2001
1966
|
key: String(option.value),
|
|
2002
1967
|
class: "flex-1 cursor-pointer"
|
|
@@ -2006,18 +1971,18 @@ var SegmentedControl_default = /* @__PURE__ */ defineComponent({
|
|
|
2006
1971
|
value: option.value,
|
|
2007
1972
|
name: unref(name),
|
|
2008
1973
|
class: "peer sr-only"
|
|
2009
|
-
}, null, 8, _hoisted_2$
|
|
1974
|
+
}, null, 8, _hoisted_2$28), [[vModelRadio, model.value]]), createElementVNode("span", { class: normalizeClass(["peer-focus-visible:outline-primary flex h-10 items-center justify-center rounded-xl px-2 text-sm font-medium transition-colors select-none peer-focus-visible:outline-2 peer-focus-visible:outline-offset-2", model.value === option.value ? "bg-surface text-ink shadow-(--shadow-control)" : "text-ink-soft"]) }, toDisplayString(option.label), 3)]);
|
|
2010
1975
|
}), 128))]);
|
|
2011
1976
|
};
|
|
2012
1977
|
}
|
|
2013
1978
|
});
|
|
2014
1979
|
//#endregion
|
|
2015
1980
|
//#region src/components/SkeletonList.vue?vue&type=script&setup=true&lang.ts
|
|
2016
|
-
var _hoisted_1$
|
|
1981
|
+
var _hoisted_1$29 = {
|
|
2017
1982
|
role: "status",
|
|
2018
1983
|
class: "flex flex-col gap-1"
|
|
2019
1984
|
};
|
|
2020
|
-
var _hoisted_2$
|
|
1985
|
+
var _hoisted_2$27 = { class: "sr-only" };
|
|
2021
1986
|
//#endregion
|
|
2022
1987
|
//#region src/components/SkeletonList.vue
|
|
2023
1988
|
var SkeletonList_default = /* @__PURE__ */ defineComponent({
|
|
@@ -2031,7 +1996,7 @@ var SkeletonList_default = /* @__PURE__ */ defineComponent({
|
|
|
2031
1996
|
/** A length starts with a digit, a dot, or opens a CSS function. */
|
|
2032
1997
|
const isLength = computed(() => /^(?:[.\d]|calc\(|var\(|clamp\(|min\(|max\()/.test(__props.rowHeight));
|
|
2033
1998
|
return (_ctx, _cache) => {
|
|
2034
|
-
return openBlock(), createElementBlock("div", _hoisted_1$
|
|
1999
|
+
return openBlock(), createElementBlock("div", _hoisted_1$29, [createElementVNode("span", _hoisted_2$27, toDisplayString(__props.label), 1), (openBlock(true), createElementBlock(Fragment, null, renderList(__props.rows, (row) => {
|
|
2035
2000
|
return openBlock(), createElementBlock("div", {
|
|
2036
2001
|
key: row,
|
|
2037
2002
|
class: normalizeClass(["bg-muted rounded-card animate-pulse", isLength.value ? void 0 : __props.rowHeight]),
|
|
@@ -2044,9 +2009,9 @@ var SkeletonList_default = /* @__PURE__ */ defineComponent({
|
|
|
2044
2009
|
});
|
|
2045
2010
|
//#endregion
|
|
2046
2011
|
//#region src/components/StatCard.vue?vue&type=script&setup=true&lang.ts
|
|
2047
|
-
var _hoisted_1$
|
|
2048
|
-
var _hoisted_2$
|
|
2049
|
-
var _hoisted_3$
|
|
2012
|
+
var _hoisted_1$28 = { class: "surface rounded-card flex flex-1 flex-col gap-0.5 p-3" };
|
|
2013
|
+
var _hoisted_2$26 = { class: "flex items-baseline gap-1" };
|
|
2014
|
+
var _hoisted_3$17 = { class: "text-ink text-xl font-semibold tabular-nums" };
|
|
2050
2015
|
var _hoisted_4$11 = { class: "text-ink-soft text-xs" };
|
|
2051
2016
|
//#endregion
|
|
2052
2017
|
//#region src/components/StatCard.vue
|
|
@@ -2064,7 +2029,7 @@ var StatCard_default = /* @__PURE__ */ defineComponent({
|
|
|
2064
2029
|
flat: ArrowRight
|
|
2065
2030
|
};
|
|
2066
2031
|
return (_ctx, _cache) => {
|
|
2067
|
-
return openBlock(), createElementBlock("div", _hoisted_1$
|
|
2032
|
+
return openBlock(), createElementBlock("div", _hoisted_1$28, [createElementVNode("div", _hoisted_2$26, [createElementVNode("span", _hoisted_3$17, toDisplayString(__props.value), 1), __props.trend ? (openBlock(), createBlock(resolveDynamicComponent(TREND_ICON[__props.trend]), {
|
|
2068
2033
|
key: 0,
|
|
2069
2034
|
class: "text-ink-soft size-3"
|
|
2070
2035
|
})) : createCommentVNode("", true)]), createElementVNode("span", _hoisted_4$11, toDisplayString(__props.label), 1)]);
|
|
@@ -2073,13 +2038,13 @@ var StatCard_default = /* @__PURE__ */ defineComponent({
|
|
|
2073
2038
|
});
|
|
2074
2039
|
//#endregion
|
|
2075
2040
|
//#region src/components/ToastHost.vue?vue&type=script&setup=true&lang.ts
|
|
2076
|
-
var _hoisted_1$
|
|
2041
|
+
var _hoisted_1$27 = [
|
|
2077
2042
|
"onMouseenter",
|
|
2078
2043
|
"onMouseleave",
|
|
2079
2044
|
"onFocusin",
|
|
2080
2045
|
"onFocusout"
|
|
2081
2046
|
];
|
|
2082
|
-
var _hoisted_2$
|
|
2047
|
+
var _hoisted_2$25 = { class: "flex-1 text-sm leading-snug" };
|
|
2083
2048
|
//#endregion
|
|
2084
2049
|
//#region src/components/ToastHost.vue
|
|
2085
2050
|
var ToastHost_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PURE__ */ defineComponent({
|
|
@@ -2140,7 +2105,7 @@ var ToastHost_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PU
|
|
|
2140
2105
|
class: normalizeClass(["mt-0.5 size-5 shrink-0", TONE_CLASS[toast.tone]]),
|
|
2141
2106
|
"aria-hidden": "true"
|
|
2142
2107
|
}, null, 8, ["class"])),
|
|
2143
|
-
createElementVNode("p", _hoisted_2$
|
|
2108
|
+
createElementVNode("p", _hoisted_2$25, toDisplayString(toast.message), 1),
|
|
2144
2109
|
toast.action ? (openBlock(), createBlock(BaseButton_default, {
|
|
2145
2110
|
key: 0,
|
|
2146
2111
|
variant: "link",
|
|
@@ -2163,7 +2128,7 @@ var ToastHost_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PU
|
|
|
2163
2128
|
default: withCtx(() => [createVNode(unref(X), { class: "size-4" })]),
|
|
2164
2129
|
_: 1
|
|
2165
2130
|
}, 8, ["aria-label", "onClick"])
|
|
2166
|
-
], 40, _hoisted_1$
|
|
2131
|
+
], 40, _hoisted_1$27);
|
|
2167
2132
|
}), 128))]),
|
|
2168
2133
|
_: 1
|
|
2169
2134
|
})], 2)])) : createCommentVNode("", true);
|
|
@@ -2172,8 +2137,8 @@ var ToastHost_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PU
|
|
|
2172
2137
|
}), [["__scopeId", "data-v-737eb240"]]);
|
|
2173
2138
|
//#endregion
|
|
2174
2139
|
//#region src/components/LocaleLinks.vue?vue&type=script&setup=true&lang.ts
|
|
2175
|
-
var _hoisted_1$
|
|
2176
|
-
var _hoisted_2$
|
|
2140
|
+
var _hoisted_1$26 = ["aria-label"];
|
|
2141
|
+
var _hoisted_2$24 = [
|
|
2177
2142
|
"lang",
|
|
2178
2143
|
"aria-pressed",
|
|
2179
2144
|
"onClick"
|
|
@@ -2217,16 +2182,16 @@ var LocaleLinks_default = /* @__PURE__ */ defineComponent({
|
|
|
2217
2182
|
class: normalizeClass(["focus-ring rounded-full px-2.5 py-1.5 text-xs transition-colors", preference.value === locale ? "bg-muted text-ink font-semibold" : "text-ink-soft hover:text-ink"]),
|
|
2218
2183
|
"aria-pressed": preference.value === locale,
|
|
2219
2184
|
onClick: ($event) => preference.value = locale
|
|
2220
|
-
}, toDisplayString(__props.labels[locale]), 11, _hoisted_2$
|
|
2221
|
-
}), 128))], 8, _hoisted_1$
|
|
2185
|
+
}, toDisplayString(__props.labels[locale]), 11, _hoisted_2$24);
|
|
2186
|
+
}), 128))], 8, _hoisted_1$26);
|
|
2222
2187
|
};
|
|
2223
2188
|
}
|
|
2224
2189
|
});
|
|
2225
2190
|
//#endregion
|
|
2226
2191
|
//#region src/components/TabBar.vue?vue&type=script&setup=true&lang.ts
|
|
2227
|
-
var _hoisted_1$
|
|
2228
|
-
var _hoisted_2$
|
|
2229
|
-
var _hoisted_3$
|
|
2192
|
+
var _hoisted_1$25 = { class: "tab-bar" };
|
|
2193
|
+
var _hoisted_2$23 = ["aria-label"];
|
|
2194
|
+
var _hoisted_3$16 = { class: "tab-icon-slot" };
|
|
2230
2195
|
var _hoisted_4$10 = { class: "tab-label" };
|
|
2231
2196
|
//#endregion
|
|
2232
2197
|
//#region src/components/TabBar.vue
|
|
@@ -2239,7 +2204,7 @@ var TabBar_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PURE_
|
|
|
2239
2204
|
},
|
|
2240
2205
|
setup(__props) {
|
|
2241
2206
|
return (_ctx, _cache) => {
|
|
2242
|
-
return openBlock(), createElementBlock("header", _hoisted_1$
|
|
2207
|
+
return openBlock(), createElementBlock("header", _hoisted_1$25, [createElementVNode("nav", {
|
|
2243
2208
|
class: "tab-bar-inner",
|
|
2244
2209
|
"aria-label": __props.label || void 0
|
|
2245
2210
|
}, [(openBlock(true), createElementBlock(Fragment, null, renderList(__props.items, (item) => {
|
|
@@ -2250,22 +2215,22 @@ var TabBar_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PURE_
|
|
|
2250
2215
|
"aria-current": item.key === __props.active ? "page" : void 0,
|
|
2251
2216
|
onClick: _cache[0] || (_cache[0] = ($event) => unref(tapFeedback)())
|
|
2252
2217
|
}, {
|
|
2253
|
-
default: withCtx(() => [createElementVNode("span", _hoisted_3$
|
|
2218
|
+
default: withCtx(() => [createElementVNode("span", _hoisted_3$16, [(openBlock(), createBlock(resolveDynamicComponent(item.icon), { class: "tab-icon" }))]), createElementVNode("span", _hoisted_4$10, toDisplayString(item.label), 1)]),
|
|
2254
2219
|
_: 2
|
|
2255
2220
|
}, 1032, [
|
|
2256
2221
|
"to",
|
|
2257
2222
|
"class",
|
|
2258
2223
|
"aria-current"
|
|
2259
2224
|
]);
|
|
2260
|
-
}), 128))], 8, _hoisted_2$
|
|
2225
|
+
}), 128))], 8, _hoisted_2$23)]);
|
|
2261
2226
|
};
|
|
2262
2227
|
}
|
|
2263
2228
|
}), [["__scopeId", "data-v-a76891c4"]]);
|
|
2264
2229
|
//#endregion
|
|
2265
2230
|
//#region src/components/ActivityGrid.vue?vue&type=script&setup=true&lang.ts
|
|
2266
|
-
var _hoisted_1$
|
|
2267
|
-
var _hoisted_2$
|
|
2268
|
-
var _hoisted_3$
|
|
2231
|
+
var _hoisted_1$24 = ["aria-label"];
|
|
2232
|
+
var _hoisted_2$22 = ["colspan"];
|
|
2233
|
+
var _hoisted_3$15 = {
|
|
2269
2234
|
scope: "row",
|
|
2270
2235
|
class: "rk-activity-weekday"
|
|
2271
2236
|
};
|
|
@@ -2428,9 +2393,9 @@ var ActivityGrid_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @_
|
|
|
2428
2393
|
key: month.key,
|
|
2429
2394
|
colspan: month.span,
|
|
2430
2395
|
scope: "colgroup"
|
|
2431
|
-
}, toDisplayString(month.label), 9, _hoisted_2$
|
|
2396
|
+
}, toDisplayString(month.label), 9, _hoisted_2$22);
|
|
2432
2397
|
}), 128))])]), createElementVNode("tbody", null, [(openBlock(true), createElementBlock(Fragment, null, renderList(weekdays.value, (weekday, row) => {
|
|
2433
|
-
return openBlock(), createElementBlock("tr", { key: weekday }, [createElementVNode("th", _hoisted_3$
|
|
2398
|
+
return openBlock(), createElementBlock("tr", { key: weekday }, [createElementVNode("th", _hoisted_3$15, [createElementVNode("span", _hoisted_4$9, toDisplayString(weekday), 1)]), (openBlock(true), createElementBlock(Fragment, null, renderList(weeks.value, (week, column) => {
|
|
2434
2399
|
return openBlock(), createElementBlock(Fragment, { key: column }, [week[row] ? (openBlock(), createElementBlock("td", mergeProps({
|
|
2435
2400
|
key: 0,
|
|
2436
2401
|
class: "rk-activity-cell"
|
|
@@ -2440,11 +2405,224 @@ var ActivityGrid_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @_
|
|
|
2440
2405
|
class: [__props.levelFor(week[row]), { "is-pickable": __props.isSelectable?.(week[row]) }]
|
|
2441
2406
|
}), null, 16, _hoisted_5$6)) : (openBlock(), createElementBlock("td", _hoisted_6$5))], 64);
|
|
2442
2407
|
}), 128))]);
|
|
2443
|
-
}), 128))])], 40, _hoisted_1$
|
|
2408
|
+
}), 128))])], 40, _hoisted_1$24)], 512);
|
|
2444
2409
|
};
|
|
2445
2410
|
}
|
|
2446
2411
|
}), [["__scopeId", "data-v-9f622328"]]);
|
|
2447
2412
|
//#endregion
|
|
2413
|
+
//#region src/components/VirtualList.vue?vue&type=script&setup=true&lang.ts
|
|
2414
|
+
var _hoisted_1$23 = ["aria-label"];
|
|
2415
|
+
var _hoisted_2$21 = ["aria-setsize", "aria-posinset"];
|
|
2416
|
+
//#endregion
|
|
2417
|
+
//#region src/components/VirtualList.vue
|
|
2418
|
+
var VirtualList_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PURE__ */ defineComponent({
|
|
2419
|
+
__name: "VirtualList",
|
|
2420
|
+
props: {
|
|
2421
|
+
items: {},
|
|
2422
|
+
rowHeight: {},
|
|
2423
|
+
label: {},
|
|
2424
|
+
virtualizeAfter: { default: 50 },
|
|
2425
|
+
scrollbar: { default: "auto" }
|
|
2426
|
+
},
|
|
2427
|
+
setup(__props, { expose: __expose }) {
|
|
2428
|
+
const area = useTemplateRef("area");
|
|
2429
|
+
const { window: shown, padTop, padBottom, viewportHeight, onScroll } = useVirtualWindow({
|
|
2430
|
+
count: computed(() => __props.items.length),
|
|
2431
|
+
rowHeight: computed(() => __props.rowHeight),
|
|
2432
|
+
threshold: computed(() => __props.virtualizeAfter)
|
|
2433
|
+
});
|
|
2434
|
+
const rows = computed(() => __props.items.slice(shown.value.start, shown.value.end).map((item, offset) => ({
|
|
2435
|
+
item,
|
|
2436
|
+
/** The row's place in the whole list, which is what a reader is told. */
|
|
2437
|
+
index: shown.value.start + offset
|
|
2438
|
+
})));
|
|
2439
|
+
function measure() {
|
|
2440
|
+
const element = area.value?.viewport;
|
|
2441
|
+
if (element) viewportHeight.value = element.clientHeight;
|
|
2442
|
+
}
|
|
2443
|
+
onMounted(measure);
|
|
2444
|
+
watch(() => __props.items.length, measure);
|
|
2445
|
+
/** Scrolls a row into view by its index, for an app driving the list itself. */
|
|
2446
|
+
function scrollToIndex(index) {
|
|
2447
|
+
const element = area.value?.viewport;
|
|
2448
|
+
if (!element) return;
|
|
2449
|
+
const top = Math.max(0, Math.min(__props.items.length - 1, index)) * __props.rowHeight;
|
|
2450
|
+
if (top < element.scrollTop) element.scrollTop = top;
|
|
2451
|
+
else if (top + __props.rowHeight > element.scrollTop + element.clientHeight) element.scrollTop = top + __props.rowHeight - element.clientHeight;
|
|
2452
|
+
}
|
|
2453
|
+
__expose({ scrollToIndex });
|
|
2454
|
+
return (_ctx, _cache) => {
|
|
2455
|
+
return openBlock(), createBlock(ScrollArea_default, {
|
|
2456
|
+
ref_key: "area",
|
|
2457
|
+
ref: area,
|
|
2458
|
+
axis: "y",
|
|
2459
|
+
label: __props.label,
|
|
2460
|
+
scrollbar: __props.scrollbar,
|
|
2461
|
+
class: "rk-vlist",
|
|
2462
|
+
onScroll: unref(onScroll)
|
|
2463
|
+
}, {
|
|
2464
|
+
default: withCtx(() => [createElementVNode("ul", {
|
|
2465
|
+
class: "rk-vlist-rows",
|
|
2466
|
+
"aria-label": __props.label
|
|
2467
|
+
}, [
|
|
2468
|
+
unref(padTop) > 0 ? (openBlock(), createElementBlock("li", {
|
|
2469
|
+
key: 0,
|
|
2470
|
+
style: normalizeStyle({ height: `${unref(padTop)}px` }),
|
|
2471
|
+
"aria-hidden": "true"
|
|
2472
|
+
}, null, 4)) : createCommentVNode("", true),
|
|
2473
|
+
(openBlock(true), createElementBlock(Fragment, null, renderList(rows.value, (row) => {
|
|
2474
|
+
return openBlock(), createElementBlock("li", {
|
|
2475
|
+
key: row.index,
|
|
2476
|
+
class: "rk-vlist-row",
|
|
2477
|
+
style: normalizeStyle({ height: `${__props.rowHeight}px` }),
|
|
2478
|
+
"aria-setsize": __props.items.length,
|
|
2479
|
+
"aria-posinset": row.index + 1
|
|
2480
|
+
}, [renderSlot(_ctx.$slots, "default", {
|
|
2481
|
+
item: row.item,
|
|
2482
|
+
index: row.index
|
|
2483
|
+
}, void 0, true)], 12, _hoisted_2$21);
|
|
2484
|
+
}), 128)),
|
|
2485
|
+
unref(padBottom) > 0 ? (openBlock(), createElementBlock("li", {
|
|
2486
|
+
key: 1,
|
|
2487
|
+
style: normalizeStyle({ height: `${unref(padBottom)}px` }),
|
|
2488
|
+
"aria-hidden": "true"
|
|
2489
|
+
}, null, 4)) : createCommentVNode("", true)
|
|
2490
|
+
], 8, _hoisted_1$23)]),
|
|
2491
|
+
_: 3
|
|
2492
|
+
}, 8, [
|
|
2493
|
+
"label",
|
|
2494
|
+
"scrollbar",
|
|
2495
|
+
"onScroll"
|
|
2496
|
+
]);
|
|
2497
|
+
};
|
|
2498
|
+
}
|
|
2499
|
+
}), [["__scopeId", "data-v-936ed40c"]]);
|
|
2500
|
+
//#endregion
|
|
2501
|
+
//#region src/components/AnnounceHost.vue?vue&type=script&setup=true&lang.ts
|
|
2502
|
+
var _hoisted_1$22 = { class: "rk-announcer" };
|
|
2503
|
+
var _hoisted_2$20 = {
|
|
2504
|
+
role: "status",
|
|
2505
|
+
"aria-live": "polite",
|
|
2506
|
+
"aria-atomic": "true"
|
|
2507
|
+
};
|
|
2508
|
+
var _hoisted_3$14 = {
|
|
2509
|
+
role: "alert",
|
|
2510
|
+
"aria-live": "assertive",
|
|
2511
|
+
"aria-atomic": "true"
|
|
2512
|
+
};
|
|
2513
|
+
//#endregion
|
|
2514
|
+
//#region src/components/AnnounceHost.vue
|
|
2515
|
+
var AnnounceHost_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PURE__ */ defineComponent({
|
|
2516
|
+
__name: "AnnounceHost",
|
|
2517
|
+
setup(__props) {
|
|
2518
|
+
const { polite, assertive } = useAnnounce();
|
|
2519
|
+
return (_ctx, _cache) => {
|
|
2520
|
+
return openBlock(), createElementBlock("div", _hoisted_1$22, [createElementVNode("p", _hoisted_2$20, toDisplayString(unref(polite)), 1), createElementVNode("p", _hoisted_3$14, toDisplayString(unref(assertive)), 1)]);
|
|
2521
|
+
};
|
|
2522
|
+
}
|
|
2523
|
+
}), [["__scopeId", "data-v-205d6703"]]);
|
|
2524
|
+
//#endregion
|
|
2525
|
+
//#region src/components/ErrorSummary.vue?vue&type=script&setup=true&lang.ts
|
|
2526
|
+
var _hoisted_1$21 = { class: "rk-errsum-title" };
|
|
2527
|
+
var _hoisted_2$19 = { class: "rk-errsum-list" };
|
|
2528
|
+
var _hoisted_3$13 = ["href", "onClick"];
|
|
2529
|
+
//#endregion
|
|
2530
|
+
//#region src/components/ErrorSummary.vue
|
|
2531
|
+
var ErrorSummary_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PURE__ */ defineComponent({
|
|
2532
|
+
__name: "ErrorSummary",
|
|
2533
|
+
props: {
|
|
2534
|
+
errors: {},
|
|
2535
|
+
title: {},
|
|
2536
|
+
labelFor: { type: Function },
|
|
2537
|
+
fieldId: {
|
|
2538
|
+
type: Function,
|
|
2539
|
+
default: (field) => field
|
|
2540
|
+
},
|
|
2541
|
+
fields: { default: () => void 0 }
|
|
2542
|
+
},
|
|
2543
|
+
setup(__props, { expose: __expose }) {
|
|
2544
|
+
const panel = useTemplateRef("panel");
|
|
2545
|
+
const listed = computed(() => {
|
|
2546
|
+
return (__props.fields ?? Object.keys(__props.errors)).filter((field) => __props.errors[field] !== void 0).map((field) => ({
|
|
2547
|
+
field,
|
|
2548
|
+
message: __props.errors[field],
|
|
2549
|
+
id: __props.fieldId(field)
|
|
2550
|
+
}));
|
|
2551
|
+
});
|
|
2552
|
+
const hasErrors = computed(() => listed.value.length > 0);
|
|
2553
|
+
/** Moves focus into the summary. Call it on every failed submit. */
|
|
2554
|
+
function focus() {
|
|
2555
|
+
focusTarget(panel.value);
|
|
2556
|
+
}
|
|
2557
|
+
function goToField(event, id) {
|
|
2558
|
+
if (focusTarget(id)) event.preventDefault();
|
|
2559
|
+
}
|
|
2560
|
+
watch(hasErrors, async (now) => {
|
|
2561
|
+
if (!now) return;
|
|
2562
|
+
await nextTick();
|
|
2563
|
+
focus();
|
|
2564
|
+
});
|
|
2565
|
+
__expose({ focus });
|
|
2566
|
+
return (_ctx, _cache) => {
|
|
2567
|
+
return hasErrors.value ? (openBlock(), createElementBlock("div", {
|
|
2568
|
+
key: 0,
|
|
2569
|
+
ref_key: "panel",
|
|
2570
|
+
ref: panel,
|
|
2571
|
+
class: "rk-errsum",
|
|
2572
|
+
tabindex: "-1"
|
|
2573
|
+
}, [createElementVNode("p", _hoisted_1$21, toDisplayString(__props.title), 1), createElementVNode("ul", _hoisted_2$19, [(openBlock(true), createElementBlock(Fragment, null, renderList(listed.value, (item) => {
|
|
2574
|
+
return openBlock(), createElementBlock("li", { key: item.field }, [createElementVNode("a", {
|
|
2575
|
+
href: `#${item.id}`,
|
|
2576
|
+
class: "rk-errsum-link",
|
|
2577
|
+
onClick: ($event) => goToField($event, item.id)
|
|
2578
|
+
}, toDisplayString(__props.labelFor(item.field)) + ": " + toDisplayString(item.message), 9, _hoisted_3$13)]);
|
|
2579
|
+
}), 128))])], 512)) : createCommentVNode("", true);
|
|
2580
|
+
};
|
|
2581
|
+
}
|
|
2582
|
+
}), [["__scopeId", "data-v-4a68e342"]]);
|
|
2583
|
+
//#endregion
|
|
2584
|
+
//#region src/utils/direction.ts
|
|
2585
|
+
var RTL = /* @__PURE__ */ new Set([
|
|
2586
|
+
"ar",
|
|
2587
|
+
"arc",
|
|
2588
|
+
"ckb",
|
|
2589
|
+
"dv",
|
|
2590
|
+
"fa",
|
|
2591
|
+
"he",
|
|
2592
|
+
"ks",
|
|
2593
|
+
"ku",
|
|
2594
|
+
"nqo",
|
|
2595
|
+
"ps",
|
|
2596
|
+
"sd",
|
|
2597
|
+
"syr",
|
|
2598
|
+
"ug",
|
|
2599
|
+
"ur",
|
|
2600
|
+
"yi"
|
|
2601
|
+
]);
|
|
2602
|
+
/**
|
|
2603
|
+
* Which way a locale tag is written.
|
|
2604
|
+
*
|
|
2605
|
+
* The kit is built on logical properties and `start`/`end` props all the
|
|
2606
|
+
* way through — `BaseDrawer`'s side, every inset, every margin — and none
|
|
2607
|
+
* of that does anything at all until `dir` is set on the document. So the
|
|
2608
|
+
* direction has to come from somewhere, and a locale tag is the only thing
|
|
2609
|
+
* that knows it.
|
|
2610
|
+
*
|
|
2611
|
+
* Only the language subtag is read, so `ar-EG` and `ar` answer the same.
|
|
2612
|
+
*
|
|
2613
|
+
* @example
|
|
2614
|
+
* ```ts
|
|
2615
|
+
* textDirection('he-IL') // 'rtl'
|
|
2616
|
+
* textDirection('tr') // 'ltr'
|
|
2617
|
+
* ```
|
|
2618
|
+
*/
|
|
2619
|
+
function textDirection(locale) {
|
|
2620
|
+
const parts = locale.toLowerCase().split(/[-_]/);
|
|
2621
|
+
const script = parts[1];
|
|
2622
|
+
if (script === "arab" || script === "hebr" || script === "thaa" || script === "syrc") return "rtl";
|
|
2623
|
+
return RTL.has(parts[0] ?? "") ? "rtl" : "ltr";
|
|
2624
|
+
}
|
|
2625
|
+
//#endregion
|
|
2448
2626
|
//#region src/components/AvatarStack.vue?vue&type=script&setup=true&lang.ts
|
|
2449
2627
|
var _hoisted_1$20 = ["aria-label"];
|
|
2450
2628
|
var _hoisted_2$18 = {
|
|
@@ -2488,7 +2666,7 @@ var AvatarStack_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__
|
|
|
2488
2666
|
}), 128)), rest.value ? (openBlock(), createElementBlock("span", _hoisted_2$18, "+" + toDisplayString(rest.value), 1)) : createCommentVNode("", true)], 10, _hoisted_1$20);
|
|
2489
2667
|
};
|
|
2490
2668
|
}
|
|
2491
|
-
}), [["__scopeId", "data-v-
|
|
2669
|
+
}), [["__scopeId", "data-v-1f87913c"]]);
|
|
2492
2670
|
//#endregion
|
|
2493
2671
|
//#region src/components/BaseCalendar.vue?vue&type=script&setup=true&lang.ts
|
|
2494
2672
|
var _hoisted_1$19 = { class: "rk-cal" };
|
|
@@ -3441,7 +3619,7 @@ var FileDrop_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PUR
|
|
|
3441
3619
|
]);
|
|
3442
3620
|
};
|
|
3443
3621
|
}
|
|
3444
|
-
}), [["__scopeId", "data-v-
|
|
3622
|
+
}), [["__scopeId", "data-v-6e903baf"]]);
|
|
3445
3623
|
//#endregion
|
|
3446
3624
|
//#region src/components/TagsInput.vue?vue&type=script&setup=true&lang.ts
|
|
3447
3625
|
var _hoisted_1$9 = [
|
|
@@ -3698,7 +3876,7 @@ var BasePopover_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__
|
|
|
3698
3876
|
})], 544);
|
|
3699
3877
|
};
|
|
3700
3878
|
}
|
|
3701
|
-
}), [["__scopeId", "data-v-
|
|
3879
|
+
}), [["__scopeId", "data-v-22d8f397"]]);
|
|
3702
3880
|
//#endregion
|
|
3703
3881
|
//#region src/components/TimePicker.vue?vue&type=script&setup=true&lang.ts
|
|
3704
3882
|
var _hoisted_1$7 = [
|
|
@@ -3843,7 +4021,7 @@ var TimePicker_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__P
|
|
|
3843
4021
|
]);
|
|
3844
4022
|
};
|
|
3845
4023
|
}
|
|
3846
|
-
}), [["__scopeId", "data-v-
|
|
4024
|
+
}), [["__scopeId", "data-v-ad58b4f3"]]);
|
|
3847
4025
|
//#endregion
|
|
3848
4026
|
//#region src/components/BaseTimeline.vue?vue&type=script&setup=true&lang.ts
|
|
3849
4027
|
var _hoisted_1$6 = ["aria-label"];
|
|
@@ -3897,7 +4075,7 @@ var BaseTimeline_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @_
|
|
|
3897
4075
|
}), 128))], 8, _hoisted_1$6);
|
|
3898
4076
|
};
|
|
3899
4077
|
}
|
|
3900
|
-
}), [["__scopeId", "data-v-
|
|
4078
|
+
}), [["__scopeId", "data-v-8a452f82"]]);
|
|
3901
4079
|
//#endregion
|
|
3902
4080
|
//#region src/components/BaseDatePicker.vue?vue&type=script&setup=true&lang.ts
|
|
3903
4081
|
var _hoisted_1$5 = [
|
|
@@ -4044,7 +4222,7 @@ var BaseDatePicker_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/*
|
|
|
4044
4222
|
]);
|
|
4045
4223
|
};
|
|
4046
4224
|
}
|
|
4047
|
-
}), [["__scopeId", "data-v-
|
|
4225
|
+
}), [["__scopeId", "data-v-42390973"]]);
|
|
4048
4226
|
//#endregion
|
|
4049
4227
|
//#region src/components/BasePopconfirm.vue?vue&type=script&setup=true&lang.ts
|
|
4050
4228
|
var _hoisted_1$4 = { class: "rk-confirm" };
|
|
@@ -4510,7 +4688,7 @@ var BaseStepper_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__
|
|
|
4510
4688
|
}), 128))], 2)], 8, _hoisted_1);
|
|
4511
4689
|
};
|
|
4512
4690
|
}
|
|
4513
|
-
}), [["__scopeId", "data-v-
|
|
4691
|
+
}), [["__scopeId", "data-v-f7513d9a"]]);
|
|
4514
4692
|
//#endregion
|
|
4515
4693
|
//#region src/i18n/runtime.ts
|
|
4516
4694
|
/**
|
|
@@ -4604,7 +4782,10 @@ function createI18nRuntime(options) {
|
|
|
4604
4782
|
watchEffect(() => {
|
|
4605
4783
|
core.locale.value = activeLocale.value;
|
|
4606
4784
|
setFormatLocale(intlLocale.value);
|
|
4607
|
-
if (typeof document !== "undefined")
|
|
4785
|
+
if (typeof document !== "undefined") {
|
|
4786
|
+
document.documentElement.lang = activeLocale.value;
|
|
4787
|
+
document.documentElement.dir = textDirection(intlLocale.value);
|
|
4788
|
+
}
|
|
4608
4789
|
});
|
|
4609
4790
|
/** Read and write the language preference. */
|
|
4610
4791
|
function useLocalePreference() {
|
|
@@ -4654,8 +4835,8 @@ function createI18nRuntime(options) {
|
|
|
4654
4835
|
*
|
|
4655
4836
|
* The fallback keeps `vitest` and `vite dev` honest, where no define runs.
|
|
4656
4837
|
*/
|
|
4657
|
-
var VERSION = "2.
|
|
4838
|
+
var VERSION = "2.22.0";
|
|
4658
4839
|
//#endregion
|
|
4659
|
-
export { ActivityGrid_default as ActivityGrid, AppError, AvatarStack_default as AvatarStack, BaseAlert_default as BaseAlert, BaseAvatar_default as BaseAvatar, BaseBadge_default as BaseBadge, BaseButton_default as BaseButton, BaseCalendar_default as BaseCalendar, BaseCard_default as BaseCard, BaseCheckbox_default as BaseCheckbox, BaseChip_default as BaseChip, BaseCombobox_default as BaseCombobox, BaseDatePicker_default as BaseDatePicker, BaseInput_default as BaseInput, BaseKbd_default as BaseKbd, BaseLink_default as BaseLink, BaseListbox_default as BaseListbox, BaseMenu_default as BaseMenu, BasePopconfirm_default as BasePopconfirm, BasePopover_default as BasePopover, BaseRadioGroup_default as BaseRadioGroup, BaseRating_default as BaseRating, BaseSelect_default as BaseSelect, BaseSeparator_default as BaseSeparator, BaseSheet_default as BaseSheet, BaseSkeleton_default as BaseSkeleton, BaseSlider_default as BaseSlider, BaseSpinner_default as BaseSpinner, BaseStepper_default as BaseStepper, BaseSwitch_default as BaseSwitch, BaseTable_default as BaseTable, BaseTextarea_default as BaseTextarea, BaseTimeline_default as BaseTimeline, CircularProgress_default as CircularProgress, CodeBlock_default as CodeBlock, ColorPicker_default as ColorPicker, CopyButton_default as CopyButton, DescriptionList_default as DescriptionList, EmptyState_default as EmptyState, ErrorBoundary_default as ErrorBoundary, FileDrop_default as FileDrop, FormField_default as FormField, GoogleButton_default as GoogleButton, LocaleLinks_default as LocaleLinks, MATERIALS, NumberInput_default as NumberInput, PALETTES, PageContainer_default as PageContainer, PageHeader_default as PageHeader, PinInput_default as PinInput, PriceCard_default as PriceCard, ProgressBar_default as ProgressBar, SHEET_ROOT_ID, SectionHeading_default as SectionHeading, SegmentedControl_default as SegmentedControl, SettingsGroup_default as SettingsGroup, SettingsRow_default as SettingsRow, SkeletonList_default as SkeletonList, SliderField_default as SliderField, StatCard_default as StatCard, TabBar_default as TabBar, TagsInput_default as TagsInput, TimePicker_default as TimePicker, ToastHost_default as ToastHost, ToggleGroup_default as ToggleGroup, ToneDot_default as ToneDot, VERSION, addDays, applyMaterial, applyPalette, applyTheme, createI18nRuntime, downloadJson, eachDayOfYear, ensureSheetRoot, formatDate, formatNumber, fromDateKey, isApplePortable, isInstalled, isMaterial, isPaletteName, isThemePreference, lastNDays, leadingBlanks, needsIosInstall, readStoredTheme, registerErrorMapper, relativeDayLabel, safeRedirect, setFormatLocale, setMaterialStorageKey, setPaletteStorageKey, setThemeStorageKey, startOfWeek, tapFeedback, toAppError, toDateKey, toRedirectPath, todayKey, useDebouncedCallback, useDragScroll, useMaterial, useMediaQuery, useOnline, usePalette, useTheme, useToast, useToday, useVisualViewport };
|
|
4840
|
+
export { ActivityGrid_default as ActivityGrid, AnnounceHost_default as AnnounceHost, AppError, AvatarStack_default as AvatarStack, BaseAlert_default as BaseAlert, BaseAvatar_default as BaseAvatar, BaseBadge_default as BaseBadge, BaseButton_default as BaseButton, BaseCalendar_default as BaseCalendar, BaseCard_default as BaseCard, BaseCheckbox_default as BaseCheckbox, BaseChip_default as BaseChip, BaseCombobox_default as BaseCombobox, BaseDatePicker_default as BaseDatePicker, BaseInput_default as BaseInput, BaseKbd_default as BaseKbd, BaseLink_default as BaseLink, BaseListbox_default as BaseListbox, BaseMenu_default as BaseMenu, BasePopconfirm_default as BasePopconfirm, BasePopover_default as BasePopover, BaseRadioGroup_default as BaseRadioGroup, BaseRating_default as BaseRating, BaseSelect_default as BaseSelect, BaseSeparator_default as BaseSeparator, BaseSheet_default as BaseSheet, BaseSkeleton_default as BaseSkeleton, BaseSlider_default as BaseSlider, BaseSpinner_default as BaseSpinner, BaseStepper_default as BaseStepper, BaseSwitch_default as BaseSwitch, BaseTable_default as BaseTable, BaseTextarea_default as BaseTextarea, BaseTimeline_default as BaseTimeline, CircularProgress_default as CircularProgress, CodeBlock_default as CodeBlock, ColorPicker_default as ColorPicker, CopyButton_default as CopyButton, DescriptionList_default as DescriptionList, EmptyState_default as EmptyState, ErrorBoundary_default as ErrorBoundary, ErrorSummary_default as ErrorSummary, FileDrop_default as FileDrop, FormField_default as FormField, GoogleButton_default as GoogleButton, LocaleLinks_default as LocaleLinks, MATERIALS, NumberInput_default as NumberInput, PALETTES, PageContainer_default as PageContainer, PageHeader_default as PageHeader, PinInput_default as PinInput, PriceCard_default as PriceCard, ProgressBar_default as ProgressBar, SHEET_ROOT_ID, ScrollArea_default as ScrollArea, SectionHeading_default as SectionHeading, SegmentedControl_default as SegmentedControl, SettingsGroup_default as SettingsGroup, SettingsRow_default as SettingsRow, SkeletonList_default as SkeletonList, SliderField_default as SliderField, StatCard_default as StatCard, TabBar_default as TabBar, TagsInput_default as TagsInput, TimePicker_default as TimePicker, ToastHost_default as ToastHost, ToggleGroup_default as ToggleGroup, ToneDot_default as ToneDot, VERSION, VirtualList_default as VirtualList, addDays, announce, applyMaterial, applyPalette, applyTheme, createI18nRuntime, downloadJson, eachDayOfYear, ensureSheetRoot, formatDate, formatNumber, fromDateKey, isApplePortable, isInstalled, isMaterial, isPaletteName, isThemePreference, lastNDays, leadingBlanks, needsIosInstall, readStoredTheme, registerErrorMapper, relativeDayLabel, safeRedirect, setFormatLocale, setMaterialStorageKey, setPaletteStorageKey, setThemeStorageKey, startOfWeek, tapFeedback, textDirection, toAppError, toDateKey, toRedirectPath, todayKey, useAnnounce, useDebouncedCallback, useDragScroll, useMaterial, useMediaQuery, useOnline, usePalette, useTheme, useToast, useToday, useVisualViewport };
|
|
4660
4841
|
|
|
4661
4842
|
//# sourceMappingURL=index.js.map
|