@maicol07/material-web 2.0.0

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 (1252) hide show
  1. package/LICENSE +202 -0
  2. package/README.md +86 -0
  3. package/all.d.ts +97 -0
  4. package/all.js +106 -0
  5. package/all.js.map +1 -0
  6. package/button/_elevated-button.scss +6 -0
  7. package/button/_filled-button.scss +6 -0
  8. package/button/_filled-tonal-button.scss +6 -0
  9. package/button/_outlined-button.scss +6 -0
  10. package/button/_text-button.scss +6 -0
  11. package/button/elevated-button.d.ts +37 -0
  12. package/button/elevated-button.js +44 -0
  13. package/button/elevated-button.js.map +1 -0
  14. package/button/filled-button.d.ts +35 -0
  15. package/button/filled-button.js +42 -0
  16. package/button/filled-button.js.map +1 -0
  17. package/button/filled-tonal-button.d.ts +36 -0
  18. package/button/filled-tonal-button.js +43 -0
  19. package/button/filled-tonal-button.js.map +1 -0
  20. package/button/harness.d.ts +13 -0
  21. package/button/harness.js +16 -0
  22. package/button/harness.js.map +1 -0
  23. package/button/internal/_elevated-button.scss +37 -0
  24. package/button/internal/_elevation.scss +69 -0
  25. package/button/internal/_filled-button.scss +37 -0
  26. package/button/internal/_filled-tonal-button.scss +37 -0
  27. package/button/internal/_icon.scss +38 -0
  28. package/button/internal/_outlined-button.scss +87 -0
  29. package/button/internal/_shared.scss +178 -0
  30. package/button/internal/_text-button.scss +41 -0
  31. package/button/internal/_touch-target.scss +23 -0
  32. package/button/internal/button.d.ts +81 -0
  33. package/button/internal/button.js +204 -0
  34. package/button/internal/button.js.map +1 -0
  35. package/button/internal/elevated-button.d.ts +13 -0
  36. package/button/internal/elevated-button.js +17 -0
  37. package/button/internal/elevated-button.js.map +1 -0
  38. package/button/internal/elevated-styles.css +1 -0
  39. package/button/internal/elevated-styles.css.map +1 -0
  40. package/button/internal/elevated-styles.d.ts +1 -0
  41. package/button/internal/elevated-styles.js +10 -0
  42. package/button/internal/elevated-styles.js.map +1 -0
  43. package/button/internal/elevated-styles.scss +10 -0
  44. package/button/internal/filled-button.d.ts +13 -0
  45. package/button/internal/filled-button.js +17 -0
  46. package/button/internal/filled-button.js.map +1 -0
  47. package/button/internal/filled-styles.css +1 -0
  48. package/button/internal/filled-styles.css.map +1 -0
  49. package/button/internal/filled-styles.d.ts +1 -0
  50. package/button/internal/filled-styles.js +10 -0
  51. package/button/internal/filled-styles.js.map +1 -0
  52. package/button/internal/filled-styles.scss +10 -0
  53. package/button/internal/filled-tonal-button.d.ts +13 -0
  54. package/button/internal/filled-tonal-button.js +17 -0
  55. package/button/internal/filled-tonal-button.js.map +1 -0
  56. package/button/internal/filled-tonal-styles.css +1 -0
  57. package/button/internal/filled-tonal-styles.css.map +1 -0
  58. package/button/internal/filled-tonal-styles.d.ts +1 -0
  59. package/button/internal/filled-tonal-styles.js +10 -0
  60. package/button/internal/filled-tonal-styles.js.map +1 -0
  61. package/button/internal/filled-tonal-styles.scss +10 -0
  62. package/button/internal/outlined-button.d.ts +12 -0
  63. package/button/internal/outlined-button.js +16 -0
  64. package/button/internal/outlined-button.js.map +1 -0
  65. package/button/internal/outlined-styles.css +1 -0
  66. package/button/internal/outlined-styles.css.map +1 -0
  67. package/button/internal/outlined-styles.d.ts +1 -0
  68. package/button/internal/outlined-styles.js +10 -0
  69. package/button/internal/outlined-styles.js.map +1 -0
  70. package/button/internal/outlined-styles.scss +10 -0
  71. package/button/internal/shared-elevation-styles.css +1 -0
  72. package/button/internal/shared-elevation-styles.css.map +1 -0
  73. package/button/internal/shared-elevation-styles.d.ts +1 -0
  74. package/button/internal/shared-elevation-styles.js +10 -0
  75. package/button/internal/shared-elevation-styles.js.map +1 -0
  76. package/button/internal/shared-elevation-styles.scss +10 -0
  77. package/button/internal/shared-styles.css +1 -0
  78. package/button/internal/shared-styles.css.map +1 -0
  79. package/button/internal/shared-styles.d.ts +1 -0
  80. package/button/internal/shared-styles.js +10 -0
  81. package/button/internal/shared-styles.js.map +1 -0
  82. package/button/internal/shared-styles.scss +14 -0
  83. package/button/internal/text-button.d.ts +11 -0
  84. package/button/internal/text-button.js +12 -0
  85. package/button/internal/text-button.js.map +1 -0
  86. package/button/internal/text-styles.css +1 -0
  87. package/button/internal/text-styles.css.map +1 -0
  88. package/button/internal/text-styles.d.ts +1 -0
  89. package/button/internal/text-styles.js +10 -0
  90. package/button/internal/text-styles.js.map +1 -0
  91. package/button/internal/text-styles.scss +10 -0
  92. package/button/outlined-button.d.ts +37 -0
  93. package/button/outlined-button.js +39 -0
  94. package/button/outlined-button.js.map +1 -0
  95. package/button/text-button.d.ts +35 -0
  96. package/button/text-button.js +37 -0
  97. package/button/text-button.js.map +1 -0
  98. package/checkbox/_checkbox.scss +6 -0
  99. package/checkbox/checkbox.d.ts +28 -0
  100. package/checkbox/checkbox.js +29 -0
  101. package/checkbox/checkbox.js.map +1 -0
  102. package/checkbox/harness.d.ts +13 -0
  103. package/checkbox/harness.js +16 -0
  104. package/checkbox/harness.js.map +1 -0
  105. package/checkbox/internal/_checkbox.scss +392 -0
  106. package/checkbox/internal/checkbox-styles.css +1 -0
  107. package/checkbox/internal/checkbox-styles.css.map +1 -0
  108. package/checkbox/internal/checkbox-styles.d.ts +1 -0
  109. package/checkbox/internal/checkbox-styles.js +10 -0
  110. package/checkbox/internal/checkbox-styles.js.map +1 -0
  111. package/checkbox/internal/checkbox-styles.scss +10 -0
  112. package/checkbox/internal/checkbox.d.ts +72 -0
  113. package/checkbox/internal/checkbox.js +192 -0
  114. package/checkbox/internal/checkbox.js.map +1 -0
  115. package/chips/_assist-chip.scss +6 -0
  116. package/chips/_filter-chip.scss +6 -0
  117. package/chips/_input-chip.scss +6 -0
  118. package/chips/_suggestion-chip.scss +6 -0
  119. package/chips/assist-chip.d.ts +21 -0
  120. package/chips/assist-chip.js +24 -0
  121. package/chips/assist-chip.js.map +1 -0
  122. package/chips/chip-set.d.ts +21 -0
  123. package/chips/chip-set.js +22 -0
  124. package/chips/chip-set.js.map +1 -0
  125. package/chips/filter-chip.d.ts +21 -0
  126. package/chips/filter-chip.js +32 -0
  127. package/chips/filter-chip.js.map +1 -0
  128. package/chips/harness.d.ts +14 -0
  129. package/chips/harness.js +37 -0
  130. package/chips/harness.js.map +1 -0
  131. package/chips/input-chip.d.ts +21 -0
  132. package/chips/input-chip.js +30 -0
  133. package/chips/input-chip.js.map +1 -0
  134. package/chips/internal/_assist-chip.scss +43 -0
  135. package/chips/internal/_chip-set.scss +12 -0
  136. package/chips/internal/_elevated.scss +70 -0
  137. package/chips/internal/_filter-chip.scss +56 -0
  138. package/chips/internal/_input-chip.scss +83 -0
  139. package/chips/internal/_selectable.scss +78 -0
  140. package/chips/internal/_shared.scss +248 -0
  141. package/chips/internal/_suggestion-chip.scss +43 -0
  142. package/chips/internal/_trailing-icon.scss +81 -0
  143. package/chips/internal/assist-chip.d.ts +24 -0
  144. package/chips/internal/assist-chip.js +79 -0
  145. package/chips/internal/assist-chip.js.map +1 -0
  146. package/chips/internal/assist-styles.css +1 -0
  147. package/chips/internal/assist-styles.css.map +1 -0
  148. package/chips/internal/assist-styles.d.ts +1 -0
  149. package/chips/internal/assist-styles.js +10 -0
  150. package/chips/internal/assist-styles.js.map +1 -0
  151. package/chips/internal/assist-styles.scss +10 -0
  152. package/chips/internal/chip-set-styles.css +1 -0
  153. package/chips/internal/chip-set-styles.css.map +1 -0
  154. package/chips/internal/chip-set-styles.d.ts +1 -0
  155. package/chips/internal/chip-set-styles.js +10 -0
  156. package/chips/internal/chip-set-styles.js.map +1 -0
  157. package/chips/internal/chip-set-styles.scss +10 -0
  158. package/chips/internal/chip-set.d.ts +19 -0
  159. package/chips/internal/chip-set.js +128 -0
  160. package/chips/internal/chip-set.js.map +1 -0
  161. package/chips/internal/chip.d.ts +84 -0
  162. package/chips/internal/chip.js +161 -0
  163. package/chips/internal/chip.js.map +1 -0
  164. package/chips/internal/elevated-styles.css +1 -0
  165. package/chips/internal/elevated-styles.css.map +1 -0
  166. package/chips/internal/elevated-styles.d.ts +1 -0
  167. package/chips/internal/elevated-styles.js +10 -0
  168. package/chips/internal/elevated-styles.js.map +1 -0
  169. package/chips/internal/elevated-styles.scss +10 -0
  170. package/chips/internal/filter-chip.d.ts +39 -0
  171. package/chips/internal/filter-chip.js +124 -0
  172. package/chips/internal/filter-chip.js.map +1 -0
  173. package/chips/internal/filter-styles.css +1 -0
  174. package/chips/internal/filter-styles.css.map +1 -0
  175. package/chips/internal/filter-styles.d.ts +1 -0
  176. package/chips/internal/filter-styles.js +10 -0
  177. package/chips/internal/filter-styles.js.map +1 -0
  178. package/chips/internal/filter-styles.scss +10 -0
  179. package/chips/internal/input-chip.d.ts +31 -0
  180. package/chips/internal/input-chip.js +117 -0
  181. package/chips/internal/input-chip.js.map +1 -0
  182. package/chips/internal/input-styles.css +1 -0
  183. package/chips/internal/input-styles.css.map +1 -0
  184. package/chips/internal/input-styles.d.ts +1 -0
  185. package/chips/internal/input-styles.js +10 -0
  186. package/chips/internal/input-styles.js.map +1 -0
  187. package/chips/internal/input-styles.scss +10 -0
  188. package/chips/internal/multi-action-chip.d.ts +23 -0
  189. package/chips/internal/multi-action-chip.js +99 -0
  190. package/chips/internal/multi-action-chip.js.map +1 -0
  191. package/chips/internal/selectable-styles.css +1 -0
  192. package/chips/internal/selectable-styles.css.map +1 -0
  193. package/chips/internal/selectable-styles.d.ts +1 -0
  194. package/chips/internal/selectable-styles.js +10 -0
  195. package/chips/internal/selectable-styles.js.map +1 -0
  196. package/chips/internal/selectable-styles.scss +10 -0
  197. package/chips/internal/shared-styles.css +1 -0
  198. package/chips/internal/shared-styles.css.map +1 -0
  199. package/chips/internal/shared-styles.d.ts +1 -0
  200. package/chips/internal/shared-styles.js +10 -0
  201. package/chips/internal/shared-styles.js.map +1 -0
  202. package/chips/internal/shared-styles.scss +10 -0
  203. package/chips/internal/suggestion-chip.d.ts +11 -0
  204. package/chips/internal/suggestion-chip.js +14 -0
  205. package/chips/internal/suggestion-chip.js.map +1 -0
  206. package/chips/internal/suggestion-styles.css +1 -0
  207. package/chips/internal/suggestion-styles.css.map +1 -0
  208. package/chips/internal/suggestion-styles.d.ts +1 -0
  209. package/chips/internal/suggestion-styles.js +10 -0
  210. package/chips/internal/suggestion-styles.js.map +1 -0
  211. package/chips/internal/suggestion-styles.scss +10 -0
  212. package/chips/internal/trailing-icon-styles.css +1 -0
  213. package/chips/internal/trailing-icon-styles.css.map +1 -0
  214. package/chips/internal/trailing-icon-styles.d.ts +1 -0
  215. package/chips/internal/trailing-icon-styles.js +10 -0
  216. package/chips/internal/trailing-icon-styles.js.map +1 -0
  217. package/chips/internal/trailing-icon-styles.scss +10 -0
  218. package/chips/internal/trailing-icons.d.ts +16 -0
  219. package/chips/internal/trailing-icons.js +48 -0
  220. package/chips/internal/trailing-icons.js.map +1 -0
  221. package/chips/suggestion-chip.d.ts +21 -0
  222. package/chips/suggestion-chip.js +24 -0
  223. package/chips/suggestion-chip.js.map +1 -0
  224. package/color/_color.scss +197 -0
  225. package/common.d.ts +59 -0
  226. package/common.js +68 -0
  227. package/common.js.map +1 -0
  228. package/custom-elements.json +64772 -0
  229. package/dialog/_dialog.scss +6 -0
  230. package/dialog/dialog.d.ts +42 -0
  231. package/dialog/dialog.js +43 -0
  232. package/dialog/dialog.js.map +1 -0
  233. package/dialog/harness.d.ts +13 -0
  234. package/dialog/harness.js +16 -0
  235. package/dialog/harness.js.map +1 -0
  236. package/dialog/internal/_dialog.scss +248 -0
  237. package/dialog/internal/animations.d.ts +47 -0
  238. package/dialog/internal/animations.js +119 -0
  239. package/dialog/internal/animations.js.map +1 -0
  240. package/dialog/internal/dialog-styles.css +1 -0
  241. package/dialog/internal/dialog-styles.css.map +1 -0
  242. package/dialog/internal/dialog-styles.d.ts +1 -0
  243. package/dialog/internal/dialog-styles.js +10 -0
  244. package/dialog/internal/dialog-styles.js.map +1 -0
  245. package/dialog/internal/dialog-styles.scss +10 -0
  246. package/dialog/internal/dialog.d.ts +131 -0
  247. package/dialog/internal/dialog.js +556 -0
  248. package/dialog/internal/dialog.js.map +1 -0
  249. package/divider/_divider.scss +6 -0
  250. package/divider/divider.d.ts +25 -0
  251. package/divider/divider.js +26 -0
  252. package/divider/divider.js.map +1 -0
  253. package/divider/internal/_divider.scss +61 -0
  254. package/divider/internal/divider-styles.css +1 -0
  255. package/divider/internal/divider-styles.css.map +1 -0
  256. package/divider/internal/divider-styles.d.ts +1 -0
  257. package/divider/internal/divider-styles.js +10 -0
  258. package/divider/internal/divider-styles.js.map +1 -0
  259. package/divider/internal/divider-styles.scss +10 -0
  260. package/divider/internal/divider.d.ts +23 -0
  261. package/divider/internal/divider.js +38 -0
  262. package/divider/internal/divider.js.map +1 -0
  263. package/elevation/_elevation.scss +6 -0
  264. package/elevation/elevation.d.ts +23 -0
  265. package/elevation/elevation.js +24 -0
  266. package/elevation/elevation.js.map +1 -0
  267. package/elevation/internal/_elevation.scss +176 -0
  268. package/elevation/internal/elevation-styles.css +1 -0
  269. package/elevation/internal/elevation-styles.css.map +1 -0
  270. package/elevation/internal/elevation-styles.d.ts +1 -0
  271. package/elevation/internal/elevation-styles.js +10 -0
  272. package/elevation/internal/elevation-styles.js.map +1 -0
  273. package/elevation/internal/elevation-styles.scss +10 -0
  274. package/elevation/internal/elevation.d.ts +13 -0
  275. package/elevation/internal/elevation.js +21 -0
  276. package/elevation/internal/elevation.js.map +1 -0
  277. package/fab/_fab.scss +7 -0
  278. package/fab/branded-fab.d.ts +57 -0
  279. package/fab/branded-fab.js +55 -0
  280. package/fab/branded-fab.js.map +1 -0
  281. package/fab/fab.d.ts +44 -0
  282. package/fab/fab.js +45 -0
  283. package/fab/fab.js.map +1 -0
  284. package/fab/harness.d.ts +13 -0
  285. package/fab/harness.js +16 -0
  286. package/fab/harness.js.map +1 -0
  287. package/fab/internal/_fab-branded.scss +37 -0
  288. package/fab/internal/_fab.scss +206 -0
  289. package/fab/internal/_shared.scss +248 -0
  290. package/fab/internal/fab-branded-styles.css +1 -0
  291. package/fab/internal/fab-branded-styles.css.map +1 -0
  292. package/fab/internal/fab-branded-styles.d.ts +1 -0
  293. package/fab/internal/fab-branded-styles.js +10 -0
  294. package/fab/internal/fab-branded-styles.js.map +1 -0
  295. package/fab/internal/fab-branded-styles.scss +10 -0
  296. package/fab/internal/fab-styles.css +1 -0
  297. package/fab/internal/fab-styles.css.map +1 -0
  298. package/fab/internal/fab-styles.d.ts +1 -0
  299. package/fab/internal/fab-styles.js +10 -0
  300. package/fab/internal/fab-styles.js.map +1 -0
  301. package/fab/internal/fab-styles.scss +10 -0
  302. package/fab/internal/fab.d.ts +25 -0
  303. package/fab/internal/fab.js +30 -0
  304. package/fab/internal/fab.js.map +1 -0
  305. package/fab/internal/forced-colors-styles.css +1 -0
  306. package/fab/internal/forced-colors-styles.css.map +1 -0
  307. package/fab/internal/forced-colors-styles.d.ts +1 -0
  308. package/fab/internal/forced-colors-styles.js +10 -0
  309. package/fab/internal/forced-colors-styles.js.map +1 -0
  310. package/fab/internal/forced-colors-styles.scss +29 -0
  311. package/fab/internal/shared-styles.css +1 -0
  312. package/fab/internal/shared-styles.css.map +1 -0
  313. package/fab/internal/shared-styles.d.ts +1 -0
  314. package/fab/internal/shared-styles.js +10 -0
  315. package/fab/internal/shared-styles.js.map +1 -0
  316. package/fab/internal/shared-styles.scss +10 -0
  317. package/fab/internal/shared.d.ts +44 -0
  318. package/fab/internal/shared.js +92 -0
  319. package/fab/internal/shared.js.map +1 -0
  320. package/field/_filled-field.scss +6 -0
  321. package/field/_outlined-field.scss +6 -0
  322. package/field/filled-field.d.ts +20 -0
  323. package/field/filled-field.js +22 -0
  324. package/field/filled-field.js.map +1 -0
  325. package/field/harness.d.ts +16 -0
  326. package/field/harness.js +29 -0
  327. package/field/harness.js.map +1 -0
  328. package/field/internal/_content.scss +212 -0
  329. package/field/internal/_filled-field.scss +208 -0
  330. package/field/internal/_label.scss +102 -0
  331. package/field/internal/_outlined-field.scss +344 -0
  332. package/field/internal/_shared.scss +78 -0
  333. package/field/internal/_supporting-text.scss +61 -0
  334. package/field/internal/field.d.ts +66 -0
  335. package/field/internal/field.js +350 -0
  336. package/field/internal/field.js.map +1 -0
  337. package/field/internal/filled-field.d.ts +13 -0
  338. package/field/internal/filled-field.js +22 -0
  339. package/field/internal/filled-field.js.map +1 -0
  340. package/field/internal/filled-styles.css +1 -0
  341. package/field/internal/filled-styles.css.map +1 -0
  342. package/field/internal/filled-styles.d.ts +1 -0
  343. package/field/internal/filled-styles.js +10 -0
  344. package/field/internal/filled-styles.js.map +1 -0
  345. package/field/internal/filled-styles.scss +8 -0
  346. package/field/internal/outlined-field.d.ts +12 -0
  347. package/field/internal/outlined-field.js +26 -0
  348. package/field/internal/outlined-field.js.map +1 -0
  349. package/field/internal/outlined-styles.css +1 -0
  350. package/field/internal/outlined-styles.css.map +1 -0
  351. package/field/internal/outlined-styles.d.ts +1 -0
  352. package/field/internal/outlined-styles.js +10 -0
  353. package/field/internal/outlined-styles.js.map +1 -0
  354. package/field/internal/outlined-styles.scss +7 -0
  355. package/field/internal/shared-styles.css +1 -0
  356. package/field/internal/shared-styles.css.map +1 -0
  357. package/field/internal/shared-styles.d.ts +1 -0
  358. package/field/internal/shared-styles.js +10 -0
  359. package/field/internal/shared-styles.js.map +1 -0
  360. package/field/internal/shared-styles.scss +8 -0
  361. package/field/outlined-field.d.ts +20 -0
  362. package/field/outlined-field.js +22 -0
  363. package/field/outlined-field.js.map +1 -0
  364. package/focus/_focus-ring.scss +6 -0
  365. package/focus/internal/_focus-ring.scss +113 -0
  366. package/focus/internal/focus-ring-styles.css +1 -0
  367. package/focus/internal/focus-ring-styles.css.map +1 -0
  368. package/focus/internal/focus-ring-styles.d.ts +1 -0
  369. package/focus/internal/focus-ring-styles.js +10 -0
  370. package/focus/internal/focus-ring-styles.js.map +1 -0
  371. package/focus/internal/focus-ring-styles.scss +10 -0
  372. package/focus/internal/focus-ring.d.ts +39 -0
  373. package/focus/internal/focus-ring.js +100 -0
  374. package/focus/internal/focus-ring.js.map +1 -0
  375. package/focus/md-focus-ring.d.ts +21 -0
  376. package/focus/md-focus-ring.js +22 -0
  377. package/focus/md-focus-ring.js.map +1 -0
  378. package/icon/_icon.scss +6 -0
  379. package/icon/icon.d.ts +20 -0
  380. package/icon/icon.js +21 -0
  381. package/icon/icon.js.map +1 -0
  382. package/icon/internal/_icon.scss +76 -0
  383. package/icon/internal/icon-styles.css +1 -0
  384. package/icon/internal/icon-styles.css.map +1 -0
  385. package/icon/internal/icon-styles.d.ts +1 -0
  386. package/icon/internal/icon-styles.js +10 -0
  387. package/icon/internal/icon-styles.js.map +1 -0
  388. package/icon/internal/icon-styles.scss +10 -0
  389. package/icon/internal/icon.d.ts +13 -0
  390. package/icon/internal/icon.js +28 -0
  391. package/icon/internal/icon.js.map +1 -0
  392. package/iconbutton/_filled-icon-button.scss +6 -0
  393. package/iconbutton/_filled-tonal-icon-button.scss +6 -0
  394. package/iconbutton/_icon-button.scss +6 -0
  395. package/iconbutton/_outlined-icon-button.scss +6 -0
  396. package/iconbutton/filled-icon-button.d.ts +39 -0
  397. package/iconbutton/filled-icon-button.js +42 -0
  398. package/iconbutton/filled-icon-button.js.map +1 -0
  399. package/iconbutton/filled-tonal-icon-button.d.ts +39 -0
  400. package/iconbutton/filled-tonal-icon-button.js +42 -0
  401. package/iconbutton/filled-tonal-icon-button.js.map +1 -0
  402. package/iconbutton/harness.d.ts +13 -0
  403. package/iconbutton/harness.js +19 -0
  404. package/iconbutton/harness.js.map +1 -0
  405. package/iconbutton/icon-button.d.ts +38 -0
  406. package/iconbutton/icon-button.js +41 -0
  407. package/iconbutton/icon-button.js.map +1 -0
  408. package/iconbutton/internal/_filled-icon-button.scss +146 -0
  409. package/iconbutton/internal/_filled-tonal-icon-button.scss +146 -0
  410. package/iconbutton/internal/_icon-button.scss +131 -0
  411. package/iconbutton/internal/_outlined-icon-button.scss +157 -0
  412. package/iconbutton/internal/_shared.scss +117 -0
  413. package/iconbutton/internal/filled-styles.css +1 -0
  414. package/iconbutton/internal/filled-styles.css.map +1 -0
  415. package/iconbutton/internal/filled-styles.d.ts +1 -0
  416. package/iconbutton/internal/filled-styles.js +10 -0
  417. package/iconbutton/internal/filled-styles.js.map +1 -0
  418. package/iconbutton/internal/filled-styles.scss +10 -0
  419. package/iconbutton/internal/filled-tonal-styles.css +1 -0
  420. package/iconbutton/internal/filled-tonal-styles.css.map +1 -0
  421. package/iconbutton/internal/filled-tonal-styles.d.ts +1 -0
  422. package/iconbutton/internal/filled-tonal-styles.js +10 -0
  423. package/iconbutton/internal/filled-tonal-styles.js.map +1 -0
  424. package/iconbutton/internal/filled-tonal-styles.scss +10 -0
  425. package/iconbutton/internal/icon-button.d.ts +106 -0
  426. package/iconbutton/internal/icon-button.js +260 -0
  427. package/iconbutton/internal/icon-button.js.map +1 -0
  428. package/iconbutton/internal/outlined-styles.css +1 -0
  429. package/iconbutton/internal/outlined-styles.css.map +1 -0
  430. package/iconbutton/internal/outlined-styles.d.ts +1 -0
  431. package/iconbutton/internal/outlined-styles.js +10 -0
  432. package/iconbutton/internal/outlined-styles.js.map +1 -0
  433. package/iconbutton/internal/outlined-styles.scss +10 -0
  434. package/iconbutton/internal/shared-styles.css +1 -0
  435. package/iconbutton/internal/shared-styles.css.map +1 -0
  436. package/iconbutton/internal/shared-styles.d.ts +1 -0
  437. package/iconbutton/internal/shared-styles.js +10 -0
  438. package/iconbutton/internal/shared-styles.js.map +1 -0
  439. package/iconbutton/internal/shared-styles.scss +10 -0
  440. package/iconbutton/internal/standard-styles.css +1 -0
  441. package/iconbutton/internal/standard-styles.css.map +1 -0
  442. package/iconbutton/internal/standard-styles.d.ts +1 -0
  443. package/iconbutton/internal/standard-styles.js +10 -0
  444. package/iconbutton/internal/standard-styles.js.map +1 -0
  445. package/iconbutton/internal/standard-styles.scss +10 -0
  446. package/iconbutton/outlined-icon-button.d.ts +38 -0
  447. package/iconbutton/outlined-icon-button.js +41 -0
  448. package/iconbutton/outlined-icon-button.js.map +1 -0
  449. package/internal/aria/aria.d.ts +103 -0
  450. package/internal/aria/aria.js +81 -0
  451. package/internal/aria/aria.js.map +1 -0
  452. package/internal/aria/delegate.d.ts +54 -0
  453. package/internal/aria/delegate.js +176 -0
  454. package/internal/aria/delegate.js.map +1 -0
  455. package/internal/controller/attachable-controller.d.ts +114 -0
  456. package/internal/controller/attachable-controller.js +121 -0
  457. package/internal/controller/attachable-controller.js.map +1 -0
  458. package/internal/controller/form-submitter.d.ts +70 -0
  459. package/internal/controller/form-submitter.js +69 -0
  460. package/internal/controller/form-submitter.js.map +1 -0
  461. package/internal/controller/is-rtl.d.ts +14 -0
  462. package/internal/controller/is-rtl.js +18 -0
  463. package/internal/controller/is-rtl.js.map +1 -0
  464. package/internal/controller/string-converter.d.ts +9 -0
  465. package/internal/controller/string-converter.js +14 -0
  466. package/internal/controller/string-converter.js.map +1 -0
  467. package/internal/events/dispatch-hooks.d.ts +85 -0
  468. package/internal/events/dispatch-hooks.js +151 -0
  469. package/internal/events/dispatch-hooks.js.map +1 -0
  470. package/internal/events/form-label-activation.d.ts +55 -0
  471. package/internal/events/form-label-activation.js +96 -0
  472. package/internal/events/form-label-activation.js.map +1 -0
  473. package/internal/events/redispatch-event.d.ts +27 -0
  474. package/internal/events/redispatch-event.js +40 -0
  475. package/internal/events/redispatch-event.js.map +1 -0
  476. package/internal/motion/_animation.scss +33 -0
  477. package/internal/motion/animation.d.ts +80 -0
  478. package/internal/motion/animation.js +101 -0
  479. package/internal/motion/animation.js.map +1 -0
  480. package/internal/sass/_string-ext.scss +195 -0
  481. package/internal/sass/_var.scss +237 -0
  482. package/labs/badge/_badge.scss +6 -0
  483. package/labs/badge/badge.d.ts +19 -0
  484. package/labs/badge/badge.js +20 -0
  485. package/labs/badge/badge.js.map +1 -0
  486. package/labs/badge/internal/_badge.scss +76 -0
  487. package/labs/badge/internal/badge-styles.css +1 -0
  488. package/labs/badge/internal/badge-styles.css.map +1 -0
  489. package/labs/badge/internal/badge-styles.d.ts +1 -0
  490. package/labs/badge/internal/badge-styles.js +10 -0
  491. package/labs/badge/internal/badge-styles.js.map +1 -0
  492. package/labs/badge/internal/badge-styles.scss +10 -0
  493. package/labs/badge/internal/badge.d.ts +13 -0
  494. package/labs/badge/internal/badge.js +28 -0
  495. package/labs/badge/internal/badge.js.map +1 -0
  496. package/labs/behaviors/constraint-validation.d.ts +133 -0
  497. package/labs/behaviors/constraint-validation.js +131 -0
  498. package/labs/behaviors/constraint-validation.js.map +1 -0
  499. package/labs/behaviors/element-internals.d.ts +45 -0
  500. package/labs/behaviors/element-internals.js +46 -0
  501. package/labs/behaviors/element-internals.js.map +1 -0
  502. package/labs/behaviors/focusable.d.ts +39 -0
  503. package/labs/behaviors/focusable.js +87 -0
  504. package/labs/behaviors/focusable.js.map +1 -0
  505. package/labs/behaviors/form-associated.d.ts +199 -0
  506. package/labs/behaviors/form-associated.js +175 -0
  507. package/labs/behaviors/form-associated.js.map +1 -0
  508. package/labs/behaviors/mixin.d.ts +54 -0
  509. package/labs/behaviors/mixin.js +7 -0
  510. package/labs/behaviors/mixin.js.map +1 -0
  511. package/labs/behaviors/on-report-validity.d.ts +71 -0
  512. package/labs/behaviors/on-report-validity.js +289 -0
  513. package/labs/behaviors/on-report-validity.js.map +1 -0
  514. package/labs/behaviors/validators/checkbox-validator.d.ts +35 -0
  515. package/labs/behaviors/validators/checkbox-validator.js +32 -0
  516. package/labs/behaviors/validators/checkbox-validator.js.map +1 -0
  517. package/labs/behaviors/validators/radio-validator.d.ts +38 -0
  518. package/labs/behaviors/validators/radio-validator.js +65 -0
  519. package/labs/behaviors/validators/radio-validator.js.map +1 -0
  520. package/labs/behaviors/validators/select-validator.d.ts +35 -0
  521. package/labs/behaviors/validators/select-validator.js +33 -0
  522. package/labs/behaviors/validators/select-validator.js.map +1 -0
  523. package/labs/behaviors/validators/text-field-validator.d.ts +110 -0
  524. package/labs/behaviors/validators/text-field-validator.js +154 -0
  525. package/labs/behaviors/validators/text-field-validator.js.map +1 -0
  526. package/labs/behaviors/validators/validator.d.ts +96 -0
  527. package/labs/behaviors/validators/validator.js +73 -0
  528. package/labs/behaviors/validators/validator.js.map +1 -0
  529. package/labs/card/_elevated-card.scss +6 -0
  530. package/labs/card/_filled-card.scss +6 -0
  531. package/labs/card/_outlined-card.scss +6 -0
  532. package/labs/card/elevated-card.d.ts +19 -0
  533. package/labs/card/elevated-card.js +21 -0
  534. package/labs/card/elevated-card.js.map +1 -0
  535. package/labs/card/filled-card.d.ts +19 -0
  536. package/labs/card/filled-card.js +21 -0
  537. package/labs/card/filled-card.js.map +1 -0
  538. package/labs/card/internal/_elevated-card.scss +35 -0
  539. package/labs/card/internal/_filled-card.scss +35 -0
  540. package/labs/card/internal/_outlined-card.scss +40 -0
  541. package/labs/card/internal/_shared.scss +62 -0
  542. package/labs/card/internal/card.d.ts +13 -0
  543. package/labs/card/internal/card.js +21 -0
  544. package/labs/card/internal/card.js.map +1 -0
  545. package/labs/card/internal/elevated-styles.css +1 -0
  546. package/labs/card/internal/elevated-styles.css.map +1 -0
  547. package/labs/card/internal/elevated-styles.d.ts +1 -0
  548. package/labs/card/internal/elevated-styles.js +10 -0
  549. package/labs/card/internal/elevated-styles.js.map +1 -0
  550. package/labs/card/internal/elevated-styles.scss +10 -0
  551. package/labs/card/internal/filled-styles.css +1 -0
  552. package/labs/card/internal/filled-styles.css.map +1 -0
  553. package/labs/card/internal/filled-styles.d.ts +1 -0
  554. package/labs/card/internal/filled-styles.js +10 -0
  555. package/labs/card/internal/filled-styles.js.map +1 -0
  556. package/labs/card/internal/filled-styles.scss +10 -0
  557. package/labs/card/internal/outlined-styles.css +1 -0
  558. package/labs/card/internal/outlined-styles.css.map +1 -0
  559. package/labs/card/internal/outlined-styles.d.ts +1 -0
  560. package/labs/card/internal/outlined-styles.js +10 -0
  561. package/labs/card/internal/outlined-styles.js.map +1 -0
  562. package/labs/card/internal/outlined-styles.scss +10 -0
  563. package/labs/card/internal/shared-styles.css +1 -0
  564. package/labs/card/internal/shared-styles.css.map +1 -0
  565. package/labs/card/internal/shared-styles.d.ts +1 -0
  566. package/labs/card/internal/shared-styles.js +10 -0
  567. package/labs/card/internal/shared-styles.js.map +1 -0
  568. package/labs/card/internal/shared-styles.scss +10 -0
  569. package/labs/card/outlined-card.d.ts +19 -0
  570. package/labs/card/outlined-card.js +21 -0
  571. package/labs/card/outlined-card.js.map +1 -0
  572. package/labs/item/internal/_item.scss +99 -0
  573. package/labs/item/internal/item-styles.css +1 -0
  574. package/labs/item/internal/item-styles.css.map +1 -0
  575. package/labs/item/internal/item-styles.d.ts +1 -0
  576. package/labs/item/internal/item-styles.js +10 -0
  577. package/labs/item/internal/item-styles.js.map +1 -0
  578. package/labs/item/internal/item-styles.scss +10 -0
  579. package/labs/item/internal/item.d.ts +22 -0
  580. package/labs/item/internal/item.js +78 -0
  581. package/labs/item/internal/item.js.map +1 -0
  582. package/labs/item/item.d.ts +74 -0
  583. package/labs/item/item.js +75 -0
  584. package/labs/item/item.js.map +1 -0
  585. package/labs/navigationbar/_navigation-bar.scss +6 -0
  586. package/labs/navigationbar/harness.d.ts +19 -0
  587. package/labs/navigationbar/harness.js +29 -0
  588. package/labs/navigationbar/harness.js.map +1 -0
  589. package/labs/navigationbar/internal/_navigation-bar.scss +70 -0
  590. package/labs/navigationbar/internal/constants.d.ts +17 -0
  591. package/labs/navigationbar/internal/constants.js +7 -0
  592. package/labs/navigationbar/internal/constants.js.map +1 -0
  593. package/labs/navigationbar/internal/navigation-bar-styles.css +1 -0
  594. package/labs/navigationbar/internal/navigation-bar-styles.css.map +1 -0
  595. package/labs/navigationbar/internal/navigation-bar-styles.d.ts +1 -0
  596. package/labs/navigationbar/internal/navigation-bar-styles.js +10 -0
  597. package/labs/navigationbar/internal/navigation-bar-styles.js.map +1 -0
  598. package/labs/navigationbar/internal/navigation-bar-styles.scss +10 -0
  599. package/labs/navigationbar/internal/navigation-bar.d.ts +32 -0
  600. package/labs/navigationbar/internal/navigation-bar.js +144 -0
  601. package/labs/navigationbar/internal/navigation-bar.js.map +1 -0
  602. package/labs/navigationbar/internal/state.d.ts +23 -0
  603. package/labs/navigationbar/internal/state.js +7 -0
  604. package/labs/navigationbar/internal/state.js.map +1 -0
  605. package/labs/navigationbar/navigation-bar.d.ts +19 -0
  606. package/labs/navigationbar/navigation-bar.js +20 -0
  607. package/labs/navigationbar/navigation-bar.js.map +1 -0
  608. package/labs/navigationdrawer/_navigation-drawer-modal.scss +6 -0
  609. package/labs/navigationdrawer/_navigation-drawer.scss +6 -0
  610. package/labs/navigationdrawer/internal/_navigation-drawer-modal.scss +110 -0
  611. package/labs/navigationdrawer/internal/_navigation-drawer.scss +97 -0
  612. package/labs/navigationdrawer/internal/_shared.scss +31 -0
  613. package/labs/navigationdrawer/internal/navigation-drawer-modal-styles.css +1 -0
  614. package/labs/navigationdrawer/internal/navigation-drawer-modal-styles.css.map +1 -0
  615. package/labs/navigationdrawer/internal/navigation-drawer-modal-styles.d.ts +1 -0
  616. package/labs/navigationdrawer/internal/navigation-drawer-modal-styles.js +10 -0
  617. package/labs/navigationdrawer/internal/navigation-drawer-modal-styles.js.map +1 -0
  618. package/labs/navigationdrawer/internal/navigation-drawer-modal-styles.scss +10 -0
  619. package/labs/navigationdrawer/internal/navigation-drawer-modal.d.ts +24 -0
  620. package/labs/navigationdrawer/internal/navigation-drawer-modal.js +87 -0
  621. package/labs/navigationdrawer/internal/navigation-drawer-modal.js.map +1 -0
  622. package/labs/navigationdrawer/internal/navigation-drawer-styles.css +1 -0
  623. package/labs/navigationdrawer/internal/navigation-drawer-styles.css.map +1 -0
  624. package/labs/navigationdrawer/internal/navigation-drawer-styles.d.ts +1 -0
  625. package/labs/navigationdrawer/internal/navigation-drawer-styles.js +10 -0
  626. package/labs/navigationdrawer/internal/navigation-drawer-styles.js.map +1 -0
  627. package/labs/navigationdrawer/internal/navigation-drawer-styles.scss +10 -0
  628. package/labs/navigationdrawer/internal/navigation-drawer.d.ts +22 -0
  629. package/labs/navigationdrawer/internal/navigation-drawer.js +70 -0
  630. package/labs/navigationdrawer/internal/navigation-drawer.js.map +1 -0
  631. package/labs/navigationdrawer/internal/shared-styles.css +1 -0
  632. package/labs/navigationdrawer/internal/shared-styles.css.map +1 -0
  633. package/labs/navigationdrawer/internal/shared-styles.d.ts +1 -0
  634. package/labs/navigationdrawer/internal/shared-styles.js +10 -0
  635. package/labs/navigationdrawer/internal/shared-styles.js.map +1 -0
  636. package/labs/navigationdrawer/internal/shared-styles.scss +10 -0
  637. package/labs/navigationdrawer/navigation-drawer-modal.d.ts +18 -0
  638. package/labs/navigationdrawer/navigation-drawer-modal.js +21 -0
  639. package/labs/navigationdrawer/navigation-drawer-modal.js.map +1 -0
  640. package/labs/navigationdrawer/navigation-drawer.d.ts +18 -0
  641. package/labs/navigationdrawer/navigation-drawer.js +21 -0
  642. package/labs/navigationdrawer/navigation-drawer.js.map +1 -0
  643. package/labs/navigationtab/_navigation-tab.scss +6 -0
  644. package/labs/navigationtab/harness.d.ts +13 -0
  645. package/labs/navigationtab/harness.js +16 -0
  646. package/labs/navigationtab/harness.js.map +1 -0
  647. package/labs/navigationtab/internal/_navigation-tab.scss +264 -0
  648. package/labs/navigationtab/internal/navigation-tab-styles.css +1 -0
  649. package/labs/navigationtab/internal/navigation-tab-styles.css.map +1 -0
  650. package/labs/navigationtab/internal/navigation-tab-styles.d.ts +1 -0
  651. package/labs/navigationtab/internal/navigation-tab-styles.js +10 -0
  652. package/labs/navigationtab/internal/navigation-tab-styles.js.map +1 -0
  653. package/labs/navigationtab/internal/navigation-tab-styles.scss +10 -0
  654. package/labs/navigationtab/internal/navigation-tab.d.ts +38 -0
  655. package/labs/navigationtab/internal/navigation-tab.js +132 -0
  656. package/labs/navigationtab/internal/navigation-tab.js.map +1 -0
  657. package/labs/navigationtab/internal/state.d.ts +18 -0
  658. package/labs/navigationtab/internal/state.js +7 -0
  659. package/labs/navigationtab/internal/state.js.map +1 -0
  660. package/labs/navigationtab/navigation-tab.d.ts +19 -0
  661. package/labs/navigationtab/navigation-tab.js +20 -0
  662. package/labs/navigationtab/navigation-tab.js.map +1 -0
  663. package/labs/segmentedbutton/internal/_outlined-segmented-button.scss +42 -0
  664. package/labs/segmentedbutton/internal/_shared.scss +361 -0
  665. package/labs/segmentedbutton/internal/outlined-segmented-button.d.ts +24 -0
  666. package/labs/segmentedbutton/internal/outlined-segmented-button.js +22 -0
  667. package/labs/segmentedbutton/internal/outlined-segmented-button.js.map +1 -0
  668. package/labs/segmentedbutton/internal/outlined-styles.css +1 -0
  669. package/labs/segmentedbutton/internal/outlined-styles.css.map +1 -0
  670. package/labs/segmentedbutton/internal/outlined-styles.d.ts +1 -0
  671. package/labs/segmentedbutton/internal/outlined-styles.js +10 -0
  672. package/labs/segmentedbutton/internal/outlined-styles.js.map +1 -0
  673. package/labs/segmentedbutton/internal/outlined-styles.scss +10 -0
  674. package/labs/segmentedbutton/internal/segmented-button.d.ts +49 -0
  675. package/labs/segmentedbutton/internal/segmented-button.js +170 -0
  676. package/labs/segmentedbutton/internal/segmented-button.js.map +1 -0
  677. package/labs/segmentedbutton/internal/shared-styles.css +1 -0
  678. package/labs/segmentedbutton/internal/shared-styles.css.map +1 -0
  679. package/labs/segmentedbutton/internal/shared-styles.d.ts +1 -0
  680. package/labs/segmentedbutton/internal/shared-styles.js +10 -0
  681. package/labs/segmentedbutton/internal/shared-styles.js.map +1 -0
  682. package/labs/segmentedbutton/internal/shared-styles.scss +10 -0
  683. package/labs/segmentedbutton/outlined-segmented-button.d.ts +21 -0
  684. package/labs/segmentedbutton/outlined-segmented-button.js +23 -0
  685. package/labs/segmentedbutton/outlined-segmented-button.js.map +1 -0
  686. package/labs/segmentedbuttonset/internal/_outlined-segmented-button-set.scss +40 -0
  687. package/labs/segmentedbuttonset/internal/_shared.scss +33 -0
  688. package/labs/segmentedbuttonset/internal/outlined-segmented-button-set.d.ts +14 -0
  689. package/labs/segmentedbuttonset/internal/outlined-segmented-button-set.js +18 -0
  690. package/labs/segmentedbuttonset/internal/outlined-segmented-button-set.js.map +1 -0
  691. package/labs/segmentedbuttonset/internal/outlined-styles.css +1 -0
  692. package/labs/segmentedbuttonset/internal/outlined-styles.css.map +1 -0
  693. package/labs/segmentedbuttonset/internal/outlined-styles.d.ts +1 -0
  694. package/labs/segmentedbuttonset/internal/outlined-styles.js +10 -0
  695. package/labs/segmentedbuttonset/internal/outlined-styles.js.map +1 -0
  696. package/labs/segmentedbuttonset/internal/outlined-styles.scss +10 -0
  697. package/labs/segmentedbuttonset/internal/segmented-button-set.d.ts +33 -0
  698. package/labs/segmentedbuttonset/internal/segmented-button-set.js +112 -0
  699. package/labs/segmentedbuttonset/internal/segmented-button-set.js.map +1 -0
  700. package/labs/segmentedbuttonset/internal/shared-styles.css +1 -0
  701. package/labs/segmentedbuttonset/internal/shared-styles.css.map +1 -0
  702. package/labs/segmentedbuttonset/internal/shared-styles.d.ts +1 -0
  703. package/labs/segmentedbuttonset/internal/shared-styles.js +10 -0
  704. package/labs/segmentedbuttonset/internal/shared-styles.js.map +1 -0
  705. package/labs/segmentedbuttonset/internal/shared-styles.scss +10 -0
  706. package/labs/segmentedbuttonset/outlined-segmented-button-set.d.ts +21 -0
  707. package/labs/segmentedbuttonset/outlined-segmented-button-set.js +23 -0
  708. package/labs/segmentedbuttonset/outlined-segmented-button-set.js.map +1 -0
  709. package/list/_list-item.scss +6 -0
  710. package/list/_list.scss +6 -0
  711. package/list/harness.d.ts +45 -0
  712. package/list/harness.js +49 -0
  713. package/list/harness.js.map +1 -0
  714. package/list/internal/_list.scss +43 -0
  715. package/list/internal/list-controller.d.ts +114 -0
  716. package/list/internal/list-controller.js +186 -0
  717. package/list/internal/list-controller.js.map +1 -0
  718. package/list/internal/list-navigation-helpers.d.ts +136 -0
  719. package/list/internal/list-navigation-helpers.js +230 -0
  720. package/list/internal/list-navigation-helpers.js.map +1 -0
  721. package/list/internal/list-styles.css +1 -0
  722. package/list/internal/list-styles.css.map +1 -0
  723. package/list/internal/list-styles.d.ts +1 -0
  724. package/list/internal/list-styles.js +10 -0
  725. package/list/internal/list-styles.js.map +1 -0
  726. package/list/internal/list-styles.scss +10 -0
  727. package/list/internal/list.d.ts +44 -0
  728. package/list/internal/list.js +71 -0
  729. package/list/internal/list.js.map +1 -0
  730. package/list/internal/listitem/_list-item.scss +163 -0
  731. package/list/internal/listitem/harness.d.ts +27 -0
  732. package/list/internal/listitem/harness.js +25 -0
  733. package/list/internal/listitem/harness.js.map +1 -0
  734. package/list/internal/listitem/list-item-styles.css +1 -0
  735. package/list/internal/listitem/list-item-styles.css.map +1 -0
  736. package/list/internal/listitem/list-item-styles.d.ts +1 -0
  737. package/list/internal/listitem/list-item-styles.js +10 -0
  738. package/list/internal/listitem/list-item-styles.js.map +1 -0
  739. package/list/internal/listitem/list-item-styles.scss +10 -0
  740. package/list/internal/listitem/list-item.d.ts +80 -0
  741. package/list/internal/listitem/list-item.js +192 -0
  742. package/list/internal/listitem/list-item.js.map +1 -0
  743. package/list/list-item.d.ts +54 -0
  744. package/list/list-item.js +54 -0
  745. package/list/list-item.js.map +1 -0
  746. package/list/list.d.ts +34 -0
  747. package/list/list.js +35 -0
  748. package/list/list.js.map +1 -0
  749. package/menu/_menu-item.scss +6 -0
  750. package/menu/_menu.scss +6 -0
  751. package/menu/harness.d.ts +21 -0
  752. package/menu/harness.js +38 -0
  753. package/menu/harness.js.map +1 -0
  754. package/menu/internal/_menu.scss +143 -0
  755. package/menu/internal/controllers/menuItemController.d.ts +126 -0
  756. package/menu/internal/controllers/menuItemController.js +138 -0
  757. package/menu/internal/controllers/menuItemController.js.map +1 -0
  758. package/menu/internal/controllers/shared.d.ts +229 -0
  759. package/menu/internal/controllers/shared.js +137 -0
  760. package/menu/internal/controllers/shared.js.map +1 -0
  761. package/menu/internal/controllers/surfacePositionController.d.ts +174 -0
  762. package/menu/internal/controllers/surfacePositionController.js +394 -0
  763. package/menu/internal/controllers/surfacePositionController.js.map +1 -0
  764. package/menu/internal/controllers/typeaheadController.d.ts +157 -0
  765. package/menu/internal/controllers/typeaheadController.js +259 -0
  766. package/menu/internal/controllers/typeaheadController.js.map +1 -0
  767. package/menu/internal/menu-styles.css +1 -0
  768. package/menu/internal/menu-styles.css.map +1 -0
  769. package/menu/internal/menu-styles.d.ts +1 -0
  770. package/menu/internal/menu-styles.js +10 -0
  771. package/menu/internal/menu-styles.js.map +1 -0
  772. package/menu/internal/menu-styles.scss +10 -0
  773. package/menu/internal/menu.d.ts +317 -0
  774. package/menu/internal/menu.js +914 -0
  775. package/menu/internal/menu.js.map +1 -0
  776. package/menu/internal/menuitem/_menu-item.scss +180 -0
  777. package/menu/internal/menuitem/harness.d.ts +13 -0
  778. package/menu/internal/menuitem/harness.js +12 -0
  779. package/menu/internal/menuitem/harness.js.map +1 -0
  780. package/menu/internal/menuitem/menu-item-styles.css +1 -0
  781. package/menu/internal/menuitem/menu-item-styles.css.map +1 -0
  782. package/menu/internal/menuitem/menu-item-styles.d.ts +1 -0
  783. package/menu/internal/menuitem/menu-item-styles.js +10 -0
  784. package/menu/internal/menuitem/menu-item-styles.js.map +1 -0
  785. package/menu/internal/menuitem/menu-item-styles.scss +10 -0
  786. package/menu/internal/menuitem/menu-item.d.ts +85 -0
  787. package/menu/internal/menuitem/menu-item.js +211 -0
  788. package/menu/internal/menuitem/menu-item.js.map +1 -0
  789. package/menu/internal/submenu/_sub-menu.scss +12 -0
  790. package/menu/internal/submenu/sub-menu-styles.css +1 -0
  791. package/menu/internal/submenu/sub-menu-styles.css.map +1 -0
  792. package/menu/internal/submenu/sub-menu-styles.d.ts +1 -0
  793. package/menu/internal/submenu/sub-menu-styles.js +10 -0
  794. package/menu/internal/submenu/sub-menu-styles.js.map +1 -0
  795. package/menu/internal/submenu/sub-menu-styles.scss +10 -0
  796. package/menu/internal/submenu/sub-menu.d.ts +102 -0
  797. package/menu/internal/submenu/sub-menu.js +364 -0
  798. package/menu/internal/submenu/sub-menu.js.map +1 -0
  799. package/menu/internal/types.d.ts +23 -0
  800. package/menu/internal/types.js +7 -0
  801. package/menu/internal/types.js.map +1 -0
  802. package/menu/menu-item.d.ts +32 -0
  803. package/menu/menu-item.js +31 -0
  804. package/menu/menu-item.js.map +1 -0
  805. package/menu/menu.d.ts +68 -0
  806. package/menu/menu.js +67 -0
  807. package/menu/menu.js.map +1 -0
  808. package/menu/sub-menu.d.ts +63 -0
  809. package/menu/sub-menu.js +64 -0
  810. package/menu/sub-menu.js.map +1 -0
  811. package/migrations/v2/query-selector-aria.d.ts +22 -0
  812. package/migrations/v2/query-selector-aria.js +30 -0
  813. package/migrations/v2/query-selector-aria.js.map +1 -0
  814. package/package.json +166 -0
  815. package/progress/_circular-progress.scss +6 -0
  816. package/progress/_linear-progress.scss +6 -0
  817. package/progress/circular-progress.d.ts +28 -0
  818. package/progress/circular-progress.js +29 -0
  819. package/progress/circular-progress.js.map +1 -0
  820. package/progress/harness.d.ts +20 -0
  821. package/progress/harness.js +25 -0
  822. package/progress/harness.js.map +1 -0
  823. package/progress/internal/_circular-progress.scss +287 -0
  824. package/progress/internal/_linear-progress.scss +335 -0
  825. package/progress/internal/circular-progress-styles.css +1 -0
  826. package/progress/internal/circular-progress-styles.css.map +1 -0
  827. package/progress/internal/circular-progress-styles.d.ts +1 -0
  828. package/progress/internal/circular-progress-styles.js +10 -0
  829. package/progress/internal/circular-progress-styles.js.map +1 -0
  830. package/progress/internal/circular-progress-styles.scss +8 -0
  831. package/progress/internal/circular-progress.d.ts +14 -0
  832. package/progress/internal/circular-progress.js +50 -0
  833. package/progress/internal/circular-progress.js.map +1 -0
  834. package/progress/internal/linear-progress-styles.css +1 -0
  835. package/progress/internal/linear-progress-styles.css.map +1 -0
  836. package/progress/internal/linear-progress-styles.d.ts +1 -0
  837. package/progress/internal/linear-progress-styles.js +10 -0
  838. package/progress/internal/linear-progress-styles.js.map +1 -0
  839. package/progress/internal/linear-progress-styles.scss +8 -0
  840. package/progress/internal/linear-progress.d.ts +17 -0
  841. package/progress/internal/linear-progress.js +54 -0
  842. package/progress/internal/linear-progress.js.map +1 -0
  843. package/progress/internal/progress.d.ts +36 -0
  844. package/progress/internal/progress.js +71 -0
  845. package/progress/internal/progress.js.map +1 -0
  846. package/progress/linear-progress.d.ts +27 -0
  847. package/progress/linear-progress.js +28 -0
  848. package/progress/linear-progress.js.map +1 -0
  849. package/radio/_radio.scss +6 -0
  850. package/radio/harness.d.ts +13 -0
  851. package/radio/harness.js +16 -0
  852. package/radio/harness.js.map +1 -0
  853. package/radio/internal/_radio.scss +203 -0
  854. package/radio/internal/radio-styles.css +1 -0
  855. package/radio/internal/radio-styles.css.map +1 -0
  856. package/radio/internal/radio-styles.d.ts +1 -0
  857. package/radio/internal/radio-styles.js +10 -0
  858. package/radio/internal/radio-styles.js.map +1 -0
  859. package/radio/internal/radio-styles.scss +10 -0
  860. package/radio/internal/radio.d.ts +55 -0
  861. package/radio/internal/radio.js +172 -0
  862. package/radio/internal/radio.js.map +1 -0
  863. package/radio/internal/single-selection-controller.d.ts +80 -0
  864. package/radio/internal/single-selection-controller.js +199 -0
  865. package/radio/internal/single-selection-controller.js.map +1 -0
  866. package/radio/radio.d.ts +31 -0
  867. package/radio/radio.js +32 -0
  868. package/radio/radio.js.map +1 -0
  869. package/ripple/_ripple.scss +6 -0
  870. package/ripple/internal/_ripple.scss +92 -0
  871. package/ripple/internal/ripple-styles.css +1 -0
  872. package/ripple/internal/ripple-styles.css.map +1 -0
  873. package/ripple/internal/ripple-styles.d.ts +1 -0
  874. package/ripple/internal/ripple-styles.js +10 -0
  875. package/ripple/internal/ripple-styles.js.map +1 -0
  876. package/ripple/internal/ripple-styles.scss +10 -0
  877. package/ripple/internal/ripple.d.ts +76 -0
  878. package/ripple/internal/ripple.js +423 -0
  879. package/ripple/internal/ripple.js.map +1 -0
  880. package/ripple/ripple.d.ts +28 -0
  881. package/ripple/ripple.js +29 -0
  882. package/ripple/ripple.js.map +1 -0
  883. package/select/_filled-select.scss +6 -0
  884. package/select/_outlined-select.scss +6 -0
  885. package/select/filled-select.d.ts +42 -0
  886. package/select/filled-select.js +44 -0
  887. package/select/filled-select.js.map +1 -0
  888. package/select/harness.d.ts +25 -0
  889. package/select/harness.js +58 -0
  890. package/select/harness.js.map +1 -0
  891. package/select/internal/_filled-select.scss +191 -0
  892. package/select/internal/_outlined-select.scss +164 -0
  893. package/select/internal/_shared.scss +102 -0
  894. package/select/internal/filled-select-styles.css +1 -0
  895. package/select/internal/filled-select-styles.css.map +1 -0
  896. package/select/internal/filled-select-styles.d.ts +1 -0
  897. package/select/internal/filled-select-styles.js +10 -0
  898. package/select/internal/filled-select-styles.js.map +1 -0
  899. package/select/internal/filled-select-styles.scss +10 -0
  900. package/select/internal/filled-select.d.ts +10 -0
  901. package/select/internal/filled-select.js +16 -0
  902. package/select/internal/filled-select.js.map +1 -0
  903. package/select/internal/outlined-select-styles.css +1 -0
  904. package/select/internal/outlined-select-styles.css.map +1 -0
  905. package/select/internal/outlined-select-styles.d.ts +1 -0
  906. package/select/internal/outlined-select-styles.js +10 -0
  907. package/select/internal/outlined-select-styles.js.map +1 -0
  908. package/select/internal/outlined-select-styles.scss +10 -0
  909. package/select/internal/outlined-select.d.ts +10 -0
  910. package/select/internal/outlined-select.js +16 -0
  911. package/select/internal/outlined-select.js.map +1 -0
  912. package/select/internal/select.d.ts +265 -0
  913. package/select/internal/select.js +750 -0
  914. package/select/internal/select.js.map +1 -0
  915. package/select/internal/selectoption/harness.d.ts +11 -0
  916. package/select/internal/selectoption/harness.js +12 -0
  917. package/select/internal/selectoption/harness.js.map +1 -0
  918. package/select/internal/selectoption/select-option.d.ts +112 -0
  919. package/select/internal/selectoption/select-option.js +196 -0
  920. package/select/internal/selectoption/select-option.js.map +1 -0
  921. package/select/internal/selectoption/selectOptionController.d.ts +71 -0
  922. package/select/internal/selectoption/selectOptionController.js +115 -0
  923. package/select/internal/selectoption/selectOptionController.js.map +1 -0
  924. package/select/internal/shared-styles.css +1 -0
  925. package/select/internal/shared-styles.css.map +1 -0
  926. package/select/internal/shared-styles.d.ts +1 -0
  927. package/select/internal/shared-styles.js +10 -0
  928. package/select/internal/shared-styles.js.map +1 -0
  929. package/select/internal/shared-styles.scss +10 -0
  930. package/select/internal/shared.d.ts +18 -0
  931. package/select/internal/shared.js +23 -0
  932. package/select/internal/shared.js.map +1 -0
  933. package/select/outlined-select.d.ts +42 -0
  934. package/select/outlined-select.js +44 -0
  935. package/select/outlined-select.js.map +1 -0
  936. package/select/select-option.d.ts +46 -0
  937. package/select/select-option.js +46 -0
  938. package/select/select-option.js.map +1 -0
  939. package/slider/_slider.scss +6 -0
  940. package/slider/harness.d.ts +21 -0
  941. package/slider/harness.js +70 -0
  942. package/slider/harness.js.map +1 -0
  943. package/slider/internal/_slider.scss +519 -0
  944. package/slider/internal/forced-colors-styles.css +1 -0
  945. package/slider/internal/forced-colors-styles.css.map +1 -0
  946. package/slider/internal/forced-colors-styles.d.ts +1 -0
  947. package/slider/internal/forced-colors-styles.js +10 -0
  948. package/slider/internal/forced-colors-styles.js.map +1 -0
  949. package/slider/internal/forced-colors-styles.scss +88 -0
  950. package/slider/internal/slider-styles.css +1 -0
  951. package/slider/internal/slider-styles.css.map +1 -0
  952. package/slider/internal/slider-styles.d.ts +1 -0
  953. package/slider/internal/slider-styles.js +10 -0
  954. package/slider/internal/slider-styles.js.map +1 -0
  955. package/slider/internal/slider-styles.scss +8 -0
  956. package/slider/internal/slider.d.ts +178 -0
  957. package/slider/internal/slider.js +714 -0
  958. package/slider/internal/slider.js.map +1 -0
  959. package/slider/slider.d.ts +32 -0
  960. package/slider/slider.js +34 -0
  961. package/slider/slider.js.map +1 -0
  962. package/switch/_switch.scss +6 -0
  963. package/switch/harness.d.ts +13 -0
  964. package/switch/harness.js +16 -0
  965. package/switch/harness.js.map +1 -0
  966. package/switch/internal/_handle.scss +183 -0
  967. package/switch/internal/_icon.scss +119 -0
  968. package/switch/internal/_switch.scss +101 -0
  969. package/switch/internal/_track.scss +124 -0
  970. package/switch/internal/switch-styles.css +1 -0
  971. package/switch/internal/switch-styles.css.map +1 -0
  972. package/switch/internal/switch-styles.d.ts +1 -0
  973. package/switch/internal/switch-styles.js +10 -0
  974. package/switch/internal/switch-styles.js.map +1 -0
  975. package/switch/internal/switch-styles.scss +10 -0
  976. package/switch/internal/switch.d.ts +75 -0
  977. package/switch/internal/switch.js +219 -0
  978. package/switch/internal/switch.js.map +1 -0
  979. package/switch/switch.d.ts +25 -0
  980. package/switch/switch.js +26 -0
  981. package/switch/switch.js.map +1 -0
  982. package/tabs/_primary-tab.scss +6 -0
  983. package/tabs/_secondary-tab.scss +6 -0
  984. package/tabs/harness.d.ts +23 -0
  985. package/tabs/harness.js +51 -0
  986. package/tabs/harness.js.map +1 -0
  987. package/tabs/internal/_primary-tab.scss +46 -0
  988. package/tabs/internal/_secondary-tab.scss +37 -0
  989. package/tabs/internal/_tab.scss +199 -0
  990. package/tabs/internal/_tabs.scss +47 -0
  991. package/tabs/internal/primary-tab-styles.css +1 -0
  992. package/tabs/internal/primary-tab-styles.css.map +1 -0
  993. package/tabs/internal/primary-tab-styles.d.ts +1 -0
  994. package/tabs/internal/primary-tab-styles.js +10 -0
  995. package/tabs/internal/primary-tab-styles.js.map +1 -0
  996. package/tabs/internal/primary-tab-styles.scss +10 -0
  997. package/tabs/internal/primary-tab.d.ts +18 -0
  998. package/tabs/internal/primary-tab.js +30 -0
  999. package/tabs/internal/primary-tab.js.map +1 -0
  1000. package/tabs/internal/secondary-tab-styles.css +1 -0
  1001. package/tabs/internal/secondary-tab-styles.css.map +1 -0
  1002. package/tabs/internal/secondary-tab-styles.d.ts +1 -0
  1003. package/tabs/internal/secondary-tab-styles.js +10 -0
  1004. package/tabs/internal/secondary-tab-styles.js.map +1 -0
  1005. package/tabs/internal/secondary-tab-styles.scss +10 -0
  1006. package/tabs/internal/secondary-tab.d.ts +12 -0
  1007. package/tabs/internal/secondary-tab.js +16 -0
  1008. package/tabs/internal/secondary-tab.js.map +1 -0
  1009. package/tabs/internal/tab-styles.css +1 -0
  1010. package/tabs/internal/tab-styles.css.map +1 -0
  1011. package/tabs/internal/tab-styles.d.ts +1 -0
  1012. package/tabs/internal/tab-styles.js +10 -0
  1013. package/tabs/internal/tab-styles.js.map +1 -0
  1014. package/tabs/internal/tab-styles.scss +10 -0
  1015. package/tabs/internal/tab.d.ts +65 -0
  1016. package/tabs/internal/tab.js +204 -0
  1017. package/tabs/internal/tab.js.map +1 -0
  1018. package/tabs/internal/tabs-styles.css +1 -0
  1019. package/tabs/internal/tabs-styles.css.map +1 -0
  1020. package/tabs/internal/tabs-styles.d.ts +1 -0
  1021. package/tabs/internal/tabs-styles.js +10 -0
  1022. package/tabs/internal/tabs-styles.js.map +1 -0
  1023. package/tabs/internal/tabs-styles.scss +10 -0
  1024. package/tabs/internal/tabs.d.ts +78 -0
  1025. package/tabs/internal/tabs.js +291 -0
  1026. package/tabs/internal/tabs.js.map +1 -0
  1027. package/tabs/primary-tab.d.ts +21 -0
  1028. package/tabs/primary-tab.js +24 -0
  1029. package/tabs/primary-tab.js.map +1 -0
  1030. package/tabs/secondary-tab.d.ts +21 -0
  1031. package/tabs/secondary-tab.js +24 -0
  1032. package/tabs/secondary-tab.js.map +1 -0
  1033. package/tabs/tabs.d.ts +21 -0
  1034. package/tabs/tabs.js +23 -0
  1035. package/tabs/tabs.js.map +1 -0
  1036. package/testing/harness.d.ts +371 -0
  1037. package/testing/harness.js +737 -0
  1038. package/testing/harness.js.map +1 -0
  1039. package/testing/transform-pseudo-classes.d.ts +39 -0
  1040. package/testing/transform-pseudo-classes.js +172 -0
  1041. package/testing/transform-pseudo-classes.js.map +1 -0
  1042. package/textfield/_filled-text-field.scss +6 -0
  1043. package/textfield/_outlined-text-field.scss +6 -0
  1044. package/textfield/filled-text-field.d.ts +23 -0
  1045. package/textfield/filled-text-field.js +28 -0
  1046. package/textfield/filled-text-field.js.map +1 -0
  1047. package/textfield/harness.d.ts +51 -0
  1048. package/textfield/harness.js +112 -0
  1049. package/textfield/harness.js.map +1 -0
  1050. package/textfield/internal/_filled-text-field.scss +149 -0
  1051. package/textfield/internal/_icon.scss +29 -0
  1052. package/textfield/internal/_input.scss +91 -0
  1053. package/textfield/internal/_outlined-text-field.scss +129 -0
  1054. package/textfield/internal/_shared.scss +49 -0
  1055. package/textfield/internal/filled-styles.css +1 -0
  1056. package/textfield/internal/filled-styles.css.map +1 -0
  1057. package/textfield/internal/filled-styles.d.ts +1 -0
  1058. package/textfield/internal/filled-styles.js +10 -0
  1059. package/textfield/internal/filled-styles.js.map +1 -0
  1060. package/textfield/internal/filled-styles.scss +10 -0
  1061. package/textfield/internal/filled-text-field.d.ts +13 -0
  1062. package/textfield/internal/filled-text-field.js +18 -0
  1063. package/textfield/internal/filled-text-field.js.map +1 -0
  1064. package/textfield/internal/outlined-styles.css +1 -0
  1065. package/textfield/internal/outlined-styles.css.map +1 -0
  1066. package/textfield/internal/outlined-styles.d.ts +1 -0
  1067. package/textfield/internal/outlined-styles.js +10 -0
  1068. package/textfield/internal/outlined-styles.js.map +1 -0
  1069. package/textfield/internal/outlined-styles.scss +10 -0
  1070. package/textfield/internal/outlined-text-field.d.ts +13 -0
  1071. package/textfield/internal/outlined-text-field.js +18 -0
  1072. package/textfield/internal/outlined-text-field.js.map +1 -0
  1073. package/textfield/internal/shared-styles.css +1 -0
  1074. package/textfield/internal/shared-styles.css.map +1 -0
  1075. package/textfield/internal/shared-styles.d.ts +1 -0
  1076. package/textfield/internal/shared-styles.js +10 -0
  1077. package/textfield/internal/shared-styles.js.map +1 -0
  1078. package/textfield/internal/shared-styles.scss +10 -0
  1079. package/textfield/internal/text-field.d.ts +334 -0
  1080. package/textfield/internal/text-field.js +716 -0
  1081. package/textfield/internal/text-field.js.map +1 -0
  1082. package/textfield/outlined-text-field.d.ts +23 -0
  1083. package/textfield/outlined-text-field.js +28 -0
  1084. package/textfield/outlined-text-field.js.map +1 -0
  1085. package/tokens/_index.scss +66 -0
  1086. package/tokens/_md-comp-assist-chip.scss +153 -0
  1087. package/tokens/_md-comp-badge.scss +39 -0
  1088. package/tokens/_md-comp-checkbox.scss +156 -0
  1089. package/tokens/_md-comp-circular-progress.scss +79 -0
  1090. package/tokens/_md-comp-dialog.scss +112 -0
  1091. package/tokens/_md-comp-divider.scss +43 -0
  1092. package/tokens/_md-comp-elevated-button.scss +143 -0
  1093. package/tokens/_md-comp-elevated-card.scss +80 -0
  1094. package/tokens/_md-comp-elevation.scss +48 -0
  1095. package/tokens/_md-comp-fab-branded.scss +155 -0
  1096. package/tokens/_md-comp-fab.scss +296 -0
  1097. package/tokens/_md-comp-filled-button.scss +143 -0
  1098. package/tokens/_md-comp-filled-card.scss +80 -0
  1099. package/tokens/_md-comp-filled-field.scss +285 -0
  1100. package/tokens/_md-comp-filled-icon-button.scss +119 -0
  1101. package/tokens/_md-comp-filled-select.scss +198 -0
  1102. package/tokens/_md-comp-filled-text-field.scss +192 -0
  1103. package/tokens/_md-comp-filled-tonal-button.scss +143 -0
  1104. package/tokens/_md-comp-filled-tonal-icon-button.scss +123 -0
  1105. package/tokens/_md-comp-filter-chip.scss +265 -0
  1106. package/tokens/_md-comp-focus-ring.scss +78 -0
  1107. package/tokens/_md-comp-full-screen-dialog.scss +25 -0
  1108. package/tokens/_md-comp-icon-button.scss +94 -0
  1109. package/tokens/_md-comp-icon.scss +46 -0
  1110. package/tokens/_md-comp-input-chip.scss +247 -0
  1111. package/tokens/_md-comp-item.scss +88 -0
  1112. package/tokens/_md-comp-linear-progress.scss +64 -0
  1113. package/tokens/_md-comp-list-item.scss +173 -0
  1114. package/tokens/_md-comp-list.scss +44 -0
  1115. package/tokens/_md-comp-menu-item.scss +125 -0
  1116. package/tokens/_md-comp-menu.scss +59 -0
  1117. package/tokens/_md-comp-navigation-bar.scss +44 -0
  1118. package/tokens/_md-comp-navigation-drawer.scss +44 -0
  1119. package/tokens/_md-comp-outlined-button.scss +139 -0
  1120. package/tokens/_md-comp-outlined-card.scss +86 -0
  1121. package/tokens/_md-comp-outlined-field.scss +260 -0
  1122. package/tokens/_md-comp-outlined-icon-button.scss +117 -0
  1123. package/tokens/_md-comp-outlined-segmented-button.scss +123 -0
  1124. package/tokens/_md-comp-outlined-select.scss +186 -0
  1125. package/tokens/_md-comp-outlined-text-field.scss +179 -0
  1126. package/tokens/_md-comp-primary-tab.scss +160 -0
  1127. package/tokens/_md-comp-radio.scss +86 -0
  1128. package/tokens/_md-comp-ripple.scss +48 -0
  1129. package/tokens/_md-comp-secondary-tab.scss +158 -0
  1130. package/tokens/_md-comp-slider.scss +117 -0
  1131. package/tokens/_md-comp-suggestion-chip.scss +157 -0
  1132. package/tokens/_md-comp-switch.scss +187 -0
  1133. package/tokens/_md-comp-test-table.scss +43 -0
  1134. package/tokens/_md-comp-text-button.scss +132 -0
  1135. package/tokens/_md-ref-palette.scss +112 -0
  1136. package/tokens/_md-ref-typeface.scss +46 -0
  1137. package/tokens/_md-sys-color.scss +119 -0
  1138. package/tokens/_md-sys-elevation.scss +31 -0
  1139. package/tokens/_md-sys-motion.scss +12 -0
  1140. package/tokens/_md-sys-shape.scss +102 -0
  1141. package/tokens/_md-sys-state.scss +12 -0
  1142. package/tokens/_md-sys-typescale.scss +149 -0
  1143. package/tokens/internal/_shape.scss +93 -0
  1144. package/tokens/internal/_validate.scss +109 -0
  1145. package/tokens/v0_192/_index.scss +107 -0
  1146. package/tokens/v0_192/_md-comp-assist-chip.scss +111 -0
  1147. package/tokens/v0_192/_md-comp-badge.scss +61 -0
  1148. package/tokens/v0_192/_md-comp-banner.scss +76 -0
  1149. package/tokens/v0_192/_md-comp-bottom-app-bar.scss +36 -0
  1150. package/tokens/v0_192/_md-comp-carousel-item.scss +66 -0
  1151. package/tokens/v0_192/_md-comp-checkbox.scss +129 -0
  1152. package/tokens/v0_192/_md-comp-circular-progress-indicator.scss +41 -0
  1153. package/tokens/v0_192/_md-comp-data-table.scss +99 -0
  1154. package/tokens/v0_192/_md-comp-date-input-modal.scss +90 -0
  1155. package/tokens/v0_192/_md-comp-date-picker-docked.scss +247 -0
  1156. package/tokens/v0_192/_md-comp-date-picker-modal.scss +306 -0
  1157. package/tokens/v0_192/_md-comp-dialog.scss +124 -0
  1158. package/tokens/v0_192/_md-comp-divider.scss +28 -0
  1159. package/tokens/v0_192/_md-comp-elevated-button.scss +92 -0
  1160. package/tokens/v0_192/_md-comp-elevated-card.scss +60 -0
  1161. package/tokens/v0_192/_md-comp-extended-fab-branded.scss +89 -0
  1162. package/tokens/v0_192/_md-comp-extended-fab-primary.scss +97 -0
  1163. package/tokens/v0_192/_md-comp-extended-fab-secondary.scss +98 -0
  1164. package/tokens/v0_192/_md-comp-extended-fab-surface.scss +93 -0
  1165. package/tokens/v0_192/_md-comp-extended-fab-tertiary.scss +98 -0
  1166. package/tokens/v0_192/_md-comp-fab-branded-large.scss +63 -0
  1167. package/tokens/v0_192/_md-comp-fab-branded.scss +63 -0
  1168. package/tokens/v0_192/_md-comp-fab-primary-large.scss +68 -0
  1169. package/tokens/v0_192/_md-comp-fab-primary-small.scss +68 -0
  1170. package/tokens/v0_192/_md-comp-fab-primary.scss +68 -0
  1171. package/tokens/v0_192/_md-comp-fab-secondary-large.scss +69 -0
  1172. package/tokens/v0_192/_md-comp-fab-secondary-small.scss +69 -0
  1173. package/tokens/v0_192/_md-comp-fab-secondary.scss +69 -0
  1174. package/tokens/v0_192/_md-comp-fab-surface-large.scss +67 -0
  1175. package/tokens/v0_192/_md-comp-fab-surface-small.scss +67 -0
  1176. package/tokens/v0_192/_md-comp-fab-surface.scss +67 -0
  1177. package/tokens/v0_192/_md-comp-fab-tertiary-large.scss +69 -0
  1178. package/tokens/v0_192/_md-comp-fab-tertiary-small.scss +69 -0
  1179. package/tokens/v0_192/_md-comp-fab-tertiary.scss +69 -0
  1180. package/tokens/v0_192/_md-comp-filled-autocomplete.scss +239 -0
  1181. package/tokens/v0_192/_md-comp-filled-button.scss +92 -0
  1182. package/tokens/v0_192/_md-comp-filled-card.scss +62 -0
  1183. package/tokens/v0_192/_md-comp-filled-icon-button.scss +83 -0
  1184. package/tokens/v0_192/_md-comp-filled-menu-button.scss +101 -0
  1185. package/tokens/v0_192/_md-comp-filled-select.scss +273 -0
  1186. package/tokens/v0_192/_md-comp-filled-text-field.scss +193 -0
  1187. package/tokens/v0_192/_md-comp-filled-tonal-button.scss +102 -0
  1188. package/tokens/v0_192/_md-comp-filled-tonal-icon-button.scss +90 -0
  1189. package/tokens/v0_192/_md-comp-filter-chip.scss +210 -0
  1190. package/tokens/v0_192/_md-comp-full-screen-dialog.scss +114 -0
  1191. package/tokens/v0_192/_md-comp-icon-button.scss +74 -0
  1192. package/tokens/v0_192/_md-comp-input-chip.scss +187 -0
  1193. package/tokens/v0_192/_md-comp-linear-progress-indicator.scss +43 -0
  1194. package/tokens/v0_192/_md-comp-list.scss +255 -0
  1195. package/tokens/v0_192/_md-comp-menu.scss +44 -0
  1196. package/tokens/v0_192/_md-comp-navigation-bar.scss +115 -0
  1197. package/tokens/v0_192/_md-comp-navigation-drawer.scss +165 -0
  1198. package/tokens/v0_192/_md-comp-navigation-rail.scss +119 -0
  1199. package/tokens/v0_192/_md-comp-outlined-autocomplete.scss +229 -0
  1200. package/tokens/v0_192/_md-comp-outlined-button.scss +87 -0
  1201. package/tokens/v0_192/_md-comp-outlined-card.scss +66 -0
  1202. package/tokens/v0_192/_md-comp-outlined-icon-button.scss +83 -0
  1203. package/tokens/v0_192/_md-comp-outlined-menu-button.scss +97 -0
  1204. package/tokens/v0_192/_md-comp-outlined-segmented-button.scss +115 -0
  1205. package/tokens/v0_192/_md-comp-outlined-select.scss +263 -0
  1206. package/tokens/v0_192/_md-comp-outlined-text-field.scss +174 -0
  1207. package/tokens/v0_192/_md-comp-plain-tooltip.scss +58 -0
  1208. package/tokens/v0_192/_md-comp-primary-navigation-tab.scss +124 -0
  1209. package/tokens/v0_192/_md-comp-radio-button.scss +71 -0
  1210. package/tokens/v0_192/_md-comp-rich-tooltip.scss +122 -0
  1211. package/tokens/v0_192/_md-comp-scrim.scss +28 -0
  1212. package/tokens/v0_192/_md-comp-search-bar.scss +100 -0
  1213. package/tokens/v0_192/_md-comp-search-view.scss +94 -0
  1214. package/tokens/v0_192/_md-comp-secondary-navigation-tab.scss +87 -0
  1215. package/tokens/v0_192/_md-comp-sheet-bottom.scss +46 -0
  1216. package/tokens/v0_192/_md-comp-sheet-floating.scss +35 -0
  1217. package/tokens/v0_192/_md-comp-sheet-side.scss +94 -0
  1218. package/tokens/v0_192/_md-comp-slider.scss +118 -0
  1219. package/tokens/v0_192/_md-comp-snackbar.scss +130 -0
  1220. package/tokens/v0_192/_md-comp-standard-menu-button.scss +101 -0
  1221. package/tokens/v0_192/_md-comp-suggestion-chip.scss +127 -0
  1222. package/tokens/v0_192/_md-comp-switch.scss +141 -0
  1223. package/tokens/v0_192/_md-comp-text-button.scss +80 -0
  1224. package/tokens/v0_192/_md-comp-time-input.scss +220 -0
  1225. package/tokens/v0_192/_md-comp-time-picker.scss +267 -0
  1226. package/tokens/v0_192/_md-comp-top-app-bar-large.scss +64 -0
  1227. package/tokens/v0_192/_md-comp-top-app-bar-medium.scss +64 -0
  1228. package/tokens/v0_192/_md-comp-top-app-bar-small-centered.scss +71 -0
  1229. package/tokens/v0_192/_md-comp-top-app-bar-small.scss +67 -0
  1230. package/tokens/v0_192/_md-ref-palette.scss +109 -0
  1231. package/tokens/v0_192/_md-ref-typeface.scss +23 -0
  1232. package/tokens/v0_192/_md-sys-color.scss +135 -0
  1233. package/tokens/v0_192/_md-sys-elevation.scss +24 -0
  1234. package/tokens/v0_192/_md-sys-motion.scss +55 -0
  1235. package/tokens/v0_192/_md-sys-shape.scss +33 -0
  1236. package/tokens/v0_192/_md-sys-state.scss +22 -0
  1237. package/tokens/v0_192/_md-sys-typescale.scss +286 -0
  1238. package/tokens/v0_192/index.test.css +1 -0
  1239. package/tokens/v0_192/index.test.css.map +1 -0
  1240. package/tokens/v0_192/index.test.scss +584 -0
  1241. package/tokens/v0_192/lib.test.css +1 -0
  1242. package/tokens/v0_192/lib.test.css.map +1 -0
  1243. package/tokens/v0_192/lib.test.scss +663 -0
  1244. package/typography/_typeface.scss +49 -0
  1245. package/typography/_typescale.scss +157 -0
  1246. package/typography/md-typescale-styles.css +1 -0
  1247. package/typography/md-typescale-styles.css.map +1 -0
  1248. package/typography/md-typescale-styles.d.ts +1 -0
  1249. package/typography/md-typescale-styles.js +10 -0
  1250. package/typography/md-typescale-styles.js.map +1 -0
  1251. package/typography/md-typescale-styles.scss +11 -0
  1252. package/web-types.json +5718 -0
@@ -0,0 +1,131 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2023 Google LLC
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ import '../../divider/divider.js';
7
+ import { LitElement } from 'lit';
8
+ import { DialogAnimation } from './animations.js';
9
+ declare const dialogBaseClass: import("../../labs/behaviors/mixin.js").MixinReturn<typeof LitElement>;
10
+ /**
11
+ * A dialog component.
12
+ *
13
+ * @fires open {Event} Dispatched when the dialog is opening before any animations.
14
+ * @fires opened {Event} Dispatched when the dialog has opened after any animations.
15
+ * @fires close {Event} Dispatched when the dialog is closing before any animations.
16
+ * @fires closed {Event} Dispatched when the dialog has closed after any animations.
17
+ * @fires cancel {Event} Dispatched when the dialog has been canceled by clicking
18
+ * on the scrim or pressing Escape.
19
+ */
20
+ export declare class Dialog extends dialogBaseClass {
21
+ /**
22
+ * Opens the dialog when set to `true` and closes it when set to `false`.
23
+ */
24
+ get open(): boolean;
25
+ set open(open: boolean);
26
+ /**
27
+ * Skips the opening and closing animations.
28
+ */
29
+ quick: boolean;
30
+ /**
31
+ * Gets or sets the dialog's return value, usually to indicate which button
32
+ * a user pressed to close it.
33
+ *
34
+ * https://developer.mozilla.org/en-US/docs/Web/API/HTMLDialogElement/returnValue
35
+ */
36
+ returnValue: string;
37
+ /**
38
+ * The type of dialog for accessibility. Set this to `alert` to announce a
39
+ * dialog as an alert dialog.
40
+ */
41
+ type?: 'alert';
42
+ /**
43
+ * Disables focus trapping, which by default keeps keyboard Tab navigation
44
+ * within the dialog.
45
+ *
46
+ * When disabled, after focusing the last element of a dialog, pressing Tab
47
+ * again will release focus from the window back to the browser (such as the
48
+ * URL bar).
49
+ *
50
+ * Focus trapping is recommended for accessibility, and should not typically
51
+ * be disabled. Only turn this off if the use case of a dialog is more
52
+ * accessible without focus trapping.
53
+ */
54
+ noFocusTrap: boolean;
55
+ /**
56
+ * Gets the opening animation for a dialog. Set to a new function to customize
57
+ * the animation.
58
+ */
59
+ getOpenAnimation: () => DialogAnimation;
60
+ /**
61
+ * Gets the closing animation for a dialog. Set to a new function to customize
62
+ * the animation.
63
+ */
64
+ getCloseAnimation: () => DialogAnimation;
65
+ private isOpen;
66
+ private isOpening;
67
+ private isConnectedPromiseResolve;
68
+ private isConnectedPromise;
69
+ private readonly dialog;
70
+ private readonly scrim;
71
+ private readonly container;
72
+ private readonly headline;
73
+ private readonly content;
74
+ private readonly actions;
75
+ private isAtScrollTop;
76
+ private isAtScrollBottom;
77
+ private readonly scroller;
78
+ private readonly topAnchor;
79
+ private readonly bottomAnchor;
80
+ private readonly firstFocusTrap;
81
+ private nextClickIsFromContent;
82
+ private intersectionObserver?;
83
+ private hasHeadline;
84
+ private hasActions;
85
+ private hasIcon;
86
+ private cancelAnimations?;
87
+ private escapePressedWithoutCancel;
88
+ private readonly treewalker;
89
+ constructor();
90
+ /**
91
+ * Opens the dialog and fires a cancelable `open` event. After a dialog's
92
+ * animation, an `opened` event is fired.
93
+ *
94
+ * Add an `autofocus` attribute to a child of the dialog that should
95
+ * receive focus after opening.
96
+ *
97
+ * @return A Promise that resolves after the animation is finished and the
98
+ * `opened` event was fired.
99
+ */
100
+ show(): Promise<void>;
101
+ /**
102
+ * Closes the dialog and fires a cancelable `close` event. After a dialog's
103
+ * animation, a `closed` event is fired.
104
+ *
105
+ * @param returnValue A return value usually indicating which button was used
106
+ * to close a dialog. If a dialog is canceled by clicking the scrim or
107
+ * pressing Escape, it will not change the return value after closing.
108
+ * @return A Promise that resolves after the animation is finished and the
109
+ * `closed` event was fired.
110
+ */
111
+ close(returnValue?: string): Promise<void>;
112
+ connectedCallback(): void;
113
+ disconnectedCallback(): void;
114
+ protected render(): import("lit-html").TemplateResult<1>;
115
+ protected firstUpdated(): void;
116
+ private handleDialogClick;
117
+ private handleContentClick;
118
+ private handleSubmit;
119
+ private handleCancel;
120
+ private handleClose;
121
+ private handleKeydown;
122
+ private animateDialog;
123
+ private handleHeadlineChange;
124
+ private handleActionsChange;
125
+ private handleIconChange;
126
+ private handleAnchorIntersection;
127
+ private getIsConnectedPromise;
128
+ private handleFocusTrapFocus;
129
+ private getFirstAndLastFocusableChildren;
130
+ }
131
+ export {};
@@ -0,0 +1,556 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2023 Google LLC
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ import { __decorate } from "tslib";
7
+ import '../../divider/divider.js';
8
+ import { html, isServer, LitElement, nothing } from 'lit';
9
+ import { property, query, state } from 'lit/decorators.js';
10
+ import { classMap } from 'lit/directives/class-map.js';
11
+ import { mixinDelegatesAria } from '../../internal/aria/delegate.js';
12
+ import { redispatchEvent } from '../../internal/events/redispatch-event.js';
13
+ import { DIALOG_DEFAULT_CLOSE_ANIMATION, DIALOG_DEFAULT_OPEN_ANIMATION, } from './animations.js';
14
+ // Separate variable needed for closure.
15
+ const dialogBaseClass = mixinDelegatesAria(LitElement);
16
+ /**
17
+ * A dialog component.
18
+ *
19
+ * @fires open {Event} Dispatched when the dialog is opening before any animations.
20
+ * @fires opened {Event} Dispatched when the dialog has opened after any animations.
21
+ * @fires close {Event} Dispatched when the dialog is closing before any animations.
22
+ * @fires closed {Event} Dispatched when the dialog has closed after any animations.
23
+ * @fires cancel {Event} Dispatched when the dialog has been canceled by clicking
24
+ * on the scrim or pressing Escape.
25
+ */
26
+ export class Dialog extends dialogBaseClass {
27
+ // We do not use `delegatesFocus: true` due to a Chromium bug with
28
+ // selecting text.
29
+ // See https://bugs.chromium.org/p/chromium/issues/detail?id=950357
30
+ /**
31
+ * Opens the dialog when set to `true` and closes it when set to `false`.
32
+ */
33
+ get open() {
34
+ return this.isOpen;
35
+ }
36
+ set open(open) {
37
+ if (open === this.isOpen) {
38
+ return;
39
+ }
40
+ this.isOpen = open;
41
+ if (open) {
42
+ this.setAttribute('open', '');
43
+ this.show();
44
+ }
45
+ else {
46
+ this.removeAttribute('open');
47
+ this.close();
48
+ }
49
+ }
50
+ constructor() {
51
+ super();
52
+ /**
53
+ * Skips the opening and closing animations.
54
+ */
55
+ this.quick = false;
56
+ /**
57
+ * Gets or sets the dialog's return value, usually to indicate which button
58
+ * a user pressed to close it.
59
+ *
60
+ * https://developer.mozilla.org/en-US/docs/Web/API/HTMLDialogElement/returnValue
61
+ */
62
+ this.returnValue = '';
63
+ /**
64
+ * Disables focus trapping, which by default keeps keyboard Tab navigation
65
+ * within the dialog.
66
+ *
67
+ * When disabled, after focusing the last element of a dialog, pressing Tab
68
+ * again will release focus from the window back to the browser (such as the
69
+ * URL bar).
70
+ *
71
+ * Focus trapping is recommended for accessibility, and should not typically
72
+ * be disabled. Only turn this off if the use case of a dialog is more
73
+ * accessible without focus trapping.
74
+ */
75
+ this.noFocusTrap = false;
76
+ /**
77
+ * Gets the opening animation for a dialog. Set to a new function to customize
78
+ * the animation.
79
+ */
80
+ this.getOpenAnimation = () => DIALOG_DEFAULT_OPEN_ANIMATION;
81
+ /**
82
+ * Gets the closing animation for a dialog. Set to a new function to customize
83
+ * the animation.
84
+ */
85
+ this.getCloseAnimation = () => DIALOG_DEFAULT_CLOSE_ANIMATION;
86
+ this.isOpen = false;
87
+ this.isOpening = false;
88
+ this.isConnectedPromise = this.getIsConnectedPromise();
89
+ this.isAtScrollTop = false;
90
+ this.isAtScrollBottom = false;
91
+ this.nextClickIsFromContent = false;
92
+ // Dialogs should not be SSR'd while open, so we can just use runtime checks.
93
+ this.hasHeadline = false;
94
+ this.hasActions = false;
95
+ this.hasIcon = false;
96
+ // See https://bugs.chromium.org/p/chromium/issues/detail?id=1512224
97
+ // Chrome v120 has a bug where escape keys do not trigger cancels. If we get
98
+ // a dialog "close" event that is triggered without a "cancel" after an escape
99
+ // keydown, then we need to manually trigger our closing logic.
100
+ //
101
+ // This bug occurs when pressing escape to close a dialog without first
102
+ // interacting with the dialog's content.
103
+ //
104
+ // Cleanup tracking:
105
+ // https://github.com/material-components/material-web/issues/5330
106
+ // This can be removed when full CloseWatcher support added and the above bug
107
+ // in Chromium is fixed to fire 'cancel' with one escape press and close with
108
+ // multiple.
109
+ this.escapePressedWithoutCancel = false;
110
+ // This TreeWalker is used to walk through a dialog's children to find
111
+ // focusable elements. TreeWalker is faster than `querySelectorAll('*')`.
112
+ // We check for isServer because there isn't a "document" during an SSR
113
+ // run.
114
+ this.treewalker = isServer
115
+ ? null
116
+ : document.createTreeWalker(this, NodeFilter.SHOW_ELEMENT);
117
+ if (!isServer) {
118
+ this.addEventListener('submit', this.handleSubmit);
119
+ }
120
+ }
121
+ /**
122
+ * Opens the dialog and fires a cancelable `open` event. After a dialog's
123
+ * animation, an `opened` event is fired.
124
+ *
125
+ * Add an `autofocus` attribute to a child of the dialog that should
126
+ * receive focus after opening.
127
+ *
128
+ * @return A Promise that resolves after the animation is finished and the
129
+ * `opened` event was fired.
130
+ */
131
+ async show() {
132
+ this.isOpening = true;
133
+ // Dialogs can be opened before being attached to the DOM, so we need to
134
+ // wait until we're connected before calling `showModal()`.
135
+ await this.isConnectedPromise;
136
+ await this.updateComplete;
137
+ const dialog = this.dialog;
138
+ // Check if already opened or if `dialog.close()` was called while awaiting.
139
+ if (dialog.open || !this.isOpening) {
140
+ this.isOpening = false;
141
+ return;
142
+ }
143
+ const preventOpen = !this.dispatchEvent(new Event('open', { cancelable: true }));
144
+ if (preventOpen) {
145
+ this.open = false;
146
+ this.isOpening = false;
147
+ return;
148
+ }
149
+ // All Material dialogs are modal.
150
+ dialog.showModal();
151
+ this.open = true;
152
+ // Reset scroll position if re-opening a dialog with the same content.
153
+ if (this.scroller) {
154
+ this.scroller.scrollTop = 0;
155
+ }
156
+ // Native modal dialogs ignore autofocus and instead force focus to the
157
+ // first focusable child. Override this behavior if there is a child with
158
+ // an autofocus attribute.
159
+ this.querySelector('[autofocus]')?.focus();
160
+ await this.animateDialog(this.getOpenAnimation());
161
+ this.dispatchEvent(new Event('opened'));
162
+ this.isOpening = false;
163
+ }
164
+ /**
165
+ * Closes the dialog and fires a cancelable `close` event. After a dialog's
166
+ * animation, a `closed` event is fired.
167
+ *
168
+ * @param returnValue A return value usually indicating which button was used
169
+ * to close a dialog. If a dialog is canceled by clicking the scrim or
170
+ * pressing Escape, it will not change the return value after closing.
171
+ * @return A Promise that resolves after the animation is finished and the
172
+ * `closed` event was fired.
173
+ */
174
+ async close(returnValue = this.returnValue) {
175
+ this.isOpening = false;
176
+ if (!this.isConnected) {
177
+ // Disconnected dialogs do not fire close events or animate.
178
+ this.open = false;
179
+ return;
180
+ }
181
+ await this.updateComplete;
182
+ const dialog = this.dialog;
183
+ // Check if already closed or if `dialog.show()` was called while awaiting.
184
+ if (!dialog.open || this.isOpening) {
185
+ this.open = false;
186
+ return;
187
+ }
188
+ const prevReturnValue = this.returnValue;
189
+ this.returnValue = returnValue;
190
+ const preventClose = !this.dispatchEvent(new Event('close', { cancelable: true }));
191
+ if (preventClose) {
192
+ this.returnValue = prevReturnValue;
193
+ return;
194
+ }
195
+ await this.animateDialog(this.getCloseAnimation());
196
+ dialog.close(returnValue);
197
+ this.open = false;
198
+ this.dispatchEvent(new Event('closed'));
199
+ }
200
+ connectedCallback() {
201
+ super.connectedCallback();
202
+ this.isConnectedPromiseResolve();
203
+ }
204
+ disconnectedCallback() {
205
+ super.disconnectedCallback();
206
+ this.isConnectedPromise = this.getIsConnectedPromise();
207
+ }
208
+ render() {
209
+ const scrollable = this.open && !(this.isAtScrollTop && this.isAtScrollBottom);
210
+ const classes = {
211
+ 'has-headline': this.hasHeadline,
212
+ 'has-actions': this.hasActions,
213
+ 'has-icon': this.hasIcon,
214
+ 'scrollable': scrollable,
215
+ 'show-top-divider': scrollable && !this.isAtScrollTop,
216
+ 'show-bottom-divider': scrollable && !this.isAtScrollBottom,
217
+ };
218
+ // The focus trap sentinels are only added after the dialog opens, since
219
+ // dialog.showModal() will try to autofocus them, even with tabindex="-1".
220
+ const showFocusTrap = this.open && !this.noFocusTrap;
221
+ const focusTrap = html `
222
+ <div
223
+ class="focus-trap"
224
+ tabindex="0"
225
+ aria-hidden="true"
226
+ @focus=${this.handleFocusTrapFocus}></div>
227
+ `;
228
+ const { ariaLabel } = this;
229
+ return html `
230
+ <div class="scrim"></div>
231
+ <dialog
232
+ class=${classMap(classes)}
233
+ aria-label=${ariaLabel || nothing}
234
+ aria-labelledby=${this.hasHeadline ? 'headline' : nothing}
235
+ role=${this.type === 'alert' ? 'alertdialog' : nothing}
236
+ @cancel=${this.handleCancel}
237
+ @click=${this.handleDialogClick}
238
+ @close=${this.handleClose}
239
+ @keydown=${this.handleKeydown}
240
+ .returnValue=${this.returnValue || nothing}>
241
+ ${showFocusTrap ? focusTrap : nothing}
242
+ <div class="container" @click=${this.handleContentClick}>
243
+ <div class="headline">
244
+ <div class="icon" aria-hidden="true">
245
+ <slot name="icon" @slotchange=${this.handleIconChange}></slot>
246
+ </div>
247
+ <h2 id="headline" aria-hidden=${!this.hasHeadline || nothing}>
248
+ <slot
249
+ name="headline"
250
+ @slotchange=${this.handleHeadlineChange}></slot>
251
+ </h2>
252
+ <md-divider></md-divider>
253
+ </div>
254
+ <div class="scroller">
255
+ <div class="content">
256
+ <div class="top anchor"></div>
257
+ <slot name="content"></slot>
258
+ <div class="bottom anchor"></div>
259
+ </div>
260
+ </div>
261
+ <div class="actions">
262
+ <md-divider></md-divider>
263
+ <slot name="actions" @slotchange=${this.handleActionsChange}></slot>
264
+ </div>
265
+ </div>
266
+ ${showFocusTrap ? focusTrap : nothing}
267
+ </dialog>
268
+ `;
269
+ }
270
+ firstUpdated() {
271
+ this.intersectionObserver = new IntersectionObserver((entries) => {
272
+ for (const entry of entries) {
273
+ this.handleAnchorIntersection(entry);
274
+ }
275
+ }, { root: this.scroller });
276
+ this.intersectionObserver.observe(this.topAnchor);
277
+ this.intersectionObserver.observe(this.bottomAnchor);
278
+ }
279
+ handleDialogClick() {
280
+ if (this.nextClickIsFromContent) {
281
+ // Avoid doing a layout calculation below if we know the click came from
282
+ // content.
283
+ this.nextClickIsFromContent = false;
284
+ return;
285
+ }
286
+ // Click originated on the backdrop. Native `<dialog>`s will not cancel,
287
+ // but Material dialogs do.
288
+ const preventDefault = !this.dispatchEvent(new Event('cancel', { cancelable: true }));
289
+ if (preventDefault) {
290
+ return;
291
+ }
292
+ this.close();
293
+ }
294
+ handleContentClick() {
295
+ this.nextClickIsFromContent = true;
296
+ }
297
+ handleSubmit(event) {
298
+ const form = event.target;
299
+ const { submitter } = event;
300
+ if (form.method !== 'dialog' || !submitter) {
301
+ return;
302
+ }
303
+ // Close reason is the submitter's value attribute, or the dialog's
304
+ // `returnValue` if there is no attribute.
305
+ this.close(submitter.getAttribute('value') ?? this.returnValue);
306
+ }
307
+ handleCancel(event) {
308
+ if (event.target !== this.dialog) {
309
+ // Ignore any cancel events dispatched by content.
310
+ return;
311
+ }
312
+ this.escapePressedWithoutCancel = false;
313
+ const preventDefault = !redispatchEvent(this, event);
314
+ // We always prevent default on the original dialog event since we'll
315
+ // animate closing it before it actually closes.
316
+ event.preventDefault();
317
+ if (preventDefault) {
318
+ return;
319
+ }
320
+ this.close();
321
+ }
322
+ handleClose() {
323
+ if (!this.escapePressedWithoutCancel) {
324
+ return;
325
+ }
326
+ this.escapePressedWithoutCancel = false;
327
+ this.dialog?.dispatchEvent(new Event('cancel', { cancelable: true }));
328
+ }
329
+ handleKeydown(event) {
330
+ if (event.key !== 'Escape') {
331
+ return;
332
+ }
333
+ // An escape key was pressed. If a "close" event fires next without a
334
+ // "cancel" event first, then we know we're in the Chrome v120 bug.
335
+ this.escapePressedWithoutCancel = true;
336
+ // Wait a full task for the cancel/close event listeners to fire, then
337
+ // reset the flag.
338
+ setTimeout(() => {
339
+ this.escapePressedWithoutCancel = false;
340
+ });
341
+ }
342
+ async animateDialog(animation) {
343
+ // Always cancel the previous animations. Animations can include `fill`
344
+ // modes that need to be cleared when `quick` is toggled. If not, content
345
+ // that faded out will remain hidden when a `quick` dialog re-opens after
346
+ // previously opening and closing without `quick`.
347
+ this.cancelAnimations?.abort();
348
+ this.cancelAnimations = new AbortController();
349
+ if (this.quick) {
350
+ return;
351
+ }
352
+ const { dialog, scrim, container, headline, content, actions } = this;
353
+ if (!dialog || !scrim || !container || !headline || !content || !actions) {
354
+ return;
355
+ }
356
+ const { container: containerAnimate, dialog: dialogAnimate, scrim: scrimAnimate, headline: headlineAnimate, content: contentAnimate, actions: actionsAnimate, } = animation;
357
+ const elementAndAnimation = [
358
+ [dialog, dialogAnimate ?? []],
359
+ [scrim, scrimAnimate ?? []],
360
+ [container, containerAnimate ?? []],
361
+ [headline, headlineAnimate ?? []],
362
+ [content, contentAnimate ?? []],
363
+ [actions, actionsAnimate ?? []],
364
+ ];
365
+ const animations = [];
366
+ for (const [element, animation] of elementAndAnimation) {
367
+ for (const animateArgs of animation) {
368
+ const animation = element.animate(...animateArgs);
369
+ this.cancelAnimations.signal.addEventListener('abort', () => {
370
+ animation.cancel();
371
+ });
372
+ animations.push(animation);
373
+ }
374
+ }
375
+ await Promise.all(animations.map((animation) => animation.finished.catch(() => {
376
+ // Ignore intentional AbortErrors when calling `animation.cancel()`.
377
+ })));
378
+ }
379
+ handleHeadlineChange(event) {
380
+ const slot = event.target;
381
+ this.hasHeadline = slot.assignedElements().length > 0;
382
+ }
383
+ handleActionsChange(event) {
384
+ const slot = event.target;
385
+ this.hasActions = slot.assignedElements().length > 0;
386
+ }
387
+ handleIconChange(event) {
388
+ const slot = event.target;
389
+ this.hasIcon = slot.assignedElements().length > 0;
390
+ }
391
+ handleAnchorIntersection(entry) {
392
+ const { target, isIntersecting } = entry;
393
+ if (target === this.topAnchor) {
394
+ this.isAtScrollTop = isIntersecting;
395
+ }
396
+ if (target === this.bottomAnchor) {
397
+ this.isAtScrollBottom = isIntersecting;
398
+ }
399
+ }
400
+ getIsConnectedPromise() {
401
+ return new Promise((resolve) => {
402
+ this.isConnectedPromiseResolve = resolve;
403
+ });
404
+ }
405
+ handleFocusTrapFocus(event) {
406
+ const [firstFocusableChild, lastFocusableChild] = this.getFirstAndLastFocusableChildren();
407
+ if (!firstFocusableChild || !lastFocusableChild) {
408
+ // When a dialog does not have focusable children, the dialog itself
409
+ // receives focus.
410
+ this.dialog?.focus();
411
+ return;
412
+ }
413
+ // To determine which child to focus, we need to know which focus trap
414
+ // received focus...
415
+ const isFirstFocusTrap = event.target === this.firstFocusTrap;
416
+ const isLastFocusTrap = !isFirstFocusTrap;
417
+ // ...and where the focus came from (what was previously focused).
418
+ const focusCameFromFirstChild = event.relatedTarget === firstFocusableChild;
419
+ const focusCameFromLastChild = event.relatedTarget === lastFocusableChild;
420
+ // Although this is a focus trap, focus can come from outside the trap.
421
+ // This can happen when elements are programmatically `focus()`'d. It also
422
+ // happens when focus leaves and returns to the window, such as clicking on
423
+ // the browser's URL bar and pressing Tab, or switching focus between
424
+ // iframes.
425
+ const focusCameFromOutsideDialog = !focusCameFromFirstChild && !focusCameFromLastChild;
426
+ // Focus the dialog's first child when we reach the end of the dialog and
427
+ // focus is moving forward. Or, when focus is moving forwards into the
428
+ // dialog from outside of the window.
429
+ const shouldFocusFirstChild = (isLastFocusTrap && focusCameFromLastChild) ||
430
+ (isFirstFocusTrap && focusCameFromOutsideDialog);
431
+ if (shouldFocusFirstChild) {
432
+ firstFocusableChild.focus();
433
+ return;
434
+ }
435
+ // Focus the dialog's last child when we reach the beginning of the dialog
436
+ // and focus is moving backward. Or, when focus is moving backwards into the
437
+ // dialog from outside of the window.
438
+ const shouldFocusLastChild = (isFirstFocusTrap && focusCameFromFirstChild) ||
439
+ (isLastFocusTrap && focusCameFromOutsideDialog);
440
+ if (shouldFocusLastChild) {
441
+ lastFocusableChild.focus();
442
+ return;
443
+ }
444
+ // The booleans above are verbose for readability, but code executation
445
+ // won't actually reach here.
446
+ }
447
+ getFirstAndLastFocusableChildren() {
448
+ if (!this.treewalker) {
449
+ return [null, null];
450
+ }
451
+ let firstFocusableChild = null;
452
+ let lastFocusableChild = null;
453
+ // Reset the current node back to the root host element.
454
+ this.treewalker.currentNode = this.treewalker.root;
455
+ while (this.treewalker.nextNode()) {
456
+ // Cast as Element since the TreeWalker filter only accepts Elements.
457
+ const nextChild = this.treewalker.currentNode;
458
+ if (!isFocusable(nextChild)) {
459
+ continue;
460
+ }
461
+ if (!firstFocusableChild) {
462
+ firstFocusableChild = nextChild;
463
+ }
464
+ lastFocusableChild = nextChild;
465
+ }
466
+ // We set lastFocusableChild immediately after finding a
467
+ // firstFocusableChild, which means the pair is either both null or both
468
+ // non-null. Cast since TypeScript does not recognize this.
469
+ return [firstFocusableChild, lastFocusableChild];
470
+ }
471
+ }
472
+ __decorate([
473
+ property({ type: Boolean })
474
+ ], Dialog.prototype, "open", null);
475
+ __decorate([
476
+ property({ type: Boolean })
477
+ ], Dialog.prototype, "quick", void 0);
478
+ __decorate([
479
+ property({ attribute: false })
480
+ ], Dialog.prototype, "returnValue", void 0);
481
+ __decorate([
482
+ property()
483
+ ], Dialog.prototype, "type", void 0);
484
+ __decorate([
485
+ property({ type: Boolean, attribute: 'no-focus-trap' })
486
+ ], Dialog.prototype, "noFocusTrap", void 0);
487
+ __decorate([
488
+ query('dialog')
489
+ ], Dialog.prototype, "dialog", void 0);
490
+ __decorate([
491
+ query('.scrim')
492
+ ], Dialog.prototype, "scrim", void 0);
493
+ __decorate([
494
+ query('.container')
495
+ ], Dialog.prototype, "container", void 0);
496
+ __decorate([
497
+ query('.headline')
498
+ ], Dialog.prototype, "headline", void 0);
499
+ __decorate([
500
+ query('.content')
501
+ ], Dialog.prototype, "content", void 0);
502
+ __decorate([
503
+ query('.actions')
504
+ ], Dialog.prototype, "actions", void 0);
505
+ __decorate([
506
+ state()
507
+ ], Dialog.prototype, "isAtScrollTop", void 0);
508
+ __decorate([
509
+ state()
510
+ ], Dialog.prototype, "isAtScrollBottom", void 0);
511
+ __decorate([
512
+ query('.scroller')
513
+ ], Dialog.prototype, "scroller", void 0);
514
+ __decorate([
515
+ query('.top.anchor')
516
+ ], Dialog.prototype, "topAnchor", void 0);
517
+ __decorate([
518
+ query('.bottom.anchor')
519
+ ], Dialog.prototype, "bottomAnchor", void 0);
520
+ __decorate([
521
+ query('.focus-trap')
522
+ ], Dialog.prototype, "firstFocusTrap", void 0);
523
+ __decorate([
524
+ state()
525
+ ], Dialog.prototype, "hasHeadline", void 0);
526
+ __decorate([
527
+ state()
528
+ ], Dialog.prototype, "hasActions", void 0);
529
+ __decorate([
530
+ state()
531
+ ], Dialog.prototype, "hasIcon", void 0);
532
+ function isFocusable(element) {
533
+ // Check if the element is a known built-in focusable element:
534
+ // - <a> and <area> with `href` attributes.
535
+ // - Form controls that are not disabled.
536
+ // - `contenteditable` elements.
537
+ // - Anything with a non-negative `tabindex`.
538
+ const knownFocusableElements = ':is(button,input,select,textarea,object,:is(a,area)[href],[tabindex],[contenteditable=true])';
539
+ const notDisabled = ':not(:disabled,[disabled])';
540
+ const notNegativeTabIndex = ':not([tabindex^="-"])';
541
+ if (element.matches(knownFocusableElements + notDisabled + notNegativeTabIndex)) {
542
+ return true;
543
+ }
544
+ const isCustomElement = element.localName.includes('-');
545
+ if (!isCustomElement) {
546
+ return false;
547
+ }
548
+ // If a custom element does not have a tabindex, it may still be focusable
549
+ // if it delegates focus with a shadow root. We also need to check again if
550
+ // the custom element is a disabled form control.
551
+ if (!element.matches(notDisabled)) {
552
+ return false;
553
+ }
554
+ return element.shadowRoot?.delegatesFocus ?? false;
555
+ }
556
+ //# sourceMappingURL=dialog.js.map