rei-kit 2.21.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/composables/use-announce.d.ts +65 -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 +21 -0
- package/dist/index.js +323 -422
- package/dist/index.js.map +1 -1
- package/dist/motion.js +1 -1
- package/dist/motion.js.map +1 -1
- package/dist/styles.css +456 -389
- 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,94 +271,18 @@ 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
|
};
|
|
361
|
-
var _hoisted_4$
|
|
285
|
+
var _hoisted_4$20 = {
|
|
362
286
|
key: 2,
|
|
363
287
|
viewBox: "0 0 20 20",
|
|
364
288
|
class: "rk-avatar-figure",
|
|
@@ -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({
|
|
@@ -644,13 +568,13 @@ function useVirtualWindow({ count, rowHeight, threshold }) {
|
|
|
644
568
|
}
|
|
645
569
|
//#endregion
|
|
646
570
|
//#region src/components/BaseCombobox.vue?vue&type=script&setup=true&lang.ts
|
|
647
|
-
var _hoisted_1$
|
|
648
|
-
var _hoisted_2$
|
|
571
|
+
var _hoisted_1$46 = ["for"];
|
|
572
|
+
var _hoisted_2$40 = [
|
|
649
573
|
"aria-label",
|
|
650
574
|
"disabled",
|
|
651
575
|
"onClick"
|
|
652
576
|
];
|
|
653
|
-
var _hoisted_3$
|
|
577
|
+
var _hoisted_3$27 = [
|
|
654
578
|
"id",
|
|
655
579
|
"placeholder",
|
|
656
580
|
"disabled",
|
|
@@ -659,13 +583,13 @@ var _hoisted_3$26 = [
|
|
|
659
583
|
"aria-invalid",
|
|
660
584
|
"aria-describedby"
|
|
661
585
|
];
|
|
662
|
-
var _hoisted_4$
|
|
663
|
-
var _hoisted_5$
|
|
586
|
+
var _hoisted_4$19 = ["disabled"];
|
|
587
|
+
var _hoisted_5$11 = [
|
|
664
588
|
"aria-label",
|
|
665
589
|
"aria-multiselectable",
|
|
666
590
|
"aria-busy"
|
|
667
591
|
];
|
|
668
|
-
var _hoisted_6$
|
|
592
|
+
var _hoisted_6$7 = [
|
|
669
593
|
"id",
|
|
670
594
|
"aria-selected",
|
|
671
595
|
"aria-setsize",
|
|
@@ -881,7 +805,7 @@ var BaseCombobox_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @_
|
|
|
881
805
|
createElementVNode("label", {
|
|
882
806
|
for: unref(id),
|
|
883
807
|
class: "rk-combo-label"
|
|
884
|
-
}, toDisplayString(__props.label), 9, _hoisted_1$
|
|
808
|
+
}, toDisplayString(__props.label), 9, _hoisted_1$46),
|
|
885
809
|
createElementVNode("div", { class: normalizeClass(["rk-combo-field", multiple.value ? "is-multiple control" : ""]) }, [
|
|
886
810
|
(openBlock(true), createElementBlock(Fragment, null, renderList(multiple.value ? chosenOptions.value : [], (option) => {
|
|
887
811
|
return openBlock(), createElementBlock("span", {
|
|
@@ -894,7 +818,7 @@ var BaseCombobox_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @_
|
|
|
894
818
|
"aria-label": __props.removeLabel(option.label),
|
|
895
819
|
disabled: __props.disabled,
|
|
896
820
|
onClick: ($event) => remove(option.value)
|
|
897
|
-
}, " × ", 8, _hoisted_2$
|
|
821
|
+
}, " × ", 8, _hoisted_2$40)) : createCommentVNode("", true)]);
|
|
898
822
|
}), 128)),
|
|
899
823
|
withDirectives(createElementVNode("input", {
|
|
900
824
|
id: unref(id),
|
|
@@ -913,7 +837,7 @@ var BaseCombobox_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @_
|
|
|
913
837
|
"aria-describedby": describedBy.value,
|
|
914
838
|
onKeydown,
|
|
915
839
|
onFocus: _cache[1] || (_cache[1] = ($event) => open.value = true)
|
|
916
|
-
}, null, 42, _hoisted_3$
|
|
840
|
+
}, null, 42, _hoisted_3$27), [[vModelText, text.value]]),
|
|
917
841
|
createElementVNode("button", {
|
|
918
842
|
type: "button",
|
|
919
843
|
class: "rk-combo-toggle",
|
|
@@ -921,7 +845,7 @@ var BaseCombobox_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @_
|
|
|
921
845
|
"aria-hidden": "true",
|
|
922
846
|
disabled: __props.disabled,
|
|
923
847
|
onClick: _cache[2] || (_cache[2] = ($event) => open.value = !open.value)
|
|
924
|
-
}, " ▾ ", 8, _hoisted_4$
|
|
848
|
+
}, " ▾ ", 8, _hoisted_4$19)
|
|
925
849
|
], 2),
|
|
926
850
|
withDirectives(createElementVNode("ul", {
|
|
927
851
|
id: listId,
|
|
@@ -954,7 +878,7 @@ var BaseCombobox_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @_
|
|
|
954
878
|
"aria-posinset": row.index + 1,
|
|
955
879
|
onPointerdown: withModifiers(($event) => choose(row.option), ["prevent"]),
|
|
956
880
|
onPointermove: ($event) => highlighted.value = row.index
|
|
957
|
-
}, toDisplayString(row.option.label), 47, _hoisted_6$
|
|
881
|
+
}, toDisplayString(row.option.label), 47, _hoisted_6$7);
|
|
958
882
|
}), 128)),
|
|
959
883
|
unref(padBottom) > 0 ? (openBlock(), createElementBlock("li", {
|
|
960
884
|
key: 1,
|
|
@@ -968,7 +892,7 @@ var BaseCombobox_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @_
|
|
|
968
892
|
height: "0.75rem"
|
|
969
893
|
});
|
|
970
894
|
}), 64))])])) : matches.value.length === 0 ? (openBlock(), createElementBlock("li", _hoisted_10$3, toDisplayString(__props.emptyLabel), 1)) : createCommentVNode("", true)
|
|
971
|
-
], 40, _hoisted_5$
|
|
895
|
+
], 40, _hoisted_5$11), [[vShow, open.value]]),
|
|
972
896
|
__props.error ? (openBlock(), createElementBlock("p", {
|
|
973
897
|
key: 0,
|
|
974
898
|
id: errorId,
|
|
@@ -981,16 +905,16 @@ var BaseCombobox_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @_
|
|
|
981
905
|
], 512);
|
|
982
906
|
};
|
|
983
907
|
}
|
|
984
|
-
}), [["__scopeId", "data-v-
|
|
908
|
+
}), [["__scopeId", "data-v-0ae3b425"]]);
|
|
985
909
|
//#endregion
|
|
986
910
|
//#region src/components/BaseRadioGroup.vue?vue&type=script&setup=true&lang.ts
|
|
987
|
-
var _hoisted_1$
|
|
988
|
-
var _hoisted_2$
|
|
911
|
+
var _hoisted_1$45 = ["aria-describedby"];
|
|
912
|
+
var _hoisted_2$39 = [
|
|
989
913
|
"name",
|
|
990
914
|
"value",
|
|
991
915
|
"disabled"
|
|
992
916
|
];
|
|
993
|
-
var _hoisted_3$
|
|
917
|
+
var _hoisted_3$26 = { class: "text-ink text-sm" };
|
|
994
918
|
//#endregion
|
|
995
919
|
//#region src/components/BaseRadioGroup.vue
|
|
996
920
|
var BaseRadioGroup_default = /* @__PURE__ */ defineComponent({
|
|
@@ -1034,7 +958,7 @@ var BaseRadioGroup_default = /* @__PURE__ */ defineComponent({
|
|
|
1034
958
|
value: option.value,
|
|
1035
959
|
disabled: option.disabled,
|
|
1036
960
|
class: "accent-primary focus-visible:outline-primary size-4 shrink-0 focus-visible:outline-2 focus-visible:outline-offset-2"
|
|
1037
|
-
}, null, 8, _hoisted_2$
|
|
961
|
+
}, null, 8, _hoisted_2$39), [[vModelRadio, unref(model)]]), createElementVNode("span", _hoisted_3$26, toDisplayString(option.label), 1)], 2);
|
|
1038
962
|
}), 128)),
|
|
1039
963
|
__props.error ? (openBlock(), createElementBlock("p", {
|
|
1040
964
|
key: 0,
|
|
@@ -1045,24 +969,24 @@ var BaseRadioGroup_default = /* @__PURE__ */ defineComponent({
|
|
|
1045
969
|
id: hintId,
|
|
1046
970
|
class: "text-ink-soft text-xs"
|
|
1047
971
|
}, toDisplayString(__props.hint), 1)) : createCommentVNode("", true)
|
|
1048
|
-
], 8, _hoisted_1$
|
|
972
|
+
], 8, _hoisted_1$45);
|
|
1049
973
|
};
|
|
1050
974
|
}
|
|
1051
975
|
});
|
|
1052
976
|
//#endregion
|
|
1053
977
|
//#region src/components/BaseSelect.vue?vue&type=script&setup=true&lang.ts
|
|
1054
|
-
var _hoisted_1$
|
|
1055
|
-
var _hoisted_2$
|
|
978
|
+
var _hoisted_1$44 = { class: "relative" };
|
|
979
|
+
var _hoisted_2$38 = [
|
|
1056
980
|
"id",
|
|
1057
981
|
"aria-invalid",
|
|
1058
982
|
"aria-describedby"
|
|
1059
983
|
];
|
|
1060
|
-
var _hoisted_3$
|
|
984
|
+
var _hoisted_3$25 = {
|
|
1061
985
|
key: 0,
|
|
1062
986
|
value: void 0,
|
|
1063
987
|
disabled: ""
|
|
1064
988
|
};
|
|
1065
|
-
var _hoisted_4$
|
|
989
|
+
var _hoisted_4$18 = ["value", "disabled"];
|
|
1066
990
|
//#endregion
|
|
1067
991
|
//#region src/components/BaseSelect.vue
|
|
1068
992
|
var BaseSelect_default = /* @__PURE__ */ defineComponent({
|
|
@@ -1098,7 +1022,7 @@ var BaseSelect_default = /* @__PURE__ */ defineComponent({
|
|
|
1098
1022
|
"label-hidden": __props.labelHidden,
|
|
1099
1023
|
size: __props.size
|
|
1100
1024
|
}, {
|
|
1101
|
-
default: withCtx(({ id, describedBy, invalid }) => [createElementVNode("div", _hoisted_1$
|
|
1025
|
+
default: withCtx(({ id, describedBy, invalid }) => [createElementVNode("div", _hoisted_1$44, [withDirectives(createElementVNode("select", {
|
|
1102
1026
|
id,
|
|
1103
1027
|
"onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => model.value = $event),
|
|
1104
1028
|
"aria-invalid": invalid,
|
|
@@ -1108,13 +1032,13 @@ var BaseSelect_default = /* @__PURE__ */ defineComponent({
|
|
|
1108
1032
|
__props.variant === "unstyled" ? "" : SIZE_CLASS[__props.size],
|
|
1109
1033
|
__props.variant !== "unstyled" && invalid ? "border-negative" : ""
|
|
1110
1034
|
]])
|
|
1111
|
-
}, [__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) => {
|
|
1112
1036
|
return openBlock(), createElementBlock("option", {
|
|
1113
1037
|
key: option.value,
|
|
1114
1038
|
value: option.value,
|
|
1115
1039
|
disabled: option.disabled
|
|
1116
|
-
}, toDisplayString(option.label), 9, _hoisted_4$
|
|
1117
|
-
}), 128))], 10, _hoisted_2$
|
|
1040
|
+
}, toDisplayString(option.label), 9, _hoisted_4$18);
|
|
1041
|
+
}), 128))], 10, _hoisted_2$38), [[vModelSelect, model.value]]), createVNode(unref(ChevronDown), {
|
|
1118
1042
|
class: "text-ink-soft pointer-events-none absolute top-1/2 right-3 size-4 -translate-y-1/2",
|
|
1119
1043
|
"aria-hidden": "true"
|
|
1120
1044
|
})])]),
|
|
@@ -1131,11 +1055,11 @@ var BaseSelect_default = /* @__PURE__ */ defineComponent({
|
|
|
1131
1055
|
});
|
|
1132
1056
|
//#endregion
|
|
1133
1057
|
//#region src/components/BaseSlider.vue?vue&type=script&setup=true&lang.ts
|
|
1134
|
-
var _hoisted_1$
|
|
1135
|
-
var _hoisted_2$
|
|
1136
|
-
var _hoisted_3$
|
|
1137
|
-
var _hoisted_4$
|
|
1138
|
-
var _hoisted_5$
|
|
1058
|
+
var _hoisted_1$43 = { class: "rk-slider" };
|
|
1059
|
+
var _hoisted_2$37 = { class: "rk-slider-head" };
|
|
1060
|
+
var _hoisted_3$24 = ["for"];
|
|
1061
|
+
var _hoisted_4$17 = ["for"];
|
|
1062
|
+
var _hoisted_5$10 = [
|
|
1139
1063
|
"id",
|
|
1140
1064
|
"min",
|
|
1141
1065
|
"max",
|
|
@@ -1179,15 +1103,15 @@ var BaseSlider_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__P
|
|
|
1179
1103
|
return span <= 0 ? 0 : (model.value - __props.min) / span * 100;
|
|
1180
1104
|
});
|
|
1181
1105
|
return (_ctx, _cache) => {
|
|
1182
|
-
return openBlock(), createElementBlock("div", _hoisted_1$
|
|
1183
|
-
createElementVNode("div", _hoisted_2$
|
|
1106
|
+
return openBlock(), createElementBlock("div", _hoisted_1$43, [
|
|
1107
|
+
createElementVNode("div", _hoisted_2$37, [createElementVNode("label", {
|
|
1184
1108
|
for: unref(id),
|
|
1185
1109
|
class: "rk-slider-label"
|
|
1186
|
-
}, toDisplayString(__props.label), 9, _hoisted_3$
|
|
1110
|
+
}, toDisplayString(__props.label), 9, _hoisted_3$24), __props.showValue ? (openBlock(), createElementBlock("output", {
|
|
1187
1111
|
key: 0,
|
|
1188
1112
|
for: unref(id),
|
|
1189
1113
|
class: "rk-slider-value"
|
|
1190
|
-
}, toDisplayString(text.value), 9, _hoisted_4$
|
|
1114
|
+
}, toDisplayString(text.value), 9, _hoisted_4$17)) : createCommentVNode("", true)]),
|
|
1191
1115
|
withDirectives(createElementVNode("input", {
|
|
1192
1116
|
id: unref(id),
|
|
1193
1117
|
"onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => model.value = $event),
|
|
@@ -1200,7 +1124,7 @@ var BaseSlider_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__P
|
|
|
1200
1124
|
"aria-valuetext": text.value,
|
|
1201
1125
|
"aria-describedby": __props.hint ? hintId : void 0,
|
|
1202
1126
|
style: normalizeStyle({ "--rk-slider-filled": `${filled.value}%` })
|
|
1203
|
-
}, null, 12, _hoisted_5$
|
|
1127
|
+
}, null, 12, _hoisted_5$10), [[
|
|
1204
1128
|
vModelText,
|
|
1205
1129
|
model.value,
|
|
1206
1130
|
void 0,
|
|
@@ -1217,8 +1141,8 @@ var BaseSlider_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__P
|
|
|
1217
1141
|
}), [["__scopeId", "data-v-7fa2769b"]]);
|
|
1218
1142
|
//#endregion
|
|
1219
1143
|
//#region src/components/NumberInput.vue?vue&type=script&setup=true&lang.ts
|
|
1220
|
-
var _hoisted_1$
|
|
1221
|
-
var _hoisted_2$
|
|
1144
|
+
var _hoisted_1$42 = ["aria-label", "disabled"];
|
|
1145
|
+
var _hoisted_2$36 = [
|
|
1222
1146
|
"id",
|
|
1223
1147
|
"value",
|
|
1224
1148
|
"aria-valuenow",
|
|
@@ -1228,7 +1152,7 @@ var _hoisted_2$35 = [
|
|
|
1228
1152
|
"aria-describedby",
|
|
1229
1153
|
"disabled"
|
|
1230
1154
|
];
|
|
1231
|
-
var _hoisted_3$
|
|
1155
|
+
var _hoisted_3$23 = ["aria-label", "disabled"];
|
|
1232
1156
|
//#endregion
|
|
1233
1157
|
//#region src/components/NumberInput.vue
|
|
1234
1158
|
var NumberInput_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PURE__ */ defineComponent({
|
|
@@ -1331,7 +1255,7 @@ var NumberInput_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__
|
|
|
1331
1255
|
}, [createVNode(unref(Minus), {
|
|
1332
1256
|
class: "size-4",
|
|
1333
1257
|
"aria-hidden": "true"
|
|
1334
|
-
})], 8, _hoisted_1$
|
|
1258
|
+
})], 8, _hoisted_1$42),
|
|
1335
1259
|
createElementVNode("input", {
|
|
1336
1260
|
id,
|
|
1337
1261
|
value: draft.value,
|
|
@@ -1349,7 +1273,7 @@ var NumberInput_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__
|
|
|
1349
1273
|
onInput,
|
|
1350
1274
|
onBlur: commit,
|
|
1351
1275
|
onKeydown
|
|
1352
|
-
}, null, 40, _hoisted_2$
|
|
1276
|
+
}, null, 40, _hoisted_2$36),
|
|
1353
1277
|
createElementVNode("button", {
|
|
1354
1278
|
type: "button",
|
|
1355
1279
|
class: "rk-number-step focus-ring",
|
|
@@ -1360,7 +1284,7 @@ var NumberInput_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__
|
|
|
1360
1284
|
}, [createVNode(unref(Plus), {
|
|
1361
1285
|
class: "size-4",
|
|
1362
1286
|
"aria-hidden": "true"
|
|
1363
|
-
})], 8, _hoisted_3$
|
|
1287
|
+
})], 8, _hoisted_3$23)
|
|
1364
1288
|
], 2)]),
|
|
1365
1289
|
_: 1
|
|
1366
1290
|
}, 8, [
|
|
@@ -1375,7 +1299,7 @@ var NumberInput_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__
|
|
|
1375
1299
|
}), [["__scopeId", "data-v-082bd3d7"]]);
|
|
1376
1300
|
//#endregion
|
|
1377
1301
|
//#region src/components/SliderField.vue?vue&type=script&setup=true&lang.ts
|
|
1378
|
-
var _hoisted_1$
|
|
1302
|
+
var _hoisted_1$41 = { class: "rk-slider-field" };
|
|
1379
1303
|
//#endregion
|
|
1380
1304
|
//#region src/components/SliderField.vue
|
|
1381
1305
|
var SliderField_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PURE__ */ defineComponent({
|
|
@@ -1416,7 +1340,7 @@ var SliderField_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__
|
|
|
1416
1340
|
}
|
|
1417
1341
|
});
|
|
1418
1342
|
return (_ctx, _cache) => {
|
|
1419
|
-
return openBlock(), createElementBlock("div", _hoisted_1$
|
|
1343
|
+
return openBlock(), createElementBlock("div", _hoisted_1$41, [createVNode(BaseSlider_default, {
|
|
1420
1344
|
modelValue: model.value,
|
|
1421
1345
|
"onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => model.value = $event),
|
|
1422
1346
|
label: __props.label,
|
|
@@ -1464,11 +1388,11 @@ var SliderField_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__
|
|
|
1464
1388
|
}), [["__scopeId", "data-v-6ec3163a"]]);
|
|
1465
1389
|
//#endregion
|
|
1466
1390
|
//#region src/components/BaseSpinner.vue?vue&type=script&setup=true&lang.ts
|
|
1467
|
-
var _hoisted_1$
|
|
1391
|
+
var _hoisted_1$40 = {
|
|
1468
1392
|
class: "rk-spin-wrap",
|
|
1469
1393
|
role: "status"
|
|
1470
1394
|
};
|
|
1471
|
-
var _hoisted_2$
|
|
1395
|
+
var _hoisted_2$35 = { class: "rk-spin-label" };
|
|
1472
1396
|
//#endregion
|
|
1473
1397
|
//#region src/components/BaseSpinner.vue
|
|
1474
1398
|
var BaseSpinner_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PURE__ */ defineComponent({
|
|
@@ -1496,26 +1420,26 @@ var BaseSpinner_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__
|
|
|
1496
1420
|
lg: "2.5rem"
|
|
1497
1421
|
};
|
|
1498
1422
|
return (_ctx, _cache) => {
|
|
1499
|
-
return openBlock(), createElementBlock("span", _hoisted_1$
|
|
1423
|
+
return openBlock(), createElementBlock("span", _hoisted_1$40, [createElementVNode("span", {
|
|
1500
1424
|
class: "rk-spin",
|
|
1501
1425
|
style: normalizeStyle({
|
|
1502
1426
|
width: SIZES[__props.size],
|
|
1503
1427
|
height: SIZES[__props.size]
|
|
1504
1428
|
}),
|
|
1505
1429
|
"aria-hidden": "true"
|
|
1506
|
-
}, null, 4), createElementVNode("span", _hoisted_2$
|
|
1430
|
+
}, null, 4), createElementVNode("span", _hoisted_2$35, toDisplayString(__props.label), 1)]);
|
|
1507
1431
|
};
|
|
1508
1432
|
}
|
|
1509
1433
|
}), [["__scopeId", "data-v-842da62c"]]);
|
|
1510
1434
|
//#endregion
|
|
1511
1435
|
//#region src/components/BaseSwitch.vue?vue&type=script&setup=true&lang.ts
|
|
1512
|
-
var _hoisted_1$
|
|
1513
|
-
var _hoisted_2$
|
|
1436
|
+
var _hoisted_1$39 = { class: "flex items-center justify-between gap-4" };
|
|
1437
|
+
var _hoisted_2$34 = {
|
|
1514
1438
|
key: 0,
|
|
1515
1439
|
class: "min-w-0"
|
|
1516
1440
|
};
|
|
1517
|
-
var _hoisted_3$
|
|
1518
|
-
var _hoisted_4$
|
|
1441
|
+
var _hoisted_3$22 = ["id"];
|
|
1442
|
+
var _hoisted_4$16 = [
|
|
1519
1443
|
"aria-checked",
|
|
1520
1444
|
"aria-labelledby",
|
|
1521
1445
|
"aria-label",
|
|
@@ -1554,10 +1478,10 @@ var BaseSwitch_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__P
|
|
|
1554
1478
|
if (!__props.disabled) model.value = !model.value;
|
|
1555
1479
|
}
|
|
1556
1480
|
return (_ctx, _cache) => {
|
|
1557
|
-
return openBlock(), createElementBlock("div", _hoisted_1$
|
|
1481
|
+
return openBlock(), createElementBlock("div", _hoisted_1$39, [!__props.labelHidden ? (openBlock(), createElementBlock("span", _hoisted_2$34, [createElementVNode("span", {
|
|
1558
1482
|
id: unref(id),
|
|
1559
1483
|
class: "text-ink block text-sm"
|
|
1560
|
-
}, toDisplayString(__props.label), 9, _hoisted_3$
|
|
1484
|
+
}, toDisplayString(__props.label), 9, _hoisted_3$22), __props.hint ? (openBlock(), createElementBlock("span", {
|
|
1561
1485
|
key: 0,
|
|
1562
1486
|
id: hintId,
|
|
1563
1487
|
class: "text-ink-soft mt-0.5 block text-xs"
|
|
@@ -1574,17 +1498,16 @@ var BaseSwitch_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__P
|
|
|
1574
1498
|
}, [..._cache[0] || (_cache[0] = [createElementVNode("span", {
|
|
1575
1499
|
class: "rk-switch-knob",
|
|
1576
1500
|
"aria-hidden": "true"
|
|
1577
|
-
}, null, -1)])], 10, _hoisted_4$
|
|
1501
|
+
}, null, -1)])], 10, _hoisted_4$16)]);
|
|
1578
1502
|
};
|
|
1579
1503
|
}
|
|
1580
|
-
}), [["__scopeId", "data-v-
|
|
1504
|
+
}), [["__scopeId", "data-v-d90e1aa6"]]);
|
|
1581
1505
|
//#endregion
|
|
1582
1506
|
//#region src/components/BaseTable.vue?vue&type=script&setup=true&lang.ts
|
|
1583
|
-
var _hoisted_1$
|
|
1584
|
-
var _hoisted_2$
|
|
1585
|
-
var _hoisted_3$
|
|
1586
|
-
var _hoisted_4$
|
|
1587
|
-
var _hoisted_5$11 = ["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"];
|
|
1588
1511
|
//#endregion
|
|
1589
1512
|
//#region src/components/BaseTable.vue
|
|
1590
1513
|
var BaseTable_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PURE__ */ defineComponent({
|
|
@@ -1602,41 +1525,43 @@ var BaseTable_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PU
|
|
|
1602
1525
|
setup(__props) {
|
|
1603
1526
|
const keyFor = (row, index) => __props.rowKey ? String(row[__props.rowKey]) : index;
|
|
1604
1527
|
return (_ctx, _cache) => {
|
|
1605
|
-
return openBlock(),
|
|
1606
|
-
|
|
1607
|
-
|
|
1608
|
-
|
|
1609
|
-
|
|
1610
|
-
|
|
1611
|
-
|
|
1612
|
-
|
|
1613
|
-
|
|
1614
|
-
key: column.key,
|
|
1615
|
-
scope: "col",
|
|
1616
|
-
class: normalizeClass([column.align && `is-${column.align}`, column.nowrap && "is-nowrap"])
|
|
1617
|
-
}, toDisplayString(column.label), 3);
|
|
1618
|
-
}), 128))])]),
|
|
1619
|
-
__props.rows.length > 0 ? (openBlock(), createElementBlock("tbody", _hoisted_3$20, [(openBlock(true), createElementBlock(Fragment, null, renderList(__props.rows, (row, index) => {
|
|
1620
|
-
return openBlock(), createElementBlock("tr", { key: keyFor(row, index) }, [(openBlock(true), createElementBlock(Fragment, null, renderList(__props.columns, (column) => {
|
|
1621
|
-
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", {
|
|
1622
1537
|
key: column.key,
|
|
1538
|
+
scope: "col",
|
|
1623
1539
|
class: normalizeClass([column.align && `is-${column.align}`, column.nowrap && "is-nowrap"])
|
|
1624
|
-
},
|
|
1625
|
-
|
|
1626
|
-
|
|
1627
|
-
|
|
1628
|
-
|
|
1629
|
-
|
|
1630
|
-
|
|
1631
|
-
|
|
1632
|
-
|
|
1633
|
-
|
|
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"]);
|
|
1634
1559
|
};
|
|
1635
1560
|
}
|
|
1636
|
-
}), [["__scopeId", "data-v-
|
|
1561
|
+
}), [["__scopeId", "data-v-cc1197ef"]]);
|
|
1637
1562
|
//#endregion
|
|
1638
1563
|
//#region src/components/BaseTextarea.vue?vue&type=script&setup=true&lang.ts
|
|
1639
|
-
var _hoisted_1$
|
|
1564
|
+
var _hoisted_1$37 = [
|
|
1640
1565
|
"id",
|
|
1641
1566
|
"rows",
|
|
1642
1567
|
"aria-invalid",
|
|
@@ -1682,7 +1607,7 @@ var BaseTextarea_default = /* @__PURE__ */ defineComponent({
|
|
|
1682
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",
|
|
1683
1608
|
"text-base",
|
|
1684
1609
|
__props.variant !== "unstyled" && invalid ? "border-negative" : ""
|
|
1685
|
-
] }), null, 16, _hoisted_1$
|
|
1610
|
+
] }), null, 16, _hoisted_1$37), [[vModelText, unref(model)]])]),
|
|
1686
1611
|
_: 1
|
|
1687
1612
|
}, 8, [
|
|
1688
1613
|
"label",
|
|
@@ -1696,17 +1621,17 @@ var BaseTextarea_default = /* @__PURE__ */ defineComponent({
|
|
|
1696
1621
|
});
|
|
1697
1622
|
//#endregion
|
|
1698
1623
|
//#region src/components/EmptyState.vue?vue&type=script&setup=true&lang.ts
|
|
1699
|
-
var _hoisted_1$
|
|
1700
|
-
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 = {
|
|
1701
1626
|
key: 0,
|
|
1702
1627
|
class: "bg-muted text-primary rounded-card flex size-12 items-center justify-center"
|
|
1703
1628
|
};
|
|
1704
|
-
var _hoisted_3$
|
|
1705
|
-
var _hoisted_4$
|
|
1629
|
+
var _hoisted_3$20 = { class: "text-ink text-base font-semibold" };
|
|
1630
|
+
var _hoisted_4$14 = {
|
|
1706
1631
|
key: 1,
|
|
1707
1632
|
class: "text-ink-soft max-w-[36ch] text-sm"
|
|
1708
1633
|
};
|
|
1709
|
-
var _hoisted_5$
|
|
1634
|
+
var _hoisted_5$9 = {
|
|
1710
1635
|
key: 2,
|
|
1711
1636
|
class: "mt-2 flex w-full flex-col gap-2"
|
|
1712
1637
|
};
|
|
@@ -1728,11 +1653,11 @@ var EmptyState_default = /* @__PURE__ */ defineComponent({
|
|
|
1728
1653
|
* goes — the button that creates the first one.
|
|
1729
1654
|
*/
|
|
1730
1655
|
return (_ctx, _cache) => {
|
|
1731
|
-
return openBlock(), createElementBlock("div", _hoisted_1$
|
|
1732
|
-
_ctx.$slots.icon ? (openBlock(), createElementBlock("div", _hoisted_2$
|
|
1733
|
-
createElementVNode("h3", _hoisted_3$
|
|
1734
|
-
__props.description ? (openBlock(), createElementBlock("p", _hoisted_4$
|
|
1735
|
-
_ctx.$slots.action ? (openBlock(), createElementBlock("div", _hoisted_5$
|
|
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),
|
|
1659
|
+
__props.description ? (openBlock(), createElementBlock("p", _hoisted_4$14, toDisplayString(__props.description), 1)) : createCommentVNode("", true),
|
|
1660
|
+
_ctx.$slots.action ? (openBlock(), createElementBlock("div", _hoisted_5$9, [renderSlot(_ctx.$slots, "action")])) : createCommentVNode("", true)
|
|
1736
1661
|
]);
|
|
1737
1662
|
};
|
|
1738
1663
|
}
|
|
@@ -1799,11 +1724,11 @@ var PageContainer_default = /* @__PURE__ */ defineComponent({
|
|
|
1799
1724
|
});
|
|
1800
1725
|
//#endregion
|
|
1801
1726
|
//#region src/components/PageHeader.vue?vue&type=script&setup=true&lang.ts
|
|
1802
|
-
var _hoisted_1$
|
|
1803
|
-
var _hoisted_2$
|
|
1804
|
-
var _hoisted_3$
|
|
1805
|
-
var _hoisted_4$
|
|
1806
|
-
var _hoisted_5$
|
|
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" };
|
|
1730
|
+
var _hoisted_4$13 = { class: "truncate" };
|
|
1731
|
+
var _hoisted_5$8 = { class: "justify-self-end" };
|
|
1807
1732
|
//#endregion
|
|
1808
1733
|
//#region src/components/PageHeader.vue
|
|
1809
1734
|
var PageHeader_default = /* @__PURE__ */ defineComponent({
|
|
@@ -1820,17 +1745,17 @@ var PageHeader_default = /* @__PURE__ */ defineComponent({
|
|
|
1820
1745
|
* each other.
|
|
1821
1746
|
*/
|
|
1822
1747
|
return (_ctx, _cache) => {
|
|
1823
|
-
return openBlock(), createElementBlock("header", _hoisted_1$
|
|
1824
|
-
createElementVNode("div", _hoisted_2$
|
|
1825
|
-
createElementVNode("h1", _hoisted_3$
|
|
1826
|
-
createElementVNode("div", _hoisted_5$
|
|
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)])]),
|
|
1751
|
+
createElementVNode("div", _hoisted_5$8, [renderSlot(_ctx.$slots, "right")])
|
|
1827
1752
|
]);
|
|
1828
1753
|
};
|
|
1829
1754
|
}
|
|
1830
1755
|
});
|
|
1831
1756
|
//#endregion
|
|
1832
1757
|
//#region src/components/ProgressBar.vue?vue&type=script&setup=true&lang.ts
|
|
1833
|
-
var _hoisted_1$
|
|
1758
|
+
var _hoisted_1$34 = ["aria-valuenow", "aria-label"];
|
|
1834
1759
|
//#endregion
|
|
1835
1760
|
//#region src/components/ProgressBar.vue
|
|
1836
1761
|
var ProgressBar_default = /* @__PURE__ */ defineComponent({
|
|
@@ -1862,24 +1787,24 @@ var ProgressBar_default = /* @__PURE__ */ defineComponent({
|
|
|
1862
1787
|
}, [createElementVNode("div", {
|
|
1863
1788
|
class: "bg-primary h-full rounded-full transition-[width] duration-700 ease-out",
|
|
1864
1789
|
style: normalizeStyle({ width: `${portion.value}%` })
|
|
1865
|
-
}, null, 4)], 10, _hoisted_1$
|
|
1790
|
+
}, null, 4)], 10, _hoisted_1$34);
|
|
1866
1791
|
};
|
|
1867
1792
|
}
|
|
1868
1793
|
});
|
|
1869
1794
|
//#endregion
|
|
1870
1795
|
//#region src/components/PriceCard.vue?vue&type=script&setup=true&lang.ts
|
|
1871
|
-
var _hoisted_1$
|
|
1796
|
+
var _hoisted_1$33 = {
|
|
1872
1797
|
key: 0,
|
|
1873
1798
|
class: "bg-primary rounded-cell text-on-primary absolute -top-3 left-7 px-3 py-1 text-[0.7rem] font-semibold"
|
|
1874
1799
|
};
|
|
1875
|
-
var _hoisted_2$
|
|
1876
|
-
var _hoisted_3$
|
|
1877
|
-
var _hoisted_4$
|
|
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" };
|
|
1802
|
+
var _hoisted_4$12 = {
|
|
1878
1803
|
key: 1,
|
|
1879
1804
|
class: "text-ink-soft mt-1.5 text-sm leading-relaxed"
|
|
1880
1805
|
};
|
|
1881
|
-
var _hoisted_5$
|
|
1882
|
-
var _hoisted_6$
|
|
1806
|
+
var _hoisted_5$7 = { class: "mt-6 flex items-baseline gap-1.5" };
|
|
1807
|
+
var _hoisted_6$6 = { class: "text-ink text-3xl font-semibold tracking-tight tabular-nums" };
|
|
1883
1808
|
var _hoisted_7$3 = {
|
|
1884
1809
|
key: 0,
|
|
1885
1810
|
class: "text-ink-soft text-sm"
|
|
@@ -1943,17 +1868,17 @@ var PriceCard_default = /* @__PURE__ */ defineComponent({
|
|
|
1943
1868
|
const palette = computed(() => TONE[__props.tone]);
|
|
1944
1869
|
return (_ctx, _cache) => {
|
|
1945
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"]]) }, [
|
|
1946
|
-
__props.badge && __props.recommended ? (openBlock(), createElementBlock("span", _hoisted_1$
|
|
1947
|
-
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", {
|
|
1948
1873
|
key: 0,
|
|
1949
1874
|
class: normalizeClass(["rounded-card grid size-11 place-items-center text-xl", palette.value.icon])
|
|
1950
1875
|
}, [renderSlot(_ctx.$slots, "icon")], 2)) : createCommentVNode("", true), __props.chip ? (openBlock(), createElementBlock("span", {
|
|
1951
1876
|
key: 1,
|
|
1952
1877
|
class: normalizeClass(["rounded-cell ml-auto px-2.5 py-1 text-[0.7rem] font-medium", palette.value.soft])
|
|
1953
1878
|
}, toDisplayString(__props.chip), 3)) : createCommentVNode("", true)]),
|
|
1954
|
-
createElementVNode("h3", _hoisted_3$
|
|
1955
|
-
__props.lead ? (openBlock(), createElementBlock("p", _hoisted_4$
|
|
1956
|
-
createElementVNode("p", _hoisted_5$
|
|
1879
|
+
createElementVNode("h3", _hoisted_3$18, toDisplayString(__props.name), 1),
|
|
1880
|
+
__props.lead ? (openBlock(), createElementBlock("p", _hoisted_4$12, toDisplayString(__props.lead), 1)) : createCommentVNode("", true),
|
|
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)]),
|
|
1957
1882
|
__props.note ? (openBlock(), createElementBlock("p", _hoisted_8$2, toDisplayString(__props.note), 1)) : createCommentVNode("", true),
|
|
1958
1883
|
createElementVNode("ul", _hoisted_9$2, [(openBlock(true), createElementBlock(Fragment, null, renderList(__props.features, (feature) => {
|
|
1959
1884
|
return openBlock(), createElementBlock("li", {
|
|
@@ -1968,8 +1893,8 @@ var PriceCard_default = /* @__PURE__ */ defineComponent({
|
|
|
1968
1893
|
});
|
|
1969
1894
|
//#endregion
|
|
1970
1895
|
//#region src/components/ToneDot.vue?vue&type=script&setup=true&lang.ts
|
|
1971
|
-
var _hoisted_1$
|
|
1972
|
-
var _hoisted_2$
|
|
1896
|
+
var _hoisted_1$32 = { class: "inline-flex items-center gap-1.5" };
|
|
1897
|
+
var _hoisted_2$29 = {
|
|
1973
1898
|
key: 0,
|
|
1974
1899
|
class: "text-ink-soft text-xs font-medium"
|
|
1975
1900
|
};
|
|
@@ -1990,13 +1915,13 @@ var ToneDot_default = /* @__PURE__ */ defineComponent({
|
|
|
1990
1915
|
* priorities — without this component knowing about any of them.
|
|
1991
1916
|
*/
|
|
1992
1917
|
return (_ctx, _cache) => {
|
|
1993
|
-
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)]);
|
|
1994
1919
|
};
|
|
1995
1920
|
}
|
|
1996
1921
|
});
|
|
1997
1922
|
//#endregion
|
|
1998
1923
|
//#region src/components/SectionHeading.vue?vue&type=script&setup=true&lang.ts
|
|
1999
|
-
var _hoisted_1$
|
|
1924
|
+
var _hoisted_1$31 = {
|
|
2000
1925
|
key: 0,
|
|
2001
1926
|
class: "text-ink-soft text-xs tabular-nums"
|
|
2002
1927
|
};
|
|
@@ -2014,15 +1939,15 @@ var SectionHeading_default = /* @__PURE__ */ defineComponent({
|
|
|
2014
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]) }, [
|
|
2015
1940
|
createVNode(ToneDot_default, { fill: __props.tone.fill }, null, 8, ["fill"]),
|
|
2016
1941
|
createElementVNode("span", { class: normalizeClass(["text-xs font-semibold tracking-wide uppercase", __props.tone.text]) }, toDisplayString(__props.label), 3),
|
|
2017
|
-
__props.count > 0 ? (openBlock(), createElementBlock("span", _hoisted_1$
|
|
1942
|
+
__props.count > 0 ? (openBlock(), createElementBlock("span", _hoisted_1$31, toDisplayString(__props.count), 1)) : createCommentVNode("", true)
|
|
2018
1943
|
], 2);
|
|
2019
1944
|
};
|
|
2020
1945
|
}
|
|
2021
1946
|
});
|
|
2022
1947
|
//#endregion
|
|
2023
1948
|
//#region src/components/SegmentedControl.vue?vue&type=script&setup=true&lang.ts
|
|
2024
|
-
var _hoisted_1$
|
|
2025
|
-
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"];
|
|
2026
1951
|
//#endregion
|
|
2027
1952
|
//#region src/components/SegmentedControl.vue
|
|
2028
1953
|
var SegmentedControl_default = /* @__PURE__ */ defineComponent({
|
|
@@ -2036,7 +1961,7 @@ var SegmentedControl_default = /* @__PURE__ */ defineComponent({
|
|
|
2036
1961
|
const model = useModel(__props, "modelValue");
|
|
2037
1962
|
const name = useId();
|
|
2038
1963
|
return (_ctx, _cache) => {
|
|
2039
|
-
return openBlock(), createElementBlock("div", _hoisted_1$
|
|
1964
|
+
return openBlock(), createElementBlock("div", _hoisted_1$30, [(openBlock(true), createElementBlock(Fragment, null, renderList(__props.options, (option) => {
|
|
2040
1965
|
return openBlock(), createElementBlock("label", {
|
|
2041
1966
|
key: String(option.value),
|
|
2042
1967
|
class: "flex-1 cursor-pointer"
|
|
@@ -2046,18 +1971,18 @@ var SegmentedControl_default = /* @__PURE__ */ defineComponent({
|
|
|
2046
1971
|
value: option.value,
|
|
2047
1972
|
name: unref(name),
|
|
2048
1973
|
class: "peer sr-only"
|
|
2049
|
-
}, 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)]);
|
|
2050
1975
|
}), 128))]);
|
|
2051
1976
|
};
|
|
2052
1977
|
}
|
|
2053
1978
|
});
|
|
2054
1979
|
//#endregion
|
|
2055
1980
|
//#region src/components/SkeletonList.vue?vue&type=script&setup=true&lang.ts
|
|
2056
|
-
var _hoisted_1$
|
|
1981
|
+
var _hoisted_1$29 = {
|
|
2057
1982
|
role: "status",
|
|
2058
1983
|
class: "flex flex-col gap-1"
|
|
2059
1984
|
};
|
|
2060
|
-
var _hoisted_2$
|
|
1985
|
+
var _hoisted_2$27 = { class: "sr-only" };
|
|
2061
1986
|
//#endregion
|
|
2062
1987
|
//#region src/components/SkeletonList.vue
|
|
2063
1988
|
var SkeletonList_default = /* @__PURE__ */ defineComponent({
|
|
@@ -2071,7 +1996,7 @@ var SkeletonList_default = /* @__PURE__ */ defineComponent({
|
|
|
2071
1996
|
/** A length starts with a digit, a dot, or opens a CSS function. */
|
|
2072
1997
|
const isLength = computed(() => /^(?:[.\d]|calc\(|var\(|clamp\(|min\(|max\()/.test(__props.rowHeight));
|
|
2073
1998
|
return (_ctx, _cache) => {
|
|
2074
|
-
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) => {
|
|
2075
2000
|
return openBlock(), createElementBlock("div", {
|
|
2076
2001
|
key: row,
|
|
2077
2002
|
class: normalizeClass(["bg-muted rounded-card animate-pulse", isLength.value ? void 0 : __props.rowHeight]),
|
|
@@ -2084,10 +2009,10 @@ var SkeletonList_default = /* @__PURE__ */ defineComponent({
|
|
|
2084
2009
|
});
|
|
2085
2010
|
//#endregion
|
|
2086
2011
|
//#region src/components/StatCard.vue?vue&type=script&setup=true&lang.ts
|
|
2087
|
-
var _hoisted_1$
|
|
2088
|
-
var _hoisted_2$
|
|
2089
|
-
var _hoisted_3$
|
|
2090
|
-
var _hoisted_4$
|
|
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" };
|
|
2015
|
+
var _hoisted_4$11 = { class: "text-ink-soft text-xs" };
|
|
2091
2016
|
//#endregion
|
|
2092
2017
|
//#region src/components/StatCard.vue
|
|
2093
2018
|
var StatCard_default = /* @__PURE__ */ defineComponent({
|
|
@@ -2104,22 +2029,22 @@ var StatCard_default = /* @__PURE__ */ defineComponent({
|
|
|
2104
2029
|
flat: ArrowRight
|
|
2105
2030
|
};
|
|
2106
2031
|
return (_ctx, _cache) => {
|
|
2107
|
-
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]), {
|
|
2108
2033
|
key: 0,
|
|
2109
2034
|
class: "text-ink-soft size-3"
|
|
2110
|
-
})) : createCommentVNode("", true)]), createElementVNode("span", _hoisted_4$
|
|
2035
|
+
})) : createCommentVNode("", true)]), createElementVNode("span", _hoisted_4$11, toDisplayString(__props.label), 1)]);
|
|
2111
2036
|
};
|
|
2112
2037
|
}
|
|
2113
2038
|
});
|
|
2114
2039
|
//#endregion
|
|
2115
2040
|
//#region src/components/ToastHost.vue?vue&type=script&setup=true&lang.ts
|
|
2116
|
-
var _hoisted_1$
|
|
2041
|
+
var _hoisted_1$27 = [
|
|
2117
2042
|
"onMouseenter",
|
|
2118
2043
|
"onMouseleave",
|
|
2119
2044
|
"onFocusin",
|
|
2120
2045
|
"onFocusout"
|
|
2121
2046
|
];
|
|
2122
|
-
var _hoisted_2$
|
|
2047
|
+
var _hoisted_2$25 = { class: "flex-1 text-sm leading-snug" };
|
|
2123
2048
|
//#endregion
|
|
2124
2049
|
//#region src/components/ToastHost.vue
|
|
2125
2050
|
var ToastHost_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PURE__ */ defineComponent({
|
|
@@ -2180,7 +2105,7 @@ var ToastHost_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PU
|
|
|
2180
2105
|
class: normalizeClass(["mt-0.5 size-5 shrink-0", TONE_CLASS[toast.tone]]),
|
|
2181
2106
|
"aria-hidden": "true"
|
|
2182
2107
|
}, null, 8, ["class"])),
|
|
2183
|
-
createElementVNode("p", _hoisted_2$
|
|
2108
|
+
createElementVNode("p", _hoisted_2$25, toDisplayString(toast.message), 1),
|
|
2184
2109
|
toast.action ? (openBlock(), createBlock(BaseButton_default, {
|
|
2185
2110
|
key: 0,
|
|
2186
2111
|
variant: "link",
|
|
@@ -2203,7 +2128,7 @@ var ToastHost_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PU
|
|
|
2203
2128
|
default: withCtx(() => [createVNode(unref(X), { class: "size-4" })]),
|
|
2204
2129
|
_: 1
|
|
2205
2130
|
}, 8, ["aria-label", "onClick"])
|
|
2206
|
-
], 40, _hoisted_1$
|
|
2131
|
+
], 40, _hoisted_1$27);
|
|
2207
2132
|
}), 128))]),
|
|
2208
2133
|
_: 1
|
|
2209
2134
|
})], 2)])) : createCommentVNode("", true);
|
|
@@ -2212,8 +2137,8 @@ var ToastHost_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PU
|
|
|
2212
2137
|
}), [["__scopeId", "data-v-737eb240"]]);
|
|
2213
2138
|
//#endregion
|
|
2214
2139
|
//#region src/components/LocaleLinks.vue?vue&type=script&setup=true&lang.ts
|
|
2215
|
-
var _hoisted_1$
|
|
2216
|
-
var _hoisted_2$
|
|
2140
|
+
var _hoisted_1$26 = ["aria-label"];
|
|
2141
|
+
var _hoisted_2$24 = [
|
|
2217
2142
|
"lang",
|
|
2218
2143
|
"aria-pressed",
|
|
2219
2144
|
"onClick"
|
|
@@ -2257,17 +2182,17 @@ var LocaleLinks_default = /* @__PURE__ */ defineComponent({
|
|
|
2257
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"]),
|
|
2258
2183
|
"aria-pressed": preference.value === locale,
|
|
2259
2184
|
onClick: ($event) => preference.value = locale
|
|
2260
|
-
}, toDisplayString(__props.labels[locale]), 11, _hoisted_2$
|
|
2261
|
-
}), 128))], 8, _hoisted_1$
|
|
2185
|
+
}, toDisplayString(__props.labels[locale]), 11, _hoisted_2$24);
|
|
2186
|
+
}), 128))], 8, _hoisted_1$26);
|
|
2262
2187
|
};
|
|
2263
2188
|
}
|
|
2264
2189
|
});
|
|
2265
2190
|
//#endregion
|
|
2266
2191
|
//#region src/components/TabBar.vue?vue&type=script&setup=true&lang.ts
|
|
2267
|
-
var _hoisted_1$
|
|
2268
|
-
var _hoisted_2$
|
|
2269
|
-
var _hoisted_3$
|
|
2270
|
-
var _hoisted_4$
|
|
2192
|
+
var _hoisted_1$25 = { class: "tab-bar" };
|
|
2193
|
+
var _hoisted_2$23 = ["aria-label"];
|
|
2194
|
+
var _hoisted_3$16 = { class: "tab-icon-slot" };
|
|
2195
|
+
var _hoisted_4$10 = { class: "tab-label" };
|
|
2271
2196
|
//#endregion
|
|
2272
2197
|
//#region src/components/TabBar.vue
|
|
2273
2198
|
var TabBar_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PURE__ */ defineComponent({
|
|
@@ -2279,7 +2204,7 @@ var TabBar_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PURE_
|
|
|
2279
2204
|
},
|
|
2280
2205
|
setup(__props) {
|
|
2281
2206
|
return (_ctx, _cache) => {
|
|
2282
|
-
return openBlock(), createElementBlock("header", _hoisted_1$
|
|
2207
|
+
return openBlock(), createElementBlock("header", _hoisted_1$25, [createElementVNode("nav", {
|
|
2283
2208
|
class: "tab-bar-inner",
|
|
2284
2209
|
"aria-label": __props.label || void 0
|
|
2285
2210
|
}, [(openBlock(true), createElementBlock(Fragment, null, renderList(__props.items, (item) => {
|
|
@@ -2290,28 +2215,28 @@ var TabBar_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PURE_
|
|
|
2290
2215
|
"aria-current": item.key === __props.active ? "page" : void 0,
|
|
2291
2216
|
onClick: _cache[0] || (_cache[0] = ($event) => unref(tapFeedback)())
|
|
2292
2217
|
}, {
|
|
2293
|
-
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)]),
|
|
2294
2219
|
_: 2
|
|
2295
2220
|
}, 1032, [
|
|
2296
2221
|
"to",
|
|
2297
2222
|
"class",
|
|
2298
2223
|
"aria-current"
|
|
2299
2224
|
]);
|
|
2300
|
-
}), 128))], 8, _hoisted_2$
|
|
2225
|
+
}), 128))], 8, _hoisted_2$23)]);
|
|
2301
2226
|
};
|
|
2302
2227
|
}
|
|
2303
2228
|
}), [["__scopeId", "data-v-a76891c4"]]);
|
|
2304
2229
|
//#endregion
|
|
2305
2230
|
//#region src/components/ActivityGrid.vue?vue&type=script&setup=true&lang.ts
|
|
2306
|
-
var _hoisted_1$
|
|
2307
|
-
var _hoisted_2$
|
|
2308
|
-
var _hoisted_3$
|
|
2231
|
+
var _hoisted_1$24 = ["aria-label"];
|
|
2232
|
+
var _hoisted_2$22 = ["colspan"];
|
|
2233
|
+
var _hoisted_3$15 = {
|
|
2309
2234
|
scope: "row",
|
|
2310
2235
|
class: "rk-activity-weekday"
|
|
2311
2236
|
};
|
|
2312
|
-
var _hoisted_4$
|
|
2313
|
-
var _hoisted_5$
|
|
2314
|
-
var _hoisted_6$
|
|
2237
|
+
var _hoisted_4$9 = { class: "sr-only" };
|
|
2238
|
+
var _hoisted_5$6 = ["tabindex", "aria-label"];
|
|
2239
|
+
var _hoisted_6$5 = {
|
|
2315
2240
|
key: 1,
|
|
2316
2241
|
class: "rk-activity-cell is-blank",
|
|
2317
2242
|
"aria-hidden": "true"
|
|
@@ -2468,9 +2393,9 @@ var ActivityGrid_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @_
|
|
|
2468
2393
|
key: month.key,
|
|
2469
2394
|
colspan: month.span,
|
|
2470
2395
|
scope: "colgroup"
|
|
2471
|
-
}, toDisplayString(month.label), 9, _hoisted_2$
|
|
2396
|
+
}, toDisplayString(month.label), 9, _hoisted_2$22);
|
|
2472
2397
|
}), 128))])]), createElementVNode("tbody", null, [(openBlock(true), createElementBlock(Fragment, null, renderList(weekdays.value, (weekday, row) => {
|
|
2473
|
-
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) => {
|
|
2474
2399
|
return openBlock(), createElementBlock(Fragment, { key: column }, [week[row] ? (openBlock(), createElementBlock("td", mergeProps({
|
|
2475
2400
|
key: 0,
|
|
2476
2401
|
class: "rk-activity-cell"
|
|
@@ -2478,168 +2403,16 @@ var ActivityGrid_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @_
|
|
|
2478
2403
|
tabindex: cells.value[focused.value]?.day === week[row] ? 0 : -1,
|
|
2479
2404
|
"aria-label": __props.dayLabel(week[row]),
|
|
2480
2405
|
class: [__props.levelFor(week[row]), { "is-pickable": __props.isSelectable?.(week[row]) }]
|
|
2481
|
-
}), null, 16, _hoisted_5$
|
|
2406
|
+
}), null, 16, _hoisted_5$6)) : (openBlock(), createElementBlock("td", _hoisted_6$5))], 64);
|
|
2482
2407
|
}), 128))]);
|
|
2483
|
-
}), 128))])], 40, _hoisted_1$
|
|
2408
|
+
}), 128))])], 40, _hoisted_1$24)], 512);
|
|
2484
2409
|
};
|
|
2485
2410
|
}
|
|
2486
2411
|
}), [["__scopeId", "data-v-9f622328"]]);
|
|
2487
2412
|
//#endregion
|
|
2488
|
-
//#region src/components/ScrollArea.vue?vue&type=script&setup=true&lang.ts
|
|
2489
|
-
var _hoisted_1$22 = { class: "rk-scroll" };
|
|
2490
|
-
var _hoisted_2$20 = [
|
|
2491
|
-
"tabindex",
|
|
2492
|
-
"role",
|
|
2493
|
-
"aria-label"
|
|
2494
|
-
];
|
|
2495
|
-
var _hoisted_3$13 = {
|
|
2496
|
-
key: 0,
|
|
2497
|
-
class: "rk-scroll-fade is-start-x",
|
|
2498
|
-
"aria-hidden": "true"
|
|
2499
|
-
};
|
|
2500
|
-
var _hoisted_4$9 = {
|
|
2501
|
-
key: 1,
|
|
2502
|
-
class: "rk-scroll-fade is-end-x",
|
|
2503
|
-
"aria-hidden": "true"
|
|
2504
|
-
};
|
|
2505
|
-
var _hoisted_5$6 = {
|
|
2506
|
-
key: 2,
|
|
2507
|
-
class: "rk-scroll-fade is-start-y",
|
|
2508
|
-
"aria-hidden": "true"
|
|
2509
|
-
};
|
|
2510
|
-
var _hoisted_6$5 = {
|
|
2511
|
-
key: 3,
|
|
2512
|
-
class: "rk-scroll-fade is-end-y",
|
|
2513
|
-
"aria-hidden": "true"
|
|
2514
|
-
};
|
|
2515
|
-
/**
|
|
2516
|
-
* A box that scrolls, with the two things a hand-written one leaves out.
|
|
2517
|
-
*
|
|
2518
|
-
* ## The edge fade is the affordance `no-scrollbar` takes away
|
|
2519
|
-
*
|
|
2520
|
-
* Every app here hides the scrollbar on a horizontal row — a strip of
|
|
2521
|
-
* months, a row of filter chips — because a native bar under a 40px row is
|
|
2522
|
-
* louder than the row. What goes with it is the only sign on screen that
|
|
2523
|
-
* there is anything further along. So the fades are driven by the actual
|
|
2524
|
-
* scroll position: one appears at an edge exactly when there is content
|
|
2525
|
-
* past it, and both are gone when everything fits.
|
|
2526
|
-
*
|
|
2527
|
-
* ## A focus stop, but only when there is no other way in
|
|
2528
|
-
*
|
|
2529
|
-
* A box that scrolls and cannot take focus cannot be scrolled by a
|
|
2530
|
-
* keyboard, so the far end is simply unreachable. That is the fault
|
|
2531
|
-
* `CodeBlock` was written for, and it is not about code: it is true of any
|
|
2532
|
-
* scrolling box whose contents are not focusable.
|
|
2533
|
-
*
|
|
2534
|
-
* But it is *only* true of those. A row of buttons already moves under the
|
|
2535
|
-
* keyboard — Tab scrolls the next one into view — and giving that row a
|
|
2536
|
-
* stop of its own costs a press for nothing, on every row. So this checks:
|
|
2537
|
-
* it becomes a named region when it overflows **and** holds nothing
|
|
2538
|
-
* focusable, and stays out of the tab order otherwise.
|
|
2539
|
-
*
|
|
2540
|
-
* The check runs when the box or its contents resize, which covers a list
|
|
2541
|
-
* that arrives from a server. A swap that changes neither size — the same
|
|
2542
|
-
* number of rows, buttons turned into plain text — will not be noticed;
|
|
2543
|
-
* that is a trade against watching every mutation of a scroll container,
|
|
2544
|
-
* and the shape it misses is a rare one.
|
|
2545
|
-
*/
|
|
2546
|
-
var FOCUSABLE$1 = "a[href], button, input, select, textarea, summary, [tabindex]:not([tabindex=\"-1\"])";
|
|
2547
|
-
//#endregion
|
|
2548
|
-
//#region src/components/ScrollArea.vue
|
|
2549
|
-
var ScrollArea_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PURE__ */ defineComponent({
|
|
2550
|
-
__name: "ScrollArea",
|
|
2551
|
-
props: {
|
|
2552
|
-
label: {},
|
|
2553
|
-
axis: { default: "y" },
|
|
2554
|
-
scrollbar: { default: "auto" },
|
|
2555
|
-
fade: {
|
|
2556
|
-
type: Boolean,
|
|
2557
|
-
default: true
|
|
2558
|
-
},
|
|
2559
|
-
drag: {
|
|
2560
|
-
type: Boolean,
|
|
2561
|
-
default: false
|
|
2562
|
-
}
|
|
2563
|
-
},
|
|
2564
|
-
emits: ["scroll"],
|
|
2565
|
-
setup(__props, { expose: __expose, emit: __emit }) {
|
|
2566
|
-
const emit = __emit;
|
|
2567
|
-
const viewport = useTemplateRef("viewport");
|
|
2568
|
-
/** Anything that takes focus on its own, so the box does not need to. */
|
|
2569
|
-
const horizontal = computed(() => __props.axis === "x" || __props.axis === "both");
|
|
2570
|
-
const vertical = computed(() => __props.axis === "y" || __props.axis === "both");
|
|
2571
|
-
const start = ref({
|
|
2572
|
-
x: false,
|
|
2573
|
-
y: false
|
|
2574
|
-
});
|
|
2575
|
-
const end = ref({
|
|
2576
|
-
x: false,
|
|
2577
|
-
y: false
|
|
2578
|
-
});
|
|
2579
|
-
const overflows = ref(false);
|
|
2580
|
-
const hasFocusable = ref(true);
|
|
2581
|
-
function measure() {
|
|
2582
|
-
const element = viewport.value;
|
|
2583
|
-
if (!element) return;
|
|
2584
|
-
const overX = element.scrollWidth - element.clientWidth;
|
|
2585
|
-
const overY = element.scrollHeight - element.clientHeight;
|
|
2586
|
-
const slack = 1;
|
|
2587
|
-
const alongX = Math.abs(element.scrollLeft);
|
|
2588
|
-
start.value = {
|
|
2589
|
-
x: alongX > slack,
|
|
2590
|
-
y: element.scrollTop > slack
|
|
2591
|
-
};
|
|
2592
|
-
end.value = {
|
|
2593
|
-
x: overX - alongX > slack,
|
|
2594
|
-
y: overY - element.scrollTop > slack
|
|
2595
|
-
};
|
|
2596
|
-
overflows.value = horizontal.value && overX > slack || vertical.value && overY > slack;
|
|
2597
|
-
hasFocusable.value = element.querySelector(FOCUSABLE$1) !== null;
|
|
2598
|
-
}
|
|
2599
|
-
function onScroll(event) {
|
|
2600
|
-
measure();
|
|
2601
|
-
emit("scroll", event);
|
|
2602
|
-
}
|
|
2603
|
-
/** The box itself is the way in only when nothing inside it is. */
|
|
2604
|
-
const isStop = computed(() => overflows.value && !hasFocusable.value);
|
|
2605
|
-
let observer = null;
|
|
2606
|
-
watchEffect(() => {
|
|
2607
|
-
observer?.disconnect();
|
|
2608
|
-
observer = null;
|
|
2609
|
-
const element = viewport.value;
|
|
2610
|
-
if (!element || typeof ResizeObserver === "undefined") return;
|
|
2611
|
-
observer = new ResizeObserver(measure);
|
|
2612
|
-
observer.observe(element);
|
|
2613
|
-
for (const child of element.children) observer.observe(child);
|
|
2614
|
-
measure();
|
|
2615
|
-
});
|
|
2616
|
-
onScopeDispose(() => observer?.disconnect());
|
|
2617
|
-
useDragScroll(computed(() => __props.drag ? viewport.value : null));
|
|
2618
|
-
__expose({
|
|
2619
|
-
/** The element that actually scrolls, for a parent that has to measure it. */
|
|
2620
|
-
viewport });
|
|
2621
|
-
return (_ctx, _cache) => {
|
|
2622
|
-
return openBlock(), createElementBlock("div", _hoisted_1$22, [createElementVNode("div", {
|
|
2623
|
-
ref_key: "viewport",
|
|
2624
|
-
ref: viewport,
|
|
2625
|
-
class: normalizeClass(["rk-scroll-viewport", [`is-${__props.axis}`, { "no-scrollbar": __props.scrollbar === "hidden" }]]),
|
|
2626
|
-
tabindex: isStop.value ? 0 : void 0,
|
|
2627
|
-
role: isStop.value ? "region" : void 0,
|
|
2628
|
-
"aria-label": isStop.value ? __props.label : void 0,
|
|
2629
|
-
onScroll
|
|
2630
|
-
}, [renderSlot(_ctx.$slots, "default", {}, void 0, true)], 42, _hoisted_2$20), __props.fade ? (openBlock(), createElementBlock(Fragment, { key: 0 }, [
|
|
2631
|
-
horizontal.value && start.value.x ? (openBlock(), createElementBlock("span", _hoisted_3$13)) : createCommentVNode("", true),
|
|
2632
|
-
horizontal.value && end.value.x ? (openBlock(), createElementBlock("span", _hoisted_4$9)) : createCommentVNode("", true),
|
|
2633
|
-
vertical.value && start.value.y ? (openBlock(), createElementBlock("span", _hoisted_5$6)) : createCommentVNode("", true),
|
|
2634
|
-
vertical.value && end.value.y ? (openBlock(), createElementBlock("span", _hoisted_6$5)) : createCommentVNode("", true)
|
|
2635
|
-
], 64)) : createCommentVNode("", true)]);
|
|
2636
|
-
};
|
|
2637
|
-
}
|
|
2638
|
-
}), [["__scopeId", "data-v-4c21cdc9"]]);
|
|
2639
|
-
//#endregion
|
|
2640
2413
|
//#region src/components/VirtualList.vue?vue&type=script&setup=true&lang.ts
|
|
2641
|
-
var _hoisted_1$
|
|
2642
|
-
var _hoisted_2$
|
|
2414
|
+
var _hoisted_1$23 = ["aria-label"];
|
|
2415
|
+
var _hoisted_2$21 = ["aria-setsize", "aria-posinset"];
|
|
2643
2416
|
//#endregion
|
|
2644
2417
|
//#region src/components/VirtualList.vue
|
|
2645
2418
|
var VirtualList_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PURE__ */ defineComponent({
|
|
@@ -2707,14 +2480,14 @@ var VirtualList_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__
|
|
|
2707
2480
|
}, [renderSlot(_ctx.$slots, "default", {
|
|
2708
2481
|
item: row.item,
|
|
2709
2482
|
index: row.index
|
|
2710
|
-
}, void 0, true)], 12, _hoisted_2$
|
|
2483
|
+
}, void 0, true)], 12, _hoisted_2$21);
|
|
2711
2484
|
}), 128)),
|
|
2712
2485
|
unref(padBottom) > 0 ? (openBlock(), createElementBlock("li", {
|
|
2713
2486
|
key: 1,
|
|
2714
2487
|
style: normalizeStyle({ height: `${unref(padBottom)}px` }),
|
|
2715
2488
|
"aria-hidden": "true"
|
|
2716
2489
|
}, null, 4)) : createCommentVNode("", true)
|
|
2717
|
-
], 8, _hoisted_1$
|
|
2490
|
+
], 8, _hoisted_1$23)]),
|
|
2718
2491
|
_: 3
|
|
2719
2492
|
}, 8, [
|
|
2720
2493
|
"label",
|
|
@@ -2725,6 +2498,131 @@ var VirtualList_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__
|
|
|
2725
2498
|
}
|
|
2726
2499
|
}), [["__scopeId", "data-v-936ed40c"]]);
|
|
2727
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
|
|
2728
2626
|
//#region src/components/AvatarStack.vue?vue&type=script&setup=true&lang.ts
|
|
2729
2627
|
var _hoisted_1$20 = ["aria-label"];
|
|
2730
2628
|
var _hoisted_2$18 = {
|
|
@@ -2768,7 +2666,7 @@ var AvatarStack_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__
|
|
|
2768
2666
|
}), 128)), rest.value ? (openBlock(), createElementBlock("span", _hoisted_2$18, "+" + toDisplayString(rest.value), 1)) : createCommentVNode("", true)], 10, _hoisted_1$20);
|
|
2769
2667
|
};
|
|
2770
2668
|
}
|
|
2771
|
-
}), [["__scopeId", "data-v-
|
|
2669
|
+
}), [["__scopeId", "data-v-1f87913c"]]);
|
|
2772
2670
|
//#endregion
|
|
2773
2671
|
//#region src/components/BaseCalendar.vue?vue&type=script&setup=true&lang.ts
|
|
2774
2672
|
var _hoisted_1$19 = { class: "rk-cal" };
|
|
@@ -3721,7 +3619,7 @@ var FileDrop_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PUR
|
|
|
3721
3619
|
]);
|
|
3722
3620
|
};
|
|
3723
3621
|
}
|
|
3724
|
-
}), [["__scopeId", "data-v-
|
|
3622
|
+
}), [["__scopeId", "data-v-6e903baf"]]);
|
|
3725
3623
|
//#endregion
|
|
3726
3624
|
//#region src/components/TagsInput.vue?vue&type=script&setup=true&lang.ts
|
|
3727
3625
|
var _hoisted_1$9 = [
|
|
@@ -3978,7 +3876,7 @@ var BasePopover_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__
|
|
|
3978
3876
|
})], 544);
|
|
3979
3877
|
};
|
|
3980
3878
|
}
|
|
3981
|
-
}), [["__scopeId", "data-v-
|
|
3879
|
+
}), [["__scopeId", "data-v-22d8f397"]]);
|
|
3982
3880
|
//#endregion
|
|
3983
3881
|
//#region src/components/TimePicker.vue?vue&type=script&setup=true&lang.ts
|
|
3984
3882
|
var _hoisted_1$7 = [
|
|
@@ -4123,7 +4021,7 @@ var TimePicker_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__P
|
|
|
4123
4021
|
]);
|
|
4124
4022
|
};
|
|
4125
4023
|
}
|
|
4126
|
-
}), [["__scopeId", "data-v-
|
|
4024
|
+
}), [["__scopeId", "data-v-ad58b4f3"]]);
|
|
4127
4025
|
//#endregion
|
|
4128
4026
|
//#region src/components/BaseTimeline.vue?vue&type=script&setup=true&lang.ts
|
|
4129
4027
|
var _hoisted_1$6 = ["aria-label"];
|
|
@@ -4177,7 +4075,7 @@ var BaseTimeline_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @_
|
|
|
4177
4075
|
}), 128))], 8, _hoisted_1$6);
|
|
4178
4076
|
};
|
|
4179
4077
|
}
|
|
4180
|
-
}), [["__scopeId", "data-v-
|
|
4078
|
+
}), [["__scopeId", "data-v-8a452f82"]]);
|
|
4181
4079
|
//#endregion
|
|
4182
4080
|
//#region src/components/BaseDatePicker.vue?vue&type=script&setup=true&lang.ts
|
|
4183
4081
|
var _hoisted_1$5 = [
|
|
@@ -4324,7 +4222,7 @@ var BaseDatePicker_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/*
|
|
|
4324
4222
|
]);
|
|
4325
4223
|
};
|
|
4326
4224
|
}
|
|
4327
|
-
}), [["__scopeId", "data-v-
|
|
4225
|
+
}), [["__scopeId", "data-v-42390973"]]);
|
|
4328
4226
|
//#endregion
|
|
4329
4227
|
//#region src/components/BasePopconfirm.vue?vue&type=script&setup=true&lang.ts
|
|
4330
4228
|
var _hoisted_1$4 = { class: "rk-confirm" };
|
|
@@ -4790,7 +4688,7 @@ var BaseStepper_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__
|
|
|
4790
4688
|
}), 128))], 2)], 8, _hoisted_1);
|
|
4791
4689
|
};
|
|
4792
4690
|
}
|
|
4793
|
-
}), [["__scopeId", "data-v-
|
|
4691
|
+
}), [["__scopeId", "data-v-f7513d9a"]]);
|
|
4794
4692
|
//#endregion
|
|
4795
4693
|
//#region src/i18n/runtime.ts
|
|
4796
4694
|
/**
|
|
@@ -4884,7 +4782,10 @@ function createI18nRuntime(options) {
|
|
|
4884
4782
|
watchEffect(() => {
|
|
4885
4783
|
core.locale.value = activeLocale.value;
|
|
4886
4784
|
setFormatLocale(intlLocale.value);
|
|
4887
|
-
if (typeof document !== "undefined")
|
|
4785
|
+
if (typeof document !== "undefined") {
|
|
4786
|
+
document.documentElement.lang = activeLocale.value;
|
|
4787
|
+
document.documentElement.dir = textDirection(intlLocale.value);
|
|
4788
|
+
}
|
|
4888
4789
|
});
|
|
4889
4790
|
/** Read and write the language preference. */
|
|
4890
4791
|
function useLocalePreference() {
|
|
@@ -4934,8 +4835,8 @@ function createI18nRuntime(options) {
|
|
|
4934
4835
|
*
|
|
4935
4836
|
* The fallback keeps `vitest` and `vite dev` honest, where no define runs.
|
|
4936
4837
|
*/
|
|
4937
|
-
var VERSION = "2.
|
|
4838
|
+
var VERSION = "2.22.0";
|
|
4938
4839
|
//#endregion
|
|
4939
|
-
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, 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, 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 };
|
|
4940
4841
|
|
|
4941
4842
|
//# sourceMappingURL=index.js.map
|