@viraui/react 0.0.25 → 0.0.27
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/catalog.json +116 -68
- package/dist/components/accordion/accordion-item.d.ts +58 -0
- package/dist/components/accordion/accordion-item.js +65 -0
- package/dist/components/accordion/accordion.css +1 -0
- package/dist/components/accordion/accordion.d.ts +26 -0
- package/dist/components/accordion/accordion.guide.json +30 -0
- package/dist/components/accordion/accordion.js +22 -0
- package/dist/components/accordion/accordion.module.js +17 -0
- package/dist/components/accordion/index.d.ts +3 -0
- package/dist/components/avatar/avatar.css +1 -1
- package/dist/components/avatar/avatar.guide.json +25 -1
- package/dist/components/avatar/avatar.js +1 -1
- package/dist/components/avatar/avatar.module.js +8 -4
- package/dist/components/avatar-group/avatar-group.css +2 -2
- package/dist/components/avatar-group/avatar-group.guide.json +27 -1
- package/dist/components/avatar-group/avatar-group.js +2 -2
- package/dist/components/avatar-group/avatar-group.module.js +12 -6
- package/dist/components/basic-input/basic-input.css +1 -1
- package/dist/components/basic-input/basic-input.js +3 -3
- package/dist/components/basic-input/basic-input.module.js +4 -2
- package/dist/components/basic-input/field-label.css +1 -1
- package/dist/components/basic-input/field-label.module.js +4 -2
- package/dist/components/bleed/bleed.css +1 -0
- package/dist/components/bleed/bleed.d.ts +26 -0
- package/dist/components/bleed/bleed.guide.json +39 -0
- package/dist/components/bleed/bleed.js +24 -0
- package/dist/components/bleed/bleed.module.js +5 -0
- package/dist/components/bleed/index.d.ts +2 -0
- package/dist/components/button/button.css +1 -1
- package/dist/components/button/button.guide.json +33 -3
- package/dist/components/button/button.js +1 -1
- package/dist/components/button/button.module.js +8 -4
- package/dist/components/checkbox/checkbox-group.js +2 -2
- package/dist/components/checkbox/checkbox.css +1 -1
- package/dist/components/checkbox/checkbox.js +1 -1
- package/dist/components/checkbox/checkbox.module.js +16 -8
- package/dist/components/chip/chip.css +1 -1
- package/dist/components/chip/chip.guide.json +26 -1
- package/dist/components/chip/chip.module.js +10 -5
- package/dist/components/clamp-text/clamp-text.css +1 -1
- package/dist/components/clamp-text/clamp-text.guide.json +15 -1
- package/dist/components/clamp-text/clamp-text.js +1 -1
- package/dist/components/clamp-text/clamp-text.module.js +4 -2
- package/dist/components/dialog/dialog-close.js +2 -2
- package/dist/components/dialog/dialog-indent-background.js +2 -2
- package/dist/components/dialog/dialog-indent.js +2 -2
- package/dist/components/dialog/dialog-sheet.js +3 -3
- package/dist/components/dialog/dialog-trigger.js +2 -2
- package/dist/components/dialog/dialog.css +1 -1
- package/dist/components/dialog/dialog.d.ts +5 -4
- package/dist/components/dialog/dialog.guide.json +15 -1
- package/dist/components/dialog/dialog.js +4 -3
- package/dist/components/dialog/dialog.module.js +24 -12
- package/dist/components/elevator/elevator.js +2 -2
- package/dist/components/fieldset/fieldset.js +1 -1
- package/dist/components/icon/icon.module.js +4 -2
- package/dist/components/icon-button/icon-button.js +2 -2
- package/dist/components/index.d.ts +21 -13
- package/dist/components/linear-progress/linear-progress.css +1 -1
- package/dist/components/linear-progress/linear-progress.guide.json +14 -1
- package/dist/components/linear-progress/linear-progress.js +1 -1
- package/dist/components/linear-progress/linear-progress.module.js +8 -4
- package/dist/components/masonry/masonry.css +1 -1
- package/dist/components/masonry/masonry.guide.json +42 -1
- package/dist/components/masonry/masonry.js +3 -3
- package/dist/components/masonry/masonry.module.js +6 -3
- package/dist/components/meter/index.d.ts +2 -0
- package/dist/components/meter/meter.css +1 -0
- package/dist/components/meter/meter.d.ts +44 -0
- package/dist/components/meter/meter.guide.json +39 -0
- package/dist/components/meter/meter.js +59 -0
- package/dist/components/meter/meter.module.js +11 -0
- package/dist/components/popover/index.d.ts +4 -0
- package/dist/components/popover/popover-sheet.d.ts +65 -0
- package/dist/components/popover/popover-sheet.js +79 -0
- package/dist/components/popover/popover.css +1 -0
- package/dist/components/popover/popover.d.ts +74 -0
- package/dist/components/popover/popover.guide.json +28 -0
- package/dist/components/popover/popover.js +23 -0
- package/dist/components/popover/popover.module.js +13 -0
- package/dist/components/progressive-blur/progressive-blur.css +1 -1
- package/dist/components/progressive-blur/progressive-blur.guide.json +15 -1
- package/dist/components/progressive-blur/progressive-blur.js +1 -1
- package/dist/components/progressive-blur/progressive-blur.module.js +6 -3
- package/dist/components/radio/radio-group.d.ts +1 -1
- package/dist/components/radio/radio-group.js +2 -2
- package/dist/components/radio/radio.css +1 -1
- package/dist/components/radio/radio.js +1 -1
- package/dist/components/radio/radio.module.js +8 -4
- package/dist/components/select/select-group.js +1 -1
- package/dist/components/select/select-option.js +3 -3
- package/dist/components/select/select.css +1 -1
- package/dist/components/select/select.guide.json +26 -1
- package/dist/components/select/select.js +5 -4
- package/dist/components/select/select.module.js +36 -18
- package/dist/components/separator/separator.css +1 -1
- package/dist/components/separator/separator.js +1 -1
- package/dist/components/separator/separator.module.js +4 -2
- package/dist/components/shimmer/shimmer.css +1 -1
- package/dist/components/shimmer/shimmer.guide.json +39 -1
- package/dist/components/shimmer/shimmer.js +4 -4
- package/dist/components/shimmer/shimmer.module.js +4 -2
- package/dist/components/skeleton/skeleton.css +1 -1
- package/dist/components/skeleton/skeleton.guide.json +50 -1
- package/dist/components/skeleton/skeleton.js +5 -5
- package/dist/components/skeleton/skeleton.module.js +4 -2
- package/dist/components/slider/slider.css +1 -1
- package/dist/components/slider/slider.guide.json +20 -1
- package/dist/components/slider/slider.js +1 -1
- package/dist/components/slider/slider.module.js +20 -10
- package/dist/components/spinner/spinner.css +1 -1
- package/dist/components/spinner/spinner.guide.json +15 -1
- package/dist/components/spinner/spinner.module.js +6 -3
- package/dist/components/stack/stack.css +1 -1
- package/dist/components/stack/stack.guide.json +77 -1
- package/dist/components/stack/stack.js +8 -8
- package/dist/components/stack/stack.module.js +4 -2
- package/dist/components/static-noise/static-noise.module.js +6 -3
- package/dist/components/surface/surface-radius-context.js +7 -7
- package/dist/components/surface/surface.css +1 -1
- package/dist/components/surface/surface.d.ts +1 -1
- package/dist/components/surface/surface.guide.json +85 -1
- package/dist/components/surface/surface.js +6 -6
- package/dist/components/surface/surface.module.js +4 -2
- package/dist/components/switch/switch.css +1 -1
- package/dist/components/switch/switch.guide.json +32 -1
- package/dist/components/switch/switch.js +1 -1
- package/dist/components/switch/switch.module.js +10 -5
- package/dist/components/tabs/tabs-indicator.js +2 -2
- package/dist/components/tabs/tabs-list.js +2 -2
- package/dist/components/tabs/tabs-panel.js +2 -2
- package/dist/components/tabs/tabs-tab.js +2 -2
- package/dist/components/tabs/tabs-viewport.js +2 -2
- package/dist/components/tabs/tabs.css +1 -1
- package/dist/components/tabs/tabs.guide.json +8 -1
- package/dist/components/tabs/tabs.js +2 -2
- package/dist/components/tabs/tabs.module.js +16 -8
- package/dist/components/text/text.css +1 -1
- package/dist/components/text/text.guide.json +125 -1
- package/dist/components/text/text.js +11 -11
- package/dist/components/text/text.module.js +4 -2
- package/dist/components/textarea/textarea.css +1 -1
- package/dist/components/textarea/textarea.guide.json +14 -1
- package/dist/components/textarea/textarea.js +1 -1
- package/dist/components/textarea/textarea.module.js +10 -5
- package/dist/components/textfield/textfield.css +1 -1
- package/dist/components/textfield/textfield.guide.json +20 -1
- package/dist/components/textfield/textfield.js +1 -1
- package/dist/components/textfield/textfield.module.js +14 -7
- package/dist/components/title/title.css +1 -1
- package/dist/components/title/title.guide.json +123 -1
- package/dist/components/title/title.js +11 -11
- package/dist/components/title/title.module.js +4 -2
- package/dist/components/toast/toast-action.js +2 -2
- package/dist/components/toast/toast-banner.js +1 -1
- package/dist/components/toast/toast-viewport.js +2 -2
- package/dist/components/toast/toast.css +1 -1
- package/dist/components/toast/toast.module.js +8 -4
- package/dist/components/toggle-button/index.d.ts +2 -0
- package/dist/components/toggle-button/toggle-button.d.ts +39 -0
- package/dist/components/toggle-button/toggle-button.guide.json +25 -0
- package/dist/components/toggle-button/toggle-button.js +25 -0
- package/dist/components/toggle-group/index.d.ts +2 -0
- package/dist/components/toggle-group/toggle-group.d.ts +11 -0
- package/dist/components/toggle-group/toggle-group.guide.json +26 -0
- package/dist/components/toggle-group/toggle-group.js +15 -0
- package/dist/components/tooltip/index.d.ts +6 -0
- package/dist/components/tooltip/tooltip-content.d.ts +15 -0
- package/dist/components/tooltip/tooltip-content.js +32 -0
- package/dist/components/tooltip/tooltip.css +1 -0
- package/dist/components/tooltip/tooltip.d.ts +13 -0
- package/dist/components/tooltip/tooltip.guide.json +25 -0
- package/dist/components/tooltip/tooltip.js +20 -0
- package/dist/components/tooltip/tooltip.module.js +11 -0
- package/dist/components/typewriter/index.d.ts +3 -0
- package/dist/components/typewriter/typewriter.css +1 -0
- package/dist/components/typewriter/typewriter.d.ts +68 -0
- package/dist/components/typewriter/typewriter.guide.json +39 -0
- package/dist/components/typewriter/typewriter.js +105 -0
- package/dist/components/typewriter/typewriter.module.js +18 -0
- package/dist/components/typewriter/typewriter.utils.d.ts +23 -0
- package/dist/components/typewriter/typewriter.utils.js +100 -0
- package/dist/index.js +26 -16
- package/dist/preflight-surface.json +17 -4
- package/dist/preflight.css +1 -1
- package/package.json +6 -6
|
@@ -23,5 +23,19 @@
|
|
|
23
23
|
"Relying only on backdrop press or swipe when a footer action is the primary close path",
|
|
24
24
|
"Using Dialog when a centered non-gesture modal is enough and a future Dialog primitive is available"
|
|
25
25
|
],
|
|
26
|
-
"related": ["Surface", "Button", "IconButton", "Stack", "Elevator"]
|
|
26
|
+
"related": ["Surface", "Button", "IconButton", "Stack", "Elevator"],
|
|
27
|
+
"properties": {
|
|
28
|
+
"react": {
|
|
29
|
+
"Sheet.maxHeight": {
|
|
30
|
+
"description": "Maximum block size of the sheet panel.",
|
|
31
|
+
"refCss": "max-block-size"
|
|
32
|
+
}
|
|
33
|
+
},
|
|
34
|
+
"css": {
|
|
35
|
+
"max-block-size": {
|
|
36
|
+
"description": "Max block size of Dialog.Sheet popup root.",
|
|
37
|
+
"refReact": "Sheet.maxHeight"
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
}
|
|
27
41
|
}
|
|
@@ -7,15 +7,16 @@ import { DialogTrigger } from "./dialog-trigger.js";
|
|
|
7
7
|
import { jsx } from "react/jsx-runtime";
|
|
8
8
|
import { Drawer } from "@base-ui/react";
|
|
9
9
|
//#region src/components/dialog/dialog.tsx
|
|
10
|
-
var
|
|
11
|
-
|
|
10
|
+
var { Portal: _DialogPortal, Backdrop: _DialogBackdrop, Viewport: _DialogViewport, Popup: _DialogPopup, Title: _DialogTitle, Description: _DialogDescription, Content: _DialogContent, SwipeArea: _DialogSwipeArea, VirtualKeyboardProvider: _DialogVirtualKeyboardProvider, createHandle: _DialogCreateHandle, Handle: _DialogHandle, Root: _DialogRoot, ...primitiveDrawer } = Drawer;
|
|
11
|
+
var DialogRootComponent = ({ children, ...otherProps }) => /* @__PURE__ */ jsx(Drawer.Root, {
|
|
12
|
+
...otherProps,
|
|
12
13
|
children
|
|
13
14
|
});
|
|
14
15
|
var Dialog = Object.assign(DialogRootComponent, {
|
|
16
|
+
...primitiveDrawer,
|
|
15
17
|
Trigger: DialogTrigger,
|
|
16
18
|
Sheet: DialogSheet,
|
|
17
19
|
Close: DialogClose,
|
|
18
|
-
Provider: Drawer.Provider,
|
|
19
20
|
Indent: DialogIndent,
|
|
20
21
|
IndentBackground: DialogIndentBackground
|
|
21
22
|
});
|
|
@@ -1,15 +1,27 @@
|
|
|
1
|
+
//#region src/components/dialog/dialog.module.css
|
|
2
|
+
var Backdrop = "viraui__dialog-module__Backdrop_xgFhs";
|
|
3
|
+
var Viewport = "viraui__dialog-module__Viewport_kmZN1";
|
|
4
|
+
var Popup = "viraui__dialog-module__Popup_5qIyj";
|
|
5
|
+
var Handle = "viraui__dialog-module__Handle_nd9SN";
|
|
6
|
+
var HandleShape = "viraui__dialog-module__HandleShape_mEg8R";
|
|
7
|
+
var Header = "viraui__dialog-module__Header_WnBly";
|
|
8
|
+
var Body = "viraui__dialog-module__Body_9-UgN";
|
|
9
|
+
var Content = "viraui__dialog-module__Content_r8lJc";
|
|
10
|
+
var CloseButton = "viraui__dialog-module__CloseButton_U-B1r";
|
|
11
|
+
var IndentBackground = "viraui__dialog-module__IndentBackground_OEfbh";
|
|
12
|
+
var Indent = "viraui__dialog-module__Indent_qfiNW";
|
|
1
13
|
var dialog_module_default = {
|
|
2
|
-
Backdrop
|
|
3
|
-
Viewport
|
|
4
|
-
Popup
|
|
5
|
-
Handle
|
|
6
|
-
HandleShape
|
|
7
|
-
Header
|
|
8
|
-
Body
|
|
9
|
-
Content
|
|
10
|
-
CloseButton
|
|
11
|
-
IndentBackground
|
|
12
|
-
Indent
|
|
14
|
+
Backdrop,
|
|
15
|
+
Viewport,
|
|
16
|
+
Popup,
|
|
17
|
+
Handle,
|
|
18
|
+
HandleShape,
|
|
19
|
+
Header,
|
|
20
|
+
Body,
|
|
21
|
+
Content,
|
|
22
|
+
CloseButton,
|
|
23
|
+
IndentBackground,
|
|
24
|
+
Indent
|
|
13
25
|
};
|
|
14
26
|
//#endregion
|
|
15
|
-
export { dialog_module_default as default };
|
|
27
|
+
export { Backdrop, Body, CloseButton, Content, Handle, HandleShape, Header, Indent, IndentBackground, Popup, Viewport, dialog_module_default as default };
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { extractIntrinsicViraProps } from "../../core/props/intrinsic-vira-props.js";
|
|
2
|
-
import "../../core/elevation/elevation-types.js";
|
|
2
|
+
import { ELEVATION_DEFAULTS } from "../../core/elevation/elevation-types.js";
|
|
3
3
|
import { getElevationProps } from "../../core/elevation/get-elevation-props.js";
|
|
4
4
|
import { Children, cloneElement, isValidElement } from "react";
|
|
5
5
|
//#region src/components/elevator/elevator.tsx
|
|
@@ -26,4 +26,4 @@ var Elevator = ({ children, resting, hover, direction, shadowColor, extraShadow,
|
|
|
26
26
|
});
|
|
27
27
|
};
|
|
28
28
|
//#endregion
|
|
29
|
-
export { Elevator };
|
|
29
|
+
export { ELEVATION_DEFAULTS, Elevator, getElevationProps };
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { extractIntrinsicViraProps } from "../../core/props/intrinsic-vira-props.js";
|
|
2
|
-
import { Stack } from "../stack/stack.js";
|
|
3
2
|
import { FieldHelperCopy } from "../basic-input/field-helper-copy.js";
|
|
4
3
|
import { FieldLabel } from "../basic-input/field-label.js";
|
|
4
|
+
import { Stack } from "../stack/stack.js";
|
|
5
5
|
import { jsx, jsxs } from "react/jsx-runtime";
|
|
6
6
|
import { Fieldset } from "@base-ui/react";
|
|
7
7
|
//#region src/components/fieldset/fieldset.tsx
|
|
@@ -1,3 +1,5 @@
|
|
|
1
|
-
|
|
1
|
+
//#region src/components/icon/icon.module.css
|
|
2
|
+
var Icon = "viraui__icon-module__Icon_6DoBq";
|
|
3
|
+
var icon_module_default = { Icon };
|
|
2
4
|
//#endregion
|
|
3
|
-
export { icon_module_default as default };
|
|
5
|
+
export { Icon, icon_module_default as default };
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import { Button } from "../button/button.js";
|
|
2
2
|
import { jsx } from "react/jsx-runtime";
|
|
3
3
|
//#region src/components/icon-button/icon-button.tsx
|
|
4
|
-
var IconButton = ({ icon, size = "medium", ...
|
|
4
|
+
var IconButton = ({ icon, size = "medium", ...otherProps }) => /* @__PURE__ */ jsx(Button, {
|
|
5
5
|
addon: icon,
|
|
6
6
|
size,
|
|
7
|
-
...
|
|
7
|
+
...otherProps
|
|
8
8
|
});
|
|
9
9
|
//#endregion
|
|
10
10
|
export { IconButton };
|
|
@@ -1,31 +1,39 @@
|
|
|
1
|
+
export * from './accordion';
|
|
1
2
|
export * from './avatar';
|
|
2
3
|
export * from './avatar-group';
|
|
4
|
+
export * from './bleed';
|
|
5
|
+
export * from './button';
|
|
6
|
+
export * from './checkbox';
|
|
3
7
|
export * from './chip';
|
|
4
|
-
export * from './dialog';
|
|
5
8
|
export * from './clamp-text';
|
|
9
|
+
export * from './dialog';
|
|
6
10
|
export * from './elevator';
|
|
7
|
-
export * from './
|
|
11
|
+
export * from './fieldset';
|
|
12
|
+
export * from './icon';
|
|
8
13
|
export * from './icon-button';
|
|
9
14
|
export * from './linear-progress';
|
|
10
15
|
export * from './masonry';
|
|
11
|
-
export * from './
|
|
12
|
-
export * from './
|
|
13
|
-
export * from './
|
|
14
|
-
export * from './switch';
|
|
15
|
-
export * from './checkbox';
|
|
16
|
-
export * from './fieldset';
|
|
16
|
+
export * from './meter';
|
|
17
|
+
export * from './popover';
|
|
18
|
+
export * from './progressive-blur';
|
|
17
19
|
export * from './radio';
|
|
18
20
|
export * from './select';
|
|
19
21
|
export * from './separator';
|
|
20
22
|
export * from './shimmer';
|
|
21
|
-
export * from './icon';
|
|
22
23
|
export * from './skeleton';
|
|
24
|
+
export * from './slider';
|
|
25
|
+
export * from './spinner';
|
|
23
26
|
export * from './stack';
|
|
27
|
+
export * from './static-noise';
|
|
24
28
|
export * from './surface';
|
|
29
|
+
export * from './switch';
|
|
25
30
|
export * from './tabs';
|
|
26
|
-
export * from './toast';
|
|
27
|
-
export * from './spinner';
|
|
28
|
-
export * from './static-noise';
|
|
29
|
-
export * from './progressive-blur';
|
|
30
31
|
export * from './text';
|
|
32
|
+
export * from './textarea';
|
|
33
|
+
export * from './textfield';
|
|
31
34
|
export * from './title';
|
|
35
|
+
export * from './toast';
|
|
36
|
+
export * from './toggle-button';
|
|
37
|
+
export * from './toggle-group';
|
|
38
|
+
export * from './typewriter';
|
|
39
|
+
export * from './tooltip';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
.viraui__linear-progress-module__LinearProgress_-KN0j{--linear-progress-track-size:var(--space-x-small);--linear-progress-track-background:var(--global-contrast);--linear-progress-indicator-color:var(--global-primary);& .viraui__linear-progress-module__Track_qUz8P{position:relative;overflow:hidden;block-size:var(--linear-progress-track-size);background:var(--linear-progress-track-background);border-radius:var(--radius-infinite)}& .viraui__linear-progress-module__Indicator_maaZF{block-size:100%;background:var(--linear-progress-indicator-color);border-radius:inherit;&[data-indeterminate]{position:absolute;inset:0;inline-size:100%;background:#0000;&:before{position:absolute;inset-block:0;inline-size:40%;background:var(--linear-progress-indicator-color);border-radius:inherit;animation:viraui__linear-progress-module__linear-progress-indeterminate_g0cSO 1.4s var(--easing-standard) infinite;content:""}}}}@keyframes viraui__linear-progress-module__linear-progress-indeterminate_g0cSO{0%{transform:translateX(-120%)}to{transform:translateX(260%)}}
|
|
1
|
+
.viraui__linear-progress-module__LinearProgress_-KN0j{--vui-linear-progress-track-size:var(--space-x-small);--vui-linear-progress-track-background:var(--global-contrast);--vui-linear-progress-indicator-color:var(--global-primary);& .viraui__linear-progress-module__Track_qUz8P{position:relative;overflow:hidden;block-size:var(--vui-linear-progress-track-size);background:var(--vui-linear-progress-track-background);border-radius:var(--radius-infinite)}& .viraui__linear-progress-module__Indicator_maaZF{block-size:100%;background:var(--vui-linear-progress-indicator-color);border-radius:inherit;&[data-indeterminate]{position:absolute;inset:0;inline-size:100%;background:#0000;&:before{position:absolute;inset-block:0;inline-size:40%;background:var(--vui-linear-progress-indicator-color);border-radius:inherit;animation:viraui__linear-progress-module__linear-progress-indeterminate_g0cSO 1.4s var(--easing-standard) infinite;content:""}}}}@keyframes viraui__linear-progress-module__linear-progress-indeterminate_g0cSO{0%{transform:translateX(-120%)}to{transform:translateX(260%)}}
|
|
@@ -23,5 +23,18 @@
|
|
|
23
23
|
"Do not model disabled progress; Base UI Progress does not expose a disabled state.",
|
|
24
24
|
"Do not hide the task label when multiple progress indicators are visible."
|
|
25
25
|
],
|
|
26
|
-
"related": ["Slider", "Spinner", "Skeleton", "Text"]
|
|
26
|
+
"related": ["Slider", "Spinner", "Skeleton", "Text"],
|
|
27
|
+
"properties": {
|
|
28
|
+
"css": {
|
|
29
|
+
"track-size": {
|
|
30
|
+
"description": "Progress track thickness on the root."
|
|
31
|
+
},
|
|
32
|
+
"track-background": {
|
|
33
|
+
"description": "Progress track background color."
|
|
34
|
+
},
|
|
35
|
+
"indicator-color": {
|
|
36
|
+
"description": "Determinate progress indicator color."
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
}
|
|
27
40
|
}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import './linear-progress.css';
|
|
2
2
|
import { clsx } from "../../core/clsx.js";
|
|
3
3
|
import { extractIntrinsicViraProps } from "../../core/props/intrinsic-vira-props.js";
|
|
4
|
-
import { Stack } from "../stack/stack.js";
|
|
5
4
|
import { Text } from "../text/text.js";
|
|
6
5
|
import { FieldLabel } from "../basic-input/field-label.js";
|
|
6
|
+
import { Stack } from "../stack/stack.js";
|
|
7
7
|
import linear_progress_module_default from "./linear-progress.module.js";
|
|
8
8
|
import { jsx, jsxs } from "react/jsx-runtime";
|
|
9
9
|
import { Progress } from "@base-ui/react/progress";
|
|
@@ -1,8 +1,12 @@
|
|
|
1
|
+
//#region src/components/linear-progress/linear-progress.module.css
|
|
2
|
+
var LinearProgress = "viraui__linear-progress-module__LinearProgress_-KN0j";
|
|
3
|
+
var Track = "viraui__linear-progress-module__Track_qUz8P";
|
|
4
|
+
var Indicator = "viraui__linear-progress-module__Indicator_maaZF";
|
|
1
5
|
var linear_progress_module_default = {
|
|
2
|
-
LinearProgress
|
|
6
|
+
LinearProgress,
|
|
3
7
|
"linear-progress-indeterminate": "viraui__linear-progress-module__linear-progress-indeterminate_g0cSO",
|
|
4
|
-
Track
|
|
5
|
-
Indicator
|
|
8
|
+
Track,
|
|
9
|
+
Indicator
|
|
6
10
|
};
|
|
7
11
|
//#endregion
|
|
8
|
-
export { linear_progress_module_default as default };
|
|
12
|
+
export { Indicator, LinearProgress, Track, linear_progress_module_default as default };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
.viraui__masonry-module__Masonry_l7c8U{--masonry-gap:var(--space-large);--masonry-column-fill:balance;--masonry-column-rule-color:var(--global-contrast);display:block;column-gap:var(--masonry-gap);column-fill:var(--masonry-column-fill);column-rule-color:var(--masonry-column-rule-color);columns:var(--masonry-column-width,auto) var(--masonry-column-count,auto)}.viraui__masonry-module__Item_ywXwo{display:block;break-inside:avoid;margin:0;padding-block-end:var(--masonry-gap);&[data-masonry-item-span-all=true]{column-span:all}}
|
|
1
|
+
.viraui__masonry-module__Masonry_l7c8U{--vui-masonry-gap:var(--space-large);--vui-masonry-column-fill:balance;--vui-masonry-column-rule-color:var(--global-contrast);display:block;column-gap:var(--vui-masonry-gap);column-fill:var(--vui-masonry-column-fill);column-rule-color:var(--vui-masonry-column-rule-color);columns:var(--vui-masonry-column-width,auto) var(--vui-masonry-column-count,auto)}.viraui__masonry-module__Item_ywXwo{display:block;break-inside:avoid;margin:0;padding-block-end:var(--vui-masonry-gap);&[data-masonry-item-span-all=true]{column-span:all}}
|
|
@@ -20,5 +20,46 @@
|
|
|
20
20
|
"Treating CSS columns as a true interactive grid with predictable left-to-right keyboard traversal",
|
|
21
21
|
"Using arbitrary child margins instead of the component gap contract for item spacing"
|
|
22
22
|
],
|
|
23
|
-
"related": ["Stack", "Surface", "Text"]
|
|
23
|
+
"related": ["Stack", "Surface", "Text"],
|
|
24
|
+
"properties": {
|
|
25
|
+
"react": {
|
|
26
|
+
"gap": {
|
|
27
|
+
"description": "Gap between columns and block-end spacing on each item.",
|
|
28
|
+
"refCss": "gap"
|
|
29
|
+
},
|
|
30
|
+
"columnFill": {
|
|
31
|
+
"description": "How the browser balances content across columns.",
|
|
32
|
+
"refCss": "column-fill"
|
|
33
|
+
},
|
|
34
|
+
"columnWidth": {
|
|
35
|
+
"description": "CSS column-width override; takes precedence over columnCount.",
|
|
36
|
+
"refCss": "column-width"
|
|
37
|
+
},
|
|
38
|
+
"columnCount": {
|
|
39
|
+
"description": "CSS column-count when columnWidth is not set.",
|
|
40
|
+
"refCss": "column-count"
|
|
41
|
+
}
|
|
42
|
+
},
|
|
43
|
+
"css": {
|
|
44
|
+
"gap": {
|
|
45
|
+
"description": "Column gap and item block-end spacing.",
|
|
46
|
+
"refReact": "gap"
|
|
47
|
+
},
|
|
48
|
+
"column-fill": {
|
|
49
|
+
"description": "Column-fill algorithm on the root.",
|
|
50
|
+
"refReact": "columnFill"
|
|
51
|
+
},
|
|
52
|
+
"column-width": {
|
|
53
|
+
"description": "Width-based multi-column layout.",
|
|
54
|
+
"refReact": "columnWidth"
|
|
55
|
+
},
|
|
56
|
+
"column-count": {
|
|
57
|
+
"description": "Count-based multi-column layout.",
|
|
58
|
+
"refReact": "columnCount"
|
|
59
|
+
},
|
|
60
|
+
"column-rule-color": {
|
|
61
|
+
"description": "Color of the column rule between columns."
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
}
|
|
24
65
|
}
|
|
@@ -10,9 +10,9 @@ var MasonryRoot = ({ children, className, columnCount = 4, columnFill = "balance
|
|
|
10
10
|
const { componentProps, intrinsicAttributes } = extractIntrinsicViraProps(otherProps);
|
|
11
11
|
const usesColumnWidth = columnWidth !== void 0;
|
|
12
12
|
const dynamicStyle = {
|
|
13
|
-
"--masonry-gap": resolveThemeValue(gap, "space", "var(--space-large)"),
|
|
14
|
-
"--masonry-column-fill": columnFill,
|
|
15
|
-
...usesColumnWidth ? { "--masonry-column-width": columnWidth } : { "--masonry-column-count": `${columnCount}` },
|
|
13
|
+
"--vui-masonry-gap": resolveThemeValue(gap, "space", "var(--space-large)"),
|
|
14
|
+
"--vui-masonry-column-fill": columnFill,
|
|
15
|
+
...usesColumnWidth ? { "--vui-masonry-column-width": columnWidth } : { "--vui-masonry-column-count": `${columnCount}` },
|
|
16
16
|
columnRuleWidth,
|
|
17
17
|
columnRuleStyle,
|
|
18
18
|
...style
|
|
@@ -1,6 +1,9 @@
|
|
|
1
|
+
//#region src/components/masonry/masonry.module.css
|
|
2
|
+
var Masonry = "viraui__masonry-module__Masonry_l7c8U";
|
|
3
|
+
var Item = "viraui__masonry-module__Item_ywXwo";
|
|
1
4
|
var masonry_module_default = {
|
|
2
|
-
Masonry
|
|
3
|
-
Item
|
|
5
|
+
Masonry,
|
|
6
|
+
Item
|
|
4
7
|
};
|
|
5
8
|
//#endregion
|
|
6
|
-
export { masonry_module_default as default };
|
|
9
|
+
export { Item, Masonry, masonry_module_default as default };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
.viraui__meter-module__Meter_YRI7d{--vui-meter-track-size:var(--space-x-small);--vui-meter-track-background:var(--global-contrast);--vui-meter-indicator-color:var(--global-primary);& .viraui__meter-module__Track_uF9wy{position:relative;overflow:hidden;block-size:var(--vui-meter-track-size);background:var(--vui-meter-track-background);border-radius:var(--radius-infinite)}& .viraui__meter-module__Indicator_dNjqU{block-size:100%;background:var(--vui-meter-indicator-color);border-radius:inherit}}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
import { MeterRoot } from '@base-ui/react';
|
|
2
|
+
import { IntrinsicViraProps } from '../../core/props/intrinsic-vira-props';
|
|
3
|
+
import type * as React from 'react';
|
|
4
|
+
/**
|
|
5
|
+
* Public Meter props.
|
|
6
|
+
*
|
|
7
|
+
* Includes Base UI meter root props such as `value`, `min`, `max`, `format`,
|
|
8
|
+
* and `getAriaValueText`, plus optional label, description, and value display.
|
|
9
|
+
*
|
|
10
|
+
* @default Base UI pass-through props keep upstream defaults.
|
|
11
|
+
*/
|
|
12
|
+
export type MeterProps = MeterRoot.Props & {
|
|
13
|
+
/**
|
|
14
|
+
* Adds `data-grow="false"` to the meter root when false.
|
|
15
|
+
*
|
|
16
|
+
* @default The meter root does not render a grow attribute.
|
|
17
|
+
*/
|
|
18
|
+
grow?: IntrinsicViraProps['grow'];
|
|
19
|
+
/**
|
|
20
|
+
* Adds `data-shrink="false"` to the meter root when false.
|
|
21
|
+
*
|
|
22
|
+
* @default The meter root does not render a shrink attribute.
|
|
23
|
+
*/
|
|
24
|
+
shrink?: IntrinsicViraProps['shrink'];
|
|
25
|
+
/**
|
|
26
|
+
* Visible label rendered through `Meter.Label` with shared internal `FieldLabel`.
|
|
27
|
+
*
|
|
28
|
+
* @default No label is rendered.
|
|
29
|
+
*/
|
|
30
|
+
label?: React.ReactNode;
|
|
31
|
+
/**
|
|
32
|
+
* Static helper copy rendered with `Text` below the meter track.
|
|
33
|
+
*
|
|
34
|
+
* @default No description is rendered.
|
|
35
|
+
*/
|
|
36
|
+
description?: React.ReactNode;
|
|
37
|
+
/**
|
|
38
|
+
* Renders the formatted current value via `Meter.Value` and `Text`.
|
|
39
|
+
*
|
|
40
|
+
* @default false
|
|
41
|
+
*/
|
|
42
|
+
showValue?: boolean;
|
|
43
|
+
};
|
|
44
|
+
export declare const Meter: React.FC<MeterProps>;
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "Meter",
|
|
3
|
+
"summary": "Shows a determinate metric in a compact horizontal track for static capacity, level, or score values.",
|
|
4
|
+
"whenToUse": [
|
|
5
|
+
"Use for storage usage, battery level, capacity, or score within a known range.",
|
|
6
|
+
"Use with a label when the metric needs a visible name.",
|
|
7
|
+
"Use with `showValue` when the formatted value should appear beside the label."
|
|
8
|
+
],
|
|
9
|
+
"whenNotToUse": [
|
|
10
|
+
"Use LinearProgress for in-progress tasks or indeterminate work.",
|
|
11
|
+
"Use Slider when the user needs to choose or adjust a value.",
|
|
12
|
+
"Use Spinner for a small standalone loading affordance without metric context."
|
|
13
|
+
],
|
|
14
|
+
"accessibility": [
|
|
15
|
+
"Provide a visible `label` or an accessible name through `aria-label` / `aria-labelledby` when the metric is not otherwise clear.",
|
|
16
|
+
"Keep `value` numeric and within `min` / `max` for accurate `aria-valuenow` semantics.",
|
|
17
|
+
"Use `description` for supplementary context that should not replace the accessible name."
|
|
18
|
+
],
|
|
19
|
+
"antiPatterns": [
|
|
20
|
+
"Do not use Meter as an interactive value control.",
|
|
21
|
+
"Do not use Meter for indeterminate or in-progress work.",
|
|
22
|
+
"Do not hide the metric label when multiple meters are visible.",
|
|
23
|
+
"Do not model invalid or disabled meter state; Base UI Meter does not expose those states."
|
|
24
|
+
],
|
|
25
|
+
"related": ["LinearProgress", "Slider", "Text"],
|
|
26
|
+
"properties": {
|
|
27
|
+
"css": {
|
|
28
|
+
"track-size": {
|
|
29
|
+
"description": "Meter track thickness on the root."
|
|
30
|
+
},
|
|
31
|
+
"track-background": {
|
|
32
|
+
"description": "Meter track background color."
|
|
33
|
+
},
|
|
34
|
+
"indicator-color": {
|
|
35
|
+
"description": "Determinate meter indicator color."
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
}
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
import './meter.css';
|
|
2
|
+
import { clsx } from "../../core/clsx.js";
|
|
3
|
+
import { extractIntrinsicViraProps } from "../../core/props/intrinsic-vira-props.js";
|
|
4
|
+
import { Text } from "../text/text.js";
|
|
5
|
+
import { FieldLabel } from "../basic-input/field-label.js";
|
|
6
|
+
import { Stack } from "../stack/stack.js";
|
|
7
|
+
import meter_module_default from "./meter.module.js";
|
|
8
|
+
import { jsx, jsxs } from "react/jsx-runtime";
|
|
9
|
+
import { Meter } from "@base-ui/react";
|
|
10
|
+
//#region src/components/meter/meter.tsx
|
|
11
|
+
var Meter$1 = ({ className, description, label, showValue = false, value, ...otherProps }) => {
|
|
12
|
+
const { componentProps, intrinsicAttributes } = extractIntrinsicViraProps(otherProps);
|
|
13
|
+
return /* @__PURE__ */ jsxs(Meter.Root, {
|
|
14
|
+
...componentProps,
|
|
15
|
+
...intrinsicAttributes,
|
|
16
|
+
className: clsx(meter_module_default.Meter, className),
|
|
17
|
+
value,
|
|
18
|
+
render: /* @__PURE__ */ jsx(Stack, {
|
|
19
|
+
direction: "column",
|
|
20
|
+
fillChildren: false,
|
|
21
|
+
rowGap: "small",
|
|
22
|
+
columnGap: "x-small"
|
|
23
|
+
}),
|
|
24
|
+
children: [
|
|
25
|
+
(label || showValue) && /* @__PURE__ */ jsxs(Stack, {
|
|
26
|
+
direction: "row",
|
|
27
|
+
fillChildren: false,
|
|
28
|
+
columnGap: "small",
|
|
29
|
+
vAlign: "center",
|
|
30
|
+
hAlign: "space-between",
|
|
31
|
+
children: [label && /* @__PURE__ */ jsx(Meter.Label, {
|
|
32
|
+
render: /* @__PURE__ */ jsx(FieldLabel, {}),
|
|
33
|
+
children: label
|
|
34
|
+
}), showValue && /* @__PURE__ */ jsx(Text, {
|
|
35
|
+
size: "small",
|
|
36
|
+
tone: "muted",
|
|
37
|
+
family: "mono",
|
|
38
|
+
whiteSpace: "nowrap",
|
|
39
|
+
selection: false,
|
|
40
|
+
align: "end",
|
|
41
|
+
shrink: false,
|
|
42
|
+
render: /* @__PURE__ */ jsx(Meter.Value, { render: /* @__PURE__ */ jsx("output", {}) })
|
|
43
|
+
})]
|
|
44
|
+
}),
|
|
45
|
+
/* @__PURE__ */ jsx(Meter.Track, {
|
|
46
|
+
className: meter_module_default.Track,
|
|
47
|
+
children: /* @__PURE__ */ jsx(Meter.Indicator, { className: meter_module_default.Indicator })
|
|
48
|
+
}),
|
|
49
|
+
description && /* @__PURE__ */ jsx(Text, {
|
|
50
|
+
className: meter_module_default.Description,
|
|
51
|
+
size: "small",
|
|
52
|
+
tone: "muted",
|
|
53
|
+
children: description
|
|
54
|
+
})
|
|
55
|
+
]
|
|
56
|
+
});
|
|
57
|
+
};
|
|
58
|
+
//#endregion
|
|
59
|
+
export { Meter$1 as Meter };
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
//#region src/components/meter/meter.module.css
|
|
2
|
+
var Meter = "viraui__meter-module__Meter_YRI7d";
|
|
3
|
+
var Track = "viraui__meter-module__Track_uF9wy";
|
|
4
|
+
var Indicator = "viraui__meter-module__Indicator_dNjqU";
|
|
5
|
+
var meter_module_default = {
|
|
6
|
+
Meter,
|
|
7
|
+
Track,
|
|
8
|
+
Indicator
|
|
9
|
+
};
|
|
10
|
+
//#endregion
|
|
11
|
+
export { Indicator, Meter, Track, meter_module_default as default };
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
export { Popover, PopoverClose, PopoverDescription, PopoverTitle, PopoverTrigger } from './popover';
|
|
2
|
+
export type { PopoverCloseProps, PopoverDescriptionProps, PopoverProps, PopoverTitleProps, PopoverTriggerProps, } from './popover';
|
|
3
|
+
export { PopoverSheet } from './popover-sheet';
|
|
4
|
+
export type { PopoverSheetProps } from './popover-sheet';
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
import { PopoverPositioner } from '@base-ui/react/popover';
|
|
2
|
+
import { StackProps } from '..';
|
|
3
|
+
import type * as React from 'react';
|
|
4
|
+
type PopoverSheetPositionerProps = Omit<PopoverPositioner.Props, 'className' | 'style' | 'render'>;
|
|
5
|
+
type PopoverSheetStyledProps = PopoverSheetPositionerProps & {
|
|
6
|
+
/**
|
|
7
|
+
* Whether to skip the built-in Surface, header, and close chrome and render
|
|
8
|
+
* only the positioning/animation shell (Portal + Positioner + Popup + Viewport).
|
|
9
|
+
*
|
|
10
|
+
* @default false
|
|
11
|
+
*/
|
|
12
|
+
unstyled?: false;
|
|
13
|
+
/**
|
|
14
|
+
* Accessible popover title rendered as the popup heading.
|
|
15
|
+
*/
|
|
16
|
+
title: React.ReactNode;
|
|
17
|
+
/**
|
|
18
|
+
* Supporting copy announced with the title.
|
|
19
|
+
*
|
|
20
|
+
* @default No description is rendered.
|
|
21
|
+
*/
|
|
22
|
+
description?: React.ReactNode;
|
|
23
|
+
/**
|
|
24
|
+
* Whether to show the built-in flat IconButton close control.
|
|
25
|
+
*
|
|
26
|
+
* @default false
|
|
27
|
+
*/
|
|
28
|
+
showCloseButton?: boolean;
|
|
29
|
+
/**
|
|
30
|
+
* Aligns the header content.
|
|
31
|
+
*
|
|
32
|
+
* @default `start`
|
|
33
|
+
*/
|
|
34
|
+
headerAlign?: Extract<StackProps['hAlign'], 'start' | 'center' | 'end'>;
|
|
35
|
+
};
|
|
36
|
+
type PopoverSheetUnstyledProps = PopoverSheetPositionerProps & {
|
|
37
|
+
/**
|
|
38
|
+
* Renders only the positioning/animation shell; compose `Popover.Title`,
|
|
39
|
+
* `Popover.Description`, and any chrome inside `children`.
|
|
40
|
+
*/
|
|
41
|
+
unstyled: true;
|
|
42
|
+
title?: never;
|
|
43
|
+
description?: never;
|
|
44
|
+
showCloseButton?: never;
|
|
45
|
+
headerAlign?: never;
|
|
46
|
+
};
|
|
47
|
+
/**
|
|
48
|
+
* Public Popover.Sheet props.
|
|
49
|
+
*
|
|
50
|
+
* Encapsulates Portal + Positioner + Popup + Viewport + Title + Description +
|
|
51
|
+
* optional body `children`. Positioning props forward to the Positioner; `sideOffset`
|
|
52
|
+
* defaults to `8`. Always renders the internal Viewport so multi-trigger content
|
|
53
|
+
* animations work by default. Compose `Popover.Close` inside `children` when a
|
|
54
|
+
* close control is needed, or set `showCloseButton` for the built-in flat IconButton.
|
|
55
|
+
*
|
|
56
|
+
* With `unstyled`, the built-in Surface, header, and close chrome are skipped and
|
|
57
|
+
* `children` render directly inside the Viewport; the consumer owns the popup markup
|
|
58
|
+
* and must compose `Popover.Title` (and `Popover.Description` when needed) for
|
|
59
|
+
* accessible naming.
|
|
60
|
+
*
|
|
61
|
+
* @default `sideOffset` is `8`; no description, no close button, styled chrome.
|
|
62
|
+
*/
|
|
63
|
+
export type PopoverSheetProps = PopoverSheetStyledProps | PopoverSheetUnstyledProps;
|
|
64
|
+
export declare const PopoverSheet: React.FC<PopoverSheetProps>;
|
|
65
|
+
export {};
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
import { Text } from "../text/text.js";
|
|
2
|
+
import { Stack } from "../stack/stack.js";
|
|
3
|
+
import { Icon } from "../icon/icon.js";
|
|
4
|
+
import { IconButton } from "../icon-button/icon-button.js";
|
|
5
|
+
import popover_module_default from "./popover.module.js";
|
|
6
|
+
import { Surface } from "../surface/surface.js";
|
|
7
|
+
import { Title } from "../title/title.js";
|
|
8
|
+
import { jsx, jsxs } from "react/jsx-runtime";
|
|
9
|
+
import { Popover } from "@base-ui/react/popover";
|
|
10
|
+
//#region src/components/popover/popover-sheet.tsx
|
|
11
|
+
var PopoverSheet = ({ unstyled, title, description, children, showCloseButton = false, headerAlign = "start", sideOffset = 8, ...positionerProps }) => /* @__PURE__ */ jsx(Popover.Portal, { children: /* @__PURE__ */ jsx(Popover.Positioner, {
|
|
12
|
+
className: popover_module_default.Sheet,
|
|
13
|
+
sideOffset,
|
|
14
|
+
...positionerProps,
|
|
15
|
+
children: unstyled ? /* @__PURE__ */ jsx(Popover.Popup, {
|
|
16
|
+
className: popover_module_default.Popup,
|
|
17
|
+
children: /* @__PURE__ */ jsx(Popover.Viewport, {
|
|
18
|
+
className: popover_module_default.Viewport,
|
|
19
|
+
"data-unstyled": "",
|
|
20
|
+
children
|
|
21
|
+
})
|
|
22
|
+
}) : /* @__PURE__ */ jsx(Popover.Popup, {
|
|
23
|
+
className: popover_module_default.Popup,
|
|
24
|
+
render: /* @__PURE__ */ jsx(Surface, {
|
|
25
|
+
color: 1,
|
|
26
|
+
border: "all",
|
|
27
|
+
radius: "large",
|
|
28
|
+
vibrant: true,
|
|
29
|
+
render: /* @__PURE__ */ jsx(Stack, {
|
|
30
|
+
rowGap: "medium",
|
|
31
|
+
fillChildren: false
|
|
32
|
+
})
|
|
33
|
+
}),
|
|
34
|
+
children: /* @__PURE__ */ jsxs(Popover.Viewport, {
|
|
35
|
+
className: popover_module_default.Viewport,
|
|
36
|
+
render: /* @__PURE__ */ jsx(Stack, {
|
|
37
|
+
rowGap: "medium",
|
|
38
|
+
vPadding: "medium",
|
|
39
|
+
hPadding: "medium",
|
|
40
|
+
fillChildren: false
|
|
41
|
+
}),
|
|
42
|
+
children: [
|
|
43
|
+
/* @__PURE__ */ jsxs(Stack, {
|
|
44
|
+
hAlign: headerAlign,
|
|
45
|
+
rowGap: "small",
|
|
46
|
+
vAlign: "start",
|
|
47
|
+
vPadding: [0, children ? "medium" : 0],
|
|
48
|
+
children: [/* @__PURE__ */ jsx(Popover.Title, {
|
|
49
|
+
render: /* @__PURE__ */ jsx(Title, {
|
|
50
|
+
align: headerAlign,
|
|
51
|
+
level: "h6",
|
|
52
|
+
lineHeight: "x-small"
|
|
53
|
+
}),
|
|
54
|
+
children: title
|
|
55
|
+
}), description && /* @__PURE__ */ jsx(Popover.Description, {
|
|
56
|
+
render: /* @__PURE__ */ jsx(Text, {
|
|
57
|
+
align: headerAlign,
|
|
58
|
+
tone: "muted",
|
|
59
|
+
render: /* @__PURE__ */ jsx("p", {})
|
|
60
|
+
}),
|
|
61
|
+
children: description
|
|
62
|
+
})]
|
|
63
|
+
}),
|
|
64
|
+
showCloseButton && /* @__PURE__ */ jsx(Popover.Close, {
|
|
65
|
+
className: popover_module_default.CloseButton,
|
|
66
|
+
render: /* @__PURE__ */ jsx(IconButton, {
|
|
67
|
+
"aria-label": "Close popover",
|
|
68
|
+
icon: /* @__PURE__ */ jsx(Icon, { name: "Xmark" }),
|
|
69
|
+
size: "small",
|
|
70
|
+
variant: "flat"
|
|
71
|
+
})
|
|
72
|
+
}),
|
|
73
|
+
children
|
|
74
|
+
]
|
|
75
|
+
})
|
|
76
|
+
})
|
|
77
|
+
}) });
|
|
78
|
+
//#endregion
|
|
79
|
+
export { PopoverSheet };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
.viraui__popover-module__Sheet_4x-7H{width:var(--positioner-width);height:var(--positioner-height);max-width:var(--available-width);transition:top var(--duration-fast) var(--easing-standard),right var(--duration-fast) var(--easing-standard),bottom var(--duration-fast) var(--easing-standard),left var(--duration-fast) var(--easing-standard),transform var(--duration-fast) var(--easing-standard);&[data-instant=click],&[data-instant=dismiss]{transition:none}@media (prefers-reduced-motion:reduce){transition:none}}.viraui__popover-module__Popup_pJyIh{position:relative;box-sizing:border-box;width:var(--popup-width,auto);height:var(--popup-height,auto);transform-origin:var(--transform-origin);transition:width var(--duration-fast) var(--easing-standard),height var(--duration-fast) var(--easing-standard),opacity var(--duration-fast) var(--easing-entrance),transform var(--duration-fast) var(--easing-entrance);&[data-ending-style],&[data-starting-style]{opacity:0;transform:scale(.96)}&[data-instant=click],&[data-instant=dismiss]{transition:none}@media (prefers-reduced-motion:reduce){transition:none;&[data-ending-style],&[data-starting-style]{opacity:1;transform:none}}}.viraui__popover-module__Viewport_KrjBC{--vui-popover-content-fade-duration:var(--duration-fast);position:relative;display:grid;grid-template-columns:minmax(0,1fr);overflow:clip;width:100%;height:100%;&>[data-current],&>[data-previous]{grid-area:1/1;inline-size:calc(var(--popup-width) - 2px - var(--vui-stack-padding-inline-start) - var(--vui-stack-padding-inline-end))}&[data-unstyled]>:is([data-current],[data-previous]){inline-size:var(--popup-width,100%)}&[data-unstyled]>[data-previous]{block-size:var(--popup-height,100%)}&>[data-previous]{position:absolute;block-size:calc(var(--popup-height) - 2px - var(--vui-stack-padding-block-start) - var(--vui-stack-padding-block-end));overflow:clip;pointer-events:none;opacity:1;transition:opacity var(--vui-popover-content-fade-duration) var(--easing-standard)}&>[data-previous][data-ending-style]{opacity:0}&>[data-current]{opacity:1;transition:opacity var(--vui-popover-content-fade-duration) var(--easing-entrance)}&>[data-current][data-starting-style]{opacity:0}&[data-instant=click]>[data-current],&[data-instant=click]>[data-previous],&[data-instant=dismiss]>[data-current],&[data-instant=dismiss]>[data-previous]{transition:none}@media (prefers-reduced-motion:reduce){&>[data-current],&>[data-previous]{transition:none}&>[data-current][data-starting-style],&>[data-previous][data-ending-style]{opacity:1}}}.viraui__popover-module__CloseButton_YOe2L.viraui__popover-module__CloseButton_YOe2L{position:absolute;inset-block-start:var(--space-small);inset-inline-end:var(--space-small)}
|