rei-kit 2.14.0 → 2.16.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 +4 -4
- package/dist/components/ColorPicker.vue.d.ts +58 -0
- package/dist/components/SliderField.vue.d.ts +59 -0
- package/dist/index.d.ts +7 -0
- package/dist/index.js +500 -270
- package/dist/index.js.map +1 -1
- package/dist/styles.css +184 -54
- package/dist/web/BaseTooltip.vue.d.ts +17 -0
- package/dist/web.js +72 -29
- package/dist/web.js.map +1 -1
- package/package.json +2 -2
package/dist/index.js
CHANGED
|
@@ -7,7 +7,7 @@ import { n as BaseSkeleton_default, r as useMediaQuery, t as BaseListbox_default
|
|
|
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";
|
|
10
|
-
import { Fragment, Teleport, Transition, TransitionGroup, computed, createBlock, createCommentVNode, createElementBlock, createElementVNode, createTextVNode, createVNode, defineComponent, guardReactiveProps, isRef, mergeModels, mergeProps, nextTick, normalizeClass, normalizeProps, normalizeStyle, onBeforeUnmount, onErrorCaptured, onMounted, onScopeDispose, openBlock, readonly, ref, renderList, renderSlot, resolveDynamicComponent, toDisplayString, unref, useId, useModel, useTemplateRef, vModelRadio, vModelSelect, vModelText, vShow, watch, watchEffect, withCtx, withDirectives, withModifiers } from "vue";
|
|
10
|
+
import { Fragment, Teleport, Transition, TransitionGroup, computed, createBlock, createCommentVNode, createElementBlock, createElementVNode, createTextVNode, createVNode, defineComponent, guardReactiveProps, isRef, mergeModels, mergeProps, nextTick, normalizeClass, normalizeProps, normalizeStyle, onBeforeUnmount, onErrorCaptured, onMounted, onScopeDispose, openBlock, readonly, ref, renderList, renderSlot, resolveDynamicComponent, toDisplayString, unref, useId, useModel, useTemplateRef, vModelRadio, vModelSelect, vModelText, vShow, watch, watchEffect, withCtx, withDirectives, withKeys, withModifiers } from "vue";
|
|
11
11
|
import { ArrowDown, ArrowRight, ArrowUp, ArrowUpRight, CalendarDays, Check, CheckCircle2, ChevronDown, ChevronLeft, ChevronRight, Clock, Copy, Info, Minus, Paperclip, Plus, Star, TriangleAlert, Upload, X, XCircle } from "lucide-vue-next";
|
|
12
12
|
import { RouterLink } from "vue-router";
|
|
13
13
|
import { createI18n } from "vue-i18n";
|
|
@@ -348,17 +348,17 @@ 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$
|
|
351
|
+
var _hoisted_1$42 = [
|
|
352
352
|
"role",
|
|
353
353
|
"aria-label",
|
|
354
354
|
"aria-hidden"
|
|
355
355
|
];
|
|
356
|
-
var _hoisted_2$
|
|
357
|
-
var _hoisted_3$
|
|
356
|
+
var _hoisted_2$35 = ["src"];
|
|
357
|
+
var _hoisted_3$23 = {
|
|
358
358
|
key: 1,
|
|
359
359
|
class: "rk-avatar-initials"
|
|
360
360
|
};
|
|
361
|
-
var _hoisted_4$
|
|
361
|
+
var _hoisted_4$18 = {
|
|
362
362
|
key: 2,
|
|
363
363
|
viewBox: "0 0 20 20",
|
|
364
364
|
class: "rk-avatar-figure",
|
|
@@ -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$
|
|
407
|
+
}, null, 40, _hoisted_2$35)) : __props.fallback === "initials" && initials.value ? (openBlock(), createElementBlock("span", _hoisted_3$23, toDisplayString(initials.value), 1)) : (openBlock(), createElementBlock("svg", _hoisted_4$18, [..._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$
|
|
416
|
+
}, null, -1)])]))], 10, _hoisted_1$42);
|
|
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$
|
|
441
|
+
var _hoisted_1$41 = [
|
|
442
442
|
"aria-label",
|
|
443
443
|
"aria-expanded",
|
|
444
444
|
"aria-controls"
|
|
445
445
|
];
|
|
446
|
-
var _hoisted_2$
|
|
446
|
+
var _hoisted_2$34 = ["id"];
|
|
447
447
|
//#endregion
|
|
448
448
|
//#region src/components/BaseMenu.vue
|
|
449
449
|
var BaseMenu_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PURE__ */ defineComponent({
|
|
@@ -542,14 +542,14 @@ var BaseMenu_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PUR
|
|
|
542
542
|
"aria-haspopup": true,
|
|
543
543
|
"aria-controls": open.value ? unref(id) : void 0,
|
|
544
544
|
onClick: _cache[0] || (_cache[0] = ($event) => open.value = !open.value)
|
|
545
|
-
}, [renderSlot(_ctx.$slots, "trigger", { open: open.value }, void 0, true)], 8, _hoisted_1$
|
|
545
|
+
}, [renderSlot(_ctx.$slots, "trigger", { open: open.value }, void 0, true)], 8, _hoisted_1$41), open.value ? (openBlock(), createElementBlock("div", {
|
|
546
546
|
key: 0,
|
|
547
547
|
id: unref(id),
|
|
548
548
|
ref_key: "panel",
|
|
549
549
|
ref: panel,
|
|
550
550
|
class: normalizeClass(["rk-menu-panel surface-overlay", `is-${__props.align}`]),
|
|
551
551
|
role: "menu"
|
|
552
|
-
}, [renderSlot(_ctx.$slots, "default", {}, void 0, true)], 10, _hoisted_2$
|
|
552
|
+
}, [renderSlot(_ctx.$slots, "default", {}, void 0, true)], 10, _hoisted_2$34)) : createCommentVNode("", true)], 544);
|
|
553
553
|
};
|
|
554
554
|
}
|
|
555
555
|
}), [["__scopeId", "data-v-e57ec901"]]);
|
|
@@ -620,13 +620,13 @@ var BaseCard_default = /* @__PURE__ */ defineComponent({
|
|
|
620
620
|
});
|
|
621
621
|
//#endregion
|
|
622
622
|
//#region src/components/BaseCombobox.vue?vue&type=script&setup=true&lang.ts
|
|
623
|
-
var _hoisted_1$
|
|
624
|
-
var _hoisted_2$
|
|
623
|
+
var _hoisted_1$40 = ["for"];
|
|
624
|
+
var _hoisted_2$33 = [
|
|
625
625
|
"aria-label",
|
|
626
626
|
"disabled",
|
|
627
627
|
"onClick"
|
|
628
628
|
];
|
|
629
|
-
var _hoisted_3$
|
|
629
|
+
var _hoisted_3$22 = [
|
|
630
630
|
"id",
|
|
631
631
|
"placeholder",
|
|
632
632
|
"disabled",
|
|
@@ -635,8 +635,8 @@ var _hoisted_3$21 = [
|
|
|
635
635
|
"aria-invalid",
|
|
636
636
|
"aria-describedby"
|
|
637
637
|
];
|
|
638
|
-
var _hoisted_4$
|
|
639
|
-
var _hoisted_5$
|
|
638
|
+
var _hoisted_4$17 = ["disabled"];
|
|
639
|
+
var _hoisted_5$10 = [
|
|
640
640
|
"aria-label",
|
|
641
641
|
"aria-multiselectable",
|
|
642
642
|
"aria-busy"
|
|
@@ -871,7 +871,7 @@ var BaseCombobox_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @_
|
|
|
871
871
|
createElementVNode("label", {
|
|
872
872
|
for: unref(id),
|
|
873
873
|
class: "rk-combo-label"
|
|
874
|
-
}, toDisplayString(__props.label), 9, _hoisted_1$
|
|
874
|
+
}, toDisplayString(__props.label), 9, _hoisted_1$40),
|
|
875
875
|
createElementVNode("div", { class: normalizeClass(["rk-combo-field", multiple.value ? "is-multiple control" : ""]) }, [
|
|
876
876
|
(openBlock(true), createElementBlock(Fragment, null, renderList(multiple.value ? chosenOptions.value : [], (option) => {
|
|
877
877
|
return openBlock(), createElementBlock("span", {
|
|
@@ -884,7 +884,7 @@ var BaseCombobox_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @_
|
|
|
884
884
|
"aria-label": __props.removeLabel(option.label),
|
|
885
885
|
disabled: __props.disabled,
|
|
886
886
|
onClick: ($event) => remove(option.value)
|
|
887
|
-
}, " × ", 8, _hoisted_2$
|
|
887
|
+
}, " × ", 8, _hoisted_2$33)) : createCommentVNode("", true)]);
|
|
888
888
|
}), 128)),
|
|
889
889
|
withDirectives(createElementVNode("input", {
|
|
890
890
|
id: unref(id),
|
|
@@ -903,7 +903,7 @@ var BaseCombobox_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @_
|
|
|
903
903
|
"aria-describedby": describedBy.value,
|
|
904
904
|
onKeydown,
|
|
905
905
|
onFocus: _cache[1] || (_cache[1] = ($event) => open.value = true)
|
|
906
|
-
}, null, 42, _hoisted_3$
|
|
906
|
+
}, null, 42, _hoisted_3$22), [[vModelText, text.value]]),
|
|
907
907
|
createElementVNode("button", {
|
|
908
908
|
type: "button",
|
|
909
909
|
class: "rk-combo-toggle",
|
|
@@ -911,7 +911,7 @@ var BaseCombobox_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @_
|
|
|
911
911
|
"aria-hidden": "true",
|
|
912
912
|
disabled: __props.disabled,
|
|
913
913
|
onClick: _cache[2] || (_cache[2] = ($event) => open.value = !open.value)
|
|
914
|
-
}, " ▾ ", 8, _hoisted_4$
|
|
914
|
+
}, " ▾ ", 8, _hoisted_4$17)
|
|
915
915
|
], 2),
|
|
916
916
|
withDirectives(createElementVNode("ul", {
|
|
917
917
|
id: listId,
|
|
@@ -958,7 +958,7 @@ var BaseCombobox_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @_
|
|
|
958
958
|
height: "0.75rem"
|
|
959
959
|
});
|
|
960
960
|
}), 64))])])) : matches.value.length === 0 ? (openBlock(), createElementBlock("li", _hoisted_10$3, toDisplayString(__props.emptyLabel), 1)) : createCommentVNode("", true)
|
|
961
|
-
], 40, _hoisted_5$
|
|
961
|
+
], 40, _hoisted_5$10), [[vShow, open.value]]),
|
|
962
962
|
__props.error ? (openBlock(), createElementBlock("p", {
|
|
963
963
|
key: 0,
|
|
964
964
|
id: errorId,
|
|
@@ -974,13 +974,13 @@ var BaseCombobox_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @_
|
|
|
974
974
|
}), [["__scopeId", "data-v-aa2335fa"]]);
|
|
975
975
|
//#endregion
|
|
976
976
|
//#region src/components/BaseRadioGroup.vue?vue&type=script&setup=true&lang.ts
|
|
977
|
-
var _hoisted_1$
|
|
978
|
-
var _hoisted_2$
|
|
977
|
+
var _hoisted_1$39 = ["aria-describedby"];
|
|
978
|
+
var _hoisted_2$32 = [
|
|
979
979
|
"name",
|
|
980
980
|
"value",
|
|
981
981
|
"disabled"
|
|
982
982
|
];
|
|
983
|
-
var _hoisted_3$
|
|
983
|
+
var _hoisted_3$21 = { class: "text-ink text-sm" };
|
|
984
984
|
//#endregion
|
|
985
985
|
//#region src/components/BaseRadioGroup.vue
|
|
986
986
|
var BaseRadioGroup_default = /* @__PURE__ */ defineComponent({
|
|
@@ -1024,7 +1024,7 @@ var BaseRadioGroup_default = /* @__PURE__ */ defineComponent({
|
|
|
1024
1024
|
value: option.value,
|
|
1025
1025
|
disabled: option.disabled,
|
|
1026
1026
|
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$
|
|
1027
|
+
}, null, 8, _hoisted_2$32), [[vModelRadio, unref(model)]]), createElementVNode("span", _hoisted_3$21, toDisplayString(option.label), 1)], 2);
|
|
1028
1028
|
}), 128)),
|
|
1029
1029
|
__props.error ? (openBlock(), createElementBlock("p", {
|
|
1030
1030
|
key: 0,
|
|
@@ -1035,24 +1035,24 @@ var BaseRadioGroup_default = /* @__PURE__ */ defineComponent({
|
|
|
1035
1035
|
id: hintId,
|
|
1036
1036
|
class: "text-ink-soft text-xs"
|
|
1037
1037
|
}, toDisplayString(__props.hint), 1)) : createCommentVNode("", true)
|
|
1038
|
-
], 8, _hoisted_1$
|
|
1038
|
+
], 8, _hoisted_1$39);
|
|
1039
1039
|
};
|
|
1040
1040
|
}
|
|
1041
1041
|
});
|
|
1042
1042
|
//#endregion
|
|
1043
1043
|
//#region src/components/BaseSelect.vue?vue&type=script&setup=true&lang.ts
|
|
1044
|
-
var _hoisted_1$
|
|
1045
|
-
var _hoisted_2$
|
|
1044
|
+
var _hoisted_1$38 = { class: "relative" };
|
|
1045
|
+
var _hoisted_2$31 = [
|
|
1046
1046
|
"id",
|
|
1047
1047
|
"aria-invalid",
|
|
1048
1048
|
"aria-describedby"
|
|
1049
1049
|
];
|
|
1050
|
-
var _hoisted_3$
|
|
1050
|
+
var _hoisted_3$20 = {
|
|
1051
1051
|
key: 0,
|
|
1052
1052
|
value: void 0,
|
|
1053
1053
|
disabled: ""
|
|
1054
1054
|
};
|
|
1055
|
-
var _hoisted_4$
|
|
1055
|
+
var _hoisted_4$16 = ["value", "disabled"];
|
|
1056
1056
|
//#endregion
|
|
1057
1057
|
//#region src/components/BaseSelect.vue
|
|
1058
1058
|
var BaseSelect_default = /* @__PURE__ */ defineComponent({
|
|
@@ -1088,7 +1088,7 @@ var BaseSelect_default = /* @__PURE__ */ defineComponent({
|
|
|
1088
1088
|
"label-hidden": __props.labelHidden,
|
|
1089
1089
|
size: __props.size
|
|
1090
1090
|
}, {
|
|
1091
|
-
default: withCtx(({ id, describedBy, invalid }) => [createElementVNode("div", _hoisted_1$
|
|
1091
|
+
default: withCtx(({ id, describedBy, invalid }) => [createElementVNode("div", _hoisted_1$38, [withDirectives(createElementVNode("select", {
|
|
1092
1092
|
id,
|
|
1093
1093
|
"onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => model.value = $event),
|
|
1094
1094
|
"aria-invalid": invalid,
|
|
@@ -1098,13 +1098,13 @@ var BaseSelect_default = /* @__PURE__ */ defineComponent({
|
|
|
1098
1098
|
__props.variant === "unstyled" ? "" : SIZE_CLASS[__props.size],
|
|
1099
1099
|
__props.variant !== "unstyled" && invalid ? "border-negative" : ""
|
|
1100
1100
|
]])
|
|
1101
|
-
}, [__props.placeholder ? (openBlock(), createElementBlock("option", _hoisted_3$
|
|
1101
|
+
}, [__props.placeholder ? (openBlock(), createElementBlock("option", _hoisted_3$20, toDisplayString(__props.placeholder), 1)) : createCommentVNode("", true), (openBlock(true), createElementBlock(Fragment, null, renderList(__props.options, (option) => {
|
|
1102
1102
|
return openBlock(), createElementBlock("option", {
|
|
1103
1103
|
key: option.value,
|
|
1104
1104
|
value: option.value,
|
|
1105
1105
|
disabled: option.disabled
|
|
1106
|
-
}, toDisplayString(option.label), 9, _hoisted_4$
|
|
1107
|
-
}), 128))], 10, _hoisted_2$
|
|
1106
|
+
}, toDisplayString(option.label), 9, _hoisted_4$16);
|
|
1107
|
+
}), 128))], 10, _hoisted_2$31), [[vModelSelect, model.value]]), createVNode(unref(ChevronDown), {
|
|
1108
1108
|
class: "text-ink-soft pointer-events-none absolute top-1/2 right-3 size-4 -translate-y-1/2",
|
|
1109
1109
|
"aria-hidden": "true"
|
|
1110
1110
|
})])]),
|
|
@@ -1121,11 +1121,11 @@ var BaseSelect_default = /* @__PURE__ */ defineComponent({
|
|
|
1121
1121
|
});
|
|
1122
1122
|
//#endregion
|
|
1123
1123
|
//#region src/components/BaseSlider.vue?vue&type=script&setup=true&lang.ts
|
|
1124
|
-
var _hoisted_1$
|
|
1125
|
-
var _hoisted_2$
|
|
1126
|
-
var _hoisted_3$
|
|
1127
|
-
var _hoisted_4$
|
|
1128
|
-
var _hoisted_5$
|
|
1124
|
+
var _hoisted_1$37 = { class: "rk-slider" };
|
|
1125
|
+
var _hoisted_2$30 = { class: "rk-slider-head" };
|
|
1126
|
+
var _hoisted_3$19 = ["for"];
|
|
1127
|
+
var _hoisted_4$15 = ["for"];
|
|
1128
|
+
var _hoisted_5$9 = [
|
|
1129
1129
|
"id",
|
|
1130
1130
|
"min",
|
|
1131
1131
|
"max",
|
|
@@ -1169,15 +1169,15 @@ var BaseSlider_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__P
|
|
|
1169
1169
|
return span <= 0 ? 0 : (model.value - __props.min) / span * 100;
|
|
1170
1170
|
});
|
|
1171
1171
|
return (_ctx, _cache) => {
|
|
1172
|
-
return openBlock(), createElementBlock("div", _hoisted_1$
|
|
1173
|
-
createElementVNode("div", _hoisted_2$
|
|
1172
|
+
return openBlock(), createElementBlock("div", _hoisted_1$37, [
|
|
1173
|
+
createElementVNode("div", _hoisted_2$30, [createElementVNode("label", {
|
|
1174
1174
|
for: unref(id),
|
|
1175
1175
|
class: "rk-slider-label"
|
|
1176
|
-
}, toDisplayString(__props.label), 9, _hoisted_3$
|
|
1176
|
+
}, toDisplayString(__props.label), 9, _hoisted_3$19), __props.showValue ? (openBlock(), createElementBlock("output", {
|
|
1177
1177
|
key: 0,
|
|
1178
1178
|
for: unref(id),
|
|
1179
1179
|
class: "rk-slider-value"
|
|
1180
|
-
}, toDisplayString(text.value), 9, _hoisted_4$
|
|
1180
|
+
}, toDisplayString(text.value), 9, _hoisted_4$15)) : createCommentVNode("", true)]),
|
|
1181
1181
|
withDirectives(createElementVNode("input", {
|
|
1182
1182
|
id: unref(id),
|
|
1183
1183
|
"onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => model.value = $event),
|
|
@@ -1190,7 +1190,7 @@ var BaseSlider_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__P
|
|
|
1190
1190
|
"aria-valuetext": text.value,
|
|
1191
1191
|
"aria-describedby": __props.hint ? hintId : void 0,
|
|
1192
1192
|
style: normalizeStyle({ "--rk-slider-filled": `${filled.value}%` })
|
|
1193
|
-
}, null, 12, _hoisted_5$
|
|
1193
|
+
}, null, 12, _hoisted_5$9), [[
|
|
1194
1194
|
vModelText,
|
|
1195
1195
|
model.value,
|
|
1196
1196
|
void 0,
|
|
@@ -1206,6 +1206,253 @@ var BaseSlider_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__P
|
|
|
1206
1206
|
}
|
|
1207
1207
|
}), [["__scopeId", "data-v-7fa2769b"]]);
|
|
1208
1208
|
//#endregion
|
|
1209
|
+
//#region src/components/NumberInput.vue?vue&type=script&setup=true&lang.ts
|
|
1210
|
+
var _hoisted_1$36 = ["aria-label", "disabled"];
|
|
1211
|
+
var _hoisted_2$29 = [
|
|
1212
|
+
"id",
|
|
1213
|
+
"value",
|
|
1214
|
+
"aria-valuenow",
|
|
1215
|
+
"aria-valuemin",
|
|
1216
|
+
"aria-valuemax",
|
|
1217
|
+
"aria-invalid",
|
|
1218
|
+
"aria-describedby",
|
|
1219
|
+
"disabled"
|
|
1220
|
+
];
|
|
1221
|
+
var _hoisted_3$18 = ["aria-label", "disabled"];
|
|
1222
|
+
//#endregion
|
|
1223
|
+
//#region src/components/NumberInput.vue
|
|
1224
|
+
var NumberInput_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PURE__ */ defineComponent({
|
|
1225
|
+
__name: "NumberInput",
|
|
1226
|
+
props: /*@__PURE__*/ mergeModels({
|
|
1227
|
+
label: {},
|
|
1228
|
+
min: { default: () => -Infinity },
|
|
1229
|
+
max: { default: () => Infinity },
|
|
1230
|
+
step: { default: 1 },
|
|
1231
|
+
decrementLabel: {},
|
|
1232
|
+
incrementLabel: {},
|
|
1233
|
+
error: { default: "" },
|
|
1234
|
+
hint: { default: "" },
|
|
1235
|
+
size: { default: "md" },
|
|
1236
|
+
labelHidden: {
|
|
1237
|
+
type: Boolean,
|
|
1238
|
+
default: false
|
|
1239
|
+
},
|
|
1240
|
+
disabled: {
|
|
1241
|
+
type: Boolean,
|
|
1242
|
+
default: false
|
|
1243
|
+
}
|
|
1244
|
+
}, {
|
|
1245
|
+
"modelValue": {},
|
|
1246
|
+
"modelModifiers": {}
|
|
1247
|
+
}),
|
|
1248
|
+
emits: ["update:modelValue"],
|
|
1249
|
+
setup(__props) {
|
|
1250
|
+
/** The number, with `v-model`. `undefined` while the field is empty. */
|
|
1251
|
+
const model = useModel(__props, "modelValue");
|
|
1252
|
+
const places = computed(() => (String(__props.step).split(".")[1] ?? "").length);
|
|
1253
|
+
const settle = (value) => Number(Math.min(__props.max, Math.max(__props.min, value)).toFixed(Math.min(places.value, 20)));
|
|
1254
|
+
const draft = ref(model.value === void 0 ? "" : String(model.value));
|
|
1255
|
+
watch(model, (value) => {
|
|
1256
|
+
if ((draft.value === "" ? void 0 : Number(draft.value)) !== value) draft.value = value === void 0 ? "" : String(value);
|
|
1257
|
+
});
|
|
1258
|
+
function onInput(event) {
|
|
1259
|
+
const text = event.target.value.replace(",", ".");
|
|
1260
|
+
draft.value = text;
|
|
1261
|
+
if (text.trim() === "") {
|
|
1262
|
+
model.value = void 0;
|
|
1263
|
+
return;
|
|
1264
|
+
}
|
|
1265
|
+
const value = Number(text);
|
|
1266
|
+
if (Number.isFinite(value)) model.value = value;
|
|
1267
|
+
}
|
|
1268
|
+
function commit() {
|
|
1269
|
+
if (model.value === void 0) {
|
|
1270
|
+
draft.value = "";
|
|
1271
|
+
return;
|
|
1272
|
+
}
|
|
1273
|
+
setTo(model.value);
|
|
1274
|
+
}
|
|
1275
|
+
function setTo(value) {
|
|
1276
|
+
model.value = settle(value);
|
|
1277
|
+
draft.value = String(model.value);
|
|
1278
|
+
}
|
|
1279
|
+
function stepBy(times) {
|
|
1280
|
+
if (__props.disabled) return;
|
|
1281
|
+
setTo((model.value ?? (Number.isFinite(__props.min) ? __props.min : 0)) + __props.step * times);
|
|
1282
|
+
}
|
|
1283
|
+
function onKeydown(event) {
|
|
1284
|
+
const action = {
|
|
1285
|
+
ArrowUp: () => stepBy(1),
|
|
1286
|
+
ArrowDown: () => stepBy(-1),
|
|
1287
|
+
PageUp: () => stepBy(10),
|
|
1288
|
+
PageDown: () => stepBy(-10),
|
|
1289
|
+
Home: () => {
|
|
1290
|
+
if (Number.isFinite(__props.min)) setTo(__props.min);
|
|
1291
|
+
},
|
|
1292
|
+
End: () => {
|
|
1293
|
+
if (Number.isFinite(__props.max)) setTo(__props.max);
|
|
1294
|
+
}
|
|
1295
|
+
}[event.key];
|
|
1296
|
+
if (!action) return;
|
|
1297
|
+
event.preventDefault();
|
|
1298
|
+
action();
|
|
1299
|
+
}
|
|
1300
|
+
const atMin = computed(() => model.value !== void 0 && model.value <= __props.min);
|
|
1301
|
+
const atMax = computed(() => model.value !== void 0 && model.value >= __props.max);
|
|
1302
|
+
return (_ctx, _cache) => {
|
|
1303
|
+
return openBlock(), createBlock(FormField_default, {
|
|
1304
|
+
label: __props.label,
|
|
1305
|
+
error: __props.error,
|
|
1306
|
+
hint: __props.hint,
|
|
1307
|
+
size: __props.size,
|
|
1308
|
+
"label-hidden": __props.labelHidden
|
|
1309
|
+
}, {
|
|
1310
|
+
default: withCtx(({ id, describedBy, invalid }) => [createElementVNode("div", { class: normalizeClass(["rk-number control", {
|
|
1311
|
+
"is-invalid": invalid,
|
|
1312
|
+
"is-disabled": __props.disabled
|
|
1313
|
+
}]) }, [
|
|
1314
|
+
createElementVNode("button", {
|
|
1315
|
+
type: "button",
|
|
1316
|
+
class: "rk-number-step focus-ring",
|
|
1317
|
+
"aria-label": __props.decrementLabel,
|
|
1318
|
+
disabled: __props.disabled || atMin.value,
|
|
1319
|
+
tabindex: "-1",
|
|
1320
|
+
onClick: _cache[0] || (_cache[0] = ($event) => stepBy(-1))
|
|
1321
|
+
}, [createVNode(unref(Minus), {
|
|
1322
|
+
class: "size-4",
|
|
1323
|
+
"aria-hidden": "true"
|
|
1324
|
+
})], 8, _hoisted_1$36),
|
|
1325
|
+
createElementVNode("input", {
|
|
1326
|
+
id,
|
|
1327
|
+
value: draft.value,
|
|
1328
|
+
type: "text",
|
|
1329
|
+
inputmode: "decimal",
|
|
1330
|
+
role: "spinbutton",
|
|
1331
|
+
autocomplete: "off",
|
|
1332
|
+
class: "rk-number-field",
|
|
1333
|
+
"aria-valuenow": model.value,
|
|
1334
|
+
"aria-valuemin": Number.isFinite(__props.min) ? __props.min : void 0,
|
|
1335
|
+
"aria-valuemax": Number.isFinite(__props.max) ? __props.max : void 0,
|
|
1336
|
+
"aria-invalid": invalid,
|
|
1337
|
+
"aria-describedby": describedBy,
|
|
1338
|
+
disabled: __props.disabled,
|
|
1339
|
+
onInput,
|
|
1340
|
+
onBlur: commit,
|
|
1341
|
+
onKeydown
|
|
1342
|
+
}, null, 40, _hoisted_2$29),
|
|
1343
|
+
createElementVNode("button", {
|
|
1344
|
+
type: "button",
|
|
1345
|
+
class: "rk-number-step focus-ring",
|
|
1346
|
+
"aria-label": __props.incrementLabel,
|
|
1347
|
+
disabled: __props.disabled || atMax.value,
|
|
1348
|
+
tabindex: "-1",
|
|
1349
|
+
onClick: _cache[1] || (_cache[1] = ($event) => stepBy(1))
|
|
1350
|
+
}, [createVNode(unref(Plus), {
|
|
1351
|
+
class: "size-4",
|
|
1352
|
+
"aria-hidden": "true"
|
|
1353
|
+
})], 8, _hoisted_3$18)
|
|
1354
|
+
], 2)]),
|
|
1355
|
+
_: 1
|
|
1356
|
+
}, 8, [
|
|
1357
|
+
"label",
|
|
1358
|
+
"error",
|
|
1359
|
+
"hint",
|
|
1360
|
+
"size",
|
|
1361
|
+
"label-hidden"
|
|
1362
|
+
]);
|
|
1363
|
+
};
|
|
1364
|
+
}
|
|
1365
|
+
}), [["__scopeId", "data-v-082bd3d7"]]);
|
|
1366
|
+
//#endregion
|
|
1367
|
+
//#region src/components/SliderField.vue?vue&type=script&setup=true&lang.ts
|
|
1368
|
+
var _hoisted_1$35 = { class: "rk-slider-field" };
|
|
1369
|
+
//#endregion
|
|
1370
|
+
//#region src/components/SliderField.vue
|
|
1371
|
+
var SliderField_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PURE__ */ defineComponent({
|
|
1372
|
+
__name: "SliderField",
|
|
1373
|
+
props: /*@__PURE__*/ mergeModels({
|
|
1374
|
+
label: {},
|
|
1375
|
+
min: { default: 0 },
|
|
1376
|
+
max: { default: 100 },
|
|
1377
|
+
step: { default: 1 },
|
|
1378
|
+
decrementLabel: {},
|
|
1379
|
+
incrementLabel: {},
|
|
1380
|
+
hint: { default: "" },
|
|
1381
|
+
disabled: {
|
|
1382
|
+
type: Boolean,
|
|
1383
|
+
default: false
|
|
1384
|
+
},
|
|
1385
|
+
format: { type: Function }
|
|
1386
|
+
}, {
|
|
1387
|
+
"modelValue": { default: 0 },
|
|
1388
|
+
"modelModifiers": {}
|
|
1389
|
+
}),
|
|
1390
|
+
emits: ["update:modelValue"],
|
|
1391
|
+
setup(__props) {
|
|
1392
|
+
const model = useModel(__props, "modelValue");
|
|
1393
|
+
/**
|
|
1394
|
+
* The field's own binding, which can be emptied; the pair's cannot.
|
|
1395
|
+
*
|
|
1396
|
+
* `NumberInput` hands back `undefined` while the field is empty, because
|
|
1397
|
+
* halfway through typing a number there is no number. A slider has no such
|
|
1398
|
+
* state — the thumb is always somewhere — so an empty field leaves the value
|
|
1399
|
+
* where it was until something is typed, rather than dragging the thumb to
|
|
1400
|
+
* zero the moment the last digit is deleted.
|
|
1401
|
+
*/
|
|
1402
|
+
const typed = computed({
|
|
1403
|
+
get: () => model.value,
|
|
1404
|
+
set: (value) => {
|
|
1405
|
+
if (value !== void 0) model.value = value;
|
|
1406
|
+
}
|
|
1407
|
+
});
|
|
1408
|
+
return (_ctx, _cache) => {
|
|
1409
|
+
return openBlock(), createElementBlock("div", _hoisted_1$35, [createVNode(BaseSlider_default, {
|
|
1410
|
+
modelValue: model.value,
|
|
1411
|
+
"onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => model.value = $event),
|
|
1412
|
+
label: __props.label,
|
|
1413
|
+
min: __props.min,
|
|
1414
|
+
max: __props.max,
|
|
1415
|
+
step: __props.step,
|
|
1416
|
+
hint: __props.hint,
|
|
1417
|
+
disabled: __props.disabled,
|
|
1418
|
+
format: __props.format,
|
|
1419
|
+
"show-value": false
|
|
1420
|
+
}, null, 8, [
|
|
1421
|
+
"modelValue",
|
|
1422
|
+
"label",
|
|
1423
|
+
"min",
|
|
1424
|
+
"max",
|
|
1425
|
+
"step",
|
|
1426
|
+
"hint",
|
|
1427
|
+
"disabled",
|
|
1428
|
+
"format"
|
|
1429
|
+
]), createVNode(NumberInput_default, {
|
|
1430
|
+
modelValue: typed.value,
|
|
1431
|
+
"onUpdate:modelValue": _cache[1] || (_cache[1] = ($event) => typed.value = $event),
|
|
1432
|
+
class: "rk-slider-field-number",
|
|
1433
|
+
label: __props.label,
|
|
1434
|
+
"label-hidden": "",
|
|
1435
|
+
min: __props.min,
|
|
1436
|
+
max: __props.max,
|
|
1437
|
+
step: __props.step,
|
|
1438
|
+
"decrement-label": __props.decrementLabel,
|
|
1439
|
+
"increment-label": __props.incrementLabel,
|
|
1440
|
+
disabled: __props.disabled,
|
|
1441
|
+
size: "sm"
|
|
1442
|
+
}, null, 8, [
|
|
1443
|
+
"modelValue",
|
|
1444
|
+
"label",
|
|
1445
|
+
"min",
|
|
1446
|
+
"max",
|
|
1447
|
+
"step",
|
|
1448
|
+
"decrement-label",
|
|
1449
|
+
"increment-label",
|
|
1450
|
+
"disabled"
|
|
1451
|
+
])]);
|
|
1452
|
+
};
|
|
1453
|
+
}
|
|
1454
|
+
}), [["__scopeId", "data-v-6ec3163a"]]);
|
|
1455
|
+
//#endregion
|
|
1209
1456
|
//#region src/components/BaseSpinner.vue?vue&type=script&setup=true&lang.ts
|
|
1210
1457
|
var _hoisted_1$34 = {
|
|
1211
1458
|
class: "rk-spin-wrap",
|
|
@@ -1258,7 +1505,7 @@ var _hoisted_2$27 = {
|
|
|
1258
1505
|
class: "min-w-0"
|
|
1259
1506
|
};
|
|
1260
1507
|
var _hoisted_3$17 = ["id"];
|
|
1261
|
-
var _hoisted_4$
|
|
1508
|
+
var _hoisted_4$14 = [
|
|
1262
1509
|
"aria-checked",
|
|
1263
1510
|
"aria-labelledby",
|
|
1264
1511
|
"aria-label",
|
|
@@ -1317,7 +1564,7 @@ var BaseSwitch_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__P
|
|
|
1317
1564
|
}, [..._cache[0] || (_cache[0] = [createElementVNode("span", {
|
|
1318
1565
|
class: "rk-switch-knob",
|
|
1319
1566
|
"aria-hidden": "true"
|
|
1320
|
-
}, null, -1)])], 10, _hoisted_4$
|
|
1567
|
+
}, null, -1)])], 10, _hoisted_4$14)]);
|
|
1321
1568
|
};
|
|
1322
1569
|
}
|
|
1323
1570
|
}), [["__scopeId", "data-v-3f4400a0"]]);
|
|
@@ -1326,8 +1573,8 @@ var BaseSwitch_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__P
|
|
|
1326
1573
|
var _hoisted_1$32 = ["aria-label"];
|
|
1327
1574
|
var _hoisted_2$26 = { class: "rk-table" };
|
|
1328
1575
|
var _hoisted_3$16 = { key: 0 };
|
|
1329
|
-
var _hoisted_4$
|
|
1330
|
-
var _hoisted_5$
|
|
1576
|
+
var _hoisted_4$13 = { key: 1 };
|
|
1577
|
+
var _hoisted_5$8 = ["colspan"];
|
|
1331
1578
|
//#endregion
|
|
1332
1579
|
//#region src/components/BaseTable.vue
|
|
1333
1580
|
var BaseTable_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PURE__ */ defineComponent({
|
|
@@ -1369,10 +1616,10 @@ var BaseTable_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PU
|
|
|
1369
1616
|
value: row[column.key]
|
|
1370
1617
|
}, () => [createTextVNode(toDisplayString(row[column.key]), 1)], true)], 2);
|
|
1371
1618
|
}), 128))]);
|
|
1372
|
-
}), 128))])) : (openBlock(), createElementBlock("tbody", _hoisted_4$
|
|
1619
|
+
}), 128))])) : (openBlock(), createElementBlock("tbody", _hoisted_4$13, [createElementVNode("tr", null, [createElementVNode("td", {
|
|
1373
1620
|
colspan: __props.columns.length,
|
|
1374
1621
|
class: "rk-table-empty"
|
|
1375
|
-
}, [renderSlot(_ctx.$slots, "empty", {}, void 0, true)], 8, _hoisted_5$
|
|
1622
|
+
}, [renderSlot(_ctx.$slots, "empty", {}, void 0, true)], 8, _hoisted_5$8)])]))
|
|
1376
1623
|
])], 8, _hoisted_1$32);
|
|
1377
1624
|
};
|
|
1378
1625
|
}
|
|
@@ -1445,11 +1692,11 @@ var _hoisted_2$25 = {
|
|
|
1445
1692
|
class: "bg-muted text-primary rounded-card flex size-12 items-center justify-center"
|
|
1446
1693
|
};
|
|
1447
1694
|
var _hoisted_3$15 = { class: "text-ink text-base font-semibold" };
|
|
1448
|
-
var _hoisted_4$
|
|
1695
|
+
var _hoisted_4$12 = {
|
|
1449
1696
|
key: 1,
|
|
1450
1697
|
class: "text-ink-soft max-w-[36ch] text-sm"
|
|
1451
1698
|
};
|
|
1452
|
-
var _hoisted_5$
|
|
1699
|
+
var _hoisted_5$7 = {
|
|
1453
1700
|
key: 2,
|
|
1454
1701
|
class: "mt-2 flex w-full flex-col gap-2"
|
|
1455
1702
|
};
|
|
@@ -1474,8 +1721,8 @@ var EmptyState_default = /* @__PURE__ */ defineComponent({
|
|
|
1474
1721
|
return openBlock(), createElementBlock("div", _hoisted_1$30, [
|
|
1475
1722
|
_ctx.$slots.icon ? (openBlock(), createElementBlock("div", _hoisted_2$25, [renderSlot(_ctx.$slots, "icon")])) : createCommentVNode("", true),
|
|
1476
1723
|
createElementVNode("h3", _hoisted_3$15, toDisplayString(__props.title), 1),
|
|
1477
|
-
__props.description ? (openBlock(), createElementBlock("p", _hoisted_4$
|
|
1478
|
-
_ctx.$slots.action ? (openBlock(), createElementBlock("div", _hoisted_5$
|
|
1724
|
+
__props.description ? (openBlock(), createElementBlock("p", _hoisted_4$12, toDisplayString(__props.description), 1)) : createCommentVNode("", true),
|
|
1725
|
+
_ctx.$slots.action ? (openBlock(), createElementBlock("div", _hoisted_5$7, [renderSlot(_ctx.$slots, "action")])) : createCommentVNode("", true)
|
|
1479
1726
|
]);
|
|
1480
1727
|
};
|
|
1481
1728
|
}
|
|
@@ -1545,8 +1792,8 @@ var PageContainer_default = /* @__PURE__ */ defineComponent({
|
|
|
1545
1792
|
var _hoisted_1$29 = { class: "grid h-12 shrink-0 grid-cols-[2.5rem_1fr_2.5rem] items-center" };
|
|
1546
1793
|
var _hoisted_2$24 = { class: "justify-self-start" };
|
|
1547
1794
|
var _hoisted_3$14 = { class: "text-ink flex min-w-0 justify-center text-base font-semibold tabular-nums" };
|
|
1548
|
-
var _hoisted_4$
|
|
1549
|
-
var _hoisted_5$
|
|
1795
|
+
var _hoisted_4$11 = { class: "truncate" };
|
|
1796
|
+
var _hoisted_5$6 = { class: "justify-self-end" };
|
|
1550
1797
|
//#endregion
|
|
1551
1798
|
//#region src/components/PageHeader.vue
|
|
1552
1799
|
var PageHeader_default = /* @__PURE__ */ defineComponent({
|
|
@@ -1565,8 +1812,8 @@ var PageHeader_default = /* @__PURE__ */ defineComponent({
|
|
|
1565
1812
|
return (_ctx, _cache) => {
|
|
1566
1813
|
return openBlock(), createElementBlock("header", _hoisted_1$29, [
|
|
1567
1814
|
createElementVNode("div", _hoisted_2$24, [renderSlot(_ctx.$slots, "left")]),
|
|
1568
|
-
createElementVNode("h1", _hoisted_3$14, [renderSlot(_ctx.$slots, "title", {}, () => [createElementVNode("span", _hoisted_4$
|
|
1569
|
-
createElementVNode("div", _hoisted_5$
|
|
1815
|
+
createElementVNode("h1", _hoisted_3$14, [renderSlot(_ctx.$slots, "title", {}, () => [createElementVNode("span", _hoisted_4$11, toDisplayString(__props.title), 1)])]),
|
|
1816
|
+
createElementVNode("div", _hoisted_5$6, [renderSlot(_ctx.$slots, "right")])
|
|
1570
1817
|
]);
|
|
1571
1818
|
};
|
|
1572
1819
|
}
|
|
@@ -1617,11 +1864,11 @@ var _hoisted_1$27 = {
|
|
|
1617
1864
|
};
|
|
1618
1865
|
var _hoisted_2$23 = { class: "flex items-start justify-between gap-4" };
|
|
1619
1866
|
var _hoisted_3$13 = { class: "text-ink mt-5 text-lg font-semibold" };
|
|
1620
|
-
var _hoisted_4$
|
|
1867
|
+
var _hoisted_4$10 = {
|
|
1621
1868
|
key: 1,
|
|
1622
1869
|
class: "text-ink-soft mt-1.5 text-sm leading-relaxed"
|
|
1623
1870
|
};
|
|
1624
|
-
var _hoisted_5$
|
|
1871
|
+
var _hoisted_5$5 = { class: "mt-6 flex items-baseline gap-1.5" };
|
|
1625
1872
|
var _hoisted_6$4 = { class: "text-ink text-3xl font-semibold tracking-tight tabular-nums" };
|
|
1626
1873
|
var _hoisted_7$3 = {
|
|
1627
1874
|
key: 0,
|
|
@@ -1695,8 +1942,8 @@ var PriceCard_default = /* @__PURE__ */ defineComponent({
|
|
|
1695
1942
|
class: normalizeClass(["rounded-cell ml-auto px-2.5 py-1 text-[0.7rem] font-medium", palette.value.soft])
|
|
1696
1943
|
}, toDisplayString(__props.chip), 3)) : createCommentVNode("", true)]),
|
|
1697
1944
|
createElementVNode("h3", _hoisted_3$13, toDisplayString(__props.name), 1),
|
|
1698
|
-
__props.lead ? (openBlock(), createElementBlock("p", _hoisted_4$
|
|
1699
|
-
createElementVNode("p", _hoisted_5$
|
|
1945
|
+
__props.lead ? (openBlock(), createElementBlock("p", _hoisted_4$10, toDisplayString(__props.lead), 1)) : createCommentVNode("", true),
|
|
1946
|
+
createElementVNode("p", _hoisted_5$5, [createElementVNode("span", _hoisted_6$4, toDisplayString(__props.price), 1), __props.period ? (openBlock(), createElementBlock("span", _hoisted_7$3, toDisplayString(__props.period), 1)) : createCommentVNode("", true)]),
|
|
1700
1947
|
__props.note ? (openBlock(), createElementBlock("p", _hoisted_8$2, toDisplayString(__props.note), 1)) : createCommentVNode("", true),
|
|
1701
1948
|
createElementVNode("ul", _hoisted_9$2, [(openBlock(true), createElementBlock(Fragment, null, renderList(__props.features, (feature) => {
|
|
1702
1949
|
return openBlock(), createElementBlock("li", {
|
|
@@ -1830,7 +2077,7 @@ var SkeletonList_default = /* @__PURE__ */ defineComponent({
|
|
|
1830
2077
|
var _hoisted_1$22 = { class: "surface rounded-card flex flex-1 flex-col gap-0.5 p-3" };
|
|
1831
2078
|
var _hoisted_2$19 = { class: "flex items-baseline gap-1" };
|
|
1832
2079
|
var _hoisted_3$12 = { class: "text-ink text-xl font-semibold tabular-nums" };
|
|
1833
|
-
var _hoisted_4$
|
|
2080
|
+
var _hoisted_4$9 = { class: "text-ink-soft text-xs" };
|
|
1834
2081
|
//#endregion
|
|
1835
2082
|
//#region src/components/StatCard.vue
|
|
1836
2083
|
var StatCard_default = /* @__PURE__ */ defineComponent({
|
|
@@ -1850,7 +2097,7 @@ var StatCard_default = /* @__PURE__ */ defineComponent({
|
|
|
1850
2097
|
return openBlock(), createElementBlock("div", _hoisted_1$22, [createElementVNode("div", _hoisted_2$19, [createElementVNode("span", _hoisted_3$12, toDisplayString(__props.value), 1), __props.trend ? (openBlock(), createBlock(resolveDynamicComponent(TREND_ICON[__props.trend]), {
|
|
1851
2098
|
key: 0,
|
|
1852
2099
|
class: "text-ink-soft size-3"
|
|
1853
|
-
})) : createCommentVNode("", true)]), createElementVNode("span", _hoisted_4$
|
|
2100
|
+
})) : createCommentVNode("", true)]), createElementVNode("span", _hoisted_4$9, toDisplayString(__props.label), 1)]);
|
|
1854
2101
|
};
|
|
1855
2102
|
}
|
|
1856
2103
|
});
|
|
@@ -2010,7 +2257,7 @@ var LocaleLinks_default = /* @__PURE__ */ defineComponent({
|
|
|
2010
2257
|
var _hoisted_1$19 = { class: "tab-bar" };
|
|
2011
2258
|
var _hoisted_2$16 = ["aria-label"];
|
|
2012
2259
|
var _hoisted_3$11 = { class: "tab-icon-slot" };
|
|
2013
|
-
var _hoisted_4$
|
|
2260
|
+
var _hoisted_4$8 = { class: "tab-label" };
|
|
2014
2261
|
//#endregion
|
|
2015
2262
|
//#region src/components/TabBar.vue
|
|
2016
2263
|
var TabBar_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PURE__ */ defineComponent({
|
|
@@ -2033,7 +2280,7 @@ var TabBar_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PURE_
|
|
|
2033
2280
|
"aria-current": item.key === __props.active ? "page" : void 0,
|
|
2034
2281
|
onClick: _cache[0] || (_cache[0] = ($event) => unref(tapFeedback)())
|
|
2035
2282
|
}, {
|
|
2036
|
-
default: withCtx(() => [createElementVNode("span", _hoisted_3$11, [(openBlock(), createBlock(resolveDynamicComponent(item.icon), { class: "tab-icon" }))]), createElementVNode("span", _hoisted_4$
|
|
2283
|
+
default: withCtx(() => [createElementVNode("span", _hoisted_3$11, [(openBlock(), createBlock(resolveDynamicComponent(item.icon), { class: "tab-icon" }))]), createElementVNode("span", _hoisted_4$8, toDisplayString(item.label), 1)]),
|
|
2037
2284
|
_: 2
|
|
2038
2285
|
}, 1032, [
|
|
2039
2286
|
"to",
|
|
@@ -2094,8 +2341,8 @@ var AvatarStack_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__
|
|
|
2094
2341
|
var _hoisted_1$17 = { class: "rk-cal" };
|
|
2095
2342
|
var _hoisted_2$14 = { class: "rk-cal-head" };
|
|
2096
2343
|
var _hoisted_3$10 = ["aria-label"];
|
|
2097
|
-
var _hoisted_4$
|
|
2098
|
-
var _hoisted_5$
|
|
2344
|
+
var _hoisted_4$7 = ["aria-expanded"];
|
|
2345
|
+
var _hoisted_5$4 = ["aria-label"];
|
|
2099
2346
|
var _hoisted_6$3 = {
|
|
2100
2347
|
key: 0,
|
|
2101
2348
|
class: "rk-cal-weekdays",
|
|
@@ -2304,7 +2551,7 @@ var BaseCalendar_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @_
|
|
|
2304
2551
|
class: "rk-cal-title focus-ring",
|
|
2305
2552
|
"aria-expanded": view.value !== "days",
|
|
2306
2553
|
onClick: cycleView
|
|
2307
|
-
}, toDisplayString(view.value === "years" ? `${years.value[0]} – ${years.value[11]}` : monthTitle.value), 9, _hoisted_4$
|
|
2554
|
+
}, toDisplayString(view.value === "years" ? `${years.value[0]} – ${years.value[11]}` : monthTitle.value), 9, _hoisted_4$7),
|
|
2308
2555
|
createElementVNode("button", {
|
|
2309
2556
|
type: "button",
|
|
2310
2557
|
class: "rk-cal-arrow focus-ring",
|
|
@@ -2313,7 +2560,7 @@ var BaseCalendar_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @_
|
|
|
2313
2560
|
}, [createVNode(unref(ChevronRight), {
|
|
2314
2561
|
class: "size-4",
|
|
2315
2562
|
"aria-hidden": "true"
|
|
2316
|
-
})], 8, _hoisted_5$
|
|
2563
|
+
})], 8, _hoisted_5$4)
|
|
2317
2564
|
]),
|
|
2318
2565
|
view.value === "days" ? (openBlock(), createElementBlock("div", _hoisted_6$3, [(openBlock(true), createElementBlock(Fragment, null, renderList(weekdays.value, (day) => {
|
|
2319
2566
|
return openBlock(), createElementBlock("span", { key: day.long }, toDisplayString(day.short), 1);
|
|
@@ -2622,10 +2869,151 @@ var BaseSeparator_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @
|
|
|
2622
2869
|
}
|
|
2623
2870
|
}), [["__scopeId", "data-v-9f8cc9aa"]]);
|
|
2624
2871
|
//#endregion
|
|
2872
|
+
//#region src/components/ColorPicker.vue?vue&type=script&setup=true&lang.ts
|
|
2873
|
+
var _hoisted_1$12 = { class: "rk-color-row" };
|
|
2874
|
+
var _hoisted_2$10 = [
|
|
2875
|
+
"id",
|
|
2876
|
+
"value",
|
|
2877
|
+
"disabled",
|
|
2878
|
+
"aria-describedby",
|
|
2879
|
+
"aria-invalid"
|
|
2880
|
+
];
|
|
2881
|
+
var _hoisted_3$9 = [
|
|
2882
|
+
"aria-label",
|
|
2883
|
+
"disabled",
|
|
2884
|
+
"onKeydown"
|
|
2885
|
+
];
|
|
2886
|
+
var _hoisted_4$6 = {
|
|
2887
|
+
key: 1,
|
|
2888
|
+
class: "rk-color-swatches"
|
|
2889
|
+
};
|
|
2890
|
+
var _hoisted_5$3 = [
|
|
2891
|
+
"aria-label",
|
|
2892
|
+
"aria-pressed",
|
|
2893
|
+
"disabled",
|
|
2894
|
+
"onClick"
|
|
2895
|
+
];
|
|
2896
|
+
//#endregion
|
|
2897
|
+
//#region src/components/ColorPicker.vue
|
|
2898
|
+
var ColorPicker_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PURE__ */ defineComponent({
|
|
2899
|
+
__name: "ColorPicker",
|
|
2900
|
+
props: {
|
|
2901
|
+
label: {},
|
|
2902
|
+
modelValue: {},
|
|
2903
|
+
swatches: { default: () => [] },
|
|
2904
|
+
hexLabel: { default: "" },
|
|
2905
|
+
hint: { default: "" },
|
|
2906
|
+
error: { default: "" },
|
|
2907
|
+
disabled: {
|
|
2908
|
+
type: Boolean,
|
|
2909
|
+
default: false
|
|
2910
|
+
},
|
|
2911
|
+
labelHidden: {
|
|
2912
|
+
type: Boolean,
|
|
2913
|
+
default: false
|
|
2914
|
+
}
|
|
2915
|
+
},
|
|
2916
|
+
emits: ["update:modelValue"],
|
|
2917
|
+
setup(__props, { emit: __emit }) {
|
|
2918
|
+
const emit = __emit;
|
|
2919
|
+
/** `#abc` and `#AABBCC` both mean the same colour; this is the spelling. */
|
|
2920
|
+
function normalise(value) {
|
|
2921
|
+
const text = value.trim().toLowerCase();
|
|
2922
|
+
const short = /^#?([0-9a-f])([0-9a-f])([0-9a-f])$/.exec(text);
|
|
2923
|
+
if (short) return `#${short[1]}${short[1]}${short[2]}${short[2]}${short[3]}${short[3]}`;
|
|
2924
|
+
const long = /^#?([0-9a-f]{6})$/.exec(text);
|
|
2925
|
+
return long ? `#${long[1]}` : void 0;
|
|
2926
|
+
}
|
|
2927
|
+
/**
|
|
2928
|
+
* The value, or nothing when it cannot be read.
|
|
2929
|
+
*
|
|
2930
|
+
* No fallback colour: a hex written here would be a colour the kit chose,
|
|
2931
|
+
* and the kit chooses none — a test enforces that, and it is right to.
|
|
2932
|
+
* Unreadable input is handed to the native control as an empty value, and
|
|
2933
|
+
* whatever it shows then is the platform's decision rather than ours.
|
|
2934
|
+
*/
|
|
2935
|
+
const current = computed(() => normalise(__props.modelValue));
|
|
2936
|
+
function set(value) {
|
|
2937
|
+
const next = normalise(value);
|
|
2938
|
+
if (next && next !== current.value) emit("update:modelValue", next);
|
|
2939
|
+
}
|
|
2940
|
+
/**
|
|
2941
|
+
* What the hex field shows while it is being typed in.
|
|
2942
|
+
*
|
|
2943
|
+
* Not the value: "#ab" is not a colour, and rewriting the field on every
|
|
2944
|
+
* keystroke would make it impossible to type the third character. It
|
|
2945
|
+
* catches up with the value whenever the value changes from elsewhere — a
|
|
2946
|
+
* swatch, the native picker — and commits what it holds on blur and Enter.
|
|
2947
|
+
*/
|
|
2948
|
+
const draft = ref(current.value ?? "");
|
|
2949
|
+
watch(current, (value) => draft.value = value ?? "");
|
|
2950
|
+
function commit() {
|
|
2951
|
+
const next = normalise(draft.value);
|
|
2952
|
+
if (next) set(next);
|
|
2953
|
+
else draft.value = current.value ?? "";
|
|
2954
|
+
}
|
|
2955
|
+
const chosen = (value) => normalise(value) === current.value;
|
|
2956
|
+
return (_ctx, _cache) => {
|
|
2957
|
+
return openBlock(), createBlock(FormField_default, {
|
|
2958
|
+
label: __props.label,
|
|
2959
|
+
hint: __props.hint,
|
|
2960
|
+
error: __props.error,
|
|
2961
|
+
"label-hidden": __props.labelHidden,
|
|
2962
|
+
class: "rk-color"
|
|
2963
|
+
}, {
|
|
2964
|
+
default: withCtx(({ id, describedBy, invalid }) => [createElementVNode("div", _hoisted_1$12, [
|
|
2965
|
+
createElementVNode("span", {
|
|
2966
|
+
class: "rk-color-well",
|
|
2967
|
+
style: normalizeStyle(current.value ? { "--rk-color": current.value } : void 0)
|
|
2968
|
+
}, [createElementVNode("input", {
|
|
2969
|
+
id,
|
|
2970
|
+
type: "color",
|
|
2971
|
+
class: "rk-color-native focus-ring",
|
|
2972
|
+
value: current.value ?? "",
|
|
2973
|
+
disabled: __props.disabled,
|
|
2974
|
+
"aria-describedby": describedBy,
|
|
2975
|
+
"aria-invalid": invalid,
|
|
2976
|
+
onInput: _cache[0] || (_cache[0] = ($event) => set($event.target.value))
|
|
2977
|
+
}, null, 40, _hoisted_2$10)], 4),
|
|
2978
|
+
__props.hexLabel ? withDirectives((openBlock(), createElementBlock("input", {
|
|
2979
|
+
key: 0,
|
|
2980
|
+
"onUpdate:modelValue": _cache[1] || (_cache[1] = ($event) => draft.value = $event),
|
|
2981
|
+
type: "text",
|
|
2982
|
+
class: "rk-color-hex control",
|
|
2983
|
+
spellcheck: "false",
|
|
2984
|
+
autocomplete: "off",
|
|
2985
|
+
"aria-label": __props.hexLabel,
|
|
2986
|
+
disabled: __props.disabled,
|
|
2987
|
+
onBlur: commit,
|
|
2988
|
+
onKeydown: withKeys(withModifiers(commit, ["prevent"]), ["enter"])
|
|
2989
|
+
}, null, 40, _hoisted_3$9)), [[vModelText, draft.value]]) : createCommentVNode("", true),
|
|
2990
|
+
__props.swatches.length > 0 ? (openBlock(), createElementBlock("ul", _hoisted_4$6, [(openBlock(true), createElementBlock(Fragment, null, renderList(__props.swatches, (swatch) => {
|
|
2991
|
+
return openBlock(), createElementBlock("li", { key: swatch.value }, [createElementVNode("button", {
|
|
2992
|
+
type: "button",
|
|
2993
|
+
class: normalizeClass(["rk-color-swatch focus-ring", { "is-chosen": chosen(swatch.value) }]),
|
|
2994
|
+
style: normalizeStyle({ "--rk-color": swatch.value }),
|
|
2995
|
+
"aria-label": swatch.label,
|
|
2996
|
+
"aria-pressed": chosen(swatch.value),
|
|
2997
|
+
disabled: __props.disabled,
|
|
2998
|
+
onClick: ($event) => set(swatch.value)
|
|
2999
|
+
}, null, 14, _hoisted_5$3)]);
|
|
3000
|
+
}), 128))])) : createCommentVNode("", true)
|
|
3001
|
+
])]),
|
|
3002
|
+
_: 1
|
|
3003
|
+
}, 8, [
|
|
3004
|
+
"label",
|
|
3005
|
+
"hint",
|
|
3006
|
+
"error",
|
|
3007
|
+
"label-hidden"
|
|
3008
|
+
]);
|
|
3009
|
+
};
|
|
3010
|
+
}
|
|
3011
|
+
}), [["__scopeId", "data-v-5ca23aa9"]]);
|
|
3012
|
+
//#endregion
|
|
2625
3013
|
//#region src/components/CopyButton.vue?vue&type=script&setup=true&lang.ts
|
|
2626
|
-
var _hoisted_1$
|
|
2627
|
-
var _hoisted_2$
|
|
2628
|
-
var _hoisted_3$
|
|
3014
|
+
var _hoisted_1$11 = ["aria-label"];
|
|
3015
|
+
var _hoisted_2$9 = { key: 2 };
|
|
3016
|
+
var _hoisted_3$8 = {
|
|
2629
3017
|
class: "sr-only",
|
|
2630
3018
|
role: "status",
|
|
2631
3019
|
"aria-live": "polite"
|
|
@@ -2683,16 +3071,16 @@ var CopyButton_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__P
|
|
|
2683
3071
|
class: "size-4 shrink-0",
|
|
2684
3072
|
"aria-hidden": "true"
|
|
2685
3073
|
})),
|
|
2686
|
-
__props.withText ? (openBlock(), createElementBlock("span", _hoisted_2$
|
|
2687
|
-
createElementVNode("span", _hoisted_3$
|
|
2688
|
-
], 10, _hoisted_1$
|
|
3074
|
+
__props.withText ? (openBlock(), createElementBlock("span", _hoisted_2$9, toDisplayString(state.value === "copied" ? __props.copiedLabel : __props.copyLabel), 1)) : createCommentVNode("", true),
|
|
3075
|
+
createElementVNode("span", _hoisted_3$8, toDisplayString(state.value === "copied" ? __props.copiedLabel : state.value === "failed" ? __props.errorLabel ?? "" : ""), 1)
|
|
3076
|
+
], 10, _hoisted_1$11);
|
|
2689
3077
|
};
|
|
2690
3078
|
}
|
|
2691
3079
|
}), [["__scopeId", "data-v-c481e140"]]);
|
|
2692
3080
|
//#endregion
|
|
2693
3081
|
//#region src/components/DescriptionList.vue?vue&type=script&setup=true&lang.ts
|
|
2694
|
-
var _hoisted_1$
|
|
2695
|
-
var _hoisted_2$
|
|
3082
|
+
var _hoisted_1$10 = { class: "rk-dl-term" };
|
|
3083
|
+
var _hoisted_2$8 = { class: "rk-dl-value" };
|
|
2696
3084
|
//#endregion
|
|
2697
3085
|
//#region src/components/DescriptionList.vue
|
|
2698
3086
|
var DescriptionList_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PURE__ */ defineComponent({
|
|
@@ -2707,16 +3095,16 @@ var DescriptionList_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/*
|
|
|
2707
3095
|
return openBlock(), createElementBlock("div", {
|
|
2708
3096
|
key: item.key ?? item.term,
|
|
2709
3097
|
class: "rk-dl-row"
|
|
2710
|
-
}, [createElementVNode("dt", _hoisted_1$
|
|
3098
|
+
}, [createElementVNode("dt", _hoisted_1$10, toDisplayString(item.term), 1), createElementVNode("dd", _hoisted_2$8, [renderSlot(_ctx.$slots, item.key ?? item.term, { item }, () => [createTextVNode(toDisplayString(item.description), 1)], true)])]);
|
|
2711
3099
|
}), 128))], 2);
|
|
2712
3100
|
};
|
|
2713
3101
|
}
|
|
2714
3102
|
}), [["__scopeId", "data-v-831e205b"]]);
|
|
2715
3103
|
//#endregion
|
|
2716
3104
|
//#region src/components/FileDrop.vue?vue&type=script&setup=true&lang.ts
|
|
2717
|
-
var _hoisted_1$
|
|
2718
|
-
var _hoisted_2$
|
|
2719
|
-
var _hoisted_3$
|
|
3105
|
+
var _hoisted_1$9 = { class: "rk-drop" };
|
|
3106
|
+
var _hoisted_2$7 = ["for"];
|
|
3107
|
+
var _hoisted_3$7 = [
|
|
2720
3108
|
"id",
|
|
2721
3109
|
"accept",
|
|
2722
3110
|
"multiple",
|
|
@@ -2802,7 +3190,7 @@ var FileDrop_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PUR
|
|
|
2802
3190
|
const size = (bytes) => bytes >= 1048576 ? `${(bytes / 1048576).toFixed(1)} MB` : `${Math.max(1, Math.round(bytes / 1024))} KB`;
|
|
2803
3191
|
const count = computed(() => model.value.length);
|
|
2804
3192
|
return (_ctx, _cache) => {
|
|
2805
|
-
return openBlock(), createElementBlock("div", _hoisted_1$
|
|
3193
|
+
return openBlock(), createElementBlock("div", _hoisted_1$9, [
|
|
2806
3194
|
createElementVNode("label", {
|
|
2807
3195
|
class: normalizeClass(["rk-drop-box control", {
|
|
2808
3196
|
"is-over": over.value,
|
|
@@ -2821,7 +3209,7 @@ var FileDrop_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PUR
|
|
|
2821
3209
|
multiple: __props.multiple,
|
|
2822
3210
|
disabled: __props.disabled,
|
|
2823
3211
|
onChange: onInput
|
|
2824
|
-
}, null, 40, _hoisted_3$
|
|
3212
|
+
}, null, 40, _hoisted_3$7),
|
|
2825
3213
|
createVNode(unref(Upload), {
|
|
2826
3214
|
class: "text-ink-soft size-6",
|
|
2827
3215
|
"aria-hidden": "true"
|
|
@@ -2829,7 +3217,7 @@ var FileDrop_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PUR
|
|
|
2829
3217
|
createElementVNode("span", _hoisted_4$5, toDisplayString(__props.label), 1),
|
|
2830
3218
|
__props.hint ? (openBlock(), createElementBlock("span", _hoisted_5$2, toDisplayString(__props.hint), 1)) : createCommentVNode("", true),
|
|
2831
3219
|
createElementVNode("span", _hoisted_6$2, toDisplayString(__props.browseLabel), 1)
|
|
2832
|
-
], 42, _hoisted_2$
|
|
3220
|
+
], 42, _hoisted_2$7),
|
|
2833
3221
|
refused.value && __props.tooLargeLabel ? (openBlock(), createElementBlock("p", _hoisted_7$1, toDisplayString(__props.tooLargeLabel), 1)) : createCommentVNode("", true),
|
|
2834
3222
|
count.value ? (openBlock(), createElementBlock("ul", _hoisted_8, [(openBlock(true), createElementBlock(Fragment, null, renderList(model.value, (file, index) => {
|
|
2835
3223
|
return openBlock(), createElementBlock("li", {
|
|
@@ -2860,7 +3248,7 @@ var FileDrop_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PUR
|
|
|
2860
3248
|
}), [["__scopeId", "data-v-a42eab69"]]);
|
|
2861
3249
|
//#endregion
|
|
2862
3250
|
//#region src/components/TagsInput.vue?vue&type=script&setup=true&lang.ts
|
|
2863
|
-
var _hoisted_1$
|
|
3251
|
+
var _hoisted_1$8 = [
|
|
2864
3252
|
"id",
|
|
2865
3253
|
"placeholder",
|
|
2866
3254
|
"aria-describedby",
|
|
@@ -2978,7 +3366,7 @@ var TagsInput_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PU
|
|
|
2978
3366
|
onKeydown,
|
|
2979
3367
|
onPaste,
|
|
2980
3368
|
onBlur: add
|
|
2981
|
-
}, null, 40, _hoisted_1$
|
|
3369
|
+
}, null, 40, _hoisted_1$8), [[vModelText, draft.value]])], 2)]),
|
|
2982
3370
|
_: 1
|
|
2983
3371
|
}, 8, [
|
|
2984
3372
|
"label",
|
|
@@ -2992,7 +3380,7 @@ var TagsInput_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PU
|
|
|
2992
3380
|
}), [["__scopeId", "data-v-1fd08921"]]);
|
|
2993
3381
|
//#endregion
|
|
2994
3382
|
//#region src/components/BasePopover.vue?vue&type=script&setup=true&lang.ts
|
|
2995
|
-
var _hoisted_1$
|
|
3383
|
+
var _hoisted_1$7 = ["id", "aria-label"];
|
|
2996
3384
|
var FOCUSABLE = "a[href], button:not([disabled]), input:not([disabled]), select:not([disabled]), textarea:not([disabled]), [tabindex]:not([tabindex=\"-1\"])";
|
|
2997
3385
|
//#endregion
|
|
2998
3386
|
//#region src/components/BasePopover.vue
|
|
@@ -3109,7 +3497,7 @@ var BasePopover_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__
|
|
|
3109
3497
|
role: "dialog",
|
|
3110
3498
|
"aria-label": __props.label,
|
|
3111
3499
|
tabindex: "-1"
|
|
3112
|
-
}, [renderSlot(_ctx.$slots, "default", { close }, void 0, true)], 14, _hoisted_1$
|
|
3500
|
+
}, [renderSlot(_ctx.$slots, "default", { close }, void 0, true)], 14, _hoisted_1$7)) : createCommentVNode("", true)]),
|
|
3113
3501
|
_: 3
|
|
3114
3502
|
})], 544);
|
|
3115
3503
|
};
|
|
@@ -3117,13 +3505,13 @@ var BasePopover_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__
|
|
|
3117
3505
|
}), [["__scopeId", "data-v-1371bff2"]]);
|
|
3118
3506
|
//#endregion
|
|
3119
3507
|
//#region src/components/TimePicker.vue?vue&type=script&setup=true&lang.ts
|
|
3120
|
-
var _hoisted_1$
|
|
3508
|
+
var _hoisted_1$6 = [
|
|
3121
3509
|
"id",
|
|
3122
3510
|
"aria-describedby",
|
|
3123
3511
|
"disabled"
|
|
3124
3512
|
];
|
|
3125
|
-
var _hoisted_2$
|
|
3126
|
-
var _hoisted_3$
|
|
3513
|
+
var _hoisted_2$6 = { class: "truncate" };
|
|
3514
|
+
var _hoisted_3$6 = { class: "rk-time-columns" };
|
|
3127
3515
|
//#endregion
|
|
3128
3516
|
//#region src/components/TimePicker.vue
|
|
3129
3517
|
var TimePicker_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PURE__ */ defineComponent({
|
|
@@ -3225,8 +3613,8 @@ var TimePicker_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__P
|
|
|
3225
3613
|
}, props), [createVNode(unref(Clock), {
|
|
3226
3614
|
class: "size-4 shrink-0",
|
|
3227
3615
|
"aria-hidden": "true"
|
|
3228
|
-
}), createElementVNode("span", _hoisted_2$
|
|
3229
|
-
default: withCtx(() => [createElementVNode("div", _hoisted_3$
|
|
3616
|
+
}), createElementVNode("span", _hoisted_2$6, toDisplayString(shown.value || __props.placeholder), 1)], 16, _hoisted_1$6)]),
|
|
3617
|
+
default: withCtx(() => [createElementVNode("div", _hoisted_3$6, [createVNode(BaseListbox_default, {
|
|
3230
3618
|
"model-value": chosenHour.value,
|
|
3231
3619
|
options: hours.value,
|
|
3232
3620
|
label: __props.hoursLabel,
|
|
@@ -3262,13 +3650,13 @@ var TimePicker_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__P
|
|
|
3262
3650
|
}), [["__scopeId", "data-v-0037adb2"]]);
|
|
3263
3651
|
//#endregion
|
|
3264
3652
|
//#region src/components/BaseDatePicker.vue?vue&type=script&setup=true&lang.ts
|
|
3265
|
-
var _hoisted_1$
|
|
3653
|
+
var _hoisted_1$5 = [
|
|
3266
3654
|
"id",
|
|
3267
3655
|
"aria-describedby",
|
|
3268
3656
|
"disabled"
|
|
3269
3657
|
];
|
|
3270
|
-
var _hoisted_2$
|
|
3271
|
-
var _hoisted_3$
|
|
3658
|
+
var _hoisted_2$5 = { class: "truncate" };
|
|
3659
|
+
var _hoisted_3$5 = ["aria-label", "disabled"];
|
|
3272
3660
|
var _hoisted_4$4 = { class: "rk-date-panel" };
|
|
3273
3661
|
var _hoisted_5$1 = {
|
|
3274
3662
|
key: 0,
|
|
@@ -3358,7 +3746,7 @@ var BaseDatePicker_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/*
|
|
|
3358
3746
|
}, props), [createVNode(unref(CalendarDays), {
|
|
3359
3747
|
class: "size-4 shrink-0",
|
|
3360
3748
|
"aria-hidden": "true"
|
|
3361
|
-
}), createElementVNode("span", _hoisted_2$
|
|
3749
|
+
}), createElementVNode("span", _hoisted_2$5, toDisplayString(shown.value || __props.placeholder), 1)], 16, _hoisted_1$5), __props.clearLabel && shown.value ? (openBlock(), createElementBlock("button", {
|
|
3362
3750
|
key: 0,
|
|
3363
3751
|
type: "button",
|
|
3364
3752
|
class: "rk-date-clear focus-ring",
|
|
@@ -3368,7 +3756,7 @@ var BaseDatePicker_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/*
|
|
|
3368
3756
|
}, [createVNode(unref(X), {
|
|
3369
3757
|
class: "size-3.5",
|
|
3370
3758
|
"aria-hidden": "true"
|
|
3371
|
-
})], 8, _hoisted_3$
|
|
3759
|
+
})], 8, _hoisted_3$5)) : createCommentVNode("", true)], 2)]),
|
|
3372
3760
|
default: withCtx(() => [createElementVNode("div", _hoisted_4$4, [__props.presets?.length ? (openBlock(), createElementBlock("ul", _hoisted_5$1, [(openBlock(true), createElementBlock(Fragment, null, renderList(__props.presets, (preset) => {
|
|
3373
3761
|
return openBlock(), createElementBlock("li", { key: preset.label }, [createElementVNode("button", {
|
|
3374
3762
|
type: "button",
|
|
@@ -3409,12 +3797,12 @@ var BaseDatePicker_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/*
|
|
|
3409
3797
|
}), [["__scopeId", "data-v-154e27fb"]]);
|
|
3410
3798
|
//#endregion
|
|
3411
3799
|
//#region src/components/BasePopconfirm.vue?vue&type=script&setup=true&lang.ts
|
|
3412
|
-
var _hoisted_1$
|
|
3413
|
-
var _hoisted_2$
|
|
3800
|
+
var _hoisted_1$4 = { class: "rk-confirm" };
|
|
3801
|
+
var _hoisted_2$4 = {
|
|
3414
3802
|
key: 0,
|
|
3415
3803
|
class: "rk-confirm-title"
|
|
3416
3804
|
};
|
|
3417
|
-
var _hoisted_3$
|
|
3805
|
+
var _hoisted_3$4 = { class: "rk-confirm-message" };
|
|
3418
3806
|
var _hoisted_4$3 = { class: "rk-confirm-actions" };
|
|
3419
3807
|
//#endregion
|
|
3420
3808
|
//#region src/components/BasePopconfirm.vue
|
|
@@ -3454,9 +3842,9 @@ var BasePopconfirm_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/*
|
|
|
3454
3842
|
align: "end"
|
|
3455
3843
|
}, {
|
|
3456
3844
|
trigger: withCtx((slotProps) => [renderSlot(_ctx.$slots, "trigger", normalizeProps(guardReactiveProps(slotProps)), void 0, true)]),
|
|
3457
|
-
default: withCtx(({ close }) => [createElementVNode("div", _hoisted_1$
|
|
3458
|
-
__props.title ? (openBlock(), createElementBlock("p", _hoisted_2$
|
|
3459
|
-
createElementVNode("p", _hoisted_3$
|
|
3845
|
+
default: withCtx(({ close }) => [createElementVNode("div", _hoisted_1$4, [
|
|
3846
|
+
__props.title ? (openBlock(), createElementBlock("p", _hoisted_2$4, toDisplayString(__props.title), 1)) : createCommentVNode("", true),
|
|
3847
|
+
createElementVNode("p", _hoisted_3$4, toDisplayString(__props.message), 1),
|
|
3460
3848
|
createElementVNode("div", _hoisted_4$3, [createVNode(BaseButton_default, {
|
|
3461
3849
|
size: "sm",
|
|
3462
3850
|
variant: "secondary",
|
|
@@ -3480,8 +3868,8 @@ var BasePopconfirm_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/*
|
|
|
3480
3868
|
}), [["__scopeId", "data-v-9453e511"]]);
|
|
3481
3869
|
//#endregion
|
|
3482
3870
|
//#region src/components/ToggleGroup.vue?vue&type=script&setup=true&lang.ts
|
|
3483
|
-
var _hoisted_1$
|
|
3484
|
-
var _hoisted_2$
|
|
3871
|
+
var _hoisted_1$3 = ["aria-label"];
|
|
3872
|
+
var _hoisted_2$3 = [
|
|
3485
3873
|
"aria-pressed",
|
|
3486
3874
|
"aria-label",
|
|
3487
3875
|
"disabled",
|
|
@@ -3489,7 +3877,7 @@ var _hoisted_2$4 = [
|
|
|
3489
3877
|
"onClick",
|
|
3490
3878
|
"onKeydown"
|
|
3491
3879
|
];
|
|
3492
|
-
var _hoisted_3$
|
|
3880
|
+
var _hoisted_3$3 = { key: 1 };
|
|
3493
3881
|
//#endregion
|
|
3494
3882
|
//#region src/components/ToggleGroup.vue
|
|
3495
3883
|
var ToggleGroup_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PURE__ */ defineComponent({
|
|
@@ -3572,170 +3960,12 @@ var ToggleGroup_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__
|
|
|
3572
3960
|
key: 0,
|
|
3573
3961
|
class: "rk-toggle-icon",
|
|
3574
3962
|
"aria-hidden": "true"
|
|
3575
|
-
})) : createCommentVNode("", true), !option.iconOnly ? (openBlock(), createElementBlock("span", _hoisted_3$
|
|
3576
|
-
}), 128))], 10, _hoisted_1$
|
|
3963
|
+
})) : createCommentVNode("", true), !option.iconOnly ? (openBlock(), createElementBlock("span", _hoisted_3$3, toDisplayString(option.label), 1)) : createCommentVNode("", true)], 40, _hoisted_2$3);
|
|
3964
|
+
}), 128))], 10, _hoisted_1$3);
|
|
3577
3965
|
};
|
|
3578
3966
|
}
|
|
3579
3967
|
}), [["__scopeId", "data-v-9076e36f"]]);
|
|
3580
3968
|
//#endregion
|
|
3581
|
-
//#region src/components/NumberInput.vue?vue&type=script&setup=true&lang.ts
|
|
3582
|
-
var _hoisted_1$3 = ["aria-label", "disabled"];
|
|
3583
|
-
var _hoisted_2$3 = [
|
|
3584
|
-
"id",
|
|
3585
|
-
"value",
|
|
3586
|
-
"aria-valuenow",
|
|
3587
|
-
"aria-valuemin",
|
|
3588
|
-
"aria-valuemax",
|
|
3589
|
-
"aria-invalid",
|
|
3590
|
-
"aria-describedby",
|
|
3591
|
-
"disabled"
|
|
3592
|
-
];
|
|
3593
|
-
var _hoisted_3$3 = ["aria-label", "disabled"];
|
|
3594
|
-
//#endregion
|
|
3595
|
-
//#region src/components/NumberInput.vue
|
|
3596
|
-
var NumberInput_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PURE__ */ defineComponent({
|
|
3597
|
-
__name: "NumberInput",
|
|
3598
|
-
props: /*@__PURE__*/ mergeModels({
|
|
3599
|
-
label: {},
|
|
3600
|
-
min: { default: () => -Infinity },
|
|
3601
|
-
max: { default: () => Infinity },
|
|
3602
|
-
step: { default: 1 },
|
|
3603
|
-
decrementLabel: {},
|
|
3604
|
-
incrementLabel: {},
|
|
3605
|
-
error: { default: "" },
|
|
3606
|
-
hint: { default: "" },
|
|
3607
|
-
size: { default: "md" },
|
|
3608
|
-
labelHidden: {
|
|
3609
|
-
type: Boolean,
|
|
3610
|
-
default: false
|
|
3611
|
-
},
|
|
3612
|
-
disabled: {
|
|
3613
|
-
type: Boolean,
|
|
3614
|
-
default: false
|
|
3615
|
-
}
|
|
3616
|
-
}, {
|
|
3617
|
-
"modelValue": {},
|
|
3618
|
-
"modelModifiers": {}
|
|
3619
|
-
}),
|
|
3620
|
-
emits: ["update:modelValue"],
|
|
3621
|
-
setup(__props) {
|
|
3622
|
-
/** The number, with `v-model`. `undefined` while the field is empty. */
|
|
3623
|
-
const model = useModel(__props, "modelValue");
|
|
3624
|
-
const places = computed(() => (String(__props.step).split(".")[1] ?? "").length);
|
|
3625
|
-
const settle = (value) => Number(Math.min(__props.max, Math.max(__props.min, value)).toFixed(Math.min(places.value, 20)));
|
|
3626
|
-
const draft = ref(model.value === void 0 ? "" : String(model.value));
|
|
3627
|
-
watch(model, (value) => {
|
|
3628
|
-
if ((draft.value === "" ? void 0 : Number(draft.value)) !== value) draft.value = value === void 0 ? "" : String(value);
|
|
3629
|
-
});
|
|
3630
|
-
function onInput(event) {
|
|
3631
|
-
const text = event.target.value.replace(",", ".");
|
|
3632
|
-
draft.value = text;
|
|
3633
|
-
if (text.trim() === "") {
|
|
3634
|
-
model.value = void 0;
|
|
3635
|
-
return;
|
|
3636
|
-
}
|
|
3637
|
-
const value = Number(text);
|
|
3638
|
-
if (Number.isFinite(value)) model.value = value;
|
|
3639
|
-
}
|
|
3640
|
-
function commit() {
|
|
3641
|
-
if (model.value === void 0) {
|
|
3642
|
-
draft.value = "";
|
|
3643
|
-
return;
|
|
3644
|
-
}
|
|
3645
|
-
setTo(model.value);
|
|
3646
|
-
}
|
|
3647
|
-
function setTo(value) {
|
|
3648
|
-
model.value = settle(value);
|
|
3649
|
-
draft.value = String(model.value);
|
|
3650
|
-
}
|
|
3651
|
-
function stepBy(times) {
|
|
3652
|
-
if (__props.disabled) return;
|
|
3653
|
-
setTo((model.value ?? (Number.isFinite(__props.min) ? __props.min : 0)) + __props.step * times);
|
|
3654
|
-
}
|
|
3655
|
-
function onKeydown(event) {
|
|
3656
|
-
const action = {
|
|
3657
|
-
ArrowUp: () => stepBy(1),
|
|
3658
|
-
ArrowDown: () => stepBy(-1),
|
|
3659
|
-
PageUp: () => stepBy(10),
|
|
3660
|
-
PageDown: () => stepBy(-10),
|
|
3661
|
-
Home: () => {
|
|
3662
|
-
if (Number.isFinite(__props.min)) setTo(__props.min);
|
|
3663
|
-
},
|
|
3664
|
-
End: () => {
|
|
3665
|
-
if (Number.isFinite(__props.max)) setTo(__props.max);
|
|
3666
|
-
}
|
|
3667
|
-
}[event.key];
|
|
3668
|
-
if (!action) return;
|
|
3669
|
-
event.preventDefault();
|
|
3670
|
-
action();
|
|
3671
|
-
}
|
|
3672
|
-
const atMin = computed(() => model.value !== void 0 && model.value <= __props.min);
|
|
3673
|
-
const atMax = computed(() => model.value !== void 0 && model.value >= __props.max);
|
|
3674
|
-
return (_ctx, _cache) => {
|
|
3675
|
-
return openBlock(), createBlock(FormField_default, {
|
|
3676
|
-
label: __props.label,
|
|
3677
|
-
error: __props.error,
|
|
3678
|
-
hint: __props.hint,
|
|
3679
|
-
size: __props.size,
|
|
3680
|
-
"label-hidden": __props.labelHidden
|
|
3681
|
-
}, {
|
|
3682
|
-
default: withCtx(({ id, describedBy, invalid }) => [createElementVNode("div", { class: normalizeClass(["rk-number control", {
|
|
3683
|
-
"is-invalid": invalid,
|
|
3684
|
-
"is-disabled": __props.disabled
|
|
3685
|
-
}]) }, [
|
|
3686
|
-
createElementVNode("button", {
|
|
3687
|
-
type: "button",
|
|
3688
|
-
class: "rk-number-step focus-ring",
|
|
3689
|
-
"aria-label": __props.decrementLabel,
|
|
3690
|
-
disabled: __props.disabled || atMin.value,
|
|
3691
|
-
tabindex: "-1",
|
|
3692
|
-
onClick: _cache[0] || (_cache[0] = ($event) => stepBy(-1))
|
|
3693
|
-
}, [createVNode(unref(Minus), {
|
|
3694
|
-
class: "size-4",
|
|
3695
|
-
"aria-hidden": "true"
|
|
3696
|
-
})], 8, _hoisted_1$3),
|
|
3697
|
-
createElementVNode("input", {
|
|
3698
|
-
id,
|
|
3699
|
-
value: draft.value,
|
|
3700
|
-
type: "text",
|
|
3701
|
-
inputmode: "decimal",
|
|
3702
|
-
role: "spinbutton",
|
|
3703
|
-
autocomplete: "off",
|
|
3704
|
-
class: "rk-number-field",
|
|
3705
|
-
"aria-valuenow": model.value,
|
|
3706
|
-
"aria-valuemin": Number.isFinite(__props.min) ? __props.min : void 0,
|
|
3707
|
-
"aria-valuemax": Number.isFinite(__props.max) ? __props.max : void 0,
|
|
3708
|
-
"aria-invalid": invalid,
|
|
3709
|
-
"aria-describedby": describedBy,
|
|
3710
|
-
disabled: __props.disabled,
|
|
3711
|
-
onInput,
|
|
3712
|
-
onBlur: commit,
|
|
3713
|
-
onKeydown
|
|
3714
|
-
}, null, 40, _hoisted_2$3),
|
|
3715
|
-
createElementVNode("button", {
|
|
3716
|
-
type: "button",
|
|
3717
|
-
class: "rk-number-step focus-ring",
|
|
3718
|
-
"aria-label": __props.incrementLabel,
|
|
3719
|
-
disabled: __props.disabled || atMax.value,
|
|
3720
|
-
tabindex: "-1",
|
|
3721
|
-
onClick: _cache[1] || (_cache[1] = ($event) => stepBy(1))
|
|
3722
|
-
}, [createVNode(unref(Plus), {
|
|
3723
|
-
class: "size-4",
|
|
3724
|
-
"aria-hidden": "true"
|
|
3725
|
-
})], 8, _hoisted_3$3)
|
|
3726
|
-
], 2)]),
|
|
3727
|
-
_: 1
|
|
3728
|
-
}, 8, [
|
|
3729
|
-
"label",
|
|
3730
|
-
"error",
|
|
3731
|
-
"hint",
|
|
3732
|
-
"size",
|
|
3733
|
-
"label-hidden"
|
|
3734
|
-
]);
|
|
3735
|
-
};
|
|
3736
|
-
}
|
|
3737
|
-
}), [["__scopeId", "data-v-082bd3d7"]]);
|
|
3738
|
-
//#endregion
|
|
3739
3969
|
//#region src/components/PinInput.vue?vue&type=script&setup=true&lang.ts
|
|
3740
3970
|
var _hoisted_1$2 = { class: "rk-pin" };
|
|
3741
3971
|
var _hoisted_2$2 = ["aria-label"];
|
|
@@ -4174,8 +4404,8 @@ function createI18nRuntime(options) {
|
|
|
4174
4404
|
*
|
|
4175
4405
|
* The fallback keeps `vitest` and `vite dev` honest, where no define runs.
|
|
4176
4406
|
*/
|
|
4177
|
-
var VERSION = "2.
|
|
4407
|
+
var VERSION = "2.16.0";
|
|
4178
4408
|
//#endregion
|
|
4179
|
-
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, CircularProgress_default as CircularProgress, 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, 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 };
|
|
4409
|
+
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, 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 };
|
|
4180
4410
|
|
|
4181
4411
|
//# sourceMappingURL=index.js.map
|