@material/web 1.0.0 → 1.0.2-nightly.6a1fb38.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (370) hide show
  1. package/all.d.ts +2 -0
  2. package/all.js +2 -0
  3. package/all.js.map +1 -1
  4. package/button/elevated-button.js +5 -1
  5. package/button/elevated-button.js.map +1 -1
  6. package/button/internal/_elevation.scss +32 -32
  7. package/button/internal/_icon.scss +22 -23
  8. package/button/internal/_outlined-button.scss +21 -19
  9. package/button/internal/_shared.scss +84 -77
  10. package/button/internal/_touch-target.scss +4 -0
  11. package/button/internal/button.d.ts +7 -11
  12. package/button/internal/button.js +52 -38
  13. package/button/internal/button.js.map +1 -1
  14. package/button/internal/elevated-button.d.ts +1 -1
  15. package/button/internal/elevated-button.js +1 -1
  16. package/button/internal/elevated-button.js.map +1 -1
  17. package/button/internal/filled-button.d.ts +1 -1
  18. package/button/internal/filled-button.js +1 -1
  19. package/button/internal/filled-button.js.map +1 -1
  20. package/button/internal/filled-tonal-button.d.ts +1 -1
  21. package/button/internal/filled-tonal-button.js +1 -1
  22. package/button/internal/filled-tonal-button.js.map +1 -1
  23. package/button/internal/outlined-button.d.ts +1 -1
  24. package/button/internal/outlined-button.js +2 -2
  25. package/button/internal/outlined-button.js.map +1 -1
  26. package/button/internal/outlined-styles.css.js +1 -1
  27. package/button/internal/outlined-styles.css.js.map +1 -1
  28. package/button/internal/shared-elevation-styles.css.js +1 -1
  29. package/button/internal/shared-elevation-styles.css.js.map +1 -1
  30. package/button/internal/shared-styles.css.js +1 -1
  31. package/button/internal/shared-styles.css.js.map +1 -1
  32. package/checkbox/internal/_checkbox.scss +6 -0
  33. package/checkbox/internal/checkbox-styles.css.js +1 -1
  34. package/checkbox/internal/checkbox-styles.css.js.map +1 -1
  35. package/checkbox/internal/checkbox.d.ts +16 -23
  36. package/checkbox/internal/checkbox.js +38 -52
  37. package/checkbox/internal/checkbox.js.map +1 -1
  38. package/chips/filter-chip.js +5 -1
  39. package/chips/filter-chip.js.map +1 -1
  40. package/chips/harness.js.map +1 -1
  41. package/chips/input-chip.js +6 -1
  42. package/chips/input-chip.js.map +1 -1
  43. package/chips/internal/assist-chip.js +8 -4
  44. package/chips/internal/assist-chip.js.map +1 -1
  45. package/chips/internal/chip-set.js +6 -4
  46. package/chips/internal/chip-set.js.map +1 -1
  47. package/chips/internal/chip.d.ts +3 -0
  48. package/chips/internal/chip.js +7 -5
  49. package/chips/internal/chip.js.map +1 -1
  50. package/chips/internal/filter-chip.d.ts +2 -0
  51. package/chips/internal/filter-chip.js +11 -5
  52. package/chips/internal/filter-chip.js.map +1 -1
  53. package/chips/internal/input-chip.d.ts +2 -0
  54. package/chips/internal/input-chip.js +10 -4
  55. package/chips/internal/input-chip.js.map +1 -1
  56. package/chips/internal/multi-action-chip.js.map +1 -1
  57. package/chips/internal/trailing-icons.d.ts +1 -1
  58. package/chips/internal/trailing-icons.js +6 -5
  59. package/chips/internal/trailing-icons.js.map +1 -1
  60. package/common.d.ts +2 -0
  61. package/common.js +2 -0
  62. package/common.js.map +1 -1
  63. package/dialog/harness.js +1 -2
  64. package/dialog/harness.js.map +1 -1
  65. package/dialog/internal/_dialog.scss +1 -1
  66. package/dialog/internal/animations.js +14 -12
  67. package/dialog/internal/animations.js.map +1 -1
  68. package/dialog/internal/dialog-styles.css.js +1 -1
  69. package/dialog/internal/dialog-styles.css.js.map +1 -1
  70. package/dialog/internal/dialog.d.ts +6 -6
  71. package/dialog/internal/dialog.js +24 -24
  72. package/dialog/internal/dialog.js.map +1 -1
  73. package/fab/harness.js.map +1 -1
  74. package/fab/internal/_fab.scss +4 -0
  75. package/fab/internal/fab-styles.css.js +1 -1
  76. package/fab/internal/fab-styles.css.js.map +1 -1
  77. package/fab/internal/fab.js.map +1 -1
  78. package/fab/internal/shared.js +10 -11
  79. package/fab/internal/shared.js.map +1 -1
  80. package/field/harness.js.map +1 -1
  81. package/field/internal/_content.scss +185 -174
  82. package/field/internal/_filled-field.scss +147 -135
  83. package/field/internal/_label.scss +83 -72
  84. package/field/internal/_outlined-field.scss +276 -261
  85. package/field/internal/_supporting-text.scss +53 -42
  86. package/field/internal/field.js +26 -22
  87. package/field/internal/field.js.map +1 -1
  88. package/field/internal/filled-styles.css.js +1 -1
  89. package/field/internal/filled-styles.css.js.map +1 -1
  90. package/field/internal/outlined-styles.css.js +1 -1
  91. package/field/internal/outlined-styles.css.js.map +1 -1
  92. package/field/internal/shared-styles.css.js +1 -1
  93. package/field/internal/shared-styles.css.js.map +1 -1
  94. package/focus/internal/focus-ring.d.ts +2 -0
  95. package/focus/internal/focus-ring.js +3 -3
  96. package/focus/internal/focus-ring.js.map +1 -1
  97. package/icon/internal/_icon.scss +7 -4
  98. package/icon/internal/icon-styles.css.js +1 -1
  99. package/icon/internal/icon-styles.css.js.map +1 -1
  100. package/iconbutton/internal/icon-button.d.ts +9 -4
  101. package/iconbutton/internal/icon-button.js +35 -22
  102. package/iconbutton/internal/icon-button.js.map +1 -1
  103. package/internal/aria/aria.d.ts +4 -26
  104. package/internal/aria/aria.js +10 -28
  105. package/internal/aria/aria.js.map +1 -1
  106. package/internal/aria/delegate.js +2 -2
  107. package/internal/aria/delegate.js.map +1 -1
  108. package/internal/controller/attachable-controller.js +3 -5
  109. package/internal/controller/attachable-controller.js.map +1 -1
  110. package/internal/controller/form-submitter.d.ts +3 -5
  111. package/internal/controller/form-submitter.js +5 -7
  112. package/internal/controller/form-submitter.js.map +1 -1
  113. package/internal/controller/is-rtl.js +2 -2
  114. package/internal/controller/is-rtl.js.map +1 -1
  115. package/internal/controller/string-converter.js +1 -1
  116. package/internal/controller/string-converter.js.map +1 -1
  117. package/internal/motion/animation.js.map +1 -1
  118. package/labs/behaviors/element-internals.d.ts +45 -0
  119. package/labs/behaviors/element-internals.js +50 -0
  120. package/labs/behaviors/element-internals.js.map +1 -0
  121. package/labs/behaviors/focusable.d.ts +39 -0
  122. package/labs/behaviors/focusable.js +82 -0
  123. package/labs/behaviors/focusable.js.map +1 -0
  124. package/labs/behaviors/form-associated.d.ts +199 -0
  125. package/labs/behaviors/form-associated.js +155 -0
  126. package/labs/behaviors/form-associated.js.map +1 -0
  127. package/labs/behaviors/mixin.d.ts +54 -0
  128. package/labs/behaviors/mixin.js +7 -0
  129. package/labs/behaviors/mixin.js.map +1 -0
  130. package/labs/card/_elevated-card.scss +6 -0
  131. package/labs/card/_filled-card.scss +6 -0
  132. package/labs/card/_outlined-card.scss +6 -0
  133. package/labs/card/elevated-card.d.ts +18 -0
  134. package/labs/card/elevated-card.js +21 -0
  135. package/labs/card/elevated-card.js.map +1 -0
  136. package/labs/card/filled-card.d.ts +18 -0
  137. package/labs/card/filled-card.js +21 -0
  138. package/labs/card/filled-card.js.map +1 -0
  139. package/labs/card/internal/_elevated-card.scss +35 -0
  140. package/labs/card/internal/_filled-card.scss +35 -0
  141. package/labs/card/internal/_outlined-card.scss +39 -0
  142. package/labs/card/internal/_shared.scss +40 -0
  143. package/labs/card/internal/card.d.ts +13 -0
  144. package/labs/card/internal/card.js +20 -0
  145. package/labs/card/internal/card.js.map +1 -0
  146. package/labs/card/internal/elevated-styles.css.js +9 -0
  147. package/labs/card/internal/elevated-styles.css.js.map +1 -0
  148. package/labs/card/internal/elevated-styles.scss +10 -0
  149. package/labs/card/internal/filled-styles.css.js +9 -0
  150. package/labs/card/internal/filled-styles.css.js.map +1 -0
  151. package/labs/card/internal/filled-styles.scss +10 -0
  152. package/labs/card/internal/outlined-styles.css.js +9 -0
  153. package/labs/card/internal/outlined-styles.css.js.map +1 -0
  154. package/labs/card/internal/outlined-styles.scss +10 -0
  155. package/labs/card/internal/shared-styles.css.js +9 -0
  156. package/labs/card/internal/shared-styles.css.js.map +1 -0
  157. package/labs/card/internal/shared-styles.scss +10 -0
  158. package/labs/card/outlined-card.d.ts +18 -0
  159. package/labs/card/outlined-card.js +21 -0
  160. package/labs/card/outlined-card.js.map +1 -0
  161. package/labs/item/internal/_item.scss +1 -1
  162. package/labs/item/internal/item-styles.css.js +1 -1
  163. package/labs/item/internal/item-styles.css.js.map +1 -1
  164. package/labs/item/internal/item.js +8 -8
  165. package/labs/item/internal/item.js.map +1 -1
  166. package/labs/navigationbar/internal/constants.js.map +1 -1
  167. package/labs/navigationbar/internal/navigation-bar.d.ts +3 -0
  168. package/labs/navigationbar/internal/navigation-bar.js +18 -11
  169. package/labs/navigationbar/internal/navigation-bar.js.map +1 -1
  170. package/labs/navigationdrawer/internal/navigation-drawer-modal.d.ts +3 -0
  171. package/labs/navigationdrawer/internal/navigation-drawer-modal.js +10 -3
  172. package/labs/navigationdrawer/internal/navigation-drawer-modal.js.map +1 -1
  173. package/labs/navigationdrawer/internal/navigation-drawer.d.ts +3 -0
  174. package/labs/navigationdrawer/internal/navigation-drawer.js +8 -1
  175. package/labs/navigationdrawer/internal/navigation-drawer.js.map +1 -1
  176. package/labs/navigationtab/harness.js.map +1 -1
  177. package/labs/navigationtab/internal/navigation-tab.d.ts +6 -0
  178. package/labs/navigationtab/internal/navigation-tab.js +43 -27
  179. package/labs/navigationtab/internal/navigation-tab.js.map +1 -1
  180. package/labs/navigationtab/internal/state.js.map +1 -1
  181. package/labs/segmentedbutton/internal/segmented-button.d.ts +3 -0
  182. package/labs/segmentedbutton/internal/segmented-button.js +26 -12
  183. package/labs/segmentedbutton/internal/segmented-button.js.map +1 -1
  184. package/labs/segmentedbuttonset/internal/segmented-button-set.d.ts +5 -0
  185. package/labs/segmentedbuttonset/internal/segmented-button-set.js +14 -9
  186. package/labs/segmentedbuttonset/internal/segmented-button-set.js.map +1 -1
  187. package/list/harness.d.ts +3 -2
  188. package/list/harness.js.map +1 -1
  189. package/list/internal/list-controller.d.ts +1 -1
  190. package/list/internal/list-controller.js +7 -3
  191. package/list/internal/list-controller.js.map +1 -1
  192. package/list/internal/list-navigation-helpers.js.map +1 -1
  193. package/list/internal/list.d.ts +2 -2
  194. package/list/internal/list.js +8 -6
  195. package/list/internal/list.js.map +1 -1
  196. package/list/internal/listitem/_list-item.scss +18 -0
  197. package/list/internal/listitem/harness.d.ts +3 -3
  198. package/list/internal/listitem/harness.js.map +1 -1
  199. package/list/internal/listitem/list-item-styles.css.js +1 -1
  200. package/list/internal/listitem/list-item-styles.css.js.map +1 -1
  201. package/list/internal/listitem/list-item.d.ts +3 -2
  202. package/list/internal/listitem/list-item.js +20 -21
  203. package/list/internal/listitem/list-item.js.map +1 -1
  204. package/list/list-item.d.ts +4 -12
  205. package/list/list-item.js +5 -14
  206. package/list/list-item.js.map +1 -1
  207. package/menu/harness.js.map +1 -1
  208. package/menu/internal/_menu.scss +20 -1
  209. package/menu/internal/controllers/menuItemController.d.ts +7 -0
  210. package/menu/internal/controllers/menuItemController.js +17 -4
  211. package/menu/internal/controllers/menuItemController.js.map +1 -1
  212. package/menu/internal/controllers/shared.d.ts +9 -1
  213. package/menu/internal/controllers/shared.js +4 -4
  214. package/menu/internal/controllers/shared.js.map +1 -1
  215. package/menu/internal/controllers/surfacePositionController.d.ts +15 -2
  216. package/menu/internal/controllers/surfacePositionController.js +134 -56
  217. package/menu/internal/controllers/surfacePositionController.js.map +1 -1
  218. package/menu/internal/controllers/typeaheadController.js +19 -14
  219. package/menu/internal/controllers/typeaheadController.js.map +1 -1
  220. package/menu/internal/menu-styles.css.js +1 -1
  221. package/menu/internal/menu-styles.css.js.map +1 -1
  222. package/menu/internal/menu.d.ts +55 -17
  223. package/menu/internal/menu.js +175 -88
  224. package/menu/internal/menu.js.map +1 -1
  225. package/menu/internal/menuitem/_menu-item.scss +24 -0
  226. package/menu/internal/menuitem/harness.d.ts +3 -1
  227. package/menu/internal/menuitem/harness.js.map +1 -1
  228. package/menu/internal/menuitem/menu-item-styles.css.js +1 -1
  229. package/menu/internal/menuitem/menu-item-styles.css.js.map +1 -1
  230. package/menu/internal/menuitem/menu-item.d.ts +3 -2
  231. package/menu/internal/menuitem/menu-item.js +20 -20
  232. package/menu/internal/menuitem/menu-item.js.map +1 -1
  233. package/menu/internal/submenu/sub-menu.d.ts +9 -8
  234. package/menu/internal/submenu/sub-menu.js +35 -22
  235. package/menu/internal/submenu/sub-menu.js.map +1 -1
  236. package/menu/internal/types.js.map +1 -1
  237. package/menu/menu-item.js +1 -2
  238. package/menu/menu-item.js.map +1 -1
  239. package/menu/menu.js +1 -2
  240. package/menu/menu.js.map +1 -1
  241. package/package.json +1 -1
  242. package/progress/internal/_circular-progress.scss +2 -2
  243. package/progress/internal/_linear-progress.scss +1 -1
  244. package/progress/internal/circular-progress-styles.css.js +1 -1
  245. package/progress/internal/circular-progress-styles.css.js.map +1 -1
  246. package/progress/internal/circular-progress.js +11 -10
  247. package/progress/internal/circular-progress.js.map +1 -1
  248. package/progress/internal/linear-progress-styles.css.js +1 -1
  249. package/progress/internal/linear-progress-styles.css.js.map +1 -1
  250. package/progress/internal/linear-progress.d.ts +1 -1
  251. package/progress/internal/linear-progress.js +3 -3
  252. package/progress/internal/linear-progress.js.map +1 -1
  253. package/progress/internal/progress.js +4 -2
  254. package/progress/internal/progress.js.map +1 -1
  255. package/radio/internal/_radio.scss +144 -123
  256. package/radio/internal/radio-styles.css.js +1 -1
  257. package/radio/internal/radio-styles.css.js.map +1 -1
  258. package/radio/internal/radio.d.ts +12 -23
  259. package/radio/internal/radio.js +31 -50
  260. package/radio/internal/radio.js.map +1 -1
  261. package/radio/internal/single-selection-controller.js +1 -1
  262. package/radio/internal/single-selection-controller.js.map +1 -1
  263. package/radio/radio.js +1 -2
  264. package/radio/radio.js.map +1 -1
  265. package/ripple/internal/ripple.js +21 -18
  266. package/ripple/internal/ripple.js.map +1 -1
  267. package/select/filled-select.js +1 -2
  268. package/select/filled-select.js.map +1 -1
  269. package/select/harness.js +1 -1
  270. package/select/harness.js.map +1 -1
  271. package/select/internal/_shared.scss +4 -0
  272. package/select/internal/select.d.ts +25 -34
  273. package/select/internal/select.js +101 -91
  274. package/select/internal/select.js.map +1 -1
  275. package/select/internal/selectoption/select-option.d.ts +8 -6
  276. package/select/internal/selectoption/select-option.js +25 -23
  277. package/select/internal/selectoption/select-option.js.map +1 -1
  278. package/select/internal/selectoption/selectOptionController.js +1 -1
  279. package/select/internal/selectoption/selectOptionController.js.map +1 -1
  280. package/select/internal/shared-styles.css.js +1 -1
  281. package/select/internal/shared-styles.css.js.map +1 -1
  282. package/select/outlined-select.js +1 -2
  283. package/select/outlined-select.js.map +1 -1
  284. package/select/select-option.js +1 -2
  285. package/select/select-option.js.map +1 -1
  286. package/slider/harness.js +5 -5
  287. package/slider/harness.js.map +1 -1
  288. package/slider/internal/_slider.scss +68 -30
  289. package/slider/internal/slider-styles.css.js +1 -1
  290. package/slider/internal/slider-styles.css.js.map +1 -1
  291. package/slider/internal/slider.d.ts +16 -25
  292. package/slider/internal/slider.js +111 -115
  293. package/slider/internal/slider.js.map +1 -1
  294. package/switch/internal/_handle.scss +159 -141
  295. package/switch/internal/_icon.scss +95 -72
  296. package/switch/internal/_switch.scss +90 -95
  297. package/switch/internal/_track.scss +110 -77
  298. package/switch/internal/switch-styles.css.js +1 -1
  299. package/switch/internal/switch-styles.css.js.map +1 -1
  300. package/switch/internal/switch.d.ts +9 -25
  301. package/switch/internal/switch.js +31 -57
  302. package/switch/internal/switch.js.map +1 -1
  303. package/switch/switch.js +1 -2
  304. package/switch/switch.js.map +1 -1
  305. package/tabs/harness.js +3 -3
  306. package/tabs/harness.js.map +1 -1
  307. package/tabs/internal/_tab.scss +27 -35
  308. package/tabs/internal/primary-tab.d.ts +0 -2
  309. package/tabs/internal/tab-styles.css.js +1 -1
  310. package/tabs/internal/tab-styles.css.js.map +1 -1
  311. package/tabs/internal/tab.d.ts +10 -5
  312. package/tabs/internal/tab.js +43 -22
  313. package/tabs/internal/tab.js.map +1 -1
  314. package/tabs/internal/tabs.d.ts +7 -4
  315. package/tabs/internal/tabs.js +23 -22
  316. package/tabs/internal/tabs.js.map +1 -1
  317. package/textfield/filled-text-field.js +1 -2
  318. package/textfield/filled-text-field.js.map +1 -1
  319. package/textfield/harness.js +3 -2
  320. package/textfield/harness.js.map +1 -1
  321. package/textfield/internal/text-field.d.ts +33 -18
  322. package/textfield/internal/text-field.js +96 -58
  323. package/textfield/internal/text-field.js.map +1 -1
  324. package/textfield/outlined-text-field.js +1 -2
  325. package/textfield/outlined-text-field.js.map +1 -1
  326. package/tokens/_index.scss +3 -0
  327. package/tokens/_md-comp-elevated-card.scss +63 -0
  328. package/tokens/_md-comp-filled-card.scss +63 -0
  329. package/tokens/_md-comp-icon.scss +2 -0
  330. package/tokens/_md-comp-outlined-card.scss +69 -0
  331. package/tokens/_md-comp-test-table.scss +1 -0
  332. package/internal/controller/element-internals.d.ts +0 -35
  333. package/internal/controller/element-internals.js +0 -24
  334. package/internal/controller/element-internals.js.map +0 -1
  335. package/list/internal/listitem/forced-colors-styles.css.js +0 -9
  336. package/list/internal/listitem/forced-colors-styles.css.js.map +0 -1
  337. package/list/internal/listitem/forced-colors-styles.scss +0 -19
  338. package/menu/internal/forced-colors-styles.css.js +0 -9
  339. package/menu/internal/forced-colors-styles.css.js.map +0 -1
  340. package/menu/internal/forced-colors-styles.scss +0 -12
  341. package/menu/internal/menuitem/forced-colors-styles.css.js +0 -9
  342. package/menu/internal/menuitem/forced-colors-styles.css.js.map +0 -1
  343. package/menu/internal/menuitem/forced-colors-styles.scss +0 -26
  344. package/radio/internal/forced-colors-styles.css.js +0 -9
  345. package/radio/internal/forced-colors-styles.css.js.map +0 -1
  346. package/radio/internal/forced-colors-styles.scss +0 -29
  347. package/select/internal/filled-forced-colors-styles.css.d.ts +0 -1
  348. package/select/internal/filled-forced-colors-styles.css.js +0 -9
  349. package/select/internal/filled-forced-colors-styles.css.js.map +0 -1
  350. package/select/internal/filled-forced-colors-styles.scss +0 -29
  351. package/select/internal/outlined-forced-colors-styles.css.d.ts +0 -1
  352. package/select/internal/outlined-forced-colors-styles.css.js +0 -9
  353. package/select/internal/outlined-forced-colors-styles.css.js.map +0 -1
  354. package/select/internal/outlined-forced-colors-styles.scss +0 -29
  355. package/switch/internal/forced-colors-styles.css.d.ts +0 -1
  356. package/switch/internal/forced-colors-styles.css.js +0 -9
  357. package/switch/internal/forced-colors-styles.css.js.map +0 -1
  358. package/switch/internal/forced-colors-styles.scss +0 -42
  359. package/textfield/internal/filled-forced-colors-styles.css.d.ts +0 -1
  360. package/textfield/internal/filled-forced-colors-styles.css.js +0 -9
  361. package/textfield/internal/filled-forced-colors-styles.css.js.map +0 -1
  362. package/textfield/internal/filled-forced-colors-styles.scss +0 -29
  363. package/textfield/internal/outlined-forced-colors-styles.css.d.ts +0 -1
  364. package/textfield/internal/outlined-forced-colors-styles.css.js +0 -9
  365. package/textfield/internal/outlined-forced-colors-styles.css.js.map +0 -1
  366. package/textfield/internal/outlined-forced-colors-styles.scss +0 -29
  367. /package/{list/internal/listitem/forced-colors-styles.css.d.ts → labs/card/internal/elevated-styles.css.d.ts} +0 -0
  368. /package/{menu/internal/forced-colors-styles.css.d.ts → labs/card/internal/filled-styles.css.d.ts} +0 -0
  369. /package/{menu/internal/menuitem/forced-colors-styles.css.d.ts → labs/card/internal/outlined-styles.css.d.ts} +0 -0
  370. /package/{radio/internal/forced-colors-styles.css.d.ts → labs/card/internal/shared-styles.css.d.ts} +0 -0
package/all.d.ts CHANGED
@@ -16,6 +16,7 @@ import './button/outlined-button.js';
16
16
  import './button/text-button.js';
17
17
  import './checkbox/checkbox.js';
18
18
  import './chips/assist-chip.js';
19
+ import './chips/chip-set.js';
19
20
  import './chips/filter-chip.js';
20
21
  import './chips/input-chip.js';
21
22
  import './chips/suggestion-chip.js';
@@ -58,6 +59,7 @@ export * from './button/outlined-button.js';
58
59
  export * from './button/text-button.js';
59
60
  export * from './checkbox/checkbox.js';
60
61
  export * from './chips/assist-chip.js';
62
+ export * from './chips/chip-set.js';
61
63
  export * from './chips/filter-chip.js';
62
64
  export * from './chips/input-chip.js';
63
65
  export * from './chips/suggestion-chip.js';
package/all.js CHANGED
@@ -18,6 +18,7 @@ import './button/outlined-button.js';
18
18
  import './button/text-button.js';
19
19
  import './checkbox/checkbox.js';
20
20
  import './chips/assist-chip.js';
21
+ import './chips/chip-set.js';
21
22
  import './chips/filter-chip.js';
22
23
  import './chips/input-chip.js';
23
24
  import './chips/suggestion-chip.js';
@@ -64,6 +65,7 @@ export * from './button/outlined-button.js';
64
65
  export * from './button/text-button.js';
65
66
  export * from './checkbox/checkbox.js';
66
67
  export * from './chips/assist-chip.js';
68
+ export * from './chips/chip-set.js';
67
69
  export * from './chips/filter-chip.js';
68
70
  export * from './chips/input-chip.js';
69
71
  export * from './chips/suggestion-chip.js';
package/all.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"all.js","sourceRoot":"","sources":["all.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * @license\n * Copyright 2023 Google LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n\n/**\n * @fileoverview A convenience bundle import that includes all components.\n *\n * WARNING: This import is intended for prototyping and development builds only.\n * Import only the individual components used for production.\n */\n\n// LINT.IfChange(imports)\n// go/keep-sorted start\nimport './button/elevated-button.js';\nimport './button/filled-button.js';\nimport './button/filled-tonal-button.js';\nimport './button/outlined-button.js';\nimport './button/text-button.js';\nimport './checkbox/checkbox.js';\nimport './chips/assist-chip.js';\nimport './chips/filter-chip.js';\nimport './chips/input-chip.js';\nimport './chips/suggestion-chip.js';\nimport './dialog/dialog.js';\nimport './divider/divider.js';\nimport './elevation/elevation.js';\nimport './fab/branded-fab.js';\nimport './fab/fab.js';\nimport './field/filled-field.js';\nimport './field/outlined-field.js';\nimport './focus/md-focus-ring.js';\nimport './icon/icon.js';\nimport './iconbutton/filled-icon-button.js';\nimport './iconbutton/filled-tonal-icon-button.js';\nimport './iconbutton/icon-button.js';\nimport './iconbutton/outlined-icon-button.js';\nimport './list/list.js';\nimport './list/list-item.js';\nimport './menu/menu.js';\nimport './menu/menu-item.js';\nimport './menu/sub-menu.js';\nimport './progress/circular-progress.js';\nimport './progress/linear-progress.js';\nimport './radio/radio.js';\nimport './ripple/ripple.js';\nimport './select/filled-select.js';\nimport './select/outlined-select.js';\nimport './select/select-option.js';\nimport './slider/slider.js';\nimport './switch/switch.js';\nimport './tabs/primary-tab.js';\nimport './tabs/secondary-tab.js';\nimport './tabs/tabs.js';\nimport './textfield/filled-text-field.js';\nimport './textfield/outlined-text-field.js';\n// go/keep-sorted end\n// LINT.ThenChange(:exports)\n\n// LINT.IfChange(exports)\n// go/keep-sorted start\nexport * from './button/elevated-button.js';\nexport * from './button/filled-button.js';\nexport * from './button/filled-tonal-button.js';\nexport * from './button/outlined-button.js';\nexport * from './button/text-button.js';\nexport * from './checkbox/checkbox.js';\nexport * from './chips/assist-chip.js';\nexport * from './chips/filter-chip.js';\nexport * from './chips/input-chip.js';\nexport * from './chips/suggestion-chip.js';\nexport * from './dialog/dialog.js';\nexport * from './divider/divider.js';\nexport * from './elevation/elevation.js';\nexport * from './fab/branded-fab.js';\nexport * from './fab/fab.js';\nexport * from './field/filled-field.js';\nexport * from './field/outlined-field.js';\nexport * from './focus/md-focus-ring.js';\nexport * from './icon/icon.js';\nexport * from './iconbutton/filled-icon-button.js';\nexport * from './iconbutton/filled-tonal-icon-button.js';\nexport * from './iconbutton/icon-button.js';\nexport * from './iconbutton/outlined-icon-button.js';\nexport * from './list/list.js';\nexport * from './list/list-item.js';\nexport * from './menu/menu.js';\nexport * from './menu/menu-item.js';\nexport * from './menu/sub-menu.js';\nexport * from './progress/circular-progress.js';\nexport * from './progress/linear-progress.js';\nexport * from './radio/radio.js';\nexport * from './ripple/ripple.js';\nexport * from './select/filled-select.js';\nexport * from './select/outlined-select.js';\nexport * from './select/select-option.js';\nexport * from './slider/slider.js';\nexport * from './switch/switch.js';\nexport * from './tabs/primary-tab.js';\nexport * from './tabs/secondary-tab.js';\nexport * from './tabs/tabs.js';\nexport * from './textfield/filled-text-field.js';\nexport * from './textfield/outlined-text-field.js';\n// go/keep-sorted end\n// LINT.ThenChange(:imports)\n"]}
1
+ {"version":3,"file":"all.js","sourceRoot":"","sources":["all.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * @license\n * Copyright 2023 Google LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n\n/**\n * @fileoverview A convenience bundle import that includes all components.\n *\n * WARNING: This import is intended for prototyping and development builds only.\n * Import only the individual components used for production.\n */\n\n// LINT.IfChange(imports)\n// go/keep-sorted start\nimport './button/elevated-button.js';\nimport './button/filled-button.js';\nimport './button/filled-tonal-button.js';\nimport './button/outlined-button.js';\nimport './button/text-button.js';\nimport './checkbox/checkbox.js';\nimport './chips/assist-chip.js';\nimport './chips/chip-set.js';\nimport './chips/filter-chip.js';\nimport './chips/input-chip.js';\nimport './chips/suggestion-chip.js';\nimport './dialog/dialog.js';\nimport './divider/divider.js';\nimport './elevation/elevation.js';\nimport './fab/branded-fab.js';\nimport './fab/fab.js';\nimport './field/filled-field.js';\nimport './field/outlined-field.js';\nimport './focus/md-focus-ring.js';\nimport './icon/icon.js';\nimport './iconbutton/filled-icon-button.js';\nimport './iconbutton/filled-tonal-icon-button.js';\nimport './iconbutton/icon-button.js';\nimport './iconbutton/outlined-icon-button.js';\nimport './list/list.js';\nimport './list/list-item.js';\nimport './menu/menu.js';\nimport './menu/menu-item.js';\nimport './menu/sub-menu.js';\nimport './progress/circular-progress.js';\nimport './progress/linear-progress.js';\nimport './radio/radio.js';\nimport './ripple/ripple.js';\nimport './select/filled-select.js';\nimport './select/outlined-select.js';\nimport './select/select-option.js';\nimport './slider/slider.js';\nimport './switch/switch.js';\nimport './tabs/primary-tab.js';\nimport './tabs/secondary-tab.js';\nimport './tabs/tabs.js';\nimport './textfield/filled-text-field.js';\nimport './textfield/outlined-text-field.js';\n// go/keep-sorted end\n// LINT.ThenChange(:exports)\n\n// LINT.IfChange(exports)\n// go/keep-sorted start\nexport * from './button/elevated-button.js';\nexport * from './button/filled-button.js';\nexport * from './button/filled-tonal-button.js';\nexport * from './button/outlined-button.js';\nexport * from './button/text-button.js';\nexport * from './checkbox/checkbox.js';\nexport * from './chips/assist-chip.js';\nexport * from './chips/chip-set.js';\nexport * from './chips/filter-chip.js';\nexport * from './chips/input-chip.js';\nexport * from './chips/suggestion-chip.js';\nexport * from './dialog/dialog.js';\nexport * from './divider/divider.js';\nexport * from './elevation/elevation.js';\nexport * from './fab/branded-fab.js';\nexport * from './fab/fab.js';\nexport * from './field/filled-field.js';\nexport * from './field/outlined-field.js';\nexport * from './focus/md-focus-ring.js';\nexport * from './icon/icon.js';\nexport * from './iconbutton/filled-icon-button.js';\nexport * from './iconbutton/filled-tonal-icon-button.js';\nexport * from './iconbutton/icon-button.js';\nexport * from './iconbutton/outlined-icon-button.js';\nexport * from './list/list.js';\nexport * from './list/list-item.js';\nexport * from './menu/menu.js';\nexport * from './menu/menu-item.js';\nexport * from './menu/sub-menu.js';\nexport * from './progress/circular-progress.js';\nexport * from './progress/linear-progress.js';\nexport * from './radio/radio.js';\nexport * from './ripple/ripple.js';\nexport * from './select/filled-select.js';\nexport * from './select/outlined-select.js';\nexport * from './select/select-option.js';\nexport * from './slider/slider.js';\nexport * from './switch/switch.js';\nexport * from './tabs/primary-tab.js';\nexport * from './tabs/secondary-tab.js';\nexport * from './tabs/tabs.js';\nexport * from './textfield/filled-text-field.js';\nexport * from './textfield/outlined-text-field.js';\n// go/keep-sorted end\n// LINT.ThenChange(:imports)\n"]}
@@ -33,7 +33,11 @@ import { styles as sharedStyles } from './internal/shared-styles.css.js';
33
33
  */
34
34
  export let MdElevatedButton = class MdElevatedButton extends ElevatedButton {
35
35
  };
36
- MdElevatedButton.styles = [sharedStyles, sharedElevationStyles, elevatedStyles];
36
+ MdElevatedButton.styles = [
37
+ sharedStyles,
38
+ sharedElevationStyles,
39
+ elevatedStyles,
40
+ ];
37
41
  MdElevatedButton = __decorate([
38
42
  customElement('md-elevated-button')
39
43
  ], MdElevatedButton);
@@ -1 +1 @@
1
- {"version":3,"file":"elevated-button.js","sourceRoot":"","sources":["elevated-button.ts"],"names":[],"mappings":"AAAA;;;;GAIG;;AAEH,OAAO,EAAC,aAAa,EAAC,MAAM,mBAAmB,CAAC;AAEhD,OAAO,EAAC,cAAc,EAAC,MAAM,+BAA+B,CAAC;AAC7D,OAAO,EAAC,MAAM,IAAI,cAAc,EAAC,MAAM,mCAAmC,CAAC;AAC3E,OAAO,EAAC,MAAM,IAAI,qBAAqB,EAAC,MAAM,2CAA2C,CAAC;AAC1F,OAAO,EAAC,MAAM,IAAI,YAAY,EAAC,MAAM,iCAAiC,CAAC;AAQvE;;;;;;;;;;;;;;;;;;;;;GAqBG;AAEI,WAAM,gBAAgB,GAAtB,MAAM,gBAAiB,SAAQ,cAAc;;AAClC,uBAAM,GAClB,CAAC,YAAY,EAAE,qBAAqB,EAAE,cAAc,CAAC,AADnC,CACoC;AAF/C,gBAAgB;IAD5B,aAAa,CAAC,oBAAoB,CAAC;GACvB,gBAAgB,CAG5B","sourcesContent":["/**\n * @license\n * Copyright 2021 Google LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport {customElement} from 'lit/decorators.js';\n\nimport {ElevatedButton} from './internal/elevated-button.js';\nimport {styles as elevatedStyles} from './internal/elevated-styles.css.js';\nimport {styles as sharedElevationStyles} from './internal/shared-elevation-styles.css.js';\nimport {styles as sharedStyles} from './internal/shared-styles.css.js';\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'md-elevated-button': MdElevatedButton;\n }\n}\n\n/**\n * @summary Buttons help people take action, such as sending an email, sharing a\n * document, or liking a comment.\n *\n * @description\n * __Emphasis:__ Medium emphasis – For important actions that don’t distract\n * from other onscreen elements.\n *\n * __Rationale:__ Elevated buttons are essentially filled buttons with a lighter\n * background color and a shadow. To prevent shadow creep, only use them when\n * absolutely necessary, such as when the button requires visual separation from\n * a patterned background.\n *\n * __Example usages:__\n * - Reply\n * - View all\n * - Add to cart\n * - Take out of trash\n *\n * @final\n * @suppress {visibility}\n */\n@customElement('md-elevated-button')\nexport class MdElevatedButton extends ElevatedButton {\n static override styles =\n [sharedStyles, sharedElevationStyles, elevatedStyles];\n}\n"]}
1
+ {"version":3,"file":"elevated-button.js","sourceRoot":"","sources":["elevated-button.ts"],"names":[],"mappings":"AAAA;;;;GAIG;;AAEH,OAAO,EAAC,aAAa,EAAC,MAAM,mBAAmB,CAAC;AAEhD,OAAO,EAAC,cAAc,EAAC,MAAM,+BAA+B,CAAC;AAC7D,OAAO,EAAC,MAAM,IAAI,cAAc,EAAC,MAAM,mCAAmC,CAAC;AAC3E,OAAO,EAAC,MAAM,IAAI,qBAAqB,EAAC,MAAM,2CAA2C,CAAC;AAC1F,OAAO,EAAC,MAAM,IAAI,YAAY,EAAC,MAAM,iCAAiC,CAAC;AAQvE;;;;;;;;;;;;;;;;;;;;;GAqBG;AAEI,WAAM,gBAAgB,GAAtB,MAAM,gBAAiB,SAAQ,cAAc;;AAClC,uBAAM,GAAG;IACvB,YAAY;IACZ,qBAAqB;IACrB,cAAc;CACf,AAJqB,CAIpB;AALS,gBAAgB;IAD5B,aAAa,CAAC,oBAAoB,CAAC;GACvB,gBAAgB,CAM5B","sourcesContent":["/**\n * @license\n * Copyright 2021 Google LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport {customElement} from 'lit/decorators.js';\n\nimport {ElevatedButton} from './internal/elevated-button.js';\nimport {styles as elevatedStyles} from './internal/elevated-styles.css.js';\nimport {styles as sharedElevationStyles} from './internal/shared-elevation-styles.css.js';\nimport {styles as sharedStyles} from './internal/shared-styles.css.js';\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'md-elevated-button': MdElevatedButton;\n }\n}\n\n/**\n * @summary Buttons help people take action, such as sending an email, sharing a\n * document, or liking a comment.\n *\n * @description\n * __Emphasis:__ Medium emphasis – For important actions that don’t distract\n * from other onscreen elements.\n *\n * __Rationale:__ Elevated buttons are essentially filled buttons with a lighter\n * background color and a shadow. To prevent shadow creep, only use them when\n * absolutely necessary, such as when the button requires visual separation from\n * a patterned background.\n *\n * __Example usages:__\n * - Reply\n * - View all\n * - Add to cart\n * - Take out of trash\n *\n * @final\n * @suppress {visibility}\n */\n@customElement('md-elevated-button')\nexport class MdElevatedButton extends ElevatedButton {\n static override styles = [\n sharedStyles,\n sharedElevationStyles,\n elevatedStyles,\n ];\n}\n"]}
@@ -20,50 +20,50 @@ $_md-sys-motion: tokens.md-sys-motion-values();
20
20
  transition-timing-function: map.get($_md-sys-motion, 'emphasized-easing');
21
21
  }
22
22
 
23
- .button:disabled md-elevation {
23
+ :host([disabled]) md-elevation {
24
24
  transition: none;
25
25
  }
26
26
 
27
- .button {
27
+ md-elevation {
28
28
  @include elevation.theme(
29
29
  (
30
30
  'level': var(--_container-elevation),
31
31
  'shadow-color': var(--_container-shadow-color),
32
32
  )
33
33
  );
34
+ }
34
35
 
35
- // apply elevation in order of focused, hovered, pressed, disabled
36
- // this ensures a button will have hover elevation after being focused
37
- &:focus {
38
- @include elevation.theme(
39
- (
40
- 'level': var(--_focus-container-elevation),
41
- )
42
- );
43
- }
36
+ // apply elevation in order of focused, hovered, pressed, disabled
37
+ // this ensures a button will have hover elevation after being focused
38
+ :host(:focus-within) md-elevation {
39
+ @include elevation.theme(
40
+ (
41
+ 'level': var(--_focus-container-elevation),
42
+ )
43
+ );
44
+ }
44
45
 
45
- &:hover {
46
- @include elevation.theme(
47
- (
48
- 'level': var(--_hover-container-elevation),
49
- )
50
- );
51
- }
46
+ :host(:hover) md-elevation {
47
+ @include elevation.theme(
48
+ (
49
+ 'level': var(--_hover-container-elevation),
50
+ )
51
+ );
52
+ }
52
53
 
53
- &:active {
54
- @include elevation.theme(
55
- (
56
- 'level': var(--_pressed-container-elevation),
57
- )
58
- );
59
- }
54
+ :host(:active) md-elevation {
55
+ @include elevation.theme(
56
+ (
57
+ 'level': var(--_pressed-container-elevation),
58
+ )
59
+ );
60
+ }
60
61
 
61
- &:disabled {
62
- @include elevation.theme(
63
- (
64
- 'level': var(--_disabled-container-elevation),
65
- )
66
- );
67
- }
62
+ :host([disabled]) md-elevation {
63
+ @include elevation.theme(
64
+ (
65
+ 'level': var(--_disabled-container-elevation),
66
+ )
67
+ );
68
68
  }
69
69
  }
@@ -8,32 +8,31 @@
8
8
  // class, which is loaded separately so the order of CSS definitions is not
9
9
  // guaranteed. Therefore, increase specifity to ensure overrides apply.
10
10
  ::slotted([slot='icon']) {
11
- .button & {
12
- display: inline-flex;
13
- position: relative;
14
- writing-mode: horizontal-tb;
15
- fill: currentColor;
16
- color: var(--_icon-color);
17
- font-size: var(--_icon-size);
18
- inline-size: var(--_icon-size);
19
- block-size: var(--_icon-size);
20
- }
11
+ display: inline-flex;
12
+ position: relative;
13
+ writing-mode: horizontal-tb;
14
+ fill: currentColor;
15
+ flex-shrink: 0;
16
+ color: var(--_icon-color);
17
+ font-size: var(--_icon-size);
18
+ inline-size: var(--_icon-size);
19
+ block-size: var(--_icon-size);
20
+ }
21
21
 
22
- .button:hover & {
23
- color: var(--_hover-icon-color);
24
- }
22
+ :host(:hover) ::slotted([slot='icon']) {
23
+ color: var(--_hover-icon-color);
24
+ }
25
25
 
26
- .button:focus & {
27
- color: var(--_focus-icon-color);
28
- }
26
+ :host(:focus-within) ::slotted([slot='icon']) {
27
+ color: var(--_focus-icon-color);
28
+ }
29
29
 
30
- .button:active & {
31
- color: var(--_pressed-icon-color);
32
- }
30
+ :host(:active) ::slotted([slot='icon']) {
31
+ color: var(--_pressed-icon-color);
32
+ }
33
33
 
34
- .button:disabled & {
35
- color: var(--_disabled-icon-color);
36
- opacity: var(--_disabled-icon-opacity);
37
- }
34
+ :host([disabled]) ::slotted([slot='icon']) {
35
+ color: var(--_disabled-icon-color);
36
+ opacity: var(--_disabled-icon-opacity);
38
37
  }
39
38
  }
@@ -64,7 +64,7 @@
64
64
  );
65
65
  }
66
66
 
67
- .button__outline {
67
+ .outline {
68
68
  inset: 0;
69
69
  border-style: solid;
70
70
  position: absolute;
@@ -74,37 +74,39 @@
74
74
  border-start-end-radius: var(--_container-shape-start-end);
75
75
  border-end-start-radius: var(--_container-shape-end-start);
76
76
  border-end-end-radius: var(--_container-shape-end-end);
77
+ }
77
78
 
78
- .button:active & {
79
- border-color: var(--_pressed-outline-color);
80
- }
79
+ :host(:active) .outline {
80
+ border-color: var(--_pressed-outline-color);
81
+ }
81
82
 
82
- .button:disabled & {
83
- border-color: var(--_disabled-outline-color);
84
- opacity: var(--_disabled-outline-opacity);
83
+ :host([disabled]) .outline {
84
+ border-color: var(--_disabled-outline-color);
85
+ opacity: var(--_disabled-outline-opacity);
86
+ }
87
+
88
+ @media (forced-colors: active) {
89
+ :host([disabled]) .background {
90
+ // Only outlined buttons change their border when disabled to distinguish
91
+ // them from other buttons that add a border for increased visibility in
92
+ // HCM.
93
+ border-color: GrayText;
85
94
  }
86
95
 
87
- @media (forced-colors: active) {
88
- .button:disabled & {
89
- opacity: 1;
90
- }
96
+ :host([disabled]) .outline {
97
+ opacity: 1;
91
98
  }
92
99
  }
93
100
 
94
- .button__outline,
95
- .button__ripple {
101
+ .outline,
102
+ md-ripple {
96
103
  border-width: var(--_outline-width);
97
104
  }
98
105
 
99
- .button__ripple {
106
+ md-ripple {
100
107
  inline-size: calc(100% - 2 * var(--_outline-width));
101
108
  block-size: calc(100% - 2 * var(--_outline-width));
102
109
  border-style: solid;
103
110
  border-color: transparent;
104
111
  }
105
112
  }
106
-
107
- @function _resolve-tokens($tokens) {
108
- $tokens: shared.remove-unsupported-tokens($tokens);
109
- @return $tokens;
110
- }
@@ -13,13 +13,37 @@
13
13
 
14
14
  @mixin styles() {
15
15
  :host {
16
+ border-start-start-radius: var(--_container-shape-start-start);
17
+ border-start-end-radius: var(--_container-shape-start-end);
18
+ border-end-start-radius: var(--_container-shape-end-start);
19
+ border-end-end-radius: var(--_container-shape-end-end);
20
+ box-sizing: border-box;
21
+ cursor: pointer;
16
22
  display: inline-flex;
17
- height: var(--_container-height);
23
+ gap: 8px;
24
+ // min-height instead of height so that label can wrap and expand height
25
+ min-height: var(--_container-height);
18
26
  outline: none;
27
+ // Add extra space between label and the edge for if the label text wraps.
28
+ // The padding added should be relative to the height of the container and
29
+ // the height of its content on a single line (label or icon, whichever is
30
+ // bigger).
31
+ $single-line-height: max(var(--_label-text-line-height), var(--_icon-size));
32
+ padding-block: calc((var(--_container-height) - $single-line-height) / 2);
33
+ padding-inline-start: var(--_leading-space);
34
+ padding-inline-end: var(--_trailing-space);
35
+ place-content: center;
36
+ place-items: center;
37
+ position: relative;
19
38
  font-family: var(--_label-text-font);
20
39
  font-size: var(--_label-text-size);
21
40
  line-height: var(--_label-text-line-height);
22
41
  font-weight: var(--_label-text-weight);
42
+ // Long labels are cut off with ellipsis by default. `text-overflow` and
43
+ // `text-wrap` can customize this.
44
+ text-overflow: ellipsis;
45
+ text-wrap: nowrap;
46
+ user-select: none;
23
47
  -webkit-tap-highlight-color: transparent;
24
48
  // Override vertical-align with shortest value "top". Vertical-align's
25
49
  // default "baseline" value causes buttons to be misaligned next to each
@@ -36,10 +60,6 @@
36
60
  );
37
61
  }
38
62
 
39
- :host([touch-target='wrapper']) {
40
- margin: max(0px, (48px - var(--_container-height)) / 2) 0;
41
- }
42
-
43
63
  md-focus-ring {
44
64
  @include focus-ring.theme(
45
65
  (
@@ -57,113 +77,100 @@
57
77
  }
58
78
 
59
79
  .button {
80
+ border-radius: inherit;
81
+ cursor: inherit;
60
82
  display: inline-flex;
61
83
  align-items: center;
62
84
  justify-content: center;
63
- box-sizing: border-box;
64
- min-inline-size: 64px;
65
85
  border: none;
66
86
  outline: none;
67
- user-select: none;
68
87
  -webkit-appearance: none;
69
88
  vertical-align: middle;
70
89
  background: transparent;
71
90
  text-decoration: none;
72
- inline-size: 100%;
73
- position: relative;
91
+ // Buttons have a default min-width of 64px. This can be overridden by
92
+ // setting a smaller min-width on the host. The 64px button will be centered
93
+ // within the bounds of the smaller host element.
94
+ min-width: calc(64px - var(--_leading-space) - var(--_trailing-space));
95
+ width: 100%;
74
96
  z-index: 0; // Place content on top of elevation and ripple
75
97
  height: 100%;
76
98
  font: inherit;
77
99
  color: var(--_label-text-color);
78
- // TODO(b/181413732): Verify token below are named correctly
79
- padding-inline-start: var(--_leading-space);
80
- padding-inline-end: var(--_trailing-space);
81
- gap: 8px;
82
-
83
- &::before {
84
- // Background color. Separate node for disabled opacity styles.
85
- background-color: var(--_container-color);
86
- border-radius: inherit;
87
- content: '';
88
- inset: 0;
89
- position: absolute;
90
- }
100
+ padding: 0;
101
+ gap: inherit;
91
102
 
92
103
  &::-moz-focus-inner {
93
104
  padding: 0;
94
105
  border: 0;
95
106
  }
107
+ }
96
108
 
97
- &:hover {
98
- color: var(--_hover-label-text-color);
99
- cursor: pointer;
100
- }
109
+ :host(:hover) .button {
110
+ color: var(--_hover-label-text-color);
111
+ }
101
112
 
102
- &:focus {
103
- color: var(--_focus-label-text-color);
104
- }
113
+ :host(:focus-within) .button {
114
+ color: var(--_focus-label-text-color);
115
+ }
105
116
 
106
- &:active {
107
- color: var(--_pressed-label-text-color);
108
- outline: none;
109
- }
117
+ :host(:active) .button {
118
+ color: var(--_pressed-label-text-color);
119
+ }
110
120
 
111
- &:disabled .button__label {
112
- color: var(--_disabled-label-text-color);
113
- opacity: var(--_disabled-label-text-opacity);
114
- }
121
+ .background {
122
+ // Background color. Separate node for disabled opacity styles.
123
+ background-color: var(--_container-color);
124
+ border-radius: inherit;
125
+ inset: 0;
126
+ position: absolute;
127
+ }
115
128
 
116
- &:disabled::before {
117
- background-color: var(--_disabled-container-color);
118
- opacity: var(--_disabled-container-opacity);
119
- }
129
+ .label {
130
+ overflow: hidden;
131
+ }
120
132
 
121
- @media (forced-colors: active) {
122
- &::before {
123
- content: '';
124
- box-sizing: border-box;
125
- border: 1px solid CanvasText;
126
- border-radius: inherit;
127
- inset: 0;
128
- pointer-events: none;
129
- position: absolute;
130
- }
131
-
132
- &:disabled {
133
- --_disabled-icon-opacity: 1;
134
- --_disabled-container-opacity: 1;
135
- --_disabled-label-text-opacity: 1;
136
- }
137
- }
133
+ // Inherit text-overflow down through label and slotted content so that it
134
+ // can be customized on the host.
135
+ :is(.button, .label, .label slot),
136
+ .label ::slotted(*) {
137
+ text-overflow: inherit;
138
138
  }
139
139
 
140
- .button,
141
- .button__ripple {
142
- border-start-start-radius: var(--_container-shape-start-start);
143
- border-start-end-radius: var(--_container-shape-start-end);
144
- border-end-start-radius: var(--_container-shape-end-start);
145
- border-end-end-radius: var(--_container-shape-end-end);
140
+ :host([disabled]) .label {
141
+ color: var(--_disabled-label-text-color);
142
+ opacity: var(--_disabled-label-text-opacity);
143
+ }
144
+
145
+ :host([disabled]) .background {
146
+ background-color: var(--_disabled-container-color);
147
+ opacity: var(--_disabled-container-opacity);
146
148
  }
147
149
 
148
- .button::after,
149
- .button::before,
150
- md-elevation,
151
- .button__ripple {
152
- z-index: -1; // Place behind content
150
+ @media (forced-colors: active) {
151
+ .background {
152
+ // Use CanvasText to increase visibility of buttons when the background
153
+ // is not rendered. Buttons that use outlines by default should change The
154
+ // outline color to GrayText when disabled.
155
+ border: 1px solid CanvasText;
156
+ }
157
+
158
+ :host([disabled]) {
159
+ --_disabled-icon-color: GrayText;
160
+ --_disabled-icon-opacity: 1;
161
+ --_disabled-container-opacity: 1;
162
+ --_disabled-label-text-color: GrayText;
163
+ --_disabled-label-text-opacity: 1;
164
+ }
153
165
  }
154
166
 
155
- // TODO(b/181413732): Verify token below are named correctly
156
- .button--icon-leading {
167
+ :host([has-icon]:not([trailing-icon])) {
157
168
  padding-inline-start: var(--_with-leading-icon-leading-space);
158
169
  padding-inline-end: var(--_with-leading-icon-trailing-space);
159
170
  }
160
171
 
161
- .button--icon-trailing {
172
+ :host([has-icon][trailing-icon]) {
162
173
  padding-inline-start: var(--_with-trailing-icon-leading-space);
163
174
  padding-inline-end: var(--_with-trailing-icon-trailing-space);
164
175
  }
165
-
166
- .link-button-wrapper {
167
- inline-size: 100%;
168
- }
169
176
  }
@@ -13,6 +13,10 @@
13
13
  transform: translateY(-50%);
14
14
  }
15
15
 
16
+ :host([touch-target='wrapper']) {
17
+ margin: max(0px, (48px - var(--_container-height)) / 2) 0;
18
+ }
19
+
16
20
  :host([touch-target='none']) .touch {
17
21
  display: none;
18
22
  }
@@ -6,12 +6,12 @@
6
6
  import '../../focus/md-focus-ring.js';
7
7
  import '../../ripple/ripple.js';
8
8
  import { LitElement } from 'lit';
9
- import { internals } from '../../internal/controller/element-internals.js';
10
9
  import { FormSubmitter, FormSubmitterType } from '../../internal/controller/form-submitter.js';
10
+ declare const buttonBaseClass: import("../../labs/behaviors/mixin.js").MixinReturn<typeof LitElement, import("../../labs/behaviors/element-internals.js").WithElementInternals>;
11
11
  /**
12
12
  * A button component.
13
13
  */
14
- export declare abstract class Button extends LitElement implements FormSubmitter {
14
+ export declare abstract class Button extends buttonBaseClass implements FormSubmitter {
15
15
  /** @nocollapse */
16
16
  static readonly formAssociated = true;
17
17
  /** @nocollapse */
@@ -50,19 +50,15 @@ export declare abstract class Button extends LitElement implements FormSubmitter
50
50
  get form(): HTMLFormElement;
51
51
  private readonly buttonElement;
52
52
  private readonly assignedIcons;
53
- /** @private */
54
- [internals]: ElementInternals;
55
53
  constructor();
56
54
  focus(): void;
57
55
  blur(): void;
58
- protected render(): import("lit-html").TemplateResult;
59
- protected getRenderClasses(): {
60
- 'button--icon-leading': boolean;
61
- 'button--icon-trailing': boolean;
62
- };
63
- protected renderElevation?(): unknown;
64
- protected renderOutline?(): unknown;
56
+ protected render(): import("lit-html").TemplateResult<1>;
57
+ protected renderElevationOrOutline?(): unknown;
58
+ private renderButton;
59
+ private renderLink;
65
60
  private renderContent;
66
61
  private readonly handleActivationClick;
67
62
  private handleSlotChange;
68
63
  }
64
+ export {};