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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1187) hide show
  1. package/README.md +9 -9
  2. package/all.d.ts +93 -0
  3. package/all.js +102 -0
  4. package/all.js.map +1 -0
  5. package/button/_elevated-button.scss +1 -1
  6. package/button/_filled-button.scss +1 -1
  7. package/button/_filled-tonal-button.scss +6 -0
  8. package/button/_outlined-button.scss +1 -1
  9. package/button/_text-button.scss +1 -1
  10. package/button/elevated-button.d.ts +1 -1
  11. package/button/elevated-button.js +4 -4
  12. package/button/elevated-button.js.map +1 -1
  13. package/button/filled-button.d.ts +1 -1
  14. package/button/filled-button.js +4 -4
  15. package/button/filled-button.js.map +1 -1
  16. package/button/filled-tonal-button.d.ts +35 -0
  17. package/button/filled-tonal-button.js +40 -0
  18. package/button/filled-tonal-button.js.map +1 -0
  19. package/button/harness.d.ts +1 -1
  20. package/button/harness.js +1 -1
  21. package/button/harness.js.map +1 -1
  22. package/button/internal/_elevation.scss +65 -0
  23. package/button/internal/_filled-tonal-button.scss +61 -0
  24. package/button/internal/_icon.scss +39 -0
  25. package/button/internal/_outlined-button.scss +104 -0
  26. package/button/internal/_shared.scss +159 -0
  27. package/button/internal/_touch-target.scss +19 -0
  28. package/button/internal/button.d.ts +67 -0
  29. package/button/internal/button.js +157 -0
  30. package/button/internal/button.js.map +1 -0
  31. package/button/internal/elevated-button.d.ts +13 -0
  32. package/button/internal/elevated-button.js +17 -0
  33. package/button/internal/elevated-button.js.map +1 -0
  34. package/button/internal/elevated-styles.css.js +9 -0
  35. package/button/internal/elevated-styles.css.js.map +1 -0
  36. package/button/internal/filled-button.d.ts +13 -0
  37. package/button/internal/filled-button.js +17 -0
  38. package/button/internal/filled-button.js.map +1 -0
  39. package/button/internal/filled-styles.css.js +9 -0
  40. package/button/internal/filled-styles.css.js.map +1 -0
  41. package/button/internal/filled-tonal-button.d.ts +13 -0
  42. package/button/internal/filled-tonal-button.js +17 -0
  43. package/button/internal/filled-tonal-button.js.map +1 -0
  44. package/button/internal/filled-tonal-styles.css.js +9 -0
  45. package/button/internal/filled-tonal-styles.css.js.map +1 -0
  46. package/button/internal/filled-tonal-styles.scss +10 -0
  47. package/button/internal/outlined-button.d.ts +12 -0
  48. package/button/internal/outlined-button.js +16 -0
  49. package/button/internal/outlined-button.js.map +1 -0
  50. package/button/internal/outlined-styles.css.js +9 -0
  51. package/button/internal/outlined-styles.css.js.map +1 -0
  52. package/button/internal/shared-elevation-styles.css.js +9 -0
  53. package/button/internal/shared-elevation-styles.css.js.map +1 -0
  54. package/button/internal/shared-styles.css.js +9 -0
  55. package/button/internal/shared-styles.css.js.map +1 -0
  56. package/button/internal/text-button.d.ts +11 -0
  57. package/button/internal/text-button.js +12 -0
  58. package/button/internal/text-button.js.map +1 -0
  59. package/button/internal/text-styles.css.js +9 -0
  60. package/button/internal/text-styles.css.js.map +1 -0
  61. package/button/outlined-button.d.ts +1 -1
  62. package/button/outlined-button.js +3 -3
  63. package/button/outlined-button.js.map +1 -1
  64. package/button/text-button.d.ts +1 -1
  65. package/button/text-button.js +3 -3
  66. package/button/text-button.js.map +1 -1
  67. package/checkbox/_checkbox.scss +1 -1
  68. package/checkbox/checkbox.d.ts +1 -1
  69. package/checkbox/checkbox.js +3 -4
  70. package/checkbox/checkbox.js.map +1 -1
  71. package/checkbox/harness.d.ts +1 -1
  72. package/checkbox/harness.js.map +1 -1
  73. package/checkbox/internal/_checkbox.scss +415 -0
  74. package/checkbox/internal/checkbox-styles.css.js +9 -0
  75. package/checkbox/internal/checkbox-styles.css.js.map +1 -0
  76. package/checkbox/internal/checkbox.d.ts +137 -0
  77. package/checkbox/internal/checkbox.js +299 -0
  78. package/checkbox/internal/checkbox.js.map +1 -0
  79. package/chips/_assist-chip.scss +1 -1
  80. package/chips/_filter-chip.scss +1 -1
  81. package/chips/_input-chip.scss +1 -1
  82. package/chips/_suggestion-chip.scss +1 -1
  83. package/chips/assist-chip.d.ts +1 -1
  84. package/chips/assist-chip.js +5 -5
  85. package/chips/assist-chip.js.map +1 -1
  86. package/chips/chip-set.d.ts +1 -1
  87. package/chips/chip-set.js +2 -2
  88. package/chips/chip-set.js.map +1 -1
  89. package/chips/filter-chip.d.ts +1 -1
  90. package/chips/filter-chip.js +7 -7
  91. package/chips/filter-chip.js.map +1 -1
  92. package/chips/harness.d.ts +1 -1
  93. package/chips/harness.js.map +1 -1
  94. package/chips/input-chip.d.ts +1 -1
  95. package/chips/input-chip.js +6 -6
  96. package/chips/input-chip.js.map +1 -1
  97. package/chips/internal/_shared.scss +200 -0
  98. package/chips/internal/_trailing-icon.scss +80 -0
  99. package/chips/internal/chip-set.js +163 -0
  100. package/chips/internal/chip-set.js.map +1 -0
  101. package/chips/internal/chip.d.ts +45 -0
  102. package/chips/internal/chip.js +93 -0
  103. package/chips/internal/chip.js.map +1 -0
  104. package/chips/internal/filter-chip.d.ts +33 -0
  105. package/chips/internal/filter-chip.js +109 -0
  106. package/chips/internal/filter-chip.js.map +1 -0
  107. package/chips/internal/shared-styles.css.js +9 -0
  108. package/chips/internal/shared-styles.css.js.map +1 -0
  109. package/chips/internal/trailing-icon-styles.css.js +9 -0
  110. package/chips/internal/trailing-icon-styles.css.js.map +1 -0
  111. package/chips/internal/trailing-icons.d.ts +15 -0
  112. package/chips/internal/trailing-icons.js +38 -0
  113. package/chips/internal/trailing-icons.js.map +1 -0
  114. package/chips/suggestion-chip.d.ts +1 -1
  115. package/chips/suggestion-chip.js +5 -5
  116. package/chips/suggestion-chip.js.map +1 -1
  117. package/common.d.ts +57 -0
  118. package/common.js +66 -0
  119. package/common.js.map +1 -0
  120. package/dialog/_dialog.scss +1 -1
  121. package/dialog/dialog.d.ts +1 -1
  122. package/dialog/dialog.js +2 -2
  123. package/dialog/dialog.js.map +1 -1
  124. package/dialog/harness.d.ts +2 -7
  125. package/dialog/harness.js +2 -43
  126. package/dialog/harness.js.map +1 -1
  127. package/dialog/internal/_dialog.scss +260 -0
  128. package/dialog/internal/animations.d.ts +47 -0
  129. package/dialog/internal/animations.js +117 -0
  130. package/dialog/internal/animations.js.map +1 -0
  131. package/dialog/internal/dialog-styles.css.js +9 -0
  132. package/dialog/internal/dialog-styles.css.js.map +1 -0
  133. package/dialog/internal/dialog.d.ts +103 -0
  134. package/dialog/internal/dialog.js +338 -0
  135. package/dialog/internal/dialog.js.map +1 -0
  136. package/divider/_divider.scss +1 -1
  137. package/divider/divider.d.ts +1 -1
  138. package/divider/divider.js +2 -2
  139. package/divider/divider.js.map +1 -1
  140. package/elevation/_elevation.scss +1 -1
  141. package/elevation/elevation.d.ts +1 -1
  142. package/elevation/elevation.js +2 -2
  143. package/elevation/elevation.js.map +1 -1
  144. package/fab/_fab.scss +2 -2
  145. package/fab/branded-fab.d.ts +3 -3
  146. package/fab/branded-fab.js +4 -4
  147. package/fab/branded-fab.js.map +1 -1
  148. package/fab/fab.d.ts +3 -3
  149. package/fab/fab.js +4 -4
  150. package/fab/fab.js.map +1 -1
  151. package/fab/harness.d.ts +1 -1
  152. package/fab/harness.js.map +1 -1
  153. package/fab/internal/_fab.scss +260 -0
  154. package/fab/internal/_shared.scss +239 -0
  155. package/fab/internal/fab-styles.css.js +9 -0
  156. package/fab/internal/fab-styles.css.js.map +1 -0
  157. package/fab/internal/fab.d.ts +26 -0
  158. package/fab/internal/fab.js.map +1 -0
  159. package/fab/internal/forced-colors-styles.css.js +9 -0
  160. package/fab/internal/forced-colors-styles.css.js.map +1 -0
  161. package/fab/internal/forced-colors-styles.scss +29 -0
  162. package/fab/internal/shared-styles.css.js +9 -0
  163. package/fab/internal/shared-styles.css.js.map +1 -0
  164. package/fab/internal/shared.d.ts +51 -0
  165. package/fab/internal/shared.js +110 -0
  166. package/fab/internal/shared.js.map +1 -0
  167. package/field/_filled-field.scss +1 -1
  168. package/field/_outlined-field.scss +1 -1
  169. package/field/filled-field.d.ts +1 -1
  170. package/field/filled-field.js +3 -3
  171. package/field/filled-field.js.map +1 -1
  172. package/field/harness.d.ts +1 -1
  173. package/field/harness.js.map +1 -1
  174. package/field/internal/_content.scss +191 -0
  175. package/field/internal/_filled-field.scss +203 -0
  176. package/field/internal/_label.scss +91 -0
  177. package/field/internal/_outlined-field.scss +323 -0
  178. package/field/internal/_shared.scss +70 -0
  179. package/field/internal/_supporting-text.scss +47 -0
  180. package/field/internal/field.d.ts +64 -0
  181. package/field/internal/field.js +318 -0
  182. package/field/internal/field.js.map +1 -0
  183. package/field/internal/filled-styles.css.js +9 -0
  184. package/field/internal/filled-styles.css.js.map +1 -0
  185. package/field/internal/outlined-styles.css.js +9 -0
  186. package/field/internal/outlined-styles.css.js.map +1 -0
  187. package/field/internal/shared-styles.css.js +9 -0
  188. package/field/internal/shared-styles.css.js.map +1 -0
  189. package/field/outlined-field.d.ts +1 -1
  190. package/field/outlined-field.js +3 -3
  191. package/field/outlined-field.js.map +1 -1
  192. package/focus/_focus-ring.scss +1 -1
  193. package/focus/internal/_focus-ring.scss +139 -0
  194. package/focus/internal/focus-ring-styles.css.js +9 -0
  195. package/focus/internal/focus-ring-styles.css.js.map +1 -0
  196. package/focus/internal/focus-ring.d.ts +35 -0
  197. package/focus/internal/focus-ring.js +89 -0
  198. package/focus/internal/focus-ring.js.map +1 -0
  199. package/focus/md-focus-ring.d.ts +20 -0
  200. package/focus/md-focus-ring.js +23 -0
  201. package/focus/md-focus-ring.js.map +1 -0
  202. package/icon/_icon.scss +1 -1
  203. package/icon/icon.d.ts +1 -1
  204. package/icon/icon.js +2 -2
  205. package/icon/icon.js.map +1 -1
  206. package/icon/internal/_icon.scss +61 -0
  207. package/icon/internal/icon-styles.css.js +9 -0
  208. package/icon/internal/icon-styles.css.js.map +1 -0
  209. package/icon/internal/icon.d.ts +13 -0
  210. package/icon/internal/icon.js +24 -0
  211. package/icon/internal/icon.js.map +1 -0
  212. package/iconbutton/_filled-icon-button.scss +1 -1
  213. package/iconbutton/_filled-tonal-icon-button.scss +1 -1
  214. package/iconbutton/_icon-button.scss +6 -0
  215. package/iconbutton/_outlined-icon-button.scss +1 -1
  216. package/iconbutton/filled-icon-button.d.ts +1 -1
  217. package/iconbutton/filled-icon-button.js +3 -3
  218. package/iconbutton/filled-icon-button.js.map +1 -1
  219. package/iconbutton/filled-tonal-icon-button.d.ts +1 -1
  220. package/iconbutton/filled-tonal-icon-button.js +3 -3
  221. package/iconbutton/filled-tonal-icon-button.js.map +1 -1
  222. package/iconbutton/harness.d.ts +1 -1
  223. package/iconbutton/harness.js.map +1 -1
  224. package/iconbutton/icon-button.d.ts +34 -0
  225. package/iconbutton/icon-button.js +39 -0
  226. package/iconbutton/icon-button.js.map +1 -0
  227. package/iconbutton/internal/_filled-icon-button.scss +171 -0
  228. package/iconbutton/internal/_filled-tonal-icon-button.scss +173 -0
  229. package/iconbutton/internal/_icon-button.scss +117 -0
  230. package/iconbutton/internal/_outlined-icon-button.scss +178 -0
  231. package/iconbutton/internal/_shared.scss +103 -0
  232. package/iconbutton/internal/filled-styles.css.js +9 -0
  233. package/iconbutton/internal/filled-styles.css.js.map +1 -0
  234. package/iconbutton/internal/filled-tonal-styles.css.js +9 -0
  235. package/iconbutton/internal/filled-tonal-styles.css.js.map +1 -0
  236. package/iconbutton/internal/icon-button.d.ts +68 -0
  237. package/iconbutton/internal/icon-button.js +181 -0
  238. package/iconbutton/internal/icon-button.js.map +1 -0
  239. package/iconbutton/internal/outlined-styles.css.js +9 -0
  240. package/iconbutton/internal/outlined-styles.css.js.map +1 -0
  241. package/iconbutton/internal/shared-styles.css.js +9 -0
  242. package/iconbutton/internal/shared-styles.css.js.map +1 -0
  243. package/iconbutton/internal/standard-styles.css.js +9 -0
  244. package/iconbutton/internal/standard-styles.css.js.map +1 -0
  245. package/iconbutton/internal/standard-styles.scss +10 -0
  246. package/iconbutton/outlined-icon-button.d.ts +1 -1
  247. package/iconbutton/outlined-icon-button.js +3 -3
  248. package/iconbutton/outlined-icon-button.js.map +1 -1
  249. package/internal/aria/delegate.d.ts +1 -1
  250. package/internal/aria/delegate.js +1 -1
  251. package/internal/aria/delegate.js.map +1 -1
  252. package/internal/controller/element-internals.d.ts +35 -0
  253. package/internal/controller/element-internals.js +24 -0
  254. package/internal/controller/element-internals.js.map +1 -0
  255. package/internal/controller/form-submitter.d.ts +60 -0
  256. package/internal/controller/form-submitter.js +69 -0
  257. package/internal/controller/form-submitter.js.map +1 -0
  258. package/labs/badge/_badge.scss +1 -1
  259. package/labs/badge/badge.d.ts +1 -1
  260. package/labs/badge/badge.js +2 -2
  261. package/labs/badge/badge.js.map +1 -1
  262. package/labs/navigationbar/_navigation-bar.scss +1 -1
  263. package/labs/navigationbar/harness.d.ts +1 -1
  264. package/labs/navigationbar/harness.js.map +1 -1
  265. package/labs/navigationbar/internal/constants.d.ts +17 -0
  266. package/labs/navigationbar/internal/constants.js.map +1 -0
  267. package/labs/navigationbar/internal/navigation-bar.d.ts +27 -0
  268. package/labs/navigationbar/internal/navigation-bar.js +138 -0
  269. package/labs/navigationbar/internal/navigation-bar.js.map +1 -0
  270. package/labs/navigationbar/internal/state.d.ts +23 -0
  271. package/labs/navigationbar/internal/state.js.map +1 -0
  272. package/labs/navigationbar/navigation-bar.d.ts +1 -1
  273. package/labs/navigationbar/navigation-bar.js +2 -2
  274. package/labs/navigationbar/navigation-bar.js.map +1 -1
  275. package/labs/navigationdrawer/_navigation-drawer-modal.scss +1 -1
  276. package/labs/navigationdrawer/_navigation-drawer.scss +1 -1
  277. package/labs/navigationdrawer/internal/navigation-drawer-modal.js +81 -0
  278. package/labs/navigationdrawer/internal/navigation-drawer-modal.js.map +1 -0
  279. package/labs/navigationdrawer/internal/navigation-drawer.js +64 -0
  280. package/labs/navigationdrawer/internal/navigation-drawer.js.map +1 -0
  281. package/labs/navigationdrawer/navigation-drawer-modal.d.ts +1 -1
  282. package/labs/navigationdrawer/navigation-drawer-modal.js +3 -3
  283. package/labs/navigationdrawer/navigation-drawer-modal.js.map +1 -1
  284. package/labs/navigationdrawer/navigation-drawer.d.ts +1 -1
  285. package/labs/navigationdrawer/navigation-drawer.js +3 -3
  286. package/labs/navigationdrawer/navigation-drawer.js.map +1 -1
  287. package/labs/navigationtab/_navigation-tab.scss +1 -1
  288. package/labs/navigationtab/harness.d.ts +1 -1
  289. package/labs/navigationtab/harness.js.map +1 -1
  290. package/labs/navigationtab/internal/_navigation-tab.scss +259 -0
  291. package/labs/navigationtab/internal/navigation-tab-styles.css.js +9 -0
  292. package/labs/navigationtab/internal/navigation-tab-styles.css.js.map +1 -0
  293. package/labs/navigationtab/internal/navigation-tab.d.ts +30 -0
  294. package/labs/navigationtab/internal/navigation-tab.js +117 -0
  295. package/labs/navigationtab/internal/navigation-tab.js.map +1 -0
  296. package/labs/navigationtab/navigation-tab.d.ts +1 -1
  297. package/labs/navigationtab/navigation-tab.js +2 -2
  298. package/labs/navigationtab/navigation-tab.js.map +1 -1
  299. package/labs/segmentedbutton/internal/outlined-styles.css.js +9 -0
  300. package/labs/segmentedbutton/internal/outlined-styles.css.js.map +1 -0
  301. package/labs/segmentedbutton/internal/segmented-button.d.ts +44 -0
  302. package/labs/segmentedbutton/internal/segmented-button.js +157 -0
  303. package/labs/segmentedbutton/internal/segmented-button.js.map +1 -0
  304. package/labs/segmentedbutton/outlined-segmented-button.d.ts +1 -1
  305. package/labs/segmentedbutton/outlined-segmented-button.js +3 -3
  306. package/labs/segmentedbutton/outlined-segmented-button.js.map +1 -1
  307. package/labs/segmentedbuttonset/internal/outlined-styles.css.js +9 -0
  308. package/labs/segmentedbuttonset/internal/outlined-styles.css.js.map +1 -0
  309. package/labs/segmentedbuttonset/internal/segmented-button-set.d.ts +26 -0
  310. package/labs/segmentedbuttonset/internal/segmented-button-set.js +108 -0
  311. package/labs/segmentedbuttonset/internal/segmented-button-set.js.map +1 -0
  312. package/labs/segmentedbuttonset/outlined-segmented-button-set.d.ts +1 -1
  313. package/labs/segmentedbuttonset/outlined-segmented-button-set.js +3 -3
  314. package/labs/segmentedbuttonset/outlined-segmented-button-set.js.map +1 -1
  315. package/list/_list-item.scss +1 -1
  316. package/list/_list.scss +1 -1
  317. package/list/harness.d.ts +3 -3
  318. package/list/harness.js +2 -2
  319. package/list/harness.js.map +1 -1
  320. package/list/internal/list.d.ts +135 -0
  321. package/list/internal/list.js +303 -0
  322. package/list/internal/list.js.map +1 -0
  323. package/list/internal/listitem/_list-item.scss +394 -0
  324. package/list/internal/listitem/list-item-styles.css.js +9 -0
  325. package/list/internal/listitem/list-item-styles.css.js.map +1 -0
  326. package/list/internal/listitem/list-item.d.ts +145 -0
  327. package/list/internal/listitem/list-item.js +263 -0
  328. package/list/internal/listitem/list-item.js.map +1 -0
  329. package/list/list-item.d.ts +2 -2
  330. package/list/list-item.js +3 -3
  331. package/list/list-item.js.map +1 -1
  332. package/list/list.d.ts +1 -1
  333. package/list/list.js +2 -2
  334. package/list/list.js.map +1 -1
  335. package/menu/_menu-item.scss +1 -1
  336. package/menu/_menu.scss +1 -1
  337. package/menu/harness.d.ts +3 -3
  338. package/menu/harness.js +2 -2
  339. package/menu/harness.js.map +1 -1
  340. package/menu/internal/_menu.scss +105 -0
  341. package/menu/internal/menu-styles.css.js +9 -0
  342. package/menu/internal/menu-styles.css.js.map +1 -0
  343. package/menu/internal/menu.d.ts +225 -0
  344. package/menu/internal/menu.js +672 -0
  345. package/menu/internal/menu.js.map +1 -0
  346. package/menu/internal/menuitem/_menu-item.scss +60 -0
  347. package/menu/internal/menuitem/forced-colors-styles.css.js +9 -0
  348. package/menu/internal/menuitem/forced-colors-styles.css.js.map +1 -0
  349. package/menu/internal/menuitem/forced-colors-styles.scss +22 -0
  350. package/menu/internal/menuitem/harness.d.ts +11 -0
  351. package/menu/internal/menuitem/harness.js +12 -0
  352. package/menu/internal/menuitem/harness.js.map +1 -0
  353. package/menu/internal/menuitem/menu-item-styles.css.js +9 -0
  354. package/menu/internal/menuitem/menu-item-styles.css.js.map +1 -0
  355. package/menu/internal/menuitem/menu-item.d.ts +37 -0
  356. package/menu/internal/menuitem/menu-item.js +65 -0
  357. package/menu/internal/menuitem/menu-item.js.map +1 -0
  358. package/menu/internal/shared.d.ts +185 -0
  359. package/menu/internal/shared.js +131 -0
  360. package/menu/internal/shared.js.map +1 -0
  361. package/menu/internal/submenuitem/harness.d.ts +11 -0
  362. package/menu/internal/submenuitem/harness.js +12 -0
  363. package/menu/internal/submenuitem/harness.js.map +1 -0
  364. package/menu/internal/submenuitem/sub-menu-item.d.ts +109 -0
  365. package/menu/internal/submenuitem/sub-menu-item.js +308 -0
  366. package/menu/internal/submenuitem/sub-menu-item.js.map +1 -0
  367. package/menu/internal/typeaheadController.d.ts +157 -0
  368. package/menu/internal/typeaheadController.js +252 -0
  369. package/menu/internal/typeaheadController.js.map +1 -0
  370. package/menu/menu-item.d.ts +3 -3
  371. package/menu/menu-item.js +5 -6
  372. package/menu/menu-item.js.map +1 -1
  373. package/menu/menu.d.ts +4 -4
  374. package/menu/menu.js +3 -4
  375. package/menu/menu.js.map +1 -1
  376. package/menu/sub-menu-item.d.ts +3 -3
  377. package/menu/sub-menu-item.js +5 -6
  378. package/menu/sub-menu-item.js.map +1 -1
  379. package/package.json +3 -4
  380. package/progress/_circular-progress.scss +6 -0
  381. package/progress/_linear-progress.scss +6 -0
  382. package/progress/circular-progress.d.ts +24 -0
  383. package/progress/circular-progress.js +27 -0
  384. package/progress/circular-progress.js.map +1 -0
  385. package/progress/harness.d.ts +20 -0
  386. package/progress/harness.js +27 -0
  387. package/progress/harness.js.map +1 -0
  388. package/progress/internal/_circular-progress.scss +285 -0
  389. package/progress/internal/_linear-progress.scss +379 -0
  390. package/progress/internal/circular-progress-styles.css.js +9 -0
  391. package/progress/internal/circular-progress-styles.css.js.map +1 -0
  392. package/progress/internal/circular-progress.d.ts +14 -0
  393. package/progress/internal/circular-progress.js +49 -0
  394. package/progress/internal/circular-progress.js.map +1 -0
  395. package/progress/internal/linear-progress-styles.css.js +9 -0
  396. package/progress/internal/linear-progress-styles.css.js.map +1 -0
  397. package/progress/internal/linear-progress.d.ts +27 -0
  398. package/progress/internal/linear-progress.js +91 -0
  399. package/progress/internal/linear-progress.js.map +1 -0
  400. package/progress/internal/progress.d.ts +34 -0
  401. package/progress/internal/progress.js +70 -0
  402. package/progress/internal/progress.js.map +1 -0
  403. package/progress/linear-progress.d.ts +23 -0
  404. package/progress/linear-progress.js +26 -0
  405. package/progress/linear-progress.js.map +1 -0
  406. package/radio/_radio.scss +1 -1
  407. package/radio/harness.d.ts +1 -1
  408. package/radio/harness.js.map +1 -1
  409. package/radio/internal/_radio.scss +185 -0
  410. package/radio/internal/forced-colors-styles.css.js +9 -0
  411. package/radio/internal/forced-colors-styles.css.js.map +1 -0
  412. package/radio/internal/forced-colors-styles.scss +29 -0
  413. package/radio/internal/radio-styles.css.js +9 -0
  414. package/radio/internal/radio-styles.css.js.map +1 -0
  415. package/radio/internal/radio.d.ts +58 -0
  416. package/radio/internal/radio.js +159 -0
  417. package/radio/internal/radio.js.map +1 -0
  418. package/radio/internal/single-selection-controller.js +196 -0
  419. package/radio/internal/single-selection-controller.js.map +1 -0
  420. package/radio/radio.d.ts +1 -1
  421. package/radio/radio.js +3 -3
  422. package/radio/radio.js.map +1 -1
  423. package/ripple/_ripple.scss +1 -1
  424. package/ripple/internal/ripple.js +397 -0
  425. package/ripple/internal/ripple.js.map +1 -0
  426. package/ripple/ripple.d.ts +1 -1
  427. package/ripple/ripple.js +2 -2
  428. package/ripple/ripple.js.map +1 -1
  429. package/select/_filled-select.scss +1 -1
  430. package/select/_outlined-select.scss +1 -1
  431. package/select/filled-select.d.ts +1 -1
  432. package/select/filled-select.js +4 -4
  433. package/select/filled-select.js.map +1 -1
  434. package/select/harness.d.ts +3 -3
  435. package/select/harness.js +1 -1
  436. package/select/harness.js.map +1 -1
  437. package/select/internal/_filled-select.scss +222 -0
  438. package/select/internal/_outlined-select.scss +180 -0
  439. package/select/internal/_shared.scss +82 -0
  440. package/select/internal/filled-select-styles.css.js +9 -0
  441. package/select/internal/filled-select-styles.css.js.map +1 -0
  442. package/select/internal/outlined-select-styles.css.js +9 -0
  443. package/select/internal/outlined-select-styles.css.js.map +1 -0
  444. package/select/internal/select.d.ts +201 -0
  445. package/select/internal/select.js +550 -0
  446. package/select/internal/select.js.map +1 -0
  447. package/select/internal/selectoption/harness.d.ts +11 -0
  448. package/select/internal/selectoption/harness.js +12 -0
  449. package/select/internal/selectoption/harness.js.map +1 -0
  450. package/select/internal/selectoption/select-option.d.ts +28 -0
  451. package/select/internal/selectoption/select-option.js +70 -0
  452. package/select/internal/selectoption/select-option.js.map +1 -0
  453. package/select/internal/shared-styles.css.js +9 -0
  454. package/select/internal/shared-styles.css.js.map +1 -0
  455. package/select/internal/shared.d.ts +48 -0
  456. package/select/internal/shared.js +43 -0
  457. package/select/internal/shared.js.map +1 -0
  458. package/select/outlined-select.d.ts +1 -1
  459. package/select/outlined-select.js +4 -4
  460. package/select/outlined-select.js.map +1 -1
  461. package/select/select-option.d.ts +1 -1
  462. package/select/select-option.js +5 -5
  463. package/select/select-option.js.map +1 -1
  464. package/slider/_slider.scss +1 -1
  465. package/slider/harness.d.ts +1 -1
  466. package/slider/harness.js.map +1 -1
  467. package/slider/internal/_slider.scss +478 -0
  468. package/slider/internal/slider-styles.css.js +9 -0
  469. package/slider/internal/slider-styles.css.js.map +1 -0
  470. package/slider/internal/slider.d.ts +173 -0
  471. package/slider/internal/slider.js +621 -0
  472. package/slider/internal/slider.js.map +1 -0
  473. package/slider/slider.d.ts +1 -1
  474. package/slider/slider.js +3 -3
  475. package/slider/slider.js.map +1 -1
  476. package/switch/_switch.scss +1 -1
  477. package/switch/harness.d.ts +1 -1
  478. package/switch/harness.js.map +1 -1
  479. package/switch/internal/_handle.scss +159 -0
  480. package/switch/internal/_icon.scss +92 -0
  481. package/switch/internal/_switch.scss +154 -0
  482. package/switch/internal/_track.scss +91 -0
  483. package/switch/internal/forced-colors-styles.css.js +9 -0
  484. package/switch/internal/forced-colors-styles.css.js.map +1 -0
  485. package/switch/internal/forced-colors-styles.scss +41 -0
  486. package/switch/internal/switch-styles.css.js +9 -0
  487. package/switch/internal/switch-styles.css.js.map +1 -0
  488. package/switch/internal/switch.d.ts +79 -0
  489. package/switch/internal/switch.js +208 -0
  490. package/switch/internal/switch.js.map +1 -0
  491. package/switch/switch.d.ts +1 -1
  492. package/switch/switch.js +3 -3
  493. package/switch/switch.js.map +1 -1
  494. package/tabs/_tab.scss +1 -1
  495. package/tabs/harness.d.ts +2 -2
  496. package/tabs/harness.js.map +1 -1
  497. package/tabs/internal/_tab.scss +295 -0
  498. package/tabs/internal/_tabs.scss +45 -0
  499. package/tabs/internal/tab-styles.css.js +9 -0
  500. package/tabs/internal/tab-styles.css.js.map +1 -0
  501. package/tabs/internal/tab.d.ts +62 -0
  502. package/tabs/internal/tab.js +161 -0
  503. package/tabs/internal/tab.js.map +1 -0
  504. package/tabs/internal/tabs.d.ts +88 -0
  505. package/tabs/internal/tabs.js +307 -0
  506. package/tabs/internal/tabs.js.map +1 -0
  507. package/tabs/tab.d.ts +2 -2
  508. package/tabs/tab.js +2 -2
  509. package/tabs/tab.js.map +1 -1
  510. package/tabs/tabs.d.ts +2 -2
  511. package/tabs/tabs.js +2 -2
  512. package/tabs/tabs.js.map +1 -1
  513. package/textfield/_filled-text-field.scss +1 -1
  514. package/textfield/_outlined-text-field.scss +1 -1
  515. package/textfield/filled-text-field.d.ts +2 -2
  516. package/textfield/filled-text-field.js +4 -4
  517. package/textfield/filled-text-field.js.map +1 -1
  518. package/textfield/harness.d.ts +5 -5
  519. package/textfield/harness.js +5 -1
  520. package/textfield/harness.js.map +1 -1
  521. package/textfield/internal/_filled-text-field.scss +194 -0
  522. package/textfield/internal/_input.scss +72 -0
  523. package/textfield/internal/_outlined-text-field.scss +167 -0
  524. package/textfield/internal/_shared.scss +47 -0
  525. package/textfield/internal/filled-styles.css.js +9 -0
  526. package/textfield/internal/filled-styles.css.js.map +1 -0
  527. package/textfield/internal/outlined-styles.css.js +9 -0
  528. package/textfield/internal/outlined-styles.css.js.map +1 -0
  529. package/textfield/internal/shared-styles.css.js +9 -0
  530. package/textfield/internal/shared-styles.css.js.map +1 -0
  531. package/textfield/internal/text-field.d.ts +326 -0
  532. package/textfield/internal/text-field.js +702 -0
  533. package/textfield/internal/text-field.js.map +1 -0
  534. package/textfield/outlined-text-field.d.ts +2 -2
  535. package/textfield/outlined-text-field.js +4 -4
  536. package/textfield/outlined-text-field.js.map +1 -1
  537. package/tokens/_index.scss +1 -0
  538. package/tokens/_md-comp-checkbox.scss +58 -34
  539. package/tokens/_md-comp-dialog.scss +2 -1
  540. package/tokens/_md-comp-elevated-button.scss +14 -12
  541. package/tokens/_md-comp-filled-button.scss +14 -12
  542. package/tokens/_md-comp-filled-field.scss +18 -11
  543. package/tokens/_md-comp-filled-icon-button.scss +23 -8
  544. package/tokens/_md-comp-filled-select.scss +19 -1
  545. package/tokens/_md-comp-filled-text-field.scss +2 -1
  546. package/tokens/_md-comp-filled-tonal-button.scss +14 -12
  547. package/tokens/_md-comp-filled-tonal-icon-button.scss +23 -8
  548. package/tokens/_md-comp-icon-button.scss +24 -11
  549. package/tokens/_md-comp-icon.scss +32 -0
  550. package/tokens/_md-comp-list-item.scss +1 -1
  551. package/tokens/_md-comp-outlined-button.scss +14 -12
  552. package/tokens/_md-comp-outlined-field.scss +14 -8
  553. package/tokens/_md-comp-outlined-icon-button.scss +26 -12
  554. package/tokens/_md-comp-outlined-segmented-button.scss +2 -2
  555. package/tokens/_md-comp-outlined-text-field.scss +2 -1
  556. package/tokens/_md-comp-radio-button.scss +20 -9
  557. package/tokens/_md-comp-switch.scss +66 -32
  558. package/tokens/_md-comp-text-button.scss +14 -12
  559. package/button/_tonal-button.scss +0 -6
  560. package/button/lib/_elevation.scss +0 -68
  561. package/button/lib/_icon.scss +0 -42
  562. package/button/lib/_outlined-button.scss +0 -107
  563. package/button/lib/_shared.scss +0 -162
  564. package/button/lib/_tonal-button.scss +0 -61
  565. package/button/lib/_touch-target.scss +0 -18
  566. package/button/lib/button.d.ts +0 -71
  567. package/button/lib/button.js +0 -190
  568. package/button/lib/button.js.map +0 -1
  569. package/button/lib/elevated-button.d.ts +0 -18
  570. package/button/lib/elevated-button.js +0 -23
  571. package/button/lib/elevated-button.js.map +0 -1
  572. package/button/lib/elevated-styles.css.js +0 -9
  573. package/button/lib/elevated-styles.css.js.map +0 -1
  574. package/button/lib/filled-button.d.ts +0 -18
  575. package/button/lib/filled-button.js +0 -23
  576. package/button/lib/filled-button.js.map +0 -1
  577. package/button/lib/filled-styles.css.js +0 -9
  578. package/button/lib/filled-styles.css.js.map +0 -1
  579. package/button/lib/outlined-button.d.ts +0 -17
  580. package/button/lib/outlined-button.js +0 -22
  581. package/button/lib/outlined-button.js.map +0 -1
  582. package/button/lib/outlined-styles.css.js +0 -9
  583. package/button/lib/outlined-styles.css.js.map +0 -1
  584. package/button/lib/shared-elevation-styles.css.js +0 -9
  585. package/button/lib/shared-elevation-styles.css.js.map +0 -1
  586. package/button/lib/shared-styles.css.js +0 -9
  587. package/button/lib/shared-styles.css.js.map +0 -1
  588. package/button/lib/text-button.d.ts +0 -16
  589. package/button/lib/text-button.js +0 -18
  590. package/button/lib/text-button.js.map +0 -1
  591. package/button/lib/text-styles.css.js +0 -9
  592. package/button/lib/text-styles.css.js.map +0 -1
  593. package/button/lib/tonal-button.d.ts +0 -18
  594. package/button/lib/tonal-button.js +0 -23
  595. package/button/lib/tonal-button.js.map +0 -1
  596. package/button/lib/tonal-styles.css.js +0 -9
  597. package/button/lib/tonal-styles.css.js.map +0 -1
  598. package/button/lib/tonal-styles.scss +0 -10
  599. package/button/tonal-button.d.ts +0 -35
  600. package/button/tonal-button.js +0 -40
  601. package/button/tonal-button.js.map +0 -1
  602. package/checkbox/lib/_checkbox.scss +0 -451
  603. package/checkbox/lib/checkbox-styles.css.js +0 -9
  604. package/checkbox/lib/checkbox-styles.css.js.map +0 -1
  605. package/checkbox/lib/checkbox.d.ts +0 -66
  606. package/checkbox/lib/checkbox.js +0 -187
  607. package/checkbox/lib/checkbox.js.map +0 -1
  608. package/checkbox/lib/forced-colors-styles.css.js +0 -9
  609. package/checkbox/lib/forced-colors-styles.css.js.map +0 -1
  610. package/checkbox/lib/forced-colors-styles.scss +0 -49
  611. package/chips/lib/_shared.scss +0 -190
  612. package/chips/lib/_trailing-icon.scss +0 -78
  613. package/chips/lib/chip-set.js +0 -165
  614. package/chips/lib/chip-set.js.map +0 -1
  615. package/chips/lib/chip.d.ts +0 -45
  616. package/chips/lib/chip.js +0 -95
  617. package/chips/lib/chip.js.map +0 -1
  618. package/chips/lib/filter-chip.d.ts +0 -32
  619. package/chips/lib/filter-chip.js +0 -103
  620. package/chips/lib/filter-chip.js.map +0 -1
  621. package/chips/lib/shared-styles.css.js +0 -9
  622. package/chips/lib/shared-styles.css.js.map +0 -1
  623. package/chips/lib/trailing-icon-styles.css.js +0 -9
  624. package/chips/lib/trailing-icon-styles.css.js.map +0 -1
  625. package/chips/lib/trailing-icons.d.ts +0 -15
  626. package/chips/lib/trailing-icons.js +0 -38
  627. package/chips/lib/trailing-icons.js.map +0 -1
  628. package/circularprogress/_circular-progress.scss +0 -6
  629. package/circularprogress/circular-progress.d.ts +0 -24
  630. package/circularprogress/circular-progress.js +0 -27
  631. package/circularprogress/circular-progress.js.map +0 -1
  632. package/circularprogress/harness.d.ts +0 -13
  633. package/circularprogress/harness.js +0 -16
  634. package/circularprogress/harness.js.map +0 -1
  635. package/circularprogress/lib/_circular-progress.scss +0 -288
  636. package/circularprogress/lib/circular-progress-styles.css.js +0 -9
  637. package/circularprogress/lib/circular-progress-styles.css.js.map +0 -1
  638. package/circularprogress/lib/circular-progress.d.ts +0 -27
  639. package/circularprogress/lib/circular-progress.js +0 -94
  640. package/circularprogress/lib/circular-progress.js.map +0 -1
  641. package/dialog/lib/_dialog.scss +0 -376
  642. package/dialog/lib/_tokens.scss +0 -68
  643. package/dialog/lib/dialog-styles.css.js +0 -9
  644. package/dialog/lib/dialog-styles.css.js.map +0 -1
  645. package/dialog/lib/dialog.d.ts +0 -196
  646. package/dialog/lib/dialog.js +0 -561
  647. package/dialog/lib/dialog.js.map +0 -1
  648. package/fab/lib/_fab.scss +0 -253
  649. package/fab/lib/_shared.scss +0 -222
  650. package/fab/lib/fab-styles.css.js +0 -9
  651. package/fab/lib/fab-styles.css.js.map +0 -1
  652. package/fab/lib/fab.d.ts +0 -26
  653. package/fab/lib/fab.js.map +0 -1
  654. package/fab/lib/forced-colors-styles.css.js +0 -9
  655. package/fab/lib/forced-colors-styles.css.js.map +0 -1
  656. package/fab/lib/forced-colors-styles.scss +0 -26
  657. package/fab/lib/shared-styles.css.js +0 -9
  658. package/fab/lib/shared-styles.css.js.map +0 -1
  659. package/fab/lib/shared.d.ts +0 -55
  660. package/fab/lib/shared.js +0 -120
  661. package/fab/lib/shared.js.map +0 -1
  662. package/field/lib/_content.scss +0 -175
  663. package/field/lib/_filled-field.scss +0 -189
  664. package/field/lib/_label.scss +0 -74
  665. package/field/lib/_outlined-field.scss +0 -313
  666. package/field/lib/_shared.scss +0 -65
  667. package/field/lib/_supporting-text.scss +0 -46
  668. package/field/lib/field.d.ts +0 -65
  669. package/field/lib/field.js +0 -321
  670. package/field/lib/field.js.map +0 -1
  671. package/field/lib/filled-styles.css.js +0 -9
  672. package/field/lib/filled-styles.css.js.map +0 -1
  673. package/field/lib/outlined-styles.css.js +0 -9
  674. package/field/lib/outlined-styles.css.js.map +0 -1
  675. package/field/lib/shared-styles.css.js +0 -9
  676. package/field/lib/shared-styles.css.js.map +0 -1
  677. package/focus/focus-ring.d.ts +0 -20
  678. package/focus/focus-ring.js +0 -23
  679. package/focus/focus-ring.js.map +0 -1
  680. package/focus/lib/_focus-ring.scss +0 -129
  681. package/focus/lib/focus-ring-styles.css.js +0 -9
  682. package/focus/lib/focus-ring-styles.css.js.map +0 -1
  683. package/focus/lib/focus-ring.d.ts +0 -34
  684. package/focus/lib/focus-ring.js +0 -79
  685. package/focus/lib/focus-ring.js.map +0 -1
  686. package/icon/lib/_icon.scss +0 -61
  687. package/icon/lib/_md-comp-icon.scss +0 -18
  688. package/icon/lib/icon-styles.css.js +0 -9
  689. package/icon/lib/icon-styles.css.js.map +0 -1
  690. package/icon/lib/icon.d.ts +0 -12
  691. package/icon/lib/icon.js +0 -15
  692. package/icon/lib/icon.js.map +0 -1
  693. package/iconbutton/_standard-icon-button.scss +0 -6
  694. package/iconbutton/lib/_filled-icon-button.scss +0 -169
  695. package/iconbutton/lib/_filled-tonal-icon-button.scss +0 -171
  696. package/iconbutton/lib/_outlined-icon-button.scss +0 -178
  697. package/iconbutton/lib/_shared.scss +0 -104
  698. package/iconbutton/lib/_standard-icon-button.scss +0 -112
  699. package/iconbutton/lib/filled-styles.css.js +0 -9
  700. package/iconbutton/lib/filled-styles.css.js.map +0 -1
  701. package/iconbutton/lib/filled-tonal-styles.css.js +0 -9
  702. package/iconbutton/lib/filled-tonal-styles.css.js.map +0 -1
  703. package/iconbutton/lib/icon-button.d.ts +0 -59
  704. package/iconbutton/lib/icon-button.js +0 -166
  705. package/iconbutton/lib/icon-button.js.map +0 -1
  706. package/iconbutton/lib/outlined-styles.css.js +0 -9
  707. package/iconbutton/lib/outlined-styles.css.js.map +0 -1
  708. package/iconbutton/lib/shared-styles.css.js +0 -9
  709. package/iconbutton/lib/shared-styles.css.js.map +0 -1
  710. package/iconbutton/lib/standard-styles.css.js +0 -9
  711. package/iconbutton/lib/standard-styles.css.js.map +0 -1
  712. package/iconbutton/lib/standard-styles.scss +0 -10
  713. package/iconbutton/standard-icon-button.d.ts +0 -34
  714. package/iconbutton/standard-icon-button.js +0 -39
  715. package/iconbutton/standard-icon-button.js.map +0 -1
  716. package/labs/navigationbar/lib/constants.d.ts +0 -17
  717. package/labs/navigationbar/lib/constants.js.map +0 -1
  718. package/labs/navigationbar/lib/navigation-bar.d.ts +0 -27
  719. package/labs/navigationbar/lib/navigation-bar.js +0 -140
  720. package/labs/navigationbar/lib/navigation-bar.js.map +0 -1
  721. package/labs/navigationbar/lib/state.d.ts +0 -23
  722. package/labs/navigationbar/lib/state.js.map +0 -1
  723. package/labs/navigationdrawer/lib/navigation-drawer-modal.js +0 -83
  724. package/labs/navigationdrawer/lib/navigation-drawer-modal.js.map +0 -1
  725. package/labs/navigationdrawer/lib/navigation-drawer.js +0 -66
  726. package/labs/navigationdrawer/lib/navigation-drawer.js.map +0 -1
  727. package/labs/navigationtab/lib/_navigation-tab.scss +0 -257
  728. package/labs/navigationtab/lib/navigation-tab-styles.css.js +0 -9
  729. package/labs/navigationtab/lib/navigation-tab-styles.css.js.map +0 -1
  730. package/labs/navigationtab/lib/navigation-tab.d.ts +0 -30
  731. package/labs/navigationtab/lib/navigation-tab.js +0 -119
  732. package/labs/navigationtab/lib/navigation-tab.js.map +0 -1
  733. package/labs/segmentedbutton/lib/outlined-styles.css.js +0 -9
  734. package/labs/segmentedbutton/lib/outlined-styles.css.js.map +0 -1
  735. package/labs/segmentedbutton/lib/segmented-button.d.ts +0 -44
  736. package/labs/segmentedbutton/lib/segmented-button.js +0 -159
  737. package/labs/segmentedbutton/lib/segmented-button.js.map +0 -1
  738. package/labs/segmentedbuttonset/lib/outlined-styles.css.js +0 -9
  739. package/labs/segmentedbuttonset/lib/outlined-styles.css.js.map +0 -1
  740. package/labs/segmentedbuttonset/lib/segmented-button-set.d.ts +0 -26
  741. package/labs/segmentedbuttonset/lib/segmented-button-set.js +0 -110
  742. package/labs/segmentedbuttonset/lib/segmented-button-set.js.map +0 -1
  743. package/linearprogress/_linear-progress.scss +0 -6
  744. package/linearprogress/harness.d.ts +0 -13
  745. package/linearprogress/harness.js +0 -18
  746. package/linearprogress/harness.js.map +0 -1
  747. package/linearprogress/lib/_linear-progress.scss +0 -386
  748. package/linearprogress/lib/linear-progress-styles.css.js +0 -9
  749. package/linearprogress/lib/linear-progress-styles.css.js.map +0 -1
  750. package/linearprogress/lib/linear-progress.d.ts +0 -35
  751. package/linearprogress/lib/linear-progress.js +0 -127
  752. package/linearprogress/lib/linear-progress.js.map +0 -1
  753. package/linearprogress/linear-progress.d.ts +0 -23
  754. package/linearprogress/linear-progress.js +0 -26
  755. package/linearprogress/linear-progress.js.map +0 -1
  756. package/list/lib/list.d.ts +0 -135
  757. package/list/lib/list.js +0 -305
  758. package/list/lib/list.js.map +0 -1
  759. package/list/lib/listitem/_list-item.scss +0 -424
  760. package/list/lib/listitem/list-item-styles.css.js +0 -9
  761. package/list/lib/listitem/list-item-styles.css.js.map +0 -1
  762. package/list/lib/listitem/list-item.d.ts +0 -133
  763. package/list/lib/listitem/list-item.js +0 -230
  764. package/list/lib/listitem/list-item.js.map +0 -1
  765. package/list/lib/listitemlink/list-item-link-only.d.ts +0 -23
  766. package/list/lib/listitemlink/list-item-link-only.js +0 -36
  767. package/list/lib/listitemlink/list-item-link-only.js.map +0 -1
  768. package/list/lib/listitemlink/list-item-link.d.ts +0 -18
  769. package/list/lib/listitemlink/list-item-link.js +0 -42
  770. package/list/lib/listitemlink/list-item-link.js.map +0 -1
  771. package/list/list-item-link.d.ts +0 -53
  772. package/list/list-item-link.js +0 -57
  773. package/list/list-item-link.js.map +0 -1
  774. package/menu/lib/_menu.scss +0 -103
  775. package/menu/lib/menu-styles.css.js +0 -9
  776. package/menu/lib/menu-styles.css.js.map +0 -1
  777. package/menu/lib/menu.d.ts +0 -225
  778. package/menu/lib/menu.js +0 -673
  779. package/menu/lib/menu.js.map +0 -1
  780. package/menu/lib/menuitem/_menu-item.scss +0 -60
  781. package/menu/lib/menuitem/forced-colors-styles.css.js +0 -9
  782. package/menu/lib/menuitem/forced-colors-styles.css.js.map +0 -1
  783. package/menu/lib/menuitem/forced-colors-styles.scss +0 -22
  784. package/menu/lib/menuitem/harness.d.ts +0 -11
  785. package/menu/lib/menuitem/harness.js +0 -12
  786. package/menu/lib/menuitem/harness.js.map +0 -1
  787. package/menu/lib/menuitem/menu-item-styles.css.js +0 -9
  788. package/menu/lib/menuitem/menu-item-styles.css.js.map +0 -1
  789. package/menu/lib/menuitem/menu-item.d.ts +0 -28
  790. package/menu/lib/menuitem/menu-item.js +0 -51
  791. package/menu/lib/menuitem/menu-item.js.map +0 -1
  792. package/menu/lib/menuitemlink/menu-item-link.d.ts +0 -23
  793. package/menu/lib/menuitemlink/menu-item-link.js +0 -49
  794. package/menu/lib/menuitemlink/menu-item-link.js.map +0 -1
  795. package/menu/lib/shared.d.ts +0 -178
  796. package/menu/lib/shared.js +0 -142
  797. package/menu/lib/shared.js.map +0 -1
  798. package/menu/lib/submenuitem/harness.d.ts +0 -11
  799. package/menu/lib/submenuitem/harness.js +0 -12
  800. package/menu/lib/submenuitem/harness.js.map +0 -1
  801. package/menu/lib/submenuitem/sub-menu-item.d.ts +0 -99
  802. package/menu/lib/submenuitem/sub-menu-item.js +0 -293
  803. package/menu/lib/submenuitem/sub-menu-item.js.map +0 -1
  804. package/menu/lib/typeaheadController.d.ts +0 -157
  805. package/menu/lib/typeaheadController.js +0 -252
  806. package/menu/lib/typeaheadController.js.map +0 -1
  807. package/menu/menu-item-link.d.ts +0 -33
  808. package/menu/menu-item-link.js +0 -38
  809. package/menu/menu-item-link.js.map +0 -1
  810. package/radio/lib/_radio.scss +0 -169
  811. package/radio/lib/forced-colors-styles.css.js +0 -9
  812. package/radio/lib/forced-colors-styles.css.js.map +0 -1
  813. package/radio/lib/forced-colors-styles.scss +0 -29
  814. package/radio/lib/radio-styles.css.js +0 -9
  815. package/radio/lib/radio-styles.css.js.map +0 -1
  816. package/radio/lib/radio.d.ts +0 -57
  817. package/radio/lib/radio.js +0 -154
  818. package/radio/lib/radio.js.map +0 -1
  819. package/radio/lib/single-selection-controller.js +0 -192
  820. package/radio/lib/single-selection-controller.js.map +0 -1
  821. package/ripple/lib/ripple.js +0 -389
  822. package/ripple/lib/ripple.js.map +0 -1
  823. package/select/lib/_filled-select.scss +0 -222
  824. package/select/lib/_outlined-select.scss +0 -180
  825. package/select/lib/_shared.scss +0 -56
  826. package/select/lib/filled-select-styles.css.js +0 -9
  827. package/select/lib/filled-select-styles.css.js.map +0 -1
  828. package/select/lib/outlined-select-styles.css.js +0 -9
  829. package/select/lib/outlined-select-styles.css.js.map +0 -1
  830. package/select/lib/select.d.ts +0 -206
  831. package/select/lib/select.js +0 -553
  832. package/select/lib/select.js.map +0 -1
  833. package/select/lib/selectoption/harness.d.ts +0 -11
  834. package/select/lib/selectoption/harness.js +0 -12
  835. package/select/lib/selectoption/harness.js.map +0 -1
  836. package/select/lib/selectoption/select-option.d.ts +0 -29
  837. package/select/lib/selectoption/select-option.js +0 -71
  838. package/select/lib/selectoption/select-option.js.map +0 -1
  839. package/select/lib/shared-styles.css.js +0 -9
  840. package/select/lib/shared-styles.css.js.map +0 -1
  841. package/select/lib/shared.d.ts +0 -52
  842. package/select/lib/shared.js +0 -41
  843. package/select/lib/shared.js.map +0 -1
  844. package/slider/lib/_slider.scss +0 -476
  845. package/slider/lib/slider-styles.css.js +0 -9
  846. package/slider/lib/slider-styles.css.js.map +0 -1
  847. package/slider/lib/slider.d.ts +0 -173
  848. package/slider/lib/slider.js +0 -623
  849. package/slider/lib/slider.js.map +0 -1
  850. package/switch/lib/_handle.scss +0 -159
  851. package/switch/lib/_icon.scss +0 -92
  852. package/switch/lib/_switch.scss +0 -152
  853. package/switch/lib/_track.scss +0 -91
  854. package/switch/lib/forced-colors-styles.css.d.ts +0 -1
  855. package/switch/lib/forced-colors-styles.css.js +0 -9
  856. package/switch/lib/forced-colors-styles.css.js.map +0 -1
  857. package/switch/lib/forced-colors-styles.scss +0 -41
  858. package/switch/lib/switch-styles.css.js +0 -9
  859. package/switch/lib/switch-styles.css.js.map +0 -1
  860. package/switch/lib/switch.d.ts +0 -79
  861. package/switch/lib/switch.js +0 -210
  862. package/switch/lib/switch.js.map +0 -1
  863. package/tabs/lib/_tab.scss +0 -293
  864. package/tabs/lib/_tabs.scss +0 -44
  865. package/tabs/lib/tab-styles.css.js +0 -9
  866. package/tabs/lib/tab-styles.css.js.map +0 -1
  867. package/tabs/lib/tab.d.ts +0 -68
  868. package/tabs/lib/tab.js +0 -164
  869. package/tabs/lib/tab.js.map +0 -1
  870. package/tabs/lib/tabs.d.ts +0 -91
  871. package/tabs/lib/tabs.js +0 -312
  872. package/tabs/lib/tabs.js.map +0 -1
  873. package/textfield/lib/_filled-text-field.scss +0 -205
  874. package/textfield/lib/_input.scss +0 -61
  875. package/textfield/lib/_outlined-text-field.scss +0 -161
  876. package/textfield/lib/_shared.scss +0 -37
  877. package/textfield/lib/filled-styles.css.js +0 -9
  878. package/textfield/lib/filled-styles.css.js.map +0 -1
  879. package/textfield/lib/outlined-styles.css.js +0 -9
  880. package/textfield/lib/outlined-styles.css.js.map +0 -1
  881. package/textfield/lib/shared-styles.css.js +0 -9
  882. package/textfield/lib/shared-styles.css.js.map +0 -1
  883. package/textfield/lib/text-field.d.ts +0 -320
  884. package/textfield/lib/text-field.js +0 -641
  885. package/textfield/lib/text-field.js.map +0 -1
  886. /package/button/{lib → internal}/_elevated-button.scss +0 -0
  887. /package/button/{lib → internal}/_filled-button.scss +0 -0
  888. /package/button/{lib → internal}/_text-button.scss +0 -0
  889. /package/button/{lib → internal}/elevated-styles.css.d.ts +0 -0
  890. /package/button/{lib → internal}/elevated-styles.scss +0 -0
  891. /package/button/{lib → internal}/filled-styles.css.d.ts +0 -0
  892. /package/button/{lib → internal}/filled-styles.scss +0 -0
  893. /package/{iconbutton/lib → button/internal}/filled-tonal-styles.css.d.ts +0 -0
  894. /package/button/{lib → internal}/outlined-styles.css.d.ts +0 -0
  895. /package/button/{lib → internal}/outlined-styles.scss +0 -0
  896. /package/button/{lib → internal}/shared-elevation-styles.css.d.ts +0 -0
  897. /package/button/{lib → internal}/shared-elevation-styles.scss +0 -0
  898. /package/button/{lib → internal}/shared-styles.css.d.ts +0 -0
  899. /package/button/{lib → internal}/shared-styles.scss +0 -0
  900. /package/button/{lib → internal}/text-styles.css.d.ts +0 -0
  901. /package/button/{lib → internal}/text-styles.scss +0 -0
  902. /package/checkbox/{lib → internal}/checkbox-styles.css.d.ts +0 -0
  903. /package/checkbox/{lib → internal}/checkbox-styles.scss +0 -0
  904. /package/chips/{lib → internal}/_assist-chip.scss +0 -0
  905. /package/chips/{lib → internal}/_chip-set.scss +0 -0
  906. /package/chips/{lib → internal}/_elevated.scss +0 -0
  907. /package/chips/{lib → internal}/_filter-chip.scss +0 -0
  908. /package/chips/{lib → internal}/_input-chip.scss +0 -0
  909. /package/chips/{lib → internal}/_selectable.scss +0 -0
  910. /package/chips/{lib → internal}/_suggestion-chip.scss +0 -0
  911. /package/chips/{lib → internal}/assist-chip.d.ts +0 -0
  912. /package/chips/{lib → internal}/assist-chip.js +0 -0
  913. /package/chips/{lib → internal}/assist-chip.js.map +0 -0
  914. /package/chips/{lib → internal}/assist-forced-colors-styles.css.d.ts +0 -0
  915. /package/chips/{lib → internal}/assist-forced-colors-styles.css.js +0 -0
  916. /package/chips/{lib → internal}/assist-forced-colors-styles.css.js.map +0 -0
  917. /package/chips/{lib → internal}/assist-forced-colors-styles.scss +0 -0
  918. /package/chips/{lib → internal}/assist-styles.css.d.ts +0 -0
  919. /package/chips/{lib → internal}/assist-styles.css.js +0 -0
  920. /package/chips/{lib → internal}/assist-styles.css.js.map +0 -0
  921. /package/chips/{lib → internal}/assist-styles.scss +0 -0
  922. /package/chips/{lib → internal}/chip-set-styles.css.d.ts +0 -0
  923. /package/chips/{lib → internal}/chip-set-styles.css.js +0 -0
  924. /package/chips/{lib → internal}/chip-set-styles.css.js.map +0 -0
  925. /package/chips/{lib → internal}/chip-set-styles.scss +0 -0
  926. /package/chips/{lib → internal}/chip-set.d.ts +0 -0
  927. /package/chips/{lib → internal}/elevated-styles.css.d.ts +0 -0
  928. /package/chips/{lib → internal}/elevated-styles.css.js +0 -0
  929. /package/chips/{lib → internal}/elevated-styles.css.js.map +0 -0
  930. /package/chips/{lib → internal}/elevated-styles.scss +0 -0
  931. /package/chips/{lib → internal}/filter-forced-colors-styles.css.d.ts +0 -0
  932. /package/chips/{lib → internal}/filter-forced-colors-styles.css.js +0 -0
  933. /package/chips/{lib → internal}/filter-forced-colors-styles.css.js.map +0 -0
  934. /package/chips/{lib → internal}/filter-forced-colors-styles.scss +0 -0
  935. /package/chips/{lib → internal}/filter-styles.css.d.ts +0 -0
  936. /package/chips/{lib → internal}/filter-styles.css.js +0 -0
  937. /package/chips/{lib → internal}/filter-styles.css.js.map +0 -0
  938. /package/chips/{lib → internal}/filter-styles.scss +0 -0
  939. /package/chips/{lib → internal}/input-chip.d.ts +0 -0
  940. /package/chips/{lib → internal}/input-chip.js +0 -0
  941. /package/chips/{lib → internal}/input-chip.js.map +0 -0
  942. /package/chips/{lib → internal}/input-forced-colors-styles.css.d.ts +0 -0
  943. /package/chips/{lib → internal}/input-forced-colors-styles.css.js +0 -0
  944. /package/chips/{lib → internal}/input-forced-colors-styles.css.js.map +0 -0
  945. /package/chips/{lib → internal}/input-forced-colors-styles.scss +0 -0
  946. /package/chips/{lib → internal}/input-styles.css.d.ts +0 -0
  947. /package/chips/{lib → internal}/input-styles.css.js +0 -0
  948. /package/chips/{lib → internal}/input-styles.css.js.map +0 -0
  949. /package/chips/{lib → internal}/input-styles.scss +0 -0
  950. /package/chips/{lib → internal}/multi-action-chip.d.ts +0 -0
  951. /package/chips/{lib → internal}/multi-action-chip.js +0 -0
  952. /package/chips/{lib → internal}/multi-action-chip.js.map +0 -0
  953. /package/chips/{lib → internal}/selectable-styles.css.d.ts +0 -0
  954. /package/chips/{lib → internal}/selectable-styles.css.js +0 -0
  955. /package/chips/{lib → internal}/selectable-styles.css.js.map +0 -0
  956. /package/chips/{lib → internal}/selectable-styles.scss +0 -0
  957. /package/chips/{lib → internal}/shared-styles.css.d.ts +0 -0
  958. /package/chips/{lib → internal}/shared-styles.scss +0 -0
  959. /package/chips/{lib → internal}/suggestion-chip.d.ts +0 -0
  960. /package/chips/{lib → internal}/suggestion-chip.js +0 -0
  961. /package/chips/{lib → internal}/suggestion-chip.js.map +0 -0
  962. /package/chips/{lib → internal}/suggestion-forced-colors-styles.css.d.ts +0 -0
  963. /package/chips/{lib → internal}/suggestion-forced-colors-styles.css.js +0 -0
  964. /package/chips/{lib → internal}/suggestion-forced-colors-styles.css.js.map +0 -0
  965. /package/chips/{lib → internal}/suggestion-forced-colors-styles.scss +0 -0
  966. /package/chips/{lib → internal}/suggestion-styles.css.d.ts +0 -0
  967. /package/chips/{lib → internal}/suggestion-styles.css.js +0 -0
  968. /package/chips/{lib → internal}/suggestion-styles.css.js.map +0 -0
  969. /package/chips/{lib → internal}/suggestion-styles.scss +0 -0
  970. /package/chips/{lib → internal}/trailing-icon-styles.css.d.ts +0 -0
  971. /package/chips/{lib → internal}/trailing-icon-styles.scss +0 -0
  972. /package/dialog/{lib → internal}/dialog-styles.css.d.ts +0 -0
  973. /package/dialog/{lib → internal}/dialog-styles.scss +0 -0
  974. /package/divider/{lib → internal}/_divider.scss +0 -0
  975. /package/divider/{lib → internal}/divider-styles.css.d.ts +0 -0
  976. /package/divider/{lib → internal}/divider-styles.css.js +0 -0
  977. /package/divider/{lib → internal}/divider-styles.css.js.map +0 -0
  978. /package/divider/{lib → internal}/divider-styles.scss +0 -0
  979. /package/divider/{lib → internal}/divider.d.ts +0 -0
  980. /package/divider/{lib → internal}/divider.js +0 -0
  981. /package/divider/{lib → internal}/divider.js.map +0 -0
  982. /package/elevation/{lib → internal}/_elevation.scss +0 -0
  983. /package/elevation/{lib → internal}/elevation-styles.css.d.ts +0 -0
  984. /package/elevation/{lib → internal}/elevation-styles.css.js +0 -0
  985. /package/elevation/{lib → internal}/elevation-styles.css.js.map +0 -0
  986. /package/elevation/{lib → internal}/elevation-styles.scss +0 -0
  987. /package/elevation/{lib → internal}/elevation.d.ts +0 -0
  988. /package/elevation/{lib → internal}/elevation.js +0 -0
  989. /package/elevation/{lib → internal}/elevation.js.map +0 -0
  990. /package/fab/{lib → internal}/_fab-branded.scss +0 -0
  991. /package/fab/{lib → internal}/fab-branded-styles.css.d.ts +0 -0
  992. /package/fab/{lib → internal}/fab-branded-styles.css.js +0 -0
  993. /package/fab/{lib → internal}/fab-branded-styles.css.js.map +0 -0
  994. /package/fab/{lib → internal}/fab-branded-styles.scss +0 -0
  995. /package/fab/{lib → internal}/fab-styles.css.d.ts +0 -0
  996. /package/fab/{lib → internal}/fab-styles.scss +0 -0
  997. /package/fab/{lib → internal}/fab.js +0 -0
  998. /package/{checkbox/lib → fab/internal}/forced-colors-styles.css.d.ts +0 -0
  999. /package/fab/{lib → internal}/shared-styles.css.d.ts +0 -0
  1000. /package/fab/{lib → internal}/shared-styles.scss +0 -0
  1001. /package/field/{lib → internal}/filled-field.d.ts +0 -0
  1002. /package/field/{lib → internal}/filled-field.js +0 -0
  1003. /package/field/{lib → internal}/filled-field.js.map +0 -0
  1004. /package/field/{lib → internal}/filled-styles.css.d.ts +0 -0
  1005. /package/field/{lib → internal}/filled-styles.scss +0 -0
  1006. /package/field/{lib → internal}/outlined-field.d.ts +0 -0
  1007. /package/field/{lib → internal}/outlined-field.js +0 -0
  1008. /package/field/{lib → internal}/outlined-field.js.map +0 -0
  1009. /package/field/{lib → internal}/outlined-styles.css.d.ts +0 -0
  1010. /package/field/{lib → internal}/outlined-styles.scss +0 -0
  1011. /package/field/{lib → internal}/shared-styles.css.d.ts +0 -0
  1012. /package/field/{lib → internal}/shared-styles.scss +0 -0
  1013. /package/focus/{lib → internal}/focus-ring-styles.css.d.ts +0 -0
  1014. /package/focus/{lib → internal}/focus-ring-styles.scss +0 -0
  1015. /package/icon/{lib → internal}/icon-styles.css.d.ts +0 -0
  1016. /package/icon/{lib → internal}/icon-styles.scss +0 -0
  1017. /package/iconbutton/{lib → internal}/filled-styles.css.d.ts +0 -0
  1018. /package/iconbutton/{lib → internal}/filled-styles.scss +0 -0
  1019. /package/{button/lib/tonal-styles.css.d.ts → iconbutton/internal/filled-tonal-styles.css.d.ts} +0 -0
  1020. /package/iconbutton/{lib → internal}/filled-tonal-styles.scss +0 -0
  1021. /package/iconbutton/{lib → internal}/outlined-styles.css.d.ts +0 -0
  1022. /package/iconbutton/{lib → internal}/outlined-styles.scss +0 -0
  1023. /package/iconbutton/{lib → internal}/shared-styles.css.d.ts +0 -0
  1024. /package/iconbutton/{lib → internal}/shared-styles.scss +0 -0
  1025. /package/iconbutton/{lib → internal}/standard-styles.css.d.ts +0 -0
  1026. /package/labs/badge/{lib → internal}/_badge.scss +0 -0
  1027. /package/labs/badge/{lib → internal}/badge-styles.css.d.ts +0 -0
  1028. /package/labs/badge/{lib → internal}/badge-styles.css.js +0 -0
  1029. /package/labs/badge/{lib → internal}/badge-styles.css.js.map +0 -0
  1030. /package/labs/badge/{lib → internal}/badge-styles.scss +0 -0
  1031. /package/labs/badge/{lib → internal}/badge.d.ts +0 -0
  1032. /package/labs/badge/{lib → internal}/badge.js +0 -0
  1033. /package/labs/badge/{lib → internal}/badge.js.map +0 -0
  1034. /package/labs/navigationbar/{lib → internal}/_navigation-bar.scss +0 -0
  1035. /package/labs/navigationbar/{lib → internal}/constants.js +0 -0
  1036. /package/labs/navigationbar/{lib → internal}/navigation-bar-styles.css.d.ts +0 -0
  1037. /package/labs/navigationbar/{lib → internal}/navigation-bar-styles.css.js +0 -0
  1038. /package/labs/navigationbar/{lib → internal}/navigation-bar-styles.css.js.map +0 -0
  1039. /package/labs/navigationbar/{lib → internal}/navigation-bar-styles.scss +0 -0
  1040. /package/labs/navigationbar/{lib → internal}/state.js +0 -0
  1041. /package/labs/navigationdrawer/{lib → internal}/_navigation-drawer-modal.scss +0 -0
  1042. /package/labs/navigationdrawer/{lib → internal}/_navigation-drawer.scss +0 -0
  1043. /package/labs/navigationdrawer/{lib → internal}/_shared.scss +0 -0
  1044. /package/labs/navigationdrawer/{lib → internal}/navigation-drawer-modal-styles.css.d.ts +0 -0
  1045. /package/labs/navigationdrawer/{lib → internal}/navigation-drawer-modal-styles.css.js +0 -0
  1046. /package/labs/navigationdrawer/{lib → internal}/navigation-drawer-modal-styles.css.js.map +0 -0
  1047. /package/labs/navigationdrawer/{lib → internal}/navigation-drawer-modal-styles.scss +0 -0
  1048. /package/labs/navigationdrawer/{lib → internal}/navigation-drawer-modal.d.ts +0 -0
  1049. /package/labs/navigationdrawer/{lib → internal}/navigation-drawer-styles.css.d.ts +0 -0
  1050. /package/labs/navigationdrawer/{lib → internal}/navigation-drawer-styles.css.js +0 -0
  1051. /package/labs/navigationdrawer/{lib → internal}/navigation-drawer-styles.css.js.map +0 -0
  1052. /package/labs/navigationdrawer/{lib → internal}/navigation-drawer-styles.scss +0 -0
  1053. /package/labs/navigationdrawer/{lib → internal}/navigation-drawer.d.ts +0 -0
  1054. /package/labs/navigationdrawer/{lib → internal}/shared-styles.css.d.ts +0 -0
  1055. /package/labs/navigationdrawer/{lib → internal}/shared-styles.css.js +0 -0
  1056. /package/labs/navigationdrawer/{lib → internal}/shared-styles.css.js.map +0 -0
  1057. /package/labs/navigationdrawer/{lib → internal}/shared-styles.scss +0 -0
  1058. /package/labs/navigationtab/{lib → internal}/navigation-tab-styles.css.d.ts +0 -0
  1059. /package/labs/navigationtab/{lib → internal}/navigation-tab-styles.scss +0 -0
  1060. /package/labs/navigationtab/{lib → internal}/state.d.ts +0 -0
  1061. /package/labs/navigationtab/{lib → internal}/state.js +0 -0
  1062. /package/labs/navigationtab/{lib → internal}/state.js.map +0 -0
  1063. /package/labs/segmentedbutton/{lib → internal}/_outlined-segmented-button.scss +0 -0
  1064. /package/labs/segmentedbutton/{lib → internal}/_shared.scss +0 -0
  1065. /package/labs/segmentedbutton/{lib → internal}/outlined-segmented-button.d.ts +0 -0
  1066. /package/labs/segmentedbutton/{lib → internal}/outlined-segmented-button.js +0 -0
  1067. /package/labs/segmentedbutton/{lib → internal}/outlined-segmented-button.js.map +0 -0
  1068. /package/labs/segmentedbutton/{lib → internal}/outlined-styles.css.d.ts +0 -0
  1069. /package/labs/segmentedbutton/{lib → internal}/outlined-styles.scss +0 -0
  1070. /package/labs/segmentedbutton/{lib → internal}/shared-styles.css.d.ts +0 -0
  1071. /package/labs/segmentedbutton/{lib → internal}/shared-styles.css.js +0 -0
  1072. /package/labs/segmentedbutton/{lib → internal}/shared-styles.css.js.map +0 -0
  1073. /package/labs/segmentedbutton/{lib → internal}/shared-styles.scss +0 -0
  1074. /package/labs/segmentedbuttonset/{lib → internal}/_outlined-segmented-button-set.scss +0 -0
  1075. /package/labs/segmentedbuttonset/{lib → internal}/_shared.scss +0 -0
  1076. /package/labs/segmentedbuttonset/{lib → internal}/outlined-segmented-button-set.d.ts +0 -0
  1077. /package/labs/segmentedbuttonset/{lib → internal}/outlined-segmented-button-set.js +0 -0
  1078. /package/labs/segmentedbuttonset/{lib → internal}/outlined-segmented-button-set.js.map +0 -0
  1079. /package/labs/segmentedbuttonset/{lib → internal}/outlined-styles.css.d.ts +0 -0
  1080. /package/labs/segmentedbuttonset/{lib → internal}/outlined-styles.scss +0 -0
  1081. /package/labs/segmentedbuttonset/{lib → internal}/shared-styles.css.d.ts +0 -0
  1082. /package/labs/segmentedbuttonset/{lib → internal}/shared-styles.css.js +0 -0
  1083. /package/labs/segmentedbuttonset/{lib → internal}/shared-styles.css.js.map +0 -0
  1084. /package/labs/segmentedbuttonset/{lib → internal}/shared-styles.scss +0 -0
  1085. /package/list/{lib → internal}/_list.scss +0 -0
  1086. /package/list/{lib → internal}/list-styles.css.d.ts +0 -0
  1087. /package/list/{lib → internal}/list-styles.css.js +0 -0
  1088. /package/list/{lib → internal}/list-styles.css.js.map +0 -0
  1089. /package/list/{lib → internal}/list-styles.scss +0 -0
  1090. /package/{fab/lib → list/internal/listitem}/forced-colors-styles.css.d.ts +0 -0
  1091. /package/list/{lib → internal}/listitem/forced-colors-styles.css.js +0 -0
  1092. /package/list/{lib → internal}/listitem/forced-colors-styles.css.js.map +0 -0
  1093. /package/list/{lib → internal}/listitem/forced-colors-styles.scss +0 -0
  1094. /package/list/{lib → internal}/listitem/harness.d.ts +0 -0
  1095. /package/list/{lib → internal}/listitem/harness.js +0 -0
  1096. /package/list/{lib → internal}/listitem/harness.js.map +0 -0
  1097. /package/list/{lib → internal}/listitem/list-item-only.d.ts +0 -0
  1098. /package/list/{lib → internal}/listitem/list-item-only.js +0 -0
  1099. /package/list/{lib → internal}/listitem/list-item-only.js.map +0 -0
  1100. /package/list/{lib → internal}/listitem/list-item-styles.css.d.ts +0 -0
  1101. /package/list/{lib → internal}/listitem/list-item-styles.scss +0 -0
  1102. /package/{list/lib/listitem → menu/internal}/forced-colors-styles.css.d.ts +0 -0
  1103. /package/menu/{lib → internal}/forced-colors-styles.css.js +0 -0
  1104. /package/menu/{lib → internal}/forced-colors-styles.css.js.map +0 -0
  1105. /package/menu/{lib → internal}/forced-colors-styles.scss +0 -0
  1106. /package/menu/{lib → internal}/menu-styles.css.d.ts +0 -0
  1107. /package/menu/{lib → internal}/menu-styles.scss +0 -0
  1108. /package/menu/{lib → internal/menuitem}/forced-colors-styles.css.d.ts +0 -0
  1109. /package/menu/{lib → internal}/menuitem/menu-item-styles.css.d.ts +0 -0
  1110. /package/menu/{lib → internal}/menuitem/menu-item-styles.scss +0 -0
  1111. /package/menu/{lib → internal}/surfacePositionController.d.ts +0 -0
  1112. /package/menu/{lib → internal}/surfacePositionController.js +0 -0
  1113. /package/menu/{lib → internal}/surfacePositionController.js.map +0 -0
  1114. /package/menu/{lib → internal}/types.d.ts +0 -0
  1115. /package/menu/{lib → internal}/types.js +0 -0
  1116. /package/menu/{lib → internal}/types.js.map +0 -0
  1117. /package/{circularprogress/lib → progress/internal}/circular-progress-styles.css.d.ts +0 -0
  1118. /package/{circularprogress/lib → progress/internal}/circular-progress-styles.scss +0 -0
  1119. /package/{linearprogress/lib → progress/internal}/linear-progress-styles.css.d.ts +0 -0
  1120. /package/{linearprogress/lib → progress/internal}/linear-progress-styles.scss +0 -0
  1121. /package/{menu/lib/menuitem → radio/internal}/forced-colors-styles.css.d.ts +0 -0
  1122. /package/radio/{lib → internal}/radio-styles.css.d.ts +0 -0
  1123. /package/radio/{lib → internal}/radio-styles.scss +0 -0
  1124. /package/radio/{lib → internal}/single-selection-controller.d.ts +0 -0
  1125. /package/ripple/{lib → internal}/_ripple.scss +0 -0
  1126. /package/ripple/{lib → internal}/ripple-styles.css.d.ts +0 -0
  1127. /package/ripple/{lib → internal}/ripple-styles.css.js +0 -0
  1128. /package/ripple/{lib → internal}/ripple-styles.css.js.map +0 -0
  1129. /package/ripple/{lib → internal}/ripple-styles.scss +0 -0
  1130. /package/ripple/{lib → internal}/ripple.d.ts +0 -0
  1131. /package/select/{lib → internal}/filled-forced-colors-styles.css.d.ts +0 -0
  1132. /package/select/{lib → internal}/filled-forced-colors-styles.css.js +0 -0
  1133. /package/select/{lib → internal}/filled-forced-colors-styles.css.js.map +0 -0
  1134. /package/select/{lib → internal}/filled-forced-colors-styles.scss +0 -0
  1135. /package/select/{lib → internal}/filled-select-styles.css.d.ts +0 -0
  1136. /package/select/{lib → internal}/filled-select-styles.scss +0 -0
  1137. /package/select/{lib → internal}/filled-select.d.ts +0 -0
  1138. /package/select/{lib → internal}/filled-select.js +0 -0
  1139. /package/select/{lib → internal}/filled-select.js.map +0 -0
  1140. /package/select/{lib → internal}/outlined-forced-colors-styles.css.d.ts +0 -0
  1141. /package/select/{lib → internal}/outlined-forced-colors-styles.css.js +0 -0
  1142. /package/select/{lib → internal}/outlined-forced-colors-styles.css.js.map +0 -0
  1143. /package/select/{lib → internal}/outlined-forced-colors-styles.scss +0 -0
  1144. /package/select/{lib → internal}/outlined-select-styles.css.d.ts +0 -0
  1145. /package/select/{lib → internal}/outlined-select-styles.scss +0 -0
  1146. /package/select/{lib → internal}/outlined-select.d.ts +0 -0
  1147. /package/select/{lib → internal}/outlined-select.js +0 -0
  1148. /package/select/{lib → internal}/outlined-select.js.map +0 -0
  1149. /package/select/{lib → internal}/shared-styles.css.d.ts +0 -0
  1150. /package/select/{lib → internal}/shared-styles.scss +0 -0
  1151. /package/{radio/lib → slider/internal}/forced-colors-styles.css.d.ts +0 -0
  1152. /package/slider/{lib → internal}/forced-colors-styles.css.js +0 -0
  1153. /package/slider/{lib → internal}/forced-colors-styles.css.js.map +0 -0
  1154. /package/slider/{lib → internal}/forced-colors-styles.scss +0 -0
  1155. /package/slider/{lib → internal}/slider-styles.css.d.ts +0 -0
  1156. /package/slider/{lib → internal}/slider-styles.scss +0 -0
  1157. /package/switch/{lib → internal}/README.md +0 -0
  1158. /package/{slider/lib → switch/internal}/forced-colors-styles.css.d.ts +0 -0
  1159. /package/switch/{lib → internal}/switch-styles.css.d.ts +0 -0
  1160. /package/switch/{lib → internal}/switch-styles.scss +0 -0
  1161. /package/tabs/{lib → internal}/tab-styles.css.d.ts +0 -0
  1162. /package/tabs/{lib → internal}/tab-styles.scss +0 -0
  1163. /package/tabs/{lib → internal}/tabs-styles.css.d.ts +0 -0
  1164. /package/tabs/{lib → internal}/tabs-styles.css.js +0 -0
  1165. /package/tabs/{lib → internal}/tabs-styles.css.js.map +0 -0
  1166. /package/tabs/{lib → internal}/tabs-styles.scss +0 -0
  1167. /package/textfield/{lib → internal}/_icon.scss +0 -0
  1168. /package/textfield/{lib → internal}/filled-forced-colors-styles.css.d.ts +0 -0
  1169. /package/textfield/{lib → internal}/filled-forced-colors-styles.css.js +0 -0
  1170. /package/textfield/{lib → internal}/filled-forced-colors-styles.css.js.map +0 -0
  1171. /package/textfield/{lib → internal}/filled-forced-colors-styles.scss +0 -0
  1172. /package/textfield/{lib → internal}/filled-styles.css.d.ts +0 -0
  1173. /package/textfield/{lib → internal}/filled-styles.scss +0 -0
  1174. /package/textfield/{lib → internal}/filled-text-field.d.ts +0 -0
  1175. /package/textfield/{lib → internal}/filled-text-field.js +0 -0
  1176. /package/textfield/{lib → internal}/filled-text-field.js.map +0 -0
  1177. /package/textfield/{lib → internal}/outlined-forced-colors-styles.css.d.ts +0 -0
  1178. /package/textfield/{lib → internal}/outlined-forced-colors-styles.css.js +0 -0
  1179. /package/textfield/{lib → internal}/outlined-forced-colors-styles.css.js.map +0 -0
  1180. /package/textfield/{lib → internal}/outlined-forced-colors-styles.scss +0 -0
  1181. /package/textfield/{lib → internal}/outlined-styles.css.d.ts +0 -0
  1182. /package/textfield/{lib → internal}/outlined-styles.scss +0 -0
  1183. /package/textfield/{lib → internal}/outlined-text-field.d.ts +0 -0
  1184. /package/textfield/{lib → internal}/outlined-text-field.js +0 -0
  1185. /package/textfield/{lib → internal}/outlined-text-field.js.map +0 -0
  1186. /package/textfield/{lib → internal}/shared-styles.css.d.ts +0 -0
  1187. /package/textfield/{lib → internal}/shared-styles.scss +0 -0
@@ -1,561 +0,0 @@
1
- /**
2
- * @license
3
- * Copyright 2023 Google LLC
4
- * SPDX-License-Identifier: Apache-2.0
5
- */
6
- import { __decorate } from "tslib";
7
- import '../../elevation/elevation.js';
8
- import { html, LitElement } from 'lit';
9
- import { property, query, state } from 'lit/decorators.js';
10
- import { classMap } from 'lit/directives/class-map.js';
11
- import { redispatchEvent } from '../../internal/controller/events.js';
12
- import { createThrottle, msFromTimeCSSValue } from '../../internal/motion/animation.js';
13
- // This is required for decorators.
14
- // tslint:disable:no-new-decorators
15
- /**
16
- * Default close action.
17
- */
18
- export const CLOSE_ACTION = 'close';
19
- const OPENING_TRANSITION_PROP = '--_opening-transition-duration';
20
- const CLOSING_TRANSITION_PROP = '--_closing-transition-duration';
21
- /**
22
- * A dialog component.
23
- *
24
- * @fires opening Dispatched when the dialog is opening before any animations.
25
- * @fires opened Dispatched when the dialog has opened after any animations.
26
- * @fires closing Dispatched when the dialog is closing before any animations.
27
- * @fires closed Dispatched when the dialog has closed after any animations.
28
- * @fires cancel The native HTMLDialogElement cancel event.
29
- */
30
- export class Dialog extends LitElement {
31
- constructor() {
32
- super(...arguments);
33
- /**
34
- * Opens the dialog when set to `true` and closes it when set to `false`.
35
- */
36
- this.open = false;
37
- /**
38
- * Setting fullscreen displays the dialog fullscreen on small screens.
39
- * This can be customized via the `fullscreenBreakpoint` property.
40
- * When showing fullscreen, the header will take up less vertical space, and
41
- * the dialog will have a `showing-fullscreen`attribute, allowing content to
42
- * be styled in this state.
43
- *
44
- * Dialogs can be sized by setting:
45
- *
46
- * * --md-dialog-container-min-block-size
47
- * * --md-dialog-container-max-block-size
48
- * * --md-dialog-container-min-inline-size
49
- * * --md-dialog-container-max-inline-size
50
- *
51
- * These are typically configured via media queries and are independent of the
52
- * fullscreen setting.
53
- */
54
- this.fullscreen = false;
55
- /**
56
- * A media query string specifying the breakpoint at which the dialog
57
- * should be shown fullscreen. Note, this only applies when the `fullscreen`
58
- * property is set.
59
- *
60
- * By default, the dialog is shown fullscreen on screens less than 600px wide
61
- * or 400px tall.
62
- */
63
- this.fullscreenBreakpoint = '(max-width: 600px), (max-height: 400px)';
64
- /**
65
- * Hides the dialog footer, making any content slotted into the footer
66
- * inaccessible.
67
- */
68
- this.footerHidden = false;
69
- /**
70
- * Renders footer content in a vertically stacked alignment rather than the
71
- * normal horizontal alignment.
72
- */
73
- this.stacked = false;
74
- /**
75
- * When the dialog is closed it disptaches `closing` and `closed` events.
76
- * These events have an action property which has a default value of
77
- * the value of this property. Specific actions have explicit values but when
78
- * a value is not specified, the default is used. For example, clicking the
79
- * scrim, pressing escape, or clicking a button with an action attribute set
80
- * produce an explicit action.
81
- *
82
- * Defaults to `close`.
83
- */
84
- this.defaultAction = CLOSE_ACTION;
85
- /**
86
- * The name of an attribute which can be placed on any element slotted into
87
- * the dialog. If an element has an action attribute set, clicking it will
88
- * close the dialog and the `closing` and `closed` events dispatched will
89
- * have their action property set the value of this attribute on the
90
- * clicked element.The default value is `dialog-action`. For example,
91
- *
92
- * <md-dialog>
93
- * Content
94
- * <md-filled-button slot="footer" dialog-action="buy">
95
- * Buy
96
- * </md-filled-button>
97
- * </md-dialog>
98
- */
99
- this.actionAttribute = 'dialog-action';
100
- /**
101
- * When the dialog is opened, it will focus the first element which has
102
- * an attribute name matching this property. The default value is
103
- * `dialogFocus`. For example:
104
- *
105
- * <md-dialog>
106
- * <md-filled-text-field
107
- * label="Enter some text"
108
- * dialog-focus
109
- * >
110
- * </md-filled-text-field>
111
- * </md-dialog>
112
- */
113
- this.focusAttribute = 'dialog-focus';
114
- /**
115
- * Clicking on the scrim surrounding the dialog closes the dialog.
116
- * The `closing` and `closed` events this produces have an `action` property
117
- * which is the value of this property and defaults to `close`.
118
- */
119
- this.scrimClickAction = CLOSE_ACTION;
120
- /**
121
- * Pressing the `escape` key while the dialog is open closes the dialog.
122
- * The `closing` and `closed` events this produces have an `action` property
123
- * which is the value of this property and defaults to `close`.
124
- */
125
- this.escapeKeyAction = CLOSE_ACTION;
126
- /**
127
- * When opened, the dialog is displayed modeless or non-modal. This
128
- * allows users to interact with content outside the dialog without
129
- * closing the dialog and does not display the scrim around the dialog.
130
- */
131
- this.modeless = false;
132
- /**
133
- * Set to make the dialog position draggable.
134
- */
135
- this.draggable = false;
136
- this.throttle = createThrottle();
137
- /**
138
- * Private properties that reflect for styling manually in `updated`.
139
- */
140
- this.showingFullscreen = false;
141
- this.showingOpen = false;
142
- this.opening = false;
143
- this.closing = false;
144
- /**
145
- * Transition kind. Supported options include: grow, shrink, grow-down,
146
- * grow-up, grow-left, and grow-right.
147
- *
148
- * Defaults to grow-down.
149
- */
150
- this.transition = 'grow-down';
151
- this.dragging = false;
152
- this.dragMargin = 8;
153
- this.fullscreenQueryListener = undefined;
154
- }
155
- static setDocumentScrollingDisabled(disabled = false) {
156
- let { preventedScrollingCount, scrollbarTester } = Dialog;
157
- Dialog.preventedScrollingCount = preventedScrollingCount =
158
- Math.max(preventedScrollingCount + (Number(disabled) || -1), 0);
159
- const shouldPrevent = Boolean(preventedScrollingCount);
160
- const { style } = document.body;
161
- if (shouldPrevent && style.overflow === 'hidden') {
162
- return;
163
- }
164
- if (scrollbarTester === undefined) {
165
- Dialog.scrollbarTester = scrollbarTester = document.createElement('div');
166
- scrollbarTester.style.cssText =
167
- `position: absolute; height: 0; width: 100%; visibility: hidden; pointer-events: none;`;
168
- }
169
- // Appends an element to see if its offsetWidth changes when overflow is
170
- // altered. If it does, then add end inline padding to restore the width to
171
- // avoid a visible layout shift.
172
- document.body.append(scrollbarTester);
173
- const { offsetWidth } = scrollbarTester;
174
- style.overflow = shouldPrevent ? 'hidden' : '';
175
- const scrollbarWidth = scrollbarTester.offsetWidth - offsetWidth;
176
- scrollbarTester.remove();
177
- style.paddingInlineEnd = shouldPrevent ? `${scrollbarWidth}px` : '';
178
- }
179
- /**
180
- * Opens and shows the dialog. This is equivalent to setting the `open`
181
- * property to true.
182
- */
183
- show() {
184
- this.open = true;
185
- }
186
- /**
187
- * Closes the dialog. This is equivalent to setting the `open`
188
- * property to false.
189
- */
190
- close(action = '') {
191
- this.currentAction = action;
192
- this.open = false;
193
- }
194
- /**
195
- * Opens and shows the dialog if it is closed; otherwise closes it.
196
- */
197
- toggleShow() {
198
- if (this.open) {
199
- this.close(this.currentAction);
200
- }
201
- else {
202
- this.show();
203
- }
204
- }
205
- getContentScrollInfo() {
206
- if (!this.hasUpdated || !this.contentElement) {
207
- return { isScrollable: false, isAtScrollTop: true, isAtScrollBottom: true };
208
- }
209
- const { scrollTop, scrollHeight, offsetHeight, clientHeight } = this.contentElement;
210
- return {
211
- isScrollable: scrollHeight > offsetHeight,
212
- isAtScrollTop: scrollTop === 0,
213
- isAtScrollBottom: Math.abs(Math.round(scrollHeight - scrollTop) - clientHeight) <= 2
214
- };
215
- }
216
- render() {
217
- const { isScrollable, isAtScrollTop, isAtScrollBottom } = this.getContentScrollInfo();
218
- return html `
219
- <dialog
220
- @close=${this.handleDialogDismiss}
221
- @cancel=${this.handleDialogDismiss}
222
- @click=${this.handleDialogClick}
223
- class="dialog ${classMap({
224
- 'stacked': this.stacked,
225
- 'scrollable': isScrollable,
226
- 'scroll-divider-header': !isAtScrollTop,
227
- 'scroll-divider-footer': !isAtScrollBottom,
228
- 'footerHidden': this.footerHidden
229
- })}"
230
- aria-labelledby="header"
231
- aria-describedby="content"
232
- >
233
- <div class="container ${classMap({
234
- 'dragging': this.dragging
235
- })}"
236
- @pointermove=${this.handlePointerMove}
237
- @pointerup=${this.handleDragEnd}
238
- >
239
- <md-elevation></md-elevation>
240
- <header class="header">
241
- <slot name="header">
242
- <slot name="headline-prefix"></slot>
243
- <slot name="headline"></slot>
244
- <slot name="headline-suffix"></slot>
245
- </slot>
246
- </header>
247
- <section class="content" @scroll=${this.handleContentScroll}>
248
- <slot></slot>
249
- </section>
250
- <footer class="footer">
251
- <slot name="footer"></slot>
252
- </footer>
253
- </div>
254
- </dialog>`;
255
- }
256
- willUpdate(changed) {
257
- if (changed.has('open')) {
258
- this.opening = this.open;
259
- // only closing if was opened previously...
260
- this.closing = !this.open && changed.get('open');
261
- }
262
- if (changed.has('fullscreen') || changed.has('fullscreenBreakpoint')) {
263
- this.updateFullscreen();
264
- }
265
- }
266
- firstUpdated() {
267
- // Update when content size changes to show/hide scroll dividers.
268
- new ResizeObserver(() => {
269
- if (this.showingOpen) {
270
- this.requestUpdate();
271
- }
272
- }).observe(this.contentElement);
273
- }
274
- updated(changed) {
275
- if (changed.get('draggable') && !this.draggable) {
276
- this.style.removeProperty('--_container-drag-inline-start');
277
- this.style.removeProperty('--_container-drag-block-start');
278
- }
279
- // Reflect internal state to facilitate styling.
280
- this.reflectStateProp(changed, 'opening', this.opening);
281
- this.reflectStateProp(changed, 'closing', this.closing);
282
- this.reflectStateProp(changed, 'showingFullscreen', this.showingFullscreen, 'showing-fullscreen');
283
- this.reflectStateProp(changed, 'showingOpen', this.showingOpen, 'showing-open');
284
- if (!changed.has('open')) {
285
- return;
286
- }
287
- // prevent body scrolling early only when opening to avoid layout
288
- // shift when closing.
289
- if (!this.modeless && this.open) {
290
- Dialog.setDocumentScrollingDisabled(this.open);
291
- }
292
- if (this.open) {
293
- this.contentElement.scrollTop = 0;
294
- if (this.modeless) {
295
- this.dialogElement.show();
296
- }
297
- else {
298
- // Note, native focus handling fails when focused element is in an
299
- // overflow: auto container.
300
- this.dialogElement.showModal();
301
- }
302
- }
303
- // Avoids dispatching initial state.
304
- const shouldDispatchAction = changed.get('open') !== undefined;
305
- this.performTransition(shouldDispatchAction);
306
- }
307
- /**
308
- * Internal state is reflected here as attributes to effect styling. This
309
- * could be done via internal classes, but it's published on the host
310
- * to facilitate the (currently undocumented) possibility of customizing
311
- * styling of user content based on these states.
312
- * Note, in the future this could be done with `:state(...)` when browser
313
- * support improves.
314
- */
315
- reflectStateProp(changed, key, value, attribute) {
316
- attribute ?? (attribute = key);
317
- if (!changed.has(key)) {
318
- return;
319
- }
320
- if (value) {
321
- this.setAttribute(attribute, '');
322
- }
323
- else {
324
- this.removeAttribute(attribute);
325
- }
326
- }
327
- async performTransition(shouldDispatchAction) {
328
- // TODO: pause here only to avoid a double update warning.
329
- await this.updateComplete;
330
- // Focus initial element.
331
- if (this.open) {
332
- this.focus();
333
- }
334
- this.showingOpen = this.open;
335
- if (shouldDispatchAction) {
336
- this.dispatchActionEvent(this.open ? 'opening' : 'closing');
337
- }
338
- // Compute desired transition duration.
339
- const duration = msFromTimeCSSValue(getComputedStyle(this).getPropertyValue(this.open ? OPENING_TRANSITION_PROP : CLOSING_TRANSITION_PROP));
340
- let promise = this.updateComplete;
341
- if (duration > 0) {
342
- promise = new Promise((r) => {
343
- setTimeout(r, duration);
344
- });
345
- }
346
- await promise;
347
- this.opening = false;
348
- this.closing = false;
349
- if (!this.open && this.dialogElement?.open) {
350
- // Closing the dialog triggers an asynchronous `close` event.
351
- // It's important to wait for this event to fire since it changes the
352
- // state of `open` to false.
353
- // Without waiting, this element's `closed` event can be called before
354
- // the dialog's `close` event, which is problematic since the user
355
- // can set `open` in the `closed` event.
356
- // The timing of the event appears to vary via browser and does *not*
357
- // seem to resolve by "task" timing; therefore an explicit promise is
358
- // used.
359
- const closedPromise = new Promise(resolve => {
360
- this.dialogClosedResolver = resolve;
361
- });
362
- this.dialogElement?.close(this.currentAction || this.defaultAction);
363
- await closedPromise;
364
- // enable scrolling late to avoid layout shift when closing
365
- if (!this.modeless) {
366
- Dialog.setDocumentScrollingDisabled(this.open);
367
- }
368
- }
369
- if (shouldDispatchAction) {
370
- this.dispatchActionEvent(this.open ? 'opened' : 'closed');
371
- }
372
- this.currentAction = undefined;
373
- }
374
- dispatchActionEvent(type) {
375
- const detail = { action: this.open ? 'none' : this.currentAction };
376
- this.dispatchEvent(new CustomEvent(type, { detail, bubbles: true }));
377
- }
378
- updateFullscreen() {
379
- if (this.fullscreenQuery !== undefined) {
380
- this.fullscreenQuery.removeEventListener('change', this.fullscreenQueryListener);
381
- this.fullscreenQuery = this.fullscreenQueryListener = undefined;
382
- }
383
- if (!this.fullscreen) {
384
- this.showingFullscreen = false;
385
- return;
386
- }
387
- this.fullscreenQuery = window.matchMedia(this.fullscreenBreakpoint);
388
- this.fullscreenQuery.addEventListener('change', (this.fullscreenQueryListener = (event) => {
389
- this.showingFullscreen = event.matches;
390
- }));
391
- this.showingFullscreen = this.fullscreenQuery.matches;
392
- }
393
- // handles native close/cancel events and we just ensure
394
- // internal state is in sync.
395
- handleDialogDismiss(e) {
396
- if (e.type === 'cancel') {
397
- this.currentAction = this.escapeKeyAction;
398
- // Prevents the <dialog> element from closing when
399
- // `escapeKeyAction` is set to an empty string.
400
- // It also early returns and avoids <md-dialog> internal state
401
- // changes.
402
- if (this.escapeKeyAction === '') {
403
- e.preventDefault();
404
- return;
405
- }
406
- }
407
- this.dialogClosedResolver?.();
408
- this.dialogClosedResolver = undefined;
409
- this.open = false;
410
- this.opening = false;
411
- this.closing = false;
412
- redispatchEvent(this, e);
413
- }
414
- handleDialogClick(e) {
415
- if (!this.open) {
416
- return;
417
- }
418
- this.currentAction =
419
- e.target.getAttribute(this.actionAttribute) ??
420
- (!this.modeless && this.containerElement &&
421
- !e.composedPath().includes(this.containerElement) ?
422
- this.scrimClickAction :
423
- '');
424
- if (this.currentAction !== '') {
425
- this.close(this.currentAction);
426
- }
427
- }
428
- /* This allows the dividers to dynamically show based on scrolling. */
429
- handleContentScroll() {
430
- this.throttle('scroll', () => {
431
- this.requestUpdate();
432
- });
433
- }
434
- getFocusElement() {
435
- const selector = `[${this.focusAttribute}]`;
436
- const slotted = [this.footerSlot, this.contentSlot].flatMap(slot => slot.assignedElements({ flatten: true }));
437
- for (const el of slotted) {
438
- const focusEl = el.matches(selector) ? el : el.querySelector(selector);
439
- if (focusEl) {
440
- return focusEl;
441
- }
442
- }
443
- return null;
444
- }
445
- focus() {
446
- this.getFocusElement()?.focus();
447
- }
448
- blur() {
449
- this.getFocusElement()?.blur();
450
- }
451
- canStartDrag(e) {
452
- if (this.draggable === false || e.defaultPrevented || !(e.buttons & 1) ||
453
- !this.headerElement || !e.composedPath().includes(this.headerElement)) {
454
- return false;
455
- }
456
- return true;
457
- }
458
- handlePointerMove(e) {
459
- if (!this.dragging && !this.canStartDrag(e) || !this.containerElement) {
460
- return;
461
- }
462
- const { top, left, height, width } = this.containerElement.getBoundingClientRect();
463
- if (!this.dragging) {
464
- this.containerElement.setPointerCapture(e.pointerId);
465
- this.dragging = true;
466
- const { x, y } = e;
467
- this.dragInfo = [x, y, top, left];
468
- }
469
- const [sx, sy, st, sl] = this.dragInfo ?? [0, 0, 0, 0];
470
- const dx = e.x - sx;
471
- const dy = e.y - sy;
472
- const ml = window.innerWidth - width - this.dragMargin;
473
- const mt = window.innerHeight - height - this.dragMargin;
474
- const l = Math.max(this.dragMargin, Math.min(ml, dx + sl));
475
- const t = Math.max(this.dragMargin, Math.min(mt, dy + st));
476
- this.style.setProperty('--_container-drag-inline-start', `${l}px`);
477
- this.style.setProperty('--_container-drag-block-start', `${t}px`);
478
- }
479
- handleDragEnd(e) {
480
- if (!this.dragging) {
481
- return;
482
- }
483
- this.containerElement?.releasePointerCapture(e.pointerId);
484
- this.dragging = false;
485
- this.dragInfo = undefined;
486
- }
487
- }
488
- Dialog.preventedScrollingCount = 0;
489
- __decorate([
490
- property({ type: Boolean })
491
- ], Dialog.prototype, "open", void 0);
492
- __decorate([
493
- property({ type: Boolean })
494
- ], Dialog.prototype, "fullscreen", void 0);
495
- __decorate([
496
- property({ attribute: 'fullscreen-breakpoint' })
497
- ], Dialog.prototype, "fullscreenBreakpoint", void 0);
498
- __decorate([
499
- property({ type: Boolean, attribute: 'footer-hidden' })
500
- ], Dialog.prototype, "footerHidden", void 0);
501
- __decorate([
502
- property({ type: Boolean })
503
- ], Dialog.prototype, "stacked", void 0);
504
- __decorate([
505
- property({ attribute: 'default-action' })
506
- ], Dialog.prototype, "defaultAction", void 0);
507
- __decorate([
508
- property({ attribute: 'action-attribute' })
509
- ], Dialog.prototype, "actionAttribute", void 0);
510
- __decorate([
511
- property({ attribute: 'focus-attribute' })
512
- ], Dialog.prototype, "focusAttribute", void 0);
513
- __decorate([
514
- property({ attribute: 'scrim-click-action' })
515
- ], Dialog.prototype, "scrimClickAction", void 0);
516
- __decorate([
517
- property({ attribute: 'escape-key-action' })
518
- ], Dialog.prototype, "escapeKeyAction", void 0);
519
- __decorate([
520
- property({ type: Boolean, reflect: true })
521
- ], Dialog.prototype, "modeless", void 0);
522
- __decorate([
523
- property({ type: Boolean })
524
- ], Dialog.prototype, "draggable", void 0);
525
- __decorate([
526
- query('.dialog', true)
527
- ], Dialog.prototype, "dialogElement", void 0);
528
- __decorate([
529
- query('slot[name=footer]', true)
530
- ], Dialog.prototype, "footerSlot", void 0);
531
- __decorate([
532
- query('slot:not([name])', true)
533
- ], Dialog.prototype, "contentSlot", void 0);
534
- __decorate([
535
- query(`.content`, true)
536
- ], Dialog.prototype, "contentElement", void 0);
537
- __decorate([
538
- query(`.container`, true)
539
- ], Dialog.prototype, "containerElement", void 0);
540
- __decorate([
541
- query(`.header`, true)
542
- ], Dialog.prototype, "headerElement", void 0);
543
- __decorate([
544
- state()
545
- ], Dialog.prototype, "showingFullscreen", void 0);
546
- __decorate([
547
- state()
548
- ], Dialog.prototype, "showingOpen", void 0);
549
- __decorate([
550
- state()
551
- ], Dialog.prototype, "opening", void 0);
552
- __decorate([
553
- state()
554
- ], Dialog.prototype, "closing", void 0);
555
- __decorate([
556
- property({ reflect: true })
557
- ], Dialog.prototype, "transition", void 0);
558
- __decorate([
559
- state()
560
- ], Dialog.prototype, "dragging", void 0);
561
- //# sourceMappingURL=dialog.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"dialog.js","sourceRoot":"","sources":["dialog.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * @license\n * Copyright 2023 Google LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport '../../elevation/elevation.js';\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 {redispatchEvent} from '../../internal/controller/events.js';\nimport {createThrottle, msFromTimeCSSValue} from '../../internal/motion/animation.js';\n\n// This is required for decorators.\n// tslint:disable:no-new-decorators\n\n/**\n * Default close action.\n */\nexport const CLOSE_ACTION = 'close';\n\nconst OPENING_TRANSITION_PROP = '--_opening-transition-duration';\nconst CLOSING_TRANSITION_PROP = '--_closing-transition-duration';\n\n/**\n * A dialog component.\n * \n * @fires opening Dispatched when the dialog is opening before any animations.\n * @fires opened Dispatched when the dialog has opened after any animations.\n * @fires closing Dispatched when the dialog is closing before any animations.\n * @fires closed Dispatched when the dialog has closed after any animations.\n * @fires cancel The native HTMLDialogElement cancel event.\n */\nexport class Dialog extends LitElement {\n private static preventedScrollingCount = 0;\n private static scrollbarTester: HTMLDivElement;\n\n private static setDocumentScrollingDisabled(disabled = false) {\n let {preventedScrollingCount, scrollbarTester} = Dialog;\n Dialog.preventedScrollingCount = preventedScrollingCount =\n Math.max(preventedScrollingCount + (Number(disabled) || -1), 0);\n const shouldPrevent = Boolean(preventedScrollingCount);\n const {style} = document.body;\n if (shouldPrevent && style.overflow === 'hidden') {\n return;\n }\n if (scrollbarTester === undefined) {\n Dialog.scrollbarTester = scrollbarTester = document.createElement('div');\n scrollbarTester.style.cssText =\n `position: absolute; height: 0; width: 100%; visibility: hidden; pointer-events: none;`;\n }\n // Appends an element to see if its offsetWidth changes when overflow is\n // altered. If it does, then add end inline padding to restore the width to\n // avoid a visible layout shift.\n document.body.append(scrollbarTester);\n const {offsetWidth} = scrollbarTester;\n style.overflow = shouldPrevent ? 'hidden' : '';\n const scrollbarWidth = scrollbarTester.offsetWidth - offsetWidth;\n scrollbarTester.remove();\n style.paddingInlineEnd = shouldPrevent ? `${scrollbarWidth}px` : '';\n }\n\n /**\n * Opens the dialog when set to `true` and closes it when set to `false`.\n */\n @property({type: Boolean}) open = false;\n\n /**\n * Setting fullscreen displays the dialog fullscreen on small screens.\n * This can be customized via the `fullscreenBreakpoint` property.\n * When showing fullscreen, the header will take up less vertical space, and\n * the dialog will have a `showing-fullscreen`attribute, allowing content to\n * be styled in this state.\n *\n * Dialogs can be sized by setting:\n *\n * * --md-dialog-container-min-block-size\n * * --md-dialog-container-max-block-size\n * * --md-dialog-container-min-inline-size\n * * --md-dialog-container-max-inline-size\n *\n * These are typically configured via media queries and are independent of the\n * fullscreen setting.\n */\n @property({type: Boolean}) fullscreen = false;\n\n /**\n * A media query string specifying the breakpoint at which the dialog\n * should be shown fullscreen. Note, this only applies when the `fullscreen`\n * property is set.\n *\n * By default, the dialog is shown fullscreen on screens less than 600px wide\n * or 400px tall.\n */\n @property({attribute: 'fullscreen-breakpoint'})\n fullscreenBreakpoint = '(max-width: 600px), (max-height: 400px)';\n\n /**\n * Hides the dialog footer, making any content slotted into the footer\n * inaccessible.\n */\n @property({type: Boolean, attribute: 'footer-hidden'}) footerHidden = false;\n\n /**\n * Renders footer content in a vertically stacked alignment rather than the\n * normal horizontal alignment.\n */\n @property({type: Boolean}) stacked = false;\n\n /**\n * When the dialog is closed it disptaches `closing` and `closed` events.\n * These events have an action property which has a default value of\n * the value of this property. Specific actions have explicit values but when\n * a value is not specified, the default is used. For example, clicking the\n * scrim, pressing escape, or clicking a button with an action attribute set\n * produce an explicit action.\n *\n * Defaults to `close`.\n */\n @property({attribute: 'default-action'}) defaultAction = CLOSE_ACTION;\n\n /**\n * The name of an attribute which can be placed on any element slotted into\n * the dialog. If an element has an action attribute set, clicking it will\n * close the dialog and the `closing` and `closed` events dispatched will\n * have their action property set the value of this attribute on the\n * clicked element.The default value is `dialog-action`. For example,\n *\n * <md-dialog>\n * Content\n * <md-filled-button slot=\"footer\" dialog-action=\"buy\">\n * Buy\n * </md-filled-button>\n * </md-dialog>\n */\n @property({attribute: 'action-attribute'}) actionAttribute = 'dialog-action';\n\n /**\n * When the dialog is opened, it will focus the first element which has\n * an attribute name matching this property. The default value is\n * `dialogFocus`. For example:\n *\n * <md-dialog>\n * <md-filled-text-field\n * label=\"Enter some text\"\n * dialog-focus\n * >\n * </md-filled-text-field>\n * </md-dialog>\n */\n @property({attribute: 'focus-attribute'}) focusAttribute = 'dialog-focus';\n\n /**\n * Clicking on the scrim surrounding the dialog closes the dialog.\n * The `closing` and `closed` events this produces have an `action` property\n * which is the value of this property and defaults to `close`.\n */\n @property({attribute: 'scrim-click-action'}) scrimClickAction = CLOSE_ACTION;\n\n /**\n * Pressing the `escape` key while the dialog is open closes the dialog.\n * The `closing` and `closed` events this produces have an `action` property\n * which is the value of this property and defaults to `close`.\n */\n @property({attribute: 'escape-key-action'}) escapeKeyAction = CLOSE_ACTION;\n\n /**\n * When opened, the dialog is displayed modeless or non-modal. This\n * allows users to interact with content outside the dialog without\n * closing the dialog and does not display the scrim around the dialog.\n */\n @property({type: Boolean, reflect: true}) modeless = false;\n\n /**\n * Set to make the dialog position draggable.\n */\n @property({type: Boolean}) override draggable = false;\n\n private readonly throttle = createThrottle();\n\n @query('.dialog', true)\n private readonly dialogElement!: HTMLDialogElement|null;\n\n // slots tracked to find focusable elements.\n @query('slot[name=footer]', true)\n private readonly footerSlot!: HTMLSlotElement;\n @query('slot:not([name])', true)\n private readonly contentSlot!: HTMLSlotElement;\n // for scrolling related styling\n @query(`.content`, true)\n private readonly contentElement!: HTMLDivElement|null;\n // used to determine container size for dragging\n @query(`.container`, true)\n private readonly containerElement!: HTMLDivElement|null;\n // used to determine where users can drag from.\n @query(`.header`, true) private readonly headerElement!: HTMLDivElement|null;\n\n /**\n * Private properties that reflect for styling manually in `updated`.\n */\n @state() private showingFullscreen = false;\n @state() private showingOpen = false;\n @state() private opening = false;\n @state() private closing = false;\n\n /**\n * Transition kind. Supported options include: grow, shrink, grow-down,\n * grow-up, grow-left, and grow-right.\n *\n * Defaults to grow-down.\n */\n @property({reflect: true}) transition = 'grow-down';\n\n private currentAction: string|undefined;\n\n @state() private dragging = false;\n private readonly dragMargin = 8;\n private dragInfo?: [number, number, number, number]|undefined;\n\n /**\n * Opens and shows the dialog. This is equivalent to setting the `open`\n * property to true.\n */\n show() {\n this.open = true;\n }\n\n /**\n * Closes the dialog. This is equivalent to setting the `open`\n * property to false.\n */\n close(action = '') {\n this.currentAction = action;\n this.open = false;\n }\n\n /**\n * Opens and shows the dialog if it is closed; otherwise closes it.\n */\n toggleShow() {\n if (this.open) {\n this.close(this.currentAction);\n } else {\n this.show();\n }\n }\n\n private getContentScrollInfo() {\n if (!this.hasUpdated || !this.contentElement) {\n return {isScrollable: false, isAtScrollTop: true, isAtScrollBottom: true};\n }\n const {scrollTop, scrollHeight, offsetHeight, clientHeight} =\n this.contentElement;\n return {\n isScrollable: scrollHeight > offsetHeight,\n isAtScrollTop: scrollTop === 0,\n isAtScrollBottom:\n Math.abs(Math.round(scrollHeight - scrollTop) - clientHeight) <= 2\n };\n }\n\n protected override render() {\n const {isScrollable, isAtScrollTop, isAtScrollBottom} =\n this.getContentScrollInfo();\n return html`\n <dialog\n @close=${this.handleDialogDismiss}\n @cancel=${this.handleDialogDismiss}\n @click=${this.handleDialogClick}\n class=\"dialog ${classMap({\n 'stacked': this.stacked,\n 'scrollable': isScrollable,\n 'scroll-divider-header': !isAtScrollTop,\n 'scroll-divider-footer': !isAtScrollBottom,\n 'footerHidden': this.footerHidden\n })}\"\n aria-labelledby=\"header\"\n aria-describedby=\"content\"\n >\n <div class=\"container ${classMap({\n 'dragging': this.dragging\n })}\"\n @pointermove=${this.handlePointerMove}\n @pointerup=${this.handleDragEnd}\n >\n <md-elevation></md-elevation>\n <header class=\"header\">\n <slot name=\"header\">\n <slot name=\"headline-prefix\"></slot>\n <slot name=\"headline\"></slot>\n <slot name=\"headline-suffix\"></slot>\n </slot>\n </header>\n <section class=\"content\" @scroll=${this.handleContentScroll}>\n <slot></slot>\n </section>\n <footer class=\"footer\">\n <slot name=\"footer\"></slot>\n </footer>\n </div>\n </dialog>`;\n }\n\n protected override willUpdate(changed: PropertyValues) {\n if (changed.has('open')) {\n this.opening = this.open;\n // only closing if was opened previously...\n this.closing = !this.open && changed.get('open');\n }\n if (changed.has('fullscreen') || changed.has('fullscreenBreakpoint')) {\n this.updateFullscreen();\n }\n }\n\n protected override firstUpdated() {\n // Update when content size changes to show/hide scroll dividers.\n new ResizeObserver(() => {\n if (this.showingOpen) {\n this.requestUpdate();\n }\n }).observe(this.contentElement!);\n }\n\n protected override updated(changed: PropertyValues) {\n if (changed.get('draggable') && !this.draggable) {\n this.style.removeProperty('--_container-drag-inline-start');\n this.style.removeProperty('--_container-drag-block-start');\n }\n // Reflect internal state to facilitate styling.\n this.reflectStateProp(changed, 'opening', this.opening);\n this.reflectStateProp(changed, 'closing', this.closing);\n this.reflectStateProp(\n changed, 'showingFullscreen', this.showingFullscreen,\n 'showing-fullscreen');\n this.reflectStateProp(\n changed, 'showingOpen', this.showingOpen, 'showing-open');\n if (!changed.has('open')) {\n return;\n }\n // prevent body scrolling early only when opening to avoid layout\n // shift when closing.\n if (!this.modeless && this.open) {\n Dialog.setDocumentScrollingDisabled(this.open);\n }\n if (this.open) {\n this.contentElement!.scrollTop = 0;\n if (this.modeless) {\n this.dialogElement!.show();\n } else {\n // Note, native focus handling fails when focused element is in an\n // overflow: auto container.\n this.dialogElement!.showModal();\n }\n }\n // Avoids dispatching initial state.\n const shouldDispatchAction = changed.get('open') !== undefined;\n this.performTransition(shouldDispatchAction);\n }\n\n /**\n * Internal state is reflected here as attributes to effect styling. This\n * could be done via internal classes, but it's published on the host\n * to facilitate the (currently undocumented) possibility of customizing\n * styling of user content based on these states.\n * Note, in the future this could be done with `:state(...)` when browser\n * support improves.\n */\n private reflectStateProp(\n changed: PropertyValues, key: string, value: unknown,\n attribute?: string) {\n attribute ??= key;\n if (!changed.has(key)) {\n return;\n }\n if (value) {\n this.setAttribute(attribute, '');\n } else {\n this.removeAttribute(attribute);\n }\n }\n\n private dialogClosedResolver?: () => void;\n\n private async performTransition(shouldDispatchAction: boolean) {\n // TODO: pause here only to avoid a double update warning.\n await this.updateComplete;\n // Focus initial element.\n if (this.open) {\n this.focus();\n }\n this.showingOpen = this.open;\n if (shouldDispatchAction) {\n this.dispatchActionEvent(this.open ? 'opening' : 'closing');\n }\n // Compute desired transition duration.\n const duration = msFromTimeCSSValue(getComputedStyle(this).getPropertyValue(\n this.open ? OPENING_TRANSITION_PROP : CLOSING_TRANSITION_PROP));\n let promise = this.updateComplete;\n if (duration > 0) {\n promise = new Promise((r) => {\n setTimeout(r, duration);\n });\n }\n await promise;\n this.opening = false;\n this.closing = false;\n if (!this.open && this.dialogElement?.open) {\n // Closing the dialog triggers an asynchronous `close` event.\n // It's important to wait for this event to fire since it changes the\n // state of `open` to false.\n // Without waiting, this element's `closed` event can be called before\n // the dialog's `close` event, which is problematic since the user\n // can set `open` in the `closed` event.\n // The timing of the event appears to vary via browser and does *not*\n // seem to resolve by \"task\" timing; therefore an explicit promise is\n // used.\n const closedPromise = new Promise<void>(resolve => {\n this.dialogClosedResolver = resolve;\n });\n this.dialogElement?.close(this.currentAction || this.defaultAction);\n await closedPromise;\n // enable scrolling late to avoid layout shift when closing\n if (!this.modeless) {\n Dialog.setDocumentScrollingDisabled(this.open);\n }\n }\n if (shouldDispatchAction) {\n this.dispatchActionEvent(this.open ? 'opened' : 'closed');\n }\n this.currentAction = undefined;\n }\n\n private dispatchActionEvent(type: string) {\n const detail = {action: this.open ? 'none' : this.currentAction};\n this.dispatchEvent(new CustomEvent(type, {detail, bubbles: true}));\n }\n\n /* Live media query for matching user specified fullscreen breakpoint. */\n private fullscreenQuery?: MediaQueryList;\n private fullscreenQueryListener:\n ((e: MediaQueryListEvent) => void)|undefined = undefined;\n private updateFullscreen() {\n if (this.fullscreenQuery !== undefined) {\n this.fullscreenQuery.removeEventListener(\n 'change', this.fullscreenQueryListener!);\n this.fullscreenQuery = this.fullscreenQueryListener = undefined;\n }\n if (!this.fullscreen) {\n this.showingFullscreen = false;\n return;\n }\n this.fullscreenQuery = window.matchMedia(this.fullscreenBreakpoint);\n this.fullscreenQuery.addEventListener(\n 'change',\n (this.fullscreenQueryListener = (event: MediaQueryListEvent) => {\n this.showingFullscreen = event.matches;\n }));\n this.showingFullscreen = this.fullscreenQuery.matches;\n }\n\n // handles native close/cancel events and we just ensure\n // internal state is in sync.\n private handleDialogDismiss(e: Event) {\n if (e.type === 'cancel') {\n this.currentAction = this.escapeKeyAction;\n // Prevents the <dialog> element from closing when\n // `escapeKeyAction` is set to an empty string.\n // It also early returns and avoids <md-dialog> internal state\n // changes.\n if (this.escapeKeyAction === '') {\n e.preventDefault();\n return;\n }\n }\n this.dialogClosedResolver?.();\n this.dialogClosedResolver = undefined;\n this.open = false;\n this.opening = false;\n this.closing = false;\n redispatchEvent(this, e);\n }\n\n private handleDialogClick(e: Event) {\n if (!this.open) {\n return;\n }\n this.currentAction =\n (e.target as Element).getAttribute(this.actionAttribute) ??\n (!this.modeless && this.containerElement &&\n !e.composedPath().includes(this.containerElement) ?\n this.scrimClickAction :\n '');\n if (this.currentAction !== '') {\n this.close(this.currentAction);\n }\n }\n\n /* This allows the dividers to dynamically show based on scrolling. */\n private handleContentScroll() {\n this.throttle('scroll', () => {\n this.requestUpdate();\n });\n }\n\n private getFocusElement(): HTMLElement|null {\n const selector = `[${this.focusAttribute}]`;\n const slotted = [this.footerSlot, this.contentSlot].flatMap(\n slot => slot.assignedElements({flatten: true}));\n for (const el of slotted) {\n const focusEl = el.matches(selector) ? el : el.querySelector(selector);\n if (focusEl) {\n return focusEl as HTMLElement;\n }\n }\n return null;\n }\n\n override focus() {\n this.getFocusElement()?.focus();\n }\n\n override blur() {\n this.getFocusElement()?.blur();\n }\n\n private canStartDrag(e: PointerEvent) {\n if (this.draggable === false || e.defaultPrevented || !(e.buttons & 1) ||\n !this.headerElement || !e.composedPath().includes(this.headerElement)) {\n return false;\n }\n return true;\n }\n\n private handlePointerMove(e: PointerEvent) {\n if (!this.dragging && !this.canStartDrag(e) || !this.containerElement) {\n return;\n }\n const {top, left, height, width} =\n this.containerElement.getBoundingClientRect();\n if (!this.dragging) {\n this.containerElement.setPointerCapture(e.pointerId);\n this.dragging = true;\n const {x, y} = e;\n this.dragInfo = [x, y, top, left];\n }\n const [sx, sy, st, sl] = this.dragInfo ?? [0, 0, 0, 0];\n const dx = e.x - sx;\n const dy = e.y - sy;\n const ml = window.innerWidth - width - this.dragMargin;\n const mt = window.innerHeight - height - this.dragMargin;\n const l = Math.max(this.dragMargin, Math.min(ml, dx + sl));\n const t = Math.max(this.dragMargin, Math.min(mt, dy + st));\n this.style.setProperty('--_container-drag-inline-start', `${l}px`);\n this.style.setProperty('--_container-drag-block-start', `${t}px`);\n }\n\n private handleDragEnd(e: PointerEvent) {\n if (!this.dragging) {\n return;\n }\n this.containerElement?.releasePointerCapture(e.pointerId);\n this.dragging = false;\n this.dragInfo = undefined;\n }\n}\n"]}