react-material-design 0.0.0-stage → 0.5.1
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/LICENSE +21 -0
- package/README.md +12 -2
- package/dist/_virtual/_rolldown/runtime.cjs +1 -0
- package/dist/components/Button/context.cjs +1 -0
- package/dist/components/Button/context.d.ts +29 -0
- package/dist/components/Button/context.js +41 -0
- package/dist/components/Button/default/index.cjs +1 -0
- package/dist/components/Button/default/index.d.ts +26 -0
- package/dist/components/Button/default/index.js +22 -0
- package/dist/components/Button/default/render.cjs +1 -0
- package/dist/components/Button/default/render.d.ts +3 -0
- package/dist/components/Button/default/render.js +203 -0
- package/dist/components/Button/default/style.css +1 -0
- package/dist/components/Button/group/index.cjs +1 -0
- package/dist/components/Button/group/index.d.ts +2 -0
- package/dist/components/Button/group/index.js +1 -0
- package/dist/components/Button/group/render.cjs +1 -0
- package/dist/components/Button/group/render.d.ts +49 -0
- package/dist/components/Button/group/render.js +100 -0
- package/dist/components/Button/group/style.css +1 -0
- package/dist/components/Button/icon/index.cjs +1 -0
- package/dist/components/Button/icon/index.d.ts +22 -0
- package/dist/components/Button/icon/index.js +23 -0
- package/dist/components/Button/icon/render.cjs +1 -0
- package/dist/components/Button/icon/render.d.ts +4 -0
- package/dist/components/Button/icon/render.js +178 -0
- package/dist/components/Button/icon/style.css +1 -0
- package/dist/components/Button/index.cjs +1 -0
- package/dist/components/Button/index.d.ts +1 -0
- package/dist/components/Button/index.js +55 -0
- package/dist/components/Button/split/index.cjs +1 -0
- package/dist/components/Button/split/index.d.ts +6 -0
- package/dist/components/Button/split/index.js +33 -0
- package/dist/components/Button/split/style.css +1 -0
- package/dist/components/Button/types.d.ts +19 -0
- package/dist/components/Card/index.d.ts +1 -0
- package/dist/components/Chip/index.cjs +1 -0
- package/dist/components/Chip/index.d.ts +50 -0
- package/dist/components/Chip/index.js +156 -0
- package/dist/components/Chip/style.css +1 -0
- package/dist/components/ContextMenu/index.cjs +1 -0
- package/dist/components/ContextMenu/index.d.ts +2 -0
- package/dist/components/ContextMenu/index.js +19 -0
- package/dist/components/ContextMenu/render.cjs +1 -0
- package/dist/components/ContextMenu/render.d.ts +4 -0
- package/dist/components/ContextMenu/render.js +59 -0
- package/dist/components/Dialog/Dialog.cjs +1 -0
- package/dist/components/Dialog/Dialog.d.ts +23 -0
- package/dist/components/Dialog/Dialog.js +182 -0
- package/dist/components/Dialog/DialogActions.cjs +1 -0
- package/dist/components/Dialog/DialogActions.d.ts +3 -0
- package/dist/components/Dialog/DialogActions.js +17 -0
- package/dist/components/Dialog/index.cjs +1 -0
- package/dist/components/Dialog/index.d.ts +4 -0
- package/dist/components/Dialog/index.js +3 -0
- package/dist/components/Dialog/style.css +1 -0
- package/dist/components/Divider/index.cjs +1 -0
- package/dist/components/Divider/index.d.ts +6 -0
- package/dist/components/Divider/index.js +29 -0
- package/dist/components/Divider/style.css +1 -0
- package/dist/components/Font/index.d.ts +9 -0
- package/dist/components/Icon/Icon.cjs +1 -0
- package/dist/components/Icon/Icon.d.ts +18 -0
- package/dist/components/Icon/Icon.js +47 -0
- package/dist/components/Icon/index.cjs +1 -0
- package/dist/components/Icon/index.d.ts +2 -0
- package/dist/components/Icon/index.js +1 -0
- package/dist/components/Icon/style.css +1 -0
- package/dist/components/Menu/Menu.cjs +1 -0
- package/dist/components/Menu/Menu.d.ts +4 -0
- package/dist/components/Menu/Menu.js +10 -0
- package/dist/components/Menu/Menu.render.cjs +1 -0
- package/dist/components/Menu/Menu.render.d.ts +15 -0
- package/dist/components/Menu/Menu.render.js +55 -0
- package/dist/components/Menu/MenuContainer.cjs +1 -0
- package/dist/components/Menu/MenuContainer.d.ts +7 -0
- package/dist/components/Menu/MenuContainer.js +46 -0
- package/dist/components/Menu/MenuGroup.cjs +1 -0
- package/dist/components/Menu/MenuGroup.d.ts +11 -0
- package/dist/components/Menu/MenuGroup.js +34 -0
- package/dist/components/Menu/MenuGroup.render.cjs +1 -0
- package/dist/components/Menu/MenuGroup.render.d.ts +6 -0
- package/dist/components/Menu/MenuGroup.render.js +31 -0
- package/dist/components/Menu/MenuItem.cjs +1 -0
- package/dist/components/Menu/MenuItem.d.ts +19 -0
- package/dist/components/Menu/MenuItem.js +30 -0
- package/dist/components/Menu/MenuItem.render.cjs +1 -0
- package/dist/components/Menu/MenuItem.render.d.ts +7 -0
- package/dist/components/Menu/MenuItem.render.js +75 -0
- package/dist/components/Menu/index.cjs +1 -0
- package/dist/components/Menu/index.d.ts +3 -0
- package/dist/components/Menu/index.js +4 -0
- package/dist/components/Menu/style.css +1 -0
- package/dist/components/Menubar/MenuSection.cjs +1 -0
- package/dist/components/Menubar/MenuSection.d.ts +8 -0
- package/dist/components/Menubar/MenuSection.js +21 -0
- package/dist/components/Menubar/index.cjs +1 -0
- package/dist/components/Menubar/index.d.ts +3 -0
- package/dist/components/Menubar/index.js +20 -0
- package/dist/components/Menubar/render.cjs +1 -0
- package/dist/components/Menubar/render.d.ts +3 -0
- package/dist/components/Menubar/render.js +58 -0
- package/dist/components/Menubar/style.css +1 -0
- package/dist/components/NumberField/NumberField.cjs +1 -0
- package/dist/components/NumberField/NumberField.d.ts +2 -0
- package/dist/components/NumberField/NumberField.js +19 -0
- package/dist/components/NumberField/NumberField.render.cjs +1 -0
- package/dist/components/NumberField/NumberField.render.d.ts +10 -0
- package/dist/components/NumberField/NumberField.render.js +268 -0
- package/dist/components/NumberField/index.cjs +1 -0
- package/dist/components/NumberField/index.d.ts +2 -0
- package/dist/components/NumberField/index.js +1 -0
- package/dist/components/NumberField/style.css +1 -0
- package/dist/components/ProgressIndicator/index.d.ts +9 -0
- package/dist/components/Select/Option.cjs +1 -0
- package/dist/components/Select/Option.d.ts +10 -0
- package/dist/components/Select/Option.js +24 -0
- package/dist/components/Select/Select.cjs +1 -0
- package/dist/components/Select/Select.d.ts +32 -0
- package/dist/components/Select/Select.js +265 -0
- package/dist/components/Select/index.cjs +1 -0
- package/dist/components/Select/index.d.ts +4 -0
- package/dist/components/Select/index.js +3 -0
- package/dist/components/Select/style.css +1 -0
- package/dist/components/Slider/Slider.cjs +1 -0
- package/dist/components/Slider/Slider.d.ts +26 -0
- package/dist/components/Slider/Slider.js +342 -0
- package/dist/components/Slider/index.cjs +1 -0
- package/dist/components/Slider/index.d.ts +1 -0
- package/dist/components/Slider/index.js +1 -0
- package/dist/components/Slider/style.css +1 -0
- package/dist/components/TextField/TextField.cjs +1 -0
- package/dist/components/TextField/TextField.d.ts +2 -0
- package/dist/components/TextField/TextField.js +19 -0
- package/dist/components/TextField/TextField.render.cjs +1 -0
- package/dist/components/TextField/TextField.render.d.ts +19 -0
- package/dist/components/TextField/TextField.render.js +159 -0
- package/dist/components/TextField/index.cjs +1 -0
- package/dist/components/TextField/index.d.ts +2 -0
- package/dist/components/TextField/index.js +1 -0
- package/dist/components/TextField/style.css +1 -0
- package/dist/components/Theme/Theme.cjs +4 -0
- package/dist/components/Theme/Theme.d.ts +14 -0
- package/dist/components/Theme/Theme.js +183 -0
- package/dist/components/Theme/index.cjs +1 -0
- package/dist/components/Theme/index.d.ts +1 -0
- package/dist/components/Theme/index.js +1 -0
- package/dist/components/Theme/style.css +1 -0
- package/dist/components/Theme/types.d.ts +29 -0
- package/dist/components/Toolbar/Toolbar.cjs +1 -0
- package/dist/components/Toolbar/Toolbar.d.ts +3 -0
- package/dist/components/Toolbar/Toolbar.js +19 -0
- package/dist/components/Toolbar/Toolbar.render.cjs +1 -0
- package/dist/components/Toolbar/Toolbar.render.d.ts +14 -0
- package/dist/components/Toolbar/Toolbar.render.js +64 -0
- package/dist/components/Toolbar/index.cjs +1 -0
- package/dist/components/Toolbar/index.d.ts +2 -0
- package/dist/components/Toolbar/index.js +1 -0
- package/dist/components/Toolbar/style.css +1 -0
- package/dist/components/Tooltip/Tooltip.cjs +1 -0
- package/dist/components/Tooltip/Tooltip.d.ts +12 -0
- package/dist/components/Tooltip/Tooltip.js +52 -0
- package/dist/components/Tooltip/index.cjs +1 -0
- package/dist/components/Tooltip/index.d.ts +1 -0
- package/dist/components/Tooltip/index.js +1 -0
- package/dist/components/Tooltip/style.css +1 -0
- package/dist/components/containers/FilledField/index.cjs +1 -0
- package/dist/components/containers/FilledField/index.d.ts +9 -0
- package/dist/components/containers/FilledField/index.js +40 -0
- package/dist/components/containers/FilledField/style.css +1 -0
- package/dist/components/containers/OutlinedField/index.cjs +1 -0
- package/dist/components/containers/OutlinedField/index.d.ts +9 -0
- package/dist/components/containers/OutlinedField/index.js +59 -0
- package/dist/components/containers/OutlinedField/style.css +1 -0
- package/dist/components/misc/FloatingElement/index.cjs +1 -0
- package/dist/components/misc/FloatingElement/index.d.ts +17 -0
- package/dist/components/misc/FloatingElement/index.js +106 -0
- package/dist/components/misc/FloatingElement/style.css +1 -0
- package/dist/components/misc/OrderedCollection/index.cjs +1 -0
- package/dist/components/misc/OrderedCollection/index.d.ts +27 -0
- package/dist/components/misc/OrderedCollection/index.js +98 -0
- package/dist/components/misc/OrderedCollection/style.css +1 -0
- package/dist/components/misc/Polymorphic.cjs +1 -0
- package/dist/components/misc/Polymorphic.d.ts +15 -0
- package/dist/components/misc/Polymorphic.js +51 -0
- package/dist/components/misc/StateLayer/index.cjs +1 -0
- package/dist/components/misc/StateLayer/index.d.ts +7 -0
- package/dist/components/misc/StateLayer/index.js +67 -0
- package/dist/components/misc/StateLayer/style.css +1 -0
- package/dist/components/misc/Transitionable/index.cjs +1 -0
- package/dist/components/misc/Transitionable/index.d.ts +6 -0
- package/dist/components/misc/Transitionable/index.js +54 -0
- package/dist/components/misc/Transitionable/style.css +1 -0
- package/dist/components/types.cjs +1 -0
- package/dist/components/types.d.ts +20 -0
- package/dist/components/types.js +13 -0
- package/dist/hooks/useFloating/autoUpdate.cjs +1 -0
- package/dist/hooks/useFloating/autoUpdate.d.ts +9 -0
- package/dist/hooks/useFloating/autoUpdate.js +64 -0
- package/dist/hooks/useFloating/index.cjs +1 -0
- package/dist/hooks/useFloating/index.d.ts +30 -0
- package/dist/hooks/useFloating/index.js +97 -0
- package/dist/hooks/useFloating/middleware/flip.cjs +1 -0
- package/dist/hooks/useFloating/middleware/flip.d.ts +2 -0
- package/dist/hooks/useFloating/middleware/flip.js +88 -0
- package/dist/hooks/useFloating/middleware/offset.cjs +1 -0
- package/dist/hooks/useFloating/middleware/offset.d.ts +2 -0
- package/dist/hooks/useFloating/middleware/offset.js +42 -0
- package/dist/hooks/useFloating/middleware/shift.cjs +1 -0
- package/dist/hooks/useFloating/middleware/shift.d.ts +2 -0
- package/dist/hooks/useFloating/middleware/shift.js +11 -0
- package/dist/hooks/useFloating/middleware/size.cjs +1 -0
- package/dist/hooks/useFloating/middleware/size.d.ts +6 -0
- package/dist/hooks/useFloating/middleware/size.js +7 -0
- package/dist/hooks/useFloating/utils.cjs +1 -0
- package/dist/hooks/useFloating/utils.d.ts +22 -0
- package/dist/hooks/useFloating/utils.js +145 -0
- package/dist/layouts/Content.cjs +1 -0
- package/dist/layouts/Content.d.ts +3 -0
- package/dist/layouts/Content.js +17 -0
- package/dist/layouts/Page/index.cjs +1 -0
- package/dist/layouts/Page/index.d.ts +7 -0
- package/dist/layouts/Page/index.js +135 -0
- package/dist/layouts/Page/style.css +1 -0
- package/dist/layouts/Panes/Pane.cjs +1 -0
- package/dist/layouts/Panes/Pane.d.ts +11 -0
- package/dist/layouts/Panes/Pane.js +27 -0
- package/dist/layouts/Panes/Pane.render.cjs +1 -0
- package/dist/layouts/Panes/Pane.render.d.ts +6 -0
- package/dist/layouts/Panes/Pane.render.js +36 -0
- package/dist/layouts/Panes/Panes.cjs +1 -0
- package/dist/layouts/Panes/Panes.d.ts +28 -0
- package/dist/layouts/Panes/Panes.js +182 -0
- package/dist/layouts/Panes/index.cjs +1 -0
- package/dist/layouts/Panes/index.d.ts +4 -0
- package/dist/layouts/Panes/index.js +3 -0
- package/dist/layouts/Panes/style.css +1 -0
- package/dist/layouts/Tabs/Tab.cjs +1 -0
- package/dist/layouts/Tabs/Tab.d.ts +13 -0
- package/dist/layouts/Tabs/Tab.js +33 -0
- package/dist/layouts/Tabs/Tabs.cjs +1 -0
- package/dist/layouts/Tabs/Tabs.d.ts +9 -0
- package/dist/layouts/Tabs/Tabs.js +110 -0
- package/dist/layouts/Tabs/index.cjs +1 -0
- package/dist/layouts/Tabs/index.d.ts +4 -0
- package/dist/layouts/Tabs/index.js +3 -0
- package/dist/layouts/Tabs/style.css +1 -0
- package/dist/layouts/Toolbox/index.cjs +1 -0
- package/dist/layouts/Toolbox/index.d.ts +5 -0
- package/dist/layouts/Toolbox/index.js +129 -0
- package/dist/layouts/Toolbox/style.css +1 -0
- package/dist/style/motions.d.ts +37 -0
- package/dist/style/shapes/12_sided_cookie.d.ts +3 -0
- package/dist/style/shapes/4_leaf_clover.d.ts +3 -0
- package/dist/style/shapes/4_sided_cookie.d.ts +3 -0
- package/dist/style/shapes/6_sided_cookie.d.ts +3 -0
- package/dist/style/shapes/7_sided_cookie.d.ts +3 -0
- package/dist/style/shapes/8_leaf_clover.d.ts +3 -0
- package/dist/style/shapes/9_sided_cookie.d.ts +3 -0
- package/dist/style/shapes/arch.d.ts +3 -0
- package/dist/style/shapes/arrow.d.ts +3 -0
- package/dist/style/shapes/boom.d.ts +3 -0
- package/dist/style/shapes/bun.d.ts +3 -0
- package/dist/style/shapes/burst.d.ts +3 -0
- package/dist/style/shapes/circle.d.ts +3 -0
- package/dist/style/shapes/clamshell.d.ts +3 -0
- package/dist/style/shapes/diamond.d.ts +3 -0
- package/dist/style/shapes/fan.d.ts +3 -0
- package/dist/style/shapes/flower.d.ts +3 -0
- package/dist/style/shapes/gem.d.ts +3 -0
- package/dist/style/shapes/ghost_ish.d.ts +3 -0
- package/dist/style/shapes/heart.d.ts +3 -0
- package/dist/style/shapes/index.d.ts +109 -0
- package/dist/style/shapes/oval.d.ts +3 -0
- package/dist/style/shapes/pentagon.d.ts +3 -0
- package/dist/style/shapes/pill.d.ts +3 -0
- package/dist/style/shapes/pixel_circle.d.ts +3 -0
- package/dist/style/shapes/pixel_triangle.d.ts +3 -0
- package/dist/style/shapes/puffy.d.ts +3 -0
- package/dist/style/shapes/puffy_diamond.d.ts +3 -0
- package/dist/style/shapes/semicircle.d.ts +3 -0
- package/dist/style/shapes/slanted.d.ts +3 -0
- package/dist/style/shapes/soft_boom.d.ts +3 -0
- package/dist/style/shapes/soft_burst.d.ts +3 -0
- package/dist/style/shapes/square.d.ts +3 -0
- package/dist/style/shapes/sunny.d.ts +3 -0
- package/dist/style/shapes/triangle.d.ts +3 -0
- package/dist/style/shapes/very_sunny.d.ts +3 -0
- package/dist/style/symbols.d.ts +2 -0
- package/dist/utils/dom.cjs +1 -0
- package/dist/utils/dom.d.ts +2 -0
- package/dist/utils/dom.js +53 -0
- package/dist/utils/hooks.cjs +1 -0
- package/dist/utils/hooks.d.ts +17 -0
- package/dist/utils/hooks.js +9 -0
- package/dist/utils/index.cjs +1 -0
- package/dist/utils/index.d.ts +44 -0
- package/dist/utils/index.js +78 -0
- package/package.json +169 -4
package/LICENSE
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2025 Coletta Alexandre
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
package/README.md
CHANGED
|
@@ -1,3 +1,13 @@
|
|
|
1
|
-
#
|
|
1
|
+
# React Material Design
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
[](https://badge.fury.io/js/react-material-design)
|
|
4
|
+
|
|
5
|
+
React Material Design is a React component library built on the principles of Google's Material Design 3 Expressive design language. It provides a comprehensive set of UI components that are both visually appealing and highly functional, enabling developers to create consistent and accessible user interfaces with ease.
|
|
6
|
+
|
|
7
|
+
## Documentation
|
|
8
|
+
|
|
9
|
+
Documentation is under construction.
|
|
10
|
+
|
|
11
|
+
## License
|
|
12
|
+
|
|
13
|
+
This project is licensed under the MIT License. See the [LICENSE](LICENSE) file for details.
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
var e=Object.create,t=Object.defineProperty,n=Object.getOwnPropertyDescriptor,r=Object.getOwnPropertyNames,i=Object.getPrototypeOf,a=Object.prototype.hasOwnProperty,o=(e,i,o,s)=>{if(i&&typeof i==`object`||typeof i==`function`)for(var c=r(i),l=0,u=c.length,d;l<u;l++)d=c[l],!a.call(e,d)&&d!==o&&t(e,d,{get:(e=>i[e]).bind(null,d),enumerable:!(s=n(i,d))||s.enumerable});return e},s=(n,r,s)=>(s=n==null?{}:e(i(n)),o(r||!n||!n.__esModule||!a.call(n,`default`)?t(s,`default`,{value:n,enumerable:!0}):s,n));exports.__toESM=s;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
let e=require("react/compiler-runtime"),t=require("react"),n=require("react/jsx-runtime");var r=(0,t.createContext)(null),i=()=>(0,t.useContext)(r);function a(t){let i=(0,e.c)(7),a;i[0]!==t.color||i[1]!==t.shape||i[2]!==t.width?(a={color:t.color,shape:t.shape,width:t.width,getColor(e){if(typeof t.color==`string`)return t.color;switch(e){case`default`:return t.color?.default;case`icon`:return t.color?.icon}},getShape(e){if(typeof t.shape==`string`)return t.shape;switch(e){case`default`:return t.shape?.default;case`icon`:return t.shape?.icon}},getWidth(e){if(typeof t.width==`string`)return t.width;switch(e){case`default`:return t.width?.default;case`icon`:return t.width?.icon}}},i[0]=t.color,i[1]=t.shape,i[2]=t.width,i[3]=a):a=i[3];let o=a,s;return i[4]!==o||i[5]!==t.children?(s=(0,n.jsx)(r,{value:o,children:t.children}),i[4]=o,i[5]=t.children,i[6]=s):s=i[6],s}exports.ButtonContext=r,exports.default=a,exports.useButtonContext=i;
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { ButtonColor, ButtonWidth } from './default';
|
|
2
|
+
import { IconButtonColor, IconButtonWidth } from './icon';
|
|
3
|
+
import { CommonButtonColor, CommonButtonShape, CommonButtonWidth } from './types';
|
|
4
|
+
import { PropsWithChildren } from 'react';
|
|
5
|
+
export interface ButtonProviderColors {
|
|
6
|
+
default?: ButtonColor;
|
|
7
|
+
icon?: IconButtonColor;
|
|
8
|
+
}
|
|
9
|
+
export interface ButtonProviderShapes {
|
|
10
|
+
default?: CommonButtonShape;
|
|
11
|
+
icon?: CommonButtonShape;
|
|
12
|
+
}
|
|
13
|
+
export interface ButtonProviderWidths {
|
|
14
|
+
default?: ButtonWidth;
|
|
15
|
+
icon?: IconButtonWidth;
|
|
16
|
+
}
|
|
17
|
+
export interface ButtonProviderProps {
|
|
18
|
+
color?: ButtonProviderColors | CommonButtonColor;
|
|
19
|
+
shape?: ButtonProviderShapes | CommonButtonShape;
|
|
20
|
+
width?: ButtonProviderWidths | CommonButtonWidth;
|
|
21
|
+
}
|
|
22
|
+
export interface ButtonContext extends ButtonProviderProps {
|
|
23
|
+
getColor(type: keyof ButtonProviderColors): ButtonColor | IconButtonColor | undefined;
|
|
24
|
+
getShape(type: keyof ButtonProviderShapes): CommonButtonShape | undefined;
|
|
25
|
+
getWidth(type: keyof ButtonProviderWidths): ButtonWidth | IconButtonWidth | undefined;
|
|
26
|
+
}
|
|
27
|
+
export declare const ButtonContext: import('react').Context<ButtonContext | null>;
|
|
28
|
+
export declare const useButtonContext: () => ButtonContext | null;
|
|
29
|
+
export default function ButtonProvider(props: PropsWithChildren<ButtonProviderProps>): import('react').JSX.Element;
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
import { c as e } from "react/compiler-runtime";
|
|
2
|
+
import { createContext as t, useContext as n } from "react";
|
|
3
|
+
import { jsx as r } from "react/jsx-runtime";
|
|
4
|
+
//#region lib/components/Button/context.tsx
|
|
5
|
+
var i = t(null), a = () => n(i);
|
|
6
|
+
function o(t) {
|
|
7
|
+
let n = e(7), a;
|
|
8
|
+
n[0] !== t.color || n[1] !== t.shape || n[2] !== t.width ? (a = {
|
|
9
|
+
color: t.color,
|
|
10
|
+
shape: t.shape,
|
|
11
|
+
width: t.width,
|
|
12
|
+
getColor(e) {
|
|
13
|
+
if (typeof t.color == "string") return t.color;
|
|
14
|
+
switch (e) {
|
|
15
|
+
case "default": return t.color?.default;
|
|
16
|
+
case "icon": return t.color?.icon;
|
|
17
|
+
}
|
|
18
|
+
},
|
|
19
|
+
getShape(e) {
|
|
20
|
+
if (typeof t.shape == "string") return t.shape;
|
|
21
|
+
switch (e) {
|
|
22
|
+
case "default": return t.shape?.default;
|
|
23
|
+
case "icon": return t.shape?.icon;
|
|
24
|
+
}
|
|
25
|
+
},
|
|
26
|
+
getWidth(e) {
|
|
27
|
+
if (typeof t.width == "string") return t.width;
|
|
28
|
+
switch (e) {
|
|
29
|
+
case "default": return t.width?.default;
|
|
30
|
+
case "icon": return t.width?.icon;
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
}, n[0] = t.color, n[1] = t.shape, n[2] = t.width, n[3] = a) : a = n[3];
|
|
34
|
+
let o = a, s;
|
|
35
|
+
return n[4] !== o || n[5] !== t.children ? (s = /* @__PURE__ */ r(i, {
|
|
36
|
+
value: o,
|
|
37
|
+
children: t.children
|
|
38
|
+
}), n[4] = o, n[5] = t.children, n[6] = s) : s = n[6], s;
|
|
39
|
+
}
|
|
40
|
+
//#endregion
|
|
41
|
+
export { i as ButtonContext, o as default, a as useButtonContext };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:`Module`}}),require("../../Icon/Icon.cjs");require('./style.css');const e=require("../../misc/OrderedCollection/index.cjs");require("../../misc/Polymorphic.cjs");const t=require("./render.cjs");;/* empty css */let n=require("react/compiler-runtime"),r=require("react/jsx-runtime");function i(i){let a=(0,n.c)(4);if(e.useOrderedCollection()){let t;return a[0]===i?t=a[1]:(t=(0,r.jsx)(e.OrderedCollectionChild,{name:`Button`,content:i}),a[0]=i,a[1]=t),t}let o;return a[2]===i?o=a[3]:(o=(0,r.jsx)(t.default,{...i}),a[2]=i,a[3]=o),o}exports.default=i;
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { CommonButtonColor, CommonButtonProps, CommonButtonWidth, CommonSelectableButtonProps } from '../types';
|
|
2
|
+
import { IconDefinition } from '../../Icon/Icon';
|
|
3
|
+
import { PolymorphicComponent } from '../../misc/Polymorphic';
|
|
4
|
+
import { TooltipProps } from '../../Tooltip';
|
|
5
|
+
import { ElementType, ReactElement, Ref } from 'react';
|
|
6
|
+
export type ButtonColor = "elevated" | CommonButtonColor | "text";
|
|
7
|
+
export type ButtonWidth = CommonButtonWidth | "stretch";
|
|
8
|
+
export interface DefaultButtonProps extends Omit<CommonButtonProps, "color"> {
|
|
9
|
+
color?: ButtonColor;
|
|
10
|
+
label: string | (() => string);
|
|
11
|
+
icon?: IconDefinition | (() => IconDefinition);
|
|
12
|
+
width?: ButtonWidth;
|
|
13
|
+
title?: string | ReactElement<TooltipProps>;
|
|
14
|
+
menuRef?: Ref<HTMLDivElement>;
|
|
15
|
+
menuOpenBehavior?: "manual" | "hover" | "click";
|
|
16
|
+
menuOpen?: boolean;
|
|
17
|
+
onMenuOpen?: () => void;
|
|
18
|
+
onMenuClose?: () => void;
|
|
19
|
+
}
|
|
20
|
+
export interface SelectableButtonProps extends Omit<DefaultButtonProps, "color" | "selectable" | "label" | "icon">, CommonSelectableButtonProps {
|
|
21
|
+
color?: Exclude<DefaultButtonProps["color"], "text">;
|
|
22
|
+
label: string | ((selected: boolean) => string);
|
|
23
|
+
icon?: IconDefinition | ((selected: boolean) => IconDefinition);
|
|
24
|
+
}
|
|
25
|
+
export type ButtonProps<As extends ElementType = "button"> = PolymorphicComponent<"Button", As, "button", DefaultButtonProps | SelectableButtonProps>;
|
|
26
|
+
export default function Button<As extends ElementType = "button">(props: ButtonProps<As>): import('react').JSX.Element;
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import "../../Icon/Icon.js";
|
|
2
|
+
import { OrderedCollectionChild as e, useOrderedCollection as t } from "../../misc/OrderedCollection/index.js";
|
|
3
|
+
import "../../misc/Polymorphic.js";
|
|
4
|
+
import n from "./render.js";
|
|
5
|
+
import './style.css';/* empty css */
|
|
6
|
+
import { c as r } from "react/compiler-runtime";
|
|
7
|
+
import { jsx as i } from "react/jsx-runtime";
|
|
8
|
+
//#region lib/components/Button/default/index.tsx
|
|
9
|
+
function a(a) {
|
|
10
|
+
let o = r(4);
|
|
11
|
+
if (t()) {
|
|
12
|
+
let t;
|
|
13
|
+
return o[0] === a ? t = o[1] : (t = /* @__PURE__ */ i(e, {
|
|
14
|
+
name: "Button",
|
|
15
|
+
content: a
|
|
16
|
+
}), o[0] = a, o[1] = t), t;
|
|
17
|
+
}
|
|
18
|
+
let s;
|
|
19
|
+
return o[2] === a ? s = o[3] : (s = /* @__PURE__ */ i(n, { ...a }), o[2] = a, o[3] = s), s;
|
|
20
|
+
}
|
|
21
|
+
//#endregion
|
|
22
|
+
export { a as default };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
const e=require("../../../_virtual/_rolldown/runtime.cjs"),t=require("../../Theme/Theme.cjs"),ee=require("../context.cjs"),te=require("../../Icon/Icon.cjs"),ne=require("../../misc/Polymorphic.cjs"),re=require("../../misc/StateLayer/index.cjs"),n=require("../../misc/Transitionable/index.cjs"),ie=require("../../Menu/Menu.cjs");require("../../Menu/index.cjs");const ae=require("../../misc/FloatingElement/index.cjs"),oe=require("../../Tooltip/Tooltip.cjs");require("../../Tooltip/index.cjs");const se=require("../../types.cjs"),ce=require("../group/render.cjs"),le=require("../index.cjs");let ue=require("react/compiler-runtime"),r=require("classnames");r=e.__toESM(r,1);let de=require("react"),i=require("react/jsx-runtime"),a=require("react-dom-event-hooks");var o=[`color`,`size`,`shape`,`disabled`,`emphasized`,`selectable`,`selected`,`onSelected`],fe=[...o,`label`,`icon`,`menuRef`,`menuOpenBehavior`,`menuOpen`,`onMenuOpen`,`onMenuClose`,`tooltip`,`width`];function s(e){let o=(0,ue.c)(136),{label:s,icon:c,menuOpenBehavior:pe,menuRef:me,menuOpen:l,onMenuOpen:he,onMenuClose:ge}=e,u=pe===void 0?`hover`:pe,{popoversContainer:_e}=t.useTheme(`IconButton`),d;o[0]===Symbol.for(`react.memo_cache_sentinel`)?(d={allowedPlacements:[`top-start`,`top-end`,`bottom-start`,`bottom-end`]},o[0]=d):d=o[0];let ve=d,ye=(0,de.useId)(),f=e.id??ye,p=ee.useButtonContext(),m=ce.useButtonGroupContext(),h;o[1]!==p||o[2]!==e.color?(h=e.color??p?.getColor(`default`)??`filled`,o[1]=p,o[2]=e.color,o[3]=h):h=o[3];let be=h,g;o[4]!==p||o[5]!==e.shape?(g=p?.getShape(`default`)??e.shape??`round`,o[4]=p,o[5]=e.shape,o[6]=g):g=o[6];let xe=g,_;o[7]!==p||o[8]!==e.width?(_=p?.getWidth(`default`)??e.width??`default`,o[7]=p,o[8]=e.width,o[9]=_):_=o[9];let Se=`width-${_}`,Ce=m?m.size:e.size,v;o[10]===Ce?v=o[11]:(v=se.getComponentSizeName(Ce),o[10]=Ce,o[11]=v);let y=v,[we,Te]=(0,de.useState)(l??!1),b=l??we,x;o[12]!==l||o[13]!==ge||o[14]!==he?(x=e=>{l===void 0&&Te(e),e?he?.():ge?.()},o[12]=l,o[13]=ge,o[14]=he,o[15]=x):x=o[15];let S=x,C;o[16]!==b||o[17]!==u||o[18]!==e.children||o[19]!==S?(C=t=>{e.children&&u!==`manual`&&(u===`click`?(t.stopPropagation(),S(!b)):S(!0))},o[16]=b,o[17]=u,o[18]=e.children,o[19]=S,o[20]=C):C=o[20];let Ee=(0,a.useElementEventListener)(u===`click`?`click`:`pointerenter`,C),w;o[21]!==u||o[22]!==e.children||o[23]!==S?(w=()=>u===`hover`&&e.children?S(!1):null,o[21]=u,o[22]=e.children,o[23]=S,o[24]=w):w=o[24];let De=(0,a.useElementEventListener)(`pointerleave`,w),T;o[25]!==u||o[26]!==e.children||o[27]!==S?(T=()=>{e.children&&u!==`manual`&&S(!0)},o[25]=u,o[26]=e.children,o[27]=S,o[28]=T):T=o[28];let Oe=(0,a.useElementEventListener)(`pointerenter`,T),E;o[29]!==u||o[30]!==e.children||o[31]!==S?(E=()=>u===`hover`&&e.children?S(!1):null,o[29]=u,o[30]=e.children,o[31]=S,o[32]=E):E=o[32];let ke=(0,a.useElementEventListener)(`pointerleave`,E),{saveRef:Ae,ref:D}=(0,a.useConcatElementRef)(Ee,De),{saveRef:je,ref:Me}=(0,a.useConcatElementRef)(me,Oe,ke),O;o[33]!==m||o[34]!==f||o[35]!==D?(O=e=>{D.current&&m?.onPressed(f,D.current,e)},o[33]=m,o[34]=f,o[35]=D,o[36]=O):O=o[36];let[Ne,k]=le.useCommonButtonProps(f,e,O),A;if(o[37]!==be||o[38]!==m||o[39]!==f||o[40]!==e.disabled||o[41]!==e.emphasized||o[42]!==e.selectable||o[43]!==e.selected||o[44]!==k||o[45]!==xe||o[46]!==y||o[47]!==Se){if(A={},A.Button=!0,A.CommonButton=!0,A[be]=!0,A[xe]=!0,A[y]=!0,A[Se]=!0,A.disabled=e.disabled,A.emphasized=e.emphasized,A.selectable=m?.selectable??e.selectable,m?.selectable){let e;o[49]!==m.selected||o[50]!==f||o[51]!==k?(e=m.selected.get(f)??k,o[49]=m.selected,o[50]=f,o[51]=k,o[52]=e):e=o[52],A.selected=e}else!m&&e.selectable&&(A.selected=e.selected??k);o[37]=be,o[38]=m,o[39]=f,o[40]=e.disabled,o[41]=e.emphasized,o[42]=e.selectable,o[43]=e.selected,o[44]=k,o[45]=xe,o[46]=y,o[47]=Se,o[48]=A}else A=o[48];let j=A,M;o[53]!==m?.selectable||o[54]!==m?.selected||o[55]!==c||o[56]!==f||o[57]!==e.selectable||o[58]!==e.selected||o[59]!==k?(M=()=>{let t;return t=e.selectable?typeof c==`function`?c?.((m?.selectable?m?.selected.get(f):e.selected)??k):c:typeof c==`function`?c():c,t},o[53]=m?.selectable,o[54]=m?.selected,o[55]=c,o[56]=f,o[57]=e.selectable,o[58]=e.selected,o[59]=k,o[60]=M):M=o[60],m?.selectable,m?.selected;let N;o[61]===M?N=o[62]:(N=M(),o[61]=M,o[62]=N);let Pe=N,P;o[63]===Pe?P=o[64]:(P=te.convertIconDefinition(Pe),o[63]=Pe,o[64]=P);let F=P,I;o[65]!==m?.selectable||o[66]!==m?.selected||o[67]!==f||o[68]!==s||o[69]!==e.selectable||o[70]!==e.selected||o[71]!==k?(I=()=>{let t;return t=e.selectable?typeof s==`function`?s?.((m?.selectable?m?.selected.get(f):e.selected)??k):s:typeof s==`function`?s():s,t},o[65]=m?.selectable,o[66]=m?.selected,o[67]=f,o[68]=s,o[69]=e.selectable,o[70]=e.selected,o[71]=k,o[72]=I):I=o[72],m?.selectable,m?.selected;let L;o[73]===I?L=o[74]:(L=I(),o[73]=I,o[74]=L);let R=L,z;if(o[75]!==j||o[76]!==F||o[77]!==R||o[78]!==Ne||o[79]!==e){z={...e,...Ne};let t;o[81]!==j||o[82]!==F||o[83]!==R||o[84]!==e.className?(t=(0,r.default)(j,{icon:F,label:R},e.className),o[81]=j,o[82]=F,o[83]=R,o[84]=e.className,o[85]=t):t=o[85],z.className=t,z[`aria-label`]=R,z.role=`button`,delete z.title,o[75]=j,o[76]=F,o[77]=R,o[78]=Ne,o[79]=e,o[80]=z}else z=o[80];let Fe=z,B;o[86]===D?B=o[87]:(B=e=>e.forEach(e=>D.current?.style.setProperty(`--md-comp-button-container-width`,`${e.contentRect.width}px`)),o[86]=D,o[87]=B);let{saveRef:Ie}=(0,a.useResizeObserver)(B),V;o[88]!==b||o[89]!==Me||o[90]!==D||o[91]!==S?(V=e=>{e.target instanceof Node&&b&&(!e.target.parentElement?.parentElement?.classList.contains(`selectable`)||!D.current?.contains(e.target)&&!Me.current?.contains(e.target))&&S(!1)},o[88]=b,o[89]=Me,o[90]=D,o[91]=S,o[92]=V):V=o[92],(0,a.useWindowEventListener)(`click`,V);let H;o[93]===y?H=o[94]:(H=(0,r.default)(`ButtonContainer`,y),o[93]=y,o[94]=H);let U;o[95]===e.disabled?U=o[96]:(U=(0,i.jsx)(re.default,{disabled:e.disabled}),o[95]=e.disabled,o[96]=U);let W;o[97]===e.title?W=o[98]:(W=typeof e.title==`string`?(0,i.jsx)(oe.default,{variant:`plain`,text:e.title}):e.title,o[97]=e.title,o[98]=W);let Le=!e.selectable||j.selected,G;o[99]===F?G=o[100]:(G=(0,i.jsx)(n.default,{value:F,className:`icon`}),o[99]=F,o[100]=G);let K;o[101]===R?K=o[102]:(K=(0,i.jsx)(n.default,{value:R,className:`label`}),o[101]=R,o[102]=K);let q;o[103]!==G||o[104]!==K?(q=(0,i.jsxs)(`div`,{className:`container`,children:[G,K]}),o[103]=G,o[104]=K,o[105]=q):q=o[105];let J;o[106]===F?J=o[107]:(J=(0,i.jsx)(n.default,{static:!0,value:F,className:`icon`}),o[106]=F,o[107]=J);let Y;o[108]===R?Y=o[109]:(Y=(0,i.jsx)(n.default,{static:!0,value:R,className:`label`}),o[108]=R,o[109]=Y);let X;o[110]!==Ie||o[111]!==J||o[112]!==Y?(X=(0,i.jsxs)(`div`,{ref:Ie,className:`container size-ref`,children:[J,Y]}),o[110]=Ie,o[111]=J,o[112]=Y,o[113]=X):X=o[113];let Z;o[114]!==Le||o[115]!==q||o[116]!==X?(Z=(0,i.jsxs)(te.IconProvider,{fill:Le,children:[q,X]}),o[114]=Le,o[115]=q,o[116]=X,o[117]=Z):Z=o[117];let Q;o[118]!==e.as||o[119]!==e.disabled||o[120]!==Fe||o[121]!==U||o[122]!==W||o[123]!==Z?(Q=(0,i.jsxs)(ne.default,{name:`Button`,as:e.as,base:`button`,props:Fe,excludePropsName:fe,disabled:e.disabled,children:[U,W,Z]}),o[118]=e.as,o[119]=e.disabled,o[120]=Fe,o[121]=U,o[122]=W,o[123]=Z,o[124]=Q):Q=o[124];let $;o[125]!==b||o[126]!==_e||o[127]!==e.children||o[128]!==e.density||o[129]!==je?($=e.children&&(0,i.jsxs)(i.Fragment,{children:[(0,i.jsx)(`div`,{className:`menu-hover`}),(0,i.jsx)(ae.default,{root:_e,flip:ve,autoUpdate:!0,placement:`bottom-start`,open:b,children:(0,i.jsx)(ie.default,{ref:je,density:e.density,className:(0,r.default)(`sub-component`,{visible:b}),children:e.children})})]}),o[125]=b,o[126]=_e,o[127]=e.children,o[128]=e.density,o[129]=je,o[130]=$):$=o[130];let Re;return o[131]!==Ae||o[132]!==H||o[133]!==Q||o[134]!==$?(Re=(0,i.jsxs)(`div`,{ref:Ae,className:H,children:[Q,$]}),o[131]=Ae,o[132]=H,o[133]=Q,o[134]=$,o[135]=Re):Re=o[135],Re}exports.CommonButtonNativeProps=o,exports.default=s;
|
|
@@ -0,0 +1,203 @@
|
|
|
1
|
+
import { useTheme as e } from "../../Theme/Theme.js";
|
|
2
|
+
import { useButtonContext as ee } from "../context.js";
|
|
3
|
+
import { IconProvider as te, convertIconDefinition as ne } from "../../Icon/Icon.js";
|
|
4
|
+
import re from "../../misc/Polymorphic.js";
|
|
5
|
+
import ie from "../../misc/StateLayer/index.js";
|
|
6
|
+
import t from "../../misc/Transitionable/index.js";
|
|
7
|
+
import ae from "../../Menu/Menu.js";
|
|
8
|
+
import "../../Menu/index.js";
|
|
9
|
+
import oe from "../../misc/FloatingElement/index.js";
|
|
10
|
+
import se from "../../Tooltip/Tooltip.js";
|
|
11
|
+
import "../../Tooltip/index.js";
|
|
12
|
+
import { getComponentSizeName as ce } from "../../types.js";
|
|
13
|
+
import { useButtonGroupContext as le } from "../group/render.js";
|
|
14
|
+
import { useCommonButtonProps as ue } from "../index.js";
|
|
15
|
+
import { c as de } from "react/compiler-runtime";
|
|
16
|
+
import fe from "classnames";
|
|
17
|
+
import { useId as pe, useState as me } from "react";
|
|
18
|
+
import { Fragment as he, jsx as n, jsxs as r } from "react/jsx-runtime";
|
|
19
|
+
import { useConcatElementRef as ge, useElementEventListener as i, useResizeObserver as _e, useWindowEventListener as ve } from "react-dom-event-hooks";
|
|
20
|
+
//#region lib/components/Button/default/render.tsx
|
|
21
|
+
var a = [
|
|
22
|
+
"color",
|
|
23
|
+
"size",
|
|
24
|
+
"shape",
|
|
25
|
+
"disabled",
|
|
26
|
+
"emphasized",
|
|
27
|
+
"selectable",
|
|
28
|
+
"selected",
|
|
29
|
+
"onSelected"
|
|
30
|
+
], ye = [
|
|
31
|
+
...a,
|
|
32
|
+
"label",
|
|
33
|
+
"icon",
|
|
34
|
+
"menuRef",
|
|
35
|
+
"menuOpenBehavior",
|
|
36
|
+
"menuOpen",
|
|
37
|
+
"onMenuOpen",
|
|
38
|
+
"onMenuClose",
|
|
39
|
+
"tooltip",
|
|
40
|
+
"width"
|
|
41
|
+
];
|
|
42
|
+
function o(a) {
|
|
43
|
+
let o = de(136), { label: s, icon: c, menuOpenBehavior: be, menuRef: xe, menuOpen: l, onMenuOpen: Se, onMenuClose: Ce } = a, u = be === void 0 ? "hover" : be, { popoversContainer: we } = e("IconButton"), d;
|
|
44
|
+
o[0] === Symbol.for("react.memo_cache_sentinel") ? (d = { allowedPlacements: [
|
|
45
|
+
"top-start",
|
|
46
|
+
"top-end",
|
|
47
|
+
"bottom-start",
|
|
48
|
+
"bottom-end"
|
|
49
|
+
] }, o[0] = d) : d = o[0];
|
|
50
|
+
let Te = d, Ee = pe(), f = a.id ?? Ee, p = ee(), m = le(), h;
|
|
51
|
+
o[1] !== p || o[2] !== a.color ? (h = a.color ?? p?.getColor("default") ?? "filled", o[1] = p, o[2] = a.color, o[3] = h) : h = o[3];
|
|
52
|
+
let De = h, Oe;
|
|
53
|
+
o[4] !== p || o[5] !== a.shape ? (Oe = p?.getShape("default") ?? a.shape ?? "round", o[4] = p, o[5] = a.shape, o[6] = Oe) : Oe = o[6];
|
|
54
|
+
let ke = Oe, g;
|
|
55
|
+
o[7] !== p || o[8] !== a.width ? (g = p?.getWidth("default") ?? a.width ?? "default", o[7] = p, o[8] = a.width, o[9] = g) : g = o[9];
|
|
56
|
+
let Ae = `width-${g}`, je = m ? m.size : a.size, _;
|
|
57
|
+
o[10] === je ? _ = o[11] : (_ = ce(je), o[10] = je, o[11] = _);
|
|
58
|
+
let v = _, [Me, Ne] = me(l ?? !1), y = l ?? Me, b;
|
|
59
|
+
o[12] !== l || o[13] !== Ce || o[14] !== Se ? (b = (e) => {
|
|
60
|
+
l === void 0 && Ne(e), e ? Se?.() : Ce?.();
|
|
61
|
+
}, o[12] = l, o[13] = Ce, o[14] = Se, o[15] = b) : b = o[15];
|
|
62
|
+
let x = b, S;
|
|
63
|
+
o[16] !== y || o[17] !== u || o[18] !== a.children || o[19] !== x ? (S = (e) => {
|
|
64
|
+
a.children && u !== "manual" && (u === "click" ? (e.stopPropagation(), x(!y)) : x(!0));
|
|
65
|
+
}, o[16] = y, o[17] = u, o[18] = a.children, o[19] = x, o[20] = S) : S = o[20];
|
|
66
|
+
let Pe = i(u === "click" ? "click" : "pointerenter", S), C;
|
|
67
|
+
o[21] !== u || o[22] !== a.children || o[23] !== x ? (C = () => u === "hover" && a.children ? x(!1) : null, o[21] = u, o[22] = a.children, o[23] = x, o[24] = C) : C = o[24];
|
|
68
|
+
let Fe = i("pointerleave", C), w;
|
|
69
|
+
o[25] !== u || o[26] !== a.children || o[27] !== x ? (w = () => {
|
|
70
|
+
a.children && u !== "manual" && x(!0);
|
|
71
|
+
}, o[25] = u, o[26] = a.children, o[27] = x, o[28] = w) : w = o[28];
|
|
72
|
+
let Ie = i("pointerenter", w), T;
|
|
73
|
+
o[29] !== u || o[30] !== a.children || o[31] !== x ? (T = () => u === "hover" && a.children ? x(!1) : null, o[29] = u, o[30] = a.children, o[31] = x, o[32] = T) : T = o[32];
|
|
74
|
+
let Le = i("pointerleave", T), { saveRef: Re, ref: E } = ge(Pe, Fe), { saveRef: ze, ref: Be } = ge(xe, Ie, Le), D;
|
|
75
|
+
o[33] !== m || o[34] !== f || o[35] !== E ? (D = (e) => {
|
|
76
|
+
E.current && m?.onPressed(f, E.current, e);
|
|
77
|
+
}, o[33] = m, o[34] = f, o[35] = E, o[36] = D) : D = o[36];
|
|
78
|
+
let [Ve, O] = ue(f, a, D), k;
|
|
79
|
+
if (o[37] !== De || o[38] !== m || o[39] !== f || o[40] !== a.disabled || o[41] !== a.emphasized || o[42] !== a.selectable || o[43] !== a.selected || o[44] !== O || o[45] !== ke || o[46] !== v || o[47] !== Ae) {
|
|
80
|
+
if (k = {}, k.Button = !0, k.CommonButton = !0, k[De] = !0, k[ke] = !0, k[v] = !0, k[Ae] = !0, k.disabled = a.disabled, k.emphasized = a.emphasized, k.selectable = m?.selectable ?? a.selectable, m?.selectable) {
|
|
81
|
+
let e;
|
|
82
|
+
o[49] !== m.selected || o[50] !== f || o[51] !== O ? (e = m.selected.get(f) ?? O, o[49] = m.selected, o[50] = f, o[51] = O, o[52] = e) : e = o[52], k.selected = e;
|
|
83
|
+
} else !m && a.selectable && (k.selected = a.selected ?? O);
|
|
84
|
+
o[37] = De, o[38] = m, o[39] = f, o[40] = a.disabled, o[41] = a.emphasized, o[42] = a.selectable, o[43] = a.selected, o[44] = O, o[45] = ke, o[46] = v, o[47] = Ae, o[48] = k;
|
|
85
|
+
} else k = o[48];
|
|
86
|
+
let A = k, j;
|
|
87
|
+
o[53] !== m?.selectable || o[54] !== m?.selected || o[55] !== c || o[56] !== f || o[57] !== a.selectable || o[58] !== a.selected || o[59] !== O ? (j = () => {
|
|
88
|
+
let e;
|
|
89
|
+
return e = a.selectable ? typeof c == "function" ? c?.((m?.selectable ? m?.selected.get(f) : a.selected) ?? O) : c : typeof c == "function" ? c() : c, e;
|
|
90
|
+
}, o[53] = m?.selectable, o[54] = m?.selected, o[55] = c, o[56] = f, o[57] = a.selectable, o[58] = a.selected, o[59] = O, o[60] = j) : j = o[60], m?.selectable, m?.selected;
|
|
91
|
+
let M;
|
|
92
|
+
o[61] === j ? M = o[62] : (M = j(), o[61] = j, o[62] = M);
|
|
93
|
+
let He = M, N;
|
|
94
|
+
o[63] === He ? N = o[64] : (N = ne(He), o[63] = He, o[64] = N);
|
|
95
|
+
let P = N, F;
|
|
96
|
+
o[65] !== m?.selectable || o[66] !== m?.selected || o[67] !== f || o[68] !== s || o[69] !== a.selectable || o[70] !== a.selected || o[71] !== O ? (F = () => {
|
|
97
|
+
let e;
|
|
98
|
+
return e = a.selectable ? typeof s == "function" ? s?.((m?.selectable ? m?.selected.get(f) : a.selected) ?? O) : s : typeof s == "function" ? s() : s, e;
|
|
99
|
+
}, o[65] = m?.selectable, o[66] = m?.selected, o[67] = f, o[68] = s, o[69] = a.selectable, o[70] = a.selected, o[71] = O, o[72] = F) : F = o[72], m?.selectable, m?.selected;
|
|
100
|
+
let I;
|
|
101
|
+
o[73] === F ? I = o[74] : (I = F(), o[73] = F, o[74] = I);
|
|
102
|
+
let L = I, R;
|
|
103
|
+
if (o[75] !== A || o[76] !== P || o[77] !== L || o[78] !== Ve || o[79] !== a) {
|
|
104
|
+
R = {
|
|
105
|
+
...a,
|
|
106
|
+
...Ve
|
|
107
|
+
};
|
|
108
|
+
let e;
|
|
109
|
+
o[81] !== A || o[82] !== P || o[83] !== L || o[84] !== a.className ? (e = fe(A, {
|
|
110
|
+
icon: P,
|
|
111
|
+
label: L
|
|
112
|
+
}, a.className), o[81] = A, o[82] = P, o[83] = L, o[84] = a.className, o[85] = e) : e = o[85], R.className = e, R["aria-label"] = L, R.role = "button", delete R.title, o[75] = A, o[76] = P, o[77] = L, o[78] = Ve, o[79] = a, o[80] = R;
|
|
113
|
+
} else R = o[80];
|
|
114
|
+
let Ue = R, z;
|
|
115
|
+
o[86] === E ? z = o[87] : (z = (e) => e.forEach((e) => E.current?.style.setProperty("--md-comp-button-container-width", `${e.contentRect.width}px`)), o[86] = E, o[87] = z);
|
|
116
|
+
let { saveRef: We } = _e(z), B;
|
|
117
|
+
o[88] !== y || o[89] !== Be || o[90] !== E || o[91] !== x ? (B = (e) => {
|
|
118
|
+
e.target instanceof Node && y && (!e.target.parentElement?.parentElement?.classList.contains("selectable") || !E.current?.contains(e.target) && !Be.current?.contains(e.target)) && x(!1);
|
|
119
|
+
}, o[88] = y, o[89] = Be, o[90] = E, o[91] = x, o[92] = B) : B = o[92], ve("click", B);
|
|
120
|
+
let V;
|
|
121
|
+
o[93] === v ? V = o[94] : (V = fe("ButtonContainer", v), o[93] = v, o[94] = V);
|
|
122
|
+
let H;
|
|
123
|
+
o[95] === a.disabled ? H = o[96] : (H = /* @__PURE__ */ n(ie, { disabled: a.disabled }), o[95] = a.disabled, o[96] = H);
|
|
124
|
+
let U;
|
|
125
|
+
o[97] === a.title ? U = o[98] : (U = typeof a.title == "string" ? /* @__PURE__ */ n(se, {
|
|
126
|
+
variant: "plain",
|
|
127
|
+
text: a.title
|
|
128
|
+
}) : a.title, o[97] = a.title, o[98] = U);
|
|
129
|
+
let Ge = !a.selectable || A.selected, W;
|
|
130
|
+
o[99] === P ? W = o[100] : (W = /* @__PURE__ */ n(t, {
|
|
131
|
+
value: P,
|
|
132
|
+
className: "icon"
|
|
133
|
+
}), o[99] = P, o[100] = W);
|
|
134
|
+
let G;
|
|
135
|
+
o[101] === L ? G = o[102] : (G = /* @__PURE__ */ n(t, {
|
|
136
|
+
value: L,
|
|
137
|
+
className: "label"
|
|
138
|
+
}), o[101] = L, o[102] = G);
|
|
139
|
+
let K;
|
|
140
|
+
o[103] !== W || o[104] !== G ? (K = /* @__PURE__ */ r("div", {
|
|
141
|
+
className: "container",
|
|
142
|
+
children: [W, G]
|
|
143
|
+
}), o[103] = W, o[104] = G, o[105] = K) : K = o[105];
|
|
144
|
+
let q;
|
|
145
|
+
o[106] === P ? q = o[107] : (q = /* @__PURE__ */ n(t, {
|
|
146
|
+
static: !0,
|
|
147
|
+
value: P,
|
|
148
|
+
className: "icon"
|
|
149
|
+
}), o[106] = P, o[107] = q);
|
|
150
|
+
let J;
|
|
151
|
+
o[108] === L ? J = o[109] : (J = /* @__PURE__ */ n(t, {
|
|
152
|
+
static: !0,
|
|
153
|
+
value: L,
|
|
154
|
+
className: "label"
|
|
155
|
+
}), o[108] = L, o[109] = J);
|
|
156
|
+
let Y;
|
|
157
|
+
o[110] !== We || o[111] !== q || o[112] !== J ? (Y = /* @__PURE__ */ r("div", {
|
|
158
|
+
ref: We,
|
|
159
|
+
className: "container size-ref",
|
|
160
|
+
children: [q, J]
|
|
161
|
+
}), o[110] = We, o[111] = q, o[112] = J, o[113] = Y) : Y = o[113];
|
|
162
|
+
let X;
|
|
163
|
+
o[114] !== Ge || o[115] !== K || o[116] !== Y ? (X = /* @__PURE__ */ r(te, {
|
|
164
|
+
fill: Ge,
|
|
165
|
+
children: [K, Y]
|
|
166
|
+
}), o[114] = Ge, o[115] = K, o[116] = Y, o[117] = X) : X = o[117];
|
|
167
|
+
let Z;
|
|
168
|
+
o[118] !== a.as || o[119] !== a.disabled || o[120] !== Ue || o[121] !== H || o[122] !== U || o[123] !== X ? (Z = /* @__PURE__ */ r(re, {
|
|
169
|
+
name: "Button",
|
|
170
|
+
as: a.as,
|
|
171
|
+
base: "button",
|
|
172
|
+
props: Ue,
|
|
173
|
+
excludePropsName: ye,
|
|
174
|
+
disabled: a.disabled,
|
|
175
|
+
children: [
|
|
176
|
+
H,
|
|
177
|
+
U,
|
|
178
|
+
X
|
|
179
|
+
]
|
|
180
|
+
}), o[118] = a.as, o[119] = a.disabled, o[120] = Ue, o[121] = H, o[122] = U, o[123] = X, o[124] = Z) : Z = o[124];
|
|
181
|
+
let Q;
|
|
182
|
+
o[125] !== y || o[126] !== we || o[127] !== a.children || o[128] !== a.density || o[129] !== ze ? (Q = a.children && /* @__PURE__ */ r(he, { children: [/* @__PURE__ */ n("div", { className: "menu-hover" }), /* @__PURE__ */ n(oe, {
|
|
183
|
+
root: we,
|
|
184
|
+
flip: Te,
|
|
185
|
+
autoUpdate: !0,
|
|
186
|
+
placement: "bottom-start",
|
|
187
|
+
open: y,
|
|
188
|
+
children: /* @__PURE__ */ n(ae, {
|
|
189
|
+
ref: ze,
|
|
190
|
+
density: a.density,
|
|
191
|
+
className: fe("sub-component", { visible: y }),
|
|
192
|
+
children: a.children
|
|
193
|
+
})
|
|
194
|
+
})] }), o[125] = y, o[126] = we, o[127] = a.children, o[128] = a.density, o[129] = ze, o[130] = Q) : Q = o[130];
|
|
195
|
+
let $;
|
|
196
|
+
return o[131] !== Re || o[132] !== V || o[133] !== Z || o[134] !== Q ? ($ = /* @__PURE__ */ r("div", {
|
|
197
|
+
ref: Re,
|
|
198
|
+
className: V,
|
|
199
|
+
children: [Z, Q]
|
|
200
|
+
}), o[131] = Re, o[132] = V, o[133] = Z, o[134] = Q, o[135] = $) : $ = o[135], $;
|
|
201
|
+
}
|
|
202
|
+
//#endregion
|
|
203
|
+
export { a as CommonButtonNativeProps, o as default };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
.ButtonContainer{vertical-align:middle;box-sizing:border-box;border:none;justify-content:center;align-items:center;min-width:48px;min-height:48px;padding:0;text-decoration:none;display:inline-flex;position:relative}.ButtonContainer>.menu-hover{width:100%;top:calc(var(--md-comp-button-container-height) + max(0px, (48px - var(--md-comp-button-container-height)) / 2));height:4px;position:absolute}.ButtonContainer>.menu-hover:has(+.Menu.visible){height:4px}.ButtonContainer>.Menu{z-index:1000;top:calc(var(--md-comp-button-container-height) + max(0px, (48px - var(--md-comp-button-container-height)) / 2) + 4px);position:absolute}.ButtonContainer>.Menu>.MenuGroup{width:auto}.CommonButton{border-radius:inherit;vertical-align:middle;box-sizing:border-box;transition:width var(--md-sys-motion-spring-expressive-fast-spatial-duration) var(--md-sys-motion-spring-expressive-fast-spatial-easing), min-width var(--md-sys-motion-spring-expressive-fast-spatial-duration) var(--md-sys-motion-spring-expressive-fast-spatial-easing), height var(--md-sys-motion-spring-expressive-fast-spatial-duration) var(--md-sys-motion-spring-expressive-fast-spatial-easing), min-height var(--md-sys-motion-spring-expressive-fast-spatial-duration) var(--md-sys-motion-spring-expressive-fast-spatial-easing), font var(--md-sys-motion-spring-expressive-fast-spatial-duration) var(--md-sys-motion-spring-expressive-fast-spatial-easing), margin var(--md-sys-motion-spring-expressive-fast-spatial-duration) var(--md-sys-motion-spring-expressive-fast-spatial-easing), padding var(--md-sys-motion-spring-expressive-fast-spatial-duration) var(--md-sys-motion-spring-expressive-fast-spatial-easing), gap var(--md-sys-motion-spring-expressive-fast-spatial-duration) var(--md-sys-motion-spring-expressive-fast-spatial-easing), border-radius var(--md-sys-motion-spring-expressive-fast-spatial-duration) var(--md-sys-motion-spring-expressive-fast-spatial-easing), background-color var(--md-sys-motion-spring-expressive-fast-effects-duration) var(--md-sys-motion-spring-expressive-fast-effects-easing), color var(--md-sys-motion-spring-expressive-fast-effects-duration) var(--md-sys-motion-spring-expressive-fast-effects-easing), box-shadow var(--md-sys-motion-spring-expressive-fast-effects-duration) var(--md-sys-motion-spring-expressive-fast-effects-easing), outline var(--md-sys-motion-spring-expressive-fast-effects-duration) var(--md-sys-motion-spring-expressive-fast-effects-easing), opacity var(--md-sys-motion-spring-expressive-fast-effects-duration) var(--md-sys-motion-spring-expressive-fast-effects-easing);border:none;justify-content:center;align-items:center;padding:0;text-decoration:none;display:inline-flex;position:relative}.CommonButton>.container{justify-content:center;align-items:center;gap:inherit;transition:inherit;display:inline-flex}.CommonButton>.container.size-ref{gap:var(--md-comp-button-gap-space);visibility:hidden;transition:unset;position:absolute}.CommonButton.disabled{cursor:default}.CommonButton:not(.disabled){cursor:pointer}.CommonButton:focus{outline-width:3px}.Button{font-family:var(--md-comp-button-label-text-font);font-weight:var(--md-comp-button-label-text-weight);font-size:var(--md-comp-button-label-text-size);letter-spacing:var(--md-comp-button-label-text-tracking);line-height:var(--md-comp-button-label-text-line-height);font-variation-settings:"wght" var(--md-comp-button-label-text-wght), "GRAD" var(--md-comp-button-label-text-grad), "wdth" var(--md-comp-button-label-text-wdth), "ROND" var(--md-comp-button-label-text-rond), "opsz" var(--md-comp-button-label-text-opsz), "CRSV" var(--md-comp-button-label-text-crsv), "slnt" var(--md-comp-button-label-text-slnt), "FILL" var(--md-comp-button-label-text-fill), "HEXP" var(--md-comp-button-label-text-hexp);--md-comp-icon-color:var(--md-comp-button-icon-color);--md-comp-state-hover-state-layer-opacity:var(--md-comp-button-hovered-state-layer-opacity);--md-comp-state-focused-state-layer-opacity:var(--md-comp-button-focused-state-layer-opacity);--md-comp-state-pressed-state-layer-opacity:var(--md-comp-button-pressed-state-layer-opacity);--md-comp-state-hover-state-layer-color:var(--md-comp-button-hovered-state-layer-color);--md-comp-state-focused-state-layer-color:var(--md-comp-button-focused-state-layer-color);--md-comp-state-pressed-state-layer-color:var(--md-comp-button-pressed-state-layer-color);--md-comp-state-focus-indicator-color:var(--md-comp-button-focus-indicator-color);--md-comp-state-focus-indicator-thickness:var(--md-comp-button-focus-indicator-thickness);--md-comp-state-focus-indicator-outer-offset:var(--md-comp-button-focus-indicator-outline-offset);width:calc(var(--md-comp-button-leading-space) + var(--md-comp-button-container-width) + var(--md-comp-button-trailing-space) + var(--button-width-extra,0px));min-width:calc(var(--md-comp-button-leading-space) + var(--md-comp-button-container-width) + var(--md-comp-button-trailing-space) + var(--button-width-extra,0px));height:var(--md-comp-button-container-height);min-height:var(--md-comp-button-container-height);gap:var(--md-comp-button-gap-space,0px);padding-left:var(--md-comp-button-leading-space);padding-right:var(--md-comp-button-trailing-space);background-color:var(--md-comp-button-container-color);color:var(--md-comp-button-label-text-color);box-shadow:var(--md-comp-button-container-elevation)}.Button,.Button:focus:not(:focus-visible){outline:solid var(--md-comp-button-outline-width,0px) rgba(from var(--md-comp-button-outline-color,transparent) r g b/var(--md-comp-button-outline-opacity,0));outline-offset:calc(-1 * var(--md-comp-button-outline-width,0px))}.Button.icon.label{--md-comp-button-gap-space:var(--md-comp-button-icon-label-space)}.Button>.container>.icon{--md-comp-icon-size:var(--md-comp-button-icon-size)}.Button.selectable:not(.disabled){--md-comp-icon-color:var(--md-comp-button-unselected-icon-color);--md-comp-state-hover-state-layer-color:var(--md-comp-button-unselected-hovered-state-layer-color);--md-comp-state-focused-state-layer-color:var(--md-comp-button-unselected-focused-state-layer-color);--md-comp-state-pressed-state-layer-color:var(--md-comp-button-unselected-pressed-state-layer-color);--md-comp-button-container-color:var(--md-comp-button-unselected-container-color);--md-comp-button-container-opacity:var(--md-comp-button-unselected-container-opacity);--md-comp-button-label-text-color:var(--md-comp-button-unselected-label-text-color)}.Button.selectable:not(.disabled).selected{--md-comp-icon-color:var(--md-comp-button-selected-icon-color);--md-comp-state-hover-state-layer-color:var(--md-comp-button-selected-hovered-state-layer-color);--md-comp-state-focused-state-layer-color:var(--md-comp-button-selected-focused-state-layer-color);--md-comp-state-pressed-state-layer-color:var(--md-comp-button-selected-pressed-state-layer-color);--md-comp-button-container-color:var(--md-comp-button-selected-container-color);--md-comp-button-container-opacity:var(--md-comp-button-selected-container-opacity);--md-comp-button-label-text-color:var(--md-comp-button-selected-label-text-color);outline-offset:0px;outline:0 solid #0000}.Button.disabled{--md-comp-icon-color:var(--md-comp-button-disabled-icon-color,var(--md-comp-button-icon-color));--md-comp-icon-opacity:var(--md-comp-button-disabled-icon-opacity,var(--md-comp-button-icon-opacity,1));background-color:rgba(from var(--md-comp-button-disabled-container-color,var(--md-comp-button-container-color)) r g b/var(--md-comp-button-disabled-container-opacity,var(--md-comp-button-container-opacity,1)));color:rgba(from var(--md-comp-button-disabled-label-text-color,var(--md-comp-button-label-text-color)) r g b/var(--md-comp-button-disabled-label-text-opacity,var(--md-comp-button-label-text-opacity,1)));box-shadow:var(--md-comp-button-disabled-container-elevation,var(--md-comp-button-container-elevation));outline:solid var(--md-comp-button-disabled-outline-width,var(--md-comp-button-outline-width,0px)) rgba(from var(--md-comp-button-disabled-outline-color,var(--md-comp-button-outline-color,transparent)) r g b/var(--md-comp-button-disabled-outline-opacity,var(--md-comp-button-outline-opacity,0)));outline-offset:calc(-1 * var(--md-comp-button-disabled-outline-width,var(--md-comp-button-outline-width,0px)));cursor:default}.Button:hover:not(.disabled,:focus-visible,:active,.dragged){--md-comp-icon-color:var(--md-comp-button-hovered-icon-color,var(--md-comp-button-icon-color));--md-comp-icon-opacity:var(--md-comp-button-hovered-icon-opacity,var(--md-comp-button-icon-opacity,1));background-color:rgba(from var(--md-comp-button-hovered-container-color,var(--md-comp-button-container-color)) r g b/var(--md-comp-button-hovered-container-opacity,var(--md-comp-button-container-opacity,1)));color:rgba(from var(--md-comp-button-hovered-label-text-color,var(--md-comp-button-label-text-color)) r g b/var(--md-comp-button-hovered-label-text-opacity,var(--md-comp-button-label-text-opacity,1)));box-shadow:var(--md-comp-button-hovered-container-elevation,var(--md-comp-button-container-elevation));outline:solid var(--md-comp-button-hovered-outline-width,var(--md-comp-button-outline-width,0px)) rgba(from var(--md-comp-button-hovered-outline-color,var(--md-comp-button-outline-color,transparent)) r g b/var(--md-comp-button-hovered-outline-opacity,var(--md-comp-button-outline-opacity,0)));outline-offset:calc(-1 * var(--md-comp-button-hovered-outline-width,var(--md-comp-button-outline-width,0px)))}.Button:hover:not(.disabled,:focus-visible,:active,.dragged).selectable:not(.disabled){--md-comp-icon-color:var(--md-comp-button-unselected-hovered-icon-color,var(--md-comp-button-icon-color));--md-comp-icon-opacity:var(--md-comp-button-unselected-hovered-icon-opacity,var(--md-comp-button-icon-opacity,1));color:rgba(from var(--md-comp-button-unselected-hovered-label-text-color,var(--md-comp-button-label-text-color)) r g b/var(--md-comp-button-unselected-hovered-label-text-opacity,var(--md-comp-button-label-text-opacity,1)))}.Button:hover:not(.disabled,:focus-visible,:active,.dragged).selectable:not(.disabled).selected{--md-comp-icon-color:var(--md-comp-button-selected-hovered-icon-color,var(--md-comp-button-icon-color));--md-comp-icon-opacity:var(--md-comp-button-selected-hovered-icon-opacity,var(--md-comp-button-icon-opacity,1));color:rgba(from var(--md-comp-button-selected-hovered-label-text-color,var(--md-comp-button-label-text-color)) r g b/var(--md-comp-button-selected-hovered-label-text-opacity,var(--md-comp-button-label-text-opacity,1)))}.Button:focus-visible:not(.disabled,:active,.dragged){--md-comp-icon-color:var(--md-comp-button-focused-icon-color,var(--md-comp-button-icon-color));--md-comp-icon-opacity:var(--md-comp-button-focused-icon-opacity,var(--md-comp-button-icon-opacity,1));background-color:rgba(from var(--md-comp-button-focused-container-color,var(--md-comp-button-container-color)) r g b/var(--md-comp-button-focused-container-opacity,var(--md-comp-button-container-opacity,1)));color:rgba(from var(--md-comp-button-focused-label-text-color,var(--md-comp-button-label-text-color)) r g b/var(--md-comp-button-focused-label-text-opacity,var(--md-comp-button-label-text-opacity,1)));box-shadow:var(--md-comp-button-focused-container-elevation,var(--md-comp-button-container-elevation));outline:solid var(--md-comp-button-focused-outline-width,var(--md-comp-button-outline-width,0px)) rgba(from var(--md-comp-button-focused-outline-color,var(--md-comp-button-outline-color,transparent)) r g b/var(--md-comp-button-focused-outline-opacity,var(--md-comp-button-outline-opacity,0)));outline-offset:calc(-1 * var(--md-comp-button-focused-outline-width,var(--md-comp-button-outline-width,0px)))}.Button:focus-visible:not(.disabled,:active,.dragged).selectable:not(.disabled){--md-comp-icon-color:var(--md-comp-button-unselected-focused-icon-color,var(--md-comp-button-icon-color));--md-comp-icon-opacity:var(--md-comp-button-unselected-focused-icon-opacity,var(--md-comp-button-icon-opacity,1));color:rgba(from var(--md-comp-button-unselected-focused-label-text-color,var(--md-comp-button-label-text-color)) r g b/var(--md-comp-button-unselected-focused-label-text-opacity,var(--md-comp-button-label-text-opacity,1)))}.Button:focus-visible:not(.disabled,:active,.dragged).selectable:not(.disabled).selected{--md-comp-icon-color:var(--md-comp-button-selected-focused-icon-color,var(--md-comp-button-icon-color));--md-comp-icon-opacity:var(--md-comp-button-selected-focused-icon-opacity,var(--md-comp-button-icon-opacity,1));color:rgba(from var(--md-comp-button-selected-focused-label-text-color,var(--md-comp-button-label-text-color)) r g b/var(--md-comp-button-selected-focused-label-text-opacity,var(--md-comp-button-label-text-opacity,1)))}.Button:active:not(.disabled,.dragged){--md-comp-icon-color:var(--md-comp-button-pressed-icon-color,var(--md-comp-button-icon-color));--md-comp-icon-opacity:var(--md-comp-button-pressed-icon-opacity,var(--md-comp-button-icon-opacity,1));background-color:rgba(from var(--md-comp-button-pressed-container-color,var(--md-comp-button-container-color)) r g b/var(--md-comp-button-pressed-container-opacity,var(--md-comp-button-container-opacity,1)));color:rgba(from var(--md-comp-button-pressed-label-text-color,var(--md-comp-button-label-text-color)) r g b/var(--md-comp-button-pressed-label-text-opacity,var(--md-comp-button-label-text-opacity,1)));box-shadow:var(--md-comp-button-pressed-container-elevation,var(--md-comp-button-container-elevation));outline:solid var(--md-comp-button-pressed-outline-width,var(--md-comp-button-outline-width,0px)) rgba(from var(--md-comp-button-pressed-outline-color,var(--md-comp-button-outline-color,transparent)) r g b/var(--md-comp-button-pressed-outline-opacity,var(--md-comp-button-outline-opacity,0)));outline-offset:calc(-1 * var(--md-comp-button-pressed-outline-width,var(--md-comp-button-outline-width,0px)))}.Button:active:not(.disabled,.dragged).selectable:not(.disabled){--md-comp-icon-color:var(--md-comp-button-unselected-pressed-icon-color,var(--md-comp-button-icon-color));--md-comp-icon-opacity:var(--md-comp-button-unselected-pressed-icon-opacity,var(--md-comp-button-icon-opacity,1));color:rgba(from var(--md-comp-button-unselected-pressed-label-text-color,var(--md-comp-button-label-text-color)) r g b/var(--md-comp-button-unselected-pressed-label-text-opacity,var(--md-comp-button-label-text-opacity,1)))}.Button:active:not(.disabled,.dragged).selectable:not(.disabled).selected{--md-comp-icon-color:var(--md-comp-button-selected-pressed-icon-color,var(--md-comp-button-icon-color));--md-comp-icon-opacity:var(--md-comp-button-selected-pressed-icon-opacity,var(--md-comp-button-icon-opacity,1));color:rgba(from var(--md-comp-button-selected-pressed-label-text-color,var(--md-comp-button-label-text-color)) r g b/var(--md-comp-button-selected-pressed-label-text-opacity,var(--md-comp-button-label-text-opacity,1)))}.Button.elevated{--md-comp-button-container-color:var(--md-comp-button-elevated-container-color);--md-comp-button-icon-color:var(--md-comp-button-elevated-icon-color);--md-comp-button-label-text-color:var(--md-comp-button-elevated-label-text-color);--md-comp-button-container-elevation:var(--md-comp-button-elevated-container-elevation);--md-comp-button-hovered-state-layer-opacity:var(--md-comp-button-elevated-hovered-state-layer-opacity);--md-comp-button-hovered-state-layer-color:var(--md-comp-button-elevated-hovered-state-layer-color);--md-comp-button-hovered-label-text-color:var(--md-comp-button-elevated-hovered-label-text-color);--md-comp-button-hovered-icon-color:var(--md-comp-button-elevated-hovered-icon-color);--md-comp-button-focused-state-layer-opacity:var(--md-comp-button-elevated-focused-state-layer-opacity);--md-comp-button-focused-state-layer-color:var(--md-comp-button-elevated-focused-state-layer-color);--md-comp-button-focused-label-text-color:var(--md-comp-button-elevated-focused-label-text-color);--md-comp-button-focused-icon-color:var(--md-comp-button-elevated-focused-icon-color);--md-comp-button-pressed-state-layer-opacity:var(--md-comp-button-elevated-pressed-state-layer-opacity);--md-comp-button-pressed-state-layer-color:var(--md-comp-button-elevated-pressed-state-layer-color);--md-comp-button-pressed-label-text-color:var(--md-comp-button-elevated-pressed-label-text-color);--md-comp-button-pressed-icon-color:var(--md-comp-button-elevated-pressed-icon-color);--md-comp-button-unselected-container-color:var(--md-comp-button-elevated-unselected-container-color);--md-comp-button-unselected-icon-color:var(--md-comp-button-elevated-unselected-icon-color);--md-comp-button-unselected-label-text-color:var(--md-comp-button-elevated-unselected-label-text-color);--md-comp-button-unselected-hovered-state-layer-color:var(--md-comp-button-elevated-unselected-hovered-state-layer-color);--md-comp-button-unselected-hovered-label-text-color:var(--md-comp-button-elevated-unselected-hovered-label-text-color);--md-comp-button-unselected-hovered-icon-color:var(--md-comp-button-elevated-unselected-hovered-icon-color);--md-comp-button-unselected-focused-state-layer-color:var(--md-comp-button-elevated-unselected-focused-state-layer-color);--md-comp-button-unselected-focused-label-text-color:var(--md-comp-button-elevated-unselected-focused-label-text-color);--md-comp-button-unselected-focused-icon-color:var(--md-comp-button-elevated-unselected-focused-icon-color);--md-comp-button-unselected-pressed-state-layer-color:var(--md-comp-button-elevated-unselected-pressed-state-layer-color);--md-comp-button-unselected-pressed-label-text-color:var(--md-comp-button-elevated-unselected-pressed-label-text-color);--md-comp-button-unselected-pressed-icon-color:var(--md-comp-button-elevated-unselected-pressed-icon-color);--md-comp-button-selected-container-color:var(--md-comp-button-elevated-selected-container-color);--md-comp-button-selected-icon-color:var(--md-comp-button-elevated-selected-icon-color);--md-comp-button-selected-label-text-color:var(--md-comp-button-elevated-selected-label-text-color);--md-comp-button-selected-hovered-state-layer-color:var(--md-comp-button-elevated-selected-hovered-state-layer-color);--md-comp-button-selected-hovered-label-text-color:var(--md-comp-button-elevated-selected-hovered-label-text-color);--md-comp-button-selected-hovered-icon-color:var(--md-comp-button-elevated-selected-hovered-icon-color);--md-comp-button-selected-focused-state-layer-color:var(--md-comp-button-elevated-selected-focused-state-layer-color);--md-comp-button-selected-focused-label-text-color:var(--md-comp-button-elevated-selected-focused-label-text-color);--md-comp-button-selected-focused-icon-color:var(--md-comp-button-elevated-selected-focused-icon-color);--md-comp-button-selected-pressed-state-layer-color:var(--md-comp-button-elevated-selected-pressed-state-layer-color);--md-comp-button-selected-pressed-label-text-color:var(--md-comp-button-elevated-selected-pressed-label-text-color);--md-comp-button-selected-pressed-icon-color:var(--md-comp-button-elevated-selected-pressed-icon-color);--md-comp-button-disabled-container-color:var(--md-comp-button-elevated-disabled-container-color);--md-comp-button-disabled-container-opacity:var(--md-comp-button-elevated-disabled-container-opacity);--md-comp-button-disabled-icon-color:var(--md-comp-button-elevated-disabled-icon-color);--md-comp-button-disabled-icon-opacity:var(--md-comp-button-elevated-disabled-icon-opacity);--md-comp-button-disabled-label-text-color:var(--md-comp-button-elevated-disabled-label-text-color);--md-comp-button-disabled-label-text-opacity:var(--md-comp-button-elevated-disabled-label-text-opacity);--md-comp-button-disabled-container-elevation:var(--md-comp-button-elevated-disabled-container-elevation)}.Button.filled{--md-comp-button-container-color:var(--md-comp-button-filled-container-color);--md-comp-button-icon-color:var(--md-comp-button-filled-icon-color);--md-comp-button-label-text-color:var(--md-comp-button-filled-label-text-color);--md-comp-button-container-elevation:var(--md-comp-button-filled-container-elevation);--md-comp-button-hovered-state-layer-opacity:var(--md-comp-button-filled-hovered-state-layer-opacity);--md-comp-button-hovered-state-layer-color:var(--md-comp-button-filled-hovered-state-layer-color);--md-comp-button-hovered-label-text-color:var(--md-comp-button-filled-hovered-label-text-color);--md-comp-button-hovered-icon-color:var(--md-comp-button-filled-hovered-icon-color);--md-comp-button-focused-state-layer-opacity:var(--md-comp-button-filled-focused-state-layer-opacity);--md-comp-button-focused-state-layer-color:var(--md-comp-button-filled-focused-state-layer-color);--md-comp-button-focused-label-text-color:var(--md-comp-button-filled-focused-label-text-color);--md-comp-button-focused-icon-color:var(--md-comp-button-filled-focused-icon-color);--md-comp-button-pressed-state-layer-opacity:var(--md-comp-button-filled-pressed-state-layer-opacity);--md-comp-button-pressed-state-layer-color:var(--md-comp-button-filled-pressed-state-layer-color);--md-comp-button-pressed-label-text-color:var(--md-comp-button-filled-pressed-label-text-color);--md-comp-button-pressed-icon-color:var(--md-comp-button-filled-pressed-icon-color);--md-comp-button-unselected-container-color:var(--md-comp-button-filled-unselected-container-color);--md-comp-button-unselected-icon-color:var(--md-comp-button-filled-unselected-icon-color);--md-comp-button-unselected-label-text-color:var(--md-comp-button-filled-unselected-label-text-color);--md-comp-button-unselected-hovered-state-layer-color:var(--md-comp-button-filled-unselected-hovered-state-layer-color);--md-comp-button-unselected-hovered-label-text-color:var(--md-comp-button-filled-unselected-hovered-label-text-color);--md-comp-button-unselected-hovered-icon-color:var(--md-comp-button-filled-unselected-hovered-icon-color);--md-comp-button-unselected-focused-state-layer-color:var(--md-comp-button-filled-unselected-focused-state-layer-color);--md-comp-button-unselected-focused-label-text-color:var(--md-comp-button-filled-unselected-focused-label-text-color);--md-comp-button-unselected-focused-icon-color:var(--md-comp-button-filled-unselected-focused-icon-color);--md-comp-button-unselected-pressed-state-layer-color:var(--md-comp-button-filled-unselected-pressed-state-layer-color);--md-comp-button-unselected-pressed-label-text-color:var(--md-comp-button-filled-unselected-pressed-label-text-color);--md-comp-button-unselected-pressed-icon-color:var(--md-comp-button-filled-unselected-pressed-icon-color);--md-comp-button-selected-container-color:var(--md-comp-button-filled-selected-container-color);--md-comp-button-selected-icon-color:var(--md-comp-button-filled-selected-icon-color);--md-comp-button-selected-label-text-color:var(--md-comp-button-filled-selected-label-text-color);--md-comp-button-selected-hovered-state-layer-color:var(--md-comp-button-filled-selected-hovered-state-layer-color);--md-comp-button-selected-hovered-label-text-color:var(--md-comp-button-filled-selected-hovered-label-text-color);--md-comp-button-selected-hovered-icon-color:var(--md-comp-button-filled-selected-hovered-icon-color);--md-comp-button-selected-focused-state-layer-color:var(--md-comp-button-filled-selected-focused-state-layer-color);--md-comp-button-selected-focused-label-text-color:var(--md-comp-button-filled-selected-focused-label-text-color);--md-comp-button-selected-focused-icon-color:var(--md-comp-button-filled-selected-focused-icon-color);--md-comp-button-selected-pressed-state-layer-color:var(--md-comp-button-filled-selected-pressed-state-layer-color);--md-comp-button-selected-pressed-label-text-color:var(--md-comp-button-filled-selected-pressed-label-text-color);--md-comp-button-selected-pressed-icon-color:var(--md-comp-button-filled-selected-pressed-icon-color);--md-comp-button-disabled-container-color:var(--md-comp-button-filled-disabled-container-color);--md-comp-button-disabled-container-opacity:var(--md-comp-button-filled-disabled-container-opacity);--md-comp-button-disabled-icon-color:var(--md-comp-button-filled-disabled-icon-color);--md-comp-button-disabled-icon-opacity:var(--md-comp-button-filled-disabled-icon-opacity);--md-comp-button-disabled-label-text-color:var(--md-comp-button-filled-disabled-label-text-color);--md-comp-button-disabled-label-text-opacity:var(--md-comp-button-filled-disabled-label-text-opacity);--md-comp-button-disabled-container-elevation:var(--md-comp-button-filled-disabled-container-elevation)}.Button.tonal{--md-comp-button-container-color:var(--md-comp-button-tonal-container-color);--md-comp-button-icon-color:var(--md-comp-button-tonal-icon-color);--md-comp-button-label-text-color:var(--md-comp-button-tonal-label-text-color);--md-comp-button-container-elevation:var(--md-comp-button-tonal-container-elevation);--md-comp-button-hovered-state-layer-opacity:var(--md-comp-button-tonal-hovered-state-layer-opacity);--md-comp-button-hovered-state-layer-color:var(--md-comp-button-tonal-hovered-state-layer-color);--md-comp-button-hovered-label-text-color:var(--md-comp-button-tonal-hovered-label-text-color);--md-comp-button-hovered-icon-color:var(--md-comp-button-tonal-hovered-icon-color);--md-comp-button-focused-state-layer-opacity:var(--md-comp-button-tonal-focused-state-layer-opacity);--md-comp-button-focused-state-layer-color:var(--md-comp-button-tonal-focused-state-layer-color);--md-comp-button-focused-label-text-color:var(--md-comp-button-tonal-focused-label-text-color);--md-comp-button-focused-icon-color:var(--md-comp-button-tonal-focused-icon-color);--md-comp-button-pressed-state-layer-opacity:var(--md-comp-button-tonal-pressed-state-layer-opacity);--md-comp-button-pressed-state-layer-color:var(--md-comp-button-tonal-pressed-state-layer-color);--md-comp-button-pressed-label-text-color:var(--md-comp-button-tonal-pressed-label-text-color);--md-comp-button-pressed-icon-color:var(--md-comp-button-tonal-pressed-icon-color);--md-comp-button-unselected-container-color:var(--md-comp-button-tonal-unselected-container-color);--md-comp-button-unselected-icon-color:var(--md-comp-button-tonal-unselected-icon-color);--md-comp-button-unselected-label-text-color:var(--md-comp-button-tonal-unselected-label-text-color);--md-comp-button-unselected-hovered-state-layer-color:var(--md-comp-button-tonal-unselected-hovered-state-layer-color);--md-comp-button-unselected-hovered-label-text-color:var(--md-comp-button-tonal-unselected-hovered-label-text-color);--md-comp-button-unselected-hovered-icon-color:var(--md-comp-button-tonal-unselected-hovered-icon-color);--md-comp-button-unselected-focused-state-layer-color:var(--md-comp-button-tonal-unselected-focused-state-layer-color);--md-comp-button-unselected-focused-label-text-color:var(--md-comp-button-tonal-unselected-focused-label-text-color);--md-comp-button-unselected-focused-icon-color:var(--md-comp-button-tonal-unselected-focused-icon-color);--md-comp-button-unselected-pressed-state-layer-color:var(--md-comp-button-tonal-unselected-pressed-state-layer-color);--md-comp-button-unselected-pressed-label-text-color:var(--md-comp-button-tonal-unselected-pressed-label-text-color);--md-comp-button-unselected-pressed-icon-color:var(--md-comp-button-tonal-unselected-pressed-icon-color);--md-comp-button-selected-container-color:var(--md-comp-button-tonal-selected-container-color);--md-comp-button-selected-icon-color:var(--md-comp-button-tonal-selected-icon-color);--md-comp-button-selected-label-text-color:var(--md-comp-button-tonal-selected-label-text-color);--md-comp-button-selected-hovered-state-layer-color:var(--md-comp-button-tonal-selected-hovered-state-layer-color);--md-comp-button-selected-hovered-label-text-color:var(--md-comp-button-tonal-selected-hovered-label-text-color);--md-comp-button-selected-hovered-icon-color:var(--md-comp-button-tonal-selected-hovered-icon-color);--md-comp-button-selected-focused-state-layer-color:var(--md-comp-button-tonal-selected-focused-state-layer-color);--md-comp-button-selected-focused-label-text-color:var(--md-comp-button-tonal-selected-focused-label-text-color);--md-comp-button-selected-focused-icon-color:var(--md-comp-button-tonal-selected-focused-icon-color);--md-comp-button-selected-pressed-state-layer-color:var(--md-comp-button-tonal-selected-pressed-state-layer-color);--md-comp-button-selected-pressed-label-text-color:var(--md-comp-button-tonal-selected-pressed-label-text-color);--md-comp-button-selected-pressed-icon-color:var(--md-comp-button-tonal-selected-pressed-icon-color);--md-comp-button-disabled-container-color:var(--md-comp-button-tonal-disabled-container-color);--md-comp-button-disabled-container-opacity:var(--md-comp-button-tonal-disabled-container-opacity);--md-comp-button-disabled-icon-color:var(--md-comp-button-tonal-disabled-icon-color);--md-comp-button-disabled-icon-opacity:var(--md-comp-button-tonal-disabled-icon-opacity);--md-comp-button-disabled-label-text-color:var(--md-comp-button-tonal-disabled-label-text-color);--md-comp-button-disabled-label-text-opacity:var(--md-comp-button-tonal-disabled-label-text-opacity);--md-comp-button-disabled-container-elevation:var(--md-comp-button-tonal-disabled-container-elevation)}.Button.tertiary{--md-comp-button-container-color:var(--md-comp-button-tertiary-container-color);--md-comp-button-icon-color:var(--md-comp-button-tertiary-icon-color);--md-comp-button-label-text-color:var(--md-comp-button-tertiary-label-text-color);--md-comp-button-container-elevation:var(--md-comp-button-tertiary-container-elevation);--md-comp-button-hovered-state-layer-opacity:var(--md-comp-button-tertiary-hovered-state-layer-opacity);--md-comp-button-hovered-state-layer-color:var(--md-comp-button-tertiary-hovered-state-layer-color);--md-comp-button-hovered-label-text-color:var(--md-comp-button-tertiary-hovered-label-text-color);--md-comp-button-hovered-icon-color:var(--md-comp-button-tertiary-hovered-icon-color);--md-comp-button-focused-state-layer-opacity:var(--md-comp-button-tertiary-focused-state-layer-opacity);--md-comp-button-focused-state-layer-color:var(--md-comp-button-tertiary-focused-state-layer-color);--md-comp-button-focused-label-text-color:var(--md-comp-button-tertiary-focused-label-text-color);--md-comp-button-focused-icon-color:var(--md-comp-button-tertiary-focused-icon-color);--md-comp-button-pressed-state-layer-opacity:var(--md-comp-button-tertiary-pressed-state-layer-opacity);--md-comp-button-pressed-state-layer-color:var(--md-comp-button-tertiary-pressed-state-layer-color);--md-comp-button-pressed-label-text-color:var(--md-comp-button-tertiary-pressed-label-text-color);--md-comp-button-pressed-icon-color:var(--md-comp-button-tertiary-pressed-icon-color);--md-comp-button-unselected-container-color:var(--md-comp-button-tertiary-unselected-container-color);--md-comp-button-unselected-icon-color:var(--md-comp-button-tertiary-unselected-icon-color);--md-comp-button-unselected-label-text-color:var(--md-comp-button-tertiary-unselected-label-text-color);--md-comp-button-unselected-hovered-state-layer-color:var(--md-comp-button-tertiary-unselected-hovered-state-layer-color);--md-comp-button-unselected-hovered-label-text-color:var(--md-comp-button-tertiary-unselected-hovered-label-text-color);--md-comp-button-unselected-hovered-icon-color:var(--md-comp-button-tertiary-unselected-hovered-icon-color);--md-comp-button-unselected-focused-state-layer-color:var(--md-comp-button-tertiary-unselected-focused-state-layer-color);--md-comp-button-unselected-focused-label-text-color:var(--md-comp-button-tertiary-unselected-focused-label-text-color);--md-comp-button-unselected-focused-icon-color:var(--md-comp-button-tertiary-unselected-focused-icon-color);--md-comp-button-unselected-pressed-state-layer-color:var(--md-comp-button-tertiary-unselected-pressed-state-layer-color);--md-comp-button-unselected-pressed-label-text-color:var(--md-comp-button-tertiary-unselected-pressed-label-text-color);--md-comp-button-unselected-pressed-icon-color:var(--md-comp-button-tertiary-unselected-pressed-icon-color);--md-comp-button-selected-container-color:var(--md-comp-button-tertiary-selected-container-color);--md-comp-button-selected-icon-color:var(--md-comp-button-tertiary-selected-icon-color);--md-comp-button-selected-label-text-color:var(--md-comp-button-tertiary-selected-label-text-color);--md-comp-button-selected-hovered-state-layer-color:var(--md-comp-button-tertiary-selected-hovered-state-layer-color);--md-comp-button-selected-hovered-label-text-color:var(--md-comp-button-tertiary-selected-hovered-label-text-color);--md-comp-button-selected-hovered-icon-color:var(--md-comp-button-tertiary-selected-hovered-icon-color);--md-comp-button-selected-focused-state-layer-color:var(--md-comp-button-tertiary-selected-focused-state-layer-color);--md-comp-button-selected-focused-label-text-color:var(--md-comp-button-tertiary-selected-focused-label-text-color);--md-comp-button-selected-focused-icon-color:var(--md-comp-button-tertiary-selected-focused-icon-color);--md-comp-button-selected-pressed-state-layer-color:var(--md-comp-button-tertiary-selected-pressed-state-layer-color);--md-comp-button-selected-pressed-label-text-color:var(--md-comp-button-tertiary-selected-pressed-label-text-color);--md-comp-button-selected-pressed-icon-color:var(--md-comp-button-tertiary-selected-pressed-icon-color);--md-comp-button-disabled-container-color:var(--md-comp-button-tertiary-disabled-container-color);--md-comp-button-disabled-container-opacity:var(--md-comp-button-tertiary-disabled-container-opacity);--md-comp-button-disabled-icon-color:var(--md-comp-button-tertiary-disabled-icon-color);--md-comp-button-disabled-icon-opacity:var(--md-comp-button-tertiary-disabled-icon-opacity);--md-comp-button-disabled-label-text-color:var(--md-comp-button-tertiary-disabled-label-text-color);--md-comp-button-disabled-label-text-opacity:var(--md-comp-button-tertiary-disabled-label-text-opacity);--md-comp-button-disabled-container-elevation:var(--md-comp-button-tertiary-disabled-container-elevation)}.Button.success{--md-comp-button-container-color:var(--md-comp-button-success-container-color);--md-comp-button-icon-color:var(--md-comp-button-success-icon-color);--md-comp-button-label-text-color:var(--md-comp-button-success-label-text-color);--md-comp-button-container-elevation:var(--md-comp-button-success-container-elevation);--md-comp-button-hovered-state-layer-opacity:var(--md-comp-button-success-hovered-state-layer-opacity);--md-comp-button-hovered-state-layer-color:var(--md-comp-button-success-hovered-state-layer-color);--md-comp-button-hovered-label-text-color:var(--md-comp-button-success-hovered-label-text-color);--md-comp-button-hovered-icon-color:var(--md-comp-button-success-hovered-icon-color);--md-comp-button-focused-state-layer-opacity:var(--md-comp-button-success-focused-state-layer-opacity);--md-comp-button-focused-state-layer-color:var(--md-comp-button-success-focused-state-layer-color);--md-comp-button-focused-label-text-color:var(--md-comp-button-success-focused-label-text-color);--md-comp-button-focused-icon-color:var(--md-comp-button-success-focused-icon-color);--md-comp-button-pressed-state-layer-opacity:var(--md-comp-button-success-pressed-state-layer-opacity);--md-comp-button-pressed-state-layer-color:var(--md-comp-button-success-pressed-state-layer-color);--md-comp-button-pressed-label-text-color:var(--md-comp-button-success-pressed-label-text-color);--md-comp-button-pressed-icon-color:var(--md-comp-button-success-pressed-icon-color);--md-comp-button-unselected-container-color:var(--md-comp-button-success-unselected-container-color);--md-comp-button-unselected-icon-color:var(--md-comp-button-success-unselected-icon-color);--md-comp-button-unselected-label-text-color:var(--md-comp-button-success-unselected-label-text-color);--md-comp-button-unselected-hovered-state-layer-color:var(--md-comp-button-success-unselected-hovered-state-layer-color);--md-comp-button-unselected-hovered-label-text-color:var(--md-comp-button-success-unselected-hovered-label-text-color);--md-comp-button-unselected-hovered-icon-color:var(--md-comp-button-success-unselected-hovered-icon-color);--md-comp-button-unselected-focused-state-layer-color:var(--md-comp-button-success-unselected-focused-state-layer-color);--md-comp-button-unselected-focused-label-text-color:var(--md-comp-button-success-unselected-focused-label-text-color);--md-comp-button-unselected-focused-icon-color:var(--md-comp-button-success-unselected-focused-icon-color);--md-comp-button-unselected-pressed-state-layer-color:var(--md-comp-button-success-unselected-pressed-state-layer-color);--md-comp-button-unselected-pressed-label-text-color:var(--md-comp-button-success-unselected-pressed-label-text-color);--md-comp-button-unselected-pressed-icon-color:var(--md-comp-button-success-unselected-pressed-icon-color);--md-comp-button-selected-container-color:var(--md-comp-button-success-selected-container-color);--md-comp-button-selected-icon-color:var(--md-comp-button-success-selected-icon-color);--md-comp-button-selected-label-text-color:var(--md-comp-button-success-selected-label-text-color);--md-comp-button-selected-hovered-state-layer-color:var(--md-comp-button-success-selected-hovered-state-layer-color);--md-comp-button-selected-hovered-label-text-color:var(--md-comp-button-success-selected-hovered-label-text-color);--md-comp-button-selected-hovered-icon-color:var(--md-comp-button-success-selected-hovered-icon-color);--md-comp-button-selected-focused-state-layer-color:var(--md-comp-button-success-selected-focused-state-layer-color);--md-comp-button-selected-focused-label-text-color:var(--md-comp-button-success-selected-focused-label-text-color);--md-comp-button-selected-focused-icon-color:var(--md-comp-button-success-selected-focused-icon-color);--md-comp-button-selected-pressed-state-layer-color:var(--md-comp-button-success-selected-pressed-state-layer-color);--md-comp-button-selected-pressed-label-text-color:var(--md-comp-button-success-selected-pressed-label-text-color);--md-comp-button-selected-pressed-icon-color:var(--md-comp-button-success-selected-pressed-icon-color);--md-comp-button-disabled-container-color:var(--md-comp-button-success-disabled-container-color);--md-comp-button-disabled-container-opacity:var(--md-comp-button-success-disabled-container-opacity);--md-comp-button-disabled-icon-color:var(--md-comp-button-success-disabled-icon-color);--md-comp-button-disabled-icon-opacity:var(--md-comp-button-success-disabled-icon-opacity);--md-comp-button-disabled-label-text-color:var(--md-comp-button-success-disabled-label-text-color);--md-comp-button-disabled-label-text-opacity:var(--md-comp-button-success-disabled-label-text-opacity);--md-comp-button-disabled-container-elevation:var(--md-comp-button-success-disabled-container-elevation)}.Button.error{--md-comp-button-container-color:var(--md-comp-button-error-container-color);--md-comp-button-icon-color:var(--md-comp-button-error-icon-color);--md-comp-button-label-text-color:var(--md-comp-button-error-label-text-color);--md-comp-button-container-elevation:var(--md-comp-button-error-container-elevation);--md-comp-button-hovered-state-layer-opacity:var(--md-comp-button-error-hovered-state-layer-opacity);--md-comp-button-hovered-state-layer-color:var(--md-comp-button-error-hovered-state-layer-color);--md-comp-button-hovered-label-text-color:var(--md-comp-button-error-hovered-label-text-color);--md-comp-button-hovered-icon-color:var(--md-comp-button-error-hovered-icon-color);--md-comp-button-focused-state-layer-opacity:var(--md-comp-button-error-focused-state-layer-opacity);--md-comp-button-focused-state-layer-color:var(--md-comp-button-error-focused-state-layer-color);--md-comp-button-focused-label-text-color:var(--md-comp-button-error-focused-label-text-color);--md-comp-button-focused-icon-color:var(--md-comp-button-error-focused-icon-color);--md-comp-button-pressed-state-layer-opacity:var(--md-comp-button-error-pressed-state-layer-opacity);--md-comp-button-pressed-state-layer-color:var(--md-comp-button-error-pressed-state-layer-color);--md-comp-button-pressed-label-text-color:var(--md-comp-button-error-pressed-label-text-color);--md-comp-button-pressed-icon-color:var(--md-comp-button-error-pressed-icon-color);--md-comp-button-unselected-container-color:var(--md-comp-button-error-unselected-container-color);--md-comp-button-unselected-icon-color:var(--md-comp-button-error-unselected-icon-color);--md-comp-button-unselected-label-text-color:var(--md-comp-button-error-unselected-label-text-color);--md-comp-button-unselected-hovered-state-layer-color:var(--md-comp-button-error-unselected-hovered-state-layer-color);--md-comp-button-unselected-hovered-label-text-color:var(--md-comp-button-error-unselected-hovered-label-text-color);--md-comp-button-unselected-hovered-icon-color:var(--md-comp-button-error-unselected-hovered-icon-color);--md-comp-button-unselected-focused-state-layer-color:var(--md-comp-button-error-unselected-focused-state-layer-color);--md-comp-button-unselected-focused-label-text-color:var(--md-comp-button-error-unselected-focused-label-text-color);--md-comp-button-unselected-focused-icon-color:var(--md-comp-button-error-unselected-focused-icon-color);--md-comp-button-unselected-pressed-state-layer-color:var(--md-comp-button-error-unselected-pressed-state-layer-color);--md-comp-button-unselected-pressed-label-text-color:var(--md-comp-button-error-unselected-pressed-label-text-color);--md-comp-button-unselected-pressed-icon-color:var(--md-comp-button-error-unselected-pressed-icon-color);--md-comp-button-selected-container-color:var(--md-comp-button-error-selected-container-color);--md-comp-button-selected-icon-color:var(--md-comp-button-error-selected-icon-color);--md-comp-button-selected-label-text-color:var(--md-comp-button-error-selected-label-text-color);--md-comp-button-selected-hovered-state-layer-color:var(--md-comp-button-error-selected-hovered-state-layer-color);--md-comp-button-selected-hovered-label-text-color:var(--md-comp-button-error-selected-hovered-label-text-color);--md-comp-button-selected-hovered-icon-color:var(--md-comp-button-error-selected-hovered-icon-color);--md-comp-button-selected-focused-state-layer-color:var(--md-comp-button-error-selected-focused-state-layer-color);--md-comp-button-selected-focused-label-text-color:var(--md-comp-button-error-selected-focused-label-text-color);--md-comp-button-selected-focused-icon-color:var(--md-comp-button-error-selected-focused-icon-color);--md-comp-button-selected-pressed-state-layer-color:var(--md-comp-button-error-selected-pressed-state-layer-color);--md-comp-button-selected-pressed-label-text-color:var(--md-comp-button-error-selected-pressed-label-text-color);--md-comp-button-selected-pressed-icon-color:var(--md-comp-button-error-selected-pressed-icon-color);--md-comp-button-disabled-container-color:var(--md-comp-button-error-disabled-container-color);--md-comp-button-disabled-container-opacity:var(--md-comp-button-error-disabled-container-opacity);--md-comp-button-disabled-icon-color:var(--md-comp-button-error-disabled-icon-color);--md-comp-button-disabled-icon-opacity:var(--md-comp-button-error-disabled-icon-opacity);--md-comp-button-disabled-label-text-color:var(--md-comp-button-error-disabled-label-text-color);--md-comp-button-disabled-label-text-opacity:var(--md-comp-button-error-disabled-label-text-opacity);--md-comp-button-disabled-container-elevation:var(--md-comp-button-error-disabled-container-elevation)}.Button.outlined{--md-comp-button-container-color:transparent;--md-comp-button-container-opacity:0;--md-comp-button-outline-color:var(--md-comp-button-outlined-outline-color);--md-comp-button-outline-opacity:1;--md-comp-button-icon-color:var(--md-comp-button-outlined-icon-color);--md-comp-button-label-text-color:var(--md-comp-button-outlined-label-text-color);--md-comp-button-hovered-state-layer-opacity:var(--md-comp-button-outlined-hovered-state-layer-opacity);--md-comp-button-hovered-state-layer-color:var(--md-comp-button-outlined-hovered-state-layer-color);--md-comp-button-hovered-outline-color:var(--md-comp-button-outlined-hovered-outline-color);--md-comp-button-hovered-label-text-color:var(--md-comp-button-outlined-hovered-label-text-color);--md-comp-button-hovered-icon-color:var(--md-comp-button-outlined-hovered-icon-color);--md-comp-button-focused-state-layer-opacity:var(--md-comp-button-outlined-focused-state-layer-opacity);--md-comp-button-focused-state-layer-color:var(--md-comp-button-outlined-focused-state-layer-color);--md-comp-button-focused-outline-color:var(--md-comp-button-outlined-focused-outline-color);--md-comp-button-focused-label-text-color:var(--md-comp-button-outlined-focused-label-text-color);--md-comp-button-focused-icon-color:var(--md-comp-button-outlined-focused-icon-color);--md-comp-button-pressed-state-layer-opacity:var(--md-comp-button-outlined-pressed-state-layer-opacity);--md-comp-button-pressed-state-layer-color:var(--md-comp-button-outlined-pressed-state-layer-color);--md-comp-button-pressed-outline-color:var(--md-comp-button-outlined-pressed-outline-color);--md-comp-button-pressed-label-text-color:var(--md-comp-button-outlined-pressed-label-text-color);--md-comp-button-pressed-icon-color:var(--md-comp-button-outlined-pressed-icon-color);--md-comp-button-unselected-container-color:transparent;--md-comp-button-unselected-container-opacity:0;--md-comp-button-unselected-icon-color:var(--md-comp-button-outlined-unselected-icon-color);--md-comp-button-unselected-label-text-color:var(--md-comp-button-outlined-unselected-label-text-color);--md-comp-button-unselected-hovered-state-layer-color:var(--md-comp-button-outlined-unselected-hovered-state-layer-color);--md-comp-button-unselected-hovered-outline-color:var(--md-comp-button-outlined-unselected-hovered-outline-color);--md-comp-button-unselected-hovered-label-text-color:var(--md-comp-button-outlined-unselected-hovered-label-text-color);--md-comp-button-unselected-hovered-icon-color:var(--md-comp-button-outlined-unselected-hovered-icon-color);--md-comp-button-unselected-focused-state-layer-color:var(--md-comp-button-outlined-unselected-focused-state-layer-color);--md-comp-button-unselected-focused-outline-color:var(--md-comp-button-outlined-unselected-focused-outline-color);--md-comp-button-unselected-focused-label-text-color:var(--md-comp-button-outlined-unselected-focused-label-text-color);--md-comp-button-unselected-focused-icon-color:var(--md-comp-button-outlined-unselected-focused-icon-color);--md-comp-button-unselected-pressed-state-layer-color:var(--md-comp-button-outlined-unselected-pressed-state-layer-color);--md-comp-button-unselected-pressed-outline-color:var(--md-comp-button-outlined-unselected-pressed-outline-color);--md-comp-button-unselected-pressed-label-text-color:var(--md-comp-button-outlined-unselected-pressed-label-text-color);--md-comp-button-unselected-pressed-icon-color:var(--md-comp-button-outlined-unselected-pressed-icon-color);--md-comp-button-selected-container-color:var(--md-comp-button-outlined-selected-container-color);--md-comp-button-selected-container-opacity:1;--md-comp-button-selected-icon-color:var(--md-comp-button-outlined-selected-icon-color);--md-comp-button-selected-label-text-color:var(--md-comp-button-outlined-selected-label-text-color);--md-comp-button-selected-hovered-state-layer-color:var(--md-comp-button-outlined-selected-hovered-state-layer-color);--md-comp-button-selected-hovered-label-text-color:var(--md-comp-button-outlined-selected-hovered-label-text-color);--md-comp-button-selected-hovered-icon-color:var(--md-comp-button-outlined-selected-hovered-icon-color);--md-comp-button-selected-focused-state-layer-color:var(--md-comp-button-outlined-selected-focused-state-layer-color);--md-comp-button-selected-focused-label-text-color:var(--md-comp-button-outlined-selected-focused-label-text-color);--md-comp-button-selected-focused-icon-color:var(--md-comp-button-outlined-selected-focused-icon-color);--md-comp-button-selected-pressed-state-layer-color:var(--md-comp-button-outlined-selected-pressed-state-layer-color);--md-comp-button-selected-pressed-label-text-color:var(--md-comp-button-outlined-selected-pressed-label-text-color);--md-comp-button-selected-pressed-icon-color:var(--md-comp-button-outlined-selected-pressed-icon-color);--md-comp-button-disabled-outline-color:var(--md-comp-button-outlined-unselected-disabled-outline-color);--md-comp-button-disabled-container-opacity:var(--md-comp-button-outlined-disabled-container-opacity);--md-comp-button-disabled-label-text-color:var(--md-comp-button-outlined-disabled-label-text-color);--md-comp-button-disabled-label-text-opacity:var(--md-comp-button-outlined-disabled-label-text-opacity);--md-comp-button-disabled-icon-color:var(--md-comp-button-outlined-disabled-icon-color);--md-comp-button-disabled-icon-opacity:var(--md-comp-button-outlined-disabled-icon-opacity)}.Button.outlined.selected{--md-comp-button-disabled-container-color:var(--md-comp-button-outlined-selected-disabled-container-color);--md-comp-button-disabled-outline-color:var(--md-comp-button-outlined-disabled-outline-color);--md-comp-button-disabled-outline-width:0px}.Button.text{--md-comp-button-container-color:transparent;--md-comp-button-container-opacity:0;--md-comp-button-icon-color:var(--md-comp-button-text-icon-color);--md-comp-button-label-text-color:var(--md-comp-button-text-label-text-color);--md-comp-button-disabled-container-color:var(--md-comp-button-text-disabled-container-color);--md-comp-button-disabled-container-opacity:var(--md-comp-button-text-disabled-container-opacity);--md-comp-button-disabled-icon-color:var(--md-comp-button-text-disabled-icon-color);--md-comp-button-disabled-icon-opacity:var(--md-comp-button-text-disabled-icon-opacity);--md-comp-button-disabled-label-text-color:var(--md-comp-button-text-disabled-label-text-color);--md-comp-button-disabled-label-text-opacity:var(--md-comp-button-text-disabled-label-text-opacity);--md-comp-button-hovered-label-text-color:var(--md-comp-button-text-hovered-label-text-color);--md-comp-button-hovered-icon-color:var(--md-comp-button-text-hovered-icon-color);--md-comp-button-hovered-state-layer-opacity:var(--md-comp-button-text-hovered-state-layer-opacity);--md-comp-button-hovered-state-layer-color:var(--md-comp-button-text-hovered-state-layer-color);--md-comp-button-focused-label-text-color:var(--md-comp-button-text-focused-label-text-color);--md-comp-button-focused-icon-color:var(--md-comp-button-text-focused-icon-color);--md-comp-button-focused-state-layer-opacity:var(--md-comp-button-text-focused-state-layer-opacity);--md-comp-button-focused-state-layer-color:var(--md-comp-button-text-focused-state-layer-color);--md-comp-button-pressed-label-text-color:var(--md-comp-button-text-pressed-label-text-color);--md-comp-button-pressed-icon-color:var(--md-comp-button-text-pressed-icon-color);--md-comp-button-pressed-state-layer-opacity:var(--md-comp-button-text-pressed-state-layer-opacity);--md-comp-button-pressed-state-layer-color:var(--md-comp-button-text-pressed-state-layer-color)}:not(.ButtonGroup)>.Button.width-stretch{width:100%}:not(.ButtonGroup,.SplitButton)>*>.ButtonContainer>.Button.disabled.round:not(.selected){border-radius:var(--md-comp-button-container-shape-round)}:not(.ButtonGroup,.SplitButton)>*>.ButtonContainer>.Button.disabled.square:not(.selected){border-radius:var(--md-comp-button-container-shape-square)}:not(.ButtonGroup,.SplitButton)>*>.ButtonContainer>.Button.disabled.round.selected{border-radius:var(--md-comp-button-selected-container-shape-round)}:not(.ButtonGroup,.SplitButton)>*>.ButtonContainer>.Button.disabled.square.selected{border-radius:var(--md-comp-button-selected-container-shape-square)}:not(.ButtonGroup,.SplitButton)>*>.ButtonContainer>.Button:not(.disabled):not(:active).round:not(.selected){border-radius:var(--md-comp-button-container-shape-round)}:not(.ButtonGroup,.SplitButton)>*>.ButtonContainer>.Button:not(.disabled):not(:active).square:not(.selected){border-radius:var(--md-comp-button-container-shape-square)}:not(.ButtonGroup,.SplitButton)>*>.ButtonContainer>.Button:not(.disabled):not(:active).round.selected{border-radius:var(--md-comp-button-selected-container-shape-round)}:not(.ButtonGroup,.SplitButton)>*>.ButtonContainer>.Button:not(.disabled):not(:active).square.selected{border-radius:var(--md-comp-button-selected-container-shape-square)}:not(.ButtonGroup,.SplitButton)>*>.ButtonContainer>.Button:not(.disabled):active{border-radius:var(--md-comp-button-pressed-container-shape)}:not(.ButtonGroup,.SplitButton)>*>.ButtonContainer.extra-small:has(>.Button){--md-comp-button-container-height:var(--md-comp-button-xsmall-container-height);--md-comp-button-outline-width:var(--md-comp-button-xsmall-outlined-outline-width);--md-comp-button-label-text-font:var(--md-comp-button-xsmall-label-text-font);--md-comp-button-label-text-weight:var(--md-comp-button-xsmall-label-text-weight);--md-comp-button-label-text-size:var(--md-comp-button-xsmall-label-text-size);--md-comp-button-label-text-tracking:var(--md-comp-button-xsmall-label-text-tracking);--md-comp-button-label-text-line-height:var(--md-comp-button-xsmall-label-text-line-height);--md-comp-button-label-text-wght:var(--md-comp-button-xsmall-label-text-wght);--md-comp-button-label-text-grad:var(--md-comp-button-xsmall-label-text-grad);--md-comp-button-label-text-wdth:var(--md-comp-button-xsmall-label-text-wdth);--md-comp-button-label-text-rond:var(--md-comp-button-xsmall-label-text-rond);--md-comp-button-label-text-opsz:var(--md-comp-button-xsmall-label-text-opsz);--md-comp-button-label-text-crsv:var(--md-comp-button-xsmall-label-text-crsv);--md-comp-button-label-text-slnt:var(--md-comp-button-xsmall-label-text-slnt);--md-comp-button-label-text-fill:var(--md-comp-button-xsmall-label-text-fill);--md-comp-button-label-text-hexp:var(--md-comp-button-xsmall-label-text-hexp);--md-comp-button-icon-size:var(--md-comp-button-xsmall-icon-size);--md-comp-button-leading-space:var(--md-comp-button-xsmall-leading-space);--md-comp-button-icon-label-space:var(--md-comp-button-xsmall-icon-label-space);--md-comp-button-trailing-space:var(--md-comp-button-xsmall-trailing-space);--md-comp-button-container-shape-round:var(--md-comp-button-xsmall-container-shape-round);--md-comp-button-container-shape-square:var(--md-comp-button-xsmall-container-shape-square);--md-comp-button-pressed-container-shape:var(--md-comp-button-xsmall-pressed-container-shape);--md-comp-button-selected-container-shape-round:var(--md-comp-button-xsmall-selected-container-shape-round);--md-comp-button-selected-container-shape-square:var(--md-comp-button-xsmall-selected-container-shape-square);--md-comp-button-pressed-container-corner-size-motion-spring-duration:var(--md-comp-button-xsmall-pressed-container-corner-size-motion-spring-duration);--md-comp-button-pressed-container-corner-size-motion-spring-easing:var(--md-comp-button-xsmall-pressed-container-corner-size-motion-spring-easing)}:not(.ButtonGroup,.SplitButton)>*>.ButtonContainer.small:has(>.Button){--md-comp-button-container-height:var(--md-comp-button-small-container-height);--md-comp-button-outline-width:var(--md-comp-button-small-outlined-outline-width);--md-comp-button-label-text-font:var(--md-comp-button-small-label-text-font);--md-comp-button-label-text-weight:var(--md-comp-button-small-label-text-weight);--md-comp-button-label-text-size:var(--md-comp-button-small-label-text-size);--md-comp-button-label-text-tracking:var(--md-comp-button-small-label-text-tracking);--md-comp-button-label-text-line-height:var(--md-comp-button-small-label-text-line-height);--md-comp-button-label-text-wght:var(--md-comp-button-small-label-text-wght);--md-comp-button-label-text-grad:var(--md-comp-button-small-label-text-grad);--md-comp-button-label-text-wdth:var(--md-comp-button-small-label-text-wdth);--md-comp-button-label-text-rond:var(--md-comp-button-small-label-text-rond);--md-comp-button-label-text-opsz:var(--md-comp-button-small-label-text-opsz);--md-comp-button-label-text-crsv:var(--md-comp-button-small-label-text-crsv);--md-comp-button-label-text-slnt:var(--md-comp-button-small-label-text-slnt);--md-comp-button-label-text-fill:var(--md-comp-button-small-label-text-fill);--md-comp-button-label-text-hexp:var(--md-comp-button-small-label-text-hexp);--md-comp-button-icon-size:var(--md-comp-button-small-icon-size);--md-comp-button-leading-space:var(--md-comp-button-small-leading-space);--md-comp-button-icon-label-space:var(--md-comp-button-small-icon-label-space);--md-comp-button-trailing-space:var(--md-comp-button-small-trailing-space);--md-comp-button-container-shape-round:var(--md-comp-button-small-container-shape-round);--md-comp-button-container-shape-square:var(--md-comp-button-small-container-shape-square);--md-comp-button-pressed-container-shape:var(--md-comp-button-small-pressed-container-shape);--md-comp-button-selected-container-shape-round:var(--md-comp-button-small-selected-container-shape-round);--md-comp-button-selected-container-shape-square:var(--md-comp-button-small-selected-container-shape-square);--md-comp-button-pressed-container-corner-size-motion-spring-duration:var(--md-comp-button-small-pressed-container-corner-size-motion-spring-duration);--md-comp-button-pressed-container-corner-size-motion-spring-easing:var(--md-comp-button-small-pressed-container-corner-size-motion-spring-easing)}:not(.ButtonGroup,.SplitButton)>*>.ButtonContainer.medium:has(>.Button){--md-comp-button-container-height:var(--md-comp-button-medium-container-height);--md-comp-button-outline-width:var(--md-comp-button-medium-outlined-outline-width);--md-comp-button-label-text-font:var(--md-comp-button-medium-label-text-font);--md-comp-button-label-text-weight:var(--md-comp-button-medium-label-text-weight);--md-comp-button-label-text-size:var(--md-comp-button-medium-label-text-size);--md-comp-button-label-text-tracking:var(--md-comp-button-medium-label-text-tracking);--md-comp-button-label-text-line-height:var(--md-comp-button-medium-label-text-line-height);--md-comp-button-label-text-wght:var(--md-comp-button-medium-label-text-wght);--md-comp-button-label-text-grad:var(--md-comp-button-medium-label-text-grad);--md-comp-button-label-text-wdth:var(--md-comp-button-medium-label-text-wdth);--md-comp-button-label-text-rond:var(--md-comp-button-medium-label-text-rond);--md-comp-button-label-text-opsz:var(--md-comp-button-medium-label-text-opsz);--md-comp-button-label-text-crsv:var(--md-comp-button-medium-label-text-crsv);--md-comp-button-label-text-slnt:var(--md-comp-button-medium-label-text-slnt);--md-comp-button-label-text-fill:var(--md-comp-button-medium-label-text-fill);--md-comp-button-label-text-hexp:var(--md-comp-button-medium-label-text-hexp);--md-comp-button-icon-size:var(--md-comp-button-medium-icon-size);--md-comp-button-leading-space:var(--md-comp-button-medium-leading-space);--md-comp-button-icon-label-space:var(--md-comp-button-medium-icon-label-space);--md-comp-button-trailing-space:var(--md-comp-button-medium-trailing-space);--md-comp-button-container-shape-round:var(--md-comp-button-medium-container-shape-round);--md-comp-button-container-shape-square:var(--md-comp-button-medium-container-shape-square);--md-comp-button-pressed-container-shape:var(--md-comp-button-medium-pressed-container-shape);--md-comp-button-selected-container-shape-round:var(--md-comp-button-medium-selected-container-shape-round);--md-comp-button-selected-container-shape-square:var(--md-comp-button-medium-selected-container-shape-square);--md-comp-button-pressed-container-corner-size-motion-spring-duration:var(--md-comp-button-medium-pressed-container-corner-size-motion-spring-duration);--md-comp-button-pressed-container-corner-size-motion-spring-easing:var(--md-comp-button-medium-pressed-container-corner-size-motion-spring-easing)}:not(.ButtonGroup,.SplitButton)>*>.ButtonContainer.large:has(>.Button){--md-comp-button-container-height:var(--md-comp-button-large-container-height);--md-comp-button-outline-width:var(--md-comp-button-large-outlined-outline-width);--md-comp-button-label-text-font:var(--md-comp-button-large-label-text-font);--md-comp-button-label-text-weight:var(--md-comp-button-large-label-text-weight);--md-comp-button-label-text-size:var(--md-comp-button-large-label-text-size);--md-comp-button-label-text-tracking:var(--md-comp-button-large-label-text-tracking);--md-comp-button-label-text-line-height:var(--md-comp-button-large-label-text-line-height);--md-comp-button-label-text-wght:var(--md-comp-button-large-label-text-wght);--md-comp-button-label-text-grad:var(--md-comp-button-large-label-text-grad);--md-comp-button-label-text-wdth:var(--md-comp-button-large-label-text-wdth);--md-comp-button-label-text-rond:var(--md-comp-button-large-label-text-rond);--md-comp-button-label-text-opsz:var(--md-comp-button-large-label-text-opsz);--md-comp-button-label-text-crsv:var(--md-comp-button-large-label-text-crsv);--md-comp-button-label-text-slnt:var(--md-comp-button-large-label-text-slnt);--md-comp-button-label-text-fill:var(--md-comp-button-large-label-text-fill);--md-comp-button-label-text-hexp:var(--md-comp-button-large-label-text-hexp);--md-comp-button-icon-size:var(--md-comp-button-large-icon-size);--md-comp-button-leading-space:var(--md-comp-button-large-leading-space);--md-comp-button-icon-label-space:var(--md-comp-button-large-icon-label-space);--md-comp-button-trailing-space:var(--md-comp-button-large-trailing-space);--md-comp-button-container-shape-round:var(--md-comp-button-large-container-shape-round);--md-comp-button-container-shape-square:var(--md-comp-button-large-container-shape-square);--md-comp-button-pressed-container-shape:var(--md-comp-button-large-pressed-container-shape);--md-comp-button-selected-container-shape-round:var(--md-comp-button-large-selected-container-shape-round);--md-comp-button-selected-container-shape-square:var(--md-comp-button-large-selected-container-shape-square);--md-comp-button-pressed-container-corner-size-motion-spring-duration:var(--md-comp-button-large-pressed-container-corner-size-motion-spring-duration);--md-comp-button-pressed-container-corner-size-motion-spring-easing:var(--md-comp-button-large-pressed-container-corner-size-motion-spring-easing)}:not(.ButtonGroup,.SplitButton)>*>.ButtonContainer.extra-large:has(>.Button){--md-comp-button-container-height:var(--md-comp-button-xlarge-container-height);--md-comp-button-outline-width:var(--md-comp-button-xlarge-outlined-outline-width);--md-comp-button-label-text-font:var(--md-comp-button-xlarge-label-text-font);--md-comp-button-label-text-weight:var(--md-comp-button-xlarge-label-text-weight);--md-comp-button-label-text-size:var(--md-comp-button-xlarge-label-text-size);--md-comp-button-label-text-tracking:var(--md-comp-button-xlarge-label-text-tracking);--md-comp-button-label-text-line-height:var(--md-comp-button-xlarge-label-text-line-height);--md-comp-button-label-text-wght:var(--md-comp-button-xlarge-label-text-wght);--md-comp-button-label-text-grad:var(--md-comp-button-xlarge-label-text-grad);--md-comp-button-label-text-wdth:var(--md-comp-button-xlarge-label-text-wdth);--md-comp-button-label-text-rond:var(--md-comp-button-xlarge-label-text-rond);--md-comp-button-label-text-opsz:var(--md-comp-button-xlarge-label-text-opsz);--md-comp-button-label-text-crsv:var(--md-comp-button-xlarge-label-text-crsv);--md-comp-button-label-text-slnt:var(--md-comp-button-xlarge-label-text-slnt);--md-comp-button-label-text-fill:var(--md-comp-button-xlarge-label-text-fill);--md-comp-button-label-text-hexp:var(--md-comp-button-xlarge-label-text-hexp);--md-comp-button-icon-size:var(--md-comp-button-xlarge-icon-size);--md-comp-button-leading-space:var(--md-comp-button-xlarge-leading-space);--md-comp-button-icon-label-space:var(--md-comp-button-xlarge-icon-label-space);--md-comp-button-trailing-space:var(--md-comp-button-xlarge-trailing-space);--md-comp-button-container-shape-round:var(--md-comp-button-xlarge-container-shape-round);--md-comp-button-container-shape-square:var(--md-comp-button-xlarge-container-shape-square);--md-comp-button-pressed-container-shape:var(--md-comp-button-xlarge-pressed-container-shape);--md-comp-button-selected-container-shape-round:var(--md-comp-button-xlarge-selected-container-shape-round);--md-comp-button-selected-container-shape-square:var(--md-comp-button-xlarge-selected-container-shape-square);--md-comp-button-pressed-container-corner-size-motion-spring-duration:var(--md-comp-button-xlarge-pressed-container-corner-size-motion-spring-duration);--md-comp-button-pressed-container-corner-size-motion-spring-easing:var(--md-comp-button-xlarge-pressed-container-corner-size-motion-spring-easing)}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:`Module`}});const e=require("./render.cjs");exports.default=e.default;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { default } from "./render.js";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
require('./style.css');const e=require("../../../_virtual/_rolldown/runtime.cjs"),t=require("../../../utils/index.cjs"),n=require("../../misc/OrderedCollection/index.cjs"),r=require("../../misc/Transitionable/index.cjs"),i=require("../../types.cjs"),a=require("../icon/render.cjs");;/* empty css */const o=require("../default/render.cjs");let s=require("classnames");s=e.__toESM(s,1);let c=require("react"),l=require("react/jsx-runtime");var u=[`type`,`align`,`size`,`shape`,`selectable`,`selected`,`onSelected`,`required`,`requiredMessage`,`children`];function d(e){let t={...e};return u.forEach(e=>delete t[e]),t}function f(e){return typeof e==`object`&&e?.selectable}var p=(0,c.createContext)(null),m=()=>(0,c.useContext)(p);function h(e){let{onSelected:u}=e,m=(0,c.useId)(),[h,g]=(0,c.useState)([]),[_,v]=(0,c.useState)(),[y,b]=(0,c.useState)([]),x=(0,c.useMemo)(()=>[`Button`,`IconButton`],[]),S={},C=(0,c.useMemo)(()=>({size:e.size,selectable:!!e.selectable,required:!!(e.selectable&&e.required),get selected(){return h.reduce((e,t)=>e.set(t.id,y.includes(t.id)),new Map)},onSelected:(t,n)=>{let r;e.selectable&&(v(void 0),e.selectable===`single`?(r=n?[t]:[],u?.(n?t:void 0)):(r=[...y],n?r.push(t):r=r.filter(e=>e!==t),u?.(r)),b(r))},onPressed:(t,n,r)=>{let i,a=null,o=null;e.type!==`connected`&&(n?.previousElementSibling instanceof HTMLElement&&(a=n.previousElementSibling),n?.nextElementSibling instanceof HTMLElement&&(o=n.nextElementSibling),r?(i=n.getBoundingClientRect().width/100*15,!a&&o?(n.style.setProperty(`--button-width-extra`,`${i/2}px`),o.style.setProperty(`--button-width-extra`,`-${i/2}px`)):a&&o?(a.style.setProperty(`--button-width-extra`,`-${i/2}px`),n.style.setProperty(`--button-width-extra`,`${i}px`),o.style.setProperty(`--button-width-extra`,`-${i/2}px`)):a&&!o&&(a.style.setProperty(`--button-width-extra`,`-${i/2}px`),n.style.setProperty(`--button-width-extra`,`${i/2}px`))):(a?.style.removeProperty(`--button-width-extra`),n.style.removeProperty(`--button-width-extra`),o?.style.removeProperty(`--button-width-extra`)))}}),[h,u,e.required,e.selectable,e.size,e.type,y]);return(0,c.useEffect)(()=>{e.selectable&&(e.selectable===`single`?b(e.selected?[e.selected]:[]):b(e.selected??[]))},[e.selectable,e.selected]),S.ButtonGroup=!0,S[e.type??`standard`]=!0,e.type!==`connected`&&(S[`align-`+(e.align??`left`)]=!0),S[e.shape??`round`]=!0,S[i.getComponentSizeName(e.size)]=!0,f(e)&&(S.selectable=!0,S[e.selectable]=!0),(0,l.jsxs)(`div`,{...d(e),className:(0,s.default)(S,e.className),children:[(0,l.jsx)(`div`,{className:`container`,children:(0,l.jsxs)(p,{value:C,children:[h.map(e=>{switch(e.orderedCollectionName){case`Button`:return(0,l.jsx)(o.default,{...e},e.id);case`IconButton`:return(0,l.jsx)(a.default,{...e},e.id)}}),(0,l.jsx)(n.default,{childName:x,onChildrenChange:g,compareChild:t.shallowEqual,children:e.children})]})}),e.selectable&&e.required&&(0,l.jsx)(r.default,{value:_,className:`error`}),(0,l.jsx)(`div`,{style:(0,c.useMemo)(()=>({display:`none`}),[]),children:e.selectable&&e.required&&h.map((t,n)=>(0,l.jsx)(`input`,{type:`radio`,name:`group_${m}`,required:!n&&!y.length,defaultChecked:y.includes(t.id),onInvalid:t=>{v((f(e)?e.requiredMessage:void 0)??t.currentTarget.validationMessage),t.preventDefault()}},t.id))})]})}exports.ButtonGroupContext=p,exports.default=h,exports.useButtonGroupContext=m;
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
import { default as React } from 'react';
|
|
2
|
+
import { CommonButtonProps } from '../types';
|
|
3
|
+
interface BaseButtonGroupProps extends Pick<CommonButtonProps, "size" | "shape">, Omit<React.ButtonHTMLAttributes<HTMLElement>, "type"> {
|
|
4
|
+
selectable?: false;
|
|
5
|
+
children?: React.ReactNode;
|
|
6
|
+
}
|
|
7
|
+
export interface BaseButtonGroupSelectable {
|
|
8
|
+
required?: boolean;
|
|
9
|
+
requiredMessage?: string;
|
|
10
|
+
}
|
|
11
|
+
export interface BaseButtonGroupSingleSelection extends BaseButtonGroupSelectable {
|
|
12
|
+
selectable: "single";
|
|
13
|
+
selected?: string;
|
|
14
|
+
onSelected?: (id: string | undefined) => void;
|
|
15
|
+
}
|
|
16
|
+
export interface BaseButtonGroupMultipleSelection extends BaseButtonGroupSelectable {
|
|
17
|
+
selectable: "multiple";
|
|
18
|
+
selected?: string[];
|
|
19
|
+
onSelected?: (ids: string[]) => void;
|
|
20
|
+
}
|
|
21
|
+
export interface StandardButtonGroupProps extends BaseButtonGroupProps {
|
|
22
|
+
type?: "standard";
|
|
23
|
+
align?: "left" | "center" | "right";
|
|
24
|
+
}
|
|
25
|
+
export interface StandardButtonGroupSingleSelectionProps extends Omit<StandardButtonGroupProps, "selectable">, BaseButtonGroupSingleSelection {
|
|
26
|
+
}
|
|
27
|
+
export interface StandardButtonGroupMultipleSelectionProps extends Omit<StandardButtonGroupProps, "selectable">, BaseButtonGroupMultipleSelection {
|
|
28
|
+
}
|
|
29
|
+
export interface ConnectedButtonGroupProps extends BaseButtonGroupProps {
|
|
30
|
+
type: "connected";
|
|
31
|
+
}
|
|
32
|
+
export interface ConnectedButtonGroupSingleSelectionProps extends Omit<ConnectedButtonGroupProps, "selectable">, BaseButtonGroupSingleSelection {
|
|
33
|
+
}
|
|
34
|
+
export interface ConnectedButtonGroupMultipleSelectionProps extends Omit<ConnectedButtonGroupProps, "selectable">, BaseButtonGroupMultipleSelection {
|
|
35
|
+
}
|
|
36
|
+
type ButtonGroupSelectionProps = StandardButtonGroupSingleSelectionProps | StandardButtonGroupMultipleSelectionProps | ConnectedButtonGroupSingleSelectionProps | ConnectedButtonGroupMultipleSelectionProps;
|
|
37
|
+
export type ButtonGroupProps = StandardButtonGroupProps | ConnectedButtonGroupProps | ButtonGroupSelectionProps;
|
|
38
|
+
export interface ButtonGroupContext {
|
|
39
|
+
size: CommonButtonProps["size"];
|
|
40
|
+
selectable: boolean;
|
|
41
|
+
required: boolean;
|
|
42
|
+
readonly selected: Map<string, boolean>;
|
|
43
|
+
onSelected: (id: string, selected: boolean) => void;
|
|
44
|
+
onPressed: (id: string, ref: HTMLElement, pressed: boolean) => void;
|
|
45
|
+
}
|
|
46
|
+
export declare const ButtonGroupContext: React.Context<ButtonGroupContext | null>;
|
|
47
|
+
export declare const useButtonGroupContext: () => ButtonGroupContext | null;
|
|
48
|
+
export default function ButtonGroup(props: ButtonGroupProps): React.JSX.Element;
|
|
49
|
+
export {};
|