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

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 (504) hide show
  1. package/README.md +8 -8
  2. package/aria/aria.d.ts +43 -0
  3. package/aria/aria.js +80 -0
  4. package/aria/aria.js.map +1 -0
  5. package/aria/delegate.d.ts +37 -0
  6. package/aria/delegate.js +53 -0
  7. package/aria/delegate.js.map +1 -0
  8. package/badge/badge.d.ts +0 -1
  9. package/badge/badge.js +0 -1
  10. package/badge/badge.js.map +1 -1
  11. package/badge/lib/badge.d.ts +5 -7
  12. package/badge/lib/badge.js +9 -12
  13. package/badge/lib/badge.js.map +1 -1
  14. package/button/lib/_elevated-button.scss +35 -6
  15. package/button/lib/_elevation.scss +13 -3
  16. package/button/lib/_filled-button.scss +35 -3
  17. package/button/lib/_outlined-button.scss +35 -6
  18. package/button/lib/_shared.scss +4 -2
  19. package/button/lib/_text-button.scss +35 -6
  20. package/button/lib/_tonal-button.scss +34 -7
  21. package/button/lib/button.d.ts +24 -38
  22. package/button/lib/button.js +40 -89
  23. package/button/lib/button.js.map +1 -1
  24. package/button/lib/elevated-button.d.ts +6 -4
  25. package/button/lib/elevated-button.js.map +1 -1
  26. package/button/lib/elevated-styles.css.js +1 -1
  27. package/button/lib/elevated-styles.css.js.map +1 -1
  28. package/button/lib/filled-button.d.ts +6 -4
  29. package/button/lib/filled-button.js.map +1 -1
  30. package/button/lib/filled-styles.css.js +1 -1
  31. package/button/lib/filled-styles.css.js.map +1 -1
  32. package/button/lib/outlined-button.d.ts +6 -4
  33. package/button/lib/outlined-button.js.map +1 -1
  34. package/button/lib/outlined-styles.css.js +1 -1
  35. package/button/lib/outlined-styles.css.js.map +1 -1
  36. package/button/lib/shared-elevation-styles.css.js +1 -1
  37. package/button/lib/shared-elevation-styles.css.js.map +1 -1
  38. package/button/lib/shared-styles.css.js +1 -1
  39. package/button/lib/shared-styles.css.js.map +1 -1
  40. package/button/lib/text-button.d.ts +5 -2
  41. package/button/lib/text-button.js.map +1 -1
  42. package/button/lib/text-styles.css.js +1 -1
  43. package/button/lib/text-styles.css.js.map +1 -1
  44. package/button/lib/tonal-button.d.ts +6 -4
  45. package/button/lib/tonal-button.js.map +1 -1
  46. package/button/lib/tonal-styles.css.js +1 -1
  47. package/button/lib/tonal-styles.css.js.map +1 -1
  48. package/checkbox/lib/_checkbox.scss +48 -47
  49. package/checkbox/lib/checkbox-styles.css.js +1 -1
  50. package/checkbox/lib/checkbox-styles.css.js.map +1 -1
  51. package/checkbox/lib/checkbox.d.ts +2 -7
  52. package/checkbox/lib/checkbox.js +35 -62
  53. package/checkbox/lib/checkbox.js.map +1 -1
  54. package/checkbox/lib/forced-colors-styles.css.js +1 -1
  55. package/checkbox/lib/forced-colors-styles.css.js.map +1 -1
  56. package/chips/_filter-chip.scss +6 -0
  57. package/chips/assist-chip.js +2 -1
  58. package/chips/assist-chip.js.map +1 -1
  59. package/chips/filter-chip.d.ts +20 -0
  60. package/chips/filter-chip.js +25 -0
  61. package/chips/filter-chip.js.map +1 -0
  62. package/chips/lib/_assist-chip.scss +37 -3
  63. package/chips/lib/_elevated.scss +60 -0
  64. package/chips/lib/_filter-chip.scss +175 -0
  65. package/chips/lib/_shared.scss +48 -84
  66. package/chips/lib/_suggestion-chip.scss +36 -5
  67. package/chips/lib/assist-chip.d.ts +12 -0
  68. package/chips/lib/assist-chip.js +64 -0
  69. package/chips/lib/assist-chip.js.map +1 -1
  70. package/chips/lib/assist-styles.css.js +1 -1
  71. package/chips/lib/assist-styles.css.js.map +1 -1
  72. package/chips/lib/chip.d.ts +24 -16
  73. package/chips/lib/chip.js +53 -74
  74. package/chips/lib/chip.js.map +1 -1
  75. package/chips/lib/elevated-styles.css.js +9 -0
  76. package/chips/lib/elevated-styles.css.js.map +1 -0
  77. package/{fab/lib/fab-extended-styles.scss → chips/lib/elevated-styles.scss} +3 -3
  78. package/chips/lib/filter-chip.d.ts +26 -0
  79. package/chips/lib/filter-chip.js +80 -0
  80. package/chips/lib/filter-chip.js.map +1 -0
  81. package/chips/lib/filter-styles.css.js +9 -0
  82. package/chips/lib/filter-styles.css.js.map +1 -0
  83. package/chips/lib/filter-styles.scss +10 -0
  84. package/chips/lib/shared-styles.css.js +1 -1
  85. package/chips/lib/shared-styles.css.js.map +1 -1
  86. package/chips/lib/suggestion-chip.d.ts +2 -2
  87. package/chips/lib/suggestion-chip.js +4 -2
  88. package/chips/lib/suggestion-chip.js.map +1 -1
  89. package/chips/lib/suggestion-styles.css.js +1 -1
  90. package/chips/lib/suggestion-styles.css.js.map +1 -1
  91. package/chips/suggestion-chip.js +2 -1
  92. package/chips/suggestion-chip.js.map +1 -1
  93. package/circularprogress/harness.d.ts +1 -0
  94. package/circularprogress/harness.js +4 -0
  95. package/circularprogress/harness.js.map +1 -1
  96. package/circularprogress/lib/_circular-progress.scss +13 -7
  97. package/circularprogress/lib/circular-progress-styles.css.js +1 -1
  98. package/circularprogress/lib/circular-progress-styles.css.js.map +1 -1
  99. package/circularprogress/lib/circular-progress.d.ts +5 -7
  100. package/circularprogress/lib/circular-progress.js +17 -21
  101. package/circularprogress/lib/circular-progress.js.map +1 -1
  102. package/dialog/lib/_dialog.scss +8 -9
  103. package/dialog/lib/_tokens.scss +0 -1
  104. package/dialog/lib/dialog-styles.css.js +1 -1
  105. package/dialog/lib/dialog-styles.css.js.map +1 -1
  106. package/dialog/lib/dialog.d.ts +10 -10
  107. package/dialog/lib/dialog.js +33 -56
  108. package/dialog/lib/dialog.js.map +1 -1
  109. package/divider/lib/divider.js +4 -7
  110. package/divider/lib/divider.js.map +1 -1
  111. package/elevation/lib/_elevation.scss +5 -7
  112. package/elevation/lib/elevation-styles.css.js +1 -1
  113. package/elevation/lib/elevation-styles.css.js.map +1 -1
  114. package/elevation/lib/elevation.d.ts +1 -1
  115. package/elevation/lib/elevation.js.map +1 -1
  116. package/fab/_fab.scss +1 -0
  117. package/fab/branded-fab.d.ts +56 -0
  118. package/fab/branded-fab.js +56 -0
  119. package/fab/branded-fab.js.map +1 -0
  120. package/fab/fab.d.ts +25 -5
  121. package/fab/fab.js +27 -10
  122. package/fab/fab.js.map +1 -1
  123. package/fab/harness.d.ts +1 -2
  124. package/fab/harness.js +1 -1
  125. package/fab/harness.js.map +1 -1
  126. package/fab/lib/_fab-branded.scss +81 -0
  127. package/fab/lib/_fab.scss +221 -19
  128. package/fab/lib/_shared.scss +161 -131
  129. package/fab/lib/fab-branded-styles.css.d.ts +1 -0
  130. package/fab/lib/fab-branded-styles.css.js +9 -0
  131. package/fab/lib/fab-branded-styles.css.js.map +1 -0
  132. package/fab/lib/fab-branded-styles.scss +10 -0
  133. package/fab/lib/fab-styles.css.js +1 -1
  134. package/fab/lib/fab-styles.css.js.map +1 -1
  135. package/fab/lib/fab.d.ts +18 -10
  136. package/fab/lib/fab.js +19 -12
  137. package/fab/lib/fab.js.map +1 -1
  138. package/fab/lib/forced-colors-styles.css.d.ts +1 -0
  139. package/fab/lib/forced-colors-styles.css.js +9 -0
  140. package/fab/lib/forced-colors-styles.css.js.map +1 -0
  141. package/fab/lib/forced-colors-styles.scss +26 -0
  142. package/fab/lib/shared-styles.css.d.ts +1 -0
  143. package/fab/lib/shared-styles.css.js +9 -0
  144. package/fab/lib/shared-styles.css.js.map +1 -0
  145. package/fab/lib/{fab-shared-styles.scss → shared-styles.scss} +1 -1
  146. package/fab/lib/shared.d.ts +49 -0
  147. package/fab/lib/shared.js +113 -0
  148. package/fab/lib/shared.js.map +1 -0
  149. package/field/lib/_filled-field.scss +47 -12
  150. package/field/lib/_outlined-field.scss +39 -12
  151. package/field/lib/field.js +14 -27
  152. package/field/lib/field.js.map +1 -1
  153. package/field/lib/filled-styles.css.js +1 -1
  154. package/field/lib/filled-styles.css.js.map +1 -1
  155. package/field/lib/outlined-styles.css.js +1 -1
  156. package/field/lib/outlined-styles.css.js.map +1 -1
  157. package/focus/focus-ring.d.ts +2 -1
  158. package/focus/focus-ring.js +2 -1
  159. package/focus/focus-ring.js.map +1 -1
  160. package/focus/lib/_focus-ring.scss +49 -34
  161. package/focus/lib/focus-ring-styles.css.js +1 -1
  162. package/focus/lib/focus-ring-styles.css.js.map +1 -1
  163. package/focus/lib/focus-ring.d.ts +59 -12
  164. package/focus/lib/focus-ring.js +118 -14
  165. package/focus/lib/focus-ring.js.map +1 -1
  166. package/icon/icon.d.ts +0 -1
  167. package/icon/icon.js +0 -1
  168. package/icon/icon.js.map +1 -1
  169. package/icon/lib/_icon.scss +2 -0
  170. package/icon/lib/icon-styles.css.js +1 -1
  171. package/icon/lib/icon-styles.css.js.map +1 -1
  172. package/icon/lib/icon.d.ts +5 -4
  173. package/icon/lib/icon.js +3 -2
  174. package/icon/lib/icon.js.map +1 -1
  175. package/iconbutton/filled-icon-button.d.ts +6 -2
  176. package/iconbutton/filled-icon-button.js.map +1 -1
  177. package/iconbutton/filled-tonal-icon-button.d.ts +6 -2
  178. package/iconbutton/filled-tonal-icon-button.js.map +1 -1
  179. package/iconbutton/harness.d.ts +1 -1
  180. package/iconbutton/harness.js +4 -1
  181. package/iconbutton/harness.js.map +1 -1
  182. package/iconbutton/lib/_filled-icon-button.scss +38 -13
  183. package/iconbutton/lib/_filled-tonal-icon-button.scss +38 -11
  184. package/iconbutton/lib/_outlined-icon-button.scss +38 -13
  185. package/iconbutton/lib/_shared.scss +4 -6
  186. package/iconbutton/lib/_standard-icon-button.scss +14 -14
  187. package/iconbutton/lib/filled-styles.css.js +1 -1
  188. package/iconbutton/lib/filled-styles.css.js.map +1 -1
  189. package/iconbutton/lib/filled-tonal-styles.css.js +1 -1
  190. package/iconbutton/lib/filled-tonal-styles.css.js.map +1 -1
  191. package/iconbutton/lib/icon-button.d.ts +17 -25
  192. package/iconbutton/lib/icon-button.js +37 -73
  193. package/iconbutton/lib/icon-button.js.map +1 -1
  194. package/iconbutton/lib/outlined-styles.css.js +1 -1
  195. package/iconbutton/lib/outlined-styles.css.js.map +1 -1
  196. package/iconbutton/lib/shared-styles.css.js +1 -1
  197. package/iconbutton/lib/shared-styles.css.js.map +1 -1
  198. package/iconbutton/lib/standard-styles.css.js +1 -1
  199. package/iconbutton/lib/standard-styles.css.js.map +1 -1
  200. package/iconbutton/outlined-icon-button.d.ts +5 -2
  201. package/iconbutton/outlined-icon-button.js.map +1 -1
  202. package/iconbutton/standard-icon-button.d.ts +5 -2
  203. package/iconbutton/standard-icon-button.js.map +1 -1
  204. package/linearprogress/_linear-progress.scss +6 -0
  205. package/linearprogress/harness.d.ts +13 -0
  206. package/linearprogress/harness.js +18 -0
  207. package/linearprogress/harness.js.map +1 -0
  208. package/linearprogress/lib/_linear-progress.scss +386 -0
  209. package/linearprogress/lib/linear-progress-styles.css.d.ts +1 -0
  210. package/linearprogress/lib/linear-progress-styles.css.js +9 -0
  211. package/linearprogress/lib/linear-progress-styles.css.js.map +1 -0
  212. package/linearprogress/lib/linear-progress-styles.scss +8 -0
  213. package/linearprogress/lib/linear-progress.d.ts +35 -0
  214. package/linearprogress/lib/linear-progress.js +127 -0
  215. package/linearprogress/lib/linear-progress.js.map +1 -0
  216. package/linearprogress/linear-progress.d.ts +23 -0
  217. package/linearprogress/linear-progress.js +26 -0
  218. package/linearprogress/linear-progress.js.map +1 -0
  219. package/list/lib/_list.scss +9 -50
  220. package/list/lib/list-styles.css.js +1 -1
  221. package/list/lib/list-styles.css.js.map +1 -1
  222. package/list/lib/list.d.ts +8 -15
  223. package/list/lib/list.js +20 -45
  224. package/list/lib/list.js.map +1 -1
  225. package/list/lib/listitem/_list-item.scss +17 -72
  226. package/list/lib/listitem/forced-colors-styles.css.js +1 -1
  227. package/list/lib/listitem/forced-colors-styles.css.js.map +1 -1
  228. package/list/lib/listitem/list-item-styles.css.js +1 -1
  229. package/list/lib/listitem/list-item-styles.css.js.map +1 -1
  230. package/list/lib/listitem/list-item.d.ts +29 -31
  231. package/list/lib/listitem/list-item.js +26 -80
  232. package/list/lib/listitem/list-item.js.map +1 -1
  233. package/list/lib/listitemlink/list-item-link.js +5 -9
  234. package/list/lib/listitemlink/list-item-link.js.map +1 -1
  235. package/menu/lib/_menu.scss +9 -29
  236. package/menu/lib/menu-styles.css.js +1 -1
  237. package/menu/lib/menu-styles.css.js.map +1 -1
  238. package/menu/lib/menu.d.ts +32 -41
  239. package/menu/lib/menu.js +51 -82
  240. package/menu/lib/menu.js.map +1 -1
  241. package/menu/lib/menuitem/_menu-item.scss +16 -33
  242. package/menu/lib/menuitem/menu-item-styles.css.js +1 -1
  243. package/menu/lib/menuitem/menu-item-styles.css.js.map +1 -1
  244. package/menu/lib/menuitem/menu-item.d.ts +1 -1
  245. package/menu/lib/menuitem/menu-item.js +4 -6
  246. package/menu/lib/menuitem/menu-item.js.map +1 -1
  247. package/menu/lib/menuitemlink/menu-item-link.d.ts +0 -2
  248. package/menu/lib/menuitemlink/menu-item-link.js +3 -6
  249. package/menu/lib/menuitemlink/menu-item-link.js.map +1 -1
  250. package/menu/lib/shared.d.ts +20 -2
  251. package/menu/lib/shared.js +18 -0
  252. package/menu/lib/shared.js.map +1 -1
  253. package/menu/lib/submenuitem/sub-menu-item.d.ts +16 -13
  254. package/menu/lib/submenuitem/sub-menu-item.js +27 -18
  255. package/menu/lib/submenuitem/sub-menu-item.js.map +1 -1
  256. package/menu/lib/typeaheadController.d.ts +9 -9
  257. package/menu/lib/typeaheadController.js.map +1 -1
  258. package/navigationbar/lib/_navigation-bar.scss +7 -1
  259. package/navigationbar/lib/navigation-bar-styles.css.js +1 -1
  260. package/navigationbar/lib/navigation-bar-styles.css.js.map +1 -1
  261. package/navigationbar/lib/navigation-bar.d.ts +6 -6
  262. package/navigationbar/lib/navigation-bar.js +17 -18
  263. package/navigationbar/lib/navigation-bar.js.map +1 -1
  264. package/navigationbar/navigation-bar.d.ts +0 -1
  265. package/navigationbar/navigation-bar.js +0 -1
  266. package/navigationbar/navigation-bar.js.map +1 -1
  267. package/navigationdrawer/lib/_navigation-drawer-modal.scss +0 -3
  268. package/navigationdrawer/lib/_navigation-drawer.scss +0 -3
  269. package/navigationdrawer/lib/_shared.scss +1 -4
  270. package/navigationdrawer/lib/navigation-drawer-modal-styles.css.js +1 -1
  271. package/navigationdrawer/lib/navigation-drawer-modal-styles.css.js.map +1 -1
  272. package/navigationdrawer/lib/navigation-drawer-modal.d.ts +7 -12
  273. package/navigationdrawer/lib/navigation-drawer-modal.js +19 -41
  274. package/navigationdrawer/lib/navigation-drawer-modal.js.map +1 -1
  275. package/navigationdrawer/lib/navigation-drawer-styles.css.js +1 -1
  276. package/navigationdrawer/lib/navigation-drawer-styles.css.js.map +1 -1
  277. package/navigationdrawer/lib/navigation-drawer.d.ts +6 -10
  278. package/navigationdrawer/lib/navigation-drawer.js +17 -38
  279. package/navigationdrawer/lib/navigation-drawer.js.map +1 -1
  280. package/navigationdrawer/lib/shared-styles.css.js +1 -1
  281. package/navigationdrawer/lib/shared-styles.css.js.map +1 -1
  282. package/navigationdrawer/navigation-drawer-modal.d.ts +0 -1
  283. package/navigationdrawer/navigation-drawer-modal.js +0 -1
  284. package/navigationdrawer/navigation-drawer-modal.js.map +1 -1
  285. package/navigationdrawer/navigation-drawer.d.ts +0 -1
  286. package/navigationdrawer/navigation-drawer.js +0 -1
  287. package/navigationdrawer/navigation-drawer.js.map +1 -1
  288. package/navigationtab/lib/_navigation-tab.scss +2 -2
  289. package/navigationtab/lib/navigation-tab-styles.css.js +1 -1
  290. package/navigationtab/lib/navigation-tab-styles.css.js.map +1 -1
  291. package/navigationtab/lib/navigation-tab.d.ts +16 -29
  292. package/navigationtab/lib/navigation-tab.js +49 -88
  293. package/navigationtab/lib/navigation-tab.js.map +1 -1
  294. package/navigationtab/lib/state.d.ts +1 -1
  295. package/navigationtab/lib/state.js.map +1 -1
  296. package/navigationtab/navigation-tab.d.ts +0 -1
  297. package/navigationtab/navigation-tab.js +0 -1
  298. package/navigationtab/navigation-tab.js.map +1 -1
  299. package/package.json +1 -1
  300. package/radio/lib/_radio.scss +1 -1
  301. package/radio/lib/radio-styles.css.js +1 -1
  302. package/radio/lib/radio-styles.css.js.map +1 -1
  303. package/radio/lib/radio.d.ts +2 -8
  304. package/radio/lib/radio.js +31 -58
  305. package/radio/lib/radio.js.map +1 -1
  306. package/ripple/lib/ripple.js +11 -13
  307. package/ripple/lib/ripple.js.map +1 -1
  308. package/segmentedbutton/lib/outlined-segmented-button.d.ts +16 -7
  309. package/segmentedbutton/lib/outlined-segmented-button.js +3 -3
  310. package/segmentedbutton/lib/outlined-segmented-button.js.map +1 -1
  311. package/segmentedbutton/lib/segmented-button.d.ts +28 -40
  312. package/segmentedbutton/lib/segmented-button.js +42 -96
  313. package/segmentedbutton/lib/segmented-button.js.map +1 -1
  314. package/segmentedbutton/outlined-segmented-button.d.ts +0 -1
  315. package/segmentedbutton/outlined-segmented-button.js +0 -1
  316. package/segmentedbutton/outlined-segmented-button.js.map +1 -1
  317. package/segmentedbuttonset/lib/_outlined-segmented-button-set.scss +32 -13
  318. package/segmentedbuttonset/lib/outlined-segmented-button-set.d.ts +6 -4
  319. package/segmentedbuttonset/lib/outlined-segmented-button-set.js +3 -2
  320. package/segmentedbuttonset/lib/outlined-segmented-button-set.js.map +1 -1
  321. package/segmentedbuttonset/lib/outlined-styles.css.js +1 -1
  322. package/segmentedbuttonset/lib/outlined-styles.css.js.map +1 -1
  323. package/segmentedbuttonset/lib/segmented-button-set.d.ts +3 -9
  324. package/segmentedbuttonset/lib/segmented-button-set.js +14 -20
  325. package/segmentedbuttonset/lib/segmented-button-set.js.map +1 -1
  326. package/segmentedbuttonset/outlined-segmented-button-set.d.ts +0 -1
  327. package/segmentedbuttonset/outlined-segmented-button-set.js +0 -1
  328. package/segmentedbuttonset/outlined-segmented-button-set.js.map +1 -1
  329. package/select/_filled-select.scss +6 -0
  330. package/select/_outlined-select.scss +6 -0
  331. package/select/filled-select.d.ts +41 -0
  332. package/select/filled-select.js +46 -0
  333. package/select/filled-select.js.map +1 -0
  334. package/select/harness.d.ts +24 -0
  335. package/select/harness.js +53 -0
  336. package/select/harness.js.map +1 -0
  337. package/select/lib/_filled-select.scss +222 -0
  338. package/select/lib/_outlined-select.scss +180 -0
  339. package/select/lib/_shared.scss +48 -0
  340. package/select/lib/filled-forced-colors-styles.css.d.ts +1 -0
  341. package/select/lib/filled-forced-colors-styles.css.js +9 -0
  342. package/select/lib/filled-forced-colors-styles.css.js.map +1 -0
  343. package/select/lib/filled-forced-colors-styles.scss +29 -0
  344. package/select/lib/filled-select-styles.css.d.ts +1 -0
  345. package/select/lib/filled-select-styles.css.js +9 -0
  346. package/select/lib/filled-select-styles.css.js.map +1 -0
  347. package/select/lib/filled-select-styles.scss +10 -0
  348. package/select/lib/filled-select.d.ts +10 -0
  349. package/select/lib/filled-select.js +16 -0
  350. package/select/lib/filled-select.js.map +1 -0
  351. package/select/lib/outlined-forced-colors-styles.css.d.ts +1 -0
  352. package/select/lib/outlined-forced-colors-styles.css.js +9 -0
  353. package/select/lib/outlined-forced-colors-styles.css.js.map +1 -0
  354. package/select/lib/outlined-forced-colors-styles.scss +29 -0
  355. package/select/lib/outlined-select-styles.css.d.ts +1 -0
  356. package/select/lib/outlined-select-styles.css.js +9 -0
  357. package/select/lib/outlined-select-styles.css.js.map +1 -0
  358. package/select/lib/outlined-select-styles.scss +10 -0
  359. package/select/lib/outlined-select.d.ts +10 -0
  360. package/select/lib/outlined-select.js +16 -0
  361. package/select/lib/outlined-select.js.map +1 -0
  362. package/select/lib/select.d.ts +216 -0
  363. package/select/lib/select.js +589 -0
  364. package/select/lib/select.js.map +1 -0
  365. package/select/lib/selectoption/harness.d.ts +11 -0
  366. package/select/lib/selectoption/harness.js +12 -0
  367. package/select/lib/selectoption/harness.js.map +1 -0
  368. package/select/lib/selectoption/select-option.d.ts +30 -0
  369. package/select/lib/selectoption/select-option.js +71 -0
  370. package/select/lib/selectoption/select-option.js.map +1 -0
  371. package/select/lib/shared-styles.css.d.ts +1 -0
  372. package/select/lib/shared-styles.css.js +9 -0
  373. package/select/lib/shared-styles.css.js.map +1 -0
  374. package/select/lib/shared-styles.scss +10 -0
  375. package/select/lib/shared.d.ts +52 -0
  376. package/select/lib/shared.js +41 -0
  377. package/select/lib/shared.js.map +1 -0
  378. package/select/outlined-select.d.ts +41 -0
  379. package/select/outlined-select.js +46 -0
  380. package/select/outlined-select.js.map +1 -0
  381. package/select/select-option.d.ts +44 -0
  382. package/select/select-option.js +51 -0
  383. package/select/select-option.js.map +1 -0
  384. package/slider/harness.d.ts +2 -1
  385. package/slider/harness.js +14 -9
  386. package/slider/harness.js.map +1 -1
  387. package/slider/lib/_slider.scss +149 -167
  388. package/slider/lib/forced-colors-styles.css.js +1 -1
  389. package/slider/lib/forced-colors-styles.css.js.map +1 -1
  390. package/slider/lib/forced-colors-styles.scss +2 -2
  391. package/slider/lib/slider-styles.css.js +1 -1
  392. package/slider/lib/slider-styles.css.js.map +1 -1
  393. package/slider/lib/slider.d.ts +23 -57
  394. package/slider/lib/slider.js +77 -167
  395. package/slider/lib/slider.js.map +1 -1
  396. package/switch/lib/_switch.scss +63 -18
  397. package/switch/lib/switch-styles.css.js +1 -1
  398. package/switch/lib/switch-styles.css.js.map +1 -1
  399. package/switch/lib/switch.d.ts +0 -7
  400. package/switch/lib/switch.js +32 -79
  401. package/switch/lib/switch.js.map +1 -1
  402. package/textfield/harness.d.ts +1 -1
  403. package/textfield/harness.js.map +1 -1
  404. package/textfield/lib/_filled-text-field.scss +70 -14
  405. package/textfield/lib/_outlined-text-field.scss +60 -35
  406. package/textfield/lib/filled-forced-colors-styles.css.js +1 -1
  407. package/textfield/lib/filled-forced-colors-styles.css.js.map +1 -1
  408. package/textfield/lib/filled-styles.css.js +1 -1
  409. package/textfield/lib/filled-styles.css.js.map +1 -1
  410. package/textfield/lib/outlined-forced-colors-styles.css.js +1 -1
  411. package/textfield/lib/outlined-forced-colors-styles.css.js.map +1 -1
  412. package/textfield/lib/outlined-styles.css.js +1 -1
  413. package/textfield/lib/outlined-styles.css.js.map +1 -1
  414. package/textfield/lib/text-field.d.ts +1 -11
  415. package/textfield/lib/text-field.js +45 -115
  416. package/textfield/lib/text-field.js.map +1 -1
  417. package/tokens/_index.scss +5 -18
  418. package/tokens/_md-comp-assist-chip.scss +25 -29
  419. package/tokens/_md-comp-checkbox.scss +78 -1
  420. package/tokens/_md-comp-circular-progress-indicator.scss +39 -13
  421. package/tokens/_md-comp-elevated-button.scss +0 -10
  422. package/tokens/_md-comp-elevation.scss +0 -4
  423. package/tokens/_md-comp-fab-branded.scss +84 -1
  424. package/tokens/_md-comp-fab.scss +249 -0
  425. package/tokens/_md-comp-filled-button.scss +0 -10
  426. package/{field/lib → tokens}/_md-comp-filled-field.scss +91 -9
  427. package/tokens/_md-comp-filled-icon-button.scss +46 -1
  428. package/tokens/_md-comp-filled-select.scss +124 -1
  429. package/tokens/_md-comp-filled-text-field.scss +93 -9
  430. package/tokens/_md-comp-filled-tonal-button.scss +0 -11
  431. package/tokens/_md-comp-filled-tonal-icon-button.scss +45 -3
  432. package/tokens/_md-comp-filter-chip.scss +103 -103
  433. package/tokens/_md-comp-focus-ring.scss +23 -24
  434. package/tokens/_md-comp-icon-button.scss +37 -1
  435. package/tokens/_md-comp-input-chip.scss +77 -95
  436. package/tokens/_md-comp-linear-progress-indicator.scss +31 -3
  437. package/tokens/_md-comp-list-item.scss +174 -0
  438. package/tokens/_md-comp-list.scss +81 -26
  439. package/tokens/_md-comp-menu-item.scss +50 -0
  440. package/tokens/_md-comp-menu.scss +29 -2
  441. package/tokens/_md-comp-outlined-button.scss +0 -10
  442. package/{field/lib → tokens}/_md-comp-outlined-field.scss +85 -9
  443. package/tokens/_md-comp-outlined-icon-button.scss +41 -1
  444. package/tokens/_md-comp-outlined-segmented-button.scss +57 -11
  445. package/tokens/_md-comp-outlined-select.scss +123 -1
  446. package/tokens/_md-comp-outlined-text-field.scss +85 -8
  447. package/tokens/_md-comp-slider.scss +13 -1
  448. package/tokens/_md-comp-suggestion-chip.scss +29 -30
  449. package/tokens/_md-comp-switch.scss +81 -1
  450. package/tokens/_md-comp-text-button.scss +0 -10
  451. package/tokens/_values.scss +2 -4
  452. package/types/aria.d.ts +59 -1
  453. package/actionelement/action-element.d.ts +0 -79
  454. package/actionelement/action-element.js +0 -97
  455. package/actionelement/action-element.js.map +0 -1
  456. package/button/lib/state.d.ts +0 -10
  457. package/button/lib/state.js +0 -7
  458. package/button/lib/state.js.map +0 -1
  459. package/controller/action-controller.d.ts +0 -147
  460. package/controller/action-controller.js +0 -286
  461. package/controller/action-controller.js.map +0 -1
  462. package/decorators/aria-property.d.ts +0 -32
  463. package/decorators/aria-property.js +0 -99
  464. package/decorators/aria-property.js.map +0 -1
  465. package/fab/_fab-extended.scss +0 -6
  466. package/fab/fab-extended.d.ts +0 -23
  467. package/fab/fab-extended.js +0 -29
  468. package/fab/fab-extended.js.map +0 -1
  469. package/fab/lib/_fab-extended.scss +0 -73
  470. package/fab/lib/fab-extended-styles.css.js +0 -9
  471. package/fab/lib/fab-extended-styles.css.js.map +0 -1
  472. package/fab/lib/fab-extended.d.ts +0 -19
  473. package/fab/lib/fab-extended.js +0 -28
  474. package/fab/lib/fab-extended.js.map +0 -1
  475. package/fab/lib/fab-shared-styles.css.js +0 -9
  476. package/fab/lib/fab-shared-styles.css.js.map +0 -1
  477. package/fab/lib/fab-shared.d.ts +0 -44
  478. package/fab/lib/fab-shared.js +0 -121
  479. package/fab/lib/fab-shared.js.map +0 -1
  480. package/focus/strong-focus.d.ts +0 -56
  481. package/focus/strong-focus.js +0 -96
  482. package/focus/strong-focus.js.map +0 -1
  483. package/sass/_shape.scss +0 -154
  484. package/slider/lib/_tokens.scss +0 -65
  485. package/tokens/_md-comp-extended-fab-branded.scss +0 -45
  486. package/tokens/_md-comp-extended-fab-primary.scss +0 -45
  487. package/tokens/_md-comp-extended-fab-secondary.scss +0 -48
  488. package/tokens/_md-comp-extended-fab-surface.scss +0 -45
  489. package/tokens/_md-comp-extended-fab-tertiary.scss +0 -48
  490. package/tokens/_md-comp-fab-branded-large.scss +0 -23
  491. package/tokens/_md-comp-fab-primary-large.scss +0 -23
  492. package/tokens/_md-comp-fab-primary-small.scss +0 -23
  493. package/tokens/_md-comp-fab-primary.scss +0 -23
  494. package/tokens/_md-comp-fab-secondary-large.scss +0 -23
  495. package/tokens/_md-comp-fab-secondary-small.scss +0 -23
  496. package/tokens/_md-comp-fab-secondary.scss +0 -23
  497. package/tokens/_md-comp-fab-surface-large.scss +0 -23
  498. package/tokens/_md-comp-fab-surface-small.scss +0 -23
  499. package/tokens/_md-comp-fab-surface.scss +0 -23
  500. package/tokens/_md-comp-fab-tertiary-large.scss +0 -23
  501. package/tokens/_md-comp-fab-tertiary-small.scss +0 -23
  502. package/tokens/_md-comp-fab-tertiary.scss +0 -23
  503. /package/{fab/lib/fab-extended-styles.css.d.ts → chips/lib/elevated-styles.css.d.ts} +0 -0
  504. /package/{fab/lib/fab-shared-styles.css.d.ts → chips/lib/filter-styles.css.d.ts} +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"outlined-segmented-button-set.js","sourceRoot":"","sources":["outlined-segmented-button-set.ts"],"names":[],"mappings":"AAAA;;;;GAIG;;AAEH,OAAO,EAAC,aAAa,EAAC,MAAM,mBAAmB,CAAC;AAEhD,OAAO,EAAC,0BAA0B,EAAC,MAAM,wCAAwC,CAAC;AAClF,OAAO,EAAC,MAAM,IAAI,cAAc,EAAC,MAAM,8BAA8B,CAAC;AACtE,OAAO,EAAC,MAAM,IAAI,YAAY,EAAC,MAAM,4BAA4B,CAAC;AAQlE;;;;;;GAMG;AAEI,IAAM,4BAA4B,GAAlC,MAAM,4BAA6B,SAAQ,0BAA0B;;AAC1D,mCAAM,GAAG,CAAC,YAAY,EAAE,cAAc,CAAC,CAAC;AAD7C,4BAA4B;IADxC,aAAa,CAAC,kCAAkC,CAAC;GACrC,4BAA4B,CAExC;SAFY,4BAA4B","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 {OutlinedSegmentedButtonSet} from './lib/outlined-segmented-button-set.js';\nimport {styles as outlinedStyles} from './lib/outlined-styles.css.js';\nimport {styles as sharedStyles} from './lib/shared-styles.css.js';\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'md-outlined-segmented-button-set': MdOutlinedSegmentedButtonSet;\n }\n}\n\n/**\n * MdOutlinedSegmentedButtonSet is the custom element for the Material\n * Design outlined segmented button set component.\n * @soyCompatible\n * @final\n * @suppress {visibility}\n */\n@customElement('md-outlined-segmented-button-set')\nexport class MdOutlinedSegmentedButtonSet extends OutlinedSegmentedButtonSet {\n static override styles = [sharedStyles, outlinedStyles];\n}\n"]}
1
+ {"version":3,"file":"outlined-segmented-button-set.js","sourceRoot":"","sources":["outlined-segmented-button-set.ts"],"names":[],"mappings":"AAAA;;;;GAIG;;AAEH,OAAO,EAAC,aAAa,EAAC,MAAM,mBAAmB,CAAC;AAEhD,OAAO,EAAC,0BAA0B,EAAC,MAAM,wCAAwC,CAAC;AAClF,OAAO,EAAC,MAAM,IAAI,cAAc,EAAC,MAAM,8BAA8B,CAAC;AACtE,OAAO,EAAC,MAAM,IAAI,YAAY,EAAC,MAAM,4BAA4B,CAAC;AAQlE;;;;;GAKG;AAEI,IAAM,4BAA4B,GAAlC,MAAM,4BAA6B,SAAQ,0BAA0B;;AAC1D,mCAAM,GAAG,CAAC,YAAY,EAAE,cAAc,CAAC,CAAC;AAD7C,4BAA4B;IADxC,aAAa,CAAC,kCAAkC,CAAC;GACrC,4BAA4B,CAExC;SAFY,4BAA4B","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 {OutlinedSegmentedButtonSet} from './lib/outlined-segmented-button-set.js';\nimport {styles as outlinedStyles} from './lib/outlined-styles.css.js';\nimport {styles as sharedStyles} from './lib/shared-styles.css.js';\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'md-outlined-segmented-button-set': MdOutlinedSegmentedButtonSet;\n }\n}\n\n/**\n * MdOutlinedSegmentedButtonSet is the custom element for the Material\n * Design outlined segmented button set component.\n * @final\n * @suppress {visibility}\n */\n@customElement('md-outlined-segmented-button-set')\nexport class MdOutlinedSegmentedButtonSet extends OutlinedSegmentedButtonSet {\n static override styles = [sharedStyles, outlinedStyles];\n}\n"]}
@@ -0,0 +1,6 @@
1
+ //
2
+ // Copyright 2023 Google LLC
3
+ // SPDX-License-Identifier: Apache-2.0
4
+ //
5
+
6
+ @forward './lib/filled-select' show theme;
@@ -0,0 +1,6 @@
1
+ //
2
+ // Copyright 2023 Google LLC
3
+ // SPDX-License-Identifier: Apache-2.0
4
+ //
5
+
6
+ @forward './lib/outlined-select' show theme;
@@ -0,0 +1,41 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2023 Google LLC
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ import { FilledSelect } from './lib/filled-select.js';
7
+ declare global {
8
+ interface HTMLElementTagNameMap {
9
+ 'md-filled-select': MdFilledSelect;
10
+ }
11
+ }
12
+ /**
13
+ * @summary
14
+ * Select menus display a list of choices on temporary surfaces and display the
15
+ * currently selected menu item above the menu.
16
+ *
17
+ * @description
18
+ * The select component allows users to choose a value from a fixed list of
19
+ * available options. Composed of an interactive anchor button and a menu, it is
20
+ * analogous to the native HTML `<select>` element. This is the "filled"
21
+ * variant.
22
+ *
23
+ * @example
24
+ * ```html
25
+ * <md-filled-select label="fruits">
26
+ * <!-- An empty selected option will give select an "un-filled" state -->
27
+ * <md-select-option selected></md-select-option>
28
+ * <md-select-option value="apple" headline="Apple"></md-select-option>
29
+ * <md-select-option value="banana" headline="Banana"></md-select-option>
30
+ * <md-select-option value="kiwi" headline="Kiwi"></md-select-option>
31
+ * <md-select-option value="orange" headline="Orange"></md-select-option>
32
+ * <md-select-option value="tomato" headline="Tomato"></md-select-option>
33
+ * </md-filled-select>
34
+ * ```
35
+ *
36
+ * @final
37
+ * @suppress {visibility}
38
+ */
39
+ export declare class MdFilledSelect extends FilledSelect {
40
+ static styles: import("lit").CSSResult[];
41
+ }
@@ -0,0 +1,46 @@
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 { styles as filledForcedColorsStyles } from './lib/filled-forced-colors-styles.css.js';
9
+ import { FilledSelect } from './lib/filled-select.js';
10
+ import { styles } from './lib/filled-select-styles.css.js';
11
+ import { styles as sharedStyles } from './lib/shared-styles.css.js';
12
+ /**
13
+ * @summary
14
+ * Select menus display a list of choices on temporary surfaces and display the
15
+ * currently selected menu item above the menu.
16
+ *
17
+ * @description
18
+ * The select component allows users to choose a value from a fixed list of
19
+ * available options. Composed of an interactive anchor button and a menu, it is
20
+ * analogous to the native HTML `<select>` element. This is the "filled"
21
+ * variant.
22
+ *
23
+ * @example
24
+ * ```html
25
+ * <md-filled-select label="fruits">
26
+ * <!-- An empty selected option will give select an "un-filled" state -->
27
+ * <md-select-option selected></md-select-option>
28
+ * <md-select-option value="apple" headline="Apple"></md-select-option>
29
+ * <md-select-option value="banana" headline="Banana"></md-select-option>
30
+ * <md-select-option value="kiwi" headline="Kiwi"></md-select-option>
31
+ * <md-select-option value="orange" headline="Orange"></md-select-option>
32
+ * <md-select-option value="tomato" headline="Tomato"></md-select-option>
33
+ * </md-filled-select>
34
+ * ```
35
+ *
36
+ * @final
37
+ * @suppress {visibility}
38
+ */
39
+ let MdFilledSelect = class MdFilledSelect extends FilledSelect {
40
+ };
41
+ MdFilledSelect.styles = [sharedStyles, styles, filledForcedColorsStyles];
42
+ MdFilledSelect = __decorate([
43
+ customElement('md-filled-select')
44
+ ], MdFilledSelect);
45
+ export { MdFilledSelect };
46
+ //# sourceMappingURL=filled-select.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"filled-select.js","sourceRoot":"","sources":["filled-select.ts"],"names":[],"mappings":"AAAA;;;;GAIG;;AAEH,OAAO,EAAC,aAAa,EAAC,MAAM,mBAAmB,CAAC;AAEhD,OAAO,EAAC,MAAM,IAAI,wBAAwB,EAAC,MAAM,0CAA0C,CAAC;AAC5F,OAAO,EAAC,YAAY,EAAC,MAAM,wBAAwB,CAAC;AACpD,OAAO,EAAC,MAAM,EAAC,MAAM,mCAAmC,CAAC;AACzD,OAAO,EAAC,MAAM,IAAI,YAAY,EAAC,MAAM,4BAA4B,CAAC;AAQlE;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AAEI,IAAM,cAAc,GAApB,MAAM,cAAe,SAAQ,YAAY;;AAC9B,qBAAM,GAAG,CAAC,YAAY,EAAE,MAAM,EAAE,wBAAwB,CAAC,CAAC;AAD/D,cAAc;IAD1B,aAAa,CAAC,kBAAkB,CAAC;GACrB,cAAc,CAE1B;SAFY,cAAc","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 filledForcedColorsStyles} from './lib/filled-forced-colors-styles.css.js';\nimport {FilledSelect} from './lib/filled-select.js';\nimport {styles} from './lib/filled-select-styles.css.js';\nimport {styles as sharedStyles} from './lib/shared-styles.css.js';\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'md-filled-select': MdFilledSelect;\n }\n}\n\n/**\n * @summary\n * Select menus display a list of choices on temporary surfaces and display the\n * currently selected menu item above the menu.\n *\n * @description\n * The select component allows users to choose a value from a fixed list of\n * available options. Composed of an interactive anchor button and a menu, it is\n * analogous to the native HTML `<select>` element. This is the \"filled\"\n * variant.\n *\n * @example\n * ```html\n * <md-filled-select label=\"fruits\">\n * <!-- An empty selected option will give select an \"un-filled\" state -->\n * <md-select-option selected></md-select-option>\n * <md-select-option value=\"apple\" headline=\"Apple\"></md-select-option>\n * <md-select-option value=\"banana\" headline=\"Banana\"></md-select-option>\n * <md-select-option value=\"kiwi\" headline=\"Kiwi\"></md-select-option>\n * <md-select-option value=\"orange\" headline=\"Orange\"></md-select-option>\n * <md-select-option value=\"tomato\" headline=\"Tomato\"></md-select-option>\n * </md-filled-select>\n * ```\n *\n * @final\n * @suppress {visibility}\n */\n@customElement('md-filled-select')\nexport class MdFilledSelect extends FilledSelect {\n static override styles = [sharedStyles, styles, filledForcedColorsStyles];\n}\n"]}
@@ -0,0 +1,24 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2023 Google LLC
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ import { Field } from '../field/lib/field.js';
7
+ import { Harness } from '../testing/harness.js';
8
+ import { Select } from './lib/select.js';
9
+ import { SelectOptionHarness } from './lib/selectoption/harness.js';
10
+ /**
11
+ * Test harness for menu.
12
+ */
13
+ export declare class SelectHarness extends Harness<Select> {
14
+ protected getField(): Field;
15
+ /**
16
+ * Shows the menu and returns the first list item element.
17
+ */
18
+ protected getInteractiveElement(): Promise<Field>;
19
+ startHover(): Promise<void>;
20
+ /** @return ListItem harnesses for the menu's items. */
21
+ getItems(): SelectOptionHarness[];
22
+ click(quick?: boolean): Promise<void>;
23
+ clickOption(index: number): Promise<void>;
24
+ }
@@ -0,0 +1,53 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2023 Google LLC
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ import { FieldHarness } from '../field/harness.js';
7
+ import { Harness } from '../testing/harness.js';
8
+ import { SelectOptionHarness } from './lib/selectoption/harness.js';
9
+ /**
10
+ * Test harness for menu.
11
+ */
12
+ export class SelectHarness extends Harness {
13
+ getField() {
14
+ return this.element.renderRoot.querySelector('.field');
15
+ }
16
+ /**
17
+ * Shows the menu and returns the first list item element.
18
+ */
19
+ async getInteractiveElement() {
20
+ await this.element.updateComplete;
21
+ return this.getField();
22
+ }
23
+ async startHover() {
24
+ const field = await this.getField();
25
+ const element = await (new SelectFieldHardness(field)).getInteractiveElement();
26
+ this.simulateStartHover(element);
27
+ }
28
+ /** @return ListItem harnesses for the menu's items. */
29
+ getItems() {
30
+ return this.element.options.map((item) => new SelectOptionHarness(item));
31
+ }
32
+ async click(quick = true) {
33
+ this.element.quick = quick;
34
+ await this.element.updateComplete;
35
+ const field = await this.getField();
36
+ field.click();
37
+ }
38
+ async clickOption(index) {
39
+ const menu = this.element.renderRoot.querySelector('md-menu');
40
+ if (!menu.open) {
41
+ console.warn('Internal menu is not open. Try calling SelectHarness.prototype.click()');
42
+ }
43
+ this.getItems()[index].element.click();
44
+ }
45
+ }
46
+ // Private class (not exported)
47
+ class SelectFieldHardness extends FieldHarness {
48
+ /* Expose so that we can call it from our internal code in SelectHarness. */
49
+ getInteractiveElement() {
50
+ return super.getInteractiveElement();
51
+ }
52
+ }
53
+ //# sourceMappingURL=harness.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"harness.js","sourceRoot":"","sources":["harness.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAC,YAAY,EAAC,MAAM,qBAAqB,CAAC;AAEjD,OAAO,EAAC,OAAO,EAAC,MAAM,uBAAuB,CAAC;AAG9C,OAAO,EAAC,mBAAmB,EAAC,MAAM,+BAA+B,CAAC;AAElE;;GAEG;AACH,MAAM,OAAO,aAAc,SAAQ,OAAe;IACtC,QAAQ;QAChB,OAAO,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,aAAa,CAAC,QAAQ,CAAU,CAAC;IAClE,CAAC;IACD;;OAEG;IACgB,KAAK,CAAC,qBAAqB;QAC5C,MAAM,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC;QAClC,OAAO,IAAI,CAAC,QAAQ,EAAE,CAAC;IACzB,CAAC;IAEQ,KAAK,CAAC,UAAU;QACvB,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,QAAQ,EAAE,CAAC;QACpC,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,mBAAmB,CAAC,KAAK,CAAC,CAAC,CAAC,qBAAqB,EAAE,CAAC;QAC/E,IAAI,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC;IACnC,CAAC;IAED,uDAAuD;IACvD,QAAQ;QACN,OAAO,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,mBAAmB,CAAC,IAAI,CAAC,CAAC,CAAC;IAC3E,CAAC;IAED,KAAK,CAAC,KAAK,CAAC,KAAK,GAAG,IAAI;QACtB,IAAI,CAAC,OAAO,CAAC,KAAK,GAAG,KAAK,CAAC;QAC3B,MAAM,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC;QAClC,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,QAAQ,EAAE,CAAC;QACpC,KAAK,CAAC,KAAK,EAAE,CAAC;IAChB,CAAC;IAED,KAAK,CAAC,WAAW,CAAC,KAAa;QAC7B,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,aAAa,CAAC,SAAS,CAAE,CAAC;QAC/D,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE;YACd,OAAO,CAAC,IAAI,CACR,wEAAwE,CAAC,CAAC;SAC/E;QACD,IAAI,CAAC,QAAQ,EAAE,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;IACzC,CAAC;CACF;AAED,+BAA+B;AAC/B,MAAM,mBAAoB,SAAQ,YAAY;IAC5C,4EAA4E;IACnE,qBAAqB;QAC5B,OAAO,KAAK,CAAC,qBAAqB,EAAE,CAAC;IACvC,CAAC;CACF","sourcesContent":["/**\n * @license\n * Copyright 2023 Google LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport {FieldHarness} from '../field/harness.js';\nimport {Field} from '../field/lib/field.js';\nimport {Harness} from '../testing/harness.js';\n\nimport {Select} from './lib/select.js';\nimport {SelectOptionHarness} from './lib/selectoption/harness.js';\n\n/**\n * Test harness for menu.\n */\nexport class SelectHarness extends Harness<Select> {\n protected getField() {\n return this.element.renderRoot.querySelector('.field') as Field;\n }\n /**\n * Shows the menu and returns the first list item element.\n */\n protected override async getInteractiveElement() {\n await this.element.updateComplete;\n return this.getField();\n }\n\n override async startHover() {\n const field = await this.getField();\n const element = await (new SelectFieldHardness(field)).getInteractiveElement();\n this.simulateStartHover(element);\n }\n\n /** @return ListItem harnesses for the menu's items. */\n getItems() {\n return this.element.options.map((item) => new SelectOptionHarness(item));\n }\n\n async click(quick = true) {\n this.element.quick = quick;\n await this.element.updateComplete;\n const field = await this.getField();\n field.click();\n }\n\n async clickOption(index: number) {\n const menu = this.element.renderRoot.querySelector('md-menu')!;\n if (!menu.open) {\n console.warn(\n 'Internal menu is not open. Try calling SelectHarness.prototype.click()');\n }\n this.getItems()[index].element.click();\n }\n}\n\n// Private class (not exported)\nclass SelectFieldHardness extends FieldHarness {\n /* Expose so that we can call it from our internal code in SelectHarness. */\n override getInteractiveElement() {\n return super.getInteractiveElement();\n }\n}\n"]}
@@ -0,0 +1,222 @@
1
+ //
2
+ // Copyright 2023 Google LLC
3
+ // SPDX-License-Identifier: Apache-2.0
4
+ //
5
+
6
+ // go/keep-sorted start
7
+ @use 'sass:list';
8
+ @use 'sass:map';
9
+ @use 'sass:meta';
10
+ // go/keep-sorted end
11
+ // go/keep-sorted start
12
+ @use '../../field/filled-field';
13
+ @use '../../sass/theme';
14
+ @use '../../tokens';
15
+ // go/keep-sorted end
16
+
17
+ @mixin theme($tokens) {
18
+ $supported-tokens: list.join(
19
+ tokens.$md-comp-filled-select-supported-tokens,
20
+ (
21
+ 'text-field-container-shape-start-start',
22
+ 'text-field-container-shape-start-end',
23
+ 'text-field-container-shape-end-end',
24
+ 'text-field-container-shape-end-start'
25
+ )
26
+ );
27
+
28
+ @each $token, $value in $tokens {
29
+ @if list.index($supported-tokens, $token) == null {
30
+ @error 'Token `#{$token}` is not a supported token.';
31
+ }
32
+
33
+ @if $token ==
34
+ 'text-field-container-shape' and
35
+ meta.type-of($value) ==
36
+ 'list'
37
+ {
38
+ @error 'Filled select `text-field-container-shape` may not be specified as a list. Use logical (`*-start-start`) tokens instead.';
39
+ }
40
+
41
+ @if $value {
42
+ --md-filled-select-#{$token}: #{$value};
43
+ }
44
+ }
45
+ }
46
+
47
+ @mixin styles() {
48
+ $tokens: tokens.md-comp-filled-select-values();
49
+
50
+ :host {
51
+ @each $token, $value in $tokens {
52
+ @if $token == 'text-field-container-shape' {
53
+ // Support logical shape properties. Filled text field has a default
54
+ // oblong shape, which is why the fallback value is unique per corner.
55
+ --_text-field-container-shape-start-start: var(
56
+ --md-filled-select-text-field-container-shape-start-start,
57
+ var(
58
+ --md-filled-select-text-field-container-shape,
59
+ #{list.nth($value, 1)}
60
+ )
61
+ );
62
+ --_text-field-container-shape-start-end: var(
63
+ --md-filled-select-text-field-container-shape-start-end,
64
+ var(
65
+ --md-filled-select-text-field-container-shape,
66
+ #{list.nth($value, 2)}
67
+ )
68
+ );
69
+ --_text-field-container-shape-end-end: var(
70
+ --md-filled-select-text-field-container-shape-end-end,
71
+ var(
72
+ --md-filled-select-text-field-container-shape,
73
+ #{list.nth($value, 3)}
74
+ )
75
+ );
76
+ --_text-field-container-shape-end-start: var(
77
+ --md-filled-select-text-field-container-shape-end-start,
78
+ var(
79
+ --md-filled-select-text-field-container-shape,
80
+ #{list.nth($value, 4)}
81
+ )
82
+ );
83
+ } @else {
84
+ --_#{$token}: var(--md-filled-select-#{$token}, #{$value});
85
+ }
86
+ }
87
+
88
+ @include filled-field.theme(
89
+ (
90
+ // go/keep-sorted start
91
+ 'active-indicator-color': var(--_text-field-active-indicator-color),
92
+ 'active-indicator-height': var(--_text-field-active-indicator-height),
93
+ 'container-color': var(--_text-field-container-color),
94
+ 'container-shape-end-end': var(--_text-field-container-shape-end-end),
95
+ 'container-shape-end-start':
96
+ var(--_text-field-container-shape-end-start),
97
+ 'container-shape-start-end':
98
+ var(--_text-field-container-shape-start-end),
99
+ 'container-shape-start-start':
100
+ var(--_text-field-container-shape-start-start),
101
+ 'content-color': var(--_text-field-input-text-color),
102
+ 'content-type': var(--_text-field-input-text-type),
103
+ 'disabled-active-indicator-color':
104
+ var(--_text-field-disabled-active-indicator-color),
105
+ 'disabled-active-indicator-height':
106
+ var(--_text-field-disabled-active-indicator-height),
107
+ 'disabled-active-indicator-opacity':
108
+ var(--_text-field-disabled-active-indicator-opacity),
109
+ 'disabled-container-color': var(--_text-field-disabled-container-color),
110
+ 'disabled-container-opacity':
111
+ var(--_text-field-disabled-container-opacity),
112
+ 'disabled-content-color': var(--_text-field-disabled-input-text-color),
113
+ 'disabled-content-opacity':
114
+ var(--_text-field-disabled-input-text-opacity),
115
+ 'disabled-label-text-color':
116
+ var(--_text-field-disabled-label-text-color),
117
+ 'disabled-label-text-opacity':
118
+ var(--_text-field-disabled-label-text-opacity),
119
+ 'disabled-leading-content-color':
120
+ var(--_text-field-disabled-leading-icon-color),
121
+ 'disabled-leading-content-opacity':
122
+ var(--_text-field-disabled-leading-icon-opacity),
123
+ 'disabled-supporting-text-color':
124
+ var(--_text-field-disabled-supporting-text-color),
125
+ 'disabled-supporting-text-opacity':
126
+ var(--_text-field-disabled-supporting-text-opacity),
127
+ 'disabled-trailing-content-color':
128
+ var(--_text-field-disabled-trailing-icon-color),
129
+ 'disabled-trailing-content-opacity':
130
+ var(--_text-field-disabled-trailing-icon-opacity),
131
+ 'error-active-indicator-color':
132
+ var(--_text-field-error-active-indicator-color),
133
+ 'error-content-color': var(--_text-field-error-input-text-color),
134
+ 'error-focus-active-indicator-color':
135
+ var(--_text-field-error-focus-active-indicator-color),
136
+ 'error-focus-content-color':
137
+ var(--_text-field-error-focus-input-text-color),
138
+ 'error-focus-label-text-color':
139
+ var(--_text-field-error-focus-label-text-color),
140
+ 'error-focus-leading-content-color':
141
+ var(--_text-field-error-focus-leading-icon-color),
142
+ 'error-focus-supporting-text-color':
143
+ var(--_text-field-error-focus-supporting-text-color),
144
+ 'error-focus-trailing-content-color':
145
+ var(--_text-field-error-focus-trailing-icon-color),
146
+ 'error-hover-active-indicator-color':
147
+ var(--_text-field-error-hover-active-indicator-color),
148
+ 'error-hover-content-color':
149
+ var(--_text-field-error-hover-input-text-color),
150
+ 'error-hover-label-text-color':
151
+ var(--_text-field-error-hover-label-text-color),
152
+ 'error-hover-leading-content-color':
153
+ var(--_text-field-error-hover-leading-icon-color),
154
+ 'error-hover-state-layer-color':
155
+ var(--_text-field-error-hover-state-layer-color),
156
+ 'error-hover-state-layer-opacity':
157
+ var(--_text-field-error-hover-state-layer-opacity),
158
+ 'error-hover-supporting-text-color':
159
+ var(--_text-field-error-hover-supporting-text-color),
160
+ 'error-hover-trailing-content-color':
161
+ var(--_text-field-error-hover-trailing-icon-color),
162
+ 'error-label-text-color': var(--_text-field-error-label-text-color),
163
+ 'error-leading-content-color':
164
+ var(--_text-field-error-leading-icon-color),
165
+ 'error-supporting-text-color':
166
+ var(--_text-field-error-supporting-text-color),
167
+ 'error-trailing-content-color':
168
+ var(--_text-field-error-trailing-icon-color),
169
+ 'focus-active-indicator-color':
170
+ var(--_text-field-focus-active-indicator-color),
171
+ 'focus-active-indicator-height':
172
+ var(--_text-field-focus-active-indicator-height),
173
+ 'focus-content-color': var(--_text-field-focus-input-text-color),
174
+ 'focus-label-text-color': var(--_text-field-focus-label-text-color),
175
+ 'focus-leading-content-color':
176
+ var(--_text-field-focus-leading-icon-color),
177
+ 'focus-supporting-text-color':
178
+ var(--_text-field-focus-supporting-text-color),
179
+ 'focus-trailing-content-color':
180
+ var(--_text-field-focus-trailing-icon-color),
181
+ 'hover-active-indicator-color':
182
+ var(--_text-field-hover-active-indicator-color),
183
+ 'hover-active-indicator-height':
184
+ var(--_text-field-hover-active-indicator-height),
185
+ 'hover-content-color': var(--_text-field-hover-input-text-color),
186
+ 'hover-label-text-color': var(--_text-field-hover-label-text-color),
187
+ 'hover-leading-content-color':
188
+ var(--_text-field-hover-leading-icon-color),
189
+ 'hover-state-layer-color': var(--_text-field-hover-state-layer-color),
190
+ 'hover-state-layer-opacity':
191
+ var(--_text-field-hover-state-layer-opacity),
192
+ 'hover-supporting-text-color':
193
+ var(--_text-field-hover-supporting-text-color),
194
+ 'hover-trailing-content-color':
195
+ var(--_text-field-hover-trailing-icon-color),
196
+ 'label-text-color': var(--_text-field-label-text-color),
197
+ 'label-text-populated-line-height':
198
+ var(--_text-field-label-text-populated-line-height),
199
+ 'label-text-populated-size':
200
+ var(--_text-field-label-text-populated-size),
201
+ 'label-text-type': var(--_text-field-label-text-type),
202
+ 'leading-content-color': var(--_text-field-leading-icon-color),
203
+ 'supporting-text-color': var(--_text-field-supporting-text-color),
204
+ 'supporting-text-type': var(--_text-field-supporting-text-type),
205
+ 'trailing-content-color': var(--_text-field-trailing-icon-color),
206
+ // go/keep-sorted end
207
+ )
208
+ );
209
+ }
210
+
211
+ [hasstart] .icon.leading {
212
+ font-size: var(--_text-field-leading-icon-size);
213
+ height: var(--_text-field-leading-icon-size);
214
+ width: var(--_text-field-leading-icon-size);
215
+ }
216
+
217
+ [hasend] .icon.trailing {
218
+ font-size: var(--_text-field-trailing-icon-size);
219
+ height: var(--_text-field-trailing-icon-size);
220
+ width: var(--_text-field-trailing-icon-size);
221
+ }
222
+ }
@@ -0,0 +1,180 @@
1
+ //
2
+ // Copyright 2023 Google LLC
3
+ // SPDX-License-Identifier: Apache-2.0
4
+ //
5
+
6
+ // go/keep-sorted start
7
+ @use 'sass:list';
8
+ @use 'sass:map';
9
+ @use 'sass:string';
10
+ // go/keep-sorted end
11
+ // go/keep-sorted start
12
+ @use '../../field/outlined-field';
13
+ @use '../../sass/theme';
14
+ @use '../../tokens';
15
+ // go/keep-sorted end
16
+
17
+ @mixin theme($tokens) {
18
+ $supported-tokens: list.join(
19
+ tokens.$md-comp-outlined-select-supported-tokens,
20
+ (
21
+ 'text-field-container-shape-start-start',
22
+ 'text-field-container-shape-start-end',
23
+ 'text-field-container-shape-end-end',
24
+ 'text-field-container-shape-end-start'
25
+ )
26
+ );
27
+
28
+ @each $token, $value in $tokens {
29
+ @if list.index($supported-tokens, $token) == null {
30
+ @error 'Token `#{$token}` is not a supported token.';
31
+ }
32
+
33
+ @if $value {
34
+ --md-outlined-select-#{$token}: #{$value};
35
+ }
36
+ }
37
+ }
38
+
39
+ @mixin styles() {
40
+ $tokens: tokens.md-comp-outlined-select-values();
41
+
42
+ :host {
43
+ @each $token, $value in $tokens {
44
+ --_#{$token}: var(--md-outlined-select-#{$token}, #{$value});
45
+ }
46
+
47
+ // Support logical shape properties
48
+ --_text-field-container-shape-start-start: var(
49
+ --md-outlined-select-text-field-container-shape-start-start,
50
+ var(--_text-field-container-shape)
51
+ );
52
+ --_text-field-container-shape-start-end: var(
53
+ --md-outlined-select-text-field-container-shape-start-end,
54
+ var(--_text-field-container-shape)
55
+ );
56
+ --_text-field-container-shape-end-end: var(
57
+ --md-outlined-select-text-field-container-shape-end-end,
58
+ var(--_text-field-container-shape)
59
+ );
60
+ --_text-field-container-shape-end-start: var(
61
+ --md-outlined-select-text-field-container-shape-end-start,
62
+ var(--_text-field-container-shape)
63
+ );
64
+
65
+ @include outlined-field.theme(
66
+ (
67
+ // go/keep-sorted start
68
+ 'container-shape-end-end': var(--_text-field-container-shape-end-end),
69
+ 'container-shape-end-start':
70
+ var(--_text-field-container-shape-end-start),
71
+ 'container-shape-start-end':
72
+ var(--_text-field-container-shape-start-end),
73
+ 'container-shape-start-start':
74
+ var(--_text-field-container-shape-start-start),
75
+ 'content-color': var(--_text-field-input-text-color),
76
+ 'content-type': var(--_text-field-input-text-type),
77
+ 'disabled-content-color': var(--_text-field-disabled-input-text-color),
78
+ 'disabled-content-opacity':
79
+ var(--_text-field-disabled-input-text-opacity),
80
+ 'disabled-label-text-color':
81
+ var(--_text-field-disabled-label-text-color),
82
+ 'disabled-label-text-opacity':
83
+ var(--_text-field-disabled-label-text-opacity),
84
+ 'disabled-leading-content-color':
85
+ var(--_text-field-disabled-leading-icon-color),
86
+ 'disabled-leading-content-opacity':
87
+ var(--_text-field-disabled-leading-icon-opacity),
88
+ 'disabled-outline-color': var(--_text-field-disabled-outline-color),
89
+ 'disabled-outline-opacity': var(--_text-field-disabled-outline-opacity),
90
+ 'disabled-outline-width': var(--_text-field-disabled-outline-width),
91
+ 'disabled-supporting-text-color':
92
+ var(--_text-field-disabled-supporting-text-color),
93
+ 'disabled-supporting-text-opacity':
94
+ var(--_text-field-disabled-supporting-text-opacity),
95
+ 'disabled-trailing-content-color':
96
+ var(--_text-field-disabled-trailing-icon-color),
97
+ 'disabled-trailing-content-opacity':
98
+ var(--_text-field-disabled-trailing-icon-opacity),
99
+ 'error-content-color': var(--_text-field-error-input-text-color),
100
+ 'error-focus-content-color':
101
+ var(--_text-field-error-focus-input-text-color),
102
+ 'error-focus-label-text-color':
103
+ var(--_text-field-error-focus-label-text-color),
104
+ 'error-focus-leading-content-color':
105
+ var(--_text-field-error-focus-leading-icon-color),
106
+ 'error-focus-outline-color':
107
+ var(--_text-field-error-focus-outline-color),
108
+ 'error-focus-supporting-text-color':
109
+ var(--_text-field-error-focus-supporting-text-color),
110
+ 'error-focus-trailing-content-color':
111
+ var(--_text-field-error-focus-trailing-icon-color),
112
+ 'error-hover-content-color':
113
+ var(--_text-field-error-hover-input-text-color),
114
+ 'error-hover-label-text-color':
115
+ var(--_text-field-error-hover-label-text-color),
116
+ 'error-hover-leading-content-color':
117
+ var(--_text-field-error-hover-leading-icon-color),
118
+ 'error-hover-outline-color':
119
+ var(--_text-field-error-hover-outline-color),
120
+ 'error-hover-supporting-text-color':
121
+ var(--_text-field-error-hover-supporting-text-color),
122
+ 'error-hover-trailing-content-color':
123
+ var(--_text-field-error-hover-trailing-icon-color),
124
+ 'error-label-text-color': var(--_text-field-error-label-text-color),
125
+ 'error-leading-content-color':
126
+ var(--_text-field-error-leading-icon-color),
127
+ 'error-outline-color': var(--_text-field-error-outline-color),
128
+ 'error-supporting-text-color':
129
+ var(--_text-field-error-supporting-text-color),
130
+ 'error-trailing-content-color':
131
+ var(--_text-field-error-trailing-icon-color),
132
+ 'focus-content-color': var(--_text-field-focus-input-text-color),
133
+ 'focus-label-text-color': var(--_text-field-focus-label-text-color),
134
+ 'focus-leading-content-color':
135
+ var(--_text-field-focus-leading-icon-color),
136
+ 'focus-outline-color': var(--_text-field-focus-outline-color),
137
+ 'focus-outline-width': var(--_text-field-focus-outline-width),
138
+ 'focus-supporting-text-color':
139
+ var(--_text-field-focus-supporting-text-color),
140
+ 'focus-trailing-content-color':
141
+ var(--_text-field-focus-trailing-icon-color),
142
+ 'hover-content-color': var(--_text-field-hover-input-text-color),
143
+ 'hover-label-text-color': var(--_text-field-hover-label-text-color),
144
+ 'hover-leading-content-color':
145
+ var(--_text-field-hover-leading-icon-color),
146
+ 'hover-outline-color': var(--_text-field-hover-outline-color),
147
+ 'hover-outline-width': var(--_text-field-hover-outline-width),
148
+ 'hover-supporting-text-color':
149
+ var(--_text-field-hover-supporting-text-color),
150
+ 'hover-trailing-content-color':
151
+ var(--_text-field-hover-trailing-icon-color),
152
+ 'label-text-color': var(--_text-field-label-text-color),
153
+ 'label-text-populated-line-height':
154
+ var(--_text-field-label-text-populated-line-height),
155
+ 'label-text-populated-size':
156
+ var(--_text-field-label-text-populated-size),
157
+ 'label-text-type': var(--_text-field-label-text-type),
158
+ 'leading-content-color': var(--_text-field-leading-icon-color),
159
+ 'outline-color': var(--_text-field-outline-color),
160
+ 'outline-width': var(--_text-field-outline-width),
161
+ 'supporting-text-color': var(--_text-field-supporting-text-color),
162
+ 'supporting-text-type': var(--_text-field-supporting-text-type),
163
+ 'trailing-content-color': var(--_text-field-trailing-icon-color),
164
+ // go/keep-sorted end
165
+ )
166
+ );
167
+ }
168
+
169
+ [hasstart] .icon.leading {
170
+ font-size: var(--_text-field-leading-icon-size);
171
+ height: var(--_text-field-leading-icon-size);
172
+ width: var(--_text-field-leading-icon-size);
173
+ }
174
+
175
+ [hasend] .icon.trailing {
176
+ font-size: var(--_text-field-trailing-icon-size);
177
+ height: var(--_text-field-trailing-icon-size);
178
+ width: var(--_text-field-trailing-icon-size);
179
+ }
180
+ }
@@ -0,0 +1,48 @@
1
+ //
2
+ // Copyright 2023 Google LLC
3
+ // SPDX-License-Identifier: Apache-2.0
4
+ //
5
+
6
+ // go/keep-sorted start
7
+ @use 'sass:list';
8
+ @use 'sass:map';
9
+ @use 'sass:string';
10
+ // go/keep-sorted end
11
+ // go/keep-sorted start
12
+ @use '../../elevation/lib/elevation';
13
+ @use '../../sass/theme';
14
+ @use '../../tokens';
15
+ // go/keep-sorted end
16
+
17
+ @mixin styles() {
18
+ :host {
19
+ color: unset;
20
+ min-width: 210px;
21
+ }
22
+
23
+ .field {
24
+ cursor: default;
25
+ outline: none;
26
+ }
27
+
28
+ .select {
29
+ position: relative;
30
+ }
31
+
32
+ .field,
33
+ .select {
34
+ min-width: inherit;
35
+ }
36
+
37
+ :host {
38
+ display: inline-flex;
39
+ }
40
+
41
+ .label {
42
+ width: 100%;
43
+ }
44
+
45
+ :host([disabled]) {
46
+ pointer-events: none;
47
+ }
48
+ }
@@ -0,0 +1 @@
1
+ export declare const styles: import("lit").CSSResult;