ropav 0.1.5 → 0.1.6
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 -0
- package/dist/accordion.js +11 -8
- package/dist/alert.css +18 -18
- package/dist/alert.js +18 -17
- package/dist/avatar.js +2 -2
- package/dist/badge.js +2 -2
- package/dist/base.css +18 -13
- package/dist/button-group.js +1 -1
- package/dist/button-link.js +10 -12
- package/dist/button.css +32 -27
- package/dist/button.js +10 -12
- package/dist/{useButtonColor.js → button.scss_vue_type_style_index_0_src_true_lang.js} +2 -1
- package/dist/card.js +1 -1
- package/dist/checkbox.css +32 -32
- package/dist/checkbox.js +6 -6
- package/dist/collapse.css +6 -6
- package/dist/collapse.js +4 -4
- package/dist/collectionNavigation.js +2 -2
- package/dist/color-input.css +19 -19
- package/dist/color-input.js +5 -5
- package/dist/color-picker.css +7 -7
- package/dist/color-picker.js +4 -5
- package/dist/color-swatch.js +1 -1
- package/dist/componentColors.js +42 -2
- package/dist/components/checkbox/useCheckbox.d.ts +1 -1
- package/dist/components/color-input/color-input.d.ts +2 -2
- package/dist/components/color-input/useColorInput.d.ts +1 -1
- package/dist/components/dialog/dialog-core.d.ts +1 -1
- package/dist/components/dropdown-menu/dropdown-menu-content.d.ts +2 -2
- package/dist/components/dropdown-menu/dropdown-menu-primitive-core.d.ts +1 -1
- package/dist/components/dropdown-menu/dropdown-menu-sub-content.d.ts +2 -2
- package/dist/components/dropdown-menu/dropdown-menu.d.ts +3 -3
- package/dist/components/dropdown-menu/useDropdownMenuDisclosure.d.ts +3 -4
- package/dist/components/input/useInput.d.ts +1 -1
- package/dist/components/number-input/useNumberInput.d.ts +1 -1
- package/dist/components/progress/useProgress.d.ts +1 -1
- package/dist/components/radio/useRadio.d.ts +2 -2
- package/dist/components/scroll-area/scrollAreaCore.d.ts +5 -0
- package/dist/components/scroll-area/types.d.ts +4 -0
- package/dist/components/scroll-area/useScrollArea.d.ts +1 -0
- package/dist/components/scroll-area/useScrollAreaMetrics.d.ts +3 -0
- package/dist/components/scroll-area/useScrollAreaPresentation.d.ts +3 -0
- package/dist/components/select/useSelect.d.ts +2 -1
- package/dist/components/select/useSelectNativeValue.d.ts +1 -7
- package/dist/components/slider/sliderCore.d.ts +2 -1
- package/dist/components/slider/useRangeSlider.d.ts +1 -1
- package/dist/components/slider/useSlider.d.ts +1 -1
- package/dist/components/switch/useSwitch.d.ts +1 -1
- package/dist/components/textarea/useTextarea.d.ts +1 -1
- package/dist/composables/index.d.ts +2 -0
- package/dist/composables/index.js +2 -0
- package/dist/composables/useControllableValue.d.ts +14 -0
- package/dist/dialog.js +8 -5
- package/dist/dropdown-menu.js +43 -29
- package/dist/field.js +1 -1
- package/dist/floating.js +19 -7
- package/dist/icon-button.css +12 -173
- package/dist/icon-button.js +5 -5
- package/dist/index.d.ts +5 -4
- package/dist/index.js +7 -5
- package/dist/input.css +24 -24
- package/dist/input.js +5 -5
- package/dist/modal.js +11 -7
- package/dist/number-input.css +18 -18
- package/dist/number-input.js +7 -7
- package/dist/overlay.js +1 -1
- package/dist/pagination.js +3 -3
- package/dist/popover.js +9 -6
- package/dist/progress.css +29 -21
- package/dist/progress.js +17 -10
- package/dist/radio.js +3 -3
- package/dist/scroll-area.css +10 -1
- package/dist/scroll-area.js +82 -25
- package/dist/select.css +45 -45
- package/dist/select.js +48 -26
- package/dist/slider.css +142 -142
- package/dist/slider.js +32 -38
- package/dist/switch.css +17 -17
- package/dist/switch.js +6 -6
- package/dist/tabs.css +3 -3
- package/dist/tabs.js +25 -15
- package/dist/textarea.css +26 -26
- package/dist/textarea.js +4 -4
- package/dist/toast.css +26 -26
- package/dist/toast.js +24 -19
- package/dist/tooltip.js +11 -8
- package/dist/useCollapse.js +12 -7
- package/dist/useControlState.js +1 -1
- package/dist/useControllableValue.js +8 -2
- package/dist/useFloatingPosition.js +4 -1140
- package/dist/useFormControl.js +3 -2
- package/dist/useOverlayZIndex.js +1 -1
- package/dist/useRequiredInject.js +1 -1
- package/docs/public-composables-api.md +52 -0
- package/package.json +45 -38
- package/src/styles/_mixins.scss +4 -0
- package/src/styles/_tokens.scss +12 -12
- package/src/styles/_variables.scss +1 -1
- package/dist/button-link.css +0 -167
- /package/dist/{composables → internal/composables}/useOverlayLayer.d.ts +0 -0
package/dist/slider.js
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import './slider.css';
|
|
2
|
-
import { t as
|
|
2
|
+
import { t as useControllableValue } from "./useControllableValue.js";
|
|
3
3
|
import { n as useStylesApi, t as presence } from "./styles-api.js";
|
|
4
|
-
import {
|
|
4
|
+
import { t as bem } from "./bem.js";
|
|
5
5
|
import { t as _plugin_vue_export_helper_default } from "./_plugin-vue_export-helper.js";
|
|
6
|
-
import { t as
|
|
6
|
+
import { n as getComponentColorRoles, r as getComponentColorValue, t as componentColors } from "./componentColors.js";
|
|
7
7
|
import { i as useFormControl } from "./useFormControl.js";
|
|
8
8
|
import { t as useControlState } from "./useControlState.js";
|
|
9
9
|
import { i as useDelayedOpen, n as resolveTooltipColorStyleWithContrast, r as resolveTooltipOffsetStyle, t as tooltip_default } from "./tooltip.js";
|
|
@@ -67,7 +67,9 @@ function getSliderThumbMode(thumb) {
|
|
|
67
67
|
function getSliderMarkStyle(percent, color, properties) {
|
|
68
68
|
const style = { [properties.position]: `${percent}%` };
|
|
69
69
|
const colorValue = getComponentColorValue(color);
|
|
70
|
-
|
|
70
|
+
const foreground = getComponentColorRoles(color)?.foreground;
|
|
71
|
+
for (const property of properties.decorativeColors) setSliderStyleValue(style, property, colorValue);
|
|
72
|
+
for (const property of properties.foregroundColors) setSliderStyleValue(style, property, foreground);
|
|
71
73
|
return style;
|
|
72
74
|
}
|
|
73
75
|
function createSliderMarkItems(marks, min, max, isFilled, properties) {
|
|
@@ -140,12 +142,8 @@ function useSlider(props, emitUpdate, getValue = () => props.modelValue ?? props
|
|
|
140
142
|
const ariaValueText = computed(() => getSliderAriaValueText(normalizedValue.value, props.ariaValueText, props.formatValue));
|
|
141
143
|
const markItems = computed(() => createSliderMarkItems(props.marks, bounds.value.min, bounds.value.max, (_value, percent) => percent <= valuePercent.value, {
|
|
142
144
|
position: "--_rp-slider-mark-position",
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
"--_rp-slider-mark-label-color",
|
|
146
|
-
"--_rp-slider-mark-filled-label-color",
|
|
147
|
-
"--_rp-slider-mark-ring-color"
|
|
148
|
-
]
|
|
145
|
+
decorativeColors: ["--_rp-slider-mark-color", "--_rp-slider-mark-ring-color"],
|
|
146
|
+
foregroundColors: ["--_rp-slider-mark-label-color", "--_rp-slider-mark-filled-label-color"]
|
|
149
147
|
}));
|
|
150
148
|
const tooltipOptions = computed(() => getSliderTooltipOptions(props.tooltip));
|
|
151
149
|
const tooltipAnchor = computed(() => getSliderTooltipAnchor(props.tooltip));
|
|
@@ -387,17 +385,17 @@ function useSlider(props, emitUpdate, getValue = () => props.modelValue ?? props
|
|
|
387
385
|
}
|
|
388
386
|
//#endregion
|
|
389
387
|
//#region src/components/slider/slider.vue?vue&type=script&setup=true&vapor=true&lang.ts
|
|
390
|
-
var t0$2 = template("<span data-v-
|
|
391
|
-
var t1$2 = template("<span data-v-
|
|
392
|
-
var t2$2 = template("<span data-v-
|
|
393
|
-
var t3$2 = template("<span data-v-
|
|
394
|
-
var t4$2 = template("<span data-v-
|
|
395
|
-
var t5$1 = template("<span data-v-
|
|
396
|
-
var t6$1 = template("<span data-v-
|
|
397
|
-
var t7$1 = template("<span data-v-
|
|
398
|
-
var t8$1 = template("<span data-v-
|
|
388
|
+
var t0$2 = template("<span data-v-c850c027>");
|
|
389
|
+
var t1$2 = template("<span data-v-c850c027 class=rp-slider__header>");
|
|
390
|
+
var t2$2 = template("<span data-v-c850c027 class=\"rp-slider__track-layer rp-slider__track-underlay\"aria-hidden=true>");
|
|
391
|
+
var t3$2 = template("<span data-v-c850c027 class=\"rp-slider__track-layer rp-slider__track-overlay\"aria-hidden=true>");
|
|
392
|
+
var t4$2 = template("<span data-v-c850c027 class=rp-slider__travel aria-hidden=true>", 2);
|
|
393
|
+
var t5$1 = template("<span data-v-c850c027> ");
|
|
394
|
+
var t6$1 = template("<span data-v-c850c027><span data-v-c850c027 class=rp-slider__mark-dot></span>");
|
|
395
|
+
var t7$1 = template("<span data-v-c850c027 class=rp-slider__marks aria-hidden=true>");
|
|
396
|
+
var t8$1 = template("<span data-v-c850c027 class=rp-slider__tooltip-anchor aria-hidden=true></span>", 2);
|
|
399
397
|
var t9$1 = template(" ");
|
|
400
|
-
var t10 = template("<label data-v-
|
|
398
|
+
var t10 = template("<label data-v-c850c027><span data-v-c850c027><span data-v-c850c027 class=rp-slider__rail aria-hidden=true></span><!><span data-v-c850c027></span><!><input data-v-c850c027><!><span data-v-c850c027><span data-v-c850c027 class=rp-slider__thumb-content>", 1);
|
|
401
399
|
delegateEvents("pointerdown", "pointermove", "focusin", "focusout", "keydown");
|
|
402
400
|
//#endregion
|
|
403
401
|
//#region src/components/slider/slider.vue
|
|
@@ -682,7 +680,7 @@ var slider_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PURE_
|
|
|
682
680
|
n45.$evtkeydown = createInvoker((e) => unref(onTooltipKeydown)(e));
|
|
683
681
|
return n48;
|
|
684
682
|
}
|
|
685
|
-
}), [["__scopeId", "data-v-
|
|
683
|
+
}), [["__scopeId", "data-v-c850c027"]]);
|
|
686
684
|
//#endregion
|
|
687
685
|
//#region src/components/slider/useRangeSliderTooltipCollision.ts
|
|
688
686
|
var TOOLTIP_COLLISION_GAP = 4;
|
|
@@ -1402,12 +1400,8 @@ function useRangeSlider(props, emitUpdate, getValue = () => props.modelValue ??
|
|
|
1402
1400
|
});
|
|
1403
1401
|
const markItems = computed(() => createSliderMarkItems(props.marks, bounds.value.min, bounds.value.max, (value) => value >= normalizedValue.value[0] && value <= normalizedValue.value[1], {
|
|
1404
1402
|
position: "--_rp-range-slider-mark-position",
|
|
1405
|
-
|
|
1406
|
-
|
|
1407
|
-
"--_rp-range-slider-mark-label-color",
|
|
1408
|
-
"--_rp-range-slider-mark-filled-label-color",
|
|
1409
|
-
"--_rp-range-slider-mark-ring-color"
|
|
1410
|
-
]
|
|
1403
|
+
decorativeColors: ["--_rp-range-slider-mark-color", "--_rp-range-slider-mark-ring-color"],
|
|
1404
|
+
foregroundColors: ["--_rp-range-slider-mark-label-color", "--_rp-range-slider-mark-filled-label-color"]
|
|
1411
1405
|
}));
|
|
1412
1406
|
const hasMarkLabels = computed(() => markItems.value.some((mark) => mark.hasLabel));
|
|
1413
1407
|
const trackSlotProps = computed(() => ({
|
|
@@ -1618,16 +1612,16 @@ function useRangeSlider(props, emitUpdate, getValue = () => props.modelValue ??
|
|
|
1618
1612
|
}
|
|
1619
1613
|
//#endregion
|
|
1620
1614
|
//#region src/components/slider/range-slider.vue?vue&type=script&setup=true&vapor=true&lang.ts
|
|
1621
|
-
var t0 = template("<span data-v-
|
|
1622
|
-
var t1 = template("<span data-v-
|
|
1623
|
-
var t2 = template("<span data-v-
|
|
1624
|
-
var t3 = template("<span data-v-
|
|
1625
|
-
var t4 = template("<input data-v-
|
|
1626
|
-
var t5 = template("<span data-v-
|
|
1627
|
-
var t6 = template("<span data-v-
|
|
1628
|
-
var t7 = template("<span data-v-
|
|
1629
|
-
var t8 = template("<span data-v-
|
|
1630
|
-
var t9 = template("<div data-v-
|
|
1615
|
+
var t0 = template("<span data-v-ec20f482>");
|
|
1616
|
+
var t1 = template("<span data-v-ec20f482 class=rp-range-slider__header>");
|
|
1617
|
+
var t2 = template("<span data-v-ec20f482 class=\"rp-range-slider__track-layer rp-range-slider__track-underlay\"aria-hidden=true>");
|
|
1618
|
+
var t3 = template("<span data-v-ec20f482 class=\"rp-range-slider__track-layer rp-range-slider__track-overlay\"aria-hidden=true>");
|
|
1619
|
+
var t4 = template("<input data-v-ec20f482>");
|
|
1620
|
+
var t5 = template("<span data-v-ec20f482> ");
|
|
1621
|
+
var t6 = template("<span data-v-ec20f482><span data-v-ec20f482 class=rp-range-slider__mark-dot></span>");
|
|
1622
|
+
var t7 = template("<span data-v-ec20f482 class=rp-range-slider__marks aria-hidden=true>");
|
|
1623
|
+
var t8 = template("<span data-v-ec20f482><span data-v-ec20f482 class=rp-range-slider__thumb-content>");
|
|
1624
|
+
var t9 = template("<div data-v-ec20f482><span data-v-ec20f482><span data-v-ec20f482 class=rp-range-slider__rail aria-hidden=true></span><!><span data-v-ec20f482></span><!><span data-v-ec20f482 class=rp-range-slider__thumbs aria-hidden=true>", 1);
|
|
1631
1625
|
delegateEvents("pointerdown");
|
|
1632
1626
|
//#endregion
|
|
1633
1627
|
//#region src/components/slider/range-slider.vue
|
|
@@ -1953,7 +1947,7 @@ var range_slider_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @_
|
|
|
1953
1947
|
on(n42, "mouseleave", (e) => unref(onTooltipTrackMouseLeave)(e));
|
|
1954
1948
|
return n44;
|
|
1955
1949
|
}
|
|
1956
|
-
}), [["__scopeId", "data-v-
|
|
1950
|
+
}), [["__scopeId", "data-v-ec20f482"]]);
|
|
1957
1951
|
//#endregion
|
|
1958
1952
|
//#region src/components/slider/types.ts
|
|
1959
1953
|
var sliderParts = [
|
package/dist/switch.css
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
@layer ropav.components {
|
|
2
|
-
.rp-switch[data-v-
|
|
2
|
+
.rp-switch[data-v-524fc431] {
|
|
3
3
|
--_rp-switch-color: var(--rp-color-control-selected-bg);
|
|
4
4
|
--_rp-switch-font-size: var(--rp-font-size-md);
|
|
5
5
|
--_rp-switch-default-track-width: 46px;
|
|
@@ -26,15 +26,15 @@
|
|
|
26
26
|
font-family: var(--rp-font-family);
|
|
27
27
|
user-select: none;
|
|
28
28
|
}
|
|
29
|
-
.rp-switch--disabled[data-v-
|
|
29
|
+
.rp-switch--disabled[data-v-524fc431] {
|
|
30
30
|
opacity: var(--rp-opacity-disabled);
|
|
31
31
|
cursor: not-allowed;
|
|
32
32
|
}
|
|
33
|
-
.rp-switch[data-v-
|
|
33
|
+
.rp-switch[data-v-524fc431] {
|
|
34
34
|
gap: var(--rp-spacing-2);
|
|
35
35
|
font-size: var(--_rp-switch-font-size);
|
|
36
36
|
}
|
|
37
|
-
.rp-switch__native[data-v-
|
|
37
|
+
.rp-switch__native[data-v-524fc431] {
|
|
38
38
|
position: absolute;
|
|
39
39
|
width: 1px;
|
|
40
40
|
height: 1px;
|
|
@@ -46,11 +46,11 @@
|
|
|
46
46
|
border-width: 0;
|
|
47
47
|
pointer-events: none;
|
|
48
48
|
}
|
|
49
|
-
.rp-switch__native:focus-visible + .rp-switch__track[data-v-
|
|
49
|
+
.rp-switch__native:focus-visible + .rp-switch__track[data-v-524fc431] {
|
|
50
50
|
border-color: var(--rp-color-control-border-focus);
|
|
51
51
|
box-shadow: 0 0 0 var(--rp-border-width-medium) var(--rp-color-focus-ring);
|
|
52
52
|
}
|
|
53
|
-
.rp-switch__track[data-v-
|
|
53
|
+
.rp-switch__track[data-v-524fc431] {
|
|
54
54
|
position: relative;
|
|
55
55
|
display: inline-flex;
|
|
56
56
|
align-items: center;
|
|
@@ -61,17 +61,17 @@
|
|
|
61
61
|
border-radius: var(--rp-radius-full);
|
|
62
62
|
transition: background-color var(--rp-transition-fast);
|
|
63
63
|
}
|
|
64
|
-
.rp-switch--checked .rp-switch__track[data-v-
|
|
64
|
+
.rp-switch--checked .rp-switch__track[data-v-524fc431] {
|
|
65
65
|
background-color: var(--_rp-switch-color);
|
|
66
66
|
}
|
|
67
|
-
.rp-switch--invalid .rp-switch__track[data-v-
|
|
67
|
+
.rp-switch--invalid .rp-switch__track[data-v-524fc431] {
|
|
68
68
|
outline: var(--rp-border-width-thin) solid var(--_rp-switch-invalid-border);
|
|
69
69
|
outline-offset: var(--_rp-switch-thumb-offset);
|
|
70
70
|
}
|
|
71
|
-
.rp-switch--invalid .rp-switch__native:focus-visible + .rp-switch__track[data-v-
|
|
71
|
+
.rp-switch--invalid .rp-switch__native:focus-visible + .rp-switch__track[data-v-524fc431] {
|
|
72
72
|
box-shadow: 0 0 0 var(--rp-border-width-medium) var(--_rp-switch-invalid-ring);
|
|
73
73
|
}
|
|
74
|
-
.rp-switch__thumb[data-v-
|
|
74
|
+
.rp-switch__thumb[data-v-524fc431] {
|
|
75
75
|
position: absolute;
|
|
76
76
|
left: var(--_rp-switch-thumb-offset);
|
|
77
77
|
width: var(--_rp-switch-thumb-size);
|
|
@@ -81,38 +81,38 @@
|
|
|
81
81
|
box-shadow: var(--rp-shadow-sm);
|
|
82
82
|
transition: transform var(--rp-transition-fast);
|
|
83
83
|
}
|
|
84
|
-
.rp-switch--checked .rp-switch__thumb[data-v-
|
|
84
|
+
.rp-switch--checked .rp-switch__thumb[data-v-524fc431] {
|
|
85
85
|
transform: translateX(calc(var(--_rp-switch-track-width) - var(--_rp-switch-thumb-size) - var(--_rp-switch-thumb-offset) * 2));
|
|
86
86
|
}
|
|
87
|
-
.rp-switch__label[data-v-
|
|
87
|
+
.rp-switch__label[data-v-524fc431] {
|
|
88
88
|
line-height: var(--rp-line-height-md);
|
|
89
89
|
color: var(--rp-color-text);
|
|
90
90
|
}
|
|
91
|
-
.rp-switch--size-xs[data-v-
|
|
91
|
+
.rp-switch--size-xs[data-v-524fc431] {
|
|
92
92
|
--_rp-switch-default-track-width: 32px;
|
|
93
93
|
--_rp-switch-default-track-height: 16px;
|
|
94
94
|
--_rp-switch-default-thumb-size: 12px;
|
|
95
95
|
--_rp-switch-font-size: var(--rp-font-size-xs);
|
|
96
96
|
}
|
|
97
|
-
.rp-switch--size-sm[data-v-
|
|
97
|
+
.rp-switch--size-sm[data-v-524fc431] {
|
|
98
98
|
--_rp-switch-default-track-width: 38px;
|
|
99
99
|
--_rp-switch-default-track-height: 20px;
|
|
100
100
|
--_rp-switch-default-thumb-size: 14px;
|
|
101
101
|
--_rp-switch-font-size: var(--rp-font-size-sm);
|
|
102
102
|
}
|
|
103
|
-
.rp-switch--size-md[data-v-
|
|
103
|
+
.rp-switch--size-md[data-v-524fc431] {
|
|
104
104
|
--_rp-switch-default-track-width: 46px;
|
|
105
105
|
--_rp-switch-default-track-height: 24px;
|
|
106
106
|
--_rp-switch-default-thumb-size: 18px;
|
|
107
107
|
--_rp-switch-font-size: var(--rp-font-size-md);
|
|
108
108
|
}
|
|
109
|
-
.rp-switch--size-lg[data-v-
|
|
109
|
+
.rp-switch--size-lg[data-v-524fc431] {
|
|
110
110
|
--_rp-switch-default-track-width: 56px;
|
|
111
111
|
--_rp-switch-default-track-height: 30px;
|
|
112
112
|
--_rp-switch-default-thumb-size: 22px;
|
|
113
113
|
--_rp-switch-font-size: var(--rp-font-size-lg);
|
|
114
114
|
}
|
|
115
|
-
.rp-switch--size-xl[data-v-
|
|
115
|
+
.rp-switch--size-xl[data-v-524fc431] {
|
|
116
116
|
--_rp-switch-default-track-width: 72px;
|
|
117
117
|
--_rp-switch-default-track-height: 36px;
|
|
118
118
|
--_rp-switch-default-thumb-size: 28px;
|
package/dist/switch.js
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import './switch.css';
|
|
2
|
-
import { t as
|
|
2
|
+
import { t as useControllableValue } from "./useControllableValue.js";
|
|
3
3
|
import { n as useStylesApi, t as presence } from "./styles-api.js";
|
|
4
|
-
import {
|
|
4
|
+
import { t as bem } from "./bem.js";
|
|
5
5
|
import { t as _plugin_vue_export_helper_default } from "./_plugin-vue_export-helper.js";
|
|
6
|
-
import {
|
|
6
|
+
import { r as getComponentColorValue } from "./componentColors.js";
|
|
7
7
|
import { r as useCheckedFormControl } from "./useFormControl.js";
|
|
8
8
|
import { t as useControlState } from "./useControlState.js";
|
|
9
9
|
import { child, computed, createIf, createSlot, defineVaporComponent, next, nextTick, ref, renderEffect, setDynamicProps, setInsertionState, setStaticTemplateRef, template, unref } from "vue";
|
|
@@ -44,8 +44,8 @@ function useSwitch(props, emitUpdate, getValue = () => props.modelValue ?? false
|
|
|
44
44
|
}
|
|
45
45
|
//#endregion
|
|
46
46
|
//#region src/components/switch/switch.vue?vue&type=script&setup=true&vapor=true&lang.ts
|
|
47
|
-
var t0 = template("<span data-v-
|
|
48
|
-
var t1 = template("<label data-v-
|
|
47
|
+
var t0 = template("<span data-v-524fc431>");
|
|
48
|
+
var t1 = template("<label data-v-524fc431><input data-v-524fc431><span data-v-524fc431><span data-v-524fc431></span></span>", 1);
|
|
49
49
|
//#endregion
|
|
50
50
|
//#region src/components/switch/switch.vue
|
|
51
51
|
var switch_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PURE__ */ defineVaporComponent({
|
|
@@ -171,7 +171,7 @@ var switch_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PURE_
|
|
|
171
171
|
});
|
|
172
172
|
return n7;
|
|
173
173
|
}
|
|
174
|
-
}), [["__scopeId", "data-v-
|
|
174
|
+
}), [["__scopeId", "data-v-524fc431"]]);
|
|
175
175
|
//#endregion
|
|
176
176
|
//#region src/components/switch/types.ts
|
|
177
177
|
var switchParts = [
|
package/dist/tabs.css
CHANGED
|
@@ -17,7 +17,7 @@
|
|
|
17
17
|
gap: var(--rp-spacing-5);
|
|
18
18
|
}
|
|
19
19
|
}@layer ropav.components {
|
|
20
|
-
.rp-tabs-content[data-v-
|
|
20
|
+
.rp-tabs-content[data-v-741d0283] {
|
|
21
21
|
box-sizing: border-box;
|
|
22
22
|
min-width: 0;
|
|
23
23
|
color: var(--rp-color-text);
|
|
@@ -25,12 +25,12 @@
|
|
|
25
25
|
font-size: var(--rp-font-size-md);
|
|
26
26
|
line-height: var(--rp-line-height-md);
|
|
27
27
|
}
|
|
28
|
-
.rp-tabs-content[data-v-
|
|
28
|
+
.rp-tabs-content[data-v-741d0283]:focus-visible {
|
|
29
29
|
outline: none;
|
|
30
30
|
border-color: var(--rp-color-control-border-focus);
|
|
31
31
|
box-shadow: 0 0 0 var(--rp-border-width-medium) var(--rp-color-focus-ring);
|
|
32
32
|
}
|
|
33
|
-
.rp-tabs-content--vertical[data-v-
|
|
33
|
+
.rp-tabs-content--vertical[data-v-741d0283] {
|
|
34
34
|
flex: 1 1 0;
|
|
35
35
|
}
|
|
36
36
|
}@layer ropav.components {
|
package/dist/tabs.js
CHANGED
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
import './tabs.css';
|
|
2
|
-
import { t as
|
|
2
|
+
import { t as useControllableValue } from "./useControllableValue.js";
|
|
3
3
|
import { n as useStylesApi, t as presence } from "./styles-api.js";
|
|
4
|
-
import { t as _plugin_vue_export_helper_default } from "./_plugin-vue_export-helper.js";
|
|
5
4
|
import { t as useRequiredInject } from "./useRequiredInject.js";
|
|
5
|
+
import { t as bem } from "./bem.js";
|
|
6
|
+
import { t as _plugin_vue_export_helper_default } from "./_plugin-vue_export-helper.js";
|
|
6
7
|
import { t as scroll_area_default } from "./scroll-area.js";
|
|
7
8
|
import { computed, createComponent, createIf, createSlot, defineVaporComponent, extend, mergeProps, onBeforeUnmount, onMounted, provide, ref, renderEffect, setDynamicProps, setInsertionState, shallowRef, template, unref, useId, watch } from "vue";
|
|
8
9
|
//#region src/components/tabs/useTabs.ts
|
|
@@ -116,7 +117,7 @@ function getNextTrigger(list, currentTrigger, key, orientation) {
|
|
|
116
117
|
if (key === "End") return triggers[triggers.length - 1];
|
|
117
118
|
const direction = ORIENTATION_NAVIGATION_KEYS[orientation][key];
|
|
118
119
|
if (!direction) return void 0;
|
|
119
|
-
return triggers[(currentIndex + direction + triggers.length) % triggers.length];
|
|
120
|
+
return triggers[(currentIndex + (orientation === "horizontal" && list.ownerDocument.defaultView?.getComputedStyle(list).direction === "rtl" ? -direction : direction) + triggers.length) % triggers.length];
|
|
120
121
|
}
|
|
121
122
|
function useTabsItem(componentName, props, suffix) {
|
|
122
123
|
const group = useRequiredInject(tabsKey, componentName);
|
|
@@ -133,10 +134,15 @@ function useTabsItem(componentName, props, suffix) {
|
|
|
133
134
|
function useTabs(props, emitUpdate) {
|
|
134
135
|
const triggerRegistry = useTabsRegistry();
|
|
135
136
|
const contentRegistry = useTabsRegistry();
|
|
136
|
-
const { items: triggers
|
|
137
|
+
const { items: triggers } = triggerRegistry;
|
|
137
138
|
const { items: contents, register: registerContent, unregister: unregisterContent } = contentRegistry;
|
|
138
|
-
const
|
|
139
|
-
|
|
139
|
+
const controllable = useControllableValue({
|
|
140
|
+
modelValue: () => props.modelValue,
|
|
141
|
+
defaultValue: () => props.defaultValue ?? null,
|
|
142
|
+
onChange: (value) => {
|
|
143
|
+
if (value !== null) emitUpdate(value);
|
|
144
|
+
}
|
|
145
|
+
});
|
|
140
146
|
const isDisabled = computed(() => Boolean(props.disabled));
|
|
141
147
|
const size = computed(() => props.size ?? DEFAULT_SIZE);
|
|
142
148
|
const variant = computed(() => props.variant ?? DEFAULT_VARIANT);
|
|
@@ -144,7 +150,7 @@ function useTabs(props, emitUpdate) {
|
|
|
144
150
|
const placement = computed(() => props.placement ?? DEFAULT_PLACEMENT);
|
|
145
151
|
const align = computed(() => props.align);
|
|
146
152
|
const activationMode = computed(() => props.activationMode ?? DEFAULT_ACTIVATION_MODE);
|
|
147
|
-
const selectedValue =
|
|
153
|
+
const selectedValue = controllable.value;
|
|
148
154
|
const firstEnabledTrigger = computed(() => triggers.value.find((trigger) => !trigger.disabled));
|
|
149
155
|
const selectedEnabledTrigger = computed(() => {
|
|
150
156
|
const trigger = findRegistration(triggers.value, selectedValue.value);
|
|
@@ -171,16 +177,15 @@ function useTabs(props, emitUpdate) {
|
|
|
171
177
|
align: align.value ?? getDefaultAlign(orientation.value),
|
|
172
178
|
select: selectValue
|
|
173
179
|
}));
|
|
174
|
-
function syncUncontrolledValue() {
|
|
175
|
-
if (isControlled.value || isDisabled.value) return;
|
|
180
|
+
function syncUncontrolledValue(reconcileMissing = false) {
|
|
181
|
+
if (controllable.isControlled.value || isDisabled.value) return;
|
|
176
182
|
const selectedTrigger = findRegistration(triggers.value, selectedValue.value);
|
|
177
|
-
if (selectedValue.value != null && !selectedTrigger
|
|
178
|
-
|
|
183
|
+
if (selectedValue.value != null && (selectedTrigger ? !selectedTrigger.disabled : !reconcileMissing)) return;
|
|
184
|
+
controllable.resetValue(firstEnabledTrigger.value?.value ?? null);
|
|
179
185
|
}
|
|
180
186
|
function setValue(value) {
|
|
181
187
|
if (isDisabled.value || value === selectedValue.value) return;
|
|
182
|
-
|
|
183
|
-
emitUpdate(value);
|
|
188
|
+
controllable.setValue(value);
|
|
184
189
|
}
|
|
185
190
|
function selectValue(value) {
|
|
186
191
|
const trigger = findRegistration(triggers.value, value);
|
|
@@ -195,6 +200,11 @@ function useTabs(props, emitUpdate) {
|
|
|
195
200
|
triggerRegistry.register(registration);
|
|
196
201
|
syncUncontrolledValue();
|
|
197
202
|
}
|
|
203
|
+
function unregisterTrigger(id) {
|
|
204
|
+
const trigger = triggers.value.find((registration) => registration.id === id);
|
|
205
|
+
triggerRegistry.unregister(id);
|
|
206
|
+
syncUncontrolledValue(trigger?.value === selectedValue.value);
|
|
207
|
+
}
|
|
198
208
|
function onListKeydown(event) {
|
|
199
209
|
const list = event.currentTarget;
|
|
200
210
|
if (!list || isDisabled.value) return;
|
|
@@ -442,7 +452,7 @@ var tabs_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PURE__
|
|
|
442
452
|
}), [["__scopeId", "data-v-163486d1"]]);
|
|
443
453
|
//#endregion
|
|
444
454
|
//#region src/components/tabs/tabs-content.vue?vue&type=script&setup=true&vapor=true&lang.ts
|
|
445
|
-
var t0$1 = template("<
|
|
455
|
+
var t0$1 = template("<div data-v-741d0283>", 1);
|
|
446
456
|
//#endregion
|
|
447
457
|
//#region src/components/tabs/tabs-content.vue
|
|
448
458
|
var tabs_content_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PURE__ */ defineVaporComponent({
|
|
@@ -475,7 +485,7 @@ var tabs_content_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @_
|
|
|
475
485
|
return n3;
|
|
476
486
|
});
|
|
477
487
|
}
|
|
478
|
-
}), [["__scopeId", "data-v-
|
|
488
|
+
}), [["__scopeId", "data-v-741d0283"]]);
|
|
479
489
|
//#endregion
|
|
480
490
|
//#region src/components/tabs/tabs-list.vue
|
|
481
491
|
var tabs_list_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PURE__ */ defineVaporComponent({
|
package/dist/textarea.css
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
@layer ropav.components {
|
|
2
|
-
.rp-textarea[data-v-
|
|
2
|
+
.rp-textarea[data-v-b604b69c] {
|
|
3
3
|
--_rp-textarea-padding-y: 7px;
|
|
4
4
|
--_rp-textarea-padding-x: calc(var(--rp-size-control-md) / 3);
|
|
5
5
|
--_rp-textarea-font-size: var(--rp-font-size-md);
|
|
@@ -17,58 +17,58 @@
|
|
|
17
17
|
cursor: text;
|
|
18
18
|
transition: border-color var(--rp-transition-fast), box-shadow var(--rp-transition-fast);
|
|
19
19
|
}
|
|
20
|
-
.rp-textarea[data-v-
|
|
20
|
+
.rp-textarea[data-v-b604b69c]:hover:not(.rp-textarea--disabled):not(.rp-textarea--invalid):not(.rp-textarea--valid) {
|
|
21
21
|
border-color: var(--rp-color-control-border-hover);
|
|
22
22
|
}
|
|
23
|
-
.rp-textarea[data-v-
|
|
23
|
+
.rp-textarea[data-v-b604b69c]:focus-within:not(.rp-textarea--disabled):not(.rp-textarea--invalid):not(.rp-textarea--valid) {
|
|
24
24
|
border-color: var(--rp-color-control-border-focus);
|
|
25
25
|
box-shadow: 0 0 0 var(--rp-border-width-medium) var(--rp-color-focus-ring);
|
|
26
26
|
}
|
|
27
|
-
.rp-textarea[data-v-
|
|
27
|
+
.rp-textarea[data-v-b604b69c] {
|
|
28
28
|
font-size: var(--_rp-textarea-font-size);
|
|
29
29
|
border-radius: var(--_rp-textarea-radius);
|
|
30
30
|
}
|
|
31
|
-
.rp-textarea--size-xs[data-v-
|
|
31
|
+
.rp-textarea--size-xs[data-v-b604b69c] {
|
|
32
32
|
--_rp-textarea-padding-y: 4.5px;
|
|
33
33
|
--_rp-textarea-padding-x: calc(var(--rp-size-control-xs) / 3);
|
|
34
34
|
--_rp-textarea-font-size: var(--rp-font-size-xs);
|
|
35
35
|
}
|
|
36
|
-
.rp-textarea--size-sm[data-v-
|
|
36
|
+
.rp-textarea--size-sm[data-v-b604b69c] {
|
|
37
37
|
--_rp-textarea-padding-y: 5.5px;
|
|
38
38
|
--_rp-textarea-padding-x: calc(var(--rp-size-control-sm) / 3);
|
|
39
39
|
--_rp-textarea-font-size: var(--rp-font-size-sm);
|
|
40
40
|
}
|
|
41
|
-
.rp-textarea--size-md[data-v-
|
|
41
|
+
.rp-textarea--size-md[data-v-b604b69c] {
|
|
42
42
|
--_rp-textarea-padding-y: 7px;
|
|
43
43
|
--_rp-textarea-padding-x: calc(var(--rp-size-control-md) / 3);
|
|
44
44
|
--_rp-textarea-font-size: var(--rp-font-size-md);
|
|
45
45
|
}
|
|
46
|
-
.rp-textarea--size-lg[data-v-
|
|
46
|
+
.rp-textarea--size-lg[data-v-b604b69c] {
|
|
47
47
|
--_rp-textarea-padding-y: 9.5px;
|
|
48
48
|
--_rp-textarea-padding-x: calc(var(--rp-size-control-lg) / 3);
|
|
49
49
|
--_rp-textarea-font-size: var(--rp-font-size-lg);
|
|
50
50
|
}
|
|
51
|
-
.rp-textarea--size-xl[data-v-
|
|
51
|
+
.rp-textarea--size-xl[data-v-b604b69c] {
|
|
52
52
|
--_rp-textarea-padding-y: 13px;
|
|
53
53
|
--_rp-textarea-padding-x: calc(var(--rp-size-control-xl) / 3);
|
|
54
54
|
--_rp-textarea-font-size: var(--rp-font-size-xl);
|
|
55
55
|
}
|
|
56
|
-
.rp-textarea--radius-xs[data-v-
|
|
56
|
+
.rp-textarea--radius-xs[data-v-b604b69c] {
|
|
57
57
|
--_rp-textarea-radius: var(--rp-radius-xs);
|
|
58
58
|
}
|
|
59
|
-
.rp-textarea--radius-sm[data-v-
|
|
59
|
+
.rp-textarea--radius-sm[data-v-b604b69c] {
|
|
60
60
|
--_rp-textarea-radius: var(--rp-radius-sm);
|
|
61
61
|
}
|
|
62
|
-
.rp-textarea--radius-md[data-v-
|
|
62
|
+
.rp-textarea--radius-md[data-v-b604b69c] {
|
|
63
63
|
--_rp-textarea-radius: var(--rp-radius-md);
|
|
64
64
|
}
|
|
65
|
-
.rp-textarea--radius-lg[data-v-
|
|
65
|
+
.rp-textarea--radius-lg[data-v-b604b69c] {
|
|
66
66
|
--_rp-textarea-radius: var(--rp-radius-lg);
|
|
67
67
|
}
|
|
68
|
-
.rp-textarea--radius-xl[data-v-
|
|
68
|
+
.rp-textarea--radius-xl[data-v-b604b69c] {
|
|
69
69
|
--_rp-textarea-radius: var(--rp-radius-xl);
|
|
70
70
|
}
|
|
71
|
-
html.dark .rp-textarea[data-v-
|
|
71
|
+
html.dark .rp-textarea[data-v-b604b69c], [data-rp-color-scheme=dark] .rp-textarea[data-v-b604b69c] {
|
|
72
72
|
--_rp-textarea-valid-border: var(--rp-color-green-light-color);
|
|
73
73
|
--_rp-textarea-valid-ring: color-mix(
|
|
74
74
|
in srgb,
|
|
@@ -82,34 +82,34 @@ html.dark .rp-textarea[data-v-f2ee1457], [data-rp-color-scheme=dark] .rp-textare
|
|
|
82
82
|
transparent
|
|
83
83
|
);
|
|
84
84
|
}
|
|
85
|
-
.rp-textarea--disabled[data-v-
|
|
85
|
+
.rp-textarea--disabled[data-v-b604b69c] {
|
|
86
86
|
opacity: var(--rp-opacity-disabled);
|
|
87
87
|
cursor: not-allowed;
|
|
88
88
|
}
|
|
89
|
-
.rp-textarea--valid[data-v-
|
|
89
|
+
.rp-textarea--valid[data-v-b604b69c] {
|
|
90
90
|
border-color: var(--_rp-textarea-valid-border);
|
|
91
91
|
}
|
|
92
|
-
.rp-textarea--valid[data-v-
|
|
92
|
+
.rp-textarea--valid[data-v-b604b69c]:focus-within:not(.rp-textarea--disabled) {
|
|
93
93
|
border-color: var(--_rp-textarea-valid-border);
|
|
94
94
|
box-shadow: 0 0 0 var(--rp-border-width-medium) var(--_rp-textarea-valid-ring);
|
|
95
95
|
}
|
|
96
|
-
.rp-textarea--invalid[data-v-
|
|
96
|
+
.rp-textarea--invalid[data-v-b604b69c] {
|
|
97
97
|
border-color: var(--_rp-textarea-invalid-border);
|
|
98
98
|
}
|
|
99
|
-
.rp-textarea--invalid[data-v-
|
|
99
|
+
.rp-textarea--invalid[data-v-b604b69c]:focus-within:not(.rp-textarea--disabled) {
|
|
100
100
|
border-color: var(--_rp-textarea-invalid-border);
|
|
101
101
|
box-shadow: 0 0 0 var(--rp-border-width-medium) var(--_rp-textarea-invalid-ring);
|
|
102
102
|
}
|
|
103
|
-
.rp-textarea--readonly[data-v-
|
|
103
|
+
.rp-textarea--readonly[data-v-b604b69c] {
|
|
104
104
|
background-color: var(--rp-color-control-readonly-bg);
|
|
105
105
|
}
|
|
106
|
-
.rp-textarea--resize-vertical .rp-textarea__native[data-v-
|
|
106
|
+
.rp-textarea--resize-vertical .rp-textarea__native[data-v-b604b69c] {
|
|
107
107
|
resize: vertical;
|
|
108
108
|
}
|
|
109
|
-
.rp-textarea--resize-both .rp-textarea__native[data-v-
|
|
109
|
+
.rp-textarea--resize-both .rp-textarea__native[data-v-b604b69c] {
|
|
110
110
|
resize: both;
|
|
111
111
|
}
|
|
112
|
-
.rp-textarea__native[data-v-
|
|
112
|
+
.rp-textarea__native[data-v-b604b69c] {
|
|
113
113
|
box-sizing: border-box;
|
|
114
114
|
flex: 1;
|
|
115
115
|
width: 100%;
|
|
@@ -124,10 +124,10 @@ html.dark .rp-textarea[data-v-f2ee1457], [data-rp-color-scheme=dark] .rp-textare
|
|
|
124
124
|
color: var(--rp-color-control-fg);
|
|
125
125
|
line-height: var(--rp-line-height-md);
|
|
126
126
|
}
|
|
127
|
-
.rp-textarea__native[data-v-
|
|
127
|
+
.rp-textarea__native[data-v-b604b69c]::placeholder {
|
|
128
128
|
color: var(--rp-color-control-placeholder);
|
|
129
129
|
}
|
|
130
|
-
.rp-textarea__native[data-v-
|
|
130
|
+
.rp-textarea__native[data-v-b604b69c]:disabled {
|
|
131
131
|
cursor: not-allowed;
|
|
132
132
|
}
|
|
133
133
|
}
|
package/dist/textarea.js
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import './textarea.css';
|
|
2
|
-
import { t as
|
|
2
|
+
import { t as useControllableValue } from "./useControllableValue.js";
|
|
3
3
|
import { n as useStylesApi, t as presence } from "./styles-api.js";
|
|
4
|
+
import { t as bem } from "./bem.js";
|
|
4
5
|
import { t as _plugin_vue_export_helper_default } from "./_plugin-vue_export-helper.js";
|
|
5
|
-
import { t as useControllableValue } from "./useControllableValue.js";
|
|
6
6
|
import { a as useTextFormControl } from "./useFormControl.js";
|
|
7
7
|
import { t as useControlState } from "./useControlState.js";
|
|
8
8
|
import { child, computed, defineVaporComponent, nextTick, onMounted, ref, renderEffect, setDynamicProps, setStaticTemplateRef, template, unref, watch } from "vue";
|
|
@@ -138,7 +138,7 @@ function useTextarea(props, emitUpdate, getValue = () => props.modelValue ?? "")
|
|
|
138
138
|
}
|
|
139
139
|
//#endregion
|
|
140
140
|
//#region src/components/textarea/textarea.vue?vue&type=script&setup=true&vapor=true&lang.ts
|
|
141
|
-
var t0 = template("<div data-v-
|
|
141
|
+
var t0 = template("<div data-v-b604b69c><textarea data-v-b604b69c>", 1);
|
|
142
142
|
//#endregion
|
|
143
143
|
//#region src/components/textarea/textarea.vue
|
|
144
144
|
var textarea_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PURE__ */ defineVaporComponent({
|
|
@@ -260,7 +260,7 @@ var textarea_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PUR
|
|
|
260
260
|
});
|
|
261
261
|
return n1;
|
|
262
262
|
}
|
|
263
|
-
}), [["__scopeId", "data-v-
|
|
263
|
+
}), [["__scopeId", "data-v-b604b69c"]]);
|
|
264
264
|
//#endregion
|
|
265
265
|
//#region src/components/textarea/types.ts
|
|
266
266
|
var textareaParts = ["root", "input"];
|