@material/web 1.0.0-pre.12 → 1.0.0-pre.14

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 (1130) hide show
  1. package/README.md +5 -5
  2. package/all.d.ts +97 -0
  3. package/all.js +106 -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/_outlined-button.scss +1 -1
  8. package/button/_text-button.scss +1 -1
  9. package/button/_tonal-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/harness.d.ts +1 -1
  17. package/button/harness.js +1 -1
  18. package/button/harness.js.map +1 -1
  19. package/button/internal/_elevation.scss +65 -0
  20. package/button/internal/_icon.scss +39 -0
  21. package/button/internal/_outlined-button.scss +104 -0
  22. package/button/internal/_shared.scss +154 -0
  23. package/button/internal/_touch-target.scss +15 -0
  24. package/button/internal/button.d.ts +71 -0
  25. package/button/internal/button.js +190 -0
  26. package/button/internal/button.js.map +1 -0
  27. package/button/internal/elevated-button.d.ts +13 -0
  28. package/button/internal/elevated-button.js +17 -0
  29. package/button/internal/elevated-button.js.map +1 -0
  30. package/button/internal/elevated-styles.css.js +9 -0
  31. package/button/internal/elevated-styles.css.js.map +1 -0
  32. package/button/internal/filled-button.d.ts +13 -0
  33. package/button/internal/filled-button.js +17 -0
  34. package/button/internal/filled-button.js.map +1 -0
  35. package/button/internal/filled-styles.css.js +9 -0
  36. package/button/internal/filled-styles.css.js.map +1 -0
  37. package/button/internal/outlined-button.d.ts +12 -0
  38. package/button/internal/outlined-button.js +16 -0
  39. package/button/internal/outlined-button.js.map +1 -0
  40. package/button/internal/outlined-styles.css.js +9 -0
  41. package/button/internal/outlined-styles.css.js.map +1 -0
  42. package/button/internal/shared-elevation-styles.css.js +9 -0
  43. package/button/internal/shared-elevation-styles.css.js.map +1 -0
  44. package/button/internal/shared-styles.css.js +9 -0
  45. package/button/internal/shared-styles.css.js.map +1 -0
  46. package/button/internal/text-button.d.ts +11 -0
  47. package/button/internal/text-button.js +12 -0
  48. package/button/internal/text-button.js.map +1 -0
  49. package/button/internal/text-styles.css.js +9 -0
  50. package/button/internal/text-styles.css.js.map +1 -0
  51. package/button/internal/tonal-button.d.ts +13 -0
  52. package/button/internal/tonal-button.js +17 -0
  53. package/button/internal/tonal-button.js.map +1 -0
  54. package/button/internal/tonal-styles.css.js +9 -0
  55. package/button/internal/tonal-styles.css.js.map +1 -0
  56. package/button/outlined-button.d.ts +1 -1
  57. package/button/outlined-button.js +3 -3
  58. package/button/outlined-button.js.map +1 -1
  59. package/button/text-button.d.ts +1 -1
  60. package/button/text-button.js +3 -3
  61. package/button/text-button.js.map +1 -1
  62. package/button/tonal-button.d.ts +1 -1
  63. package/button/tonal-button.js +4 -4
  64. package/button/tonal-button.js.map +1 -1
  65. package/checkbox/_checkbox.scss +1 -1
  66. package/checkbox/checkbox.d.ts +1 -1
  67. package/checkbox/checkbox.js +3 -4
  68. package/checkbox/checkbox.js.map +1 -1
  69. package/checkbox/harness.d.ts +1 -1
  70. package/checkbox/harness.js.map +1 -1
  71. package/checkbox/internal/_checkbox.scss +471 -0
  72. package/checkbox/internal/checkbox-styles.css.js +9 -0
  73. package/checkbox/internal/checkbox-styles.css.js.map +1 -0
  74. package/checkbox/internal/checkbox.d.ts +66 -0
  75. package/checkbox/internal/checkbox.js +190 -0
  76. package/checkbox/internal/checkbox.js.map +1 -0
  77. package/chips/_assist-chip.scss +1 -1
  78. package/chips/_filter-chip.scss +1 -1
  79. package/chips/_input-chip.scss +1 -1
  80. package/chips/_suggestion-chip.scss +1 -1
  81. package/chips/assist-chip.d.ts +1 -1
  82. package/chips/assist-chip.js +5 -5
  83. package/chips/assist-chip.js.map +1 -1
  84. package/chips/chip-set.d.ts +1 -1
  85. package/chips/chip-set.js +2 -2
  86. package/chips/chip-set.js.map +1 -1
  87. package/chips/filter-chip.d.ts +1 -1
  88. package/chips/filter-chip.js +7 -7
  89. package/chips/filter-chip.js.map +1 -1
  90. package/chips/harness.d.ts +1 -1
  91. package/chips/harness.js.map +1 -1
  92. package/chips/input-chip.d.ts +1 -1
  93. package/chips/input-chip.js +6 -6
  94. package/chips/input-chip.js.map +1 -1
  95. package/chips/internal/_shared.scss +192 -0
  96. package/chips/internal/_trailing-icon.scss +80 -0
  97. package/chips/internal/chip.d.ts +45 -0
  98. package/chips/internal/chip.js +95 -0
  99. package/chips/internal/chip.js.map +1 -0
  100. package/chips/internal/filter-chip.js +103 -0
  101. package/chips/internal/filter-chip.js.map +1 -0
  102. package/chips/internal/input-chip.js +109 -0
  103. package/chips/internal/input-chip.js.map +1 -0
  104. package/chips/internal/shared-styles.css.js +9 -0
  105. package/chips/internal/shared-styles.css.js.map +1 -0
  106. package/chips/internal/trailing-icon-styles.css.js +9 -0
  107. package/chips/internal/trailing-icon-styles.css.js.map +1 -0
  108. package/chips/internal/trailing-icons.d.ts +15 -0
  109. package/chips/internal/trailing-icons.js +38 -0
  110. package/chips/internal/trailing-icons.js.map +1 -0
  111. package/chips/suggestion-chip.d.ts +1 -1
  112. package/chips/suggestion-chip.js +5 -5
  113. package/chips/suggestion-chip.js.map +1 -1
  114. package/common.d.ts +61 -0
  115. package/common.js +70 -0
  116. package/common.js.map +1 -0
  117. package/dialog/_dialog.scss +1 -1
  118. package/dialog/dialog.d.ts +1 -1
  119. package/dialog/dialog.js +2 -2
  120. package/dialog/dialog.js.map +1 -1
  121. package/dialog/harness.d.ts +1 -1
  122. package/dialog/harness.js.map +1 -1
  123. package/dialog/internal/_dialog.scss +376 -0
  124. package/dialog/internal/_tokens.scss +66 -0
  125. package/dialog/internal/dialog-styles.css.js +9 -0
  126. package/dialog/internal/dialog-styles.css.js.map +1 -0
  127. package/dialog/internal/dialog.js +562 -0
  128. package/dialog/internal/dialog.js.map +1 -0
  129. package/divider/_divider.scss +1 -1
  130. package/divider/divider.d.ts +1 -1
  131. package/divider/divider.js +2 -2
  132. package/divider/divider.js.map +1 -1
  133. package/elevation/_elevation.scss +1 -1
  134. package/elevation/elevation.d.ts +1 -1
  135. package/elevation/elevation.js +2 -2
  136. package/elevation/elevation.js.map +1 -1
  137. package/fab/_fab.scss +2 -2
  138. package/fab/branded-fab.d.ts +3 -3
  139. package/fab/branded-fab.js +4 -4
  140. package/fab/branded-fab.js.map +1 -1
  141. package/fab/fab.d.ts +3 -3
  142. package/fab/fab.js +4 -4
  143. package/fab/fab.js.map +1 -1
  144. package/fab/harness.d.ts +1 -1
  145. package/fab/harness.js.map +1 -1
  146. package/fab/internal/_fab.scss +256 -0
  147. package/fab/internal/_shared.scss +227 -0
  148. package/fab/internal/fab-styles.css.js +9 -0
  149. package/fab/internal/fab-styles.css.js.map +1 -0
  150. package/fab/internal/fab.d.ts +26 -0
  151. package/fab/internal/fab.js.map +1 -0
  152. package/fab/internal/forced-colors-styles.css.js +9 -0
  153. package/fab/internal/forced-colors-styles.css.js.map +1 -0
  154. package/fab/internal/forced-colors-styles.scss +29 -0
  155. package/fab/internal/shared-styles.css.js +9 -0
  156. package/fab/internal/shared-styles.css.js.map +1 -0
  157. package/fab/internal/shared.d.ts +55 -0
  158. package/fab/internal/shared.js +120 -0
  159. package/fab/internal/shared.js.map +1 -0
  160. package/field/_filled-field.scss +1 -1
  161. package/field/_outlined-field.scss +1 -1
  162. package/field/filled-field.d.ts +1 -1
  163. package/field/filled-field.js +3 -3
  164. package/field/filled-field.js.map +1 -1
  165. package/field/harness.d.ts +1 -1
  166. package/field/harness.js.map +1 -1
  167. package/field/internal/_content.scss +191 -0
  168. package/field/internal/_filled-field.scss +203 -0
  169. package/field/internal/_label.scss +91 -0
  170. package/field/internal/_outlined-field.scss +323 -0
  171. package/field/internal/_shared.scss +70 -0
  172. package/field/internal/_supporting-text.scss +47 -0
  173. package/field/internal/field.d.ts +64 -0
  174. package/field/internal/field.js +318 -0
  175. package/field/internal/field.js.map +1 -0
  176. package/field/internal/filled-styles.css.js +9 -0
  177. package/field/internal/filled-styles.css.js.map +1 -0
  178. package/field/internal/outlined-field.d.ts +12 -0
  179. package/field/internal/outlined-field.js.map +1 -0
  180. package/field/internal/outlined-styles.css.js +9 -0
  181. package/field/internal/outlined-styles.css.js.map +1 -0
  182. package/field/internal/shared-styles.css.js +9 -0
  183. package/field/internal/shared-styles.css.js.map +1 -0
  184. package/field/outlined-field.d.ts +1 -1
  185. package/field/outlined-field.js +3 -3
  186. package/field/outlined-field.js.map +1 -1
  187. package/focus/_focus-ring.scss +1 -1
  188. package/focus/internal/_focus-ring.scss +135 -0
  189. package/focus/internal/focus-ring-styles.css.js +9 -0
  190. package/focus/internal/focus-ring-styles.css.js.map +1 -0
  191. package/focus/md-focus-ring.d.ts +20 -0
  192. package/focus/md-focus-ring.js +23 -0
  193. package/focus/md-focus-ring.js.map +1 -0
  194. package/icon/_icon.scss +1 -1
  195. package/icon/icon.d.ts +1 -1
  196. package/icon/icon.js +2 -2
  197. package/icon/icon.js.map +1 -1
  198. package/icon/internal/_icon.scss +60 -0
  199. package/icon/internal/icon-styles.css.js +9 -0
  200. package/icon/internal/icon-styles.css.js.map +1 -0
  201. package/icon/internal/icon.js +15 -0
  202. package/icon/internal/icon.js.map +1 -0
  203. package/iconbutton/_filled-icon-button.scss +1 -1
  204. package/iconbutton/_filled-tonal-icon-button.scss +1 -1
  205. package/iconbutton/_outlined-icon-button.scss +1 -1
  206. package/iconbutton/_standard-icon-button.scss +1 -1
  207. package/iconbutton/filled-icon-button.d.ts +1 -1
  208. package/iconbutton/filled-icon-button.js +3 -3
  209. package/iconbutton/filled-icon-button.js.map +1 -1
  210. package/iconbutton/filled-tonal-icon-button.d.ts +1 -1
  211. package/iconbutton/filled-tonal-icon-button.js +3 -3
  212. package/iconbutton/filled-tonal-icon-button.js.map +1 -1
  213. package/iconbutton/harness.d.ts +1 -1
  214. package/iconbutton/harness.js.map +1 -1
  215. package/iconbutton/internal/_shared.scss +106 -0
  216. package/iconbutton/internal/_standard-icon-button.scss +117 -0
  217. package/iconbutton/internal/icon-button.d.ts +59 -0
  218. package/iconbutton/internal/icon-button.js +166 -0
  219. package/iconbutton/internal/icon-button.js.map +1 -0
  220. package/iconbutton/internal/shared-styles.css.js +9 -0
  221. package/iconbutton/internal/shared-styles.css.js.map +1 -0
  222. package/iconbutton/internal/standard-styles.css.js +9 -0
  223. package/iconbutton/internal/standard-styles.css.js.map +1 -0
  224. package/iconbutton/outlined-icon-button.d.ts +1 -1
  225. package/iconbutton/outlined-icon-button.js +3 -3
  226. package/iconbutton/outlined-icon-button.js.map +1 -1
  227. package/iconbutton/standard-icon-button.d.ts +1 -1
  228. package/iconbutton/standard-icon-button.js +3 -3
  229. package/iconbutton/standard-icon-button.js.map +1 -1
  230. package/labs/badge/_badge.scss +1 -1
  231. package/labs/badge/badge.d.ts +1 -1
  232. package/labs/badge/badge.js +2 -2
  233. package/labs/badge/badge.js.map +1 -1
  234. package/labs/navigationbar/_navigation-bar.scss +1 -1
  235. package/labs/navigationbar/harness.d.ts +1 -1
  236. package/labs/navigationbar/harness.js.map +1 -1
  237. package/labs/navigationbar/internal/constants.d.ts +17 -0
  238. package/labs/navigationbar/internal/constants.js.map +1 -0
  239. package/labs/navigationbar/internal/navigation-bar.d.ts +27 -0
  240. package/labs/navigationbar/internal/navigation-bar.js.map +1 -0
  241. package/labs/navigationbar/internal/state.d.ts +23 -0
  242. package/labs/navigationbar/internal/state.js.map +1 -0
  243. package/labs/navigationbar/navigation-bar.d.ts +1 -1
  244. package/labs/navigationbar/navigation-bar.js +2 -2
  245. package/labs/navigationbar/navigation-bar.js.map +1 -1
  246. package/labs/navigationdrawer/_navigation-drawer-modal.scss +1 -1
  247. package/labs/navigationdrawer/_navigation-drawer.scss +1 -1
  248. package/labs/navigationdrawer/internal/navigation-drawer-modal.js +83 -0
  249. package/labs/navigationdrawer/internal/navigation-drawer-modal.js.map +1 -0
  250. package/labs/navigationdrawer/navigation-drawer-modal.d.ts +1 -1
  251. package/labs/navigationdrawer/navigation-drawer-modal.js +3 -3
  252. package/labs/navigationdrawer/navigation-drawer-modal.js.map +1 -1
  253. package/labs/navigationdrawer/navigation-drawer.d.ts +1 -1
  254. package/labs/navigationdrawer/navigation-drawer.js +3 -3
  255. package/labs/navigationdrawer/navigation-drawer.js.map +1 -1
  256. package/labs/navigationtab/_navigation-tab.scss +1 -1
  257. package/labs/navigationtab/harness.d.ts +1 -1
  258. package/labs/navigationtab/harness.js.map +1 -1
  259. package/labs/navigationtab/internal/_navigation-tab.scss +259 -0
  260. package/labs/navigationtab/internal/navigation-tab-styles.css.js +9 -0
  261. package/labs/navigationtab/internal/navigation-tab-styles.css.js.map +1 -0
  262. package/labs/navigationtab/internal/navigation-tab.d.ts +30 -0
  263. package/labs/navigationtab/internal/navigation-tab.js +119 -0
  264. package/labs/navigationtab/internal/navigation-tab.js.map +1 -0
  265. package/labs/navigationtab/navigation-tab.d.ts +1 -1
  266. package/labs/navigationtab/navigation-tab.js +2 -2
  267. package/labs/navigationtab/navigation-tab.js.map +1 -1
  268. package/labs/segmentedbutton/internal/_shared.scss +355 -0
  269. package/labs/segmentedbutton/internal/outlined-styles.css.js +9 -0
  270. package/labs/segmentedbutton/internal/outlined-styles.css.js.map +1 -0
  271. package/labs/segmentedbutton/internal/segmented-button.d.ts +44 -0
  272. package/labs/segmentedbutton/internal/segmented-button.js +159 -0
  273. package/labs/segmentedbutton/internal/segmented-button.js.map +1 -0
  274. package/labs/segmentedbutton/internal/shared-styles.css.js +9 -0
  275. package/labs/segmentedbutton/internal/shared-styles.css.js.map +1 -0
  276. package/labs/segmentedbutton/outlined-segmented-button.d.ts +1 -1
  277. package/labs/segmentedbutton/outlined-segmented-button.js +3 -3
  278. package/labs/segmentedbutton/outlined-segmented-button.js.map +1 -1
  279. package/labs/segmentedbuttonset/internal/outlined-styles.css.js +9 -0
  280. package/labs/segmentedbuttonset/internal/outlined-styles.css.js.map +1 -0
  281. package/labs/segmentedbuttonset/internal/segmented-button-set.d.ts +26 -0
  282. package/labs/segmentedbuttonset/internal/segmented-button-set.js +110 -0
  283. package/labs/segmentedbuttonset/internal/segmented-button-set.js.map +1 -0
  284. package/labs/segmentedbuttonset/outlined-segmented-button-set.d.ts +1 -1
  285. package/labs/segmentedbuttonset/outlined-segmented-button-set.js +3 -3
  286. package/labs/segmentedbuttonset/outlined-segmented-button-set.js.map +1 -1
  287. package/list/_list-item.scss +1 -1
  288. package/list/_list.scss +1 -1
  289. package/list/harness.d.ts +27 -3
  290. package/list/harness.js +27 -2
  291. package/list/harness.js.map +1 -1
  292. package/list/internal/list.js +305 -0
  293. package/list/internal/list.js.map +1 -0
  294. package/list/internal/listitem/_list-item.scss +428 -0
  295. package/list/internal/listitem/harness.d.ts +33 -0
  296. package/list/internal/listitem/harness.js +31 -0
  297. package/list/internal/listitem/harness.js.map +1 -0
  298. package/list/internal/listitem/list-item-styles.css.js +9 -0
  299. package/list/internal/listitem/list-item-styles.css.js.map +1 -0
  300. package/list/internal/listitem/list-item.d.ts +133 -0
  301. package/list/internal/listitem/list-item.js +230 -0
  302. package/list/internal/listitem/list-item.js.map +1 -0
  303. package/list/internal/listitemlink/list-item-link-only.d.ts +23 -0
  304. package/list/internal/listitemlink/list-item-link-only.js +36 -0
  305. package/list/internal/listitemlink/list-item-link-only.js.map +1 -0
  306. package/list/list-item-link.d.ts +1 -1
  307. package/list/list-item-link.js +3 -3
  308. package/list/list-item-link.js.map +1 -1
  309. package/list/list-item.d.ts +2 -2
  310. package/list/list-item.js +3 -3
  311. package/list/list-item.js.map +1 -1
  312. package/list/list.d.ts +1 -1
  313. package/list/list.js +2 -2
  314. package/list/list.js.map +1 -1
  315. package/menu/_menu-item.scss +1 -1
  316. package/menu/_menu.scss +1 -1
  317. package/menu/harness.d.ts +3 -3
  318. package/menu/harness.js +2 -2
  319. package/menu/harness.js.map +1 -1
  320. package/menu/internal/_menu.scss +105 -0
  321. package/menu/internal/menu-styles.css.js +9 -0
  322. package/menu/internal/menu-styles.css.js.map +1 -0
  323. package/menu/internal/menu.d.ts +225 -0
  324. package/menu/internal/menu.js +673 -0
  325. package/menu/internal/menu.js.map +1 -0
  326. package/menu/internal/menuitem/harness.d.ts +11 -0
  327. package/menu/internal/menuitem/harness.js +12 -0
  328. package/menu/internal/menuitem/harness.js.map +1 -0
  329. package/menu/internal/menuitem/menu-item.d.ts +28 -0
  330. package/menu/internal/menuitem/menu-item.js +51 -0
  331. package/menu/internal/menuitem/menu-item.js.map +1 -0
  332. package/menu/internal/menuitemlink/menu-item-link.d.ts +23 -0
  333. package/menu/internal/menuitemlink/menu-item-link.js +49 -0
  334. package/menu/internal/menuitemlink/menu-item-link.js.map +1 -0
  335. package/menu/internal/shared.d.ts +178 -0
  336. package/menu/internal/shared.js.map +1 -0
  337. package/menu/internal/submenuitem/harness.d.ts +11 -0
  338. package/menu/internal/submenuitem/harness.js +12 -0
  339. package/menu/internal/submenuitem/harness.js.map +1 -0
  340. package/menu/internal/submenuitem/sub-menu-item.d.ts +99 -0
  341. package/menu/internal/submenuitem/sub-menu-item.js +293 -0
  342. package/menu/internal/submenuitem/sub-menu-item.js.map +1 -0
  343. package/menu/internal/typeaheadController.d.ts +157 -0
  344. package/menu/internal/typeaheadController.js +252 -0
  345. package/menu/internal/typeaheadController.js.map +1 -0
  346. package/menu/menu-item-link.d.ts +3 -3
  347. package/menu/menu-item-link.js +6 -6
  348. package/menu/menu-item-link.js.map +1 -1
  349. package/menu/menu-item.d.ts +3 -3
  350. package/menu/menu-item.js +6 -6
  351. package/menu/menu-item.js.map +1 -1
  352. package/menu/menu.d.ts +4 -4
  353. package/menu/menu.js +4 -4
  354. package/menu/menu.js.map +1 -1
  355. package/menu/sub-menu-item.d.ts +3 -3
  356. package/menu/sub-menu-item.js +6 -6
  357. package/menu/sub-menu-item.js.map +1 -1
  358. package/package.json +4 -2
  359. package/progress/_circular-progress.scss +6 -0
  360. package/progress/_linear-progress.scss +6 -0
  361. package/progress/circular-progress.d.ts +24 -0
  362. package/progress/circular-progress.js +27 -0
  363. package/progress/circular-progress.js.map +1 -0
  364. package/progress/harness.d.ts +20 -0
  365. package/progress/harness.js +27 -0
  366. package/progress/harness.js.map +1 -0
  367. package/progress/internal/_circular-progress.scss +285 -0
  368. package/progress/internal/_linear-progress.scss +379 -0
  369. package/progress/internal/circular-progress-styles.css.js +9 -0
  370. package/progress/internal/circular-progress-styles.css.js.map +1 -0
  371. package/progress/internal/circular-progress.d.ts +14 -0
  372. package/progress/internal/circular-progress.js +49 -0
  373. package/progress/internal/circular-progress.js.map +1 -0
  374. package/progress/internal/linear-progress-styles.css.js +9 -0
  375. package/progress/internal/linear-progress-styles.css.js.map +1 -0
  376. package/progress/internal/linear-progress.d.ts +27 -0
  377. package/progress/internal/linear-progress.js +91 -0
  378. package/progress/internal/linear-progress.js.map +1 -0
  379. package/progress/internal/progress.d.ts +34 -0
  380. package/progress/internal/progress.js +72 -0
  381. package/progress/internal/progress.js.map +1 -0
  382. package/progress/linear-progress.d.ts +23 -0
  383. package/progress/linear-progress.js +26 -0
  384. package/progress/linear-progress.js.map +1 -0
  385. package/radio/_radio.scss +1 -1
  386. package/radio/harness.d.ts +1 -1
  387. package/radio/harness.js.map +1 -1
  388. package/radio/internal/_radio.scss +171 -0
  389. package/radio/internal/radio-styles.css.js +9 -0
  390. package/radio/internal/radio-styles.css.js.map +1 -0
  391. package/radio/internal/radio.d.ts +58 -0
  392. package/radio/internal/radio.js +158 -0
  393. package/radio/internal/radio.js.map +1 -0
  394. package/radio/internal/single-selection-controller.js +196 -0
  395. package/radio/internal/single-selection-controller.js.map +1 -0
  396. package/radio/radio.d.ts +1 -1
  397. package/radio/radio.js +3 -3
  398. package/radio/radio.js.map +1 -1
  399. package/ripple/_ripple.scss +1 -1
  400. package/ripple/internal/ripple.js +397 -0
  401. package/ripple/internal/ripple.js.map +1 -0
  402. package/ripple/ripple.d.ts +1 -1
  403. package/ripple/ripple.js +2 -2
  404. package/ripple/ripple.js.map +1 -1
  405. package/select/_filled-select.scss +1 -1
  406. package/select/_outlined-select.scss +1 -1
  407. package/select/filled-select.d.ts +1 -1
  408. package/select/filled-select.js +4 -4
  409. package/select/filled-select.js.map +1 -1
  410. package/select/harness.d.ts +3 -3
  411. package/select/harness.js +1 -1
  412. package/select/harness.js.map +1 -1
  413. package/select/internal/_shared.scss +52 -0
  414. package/select/internal/select.d.ts +206 -0
  415. package/select/internal/select.js +555 -0
  416. package/select/internal/select.js.map +1 -0
  417. package/select/internal/selectoption/harness.d.ts +11 -0
  418. package/select/internal/selectoption/harness.js +12 -0
  419. package/select/internal/selectoption/harness.js.map +1 -0
  420. package/select/internal/selectoption/select-option.d.ts +29 -0
  421. package/select/internal/selectoption/select-option.js +71 -0
  422. package/select/internal/selectoption/select-option.js.map +1 -0
  423. package/select/internal/shared-styles.css.js +9 -0
  424. package/select/internal/shared-styles.css.js.map +1 -0
  425. package/select/internal/shared.d.ts +52 -0
  426. package/select/internal/shared.js.map +1 -0
  427. package/select/outlined-select.d.ts +1 -1
  428. package/select/outlined-select.js +4 -4
  429. package/select/outlined-select.js.map +1 -1
  430. package/select/select-option.d.ts +1 -1
  431. package/select/select-option.js +5 -5
  432. package/select/select-option.js.map +1 -1
  433. package/slider/_slider.scss +1 -1
  434. package/slider/harness.d.ts +1 -1
  435. package/slider/harness.js.map +1 -1
  436. package/slider/internal/_slider.scss +478 -0
  437. package/slider/internal/slider-styles.css.js +9 -0
  438. package/slider/internal/slider-styles.css.js.map +1 -0
  439. package/slider/internal/slider.d.ts +173 -0
  440. package/slider/internal/slider.js +623 -0
  441. package/slider/internal/slider.js.map +1 -0
  442. package/slider/slider.d.ts +1 -1
  443. package/slider/slider.js +3 -3
  444. package/slider/slider.js.map +1 -1
  445. package/switch/_switch.scss +1 -1
  446. package/switch/harness.d.ts +1 -1
  447. package/switch/harness.js.map +1 -1
  448. package/switch/internal/_switch.scss +154 -0
  449. package/switch/internal/switch-styles.css.js +9 -0
  450. package/switch/internal/switch-styles.css.js.map +1 -0
  451. package/switch/internal/switch.d.ts +79 -0
  452. package/switch/internal/switch.js +210 -0
  453. package/switch/internal/switch.js.map +1 -0
  454. package/switch/switch.d.ts +1 -1
  455. package/switch/switch.js +3 -3
  456. package/switch/switch.js.map +1 -1
  457. package/tabs/_tab.scss +1 -1
  458. package/tabs/harness.d.ts +2 -2
  459. package/tabs/harness.js.map +1 -1
  460. package/tabs/internal/_tab.scss +295 -0
  461. package/tabs/internal/tab-styles.css.js +9 -0
  462. package/tabs/internal/tab-styles.css.js.map +1 -0
  463. package/tabs/internal/tab.d.ts +68 -0
  464. package/tabs/internal/tab.js +164 -0
  465. package/tabs/internal/tab.js.map +1 -0
  466. package/tabs/internal/tabs.d.ts +91 -0
  467. package/tabs/internal/tabs.js +312 -0
  468. package/tabs/internal/tabs.js.map +1 -0
  469. package/tabs/tab.d.ts +2 -2
  470. package/tabs/tab.js +2 -2
  471. package/tabs/tab.js.map +1 -1
  472. package/tabs/tabs.d.ts +2 -2
  473. package/tabs/tabs.js +2 -2
  474. package/tabs/tabs.js.map +1 -1
  475. package/textfield/_filled-text-field.scss +1 -1
  476. package/textfield/_outlined-text-field.scss +1 -1
  477. package/textfield/filled-text-field.d.ts +2 -2
  478. package/textfield/filled-text-field.js +4 -4
  479. package/textfield/filled-text-field.js.map +1 -1
  480. package/textfield/harness.d.ts +5 -5
  481. package/textfield/harness.js +1 -1
  482. package/textfield/harness.js.map +1 -1
  483. package/textfield/internal/_filled-text-field.scss +194 -0
  484. package/textfield/internal/_input.scss +72 -0
  485. package/textfield/internal/_outlined-text-field.scss +167 -0
  486. package/textfield/internal/_shared.scss +47 -0
  487. package/textfield/internal/filled-styles.css.js +9 -0
  488. package/textfield/internal/filled-styles.css.js.map +1 -0
  489. package/textfield/internal/outlined-styles.css.js +9 -0
  490. package/textfield/internal/outlined-styles.css.js.map +1 -0
  491. package/textfield/internal/shared-styles.css.js +9 -0
  492. package/textfield/internal/shared-styles.css.js.map +1 -0
  493. package/textfield/internal/text-field.d.ts +326 -0
  494. package/textfield/internal/text-field.js +705 -0
  495. package/textfield/internal/text-field.js.map +1 -0
  496. package/textfield/outlined-text-field.d.ts +2 -2
  497. package/textfield/outlined-text-field.js +4 -4
  498. package/textfield/outlined-text-field.js.map +1 -1
  499. package/tokens/_md-comp-checkbox.scss +46 -22
  500. package/tokens/_md-comp-dialog.scss +48 -6
  501. package/tokens/_md-comp-elevated-button.scss +17 -7
  502. package/tokens/_md-comp-elevation.scss +11 -2
  503. package/tokens/_md-comp-filled-button.scss +17 -7
  504. package/tokens/_md-comp-filled-field.scss +18 -11
  505. package/tokens/_md-comp-filled-text-field.scss +2 -1
  506. package/tokens/_md-comp-filled-tonal-button.scss +17 -7
  507. package/tokens/_md-comp-list-item.scss +6 -1
  508. package/tokens/_md-comp-menu-item.scss +1 -0
  509. package/tokens/_md-comp-outlined-button.scss +19 -9
  510. package/tokens/_md-comp-outlined-field.scss +14 -8
  511. package/tokens/_md-comp-outlined-segmented-button.scss +19 -13
  512. package/tokens/_md-comp-outlined-text-field.scss +2 -1
  513. package/tokens/_md-comp-slider.scss +48 -2
  514. package/tokens/_md-comp-text-button.scss +17 -7
  515. package/tokens/_values.scss +1 -1
  516. package/button/lib/_elevation.scss +0 -68
  517. package/button/lib/_icon.scss +0 -42
  518. package/button/lib/_outlined-button.scss +0 -103
  519. package/button/lib/_shared.scss +0 -162
  520. package/button/lib/_touch-target.scss +0 -18
  521. package/button/lib/button.d.ts +0 -71
  522. package/button/lib/button.js +0 -190
  523. package/button/lib/button.js.map +0 -1
  524. package/button/lib/elevated-button.d.ts +0 -18
  525. package/button/lib/elevated-button.js +0 -23
  526. package/button/lib/elevated-button.js.map +0 -1
  527. package/button/lib/elevated-styles.css.js +0 -9
  528. package/button/lib/elevated-styles.css.js.map +0 -1
  529. package/button/lib/filled-button.d.ts +0 -18
  530. package/button/lib/filled-button.js +0 -23
  531. package/button/lib/filled-button.js.map +0 -1
  532. package/button/lib/filled-styles.css.js +0 -9
  533. package/button/lib/filled-styles.css.js.map +0 -1
  534. package/button/lib/outlined-button.d.ts +0 -17
  535. package/button/lib/outlined-button.js +0 -22
  536. package/button/lib/outlined-button.js.map +0 -1
  537. package/button/lib/outlined-styles.css.js +0 -9
  538. package/button/lib/outlined-styles.css.js.map +0 -1
  539. package/button/lib/shared-elevation-styles.css.js +0 -9
  540. package/button/lib/shared-elevation-styles.css.js.map +0 -1
  541. package/button/lib/shared-styles.css.js +0 -9
  542. package/button/lib/shared-styles.css.js.map +0 -1
  543. package/button/lib/text-button.d.ts +0 -16
  544. package/button/lib/text-button.js +0 -18
  545. package/button/lib/text-button.js.map +0 -1
  546. package/button/lib/text-styles.css.js +0 -9
  547. package/button/lib/text-styles.css.js.map +0 -1
  548. package/button/lib/tonal-button.d.ts +0 -18
  549. package/button/lib/tonal-button.js +0 -23
  550. package/button/lib/tonal-button.js.map +0 -1
  551. package/button/lib/tonal-styles.css.js +0 -9
  552. package/button/lib/tonal-styles.css.js.map +0 -1
  553. package/checkbox/lib/_checkbox.scss +0 -451
  554. package/checkbox/lib/checkbox-styles.css.js +0 -9
  555. package/checkbox/lib/checkbox-styles.css.js.map +0 -1
  556. package/checkbox/lib/checkbox.d.ts +0 -66
  557. package/checkbox/lib/checkbox.js +0 -187
  558. package/checkbox/lib/checkbox.js.map +0 -1
  559. package/checkbox/lib/forced-colors-styles.css.js +0 -9
  560. package/checkbox/lib/forced-colors-styles.css.js.map +0 -1
  561. package/checkbox/lib/forced-colors-styles.scss +0 -49
  562. package/chips/lib/_shared.scss +0 -190
  563. package/chips/lib/_trailing-icon.scss +0 -78
  564. package/chips/lib/chip.d.ts +0 -45
  565. package/chips/lib/chip.js +0 -95
  566. package/chips/lib/chip.js.map +0 -1
  567. package/chips/lib/filter-chip.js +0 -103
  568. package/chips/lib/filter-chip.js.map +0 -1
  569. package/chips/lib/input-chip.js +0 -109
  570. package/chips/lib/input-chip.js.map +0 -1
  571. package/chips/lib/shared-styles.css.js +0 -9
  572. package/chips/lib/shared-styles.css.js.map +0 -1
  573. package/chips/lib/trailing-icon-styles.css.js +0 -9
  574. package/chips/lib/trailing-icon-styles.css.js.map +0 -1
  575. package/chips/lib/trailing-icons.d.ts +0 -15
  576. package/chips/lib/trailing-icons.js +0 -38
  577. package/chips/lib/trailing-icons.js.map +0 -1
  578. package/circularprogress/_circular-progress.scss +0 -6
  579. package/circularprogress/circular-progress.d.ts +0 -24
  580. package/circularprogress/circular-progress.js +0 -27
  581. package/circularprogress/circular-progress.js.map +0 -1
  582. package/circularprogress/harness.d.ts +0 -13
  583. package/circularprogress/harness.js +0 -16
  584. package/circularprogress/harness.js.map +0 -1
  585. package/circularprogress/lib/_circular-progress.scss +0 -288
  586. package/circularprogress/lib/circular-progress-styles.css.js +0 -9
  587. package/circularprogress/lib/circular-progress-styles.css.js.map +0 -1
  588. package/circularprogress/lib/circular-progress.d.ts +0 -27
  589. package/circularprogress/lib/circular-progress.js +0 -94
  590. package/circularprogress/lib/circular-progress.js.map +0 -1
  591. package/dialog/lib/_dialog.scss +0 -376
  592. package/dialog/lib/_tokens.scss +0 -85
  593. package/dialog/lib/dialog-styles.css.js +0 -9
  594. package/dialog/lib/dialog-styles.css.js.map +0 -1
  595. package/dialog/lib/dialog.js +0 -561
  596. package/dialog/lib/dialog.js.map +0 -1
  597. package/fab/lib/_fab.scss +0 -253
  598. package/fab/lib/_shared.scss +0 -222
  599. package/fab/lib/fab-styles.css.js +0 -9
  600. package/fab/lib/fab-styles.css.js.map +0 -1
  601. package/fab/lib/fab.d.ts +0 -26
  602. package/fab/lib/fab.js.map +0 -1
  603. package/fab/lib/forced-colors-styles.css.js +0 -9
  604. package/fab/lib/forced-colors-styles.css.js.map +0 -1
  605. package/fab/lib/forced-colors-styles.scss +0 -26
  606. package/fab/lib/shared-styles.css.js +0 -9
  607. package/fab/lib/shared-styles.css.js.map +0 -1
  608. package/fab/lib/shared.d.ts +0 -55
  609. package/fab/lib/shared.js +0 -120
  610. package/fab/lib/shared.js.map +0 -1
  611. package/field/lib/_content.scss +0 -175
  612. package/field/lib/_filled-field.scss +0 -189
  613. package/field/lib/_label.scss +0 -74
  614. package/field/lib/_outlined-field.scss +0 -313
  615. package/field/lib/_shared.scss +0 -65
  616. package/field/lib/_supporting-text.scss +0 -56
  617. package/field/lib/field.d.ts +0 -41
  618. package/field/lib/field.js +0 -236
  619. package/field/lib/field.js.map +0 -1
  620. package/field/lib/filled-styles.css.js +0 -9
  621. package/field/lib/filled-styles.css.js.map +0 -1
  622. package/field/lib/outlined-field.d.ts +0 -13
  623. package/field/lib/outlined-field.js.map +0 -1
  624. package/field/lib/outlined-styles.css.js +0 -9
  625. package/field/lib/outlined-styles.css.js.map +0 -1
  626. package/field/lib/shared-styles.css.js +0 -9
  627. package/field/lib/shared-styles.css.js.map +0 -1
  628. package/focus/focus-ring.d.ts +0 -20
  629. package/focus/focus-ring.js +0 -23
  630. package/focus/focus-ring.js.map +0 -1
  631. package/focus/lib/_focus-ring.scss +0 -129
  632. package/focus/lib/focus-ring-styles.css.js +0 -9
  633. package/focus/lib/focus-ring-styles.css.js.map +0 -1
  634. package/icon/lib/_icon.scss +0 -61
  635. package/icon/lib/icon-styles.css.js +0 -9
  636. package/icon/lib/icon-styles.css.js.map +0 -1
  637. package/icon/lib/icon.js +0 -15
  638. package/icon/lib/icon.js.map +0 -1
  639. package/iconbutton/lib/_shared.scss +0 -104
  640. package/iconbutton/lib/_standard-icon-button.scss +0 -112
  641. package/iconbutton/lib/icon-button.d.ts +0 -59
  642. package/iconbutton/lib/icon-button.js +0 -166
  643. package/iconbutton/lib/icon-button.js.map +0 -1
  644. package/iconbutton/lib/shared-styles.css.js +0 -9
  645. package/iconbutton/lib/shared-styles.css.js.map +0 -1
  646. package/iconbutton/lib/standard-styles.css.js +0 -9
  647. package/iconbutton/lib/standard-styles.css.js.map +0 -1
  648. package/labs/navigationbar/lib/constants.d.ts +0 -17
  649. package/labs/navigationbar/lib/constants.js.map +0 -1
  650. package/labs/navigationbar/lib/navigation-bar.d.ts +0 -27
  651. package/labs/navigationbar/lib/navigation-bar.js.map +0 -1
  652. package/labs/navigationbar/lib/state.d.ts +0 -23
  653. package/labs/navigationbar/lib/state.js.map +0 -1
  654. package/labs/navigationdrawer/lib/navigation-drawer-modal.js +0 -83
  655. package/labs/navigationdrawer/lib/navigation-drawer-modal.js.map +0 -1
  656. package/labs/navigationtab/lib/_navigation-tab.scss +0 -257
  657. package/labs/navigationtab/lib/navigation-tab-styles.css.js +0 -9
  658. package/labs/navigationtab/lib/navigation-tab-styles.css.js.map +0 -1
  659. package/labs/navigationtab/lib/navigation-tab.d.ts +0 -30
  660. package/labs/navigationtab/lib/navigation-tab.js +0 -119
  661. package/labs/navigationtab/lib/navigation-tab.js.map +0 -1
  662. package/labs/segmentedbutton/lib/_shared.scss +0 -355
  663. package/labs/segmentedbutton/lib/outlined-styles.css.js +0 -9
  664. package/labs/segmentedbutton/lib/outlined-styles.css.js.map +0 -1
  665. package/labs/segmentedbutton/lib/segmented-button.d.ts +0 -44
  666. package/labs/segmentedbutton/lib/segmented-button.js +0 -159
  667. package/labs/segmentedbutton/lib/segmented-button.js.map +0 -1
  668. package/labs/segmentedbutton/lib/shared-styles.css.js +0 -9
  669. package/labs/segmentedbutton/lib/shared-styles.css.js.map +0 -1
  670. package/labs/segmentedbuttonset/lib/outlined-styles.css.js +0 -9
  671. package/labs/segmentedbuttonset/lib/outlined-styles.css.js.map +0 -1
  672. package/labs/segmentedbuttonset/lib/segmented-button-set.d.ts +0 -26
  673. package/labs/segmentedbuttonset/lib/segmented-button-set.js +0 -110
  674. package/labs/segmentedbuttonset/lib/segmented-button-set.js.map +0 -1
  675. package/linearprogress/_linear-progress.scss +0 -6
  676. package/linearprogress/harness.d.ts +0 -13
  677. package/linearprogress/harness.js +0 -18
  678. package/linearprogress/harness.js.map +0 -1
  679. package/linearprogress/lib/_linear-progress.scss +0 -386
  680. package/linearprogress/lib/linear-progress-styles.css.js +0 -9
  681. package/linearprogress/lib/linear-progress-styles.css.js.map +0 -1
  682. package/linearprogress/lib/linear-progress.d.ts +0 -35
  683. package/linearprogress/lib/linear-progress.js +0 -127
  684. package/linearprogress/lib/linear-progress.js.map +0 -1
  685. package/linearprogress/linear-progress.d.ts +0 -23
  686. package/linearprogress/linear-progress.js +0 -26
  687. package/linearprogress/linear-progress.js.map +0 -1
  688. package/list/lib/list.js +0 -305
  689. package/list/lib/list.js.map +0 -1
  690. package/list/lib/listitem/_list-item.scss +0 -424
  691. package/list/lib/listitem/harness.d.ts +0 -13
  692. package/list/lib/listitem/harness.js +0 -17
  693. package/list/lib/listitem/harness.js.map +0 -1
  694. package/list/lib/listitem/list-item-styles.css.js +0 -9
  695. package/list/lib/listitem/list-item-styles.css.js.map +0 -1
  696. package/list/lib/listitem/list-item.d.ts +0 -133
  697. package/list/lib/listitem/list-item.js +0 -230
  698. package/list/lib/listitem/list-item.js.map +0 -1
  699. package/list/lib/listitemlink/list-item-link-only.d.ts +0 -22
  700. package/list/lib/listitemlink/list-item-link-only.js +0 -33
  701. package/list/lib/listitemlink/list-item-link-only.js.map +0 -1
  702. package/menu/lib/_menu.scss +0 -103
  703. package/menu/lib/menu-styles.css.js +0 -9
  704. package/menu/lib/menu-styles.css.js.map +0 -1
  705. package/menu/lib/menu.d.ts +0 -225
  706. package/menu/lib/menu.js +0 -673
  707. package/menu/lib/menu.js.map +0 -1
  708. package/menu/lib/menuitem/harness.d.ts +0 -11
  709. package/menu/lib/menuitem/harness.js +0 -12
  710. package/menu/lib/menuitem/harness.js.map +0 -1
  711. package/menu/lib/menuitem/menu-item.d.ts +0 -28
  712. package/menu/lib/menuitem/menu-item.js +0 -51
  713. package/menu/lib/menuitem/menu-item.js.map +0 -1
  714. package/menu/lib/menuitemlink/menu-item-link.d.ts +0 -23
  715. package/menu/lib/menuitemlink/menu-item-link.js +0 -49
  716. package/menu/lib/menuitemlink/menu-item-link.js.map +0 -1
  717. package/menu/lib/shared.d.ts +0 -178
  718. package/menu/lib/shared.js.map +0 -1
  719. package/menu/lib/submenuitem/harness.d.ts +0 -11
  720. package/menu/lib/submenuitem/harness.js +0 -12
  721. package/menu/lib/submenuitem/harness.js.map +0 -1
  722. package/menu/lib/submenuitem/sub-menu-item.d.ts +0 -99
  723. package/menu/lib/submenuitem/sub-menu-item.js +0 -293
  724. package/menu/lib/submenuitem/sub-menu-item.js.map +0 -1
  725. package/menu/lib/typeaheadController.d.ts +0 -157
  726. package/menu/lib/typeaheadController.js +0 -252
  727. package/menu/lib/typeaheadController.js.map +0 -1
  728. package/radio/lib/_radio.scss +0 -169
  729. package/radio/lib/radio-styles.css.js +0 -9
  730. package/radio/lib/radio-styles.css.js.map +0 -1
  731. package/radio/lib/radio.d.ts +0 -57
  732. package/radio/lib/radio.js +0 -154
  733. package/radio/lib/radio.js.map +0 -1
  734. package/radio/lib/single-selection-controller.js +0 -193
  735. package/radio/lib/single-selection-controller.js.map +0 -1
  736. package/ripple/lib/ripple.js +0 -389
  737. package/ripple/lib/ripple.js.map +0 -1
  738. package/select/lib/_shared.scss +0 -56
  739. package/select/lib/select.d.ts +0 -216
  740. package/select/lib/select.js +0 -589
  741. package/select/lib/select.js.map +0 -1
  742. package/select/lib/selectoption/harness.d.ts +0 -11
  743. package/select/lib/selectoption/harness.js +0 -12
  744. package/select/lib/selectoption/harness.js.map +0 -1
  745. package/select/lib/selectoption/select-option.d.ts +0 -29
  746. package/select/lib/selectoption/select-option.js +0 -71
  747. package/select/lib/selectoption/select-option.js.map +0 -1
  748. package/select/lib/shared-styles.css.js +0 -9
  749. package/select/lib/shared-styles.css.js.map +0 -1
  750. package/select/lib/shared.d.ts +0 -52
  751. package/select/lib/shared.js.map +0 -1
  752. package/slider/lib/_slider.scss +0 -476
  753. package/slider/lib/slider-styles.css.js +0 -9
  754. package/slider/lib/slider-styles.css.js.map +0 -1
  755. package/slider/lib/slider.d.ts +0 -173
  756. package/slider/lib/slider.js +0 -623
  757. package/slider/lib/slider.js.map +0 -1
  758. package/switch/lib/_switch.scss +0 -152
  759. package/switch/lib/forced-colors-styles.css.d.ts +0 -1
  760. package/switch/lib/switch-styles.css.js +0 -9
  761. package/switch/lib/switch-styles.css.js.map +0 -1
  762. package/switch/lib/switch.d.ts +0 -79
  763. package/switch/lib/switch.js +0 -210
  764. package/switch/lib/switch.js.map +0 -1
  765. package/tabs/lib/_tab.scss +0 -293
  766. package/tabs/lib/tab-styles.css.js +0 -9
  767. package/tabs/lib/tab-styles.css.js.map +0 -1
  768. package/tabs/lib/tab.d.ts +0 -68
  769. package/tabs/lib/tab.js +0 -162
  770. package/tabs/lib/tab.js.map +0 -1
  771. package/tabs/lib/tabs.d.ts +0 -91
  772. package/tabs/lib/tabs.js +0 -310
  773. package/tabs/lib/tabs.js.map +0 -1
  774. package/textfield/lib/_filled-text-field.scss +0 -205
  775. package/textfield/lib/_input.scss +0 -61
  776. package/textfield/lib/_outlined-text-field.scss +0 -161
  777. package/textfield/lib/_shared.scss +0 -41
  778. package/textfield/lib/filled-styles.css.js +0 -9
  779. package/textfield/lib/filled-styles.css.js.map +0 -1
  780. package/textfield/lib/outlined-styles.css.js +0 -9
  781. package/textfield/lib/outlined-styles.css.js.map +0 -1
  782. package/textfield/lib/shared-styles.css.js +0 -9
  783. package/textfield/lib/shared-styles.css.js.map +0 -1
  784. package/textfield/lib/text-field.d.ts +0 -331
  785. package/textfield/lib/text-field.js +0 -695
  786. package/textfield/lib/text-field.js.map +0 -1
  787. /package/button/{lib → internal}/_elevated-button.scss +0 -0
  788. /package/button/{lib → internal}/_filled-button.scss +0 -0
  789. /package/button/{lib → internal}/_text-button.scss +0 -0
  790. /package/button/{lib → internal}/_tonal-button.scss +0 -0
  791. /package/button/{lib → internal}/elevated-styles.css.d.ts +0 -0
  792. /package/button/{lib → internal}/elevated-styles.scss +0 -0
  793. /package/button/{lib → internal}/filled-styles.css.d.ts +0 -0
  794. /package/button/{lib → internal}/filled-styles.scss +0 -0
  795. /package/button/{lib → internal}/outlined-styles.css.d.ts +0 -0
  796. /package/button/{lib → internal}/outlined-styles.scss +0 -0
  797. /package/button/{lib → internal}/shared-elevation-styles.css.d.ts +0 -0
  798. /package/button/{lib → internal}/shared-elevation-styles.scss +0 -0
  799. /package/button/{lib → internal}/shared-styles.css.d.ts +0 -0
  800. /package/button/{lib → internal}/shared-styles.scss +0 -0
  801. /package/button/{lib → internal}/text-styles.css.d.ts +0 -0
  802. /package/button/{lib → internal}/text-styles.scss +0 -0
  803. /package/button/{lib → internal}/tonal-styles.css.d.ts +0 -0
  804. /package/button/{lib → internal}/tonal-styles.scss +0 -0
  805. /package/checkbox/{lib → internal}/checkbox-styles.css.d.ts +0 -0
  806. /package/checkbox/{lib → internal}/checkbox-styles.scss +0 -0
  807. /package/chips/{lib → internal}/_assist-chip.scss +0 -0
  808. /package/chips/{lib → internal}/_chip-set.scss +0 -0
  809. /package/chips/{lib → internal}/_elevated.scss +0 -0
  810. /package/chips/{lib → internal}/_filter-chip.scss +0 -0
  811. /package/chips/{lib → internal}/_input-chip.scss +0 -0
  812. /package/chips/{lib → internal}/_selectable.scss +0 -0
  813. /package/chips/{lib → internal}/_suggestion-chip.scss +0 -0
  814. /package/chips/{lib → internal}/assist-chip.d.ts +0 -0
  815. /package/chips/{lib → internal}/assist-chip.js +0 -0
  816. /package/chips/{lib → internal}/assist-chip.js.map +0 -0
  817. /package/chips/{lib → internal}/assist-forced-colors-styles.css.d.ts +0 -0
  818. /package/chips/{lib → internal}/assist-forced-colors-styles.css.js +0 -0
  819. /package/chips/{lib → internal}/assist-forced-colors-styles.css.js.map +0 -0
  820. /package/chips/{lib → internal}/assist-forced-colors-styles.scss +0 -0
  821. /package/chips/{lib → internal}/assist-styles.css.d.ts +0 -0
  822. /package/chips/{lib → internal}/assist-styles.css.js +0 -0
  823. /package/chips/{lib → internal}/assist-styles.css.js.map +0 -0
  824. /package/chips/{lib → internal}/assist-styles.scss +0 -0
  825. /package/chips/{lib → internal}/chip-set-styles.css.d.ts +0 -0
  826. /package/chips/{lib → internal}/chip-set-styles.css.js +0 -0
  827. /package/chips/{lib → internal}/chip-set-styles.css.js.map +0 -0
  828. /package/chips/{lib → internal}/chip-set-styles.scss +0 -0
  829. /package/chips/{lib → internal}/chip-set.d.ts +0 -0
  830. /package/chips/{lib → internal}/chip-set.js +0 -0
  831. /package/chips/{lib → internal}/chip-set.js.map +0 -0
  832. /package/chips/{lib → internal}/elevated-styles.css.d.ts +0 -0
  833. /package/chips/{lib → internal}/elevated-styles.css.js +0 -0
  834. /package/chips/{lib → internal}/elevated-styles.css.js.map +0 -0
  835. /package/chips/{lib → internal}/elevated-styles.scss +0 -0
  836. /package/chips/{lib → internal}/filter-chip.d.ts +0 -0
  837. /package/chips/{lib → internal}/filter-forced-colors-styles.css.d.ts +0 -0
  838. /package/chips/{lib → internal}/filter-forced-colors-styles.css.js +0 -0
  839. /package/chips/{lib → internal}/filter-forced-colors-styles.css.js.map +0 -0
  840. /package/chips/{lib → internal}/filter-forced-colors-styles.scss +0 -0
  841. /package/chips/{lib → internal}/filter-styles.css.d.ts +0 -0
  842. /package/chips/{lib → internal}/filter-styles.css.js +0 -0
  843. /package/chips/{lib → internal}/filter-styles.css.js.map +0 -0
  844. /package/chips/{lib → internal}/filter-styles.scss +0 -0
  845. /package/chips/{lib → internal}/input-chip.d.ts +0 -0
  846. /package/chips/{lib → internal}/input-forced-colors-styles.css.d.ts +0 -0
  847. /package/chips/{lib → internal}/input-forced-colors-styles.css.js +0 -0
  848. /package/chips/{lib → internal}/input-forced-colors-styles.css.js.map +0 -0
  849. /package/chips/{lib → internal}/input-forced-colors-styles.scss +0 -0
  850. /package/chips/{lib → internal}/input-styles.css.d.ts +0 -0
  851. /package/chips/{lib → internal}/input-styles.css.js +0 -0
  852. /package/chips/{lib → internal}/input-styles.css.js.map +0 -0
  853. /package/chips/{lib → internal}/input-styles.scss +0 -0
  854. /package/chips/{lib → internal}/multi-action-chip.d.ts +0 -0
  855. /package/chips/{lib → internal}/multi-action-chip.js +0 -0
  856. /package/chips/{lib → internal}/multi-action-chip.js.map +0 -0
  857. /package/chips/{lib → internal}/selectable-styles.css.d.ts +0 -0
  858. /package/chips/{lib → internal}/selectable-styles.css.js +0 -0
  859. /package/chips/{lib → internal}/selectable-styles.css.js.map +0 -0
  860. /package/chips/{lib → internal}/selectable-styles.scss +0 -0
  861. /package/chips/{lib → internal}/shared-styles.css.d.ts +0 -0
  862. /package/chips/{lib → internal}/shared-styles.scss +0 -0
  863. /package/chips/{lib → internal}/suggestion-chip.d.ts +0 -0
  864. /package/chips/{lib → internal}/suggestion-chip.js +0 -0
  865. /package/chips/{lib → internal}/suggestion-chip.js.map +0 -0
  866. /package/chips/{lib → internal}/suggestion-forced-colors-styles.css.d.ts +0 -0
  867. /package/chips/{lib → internal}/suggestion-forced-colors-styles.css.js +0 -0
  868. /package/chips/{lib → internal}/suggestion-forced-colors-styles.css.js.map +0 -0
  869. /package/chips/{lib → internal}/suggestion-forced-colors-styles.scss +0 -0
  870. /package/chips/{lib → internal}/suggestion-styles.css.d.ts +0 -0
  871. /package/chips/{lib → internal}/suggestion-styles.css.js +0 -0
  872. /package/chips/{lib → internal}/suggestion-styles.css.js.map +0 -0
  873. /package/chips/{lib → internal}/suggestion-styles.scss +0 -0
  874. /package/chips/{lib → internal}/trailing-icon-styles.css.d.ts +0 -0
  875. /package/chips/{lib → internal}/trailing-icon-styles.scss +0 -0
  876. /package/dialog/{lib → internal}/dialog-styles.css.d.ts +0 -0
  877. /package/dialog/{lib → internal}/dialog-styles.scss +0 -0
  878. /package/dialog/{lib → internal}/dialog.d.ts +0 -0
  879. /package/divider/{lib → internal}/_divider.scss +0 -0
  880. /package/divider/{lib → internal}/divider-styles.css.d.ts +0 -0
  881. /package/divider/{lib → internal}/divider-styles.css.js +0 -0
  882. /package/divider/{lib → internal}/divider-styles.css.js.map +0 -0
  883. /package/divider/{lib → internal}/divider-styles.scss +0 -0
  884. /package/divider/{lib → internal}/divider.d.ts +0 -0
  885. /package/divider/{lib → internal}/divider.js +0 -0
  886. /package/divider/{lib → internal}/divider.js.map +0 -0
  887. /package/elevation/{lib → internal}/_elevation.scss +0 -0
  888. /package/elevation/{lib → internal}/elevation-styles.css.d.ts +0 -0
  889. /package/elevation/{lib → internal}/elevation-styles.css.js +0 -0
  890. /package/elevation/{lib → internal}/elevation-styles.css.js.map +0 -0
  891. /package/elevation/{lib → internal}/elevation-styles.scss +0 -0
  892. /package/elevation/{lib → internal}/elevation.d.ts +0 -0
  893. /package/elevation/{lib → internal}/elevation.js +0 -0
  894. /package/elevation/{lib → internal}/elevation.js.map +0 -0
  895. /package/fab/{lib → internal}/_fab-branded.scss +0 -0
  896. /package/fab/{lib → internal}/fab-branded-styles.css.d.ts +0 -0
  897. /package/fab/{lib → internal}/fab-branded-styles.css.js +0 -0
  898. /package/fab/{lib → internal}/fab-branded-styles.css.js.map +0 -0
  899. /package/fab/{lib → internal}/fab-branded-styles.scss +0 -0
  900. /package/fab/{lib → internal}/fab-styles.css.d.ts +0 -0
  901. /package/fab/{lib → internal}/fab-styles.scss +0 -0
  902. /package/fab/{lib → internal}/fab.js +0 -0
  903. /package/{checkbox/lib → fab/internal}/forced-colors-styles.css.d.ts +0 -0
  904. /package/fab/{lib → internal}/shared-styles.css.d.ts +0 -0
  905. /package/fab/{lib → internal}/shared-styles.scss +0 -0
  906. /package/field/{lib → internal}/filled-field.d.ts +0 -0
  907. /package/field/{lib → internal}/filled-field.js +0 -0
  908. /package/field/{lib → internal}/filled-field.js.map +0 -0
  909. /package/field/{lib → internal}/filled-styles.css.d.ts +0 -0
  910. /package/field/{lib → internal}/filled-styles.scss +0 -0
  911. /package/field/{lib → internal}/outlined-field.js +0 -0
  912. /package/field/{lib → internal}/outlined-styles.css.d.ts +0 -0
  913. /package/field/{lib → internal}/outlined-styles.scss +0 -0
  914. /package/field/{lib → internal}/shared-styles.css.d.ts +0 -0
  915. /package/field/{lib → internal}/shared-styles.scss +0 -0
  916. /package/focus/{lib → internal}/focus-ring-styles.css.d.ts +0 -0
  917. /package/focus/{lib → internal}/focus-ring-styles.scss +0 -0
  918. /package/focus/{lib → internal}/focus-ring.d.ts +0 -0
  919. /package/focus/{lib → internal}/focus-ring.js +0 -0
  920. /package/focus/{lib → internal}/focus-ring.js.map +0 -0
  921. /package/icon/{lib → internal}/_md-comp-icon.scss +0 -0
  922. /package/icon/{lib → internal}/icon-styles.css.d.ts +0 -0
  923. /package/icon/{lib → internal}/icon-styles.scss +0 -0
  924. /package/icon/{lib → internal}/icon.d.ts +0 -0
  925. /package/iconbutton/{lib → internal}/_filled-icon-button.scss +0 -0
  926. /package/iconbutton/{lib → internal}/_filled-tonal-icon-button.scss +0 -0
  927. /package/iconbutton/{lib → internal}/_outlined-icon-button.scss +0 -0
  928. /package/iconbutton/{lib → internal}/filled-styles.css.d.ts +0 -0
  929. /package/iconbutton/{lib → internal}/filled-styles.css.js +0 -0
  930. /package/iconbutton/{lib → internal}/filled-styles.css.js.map +0 -0
  931. /package/iconbutton/{lib → internal}/filled-styles.scss +0 -0
  932. /package/iconbutton/{lib → internal}/filled-tonal-styles.css.d.ts +0 -0
  933. /package/iconbutton/{lib → internal}/filled-tonal-styles.css.js +0 -0
  934. /package/iconbutton/{lib → internal}/filled-tonal-styles.css.js.map +0 -0
  935. /package/iconbutton/{lib → internal}/filled-tonal-styles.scss +0 -0
  936. /package/iconbutton/{lib → internal}/outlined-styles.css.d.ts +0 -0
  937. /package/iconbutton/{lib → internal}/outlined-styles.css.js +0 -0
  938. /package/iconbutton/{lib → internal}/outlined-styles.css.js.map +0 -0
  939. /package/iconbutton/{lib → internal}/outlined-styles.scss +0 -0
  940. /package/iconbutton/{lib → internal}/shared-styles.css.d.ts +0 -0
  941. /package/iconbutton/{lib → internal}/shared-styles.scss +0 -0
  942. /package/iconbutton/{lib → internal}/standard-styles.css.d.ts +0 -0
  943. /package/iconbutton/{lib → internal}/standard-styles.scss +0 -0
  944. /package/labs/badge/{lib → internal}/_badge.scss +0 -0
  945. /package/labs/badge/{lib → internal}/badge-styles.css.d.ts +0 -0
  946. /package/labs/badge/{lib → internal}/badge-styles.css.js +0 -0
  947. /package/labs/badge/{lib → internal}/badge-styles.css.js.map +0 -0
  948. /package/labs/badge/{lib → internal}/badge-styles.scss +0 -0
  949. /package/labs/badge/{lib → internal}/badge.d.ts +0 -0
  950. /package/labs/badge/{lib → internal}/badge.js +0 -0
  951. /package/labs/badge/{lib → internal}/badge.js.map +0 -0
  952. /package/labs/navigationbar/{lib → internal}/_navigation-bar.scss +0 -0
  953. /package/labs/navigationbar/{lib → internal}/constants.js +0 -0
  954. /package/labs/navigationbar/{lib → internal}/navigation-bar-styles.css.d.ts +0 -0
  955. /package/labs/navigationbar/{lib → internal}/navigation-bar-styles.css.js +0 -0
  956. /package/labs/navigationbar/{lib → internal}/navigation-bar-styles.css.js.map +0 -0
  957. /package/labs/navigationbar/{lib → internal}/navigation-bar-styles.scss +0 -0
  958. /package/labs/navigationbar/{lib → internal}/navigation-bar.js +0 -0
  959. /package/labs/navigationbar/{lib → internal}/state.js +0 -0
  960. /package/labs/navigationdrawer/{lib → internal}/_navigation-drawer-modal.scss +0 -0
  961. /package/labs/navigationdrawer/{lib → internal}/_navigation-drawer.scss +0 -0
  962. /package/labs/navigationdrawer/{lib → internal}/_shared.scss +0 -0
  963. /package/labs/navigationdrawer/{lib → internal}/navigation-drawer-modal-styles.css.d.ts +0 -0
  964. /package/labs/navigationdrawer/{lib → internal}/navigation-drawer-modal-styles.css.js +0 -0
  965. /package/labs/navigationdrawer/{lib → internal}/navigation-drawer-modal-styles.css.js.map +0 -0
  966. /package/labs/navigationdrawer/{lib → internal}/navigation-drawer-modal-styles.scss +0 -0
  967. /package/labs/navigationdrawer/{lib → internal}/navigation-drawer-modal.d.ts +0 -0
  968. /package/labs/navigationdrawer/{lib → internal}/navigation-drawer-styles.css.d.ts +0 -0
  969. /package/labs/navigationdrawer/{lib → internal}/navigation-drawer-styles.css.js +0 -0
  970. /package/labs/navigationdrawer/{lib → internal}/navigation-drawer-styles.css.js.map +0 -0
  971. /package/labs/navigationdrawer/{lib → internal}/navigation-drawer-styles.scss +0 -0
  972. /package/labs/navigationdrawer/{lib → internal}/navigation-drawer.d.ts +0 -0
  973. /package/labs/navigationdrawer/{lib → internal}/navigation-drawer.js +0 -0
  974. /package/labs/navigationdrawer/{lib → internal}/navigation-drawer.js.map +0 -0
  975. /package/labs/navigationdrawer/{lib → internal}/shared-styles.css.d.ts +0 -0
  976. /package/labs/navigationdrawer/{lib → internal}/shared-styles.css.js +0 -0
  977. /package/labs/navigationdrawer/{lib → internal}/shared-styles.css.js.map +0 -0
  978. /package/labs/navigationdrawer/{lib → internal}/shared-styles.scss +0 -0
  979. /package/labs/navigationtab/{lib → internal}/navigation-tab-styles.css.d.ts +0 -0
  980. /package/labs/navigationtab/{lib → internal}/navigation-tab-styles.scss +0 -0
  981. /package/labs/navigationtab/{lib → internal}/state.d.ts +0 -0
  982. /package/labs/navigationtab/{lib → internal}/state.js +0 -0
  983. /package/labs/navigationtab/{lib → internal}/state.js.map +0 -0
  984. /package/labs/segmentedbutton/{lib → internal}/_outlined-segmented-button.scss +0 -0
  985. /package/labs/segmentedbutton/{lib → internal}/outlined-segmented-button.d.ts +0 -0
  986. /package/labs/segmentedbutton/{lib → internal}/outlined-segmented-button.js +0 -0
  987. /package/labs/segmentedbutton/{lib → internal}/outlined-segmented-button.js.map +0 -0
  988. /package/labs/segmentedbutton/{lib → internal}/outlined-styles.css.d.ts +0 -0
  989. /package/labs/segmentedbutton/{lib → internal}/outlined-styles.scss +0 -0
  990. /package/labs/segmentedbutton/{lib → internal}/shared-styles.css.d.ts +0 -0
  991. /package/labs/segmentedbutton/{lib → internal}/shared-styles.scss +0 -0
  992. /package/labs/segmentedbuttonset/{lib → internal}/_outlined-segmented-button-set.scss +0 -0
  993. /package/labs/segmentedbuttonset/{lib → internal}/_shared.scss +0 -0
  994. /package/labs/segmentedbuttonset/{lib → internal}/outlined-segmented-button-set.d.ts +0 -0
  995. /package/labs/segmentedbuttonset/{lib → internal}/outlined-segmented-button-set.js +0 -0
  996. /package/labs/segmentedbuttonset/{lib → internal}/outlined-segmented-button-set.js.map +0 -0
  997. /package/labs/segmentedbuttonset/{lib → internal}/outlined-styles.css.d.ts +0 -0
  998. /package/labs/segmentedbuttonset/{lib → internal}/outlined-styles.scss +0 -0
  999. /package/labs/segmentedbuttonset/{lib → internal}/shared-styles.css.d.ts +0 -0
  1000. /package/labs/segmentedbuttonset/{lib → internal}/shared-styles.css.js +0 -0
  1001. /package/labs/segmentedbuttonset/{lib → internal}/shared-styles.css.js.map +0 -0
  1002. /package/labs/segmentedbuttonset/{lib → internal}/shared-styles.scss +0 -0
  1003. /package/list/{lib → internal}/_list.scss +0 -0
  1004. /package/list/{lib → internal}/list-styles.css.d.ts +0 -0
  1005. /package/list/{lib → internal}/list-styles.css.js +0 -0
  1006. /package/list/{lib → internal}/list-styles.css.js.map +0 -0
  1007. /package/list/{lib → internal}/list-styles.scss +0 -0
  1008. /package/list/{lib → internal}/list.d.ts +0 -0
  1009. /package/{fab/lib → list/internal/listitem}/forced-colors-styles.css.d.ts +0 -0
  1010. /package/list/{lib → internal}/listitem/forced-colors-styles.css.js +0 -0
  1011. /package/list/{lib → internal}/listitem/forced-colors-styles.css.js.map +0 -0
  1012. /package/list/{lib → internal}/listitem/forced-colors-styles.scss +0 -0
  1013. /package/list/{lib → internal}/listitem/list-item-only.d.ts +0 -0
  1014. /package/list/{lib → internal}/listitem/list-item-only.js +0 -0
  1015. /package/list/{lib → internal}/listitem/list-item-only.js.map +0 -0
  1016. /package/list/{lib → internal}/listitem/list-item-styles.css.d.ts +0 -0
  1017. /package/list/{lib → internal}/listitem/list-item-styles.scss +0 -0
  1018. /package/list/{lib → internal}/listitemlink/list-item-link.d.ts +0 -0
  1019. /package/list/{lib → internal}/listitemlink/list-item-link.js +0 -0
  1020. /package/list/{lib → internal}/listitemlink/list-item-link.js.map +0 -0
  1021. /package/{list/lib/listitem → menu/internal}/forced-colors-styles.css.d.ts +0 -0
  1022. /package/menu/{lib → internal}/forced-colors-styles.css.js +0 -0
  1023. /package/menu/{lib → internal}/forced-colors-styles.css.js.map +0 -0
  1024. /package/menu/{lib → internal}/forced-colors-styles.scss +0 -0
  1025. /package/menu/{lib → internal}/menu-styles.css.d.ts +0 -0
  1026. /package/menu/{lib → internal}/menu-styles.scss +0 -0
  1027. /package/menu/{lib → internal}/menuitem/_menu-item.scss +0 -0
  1028. /package/menu/{lib → internal/menuitem}/forced-colors-styles.css.d.ts +0 -0
  1029. /package/menu/{lib → internal}/menuitem/forced-colors-styles.css.js +0 -0
  1030. /package/menu/{lib → internal}/menuitem/forced-colors-styles.css.js.map +0 -0
  1031. /package/menu/{lib → internal}/menuitem/forced-colors-styles.scss +0 -0
  1032. /package/menu/{lib → internal}/menuitem/menu-item-styles.css.d.ts +0 -0
  1033. /package/menu/{lib → internal}/menuitem/menu-item-styles.css.js +0 -0
  1034. /package/menu/{lib → internal}/menuitem/menu-item-styles.css.js.map +0 -0
  1035. /package/menu/{lib → internal}/menuitem/menu-item-styles.scss +0 -0
  1036. /package/menu/{lib → internal}/shared.js +0 -0
  1037. /package/menu/{lib → internal}/surfacePositionController.d.ts +0 -0
  1038. /package/menu/{lib → internal}/surfacePositionController.js +0 -0
  1039. /package/menu/{lib → internal}/surfacePositionController.js.map +0 -0
  1040. /package/menu/{lib → internal}/types.d.ts +0 -0
  1041. /package/menu/{lib → internal}/types.js +0 -0
  1042. /package/menu/{lib → internal}/types.js.map +0 -0
  1043. /package/{circularprogress/lib → progress/internal}/circular-progress-styles.css.d.ts +0 -0
  1044. /package/{circularprogress/lib → progress/internal}/circular-progress-styles.scss +0 -0
  1045. /package/{linearprogress/lib → progress/internal}/linear-progress-styles.css.d.ts +0 -0
  1046. /package/{linearprogress/lib → progress/internal}/linear-progress-styles.scss +0 -0
  1047. /package/{menu/lib/menuitem → radio/internal}/forced-colors-styles.css.d.ts +0 -0
  1048. /package/radio/{lib → internal}/forced-colors-styles.css.js +0 -0
  1049. /package/radio/{lib → internal}/forced-colors-styles.css.js.map +0 -0
  1050. /package/radio/{lib → internal}/forced-colors-styles.scss +0 -0
  1051. /package/radio/{lib → internal}/radio-styles.css.d.ts +0 -0
  1052. /package/radio/{lib → internal}/radio-styles.scss +0 -0
  1053. /package/radio/{lib → internal}/single-selection-controller.d.ts +0 -0
  1054. /package/ripple/{lib → internal}/_ripple.scss +0 -0
  1055. /package/ripple/{lib → internal}/ripple-styles.css.d.ts +0 -0
  1056. /package/ripple/{lib → internal}/ripple-styles.css.js +0 -0
  1057. /package/ripple/{lib → internal}/ripple-styles.css.js.map +0 -0
  1058. /package/ripple/{lib → internal}/ripple-styles.scss +0 -0
  1059. /package/ripple/{lib → internal}/ripple.d.ts +0 -0
  1060. /package/select/{lib → internal}/_filled-select.scss +0 -0
  1061. /package/select/{lib → internal}/_outlined-select.scss +0 -0
  1062. /package/select/{lib → internal}/filled-forced-colors-styles.css.d.ts +0 -0
  1063. /package/select/{lib → internal}/filled-forced-colors-styles.css.js +0 -0
  1064. /package/select/{lib → internal}/filled-forced-colors-styles.css.js.map +0 -0
  1065. /package/select/{lib → internal}/filled-forced-colors-styles.scss +0 -0
  1066. /package/select/{lib → internal}/filled-select-styles.css.d.ts +0 -0
  1067. /package/select/{lib → internal}/filled-select-styles.css.js +0 -0
  1068. /package/select/{lib → internal}/filled-select-styles.css.js.map +0 -0
  1069. /package/select/{lib → internal}/filled-select-styles.scss +0 -0
  1070. /package/select/{lib → internal}/filled-select.d.ts +0 -0
  1071. /package/select/{lib → internal}/filled-select.js +0 -0
  1072. /package/select/{lib → internal}/filled-select.js.map +0 -0
  1073. /package/select/{lib → internal}/outlined-forced-colors-styles.css.d.ts +0 -0
  1074. /package/select/{lib → internal}/outlined-forced-colors-styles.css.js +0 -0
  1075. /package/select/{lib → internal}/outlined-forced-colors-styles.css.js.map +0 -0
  1076. /package/select/{lib → internal}/outlined-forced-colors-styles.scss +0 -0
  1077. /package/select/{lib → internal}/outlined-select-styles.css.d.ts +0 -0
  1078. /package/select/{lib → internal}/outlined-select-styles.css.js +0 -0
  1079. /package/select/{lib → internal}/outlined-select-styles.css.js.map +0 -0
  1080. /package/select/{lib → internal}/outlined-select-styles.scss +0 -0
  1081. /package/select/{lib → internal}/outlined-select.d.ts +0 -0
  1082. /package/select/{lib → internal}/outlined-select.js +0 -0
  1083. /package/select/{lib → internal}/outlined-select.js.map +0 -0
  1084. /package/select/{lib → internal}/shared-styles.css.d.ts +0 -0
  1085. /package/select/{lib → internal}/shared-styles.scss +0 -0
  1086. /package/select/{lib → internal}/shared.js +0 -0
  1087. /package/{radio/lib → slider/internal}/forced-colors-styles.css.d.ts +0 -0
  1088. /package/slider/{lib → internal}/forced-colors-styles.css.js +0 -0
  1089. /package/slider/{lib → internal}/forced-colors-styles.css.js.map +0 -0
  1090. /package/slider/{lib → internal}/forced-colors-styles.scss +0 -0
  1091. /package/slider/{lib → internal}/slider-styles.css.d.ts +0 -0
  1092. /package/slider/{lib → internal}/slider-styles.scss +0 -0
  1093. /package/switch/{lib → internal}/README.md +0 -0
  1094. /package/switch/{lib → internal}/_handle.scss +0 -0
  1095. /package/switch/{lib → internal}/_icon.scss +0 -0
  1096. /package/switch/{lib → internal}/_track.scss +0 -0
  1097. /package/{slider/lib → switch/internal}/forced-colors-styles.css.d.ts +0 -0
  1098. /package/switch/{lib → internal}/forced-colors-styles.css.js +0 -0
  1099. /package/switch/{lib → internal}/forced-colors-styles.css.js.map +0 -0
  1100. /package/switch/{lib → internal}/forced-colors-styles.scss +0 -0
  1101. /package/switch/{lib → internal}/switch-styles.css.d.ts +0 -0
  1102. /package/switch/{lib → internal}/switch-styles.scss +0 -0
  1103. /package/tabs/{lib → internal}/_tabs.scss +0 -0
  1104. /package/tabs/{lib → internal}/tab-styles.css.d.ts +0 -0
  1105. /package/tabs/{lib → internal}/tab-styles.scss +0 -0
  1106. /package/tabs/{lib → internal}/tabs-styles.css.d.ts +0 -0
  1107. /package/tabs/{lib → internal}/tabs-styles.css.js +0 -0
  1108. /package/tabs/{lib → internal}/tabs-styles.css.js.map +0 -0
  1109. /package/tabs/{lib → internal}/tabs-styles.scss +0 -0
  1110. /package/textfield/{lib → internal}/_icon.scss +0 -0
  1111. /package/textfield/{lib → internal}/filled-forced-colors-styles.css.d.ts +0 -0
  1112. /package/textfield/{lib → internal}/filled-forced-colors-styles.css.js +0 -0
  1113. /package/textfield/{lib → internal}/filled-forced-colors-styles.css.js.map +0 -0
  1114. /package/textfield/{lib → internal}/filled-forced-colors-styles.scss +0 -0
  1115. /package/textfield/{lib → internal}/filled-styles.css.d.ts +0 -0
  1116. /package/textfield/{lib → internal}/filled-styles.scss +0 -0
  1117. /package/textfield/{lib → internal}/filled-text-field.d.ts +0 -0
  1118. /package/textfield/{lib → internal}/filled-text-field.js +0 -0
  1119. /package/textfield/{lib → internal}/filled-text-field.js.map +0 -0
  1120. /package/textfield/{lib → internal}/outlined-forced-colors-styles.css.d.ts +0 -0
  1121. /package/textfield/{lib → internal}/outlined-forced-colors-styles.css.js +0 -0
  1122. /package/textfield/{lib → internal}/outlined-forced-colors-styles.css.js.map +0 -0
  1123. /package/textfield/{lib → internal}/outlined-forced-colors-styles.scss +0 -0
  1124. /package/textfield/{lib → internal}/outlined-styles.css.d.ts +0 -0
  1125. /package/textfield/{lib → internal}/outlined-styles.scss +0 -0
  1126. /package/textfield/{lib → internal}/outlined-text-field.d.ts +0 -0
  1127. /package/textfield/{lib → internal}/outlined-text-field.js +0 -0
  1128. /package/textfield/{lib → internal}/outlined-text-field.js.map +0 -0
  1129. /package/textfield/{lib → internal}/shared-styles.css.d.ts +0 -0
  1130. /package/textfield/{lib → internal}/shared-styles.scss +0 -0
@@ -0,0 +1,397 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2022 Google LLC
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ import { __decorate } from "tslib";
7
+ import { html, LitElement } from 'lit';
8
+ import { property, query, state } from 'lit/decorators.js';
9
+ import { classMap } from 'lit/directives/class-map.js';
10
+ import { AttachableController } from '../../internal/controller/attachable-controller.js';
11
+ import { EASING } from '../../internal/motion/animation.js';
12
+ const PRESS_GROW_MS = 450;
13
+ const MINIMUM_PRESS_MS = 225;
14
+ const INITIAL_ORIGIN_SCALE = 0.2;
15
+ const PADDING = 10;
16
+ const SOFT_EDGE_MINIMUM_SIZE = 75;
17
+ const SOFT_EDGE_CONTAINER_RATIO = 0.35;
18
+ const PRESS_PSEUDO = '::after';
19
+ const ANIMATION_FILL = 'forwards';
20
+ /**
21
+ * Interaction states for the ripple.
22
+ *
23
+ * On Touch:
24
+ * - `INACTIVE -> TOUCH_DELAY -> WAITING_FOR_CLICK -> INACTIVE`
25
+ * - `INACTIVE -> TOUCH_DELAY -> HOLDING -> WAITING_FOR_CLICK -> INACTIVE`
26
+ *
27
+ * On Mouse or Pen:
28
+ * - `INACTIVE -> WAITING_FOR_CLICK -> INACTIVE`
29
+ */
30
+ var State;
31
+ (function (State) {
32
+ /**
33
+ * Initial state of the control, no touch in progress.
34
+ *
35
+ * Transitions:
36
+ * - on touch down: transition to `TOUCH_DELAY`.
37
+ * - on mouse down: transition to `WAITING_FOR_CLICK`.
38
+ */
39
+ State[State["INACTIVE"] = 0] = "INACTIVE";
40
+ /**
41
+ * Touch down has been received, waiting to determine if it's a swipe or
42
+ * scroll.
43
+ *
44
+ * Transitions:
45
+ * - on touch up: begin press; transition to `WAITING_FOR_CLICK`.
46
+ * - on cancel: transition to `INACTIVE`.
47
+ * - after `TOUCH_DELAY_MS`: begin press; transition to `HOLDING`.
48
+ */
49
+ State[State["TOUCH_DELAY"] = 1] = "TOUCH_DELAY";
50
+ /**
51
+ * A touch has been deemed to be a press
52
+ *
53
+ * Transitions:
54
+ * - on up: transition to `WAITING_FOR_CLICK`.
55
+ */
56
+ State[State["HOLDING"] = 2] = "HOLDING";
57
+ /**
58
+ * The user touch has finished, transition into rest state.
59
+ *
60
+ * Transitions:
61
+ * - on click end press; transition to `INACTIVE`.
62
+ */
63
+ State[State["WAITING_FOR_CLICK"] = 3] = "WAITING_FOR_CLICK";
64
+ })(State || (State = {}));
65
+ /**
66
+ * Events that the ripple listens to.
67
+ */
68
+ const EVENTS = [
69
+ 'click', 'contextmenu', 'pointercancel', 'pointerdown', 'pointerenter',
70
+ 'pointerleave', 'pointerup'
71
+ ];
72
+ /**
73
+ * Delay reacting to touch so that we do not show the ripple for a swipe or
74
+ * scroll interaction.
75
+ */
76
+ const TOUCH_DELAY_MS = 150;
77
+ /**
78
+ * A ripple component.
79
+ */
80
+ export class Ripple extends LitElement {
81
+ constructor() {
82
+ super(...arguments);
83
+ /**
84
+ * Disables the ripple.
85
+ */
86
+ this.disabled = false;
87
+ this.hovered = false;
88
+ this.pressed = false;
89
+ this.rippleSize = '';
90
+ this.rippleScale = '';
91
+ this.initialSize = 0;
92
+ this.state = State.INACTIVE;
93
+ this.checkBoundsAfterContextMenu = false;
94
+ this.attachableController = new AttachableController(this, this.onControlChange.bind(this));
95
+ }
96
+ get htmlFor() {
97
+ return this.attachableController.htmlFor;
98
+ }
99
+ set htmlFor(htmlFor) {
100
+ this.attachableController.htmlFor = htmlFor;
101
+ }
102
+ get control() {
103
+ return this.attachableController.control;
104
+ }
105
+ attach(control) {
106
+ this.attachableController.attach(control);
107
+ }
108
+ detach() {
109
+ this.attachableController.detach();
110
+ }
111
+ render() {
112
+ const classes = {
113
+ 'hovered': this.hovered,
114
+ 'pressed': this.pressed,
115
+ };
116
+ return html `<div class="surface ${classMap(classes)}"></div>`;
117
+ }
118
+ update(changedProps) {
119
+ if (changedProps.has('disabled') && this.disabled) {
120
+ this.hovered = false;
121
+ this.pressed = false;
122
+ }
123
+ super.update(changedProps);
124
+ }
125
+ /**
126
+ * TODO(b/269799771): make private
127
+ * @private only public for slider
128
+ */
129
+ handlePointerenter(event) {
130
+ if (!this.shouldReactToEvent(event)) {
131
+ return;
132
+ }
133
+ this.hovered = true;
134
+ }
135
+ /**
136
+ * TODO(b/269799771): make private
137
+ * @private only public for slider
138
+ */
139
+ handlePointerleave(event) {
140
+ if (!this.shouldReactToEvent(event)) {
141
+ return;
142
+ }
143
+ this.hovered = false;
144
+ // release a held mouse or pen press that moves outside the element
145
+ if (this.state !== State.INACTIVE) {
146
+ this.endPressAnimation();
147
+ }
148
+ }
149
+ handlePointerup(event) {
150
+ if (!this.shouldReactToEvent(event)) {
151
+ return;
152
+ }
153
+ if (this.state === State.HOLDING) {
154
+ this.state = State.WAITING_FOR_CLICK;
155
+ return;
156
+ }
157
+ if (this.state === State.TOUCH_DELAY) {
158
+ this.state = State.WAITING_FOR_CLICK;
159
+ this.startPressAnimation(this.rippleStartEvent);
160
+ return;
161
+ }
162
+ }
163
+ async handlePointerdown(event) {
164
+ if (!this.shouldReactToEvent(event)) {
165
+ return;
166
+ }
167
+ this.rippleStartEvent = event;
168
+ if (!this.isTouch(event)) {
169
+ this.state = State.WAITING_FOR_CLICK;
170
+ this.startPressAnimation(event);
171
+ return;
172
+ }
173
+ // after a longpress contextmenu event, an extra `pointerdown` can be
174
+ // dispatched to the pressed element. Check that the down is within
175
+ // bounds of the element in this case.
176
+ if (this.checkBoundsAfterContextMenu && !this.inBounds(event)) {
177
+ return;
178
+ }
179
+ this.checkBoundsAfterContextMenu = false;
180
+ // Wait for a hold after touch delay
181
+ this.state = State.TOUCH_DELAY;
182
+ await new Promise(resolve => {
183
+ setTimeout(resolve, TOUCH_DELAY_MS);
184
+ });
185
+ if (this.state !== State.TOUCH_DELAY) {
186
+ return;
187
+ }
188
+ this.state = State.HOLDING;
189
+ this.startPressAnimation(event);
190
+ }
191
+ handleClick() {
192
+ // Click is a MouseEvent in Firefox and Safari, so we cannot use
193
+ // `shouldReactToEvent`
194
+ if (this.disabled) {
195
+ return;
196
+ }
197
+ if (this.state === State.WAITING_FOR_CLICK) {
198
+ this.endPressAnimation();
199
+ return;
200
+ }
201
+ if (this.state === State.INACTIVE) {
202
+ // keyboard synthesized click event
203
+ this.startPressAnimation();
204
+ this.endPressAnimation();
205
+ }
206
+ }
207
+ handlePointercancel(event) {
208
+ if (!this.shouldReactToEvent(event)) {
209
+ return;
210
+ }
211
+ this.endPressAnimation();
212
+ }
213
+ handleContextmenu() {
214
+ if (this.disabled) {
215
+ return;
216
+ }
217
+ this.checkBoundsAfterContextMenu = true;
218
+ this.endPressAnimation();
219
+ }
220
+ determineRippleSize() {
221
+ const { height, width } = this.getBoundingClientRect();
222
+ const maxDim = Math.max(height, width);
223
+ const softEdgeSize = Math.max(SOFT_EDGE_CONTAINER_RATIO * maxDim, SOFT_EDGE_MINIMUM_SIZE);
224
+ const initialSize = Math.floor(maxDim * INITIAL_ORIGIN_SCALE);
225
+ const hypotenuse = Math.sqrt(width ** 2 + height ** 2);
226
+ const maxRadius = hypotenuse + PADDING;
227
+ this.initialSize = initialSize;
228
+ this.rippleScale = `${(maxRadius + softEdgeSize) / initialSize}`;
229
+ this.rippleSize = `${initialSize}px`;
230
+ }
231
+ getNormalizedPointerEventCoords(pointerEvent) {
232
+ const { scrollX, scrollY } = window;
233
+ const { left, top } = this.getBoundingClientRect();
234
+ const documentX = scrollX + left;
235
+ const documentY = scrollY + top;
236
+ const { pageX, pageY } = pointerEvent;
237
+ return { x: pageX - documentX, y: pageY - documentY };
238
+ }
239
+ getTranslationCoordinates(positionEvent) {
240
+ const { height, width } = this.getBoundingClientRect();
241
+ // end in the center
242
+ const endPoint = {
243
+ x: (width - this.initialSize) / 2,
244
+ y: (height - this.initialSize) / 2,
245
+ };
246
+ let startPoint;
247
+ if (positionEvent instanceof PointerEvent) {
248
+ startPoint = this.getNormalizedPointerEventCoords(positionEvent);
249
+ }
250
+ else {
251
+ startPoint = {
252
+ x: width / 2,
253
+ y: height / 2,
254
+ };
255
+ }
256
+ // center around start point
257
+ startPoint = {
258
+ x: startPoint.x - (this.initialSize / 2),
259
+ y: startPoint.y - (this.initialSize / 2),
260
+ };
261
+ return { startPoint, endPoint };
262
+ }
263
+ startPressAnimation(positionEvent) {
264
+ if (!this.mdRoot) {
265
+ return;
266
+ }
267
+ this.pressed = true;
268
+ this.growAnimation?.cancel();
269
+ this.determineRippleSize();
270
+ const { startPoint, endPoint } = this.getTranslationCoordinates(positionEvent);
271
+ const translateStart = `${startPoint.x}px, ${startPoint.y}px`;
272
+ const translateEnd = `${endPoint.x}px, ${endPoint.y}px`;
273
+ this.growAnimation = this.mdRoot.animate({
274
+ top: [0, 0],
275
+ left: [0, 0],
276
+ height: [this.rippleSize, this.rippleSize],
277
+ width: [this.rippleSize, this.rippleSize],
278
+ transform: [
279
+ `translate(${translateStart}) scale(1)`,
280
+ `translate(${translateEnd}) scale(${this.rippleScale})`
281
+ ],
282
+ }, {
283
+ pseudoElement: PRESS_PSEUDO,
284
+ duration: PRESS_GROW_MS,
285
+ easing: EASING.STANDARD,
286
+ fill: ANIMATION_FILL
287
+ });
288
+ }
289
+ async endPressAnimation() {
290
+ this.state = State.INACTIVE;
291
+ const animation = this.growAnimation;
292
+ const pressAnimationPlayState = animation?.currentTime ?? Infinity;
293
+ // TODO: go/ts51upgrade - Auto-added to unblock TS5.1 migration.
294
+ // TS2365: Operator '>=' cannot be applied to types 'CSSNumberish' and
295
+ // 'number'.
296
+ // @ts-ignore
297
+ if (pressAnimationPlayState >= MINIMUM_PRESS_MS) {
298
+ this.pressed = false;
299
+ return;
300
+ }
301
+ await new Promise(resolve => {
302
+ // TODO: go/ts51upgrade - Auto-added to unblock TS5.1 migration.
303
+ // TS2363: The right-hand side of an arithmetic operation must be of
304
+ // type 'any', 'number', 'bigint' or an enum type.
305
+ // @ts-ignore
306
+ setTimeout(resolve, MINIMUM_PRESS_MS - pressAnimationPlayState);
307
+ });
308
+ if (this.growAnimation !== animation) {
309
+ // A new press animation was started. The old animation was canceled and
310
+ // should not finish the pressed state.
311
+ return;
312
+ }
313
+ this.pressed = false;
314
+ }
315
+ /**
316
+ * Returns `true` if
317
+ * - the ripple element is enabled
318
+ * - the pointer is primary for the input type
319
+ * - the pointer is the pointer that started the interaction, or will start
320
+ * the interaction
321
+ * - the pointer is a touch, or the pointer state has the primary button
322
+ * held, or the pointer is hovering
323
+ */
324
+ shouldReactToEvent(event) {
325
+ if (this.disabled || !event.isPrimary) {
326
+ return false;
327
+ }
328
+ if (this.rippleStartEvent &&
329
+ this.rippleStartEvent.pointerId !== event.pointerId) {
330
+ return false;
331
+ }
332
+ if (event.type === 'pointerenter' || event.type === 'pointerleave') {
333
+ return !this.isTouch(event);
334
+ }
335
+ const isPrimaryButton = event.buttons === 1;
336
+ return this.isTouch(event) || isPrimaryButton;
337
+ }
338
+ /**
339
+ * Check if the event is within the bounds of the element.
340
+ *
341
+ * This is only needed for the "stuck" contextmenu longpress on Chrome.
342
+ */
343
+ inBounds({ x, y }) {
344
+ const { top, left, bottom, right } = this.getBoundingClientRect();
345
+ return x >= left && x <= right && y >= top && y <= bottom;
346
+ }
347
+ isTouch({ pointerType }) {
348
+ return pointerType === 'touch';
349
+ }
350
+ /** @private */
351
+ async handleEvent(event) {
352
+ switch (event.type) {
353
+ case 'click':
354
+ this.handleClick();
355
+ break;
356
+ case 'contextmenu':
357
+ this.handleContextmenu();
358
+ break;
359
+ case 'pointercancel':
360
+ this.handlePointercancel(event);
361
+ break;
362
+ case 'pointerdown':
363
+ await this.handlePointerdown(event);
364
+ break;
365
+ case 'pointerenter':
366
+ this.handlePointerenter(event);
367
+ break;
368
+ case 'pointerleave':
369
+ this.handlePointerleave(event);
370
+ break;
371
+ case 'pointerup':
372
+ this.handlePointerup(event);
373
+ break;
374
+ default:
375
+ break;
376
+ }
377
+ }
378
+ onControlChange(prev, next) {
379
+ for (const event of EVENTS) {
380
+ prev?.removeEventListener(event, this);
381
+ next?.addEventListener(event, this);
382
+ }
383
+ }
384
+ }
385
+ __decorate([
386
+ property({ type: Boolean, reflect: true })
387
+ ], Ripple.prototype, "disabled", void 0);
388
+ __decorate([
389
+ state()
390
+ ], Ripple.prototype, "hovered", void 0);
391
+ __decorate([
392
+ state()
393
+ ], Ripple.prototype, "pressed", void 0);
394
+ __decorate([
395
+ query('.surface')
396
+ ], Ripple.prototype, "mdRoot", void 0);
397
+ //# sourceMappingURL=ripple.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ripple.js","sourceRoot":"","sources":["ripple.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * @license\n * Copyright 2022 Google LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport {html, LitElement, PropertyValues} from 'lit';\nimport {property, query, state} from 'lit/decorators.js';\nimport {classMap} from 'lit/directives/class-map.js';\n\nimport {Attachable, AttachableController} from '../../internal/controller/attachable-controller.js';\nimport {EASING} from '../../internal/motion/animation.js';\n\nconst PRESS_GROW_MS = 450;\nconst MINIMUM_PRESS_MS = 225;\nconst INITIAL_ORIGIN_SCALE = 0.2;\nconst PADDING = 10;\nconst SOFT_EDGE_MINIMUM_SIZE = 75;\nconst SOFT_EDGE_CONTAINER_RATIO = 0.35;\nconst PRESS_PSEUDO = '::after';\nconst ANIMATION_FILL = 'forwards';\n\n/**\n * Interaction states for the ripple.\n *\n * On Touch:\n * - `INACTIVE -> TOUCH_DELAY -> WAITING_FOR_CLICK -> INACTIVE`\n * - `INACTIVE -> TOUCH_DELAY -> HOLDING -> WAITING_FOR_CLICK -> INACTIVE`\n *\n * On Mouse or Pen:\n * - `INACTIVE -> WAITING_FOR_CLICK -> INACTIVE`\n */\nenum State {\n /**\n * Initial state of the control, no touch in progress.\n *\n * Transitions:\n * - on touch down: transition to `TOUCH_DELAY`.\n * - on mouse down: transition to `WAITING_FOR_CLICK`.\n */\n INACTIVE,\n /**\n * Touch down has been received, waiting to determine if it's a swipe or\n * scroll.\n *\n * Transitions:\n * - on touch up: begin press; transition to `WAITING_FOR_CLICK`.\n * - on cancel: transition to `INACTIVE`.\n * - after `TOUCH_DELAY_MS`: begin press; transition to `HOLDING`.\n */\n TOUCH_DELAY,\n /**\n * A touch has been deemed to be a press\n *\n * Transitions:\n * - on up: transition to `WAITING_FOR_CLICK`.\n */\n HOLDING,\n /**\n * The user touch has finished, transition into rest state.\n *\n * Transitions:\n * - on click end press; transition to `INACTIVE`.\n */\n WAITING_FOR_CLICK\n}\n\n/**\n * Events that the ripple listens to.\n */\nconst EVENTS = [\n 'click', 'contextmenu', 'pointercancel', 'pointerdown', 'pointerenter',\n 'pointerleave', 'pointerup'\n];\n\n/**\n * Delay reacting to touch so that we do not show the ripple for a swipe or\n * scroll interaction.\n */\nconst TOUCH_DELAY_MS = 150;\n\n/**\n * A ripple component.\n */\nexport class Ripple extends LitElement implements Attachable {\n /**\n * Disables the ripple.\n */\n @property({type: Boolean, reflect: true}) disabled = false;\n\n get htmlFor() {\n return this.attachableController.htmlFor;\n }\n\n set htmlFor(htmlFor: string|null) {\n this.attachableController.htmlFor = htmlFor;\n }\n\n get control() {\n return this.attachableController.control;\n }\n\n @state() private hovered = false;\n @state() private pressed = false;\n\n @query('.surface') private readonly mdRoot!: HTMLElement|null;\n private rippleSize = '';\n private rippleScale = '';\n private initialSize = 0;\n private growAnimation?: Animation;\n private state = State.INACTIVE;\n private rippleStartEvent?: PointerEvent;\n private checkBoundsAfterContextMenu = false;\n private readonly attachableController =\n new AttachableController(this, this.onControlChange.bind(this));\n\n attach(control: HTMLElement) {\n this.attachableController.attach(control);\n }\n\n detach() {\n this.attachableController.detach();\n }\n\n protected override render() {\n const classes = {\n 'hovered': this.hovered,\n 'pressed': this.pressed,\n };\n\n return html`<div class=\"surface ${classMap(classes)}\"></div>`;\n }\n\n protected override update(changedProps: PropertyValues<this>) {\n if (changedProps.has('disabled') && this.disabled) {\n this.hovered = false;\n this.pressed = false;\n }\n super.update(changedProps);\n }\n\n /**\n * TODO(b/269799771): make private\n * @private only public for slider\n */\n handlePointerenter(event: PointerEvent) {\n if (!this.shouldReactToEvent(event)) {\n return;\n }\n\n this.hovered = true;\n }\n\n /**\n * TODO(b/269799771): make private\n * @private only public for slider\n */\n handlePointerleave(event: PointerEvent) {\n if (!this.shouldReactToEvent(event)) {\n return;\n }\n\n this.hovered = false;\n\n // release a held mouse or pen press that moves outside the element\n if (this.state !== State.INACTIVE) {\n this.endPressAnimation();\n }\n }\n\n private handlePointerup(event: PointerEvent) {\n if (!this.shouldReactToEvent(event)) {\n return;\n }\n\n if (this.state === State.HOLDING) {\n this.state = State.WAITING_FOR_CLICK;\n return;\n }\n\n if (this.state === State.TOUCH_DELAY) {\n this.state = State.WAITING_FOR_CLICK;\n this.startPressAnimation(this.rippleStartEvent);\n return;\n }\n }\n\n private async handlePointerdown(event: PointerEvent) {\n if (!this.shouldReactToEvent(event)) {\n return;\n }\n\n this.rippleStartEvent = event;\n if (!this.isTouch(event)) {\n this.state = State.WAITING_FOR_CLICK;\n this.startPressAnimation(event);\n return;\n }\n\n // after a longpress contextmenu event, an extra `pointerdown` can be\n // dispatched to the pressed element. Check that the down is within\n // bounds of the element in this case.\n if (this.checkBoundsAfterContextMenu && !this.inBounds(event)) {\n return;\n }\n\n this.checkBoundsAfterContextMenu = false;\n\n // Wait for a hold after touch delay\n this.state = State.TOUCH_DELAY;\n await new Promise(resolve => {\n setTimeout(resolve, TOUCH_DELAY_MS);\n });\n\n if (this.state !== State.TOUCH_DELAY) {\n return;\n }\n\n this.state = State.HOLDING;\n this.startPressAnimation(event);\n }\n\n private handleClick() {\n // Click is a MouseEvent in Firefox and Safari, so we cannot use\n // `shouldReactToEvent`\n if (this.disabled) {\n return;\n }\n\n if (this.state === State.WAITING_FOR_CLICK) {\n this.endPressAnimation();\n return;\n }\n\n if (this.state === State.INACTIVE) {\n // keyboard synthesized click event\n this.startPressAnimation();\n this.endPressAnimation();\n }\n }\n\n private handlePointercancel(event: PointerEvent) {\n if (!this.shouldReactToEvent(event)) {\n return;\n }\n\n this.endPressAnimation();\n }\n\n private handleContextmenu() {\n if (this.disabled) {\n return;\n }\n\n this.checkBoundsAfterContextMenu = true;\n this.endPressAnimation();\n }\n\n private determineRippleSize() {\n const {height, width} = this.getBoundingClientRect();\n const maxDim = Math.max(height, width);\n const softEdgeSize =\n Math.max(SOFT_EDGE_CONTAINER_RATIO * maxDim, SOFT_EDGE_MINIMUM_SIZE);\n\n const initialSize = Math.floor(maxDim * INITIAL_ORIGIN_SCALE);\n const hypotenuse = Math.sqrt(width ** 2 + height ** 2);\n const maxRadius = hypotenuse + PADDING;\n\n this.initialSize = initialSize;\n this.rippleScale = `${(maxRadius + softEdgeSize) / initialSize}`;\n this.rippleSize = `${initialSize}px`;\n }\n\n private getNormalizedPointerEventCoords(pointerEvent: PointerEvent):\n {x: number, y: number} {\n const {scrollX, scrollY} = window;\n const {left, top} = this.getBoundingClientRect();\n const documentX = scrollX + left;\n const documentY = scrollY + top;\n const {pageX, pageY} = pointerEvent;\n return {x: pageX - documentX, y: pageY - documentY};\n }\n\n private getTranslationCoordinates(positionEvent?: Event) {\n const {height, width} = this.getBoundingClientRect();\n // end in the center\n const endPoint = {\n x: (width - this.initialSize) / 2,\n y: (height - this.initialSize) / 2,\n };\n\n let startPoint;\n if (positionEvent instanceof PointerEvent) {\n startPoint = this.getNormalizedPointerEventCoords(positionEvent);\n } else {\n startPoint = {\n x: width / 2,\n y: height / 2,\n };\n }\n\n // center around start point\n startPoint = {\n x: startPoint.x - (this.initialSize / 2),\n y: startPoint.y - (this.initialSize / 2),\n };\n\n return {startPoint, endPoint};\n }\n\n private startPressAnimation(positionEvent?: Event) {\n if (!this.mdRoot) {\n return;\n }\n\n this.pressed = true;\n this.growAnimation?.cancel();\n this.determineRippleSize();\n const {startPoint, endPoint} =\n this.getTranslationCoordinates(positionEvent);\n const translateStart = `${startPoint.x}px, ${startPoint.y}px`;\n const translateEnd = `${endPoint.x}px, ${endPoint.y}px`;\n\n this.growAnimation = this.mdRoot.animate(\n {\n top: [0, 0],\n left: [0, 0],\n height: [this.rippleSize, this.rippleSize],\n width: [this.rippleSize, this.rippleSize],\n transform: [\n `translate(${translateStart}) scale(1)`,\n `translate(${translateEnd}) scale(${this.rippleScale})`\n ],\n },\n {\n pseudoElement: PRESS_PSEUDO,\n duration: PRESS_GROW_MS,\n easing: EASING.STANDARD,\n fill: ANIMATION_FILL\n });\n }\n\n private async endPressAnimation() {\n this.state = State.INACTIVE;\n const animation = this.growAnimation;\n const pressAnimationPlayState = animation?.currentTime ?? Infinity;\n // TODO: go/ts51upgrade - Auto-added to unblock TS5.1 migration.\n // TS2365: Operator '>=' cannot be applied to types 'CSSNumberish' and\n // 'number'.\n // @ts-ignore\n if (pressAnimationPlayState >= MINIMUM_PRESS_MS) {\n this.pressed = false;\n return;\n }\n\n await new Promise(resolve => {\n // TODO: go/ts51upgrade - Auto-added to unblock TS5.1 migration.\n // TS2363: The right-hand side of an arithmetic operation must be of\n // type 'any', 'number', 'bigint' or an enum type.\n // @ts-ignore\n setTimeout(resolve, MINIMUM_PRESS_MS - pressAnimationPlayState);\n });\n\n if (this.growAnimation !== animation) {\n // A new press animation was started. The old animation was canceled and\n // should not finish the pressed state.\n return;\n }\n\n this.pressed = false;\n }\n\n /**\n * Returns `true` if\n * - the ripple element is enabled\n * - the pointer is primary for the input type\n * - the pointer is the pointer that started the interaction, or will start\n * the interaction\n * - the pointer is a touch, or the pointer state has the primary button\n * held, or the pointer is hovering\n */\n private shouldReactToEvent(event: PointerEvent) {\n if (this.disabled || !event.isPrimary) {\n return false;\n }\n\n if (this.rippleStartEvent &&\n this.rippleStartEvent.pointerId !== event.pointerId) {\n return false;\n }\n\n if (event.type === 'pointerenter' || event.type === 'pointerleave') {\n return !this.isTouch(event);\n }\n\n const isPrimaryButton = event.buttons === 1;\n return this.isTouch(event) || isPrimaryButton;\n }\n\n /**\n * Check if the event is within the bounds of the element.\n *\n * This is only needed for the \"stuck\" contextmenu longpress on Chrome.\n */\n private inBounds({x, y}: PointerEvent) {\n const {top, left, bottom, right} = this.getBoundingClientRect();\n return x >= left && x <= right && y >= top && y <= bottom;\n }\n\n private isTouch({pointerType}: PointerEvent) {\n return pointerType === 'touch';\n }\n\n /** @private */\n async handleEvent(event: Event) {\n switch (event.type) {\n case 'click':\n this.handleClick();\n break;\n case 'contextmenu':\n this.handleContextmenu();\n break;\n case 'pointercancel':\n this.handlePointercancel(event as PointerEvent);\n break;\n case 'pointerdown':\n await this.handlePointerdown(event as PointerEvent);\n break;\n case 'pointerenter':\n this.handlePointerenter(event as PointerEvent);\n break;\n case 'pointerleave':\n this.handlePointerleave(event as PointerEvent);\n break;\n case 'pointerup':\n this.handlePointerup(event as PointerEvent);\n break;\n default:\n break;\n }\n }\n\n private onControlChange(prev: HTMLElement|null, next: HTMLElement|null) {\n for (const event of EVENTS) {\n prev?.removeEventListener(event, this);\n next?.addEventListener(event, this);\n }\n }\n}\n"]}
@@ -3,7 +3,7 @@
3
3
  * Copyright 2022 Google LLC
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
- import { Ripple } from './lib/ripple.js';
6
+ import { Ripple } from './internal/ripple.js';
7
7
  declare global {
8
8
  interface HTMLElementTagNameMap {
9
9
  'md-ripple': MdRipple;
package/ripple/ripple.js CHANGED
@@ -5,8 +5,8 @@
5
5
  */
6
6
  import { __decorate } from "tslib";
7
7
  import { customElement } from 'lit/decorators.js';
8
- import { Ripple } from './lib/ripple.js';
9
- import { styles } from './lib/ripple-styles.css.js';
8
+ import { Ripple } from './internal/ripple.js';
9
+ import { styles } from './internal/ripple-styles.css.js';
10
10
  /**
11
11
  * @summary Ripples, also known as state layers, are visual indicators used to
12
12
  * communicate the status of a component or interactive element.
@@ -1 +1 @@
1
- {"version":3,"file":"ripple.js","sourceRoot":"","sources":["ripple.ts"],"names":[],"mappings":"AAAA;;;;GAIG;;AAEH,OAAO,EAAC,aAAa,EAAC,MAAM,mBAAmB,CAAC;AAEhD,OAAO,EAAC,MAAM,EAAC,MAAM,iBAAiB,CAAC;AACvC,OAAO,EAAC,MAAM,EAAC,MAAM,4BAA4B,CAAC;AAQlD;;;;;;;;;;;;GAYG;AAEI,IAAM,QAAQ,GAAd,MAAM,QAAS,SAAQ,MAAM;;AAClB,eAAM,GAAG,CAAC,MAAM,CAAC,CAAC;AADvB,QAAQ;IADpB,aAAa,CAAC,WAAW,CAAC;GACd,QAAQ,CAEpB;SAFY,QAAQ","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 {Ripple} from './lib/ripple.js';\nimport {styles} from './lib/ripple-styles.css.js';\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'md-ripple': MdRipple;\n }\n}\n\n/**\n * @summary Ripples, also known as state layers, are visual indicators used to\n * communicate the status of a component or interactive element.\n *\n * @description A state layer is a semi-transparent covering on an element that\n * indicates its state. State layers provide a systematic approach to\n * visualizing states by using opacity. A layer can be applied to an entire\n * element or in a circular shape and only one state layer can be applied at a\n * given time.\n *\n * @final\n * @suppress {visibility}\n */\n@customElement('md-ripple')\nexport class MdRipple extends Ripple {\n static override styles = [styles];\n}\n"]}
1
+ {"version":3,"file":"ripple.js","sourceRoot":"","sources":["ripple.ts"],"names":[],"mappings":"AAAA;;;;GAIG;;AAEH,OAAO,EAAC,aAAa,EAAC,MAAM,mBAAmB,CAAC;AAEhD,OAAO,EAAC,MAAM,EAAC,MAAM,sBAAsB,CAAC;AAC5C,OAAO,EAAC,MAAM,EAAC,MAAM,iCAAiC,CAAC;AAQvD;;;;;;;;;;;;GAYG;AAEI,IAAM,QAAQ,GAAd,MAAM,QAAS,SAAQ,MAAM;;AAClB,eAAM,GAAG,CAAC,MAAM,CAAC,CAAC;AADvB,QAAQ;IADpB,aAAa,CAAC,WAAW,CAAC;GACd,QAAQ,CAEpB;SAFY,QAAQ","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 {Ripple} from './internal/ripple.js';\nimport {styles} from './internal/ripple-styles.css.js';\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'md-ripple': MdRipple;\n }\n}\n\n/**\n * @summary Ripples, also known as state layers, are visual indicators used to\n * communicate the status of a component or interactive element.\n *\n * @description A state layer is a semi-transparent covering on an element that\n * indicates its state. State layers provide a systematic approach to\n * visualizing states by using opacity. A layer can be applied to an entire\n * element or in a circular shape and only one state layer can be applied at a\n * given time.\n *\n * @final\n * @suppress {visibility}\n */\n@customElement('md-ripple')\nexport class MdRipple extends Ripple {\n static override styles = [styles];\n}\n"]}
@@ -3,4 +3,4 @@
3
3
  // SPDX-License-Identifier: Apache-2.0
4
4
  //
5
5
 
6
- @forward './lib/filled-select' show theme;
6
+ @forward './internal/filled-select' show theme;
@@ -3,4 +3,4 @@
3
3
  // SPDX-License-Identifier: Apache-2.0
4
4
  //
5
5
 
6
- @forward './lib/outlined-select' show theme;
6
+ @forward './internal/outlined-select' show theme;
@@ -3,7 +3,7 @@
3
3
  * Copyright 2023 Google LLC
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
- import { FilledSelect } from './lib/filled-select.js';
6
+ import { FilledSelect } from './internal/filled-select.js';
7
7
  declare global {
8
8
  interface HTMLElementTagNameMap {
9
9
  'md-filled-select': MdFilledSelect;
@@ -5,10 +5,10 @@
5
5
  */
6
6
  import { __decorate } from "tslib";
7
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';
8
+ import { styles as filledForcedColorsStyles } from './internal/filled-forced-colors-styles.css.js';
9
+ import { FilledSelect } from './internal/filled-select.js';
10
+ import { styles } from './internal/filled-select-styles.css.js';
11
+ import { styles as sharedStyles } from './internal/shared-styles.css.js';
12
12
  /**
13
13
  * @summary
14
14
  * Select menus display a list of choices on temporary surfaces and display the
@@ -1 +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"]}
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,+CAA+C,CAAC;AACjG,OAAO,EAAC,YAAY,EAAC,MAAM,6BAA6B,CAAC;AACzD,OAAO,EAAC,MAAM,EAAC,MAAM,wCAAwC,CAAC;AAC9D,OAAO,EAAC,MAAM,IAAI,YAAY,EAAC,MAAM,iCAAiC,CAAC;AAQvE;;;;;;;;;;;;;;;;;;;;;;;;;;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 './internal/filled-forced-colors-styles.css.js';\nimport {FilledSelect} from './internal/filled-select.js';\nimport {styles} from './internal/filled-select-styles.css.js';\nimport {styles as sharedStyles} from './internal/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"]}
@@ -3,10 +3,10 @@
3
3
  * Copyright 2023 Google LLC
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
- import { Field } from '../field/lib/field.js';
6
+ import { Field } from '../field/internal/field.js';
7
7
  import { Harness } from '../testing/harness.js';
8
- import { Select } from './lib/select.js';
9
- import { SelectOptionHarness } from './lib/selectoption/harness.js';
8
+ import { Select } from './internal/select.js';
9
+ import { SelectOptionHarness } from './internal/selectoption/harness.js';
10
10
  /**
11
11
  * Test harness for menu.
12
12
  */
package/select/harness.js CHANGED
@@ -5,7 +5,7 @@
5
5
  */
6
6
  import { FieldHarness } from '../field/harness.js';
7
7
  import { Harness } from '../testing/harness.js';
8
- import { SelectOptionHarness } from './lib/selectoption/harness.js';
8
+ import { SelectOptionHarness } from './internal/selectoption/harness.js';
9
9
  /**
10
10
  * Test harness for menu.
11
11
  */
@@ -1 +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,CAAC,MAAM,IAAI,CAAC,QAAQ,EAAE,CAAC,KAAK,CAAC,CAAC,qBAAqB,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC;IACjE,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 (await this.getItems()[index].getInteractiveElement()).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"]}
1
+ {"version":3,"file":"harness.js","sourceRoot":"","sources":["harness.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAIH,OAAO,EAAC,YAAY,EAAC,MAAM,qBAAqB,CAAC;AAEjD,OAAO,EAAC,OAAO,EAAC,MAAM,uBAAuB,CAAC;AAG9C,OAAO,EAAC,mBAAmB,EAAC,MAAM,oCAAoC,CAAC;AAEvE;;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,GACT,MAAM,CAAC,IAAI,mBAAmB,CAAC,KAAK,CAAC,CAAC,CAAC,qBAAqB,EAAE,CAAC;QACnE,IAAI,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC;IACnC,CAAC;IAED,uDAAuD;IACvD,QAAQ;QACN,OAAO,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,CAC3B,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,mBAAmB,CAAC,IAA8B,CAAC,CAAC,CAAC;IACzE,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,CAAC,MAAM,IAAI,CAAC,QAAQ,EAAE,CAAC,KAAK,CAAC,CAAC,qBAAqB,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC;IACjE,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 {LitElement} from 'lit';\n\nimport {FieldHarness} from '../field/harness.js';\nimport {Field} from '../field/internal/field.js';\nimport {Harness} from '../testing/harness.js';\n\nimport {Select} from './internal/select.js';\nimport {SelectOptionHarness} from './internal/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 =\n 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(\n (item) => new SelectOptionHarness(item as typeof item&LitElement));\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 (await this.getItems()[index].getInteractiveElement()).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,52 @@
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/internal/elevation';
13
+ @use '../../internal/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
+ md-menu {
35
+ min-width: inherit;
36
+ width: inherit;
37
+ max-width: inherit;
38
+ }
39
+
40
+ .field,
41
+ .select {
42
+ width: 100%;
43
+ }
44
+
45
+ :host {
46
+ display: inline-flex;
47
+ }
48
+
49
+ :host([disabled]) {
50
+ pointer-events: none;
51
+ }
52
+ }