@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
@@ -4,18 +4,14 @@
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
6
  import '../../elevation/elevation.js';
7
- import { LitElement, PropertyValues, TemplateResult } from 'lit';
8
- /** @soyCompatible */
7
+ import { LitElement, PropertyValues } from 'lit';
8
+ /**
9
+ * TODO(b/265346501): add docs
10
+ */
9
11
  export declare class NavigationDrawer extends LitElement {
10
- ariaDescribedBy: string | undefined;
11
- ariaLabel: string;
12
- ariaModal: 'true' | 'false';
13
- ariaLabelledBy: string | undefined;
14
12
  opened: boolean;
15
13
  pivot: 'start' | 'end';
16
- /** @soyTemplate */
17
- render(): TemplateResult;
18
- /** @soyTemplate classMap */
14
+ render(): import("lit-html").TemplateResult<1>;
19
15
  protected getRenderClasses(): import("lit-html/directive.js").DirectiveResult<typeof import("lit-html/directives/class-map.js").ClassMapDirective>;
20
16
  protected updated(changedProperties: PropertyValues<NavigationDrawer>): void;
21
17
  }
@@ -3,34 +3,33 @@
3
3
  * Copyright 2021 Google LLC
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
- import { __decorate, __metadata } from "tslib";
6
+ var _a;
7
+ import { __decorate } from "tslib";
7
8
  import '../../elevation/elevation.js';
8
- import { html, LitElement } from 'lit';
9
+ import { html, LitElement, nothing } from 'lit';
9
10
  import { property } from 'lit/decorators.js';
10
11
  import { classMap } from 'lit/directives/class-map.js';
11
- import { ifDefined } from 'lit/directives/if-defined.js';
12
- import { ariaProperty } from '../../decorators/aria-property.js';
13
- /** @soyCompatible */
12
+ import { requestUpdateOnAriaChange } from '../../aria/delegate.js';
13
+ /**
14
+ * TODO(b/265346501): add docs
15
+ */
14
16
  export class NavigationDrawer extends LitElement {
15
17
  constructor() {
16
18
  super(...arguments);
17
- // tslint:disable-next-line:no-new-decorators
18
- this.ariaModal = 'false';
19
19
  this.opened = false;
20
20
  this.pivot = 'end';
21
21
  }
22
- /** @soyTemplate */
23
22
  render() {
24
23
  const ariaExpanded = this.opened ? 'true' : 'false';
25
24
  const ariaHidden = !this.opened ? 'true' : 'false';
25
+ // Needed for closure conformance
26
+ const { ariaLabel, ariaModal } = this;
26
27
  return html `
27
28
  <div
28
- aria-describedby="${ifDefined(this.ariaDescribedBy)}"
29
29
  aria-expanded="${ariaExpanded}"
30
30
  aria-hidden="${ariaHidden}"
31
- aria-label="${ifDefined(this.ariaLabel)}"
32
- aria-labelledby="${ifDefined(this.ariaLabelledBy)}"
33
- aria-modal="${this.ariaModal}"
31
+ aria-label=${ariaLabel || nothing}
32
+ aria-modal="${ariaModal || nothing}"
34
33
  class="md3-navigation-drawer ${this.getRenderClasses()}"
35
34
  role="dialog">
36
35
  <md-elevation></md-elevation>
@@ -40,7 +39,6 @@ export class NavigationDrawer extends LitElement {
40
39
  </div>
41
40
  `;
42
41
  }
43
- /** @soyTemplate classMap */
44
42
  getRenderClasses() {
45
43
  return classMap({
46
44
  'md3-navigation-drawer--opened': this.opened,
@@ -55,33 +53,14 @@ export class NavigationDrawer extends LitElement {
55
53
  }
56
54
  }
57
55
  }
56
+ _a = NavigationDrawer;
57
+ (() => {
58
+ requestUpdateOnAriaChange(_a);
59
+ })();
58
60
  __decorate([
59
- ariaProperty,
60
- property({ type: String, attribute: 'data-aria-describedby', noAccessor: true }),
61
- __metadata("design:type", String)
62
- ], NavigationDrawer.prototype, "ariaDescribedBy", void 0);
63
- __decorate([
64
- ariaProperty,
65
- property({ type: String, attribute: 'data-aria-label', noAccessor: true }),
66
- __metadata("design:type", String)
67
- ], NavigationDrawer.prototype, "ariaLabel", void 0);
68
- __decorate([
69
- ariaProperty,
70
- property({ attribute: 'data-aria-modal', type: String, noAccessor: true }),
71
- __metadata("design:type", String)
72
- ], NavigationDrawer.prototype, "ariaModal", void 0);
73
- __decorate([
74
- ariaProperty,
75
- property({ type: String, attribute: 'data-aria-labelledby', noAccessor: true }),
76
- __metadata("design:type", String)
77
- ], NavigationDrawer.prototype, "ariaLabelledBy", void 0);
78
- __decorate([
79
- property({ type: Boolean }) // tslint:disable-next-line:no-new-decorators
80
- ,
81
- __metadata("design:type", Object)
61
+ property({ type: Boolean })
82
62
  ], NavigationDrawer.prototype, "opened", void 0);
83
63
  __decorate([
84
- property({ type: String }),
85
- __metadata("design:type", String)
64
+ property()
86
65
  ], NavigationDrawer.prototype, "pivot", void 0);
87
66
  //# sourceMappingURL=navigation-drawer.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"navigation-drawer.js","sourceRoot":"","sources":["navigation-drawer.ts"],"names":[],"mappings":"AAAA;;;;GAIG;;AAEH,OAAO,8BAA8B,CAAC;AAEtC,OAAO,EAAC,IAAI,EAAE,UAAU,EAAiC,MAAM,KAAK,CAAC;AACrE,OAAO,EAAC,QAAQ,EAAC,MAAM,mBAAmB,CAAC;AAC3C,OAAO,EAAC,QAAQ,EAAC,MAAM,6BAA6B,CAAC;AACrD,OAAO,EAAC,SAAS,EAAC,MAAM,8BAA8B,CAAC;AAEvD,OAAO,EAAC,YAAY,EAAC,MAAM,mCAAmC,CAAC;AAE/D,qBAAqB;AACrB,MAAM,OAAO,gBAAiB,SAAQ,UAAU;IAAhD;;QAaE,6CAA6C;QAGpC,cAAS,GAAmB,OAAO,CAAC;QAQ7C,WAAM,GAAG,KAAK,CAAC;QACW,UAAK,GAAkB,KAAK,CAAC;IA2CzD,CAAC;IAzCC,mBAAmB;IACV,MAAM;QACb,MAAM,YAAY,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC;QACpD,MAAM,UAAU,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC;QAEnD,OAAO,IAAI,CAAA;;4BAEa,SAAS,CAAC,IAAI,CAAC,eAAe,CAAC;yBAClC,YAAY;uBACd,UAAU;sBACX,SAAS,CAAC,IAAI,CAAC,SAAS,CAAC;2BACpB,SAAS,CAAC,IAAI,CAAC,cAAc,CAAC;sBACnC,IAAI,CAAC,SAAS;uCACG,IAAI,CAAC,gBAAgB,EAAE;;;;;;;KAOzD,CAAC;IACJ,CAAC;IAED,4BAA4B;IAClB,gBAAgB;QACxB,OAAO,QAAQ,CAAC;YACd,+BAA+B,EAAE,IAAI,CAAC,MAAM;YAC5C,uCAAuC,EAAE,IAAI,CAAC,KAAK,KAAK,OAAO;SAChE,CAAC,CAAC;IACL,CAAC;IAEkB,OAAO,CAAC,iBACoC;QAC7D,IAAI,iBAAiB,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE;YACnC,UAAU,CAAC,GAAG,EAAE;gBACd,IAAI,CAAC,aAAa,CAAC,IAAI,WAAW,CAC9B,2BAA2B,EAC3B,EAAC,MAAM,EAAE,EAAC,MAAM,EAAE,IAAI,CAAC,MAAM,EAAC,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAC,CAAC,CAAC,CAAC;YACvE,CAAC,EAAE,GAAG,CAAC,CAAC;SACT;IACH,CAAC;CACF;AAjEC;IAAC,YAAY;IACZ,QAAQ,CACL,EAAC,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,uBAAuB,EAAE,UAAU,EAAE,IAAI,EAAC,CAAC;;yDACvC;AAGlC;IAAC,YAAY;IACZ,QAAQ,CAAC,EAAC,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,iBAAiB,EAAE,UAAU,EAAE,IAAI,EAAC,CAAC;;mDAC7C;AAG5B;IAAC,YAAY;IACZ,QAAQ,CAAC,EAAC,SAAS,EAAE,iBAAiB,EAAE,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE,IAAI,EAAC,CAAC;;mDAC5B;AAG7C;IAAC,YAAY;IACZ,QAAQ,CAAC,EAAC,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,sBAAsB,EAAE,UAAU,EAAE,IAAI,EAAC,CAAC;;wDAC7C;AAEjC;IAAC,QAAQ,CAAC,EAAC,IAAI,EAAE,OAAO,EAAC,CAAC,CAAE,6CAA6C;;;gDAC1D;AACf;IAAC,QAAQ,CAAC,EAAC,IAAI,EAAE,MAAM,EAAC,CAAC;;+CAA8B","sourcesContent":["/**\n * @license\n * Copyright 2021 Google LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport '../../elevation/elevation.js';\n\nimport {html, LitElement, PropertyValues, TemplateResult} from 'lit';\nimport {property} from 'lit/decorators.js';\nimport {classMap} from 'lit/directives/class-map.js';\nimport {ifDefined} from 'lit/directives/if-defined.js';\n\nimport {ariaProperty} from '../../decorators/aria-property.js';\n\n/** @soyCompatible */\nexport class NavigationDrawer extends LitElement {\n /* aria properties */\n // tslint:disable-next-line:no-new-decorators\n @ariaProperty\n @property(\n {type: String, attribute: 'data-aria-describedby', noAccessor: true})\n ariaDescribedBy: string|undefined;\n\n // tslint:disable-next-line:no-new-decorators\n @ariaProperty\n @property({type: String, attribute: 'data-aria-label', noAccessor: true})\n override ariaLabel!: string;\n\n // tslint:disable-next-line:no-new-decorators\n @ariaProperty\n @property({attribute: 'data-aria-modal', type: String, noAccessor: true})\n override ariaModal: 'true'|'false' = 'false';\n\n // tslint:disable-next-line:no-new-decorators\n @ariaProperty\n @property({type: String, attribute: 'data-aria-labelledby', noAccessor: true})\n ariaLabelledBy: string|undefined;\n\n @property({type: Boolean}) // tslint:disable-next-line:no-new-decorators\n opened = false;\n @property({type: String}) pivot: 'start'|'end' = 'end';\n\n /** @soyTemplate */\n override render(): TemplateResult {\n const ariaExpanded = this.opened ? 'true' : 'false';\n const ariaHidden = !this.opened ? 'true' : 'false';\n\n return html`\n <div\n aria-describedby=\"${ifDefined(this.ariaDescribedBy)}\"\n aria-expanded=\"${ariaExpanded}\"\n aria-hidden=\"${ariaHidden}\"\n aria-label=\"${ifDefined(this.ariaLabel)}\"\n aria-labelledby=\"${ifDefined(this.ariaLabelledBy)}\"\n aria-modal=\"${this.ariaModal}\"\n class=\"md3-navigation-drawer ${this.getRenderClasses()}\"\n role=\"dialog\">\n <md-elevation></md-elevation>\n <div class=\"md3-navigation-drawer__slot-content\">\n <slot></slot>\n </div>\n </div>\n `;\n }\n\n /** @soyTemplate classMap */\n protected getRenderClasses() {\n return classMap({\n 'md3-navigation-drawer--opened': this.opened,\n 'md3-navigation-drawer--pivot-at-start': this.pivot === 'start',\n });\n }\n\n protected override updated(changedProperties:\n PropertyValues<NavigationDrawer>) {\n if (changedProperties.has('opened')) {\n setTimeout(() => {\n this.dispatchEvent(new CustomEvent(\n 'navigation-drawer-changed',\n {detail: {opened: this.opened}, bubbles: true, composed: true}));\n }, 250);\n }\n }\n}\n"]}
1
+ {"version":3,"file":"navigation-drawer.js","sourceRoot":"","sources":["navigation-drawer.ts"],"names":[],"mappings":"AAAA;;;;GAIG;;;AAEH,OAAO,8BAA8B,CAAC;AAEtC,OAAO,EAAC,IAAI,EAAE,UAAU,EAAE,OAAO,EAAiB,MAAM,KAAK,CAAC;AAC9D,OAAO,EAAC,QAAQ,EAAC,MAAM,mBAAmB,CAAC;AAC3C,OAAO,EAAC,QAAQ,EAAC,MAAM,6BAA6B,CAAC;AAErD,OAAO,EAAC,yBAAyB,EAAC,MAAM,wBAAwB,CAAC;AAGjE;;GAEG;AACH,MAAM,OAAO,gBAAiB,SAAQ,UAAU;IAAhD;;QAK6B,WAAM,GAAG,KAAK,CAAC;QAC9B,UAAK,GAAkB,KAAK,CAAC;IAwC3C,CAAC;IAtCU,MAAM;QACb,MAAM,YAAY,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC;QACpD,MAAM,UAAU,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC;QACnD,iCAAiC;QACjC,MAAM,EAAC,SAAS,EAAE,SAAS,EAAC,GAAG,IAAuB,CAAC;QACvD,OAAO,IAAI,CAAA;;yBAEU,YAAY;uBACd,UAAU;qBACZ,SAAS,IAAI,OAAO;sBACnB,SAAS,IAAI,OAAO;uCACH,IAAI,CAAC,gBAAgB,EAAE;;;;;;;KAOzD,CAAC;IACJ,CAAC;IAES,gBAAgB;QACxB,OAAO,QAAQ,CAAC;YACd,+BAA+B,EAAE,IAAI,CAAC,MAAM;YAC5C,uCAAuC,EAAE,IAAI,CAAC,KAAK,KAAK,OAAO;SAChE,CAAC,CAAC;IACL,CAAC;IAEkB,OAAO,CAAC,iBACoC;QAC7D,IAAI,iBAAiB,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE;YACnC,UAAU,CAAC,GAAG,EAAE;gBACd,IAAI,CAAC,aAAa,CAAC,IAAI,WAAW,CAC9B,2BAA2B,EAC3B,EAAC,MAAM,EAAE,EAAC,MAAM,EAAE,IAAI,CAAC,MAAM,EAAC,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAC,CAAC,CAAC,CAAC;YACvE,CAAC,EAAE,GAAG,CAAC,CAAC;SACT;IACH,CAAC;CACF;;AA7CC;IACE,yBAAyB,CAAC,EAAI,CAAC,CAAC;AAClC,CAAC,GAAA,CAAA;AAE0B;IAA1B,QAAQ,CAAC,EAAC,IAAI,EAAE,OAAO,EAAC,CAAC;gDAAgB;AAC9B;IAAX,QAAQ,EAAE;+CAA8B","sourcesContent":["/**\n * @license\n * Copyright 2021 Google LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport '../../elevation/elevation.js';\n\nimport {html, LitElement, nothing, PropertyValues} from 'lit';\nimport {property} from 'lit/decorators.js';\nimport {classMap} from 'lit/directives/class-map.js';\n\nimport {requestUpdateOnAriaChange} from '../../aria/delegate.js';\nimport {ARIAMixinStrict} from '../../types/aria.js';\n\n/**\n * TODO(b/265346501): add docs\n */\nexport class NavigationDrawer extends LitElement {\n static {\n requestUpdateOnAriaChange(this);\n }\n\n @property({type: Boolean}) opened = false;\n @property() pivot: 'start'|'end' = 'end';\n\n override render() {\n const ariaExpanded = this.opened ? 'true' : 'false';\n const ariaHidden = !this.opened ? 'true' : 'false';\n // Needed for closure conformance\n const {ariaLabel, ariaModal} = this as ARIAMixinStrict;\n return html`\n <div\n aria-expanded=\"${ariaExpanded}\"\n aria-hidden=\"${ariaHidden}\"\n aria-label=${ariaLabel || nothing}\n aria-modal=\"${ariaModal || nothing}\"\n class=\"md3-navigation-drawer ${this.getRenderClasses()}\"\n role=\"dialog\">\n <md-elevation></md-elevation>\n <div class=\"md3-navigation-drawer__slot-content\">\n <slot></slot>\n </div>\n </div>\n `;\n }\n\n protected getRenderClasses() {\n return classMap({\n 'md3-navigation-drawer--opened': this.opened,\n 'md3-navigation-drawer--pivot-at-start': this.pivot === 'start',\n });\n }\n\n protected override updated(changedProperties:\n PropertyValues<NavigationDrawer>) {\n if (changedProperties.has('opened')) {\n setTimeout(() => {\n this.dispatchEvent(new CustomEvent(\n 'navigation-drawer-changed',\n {detail: {opened: this.opened}, bubbles: true, composed: true}));\n }, 250);\n }\n }\n}\n"]}
@@ -10,7 +10,6 @@ declare global {
10
10
  }
11
11
  }
12
12
  /**
13
- * @soyCompatible
14
13
  * @final
15
14
  * @suppress {visibility}
16
15
  */
@@ -9,7 +9,6 @@ import { NavigationDrawerModal } from './lib/navigation-drawer-modal.js';
9
9
  import { styles } from './lib/navigation-drawer-modal-styles.css.js';
10
10
  import { styles as sharedStyles } from './lib/shared-styles.css.js';
11
11
  /**
12
- * @soyCompatible
13
12
  * @final
14
13
  * @suppress {visibility}
15
14
  */
@@ -1 +1 @@
1
- {"version":3,"file":"navigation-drawer-modal.js","sourceRoot":"","sources":["navigation-drawer-modal.ts"],"names":[],"mappings":"AAAA;;;;GAIG;;AAEH,OAAO,EAAC,aAAa,EAAC,MAAM,mBAAmB,CAAC;AAEhD,OAAO,EAAC,qBAAqB,EAAC,MAAM,kCAAkC,CAAC;AACvE,OAAO,EAAC,MAAM,EAAC,MAAM,6CAA6C,CAAC;AACnE,OAAO,EAAC,MAAM,IAAI,YAAY,EAAC,MAAM,4BAA4B,CAAC;AAQlE;;;;GAIG;AAEI,IAAM,uBAAuB,GAA7B,MAAM,uBAAwB,SAAQ,qBAAqB;;AACvC,8BAAM,GAAG,CAAC,YAAY,EAAE,MAAM,CAAC,CAAC;AAD9C,uBAAuB;IADnC,aAAa,CAAC,4BAA4B,CAAC;GAC/B,uBAAuB,CAEnC;SAFY,uBAAuB","sourcesContent":["/**\n * @license\n * Copyright 2021 Google LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport {customElement} from 'lit/decorators.js';\n\nimport {NavigationDrawerModal} from './lib/navigation-drawer-modal.js';\nimport {styles} from './lib/navigation-drawer-modal-styles.css.js';\nimport {styles as sharedStyles} from './lib/shared-styles.css.js';\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'md-navigation-drawer-modal': MdNavigationDrawerModal;\n }\n}\n\n/**\n * @soyCompatible\n * @final\n * @suppress {visibility}\n */\n@customElement('md-navigation-drawer-modal')\nexport class MdNavigationDrawerModal extends NavigationDrawerModal {\n static override readonly styles = [sharedStyles, styles];\n}\n"]}
1
+ {"version":3,"file":"navigation-drawer-modal.js","sourceRoot":"","sources":["navigation-drawer-modal.ts"],"names":[],"mappings":"AAAA;;;;GAIG;;AAEH,OAAO,EAAC,aAAa,EAAC,MAAM,mBAAmB,CAAC;AAEhD,OAAO,EAAC,qBAAqB,EAAC,MAAM,kCAAkC,CAAC;AACvE,OAAO,EAAC,MAAM,EAAC,MAAM,6CAA6C,CAAC;AACnE,OAAO,EAAC,MAAM,IAAI,YAAY,EAAC,MAAM,4BAA4B,CAAC;AAQlE;;;GAGG;AAEI,IAAM,uBAAuB,GAA7B,MAAM,uBAAwB,SAAQ,qBAAqB;;AACvC,8BAAM,GAAG,CAAC,YAAY,EAAE,MAAM,CAAC,CAAC;AAD9C,uBAAuB;IADnC,aAAa,CAAC,4BAA4B,CAAC;GAC/B,uBAAuB,CAEnC;SAFY,uBAAuB","sourcesContent":["/**\n * @license\n * Copyright 2021 Google LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport {customElement} from 'lit/decorators.js';\n\nimport {NavigationDrawerModal} from './lib/navigation-drawer-modal.js';\nimport {styles} from './lib/navigation-drawer-modal-styles.css.js';\nimport {styles as sharedStyles} from './lib/shared-styles.css.js';\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'md-navigation-drawer-modal': MdNavigationDrawerModal;\n }\n}\n\n/**\n * @final\n * @suppress {visibility}\n */\n@customElement('md-navigation-drawer-modal')\nexport class MdNavigationDrawerModal extends NavigationDrawerModal {\n static override readonly styles = [sharedStyles, styles];\n}\n"]}
@@ -10,7 +10,6 @@ declare global {
10
10
  }
11
11
  }
12
12
  /**
13
- * @soyCompatible
14
13
  * @final
15
14
  * @suppress {visibility}
16
15
  */
@@ -9,7 +9,6 @@ import { NavigationDrawer } from './lib/navigation-drawer.js';
9
9
  import { styles } from './lib/navigation-drawer-styles.css.js';
10
10
  import { styles as sharedStyles } from './lib/shared-styles.css.js';
11
11
  /**
12
- * @soyCompatible
13
12
  * @final
14
13
  * @suppress {visibility}
15
14
  */
@@ -1 +1 @@
1
- {"version":3,"file":"navigation-drawer.js","sourceRoot":"","sources":["navigation-drawer.ts"],"names":[],"mappings":"AAAA;;;;GAIG;;AAEH,OAAO,EAAC,aAAa,EAAC,MAAM,mBAAmB,CAAC;AAEhD,OAAO,EAAC,gBAAgB,EAAC,MAAM,4BAA4B,CAAC;AAC5D,OAAO,EAAC,MAAM,EAAC,MAAM,uCAAuC,CAAC;AAC7D,OAAO,EAAC,MAAM,IAAI,YAAY,EAAC,MAAM,4BAA4B,CAAC;AAQlE;;;;GAIG;AAEI,IAAM,kBAAkB,GAAxB,MAAM,kBAAmB,SAAQ,gBAAgB;;AAC7B,yBAAM,GAAG,CAAC,YAAY,EAAE,MAAM,CAAC,CAAC;AAD9C,kBAAkB;IAD9B,aAAa,CAAC,sBAAsB,CAAC;GACzB,kBAAkB,CAE9B;SAFY,kBAAkB","sourcesContent":["/**\n * @license\n * Copyright 2021 Google LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport {customElement} from 'lit/decorators.js';\n\nimport {NavigationDrawer} from './lib/navigation-drawer.js';\nimport {styles} from './lib/navigation-drawer-styles.css.js';\nimport {styles as sharedStyles} from './lib/shared-styles.css.js';\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'md-navigation-drawer': MdNavigationDrawer;\n }\n}\n\n/**\n * @soyCompatible\n * @final\n * @suppress {visibility}\n */\n@customElement('md-navigation-drawer')\nexport class MdNavigationDrawer extends NavigationDrawer {\n static override readonly styles = [sharedStyles, styles];\n}\n"]}
1
+ {"version":3,"file":"navigation-drawer.js","sourceRoot":"","sources":["navigation-drawer.ts"],"names":[],"mappings":"AAAA;;;;GAIG;;AAEH,OAAO,EAAC,aAAa,EAAC,MAAM,mBAAmB,CAAC;AAEhD,OAAO,EAAC,gBAAgB,EAAC,MAAM,4BAA4B,CAAC;AAC5D,OAAO,EAAC,MAAM,EAAC,MAAM,uCAAuC,CAAC;AAC7D,OAAO,EAAC,MAAM,IAAI,YAAY,EAAC,MAAM,4BAA4B,CAAC;AAQlE;;;GAGG;AAEI,IAAM,kBAAkB,GAAxB,MAAM,kBAAmB,SAAQ,gBAAgB;;AAC7B,yBAAM,GAAG,CAAC,YAAY,EAAE,MAAM,CAAC,CAAC;AAD9C,kBAAkB;IAD9B,aAAa,CAAC,sBAAsB,CAAC;GACzB,kBAAkB,CAE9B;SAFY,kBAAkB","sourcesContent":["/**\n * @license\n * Copyright 2021 Google LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport {customElement} from 'lit/decorators.js';\n\nimport {NavigationDrawer} from './lib/navigation-drawer.js';\nimport {styles} from './lib/navigation-drawer-styles.css.js';\nimport {styles as sharedStyles} from './lib/shared-styles.css.js';\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'md-navigation-drawer': MdNavigationDrawer;\n }\n}\n\n/**\n * @final\n * @suppress {visibility}\n */\n@customElement('md-navigation-drawer')\nexport class MdNavigationDrawer extends NavigationDrawer {\n static override readonly styles = [sharedStyles, styles];\n}\n"]}
@@ -5,13 +5,14 @@
5
5
  */
6
6
  import '../../badge/badge.js';
7
7
  import '../../focus/focus-ring.js';
8
- import { PropertyValues, TemplateResult } from 'lit';
9
- import { ClassInfo } from 'lit/directives/class-map.js';
10
- import { ActionElement, BeginPressConfig, EndPressConfig } from '../../actionelement/action-element.js';
8
+ import '../../ripple/ripple.js';
9
+ import { LitElement, nothing, PropertyValues } from 'lit';
11
10
  import { MdRipple } from '../../ripple/ripple.js';
12
11
  import { NavigationTabState } from './state.js';
13
- /** @soyCompatible */
14
- export declare class NavigationTab extends ActionElement implements NavigationTabState {
12
+ /**
13
+ * TODO(b/265346501): add docs
14
+ */
15
+ export declare class NavigationTab extends LitElement implements NavigationTabState {
15
16
  disabled: boolean;
16
17
  active: boolean;
17
18
  hideInactiveLabel: boolean;
@@ -19,30 +20,24 @@ export declare class NavigationTab extends ActionElement implements NavigationTa
19
20
  badgeValue: string;
20
21
  showBadge: boolean;
21
22
  protected showFocusRing: boolean;
22
- ariaLabel: string;
23
+ protected showRipple: boolean;
23
24
  buttonElement: HTMLElement;
24
- ripple: MdRipple;
25
- /** @soyTemplate */
26
- render(): TemplateResult;
27
- /** @soyTemplate */
28
- protected getRenderClasses(): ClassInfo;
29
- /** @soyTemplate */
30
- protected renderFocusRing(): TemplateResult;
31
- /** @soyTemplate */
32
- protected renderRipple(): TemplateResult | string;
33
- /** @soyTemplate */
34
- protected renderBadge(): TemplateResult | '';
35
- /** @soyTemplate */
36
- protected renderLabel(): TemplateResult | '';
25
+ ripple: Promise<MdRipple | null>;
26
+ render(): import("lit-html").TemplateResult<1>;
27
+ protected getRenderClasses(): {
28
+ 'md3-navigation-tab--hide-inactive-label': boolean;
29
+ 'md3-navigation-tab--active': boolean;
30
+ };
31
+ protected renderFocusRing(): import("lit-html").TemplateResult<1>;
32
+ protected getRipple: () => Promise<MdRipple>;
33
+ protected renderRipple: () => import("lit-html").TemplateResult<1>;
34
+ protected renderBadge(): import("lit-html").TemplateResult<1> | typeof nothing;
35
+ protected renderLabel(): import("lit-html").TemplateResult<1> | typeof nothing;
37
36
  firstUpdated(changedProperties: PropertyValues): void;
38
37
  focus(): void;
39
38
  blur(): void;
40
- beginPress({ positionEvent }: BeginPressConfig): void;
41
- endPress(options: EndPressConfig): void;
39
+ handleClick(): void;
42
40
  handlePointerDown(e: PointerEvent): void;
43
- handlePointerUp(e: PointerEvent): void;
44
- protected handlePointerEnter(e: PointerEvent): void;
45
- handlePointerLeave(e: PointerEvent): void;
46
41
  protected handleFocus(): void;
47
42
  protected handleBlur(): void;
48
43
  }
@@ -3,19 +3,22 @@
3
3
  * Copyright 2022 Google LLC
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
- import { __decorate, __metadata } from "tslib";
6
+ var _a;
7
+ import { __decorate } from "tslib";
7
8
  import '../../badge/badge.js';
8
9
  import '../../focus/focus-ring.js';
9
- import { html } from 'lit';
10
- import { property, query, state } from 'lit/decorators.js';
10
+ import '../../ripple/ripple.js';
11
+ import { html, LitElement, nothing } from 'lit';
12
+ import { property, query, queryAsync, state } from 'lit/decorators.js';
11
13
  import { classMap } from 'lit/directives/class-map.js';
12
- import { ifDefined } from 'lit/directives/if-defined.js';
13
- import { ActionElement } from '../../actionelement/action-element.js';
14
- import { ariaProperty } from '../../decorators/aria-property.js';
14
+ import { when } from 'lit/directives/when.js';
15
+ import { requestUpdateOnAriaChange } from '../../aria/delegate.js';
15
16
  import { pointerPress, shouldShowStrongFocus } from '../../focus/strong-focus.js';
16
- import { MdRipple } from '../../ripple/ripple.js';
17
- /** @soyCompatible */
18
- export class NavigationTab extends ActionElement {
17
+ import { ripple } from '../../ripple/directive.js';
18
+ /**
19
+ * TODO(b/265346501): add docs
20
+ */
21
+ export class NavigationTab extends LitElement {
19
22
  constructor() {
20
23
  super(...arguments);
21
24
  this.disabled = false;
@@ -24,26 +27,30 @@ export class NavigationTab extends ActionElement {
24
27
  this.badgeValue = '';
25
28
  this.showBadge = false;
26
29
  this.showFocusRing = false;
30
+ this.showRipple = false;
31
+ this.getRipple = () => {
32
+ this.showRipple = true;
33
+ return this.ripple;
34
+ };
35
+ this.renderRipple = () => {
36
+ return html `<md-ripple ?disabled="${this.disabled}" class="md3-navigation-tab__ripple"></md-ripple>`;
37
+ };
27
38
  }
28
- /** @soyTemplate */
29
39
  render() {
40
+ // Needed for closure conformance
41
+ const { ariaLabel } = this;
30
42
  return html `
31
43
  <button
32
44
  class="md3-navigation-tab ${classMap(this.getRenderClasses())}"
33
45
  role="tab"
34
46
  aria-selected="${this.active}"
35
- aria-label="${ifDefined(this.ariaLabel)}"
47
+ aria-label=${ariaLabel || nothing}
36
48
  tabindex="${this.active ? 0 : -1}"
37
49
  @focus="${this.handleFocus}"
38
50
  @blur="${this.handleBlur}"
39
51
  @pointerdown="${this.handlePointerDown}"
40
- @pointerup="${this.handlePointerUp}"
41
- @pointercancel="${this.handlePointerCancel}"
42
- @pointerleave="${this.handlePointerLeave}"
43
- @pointerenter="${this.handlePointerEnter}"
44
52
  @click="${this.handleClick}"
45
- @contextmenu="${this.handleContextMenu}"
46
- >${this.renderFocusRing()}${this.renderRipple()}
53
+ ${ripple(this.getRipple)}>${this.renderFocusRing()}${when(this.showRipple, this.renderRipple)}
47
54
  <span aria-hidden="true" class="md3-navigation-tab__icon-content"
48
55
  ><span class="md3-navigation-tab__active-indicator"
49
56
  ></span><span class="md3-navigation-tab__icon"
@@ -55,32 +62,26 @@ export class NavigationTab extends ActionElement {
55
62
  >${this.renderLabel()}
56
63
  </button>`;
57
64
  }
58
- /** @soyTemplate */
59
65
  getRenderClasses() {
60
66
  return {
61
67
  'md3-navigation-tab--hide-inactive-label': this.hideInactiveLabel,
62
68
  'md3-navigation-tab--active': this.active,
63
69
  };
64
70
  }
65
- /** @soyTemplate */
66
71
  renderFocusRing() {
67
72
  return html `<md-focus-ring .visible="${this.showFocusRing}"></md-focus-ring>`;
68
73
  }
69
- /** @soyTemplate */
70
- renderRipple() {
71
- return html `<md-ripple class="md3-navigation-tab__ripple"></md-ripple>`;
72
- }
73
- /** @soyTemplate */
74
74
  renderBadge() {
75
75
  return this.showBadge ?
76
76
  html `<md-badge .value="${this.badgeValue}"></md-badge>` :
77
- '';
77
+ nothing;
78
78
  }
79
- /** @soyTemplate */
80
79
  renderLabel() {
81
- const ariaHidden = this.ariaLabel ? 'true' : 'false';
80
+ // Needed for closure conformance
81
+ const { ariaLabel } = this;
82
+ const ariaHidden = ariaLabel ? 'true' : 'false';
82
83
  return !this.label ?
83
- '' :
84
+ nothing :
84
85
  html `
85
86
  <span aria-hidden="${ariaHidden}" class="md3-navigation-tab__label-text">${this.label}</span>`;
86
87
  }
@@ -101,31 +102,14 @@ export class NavigationTab extends ActionElement {
101
102
  buttonElement.blur();
102
103
  }
103
104
  }
104
- beginPress({ positionEvent }) {
105
- // TODO(b/269772145): connect to ripple
106
- }
107
- endPress(options) {
105
+ handleClick() {
108
106
  // TODO(b/269772145): connect to ripple
109
- super.endPress(options);
110
- if (!options.cancelled) {
111
- this.dispatchEvent(new CustomEvent('navigation-tab-interaction', { detail: { state: this }, bubbles: true, composed: true }));
112
- }
107
+ this.dispatchEvent(new CustomEvent('navigation-tab-interaction', { detail: { state: this }, bubbles: true, composed: true }));
113
108
  }
114
109
  handlePointerDown(e) {
115
- super.handlePointerDown(e);
116
110
  pointerPress();
117
111
  this.showFocusRing = shouldShowStrongFocus();
118
112
  }
119
- handlePointerUp(e) {
120
- super.handlePointerUp(e);
121
- }
122
- handlePointerEnter(e) {
123
- this.ripple.handlePointerenter(e);
124
- }
125
- handlePointerLeave(e) {
126
- super.handlePointerLeave(e);
127
- this.ripple.handlePointerleave(e);
128
- }
129
113
  handleFocus() {
130
114
  this.showFocusRing = shouldShowStrongFocus();
131
115
  }
@@ -133,42 +117,38 @@ export class NavigationTab extends ActionElement {
133
117
  this.showFocusRing = false;
134
118
  }
135
119
  }
120
+ _a = NavigationTab;
121
+ (() => {
122
+ requestUpdateOnAriaChange(_a);
123
+ })();
124
+ __decorate([
125
+ property({ type: Boolean })
126
+ ], NavigationTab.prototype, "disabled", void 0);
136
127
  __decorate([
137
- property({ type: Boolean, reflect: true }),
138
- __metadata("design:type", Object)
128
+ property({ type: Boolean, reflect: true })
139
129
  ], NavigationTab.prototype, "active", void 0);
140
130
  __decorate([
141
- property({ type: Boolean }),
142
- __metadata("design:type", Object)
131
+ property({ type: Boolean })
143
132
  ], NavigationTab.prototype, "hideInactiveLabel", void 0);
144
133
  __decorate([
145
- property({ type: String }),
146
- __metadata("design:type", String)
134
+ property()
147
135
  ], NavigationTab.prototype, "label", void 0);
148
136
  __decorate([
149
- property({ type: String }),
150
- __metadata("design:type", Object)
137
+ property()
151
138
  ], NavigationTab.prototype, "badgeValue", void 0);
152
139
  __decorate([
153
- property({ type: Boolean }),
154
- __metadata("design:type", Object)
140
+ property({ type: Boolean })
155
141
  ], NavigationTab.prototype, "showBadge", void 0);
156
142
  __decorate([
157
- state(),
158
- __metadata("design:type", Object)
143
+ state()
159
144
  ], NavigationTab.prototype, "showFocusRing", void 0);
160
145
  __decorate([
161
- ariaProperty // tslint:disable-line:no-new-decorators
162
- ,
163
- property({ type: String, attribute: 'data-aria-label', noAccessor: true }),
164
- __metadata("design:type", String)
165
- ], NavigationTab.prototype, "ariaLabel", void 0);
146
+ state()
147
+ ], NavigationTab.prototype, "showRipple", void 0);
166
148
  __decorate([
167
- query('button'),
168
- __metadata("design:type", HTMLElement)
149
+ query('button')
169
150
  ], NavigationTab.prototype, "buttonElement", void 0);
170
151
  __decorate([
171
- query('md-ripple'),
172
- __metadata("design:type", MdRipple)
152
+ queryAsync('md-ripple')
173
153
  ], NavigationTab.prototype, "ripple", void 0);
174
154
  //# sourceMappingURL=navigation-tab.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"navigation-tab.js","sourceRoot":"","sources":["navigation-tab.ts"],"names":[],"mappings":"AAAA;;;;GAIG;;AAEH,OAAO,sBAAsB,CAAC;AAC9B,OAAO,2BAA2B,CAAC;AAEnC,OAAO,EAAC,IAAI,EAAiC,MAAM,KAAK,CAAC;AACzD,OAAO,EAAC,QAAQ,EAAE,KAAK,EAAE,KAAK,EAAC,MAAM,mBAAmB,CAAC;AACzD,OAAO,EAAY,QAAQ,EAAC,MAAM,6BAA6B,CAAC;AAChE,OAAO,EAAC,SAAS,EAAC,MAAM,8BAA8B,CAAC;AAEvD,OAAO,EAAC,aAAa,EAAmC,MAAM,uCAAuC,CAAC;AACtG,OAAO,EAAC,YAAY,EAAC,MAAM,mCAAmC,CAAC;AAC/D,OAAO,EAAC,YAAY,EAAE,qBAAqB,EAAC,MAAM,6BAA6B,CAAC;AAChF,OAAO,EAAC,QAAQ,EAAC,MAAM,wBAAwB,CAAC;AAIhD,qBAAqB;AACrB,MAAM,OAAO,aAAc,SAAQ,aAAa;IAAhD;;QACE,aAAQ,GAAG,KAAK,CAAC;QACyB,WAAM,GAAG,KAAK,CAAC;QAC9B,sBAAiB,GAAG,KAAK,CAAC;QAE3B,eAAU,GAAG,EAAE,CAAC;QACf,cAAS,GAAG,KAAK,CAAC;QAE1B,kBAAa,GAAG,KAAK,CAAC;IA4I3C,CAAC;IAjIC,mBAAmB;IACV,MAAM;QACb,OAAO,IAAI,CAAA;;oCAEqB,QAAQ,CAAC,IAAI,CAAC,gBAAgB,EAAE,CAAC;;yBAE5C,IAAI,CAAC,MAAM;sBACd,SAAS,CAAC,IAAI,CAAC,SAAS,CAAC;oBAC3B,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;kBACtB,IAAI,CAAC,WAAW;iBACjB,IAAI,CAAC,UAAU;wBACR,IAAI,CAAC,iBAAiB;sBACxB,IAAI,CAAC,eAAe;0BAChB,IAAI,CAAC,mBAAmB;yBACzB,IAAI,CAAC,kBAAkB;yBACvB,IAAI,CAAC,kBAAkB;kBAC9B,IAAI,CAAC,WAAW;wBACV,IAAI,CAAC,iBAAiB;SACrC,IAAI,CAAC,eAAe,EAAE,GAAG,IAAI,CAAC,YAAY,EAAE;;;;;;;;kBAQnC,IAAI,CAAC,WAAW,EAAE;WACzB,IAAI,CAAC,WAAW,EAAE;gBACb,CAAC;IACf,CAAC;IAED,mBAAmB;IACT,gBAAgB;QACxB,OAAO;YACL,yCAAyC,EAAE,IAAI,CAAC,iBAAiB;YACjE,4BAA4B,EAAE,IAAI,CAAC,MAAM;SAC1C,CAAC;IACJ,CAAC;IAED,mBAAmB;IACT,eAAe;QACvB,OAAO,IAAI,CAAA,4BACP,IAAI,CAAC,aAAa,oBAAoB,CAAC;IAC7C,CAAC;IAED,mBAAmB;IACT,YAAY;QACpB,OAAO,IAAI,CAAA,4DAA4D,CAAC;IAC1E,CAAC;IAED,mBAAmB;IACT,WAAW;QACnB,OAAO,IAAI,CAAC,SAAS,CAAC,CAAC;YACnB,IAAI,CAAA,qBAAqB,IAAI,CAAC,UAAU,eAAe,CAAC,CAAC;YACzD,EAAE,CAAC;IACT,CAAC;IAED,mBAAmB;IACT,WAAW;QACnB,MAAM,UAAU,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC;QACrD,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YAChB,EAAE,CAAC,CAAC;YACJ,IAAI,CAAA;6BAEA,UAAU,4CACV,IAAI,CAAC,KAAK,SAAS,CAAC;IAC9B,CAAC;IAEQ,YAAY,CAAC,iBAAiC;QACrD,KAAK,CAAC,YAAY,CAAC,iBAAiB,CAAC,CAAC;QACtC,MAAM,KAAK,GACP,IAAI,KAAK,CAAC,yBAAyB,EAAE,EAAC,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAC,CAAC,CAAC;QAC1E,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;IAC5B,CAAC;IAEQ,KAAK;QACZ,MAAM,aAAa,GAAG,IAAI,CAAC,aAAa,CAAC;QACzC,IAAI,aAAa,EAAE;YACjB,aAAa,CAAC,KAAK,EAAE,CAAC;SACvB;IACH,CAAC;IAEQ,IAAI;QACX,MAAM,aAAa,GAAG,IAAI,CAAC,aAAa,CAAC;QACzC,IAAI,aAAa,EAAE;YACjB,aAAa,CAAC,IAAI,EAAE,CAAC;SACtB;IACH,CAAC;IAEQ,UAAU,CAAC,EAAC,aAAa,EAAmB;QACnD,uCAAuC;IACzC,CAAC;IAEQ,QAAQ,CAAC,OAAuB;QACvC,uCAAuC;QACvC,KAAK,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACxB,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE;YACtB,IAAI,CAAC,aAAa,CAAC,IAAI,WAAW,CAC9B,4BAA4B,EAC5B,EAAC,MAAM,EAAE,EAAC,KAAK,EAAE,IAAI,EAAC,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAC,CAAC,CAAC,CAAC;SAC9D;IACH,CAAC;IAEQ,iBAAiB,CAAC,CAAe;QACxC,KAAK,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC;QAC3B,YAAY,EAAE,CAAC;QACf,IAAI,CAAC,aAAa,GAAG,qBAAqB,EAAE,CAAC;IAC/C,CAAC;IAEQ,eAAe,CAAC,CAAe;QACtC,KAAK,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC;IAC3B,CAAC;IAES,kBAAkB,CAAC,CAAe;QAC1C,IAAI,CAAC,MAAM,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC;IACpC,CAAC;IAEQ,kBAAkB,CAAC,CAAe;QACzC,KAAK,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC;QAC5B,IAAI,CAAC,MAAM,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC;IACpC,CAAC;IAES,WAAW;QACnB,IAAI,CAAC,aAAa,GAAG,qBAAqB,EAAE,CAAC;IAC/C,CAAC;IAES,UAAU;QAClB,IAAI,CAAC,aAAa,GAAG,KAAK,CAAC;IAC7B,CAAC;CACF;AAlJC;IAAC,QAAQ,CAAC,EAAC,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAC,CAAC;;6CAAgB;AACzD;IAAC,QAAQ,CAAC,EAAC,IAAI,EAAE,OAAO,EAAC,CAAC;;wDAA2B;AACrD;IAAC,QAAQ,CAAC,EAAC,IAAI,EAAE,MAAM,EAAC,CAAC;;4CAAgB;AACzC;IAAC,QAAQ,CAAC,EAAC,IAAI,EAAE,MAAM,EAAC,CAAC;;iDAAiB;AAC1C;IAAC,QAAQ,CAAC,EAAC,IAAI,EAAE,OAAO,EAAC,CAAC;;gDAAmB;AAE7C;IAAC,KAAK,EAAE;;oDAAiC;AAGzC;IAAC,YAAY,CAAE,wCAAwC;;IACtD,QAAQ,CAAC,EAAC,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,iBAAiB,EAAE,UAAU,EAAE,IAAI,EAAC,CAAC;;gDAC7C;AAE5B;IAAC,KAAK,CAAC,QAAQ,CAAC;8BAAiB,WAAW;oDAAC;AAE7C;IAAC,KAAK,CAAC,WAAW,CAAC;8BAAU,QAAQ;6CAAC","sourcesContent":["/**\n * @license\n * Copyright 2022 Google LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport '../../badge/badge.js';\nimport '../../focus/focus-ring.js';\n\nimport {html, PropertyValues, TemplateResult} from 'lit';\nimport {property, query, state} from 'lit/decorators.js';\nimport {ClassInfo, classMap} from 'lit/directives/class-map.js';\nimport {ifDefined} from 'lit/directives/if-defined.js';\n\nimport {ActionElement, BeginPressConfig, EndPressConfig} from '../../actionelement/action-element.js';\nimport {ariaProperty} from '../../decorators/aria-property.js';\nimport {pointerPress, shouldShowStrongFocus} from '../../focus/strong-focus.js';\nimport {MdRipple} from '../../ripple/ripple.js';\n\nimport {NavigationTabState} from './state.js';\n\n/** @soyCompatible */\nexport class NavigationTab extends ActionElement implements NavigationTabState {\n disabled = false;\n @property({type: Boolean, reflect: true}) active = false;\n @property({type: Boolean}) hideInactiveLabel = false;\n @property({type: String}) label?: string;\n @property({type: String}) badgeValue = '';\n @property({type: Boolean}) showBadge = false;\n\n @state() protected showFocusRing = false;\n\n // TODO(b/210730484): replace with @soyParam annotation\n @ariaProperty // tslint:disable-line:no-new-decorators\n @property({type: String, attribute: 'data-aria-label', noAccessor: true})\n override ariaLabel!: string;\n\n @query('button') buttonElement!: HTMLElement;\n\n @query('md-ripple') ripple!: MdRipple;\n\n /** @soyTemplate */\n override render(): TemplateResult {\n return html`\n <button\n class=\"md3-navigation-tab ${classMap(this.getRenderClasses())}\"\n role=\"tab\"\n aria-selected=\"${this.active}\"\n aria-label=\"${ifDefined(this.ariaLabel)}\"\n tabindex=\"${this.active ? 0 : -1}\"\n @focus=\"${this.handleFocus}\"\n @blur=\"${this.handleBlur}\"\n @pointerdown=\"${this.handlePointerDown}\"\n @pointerup=\"${this.handlePointerUp}\"\n @pointercancel=\"${this.handlePointerCancel}\"\n @pointerleave=\"${this.handlePointerLeave}\"\n @pointerenter=\"${this.handlePointerEnter}\"\n @click=\"${this.handleClick}\"\n @contextmenu=\"${this.handleContextMenu}\"\n >${this.renderFocusRing()}${this.renderRipple()}\n <span aria-hidden=\"true\" class=\"md3-navigation-tab__icon-content\"\n ><span class=\"md3-navigation-tab__active-indicator\"\n ></span><span class=\"md3-navigation-tab__icon\"\n ><slot name=\"inactiveIcon\"></slot\n ></span>\n <span class=\"md3-navigation-tab__icon md3-navigation-tab__icon--active\"\n ><slot name=\"activeIcon\"></slot\n ></span>${this.renderBadge()}</span\n >${this.renderLabel()}\n </button>`;\n }\n\n /** @soyTemplate */\n protected getRenderClasses(): ClassInfo {\n return {\n 'md3-navigation-tab--hide-inactive-label': this.hideInactiveLabel,\n 'md3-navigation-tab--active': this.active,\n };\n }\n\n /** @soyTemplate */\n protected renderFocusRing(): TemplateResult {\n return html`<md-focus-ring .visible=\"${\n this.showFocusRing}\"></md-focus-ring>`;\n }\n\n /** @soyTemplate */\n protected renderRipple(): TemplateResult|string {\n return html`<md-ripple class=\"md3-navigation-tab__ripple\"></md-ripple>`;\n }\n\n /** @soyTemplate */\n protected renderBadge(): TemplateResult|'' {\n return this.showBadge ?\n html`<md-badge .value=\"${this.badgeValue}\"></md-badge>` :\n '';\n }\n\n /** @soyTemplate */\n protected renderLabel(): TemplateResult|'' {\n const ariaHidden = this.ariaLabel ? 'true' : 'false';\n return !this.label ?\n '' :\n html`\n <span aria-hidden=\"${\n ariaHidden}\" class=\"md3-navigation-tab__label-text\">${\n this.label}</span>`;\n }\n\n override firstUpdated(changedProperties: PropertyValues) {\n super.firstUpdated(changedProperties);\n const event =\n new Event('navigation-tab-rendered', {bubbles: true, composed: true});\n this.dispatchEvent(event);\n }\n\n override focus() {\n const buttonElement = this.buttonElement;\n if (buttonElement) {\n buttonElement.focus();\n }\n }\n\n override blur() {\n const buttonElement = this.buttonElement;\n if (buttonElement) {\n buttonElement.blur();\n }\n }\n\n override beginPress({positionEvent}: BeginPressConfig) {\n // TODO(b/269772145): connect to ripple\n }\n\n override endPress(options: EndPressConfig) {\n // TODO(b/269772145): connect to ripple\n super.endPress(options);\n if (!options.cancelled) {\n this.dispatchEvent(new CustomEvent(\n 'navigation-tab-interaction',\n {detail: {state: this}, bubbles: true, composed: true}));\n }\n }\n\n override handlePointerDown(e: PointerEvent) {\n super.handlePointerDown(e);\n pointerPress();\n this.showFocusRing = shouldShowStrongFocus();\n }\n\n override handlePointerUp(e: PointerEvent) {\n super.handlePointerUp(e);\n }\n\n protected handlePointerEnter(e: PointerEvent) {\n this.ripple.handlePointerenter(e);\n }\n\n override handlePointerLeave(e: PointerEvent) {\n super.handlePointerLeave(e);\n this.ripple.handlePointerleave(e);\n }\n\n protected handleFocus() {\n this.showFocusRing = shouldShowStrongFocus();\n }\n\n protected handleBlur() {\n this.showFocusRing = false;\n }\n}\n"]}
1
+ {"version":3,"file":"navigation-tab.js","sourceRoot":"","sources":["navigation-tab.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * @license\n * Copyright 2022 Google LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport '../../badge/badge.js';\nimport '../../focus/focus-ring.js';\nimport '../../ripple/ripple.js';\n\nimport {html, LitElement, nothing, PropertyValues} from 'lit';\nimport {property, query, queryAsync, state} from 'lit/decorators.js';\nimport {classMap} from 'lit/directives/class-map.js';\nimport {when} from 'lit/directives/when.js';\n\nimport {requestUpdateOnAriaChange} from '../../aria/delegate.js';\nimport {pointerPress, shouldShowStrongFocus} from '../../focus/strong-focus.js';\nimport {ripple} from '../../ripple/directive.js';\nimport {MdRipple} from '../../ripple/ripple.js';\nimport {ARIAMixinStrict} from '../../types/aria.js';\n\nimport {NavigationTabState} from './state.js';\n\n/**\n * TODO(b/265346501): add docs\n */\nexport class NavigationTab extends LitElement implements NavigationTabState {\n static {\n requestUpdateOnAriaChange(this);\n }\n\n @property({type: Boolean}) disabled = false;\n @property({type: Boolean, reflect: true}) active = false;\n @property({type: Boolean}) hideInactiveLabel = false;\n @property() label?: string;\n @property() badgeValue = '';\n @property({type: Boolean}) showBadge = false;\n\n @state() protected showFocusRing = false;\n @state() protected showRipple = false;\n\n @query('button') buttonElement!: HTMLElement;\n\n @queryAsync('md-ripple') ripple!: Promise<MdRipple|null>;\n\n override render() {\n // Needed for closure conformance\n const {ariaLabel} = this as ARIAMixinStrict;\n return html`\n <button\n class=\"md3-navigation-tab ${classMap(this.getRenderClasses())}\"\n role=\"tab\"\n aria-selected=\"${this.active}\"\n aria-label=${ariaLabel || nothing}\n tabindex=\"${this.active ? 0 : -1}\"\n @focus=\"${this.handleFocus}\"\n @blur=\"${this.handleBlur}\"\n @pointerdown=\"${this.handlePointerDown}\"\n @click=\"${this.handleClick}\"\n ${ripple(this.getRipple)}>${this.renderFocusRing()}${\n when(this.showRipple, this.renderRipple)}\n <span aria-hidden=\"true\" class=\"md3-navigation-tab__icon-content\"\n ><span class=\"md3-navigation-tab__active-indicator\"\n ></span><span class=\"md3-navigation-tab__icon\"\n ><slot name=\"inactiveIcon\"></slot\n ></span>\n <span class=\"md3-navigation-tab__icon md3-navigation-tab__icon--active\"\n ><slot name=\"activeIcon\"></slot\n ></span>${this.renderBadge()}</span\n >${this.renderLabel()}\n </button>`;\n }\n\n protected getRenderClasses() {\n return {\n 'md3-navigation-tab--hide-inactive-label': this.hideInactiveLabel,\n 'md3-navigation-tab--active': this.active,\n };\n }\n\n protected renderFocusRing() {\n return html`<md-focus-ring .visible=\"${\n this.showFocusRing}\"></md-focus-ring>`;\n }\n\n protected getRipple = () => {\n this.showRipple = true;\n return this.ripple;\n };\n\n protected renderRipple = () => {\n return html`<md-ripple ?disabled=\"${\n this.disabled}\" class=\"md3-navigation-tab__ripple\"></md-ripple>`;\n };\n\n protected renderBadge() {\n return this.showBadge ?\n html`<md-badge .value=\"${this.badgeValue}\"></md-badge>` :\n nothing;\n }\n\n protected renderLabel() {\n // Needed for closure conformance\n const {ariaLabel} = this as ARIAMixinStrict;\n const ariaHidden = ariaLabel ? 'true' : 'false';\n return !this.label ?\n nothing :\n html`\n <span aria-hidden=\"${\n ariaHidden}\" class=\"md3-navigation-tab__label-text\">${\n this.label}</span>`;\n }\n\n override firstUpdated(changedProperties: PropertyValues) {\n super.firstUpdated(changedProperties);\n const event =\n new Event('navigation-tab-rendered', {bubbles: true, composed: true});\n this.dispatchEvent(event);\n }\n\n override focus() {\n const buttonElement = this.buttonElement;\n if (buttonElement) {\n buttonElement.focus();\n }\n }\n\n override blur() {\n const buttonElement = this.buttonElement;\n if (buttonElement) {\n buttonElement.blur();\n }\n }\n\n handleClick() {\n // TODO(b/269772145): connect to ripple\n this.dispatchEvent(new CustomEvent(\n 'navigation-tab-interaction',\n {detail: {state: this}, bubbles: true, composed: true}));\n }\n\n handlePointerDown(e: PointerEvent) {\n pointerPress();\n this.showFocusRing = shouldShowStrongFocus();\n }\n\n protected handleFocus() {\n this.showFocusRing = shouldShowStrongFocus();\n }\n\n protected handleBlur() {\n this.showFocusRing = false;\n }\n}\n"]}
@@ -10,7 +10,6 @@ declare global {
10
10
  }
11
11
  }
12
12
  /**
13
- * @soyCompatible
14
13
  * @final
15
14
  * @suppress {visibility}
16
15
  */
@@ -8,7 +8,6 @@ import { customElement } from 'lit/decorators.js';
8
8
  import { NavigationTab } from './lib/navigation-tab.js';
9
9
  import { styles } from './lib/navigation-tab-styles.css.js';
10
10
  /**
11
- * @soyCompatible
12
11
  * @final
13
12
  * @suppress {visibility}
14
13
  */
@@ -1 +1 @@
1
- {"version":3,"file":"navigation-tab.js","sourceRoot":"","sources":["navigation-tab.ts"],"names":[],"mappings":"AAAA;;;;GAIG;;AAEH,OAAO,EAAC,aAAa,EAAC,MAAM,mBAAmB,CAAC;AAEhD,OAAO,EAAC,aAAa,EAAC,MAAM,yBAAyB,CAAC;AACtD,OAAO,EAAC,MAAM,EAAC,MAAM,oCAAoC,CAAC;AAQ1D;;;;GAIG;AAEI,IAAM,eAAe,GAArB,MAAM,eAAgB,SAAQ,aAAa;;AAChC,sBAAM,GAAG,CAAC,MAAM,CAAC,CAAC;AADvB,eAAe;IAD3B,aAAa,CAAC,mBAAmB,CAAC;GACtB,eAAe,CAE3B;SAFY,eAAe","sourcesContent":["/**\n * @license\n * Copyright 2021 Google LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport {customElement} from 'lit/decorators.js';\n\nimport {NavigationTab} from './lib/navigation-tab.js';\nimport {styles} from './lib/navigation-tab-styles.css.js';\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'md-navigation-tab': MdNavigationTab;\n }\n}\n\n/**\n * @soyCompatible\n * @final\n * @suppress {visibility}\n */\n@customElement('md-navigation-tab')\nexport class MdNavigationTab extends NavigationTab {\n static override styles = [styles];\n}\n"]}
1
+ {"version":3,"file":"navigation-tab.js","sourceRoot":"","sources":["navigation-tab.ts"],"names":[],"mappings":"AAAA;;;;GAIG;;AAEH,OAAO,EAAC,aAAa,EAAC,MAAM,mBAAmB,CAAC;AAEhD,OAAO,EAAC,aAAa,EAAC,MAAM,yBAAyB,CAAC;AACtD,OAAO,EAAC,MAAM,EAAC,MAAM,oCAAoC,CAAC;AAQ1D;;;GAGG;AAEI,IAAM,eAAe,GAArB,MAAM,eAAgB,SAAQ,aAAa;;AAChC,sBAAM,GAAG,CAAC,MAAM,CAAC,CAAC;AADvB,eAAe;IAD3B,aAAa,CAAC,mBAAmB,CAAC;GACtB,eAAe,CAE3B;SAFY,eAAe","sourcesContent":["/**\n * @license\n * Copyright 2021 Google LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport {customElement} from 'lit/decorators.js';\n\nimport {NavigationTab} from './lib/navigation-tab.js';\nimport {styles} from './lib/navigation-tab-styles.css.js';\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'md-navigation-tab': MdNavigationTab;\n }\n}\n\n/**\n * @final\n * @suppress {visibility}\n */\n@customElement('md-navigation-tab')\nexport class MdNavigationTab extends NavigationTab {\n static override styles = [styles];\n}\n"]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@material/web",
3
- "version": "1.0.0-pre.6",
3
+ "version": "1.0.0-pre.7",
4
4
  "publishConfig": {
5
5
  "access": "public"
6
6
  },
@@ -35,7 +35,6 @@ export declare class Radio extends LitElement {
35
35
  * The HTML name to use in form submission.
36
36
  */
37
37
  name: string;
38
- ariaLabel: string;
39
38
  /**
40
39
  * The associated form element with which this element's value will submit.
41
40
  */