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

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 (334) hide show
  1. package/README.md +7 -7
  2. package/aria/aria.d.ts +43 -0
  3. package/aria/aria.js +56 -0
  4. package/aria/aria.js.map +1 -0
  5. package/aria/delegate.d.ts +37 -0
  6. package/aria/delegate.js +53 -0
  7. package/aria/delegate.js.map +1 -0
  8. package/badge/badge.d.ts +0 -1
  9. package/badge/badge.js +0 -1
  10. package/badge/badge.js.map +1 -1
  11. package/badge/lib/badge.d.ts +8 -7
  12. package/badge/lib/badge.js +5 -6
  13. package/badge/lib/badge.js.map +1 -1
  14. package/button/lib/_elevation.scss +13 -3
  15. package/button/lib/button.d.ts +1 -12
  16. package/button/lib/button.js +29 -60
  17. package/button/lib/button.js.map +1 -1
  18. package/button/lib/shared-elevation-styles.css.js +1 -1
  19. package/button/lib/shared-elevation-styles.css.js.map +1 -1
  20. package/checkbox/lib/checkbox.d.ts +0 -1
  21. package/checkbox/lib/checkbox.js +33 -43
  22. package/checkbox/lib/checkbox.js.map +1 -1
  23. package/chips/_filter-chip.scss +6 -0
  24. package/chips/filter-chip.d.ts +20 -0
  25. package/chips/filter-chip.js +24 -0
  26. package/chips/filter-chip.js.map +1 -0
  27. package/chips/lib/_filter-chip.scss +141 -0
  28. package/chips/lib/_shared.scss +18 -14
  29. package/chips/lib/assist-styles.css.js +1 -1
  30. package/chips/lib/assist-styles.css.js.map +1 -1
  31. package/chips/lib/chip.d.ts +8 -3
  32. package/chips/lib/chip.js +29 -30
  33. package/chips/lib/chip.js.map +1 -1
  34. package/chips/lib/filter-chip.d.ts +21 -0
  35. package/chips/lib/filter-chip.js +47 -0
  36. package/chips/lib/filter-chip.js.map +1 -0
  37. package/chips/lib/filter-styles.css.js +9 -0
  38. package/chips/lib/filter-styles.css.js.map +1 -0
  39. package/{fab/lib/fab-extended-styles.scss → chips/lib/filter-styles.scss} +3 -3
  40. package/chips/lib/shared-styles.css.js +1 -1
  41. package/chips/lib/shared-styles.css.js.map +1 -1
  42. package/chips/lib/suggestion-styles.css.js +1 -1
  43. package/chips/lib/suggestion-styles.css.js.map +1 -1
  44. package/circularprogress/harness.d.ts +1 -0
  45. package/circularprogress/harness.js +4 -0
  46. package/circularprogress/harness.js.map +1 -1
  47. package/circularprogress/lib/circular-progress.d.ts +0 -1
  48. package/circularprogress/lib/circular-progress.js +16 -19
  49. package/circularprogress/lib/circular-progress.js.map +1 -1
  50. package/dialog/lib/_dialog.scss +8 -8
  51. package/dialog/lib/dialog-styles.css.js +1 -1
  52. package/dialog/lib/dialog-styles.css.js.map +1 -1
  53. package/dialog/lib/dialog.js +25 -49
  54. package/dialog/lib/dialog.js.map +1 -1
  55. package/divider/lib/divider.js +4 -7
  56. package/divider/lib/divider.js.map +1 -1
  57. package/elevation/lib/_elevation.scss +5 -7
  58. package/elevation/lib/elevation-styles.css.js +1 -1
  59. package/elevation/lib/elevation-styles.css.js.map +1 -1
  60. package/fab/_fab.scss +1 -0
  61. package/fab/branded-fab.d.ts +53 -0
  62. package/fab/branded-fab.js +56 -0
  63. package/fab/branded-fab.js.map +1 -0
  64. package/fab/fab.d.ts +25 -5
  65. package/fab/fab.js +27 -10
  66. package/fab/fab.js.map +1 -1
  67. package/fab/harness.d.ts +1 -2
  68. package/fab/harness.js +1 -1
  69. package/fab/harness.js.map +1 -1
  70. package/fab/lib/_fab-branded.scss +27 -0
  71. package/fab/lib/_fab.scss +144 -16
  72. package/fab/lib/_shared.scss +155 -130
  73. package/fab/lib/fab-branded-styles.css.js +9 -0
  74. package/fab/lib/fab-branded-styles.css.js.map +1 -0
  75. package/fab/lib/fab-branded-styles.scss +10 -0
  76. package/fab/lib/fab-styles.css.js +1 -1
  77. package/fab/lib/fab-styles.css.js.map +1 -1
  78. package/fab/lib/fab.d.ts +14 -10
  79. package/fab/lib/fab.js +19 -12
  80. package/fab/lib/fab.js.map +1 -1
  81. package/fab/lib/forced-colors-styles.css.d.ts +1 -0
  82. package/fab/lib/forced-colors-styles.css.js +9 -0
  83. package/fab/lib/forced-colors-styles.css.js.map +1 -0
  84. package/fab/lib/forced-colors-styles.scss +26 -0
  85. package/fab/lib/shared-styles.css.d.ts +1 -0
  86. package/fab/lib/shared-styles.css.js +9 -0
  87. package/fab/lib/shared-styles.css.js.map +1 -0
  88. package/fab/lib/{fab-shared-styles.scss → shared-styles.scss} +1 -1
  89. package/fab/lib/{fab-shared.d.ts → shared.d.ts} +24 -16
  90. package/fab/lib/shared.js +137 -0
  91. package/fab/lib/shared.js.map +1 -0
  92. package/field/lib/field.js +14 -27
  93. package/field/lib/field.js.map +1 -1
  94. package/focus/focus-ring.d.ts +0 -1
  95. package/focus/focus-ring.js +0 -1
  96. package/focus/focus-ring.js.map +1 -1
  97. package/focus/lib/focus-ring.js +2 -3
  98. package/focus/lib/focus-ring.js.map +1 -1
  99. package/focus/strong-focus.js +5 -0
  100. package/focus/strong-focus.js.map +1 -1
  101. package/icon/icon.d.ts +0 -1
  102. package/icon/icon.js +0 -1
  103. package/icon/icon.js.map +1 -1
  104. package/icon/lib/_icon.scss +2 -0
  105. package/icon/lib/icon-styles.css.js +1 -1
  106. package/icon/lib/icon-styles.css.js.map +1 -1
  107. package/icon/lib/icon.d.ts +5 -4
  108. package/icon/lib/icon.js +3 -2
  109. package/icon/lib/icon.js.map +1 -1
  110. package/iconbutton/lib/icon-button.d.ts +0 -4
  111. package/iconbutton/lib/icon-button.js +28 -48
  112. package/iconbutton/lib/icon-button.js.map +1 -1
  113. package/linearprogress/_linear-progress.scss +6 -0
  114. package/linearprogress/harness.d.ts +13 -0
  115. package/linearprogress/harness.js +18 -0
  116. package/linearprogress/harness.js.map +1 -0
  117. package/linearprogress/lib/_linear-progress.scss +380 -0
  118. package/linearprogress/lib/linear-progress-styles.css.d.ts +1 -0
  119. package/linearprogress/lib/linear-progress-styles.css.js +9 -0
  120. package/linearprogress/lib/linear-progress-styles.css.js.map +1 -0
  121. package/linearprogress/lib/linear-progress-styles.scss +8 -0
  122. package/linearprogress/lib/linear-progress.d.ts +35 -0
  123. package/linearprogress/lib/linear-progress.js +127 -0
  124. package/linearprogress/lib/linear-progress.js.map +1 -0
  125. package/linearprogress/linear-progress.d.ts +23 -0
  126. package/linearprogress/linear-progress.js +26 -0
  127. package/linearprogress/linear-progress.js.map +1 -0
  128. package/list/lib/_list.scss +6 -49
  129. package/list/lib/list-styles.css.js +1 -1
  130. package/list/lib/list-styles.css.js.map +1 -1
  131. package/list/lib/list.d.ts +1 -3
  132. package/list/lib/list.js +18 -34
  133. package/list/lib/list.js.map +1 -1
  134. package/list/lib/listitem/_list-item.scss +10 -69
  135. package/list/lib/listitem/forced-colors-styles.css.js +1 -1
  136. package/list/lib/listitem/forced-colors-styles.css.js.map +1 -1
  137. package/list/lib/listitem/list-item-styles.css.js +1 -1
  138. package/list/lib/listitem/list-item-styles.css.js.map +1 -1
  139. package/list/lib/listitem/list-item.d.ts +2 -4
  140. package/list/lib/listitem/list-item.js +24 -53
  141. package/list/lib/listitem/list-item.js.map +1 -1
  142. package/list/lib/listitemlink/list-item-link.js +4 -6
  143. package/list/lib/listitemlink/list-item-link.js.map +1 -1
  144. package/menu/lib/_menu.scss +6 -28
  145. package/menu/lib/menu-styles.css.js +1 -1
  146. package/menu/lib/menu-styles.css.js.map +1 -1
  147. package/menu/lib/menu.d.ts +1 -2
  148. package/menu/lib/menu.js +38 -63
  149. package/menu/lib/menu.js.map +1 -1
  150. package/menu/lib/menuitem/_menu-item.scss +13 -32
  151. package/menu/lib/menuitem/menu-item-styles.css.js +1 -1
  152. package/menu/lib/menuitem/menu-item-styles.css.js.map +1 -1
  153. package/menu/lib/menuitem/menu-item.d.ts +1 -1
  154. package/menu/lib/menuitem/menu-item.js +4 -6
  155. package/menu/lib/menuitem/menu-item.js.map +1 -1
  156. package/menu/lib/menuitemlink/menu-item-link.d.ts +0 -2
  157. package/menu/lib/menuitemlink/menu-item-link.js +3 -6
  158. package/menu/lib/menuitemlink/menu-item-link.js.map +1 -1
  159. package/menu/lib/shared.d.ts +6 -2
  160. package/menu/lib/shared.js.map +1 -1
  161. package/menu/lib/submenuitem/sub-menu-item.d.ts +0 -2
  162. package/menu/lib/submenuitem/sub-menu-item.js +7 -15
  163. package/menu/lib/submenuitem/sub-menu-item.js.map +1 -1
  164. package/navigationbar/lib/_navigation-bar.scss +7 -1
  165. package/navigationbar/lib/navigation-bar-styles.css.js +1 -1
  166. package/navigationbar/lib/navigation-bar-styles.css.js.map +1 -1
  167. package/navigationbar/lib/navigation-bar.d.ts +5 -5
  168. package/navigationbar/lib/navigation-bar.js +17 -18
  169. package/navigationbar/lib/navigation-bar.js.map +1 -1
  170. package/navigationbar/navigation-bar.d.ts +0 -1
  171. package/navigationbar/navigation-bar.js +0 -1
  172. package/navigationbar/navigation-bar.js.map +1 -1
  173. package/navigationdrawer/lib/navigation-drawer-modal.d.ts +5 -10
  174. package/navigationdrawer/lib/navigation-drawer-modal.js +19 -41
  175. package/navigationdrawer/lib/navigation-drawer-modal.js.map +1 -1
  176. package/navigationdrawer/lib/navigation-drawer.d.ts +5 -9
  177. package/navigationdrawer/lib/navigation-drawer.js +17 -38
  178. package/navigationdrawer/lib/navigation-drawer.js.map +1 -1
  179. package/navigationdrawer/navigation-drawer-modal.d.ts +0 -1
  180. package/navigationdrawer/navigation-drawer-modal.js +0 -1
  181. package/navigationdrawer/navigation-drawer-modal.js.map +1 -1
  182. package/navigationdrawer/navigation-drawer.d.ts +0 -1
  183. package/navigationdrawer/navigation-drawer.js +0 -1
  184. package/navigationdrawer/navigation-drawer.js.map +1 -1
  185. package/navigationtab/lib/navigation-tab.d.ts +19 -24
  186. package/navigationtab/lib/navigation-tab.js +48 -68
  187. package/navigationtab/lib/navigation-tab.js.map +1 -1
  188. package/navigationtab/navigation-tab.d.ts +0 -1
  189. package/navigationtab/navigation-tab.js +0 -1
  190. package/navigationtab/navigation-tab.js.map +1 -1
  191. package/package.json +1 -1
  192. package/radio/lib/radio.d.ts +0 -1
  193. package/radio/lib/radio.js +30 -37
  194. package/radio/lib/radio.js.map +1 -1
  195. package/ripple/lib/ripple.js +7 -13
  196. package/ripple/lib/ripple.js.map +1 -1
  197. package/segmentedbutton/lib/outlined-segmented-button.d.ts +16 -7
  198. package/segmentedbutton/lib/outlined-segmented-button.js +3 -3
  199. package/segmentedbutton/lib/outlined-segmented-button.js.map +1 -1
  200. package/segmentedbutton/lib/segmented-button.d.ts +27 -33
  201. package/segmentedbutton/lib/segmented-button.js +42 -75
  202. package/segmentedbutton/lib/segmented-button.js.map +1 -1
  203. package/segmentedbutton/outlined-segmented-button.d.ts +0 -1
  204. package/segmentedbutton/outlined-segmented-button.js +0 -1
  205. package/segmentedbutton/outlined-segmented-button.js.map +1 -1
  206. package/segmentedbuttonset/lib/outlined-segmented-button-set.d.ts +6 -4
  207. package/segmentedbuttonset/lib/outlined-segmented-button-set.js +3 -2
  208. package/segmentedbuttonset/lib/outlined-segmented-button-set.js.map +1 -1
  209. package/segmentedbuttonset/lib/segmented-button-set.d.ts +3 -9
  210. package/segmentedbuttonset/lib/segmented-button-set.js +14 -20
  211. package/segmentedbuttonset/lib/segmented-button-set.js.map +1 -1
  212. package/segmentedbuttonset/outlined-segmented-button-set.d.ts +0 -1
  213. package/segmentedbuttonset/outlined-segmented-button-set.js +0 -1
  214. package/segmentedbuttonset/outlined-segmented-button-set.js.map +1 -1
  215. package/select/_filled-select.scss +6 -0
  216. package/select/_outlined-select.scss +6 -0
  217. package/select/filled-select.d.ts +41 -0
  218. package/select/filled-select.js +46 -0
  219. package/select/filled-select.js.map +1 -0
  220. package/select/harness.d.ts +24 -0
  221. package/select/harness.js +53 -0
  222. package/select/harness.js.map +1 -0
  223. package/select/lib/_filled-select.scss +163 -0
  224. package/select/lib/_outlined-select.scss +146 -0
  225. package/select/lib/_shared.scss +48 -0
  226. package/select/lib/filled-forced-colors-styles.css.d.ts +1 -0
  227. package/select/lib/filled-forced-colors-styles.css.js +9 -0
  228. package/select/lib/filled-forced-colors-styles.css.js.map +1 -0
  229. package/select/lib/filled-forced-colors-styles.scss +29 -0
  230. package/select/lib/filled-select-styles.css.d.ts +1 -0
  231. package/select/lib/filled-select-styles.css.js +9 -0
  232. package/select/lib/filled-select-styles.css.js.map +1 -0
  233. package/select/lib/filled-select-styles.scss +10 -0
  234. package/select/lib/filled-select.d.ts +10 -0
  235. package/select/lib/filled-select.js +16 -0
  236. package/select/lib/filled-select.js.map +1 -0
  237. package/select/lib/outlined-forced-colors-styles.css.d.ts +1 -0
  238. package/select/lib/outlined-forced-colors-styles.css.js +9 -0
  239. package/select/lib/outlined-forced-colors-styles.css.js.map +1 -0
  240. package/select/lib/outlined-forced-colors-styles.scss +29 -0
  241. package/select/lib/outlined-select-styles.css.d.ts +1 -0
  242. package/select/lib/outlined-select-styles.css.js +9 -0
  243. package/select/lib/outlined-select-styles.css.js.map +1 -0
  244. package/select/lib/outlined-select-styles.scss +10 -0
  245. package/select/lib/outlined-select.d.ts +10 -0
  246. package/select/lib/outlined-select.js +16 -0
  247. package/select/lib/outlined-select.js.map +1 -0
  248. package/select/lib/select.d.ts +218 -0
  249. package/select/lib/select.js +587 -0
  250. package/select/lib/select.js.map +1 -0
  251. package/select/lib/selectoption/harness.d.ts +11 -0
  252. package/select/lib/selectoption/harness.js +12 -0
  253. package/select/lib/selectoption/harness.js.map +1 -0
  254. package/select/lib/selectoption/select-option.d.ts +30 -0
  255. package/select/lib/selectoption/select-option.js +71 -0
  256. package/select/lib/selectoption/select-option.js.map +1 -0
  257. package/select/lib/shared-styles.css.d.ts +1 -0
  258. package/select/lib/shared-styles.css.js +9 -0
  259. package/select/lib/shared-styles.css.js.map +1 -0
  260. package/select/lib/shared-styles.scss +10 -0
  261. package/select/lib/shared.d.ts +52 -0
  262. package/select/lib/shared.js +41 -0
  263. package/select/lib/shared.js.map +1 -0
  264. package/select/outlined-select.d.ts +41 -0
  265. package/select/outlined-select.js +46 -0
  266. package/select/outlined-select.js.map +1 -0
  267. package/select/select-option.d.ts +44 -0
  268. package/select/select-option.js +51 -0
  269. package/select/select-option.js.map +1 -0
  270. package/slider/harness.d.ts +1 -0
  271. package/slider/harness.js +5 -0
  272. package/slider/harness.js.map +1 -1
  273. package/slider/lib/_slider.scss +146 -164
  274. package/slider/lib/forced-colors-styles.css.js +1 -1
  275. package/slider/lib/forced-colors-styles.css.js.map +1 -1
  276. package/slider/lib/forced-colors-styles.scss +2 -2
  277. package/slider/lib/slider-styles.css.js +1 -1
  278. package/slider/lib/slider-styles.css.js.map +1 -1
  279. package/slider/lib/slider.d.ts +2 -7
  280. package/slider/lib/slider.js +64 -118
  281. package/slider/lib/slider.js.map +1 -1
  282. package/switch/lib/switch.d.ts +0 -2
  283. package/switch/lib/switch.js +32 -54
  284. package/switch/lib/switch.js.map +1 -1
  285. package/textfield/lib/text-field.d.ts +0 -10
  286. package/textfield/lib/text-field.js +45 -115
  287. package/textfield/lib/text-field.js.map +1 -1
  288. package/tokens/_index.scss +3 -0
  289. package/tokens/_md-comp-assist-chip.scss +25 -20
  290. package/tokens/_md-comp-elevation.scss +0 -4
  291. package/tokens/_md-comp-fab-branded.scss +109 -1
  292. package/tokens/_md-comp-fab.scss +290 -0
  293. package/tokens/_md-comp-filled-select.scss +150 -1
  294. package/tokens/_md-comp-filter-chip.scss +103 -93
  295. package/tokens/_md-comp-input-chip.scss +77 -85
  296. package/tokens/_md-comp-linear-progress-indicator.scss +14 -1
  297. package/tokens/_md-comp-list-item.scss +201 -0
  298. package/tokens/_md-comp-list.scss +107 -26
  299. package/tokens/_md-comp-menu-item.scss +76 -0
  300. package/tokens/_md-comp-menu.scss +52 -2
  301. package/tokens/_md-comp-outlined-select.scss +150 -1
  302. package/tokens/_md-comp-slider.scss +13 -1
  303. package/tokens/_md-comp-suggestion-chip.scss +29 -21
  304. package/tokens/_values.scss +5 -2
  305. package/types/aria.d.ts +61 -1
  306. package/actionelement/action-element.d.ts +0 -79
  307. package/actionelement/action-element.js +0 -97
  308. package/actionelement/action-element.js.map +0 -1
  309. package/button/lib/state.d.ts +0 -10
  310. package/button/lib/state.js +0 -7
  311. package/button/lib/state.js.map +0 -1
  312. package/controller/action-controller.d.ts +0 -147
  313. package/controller/action-controller.js +0 -286
  314. package/controller/action-controller.js.map +0 -1
  315. package/decorators/aria-property.d.ts +0 -32
  316. package/decorators/aria-property.js +0 -99
  317. package/decorators/aria-property.js.map +0 -1
  318. package/fab/_fab-extended.scss +0 -6
  319. package/fab/fab-extended.d.ts +0 -23
  320. package/fab/fab-extended.js +0 -29
  321. package/fab/fab-extended.js.map +0 -1
  322. package/fab/lib/_fab-extended.scss +0 -73
  323. package/fab/lib/fab-extended-styles.css.js +0 -9
  324. package/fab/lib/fab-extended-styles.css.js.map +0 -1
  325. package/fab/lib/fab-extended.d.ts +0 -19
  326. package/fab/lib/fab-extended.js +0 -28
  327. package/fab/lib/fab-extended.js.map +0 -1
  328. package/fab/lib/fab-shared-styles.css.js +0 -9
  329. package/fab/lib/fab-shared-styles.css.js.map +0 -1
  330. package/fab/lib/fab-shared.js +0 -121
  331. package/fab/lib/fab-shared.js.map +0 -1
  332. package/slider/lib/_tokens.scss +0 -65
  333. /package/{fab/lib/fab-extended-styles.css.d.ts → chips/lib/filter-styles.css.d.ts} +0 -0
  334. /package/fab/lib/{fab-shared-styles.css.d.ts → fab-branded-styles.css.d.ts} +0 -0
@@ -3,18 +3,17 @@
3
3
  * Copyright 2021 Google LLC
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
- import { __decorate, __metadata } from "tslib";
7
- // tslint:disable:no-new-decorators
6
+ var _a;
7
+ import { __decorate } from "tslib";
8
8
  import '../../focus/focus-ring.js';
9
9
  import '../../ripple/ripple.js';
10
- import { html, LitElement } from 'lit';
10
+ import { html, isServer, LitElement, nothing } from 'lit';
11
11
  import { eventOptions, property, query, queryAsync, state } from 'lit/decorators.js';
12
12
  import { classMap } from 'lit/directives/class-map.js';
13
- import { ifDefined } from 'lit/directives/if-defined.js';
14
13
  import { when } from 'lit/directives/when.js';
14
+ import { requestUpdateOnAriaChange } from '../../aria/delegate.js';
15
15
  import { dispatchActivationClick, isActivationClick } from '../../controller/events.js';
16
16
  import { FormController, getFormValue } from '../../controller/form-controller.js';
17
- import { ariaProperty } from '../../decorators/aria-property.js';
18
17
  import { pointerPress as focusRingPointerPress, shouldShowStrongFocus } from '../../focus/strong-focus.js';
19
18
  import { ripple } from '../../ripple/directive.js';
20
19
  /**
@@ -53,7 +52,6 @@ export class Switch extends LitElement {
53
52
  * overrides the behavior of the `icons` property.
54
53
  */
55
54
  this.showOnlySelectedIcon = false;
56
- this.ariaLabelledBy = '';
57
55
  this.showFocusRing = false;
58
56
  this.showRipple = false;
59
57
  /**
@@ -83,20 +81,20 @@ export class Switch extends LitElement {
83
81
  return html `<md-focus-ring visible></md-focus-ring>`;
84
82
  };
85
83
  this.addController(new FormController(this));
86
- this.addEventListener('click', (event) => {
87
- if (!isActivationClick(event)) {
88
- return;
89
- }
90
- this.button?.focus();
91
- if (this.button != null) {
92
- // this triggers the click behavior, and the ripple
93
- dispatchActivationClick(this.button);
94
- }
95
- });
84
+ if (!isServer) {
85
+ this.addEventListener('click', (event) => {
86
+ if (!isActivationClick(event)) {
87
+ return;
88
+ }
89
+ this.button?.focus();
90
+ if (this.button != null) {
91
+ // this triggers the click behavior, and the ripple
92
+ dispatchActivationClick(this.button);
93
+ }
94
+ });
95
+ }
96
96
  }
97
97
  render() {
98
- const ariaLabelValue = this.ariaLabel ? this.ariaLabel : undefined;
99
- const ariaLabelledByValue = this.ariaLabelledBy ? this.ariaLabelledBy : undefined;
100
98
  // NOTE: buttons must use only [phrasing
101
99
  // content](https://html.spec.whatwg.org/multipage/dom.html#phrasing-content)
102
100
  // children, which includes custom elements, but not `div`s
@@ -106,8 +104,7 @@ export class Switch extends LitElement {
106
104
  class="md3-switch ${classMap(this.getRenderClasses())}"
107
105
  role="switch"
108
106
  aria-checked="${this.selected}"
109
- aria-label="${ifDefined(ariaLabelValue)}"
110
- aria-labelledby="${ifDefined(ariaLabelledByValue)}"
107
+ aria-label=${this.ariaLabel || nothing}
111
108
  ?disabled=${this.disabled}
112
109
  @click=${this.handleClick}
113
110
  @focus="${this.handleFocus}"
@@ -198,65 +195,46 @@ export class Switch extends LitElement {
198
195
  this.showFocusRing = false;
199
196
  }
200
197
  }
198
+ _a = Switch;
199
+ (() => {
200
+ requestUpdateOnAriaChange(_a);
201
+ })();
201
202
  Switch.shadowRootOptions = { mode: 'open', delegatesFocus: true };
202
203
  /**
203
204
  * @nocollapse
204
205
  */
205
206
  Switch.formAssociated = true;
206
207
  __decorate([
207
- property({ type: Boolean, reflect: true }),
208
- __metadata("design:type", Object)
208
+ property({ type: Boolean, reflect: true })
209
209
  ], Switch.prototype, "disabled", void 0);
210
210
  __decorate([
211
- property({ type: Boolean }),
212
- __metadata("design:type", Object)
211
+ property({ type: Boolean })
213
212
  ], Switch.prototype, "selected", void 0);
214
213
  __decorate([
215
- property({ type: Boolean }),
216
- __metadata("design:type", Object)
214
+ property({ type: Boolean })
217
215
  ], Switch.prototype, "icons", void 0);
218
216
  __decorate([
219
- property({ type: Boolean }),
220
- __metadata("design:type", Object)
217
+ property({ type: Boolean })
221
218
  ], Switch.prototype, "showOnlySelectedIcon", void 0);
222
219
  __decorate([
223
- ariaProperty,
224
- property({ type: String, attribute: 'data-aria-label', noAccessor: true }),
225
- __metadata("design:type", String)
226
- ], Switch.prototype, "ariaLabel", void 0);
227
- __decorate([
228
- ariaProperty,
229
- property({ type: String, attribute: 'data-aria-labelledby', noAccessor: true }),
230
- __metadata("design:type", Object)
231
- ], Switch.prototype, "ariaLabelledBy", void 0);
232
- __decorate([
233
- state(),
234
- __metadata("design:type", Object)
220
+ state()
235
221
  ], Switch.prototype, "showFocusRing", void 0);
236
222
  __decorate([
237
- state(),
238
- __metadata("design:type", Object)
223
+ state()
239
224
  ], Switch.prototype, "showRipple", void 0);
240
225
  __decorate([
241
- queryAsync('md-ripple'),
242
- __metadata("design:type", Promise)
226
+ queryAsync('md-ripple')
243
227
  ], Switch.prototype, "ripple", void 0);
244
228
  __decorate([
245
- query('button'),
246
- __metadata("design:type", HTMLButtonElement)
229
+ query('button')
247
230
  ], Switch.prototype, "button", void 0);
248
231
  __decorate([
249
- property({ type: String, reflect: true }),
250
- __metadata("design:type", Object)
232
+ property({ reflect: true })
251
233
  ], Switch.prototype, "name", void 0);
252
234
  __decorate([
253
- property({ type: String }),
254
- __metadata("design:type", Object)
235
+ property()
255
236
  ], Switch.prototype, "value", void 0);
256
237
  __decorate([
257
- eventOptions({ passive: true }),
258
- __metadata("design:type", Function),
259
- __metadata("design:paramtypes", []),
260
- __metadata("design:returntype", void 0)
238
+ eventOptions({ passive: true })
261
239
  ], Switch.prototype, "handlePointerDown", null);
262
240
  //# sourceMappingURL=switch.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"switch.js","sourceRoot":"","sources":["switch.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * @license\n * Copyright 2021 Google LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n\n// tslint:disable:no-new-decorators\n\nimport '../../focus/focus-ring.js';\nimport '../../ripple/ripple.js';\n\nimport {html, LitElement, TemplateResult} from 'lit';\nimport {eventOptions, property, query, queryAsync, state} from 'lit/decorators.js';\nimport {ClassInfo, classMap} from 'lit/directives/class-map.js';\nimport {ifDefined} from 'lit/directives/if-defined.js';\nimport {when} from 'lit/directives/when.js';\n\nimport {dispatchActivationClick, isActivationClick} from '../../controller/events.js';\nimport {FormController, getFormValue} from '../../controller/form-controller.js';\nimport {ariaProperty} from '../../decorators/aria-property.js';\nimport {pointerPress as focusRingPointerPress, shouldShowStrongFocus} from '../../focus/strong-focus.js';\nimport {ripple} from '../../ripple/directive.js';\nimport {MdRipple} from '../../ripple/ripple.js';\n\n/**\n * @fires input {InputEvent} Fired whenever `selected` changes due to user\n * interaction (bubbles and composed).\n * @fires change {Event} Fired whenever `selected` changes due to user\n * interaction (bubbles).\n */\nexport class Switch extends LitElement {\n static override shadowRootOptions:\n ShadowRootInit = {mode: 'open', delegatesFocus: true};\n\n /**\n * @nocollapse\n */\n static formAssociated = true;\n\n /**\n * Disables the switch and makes it non-interactive.\n */\n @property({type: Boolean, reflect: true}) disabled = false;\n\n /**\n * Puts the switch in the selected state and sets the form submission value to\n * the `value` property.\n */\n @property({type: Boolean}) selected = false;\n\n /**\n * Shows both the selected and deselected icons.\n */\n @property({type: Boolean}) icons = false;\n\n /**\n * Shows only the selected icon, and not the deselected icon. If `true`,\n * overrides the behavior of the `icons` property.\n */\n @property({type: Boolean}) showOnlySelectedIcon = false;\n\n @ariaProperty\n @property({type: String, attribute: 'data-aria-label', noAccessor: true})\n override ariaLabel!: string;\n\n @ariaProperty\n @property({type: String, attribute: 'data-aria-labelledby', noAccessor: true})\n ariaLabelledBy = '';\n\n @state() private showFocusRing = false;\n @state() private showRipple = false;\n\n // Ripple\n @queryAsync('md-ripple') private readonly ripple!: Promise<MdRipple|null>;\n\n // Button\n @query('button') private readonly button!: HTMLButtonElement|null;\n\n /**\n * The associated form element with which this element's value will submit.\n */\n get form() {\n return this.closest('form');\n }\n\n /**\n * The HTML name to use in form submission.\n */\n @property({type: String, reflect: true}) name = '';\n\n /**\n * The value associated with this switch on form submission. `null` is\n * submitted when `selected` is `false`.\n */\n @property({type: String}) value = 'on';\n\n [getFormValue]() {\n return this.selected ? this.value : null;\n }\n\n constructor() {\n super();\n this.addController(new FormController(this));\n this.addEventListener('click', (event: MouseEvent) => {\n if (!isActivationClick(event)) {\n return;\n }\n this.button?.focus();\n if (this.button != null) {\n // this triggers the click behavior, and the ripple\n dispatchActivationClick(this.button);\n }\n });\n }\n\n protected override render(): TemplateResult {\n const ariaLabelValue = this.ariaLabel ? this.ariaLabel : undefined;\n const ariaLabelledByValue =\n this.ariaLabelledBy ? this.ariaLabelledBy : undefined;\n // NOTE: buttons must use only [phrasing\n // content](https://html.spec.whatwg.org/multipage/dom.html#phrasing-content)\n // children, which includes custom elements, but not `div`s\n return html`\n <button\n type=\"button\"\n class=\"md3-switch ${classMap(this.getRenderClasses())}\"\n role=\"switch\"\n aria-checked=\"${this.selected}\"\n aria-label=\"${ifDefined(ariaLabelValue)}\"\n aria-labelledby=\"${ifDefined(ariaLabelledByValue)}\"\n ?disabled=${this.disabled}\n @click=${this.handleClick}\n @focus=\"${this.handleFocus}\"\n @blur=\"${this.handleBlur}\"\n @pointerdown=${this.handlePointerDown}\n ${ripple(this.getRipple)}\n >\n ${when(this.showFocusRing, this.renderFocusRing)}\n <span class=\"md3-switch__track\">\n ${this.renderHandle()}\n </span>\n </button>\n `;\n }\n\n private getRenderClasses(): ClassInfo {\n return {\n 'md3-switch--selected': this.selected,\n 'md3-switch--unselected': !this.selected,\n };\n }\n\n private readonly renderRipple = () => {\n return html`\n <span class=\"md3-switch__ripple\">\n <md-ripple\n ?disabled=\"${this.disabled}\"\n unbounded>\n </md-ripple>\n </span>\n `;\n };\n\n private readonly getRipple = () => {\n this.showRipple = true;\n return this.ripple;\n };\n\n private readonly renderFocusRing = () => {\n return html`<md-focus-ring visible></md-focus-ring>`;\n };\n\n private renderHandle(): TemplateResult {\n /** @classMap */\n const classes = {\n 'md3-switch__handle--big': this.icons && !this.showOnlySelectedIcon,\n };\n return html`\n <span class=\"md3-switch__handle-container\">\n ${when(this.showRipple, this.renderRipple)}\n <span class=\"md3-switch__handle ${classMap(classes)}\">\n ${this.shouldShowIcons() ? this.renderIcons() : html``}\n </span>\n ${this.renderTouchTarget()}\n </span>\n `;\n }\n\n private renderIcons(): TemplateResult {\n return html`\n <div class=\"md3-switch__icons\">\n ${this.renderOnIcon()}\n ${this.showOnlySelectedIcon ? html`` : this.renderOffIcon()}\n </div>\n `;\n }\n\n /**\n * https://fonts.google.com/icons?selected=Material%20Symbols%20Outlined%3Acheck%3AFILL%400%3Bwght%40500%3BGRAD%400%3Bopsz%4024\n */\n private renderOnIcon(): TemplateResult {\n return html`\n <svg class=\"md3-switch__icon md3-switch__icon--on\" viewBox=\"0 0 24 24\">\n <path d=\"M9.55 18.2 3.65 12.3 5.275 10.675 9.55 14.95 18.725 5.775 20.35 7.4Z\"/>\n </svg>\n `;\n }\n\n /**\n * https://fonts.google.com/icons?selected=Material%20Symbols%20Outlined%3Aclose%3AFILL%400%3Bwght%40500%3BGRAD%400%3Bopsz%4024\n */\n private renderOffIcon(): TemplateResult {\n return html`\n <svg class=\"md3-switch__icon md3-switch__icon--off\" viewBox=\"0 0 24 24\">\n <path d=\"M6.4 19.2 4.8 17.6 10.4 12 4.8 6.4 6.4 4.8 12 10.4 17.6 4.8 19.2 6.4 13.6 12 19.2 17.6 17.6 19.2 12 13.6Z\"/>\n </svg>\n `;\n }\n\n private renderTouchTarget(): TemplateResult {\n return html`<span class=\"md3-switch__touch\"></span>`;\n }\n\n private shouldShowIcons(): boolean {\n return this.icons || this.showOnlySelectedIcon;\n }\n\n private handleClick() {\n if (this.disabled) {\n return;\n }\n\n this.selected = !this.selected;\n this.dispatchEvent(\n new InputEvent('input', {bubbles: true, composed: true}));\n // Bubbles but does not compose to mimic native browser <input> & <select>\n // Additionally, native change event is not an InputEvent.\n this.dispatchEvent(new Event('change', {bubbles: true}));\n }\n\n private handleFocus() {\n this.showFocusRing = shouldShowStrongFocus();\n }\n\n private handleBlur() {\n this.showFocusRing = false;\n }\n\n @eventOptions({passive: true})\n private handlePointerDown() {\n focusRingPointerPress();\n this.showFocusRing = false;\n }\n}\n"]}
1
+ {"version":3,"file":"switch.js","sourceRoot":"","sources":["switch.ts"],"names":[],"mappings":"AAAA;;;;GAIG;;;AAEH,OAAO,2BAA2B,CAAC;AACnC,OAAO,wBAAwB,CAAC;AAEhC,OAAO,EAAC,IAAI,EAAE,QAAQ,EAAE,UAAU,EAAE,OAAO,EAAiB,MAAM,KAAK,CAAC;AACxE,OAAO,EAAC,YAAY,EAAE,QAAQ,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAC,MAAM,mBAAmB,CAAC;AACnF,OAAO,EAAY,QAAQ,EAAC,MAAM,6BAA6B,CAAC;AAChE,OAAO,EAAC,IAAI,EAAC,MAAM,wBAAwB,CAAC;AAE5C,OAAO,EAAC,yBAAyB,EAAC,MAAM,wBAAwB,CAAC;AACjE,OAAO,EAAC,uBAAuB,EAAE,iBAAiB,EAAC,MAAM,4BAA4B,CAAC;AACtF,OAAO,EAAC,cAAc,EAAE,YAAY,EAAC,MAAM,qCAAqC,CAAC;AACjF,OAAO,EAAC,YAAY,IAAI,qBAAqB,EAAE,qBAAqB,EAAC,MAAM,6BAA6B,CAAC;AACzG,OAAO,EAAC,MAAM,EAAC,MAAM,2BAA2B,CAAC;AAGjD;;;;;GAKG;AACH,MAAM,OAAO,MAAO,SAAQ,UAAU;IA4CpC;;OAEG;IACH,IAAI,IAAI;QACN,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;IAC9B,CAAC;IAaD,CAAC,YAAY,CAAC;QACZ,OAAO,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC;IAC3C,CAAC;IAED;QACE,KAAK,EAAE,CAAC;QAtDV;;WAEG;QACuC,aAAQ,GAAG,KAAK,CAAC;QAE3D;;;WAGG;QACwB,aAAQ,GAAG,KAAK,CAAC;QAE5C;;WAEG;QACwB,UAAK,GAAG,KAAK,CAAC;QAEzC;;;WAGG;QACwB,yBAAoB,GAAG,KAAK,CAAC;QAEvC,kBAAa,GAAG,KAAK,CAAC;QACtB,eAAU,GAAG,KAAK,CAAC;QAepC;;WAEG;QACwB,SAAI,GAAG,EAAE,CAAC;QAErC;;;WAGG;QACS,UAAK,GAAG,IAAI,CAAC;QAwDR,iBAAY,GAAG,GAAG,EAAE;YACnC,OAAO,IAAI,CAAA;;;uBAGQ,IAAI,CAAC,QAAQ;;;;KAI/B,CAAC;QACJ,CAAC,CAAC;QAEe,cAAS,GAAG,GAAG,EAAE;YAChC,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;YACvB,OAAO,IAAI,CAAC,MAAM,CAAC;QACrB,CAAC,CAAC;QAEe,oBAAe,GAAG,GAAG,EAAE;YACtC,OAAO,IAAI,CAAA,yCAAyC,CAAC;QACvD,CAAC,CAAC;QAlEA,IAAI,CAAC,aAAa,CAAC,IAAI,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC;QAC7C,IAAI,CAAC,QAAQ,EAAE;YACb,IAAI,CAAC,gBAAgB,CAAC,OAAO,EAAE,CAAC,KAAiB,EAAE,EAAE;gBACnD,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,EAAE;oBAC7B,OAAO;iBACR;gBACD,IAAI,CAAC,MAAM,EAAE,KAAK,EAAE,CAAC;gBACrB,IAAI,IAAI,CAAC,MAAM,IAAI,IAAI,EAAE;oBACvB,mDAAmD;oBACnD,uBAAuB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;iBACtC;YACH,CAAC,CAAC,CAAC;SACJ;IACH,CAAC;IAEkB,MAAM;QACvB,wCAAwC;QACxC,6EAA6E;QAC7E,2DAA2D;QAC3D,OAAO,IAAI,CAAA;;;4BAGa,QAAQ,CAAC,IAAI,CAAC,gBAAgB,EAAE,CAAC;;wBAErC,IAAI,CAAC,QAAQ;qBACf,IAAkB,CAAC,SAAS,IAAI,OAAO;oBACzC,IAAI,CAAC,QAAQ;iBAChB,IAAI,CAAC,WAAW;kBACf,IAAI,CAAC,WAAW;iBACjB,IAAI,CAAC,UAAU;uBACT,IAAI,CAAC,iBAAiB;UACnC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC;;UAEtB,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,IAAI,CAAC,eAAe,CAAC;;YAE5C,IAAI,CAAC,YAAY,EAAE;;;KAG1B,CAAC;IACJ,CAAC;IAEO,gBAAgB;QACtB,OAAO;YACL,sBAAsB,EAAE,IAAI,CAAC,QAAQ;YACrC,wBAAwB,EAAE,CAAC,IAAI,CAAC,QAAQ;SACzC,CAAC;IACJ,CAAC;IAsBO,YAAY;QAClB,gBAAgB;QAChB,MAAM,OAAO,GAAG;YACd,yBAAyB,EAAE,IAAI,CAAC,KAAK,IAAI,CAAC,IAAI,CAAC,oBAAoB;SACpE,CAAC;QACF,OAAO,IAAI,CAAA;;UAEL,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,YAAY,CAAC;0CACR,QAAQ,CAAC,OAAO,CAAC;YAC/C,IAAI,CAAC,eAAe,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,IAAI,CAAA,EAAE;;UAEtD,IAAI,CAAC,iBAAiB,EAAE;;KAE7B,CAAC;IACJ,CAAC;IAEO,WAAW;QACjB,OAAO,IAAI,CAAA;;UAEL,IAAI,CAAC,YAAY,EAAE;UACnB,IAAI,CAAC,oBAAoB,CAAC,CAAC,CAAC,IAAI,CAAA,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,EAAE;;KAE9D,CAAC;IACJ,CAAC;IAED;;OAEG;IACK,YAAY;QAClB,OAAO,IAAI,CAAA;;;;KAIV,CAAC;IACJ,CAAC;IAED;;OAEG;IACK,aAAa;QACnB,OAAO,IAAI,CAAA;;;;KAIV,CAAC;IACJ,CAAC;IAEO,iBAAiB;QACvB,OAAO,IAAI,CAAA,yCAAyC,CAAC;IACvD,CAAC;IAEO,eAAe;QACrB,OAAO,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,oBAAoB,CAAC;IACjD,CAAC;IAEO,WAAW;QACjB,IAAI,IAAI,CAAC,QAAQ,EAAE;YACjB,OAAO;SACR;QAED,IAAI,CAAC,QAAQ,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC;QAC/B,IAAI,CAAC,aAAa,CACd,IAAI,UAAU,CAAC,OAAO,EAAE,EAAC,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAC,CAAC,CAAC,CAAC;QAC9D,0EAA0E;QAC1E,0DAA0D;QAC1D,IAAI,CAAC,aAAa,CAAC,IAAI,KAAK,CAAC,QAAQ,EAAE,EAAC,OAAO,EAAE,IAAI,EAAC,CAAC,CAAC,CAAC;IAC3D,CAAC;IAEO,WAAW;QACjB,IAAI,CAAC,aAAa,GAAG,qBAAqB,EAAE,CAAC;IAC/C,CAAC;IAEO,UAAU;QAChB,IAAI,CAAC,aAAa,GAAG,KAAK,CAAC;IAC7B,CAAC;IAGO,iBAAiB;QACvB,qBAAqB,EAAE,CAAC;QACxB,IAAI,CAAC,aAAa,GAAG,KAAK,CAAC;IAC7B,CAAC;;;AAvND;IACE,yBAAyB,CAAC,EAAI,CAAC,CAAC;AAClC,CAAC,GAAA,CAAA;AAEe,wBAAiB,GACZ,EAAC,IAAI,EAAE,MAAM,EAAE,cAAc,EAAE,IAAI,EAAC,CAAC;AAE1D;;GAEG;AACI,qBAAc,GAAG,IAAI,CAAC;AAKa;IAAzC,QAAQ,CAAC,EAAC,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAC,CAAC;wCAAkB;AAMhC;IAA1B,QAAQ,CAAC,EAAC,IAAI,EAAE,OAAO,EAAC,CAAC;wCAAkB;AAKjB;IAA1B,QAAQ,CAAC,EAAC,IAAI,EAAE,OAAO,EAAC,CAAC;qCAAe;AAMd;IAA1B,QAAQ,CAAC,EAAC,IAAI,EAAE,OAAO,EAAC,CAAC;oDAA8B;AAE/C;IAAR,KAAK,EAAE;6CAA+B;AAC9B;IAAR,KAAK,EAAE;0CAA4B;AAGX;IAAxB,UAAU,CAAC,WAAW,CAAC;sCAAkD;AAGzD;IAAhB,KAAK,CAAC,QAAQ,CAAC;sCAAkD;AAYvC;IAA1B,QAAQ,CAAC,EAAC,OAAO,EAAE,IAAI,EAAC,CAAC;oCAAW;AAMzB;IAAX,QAAQ,EAAE;qCAAc;AAyJzB;IADC,YAAY,CAAC,EAAC,OAAO,EAAE,IAAI,EAAC,CAAC;+CAI7B","sourcesContent":["/**\n * @license\n * Copyright 2021 Google LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport '../../focus/focus-ring.js';\nimport '../../ripple/ripple.js';\n\nimport {html, isServer, LitElement, nothing, TemplateResult} from 'lit';\nimport {eventOptions, property, query, queryAsync, state} from 'lit/decorators.js';\nimport {ClassInfo, classMap} from 'lit/directives/class-map.js';\nimport {when} from 'lit/directives/when.js';\n\nimport {requestUpdateOnAriaChange} from '../../aria/delegate.js';\nimport {dispatchActivationClick, isActivationClick} from '../../controller/events.js';\nimport {FormController, getFormValue} from '../../controller/form-controller.js';\nimport {pointerPress as focusRingPointerPress, shouldShowStrongFocus} from '../../focus/strong-focus.js';\nimport {ripple} from '../../ripple/directive.js';\nimport {MdRipple} from '../../ripple/ripple.js';\n\n/**\n * @fires input {InputEvent} Fired whenever `selected` changes due to user\n * interaction (bubbles and composed).\n * @fires change {Event} Fired whenever `selected` changes due to user\n * interaction (bubbles).\n */\nexport class Switch extends LitElement {\n static {\n requestUpdateOnAriaChange(this);\n }\n\n static override shadowRootOptions:\n ShadowRootInit = {mode: 'open', delegatesFocus: true};\n\n /**\n * @nocollapse\n */\n static formAssociated = true;\n\n /**\n * Disables the switch and makes it non-interactive.\n */\n @property({type: Boolean, reflect: true}) disabled = false;\n\n /**\n * Puts the switch in the selected state and sets the form submission value to\n * the `value` property.\n */\n @property({type: Boolean}) selected = false;\n\n /**\n * Shows both the selected and deselected icons.\n */\n @property({type: Boolean}) icons = false;\n\n /**\n * Shows only the selected icon, and not the deselected icon. If `true`,\n * overrides the behavior of the `icons` property.\n */\n @property({type: Boolean}) showOnlySelectedIcon = false;\n\n @state() private showFocusRing = false;\n @state() private showRipple = false;\n\n // Ripple\n @queryAsync('md-ripple') private readonly ripple!: Promise<MdRipple|null>;\n\n // Button\n @query('button') private readonly button!: HTMLButtonElement|null;\n\n /**\n * The associated form element with which this element's value will submit.\n */\n get form() {\n return this.closest('form');\n }\n\n /**\n * The HTML name to use in form submission.\n */\n @property({reflect: true}) name = '';\n\n /**\n * The value associated with this switch on form submission. `null` is\n * submitted when `selected` is `false`.\n */\n @property() value = 'on';\n\n [getFormValue]() {\n return this.selected ? this.value : null;\n }\n\n constructor() {\n super();\n this.addController(new FormController(this));\n if (!isServer) {\n this.addEventListener('click', (event: MouseEvent) => {\n if (!isActivationClick(event)) {\n return;\n }\n this.button?.focus();\n if (this.button != null) {\n // this triggers the click behavior, and the ripple\n dispatchActivationClick(this.button);\n }\n });\n }\n }\n\n protected override render(): TemplateResult {\n // NOTE: buttons must use only [phrasing\n // content](https://html.spec.whatwg.org/multipage/dom.html#phrasing-content)\n // children, which includes custom elements, but not `div`s\n return html`\n <button\n type=\"button\"\n class=\"md3-switch ${classMap(this.getRenderClasses())}\"\n role=\"switch\"\n aria-checked=\"${this.selected}\"\n aria-label=${(this as ARIAMixin).ariaLabel || nothing}\n ?disabled=${this.disabled}\n @click=${this.handleClick}\n @focus=\"${this.handleFocus}\"\n @blur=\"${this.handleBlur}\"\n @pointerdown=${this.handlePointerDown}\n ${ripple(this.getRipple)}\n >\n ${when(this.showFocusRing, this.renderFocusRing)}\n <span class=\"md3-switch__track\">\n ${this.renderHandle()}\n </span>\n </button>\n `;\n }\n\n private getRenderClasses(): ClassInfo {\n return {\n 'md3-switch--selected': this.selected,\n 'md3-switch--unselected': !this.selected,\n };\n }\n\n private readonly renderRipple = () => {\n return html`\n <span class=\"md3-switch__ripple\">\n <md-ripple\n ?disabled=\"${this.disabled}\"\n unbounded>\n </md-ripple>\n </span>\n `;\n };\n\n private readonly getRipple = () => {\n this.showRipple = true;\n return this.ripple;\n };\n\n private readonly renderFocusRing = () => {\n return html`<md-focus-ring visible></md-focus-ring>`;\n };\n\n private renderHandle(): TemplateResult {\n /** @classMap */\n const classes = {\n 'md3-switch__handle--big': this.icons && !this.showOnlySelectedIcon,\n };\n return html`\n <span class=\"md3-switch__handle-container\">\n ${when(this.showRipple, this.renderRipple)}\n <span class=\"md3-switch__handle ${classMap(classes)}\">\n ${this.shouldShowIcons() ? this.renderIcons() : html``}\n </span>\n ${this.renderTouchTarget()}\n </span>\n `;\n }\n\n private renderIcons(): TemplateResult {\n return html`\n <div class=\"md3-switch__icons\">\n ${this.renderOnIcon()}\n ${this.showOnlySelectedIcon ? html`` : this.renderOffIcon()}\n </div>\n `;\n }\n\n /**\n * https://fonts.google.com/icons?selected=Material%20Symbols%20Outlined%3Acheck%3AFILL%400%3Bwght%40500%3BGRAD%400%3Bopsz%4024\n */\n private renderOnIcon(): TemplateResult {\n return html`\n <svg class=\"md3-switch__icon md3-switch__icon--on\" viewBox=\"0 0 24 24\">\n <path d=\"M9.55 18.2 3.65 12.3 5.275 10.675 9.55 14.95 18.725 5.775 20.35 7.4Z\"/>\n </svg>\n `;\n }\n\n /**\n * https://fonts.google.com/icons?selected=Material%20Symbols%20Outlined%3Aclose%3AFILL%400%3Bwght%40500%3BGRAD%400%3Bopsz%4024\n */\n private renderOffIcon(): TemplateResult {\n return html`\n <svg class=\"md3-switch__icon md3-switch__icon--off\" viewBox=\"0 0 24 24\">\n <path d=\"M6.4 19.2 4.8 17.6 10.4 12 4.8 6.4 6.4 4.8 12 10.4 17.6 4.8 19.2 6.4 13.6 12 19.2 17.6 17.6 19.2 12 13.6Z\"/>\n </svg>\n `;\n }\n\n private renderTouchTarget(): TemplateResult {\n return html`<span class=\"md3-switch__touch\"></span>`;\n }\n\n private shouldShowIcons(): boolean {\n return this.icons || this.showOnlySelectedIcon;\n }\n\n private handleClick() {\n if (this.disabled) {\n return;\n }\n\n this.selected = !this.selected;\n this.dispatchEvent(\n new InputEvent('input', {bubbles: true, composed: true}));\n // Bubbles but does not compose to mimic native browser <input> & <select>\n // Additionally, native change event is not an InputEvent.\n this.dispatchEvent(new Event('change', {bubbles: true}));\n }\n\n private handleFocus() {\n this.showFocusRing = shouldShowStrongFocus();\n }\n\n private handleBlur() {\n this.showFocusRing = false;\n }\n\n @eventOptions({passive: true})\n private handlePointerDown() {\n focusRingPointerPress();\n this.showFocusRing = false;\n }\n}\n"]}
@@ -6,7 +6,6 @@
6
6
  import { LitElement, PropertyValues } from 'lit';
7
7
  import { StaticValue } from 'lit/static-html.js';
8
8
  import { getFormValue } from '../../controller/form-controller.js';
9
- import { ARIAAutoComplete, ARIAExpanded, ARIARole } from '../../types/aria.js';
10
9
  /**
11
10
  * Input types that are compatible with the text field.
12
11
  */
@@ -82,15 +81,6 @@ export declare abstract class TextField extends LitElement {
82
81
  * LTR notation for fractions.
83
82
  */
84
83
  textDirection: string;
85
- ariaAutoComplete: ARIAAutoComplete | null;
86
- ariaControls: string | null;
87
- ariaActiveDescendant: string | null;
88
- ariaExpanded: ARIAExpanded | null;
89
- /**
90
- * The `aria-label` of the text field's input.
91
- */
92
- ariaLabel: string;
93
- role: ARIARole | null;
94
84
  get form(): HTMLFormElement;
95
85
  name: string;
96
86
  [getFormValue](): string;
@@ -3,17 +3,18 @@
3
3
  * Copyright 2021 Google LLC
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
- import { __decorate, __metadata } from "tslib";
7
- import { html, LitElement, nothing } from 'lit';
6
+ var _a;
7
+ import { __decorate } from "tslib";
8
+ import { html, isServer, LitElement, nothing } from 'lit';
8
9
  import { property, query, queryAssignedElements, state } from 'lit/decorators.js';
9
10
  import { classMap } from 'lit/directives/class-map.js';
10
11
  import { live } from 'lit/directives/live.js';
11
12
  import { styleMap } from 'lit/directives/style-map.js';
12
13
  import { html as staticHtml } from 'lit/static-html.js';
14
+ import { requestUpdateOnAriaChange } from '../../aria/delegate.js';
13
15
  import { redispatchEvent } from '../../controller/events.js';
14
16
  import { FormController, getFormValue } from '../../controller/form-controller.js';
15
17
  import { stringConverter } from '../../controller/string-converter.js';
16
- import { ariaProperty } from '../../decorators/aria-property.js';
17
18
  /**
18
19
  * A text field component.
19
20
  */
@@ -161,12 +162,6 @@ export class TextField extends LitElement {
161
162
  * LTR notation for fractions.
162
163
  */
163
164
  this.textDirection = '';
164
- // ARIA
165
- this.ariaAutoComplete = null;
166
- this.ariaControls = null;
167
- this.ariaActiveDescendant = null;
168
- this.ariaExpanded = null;
169
- this.role = null;
170
165
  this.name = '';
171
166
  // <input> properties
172
167
  /**
@@ -253,9 +248,11 @@ export class TextField extends LitElement {
253
248
  */
254
249
  this.nativeErrorText = '';
255
250
  this.addController(new FormController(this));
256
- this.addEventListener('click', this.focus);
257
- this.addEventListener('focusin', this.handleFocusin);
258
- this.addEventListener('focusout', this.handleFocusout);
251
+ if (!isServer) {
252
+ this.addEventListener('click', this.focus);
253
+ this.addEventListener('focusin', this.handleFocusin);
254
+ this.addEventListener('focusout', this.handleFocusout);
255
+ }
259
256
  }
260
257
  /**
261
258
  * Checks the text field's native validation and returns whether or not the
@@ -478,9 +475,7 @@ export class TextField extends LitElement {
478
475
  // fixed
479
476
  return html `<input
480
477
  style=${styleMap(style)}
481
- aria-activedescendant=${this.ariaActiveDescendant || nothing}
482
478
  aria-autocomplete=${this.ariaAutoComplete || nothing}
483
- aria-controls=${this.ariaControls || nothing}
484
479
  aria-describedby=${this.getAriaDescribedBy() || nothing}
485
480
  aria-expanded=${this.ariaExpanded || nothing}
486
481
  aria-invalid=${this.hasError}
@@ -492,7 +487,6 @@ export class TextField extends LitElement {
492
487
  minlength=${this.minLength > -1 ? this.minLength : nothing}
493
488
  pattern=${this.pattern || nothing}
494
489
  placeholder=${this.placeholder || nothing}
495
- role=${this.role || nothing}
496
490
  ?readonly=${this.readOnly}
497
491
  ?required=${this.required}
498
492
  step=${(this.step || nothing)}
@@ -622,169 +616,105 @@ export class TextField extends LitElement {
622
616
  this.hasTrailingIcon = this.trailingIcons.length > 0;
623
617
  }
624
618
  }
619
+ _a = TextField;
620
+ (() => {
621
+ requestUpdateOnAriaChange(_a);
622
+ })();
625
623
  TextField.shadowRootOptions = { ...LitElement.shadowRootOptions, delegatesFocus: true };
626
624
  __decorate([
627
- property({ type: Boolean, reflect: true }),
628
- __metadata("design:type", Object)
625
+ property({ type: Boolean, reflect: true })
629
626
  ], TextField.prototype, "disabled", void 0);
630
627
  __decorate([
631
- property({ type: Boolean, reflect: true }),
632
- __metadata("design:type", Object)
628
+ property({ type: Boolean, reflect: true })
633
629
  ], TextField.prototype, "error", void 0);
634
630
  __decorate([
635
- property({ type: String }),
636
- __metadata("design:type", Object)
631
+ property()
637
632
  ], TextField.prototype, "errorText", void 0);
638
633
  __decorate([
639
- property({ type: String }),
640
- __metadata("design:type", String)
634
+ property()
641
635
  ], TextField.prototype, "label", void 0);
642
636
  __decorate([
643
- property({ type: Boolean, reflect: true }),
644
- __metadata("design:type", Object)
637
+ property({ type: Boolean, reflect: true })
645
638
  ], TextField.prototype, "required", void 0);
646
639
  __decorate([
647
- property({ type: String }),
648
- __metadata("design:type", Object)
640
+ property()
649
641
  ], TextField.prototype, "value", void 0);
650
642
  __decorate([
651
- property({ type: String }),
652
- __metadata("design:type", Object)
643
+ property()
653
644
  ], TextField.prototype, "defaultValue", void 0);
654
645
  __decorate([
655
- property({ type: String }),
656
- __metadata("design:type", Object)
646
+ property()
657
647
  ], TextField.prototype, "prefixText", void 0);
658
648
  __decorate([
659
- property({ type: String }),
660
- __metadata("design:type", Object)
649
+ property()
661
650
  ], TextField.prototype, "suffixText", void 0);
662
651
  __decorate([
663
- property({ type: Boolean }),
664
- __metadata("design:type", Object)
652
+ property({ type: Boolean })
665
653
  ], TextField.prototype, "hasLeadingIcon", void 0);
666
654
  __decorate([
667
- property({ type: Boolean }),
668
- __metadata("design:type", Object)
655
+ property({ type: Boolean })
669
656
  ], TextField.prototype, "hasTrailingIcon", void 0);
670
657
  __decorate([
671
- property({ type: String }),
672
- __metadata("design:type", Object)
658
+ property()
673
659
  ], TextField.prototype, "supportingText", void 0);
674
660
  __decorate([
675
- property({ type: String }),
676
- __metadata("design:type", Object)
661
+ property()
677
662
  ], TextField.prototype, "textDirection", void 0);
678
663
  __decorate([
679
- property({ type: String, attribute: 'data-aria-autocomplete', noAccessor: true }),
680
- ariaProperty // tslint:disable-line:no-new-decorators
681
- ,
682
- __metadata("design:type", String)
683
- ], TextField.prototype, "ariaAutoComplete", void 0);
684
- __decorate([
685
- property({ type: String, attribute: 'data-aria-controls', noAccessor: true }),
686
- ariaProperty // tslint:disable-line:no-new-decorators
687
- ,
688
- __metadata("design:type", String)
689
- ], TextField.prototype, "ariaControls", void 0);
690
- __decorate([
691
- property({ type: String, attribute: 'data-aria-activedescendant', noAccessor: true }),
692
- ariaProperty // tslint:disable-line:no-new-decorators
693
- ,
694
- __metadata("design:type", String)
695
- ], TextField.prototype, "ariaActiveDescendant", void 0);
696
- __decorate([
697
- property({ type: String, attribute: 'data-aria-expanded', noAccessor: true }),
698
- ariaProperty // tslint:disable-line:no-new-decorators
699
- ,
700
- __metadata("design:type", String)
701
- ], TextField.prototype, "ariaExpanded", void 0);
702
- __decorate([
703
- property({ type: String, attribute: 'data-aria-label', noAccessor: true }),
704
- ariaProperty // tslint:disable-line:no-new-decorators
705
- ,
706
- __metadata("design:type", String)
707
- ], TextField.prototype, "ariaLabel", void 0);
708
- __decorate([
709
- property({ type: String, attribute: 'data-role', noAccessor: true }),
710
- ariaProperty // tslint:disable-line:no-new-decorators
711
- ,
712
- __metadata("design:type", String)
713
- ], TextField.prototype, "role", void 0);
714
- __decorate([
715
- property({ type: String, reflect: true, converter: stringConverter }),
716
- __metadata("design:type", Object)
664
+ property({ reflect: true, converter: stringConverter })
717
665
  ], TextField.prototype, "name", void 0);
718
666
  __decorate([
719
- property({ type: String }),
720
- __metadata("design:type", Object)
667
+ property()
721
668
  ], TextField.prototype, "max", void 0);
722
669
  __decorate([
723
- property({ type: Number }),
724
- __metadata("design:type", Object)
670
+ property({ type: Number })
725
671
  ], TextField.prototype, "maxLength", void 0);
726
672
  __decorate([
727
- property({ type: String }),
728
- __metadata("design:type", Object)
673
+ property()
729
674
  ], TextField.prototype, "min", void 0);
730
675
  __decorate([
731
- property({ type: Number }),
732
- __metadata("design:type", Object)
676
+ property({ type: Number })
733
677
  ], TextField.prototype, "minLength", void 0);
734
678
  __decorate([
735
- property({ type: String }),
736
- __metadata("design:type", Object)
679
+ property()
737
680
  ], TextField.prototype, "pattern", void 0);
738
681
  __decorate([
739
- property({ type: String, reflect: true, converter: stringConverter }),
740
- __metadata("design:type", Object)
682
+ property({ reflect: true, converter: stringConverter })
741
683
  ], TextField.prototype, "placeholder", void 0);
742
684
  __decorate([
743
- property({ type: Boolean, reflect: true }),
744
- __metadata("design:type", Object)
685
+ property({ type: Boolean, reflect: true })
745
686
  ], TextField.prototype, "readOnly", void 0);
746
687
  __decorate([
747
- property({ type: String }),
748
- __metadata("design:type", Object)
688
+ property()
749
689
  ], TextField.prototype, "step", void 0);
750
690
  __decorate([
751
- property({ type: String, reflect: true }),
752
- __metadata("design:type", String)
691
+ property({ reflect: true })
753
692
  ], TextField.prototype, "type", void 0);
754
693
  __decorate([
755
- state(),
756
- __metadata("design:type", Object)
694
+ state()
757
695
  ], TextField.prototype, "dirty", void 0);
758
696
  __decorate([
759
- state(),
760
- __metadata("design:type", Object)
697
+ state()
761
698
  ], TextField.prototype, "focused", void 0);
762
699
  __decorate([
763
- state(),
764
- __metadata("design:type", Object)
700
+ state()
765
701
  ], TextField.prototype, "refreshErrorAlert", void 0);
766
702
  __decorate([
767
- state(),
768
- __metadata("design:type", Object)
703
+ state()
769
704
  ], TextField.prototype, "valueHasChanged", void 0);
770
705
  __decorate([
771
- state(),
772
- __metadata("design:type", Object)
706
+ state()
773
707
  ], TextField.prototype, "nativeError", void 0);
774
708
  __decorate([
775
- state(),
776
- __metadata("design:type", Object)
709
+ state()
777
710
  ], TextField.prototype, "nativeErrorText", void 0);
778
711
  __decorate([
779
- query('input'),
780
- __metadata("design:type", HTMLInputElement)
712
+ query('input')
781
713
  ], TextField.prototype, "input", void 0);
782
714
  __decorate([
783
- queryAssignedElements({ slot: 'leadingicon' }),
784
- __metadata("design:type", Array)
715
+ queryAssignedElements({ slot: 'leadingicon' })
785
716
  ], TextField.prototype, "leadingIcons", void 0);
786
717
  __decorate([
787
- queryAssignedElements({ slot: 'trailingicon' }),
788
- __metadata("design:type", Array)
718
+ queryAssignedElements({ slot: 'trailingicon' })
789
719
  ], TextField.prototype, "trailingIcons", void 0);
790
720
  //# sourceMappingURL=text-field.js.map