@material/web 1.0.0-pre.0 → 1.0.0-pre.2

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 (423) hide show
  1. package/README.md +66 -19
  2. package/autocomplete/lib/_filled-autocomplete.scss +1 -34
  3. package/autocomplete/lib/_outlined-autocomplete.scss +1 -34
  4. package/autocomplete/lib/autocomplete.d.ts +0 -4
  5. package/autocomplete/lib/autocomplete.js +5 -12
  6. package/autocomplete/lib/autocomplete.js.map +1 -1
  7. package/autocomplete/lib/autocompleteitem/autocomplete-item.d.ts +2 -2
  8. package/autocomplete/lib/autocompleteitem/autocomplete-item.js +2 -2
  9. package/autocomplete/lib/autocompleteitem/autocomplete-item.js.map +1 -1
  10. package/autocomplete/lib/autocompletelist/autocomplete-list.d.ts +1 -1
  11. package/autocomplete/lib/autocompletelist/autocomplete-list.js +2 -2
  12. package/autocomplete/lib/autocompletelist/autocomplete-list.js.map +1 -1
  13. package/autocomplete/lib/filled-styles.css.js +1 -1
  14. package/autocomplete/lib/filled-styles.css.js.map +1 -1
  15. package/autocomplete/lib/outlined-styles.css.js +1 -1
  16. package/autocomplete/lib/outlined-styles.css.js.map +1 -1
  17. package/button/lib/_elevation.scss +1 -1
  18. package/button/lib/_icon.scss +12 -29
  19. package/button/lib/_shared.scss +1 -0
  20. package/button/lib/button.d.ts +1 -14
  21. package/button/lib/button.js +6 -42
  22. package/button/lib/button.js.map +1 -1
  23. package/button/lib/filled-styles.css.js +1 -1
  24. package/button/lib/filled-styles.css.js.map +1 -1
  25. package/button/lib/link-button.d.ts +0 -1
  26. package/button/lib/link-button.js +0 -5
  27. package/button/lib/link-button.js.map +1 -1
  28. package/button/lib/shared-elevation-styles.css.js +1 -1
  29. package/button/lib/shared-elevation-styles.css.js.map +1 -1
  30. package/button/lib/shared-styles.css.js +1 -1
  31. package/button/lib/shared-styles.css.js.map +1 -1
  32. package/checkbox/checkbox.d.ts +11 -2
  33. package/checkbox/checkbox.js +11 -2
  34. package/checkbox/checkbox.js.map +1 -1
  35. package/checkbox/lib/checkbox.d.ts +28 -0
  36. package/checkbox/lib/checkbox.js +30 -1
  37. package/checkbox/lib/checkbox.js.map +1 -1
  38. package/chips/chip/lib/_chip-theme.scss +1 -1
  39. package/dialog/_dialog.scss +6 -0
  40. package/dialog/dialog.d.ts +38 -0
  41. package/dialog/dialog.js +41 -0
  42. package/dialog/dialog.js.map +1 -0
  43. package/dialog/harness.d.ts +18 -0
  44. package/dialog/harness.js +55 -0
  45. package/dialog/harness.js.map +1 -0
  46. package/dialog/lib/_dialog.scss +386 -0
  47. package/dialog/lib/_tokens.scss +86 -0
  48. package/{elevationold/lib/elevation-overlay-styles.css.d.ts → dialog/lib/dialog-styles.css.d.ts} +0 -0
  49. package/dialog/lib/dialog-styles.css.js +9 -0
  50. package/dialog/lib/dialog-styles.css.js.map +1 -0
  51. package/dialog/lib/dialog-styles.scss +8 -0
  52. package/dialog/lib/dialog.d.ts +190 -0
  53. package/dialog/lib/dialog.js +566 -0
  54. package/dialog/lib/dialog.js.map +1 -0
  55. package/divider/_divider.scss +6 -0
  56. package/divider/divider.d.ts +24 -0
  57. package/divider/divider.js +27 -0
  58. package/divider/divider.js.map +1 -0
  59. package/divider/lib/_divider.scss +54 -0
  60. package/{list/lib/divider/list-divider-styles.css.d.ts → divider/lib/divider-styles.css.d.ts} +0 -0
  61. package/divider/lib/divider-styles.css.js +9 -0
  62. package/divider/lib/divider-styles.css.js.map +1 -0
  63. package/divider/lib/divider-styles.scss +8 -0
  64. package/divider/lib/divider.d.ts +23 -0
  65. package/divider/lib/divider.js +41 -0
  66. package/divider/lib/divider.js.map +1 -0
  67. package/elevation/lib/_elevation.scss +1 -1
  68. package/elevation/lib/_md-comp-elevation.scss +1 -1
  69. package/elevation/lib/elevation-styles.css.js +1 -1
  70. package/elevation/lib/elevation-styles.css.js.map +1 -1
  71. package/fab/lib/_shared.scss +1 -1
  72. package/fab/lib/fab-shared-styles.css.js +1 -1
  73. package/fab/lib/fab-shared-styles.css.js.map +1 -1
  74. package/field/lib/_filled-field.scss +5 -2
  75. package/field/lib/_md-comp-filled-field.scss +3 -1
  76. package/field/lib/_md-comp-outlined-field.scss +1 -1
  77. package/field/lib/_shared.scss +2 -0
  78. package/field/lib/field.d.ts +0 -2
  79. package/field/lib/field.js +2 -4
  80. package/field/lib/field.js.map +1 -1
  81. package/field/lib/filled-styles.css.js +1 -1
  82. package/field/lib/filled-styles.css.js.map +1 -1
  83. package/field/lib/outlined-styles.css.js +1 -1
  84. package/field/lib/outlined-styles.css.js.map +1 -1
  85. package/field/lib/shared-styles.css.js +1 -1
  86. package/field/lib/shared-styles.css.js.map +1 -1
  87. package/focus/lib/_focus-ring.scss +3 -10
  88. package/focus/lib/focus-ring-styles.css.js +1 -1
  89. package/focus/lib/focus-ring-styles.css.js.map +1 -1
  90. package/focus/lib/focus-ring.d.ts +1 -4
  91. package/focus/lib/focus-ring.js +2 -11
  92. package/focus/lib/focus-ring.js.map +1 -1
  93. package/icon/lib/_icon.scss +8 -5
  94. package/icon/lib/icon-styles.css.js +1 -1
  95. package/icon/lib/icon-styles.css.js.map +1 -1
  96. package/iconbutton/lib/_filled-icon-button.scss +1 -1
  97. package/iconbutton/lib/_filled-tonal-icon-button.scss +1 -1
  98. package/iconbutton/lib/_outlined-icon-button.scss +9 -22
  99. package/iconbutton/lib/_shared.scss +14 -40
  100. package/iconbutton/lib/_standard-icon-button.scss +6 -14
  101. package/iconbutton/lib/filled-styles.css.js +1 -1
  102. package/iconbutton/lib/filled-styles.css.js.map +1 -1
  103. package/iconbutton/lib/filled-tonal-styles.css.js +1 -1
  104. package/iconbutton/lib/filled-tonal-styles.css.js.map +1 -1
  105. package/iconbutton/lib/icon-button-toggle.d.ts +13 -42
  106. package/iconbutton/lib/icon-button-toggle.js +33 -103
  107. package/iconbutton/lib/icon-button-toggle.js.map +1 -1
  108. package/iconbutton/lib/icon-button.d.ts +2 -4
  109. package/iconbutton/lib/icon-button.js +3 -9
  110. package/iconbutton/lib/icon-button.js.map +1 -1
  111. package/iconbutton/lib/outlined-styles.css.js +1 -1
  112. package/iconbutton/lib/outlined-styles.css.js.map +1 -1
  113. package/iconbutton/lib/shared-styles.css.js +1 -1
  114. package/iconbutton/lib/shared-styles.css.js.map +1 -1
  115. package/iconbutton/lib/standard-styles.css.js +1 -1
  116. package/iconbutton/lib/standard-styles.css.js.map +1 -1
  117. package/list/lib/_list.scss +32 -40
  118. package/list/lib/avatar/_list-item-avatar.scss +1 -1
  119. package/list/lib/avatar/list-item-avatar-styles.css.js +1 -1
  120. package/list/lib/avatar/list-item-avatar-styles.css.js.map +1 -1
  121. package/list/lib/avatar/list-item-avatar.d.ts +9 -4
  122. package/list/lib/avatar/list-item-avatar.js +24 -11
  123. package/list/lib/avatar/list-item-avatar.js.map +1 -1
  124. package/list/lib/icon/_list-item-icon.scss +3 -1
  125. package/list/lib/icon/list-item-icon-styles.css.js +1 -1
  126. package/list/lib/icon/list-item-icon-styles.css.js.map +1 -1
  127. package/list/lib/icon/list-item-icon.d.ts +0 -3
  128. package/list/lib/icon/list-item-icon.js +1 -12
  129. package/list/lib/icon/list-item-icon.js.map +1 -1
  130. package/list/lib/image/_list-item-image.scss +1 -1
  131. package/list/lib/image/list-item-image-styles.css.js +1 -1
  132. package/list/lib/image/list-item-image-styles.css.js.map +1 -1
  133. package/list/lib/image/list-item-image.d.ts +11 -4
  134. package/list/lib/image/list-item-image.js +24 -13
  135. package/list/lib/image/list-item-image.js.map +1 -1
  136. package/list/lib/list-styles.css.js +1 -1
  137. package/list/lib/list-styles.css.js.map +1 -1
  138. package/list/lib/list.d.ts +99 -28
  139. package/list/lib/list.js +210 -111
  140. package/list/lib/list.js.map +1 -1
  141. package/list/lib/listitem/_list-item.scss +104 -39
  142. package/list/lib/listitem/harness.js +2 -1
  143. package/list/lib/listitem/harness.js.map +1 -1
  144. package/{menu/lib/menu-button-styles.css.d.ts → list/lib/listitem/list-item-private-styles.css.d.ts} +0 -0
  145. package/list/lib/listitem/list-item-private-styles.css.js +9 -0
  146. package/list/lib/listitem/list-item-private-styles.css.js.map +1 -0
  147. package/list/lib/listitem/list-item-private-styles.scss +8 -0
  148. package/list/lib/listitem/list-item-styles.css.js +1 -1
  149. package/list/lib/listitem/list-item-styles.css.js.map +1 -1
  150. package/list/lib/listitem/list-item.d.ts +99 -43
  151. package/list/lib/listitem/list-item.js +201 -172
  152. package/list/lib/listitem/list-item.js.map +1 -1
  153. package/list/lib/listitemlink/list-item-link.d.ts +17 -0
  154. package/list/lib/listitemlink/list-item-link.js +42 -0
  155. package/list/lib/listitemlink/list-item-link.js.map +1 -0
  156. package/list/lib/video/_list-item-video.scss +10 -4
  157. package/list/lib/video/list-item-video-styles.css.js +1 -1
  158. package/list/lib/video/list-item-video-styles.css.js.map +1 -1
  159. package/list/lib/video/list-item-video.d.ts +43 -4
  160. package/list/lib/video/list-item-video.js +90 -12
  161. package/list/lib/video/list-item-video.js.map +1 -1
  162. package/list/list-item-avatar.d.ts +2 -1
  163. package/list/list-item-avatar.js +2 -1
  164. package/list/list-item-avatar.js.map +1 -1
  165. package/list/list-item-icon.d.ts +2 -1
  166. package/list/list-item-icon.js +2 -1
  167. package/list/list-item-icon.js.map +1 -1
  168. package/list/list-item-image.d.ts +2 -1
  169. package/list/list-item-image.js +2 -1
  170. package/list/list-item-image.js.map +1 -1
  171. package/list/list-item-link.d.ts +35 -0
  172. package/list/list-item-link.js +39 -0
  173. package/list/list-item-link.js.map +1 -0
  174. package/list/list-item-video.d.ts +2 -1
  175. package/list/list-item-video.js +2 -1
  176. package/list/list-item-video.js.map +1 -1
  177. package/list/list-item.d.ts +18 -2
  178. package/list/list-item.js +20 -3
  179. package/list/list-item.js.map +1 -1
  180. package/list/list.d.ts +15 -1
  181. package/list/list.js +15 -1
  182. package/list/list.js.map +1 -1
  183. package/menu/_menu-item.scss +6 -0
  184. package/menu/_menu.scss +6 -0
  185. package/menu/harness.d.ts +5 -0
  186. package/menu/harness.js +22 -0
  187. package/menu/harness.js.map +1 -1
  188. package/menu/lib/_menu.scss +61 -62
  189. package/menu/lib/menu-styles.css.js +1 -1
  190. package/menu/lib/menu-styles.css.js.map +1 -1
  191. package/menu/lib/menu.d.ts +176 -42
  192. package/menu/lib/menu.js +506 -246
  193. package/menu/lib/menu.js.map +1 -1
  194. package/menu/lib/menuitem/_menu-item.scss +115 -0
  195. package/{tokens/v0_150/index.test.css.d.ts → menu/lib/menuitem/menu-item-private-styles.css.d.ts} +0 -0
  196. package/menu/lib/menuitem/menu-item-private-styles.css.js +9 -0
  197. package/menu/lib/menuitem/menu-item-private-styles.css.js.map +1 -0
  198. package/menu/lib/menuitem/menu-item-private-styles.scss +8 -0
  199. package/{tokens/v0_150/lib.test.css.d.ts → menu/lib/menuitem/menu-item-styles.css.d.ts} +0 -0
  200. package/menu/lib/menuitem/menu-item-styles.css.js +9 -0
  201. package/menu/lib/menuitem/menu-item-styles.css.js.map +1 -0
  202. package/menu/lib/menuitem/menu-item-styles.scss +8 -0
  203. package/menu/lib/menuitem/menu-item.d.ts +20 -3
  204. package/menu/lib/menuitem/menu-item.js +42 -3
  205. package/menu/lib/menuitem/menu-item.js.map +1 -1
  206. package/menu/lib/menuitemlink/menu-item-link.d.ts +25 -0
  207. package/menu/lib/menuitemlink/menu-item-link.js +51 -0
  208. package/menu/lib/menuitemlink/menu-item-link.js.map +1 -0
  209. package/menu/lib/shared.d.ts +134 -0
  210. package/menu/lib/shared.js +85 -0
  211. package/menu/lib/shared.js.map +1 -0
  212. package/menu/lib/submenuitem/harness.d.ts +11 -0
  213. package/menu/lib/submenuitem/harness.js +12 -0
  214. package/menu/lib/submenuitem/harness.js.map +1 -0
  215. package/menu/lib/submenuitem/sub-menu-item.d.ts +89 -0
  216. package/menu/lib/submenuitem/sub-menu-item.js +266 -0
  217. package/menu/lib/submenuitem/sub-menu-item.js.map +1 -0
  218. package/menu/lib/surfacePositionController.d.ts +117 -0
  219. package/menu/lib/surfacePositionController.js +196 -0
  220. package/menu/lib/surfacePositionController.js.map +1 -0
  221. package/menu/lib/typeaheadController.d.ts +144 -0
  222. package/menu/lib/typeaheadController.js +242 -0
  223. package/menu/lib/typeaheadController.js.map +1 -0
  224. package/menu/menu-item-link.d.ts +33 -0
  225. package/menu/menu-item-link.js +37 -0
  226. package/menu/menu-item-link.js.map +1 -0
  227. package/menu/menu-item.d.ts +19 -2
  228. package/menu/menu-item.js +22 -4
  229. package/menu/menu-item.js.map +1 -1
  230. package/menu/menu.d.ts +45 -0
  231. package/menu/menu.js +43 -0
  232. package/menu/menu.js.map +1 -1
  233. package/menu/sub-menu-item.d.ts +60 -0
  234. package/menu/sub-menu-item.js +64 -0
  235. package/menu/sub-menu-item.js.map +1 -0
  236. package/menusurface/lib/_menu-surface.scss +1 -1
  237. package/menusurface/lib/menu-surface-styles.css.js +1 -1
  238. package/menusurface/lib/menu-surface-styles.css.js.map +1 -1
  239. package/motion/animation.d.ts +20 -3
  240. package/motion/animation.js +39 -4
  241. package/motion/animation.js.map +1 -1
  242. package/navigationbar/lib/_navigation-bar.scss +9 -9
  243. package/navigationbar/lib/navigation-bar-styles.css.js +1 -1
  244. package/navigationbar/lib/navigation-bar-styles.css.js.map +1 -1
  245. package/navigationdrawer/lib/_navigation-drawer.scss +1 -1
  246. package/navigationdrawer/lib/navigation-drawer-styles.css.js +1 -1
  247. package/navigationdrawer/lib/navigation-drawer-styles.css.js.map +1 -1
  248. package/navigationtab/lib/_navigation-tab.scss +8 -19
  249. package/navigationtab/lib/navigation-tab-styles.css.js +1 -1
  250. package/navigationtab/lib/navigation-tab-styles.css.js.map +1 -1
  251. package/package.json +1 -8
  252. package/radio/lib/_radio.scss +21 -22
  253. package/radio/lib/radio-styles.css.js +1 -1
  254. package/radio/lib/radio-styles.css.js.map +1 -1
  255. package/radio/lib/radio.d.ts +10 -1
  256. package/radio/lib/radio.js +12 -3
  257. package/radio/lib/radio.js.map +1 -1
  258. package/radio/radio.d.ts +16 -1
  259. package/radio/radio.js +16 -1
  260. package/radio/radio.js.map +1 -1
  261. package/ripple/lib/_ripple.scss +5 -21
  262. package/ripple/lib/ripple-styles.css.js +1 -1
  263. package/ripple/lib/ripple-styles.css.js.map +1 -1
  264. package/ripple/lib/ripple.js +2 -2
  265. package/ripple/lib/ripple.js.map +1 -1
  266. package/sass/_map-ext.scss +24 -0
  267. package/sass/_string-ext.scss +23 -0
  268. package/segmentedbuttonset/lib/segmented-button-set.d.ts +0 -2
  269. package/segmentedbuttonset/lib/segmented-button-set.js +0 -2
  270. package/segmentedbuttonset/lib/segmented-button-set.js.map +1 -1
  271. package/switch/lib/_handle.scss +56 -9
  272. package/switch/lib/_icon.scss +36 -0
  273. package/switch/lib/_switch.scss +1 -115
  274. package/switch/lib/_track.scss +39 -0
  275. package/switch/lib/switch-styles.css.js +1 -1
  276. package/switch/lib/switch-styles.css.js.map +1 -1
  277. package/switch/lib/switch.d.ts +3 -0
  278. package/switch/lib/switch.js +3 -0
  279. package/switch/lib/switch.js.map +1 -1
  280. package/textfield/lib/_filled-text-field.scss +4 -2
  281. package/textfield/lib/_outlined-text-field.scss +3 -2
  282. package/textfield/lib/filled-styles.css.js +1 -1
  283. package/textfield/lib/filled-styles.css.js.map +1 -1
  284. package/textfield/lib/outlined-styles.css.js +1 -1
  285. package/textfield/lib/outlined-styles.css.js.map +1 -1
  286. package/textfield/lib/text-field.d.ts +0 -2
  287. package/textfield/lib/text-field.js +0 -2
  288. package/textfield/lib/text-field.js.map +1 -1
  289. package/tokens/_index.scss +1 -1
  290. package/tokens/{v0_150 → v0_152}/_index.scss +1 -1
  291. package/tokens/{v0_150 → v0_152}/_md-comp-assist-chip.scss +2 -2
  292. package/tokens/{v0_150 → v0_152}/_md-comp-badge.scss +2 -2
  293. package/tokens/{v0_150 → v0_152}/_md-comp-banner.scss +2 -43
  294. package/tokens/{v0_150 → v0_152}/_md-comp-bottom-app-bar.scss +3 -4
  295. package/tokens/{v0_150 → v0_152}/_md-comp-carousel-item.scss +2 -2
  296. package/tokens/{v0_150 → v0_152}/_md-comp-checkbox.scss +2 -12
  297. package/tokens/{v0_150 → v0_152}/_md-comp-circular-progress-indicator.scss +2 -2
  298. package/tokens/{v0_150 → v0_152}/_md-comp-data-table.scss +2 -4
  299. package/tokens/{v0_150 → v0_152}/_md-comp-date-input-modal.scss +2 -2
  300. package/tokens/{v0_150 → v0_152}/_md-comp-date-picker-docked.scss +2 -2
  301. package/tokens/{v0_150 → v0_152}/_md-comp-date-picker-modal.scss +2 -2
  302. package/tokens/{v0_150 → v0_152}/_md-comp-dialog.scss +2 -25
  303. package/tokens/{v0_150 → v0_152}/_md-comp-divider.scss +2 -2
  304. package/tokens/{v0_150 → v0_152}/_md-comp-elevated-button.scss +2 -2
  305. package/tokens/{v0_150 → v0_152}/_md-comp-elevated-card.scss +2 -2
  306. package/tokens/{v0_150 → v0_152}/_md-comp-extended-fab-branded.scss +2 -2
  307. package/tokens/{v0_150 → v0_152}/_md-comp-extended-fab-primary.scss +2 -2
  308. package/tokens/{v0_150 → v0_152}/_md-comp-extended-fab-secondary.scss +2 -2
  309. package/tokens/{v0_150 → v0_152}/_md-comp-extended-fab-surface.scss +2 -2
  310. package/tokens/{v0_150 → v0_152}/_md-comp-extended-fab-tertiary.scss +2 -4
  311. package/tokens/{v0_150 → v0_152}/_md-comp-fab-branded-large.scss +2 -3
  312. package/tokens/{v0_150 → v0_152}/_md-comp-fab-branded.scss +2 -2
  313. package/tokens/{v0_150 → v0_152}/_md-comp-fab-primary-large.scss +2 -2
  314. package/tokens/{v0_150 → v0_152}/_md-comp-fab-primary-small.scss +2 -2
  315. package/tokens/{v0_150 → v0_152}/_md-comp-fab-primary.scss +2 -2
  316. package/tokens/{v0_150 → v0_152}/_md-comp-fab-secondary-large.scss +2 -2
  317. package/tokens/{v0_150 → v0_152}/_md-comp-fab-secondary-small.scss +2 -2
  318. package/tokens/{v0_150 → v0_152}/_md-comp-fab-secondary.scss +2 -2
  319. package/tokens/{v0_150 → v0_152}/_md-comp-fab-surface-large.scss +2 -2
  320. package/tokens/{v0_150 → v0_152}/_md-comp-fab-surface-small.scss +2 -2
  321. package/tokens/{v0_150 → v0_152}/_md-comp-fab-surface.scss +2 -2
  322. package/tokens/{v0_150 → v0_152}/_md-comp-fab-tertiary-large.scss +2 -2
  323. package/tokens/{v0_150 → v0_152}/_md-comp-fab-tertiary-small.scss +2 -2
  324. package/tokens/{v0_150 → v0_152}/_md-comp-fab-tertiary.scss +2 -2
  325. package/tokens/{v0_150 → v0_152}/_md-comp-filled-autocomplete.scss +2 -3
  326. package/tokens/{v0_150 → v0_152}/_md-comp-filled-button.scss +2 -8
  327. package/tokens/{v0_150 → v0_152}/_md-comp-filled-card.scss +2 -4
  328. package/tokens/{v0_150 → v0_152}/_md-comp-filled-icon-button.scss +2 -2
  329. package/tokens/{v0_150 → v0_152}/_md-comp-filled-menu-button.scss +2 -2
  330. package/tokens/{v0_150 → v0_152}/_md-comp-filled-select.scss +2 -6
  331. package/tokens/{v0_150 → v0_152}/_md-comp-filled-text-field.scss +2 -3
  332. package/tokens/{v0_150 → v0_152}/_md-comp-filled-tonal-button.scss +2 -2
  333. package/tokens/{v0_150 → v0_152}/_md-comp-filled-tonal-icon-button.scss +2 -2
  334. package/tokens/{v0_150 → v0_152}/_md-comp-filter-chip.scss +2 -30
  335. package/tokens/{v0_150 → v0_152}/_md-comp-full-screen-dialog.scss +3 -53
  336. package/tokens/{v0_150 → v0_152}/_md-comp-icon-button.scss +3 -3
  337. package/tokens/{v0_150 → v0_152}/_md-comp-input-chip.scss +2 -52
  338. package/tokens/{v0_150 → v0_152}/_md-comp-linear-progress-indicator.scss +2 -2
  339. package/tokens/{v0_150 → v0_152}/_md-comp-list.scss +3 -12
  340. package/tokens/{v0_150 → v0_152}/_md-comp-menu.scss +2 -4
  341. package/tokens/{v0_150 → v0_152}/_md-comp-navigation-bar.scss +2 -9
  342. package/tokens/{v0_150 → v0_152}/_md-comp-navigation-drawer.scss +2 -8
  343. package/tokens/{v0_150 → v0_152}/_md-comp-navigation-rail.scss +2 -39
  344. package/tokens/{v0_150 → v0_152}/_md-comp-outlined-autocomplete.scss +2 -3
  345. package/tokens/{v0_150 → v0_152}/_md-comp-outlined-button.scss +2 -6
  346. package/tokens/{v0_150 → v0_152}/_md-comp-outlined-card.scss +2 -2
  347. package/tokens/{v0_150 → v0_152}/_md-comp-outlined-icon-button.scss +2 -4
  348. package/tokens/{v0_150 → v0_152}/_md-comp-outlined-menu-button.scss +2 -2
  349. package/tokens/{v0_150 → v0_152}/_md-comp-outlined-segmented-button.scss +2 -2
  350. package/tokens/{v0_150 → v0_152}/_md-comp-outlined-select.scss +2 -6
  351. package/tokens/{v0_150 → v0_152}/_md-comp-outlined-text-field.scss +2 -3
  352. package/tokens/{v0_150 → v0_152}/_md-comp-plain-tooltip.scss +2 -2
  353. package/tokens/{v0_150 → v0_152}/_md-comp-primary-navigation-tab.scss +2 -2
  354. package/tokens/{v0_150 → v0_152}/_md-comp-radio-button.scss +2 -2
  355. package/tokens/{v0_150 → v0_152}/_md-comp-rich-tooltip.scss +2 -2
  356. package/tokens/{v0_150 → v0_152}/_md-comp-scrim.scss +2 -2
  357. package/tokens/{v0_150 → v0_152}/_md-comp-search-bar.scss +2 -2
  358. package/tokens/{v0_150 → v0_152}/_md-comp-search-view.scss +2 -2
  359. package/tokens/{v0_150 → v0_152}/_md-comp-secondary-navigation-tab.scss +2 -2
  360. package/tokens/{v0_150 → v0_152}/_md-comp-sheet-bottom.scss +2 -2
  361. package/tokens/{v0_150 → v0_152}/_md-comp-sheet-floating.scss +2 -2
  362. package/tokens/{v0_150 → v0_152}/_md-comp-sheet-side.scss +4 -2
  363. package/tokens/{v0_150 → v0_152}/_md-comp-slider.scss +2 -4
  364. package/tokens/{v0_150 → v0_152}/_md-comp-snackbar.scss +2 -2
  365. package/tokens/{v0_150 → v0_152}/_md-comp-standard-menu-button.scss +2 -2
  366. package/tokens/{v0_150 → v0_152}/_md-comp-suggestion-chip.scss +2 -2
  367. package/tokens/{v0_150 → v0_152}/_md-comp-switch.scss +2 -11
  368. package/tokens/{v0_150 → v0_152}/_md-comp-text-button.scss +2 -6
  369. package/tokens/{v0_150 → v0_152}/_md-comp-time-input.scss +2 -2
  370. package/tokens/{v0_150 → v0_152}/_md-comp-time-picker.scss +2 -5
  371. package/tokens/{v0_150 → v0_152}/_md-comp-top-app-bar-large.scss +2 -2
  372. package/tokens/{v0_150 → v0_152}/_md-comp-top-app-bar-medium.scss +2 -2
  373. package/tokens/{v0_150 → v0_152}/_md-comp-top-app-bar-small-centered.scss +2 -3
  374. package/tokens/{v0_150 → v0_152}/_md-comp-top-app-bar-small.scss +2 -3
  375. package/tokens/{v0_150 → v0_152}/_md-ref-palette.scss +2 -2
  376. package/tokens/{v0_150 → v0_152}/_md-ref-typeface.scss +2 -2
  377. package/tokens/{v0_150 → v0_152}/_md-sys-color.scss +2 -20
  378. package/tokens/{v0_150 → v0_152}/_md-sys-elevation.scss +4 -13
  379. package/tokens/{v0_150 → v0_152}/_md-sys-motion.scss +2 -2
  380. package/tokens/{v0_150 → v0_152}/_md-sys-shape.scss +2 -2
  381. package/tokens/{v0_150 → v0_152}/_md-sys-state.scss +2 -2
  382. package/tokens/{v0_150 → v0_152}/_md-sys-typescale.scss +2 -3
  383. package/tokens/v0_152/index.test.css.d.ts +1 -0
  384. package/tokens/{v0_150 → v0_152}/index.test.css.js +0 -0
  385. package/tokens/{v0_150 → v0_152}/index.test.css.js.map +0 -0
  386. package/tokens/{v0_150 → v0_152}/index.test.scss +1 -1
  387. package/tokens/v0_152/lib.test.css.d.ts +1 -0
  388. package/tokens/{v0_150 → v0_152}/lib.test.css.js +0 -0
  389. package/tokens/{v0_150 → v0_152}/lib.test.css.js.map +0 -0
  390. package/tokens/{v0_150 → v0_152}/lib.test.scss +1 -1
  391. package/CHANGELOG.md +0 -141
  392. package/elevationold/lib/elevation-overlay-styles.css.js +0 -9
  393. package/elevationold/lib/elevation-overlay-styles.css.js.map +0 -1
  394. package/list/lib/_tokens.scss +0 -80
  395. package/list/lib/divider/_list-divider.scss +0 -46
  396. package/list/lib/divider/list-divider-styles.css.js +0 -9
  397. package/list/lib/divider/list-divider-styles.css.js.map +0 -1
  398. package/list/lib/divider/list-divider-styles.scss +0 -8
  399. package/list/lib/divider/list-divider.d.ts +0 -13
  400. package/list/lib/divider/list-divider.js +0 -32
  401. package/list/lib/divider/list-divider.js.map +0 -1
  402. package/list/list-divider.d.ts +0 -19
  403. package/list/list-divider.js +0 -22
  404. package/list/list-divider.js.map +0 -1
  405. package/menu/lib/_menu-button.scss +0 -14
  406. package/menu/lib/adapter.d.ts +0 -66
  407. package/menu/lib/adapter.js +0 -7
  408. package/menu/lib/adapter.js.map +0 -1
  409. package/menu/lib/constants.d.ts +0 -22
  410. package/menu/lib/constants.js +0 -23
  411. package/menu/lib/constants.js.map +0 -1
  412. package/menu/lib/foundation.d.ts +0 -49
  413. package/menu/lib/foundation.js +0 -123
  414. package/menu/lib/foundation.js.map +0 -1
  415. package/menu/lib/menu-button-styles.css.js +0 -9
  416. package/menu/lib/menu-button-styles.css.js.map +0 -1
  417. package/menu/lib/menu-button-styles.scss +0 -8
  418. package/menu/lib/menu-button.d.ts +0 -27
  419. package/menu/lib/menu-button.js +0 -93
  420. package/menu/lib/menu-button.js.map +0 -1
  421. package/menu/menu-button.d.ts +0 -14
  422. package/menu/menu-button.js +0 -17
  423. package/menu/menu-button.js.map +0 -1
@@ -1,49 +0,0 @@
1
- /**
2
- * @license
3
- * Copyright 2022 Google LLC
4
- * SPDX-License-Identifier: Apache-2.0
5
- */
6
- import { MDCMenuAdapter } from './adapter.js';
7
- export declare class MDCMenuFoundation {
8
- static get cssClasses(): {
9
- MENU_SELECTED_LIST_ITEM: string;
10
- MENU_SELECTION_GROUP: string;
11
- ROOT: string;
12
- };
13
- static get strings(): {
14
- ARIA_CHECKED_ATTR: string;
15
- ARIA_DISABLED_ATTR: string;
16
- CHECKBOX_SELECTOR: string;
17
- LIST_SELECTOR: string;
18
- SELECTED_EVENT: string;
19
- SKIP_RESTORE_FOCUS: string;
20
- };
21
- static get numbers(): {
22
- FOCUS_ROOT_INDEX: number;
23
- };
24
- private readonly adapter;
25
- private closeAnimationEndTimerId;
26
- private selectedIndex;
27
- /**
28
- * @see {@link MDCMenuAdapter} for typing information on parameters and return types.
29
- */
30
- static get defaultAdapter(): MDCMenuAdapter;
31
- constructor(adapter: Partial<MDCMenuAdapter>);
32
- destroy(): void;
33
- handleKeydown(evt: KeyboardEvent): void;
34
- handleItemAction(listItem: Element): void;
35
- /** @return Index of the currently selected list item within the menu. */
36
- getSelectedIndex(): number;
37
- /**
38
- * Selects the list item at `index` within the menu.
39
- * @param index Index of list item within the menu.
40
- */
41
- setSelectedIndex(index: number): void;
42
- /**
43
- * Sets the enabled state to isEnabled for the menu item at the given index.
44
- * @param index Index of the menu item
45
- * @param isEnabled The desired enabled state of the menu item.
46
- */
47
- setEnabled(index: number, isEnabled: boolean): void;
48
- private validatedIndex;
49
- }
@@ -1,123 +0,0 @@
1
- /**
2
- * @license
3
- * Copyright 2022 Google LLC
4
- * SPDX-License-Identifier: Apache-2.0
5
- */
6
- import { MDCMenuSurfaceFoundation } from '../../menusurface/lib/foundation.js';
7
- import { cssClasses, numbers, strings } from './constants.js';
8
- const LIST_ITEM_DISABLED_CLASS = 'md3-list-item--disabled';
9
- export class MDCMenuFoundation {
10
- constructor(adapter) {
11
- this.closeAnimationEndTimerId = 0;
12
- this.selectedIndex = -1;
13
- this.adapter = { ...MDCMenuFoundation.defaultAdapter, ...adapter };
14
- }
15
- static get cssClasses() {
16
- return cssClasses;
17
- }
18
- static get strings() {
19
- return strings;
20
- }
21
- static get numbers() {
22
- return numbers;
23
- }
24
- /**
25
- * @see {@link MDCMenuAdapter} for typing information on parameters and return types.
26
- */
27
- static get defaultAdapter() {
28
- // tslint:disable:object-literal-sort-keys Methods should be in the same order as the adapter interface.
29
- return {
30
- addClassToElementAtIndex: () => undefined,
31
- removeClassFromElementAtIndex: () => undefined,
32
- addAttributeToElementAtIndex: () => undefined,
33
- removeAttributeFromElementAtIndex: () => undefined,
34
- getAttributeFromElementAtIndex: () => null,
35
- elementContainsClass: () => false,
36
- closeSurface: () => undefined,
37
- getElementIndex: () => -1,
38
- notifySelected: () => undefined,
39
- getMenuItemCount: () => 0,
40
- getSelectedSiblingOfItemAtIndex: () => -1,
41
- isSelectableItemAtIndex: () => false,
42
- };
43
- // tslint:enable:object-literal-sort-keys
44
- }
45
- destroy() {
46
- if (this.closeAnimationEndTimerId) {
47
- clearTimeout(this.closeAnimationEndTimerId);
48
- }
49
- this.adapter.closeSurface();
50
- }
51
- handleKeydown(evt) {
52
- const { key, keyCode } = evt;
53
- const isTab = key === 'Tab' || keyCode === 9;
54
- if (isTab) {
55
- this.adapter.closeSurface(/** skipRestoreFocus */ true);
56
- }
57
- }
58
- handleItemAction(listItem) {
59
- const index = this.adapter.getElementIndex(listItem);
60
- if (index < 0) {
61
- return;
62
- }
63
- this.adapter.notifySelected({ index });
64
- const skipRestoreFocus = this.adapter.getAttributeFromElementAtIndex(index, strings.SKIP_RESTORE_FOCUS) === 'true';
65
- this.adapter.closeSurface(skipRestoreFocus);
66
- // Wait for the menu to close before adding/removing classes that affect
67
- // styles.
68
- this.closeAnimationEndTimerId = setTimeout(() => {
69
- // Recompute the index in case the menu contents have changed.
70
- const recomputedIndex = this.adapter.getElementIndex(listItem);
71
- if (recomputedIndex >= 0 &&
72
- this.adapter.isSelectableItemAtIndex(recomputedIndex)) {
73
- this.setSelectedIndex(recomputedIndex);
74
- }
75
- }, MDCMenuSurfaceFoundation.numbers.TRANSITION_CLOSE_DURATION);
76
- }
77
- /** @return Index of the currently selected list item within the menu. */
78
- getSelectedIndex() {
79
- return this.selectedIndex;
80
- }
81
- /**
82
- * Selects the list item at `index` within the menu.
83
- * @param index Index of list item within the menu.
84
- */
85
- setSelectedIndex(index) {
86
- this.validatedIndex(index);
87
- if (!this.adapter.isSelectableItemAtIndex(index)) {
88
- throw new Error('MDCMenuFoundation: No selection group at specified index.');
89
- }
90
- const prevSelectedIndex = this.adapter.getSelectedSiblingOfItemAtIndex(index);
91
- if (prevSelectedIndex >= 0) {
92
- this.adapter.removeAttributeFromElementAtIndex(prevSelectedIndex, strings.ARIA_CHECKED_ATTR);
93
- this.adapter.removeClassFromElementAtIndex(prevSelectedIndex, cssClasses.MENU_SELECTED_LIST_ITEM);
94
- }
95
- this.adapter.addClassToElementAtIndex(index, cssClasses.MENU_SELECTED_LIST_ITEM);
96
- this.adapter.addAttributeToElementAtIndex(index, strings.ARIA_CHECKED_ATTR, 'true');
97
- this.selectedIndex = index;
98
- }
99
- /**
100
- * Sets the enabled state to isEnabled for the menu item at the given index.
101
- * @param index Index of the menu item
102
- * @param isEnabled The desired enabled state of the menu item.
103
- */
104
- setEnabled(index, isEnabled) {
105
- this.validatedIndex(index);
106
- if (isEnabled) {
107
- this.adapter.removeClassFromElementAtIndex(index, LIST_ITEM_DISABLED_CLASS);
108
- this.adapter.addAttributeToElementAtIndex(index, strings.ARIA_DISABLED_ATTR, 'false');
109
- }
110
- else {
111
- this.adapter.addClassToElementAtIndex(index, LIST_ITEM_DISABLED_CLASS);
112
- this.adapter.addAttributeToElementAtIndex(index, strings.ARIA_DISABLED_ATTR, 'true');
113
- }
114
- }
115
- validatedIndex(index) {
116
- const menuSize = this.adapter.getMenuItemCount();
117
- const isIndexInRange = index >= 0 && index < menuSize;
118
- if (!isIndexInRange) {
119
- throw new Error('MDCMenuFoundation: No list item at specified index.');
120
- }
121
- }
122
- }
123
- //# sourceMappingURL=foundation.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"foundation.js","sourceRoot":"","sources":["foundation.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * @license\n * Copyright 2022 Google LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport {MDCMenuSurfaceFoundation} from '../../menusurface/lib/foundation.js';\n\nimport {MDCMenuAdapter} from './adapter.js';\nimport {cssClasses, numbers, strings} from './constants.js';\n\nconst LIST_ITEM_DISABLED_CLASS = 'md3-list-item--disabled';\n\nexport class MDCMenuFoundation {\n static get cssClasses() {\n return cssClasses;\n }\n\n static get strings() {\n return strings;\n }\n\n static get numbers() {\n return numbers;\n }\n\n private readonly adapter: MDCMenuAdapter;\n private closeAnimationEndTimerId = 0;\n private selectedIndex = -1;\n\n /**\n * @see {@link MDCMenuAdapter} for typing information on parameters and return types.\n */\n static get defaultAdapter(): MDCMenuAdapter {\n // tslint:disable:object-literal-sort-keys Methods should be in the same order as the adapter interface.\n return {\n addClassToElementAtIndex: () => undefined,\n removeClassFromElementAtIndex: () => undefined,\n addAttributeToElementAtIndex: () => undefined,\n removeAttributeFromElementAtIndex: () => undefined,\n getAttributeFromElementAtIndex: () => null,\n elementContainsClass: () => false,\n closeSurface: () => undefined,\n getElementIndex: () => -1,\n notifySelected: () => undefined,\n getMenuItemCount: () => 0,\n getSelectedSiblingOfItemAtIndex: () => -1,\n isSelectableItemAtIndex: () => false,\n };\n // tslint:enable:object-literal-sort-keys\n }\n\n constructor(adapter: Partial<MDCMenuAdapter>) {\n this.adapter = {...MDCMenuFoundation.defaultAdapter, ...adapter};\n }\n\n destroy() {\n if (this.closeAnimationEndTimerId) {\n clearTimeout(this.closeAnimationEndTimerId);\n }\n\n this.adapter.closeSurface();\n }\n\n handleKeydown(evt: KeyboardEvent) {\n const {key, keyCode} = evt;\n const isTab = key === 'Tab' || keyCode === 9;\n\n if (isTab) {\n this.adapter.closeSurface(/** skipRestoreFocus */ true);\n }\n }\n\n handleItemAction(listItem: Element) {\n const index = this.adapter.getElementIndex(listItem);\n if (index < 0) {\n return;\n }\n\n this.adapter.notifySelected({index});\n const skipRestoreFocus = this.adapter.getAttributeFromElementAtIndex(\n index, strings.SKIP_RESTORE_FOCUS) === 'true';\n this.adapter.closeSurface(skipRestoreFocus);\n\n // Wait for the menu to close before adding/removing classes that affect\n // styles.\n this.closeAnimationEndTimerId = setTimeout(() => {\n // Recompute the index in case the menu contents have changed.\n const recomputedIndex = this.adapter.getElementIndex(listItem);\n if (recomputedIndex >= 0 &&\n this.adapter.isSelectableItemAtIndex(recomputedIndex)) {\n this.setSelectedIndex(recomputedIndex);\n }\n }, MDCMenuSurfaceFoundation.numbers.TRANSITION_CLOSE_DURATION);\n }\n\n /** @return Index of the currently selected list item within the menu. */\n getSelectedIndex() {\n return this.selectedIndex;\n }\n\n /**\n * Selects the list item at `index` within the menu.\n * @param index Index of list item within the menu.\n */\n setSelectedIndex(index: number) {\n this.validatedIndex(index);\n\n if (!this.adapter.isSelectableItemAtIndex(index)) {\n throw new Error(\n 'MDCMenuFoundation: No selection group at specified index.');\n }\n\n const prevSelectedIndex =\n this.adapter.getSelectedSiblingOfItemAtIndex(index);\n if (prevSelectedIndex >= 0) {\n this.adapter.removeAttributeFromElementAtIndex(\n prevSelectedIndex, strings.ARIA_CHECKED_ATTR);\n this.adapter.removeClassFromElementAtIndex(\n prevSelectedIndex, cssClasses.MENU_SELECTED_LIST_ITEM);\n }\n\n this.adapter.addClassToElementAtIndex(\n index, cssClasses.MENU_SELECTED_LIST_ITEM);\n this.adapter.addAttributeToElementAtIndex(\n index, strings.ARIA_CHECKED_ATTR, 'true');\n\n this.selectedIndex = index;\n }\n\n /**\n * Sets the enabled state to isEnabled for the menu item at the given index.\n * @param index Index of the menu item\n * @param isEnabled The desired enabled state of the menu item.\n */\n setEnabled(index: number, isEnabled: boolean): void {\n this.validatedIndex(index);\n\n if (isEnabled) {\n this.adapter.removeClassFromElementAtIndex(\n index, LIST_ITEM_DISABLED_CLASS);\n this.adapter.addAttributeToElementAtIndex(\n index, strings.ARIA_DISABLED_ATTR, 'false');\n } else {\n this.adapter.addClassToElementAtIndex(index, LIST_ITEM_DISABLED_CLASS);\n this.adapter.addAttributeToElementAtIndex(\n index, strings.ARIA_DISABLED_ATTR, 'true');\n }\n }\n\n private validatedIndex(index: number): void {\n const menuSize = this.adapter.getMenuItemCount();\n const isIndexInRange = index >= 0 && index < menuSize;\n\n if (!isIndexInRange) {\n throw new Error('MDCMenuFoundation: No list item at specified index.');\n }\n }\n}\n"]}
@@ -1,9 +0,0 @@
1
- /**
2
- * @license
3
- * Copyright 2022 Google LLC
4
- * SPDX-License-Identifier: Apache-2.0
5
- */
6
- import { css } from 'lit';
7
- export const styles = css `.md3-menu-button{overflow:visible;position:relative}/*# sourceMappingURL=menu-button-styles.css.map */
8
- `;
9
- //# sourceMappingURL=menu-button-styles.css.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"menu-button-styles.css.js","sourceRoot":"","sources":["menu-button-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`.md3-menu-button{overflow:visible;position:relative}/*# sourceMappingURL=menu-button-styles.css.map */\n`;\n "]}
@@ -1,8 +0,0 @@
1
- //
2
- // Copyright 2022 Google LLC
3
- // SPDX-License-Identifier: Apache-2.0
4
- //
5
-
6
- @use './menu-button';
7
-
8
- @include menu-button.styles;
@@ -1,27 +0,0 @@
1
- /**
2
- * @license
3
- * Copyright 2022 Google LLC
4
- * SPDX-License-Identifier: Apache-2.0
5
- */
6
- import { LitElement, PropertyValues } from 'lit';
7
- import { Menu } from './menu.js';
8
- /**
9
- * Menu button component that automatically attaches a slotted menu to the
10
- * slotted button.
11
- */
12
- export declare class MenuButton extends LitElement {
13
- protected readonly buttonAssignedElements: HTMLElement[];
14
- protected readonly menuAssignedElements: HTMLElement[];
15
- get button(): HTMLElement;
16
- get menu(): Menu;
17
- protected render(): import("lit-html").TemplateResult<1>;
18
- protected firstUpdated(changedProperties: PropertyValues): void;
19
- /**
20
- * If key event is ArrowUp or ArrowDown, opens the menu.
21
- */
22
- private handleButtonKeydown;
23
- /**
24
- * Toggles the menu on button click.
25
- */
26
- private handleButtonClick;
27
- }
@@ -1,93 +0,0 @@
1
- /**
2
- * @license
3
- * Copyright 2022 Google LLC
4
- * SPDX-License-Identifier: Apache-2.0
5
- */
6
- import { __decorate, __metadata } from "tslib";
7
- import { html, LitElement } from 'lit';
8
- import { queryAssignedElements } from 'lit/decorators.js';
9
- import { Menu } from './menu.js';
10
- /**
11
- * Menu button component that automatically attaches a slotted menu to the
12
- * slotted button.
13
- */
14
- export class MenuButton extends LitElement {
15
- get button() {
16
- if (this.buttonAssignedElements.length === 0) {
17
- throw new Error('MenuButton: Missing a slot="button" element.');
18
- }
19
- return this.buttonAssignedElements[0];
20
- }
21
- get menu() {
22
- if (this.menuAssignedElements.length === 0) {
23
- throw new Error('MenuButton: Missing a slot="menu" element.');
24
- }
25
- if (!(this.menuAssignedElements[0] instanceof Menu)) {
26
- throw new Error('MenuButton: The slot="menu" element must be an instance of the ' +
27
- 'Menu component.');
28
- }
29
- return this.menuAssignedElements[0];
30
- }
31
- render() {
32
- return html `
33
- <div class="md3-menu-button">
34
- <span>
35
- <slot name="button"
36
- @click=${this.handleButtonClick}
37
- @keydown=${this.handleButtonKeydown}>
38
- </slot>
39
- </span>
40
- <span><slot name="menu"></slot></span>
41
- </div>
42
- `;
43
- }
44
- firstUpdated(changedProperties) {
45
- super.firstUpdated(changedProperties);
46
- if (!this.menu.anchor) {
47
- this.menu.anchor = this.button;
48
- }
49
- }
50
- /**
51
- * If key event is ArrowUp or ArrowDown, opens the menu.
52
- */
53
- handleButtonKeydown(event) {
54
- if (event.key !== 'ArrowUp' && event.key !== 'ArrowDown')
55
- return;
56
- if (event.key === 'ArrowUp') {
57
- this.menu.defaultFocus = 'LAST_ITEM';
58
- }
59
- else if (event.key === 'ArrowDown') {
60
- this.menu.defaultFocus = 'FIRST_ITEM';
61
- }
62
- this.menu.show();
63
- }
64
- /**
65
- * Toggles the menu on button click.
66
- */
67
- handleButtonClick(event) {
68
- if (this.menu.open) {
69
- this.menu.close();
70
- return;
71
- }
72
- // Whether the click is from SPACE or ENTER keypress on a button, for which
73
- // the browser fires a synthetic click event.
74
- const isSyntheticClickEvent = event.pointerType === '';
75
- if (isSyntheticClickEvent) {
76
- // Key events should automatically focus on first menu item.
77
- this.menu.defaultFocus = 'FIRST_ITEM';
78
- }
79
- else {
80
- this.menu.defaultFocus = 'LIST_ROOT';
81
- }
82
- this.menu.show();
83
- }
84
- }
85
- __decorate([
86
- queryAssignedElements({ slot: 'button', flatten: true }),
87
- __metadata("design:type", Array)
88
- ], MenuButton.prototype, "buttonAssignedElements", void 0);
89
- __decorate([
90
- queryAssignedElements({ slot: 'menu', flatten: true }),
91
- __metadata("design:type", Array)
92
- ], MenuButton.prototype, "menuAssignedElements", void 0);
93
- //# sourceMappingURL=menu-button.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"menu-button.js","sourceRoot":"","sources":["menu-button.ts"],"names":[],"mappings":"AAAA;;;;GAIG;;AAEH,OAAO,EAAC,IAAI,EAAE,UAAU,EAAiB,MAAM,KAAK,CAAC;AACrD,OAAO,EAAC,qBAAqB,EAAC,MAAM,mBAAmB,CAAC;AAExD,OAAO,EAAC,IAAI,EAAC,MAAM,WAAW,CAAC;AAE/B;;;GAGG;AACH,MAAM,OAAO,UAAW,SAAQ,UAAU;IAOxC,IAAI,MAAM;QACR,IAAI,IAAI,CAAC,sBAAsB,CAAC,MAAM,KAAK,CAAC,EAAE;YAC5C,MAAM,IAAI,KAAK,CAAC,8CAA8C,CAAC,CAAA;SAChE;QACD,OAAO,IAAI,CAAC,sBAAsB,CAAC,CAAC,CAAC,CAAC;IACxC,CAAC;IAED,IAAI,IAAI;QACN,IAAI,IAAI,CAAC,oBAAoB,CAAC,MAAM,KAAK,CAAC,EAAE;YAC1C,MAAM,IAAI,KAAK,CAAC,4CAA4C,CAAC,CAAA;SAC9D;QACD,IAAI,CAAC,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC,CAAC,YAAY,IAAI,CAAC,EAAE;YACnD,MAAM,IAAI,KAAK,CACX,iEAAiE;gBACjE,iBAAiB,CAAC,CAAC;SACxB;QACD,OAAO,IAAI,CAAC,oBAAoB,CAAC,CAAC,CAAC,CAAC;IACtC,CAAC;IAEkB,MAAM;QACvB,OAAO,IAAI,CAAA;;;;uBAIQ,IAAI,CAAC,iBAAiB;yBACpB,IAAI,CAAC,mBAAmB;;;;;KAK5C,CAAC;IACJ,CAAC;IAEkB,YAAY,CAAC,iBAAiC;QAC/D,KAAK,CAAC,YAAY,CAAC,iBAAiB,CAAC,CAAC;QAEtC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE;YACrB,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;SAChC;IACH,CAAC;IAED;;OAEG;IACK,mBAAmB,CAAC,KAAoB;QAC9C,IAAI,KAAK,CAAC,GAAG,KAAK,SAAS,IAAI,KAAK,CAAC,GAAG,KAAK,WAAW;YAAE,OAAO;QAEjE,IAAI,KAAK,CAAC,GAAG,KAAK,SAAS,EAAE;YAC3B,IAAI,CAAC,IAAI,CAAC,YAAY,GAAG,WAAW,CAAC;SACtC;aAAM,IAAI,KAAK,CAAC,GAAG,KAAK,WAAW,EAAE;YACpC,IAAI,CAAC,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;SACvC;QACD,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;IACnB,CAAC;IAED;;OAEG;IACK,iBAAiB,CAAC,KAAmB;QAC3C,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE;YAClB,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;YAClB,OAAO;SACR;QAED,2EAA2E;QAC3E,6CAA6C;QAC7C,MAAM,qBAAqB,GAAG,KAAK,CAAC,WAAW,KAAK,EAAE,CAAC;QACvD,IAAI,qBAAqB,EAAE;YACzB,4DAA4D;YAC5D,IAAI,CAAC,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;SACvC;aAAM;YACL,IAAI,CAAC,IAAI,CAAC,YAAY,GAAG,WAAW,CAAC;SACtC;QAED,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;IACnB,CAAC;CACF;AAjFC;IADC,qBAAqB,CAAC,EAAC,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,IAAI,EAAC,CAAC;;0DACG;AAG1D;IADC,qBAAqB,CAAC,EAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAC,CAAC;;wDACG","sourcesContent":["/**\n * @license\n * Copyright 2022 Google LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport {html, LitElement, PropertyValues} from 'lit';\nimport {queryAssignedElements} from 'lit/decorators.js';\n\nimport {Menu} from './menu.js';\n\n/**\n * Menu button component that automatically attaches a slotted menu to the\n * slotted button.\n */\nexport class MenuButton extends LitElement {\n @queryAssignedElements({slot: 'button', flatten: true})\n protected readonly buttonAssignedElements!: HTMLElement[];\n\n @queryAssignedElements({slot: 'menu', flatten: true})\n protected readonly menuAssignedElements!: HTMLElement[];\n\n get button(): HTMLElement {\n if (this.buttonAssignedElements.length === 0) {\n throw new Error('MenuButton: Missing a slot=\"button\" element.')\n }\n return this.buttonAssignedElements[0];\n }\n\n get menu(): Menu {\n if (this.menuAssignedElements.length === 0) {\n throw new Error('MenuButton: Missing a slot=\"menu\" element.')\n }\n if (!(this.menuAssignedElements[0] instanceof Menu)) {\n throw new Error(\n 'MenuButton: The slot=\"menu\" element must be an instance of the ' +\n 'Menu component.');\n }\n return this.menuAssignedElements[0];\n }\n\n protected override render() {\n return html`\n <div class=\"md3-menu-button\">\n <span>\n <slot name=\"button\"\n @click=${this.handleButtonClick}\n @keydown=${this.handleButtonKeydown}>\n </slot>\n </span>\n <span><slot name=\"menu\"></slot></span>\n </div>\n `;\n }\n\n protected override firstUpdated(changedProperties: PropertyValues) {\n super.firstUpdated(changedProperties);\n\n if (!this.menu.anchor) {\n this.menu.anchor = this.button;\n }\n }\n\n /**\n * If key event is ArrowUp or ArrowDown, opens the menu.\n */\n private handleButtonKeydown(event: KeyboardEvent) {\n if (event.key !== 'ArrowUp' && event.key !== 'ArrowDown') return;\n\n if (event.key === 'ArrowUp') {\n this.menu.defaultFocus = 'LAST_ITEM';\n } else if (event.key === 'ArrowDown') {\n this.menu.defaultFocus = 'FIRST_ITEM';\n }\n this.menu.show();\n }\n\n /**\n * Toggles the menu on button click.\n */\n private handleButtonClick(event: PointerEvent) {\n if (this.menu.open) {\n this.menu.close();\n return;\n }\n\n // Whether the click is from SPACE or ENTER keypress on a button, for which\n // the browser fires a synthetic click event.\n const isSyntheticClickEvent = event.pointerType === '';\n if (isSyntheticClickEvent) {\n // Key events should automatically focus on first menu item.\n this.menu.defaultFocus = 'FIRST_ITEM';\n } else {\n this.menu.defaultFocus = 'LIST_ROOT';\n }\n\n this.menu.show();\n }\n}\n"]}
@@ -1,14 +0,0 @@
1
- /**
2
- * @license
3
- * Copyright 2022 Google LLC
4
- * SPDX-License-Identifier: Apache-2.0
5
- */
6
- import { MenuButton } from './lib/menu-button.js';
7
- declare global {
8
- interface HTMLElementTagNameMap {
9
- 'md-menu-button': MdMenuButton;
10
- }
11
- }
12
- export declare class MdMenuButton extends MenuButton {
13
- static styles: import("lit").CSSResult[];
14
- }
@@ -1,17 +0,0 @@
1
- /**
2
- * @license
3
- * Copyright 2022 Google LLC
4
- * SPDX-License-Identifier: Apache-2.0
5
- */
6
- import { __decorate } from "tslib";
7
- import { customElement } from 'lit/decorators.js';
8
- import { MenuButton } from './lib/menu-button.js';
9
- import { styles } from './lib/menu-button-styles.css.js';
10
- let MdMenuButton = class MdMenuButton extends MenuButton {
11
- };
12
- MdMenuButton.styles = [styles];
13
- MdMenuButton = __decorate([
14
- customElement('md-menu-button')
15
- ], MdMenuButton);
16
- export { MdMenuButton };
17
- //# sourceMappingURL=menu-button.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"menu-button.js","sourceRoot":"","sources":["menu-button.ts"],"names":[],"mappings":"AAAA;;;;GAIG;;AAEH,OAAO,EAAC,aAAa,EAAC,MAAM,mBAAmB,CAAC;AAEhD,OAAO,EAAC,UAAU,EAAC,MAAM,sBAAsB,CAAC;AAChD,OAAO,EAAC,MAAM,EAAC,MAAM,iCAAiC,CAAC;AASvD,IAAa,YAAY,GAAzB,MAAa,YAAa,SAAQ,UAAU;CAE3C,CAAA;AADiB,mBAAM,GAAG,CAAC,MAAM,CAAE,CAAA;AADvB,YAAY;IADxB,aAAa,CAAC,gBAAgB,CAAC;GACnB,YAAY,CAExB;SAFY,YAAY","sourcesContent":["/**\n * @license\n * Copyright 2022 Google LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport {customElement} from 'lit/decorators.js';\n\nimport {MenuButton} from './lib/menu-button.js';\nimport {styles} from './lib/menu-button-styles.css.js';\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'md-menu-button': MdMenuButton;\n }\n}\n\n@customElement('md-menu-button')\nexport class MdMenuButton extends MenuButton {\n static override styles = [styles];\n}\n"]}