@material/web 1.0.0-pre.4 → 1.0.0-pre.6

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 (798) hide show
  1. package/README.md +5 -5
  2. package/badge/lib/_badge.scss +2 -10
  3. package/badge/lib/badge-styles.css.js +1 -1
  4. package/badge/lib/badge-styles.css.js.map +1 -1
  5. package/button/lib/_elevated-button.scss +5 -30
  6. package/button/lib/_elevation.scss +8 -29
  7. package/button/lib/_filled-button.scss +4 -31
  8. package/button/lib/_icon.scss +1 -0
  9. package/button/lib/_outlined-button.scss +6 -23
  10. package/button/lib/_shared.scss +23 -52
  11. package/button/lib/_text-button.scss +8 -34
  12. package/button/lib/_tonal-button.scss +5 -28
  13. package/button/lib/button.d.ts +16 -1
  14. package/button/lib/button.js +41 -15
  15. package/button/lib/button.js.map +1 -1
  16. package/button/lib/elevated-button.d.ts +3 -0
  17. package/button/lib/elevated-button.js +4 -2
  18. package/button/lib/elevated-button.js.map +1 -1
  19. package/button/lib/elevated-styles.css.js +1 -1
  20. package/button/lib/elevated-styles.css.js.map +1 -1
  21. package/button/lib/filled-button.d.ts +3 -1
  22. package/button/lib/filled-button.js +4 -3
  23. package/button/lib/filled-button.js.map +1 -1
  24. package/button/lib/filled-styles.css.js +1 -1
  25. package/button/lib/filled-styles.css.js.map +1 -1
  26. package/button/lib/outlined-button.d.ts +3 -0
  27. package/button/lib/outlined-button.js +3 -1
  28. package/button/lib/outlined-button.js.map +1 -1
  29. package/button/lib/outlined-styles.css.js +1 -1
  30. package/button/lib/outlined-styles.css.js.map +1 -1
  31. package/button/lib/shared-elevation-styles.css.js +1 -1
  32. package/button/lib/shared-elevation-styles.css.js.map +1 -1
  33. package/button/lib/shared-styles.css.js +1 -1
  34. package/button/lib/shared-styles.css.js.map +1 -1
  35. package/button/lib/text-button.d.ts +3 -0
  36. package/button/lib/text-button.js +3 -1
  37. package/button/lib/text-button.js.map +1 -1
  38. package/button/lib/text-styles.css.js +1 -1
  39. package/button/lib/text-styles.css.js.map +1 -1
  40. package/button/lib/tonal-button.d.ts +3 -1
  41. package/button/lib/tonal-button.js +4 -3
  42. package/button/lib/tonal-button.js.map +1 -1
  43. package/button/lib/tonal-styles.css.js +1 -1
  44. package/button/lib/tonal-styles.css.js.map +1 -1
  45. package/checkbox/lib/_checkbox.scss +1 -2
  46. package/checkbox/lib/checkbox-styles.css.js +1 -1
  47. package/checkbox/lib/checkbox-styles.css.js.map +1 -1
  48. package/chips/_assist-chip.scss +6 -0
  49. package/chips/_suggestion-chip.scss +6 -0
  50. package/chips/assist-chip.d.ts +20 -0
  51. package/chips/assist-chip.js +24 -0
  52. package/chips/assist-chip.js.map +1 -0
  53. package/chips/lib/_assist-chip.scss +27 -0
  54. package/chips/lib/_shared.scss +213 -0
  55. package/chips/lib/_suggestion-chip.scss +30 -0
  56. package/chips/lib/assist-chip.d.ts +11 -0
  57. package/chips/lib/assist-chip.js +12 -0
  58. package/chips/lib/assist-chip.js.map +1 -0
  59. package/chips/lib/assist-styles.css.js +9 -0
  60. package/chips/lib/assist-styles.css.js.map +1 -0
  61. package/{menusurface/lib/menu-surface-styles.scss → chips/lib/assist-styles.scss} +3 -3
  62. package/chips/lib/chip.d.ts +29 -0
  63. package/chips/lib/chip.js +110 -0
  64. package/chips/lib/chip.js.map +1 -0
  65. package/chips/lib/shared-styles.css.js +9 -0
  66. package/chips/lib/shared-styles.css.js.map +1 -0
  67. package/{autocomplete → chips}/lib/shared-styles.scss +1 -1
  68. package/chips/lib/suggestion-chip.d.ts +11 -0
  69. package/chips/lib/suggestion-chip.js +12 -0
  70. package/chips/lib/suggestion-chip.js.map +1 -0
  71. package/chips/lib/suggestion-styles.css.js +9 -0
  72. package/chips/lib/suggestion-styles.css.js.map +1 -0
  73. package/{autocomplete/lib/autocompletelist/autocomplete-list-styles.scss → chips/lib/suggestion-styles.scss} +3 -3
  74. package/chips/suggestion-chip.d.ts +20 -0
  75. package/chips/suggestion-chip.js +24 -0
  76. package/chips/suggestion-chip.js.map +1 -0
  77. package/circularprogress/_circular-progress.scss +6 -0
  78. package/circularprogress/circular-progress.d.ts +24 -0
  79. package/circularprogress/circular-progress.js +27 -0
  80. package/circularprogress/circular-progress.js.map +1 -0
  81. package/circularprogress/harness.d.ts +12 -0
  82. package/circularprogress/harness.js +12 -0
  83. package/circularprogress/harness.js.map +1 -0
  84. package/circularprogress/lib/_circular-progress.scss +282 -0
  85. package/circularprogress/lib/circular-progress-styles.css.js +9 -0
  86. package/circularprogress/lib/circular-progress-styles.css.js.map +1 -0
  87. package/circularprogress/lib/circular-progress-styles.scss +8 -0
  88. package/circularprogress/lib/circular-progress.d.ts +29 -0
  89. package/circularprogress/lib/circular-progress.js +98 -0
  90. package/circularprogress/lib/circular-progress.js.map +1 -0
  91. package/dialog/lib/_dialog.scss +5 -8
  92. package/dialog/lib/_tokens.scss +1 -2
  93. package/dialog/lib/dialog-styles.css.js +1 -1
  94. package/dialog/lib/dialog-styles.css.js.map +1 -1
  95. package/dialog/lib/dialog.js +1 -1
  96. package/dialog/lib/dialog.js.map +1 -1
  97. package/elevation/lib/_elevation.scss +14 -69
  98. package/elevation/lib/elevation-styles.css.js +1 -1
  99. package/elevation/lib/elevation-styles.css.js.map +1 -1
  100. package/elevation/lib/elevation.d.ts +0 -8
  101. package/elevation/lib/elevation.js +1 -25
  102. package/elevation/lib/elevation.js.map +1 -1
  103. package/fab/lib/_fab-extended.scss +3 -10
  104. package/fab/lib/_fab.scss +0 -3
  105. package/fab/lib/_shared.scss +19 -44
  106. package/fab/lib/fab-extended-styles.css.js +1 -1
  107. package/fab/lib/fab-extended-styles.css.js.map +1 -1
  108. package/fab/lib/fab-shared-styles.css.js +1 -1
  109. package/fab/lib/fab-shared-styles.css.js.map +1 -1
  110. package/fab/lib/fab-shared.d.ts +0 -1
  111. package/fab/lib/fab-shared.js +2 -8
  112. package/fab/lib/fab-shared.js.map +1 -1
  113. package/fab/lib/fab-styles.css.js +1 -1
  114. package/fab/lib/fab-styles.css.js.map +1 -1
  115. package/field/lib/field.d.ts +4 -1
  116. package/field/lib/field.js +7 -0
  117. package/field/lib/field.js.map +1 -1
  118. package/field/lib/filled-styles.css.js +1 -1
  119. package/field/lib/filled-styles.css.js.map +1 -1
  120. package/field/lib/outlined-styles.css.js +1 -1
  121. package/field/lib/outlined-styles.css.js.map +1 -1
  122. package/focus/lib/_focus-ring.scss +30 -14
  123. package/focus/lib/focus-ring-styles.css.js +1 -1
  124. package/focus/lib/focus-ring-styles.css.js.map +1 -1
  125. package/focus/strong-focus.d.ts +11 -0
  126. package/focus/strong-focus.js +11 -1
  127. package/focus/strong-focus.js.map +1 -1
  128. package/iconbutton/filled-icon-button.js +1 -0
  129. package/iconbutton/filled-icon-button.js.map +1 -1
  130. package/iconbutton/filled-tonal-icon-button.js +1 -0
  131. package/iconbutton/filled-tonal-icon-button.js.map +1 -1
  132. package/iconbutton/harness.d.ts +1 -2
  133. package/iconbutton/harness.js.map +1 -1
  134. package/iconbutton/lib/_filled-icon-button.scss +1 -12
  135. package/iconbutton/lib/_filled-tonal-icon-button.scss +1 -12
  136. package/iconbutton/lib/_outlined-icon-button.scss +1 -13
  137. package/iconbutton/lib/_shared.scss +10 -6
  138. package/iconbutton/lib/_standard-icon-button.scss +5 -12
  139. package/iconbutton/lib/filled-styles.css.js +1 -1
  140. package/iconbutton/lib/filled-styles.css.js.map +1 -1
  141. package/iconbutton/lib/filled-tonal-styles.css.js +1 -1
  142. package/iconbutton/lib/filled-tonal-styles.css.js.map +1 -1
  143. package/iconbutton/lib/icon-button.d.ts +33 -2
  144. package/iconbutton/lib/icon-button.js +104 -18
  145. package/iconbutton/lib/icon-button.js.map +1 -1
  146. package/iconbutton/lib/outlined-styles.css.js +1 -1
  147. package/iconbutton/lib/outlined-styles.css.js.map +1 -1
  148. package/iconbutton/lib/shared-styles.css.js +1 -1
  149. package/iconbutton/lib/shared-styles.css.js.map +1 -1
  150. package/iconbutton/lib/standard-styles.css.js +1 -1
  151. package/iconbutton/lib/standard-styles.css.js.map +1 -1
  152. package/list/harness.d.ts +1 -0
  153. package/list/harness.js +1 -0
  154. package/list/harness.js.map +1 -1
  155. package/list/lib/_list.scss +15 -9
  156. package/list/lib/list-styles.css.js +1 -1
  157. package/list/lib/list-styles.css.js.map +1 -1
  158. package/list/lib/list.js +2 -0
  159. package/list/lib/list.js.map +1 -1
  160. package/list/lib/listitem/_list-item.scss +50 -57
  161. package/list/lib/listitem/forced-colors-styles.css.js +9 -0
  162. package/list/lib/listitem/forced-colors-styles.css.js.map +1 -0
  163. package/list/lib/listitem/forced-colors-styles.scss +23 -0
  164. package/list/lib/listitem/list-item-styles.css.js +1 -1
  165. package/list/lib/listitem/list-item-styles.css.js.map +1 -1
  166. package/list/lib/listitem/list-item.d.ts +4 -3
  167. package/list/lib/listitem/list-item.js +7 -4
  168. package/list/lib/listitem/list-item.js.map +1 -1
  169. package/list/list-item-link.js +2 -1
  170. package/list/list-item-link.js.map +1 -1
  171. package/list/list-item.js +2 -1
  172. package/list/list-item.js.map +1 -1
  173. package/menu/harness.d.ts +1 -0
  174. package/menu/harness.js +1 -0
  175. package/menu/harness.js.map +1 -1
  176. package/menu/lib/_menu.scss +11 -19
  177. package/menu/lib/forced-colors-styles.css.js +9 -0
  178. package/menu/lib/forced-colors-styles.css.js.map +1 -0
  179. package/menu/lib/forced-colors-styles.scss +12 -0
  180. package/menu/lib/menu-styles.css.js +1 -1
  181. package/menu/lib/menu-styles.css.js.map +1 -1
  182. package/menu/lib/menu.d.ts +34 -10
  183. package/menu/lib/menu.js +116 -30
  184. package/menu/lib/menu.js.map +1 -1
  185. package/menu/lib/menuitem/_menu-item.scss +5 -11
  186. package/menu/lib/menuitem/forced-colors-styles.css.js +9 -0
  187. package/menu/lib/menuitem/forced-colors-styles.css.js.map +1 -0
  188. package/menu/lib/menuitem/forced-colors-styles.scss +22 -0
  189. package/menu/lib/menuitem/menu-item-styles.css.js +1 -1
  190. package/menu/lib/menuitem/menu-item-styles.css.js.map +1 -1
  191. package/menu/lib/menuitem/menu-item.js +1 -1
  192. package/menu/lib/menuitem/menu-item.js.map +1 -1
  193. package/menu/lib/menuitemlink/menu-item-link.js +2 -1
  194. package/menu/lib/menuitemlink/menu-item-link.js.map +1 -1
  195. package/menu/lib/shared.d.ts +26 -0
  196. package/menu/lib/shared.js +39 -0
  197. package/menu/lib/shared.js.map +1 -1
  198. package/menu/lib/submenuitem/sub-menu-item.d.ts +8 -0
  199. package/menu/lib/submenuitem/sub-menu-item.js +21 -2
  200. package/menu/lib/submenuitem/sub-menu-item.js.map +1 -1
  201. package/menu/lib/surfacePositionController.d.ts +10 -2
  202. package/menu/lib/surfacePositionController.js +6 -2
  203. package/menu/lib/surfacePositionController.js.map +1 -1
  204. package/menu/lib/typeaheadController.d.ts +15 -2
  205. package/menu/lib/typeaheadController.js +27 -17
  206. package/menu/lib/typeaheadController.js.map +1 -1
  207. package/menu/menu-item-link.js +3 -1
  208. package/menu/menu-item-link.js.map +1 -1
  209. package/menu/menu-item.js +4 -2
  210. package/menu/menu-item.js.map +1 -1
  211. package/menu/menu.js +2 -1
  212. package/menu/menu.js.map +1 -1
  213. package/menu/sub-menu-item.js +3 -1
  214. package/menu/sub-menu-item.js.map +1 -1
  215. package/navigationbar/lib/_navigation-bar.scss +4 -10
  216. package/navigationbar/lib/navigation-bar-styles.css.js +1 -1
  217. package/navigationbar/lib/navigation-bar-styles.css.js.map +1 -1
  218. package/navigationbar/lib/navigation-bar.js +2 -2
  219. package/navigationbar/lib/navigation-bar.js.map +1 -1
  220. package/navigationdrawer/lib/_navigation-drawer-modal.scss +10 -14
  221. package/navigationdrawer/lib/_navigation-drawer.scss +9 -17
  222. package/navigationdrawer/lib/_shared.scss +0 -9
  223. package/navigationdrawer/lib/navigation-drawer-modal-styles.css.js +1 -1
  224. package/navigationdrawer/lib/navigation-drawer-modal-styles.css.js.map +1 -1
  225. package/navigationdrawer/lib/navigation-drawer-styles.css.js +1 -1
  226. package/navigationdrawer/lib/navigation-drawer-styles.css.js.map +1 -1
  227. package/navigationdrawer/lib/navigation-drawer.js +1 -1
  228. package/navigationdrawer/lib/navigation-drawer.js.map +1 -1
  229. package/navigationtab/lib/_navigation-tab.scss +4 -10
  230. package/navigationtab/lib/navigation-tab-styles.css.js +1 -1
  231. package/navigationtab/lib/navigation-tab-styles.css.js.map +1 -1
  232. package/package.json +2 -1
  233. package/radio/lib/_radio.scss +1 -2
  234. package/radio/lib/radio-styles.css.js +1 -1
  235. package/radio/lib/radio-styles.css.js.map +1 -1
  236. package/ripple/lib/_md-comp-ripple.scss +3 -3
  237. package/ripple/lib/ripple-styles.css.js +1 -1
  238. package/ripple/lib/ripple-styles.css.js.map +1 -1
  239. package/segmentedbutton/lib/_shared.scss +0 -2
  240. package/segmentedbutton/lib/outlined-styles.css.js +1 -1
  241. package/segmentedbutton/lib/outlined-styles.css.js.map +1 -1
  242. package/segmentedbuttonset/lib/outlined-styles.css.js +1 -1
  243. package/segmentedbuttonset/lib/outlined-styles.css.js.map +1 -1
  244. package/slider/lib/_slider.scss +2 -11
  245. package/slider/lib/_tokens.scss +7 -8
  246. package/slider/lib/slider-styles.css.js +1 -1
  247. package/slider/lib/slider-styles.css.js.map +1 -1
  248. package/slider/lib/slider.js +1 -1
  249. package/slider/lib/slider.js.map +1 -1
  250. package/switch/lib/switch-styles.css.js +1 -1
  251. package/switch/lib/switch-styles.css.js.map +1 -1
  252. package/textfield/lib/_filled-text-field.scss +1 -7
  253. package/textfield/lib/_outlined-text-field.scss +1 -7
  254. package/textfield/lib/filled-styles.css.js +1 -1
  255. package/textfield/lib/filled-styles.css.js.map +1 -1
  256. package/textfield/lib/outlined-styles.css.js +1 -1
  257. package/textfield/lib/outlined-styles.css.js.map +1 -1
  258. package/tokens/_index.scss +104 -2
  259. package/tokens/_md-comp-assist-chip.scss +123 -0
  260. package/tokens/_md-comp-badge.scss +41 -0
  261. package/tokens/_md-comp-banner.scss +23 -0
  262. package/tokens/_md-comp-bottom-app-bar.scss +21 -0
  263. package/tokens/_md-comp-carousel-item.scss +23 -0
  264. package/tokens/_md-comp-checkbox.scss +21 -0
  265. package/tokens/_md-comp-circular-progress-indicator.scss +37 -0
  266. package/tokens/_md-comp-data-table.scss +23 -0
  267. package/tokens/_md-comp-date-input-modal.scss +23 -0
  268. package/tokens/_md-comp-date-picker-docked.scss +25 -0
  269. package/tokens/_md-comp-date-picker-modal.scss +25 -0
  270. package/tokens/_md-comp-dialog.scss +52 -0
  271. package/tokens/_md-comp-divider.scss +17 -0
  272. package/tokens/_md-comp-elevated-button.scss +118 -0
  273. package/tokens/_md-comp-elevated-card.scss +23 -0
  274. package/tokens/_md-comp-elevation.scss +28 -0
  275. package/tokens/_md-comp-extended-fab-branded.scss +45 -0
  276. package/tokens/_md-comp-extended-fab-primary.scss +45 -0
  277. package/tokens/_md-comp-extended-fab-secondary.scss +48 -0
  278. package/tokens/_md-comp-extended-fab-surface.scss +45 -0
  279. package/tokens/_md-comp-extended-fab-tertiary.scss +48 -0
  280. package/tokens/_md-comp-fab-branded-large.scss +23 -0
  281. package/tokens/_md-comp-fab-branded.scss +23 -0
  282. package/tokens/_md-comp-fab-primary-large.scss +23 -0
  283. package/tokens/_md-comp-fab-primary-small.scss +23 -0
  284. package/tokens/_md-comp-fab-primary.scss +23 -0
  285. package/tokens/_md-comp-fab-secondary-large.scss +23 -0
  286. package/tokens/_md-comp-fab-secondary-small.scss +23 -0
  287. package/tokens/_md-comp-fab-secondary.scss +23 -0
  288. package/tokens/_md-comp-fab-surface-large.scss +23 -0
  289. package/tokens/_md-comp-fab-surface-small.scss +23 -0
  290. package/tokens/_md-comp-fab-surface.scss +23 -0
  291. package/tokens/_md-comp-fab-tertiary-large.scss +23 -0
  292. package/tokens/_md-comp-fab-tertiary-small.scss +23 -0
  293. package/tokens/_md-comp-fab-tertiary.scss +23 -0
  294. package/tokens/_md-comp-filled-autocomplete.scss +25 -0
  295. package/tokens/_md-comp-filled-button.scss +118 -0
  296. package/tokens/_md-comp-filled-card.scss +23 -0
  297. package/tokens/_md-comp-filled-icon-button.scss +21 -0
  298. package/tokens/_md-comp-filled-menu-button.scss +25 -0
  299. package/tokens/_md-comp-filled-select.scss +25 -0
  300. package/tokens/_md-comp-filled-text-field.scss +55 -0
  301. package/tokens/_md-comp-filled-tonal-button.scss +119 -0
  302. package/tokens/_md-comp-filled-tonal-icon-button.scss +24 -0
  303. package/tokens/_md-comp-filter-chip.scss +228 -0
  304. package/tokens/_md-comp-focus-ring.scss +46 -0
  305. package/tokens/_md-comp-full-screen-dialog.scss +25 -0
  306. package/tokens/_md-comp-icon-button.scss +21 -0
  307. package/tokens/_md-comp-input-chip.scss +221 -0
  308. package/tokens/_md-comp-linear-progress-indicator.scss +22 -0
  309. package/tokens/_md-comp-list.scss +75 -0
  310. package/tokens/_md-comp-menu.scss +21 -0
  311. package/tokens/_md-comp-navigation-bar.scss +25 -0
  312. package/tokens/_md-comp-navigation-drawer.scss +25 -0
  313. package/tokens/_md-comp-navigation-rail.scss +25 -0
  314. package/tokens/_md-comp-outlined-autocomplete.scss +28 -0
  315. package/tokens/_md-comp-outlined-button.scss +114 -0
  316. package/tokens/_md-comp-outlined-card.scss +23 -0
  317. package/tokens/_md-comp-outlined-icon-button.scss +21 -0
  318. package/tokens/_md-comp-outlined-menu-button.scss +23 -0
  319. package/tokens/_md-comp-outlined-segmented-button.scss +47 -0
  320. package/tokens/_md-comp-outlined-select.scss +25 -0
  321. package/tokens/_md-comp-outlined-text-field.scss +53 -0
  322. package/tokens/_md-comp-plain-tooltip.scss +21 -0
  323. package/tokens/_md-comp-primary-navigation-tab.scss +50 -0
  324. package/tokens/_md-comp-radio-button.scss +19 -0
  325. package/tokens/_md-comp-rich-tooltip.scss +25 -0
  326. package/tokens/_md-comp-scrim.scss +17 -0
  327. package/tokens/_md-comp-search-bar.scss +25 -0
  328. package/tokens/_md-comp-search-view.scss +23 -0
  329. package/tokens/_md-comp-secondary-navigation-tab.scss +49 -0
  330. package/tokens/_md-comp-sheet-bottom.scss +21 -0
  331. package/tokens/_md-comp-sheet-floating.scss +21 -0
  332. package/tokens/_md-comp-sheet-side.scss +25 -0
  333. package/tokens/_md-comp-slider.scss +47 -0
  334. package/tokens/_md-comp-snackbar.scss +25 -0
  335. package/tokens/_md-comp-standard-menu-button.scss +23 -0
  336. package/tokens/_md-comp-suggestion-chip.scss +123 -0
  337. package/tokens/_md-comp-switch.scss +21 -0
  338. package/tokens/_md-comp-test-table.scss +31 -0
  339. package/tokens/_md-comp-text-button.scss +107 -0
  340. package/tokens/_md-comp-time-input.scss +25 -0
  341. package/tokens/_md-comp-time-picker.scss +25 -0
  342. package/tokens/_md-comp-top-app-bar-large.scss +23 -0
  343. package/tokens/_md-comp-top-app-bar-medium.scss +23 -0
  344. package/tokens/_md-comp-top-app-bar-small-centered.scss +26 -0
  345. package/tokens/_md-comp-top-app-bar-small.scss +23 -0
  346. package/tokens/_md-ref-palette.scss +12 -0
  347. package/tokens/_md-ref-typeface.scss +34 -0
  348. package/tokens/_md-sys-color.scss +25 -0
  349. package/tokens/_md-sys-elevation.scss +30 -0
  350. package/tokens/_md-sys-motion.scss +12 -0
  351. package/tokens/_md-sys-shape.scss +12 -0
  352. package/tokens/_md-sys-state.scss +12 -0
  353. package/tokens/_md-sys-typescale.scss +51 -0
  354. package/tokens/_values.scss +111 -0
  355. package/tokens/{v0_161 → v0_172}/_md-comp-assist-chip.scss +3 -4
  356. package/tokens/{v0_160 → v0_172}/_md-comp-badge.scss +1 -1
  357. package/tokens/{v0_160 → v0_172}/_md-comp-banner.scss +2 -4
  358. package/tokens/{v0_160 → v0_172}/_md-comp-bottom-app-bar.scss +3 -5
  359. package/tokens/{v0_160 → v0_172}/_md-comp-carousel-item.scss +1 -3
  360. package/tokens/{v0_161 → v0_172}/_md-comp-checkbox.scss +1 -1
  361. package/tokens/{v0_161 → v0_172}/_md-comp-circular-progress-indicator.scss +1 -1
  362. package/tokens/{v0_160 → v0_172}/_md-comp-data-table.scss +2 -2
  363. package/tokens/{v0_161 → v0_172}/_md-comp-date-input-modal.scss +2 -4
  364. package/tokens/{v0_161 → v0_172}/_md-comp-date-picker-docked.scss +2 -4
  365. package/tokens/{v0_161 → v0_172}/_md-comp-date-picker-modal.scss +2 -4
  366. package/tokens/{v0_160 → v0_172}/_md-comp-dialog.scss +2 -4
  367. package/tokens/{v0_161 → v0_172}/_md-comp-divider.scss +1 -1
  368. package/tokens/{v0_160 → v0_172}/_md-comp-elevated-button.scss +2 -4
  369. package/tokens/{v0_160 → v0_172}/_md-comp-elevated-card.scss +2 -4
  370. package/tokens/{v0_161 → v0_172}/_md-comp-extended-fab-branded.scss +4 -4
  371. package/tokens/{v0_161 → v0_172}/_md-comp-extended-fab-primary.scss +1 -1
  372. package/tokens/{v0_160 → v0_172}/_md-comp-extended-fab-secondary.scss +1 -1
  373. package/tokens/{v0_161 → v0_172}/_md-comp-extended-fab-surface.scss +4 -4
  374. package/tokens/{v0_161 → v0_172}/_md-comp-extended-fab-tertiary.scss +1 -1
  375. package/tokens/{v0_161 → v0_172}/_md-comp-fab-branded-large.scss +4 -4
  376. package/tokens/{v0_160 → v0_172}/_md-comp-fab-branded.scss +4 -4
  377. package/tokens/{v0_161 → v0_172}/_md-comp-fab-primary-large.scss +1 -1
  378. package/tokens/{v0_161 → v0_172}/_md-comp-fab-primary-small.scss +1 -1
  379. package/tokens/{v0_160 → v0_172}/_md-comp-fab-primary.scss +1 -1
  380. package/tokens/{v0_161 → v0_172}/_md-comp-fab-secondary-large.scss +1 -1
  381. package/tokens/{v0_161 → v0_172}/_md-comp-fab-secondary-small.scss +1 -1
  382. package/tokens/{v0_160 → v0_172}/_md-comp-fab-secondary.scss +1 -1
  383. package/tokens/{v0_160 → v0_172}/_md-comp-fab-surface-large.scss +4 -4
  384. package/tokens/{v0_161 → v0_172}/_md-comp-fab-surface-small.scss +4 -4
  385. package/tokens/{v0_161 → v0_172}/_md-comp-fab-surface.scss +4 -4
  386. package/tokens/{v0_160 → v0_172}/_md-comp-fab-tertiary-large.scss +1 -1
  387. package/tokens/{v0_160 → v0_172}/_md-comp-fab-tertiary-small.scss +1 -1
  388. package/tokens/{v0_160 → v0_172}/_md-comp-fab-tertiary.scss +1 -1
  389. package/tokens/{v0_161 → v0_172}/_md-comp-filled-autocomplete.scss +4 -6
  390. package/tokens/{v0_161 → v0_172}/_md-comp-filled-button.scss +1 -1
  391. package/tokens/{v0_161 → v0_172}/_md-comp-filled-card.scss +3 -2
  392. package/tokens/{v0_161 → v0_172}/_md-comp-filled-icon-button.scss +2 -2
  393. package/tokens/{v0_161 → v0_172}/_md-comp-filled-menu-button.scss +1 -1
  394. package/tokens/{v0_161 → v0_172}/_md-comp-filled-select.scss +4 -6
  395. package/tokens/{v0_161 → v0_172}/_md-comp-filled-text-field.scss +3 -2
  396. package/tokens/{v0_161 → v0_172}/_md-comp-filled-tonal-button.scss +1 -1
  397. package/tokens/{v0_160 → v0_172}/_md-comp-filled-tonal-icon-button.scss +2 -2
  398. package/tokens/{v0_160 → v0_172}/_md-comp-filter-chip.scss +2 -4
  399. package/tokens/{v0_160 → v0_172}/_md-comp-full-screen-dialog.scss +3 -3
  400. package/tokens/{v0_160 → v0_172}/_md-comp-icon-button.scss +1 -1
  401. package/tokens/{v0_160 → v0_172}/_md-comp-input-chip.scss +1 -1
  402. package/tokens/{v0_160 → v0_172}/_md-comp-linear-progress-indicator.scss +2 -2
  403. package/tokens/{v0_160 → v0_172}/_md-comp-list.scss +1 -1
  404. package/tokens/{v0_161 → v0_172}/_md-comp-menu.scss +3 -5
  405. package/tokens/{v0_161 → v0_172}/_md-comp-navigation-bar.scss +2 -4
  406. package/tokens/{v0_161 → v0_172}/_md-comp-navigation-drawer.scss +4 -4
  407. package/tokens/{v0_160/_md-comp-navigation-bar.scss → v0_172/_md-comp-navigation-rail.scss} +9 -7
  408. package/tokens/{v0_160 → v0_172}/_md-comp-outlined-autocomplete.scss +4 -6
  409. package/tokens/{v0_161 → v0_172}/_md-comp-outlined-button.scss +1 -1
  410. package/tokens/{v0_161 → v0_172}/_md-comp-outlined-card.scss +1 -3
  411. package/tokens/{v0_161 → v0_172}/_md-comp-outlined-icon-button.scss +1 -1
  412. package/tokens/{v0_160 → v0_172}/_md-comp-outlined-menu-button.scss +1 -1
  413. package/tokens/{v0_160 → v0_172}/_md-comp-outlined-segmented-button.scss +1 -1
  414. package/tokens/{v0_160 → v0_172}/_md-comp-outlined-select.scss +4 -6
  415. package/tokens/{v0_161 → v0_172}/_md-comp-outlined-text-field.scss +1 -1
  416. package/tokens/{v0_161 → v0_172}/_md-comp-plain-tooltip.scss +1 -1
  417. package/tokens/{v0_160 → v0_172}/_md-comp-primary-navigation-tab.scss +1 -1
  418. package/tokens/{v0_160 → v0_172}/_md-comp-radio-button.scss +1 -1
  419. package/tokens/{v0_160 → v0_172}/_md-comp-rich-tooltip.scss +3 -5
  420. package/tokens/{v0_160 → v0_172}/_md-comp-scrim.scss +1 -1
  421. package/tokens/{v0_161 → v0_172}/_md-comp-search-bar.scss +2 -4
  422. package/tokens/{v0_161 → v0_172}/_md-comp-search-view.scss +2 -4
  423. package/tokens/{v0_160 → v0_172}/_md-comp-secondary-navigation-tab.scss +3 -3
  424. package/tokens/{v0_160 → v0_172}/_md-comp-sheet-bottom.scss +3 -4
  425. package/tokens/{v0_161 → v0_172}/_md-comp-sheet-floating.scss +3 -5
  426. package/tokens/{v0_161 → v0_172}/_md-comp-sheet-side.scss +4 -4
  427. package/tokens/{v0_160 → v0_172}/_md-comp-slider.scss +3 -2
  428. package/tokens/{v0_161 → v0_172}/_md-comp-snackbar.scss +1 -1
  429. package/tokens/{v0_161 → v0_172}/_md-comp-standard-menu-button.scss +1 -1
  430. package/tokens/{v0_161 → v0_172}/_md-comp-suggestion-chip.scss +3 -4
  431. package/tokens/{v0_161 → v0_172}/_md-comp-switch.scss +13 -11
  432. package/tokens/{v0_161 → v0_172}/_md-comp-text-button.scss +1 -1
  433. package/tokens/{v0_160 → v0_172}/_md-comp-time-input.scss +3 -4
  434. package/tokens/{v0_160 → v0_172}/_md-comp-time-picker.scss +5 -5
  435. package/tokens/{v0_161 → v0_172}/_md-comp-top-app-bar-large.scss +1 -3
  436. package/tokens/{v0_161 → v0_172}/_md-comp-top-app-bar-medium.scss +1 -3
  437. package/tokens/{v0_161 → v0_172}/_md-comp-top-app-bar-small-centered.scss +3 -1
  438. package/tokens/{v0_160 → v0_172}/_md-comp-top-app-bar-small.scss +3 -3
  439. package/tokens/{v0_161 → v0_172}/_md-ref-palette.scss +23 -23
  440. package/tokens/{v0_161 → v0_172}/_md-ref-typeface.scss +1 -1
  441. package/tokens/{v0_161 → v0_172}/_md-sys-color.scss +9 -9
  442. package/tokens/{v0_160 → v0_172}/_md-sys-elevation.scss +1 -1
  443. package/tokens/{v0_160 → v0_172}/_md-sys-motion.scss +1 -1
  444. package/tokens/{v0_160 → v0_172}/_md-sys-shape.scss +1 -1
  445. package/tokens/{v0_160 → v0_172}/_md-sys-state.scss +1 -1
  446. package/tokens/{v0_160 → v0_172}/_md-sys-typescale.scss +1 -1
  447. package/autocomplete/_filled-autocomplete.scss +0 -6
  448. package/autocomplete/_outlined-autocomplete.scss +0 -6
  449. package/autocomplete/autocomplete-item.d.ts +0 -19
  450. package/autocomplete/autocomplete-item.js +0 -22
  451. package/autocomplete/autocomplete-item.js.map +0 -1
  452. package/autocomplete/autocomplete-list.d.ts +0 -19
  453. package/autocomplete/autocomplete-list.js +0 -23
  454. package/autocomplete/autocomplete-list.js.map +0 -1
  455. package/autocomplete/autocomplete-surface.d.ts +0 -19
  456. package/autocomplete/autocomplete-surface.js +0 -23
  457. package/autocomplete/autocomplete-surface.js.map +0 -1
  458. package/autocomplete/filled-autocomplete.d.ts +0 -28
  459. package/autocomplete/filled-autocomplete.js +0 -46
  460. package/autocomplete/filled-autocomplete.js.map +0 -1
  461. package/autocomplete/lib/_filled-autocomplete.scss +0 -189
  462. package/autocomplete/lib/_outlined-autocomplete.scss +0 -178
  463. package/autocomplete/lib/_shared.scss +0 -25
  464. package/autocomplete/lib/autocomplete.d.ts +0 -54
  465. package/autocomplete/lib/autocomplete.js +0 -265
  466. package/autocomplete/lib/autocomplete.js.map +0 -1
  467. package/autocomplete/lib/autocompleteitem/autocomplete-item.d.ts +0 -11
  468. package/autocomplete/lib/autocompleteitem/autocomplete-item.js +0 -14
  469. package/autocomplete/lib/autocompleteitem/autocomplete-item.js.map +0 -1
  470. package/autocomplete/lib/autocompleteitem/harness.d.ts +0 -11
  471. package/autocomplete/lib/autocompleteitem/harness.js +0 -12
  472. package/autocomplete/lib/autocompleteitem/harness.js.map +0 -1
  473. package/autocomplete/lib/autocompletelist/_autocomplete-list.scss +0 -13
  474. package/autocomplete/lib/autocompletelist/autocomplete-list-styles.css.js +0 -9
  475. package/autocomplete/lib/autocompletelist/autocomplete-list-styles.css.js.map +0 -1
  476. package/autocomplete/lib/autocompletelist/autocomplete-list.d.ts +0 -14
  477. package/autocomplete/lib/autocompletelist/autocomplete-list.js +0 -21
  478. package/autocomplete/lib/autocompletelist/autocomplete-list.js.map +0 -1
  479. package/autocomplete/lib/autocompletelist/harness.d.ts +0 -11
  480. package/autocomplete/lib/autocompletelist/harness.js +0 -12
  481. package/autocomplete/lib/autocompletelist/harness.js.map +0 -1
  482. package/autocomplete/lib/autocompletesurface/_autocomplete-surface.scss +0 -13
  483. package/autocomplete/lib/autocompletesurface/autocomplete-surface-styles.css.js +0 -9
  484. package/autocomplete/lib/autocompletesurface/autocomplete-surface-styles.css.js.map +0 -1
  485. package/autocomplete/lib/autocompletesurface/autocomplete-surface-styles.scss +0 -10
  486. package/autocomplete/lib/autocompletesurface/autocomplete-surface.d.ts +0 -13
  487. package/autocomplete/lib/autocompletesurface/autocomplete-surface.js +0 -21
  488. package/autocomplete/lib/autocompletesurface/autocomplete-surface.js.map +0 -1
  489. package/autocomplete/lib/filled-styles.css.js +0 -9
  490. package/autocomplete/lib/filled-styles.css.js.map +0 -1
  491. package/autocomplete/lib/filled-styles.scss +0 -10
  492. package/autocomplete/lib/outlined-styles.css.js +0 -9
  493. package/autocomplete/lib/outlined-styles.css.js.map +0 -1
  494. package/autocomplete/lib/outlined-styles.scss +0 -10
  495. package/autocomplete/lib/shared-styles.css.js +0 -9
  496. package/autocomplete/lib/shared-styles.css.js.map +0 -1
  497. package/autocomplete/outlined-autocomplete.d.ts +0 -28
  498. package/autocomplete/outlined-autocomplete.js +0 -46
  499. package/autocomplete/outlined-autocomplete.js.map +0 -1
  500. package/button/elevated-link-button.d.ts +0 -36
  501. package/button/elevated-link-button.js +0 -41
  502. package/button/elevated-link-button.js.map +0 -1
  503. package/button/filled-link-button.d.ts +0 -34
  504. package/button/filled-link-button.js +0 -39
  505. package/button/filled-link-button.js.map +0 -1
  506. package/button/lib/elevated-link-button.d.ts +0 -13
  507. package/button/lib/elevated-link-button.js +0 -21
  508. package/button/lib/elevated-link-button.js.map +0 -1
  509. package/button/lib/filled-link-button.d.ts +0 -14
  510. package/button/lib/filled-link-button.js +0 -22
  511. package/button/lib/filled-link-button.js.map +0 -1
  512. package/button/lib/link-button.d.ts +0 -24
  513. package/button/lib/link-button.js +0 -59
  514. package/button/lib/link-button.js.map +0 -1
  515. package/button/lib/outlined-link-button.d.ts +0 -12
  516. package/button/lib/outlined-link-button.js +0 -20
  517. package/button/lib/outlined-link-button.js.map +0 -1
  518. package/button/lib/text-link-button.d.ts +0 -10
  519. package/button/lib/text-link-button.js +0 -16
  520. package/button/lib/text-link-button.js.map +0 -1
  521. package/button/lib/tonal-link-button.d.ts +0 -14
  522. package/button/lib/tonal-link-button.js +0 -22
  523. package/button/lib/tonal-link-button.js.map +0 -1
  524. package/button/outlined-link-button.d.ts +0 -36
  525. package/button/outlined-link-button.js +0 -40
  526. package/button/outlined-link-button.js.map +0 -1
  527. package/button/text-link-button.d.ts +0 -34
  528. package/button/text-link-button.js +0 -38
  529. package/button/text-link-button.js.map +0 -1
  530. package/button/tonal-link-button.d.ts +0 -35
  531. package/button/tonal-link-button.js +0 -40
  532. package/button/tonal-link-button.js.map +0 -1
  533. package/chips/action/delete-action.d.ts +0 -18
  534. package/chips/action/delete-action.js +0 -20
  535. package/chips/action/delete-action.js.map +0 -1
  536. package/chips/action/lib/action.d.ts +0 -47
  537. package/chips/action/lib/action.js +0 -162
  538. package/chips/action/lib/action.js.map +0 -1
  539. package/chips/action/lib/constants.d.ts +0 -62
  540. package/chips/action/lib/constants.js +0 -69
  541. package/chips/action/lib/constants.js.map +0 -1
  542. package/chips/action/lib/delete-action.d.ts +0 -20
  543. package/chips/action/lib/delete-action.js +0 -65
  544. package/chips/action/lib/delete-action.js.map +0 -1
  545. package/chips/action/lib/events.d.ts +0 -14
  546. package/chips/action/lib/events.js +0 -16
  547. package/chips/action/lib/events.js.map +0 -1
  548. package/chips/action/lib/link-action.d.ts +0 -19
  549. package/chips/action/lib/link-action.js +0 -55
  550. package/chips/action/lib/link-action.js.map +0 -1
  551. package/chips/action/lib/presentational-action.d.ts +0 -15
  552. package/chips/action/lib/presentational-action.js +0 -30
  553. package/chips/action/lib/presentational-action.js.map +0 -1
  554. package/chips/action/lib/primary-action.d.ts +0 -28
  555. package/chips/action/lib/primary-action.js +0 -88
  556. package/chips/action/lib/primary-action.js.map +0 -1
  557. package/chips/action/lib/selectable-action.d.ts +0 -17
  558. package/chips/action/lib/selectable-action.js +0 -67
  559. package/chips/action/lib/selectable-action.js.map +0 -1
  560. package/chips/action/lib/types.d.ts +0 -23
  561. package/chips/action/lib/types.js +0 -7
  562. package/chips/action/lib/types.js.map +0 -1
  563. package/chips/action/link-action.d.ts +0 -18
  564. package/chips/action/link-action.js +0 -20
  565. package/chips/action/link-action.js.map +0 -1
  566. package/chips/action/presentational-action.d.ts +0 -18
  567. package/chips/action/presentational-action.js +0 -20
  568. package/chips/action/presentational-action.js.map +0 -1
  569. package/chips/action/primary-action.d.ts +0 -18
  570. package/chips/action/primary-action.js +0 -20
  571. package/chips/action/primary-action.js.map +0 -1
  572. package/chips/action/selectable-action.d.ts +0 -18
  573. package/chips/action/selectable-action.js +0 -20
  574. package/chips/action/selectable-action.js.map +0 -1
  575. package/chips/chip/lib/_assist-chip-theme.scss +0 -99
  576. package/chips/chip/lib/_chip-theme.scss +0 -1285
  577. package/chips/chip/lib/_chip.scss +0 -444
  578. package/chips/chip/lib/_filter-chip-theme.scss +0 -130
  579. package/chips/chip/lib/_input-chip-theme.scss +0 -91
  580. package/chips/chip/lib/_suggestion-chip-theme.scss +0 -92
  581. package/chips/chip/lib/action-chip.d.ts +0 -18
  582. package/chips/chip/lib/action-chip.js +0 -39
  583. package/chips/chip/lib/action-chip.js.map +0 -1
  584. package/chips/chip/lib/adapter.d.ts +0 -50
  585. package/chips/chip/lib/adapter.js +0 -7
  586. package/chips/chip/lib/adapter.js.map +0 -1
  587. package/chips/chip/lib/animationframe.d.ts +0 -31
  588. package/chips/chip/lib/animationframe.js +0 -66
  589. package/chips/chip/lib/animationframe.js.map +0 -1
  590. package/chips/chip/lib/chip.d.ts +0 -43
  591. package/chips/chip/lib/chip.js +0 -134
  592. package/chips/chip/lib/chip.js.map +0 -1
  593. package/chips/chip/lib/constants.d.ts +0 -43
  594. package/chips/chip/lib/constants.js +0 -48
  595. package/chips/chip/lib/constants.js.map +0 -1
  596. package/chips/chip/lib/foundation.d.ts +0 -41
  597. package/chips/chip/lib/foundation.js +0 -255
  598. package/chips/chip/lib/foundation.js.map +0 -1
  599. package/chips/chip/lib/link-chip.d.ts +0 -21
  600. package/chips/chip/lib/link-chip.js +0 -53
  601. package/chips/chip/lib/link-chip.js.map +0 -1
  602. package/chips/chip/lib/presentational-chip.d.ts +0 -18
  603. package/chips/chip/lib/presentational-chip.js +0 -39
  604. package/chips/chip/lib/presentational-chip.js.map +0 -1
  605. package/chips/chip/lib/selectable-chip.d.ts +0 -22
  606. package/chips/chip/lib/selectable-chip.js +0 -57
  607. package/chips/chip/lib/selectable-chip.js.map +0 -1
  608. package/chips/chip/lib/types.d.ts +0 -42
  609. package/chips/chip/lib/types.js +0 -7
  610. package/chips/chip/lib/types.js.map +0 -1
  611. package/chips/chipset/lib/_chip-set-theme.scss +0 -50
  612. package/chips/chipset/lib/_chip-set.scss +0 -48
  613. package/chips/chipset/lib/adapter.d.ts +0 -45
  614. package/chips/chipset/lib/adapter.js +0 -7
  615. package/chips/chipset/lib/adapter.js.map +0 -1
  616. package/chips/chipset/lib/constants.d.ts +0 -26
  617. package/chips/chipset/lib/constants.js +0 -30
  618. package/chips/chipset/lib/constants.js.map +0 -1
  619. package/chips/chipset/lib/foundation.d.ts +0 -68
  620. package/chips/chipset/lib/foundation.js +0 -314
  621. package/chips/chipset/lib/foundation.js.map +0 -1
  622. package/chips/chipset/lib/types.d.ts +0 -41
  623. package/chips/chipset/lib/types.js +0 -7
  624. package/chips/chipset/lib/types.js.map +0 -1
  625. package/elevation/lib/_md-comp-elevation.scss +0 -27
  626. package/focus/lib/_md-comp-focus-ring.scss +0 -31
  627. package/iconbutton/filled-icon-button-toggle.d.ts +0 -31
  628. package/iconbutton/filled-icon-button-toggle.js +0 -40
  629. package/iconbutton/filled-icon-button-toggle.js.map +0 -1
  630. package/iconbutton/filled-link-icon-button.d.ts +0 -31
  631. package/iconbutton/filled-link-icon-button.js +0 -39
  632. package/iconbutton/filled-link-icon-button.js.map +0 -1
  633. package/iconbutton/filled-tonal-icon-button-toggle.d.ts +0 -31
  634. package/iconbutton/filled-tonal-icon-button-toggle.js +0 -40
  635. package/iconbutton/filled-tonal-icon-button-toggle.js.map +0 -1
  636. package/iconbutton/filled-tonal-link-icon-button.d.ts +0 -31
  637. package/iconbutton/filled-tonal-link-icon-button.js +0 -39
  638. package/iconbutton/filled-tonal-link-icon-button.js.map +0 -1
  639. package/iconbutton/lib/icon-button-toggle.d.ts +0 -34
  640. package/iconbutton/lib/icon-button-toggle.js +0 -87
  641. package/iconbutton/lib/icon-button-toggle.js.map +0 -1
  642. package/iconbutton/lib/link-icon-button.d.ts +0 -23
  643. package/iconbutton/lib/link-icon-button.js +0 -58
  644. package/iconbutton/lib/link-icon-button.js.map +0 -1
  645. package/iconbutton/outlined-icon-button-toggle.d.ts +0 -31
  646. package/iconbutton/outlined-icon-button-toggle.js +0 -39
  647. package/iconbutton/outlined-icon-button-toggle.js.map +0 -1
  648. package/iconbutton/outlined-link-icon-button.d.ts +0 -31
  649. package/iconbutton/outlined-link-icon-button.js +0 -39
  650. package/iconbutton/outlined-link-icon-button.js.map +0 -1
  651. package/iconbutton/standard-icon-button-toggle.d.ts +0 -31
  652. package/iconbutton/standard-icon-button-toggle.js +0 -39
  653. package/iconbutton/standard-icon-button-toggle.js.map +0 -1
  654. package/iconbutton/standard-link-icon-button.d.ts +0 -31
  655. package/iconbutton/standard-link-icon-button.js +0 -39
  656. package/iconbutton/standard-link-icon-button.js.map +0 -1
  657. package/menusurface/_menu-surface.scss +0 -6
  658. package/menusurface/lib/_md-comp-menu-surface.scss +0 -31
  659. package/menusurface/lib/_menu-surface.scss +0 -122
  660. package/menusurface/lib/adapter.d.ts +0 -46
  661. package/menusurface/lib/adapter.js +0 -7
  662. package/menusurface/lib/adapter.js.map +0 -1
  663. package/menusurface/lib/constants.d.ts +0 -71
  664. package/menusurface/lib/constants.js +0 -83
  665. package/menusurface/lib/constants.js.map +0 -1
  666. package/menusurface/lib/foundation.d.ts +0 -176
  667. package/menusurface/lib/foundation.js +0 -544
  668. package/menusurface/lib/foundation.js.map +0 -1
  669. package/menusurface/lib/menu-surface-styles.css.js +0 -9
  670. package/menusurface/lib/menu-surface-styles.css.js.map +0 -1
  671. package/menusurface/lib/menu-surface.d.ts +0 -62
  672. package/menusurface/lib/menu-surface.js +0 -347
  673. package/menusurface/lib/menu-surface.js.map +0 -1
  674. package/menusurface/lib/types.d.ts +0 -19
  675. package/menusurface/lib/types.js +0 -7
  676. package/menusurface/lib/types.js.map +0 -1
  677. package/menusurface/menu-surface.d.ts +0 -14
  678. package/menusurface/menu-surface.js +0 -17
  679. package/menusurface/menu-surface.js.map +0 -1
  680. package/sass/_elevation.scss +0 -159
  681. package/sass/_resolvers.scss +0 -16
  682. package/sass/_typography.scss +0 -39
  683. package/tokens/v0_160/_md-comp-assist-chip.scss +0 -109
  684. package/tokens/v0_160/_md-comp-checkbox.scss +0 -126
  685. package/tokens/v0_160/_md-comp-circular-progress-indicator.scss +0 -39
  686. package/tokens/v0_160/_md-comp-date-input-modal.scss +0 -89
  687. package/tokens/v0_160/_md-comp-date-picker-docked.scss +0 -246
  688. package/tokens/v0_160/_md-comp-date-picker-modal.scss +0 -305
  689. package/tokens/v0_160/_md-comp-divider.scss +0 -25
  690. package/tokens/v0_160/_md-comp-extended-fab-branded.scss +0 -86
  691. package/tokens/v0_160/_md-comp-extended-fab-primary.scss +0 -94
  692. package/tokens/v0_160/_md-comp-extended-fab-surface.scss +0 -90
  693. package/tokens/v0_160/_md-comp-extended-fab-tertiary.scss +0 -95
  694. package/tokens/v0_160/_md-comp-fab-branded-large.scss +0 -60
  695. package/tokens/v0_160/_md-comp-fab-primary-large.scss +0 -65
  696. package/tokens/v0_160/_md-comp-fab-primary-small.scss +0 -65
  697. package/tokens/v0_160/_md-comp-fab-secondary-large.scss +0 -66
  698. package/tokens/v0_160/_md-comp-fab-secondary-small.scss +0 -66
  699. package/tokens/v0_160/_md-comp-fab-surface-small.scss +0 -64
  700. package/tokens/v0_160/_md-comp-fab-surface.scss +0 -64
  701. package/tokens/v0_160/_md-comp-filled-autocomplete.scss +0 -267
  702. package/tokens/v0_160/_md-comp-filled-button.scss +0 -89
  703. package/tokens/v0_160/_md-comp-filled-card.scss +0 -58
  704. package/tokens/v0_160/_md-comp-filled-icon-button.scss +0 -79
  705. package/tokens/v0_160/_md-comp-filled-menu-button.scss +0 -98
  706. package/tokens/v0_160/_md-comp-filled-select.scss +0 -272
  707. package/tokens/v0_160/_md-comp-filled-text-field.scss +0 -189
  708. package/tokens/v0_160/_md-comp-filled-tonal-button.scss +0 -99
  709. package/tokens/v0_160/_md-comp-menu.scss +0 -121
  710. package/tokens/v0_160/_md-comp-navigation-drawer.scss +0 -162
  711. package/tokens/v0_160/_md-comp-navigation-rail.scss +0 -131
  712. package/tokens/v0_160/_md-comp-outlined-button.scss +0 -84
  713. package/tokens/v0_160/_md-comp-outlined-card.scss +0 -65
  714. package/tokens/v0_160/_md-comp-outlined-icon-button.scss +0 -79
  715. package/tokens/v0_160/_md-comp-outlined-text-field.scss +0 -171
  716. package/tokens/v0_160/_md-comp-plain-tooltip.scss +0 -55
  717. package/tokens/v0_160/_md-comp-search-bar.scss +0 -99
  718. package/tokens/v0_160/_md-comp-search-view.scss +0 -93
  719. package/tokens/v0_160/_md-comp-sheet-floating.scss +0 -34
  720. package/tokens/v0_160/_md-comp-sheet-side.scss +0 -91
  721. package/tokens/v0_160/_md-comp-snackbar.scss +0 -127
  722. package/tokens/v0_160/_md-comp-standard-menu-button.scss +0 -98
  723. package/tokens/v0_160/_md-comp-suggestion-chip.scss +0 -125
  724. package/tokens/v0_160/_md-comp-switch.scss +0 -136
  725. package/tokens/v0_160/_md-comp-text-button.scss +0 -77
  726. package/tokens/v0_160/_md-comp-top-app-bar-large.scss +0 -63
  727. package/tokens/v0_160/_md-comp-top-app-bar-medium.scss +0 -63
  728. package/tokens/v0_160/_md-comp-top-app-bar-small-centered.scss +0 -66
  729. package/tokens/v0_160/_md-ref-palette.scss +0 -107
  730. package/tokens/v0_160/_md-ref-typeface.scss +0 -21
  731. package/tokens/v0_160/_md-sys-color.scss +0 -904
  732. package/tokens/v0_161/_index.scss +0 -107
  733. package/tokens/v0_161/_md-comp-badge.scss +0 -58
  734. package/tokens/v0_161/_md-comp-banner.scss +0 -75
  735. package/tokens/v0_161/_md-comp-bottom-app-bar.scss +0 -35
  736. package/tokens/v0_161/_md-comp-carousel-item.scss +0 -65
  737. package/tokens/v0_161/_md-comp-data-table.scss +0 -96
  738. package/tokens/v0_161/_md-comp-dialog.scss +0 -123
  739. package/tokens/v0_161/_md-comp-elevated-button.scss +0 -91
  740. package/tokens/v0_161/_md-comp-elevated-card.scss +0 -59
  741. package/tokens/v0_161/_md-comp-extended-fab-secondary.scss +0 -95
  742. package/tokens/v0_161/_md-comp-fab-branded.scss +0 -60
  743. package/tokens/v0_161/_md-comp-fab-primary.scss +0 -65
  744. package/tokens/v0_161/_md-comp-fab-secondary.scss +0 -66
  745. package/tokens/v0_161/_md-comp-fab-surface-large.scss +0 -64
  746. package/tokens/v0_161/_md-comp-fab-tertiary-large.scss +0 -66
  747. package/tokens/v0_161/_md-comp-fab-tertiary-small.scss +0 -66
  748. package/tokens/v0_161/_md-comp-fab-tertiary.scss +0 -66
  749. package/tokens/v0_161/_md-comp-filled-tonal-icon-button.scss +0 -86
  750. package/tokens/v0_161/_md-comp-filter-chip.scss +0 -209
  751. package/tokens/v0_161/_md-comp-full-screen-dialog.scss +0 -111
  752. package/tokens/v0_161/_md-comp-icon-button.scss +0 -70
  753. package/tokens/v0_161/_md-comp-input-chip.scss +0 -184
  754. package/tokens/v0_161/_md-comp-linear-progress-indicator.scss +0 -41
  755. package/tokens/v0_161/_md-comp-list.scss +0 -248
  756. package/tokens/v0_161/_md-comp-navigation-rail.scss +0 -131
  757. package/tokens/v0_161/_md-comp-outlined-autocomplete.scss +0 -257
  758. package/tokens/v0_161/_md-comp-outlined-menu-button.scss +0 -94
  759. package/tokens/v0_161/_md-comp-outlined-segmented-button.scss +0 -112
  760. package/tokens/v0_161/_md-comp-outlined-select.scss +0 -262
  761. package/tokens/v0_161/_md-comp-primary-navigation-tab.scss +0 -121
  762. package/tokens/v0_161/_md-comp-radio-button.scss +0 -68
  763. package/tokens/v0_161/_md-comp-rich-tooltip.scss +0 -121
  764. package/tokens/v0_161/_md-comp-scrim.scss +0 -25
  765. package/tokens/v0_161/_md-comp-secondary-navigation-tab.scss +0 -84
  766. package/tokens/v0_161/_md-comp-sheet-bottom.scss +0 -45
  767. package/tokens/v0_161/_md-comp-slider.scss +0 -114
  768. package/tokens/v0_161/_md-comp-time-input.scss +0 -218
  769. package/tokens/v0_161/_md-comp-time-picker.scss +0 -264
  770. package/tokens/v0_161/_md-comp-top-app-bar-small.scss +0 -64
  771. package/tokens/v0_161/_md-sys-elevation.scss +0 -21
  772. package/tokens/v0_161/_md-sys-motion.scss +0 -53
  773. package/tokens/v0_161/_md-sys-shape.scss +0 -30
  774. package/tokens/v0_161/_md-sys-state.scss +0 -19
  775. package/tokens/v0_161/_md-sys-typescale.scss +0 -284
  776. package/tokens/v0_161/index.test.css.js +0 -9
  777. package/tokens/v0_161/index.test.css.js.map +0 -1
  778. package/tokens/v0_161/index.test.scss +0 -584
  779. package/tokens/v0_161/lib.test.css.d.ts +0 -1
  780. package/tokens/v0_161/lib.test.css.js +0 -9
  781. package/tokens/v0_161/lib.test.css.js.map +0 -1
  782. package/tokens/v0_161/lib.test.scss +0 -663
  783. /package/{autocomplete/lib/autocompletelist/autocomplete-list-styles.css.d.ts → chips/lib/assist-styles.css.d.ts} +0 -0
  784. /package/{autocomplete → chips}/lib/shared-styles.css.d.ts +0 -0
  785. /package/{autocomplete/lib/autocompletesurface/autocomplete-surface-styles.css.d.ts → chips/lib/suggestion-styles.css.d.ts} +0 -0
  786. /package/{autocomplete/lib/filled-styles.css.d.ts → circularprogress/lib/circular-progress-styles.css.d.ts} +0 -0
  787. /package/{autocomplete/lib/outlined-styles.css.d.ts → list/lib/listitem/forced-colors-styles.css.d.ts} +0 -0
  788. /package/{menusurface/lib/menu-surface-styles.css.d.ts → menu/lib/forced-colors-styles.css.d.ts} +0 -0
  789. /package/{tokens/v0_160/index.test.css.d.ts → menu/lib/menuitem/forced-colors-styles.css.d.ts} +0 -0
  790. /package/tokens/{v0_160 → v0_172}/_index.scss +0 -0
  791. /package/tokens/{v0_161 → v0_172}/index.test.css.d.ts +0 -0
  792. /package/tokens/{v0_160 → v0_172}/index.test.css.js +0 -0
  793. /package/tokens/{v0_160 → v0_172}/index.test.css.js.map +0 -0
  794. /package/tokens/{v0_160 → v0_172}/index.test.scss +0 -0
  795. /package/tokens/{v0_160 → v0_172}/lib.test.css.d.ts +0 -0
  796. /package/tokens/{v0_160 → v0_172}/lib.test.css.js +0 -0
  797. /package/tokens/{v0_160 → v0_172}/lib.test.css.js.map +0 -0
  798. /package/tokens/{v0_160 → v0_172}/lib.test.scss +0 -0
@@ -9,11 +9,11 @@ import { __decorate, __metadata } from "tslib";
9
9
  import '../../focus/focus-ring.js';
10
10
  import '../../icon/icon.js';
11
11
  import '../../ripple/ripple.js';
12
- import { html, LitElement } from 'lit';
12
+ import { html, LitElement, nothing } from 'lit';
13
13
  import { property, query, queryAsync, state } from 'lit/decorators.js';
14
14
  import { classMap } from 'lit/directives/class-map.js';
15
- import { ifDefined } from 'lit/directives/if-defined.js';
16
15
  import { when } from 'lit/directives/when.js';
16
+ import { html as staticHtml, literal } from 'lit/static-html.js';
17
17
  import { isRtl } from '../../controller/is-rtl.js';
18
18
  import { ariaProperty } from '../../decorators/aria-property.js';
19
19
  import { pointerPress, shouldShowStrongFocus } from '../../focus/strong-focus.js';
@@ -30,43 +30,94 @@ export class IconButton extends LitElement {
30
30
  * Flips the icon if it is in an RTL context at startup.
31
31
  */
32
32
  this.flipIconInRtl = false;
33
- this.flipIcon = isRtl(this, this.flipIconInRtl);
33
+ /**
34
+ * Sets the underlying `HTMLAnchorElement`'s `href` resource attribute.
35
+ */
36
+ this.href = '';
37
+ /**
38
+ * Sets the underlying `HTMLAnchorElement`'s `target` attribute.
39
+ */
40
+ this.target = '';
41
+ /**
42
+ * When true, the button will toggle between selected and unselected
43
+ * states
44
+ */
45
+ this.toggle = false;
46
+ /**
47
+ * Sets the selected state. When false, displays the default icon. When true,
48
+ * displays the `selectedIcon`, or the default icon If no `selectedIcon` is
49
+ * provided.
50
+ */
51
+ this.selected = false;
34
52
  this.showFocusRing = false;
35
53
  this.showRipple = false;
54
+ this.flipIcon = isRtl(this, this.flipIconInRtl);
36
55
  this.getRipple = () => {
37
56
  this.showRipple = true;
38
57
  return this.ripple;
39
58
  };
40
59
  this.renderRipple = () => {
41
- return html `<md-ripple ?disabled="${this.disabled}"></md-ripple>`;
60
+ return html `<md-ripple ?disabled="${!this.href && this.disabled}"></md-ripple>`;
42
61
  };
43
62
  }
63
+ /**
64
+ * Link buttons cannot be disabled.
65
+ */
66
+ willUpdate() {
67
+ if (this.href) {
68
+ this.disabled = false;
69
+ }
70
+ }
44
71
  render() {
45
- return html `<button
72
+ const tag = this.href ? literal `div` : literal `button`;
73
+ const hasToggledAriaLabel = this.ariaLabel && this.selectedAriaLabel;
74
+ const ariaPressedValue = hasToggledAriaLabel ? nothing : this.selected;
75
+ let ariaLabelValue = nothing;
76
+ if (!this.href) {
77
+ ariaLabelValue = (hasToggledAriaLabel && this.selected) ?
78
+ this.selectedAriaLabel :
79
+ this.ariaLabel;
80
+ }
81
+ return staticHtml `<${tag}
46
82
  class="md3-icon-button ${classMap(this.getRenderClasses())}"
47
- aria-label="${ifDefined(this.ariaLabel)}"
48
- aria-haspopup="${ifDefined(this.ariaHasPopup)}"
49
- ?disabled="${this.disabled}"
83
+ aria-label="${ariaLabelValue || nothing}"
84
+ aria-haspopup="${!this.href && this.ariaHasPopup || nothing}"
85
+ aria-expanded="${!this.href && this.ariaExpanded || nothing}"
86
+ aria-pressed="${ariaPressedValue}"
87
+ ?disabled="${!this.href && this.disabled}"
50
88
  @focus="${this.handleFocus}"
51
89
  @blur="${this.handleBlur}"
52
90
  @pointerdown="${this.handlePointerDown}"
91
+ @click="${this.handleClick}"
53
92
  ${ripple(this.getRipple)}>
54
93
  ${this.renderFocusRing()}
55
94
  ${when(this.showRipple, this.renderRipple)}
56
- ${this.renderIcon()}
95
+ ${!this.selected ? this.renderIcon() : nothing}
96
+ ${this.selected ? this.renderSelectedIcon() : nothing}
57
97
  ${this.renderTouchTarget()}
58
- </button>`;
98
+ ${this.href && this.renderLink()}
99
+ </${tag}>`;
100
+ }
101
+ renderLink() {
102
+ return html `<a class="md3-icon-button__link" href="${this.href}"
103
+ target="${this.target || nothing}"
104
+ @focus="${this.handleFocus}"
105
+ @blur="${this.handleBlur}"
106
+ aria-label="${this.ariaLabel || nothing}"></a>`;
59
107
  }
60
108
  getRenderClasses() {
61
109
  return {
62
110
  'md3-icon-button--flip-icon': this.flipIcon,
111
+ 'md3-icon-button--selected': this.toggle && this.selected,
63
112
  };
64
113
  }
65
114
  renderIcon() {
66
- // Note, it's important not to render the icon property as a slot fallback
67
- // to avoid any whitespace from overridding it.
68
115
  return html `<md-icon class="md3-icon-button__icon"><slot></slot></md-icon>`;
69
116
  }
117
+ renderSelectedIcon() {
118
+ // Use default slot as fallback to not require specifying multiple icons
119
+ return html `<md-icon class="md3-icon-button__icon md3-icon-button__icon--selected"><slot name="selectedIcon"><slot></slot></slot></md-icon>`;
120
+ }
70
121
  renderTouchTarget() {
71
122
  return html `<span class="md3-icon-button__touch"></span>`;
72
123
  }
@@ -87,6 +138,16 @@ export class IconButton extends LitElement {
87
138
  handleBlur() {
88
139
  this.showFocusRing = false;
89
140
  }
141
+ handleClick() {
142
+ if (!this.toggle || this.disabled) {
143
+ return;
144
+ }
145
+ this.selected = !this.selected;
146
+ this.dispatchEvent(new InputEvent('input', { bubbles: true, composed: true }));
147
+ // Bubbles but does not compose to mimic native browser <input> & <select>
148
+ // Additionally, native change event is not an InputEvent.
149
+ this.dispatchEvent(new Event('change', { bubbles: true }));
150
+ }
90
151
  }
91
152
  __decorate([
92
153
  property({ type: Boolean, reflect: true }),
@@ -96,20 +157,41 @@ __decorate([
96
157
  property({ type: Boolean }),
97
158
  __metadata("design:type", Object)
98
159
  ], IconButton.prototype, "flipIconInRtl", void 0);
99
- __decorate([
100
- state(),
101
- __metadata("design:type", Boolean)
102
- ], IconButton.prototype, "flipIcon", void 0);
103
160
  __decorate([
104
161
  ariaProperty,
105
- property({ type: String, attribute: 'data-aria-label' }),
162
+ property({ attribute: 'data-aria-label' }),
106
163
  __metadata("design:type", String)
107
164
  ], IconButton.prototype, "ariaLabel", void 0);
108
165
  __decorate([
109
166
  ariaProperty,
110
- property({ type: String, attribute: 'data-aria-haspopup' }),
167
+ property({ attribute: 'data-aria-haspopup' }),
111
168
  __metadata("design:type", String)
112
169
  ], IconButton.prototype, "ariaHasPopup", void 0);
170
+ __decorate([
171
+ ariaProperty,
172
+ property({ attribute: 'data-aria-expanded' }),
173
+ __metadata("design:type", String)
174
+ ], IconButton.prototype, "ariaExpanded", void 0);
175
+ __decorate([
176
+ property(),
177
+ __metadata("design:type", Object)
178
+ ], IconButton.prototype, "href", void 0);
179
+ __decorate([
180
+ property(),
181
+ __metadata("design:type", Object)
182
+ ], IconButton.prototype, "target", void 0);
183
+ __decorate([
184
+ property({ attribute: 'selected-aria-label', reflect: true }),
185
+ __metadata("design:type", String)
186
+ ], IconButton.prototype, "selectedAriaLabel", void 0);
187
+ __decorate([
188
+ property({ type: Boolean }),
189
+ __metadata("design:type", Object)
190
+ ], IconButton.prototype, "toggle", void 0);
191
+ __decorate([
192
+ property({ type: Boolean, reflect: true }),
193
+ __metadata("design:type", Object)
194
+ ], IconButton.prototype, "selected", void 0);
113
195
  __decorate([
114
196
  query('button'),
115
197
  __metadata("design:type", HTMLElement)
@@ -126,4 +208,8 @@ __decorate([
126
208
  state(),
127
209
  __metadata("design:type", Object)
128
210
  ], IconButton.prototype, "showRipple", void 0);
211
+ __decorate([
212
+ state(),
213
+ __metadata("design:type", Boolean)
214
+ ], IconButton.prototype, "flipIcon", void 0);
129
215
  //# sourceMappingURL=icon-button.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"icon-button.js","sourceRoot":"","sources":["icon-button.ts"],"names":[],"mappings":"AAAA;;;;GAIG;;AAEH,qCAAqC;AACrC,mCAAmC;AAEnC,OAAO,2BAA2B,CAAC;AACnC,OAAO,oBAAoB,CAAC;AAC5B,OAAO,wBAAwB,CAAC;AAEhC,OAAO,EAAC,IAAI,EAAE,UAAU,EAAiB,MAAM,KAAK,CAAC;AACrD,OAAO,EAAC,QAAQ,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAC,MAAM,mBAAmB,CAAC;AACrE,OAAO,EAAY,QAAQ,EAAC,MAAM,6BAA6B,CAAC;AAChE,OAAO,EAAC,SAAS,EAAC,MAAM,8BAA8B,CAAC;AACvD,OAAO,EAAC,IAAI,EAAC,MAAM,wBAAwB,CAAC;AAE5C,OAAO,EAAC,KAAK,EAAC,MAAM,4BAA4B,CAAC;AACjD,OAAO,EAAC,YAAY,EAAC,MAAM,mCAAmC,CAAC;AAC/D,OAAO,EAAC,YAAY,EAAE,qBAAqB,EAAC,MAAM,6BAA6B,CAAC;AAChF,OAAO,EAAC,MAAM,EAAC,MAAM,2BAA2B,CAAC;AAIjD,gEAAgE;AAChE,MAAM,OAAO,UAAW,SAAQ,UAAU;IAA1C;;QACE;;WAEG;QACuC,aAAQ,GAAG,KAAK,CAAC;QAE3D;;WAEG;QACwB,kBAAa,GAAG,KAAK,CAAC;QAE9B,aAAQ,GAAY,KAAK,CAAC,IAAI,EAAE,IAAI,CAAC,aAAa,CAAC,CAAC;QAcpD,kBAAa,GAAG,KAAK,CAAC;QAEtB,eAAU,GAAG,KAAK,CAAC;QAE5B,cAAS,GAAG,GAAG,EAAE;YACzB,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;YACvB,OAAO,IAAI,CAAC,MAAM,CAAC;QACrB,CAAC,CAAC;QAEiB,iBAAY,GAAG,GAAG,EAAE;YACrC,OAAO,IAAI,CAAA,yBAAyB,IAAI,CAAC,QAAQ,gBAAgB,CAAC;QACpE,CAAC,CAAC;IAyDJ,CAAC;IAvDoB,MAAM;QACvB,OAAO,IAAI,CAAA;iCACkB,QAAQ,CAAC,IAAI,CAAC,gBAAgB,EAAE,CAAC;sBAC5C,SAAS,CAAC,IAAI,CAAC,SAAS,CAAC;yBACtB,SAAS,CAAC,IAAI,CAAC,YAAY,CAAC;qBAChC,IAAI,CAAC,QAAQ;kBAChB,IAAI,CAAC,WAAW;iBACjB,IAAI,CAAC,UAAU;wBACR,IAAI,CAAC,iBAAiB;UACpC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC;UACtB,IAAI,CAAC,eAAe,EAAE;UACtB,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,YAAY,CAAC;UACxC,IAAI,CAAC,UAAU,EAAE;UACjB,IAAI,CAAC,iBAAiB,EAAE;YACtB,CAAC;IACX,CAAC;IAES,gBAAgB;QACxB,OAAO;YACL,4BAA4B,EAAE,IAAI,CAAC,QAAQ;SAC5C,CAAC;IACJ,CAAC;IAES,UAAU;QAClB,0EAA0E;QAC1E,+CAA+C;QAC/C,OAAO,IAAI,CAAA,gEAAgE,CAAC;IAC9E,CAAC;IAES,iBAAiB;QACzB,OAAO,IAAI,CAAA,8CAA8C,CAAC;IAC5D,CAAC;IAES,eAAe;QACvB,OAAO,IAAI,CAAA,4BACP,IAAI,CAAC,aAAa,oBAAoB,CAAC;IAC7C,CAAC;IAEQ,iBAAiB;QACxB,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC,IAAI,EAAE,IAAI,CAAC,aAAa,CAAC,CAAC;QAChD,KAAK,CAAC,iBAAiB,EAAE,CAAC;IAC5B,CAAC;IAED,iBAAiB;QACf,YAAY,EAAE,CAAC;QACf,IAAI,CAAC,aAAa,GAAG,qBAAqB,EAAE,CAAC;IAC/C,CAAC;IAES,WAAW;QACnB,IAAI,CAAC,aAAa,GAAG,qBAAqB,EAAE,CAAC;IAC/C,CAAC;IAES,UAAU;QAClB,IAAI,CAAC,aAAa,GAAG,KAAK,CAAC;IAC7B,CAAC;CACF;AAzFC;IAAC,QAAQ,CAAC,EAAC,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAC,CAAC;;4CAAkB;AAK3D;IAAC,QAAQ,CAAC,EAAC,IAAI,EAAE,OAAO,EAAC,CAAC;;iDAAuB;AAEjD;IAAC,KAAK,EAAE;;4CAA+D;AAEvE;IAAC,YAAY;IACZ,QAAQ,CAAC,EAAC,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,iBAAiB,EAAC,CAAC;;6CAC3B;AAE5B;IAAC,YAAY;IACZ,QAAQ,CAAC,EAAC,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,oBAAoB,EAAC,CAAC;;gDACrB;AAErC;IAAC,KAAK,CAAC,QAAQ,CAAC;8BAA2B,WAAW;iDAAC;AAEvD;IAAC,UAAU,CAAC,WAAW,CAAC;;0CAA2C;AAEnE;IAAC,KAAK,EAAE;;iDAAiC;AAEzC;IAAC,KAAK,EAAE;;8CAA8B","sourcesContent":["/**\n * @license\n * Copyright 2018 Google LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n\n// This is required for @ariaProperty\n// tslint:disable:no-new-decorators\n\nimport '../../focus/focus-ring.js';\nimport '../../icon/icon.js';\nimport '../../ripple/ripple.js';\n\nimport {html, LitElement, TemplateResult} from 'lit';\nimport {property, query, queryAsync, state} from 'lit/decorators.js';\nimport {ClassInfo, classMap} from 'lit/directives/class-map.js';\nimport {ifDefined} from 'lit/directives/if-defined.js';\nimport {when} from 'lit/directives/when.js';\n\nimport {isRtl} from '../../controller/is-rtl.js';\nimport {ariaProperty} from '../../decorators/aria-property.js';\nimport {pointerPress, shouldShowStrongFocus} from '../../focus/strong-focus.js';\nimport {ripple} from '../../ripple/directive.js';\nimport {MdRipple} from '../../ripple/ripple.js';\nimport {ARIAHasPopup} from '../../types/aria.js';\n\n// tslint:disable-next-line:enforce-comments-on-exported-symbols\nexport class IconButton extends LitElement {\n /**\n * Disables the icon button and makes it non-interactive.\n */\n @property({type: Boolean, reflect: true}) disabled = false;\n\n /**\n * Flips the icon if it is in an RTL context at startup.\n */\n @property({type: Boolean}) flipIconInRtl = false;\n\n @state() protected flipIcon: boolean = isRtl(this, this.flipIconInRtl);\n\n @ariaProperty\n @property({type: String, attribute: 'data-aria-label'})\n override ariaLabel!: string;\n\n @ariaProperty\n @property({type: String, attribute: 'data-aria-haspopup'})\n override ariaHasPopup!: ARIAHasPopup;\n\n @query('button') protected buttonElement!: HTMLElement;\n\n @queryAsync('md-ripple') protected ripple!: Promise<MdRipple|null>;\n\n @state() protected showFocusRing = false;\n\n @state() protected showRipple = false;\n\n protected getRipple = () => {\n this.showRipple = true;\n return this.ripple;\n };\n\n protected readonly renderRipple = () => {\n return html`<md-ripple ?disabled=\"${this.disabled}\"></md-ripple>`;\n };\n\n protected override render(): TemplateResult {\n return html`<button\n class=\"md3-icon-button ${classMap(this.getRenderClasses())}\"\n aria-label=\"${ifDefined(this.ariaLabel)}\"\n aria-haspopup=\"${ifDefined(this.ariaHasPopup)}\"\n ?disabled=\"${this.disabled}\"\n @focus=\"${this.handleFocus}\"\n @blur=\"${this.handleBlur}\"\n @pointerdown=\"${this.handlePointerDown}\"\n ${ripple(this.getRipple)}>\n ${this.renderFocusRing()}\n ${when(this.showRipple, this.renderRipple)}\n ${this.renderIcon()}\n ${this.renderTouchTarget()}\n </button>`;\n }\n\n protected getRenderClasses(): ClassInfo {\n return {\n 'md3-icon-button--flip-icon': this.flipIcon,\n };\n }\n\n protected renderIcon(): TemplateResult {\n // Note, it's important not to render the icon property as a slot fallback\n // to avoid any whitespace from overridding it.\n return html`<md-icon class=\"md3-icon-button__icon\"><slot></slot></md-icon>`;\n }\n\n protected renderTouchTarget(): TemplateResult {\n return html`<span class=\"md3-icon-button__touch\"></span>`;\n }\n\n protected renderFocusRing(): TemplateResult {\n return html`<md-focus-ring .visible=\"${\n this.showFocusRing}\"></md-focus-ring>`;\n }\n\n override connectedCallback() {\n this.flipIcon = isRtl(this, this.flipIconInRtl);\n super.connectedCallback();\n }\n\n handlePointerDown() {\n pointerPress();\n this.showFocusRing = shouldShowStrongFocus();\n }\n\n protected handleFocus() {\n this.showFocusRing = shouldShowStrongFocus();\n }\n\n protected handleBlur() {\n this.showFocusRing = false;\n }\n}\n"]}
1
+ {"version":3,"file":"icon-button.js","sourceRoot":"","sources":["icon-button.ts"],"names":[],"mappings":"AAAA;;;;GAIG;;AAEH,qCAAqC;AACrC,mCAAmC;AAEnC,OAAO,2BAA2B,CAAC;AACnC,OAAO,oBAAoB,CAAC;AAC5B,OAAO,wBAAwB,CAAC;AAEhC,OAAO,EAAC,IAAI,EAAE,UAAU,EAAE,OAAO,EAAiB,MAAM,KAAK,CAAC;AAC9D,OAAO,EAAC,QAAQ,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAC,MAAM,mBAAmB,CAAC;AACrE,OAAO,EAAY,QAAQ,EAAC,MAAM,6BAA6B,CAAC;AAChE,OAAO,EAAC,IAAI,EAAC,MAAM,wBAAwB,CAAC;AAC5C,OAAO,EAAC,IAAI,IAAI,UAAU,EAAE,OAAO,EAAC,MAAM,oBAAoB,CAAC;AAE/D,OAAO,EAAC,KAAK,EAAC,MAAM,4BAA4B,CAAC;AACjD,OAAO,EAAC,YAAY,EAAC,MAAM,mCAAmC,CAAC;AAC/D,OAAO,EAAC,YAAY,EAAE,qBAAqB,EAAC,MAAM,6BAA6B,CAAC;AAChF,OAAO,EAAC,MAAM,EAAC,MAAM,2BAA2B,CAAC;AAMjD,gEAAgE;AAChE,MAAM,OAAO,UAAW,SAAQ,UAAU;IAA1C;;QACE;;WAEG;QACuC,aAAQ,GAAG,KAAK,CAAC;QAE3D;;WAEG;QACwB,kBAAa,GAAG,KAAK,CAAC;QAcjD;;WAEG;QACS,SAAI,GAAG,EAAE,CAAC;QAEtB;;WAEG;QACS,WAAM,GAAG,EAAE,CAAC;QAQxB;;;WAGG;QACwB,WAAM,GAAG,KAAK,CAAC;QAE1C;;;;WAIG;QACuC,aAAQ,GAAG,KAAK,CAAC;QAMxC,kBAAa,GAAG,KAAK,CAAC;QAEtB,eAAU,GAAG,KAAK,CAAC;QAEnB,aAAQ,GAAY,KAAK,CAAC,IAAI,EAAE,IAAI,CAAC,aAAa,CAAC,CAAC;QAE7D,cAAS,GAAG,GAAG,EAAE;YACzB,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;YACvB,OAAO,IAAI,CAAC,MAAM,CAAC;QACrB,CAAC,CAAC;QAEiB,iBAAY,GAAG,GAAG,EAAE;YACrC,OAAO,IAAI,CAAA,yBACX,CAAC,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,QAAQ,gBAAgB,CAAC;QAC9C,CAAC,CAAC;IAyGJ,CAAC;IAvGC;;OAEG;IACM,UAAU;QACjB,IAAI,IAAI,CAAC,IAAI,EAAE;YACb,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC;SACvB;IACH,CAAC;IAEkB,MAAM;QACvB,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAA,KAAK,CAAC,CAAC,CAAC,OAAO,CAAA,QAAQ,CAAC;QACvD,MAAM,mBAAmB,GAAG,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,iBAAiB,CAAC;QACrE,MAAM,gBAAgB,GAAG,mBAAmB,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC;QACvE,IAAI,cAAc,GAA0B,OAAO,CAAC;QACpD,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE;YACd,cAAc,GAAG,CAAC,mBAAmB,IAAI,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC;gBACrD,IAAI,CAAC,iBAAiB,CAAC,CAAC;gBACxB,IAAI,CAAC,SAAS,CAAC;SACpB;QACD,OAAO,UAAU,CAAA,IAAI,GAAG;iCACK,QAAQ,CAAC,IAAI,CAAC,gBAAgB,EAAE,CAAC;sBAC5C,cAAc,IAAI,OAAO;yBACtB,CAAC,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,YAAY,IAAI,OAAO;yBAC1C,CAAC,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,YAAY,IAAI,OAAO;wBAC3C,gBAAgB;qBACnB,CAAC,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,QAAQ;kBAC9B,IAAI,CAAC,WAAW;iBACjB,IAAI,CAAC,UAAU;wBACR,IAAI,CAAC,iBAAiB;kBAC5B,IAAI,CAAC,WAAW;UACxB,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC;UACtB,IAAI,CAAC,eAAe,EAAE;UACtB,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,YAAY,CAAC;UACxC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,OAAO;UAC5C,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,kBAAkB,EAAE,CAAC,CAAC,CAAC,OAAO;UACnD,IAAI,CAAC,iBAAiB,EAAE;UACxB,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,UAAU,EAAE;MAClC,GAAG,GAAG,CAAC;IACX,CAAC;IAES,UAAU;QAClB,OAAO,IAAI,CAAA,0CAA0C,IAAI,CAAC,IAAI;4BACtC,IAAI,CAAC,MAAoB,IAAI,OAAO;4BACpC,IAAI,CAAC,WAAW;2BACjB,IAAI,CAAC,UAAU;gCACV,IAAI,CAAC,SAAS,IAAI,OAAO,QAAQ,CAAC;IAChE,CAAC;IAES,gBAAgB;QACxB,OAAO;YACL,4BAA4B,EAAE,IAAI,CAAC,QAAQ;YAC3C,2BAA2B,EAAE,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,QAAQ;SAC1D,CAAC;IACJ,CAAC;IAES,UAAU;QAClB,OAAO,IAAI,CAAA,gEAAgE,CAAC;IAC9E,CAAC;IAES,kBAAkB;QAC1B,wEAAwE;QACxE,OAAO,IAAI,CAAA,iIAAiI,CAAC;IAC/I,CAAC;IAES,iBAAiB;QACzB,OAAO,IAAI,CAAA,8CAA8C,CAAC;IAC5D,CAAC;IAES,eAAe;QACvB,OAAO,IAAI,CAAA,4BACP,IAAI,CAAC,aAAa,oBAAoB,CAAC;IAC7C,CAAC;IAEQ,iBAAiB;QACxB,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC,IAAI,EAAE,IAAI,CAAC,aAAa,CAAC,CAAC;QAChD,KAAK,CAAC,iBAAiB,EAAE,CAAC;IAC5B,CAAC;IAED,iBAAiB;QACf,YAAY,EAAE,CAAC;QACf,IAAI,CAAC,aAAa,GAAG,qBAAqB,EAAE,CAAC;IAC/C,CAAC;IAES,WAAW;QACnB,IAAI,CAAC,aAAa,GAAG,qBAAqB,EAAE,CAAC;IAC/C,CAAC;IAES,UAAU;QAClB,IAAI,CAAC,aAAa,GAAG,KAAK,CAAC;IAC7B,CAAC;IAES,WAAW;QACnB,IAAI,CAAC,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,QAAQ,EAAE;YACjC,OAAO;SACR;QAED,IAAI,CAAC,QAAQ,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC;QAC/B,IAAI,CAAC,aAAa,CACd,IAAI,UAAU,CAAC,OAAO,EAAE,EAAC,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAC,CAAC,CAAC,CAAC;QAC9D,0EAA0E;QAC1E,0DAA0D;QAC1D,IAAI,CAAC,aAAa,CAAC,IAAI,KAAK,CAAC,QAAQ,EAAE,EAAC,OAAO,EAAE,IAAI,EAAC,CAAC,CAAC,CAAC;IAC3D,CAAC;CACF;AA3KC;IAAC,QAAQ,CAAC,EAAC,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAC,CAAC;;4CAAkB;AAK3D;IAAC,QAAQ,CAAC,EAAC,IAAI,EAAE,OAAO,EAAC,CAAC;;iDAAuB;AAEjD;IAAC,YAAY;IACZ,QAAQ,CAAC,EAAC,SAAS,EAAE,iBAAiB,EAAC,CAAC;;6CACb;AAE5B;IAAC,YAAY;IACZ,QAAQ,CAAC,EAAC,SAAS,EAAE,oBAAoB,EAAC,CAAC;;gDACP;AAErC;IAAC,YAAY;IACZ,QAAQ,CAAC,EAAC,SAAS,EAAE,oBAAoB,EAAC,CAAC;;gDACP;AAKrC;IAAC,QAAQ,EAAE;;wCAAW;AAKtB;IAAC,QAAQ,EAAE;;0CAAa;AAKxB;IAAC,QAAQ,CAAC,EAAC,SAAS,EAAE,qBAAqB,EAAE,OAAO,EAAE,IAAI,EAAC,CAAC;;qDACjC;AAM3B;IAAC,QAAQ,CAAC,EAAC,IAAI,EAAE,OAAO,EAAC,CAAC;;0CAAgB;AAO1C;IAAC,QAAQ,CAAC,EAAC,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAC,CAAC;;4CAAkB;AAE3D;IAAC,KAAK,CAAC,QAAQ,CAAC;8BAA2B,WAAW;iDAAC;AAEvD;IAAC,UAAU,CAAC,WAAW,CAAC;;0CAA2C;AAEnE;IAAC,KAAK,EAAE;;iDAAiC;AAEzC;IAAC,KAAK,EAAE;;8CAA8B;AAEtC;IAAC,KAAK,EAAE;;4CAA+D","sourcesContent":["/**\n * @license\n * Copyright 2018 Google LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n\n// This is required for @ariaProperty\n// tslint:disable:no-new-decorators\n\nimport '../../focus/focus-ring.js';\nimport '../../icon/icon.js';\nimport '../../ripple/ripple.js';\n\nimport {html, LitElement, nothing, TemplateResult} from 'lit';\nimport {property, query, queryAsync, state} from 'lit/decorators.js';\nimport {ClassInfo, classMap} from 'lit/directives/class-map.js';\nimport {when} from 'lit/directives/when.js';\nimport {html as staticHtml, literal} from 'lit/static-html.js';\n\nimport {isRtl} from '../../controller/is-rtl.js';\nimport {ariaProperty} from '../../decorators/aria-property.js';\nimport {pointerPress, shouldShowStrongFocus} from '../../focus/strong-focus.js';\nimport {ripple} from '../../ripple/directive.js';\nimport {MdRipple} from '../../ripple/ripple.js';\nimport {ARIAExpanded, ARIAHasPopup} from '../../types/aria.js';\n\ntype LinkTarget = '_blank'|'_parent'|'_self'|'_top';\n\n// tslint:disable-next-line:enforce-comments-on-exported-symbols\nexport class IconButton extends LitElement {\n /**\n * Disables the icon button and makes it non-interactive.\n */\n @property({type: Boolean, reflect: true}) disabled = false;\n\n /**\n * Flips the icon if it is in an RTL context at startup.\n */\n @property({type: Boolean}) flipIconInRtl = false;\n\n @ariaProperty\n @property({attribute: 'data-aria-label'})\n override ariaLabel!: string;\n\n @ariaProperty\n @property({attribute: 'data-aria-haspopup'})\n override ariaHasPopup!: ARIAHasPopup;\n\n @ariaProperty\n @property({attribute: 'data-aria-expanded'})\n override ariaExpanded!: ARIAExpanded;\n\n /**\n * Sets the underlying `HTMLAnchorElement`'s `href` resource attribute.\n */\n @property() href = '';\n\n /**\n * Sets the underlying `HTMLAnchorElement`'s `target` attribute.\n */\n @property() target = '';\n\n /**\n * The `aria-label` of the button when the button is toggleable and selected.\n */\n @property({attribute: 'selected-aria-label', reflect: true})\n selectedAriaLabel!: string;\n\n /**\n * When true, the button will toggle between selected and unselected\n * states\n */\n @property({type: Boolean}) toggle = false;\n\n /**\n * Sets the selected state. When false, displays the default icon. When true,\n * displays the `selectedIcon`, or the default icon If no `selectedIcon` is\n * provided.\n */\n @property({type: Boolean, reflect: true}) selected = false;\n\n @query('button') protected buttonElement!: HTMLElement;\n\n @queryAsync('md-ripple') protected ripple!: Promise<MdRipple|null>;\n\n @state() protected showFocusRing = false;\n\n @state() protected showRipple = false;\n\n @state() protected flipIcon: boolean = isRtl(this, this.flipIconInRtl);\n\n protected getRipple = () => {\n this.showRipple = true;\n return this.ripple;\n };\n\n protected readonly renderRipple = () => {\n return html`<md-ripple ?disabled=\"${\n !this.href && this.disabled}\"></md-ripple>`;\n };\n\n /**\n * Link buttons cannot be disabled.\n */\n override willUpdate() {\n if (this.href) {\n this.disabled = false;\n }\n }\n\n protected override render(): TemplateResult {\n const tag = this.href ? literal`div` : literal`button`;\n const hasToggledAriaLabel = this.ariaLabel && this.selectedAriaLabel;\n const ariaPressedValue = hasToggledAriaLabel ? nothing : this.selected;\n let ariaLabelValue: string|typeof nothing = nothing;\n if (!this.href) {\n ariaLabelValue = (hasToggledAriaLabel && this.selected) ?\n this.selectedAriaLabel :\n this.ariaLabel;\n }\n return staticHtml`<${tag}\n class=\"md3-icon-button ${classMap(this.getRenderClasses())}\"\n aria-label=\"${ariaLabelValue || nothing}\"\n aria-haspopup=\"${!this.href && this.ariaHasPopup || nothing}\"\n aria-expanded=\"${!this.href && this.ariaExpanded || nothing}\"\n aria-pressed=\"${ariaPressedValue}\"\n ?disabled=\"${!this.href && this.disabled}\"\n @focus=\"${this.handleFocus}\"\n @blur=\"${this.handleBlur}\"\n @pointerdown=\"${this.handlePointerDown}\"\n @click=\"${this.handleClick}\"\n ${ripple(this.getRipple)}>\n ${this.renderFocusRing()}\n ${when(this.showRipple, this.renderRipple)}\n ${!this.selected ? this.renderIcon() : nothing}\n ${this.selected ? this.renderSelectedIcon() : nothing}\n ${this.renderTouchTarget()}\n ${this.href && this.renderLink()}\n </${tag}>`;\n }\n\n protected renderLink() {\n return html`<a class=\"md3-icon-button__link\" href=\"${this.href}\"\n target=\"${this.target as LinkTarget || nothing}\"\n @focus=\"${this.handleFocus}\"\n @blur=\"${this.handleBlur}\"\n aria-label=\"${this.ariaLabel || nothing}\"></a>`;\n }\n\n protected getRenderClasses(): ClassInfo {\n return {\n 'md3-icon-button--flip-icon': this.flipIcon,\n 'md3-icon-button--selected': this.toggle && this.selected,\n };\n }\n\n protected renderIcon(): TemplateResult {\n return html`<md-icon class=\"md3-icon-button__icon\"><slot></slot></md-icon>`;\n }\n\n protected renderSelectedIcon() {\n // Use default slot as fallback to not require specifying multiple icons\n return html`<md-icon class=\"md3-icon-button__icon md3-icon-button__icon--selected\"><slot name=\"selectedIcon\"><slot></slot></slot></md-icon>`;\n }\n\n protected renderTouchTarget(): TemplateResult {\n return html`<span class=\"md3-icon-button__touch\"></span>`;\n }\n\n protected renderFocusRing(): TemplateResult {\n return html`<md-focus-ring .visible=\"${\n this.showFocusRing}\"></md-focus-ring>`;\n }\n\n override connectedCallback() {\n this.flipIcon = isRtl(this, this.flipIconInRtl);\n super.connectedCallback();\n }\n\n handlePointerDown() {\n pointerPress();\n this.showFocusRing = shouldShowStrongFocus();\n }\n\n protected handleFocus() {\n this.showFocusRing = shouldShowStrongFocus();\n }\n\n protected handleBlur() {\n this.showFocusRing = false;\n }\n\n protected handleClick() {\n if (!this.toggle || this.disabled) {\n return;\n }\n\n this.selected = !this.selected;\n this.dispatchEvent(\n new InputEvent('input', {bubbles: true, composed: true}));\n // Bubbles but does not compose to mimic native browser <input> & <select>\n // Additionally, native change event is not an InputEvent.\n this.dispatchEvent(new Event('change', {bubbles: true}));\n }\n}\n"]}
@@ -4,6 +4,6 @@
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
6
  import { css } from 'lit';
7
- export const styles = css `:host{--_container-shape-start-start: var(--md-outlined-icon-button-container-shape-start-start, var(--md-outlined-icon-button-container-shape, 9999px));--_container-shape-start-end: var(--md-outlined-icon-button-container-shape-start-end, var(--md-outlined-icon-button-container-shape, 9999px));--_container-shape-end-end: var(--md-outlined-icon-button-container-shape-end-end, var(--md-outlined-icon-button-container-shape, 9999px));--_container-shape-end-start: var(--md-outlined-icon-button-container-shape-end-start, var(--md-outlined-icon-button-container-shape, 9999px));--_container-size: var(--md-outlined-icon-button-container-size, 40px);--_disabled-icon-color: var(--md-outlined-icon-button-disabled-icon-color, rgb(var(--md-sys-color-on-surface-rgb, 28, 27, 31), 0.38));--_disabled-selected-container-color: var(--md-outlined-icon-button-disabled-selected-container-color, rgb(var(--md-sys-color-on-surface-rgb, 28, 27, 31), 0.12));--_disabled-unselected-outline-color: var(--md-outlined-icon-button-disabled-unselected-outline-color, var(--md-sys-color-on-surface, #1c1b1f));--_disabled-unselected-outline-opacity: var(--md-outlined-icon-button-disabled-unselected-outline-opacity, 0.12);--_focus-state-layer-opacity: var(--md-outlined-icon-button-focus-state-layer-opacity, 0.08);--_hover-state-layer-opacity: var(--md-outlined-icon-button-hover-state-layer-opacity, 0.08);--_icon-size: var(--md-outlined-icon-button-icon-size, 24px);--_pressed-state-layer-opacity: var(--md-outlined-icon-button-pressed-state-layer-opacity, 0.12);--_selected-container-color: var(--md-outlined-icon-button-selected-container-color, var(--md-sys-color-inverse-surface, #313033));--_selected-focus-icon-color: var(--md-outlined-icon-button-selected-focus-icon-color, var(--md-sys-color-inverse-on-surface, #f4eff4));--_selected-focus-state-layer-color: var(--md-outlined-icon-button-selected-focus-state-layer-color, var(--md-sys-color-inverse-on-surface, #f4eff4));--_selected-hover-icon-color: var(--md-outlined-icon-button-selected-hover-icon-color, var(--md-sys-color-inverse-on-surface, #f4eff4));--_selected-hover-state-layer-color: var(--md-outlined-icon-button-selected-hover-state-layer-color, var(--md-sys-color-inverse-on-surface, #f4eff4));--_selected-icon-color: var(--md-outlined-icon-button-selected-icon-color, var(--md-sys-color-inverse-on-surface, #f4eff4));--_selected-pressed-icon-color: var(--md-outlined-icon-button-selected-pressed-icon-color, var(--md-sys-color-inverse-on-surface, #f4eff4));--_selected-pressed-state-layer-color: var(--md-outlined-icon-button-selected-pressed-state-layer-color, var(--md-sys-color-inverse-on-surface, #f4eff4));--_unselected-focus-icon-color: var(--md-outlined-icon-button-unselected-focus-icon-color, var(--md-sys-color-on-surface-variant, #49454f));--_unselected-focus-state-layer-color: var(--md-outlined-icon-button-unselected-focus-state-layer-color, var(--md-sys-color-on-surface-variant, #49454f));--_unselected-hover-icon-color: var(--md-outlined-icon-button-unselected-hover-icon-color, var(--md-sys-color-on-surface-variant, #49454f));--_unselected-hover-state-layer-color: var(--md-outlined-icon-button-unselected-hover-state-layer-color, var(--md-sys-color-on-surface-variant, #49454f));--_unselected-icon-color: var(--md-outlined-icon-button-unselected-icon-color, var(--md-sys-color-on-surface-variant, #49454f));--_unselected-outline-color: var(--md-outlined-icon-button-unselected-outline-color, var(--md-sys-color-outline, #79747e));--_unselected-outline-width: var(--md-outlined-icon-button-unselected-outline-width, 1px);--_unselected-pressed-icon-color: var(--md-outlined-icon-button-unselected-pressed-icon-color, var(--md-sys-color-on-surface, #1c1b1f));--_unselected-pressed-state-layer-color: var(--md-outlined-icon-button-unselected-pressed-state-layer-color, var(--md-sys-color-on-surface, #1c1b1f));--md-focus-ring-shape-start-start:var(--md-focus-ring-shape, var(--_container-shape-start-start));--md-focus-ring-shape-start-end:var(--md-focus-ring-shape, var(--_container-shape-start-end));--md-focus-ring-shape-end-end:var(--md-focus-ring-shape, var(--_container-shape-end-end));--md-focus-ring-shape-end-start:var(--md-focus-ring-shape, var(--_container-shape-end-start)))))}.md3-icon-button--outlined{background-color:rgba(0,0,0,0);color:var(--_unselected-icon-color);--md-ripple-focus-color:var(--_unselected-focus-state-layer-color);--md-ripple-focus-opacity:var(--_focus-state-layer-opacity);--md-ripple-hover-color:var(--_unselected-hover-state-layer-color);--md-ripple-hover-opacity:var(--_hover-state-layer-opacity);--md-ripple-pressed-color:var(--_unselected-pressed-state-layer-color);--md-ripple-pressed-opacity:var(--_pressed-state-layer-opacity)}.md3-icon-button--outlined::before{border-color:var(--_unselected-outline-color);border-width:var(--_unselected-outline-width)}.md3-icon-button--outlined:hover{color:var(--_unselected-hover-icon-color)}.md3-icon-button--outlined:focus{color:var(--_unselected-focus-icon-color)}.md3-icon-button--outlined:active{color:var(--_unselected-pressed-icon-color)}.md3-icon-button--outlined:disabled{color:var(--_disabled-icon-color)}.md3-icon-button--outlined:disabled::before{border-color:var(--_disabled-unselected-outline-color);opacity:var(--_disabled-unselected-outline-opacity)}.md3-icon-button--outlined::before{block-size:100%;border-style:solid;border-radius:inherit;box-sizing:border-box;content:"";inline-size:100%;inset:0;pointer-events:none;position:absolute}.md3-icon-button--outlined.md3-icon-button--selected::before{border-width:0}.md3-icon-button--selected{--md-ripple-focus-color:var(--_selected-focus-state-layer-color);--md-ripple-focus-opacity:var(--_focus-state-layer-opacity);--md-ripple-hover-color:var(--_selected-hover-state-layer-color);--md-ripple-hover-opacity:var(--_hover-state-layer-opacity);--md-ripple-pressed-color:var(--_selected-pressed-state-layer-color);--md-ripple-pressed-opacity:var(--_pressed-state-layer-opacity)}.md3-icon-button--selected:not(:disabled){background-color:var(--_selected-container-color);color:var(--_selected-icon-color)}.md3-icon-button--selected:not(:disabled):hover{color:var(--_selected-hover-icon-color)}.md3-icon-button--selected:not(:disabled):focus{color:var(--_selected-focus-icon-color)}.md3-icon-button--selected:not(:disabled):active{color:var(--_selected-pressed-icon-color)}.md3-icon-button--selected:disabled{background-color:var(--_disabled-selected-container-color)}@media(forced-colors: active){.md3-icon-button--selected::before{border-color:var(--_unselected-outline-color);border-width:var(--_unselected-outline-width)}.md3-icon-button--selected:disabled::before{border-color:var(--_disabled-unselected-outline-color);opacity:var(--_disabled-unselected-outline-opacity)}}/*# sourceMappingURL=outlined-styles.css.map */
7
+ export const styles = css `:host{--_container-shape-start-start: var(--md-outlined-icon-button-container-shape-start-start, var(--md-outlined-icon-button-container-shape, 9999px));--_container-shape-start-end: var(--md-outlined-icon-button-container-shape-start-end, var(--md-outlined-icon-button-container-shape, 9999px));--_container-shape-end-end: var(--md-outlined-icon-button-container-shape-end-end, var(--md-outlined-icon-button-container-shape, 9999px));--_container-shape-end-start: var(--md-outlined-icon-button-container-shape-end-start, var(--md-outlined-icon-button-container-shape, 9999px));--_container-size: var(--md-outlined-icon-button-container-size, 40px);--_disabled-icon-color: var(--md-outlined-icon-button-disabled-icon-color, rgb(var(--md-sys-color-on-surface-rgb, 29, 27, 32), 0.38));--_disabled-selected-container-color: var(--md-outlined-icon-button-disabled-selected-container-color, rgb(var(--md-sys-color-on-surface-rgb, 29, 27, 32), 0.12));--_disabled-unselected-outline-color: var(--md-outlined-icon-button-disabled-unselected-outline-color, var(--md-sys-color-on-surface, #1d1b20));--_disabled-unselected-outline-opacity: var(--md-outlined-icon-button-disabled-unselected-outline-opacity, 0.12);--_focus-state-layer-opacity: var(--md-outlined-icon-button-focus-state-layer-opacity, 0.08);--_hover-state-layer-opacity: var(--md-outlined-icon-button-hover-state-layer-opacity, 0.08);--_icon-size: var(--md-outlined-icon-button-icon-size, 24px);--_pressed-state-layer-opacity: var(--md-outlined-icon-button-pressed-state-layer-opacity, 0.12);--_selected-container-color: var(--md-outlined-icon-button-selected-container-color, var(--md-sys-color-inverse-surface, #322f35));--_selected-focus-icon-color: var(--md-outlined-icon-button-selected-focus-icon-color, var(--md-sys-color-inverse-on-surface, #f5eff7));--_selected-focus-state-layer-color: var(--md-outlined-icon-button-selected-focus-state-layer-color, var(--md-sys-color-inverse-on-surface, #f5eff7));--_selected-hover-icon-color: var(--md-outlined-icon-button-selected-hover-icon-color, var(--md-sys-color-inverse-on-surface, #f5eff7));--_selected-hover-state-layer-color: var(--md-outlined-icon-button-selected-hover-state-layer-color, var(--md-sys-color-inverse-on-surface, #f5eff7));--_selected-icon-color: var(--md-outlined-icon-button-selected-icon-color, var(--md-sys-color-inverse-on-surface, #f5eff7));--_selected-pressed-icon-color: var(--md-outlined-icon-button-selected-pressed-icon-color, var(--md-sys-color-inverse-on-surface, #f5eff7));--_selected-pressed-state-layer-color: var(--md-outlined-icon-button-selected-pressed-state-layer-color, var(--md-sys-color-inverse-on-surface, #f5eff7));--_unselected-focus-icon-color: var(--md-outlined-icon-button-unselected-focus-icon-color, var(--md-sys-color-on-surface-variant, #49454f));--_unselected-focus-state-layer-color: var(--md-outlined-icon-button-unselected-focus-state-layer-color, var(--md-sys-color-on-surface-variant, #49454f));--_unselected-hover-icon-color: var(--md-outlined-icon-button-unselected-hover-icon-color, var(--md-sys-color-on-surface-variant, #49454f));--_unselected-hover-state-layer-color: var(--md-outlined-icon-button-unselected-hover-state-layer-color, var(--md-sys-color-on-surface-variant, #49454f));--_unselected-icon-color: var(--md-outlined-icon-button-unselected-icon-color, var(--md-sys-color-on-surface-variant, #49454f));--_unselected-outline-color: var(--md-outlined-icon-button-unselected-outline-color, var(--md-sys-color-outline, #79747e));--_unselected-outline-width: var(--md-outlined-icon-button-unselected-outline-width, 1px);--_unselected-pressed-icon-color: var(--md-outlined-icon-button-unselected-pressed-icon-color, var(--md-sys-color-on-surface, #1d1b20));--_unselected-pressed-state-layer-color: var(--md-outlined-icon-button-unselected-pressed-state-layer-color, var(--md-sys-color-on-surface, #1d1b20))}.md3-icon-button--outlined{background-color:rgba(0,0,0,0);color:var(--_unselected-icon-color);--md-ripple-focus-color:var(--_unselected-focus-state-layer-color);--md-ripple-focus-opacity:var(--_focus-state-layer-opacity);--md-ripple-hover-color:var(--_unselected-hover-state-layer-color);--md-ripple-hover-opacity:var(--_hover-state-layer-opacity);--md-ripple-pressed-color:var(--_unselected-pressed-state-layer-color);--md-ripple-pressed-opacity:var(--_pressed-state-layer-opacity)}.md3-icon-button--outlined::before{border-color:var(--_unselected-outline-color);border-width:var(--_unselected-outline-width)}.md3-icon-button--outlined:hover{color:var(--_unselected-hover-icon-color)}.md3-icon-button--outlined:focus{color:var(--_unselected-focus-icon-color)}.md3-icon-button--outlined:active{color:var(--_unselected-pressed-icon-color)}.md3-icon-button--outlined:disabled{color:var(--_disabled-icon-color)}.md3-icon-button--outlined:disabled::before{border-color:var(--_disabled-unselected-outline-color);opacity:var(--_disabled-unselected-outline-opacity)}.md3-icon-button--outlined::before{block-size:100%;border-style:solid;border-radius:inherit;box-sizing:border-box;content:"";inline-size:100%;inset:0;pointer-events:none;position:absolute}.md3-icon-button--outlined.md3-icon-button--selected::before{border-width:0}.md3-icon-button--selected{--md-ripple-focus-color:var(--_selected-focus-state-layer-color);--md-ripple-focus-opacity:var(--_focus-state-layer-opacity);--md-ripple-hover-color:var(--_selected-hover-state-layer-color);--md-ripple-hover-opacity:var(--_hover-state-layer-opacity);--md-ripple-pressed-color:var(--_selected-pressed-state-layer-color);--md-ripple-pressed-opacity:var(--_pressed-state-layer-opacity)}.md3-icon-button--selected:not(:disabled){background-color:var(--_selected-container-color);color:var(--_selected-icon-color)}.md3-icon-button--selected:not(:disabled):hover{color:var(--_selected-hover-icon-color)}.md3-icon-button--selected:not(:disabled):focus{color:var(--_selected-focus-icon-color)}.md3-icon-button--selected:not(:disabled):active{color:var(--_selected-pressed-icon-color)}.md3-icon-button--selected:disabled{background-color:var(--_disabled-selected-container-color)}@media(forced-colors: active){.md3-icon-button--selected::before{border-color:var(--_unselected-outline-color);border-width:var(--_unselected-outline-width)}.md3-icon-button--selected:disabled::before{border-color:var(--_disabled-unselected-outline-color);opacity:var(--_disabled-unselected-outline-opacity)}}/*# sourceMappingURL=outlined-styles.css.map */
8
8
  `;
9
9
  //# sourceMappingURL=outlined-styles.css.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"outlined-styles.css.js","sourceRoot":"","sources":["outlined-styles.css.ts"],"names":[],"mappings":"AAAA;;;;IAII;AACH,OAAO,EAAC,GAAG,EAAC,MAAM,KAAK,CAAC;AACxB,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA;CACzB,CAAC","sourcesContent":["/**\n * @license\n * Copyright 2022 Google LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n import {css} from 'lit';\n export const styles = css`:host{--_container-shape-start-start: var(--md-outlined-icon-button-container-shape-start-start, var(--md-outlined-icon-button-container-shape, 9999px));--_container-shape-start-end: var(--md-outlined-icon-button-container-shape-start-end, var(--md-outlined-icon-button-container-shape, 9999px));--_container-shape-end-end: var(--md-outlined-icon-button-container-shape-end-end, var(--md-outlined-icon-button-container-shape, 9999px));--_container-shape-end-start: var(--md-outlined-icon-button-container-shape-end-start, var(--md-outlined-icon-button-container-shape, 9999px));--_container-size: var(--md-outlined-icon-button-container-size, 40px);--_disabled-icon-color: var(--md-outlined-icon-button-disabled-icon-color, rgb(var(--md-sys-color-on-surface-rgb, 28, 27, 31), 0.38));--_disabled-selected-container-color: var(--md-outlined-icon-button-disabled-selected-container-color, rgb(var(--md-sys-color-on-surface-rgb, 28, 27, 31), 0.12));--_disabled-unselected-outline-color: var(--md-outlined-icon-button-disabled-unselected-outline-color, var(--md-sys-color-on-surface, #1c1b1f));--_disabled-unselected-outline-opacity: var(--md-outlined-icon-button-disabled-unselected-outline-opacity, 0.12);--_focus-state-layer-opacity: var(--md-outlined-icon-button-focus-state-layer-opacity, 0.08);--_hover-state-layer-opacity: var(--md-outlined-icon-button-hover-state-layer-opacity, 0.08);--_icon-size: var(--md-outlined-icon-button-icon-size, 24px);--_pressed-state-layer-opacity: var(--md-outlined-icon-button-pressed-state-layer-opacity, 0.12);--_selected-container-color: var(--md-outlined-icon-button-selected-container-color, var(--md-sys-color-inverse-surface, #313033));--_selected-focus-icon-color: var(--md-outlined-icon-button-selected-focus-icon-color, var(--md-sys-color-inverse-on-surface, #f4eff4));--_selected-focus-state-layer-color: var(--md-outlined-icon-button-selected-focus-state-layer-color, var(--md-sys-color-inverse-on-surface, #f4eff4));--_selected-hover-icon-color: var(--md-outlined-icon-button-selected-hover-icon-color, var(--md-sys-color-inverse-on-surface, #f4eff4));--_selected-hover-state-layer-color: var(--md-outlined-icon-button-selected-hover-state-layer-color, var(--md-sys-color-inverse-on-surface, #f4eff4));--_selected-icon-color: var(--md-outlined-icon-button-selected-icon-color, var(--md-sys-color-inverse-on-surface, #f4eff4));--_selected-pressed-icon-color: var(--md-outlined-icon-button-selected-pressed-icon-color, var(--md-sys-color-inverse-on-surface, #f4eff4));--_selected-pressed-state-layer-color: var(--md-outlined-icon-button-selected-pressed-state-layer-color, var(--md-sys-color-inverse-on-surface, #f4eff4));--_unselected-focus-icon-color: var(--md-outlined-icon-button-unselected-focus-icon-color, var(--md-sys-color-on-surface-variant, #49454f));--_unselected-focus-state-layer-color: var(--md-outlined-icon-button-unselected-focus-state-layer-color, var(--md-sys-color-on-surface-variant, #49454f));--_unselected-hover-icon-color: var(--md-outlined-icon-button-unselected-hover-icon-color, var(--md-sys-color-on-surface-variant, #49454f));--_unselected-hover-state-layer-color: var(--md-outlined-icon-button-unselected-hover-state-layer-color, var(--md-sys-color-on-surface-variant, #49454f));--_unselected-icon-color: var(--md-outlined-icon-button-unselected-icon-color, var(--md-sys-color-on-surface-variant, #49454f));--_unselected-outline-color: var(--md-outlined-icon-button-unselected-outline-color, var(--md-sys-color-outline, #79747e));--_unselected-outline-width: var(--md-outlined-icon-button-unselected-outline-width, 1px);--_unselected-pressed-icon-color: var(--md-outlined-icon-button-unselected-pressed-icon-color, var(--md-sys-color-on-surface, #1c1b1f));--_unselected-pressed-state-layer-color: var(--md-outlined-icon-button-unselected-pressed-state-layer-color, var(--md-sys-color-on-surface, #1c1b1f));--md-focus-ring-shape-start-start:var(--md-focus-ring-shape, var(--_container-shape-start-start));--md-focus-ring-shape-start-end:var(--md-focus-ring-shape, var(--_container-shape-start-end));--md-focus-ring-shape-end-end:var(--md-focus-ring-shape, var(--_container-shape-end-end));--md-focus-ring-shape-end-start:var(--md-focus-ring-shape, var(--_container-shape-end-start)))))}.md3-icon-button--outlined{background-color:rgba(0,0,0,0);color:var(--_unselected-icon-color);--md-ripple-focus-color:var(--_unselected-focus-state-layer-color);--md-ripple-focus-opacity:var(--_focus-state-layer-opacity);--md-ripple-hover-color:var(--_unselected-hover-state-layer-color);--md-ripple-hover-opacity:var(--_hover-state-layer-opacity);--md-ripple-pressed-color:var(--_unselected-pressed-state-layer-color);--md-ripple-pressed-opacity:var(--_pressed-state-layer-opacity)}.md3-icon-button--outlined::before{border-color:var(--_unselected-outline-color);border-width:var(--_unselected-outline-width)}.md3-icon-button--outlined:hover{color:var(--_unselected-hover-icon-color)}.md3-icon-button--outlined:focus{color:var(--_unselected-focus-icon-color)}.md3-icon-button--outlined:active{color:var(--_unselected-pressed-icon-color)}.md3-icon-button--outlined:disabled{color:var(--_disabled-icon-color)}.md3-icon-button--outlined:disabled::before{border-color:var(--_disabled-unselected-outline-color);opacity:var(--_disabled-unselected-outline-opacity)}.md3-icon-button--outlined::before{block-size:100%;border-style:solid;border-radius:inherit;box-sizing:border-box;content:\"\";inline-size:100%;inset:0;pointer-events:none;position:absolute}.md3-icon-button--outlined.md3-icon-button--selected::before{border-width:0}.md3-icon-button--selected{--md-ripple-focus-color:var(--_selected-focus-state-layer-color);--md-ripple-focus-opacity:var(--_focus-state-layer-opacity);--md-ripple-hover-color:var(--_selected-hover-state-layer-color);--md-ripple-hover-opacity:var(--_hover-state-layer-opacity);--md-ripple-pressed-color:var(--_selected-pressed-state-layer-color);--md-ripple-pressed-opacity:var(--_pressed-state-layer-opacity)}.md3-icon-button--selected:not(:disabled){background-color:var(--_selected-container-color);color:var(--_selected-icon-color)}.md3-icon-button--selected:not(:disabled):hover{color:var(--_selected-hover-icon-color)}.md3-icon-button--selected:not(:disabled):focus{color:var(--_selected-focus-icon-color)}.md3-icon-button--selected:not(:disabled):active{color:var(--_selected-pressed-icon-color)}.md3-icon-button--selected:disabled{background-color:var(--_disabled-selected-container-color)}@media(forced-colors: active){.md3-icon-button--selected::before{border-color:var(--_unselected-outline-color);border-width:var(--_unselected-outline-width)}.md3-icon-button--selected:disabled::before{border-color:var(--_disabled-unselected-outline-color);opacity:var(--_disabled-unselected-outline-opacity)}}/*# sourceMappingURL=outlined-styles.css.map */\n`;\n "]}
1
+ {"version":3,"file":"outlined-styles.css.js","sourceRoot":"","sources":["outlined-styles.css.ts"],"names":[],"mappings":"AAAA;;;;IAII;AACH,OAAO,EAAC,GAAG,EAAC,MAAM,KAAK,CAAC;AACxB,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA;CACzB,CAAC","sourcesContent":["/**\n * @license\n * Copyright 2022 Google LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n import {css} from 'lit';\n export const styles = css`:host{--_container-shape-start-start: var(--md-outlined-icon-button-container-shape-start-start, var(--md-outlined-icon-button-container-shape, 9999px));--_container-shape-start-end: var(--md-outlined-icon-button-container-shape-start-end, var(--md-outlined-icon-button-container-shape, 9999px));--_container-shape-end-end: var(--md-outlined-icon-button-container-shape-end-end, var(--md-outlined-icon-button-container-shape, 9999px));--_container-shape-end-start: var(--md-outlined-icon-button-container-shape-end-start, var(--md-outlined-icon-button-container-shape, 9999px));--_container-size: var(--md-outlined-icon-button-container-size, 40px);--_disabled-icon-color: var(--md-outlined-icon-button-disabled-icon-color, rgb(var(--md-sys-color-on-surface-rgb, 29, 27, 32), 0.38));--_disabled-selected-container-color: var(--md-outlined-icon-button-disabled-selected-container-color, rgb(var(--md-sys-color-on-surface-rgb, 29, 27, 32), 0.12));--_disabled-unselected-outline-color: var(--md-outlined-icon-button-disabled-unselected-outline-color, var(--md-sys-color-on-surface, #1d1b20));--_disabled-unselected-outline-opacity: var(--md-outlined-icon-button-disabled-unselected-outline-opacity, 0.12);--_focus-state-layer-opacity: var(--md-outlined-icon-button-focus-state-layer-opacity, 0.08);--_hover-state-layer-opacity: var(--md-outlined-icon-button-hover-state-layer-opacity, 0.08);--_icon-size: var(--md-outlined-icon-button-icon-size, 24px);--_pressed-state-layer-opacity: var(--md-outlined-icon-button-pressed-state-layer-opacity, 0.12);--_selected-container-color: var(--md-outlined-icon-button-selected-container-color, var(--md-sys-color-inverse-surface, #322f35));--_selected-focus-icon-color: var(--md-outlined-icon-button-selected-focus-icon-color, var(--md-sys-color-inverse-on-surface, #f5eff7));--_selected-focus-state-layer-color: var(--md-outlined-icon-button-selected-focus-state-layer-color, var(--md-sys-color-inverse-on-surface, #f5eff7));--_selected-hover-icon-color: var(--md-outlined-icon-button-selected-hover-icon-color, var(--md-sys-color-inverse-on-surface, #f5eff7));--_selected-hover-state-layer-color: var(--md-outlined-icon-button-selected-hover-state-layer-color, var(--md-sys-color-inverse-on-surface, #f5eff7));--_selected-icon-color: var(--md-outlined-icon-button-selected-icon-color, var(--md-sys-color-inverse-on-surface, #f5eff7));--_selected-pressed-icon-color: var(--md-outlined-icon-button-selected-pressed-icon-color, var(--md-sys-color-inverse-on-surface, #f5eff7));--_selected-pressed-state-layer-color: var(--md-outlined-icon-button-selected-pressed-state-layer-color, var(--md-sys-color-inverse-on-surface, #f5eff7));--_unselected-focus-icon-color: var(--md-outlined-icon-button-unselected-focus-icon-color, var(--md-sys-color-on-surface-variant, #49454f));--_unselected-focus-state-layer-color: var(--md-outlined-icon-button-unselected-focus-state-layer-color, var(--md-sys-color-on-surface-variant, #49454f));--_unselected-hover-icon-color: var(--md-outlined-icon-button-unselected-hover-icon-color, var(--md-sys-color-on-surface-variant, #49454f));--_unselected-hover-state-layer-color: var(--md-outlined-icon-button-unselected-hover-state-layer-color, var(--md-sys-color-on-surface-variant, #49454f));--_unselected-icon-color: var(--md-outlined-icon-button-unselected-icon-color, var(--md-sys-color-on-surface-variant, #49454f));--_unselected-outline-color: var(--md-outlined-icon-button-unselected-outline-color, var(--md-sys-color-outline, #79747e));--_unselected-outline-width: var(--md-outlined-icon-button-unselected-outline-width, 1px);--_unselected-pressed-icon-color: var(--md-outlined-icon-button-unselected-pressed-icon-color, var(--md-sys-color-on-surface, #1d1b20));--_unselected-pressed-state-layer-color: var(--md-outlined-icon-button-unselected-pressed-state-layer-color, var(--md-sys-color-on-surface, #1d1b20))}.md3-icon-button--outlined{background-color:rgba(0,0,0,0);color:var(--_unselected-icon-color);--md-ripple-focus-color:var(--_unselected-focus-state-layer-color);--md-ripple-focus-opacity:var(--_focus-state-layer-opacity);--md-ripple-hover-color:var(--_unselected-hover-state-layer-color);--md-ripple-hover-opacity:var(--_hover-state-layer-opacity);--md-ripple-pressed-color:var(--_unselected-pressed-state-layer-color);--md-ripple-pressed-opacity:var(--_pressed-state-layer-opacity)}.md3-icon-button--outlined::before{border-color:var(--_unselected-outline-color);border-width:var(--_unselected-outline-width)}.md3-icon-button--outlined:hover{color:var(--_unselected-hover-icon-color)}.md3-icon-button--outlined:focus{color:var(--_unselected-focus-icon-color)}.md3-icon-button--outlined:active{color:var(--_unselected-pressed-icon-color)}.md3-icon-button--outlined:disabled{color:var(--_disabled-icon-color)}.md3-icon-button--outlined:disabled::before{border-color:var(--_disabled-unselected-outline-color);opacity:var(--_disabled-unselected-outline-opacity)}.md3-icon-button--outlined::before{block-size:100%;border-style:solid;border-radius:inherit;box-sizing:border-box;content:\"\";inline-size:100%;inset:0;pointer-events:none;position:absolute}.md3-icon-button--outlined.md3-icon-button--selected::before{border-width:0}.md3-icon-button--selected{--md-ripple-focus-color:var(--_selected-focus-state-layer-color);--md-ripple-focus-opacity:var(--_focus-state-layer-opacity);--md-ripple-hover-color:var(--_selected-hover-state-layer-color);--md-ripple-hover-opacity:var(--_hover-state-layer-opacity);--md-ripple-pressed-color:var(--_selected-pressed-state-layer-color);--md-ripple-pressed-opacity:var(--_pressed-state-layer-opacity)}.md3-icon-button--selected:not(:disabled){background-color:var(--_selected-container-color);color:var(--_selected-icon-color)}.md3-icon-button--selected:not(:disabled):hover{color:var(--_selected-hover-icon-color)}.md3-icon-button--selected:not(:disabled):focus{color:var(--_selected-focus-icon-color)}.md3-icon-button--selected:not(:disabled):active{color:var(--_selected-pressed-icon-color)}.md3-icon-button--selected:disabled{background-color:var(--_disabled-selected-container-color)}@media(forced-colors: active){.md3-icon-button--selected::before{border-color:var(--_unselected-outline-color);border-width:var(--_unselected-outline-width)}.md3-icon-button--selected:disabled::before{border-color:var(--_disabled-unselected-outline-color);opacity:var(--_disabled-unselected-outline-opacity)}}/*# sourceMappingURL=outlined-styles.css.map */\n`;\n "]}
@@ -4,6 +4,6 @@
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
6
  import { css } from 'lit';
7
- export const styles = css `:host{display:inline-flex;outline:none;-webkit-tap-highlight-color:rgba(0,0,0,0);height:max(48px,var(--_container-size));width:max(48px,var(--_container-size));align-items:center;justify-content:center}:host([disabled]){pointer-events:none}.md3-icon-button{align-items:center;border:none;box-sizing:border-box;cursor:pointer;display:flex;justify-content:center;outline:none;position:relative;text-decoration:none;user-select:none;z-index:0;height:var(--_container-size);width:var(--_container-size);border-start-start-radius:var(--_container-shape-start-start);border-start-end-radius:var(--_container-shape-start-end);border-end-start-radius:var(--_container-shape-end-start);border-end-end-radius:var(--_container-shape-end-end)}.md3-icon-button__icon{--md-icon-size:var(--_icon-size);--md-icon-weight:inherit}md-ripple{z-index:-1;border-start-start-radius:var(--_container-shape-start-start);border-start-end-radius:var(--_container-shape-start-end);border-end-start-radius:var(--_container-shape-end-start);border-end-end-radius:var(--_container-shape-end-end)}.md3-icon-button--flip-icon .md3-icon-button__icon{transform:scaleX(-1)}.md3-icon-button__icon{display:inline-flex}.md3-icon-button__link{height:100%;outline:none;position:absolute;width:100%}.md3-icon-button__touch{position:absolute;top:50%;height:48px;left:50%;width:48px;transform:translate(-50%, -50%)}/*# sourceMappingURL=shared-styles.css.map */
7
+ export const styles = css `:host{display:inline-flex;outline:none;-webkit-tap-highlight-color:rgba(0,0,0,0);height:var(--_container-size);width:var(--_container-size);justify-content:center;--md-focus-ring-shape-start-start:var(--md-focus-ring-shape, var(--_container-shape-start-start));--md-focus-ring-shape-start-end:var(--md-focus-ring-shape, var(--_container-shape-start-end));--md-focus-ring-shape-end-end:var(--md-focus-ring-shape, var(--_container-shape-end-end));--md-focus-ring-shape-end-start:var(--md-focus-ring-shape, var(--_container-shape-end-start))}:host([disabled]){pointer-events:none}.md3-icon-button{align-items:center;border:none;box-sizing:border-box;cursor:pointer;display:flex;justify-content:center;outline:none;position:relative;text-decoration:none;user-select:none;z-index:0;flex:1;border-start-start-radius:var(--_container-shape-start-start);border-start-end-radius:var(--_container-shape-start-end);border-end-start-radius:var(--_container-shape-end-start);border-end-end-radius:var(--_container-shape-end-end)}.md3-icon-button__icon{--md-icon-size:var(--_icon-size);--md-icon-weight:inherit}md-ripple{z-index:-1;border-start-start-radius:var(--_container-shape-start-start);border-start-end-radius:var(--_container-shape-start-end);border-end-start-radius:var(--_container-shape-end-start);border-end-end-radius:var(--_container-shape-end-end)}.md3-icon-button--flip-icon .md3-icon-button__icon{transform:scaleX(-1)}.md3-icon-button__icon{display:inline-flex}.md3-icon-button__link{height:100%;outline:none;position:absolute;width:100%}.md3-icon-button__touch{position:absolute;top:50%;height:48px;left:50%;width:48px;transform:translate(-50%, -50%)}/*# sourceMappingURL=shared-styles.css.map */
8
8
  `;
9
9
  //# sourceMappingURL=shared-styles.css.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"shared-styles.css.js","sourceRoot":"","sources":["shared-styles.css.ts"],"names":[],"mappings":"AAAA;;;;IAII;AACH,OAAO,EAAC,GAAG,EAAC,MAAM,KAAK,CAAC;AACxB,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA;CACzB,CAAC","sourcesContent":["/**\n * @license\n * Copyright 2022 Google LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n import {css} from 'lit';\n export const styles = css`:host{display:inline-flex;outline:none;-webkit-tap-highlight-color:rgba(0,0,0,0);height:max(48px,var(--_container-size));width:max(48px,var(--_container-size));align-items:center;justify-content:center}:host([disabled]){pointer-events:none}.md3-icon-button{align-items:center;border:none;box-sizing:border-box;cursor:pointer;display:flex;justify-content:center;outline:none;position:relative;text-decoration:none;user-select:none;z-index:0;height:var(--_container-size);width:var(--_container-size);border-start-start-radius:var(--_container-shape-start-start);border-start-end-radius:var(--_container-shape-start-end);border-end-start-radius:var(--_container-shape-end-start);border-end-end-radius:var(--_container-shape-end-end)}.md3-icon-button__icon{--md-icon-size:var(--_icon-size);--md-icon-weight:inherit}md-ripple{z-index:-1;border-start-start-radius:var(--_container-shape-start-start);border-start-end-radius:var(--_container-shape-start-end);border-end-start-radius:var(--_container-shape-end-start);border-end-end-radius:var(--_container-shape-end-end)}.md3-icon-button--flip-icon .md3-icon-button__icon{transform:scaleX(-1)}.md3-icon-button__icon{display:inline-flex}.md3-icon-button__link{height:100%;outline:none;position:absolute;width:100%}.md3-icon-button__touch{position:absolute;top:50%;height:48px;left:50%;width:48px;transform:translate(-50%, -50%)}/*# sourceMappingURL=shared-styles.css.map */\n`;\n "]}
1
+ {"version":3,"file":"shared-styles.css.js","sourceRoot":"","sources":["shared-styles.css.ts"],"names":[],"mappings":"AAAA;;;;IAII;AACH,OAAO,EAAC,GAAG,EAAC,MAAM,KAAK,CAAC;AACxB,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA;CACzB,CAAC","sourcesContent":["/**\n * @license\n * Copyright 2022 Google LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n import {css} from 'lit';\n export const styles = css`:host{display:inline-flex;outline:none;-webkit-tap-highlight-color:rgba(0,0,0,0);height:var(--_container-size);width:var(--_container-size);justify-content:center;--md-focus-ring-shape-start-start:var(--md-focus-ring-shape, var(--_container-shape-start-start));--md-focus-ring-shape-start-end:var(--md-focus-ring-shape, var(--_container-shape-start-end));--md-focus-ring-shape-end-end:var(--md-focus-ring-shape, var(--_container-shape-end-end));--md-focus-ring-shape-end-start:var(--md-focus-ring-shape, var(--_container-shape-end-start))}:host([disabled]){pointer-events:none}.md3-icon-button{align-items:center;border:none;box-sizing:border-box;cursor:pointer;display:flex;justify-content:center;outline:none;position:relative;text-decoration:none;user-select:none;z-index:0;flex:1;border-start-start-radius:var(--_container-shape-start-start);border-start-end-radius:var(--_container-shape-start-end);border-end-start-radius:var(--_container-shape-end-start);border-end-end-radius:var(--_container-shape-end-end)}.md3-icon-button__icon{--md-icon-size:var(--_icon-size);--md-icon-weight:inherit}md-ripple{z-index:-1;border-start-start-radius:var(--_container-shape-start-start);border-start-end-radius:var(--_container-shape-start-end);border-end-start-radius:var(--_container-shape-end-start);border-end-end-radius:var(--_container-shape-end-end)}.md3-icon-button--flip-icon .md3-icon-button__icon{transform:scaleX(-1)}.md3-icon-button__icon{display:inline-flex}.md3-icon-button__link{height:100%;outline:none;position:absolute;width:100%}.md3-icon-button__touch{position:absolute;top:50%;height:48px;left:50%;width:48px;transform:translate(-50%, -50%)}/*# sourceMappingURL=shared-styles.css.map */\n`;\n "]}
@@ -4,6 +4,6 @@
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
6
  import { css } from 'lit';
7
- export const styles = css `:host{--_state-layer-shape-start-start: var(--md-icon-button-state-layer-shape-start-start, var(--md-icon-button-state-layer-shape, 9999px));--_state-layer-shape-start-end: var(--md-icon-button-state-layer-shape-start-end, var(--md-icon-button-state-layer-shape, 9999px));--_state-layer-shape-end-end: var(--md-icon-button-state-layer-shape-end-end, var(--md-icon-button-state-layer-shape, 9999px));--_state-layer-shape-end-start: var(--md-icon-button-state-layer-shape-end-start, var(--md-icon-button-state-layer-shape, 9999px));--_disabled-icon-color: var(--md-icon-button-disabled-icon-color, rgb(var(--md-sys-color-on-surface-rgb, 28, 27, 31), 0.38));--_icon-size: var(--md-icon-button-icon-size, 24px);--_selected-focus-icon-color: var(--md-icon-button-selected-focus-icon-color, var(--md-sys-color-primary, #6750a4));--_selected-focus-state-layer-color: var(--md-icon-button-selected-focus-state-layer-color, var(--md-sys-color-primary, #6750a4));--_selected-focus-state-layer-opacity: var(--md-icon-button-selected-focus-state-layer-opacity, 0.12);--_selected-hover-icon-color: var(--md-icon-button-selected-hover-icon-color, var(--md-sys-color-primary, #6750a4));--_selected-hover-state-layer-color: var(--md-icon-button-selected-hover-state-layer-color, var(--md-sys-color-primary, #6750a4));--_selected-hover-state-layer-opacity: var(--md-icon-button-selected-hover-state-layer-opacity, 0.08);--_selected-icon-color: var(--md-icon-button-selected-icon-color, var(--md-sys-color-primary, #6750a4));--_selected-pressed-icon-color: var(--md-icon-button-selected-pressed-icon-color, var(--md-sys-color-primary, #6750a4));--_selected-pressed-state-layer-color: var(--md-icon-button-selected-pressed-state-layer-color, var(--md-sys-color-primary, #6750a4));--_selected-pressed-state-layer-opacity: var(--md-icon-button-selected-pressed-state-layer-opacity, 0.12);--_state-layer-size: var(--md-icon-button-state-layer-size, 40px);--_unselected-focus-icon-color: var(--md-icon-button-unselected-focus-icon-color, var(--md-sys-color-on-surface-variant, #49454f));--_unselected-focus-state-layer-color: var(--md-icon-button-unselected-focus-state-layer-color, var(--md-sys-color-on-surface-variant, #49454f));--_unselected-focus-state-layer-opacity: var(--md-icon-button-unselected-focus-state-layer-opacity, 0.12);--_unselected-hover-icon-color: var(--md-icon-button-unselected-hover-icon-color, var(--md-sys-color-on-surface-variant, #49454f));--_unselected-hover-state-layer-color: var(--md-icon-button-unselected-hover-state-layer-color, var(--md-sys-color-on-surface-variant, #49454f));--_unselected-hover-state-layer-opacity: var(--md-icon-button-unselected-hover-state-layer-opacity, 0.08);--_unselected-icon-color: var(--md-icon-button-unselected-icon-color, var(--md-sys-color-on-surface-variant, #49454f));--_unselected-pressed-icon-color: var(--md-icon-button-unselected-pressed-icon-color, var(--md-sys-color-on-surface-variant, #49454f));--_unselected-pressed-state-layer-color: var(--md-icon-button-unselected-pressed-state-layer-color, var(--md-sys-color-on-surface-variant, #49454f));--_unselected-pressed-state-layer-opacity: var(--md-icon-button-unselected-pressed-state-layer-opacity, 0.12);height:max(48px,var(--_state-layer-size));width:max(48px,var(--_state-layer-size));--md-focus-ring-shape-start-start:var(--md-focus-ring-shape, var(--_state-layer-shape-start-start));--md-focus-ring-shape-start-end:var(--md-focus-ring-shape, var(--_state-layer-shape-start-end));--md-focus-ring-shape-end-end:var(--md-focus-ring-shape, var(--_state-layer-shape-end-end));--md-focus-ring-shape-end-start:var(--md-focus-ring-shape, var(--_state-layer-shape-end-start)))))}.md3-icon-button--standard{background-color:rgba(0,0,0,0);color:var(--_unselected-icon-color);height:var(--_state-layer-size);width:var(--_state-layer-size);--md-ripple-focus-color:var(--_unselected-focus-state-layer-color);--md-ripple-focus-opacity:var(--_unselected-focus-state-layer-opacity);--md-ripple-hover-color:var(--_unselected-hover-state-layer-color);--md-ripple-hover-opacity:var(--_unselected-hover-state-layer-opacity);--md-ripple-pressed-color:var(--_unselected-pressed-state-layer-color);--md-ripple-pressed-opacity:var(--_unselected-pressed-state-layer-opacity);--md-ripple-shape:var(--_state-layer-shape-start-start)}.md3-icon-button--standard:hover{color:var(--_unselected-hover-icon-color)}.md3-icon-button--standard:focus{color:var(--_unselected-focus-icon-color)}.md3-icon-button--standard:active{color:var(--_unselected-pressed-icon-color)}.md3-icon-button--standard:disabled{color:var(--_disabled-icon-color)}.md3-icon-button--selected{--md-ripple-focus-color:var(--_selected-focus-state-layer-color);--md-ripple-focus-opacity:var(--_selected-focus-state-layer-opacity);--md-ripple-hover-color:var(--_selected-hover-state-layer-color);--md-ripple-hover-opacity:var(--_selected-hover-state-layer-opacity);--md-ripple-pressed-color:var(--_selected-pressed-state-layer-color);--md-ripple-pressed-opacity:var(--_selected-pressed-state-layer-opacity)}.md3-icon-button--selected:not(:disabled){color:var(--_selected-icon-color)}.md3-icon-button--selected:not(:disabled):hover{color:var(--_selected-hover-icon-color)}.md3-icon-button--selected:not(:disabled):focus{color:var(--_selected-focus-icon-color)}.md3-icon-button--selected:not(:disabled):active{color:var(--_selected-pressed-icon-color)}/*# sourceMappingURL=standard-styles.css.map */
7
+ export const styles = css `:host{--_state-layer-shape-start-start: var(--md-icon-button-state-layer-shape-start-start, var(--md-icon-button-state-layer-shape, 9999px));--_state-layer-shape-start-end: var(--md-icon-button-state-layer-shape-start-end, var(--md-icon-button-state-layer-shape, 9999px));--_state-layer-shape-end-end: var(--md-icon-button-state-layer-shape-end-end, var(--md-icon-button-state-layer-shape, 9999px));--_state-layer-shape-end-start: var(--md-icon-button-state-layer-shape-end-start, var(--md-icon-button-state-layer-shape, 9999px));--_disabled-icon-color: var(--md-icon-button-disabled-icon-color, rgb(var(--md-sys-color-on-surface-rgb, 29, 27, 32), 0.38));--_icon-size: var(--md-icon-button-icon-size, 24px);--_selected-focus-icon-color: var(--md-icon-button-selected-focus-icon-color, var(--md-sys-color-primary, #6750a4));--_selected-focus-state-layer-color: var(--md-icon-button-selected-focus-state-layer-color, var(--md-sys-color-primary, #6750a4));--_selected-focus-state-layer-opacity: var(--md-icon-button-selected-focus-state-layer-opacity, 0.12);--_selected-hover-icon-color: var(--md-icon-button-selected-hover-icon-color, var(--md-sys-color-primary, #6750a4));--_selected-hover-state-layer-color: var(--md-icon-button-selected-hover-state-layer-color, var(--md-sys-color-primary, #6750a4));--_selected-hover-state-layer-opacity: var(--md-icon-button-selected-hover-state-layer-opacity, 0.08);--_selected-icon-color: var(--md-icon-button-selected-icon-color, var(--md-sys-color-primary, #6750a4));--_selected-pressed-icon-color: var(--md-icon-button-selected-pressed-icon-color, var(--md-sys-color-primary, #6750a4));--_selected-pressed-state-layer-color: var(--md-icon-button-selected-pressed-state-layer-color, var(--md-sys-color-primary, #6750a4));--_selected-pressed-state-layer-opacity: var(--md-icon-button-selected-pressed-state-layer-opacity, 0.12);--_state-layer-size: var(--md-icon-button-state-layer-size, 40px);--_unselected-focus-icon-color: var(--md-icon-button-unselected-focus-icon-color, var(--md-sys-color-on-surface-variant, #49454f));--_unselected-focus-state-layer-color: var(--md-icon-button-unselected-focus-state-layer-color, var(--md-sys-color-on-surface-variant, #49454f));--_unselected-focus-state-layer-opacity: var(--md-icon-button-unselected-focus-state-layer-opacity, 0.12);--_unselected-hover-icon-color: var(--md-icon-button-unselected-hover-icon-color, var(--md-sys-color-on-surface-variant, #49454f));--_unselected-hover-state-layer-color: var(--md-icon-button-unselected-hover-state-layer-color, var(--md-sys-color-on-surface-variant, #49454f));--_unselected-hover-state-layer-opacity: var(--md-icon-button-unselected-hover-state-layer-opacity, 0.08);--_unselected-icon-color: var(--md-icon-button-unselected-icon-color, var(--md-sys-color-on-surface-variant, #49454f));--_unselected-pressed-icon-color: var(--md-icon-button-unselected-pressed-icon-color, var(--md-sys-color-on-surface-variant, #49454f));--_unselected-pressed-state-layer-color: var(--md-icon-button-unselected-pressed-state-layer-color, var(--md-sys-color-on-surface-variant, #49454f));--_unselected-pressed-state-layer-opacity: var(--md-icon-button-unselected-pressed-state-layer-opacity, 0.12);height:var(--_state-layer-size);width:var(--_state-layer-size);--md-focus-ring-shape-start-start:var(--md-focus-ring-shape, var(--_state-layer-shape-start-start));--md-focus-ring-shape-start-end:var(--md-focus-ring-shape, var(--_state-layer-shape-start-end));--md-focus-ring-shape-end-end:var(--md-focus-ring-shape, var(--_state-layer-shape-end-end));--md-focus-ring-shape-end-start:var(--md-focus-ring-shape, var(--_state-layer-shape-end-start))}.md3-icon-button--standard{background-color:rgba(0,0,0,0);color:var(--_unselected-icon-color);--md-ripple-focus-color:var(--_unselected-focus-state-layer-color);--md-ripple-focus-opacity:var(--_unselected-focus-state-layer-opacity);--md-ripple-hover-color:var(--_unselected-hover-state-layer-color);--md-ripple-hover-opacity:var(--_unselected-hover-state-layer-opacity);--md-ripple-pressed-color:var(--_unselected-pressed-state-layer-color);--md-ripple-pressed-opacity:var(--_unselected-pressed-state-layer-opacity);--md-ripple-shape:var(--_state-layer-shape-start-start) var(--_state-layer-shape-start-end) var(--_state-layer-shape-end-end) var(--_state-layer-shape-end-start)}.md3-icon-button--standard:hover{color:var(--_unselected-hover-icon-color)}.md3-icon-button--standard:focus{color:var(--_unselected-focus-icon-color)}.md3-icon-button--standard:active{color:var(--_unselected-pressed-icon-color)}.md3-icon-button--standard:disabled{color:var(--_disabled-icon-color)}.md3-icon-button--selected{--md-ripple-focus-color:var(--_selected-focus-state-layer-color);--md-ripple-focus-opacity:var(--_selected-focus-state-layer-opacity);--md-ripple-hover-color:var(--_selected-hover-state-layer-color);--md-ripple-hover-opacity:var(--_selected-hover-state-layer-opacity);--md-ripple-pressed-color:var(--_selected-pressed-state-layer-color);--md-ripple-pressed-opacity:var(--_selected-pressed-state-layer-opacity)}.md3-icon-button--selected:not(:disabled){color:var(--_selected-icon-color)}.md3-icon-button--selected:not(:disabled):hover{color:var(--_selected-hover-icon-color)}.md3-icon-button--selected:not(:disabled):focus{color:var(--_selected-focus-icon-color)}.md3-icon-button--selected:not(:disabled):active{color:var(--_selected-pressed-icon-color)}/*# sourceMappingURL=standard-styles.css.map */
8
8
  `;
9
9
  //# sourceMappingURL=standard-styles.css.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"standard-styles.css.js","sourceRoot":"","sources":["standard-styles.css.ts"],"names":[],"mappings":"AAAA;;;;IAII;AACH,OAAO,EAAC,GAAG,EAAC,MAAM,KAAK,CAAC;AACxB,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA;CACzB,CAAC","sourcesContent":["/**\n * @license\n * Copyright 2022 Google LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n import {css} from 'lit';\n export const styles = css`:host{--_state-layer-shape-start-start: var(--md-icon-button-state-layer-shape-start-start, var(--md-icon-button-state-layer-shape, 9999px));--_state-layer-shape-start-end: var(--md-icon-button-state-layer-shape-start-end, var(--md-icon-button-state-layer-shape, 9999px));--_state-layer-shape-end-end: var(--md-icon-button-state-layer-shape-end-end, var(--md-icon-button-state-layer-shape, 9999px));--_state-layer-shape-end-start: var(--md-icon-button-state-layer-shape-end-start, var(--md-icon-button-state-layer-shape, 9999px));--_disabled-icon-color: var(--md-icon-button-disabled-icon-color, rgb(var(--md-sys-color-on-surface-rgb, 28, 27, 31), 0.38));--_icon-size: var(--md-icon-button-icon-size, 24px);--_selected-focus-icon-color: var(--md-icon-button-selected-focus-icon-color, var(--md-sys-color-primary, #6750a4));--_selected-focus-state-layer-color: var(--md-icon-button-selected-focus-state-layer-color, var(--md-sys-color-primary, #6750a4));--_selected-focus-state-layer-opacity: var(--md-icon-button-selected-focus-state-layer-opacity, 0.12);--_selected-hover-icon-color: var(--md-icon-button-selected-hover-icon-color, var(--md-sys-color-primary, #6750a4));--_selected-hover-state-layer-color: var(--md-icon-button-selected-hover-state-layer-color, var(--md-sys-color-primary, #6750a4));--_selected-hover-state-layer-opacity: var(--md-icon-button-selected-hover-state-layer-opacity, 0.08);--_selected-icon-color: var(--md-icon-button-selected-icon-color, var(--md-sys-color-primary, #6750a4));--_selected-pressed-icon-color: var(--md-icon-button-selected-pressed-icon-color, var(--md-sys-color-primary, #6750a4));--_selected-pressed-state-layer-color: var(--md-icon-button-selected-pressed-state-layer-color, var(--md-sys-color-primary, #6750a4));--_selected-pressed-state-layer-opacity: var(--md-icon-button-selected-pressed-state-layer-opacity, 0.12);--_state-layer-size: var(--md-icon-button-state-layer-size, 40px);--_unselected-focus-icon-color: var(--md-icon-button-unselected-focus-icon-color, var(--md-sys-color-on-surface-variant, #49454f));--_unselected-focus-state-layer-color: var(--md-icon-button-unselected-focus-state-layer-color, var(--md-sys-color-on-surface-variant, #49454f));--_unselected-focus-state-layer-opacity: var(--md-icon-button-unselected-focus-state-layer-opacity, 0.12);--_unselected-hover-icon-color: var(--md-icon-button-unselected-hover-icon-color, var(--md-sys-color-on-surface-variant, #49454f));--_unselected-hover-state-layer-color: var(--md-icon-button-unselected-hover-state-layer-color, var(--md-sys-color-on-surface-variant, #49454f));--_unselected-hover-state-layer-opacity: var(--md-icon-button-unselected-hover-state-layer-opacity, 0.08);--_unselected-icon-color: var(--md-icon-button-unselected-icon-color, var(--md-sys-color-on-surface-variant, #49454f));--_unselected-pressed-icon-color: var(--md-icon-button-unselected-pressed-icon-color, var(--md-sys-color-on-surface-variant, #49454f));--_unselected-pressed-state-layer-color: var(--md-icon-button-unselected-pressed-state-layer-color, var(--md-sys-color-on-surface-variant, #49454f));--_unselected-pressed-state-layer-opacity: var(--md-icon-button-unselected-pressed-state-layer-opacity, 0.12);height:max(48px,var(--_state-layer-size));width:max(48px,var(--_state-layer-size));--md-focus-ring-shape-start-start:var(--md-focus-ring-shape, var(--_state-layer-shape-start-start));--md-focus-ring-shape-start-end:var(--md-focus-ring-shape, var(--_state-layer-shape-start-end));--md-focus-ring-shape-end-end:var(--md-focus-ring-shape, var(--_state-layer-shape-end-end));--md-focus-ring-shape-end-start:var(--md-focus-ring-shape, var(--_state-layer-shape-end-start)))))}.md3-icon-button--standard{background-color:rgba(0,0,0,0);color:var(--_unselected-icon-color);height:var(--_state-layer-size);width:var(--_state-layer-size);--md-ripple-focus-color:var(--_unselected-focus-state-layer-color);--md-ripple-focus-opacity:var(--_unselected-focus-state-layer-opacity);--md-ripple-hover-color:var(--_unselected-hover-state-layer-color);--md-ripple-hover-opacity:var(--_unselected-hover-state-layer-opacity);--md-ripple-pressed-color:var(--_unselected-pressed-state-layer-color);--md-ripple-pressed-opacity:var(--_unselected-pressed-state-layer-opacity);--md-ripple-shape:var(--_state-layer-shape-start-start)}.md3-icon-button--standard:hover{color:var(--_unselected-hover-icon-color)}.md3-icon-button--standard:focus{color:var(--_unselected-focus-icon-color)}.md3-icon-button--standard:active{color:var(--_unselected-pressed-icon-color)}.md3-icon-button--standard:disabled{color:var(--_disabled-icon-color)}.md3-icon-button--selected{--md-ripple-focus-color:var(--_selected-focus-state-layer-color);--md-ripple-focus-opacity:var(--_selected-focus-state-layer-opacity);--md-ripple-hover-color:var(--_selected-hover-state-layer-color);--md-ripple-hover-opacity:var(--_selected-hover-state-layer-opacity);--md-ripple-pressed-color:var(--_selected-pressed-state-layer-color);--md-ripple-pressed-opacity:var(--_selected-pressed-state-layer-opacity)}.md3-icon-button--selected:not(:disabled){color:var(--_selected-icon-color)}.md3-icon-button--selected:not(:disabled):hover{color:var(--_selected-hover-icon-color)}.md3-icon-button--selected:not(:disabled):focus{color:var(--_selected-focus-icon-color)}.md3-icon-button--selected:not(:disabled):active{color:var(--_selected-pressed-icon-color)}/*# sourceMappingURL=standard-styles.css.map */\n`;\n "]}
1
+ {"version":3,"file":"standard-styles.css.js","sourceRoot":"","sources":["standard-styles.css.ts"],"names":[],"mappings":"AAAA;;;;IAII;AACH,OAAO,EAAC,GAAG,EAAC,MAAM,KAAK,CAAC;AACxB,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA;CACzB,CAAC","sourcesContent":["/**\n * @license\n * Copyright 2022 Google LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n import {css} from 'lit';\n export const styles = css`:host{--_state-layer-shape-start-start: var(--md-icon-button-state-layer-shape-start-start, var(--md-icon-button-state-layer-shape, 9999px));--_state-layer-shape-start-end: var(--md-icon-button-state-layer-shape-start-end, var(--md-icon-button-state-layer-shape, 9999px));--_state-layer-shape-end-end: var(--md-icon-button-state-layer-shape-end-end, var(--md-icon-button-state-layer-shape, 9999px));--_state-layer-shape-end-start: var(--md-icon-button-state-layer-shape-end-start, var(--md-icon-button-state-layer-shape, 9999px));--_disabled-icon-color: var(--md-icon-button-disabled-icon-color, rgb(var(--md-sys-color-on-surface-rgb, 29, 27, 32), 0.38));--_icon-size: var(--md-icon-button-icon-size, 24px);--_selected-focus-icon-color: var(--md-icon-button-selected-focus-icon-color, var(--md-sys-color-primary, #6750a4));--_selected-focus-state-layer-color: var(--md-icon-button-selected-focus-state-layer-color, var(--md-sys-color-primary, #6750a4));--_selected-focus-state-layer-opacity: var(--md-icon-button-selected-focus-state-layer-opacity, 0.12);--_selected-hover-icon-color: var(--md-icon-button-selected-hover-icon-color, var(--md-sys-color-primary, #6750a4));--_selected-hover-state-layer-color: var(--md-icon-button-selected-hover-state-layer-color, var(--md-sys-color-primary, #6750a4));--_selected-hover-state-layer-opacity: var(--md-icon-button-selected-hover-state-layer-opacity, 0.08);--_selected-icon-color: var(--md-icon-button-selected-icon-color, var(--md-sys-color-primary, #6750a4));--_selected-pressed-icon-color: var(--md-icon-button-selected-pressed-icon-color, var(--md-sys-color-primary, #6750a4));--_selected-pressed-state-layer-color: var(--md-icon-button-selected-pressed-state-layer-color, var(--md-sys-color-primary, #6750a4));--_selected-pressed-state-layer-opacity: var(--md-icon-button-selected-pressed-state-layer-opacity, 0.12);--_state-layer-size: var(--md-icon-button-state-layer-size, 40px);--_unselected-focus-icon-color: var(--md-icon-button-unselected-focus-icon-color, var(--md-sys-color-on-surface-variant, #49454f));--_unselected-focus-state-layer-color: var(--md-icon-button-unselected-focus-state-layer-color, var(--md-sys-color-on-surface-variant, #49454f));--_unselected-focus-state-layer-opacity: var(--md-icon-button-unselected-focus-state-layer-opacity, 0.12);--_unselected-hover-icon-color: var(--md-icon-button-unselected-hover-icon-color, var(--md-sys-color-on-surface-variant, #49454f));--_unselected-hover-state-layer-color: var(--md-icon-button-unselected-hover-state-layer-color, var(--md-sys-color-on-surface-variant, #49454f));--_unselected-hover-state-layer-opacity: var(--md-icon-button-unselected-hover-state-layer-opacity, 0.08);--_unselected-icon-color: var(--md-icon-button-unselected-icon-color, var(--md-sys-color-on-surface-variant, #49454f));--_unselected-pressed-icon-color: var(--md-icon-button-unselected-pressed-icon-color, var(--md-sys-color-on-surface-variant, #49454f));--_unselected-pressed-state-layer-color: var(--md-icon-button-unselected-pressed-state-layer-color, var(--md-sys-color-on-surface-variant, #49454f));--_unselected-pressed-state-layer-opacity: var(--md-icon-button-unselected-pressed-state-layer-opacity, 0.12);height:var(--_state-layer-size);width:var(--_state-layer-size);--md-focus-ring-shape-start-start:var(--md-focus-ring-shape, var(--_state-layer-shape-start-start));--md-focus-ring-shape-start-end:var(--md-focus-ring-shape, var(--_state-layer-shape-start-end));--md-focus-ring-shape-end-end:var(--md-focus-ring-shape, var(--_state-layer-shape-end-end));--md-focus-ring-shape-end-start:var(--md-focus-ring-shape, var(--_state-layer-shape-end-start))}.md3-icon-button--standard{background-color:rgba(0,0,0,0);color:var(--_unselected-icon-color);--md-ripple-focus-color:var(--_unselected-focus-state-layer-color);--md-ripple-focus-opacity:var(--_unselected-focus-state-layer-opacity);--md-ripple-hover-color:var(--_unselected-hover-state-layer-color);--md-ripple-hover-opacity:var(--_unselected-hover-state-layer-opacity);--md-ripple-pressed-color:var(--_unselected-pressed-state-layer-color);--md-ripple-pressed-opacity:var(--_unselected-pressed-state-layer-opacity);--md-ripple-shape:var(--_state-layer-shape-start-start) var(--_state-layer-shape-start-end) var(--_state-layer-shape-end-end) var(--_state-layer-shape-end-start)}.md3-icon-button--standard:hover{color:var(--_unselected-hover-icon-color)}.md3-icon-button--standard:focus{color:var(--_unselected-focus-icon-color)}.md3-icon-button--standard:active{color:var(--_unselected-pressed-icon-color)}.md3-icon-button--standard:disabled{color:var(--_disabled-icon-color)}.md3-icon-button--selected{--md-ripple-focus-color:var(--_selected-focus-state-layer-color);--md-ripple-focus-opacity:var(--_selected-focus-state-layer-opacity);--md-ripple-hover-color:var(--_selected-hover-state-layer-color);--md-ripple-hover-opacity:var(--_selected-hover-state-layer-opacity);--md-ripple-pressed-color:var(--_selected-pressed-state-layer-color);--md-ripple-pressed-opacity:var(--_selected-pressed-state-layer-opacity)}.md3-icon-button--selected:not(:disabled){color:var(--_selected-icon-color)}.md3-icon-button--selected:not(:disabled):hover{color:var(--_selected-hover-icon-color)}.md3-icon-button--selected:not(:disabled):focus{color:var(--_selected-focus-icon-color)}.md3-icon-button--selected:not(:disabled):active{color:var(--_selected-pressed-icon-color)}/*# sourceMappingURL=standard-styles.css.map */\n`;\n "]}
package/list/harness.d.ts CHANGED
@@ -6,6 +6,7 @@
6
6
  import { Harness } from '../testing/harness.js';
7
7
  import { List } from './lib/list.js';
8
8
  import { ListItemHarness } from './lib/listitem/harness.js';
9
+ export { ListItemHarness } from './lib/listitem/harness.js';
9
10
  /**
10
11
  * Test harness for list.
11
12
  */
package/list/harness.js CHANGED
@@ -5,6 +5,7 @@
5
5
  */
6
6
  import { Harness } from '../testing/harness.js';
7
7
  import { ListItemHarness } from './lib/listitem/harness.js';
8
+ export { ListItemHarness } from './lib/listitem/harness.js';
8
9
  /**
9
10
  * Test harness for list.
10
11
  */
@@ -1 +1 @@
1
- {"version":3,"file":"harness.js","sourceRoot":"","sources":["harness.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAC,OAAO,EAAC,MAAM,uBAAuB,CAAC;AAG9C,OAAO,EAAC,eAAe,EAAC,MAAM,2BAA2B,CAAC;AAE1D;;GAEG;AACH,MAAM,OAAO,WAAY,SAAQ,OAAa;IAC5C;;OAEG;IACgB,KAAK,CAAC,qBAAqB;QAC5C,MAAM,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC;QAClC,OAAO,CAAC,MAAM,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,qBAAqB,EAAE,CAAC;IAC5D,CAAC;IAED,mCAAmC;IACnC,QAAQ;QACN,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,eAAe,CAAC,IAAI,CAAC,CAAC,CAAC;IACrE,CAAC;CACF","sourcesContent":["/**\n * @license\n * Copyright 2022 Google LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport {Harness} from '../testing/harness.js';\n\nimport {List} from './lib/list.js';\nimport {ListItemHarness} from './lib/listitem/harness.js';\n\n/**\n * Test harness for list.\n */\nexport class ListHarness extends Harness<List> {\n /**\n * Returns the first list item element.\n */\n protected override async getInteractiveElement() {\n await this.element.updateComplete;\n return (await this.getItems())[0].getInteractiveElement();\n }\n\n /** @return List item harnesses. */\n getItems() {\n return this.element.items.map((item) => new ListItemHarness(item));\n }\n}\n"]}
1
+ {"version":3,"file":"harness.js","sourceRoot":"","sources":["harness.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAC,OAAO,EAAC,MAAM,uBAAuB,CAAC;AAG9C,OAAO,EAAC,eAAe,EAAC,MAAM,2BAA2B,CAAC;AAE1D,OAAO,EAAC,eAAe,EAAC,MAAM,2BAA2B,CAAC;AAE1D;;GAEG;AACH,MAAM,OAAO,WAAY,SAAQ,OAAa;IAC5C;;OAEG;IACgB,KAAK,CAAC,qBAAqB;QAC5C,MAAM,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC;QAClC,OAAO,CAAC,MAAM,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,qBAAqB,EAAE,CAAC;IAC5D,CAAC;IAED,mCAAmC;IACnC,QAAQ;QACN,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,eAAe,CAAC,IAAI,CAAC,CAAC,CAAC;IACrE,CAAC;CACF","sourcesContent":["/**\n * @license\n * Copyright 2022 Google LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport {Harness} from '../testing/harness.js';\n\nimport {List} from './lib/list.js';\nimport {ListItemHarness} from './lib/listitem/harness.js';\n\nexport {ListItemHarness} from './lib/listitem/harness.js';\n\n/**\n * Test harness for list.\n */\nexport class ListHarness extends Harness<List> {\n /**\n * Returns the first list item element.\n */\n protected override async getInteractiveElement() {\n await this.element.updateComplete;\n return (await this.getItems())[0].getInteractiveElement();\n }\n\n /** @return List item harnesses. */\n getItems() {\n return this.element.items.map((item) => new ListItemHarness(item));\n }\n}\n"]}
@@ -12,7 +12,6 @@
12
12
  @use 'sass:string';
13
13
  // go/keep-sorted end
14
14
  // go/keep-sorted start
15
- @use '../../elevation/lib/elevation';
16
15
  @use '../../sass/theme';
17
16
  @use '../../tokens';
18
17
  @use './listitem/list-item';
@@ -20,8 +19,9 @@
20
19
 
21
20
  @mixin theme($tokens) {
22
21
  $reference: tokens.md-comp-list-values();
23
- $tokens: theme.validate-theme($reference, $tokens);
22
+ $reference: resolve-tokens($reference);
24
23
  $tokens: resolve-tokens($tokens);
24
+ $tokens: theme.validate-theme($reference, $tokens);
25
25
  $tokens: theme.create-theme-vars($tokens, list);
26
26
 
27
27
  @include theme.emit-theme-vars($tokens);
@@ -37,6 +37,7 @@
37
37
  }
38
38
 
39
39
  color: unset;
40
+ min-width: 300px;
40
41
  }
41
42
 
42
43
  .md3-list {
@@ -44,7 +45,7 @@
44
45
  display: block;
45
46
  list-style-type: none;
46
47
  margin: 0;
47
- min-width: 300px;
48
+ min-width: inherit;
48
49
  outline: none;
49
50
  padding: 8px 0;
50
51
  // Add position so the elevation overlay (which is absolutely positioned)
@@ -60,12 +61,17 @@
60
61
  /// So here we resolve list-items tokens, and resolve the difference between
61
62
  /// the full set of tokens and the ones specific to list-item.
62
63
  @function resolve-tokens($tokens) {
63
- // We need container color so rename so that we don't lose it
64
- $tokens: map.set(
65
- $tokens,
66
- container-color,
67
- map.get($tokens, list-item-container-color)
68
- );
64
+ // Accept container-color token in the theme() mixin.
65
+ $container-color: map.get($tokens, container-color);
66
+
67
+ @if not $container-color {
68
+ // If not defined, rename the list-item-container-color token. This is
69
+ // useful for our styles() mixin where we simply feed this function the comp
70
+ // tokens from the compiler and no `container-color` token.
71
+ $container-color: map.get($tokens, list-item-container-color);
72
+ $tokens: map.set($tokens, container-color, $container-color);
73
+ }
74
+
69
75
  $list-tokens: remove-unused-tokens($tokens);
70
76
 
71
77
  @return $list-tokens;
@@ -4,6 +4,6 @@
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
6
  import { css } from 'lit';
7
- export const styles = css `:host{--_container-color: var(--md-list-container-color, var(--md-sys-color-surface, #fffbfe));color:unset}.md3-list{background-color:var(--_container-color);display:block;list-style-type:none;margin:0;min-width:300px;outline:none;padding:8px 0;position:relative}/*# sourceMappingURL=list-styles.css.map */
7
+ export const styles = css `:host{--_container-color: var(--md-list-container-color, var(--md-sys-color-surface, #fef7ff));color:unset;min-width:300px}.md3-list{background-color:var(--_container-color);display:block;list-style-type:none;margin:0;min-width:inherit;outline:none;padding:8px 0;position:relative}/*# sourceMappingURL=list-styles.css.map */
8
8
  `;
9
9
  //# sourceMappingURL=list-styles.css.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"list-styles.css.js","sourceRoot":"","sources":["list-styles.css.ts"],"names":[],"mappings":"AAAA;;;;IAII;AACH,OAAO,EAAC,GAAG,EAAC,MAAM,KAAK,CAAC;AACxB,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA;CACzB,CAAC","sourcesContent":["/**\n * @license\n * Copyright 2022 Google LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n import {css} from 'lit';\n export const styles = css`:host{--_container-color: var(--md-list-container-color, var(--md-sys-color-surface, #fffbfe));color:unset}.md3-list{background-color:var(--_container-color);display:block;list-style-type:none;margin:0;min-width:300px;outline:none;padding:8px 0;position:relative}/*# sourceMappingURL=list-styles.css.map */\n`;\n "]}
1
+ {"version":3,"file":"list-styles.css.js","sourceRoot":"","sources":["list-styles.css.ts"],"names":[],"mappings":"AAAA;;;;IAII;AACH,OAAO,EAAC,GAAG,EAAC,MAAM,KAAK,CAAC;AACxB,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA;CACzB,CAAC","sourcesContent":["/**\n * @license\n * Copyright 2022 Google LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n import {css} from 'lit';\n export const styles = css`:host{--_container-color: var(--md-list-container-color, var(--md-sys-color-surface, #fef7ff));color:unset;min-width:300px}.md3-list{background-color:var(--_container-color);display:block;list-style-type:none;margin:0;min-width:inherit;outline:none;padding:8px 0;position:relative}/*# sourceMappingURL=list-styles.css.map */\n`;\n "]}
package/list/lib/list.js CHANGED
@@ -11,6 +11,7 @@ import { property, query, queryAssignedElements } from 'lit/decorators.js';
11
11
  import { classMap } from 'lit/directives/class-map.js';
12
12
  import { ifDefined } from 'lit/directives/if-defined.js';
13
13
  import { ariaProperty } from '../../decorators/aria-property.js';
14
+ import { keydownHandler } from '../../focus/strong-focus.js';
14
15
  const NAVIGABLE_KEYS = {
15
16
  ArrowDown: 'ArrowDown',
16
17
  ArrowUp: 'ArrowUp',
@@ -83,6 +84,7 @@ export class List extends LitElement {
83
84
  if (activeItemRecord) {
84
85
  activeItemRecord.item.active = false;
85
86
  }
87
+ keydownHandler(event);
86
88
  event.preventDefault();
87
89
  switch (key) {
88
90
  // Activate the next item
@@ -1 +1 @@
1
- {"version":3,"file":"list.js","sourceRoot":"","sources":["list.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * @license\n * Copyright 2021 Google LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n\n// Required for @ariaProperty\n// tslint:disable:no-new-decorators\n\nimport {html, LitElement, TemplateResult} from 'lit';\nimport {property, query, queryAssignedElements} from 'lit/decorators.js';\nimport {ClassInfo, classMap} from 'lit/directives/class-map.js';\nimport {ifDefined} from 'lit/directives/if-defined.js';\n\nimport {ariaProperty} from '../../decorators/aria-property.js';\nimport {ARIARole} from '../../types/aria.js';\n\nimport {ListItem} from './listitem/list-item.js';\n\nconst NAVIGABLE_KEYS = {\n ArrowDown: 'ArrowDown',\n ArrowUp: 'ArrowUp',\n Home: 'Home',\n End: 'End',\n} as const;\n\ntype NavigatableValues = typeof NAVIGABLE_KEYS[keyof typeof NAVIGABLE_KEYS];\n\nconst navigableKeySet = new Set(Object.values(NAVIGABLE_KEYS));\n\nfunction isNavigableKey(key: string): key is NavigatableValues {\n return navigableKeySet.has(key as NavigatableValues);\n}\n\n// tslint:disable-next-line:enforce-comments-on-exported-symbols\nexport class List extends LitElement {\n static override shadowRootOptions:\n ShadowRootInit = {mode: 'open', delegatesFocus: true};\n\n @ariaProperty\n @property({type: String, attribute: 'data-aria-label', noAccessor: true})\n override ariaLabel!: string;\n\n @ariaProperty\n @property(\n {type: String, attribute: 'data-aria-activedescendant', noAccessor: true})\n ariaActivedescendant!: string;\n\n @ariaProperty\n // tslint:disable-next-line\n @property({type: String, attribute: 'data-role', noAccessor: true})\n // @ts-ignore(b/264292293): Use `override` with TS 4.9+\n role: ARIARole = 'list';\n\n /**\n * The tabindex of the underlying list.\n */\n @property({type: Number}) listTabIndex: number = 0;\n\n @query('.md3-list') listRoot!: HTMLElement;\n\n /**\n * An array of activatable and disableable list items. Queries every assigned\n * element that has the `md-list-item` attribute.\n *\n * _NOTE:_ This is a shallow, flattened query via\n * `HTMLSlotElement.queryAssignedElements` and thus will _only_ include direct\n * children / directly slotted elements.\n */\n @queryAssignedElements({flatten: true, selector: '[md-list-item]'})\n items!: ListItem[];\n\n override render(): TemplateResult {\n return this.renderList();\n }\n\n /**\n * Renders the main list element.\n */\n protected renderList() {\n return html`\n <ul class=\"md3-list ${classMap(this.getListClasses())}\"\n aria-label=\"${ifDefined(this.ariaLabel)}\"\n tabindex=${this.listTabIndex}\n role=${this.role}\n @keydown=${this.handleKeydown}\n >\n ${this.renderContent()}\n </ul>\n `;\n }\n\n /**\n * The classes to be applied to the underlying list.\n */\n protected getListClasses(): ClassInfo {\n return {};\n }\n\n /**\n * The content to be slotted into the list.\n */\n protected renderContent() {\n return html`<span><slot @click=${(e: Event) => {\n e.stopPropagation();\n }}></slot></span>`;\n }\n\n /**\n * Handles keyboard navigation in the list.\n *\n * @param event {KeyboardEvent} The keyboard event that triggers this handler.\n */\n handleKeydown(event: KeyboardEvent) {\n const key = event.key;\n if (!isNavigableKey(key)) {\n return;\n }\n // do not use this.items directly so we don't re-query the DOM unnecessarily\n const items = this.items;\n\n if (!items.length) {\n return;\n }\n\n const activeItemRecord = List.getActiveItem(items);\n\n if (activeItemRecord) {\n activeItemRecord.item.active = false;\n }\n\n event.preventDefault();\n\n switch (key) {\n // Activate the next item\n case NAVIGABLE_KEYS.ArrowDown:\n if (activeItemRecord) {\n const next = List.getNextItem(items, activeItemRecord.index);\n\n if (next) next.active = true;\n } else {\n List.activateFirstItem(items);\n }\n break;\n\n // Activate the previous item\n case NAVIGABLE_KEYS.ArrowUp:\n if (activeItemRecord) {\n const prev = List.getPrevItem(items, activeItemRecord.index);\n if (prev) prev.active = true;\n } else {\n items[items.length - 1].active = true;\n }\n break;\n\n // Activate the first item\n case NAVIGABLE_KEYS.Home:\n List.activateFirstItem(items);\n break;\n\n // Activate the last item\n case NAVIGABLE_KEYS.End:\n List.activateLastItem(items);\n break;\n\n default:\n break;\n }\n }\n\n /**\n * Activates the first non-disabled item of a given array of items.\n *\n * @param items {Array<ListItem>} The items from which to activate the\n * first item.\n */\n static activateFirstItem<T extends ListItem>(items: T[]) {\n // NOTE: These selector functions are static and not on the instance such\n // that multiple operations can be chained and we do not have to re-query\n // the DOM\n const firstItem = List.getFirstActivatableItem(items);\n if (firstItem) {\n firstItem.active = true;\n }\n }\n\n /**\n * Activates the last non-disabled item of a given array of items.\n *\n * @param items {Array<ListItem>} The items from which to activate the\n * last item.\n */\n static activateLastItem<T extends ListItem>(items: T[]) {\n const lastItem = List.getLastActivatableItem(items);\n if (lastItem) {\n lastItem.active = true;\n }\n }\n\n /**\n * Deactivates the currently active item of a given array of items.\n *\n * @param items {Array<ListItem>} The items from which to deactivate the\n * active item.\n * @returns A record of the deleselcted activated item including the item and\n * the index of the item or `null` if none are deactivated.\n */\n static deactivateActiveItem<T extends ListItem>(items: T[]) {\n const activeItem = List.getActiveItem(items);\n if (activeItem) {\n activeItem.item.active = false;\n }\n return activeItem;\n }\n\n override focus() {\n this.listRoot.focus();\n }\n\n /**\n * Retrieves the the first activated item of a given array of items.\n *\n * @param items {Array<ListItem>} The items to search.\n * @returns A record of the first activated item including the item and the\n * index of the item or `null` if none are activated.\n */\n static getActiveItem<T extends ListItem>(items: T[]) {\n for (let i = 0; i < items.length; i++) {\n const item = items[i];\n if (item.active) {\n return {\n item,\n index: i,\n };\n }\n }\n return null;\n }\n\n /**\n * Retrieves the the first non-disabled item of a given array of items. This\n * the first item that is not disabled.\n *\n * @param items {Array<ListItem>} The items to search.\n * @returns The first activatable item or `null` if none are activatable.\n */\n static getFirstActivatableItem<T extends ListItem>(items: T[]) {\n for (const item of items) {\n if (!item.disabled) {\n return item;\n }\n }\n\n return null;\n }\n\n /**\n * Retrieves the the last non-disabled item of a given array of items.\n *\n * @param items {Array<ListItem>} The items to search.\n * @returns The last activatable item or `null` if none are activatable.\n */\n static getLastActivatableItem<T extends ListItem>(items: T[]) {\n for (let i = items.length - 1; i >= 0; i--) {\n const item = items[i];\n if (!item.disabled) {\n return item;\n }\n }\n\n return null;\n }\n\n /**\n * Retrieves the the next non-disabled item of a given array of items.\n *\n * @param items {Array<ListItem>} The items to search.\n * @param index {{index: number}} The index to search from.\n * @returns The next activatable item or `null` if none are activatable.\n */\n protected static getNextItem<T extends ListItem>(items: T[], index: number) {\n for (let i = 1; i < items.length; i++) {\n const nextIndex = (i + index) % items.length;\n const item = items[nextIndex];\n if (!item.disabled) {\n return item;\n }\n }\n return null;\n }\n\n /**\n * Retrieves the the previous non-disabled item of a given array of items.\n *\n * @param items {Array<ListItem>} The items to search.\n * @param index {{index: number}} The index to search from.\n * @returns The previous activatable item or `null` if none are activatable.\n */\n protected static getPrevItem<T extends ListItem>(items: T[], index: number) {\n for (let i = 1; i < items.length; i++) {\n const prevIndex = (index - i + items.length) % items.length;\n const item = items[prevIndex];\n\n if (!item.disabled) {\n return item;\n }\n }\n return null;\n }\n}\n"]}
1
+ {"version":3,"file":"list.js","sourceRoot":"","sources":["list.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * @license\n * Copyright 2021 Google LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n\n// Required for @ariaProperty\n// tslint:disable:no-new-decorators\n\nimport {html, LitElement, TemplateResult} from 'lit';\nimport {property, query, queryAssignedElements} from 'lit/decorators.js';\nimport {ClassInfo, classMap} from 'lit/directives/class-map.js';\nimport {ifDefined} from 'lit/directives/if-defined.js';\n\nimport {ariaProperty} from '../../decorators/aria-property.js';\nimport {keydownHandler} from '../../focus/strong-focus.js';\nimport {ARIARole} from '../../types/aria.js';\n\nimport {ListItem} from './listitem/list-item.js';\n\nconst NAVIGABLE_KEYS = {\n ArrowDown: 'ArrowDown',\n ArrowUp: 'ArrowUp',\n Home: 'Home',\n End: 'End',\n} as const;\n\ntype NavigatableValues = typeof NAVIGABLE_KEYS[keyof typeof NAVIGABLE_KEYS];\n\nconst navigableKeySet = new Set(Object.values(NAVIGABLE_KEYS));\n\nfunction isNavigableKey(key: string): key is NavigatableValues {\n return navigableKeySet.has(key as NavigatableValues);\n}\n\n// tslint:disable-next-line:enforce-comments-on-exported-symbols\nexport class List extends LitElement {\n static override shadowRootOptions:\n ShadowRootInit = {mode: 'open', delegatesFocus: true};\n\n @ariaProperty\n @property({type: String, attribute: 'data-aria-label', noAccessor: true})\n override ariaLabel!: string;\n\n @ariaProperty\n @property(\n {type: String, attribute: 'data-aria-activedescendant', noAccessor: true})\n ariaActivedescendant!: string;\n\n @ariaProperty\n // tslint:disable-next-line\n @property({type: String, attribute: 'data-role', noAccessor: true})\n // @ts-ignore(b/264292293): Use `override` with TS 4.9+\n role: ARIARole = 'list';\n\n /**\n * The tabindex of the underlying list.\n */\n @property({type: Number}) listTabIndex: number = 0;\n\n @query('.md3-list') listRoot!: HTMLElement;\n\n /**\n * An array of activatable and disableable list items. Queries every assigned\n * element that has the `md-list-item` attribute.\n *\n * _NOTE:_ This is a shallow, flattened query via\n * `HTMLSlotElement.queryAssignedElements` and thus will _only_ include direct\n * children / directly slotted elements.\n */\n @queryAssignedElements({flatten: true, selector: '[md-list-item]'})\n items!: ListItem[];\n\n override render(): TemplateResult {\n return this.renderList();\n }\n\n /**\n * Renders the main list element.\n */\n protected renderList() {\n return html`\n <ul class=\"md3-list ${classMap(this.getListClasses())}\"\n aria-label=\"${ifDefined(this.ariaLabel)}\"\n tabindex=${this.listTabIndex}\n role=${this.role}\n @keydown=${this.handleKeydown}\n >\n ${this.renderContent()}\n </ul>\n `;\n }\n\n /**\n * The classes to be applied to the underlying list.\n */\n protected getListClasses(): ClassInfo {\n return {};\n }\n\n /**\n * The content to be slotted into the list.\n */\n protected renderContent() {\n return html`<span><slot @click=${(e: Event) => {\n e.stopPropagation();\n }}></slot></span>`;\n }\n\n /**\n * Handles keyboard navigation in the list.\n *\n * @param event {KeyboardEvent} The keyboard event that triggers this handler.\n */\n handleKeydown(event: KeyboardEvent) {\n const key = event.key;\n if (!isNavigableKey(key)) {\n return;\n }\n // do not use this.items directly so we don't re-query the DOM unnecessarily\n const items = this.items;\n\n if (!items.length) {\n return;\n }\n\n const activeItemRecord = List.getActiveItem(items);\n\n if (activeItemRecord) {\n activeItemRecord.item.active = false;\n }\n\n keydownHandler(event);\n event.preventDefault();\n\n switch (key) {\n // Activate the next item\n case NAVIGABLE_KEYS.ArrowDown:\n if (activeItemRecord) {\n const next = List.getNextItem(items, activeItemRecord.index);\n\n if (next) next.active = true;\n } else {\n List.activateFirstItem(items);\n }\n break;\n\n // Activate the previous item\n case NAVIGABLE_KEYS.ArrowUp:\n if (activeItemRecord) {\n const prev = List.getPrevItem(items, activeItemRecord.index);\n if (prev) prev.active = true;\n } else {\n items[items.length - 1].active = true;\n }\n break;\n\n // Activate the first item\n case NAVIGABLE_KEYS.Home:\n List.activateFirstItem(items);\n break;\n\n // Activate the last item\n case NAVIGABLE_KEYS.End:\n List.activateLastItem(items);\n break;\n\n default:\n break;\n }\n }\n\n /**\n * Activates the first non-disabled item of a given array of items.\n *\n * @param items {Array<ListItem>} The items from which to activate the\n * first item.\n */\n static activateFirstItem<T extends ListItem>(items: T[]) {\n // NOTE: These selector functions are static and not on the instance such\n // that multiple operations can be chained and we do not have to re-query\n // the DOM\n const firstItem = List.getFirstActivatableItem(items);\n if (firstItem) {\n firstItem.active = true;\n }\n }\n\n /**\n * Activates the last non-disabled item of a given array of items.\n *\n * @param items {Array<ListItem>} The items from which to activate the\n * last item.\n */\n static activateLastItem<T extends ListItem>(items: T[]) {\n const lastItem = List.getLastActivatableItem(items);\n if (lastItem) {\n lastItem.active = true;\n }\n }\n\n /**\n * Deactivates the currently active item of a given array of items.\n *\n * @param items {Array<ListItem>} The items from which to deactivate the\n * active item.\n * @returns A record of the deleselcted activated item including the item and\n * the index of the item or `null` if none are deactivated.\n */\n static deactivateActiveItem<T extends ListItem>(items: T[]) {\n const activeItem = List.getActiveItem(items);\n if (activeItem) {\n activeItem.item.active = false;\n }\n return activeItem;\n }\n\n override focus() {\n this.listRoot.focus();\n }\n\n /**\n * Retrieves the the first activated item of a given array of items.\n *\n * @param items {Array<ListItem>} The items to search.\n * @returns A record of the first activated item including the item and the\n * index of the item or `null` if none are activated.\n */\n static getActiveItem<T extends ListItem>(items: T[]) {\n for (let i = 0; i < items.length; i++) {\n const item = items[i];\n if (item.active) {\n return {\n item,\n index: i,\n };\n }\n }\n return null;\n }\n\n /**\n * Retrieves the the first non-disabled item of a given array of items. This\n * the first item that is not disabled.\n *\n * @param items {Array<ListItem>} The items to search.\n * @returns The first activatable item or `null` if none are activatable.\n */\n static getFirstActivatableItem<T extends ListItem>(items: T[]) {\n for (const item of items) {\n if (!item.disabled) {\n return item;\n }\n }\n\n return null;\n }\n\n /**\n * Retrieves the the last non-disabled item of a given array of items.\n *\n * @param items {Array<ListItem>} The items to search.\n * @returns The last activatable item or `null` if none are activatable.\n */\n static getLastActivatableItem<T extends ListItem>(items: T[]) {\n for (let i = items.length - 1; i >= 0; i--) {\n const item = items[i];\n if (!item.disabled) {\n return item;\n }\n }\n\n return null;\n }\n\n /**\n * Retrieves the the next non-disabled item of a given array of items.\n *\n * @param items {Array<ListItem>} The items to search.\n * @param index {{index: number}} The index to search from.\n * @returns The next activatable item or `null` if none are activatable.\n */\n protected static getNextItem<T extends ListItem>(items: T[], index: number) {\n for (let i = 1; i < items.length; i++) {\n const nextIndex = (i + index) % items.length;\n const item = items[nextIndex];\n if (!item.disabled) {\n return item;\n }\n }\n return null;\n }\n\n /**\n * Retrieves the the previous non-disabled item of a given array of items.\n *\n * @param items {Array<ListItem>} The items to search.\n * @param index {{index: number}} The index to search from.\n * @returns The previous activatable item or `null` if none are activatable.\n */\n protected static getPrevItem<T extends ListItem>(items: T[], index: number) {\n for (let i = 1; i < items.length; i++) {\n const prevIndex = (index - i + items.length) % items.length;\n const item = items[prevIndex];\n\n if (!item.disabled) {\n return item;\n }\n }\n return null;\n }\n}\n"]}