ropav 0.1.2 → 0.1.4
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 +76 -0
- package/dist/components/scroll-area/scrollAreaCore.d.ts +25 -0
- package/dist/components/scroll-area/types.d.ts +34 -0
- package/dist/components/scroll-area/useScrollArea.d.ts +58 -0
- package/dist/components/scroll-area/useScrollAreaControls.d.ts +25 -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 +779 -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 +51 -20
- package/docs/public-styles-api.md +1 -1
- package/package.json +6 -2
package/dist/dialog.js
CHANGED
|
@@ -11,8 +11,18 @@ function resolveDialogCloseReason(reason) {
|
|
|
11
11
|
function toDialogHTMLElement(value) {
|
|
12
12
|
if (typeof HTMLElement !== "undefined" && value instanceof HTMLElement) return value;
|
|
13
13
|
if (value == null || typeof Element !== "undefined" && value instanceof Element) return null;
|
|
14
|
-
const
|
|
15
|
-
|
|
14
|
+
const vdomElement = value.$el;
|
|
15
|
+
if (vdomElement instanceof HTMLElement) return vdomElement;
|
|
16
|
+
const vaporBlock = value.block;
|
|
17
|
+
return vaporBlock instanceof HTMLElement ? vaporBlock : null;
|
|
18
|
+
}
|
|
19
|
+
function resolveDialogHTMLElementRef(value, fallbackId, resolve) {
|
|
20
|
+
const element = toDialogHTMLElement(value) ?? (typeof document !== "undefined" ? document.getElementById(fallbackId) : null);
|
|
21
|
+
resolve(element);
|
|
22
|
+
if (element || !value) return;
|
|
23
|
+
nextTick(() => {
|
|
24
|
+
resolve(toDialogHTMLElement(value) ?? (typeof document !== "undefined" ? document.getElementById(fallbackId) : null));
|
|
25
|
+
});
|
|
16
26
|
}
|
|
17
27
|
function createDialogEvent(type, detail, originalEvent) {
|
|
18
28
|
const target = originalEvent.target;
|
|
@@ -118,7 +128,7 @@ var dialog_content_default = /* @__PURE__ */ defineVaporComponent({
|
|
|
118
128
|
delayInitialFocus: props.focusTrapOptions.delayInitialFocus ?? false
|
|
119
129
|
});
|
|
120
130
|
function setElement(value) {
|
|
121
|
-
root.setContent(
|
|
131
|
+
resolveDialogHTMLElementRef(value, id.value, (element) => root.setContent(element, id.value));
|
|
122
132
|
}
|
|
123
133
|
function onDocumentKeydown(event) {
|
|
124
134
|
if (event.key !== "Escape" || event.defaultPrevented || !root.closeOnEscape.value || !root.layer.isTopLayer()) return;
|
|
@@ -238,14 +248,19 @@ var dialog_overlay_default = /* @__PURE__ */ defineVaporComponent({
|
|
|
238
248
|
const attrs = useAttrs();
|
|
239
249
|
const root = useRequiredInject(dialogRootKey, "RpDialogOverlay");
|
|
240
250
|
const element = ref(null);
|
|
251
|
+
const generatedId = `${useId()}-overlay`;
|
|
252
|
+
const id = computed(() => typeof attrs.id === "string" ? attrs.id : generatedId);
|
|
241
253
|
const shouldRender = computed(() => props.forceMount || root.isOpen.value);
|
|
242
254
|
const rootAttrs = computed(() => mergeProps(attrs, {
|
|
255
|
+
id: id.value,
|
|
243
256
|
"aria-hidden": "true",
|
|
244
257
|
"data-state": root.isOpen.value ? "open" : "closed",
|
|
245
258
|
style: { zIndex: root.layer.zIndex.value - 1 }
|
|
246
259
|
}));
|
|
247
260
|
function setElement(value) {
|
|
248
|
-
|
|
261
|
+
resolveDialogHTMLElementRef(value, id.value, (resolved) => {
|
|
262
|
+
element.value = resolved;
|
|
263
|
+
});
|
|
249
264
|
}
|
|
250
265
|
useOverlayLayerBranch(element, {
|
|
251
266
|
focus: false,
|
|
@@ -484,15 +499,17 @@ var dialog_trigger_default = /* @__PURE__ */ defineVaporComponent({
|
|
|
484
499
|
const props = __props;
|
|
485
500
|
const attrs = useAttrs();
|
|
486
501
|
const root = useRequiredInject(dialogRootKey, "RpDialogTrigger");
|
|
502
|
+
const generatedId = `${useId()}-trigger`;
|
|
503
|
+
const id = computed(() => props.id ?? generatedId);
|
|
487
504
|
function setElement(value) {
|
|
488
|
-
root.setTrigger
|
|
505
|
+
resolveDialogHTMLElementRef(value, id.value, root.setTrigger);
|
|
489
506
|
}
|
|
490
507
|
function onClick(event) {
|
|
491
508
|
if (event.defaultPrevented || props.disabled) return;
|
|
492
509
|
root.toggle();
|
|
493
510
|
}
|
|
494
511
|
const rootAttrs = computed(() => mergeProps(attrs, {
|
|
495
|
-
id:
|
|
512
|
+
id: id.value,
|
|
496
513
|
type: props.as === "button" ? "button" : void 0,
|
|
497
514
|
disabled: props.as === "button" ? props.disabled || void 0 : void 0,
|
|
498
515
|
"aria-controls": root.contentId.value,
|
package/dist/index.d.ts
CHANGED
|
@@ -26,6 +26,7 @@ export * from './components/overlay/index.js';
|
|
|
26
26
|
export * from './components/popover/index.js';
|
|
27
27
|
export * from './components/progress/index.js';
|
|
28
28
|
export * from './components/radio/index.js';
|
|
29
|
+
export * from './components/scroll-area/index.js';
|
|
29
30
|
export * from './components/select/index.js';
|
|
30
31
|
export * from './components/slider/index.js';
|
|
31
32
|
export * from './components/switch/index.js';
|
package/dist/index.js
CHANGED
|
@@ -30,12 +30,14 @@ import { t as icon_button_default } from "./icon-button.js";
|
|
|
30
30
|
import { t as iconButtonParts } from "./icon-button2.js";
|
|
31
31
|
import { t as inputParts } from "./input2.js";
|
|
32
32
|
import { t as overlay_default } from "./overlay.js";
|
|
33
|
+
import { t as scroll_area_default } from "./scroll-area.js";
|
|
33
34
|
import { n as modal_default, t as modalParts } from "./modal.js";
|
|
34
35
|
import { n as number_input_default, t as numberInputParts } from "./number-input.js";
|
|
35
36
|
import { n as overlay_layer_provider_default, t as overlayParts } from "./overlay2.js";
|
|
36
37
|
import { n as popoverPlacements, t as popoverParts } from "./popover2.js";
|
|
37
38
|
import { a as progress_default, i as progressSizes, n as progressParts, r as progressRadiuses, t as progressColors } from "./progress.js";
|
|
38
39
|
import { i as radioParts, n as radio_default, r as radioGroupParts, t as radio_group_default } from "./radio.js";
|
|
40
|
+
import { n as scrollAreaScrollbars, r as scrollAreaTypes, t as scrollAreaParts } from "./scroll-area2.js";
|
|
39
41
|
import { n as select_default, t as selectParts } from "./select.js";
|
|
40
42
|
import { t as tooltip_default } from "./tooltip.js";
|
|
41
43
|
import { a as sliderSizes, i as sliderParts, n as sliderColors, o as range_slider_default, r as sliderOrientations, s as slider_default, t as rangeSliderParts } from "./slider.js";
|
|
@@ -45,4 +47,4 @@ import { t as teleport_provider_default } from "./teleport-provider.js";
|
|
|
45
47
|
import { n as textarea_default, t as textareaParts } from "./textarea.js";
|
|
46
48
|
import { a as toastColors, c as toastRadiuses, d as toastViewportParts, f as createToastStore, i as useToast, l as toastTypes, n as toast_viewport_default, o as toastParts, p as toast_default, r as toast_provider_default, s as toastPositions, t as useToastState, u as toastVariants } from "./toast.js";
|
|
47
49
|
import { t as tooltipParts } from "./tooltip2.js";
|
|
48
|
-
export { accordion_default as Accordion, accordion_item_default as AccordionItem, alert_default as Alert, aspect_ratio_default as AspectRatio, avatar_default as Avatar, badge_default as Badge, button_default as Button, button_group_default as ButtonGroup, button_link_default as ButtonLink, card_default as Card, checkbox_default as Checkbox, collapse_default as Collapse, color_input_default as ColorInput, color_picker_default as ColorPicker, color_swatch_default as ColorSwatch, dialog_close_default as DialogClose, dialog_content_default as DialogContent, dialog_description_default as DialogDescription, dialog_overlay_default as DialogOverlay, dialog_portal_default as DialogPortal, dialog_root_default as DialogRoot, dialog_title_default as DialogTitle, dialog_trigger_default as DialogTrigger, dropdown_menu_default as DropdownMenu, dropdown_menu_checkbox_item_default as DropdownMenuCheckboxItem, dropdown_menu_content_default as DropdownMenuContent, dropdown_menu_context_trigger_default as DropdownMenuContextTrigger, DropdownMenuItem, dropdown_menu_item_indicator_default as DropdownMenuItemIndicator, dropdown_menu_label_default as DropdownMenuLabel, dropdown_menu_portal_default as DropdownMenuPortal, dropdown_menu_radio_group_default as DropdownMenuRadioGroup, dropdown_menu_radio_item_default as DropdownMenuRadioItem, dropdown_menu_root_default as DropdownMenuRoot, dropdown_menu_separator_default as DropdownMenuSeparator, dropdown_menu_sub_default as DropdownMenuSub, dropdown_menu_sub_content_default as DropdownMenuSubContent, dropdown_menu_sub_trigger_default as DropdownMenuSubTrigger, dropdown_menu_trigger_default as DropdownMenuTrigger, field_default as Field, focus_trap_default as FocusTrap, icon_button_default as IconButton, input_default as Input, modal_default as Modal, number_input_default as NumberInput, overlay_default as Overlay, overlay_layer_provider_default as OverlayLayerProvider, popover_default as Popover, progress_default as Progress, radio_default as Radio, radio_group_default as RadioGroup, range_slider_default as RangeSlider, select_default as Select, slider_default as Slider, switch_default as Switch, tabs_default as Tabs, tabs_content_default as TabsContent, tabs_list_default as TabsList, tabs_trigger_default as TabsTrigger, teleport_provider_default as TeleportProvider, textarea_default as Textarea, toast_default as Toast, toast_provider_default as ToastProvider, toast_viewport_default as ToastViewport, tooltip_default as Tooltip, accordionItemParts, accordionParts, alertColors, alertParts, alertRadiuses, alertVariants, aspectRatioParts, avatarColors, avatarParts, avatarRadiuses, avatarSizes, avatarVariants, badgeColors, badgeParts, badgeRadiuses, badgeSizes, badgeVariants, buttonGroupParts, buttonLinkParts, buttonParts, cardParts, checkboxParts, collapseParts, colorInputParts, colorPickerFormats, colorPickerParts, colorPickerSizes, colorSwatchParts, createToastStore, dropdownMenuParts, fieldParts, focusTrapParts, iconButtonParts, inputParts, modalParts, numberInputParts, overlayParts, popoverParts, popoverPlacements, progressColors, progressParts, progressRadiuses, progressSizes, radioGroupParts, radioParts, rangeSliderParts, selectParts, sliderColors, sliderOrientations, sliderParts, sliderSizes, switchParts, tabsContentParts, tabsListParts, tabsParts, tabsTriggerParts, textareaParts, toastColors, toastParts, toastPositions, toastRadiuses, toastTypes, toastVariants, toastViewportParts, tooltipParts, useAccordion, useAccordionItem, useCollapse, useDropdownMenu, useFloatingPosition, useFocusTrap, useHoverDisclosure, useOverlayZIndex, useTabs, useTabsContent, useTabsList, useTabsTrigger, useTeleportTarget, useToast, useToastState };
|
|
50
|
+
export { accordion_default as Accordion, accordion_item_default as AccordionItem, alert_default as Alert, aspect_ratio_default as AspectRatio, avatar_default as Avatar, badge_default as Badge, button_default as Button, button_group_default as ButtonGroup, button_link_default as ButtonLink, card_default as Card, checkbox_default as Checkbox, collapse_default as Collapse, color_input_default as ColorInput, color_picker_default as ColorPicker, color_swatch_default as ColorSwatch, dialog_close_default as DialogClose, dialog_content_default as DialogContent, dialog_description_default as DialogDescription, dialog_overlay_default as DialogOverlay, dialog_portal_default as DialogPortal, dialog_root_default as DialogRoot, dialog_title_default as DialogTitle, dialog_trigger_default as DialogTrigger, dropdown_menu_default as DropdownMenu, dropdown_menu_checkbox_item_default as DropdownMenuCheckboxItem, dropdown_menu_content_default as DropdownMenuContent, dropdown_menu_context_trigger_default as DropdownMenuContextTrigger, DropdownMenuItem, dropdown_menu_item_indicator_default as DropdownMenuItemIndicator, dropdown_menu_label_default as DropdownMenuLabel, dropdown_menu_portal_default as DropdownMenuPortal, dropdown_menu_radio_group_default as DropdownMenuRadioGroup, dropdown_menu_radio_item_default as DropdownMenuRadioItem, dropdown_menu_root_default as DropdownMenuRoot, dropdown_menu_separator_default as DropdownMenuSeparator, dropdown_menu_sub_default as DropdownMenuSub, dropdown_menu_sub_content_default as DropdownMenuSubContent, dropdown_menu_sub_trigger_default as DropdownMenuSubTrigger, dropdown_menu_trigger_default as DropdownMenuTrigger, field_default as Field, focus_trap_default as FocusTrap, icon_button_default as IconButton, input_default as Input, modal_default as Modal, number_input_default as NumberInput, overlay_default as Overlay, overlay_layer_provider_default as OverlayLayerProvider, popover_default as Popover, progress_default as Progress, radio_default as Radio, radio_group_default as RadioGroup, range_slider_default as RangeSlider, scroll_area_default as ScrollArea, select_default as Select, slider_default as Slider, switch_default as Switch, tabs_default as Tabs, tabs_content_default as TabsContent, tabs_list_default as TabsList, tabs_trigger_default as TabsTrigger, teleport_provider_default as TeleportProvider, textarea_default as Textarea, toast_default as Toast, toast_provider_default as ToastProvider, toast_viewport_default as ToastViewport, tooltip_default as Tooltip, accordionItemParts, accordionParts, alertColors, alertParts, alertRadiuses, alertVariants, aspectRatioParts, avatarColors, avatarParts, avatarRadiuses, avatarSizes, avatarVariants, badgeColors, badgeParts, badgeRadiuses, badgeSizes, badgeVariants, buttonGroupParts, buttonLinkParts, buttonParts, cardParts, checkboxParts, collapseParts, colorInputParts, colorPickerFormats, colorPickerParts, colorPickerSizes, colorSwatchParts, createToastStore, dropdownMenuParts, fieldParts, focusTrapParts, iconButtonParts, inputParts, modalParts, numberInputParts, overlayParts, popoverParts, popoverPlacements, progressColors, progressParts, progressRadiuses, progressSizes, radioGroupParts, radioParts, rangeSliderParts, scrollAreaParts, scrollAreaScrollbars, scrollAreaTypes, selectParts, sliderColors, sliderOrientations, sliderParts, sliderSizes, switchParts, tabsContentParts, tabsListParts, tabsParts, tabsTriggerParts, textareaParts, toastColors, toastParts, toastPositions, toastRadiuses, toastTypes, toastVariants, toastViewportParts, tooltipParts, useAccordion, useAccordionItem, useCollapse, useDropdownMenu, useFloatingPosition, useFocusTrap, useHoverDisclosure, useOverlayZIndex, useTabs, useTabsContent, useTabsList, useTabsTrigger, useTeleportTarget, useToast, useToastState };
|
package/dist/modal.css
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
@layer ropav.components {
|
|
2
|
-
.rp-modal[data-v-
|
|
2
|
+
.rp-modal[data-v-bb0b8ca8] {
|
|
3
3
|
--_rp-modal-width: 32rem;
|
|
4
4
|
--_rp-modal-max-height: calc(100vh - var(--rp-spacing-12));
|
|
5
5
|
--_rp-modal-radius: var(--rp-radius-sm);
|
|
@@ -13,25 +13,25 @@
|
|
|
13
13
|
overflow: auto;
|
|
14
14
|
font-family: var(--rp-font-family);
|
|
15
15
|
}
|
|
16
|
-
.rp-modal--size-sm[data-v-
|
|
16
|
+
.rp-modal--size-sm[data-v-bb0b8ca8] {
|
|
17
17
|
--_rp-modal-width: 22rem;
|
|
18
18
|
}
|
|
19
|
-
.rp-modal--size-lg[data-v-
|
|
19
|
+
.rp-modal--size-lg[data-v-bb0b8ca8] {
|
|
20
20
|
--_rp-modal-width: 45rem;
|
|
21
21
|
}
|
|
22
|
-
.rp-modal--size-xl[data-v-
|
|
22
|
+
.rp-modal--size-xl[data-v-bb0b8ca8] {
|
|
23
23
|
--_rp-modal-width: 58rem;
|
|
24
24
|
}
|
|
25
|
-
.rp-modal--size-full[data-v-
|
|
25
|
+
.rp-modal--size-full[data-v-bb0b8ca8] {
|
|
26
26
|
--_rp-modal-width: 100vw;
|
|
27
27
|
--_rp-modal-max-height: 100vh;
|
|
28
28
|
--_rp-modal-radius: var(--rp-radius-none);
|
|
29
29
|
padding: 0;
|
|
30
30
|
}
|
|
31
|
-
.rp-modal__overlay[data-v-
|
|
31
|
+
.rp-modal__overlay[data-v-bb0b8ca8] {
|
|
32
32
|
border-radius: 0;
|
|
33
33
|
}
|
|
34
|
-
.rp-modal__panel[data-v-
|
|
34
|
+
.rp-modal__panel[data-v-bb0b8ca8] {
|
|
35
35
|
position: relative;
|
|
36
36
|
z-index: 1;
|
|
37
37
|
box-sizing: border-box;
|
|
@@ -47,52 +47,51 @@
|
|
|
47
47
|
box-shadow: var(--rp-shadow-lg);
|
|
48
48
|
outline: none;
|
|
49
49
|
}
|
|
50
|
-
.rp-modal--size-full .rp-modal__panel[data-v-
|
|
50
|
+
.rp-modal--size-full .rp-modal__panel[data-v-bb0b8ca8] {
|
|
51
51
|
min-height: 100vh;
|
|
52
52
|
border: 0;
|
|
53
53
|
}
|
|
54
|
-
.rp-modal__header[data-v-
|
|
54
|
+
.rp-modal__header[data-v-bb0b8ca8] {
|
|
55
55
|
box-sizing: border-box;
|
|
56
56
|
padding: var(--rp-spacing-5) calc(var(--rp-spacing-6) + var(--rp-size-control-sm)) var(--rp-spacing-4) var(--rp-spacing-5);
|
|
57
57
|
border-bottom: var(--rp-border-width-thin) solid var(--rp-color-default-border);
|
|
58
58
|
}
|
|
59
|
-
.rp-modal__heading[data-v-
|
|
59
|
+
.rp-modal__heading[data-v-bb0b8ca8] {
|
|
60
60
|
display: grid;
|
|
61
61
|
gap: var(--rp-spacing-1);
|
|
62
62
|
}
|
|
63
|
-
.rp-modal__title[data-v-
|
|
63
|
+
.rp-modal__title[data-v-bb0b8ca8] {
|
|
64
64
|
margin: 0;
|
|
65
65
|
color: var(--rp-color-text);
|
|
66
66
|
font-size: var(--rp-font-size-xl);
|
|
67
67
|
font-weight: var(--rp-font-weight-semibold);
|
|
68
68
|
line-height: var(--rp-line-height-xs);
|
|
69
69
|
}
|
|
70
|
-
.rp-modal__description[data-v-
|
|
70
|
+
.rp-modal__description[data-v-bb0b8ca8] {
|
|
71
71
|
margin: 0;
|
|
72
72
|
color: var(--rp-color-dimmed);
|
|
73
73
|
font-size: var(--rp-font-size-sm);
|
|
74
74
|
line-height: var(--rp-line-height-md);
|
|
75
75
|
}
|
|
76
|
-
.rp-modal__close[data-v-
|
|
76
|
+
.rp-modal__close[data-v-bb0b8ca8] {
|
|
77
77
|
position: absolute;
|
|
78
78
|
top: var(--rp-spacing-3);
|
|
79
79
|
right: var(--rp-spacing-3);
|
|
80
80
|
z-index: 1;
|
|
81
81
|
}
|
|
82
|
-
.rp-modal__body[data-v-
|
|
82
|
+
.rp-modal__body[data-v-bb0b8ca8] {
|
|
83
83
|
box-sizing: border-box;
|
|
84
84
|
flex: 1 1 auto;
|
|
85
85
|
min-height: 0;
|
|
86
86
|
padding: var(--rp-spacing-5);
|
|
87
|
-
overflow: auto;
|
|
88
87
|
color: var(--rp-color-text);
|
|
89
88
|
font-size: var(--rp-font-size-md);
|
|
90
89
|
line-height: var(--rp-line-height-md);
|
|
91
90
|
}
|
|
92
|
-
.rp-modal--closable.rp-modal--headerless .rp-modal__body[data-v-
|
|
91
|
+
.rp-modal--closable.rp-modal--headerless .rp-modal__body[data-v-bb0b8ca8] {
|
|
93
92
|
padding-right: calc(var(--rp-spacing-6) + var(--rp-size-control-sm));
|
|
94
93
|
}
|
|
95
|
-
.rp-modal__footer[data-v-
|
|
94
|
+
.rp-modal__footer[data-v-bb0b8ca8] {
|
|
96
95
|
box-sizing: border-box;
|
|
97
96
|
display: flex;
|
|
98
97
|
flex: 0 0 auto;
|
|
@@ -102,34 +101,34 @@
|
|
|
102
101
|
padding: var(--rp-spacing-4) var(--rp-spacing-5);
|
|
103
102
|
border-top: var(--rp-border-width-thin) solid var(--rp-color-default-border);
|
|
104
103
|
}
|
|
105
|
-
.rp-modal-enter-active[data-v-
|
|
106
|
-
.rp-modal-leave-active[data-v-
|
|
104
|
+
.rp-modal-enter-active[data-v-bb0b8ca8],
|
|
105
|
+
.rp-modal-leave-active[data-v-bb0b8ca8] {
|
|
107
106
|
transition: opacity var(--rp-transition-fast);
|
|
108
107
|
}
|
|
109
|
-
.rp-modal-enter-active .rp-modal__panel[data-v-
|
|
110
|
-
.rp-modal-leave-active .rp-modal__panel[data-v-
|
|
108
|
+
.rp-modal-enter-active .rp-modal__panel[data-v-bb0b8ca8],
|
|
109
|
+
.rp-modal-leave-active .rp-modal__panel[data-v-bb0b8ca8] {
|
|
111
110
|
transition: opacity var(--rp-transition-fast), transform var(--rp-transition-fast);
|
|
112
111
|
}
|
|
113
|
-
.rp-modal-enter-from[data-v-
|
|
114
|
-
.rp-modal-leave-to[data-v-
|
|
112
|
+
.rp-modal-enter-from[data-v-bb0b8ca8],
|
|
113
|
+
.rp-modal-leave-to[data-v-bb0b8ca8] {
|
|
115
114
|
opacity: 0;
|
|
116
115
|
}
|
|
117
|
-
.rp-modal-enter-from .rp-modal__panel[data-v-
|
|
118
|
-
.rp-modal-leave-to .rp-modal__panel[data-v-
|
|
116
|
+
.rp-modal-enter-from .rp-modal__panel[data-v-bb0b8ca8],
|
|
117
|
+
.rp-modal-leave-to .rp-modal__panel[data-v-bb0b8ca8] {
|
|
119
118
|
opacity: 0;
|
|
120
119
|
transform: translateY(var(--rp-spacing-2)) scale(0.98);
|
|
121
120
|
}
|
|
122
121
|
@media (max-width: 480px) {
|
|
123
|
-
.rp-modal[data-v-
|
|
122
|
+
.rp-modal[data-v-bb0b8ca8] {
|
|
124
123
|
padding: var(--rp-spacing-3);
|
|
125
124
|
}
|
|
126
|
-
.rp-modal__header[data-v-
|
|
125
|
+
.rp-modal__header[data-v-bb0b8ca8] {
|
|
127
126
|
padding-left: var(--rp-spacing-4);
|
|
128
127
|
}
|
|
129
|
-
.rp-modal__body[data-v-
|
|
128
|
+
.rp-modal__body[data-v-bb0b8ca8] {
|
|
130
129
|
padding: var(--rp-spacing-4);
|
|
131
130
|
}
|
|
132
|
-
.rp-modal__footer[data-v-
|
|
131
|
+
.rp-modal__footer[data-v-bb0b8ca8] {
|
|
133
132
|
padding: var(--rp-spacing-4);
|
|
134
133
|
}
|
|
135
134
|
}
|
package/dist/modal.js
CHANGED
|
@@ -6,6 +6,7 @@ import { t as _plugin_vue_export_helper_default } from "./_plugin-vue_export-hel
|
|
|
6
6
|
import { a as dialog_overlay_default, c as dialog_close_default, i as dialog_portal_default, l as resolveDialogCloseReason, n as dialog_title_default, o as dialog_description_default, r as dialog_root_default, s as dialog_content_default } from "./dialog.js";
|
|
7
7
|
import { t as icon_button_default } from "./icon-button.js";
|
|
8
8
|
import { t as overlay_default } from "./overlay.js";
|
|
9
|
+
import { t as scroll_area_default } from "./scroll-area.js";
|
|
9
10
|
import { VaporTransition, applyVShow, computed, createComponent, createIf, createSlot, defineVaporComponent, extend, mergeProps, ref, renderEffect, setDynamicProps, setInsertionState, setText, template, toDisplayString, unref, useId, useSlots } from "vue";
|
|
10
11
|
//#region src/components/modal/useModal.ts
|
|
11
12
|
var DEFAULT_ROLE = "dialog";
|
|
@@ -106,8 +107,8 @@ function useModal(props, emit = {}) {
|
|
|
106
107
|
//#endregion
|
|
107
108
|
//#region src/components/modal/modal.vue?vue&type=script&setup=true&vapor=true&lang.ts
|
|
108
109
|
var t0 = template(" ");
|
|
109
|
-
var t1 = template("<div data-v-
|
|
110
|
-
var t2 = template("<div data-v-
|
|
110
|
+
var t1 = template("<div data-v-bb0b8ca8 class=rp-modal__heading>");
|
|
111
|
+
var t2 = template("<div data-v-bb0b8ca8>");
|
|
111
112
|
//#endregion
|
|
112
113
|
//#region src/components/modal/modal.vue
|
|
113
114
|
var modal_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PURE__ */ defineVaporComponent({
|
|
@@ -287,11 +288,12 @@ var modal_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PURE__
|
|
|
287
288
|
});
|
|
288
289
|
}, null, 129),
|
|
289
290
|
createIf(() => $slots.default, () => {
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
|
|
293
|
-
|
|
294
|
-
|
|
291
|
+
return createComponent(scroll_area_default, { $: [() => unref(getPartAttrs)("body", { class: "rp-modal__body" }), {
|
|
292
|
+
embedded: "",
|
|
293
|
+
scrollbars: "y"
|
|
294
|
+
}] }, extend(() => {
|
|
295
|
+
return createSlot("default", { $: [() => unref(slotProps)] }, null, 1);
|
|
296
|
+
}, { _: 8 }));
|
|
295
297
|
}, null, 129),
|
|
296
298
|
createIf(() => unref(hasFooter), () => {
|
|
297
299
|
const n28 = t2();
|
|
@@ -309,7 +311,7 @@ var modal_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PURE__
|
|
|
309
311
|
});
|
|
310
312
|
}, true);
|
|
311
313
|
}
|
|
312
|
-
}), [["__scopeId", "data-v-
|
|
314
|
+
}), [["__scopeId", "data-v-bb0b8ca8"]]);
|
|
313
315
|
//#endregion
|
|
314
316
|
//#region src/components/modal/types.ts
|
|
315
317
|
var modalParts = [
|
package/dist/number-input.css
CHANGED
|
@@ -3,10 +3,13 @@
|
|
|
3
3
|
--_rp-number-input-control-size: var(--_rp-input-height);
|
|
4
4
|
--_rp-number-input-text-align: left;
|
|
5
5
|
overflow: hidden;
|
|
6
|
+
gap: 0;
|
|
7
|
+
padding-inline: 0;
|
|
6
8
|
vertical-align: middle;
|
|
7
9
|
}
|
|
8
10
|
.rp-number-input[data-v-eb2db673] .rp-input__native {
|
|
9
11
|
appearance: textfield;
|
|
12
|
+
padding-inline: var(--_rp-input-padding-x);
|
|
10
13
|
text-align: var(--_rp-number-input-text-align);
|
|
11
14
|
}
|
|
12
15
|
.rp-number-input--text-align-center[data-v-eb2db673] {
|
|
@@ -25,12 +28,6 @@
|
|
|
25
28
|
align-self: stretch;
|
|
26
29
|
margin-block: calc(-1 * var(--rp-border-width-thin));
|
|
27
30
|
}
|
|
28
|
-
.rp-number-input[data-v-eb2db673] .rp-input__left {
|
|
29
|
-
margin-inline-start: calc(-1 * var(--_rp-input-padding-x));
|
|
30
|
-
}
|
|
31
|
-
.rp-number-input[data-v-eb2db673] .rp-input__right {
|
|
32
|
-
margin-inline-end: calc(-1 * var(--_rp-input-padding-x));
|
|
33
|
-
}
|
|
34
31
|
.rp-number-input__controls[data-v-eb2db673] {
|
|
35
32
|
display: inline-flex;
|
|
36
33
|
height: var(--_rp-input-height);
|
|
@@ -0,0 +1,131 @@
|
|
|
1
|
+
@layer ropav.components {
|
|
2
|
+
.rp-scroll-area[data-v-f5c4e940] {
|
|
3
|
+
--_rp-scroll-area-scrollbar-size: 10px;
|
|
4
|
+
--_rp-scroll-area-scrollbar-padding: 2px;
|
|
5
|
+
--_rp-scroll-area-thumb-bg: var(--rp-color-dimmed);
|
|
6
|
+
--_rp-scroll-area-thumb-bg-hover: var(--rp-color-text);
|
|
7
|
+
position: relative;
|
|
8
|
+
box-sizing: border-box;
|
|
9
|
+
display: flex;
|
|
10
|
+
flex-direction: column;
|
|
11
|
+
min-width: 0;
|
|
12
|
+
overflow: hidden;
|
|
13
|
+
}
|
|
14
|
+
.rp-scroll-area__viewport[data-v-f5c4e940] {
|
|
15
|
+
box-sizing: border-box;
|
|
16
|
+
flex: 1 1 auto;
|
|
17
|
+
width: 100%;
|
|
18
|
+
min-width: 0;
|
|
19
|
+
min-height: 0;
|
|
20
|
+
max-width: 100%;
|
|
21
|
+
overscroll-behavior: contain;
|
|
22
|
+
scrollbar-width: none;
|
|
23
|
+
outline: none;
|
|
24
|
+
}
|
|
25
|
+
.rp-scroll-area__viewport[data-v-f5c4e940]::-webkit-scrollbar {
|
|
26
|
+
display: none;
|
|
27
|
+
}
|
|
28
|
+
.rp-scroll-area__viewport[data-v-f5c4e940]:focus-visible {
|
|
29
|
+
outline: var(--rp-border-width-medium) solid var(--rp-color-focus-ring);
|
|
30
|
+
outline-offset: calc(-1 * var(--rp-border-width-medium));
|
|
31
|
+
}
|
|
32
|
+
.rp-scroll-area[data-scrollbars=both] .rp-scroll-area__viewport[data-v-f5c4e940] {
|
|
33
|
+
overflow: scroll;
|
|
34
|
+
}
|
|
35
|
+
.rp-scroll-area[data-scrollbars=x] .rp-scroll-area__viewport[data-v-f5c4e940] {
|
|
36
|
+
overflow-x: scroll;
|
|
37
|
+
overflow-y: hidden;
|
|
38
|
+
}
|
|
39
|
+
.rp-scroll-area[data-scrollbars=y] .rp-scroll-area__viewport[data-v-f5c4e940] {
|
|
40
|
+
overflow-x: hidden;
|
|
41
|
+
overflow-y: scroll;
|
|
42
|
+
}
|
|
43
|
+
.rp-scroll-area[data-scrollbars=none] .rp-scroll-area__viewport[data-v-f5c4e940] {
|
|
44
|
+
overflow: hidden;
|
|
45
|
+
}
|
|
46
|
+
.rp-scroll-area__content[data-v-f5c4e940] {
|
|
47
|
+
display: table;
|
|
48
|
+
box-sizing: border-box;
|
|
49
|
+
min-width: 100%;
|
|
50
|
+
}
|
|
51
|
+
.rp-scroll-area__scrollbar[data-v-f5c4e940] {
|
|
52
|
+
position: absolute;
|
|
53
|
+
z-index: 1;
|
|
54
|
+
box-sizing: border-box;
|
|
55
|
+
display: flex;
|
|
56
|
+
padding: var(--_rp-scroll-area-scrollbar-padding);
|
|
57
|
+
opacity: 0;
|
|
58
|
+
pointer-events: none;
|
|
59
|
+
touch-action: none;
|
|
60
|
+
user-select: none;
|
|
61
|
+
transition: opacity var(--rp-transition-fast);
|
|
62
|
+
}
|
|
63
|
+
.rp-scroll-area__scrollbar[data-visible][data-v-f5c4e940] {
|
|
64
|
+
opacity: 1;
|
|
65
|
+
pointer-events: auto;
|
|
66
|
+
}
|
|
67
|
+
.rp-scroll-area__scrollbar[data-v-f5c4e940]:focus-visible {
|
|
68
|
+
outline: var(--rp-border-width-medium) solid var(--rp-color-focus-ring);
|
|
69
|
+
outline-offset: calc(-1 * var(--rp-border-width-medium));
|
|
70
|
+
}
|
|
71
|
+
.rp-scroll-area__scrollbar--horizontal[data-v-f5c4e940] {
|
|
72
|
+
inset-inline: 0;
|
|
73
|
+
bottom: 0;
|
|
74
|
+
align-items: center;
|
|
75
|
+
width: auto;
|
|
76
|
+
height: var(--_rp-scroll-area-scrollbar-size);
|
|
77
|
+
}
|
|
78
|
+
.rp-scroll-area__scrollbar--vertical[data-v-f5c4e940] {
|
|
79
|
+
inset-block: 0;
|
|
80
|
+
inset-inline-end: 0;
|
|
81
|
+
justify-content: center;
|
|
82
|
+
width: var(--_rp-scroll-area-scrollbar-size);
|
|
83
|
+
height: auto;
|
|
84
|
+
}
|
|
85
|
+
.rp-scroll-area[data-scrollbar-y-active] .rp-scroll-area__scrollbar--horizontal[data-v-f5c4e940] {
|
|
86
|
+
inset-inline-end: var(--_rp-scroll-area-scrollbar-size);
|
|
87
|
+
}
|
|
88
|
+
.rp-scroll-area[data-scrollbar-x-active] .rp-scroll-area__scrollbar--vertical[data-v-f5c4e940] {
|
|
89
|
+
inset-block-end: var(--_rp-scroll-area-scrollbar-size);
|
|
90
|
+
}
|
|
91
|
+
.rp-scroll-area__thumb[data-v-f5c4e940] {
|
|
92
|
+
flex: 0 0 auto;
|
|
93
|
+
background: var(--_rp-scroll-area-thumb-bg);
|
|
94
|
+
border-radius: var(--rp-radius-full);
|
|
95
|
+
transition: background-color var(--rp-transition-fast);
|
|
96
|
+
}
|
|
97
|
+
.rp-scroll-area__scrollbar:hover .rp-scroll-area__thumb[data-v-f5c4e940], .rp-scroll-area__scrollbar:focus-visible .rp-scroll-area__thumb[data-v-f5c4e940] {
|
|
98
|
+
background: var(--_rp-scroll-area-thumb-bg-hover);
|
|
99
|
+
}
|
|
100
|
+
.rp-scroll-area__scrollbar--horizontal .rp-scroll-area__thumb[data-v-f5c4e940] {
|
|
101
|
+
width: var(--_rp-scroll-area-thumb-size);
|
|
102
|
+
height: 100%;
|
|
103
|
+
transform: translateX(var(--_rp-scroll-area-thumb-offset));
|
|
104
|
+
}
|
|
105
|
+
.rp-scroll-area__scrollbar--vertical .rp-scroll-area__thumb[data-v-f5c4e940] {
|
|
106
|
+
width: 100%;
|
|
107
|
+
height: var(--_rp-scroll-area-thumb-size);
|
|
108
|
+
transform: translateY(var(--_rp-scroll-area-thumb-offset));
|
|
109
|
+
}
|
|
110
|
+
.rp-scroll-area__corner[data-v-f5c4e940] {
|
|
111
|
+
position: absolute;
|
|
112
|
+
right: 0;
|
|
113
|
+
bottom: 0;
|
|
114
|
+
z-index: 1;
|
|
115
|
+
width: var(--_rp-scroll-area-scrollbar-size);
|
|
116
|
+
height: var(--_rp-scroll-area-scrollbar-size);
|
|
117
|
+
opacity: 0;
|
|
118
|
+
pointer-events: none;
|
|
119
|
+
transition: opacity var(--rp-transition-fast);
|
|
120
|
+
}
|
|
121
|
+
.rp-scroll-area__corner[data-visible][data-v-f5c4e940] {
|
|
122
|
+
opacity: 1;
|
|
123
|
+
}
|
|
124
|
+
@media (prefers-reduced-motion: reduce) {
|
|
125
|
+
.rp-scroll-area__scrollbar[data-v-f5c4e940],
|
|
126
|
+
.rp-scroll-area__corner[data-v-f5c4e940],
|
|
127
|
+
.rp-scroll-area__thumb[data-v-f5c4e940] {
|
|
128
|
+
transition: none;
|
|
129
|
+
}
|
|
130
|
+
}
|
|
131
|
+
}
|