@react-md/core 1.0.0-next.0 → 1.0.0-next.10

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 (1594) hide show
  1. package/.stylelintrc.json +14 -0
  2. package/.turbo/turbo-build.log +11 -7
  3. package/.turbo/turbo-lint.log +12 -0
  4. package/.turbo/turbo-test.log +5512 -0
  5. package/.turbo/turbo-typecheck.log +4 -0
  6. package/CHANGELOG.md +234 -0
  7. package/README.md +39 -24
  8. package/coverage/clover.xml +3 -1118
  9. package/coverage/coverage-final.json +1 -7
  10. package/coverage/lcov-report/AutoComplete.tsx.html +283 -0
  11. package/coverage/lcov-report/Avatar.tsx.html +472 -0
  12. package/coverage/lcov-report/CircularProgress.tsx.html +799 -0
  13. package/coverage/lcov-report/DefaultToastRenderer.tsx.html +166 -112
  14. package/coverage/lcov-report/Dialog.tsx.html +1309 -0
  15. package/coverage/lcov-report/DialogContent.tsx.html +178 -0
  16. package/coverage/lcov-report/DialogFooter.tsx.html +169 -0
  17. package/coverage/lcov-report/IconRotator.tsx.html +322 -0
  18. package/coverage/lcov-report/LinearProgress.tsx.html +658 -0
  19. package/coverage/lcov-report/ListItem.tsx.html +892 -0
  20. package/coverage/lcov-report/ListItemLink.tsx.html +616 -0
  21. package/coverage/lcov-report/MaterialIcon.tsx.html +36 -42
  22. package/coverage/lcov-report/MaterialSymbol.tsx.html +240 -222
  23. package/coverage/lcov-report/MenuItemCheckbox.tsx.html +223 -0
  24. package/coverage/lcov-report/MenuItemInputToggle.tsx.html +925 -0
  25. package/coverage/lcov-report/MenuItemRadio.tsx.html +436 -0
  26. package/coverage/lcov-report/MenuItemSeparator.tsx.html +223 -0
  27. package/coverage/lcov-report/MenuItemTextField.tsx.html +289 -0
  28. package/coverage/lcov-report/Portal.tsx.html +223 -0
  29. package/coverage/lcov-report/PortalContainerProvider.tsx.html +367 -0
  30. package/coverage/lcov-report/RootHtml.tsx.html +370 -0
  31. package/coverage/lcov-report/Select.tsx.html +1411 -0
  32. package/coverage/lcov-report/SkeletonPlaceholder.tsx.html +613 -0
  33. package/coverage/lcov-report/Snackbar.tsx.html +360 -402
  34. package/coverage/lcov-report/SrOnly.tsx.html +328 -0
  35. package/coverage/lcov-report/Switch.tsx.html +535 -0
  36. package/coverage/lcov-report/SwitchTrack.tsx.html +262 -0
  37. package/coverage/lcov-report/Tab.tsx.html +261 -147
  38. package/coverage/lcov-report/Table.tsx.html +457 -0
  39. package/coverage/lcov-report/TableCell.tsx.html +982 -0
  40. package/coverage/lcov-report/TableCheckbox.tsx.html +709 -0
  41. package/coverage/lcov-report/TableContainer.tsx.html +220 -0
  42. package/coverage/lcov-report/TableFooter.tsx.html +502 -0
  43. package/coverage/lcov-report/TableHeader.tsx.html +541 -0
  44. package/coverage/lcov-report/TableRadio.tsx.html +670 -0
  45. package/coverage/lcov-report/TableRow.tsx.html +289 -0
  46. package/coverage/lcov-report/Toast.tsx.html +868 -0
  47. package/coverage/lcov-report/ToastManager.tsx.html +1783 -0
  48. package/coverage/lcov-report/ToastManagerProvider.tsx.html +216 -216
  49. package/coverage/lcov-report/Tooltip.tsx.html +98 -155
  50. package/coverage/lcov-report/TreeGroup.tsx.html +313 -0
  51. package/coverage/lcov-report/Typography.tsx.html +1027 -0
  52. package/coverage/lcov-report/app-bar/AppBar.tsx.html +178 -28
  53. package/coverage/lcov-report/app-bar/index.html +7 -7
  54. package/coverage/lcov-report/autocomplete/AutoComplete.tsx.html +283 -0
  55. package/coverage/lcov-report/autocomplete/Autocomplete.tsx.html +475 -0
  56. package/coverage/lcov-report/autocomplete/AutocompleteGeneric.tsx.html +304 -0
  57. package/coverage/lcov-report/autocomplete/index.html +221 -0
  58. package/coverage/lcov-report/autocomplete/useAutoComplete.ts.html +775 -0
  59. package/coverage/lcov-report/autocomplete/useAutocomplete.ts.html +1273 -0
  60. package/coverage/lcov-report/autocomplete/useAutocompleteAgain.ts.html +829 -0
  61. package/coverage/lcov-report/autocomplete/useAutocompletev2.ts.html +715 -0
  62. package/coverage/lcov-report/autocomplete/useInlineAutoComplete.ts.html +340 -0
  63. package/coverage/lcov-report/autocomplete/useInlineAutocomplete.ts.html +430 -0
  64. package/coverage/lcov-report/autocomplete/useInlineSelection.ts.html +310 -0
  65. package/coverage/lcov-report/autocomplete/utils.ts.html +196 -0
  66. package/coverage/lcov-report/avatar/Avatar.tsx.html +175 -106
  67. package/coverage/lcov-report/avatar/index.html +19 -19
  68. package/coverage/lcov-report/avatar/styles.ts.html +268 -0
  69. package/coverage/lcov-report/button/AsyncButton.tsx.html +217 -10
  70. package/coverage/lcov-report/button/Button.tsx.html +97 -85
  71. package/coverage/lcov-report/button/TooltippedButton.tsx.html +445 -0
  72. package/coverage/lcov-report/button/index.html +10 -10
  73. package/coverage/lcov-report/card/Card.tsx.html +349 -0
  74. package/coverage/lcov-report/card/CardContent.tsx.html +223 -0
  75. package/coverage/lcov-report/card/ClickableCard.tsx.html +400 -0
  76. package/coverage/lcov-report/card/index.html +21 -21
  77. package/coverage/lcov-report/card/styles.ts.html +428 -392
  78. package/coverage/lcov-report/config.ts.html +33 -18
  79. package/coverage/lcov-report/cssUtils.ts.html +171 -66
  80. package/coverage/lcov-report/dialog/Dialog.tsx.html +170 -167
  81. package/coverage/lcov-report/dialog/DialogContent.tsx.html +178 -0
  82. package/coverage/lcov-report/dialog/DialogFooter.tsx.html +169 -0
  83. package/coverage/lcov-report/dialog/DialogHeader.tsx.html +148 -0
  84. package/coverage/lcov-report/dialog/DialogTitle.tsx.html +256 -0
  85. package/coverage/lcov-report/dialog/index.html +28 -28
  86. package/coverage/lcov-report/dialog/styles.ts.html +439 -0
  87. package/coverage/lcov-report/draggable/index.html +21 -36
  88. package/coverage/lcov-report/draggable/useDraggable.ts.html +377 -368
  89. package/coverage/lcov-report/draggable/utils.ts.html +96 -195
  90. package/coverage/lcov-report/expansion-panel/ExpansionList.tsx.html +211 -0
  91. package/coverage/lcov-report/expansion-panel/ExpansionPanel.tsx.html +12 -15
  92. package/coverage/lcov-report/expansion-panel/index.html +34 -19
  93. package/coverage/lcov-report/expansion-panel/useExpansionPanels.ts.html +928 -0
  94. package/coverage/lcov-report/form/AutoComplete.tsx.html +283 -0
  95. package/coverage/lcov-report/form/Form.tsx.html +22 -22
  96. package/coverage/lcov-report/form/Label.tsx.html +442 -0
  97. package/coverage/lcov-report/form/MenuItemInputToggle.tsx.html +37 -25
  98. package/coverage/lcov-report/form/MenuItemTextField.tsx.html +12 -9
  99. package/coverage/lcov-report/form/OptGroup.tsx.html +169 -166
  100. package/coverage/lcov-report/form/Option.tsx.html +727 -0
  101. package/coverage/lcov-report/form/ResizingTextArea.tsx.html +442 -0
  102. package/coverage/lcov-report/form/ResizingTextAreaWrapper.tsx.html +310 -0
  103. package/coverage/lcov-report/form/Select.tsx.html +1456 -0
  104. package/coverage/lcov-report/form/SelectOriginal.tsx.html +1630 -0
  105. package/coverage/lcov-report/form/SelectV2.tsx.html +1024 -0
  106. package/coverage/lcov-report/form/SelectedOption.tsx.html +250 -0
  107. package/coverage/lcov-report/form/SimpleTextArea.tsx.html +727 -0
  108. package/coverage/lcov-report/form/Slider.tsx.html +163 -40
  109. package/coverage/lcov-report/form/SliderValueTooltip.tsx.html +319 -0
  110. package/coverage/lcov-report/form/Switch.tsx.html +310 -385
  111. package/coverage/lcov-report/form/SwitchTrack.tsx.html +98 -71
  112. package/coverage/lcov-report/form/TextArea.tsx.html +596 -740
  113. package/coverage/lcov-report/form/TextArea2.tsx.html +985 -0
  114. package/coverage/lcov-report/form/TextAreaBackup.tsx.html +1006 -0
  115. package/coverage/lcov-report/form/TextField.tsx.html +156 -234
  116. package/coverage/lcov-report/form/index.html +34 -169
  117. package/coverage/lcov-report/form/selectUtils.ts.html +188 -221
  118. package/coverage/lcov-report/form/switchStyles.ts.html +172 -0
  119. package/coverage/lcov-report/form/textAreaStyles.ts.html +8 -11
  120. package/coverage/lcov-report/form/useAutoComplete.ts.html +787 -0
  121. package/coverage/lcov-report/form/useCombobox.ts.html +454 -460
  122. package/coverage/lcov-report/form/useComboboxList.ts.html +108 -93
  123. package/coverage/lcov-report/form/useFormReset.ts.html +229 -0
  124. package/coverage/lcov-report/form/useInlineAutoComplete.ts.html +379 -0
  125. package/coverage/lcov-report/form/useRadioGroup.ts.html +79 -79
  126. package/coverage/lcov-report/form/useResizingTextArea.ts.html +631 -0
  127. package/coverage/lcov-report/form/useResizingTextArea2.ts.html +631 -0
  128. package/coverage/lcov-report/form/useSelectCombobox.ts.html +499 -0
  129. package/coverage/lcov-report/form/utils.ts.html +209 -170
  130. package/coverage/lcov-report/getListItemHeight.ts.html +298 -0
  131. package/coverage/lcov-report/hoverMode/index.html +116 -0
  132. package/coverage/lcov-report/hoverMode/useHoverMode.ts.html +676 -0
  133. package/coverage/lcov-report/icon/FontIcon.tsx.html +69 -78
  134. package/coverage/lcov-report/icon/MaterialIcon.tsx.html +235 -0
  135. package/coverage/lcov-report/icon/index.html +20 -20
  136. package/coverage/lcov-report/icon/styles.ts.html +41 -104
  137. package/coverage/lcov-report/iconConfig.tsx.html +973 -0
  138. package/coverage/lcov-report/index.html +11 -101
  139. package/coverage/lcov-report/interaction/UserInteractionModeProvider.tsx.html +679 -0
  140. package/coverage/lcov-report/interaction/config.ts.html +181 -0
  141. package/coverage/lcov-report/interaction/index.html +33 -18
  142. package/coverage/lcov-report/link/Link.tsx.html +358 -0
  143. package/coverage/lcov-report/link/index.html +20 -20
  144. package/coverage/lcov-report/list/List.tsx.html +490 -0
  145. package/coverage/lcov-report/list/ListItem.tsx.html +886 -0
  146. package/coverage/lcov-report/list/ListItemAddon.tsx.html +286 -0
  147. package/coverage/lcov-report/list/ListItemChildren.tsx.html +445 -0
  148. package/coverage/lcov-report/list/ListItemLink.tsx.html +32 -38
  149. package/coverage/lcov-report/list/index.html +64 -19
  150. package/coverage/lcov-report/list/listItemStyles.ts.html +703 -0
  151. package/coverage/lcov-report/materialConfig.ts.html +703 -0
  152. package/coverage/lcov-report/media-queries/appSize.ts.html +1 -1
  153. package/coverage/lcov-report/media-queries/index.html +10 -10
  154. package/coverage/lcov-report/menu/DropdownMenu.tsx.html +976 -0
  155. package/coverage/lcov-report/menu/Menu.tsx.html +357 -282
  156. package/coverage/lcov-report/menu/MenuConfigurationProvider.tsx.html +637 -0
  157. package/coverage/lcov-report/menu/MenuItem.tsx.html +292 -0
  158. package/coverage/lcov-report/menu/MenuItemCircularProgress.tsx.html +433 -0
  159. package/coverage/lcov-report/menu/MenuSheet.tsx.html +37 -13
  160. package/coverage/lcov-report/menu/MenuVisibilityProvider.tsx.html +48 -33
  161. package/coverage/lcov-report/menu/index.html +14 -74
  162. package/coverage/lcov-report/menu/menuConfig.ts.html +118 -0
  163. package/coverage/lcov-report/menu/useContextMenu.ts.html +490 -0
  164. package/coverage/lcov-report/menuItemInputToggleStyles.ts.html +319 -0
  165. package/coverage/lcov-report/movement/index.html +19 -19
  166. package/coverage/lcov-report/movement/useKeyboardMovementProvider.ts.html +422 -383
  167. package/coverage/lcov-report/positioning/constants.ts.html +463 -0
  168. package/coverage/lcov-report/positioning/index.html +30 -30
  169. package/coverage/lcov-report/positioning/useFixedPositioning.ts.html +1321 -0
  170. package/coverage/lcov-report/progress/CircularProgress.tsx.html +799 -0
  171. package/coverage/lcov-report/progress/LinearProgress.tsx.html +100 -94
  172. package/coverage/lcov-report/progress/index.html +19 -19
  173. package/coverage/lcov-report/searching/caseInsensitive.ts.html +685 -0
  174. package/coverage/lcov-report/searching/fuzzy.ts.html +610 -0
  175. package/coverage/lcov-report/searching/index.html +146 -0
  176. package/coverage/lcov-report/searching/toSearchQuery.ts.html +145 -0
  177. package/coverage/lcov-report/searching/useFuzzyMatch.ts.html +211 -0
  178. package/coverage/lcov-report/searching/utils.ts.html +244 -0
  179. package/coverage/lcov-report/sheet/index.html +8 -8
  180. package/coverage/lcov-report/sheet/styles.ts.html +376 -0
  181. package/coverage/lcov-report/skeletonPlaceholderUtils.ts.html +400 -0
  182. package/coverage/lcov-report/snackbar/Snackbar.tsx.html +55 -97
  183. package/coverage/lcov-report/snackbar/Toast.tsx.html +546 -501
  184. package/coverage/lcov-report/snackbar/ToastManager.tsx.html +269 -269
  185. package/coverage/lcov-report/snackbar/ToastManagerProvider.tsx.html +23 -23
  186. package/coverage/lcov-report/snackbar/index.html +59 -14
  187. package/coverage/lcov-report/snackbar/snackbarStyles.ts.html +12 -87
  188. package/coverage/lcov-report/snackbar/toastStyles.ts.html +206 -146
  189. package/coverage/lcov-report/snackbar/useCurrentToastActions.ts.html +226 -0
  190. package/coverage/lcov-report/snackbarStyles.ts.html +46 -121
  191. package/coverage/lcov-report/src/CoreProviders.tsx.html +20 -20
  192. package/coverage/lcov-report/src/NoSsr.tsx.html +1 -1
  193. package/coverage/lcov-report/src/RootHtml.tsx.html +370 -0
  194. package/coverage/lcov-report/src/SsrProvider.tsx.html +10 -10
  195. package/coverage/lcov-report/src/app-bar/AppBar.tsx.html +207 -87
  196. package/coverage/lcov-report/src/app-bar/AppBarTitle.tsx.html +1 -1
  197. package/coverage/lcov-report/src/app-bar/index.html +20 -5
  198. package/coverage/lcov-report/src/autocomplete/Autocomplete.tsx.html +364 -0
  199. package/coverage/lcov-report/src/autocomplete/AutocompleteGeneric.tsx.html +304 -0
  200. package/coverage/lcov-report/src/autocomplete/index.html +221 -0
  201. package/coverage/lcov-report/src/autocomplete/useAutocomplete.ts.html +637 -0
  202. package/coverage/lcov-report/src/autocomplete/useAutocompleteAgain.ts.html +829 -0
  203. package/coverage/lcov-report/src/autocomplete/useAutocompletev2.ts.html +715 -0
  204. package/coverage/lcov-report/src/autocomplete/useInlineAutocomplete.ts.html +430 -0
  205. package/coverage/lcov-report/src/autocomplete/useInlineSelection.ts.html +241 -0
  206. package/coverage/lcov-report/src/autocomplete/utils.ts.html +196 -0
  207. package/coverage/lcov-report/src/avatar/Avatar.tsx.html +36 -27
  208. package/coverage/lcov-report/src/avatar/index.html +22 -7
  209. package/coverage/lcov-report/src/avatar/styles.ts.html +77 -8
  210. package/coverage/lcov-report/src/badge/Badge.tsx.html +1 -1
  211. package/coverage/lcov-report/src/badge/index.html +1 -1
  212. package/coverage/lcov-report/src/box/Box.tsx.html +1 -1
  213. package/coverage/lcov-report/src/box/index.html +9 -9
  214. package/coverage/lcov-report/src/box/styles.ts.html +105 -51
  215. package/coverage/lcov-report/src/button/AsyncButton.tsx.html +833 -284
  216. package/coverage/lcov-report/src/button/Button.tsx.html +81 -81
  217. package/coverage/lcov-report/src/button/ButtonUnstyled.tsx.html +1 -1
  218. package/coverage/lcov-report/src/button/FloatingActionButton.tsx.html +39 -39
  219. package/coverage/lcov-report/src/button/TooltippedButton.tsx.html +445 -0
  220. package/coverage/lcov-report/src/button/buttonStyles.ts.html +59 -59
  221. package/coverage/lcov-report/src/button/buttonUnstyledStyles.ts.html +1 -1
  222. package/coverage/lcov-report/src/button/index.html +1 -1
  223. package/coverage/lcov-report/src/card/Card.tsx.html +37 -31
  224. package/coverage/lcov-report/src/card/CardContent.tsx.html +4 -4
  225. package/coverage/lcov-report/src/card/CardFooter.tsx.html +1 -1
  226. package/coverage/lcov-report/src/card/CardHeader.tsx.html +1 -1
  227. package/coverage/lcov-report/src/card/CardSubtitle.tsx.html +1 -1
  228. package/coverage/lcov-report/src/card/CardTitle.tsx.html +1 -1
  229. package/coverage/lcov-report/src/card/ClickableCard.tsx.html +400 -0
  230. package/coverage/lcov-report/src/card/index.html +112 -7
  231. package/coverage/lcov-report/src/card/styles.ts.html +58 -31
  232. package/coverage/lcov-report/src/chip/Chip.tsx.html +1 -1
  233. package/coverage/lcov-report/src/chip/index.html +7 -7
  234. package/coverage/lcov-report/src/chip/styles.ts.html +9 -12
  235. package/coverage/lcov-report/src/cssUtils.ts.html +68 -59
  236. package/coverage/lcov-report/src/delegateEvent.ts.html +110 -110
  237. package/coverage/lcov-report/src/dialog/Dialog.tsx.html +158 -155
  238. package/coverage/lcov-report/src/dialog/DialogContainer.tsx.html +27 -27
  239. package/coverage/lcov-report/src/dialog/DialogContent.tsx.html +72 -72
  240. package/coverage/lcov-report/src/dialog/DialogFooter.tsx.html +14 -14
  241. package/coverage/lcov-report/src/dialog/DialogHeader.tsx.html +9 -9
  242. package/coverage/lcov-report/src/dialog/DialogTitle.tsx.html +124 -124
  243. package/coverage/lcov-report/src/dialog/FixedDialog.tsx.html +1 -1
  244. package/coverage/lcov-report/src/dialog/NestedDialogProvider.ts.html +3 -3
  245. package/coverage/lcov-report/src/dialog/index.html +133 -13
  246. package/coverage/lcov-report/src/dialog/styles.ts.html +61 -61
  247. package/coverage/lcov-report/src/divider/Divider.tsx.html +27 -30
  248. package/coverage/lcov-report/src/divider/index.html +23 -8
  249. package/coverage/lcov-report/src/divider/styles.ts.html +11 -11
  250. package/coverage/lcov-report/src/draggable/index.html +27 -27
  251. package/coverage/lcov-report/src/draggable/useDraggable.ts.html +365 -362
  252. package/coverage/lcov-report/src/draggable/utils.ts.html +94 -196
  253. package/coverage/lcov-report/src/expansion-panel/ExpansionList.tsx.html +1 -1
  254. package/coverage/lcov-report/src/expansion-panel/ExpansionPanel.tsx.html +1 -1
  255. package/coverage/lcov-report/src/expansion-panel/ExpansionPanelHeader.tsx.html +11 -20
  256. package/coverage/lcov-report/src/expansion-panel/index.html +30 -15
  257. package/coverage/lcov-report/src/expansion-panel/useExpansionList.ts.html +1 -1
  258. package/coverage/lcov-report/src/expansion-panel/useExpansionPanels.ts.html +36 -24
  259. package/coverage/lcov-report/src/focus/index.html +23 -23
  260. package/coverage/lcov-report/src/focus/useFocusContainer.ts.html +142 -121
  261. package/coverage/lcov-report/src/focus/utils.ts.html +37 -37
  262. package/coverage/lcov-report/src/form/AutoComplete.tsx.html +283 -0
  263. package/coverage/lcov-report/src/form/Checkbox.tsx.html +1 -1
  264. package/coverage/lcov-report/src/form/Fieldset.tsx.html +1 -1
  265. package/coverage/lcov-report/src/form/FileInput.tsx.html +133 -139
  266. package/coverage/lcov-report/src/form/Form.tsx.html +11 -8
  267. package/coverage/lcov-report/src/form/FormMessage.tsx.html +126 -264
  268. package/coverage/lcov-report/src/form/FormMessageContainer.tsx.html +42 -45
  269. package/coverage/lcov-report/src/form/FormMessageCounter.tsx.html +1 -1
  270. package/coverage/lcov-report/src/form/InputToggle.tsx.html +116 -125
  271. package/coverage/lcov-report/src/form/InputToggleIcon.tsx.html +63 -63
  272. package/coverage/lcov-report/src/form/Label.tsx.html +107 -107
  273. package/coverage/lcov-report/src/form/Legend.tsx.html +1 -1
  274. package/coverage/lcov-report/src/form/MenuItemCheckbox.tsx.html +13 -7
  275. package/coverage/lcov-report/src/form/MenuItemFileInput.tsx.html +3 -3
  276. package/coverage/lcov-report/src/form/MenuItemInputToggle.tsx.html +179 -221
  277. package/coverage/lcov-report/src/form/MenuItemRadio.tsx.html +13 -7
  278. package/coverage/lcov-report/src/form/MenuItemSwitch.tsx.html +1 -1
  279. package/coverage/lcov-report/src/form/MenuItemTextField.tsx.html +13 -4
  280. package/coverage/lcov-report/src/form/NativeSelect.tsx.html +20 -5
  281. package/coverage/lcov-report/src/form/OptGroup.tsx.html +1 -1
  282. package/coverage/lcov-report/src/form/Option.tsx.html +4 -4
  283. package/coverage/lcov-report/src/form/Password.tsx.html +3 -3
  284. package/coverage/lcov-report/src/form/Radio.tsx.html +3 -3
  285. package/coverage/lcov-report/src/form/ResizingTextArea.tsx.html +988 -0
  286. package/coverage/lcov-report/src/form/ResizingTextAreaWrapper.tsx.html +310 -0
  287. package/coverage/lcov-report/src/form/Select.tsx.html +894 -1122
  288. package/coverage/lcov-report/src/form/SelectValue.tsx.html +1 -1
  289. package/coverage/lcov-report/src/form/SimpleTextArea.tsx.html +694 -0
  290. package/coverage/lcov-report/src/form/Slider.tsx.html +129 -9
  291. package/coverage/lcov-report/src/form/SliderContainer.tsx.html +1 -1
  292. package/coverage/lcov-report/src/form/SliderMark.tsx.html +1 -1
  293. package/coverage/lcov-report/src/form/SliderMarkLabel.tsx.html +1 -1
  294. package/coverage/lcov-report/src/form/SliderThumb.tsx.html +43 -7
  295. package/coverage/lcov-report/src/form/SliderTrack.tsx.html +1 -1
  296. package/coverage/lcov-report/src/form/SliderValueMarks.tsx.html +11 -5
  297. package/coverage/lcov-report/src/form/SliderValueTooltip.tsx.html +2 -2
  298. package/coverage/lcov-report/src/form/Switch.tsx.html +310 -373
  299. package/coverage/lcov-report/src/form/SwitchTrack.tsx.html +99 -69
  300. package/coverage/lcov-report/src/form/TextArea.tsx.html +650 -572
  301. package/coverage/lcov-report/src/form/TextArea2.tsx.html +985 -0
  302. package/coverage/lcov-report/src/form/TextAreaBackup.tsx.html +985 -0
  303. package/coverage/lcov-report/src/form/TextField.tsx.html +18 -12
  304. package/coverage/lcov-report/src/form/TextFieldAddon.tsx.html +14 -26
  305. package/coverage/lcov-report/src/form/TextFieldContainer.tsx.html +28 -10
  306. package/coverage/lcov-report/src/form/TextFieldContainerStyles.ts.html +24 -15
  307. package/coverage/lcov-report/src/form/fileUtils.ts.html +3 -3
  308. package/coverage/lcov-report/src/form/formConfig.ts.html +18 -18
  309. package/coverage/lcov-report/src/form/formMessageStyles.ts.html +40 -40
  310. package/coverage/lcov-report/src/form/index.html +37 -127
  311. package/coverage/lcov-report/src/form/inputToggleStyles.ts.html +30 -30
  312. package/coverage/lcov-report/src/form/menuItemInputToggleStyles.ts.html +319 -0
  313. package/coverage/lcov-report/src/form/nativeSelectStyles.ts.html +34 -7
  314. package/coverage/lcov-report/src/form/optionStyles.ts.html +1 -1
  315. package/coverage/lcov-report/src/form/passwordStyles.ts.html +1 -1
  316. package/coverage/lcov-report/src/form/selectStyles.ts.html +1 -1
  317. package/coverage/lcov-report/src/form/selectUtils.ts.html +6 -9
  318. package/coverage/lcov-report/src/form/sliderUtils.ts.html +20 -14
  319. package/coverage/lcov-report/src/form/switchStyles.ts.html +68 -68
  320. package/coverage/lcov-report/src/form/textAreaStyles.ts.html +5 -5
  321. package/coverage/lcov-report/src/form/textFieldStyles.ts.html +1 -1
  322. package/coverage/lcov-report/src/form/useAutoComplete.ts.html +787 -0
  323. package/coverage/lcov-report/src/form/useCheckboxGroup.ts.html +2 -2
  324. package/coverage/lcov-report/src/form/useCombobox.ts.html +943 -457
  325. package/coverage/lcov-report/src/form/useEditableCombobox.ts.html +502 -0
  326. package/coverage/lcov-report/src/form/useFileUpload.ts.html +28 -19
  327. package/coverage/lcov-report/src/form/useInlineAutoComplete.ts.html +109 -0
  328. package/coverage/lcov-report/src/form/useListboxProvider.ts.html +5 -8
  329. package/coverage/lcov-report/src/form/useNumberField.ts.html +10 -10
  330. package/coverage/lcov-report/src/form/useRadioGroup.ts.html +68 -53
  331. package/coverage/lcov-report/src/form/useRangeSlider.ts.html +3 -3
  332. package/coverage/lcov-report/src/form/useResizingTextArea.ts.html +634 -0
  333. package/coverage/lcov-report/src/form/useSelectCombobox.ts.html +295 -0
  334. package/coverage/lcov-report/src/form/useSlider.ts.html +2 -2
  335. package/coverage/lcov-report/src/form/useTextField.ts.html +32 -26
  336. package/coverage/lcov-report/src/form/utils.ts.html +200 -170
  337. package/coverage/lcov-report/src/form/validation.ts.html +2 -2
  338. package/coverage/lcov-report/src/hoverMode/index.html +1 -1
  339. package/coverage/lcov-report/src/hoverMode/useHoverMode.ts.html +104 -104
  340. package/coverage/lcov-report/src/hoverMode/useHoverModeProvider.ts.html +19 -19
  341. package/coverage/lcov-report/src/icon/FontIcon.tsx.html +34 -43
  342. package/coverage/lcov-report/src/icon/IconRotator.tsx.html +5 -8
  343. package/coverage/lcov-report/src/icon/MaterialIcon.tsx.html +36 -42
  344. package/coverage/lcov-report/src/icon/MaterialSymbol.tsx.html +240 -222
  345. package/coverage/lcov-report/src/icon/SVGIcon.tsx.html +1 -1
  346. package/coverage/lcov-report/src/icon/TextIconSpacing.tsx.html +51 -51
  347. package/coverage/lcov-report/src/icon/iconConfig.tsx.html +973 -0
  348. package/coverage/lcov-report/src/icon/index.html +12 -12
  349. package/coverage/lcov-report/src/icon/material.ts.html +748 -58
  350. package/coverage/lcov-report/src/icon/materialConfig.ts.html +703 -0
  351. package/coverage/lcov-report/src/icon/styles.ts.html +47 -110
  352. package/coverage/lcov-report/src/index.html +10 -10
  353. package/coverage/lcov-report/src/interaction/Ripple.tsx.html +60 -60
  354. package/coverage/lcov-report/src/interaction/RippleContainer.tsx.html +41 -47
  355. package/coverage/lcov-report/src/interaction/UserInteractionModeProvider.tsx.html +240 -240
  356. package/coverage/lcov-report/src/interaction/config.ts.html +7 -7
  357. package/coverage/lcov-report/src/interaction/index.html +100 -10
  358. package/coverage/lcov-report/src/interaction/useElementInteraction.tsx.html +146 -146
  359. package/coverage/lcov-report/src/interaction/useHigherContrastChildren.tsx.html +19 -19
  360. package/coverage/lcov-report/src/interaction/utils.ts.html +171 -171
  361. package/coverage/lcov-report/src/layout/LayoutAppBar.tsx.html +1 -1
  362. package/coverage/lcov-report/src/layout/LayoutNav.tsx.html +1 -1
  363. package/coverage/lcov-report/src/layout/LayoutWindowSplitter.tsx.html +1 -1
  364. package/coverage/lcov-report/src/layout/Main.tsx.html +1 -1
  365. package/coverage/lcov-report/src/layout/index.html +203 -8
  366. package/coverage/lcov-report/src/layout/layoutNavStyles.ts.html +1 -1
  367. package/coverage/lcov-report/src/layout/layoutWindowSplitterStyles.ts.html +1 -1
  368. package/coverage/lcov-report/src/layout/mainStyles.ts.html +1 -1
  369. package/coverage/lcov-report/src/layout/useExpandableLayout.ts.html +1 -1
  370. package/coverage/lcov-report/src/layout/useHorizontalLayoutTransition.ts.html +1 -1
  371. package/coverage/lcov-report/src/layout/useLayoutAppBarHeight.ts.html +20 -32
  372. package/coverage/lcov-report/src/layout/useLayoutTree.ts.html +1 -1
  373. package/coverage/lcov-report/src/layout/useLayoutWindowSplitter.ts.html +1 -1
  374. package/coverage/lcov-report/src/layout/useMainTabIndex.ts.html +1 -1
  375. package/coverage/lcov-report/src/layout/useResizableLayout.ts.html +1 -1
  376. package/coverage/lcov-report/src/layout/useTemporaryLayout.ts.html +3 -3
  377. package/coverage/lcov-report/src/link/Link.tsx.html +39 -9
  378. package/coverage/lcov-report/src/link/SkipToMainContent.tsx.html +1 -1
  379. package/coverage/lcov-report/src/link/index.html +16 -16
  380. package/coverage/lcov-report/src/link/styles.ts.html +1 -1
  381. package/coverage/lcov-report/src/list/List.tsx.html +33 -33
  382. package/coverage/lcov-report/src/list/ListItem.tsx.html +555 -534
  383. package/coverage/lcov-report/src/list/ListItemAddon.tsx.html +45 -39
  384. package/coverage/lcov-report/src/list/ListItemChildren.tsx.html +88 -82
  385. package/coverage/lcov-report/src/list/ListItemLink.tsx.html +6 -6
  386. package/coverage/lcov-report/src/list/ListItemText.tsx.html +35 -35
  387. package/coverage/lcov-report/src/list/ListSubheader.tsx.html +1 -1
  388. package/coverage/lcov-report/src/list/getListItemHeight.ts.html +43 -46
  389. package/coverage/lcov-report/src/list/index.html +128 -8
  390. package/coverage/lcov-report/src/list/listItemStyles.ts.html +102 -72
  391. package/coverage/lcov-report/src/media-queries/AppSizeProvider.tsx.html +59 -59
  392. package/coverage/lcov-report/src/media-queries/appSize.ts.html +1 -1
  393. package/coverage/lcov-report/src/media-queries/index.html +20 -5
  394. package/coverage/lcov-report/src/media-queries/useMediaQuery.ts.html +28 -28
  395. package/coverage/lcov-report/src/menu/DropdownMenu.tsx.html +73 -16
  396. package/coverage/lcov-report/src/menu/Menu.tsx.html +66 -33
  397. package/coverage/lcov-report/src/menu/MenuBar.tsx.html +1 -1
  398. package/coverage/lcov-report/src/menu/MenuButton.tsx.html +3 -3
  399. package/coverage/lcov-report/src/menu/MenuConfigurationProvider.tsx.html +1 -1
  400. package/coverage/lcov-report/src/menu/MenuItem.tsx.html +1 -1
  401. package/coverage/lcov-report/src/menu/MenuItemButton.tsx.html +3 -3
  402. package/coverage/lcov-report/src/menu/MenuItemCircularProgress.tsx.html +433 -0
  403. package/coverage/lcov-report/src/menu/MenuItemGroup.tsx.html +1 -1
  404. package/coverage/lcov-report/src/menu/MenuItemSeparator.tsx.html +6 -36
  405. package/coverage/lcov-report/src/menu/MenuSheet.tsx.html +34 -7
  406. package/coverage/lcov-report/src/menu/MenuVisibilityProvider.tsx.html +1 -1
  407. package/coverage/lcov-report/src/menu/MenuWidget.tsx.html +1 -1
  408. package/coverage/lcov-report/src/menu/MenuWidgetKeyboardProvider.tsx.html +1 -1
  409. package/coverage/lcov-report/src/menu/index.html +13 -193
  410. package/coverage/lcov-report/src/menu/useContextMenu.ts.html +1 -1
  411. package/coverage/lcov-report/src/menu/useMenuBarProvider.ts.html +1 -1
  412. package/coverage/lcov-report/src/menu/utils.ts.html +10 -10
  413. package/coverage/lcov-report/src/movement/constants.ts.html +1 -1
  414. package/coverage/lcov-report/src/movement/findMatchIndex.ts.html +1 -1
  415. package/coverage/lcov-report/src/movement/index.html +20 -20
  416. package/coverage/lcov-report/src/movement/useKeyboardMovementProvider.ts.html +92 -92
  417. package/coverage/lcov-report/src/movement/utils.ts.html +143 -119
  418. package/coverage/lcov-report/src/overlay/Overlay.tsx.html +64 -64
  419. package/coverage/lcov-report/src/overlay/index.html +1 -1
  420. package/coverage/lcov-report/src/overlay/overlayStyles.ts.html +28 -28
  421. package/coverage/lcov-report/src/portal/Portal.tsx.html +9 -9
  422. package/coverage/lcov-report/src/portal/PortalContainerProvider.tsx.html +59 -35
  423. package/coverage/lcov-report/src/portal/index.html +23 -8
  424. package/coverage/lcov-report/src/positioning/constants.ts.html +1 -1
  425. package/coverage/lcov-report/src/positioning/createHorizontalPosition.ts.html +63 -63
  426. package/coverage/lcov-report/src/positioning/createVerticalPosition.ts.html +65 -65
  427. package/coverage/lcov-report/src/positioning/getFixedPosition.ts.html +94 -94
  428. package/coverage/lcov-report/src/positioning/index.html +70 -10
  429. package/coverage/lcov-report/src/positioning/useFixedPositioning.ts.html +200 -200
  430. package/coverage/lcov-report/src/positioning/utils.ts.html +111 -111
  431. package/coverage/lcov-report/src/progress/CircularProgress.tsx.html +501 -456
  432. package/coverage/lcov-report/src/progress/LinearProgress.tsx.html +419 -338
  433. package/coverage/lcov-report/src/progress/getProgressA11y.ts.html +1 -1
  434. package/coverage/lcov-report/src/progress/index.html +47 -32
  435. package/coverage/lcov-report/src/responsive-item/ResponsiveItemContainer.tsx.html +1 -1
  436. package/coverage/lcov-report/src/responsive-item/ResponsiveItemOverlay.tsx.html +1 -1
  437. package/coverage/lcov-report/src/responsive-item/index.html +20 -5
  438. package/coverage/lcov-report/src/responsive-item/styles.ts.html +1 -1
  439. package/coverage/lcov-report/src/scroll/ScrollLock.tsx.html +1 -1
  440. package/coverage/lcov-report/src/scroll/getScrollbarWidth.ts.html +25 -25
  441. package/coverage/lcov-report/src/scroll/index.html +5 -5
  442. package/coverage/lcov-report/src/scroll/useScrollLock.ts.html +27 -27
  443. package/coverage/lcov-report/src/segmented-button/SegmentedButton.tsx.html +4 -4
  444. package/coverage/lcov-report/src/segmented-button/SegmentedButtonContainer.tsx.html +29 -8
  445. package/coverage/lcov-report/src/segmented-button/index.html +50 -5
  446. package/coverage/lcov-report/src/segmented-button/segmentedButtonContainerStyles.ts.html +15 -6
  447. package/coverage/lcov-report/src/segmented-button/segmentedButtonStyles.ts.html +1 -1
  448. package/coverage/lcov-report/src/sheet/Sheet.tsx.html +1 -1
  449. package/coverage/lcov-report/src/sheet/index.html +20 -5
  450. package/coverage/lcov-report/src/sheet/styles.ts.html +18 -21
  451. package/coverage/lcov-report/src/snackbar/DefaultToastRenderer.tsx.html +87 -84
  452. package/coverage/lcov-report/src/snackbar/Snackbar.tsx.html +24 -174
  453. package/coverage/lcov-report/src/snackbar/Toast.tsx.html +109 -94
  454. package/coverage/lcov-report/src/snackbar/ToastActionButton.tsx.html +1 -1
  455. package/coverage/lcov-report/src/snackbar/ToastCloseButton.tsx.html +3 -3
  456. package/coverage/lcov-report/src/snackbar/ToastContent.tsx.html +54 -162
  457. package/coverage/lcov-report/src/snackbar/ToastManager.tsx.html +1786 -0
  458. package/coverage/lcov-report/src/snackbar/ToastManagerProvider.tsx.html +21 -1701
  459. package/coverage/lcov-report/src/snackbar/index.html +163 -13
  460. package/coverage/lcov-report/src/snackbar/snackbarStyles.ts.html +214 -0
  461. package/coverage/lcov-report/src/snackbar/toastContentStyles.ts.html +196 -0
  462. package/coverage/lcov-report/src/snackbar/toastStyles.ts.html +27 -27
  463. package/coverage/lcov-report/src/snackbar/useCurrentToastActions.ts.html +1 -1
  464. package/coverage/lcov-report/src/suspense/CircularProgressSuspense.tsx.html +159 -108
  465. package/coverage/lcov-report/src/suspense/NullSuspense.tsx.html +88 -88
  466. package/coverage/lcov-report/src/suspense/index.html +32 -32
  467. package/coverage/lcov-report/src/table/Table.tsx.html +45 -114
  468. package/coverage/lcov-report/src/table/TableBody.tsx.html +43 -43
  469. package/coverage/lcov-report/src/table/TableCell.tsx.html +115 -319
  470. package/coverage/lcov-report/src/table/TableCellContent.tsx.html +82 -28
  471. package/coverage/lcov-report/src/table/TableCheckbox.tsx.html +16 -10
  472. package/coverage/lcov-report/src/table/TableConfigurationProvider.tsx.html +25 -31
  473. package/coverage/lcov-report/src/table/TableContainer.tsx.html +7 -28
  474. package/coverage/lcov-report/src/table/TableContainerProvider.tsx.html +1 -1
  475. package/coverage/lcov-report/src/table/TableFooter.tsx.html +64 -43
  476. package/coverage/lcov-report/src/table/TableHeader.tsx.html +41 -92
  477. package/coverage/lcov-report/src/table/TableRadio.tsx.html +676 -0
  478. package/coverage/lcov-report/src/table/TableRow.tsx.html +38 -119
  479. package/coverage/lcov-report/src/table/index.html +226 -16
  480. package/coverage/lcov-report/src/table/tableCellStyles.ts.html +334 -0
  481. package/coverage/lcov-report/src/table/tableContainerStyles.ts.html +142 -0
  482. package/coverage/lcov-report/src/table/tableFooterStyles.ts.html +166 -0
  483. package/coverage/lcov-report/src/table/tableHeaderStyles.ts.html +172 -0
  484. package/coverage/lcov-report/src/table/tableRowStyles.ts.html +169 -0
  485. package/coverage/lcov-report/src/table/tableStyles.ts.html +157 -0
  486. package/coverage/lcov-report/src/tabs/Tab.tsx.html +263 -143
  487. package/coverage/lcov-report/src/tabs/TabList.tsx.html +92 -92
  488. package/coverage/lcov-report/src/tabs/TabListScrollButton.tsx.html +61 -61
  489. package/coverage/lcov-report/src/tabs/index.html +148 -13
  490. package/coverage/lcov-report/src/tabs/tabIndicatorStyles.ts.html +187 -0
  491. package/coverage/lcov-report/src/tabs/tabListScrollButtonStyles.ts.html +226 -0
  492. package/coverage/lcov-report/src/tabs/tabListStyles.ts.html +241 -0
  493. package/coverage/lcov-report/src/tabs/tabStyles.ts.html +64 -28
  494. package/coverage/lcov-report/src/tabs/useTabList.ts.html +115 -109
  495. package/coverage/lcov-report/src/tabs/useTabs.ts.html +54 -54
  496. package/coverage/lcov-report/src/tabs/utils.ts.html +3 -3
  497. package/coverage/lcov-report/src/test-utils/IntersectionObserver.ts.html +1 -1
  498. package/coverage/lcov-report/src/test-utils/ResizeObserver.ts.html +402 -261
  499. package/coverage/lcov-report/src/test-utils/data-testid.ts.html +112 -0
  500. package/coverage/lcov-report/src/test-utils/drag.ts.html +1 -1
  501. package/coverage/lcov-report/src/test-utils/index.html +7 -7
  502. package/coverage/lcov-report/src/test-utils/jest-setup.ts.html +21 -9
  503. package/coverage/lcov-report/src/test-utils/matchMedia.ts.html +55 -55
  504. package/coverage/lcov-report/src/test-utils/polyfills/IntersectionObserver.ts.html +4 -4
  505. package/coverage/lcov-report/src/test-utils/polyfills/ResizeObserver.ts.html +3 -3
  506. package/coverage/lcov-report/src/test-utils/polyfills/TextDecoder.ts.html +106 -0
  507. package/coverage/lcov-report/src/test-utils/polyfills/TextEncoder.ts.html +100 -0
  508. package/coverage/lcov-report/src/test-utils/polyfills/index.html +1 -1
  509. package/coverage/lcov-report/src/test-utils/polyfills/matchMedia.ts.html +6 -6
  510. package/coverage/lcov-report/src/test-utils/polyfills/offsetParent.ts.html +14 -14
  511. package/coverage/lcov-report/src/test-utils/polyfills/scrollIntoView.ts.html +5 -5
  512. package/coverage/lcov-report/src/test-utils/render.tsx.html +21 -21
  513. package/coverage/lcov-report/src/test-utils/root-html-environment.ts.html +85 -0
  514. package/coverage/lcov-report/src/test-utils/timers.ts.html +1 -1
  515. package/coverage/lcov-report/src/theme/LocalStorageColorSchemeProvider.tsx.html +1 -1
  516. package/coverage/lcov-report/src/theme/ThemeProvider.tsx.html +22 -4
  517. package/coverage/lcov-report/src/theme/colors.ts.html +1 -1
  518. package/coverage/lcov-report/src/theme/cssVars.ts.html +1 -1
  519. package/coverage/lcov-report/src/theme/index.html +71 -11
  520. package/coverage/lcov-report/src/theme/useCSSVariables.ts.html +25 -25
  521. package/coverage/lcov-report/src/theme/useColorScheme.ts.html +1 -1
  522. package/coverage/lcov-report/src/theme/useColorSchemeMetaTag.ts.html +1 -1
  523. package/coverage/lcov-report/src/theme/useColorSchemeProvider.ts.html +1 -1
  524. package/coverage/lcov-report/src/theme/usePrefersColorScheme.ts.html +1 -1
  525. package/coverage/lcov-report/src/theme/utils.ts.html +58 -58
  526. package/coverage/lcov-report/src/tooltip/Tooltip.tsx.html +98 -74
  527. package/coverage/lcov-report/src/tooltip/TooltipHoverModeProvider.tsx.html +60 -6
  528. package/coverage/lcov-report/src/tooltip/constants.ts.html +1 -1
  529. package/coverage/lcov-report/src/tooltip/index.html +72 -27
  530. package/coverage/lcov-report/src/tooltip/tooltipStyles.ts.html +18 -18
  531. package/coverage/lcov-report/src/tooltip/useOverflowTooltip.ts.html +196 -196
  532. package/coverage/lcov-report/src/tooltip/useTooltip.ts.html +555 -234
  533. package/coverage/lcov-report/src/tooltip/useTooltipPosition.ts.html +29 -29
  534. package/coverage/lcov-report/src/tooltip/utils.ts.html +24 -24
  535. package/coverage/lcov-report/src/transition/CSSTransition.tsx.html +1 -1
  536. package/coverage/lcov-report/src/transition/Collapse.tsx.html +1 -1
  537. package/coverage/lcov-report/src/transition/CrossFade.tsx.html +1 -1
  538. package/coverage/lcov-report/src/transition/ScaleTransition.tsx.html +1 -1
  539. package/coverage/lcov-report/src/transition/SkeletonPlaceholder.tsx.html +374 -338
  540. package/coverage/lcov-report/src/transition/Slide.tsx.html +46 -46
  541. package/coverage/lcov-report/src/transition/SlideContainer.tsx.html +1 -1
  542. package/coverage/lcov-report/src/transition/collapseStyles.ts.html +13 -13
  543. package/coverage/lcov-report/src/transition/config.ts.html +187 -0
  544. package/coverage/lcov-report/src/transition/index.html +311 -11
  545. package/coverage/lcov-report/src/transition/maxWidthTransition.ts.html +1 -1
  546. package/coverage/lcov-report/src/transition/skeletonPlaceholderUtils.ts.html +400 -0
  547. package/coverage/lcov-report/src/transition/useCSSTransition.ts.html +69 -69
  548. package/coverage/lcov-report/src/transition/useCarousel.ts.html +1 -1
  549. package/coverage/lcov-report/src/transition/useCollapseTransition.ts.html +108 -162
  550. package/coverage/lcov-report/src/transition/useCrossFadeTransition.ts.html +1 -1
  551. package/coverage/lcov-report/src/transition/useMaxWidthTransition.ts.html +1 -1
  552. package/coverage/lcov-report/src/transition/useScaleTransition.ts.html +18 -18
  553. package/coverage/lcov-report/src/transition/useSkeletonPlaceholder.ts.html +607 -562
  554. package/coverage/lcov-report/src/transition/useSlideTransition.ts.html +20 -20
  555. package/coverage/lcov-report/src/transition/useTransition.ts.html +277 -250
  556. package/coverage/lcov-report/src/transition/utils.ts.html +70 -70
  557. package/coverage/lcov-report/src/tree/DefaultTreeItemRenderer.tsx.html +19 -7
  558. package/coverage/lcov-report/src/tree/Tree.tsx.html +30 -30
  559. package/coverage/lcov-report/src/tree/TreeGroup.tsx.html +45 -45
  560. package/coverage/lcov-report/src/tree/TreeItem.tsx.html +215 -221
  561. package/coverage/lcov-report/src/tree/TreeItemExpander.tsx.html +3 -3
  562. package/coverage/lcov-report/src/tree/TreeProvider.tsx.html +29 -11
  563. package/coverage/lcov-report/src/tree/index.html +19 -94
  564. package/coverage/lcov-report/src/tree/styles.ts.html +4 -31
  565. package/coverage/lcov-report/src/tree/useTree.ts.html +1 -1
  566. package/coverage/lcov-report/src/tree/useTreeExpansion.ts.html +1 -1
  567. package/coverage/lcov-report/src/tree/useTreeItems.ts.html +10 -13
  568. package/coverage/lcov-report/src/tree/useTreeMovement.ts.html +87 -87
  569. package/coverage/lcov-report/src/tree/useTreeSelection.ts.html +1 -1
  570. package/coverage/lcov-report/src/tree/utils.ts.html +1 -1
  571. package/coverage/lcov-report/src/typography/SrOnly.tsx.html +38 -38
  572. package/coverage/lcov-report/src/typography/TextContainer.tsx.html +1 -1
  573. package/coverage/lcov-report/src/typography/Typography.tsx.html +94 -94
  574. package/coverage/lcov-report/src/typography/WritingDirectionProvider.tsx.html +75 -75
  575. package/coverage/lcov-report/src/typography/index.html +64 -19
  576. package/coverage/lcov-report/src/useAsyncAction.ts.html +25 -25
  577. package/coverage/lcov-report/src/useDebouncedFunction.ts.html +246 -240
  578. package/coverage/lcov-report/src/useDropzone.ts.html +1 -1
  579. package/coverage/lcov-report/src/useElementSize.ts.html +334 -0
  580. package/coverage/lcov-report/src/useEnsuredId.ts.html +8 -8
  581. package/coverage/lcov-report/src/useEnsuredRef.ts.html +22 -19
  582. package/coverage/lcov-report/src/useEnsuredState.ts.html +19 -19
  583. package/coverage/lcov-report/src/useHtmlClassName.ts.html +1 -1
  584. package/coverage/lcov-report/src/useIntersectionObserver.ts.html +32 -32
  585. package/coverage/lcov-report/src/useIsomorphicLayoutEffect.ts.html +1 -1
  586. package/coverage/lcov-report/src/useLocalStorage.ts.html +225 -225
  587. package/coverage/lcov-report/src/useOrientation.ts.html +32 -32
  588. package/coverage/lcov-report/src/usePageInactive.ts.html +30 -30
  589. package/coverage/lcov-report/src/useResizeListener.ts.html +38 -32
  590. package/coverage/lcov-report/src/useResizeObserver.ts.html +133 -244
  591. package/coverage/lcov-report/src/useThrottledFunction.ts.html +57 -51
  592. package/coverage/lcov-report/src/useToggle.ts.html +18 -18
  593. package/coverage/lcov-report/src/useUnmounted.ts.html +11 -11
  594. package/coverage/lcov-report/src/useWindowSize.ts.html +124 -94
  595. package/coverage/lcov-report/src/utils/RenderRecursively.tsx.html +1 -1
  596. package/coverage/lcov-report/src/utils/alphaNumericSort.ts.html +1 -1
  597. package/coverage/lcov-report/src/utils/applyRef.ts.html +11 -11
  598. package/coverage/lcov-report/src/utils/bem.ts.html +50 -50
  599. package/coverage/lcov-report/src/utils/filters.ts.html +357 -84
  600. package/coverage/lcov-report/src/utils/getClientPosition.ts.html +1 -1
  601. package/coverage/lcov-report/src/utils/getMiddleOfRange.ts.html +163 -0
  602. package/coverage/lcov-report/src/utils/getPercentage.ts.html +36 -36
  603. package/coverage/lcov-report/src/utils/getRangeDefaultValue.ts.html +66 -87
  604. package/coverage/lcov-report/src/utils/getRangeSteps.ts.html +7 -7
  605. package/coverage/lcov-report/src/utils/identity.ts.html +1 -1
  606. package/coverage/lcov-report/src/utils/index.html +14 -59
  607. package/coverage/lcov-report/src/utils/isElementVisible.ts.html +14 -14
  608. package/coverage/lcov-report/src/utils/isValidNumber.ts.html +118 -0
  609. package/coverage/lcov-report/src/utils/loop.ts.html +1 -1
  610. package/coverage/lcov-report/src/utils/nearest.ts.html +21 -21
  611. package/coverage/lcov-report/src/utils/parseCssLengthUnit.ts.html +41 -41
  612. package/coverage/lcov-report/src/utils/randomInt.ts.html +52 -52
  613. package/coverage/lcov-report/src/utils/wait.ts.html +1 -1
  614. package/coverage/lcov-report/src/utils/withinRange.ts.html +1 -1
  615. package/coverage/lcov-report/src/window-splitter/WindowSplitter.tsx.html +1 -1
  616. package/coverage/lcov-report/src/window-splitter/index.html +14 -14
  617. package/coverage/lcov-report/src/window-splitter/useWindowSplitter.ts.html +19 -67
  618. package/coverage/lcov-report/src/window-splitter/useWindowSplitterMaxValue.ts.html +256 -0
  619. package/coverage/lcov-report/styles.ts.html +134 -320
  620. package/coverage/lcov-report/suspense/CircularProgressSuspense.tsx.html +283 -0
  621. package/coverage/lcov-report/suspense/NullSuspense.tsx.html +202 -0
  622. package/coverage/lcov-report/suspense/index.html +131 -0
  623. package/coverage/lcov-report/switchStyles.ts.html +172 -0
  624. package/coverage/lcov-report/tabIndicatorStyles.ts.html +43 -13
  625. package/coverage/lcov-report/tabListStyles.ts.html +35 -26
  626. package/coverage/lcov-report/tabStyles.ts.html +68 -26
  627. package/coverage/lcov-report/table/Table.tsx.html +526 -0
  628. package/coverage/lcov-report/table/TableBody.tsx.html +280 -0
  629. package/coverage/lcov-report/table/TableCell.tsx.html +159 -168
  630. package/coverage/lcov-report/table/TableCheckbox.tsx.html +10 -13
  631. package/coverage/lcov-report/table/TableRadio.tsx.html +670 -0
  632. package/coverage/lcov-report/table/TableRow.tsx.html +370 -0
  633. package/coverage/lcov-report/table/index.html +62 -32
  634. package/coverage/lcov-report/tableCellStyles.ts.html +334 -0
  635. package/coverage/lcov-report/tableContainerStyles.ts.html +142 -0
  636. package/coverage/lcov-report/tableFooterStyles.ts.html +157 -0
  637. package/coverage/lcov-report/tableHeaderStyles.ts.html +163 -0
  638. package/coverage/lcov-report/tableRowStyles.ts.html +169 -0
  639. package/coverage/lcov-report/tableStyles.ts.html +157 -0
  640. package/coverage/lcov-report/tabs/Tab.tsx.html +592 -0
  641. package/coverage/lcov-report/tabs/TabList.tsx.html +796 -0
  642. package/coverage/lcov-report/tabs/index.html +107 -17
  643. package/coverage/lcov-report/tabs/tabIndicatorStyles.ts.html +187 -0
  644. package/coverage/lcov-report/tabs/tabListStyles.ts.html +241 -0
  645. package/coverage/lcov-report/tabs/tabStyles.ts.html +253 -0
  646. package/coverage/lcov-report/tabs/useTabList.ts.html +736 -0
  647. package/coverage/lcov-report/tabs/useTabs.ts.html +1567 -0
  648. package/coverage/lcov-report/tabs/utils.ts.html +337 -0
  649. package/coverage/lcov-report/test-utils/index.html +21 -21
  650. package/coverage/lcov-report/test-utils/jest-setup.ts.html +124 -0
  651. package/coverage/lcov-report/test-utils/use.ts.html +187 -0
  652. package/coverage/lcov-report/tooltip/Tooltip.tsx.html +98 -74
  653. package/coverage/lcov-report/tooltip/TooltipHoverModeProvider.tsx.html +167 -11
  654. package/coverage/lcov-report/tooltip/constants.ts.html +1 -1
  655. package/coverage/lcov-report/tooltip/index.html +11 -56
  656. package/coverage/lcov-report/tooltip/tooltipStyles.ts.html +181 -0
  657. package/coverage/lcov-report/tooltip/useTooltip.ts.html +555 -234
  658. package/coverage/lcov-report/tooltipStyles.ts.html +181 -0
  659. package/coverage/lcov-report/transition/SkeletonPlaceholder.tsx.html +595 -0
  660. package/coverage/lcov-report/transition/config.ts.html +187 -0
  661. package/coverage/lcov-report/transition/index.html +9 -24
  662. package/coverage/lcov-report/transition/skeletonPlaceholderUtils.ts.html +400 -0
  663. package/coverage/lcov-report/transition/useScaleTransition.ts.html +535 -0
  664. package/coverage/lcov-report/transition/useSkeletonPlaceholder.ts.html +952 -0
  665. package/coverage/lcov-report/transition/useTransition.ts.html +943 -0
  666. package/coverage/lcov-report/tree/Tree.tsx.html +24 -36
  667. package/coverage/lcov-report/tree/TreeItem.tsx.html +215 -221
  668. package/coverage/lcov-report/tree/TreeProvider.tsx.html +55 -10
  669. package/coverage/lcov-report/tree/index.html +19 -94
  670. package/coverage/lcov-report/tree/styles.ts.html +538 -0
  671. package/coverage/lcov-report/tree/useTreeMovement.ts.html +140 -143
  672. package/coverage/lcov-report/typography/Typography.tsx.html +138 -432
  673. package/coverage/lcov-report/typography/WritingDirectionProvider.tsx.html +781 -0
  674. package/coverage/lcov-report/typography/index.html +18 -18
  675. package/coverage/lcov-report/useAutoComplete.ts.html +787 -0
  676. package/coverage/lcov-report/useCollapseTransition.ts.html +166 -211
  677. package/coverage/lcov-report/useCombobox.ts.html +1513 -0
  678. package/coverage/lcov-report/useInlineAutoComplete.ts.html +379 -0
  679. package/coverage/lcov-report/useSelectCombobox.ts.html +295 -0
  680. package/coverage/lcov-report/useSkeletonPlaceholder.ts.html +952 -0
  681. package/coverage/lcov-report/useTabList.ts.html +142 -136
  682. package/coverage/lcov-report/useTooltip.ts.html +651 -375
  683. package/coverage/lcov-report/useTransition.ts.html +934 -0
  684. package/coverage/lcov-report/useWindowSplitter.ts.html +640 -0
  685. package/coverage/lcov-report/useWindowSplitterMaxValue.ts.html +256 -0
  686. package/coverage/lcov-report/utils/alphaNumericSort.ts.html +11 -50
  687. package/coverage/lcov-report/utils/filters.ts.html +1056 -201
  688. package/coverage/lcov-report/utils/index.html +13 -43
  689. package/coverage/lcov-report/utils/isElementVisible.ts.html +12 -12
  690. package/coverage/lcov-report/utils/parseCssLengthUnit.ts.html +19 -19
  691. package/coverage/lcov-report/utils/randomInt.ts.html +148 -0
  692. package/coverage/lcov-report/utils/searching.ts.html +85 -0
  693. package/coverage/lcov-report/utils/wait.ts.html +1 -1
  694. package/coverage/lcov-report/utils.ts.html +109 -277
  695. package/coverage/lcov-report/window-splitter/index.html +21 -36
  696. package/coverage/lcov-report/window-splitter/useWindowSplitter.ts.html +406 -328
  697. package/coverage/lcov.info +0 -1176
  698. package/dist/RootHtml.d.ts +62 -0
  699. package/dist/RootHtml.js +49 -0
  700. package/dist/RootHtml.js.map +1 -0
  701. package/dist/_box-shadows.scss +12 -2
  702. package/dist/_core.scss +208 -250
  703. package/dist/_utils.scss +89 -0
  704. package/dist/app-bar/AppBar.d.ts +4 -9
  705. package/dist/app-bar/AppBar.js +29 -7
  706. package/dist/app-bar/AppBar.js.map +1 -1
  707. package/dist/app-bar/_app-bar.scss +114 -122
  708. package/dist/avatar/Avatar.d.ts +16 -15
  709. package/dist/avatar/Avatar.js +7 -3
  710. package/dist/avatar/Avatar.js.map +1 -1
  711. package/dist/avatar/_avatar.scss +79 -84
  712. package/dist/avatar/styles.d.ts +20 -2
  713. package/dist/avatar/styles.js +4 -1
  714. package/dist/avatar/styles.js.map +1 -1
  715. package/dist/badge/_badge.scss +97 -59
  716. package/dist/box/_box.scss +72 -81
  717. package/dist/button/AsyncButton.d.ts +29 -0
  718. package/dist/button/AsyncButton.js +14 -1
  719. package/dist/button/AsyncButton.js.map +1 -1
  720. package/dist/button/TooltippedButton.d.ts +62 -0
  721. package/dist/button/TooltippedButton.js +62 -0
  722. package/dist/button/TooltippedButton.js.map +1 -0
  723. package/dist/button/_button.scss +170 -180
  724. package/dist/card/Card.js +3 -2
  725. package/dist/card/Card.js.map +1 -1
  726. package/dist/card/CardContent.js +1 -1
  727. package/dist/card/CardContent.js.map +1 -1
  728. package/dist/card/ClickableCard.d.ts +42 -0
  729. package/dist/card/ClickableCard.js +73 -0
  730. package/dist/card/ClickableCard.js.map +1 -0
  731. package/dist/card/_card.scss +81 -82
  732. package/dist/card/styles.d.ts +8 -0
  733. package/dist/card/styles.js +6 -3
  734. package/dist/card/styles.js.map +1 -1
  735. package/dist/chip/_chip.scss +136 -163
  736. package/dist/chip/styles.d.ts +1 -1
  737. package/dist/chip/styles.js +3 -4
  738. package/dist/chip/styles.js.map +1 -1
  739. package/dist/cssUtils.d.ts +1 -0
  740. package/dist/cssUtils.js +1 -1
  741. package/dist/cssUtils.js.map +1 -1
  742. package/dist/dialog/Dialog.d.ts +1 -1
  743. package/dist/dialog/Dialog.js +2 -1
  744. package/dist/dialog/Dialog.js.map +1 -1
  745. package/dist/dialog/FixedDialog.d.ts +5 -4
  746. package/dist/dialog/FixedDialog.js +5 -4
  747. package/dist/dialog/FixedDialog.js.map +1 -1
  748. package/dist/dialog/_dialog.scss +179 -162
  749. package/dist/divider/Divider.d.ts +0 -1
  750. package/dist/divider/Divider.js.map +1 -1
  751. package/dist/divider/_divider.scss +61 -70
  752. package/dist/draggable/_draggable.scss +16 -12
  753. package/dist/draggable/useDraggable.d.ts +12 -23
  754. package/dist/draggable/useDraggable.js +15 -6
  755. package/dist/draggable/useDraggable.js.map +1 -1
  756. package/dist/draggable/utils.d.ts +4 -17
  757. package/dist/draggable/utils.js +9 -25
  758. package/dist/draggable/utils.js.map +1 -1
  759. package/dist/expansion-panel/_expansion-panel.scss +76 -50
  760. package/dist/expansion-panel/useExpansionPanels.d.ts +5 -3
  761. package/dist/expansion-panel/useExpansionPanels.js +16 -9
  762. package/dist/expansion-panel/useExpansionPanels.js.map +1 -1
  763. package/dist/focus/useFocusContainer.d.ts +8 -8
  764. package/dist/focus/useFocusContainer.js +11 -10
  765. package/dist/focus/useFocusContainer.js.map +1 -1
  766. package/dist/form/Form.d.ts +1 -1
  767. package/dist/form/Form.js +2 -1
  768. package/dist/form/Form.js.map +1 -1
  769. package/dist/form/Label.d.ts +5 -5
  770. package/dist/form/Label.js.map +1 -1
  771. package/dist/form/MenuItemInputToggle.d.ts +2 -15
  772. package/dist/form/MenuItemInputToggle.js +27 -38
  773. package/dist/form/MenuItemInputToggle.js.map +1 -1
  774. package/dist/form/MenuItemTextField.d.ts +2 -0
  775. package/dist/form/MenuItemTextField.js.map +1 -1
  776. package/dist/form/NativeSelect.d.ts +5 -2
  777. package/dist/form/NativeSelect.js.map +1 -1
  778. package/dist/form/Option.js +3 -2
  779. package/dist/form/Option.js.map +1 -1
  780. package/dist/form/ResizingTextAreaWrapper.d.ts +19 -0
  781. package/dist/form/ResizingTextAreaWrapper.js +35 -0
  782. package/dist/form/ResizingTextAreaWrapper.js.map +1 -0
  783. package/dist/form/Select.d.ts +105 -15
  784. package/dist/form/Select.js +160 -244
  785. package/dist/form/Select.js.map +1 -1
  786. package/dist/form/SelectedOption.d.ts +21 -0
  787. package/dist/form/SelectedOption.js +37 -0
  788. package/dist/form/SelectedOption.js.map +1 -0
  789. package/dist/form/Slider.d.ts +41 -5
  790. package/dist/form/Slider.js +2 -1
  791. package/dist/form/Slider.js.map +1 -1
  792. package/dist/form/SliderThumb.d.ts +7 -2
  793. package/dist/form/SliderThumb.js +4 -2
  794. package/dist/form/SliderThumb.js.map +1 -1
  795. package/dist/form/SliderValueMarks.js +1 -1
  796. package/dist/form/SliderValueMarks.js.map +1 -1
  797. package/dist/form/SliderValueTooltip.js +1 -1
  798. package/dist/form/SliderValueTooltip.js.map +1 -1
  799. package/dist/form/Switch.d.ts +3 -2
  800. package/dist/form/Switch.js +7 -26
  801. package/dist/form/Switch.js.map +1 -1
  802. package/dist/form/SwitchTrack.d.ts +2 -1
  803. package/dist/form/SwitchTrack.js +8 -4
  804. package/dist/form/SwitchTrack.js.map +1 -1
  805. package/dist/form/TextArea.d.ts +11 -0
  806. package/dist/form/TextArea.js +19 -29
  807. package/dist/form/TextArea.js.map +1 -1
  808. package/dist/form/TextField.d.ts +2 -2
  809. package/dist/form/TextField.js +7 -6
  810. package/dist/form/TextField.js.map +1 -1
  811. package/dist/form/TextFieldContainerStyles.d.ts +7 -7
  812. package/dist/form/TextFieldContainerStyles.js.map +1 -1
  813. package/dist/form/_form.scss +1339 -1256
  814. package/dist/form/menuItemInputToggleStyles.d.ts +39 -0
  815. package/dist/form/menuItemInputToggleStyles.js +31 -0
  816. package/dist/form/menuItemInputToggleStyles.js.map +1 -0
  817. package/dist/form/selectUtils.d.ts +1 -3
  818. package/dist/form/selectUtils.js +2 -10
  819. package/dist/form/selectUtils.js.map +1 -1
  820. package/dist/form/switchStyles.d.ts +1 -0
  821. package/dist/form/switchStyles.js +2 -1
  822. package/dist/form/switchStyles.js.map +1 -1
  823. package/dist/form/textAreaStyles.d.ts +2 -2
  824. package/dist/form/textAreaStyles.js.map +1 -1
  825. package/dist/form/types.d.ts +6 -8
  826. package/dist/form/types.js.map +1 -1
  827. package/dist/form/useCombobox.d.ts +157 -0
  828. package/dist/form/useCombobox.js +206 -0
  829. package/dist/form/useCombobox.js.map +1 -0
  830. package/dist/form/useEditableCombobox.d.ts +15 -0
  831. package/dist/form/useEditableCombobox.js +101 -0
  832. package/dist/form/useEditableCombobox.js.map +1 -0
  833. package/dist/form/useFormReset.d.ts +16 -0
  834. package/dist/form/useFormReset.js +32 -0
  835. package/dist/form/useFormReset.js.map +1 -0
  836. package/dist/form/useListboxProvider.d.ts +4 -2
  837. package/dist/form/useListboxProvider.js +6 -8
  838. package/dist/form/useListboxProvider.js.map +1 -1
  839. package/dist/form/useResizingTextArea.d.ts +5 -2
  840. package/dist/form/useResizingTextArea.js +52 -21
  841. package/dist/form/useResizingTextArea.js.map +1 -1
  842. package/dist/form/useSelectCombobox.d.ts +17 -0
  843. package/dist/form/useSelectCombobox.js +36 -0
  844. package/dist/form/useSelectCombobox.js.map +1 -0
  845. package/dist/form/utils.d.ts +11 -1
  846. package/dist/form/utils.js +6 -0
  847. package/dist/form/utils.js.map +1 -1
  848. package/dist/hoverMode/useHoverMode.d.ts +2 -2
  849. package/dist/hoverMode/useHoverMode.js +1 -1
  850. package/dist/hoverMode/useHoverMode.js.map +1 -1
  851. package/dist/icon/FontIcon.d.ts +2 -1
  852. package/dist/icon/FontIcon.js +4 -5
  853. package/dist/icon/FontIcon.js.map +1 -1
  854. package/dist/icon/IconRotator.js +2 -3
  855. package/dist/icon/IconRotator.js.map +1 -1
  856. package/dist/icon/MaterialIcon.d.ts +2 -2
  857. package/dist/icon/MaterialIcon.js +3 -6
  858. package/dist/icon/MaterialIcon.js.map +1 -1
  859. package/dist/icon/MaterialSymbol.d.ts +15 -8
  860. package/dist/icon/MaterialSymbol.js +15 -11
  861. package/dist/icon/MaterialSymbol.js.map +1 -1
  862. package/dist/icon/_icon.scss +105 -112
  863. package/dist/icon/iconConfig.js.map +1 -1
  864. package/dist/icon/material.d.ts +1 -1
  865. package/dist/icon/material.js.map +1 -1
  866. package/dist/icon/{MaterialSymbolsProvider.d.ts → materialConfig.d.ts} +25 -14
  867. package/dist/icon/materialConfig.js +29 -0
  868. package/dist/icon/materialConfig.js.map +1 -0
  869. package/dist/icon/styles.d.ts +0 -15
  870. package/dist/icon/styles.js +2 -4
  871. package/dist/icon/styles.js.map +1 -1
  872. package/dist/index.d.ts +30 -7
  873. package/dist/index.js +30 -7
  874. package/dist/index.js.map +1 -1
  875. package/dist/interaction/_interaction.scss +144 -135
  876. package/dist/layout/_layout.scss +82 -86
  877. package/dist/layout/useLayoutAppBarHeight.js +5 -9
  878. package/dist/layout/useLayoutAppBarHeight.js.map +1 -1
  879. package/dist/link/Link.d.ts +12 -6
  880. package/dist/link/Link.js +1 -2
  881. package/dist/link/Link.js.map +1 -1
  882. package/dist/link/_link.scss +74 -66
  883. package/dist/list/ListItem.d.ts +8 -3
  884. package/dist/list/ListItem.js +4 -3
  885. package/dist/list/ListItem.js.map +1 -1
  886. package/dist/list/ListItemAddon.js +2 -1
  887. package/dist/list/ListItemAddon.js.map +1 -1
  888. package/dist/list/ListItemChildren.js +3 -2
  889. package/dist/list/ListItemChildren.js.map +1 -1
  890. package/dist/list/ListItemLink.d.ts +1 -1
  891. package/dist/list/ListItemLink.js +3 -3
  892. package/dist/list/ListItemLink.js.map +1 -1
  893. package/dist/list/_list.scss +187 -184
  894. package/dist/list/getListItemHeight.d.ts +0 -1
  895. package/dist/list/getListItemHeight.js +2 -2
  896. package/dist/list/getListItemHeight.js.map +1 -1
  897. package/dist/list/listItemStyles.d.ts +9 -1
  898. package/dist/list/listItemStyles.js +5 -5
  899. package/dist/list/listItemStyles.js.map +1 -1
  900. package/dist/list/types.d.ts +25 -6
  901. package/dist/list/types.js.map +1 -1
  902. package/dist/menu/DropdownMenu.d.ts +12 -1
  903. package/dist/menu/DropdownMenu.js +13 -4
  904. package/dist/menu/DropdownMenu.js.map +1 -1
  905. package/dist/menu/Menu.d.ts +8 -0
  906. package/dist/menu/Menu.js +14 -2
  907. package/dist/menu/Menu.js.map +1 -1
  908. package/dist/menu/MenuItemCircularProgress.d.ts +60 -0
  909. package/dist/menu/MenuItemCircularProgress.js +74 -0
  910. package/dist/menu/MenuItemCircularProgress.js.map +1 -0
  911. package/dist/menu/MenuItemSeparator.d.ts +1 -2
  912. package/dist/menu/MenuItemSeparator.js +2 -8
  913. package/dist/menu/MenuItemSeparator.js.map +1 -1
  914. package/dist/menu/MenuSheet.d.ts +6 -1
  915. package/dist/menu/MenuSheet.js.map +1 -1
  916. package/dist/menu/_menu.scss +29 -50
  917. package/dist/menu/useContextMenu.d.ts +3 -3
  918. package/dist/menu/useContextMenu.js +3 -3
  919. package/dist/menu/useContextMenu.js.map +1 -1
  920. package/dist/movement/types.d.ts +40 -21
  921. package/dist/movement/types.js.map +1 -1
  922. package/dist/movement/useKeyboardMovementProvider.js +15 -4
  923. package/dist/movement/useKeyboardMovementProvider.js.map +1 -1
  924. package/dist/movement/utils.d.ts +7 -2
  925. package/dist/movement/utils.js +10 -0
  926. package/dist/movement/utils.js.map +1 -1
  927. package/dist/overlay/_overlay.scss +39 -42
  928. package/dist/portal/PortalContainerProvider.d.ts +2 -2
  929. package/dist/portal/PortalContainerProvider.js +6 -1
  930. package/dist/portal/PortalContainerProvider.js.map +1 -1
  931. package/dist/positioning/useFixedPositioning.js +0 -8
  932. package/dist/positioning/useFixedPositioning.js.map +1 -1
  933. package/dist/progress/CircularProgress.d.ts +5 -4
  934. package/dist/progress/CircularProgress.js +3 -3
  935. package/dist/progress/CircularProgress.js.map +1 -1
  936. package/dist/progress/LinearProgress.d.ts +7 -5
  937. package/dist/progress/LinearProgress.js +4 -3
  938. package/dist/progress/LinearProgress.js.map +1 -1
  939. package/dist/progress/_progress.scss +33 -33
  940. package/dist/responsive-item/_responsive-item.scss +91 -89
  941. package/dist/searching/caseInsensitive.d.ts +150 -0
  942. package/dist/searching/caseInsensitive.js +30 -0
  943. package/dist/searching/caseInsensitive.js.map +1 -0
  944. package/dist/searching/fuzzy.d.ts +128 -0
  945. package/dist/searching/fuzzy.js +54 -0
  946. package/dist/searching/fuzzy.js.map +1 -0
  947. package/dist/searching/toSearchQuery.d.ts +7 -0
  948. package/dist/searching/toSearchQuery.js +15 -0
  949. package/dist/searching/toSearchQuery.js.map +1 -0
  950. package/dist/searching/types.d.ts +28 -0
  951. package/dist/searching/types.js +5 -0
  952. package/dist/searching/types.js.map +1 -0
  953. package/dist/searching/useFuzzyMatch.d.ts +19 -0
  954. package/dist/searching/useFuzzyMatch.js +26 -0
  955. package/dist/searching/useFuzzyMatch.js.map +1 -0
  956. package/dist/searching/utils.d.ts +21 -0
  957. package/dist/searching/utils.js +28 -0
  958. package/dist/searching/utils.js.map +1 -0
  959. package/dist/segmented-button/_segmented-button.scss +89 -90
  960. package/dist/sheet/_sheet.scss +107 -123
  961. package/dist/sheet/styles.d.ts +14 -15
  962. package/dist/sheet/styles.js.map +1 -1
  963. package/dist/snackbar/DefaultToastRenderer.js +1 -1
  964. package/dist/snackbar/DefaultToastRenderer.js.map +1 -1
  965. package/dist/snackbar/Snackbar.d.ts +10 -10
  966. package/dist/snackbar/Snackbar.js +3 -3
  967. package/dist/snackbar/Snackbar.js.map +1 -1
  968. package/dist/snackbar/Toast.d.ts +1 -1
  969. package/dist/snackbar/Toast.js +5 -1
  970. package/dist/snackbar/Toast.js.map +1 -1
  971. package/dist/snackbar/ToastManager.d.ts +2 -1
  972. package/dist/snackbar/ToastManager.js +1 -1
  973. package/dist/snackbar/ToastManager.js.map +1 -1
  974. package/dist/snackbar/_snackbar.scss +148 -144
  975. package/dist/snackbar/snackbarStyles.d.ts +1 -0
  976. package/dist/snackbar/snackbarStyles.js +2 -1
  977. package/dist/snackbar/snackbarStyles.js.map +1 -1
  978. package/dist/suspense/CircularProgressSuspense.d.ts +4 -0
  979. package/dist/suspense/CircularProgressSuspense.js +3 -1
  980. package/dist/suspense/CircularProgressSuspense.js.map +1 -1
  981. package/dist/table/Table.d.ts +0 -12
  982. package/dist/table/Table.js +1 -12
  983. package/dist/table/Table.js.map +1 -1
  984. package/dist/table/TableCell.d.ts +13 -38
  985. package/dist/table/TableCell.js +7 -15
  986. package/dist/table/TableCell.js.map +1 -1
  987. package/dist/table/TableCellContent.d.ts +9 -0
  988. package/dist/table/TableCellContent.js +2 -1
  989. package/dist/table/TableCellContent.js.map +1 -1
  990. package/dist/table/TableCheckbox.d.ts +5 -4
  991. package/dist/table/TableCheckbox.js +7 -5
  992. package/dist/table/TableCheckbox.js.map +1 -1
  993. package/dist/table/TableContainer.d.ts +0 -6
  994. package/dist/table/TableContainer.js +1 -6
  995. package/dist/table/TableContainer.js.map +1 -1
  996. package/dist/table/TableFooter.d.ts +7 -1
  997. package/dist/table/TableFooter.js +17 -16
  998. package/dist/table/TableFooter.js.map +1 -1
  999. package/dist/table/TableHeader.d.ts +7 -14
  1000. package/dist/table/TableHeader.js +6 -14
  1001. package/dist/table/TableHeader.js.map +1 -1
  1002. package/dist/table/TableRadio.d.ts +107 -0
  1003. package/dist/table/TableRadio.js +108 -0
  1004. package/dist/table/TableRadio.js.map +1 -0
  1005. package/dist/table/TableRow.d.ts +0 -10
  1006. package/dist/table/TableRow.js +1 -12
  1007. package/dist/table/TableRow.js.map +1 -1
  1008. package/dist/table/_table.scss +217 -232
  1009. package/dist/table/tableCellStyles.d.ts +33 -0
  1010. package/dist/table/tableCellStyles.js +15 -0
  1011. package/dist/table/tableCellStyles.js.map +1 -0
  1012. package/dist/table/tableContainerStyles.d.ts +10 -0
  1013. package/dist/table/tableContainerStyles.js +9 -0
  1014. package/dist/table/tableContainerStyles.js.map +1 -0
  1015. package/dist/table/tableFooterStyles.d.ts +10 -0
  1016. package/dist/table/tableFooterStyles.js +12 -0
  1017. package/dist/table/tableFooterStyles.js.map +1 -0
  1018. package/dist/table/tableHeaderStyles.d.ts +10 -0
  1019. package/dist/table/tableHeaderStyles.js +13 -0
  1020. package/dist/table/tableHeaderStyles.js.map +1 -0
  1021. package/dist/table/tableRowStyles.d.ts +10 -0
  1022. package/dist/table/tableRowStyles.js +14 -0
  1023. package/dist/table/tableRowStyles.js.map +1 -0
  1024. package/dist/table/tableStyles.d.ts +12 -0
  1025. package/dist/table/tableStyles.js +14 -0
  1026. package/dist/table/tableStyles.js.map +1 -0
  1027. package/dist/table/types.d.ts +28 -15
  1028. package/dist/table/types.js.map +1 -1
  1029. package/dist/tabs/Tab.d.ts +24 -3
  1030. package/dist/tabs/Tab.js +15 -8
  1031. package/dist/tabs/Tab.js.map +1 -1
  1032. package/dist/tabs/_tabs.scss +64 -53
  1033. package/dist/tabs/tabIndicatorStyles.d.ts +2 -1
  1034. package/dist/tabs/tabIndicatorStyles.js +6 -3
  1035. package/dist/tabs/tabIndicatorStyles.js.map +1 -1
  1036. package/dist/tabs/tabListStyles.js +2 -1
  1037. package/dist/tabs/tabListStyles.js.map +1 -1
  1038. package/dist/tabs/tabStyles.d.ts +2 -0
  1039. package/dist/tabs/tabStyles.js +6 -3
  1040. package/dist/tabs/tabStyles.js.map +1 -1
  1041. package/dist/tabs/useTabList.d.ts +3 -3
  1042. package/dist/tabs/useTabList.js +9 -6
  1043. package/dist/tabs/useTabList.js.map +1 -1
  1044. package/dist/test-utils/IntersectionObserver.d.ts +12 -0
  1045. package/dist/test-utils/ResizeObserver.d.ts +214 -0
  1046. package/dist/test-utils/ResizeObserver.js +69 -49
  1047. package/dist/test-utils/ResizeObserver.js.map +1 -1
  1048. package/dist/test-utils/data-testid.d.ts +7 -0
  1049. package/dist/test-utils/data-testid.js +3 -0
  1050. package/dist/test-utils/data-testid.js.map +1 -0
  1051. package/dist/test-utils/drag.d.ts +26 -0
  1052. package/dist/test-utils/index.d.ts +7 -0
  1053. package/dist/test-utils/jest-setup.d.ts +1 -0
  1054. package/dist/test-utils/jest-setup.js +3 -0
  1055. package/dist/test-utils/jest-setup.js.map +1 -1
  1056. package/dist/test-utils/matchMedia.d.ts +101 -0
  1057. package/dist/test-utils/matchMedia.js +2 -2
  1058. package/dist/test-utils/matchMedia.js.map +1 -1
  1059. package/dist/test-utils/polyfills/IntersectionObserver.d.ts +1 -0
  1060. package/dist/test-utils/polyfills/ResizeObserver.d.ts +1 -0
  1061. package/dist/test-utils/polyfills/TextDecoder.d.ts +1 -0
  1062. package/dist/test-utils/polyfills/TextDecoder.js +8 -0
  1063. package/dist/test-utils/polyfills/TextDecoder.js.map +1 -0
  1064. package/dist/test-utils/polyfills/TextEncoder.d.ts +1 -0
  1065. package/dist/test-utils/polyfills/TextEncoder.js +6 -0
  1066. package/dist/test-utils/polyfills/TextEncoder.js.map +1 -0
  1067. package/dist/test-utils/polyfills/index.d.ts +7 -0
  1068. package/dist/test-utils/polyfills/index.js +2 -0
  1069. package/dist/test-utils/polyfills/index.js.map +1 -1
  1070. package/dist/test-utils/polyfills/matchMedia.d.ts +1 -0
  1071. package/dist/test-utils/polyfills/offsetParent.d.ts +1 -0
  1072. package/dist/test-utils/polyfills/scrollIntoView.d.ts +1 -0
  1073. package/dist/test-utils/render.d.ts +13 -0
  1074. package/dist/test-utils/timers.d.ts +39 -0
  1075. package/dist/theme/ThemeProvider.d.ts +5 -0
  1076. package/dist/theme/ThemeProvider.js.map +1 -1
  1077. package/dist/theme/_theme.scss +243 -133
  1078. package/dist/tooltip/Tooltip.d.ts +13 -6
  1079. package/dist/tooltip/Tooltip.js +2 -2
  1080. package/dist/tooltip/Tooltip.js.map +1 -1
  1081. package/dist/tooltip/TooltipHoverModeProvider.d.ts +15 -0
  1082. package/dist/tooltip/TooltipHoverModeProvider.js.map +1 -1
  1083. package/dist/tooltip/_tooltip.scss +76 -82
  1084. package/dist/tooltip/tooltipStyles.d.ts +2 -1
  1085. package/dist/tooltip/tooltipStyles.js +2 -2
  1086. package/dist/tooltip/tooltipStyles.js.map +1 -1
  1087. package/dist/tooltip/useTooltip.d.ts +83 -20
  1088. package/dist/tooltip/useTooltip.js +68 -7
  1089. package/dist/tooltip/useTooltip.js.map +1 -1
  1090. package/dist/transition/SkeletonPlaceholder.d.ts +2 -2
  1091. package/dist/transition/SkeletonPlaceholder.js +8 -3
  1092. package/dist/transition/SkeletonPlaceholder.js.map +1 -1
  1093. package/dist/transition/_transition.scss +89 -78
  1094. package/dist/transition/config.d.ts +22 -0
  1095. package/dist/transition/config.js +16 -0
  1096. package/dist/transition/config.js.map +1 -0
  1097. package/dist/transition/skeletonPlaceholderUtils.d.ts +77 -0
  1098. package/dist/transition/skeletonPlaceholderUtils.js +38 -0
  1099. package/dist/transition/skeletonPlaceholderUtils.js.map +1 -0
  1100. package/dist/transition/useCollapseTransition.d.ts +3 -18
  1101. package/dist/transition/useCollapseTransition.js +1 -10
  1102. package/dist/transition/useCollapseTransition.js.map +1 -1
  1103. package/dist/transition/useSkeletonPlaceholder.d.ts +12 -7
  1104. package/dist/transition/useSkeletonPlaceholder.js +38 -37
  1105. package/dist/transition/useSkeletonPlaceholder.js.map +1 -1
  1106. package/dist/transition/useTransition.js +15 -6
  1107. package/dist/transition/useTransition.js.map +1 -1
  1108. package/dist/transition/utils.js +7 -2
  1109. package/dist/transition/utils.js.map +1 -1
  1110. package/dist/tree/DefaultTreeItemRenderer.d.ts +3 -3
  1111. package/dist/tree/DefaultTreeItemRenderer.js.map +1 -1
  1112. package/dist/tree/Tree.d.ts +9 -5
  1113. package/dist/tree/Tree.js +18 -21
  1114. package/dist/tree/Tree.js.map +1 -1
  1115. package/dist/tree/TreeItem.js +4 -7
  1116. package/dist/tree/TreeItem.js.map +1 -1
  1117. package/dist/tree/TreeProvider.d.ts +2 -0
  1118. package/dist/tree/TreeProvider.js +3 -1
  1119. package/dist/tree/TreeProvider.js.map +1 -1
  1120. package/dist/tree/_tree.scss +111 -109
  1121. package/dist/tree/styles.d.ts +0 -6
  1122. package/dist/tree/styles.js +1 -2
  1123. package/dist/tree/styles.js.map +1 -1
  1124. package/dist/tree/useTreeMovement.js +1 -1
  1125. package/dist/tree/useTreeMovement.js.map +1 -1
  1126. package/dist/types.d.ts +13 -0
  1127. package/dist/types.js +1 -2
  1128. package/dist/types.js.map +1 -1
  1129. package/dist/typography/SrOnly.d.ts +3 -3
  1130. package/dist/typography/SrOnly.js +4 -4
  1131. package/dist/typography/SrOnly.js.map +1 -1
  1132. package/dist/typography/Typography.d.ts +19 -19
  1133. package/dist/typography/Typography.js +19 -19
  1134. package/dist/typography/Typography.js.map +1 -1
  1135. package/dist/typography/WritingDirectionProvider.d.ts +2 -2
  1136. package/dist/typography/WritingDirectionProvider.js +2 -2
  1137. package/dist/typography/WritingDirectionProvider.js.map +1 -1
  1138. package/dist/typography/_typography.scss +141 -87
  1139. package/dist/useDebouncedFunction.d.ts +2 -2
  1140. package/dist/useDebouncedFunction.js +10 -6
  1141. package/dist/useDebouncedFunction.js.map +1 -1
  1142. package/dist/useElementSize.d.ts +40 -0
  1143. package/dist/useElementSize.js +53 -0
  1144. package/dist/useElementSize.js.map +1 -0
  1145. package/dist/useEnsuredState.d.ts +1 -1
  1146. package/dist/useEnsuredState.js.map +1 -1
  1147. package/dist/useResizeListener.d.ts +1 -1
  1148. package/dist/useResizeListener.js +1 -0
  1149. package/dist/useResizeListener.js.map +1 -1
  1150. package/dist/useResizeObserver.d.ts +4 -43
  1151. package/dist/useResizeObserver.js +4 -43
  1152. package/dist/useResizeObserver.js.map +1 -1
  1153. package/dist/useThrottledFunction.d.ts +2 -2
  1154. package/dist/useThrottledFunction.js +20 -16
  1155. package/dist/useThrottledFunction.js.map +1 -1
  1156. package/dist/useWindowSize.d.ts +14 -11
  1157. package/dist/useWindowSize.js +12 -7
  1158. package/dist/useWindowSize.js.map +1 -1
  1159. package/dist/utils/alphaNumericSort.d.ts +1 -1
  1160. package/dist/utils/alphaNumericSort.js +2 -10
  1161. package/dist/utils/alphaNumericSort.js.map +1 -1
  1162. package/dist/utils/getMiddleOfRange.d.ts +13 -0
  1163. package/dist/utils/getMiddleOfRange.js +20 -0
  1164. package/dist/utils/getMiddleOfRange.js.map +1 -0
  1165. package/dist/utils/getRangeDefaultValue.d.ts +3 -5
  1166. package/dist/utils/getRangeDefaultValue.js +3 -13
  1167. package/dist/utils/getRangeDefaultValue.js.map +1 -1
  1168. package/dist/utils/getRangeSteps.d.ts +1 -1
  1169. package/dist/utils/getRangeSteps.js +2 -2
  1170. package/dist/utils/getRangeSteps.js.map +1 -1
  1171. package/dist/utils/nearest.js +1 -1
  1172. package/dist/utils/nearest.js.map +1 -1
  1173. package/dist/window-splitter/_window-splitter.scss +83 -112
  1174. package/dist/window-splitter/useWindowSplitter.d.ts +3 -5
  1175. package/dist/window-splitter/useWindowSplitter.js +3 -11
  1176. package/dist/window-splitter/useWindowSplitter.js.map +1 -1
  1177. package/jest.config.ts +4 -0
  1178. package/package.json +38 -40
  1179. package/scripts/{copySassFiles.js → copySassFiles.ts} +5 -5
  1180. package/scripts/tsconfig.json +18 -0
  1181. package/src/RootHtml.tsx +95 -0
  1182. package/src/__tests__/NoSsr.tsx +5 -5
  1183. package/src/__tests__/RootHtml.node.tsx +46 -0
  1184. package/src/__tests__/__snapshots__/RootHtml.node.tsx.snap +19 -0
  1185. package/src/__tests__/useAsyncAction.tsx +14 -6
  1186. package/src/__tests__/useDebouncedFunction.tsx +68 -24
  1187. package/src/__tests__/useDropzone.tsx +10 -10
  1188. package/src/__tests__/useElementSize.tsx +181 -0
  1189. package/src/__tests__/useEnsuredId.tsx +5 -5
  1190. package/src/__tests__/useEnsuredState.tsx +1 -2
  1191. package/src/__tests__/useLocalStorage.tsx +21 -21
  1192. package/src/__tests__/useResizeObserver.tsx +2 -0
  1193. package/src/__tests__/useThrottledFunction.tsx +63 -8
  1194. package/src/__tests__/useToggle.tsx +10 -10
  1195. package/src/__tests__/useWindowSize.node.tsx +56 -0
  1196. package/src/__tests__/useWindowSize.tsx +156 -0
  1197. package/src/_box-shadows.scss +12 -2
  1198. package/src/_core.scss +208 -250
  1199. package/src/_utils.scss +89 -0
  1200. package/src/app-bar/AppBar.tsx +59 -19
  1201. package/src/app-bar/__tests__/AppBar.tsx +15 -15
  1202. package/src/app-bar/__tests__/AppBarTitle.tsx +3 -5
  1203. package/src/app-bar/__tests__/__snapshots__/AppBar.tsx.snap +21 -21
  1204. package/src/app-bar/_app-bar.scss +114 -122
  1205. package/src/avatar/Avatar.tsx +36 -23
  1206. package/src/avatar/__tests__/Avatar.tsx +6 -6
  1207. package/src/avatar/__tests__/__snapshots__/Avatar.tsx.snap +6 -6
  1208. package/src/avatar/_avatar.scss +79 -84
  1209. package/src/avatar/styles.ts +27 -4
  1210. package/src/badge/__tests__/Badge.tsx +3 -3
  1211. package/src/badge/_badge.scss +97 -59
  1212. package/src/box/_box.scss +72 -81
  1213. package/src/button/AsyncButton.tsx +71 -4
  1214. package/src/button/TooltippedButton.tsx +120 -0
  1215. package/src/button/__tests__/AsyncButton.tsx +2 -0
  1216. package/src/button/__tests__/Button.tsx +12 -12
  1217. package/src/button/__tests__/ButtonUnstyled.tsx +3 -3
  1218. package/src/button/__tests__/TooltippedButton.tsx +60 -0
  1219. package/src/button/__tests__/__snapshots__/AsyncButton.tsx.snap +31 -8
  1220. package/src/button/__tests__/__snapshots__/Button.tsx.snap +1 -1
  1221. package/src/button/__tests__/__snapshots__/TooltippedButton.tsx.snap +26 -0
  1222. package/src/button/_button.scss +170 -180
  1223. package/src/card/Card.tsx +5 -3
  1224. package/src/card/CardContent.tsx +3 -3
  1225. package/src/card/ClickableCard.tsx +105 -0
  1226. package/src/card/__tests__/Card.tsx +3 -3
  1227. package/src/card/__tests__/CardContent.tsx +3 -3
  1228. package/src/card/__tests__/CardFooter.tsx +3 -3
  1229. package/src/card/__tests__/CardHeader.tsx +5 -5
  1230. package/src/card/__tests__/CardSubtitle.tsx +3 -3
  1231. package/src/card/__tests__/CardTitle.tsx +3 -3
  1232. package/src/card/__tests__/ClickableCard.tsx +66 -0
  1233. package/src/card/__tests__/__snapshots__/CardHeader.tsx.snap +1 -1
  1234. package/src/card/__tests__/__snapshots__/CardSubtitle.tsx.snap +2 -2
  1235. package/src/card/__tests__/__snapshots__/ClickableCard.tsx.snap +20 -0
  1236. package/src/card/__tests__/__snapshots__/styles.ts.snap +1 -1
  1237. package/src/card/_card.scss +81 -82
  1238. package/src/card/styles.ts +19 -10
  1239. package/src/chip/__tests__/Chip.tsx +20 -22
  1240. package/src/chip/__tests__/__snapshots__/Chip.tsx.snap +3 -3
  1241. package/src/chip/__tests__/__snapshots__/styles.ts.snap +1 -1
  1242. package/src/chip/_chip.scss +136 -163
  1243. package/src/chip/styles.ts +4 -5
  1244. package/src/cssUtils.ts +4 -1
  1245. package/src/dialog/Dialog.tsx +5 -4
  1246. package/src/dialog/FixedDialog.tsx +5 -4
  1247. package/src/dialog/__tests__/Dialog.tsx +316 -0
  1248. package/src/dialog/__tests__/DialogContent.tsx +53 -0
  1249. package/src/dialog/__tests__/DialogFooter.tsx +70 -0
  1250. package/src/dialog/__tests__/DialogHeader.tsx +37 -0
  1251. package/src/dialog/__tests__/DialogTitle.tsx +41 -0
  1252. package/src/dialog/__tests__/__snapshots__/Dialog.tsx.snap +84 -0
  1253. package/src/dialog/__tests__/__snapshots__/DialogContent.tsx.snap +36 -0
  1254. package/src/dialog/__tests__/__snapshots__/DialogFooter.tsx.snap +186 -0
  1255. package/src/dialog/__tests__/__snapshots__/DialogHeader.tsx.snap +18 -0
  1256. package/src/dialog/__tests__/__snapshots__/DialogTitle.tsx.snap +26 -0
  1257. package/src/dialog/_dialog.scss +179 -162
  1258. package/src/divider/Divider.tsx +0 -1
  1259. package/src/divider/__tests__/Divider.tsx +3 -3
  1260. package/src/divider/_divider.scss +61 -70
  1261. package/src/draggable/__tests__/useDraggable.tsx +35 -39
  1262. package/src/draggable/_draggable.scss +16 -12
  1263. package/src/draggable/useDraggable.ts +26 -25
  1264. package/src/draggable/utils.ts +16 -50
  1265. package/src/expansion-panel/__tests__/ExpansionPanel.tsx +30 -25
  1266. package/src/expansion-panel/_expansion-panel.scss +76 -50
  1267. package/src/expansion-panel/useExpansionPanels.ts +20 -16
  1268. package/src/focus/__tests__/useFocusContainer.tsx +280 -0
  1269. package/src/focus/useFocusContainer.ts +17 -10
  1270. package/src/form/Form.tsx +2 -1
  1271. package/src/form/Label.tsx +5 -5
  1272. package/src/form/MenuItemInputToggle.tsx +47 -61
  1273. package/src/form/MenuItemTextField.tsx +3 -0
  1274. package/src/form/NativeSelect.tsx +6 -3
  1275. package/src/form/Option.tsx +8 -2
  1276. package/src/form/ResizingTextAreaWrapper.tsx +75 -0
  1277. package/src/form/Select.tsx +251 -327
  1278. package/src/form/SelectedOption.tsx +55 -0
  1279. package/src/form/Slider.tsx +45 -5
  1280. package/src/form/SliderThumb.tsx +15 -3
  1281. package/src/form/SliderValueMarks.tsx +3 -1
  1282. package/src/form/SliderValueTooltip.tsx +1 -1
  1283. package/src/form/Switch.tsx +6 -27
  1284. package/src/form/SwitchTrack.tsx +12 -2
  1285. package/src/form/TextArea.tsx +40 -32
  1286. package/src/form/TextField.tsx +19 -19
  1287. package/src/form/TextFieldContainerStyles.ts +7 -7
  1288. package/src/form/__tests__/Checkbox.tsx +5 -5
  1289. package/src/form/__tests__/Fieldset.tsx +3 -3
  1290. package/src/form/__tests__/FileInput.tsx +2 -2
  1291. package/src/form/__tests__/Label.tsx +3 -3
  1292. package/src/form/__tests__/Legend.tsx +3 -3
  1293. package/src/form/__tests__/MenuItemCheckbox.tsx +53 -0
  1294. package/src/form/__tests__/MenuItemRadio.tsx +53 -0
  1295. package/src/form/__tests__/Radio.tsx +3 -3
  1296. package/src/form/__tests__/Select.tsx +439 -0
  1297. package/src/form/__tests__/Switch.tsx +152 -0
  1298. package/src/form/__tests__/TextArea.tsx +433 -0
  1299. package/src/form/__tests__/TextField.tsx +195 -0
  1300. package/src/form/__tests__/__snapshots__/FileInput.tsx.snap +23 -23
  1301. package/src/form/__tests__/__snapshots__/MenuItemCheckbox.tsx.snap +96 -0
  1302. package/src/form/__tests__/__snapshots__/MenuItemRadio.tsx.snap +96 -0
  1303. package/src/form/__tests__/__snapshots__/Select.tsx.snap +492 -0
  1304. package/src/form/__tests__/__snapshots__/Switch.tsx.snap +428 -0
  1305. package/src/form/__tests__/__snapshots__/TextArea.tsx.snap +548 -0
  1306. package/src/form/__tests__/__snapshots__/TextField.tsx.snap +279 -0
  1307. package/src/form/__tests__/__snapshots__/useCheckboxGroup.tsx.snap +1 -1
  1308. package/src/form/__tests__/__snapshots__/useRadioGroup.tsx.snap +1 -1
  1309. package/src/form/__tests__/useCheckboxGroup.tsx +33 -33
  1310. package/src/form/__tests__/useFileUpload.tsx +41 -33
  1311. package/src/form/__tests__/useFormReset.tsx +195 -0
  1312. package/src/form/__tests__/useRadioGroup.tsx +25 -25
  1313. package/src/form/_form.scss +1339 -1256
  1314. package/src/form/menuItemInputToggleStyles.ts +78 -0
  1315. package/src/form/selectUtils.ts +3 -14
  1316. package/src/form/switchStyles.ts +3 -3
  1317. package/src/form/textAreaStyles.ts +2 -2
  1318. package/src/form/types.ts +6 -8
  1319. package/src/form/useCombobox.ts +523 -0
  1320. package/src/form/useEditableCombobox.ts +139 -0
  1321. package/src/form/useFormReset.ts +48 -0
  1322. package/src/form/useListboxProvider.ts +9 -7
  1323. package/src/form/useResizingTextArea.ts +66 -25
  1324. package/src/form/useSelectCombobox.ts +70 -0
  1325. package/src/form/utils.ts +17 -4
  1326. package/src/hoverMode/useHoverMode.ts +4 -4
  1327. package/src/icon/FontIcon.tsx +2 -5
  1328. package/src/icon/IconRotator.tsx +1 -2
  1329. package/src/icon/MaterialIcon.tsx +4 -6
  1330. package/src/icon/MaterialSymbol.tsx +18 -12
  1331. package/src/icon/__tests__/FontIcon.tsx +7 -11
  1332. package/src/icon/__tests__/IconRotator.tsx +4 -4
  1333. package/src/icon/__tests__/MaterialIcon.tsx +79 -0
  1334. package/src/icon/__tests__/MaterialSymbol.tsx +100 -0
  1335. package/src/icon/__tests__/SVGIcon.tsx +6 -5
  1336. package/src/icon/__tests__/TextIconSpacing.tsx +15 -17
  1337. package/src/icon/__tests__/__snapshots__/IconRotator.tsx.snap +6 -6
  1338. package/src/icon/__tests__/__snapshots__/MaterialIcon.tsx.snap +82 -0
  1339. package/src/icon/__tests__/__snapshots__/MaterialSymbol.tsx.snap +42 -0
  1340. package/src/icon/_icon.scss +105 -112
  1341. package/src/icon/iconConfig.tsx +1 -0
  1342. package/src/icon/material.ts +284 -54
  1343. package/src/icon/{MaterialSymbolsProvider.tsx → materialConfig.ts} +49 -67
  1344. package/src/icon/styles.ts +0 -21
  1345. package/src/index.ts +30 -7
  1346. package/src/interaction/__tests__/UserInteractionModeProvider.tsx +3 -3
  1347. package/src/interaction/_interaction.scss +144 -135
  1348. package/src/layout/__tests__/__snapshots__/LayoutAppBar.tsx.snap +4 -4
  1349. package/src/layout/__tests__/__snapshots__/useExpandableLayout.tsx.snap +1 -1
  1350. package/src/layout/__tests__/__snapshots__/useLayoutTree.tsx.snap +18 -18
  1351. package/src/layout/__tests__/__snapshots__/useResizableLayout.tsx.snap +1 -1
  1352. package/src/layout/__tests__/__snapshots__/useTemporaryLayout.tsx.snap +1 -1
  1353. package/src/layout/__tests__/useExpandableLayout.tsx +12 -1
  1354. package/src/layout/__tests__/useLayoutTree.tsx +6 -1
  1355. package/src/layout/__tests__/useResizableLayout.tsx +13 -1
  1356. package/src/layout/__tests__/useTemporaryLayout.tsx +6 -1
  1357. package/src/layout/_layout.scss +82 -86
  1358. package/src/layout/useLayoutAppBarHeight.ts +5 -9
  1359. package/src/link/Link.tsx +15 -5
  1360. package/src/link/__tests__/Link.tsx +3 -3
  1361. package/src/link/__tests__/SkipToMainContent.tsx +11 -14
  1362. package/src/link/_link.scss +74 -66
  1363. package/src/list/ListItem.tsx +20 -13
  1364. package/src/list/ListItemAddon.tsx +5 -3
  1365. package/src/list/ListItemChildren.tsx +4 -2
  1366. package/src/list/ListItemLink.tsx +5 -5
  1367. package/src/list/__tests__/List.tsx +7 -7
  1368. package/src/list/__tests__/ListItem.tsx +18 -17
  1369. package/src/list/__tests__/ListItemLink.tsx +7 -7
  1370. package/src/list/__tests__/ListSubheader.tsx +5 -5
  1371. package/src/list/__tests__/__snapshots__/ListItem.tsx.snap +1 -1
  1372. package/src/list/__tests__/getListItemHeight.ts +2 -2
  1373. package/src/list/_list.scss +187 -184
  1374. package/src/list/getListItemHeight.ts +2 -3
  1375. package/src/list/listItemStyles.ts +15 -5
  1376. package/src/list/types.ts +28 -6
  1377. package/src/menu/DropdownMenu.tsx +23 -4
  1378. package/src/menu/Menu.tsx +20 -1
  1379. package/src/menu/MenuItemCircularProgress.tsx +116 -0
  1380. package/src/menu/MenuItemSeparator.tsx +2 -12
  1381. package/src/menu/MenuSheet.tsx +10 -1
  1382. package/src/menu/__tests__/DropdownMenu.tsx +74 -65
  1383. package/src/menu/__tests__/MenuBar.tsx +57 -48
  1384. package/src/menu/__tests__/MenuItemCircularProgress.tsx +39 -0
  1385. package/src/menu/__tests__/MenuVisibilityProvider.tsx +3 -3
  1386. package/src/menu/__tests__/__snapshots__/MenuItemCircularProgress.tsx.snap +68 -0
  1387. package/src/menu/__tests__/__snapshots__/useContextMenu.tsx.snap +54 -0
  1388. package/src/menu/__tests__/useContextMenu.tsx +41 -0
  1389. package/src/menu/_menu.scss +29 -50
  1390. package/src/menu/useContextMenu.ts +3 -3
  1391. package/src/movement/types.ts +50 -25
  1392. package/src/movement/useKeyboardMovementProvider.ts +21 -8
  1393. package/src/movement/utils.ts +12 -2
  1394. package/src/overlay/__tests__/Overlay.tsx +37 -35
  1395. package/src/overlay/_overlay.scss +39 -42
  1396. package/src/portal/PortalContainerProvider.tsx +10 -2
  1397. package/src/portal/__tests__/PortalContainerProvider.node.tsx +1 -0
  1398. package/src/portal/__tests__/PortalContainerProvider.tsx +32 -9
  1399. package/src/positioning/__tests__/__snapshots__/useFixedPositioning.tsx.snap +0 -32
  1400. package/src/positioning/__tests__/useFixedPositioning.tsx +18 -26
  1401. package/src/positioning/useFixedPositioning.ts +0 -6
  1402. package/src/progress/CircularProgress.tsx +5 -4
  1403. package/src/progress/LinearProgress.tsx +88 -86
  1404. package/src/progress/__tests__/CircularProgress.tsx +49 -27
  1405. package/src/progress/__tests__/LinearProgress.tsx +40 -25
  1406. package/src/progress/__tests__/__snapshots__/CircularProgress.tsx.snap +21 -0
  1407. package/src/progress/__tests__/__snapshots__/LinearProgress.tsx.snap +20 -0
  1408. package/src/progress/_progress.scss +33 -33
  1409. package/src/responsive-item/_responsive-item.scss +91 -89
  1410. package/src/searching/__tests__/caseInsensitive.ts +165 -0
  1411. package/src/searching/__tests__/fuzzy.ts +169 -0
  1412. package/src/searching/__tests__/toSearchQuery.ts +21 -0
  1413. package/src/searching/__tests__/useFuzzyMatch.tsx +200 -0
  1414. package/src/searching/caseInsensitive.ts +200 -0
  1415. package/src/searching/fuzzy.ts +175 -0
  1416. package/src/searching/toSearchQuery.ts +20 -0
  1417. package/src/searching/types.ts +34 -0
  1418. package/src/searching/useFuzzyMatch.ts +42 -0
  1419. package/src/searching/utils.ts +53 -0
  1420. package/src/segmented-button/_segmented-button.scss +89 -90
  1421. package/src/sheet/_sheet.scss +107 -123
  1422. package/src/sheet/styles.ts +14 -15
  1423. package/src/snackbar/DefaultToastRenderer.tsx +1 -1
  1424. package/src/snackbar/Snackbar.tsx +28 -32
  1425. package/src/snackbar/Toast.tsx +7 -2
  1426. package/src/snackbar/ToastManager.tsx +3 -2
  1427. package/src/snackbar/__tests__/Snackbar.tsx +13 -12
  1428. package/src/snackbar/__tests__/Toast.tsx +8 -3
  1429. package/src/snackbar/__tests__/ToastActionButton.tsx +2 -2
  1430. package/src/snackbar/__tests__/ToastCloseButton.tsx +2 -2
  1431. package/src/snackbar/__tests__/ToastManagerProvider.tsx +28 -42
  1432. package/src/snackbar/__tests__/__snapshots__/Snackbar.tsx.snap +127 -27
  1433. package/src/snackbar/__tests__/__snapshots__/ToastManagerProvider.tsx.snap +23 -8
  1434. package/src/snackbar/_snackbar.scss +148 -144
  1435. package/src/snackbar/snackbarStyles.ts +3 -1
  1436. package/src/suspense/CircularProgressSuspense.tsx +19 -2
  1437. package/src/suspense/__tests__/CircularProgressSuspense.tsx +90 -0
  1438. package/src/suspense/__tests__/NullSuspense.tsx +46 -0
  1439. package/src/suspense/__tests__/__snapshots__/CircularProgressSuspense.tsx.snap +24 -0
  1440. package/src/table/Table.tsx +1 -24
  1441. package/src/table/TableCell.tsx +22 -85
  1442. package/src/table/TableCellContent.tsx +20 -2
  1443. package/src/table/TableCheckbox.tsx +7 -5
  1444. package/src/table/TableContainer.tsx +1 -8
  1445. package/src/table/TableFooter.tsx +30 -23
  1446. package/src/table/TableHeader.tsx +23 -40
  1447. package/src/table/TableRadio.tsx +197 -0
  1448. package/src/table/TableRow.tsx +1 -28
  1449. package/src/table/__tests__/Table.tsx +4 -10
  1450. package/src/table/__tests__/TableBody.tsx +3 -3
  1451. package/src/table/__tests__/TableCheckbox.tsx +10 -11
  1452. package/src/table/__tests__/TableContainer.tsx +3 -3
  1453. package/src/table/__tests__/TableRadio.tsx +112 -0
  1454. package/src/table/__tests__/TableRow.tsx +4 -10
  1455. package/src/table/__tests__/__snapshots__/Table.tsx.snap +249 -251
  1456. package/src/table/__tests__/__snapshots__/TableBody.tsx.snap +3 -3
  1457. package/src/table/__tests__/__snapshots__/TableCheckbox.tsx.snap +4 -4
  1458. package/src/table/__tests__/__snapshots__/TableRadio.tsx.snap +138 -0
  1459. package/src/table/__tests__/__snapshots__/TableRow.tsx.snap +4 -6
  1460. package/src/table/__tests__/__snapshots__/tableContainerStyles.ts.snap +3 -0
  1461. package/src/table/__tests__/__snapshots__/tableRowStyles.ts.snap +3 -0
  1462. package/src/table/__tests__/__snapshots__/tableStyles.ts.snap +3 -0
  1463. package/src/table/__tests__/tableContainerStyles.ts +8 -0
  1464. package/src/table/__tests__/tableRowStyles.ts +8 -0
  1465. package/src/table/__tests__/tableStyles.ts +8 -0
  1466. package/src/table/_table.scss +217 -232
  1467. package/src/table/tableCellStyles.ts +83 -0
  1468. package/src/table/tableContainerStyles.ts +19 -0
  1469. package/src/table/tableFooterStyles.ts +27 -0
  1470. package/src/table/tableHeaderStyles.ts +29 -0
  1471. package/src/table/tableRowStyles.ts +28 -0
  1472. package/src/table/tableStyles.ts +24 -0
  1473. package/src/table/types.ts +33 -15
  1474. package/src/tabs/Tab.tsx +110 -70
  1475. package/src/tabs/__tests__/Tab.tsx +27 -4
  1476. package/src/tabs/__tests__/TabList.tsx +54 -44
  1477. package/src/tabs/__tests__/__snapshots__/TabList.tsx.snap +2 -2
  1478. package/src/tabs/__tests__/useTabs.tsx +27 -24
  1479. package/src/tabs/_tabs.scss +64 -53
  1480. package/src/tabs/tabIndicatorStyles.ts +13 -3
  1481. package/src/tabs/tabListStyles.ts +1 -1
  1482. package/src/tabs/tabStyles.ts +16 -4
  1483. package/src/tabs/useTabList.ts +10 -8
  1484. package/src/test-utils/ResizeObserver.ts +100 -53
  1485. package/src/test-utils/__tests__/ResizeObserver.ts +1 -1
  1486. package/src/test-utils/data-testid.ts +9 -0
  1487. package/src/test-utils/jest-setup.ts +4 -0
  1488. package/src/test-utils/matchMedia.ts +2 -2
  1489. package/src/test-utils/polyfills/TextDecoder.ts +7 -0
  1490. package/src/test-utils/polyfills/TextEncoder.ts +5 -0
  1491. package/src/test-utils/polyfills/index.ts +2 -0
  1492. package/src/theme/ThemeProvider.tsx +6 -0
  1493. package/src/theme/__tests__/LocalStorageColorSchemeProvider.tsx +4 -4
  1494. package/src/theme/__tests__/useCSSVariables.tsx +4 -4
  1495. package/src/theme/_theme.scss +243 -133
  1496. package/src/tooltip/Tooltip.tsx +17 -9
  1497. package/src/tooltip/TooltipHoverModeProvider.tsx +18 -0
  1498. package/src/tooltip/__tests__/Tooltip.tsx +147 -104
  1499. package/src/tooltip/__tests__/TooltipHoverModeProvider.tsx +8 -3
  1500. package/src/tooltip/__tests__/__snapshots__/Tooltip.tsx.snap +0 -33
  1501. package/src/tooltip/_tooltip.scss +76 -82
  1502. package/src/tooltip/tooltipStyles.ts +4 -4
  1503. package/src/tooltip/useTooltip.ts +141 -34
  1504. package/src/transition/SkeletonPlaceholder.tsx +18 -6
  1505. package/src/transition/__tests__/CSSTransition.tsx +12 -6
  1506. package/src/transition/__tests__/Collapse.tsx +19 -17
  1507. package/src/transition/__tests__/CrossFade.tsx +20 -17
  1508. package/src/transition/__tests__/ScaleTransition.tsx +18 -14
  1509. package/src/transition/__tests__/SkeletonPlaceholder.tsx +72 -0
  1510. package/src/transition/__tests__/__snapshots__/SkeletonPlaceholder.tsx.snap +24 -0
  1511. package/src/transition/__tests__/useCSSTransition.tsx +18 -14
  1512. package/src/transition/__tests__/useCollapseTransition.tsx +25 -21
  1513. package/src/transition/__tests__/useCrossFadeTransition.tsx +20 -16
  1514. package/src/transition/__tests__/useScaleTransition.tsx +18 -12
  1515. package/src/transition/__tests__/useTransition.tsx +165 -68
  1516. package/src/transition/__tests__/utils.ts +25 -0
  1517. package/src/transition/_transition.scss +89 -78
  1518. package/src/transition/config.ts +34 -0
  1519. package/src/transition/skeletonPlaceholderUtils.ts +105 -0
  1520. package/src/transition/useCollapseTransition.ts +6 -24
  1521. package/src/transition/useSkeletonPlaceholder.ts +62 -47
  1522. package/src/transition/useTransition.ts +15 -6
  1523. package/src/transition/utils.ts +10 -5
  1524. package/src/tree/DefaultTreeItemRenderer.tsx +7 -3
  1525. package/src/tree/Tree.tsx +28 -28
  1526. package/src/tree/TreeItem.tsx +5 -7
  1527. package/src/tree/TreeProvider.tsx +6 -0
  1528. package/src/tree/__tests__/Tree.tsx +8 -3
  1529. package/src/tree/__tests__/TreeGroup.tsx +1 -0
  1530. package/src/tree/__tests__/TreeItemExpander.tsx +1 -0
  1531. package/src/tree/__tests__/__snapshots__/Tree.tsx.snap +124 -124
  1532. package/src/tree/_tree.scss +111 -109
  1533. package/src/tree/styles.ts +0 -9
  1534. package/src/tree/useTreeMovement.ts +1 -1
  1535. package/src/types.ts +13 -0
  1536. package/src/typography/SrOnly.tsx +9 -9
  1537. package/src/typography/Typography.tsx +19 -19
  1538. package/src/typography/WritingDirectionProvider.tsx +4 -2
  1539. package/src/typography/__tests__/TextContainer.tsx +3 -3
  1540. package/src/typography/__tests__/Typography.tsx +10 -12
  1541. package/src/typography/__tests__/WritingDirectionProvider.tsx +7 -7
  1542. package/src/typography/__tests__/__snapshots__/SrOnly.tsx.snap +5 -5
  1543. package/src/typography/_typography.scss +141 -87
  1544. package/src/useDebouncedFunction.ts +12 -10
  1545. package/src/useElementSize.ts +83 -0
  1546. package/src/useEnsuredState.ts +1 -1
  1547. package/src/useResizeListener.ts +3 -1
  1548. package/src/useResizeObserver.ts +8 -45
  1549. package/src/useThrottledFunction.ts +12 -10
  1550. package/src/useWindowSize.ts +29 -19
  1551. package/src/utils/__tests__/getMiddleOfRange.ts +12 -0
  1552. package/src/utils/__tests__/getRangeDefaultValue.ts +47 -0
  1553. package/src/utils/alphaNumericSort.ts +3 -16
  1554. package/src/utils/getMiddleOfRange.ts +26 -0
  1555. package/src/utils/getRangeDefaultValue.ts +8 -15
  1556. package/src/utils/getRangeSteps.ts +2 -2
  1557. package/src/utils/nearest.ts +1 -1
  1558. package/src/window-splitter/_window-splitter.scss +83 -112
  1559. package/src/window-splitter/useWindowSplitter.ts +12 -28
  1560. package/tsconfig.types.json +1 -1
  1561. package/dist/divider/VerticalDivider.d.ts +0 -32
  1562. package/dist/divider/VerticalDivider.js +0 -40
  1563. package/dist/divider/VerticalDivider.js.map +0 -1
  1564. package/dist/divider/useVerticalDividerHeight.d.ts +0 -37
  1565. package/dist/divider/useVerticalDividerHeight.js +0 -40
  1566. package/dist/divider/useVerticalDividerHeight.js.map +0 -1
  1567. package/dist/form/SelectValue.d.ts +0 -17
  1568. package/dist/form/SelectValue.js +0 -32
  1569. package/dist/form/SelectValue.js.map +0 -1
  1570. package/dist/icon/MaterialIconsProvider.d.ts +0 -12
  1571. package/dist/icon/MaterialIconsProvider.js +0 -17
  1572. package/dist/icon/MaterialIconsProvider.js.map +0 -1
  1573. package/dist/icon/MaterialSymbolsProvider.js +0 -60
  1574. package/dist/icon/MaterialSymbolsProvider.js.map +0 -1
  1575. package/dist/link/LinkProvider.d.ts +0 -29
  1576. package/dist/link/LinkProvider.js +0 -26
  1577. package/dist/link/LinkProvider.js.map +0 -1
  1578. package/dist/tooltip/useOverflowTooltip.d.ts +0 -61
  1579. package/dist/tooltip/useOverflowTooltip.js +0 -71
  1580. package/dist/tooltip/useOverflowTooltip.js.map +0 -1
  1581. package/dist/utils/filters.d.ts +0 -196
  1582. package/dist/utils/filters.js +0 -67
  1583. package/dist/utils/filters.js.map +0 -1
  1584. package/src/divider/VerticalDivider.tsx +0 -50
  1585. package/src/divider/__tests__/VerticalDivider.tsx +0 -35
  1586. package/src/divider/__tests__/__snapshots__/VerticalDivider.tsx.snap +0 -41
  1587. package/src/divider/useVerticalDividerHeight.ts +0 -72
  1588. package/src/form/SelectValue.tsx +0 -39
  1589. package/src/icon/MaterialIconsProvider.ts +0 -23
  1590. package/src/link/LinkProvider.tsx +0 -51
  1591. package/src/tooltip/__tests__/useOverflowTooltip.tsx +0 -77
  1592. package/src/tooltip/useOverflowTooltip.ts +0 -93
  1593. package/src/utils/__tests__/filters.ts +0 -279
  1594. package/src/utils/filters.ts +0 -320
@@ -40,6 +40,7 @@ $disable-radio: $disable-everything !default;
40
40
  $disable-uncontrolled-input-toggles: false !default;
41
41
  $disable-switch: $disable-everything !default;
42
42
  $disable-switch-circular-progress: progress.$disable-circular !default;
43
+ $disable-switch-icon: false !default;
43
44
  $disable-menu-item-checkbox: $disable-checkbox !default;
44
45
  $disable-menu-item-radio: $disable-radio !default;
45
46
  $disable-menu-item-switch: $disable-switch !default;
@@ -78,7 +79,7 @@ $label-typography: map.merge(
78
79
  ) !default;
79
80
  $label-floating-top: 1rem !default;
80
81
  $label-floating-top-dense: 0.9rem !default;
81
- $label-floating-font-size: 0.75em !default;
82
+ $label-floating-scale: 0.75 !default;
82
83
  $label-floating-padding: 0.25rem !default;
83
84
 
84
85
  $message-typography-styles: map.merge(
@@ -189,16 +190,16 @@ $switch-track-horizontal-padding: 0.875em !default;
189
190
  $switch-track-light-background-color: colors.$grey-400 !default;
190
191
  $switch-track-dark-background-color: if(
191
192
  theme.$disable-dark-elevation,
192
- $switch-track-light-theme-background-color,
193
+ $switch-track-light-background-color,
193
194
  map.get(theme.$dark-elevation-colors, 24)
194
195
  ) !default;
195
196
  $switch-track-background-color: theme.get-default-color(
196
197
  $switch-track-light-background-color,
197
198
  $switch-track-dark-background-color
198
199
  ) !default;
200
+ $switch-icon-size: 1em !default;
199
201
  $switch-circular-progress-width: 12 !default;
200
-
201
- $menu-item-switch-spacing: calc(icon.$spacing + $switch-ball-size) !default;
202
+ $switch-circular-progress-size: 1em !default;
202
203
 
203
204
  $slider-size: 2rem !default;
204
205
  $slider-vertical-size: 15rem !default;
@@ -255,6 +256,7 @@ $slider-thumb-mask-scale: 0.8 !default;
255
256
  $slider-thumb-disabled-color: $slider-track-disabled-color !default;
256
257
  $slider-tooltip-caret-size: 0.3rem !default;
257
258
  $slider-tooltip-offset: -($slider-thumb-size + icon.$spacing) !default;
259
+ $slider-tooltip-z-index: 0 !default;
258
260
  $slider-container-padding: $slider-thumb-size * 0.5 !default;
259
261
  $slider-container-addon-spacing: $slider-thumb-size !default;
260
262
  $slider-transition-duration: transition.$linear-duration !default;
@@ -264,169 +266,59 @@ $slider-transition-timing-function: transition.$linear-timing-function !default;
264
266
  $_disable-text-field-container: $disable-text-field and $disable-password and
265
267
  $disable-textarea and $disable-select and $disable-native-select;
266
268
 
267
- $var-lookup: (
268
- active-color: (
269
- var: --rmd-form-active-color,
270
- value: $active-color,
271
- ),
272
- focus-color: (
273
- var: --rmd-form-focus-color,
274
- value: $focus-color,
275
- ),
276
- floating-top: (
277
- var: --rmd-form-label-floating-top,
278
- value: $label-floating-top,
279
- ),
280
- label-left-offset: (
281
- var: --rmd-form-label-left-offset,
282
- value: 0px,
283
- ),
284
- label-top-offset: (
285
- var: --rmd-form-label-top-offset,
286
- value: 0px,
287
- ),
288
- label-active-padding: (
289
- var: --rmd-form-label-active-padding,
290
- value: 0px,
291
- ),
292
- label-active-background-color: (
293
- var: --rmd-form-label-active-background-color,
294
- value: transparent,
295
- ),
296
- text-height: (
297
- var: --rmd-form-text-height,
298
- value: $text-field-height,
299
- ),
300
- text-padding-left: (
301
- var: --rmd-form-text-padding-left,
302
- value: 0px,
303
- ),
304
- text-padding-right: (
305
- var: --rmd-form-text-padding-right,
306
- value: 0px,
307
- ),
308
- text-padding-top: (
309
- var: --rmd-form-text-padding-top,
310
- value: 0px,
311
- ),
312
- text-border-color: (
313
- var: --rmd-form-text-border-color,
314
- value: $text-field-border-color,
315
- ),
316
- text-hover-border-color: (
317
- var: --rmd-form-text-hover-border-color,
318
- value: $text-field-hover-border-color,
319
- ),
320
- text-filled-color: (
321
- var: --rmd-form-text-filled-color,
322
- value: $text-field-filled-background-color,
323
- ),
324
- textarea-height: (
325
- var: --rmd-form-textarea-height,
326
- value: 0px,
327
- ),
328
- textarea-padding: (
329
- var: --rmd-form-textarea-padding,
330
- value: $textarea-vertical-padding,
331
- ),
332
- addon-top: (
333
- var: --rmd-form-addon-top,
334
- value: auto,
335
- ),
336
- addon-margin-top: (
337
- var: --rmd-form-addon-margin-top,
338
- value: 0px,
339
- ),
340
- switch-track-background-color: (
341
- var: --rmd-switch-track-background-color,
342
- value: $switch-track-background-color,
343
- ),
344
- switch-ball-background-color: (
345
- var: --rmd-switch-ball-background-color,
346
- value: $switch-ball-background-color,
347
- ),
348
- slider-color: (
349
- var: --rmd-slider-color,
350
- value: $slider-track-color,
351
- ),
352
- slider-active-color: (
353
- var: --rmd-slider-active-color,
354
- value: $slider-track-active-color,
355
- ),
356
- slider-inactive-color: (
357
- var: --rmd-slider-inactive-color,
358
- value: $slider-track-inactive-color,
359
- ),
360
- slider-size: (
361
- var: --rmd-slider-size,
362
- value: $slider-size,
363
- ),
364
- slider-active-size: (
365
- var: --rmd-slider-active-size,
366
- value: $slider-track-active-size,
367
- ),
368
- slider-inactive-size: (
369
- var: --rmd-slider-inactive-size,
370
- value: $slider-track-inactive-size,
371
- ),
372
- slider-vertical-size: (
373
- var: --rmd-slider-vertical-size,
374
- value: $slider-vertical-size,
375
- ),
376
- slider-offset-1: (
377
- var: --rmd-slider-offset-1,
378
- value: 0,
379
- ),
380
- slider-offset-2: (
381
- var: --rmd-slider-offset-2,
382
- value: 0,
383
- ),
384
- slider-tooltip-scale: (
385
- var: --rmd-slider-tooltip-scale,
386
- value: 1,
387
- ),
388
- slider-tooltip-translate: (
389
- var: --rmd-slider-tooltip-translate,
390
- value: -50%,
391
- ),
392
- slider-mark-offset: (
393
- var: --rmd-slider-mark-offset,
394
- value: 0%,
395
- ),
396
- slider-mark-active-color: (
397
- var: --rmd-slider-mark-active-color,
398
- value: $slider-mark-active-color,
399
- ),
400
- slider-mark-active-opacity: (
401
- var: --rmd-slider-mark-active-opacity,
402
- value: $slider-mark-active-opacity,
403
- ),
404
- slider-mark-inactive-color: (
405
- var: --rmd-slider-mark-inactive-color,
406
- value: $slider-mark-inactive-color,
407
- ),
408
- slider-mark-inactive-opacity: (
409
- var: --rmd-slider-mark-inactive-opacity,
410
- value: $slider-mark-inactive-opacity,
411
- ),
269
+ $variables: (
270
+ active-color,
271
+ focus-color,
272
+ addon-top,
273
+ addon-margin-top,
274
+ addon-left-offset,
275
+ label-floating-top,
276
+ label-left-offset,
277
+ label-top-offset,
278
+ label-active-padding,
279
+ label-active-background-color,
280
+ text-field-height,
281
+ text-field-padding-left,
282
+ text-field-padding-right,
283
+ text-field-padding-top,
284
+ text-field-border-color,
285
+ text-field-hover-border-color,
286
+ text-field-filled-color,
287
+ textarea-height,
288
+ textarea-padding,
289
+ switch-track-background-color,
290
+ switch-ball-background-color,
291
+ slider-color,
292
+ slider-active-color,
293
+ slider-inactive-color,
294
+ slider-size,
295
+ slider-active-size,
296
+ slider-inactive-size,
297
+ slider-vertical-size,
298
+ slider-offset-1,
299
+ slider-offset-2,
300
+ slider-tooltip-scale,
301
+ slider-tooltip-translate,
302
+ slider-mark-offset,
303
+ slider-mark-active-color,
304
+ slider-mark-active-opacity,
305
+ slider-mark-inactive-color,
306
+ slider-mark-inactive-opacity
412
307
  );
413
308
 
414
309
  @function get-var($name, $fallback: null) {
415
- $found: utils.validate($var-lookup, $name, "form var");
416
- $var: map.get($found, var);
417
- $value: if($fallback, $fallback, map.get($found, value));
418
-
419
- @if $value {
420
- @return var(#{$var}, #{$value});
310
+ $var: utils.get-var-name($variables, $name, "form");
311
+ @if $fallback {
312
+ @return var(#{$var}, #{$fallback});
421
313
  }
422
314
 
423
315
  @return var(#{$var});
424
316
  }
425
317
 
426
318
  @mixin set-var($name, $value) {
427
- $var: map.get(utils.validate($var-lookup, $name, "form var"), var);
428
-
429
- #{$var}: #{$value};
319
+ @if $value {
320
+ #{utils.get-var-name($variables, $name, "form")}: #{$value};
321
+ }
430
322
  }
431
323
 
432
324
  @mixin use-var($property, $name: $property, $fallback: null) {
@@ -435,15 +327,17 @@ $var-lookup: (
435
327
 
436
328
  @mixin use-light-theme {
437
329
  @if not $disable-everything {
438
- @include set-var(text-border-color, $text-field-light-border-color);
330
+ @include set-var(text-field-border-color, $text-field-light-border-color);
439
331
  @include set-var(
440
- text-hover-border-color,
332
+ text-field-hover-border-color,
441
333
  $text-field-light-hover-border-color
442
334
  );
443
- @include set-var(
444
- text-filled-color,
445
- $text-field-light-filled-background-color
446
- );
335
+ @if not $disable-text-field-filled-theme {
336
+ @include set-var(
337
+ text-field-filled-color,
338
+ $text-field-light-filled-background-color
339
+ );
340
+ }
447
341
  @if not $disable-switch {
448
342
  @include set-var(
449
343
  switch-track-background-color,
@@ -486,15 +380,17 @@ $var-lookup: (
486
380
 
487
381
  @mixin use-dark-theme {
488
382
  @if not $disable-everything {
489
- @include set-var(text-border-color, $text-field-dark-border-color);
383
+ @include set-var(text-field-border-color, $text-field-dark-border-color);
490
384
  @include set-var(
491
- text-hover-border-color,
385
+ text-field-hover-border-color,
492
386
  $text-field-dark-hover-border-color
493
387
  );
494
- @include set-var(
495
- text-filled-color,
496
- $text-field-dark-filled-background-color
497
- );
388
+ @if not $disable-text-field-filled-theme {
389
+ @include set-var(
390
+ text-field-filled-color,
391
+ $text-field-dark-filled-background-color
392
+ );
393
+ }
498
394
  @if not $disable-switch {
499
395
  @include set-var(
500
396
  switch-track-background-color,
@@ -535,387 +431,435 @@ $var-lookup: (
535
431
  }
536
432
  }
537
433
 
538
- @mixin file-input-styles {
539
- .rmd-file-input:focus-within::before {
540
- @include utils.keyboard-only {
434
+ @mixin file-input-styles($disable-layer: false) {
435
+ @if utils.$disable-has-selectors or utils.$disable-focus-visible {
436
+ .rmd-file-input:focus-within::before {
437
+ @include utils.keyboard-only {
438
+ @include interaction.focus-styles;
439
+ }
440
+ }
441
+ } @else {
442
+ .rmd-file-input:has(:focus-visible)::before {
541
443
  @include interaction.focus-styles;
542
444
  }
543
445
  }
544
446
  }
545
447
 
546
- @mixin form-message-styles {
547
- .rmd-form-message-container {
548
- display: flex;
549
- flex-direction: column;
550
- }
448
+ @mixin form-message-styles($disable-layer: false) {
449
+ @include utils.optional-layer(form, $disable-layer) {
450
+ .rmd-form-message-container {
451
+ display: flex;
452
+ flex-direction: column;
453
+ }
551
454
 
552
- .rmd-form-message {
553
- @include utils.map-to-styles($message-typography-styles);
455
+ .rmd-form-message {
456
+ @include utils.map-to-styles($message-typography-styles);
554
457
 
555
- display: flex;
556
- margin: $message-margin-top 0 $message-margin-bottom;
557
- min-height: $message-min-height;
458
+ display: flex;
459
+ margin: $message-margin-top 0 $message-margin-bottom;
460
+ min-height: $message-min-height;
558
461
 
559
- @if not $disable-text-field-filled-theme and $text-field-filled-padding {
560
- &--filled {
561
- padding-left: $text-field-filled-padding;
562
- padding-right: $text-field-filled-padding;
462
+ @if not $disable-text-field-filled-theme and $text-field-filled-padding {
463
+ &--filled {
464
+ padding-left: $text-field-filled-padding;
465
+ padding-right: $text-field-filled-padding;
466
+ }
563
467
  }
564
- }
565
468
 
566
- @if not $disable-text-field-outlined-theme and $text-field-outlined-padding
567
- {
568
- &--outline {
569
- padding-left: $text-field-outlined-padding;
570
- padding-right: $text-field-outlined-padding;
469
+ @if not
470
+ $disable-text-field-outlined-theme and
471
+ $text-field-outlined-padding
472
+ {
473
+ &--outline {
474
+ padding-left: $text-field-outlined-padding;
475
+ padding-right: $text-field-outlined-padding;
476
+ }
571
477
  }
572
- }
573
478
 
574
- @if not
575
- $disable-text-field-underlined-theme and
576
- $text-field-underlined-padding
577
- {
578
- &--underline {
579
- padding-left: $text-field-underlined-padding;
580
- padding-right: $text-field-underlined-padding;
479
+ @if not
480
+ $disable-text-field-underlined-theme and
481
+ $text-field-underlined-padding
482
+ {
483
+ &--underline {
484
+ padding-left: $text-field-underlined-padding;
485
+ padding-right: $text-field-underlined-padding;
486
+ }
581
487
  }
582
- }
583
488
 
584
- &__message {
585
- margin: 0;
586
- }
489
+ &__message {
490
+ margin: 0;
491
+ }
587
492
 
588
- @if not $disable-text-field-counter {
589
- &__counter {
590
- @include utils.auto-rtl(margin-left, auto);
591
- @include utils.auto-rtl(padding-left, $message-counter-spacing);
493
+ @if not $disable-text-field-counter {
494
+ &__counter {
495
+ @include utils.auto-rtl(margin-left, auto);
496
+ @include utils.auto-rtl(padding-left, $message-counter-spacing);
592
497
 
593
- flex-shrink: 0;
594
- white-space: nowrap;
498
+ flex-shrink: 0;
499
+ white-space: nowrap;
500
+ }
595
501
  }
596
502
  }
597
503
  }
598
504
  }
599
505
 
600
- @mixin label-styles {
601
- .rmd-label {
602
- @include utils.map-to-styles($label-typography);
603
-
604
- align-items: center;
605
- display: inline-flex;
606
- transition-duration: transition.$linear-duration;
607
- transition-property: background-color, color, font-size, transform;
608
-
609
- $active-selector: "&--active";
610
- @if not $_disable-text-field-container {
611
- $active-selector: $active-selector +
612
- ", .rmd-text-field-container:focus-within &";
613
- }
614
-
615
- #{$active-selector} {
616
- @include use-var(color, focus-color);
617
- }
506
+ @mixin label-styles($disable-layer: false) {
507
+ @include utils.optional-layer(form, $disable-layer) {
508
+ .rmd-label {
509
+ @include utils.map-to-styles($label-typography);
618
510
 
619
- @if not $disable-floating-label {
620
- &--floating {
621
- @include utils.rtl {
622
- left: auto;
623
- right: 0;
624
- transform: translate(
625
- utils.negate-var(get-var(text-padding-left)),
626
- get-var(floating-top)
627
- );
628
- }
511
+ align-items: center;
512
+ display: inline-flex;
513
+ transition-duration: transition.$linear-duration;
514
+ transition-property: background-color, transform;
629
515
 
630
- left: 0;
631
- // disable pointer events for floating labels so that the input behind
632
- // is clicked instead. this prevents double click events for the Select
633
- // component
634
- pointer-events: none;
635
- position: absolute;
636
- top: 0;
637
- transform: translate(get-var(text-padding-left), get-var(floating-top));
638
- will-change: font-size, transform;
516
+ $active-selector: "&--active";
517
+ @if not $_disable-text-field-container {
518
+ $active-selector: $active-selector +
519
+ ", .rmd-text-field-container:focus-within &";
639
520
  }
640
521
 
641
- &--floating-dense {
642
- @include set-var(floating-top, $label-floating-top-dense);
522
+ #{$active-selector} {
523
+ @include use-var(color, focus-color);
643
524
  }
644
525
 
645
- $floating-active-selector: "&--floating-active";
646
- @if not
647
- $disable-text-field or not
648
- $disable-password or not
649
- $disable-textarea
650
- {
651
- $floating-active-selector: $floating-active-selector +
652
- ", .rmd-text-field-container:focus-within &--floating" +
653
- ", .rmd-text-field:not(:placeholder-shown) + &--floating";
654
- }
655
- @if not $disable-native-select {
656
- $floating-active-selector: $floating-active-selector +
657
- ", .rmd-native-select[multiple] + &--floating" +
658
- ", .rmd-native-select:not(:invalid) + &--floating";
659
- }
526
+ @if not $disable-floating-label {
527
+ &--floating {
528
+ @include utils.rtl {
529
+ left: auto;
530
+ right: 0;
531
+ transform: translate(
532
+ utils.negate-var(get-var(text-field-padding-left)),
533
+ get-var(label-floating-top)
534
+ );
535
+ }
660
536
 
661
- #{$floating-active-selector} {
662
- @include utils.rtl {
537
+ left: 0;
538
+ position: absolute;
539
+ top: 0;
663
540
  transform: translate(
664
- utils.negate-var(get-var(label-left-offset)),
665
- get-var(label-top-offset)
541
+ get-var(text-field-padding-left),
542
+ get-var(label-floating-top)
666
543
  );
667
544
  }
668
- @include use-var(background-color, label-active-background-color);
669
- @include use-var(padding, label-active-padding);
670
545
 
671
- font-size: $label-floating-font-size;
672
- transform: translate(
673
- get-var(label-left-offset),
674
- get-var(label-top-offset)
675
- );
676
- z-index: 1;
546
+ &--floating-dense {
547
+ @include set-var(label-floating-top, $label-floating-top-dense);
548
+ }
549
+
550
+ $floating-active-selector: "&--floating-active";
551
+ @if not
552
+ $disable-text-field or not
553
+ $disable-password or not
554
+ $disable-textarea
555
+ {
556
+ $floating-active-selector: $floating-active-selector +
557
+ ", .rmd-text-field-container:focus-within &--floating" +
558
+ ", .rmd-text-field:not(:placeholder-shown) + &--floating";
559
+ }
560
+ @if not $disable-native-select {
561
+ $floating-active-selector: $floating-active-selector +
562
+ ", .rmd-native-select[multiple] + &--floating" +
563
+ ", .rmd-native-select:not(:invalid) + &--floating";
564
+ }
565
+
566
+ #{$floating-active-selector} {
567
+ @include utils.rtl {
568
+ transform: scale($label-floating-scale)
569
+ translate(
570
+ utils.negate-var(get-var(label-left-offset)),
571
+ get-var(label-top-offset)
572
+ );
573
+ transform-origin: 100% 0;
574
+ }
575
+ @include use-var(background-color, label-active-background-color);
576
+ @include use-var(padding, label-active-padding);
577
+
578
+ transform: scale($label-floating-scale)
579
+ translate(get-var(label-left-offset), get-var(label-top-offset));
580
+ // need to add the `transform-origin` because of the scaling applied.
581
+ // it'll change the position based on the size of the label otherwise
582
+ transform-origin: 0 0;
583
+ z-index: 1;
584
+ }
677
585
  }
678
- }
679
586
 
680
- @if not $disable-label-gap {
681
- &--gap {
682
- gap: $label-gap;
587
+ @if not $disable-label-gap {
588
+ &--gap {
589
+ gap: $label-gap;
590
+ }
683
591
  }
684
- }
685
592
 
686
- @if not $disable-label-reversed {
687
- &--reversed {
688
- flex-direction: row-reverse;
689
- // this makes it so the content is at the starting edge
690
- justify-content: flex-end;
593
+ @if not $disable-label-reversed {
594
+ &--reversed {
595
+ flex-direction: row-reverse;
596
+ // this makes it so the content is at the starting edge
597
+ justify-content: flex-end;
598
+ }
691
599
  }
692
- }
693
600
 
694
- @if not $disable-label-stacked {
695
- &--stacked {
696
- flex-direction: column;
601
+ @if not $disable-label-stacked {
602
+ &--stacked {
603
+ flex-direction: column;
604
+ }
697
605
  }
698
- }
699
606
 
700
- @if not $disable-label-stacked-reversed {
701
- &--stacked-reversed {
702
- flex-direction: column-reverse;
607
+ @if not $disable-label-stacked-reversed {
608
+ &--stacked-reversed {
609
+ flex-direction: column-reverse;
610
+ }
703
611
  }
704
612
  }
705
613
  }
706
614
  }
707
615
 
708
- @mixin text-field-container-styles {
709
- .rmd-text-field-container {
710
- @include use-var(height, text-height);
616
+ @mixin text-field-container-styles($disable-layer: false) {
617
+ @include utils.optional-layer(form, $disable-layer) {
618
+ .rmd-text-field-container {
619
+ @include use-var(height, text-field-height);
711
620
 
712
- align-items: center;
713
- display: flex;
714
- position: relative;
621
+ align-items: center;
622
+ display: flex;
623
+ position: relative;
624
+
625
+ @if not $disable-text-field-container-dense {
626
+ &--dense {
627
+ @include set-var(text-field-height, $text-field-dense-height);
628
+ }
715
629
 
716
- @if not $disable-text-field-container-dense {
717
- &--dense {
718
- @include set-var(text-height, $text-field-dense-height);
630
+ &--dense-label {
631
+ @include set-var(text-field-height, $text-field-label-dense-height);
632
+ }
719
633
  }
720
634
 
721
- &--dense-label {
722
- @include set-var(text-height, $text-field-label-dense-height);
635
+ &--inline {
636
+ display: inline-flex;
723
637
  }
724
- }
725
638
 
726
- &--inline {
727
- display: inline-flex;
728
- }
639
+ &--stretch {
640
+ flex: 1 1 auto;
641
+ width: 100%;
642
+ }
729
643
 
730
- &--stretch {
731
- flex: 1 1 auto;
732
- width: 100%;
733
- }
644
+ &--label {
645
+ @include set-var(text-field-height, $text-field-label-height);
646
+ }
734
647
 
735
- &--label {
736
- @include set-var(text-height, $text-field-label-height);
737
- }
648
+ &--error {
649
+ @if not $disable-text-field-addon {
650
+ @include icon.set-var(color, currentcolor);
651
+ }
652
+ @include set-var(active-color, currentcolor);
653
+ @include set-var(focus-color, currentcolor);
738
654
 
739
- &--error {
740
- @if not $disable-text-field-addon {
741
- @include icon.set-var(color, currentcolor);
655
+ @if not
656
+ $disable-text-field-underlined-theme or not
657
+ $disable-text-field-outlined-theme
658
+ {
659
+ @include set-var(
660
+ text-field-border-color,
661
+ theme.theme-get-var(error-color)
662
+ );
663
+ @include set-var(
664
+ text-field-hover-border-color,
665
+ theme.theme-get-var(error-color)
666
+ );
667
+ }
742
668
  }
743
- @include set-var(active-color, currentcolor);
744
- @include set-var(focus-color, currentcolor);
745
669
 
746
- @if not
747
- $disable-text-field-underlined-theme or not
748
- $disable-text-field-outlined-theme
749
- {
750
- @include set-var(text-border-color, theme.theme-get-var(error-color));
670
+ &--hoverable:hover {
751
671
  @include set-var(
752
- text-hover-border-color,
753
- theme.theme-get-var(error-color)
672
+ text-field-border-color,
673
+ get-var(text-field-hover-border-color)
754
674
  );
755
675
  }
756
- }
757
676
 
758
- &--hoverable:hover {
759
- @include set-var(text-border-color, get-var(text-hover-border-color));
760
- }
677
+ @if not $disable-text-field-outlined-theme {
678
+ &--outline {
679
+ @include set-var(
680
+ text-field-padding-left,
681
+ $text-field-outlined-padding
682
+ );
683
+ @include set-var(
684
+ text-field-padding-right,
685
+ $text-field-outlined-padding
686
+ );
687
+ @include use-var(border-color, text-field-border-color);
688
+ @if not $disable-text-field-addon {
689
+ @include set-var(addon-left-offset, $text-field-outlined-padding);
690
+ }
761
691
 
762
- @if not $disable-text-field-outlined-theme {
763
- &--outline {
764
- @include set-var(text-padding-left, $text-field-outlined-padding);
765
- @include set-var(text-padding-right, $text-field-outlined-padding);
766
- @include set-var(
767
- label-left-offset,
768
- $text-field-outlined-padding - $label-floating-padding
769
- );
770
- @include set-var(label-top-offset, -50%);
771
- @include set-var(label-active-padding, 0 $label-floating-padding);
772
- @include set-var(
773
- label-active-background-color,
774
- theme.theme-get-var(background-color)
775
- );
776
- @include use-var(border-color, text-border-color);
692
+ @if not $disable-floating-label {
693
+ @include set-var(label-left-offset, $text-field-outlined-padding);
694
+ @include set-var(label-top-offset, -50%);
695
+ @include set-var(label-active-padding, 0 $label-floating-padding);
696
+ @include set-var(
697
+ label-active-background-color,
698
+ theme.theme-get-var(background-color)
699
+ );
700
+ }
777
701
 
778
- border-radius: $text-field-border-radius;
779
- border-style: solid;
780
- border-width: $text-field-border-width;
702
+ border-radius: $text-field-border-radius;
703
+ border-style: solid;
704
+ border-width: $text-field-border-width;
781
705
 
782
- &::after {
783
- @include utils.pseudo-element;
706
+ &::after {
707
+ @include utils.pseudo-element;
708
+
709
+ box-shadow: 0
710
+ 0
711
+ 0
712
+ $text-field-border-width-active
713
+ get-var(focus-color);
714
+ opacity: 0;
715
+ transition: opacity transition.$linear-duration;
716
+ }
717
+ }
784
718
 
785
- box-shadow: 0
786
- 0
787
- 0
788
- $text-field-border-width-active
789
- get-var(focus-color);
790
- opacity: 0;
791
- transition: opacity transition.$linear-duration;
719
+ &--outline:focus-within::after,
720
+ &--outline-active::after {
721
+ opacity: 1;
792
722
  }
793
- }
794
723
 
795
- &--outline:focus-within::after,
796
- &--outline-active::after {
797
- opacity: 1;
798
- }
724
+ &--outline-left {
725
+ $distance: calc(
726
+ #{icon.get-var(size)} +
727
+ #{$text-field-outlined-padding +
728
+ $text-field-spacing}
729
+ );
799
730
 
800
- &--outline-left {
801
- $distance: calc(
802
- #{icon.get-var(size)} +
803
- #{$text-field-outlined-padding +
804
- $text-field-spacing}
805
- );
731
+ @include set-var(text-field-padding-left, $distance);
732
+ }
806
733
 
807
- @include set-var(text-padding-left, $distance);
734
+ &--outline-right {
735
+ $distance: calc(#{icon.get-var(size)} + #{$text-field-spacing * 2});
736
+
737
+ @include set-var(text-field-padding-right, $distance);
738
+ }
808
739
  }
809
740
 
810
- &--outline-right {
811
- $distance: calc(#{icon.get-var(size)} + #{$text-field-spacing * 2});
741
+ @if not $disable-text-field-filled-theme {
742
+ &--filled {
743
+ @include set-var(text-field-padding-left, $text-field-filled-padding);
744
+ @include set-var(
745
+ text-field-padding-right,
746
+ $text-field-filled-padding
747
+ );
748
+ @if not $disable-floating-label {
749
+ @include set-var(
750
+ label-left-offset,
751
+ $text-field-filled-padding + $label-floating-padding
752
+ );
753
+ }
812
754
 
813
- @include set-var(text-padding-right, $distance);
814
- }
815
- }
755
+ @if not $disable-text-field-addon {
756
+ @include set-var(addon-left-offset, $text-field-filled-padding);
757
+ }
816
758
 
817
- @if not $disable-text-field-filled-theme {
818
- &--filled {
819
- @include set-var(text-padding-left, $text-field-filled-padding);
820
- @include set-var(text-padding-right, $text-field-filled-padding);
821
- @include set-var(label-left-offset, $text-field-filled-padding);
822
- @include use-var(background-color, text-filled-color);
759
+ @include use-var(background-color, text-field-filled-color);
760
+ }
823
761
  }
824
- }
825
-
826
- // the filled theme uses the same styles as underline
827
- @if not
828
- $disable-text-field-underlined-theme or not
829
- $disable-text-field-filled-theme
830
- {
831
- &--underline {
832
- @include use-var(border-color, text-border-color);
833
762
 
834
- border-bottom-style: solid;
835
- border-bottom-width: $text-field-border-width;
763
+ // the filled theme uses the same styles as underline
764
+ @if not
765
+ $disable-text-field-underlined-theme or not
766
+ $disable-text-field-filled-theme
767
+ {
768
+ &--underline {
769
+ @include use-var(border-color, text-field-border-color);
770
+
771
+ border-bottom-style: solid;
772
+ border-bottom-width: $text-field-border-width;
773
+
774
+ @if $text-field-underlined-padding {
775
+ @include set-var(
776
+ text-field-padding-left,
777
+ $text-field-underlined-padding
778
+ );
779
+ @include set-var(
780
+ text-field-padding-right,
781
+ $text-field-underlined-padding
782
+ );
783
+ }
836
784
 
837
- @if $text-field-underlined-padding {
838
- @include set-var(text-padding-left, $text-field-underlined-padding);
839
- @include set-var(text-padding-right, $text-field-underlined-padding);
785
+ &::after {
786
+ @include use-var(background-color, focus-color);
787
+
788
+ bottom: -$text-field-border-width;
789
+ content: "";
790
+ height: $text-field-border-width-active;
791
+ left: 0;
792
+ position: absolute;
793
+ right: 0;
794
+ transform: scale(0);
795
+ transition: transform
796
+ transition.$linear-duration
797
+ transition.$linear-timing-function;
798
+ z-index: 1;
799
+ }
840
800
  }
841
801
 
842
- &::after {
843
- @include use-var(background-color, focus-color);
802
+ @if $text-field-underlined-placeholder-height {
803
+ &--underline-placeholder {
804
+ @include set-var(
805
+ text-field-padding-top,
806
+ $text-field-underlined-placeholder-addon-padding-top
807
+ );
808
+ height: $text-field-underlined-placeholder-height;
809
+ }
844
810
 
845
- bottom: -$text-field-border-width;
846
- content: "";
847
- height: $text-field-border-width-active;
848
- left: 0;
849
- position: absolute;
850
- right: 0;
851
- transform: scale(0);
852
- transition: transform
853
- transition.$linear-duration
854
- transition.$linear-timing-function;
855
- z-index: 1;
811
+ &--underline-placeholder-only {
812
+ @include set-var(
813
+ text-field-padding-top,
814
+ $text-field-underlined-placeholder-padding-top
815
+ );
816
+ }
856
817
  }
857
- }
858
818
 
859
- @if $text-field-underlined-placeholder-height {
860
- &--underline-placeholder {
819
+ &--underline-labelled {
861
820
  @include set-var(
862
- text-padding-top,
863
- $text-field-underlined-placeholder-addon-padding-top
821
+ text-field-padding-top,
822
+ $text-field-underlined-label-padding-top
864
823
  );
865
- height: $text-field-underlined-placeholder-height;
824
+ @include set-var(addon-margin-top, $text-field-addon-margin);
866
825
  }
867
826
 
868
- &--underline-placeholder-only {
869
- @include set-var(
870
- text-padding-top,
871
- $text-field-underlined-placeholder-padding-top
872
- );
827
+ @if not $disable-text-field-underline-left {
828
+ &--underline-left::after {
829
+ transform-origin: left;
830
+ }
873
831
  }
874
- }
875
-
876
- &--underline-labelled {
877
- @include set-var(
878
- text-padding-top,
879
- $text-field-underlined-label-padding-top
880
- );
881
- @include set-var(addon-margin-top, $text-field-addon-margin);
882
- }
883
832
 
884
- @if not $disable-text-field-underline-left {
885
- &--underline-left::after {
886
- transform-origin: left;
833
+ @if not $disable-text-field-underline-center {
834
+ &--underline-center::after {
835
+ transform-origin: center;
836
+ }
887
837
  }
888
- }
889
838
 
890
- @if not $disable-text-field-underline-center {
891
- &--underline-center::after {
892
- transform-origin: center;
839
+ @if not $disable-text-field-underline-right {
840
+ &--underline-right::after {
841
+ transform-origin: right;
842
+ }
893
843
  }
894
- }
895
844
 
896
- @if not $disable-text-field-underline-right {
897
- &--underline-right::after {
898
- transform-origin: right;
845
+ &:focus-within::after,
846
+ &--underline-active::after {
847
+ transform: scale(1);
899
848
  }
900
- }
901
-
902
- &:focus-within::after,
903
- &--underline-active::after {
904
- transform: scale(1);
905
- }
906
849
 
907
- @if not $disable-text-field-addon {
908
- $addon-offset: "#{icon.get-var(size)} + #{$text-field-underlined-label-left-offset * 2}";
909
- @if $text-field-underlined-padding {
910
- $addon-offset: "#{$addon-offset} + #{$text-field-underlined-padding}";
911
- }
850
+ @if not $disable-text-field-addon {
851
+ $addon-offset: "#{icon.get-var(size)} + #{$text-field-underlined-label-left-offset * 2}";
852
+ @if $text-field-underlined-padding {
853
+ $addon-offset: "#{$addon-offset} + #{$text-field-underlined-padding}";
854
+ }
912
855
 
913
- &--underline-left-addon {
914
- @include set-var(text-padding-left, calc(#{$addon-offset}));
915
- }
856
+ &--underline-left-addon {
857
+ @include set-var(text-field-padding-left, calc(#{$addon-offset}));
858
+ }
916
859
 
917
- &--underline-right-addon {
918
- @include set-var(text-padding-right, calc(#{$addon-offset}));
860
+ &--underline-right-addon {
861
+ @include set-var(text-field-padding-right, calc(#{$addon-offset}));
862
+ }
919
863
  }
920
864
  }
921
865
  }
@@ -925,12 +869,12 @@ $var-lookup: (
925
869
  @mixin _text-field-base-styles {
926
870
  @include utils.map-to-styles($text-field-typography);
927
871
  @include utils.rtl {
928
- @include use-var(padding-left, text-padding-right);
929
- @include use-var(padding-right, text-padding-left);
872
+ @include use-var(padding-left, text-field-padding-right);
873
+ @include use-var(padding-right, text-field-padding-left);
930
874
  }
931
- @include use-var(padding-left, text-padding-left);
932
- @include use-var(padding-right, text-padding-right);
933
- @include use-var(padding-top, text-padding-top);
875
+ @include use-var(padding-left, text-field-padding-left);
876
+ @include use-var(padding-right, text-field-padding-right);
877
+ @include use-var(padding-top, text-field-padding-top);
934
878
 
935
879
  background-color: transparent;
936
880
  border-width: 0;
@@ -945,1122 +889,1261 @@ $var-lookup: (
945
889
  }
946
890
  }
947
891
 
948
- @mixin text-field-styles {
949
- .rmd-text-field {
950
- @include _text-field-base-styles;
892
+ @mixin text-field-styles($disable-layer: false) {
893
+ @include utils.optional-layer(form, $disable-layer) {
894
+ .rmd-text-field {
895
+ @include _text-field-base-styles;
951
896
 
952
- @if $text-field-color-min-width {
953
- &[type="color"] {
954
- min-width: $text-field-color-min-width;
897
+ @if $text-field-color-min-width {
898
+ &[type="color"] {
899
+ min-width: $text-field-color-min-width;
900
+ }
955
901
  }
956
- }
957
902
 
958
- &::placeholder {
959
- @if not $disable-placeholder-ellipsis {
960
- @include typography.text-overflow;
961
- }
903
+ &::placeholder {
904
+ @if not $disable-placeholder-ellipsis {
905
+ @include typography.text-overflow;
906
+ }
962
907
 
963
- @include theme.theme-use-var(color, text-secondary-color);
964
- // want to gain the same font styles as the input/textarea itself,
965
- // just apply different colors as needed instead. Can't just do font: inherit
966
- // since it'll break the styles in firefox.
967
- font-family: inherit;
968
- font-size: inherit;
969
- font-weight: inherit;
908
+ @include theme.theme-use-var(color, text-secondary-color);
909
+ // want to gain the same font styles as the input/textarea itself,
910
+ // just apply different colors as needed instead. Can't just do font: inherit
911
+ // since it'll break the styles in firefox.
912
+ font-family: inherit;
913
+ font-size: inherit;
914
+ font-weight: inherit;
970
915
 
971
- // fix firefox setting opacity to 0.54 by default
972
- opacity: 1;
916
+ // fix firefox setting opacity to 0.54 by default
917
+ opacity: 1;
973
918
 
974
- // Note: doesn't look like firefox applies css transitions to placeholder text?
975
- transition: opacity transition.$linear-duration;
976
- }
919
+ // Note: doesn't look like firefox applies css transitions to placeholder text?
920
+ transition: opacity transition.$linear-duration;
921
+ }
977
922
 
978
- &[disabled]::placeholder {
979
- color: inherit;
980
- }
923
+ &[disabled]::placeholder {
924
+ color: inherit;
925
+ }
981
926
 
982
- &--placeholder-hidden:not(:focus)::placeholder {
983
- opacity: 0;
927
+ &--placeholder-hidden:not(:focus)::placeholder {
928
+ opacity: 0;
929
+ }
984
930
  }
985
931
  }
986
932
  }
987
933
 
988
- @mixin password-styles {
989
- .rmd-password {
990
- @include set-var(text-padding-right, $password-visibility-toggle-spacing);
934
+ @mixin password-styles($disable-layer: false) {
935
+ @include utils.optional-layer(form, $disable-layer) {
936
+ .rmd-password {
937
+ @include set-var(
938
+ text-field-padding-right,
939
+ $password-visibility-toggle-spacing
940
+ );
991
941
 
992
- &__input {
993
- @include utils.auto-rtl(margin-right, button.get-var(icon-size));
994
- }
942
+ &__input {
943
+ @include utils.auto-rtl(margin-right, button.get-var(icon-size));
944
+ }
995
945
 
996
- &__toggle {
997
- @include utils.auto-rtl(right, 0);
946
+ &__toggle {
947
+ @include utils.auto-rtl(right, 0);
998
948
 
999
- position: absolute;
949
+ position: absolute;
950
+ }
1000
951
  }
1001
952
  }
1002
953
  }
1003
954
 
1004
- @mixin textarea-container-styles {
1005
- .rmd-textarea-container {
1006
- @include set-var(addon-top, $textarea-addon-top);
1007
-
1008
- height: auto;
1009
- max-width: 100%;
1010
- padding-top: calc(
1011
- #{get-var(text-padding-top)} + #{get-var(textarea-padding)}
1012
- );
1013
-
1014
- &--cursor:hover {
1015
- // need to add this cursor back since the textarea container adds padding to
1016
- // itself instead of the textarea so it loses this cursor. the container
1017
- // element will still focus the textarea when clicked
1018
- cursor: text;
1019
- }
955
+ @mixin textarea-container-styles($disable-layer: false) {
956
+ @include utils.optional-layer(form, $disable-layer) {
957
+ .rmd-textarea-container {
958
+ @include set-var(addon-top, $textarea-addon-top);
1020
959
 
1021
- @if not
1022
- $disable-text-field-filled-theme or not
1023
- $disable-text-field-underlined-theme
1024
- {
1025
- &--underline-labelled {
1026
- @include set-var(textarea-padding, 0px);
1027
- @include set-var(
1028
- floating-top,
1029
- $text-field-underlined-label-padding-top
1030
- );
1031
- }
1032
- }
960
+ height: auto;
961
+ max-width: 100%;
962
+ padding-top: calc(
963
+ #{get-var(text-field-padding-top)} + #{get-var(textarea-padding)}
964
+ );
1033
965
 
1034
- @if not $disable-textarea-resizing-rows {
1035
- &--height {
1036
- height: calc(
1037
- #{get-var(text-padding-top)} +
1038
- #{get-var(textarea-padding)} +
1039
- #{get-var(textarea-height)}
1040
- );
966
+ &--cursor:hover {
967
+ // need to add this cursor back since the textarea container adds padding to
968
+ // itself instead of the textarea so it loses this cursor. the container
969
+ // element will still focus the textarea when clicked
970
+ cursor: text;
1041
971
  }
1042
972
 
1043
- &--animate {
1044
- transition: height
1045
- transition.$linear-duration
1046
- transition.$linear-timing-function;
973
+ @if not
974
+ $disable-text-field-filled-theme or not
975
+ $disable-text-field-underlined-theme
976
+ {
977
+ &--underline-labelled {
978
+ @include set-var(textarea-padding, 0px);
979
+ @include set-var(
980
+ label-floating-top,
981
+ $text-field-underlined-label-padding-top
982
+ );
983
+ }
1047
984
  }
1048
985
 
1049
- &__inner {
1050
- height: get-var(textarea-height, 100%);
1051
- width: 100%;
986
+ @if not $disable-textarea-resizing-rows {
987
+ &--height {
988
+ height: calc(
989
+ #{get-var(text-field-padding-top)} +
990
+ #{get-var(textarea-padding)} +
991
+ #{get-var(textarea-height)}
992
+ );
993
+ }
1052
994
 
1053
995
  &--animate {
1054
996
  transition: height
1055
997
  transition.$linear-duration
1056
998
  transition.$linear-timing-function;
1057
999
  }
1000
+
1001
+ &__inner {
1002
+ height: get-var(textarea-height, 100%);
1003
+ width: 100%;
1004
+
1005
+ &--animate {
1006
+ transition: height
1007
+ transition.$linear-duration
1008
+ transition.$linear-timing-function;
1009
+ }
1010
+ }
1058
1011
  }
1059
1012
  }
1060
1013
  }
1061
1014
  }
1062
1015
 
1063
- @mixin textarea-styles {
1064
- .rmd-textarea {
1065
- @include set-var(text-padding-top, 0px);
1066
- @include use-var(min-height, text-height);
1016
+ @mixin textarea-styles($disable-layer: false) {
1017
+ @include utils.optional-layer(form, $disable-layer) {
1018
+ .rmd-textarea {
1019
+ @include set-var(text-field-padding-top, 0px);
1020
+ @include use-var(min-height, text-field-height);
1067
1021
 
1068
- height: get-var(textarea-height, 100%);
1022
+ height: get-var(textarea-height, 100%);
1069
1023
 
1070
- @if not $disable-textarea-resize-horizontal {
1071
- &--rh {
1072
- resize: horizontal;
1024
+ @if not $disable-textarea-resize-horizontal {
1025
+ &--rh {
1026
+ resize: horizontal;
1027
+ }
1073
1028
  }
1074
- }
1075
1029
 
1076
- @if not $disable-textarea-resize-vertical {
1077
- &--rv {
1078
- resize: vertical;
1030
+ @if not $disable-textarea-resize-vertical {
1031
+ &--rv {
1032
+ resize: vertical;
1033
+ }
1079
1034
  }
1080
- }
1081
1035
 
1082
- &--rn {
1083
- overflow: hidden;
1084
- resize: none;
1085
- }
1036
+ &--rn {
1037
+ overflow: hidden;
1038
+ resize: none;
1039
+ }
1086
1040
 
1087
- // only want the textarea to be scrollable if there's a limit on the rows
1088
- // since it'll flash the scrollbar on most OS during the height transition
1089
- &--scrollable {
1090
- overflow: auto;
1091
- }
1041
+ // only want the textarea to be scrollable if there's a limit on the rows
1042
+ // since it'll flash the scrollbar on most OS during the height transition
1043
+ &--scrollable {
1044
+ overflow: auto;
1045
+ }
1092
1046
 
1093
- @if not $disable-textarea-resizing-mask {
1094
- &--mask {
1095
- height: auto;
1096
- left: 0;
1097
- opacity: 0;
1098
- overflow: hidden;
1099
- pointer-events: none;
1100
- position: absolute;
1101
- right: 0;
1102
- z-index: -1;
1047
+ @if not $disable-textarea-resizing-mask {
1048
+ &--mask {
1049
+ height: auto;
1050
+ left: 0;
1051
+ opacity: 0;
1052
+ overflow: hidden;
1053
+ pointer-events: none;
1054
+ position: absolute;
1055
+ right: 0;
1056
+ z-index: -1;
1057
+ }
1103
1058
  }
1104
1059
  }
1105
1060
  }
1106
1061
  }
1107
1062
 
1108
- @mixin select-styles {
1109
- .rmd-select-container {
1110
- outline-style: none;
1111
- }
1063
+ @mixin select-styles($disable-layer: false) {
1064
+ @include utils.optional-layer(form, $disable-layer) {
1065
+ .rmd-select-container {
1066
+ outline-style: none;
1067
+ }
1112
1068
 
1113
- .rmd-select-value {
1114
- @include _text-field-base-styles;
1069
+ .rmd-selected-option {
1070
+ position: absolute;
1071
+ }
1115
1072
 
1116
- align-items: center;
1117
- display: flex;
1118
- gap: 0.5rem;
1119
- position: absolute;
1120
- white-space: nowrap;
1073
+ .rmd-select {
1074
+ // disable pointer events on touch devices so the soft keyboard does not
1075
+ // appear when clicking the select
1076
+ @media (hover: none) and (pointer: coarse) {
1077
+ pointer-events: none;
1078
+ }
1121
1079
 
1122
- &__v {
1123
- @include typography.text-overflow;
1124
- }
1125
- }
1080
+ opacity: 0;
1126
1081
 
1127
- .rmd-select {
1128
- opacity: 0;
1129
- pointer-events: none;
1082
+ // All these additional overrides are provided so that the select will have
1083
+ // the same sizing as a text field with the same props provided.
1084
+ @if not $disable-text-field-underlined-theme {
1085
+ &--underline {
1086
+ @include utils.rtl {
1087
+ @include use-var(padding-right, text-field-padding-left);
1130
1088
 
1131
- // ALl these additional overrides are provided so that the select will have
1132
- // the same sizing as a text field with the same props provided.
1133
- @if not $disable-text-field-underlined-theme {
1134
- &--underline {
1135
- @include utils.rtl {
1136
- @include use-var(padding-right, text-padding-left);
1089
+ padding-left: 0;
1090
+ }
1137
1091
 
1138
- padding-left: 0;
1092
+ padding-right: 0;
1139
1093
  }
1140
-
1141
- padding-right: 0;
1142
1094
  }
1143
- }
1144
1095
 
1145
- @if not $disable-text-field-outlined-theme {
1146
- &--outline {
1147
- @include utils.rtl {
1148
- @include use-var(padding-right, text-padding-left);
1096
+ @if not $disable-text-field-outlined-theme {
1097
+ &--outline {
1098
+ @include utils.rtl {
1099
+ @include use-var(padding-right, text-field-padding-left);
1149
1100
 
1150
- padding-left: $text-field-outlined-padding;
1151
- }
1101
+ padding-left: $text-field-outlined-padding;
1102
+ }
1152
1103
 
1153
- padding-right: $text-field-outlined-padding;
1104
+ padding-right: $text-field-outlined-padding;
1105
+ }
1154
1106
  }
1155
- }
1156
1107
 
1157
- @if not $disable-text-field-filled-theme {
1158
- &--filled {
1159
- @include utils.rtl {
1160
- @include use-var(padding-right, text-padding-left);
1108
+ @if not $disable-text-field-filled-theme {
1109
+ &--filled {
1110
+ @include utils.rtl {
1111
+ @include use-var(padding-right, text-field-padding-left);
1161
1112
 
1162
- padding-left: $text-field-filled-padding;
1163
- }
1113
+ padding-left: $text-field-filled-padding;
1114
+ }
1164
1115
 
1165
- padding-right: $text-field-filled-padding;
1116
+ padding-right: $text-field-filled-padding;
1117
+ }
1166
1118
  }
1167
1119
  }
1168
1120
  }
1169
1121
  }
1170
1122
 
1171
- @mixin option-styles {
1172
- .rmd-option {
1173
- &--icon {
1174
- @include utils.rtl {
1175
- @include list.use-var(padding-left, item-horizontal-padding);
1123
+ @mixin option-styles($disable-layer: false) {
1124
+ @include utils.optional-layer(form, $disable-layer) {
1125
+ .rmd-option {
1126
+ &--icon {
1127
+ @include utils.rtl {
1128
+ @include list.use-var(padding-left, item-horizontal-padding);
1176
1129
 
1177
- padding-right: $option-padding-left;
1178
- }
1130
+ padding-right: $option-padding-left;
1131
+ }
1179
1132
 
1180
- padding-left: $option-padding-left;
1181
- }
1133
+ padding-left: $option-padding-left;
1134
+ }
1182
1135
 
1183
- &--selected {
1184
- @include utils.map-to-styles($option-selected-styles);
1185
- }
1136
+ &--selected {
1137
+ @include utils.map-to-styles($option-selected-styles);
1138
+ }
1186
1139
 
1187
- &__icon {
1188
- @include icon.set-var(spacing, $option-selected-icon-spacing);
1189
- @include icon.set-var(size, $option-selected-icon-size);
1140
+ &__icon {
1141
+ @include icon.set-var(spacing, $option-selected-icon-spacing);
1142
+ @include icon.set-var(size, $option-selected-icon-size);
1143
+ }
1190
1144
  }
1191
1145
  }
1192
1146
  }
1193
1147
 
1194
- @mixin native-select-styles {
1195
- @if not $disable-native-select-multiple {
1196
- .rmd-native-select-container {
1197
- &--multi {
1198
- @include set-var(addon-top, $native-select-addon-top);
1199
- @include use-var(min-height, text-height);
1200
-
1201
- height: auto;
1202
- }
1148
+ @mixin native-select-styles($disable-layer: false) {
1149
+ @include utils.optional-layer(form, $disable-layer) {
1150
+ @if not $disable-native-select-multiple {
1151
+ .rmd-native-select-container {
1152
+ &--multi {
1153
+ @include set-var(addon-top, $native-select-addon-top);
1154
+ @include use-var(min-height, text-field-height);
1203
1155
 
1204
- &--padded {
1205
- padding-top: $native-select-multiple-padding;
1206
- }
1156
+ height: auto;
1157
+ }
1207
1158
 
1208
- @if not
1209
- $disable-text-field-filled-theme or not
1210
- $disable-text-field-underlined-theme
1211
- {
1212
- &--underline {
1213
- @include set-var(text-padding-top, 0);
1159
+ &--padded {
1160
+ padding-top: $native-select-multiple-padding;
1214
1161
  }
1215
1162
 
1216
- &--underline-padded {
1217
- padding-top: $native-select-multiple-underline-padding;
1163
+ @if not
1164
+ $disable-text-field-filled-theme or not
1165
+ $disable-text-field-underlined-theme
1166
+ {
1167
+ &--underline {
1168
+ @include set-var(text-field-padding-top, 0);
1169
+ }
1170
+
1171
+ &--underline-padded {
1172
+ padding-top: $native-select-multiple-underline-padding;
1173
+ }
1218
1174
  }
1219
1175
  }
1220
1176
  }
1221
- }
1222
1177
 
1223
- .rmd-native-select {
1224
- @include _text-field-base-styles;
1225
- @include typography.text-overflow;
1178
+ .rmd-native-select {
1179
+ @include _text-field-base-styles;
1180
+ @include typography.text-overflow;
1226
1181
 
1227
- appearance: none;
1182
+ appearance: none;
1228
1183
 
1229
- &[multiple] {
1230
- overflow: auto;
1184
+ &[multiple] {
1185
+ overflow: auto;
1186
+ }
1231
1187
  }
1232
1188
  }
1233
1189
  }
1234
1190
 
1235
- @mixin text-field-addon-styles {
1236
- .rmd-text-field-addon {
1237
- @if not
1238
- $disable-text-field-filled-theme or not
1239
- $disable-text-field-underlined-theme
1240
- {
1241
- @include use-var(margin-top, addon-margin-top);
1242
- }
1191
+ @mixin text-field-addon-styles($disable-layer: false) {
1192
+ @include utils.optional-layer(form, $disable-layer) {
1193
+ .rmd-text-field-addon {
1194
+ @if not
1195
+ $disable-text-field-filled-theme or not
1196
+ $disable-text-field-underlined-theme
1197
+ {
1198
+ @include use-var(margin-top, addon-margin-top);
1199
+ }
1243
1200
 
1244
- position: absolute;
1201
+ // this makes it so that this container element is the same size as the
1202
+ // child (normally icons). without this, icons would have a height of 30.5px
1203
+ // and no longer be centered
1204
+ display: inline-flex;
1205
+ position: absolute;
1245
1206
 
1246
- // Note: Can't use `:first-child` and `:last-child` since
1247
- // password/autocomplete managers might add another element into the
1248
- // `.rmd-text-field-container` which would prevent these styles from being
1249
- // applied
1250
- &--before {
1251
- @include utils.auto-rtl(left, get-var(label-left-offset));
1252
- }
1207
+ // Note: Can't use `:first-child` and `:last-child` since
1208
+ // password/autocomplete managers might add another element into the
1209
+ // `.rmd-text-field-container` which would prevent these styles from being
1210
+ // applied
1211
+ &--before {
1212
+ @include utils.auto-rtl(left, get-var(addon-left-offset));
1213
+ }
1253
1214
 
1254
- &--after {
1255
- @include utils.auto-rtl(right, $text-field-spacing);
1256
- }
1215
+ &--after {
1216
+ @include utils.auto-rtl(right, $text-field-spacing);
1217
+ }
1257
1218
 
1258
- &--presentational {
1259
- pointer-events: none;
1219
+ &--presentational {
1220
+ pointer-events: none;
1221
+ }
1260
1222
  }
1261
1223
  }
1262
1224
  }
1263
1225
 
1264
- @mixin hidden-input-styles {
1265
- .rmd-hidden-input {
1266
- height: 100%;
1267
- inset: 0;
1268
- margin: 0;
1269
- opacity: 0;
1270
- position: absolute;
1271
- width: 100%;
1272
- z-index: 1;
1273
-
1274
- &:not(:disabled):hover {
1275
- cursor: pointer;
1226
+ @mixin hidden-input-styles($disable-layer: false) {
1227
+ @include utils.optional-layer(form, $disable-layer) {
1228
+ .rmd-hidden-input {
1229
+ height: 100%;
1230
+ inset: 0;
1231
+ margin: 0;
1232
+ opacity: 0;
1233
+ position: absolute;
1234
+ width: 100%;
1235
+ z-index: 1;
1236
+
1237
+ &:not(:disabled):hover {
1238
+ cursor: pointer;
1239
+ }
1276
1240
  }
1277
1241
  }
1278
1242
  }
1279
1243
 
1280
- @mixin input-toggle-styles {
1281
- .rmd-input-toggle {
1282
- @include interaction.surface(
1283
- $focus-selector: "&:focus-within",
1284
- $disabled-selector: "&--disabled",
1285
- $higher-contrast: false
1286
- );
1287
- @include icon.set-var(color, currentcolor);
1288
-
1289
- align-items: center;
1290
- border-radius: $input-toggle-border-radius;
1291
- display: inline-flex;
1292
- flex-shrink: 0;
1293
- justify-content: center;
1294
- padding: $input-toggle-padding;
1295
-
1296
- &--em {
1297
- @include icon.set-var(size, 1em);
1298
- }
1244
+ @mixin input-toggle-styles($disable-layer: false) {
1245
+ @include utils.optional-layer(form, $disable-layer) {
1246
+ .rmd-input-toggle {
1247
+ @include interaction.surface(
1248
+ $focus-selector:
1249
+ if(
1250
+ utils.$disable-has-selectors or utils.$disable-focus-visible,
1251
+ "&:focus-within",
1252
+ "&:has(:focus-visible)"
1253
+ ),
1254
+ $keyboard-only-focus: utils.$disable-has-selectors or
1255
+ utils.$disable-focus-visible,
1256
+ $disabled-selector: "&--disabled",
1257
+ $higher-contrast: false
1258
+ );
1259
+ @include icon.set-var(color, currentcolor);
1299
1260
 
1300
- &--active {
1301
- @include use-var(color, active-color);
1302
- }
1261
+ align-items: center;
1262
+ border-radius: $input-toggle-border-radius;
1263
+ display: inline-flex;
1264
+ flex-shrink: 0;
1265
+ justify-content: center;
1266
+ padding: $input-toggle-padding;
1303
1267
 
1304
- @if $input-toggle-small-size {
1305
- &--small {
1306
- font-size: $input-toggle-small-size;
1268
+ &--em {
1269
+ @include icon.set-var(size, 1em);
1307
1270
  }
1308
- }
1309
1271
 
1310
- @if $input-toggle-dense-size {
1311
- &--dense {
1312
- font-size: $input-toggle-dense-size;
1272
+ &--active {
1273
+ @include use-var(color, active-color);
1313
1274
  }
1314
- }
1315
1275
 
1316
- @if $input-toggle-normal-size {
1317
- &--normal {
1318
- font-size: $input-toggle-normal-size;
1276
+ @if $input-toggle-small-size {
1277
+ &--small {
1278
+ font-size: $input-toggle-small-size;
1279
+ }
1319
1280
  }
1320
- }
1321
1281
 
1322
- @if $input-toggle-large-size {
1323
- &--large {
1324
- font-size: $input-toggle-large-size;
1282
+ @if $input-toggle-dense-size {
1283
+ &--dense {
1284
+ font-size: $input-toggle-dense-size;
1285
+ }
1325
1286
  }
1326
- }
1327
1287
 
1328
- @if not $disable-uncontrolled-input-toggles {
1329
- &--uncontrolled {
1330
- $icon-color-selector: ".rmd-hidden-input:where(:checked:not(:disabled)) ~ .rmd-icon";
1331
- $unchecked-icon-selector: "~ :nth-child(-n + 1 of .rmd-icon)";
1332
- $checked-icon-selector: "~ :nth-child(n + 2 of .rmd-icon)";
1333
- // make sure the active color from the label also applies to the icon when
1334
- // checked
1335
- .rmd-label--active & #{$icon-color-selector} {
1336
- @include use-var(color, focus-color);
1288
+ @if $input-toggle-normal-size {
1289
+ &--normal {
1290
+ font-size: $input-toggle-normal-size;
1337
1291
  }
1292
+ }
1338
1293
 
1339
- // make sure the error color applies to the icon when checked
1340
- &:where(:not(.rmd-error-color)) #{$icon-color-selector} {
1341
- @include use-var(color, active-color);
1294
+ @if $input-toggle-large-size {
1295
+ &--large {
1296
+ font-size: $input-toggle-large-size;
1342
1297
  }
1298
+ }
1343
1299
 
1344
- // when the input is checked, hide the first icon (unchecked state)
1345
- // when the input is not checked, hide the second icon (checked state)
1346
- .rmd-hidden-input:checked #{$unchecked-icon-selector},
1347
- .rmd-hidden-input:not(:checked) #{$checked-icon-selector} {
1348
- opacity: 0;
1349
- position: absolute;
1300
+ @if not $disable-uncontrolled-input-toggles {
1301
+ &--uncontrolled {
1302
+ $icon-color-selector: ".rmd-hidden-input:where(:checked:not(:disabled)) ~ .rmd-icon";
1303
+ $unchecked-icon-selector: "~ :nth-child(-n + 1 of .rmd-icon)";
1304
+ $checked-icon-selector: "~ :nth-child(n + 2 of .rmd-icon)";
1305
+ // make sure the active color from the label also applies to the icon when
1306
+ // checked
1307
+ .rmd-label--active & #{$icon-color-selector} {
1308
+ @include use-var(color, focus-color);
1309
+ }
1310
+
1311
+ // make sure the error color applies to the icon when checked
1312
+ &:where(:not(.rmd-error-color)) #{$icon-color-selector} {
1313
+ @include use-var(color, active-color);
1314
+ }
1315
+
1316
+ // when the input is checked, hide the first icon (unchecked state)
1317
+ // when the input is not checked, hide the second icon (checked state)
1318
+ .rmd-hidden-input:checked #{$unchecked-icon-selector},
1319
+ .rmd-hidden-input:not(:checked) #{$checked-icon-selector} {
1320
+ opacity: 0;
1321
+ position: absolute;
1322
+ }
1350
1323
  }
1351
1324
  }
1352
1325
  }
1353
1326
  }
1354
1327
  }
1355
1328
 
1356
- @mixin switch-styles {
1357
- .rmd-switch {
1358
- padding: $switch-track-vertical-padding $switch-track-horizontal-padding;
1359
-
1360
- &--clickable:hover {
1361
- cursor: pointer;
1362
- }
1329
+ @mixin switch-styles($disable-layer: false) {
1330
+ @include utils.optional-layer(form, $disable-layer) {
1331
+ .rmd-switch {
1332
+ padding: $switch-track-vertical-padding $switch-track-horizontal-padding;
1363
1333
 
1364
- &__input {
1365
- @include utils.keyboard-only {
1366
- &:focus + .rmd-switch__ball::before {
1367
- @include interaction.focus-styles;
1368
- }
1334
+ &--clickable:hover {
1335
+ cursor: pointer;
1369
1336
  }
1370
1337
 
1371
- &:disabled + .rmd-switch__ball {
1372
- cursor: auto;
1373
-
1374
- &:hover::before {
1375
- @include interaction.set-var(background-color, transparent);
1376
- }
1338
+ &--current-color,
1339
+ &--current-color .rmd-switch__input:checked + .rmd-switch__ball {
1340
+ @include set-var(switch-ball-background-color, currentcolor);
1377
1341
  }
1378
- }
1379
1342
 
1380
- &__track {
1381
- @include use-var(background-color, switch-track-background-color);
1343
+ &__input {
1344
+ @if utils.$disable-focus-visible {
1345
+ @include utils.keyboard-only {
1346
+ &:focus + .rmd-switch__ball::before {
1347
+ @include interaction.focus-styles;
1348
+ }
1349
+ }
1350
+ } @else {
1351
+ &:focus-visible + .rmd-switch__ball::before {
1352
+ @include interaction.focus-styles;
1353
+ }
1354
+ }
1382
1355
 
1383
- border-radius: $switch-track-border-radius;
1384
- height: $switch-track-height;
1385
- position: relative;
1386
- transition: background-color transition.$linear-duration
1387
- transition.$linear-timing-function;
1388
- width: $switch-track-width;
1356
+ &:disabled + .rmd-switch__ball {
1357
+ cursor: auto;
1389
1358
 
1390
- &--disabled {
1391
- opacity: $switch-disabled-opacity;
1359
+ &:hover::before {
1360
+ @include interaction.set-var(background-color, transparent);
1361
+ }
1362
+ }
1392
1363
  }
1393
1364
 
1394
- @if not $disable-switch-circular-progress {
1395
- &--async {
1365
+ &__track {
1366
+ @if not $disable-switch-circular-progress {
1396
1367
  @include progress.set-var(
1397
1368
  circular-stroke-width,
1398
1369
  $switch-circular-progress-width
1399
1370
  );
1400
- @include progress.set-var(circular-size, $switch-ball-size);
1371
+ @include progress.set-var(
1372
+ circular-size,
1373
+ $switch-circular-progress-size
1374
+ );
1401
1375
  }
1402
- }
1403
- }
1376
+ @if not $disable-switch-icon {
1377
+ @include icon.set-var(size, $switch-icon-size);
1378
+ }
1379
+ @include use-var(background-color, switch-track-background-color);
1404
1380
 
1405
- &__ball {
1406
- // The focus and disabled states are handled by the `.rmd-switch__input`'s
1407
- // :focus and :disabled' states instead.
1408
- @include interaction.surface(
1409
- $focus-selector: null,
1410
- $disabled-selector: null,
1411
- $clickable: false
1412
- );
1413
- @include utils.auto-rtl(left, calc(-50% + #{$switch-ball-offset}));
1381
+ border-radius: $switch-track-border-radius;
1382
+ height: $switch-track-height;
1383
+ position: relative;
1384
+ transition: background-color transition.$linear-duration
1385
+ transition.$linear-timing-function;
1386
+ width: $switch-track-width;
1414
1387
 
1415
- align-items: center;
1416
- border-radius: $switch-ball-border-radius;
1417
- display: flex;
1418
- height: $switch-ball-size * 2;
1419
- justify-content: center;
1420
- top: calc(-50% - #{$switch-ball-size - $switch-track-height});
1421
- transition-duration: transition.$linear-duration;
1422
- transition-property: background-color, transform;
1423
- transition-timing-function: transition.$linear-timing-function;
1424
- width: $switch-ball-size * 2;
1425
- z-index: 1;
1388
+ &--disabled {
1389
+ opacity: $switch-disabled-opacity;
1390
+ }
1391
+ }
1426
1392
 
1427
- &::after {
1428
- @include use-var(background-color, switch-ball-background-color);
1393
+ &__ball {
1394
+ // The focus and disabled states are handled by the `.rmd-switch__input`'s
1395
+ // :focus and :disabled' states instead.
1396
+ @include interaction.surface(
1397
+ $focus-selector: null,
1398
+ $disabled-selector: null,
1399
+ $clickable: false
1400
+ );
1401
+ @include utils.auto-rtl(left, calc(-50% + #{$switch-ball-offset}));
1429
1402
 
1430
- border-radius: inherit;
1431
- box-shadow: box-shadows.box-shadow(1);
1432
- content: "";
1433
- height: $switch-ball-size;
1434
- left: 25%;
1435
- pointer-events: none;
1436
- position: absolute;
1437
- top: 25%;
1438
- width: $switch-ball-size;
1403
+ align-items: center;
1404
+ border-radius: $switch-ball-border-radius;
1405
+ display: flex;
1406
+ height: $switch-ball-size * 2;
1407
+ justify-content: center;
1408
+ top: calc(-50% - #{$switch-ball-size - $switch-track-height});
1409
+ transition-duration: transition.$linear-duration;
1410
+ transition-property: background-color, transform;
1411
+ transition-timing-function: transition.$linear-timing-function;
1412
+ width: $switch-ball-size * 2;
1439
1413
  z-index: 1;
1440
- }
1441
1414
 
1442
- $active-selector: ".rmd-switch__input:checked + &" +
1443
- if($disable-menu-item-switch, "", ", &--active");
1444
-
1445
- #{$active-selector} {
1446
- $offset: $switch-ball-size + $switch-ball-offset;
1415
+ &::after {
1416
+ @include use-var(background-color, switch-ball-background-color);
1447
1417
 
1448
- @include utils.rtl {
1449
- transform: translateX(-$offset);
1418
+ border-radius: inherit;
1419
+ box-shadow: box-shadows.box-shadow(1);
1420
+ content: "";
1421
+ height: $switch-ball-size;
1422
+ left: 25%;
1423
+ pointer-events: none;
1424
+ position: absolute;
1425
+ top: 25%;
1426
+ width: $switch-ball-size;
1427
+ z-index: 0;
1450
1428
  }
1451
- @include set-var(switch-ball-background-color, get-var(active-color));
1452
1429
 
1453
- transform: translateX($offset);
1430
+ $active-selector: ".rmd-switch__input:checked + &" +
1431
+ if($disable-menu-item-switch, "", ", &--active");
1432
+
1433
+ #{$active-selector} {
1434
+ $offset: $switch-ball-size + $switch-ball-offset;
1435
+
1436
+ @include utils.rtl {
1437
+ transform: translateX(-$offset);
1438
+ }
1439
+ @include set-var(switch-ball-background-color, get-var(active-color));
1440
+
1441
+ transform: translateX($offset);
1442
+ }
1454
1443
  }
1455
1444
  }
1456
1445
  }
1457
1446
  }
1458
1447
 
1459
- @mixin menu-item-input-toggle-styles {
1460
- .rmd-menu-item-input-toggle {
1461
- @if not $disable-menu-item-radio or not $disable-menu-item-switch {
1462
- &__icon {
1463
- // remove the padding since the icon isn't the click target anymore.
1464
- padding: 0;
1448
+ @mixin menu-item-input-toggle-styles($disable-layer: false) {
1449
+ @include utils.optional-layer(form, $disable-layer) {
1450
+ .rmd-menu-item-input-toggle {
1451
+ @if not $disable-menu-item-radio or not $disable-menu-item-switch {
1452
+ &__icon {
1453
+ // remove the padding since the icon isn't the click target anymore.
1454
+ padding: 0;
1465
1455
 
1466
- // disable the hover states since it's handled by the ListItem instead
1467
- &::before {
1468
- content: none;
1456
+ // disable the hover states since it's handled by the ListItem instead
1457
+ &::before {
1458
+ content: none;
1459
+ }
1469
1460
  }
1470
1461
  }
1471
- }
1472
1462
 
1473
- @if not $disable-menu-item-switch {
1474
- // increase the spacing because the switch's ball extends past the
1475
- // container's width
1476
- @if $menu-item-switch-spacing and
1477
- $menu-item-switch-spacing !=
1478
- icon.$spacing
1479
- {
1480
- &--switch {
1481
- @include icon.set-var(spacing, $menu-item-switch-spacing);
1463
+ @if not $disable-menu-item-switch {
1464
+ // this makes it so that the spacing between the switch and the text
1465
+ // aligns with other menu items/icons
1466
+ &__track {
1467
+ @include icon.set-var(size, $switch-track-width);
1482
1468
  }
1483
- }
1484
1469
 
1485
- // decrease the ball size and remove the hover states since it's handled
1486
- // by the ListItem instead. without decreasing the ball size, horizontal
1487
- // scrollbars will appear when the switch is checked
1488
- &__ball {
1489
- @include utils.auto-rtl(left, -$switch-ball-offset);
1470
+ // decrease the ball size and remove the hover states since it's handled
1471
+ // by the ListItem instead. without decreasing the ball size, horizontal
1472
+ // scrollbars will appear when the switch is checked
1473
+ &__ball {
1474
+ @include utils.auto-rtl(left, -$switch-ball-offset);
1490
1475
 
1491
- height: $switch-ball-size;
1492
- top: calc(50% - $switch-ball-size * 0.5);
1493
- width: $switch-ball-size;
1476
+ height: $switch-ball-size;
1477
+ top: calc(50% - $switch-ball-size * 0.5);
1478
+ width: $switch-ball-size;
1494
1479
 
1495
- &::before {
1496
- content: none;
1497
- }
1480
+ &::before {
1481
+ content: none;
1482
+ }
1498
1483
 
1499
- &::after {
1500
- inset: 0;
1484
+ &::after {
1485
+ inset: 0;
1486
+ }
1501
1487
  }
1502
1488
  }
1503
1489
  }
1504
1490
  }
1505
1491
  }
1506
1492
 
1507
- @mixin slider-styles {
1508
- .rmd-slider-container {
1509
- @if $slider-container-addon-spacing and
1510
- $slider-container-addon-spacing !=
1511
- icon.$spacing
1512
- {
1513
- @include icon.set-var(spacing, $slider-container-addon-spacing);
1514
- }
1493
+ @mixin slider-styles($disable-layer: false) {
1494
+ @include utils.optional-layer(form, $disable-layer) {
1495
+ .rmd-slider-container {
1496
+ @if $slider-container-addon-spacing and
1497
+ $slider-container-addon-spacing !=
1498
+ icon.$spacing
1499
+ {
1500
+ @include icon.set-var(spacing, $slider-container-addon-spacing);
1501
+ }
1515
1502
 
1516
- @include icon.use-var(gap, spacing);
1503
+ @include icon.use-var(gap, spacing);
1517
1504
 
1518
- align-items: center;
1505
+ align-items: center;
1519
1506
 
1520
- @if not $disable-horizontal-slider {
1521
- &--h {
1522
- display: flex;
1523
- width: 100%;
1524
- }
1507
+ @if not $disable-horizontal-slider {
1508
+ &--h {
1509
+ display: flex;
1510
+ width: 100%;
1511
+ }
1525
1512
 
1526
- &--pad-left {
1527
- padding-left: $slider-container-padding;
1528
- }
1513
+ &--pad-left {
1514
+ padding-left: $slider-container-padding;
1515
+ }
1529
1516
 
1530
- &--pad-right {
1531
- padding-right: $slider-container-padding;
1517
+ &--pad-right {
1518
+ padding-right: $slider-container-padding;
1519
+ }
1532
1520
  }
1533
- }
1534
1521
 
1535
- @if not $disable-vertical-slider {
1536
- &--v {
1537
- display: inline-flex;
1538
- flex-direction: column-reverse;
1539
- }
1522
+ @if not $disable-vertical-slider {
1523
+ &--v {
1524
+ display: inline-flex;
1525
+ flex-direction: column-reverse;
1526
+ }
1540
1527
 
1541
- &--pad-top {
1542
- padding-top: $slider-container-padding;
1543
- }
1528
+ &--pad-top {
1529
+ padding-top: $slider-container-padding;
1530
+ }
1544
1531
 
1545
- &--pad-bottom {
1546
- padding-bottom: $slider-container-padding;
1532
+ &--pad-bottom {
1533
+ padding-bottom: $slider-container-padding;
1534
+ }
1547
1535
  }
1548
1536
  }
1549
- }
1550
1537
 
1551
- .rmd-slider-track {
1552
- position: relative;
1538
+ .rmd-slider-track {
1539
+ position: relative;
1553
1540
 
1554
- &::before,
1555
- &::after {
1556
- @if $slider-track-color {
1557
- @include use-var(background-color, slider-color);
1541
+ &::before,
1542
+ &::after {
1543
+ @if $slider-track-color {
1544
+ @include use-var(background-color, slider-color);
1545
+ }
1546
+
1547
+ content: "";
1548
+ pointer-events: none;
1549
+ position: absolute;
1558
1550
  }
1559
1551
 
1560
- content: "";
1561
- pointer-events: none;
1562
- position: absolute;
1563
- }
1552
+ &::before {
1553
+ @if not $slider-track-color {
1554
+ @include use-var(background-color, slider-inactive-color);
1555
+ }
1564
1556
 
1565
- &::before {
1566
- @if not $slider-track-color {
1567
- @include use-var(background-color, slider-inactive-color);
1557
+ opacity: $slider-track-inactive-opacity;
1558
+ z-index: $slider-track-inactive-z-index;
1568
1559
  }
1569
1560
 
1570
- opacity: $slider-track-inactive-opacity;
1571
- z-index: $slider-track-inactive-z-index;
1572
- }
1561
+ &::after {
1562
+ @if not $slider-track-color {
1563
+ @include use-var(background-color, slider-active-color);
1564
+ }
1573
1565
 
1574
- &::after {
1575
- @if not $slider-track-color {
1576
- @include use-var(background-color, slider-active-color);
1566
+ opacity: $slider-track-active-opacity;
1567
+ z-index: $slider-track-active-z-index;
1577
1568
  }
1578
1569
 
1579
- opacity: $slider-track-active-opacity;
1580
- z-index: $slider-track-active-z-index;
1581
- }
1582
-
1583
- &--hoverable:hover {
1584
- cursor: pointer;
1585
- }
1570
+ &--hoverable:hover {
1571
+ cursor: pointer;
1572
+ }
1586
1573
 
1587
- &--animate::after {
1588
- transition-duration: $slider-transition-duration;
1589
- transition-timing-function: $slider-transition-timing-function;
1590
- }
1574
+ &--animate::after {
1575
+ transition-duration: $slider-transition-duration;
1576
+ transition-timing-function: $slider-transition-timing-function;
1577
+ }
1591
1578
 
1592
- @if $slider-track-color {
1593
- &--disabled {
1594
- @include set-var(slider-color, $slider-track-disabled-color);
1579
+ @if $slider-track-color {
1580
+ &--disabled {
1581
+ @include set-var(slider-color, $slider-track-disabled-color);
1595
1582
 
1596
- @if $slider-track-inactive-opacity {
1597
- &::before {
1598
- opacity: 1;
1583
+ @if $slider-track-inactive-opacity {
1584
+ &::before {
1585
+ opacity: 1;
1586
+ }
1599
1587
  }
1600
- }
1601
1588
 
1602
- &::after {
1603
- @include set-var(slider-active-size, 0px);
1604
- @if $slider-track-active-opacity {
1605
- opacity: 1;
1589
+ &::after {
1590
+ @include set-var(slider-active-size, 0px);
1591
+ @if $slider-track-active-opacity {
1592
+ opacity: 1;
1593
+ }
1606
1594
  }
1607
1595
  }
1608
1596
  }
1609
- }
1610
1597
 
1611
- @if not $disable-horizontal-slider {
1612
- &--h {
1613
- @include use-var(height, slider-size);
1598
+ @if not $disable-horizontal-slider {
1599
+ &--h {
1600
+ @include use-var(height, slider-size);
1614
1601
 
1615
- align-items: center;
1616
- display: flex;
1617
- width: 100%;
1602
+ align-items: center;
1603
+ display: flex;
1604
+ width: 100%;
1605
+
1606
+ &::before {
1607
+ @include use-var(height, slider-inactive-size);
1608
+
1609
+ width: 100%;
1610
+ }
1611
+
1612
+ &::after {
1613
+ @include use-var(height, slider-active-size);
1614
+ }
1615
+ }
1618
1616
 
1619
- &::before {
1620
- @include use-var(height, slider-inactive-size);
1617
+ &--h1::after {
1618
+ @include utils.auto-rtl(left, 0);
1619
+ @include use-var(max-width, slider-offset-1);
1621
1620
 
1621
+ transition-property: max-width;
1622
1622
  width: 100%;
1623
1623
  }
1624
1624
 
1625
- &::after {
1626
- @include use-var(height, slider-active-size);
1625
+ @if not $disable-range-slider {
1626
+ &--h2::after {
1627
+ @include utils.rtl {
1628
+ left: calc(100% - get-var(slider-offset-2));
1629
+ right: get-var(slider-offset-1);
1630
+ }
1631
+
1632
+ left: get-var(slider-offset-1);
1633
+ right: calc(100% - get-var(slider-offset-2));
1634
+ transition-property: left, right;
1635
+ will-change: left, right;
1636
+ }
1627
1637
  }
1628
1638
  }
1629
1639
 
1630
- &--h1::after {
1631
- @include utils.auto-rtl(left, 0);
1632
- @include use-var(max-width, slider-offset-1);
1640
+ @if not $disable-vertical-slider {
1641
+ &--v {
1642
+ @include use-var(height, slider-vertical-size);
1643
+ @include use-var(width, slider-size);
1633
1644
 
1634
- transition-property: max-width;
1635
- width: 100%;
1636
- }
1645
+ display: inline-flex;
1646
+ justify-content: center;
1637
1647
 
1638
- @if not $disable-range-slider {
1639
- &--h2::after {
1640
- @include utils.rtl {
1641
- left: calc(100% - get-var(slider-offset-2));
1642
- right: get-var(slider-offset-1);
1643
- }
1648
+ &::before {
1649
+ @include use-var(width, slider-inactive-size);
1644
1650
 
1645
- left: get-var(slider-offset-1);
1646
- right: calc(100% - get-var(slider-offset-2));
1647
- transition-property: left, right;
1648
- will-change: left, right;
1649
- }
1650
- }
1651
- }
1651
+ height: 100%;
1652
+ }
1652
1653
 
1653
- @if not $disable-vertical-slider {
1654
- &--v {
1655
- @include use-var(height, slider-vertical-size);
1656
- @include use-var(width, slider-size);
1654
+ &::after {
1655
+ @include use-var(width, slider-active-size);
1657
1656
 
1658
- display: inline-flex;
1659
- justify-content: center;
1657
+ bottom: 0;
1658
+ }
1659
+ }
1660
1660
 
1661
- &::before {
1662
- @include use-var(width, slider-inactive-size);
1661
+ // one thumb track horizontal styles
1662
+ &--v1::after {
1663
+ @include use-var(max-height, slider-offset-1);
1663
1664
 
1664
1665
  height: 100%;
1666
+ transition-property: max-height;
1665
1667
  }
1666
1668
 
1667
- &::after {
1668
- @include use-var(width, slider-active-size);
1669
+ @if not $disable-range-slider {
1670
+ // two thumb track horizontal styles
1671
+ &--v2::after {
1672
+ @include use-var(bottom, slider-offset-1);
1669
1673
 
1670
- bottom: 0;
1674
+ top: calc(100% - #{get-var(slider-offset-2)});
1675
+ transition-property: bottom, top;
1676
+ will-change: bottom, top;
1677
+ }
1671
1678
  }
1672
1679
  }
1680
+ }
1673
1681
 
1674
- // one thumb track horizontal styles
1675
- &--v1::after {
1676
- @include use-var(max-height, slider-offset-1);
1682
+ .rmd-slider-thumb {
1683
+ @include use-var(
1684
+ background-color,
1685
+ if($slider-track-color, slider-color, slider-active-color)
1686
+ );
1677
1687
 
1678
- height: 100%;
1679
- transition-property: max-height;
1680
- }
1688
+ border-radius: $slider-thumb-border-radius;
1689
+ height: $slider-thumb-size;
1690
+ outline-style: none;
1691
+ position: absolute;
1692
+ width: $slider-thumb-size;
1693
+ z-index: $slider-thumb-z-index;
1681
1694
 
1682
- @if not $disable-range-slider {
1683
- // two thumb track horizontal styles
1684
- &--v2::after {
1685
- @include use-var(bottom, slider-offset-1);
1695
+ &::after {
1696
+ @include utils.pseudo-element($z-index: null);
1686
1697
 
1687
- top: calc(100% - #{get-var(slider-offset-2)});
1688
- transition-property: bottom, top;
1689
- will-change: bottom, top;
1690
- }
1698
+ background-color: inherit;
1699
+ opacity: $slider-thumb-bubble-opacity;
1700
+ transition: transform $slider-transition-duration
1701
+ $slider-transition-timing-function;
1691
1702
  }
1692
- }
1693
- }
1694
1703
 
1695
- .rmd-slider-thumb {
1696
- @include use-var(
1697
- background-color,
1698
- if($slider-track-color, slider-color, slider-active-color)
1699
- );
1700
- @include utils.keyboard-only {
1701
- &:focus::after {
1702
- transform: scale($slider-thumb-focus-scale);
1704
+ @if utils.$disable-focus-visible {
1705
+ @include utils.keyboard-only {
1706
+ &:focus::after {
1707
+ transform: scale($slider-thumb-focus-scale);
1708
+ }
1709
+ }
1710
+ } @else {
1711
+ &:focus-visible::after {
1712
+ transform: scale($slider-thumb-focus-scale);
1713
+ }
1703
1714
  }
1704
- }
1705
- @include utils.touch-only {
1706
- &:hover::after,
1707
- &--active:after,
1708
- &--active:hover::after {
1709
- transform: none;
1715
+
1716
+ @include utils.mouse-hover(false) {
1717
+ &:hover::after,
1718
+ &--active::after,
1719
+ &--active:hover::after {
1720
+ transform: scale($slider-thumb-active-scale);
1721
+ }
1710
1722
  }
1711
- }
1712
1723
 
1713
- border-radius: $slider-thumb-border-radius;
1714
- height: $slider-thumb-size;
1715
- outline-style: none;
1716
- position: absolute;
1717
- width: $slider-thumb-size;
1718
- z-index: $slider-thumb-z-index;
1724
+ &--animate {
1725
+ transition-duration: $slider-transition-duration;
1726
+ transition-timing-function: $slider-transition-timing-function;
1727
+ }
1719
1728
 
1720
- &::after {
1721
- @include utils.pseudo-element($z-index: null);
1729
+ &--disabled {
1730
+ background-color: $slider-thumb-disabled-color;
1722
1731
 
1723
- background-color: inherit;
1724
- opacity: $slider-thumb-bubble-opacity;
1725
- transition: transform $slider-transition-duration
1726
- $slider-transition-timing-function;
1727
- }
1732
+ // prevent hover effects like the "bubble"
1733
+ pointer-events: none;
1734
+ }
1728
1735
 
1729
- &:hover::after {
1730
- transform: scale($slider-thumb-focus-scale);
1731
- }
1736
+ &--mask {
1737
+ @include theme.theme-use-var(background-color);
1732
1738
 
1733
- &--active::after,
1734
- &--active:hover::after {
1735
- transform: scale($slider-thumb-active-scale);
1736
- }
1739
+ border-radius: 0;
1740
+ }
1737
1741
 
1738
- &--animate {
1739
- transition-duration: $slider-transition-duration;
1740
- transition-timing-function: $slider-transition-timing-function;
1741
- }
1742
+ @if not $disable-horizontal-slider {
1743
+ &--h {
1744
+ @include utils.rtl {
1745
+ transform: translateX(50%);
1746
+ transition-property: right;
1747
+ }
1742
1748
 
1743
- &--disabled {
1744
- background-color: $slider-thumb-disabled-color;
1749
+ transform: translateX(-50%);
1750
+ transition-property: left;
1751
+ }
1745
1752
 
1746
- // prevent hover effects like the "bubble"
1747
- pointer-events: none;
1748
- }
1753
+ &--h1 {
1754
+ @include utils.auto-rtl(left, get-var(slider-offset-1));
1755
+ }
1749
1756
 
1750
- &--mask {
1751
- @include theme.theme-use-var(background-color);
1757
+ @if not $disable-range-slider {
1758
+ &--h2 {
1759
+ @include utils.auto-rtl(left, get-var(slider-offset-2));
1760
+ }
1761
+ }
1752
1762
 
1753
- border-radius: 0;
1754
- }
1763
+ &--disabled-h {
1764
+ @include utils.rtl {
1765
+ transform: translateX(50%) scale($slider-thumb-disabled-scale);
1766
+ }
1755
1767
 
1756
- @if not $disable-horizontal-slider {
1757
- &--h {
1758
- @include utils.rtl {
1759
- transform: translateX(50%);
1760
- transition-property: right;
1768
+ transform: translateX(-50%) scale($slider-thumb-disabled-scale);
1761
1769
  }
1762
1770
 
1763
- transform: translateX(-50%);
1764
- transition-property: left;
1765
- }
1771
+ &--mask-h {
1772
+ @include utils.rtl {
1773
+ transform: translateX(50%) scale($slider-thumb-mask-scale);
1774
+ }
1766
1775
 
1767
- &--h1 {
1768
- @include utils.auto-rtl(left, get-var(slider-offset-1));
1776
+ transform: translateX(-50%) scale($slider-thumb-mask-scale);
1777
+ }
1769
1778
  }
1770
1779
 
1771
- @if not $disable-range-slider {
1772
- &--h2 {
1773
- @include utils.auto-rtl(left, get-var(slider-offset-2));
1780
+ @if not $disable-vertical-slider {
1781
+ &--v {
1782
+ // want the thumb to be aligned so that the center is at the current value.
1783
+ // without this transformation, the thumb's bottom side would be aligned
1784
+ // with the current value
1785
+ transform: translateY(50%);
1786
+ transition-property: bottom;
1774
1787
  }
1775
- }
1776
1788
 
1777
- &--disabled-h {
1778
- @include utils.rtl {
1779
- transform: translateX(50%) scale($slider-thumb-disabled-scale);
1789
+ &--v1 {
1790
+ @include use-var(bottom, slider-offset-1);
1780
1791
  }
1781
1792
 
1782
- transform: translateX(-50%) scale($slider-thumb-disabled-scale);
1783
- }
1793
+ @if not $disable-range-slider {
1794
+ &--v2 {
1795
+ @include use-var(bottom, slider-offset-2);
1796
+ }
1797
+ }
1784
1798
 
1785
- &--mask-h {
1786
- @include utils.rtl {
1787
- transform: translateX(50%) scale($slider-thumb-mask-scale);
1799
+ &--disabled-v {
1800
+ transform: translateY(50%) scale($slider-thumb-disabled-scale);
1788
1801
  }
1789
1802
 
1790
- transform: translateX(-50%) scale($slider-thumb-mask-scale);
1803
+ &--mask-v {
1804
+ transform: translateY(50%) scale($slider-thumb-mask-scale);
1805
+ }
1791
1806
  }
1792
- }
1793
1807
 
1794
- @if not $disable-vertical-slider {
1795
- &--v {
1796
- // want the thumb to be aligned so that the center is at the current value.
1797
- // without this transformation, the thumb's bottom side would be aligned
1798
- // with the current value
1799
- transform: translateY(50%);
1800
- transition-property: bottom;
1808
+ &__input {
1809
+ appearance: none;
1810
+ height: 0;
1811
+ opacity: 0;
1812
+ pointer-events: none;
1813
+ width: 0;
1801
1814
  }
1815
+ }
1802
1816
 
1803
- &--v1 {
1804
- @include use-var(bottom, slider-offset-1);
1805
- }
1817
+ @if not $disable-discrete-slider {
1818
+ .rmd-slider-tooltip {
1819
+ opacity: 1;
1820
+ position: absolute;
1821
+ z-index: $slider-tooltip-z-index;
1806
1822
 
1807
- @if not $disable-range-slider {
1808
- &--v2 {
1809
- @include use-var(bottom, slider-offset-2);
1823
+ // this is used to generate the triangle
1824
+ &::after {
1825
+ border: $slider-tooltip-caret-size solid transparent;
1826
+ content: "";
1827
+ position: absolute;
1810
1828
  }
1811
- }
1812
1829
 
1813
- &--disabled-v {
1814
- transform: translateY(50%) scale($slider-thumb-disabled-scale);
1815
- }
1830
+ &--animate {
1831
+ transition: transform
1832
+ $slider-transition-duration
1833
+ $slider-transition-timing-function;
1834
+ }
1816
1835
 
1817
- &--mask-v {
1818
- transform: translateY(50%) scale($slider-thumb-mask-scale);
1819
- }
1820
- }
1836
+ @if not $disable-horizontal-slider {
1837
+ &--h {
1838
+ @include utils.rtl {
1839
+ @include set-var(slider-tooltip-translate, 50%);
1840
+ }
1821
1841
 
1822
- &__input {
1823
- appearance: none;
1824
- height: 0;
1825
- opacity: 0;
1826
- pointer-events: none;
1827
- width: 0;
1828
- }
1829
- }
1842
+ top: $slider-tooltip-offset;
1843
+ transform: translateX(get-var(slider-tooltip-translate))
1844
+ scale(get-var(slider-tooltip-scale));
1830
1845
 
1831
- @if not $disable-discrete-slider {
1832
- .rmd-slider-tooltip {
1833
- opacity: 1;
1834
- position: absolute;
1846
+ &::after {
1847
+ @include tooltip.use-var(border-top-color, background-color);
1835
1848
 
1836
- // this is used to generate the triangle
1837
- &::after {
1838
- border: $slider-tooltip-caret-size solid transparent;
1839
- content: "";
1840
- position: absolute;
1841
- }
1849
+ left: 50%;
1850
+ top: 100%;
1851
+ transform: translateX(get-var(slider-tooltip-translate));
1852
+ }
1853
+ }
1842
1854
 
1843
- &--animate {
1844
- transition: transform
1845
- $slider-transition-duration
1846
- $slider-transition-timing-function;
1847
- }
1855
+ &--h-off {
1856
+ @include set-var(slider-tooltip-scale, 0);
1857
+ }
1848
1858
 
1849
- @if not $disable-horizontal-slider {
1850
- &--h {
1851
- @include utils.rtl {
1852
- @include set-var(slider-tooltip-translate, 50%);
1859
+ // have to "duplicate" these styles since the `--h-off` would override the
1860
+ // `--h` styles due to css order.
1861
+ &--h-on {
1862
+ @include set-var(slider-tooltip-scale, 1);
1853
1863
  }
1864
+ }
1854
1865
 
1855
- top: $slider-tooltip-offset;
1856
- transform: translateX(get-var(slider-tooltip-translate))
1857
- scale(get-var(slider-tooltip-scale));
1866
+ @if not $disable-vertical-slider {
1867
+ &--v {
1868
+ // going to force rendering always to the left even in RTL languages
1869
+ left: $slider-tooltip-offset;
1870
+ transform: translateY(50%) scale(1);
1858
1871
 
1859
- &::after {
1860
- @include tooltip.use-var(border-top-color, background-color);
1872
+ &::after {
1873
+ @include tooltip.use-var(border-left-color, background-color);
1861
1874
 
1862
- left: 50%;
1863
- top: 100%;
1864
- transform: translateX(get-var(slider-tooltip-translate));
1875
+ left: 100%;
1876
+ top: 50%;
1877
+ transform: translateY(-50%);
1878
+ }
1865
1879
  }
1866
- }
1867
1880
 
1868
- &--h-off {
1869
- @include set-var(slider-tooltip-scale, 0);
1870
- }
1881
+ &--v-off {
1882
+ transform: translateY(50%) scale(0);
1883
+ }
1871
1884
 
1872
- // have to "duplicate" these styles since the `--h-off` would override the
1873
- // `--h` styles due to css order.
1874
- &--h-on {
1875
- @include set-var(slider-tooltip-scale, 1);
1885
+ // have to "duplicate" these styles since the `--v-off` would override the
1886
+ // `--v` styles due to css order.
1887
+ &--v-on {
1888
+ transform: translateY(50%) scale(1);
1889
+ }
1876
1890
  }
1877
1891
  }
1892
+ }
1878
1893
 
1879
- @if not $disable-vertical-slider {
1880
- &--v {
1881
- // going to force rendering always to the left even in RTL languages
1882
- left: $slider-tooltip-offset;
1883
- transform: translateY(50%) scale(1);
1894
+ @if not $disable-discrete-slider-marks {
1895
+ .rmd-slider-mark {
1896
+ border-radius: $slider-mark-border-radius;
1897
+ position: absolute;
1884
1898
 
1885
- &::after {
1886
- @include tooltip.use-var(border-left-color, background-color);
1899
+ &--inactive {
1900
+ @include use-var(background-color, slider-mark-inactive-color);
1901
+ @include use-var(opacity, slider-mark-inactive-opacity);
1887
1902
 
1888
- left: 100%;
1889
- top: 50%;
1890
- transform: translateY(-50%);
1891
- }
1903
+ z-index: $slider-mark-inactive-z-index;
1892
1904
  }
1893
1905
 
1894
- &--v-off {
1895
- transform: translateY(50%) scale(0);
1896
- }
1906
+ &--active {
1907
+ @include use-var(background-color, slider-mark-active-color);
1908
+ @include use-var(opacity, slider-mark-active-opacity);
1897
1909
 
1898
- // have to "duplicate" these styles since the `--v-off` would override the
1899
- // `--v` styles due to css order.
1900
- &--v-on {
1901
- transform: translateY(50%) scale(1);
1910
+ z-index: $slider-mark-active-z-index;
1902
1911
  }
1903
- }
1904
- }
1905
- }
1906
1912
 
1907
- @if not $disable-discrete-slider-marks {
1908
- .rmd-slider-mark {
1909
- border-radius: $slider-mark-border-radius;
1910
- position: absolute;
1913
+ @if not $disable-horizontal-slider {
1914
+ &--h {
1915
+ @include utils.auto-rtl(left, get-var(slider-mark-offset));
1911
1916
 
1912
- &--inactive {
1913
- @include use-var(background-color, slider-mark-inactive-color);
1914
- @include use-var(opacity, slider-mark-inactive-opacity);
1917
+ height: $slider-mark-height;
1918
+ top: 50%;
1919
+ transform: translateY(-50%);
1920
+ width: $slider-mark-width;
1921
+ }
1922
+ }
1915
1923
 
1916
- z-index: $slider-mark-inactive-z-index;
1924
+ @if not $disable-vertical-slider {
1925
+ &--v {
1926
+ bottom: get-var(slider-mark-offset);
1927
+ height: $slider-mark-width;
1928
+ transform: translateY(50%);
1929
+ width: $slider-mark-height;
1930
+ }
1931
+ }
1917
1932
  }
1933
+ }
1918
1934
 
1919
- &--active {
1920
- @include use-var(background-color, slider-mark-active-color);
1921
- @include use-var(opacity, slider-mark-active-opacity);
1935
+ @if not $disable-discrete-slider-marks-labels {
1936
+ .rmd-slider-mark-label {
1937
+ position: absolute;
1922
1938
 
1923
- z-index: $slider-mark-active-z-index;
1924
- }
1939
+ @if not $disable-horizontal-slider {
1940
+ &--h {
1941
+ @include utils.rtl {
1942
+ @include use-var(right, slider-mark-offset);
1925
1943
 
1926
- @if not $disable-horizontal-slider {
1927
- &--h {
1928
- @include utils.auto-rtl(left, get-var(slider-mark-offset));
1944
+ left: auto;
1945
+ transform: translateX(50%);
1946
+ }
1947
+ @include use-var(left, slider-mark-offset);
1929
1948
 
1930
- height: $slider-mark-height;
1931
- top: 50%;
1932
- transform: translateY(-50%);
1933
- width: $slider-mark-width;
1949
+ top: 100%;
1950
+ transform: translateX(-50%);
1951
+ }
1934
1952
  }
1935
- }
1936
1953
 
1937
- @if not $disable-vertical-slider {
1938
- &--v {
1939
- bottom: get-var(slider-mark-offset);
1940
- height: $slider-mark-width;
1941
- transform: translateY(50%);
1942
- width: $slider-mark-height;
1954
+ @if not $disable-vertical-slider {
1955
+ &--v {
1956
+ @include utils.auto-rtl(left, 100%);
1957
+
1958
+ top: get-var(slider-mark-offset);
1959
+ transform: translateY(-50%);
1960
+ }
1943
1961
  }
1944
1962
  }
1945
1963
  }
1946
1964
  }
1965
+ }
1947
1966
 
1948
- @if not $disable-discrete-slider-marks-labels {
1949
- .rmd-slider-mark-label {
1950
- position: absolute;
1967
+ @mixin variables {
1968
+ @if not $disable-everything {
1969
+ @include set-var(active-color, $active-color);
1970
+ @include set-var(focus-color, $focus-color);
1971
+
1972
+ @if not $disable-label and not $disable-floating-label {
1973
+ @include set-var(label-floating-top, $label-floating-top);
1974
+ @include set-var(label-left-offset, 0px);
1975
+ @include set-var(label-top-offset, 0px);
1976
+ @include set-var(label-active-padding, 0px);
1977
+ @include set-var(label-active-background-color, transparent);
1978
+ }
1979
+
1980
+ @if not $disable-text-field {
1981
+ @include set-var(text-field-height, $text-field-height);
1982
+ @include set-var(text-field-padding-left, 0px);
1983
+ @include set-var(text-field-padding-right, 0px);
1984
+ @include set-var(text-field-padding-top, 0px);
1985
+ @include set-var(text-field-border-color, $text-field-border-color);
1986
+ @include set-var(
1987
+ text-field-hover-border-color,
1988
+ $text-field-hover-border-color
1989
+ );
1951
1990
 
1952
- @if not $disable-horizontal-slider {
1953
- &--h {
1954
- @include utils.rtl {
1955
- @include use-var(right, slider-mark-offset);
1991
+ @include set-var(
1992
+ text-field-filled-color,
1993
+ $text-field-filled-background-color
1994
+ );
1995
+ }
1956
1996
 
1957
- left: auto;
1958
- transform: translateX(50%);
1959
- }
1960
- @include use-var(left, slider-mark-offset);
1997
+ @if not $disable-textarea {
1998
+ @include set-var(textarea-height, $text-field-height);
1999
+ @include set-var(textarea-padding, $textarea-vertical-padding);
2000
+ }
1961
2001
 
1962
- top: 100%;
1963
- transform: translateX(-50%);
2002
+ @if not $disable-text-field-addon {
2003
+ @include set-var(addon-top, auto);
2004
+ @include set-var(addon-margin-top, 0px);
2005
+ @include set-var(addon-left-offset, 0px);
2006
+ }
2007
+
2008
+ @if not $disable-switch {
2009
+ @include set-var(
2010
+ switch-track-background-color,
2011
+ $switch-track-background-color
2012
+ );
2013
+ @include set-var(
2014
+ switch-ball-background-color,
2015
+ $switch-ball-background-color
2016
+ );
2017
+ }
2018
+
2019
+ @if not $disable-slider {
2020
+ @include set-var(slider-color, $slider-track-color);
2021
+ @include set-var(slider-active-color, $slider-track-active-color);
2022
+ @include set-var(slider-inactive-color, $slider-track-inactive-color);
2023
+ @include set-var(slider-size, $slider-size);
2024
+ @include set-var(slider-active-size, $slider-track-active-size);
2025
+ @include set-var(slider-inactive-size, $slider-track-inactive-size);
2026
+ @if not $disable-discrete-slider {
2027
+ @include set-var(slider-tooltip-scale, 1);
2028
+ @include set-var(slider-tooltip-translate, -50%);
2029
+
2030
+ @if not $disable-discrete-slider-marks {
2031
+ @include set-var(slider-mark-offset, 0%);
2032
+ @include set-var(slider-mark-active-color, $slider-mark-active-color);
2033
+ @include set-var(
2034
+ slider-mark-active-opacity,
2035
+ $slider-mark-active-opacity
2036
+ );
2037
+ @include set-var(
2038
+ slider-mark-inactive-color,
2039
+ $slider-mark-inactive-color
2040
+ );
2041
+ @include set-var(
2042
+ slider-mark-inactive-opacity,
2043
+ $slider-mark-inactive-opacity
2044
+ );
1964
2045
  }
1965
2046
  }
1966
2047
 
1967
2048
  @if not $disable-vertical-slider {
1968
- &--v {
1969
- @include utils.auto-rtl(left, 100%);
1970
-
1971
- top: get-var(slider-mark-offset);
1972
- transform: translateY(-50%);
1973
- }
2049
+ @include set-var(slider-vertical-size, $slider-vertical-size);
1974
2050
  }
1975
2051
  }
1976
2052
  }
1977
2053
  }
1978
2054
 
1979
- @mixin styles {
1980
- @include theme.default-system-theme {
1981
- @include use-dark-theme;
1982
- }
2055
+ @mixin styles($disable-layer: false) {
2056
+ @if not $disable-everything {
2057
+ @include utils.optional-layer(form, $disable-layer) {
2058
+ @include theme.default-system-theme {
2059
+ @include use-dark-theme;
2060
+ }
2061
+
2062
+ @if not $disable-fieldset {
2063
+ .rmd-fieldset {
2064
+ &--unstyled {
2065
+ border: 0;
2066
+ margin: 0;
2067
+ min-width: 0; // just so it can shrink correctly in flex or grid
2068
+ padding: 0;
2069
+ }
1983
2070
 
1984
- @if not $disable-fieldset {
1985
- .rmd-fieldset {
1986
- &--unstyled {
1987
- border: 0;
1988
- margin: 0;
1989
- min-width: 0; // just so it can shrink correctly in flex or grid
1990
- padding: 0;
2071
+ &--full-width {
2072
+ flex: 1 1 auto;
2073
+ width: 100%;
2074
+ }
2075
+ }
1991
2076
  }
1992
2077
 
1993
- &--full-width {
1994
- flex: 1 1 auto;
1995
- width: 100%;
2078
+ @if not $disable-label {
2079
+ @include label-styles(true);
1996
2080
  }
1997
- }
1998
- }
1999
-
2000
- @if not $disable-label {
2001
- @include label-styles;
2002
- }
2003
2081
 
2004
- @if not $disable-file-input {
2005
- @include file-input-styles;
2006
- }
2082
+ @if not $disable-file-input {
2083
+ @include file-input-styles(true);
2084
+ }
2007
2085
 
2008
- @if not $disable-message {
2009
- @include form-message-styles;
2010
- }
2086
+ @if not $disable-message {
2087
+ @include form-message-styles(true);
2088
+ }
2011
2089
 
2012
- @if not $_disable-text-field-container {
2013
- @include text-field-container-styles;
2014
- }
2090
+ @if not $_disable-text-field-container {
2091
+ @include text-field-container-styles(true);
2092
+ }
2015
2093
 
2016
- @if not $disable-text-field or not $disable-password or not $disable-textarea
2017
- {
2018
- @include text-field-styles;
2019
- }
2094
+ @if not
2095
+ $disable-text-field or not
2096
+ $disable-password or not
2097
+ $disable-textarea
2098
+ {
2099
+ @include text-field-styles(true);
2100
+ }
2020
2101
 
2021
- @if not $disable-password {
2022
- @include password-styles;
2023
- }
2102
+ @if not $disable-password {
2103
+ @include password-styles(true);
2104
+ }
2024
2105
 
2025
- @if not $disable-textarea {
2026
- @include textarea-container-styles;
2027
- @include textarea-styles;
2028
- }
2106
+ @if not $disable-textarea {
2107
+ @include textarea-container-styles(true);
2108
+ @include textarea-styles(true);
2109
+ }
2029
2110
 
2030
- @if not $disable-select {
2031
- @include select-styles;
2032
- }
2111
+ @if not $disable-select {
2112
+ @include select-styles(true);
2113
+ }
2033
2114
 
2034
- @if not $disable-option {
2035
- @include option-styles;
2036
- }
2115
+ @if not $disable-option {
2116
+ @include option-styles(true);
2117
+ }
2037
2118
 
2038
- @if not $disable-native-select {
2039
- @include native-select-styles;
2040
- }
2119
+ @if not $disable-native-select {
2120
+ @include native-select-styles(true);
2121
+ }
2041
2122
 
2042
- @if not $disable-text-field-addon {
2043
- @include text-field-addon-styles;
2044
- }
2123
+ @if not $disable-text-field-addon {
2124
+ @include text-field-addon-styles(true);
2125
+ }
2045
2126
 
2046
- @if not $disable-checkbox or not $disable-radio or not $disable-switch {
2047
- @include hidden-input-styles;
2048
- @include input-toggle-styles;
2049
- }
2127
+ @if not $disable-checkbox or not $disable-radio or not $disable-switch {
2128
+ @include hidden-input-styles(true);
2129
+ @include input-toggle-styles(true);
2130
+ }
2050
2131
 
2051
- @if not $disable-switch {
2052
- @include switch-styles;
2053
- }
2132
+ @if not $disable-switch {
2133
+ @include switch-styles(true);
2134
+ }
2054
2135
 
2055
- @if not
2056
- $disable-menu-item-checkbox or not
2057
- $disable-menu-item-radio or not
2058
- $disable-menu-item-switch
2059
- {
2060
- @include menu-item-input-toggle-styles;
2061
- }
2136
+ @if not
2137
+ $disable-menu-item-checkbox or not
2138
+ $disable-menu-item-radio or not
2139
+ $disable-menu-item-switch
2140
+ {
2141
+ @include menu-item-input-toggle-styles(true);
2142
+ }
2062
2143
 
2063
- @if not $disable-slider {
2064
- @include slider-styles;
2144
+ @if not $disable-slider {
2145
+ @include slider-styles(true);
2146
+ }
2147
+ }
2065
2148
  }
2066
2149
  }