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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (905) hide show
  1. package/.turbo/turbo-build.log +5 -5
  2. package/.turbo/turbo-lint.log +12 -0
  3. package/.turbo/turbo-test.log +166 -0
  4. package/.turbo/turbo-typecheck.log +4 -0
  5. package/CHANGELOG.md +57 -0
  6. package/coverage/clover.xml +3 -1118
  7. package/coverage/coverage-final.json +1 -7
  8. package/coverage/lcov-report/CircularProgress.tsx.html +799 -0
  9. package/coverage/lcov-report/Dialog.tsx.html +1309 -0
  10. package/coverage/lcov-report/DialogContent.tsx.html +178 -0
  11. package/coverage/lcov-report/DialogFooter.tsx.html +169 -0
  12. package/coverage/lcov-report/LinearProgress.tsx.html +658 -0
  13. package/coverage/lcov-report/MaterialIcon.tsx.html +36 -42
  14. package/coverage/lcov-report/MaterialSymbol.tsx.html +240 -222
  15. package/coverage/lcov-report/MenuItemInputToggle.tsx.html +979 -0
  16. package/coverage/lcov-report/MenuItemSeparator.tsx.html +223 -0
  17. package/coverage/lcov-report/MenuItemTextField.tsx.html +289 -0
  18. package/coverage/lcov-report/Switch.tsx.html +535 -0
  19. package/coverage/lcov-report/SwitchTrack.tsx.html +262 -0
  20. package/coverage/lcov-report/Table.tsx.html +457 -0
  21. package/coverage/lcov-report/TableCell.tsx.html +982 -0
  22. package/coverage/lcov-report/TableCheckbox.tsx.html +709 -0
  23. package/coverage/lcov-report/TableContainer.tsx.html +220 -0
  24. package/coverage/lcov-report/TableFooter.tsx.html +502 -0
  25. package/coverage/lcov-report/TableHeader.tsx.html +541 -0
  26. package/coverage/lcov-report/TableRadio.tsx.html +670 -0
  27. package/coverage/lcov-report/TableRow.tsx.html +289 -0
  28. package/coverage/lcov-report/Tooltip.tsx.html +98 -155
  29. package/coverage/lcov-report/avatar/Avatar.tsx.html +37 -31
  30. package/coverage/lcov-report/avatar/index.html +22 -7
  31. package/coverage/lcov-report/avatar/styles.ts.html +268 -0
  32. package/coverage/lcov-report/button/AsyncButton.tsx.html +217 -10
  33. package/coverage/lcov-report/button/Button.tsx.html +95 -83
  34. package/coverage/lcov-report/button/index.html +12 -12
  35. package/coverage/lcov-report/config.ts.html +33 -18
  36. package/coverage/lcov-report/cssUtils.ts.html +143 -65
  37. package/coverage/lcov-report/dialog/Dialog.tsx.html +170 -167
  38. package/coverage/lcov-report/dialog/DialogContent.tsx.html +178 -0
  39. package/coverage/lcov-report/dialog/DialogFooter.tsx.html +169 -0
  40. package/coverage/lcov-report/dialog/DialogHeader.tsx.html +148 -0
  41. package/coverage/lcov-report/dialog/DialogTitle.tsx.html +256 -0
  42. package/coverage/lcov-report/dialog/index.html +18 -33
  43. package/coverage/lcov-report/dialog/styles.ts.html +439 -0
  44. package/coverage/lcov-report/form/MenuItemInputToggle.tsx.html +36 -24
  45. package/coverage/lcov-report/form/MenuItemTextField.tsx.html +12 -9
  46. package/coverage/lcov-report/form/SliderValueTooltip.tsx.html +319 -0
  47. package/coverage/lcov-report/form/Switch.tsx.html +310 -385
  48. package/coverage/lcov-report/form/SwitchTrack.tsx.html +98 -71
  49. package/coverage/lcov-report/form/index.html +20 -245
  50. package/coverage/lcov-report/form/switchStyles.ts.html +172 -0
  51. package/coverage/lcov-report/form/useRadioGroup.ts.html +79 -79
  52. package/coverage/lcov-report/hoverMode/index.html +116 -0
  53. package/coverage/lcov-report/hoverMode/useHoverMode.ts.html +676 -0
  54. package/coverage/lcov-report/icon/FontIcon.tsx.html +37 -46
  55. package/coverage/lcov-report/icon/index.html +12 -12
  56. package/coverage/lcov-report/icon/styles.ts.html +41 -104
  57. package/coverage/lcov-report/iconConfig.tsx.html +973 -0
  58. package/coverage/lcov-report/index.html +11 -101
  59. package/coverage/lcov-report/link/Link.tsx.html +358 -0
  60. package/coverage/lcov-report/link/index.html +20 -20
  61. package/coverage/lcov-report/list/ListItemLink.tsx.html +29 -35
  62. package/coverage/lcov-report/list/index.html +8 -38
  63. package/coverage/lcov-report/materialConfig.ts.html +703 -0
  64. package/coverage/lcov-report/media-queries/appSize.ts.html +1 -1
  65. package/coverage/lcov-report/media-queries/index.html +10 -10
  66. package/coverage/lcov-report/menu/DropdownMenu.tsx.html +976 -0
  67. package/coverage/lcov-report/menu/Menu.tsx.html +111 -60
  68. package/coverage/lcov-report/menu/MenuConfigurationProvider.tsx.html +637 -0
  69. package/coverage/lcov-report/menu/MenuSheet.tsx.html +37 -13
  70. package/coverage/lcov-report/menu/index.html +35 -65
  71. package/coverage/lcov-report/menu/menuConfig.ts.html +118 -0
  72. package/coverage/lcov-report/progress/CircularProgress.tsx.html +799 -0
  73. package/coverage/lcov-report/progress/LinearProgress.tsx.html +100 -94
  74. package/coverage/lcov-report/progress/index.html +22 -7
  75. package/coverage/lcov-report/src/CoreProviders.tsx.html +20 -20
  76. package/coverage/lcov-report/src/NoSsr.tsx.html +1 -1
  77. package/coverage/lcov-report/src/SsrProvider.tsx.html +10 -10
  78. package/coverage/lcov-report/src/app-bar/AppBar.tsx.html +65 -65
  79. package/coverage/lcov-report/src/app-bar/AppBarTitle.tsx.html +1 -1
  80. package/coverage/lcov-report/src/app-bar/index.html +20 -5
  81. package/coverage/lcov-report/src/avatar/Avatar.tsx.html +36 -27
  82. package/coverage/lcov-report/src/avatar/index.html +22 -7
  83. package/coverage/lcov-report/src/avatar/styles.ts.html +77 -8
  84. package/coverage/lcov-report/src/badge/Badge.tsx.html +1 -1
  85. package/coverage/lcov-report/src/badge/index.html +1 -1
  86. package/coverage/lcov-report/src/box/Box.tsx.html +1 -1
  87. package/coverage/lcov-report/src/box/index.html +10 -25
  88. package/coverage/lcov-report/src/box/styles.ts.html +103 -49
  89. package/coverage/lcov-report/src/button/AsyncButton.tsx.html +833 -284
  90. package/coverage/lcov-report/src/button/Button.tsx.html +87 -87
  91. package/coverage/lcov-report/src/button/ButtonUnstyled.tsx.html +1 -1
  92. package/coverage/lcov-report/src/button/FloatingActionButton.tsx.html +39 -39
  93. package/coverage/lcov-report/src/button/buttonStyles.ts.html +59 -59
  94. package/coverage/lcov-report/src/button/buttonUnstyledStyles.ts.html +1 -1
  95. package/coverage/lcov-report/src/button/index.html +23 -8
  96. package/coverage/lcov-report/src/card/Card.tsx.html +1 -1
  97. package/coverage/lcov-report/src/card/CardContent.tsx.html +1 -1
  98. package/coverage/lcov-report/src/card/CardFooter.tsx.html +1 -1
  99. package/coverage/lcov-report/src/card/CardHeader.tsx.html +1 -1
  100. package/coverage/lcov-report/src/card/CardSubtitle.tsx.html +1 -1
  101. package/coverage/lcov-report/src/card/CardTitle.tsx.html +1 -1
  102. package/coverage/lcov-report/src/card/index.html +95 -5
  103. package/coverage/lcov-report/src/card/styles.ts.html +1 -1
  104. package/coverage/lcov-report/src/chip/Chip.tsx.html +1 -1
  105. package/coverage/lcov-report/src/chip/index.html +1 -1
  106. package/coverage/lcov-report/src/chip/styles.ts.html +1 -1
  107. package/coverage/lcov-report/src/cssUtils.ts.html +68 -59
  108. package/coverage/lcov-report/src/delegateEvent.ts.html +84 -84
  109. package/coverage/lcov-report/src/dialog/Dialog.tsx.html +158 -155
  110. package/coverage/lcov-report/src/dialog/DialogContainer.tsx.html +27 -27
  111. package/coverage/lcov-report/src/dialog/DialogContent.tsx.html +72 -72
  112. package/coverage/lcov-report/src/dialog/DialogFooter.tsx.html +14 -14
  113. package/coverage/lcov-report/src/dialog/DialogHeader.tsx.html +9 -9
  114. package/coverage/lcov-report/src/dialog/DialogTitle.tsx.html +124 -124
  115. package/coverage/lcov-report/src/dialog/FixedDialog.tsx.html +1 -1
  116. package/coverage/lcov-report/src/dialog/NestedDialogProvider.ts.html +3 -3
  117. package/coverage/lcov-report/src/dialog/index.html +21 -21
  118. package/coverage/lcov-report/src/dialog/styles.ts.html +61 -61
  119. package/coverage/lcov-report/src/divider/Divider.tsx.html +24 -24
  120. package/coverage/lcov-report/src/divider/index.html +21 -6
  121. package/coverage/lcov-report/src/divider/styles.ts.html +11 -11
  122. package/coverage/lcov-report/src/draggable/index.html +5 -5
  123. package/coverage/lcov-report/src/draggable/useDraggable.ts.html +322 -322
  124. package/coverage/lcov-report/src/draggable/utils.ts.html +81 -81
  125. package/coverage/lcov-report/src/expansion-panel/ExpansionList.tsx.html +1 -1
  126. package/coverage/lcov-report/src/expansion-panel/ExpansionPanel.tsx.html +1 -1
  127. package/coverage/lcov-report/src/expansion-panel/ExpansionPanelHeader.tsx.html +11 -20
  128. package/coverage/lcov-report/src/expansion-panel/index.html +25 -10
  129. package/coverage/lcov-report/src/expansion-panel/useExpansionList.ts.html +1 -1
  130. package/coverage/lcov-report/src/expansion-panel/useExpansionPanels.ts.html +1 -1
  131. package/coverage/lcov-report/src/focus/index.html +23 -23
  132. package/coverage/lcov-report/src/focus/useFocusContainer.ts.html +142 -121
  133. package/coverage/lcov-report/src/focus/utils.ts.html +37 -37
  134. package/coverage/lcov-report/src/form/Checkbox.tsx.html +1 -1
  135. package/coverage/lcov-report/src/form/Fieldset.tsx.html +1 -1
  136. package/coverage/lcov-report/src/form/FileInput.tsx.html +133 -139
  137. package/coverage/lcov-report/src/form/Form.tsx.html +1 -1
  138. package/coverage/lcov-report/src/form/FormMessage.tsx.html +126 -264
  139. package/coverage/lcov-report/src/form/FormMessageContainer.tsx.html +42 -45
  140. package/coverage/lcov-report/src/form/FormMessageCounter.tsx.html +1 -1
  141. package/coverage/lcov-report/src/form/InputToggle.tsx.html +7 -16
  142. package/coverage/lcov-report/src/form/InputToggleIcon.tsx.html +1 -1
  143. package/coverage/lcov-report/src/form/Label.tsx.html +102 -102
  144. package/coverage/lcov-report/src/form/Legend.tsx.html +1 -1
  145. package/coverage/lcov-report/src/form/MenuItemCheckbox.tsx.html +11 -5
  146. package/coverage/lcov-report/src/form/MenuItemFileInput.tsx.html +3 -3
  147. package/coverage/lcov-report/src/form/MenuItemInputToggle.tsx.html +21 -9
  148. package/coverage/lcov-report/src/form/MenuItemRadio.tsx.html +11 -5
  149. package/coverage/lcov-report/src/form/MenuItemSwitch.tsx.html +1 -1
  150. package/coverage/lcov-report/src/form/MenuItemTextField.tsx.html +13 -4
  151. package/coverage/lcov-report/src/form/NativeSelect.tsx.html +20 -5
  152. package/coverage/lcov-report/src/form/OptGroup.tsx.html +1 -1
  153. package/coverage/lcov-report/src/form/Option.tsx.html +4 -4
  154. package/coverage/lcov-report/src/form/Password.tsx.html +3 -3
  155. package/coverage/lcov-report/src/form/Radio.tsx.html +1 -1
  156. package/coverage/lcov-report/src/form/Select.tsx.html +1 -1
  157. package/coverage/lcov-report/src/form/SelectValue.tsx.html +1 -1
  158. package/coverage/lcov-report/src/form/Slider.tsx.html +129 -9
  159. package/coverage/lcov-report/src/form/SliderContainer.tsx.html +1 -1
  160. package/coverage/lcov-report/src/form/SliderMark.tsx.html +1 -1
  161. package/coverage/lcov-report/src/form/SliderMarkLabel.tsx.html +1 -1
  162. package/coverage/lcov-report/src/form/SliderThumb.tsx.html +43 -7
  163. package/coverage/lcov-report/src/form/SliderTrack.tsx.html +1 -1
  164. package/coverage/lcov-report/src/form/SliderValueMarks.tsx.html +11 -5
  165. package/coverage/lcov-report/src/form/SliderValueTooltip.tsx.html +2 -2
  166. package/coverage/lcov-report/src/form/Switch.tsx.html +310 -373
  167. package/coverage/lcov-report/src/form/SwitchTrack.tsx.html +99 -69
  168. package/coverage/lcov-report/src/form/TextArea.tsx.html +21 -9
  169. package/coverage/lcov-report/src/form/TextField.tsx.html +16 -10
  170. package/coverage/lcov-report/src/form/TextFieldAddon.tsx.html +14 -26
  171. package/coverage/lcov-report/src/form/TextFieldContainer.tsx.html +28 -10
  172. package/coverage/lcov-report/src/form/TextFieldContainerStyles.ts.html +17 -8
  173. package/coverage/lcov-report/src/form/fileUtils.ts.html +3 -3
  174. package/coverage/lcov-report/src/form/formConfig.ts.html +18 -18
  175. package/coverage/lcov-report/src/form/formMessageStyles.ts.html +40 -40
  176. package/coverage/lcov-report/src/form/index.html +14 -164
  177. package/coverage/lcov-report/src/form/inputToggleStyles.ts.html +1 -1
  178. package/coverage/lcov-report/src/form/nativeSelectStyles.ts.html +34 -7
  179. package/coverage/lcov-report/src/form/optionStyles.ts.html +1 -1
  180. package/coverage/lcov-report/src/form/passwordStyles.ts.html +1 -1
  181. package/coverage/lcov-report/src/form/selectStyles.ts.html +1 -1
  182. package/coverage/lcov-report/src/form/selectUtils.ts.html +6 -9
  183. package/coverage/lcov-report/src/form/sliderUtils.ts.html +20 -14
  184. package/coverage/lcov-report/src/form/switchStyles.ts.html +68 -68
  185. package/coverage/lcov-report/src/form/textAreaStyles.ts.html +3 -3
  186. package/coverage/lcov-report/src/form/textFieldStyles.ts.html +1 -1
  187. package/coverage/lcov-report/src/form/useCheckboxGroup.ts.html +2 -2
  188. package/coverage/lcov-report/src/form/useFileUpload.ts.html +28 -19
  189. package/coverage/lcov-report/src/form/useListboxProvider.ts.html +5 -8
  190. package/coverage/lcov-report/src/form/useNumberField.ts.html +10 -10
  191. package/coverage/lcov-report/src/form/useRadioGroup.ts.html +22 -7
  192. package/coverage/lcov-report/src/form/useRangeSlider.ts.html +3 -3
  193. package/coverage/lcov-report/src/form/useResizingTextArea.ts.html +523 -0
  194. package/coverage/lcov-report/src/form/useSlider.ts.html +2 -2
  195. package/coverage/lcov-report/src/form/useTextField.ts.html +32 -26
  196. package/coverage/lcov-report/src/form/utils.ts.html +2 -2
  197. package/coverage/lcov-report/src/form/validation.ts.html +2 -2
  198. package/coverage/lcov-report/src/hoverMode/index.html +1 -1
  199. package/coverage/lcov-report/src/hoverMode/useHoverMode.ts.html +95 -95
  200. package/coverage/lcov-report/src/hoverMode/useHoverModeProvider.ts.html +3 -3
  201. package/coverage/lcov-report/src/icon/FontIcon.tsx.html +34 -43
  202. package/coverage/lcov-report/src/icon/IconRotator.tsx.html +1 -1
  203. package/coverage/lcov-report/src/icon/MaterialIcon.tsx.html +36 -42
  204. package/coverage/lcov-report/src/icon/MaterialSymbol.tsx.html +240 -222
  205. package/coverage/lcov-report/src/icon/SVGIcon.tsx.html +1 -1
  206. package/coverage/lcov-report/src/icon/TextIconSpacing.tsx.html +33 -33
  207. package/coverage/lcov-report/src/icon/iconConfig.tsx.html +973 -0
  208. package/coverage/lcov-report/src/icon/index.html +149 -14
  209. package/coverage/lcov-report/src/icon/material.ts.html +748 -58
  210. package/coverage/lcov-report/src/icon/materialConfig.ts.html +703 -0
  211. package/coverage/lcov-report/src/icon/styles.ts.html +47 -110
  212. package/coverage/lcov-report/src/index.html +8 -8
  213. package/coverage/lcov-report/src/interaction/Ripple.tsx.html +60 -60
  214. package/coverage/lcov-report/src/interaction/RippleContainer.tsx.html +41 -47
  215. package/coverage/lcov-report/src/interaction/UserInteractionModeProvider.tsx.html +240 -240
  216. package/coverage/lcov-report/src/interaction/config.ts.html +7 -7
  217. package/coverage/lcov-report/src/interaction/index.html +100 -10
  218. package/coverage/lcov-report/src/interaction/useElementInteraction.tsx.html +146 -146
  219. package/coverage/lcov-report/src/interaction/useHigherContrastChildren.tsx.html +17 -17
  220. package/coverage/lcov-report/src/interaction/utils.ts.html +171 -171
  221. package/coverage/lcov-report/src/layout/LayoutAppBar.tsx.html +1 -1
  222. package/coverage/lcov-report/src/layout/LayoutNav.tsx.html +60 -60
  223. package/coverage/lcov-report/src/layout/LayoutWindowSplitter.tsx.html +1 -1
  224. package/coverage/lcov-report/src/layout/Main.tsx.html +1 -1
  225. package/coverage/lcov-report/src/layout/index.html +200 -5
  226. package/coverage/lcov-report/src/layout/layoutNavStyles.ts.html +5 -5
  227. package/coverage/lcov-report/src/layout/layoutWindowSplitterStyles.ts.html +1 -1
  228. package/coverage/lcov-report/src/layout/mainStyles.ts.html +1 -1
  229. package/coverage/lcov-report/src/layout/useExpandableLayout.ts.html +1 -1
  230. package/coverage/lcov-report/src/layout/useHorizontalLayoutTransition.ts.html +1 -1
  231. package/coverage/lcov-report/src/layout/useLayoutAppBarHeight.ts.html +1 -1
  232. package/coverage/lcov-report/src/layout/useLayoutTree.ts.html +1 -1
  233. package/coverage/lcov-report/src/layout/useLayoutWindowSplitter.ts.html +1 -1
  234. package/coverage/lcov-report/src/layout/useMainTabIndex.ts.html +1 -1
  235. package/coverage/lcov-report/src/layout/useResizableLayout.ts.html +1 -1
  236. package/coverage/lcov-report/src/layout/useTemporaryLayout.ts.html +3 -3
  237. package/coverage/lcov-report/src/link/Link.tsx.html +39 -9
  238. package/coverage/lcov-report/src/link/SkipToMainContent.tsx.html +1 -1
  239. package/coverage/lcov-report/src/link/index.html +16 -16
  240. package/coverage/lcov-report/src/link/styles.ts.html +1 -1
  241. package/coverage/lcov-report/src/list/List.tsx.html +33 -33
  242. package/coverage/lcov-report/src/list/ListItem.tsx.html +534 -534
  243. package/coverage/lcov-report/src/list/ListItemAddon.tsx.html +33 -33
  244. package/coverage/lcov-report/src/list/ListItemChildren.tsx.html +77 -77
  245. package/coverage/lcov-report/src/list/ListItemLink.tsx.html +2 -2
  246. package/coverage/lcov-report/src/list/ListItemText.tsx.html +35 -35
  247. package/coverage/lcov-report/src/list/ListSubheader.tsx.html +1 -1
  248. package/coverage/lcov-report/src/list/getListItemHeight.ts.html +33 -33
  249. package/coverage/lcov-report/src/list/index.html +128 -8
  250. package/coverage/lcov-report/src/list/listItemStyles.ts.html +1 -1
  251. package/coverage/lcov-report/src/media-queries/AppSizeProvider.tsx.html +59 -59
  252. package/coverage/lcov-report/src/media-queries/appSize.ts.html +1 -1
  253. package/coverage/lcov-report/src/media-queries/index.html +20 -5
  254. package/coverage/lcov-report/src/media-queries/useMediaQuery.ts.html +24 -24
  255. package/coverage/lcov-report/src/menu/DropdownMenu.tsx.html +73 -16
  256. package/coverage/lcov-report/src/menu/Menu.tsx.html +66 -33
  257. package/coverage/lcov-report/src/menu/MenuBar.tsx.html +1 -1
  258. package/coverage/lcov-report/src/menu/MenuButton.tsx.html +3 -3
  259. package/coverage/lcov-report/src/menu/MenuConfigurationProvider.tsx.html +1 -1
  260. package/coverage/lcov-report/src/menu/MenuItem.tsx.html +1 -1
  261. package/coverage/lcov-report/src/menu/MenuItemButton.tsx.html +3 -3
  262. package/coverage/lcov-report/src/menu/MenuItemGroup.tsx.html +1 -1
  263. package/coverage/lcov-report/src/menu/MenuItemSeparator.tsx.html +6 -36
  264. package/coverage/lcov-report/src/menu/MenuSheet.tsx.html +34 -7
  265. package/coverage/lcov-report/src/menu/MenuVisibilityProvider.tsx.html +1 -1
  266. package/coverage/lcov-report/src/menu/MenuWidget.tsx.html +1 -1
  267. package/coverage/lcov-report/src/menu/MenuWidgetKeyboardProvider.tsx.html +1 -1
  268. package/coverage/lcov-report/src/menu/index.html +69 -24
  269. package/coverage/lcov-report/src/menu/useContextMenu.ts.html +1 -1
  270. package/coverage/lcov-report/src/menu/useMenuBarProvider.ts.html +1 -1
  271. package/coverage/lcov-report/src/menu/utils.ts.html +10 -10
  272. package/coverage/lcov-report/src/movement/constants.ts.html +1 -1
  273. package/coverage/lcov-report/src/movement/findMatchIndex.ts.html +1 -1
  274. package/coverage/lcov-report/src/movement/index.html +53 -8
  275. package/coverage/lcov-report/src/movement/useKeyboardMovementProvider.ts.html +92 -92
  276. package/coverage/lcov-report/src/movement/utils.ts.html +1 -1
  277. package/coverage/lcov-report/src/overlay/Overlay.tsx.html +64 -64
  278. package/coverage/lcov-report/src/overlay/index.html +1 -1
  279. package/coverage/lcov-report/src/overlay/overlayStyles.ts.html +28 -28
  280. package/coverage/lcov-report/src/portal/Portal.tsx.html +9 -9
  281. package/coverage/lcov-report/src/portal/PortalContainerProvider.tsx.html +29 -29
  282. package/coverage/lcov-report/src/portal/index.html +20 -5
  283. package/coverage/lcov-report/src/positioning/constants.ts.html +1 -1
  284. package/coverage/lcov-report/src/positioning/createHorizontalPosition.ts.html +63 -63
  285. package/coverage/lcov-report/src/positioning/createVerticalPosition.ts.html +65 -65
  286. package/coverage/lcov-report/src/positioning/getFixedPosition.ts.html +94 -94
  287. package/coverage/lcov-report/src/positioning/index.html +70 -10
  288. package/coverage/lcov-report/src/positioning/useFixedPositioning.ts.html +200 -200
  289. package/coverage/lcov-report/src/positioning/utils.ts.html +111 -111
  290. package/coverage/lcov-report/src/progress/CircularProgress.tsx.html +501 -456
  291. package/coverage/lcov-report/src/progress/LinearProgress.tsx.html +419 -338
  292. package/coverage/lcov-report/src/progress/getProgressA11y.ts.html +1 -1
  293. package/coverage/lcov-report/src/progress/index.html +32 -32
  294. package/coverage/lcov-report/src/responsive-item/ResponsiveItemContainer.tsx.html +1 -1
  295. package/coverage/lcov-report/src/responsive-item/ResponsiveItemOverlay.tsx.html +1 -1
  296. package/coverage/lcov-report/src/responsive-item/index.html +20 -5
  297. package/coverage/lcov-report/src/responsive-item/styles.ts.html +1 -1
  298. package/coverage/lcov-report/src/scroll/ScrollLock.tsx.html +1 -1
  299. package/coverage/lcov-report/src/scroll/getScrollbarWidth.ts.html +25 -25
  300. package/coverage/lcov-report/src/scroll/index.html +5 -5
  301. package/coverage/lcov-report/src/scroll/useScrollLock.ts.html +27 -27
  302. package/coverage/lcov-report/src/segmented-button/SegmentedButton.tsx.html +4 -4
  303. package/coverage/lcov-report/src/segmented-button/SegmentedButtonContainer.tsx.html +29 -8
  304. package/coverage/lcov-report/src/segmented-button/index.html +50 -5
  305. package/coverage/lcov-report/src/segmented-button/segmentedButtonContainerStyles.ts.html +15 -6
  306. package/coverage/lcov-report/src/segmented-button/segmentedButtonStyles.ts.html +1 -1
  307. package/coverage/lcov-report/src/sheet/Sheet.tsx.html +1 -1
  308. package/coverage/lcov-report/src/sheet/index.html +20 -5
  309. package/coverage/lcov-report/src/sheet/styles.ts.html +28 -28
  310. package/coverage/lcov-report/src/snackbar/DefaultToastRenderer.tsx.html +8 -5
  311. package/coverage/lcov-report/src/snackbar/Snackbar.tsx.html +7 -133
  312. package/coverage/lcov-report/src/snackbar/Toast.tsx.html +2 -2
  313. package/coverage/lcov-report/src/snackbar/ToastActionButton.tsx.html +1 -1
  314. package/coverage/lcov-report/src/snackbar/ToastCloseButton.tsx.html +3 -3
  315. package/coverage/lcov-report/src/snackbar/ToastContent.tsx.html +7 -115
  316. package/coverage/lcov-report/src/snackbar/ToastManager.tsx.html +1783 -0
  317. package/coverage/lcov-report/src/snackbar/ToastManagerProvider.tsx.html +16 -1696
  318. package/coverage/lcov-report/src/snackbar/index.html +159 -9
  319. package/coverage/lcov-report/src/snackbar/snackbarStyles.ts.html +214 -0
  320. package/coverage/lcov-report/src/snackbar/toastContentStyles.ts.html +196 -0
  321. package/coverage/lcov-report/src/snackbar/toastStyles.ts.html +1 -1
  322. package/coverage/lcov-report/src/snackbar/useCurrentToastActions.ts.html +1 -1
  323. package/coverage/lcov-report/src/suspense/CircularProgressSuspense.tsx.html +57 -6
  324. package/coverage/lcov-report/src/suspense/NullSuspense.tsx.html +1 -1
  325. package/coverage/lcov-report/src/suspense/index.html +7 -22
  326. package/coverage/lcov-report/src/table/Table.tsx.html +1 -1
  327. package/coverage/lcov-report/src/table/TableBody.tsx.html +1 -1
  328. package/coverage/lcov-report/src/table/TableCell.tsx.html +20 -35
  329. package/coverage/lcov-report/src/table/TableCellContent.tsx.html +2 -2
  330. package/coverage/lcov-report/src/table/TableCheckbox.tsx.html +1 -1
  331. package/coverage/lcov-report/src/table/TableConfigurationProvider.tsx.html +6 -12
  332. package/coverage/lcov-report/src/table/TableContainer.tsx.html +1 -1
  333. package/coverage/lcov-report/src/table/TableContainerProvider.tsx.html +1 -1
  334. package/coverage/lcov-report/src/table/TableFooter.tsx.html +1 -1
  335. package/coverage/lcov-report/src/table/TableHeader.tsx.html +1 -1
  336. package/coverage/lcov-report/src/table/TableRow.tsx.html +1 -1
  337. package/coverage/lcov-report/src/table/index.html +113 -8
  338. package/coverage/lcov-report/src/tabs/Tab.tsx.html +69 -69
  339. package/coverage/lcov-report/src/tabs/TabList.tsx.html +92 -92
  340. package/coverage/lcov-report/src/tabs/TabListScrollButton.tsx.html +61 -61
  341. package/coverage/lcov-report/src/tabs/index.html +143 -8
  342. package/coverage/lcov-report/src/tabs/tabIndicatorStyles.ts.html +157 -0
  343. package/coverage/lcov-report/src/tabs/tabListScrollButtonStyles.ts.html +226 -0
  344. package/coverage/lcov-report/src/tabs/tabListStyles.ts.html +241 -0
  345. package/coverage/lcov-report/src/tabs/tabStyles.ts.html +17 -17
  346. package/coverage/lcov-report/src/tabs/useTabList.ts.html +94 -94
  347. package/coverage/lcov-report/src/tabs/useTabs.ts.html +54 -54
  348. package/coverage/lcov-report/src/tabs/utils.ts.html +3 -3
  349. package/coverage/lcov-report/src/test-utils/IntersectionObserver.ts.html +1 -1
  350. package/coverage/lcov-report/src/test-utils/ResizeObserver.ts.html +1 -1
  351. package/coverage/lcov-report/src/test-utils/data-testid.ts.html +100 -0
  352. package/coverage/lcov-report/src/test-utils/drag.ts.html +1 -1
  353. package/coverage/lcov-report/src/test-utils/index.html +114 -9
  354. package/coverage/lcov-report/src/test-utils/jest-setup.ts.html +21 -9
  355. package/coverage/lcov-report/src/test-utils/matchMedia.ts.html +4 -4
  356. package/coverage/lcov-report/src/test-utils/polyfills/IntersectionObserver.ts.html +4 -4
  357. package/coverage/lcov-report/src/test-utils/polyfills/ResizeObserver.ts.html +3 -3
  358. package/coverage/lcov-report/src/test-utils/polyfills/index.html +1 -1
  359. package/coverage/lcov-report/src/test-utils/polyfills/matchMedia.ts.html +6 -6
  360. package/coverage/lcov-report/src/test-utils/polyfills/offsetParent.ts.html +14 -14
  361. package/coverage/lcov-report/src/test-utils/polyfills/scrollIntoView.ts.html +5 -5
  362. package/coverage/lcov-report/src/test-utils/render.tsx.html +21 -21
  363. package/coverage/lcov-report/src/test-utils/timers.ts.html +1 -1
  364. package/coverage/lcov-report/src/theme/LocalStorageColorSchemeProvider.tsx.html +1 -1
  365. package/coverage/lcov-report/src/theme/ThemeProvider.tsx.html +22 -4
  366. package/coverage/lcov-report/src/theme/colors.ts.html +1 -1
  367. package/coverage/lcov-report/src/theme/cssVars.ts.html +1 -1
  368. package/coverage/lcov-report/src/theme/index.html +71 -11
  369. package/coverage/lcov-report/src/theme/useCSSVariables.ts.html +1 -1
  370. package/coverage/lcov-report/src/theme/useColorScheme.ts.html +1 -1
  371. package/coverage/lcov-report/src/theme/useColorSchemeMetaTag.ts.html +1 -1
  372. package/coverage/lcov-report/src/theme/useColorSchemeProvider.ts.html +1 -1
  373. package/coverage/lcov-report/src/theme/usePrefersColorScheme.ts.html +1 -1
  374. package/coverage/lcov-report/src/theme/utils.ts.html +58 -58
  375. package/coverage/lcov-report/src/tooltip/Tooltip.tsx.html +98 -74
  376. package/coverage/lcov-report/src/tooltip/TooltipHoverModeProvider.tsx.html +60 -6
  377. package/coverage/lcov-report/src/tooltip/constants.ts.html +1 -1
  378. package/coverage/lcov-report/src/tooltip/index.html +72 -27
  379. package/coverage/lcov-report/src/tooltip/tooltipStyles.ts.html +18 -18
  380. package/coverage/lcov-report/src/tooltip/useOverflowTooltip.ts.html +196 -196
  381. package/coverage/lcov-report/src/tooltip/useTooltip.ts.html +511 -211
  382. package/coverage/lcov-report/src/tooltip/useTooltipPosition.ts.html +29 -29
  383. package/coverage/lcov-report/src/tooltip/utils.ts.html +23 -23
  384. package/coverage/lcov-report/src/transition/CSSTransition.tsx.html +1 -1
  385. package/coverage/lcov-report/src/transition/Collapse.tsx.html +1 -1
  386. package/coverage/lcov-report/src/transition/CrossFade.tsx.html +1 -1
  387. package/coverage/lcov-report/src/transition/ScaleTransition.tsx.html +1 -1
  388. package/coverage/lcov-report/src/transition/SkeletonPlaceholder.tsx.html +1 -1
  389. package/coverage/lcov-report/src/transition/Slide.tsx.html +46 -46
  390. package/coverage/lcov-report/src/transition/SlideContainer.tsx.html +1 -1
  391. package/coverage/lcov-report/src/transition/collapseStyles.ts.html +13 -13
  392. package/coverage/lcov-report/src/transition/config.ts.html +187 -0
  393. package/coverage/lcov-report/src/transition/index.html +295 -10
  394. package/coverage/lcov-report/src/transition/maxWidthTransition.ts.html +1 -1
  395. package/coverage/lcov-report/src/transition/useCSSTransition.ts.html +69 -69
  396. package/coverage/lcov-report/src/transition/useCarousel.ts.html +1 -1
  397. package/coverage/lcov-report/src/transition/useCollapseTransition.ts.html +99 -99
  398. package/coverage/lcov-report/src/transition/useCrossFadeTransition.ts.html +1 -1
  399. package/coverage/lcov-report/src/transition/useMaxWidthTransition.ts.html +1 -1
  400. package/coverage/lcov-report/src/transition/useScaleTransition.ts.html +18 -18
  401. package/coverage/lcov-report/src/transition/useSkeletonPlaceholder.ts.html +1 -1
  402. package/coverage/lcov-report/src/transition/useSlideTransition.ts.html +20 -20
  403. package/coverage/lcov-report/src/transition/useTransition.ts.html +277 -250
  404. package/coverage/lcov-report/src/transition/utils.ts.html +68 -68
  405. package/coverage/lcov-report/src/tree/DefaultTreeItemRenderer.tsx.html +2 -2
  406. package/coverage/lcov-report/src/tree/Tree.tsx.html +24 -36
  407. package/coverage/lcov-report/src/tree/TreeGroup.tsx.html +45 -45
  408. package/coverage/lcov-report/src/tree/TreeItem.tsx.html +213 -216
  409. package/coverage/lcov-report/src/tree/TreeItemExpander.tsx.html +3 -3
  410. package/coverage/lcov-report/src/tree/TreeProvider.tsx.html +29 -11
  411. package/coverage/lcov-report/src/tree/index.html +114 -9
  412. package/coverage/lcov-report/src/tree/styles.ts.html +1 -1
  413. package/coverage/lcov-report/src/tree/useTree.ts.html +1 -1
  414. package/coverage/lcov-report/src/tree/useTreeExpansion.ts.html +1 -1
  415. package/coverage/lcov-report/src/tree/useTreeItems.ts.html +10 -13
  416. package/coverage/lcov-report/src/tree/useTreeMovement.ts.html +1 -1
  417. package/coverage/lcov-report/src/tree/useTreeSelection.ts.html +1 -1
  418. package/coverage/lcov-report/src/tree/utils.ts.html +1 -1
  419. package/coverage/lcov-report/src/typography/SrOnly.tsx.html +26 -26
  420. package/coverage/lcov-report/src/typography/TextContainer.tsx.html +1 -1
  421. package/coverage/lcov-report/src/typography/Typography.tsx.html +71 -71
  422. package/coverage/lcov-report/src/typography/WritingDirectionProvider.tsx.html +75 -75
  423. package/coverage/lcov-report/src/typography/index.html +64 -19
  424. package/coverage/lcov-report/src/useAsyncAction.ts.html +25 -25
  425. package/coverage/lcov-report/src/useDebouncedFunction.ts.html +1 -1
  426. package/coverage/lcov-report/src/useDropzone.ts.html +1 -1
  427. package/coverage/lcov-report/src/useEnsuredId.ts.html +8 -8
  428. package/coverage/lcov-report/src/useEnsuredRef.ts.html +22 -19
  429. package/coverage/lcov-report/src/useEnsuredState.ts.html +18 -18
  430. package/coverage/lcov-report/src/useHtmlClassName.ts.html +1 -1
  431. package/coverage/lcov-report/src/useIntersectionObserver.ts.html +32 -32
  432. package/coverage/lcov-report/src/useIsomorphicLayoutEffect.ts.html +1 -1
  433. package/coverage/lcov-report/src/useLocalStorage.ts.html +225 -225
  434. package/coverage/lcov-report/src/useOrientation.ts.html +32 -32
  435. package/coverage/lcov-report/src/usePageInactive.ts.html +25 -25
  436. package/coverage/lcov-report/src/useResizeListener.ts.html +1 -1
  437. package/coverage/lcov-report/src/useResizeObserver.ts.html +28 -28
  438. package/coverage/lcov-report/src/useThrottledFunction.ts.html +1 -1
  439. package/coverage/lcov-report/src/useToggle.ts.html +18 -18
  440. package/coverage/lcov-report/src/useUnmounted.ts.html +11 -11
  441. package/coverage/lcov-report/src/useWindowSize.ts.html +1 -1
  442. package/coverage/lcov-report/src/utils/RenderRecursively.tsx.html +1 -1
  443. package/coverage/lcov-report/src/utils/alphaNumericSort.ts.html +1 -1
  444. package/coverage/lcov-report/src/utils/applyRef.ts.html +11 -11
  445. package/coverage/lcov-report/src/utils/bem.ts.html +50 -50
  446. package/coverage/lcov-report/src/utils/filters.ts.html +1 -1
  447. package/coverage/lcov-report/src/utils/getClientPosition.ts.html +1 -1
  448. package/coverage/lcov-report/src/utils/getPercentage.ts.html +36 -36
  449. package/coverage/lcov-report/src/utils/getRangeDefaultValue.ts.html +1 -1
  450. package/coverage/lcov-report/src/utils/getRangeSteps.ts.html +1 -1
  451. package/coverage/lcov-report/src/utils/identity.ts.html +1 -1
  452. package/coverage/lcov-report/src/utils/index.html +212 -17
  453. package/coverage/lcov-report/src/utils/isElementVisible.ts.html +14 -14
  454. package/coverage/lcov-report/src/utils/loop.ts.html +1 -1
  455. package/coverage/lcov-report/src/utils/nearest.ts.html +1 -1
  456. package/coverage/lcov-report/src/utils/parseCssLengthUnit.ts.html +41 -41
  457. package/coverage/lcov-report/src/utils/randomInt.ts.html +1 -1
  458. package/coverage/lcov-report/src/utils/wait.ts.html +1 -1
  459. package/coverage/lcov-report/src/utils/withinRange.ts.html +1 -1
  460. package/coverage/lcov-report/src/window-splitter/WindowSplitter.tsx.html +1 -1
  461. package/coverage/lcov-report/src/window-splitter/index.html +1 -1
  462. package/coverage/lcov-report/src/window-splitter/useWindowSplitter.ts.html +1 -1
  463. package/coverage/lcov-report/styles.ts.html +134 -320
  464. package/coverage/lcov-report/switchStyles.ts.html +172 -0
  465. package/coverage/lcov-report/table/Table.tsx.html +526 -0
  466. package/coverage/lcov-report/table/TableBody.tsx.html +280 -0
  467. package/coverage/lcov-report/table/TableCell.tsx.html +159 -168
  468. package/coverage/lcov-report/table/TableCheckbox.tsx.html +10 -13
  469. package/coverage/lcov-report/table/TableRadio.tsx.html +670 -0
  470. package/coverage/lcov-report/table/TableRow.tsx.html +370 -0
  471. package/coverage/lcov-report/table/index.html +62 -32
  472. package/coverage/lcov-report/tableCellStyles.ts.html +334 -0
  473. package/coverage/lcov-report/tableContainerStyles.ts.html +142 -0
  474. package/coverage/lcov-report/tableFooterStyles.ts.html +157 -0
  475. package/coverage/lcov-report/tableHeaderStyles.ts.html +163 -0
  476. package/coverage/lcov-report/tableRowStyles.ts.html +169 -0
  477. package/coverage/lcov-report/tableStyles.ts.html +157 -0
  478. package/coverage/lcov-report/tabs/Tab.tsx.html +502 -0
  479. package/coverage/lcov-report/tabs/TabList.tsx.html +796 -0
  480. package/coverage/lcov-report/tabs/index.html +62 -17
  481. package/coverage/lcov-report/tabs/useTabs.ts.html +1567 -0
  482. package/coverage/lcov-report/tabs/utils.ts.html +337 -0
  483. package/coverage/lcov-report/test-utils/index.html +20 -20
  484. package/coverage/lcov-report/test-utils/jest-setup.ts.html +124 -0
  485. package/coverage/lcov-report/tooltip/Tooltip.tsx.html +98 -74
  486. package/coverage/lcov-report/tooltip/TooltipHoverModeProvider.tsx.html +167 -11
  487. package/coverage/lcov-report/tooltip/constants.ts.html +1 -1
  488. package/coverage/lcov-report/tooltip/index.html +32 -17
  489. package/coverage/lcov-report/tooltip/tooltipStyles.ts.html +181 -0
  490. package/coverage/lcov-report/tooltip/useTooltip.ts.html +490 -190
  491. package/coverage/lcov-report/tooltipStyles.ts.html +181 -0
  492. package/coverage/lcov-report/transition/config.ts.html +187 -0
  493. package/coverage/lcov-report/transition/index.html +9 -24
  494. package/coverage/lcov-report/transition/useTransition.ts.html +943 -0
  495. package/coverage/lcov-report/tree/Tree.tsx.html +24 -36
  496. package/coverage/lcov-report/tree/TreeItem.tsx.html +213 -216
  497. package/coverage/lcov-report/tree/TreeProvider.tsx.html +55 -10
  498. package/coverage/lcov-report/tree/index.html +14 -59
  499. package/coverage/lcov-report/typography/WritingDirectionProvider.tsx.html +781 -0
  500. package/coverage/lcov-report/typography/index.html +8 -8
  501. package/coverage/lcov-report/useTooltip.ts.html +651 -375
  502. package/coverage/lcov-report/useTransition.ts.html +934 -0
  503. package/coverage/lcov-report/utils/index.html +24 -39
  504. package/coverage/lcov-report/utils/isElementVisible.ts.html +14 -14
  505. package/coverage/lcov-report/utils/parseCssLengthUnit.ts.html +19 -19
  506. package/coverage/lcov.info +0 -1176
  507. package/dist/_core.scss +5 -1
  508. package/dist/avatar/Avatar.d.ts +2 -15
  509. package/dist/avatar/Avatar.js +3 -2
  510. package/dist/avatar/Avatar.js.map +1 -1
  511. package/dist/avatar/_avatar.scss +4 -2
  512. package/dist/avatar/styles.d.ts +20 -2
  513. package/dist/avatar/styles.js +4 -1
  514. package/dist/avatar/styles.js.map +1 -1
  515. package/dist/button/AsyncButton.d.ts +29 -0
  516. package/dist/button/AsyncButton.js +14 -1
  517. package/dist/button/AsyncButton.js.map +1 -1
  518. package/dist/chip/_chip.scss +0 -16
  519. package/dist/chip/styles.d.ts +1 -1
  520. package/dist/chip/styles.js +3 -4
  521. package/dist/chip/styles.js.map +1 -1
  522. package/dist/cssUtils.d.ts +1 -0
  523. package/dist/cssUtils.js +1 -1
  524. package/dist/cssUtils.js.map +1 -1
  525. package/dist/dialog/Dialog.d.ts +1 -1
  526. package/dist/dialog/Dialog.js +2 -1
  527. package/dist/dialog/Dialog.js.map +1 -1
  528. package/dist/focus/useFocusContainer.d.ts +8 -8
  529. package/dist/focus/useFocusContainer.js +11 -10
  530. package/dist/focus/useFocusContainer.js.map +1 -1
  531. package/dist/form/MenuItemInputToggle.js +2 -2
  532. package/dist/form/MenuItemInputToggle.js.map +1 -1
  533. package/dist/form/MenuItemTextField.d.ts +2 -0
  534. package/dist/form/MenuItemTextField.js.map +1 -1
  535. package/dist/form/Slider.d.ts +41 -5
  536. package/dist/form/Slider.js +2 -1
  537. package/dist/form/Slider.js.map +1 -1
  538. package/dist/form/SliderThumb.d.ts +7 -2
  539. package/dist/form/SliderThumb.js +4 -2
  540. package/dist/form/SliderThumb.js.map +1 -1
  541. package/dist/form/SliderValueMarks.js +1 -1
  542. package/dist/form/SliderValueMarks.js.map +1 -1
  543. package/dist/form/SliderValueTooltip.js +1 -1
  544. package/dist/form/SliderValueTooltip.js.map +1 -1
  545. package/dist/form/Switch.d.ts +3 -2
  546. package/dist/form/Switch.js +7 -26
  547. package/dist/form/Switch.js.map +1 -1
  548. package/dist/form/SwitchTrack.d.ts +2 -1
  549. package/dist/form/SwitchTrack.js +8 -4
  550. package/dist/form/SwitchTrack.js.map +1 -1
  551. package/dist/form/_form.scss +41 -34
  552. package/dist/form/switchStyles.d.ts +1 -0
  553. package/dist/form/switchStyles.js +2 -1
  554. package/dist/form/switchStyles.js.map +1 -1
  555. package/dist/hoverMode/useHoverMode.d.ts +2 -2
  556. package/dist/hoverMode/useHoverMode.js +1 -1
  557. package/dist/hoverMode/useHoverMode.js.map +1 -1
  558. package/dist/icon/FontIcon.d.ts +2 -1
  559. package/dist/icon/FontIcon.js +4 -5
  560. package/dist/icon/FontIcon.js.map +1 -1
  561. package/dist/icon/MaterialIcon.d.ts +2 -2
  562. package/dist/icon/MaterialIcon.js +3 -6
  563. package/dist/icon/MaterialIcon.js.map +1 -1
  564. package/dist/icon/MaterialSymbol.d.ts +15 -8
  565. package/dist/icon/MaterialSymbol.js +15 -11
  566. package/dist/icon/MaterialSymbol.js.map +1 -1
  567. package/dist/icon/iconConfig.js.map +1 -1
  568. package/dist/icon/material.d.ts +1 -1
  569. package/dist/icon/material.js.map +1 -1
  570. package/dist/icon/materialConfig.d.ts +156 -0
  571. package/dist/icon/materialConfig.js +29 -0
  572. package/dist/icon/materialConfig.js.map +1 -0
  573. package/dist/icon/styles.d.ts +0 -15
  574. package/dist/icon/styles.js +2 -4
  575. package/dist/icon/styles.js.map +1 -1
  576. package/dist/index.d.ts +8 -6
  577. package/dist/index.js +8 -6
  578. package/dist/index.js.map +1 -1
  579. package/dist/link/Link.d.ts +12 -6
  580. package/dist/link/Link.js +1 -2
  581. package/dist/link/Link.js.map +1 -1
  582. package/dist/list/ListItemLink.d.ts +1 -1
  583. package/dist/list/ListItemLink.js.map +1 -1
  584. package/dist/menu/DropdownMenu.d.ts +12 -1
  585. package/dist/menu/DropdownMenu.js +13 -4
  586. package/dist/menu/DropdownMenu.js.map +1 -1
  587. package/dist/menu/Menu.d.ts +8 -0
  588. package/dist/menu/Menu.js +2 -1
  589. package/dist/menu/Menu.js.map +1 -1
  590. package/dist/menu/MenuItemSeparator.d.ts +1 -2
  591. package/dist/menu/MenuItemSeparator.js +2 -8
  592. package/dist/menu/MenuItemSeparator.js.map +1 -1
  593. package/dist/menu/MenuSheet.d.ts +6 -1
  594. package/dist/menu/MenuSheet.js.map +1 -1
  595. package/dist/menu/menuConfig.d.ts +60 -0
  596. package/dist/progress/CircularProgress.d.ts +5 -4
  597. package/dist/progress/CircularProgress.js +3 -3
  598. package/dist/progress/CircularProgress.js.map +1 -1
  599. package/dist/progress/LinearProgress.d.ts +7 -5
  600. package/dist/progress/LinearProgress.js +4 -3
  601. package/dist/progress/LinearProgress.js.map +1 -1
  602. package/dist/segmented-button/_segmented-button.scss +5 -0
  603. package/dist/suspense/CircularProgressSuspense.d.ts +4 -0
  604. package/dist/suspense/CircularProgressSuspense.js +3 -1
  605. package/dist/suspense/CircularProgressSuspense.js.map +1 -1
  606. package/dist/table/Table.d.ts +0 -12
  607. package/dist/table/Table.js +1 -12
  608. package/dist/table/Table.js.map +1 -1
  609. package/dist/table/TableCell.d.ts +13 -38
  610. package/dist/table/TableCell.js +7 -15
  611. package/dist/table/TableCell.js.map +1 -1
  612. package/dist/table/TableCellContent.d.ts +9 -0
  613. package/dist/table/TableCellContent.js +2 -1
  614. package/dist/table/TableCellContent.js.map +1 -1
  615. package/dist/table/TableCheckbox.d.ts +2 -2
  616. package/dist/table/TableCheckbox.js +3 -3
  617. package/dist/table/TableCheckbox.js.map +1 -1
  618. package/dist/table/TableContainer.d.ts +0 -6
  619. package/dist/table/TableContainer.js +1 -6
  620. package/dist/table/TableContainer.js.map +1 -1
  621. package/dist/table/TableFooter.d.ts +7 -1
  622. package/dist/table/TableFooter.js +17 -16
  623. package/dist/table/TableFooter.js.map +1 -1
  624. package/dist/table/TableHeader.d.ts +7 -14
  625. package/dist/table/TableHeader.js +6 -14
  626. package/dist/table/TableHeader.js.map +1 -1
  627. package/dist/table/TableRadio.d.ts +106 -0
  628. package/dist/table/TableRadio.js +106 -0
  629. package/dist/table/TableRadio.js.map +1 -0
  630. package/dist/table/TableRow.d.ts +0 -10
  631. package/dist/table/TableRow.js +1 -12
  632. package/dist/table/TableRow.js.map +1 -1
  633. package/dist/table/_table.scss +16 -18
  634. package/dist/table/tableCellStyles.d.ts +33 -0
  635. package/dist/table/tableCellStyles.js +15 -0
  636. package/dist/table/tableCellStyles.js.map +1 -0
  637. package/dist/table/tableContainerStyles.d.ts +10 -0
  638. package/dist/table/tableContainerStyles.js +9 -0
  639. package/dist/table/tableContainerStyles.js.map +1 -0
  640. package/dist/table/tableFooterStyles.d.ts +10 -0
  641. package/dist/table/tableFooterStyles.js +12 -0
  642. package/dist/table/tableFooterStyles.js.map +1 -0
  643. package/dist/table/tableHeaderStyles.d.ts +10 -0
  644. package/dist/table/tableHeaderStyles.js +13 -0
  645. package/dist/table/tableHeaderStyles.js.map +1 -0
  646. package/dist/table/tableRowStyles.d.ts +10 -0
  647. package/dist/table/tableRowStyles.js +14 -0
  648. package/dist/table/tableRowStyles.js.map +1 -0
  649. package/dist/table/tableStyles.d.ts +12 -0
  650. package/dist/table/tableStyles.js +14 -0
  651. package/dist/table/tableStyles.js.map +1 -0
  652. package/dist/table/types.d.ts +28 -15
  653. package/dist/table/types.js.map +1 -1
  654. package/dist/tabs/_tabs.scss +2 -0
  655. package/dist/test-utils/data-testid.js +2 -0
  656. package/dist/test-utils/data-testid.js.map +1 -0
  657. package/dist/test-utils/jest-setup.js +3 -0
  658. package/dist/test-utils/jest-setup.js.map +1 -1
  659. package/dist/theme/ThemeProvider.d.ts +5 -0
  660. package/dist/theme/ThemeProvider.js.map +1 -1
  661. package/dist/tooltip/Tooltip.d.ts +13 -6
  662. package/dist/tooltip/Tooltip.js +2 -2
  663. package/dist/tooltip/Tooltip.js.map +1 -1
  664. package/dist/tooltip/TooltipHoverModeProvider.d.ts +15 -0
  665. package/dist/tooltip/TooltipHoverModeProvider.js.map +1 -1
  666. package/dist/tooltip/_tooltip.scss +1 -0
  667. package/dist/tooltip/tooltipStyles.d.ts +2 -1
  668. package/dist/tooltip/tooltipStyles.js +2 -2
  669. package/dist/tooltip/tooltipStyles.js.map +1 -1
  670. package/dist/tooltip/useTooltip.d.ts +71 -8
  671. package/dist/tooltip/useTooltip.js +68 -7
  672. package/dist/tooltip/useTooltip.js.map +1 -1
  673. package/dist/transition/config.d.ts +22 -0
  674. package/dist/transition/config.js +16 -0
  675. package/dist/transition/config.js.map +1 -0
  676. package/dist/transition/useTransition.js +15 -6
  677. package/dist/transition/useTransition.js.map +1 -1
  678. package/dist/tree/DefaultTreeItemRenderer.d.ts +1 -1
  679. package/dist/tree/DefaultTreeItemRenderer.js.map +1 -1
  680. package/dist/tree/Tree.d.ts +1 -1
  681. package/dist/tree/Tree.js +18 -21
  682. package/dist/tree/Tree.js.map +1 -1
  683. package/dist/tree/TreeItem.js +1 -3
  684. package/dist/tree/TreeItem.js.map +1 -1
  685. package/dist/tree/TreeProvider.d.ts +2 -0
  686. package/dist/tree/TreeProvider.js +3 -1
  687. package/dist/tree/TreeProvider.js.map +1 -1
  688. package/package.json +20 -17
  689. package/src/__tests__/NoSsr.tsx +5 -5
  690. package/src/__tests__/useAsyncAction.tsx +14 -6
  691. package/src/__tests__/useDebouncedFunction.tsx +6 -3
  692. package/src/__tests__/useDropzone.tsx +10 -10
  693. package/src/__tests__/useEnsuredId.tsx +5 -5
  694. package/src/__tests__/useEnsuredState.tsx +1 -2
  695. package/src/__tests__/useLocalStorage.tsx +21 -21
  696. package/src/__tests__/useResizeObserver.tsx +2 -0
  697. package/src/__tests__/useThrottledFunction.tsx +9 -8
  698. package/src/__tests__/useToggle.tsx +10 -10
  699. package/src/_core.scss +5 -1
  700. package/src/app-bar/__tests__/AppBar.tsx +15 -15
  701. package/src/app-bar/__tests__/AppBarTitle.tsx +3 -5
  702. package/src/avatar/Avatar.tsx +12 -20
  703. package/src/avatar/__tests__/Avatar.tsx +6 -6
  704. package/src/avatar/_avatar.scss +4 -2
  705. package/src/avatar/styles.ts +27 -4
  706. package/src/badge/__tests__/Badge.tsx +3 -3
  707. package/src/button/AsyncButton.tsx +71 -4
  708. package/src/button/__tests__/AsyncButton.tsx +2 -0
  709. package/src/button/__tests__/Button.tsx +12 -12
  710. package/src/button/__tests__/ButtonUnstyled.tsx +3 -3
  711. package/src/button/__tests__/__snapshots__/AsyncButton.tsx.snap +31 -8
  712. package/src/card/__tests__/Card.tsx +3 -3
  713. package/src/card/__tests__/CardContent.tsx +3 -3
  714. package/src/card/__tests__/CardFooter.tsx +3 -3
  715. package/src/card/__tests__/CardHeader.tsx +5 -5
  716. package/src/card/__tests__/CardSubtitle.tsx +3 -3
  717. package/src/card/__tests__/CardTitle.tsx +3 -3
  718. package/src/chip/__tests__/Chip.tsx +20 -22
  719. package/src/chip/__tests__/__snapshots__/Chip.tsx.snap +3 -3
  720. package/src/chip/__tests__/__snapshots__/styles.ts.snap +1 -1
  721. package/src/chip/_chip.scss +0 -16
  722. package/src/chip/styles.ts +4 -5
  723. package/src/cssUtils.ts +4 -1
  724. package/src/dialog/Dialog.tsx +5 -4
  725. package/src/dialog/__tests__/Dialog.tsx +316 -0
  726. package/src/dialog/__tests__/DialogContent.tsx +53 -0
  727. package/src/dialog/__tests__/DialogFooter.tsx +70 -0
  728. package/src/dialog/__tests__/DialogHeader.tsx +37 -0
  729. package/src/dialog/__tests__/DialogTitle.tsx +41 -0
  730. package/src/dialog/__tests__/__snapshots__/Dialog.tsx.snap +84 -0
  731. package/src/dialog/__tests__/__snapshots__/DialogContent.tsx.snap +36 -0
  732. package/src/dialog/__tests__/__snapshots__/DialogFooter.tsx.snap +186 -0
  733. package/src/dialog/__tests__/__snapshots__/DialogHeader.tsx.snap +18 -0
  734. package/src/dialog/__tests__/__snapshots__/DialogTitle.tsx.snap +26 -0
  735. package/src/divider/__tests__/Divider.tsx +3 -3
  736. package/src/draggable/__tests__/useDraggable.tsx +35 -39
  737. package/src/expansion-panel/__tests__/ExpansionPanel.tsx +28 -23
  738. package/src/focus/__tests__/useFocusContainer.tsx +280 -0
  739. package/src/focus/useFocusContainer.ts +17 -10
  740. package/src/form/MenuItemInputToggle.tsx +6 -2
  741. package/src/form/MenuItemTextField.tsx +3 -0
  742. package/src/form/Slider.tsx +45 -5
  743. package/src/form/SliderThumb.tsx +15 -3
  744. package/src/form/SliderValueMarks.tsx +3 -1
  745. package/src/form/SliderValueTooltip.tsx +1 -1
  746. package/src/form/Switch.tsx +6 -27
  747. package/src/form/SwitchTrack.tsx +12 -2
  748. package/src/form/__tests__/Checkbox.tsx +5 -5
  749. package/src/form/__tests__/Fieldset.tsx +3 -3
  750. package/src/form/__tests__/FileInput.tsx +2 -2
  751. package/src/form/__tests__/Label.tsx +3 -3
  752. package/src/form/__tests__/Legend.tsx +3 -3
  753. package/src/form/__tests__/Radio.tsx +3 -3
  754. package/src/form/__tests__/Switch.tsx +152 -0
  755. package/src/form/__tests__/__snapshots__/Switch.tsx.snap +428 -0
  756. package/src/form/__tests__/__snapshots__/useCheckboxGroup.tsx.snap +1 -1
  757. package/src/form/__tests__/__snapshots__/useRadioGroup.tsx.snap +1 -1
  758. package/src/form/__tests__/useCheckboxGroup.tsx +33 -33
  759. package/src/form/__tests__/useFileUpload.tsx +41 -33
  760. package/src/form/__tests__/useRadioGroup.tsx +25 -25
  761. package/src/form/_form.scss +41 -34
  762. package/src/form/switchStyles.ts +3 -3
  763. package/src/hoverMode/useHoverMode.ts +4 -4
  764. package/src/icon/FontIcon.tsx +2 -5
  765. package/src/icon/MaterialIcon.tsx +4 -6
  766. package/src/icon/MaterialSymbol.tsx +18 -12
  767. package/src/icon/__tests__/FontIcon.tsx +7 -11
  768. package/src/icon/__tests__/IconRotator.tsx +4 -4
  769. package/src/icon/__tests__/MaterialIcon.tsx +79 -0
  770. package/src/icon/__tests__/MaterialSymbol.tsx +100 -0
  771. package/src/icon/__tests__/SVGIcon.tsx +6 -5
  772. package/src/icon/__tests__/TextIconSpacing.tsx +15 -17
  773. package/src/icon/__tests__/__snapshots__/IconRotator.tsx.snap +6 -6
  774. package/src/icon/__tests__/__snapshots__/MaterialIcon.tsx.snap +82 -0
  775. package/src/icon/__tests__/__snapshots__/MaterialSymbol.tsx.snap +42 -0
  776. package/src/icon/iconConfig.tsx +1 -0
  777. package/src/icon/material.ts +284 -54
  778. package/src/icon/{MaterialSymbolsProvider.tsx → materialConfig.ts} +49 -67
  779. package/src/icon/styles.ts +0 -21
  780. package/src/index.ts +8 -6
  781. package/src/interaction/__tests__/UserInteractionModeProvider.tsx +3 -3
  782. package/src/layout/__tests__/useExpandableLayout.tsx +12 -1
  783. package/src/layout/__tests__/useLayoutTree.tsx +6 -1
  784. package/src/layout/__tests__/useResizableLayout.tsx +13 -1
  785. package/src/layout/__tests__/useTemporaryLayout.tsx +6 -1
  786. package/src/link/Link.tsx +15 -5
  787. package/src/link/__tests__/Link.tsx +3 -3
  788. package/src/link/__tests__/SkipToMainContent.tsx +11 -14
  789. package/src/list/ListItemLink.tsx +1 -1
  790. package/src/list/__tests__/List.tsx +7 -7
  791. package/src/list/__tests__/ListItem.tsx +17 -16
  792. package/src/list/__tests__/ListItemLink.tsx +7 -7
  793. package/src/list/__tests__/ListSubheader.tsx +5 -5
  794. package/src/menu/DropdownMenu.tsx +23 -4
  795. package/src/menu/Menu.tsx +11 -0
  796. package/src/menu/MenuItemSeparator.tsx +2 -12
  797. package/src/menu/MenuSheet.tsx +10 -1
  798. package/src/menu/__tests__/DropdownMenu.tsx +74 -65
  799. package/src/menu/__tests__/MenuBar.tsx +57 -48
  800. package/src/menu/__tests__/MenuVisibilityProvider.tsx +3 -3
  801. package/src/overlay/__tests__/Overlay.tsx +37 -35
  802. package/src/portal/__tests__/PortalContainerProvider.node.tsx +1 -0
  803. package/src/portal/__tests__/PortalContainerProvider.tsx +9 -9
  804. package/src/positioning/__tests__/useFixedPositioning.tsx +20 -14
  805. package/src/progress/CircularProgress.tsx +5 -4
  806. package/src/progress/LinearProgress.tsx +88 -86
  807. package/src/progress/__tests__/CircularProgress.tsx +49 -27
  808. package/src/progress/__tests__/LinearProgress.tsx +40 -25
  809. package/src/progress/__tests__/__snapshots__/CircularProgress.tsx.snap +21 -0
  810. package/src/progress/__tests__/__snapshots__/LinearProgress.tsx.snap +20 -0
  811. package/src/segmented-button/_segmented-button.scss +5 -0
  812. package/src/snackbar/__tests__/Snackbar.tsx +2 -2
  813. package/src/snackbar/__tests__/Toast.tsx +8 -3
  814. package/src/snackbar/__tests__/ToastActionButton.tsx +2 -2
  815. package/src/snackbar/__tests__/ToastCloseButton.tsx +2 -2
  816. package/src/snackbar/__tests__/ToastManagerProvider.tsx +8 -0
  817. package/src/suspense/CircularProgressSuspense.tsx +19 -2
  818. package/src/table/Table.tsx +1 -24
  819. package/src/table/TableCell.tsx +22 -85
  820. package/src/table/TableCellContent.tsx +20 -2
  821. package/src/table/TableCheckbox.tsx +3 -3
  822. package/src/table/TableContainer.tsx +1 -8
  823. package/src/table/TableFooter.tsx +30 -23
  824. package/src/table/TableHeader.tsx +23 -40
  825. package/src/table/TableRadio.tsx +195 -0
  826. package/src/table/TableRow.tsx +1 -28
  827. package/src/table/__tests__/Table.tsx +4 -10
  828. package/src/table/__tests__/TableBody.tsx +3 -3
  829. package/src/table/__tests__/TableCheckbox.tsx +10 -11
  830. package/src/table/__tests__/TableContainer.tsx +3 -3
  831. package/src/table/__tests__/TableRadio.tsx +112 -0
  832. package/src/table/__tests__/TableRow.tsx +4 -10
  833. package/src/table/__tests__/__snapshots__/Table.tsx.snap +249 -251
  834. package/src/table/__tests__/__snapshots__/TableBody.tsx.snap +3 -3
  835. package/src/table/__tests__/__snapshots__/TableCheckbox.tsx.snap +4 -4
  836. package/src/table/__tests__/__snapshots__/TableRadio.tsx.snap +138 -0
  837. package/src/table/__tests__/__snapshots__/TableRow.tsx.snap +4 -6
  838. package/src/table/__tests__/__snapshots__/tableContainerStyles.ts.snap +3 -0
  839. package/src/table/__tests__/__snapshots__/tableRowStyles.ts.snap +3 -0
  840. package/src/table/__tests__/__snapshots__/tableStyles.ts.snap +3 -0
  841. package/src/table/__tests__/tableContainerStyles.ts +8 -0
  842. package/src/table/__tests__/tableRowStyles.ts +8 -0
  843. package/src/table/__tests__/tableStyles.ts +8 -0
  844. package/src/table/_table.scss +16 -18
  845. package/src/table/tableCellStyles.ts +83 -0
  846. package/src/table/tableContainerStyles.ts +19 -0
  847. package/src/table/tableFooterStyles.ts +27 -0
  848. package/src/table/tableHeaderStyles.ts +29 -0
  849. package/src/table/tableRowStyles.ts +28 -0
  850. package/src/table/tableStyles.ts +24 -0
  851. package/src/table/types.ts +33 -15
  852. package/src/tabs/__tests__/Tab.tsx +3 -3
  853. package/src/tabs/__tests__/TabList.tsx +50 -40
  854. package/src/tabs/__tests__/useTabs.tsx +27 -24
  855. package/src/tabs/_tabs.scss +2 -0
  856. package/src/test-utils/data-testid.ts +5 -0
  857. package/src/test-utils/jest-setup.ts +4 -0
  858. package/src/theme/ThemeProvider.tsx +6 -0
  859. package/src/theme/__tests__/LocalStorageColorSchemeProvider.tsx +4 -4
  860. package/src/theme/__tests__/useCSSVariables.tsx +4 -4
  861. package/src/tooltip/Tooltip.tsx +17 -9
  862. package/src/tooltip/TooltipHoverModeProvider.tsx +18 -0
  863. package/src/tooltip/__tests__/Tooltip.tsx +147 -104
  864. package/src/tooltip/__tests__/TooltipHoverModeProvider.tsx +8 -3
  865. package/src/tooltip/__tests__/__snapshots__/Tooltip.tsx.snap +0 -33
  866. package/src/tooltip/_tooltip.scss +1 -0
  867. package/src/tooltip/tooltipStyles.ts +4 -4
  868. package/src/tooltip/useTooltip.ts +119 -19
  869. package/src/transition/__tests__/CSSTransition.tsx +12 -6
  870. package/src/transition/__tests__/Collapse.tsx +19 -17
  871. package/src/transition/__tests__/CrossFade.tsx +20 -17
  872. package/src/transition/__tests__/ScaleTransition.tsx +18 -14
  873. package/src/transition/__tests__/useCSSTransition.tsx +18 -14
  874. package/src/transition/__tests__/useCollapseTransition.tsx +25 -21
  875. package/src/transition/__tests__/useCrossFadeTransition.tsx +20 -16
  876. package/src/transition/__tests__/useScaleTransition.tsx +18 -12
  877. package/src/transition/__tests__/useTransition.tsx +165 -68
  878. package/src/transition/config.ts +34 -0
  879. package/src/transition/useTransition.ts +15 -6
  880. package/src/tree/DefaultTreeItemRenderer.tsx +1 -1
  881. package/src/tree/Tree.tsx +20 -24
  882. package/src/tree/TreeItem.tsx +2 -3
  883. package/src/tree/TreeProvider.tsx +6 -0
  884. package/src/tree/__tests__/Tree.tsx +7 -2
  885. package/src/tree/__tests__/TreeGroup.tsx +1 -0
  886. package/src/tree/__tests__/TreeItemExpander.tsx +1 -0
  887. package/src/typography/__tests__/TextContainer.tsx +3 -3
  888. package/src/typography/__tests__/Typography.tsx +10 -12
  889. package/src/typography/__tests__/WritingDirectionProvider.tsx +7 -7
  890. package/dist/divider/VerticalDivider.js +0 -40
  891. package/dist/divider/VerticalDivider.js.map +0 -1
  892. package/dist/divider/useVerticalDividerHeight.js +0 -40
  893. package/dist/divider/useVerticalDividerHeight.js.map +0 -1
  894. package/dist/link/LinkProvider.js +0 -26
  895. package/dist/link/LinkProvider.js.map +0 -1
  896. package/dist/tooltip/useOverflowTooltip.js +0 -71
  897. package/dist/tooltip/useOverflowTooltip.js.map +0 -1
  898. package/src/divider/VerticalDivider.tsx +0 -50
  899. package/src/divider/__tests__/VerticalDivider.tsx +0 -35
  900. package/src/divider/__tests__/__snapshots__/VerticalDivider.tsx.snap +0 -41
  901. package/src/divider/useVerticalDividerHeight.ts +0 -72
  902. package/src/icon/MaterialIconsProvider.ts +0 -23
  903. package/src/link/LinkProvider.tsx +0 -51
  904. package/src/tooltip/__tests__/useOverflowTooltip.tsx +0 -77
  905. package/src/tooltip/useOverflowTooltip.ts +0 -93
@@ -23,30 +23,30 @@
23
23
  <div class='clearfix'>
24
24
 
25
25
  <div class='fl pad1y space-right2'>
26
- <span class="strong">0% </span>
26
+ <span class="strong">100% </span>
27
27
  <span class="quiet">Statements</span>
28
- <span class='fraction'>0/137</span>
28
+ <span class='fraction'>320/320</span>
29
29
  </div>
30
30
 
31
31
 
32
32
  <div class='fl pad1y space-right2'>
33
- <span class="strong">0% </span>
33
+ <span class="strong">89.74% </span>
34
34
  <span class="quiet">Branches</span>
35
- <span class='fraction'>0/1</span>
35
+ <span class='fraction'>35/39</span>
36
36
  </div>
37
37
 
38
38
 
39
39
  <div class='fl pad1y space-right2'>
40
- <span class="strong">0% </span>
40
+ <span class="strong">100% </span>
41
41
  <span class="quiet">Functions</span>
42
- <span class='fraction'>0/1</span>
42
+ <span class='fraction'>2/2</span>
43
43
  </div>
44
44
 
45
45
 
46
46
  <div class='fl pad1y space-right2'>
47
- <span class="strong">0% </span>
47
+ <span class="strong">100% </span>
48
48
  <span class="quiet">Lines</span>
49
- <span class='fraction'>0/137</span>
49
+ <span class='fraction'>320/320</span>
50
50
  </div>
51
51
 
52
52
 
@@ -61,7 +61,7 @@
61
61
  </div>
62
62
  </template>
63
63
  </div>
64
- <div class='status-line low'></div>
64
+ <div class='status-line high'></div>
65
65
  <pre><table class="coverage">
66
66
  <tr><td class="line-count quiet"><a name='L1'></a><a href='#L1'>1</a>
67
67
  <a name='L2'></a><a href='#L2'>2</a>
@@ -200,280 +200,829 @@
200
200
  <a name='L135'></a><a href='#L135'>135</a>
201
201
  <a name='L136'></a><a href='#L136'>136</a>
202
202
  <a name='L137'></a><a href='#L137'>137</a>
203
- <a name='L138'></a><a href='#L138'>138</a></td><td class="line-coverage quiet"><span class="cline-any cline-no">&nbsp;</span>
204
- <span class="cline-any cline-no">&nbsp;</span>
205
- <span class="cline-any cline-no">&nbsp;</span>
206
- <span class="cline-any cline-no">&nbsp;</span>
207
- <span class="cline-any cline-no">&nbsp;</span>
208
- <span class="cline-any cline-no">&nbsp;</span>
209
- <span class="cline-any cline-no">&nbsp;</span>
210
- <span class="cline-any cline-no">&nbsp;</span>
211
- <span class="cline-any cline-no">&nbsp;</span>
212
- <span class="cline-any cline-no">&nbsp;</span>
213
- <span class="cline-any cline-no">&nbsp;</span>
214
- <span class="cline-any cline-no">&nbsp;</span>
215
- <span class="cline-any cline-no">&nbsp;</span>
216
- <span class="cline-any cline-no">&nbsp;</span>
217
- <span class="cline-any cline-no">&nbsp;</span>
218
- <span class="cline-any cline-no">&nbsp;</span>
219
- <span class="cline-any cline-no">&nbsp;</span>
220
- <span class="cline-any cline-no">&nbsp;</span>
221
- <span class="cline-any cline-no">&nbsp;</span>
222
- <span class="cline-any cline-no">&nbsp;</span>
223
- <span class="cline-any cline-no">&nbsp;</span>
224
- <span class="cline-any cline-no">&nbsp;</span>
225
- <span class="cline-any cline-no">&nbsp;</span>
226
- <span class="cline-any cline-no">&nbsp;</span>
227
- <span class="cline-any cline-no">&nbsp;</span>
228
- <span class="cline-any cline-no">&nbsp;</span>
229
- <span class="cline-any cline-no">&nbsp;</span>
230
- <span class="cline-any cline-no">&nbsp;</span>
231
- <span class="cline-any cline-no">&nbsp;</span>
232
- <span class="cline-any cline-no">&nbsp;</span>
233
- <span class="cline-any cline-no">&nbsp;</span>
234
- <span class="cline-any cline-no">&nbsp;</span>
235
- <span class="cline-any cline-no">&nbsp;</span>
236
- <span class="cline-any cline-no">&nbsp;</span>
237
- <span class="cline-any cline-no">&nbsp;</span>
238
- <span class="cline-any cline-no">&nbsp;</span>
239
- <span class="cline-any cline-no">&nbsp;</span>
240
- <span class="cline-any cline-no">&nbsp;</span>
241
- <span class="cline-any cline-no">&nbsp;</span>
242
- <span class="cline-any cline-no">&nbsp;</span>
243
- <span class="cline-any cline-no">&nbsp;</span>
244
- <span class="cline-any cline-no">&nbsp;</span>
245
- <span class="cline-any cline-no">&nbsp;</span>
246
- <span class="cline-any cline-no">&nbsp;</span>
247
- <span class="cline-any cline-no">&nbsp;</span>
248
- <span class="cline-any cline-no">&nbsp;</span>
249
- <span class="cline-any cline-no">&nbsp;</span>
250
- <span class="cline-any cline-no">&nbsp;</span>
251
- <span class="cline-any cline-no">&nbsp;</span>
252
- <span class="cline-any cline-no">&nbsp;</span>
253
- <span class="cline-any cline-no">&nbsp;</span>
254
- <span class="cline-any cline-no">&nbsp;</span>
255
- <span class="cline-any cline-no">&nbsp;</span>
256
- <span class="cline-any cline-no">&nbsp;</span>
257
- <span class="cline-any cline-no">&nbsp;</span>
258
- <span class="cline-any cline-no">&nbsp;</span>
259
- <span class="cline-any cline-no">&nbsp;</span>
260
- <span class="cline-any cline-no">&nbsp;</span>
261
- <span class="cline-any cline-no">&nbsp;</span>
262
- <span class="cline-any cline-no">&nbsp;</span>
263
- <span class="cline-any cline-no">&nbsp;</span>
264
- <span class="cline-any cline-no">&nbsp;</span>
265
- <span class="cline-any cline-no">&nbsp;</span>
266
- <span class="cline-any cline-no">&nbsp;</span>
267
- <span class="cline-any cline-no">&nbsp;</span>
268
- <span class="cline-any cline-no">&nbsp;</span>
269
- <span class="cline-any cline-no">&nbsp;</span>
270
- <span class="cline-any cline-no">&nbsp;</span>
271
- <span class="cline-any cline-no">&nbsp;</span>
272
- <span class="cline-any cline-no">&nbsp;</span>
273
- <span class="cline-any cline-no">&nbsp;</span>
274
- <span class="cline-any cline-no">&nbsp;</span>
275
- <span class="cline-any cline-no">&nbsp;</span>
276
- <span class="cline-any cline-no">&nbsp;</span>
277
- <span class="cline-any cline-no">&nbsp;</span>
278
- <span class="cline-any cline-no">&nbsp;</span>
279
- <span class="cline-any cline-no">&nbsp;</span>
280
- <span class="cline-any cline-no">&nbsp;</span>
281
- <span class="cline-any cline-no">&nbsp;</span>
282
- <span class="cline-any cline-no">&nbsp;</span>
283
- <span class="cline-any cline-no">&nbsp;</span>
284
- <span class="cline-any cline-no">&nbsp;</span>
285
- <span class="cline-any cline-no">&nbsp;</span>
286
- <span class="cline-any cline-no">&nbsp;</span>
287
- <span class="cline-any cline-no">&nbsp;</span>
288
- <span class="cline-any cline-no">&nbsp;</span>
289
- <span class="cline-any cline-no">&nbsp;</span>
290
- <span class="cline-any cline-no">&nbsp;</span>
291
- <span class="cline-any cline-no">&nbsp;</span>
292
- <span class="cline-any cline-no">&nbsp;</span>
293
- <span class="cline-any cline-no">&nbsp;</span>
294
- <span class="cline-any cline-no">&nbsp;</span>
295
- <span class="cline-any cline-no">&nbsp;</span>
296
- <span class="cline-any cline-no">&nbsp;</span>
297
- <span class="cline-any cline-no">&nbsp;</span>
298
- <span class="cline-any cline-no">&nbsp;</span>
299
- <span class="cline-any cline-no">&nbsp;</span>
300
- <span class="cline-any cline-no">&nbsp;</span>
301
- <span class="cline-any cline-no">&nbsp;</span>
302
- <span class="cline-any cline-no">&nbsp;</span>
303
- <span class="cline-any cline-no">&nbsp;</span>
304
- <span class="cline-any cline-no">&nbsp;</span>
305
- <span class="cline-any cline-no">&nbsp;</span>
306
- <span class="cline-any cline-no">&nbsp;</span>
307
- <span class="cline-any cline-no">&nbsp;</span>
308
- <span class="cline-any cline-no">&nbsp;</span>
309
- <span class="cline-any cline-no">&nbsp;</span>
310
- <span class="cline-any cline-no">&nbsp;</span>
311
- <span class="cline-any cline-no">&nbsp;</span>
312
- <span class="cline-any cline-no">&nbsp;</span>
313
- <span class="cline-any cline-no">&nbsp;</span>
314
- <span class="cline-any cline-no">&nbsp;</span>
315
- <span class="cline-any cline-no">&nbsp;</span>
316
- <span class="cline-any cline-no">&nbsp;</span>
317
- <span class="cline-any cline-no">&nbsp;</span>
318
- <span class="cline-any cline-no">&nbsp;</span>
319
- <span class="cline-any cline-no">&nbsp;</span>
320
- <span class="cline-any cline-no">&nbsp;</span>
321
- <span class="cline-any cline-no">&nbsp;</span>
322
- <span class="cline-any cline-no">&nbsp;</span>
323
- <span class="cline-any cline-no">&nbsp;</span>
324
- <span class="cline-any cline-no">&nbsp;</span>
325
- <span class="cline-any cline-no">&nbsp;</span>
326
- <span class="cline-any cline-no">&nbsp;</span>
327
- <span class="cline-any cline-no">&nbsp;</span>
328
- <span class="cline-any cline-no">&nbsp;</span>
329
- <span class="cline-any cline-no">&nbsp;</span>
330
- <span class="cline-any cline-no">&nbsp;</span>
331
- <span class="cline-any cline-no">&nbsp;</span>
332
- <span class="cline-any cline-no">&nbsp;</span>
333
- <span class="cline-any cline-no">&nbsp;</span>
334
- <span class="cline-any cline-no">&nbsp;</span>
335
- <span class="cline-any cline-no">&nbsp;</span>
336
- <span class="cline-any cline-no">&nbsp;</span>
337
- <span class="cline-any cline-no">&nbsp;</span>
338
- <span class="cline-any cline-no">&nbsp;</span>
339
- <span class="cline-any cline-no">&nbsp;</span>
340
- <span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js"><span class="cstat-no" title="statement not covered" ><span class="fstat-no" title="function not covered" ><span class="branch-0 cbranch-no" title="branch not covered" >"use client";</span></span></span>
341
- <span class="cstat-no" title="statement not covered" >import { cnb } from "cnbuilder";</span>
342
- <span class="cstat-no" title="statement not covered" >import { type MouseEvent, type ReactElement, type ReactNode } from "react";</span>
343
- <span class="cstat-no" title="statement not covered" >import { type BoxAlignItems } from "../box/styles.js";</span>
344
- <span class="cstat-no" title="statement not covered" >import { overlay } from "../overlay/overlayStyles.js";</span>
345
- <span class="cstat-no" title="statement not covered" >import { CircularProgress } from "../progress/CircularProgress.js";</span>
346
- <span class="cstat-no" title="statement not covered" >import { LinearProgress } from "../progress/LinearProgress.js";</span>
347
- <span class="cstat-no" title="statement not covered" >import { type ProgressTheme } from "../progress/types.js";</span>
348
- <span class="cstat-no" title="statement not covered" >import { useAsyncAction } from "../useAsyncAction.js";</span>
349
- <span class="cstat-no" title="statement not covered" >import { Button, type ButtonProps } from "./Button.js";</span>
350
- <span class="cstat-no" title="statement not covered" ></span>
351
- <span class="cstat-no" title="statement not covered" >const noop = (): void =&gt; {</span>
352
- <span class="cstat-no" title="statement not covered" > // do nothing</span>
353
- <span class="cstat-no" title="statement not covered" >};</span>
354
- <span class="cstat-no" title="statement not covered" ></span>
355
- <span class="cstat-no" title="statement not covered" >/**</span>
356
- <span class="cstat-no" title="statement not covered" > * @remarks \@since 6.0.0</span>
357
- <span class="cstat-no" title="statement not covered" > */</span>
358
- <span class="cstat-no" title="statement not covered" >export type AsyncButtonLoadingType =</span>
359
- <span class="cstat-no" title="statement not covered" > | "circular-before"</span>
360
- <span class="cstat-no" title="statement not covered" > | "circular-after"</span>
361
- <span class="cstat-no" title="statement not covered" > | "circular-overlay"</span>
362
- <span class="cstat-no" title="statement not covered" > | "linear-above"</span>
363
- <span class="cstat-no" title="statement not covered" > | "linear-below";</span>
364
- <span class="cstat-no" title="statement not covered" ></span>
365
- <span class="cstat-no" title="statement not covered" >/**</span>
366
- <span class="cstat-no" title="statement not covered" > * @remarks \@since 6.0.0</span>
367
- <span class="cstat-no" title="statement not covered" > */</span>
368
- <span class="cstat-no" title="statement not covered" >export interface AsyncButtonProps extends ButtonProps {</span>
369
- <span class="cstat-no" title="statement not covered" > onClick?(event: MouseEvent&lt;HTMLButtonElement&gt;): Promise&lt;void&gt; | void;</span>
370
- <span class="cstat-no" title="statement not covered" > loading?: boolean;</span>
371
- <span class="cstat-no" title="statement not covered" > loadingType?: AsyncButtonLoadingType;</span>
372
- <span class="cstat-no" title="statement not covered" > loadingChildren?: ReactNode;</span>
373
- <span class="cstat-no" title="statement not covered" ></span>
374
- <span class="cstat-no" title="statement not covered" > /**</span>
375
- <span class="cstat-no" title="statement not covered" > * Set this to `true` to use the `disabled` theme while loading.</span>
376
- <span class="cstat-no" title="statement not covered" > *</span>
377
- <span class="cstat-no" title="statement not covered" > * @defaultValue `false`</span>
378
- <span class="cstat-no" title="statement not covered" > */</span>
379
- <span class="cstat-no" title="statement not covered" > loadingDisabledTheme?: boolean;</span>
380
- <span class="cstat-no" title="statement not covered" > beforeAddon?: ReactNode;</span>
381
- <span class="cstat-no" title="statement not covered" > afterAddon?: ReactNode;</span>
382
- <span class="cstat-no" title="statement not covered" >}</span>
383
- <span class="cstat-no" title="statement not covered" ></span>
384
- <span class="cstat-no" title="statement not covered" >/**</span>
385
- <span class="cstat-no" title="statement not covered" > * @remarks \@since 6.0.0</span>
386
- <span class="cstat-no" title="statement not covered" > */</span>
387
- <span class="cstat-no" title="statement not covered" >export function AsyncButton(props: AsyncButtonProps): ReactElement {</span>
388
- <span class="cstat-no" title="statement not covered" > const {</span>
389
- <span class="cstat-no" title="statement not covered" > onClick = noop,</span>
390
- <span class="cstat-no" title="statement not covered" > children,</span>
391
- <span class="cstat-no" title="statement not covered" > theme,</span>
392
- <span class="cstat-no" title="statement not covered" > className,</span>
393
- <span class="cstat-no" title="statement not covered" > disabled,</span>
394
- <span class="cstat-no" title="statement not covered" > loading: propLoading = false,</span>
395
- <span class="cstat-no" title="statement not covered" > loadingType = "circular-overlay",</span>
396
- <span class="cstat-no" title="statement not covered" > loadingChildren: pendingChildren,</span>
397
- <span class="cstat-no" title="statement not covered" > loadingDisabledTheme = false,</span>
398
- <span class="cstat-no" title="statement not covered" > afterAddon: propAfterAddon,</span>
399
- <span class="cstat-no" title="statement not covered" > beforeAddon: propBeforeAddon,</span>
400
- <span class="cstat-no" title="statement not covered" > ...remaining</span>
401
- <span class="cstat-no" title="statement not covered" > } = props;</span>
402
- <span class="cstat-no" title="statement not covered" > const { handleAsync, pending } = useAsyncAction({ disabled });</span>
403
- <span class="cstat-no" title="statement not covered" > const loading = pending || propLoading;</span>
404
- <span class="cstat-no" title="statement not covered" ></span>
405
- <span class="cstat-no" title="statement not covered" > let progressTheme: ProgressTheme = "current-color";</span>
406
- <span class="cstat-no" title="statement not covered" > if (!theme || theme === "clear" || theme === "disabled") {</span>
407
- <span class="cstat-no" title="statement not covered" > progressTheme = "primary";</span>
408
- <span class="cstat-no" title="statement not covered" > }</span>
409
- <span class="cstat-no" title="statement not covered" ></span>
410
- <span class="cstat-no" title="statement not covered" > const progress = loadingType.includes("linear") ? (</span>
411
- <span class="cstat-no" title="statement not covered" > &lt;LinearProgress theme={progressTheme} /&gt;</span>
412
- <span class="cstat-no" title="statement not covered" > ) : (</span>
413
- <span class="cstat-no" title="statement not covered" > &lt;CircularProgress theme={progressTheme} /&gt;</span>
414
- <span class="cstat-no" title="statement not covered" > );</span>
415
- <span class="cstat-no" title="statement not covered" ></span>
416
- <span class="cstat-no" title="statement not covered" > let afterAddon = propAfterAddon;</span>
417
- <span class="cstat-no" title="statement not covered" > let beforeAddon = propBeforeAddon;</span>
418
- <span class="cstat-no" title="statement not covered" > let overlayElement: ReactNode;</span>
419
- <span class="cstat-no" title="statement not covered" > let isOverlayCover = false;</span>
420
- <span class="cstat-no" title="statement not covered" > switch (loadingType) {</span>
421
- <span class="cstat-no" title="statement not covered" > case "circular-before":</span>
422
- <span class="cstat-no" title="statement not covered" > beforeAddon = loading ? progress : propBeforeAddon;</span>
423
- <span class="cstat-no" title="statement not covered" > break;</span>
424
- <span class="cstat-no" title="statement not covered" > case "circular-after":</span>
425
- <span class="cstat-no" title="statement not covered" > afterAddon = loading ? progress : propAfterAddon;</span>
426
- <span class="cstat-no" title="statement not covered" > break;</span>
427
- <span class="cstat-no" title="statement not covered" > case "circular-overlay":</span>
428
- <span class="cstat-no" title="statement not covered" > case "linear-above":</span>
429
- <span class="cstat-no" title="statement not covered" > case "linear-below": {</span>
430
- <span class="cstat-no" title="statement not covered" > let alignItems: BoxAlignItems = "center";</span>
431
- <span class="cstat-no" title="statement not covered" > if (loadingType === "linear-above") {</span>
432
- <span class="cstat-no" title="statement not covered" > alignItems = "start";</span>
433
- <span class="cstat-no" title="statement not covered" > } else if (loadingType === "linear-below") {</span>
434
- <span class="cstat-no" title="statement not covered" > alignItems = "end";</span>
435
- <span class="cstat-no" title="statement not covered" > } else {</span>
436
- <span class="cstat-no" title="statement not covered" > isOverlayCover = true;</span>
437
- <span class="cstat-no" title="statement not covered" > }</span>
438
- <span class="cstat-no" title="statement not covered" ></span>
439
- <span class="cstat-no" title="statement not covered" > overlayElement = loading &amp;&amp; (</span>
440
- <span class="cstat-no" title="statement not covered" > &lt;span</span>
441
- <span class="cstat-no" title="statement not covered" > className={overlay({</span>
442
- <span class="cstat-no" title="statement not covered" > active: true,</span>
443
- <span class="cstat-no" title="statement not covered" > visible: true,</span>
444
- <span class="cstat-no" title="statement not covered" > absolute: true,</span>
445
- <span class="cstat-no" title="statement not covered" > alignItems,</span>
446
- <span class="cstat-no" title="statement not covered" > })}</span>
447
- <span class="cstat-no" title="statement not covered" > &gt;</span>
448
- <span class="cstat-no" title="statement not covered" > {progress}</span>
449
- <span class="cstat-no" title="statement not covered" > &lt;/span&gt;</span>
450
- <span class="cstat-no" title="statement not covered" > );</span>
451
- <span class="cstat-no" title="statement not covered" > break;</span>
452
- <span class="cstat-no" title="statement not covered" > }</span>
453
- <span class="cstat-no" title="statement not covered" > }</span>
454
- <span class="cstat-no" title="statement not covered" ></span>
455
- <span class="cstat-no" title="statement not covered" > return (</span>
456
- <span class="cstat-no" title="statement not covered" > &lt;Button</span>
457
- <span class="cstat-no" title="statement not covered" > {...remaining}</span>
458
- <span class="cstat-no" title="statement not covered" > aria-disabled={loading || undefined}</span>
459
- <span class="cstat-no" title="statement not covered" > disabled={disabled}</span>
460
- <span class="cstat-no" title="statement not covered" > className={cnb(</span>
461
- <span class="cstat-no" title="statement not covered" > "rmd-button--async",</span>
462
- <span class="cstat-no" title="statement not covered" > loading &amp;&amp; isOverlayCover &amp;&amp; "rmd-button--async-overlay",</span>
463
- <span class="cstat-no" title="statement not covered" > className</span>
464
- <span class="cstat-no" title="statement not covered" > )}</span>
465
- <span class="cstat-no" title="statement not covered" > theme={loading &amp;&amp; loadingDisabledTheme ? "disabled" : theme}</span>
466
- <span class="cstat-no" title="statement not covered" > onClick={handleAsync((event) =&gt; Promise.resolve(onClick(event)))}</span>
467
- <span class="cstat-no" title="statement not covered" > &gt;</span>
468
- <span class="cstat-no" title="statement not covered" > {beforeAddon}</span>
469
- <span class="cstat-no" title="statement not covered" > {loading &amp;&amp; typeof pendingChildren !== "undefined"</span>
470
- <span class="cstat-no" title="statement not covered" > ? pendingChildren</span>
471
- <span class="cstat-no" title="statement not covered" > : children}</span>
472
- <span class="cstat-no" title="statement not covered" > {afterAddon}</span>
473
- <span class="cstat-no" title="statement not covered" > {overlayElement}</span>
474
- <span class="cstat-no" title="statement not covered" > &lt;/Button&gt;</span>
475
- <span class="cstat-no" title="statement not covered" > );</span>
476
- <span class="cstat-no" title="statement not covered" >}</span>
203
+ <a name='L138'></a><a href='#L138'>138</a>
204
+ <a name='L139'></a><a href='#L139'>139</a>
205
+ <a name='L140'></a><a href='#L140'>140</a>
206
+ <a name='L141'></a><a href='#L141'>141</a>
207
+ <a name='L142'></a><a href='#L142'>142</a>
208
+ <a name='L143'></a><a href='#L143'>143</a>
209
+ <a name='L144'></a><a href='#L144'>144</a>
210
+ <a name='L145'></a><a href='#L145'>145</a>
211
+ <a name='L146'></a><a href='#L146'>146</a>
212
+ <a name='L147'></a><a href='#L147'>147</a>
213
+ <a name='L148'></a><a href='#L148'>148</a>
214
+ <a name='L149'></a><a href='#L149'>149</a>
215
+ <a name='L150'></a><a href='#L150'>150</a>
216
+ <a name='L151'></a><a href='#L151'>151</a>
217
+ <a name='L152'></a><a href='#L152'>152</a>
218
+ <a name='L153'></a><a href='#L153'>153</a>
219
+ <a name='L154'></a><a href='#L154'>154</a>
220
+ <a name='L155'></a><a href='#L155'>155</a>
221
+ <a name='L156'></a><a href='#L156'>156</a>
222
+ <a name='L157'></a><a href='#L157'>157</a>
223
+ <a name='L158'></a><a href='#L158'>158</a>
224
+ <a name='L159'></a><a href='#L159'>159</a>
225
+ <a name='L160'></a><a href='#L160'>160</a>
226
+ <a name='L161'></a><a href='#L161'>161</a>
227
+ <a name='L162'></a><a href='#L162'>162</a>
228
+ <a name='L163'></a><a href='#L163'>163</a>
229
+ <a name='L164'></a><a href='#L164'>164</a>
230
+ <a name='L165'></a><a href='#L165'>165</a>
231
+ <a name='L166'></a><a href='#L166'>166</a>
232
+ <a name='L167'></a><a href='#L167'>167</a>
233
+ <a name='L168'></a><a href='#L168'>168</a>
234
+ <a name='L169'></a><a href='#L169'>169</a>
235
+ <a name='L170'></a><a href='#L170'>170</a>
236
+ <a name='L171'></a><a href='#L171'>171</a>
237
+ <a name='L172'></a><a href='#L172'>172</a>
238
+ <a name='L173'></a><a href='#L173'>173</a>
239
+ <a name='L174'></a><a href='#L174'>174</a>
240
+ <a name='L175'></a><a href='#L175'>175</a>
241
+ <a name='L176'></a><a href='#L176'>176</a>
242
+ <a name='L177'></a><a href='#L177'>177</a>
243
+ <a name='L178'></a><a href='#L178'>178</a>
244
+ <a name='L179'></a><a href='#L179'>179</a>
245
+ <a name='L180'></a><a href='#L180'>180</a>
246
+ <a name='L181'></a><a href='#L181'>181</a>
247
+ <a name='L182'></a><a href='#L182'>182</a>
248
+ <a name='L183'></a><a href='#L183'>183</a>
249
+ <a name='L184'></a><a href='#L184'>184</a>
250
+ <a name='L185'></a><a href='#L185'>185</a>
251
+ <a name='L186'></a><a href='#L186'>186</a>
252
+ <a name='L187'></a><a href='#L187'>187</a>
253
+ <a name='L188'></a><a href='#L188'>188</a>
254
+ <a name='L189'></a><a href='#L189'>189</a>
255
+ <a name='L190'></a><a href='#L190'>190</a>
256
+ <a name='L191'></a><a href='#L191'>191</a>
257
+ <a name='L192'></a><a href='#L192'>192</a>
258
+ <a name='L193'></a><a href='#L193'>193</a>
259
+ <a name='L194'></a><a href='#L194'>194</a>
260
+ <a name='L195'></a><a href='#L195'>195</a>
261
+ <a name='L196'></a><a href='#L196'>196</a>
262
+ <a name='L197'></a><a href='#L197'>197</a>
263
+ <a name='L198'></a><a href='#L198'>198</a>
264
+ <a name='L199'></a><a href='#L199'>199</a>
265
+ <a name='L200'></a><a href='#L200'>200</a>
266
+ <a name='L201'></a><a href='#L201'>201</a>
267
+ <a name='L202'></a><a href='#L202'>202</a>
268
+ <a name='L203'></a><a href='#L203'>203</a>
269
+ <a name='L204'></a><a href='#L204'>204</a>
270
+ <a name='L205'></a><a href='#L205'>205</a>
271
+ <a name='L206'></a><a href='#L206'>206</a>
272
+ <a name='L207'></a><a href='#L207'>207</a>
273
+ <a name='L208'></a><a href='#L208'>208</a>
274
+ <a name='L209'></a><a href='#L209'>209</a>
275
+ <a name='L210'></a><a href='#L210'>210</a>
276
+ <a name='L211'></a><a href='#L211'>211</a>
277
+ <a name='L212'></a><a href='#L212'>212</a>
278
+ <a name='L213'></a><a href='#L213'>213</a>
279
+ <a name='L214'></a><a href='#L214'>214</a>
280
+ <a name='L215'></a><a href='#L215'>215</a>
281
+ <a name='L216'></a><a href='#L216'>216</a>
282
+ <a name='L217'></a><a href='#L217'>217</a>
283
+ <a name='L218'></a><a href='#L218'>218</a>
284
+ <a name='L219'></a><a href='#L219'>219</a>
285
+ <a name='L220'></a><a href='#L220'>220</a>
286
+ <a name='L221'></a><a href='#L221'>221</a>
287
+ <a name='L222'></a><a href='#L222'>222</a>
288
+ <a name='L223'></a><a href='#L223'>223</a>
289
+ <a name='L224'></a><a href='#L224'>224</a>
290
+ <a name='L225'></a><a href='#L225'>225</a>
291
+ <a name='L226'></a><a href='#L226'>226</a>
292
+ <a name='L227'></a><a href='#L227'>227</a>
293
+ <a name='L228'></a><a href='#L228'>228</a>
294
+ <a name='L229'></a><a href='#L229'>229</a>
295
+ <a name='L230'></a><a href='#L230'>230</a>
296
+ <a name='L231'></a><a href='#L231'>231</a>
297
+ <a name='L232'></a><a href='#L232'>232</a>
298
+ <a name='L233'></a><a href='#L233'>233</a>
299
+ <a name='L234'></a><a href='#L234'>234</a>
300
+ <a name='L235'></a><a href='#L235'>235</a>
301
+ <a name='L236'></a><a href='#L236'>236</a>
302
+ <a name='L237'></a><a href='#L237'>237</a>
303
+ <a name='L238'></a><a href='#L238'>238</a>
304
+ <a name='L239'></a><a href='#L239'>239</a>
305
+ <a name='L240'></a><a href='#L240'>240</a>
306
+ <a name='L241'></a><a href='#L241'>241</a>
307
+ <a name='L242'></a><a href='#L242'>242</a>
308
+ <a name='L243'></a><a href='#L243'>243</a>
309
+ <a name='L244'></a><a href='#L244'>244</a>
310
+ <a name='L245'></a><a href='#L245'>245</a>
311
+ <a name='L246'></a><a href='#L246'>246</a>
312
+ <a name='L247'></a><a href='#L247'>247</a>
313
+ <a name='L248'></a><a href='#L248'>248</a>
314
+ <a name='L249'></a><a href='#L249'>249</a>
315
+ <a name='L250'></a><a href='#L250'>250</a>
316
+ <a name='L251'></a><a href='#L251'>251</a>
317
+ <a name='L252'></a><a href='#L252'>252</a>
318
+ <a name='L253'></a><a href='#L253'>253</a>
319
+ <a name='L254'></a><a href='#L254'>254</a>
320
+ <a name='L255'></a><a href='#L255'>255</a>
321
+ <a name='L256'></a><a href='#L256'>256</a>
322
+ <a name='L257'></a><a href='#L257'>257</a>
323
+ <a name='L258'></a><a href='#L258'>258</a>
324
+ <a name='L259'></a><a href='#L259'>259</a>
325
+ <a name='L260'></a><a href='#L260'>260</a>
326
+ <a name='L261'></a><a href='#L261'>261</a>
327
+ <a name='L262'></a><a href='#L262'>262</a>
328
+ <a name='L263'></a><a href='#L263'>263</a>
329
+ <a name='L264'></a><a href='#L264'>264</a>
330
+ <a name='L265'></a><a href='#L265'>265</a>
331
+ <a name='L266'></a><a href='#L266'>266</a>
332
+ <a name='L267'></a><a href='#L267'>267</a>
333
+ <a name='L268'></a><a href='#L268'>268</a>
334
+ <a name='L269'></a><a href='#L269'>269</a>
335
+ <a name='L270'></a><a href='#L270'>270</a>
336
+ <a name='L271'></a><a href='#L271'>271</a>
337
+ <a name='L272'></a><a href='#L272'>272</a>
338
+ <a name='L273'></a><a href='#L273'>273</a>
339
+ <a name='L274'></a><a href='#L274'>274</a>
340
+ <a name='L275'></a><a href='#L275'>275</a>
341
+ <a name='L276'></a><a href='#L276'>276</a>
342
+ <a name='L277'></a><a href='#L277'>277</a>
343
+ <a name='L278'></a><a href='#L278'>278</a>
344
+ <a name='L279'></a><a href='#L279'>279</a>
345
+ <a name='L280'></a><a href='#L280'>280</a>
346
+ <a name='L281'></a><a href='#L281'>281</a>
347
+ <a name='L282'></a><a href='#L282'>282</a>
348
+ <a name='L283'></a><a href='#L283'>283</a>
349
+ <a name='L284'></a><a href='#L284'>284</a>
350
+ <a name='L285'></a><a href='#L285'>285</a>
351
+ <a name='L286'></a><a href='#L286'>286</a>
352
+ <a name='L287'></a><a href='#L287'>287</a>
353
+ <a name='L288'></a><a href='#L288'>288</a>
354
+ <a name='L289'></a><a href='#L289'>289</a>
355
+ <a name='L290'></a><a href='#L290'>290</a>
356
+ <a name='L291'></a><a href='#L291'>291</a>
357
+ <a name='L292'></a><a href='#L292'>292</a>
358
+ <a name='L293'></a><a href='#L293'>293</a>
359
+ <a name='L294'></a><a href='#L294'>294</a>
360
+ <a name='L295'></a><a href='#L295'>295</a>
361
+ <a name='L296'></a><a href='#L296'>296</a>
362
+ <a name='L297'></a><a href='#L297'>297</a>
363
+ <a name='L298'></a><a href='#L298'>298</a>
364
+ <a name='L299'></a><a href='#L299'>299</a>
365
+ <a name='L300'></a><a href='#L300'>300</a>
366
+ <a name='L301'></a><a href='#L301'>301</a>
367
+ <a name='L302'></a><a href='#L302'>302</a>
368
+ <a name='L303'></a><a href='#L303'>303</a>
369
+ <a name='L304'></a><a href='#L304'>304</a>
370
+ <a name='L305'></a><a href='#L305'>305</a>
371
+ <a name='L306'></a><a href='#L306'>306</a>
372
+ <a name='L307'></a><a href='#L307'>307</a>
373
+ <a name='L308'></a><a href='#L308'>308</a>
374
+ <a name='L309'></a><a href='#L309'>309</a>
375
+ <a name='L310'></a><a href='#L310'>310</a>
376
+ <a name='L311'></a><a href='#L311'>311</a>
377
+ <a name='L312'></a><a href='#L312'>312</a>
378
+ <a name='L313'></a><a href='#L313'>313</a>
379
+ <a name='L314'></a><a href='#L314'>314</a>
380
+ <a name='L315'></a><a href='#L315'>315</a>
381
+ <a name='L316'></a><a href='#L316'>316</a>
382
+ <a name='L317'></a><a href='#L317'>317</a>
383
+ <a name='L318'></a><a href='#L318'>318</a>
384
+ <a name='L319'></a><a href='#L319'>319</a>
385
+ <a name='L320'></a><a href='#L320'>320</a>
386
+ <a name='L321'></a><a href='#L321'>321</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">1x</span>
387
+ <span class="cline-any cline-yes">1x</span>
388
+ <span class="cline-any cline-yes">1x</span>
389
+ <span class="cline-any cline-yes">1x</span>
390
+ <span class="cline-any cline-yes">1x</span>
391
+ <span class="cline-any cline-yes">1x</span>
392
+ <span class="cline-any cline-yes">1x</span>
393
+ <span class="cline-any cline-yes">1x</span>
394
+ <span class="cline-any cline-yes">1x</span>
395
+ <span class="cline-any cline-yes">1x</span>
396
+ <span class="cline-any cline-yes">1x</span>
397
+ <span class="cline-any cline-yes">1x</span>
398
+ <span class="cline-any cline-yes">1x</span>
399
+ <span class="cline-any cline-yes">1x</span>
400
+ <span class="cline-any cline-yes">1x</span>
401
+ <span class="cline-any cline-yes">1x</span>
402
+ <span class="cline-any cline-yes">1x</span>
403
+ <span class="cline-any cline-yes">1x</span>
404
+ <span class="cline-any cline-yes">1x</span>
405
+ <span class="cline-any cline-yes">1x</span>
406
+ <span class="cline-any cline-yes">1x</span>
407
+ <span class="cline-any cline-yes">1x</span>
408
+ <span class="cline-any cline-yes">1x</span>
409
+ <span class="cline-any cline-yes">1x</span>
410
+ <span class="cline-any cline-yes">1x</span>
411
+ <span class="cline-any cline-yes">1x</span>
412
+ <span class="cline-any cline-yes">1x</span>
413
+ <span class="cline-any cline-yes">1x</span>
414
+ <span class="cline-any cline-yes">1x</span>
415
+ <span class="cline-any cline-yes">1x</span>
416
+ <span class="cline-any cline-yes">1x</span>
417
+ <span class="cline-any cline-yes">1x</span>
418
+ <span class="cline-any cline-yes">1x</span>
419
+ <span class="cline-any cline-yes">1x</span>
420
+ <span class="cline-any cline-yes">1x</span>
421
+ <span class="cline-any cline-yes">1x</span>
422
+ <span class="cline-any cline-yes">1x</span>
423
+ <span class="cline-any cline-yes">1x</span>
424
+ <span class="cline-any cline-yes">1x</span>
425
+ <span class="cline-any cline-yes">1x</span>
426
+ <span class="cline-any cline-yes">1x</span>
427
+ <span class="cline-any cline-yes">1x</span>
428
+ <span class="cline-any cline-yes">1x</span>
429
+ <span class="cline-any cline-yes">1x</span>
430
+ <span class="cline-any cline-yes">1x</span>
431
+ <span class="cline-any cline-yes">1x</span>
432
+ <span class="cline-any cline-yes">1x</span>
433
+ <span class="cline-any cline-yes">1x</span>
434
+ <span class="cline-any cline-yes">1x</span>
435
+ <span class="cline-any cline-yes">1x</span>
436
+ <span class="cline-any cline-yes">1x</span>
437
+ <span class="cline-any cline-yes">1x</span>
438
+ <span class="cline-any cline-yes">1x</span>
439
+ <span class="cline-any cline-yes">1x</span>
440
+ <span class="cline-any cline-yes">1x</span>
441
+ <span class="cline-any cline-yes">1x</span>
442
+ <span class="cline-any cline-yes">1x</span>
443
+ <span class="cline-any cline-yes">1x</span>
444
+ <span class="cline-any cline-yes">1x</span>
445
+ <span class="cline-any cline-yes">1x</span>
446
+ <span class="cline-any cline-yes">1x</span>
447
+ <span class="cline-any cline-yes">1x</span>
448
+ <span class="cline-any cline-yes">1x</span>
449
+ <span class="cline-any cline-yes">1x</span>
450
+ <span class="cline-any cline-yes">1x</span>
451
+ <span class="cline-any cline-yes">1x</span>
452
+ <span class="cline-any cline-yes">1x</span>
453
+ <span class="cline-any cline-yes">1x</span>
454
+ <span class="cline-any cline-yes">1x</span>
455
+ <span class="cline-any cline-yes">1x</span>
456
+ <span class="cline-any cline-yes">1x</span>
457
+ <span class="cline-any cline-yes">1x</span>
458
+ <span class="cline-any cline-yes">1x</span>
459
+ <span class="cline-any cline-yes">1x</span>
460
+ <span class="cline-any cline-yes">1x</span>
461
+ <span class="cline-any cline-yes">1x</span>
462
+ <span class="cline-any cline-yes">1x</span>
463
+ <span class="cline-any cline-yes">1x</span>
464
+ <span class="cline-any cline-yes">1x</span>
465
+ <span class="cline-any cline-yes">1x</span>
466
+ <span class="cline-any cline-yes">1x</span>
467
+ <span class="cline-any cline-yes">1x</span>
468
+ <span class="cline-any cline-yes">1x</span>
469
+ <span class="cline-any cline-yes">1x</span>
470
+ <span class="cline-any cline-yes">1x</span>
471
+ <span class="cline-any cline-yes">1x</span>
472
+ <span class="cline-any cline-yes">1x</span>
473
+ <span class="cline-any cline-yes">1x</span>
474
+ <span class="cline-any cline-yes">1x</span>
475
+ <span class="cline-any cline-yes">1x</span>
476
+ <span class="cline-any cline-yes">1x</span>
477
+ <span class="cline-any cline-yes">1x</span>
478
+ <span class="cline-any cline-yes">1x</span>
479
+ <span class="cline-any cline-yes">1x</span>
480
+ <span class="cline-any cline-yes">1x</span>
481
+ <span class="cline-any cline-yes">1x</span>
482
+ <span class="cline-any cline-yes">1x</span>
483
+ <span class="cline-any cline-yes">1x</span>
484
+ <span class="cline-any cline-yes">1x</span>
485
+ <span class="cline-any cline-yes">1x</span>
486
+ <span class="cline-any cline-yes">1x</span>
487
+ <span class="cline-any cline-yes">1x</span>
488
+ <span class="cline-any cline-yes">1x</span>
489
+ <span class="cline-any cline-yes">1x</span>
490
+ <span class="cline-any cline-yes">1x</span>
491
+ <span class="cline-any cline-yes">1x</span>
492
+ <span class="cline-any cline-yes">1x</span>
493
+ <span class="cline-any cline-yes">1x</span>
494
+ <span class="cline-any cline-yes">1x</span>
495
+ <span class="cline-any cline-yes">1x</span>
496
+ <span class="cline-any cline-yes">1x</span>
497
+ <span class="cline-any cline-yes">1x</span>
498
+ <span class="cline-any cline-yes">1x</span>
499
+ <span class="cline-any cline-yes">1x</span>
500
+ <span class="cline-any cline-yes">1x</span>
501
+ <span class="cline-any cline-yes">1x</span>
502
+ <span class="cline-any cline-yes">1x</span>
503
+ <span class="cline-any cline-yes">1x</span>
504
+ <span class="cline-any cline-yes">1x</span>
505
+ <span class="cline-any cline-yes">1x</span>
506
+ <span class="cline-any cline-yes">1x</span>
507
+ <span class="cline-any cline-yes">1x</span>
508
+ <span class="cline-any cline-yes">1x</span>
509
+ <span class="cline-any cline-yes">1x</span>
510
+ <span class="cline-any cline-yes">1x</span>
511
+ <span class="cline-any cline-yes">1x</span>
512
+ <span class="cline-any cline-yes">1x</span>
513
+ <span class="cline-any cline-yes">1x</span>
514
+ <span class="cline-any cline-yes">1x</span>
515
+ <span class="cline-any cline-yes">1x</span>
516
+ <span class="cline-any cline-yes">1x</span>
517
+ <span class="cline-any cline-yes">1x</span>
518
+ <span class="cline-any cline-yes">1x</span>
519
+ <span class="cline-any cline-yes">1x</span>
520
+ <span class="cline-any cline-yes">1x</span>
521
+ <span class="cline-any cline-yes">1x</span>
522
+ <span class="cline-any cline-yes">1x</span>
523
+ <span class="cline-any cline-yes">1x</span>
524
+ <span class="cline-any cline-yes">1x</span>
525
+ <span class="cline-any cline-yes">1x</span>
526
+ <span class="cline-any cline-yes">1x</span>
527
+ <span class="cline-any cline-yes">1x</span>
528
+ <span class="cline-any cline-yes">1x</span>
529
+ <span class="cline-any cline-yes">1x</span>
530
+ <span class="cline-any cline-yes">1x</span>
531
+ <span class="cline-any cline-yes">1x</span>
532
+ <span class="cline-any cline-yes">1x</span>
533
+ <span class="cline-any cline-yes">1x</span>
534
+ <span class="cline-any cline-yes">1x</span>
535
+ <span class="cline-any cline-yes">1x</span>
536
+ <span class="cline-any cline-yes">1x</span>
537
+ <span class="cline-any cline-yes">1x</span>
538
+ <span class="cline-any cline-yes">1x</span>
539
+ <span class="cline-any cline-yes">1x</span>
540
+ <span class="cline-any cline-yes">1x</span>
541
+ <span class="cline-any cline-yes">1x</span>
542
+ <span class="cline-any cline-yes">1x</span>
543
+ <span class="cline-any cline-yes">1x</span>
544
+ <span class="cline-any cline-yes">1x</span>
545
+ <span class="cline-any cline-yes">1x</span>
546
+ <span class="cline-any cline-yes">1x</span>
547
+ <span class="cline-any cline-yes">1x</span>
548
+ <span class="cline-any cline-yes">1x</span>
549
+ <span class="cline-any cline-yes">1x</span>
550
+ <span class="cline-any cline-yes">1x</span>
551
+ <span class="cline-any cline-yes">1x</span>
552
+ <span class="cline-any cline-yes">1x</span>
553
+ <span class="cline-any cline-yes">1x</span>
554
+ <span class="cline-any cline-yes">1x</span>
555
+ <span class="cline-any cline-yes">1x</span>
556
+ <span class="cline-any cline-yes">1x</span>
557
+ <span class="cline-any cline-yes">1x</span>
558
+ <span class="cline-any cline-yes">1x</span>
559
+ <span class="cline-any cline-yes">1x</span>
560
+ <span class="cline-any cline-yes">1x</span>
561
+ <span class="cline-any cline-yes">1x</span>
562
+ <span class="cline-any cline-yes">1x</span>
563
+ <span class="cline-any cline-yes">1x</span>
564
+ <span class="cline-any cline-yes">1x</span>
565
+ <span class="cline-any cline-yes">1x</span>
566
+ <span class="cline-any cline-yes">1x</span>
567
+ <span class="cline-any cline-yes">1x</span>
568
+ <span class="cline-any cline-yes">1x</span>
569
+ <span class="cline-any cline-yes">1x</span>
570
+ <span class="cline-any cline-yes">1x</span>
571
+ <span class="cline-any cline-yes">1x</span>
572
+ <span class="cline-any cline-yes">1x</span>
573
+ <span class="cline-any cline-yes">1x</span>
574
+ <span class="cline-any cline-yes">1x</span>
575
+ <span class="cline-any cline-yes">1x</span>
576
+ <span class="cline-any cline-yes">1x</span>
577
+ <span class="cline-any cline-yes">1x</span>
578
+ <span class="cline-any cline-yes">1x</span>
579
+ <span class="cline-any cline-yes">1x</span>
580
+ <span class="cline-any cline-yes">1x</span>
581
+ <span class="cline-any cline-yes">27x</span>
582
+ <span class="cline-any cline-yes">27x</span>
583
+ <span class="cline-any cline-yes">27x</span>
584
+ <span class="cline-any cline-yes">27x</span>
585
+ <span class="cline-any cline-yes">27x</span>
586
+ <span class="cline-any cline-yes">27x</span>
587
+ <span class="cline-any cline-yes">27x</span>
588
+ <span class="cline-any cline-yes">27x</span>
589
+ <span class="cline-any cline-yes">27x</span>
590
+ <span class="cline-any cline-yes">27x</span>
591
+ <span class="cline-any cline-yes">27x</span>
592
+ <span class="cline-any cline-yes">27x</span>
593
+ <span class="cline-any cline-yes">27x</span>
594
+ <span class="cline-any cline-yes">27x</span>
595
+ <span class="cline-any cline-yes">27x</span>
596
+ <span class="cline-any cline-yes">27x</span>
597
+ <span class="cline-any cline-yes">27x</span>
598
+ <span class="cline-any cline-yes">27x</span>
599
+ <span class="cline-any cline-yes">27x</span>
600
+ <span class="cline-any cline-yes">27x</span>
601
+ <span class="cline-any cline-yes">27x</span>
602
+ <span class="cline-any cline-yes">27x</span>
603
+ <span class="cline-any cline-yes">27x</span>
604
+ <span class="cline-any cline-yes">27x</span>
605
+ <span class="cline-any cline-yes">27x</span>
606
+ <span class="cline-any cline-yes">27x</span>
607
+ <span class="cline-any cline-yes">27x</span>
608
+ <span class="cline-any cline-yes">27x</span>
609
+ <span class="cline-any cline-yes">26x</span>
610
+ <span class="cline-any cline-yes">26x</span>
611
+ <span class="cline-any cline-yes">27x</span>
612
+ <span class="cline-any cline-yes">27x</span>
613
+ <span class="cline-any cline-yes">27x</span>
614
+ <span class="cline-any cline-yes">27x</span>
615
+ <span class="cline-any cline-yes">27x</span>
616
+ <span class="cline-any cline-yes">27x</span>
617
+ <span class="cline-any cline-yes">27x</span>
618
+ <span class="cline-any cline-yes">27x</span>
619
+ <span class="cline-any cline-yes">27x</span>
620
+ <span class="cline-any cline-yes">27x</span>
621
+ <span class="cline-any cline-yes">27x</span>
622
+ <span class="cline-any cline-yes">27x</span>
623
+ <span class="cline-any cline-yes">27x</span>
624
+ <span class="cline-any cline-yes">2x</span>
625
+ <span class="cline-any cline-yes">2x</span>
626
+ <span class="cline-any cline-yes">2x</span>
627
+ <span class="cline-any cline-yes">2x</span>
628
+ <span class="cline-any cline-yes">2x</span>
629
+ <span class="cline-any cline-yes">2x</span>
630
+ <span class="cline-any cline-yes">2x</span>
631
+ <span class="cline-any cline-yes">27x</span>
632
+ <span class="cline-any cline-yes">27x</span>
633
+ <span class="cline-any cline-yes">27x</span>
634
+ <span class="cline-any cline-yes">27x</span>
635
+ <span class="cline-any cline-yes">27x</span>
636
+ <span class="cline-any cline-yes">27x</span>
637
+ <span class="cline-any cline-yes">27x</span>
638
+ <span class="cline-any cline-yes">27x</span>
639
+ <span class="cline-any cline-yes">27x</span>
640
+ <span class="cline-any cline-yes">27x</span>
641
+ <span class="cline-any cline-yes">27x</span>
642
+ <span class="cline-any cline-yes">27x</span>
643
+ <span class="cline-any cline-yes">27x</span>
644
+ <span class="cline-any cline-yes">27x</span>
645
+ <span class="cline-any cline-yes">2x</span>
646
+ <span class="cline-any cline-yes">2x</span>
647
+ <span class="cline-any cline-yes">27x</span>
648
+ <span class="cline-any cline-yes">2x</span>
649
+ <span class="cline-any cline-yes">2x</span>
650
+ <span class="cline-any cline-yes">27x</span>
651
+ <span class="cline-any cline-yes">27x</span>
652
+ <span class="cline-any cline-yes">27x</span>
653
+ <span class="cline-any cline-yes">23x</span>
654
+ <span class="cline-any cline-yes">23x</span>
655
+ <span class="cline-any cline-yes">1x</span>
656
+ <span class="cline-any cline-yes">23x</span>
657
+ <span class="cline-any cline-yes">1x</span>
658
+ <span class="cline-any cline-yes">22x</span>
659
+ <span class="cline-any cline-yes">21x</span>
660
+ <span class="cline-any cline-yes">21x</span>
661
+ <span class="cline-any cline-yes">23x</span>
662
+ <span class="cline-any cline-yes">23x</span>
663
+ <span class="cline-any cline-yes">23x</span>
664
+ <span class="cline-any cline-yes">23x</span>
665
+ <span class="cline-any cline-yes">23x</span>
666
+ <span class="cline-any cline-yes">23x</span>
667
+ <span class="cline-any cline-yes">23x</span>
668
+ <span class="cline-any cline-yes">23x</span>
669
+ <span class="cline-any cline-yes">23x</span>
670
+ <span class="cline-any cline-yes">23x</span>
671
+ <span class="cline-any cline-yes">23x</span>
672
+ <span class="cline-any cline-yes">23x</span>
673
+ <span class="cline-any cline-yes">23x</span>
674
+ <span class="cline-any cline-yes">23x</span>
675
+ <span class="cline-any cline-yes">23x</span>
676
+ <span class="cline-any cline-yes">27x</span>
677
+ <span class="cline-any cline-yes">27x</span>
678
+ <span class="cline-any cline-yes">27x</span>
679
+ <span class="cline-any cline-yes">27x</span>
680
+ <span class="cline-any cline-yes">27x</span>
681
+ <span class="cline-any cline-yes">27x</span>
682
+ <span class="cline-any cline-yes">27x</span>
683
+ <span class="cline-any cline-yes">27x</span>
684
+ <span class="cline-any cline-yes">27x</span>
685
+ <span class="cline-any cline-yes">27x</span>
686
+ <span class="cline-any cline-yes">27x</span>
687
+ <span class="cline-any cline-yes">27x</span>
688
+ <span class="cline-any cline-yes">27x</span>
689
+ <span class="cline-any cline-yes">27x</span>
690
+ <span class="cline-any cline-yes">27x</span>
691
+ <span class="cline-any cline-yes">27x</span>
692
+ <span class="cline-any cline-yes">27x</span>
693
+ <span class="cline-any cline-yes">27x</span>
694
+ <span class="cline-any cline-yes">27x</span>
695
+ <span class="cline-any cline-yes">27x</span>
696
+ <span class="cline-any cline-yes">27x</span>
697
+ <span class="cline-any cline-yes">27x</span>
698
+ <span class="cline-any cline-yes">1x</span>
699
+ <span class="cline-any cline-yes">26x</span>
700
+ <span class="cline-any cline-yes">27x</span>
701
+ <span class="cline-any cline-yes">27x</span>
702
+ <span class="cline-any cline-yes">27x</span>
703
+ <span class="cline-any cline-yes">27x</span>
704
+ <span class="cline-any cline-yes">27x</span>
705
+ <span class="cline-any cline-yes">1x</span>
706
+ <span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">"use client";
707
+ import { cnb } from "cnbuilder";
708
+ import { forwardRef, type MouseEvent, type ReactNode } from "react";
709
+ import { type BoxAlignItems } from "../box/styles.js";
710
+ import { overlay } from "../overlay/overlayStyles.js";
711
+ import {
712
+ CircularProgress,
713
+ type CircularProgressProps,
714
+ } from "../progress/CircularProgress.js";
715
+ import {
716
+ LinearProgress,
717
+ type LinearProgressProps,
718
+ } from "../progress/LinearProgress.js";
719
+ import { type ProgressTheme } from "../progress/types.js";
720
+ import { type PropsWithRef } from "../types.js";
721
+ import { useAsyncAction } from "../useAsyncAction.js";
722
+ import { useEnsuredId } from "../useEnsuredId.js";
723
+ import { Button, type ButtonProps } from "./Button.js";
724
+ &nbsp;
725
+ const noop = (): void =&gt; {
726
+ // do nothing
727
+ };
728
+ &nbsp;
729
+ /**
730
+ * @remarks \@since 6.0.0
731
+ */
732
+ export type AsyncButtonLoadingType =
733
+ | "circular-before"
734
+ | "circular-after"
735
+ | "circular-overlay"
736
+ | "linear-above"
737
+ | "linear-below";
738
+ &nbsp;
739
+ /**
740
+ * @remarks \@since 6.0.0
741
+ */
742
+ export interface AsyncButtonProps extends ButtonProps {
743
+ /**
744
+ * @see {@link progressAriaLabelledBy}
745
+ * @defaultValue `"async-button" + useId()`
746
+ */
747
+ id?: string;
748
+ &nbsp;
749
+ /**
750
+ * When this is defined and returns a `Promise`, the loading indicator will
751
+ * display until the promise has resolved.
752
+ *
753
+ * @defaultValue `() =&gt; {}`
754
+ */
755
+ onClick?(event: MouseEvent&lt;HTMLButtonElement&gt;): Promise&lt;void&gt; | void;
756
+ &nbsp;
757
+ /**
758
+ * Set this to `true` to manually display a loading spinner.
759
+ *
760
+ * @defaultValue `false`
761
+ */
762
+ loading?: boolean;
763
+ &nbsp;
764
+ /**
765
+ * - `"circular-overlay"` - Covers and hides the button content with a
766
+ * centered circular progress
767
+ * - `"circular-before"` - Renders a circular progress bar before the button
768
+ * content which is useful when rendering an icon before the button text.
769
+ * See {@link beforeAddon} as well.
770
+ * - `"circular-after"` - Renders a circular progress bar before the button
771
+ * content which is useful when rendering an icon after the button text.
772
+ * See {@link afterAddon} as well.
773
+ * - `"linear-above"` - Renders a linear progress bar at the top of the button
774
+ * while still displaying the button contents. Usually looks good for
775
+ * outlined buttons.
776
+ * - `"linear-below"` - Renders a linear progress bar at the bottom of the
777
+ * button while still displaying the button contents. Usually looks good for
778
+ * outlined buttons.
779
+ *
780
+ * @defaultValue `"circular-overlay"`
781
+ */
782
+ loadingType?: AsyncButtonLoadingType;
783
+ &nbsp;
784
+ /**
785
+ * Optional content to display instead of the default `children` while
786
+ * loading.
787
+ */
788
+ loadingChildren?: ReactNode;
789
+ &nbsp;
790
+ /**
791
+ * Set this to `true` to use the `disabled` theme while loading.
792
+ *
793
+ * @defaultValue `false`
794
+ */
795
+ loadingDisabledTheme?: boolean;
796
+ &nbsp;
797
+ /**
798
+ * This should be used when the {@link loadingType} is set to
799
+ * `"circular-before"`, an icon should appear before the other content in
800
+ * the button, and the loading indicator should replace the icon.
801
+ */
802
+ beforeAddon?: ReactNode;
803
+ &nbsp;
804
+ /**
805
+ * This should be used when the {@link loadingType} is set to
806
+ * `"circular-after"`, an icon should appear before the other content in
807
+ * the button, and the loading indicator should replace the icon.
808
+ */
809
+ afterAddon?: ReactNode;
810
+ &nbsp;
811
+ /**
812
+ * An optional label to provide to the progressbar.
813
+ *
814
+ * @see {@link progressAriaLabelledBy}
815
+ */
816
+ progressAriaLabel?: string;
817
+ &nbsp;
818
+ /**
819
+ * @see {@link id}
820
+ * @defaultValue `id`
821
+ */
822
+ progressAriaLabelledBy?: string;
823
+ &nbsp;
824
+ /**
825
+ * Any additional props to pass to the `CircularProgress` bar when the
826
+ * {@link loadingType} is one of the circular types.
827
+ */
828
+ linearProgressProps?: PropsWithRef&lt;LinearProgressProps, HTMLDivElement&gt;;
829
+ &nbsp;
830
+ /**
831
+ * Any additional props to pass to the `LinearProgress` bar when the
832
+ * {@link loadingType} is one of the linear types.
833
+ */
834
+ circularProgressProps?: PropsWithRef&lt;CircularProgressProps, HTMLSpanElement&gt;;
835
+ }
836
+ &nbsp;
837
+ /**
838
+ * **Client Component**
839
+ *
840
+ * The async button can be used to render a loading indicator within a button
841
+ * during an async task. The loading spinner can be shown either by enabling the
842
+ * `loading` prop or returning a promise from the `onClick` event which will
843
+ * continue to show the loading indicator until the promise has been resolved.
844
+ *
845
+ * @example
846
+ * Async onClick
847
+ * ```tsx
848
+ * import { AsyncButton } from "@react-md/core";
849
+ * import { useState, type ReactElement } from "react";
850
+ *
851
+ * function Example(): ReactElement {
852
+ * const [data, setData] = useState(null);
853
+ * return (
854
+ * &lt;AsyncButton
855
+ * type="submit"
856
+ * onClick={async () =&gt; {
857
+ * const response = await fetch("/my-api");
858
+ * const json = await response.json();
859
+ * setData(json);
860
+ * }}
861
+ * &gt;
862
+ * Submit
863
+ * &lt;/AsyncButton&gt;
864
+ * );
865
+ * }
866
+ * ```
867
+ *
868
+ * @example
869
+ * Manual Loading State
870
+ * ```tsx
871
+ * import { AsyncButton } from "@react-md/core";
872
+ * import { useMutation } from "@tanstack/query";
873
+ * import { useState, type ReactElement } from "react";
874
+ *
875
+ * function Example(): ReactElement {
876
+ * const { isLoading, mutate } = useMutation({
877
+ * mutationFn: (newTodo) =&gt; fetch('/todos', {
878
+ * method: "POST",
879
+ * body: JSON.stringify(newTodo),
880
+ * }),
881
+ * });
882
+ *
883
+ * return (
884
+ * &lt;AsyncButton
885
+ * type="submit"
886
+ * loading={isLoading}
887
+ * onClick={() =&gt; {
888
+ * mutate({ id: Date.now(), title: "Create example" });
889
+ * }}
890
+ * &gt;
891
+ * Create Todo
892
+ * &lt;/AsyncButton&gt;
893
+ * );
894
+ * }
895
+ * ```
896
+ *
897
+ * @remarks \@since 6.0.0
898
+ */
899
+ export const AsyncButton = forwardRef&lt;HTMLButtonElement, AsyncButtonProps&gt;(
900
+ function AsyncButton(props, ref) {
901
+ const {
902
+ id: propId,
903
+ onClick = noop,
904
+ children,
905
+ floating = null,
906
+ theme = floating ? "secondary" : "clear",
907
+ themeType = floating ? "contained" : "flat",
908
+ buttonType = floating ? "icon" : "text",
909
+ className,
910
+ disabled,
911
+ loading: propLoading = false,
912
+ loadingType = "circular-overlay",
913
+ loadingChildren,
914
+ loadingDisabledTheme = false,
915
+ afterAddon: propAfterAddon,
916
+ beforeAddon: propBeforeAddon,
917
+ linearProgressProps,
918
+ circularProgressProps,
919
+ progressAriaLabel,
920
+ progressAriaLabelledBy: propProgressAriaLabelledBy,
921
+ ...remaining
922
+ } = props;
923
+ const id = useEnsuredId(propId, "async-button");
924
+ const { handleAsync, pending } = useAsyncAction({ disabled });
925
+ const loading = pending || propLoading;
926
+ &nbsp;
927
+ let progressTheme: ProgressTheme = "current-color";
928
+ if (theme === "clear" || theme === "disabled") {
929
+ progressTheme = "primary";
930
+ }
931
+ &nbsp;
932
+ let progressAriaLabelledBy = propProgressAriaLabelledBy;
933
+ if (
934
+ !progressAriaLabel &amp;&amp;
935
+ !<span class="branch-0 cbranch-no" title="branch not covered" >linearProgressProps?.["aria-label"] </span>&amp;&amp;
936
+ !<span class="branch-0 cbranch-no" title="branch not covered" >linearProgressProps?.["aria-labelledby"] </span>&amp;&amp;
937
+ !<span class="branch-0 cbranch-no" title="branch not covered" >circularProgressProps?.["aria-label"] </span>&amp;&amp;
938
+ !<span class="branch-0 cbranch-no" title="branch not covered" >circularProgressProps?.["aria-labelledby"]</span>
939
+ ) {
940
+ progressAriaLabelledBy = id;
941
+ }
942
+ &nbsp;
943
+ const progress = loadingType.includes("linear") ? (
944
+ &lt;LinearProgress
945
+ aria-label={progressAriaLabel}
946
+ aria-labelledby={progressAriaLabelledBy as string}
947
+ {...linearProgressProps}
948
+ theme={progressTheme}
949
+ /&gt;
950
+ ) : (
951
+ &lt;CircularProgress
952
+ aria-label={progressAriaLabel}
953
+ aria-labelledby={progressAriaLabelledBy as string}
954
+ {...circularProgressProps}
955
+ theme={progressTheme}
956
+ /&gt;
957
+ );
958
+ &nbsp;
959
+ let afterAddon = propAfterAddon;
960
+ let beforeAddon = propBeforeAddon;
961
+ let overlayElement: ReactNode;
962
+ let isOverlayCover = false;
963
+ switch (loadingType) {
964
+ case "circular-before":
965
+ beforeAddon = loading ? progress : propBeforeAddon;
966
+ break;
967
+ case "circular-after":
968
+ afterAddon = loading ? progress : propAfterAddon;
969
+ break;
970
+ case "circular-overlay":
971
+ case "linear-above":
972
+ case "linear-below": {
973
+ let alignItems: BoxAlignItems = "center";
974
+ if (loadingType === "linear-above") {
975
+ alignItems = "start";
976
+ } else if (loadingType === "linear-below") {
977
+ alignItems = "end";
978
+ } else {
979
+ isOverlayCover = true;
980
+ }
981
+ &nbsp;
982
+ overlayElement = loading &amp;&amp; (
983
+ &lt;span
984
+ className={overlay({
985
+ active: true,
986
+ visible: true,
987
+ absolute: true,
988
+ align: alignItems,
989
+ })}
990
+ &gt;
991
+ {progress}
992
+ &lt;/span&gt;
993
+ );
994
+ break;
995
+ }
996
+ }
997
+ &nbsp;
998
+ return (
999
+ &lt;Button
1000
+ {...remaining}
1001
+ aria-disabled={loading || undefined}
1002
+ id={id}
1003
+ ref={ref}
1004
+ disabled={disabled}
1005
+ floating={floating}
1006
+ className={cnb(
1007
+ "rmd-button--async",
1008
+ loading &amp;&amp; isOverlayCover &amp;&amp; "rmd-button--async-overlay",
1009
+ className
1010
+ )}
1011
+ theme={loading &amp;&amp; loadingDisabledTheme ? "disabled" : theme}
1012
+ themeType={themeType}
1013
+ buttonType={buttonType}
1014
+ onClick={handleAsync((event) =&gt; Promise.resolve(onClick(event)))}
1015
+ &gt;
1016
+ {beforeAddon}
1017
+ {loading &amp;&amp; typeof loadingChildren !== "undefined"
1018
+ ? loadingChildren
1019
+ : children}
1020
+ {afterAddon}
1021
+ {overlayElement}
1022
+ &lt;/Button&gt;
1023
+ );
1024
+ }
1025
+ );
477
1026
  &nbsp;</pre></td></tr></table></pre>
478
1027
 
479
1028
  <div class='push'></div><!-- for sticky footer -->
@@ -481,7 +1030,7 @@
481
1030
  <div class='footer quiet pad2 space-top1 center small'>
482
1031
  Code coverage generated by
483
1032
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
484
- at 2023-09-29T21:35:47.680Z
1033
+ at 2023-11-13T20:44:31.635Z
485
1034
  </div>
486
1035
  <script src="../../prettify.js"></script>
487
1036
  <script>