rei-kit 2.18.1 → 2.19.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/dist/index.js CHANGED
@@ -3,7 +3,7 @@ import { n as formatNumber, r as setFormatLocale, t as formatDate } from "./form
3
3
  import { a as SHEET_ROOT_ID, i as useVisualViewport, o as ensureSheetRoot, r as useBoundValue, t as BaseSheet_default } from "./BaseSheet-B7401rS7.js";
4
4
  import { a as BaseAlert_default, c as applyTheme, d as setThemeStorageKey, f as useTheme, h as toRedirectPath, i as FormField_default, l as isThemePreference, m as safeRedirect, n as BaseCheckbox_default, o as useToast, p as tapFeedback, r as BaseInput_default, s as useOnline, t as GoogleButton_default, u as readStoredTheme } from "./GoogleButton-mCqGbrXm.js";
5
5
  import { n as registerErrorMapper, r as toAppError, t as AppError } from "./app-error-DF9cijE0.js";
6
- import { n as BaseSkeleton_default, r as useMediaQuery, t as BaseListbox_default } from "./BaseListbox-BnaHlmMN.js";
6
+ import { i as useMediaQuery, n as BaseSkeleton_default, r as useMenuKeys, t as BaseListbox_default } from "./BaseListbox-Btibgnaf.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";
@@ -348,13 +348,13 @@ function useDragScroll(target) {
348
348
  }
349
349
  //#endregion
350
350
  //#region src/components/BaseAvatar.vue?vue&type=script&setup=true&lang.ts
351
- var _hoisted_1$43 = [
351
+ var _hoisted_1$44 = [
352
352
  "role",
353
353
  "aria-label",
354
354
  "aria-hidden"
355
355
  ];
356
- var _hoisted_2$37 = ["src"];
357
- var _hoisted_3$24 = {
356
+ var _hoisted_2$38 = ["src"];
357
+ var _hoisted_3$25 = {
358
358
  key: 1,
359
359
  class: "rk-avatar-initials"
360
360
  };
@@ -404,7 +404,7 @@ var BaseAvatar_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__P
404
404
  alt: "",
405
405
  class: "rk-avatar-img",
406
406
  onError: _cache[0] || (_cache[0] = ($event) => broken.value = true)
407
- }, null, 40, _hoisted_2$37)) : __props.fallback === "initials" && initials.value ? (openBlock(), createElementBlock("span", _hoisted_3$24, toDisplayString(initials.value), 1)) : (openBlock(), createElementBlock("svg", _hoisted_4$19, [..._cache[1] || (_cache[1] = [createElementVNode("circle", {
407
+ }, null, 40, _hoisted_2$38)) : __props.fallback === "initials" && initials.value ? (openBlock(), createElementBlock("span", _hoisted_3$25, toDisplayString(initials.value), 1)) : (openBlock(), createElementBlock("svg", _hoisted_4$19, [..._cache[1] || (_cache[1] = [createElementVNode("circle", {
408
408
  cx: "10",
409
409
  cy: "6.75",
410
410
  r: "3.25",
@@ -413,7 +413,7 @@ var BaseAvatar_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__P
413
413
  d: "M3.75 17c0-3.05 2.8-5.25 6.25-5.25S16.25 13.95 16.25 17",
414
414
  "stroke-width": "1.5",
415
415
  "stroke-linecap": "round"
416
- }, null, -1)])]))], 10, _hoisted_1$43);
416
+ }, null, -1)])]))], 10, _hoisted_1$44);
417
417
  };
418
418
  }
419
419
  }), [["__scopeId", "data-v-47586bec"]]);
@@ -438,12 +438,12 @@ var BaseBadge_default = /* @__PURE__ */ defineComponent({
438
438
  });
439
439
  //#endregion
440
440
  //#region src/components/BaseMenu.vue?vue&type=script&setup=true&lang.ts
441
- var _hoisted_1$42 = [
441
+ var _hoisted_1$43 = [
442
442
  "aria-label",
443
443
  "aria-expanded",
444
444
  "aria-controls"
445
445
  ];
446
- var _hoisted_2$36 = ["id"];
446
+ var _hoisted_2$37 = ["id"];
447
447
  //#endregion
448
448
  //#region src/components/BaseMenu.vue
449
449
  var BaseMenu_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PURE__ */ defineComponent({
@@ -465,18 +465,10 @@ var BaseMenu_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PUR
465
465
  const panel = ref(null);
466
466
  const trigger = ref(null);
467
467
  const id = useId();
468
- function items() {
469
- if (!panel.value) return [];
470
- return Array.from(panel.value.querySelectorAll("[role=\"menuitem\"]"));
471
- }
472
- function focusAt(index) {
473
- const list = items();
474
- if (list.length === 0) return;
475
- list[(index + list.length) % list.length]?.focus();
476
- }
477
- function currentIndex() {
478
- return items().indexOf(document.activeElement);
479
- }
468
+ const { items: menuItems, onKeydown: onMenuKeydown } = useMenuKeys({
469
+ panel,
470
+ onClose: () => open.value = false
471
+ });
480
472
  function onKeydown(event) {
481
473
  if (!open.value) {
482
474
  if (event.key === "ArrowDown" || event.key === "ArrowUp") {
@@ -485,29 +477,7 @@ var BaseMenu_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PUR
485
477
  }
486
478
  return;
487
479
  }
488
- switch (event.key) {
489
- case "Escape":
490
- event.preventDefault();
491
- open.value = false;
492
- break;
493
- case "ArrowDown":
494
- event.preventDefault();
495
- focusAt(currentIndex() + 1);
496
- break;
497
- case "ArrowUp":
498
- event.preventDefault();
499
- focusAt(currentIndex() - 1);
500
- break;
501
- case "Home":
502
- event.preventDefault();
503
- focusAt(0);
504
- break;
505
- case "End":
506
- event.preventDefault();
507
- focusAt(items().length - 1);
508
- break;
509
- case "Tab": open.value = false;
510
- }
480
+ onMenuKeydown(event);
511
481
  }
512
482
  function onDocumentPointer(event) {
513
483
  if (root.value && !root.value.contains(event.target)) open.value = false;
@@ -517,7 +487,7 @@ var BaseMenu_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PUR
517
487
  if (isOpen) {
518
488
  document.addEventListener("pointerdown", onDocumentPointer);
519
489
  await nextTick();
520
- items()[0]?.focus();
490
+ menuItems()[0]?.focus();
521
491
  } else {
522
492
  document.removeEventListener("pointerdown", onDocumentPointer);
523
493
  if (root.value?.contains(document.activeElement)) trigger.value?.focus();
@@ -542,17 +512,17 @@ var BaseMenu_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PUR
542
512
  "aria-haspopup": true,
543
513
  "aria-controls": open.value ? unref(id) : void 0,
544
514
  onClick: _cache[0] || (_cache[0] = ($event) => open.value = !open.value)
545
- }, [renderSlot(_ctx.$slots, "trigger", { open: open.value }, void 0, true)], 8, _hoisted_1$42), open.value ? (openBlock(), createElementBlock("div", {
515
+ }, [renderSlot(_ctx.$slots, "trigger", { open: open.value }, void 0, true)], 8, _hoisted_1$43), open.value ? (openBlock(), createElementBlock("div", {
546
516
  key: 0,
547
517
  id: unref(id),
548
518
  ref_key: "panel",
549
519
  ref: panel,
550
520
  class: normalizeClass(["rk-menu-panel surface-overlay", `is-${__props.align}`]),
551
521
  role: "menu"
552
- }, [renderSlot(_ctx.$slots, "default", {}, void 0, true)], 10, _hoisted_2$36)) : createCommentVNode("", true)], 544);
522
+ }, [renderSlot(_ctx.$slots, "default", {}, void 0, true)], 10, _hoisted_2$37)) : createCommentVNode("", true)], 544);
553
523
  };
554
524
  }
555
- }), [["__scopeId", "data-v-e57ec901"]]);
525
+ }), [["__scopeId", "data-v-ee62de72"]]);
556
526
  //#endregion
557
527
  //#region src/components/BaseCard.vue
558
528
  var BaseCard_default = /* @__PURE__ */ defineComponent({
@@ -620,13 +590,13 @@ var BaseCard_default = /* @__PURE__ */ defineComponent({
620
590
  });
621
591
  //#endregion
622
592
  //#region src/components/BaseCombobox.vue?vue&type=script&setup=true&lang.ts
623
- var _hoisted_1$41 = ["for"];
624
- var _hoisted_2$35 = [
593
+ var _hoisted_1$42 = ["for"];
594
+ var _hoisted_2$36 = [
625
595
  "aria-label",
626
596
  "disabled",
627
597
  "onClick"
628
598
  ];
629
- var _hoisted_3$23 = [
599
+ var _hoisted_3$24 = [
630
600
  "id",
631
601
  "placeholder",
632
602
  "disabled",
@@ -871,7 +841,7 @@ var BaseCombobox_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @_
871
841
  createElementVNode("label", {
872
842
  for: unref(id),
873
843
  class: "rk-combo-label"
874
- }, toDisplayString(__props.label), 9, _hoisted_1$41),
844
+ }, toDisplayString(__props.label), 9, _hoisted_1$42),
875
845
  createElementVNode("div", { class: normalizeClass(["rk-combo-field", multiple.value ? "is-multiple control" : ""]) }, [
876
846
  (openBlock(true), createElementBlock(Fragment, null, renderList(multiple.value ? chosenOptions.value : [], (option) => {
877
847
  return openBlock(), createElementBlock("span", {
@@ -884,7 +854,7 @@ var BaseCombobox_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @_
884
854
  "aria-label": __props.removeLabel(option.label),
885
855
  disabled: __props.disabled,
886
856
  onClick: ($event) => remove(option.value)
887
- }, " × ", 8, _hoisted_2$35)) : createCommentVNode("", true)]);
857
+ }, " × ", 8, _hoisted_2$36)) : createCommentVNode("", true)]);
888
858
  }), 128)),
889
859
  withDirectives(createElementVNode("input", {
890
860
  id: unref(id),
@@ -903,7 +873,7 @@ var BaseCombobox_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @_
903
873
  "aria-describedby": describedBy.value,
904
874
  onKeydown,
905
875
  onFocus: _cache[1] || (_cache[1] = ($event) => open.value = true)
906
- }, null, 42, _hoisted_3$23), [[vModelText, text.value]]),
876
+ }, null, 42, _hoisted_3$24), [[vModelText, text.value]]),
907
877
  createElementVNode("button", {
908
878
  type: "button",
909
879
  class: "rk-combo-toggle",
@@ -974,13 +944,13 @@ var BaseCombobox_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @_
974
944
  }), [["__scopeId", "data-v-aa2335fa"]]);
975
945
  //#endregion
976
946
  //#region src/components/BaseRadioGroup.vue?vue&type=script&setup=true&lang.ts
977
- var _hoisted_1$40 = ["aria-describedby"];
978
- var _hoisted_2$34 = [
947
+ var _hoisted_1$41 = ["aria-describedby"];
948
+ var _hoisted_2$35 = [
979
949
  "name",
980
950
  "value",
981
951
  "disabled"
982
952
  ];
983
- var _hoisted_3$22 = { class: "text-ink text-sm" };
953
+ var _hoisted_3$23 = { class: "text-ink text-sm" };
984
954
  //#endregion
985
955
  //#region src/components/BaseRadioGroup.vue
986
956
  var BaseRadioGroup_default = /* @__PURE__ */ defineComponent({
@@ -1024,7 +994,7 @@ var BaseRadioGroup_default = /* @__PURE__ */ defineComponent({
1024
994
  value: option.value,
1025
995
  disabled: option.disabled,
1026
996
  class: "accent-primary focus-visible:outline-primary size-4 shrink-0 focus-visible:outline-2 focus-visible:outline-offset-2"
1027
- }, null, 8, _hoisted_2$34), [[vModelRadio, unref(model)]]), createElementVNode("span", _hoisted_3$22, toDisplayString(option.label), 1)], 2);
997
+ }, null, 8, _hoisted_2$35), [[vModelRadio, unref(model)]]), createElementVNode("span", _hoisted_3$23, toDisplayString(option.label), 1)], 2);
1028
998
  }), 128)),
1029
999
  __props.error ? (openBlock(), createElementBlock("p", {
1030
1000
  key: 0,
@@ -1035,19 +1005,19 @@ var BaseRadioGroup_default = /* @__PURE__ */ defineComponent({
1035
1005
  id: hintId,
1036
1006
  class: "text-ink-soft text-xs"
1037
1007
  }, toDisplayString(__props.hint), 1)) : createCommentVNode("", true)
1038
- ], 8, _hoisted_1$40);
1008
+ ], 8, _hoisted_1$41);
1039
1009
  };
1040
1010
  }
1041
1011
  });
1042
1012
  //#endregion
1043
1013
  //#region src/components/BaseSelect.vue?vue&type=script&setup=true&lang.ts
1044
- var _hoisted_1$39 = { class: "relative" };
1045
- var _hoisted_2$33 = [
1014
+ var _hoisted_1$40 = { class: "relative" };
1015
+ var _hoisted_2$34 = [
1046
1016
  "id",
1047
1017
  "aria-invalid",
1048
1018
  "aria-describedby"
1049
1019
  ];
1050
- var _hoisted_3$21 = {
1020
+ var _hoisted_3$22 = {
1051
1021
  key: 0,
1052
1022
  value: void 0,
1053
1023
  disabled: ""
@@ -1088,7 +1058,7 @@ var BaseSelect_default = /* @__PURE__ */ defineComponent({
1088
1058
  "label-hidden": __props.labelHidden,
1089
1059
  size: __props.size
1090
1060
  }, {
1091
- default: withCtx(({ id, describedBy, invalid }) => [createElementVNode("div", _hoisted_1$39, [withDirectives(createElementVNode("select", {
1061
+ default: withCtx(({ id, describedBy, invalid }) => [createElementVNode("div", _hoisted_1$40, [withDirectives(createElementVNode("select", {
1092
1062
  id,
1093
1063
  "onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => model.value = $event),
1094
1064
  "aria-invalid": invalid,
@@ -1098,13 +1068,13 @@ var BaseSelect_default = /* @__PURE__ */ defineComponent({
1098
1068
  __props.variant === "unstyled" ? "" : SIZE_CLASS[__props.size],
1099
1069
  __props.variant !== "unstyled" && invalid ? "border-negative" : ""
1100
1070
  ]])
1101
- }, [__props.placeholder ? (openBlock(), createElementBlock("option", _hoisted_3$21, toDisplayString(__props.placeholder), 1)) : createCommentVNode("", true), (openBlock(true), createElementBlock(Fragment, null, renderList(__props.options, (option) => {
1071
+ }, [__props.placeholder ? (openBlock(), createElementBlock("option", _hoisted_3$22, toDisplayString(__props.placeholder), 1)) : createCommentVNode("", true), (openBlock(true), createElementBlock(Fragment, null, renderList(__props.options, (option) => {
1102
1072
  return openBlock(), createElementBlock("option", {
1103
1073
  key: option.value,
1104
1074
  value: option.value,
1105
1075
  disabled: option.disabled
1106
1076
  }, toDisplayString(option.label), 9, _hoisted_4$17);
1107
- }), 128))], 10, _hoisted_2$33), [[vModelSelect, model.value]]), createVNode(unref(ChevronDown), {
1077
+ }), 128))], 10, _hoisted_2$34), [[vModelSelect, model.value]]), createVNode(unref(ChevronDown), {
1108
1078
  class: "text-ink-soft pointer-events-none absolute top-1/2 right-3 size-4 -translate-y-1/2",
1109
1079
  "aria-hidden": "true"
1110
1080
  })])]),
@@ -1121,9 +1091,9 @@ var BaseSelect_default = /* @__PURE__ */ defineComponent({
1121
1091
  });
1122
1092
  //#endregion
1123
1093
  //#region src/components/BaseSlider.vue?vue&type=script&setup=true&lang.ts
1124
- var _hoisted_1$38 = { class: "rk-slider" };
1125
- var _hoisted_2$32 = { class: "rk-slider-head" };
1126
- var _hoisted_3$20 = ["for"];
1094
+ var _hoisted_1$39 = { class: "rk-slider" };
1095
+ var _hoisted_2$33 = { class: "rk-slider-head" };
1096
+ var _hoisted_3$21 = ["for"];
1127
1097
  var _hoisted_4$16 = ["for"];
1128
1098
  var _hoisted_5$10 = [
1129
1099
  "id",
@@ -1169,11 +1139,11 @@ var BaseSlider_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__P
1169
1139
  return span <= 0 ? 0 : (model.value - __props.min) / span * 100;
1170
1140
  });
1171
1141
  return (_ctx, _cache) => {
1172
- return openBlock(), createElementBlock("div", _hoisted_1$38, [
1173
- createElementVNode("div", _hoisted_2$32, [createElementVNode("label", {
1142
+ return openBlock(), createElementBlock("div", _hoisted_1$39, [
1143
+ createElementVNode("div", _hoisted_2$33, [createElementVNode("label", {
1174
1144
  for: unref(id),
1175
1145
  class: "rk-slider-label"
1176
- }, toDisplayString(__props.label), 9, _hoisted_3$20), __props.showValue ? (openBlock(), createElementBlock("output", {
1146
+ }, toDisplayString(__props.label), 9, _hoisted_3$21), __props.showValue ? (openBlock(), createElementBlock("output", {
1177
1147
  key: 0,
1178
1148
  for: unref(id),
1179
1149
  class: "rk-slider-value"
@@ -1207,8 +1177,8 @@ var BaseSlider_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__P
1207
1177
  }), [["__scopeId", "data-v-7fa2769b"]]);
1208
1178
  //#endregion
1209
1179
  //#region src/components/NumberInput.vue?vue&type=script&setup=true&lang.ts
1210
- var _hoisted_1$37 = ["aria-label", "disabled"];
1211
- var _hoisted_2$31 = [
1180
+ var _hoisted_1$38 = ["aria-label", "disabled"];
1181
+ var _hoisted_2$32 = [
1212
1182
  "id",
1213
1183
  "value",
1214
1184
  "aria-valuenow",
@@ -1218,7 +1188,7 @@ var _hoisted_2$31 = [
1218
1188
  "aria-describedby",
1219
1189
  "disabled"
1220
1190
  ];
1221
- var _hoisted_3$19 = ["aria-label", "disabled"];
1191
+ var _hoisted_3$20 = ["aria-label", "disabled"];
1222
1192
  //#endregion
1223
1193
  //#region src/components/NumberInput.vue
1224
1194
  var NumberInput_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PURE__ */ defineComponent({
@@ -1321,7 +1291,7 @@ var NumberInput_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__
1321
1291
  }, [createVNode(unref(Minus), {
1322
1292
  class: "size-4",
1323
1293
  "aria-hidden": "true"
1324
- })], 8, _hoisted_1$37),
1294
+ })], 8, _hoisted_1$38),
1325
1295
  createElementVNode("input", {
1326
1296
  id,
1327
1297
  value: draft.value,
@@ -1339,7 +1309,7 @@ var NumberInput_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__
1339
1309
  onInput,
1340
1310
  onBlur: commit,
1341
1311
  onKeydown
1342
- }, null, 40, _hoisted_2$31),
1312
+ }, null, 40, _hoisted_2$32),
1343
1313
  createElementVNode("button", {
1344
1314
  type: "button",
1345
1315
  class: "rk-number-step focus-ring",
@@ -1350,7 +1320,7 @@ var NumberInput_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__
1350
1320
  }, [createVNode(unref(Plus), {
1351
1321
  class: "size-4",
1352
1322
  "aria-hidden": "true"
1353
- })], 8, _hoisted_3$19)
1323
+ })], 8, _hoisted_3$20)
1354
1324
  ], 2)]),
1355
1325
  _: 1
1356
1326
  }, 8, [
@@ -1365,7 +1335,7 @@ var NumberInput_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__
1365
1335
  }), [["__scopeId", "data-v-082bd3d7"]]);
1366
1336
  //#endregion
1367
1337
  //#region src/components/SliderField.vue?vue&type=script&setup=true&lang.ts
1368
- var _hoisted_1$36 = { class: "rk-slider-field" };
1338
+ var _hoisted_1$37 = { class: "rk-slider-field" };
1369
1339
  //#endregion
1370
1340
  //#region src/components/SliderField.vue
1371
1341
  var SliderField_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PURE__ */ defineComponent({
@@ -1406,7 +1376,7 @@ var SliderField_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__
1406
1376
  }
1407
1377
  });
1408
1378
  return (_ctx, _cache) => {
1409
- return openBlock(), createElementBlock("div", _hoisted_1$36, [createVNode(BaseSlider_default, {
1379
+ return openBlock(), createElementBlock("div", _hoisted_1$37, [createVNode(BaseSlider_default, {
1410
1380
  modelValue: model.value,
1411
1381
  "onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => model.value = $event),
1412
1382
  label: __props.label,
@@ -1454,11 +1424,11 @@ var SliderField_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__
1454
1424
  }), [["__scopeId", "data-v-6ec3163a"]]);
1455
1425
  //#endregion
1456
1426
  //#region src/components/BaseSpinner.vue?vue&type=script&setup=true&lang.ts
1457
- var _hoisted_1$35 = {
1427
+ var _hoisted_1$36 = {
1458
1428
  class: "rk-spin-wrap",
1459
1429
  role: "status"
1460
1430
  };
1461
- var _hoisted_2$30 = { class: "rk-spin-label" };
1431
+ var _hoisted_2$31 = { class: "rk-spin-label" };
1462
1432
  //#endregion
1463
1433
  //#region src/components/BaseSpinner.vue
1464
1434
  var BaseSpinner_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PURE__ */ defineComponent({
@@ -1486,25 +1456,25 @@ var BaseSpinner_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__
1486
1456
  lg: "2.5rem"
1487
1457
  };
1488
1458
  return (_ctx, _cache) => {
1489
- return openBlock(), createElementBlock("span", _hoisted_1$35, [createElementVNode("span", {
1459
+ return openBlock(), createElementBlock("span", _hoisted_1$36, [createElementVNode("span", {
1490
1460
  class: "rk-spin",
1491
1461
  style: normalizeStyle({
1492
1462
  width: SIZES[__props.size],
1493
1463
  height: SIZES[__props.size]
1494
1464
  }),
1495
1465
  "aria-hidden": "true"
1496
- }, null, 4), createElementVNode("span", _hoisted_2$30, toDisplayString(__props.label), 1)]);
1466
+ }, null, 4), createElementVNode("span", _hoisted_2$31, toDisplayString(__props.label), 1)]);
1497
1467
  };
1498
1468
  }
1499
1469
  }), [["__scopeId", "data-v-842da62c"]]);
1500
1470
  //#endregion
1501
1471
  //#region src/components/BaseSwitch.vue?vue&type=script&setup=true&lang.ts
1502
- var _hoisted_1$34 = { class: "flex items-center justify-between gap-4" };
1503
- var _hoisted_2$29 = {
1472
+ var _hoisted_1$35 = { class: "flex items-center justify-between gap-4" };
1473
+ var _hoisted_2$30 = {
1504
1474
  key: 0,
1505
1475
  class: "min-w-0"
1506
1476
  };
1507
- var _hoisted_3$18 = ["id"];
1477
+ var _hoisted_3$19 = ["id"];
1508
1478
  var _hoisted_4$15 = [
1509
1479
  "aria-checked",
1510
1480
  "aria-labelledby",
@@ -1544,10 +1514,10 @@ var BaseSwitch_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__P
1544
1514
  if (!__props.disabled) model.value = !model.value;
1545
1515
  }
1546
1516
  return (_ctx, _cache) => {
1547
- return openBlock(), createElementBlock("div", _hoisted_1$34, [!__props.labelHidden ? (openBlock(), createElementBlock("span", _hoisted_2$29, [createElementVNode("span", {
1517
+ return openBlock(), createElementBlock("div", _hoisted_1$35, [!__props.labelHidden ? (openBlock(), createElementBlock("span", _hoisted_2$30, [createElementVNode("span", {
1548
1518
  id: unref(id),
1549
1519
  class: "text-ink block text-sm"
1550
- }, toDisplayString(__props.label), 9, _hoisted_3$18), __props.hint ? (openBlock(), createElementBlock("span", {
1520
+ }, toDisplayString(__props.label), 9, _hoisted_3$19), __props.hint ? (openBlock(), createElementBlock("span", {
1551
1521
  key: 0,
1552
1522
  id: hintId,
1553
1523
  class: "text-ink-soft mt-0.5 block text-xs"
@@ -1570,9 +1540,9 @@ var BaseSwitch_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__P
1570
1540
  }), [["__scopeId", "data-v-3f4400a0"]]);
1571
1541
  //#endregion
1572
1542
  //#region src/components/BaseTable.vue?vue&type=script&setup=true&lang.ts
1573
- var _hoisted_1$33 = ["aria-label"];
1574
- var _hoisted_2$28 = { class: "rk-table" };
1575
- var _hoisted_3$17 = { key: 0 };
1543
+ var _hoisted_1$34 = ["aria-label"];
1544
+ var _hoisted_2$29 = { class: "rk-table" };
1545
+ var _hoisted_3$18 = { key: 0 };
1576
1546
  var _hoisted_4$14 = { key: 1 };
1577
1547
  var _hoisted_5$9 = ["colspan"];
1578
1548
  //#endregion
@@ -1597,7 +1567,7 @@ var BaseTable_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PU
1597
1567
  tabindex: "0",
1598
1568
  role: "region",
1599
1569
  "aria-label": __props.caption
1600
- }, [createElementVNode("table", _hoisted_2$28, [
1570
+ }, [createElementVNode("table", _hoisted_2$29, [
1601
1571
  createElementVNode("caption", { class: normalizeClass(__props.captionHidden ? "rk-table-caption-hidden" : "rk-table-caption") }, toDisplayString(__props.caption), 3),
1602
1572
  createElementVNode("thead", null, [createElementVNode("tr", null, [(openBlock(true), createElementBlock(Fragment, null, renderList(__props.columns, (column) => {
1603
1573
  return openBlock(), createElementBlock("th", {
@@ -1606,7 +1576,7 @@ var BaseTable_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PU
1606
1576
  class: normalizeClass([column.align && `is-${column.align}`, column.nowrap && "is-nowrap"])
1607
1577
  }, toDisplayString(column.label), 3);
1608
1578
  }), 128))])]),
1609
- __props.rows.length > 0 ? (openBlock(), createElementBlock("tbody", _hoisted_3$17, [(openBlock(true), createElementBlock(Fragment, null, renderList(__props.rows, (row, index) => {
1579
+ __props.rows.length > 0 ? (openBlock(), createElementBlock("tbody", _hoisted_3$18, [(openBlock(true), createElementBlock(Fragment, null, renderList(__props.rows, (row, index) => {
1610
1580
  return openBlock(), createElementBlock("tr", { key: keyFor(row, index) }, [(openBlock(true), createElementBlock(Fragment, null, renderList(__props.columns, (column) => {
1611
1581
  return openBlock(), createElementBlock("td", {
1612
1582
  key: column.key,
@@ -1620,13 +1590,13 @@ var BaseTable_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PU
1620
1590
  colspan: __props.columns.length,
1621
1591
  class: "rk-table-empty"
1622
1592
  }, [renderSlot(_ctx.$slots, "empty", {}, void 0, true)], 8, _hoisted_5$9)])]))
1623
- ])], 8, _hoisted_1$33);
1593
+ ])], 8, _hoisted_1$34);
1624
1594
  };
1625
1595
  }
1626
1596
  }), [["__scopeId", "data-v-ab10e9fa"]]);
1627
1597
  //#endregion
1628
1598
  //#region src/components/BaseTextarea.vue?vue&type=script&setup=true&lang.ts
1629
- var _hoisted_1$32 = [
1599
+ var _hoisted_1$33 = [
1630
1600
  "id",
1631
1601
  "rows",
1632
1602
  "aria-invalid",
@@ -1672,7 +1642,7 @@ var BaseTextarea_default = /* @__PURE__ */ defineComponent({
1672
1642
  __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",
1673
1643
  "text-base",
1674
1644
  __props.variant !== "unstyled" && invalid ? "border-negative" : ""
1675
- ] }), null, 16, _hoisted_1$32), [[vModelText, unref(model)]])]),
1645
+ ] }), null, 16, _hoisted_1$33), [[vModelText, unref(model)]])]),
1676
1646
  _: 1
1677
1647
  }, 8, [
1678
1648
  "label",
@@ -1686,12 +1656,12 @@ var BaseTextarea_default = /* @__PURE__ */ defineComponent({
1686
1656
  });
1687
1657
  //#endregion
1688
1658
  //#region src/components/EmptyState.vue?vue&type=script&setup=true&lang.ts
1689
- var _hoisted_1$31 = { class: "flex flex-col items-center gap-3 px-6 py-10 text-center" };
1690
- var _hoisted_2$27 = {
1659
+ var _hoisted_1$32 = { class: "flex flex-col items-center gap-3 px-6 py-10 text-center" };
1660
+ var _hoisted_2$28 = {
1691
1661
  key: 0,
1692
1662
  class: "bg-muted text-primary rounded-card flex size-12 items-center justify-center"
1693
1663
  };
1694
- var _hoisted_3$16 = { class: "text-ink text-base font-semibold" };
1664
+ var _hoisted_3$17 = { class: "text-ink text-base font-semibold" };
1695
1665
  var _hoisted_4$13 = {
1696
1666
  key: 1,
1697
1667
  class: "text-ink-soft max-w-[36ch] text-sm"
@@ -1718,9 +1688,9 @@ var EmptyState_default = /* @__PURE__ */ defineComponent({
1718
1688
  * goes — the button that creates the first one.
1719
1689
  */
1720
1690
  return (_ctx, _cache) => {
1721
- return openBlock(), createElementBlock("div", _hoisted_1$31, [
1722
- _ctx.$slots.icon ? (openBlock(), createElementBlock("div", _hoisted_2$27, [renderSlot(_ctx.$slots, "icon")])) : createCommentVNode("", true),
1723
- createElementVNode("h3", _hoisted_3$16, toDisplayString(__props.title), 1),
1691
+ return openBlock(), createElementBlock("div", _hoisted_1$32, [
1692
+ _ctx.$slots.icon ? (openBlock(), createElementBlock("div", _hoisted_2$28, [renderSlot(_ctx.$slots, "icon")])) : createCommentVNode("", true),
1693
+ createElementVNode("h3", _hoisted_3$17, toDisplayString(__props.title), 1),
1724
1694
  __props.description ? (openBlock(), createElementBlock("p", _hoisted_4$13, toDisplayString(__props.description), 1)) : createCommentVNode("", true),
1725
1695
  _ctx.$slots.action ? (openBlock(), createElementBlock("div", _hoisted_5$8, [renderSlot(_ctx.$slots, "action")])) : createCommentVNode("", true)
1726
1696
  ]);
@@ -1789,9 +1759,9 @@ var PageContainer_default = /* @__PURE__ */ defineComponent({
1789
1759
  });
1790
1760
  //#endregion
1791
1761
  //#region src/components/PageHeader.vue?vue&type=script&setup=true&lang.ts
1792
- var _hoisted_1$30 = { class: "grid h-12 shrink-0 grid-cols-[2.5rem_1fr_2.5rem] items-center" };
1793
- var _hoisted_2$26 = { class: "justify-self-start" };
1794
- var _hoisted_3$15 = { class: "text-ink flex min-w-0 justify-center text-base font-semibold tabular-nums" };
1762
+ var _hoisted_1$31 = { class: "grid h-12 shrink-0 grid-cols-[2.5rem_1fr_2.5rem] items-center" };
1763
+ var _hoisted_2$27 = { class: "justify-self-start" };
1764
+ var _hoisted_3$16 = { class: "text-ink flex min-w-0 justify-center text-base font-semibold tabular-nums" };
1795
1765
  var _hoisted_4$12 = { class: "truncate" };
1796
1766
  var _hoisted_5$7 = { class: "justify-self-end" };
1797
1767
  //#endregion
@@ -1810,9 +1780,9 @@ var PageHeader_default = /* @__PURE__ */ defineComponent({
1810
1780
  * each other.
1811
1781
  */
1812
1782
  return (_ctx, _cache) => {
1813
- return openBlock(), createElementBlock("header", _hoisted_1$30, [
1814
- createElementVNode("div", _hoisted_2$26, [renderSlot(_ctx.$slots, "left")]),
1815
- createElementVNode("h1", _hoisted_3$15, [renderSlot(_ctx.$slots, "title", {}, () => [createElementVNode("span", _hoisted_4$12, toDisplayString(__props.title), 1)])]),
1783
+ return openBlock(), createElementBlock("header", _hoisted_1$31, [
1784
+ createElementVNode("div", _hoisted_2$27, [renderSlot(_ctx.$slots, "left")]),
1785
+ createElementVNode("h1", _hoisted_3$16, [renderSlot(_ctx.$slots, "title", {}, () => [createElementVNode("span", _hoisted_4$12, toDisplayString(__props.title), 1)])]),
1816
1786
  createElementVNode("div", _hoisted_5$7, [renderSlot(_ctx.$slots, "right")])
1817
1787
  ]);
1818
1788
  };
@@ -1820,7 +1790,7 @@ var PageHeader_default = /* @__PURE__ */ defineComponent({
1820
1790
  });
1821
1791
  //#endregion
1822
1792
  //#region src/components/ProgressBar.vue?vue&type=script&setup=true&lang.ts
1823
- var _hoisted_1$29 = ["aria-valuenow", "aria-label"];
1793
+ var _hoisted_1$30 = ["aria-valuenow", "aria-label"];
1824
1794
  //#endregion
1825
1795
  //#region src/components/ProgressBar.vue
1826
1796
  var ProgressBar_default = /* @__PURE__ */ defineComponent({
@@ -1852,18 +1822,18 @@ var ProgressBar_default = /* @__PURE__ */ defineComponent({
1852
1822
  }, [createElementVNode("div", {
1853
1823
  class: "bg-primary h-full rounded-full transition-[width] duration-700 ease-out",
1854
1824
  style: normalizeStyle({ width: `${portion.value}%` })
1855
- }, null, 4)], 10, _hoisted_1$29);
1825
+ }, null, 4)], 10, _hoisted_1$30);
1856
1826
  };
1857
1827
  }
1858
1828
  });
1859
1829
  //#endregion
1860
1830
  //#region src/components/PriceCard.vue?vue&type=script&setup=true&lang.ts
1861
- var _hoisted_1$28 = {
1831
+ var _hoisted_1$29 = {
1862
1832
  key: 0,
1863
1833
  class: "bg-primary rounded-cell text-on-primary absolute -top-3 left-7 px-3 py-1 text-[0.7rem] font-semibold"
1864
1834
  };
1865
- var _hoisted_2$25 = { class: "flex items-start justify-between gap-4" };
1866
- var _hoisted_3$14 = { class: "text-ink mt-5 text-lg font-semibold" };
1835
+ var _hoisted_2$26 = { class: "flex items-start justify-between gap-4" };
1836
+ var _hoisted_3$15 = { class: "text-ink mt-5 text-lg font-semibold" };
1867
1837
  var _hoisted_4$11 = {
1868
1838
  key: 1,
1869
1839
  class: "text-ink-soft mt-1.5 text-sm leading-relaxed"
@@ -1933,15 +1903,15 @@ var PriceCard_default = /* @__PURE__ */ defineComponent({
1933
1903
  const palette = computed(() => TONE[__props.tone]);
1934
1904
  return (_ctx, _cache) => {
1935
1905
  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"]]) }, [
1936
- __props.badge && __props.recommended ? (openBlock(), createElementBlock("span", _hoisted_1$28, toDisplayString(__props.badge), 1)) : createCommentVNode("", true),
1937
- createElementVNode("div", _hoisted_2$25, [_ctx.$slots.icon ? (openBlock(), createElementBlock("span", {
1906
+ __props.badge && __props.recommended ? (openBlock(), createElementBlock("span", _hoisted_1$29, toDisplayString(__props.badge), 1)) : createCommentVNode("", true),
1907
+ createElementVNode("div", _hoisted_2$26, [_ctx.$slots.icon ? (openBlock(), createElementBlock("span", {
1938
1908
  key: 0,
1939
1909
  class: normalizeClass(["rounded-card grid size-11 place-items-center text-xl", palette.value.icon])
1940
1910
  }, [renderSlot(_ctx.$slots, "icon")], 2)) : createCommentVNode("", true), __props.chip ? (openBlock(), createElementBlock("span", {
1941
1911
  key: 1,
1942
1912
  class: normalizeClass(["rounded-cell ml-auto px-2.5 py-1 text-[0.7rem] font-medium", palette.value.soft])
1943
1913
  }, toDisplayString(__props.chip), 3)) : createCommentVNode("", true)]),
1944
- createElementVNode("h3", _hoisted_3$14, toDisplayString(__props.name), 1),
1914
+ createElementVNode("h3", _hoisted_3$15, toDisplayString(__props.name), 1),
1945
1915
  __props.lead ? (openBlock(), createElementBlock("p", _hoisted_4$11, toDisplayString(__props.lead), 1)) : createCommentVNode("", true),
1946
1916
  createElementVNode("p", _hoisted_5$6, [createElementVNode("span", _hoisted_6$5, toDisplayString(__props.price), 1), __props.period ? (openBlock(), createElementBlock("span", _hoisted_7$3, toDisplayString(__props.period), 1)) : createCommentVNode("", true)]),
1947
1917
  __props.note ? (openBlock(), createElementBlock("p", _hoisted_8$2, toDisplayString(__props.note), 1)) : createCommentVNode("", true),
@@ -1958,8 +1928,8 @@ var PriceCard_default = /* @__PURE__ */ defineComponent({
1958
1928
  });
1959
1929
  //#endregion
1960
1930
  //#region src/components/ToneDot.vue?vue&type=script&setup=true&lang.ts
1961
- var _hoisted_1$27 = { class: "inline-flex items-center gap-1.5" };
1962
- var _hoisted_2$24 = {
1931
+ var _hoisted_1$28 = { class: "inline-flex items-center gap-1.5" };
1932
+ var _hoisted_2$25 = {
1963
1933
  key: 0,
1964
1934
  class: "text-ink-soft text-xs font-medium"
1965
1935
  };
@@ -1980,13 +1950,13 @@ var ToneDot_default = /* @__PURE__ */ defineComponent({
1980
1950
  * priorities — without this component knowing about any of them.
1981
1951
  */
1982
1952
  return (_ctx, _cache) => {
1983
- return openBlock(), createElementBlock("span", _hoisted_1$27, [createElementVNode("span", { class: normalizeClass(["size-2 rounded-full", __props.fill]) }, null, 2), __props.label ? (openBlock(), createElementBlock("span", _hoisted_2$24, toDisplayString(__props.label), 1)) : createCommentVNode("", true)]);
1953
+ return openBlock(), createElementBlock("span", _hoisted_1$28, [createElementVNode("span", { class: normalizeClass(["size-2 rounded-full", __props.fill]) }, null, 2), __props.label ? (openBlock(), createElementBlock("span", _hoisted_2$25, toDisplayString(__props.label), 1)) : createCommentVNode("", true)]);
1984
1954
  };
1985
1955
  }
1986
1956
  });
1987
1957
  //#endregion
1988
1958
  //#region src/components/SectionHeading.vue?vue&type=script&setup=true&lang.ts
1989
- var _hoisted_1$26 = {
1959
+ var _hoisted_1$27 = {
1990
1960
  key: 0,
1991
1961
  class: "text-ink-soft text-xs tabular-nums"
1992
1962
  };
@@ -2004,15 +1974,15 @@ var SectionHeading_default = /* @__PURE__ */ defineComponent({
2004
1974
  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]) }, [
2005
1975
  createVNode(ToneDot_default, { fill: __props.tone.fill }, null, 8, ["fill"]),
2006
1976
  createElementVNode("span", { class: normalizeClass(["text-xs font-semibold tracking-wide uppercase", __props.tone.text]) }, toDisplayString(__props.label), 3),
2007
- __props.count > 0 ? (openBlock(), createElementBlock("span", _hoisted_1$26, toDisplayString(__props.count), 1)) : createCommentVNode("", true)
1977
+ __props.count > 0 ? (openBlock(), createElementBlock("span", _hoisted_1$27, toDisplayString(__props.count), 1)) : createCommentVNode("", true)
2008
1978
  ], 2);
2009
1979
  };
2010
1980
  }
2011
1981
  });
2012
1982
  //#endregion
2013
1983
  //#region src/components/SegmentedControl.vue?vue&type=script&setup=true&lang.ts
2014
- var _hoisted_1$25 = { class: "bg-muted rounded-card flex w-full gap-1 p-1" };
2015
- var _hoisted_2$23 = ["value", "name"];
1984
+ var _hoisted_1$26 = { class: "bg-muted rounded-card flex w-full gap-1 p-1" };
1985
+ var _hoisted_2$24 = ["value", "name"];
2016
1986
  //#endregion
2017
1987
  //#region src/components/SegmentedControl.vue
2018
1988
  var SegmentedControl_default = /* @__PURE__ */ defineComponent({
@@ -2026,7 +1996,7 @@ var SegmentedControl_default = /* @__PURE__ */ defineComponent({
2026
1996
  const model = useModel(__props, "modelValue");
2027
1997
  const name = useId();
2028
1998
  return (_ctx, _cache) => {
2029
- return openBlock(), createElementBlock("div", _hoisted_1$25, [(openBlock(true), createElementBlock(Fragment, null, renderList(__props.options, (option) => {
1999
+ return openBlock(), createElementBlock("div", _hoisted_1$26, [(openBlock(true), createElementBlock(Fragment, null, renderList(__props.options, (option) => {
2030
2000
  return openBlock(), createElementBlock("label", {
2031
2001
  key: String(option.value),
2032
2002
  class: "flex-1 cursor-pointer"
@@ -2036,18 +2006,18 @@ var SegmentedControl_default = /* @__PURE__ */ defineComponent({
2036
2006
  value: option.value,
2037
2007
  name: unref(name),
2038
2008
  class: "peer sr-only"
2039
- }, null, 8, _hoisted_2$23), [[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)]);
2009
+ }, null, 8, _hoisted_2$24), [[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)]);
2040
2010
  }), 128))]);
2041
2011
  };
2042
2012
  }
2043
2013
  });
2044
2014
  //#endregion
2045
2015
  //#region src/components/SkeletonList.vue?vue&type=script&setup=true&lang.ts
2046
- var _hoisted_1$24 = {
2016
+ var _hoisted_1$25 = {
2047
2017
  role: "status",
2048
2018
  class: "flex flex-col gap-1"
2049
2019
  };
2050
- var _hoisted_2$22 = { class: "sr-only" };
2020
+ var _hoisted_2$23 = { class: "sr-only" };
2051
2021
  //#endregion
2052
2022
  //#region src/components/SkeletonList.vue
2053
2023
  var SkeletonList_default = /* @__PURE__ */ defineComponent({
@@ -2061,7 +2031,7 @@ var SkeletonList_default = /* @__PURE__ */ defineComponent({
2061
2031
  /** A length starts with a digit, a dot, or opens a CSS function. */
2062
2032
  const isLength = computed(() => /^(?:[.\d]|calc\(|var\(|clamp\(|min\(|max\()/.test(__props.rowHeight));
2063
2033
  return (_ctx, _cache) => {
2064
- return openBlock(), createElementBlock("div", _hoisted_1$24, [createElementVNode("span", _hoisted_2$22, toDisplayString(__props.label), 1), (openBlock(true), createElementBlock(Fragment, null, renderList(__props.rows, (row) => {
2034
+ return openBlock(), createElementBlock("div", _hoisted_1$25, [createElementVNode("span", _hoisted_2$23, toDisplayString(__props.label), 1), (openBlock(true), createElementBlock(Fragment, null, renderList(__props.rows, (row) => {
2065
2035
  return openBlock(), createElementBlock("div", {
2066
2036
  key: row,
2067
2037
  class: normalizeClass(["bg-muted rounded-card animate-pulse", isLength.value ? void 0 : __props.rowHeight]),
@@ -2074,9 +2044,9 @@ var SkeletonList_default = /* @__PURE__ */ defineComponent({
2074
2044
  });
2075
2045
  //#endregion
2076
2046
  //#region src/components/StatCard.vue?vue&type=script&setup=true&lang.ts
2077
- var _hoisted_1$23 = { class: "surface rounded-card flex flex-1 flex-col gap-0.5 p-3" };
2078
- var _hoisted_2$21 = { class: "flex items-baseline gap-1" };
2079
- var _hoisted_3$13 = { class: "text-ink text-xl font-semibold tabular-nums" };
2047
+ var _hoisted_1$24 = { class: "surface rounded-card flex flex-1 flex-col gap-0.5 p-3" };
2048
+ var _hoisted_2$22 = { class: "flex items-baseline gap-1" };
2049
+ var _hoisted_3$14 = { class: "text-ink text-xl font-semibold tabular-nums" };
2080
2050
  var _hoisted_4$10 = { class: "text-ink-soft text-xs" };
2081
2051
  //#endregion
2082
2052
  //#region src/components/StatCard.vue
@@ -2094,7 +2064,7 @@ var StatCard_default = /* @__PURE__ */ defineComponent({
2094
2064
  flat: ArrowRight
2095
2065
  };
2096
2066
  return (_ctx, _cache) => {
2097
- return openBlock(), createElementBlock("div", _hoisted_1$23, [createElementVNode("div", _hoisted_2$21, [createElementVNode("span", _hoisted_3$13, toDisplayString(__props.value), 1), __props.trend ? (openBlock(), createBlock(resolveDynamicComponent(TREND_ICON[__props.trend]), {
2067
+ return openBlock(), createElementBlock("div", _hoisted_1$24, [createElementVNode("div", _hoisted_2$22, [createElementVNode("span", _hoisted_3$14, toDisplayString(__props.value), 1), __props.trend ? (openBlock(), createBlock(resolveDynamicComponent(TREND_ICON[__props.trend]), {
2098
2068
  key: 0,
2099
2069
  class: "text-ink-soft size-3"
2100
2070
  })) : createCommentVNode("", true)]), createElementVNode("span", _hoisted_4$10, toDisplayString(__props.label), 1)]);
@@ -2103,13 +2073,13 @@ var StatCard_default = /* @__PURE__ */ defineComponent({
2103
2073
  });
2104
2074
  //#endregion
2105
2075
  //#region src/components/ToastHost.vue?vue&type=script&setup=true&lang.ts
2106
- var _hoisted_1$22 = [
2076
+ var _hoisted_1$23 = [
2107
2077
  "onMouseenter",
2108
2078
  "onMouseleave",
2109
2079
  "onFocusin",
2110
2080
  "onFocusout"
2111
2081
  ];
2112
- var _hoisted_2$20 = { class: "flex-1 text-sm leading-snug" };
2082
+ var _hoisted_2$21 = { class: "flex-1 text-sm leading-snug" };
2113
2083
  //#endregion
2114
2084
  //#region src/components/ToastHost.vue
2115
2085
  var ToastHost_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PURE__ */ defineComponent({
@@ -2170,7 +2140,7 @@ var ToastHost_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PU
2170
2140
  class: normalizeClass(["mt-0.5 size-5 shrink-0", TONE_CLASS[toast.tone]]),
2171
2141
  "aria-hidden": "true"
2172
2142
  }, null, 8, ["class"])),
2173
- createElementVNode("p", _hoisted_2$20, toDisplayString(toast.message), 1),
2143
+ createElementVNode("p", _hoisted_2$21, toDisplayString(toast.message), 1),
2174
2144
  toast.action ? (openBlock(), createBlock(BaseButton_default, {
2175
2145
  key: 0,
2176
2146
  variant: "link",
@@ -2193,7 +2163,7 @@ var ToastHost_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PU
2193
2163
  default: withCtx(() => [createVNode(unref(X), { class: "size-4" })]),
2194
2164
  _: 1
2195
2165
  }, 8, ["aria-label", "onClick"])
2196
- ], 40, _hoisted_1$22);
2166
+ ], 40, _hoisted_1$23);
2197
2167
  }), 128))]),
2198
2168
  _: 1
2199
2169
  })], 2)])) : createCommentVNode("", true);
@@ -2202,8 +2172,8 @@ var ToastHost_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PU
2202
2172
  }), [["__scopeId", "data-v-737eb240"]]);
2203
2173
  //#endregion
2204
2174
  //#region src/components/LocaleLinks.vue?vue&type=script&setup=true&lang.ts
2205
- var _hoisted_1$21 = ["aria-label"];
2206
- var _hoisted_2$19 = [
2175
+ var _hoisted_1$22 = ["aria-label"];
2176
+ var _hoisted_2$20 = [
2207
2177
  "lang",
2208
2178
  "aria-pressed",
2209
2179
  "onClick"
@@ -2247,16 +2217,16 @@ var LocaleLinks_default = /* @__PURE__ */ defineComponent({
2247
2217
  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"]),
2248
2218
  "aria-pressed": preference.value === locale,
2249
2219
  onClick: ($event) => preference.value = locale
2250
- }, toDisplayString(__props.labels[locale]), 11, _hoisted_2$19);
2251
- }), 128))], 8, _hoisted_1$21);
2220
+ }, toDisplayString(__props.labels[locale]), 11, _hoisted_2$20);
2221
+ }), 128))], 8, _hoisted_1$22);
2252
2222
  };
2253
2223
  }
2254
2224
  });
2255
2225
  //#endregion
2256
2226
  //#region src/components/TabBar.vue?vue&type=script&setup=true&lang.ts
2257
- var _hoisted_1$20 = { class: "tab-bar" };
2258
- var _hoisted_2$18 = ["aria-label"];
2259
- var _hoisted_3$12 = { class: "tab-icon-slot" };
2227
+ var _hoisted_1$21 = { class: "tab-bar" };
2228
+ var _hoisted_2$19 = ["aria-label"];
2229
+ var _hoisted_3$13 = { class: "tab-icon-slot" };
2260
2230
  var _hoisted_4$9 = { class: "tab-label" };
2261
2231
  //#endregion
2262
2232
  //#region src/components/TabBar.vue
@@ -2269,7 +2239,7 @@ var TabBar_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PURE_
2269
2239
  },
2270
2240
  setup(__props) {
2271
2241
  return (_ctx, _cache) => {
2272
- return openBlock(), createElementBlock("header", _hoisted_1$20, [createElementVNode("nav", {
2242
+ return openBlock(), createElementBlock("header", _hoisted_1$21, [createElementVNode("nav", {
2273
2243
  class: "tab-bar-inner",
2274
2244
  "aria-label": __props.label || void 0
2275
2245
  }, [(openBlock(true), createElementBlock(Fragment, null, renderList(__props.items, (item) => {
@@ -2280,21 +2250,21 @@ var TabBar_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PURE_
2280
2250
  "aria-current": item.key === __props.active ? "page" : void 0,
2281
2251
  onClick: _cache[0] || (_cache[0] = ($event) => unref(tapFeedback)())
2282
2252
  }, {
2283
- default: withCtx(() => [createElementVNode("span", _hoisted_3$12, [(openBlock(), createBlock(resolveDynamicComponent(item.icon), { class: "tab-icon" }))]), createElementVNode("span", _hoisted_4$9, toDisplayString(item.label), 1)]),
2253
+ default: withCtx(() => [createElementVNode("span", _hoisted_3$13, [(openBlock(), createBlock(resolveDynamicComponent(item.icon), { class: "tab-icon" }))]), createElementVNode("span", _hoisted_4$9, toDisplayString(item.label), 1)]),
2284
2254
  _: 2
2285
2255
  }, 1032, [
2286
2256
  "to",
2287
2257
  "class",
2288
2258
  "aria-current"
2289
2259
  ]);
2290
- }), 128))], 8, _hoisted_2$18)]);
2260
+ }), 128))], 8, _hoisted_2$19)]);
2291
2261
  };
2292
2262
  }
2293
2263
  }), [["__scopeId", "data-v-a76891c4"]]);
2294
2264
  //#endregion
2295
2265
  //#region src/components/AvatarStack.vue?vue&type=script&setup=true&lang.ts
2296
- var _hoisted_1$19 = ["aria-label"];
2297
- var _hoisted_2$17 = {
2266
+ var _hoisted_1$20 = ["aria-label"];
2267
+ var _hoisted_2$18 = {
2298
2268
  key: 0,
2299
2269
  class: "rk-stack-item rk-stack-rest",
2300
2270
  "aria-hidden": "true"
@@ -2332,15 +2302,15 @@ var AvatarStack_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__
2332
2302
  "src",
2333
2303
  "size"
2334
2304
  ])]);
2335
- }), 128)), rest.value ? (openBlock(), createElementBlock("span", _hoisted_2$17, "+" + toDisplayString(rest.value), 1)) : createCommentVNode("", true)], 10, _hoisted_1$19);
2305
+ }), 128)), rest.value ? (openBlock(), createElementBlock("span", _hoisted_2$18, "+" + toDisplayString(rest.value), 1)) : createCommentVNode("", true)], 10, _hoisted_1$20);
2336
2306
  };
2337
2307
  }
2338
2308
  }), [["__scopeId", "data-v-db629481"]]);
2339
2309
  //#endregion
2340
2310
  //#region src/components/BaseCalendar.vue?vue&type=script&setup=true&lang.ts
2341
- var _hoisted_1$18 = { class: "rk-cal" };
2342
- var _hoisted_2$16 = { class: "rk-cal-head" };
2343
- var _hoisted_3$11 = ["aria-label"];
2311
+ var _hoisted_1$19 = { class: "rk-cal" };
2312
+ var _hoisted_2$17 = { class: "rk-cal-head" };
2313
+ var _hoisted_3$12 = ["aria-label"];
2344
2314
  var _hoisted_4$8 = ["aria-expanded"];
2345
2315
  var _hoisted_5$5 = ["aria-label"];
2346
2316
  var _hoisted_6$4 = {
@@ -2535,8 +2505,8 @@ var BaseCalendar_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @_
2535
2505
  if (next) focused.value = next;
2536
2506
  });
2537
2507
  return (_ctx, _cache) => {
2538
- return openBlock(), createElementBlock("div", _hoisted_1$18, [
2539
- createElementVNode("div", _hoisted_2$16, [
2508
+ return openBlock(), createElementBlock("div", _hoisted_1$19, [
2509
+ createElementVNode("div", _hoisted_2$17, [
2540
2510
  createElementVNode("button", {
2541
2511
  type: "button",
2542
2512
  class: "rk-cal-arrow focus-ring",
@@ -2545,7 +2515,7 @@ var BaseCalendar_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @_
2545
2515
  }, [createVNode(unref(ChevronLeft), {
2546
2516
  class: "size-4",
2547
2517
  "aria-hidden": "true"
2548
- })], 8, _hoisted_3$11),
2518
+ })], 8, _hoisted_3$12),
2549
2519
  createElementVNode("button", {
2550
2520
  type: "button",
2551
2521
  class: "rk-cal-title focus-ring",
@@ -2618,8 +2588,8 @@ var BaseCalendar_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @_
2618
2588
  }), [["__scopeId", "data-v-30197a85"]]);
2619
2589
  //#endregion
2620
2590
  //#region src/components/BaseChip.vue?vue&type=script&setup=true&lang.ts
2621
- var _hoisted_1$17 = { class: "truncate" };
2622
- var _hoisted_2$15 = ["aria-label", "disabled"];
2591
+ var _hoisted_1$18 = { class: "truncate" };
2592
+ var _hoisted_2$16 = ["aria-label", "disabled"];
2623
2593
  //#endregion
2624
2594
  //#region src/components/BaseChip.vue
2625
2595
  var BaseChip_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PURE__ */ defineComponent({
@@ -2656,7 +2626,7 @@ var BaseChip_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PUR
2656
2626
  key: 0,
2657
2627
  class: "size-3.5 shrink-0",
2658
2628
  "aria-hidden": "true"
2659
- })) : createCommentVNode("", true), createElementVNode("span", _hoisted_1$17, toDisplayString(__props.label), 1)]),
2629
+ })) : createCommentVNode("", true), createElementVNode("span", _hoisted_1$18, toDisplayString(__props.label), 1)]),
2660
2630
  _: 1
2661
2631
  }, 8, [
2662
2632
  "type",
@@ -2673,18 +2643,18 @@ var BaseChip_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PUR
2673
2643
  }, [createVNode(unref(X), {
2674
2644
  class: "size-3",
2675
2645
  "aria-hidden": "true"
2676
- })], 8, _hoisted_2$15)) : createCommentVNode("", true)], 2);
2646
+ })], 8, _hoisted_2$16)) : createCommentVNode("", true)], 2);
2677
2647
  };
2678
2648
  }
2679
2649
  }), [["__scopeId", "data-v-c94a820d"]]);
2680
2650
  //#endregion
2681
2651
  //#region src/components/BaseKbd.vue?vue&type=script&setup=true&lang.ts
2682
- var _hoisted_1$16 = {
2652
+ var _hoisted_1$17 = {
2683
2653
  key: 0,
2684
2654
  class: "rk-kbd-joiner",
2685
2655
  "aria-hidden": "true"
2686
2656
  };
2687
- var _hoisted_2$14 = { class: "rk-kbd-key control" };
2657
+ var _hoisted_2$15 = { class: "rk-kbd-key control" };
2688
2658
  //#endregion
2689
2659
  //#region src/components/BaseKbd.vue
2690
2660
  var BaseKbd_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PURE__ */ defineComponent({
@@ -2698,7 +2668,7 @@ var BaseKbd_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PURE
2698
2668
  const list = computed(() => typeof __props.keys === "string" ? [__props.keys] : __props.keys);
2699
2669
  return (_ctx, _cache) => {
2700
2670
  return openBlock(), createElementBlock("span", { class: normalizeClass(["rk-kbd", `is-${__props.size}`]) }, [(openBlock(true), createElementBlock(Fragment, null, renderList(list.value, (key, index) => {
2701
- return openBlock(), createElementBlock(Fragment, { key }, [index > 0 && __props.joiner ? (openBlock(), createElementBlock("span", _hoisted_1$16, toDisplayString(__props.joiner), 1)) : createCommentVNode("", true), createElementVNode("kbd", _hoisted_2$14, toDisplayString(key), 1)], 64);
2671
+ return openBlock(), createElementBlock(Fragment, { key }, [index > 0 && __props.joiner ? (openBlock(), createElementBlock("span", _hoisted_1$17, toDisplayString(__props.joiner), 1)) : createCommentVNode("", true), createElementVNode("kbd", _hoisted_2$15, toDisplayString(key), 1)], 64);
2702
2672
  }), 128))], 2);
2703
2673
  };
2704
2674
  }
@@ -2737,7 +2707,7 @@ var BaseLink_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PUR
2737
2707
  }), [["__scopeId", "data-v-88581007"]]);
2738
2708
  //#endregion
2739
2709
  //#region src/components/BaseRating.vue?vue&type=script&setup=true&lang.ts
2740
- var _hoisted_1$15 = [
2710
+ var _hoisted_1$16 = [
2741
2711
  "role",
2742
2712
  "aria-label",
2743
2713
  "tabindex",
@@ -2746,7 +2716,7 @@ var _hoisted_1$15 = [
2746
2716
  "aria-valuemax",
2747
2717
  "aria-valuetext"
2748
2718
  ];
2749
- var _hoisted_2$13 = ["onClick", "onPointerenter"];
2719
+ var _hoisted_2$14 = ["onClick", "onPointerenter"];
2750
2720
  //#endregion
2751
2721
  //#region src/components/BaseRating.vue
2752
2722
  var BaseRating_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PURE__ */ defineComponent({
@@ -2811,15 +2781,15 @@ var BaseRating_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__P
2811
2781
  "aria-hidden": "true",
2812
2782
  onClick: ($event) => __props.readonly ? void 0 : pick(star),
2813
2783
  onPointerenter: ($event) => __props.readonly ? void 0 : hovered.value = star
2814
- }, [createVNode(unref(Star), { class: "rk-rating-icon" })], 42, _hoisted_2$13);
2815
- }), 128))], 42, _hoisted_1$15);
2784
+ }, [createVNode(unref(Star), { class: "rk-rating-icon" })], 42, _hoisted_2$14);
2785
+ }), 128))], 42, _hoisted_1$16);
2816
2786
  };
2817
2787
  }
2818
2788
  }), [["__scopeId", "data-v-3118ad6b"]]);
2819
2789
  //#endregion
2820
2790
  //#region src/components/BaseSeparator.vue?vue&type=script&setup=true&lang.ts
2821
- var _hoisted_1$14 = { class: "rk-sep-label" };
2822
- var _hoisted_2$12 = ["aria-orientation"];
2791
+ var _hoisted_1$15 = { class: "rk-sep-label" };
2792
+ var _hoisted_2$13 = ["aria-orientation"];
2823
2793
  //#endregion
2824
2794
  //#region src/components/BaseSeparator.vue
2825
2795
  var BaseSeparator_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PURE__ */ defineComponent({
@@ -2847,28 +2817,28 @@ var BaseSeparator_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @
2847
2817
  "aria-hidden": "true"
2848
2818
  }, [
2849
2819
  _cache[0] || (_cache[0] = createElementVNode("span", { class: "rk-sep-line" }, null, -1)),
2850
- createElementVNode("span", _hoisted_1$14, toDisplayString(__props.label), 1),
2820
+ createElementVNode("span", _hoisted_1$15, toDisplayString(__props.label), 1),
2851
2821
  _cache[1] || (_cache[1] = createElementVNode("span", { class: "rk-sep-line" }, null, -1))
2852
2822
  ], 2)) : (openBlock(), createElementBlock("div", {
2853
2823
  key: 1,
2854
2824
  class: normalizeClass(["rk-sep", [`is-${__props.orientation}`, `space-${__props.spacing}`]]),
2855
2825
  role: "separator",
2856
2826
  "aria-orientation": __props.orientation
2857
- }, null, 10, _hoisted_2$12));
2827
+ }, null, 10, _hoisted_2$13));
2858
2828
  };
2859
2829
  }
2860
2830
  }), [["__scopeId", "data-v-9f8cc9aa"]]);
2861
2831
  //#endregion
2862
2832
  //#region src/components/ColorPicker.vue?vue&type=script&setup=true&lang.ts
2863
- var _hoisted_1$13 = { class: "rk-color-row" };
2864
- var _hoisted_2$11 = [
2833
+ var _hoisted_1$14 = { class: "rk-color-row" };
2834
+ var _hoisted_2$12 = [
2865
2835
  "id",
2866
2836
  "value",
2867
2837
  "disabled",
2868
2838
  "aria-describedby",
2869
2839
  "aria-invalid"
2870
2840
  ];
2871
- var _hoisted_3$10 = [
2841
+ var _hoisted_3$11 = [
2872
2842
  "aria-label",
2873
2843
  "disabled",
2874
2844
  "onKeydown"
@@ -2951,7 +2921,7 @@ var ColorPicker_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__
2951
2921
  "label-hidden": __props.labelHidden,
2952
2922
  class: "rk-color"
2953
2923
  }, {
2954
- default: withCtx(({ id, describedBy, invalid }) => [createElementVNode("div", _hoisted_1$13, [
2924
+ default: withCtx(({ id, describedBy, invalid }) => [createElementVNode("div", _hoisted_1$14, [
2955
2925
  createElementVNode("span", {
2956
2926
  class: "rk-color-well",
2957
2927
  style: normalizeStyle(current.value ? { "--rk-color": current.value } : void 0)
@@ -2964,7 +2934,7 @@ var ColorPicker_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__
2964
2934
  "aria-describedby": describedBy,
2965
2935
  "aria-invalid": invalid,
2966
2936
  onInput: _cache[0] || (_cache[0] = ($event) => set($event.target.value))
2967
- }, null, 40, _hoisted_2$11)], 4),
2937
+ }, null, 40, _hoisted_2$12)], 4),
2968
2938
  __props.hexLabel ? withDirectives((openBlock(), createElementBlock("input", {
2969
2939
  key: 0,
2970
2940
  "onUpdate:modelValue": _cache[1] || (_cache[1] = ($event) => draft.value = $event),
@@ -2976,7 +2946,7 @@ var ColorPicker_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__
2976
2946
  disabled: __props.disabled,
2977
2947
  onBlur: commit,
2978
2948
  onKeydown: withKeys(withModifiers(commit, ["prevent"]), ["enter"])
2979
- }, null, 40, _hoisted_3$10)), [[vModelText, draft.value]]) : createCommentVNode("", true),
2949
+ }, null, 40, _hoisted_3$11)), [[vModelText, draft.value]]) : createCommentVNode("", true),
2980
2950
  __props.swatches.length > 0 ? (openBlock(), createElementBlock("ul", _hoisted_4$7, [(openBlock(true), createElementBlock(Fragment, null, renderList(__props.swatches, (swatch) => {
2981
2951
  return openBlock(), createElementBlock("li", { key: swatch.value }, [createElementVNode("button", {
2982
2952
  type: "button",
@@ -3001,9 +2971,9 @@ var ColorPicker_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__
3001
2971
  }), [["__scopeId", "data-v-5ca23aa9"]]);
3002
2972
  //#endregion
3003
2973
  //#region src/components/CopyButton.vue?vue&type=script&setup=true&lang.ts
3004
- var _hoisted_1$12 = ["aria-label"];
3005
- var _hoisted_2$10 = { key: 2 };
3006
- var _hoisted_3$9 = {
2974
+ var _hoisted_1$13 = ["aria-label"];
2975
+ var _hoisted_2$11 = { key: 2 };
2976
+ var _hoisted_3$10 = {
3007
2977
  class: "sr-only",
3008
2978
  role: "status",
3009
2979
  "aria-live": "polite"
@@ -3061,13 +3031,66 @@ var CopyButton_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__P
3061
3031
  class: "size-4 shrink-0",
3062
3032
  "aria-hidden": "true"
3063
3033
  })),
3064
- __props.withText ? (openBlock(), createElementBlock("span", _hoisted_2$10, toDisplayString(state.value === "copied" ? __props.copiedLabel : __props.copyLabel), 1)) : createCommentVNode("", true),
3065
- createElementVNode("span", _hoisted_3$9, toDisplayString(state.value === "copied" ? __props.copiedLabel : state.value === "failed" ? __props.errorLabel ?? "" : ""), 1)
3066
- ], 10, _hoisted_1$12);
3034
+ __props.withText ? (openBlock(), createElementBlock("span", _hoisted_2$11, toDisplayString(state.value === "copied" ? __props.copiedLabel : __props.copyLabel), 1)) : createCommentVNode("", true),
3035
+ createElementVNode("span", _hoisted_3$10, toDisplayString(state.value === "copied" ? __props.copiedLabel : state.value === "failed" ? __props.errorLabel ?? "" : ""), 1)
3036
+ ], 10, _hoisted_1$13);
3067
3037
  };
3068
3038
  }
3069
3039
  }), [["__scopeId", "data-v-c481e140"]]);
3070
3040
  //#endregion
3041
+ //#region src/components/CodeBlock.vue?vue&type=script&setup=true&lang.ts
3042
+ var _hoisted_1$12 = {
3043
+ key: 0,
3044
+ class: "rk-code-bar"
3045
+ };
3046
+ var _hoisted_2$10 = {
3047
+ key: 0,
3048
+ class: "rk-code-lang"
3049
+ };
3050
+ var _hoisted_3$9 = [
3051
+ "tabindex",
3052
+ "role",
3053
+ "aria-label"
3054
+ ];
3055
+ //#endregion
3056
+ //#region src/components/CodeBlock.vue
3057
+ var CodeBlock_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PURE__ */ defineComponent({
3058
+ __name: "CodeBlock",
3059
+ props: {
3060
+ code: {},
3061
+ label: {},
3062
+ language: { default: () => void 0 },
3063
+ wrap: {
3064
+ type: Boolean,
3065
+ default: false
3066
+ },
3067
+ copyLabel: { default: () => void 0 },
3068
+ copiedLabel: { default: () => void 0 }
3069
+ },
3070
+ setup(__props) {
3071
+ const copyable = computed(() => __props.copyLabel !== void 0 && __props.copiedLabel !== void 0);
3072
+ const scrolls = computed(() => !__props.wrap);
3073
+ return (_ctx, _cache) => {
3074
+ return openBlock(), createElementBlock("figure", { class: normalizeClass(["rk-code", { "is-wrapped": __props.wrap }]) }, [__props.language || copyable.value ? (openBlock(), createElementBlock("figcaption", _hoisted_1$12, [__props.language ? (openBlock(), createElementBlock("span", _hoisted_2$10, toDisplayString(__props.language), 1)) : createCommentVNode("", true), copyable.value ? (openBlock(), createBlock(CopyButton_default, {
3075
+ key: 1,
3076
+ class: "rk-code-copy",
3077
+ text: __props.code,
3078
+ "copy-label": __props.copyLabel,
3079
+ "copied-label": __props.copiedLabel
3080
+ }, null, 8, [
3081
+ "text",
3082
+ "copy-label",
3083
+ "copied-label"
3084
+ ])) : createCommentVNode("", true)])) : createCommentVNode("", true), createElementVNode("pre", {
3085
+ class: "rk-code-pre",
3086
+ tabindex: scrolls.value ? 0 : void 0,
3087
+ role: scrolls.value ? "region" : void 0,
3088
+ "aria-label": scrolls.value ? __props.label : void 0
3089
+ }, [createElementVNode("code", null, [renderSlot(_ctx.$slots, "default", {}, () => [createTextVNode(toDisplayString(__props.code), 1)], true)])], 8, _hoisted_3$9)], 2);
3090
+ };
3091
+ }
3092
+ }), [["__scopeId", "data-v-b45043be"]]);
3093
+ //#endregion
3071
3094
  //#region src/components/DescriptionList.vue?vue&type=script&setup=true&lang.ts
3072
3095
  var _hoisted_1$11 = { class: "rk-dl-term" };
3073
3096
  var _hoisted_2$9 = { class: "rk-dl-value" };
@@ -4448,8 +4471,8 @@ function createI18nRuntime(options) {
4448
4471
  *
4449
4472
  * The fallback keeps `vitest` and `vite dev` honest, where no define runs.
4450
4473
  */
4451
- var VERSION = "2.18.1";
4474
+ var VERSION = "2.19.0";
4452
4475
  //#endregion
4453
- export { 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, 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 };
4476
+ export { 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 };
4454
4477
 
4455
4478
  //# sourceMappingURL=index.js.map