ropav 0.1.2 → 0.1.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/accordion.css +5 -16
- package/dist/accordion.js +10 -24
- package/dist/components/accordion/index.d.ts +1 -1
- package/dist/components/accordion/types.d.ts +0 -4
- package/dist/components/dialog/dialog-core.d.ts +4 -2
- package/dist/components/scroll-area/index.d.ts +3 -0
- package/dist/components/scroll-area/index.js +3 -0
- package/dist/components/scroll-area/scroll-area.d.ts +42 -0
- package/dist/components/scroll-area/scrollAreaCore.d.ts +25 -0
- package/dist/components/scroll-area/types.d.ts +33 -0
- package/dist/components/scroll-area/useScrollArea.d.ts +54 -0
- package/dist/components/scroll-area/useScrollAreaControls.d.ts +21 -0
- package/dist/components/scroll-area/useScrollAreaMetrics.d.ts +35 -0
- package/dist/components/scroll-area/useScrollAreaPointer.d.ts +17 -0
- package/dist/components/scroll-area/useScrollAreaPresentation.d.ts +49 -0
- package/dist/components/scroll-area/useScrollAreaVisibility.d.ts +27 -0
- package/dist/components/select/useSelect.d.ts +7 -5
- package/dist/components/select/useSelectNativeControl.d.ts +9 -0
- package/dist/components/select/useSelectNativeValue.d.ts +15 -0
- package/dist/dialog.js +23 -6
- package/dist/index.d.ts +1 -0
- package/dist/index.js +3 -1
- package/dist/modal.css +28 -29
- package/dist/modal.js +10 -8
- package/dist/number-input.css +3 -6
- package/dist/scroll-area.css +131 -0
- package/dist/scroll-area.js +696 -0
- package/dist/scroll-area2.js +23 -0
- package/dist/select.css +47 -45
- package/dist/select.js +167 -129
- package/dist/tabs.css +23 -18
- package/dist/tabs.js +16 -14
- package/docs/public-styles-api.md +1 -1
- package/package.json +5 -1
package/dist/tabs.css
CHANGED
|
@@ -34,45 +34,50 @@
|
|
|
34
34
|
flex: 1 1 0;
|
|
35
35
|
}
|
|
36
36
|
}@layer ropav.components {
|
|
37
|
-
.rp-tabs-list[data-v-
|
|
37
|
+
.rp-tabs-list[data-v-af4a8aa3] {
|
|
38
38
|
box-sizing: border-box;
|
|
39
39
|
display: flex;
|
|
40
|
+
flex-direction: column;
|
|
40
41
|
align-items: stretch;
|
|
41
42
|
width: 100%;
|
|
42
43
|
min-width: 0;
|
|
44
|
+
max-width: 100%;
|
|
43
45
|
padding: 0;
|
|
44
|
-
gap: 0;
|
|
45
46
|
font-family: var(--rp-font-family);
|
|
46
47
|
background-color: transparent;
|
|
47
48
|
border: 0;
|
|
48
49
|
}
|
|
49
|
-
.rp-tabs-list
|
|
50
|
-
|
|
50
|
+
.rp-tabs-list[data-v-af4a8aa3] .rp-scroll-area__content {
|
|
51
|
+
display: flex;
|
|
52
|
+
align-items: stretch;
|
|
51
53
|
width: max-content;
|
|
54
|
+
min-width: 100%;
|
|
55
|
+
gap: 0;
|
|
52
56
|
}
|
|
53
|
-
.rp-tabs-list--
|
|
57
|
+
.rp-tabs-list--vertical[data-v-af4a8aa3] {
|
|
58
|
+
width: max-content;
|
|
59
|
+
}
|
|
60
|
+
.rp-tabs-list--vertical[data-v-af4a8aa3] .rp-scroll-area__content {
|
|
61
|
+
flex-direction: column;
|
|
62
|
+
}
|
|
63
|
+
.rp-tabs-list--line[data-v-af4a8aa3] .rp-scroll-area__content {
|
|
54
64
|
border-bottom: var(--rp-border-width-medium) solid var(--rp-color-default-border);
|
|
55
65
|
}
|
|
56
|
-
.rp-tabs-list--line.rp-tabs-list--vertical[data-v-
|
|
66
|
+
.rp-tabs-list--line.rp-tabs-list--vertical[data-v-af4a8aa3] .rp-scroll-area__content {
|
|
57
67
|
border-bottom: 0;
|
|
58
68
|
border-left: var(--rp-border-width-medium) solid var(--rp-color-default-border);
|
|
59
69
|
}
|
|
60
|
-
.rp-tabs-list--line.rp-tabs-list--vertical.rp-tabs-list--placement-right[data-v-
|
|
70
|
+
.rp-tabs-list--line.rp-tabs-list--vertical.rp-tabs-list--placement-right[data-v-af4a8aa3] .rp-scroll-area__content {
|
|
61
71
|
border-right: var(--rp-border-width-medium) solid var(--rp-color-default-border);
|
|
62
72
|
border-left: 0;
|
|
63
73
|
}
|
|
64
|
-
.rp-tabs-list--pills[data-v-
|
|
65
|
-
max-width: 100%;
|
|
66
|
-
overflow-x: auto;
|
|
67
|
-
overflow-y: hidden;
|
|
68
|
-
}
|
|
69
|
-
.rp-tabs-list--pills[data-v-5016edc1] {
|
|
74
|
+
.rp-tabs-list--pills[data-v-af4a8aa3] .rp-scroll-area__content {
|
|
70
75
|
gap: var(--rp-spacing-2);
|
|
71
76
|
}
|
|
72
|
-
.rp-tabs-list--outline[data-v-
|
|
77
|
+
.rp-tabs-list--outline[data-v-af4a8aa3] {
|
|
73
78
|
position: relative;
|
|
74
79
|
}
|
|
75
|
-
.rp-tabs-list--outline[data-v-
|
|
80
|
+
.rp-tabs-list--outline[data-v-af4a8aa3]::after {
|
|
76
81
|
position: absolute;
|
|
77
82
|
z-index: 0;
|
|
78
83
|
right: 0;
|
|
@@ -83,7 +88,7 @@
|
|
|
83
88
|
background-color: var(--rp-color-default-border);
|
|
84
89
|
pointer-events: none;
|
|
85
90
|
}
|
|
86
|
-
.rp-tabs-list--outline.rp-tabs-list--vertical[data-v-
|
|
91
|
+
.rp-tabs-list--outline.rp-tabs-list--vertical[data-v-af4a8aa3]::after {
|
|
87
92
|
top: 0;
|
|
88
93
|
right: auto;
|
|
89
94
|
bottom: 0;
|
|
@@ -91,11 +96,11 @@
|
|
|
91
96
|
width: var(--rp-border-width-thin);
|
|
92
97
|
height: auto;
|
|
93
98
|
}
|
|
94
|
-
.rp-tabs-list--outline.rp-tabs-list--vertical.rp-tabs-list--placement-right[data-v-
|
|
99
|
+
.rp-tabs-list--outline.rp-tabs-list--vertical.rp-tabs-list--placement-right[data-v-af4a8aa3]::after {
|
|
95
100
|
right: 0;
|
|
96
101
|
left: auto;
|
|
97
102
|
}
|
|
98
|
-
.rp-tabs-list--disabled[data-v-
|
|
103
|
+
.rp-tabs-list--disabled[data-v-af4a8aa3] {
|
|
99
104
|
opacity: var(--rp-opacity-disabled);
|
|
100
105
|
cursor: not-allowed;
|
|
101
106
|
}
|
package/dist/tabs.js
CHANGED
|
@@ -3,7 +3,8 @@ import { t as bem } from "./bem.js";
|
|
|
3
3
|
import { n as useStylesApi, t as presence } from "./styles-api.js";
|
|
4
4
|
import { t as _plugin_vue_export_helper_default } from "./_plugin-vue_export-helper.js";
|
|
5
5
|
import { t as useRequiredInject } from "./useRequiredInject.js";
|
|
6
|
-
import {
|
|
6
|
+
import { t as scroll_area_default } from "./scroll-area.js";
|
|
7
|
+
import { computed, createComponent, createIf, createSlot, defineVaporComponent, extend, onBeforeUnmount, onMounted, provide, ref, renderEffect, setDynamicProps, setInsertionState, shallowRef, template, unref, useId, watch } from "vue";
|
|
7
8
|
//#region src/components/tabs/useTabs.ts
|
|
8
9
|
var TABLIST_SELECTOR = ".rp-tabs-list";
|
|
9
10
|
var TRIGGER_SELECTOR = ".rp-tabs-trigger";
|
|
@@ -389,7 +390,7 @@ function useTabsContent(props) {
|
|
|
389
390
|
}
|
|
390
391
|
//#endregion
|
|
391
392
|
//#region src/components/tabs/tabs.vue?vue&type=script&setup=true&vapor=true&lang.ts
|
|
392
|
-
var t0$
|
|
393
|
+
var t0$2 = template("<div data-v-163486d1>", 1);
|
|
393
394
|
//#endregion
|
|
394
395
|
//#region src/components/tabs/tabs.vue
|
|
395
396
|
var tabs_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PURE__ */ defineVaporComponent({
|
|
@@ -432,7 +433,7 @@ var tabs_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PURE__
|
|
|
432
433
|
...internalRootProps.value,
|
|
433
434
|
"data-disabled": presence(props.disabled)
|
|
434
435
|
}));
|
|
435
|
-
const n1 = t0$
|
|
436
|
+
const n1 = t0$2();
|
|
436
437
|
renderEffect(() => setDynamicProps(n1, [rootAttrs.value]));
|
|
437
438
|
setInsertionState(n1, null, 0);
|
|
438
439
|
createSlot("default", { $: [() => unref(slotProps)] }, null, 1);
|
|
@@ -441,7 +442,7 @@ var tabs_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PURE__
|
|
|
441
442
|
}), [["__scopeId", "data-v-163486d1"]]);
|
|
442
443
|
//#endregion
|
|
443
444
|
//#region src/components/tabs/tabs-content.vue?vue&type=script&setup=true&vapor=true&lang.ts
|
|
444
|
-
var t0$
|
|
445
|
+
var t0$1 = template("<section data-v-7206185c>", 1);
|
|
445
446
|
//#endregion
|
|
446
447
|
//#region src/components/tabs/tabs-content.vue
|
|
447
448
|
var tabs_content_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PURE__ */ defineVaporComponent({
|
|
@@ -467,7 +468,7 @@ var tabs_content_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @_
|
|
|
467
468
|
const { getRootAttrs } = useStylesApi(props, "root");
|
|
468
469
|
const rootAttrs = computed(() => getRootAttrs(internalRootProps.value));
|
|
469
470
|
return createIf(() => unref(shouldRenderContent), () => {
|
|
470
|
-
const n3 = t0$
|
|
471
|
+
const n3 = t0$1();
|
|
471
472
|
renderEffect(() => setDynamicProps(n3, [rootAttrs.value]));
|
|
472
473
|
setInsertionState(n3, null, 0);
|
|
473
474
|
createSlot("default", { $: [() => unref(slotProps)] }, null, 1);
|
|
@@ -476,9 +477,6 @@ var tabs_content_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @_
|
|
|
476
477
|
}
|
|
477
478
|
}), [["__scopeId", "data-v-7206185c"]]);
|
|
478
479
|
//#endregion
|
|
479
|
-
//#region src/components/tabs/tabs-list.vue?vue&type=script&setup=true&vapor=true&lang.ts
|
|
480
|
-
var t0$1 = template("<div data-v-5016edc1>", 1);
|
|
481
|
-
//#endregion
|
|
482
480
|
//#region src/components/tabs/tabs-list.vue
|
|
483
481
|
var tabs_list_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PURE__ */ defineVaporComponent({
|
|
484
482
|
name: "RpTabsList",
|
|
@@ -495,18 +493,22 @@ var tabs_list_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PU
|
|
|
495
493
|
setup(__props) {
|
|
496
494
|
const props = __props;
|
|
497
495
|
const { rootProps: internalRootProps, slotProps } = useTabsList(props);
|
|
496
|
+
const scrollbarAxis = computed(() => slotProps.value.orientation === "horizontal" ? "x" : "y");
|
|
498
497
|
const { getRootAttrs } = useStylesApi(props, "root");
|
|
499
498
|
const rootAttrs = computed(() => getRootAttrs({
|
|
500
499
|
...internalRootProps.value,
|
|
501
500
|
"data-disabled": presence(internalRootProps.value["data-disabled"])
|
|
502
501
|
}));
|
|
503
|
-
|
|
504
|
-
|
|
505
|
-
|
|
506
|
-
|
|
507
|
-
|
|
502
|
+
return createComponent(scroll_area_default, { $: [() => rootAttrs.value, {
|
|
503
|
+
embedded: "",
|
|
504
|
+
type: "auto",
|
|
505
|
+
scrollbars: () => scrollbarAxis.value,
|
|
506
|
+
"viewport-attrs": () => ({ tabindex: -1 })
|
|
507
|
+
}] }, extend(() => {
|
|
508
|
+
return createSlot("default", { $: [() => unref(slotProps)] }, null, 1);
|
|
509
|
+
}, { _: 8 }), true);
|
|
508
510
|
}
|
|
509
|
-
}), [["__scopeId", "data-v-
|
|
511
|
+
}), [["__scopeId", "data-v-af4a8aa3"]]);
|
|
510
512
|
//#endregion
|
|
511
513
|
//#region src/components/tabs/tabs-trigger.vue?vue&type=script&setup=true&vapor=true&lang.ts
|
|
512
514
|
var t0 = template("<button data-v-6df68725>", 1);
|
|
@@ -94,7 +94,7 @@ Boolean states use presence semantics: the attribute value is empty when true an
|
|
|
94
94
|
- `data-track-hovered` and `data-dragging`: Slider track pointer interaction.
|
|
95
95
|
- `data-thumb-visibility="always|interaction|hidden"`: Slider thumb visibility behavior.
|
|
96
96
|
- `data-submenu`: DropdownMenu items that own children.
|
|
97
|
-
- `data-orientation="horizontal|vertical"`:
|
|
97
|
+
- `data-orientation="horizontal|vertical"`: ButtonGroup, RadioGroup, Slider, RangeSlider, Tabs and TabsList.
|
|
98
98
|
- `data-placement`: the final placement after collision handling; twelve placements for Popover and DropdownMenu, and a side (`top`, `right`, `bottom`, `left`) for Tooltip.
|
|
99
99
|
- `data-side="top|right|bottom|left"`: the side component of the final placement for Popover, DropdownMenu and Tooltip.
|
|
100
100
|
- `data-control="increment|decrement"`: NumberInput controls.
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "ropav",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.3",
|
|
4
4
|
"license": "MIT",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"packageManager": "pnpm@11.13.1",
|
|
@@ -132,6 +132,10 @@
|
|
|
132
132
|
"types": "./dist/components/radio/index.d.ts",
|
|
133
133
|
"import": "./dist/components/radio/index.js"
|
|
134
134
|
},
|
|
135
|
+
"./scroll-area": {
|
|
136
|
+
"types": "./dist/components/scroll-area/index.d.ts",
|
|
137
|
+
"import": "./dist/components/scroll-area/index.js"
|
|
138
|
+
},
|
|
135
139
|
"./select": {
|
|
136
140
|
"types": "./dist/components/select/index.d.ts",
|
|
137
141
|
"import": "./dist/components/select/index.js"
|