react-material-design 0.0.0-stage → 0.5.0

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.
Files changed (292) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +12 -2
  3. package/dist/_virtual/_rolldown/runtime.cjs +1 -0
  4. package/dist/components/Button/context.cjs +1 -0
  5. package/dist/components/Button/context.d.ts +29 -0
  6. package/dist/components/Button/context.js +41 -0
  7. package/dist/components/Button/default/index.cjs +1 -0
  8. package/dist/components/Button/default/index.d.ts +26 -0
  9. package/dist/components/Button/default/index.js +22 -0
  10. package/dist/components/Button/default/render.cjs +1 -0
  11. package/dist/components/Button/default/render.d.ts +3 -0
  12. package/dist/components/Button/default/render.js +203 -0
  13. package/dist/components/Button/default/style.css +1 -0
  14. package/dist/components/Button/group/index.cjs +1 -0
  15. package/dist/components/Button/group/index.d.ts +2 -0
  16. package/dist/components/Button/group/index.js +1 -0
  17. package/dist/components/Button/group/render.cjs +1 -0
  18. package/dist/components/Button/group/render.d.ts +49 -0
  19. package/dist/components/Button/group/render.js +100 -0
  20. package/dist/components/Button/group/style.css +1 -0
  21. package/dist/components/Button/icon/index.cjs +1 -0
  22. package/dist/components/Button/icon/index.d.ts +22 -0
  23. package/dist/components/Button/icon/index.js +23 -0
  24. package/dist/components/Button/icon/render.cjs +1 -0
  25. package/dist/components/Button/icon/render.d.ts +4 -0
  26. package/dist/components/Button/icon/render.js +178 -0
  27. package/dist/components/Button/icon/style.css +1 -0
  28. package/dist/components/Button/index.cjs +1 -0
  29. package/dist/components/Button/index.d.ts +1 -0
  30. package/dist/components/Button/index.js +55 -0
  31. package/dist/components/Button/split/index.cjs +1 -0
  32. package/dist/components/Button/split/index.d.ts +6 -0
  33. package/dist/components/Button/split/index.js +33 -0
  34. package/dist/components/Button/split/style.css +1 -0
  35. package/dist/components/Button/types.d.ts +19 -0
  36. package/dist/components/Card/index.d.ts +1 -0
  37. package/dist/components/Chip/index.cjs +1 -0
  38. package/dist/components/Chip/index.d.ts +50 -0
  39. package/dist/components/Chip/index.js +156 -0
  40. package/dist/components/Chip/style.css +1 -0
  41. package/dist/components/ContextMenu/index.cjs +1 -0
  42. package/dist/components/ContextMenu/index.d.ts +2 -0
  43. package/dist/components/ContextMenu/index.js +19 -0
  44. package/dist/components/ContextMenu/render.cjs +1 -0
  45. package/dist/components/ContextMenu/render.d.ts +4 -0
  46. package/dist/components/ContextMenu/render.js +59 -0
  47. package/dist/components/Dialog/Dialog.cjs +1 -0
  48. package/dist/components/Dialog/Dialog.d.ts +23 -0
  49. package/dist/components/Dialog/Dialog.js +182 -0
  50. package/dist/components/Dialog/DialogActions.cjs +1 -0
  51. package/dist/components/Dialog/DialogActions.d.ts +3 -0
  52. package/dist/components/Dialog/DialogActions.js +17 -0
  53. package/dist/components/Dialog/index.cjs +1 -0
  54. package/dist/components/Dialog/index.d.ts +4 -0
  55. package/dist/components/Dialog/index.js +3 -0
  56. package/dist/components/Dialog/style.css +1 -0
  57. package/dist/components/Divider/index.cjs +1 -0
  58. package/dist/components/Divider/index.d.ts +6 -0
  59. package/dist/components/Divider/index.js +29 -0
  60. package/dist/components/Divider/style.css +1 -0
  61. package/dist/components/Font/index.d.ts +9 -0
  62. package/dist/components/Icon/Icon.cjs +1 -0
  63. package/dist/components/Icon/Icon.d.ts +18 -0
  64. package/dist/components/Icon/Icon.js +47 -0
  65. package/dist/components/Icon/index.cjs +1 -0
  66. package/dist/components/Icon/index.d.ts +2 -0
  67. package/dist/components/Icon/index.js +1 -0
  68. package/dist/components/Icon/style.css +1 -0
  69. package/dist/components/Menu/Menu.cjs +1 -0
  70. package/dist/components/Menu/Menu.d.ts +4 -0
  71. package/dist/components/Menu/Menu.js +10 -0
  72. package/dist/components/Menu/Menu.render.cjs +1 -0
  73. package/dist/components/Menu/Menu.render.d.ts +15 -0
  74. package/dist/components/Menu/Menu.render.js +55 -0
  75. package/dist/components/Menu/MenuContainer.cjs +1 -0
  76. package/dist/components/Menu/MenuContainer.d.ts +7 -0
  77. package/dist/components/Menu/MenuContainer.js +46 -0
  78. package/dist/components/Menu/MenuGroup.cjs +1 -0
  79. package/dist/components/Menu/MenuGroup.d.ts +11 -0
  80. package/dist/components/Menu/MenuGroup.js +34 -0
  81. package/dist/components/Menu/MenuGroup.render.cjs +1 -0
  82. package/dist/components/Menu/MenuGroup.render.d.ts +6 -0
  83. package/dist/components/Menu/MenuGroup.render.js +31 -0
  84. package/dist/components/Menu/MenuItem.cjs +1 -0
  85. package/dist/components/Menu/MenuItem.d.ts +19 -0
  86. package/dist/components/Menu/MenuItem.js +30 -0
  87. package/dist/components/Menu/MenuItem.render.cjs +1 -0
  88. package/dist/components/Menu/MenuItem.render.d.ts +7 -0
  89. package/dist/components/Menu/MenuItem.render.js +75 -0
  90. package/dist/components/Menu/index.cjs +1 -0
  91. package/dist/components/Menu/index.d.ts +3 -0
  92. package/dist/components/Menu/index.js +4 -0
  93. package/dist/components/Menu/style.css +1 -0
  94. package/dist/components/Menubar/MenuSection.d.ts +8 -0
  95. package/dist/components/Menubar/index.cjs +1 -0
  96. package/dist/components/Menubar/index.d.ts +2 -0
  97. package/dist/components/Menubar/index.js +19 -0
  98. package/dist/components/Menubar/render.cjs +1 -0
  99. package/dist/components/Menubar/render.d.ts +3 -0
  100. package/dist/components/Menubar/render.js +58 -0
  101. package/dist/components/Menubar/style.css +1 -0
  102. package/dist/components/NumberField/NumberField.cjs +1 -0
  103. package/dist/components/NumberField/NumberField.d.ts +2 -0
  104. package/dist/components/NumberField/NumberField.js +19 -0
  105. package/dist/components/NumberField/NumberField.render.cjs +1 -0
  106. package/dist/components/NumberField/NumberField.render.d.ts +10 -0
  107. package/dist/components/NumberField/NumberField.render.js +268 -0
  108. package/dist/components/NumberField/index.cjs +1 -0
  109. package/dist/components/NumberField/index.d.ts +2 -0
  110. package/dist/components/NumberField/index.js +1 -0
  111. package/dist/components/NumberField/style.css +1 -0
  112. package/dist/components/ProgressIndicator/index.d.ts +9 -0
  113. package/dist/components/Select/Option.cjs +1 -0
  114. package/dist/components/Select/Option.d.ts +10 -0
  115. package/dist/components/Select/Option.js +24 -0
  116. package/dist/components/Select/Select.cjs +1 -0
  117. package/dist/components/Select/Select.d.ts +32 -0
  118. package/dist/components/Select/Select.js +265 -0
  119. package/dist/components/Select/index.cjs +1 -0
  120. package/dist/components/Select/index.d.ts +4 -0
  121. package/dist/components/Select/index.js +3 -0
  122. package/dist/components/Select/style.css +1 -0
  123. package/dist/components/Slider/Slider.cjs +1 -0
  124. package/dist/components/Slider/Slider.d.ts +26 -0
  125. package/dist/components/Slider/Slider.js +342 -0
  126. package/dist/components/Slider/index.cjs +1 -0
  127. package/dist/components/Slider/index.d.ts +1 -0
  128. package/dist/components/Slider/index.js +1 -0
  129. package/dist/components/Slider/style.css +1 -0
  130. package/dist/components/TextField/TextField.cjs +1 -0
  131. package/dist/components/TextField/TextField.d.ts +2 -0
  132. package/dist/components/TextField/TextField.js +19 -0
  133. package/dist/components/TextField/TextField.render.cjs +1 -0
  134. package/dist/components/TextField/TextField.render.d.ts +19 -0
  135. package/dist/components/TextField/TextField.render.js +159 -0
  136. package/dist/components/TextField/index.cjs +1 -0
  137. package/dist/components/TextField/index.d.ts +2 -0
  138. package/dist/components/TextField/index.js +1 -0
  139. package/dist/components/TextField/style.css +1 -0
  140. package/dist/components/Theme/Theme.cjs +4 -0
  141. package/dist/components/Theme/Theme.d.ts +14 -0
  142. package/dist/components/Theme/Theme.js +183 -0
  143. package/dist/components/Theme/index.cjs +1 -0
  144. package/dist/components/Theme/index.d.ts +1 -0
  145. package/dist/components/Theme/index.js +1 -0
  146. package/dist/components/Theme/style.css +1 -0
  147. package/dist/components/Theme/types.d.ts +29 -0
  148. package/dist/components/Toolbar/Toolbar.cjs +1 -0
  149. package/dist/components/Toolbar/Toolbar.d.ts +3 -0
  150. package/dist/components/Toolbar/Toolbar.js +19 -0
  151. package/dist/components/Toolbar/Toolbar.render.cjs +1 -0
  152. package/dist/components/Toolbar/Toolbar.render.d.ts +14 -0
  153. package/dist/components/Toolbar/Toolbar.render.js +64 -0
  154. package/dist/components/Toolbar/index.cjs +1 -0
  155. package/dist/components/Toolbar/index.d.ts +2 -0
  156. package/dist/components/Toolbar/index.js +1 -0
  157. package/dist/components/Toolbar/style.css +1 -0
  158. package/dist/components/Tooltip/Tooltip.cjs +1 -0
  159. package/dist/components/Tooltip/Tooltip.d.ts +12 -0
  160. package/dist/components/Tooltip/Tooltip.js +52 -0
  161. package/dist/components/Tooltip/index.cjs +1 -0
  162. package/dist/components/Tooltip/index.d.ts +1 -0
  163. package/dist/components/Tooltip/index.js +1 -0
  164. package/dist/components/Tooltip/style.css +1 -0
  165. package/dist/components/containers/FilledField/index.cjs +1 -0
  166. package/dist/components/containers/FilledField/index.d.ts +9 -0
  167. package/dist/components/containers/FilledField/index.js +40 -0
  168. package/dist/components/containers/FilledField/style.css +1 -0
  169. package/dist/components/containers/OutlinedField/index.cjs +1 -0
  170. package/dist/components/containers/OutlinedField/index.d.ts +9 -0
  171. package/dist/components/containers/OutlinedField/index.js +59 -0
  172. package/dist/components/containers/OutlinedField/style.css +1 -0
  173. package/dist/components/misc/FloatingElement/index.cjs +1 -0
  174. package/dist/components/misc/FloatingElement/index.d.ts +17 -0
  175. package/dist/components/misc/FloatingElement/index.js +106 -0
  176. package/dist/components/misc/FloatingElement/style.css +1 -0
  177. package/dist/components/misc/OrderedCollection/index.cjs +1 -0
  178. package/dist/components/misc/OrderedCollection/index.d.ts +27 -0
  179. package/dist/components/misc/OrderedCollection/index.js +98 -0
  180. package/dist/components/misc/OrderedCollection/style.css +1 -0
  181. package/dist/components/misc/Polymorphic.cjs +1 -0
  182. package/dist/components/misc/Polymorphic.d.ts +15 -0
  183. package/dist/components/misc/Polymorphic.js +51 -0
  184. package/dist/components/misc/StateLayer/index.cjs +1 -0
  185. package/dist/components/misc/StateLayer/index.d.ts +7 -0
  186. package/dist/components/misc/StateLayer/index.js +67 -0
  187. package/dist/components/misc/StateLayer/style.css +1 -0
  188. package/dist/components/misc/Transitionable/index.cjs +1 -0
  189. package/dist/components/misc/Transitionable/index.d.ts +6 -0
  190. package/dist/components/misc/Transitionable/index.js +54 -0
  191. package/dist/components/misc/Transitionable/style.css +1 -0
  192. package/dist/components/types.cjs +1 -0
  193. package/dist/components/types.d.ts +20 -0
  194. package/dist/components/types.js +13 -0
  195. package/dist/hooks/useFloating/autoUpdate.cjs +1 -0
  196. package/dist/hooks/useFloating/autoUpdate.d.ts +9 -0
  197. package/dist/hooks/useFloating/autoUpdate.js +64 -0
  198. package/dist/hooks/useFloating/index.cjs +1 -0
  199. package/dist/hooks/useFloating/index.d.ts +30 -0
  200. package/dist/hooks/useFloating/index.js +97 -0
  201. package/dist/hooks/useFloating/middleware/flip.cjs +1 -0
  202. package/dist/hooks/useFloating/middleware/flip.d.ts +2 -0
  203. package/dist/hooks/useFloating/middleware/flip.js +88 -0
  204. package/dist/hooks/useFloating/middleware/offset.cjs +1 -0
  205. package/dist/hooks/useFloating/middleware/offset.d.ts +2 -0
  206. package/dist/hooks/useFloating/middleware/offset.js +42 -0
  207. package/dist/hooks/useFloating/middleware/shift.cjs +1 -0
  208. package/dist/hooks/useFloating/middleware/shift.d.ts +2 -0
  209. package/dist/hooks/useFloating/middleware/shift.js +11 -0
  210. package/dist/hooks/useFloating/middleware/size.cjs +1 -0
  211. package/dist/hooks/useFloating/middleware/size.d.ts +6 -0
  212. package/dist/hooks/useFloating/middleware/size.js +7 -0
  213. package/dist/hooks/useFloating/utils.cjs +1 -0
  214. package/dist/hooks/useFloating/utils.d.ts +22 -0
  215. package/dist/hooks/useFloating/utils.js +145 -0
  216. package/dist/layouts/Content.cjs +1 -0
  217. package/dist/layouts/Content.d.ts +3 -0
  218. package/dist/layouts/Content.js +17 -0
  219. package/dist/layouts/Page/index.cjs +1 -0
  220. package/dist/layouts/Page/index.d.ts +7 -0
  221. package/dist/layouts/Page/index.js +135 -0
  222. package/dist/layouts/Page/style.css +1 -0
  223. package/dist/layouts/Panes/Pane.cjs +1 -0
  224. package/dist/layouts/Panes/Pane.d.ts +11 -0
  225. package/dist/layouts/Panes/Pane.js +27 -0
  226. package/dist/layouts/Panes/Pane.render.cjs +1 -0
  227. package/dist/layouts/Panes/Pane.render.d.ts +6 -0
  228. package/dist/layouts/Panes/Pane.render.js +36 -0
  229. package/dist/layouts/Panes/Panes.cjs +1 -0
  230. package/dist/layouts/Panes/Panes.d.ts +28 -0
  231. package/dist/layouts/Panes/Panes.js +182 -0
  232. package/dist/layouts/Panes/index.cjs +1 -0
  233. package/dist/layouts/Panes/index.d.ts +2 -0
  234. package/dist/layouts/Panes/index.js +3 -0
  235. package/dist/layouts/Panes/style.css +1 -0
  236. package/dist/layouts/Tabs/Tab.d.ts +13 -0
  237. package/dist/layouts/Tabs/Tabs.d.ts +9 -0
  238. package/dist/layouts/Tabs/index.cjs +1 -0
  239. package/dist/layouts/Tabs/index.d.ts +1 -0
  240. package/dist/layouts/Tabs/index.js +0 -0
  241. package/dist/layouts/Toolbox/index.cjs +1 -0
  242. package/dist/layouts/Toolbox/index.d.ts +5 -0
  243. package/dist/layouts/Toolbox/index.js +129 -0
  244. package/dist/layouts/Toolbox/style.css +1 -0
  245. package/dist/style/motions.d.ts +37 -0
  246. package/dist/style/shapes/12_sided_cookie.d.ts +3 -0
  247. package/dist/style/shapes/4_leaf_clover.d.ts +3 -0
  248. package/dist/style/shapes/4_sided_cookie.d.ts +3 -0
  249. package/dist/style/shapes/6_sided_cookie.d.ts +3 -0
  250. package/dist/style/shapes/7_sided_cookie.d.ts +3 -0
  251. package/dist/style/shapes/8_leaf_clover.d.ts +3 -0
  252. package/dist/style/shapes/9_sided_cookie.d.ts +3 -0
  253. package/dist/style/shapes/arch.d.ts +3 -0
  254. package/dist/style/shapes/arrow.d.ts +3 -0
  255. package/dist/style/shapes/boom.d.ts +3 -0
  256. package/dist/style/shapes/bun.d.ts +3 -0
  257. package/dist/style/shapes/burst.d.ts +3 -0
  258. package/dist/style/shapes/circle.d.ts +3 -0
  259. package/dist/style/shapes/clamshell.d.ts +3 -0
  260. package/dist/style/shapes/diamond.d.ts +3 -0
  261. package/dist/style/shapes/fan.d.ts +3 -0
  262. package/dist/style/shapes/flower.d.ts +3 -0
  263. package/dist/style/shapes/gem.d.ts +3 -0
  264. package/dist/style/shapes/ghost_ish.d.ts +3 -0
  265. package/dist/style/shapes/heart.d.ts +3 -0
  266. package/dist/style/shapes/index.d.ts +109 -0
  267. package/dist/style/shapes/oval.d.ts +3 -0
  268. package/dist/style/shapes/pentagon.d.ts +3 -0
  269. package/dist/style/shapes/pill.d.ts +3 -0
  270. package/dist/style/shapes/pixel_circle.d.ts +3 -0
  271. package/dist/style/shapes/pixel_triangle.d.ts +3 -0
  272. package/dist/style/shapes/puffy.d.ts +3 -0
  273. package/dist/style/shapes/puffy_diamond.d.ts +3 -0
  274. package/dist/style/shapes/semicircle.d.ts +3 -0
  275. package/dist/style/shapes/slanted.d.ts +3 -0
  276. package/dist/style/shapes/soft_boom.d.ts +3 -0
  277. package/dist/style/shapes/soft_burst.d.ts +3 -0
  278. package/dist/style/shapes/square.d.ts +3 -0
  279. package/dist/style/shapes/sunny.d.ts +3 -0
  280. package/dist/style/shapes/triangle.d.ts +3 -0
  281. package/dist/style/shapes/very_sunny.d.ts +3 -0
  282. package/dist/style/symbols.d.ts +2 -0
  283. package/dist/utils/dom.cjs +1 -0
  284. package/dist/utils/dom.d.ts +2 -0
  285. package/dist/utils/dom.js +53 -0
  286. package/dist/utils/hooks.cjs +1 -0
  287. package/dist/utils/hooks.d.ts +17 -0
  288. package/dist/utils/hooks.js +9 -0
  289. package/dist/utils/index.cjs +1 -0
  290. package/dist/utils/index.d.ts +44 -0
  291. package/dist/utils/index.js +74 -0
  292. 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
- # Temporary Holding Version
1
+ # React Material Design
2
2
 
3
- This version is a temporary placeholder for this package. An operational version to replace this has been submitted for review and is awaiting a staged release.
3
+ [![npm version](https://badge.fury.io/js/react-material-design.svg)](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,3 @@
1
+ import { ButtonProps } from '.';
2
+ export declare const CommonButtonNativeProps: string[];
3
+ export default function ButtonRender<As extends React.ElementType = "button">(props: ButtonProps<As>): import('react').JSX.Element;
@@ -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,2 @@
1
+ export { default } from './render';
2
+ export type { ButtonGroupProps, ConnectedButtonGroupProps, StandardButtonGroupProps } from './render';
@@ -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 {};