@material/web 1.0.0-pre.13 → 1.0.0-pre.15

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 (1187) hide show
  1. package/README.md +9 -9
  2. package/all.d.ts +93 -0
  3. package/all.js +102 -0
  4. package/all.js.map +1 -0
  5. package/button/_elevated-button.scss +1 -1
  6. package/button/_filled-button.scss +1 -1
  7. package/button/_filled-tonal-button.scss +6 -0
  8. package/button/_outlined-button.scss +1 -1
  9. package/button/_text-button.scss +1 -1
  10. package/button/elevated-button.d.ts +1 -1
  11. package/button/elevated-button.js +4 -4
  12. package/button/elevated-button.js.map +1 -1
  13. package/button/filled-button.d.ts +1 -1
  14. package/button/filled-button.js +4 -4
  15. package/button/filled-button.js.map +1 -1
  16. package/button/filled-tonal-button.d.ts +35 -0
  17. package/button/filled-tonal-button.js +40 -0
  18. package/button/filled-tonal-button.js.map +1 -0
  19. package/button/harness.d.ts +1 -1
  20. package/button/harness.js +1 -1
  21. package/button/harness.js.map +1 -1
  22. package/button/internal/_elevation.scss +65 -0
  23. package/button/internal/_filled-tonal-button.scss +61 -0
  24. package/button/internal/_icon.scss +39 -0
  25. package/button/internal/_outlined-button.scss +104 -0
  26. package/button/internal/_shared.scss +159 -0
  27. package/button/internal/_touch-target.scss +19 -0
  28. package/button/internal/button.d.ts +67 -0
  29. package/button/internal/button.js +157 -0
  30. package/button/internal/button.js.map +1 -0
  31. package/button/internal/elevated-button.d.ts +13 -0
  32. package/button/internal/elevated-button.js +17 -0
  33. package/button/internal/elevated-button.js.map +1 -0
  34. package/button/internal/elevated-styles.css.js +9 -0
  35. package/button/internal/elevated-styles.css.js.map +1 -0
  36. package/button/internal/filled-button.d.ts +13 -0
  37. package/button/internal/filled-button.js +17 -0
  38. package/button/internal/filled-button.js.map +1 -0
  39. package/button/internal/filled-styles.css.js +9 -0
  40. package/button/internal/filled-styles.css.js.map +1 -0
  41. package/button/internal/filled-tonal-button.d.ts +13 -0
  42. package/button/internal/filled-tonal-button.js +17 -0
  43. package/button/internal/filled-tonal-button.js.map +1 -0
  44. package/button/internal/filled-tonal-styles.css.js +9 -0
  45. package/button/internal/filled-tonal-styles.css.js.map +1 -0
  46. package/button/internal/filled-tonal-styles.scss +10 -0
  47. package/button/internal/outlined-button.d.ts +12 -0
  48. package/button/internal/outlined-button.js +16 -0
  49. package/button/internal/outlined-button.js.map +1 -0
  50. package/button/internal/outlined-styles.css.js +9 -0
  51. package/button/internal/outlined-styles.css.js.map +1 -0
  52. package/button/internal/shared-elevation-styles.css.js +9 -0
  53. package/button/internal/shared-elevation-styles.css.js.map +1 -0
  54. package/button/internal/shared-styles.css.js +9 -0
  55. package/button/internal/shared-styles.css.js.map +1 -0
  56. package/button/internal/text-button.d.ts +11 -0
  57. package/button/internal/text-button.js +12 -0
  58. package/button/internal/text-button.js.map +1 -0
  59. package/button/internal/text-styles.css.js +9 -0
  60. package/button/internal/text-styles.css.js.map +1 -0
  61. package/button/outlined-button.d.ts +1 -1
  62. package/button/outlined-button.js +3 -3
  63. package/button/outlined-button.js.map +1 -1
  64. package/button/text-button.d.ts +1 -1
  65. package/button/text-button.js +3 -3
  66. package/button/text-button.js.map +1 -1
  67. package/checkbox/_checkbox.scss +1 -1
  68. package/checkbox/checkbox.d.ts +1 -1
  69. package/checkbox/checkbox.js +3 -4
  70. package/checkbox/checkbox.js.map +1 -1
  71. package/checkbox/harness.d.ts +1 -1
  72. package/checkbox/harness.js.map +1 -1
  73. package/checkbox/internal/_checkbox.scss +415 -0
  74. package/checkbox/internal/checkbox-styles.css.js +9 -0
  75. package/checkbox/internal/checkbox-styles.css.js.map +1 -0
  76. package/checkbox/internal/checkbox.d.ts +137 -0
  77. package/checkbox/internal/checkbox.js +299 -0
  78. package/checkbox/internal/checkbox.js.map +1 -0
  79. package/chips/_assist-chip.scss +1 -1
  80. package/chips/_filter-chip.scss +1 -1
  81. package/chips/_input-chip.scss +1 -1
  82. package/chips/_suggestion-chip.scss +1 -1
  83. package/chips/assist-chip.d.ts +1 -1
  84. package/chips/assist-chip.js +5 -5
  85. package/chips/assist-chip.js.map +1 -1
  86. package/chips/chip-set.d.ts +1 -1
  87. package/chips/chip-set.js +2 -2
  88. package/chips/chip-set.js.map +1 -1
  89. package/chips/filter-chip.d.ts +1 -1
  90. package/chips/filter-chip.js +7 -7
  91. package/chips/filter-chip.js.map +1 -1
  92. package/chips/harness.d.ts +1 -1
  93. package/chips/harness.js.map +1 -1
  94. package/chips/input-chip.d.ts +1 -1
  95. package/chips/input-chip.js +6 -6
  96. package/chips/input-chip.js.map +1 -1
  97. package/chips/internal/_shared.scss +200 -0
  98. package/chips/internal/_trailing-icon.scss +80 -0
  99. package/chips/internal/chip-set.js +163 -0
  100. package/chips/internal/chip-set.js.map +1 -0
  101. package/chips/internal/chip.d.ts +45 -0
  102. package/chips/internal/chip.js +93 -0
  103. package/chips/internal/chip.js.map +1 -0
  104. package/chips/internal/filter-chip.d.ts +33 -0
  105. package/chips/internal/filter-chip.js +109 -0
  106. package/chips/internal/filter-chip.js.map +1 -0
  107. package/chips/internal/shared-styles.css.js +9 -0
  108. package/chips/internal/shared-styles.css.js.map +1 -0
  109. package/chips/internal/trailing-icon-styles.css.js +9 -0
  110. package/chips/internal/trailing-icon-styles.css.js.map +1 -0
  111. package/chips/internal/trailing-icons.d.ts +15 -0
  112. package/chips/internal/trailing-icons.js +38 -0
  113. package/chips/internal/trailing-icons.js.map +1 -0
  114. package/chips/suggestion-chip.d.ts +1 -1
  115. package/chips/suggestion-chip.js +5 -5
  116. package/chips/suggestion-chip.js.map +1 -1
  117. package/common.d.ts +57 -0
  118. package/common.js +66 -0
  119. package/common.js.map +1 -0
  120. package/dialog/_dialog.scss +1 -1
  121. package/dialog/dialog.d.ts +1 -1
  122. package/dialog/dialog.js +2 -2
  123. package/dialog/dialog.js.map +1 -1
  124. package/dialog/harness.d.ts +2 -7
  125. package/dialog/harness.js +2 -43
  126. package/dialog/harness.js.map +1 -1
  127. package/dialog/internal/_dialog.scss +260 -0
  128. package/dialog/internal/animations.d.ts +47 -0
  129. package/dialog/internal/animations.js +117 -0
  130. package/dialog/internal/animations.js.map +1 -0
  131. package/dialog/internal/dialog-styles.css.js +9 -0
  132. package/dialog/internal/dialog-styles.css.js.map +1 -0
  133. package/dialog/internal/dialog.d.ts +103 -0
  134. package/dialog/internal/dialog.js +338 -0
  135. package/dialog/internal/dialog.js.map +1 -0
  136. package/divider/_divider.scss +1 -1
  137. package/divider/divider.d.ts +1 -1
  138. package/divider/divider.js +2 -2
  139. package/divider/divider.js.map +1 -1
  140. package/elevation/_elevation.scss +1 -1
  141. package/elevation/elevation.d.ts +1 -1
  142. package/elevation/elevation.js +2 -2
  143. package/elevation/elevation.js.map +1 -1
  144. package/fab/_fab.scss +2 -2
  145. package/fab/branded-fab.d.ts +3 -3
  146. package/fab/branded-fab.js +4 -4
  147. package/fab/branded-fab.js.map +1 -1
  148. package/fab/fab.d.ts +3 -3
  149. package/fab/fab.js +4 -4
  150. package/fab/fab.js.map +1 -1
  151. package/fab/harness.d.ts +1 -1
  152. package/fab/harness.js.map +1 -1
  153. package/fab/internal/_fab.scss +260 -0
  154. package/fab/internal/_shared.scss +239 -0
  155. package/fab/internal/fab-styles.css.js +9 -0
  156. package/fab/internal/fab-styles.css.js.map +1 -0
  157. package/fab/internal/fab.d.ts +26 -0
  158. package/fab/internal/fab.js.map +1 -0
  159. package/fab/internal/forced-colors-styles.css.js +9 -0
  160. package/fab/internal/forced-colors-styles.css.js.map +1 -0
  161. package/fab/internal/forced-colors-styles.scss +29 -0
  162. package/fab/internal/shared-styles.css.js +9 -0
  163. package/fab/internal/shared-styles.css.js.map +1 -0
  164. package/fab/internal/shared.d.ts +51 -0
  165. package/fab/internal/shared.js +110 -0
  166. package/fab/internal/shared.js.map +1 -0
  167. package/field/_filled-field.scss +1 -1
  168. package/field/_outlined-field.scss +1 -1
  169. package/field/filled-field.d.ts +1 -1
  170. package/field/filled-field.js +3 -3
  171. package/field/filled-field.js.map +1 -1
  172. package/field/harness.d.ts +1 -1
  173. package/field/harness.js.map +1 -1
  174. package/field/internal/_content.scss +191 -0
  175. package/field/internal/_filled-field.scss +203 -0
  176. package/field/internal/_label.scss +91 -0
  177. package/field/internal/_outlined-field.scss +323 -0
  178. package/field/internal/_shared.scss +70 -0
  179. package/field/internal/_supporting-text.scss +47 -0
  180. package/field/internal/field.d.ts +64 -0
  181. package/field/internal/field.js +318 -0
  182. package/field/internal/field.js.map +1 -0
  183. package/field/internal/filled-styles.css.js +9 -0
  184. package/field/internal/filled-styles.css.js.map +1 -0
  185. package/field/internal/outlined-styles.css.js +9 -0
  186. package/field/internal/outlined-styles.css.js.map +1 -0
  187. package/field/internal/shared-styles.css.js +9 -0
  188. package/field/internal/shared-styles.css.js.map +1 -0
  189. package/field/outlined-field.d.ts +1 -1
  190. package/field/outlined-field.js +3 -3
  191. package/field/outlined-field.js.map +1 -1
  192. package/focus/_focus-ring.scss +1 -1
  193. package/focus/internal/_focus-ring.scss +139 -0
  194. package/focus/internal/focus-ring-styles.css.js +9 -0
  195. package/focus/internal/focus-ring-styles.css.js.map +1 -0
  196. package/focus/internal/focus-ring.d.ts +35 -0
  197. package/focus/internal/focus-ring.js +89 -0
  198. package/focus/internal/focus-ring.js.map +1 -0
  199. package/focus/md-focus-ring.d.ts +20 -0
  200. package/focus/md-focus-ring.js +23 -0
  201. package/focus/md-focus-ring.js.map +1 -0
  202. package/icon/_icon.scss +1 -1
  203. package/icon/icon.d.ts +1 -1
  204. package/icon/icon.js +2 -2
  205. package/icon/icon.js.map +1 -1
  206. package/icon/internal/_icon.scss +61 -0
  207. package/icon/internal/icon-styles.css.js +9 -0
  208. package/icon/internal/icon-styles.css.js.map +1 -0
  209. package/icon/internal/icon.d.ts +13 -0
  210. package/icon/internal/icon.js +24 -0
  211. package/icon/internal/icon.js.map +1 -0
  212. package/iconbutton/_filled-icon-button.scss +1 -1
  213. package/iconbutton/_filled-tonal-icon-button.scss +1 -1
  214. package/iconbutton/_icon-button.scss +6 -0
  215. package/iconbutton/_outlined-icon-button.scss +1 -1
  216. package/iconbutton/filled-icon-button.d.ts +1 -1
  217. package/iconbutton/filled-icon-button.js +3 -3
  218. package/iconbutton/filled-icon-button.js.map +1 -1
  219. package/iconbutton/filled-tonal-icon-button.d.ts +1 -1
  220. package/iconbutton/filled-tonal-icon-button.js +3 -3
  221. package/iconbutton/filled-tonal-icon-button.js.map +1 -1
  222. package/iconbutton/harness.d.ts +1 -1
  223. package/iconbutton/harness.js.map +1 -1
  224. package/iconbutton/icon-button.d.ts +34 -0
  225. package/iconbutton/icon-button.js +39 -0
  226. package/iconbutton/icon-button.js.map +1 -0
  227. package/iconbutton/internal/_filled-icon-button.scss +171 -0
  228. package/iconbutton/internal/_filled-tonal-icon-button.scss +173 -0
  229. package/iconbutton/internal/_icon-button.scss +117 -0
  230. package/iconbutton/internal/_outlined-icon-button.scss +178 -0
  231. package/iconbutton/internal/_shared.scss +103 -0
  232. package/iconbutton/internal/filled-styles.css.js +9 -0
  233. package/iconbutton/internal/filled-styles.css.js.map +1 -0
  234. package/iconbutton/internal/filled-tonal-styles.css.js +9 -0
  235. package/iconbutton/internal/filled-tonal-styles.css.js.map +1 -0
  236. package/iconbutton/internal/icon-button.d.ts +68 -0
  237. package/iconbutton/internal/icon-button.js +181 -0
  238. package/iconbutton/internal/icon-button.js.map +1 -0
  239. package/iconbutton/internal/outlined-styles.css.js +9 -0
  240. package/iconbutton/internal/outlined-styles.css.js.map +1 -0
  241. package/iconbutton/internal/shared-styles.css.js +9 -0
  242. package/iconbutton/internal/shared-styles.css.js.map +1 -0
  243. package/iconbutton/internal/standard-styles.css.js +9 -0
  244. package/iconbutton/internal/standard-styles.css.js.map +1 -0
  245. package/iconbutton/internal/standard-styles.scss +10 -0
  246. package/iconbutton/outlined-icon-button.d.ts +1 -1
  247. package/iconbutton/outlined-icon-button.js +3 -3
  248. package/iconbutton/outlined-icon-button.js.map +1 -1
  249. package/internal/aria/delegate.d.ts +1 -1
  250. package/internal/aria/delegate.js +1 -1
  251. package/internal/aria/delegate.js.map +1 -1
  252. package/internal/controller/element-internals.d.ts +35 -0
  253. package/internal/controller/element-internals.js +24 -0
  254. package/internal/controller/element-internals.js.map +1 -0
  255. package/internal/controller/form-submitter.d.ts +60 -0
  256. package/internal/controller/form-submitter.js +69 -0
  257. package/internal/controller/form-submitter.js.map +1 -0
  258. package/labs/badge/_badge.scss +1 -1
  259. package/labs/badge/badge.d.ts +1 -1
  260. package/labs/badge/badge.js +2 -2
  261. package/labs/badge/badge.js.map +1 -1
  262. package/labs/navigationbar/_navigation-bar.scss +1 -1
  263. package/labs/navigationbar/harness.d.ts +1 -1
  264. package/labs/navigationbar/harness.js.map +1 -1
  265. package/labs/navigationbar/internal/constants.d.ts +17 -0
  266. package/labs/navigationbar/internal/constants.js.map +1 -0
  267. package/labs/navigationbar/internal/navigation-bar.d.ts +27 -0
  268. package/labs/navigationbar/internal/navigation-bar.js +138 -0
  269. package/labs/navigationbar/internal/navigation-bar.js.map +1 -0
  270. package/labs/navigationbar/internal/state.d.ts +23 -0
  271. package/labs/navigationbar/internal/state.js.map +1 -0
  272. package/labs/navigationbar/navigation-bar.d.ts +1 -1
  273. package/labs/navigationbar/navigation-bar.js +2 -2
  274. package/labs/navigationbar/navigation-bar.js.map +1 -1
  275. package/labs/navigationdrawer/_navigation-drawer-modal.scss +1 -1
  276. package/labs/navigationdrawer/_navigation-drawer.scss +1 -1
  277. package/labs/navigationdrawer/internal/navigation-drawer-modal.js +81 -0
  278. package/labs/navigationdrawer/internal/navigation-drawer-modal.js.map +1 -0
  279. package/labs/navigationdrawer/internal/navigation-drawer.js +64 -0
  280. package/labs/navigationdrawer/internal/navigation-drawer.js.map +1 -0
  281. package/labs/navigationdrawer/navigation-drawer-modal.d.ts +1 -1
  282. package/labs/navigationdrawer/navigation-drawer-modal.js +3 -3
  283. package/labs/navigationdrawer/navigation-drawer-modal.js.map +1 -1
  284. package/labs/navigationdrawer/navigation-drawer.d.ts +1 -1
  285. package/labs/navigationdrawer/navigation-drawer.js +3 -3
  286. package/labs/navigationdrawer/navigation-drawer.js.map +1 -1
  287. package/labs/navigationtab/_navigation-tab.scss +1 -1
  288. package/labs/navigationtab/harness.d.ts +1 -1
  289. package/labs/navigationtab/harness.js.map +1 -1
  290. package/labs/navigationtab/internal/_navigation-tab.scss +259 -0
  291. package/labs/navigationtab/internal/navigation-tab-styles.css.js +9 -0
  292. package/labs/navigationtab/internal/navigation-tab-styles.css.js.map +1 -0
  293. package/labs/navigationtab/internal/navigation-tab.d.ts +30 -0
  294. package/labs/navigationtab/internal/navigation-tab.js +117 -0
  295. package/labs/navigationtab/internal/navigation-tab.js.map +1 -0
  296. package/labs/navigationtab/navigation-tab.d.ts +1 -1
  297. package/labs/navigationtab/navigation-tab.js +2 -2
  298. package/labs/navigationtab/navigation-tab.js.map +1 -1
  299. package/labs/segmentedbutton/internal/outlined-styles.css.js +9 -0
  300. package/labs/segmentedbutton/internal/outlined-styles.css.js.map +1 -0
  301. package/labs/segmentedbutton/internal/segmented-button.d.ts +44 -0
  302. package/labs/segmentedbutton/internal/segmented-button.js +157 -0
  303. package/labs/segmentedbutton/internal/segmented-button.js.map +1 -0
  304. package/labs/segmentedbutton/outlined-segmented-button.d.ts +1 -1
  305. package/labs/segmentedbutton/outlined-segmented-button.js +3 -3
  306. package/labs/segmentedbutton/outlined-segmented-button.js.map +1 -1
  307. package/labs/segmentedbuttonset/internal/outlined-styles.css.js +9 -0
  308. package/labs/segmentedbuttonset/internal/outlined-styles.css.js.map +1 -0
  309. package/labs/segmentedbuttonset/internal/segmented-button-set.d.ts +26 -0
  310. package/labs/segmentedbuttonset/internal/segmented-button-set.js +108 -0
  311. package/labs/segmentedbuttonset/internal/segmented-button-set.js.map +1 -0
  312. package/labs/segmentedbuttonset/outlined-segmented-button-set.d.ts +1 -1
  313. package/labs/segmentedbuttonset/outlined-segmented-button-set.js +3 -3
  314. package/labs/segmentedbuttonset/outlined-segmented-button-set.js.map +1 -1
  315. package/list/_list-item.scss +1 -1
  316. package/list/_list.scss +1 -1
  317. package/list/harness.d.ts +3 -3
  318. package/list/harness.js +2 -2
  319. package/list/harness.js.map +1 -1
  320. package/list/internal/list.d.ts +135 -0
  321. package/list/internal/list.js +303 -0
  322. package/list/internal/list.js.map +1 -0
  323. package/list/internal/listitem/_list-item.scss +394 -0
  324. package/list/internal/listitem/list-item-styles.css.js +9 -0
  325. package/list/internal/listitem/list-item-styles.css.js.map +1 -0
  326. package/list/internal/listitem/list-item.d.ts +145 -0
  327. package/list/internal/listitem/list-item.js +263 -0
  328. package/list/internal/listitem/list-item.js.map +1 -0
  329. package/list/list-item.d.ts +2 -2
  330. package/list/list-item.js +3 -3
  331. package/list/list-item.js.map +1 -1
  332. package/list/list.d.ts +1 -1
  333. package/list/list.js +2 -2
  334. package/list/list.js.map +1 -1
  335. package/menu/_menu-item.scss +1 -1
  336. package/menu/_menu.scss +1 -1
  337. package/menu/harness.d.ts +3 -3
  338. package/menu/harness.js +2 -2
  339. package/menu/harness.js.map +1 -1
  340. package/menu/internal/_menu.scss +105 -0
  341. package/menu/internal/menu-styles.css.js +9 -0
  342. package/menu/internal/menu-styles.css.js.map +1 -0
  343. package/menu/internal/menu.d.ts +225 -0
  344. package/menu/internal/menu.js +672 -0
  345. package/menu/internal/menu.js.map +1 -0
  346. package/menu/internal/menuitem/_menu-item.scss +60 -0
  347. package/menu/internal/menuitem/forced-colors-styles.css.js +9 -0
  348. package/menu/internal/menuitem/forced-colors-styles.css.js.map +1 -0
  349. package/menu/internal/menuitem/forced-colors-styles.scss +22 -0
  350. package/menu/internal/menuitem/harness.d.ts +11 -0
  351. package/menu/internal/menuitem/harness.js +12 -0
  352. package/menu/internal/menuitem/harness.js.map +1 -0
  353. package/menu/internal/menuitem/menu-item-styles.css.js +9 -0
  354. package/menu/internal/menuitem/menu-item-styles.css.js.map +1 -0
  355. package/menu/internal/menuitem/menu-item.d.ts +37 -0
  356. package/menu/internal/menuitem/menu-item.js +65 -0
  357. package/menu/internal/menuitem/menu-item.js.map +1 -0
  358. package/menu/internal/shared.d.ts +185 -0
  359. package/menu/internal/shared.js +131 -0
  360. package/menu/internal/shared.js.map +1 -0
  361. package/menu/internal/submenuitem/harness.d.ts +11 -0
  362. package/menu/internal/submenuitem/harness.js +12 -0
  363. package/menu/internal/submenuitem/harness.js.map +1 -0
  364. package/menu/internal/submenuitem/sub-menu-item.d.ts +109 -0
  365. package/menu/internal/submenuitem/sub-menu-item.js +308 -0
  366. package/menu/internal/submenuitem/sub-menu-item.js.map +1 -0
  367. package/menu/internal/typeaheadController.d.ts +157 -0
  368. package/menu/internal/typeaheadController.js +252 -0
  369. package/menu/internal/typeaheadController.js.map +1 -0
  370. package/menu/menu-item.d.ts +3 -3
  371. package/menu/menu-item.js +5 -6
  372. package/menu/menu-item.js.map +1 -1
  373. package/menu/menu.d.ts +4 -4
  374. package/menu/menu.js +3 -4
  375. package/menu/menu.js.map +1 -1
  376. package/menu/sub-menu-item.d.ts +3 -3
  377. package/menu/sub-menu-item.js +5 -6
  378. package/menu/sub-menu-item.js.map +1 -1
  379. package/package.json +3 -4
  380. package/progress/_circular-progress.scss +6 -0
  381. package/progress/_linear-progress.scss +6 -0
  382. package/progress/circular-progress.d.ts +24 -0
  383. package/progress/circular-progress.js +27 -0
  384. package/progress/circular-progress.js.map +1 -0
  385. package/progress/harness.d.ts +20 -0
  386. package/progress/harness.js +27 -0
  387. package/progress/harness.js.map +1 -0
  388. package/progress/internal/_circular-progress.scss +285 -0
  389. package/progress/internal/_linear-progress.scss +379 -0
  390. package/progress/internal/circular-progress-styles.css.js +9 -0
  391. package/progress/internal/circular-progress-styles.css.js.map +1 -0
  392. package/progress/internal/circular-progress.d.ts +14 -0
  393. package/progress/internal/circular-progress.js +49 -0
  394. package/progress/internal/circular-progress.js.map +1 -0
  395. package/progress/internal/linear-progress-styles.css.js +9 -0
  396. package/progress/internal/linear-progress-styles.css.js.map +1 -0
  397. package/progress/internal/linear-progress.d.ts +27 -0
  398. package/progress/internal/linear-progress.js +91 -0
  399. package/progress/internal/linear-progress.js.map +1 -0
  400. package/progress/internal/progress.d.ts +34 -0
  401. package/progress/internal/progress.js +70 -0
  402. package/progress/internal/progress.js.map +1 -0
  403. package/progress/linear-progress.d.ts +23 -0
  404. package/progress/linear-progress.js +26 -0
  405. package/progress/linear-progress.js.map +1 -0
  406. package/radio/_radio.scss +1 -1
  407. package/radio/harness.d.ts +1 -1
  408. package/radio/harness.js.map +1 -1
  409. package/radio/internal/_radio.scss +185 -0
  410. package/radio/internal/forced-colors-styles.css.js +9 -0
  411. package/radio/internal/forced-colors-styles.css.js.map +1 -0
  412. package/radio/internal/forced-colors-styles.scss +29 -0
  413. package/radio/internal/radio-styles.css.js +9 -0
  414. package/radio/internal/radio-styles.css.js.map +1 -0
  415. package/radio/internal/radio.d.ts +58 -0
  416. package/radio/internal/radio.js +159 -0
  417. package/radio/internal/radio.js.map +1 -0
  418. package/radio/internal/single-selection-controller.js +196 -0
  419. package/radio/internal/single-selection-controller.js.map +1 -0
  420. package/radio/radio.d.ts +1 -1
  421. package/radio/radio.js +3 -3
  422. package/radio/radio.js.map +1 -1
  423. package/ripple/_ripple.scss +1 -1
  424. package/ripple/internal/ripple.js +397 -0
  425. package/ripple/internal/ripple.js.map +1 -0
  426. package/ripple/ripple.d.ts +1 -1
  427. package/ripple/ripple.js +2 -2
  428. package/ripple/ripple.js.map +1 -1
  429. package/select/_filled-select.scss +1 -1
  430. package/select/_outlined-select.scss +1 -1
  431. package/select/filled-select.d.ts +1 -1
  432. package/select/filled-select.js +4 -4
  433. package/select/filled-select.js.map +1 -1
  434. package/select/harness.d.ts +3 -3
  435. package/select/harness.js +1 -1
  436. package/select/harness.js.map +1 -1
  437. package/select/internal/_filled-select.scss +222 -0
  438. package/select/internal/_outlined-select.scss +180 -0
  439. package/select/internal/_shared.scss +82 -0
  440. package/select/internal/filled-select-styles.css.js +9 -0
  441. package/select/internal/filled-select-styles.css.js.map +1 -0
  442. package/select/internal/outlined-select-styles.css.js +9 -0
  443. package/select/internal/outlined-select-styles.css.js.map +1 -0
  444. package/select/internal/select.d.ts +201 -0
  445. package/select/internal/select.js +550 -0
  446. package/select/internal/select.js.map +1 -0
  447. package/select/internal/selectoption/harness.d.ts +11 -0
  448. package/select/internal/selectoption/harness.js +12 -0
  449. package/select/internal/selectoption/harness.js.map +1 -0
  450. package/select/internal/selectoption/select-option.d.ts +28 -0
  451. package/select/internal/selectoption/select-option.js +70 -0
  452. package/select/internal/selectoption/select-option.js.map +1 -0
  453. package/select/internal/shared-styles.css.js +9 -0
  454. package/select/internal/shared-styles.css.js.map +1 -0
  455. package/select/internal/shared.d.ts +48 -0
  456. package/select/internal/shared.js +43 -0
  457. package/select/internal/shared.js.map +1 -0
  458. package/select/outlined-select.d.ts +1 -1
  459. package/select/outlined-select.js +4 -4
  460. package/select/outlined-select.js.map +1 -1
  461. package/select/select-option.d.ts +1 -1
  462. package/select/select-option.js +5 -5
  463. package/select/select-option.js.map +1 -1
  464. package/slider/_slider.scss +1 -1
  465. package/slider/harness.d.ts +1 -1
  466. package/slider/harness.js.map +1 -1
  467. package/slider/internal/_slider.scss +478 -0
  468. package/slider/internal/slider-styles.css.js +9 -0
  469. package/slider/internal/slider-styles.css.js.map +1 -0
  470. package/slider/internal/slider.d.ts +173 -0
  471. package/slider/internal/slider.js +621 -0
  472. package/slider/internal/slider.js.map +1 -0
  473. package/slider/slider.d.ts +1 -1
  474. package/slider/slider.js +3 -3
  475. package/slider/slider.js.map +1 -1
  476. package/switch/_switch.scss +1 -1
  477. package/switch/harness.d.ts +1 -1
  478. package/switch/harness.js.map +1 -1
  479. package/switch/internal/_handle.scss +159 -0
  480. package/switch/internal/_icon.scss +92 -0
  481. package/switch/internal/_switch.scss +154 -0
  482. package/switch/internal/_track.scss +91 -0
  483. package/switch/internal/forced-colors-styles.css.js +9 -0
  484. package/switch/internal/forced-colors-styles.css.js.map +1 -0
  485. package/switch/internal/forced-colors-styles.scss +41 -0
  486. package/switch/internal/switch-styles.css.js +9 -0
  487. package/switch/internal/switch-styles.css.js.map +1 -0
  488. package/switch/internal/switch.d.ts +79 -0
  489. package/switch/internal/switch.js +208 -0
  490. package/switch/internal/switch.js.map +1 -0
  491. package/switch/switch.d.ts +1 -1
  492. package/switch/switch.js +3 -3
  493. package/switch/switch.js.map +1 -1
  494. package/tabs/_tab.scss +1 -1
  495. package/tabs/harness.d.ts +2 -2
  496. package/tabs/harness.js.map +1 -1
  497. package/tabs/internal/_tab.scss +295 -0
  498. package/tabs/internal/_tabs.scss +45 -0
  499. package/tabs/internal/tab-styles.css.js +9 -0
  500. package/tabs/internal/tab-styles.css.js.map +1 -0
  501. package/tabs/internal/tab.d.ts +62 -0
  502. package/tabs/internal/tab.js +161 -0
  503. package/tabs/internal/tab.js.map +1 -0
  504. package/tabs/internal/tabs.d.ts +88 -0
  505. package/tabs/internal/tabs.js +307 -0
  506. package/tabs/internal/tabs.js.map +1 -0
  507. package/tabs/tab.d.ts +2 -2
  508. package/tabs/tab.js +2 -2
  509. package/tabs/tab.js.map +1 -1
  510. package/tabs/tabs.d.ts +2 -2
  511. package/tabs/tabs.js +2 -2
  512. package/tabs/tabs.js.map +1 -1
  513. package/textfield/_filled-text-field.scss +1 -1
  514. package/textfield/_outlined-text-field.scss +1 -1
  515. package/textfield/filled-text-field.d.ts +2 -2
  516. package/textfield/filled-text-field.js +4 -4
  517. package/textfield/filled-text-field.js.map +1 -1
  518. package/textfield/harness.d.ts +5 -5
  519. package/textfield/harness.js +5 -1
  520. package/textfield/harness.js.map +1 -1
  521. package/textfield/internal/_filled-text-field.scss +194 -0
  522. package/textfield/internal/_input.scss +72 -0
  523. package/textfield/internal/_outlined-text-field.scss +167 -0
  524. package/textfield/internal/_shared.scss +47 -0
  525. package/textfield/internal/filled-styles.css.js +9 -0
  526. package/textfield/internal/filled-styles.css.js.map +1 -0
  527. package/textfield/internal/outlined-styles.css.js +9 -0
  528. package/textfield/internal/outlined-styles.css.js.map +1 -0
  529. package/textfield/internal/shared-styles.css.js +9 -0
  530. package/textfield/internal/shared-styles.css.js.map +1 -0
  531. package/textfield/internal/text-field.d.ts +326 -0
  532. package/textfield/internal/text-field.js +702 -0
  533. package/textfield/internal/text-field.js.map +1 -0
  534. package/textfield/outlined-text-field.d.ts +2 -2
  535. package/textfield/outlined-text-field.js +4 -4
  536. package/textfield/outlined-text-field.js.map +1 -1
  537. package/tokens/_index.scss +1 -0
  538. package/tokens/_md-comp-checkbox.scss +58 -34
  539. package/tokens/_md-comp-dialog.scss +2 -1
  540. package/tokens/_md-comp-elevated-button.scss +14 -12
  541. package/tokens/_md-comp-filled-button.scss +14 -12
  542. package/tokens/_md-comp-filled-field.scss +18 -11
  543. package/tokens/_md-comp-filled-icon-button.scss +23 -8
  544. package/tokens/_md-comp-filled-select.scss +19 -1
  545. package/tokens/_md-comp-filled-text-field.scss +2 -1
  546. package/tokens/_md-comp-filled-tonal-button.scss +14 -12
  547. package/tokens/_md-comp-filled-tonal-icon-button.scss +23 -8
  548. package/tokens/_md-comp-icon-button.scss +24 -11
  549. package/tokens/_md-comp-icon.scss +32 -0
  550. package/tokens/_md-comp-list-item.scss +1 -1
  551. package/tokens/_md-comp-outlined-button.scss +14 -12
  552. package/tokens/_md-comp-outlined-field.scss +14 -8
  553. package/tokens/_md-comp-outlined-icon-button.scss +26 -12
  554. package/tokens/_md-comp-outlined-segmented-button.scss +2 -2
  555. package/tokens/_md-comp-outlined-text-field.scss +2 -1
  556. package/tokens/_md-comp-radio-button.scss +20 -9
  557. package/tokens/_md-comp-switch.scss +66 -32
  558. package/tokens/_md-comp-text-button.scss +14 -12
  559. package/button/_tonal-button.scss +0 -6
  560. package/button/lib/_elevation.scss +0 -68
  561. package/button/lib/_icon.scss +0 -42
  562. package/button/lib/_outlined-button.scss +0 -107
  563. package/button/lib/_shared.scss +0 -162
  564. package/button/lib/_tonal-button.scss +0 -61
  565. package/button/lib/_touch-target.scss +0 -18
  566. package/button/lib/button.d.ts +0 -71
  567. package/button/lib/button.js +0 -190
  568. package/button/lib/button.js.map +0 -1
  569. package/button/lib/elevated-button.d.ts +0 -18
  570. package/button/lib/elevated-button.js +0 -23
  571. package/button/lib/elevated-button.js.map +0 -1
  572. package/button/lib/elevated-styles.css.js +0 -9
  573. package/button/lib/elevated-styles.css.js.map +0 -1
  574. package/button/lib/filled-button.d.ts +0 -18
  575. package/button/lib/filled-button.js +0 -23
  576. package/button/lib/filled-button.js.map +0 -1
  577. package/button/lib/filled-styles.css.js +0 -9
  578. package/button/lib/filled-styles.css.js.map +0 -1
  579. package/button/lib/outlined-button.d.ts +0 -17
  580. package/button/lib/outlined-button.js +0 -22
  581. package/button/lib/outlined-button.js.map +0 -1
  582. package/button/lib/outlined-styles.css.js +0 -9
  583. package/button/lib/outlined-styles.css.js.map +0 -1
  584. package/button/lib/shared-elevation-styles.css.js +0 -9
  585. package/button/lib/shared-elevation-styles.css.js.map +0 -1
  586. package/button/lib/shared-styles.css.js +0 -9
  587. package/button/lib/shared-styles.css.js.map +0 -1
  588. package/button/lib/text-button.d.ts +0 -16
  589. package/button/lib/text-button.js +0 -18
  590. package/button/lib/text-button.js.map +0 -1
  591. package/button/lib/text-styles.css.js +0 -9
  592. package/button/lib/text-styles.css.js.map +0 -1
  593. package/button/lib/tonal-button.d.ts +0 -18
  594. package/button/lib/tonal-button.js +0 -23
  595. package/button/lib/tonal-button.js.map +0 -1
  596. package/button/lib/tonal-styles.css.js +0 -9
  597. package/button/lib/tonal-styles.css.js.map +0 -1
  598. package/button/lib/tonal-styles.scss +0 -10
  599. package/button/tonal-button.d.ts +0 -35
  600. package/button/tonal-button.js +0 -40
  601. package/button/tonal-button.js.map +0 -1
  602. package/checkbox/lib/_checkbox.scss +0 -451
  603. package/checkbox/lib/checkbox-styles.css.js +0 -9
  604. package/checkbox/lib/checkbox-styles.css.js.map +0 -1
  605. package/checkbox/lib/checkbox.d.ts +0 -66
  606. package/checkbox/lib/checkbox.js +0 -187
  607. package/checkbox/lib/checkbox.js.map +0 -1
  608. package/checkbox/lib/forced-colors-styles.css.js +0 -9
  609. package/checkbox/lib/forced-colors-styles.css.js.map +0 -1
  610. package/checkbox/lib/forced-colors-styles.scss +0 -49
  611. package/chips/lib/_shared.scss +0 -190
  612. package/chips/lib/_trailing-icon.scss +0 -78
  613. package/chips/lib/chip-set.js +0 -165
  614. package/chips/lib/chip-set.js.map +0 -1
  615. package/chips/lib/chip.d.ts +0 -45
  616. package/chips/lib/chip.js +0 -95
  617. package/chips/lib/chip.js.map +0 -1
  618. package/chips/lib/filter-chip.d.ts +0 -32
  619. package/chips/lib/filter-chip.js +0 -103
  620. package/chips/lib/filter-chip.js.map +0 -1
  621. package/chips/lib/shared-styles.css.js +0 -9
  622. package/chips/lib/shared-styles.css.js.map +0 -1
  623. package/chips/lib/trailing-icon-styles.css.js +0 -9
  624. package/chips/lib/trailing-icon-styles.css.js.map +0 -1
  625. package/chips/lib/trailing-icons.d.ts +0 -15
  626. package/chips/lib/trailing-icons.js +0 -38
  627. package/chips/lib/trailing-icons.js.map +0 -1
  628. package/circularprogress/_circular-progress.scss +0 -6
  629. package/circularprogress/circular-progress.d.ts +0 -24
  630. package/circularprogress/circular-progress.js +0 -27
  631. package/circularprogress/circular-progress.js.map +0 -1
  632. package/circularprogress/harness.d.ts +0 -13
  633. package/circularprogress/harness.js +0 -16
  634. package/circularprogress/harness.js.map +0 -1
  635. package/circularprogress/lib/_circular-progress.scss +0 -288
  636. package/circularprogress/lib/circular-progress-styles.css.js +0 -9
  637. package/circularprogress/lib/circular-progress-styles.css.js.map +0 -1
  638. package/circularprogress/lib/circular-progress.d.ts +0 -27
  639. package/circularprogress/lib/circular-progress.js +0 -94
  640. package/circularprogress/lib/circular-progress.js.map +0 -1
  641. package/dialog/lib/_dialog.scss +0 -376
  642. package/dialog/lib/_tokens.scss +0 -68
  643. package/dialog/lib/dialog-styles.css.js +0 -9
  644. package/dialog/lib/dialog-styles.css.js.map +0 -1
  645. package/dialog/lib/dialog.d.ts +0 -196
  646. package/dialog/lib/dialog.js +0 -561
  647. package/dialog/lib/dialog.js.map +0 -1
  648. package/fab/lib/_fab.scss +0 -253
  649. package/fab/lib/_shared.scss +0 -222
  650. package/fab/lib/fab-styles.css.js +0 -9
  651. package/fab/lib/fab-styles.css.js.map +0 -1
  652. package/fab/lib/fab.d.ts +0 -26
  653. package/fab/lib/fab.js.map +0 -1
  654. package/fab/lib/forced-colors-styles.css.js +0 -9
  655. package/fab/lib/forced-colors-styles.css.js.map +0 -1
  656. package/fab/lib/forced-colors-styles.scss +0 -26
  657. package/fab/lib/shared-styles.css.js +0 -9
  658. package/fab/lib/shared-styles.css.js.map +0 -1
  659. package/fab/lib/shared.d.ts +0 -55
  660. package/fab/lib/shared.js +0 -120
  661. package/fab/lib/shared.js.map +0 -1
  662. package/field/lib/_content.scss +0 -175
  663. package/field/lib/_filled-field.scss +0 -189
  664. package/field/lib/_label.scss +0 -74
  665. package/field/lib/_outlined-field.scss +0 -313
  666. package/field/lib/_shared.scss +0 -65
  667. package/field/lib/_supporting-text.scss +0 -46
  668. package/field/lib/field.d.ts +0 -65
  669. package/field/lib/field.js +0 -321
  670. package/field/lib/field.js.map +0 -1
  671. package/field/lib/filled-styles.css.js +0 -9
  672. package/field/lib/filled-styles.css.js.map +0 -1
  673. package/field/lib/outlined-styles.css.js +0 -9
  674. package/field/lib/outlined-styles.css.js.map +0 -1
  675. package/field/lib/shared-styles.css.js +0 -9
  676. package/field/lib/shared-styles.css.js.map +0 -1
  677. package/focus/focus-ring.d.ts +0 -20
  678. package/focus/focus-ring.js +0 -23
  679. package/focus/focus-ring.js.map +0 -1
  680. package/focus/lib/_focus-ring.scss +0 -129
  681. package/focus/lib/focus-ring-styles.css.js +0 -9
  682. package/focus/lib/focus-ring-styles.css.js.map +0 -1
  683. package/focus/lib/focus-ring.d.ts +0 -34
  684. package/focus/lib/focus-ring.js +0 -79
  685. package/focus/lib/focus-ring.js.map +0 -1
  686. package/icon/lib/_icon.scss +0 -61
  687. package/icon/lib/_md-comp-icon.scss +0 -18
  688. package/icon/lib/icon-styles.css.js +0 -9
  689. package/icon/lib/icon-styles.css.js.map +0 -1
  690. package/icon/lib/icon.d.ts +0 -12
  691. package/icon/lib/icon.js +0 -15
  692. package/icon/lib/icon.js.map +0 -1
  693. package/iconbutton/_standard-icon-button.scss +0 -6
  694. package/iconbutton/lib/_filled-icon-button.scss +0 -169
  695. package/iconbutton/lib/_filled-tonal-icon-button.scss +0 -171
  696. package/iconbutton/lib/_outlined-icon-button.scss +0 -178
  697. package/iconbutton/lib/_shared.scss +0 -104
  698. package/iconbutton/lib/_standard-icon-button.scss +0 -112
  699. package/iconbutton/lib/filled-styles.css.js +0 -9
  700. package/iconbutton/lib/filled-styles.css.js.map +0 -1
  701. package/iconbutton/lib/filled-tonal-styles.css.js +0 -9
  702. package/iconbutton/lib/filled-tonal-styles.css.js.map +0 -1
  703. package/iconbutton/lib/icon-button.d.ts +0 -59
  704. package/iconbutton/lib/icon-button.js +0 -166
  705. package/iconbutton/lib/icon-button.js.map +0 -1
  706. package/iconbutton/lib/outlined-styles.css.js +0 -9
  707. package/iconbutton/lib/outlined-styles.css.js.map +0 -1
  708. package/iconbutton/lib/shared-styles.css.js +0 -9
  709. package/iconbutton/lib/shared-styles.css.js.map +0 -1
  710. package/iconbutton/lib/standard-styles.css.js +0 -9
  711. package/iconbutton/lib/standard-styles.css.js.map +0 -1
  712. package/iconbutton/lib/standard-styles.scss +0 -10
  713. package/iconbutton/standard-icon-button.d.ts +0 -34
  714. package/iconbutton/standard-icon-button.js +0 -39
  715. package/iconbutton/standard-icon-button.js.map +0 -1
  716. package/labs/navigationbar/lib/constants.d.ts +0 -17
  717. package/labs/navigationbar/lib/constants.js.map +0 -1
  718. package/labs/navigationbar/lib/navigation-bar.d.ts +0 -27
  719. package/labs/navigationbar/lib/navigation-bar.js +0 -140
  720. package/labs/navigationbar/lib/navigation-bar.js.map +0 -1
  721. package/labs/navigationbar/lib/state.d.ts +0 -23
  722. package/labs/navigationbar/lib/state.js.map +0 -1
  723. package/labs/navigationdrawer/lib/navigation-drawer-modal.js +0 -83
  724. package/labs/navigationdrawer/lib/navigation-drawer-modal.js.map +0 -1
  725. package/labs/navigationdrawer/lib/navigation-drawer.js +0 -66
  726. package/labs/navigationdrawer/lib/navigation-drawer.js.map +0 -1
  727. package/labs/navigationtab/lib/_navigation-tab.scss +0 -257
  728. package/labs/navigationtab/lib/navigation-tab-styles.css.js +0 -9
  729. package/labs/navigationtab/lib/navigation-tab-styles.css.js.map +0 -1
  730. package/labs/navigationtab/lib/navigation-tab.d.ts +0 -30
  731. package/labs/navigationtab/lib/navigation-tab.js +0 -119
  732. package/labs/navigationtab/lib/navigation-tab.js.map +0 -1
  733. package/labs/segmentedbutton/lib/outlined-styles.css.js +0 -9
  734. package/labs/segmentedbutton/lib/outlined-styles.css.js.map +0 -1
  735. package/labs/segmentedbutton/lib/segmented-button.d.ts +0 -44
  736. package/labs/segmentedbutton/lib/segmented-button.js +0 -159
  737. package/labs/segmentedbutton/lib/segmented-button.js.map +0 -1
  738. package/labs/segmentedbuttonset/lib/outlined-styles.css.js +0 -9
  739. package/labs/segmentedbuttonset/lib/outlined-styles.css.js.map +0 -1
  740. package/labs/segmentedbuttonset/lib/segmented-button-set.d.ts +0 -26
  741. package/labs/segmentedbuttonset/lib/segmented-button-set.js +0 -110
  742. package/labs/segmentedbuttonset/lib/segmented-button-set.js.map +0 -1
  743. package/linearprogress/_linear-progress.scss +0 -6
  744. package/linearprogress/harness.d.ts +0 -13
  745. package/linearprogress/harness.js +0 -18
  746. package/linearprogress/harness.js.map +0 -1
  747. package/linearprogress/lib/_linear-progress.scss +0 -386
  748. package/linearprogress/lib/linear-progress-styles.css.js +0 -9
  749. package/linearprogress/lib/linear-progress-styles.css.js.map +0 -1
  750. package/linearprogress/lib/linear-progress.d.ts +0 -35
  751. package/linearprogress/lib/linear-progress.js +0 -127
  752. package/linearprogress/lib/linear-progress.js.map +0 -1
  753. package/linearprogress/linear-progress.d.ts +0 -23
  754. package/linearprogress/linear-progress.js +0 -26
  755. package/linearprogress/linear-progress.js.map +0 -1
  756. package/list/lib/list.d.ts +0 -135
  757. package/list/lib/list.js +0 -305
  758. package/list/lib/list.js.map +0 -1
  759. package/list/lib/listitem/_list-item.scss +0 -424
  760. package/list/lib/listitem/list-item-styles.css.js +0 -9
  761. package/list/lib/listitem/list-item-styles.css.js.map +0 -1
  762. package/list/lib/listitem/list-item.d.ts +0 -133
  763. package/list/lib/listitem/list-item.js +0 -230
  764. package/list/lib/listitem/list-item.js.map +0 -1
  765. package/list/lib/listitemlink/list-item-link-only.d.ts +0 -23
  766. package/list/lib/listitemlink/list-item-link-only.js +0 -36
  767. package/list/lib/listitemlink/list-item-link-only.js.map +0 -1
  768. package/list/lib/listitemlink/list-item-link.d.ts +0 -18
  769. package/list/lib/listitemlink/list-item-link.js +0 -42
  770. package/list/lib/listitemlink/list-item-link.js.map +0 -1
  771. package/list/list-item-link.d.ts +0 -53
  772. package/list/list-item-link.js +0 -57
  773. package/list/list-item-link.js.map +0 -1
  774. package/menu/lib/_menu.scss +0 -103
  775. package/menu/lib/menu-styles.css.js +0 -9
  776. package/menu/lib/menu-styles.css.js.map +0 -1
  777. package/menu/lib/menu.d.ts +0 -225
  778. package/menu/lib/menu.js +0 -673
  779. package/menu/lib/menu.js.map +0 -1
  780. package/menu/lib/menuitem/_menu-item.scss +0 -60
  781. package/menu/lib/menuitem/forced-colors-styles.css.js +0 -9
  782. package/menu/lib/menuitem/forced-colors-styles.css.js.map +0 -1
  783. package/menu/lib/menuitem/forced-colors-styles.scss +0 -22
  784. package/menu/lib/menuitem/harness.d.ts +0 -11
  785. package/menu/lib/menuitem/harness.js +0 -12
  786. package/menu/lib/menuitem/harness.js.map +0 -1
  787. package/menu/lib/menuitem/menu-item-styles.css.js +0 -9
  788. package/menu/lib/menuitem/menu-item-styles.css.js.map +0 -1
  789. package/menu/lib/menuitem/menu-item.d.ts +0 -28
  790. package/menu/lib/menuitem/menu-item.js +0 -51
  791. package/menu/lib/menuitem/menu-item.js.map +0 -1
  792. package/menu/lib/menuitemlink/menu-item-link.d.ts +0 -23
  793. package/menu/lib/menuitemlink/menu-item-link.js +0 -49
  794. package/menu/lib/menuitemlink/menu-item-link.js.map +0 -1
  795. package/menu/lib/shared.d.ts +0 -178
  796. package/menu/lib/shared.js +0 -142
  797. package/menu/lib/shared.js.map +0 -1
  798. package/menu/lib/submenuitem/harness.d.ts +0 -11
  799. package/menu/lib/submenuitem/harness.js +0 -12
  800. package/menu/lib/submenuitem/harness.js.map +0 -1
  801. package/menu/lib/submenuitem/sub-menu-item.d.ts +0 -99
  802. package/menu/lib/submenuitem/sub-menu-item.js +0 -293
  803. package/menu/lib/submenuitem/sub-menu-item.js.map +0 -1
  804. package/menu/lib/typeaheadController.d.ts +0 -157
  805. package/menu/lib/typeaheadController.js +0 -252
  806. package/menu/lib/typeaheadController.js.map +0 -1
  807. package/menu/menu-item-link.d.ts +0 -33
  808. package/menu/menu-item-link.js +0 -38
  809. package/menu/menu-item-link.js.map +0 -1
  810. package/radio/lib/_radio.scss +0 -169
  811. package/radio/lib/forced-colors-styles.css.js +0 -9
  812. package/radio/lib/forced-colors-styles.css.js.map +0 -1
  813. package/radio/lib/forced-colors-styles.scss +0 -29
  814. package/radio/lib/radio-styles.css.js +0 -9
  815. package/radio/lib/radio-styles.css.js.map +0 -1
  816. package/radio/lib/radio.d.ts +0 -57
  817. package/radio/lib/radio.js +0 -154
  818. package/radio/lib/radio.js.map +0 -1
  819. package/radio/lib/single-selection-controller.js +0 -192
  820. package/radio/lib/single-selection-controller.js.map +0 -1
  821. package/ripple/lib/ripple.js +0 -389
  822. package/ripple/lib/ripple.js.map +0 -1
  823. package/select/lib/_filled-select.scss +0 -222
  824. package/select/lib/_outlined-select.scss +0 -180
  825. package/select/lib/_shared.scss +0 -56
  826. package/select/lib/filled-select-styles.css.js +0 -9
  827. package/select/lib/filled-select-styles.css.js.map +0 -1
  828. package/select/lib/outlined-select-styles.css.js +0 -9
  829. package/select/lib/outlined-select-styles.css.js.map +0 -1
  830. package/select/lib/select.d.ts +0 -206
  831. package/select/lib/select.js +0 -553
  832. package/select/lib/select.js.map +0 -1
  833. package/select/lib/selectoption/harness.d.ts +0 -11
  834. package/select/lib/selectoption/harness.js +0 -12
  835. package/select/lib/selectoption/harness.js.map +0 -1
  836. package/select/lib/selectoption/select-option.d.ts +0 -29
  837. package/select/lib/selectoption/select-option.js +0 -71
  838. package/select/lib/selectoption/select-option.js.map +0 -1
  839. package/select/lib/shared-styles.css.js +0 -9
  840. package/select/lib/shared-styles.css.js.map +0 -1
  841. package/select/lib/shared.d.ts +0 -52
  842. package/select/lib/shared.js +0 -41
  843. package/select/lib/shared.js.map +0 -1
  844. package/slider/lib/_slider.scss +0 -476
  845. package/slider/lib/slider-styles.css.js +0 -9
  846. package/slider/lib/slider-styles.css.js.map +0 -1
  847. package/slider/lib/slider.d.ts +0 -173
  848. package/slider/lib/slider.js +0 -623
  849. package/slider/lib/slider.js.map +0 -1
  850. package/switch/lib/_handle.scss +0 -159
  851. package/switch/lib/_icon.scss +0 -92
  852. package/switch/lib/_switch.scss +0 -152
  853. package/switch/lib/_track.scss +0 -91
  854. package/switch/lib/forced-colors-styles.css.d.ts +0 -1
  855. package/switch/lib/forced-colors-styles.css.js +0 -9
  856. package/switch/lib/forced-colors-styles.css.js.map +0 -1
  857. package/switch/lib/forced-colors-styles.scss +0 -41
  858. package/switch/lib/switch-styles.css.js +0 -9
  859. package/switch/lib/switch-styles.css.js.map +0 -1
  860. package/switch/lib/switch.d.ts +0 -79
  861. package/switch/lib/switch.js +0 -210
  862. package/switch/lib/switch.js.map +0 -1
  863. package/tabs/lib/_tab.scss +0 -293
  864. package/tabs/lib/_tabs.scss +0 -44
  865. package/tabs/lib/tab-styles.css.js +0 -9
  866. package/tabs/lib/tab-styles.css.js.map +0 -1
  867. package/tabs/lib/tab.d.ts +0 -68
  868. package/tabs/lib/tab.js +0 -164
  869. package/tabs/lib/tab.js.map +0 -1
  870. package/tabs/lib/tabs.d.ts +0 -91
  871. package/tabs/lib/tabs.js +0 -312
  872. package/tabs/lib/tabs.js.map +0 -1
  873. package/textfield/lib/_filled-text-field.scss +0 -205
  874. package/textfield/lib/_input.scss +0 -61
  875. package/textfield/lib/_outlined-text-field.scss +0 -161
  876. package/textfield/lib/_shared.scss +0 -37
  877. package/textfield/lib/filled-styles.css.js +0 -9
  878. package/textfield/lib/filled-styles.css.js.map +0 -1
  879. package/textfield/lib/outlined-styles.css.js +0 -9
  880. package/textfield/lib/outlined-styles.css.js.map +0 -1
  881. package/textfield/lib/shared-styles.css.js +0 -9
  882. package/textfield/lib/shared-styles.css.js.map +0 -1
  883. package/textfield/lib/text-field.d.ts +0 -320
  884. package/textfield/lib/text-field.js +0 -641
  885. package/textfield/lib/text-field.js.map +0 -1
  886. /package/button/{lib → internal}/_elevated-button.scss +0 -0
  887. /package/button/{lib → internal}/_filled-button.scss +0 -0
  888. /package/button/{lib → internal}/_text-button.scss +0 -0
  889. /package/button/{lib → internal}/elevated-styles.css.d.ts +0 -0
  890. /package/button/{lib → internal}/elevated-styles.scss +0 -0
  891. /package/button/{lib → internal}/filled-styles.css.d.ts +0 -0
  892. /package/button/{lib → internal}/filled-styles.scss +0 -0
  893. /package/{iconbutton/lib → button/internal}/filled-tonal-styles.css.d.ts +0 -0
  894. /package/button/{lib → internal}/outlined-styles.css.d.ts +0 -0
  895. /package/button/{lib → internal}/outlined-styles.scss +0 -0
  896. /package/button/{lib → internal}/shared-elevation-styles.css.d.ts +0 -0
  897. /package/button/{lib → internal}/shared-elevation-styles.scss +0 -0
  898. /package/button/{lib → internal}/shared-styles.css.d.ts +0 -0
  899. /package/button/{lib → internal}/shared-styles.scss +0 -0
  900. /package/button/{lib → internal}/text-styles.css.d.ts +0 -0
  901. /package/button/{lib → internal}/text-styles.scss +0 -0
  902. /package/checkbox/{lib → internal}/checkbox-styles.css.d.ts +0 -0
  903. /package/checkbox/{lib → internal}/checkbox-styles.scss +0 -0
  904. /package/chips/{lib → internal}/_assist-chip.scss +0 -0
  905. /package/chips/{lib → internal}/_chip-set.scss +0 -0
  906. /package/chips/{lib → internal}/_elevated.scss +0 -0
  907. /package/chips/{lib → internal}/_filter-chip.scss +0 -0
  908. /package/chips/{lib → internal}/_input-chip.scss +0 -0
  909. /package/chips/{lib → internal}/_selectable.scss +0 -0
  910. /package/chips/{lib → internal}/_suggestion-chip.scss +0 -0
  911. /package/chips/{lib → internal}/assist-chip.d.ts +0 -0
  912. /package/chips/{lib → internal}/assist-chip.js +0 -0
  913. /package/chips/{lib → internal}/assist-chip.js.map +0 -0
  914. /package/chips/{lib → internal}/assist-forced-colors-styles.css.d.ts +0 -0
  915. /package/chips/{lib → internal}/assist-forced-colors-styles.css.js +0 -0
  916. /package/chips/{lib → internal}/assist-forced-colors-styles.css.js.map +0 -0
  917. /package/chips/{lib → internal}/assist-forced-colors-styles.scss +0 -0
  918. /package/chips/{lib → internal}/assist-styles.css.d.ts +0 -0
  919. /package/chips/{lib → internal}/assist-styles.css.js +0 -0
  920. /package/chips/{lib → internal}/assist-styles.css.js.map +0 -0
  921. /package/chips/{lib → internal}/assist-styles.scss +0 -0
  922. /package/chips/{lib → internal}/chip-set-styles.css.d.ts +0 -0
  923. /package/chips/{lib → internal}/chip-set-styles.css.js +0 -0
  924. /package/chips/{lib → internal}/chip-set-styles.css.js.map +0 -0
  925. /package/chips/{lib → internal}/chip-set-styles.scss +0 -0
  926. /package/chips/{lib → internal}/chip-set.d.ts +0 -0
  927. /package/chips/{lib → internal}/elevated-styles.css.d.ts +0 -0
  928. /package/chips/{lib → internal}/elevated-styles.css.js +0 -0
  929. /package/chips/{lib → internal}/elevated-styles.css.js.map +0 -0
  930. /package/chips/{lib → internal}/elevated-styles.scss +0 -0
  931. /package/chips/{lib → internal}/filter-forced-colors-styles.css.d.ts +0 -0
  932. /package/chips/{lib → internal}/filter-forced-colors-styles.css.js +0 -0
  933. /package/chips/{lib → internal}/filter-forced-colors-styles.css.js.map +0 -0
  934. /package/chips/{lib → internal}/filter-forced-colors-styles.scss +0 -0
  935. /package/chips/{lib → internal}/filter-styles.css.d.ts +0 -0
  936. /package/chips/{lib → internal}/filter-styles.css.js +0 -0
  937. /package/chips/{lib → internal}/filter-styles.css.js.map +0 -0
  938. /package/chips/{lib → internal}/filter-styles.scss +0 -0
  939. /package/chips/{lib → internal}/input-chip.d.ts +0 -0
  940. /package/chips/{lib → internal}/input-chip.js +0 -0
  941. /package/chips/{lib → internal}/input-chip.js.map +0 -0
  942. /package/chips/{lib → internal}/input-forced-colors-styles.css.d.ts +0 -0
  943. /package/chips/{lib → internal}/input-forced-colors-styles.css.js +0 -0
  944. /package/chips/{lib → internal}/input-forced-colors-styles.css.js.map +0 -0
  945. /package/chips/{lib → internal}/input-forced-colors-styles.scss +0 -0
  946. /package/chips/{lib → internal}/input-styles.css.d.ts +0 -0
  947. /package/chips/{lib → internal}/input-styles.css.js +0 -0
  948. /package/chips/{lib → internal}/input-styles.css.js.map +0 -0
  949. /package/chips/{lib → internal}/input-styles.scss +0 -0
  950. /package/chips/{lib → internal}/multi-action-chip.d.ts +0 -0
  951. /package/chips/{lib → internal}/multi-action-chip.js +0 -0
  952. /package/chips/{lib → internal}/multi-action-chip.js.map +0 -0
  953. /package/chips/{lib → internal}/selectable-styles.css.d.ts +0 -0
  954. /package/chips/{lib → internal}/selectable-styles.css.js +0 -0
  955. /package/chips/{lib → internal}/selectable-styles.css.js.map +0 -0
  956. /package/chips/{lib → internal}/selectable-styles.scss +0 -0
  957. /package/chips/{lib → internal}/shared-styles.css.d.ts +0 -0
  958. /package/chips/{lib → internal}/shared-styles.scss +0 -0
  959. /package/chips/{lib → internal}/suggestion-chip.d.ts +0 -0
  960. /package/chips/{lib → internal}/suggestion-chip.js +0 -0
  961. /package/chips/{lib → internal}/suggestion-chip.js.map +0 -0
  962. /package/chips/{lib → internal}/suggestion-forced-colors-styles.css.d.ts +0 -0
  963. /package/chips/{lib → internal}/suggestion-forced-colors-styles.css.js +0 -0
  964. /package/chips/{lib → internal}/suggestion-forced-colors-styles.css.js.map +0 -0
  965. /package/chips/{lib → internal}/suggestion-forced-colors-styles.scss +0 -0
  966. /package/chips/{lib → internal}/suggestion-styles.css.d.ts +0 -0
  967. /package/chips/{lib → internal}/suggestion-styles.css.js +0 -0
  968. /package/chips/{lib → internal}/suggestion-styles.css.js.map +0 -0
  969. /package/chips/{lib → internal}/suggestion-styles.scss +0 -0
  970. /package/chips/{lib → internal}/trailing-icon-styles.css.d.ts +0 -0
  971. /package/chips/{lib → internal}/trailing-icon-styles.scss +0 -0
  972. /package/dialog/{lib → internal}/dialog-styles.css.d.ts +0 -0
  973. /package/dialog/{lib → internal}/dialog-styles.scss +0 -0
  974. /package/divider/{lib → internal}/_divider.scss +0 -0
  975. /package/divider/{lib → internal}/divider-styles.css.d.ts +0 -0
  976. /package/divider/{lib → internal}/divider-styles.css.js +0 -0
  977. /package/divider/{lib → internal}/divider-styles.css.js.map +0 -0
  978. /package/divider/{lib → internal}/divider-styles.scss +0 -0
  979. /package/divider/{lib → internal}/divider.d.ts +0 -0
  980. /package/divider/{lib → internal}/divider.js +0 -0
  981. /package/divider/{lib → internal}/divider.js.map +0 -0
  982. /package/elevation/{lib → internal}/_elevation.scss +0 -0
  983. /package/elevation/{lib → internal}/elevation-styles.css.d.ts +0 -0
  984. /package/elevation/{lib → internal}/elevation-styles.css.js +0 -0
  985. /package/elevation/{lib → internal}/elevation-styles.css.js.map +0 -0
  986. /package/elevation/{lib → internal}/elevation-styles.scss +0 -0
  987. /package/elevation/{lib → internal}/elevation.d.ts +0 -0
  988. /package/elevation/{lib → internal}/elevation.js +0 -0
  989. /package/elevation/{lib → internal}/elevation.js.map +0 -0
  990. /package/fab/{lib → internal}/_fab-branded.scss +0 -0
  991. /package/fab/{lib → internal}/fab-branded-styles.css.d.ts +0 -0
  992. /package/fab/{lib → internal}/fab-branded-styles.css.js +0 -0
  993. /package/fab/{lib → internal}/fab-branded-styles.css.js.map +0 -0
  994. /package/fab/{lib → internal}/fab-branded-styles.scss +0 -0
  995. /package/fab/{lib → internal}/fab-styles.css.d.ts +0 -0
  996. /package/fab/{lib → internal}/fab-styles.scss +0 -0
  997. /package/fab/{lib → internal}/fab.js +0 -0
  998. /package/{checkbox/lib → fab/internal}/forced-colors-styles.css.d.ts +0 -0
  999. /package/fab/{lib → internal}/shared-styles.css.d.ts +0 -0
  1000. /package/fab/{lib → internal}/shared-styles.scss +0 -0
  1001. /package/field/{lib → internal}/filled-field.d.ts +0 -0
  1002. /package/field/{lib → internal}/filled-field.js +0 -0
  1003. /package/field/{lib → internal}/filled-field.js.map +0 -0
  1004. /package/field/{lib → internal}/filled-styles.css.d.ts +0 -0
  1005. /package/field/{lib → internal}/filled-styles.scss +0 -0
  1006. /package/field/{lib → internal}/outlined-field.d.ts +0 -0
  1007. /package/field/{lib → internal}/outlined-field.js +0 -0
  1008. /package/field/{lib → internal}/outlined-field.js.map +0 -0
  1009. /package/field/{lib → internal}/outlined-styles.css.d.ts +0 -0
  1010. /package/field/{lib → internal}/outlined-styles.scss +0 -0
  1011. /package/field/{lib → internal}/shared-styles.css.d.ts +0 -0
  1012. /package/field/{lib → internal}/shared-styles.scss +0 -0
  1013. /package/focus/{lib → internal}/focus-ring-styles.css.d.ts +0 -0
  1014. /package/focus/{lib → internal}/focus-ring-styles.scss +0 -0
  1015. /package/icon/{lib → internal}/icon-styles.css.d.ts +0 -0
  1016. /package/icon/{lib → internal}/icon-styles.scss +0 -0
  1017. /package/iconbutton/{lib → internal}/filled-styles.css.d.ts +0 -0
  1018. /package/iconbutton/{lib → internal}/filled-styles.scss +0 -0
  1019. /package/{button/lib/tonal-styles.css.d.ts → iconbutton/internal/filled-tonal-styles.css.d.ts} +0 -0
  1020. /package/iconbutton/{lib → internal}/filled-tonal-styles.scss +0 -0
  1021. /package/iconbutton/{lib → internal}/outlined-styles.css.d.ts +0 -0
  1022. /package/iconbutton/{lib → internal}/outlined-styles.scss +0 -0
  1023. /package/iconbutton/{lib → internal}/shared-styles.css.d.ts +0 -0
  1024. /package/iconbutton/{lib → internal}/shared-styles.scss +0 -0
  1025. /package/iconbutton/{lib → internal}/standard-styles.css.d.ts +0 -0
  1026. /package/labs/badge/{lib → internal}/_badge.scss +0 -0
  1027. /package/labs/badge/{lib → internal}/badge-styles.css.d.ts +0 -0
  1028. /package/labs/badge/{lib → internal}/badge-styles.css.js +0 -0
  1029. /package/labs/badge/{lib → internal}/badge-styles.css.js.map +0 -0
  1030. /package/labs/badge/{lib → internal}/badge-styles.scss +0 -0
  1031. /package/labs/badge/{lib → internal}/badge.d.ts +0 -0
  1032. /package/labs/badge/{lib → internal}/badge.js +0 -0
  1033. /package/labs/badge/{lib → internal}/badge.js.map +0 -0
  1034. /package/labs/navigationbar/{lib → internal}/_navigation-bar.scss +0 -0
  1035. /package/labs/navigationbar/{lib → internal}/constants.js +0 -0
  1036. /package/labs/navigationbar/{lib → internal}/navigation-bar-styles.css.d.ts +0 -0
  1037. /package/labs/navigationbar/{lib → internal}/navigation-bar-styles.css.js +0 -0
  1038. /package/labs/navigationbar/{lib → internal}/navigation-bar-styles.css.js.map +0 -0
  1039. /package/labs/navigationbar/{lib → internal}/navigation-bar-styles.scss +0 -0
  1040. /package/labs/navigationbar/{lib → internal}/state.js +0 -0
  1041. /package/labs/navigationdrawer/{lib → internal}/_navigation-drawer-modal.scss +0 -0
  1042. /package/labs/navigationdrawer/{lib → internal}/_navigation-drawer.scss +0 -0
  1043. /package/labs/navigationdrawer/{lib → internal}/_shared.scss +0 -0
  1044. /package/labs/navigationdrawer/{lib → internal}/navigation-drawer-modal-styles.css.d.ts +0 -0
  1045. /package/labs/navigationdrawer/{lib → internal}/navigation-drawer-modal-styles.css.js +0 -0
  1046. /package/labs/navigationdrawer/{lib → internal}/navigation-drawer-modal-styles.css.js.map +0 -0
  1047. /package/labs/navigationdrawer/{lib → internal}/navigation-drawer-modal-styles.scss +0 -0
  1048. /package/labs/navigationdrawer/{lib → internal}/navigation-drawer-modal.d.ts +0 -0
  1049. /package/labs/navigationdrawer/{lib → internal}/navigation-drawer-styles.css.d.ts +0 -0
  1050. /package/labs/navigationdrawer/{lib → internal}/navigation-drawer-styles.css.js +0 -0
  1051. /package/labs/navigationdrawer/{lib → internal}/navigation-drawer-styles.css.js.map +0 -0
  1052. /package/labs/navigationdrawer/{lib → internal}/navigation-drawer-styles.scss +0 -0
  1053. /package/labs/navigationdrawer/{lib → internal}/navigation-drawer.d.ts +0 -0
  1054. /package/labs/navigationdrawer/{lib → internal}/shared-styles.css.d.ts +0 -0
  1055. /package/labs/navigationdrawer/{lib → internal}/shared-styles.css.js +0 -0
  1056. /package/labs/navigationdrawer/{lib → internal}/shared-styles.css.js.map +0 -0
  1057. /package/labs/navigationdrawer/{lib → internal}/shared-styles.scss +0 -0
  1058. /package/labs/navigationtab/{lib → internal}/navigation-tab-styles.css.d.ts +0 -0
  1059. /package/labs/navigationtab/{lib → internal}/navigation-tab-styles.scss +0 -0
  1060. /package/labs/navigationtab/{lib → internal}/state.d.ts +0 -0
  1061. /package/labs/navigationtab/{lib → internal}/state.js +0 -0
  1062. /package/labs/navigationtab/{lib → internal}/state.js.map +0 -0
  1063. /package/labs/segmentedbutton/{lib → internal}/_outlined-segmented-button.scss +0 -0
  1064. /package/labs/segmentedbutton/{lib → internal}/_shared.scss +0 -0
  1065. /package/labs/segmentedbutton/{lib → internal}/outlined-segmented-button.d.ts +0 -0
  1066. /package/labs/segmentedbutton/{lib → internal}/outlined-segmented-button.js +0 -0
  1067. /package/labs/segmentedbutton/{lib → internal}/outlined-segmented-button.js.map +0 -0
  1068. /package/labs/segmentedbutton/{lib → internal}/outlined-styles.css.d.ts +0 -0
  1069. /package/labs/segmentedbutton/{lib → internal}/outlined-styles.scss +0 -0
  1070. /package/labs/segmentedbutton/{lib → internal}/shared-styles.css.d.ts +0 -0
  1071. /package/labs/segmentedbutton/{lib → internal}/shared-styles.css.js +0 -0
  1072. /package/labs/segmentedbutton/{lib → internal}/shared-styles.css.js.map +0 -0
  1073. /package/labs/segmentedbutton/{lib → internal}/shared-styles.scss +0 -0
  1074. /package/labs/segmentedbuttonset/{lib → internal}/_outlined-segmented-button-set.scss +0 -0
  1075. /package/labs/segmentedbuttonset/{lib → internal}/_shared.scss +0 -0
  1076. /package/labs/segmentedbuttonset/{lib → internal}/outlined-segmented-button-set.d.ts +0 -0
  1077. /package/labs/segmentedbuttonset/{lib → internal}/outlined-segmented-button-set.js +0 -0
  1078. /package/labs/segmentedbuttonset/{lib → internal}/outlined-segmented-button-set.js.map +0 -0
  1079. /package/labs/segmentedbuttonset/{lib → internal}/outlined-styles.css.d.ts +0 -0
  1080. /package/labs/segmentedbuttonset/{lib → internal}/outlined-styles.scss +0 -0
  1081. /package/labs/segmentedbuttonset/{lib → internal}/shared-styles.css.d.ts +0 -0
  1082. /package/labs/segmentedbuttonset/{lib → internal}/shared-styles.css.js +0 -0
  1083. /package/labs/segmentedbuttonset/{lib → internal}/shared-styles.css.js.map +0 -0
  1084. /package/labs/segmentedbuttonset/{lib → internal}/shared-styles.scss +0 -0
  1085. /package/list/{lib → internal}/_list.scss +0 -0
  1086. /package/list/{lib → internal}/list-styles.css.d.ts +0 -0
  1087. /package/list/{lib → internal}/list-styles.css.js +0 -0
  1088. /package/list/{lib → internal}/list-styles.css.js.map +0 -0
  1089. /package/list/{lib → internal}/list-styles.scss +0 -0
  1090. /package/{fab/lib → list/internal/listitem}/forced-colors-styles.css.d.ts +0 -0
  1091. /package/list/{lib → internal}/listitem/forced-colors-styles.css.js +0 -0
  1092. /package/list/{lib → internal}/listitem/forced-colors-styles.css.js.map +0 -0
  1093. /package/list/{lib → internal}/listitem/forced-colors-styles.scss +0 -0
  1094. /package/list/{lib → internal}/listitem/harness.d.ts +0 -0
  1095. /package/list/{lib → internal}/listitem/harness.js +0 -0
  1096. /package/list/{lib → internal}/listitem/harness.js.map +0 -0
  1097. /package/list/{lib → internal}/listitem/list-item-only.d.ts +0 -0
  1098. /package/list/{lib → internal}/listitem/list-item-only.js +0 -0
  1099. /package/list/{lib → internal}/listitem/list-item-only.js.map +0 -0
  1100. /package/list/{lib → internal}/listitem/list-item-styles.css.d.ts +0 -0
  1101. /package/list/{lib → internal}/listitem/list-item-styles.scss +0 -0
  1102. /package/{list/lib/listitem → menu/internal}/forced-colors-styles.css.d.ts +0 -0
  1103. /package/menu/{lib → internal}/forced-colors-styles.css.js +0 -0
  1104. /package/menu/{lib → internal}/forced-colors-styles.css.js.map +0 -0
  1105. /package/menu/{lib → internal}/forced-colors-styles.scss +0 -0
  1106. /package/menu/{lib → internal}/menu-styles.css.d.ts +0 -0
  1107. /package/menu/{lib → internal}/menu-styles.scss +0 -0
  1108. /package/menu/{lib → internal/menuitem}/forced-colors-styles.css.d.ts +0 -0
  1109. /package/menu/{lib → internal}/menuitem/menu-item-styles.css.d.ts +0 -0
  1110. /package/menu/{lib → internal}/menuitem/menu-item-styles.scss +0 -0
  1111. /package/menu/{lib → internal}/surfacePositionController.d.ts +0 -0
  1112. /package/menu/{lib → internal}/surfacePositionController.js +0 -0
  1113. /package/menu/{lib → internal}/surfacePositionController.js.map +0 -0
  1114. /package/menu/{lib → internal}/types.d.ts +0 -0
  1115. /package/menu/{lib → internal}/types.js +0 -0
  1116. /package/menu/{lib → internal}/types.js.map +0 -0
  1117. /package/{circularprogress/lib → progress/internal}/circular-progress-styles.css.d.ts +0 -0
  1118. /package/{circularprogress/lib → progress/internal}/circular-progress-styles.scss +0 -0
  1119. /package/{linearprogress/lib → progress/internal}/linear-progress-styles.css.d.ts +0 -0
  1120. /package/{linearprogress/lib → progress/internal}/linear-progress-styles.scss +0 -0
  1121. /package/{menu/lib/menuitem → radio/internal}/forced-colors-styles.css.d.ts +0 -0
  1122. /package/radio/{lib → internal}/radio-styles.css.d.ts +0 -0
  1123. /package/radio/{lib → internal}/radio-styles.scss +0 -0
  1124. /package/radio/{lib → internal}/single-selection-controller.d.ts +0 -0
  1125. /package/ripple/{lib → internal}/_ripple.scss +0 -0
  1126. /package/ripple/{lib → internal}/ripple-styles.css.d.ts +0 -0
  1127. /package/ripple/{lib → internal}/ripple-styles.css.js +0 -0
  1128. /package/ripple/{lib → internal}/ripple-styles.css.js.map +0 -0
  1129. /package/ripple/{lib → internal}/ripple-styles.scss +0 -0
  1130. /package/ripple/{lib → internal}/ripple.d.ts +0 -0
  1131. /package/select/{lib → internal}/filled-forced-colors-styles.css.d.ts +0 -0
  1132. /package/select/{lib → internal}/filled-forced-colors-styles.css.js +0 -0
  1133. /package/select/{lib → internal}/filled-forced-colors-styles.css.js.map +0 -0
  1134. /package/select/{lib → internal}/filled-forced-colors-styles.scss +0 -0
  1135. /package/select/{lib → internal}/filled-select-styles.css.d.ts +0 -0
  1136. /package/select/{lib → internal}/filled-select-styles.scss +0 -0
  1137. /package/select/{lib → internal}/filled-select.d.ts +0 -0
  1138. /package/select/{lib → internal}/filled-select.js +0 -0
  1139. /package/select/{lib → internal}/filled-select.js.map +0 -0
  1140. /package/select/{lib → internal}/outlined-forced-colors-styles.css.d.ts +0 -0
  1141. /package/select/{lib → internal}/outlined-forced-colors-styles.css.js +0 -0
  1142. /package/select/{lib → internal}/outlined-forced-colors-styles.css.js.map +0 -0
  1143. /package/select/{lib → internal}/outlined-forced-colors-styles.scss +0 -0
  1144. /package/select/{lib → internal}/outlined-select-styles.css.d.ts +0 -0
  1145. /package/select/{lib → internal}/outlined-select-styles.scss +0 -0
  1146. /package/select/{lib → internal}/outlined-select.d.ts +0 -0
  1147. /package/select/{lib → internal}/outlined-select.js +0 -0
  1148. /package/select/{lib → internal}/outlined-select.js.map +0 -0
  1149. /package/select/{lib → internal}/shared-styles.css.d.ts +0 -0
  1150. /package/select/{lib → internal}/shared-styles.scss +0 -0
  1151. /package/{radio/lib → slider/internal}/forced-colors-styles.css.d.ts +0 -0
  1152. /package/slider/{lib → internal}/forced-colors-styles.css.js +0 -0
  1153. /package/slider/{lib → internal}/forced-colors-styles.css.js.map +0 -0
  1154. /package/slider/{lib → internal}/forced-colors-styles.scss +0 -0
  1155. /package/slider/{lib → internal}/slider-styles.css.d.ts +0 -0
  1156. /package/slider/{lib → internal}/slider-styles.scss +0 -0
  1157. /package/switch/{lib → internal}/README.md +0 -0
  1158. /package/{slider/lib → switch/internal}/forced-colors-styles.css.d.ts +0 -0
  1159. /package/switch/{lib → internal}/switch-styles.css.d.ts +0 -0
  1160. /package/switch/{lib → internal}/switch-styles.scss +0 -0
  1161. /package/tabs/{lib → internal}/tab-styles.css.d.ts +0 -0
  1162. /package/tabs/{lib → internal}/tab-styles.scss +0 -0
  1163. /package/tabs/{lib → internal}/tabs-styles.css.d.ts +0 -0
  1164. /package/tabs/{lib → internal}/tabs-styles.css.js +0 -0
  1165. /package/tabs/{lib → internal}/tabs-styles.css.js.map +0 -0
  1166. /package/tabs/{lib → internal}/tabs-styles.scss +0 -0
  1167. /package/textfield/{lib → internal}/_icon.scss +0 -0
  1168. /package/textfield/{lib → internal}/filled-forced-colors-styles.css.d.ts +0 -0
  1169. /package/textfield/{lib → internal}/filled-forced-colors-styles.css.js +0 -0
  1170. /package/textfield/{lib → internal}/filled-forced-colors-styles.css.js.map +0 -0
  1171. /package/textfield/{lib → internal}/filled-forced-colors-styles.scss +0 -0
  1172. /package/textfield/{lib → internal}/filled-styles.css.d.ts +0 -0
  1173. /package/textfield/{lib → internal}/filled-styles.scss +0 -0
  1174. /package/textfield/{lib → internal}/filled-text-field.d.ts +0 -0
  1175. /package/textfield/{lib → internal}/filled-text-field.js +0 -0
  1176. /package/textfield/{lib → internal}/filled-text-field.js.map +0 -0
  1177. /package/textfield/{lib → internal}/outlined-forced-colors-styles.css.d.ts +0 -0
  1178. /package/textfield/{lib → internal}/outlined-forced-colors-styles.css.js +0 -0
  1179. /package/textfield/{lib → internal}/outlined-forced-colors-styles.css.js.map +0 -0
  1180. /package/textfield/{lib → internal}/outlined-forced-colors-styles.scss +0 -0
  1181. /package/textfield/{lib → internal}/outlined-styles.css.d.ts +0 -0
  1182. /package/textfield/{lib → internal}/outlined-styles.scss +0 -0
  1183. /package/textfield/{lib → internal}/outlined-text-field.d.ts +0 -0
  1184. /package/textfield/{lib → internal}/outlined-text-field.js +0 -0
  1185. /package/textfield/{lib → internal}/outlined-text-field.js.map +0 -0
  1186. /package/textfield/{lib → internal}/shared-styles.css.d.ts +0 -0
  1187. /package/textfield/{lib → internal}/shared-styles.scss +0 -0
@@ -0,0 +1,252 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2023 Google LLC
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ /**
7
+ * Indicies to access the TypeaheadRecord tuple type.
8
+ */
9
+ export const TYPEAHEAD_RECORD = {
10
+ INDEX: 0,
11
+ ITEM: 1,
12
+ TEXT: 2,
13
+ };
14
+ /**
15
+ * This controller listens to `keydown` events and searches the header text of
16
+ * an array of `MenuItem`s with the corresponding entered keys within the buffer
17
+ * time and activates the item.
18
+ *
19
+ * @example
20
+ * ```ts
21
+ * const typeaheadController = new TypeaheadController(() => ({
22
+ * typeaheadBufferTime: 50,
23
+ * getItems: () => Array.from(document.querySelectorAll('md-menu-item'))
24
+ * }));
25
+ * html`
26
+ * <div
27
+ * @keydown=${typeaheadController.onKeydown}
28
+ * tabindex="0"
29
+ * class="activeItemText">
30
+ * <!-- focusable element that will receive keydown events -->
31
+ * Apple
32
+ * </div>
33
+ * <div>
34
+ * <md-menu-item active header="Apple"></md-menu-item>
35
+ * <md-menu-item header="Apricot"></md-menu-item>
36
+ * <md-menu-item header="Banana"></md-menu-item>
37
+ * <md-menu-item header="Olive"></md-menu-item>
38
+ * <md-menu-item header="Orange"></md-menu-item>
39
+ * </div>
40
+ * `;
41
+ * ```
42
+ */
43
+ export class TypeaheadController {
44
+ /**
45
+ * @param getProperties A function that returns the options of the typeahead
46
+ * controller:
47
+ *
48
+ * {
49
+ * getItems: A function that returns an array of menu items to be searched.
50
+ * typeaheadBufferTime: The maximum time between each keystroke to keep the
51
+ * current type buffer alive.
52
+ * }
53
+ */
54
+ constructor(getProperties) {
55
+ this.getProperties = getProperties;
56
+ /**
57
+ * Array of tuples that helps with indexing.
58
+ */
59
+ this.typeaheadRecords = [];
60
+ /**
61
+ * Currently-typed text since last buffer timeout
62
+ */
63
+ this.typaheadBuffer = '';
64
+ /**
65
+ * The timeout id from the current buffer's setTimeout
66
+ */
67
+ this.cancelTypeaheadTimeout = 0;
68
+ /**
69
+ * If we are currently "typing"
70
+ */
71
+ this.isTypingAhead = false;
72
+ /**
73
+ * The record of the last active item.
74
+ */
75
+ this.lastActiveRecord = null;
76
+ /**
77
+ * Apply this listener to the element that will receive `keydown` events that
78
+ * should trigger this controller.
79
+ *
80
+ * @param event The native browser `KeyboardEvent` from the `keydown` event.
81
+ */
82
+ this.onKeydown = (event) => {
83
+ if (this.isTypingAhead) {
84
+ this.typeahead(event);
85
+ }
86
+ else {
87
+ this.beginTypeahead(event);
88
+ }
89
+ };
90
+ /**
91
+ * Ends the current typeahead and clears the buffer.
92
+ */
93
+ this.endTypeahead = () => {
94
+ this.isTypingAhead = false;
95
+ this.typaheadBuffer = '';
96
+ this.typeaheadRecords = [];
97
+ };
98
+ }
99
+ get items() {
100
+ return this.getProperties().getItems();
101
+ }
102
+ get active() {
103
+ return this.getProperties().active;
104
+ }
105
+ /**
106
+ * Sets up typingahead
107
+ */
108
+ beginTypeahead(event) {
109
+ if (!this.active) {
110
+ return;
111
+ }
112
+ // We don't want to typeahead if the _beginning_ of the typeahead is a menu
113
+ // navigation, or a selection. We will handle "Space" only if it's in the
114
+ // middle of a typeahead
115
+ if (event.code === 'Space' || event.code === 'Enter' ||
116
+ event.code.startsWith('Arrow') || event.code === 'Escape') {
117
+ return;
118
+ }
119
+ this.isTypingAhead = true;
120
+ // Generates the record array data structure which is the index, the element
121
+ // and a normalized header.
122
+ this.typeaheadRecords = this.items.map((el, index) => [index, el, el.headline.trim().toLowerCase()]);
123
+ this.lastActiveRecord =
124
+ this.typeaheadRecords.find(record => record[TYPEAHEAD_RECORD.ITEM].active) ??
125
+ null;
126
+ if (this.lastActiveRecord) {
127
+ this.lastActiveRecord[TYPEAHEAD_RECORD.ITEM].active = false;
128
+ }
129
+ this.typeahead(event);
130
+ }
131
+ /**
132
+ * Performs the typeahead. Based on the normalized items and the current text
133
+ * buffer, finds the _next_ item with matching text and activates it.
134
+ *
135
+ * @example
136
+ *
137
+ * items: Apple, Banana, Olive, Orange, Cucumber
138
+ * buffer: ''
139
+ * user types: o
140
+ *
141
+ * activates Olive
142
+ *
143
+ * @example
144
+ *
145
+ * items: Apple, Banana, Olive (active), Orange, Cucumber
146
+ * buffer: 'o'
147
+ * user types: l
148
+ *
149
+ * activates Olive
150
+ *
151
+ * @example
152
+ *
153
+ * items: Apple, Banana, Olive (active), Orange, Cucumber
154
+ * buffer: ''
155
+ * user types: o
156
+ *
157
+ * activates Orange
158
+ *
159
+ * @example
160
+ *
161
+ * items: Apple, Banana, Olive, Orange (active), Cucumber
162
+ * buffer: ''
163
+ * user types: o
164
+ *
165
+ * activates Olive
166
+ */
167
+ typeahead(event) {
168
+ clearTimeout(this.cancelTypeaheadTimeout);
169
+ // Stop typingahead if one of the navigation or selection keys (except for
170
+ // Space) are pressed
171
+ if (event.code === 'Enter' || event.code.startsWith('Arrow') ||
172
+ event.code === 'Escape') {
173
+ this.endTypeahead();
174
+ if (this.lastActiveRecord) {
175
+ this.lastActiveRecord[TYPEAHEAD_RECORD.ITEM].active = false;
176
+ }
177
+ return;
178
+ }
179
+ // If Space is pressed, prevent it from selecting and closing the menu
180
+ if (event.code === 'Space') {
181
+ event.stopPropagation();
182
+ event.preventDefault();
183
+ }
184
+ // Start up a new keystroke buffer timeout
185
+ this.cancelTypeaheadTimeout =
186
+ setTimeout(this.endTypeahead, this.getProperties().typeaheadBufferTime);
187
+ this.typaheadBuffer += event.key.toLowerCase();
188
+ const lastActiveIndex = this.lastActiveRecord ?
189
+ this.lastActiveRecord[TYPEAHEAD_RECORD.INDEX] :
190
+ -1;
191
+ const numRecords = this.typeaheadRecords.length;
192
+ /**
193
+ * Sorting function that will resort the items starting with the given index
194
+ *
195
+ * @example
196
+ *
197
+ * this.typeaheadRecords =
198
+ * 0: [0, <reference>, 'apple']
199
+ * 1: [1, <reference>, 'apricot']
200
+ * 2: [2, <reference>, 'banana']
201
+ * 3: [3, <reference>, 'olive'] <-- lastActiveIndex
202
+ * 4: [4, <reference>, 'orange']
203
+ * 5: [5, <reference>, 'strawberry']
204
+ *
205
+ * this.typeaheadRecords.sort((a,b) => rebaseIndexOnActive(a)
206
+ * - rebaseIndexOnActive(b)) ===
207
+ * 0: [3, <reference>, 'olive'] <-- lastActiveIndex
208
+ * 1: [4, <reference>, 'orange']
209
+ * 2: [5, <reference>, 'strawberry']
210
+ * 3: [0, <reference>, 'apple']
211
+ * 4: [1, <reference>, 'apricot']
212
+ * 5: [2, <reference>, 'banana']
213
+ */
214
+ const rebaseIndexOnActive = (record) => {
215
+ return (record[TYPEAHEAD_RECORD.INDEX] + numRecords - lastActiveIndex) %
216
+ numRecords;
217
+ };
218
+ // records filtered and sorted / rebased around the last active index
219
+ const matchingRecords = this.typeaheadRecords
220
+ .filter(record => !record[TYPEAHEAD_RECORD.ITEM].disabled &&
221
+ record[TYPEAHEAD_RECORD.TEXT].startsWith(this.typaheadBuffer))
222
+ .sort((a, b) => rebaseIndexOnActive(a) - rebaseIndexOnActive(b));
223
+ // Just leave if there's nothing that matches. Native select will just
224
+ // choose the first thing that starts with the next letter in the alphabet
225
+ // but that's out of scope and hard to localize
226
+ if (matchingRecords.length === 0) {
227
+ clearTimeout(this.cancelTypeaheadTimeout);
228
+ if (this.lastActiveRecord) {
229
+ this.lastActiveRecord[TYPEAHEAD_RECORD.ITEM].active = false;
230
+ }
231
+ this.endTypeahead();
232
+ return;
233
+ }
234
+ const isNewQuery = this.typaheadBuffer.length === 1;
235
+ let nextRecord;
236
+ // This is likely the case that someone is trying to "tab" through different
237
+ // entries that start with the same letter
238
+ if (this.lastActiveRecord === matchingRecords[0] && isNewQuery) {
239
+ nextRecord = matchingRecords[1] ?? matchingRecords[0];
240
+ }
241
+ else {
242
+ nextRecord = matchingRecords[0];
243
+ }
244
+ if (this.lastActiveRecord) {
245
+ this.lastActiveRecord[TYPEAHEAD_RECORD.ITEM].active = false;
246
+ }
247
+ this.lastActiveRecord = nextRecord;
248
+ nextRecord[TYPEAHEAD_RECORD.ITEM].active = true;
249
+ return;
250
+ }
251
+ }
252
+ //# sourceMappingURL=typeaheadController.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"typeaheadController.js","sourceRoot":"","sources":["typeaheadController.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AA8BH;;GAEG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAG;IAC9B,KAAK,EAAE,CAAC;IACR,IAAI,EAAE,CAAC;IACP,IAAI,EAAE,CAAC;CACC,CAAC;AAEX;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,MAAM,OAAO,mBAAmB;IAsB9B;;;;;;;;;OASG;IACH,YACqB,aAAkD;QAAlD,kBAAa,GAAb,aAAa,CAAqC;QAhCvE;;WAEG;QACK,qBAAgB,GAAsB,EAAE,CAAC;QACjD;;WAEG;QACK,mBAAc,GAAG,EAAE,CAAC;QAC5B;;WAEG;QACK,2BAAsB,GAAG,CAAC,CAAC;QACnC;;WAEG;QACH,kBAAa,GAAG,KAAK,CAAC;QACtB;;WAEG;QACH,qBAAgB,GAAyB,IAAI,CAAC;QAwB9C;;;;;WAKG;QACM,cAAS,GAAG,CAAC,KAAoB,EAAE,EAAE;YAC5C,IAAI,IAAI,CAAC,aAAa,EAAE;gBACtB,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;aACvB;iBAAM;gBACL,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;aAC5B;QACH,CAAC,CAAC;QAuKF;;WAEG;QACc,iBAAY,GAAG,GAAG,EAAE;YACnC,IAAI,CAAC,aAAa,GAAG,KAAK,CAAC;YAC3B,IAAI,CAAC,cAAc,GAAG,EAAE,CAAC;YACzB,IAAI,CAAC,gBAAgB,GAAG,EAAE,CAAC;QAC7B,CAAC,CAAC;IApMC,CAAC;IAEJ,IAAY,KAAK;QACf,OAAO,IAAI,CAAC,aAAa,EAAE,CAAC,QAAQ,EAAE,CAAC;IACzC,CAAC;IAED,IAAY,MAAM;QAChB,OAAO,IAAI,CAAC,aAAa,EAAE,CAAC,MAAM,CAAC;IACrC,CAAC;IAgBD;;OAEG;IACK,cAAc,CAAC,KAAoB;QACzC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE;YAChB,OAAO;SACR;QAED,2EAA2E;QAC3E,yEAAyE;QACzE,wBAAwB;QACxB,IAAI,KAAK,CAAC,IAAI,KAAK,OAAO,IAAI,KAAK,CAAC,IAAI,KAAK,OAAO;YAChD,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,KAAK,CAAC,IAAI,KAAK,QAAQ,EAAE;YAC7D,OAAO;SACR;QAED,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC;QAC1B,4EAA4E;QAC5E,2BAA2B;QAC3B,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAClC,CAAC,EAAE,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,KAAK,EAAE,EAAE,EAAE,EAAE,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC;QAClE,IAAI,CAAC,gBAAgB;YACjB,IAAI,CAAC,gBAAgB,CAAC,IAAI,CACtB,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC;gBACnD,IAAI,CAAC;QACT,IAAI,IAAI,CAAC,gBAAgB,EAAE;YACzB,IAAI,CAAC,gBAAgB,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC,MAAM,GAAG,KAAK,CAAC;SAC7D;QACD,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;IACxB,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAmCG;IACK,SAAS,CAAC,KAAoB;QACpC,YAAY,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC;QAC1C,0EAA0E;QAC1E,qBAAqB;QACrB,IAAI,KAAK,CAAC,IAAI,KAAK,OAAO,IAAI,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC;YACxD,KAAK,CAAC,IAAI,KAAK,QAAQ,EAAE;YAC3B,IAAI,CAAC,YAAY,EAAE,CAAC;YACpB,IAAI,IAAI,CAAC,gBAAgB,EAAE;gBACzB,IAAI,CAAC,gBAAgB,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC,MAAM,GAAG,KAAK,CAAC;aAC7D;YACD,OAAO;SACR;QAED,sEAAsE;QACtE,IAAI,KAAK,CAAC,IAAI,KAAK,OAAO,EAAE;YAC1B,KAAK,CAAC,eAAe,EAAE,CAAC;YACxB,KAAK,CAAC,cAAc,EAAE,CAAC;SACxB;QAED,0CAA0C;QAC1C,IAAI,CAAC,sBAAsB;YACvB,UAAU,CAAC,IAAI,CAAC,YAAY,EAAE,IAAI,CAAC,aAAa,EAAE,CAAC,mBAAmB,CAAC,CAAC;QAE5E,IAAI,CAAC,cAAc,IAAI,KAAK,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC;QAE/C,MAAM,eAAe,GAAG,IAAI,CAAC,gBAAgB,CAAC,CAAC;YAC3C,IAAI,CAAC,gBAAgB,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC,CAAC;YAC/C,CAAC,CAAC,CAAC;QACP,MAAM,UAAU,GAAG,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC;QAEhD;;;;;;;;;;;;;;;;;;;;;WAqBG;QACH,MAAM,mBAAmB,GAAG,CAAC,MAAuB,EAAE,EAAE;YACtD,OAAO,CAAC,MAAM,CAAC,gBAAgB,CAAC,KAAK,CAAC,GAAG,UAAU,GAAG,eAAe,CAAC;gBAClE,UAAU,CAAC;QACjB,CAAC,CAAC;QAEF,qEAAqE;QACrE,MAAM,eAAe,GACjB,IAAI,CAAC,gBAAgB;aAChB,MAAM,CACH,MAAM,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC,QAAQ;YAC7C,MAAM,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC,UAAU,CACpC,IAAI,CAAC,cAAc,CAAC,CAAC;aAChC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,mBAAmB,CAAC,CAAC,CAAC,GAAG,mBAAmB,CAAC,CAAC,CAAC,CAAC,CAAC;QAEzE,sEAAsE;QACtE,0EAA0E;QAC1E,+CAA+C;QAC/C,IAAI,eAAe,CAAC,MAAM,KAAK,CAAC,EAAE;YAChC,YAAY,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC;YAC1C,IAAI,IAAI,CAAC,gBAAgB,EAAE;gBACzB,IAAI,CAAC,gBAAgB,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC,MAAM,GAAG,KAAK,CAAC;aAC7D;YACD,IAAI,CAAC,YAAY,EAAE,CAAC;YACpB,OAAO;SACR;QAED,MAAM,UAAU,GAAG,IAAI,CAAC,cAAc,CAAC,MAAM,KAAK,CAAC,CAAC;QACpD,IAAI,UAA2B,CAAC;QAEhC,4EAA4E;QAC5E,0CAA0C;QAC1C,IAAI,IAAI,CAAC,gBAAgB,KAAK,eAAe,CAAC,CAAC,CAAC,IAAI,UAAU,EAAE;YAC9D,UAAU,GAAG,eAAe,CAAC,CAAC,CAAC,IAAI,eAAe,CAAC,CAAC,CAAC,CAAC;SACvD;aAAM;YACL,UAAU,GAAG,eAAe,CAAC,CAAC,CAAC,CAAC;SACjC;QAED,IAAI,IAAI,CAAC,gBAAgB,EAAE;YACzB,IAAI,CAAC,gBAAgB,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC,MAAM,GAAG,KAAK,CAAC;SAC7D;QAED,IAAI,CAAC,gBAAgB,GAAG,UAAU,CAAC;QACnC,UAAU,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC,MAAM,GAAG,IAAI,CAAC;QAChD,OAAO;IACT,CAAC;CAUF","sourcesContent":["/**\n * @license\n * Copyright 2023 Google LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport {MenuItem} from './shared.js';\n\n/**\n * The options that are passed to the typeahead controller.\n */\nexport interface TypeaheadControllerProperties {\n /**\n * A function that returns an array of menu items to be searched.\n * @return An array of menu items to be searched by typing.\n */\n getItems: () => MenuItem[];\n /**\n * The maximum time between each keystroke to keep the current type buffer\n * alive.\n */\n typeaheadBufferTime: number;\n /**\n * Whether or not the typeahead should listen for keystrokes or not.\n */\n active: boolean;\n}\n\n/**\n * Data structure tuple that helps with indexing.\n *\n * [index, item, normalized header text]\n */\ntype TypeaheadRecord = [number, MenuItem, string];\n/**\n * Indicies to access the TypeaheadRecord tuple type.\n */\nexport const TYPEAHEAD_RECORD = {\n INDEX: 0,\n ITEM: 1,\n TEXT: 2,\n} as const;\n\n/**\n * This controller listens to `keydown` events and searches the header text of\n * an array of `MenuItem`s with the corresponding entered keys within the buffer\n * time and activates the item.\n *\n * @example\n * ```ts\n * const typeaheadController = new TypeaheadController(() => ({\n * typeaheadBufferTime: 50,\n * getItems: () => Array.from(document.querySelectorAll('md-menu-item'))\n * }));\n * html`\n * <div\n * @keydown=${typeaheadController.onKeydown}\n * tabindex=\"0\"\n * class=\"activeItemText\">\n * <!-- focusable element that will receive keydown events -->\n * Apple\n * </div>\n * <div>\n * <md-menu-item active header=\"Apple\"></md-menu-item>\n * <md-menu-item header=\"Apricot\"></md-menu-item>\n * <md-menu-item header=\"Banana\"></md-menu-item>\n * <md-menu-item header=\"Olive\"></md-menu-item>\n * <md-menu-item header=\"Orange\"></md-menu-item>\n * </div>\n * `;\n * ```\n */\nexport class TypeaheadController {\n /**\n * Array of tuples that helps with indexing.\n */\n private typeaheadRecords: TypeaheadRecord[] = [];\n /**\n * Currently-typed text since last buffer timeout\n */\n private typaheadBuffer = '';\n /**\n * The timeout id from the current buffer's setTimeout\n */\n private cancelTypeaheadTimeout = 0;\n /**\n * If we are currently \"typing\"\n */\n isTypingAhead = false;\n /**\n * The record of the last active item.\n */\n lastActiveRecord: TypeaheadRecord|null = null;\n\n /**\n * @param getProperties A function that returns the options of the typeahead\n * controller:\n *\n * {\n * getItems: A function that returns an array of menu items to be searched.\n * typeaheadBufferTime: The maximum time between each keystroke to keep the\n * current type buffer alive.\n * }\n */\n constructor(\n private readonly getProperties: () => TypeaheadControllerProperties,\n ) {}\n\n private get items() {\n return this.getProperties().getItems();\n }\n\n private get active() {\n return this.getProperties().active;\n }\n\n /**\n * Apply this listener to the element that will receive `keydown` events that\n * should trigger this controller.\n *\n * @param event The native browser `KeyboardEvent` from the `keydown` event.\n */\n readonly onKeydown = (event: KeyboardEvent) => {\n if (this.isTypingAhead) {\n this.typeahead(event);\n } else {\n this.beginTypeahead(event);\n }\n };\n\n /**\n * Sets up typingahead\n */\n private beginTypeahead(event: KeyboardEvent) {\n if (!this.active) {\n return;\n }\n\n // We don't want to typeahead if the _beginning_ of the typeahead is a menu\n // navigation, or a selection. We will handle \"Space\" only if it's in the\n // middle of a typeahead\n if (event.code === 'Space' || event.code === 'Enter' ||\n event.code.startsWith('Arrow') || event.code === 'Escape') {\n return;\n }\n\n this.isTypingAhead = true;\n // Generates the record array data structure which is the index, the element\n // and a normalized header.\n this.typeaheadRecords = this.items.map(\n (el, index) => [index, el, el.headline.trim().toLowerCase()]);\n this.lastActiveRecord =\n this.typeaheadRecords.find(\n record => record[TYPEAHEAD_RECORD.ITEM].active) ??\n null;\n if (this.lastActiveRecord) {\n this.lastActiveRecord[TYPEAHEAD_RECORD.ITEM].active = false;\n }\n this.typeahead(event);\n }\n\n /**\n * Performs the typeahead. Based on the normalized items and the current text\n * buffer, finds the _next_ item with matching text and activates it.\n *\n * @example\n *\n * items: Apple, Banana, Olive, Orange, Cucumber\n * buffer: ''\n * user types: o\n *\n * activates Olive\n *\n * @example\n *\n * items: Apple, Banana, Olive (active), Orange, Cucumber\n * buffer: 'o'\n * user types: l\n *\n * activates Olive\n *\n * @example\n *\n * items: Apple, Banana, Olive (active), Orange, Cucumber\n * buffer: ''\n * user types: o\n *\n * activates Orange\n *\n * @example\n *\n * items: Apple, Banana, Olive, Orange (active), Cucumber\n * buffer: ''\n * user types: o\n *\n * activates Olive\n */\n private typeahead(event: KeyboardEvent) {\n clearTimeout(this.cancelTypeaheadTimeout);\n // Stop typingahead if one of the navigation or selection keys (except for\n // Space) are pressed\n if (event.code === 'Enter' || event.code.startsWith('Arrow') ||\n event.code === 'Escape') {\n this.endTypeahead();\n if (this.lastActiveRecord) {\n this.lastActiveRecord[TYPEAHEAD_RECORD.ITEM].active = false;\n }\n return;\n }\n\n // If Space is pressed, prevent it from selecting and closing the menu\n if (event.code === 'Space') {\n event.stopPropagation();\n event.preventDefault();\n }\n\n // Start up a new keystroke buffer timeout\n this.cancelTypeaheadTimeout =\n setTimeout(this.endTypeahead, this.getProperties().typeaheadBufferTime);\n\n this.typaheadBuffer += event.key.toLowerCase();\n\n const lastActiveIndex = this.lastActiveRecord ?\n this.lastActiveRecord[TYPEAHEAD_RECORD.INDEX] :\n -1;\n const numRecords = this.typeaheadRecords.length;\n\n /**\n * Sorting function that will resort the items starting with the given index\n *\n * @example\n *\n * this.typeaheadRecords =\n * 0: [0, <reference>, 'apple']\n * 1: [1, <reference>, 'apricot']\n * 2: [2, <reference>, 'banana']\n * 3: [3, <reference>, 'olive'] <-- lastActiveIndex\n * 4: [4, <reference>, 'orange']\n * 5: [5, <reference>, 'strawberry']\n *\n * this.typeaheadRecords.sort((a,b) => rebaseIndexOnActive(a)\n * - rebaseIndexOnActive(b)) ===\n * 0: [3, <reference>, 'olive'] <-- lastActiveIndex\n * 1: [4, <reference>, 'orange']\n * 2: [5, <reference>, 'strawberry']\n * 3: [0, <reference>, 'apple']\n * 4: [1, <reference>, 'apricot']\n * 5: [2, <reference>, 'banana']\n */\n const rebaseIndexOnActive = (record: TypeaheadRecord) => {\n return (record[TYPEAHEAD_RECORD.INDEX] + numRecords - lastActiveIndex) %\n numRecords;\n };\n\n // records filtered and sorted / rebased around the last active index\n const matchingRecords =\n this.typeaheadRecords\n .filter(\n record => !record[TYPEAHEAD_RECORD.ITEM].disabled &&\n record[TYPEAHEAD_RECORD.TEXT].startsWith(\n this.typaheadBuffer))\n .sort((a, b) => rebaseIndexOnActive(a) - rebaseIndexOnActive(b));\n\n // Just leave if there's nothing that matches. Native select will just\n // choose the first thing that starts with the next letter in the alphabet\n // but that's out of scope and hard to localize\n if (matchingRecords.length === 0) {\n clearTimeout(this.cancelTypeaheadTimeout);\n if (this.lastActiveRecord) {\n this.lastActiveRecord[TYPEAHEAD_RECORD.ITEM].active = false;\n }\n this.endTypeahead();\n return;\n }\n\n const isNewQuery = this.typaheadBuffer.length === 1;\n let nextRecord: TypeaheadRecord;\n\n // This is likely the case that someone is trying to \"tab\" through different\n // entries that start with the same letter\n if (this.lastActiveRecord === matchingRecords[0] && isNewQuery) {\n nextRecord = matchingRecords[1] ?? matchingRecords[0];\n } else {\n nextRecord = matchingRecords[0];\n }\n\n if (this.lastActiveRecord) {\n this.lastActiveRecord[TYPEAHEAD_RECORD.ITEM].active = false;\n }\n\n this.lastActiveRecord = nextRecord;\n nextRecord[TYPEAHEAD_RECORD.ITEM].active = true;\n return;\n }\n\n /**\n * Ends the current typeahead and clears the buffer.\n */\n private readonly endTypeahead = () => {\n this.isTypingAhead = false;\n this.typaheadBuffer = '';\n this.typeaheadRecords = [];\n };\n}\n"]}
@@ -3,9 +3,9 @@
3
3
  * Copyright 2022 Google LLC
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
- import { MenuItemEl } from './lib/menuitem/menu-item.js';
7
- export { ListItem } from '../list/lib/listitem/list-item.js';
8
- export { CloseMenuEvent, DeactivateItemsEvent, MenuItem } from './lib/shared.js';
6
+ import { MenuItemEl } from './internal/menuitem/menu-item.js';
7
+ export { ListItem } from '../list/internal/listitem/list-item.js';
8
+ export { CloseMenuEvent, MenuItem } from './internal/shared.js';
9
9
  declare global {
10
10
  interface HTMLElementTagNameMap {
11
11
  'md-menu-item': MdMenuItem;
package/menu/menu-item.js CHANGED
@@ -5,12 +5,11 @@
5
5
  */
6
6
  import { __decorate } from "tslib";
7
7
  import { customElement } from 'lit/decorators.js';
8
- import { styles as listItemForcedColorsStyles } from '../list/lib/listitem/forced-colors-styles.css.js';
9
- import { styles as listItemStyles } from '../list/lib/listitem/list-item-styles.css.js';
10
- import { styles as forcedColorsStyles } from './lib/menuitem/forced-colors-styles.css.js';
11
- import { MenuItemEl } from './lib/menuitem/menu-item.js';
12
- import { styles } from './lib/menuitem/menu-item-styles.css.js';
13
- export { CloseMenuEvent, DeactivateItemsEvent } from './lib/shared.js';
8
+ import { styles as listItemForcedColorsStyles } from '../list/internal/listitem/forced-colors-styles.css.js';
9
+ import { styles as listItemStyles } from '../list/internal/listitem/list-item-styles.css.js';
10
+ import { styles as forcedColorsStyles } from './internal/menuitem/forced-colors-styles.css.js';
11
+ import { MenuItemEl } from './internal/menuitem/menu-item.js';
12
+ import { styles } from './internal/menuitem/menu-item-styles.css.js';
14
13
  /**
15
14
  * @summary Menus display a list of choices on a temporary surface.
16
15
  *
@@ -1 +1 @@
1
- {"version":3,"file":"menu-item.js","sourceRoot":"","sources":["menu-item.ts"],"names":[],"mappings":"AAAA;;;;GAIG;;AAEH,OAAO,EAAC,aAAa,EAAC,MAAM,mBAAmB,CAAC;AAEhD,OAAO,EAAC,MAAM,IAAI,0BAA0B,EAAC,MAAM,kDAAkD,CAAC;AACtG,OAAO,EAAC,MAAM,IAAI,cAAc,EAAC,MAAM,8CAA8C,CAAC;AAEtF,OAAO,EAAC,MAAM,IAAI,kBAAkB,EAAC,MAAM,4CAA4C,CAAC;AACxF,OAAO,EAAC,UAAU,EAAC,MAAM,6BAA6B,CAAC;AACvD,OAAO,EAAC,MAAM,EAAC,MAAM,wCAAwC,CAAC;AAG9D,OAAO,EAAC,cAAc,EAAE,oBAAoB,EAAW,MAAM,iBAAiB,CAAC;AAQ/E;;;;;;;;;;;;;;GAcG;AAEI,IAAM,UAAU,GAAhB,MAAM,UAAW,SAAQ,UAAU;;AACxB,iBAAM,GAClB,CAAC,cAAc,EAAE,MAAM,EAAE,0BAA0B,EAAE,kBAAkB,CAAC,CAAC;AAFlE,UAAU;IADtB,aAAa,CAAC,cAAc,CAAC;GACjB,UAAU,CAGtB;SAHY,UAAU","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 {styles as listItemForcedColorsStyles} from '../list/lib/listitem/forced-colors-styles.css.js';\nimport {styles as listItemStyles} from '../list/lib/listitem/list-item-styles.css.js';\n\nimport {styles as forcedColorsStyles} from './lib/menuitem/forced-colors-styles.css.js';\nimport {MenuItemEl} from './lib/menuitem/menu-item.js';\nimport {styles} from './lib/menuitem/menu-item-styles.css.js';\n\nexport {ListItem} from '../list/lib/listitem/list-item.js';\nexport {CloseMenuEvent, DeactivateItemsEvent, MenuItem} from './lib/shared.js';\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'md-menu-item': MdMenuItem;\n }\n}\n\n/**\n * @summary Menus display a list of choices on a temporary surface.\n *\n * @description\n * Menu items are the selectable choices within the menu. Menu items must\n * implement the `MenuItem` interface and also have the `md-menu-item`\n * attribute. Additionally menu items are list items so they must also have the\n * `md-list-item` attribute.\n *\n * Menu items can control a menu by selectively firing the `close-menu` and\n * `deselect-items` events.\n *\n * @final\n * @suppress {visibility}\n */\n@customElement('md-menu-item')\nexport class MdMenuItem extends MenuItemEl {\n static override styles =\n [listItemStyles, styles, listItemForcedColorsStyles, forcedColorsStyles];\n}\n"]}
1
+ {"version":3,"file":"menu-item.js","sourceRoot":"","sources":["menu-item.ts"],"names":[],"mappings":"AAAA;;;;GAIG;;AAEH,OAAO,EAAC,aAAa,EAAC,MAAM,mBAAmB,CAAC;AAEhD,OAAO,EAAC,MAAM,IAAI,0BAA0B,EAAC,MAAM,uDAAuD,CAAC;AAC3G,OAAO,EAAC,MAAM,IAAI,cAAc,EAAC,MAAM,mDAAmD,CAAC;AAE3F,OAAO,EAAC,MAAM,IAAI,kBAAkB,EAAC,MAAM,iDAAiD,CAAC;AAC7F,OAAO,EAAC,UAAU,EAAC,MAAM,kCAAkC,CAAC;AAC5D,OAAO,EAAC,MAAM,EAAC,MAAM,6CAA6C,CAAC;AAWnE;;;;;;;;;;;;;;GAcG;AAEI,IAAM,UAAU,GAAhB,MAAM,UAAW,SAAQ,UAAU;;AACxB,iBAAM,GAClB,CAAC,cAAc,EAAE,MAAM,EAAE,0BAA0B,EAAE,kBAAkB,CAAC,CAAC;AAFlE,UAAU;IADtB,aAAa,CAAC,cAAc,CAAC;GACjB,UAAU,CAGtB;SAHY,UAAU","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 {styles as listItemForcedColorsStyles} from '../list/internal/listitem/forced-colors-styles.css.js';\nimport {styles as listItemStyles} from '../list/internal/listitem/list-item-styles.css.js';\n\nimport {styles as forcedColorsStyles} from './internal/menuitem/forced-colors-styles.css.js';\nimport {MenuItemEl} from './internal/menuitem/menu-item.js';\nimport {styles} from './internal/menuitem/menu-item-styles.css.js';\n\nexport {ListItem} from '../list/internal/listitem/list-item.js';\nexport {CloseMenuEvent, MenuItem} from './internal/shared.js';\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'md-menu-item': MdMenuItem;\n }\n}\n\n/**\n * @summary Menus display a list of choices on a temporary surface.\n *\n * @description\n * Menu items are the selectable choices within the menu. Menu items must\n * implement the `MenuItem` interface and also have the `md-menu-item`\n * attribute. Additionally menu items are list items so they must also have the\n * `md-list-item` attribute.\n *\n * Menu items can control a menu by selectively firing the `close-menu` and\n * `deselect-items` events.\n *\n * @final\n * @suppress {visibility}\n */\n@customElement('md-menu-item')\nexport class MdMenuItem extends MenuItemEl {\n static override styles =\n [listItemStyles, styles, listItemForcedColorsStyles, forcedColorsStyles];\n}\n"]}
package/menu/menu.d.ts CHANGED
@@ -3,10 +3,10 @@
3
3
  * Copyright 2022 Google LLC
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
- import { Menu } from './lib/menu.js';
7
- export { ListItem } from '../list/lib/listitem/list-item.js';
8
- export { Corner, DefaultFocusState } from './lib/menu.js';
9
- export { CloseMenuEvent, DeactivateItemsEvent, MenuItem } from './lib/shared.js';
6
+ import { Menu } from './internal/menu.js';
7
+ export { ListItem } from '../list/internal/listitem/list-item.js';
8
+ export { Corner, DefaultFocusState } from './internal/menu.js';
9
+ export { CloseMenuEvent, MenuItem } from './internal/shared.js';
10
10
  declare global {
11
11
  interface HTMLElementTagNameMap {
12
12
  'md-menu': MdMenu;
package/menu/menu.js CHANGED
@@ -5,10 +5,9 @@
5
5
  */
6
6
  import { __decorate } from "tslib";
7
7
  import { customElement } from 'lit/decorators.js';
8
- import { styles as forcedColors } from './lib/forced-colors-styles.css.js';
9
- import { Menu } from './lib/menu.js';
10
- import { styles } from './lib/menu-styles.css.js';
11
- export { CloseMenuEvent, DeactivateItemsEvent } from './lib/shared.js';
8
+ import { styles as forcedColors } from './internal/forced-colors-styles.css.js';
9
+ import { Menu } from './internal/menu.js';
10
+ import { styles } from './internal/menu-styles.css.js';
12
11
  /**
13
12
  * @summary Menus display a list of choices on a temporary surface.
14
13
  *
package/menu/menu.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"menu.js","sourceRoot":"","sources":["menu.ts"],"names":[],"mappings":"AAAA;;;;GAIG;;AAEH,OAAO,EAAC,aAAa,EAAC,MAAM,mBAAmB,CAAC;AAEhD,OAAO,EAAC,MAAM,IAAI,YAAY,EAAC,MAAM,mCAAmC,CAAC;AACzE,OAAO,EAAC,IAAI,EAAC,MAAM,eAAe,CAAC;AACnC,OAAO,EAAC,MAAM,EAAC,MAAM,0BAA0B,CAAC;AAIhD,OAAO,EAAC,cAAc,EAAE,oBAAoB,EAAW,MAAM,iBAAiB,CAAC;AAQ/E;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAyCG;AAEI,IAAM,MAAM,GAAZ,MAAM,MAAO,SAAQ,IAAI;;AACd,aAAM,GAAG,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;AADrC,MAAM;IADlB,aAAa,CAAC,SAAS,CAAC;GACZ,MAAM,CAElB;SAFY,MAAM","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 {styles as forcedColors} from './lib/forced-colors-styles.css.js';\nimport {Menu} from './lib/menu.js';\nimport {styles} from './lib/menu-styles.css.js';\n\nexport {ListItem} from '../list/lib/listitem/list-item.js';\nexport {Corner, DefaultFocusState} from './lib/menu.js';\nexport {CloseMenuEvent, DeactivateItemsEvent, MenuItem} from './lib/shared.js';\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'md-menu': MdMenu;\n }\n}\n\n/**\n * @summary Menus display a list of choices on a temporary surface.\n *\n * @description\n * Menus appear when users interact with a button, action, or other control.\n *\n * They can be opened from a variety of elements, most commonly icon buttons,\n * buttons, and text fields.\n *\n * md-menu listens for the `close-menu` and `deselect-items` events.\n *\n * - `close-menu` closes the menu when dispatched from a child element.\n * - `deselect-items` deselects all of its immediate menu-item children.\n *\n * @example\n * ```html\n * <div style=\"position:relative;\">\n * <button\n * class=\"anchor\"\n * ${ref(anchorRef)}\n * @click=${() => this.menuRef.value.show()}>\n * Click to open menu\n * </button>\n * <!--\n * `has-overflow` is required when using a submenu which overflows the\n * menu's contents\n * -->\n * <md-menu has-overflow ${ref(menuRef)} ${(el) => el.anchor =\n * anchorRef.value}> <md-menu-item header=\"This is a header\"></md-menu-item>\n * <md-sub-menu-item header=\"this is a submenu item\">\n * <md-menu slot=\"submenu\">\n * <md-menu-item\n * header=\"This is an item inside a submenu\"></md-menu-item>\n * </md-menu>\n * </md-sub-menu-item>\n * </md-menu>\n * </div>\n * ```\n *\n * @final\n * @suppress {visibility}\n */\n@customElement('md-menu')\nexport class MdMenu extends Menu {\n static override styles = [styles, forcedColors];\n}\n"]}
1
+ {"version":3,"file":"menu.js","sourceRoot":"","sources":["menu.ts"],"names":[],"mappings":"AAAA;;;;GAIG;;AAEH,OAAO,EAAC,aAAa,EAAC,MAAM,mBAAmB,CAAC;AAEhD,OAAO,EAAC,MAAM,IAAI,YAAY,EAAC,MAAM,wCAAwC,CAAC;AAC9E,OAAO,EAAC,IAAI,EAAC,MAAM,oBAAoB,CAAC;AACxC,OAAO,EAAC,MAAM,EAAC,MAAM,+BAA+B,CAAC;AAYrD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAyCG;AAEI,IAAM,MAAM,GAAZ,MAAM,MAAO,SAAQ,IAAI;;AACd,aAAM,GAAG,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;AADrC,MAAM;IADlB,aAAa,CAAC,SAAS,CAAC;GACZ,MAAM,CAElB;SAFY,MAAM","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 {styles as forcedColors} from './internal/forced-colors-styles.css.js';\nimport {Menu} from './internal/menu.js';\nimport {styles} from './internal/menu-styles.css.js';\n\nexport {ListItem} from '../list/internal/listitem/list-item.js';\nexport {Corner, DefaultFocusState} from './internal/menu.js';\nexport {CloseMenuEvent, MenuItem} from './internal/shared.js';\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'md-menu': MdMenu;\n }\n}\n\n/**\n * @summary Menus display a list of choices on a temporary surface.\n *\n * @description\n * Menus appear when users interact with a button, action, or other control.\n *\n * They can be opened from a variety of elements, most commonly icon buttons,\n * buttons, and text fields.\n *\n * md-menu listens for the `close-menu` and `deselect-items` events.\n *\n * - `close-menu` closes the menu when dispatched from a child element.\n * - `deselect-items` deselects all of its immediate menu-item children.\n *\n * @example\n * ```html\n * <div style=\"position:relative;\">\n * <button\n * class=\"anchor\"\n * ${ref(anchorRef)}\n * @click=${() => this.menuRef.value.show()}>\n * Click to open menu\n * </button>\n * <!--\n * `has-overflow` is required when using a submenu which overflows the\n * menu's contents\n * -->\n * <md-menu has-overflow ${ref(menuRef)} ${(el) => el.anchor =\n * anchorRef.value}> <md-menu-item header=\"This is a header\"></md-menu-item>\n * <md-sub-menu-item header=\"this is a submenu item\">\n * <md-menu slot=\"submenu\">\n * <md-menu-item\n * header=\"This is an item inside a submenu\"></md-menu-item>\n * </md-menu>\n * </md-sub-menu-item>\n * </md-menu>\n * </div>\n * ```\n *\n * @final\n * @suppress {visibility}\n */\n@customElement('md-menu')\nexport class MdMenu extends Menu {\n static override styles = [styles, forcedColors];\n}\n"]}
@@ -3,9 +3,9 @@
3
3
  * Copyright 2023 Google LLC
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
- import { SubMenuItem } from './lib/submenuitem/sub-menu-item.js';
7
- export { ListItem } from '../list/lib/listitem/list-item.js';
8
- export { CloseMenuEvent, DeactivateItemsEvent, MenuItem } from './lib/shared.js';
6
+ import { SubMenuItem } from './internal/submenuitem/sub-menu-item.js';
7
+ export { ListItem } from '../list/internal/listitem/list-item.js';
8
+ export { CloseMenuEvent, MenuItem } from './internal/shared.js';
9
9
  declare global {
10
10
  interface HTMLElementTagNameMap {
11
11
  'md-sub-menu-item': MdSubMenuItem;
@@ -5,12 +5,11 @@
5
5
  */
6
6
  import { __decorate } from "tslib";
7
7
  import { customElement } from 'lit/decorators.js';
8
- import { styles as listItemForcedColorsStyles } from '../list/lib/listitem/forced-colors-styles.css.js';
9
- import { styles as listItemStyles } from '../list/lib/listitem/list-item-styles.css.js';
10
- import { styles as forcedColorsStyles } from './lib/menuitem/forced-colors-styles.css.js';
11
- import { styles } from './lib/menuitem/menu-item-styles.css.js';
12
- import { SubMenuItem } from './lib/submenuitem/sub-menu-item.js';
13
- export { CloseMenuEvent, DeactivateItemsEvent } from './lib/shared.js';
8
+ import { styles as listItemForcedColorsStyles } from '../list/internal/listitem/forced-colors-styles.css.js';
9
+ import { styles as listItemStyles } from '../list/internal/listitem/list-item-styles.css.js';
10
+ import { styles as forcedColorsStyles } from './internal/menuitem/forced-colors-styles.css.js';
11
+ import { styles } from './internal/menuitem/menu-item-styles.css.js';
12
+ import { SubMenuItem } from './internal/submenuitem/sub-menu-item.js';
14
13
  /**
15
14
  * @summary Menus display a list of choices on a temporary surface.
16
15
  *
@@ -1 +1 @@
1
- {"version":3,"file":"sub-menu-item.js","sourceRoot":"","sources":["sub-menu-item.ts"],"names":[],"mappings":"AAAA;;;;GAIG;;AAEH,OAAO,EAAC,aAAa,EAAC,MAAM,mBAAmB,CAAC;AAEhD,OAAO,EAAC,MAAM,IAAI,0BAA0B,EAAC,MAAM,kDAAkD,CAAC;AACtG,OAAO,EAAC,MAAM,IAAI,cAAc,EAAC,MAAM,8CAA8C,CAAC;AAEtF,OAAO,EAAC,MAAM,IAAI,kBAAkB,EAAC,MAAM,4CAA4C,CAAC;AACxF,OAAO,EAAC,MAAM,EAAC,MAAM,wCAAwC,CAAC;AAC9D,OAAO,EAAC,WAAW,EAAC,MAAM,oCAAoC,CAAC;AAG/D,OAAO,EAAC,cAAc,EAAE,oBAAoB,EAAW,MAAM,iBAAiB,CAAC;AAQ/E;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2CG;AAEI,IAAM,aAAa,GAAnB,MAAM,aAAc,SAAQ,WAAW;;AAC5B,oBAAM,GAClB,CAAC,cAAc,EAAE,MAAM,EAAE,0BAA0B,EAAE,kBAAkB,CAAC,CAAC;AAFlE,aAAa;IADzB,aAAa,CAAC,kBAAkB,CAAC;GACrB,aAAa,CAGzB;SAHY,aAAa","sourcesContent":["/**\n * @license\n * Copyright 2023 Google LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport {customElement} from 'lit/decorators.js';\n\nimport {styles as listItemForcedColorsStyles} from '../list/lib/listitem/forced-colors-styles.css.js';\nimport {styles as listItemStyles} from '../list/lib/listitem/list-item-styles.css.js';\n\nimport {styles as forcedColorsStyles} from './lib/menuitem/forced-colors-styles.css.js';\nimport {styles} from './lib/menuitem/menu-item-styles.css.js';\nimport {SubMenuItem} from './lib/submenuitem/sub-menu-item.js';\n\nexport {ListItem} from '../list/lib/listitem/list-item.js';\nexport {CloseMenuEvent, DeactivateItemsEvent, MenuItem} from './lib/shared.js';\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'md-sub-menu-item': MdSubMenuItem;\n }\n}\n\n/**\n * @summary Menus display a list of choices on a temporary surface.\n *\n * @description\n * Menu items are the selectable choices within the menu. Menu items must\n * implement the `MenuItem` interface and also have the `md-menu-item`\n * attribute. Additionally menu items are list items so they must also have the\n * `md-list-item` attribute.\n *\n * Menu items can control a menu by selectively firing the `close-menu` and\n * `deselect-items` events.\n *\n * This menu item will open a sub-menu that is slotted in the `submenu` slot.\n * Additionally, the containing menu must either have `has-overflow` or `fixed`\n * set to `true` in order to display the containing menu properly.\n *\n * @example\n * ```html\n * <div style=\"position:relative;\">\n * <button\n * class=\"anchor\"\n * ${ref(anchorRef)}\n * @click=${() => this.menuRef.value.show()}>\n * Click to open menu\n * </button>\n * <!--\n * `has-overflow` is required when using a submenu which overflows the\n * menu's contents\n * -->\n * <md-menu has-overflow ${ref(menuRef)} ${(el) => el.anchor =\n * anchorRef.value}> <md-menu-item header=\"This is a header\"></md-menu-item>\n * <md-sub-menu-item header=\"this is a submenu item\">\n * <md-menu slot=\"submenu\">\n * <md-menu-item\n * header=\"This is an item inside a submenu\"></md-menu-item>\n * </md-menu>\n * </md-sub-menu>\n * </md-menu>\n * </div>\n * ```\n *\n * @final\n * @suppress {visibility}\n */\n@customElement('md-sub-menu-item')\nexport class MdSubMenuItem extends SubMenuItem {\n static override styles =\n [listItemStyles, styles, listItemForcedColorsStyles, forcedColorsStyles];\n}\n"]}
1
+ {"version":3,"file":"sub-menu-item.js","sourceRoot":"","sources":["sub-menu-item.ts"],"names":[],"mappings":"AAAA;;;;GAIG;;AAEH,OAAO,EAAC,aAAa,EAAC,MAAM,mBAAmB,CAAC;AAEhD,OAAO,EAAC,MAAM,IAAI,0BAA0B,EAAC,MAAM,uDAAuD,CAAC;AAC3G,OAAO,EAAC,MAAM,IAAI,cAAc,EAAC,MAAM,mDAAmD,CAAC;AAE3F,OAAO,EAAC,MAAM,IAAI,kBAAkB,EAAC,MAAM,iDAAiD,CAAC;AAC7F,OAAO,EAAC,MAAM,EAAC,MAAM,6CAA6C,CAAC;AACnE,OAAO,EAAC,WAAW,EAAC,MAAM,yCAAyC,CAAC;AAWpE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2CG;AAEI,IAAM,aAAa,GAAnB,MAAM,aAAc,SAAQ,WAAW;;AAC5B,oBAAM,GAClB,CAAC,cAAc,EAAE,MAAM,EAAE,0BAA0B,EAAE,kBAAkB,CAAC,CAAC;AAFlE,aAAa;IADzB,aAAa,CAAC,kBAAkB,CAAC;GACrB,aAAa,CAGzB;SAHY,aAAa","sourcesContent":["/**\n * @license\n * Copyright 2023 Google LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport {customElement} from 'lit/decorators.js';\n\nimport {styles as listItemForcedColorsStyles} from '../list/internal/listitem/forced-colors-styles.css.js';\nimport {styles as listItemStyles} from '../list/internal/listitem/list-item-styles.css.js';\n\nimport {styles as forcedColorsStyles} from './internal/menuitem/forced-colors-styles.css.js';\nimport {styles} from './internal/menuitem/menu-item-styles.css.js';\nimport {SubMenuItem} from './internal/submenuitem/sub-menu-item.js';\n\nexport {ListItem} from '../list/internal/listitem/list-item.js';\nexport {CloseMenuEvent, MenuItem} from './internal/shared.js';\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'md-sub-menu-item': MdSubMenuItem;\n }\n}\n\n/**\n * @summary Menus display a list of choices on a temporary surface.\n *\n * @description\n * Menu items are the selectable choices within the menu. Menu items must\n * implement the `MenuItem` interface and also have the `md-menu-item`\n * attribute. Additionally menu items are list items so they must also have the\n * `md-list-item` attribute.\n *\n * Menu items can control a menu by selectively firing the `close-menu` and\n * `deselect-items` events.\n *\n * This menu item will open a sub-menu that is slotted in the `submenu` slot.\n * Additionally, the containing menu must either have `has-overflow` or `fixed`\n * set to `true` in order to display the containing menu properly.\n *\n * @example\n * ```html\n * <div style=\"position:relative;\">\n * <button\n * class=\"anchor\"\n * ${ref(anchorRef)}\n * @click=${() => this.menuRef.value.show()}>\n * Click to open menu\n * </button>\n * <!--\n * `has-overflow` is required when using a submenu which overflows the\n * menu's contents\n * -->\n * <md-menu has-overflow ${ref(menuRef)} ${(el) => el.anchor =\n * anchorRef.value}> <md-menu-item header=\"This is a header\"></md-menu-item>\n * <md-sub-menu-item header=\"this is a submenu item\">\n * <md-menu slot=\"submenu\">\n * <md-menu-item\n * header=\"This is an item inside a submenu\"></md-menu-item>\n * </md-menu>\n * </md-sub-menu>\n * </md-menu>\n * </div>\n * ```\n *\n * @final\n * @suppress {visibility}\n */\n@customElement('md-sub-menu-item')\nexport class MdSubMenuItem extends SubMenuItem {\n static override styles =\n [listItemStyles, styles, listItemForcedColorsStyles, forcedColorsStyles];\n}\n"]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@material/web",
3
- "version": "1.0.0-pre.13",
3
+ "version": "1.0.0-pre.15",
4
4
  "publishConfig": {
5
5
  "access": "public"
6
6
  },
@@ -37,12 +37,10 @@
37
37
  "!catalog"
38
38
  ],
39
39
  "workspaces": [
40
- ".",
41
40
  "catalog"
42
41
  ],
43
42
  "dependencies": {
44
43
  "lit": "^2.7.4",
45
- "safevalues": "^0.4.3",
46
44
  "tslib": "^2.4.0"
47
45
  },
48
46
  "devDependencies": {
@@ -76,7 +74,8 @@
76
74
  "**/*.js",
77
75
  "**/*.js.map",
78
76
  "**/*.d.ts",
79
- "!*.js",
77
+ "!css-to-ts.js",
78
+ "!web-test-runner.config.js",
80
79
  "!types/",
81
80
  "!catalog"
82
81
  ],
@@ -0,0 +1,6 @@
1
+ //
2
+ // Copyright 2023 Google LLC
3
+ // SPDX-License-Identifier: Apache-2.0
4
+ //
5
+
6
+ @forward './internal/circular-progress' show theme;
@@ -0,0 +1,6 @@
1
+ //
2
+ // Copyright 2023 Google LLC
3
+ // SPDX-License-Identifier: Apache-2.0
4
+ //
5
+
6
+ @forward './internal/linear-progress' show theme;
@@ -0,0 +1,24 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2023 Google LLC
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ import { CircularProgress } from './internal/circular-progress.js';
7
+ declare global {
8
+ interface HTMLElementTagNameMap {
9
+ 'md-circular-progress': MdCircularProgress;
10
+ }
11
+ }
12
+ /**
13
+ * @summary Circular progress indicators display progress by animating along an
14
+ * invisible circular track in a clockwise direction. They can be applied
15
+ * directly to a surface, such as a button or card.
16
+ *
17
+ * @description
18
+ * Progress indicators inform users about the status of ongoing processes.
19
+ * - Determinate indicators display how long a process will take.
20
+ * - Indeterminate indicators express an unspecified amount of wait time.
21
+ */
22
+ export declare class MdCircularProgress extends CircularProgress {
23
+ static styles: import("lit").CSSResult[];
24
+ }
@@ -0,0 +1,27 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2023 Google LLC
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ import { __decorate } from "tslib";
7
+ import { customElement } from 'lit/decorators.js';
8
+ import { CircularProgress } from './internal/circular-progress.js';
9
+ import { styles } from './internal/circular-progress-styles.css.js';
10
+ /**
11
+ * @summary Circular progress indicators display progress by animating along an
12
+ * invisible circular track in a clockwise direction. They can be applied
13
+ * directly to a surface, such as a button or card.
14
+ *
15
+ * @description
16
+ * Progress indicators inform users about the status of ongoing processes.
17
+ * - Determinate indicators display how long a process will take.
18
+ * - Indeterminate indicators express an unspecified amount of wait time.
19
+ */
20
+ let MdCircularProgress = class MdCircularProgress extends CircularProgress {
21
+ };
22
+ MdCircularProgress.styles = [styles];
23
+ MdCircularProgress = __decorate([
24
+ customElement('md-circular-progress')
25
+ ], MdCircularProgress);
26
+ export { MdCircularProgress };
27
+ //# sourceMappingURL=circular-progress.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"circular-progress.js","sourceRoot":"","sources":["circular-progress.ts"],"names":[],"mappings":"AAAA;;;;GAIG;;AAEH,OAAO,EAAC,aAAa,EAAC,MAAM,mBAAmB,CAAC;AAEhD,OAAO,EAAC,gBAAgB,EAAC,MAAM,iCAAiC,CAAC;AACjE,OAAO,EAAC,MAAM,EAAC,MAAM,4CAA4C,CAAC;AAQlE;;;;;;;;;GASG;AAEI,IAAM,kBAAkB,GAAxB,MAAM,kBAAmB,SAAQ,gBAAgB;;AACtC,yBAAM,GAAG,CAAC,MAAM,CAAC,CAAC;AADvB,kBAAkB;IAD9B,aAAa,CAAC,sBAAsB,CAAC;GACzB,kBAAkB,CAE9B;SAFY,kBAAkB","sourcesContent":["/**\n * @license\n * Copyright 2023 Google LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport {customElement} from 'lit/decorators.js';\n\nimport {CircularProgress} from './internal/circular-progress.js';\nimport {styles} from './internal/circular-progress-styles.css.js';\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'md-circular-progress': MdCircularProgress;\n }\n}\n\n/**\n * @summary Circular progress indicators display progress by animating along an\n * invisible circular track in a clockwise direction. They can be applied\n * directly to a surface, such as a button or card.\n *\n * @description\n * Progress indicators inform users about the status of ongoing processes.\n * - Determinate indicators display how long a process will take.\n * - Indeterminate indicators express an unspecified amount of wait time.\n */\n@customElement('md-circular-progress')\nexport class MdCircularProgress extends CircularProgress {\n static override styles = [styles];\n}\n"]}
@@ -0,0 +1,20 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2023 Google LLC
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ import { Harness } from '../testing/harness.js';
7
+ import { CircularProgress } from './internal/circular-progress.js';
8
+ import { LinearProgress } from './internal/linear-progress.js';
9
+ /**
10
+ * Test harness for linear-progress.
11
+ */
12
+ export declare class LinearProgressHarness extends Harness<LinearProgress> {
13
+ getInteractiveElement(): Promise<HTMLElement>;
14
+ }
15
+ /**
16
+ * Test harness for circular-progress.
17
+ */
18
+ export declare class CircularProgressHarness extends Harness<CircularProgress> {
19
+ getInteractiveElement(): Promise<HTMLElement>;
20
+ }
@@ -0,0 +1,27 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2023 Google LLC
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ import { Harness } from '../testing/harness.js';
7
+ /**
8
+ * Test harness for linear-progress.
9
+ */
10
+ export class LinearProgressHarness extends Harness {
11
+ async getInteractiveElement() {
12
+ await this.element.updateComplete;
13
+ // Test access to protected property
14
+ // tslint:disable-next-line:no-dict-access-on-struct-type
15
+ return this.element['rootEl'];
16
+ }
17
+ }
18
+ /**
19
+ * Test harness for circular-progress.
20
+ */
21
+ export class CircularProgressHarness extends Harness {
22
+ async getInteractiveElement() {
23
+ await this.element.updateComplete;
24
+ return this.element.querySelector('.circularProgresss');
25
+ }
26
+ }
27
+ //# sourceMappingURL=harness.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"harness.js","sourceRoot":"","sources":["harness.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAC,OAAO,EAAC,MAAM,uBAAuB,CAAC;AAK9C;;GAEG;AACH,MAAM,OAAO,qBAAsB,SAAQ,OAAuB;IACvD,KAAK,CAAC,qBAAqB;QAClC,MAAM,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC;QAClC,oCAAoC;QACpC,yDAAyD;QACzD,OAAO,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;IAChC,CAAC;CACF;AAED;;GAEG;AACH,MAAM,OAAO,uBAAwB,SAAQ,OAAyB;IAC3D,KAAK,CAAC,qBAAqB;QAClC,MAAM,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC;QAClC,OAAO,IAAI,CAAC,OAAO,CAAC,aAAa,CAAc,oBAAoB,CAAE,CAAC;IACxE,CAAC;CACF","sourcesContent":["/**\n * @license\n * Copyright 2023 Google LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport {Harness} from '../testing/harness.js';\n\nimport {CircularProgress} from './internal/circular-progress.js';\nimport {LinearProgress} from './internal/linear-progress.js';\n\n/**\n * Test harness for linear-progress.\n */\nexport class LinearProgressHarness extends Harness<LinearProgress> {\n override async getInteractiveElement() {\n await this.element.updateComplete;\n // Test access to protected property\n // tslint:disable-next-line:no-dict-access-on-struct-type\n return this.element['rootEl'];\n }\n}\n\n/**\n * Test harness for circular-progress.\n */\nexport class CircularProgressHarness extends Harness<CircularProgress> {\n override async getInteractiveElement() {\n await this.element.updateComplete;\n return this.element.querySelector<HTMLElement>('.circularProgresss')!;\n }\n}\n"]}