@angular/material-experimental 14.0.0-next.2 → 14.0.0-next.5

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 (269) hide show
  1. package/esm2020/column-resize/column-resize-directives/column-resize-flex.mjs +4 -4
  2. package/esm2020/column-resize/column-resize-directives/column-resize.mjs +4 -4
  3. package/esm2020/column-resize/column-resize-directives/default-enabled-column-resize-flex.mjs +4 -4
  4. package/esm2020/column-resize/column-resize-directives/default-enabled-column-resize.mjs +4 -4
  5. package/esm2020/column-resize/column-resize-module.mjs +13 -13
  6. package/esm2020/column-resize/overlay-handle.mjs +4 -4
  7. package/esm2020/column-resize/resizable-directives/default-enabled-resizable.mjs +4 -4
  8. package/esm2020/column-resize/resizable-directives/resizable.mjs +4 -4
  9. package/esm2020/column-resize/resize-strategy.mjs +4 -4
  10. package/esm2020/mdc-autocomplete/autocomplete-origin.mjs +4 -4
  11. package/esm2020/mdc-autocomplete/autocomplete-trigger.mjs +6 -5
  12. package/esm2020/mdc-autocomplete/autocomplete.mjs +4 -4
  13. package/esm2020/mdc-autocomplete/module.mjs +5 -5
  14. package/esm2020/mdc-button/button-base.mjs +7 -7
  15. package/esm2020/mdc-button/button.mjs +7 -7
  16. package/esm2020/mdc-button/fab.mjs +13 -13
  17. package/esm2020/mdc-button/icon-button.mjs +7 -7
  18. package/esm2020/mdc-button/module.mjs +5 -5
  19. package/esm2020/mdc-card/card.mjs +44 -44
  20. package/esm2020/mdc-card/module.mjs +5 -5
  21. package/esm2020/mdc-checkbox/checkbox.mjs +6 -4
  22. package/esm2020/mdc-checkbox/module.mjs +5 -5
  23. package/esm2020/mdc-chips/chip-action.mjs +4 -4
  24. package/esm2020/mdc-chips/chip-edit-input.mjs +4 -4
  25. package/esm2020/mdc-chips/chip-grid.mjs +17 -9
  26. package/esm2020/mdc-chips/chip-icons.mjs +10 -10
  27. package/esm2020/mdc-chips/chip-input.mjs +4 -4
  28. package/esm2020/mdc-chips/chip-listbox.mjs +6 -9
  29. package/esm2020/mdc-chips/chip-option.mjs +4 -4
  30. package/esm2020/mdc-chips/chip-row.mjs +4 -4
  31. package/esm2020/mdc-chips/chip-set.mjs +11 -11
  32. package/esm2020/mdc-chips/chip.mjs +4 -4
  33. package/esm2020/mdc-chips/module.mjs +5 -5
  34. package/esm2020/mdc-chips/testing/public-api.mjs +2 -1
  35. package/esm2020/mdc-core/option/index.mjs +5 -5
  36. package/esm2020/mdc-core/option/optgroup.mjs +4 -4
  37. package/esm2020/mdc-core/option/option.mjs +4 -4
  38. package/esm2020/mdc-dialog/dialog-container.mjs +6 -6
  39. package/esm2020/mdc-dialog/dialog-content-directives.mjs +27 -15
  40. package/esm2020/mdc-dialog/dialog.mjs +4 -4
  41. package/esm2020/mdc-dialog/module.mjs +5 -5
  42. package/esm2020/mdc-form-field/directives/error.mjs +4 -4
  43. package/esm2020/mdc-form-field/directives/floating-label.mjs +5 -10
  44. package/esm2020/mdc-form-field/directives/hint.mjs +4 -4
  45. package/esm2020/mdc-form-field/directives/label.mjs +4 -4
  46. package/esm2020/mdc-form-field/directives/line-ripple.mjs +4 -4
  47. package/esm2020/mdc-form-field/directives/notched-outline.mjs +4 -4
  48. package/esm2020/mdc-form-field/directives/prefix.mjs +4 -4
  49. package/esm2020/mdc-form-field/directives/suffix.mjs +4 -4
  50. package/esm2020/mdc-form-field/form-field.mjs +47 -38
  51. package/esm2020/mdc-form-field/module.mjs +5 -5
  52. package/esm2020/mdc-input/input.mjs +4 -4
  53. package/esm2020/mdc-input/module.mjs +5 -5
  54. package/esm2020/mdc-list/action-list.mjs +5 -5
  55. package/esm2020/mdc-list/interactive-list-base.mjs +4 -4
  56. package/esm2020/mdc-list/list-base.mjs +7 -7
  57. package/esm2020/mdc-list/list-item-sections.mjs +19 -19
  58. package/esm2020/mdc-list/list-option.mjs +4 -4
  59. package/esm2020/mdc-list/list.mjs +20 -8
  60. package/esm2020/mdc-list/module.mjs +5 -5
  61. package/esm2020/mdc-list/nav-list.mjs +4 -4
  62. package/esm2020/mdc-list/selection-list.mjs +4 -4
  63. package/esm2020/mdc-list/subheader.mjs +4 -4
  64. package/esm2020/mdc-menu/directives.mjs +7 -7
  65. package/esm2020/mdc-menu/menu-item.mjs +4 -4
  66. package/esm2020/mdc-menu/menu.mjs +9 -9
  67. package/esm2020/mdc-menu/module.mjs +5 -5
  68. package/esm2020/mdc-paginator/module.mjs +5 -5
  69. package/esm2020/mdc-paginator/paginator.mjs +5 -5
  70. package/esm2020/mdc-paginator/public-api.mjs +1 -1
  71. package/esm2020/mdc-progress-bar/module.mjs +5 -5
  72. package/esm2020/mdc-progress-bar/progress-bar.mjs +5 -5
  73. package/esm2020/mdc-progress-spinner/module.mjs +5 -5
  74. package/esm2020/mdc-progress-spinner/progress-spinner.mjs +7 -4
  75. package/esm2020/mdc-radio/module.mjs +5 -5
  76. package/esm2020/mdc-radio/radio.mjs +7 -7
  77. package/esm2020/mdc-select/module.mjs +5 -5
  78. package/esm2020/mdc-select/select.mjs +9 -9
  79. package/esm2020/mdc-slide-toggle/module.mjs +5 -5
  80. package/esm2020/mdc-slide-toggle/slide-toggle.mjs +4 -4
  81. package/esm2020/mdc-slider/global-change-and-input-listener.mjs +4 -4
  82. package/esm2020/mdc-slider/module.mjs +5 -5
  83. package/esm2020/mdc-slider/slider.mjs +11 -11
  84. package/esm2020/mdc-snack-bar/module.mjs +5 -5
  85. package/esm2020/mdc-snack-bar/simple-snack-bar.mjs +4 -4
  86. package/esm2020/mdc-snack-bar/snack-bar-container.mjs +5 -5
  87. package/esm2020/mdc-snack-bar/snack-bar-content.mjs +10 -10
  88. package/esm2020/mdc-snack-bar/snack-bar.mjs +4 -4
  89. package/esm2020/mdc-table/cell.mjs +22 -22
  90. package/esm2020/mdc-table/module.mjs +5 -5
  91. package/esm2020/mdc-table/row.mjs +22 -22
  92. package/esm2020/mdc-table/table.mjs +9 -9
  93. package/esm2020/mdc-table/text-column.mjs +4 -4
  94. package/esm2020/mdc-tabs/module.mjs +5 -5
  95. package/esm2020/mdc-tabs/tab-body.mjs +7 -7
  96. package/esm2020/mdc-tabs/tab-content.mjs +4 -4
  97. package/esm2020/mdc-tabs/tab-group.mjs +4 -4
  98. package/esm2020/mdc-tabs/tab-header.mjs +5 -5
  99. package/esm2020/mdc-tabs/tab-label-wrapper.mjs +4 -4
  100. package/esm2020/mdc-tabs/tab-label.mjs +4 -4
  101. package/esm2020/mdc-tabs/tab-nav-bar/tab-nav-bar.mjs +11 -11
  102. package/esm2020/mdc-tabs/tab.mjs +4 -4
  103. package/esm2020/mdc-tooltip/module.mjs +5 -5
  104. package/esm2020/mdc-tooltip/tooltip.mjs +9 -8
  105. package/esm2020/menubar/menubar-item.mjs +4 -4
  106. package/esm2020/menubar/menubar-module.mjs +5 -5
  107. package/esm2020/menubar/menubar.mjs +4 -4
  108. package/esm2020/popover-edit/lens-directives.mjs +10 -10
  109. package/esm2020/popover-edit/popover-edit-module.mjs +5 -5
  110. package/esm2020/popover-edit/table-directives.mjs +13 -13
  111. package/esm2020/selection/row-selection.mjs +4 -4
  112. package/esm2020/selection/select-all.mjs +4 -4
  113. package/esm2020/selection/selection-column.mjs +4 -4
  114. package/esm2020/selection/selection-module.mjs +5 -5
  115. package/esm2020/selection/selection-toggle.mjs +4 -4
  116. package/esm2020/selection/selection.mjs +4 -4
  117. package/esm2020/version.mjs +1 -1
  118. package/fesm2015/column-resize.mjs +36 -36
  119. package/fesm2015/column-resize.mjs.map +1 -1
  120. package/fesm2015/material-experimental.mjs +1 -1
  121. package/fesm2015/material-experimental.mjs.map +1 -1
  122. package/fesm2015/mdc-autocomplete.mjs +15 -14
  123. package/fesm2015/mdc-autocomplete.mjs.map +1 -1
  124. package/fesm2015/mdc-button.mjs +34 -34
  125. package/fesm2015/mdc-button.mjs.map +1 -1
  126. package/fesm2015/mdc-card.mjs +47 -47
  127. package/fesm2015/mdc-card.mjs.map +1 -1
  128. package/fesm2015/mdc-checkbox.mjs +9 -7
  129. package/fesm2015/mdc-checkbox.mjs.map +1 -1
  130. package/fesm2015/mdc-chips/testing.mjs +2 -2
  131. package/fesm2015/mdc-chips/testing.mjs.map +1 -1
  132. package/fesm2015/mdc-chips.mjs +61 -57
  133. package/fesm2015/mdc-chips.mjs.map +1 -1
  134. package/fesm2015/mdc-core.mjs +10 -10
  135. package/fesm2015/mdc-core.mjs.map +1 -1
  136. package/fesm2015/mdc-dialog.mjs +38 -26
  137. package/fesm2015/mdc-dialog.mjs.map +1 -1
  138. package/fesm2015/mdc-form-field.mjs +76 -72
  139. package/fesm2015/mdc-form-field.mjs.map +1 -1
  140. package/fesm2015/mdc-input.mjs +7 -7
  141. package/fesm2015/mdc-input.mjs.map +1 -1
  142. package/fesm2015/mdc-list.mjs +64 -53
  143. package/fesm2015/mdc-list.mjs.map +1 -1
  144. package/fesm2015/mdc-menu.mjs +20 -20
  145. package/fesm2015/mdc-menu.mjs.map +1 -1
  146. package/fesm2015/mdc-paginator.mjs +8 -8
  147. package/fesm2015/mdc-paginator.mjs.map +1 -1
  148. package/fesm2015/mdc-progress-bar.mjs +8 -8
  149. package/fesm2015/mdc-progress-bar.mjs.map +1 -1
  150. package/fesm2015/mdc-progress-spinner.mjs +10 -7
  151. package/fesm2015/mdc-progress-spinner.mjs.map +1 -1
  152. package/fesm2015/mdc-radio.mjs +10 -10
  153. package/fesm2015/mdc-radio.mjs.map +1 -1
  154. package/fesm2015/mdc-select.mjs +12 -12
  155. package/fesm2015/mdc-select.mjs.map +1 -1
  156. package/fesm2015/mdc-slide-toggle.mjs +7 -7
  157. package/fesm2015/mdc-slide-toggle.mjs.map +1 -1
  158. package/fesm2015/mdc-slider.mjs +17 -17
  159. package/fesm2015/mdc-slider.mjs.map +1 -1
  160. package/fesm2015/mdc-snack-bar.mjs +23 -23
  161. package/fesm2015/mdc-snack-bar.mjs.map +1 -1
  162. package/fesm2015/mdc-table.mjs +57 -57
  163. package/fesm2015/mdc-table.mjs.map +1 -1
  164. package/fesm2015/mdc-tabs.mjs +39 -39
  165. package/fesm2015/mdc-tabs.mjs.map +1 -1
  166. package/fesm2015/mdc-tooltip.mjs +12 -11
  167. package/fesm2015/mdc-tooltip.mjs.map +1 -1
  168. package/fesm2015/menubar.mjs +10 -10
  169. package/fesm2015/menubar.mjs.map +1 -1
  170. package/fesm2015/popover-edit.mjs +25 -25
  171. package/fesm2015/popover-edit.mjs.map +1 -1
  172. package/fesm2015/selection.mjs +19 -19
  173. package/fesm2015/selection.mjs.map +1 -1
  174. package/fesm2020/column-resize.mjs +36 -36
  175. package/fesm2020/column-resize.mjs.map +1 -1
  176. package/fesm2020/material-experimental.mjs +1 -1
  177. package/fesm2020/material-experimental.mjs.map +1 -1
  178. package/fesm2020/mdc-autocomplete.mjs +15 -14
  179. package/fesm2020/mdc-autocomplete.mjs.map +1 -1
  180. package/fesm2020/mdc-button.mjs +34 -34
  181. package/fesm2020/mdc-button.mjs.map +1 -1
  182. package/fesm2020/mdc-card.mjs +47 -47
  183. package/fesm2020/mdc-card.mjs.map +1 -1
  184. package/fesm2020/mdc-checkbox.mjs +9 -7
  185. package/fesm2020/mdc-checkbox.mjs.map +1 -1
  186. package/fesm2020/mdc-chips/testing.mjs +1 -1
  187. package/fesm2020/mdc-chips/testing.mjs.map +1 -1
  188. package/fesm2020/mdc-chips.mjs +61 -57
  189. package/fesm2020/mdc-chips.mjs.map +1 -1
  190. package/fesm2020/mdc-core.mjs +10 -10
  191. package/fesm2020/mdc-core.mjs.map +1 -1
  192. package/fesm2020/mdc-dialog.mjs +38 -26
  193. package/fesm2020/mdc-dialog.mjs.map +1 -1
  194. package/fesm2020/mdc-form-field.mjs +75 -71
  195. package/fesm2020/mdc-form-field.mjs.map +1 -1
  196. package/fesm2020/mdc-input.mjs +7 -7
  197. package/fesm2020/mdc-input.mjs.map +1 -1
  198. package/fesm2020/mdc-list.mjs +64 -53
  199. package/fesm2020/mdc-list.mjs.map +1 -1
  200. package/fesm2020/mdc-menu.mjs +20 -20
  201. package/fesm2020/mdc-menu.mjs.map +1 -1
  202. package/fesm2020/mdc-paginator.mjs +8 -8
  203. package/fesm2020/mdc-paginator.mjs.map +1 -1
  204. package/fesm2020/mdc-progress-bar.mjs +8 -8
  205. package/fesm2020/mdc-progress-bar.mjs.map +1 -1
  206. package/fesm2020/mdc-progress-spinner.mjs +10 -7
  207. package/fesm2020/mdc-progress-spinner.mjs.map +1 -1
  208. package/fesm2020/mdc-radio.mjs +10 -10
  209. package/fesm2020/mdc-radio.mjs.map +1 -1
  210. package/fesm2020/mdc-select.mjs +12 -12
  211. package/fesm2020/mdc-select.mjs.map +1 -1
  212. package/fesm2020/mdc-slide-toggle.mjs +7 -7
  213. package/fesm2020/mdc-slide-toggle.mjs.map +1 -1
  214. package/fesm2020/mdc-slider.mjs +17 -17
  215. package/fesm2020/mdc-slider.mjs.map +1 -1
  216. package/fesm2020/mdc-snack-bar.mjs +23 -23
  217. package/fesm2020/mdc-snack-bar.mjs.map +1 -1
  218. package/fesm2020/mdc-table.mjs +57 -57
  219. package/fesm2020/mdc-table.mjs.map +1 -1
  220. package/fesm2020/mdc-tabs.mjs +39 -39
  221. package/fesm2020/mdc-tabs.mjs.map +1 -1
  222. package/fesm2020/mdc-tooltip.mjs +12 -11
  223. package/fesm2020/mdc-tooltip.mjs.map +1 -1
  224. package/fesm2020/menubar.mjs +10 -10
  225. package/fesm2020/menubar.mjs.map +1 -1
  226. package/fesm2020/popover-edit.mjs +25 -25
  227. package/fesm2020/popover-edit.mjs.map +1 -1
  228. package/fesm2020/selection.mjs +19 -19
  229. package/fesm2020/selection.mjs.map +1 -1
  230. package/mdc-button/_button-theme.scss +5 -2
  231. package/mdc-button/_icon-button-theme.scss +2 -1
  232. package/mdc-chips/chip-grid.d.ts +18 -5
  233. package/mdc-chips/chip-listbox.d.ts +1 -2
  234. package/mdc-chips/chip-set.d.ts +3 -1
  235. package/mdc-chips/testing/public-api.d.ts +1 -0
  236. package/mdc-dialog/dialog-content-directives.d.ts +5 -1
  237. package/mdc-form-field/_form-field-density.scss +2 -2
  238. package/mdc-form-field/_form-field-high-contrast.scss +14 -5
  239. package/mdc-form-field/_form-field-theme.scss +1 -1
  240. package/mdc-form-field/_mdc-text-field-structure-overrides.scss +2 -2
  241. package/mdc-form-field/directives/floating-label.d.ts +1 -3
  242. package/mdc-form-field/form-field.d.ts +17 -8
  243. package/mdc-list/_list-theme.scss +9 -0
  244. package/mdc-list/list.d.ts +5 -1
  245. package/mdc-menu/menu.d.ts +1 -1
  246. package/mdc-paginator/public-api.d.ts +1 -1
  247. package/mdc-select/_select-theme.scss +1 -1
  248. package/mdc-table/_table-theme.scss +2 -9
  249. package/mdc-tabs/_tabs-common.scss +9 -0
  250. package/mdc-theming/prebuilt/deeppurple-amber.css +1 -1
  251. package/mdc-theming/prebuilt/indigo-pink.css +1 -1
  252. package/mdc-theming/prebuilt/pink-bluegrey.css +1 -1
  253. package/mdc-theming/prebuilt/purple-green.css +1 -1
  254. package/package.json +8 -16
  255. package/esm2020/mdc-sidenav/index.mjs +0 -9
  256. package/esm2020/mdc-sidenav/mdc-sidenav_public_index.mjs +0 -5
  257. package/esm2020/mdc-sidenav/module.mjs +0 -23
  258. package/esm2020/mdc-sidenav/public-api.mjs +0 -9
  259. package/fesm2015/mdc-sidenav.mjs +0 -46
  260. package/fesm2015/mdc-sidenav.mjs.map +0 -1
  261. package/fesm2020/mdc-sidenav.mjs +0 -46
  262. package/fesm2020/mdc-sidenav.mjs.map +0 -1
  263. package/mdc-sidenav/_sidenav-theme.import.scss +0 -5
  264. package/mdc-sidenav/_sidenav-theme.scss +0 -28
  265. package/mdc-sidenav/index.d.ts +0 -8
  266. package/mdc-sidenav/mdc-sidenav_public_index.d.ts +0 -4
  267. package/mdc-sidenav/module.d.ts +0 -7
  268. package/mdc-sidenav/package.json +0 -9
  269. package/mdc-sidenav/public-api.d.ts +0 -8
@@ -1 +1 @@
1
- {"version":3,"file":"mdc-progress-bar.mjs","sources":["../../../../../../src/material-experimental/mdc-progress-bar/progress-bar.ts","../../../../../../src/material-experimental/mdc-progress-bar/progress-bar.html","../../../../../../src/material-experimental/mdc-progress-bar/module.ts","../../../../../../src/material-experimental/mdc-progress-bar/public-api.ts","../../../../../../src/material-experimental/mdc-progress-bar/index.ts","../../../../../../src/material-experimental/mdc-progress-bar/mdc-progress-bar_public_index.ts"],"sourcesContent":["/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nimport {\n ChangeDetectionStrategy,\n Component,\n ViewEncapsulation,\n ElementRef,\n NgZone,\n Optional,\n Inject,\n Input,\n Output,\n EventEmitter,\n AfterViewInit,\n OnDestroy,\n} from '@angular/core';\nimport {CanColor, mixinColor} from '@angular/material-experimental/mdc-core';\nimport {ANIMATION_MODULE_TYPE} from '@angular/platform-browser/animations';\nimport {\n MatProgressBarDefaultOptions,\n MAT_PROGRESS_BAR_DEFAULT_OPTIONS,\n ProgressAnimationEnd,\n} from '@angular/material/progress-bar';\nimport {\n MDCLinearProgressAdapter,\n MDCLinearProgressFoundation,\n WithMDCResizeObserver,\n} from '@material/linear-progress';\nimport {Subscription, fromEvent, Observable} from 'rxjs';\nimport {filter} from 'rxjs/operators';\nimport {Directionality} from '@angular/cdk/bidi';\n\n// Boilerplate for applying mixins to MatProgressBar.\n/** @docs-private */\nconst _MatProgressBarBase = mixinColor(\n class {\n constructor(public _elementRef: ElementRef) {}\n },\n 'primary',\n);\n\nexport type ProgressBarMode = 'determinate' | 'indeterminate' | 'buffer' | 'query';\n\n@Component({\n selector: 'mat-progress-bar',\n exportAs: 'matProgressBar',\n host: {\n 'role': 'progressbar',\n 'aria-valuemin': '0',\n 'aria-valuemax': '100',\n // set tab index to -1 so screen readers will read the aria-label\n // Note: there is a known issue with JAWS that does not read progressbar aria labels on FireFox\n 'tabindex': '-1',\n '[attr.aria-valuenow]': '(mode === \"indeterminate\" || mode === \"query\") ? null : value',\n '[attr.mode]': 'mode',\n 'class': 'mat-mdc-progress-bar mdc-linear-progress',\n '[class._mat-animation-noopable]': '_isNoopAnimation',\n },\n inputs: ['color'],\n templateUrl: 'progress-bar.html',\n styleUrls: ['progress-bar.css'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n})\nexport class MatProgressBar\n extends _MatProgressBarBase\n implements AfterViewInit, OnDestroy, CanColor\n{\n constructor(\n elementRef: ElementRef<HTMLElement>,\n private _ngZone: NgZone,\n @Optional() dir?: Directionality,\n @Optional() @Inject(ANIMATION_MODULE_TYPE) public _animationMode?: string,\n @Optional()\n @Inject(MAT_PROGRESS_BAR_DEFAULT_OPTIONS)\n defaults?: MatProgressBarDefaultOptions,\n ) {\n super(elementRef);\n this._isNoopAnimation = _animationMode === 'NoopAnimations';\n if (dir) {\n this._dirChangeSubscription = dir.change.subscribe(() => {\n this._syncFoundation();\n this._foundation?.restartAnimation();\n });\n }\n\n if (defaults) {\n if (defaults.color) {\n this.color = this.defaultColor = defaults.color;\n }\n\n this.mode = defaults.mode || this.mode;\n }\n }\n\n /** Implements all of the logic of the MDC progress bar. */\n private _foundation: MDCLinearProgressFoundation | undefined;\n\n /** Adapter used by MDC to interact with the DOM. */\n private _adapter: MDCLinearProgressAdapter = {\n addClass: (className: string) => this._elementRef.nativeElement.classList.add(className),\n forceLayout: () => this._elementRef.nativeElement.offsetWidth,\n removeAttribute: (name: string) => this._elementRef.nativeElement.removeAttribute(name),\n setAttribute: (name: string, value: string) => {\n if (name !== 'aria-valuenow') {\n this._elementRef.nativeElement.setAttribute(name, value);\n }\n },\n hasClass: (className: string) => this._elementRef.nativeElement.classList.contains(className),\n removeClass: (className: string) => this._elementRef.nativeElement.classList.remove(className),\n setPrimaryBarStyle: (styleProperty: string, value: string) => {\n (this._primaryBar.style as any)[styleProperty] = value;\n },\n setBufferBarStyle: (styleProperty: string, value: string) => {\n (this._bufferBar.style as any)[styleProperty] = value;\n },\n setStyle: (styleProperty: string, value: string) => {\n (this._elementRef.nativeElement.style as any)[styleProperty] = value;\n },\n getWidth: () => this._elementRef.nativeElement.offsetWidth,\n attachResizeObserver: callback => {\n const resizeObserverConstructor =\n typeof window !== 'undefined' &&\n (window as unknown as WithMDCResizeObserver).ResizeObserver;\n\n if (resizeObserverConstructor) {\n return this._ngZone.runOutsideAngular(() => {\n const observer = new resizeObserverConstructor(callback);\n\n // Internal client users found production errors where `observe` was not a function\n // on the constructed `observer`. This should not happen, but adding this check for this\n // edge case.\n if (typeof observer.observe === 'function') {\n observer.observe(this._elementRef.nativeElement);\n return observer;\n }\n\n return null;\n });\n }\n\n return null;\n },\n };\n\n /** Flag that indicates whether NoopAnimations mode is set to true. */\n _isNoopAnimation = false;\n\n /** Value of the progress bar. Defaults to zero. Mirrored to aria-valuenow. */\n @Input()\n get value(): number {\n return this._value;\n }\n set value(v: number) {\n this._value = clamp(v || 0);\n this._syncFoundation();\n }\n private _value = 0;\n\n /** Buffer value of the progress bar. Defaults to zero. */\n @Input()\n get bufferValue(): number {\n return this._bufferValue || 0;\n }\n set bufferValue(v: number) {\n this._bufferValue = clamp(v || 0);\n this._syncFoundation();\n }\n private _bufferValue = 0;\n\n private _primaryBar: HTMLElement;\n private _bufferBar: HTMLElement;\n\n /**\n * Event emitted when animation of the primary progress bar completes. This event will not\n * be emitted when animations are disabled, nor will it be emitted for modes with continuous\n * animations (indeterminate and query).\n */\n @Output() readonly animationEnd = new EventEmitter<ProgressAnimationEnd>();\n\n /** Reference to animation end subscription to be unsubscribed on destroy. */\n private _animationEndSubscription = Subscription.EMPTY;\n\n /** Subscription to when the layout direction changes. */\n private _dirChangeSubscription = Subscription.EMPTY;\n\n /**\n * Mode of the progress bar.\n *\n * Input must be one of these values: determinate, indeterminate, buffer, query, defaults to\n * 'determinate'.\n * Mirrored to mode attribute.\n */\n @Input()\n get mode(): ProgressBarMode {\n return this._mode;\n }\n set mode(value: ProgressBarMode) {\n // Note that we don't technically need a getter and a setter here,\n // but we use it to match the behavior of the existing mat-progress-bar.\n this._mode = value;\n this._syncFoundation();\n }\n private _mode: ProgressBarMode = 'determinate';\n\n ngAfterViewInit() {\n const element = this._elementRef.nativeElement;\n\n this._primaryBar = element.querySelector('.mdc-linear-progress__primary-bar') as HTMLElement;\n this._bufferBar = element.querySelector('.mdc-linear-progress__buffer-bar') as HTMLElement;\n\n this._foundation = new MDCLinearProgressFoundation(this._adapter);\n this._foundation.init();\n this._syncFoundation();\n\n // Run outside angular so change detection didn't get triggered on every transition end\n // instead only on the animation that we care about (primary value bar's transitionend)\n this._ngZone.runOutsideAngular(() => {\n this._animationEndSubscription = (\n fromEvent(this._primaryBar, 'transitionend') as Observable<TransitionEvent>\n )\n .pipe(filter((e: TransitionEvent) => e.target === this._primaryBar))\n .subscribe(() => {\n if (this.mode === 'determinate' || this.mode === 'buffer') {\n this._ngZone.run(() => this.animationEnd.next({value: this.value}));\n }\n });\n });\n }\n\n ngOnDestroy() {\n if (this._foundation) {\n this._foundation.destroy();\n }\n this._animationEndSubscription.unsubscribe();\n this._dirChangeSubscription.unsubscribe();\n }\n\n /** Syncs the state of the progress bar with the MDC foundation. */\n private _syncFoundation() {\n const foundation = this._foundation;\n\n if (foundation) {\n const mode = this.mode;\n foundation.setDeterminate(mode !== 'indeterminate' && mode !== 'query');\n\n // Divide by 100 because MDC deals with values between 0 and 1.\n foundation.setProgress(this.value / 100);\n\n if (mode === 'buffer') {\n foundation.setBuffer(this.bufferValue / 100);\n }\n }\n }\n}\n\n/** Clamps a value to be between two numbers, by default 0 and 100. */\nfunction clamp(v: number, min = 0, max = 100) {\n return Math.max(min, Math.min(max, v));\n}\n","<!--\n All children need to be hidden for screen readers in order to support ChromeVox.\n More context in the issue: https://github.com/angular/components/issues/22165.\n-->\n<div class=\"mdc-linear-progress__buffer\" aria-hidden=\"true\">\n <div class=\"mdc-linear-progress__buffer-bar\"></div>\n <div class=\"mdc-linear-progress__buffer-dots\"></div>\n</div>\n<div class=\"mdc-linear-progress__bar mdc-linear-progress__primary-bar\" aria-hidden=\"true\">\n <span class=\"mdc-linear-progress__bar-inner\"></span>\n</div>\n<div class=\"mdc-linear-progress__bar mdc-linear-progress__secondary-bar\" aria-hidden=\"true\">\n <span class=\"mdc-linear-progress__bar-inner\"></span>\n</div>\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nimport {NgModule} from '@angular/core';\nimport {MatCommonModule} from '@angular/material-experimental/mdc-core';\nimport {MatProgressBar} from './progress-bar';\n\n@NgModule({\n exports: [MatProgressBar, MatCommonModule],\n declarations: [MatProgressBar],\n})\nexport class MatProgressBarModule {}\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nexport * from './progress-bar';\nexport * from './module';\n\nexport {\n ProgressAnimationEnd,\n MAT_PROGRESS_BAR_LOCATION,\n MatProgressBarLocation,\n MAT_PROGRESS_BAR_LOCATION_FACTORY,\n MAT_PROGRESS_BAR_DEFAULT_OPTIONS,\n MatProgressBarDefaultOptions,\n} from '@angular/material/progress-bar';\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nexport * from './public-api';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mdc-progress-bar.mjs","sources":["../../../../../../src/material-experimental/mdc-progress-bar/progress-bar.ts","../../../../../../src/material-experimental/mdc-progress-bar/progress-bar.html","../../../../../../src/material-experimental/mdc-progress-bar/module.ts","../../../../../../src/material-experimental/mdc-progress-bar/public-api.ts","../../../../../../src/material-experimental/mdc-progress-bar/index.ts","../../../../../../src/material-experimental/mdc-progress-bar/mdc-progress-bar_public_index.ts"],"sourcesContent":["/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nimport {\n ChangeDetectionStrategy,\n Component,\n ViewEncapsulation,\n ElementRef,\n NgZone,\n Optional,\n Inject,\n Input,\n Output,\n EventEmitter,\n AfterViewInit,\n OnDestroy,\n} from '@angular/core';\nimport {CanColor, mixinColor} from '@angular/material-experimental/mdc-core';\nimport {ANIMATION_MODULE_TYPE} from '@angular/platform-browser/animations';\nimport {\n MatProgressBarDefaultOptions,\n MAT_PROGRESS_BAR_DEFAULT_OPTIONS,\n ProgressAnimationEnd,\n} from '@angular/material/progress-bar';\nimport {\n MDCLinearProgressAdapter,\n MDCLinearProgressFoundation,\n WithMDCResizeObserver,\n} from '@material/linear-progress';\nimport {Subscription, fromEvent, Observable} from 'rxjs';\nimport {filter} from 'rxjs/operators';\nimport {Directionality} from '@angular/cdk/bidi';\n\n// Boilerplate for applying mixins to MatProgressBar.\n/** @docs-private */\nconst _MatProgressBarBase = mixinColor(\n class {\n constructor(public _elementRef: ElementRef) {}\n },\n 'primary',\n);\n\nexport type ProgressBarMode = 'determinate' | 'indeterminate' | 'buffer' | 'query';\n\n@Component({\n selector: 'mat-progress-bar',\n exportAs: 'matProgressBar',\n host: {\n 'role': 'progressbar',\n 'aria-valuemin': '0',\n 'aria-valuemax': '100',\n // set tab index to -1 so screen readers will read the aria-label\n // Note: there is a known issue with JAWS that does not read progressbar aria labels on FireFox\n 'tabindex': '-1',\n '[attr.aria-valuenow]': '(mode === \"indeterminate\" || mode === \"query\") ? null : value',\n '[attr.mode]': 'mode',\n 'class': 'mat-mdc-progress-bar mdc-linear-progress',\n '[class._mat-animation-noopable]': '_isNoopAnimation',\n },\n inputs: ['color'],\n templateUrl: 'progress-bar.html',\n styleUrls: ['progress-bar.css'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n})\nexport class MatProgressBar\n extends _MatProgressBarBase\n implements AfterViewInit, OnDestroy, CanColor\n{\n constructor(\n elementRef: ElementRef<HTMLElement>,\n private _ngZone: NgZone,\n @Optional() dir?: Directionality,\n @Optional() @Inject(ANIMATION_MODULE_TYPE) public _animationMode?: string,\n @Optional()\n @Inject(MAT_PROGRESS_BAR_DEFAULT_OPTIONS)\n defaults?: MatProgressBarDefaultOptions,\n ) {\n super(elementRef);\n this._isNoopAnimation = _animationMode === 'NoopAnimations';\n if (dir) {\n this._dirChangeSubscription = dir.change.subscribe(() => {\n this._syncFoundation();\n this._foundation?.restartAnimation();\n });\n }\n\n if (defaults) {\n if (defaults.color) {\n this.color = this.defaultColor = defaults.color;\n }\n\n this.mode = defaults.mode || this.mode;\n }\n }\n\n /** Implements all of the logic of the MDC progress bar. */\n private _foundation: MDCLinearProgressFoundation | undefined;\n\n /** Adapter used by MDC to interact with the DOM. */\n private _adapter: MDCLinearProgressAdapter = {\n addClass: (className: string) => this._elementRef.nativeElement.classList.add(className),\n forceLayout: () => this._elementRef.nativeElement.offsetWidth,\n removeAttribute: (name: string) => this._elementRef.nativeElement.removeAttribute(name),\n setAttribute: (name: string, value: string) => {\n if (name !== 'aria-valuenow') {\n this._elementRef.nativeElement.setAttribute(name, value);\n }\n },\n hasClass: (className: string) => this._elementRef.nativeElement.classList.contains(className),\n removeClass: (className: string) => this._elementRef.nativeElement.classList.remove(className),\n setPrimaryBarStyle: (styleProperty: string, value: string) => {\n (this._primaryBar.style as any)[styleProperty] = value;\n },\n setBufferBarStyle: (styleProperty: string, value: string) => {\n (this._bufferBar.style as any)[styleProperty] = value;\n },\n setStyle: (styleProperty: string, value: string) => {\n (this._elementRef.nativeElement.style as any)[styleProperty] = value;\n },\n getWidth: () => this._elementRef.nativeElement.offsetWidth,\n attachResizeObserver: callback => {\n const resizeObserverConstructor =\n typeof window !== 'undefined' &&\n (window as unknown as WithMDCResizeObserver).ResizeObserver;\n\n if (resizeObserverConstructor) {\n return this._ngZone.runOutsideAngular(() => {\n const observer = new resizeObserverConstructor(callback);\n\n // Internal client users found production errors where `observe` was not a function\n // on the constructed `observer`. This should not happen, but adding this check for this\n // edge case.\n if (typeof observer.observe === 'function') {\n observer.observe(this._elementRef.nativeElement);\n return observer;\n }\n\n return null;\n });\n }\n\n return null;\n },\n };\n\n /** Flag that indicates whether NoopAnimations mode is set to true. */\n _isNoopAnimation = false;\n\n /** Value of the progress bar. Defaults to zero. Mirrored to aria-valuenow. */\n @Input()\n get value(): number {\n return this._value;\n }\n set value(v: number) {\n this._value = clamp(v || 0);\n this._syncFoundation();\n }\n private _value = 0;\n\n /** Buffer value of the progress bar. Defaults to zero. */\n @Input()\n get bufferValue(): number {\n return this._bufferValue || 0;\n }\n set bufferValue(v: number) {\n this._bufferValue = clamp(v || 0);\n this._syncFoundation();\n }\n private _bufferValue = 0;\n\n private _primaryBar: HTMLElement;\n private _bufferBar: HTMLElement;\n\n /**\n * Event emitted when animation of the primary progress bar completes. This event will not\n * be emitted when animations are disabled, nor will it be emitted for modes with continuous\n * animations (indeterminate and query).\n */\n @Output() readonly animationEnd = new EventEmitter<ProgressAnimationEnd>();\n\n /** Reference to animation end subscription to be unsubscribed on destroy. */\n private _animationEndSubscription = Subscription.EMPTY;\n\n /** Subscription to when the layout direction changes. */\n private _dirChangeSubscription = Subscription.EMPTY;\n\n /**\n * Mode of the progress bar.\n *\n * Input must be one of these values: determinate, indeterminate, buffer, query, defaults to\n * 'determinate'.\n * Mirrored to mode attribute.\n */\n @Input()\n get mode(): ProgressBarMode {\n return this._mode;\n }\n set mode(value: ProgressBarMode) {\n // Note that we don't technically need a getter and a setter here,\n // but we use it to match the behavior of the existing mat-progress-bar.\n this._mode = value;\n this._syncFoundation();\n }\n private _mode: ProgressBarMode = 'determinate';\n\n ngAfterViewInit() {\n const element = this._elementRef.nativeElement;\n\n this._primaryBar = element.querySelector('.mdc-linear-progress__primary-bar') as HTMLElement;\n this._bufferBar = element.querySelector('.mdc-linear-progress__buffer-bar') as HTMLElement;\n\n this._foundation = new MDCLinearProgressFoundation(this._adapter);\n this._foundation.init();\n this._syncFoundation();\n\n // Run outside angular so change detection didn't get triggered on every transition end\n // instead only on the animation that we care about (primary value bar's transitionend)\n this._ngZone.runOutsideAngular(() => {\n this._animationEndSubscription = (\n fromEvent(this._primaryBar, 'transitionend') as Observable<TransitionEvent>\n )\n .pipe(filter((e: TransitionEvent) => e.target === this._primaryBar))\n .subscribe(() => {\n if (this.mode === 'determinate' || this.mode === 'buffer') {\n this._ngZone.run(() => this.animationEnd.next({value: this.value}));\n }\n });\n });\n }\n\n ngOnDestroy() {\n if (this._foundation) {\n this._foundation.destroy();\n }\n this._animationEndSubscription.unsubscribe();\n this._dirChangeSubscription.unsubscribe();\n }\n\n /** Syncs the state of the progress bar with the MDC foundation. */\n private _syncFoundation() {\n const foundation = this._foundation;\n\n if (foundation) {\n const mode = this.mode;\n foundation.setDeterminate(mode !== 'indeterminate' && mode !== 'query');\n\n // Divide by 100 because MDC deals with values between 0 and 1.\n foundation.setProgress(this.value / 100);\n\n if (mode === 'buffer') {\n foundation.setBuffer(this.bufferValue / 100);\n }\n }\n }\n}\n\n/** Clamps a value to be between two numbers, by default 0 and 100. */\nfunction clamp(v: number, min = 0, max = 100) {\n return Math.max(min, Math.min(max, v));\n}\n","<!--\n All children need to be hidden for screen readers in order to support ChromeVox.\n More context in the issue: https://github.com/angular/components/issues/22165.\n-->\n<div class=\"mdc-linear-progress__buffer\" aria-hidden=\"true\">\n <div class=\"mdc-linear-progress__buffer-bar\"></div>\n <div class=\"mdc-linear-progress__buffer-dots\"></div>\n</div>\n<div class=\"mdc-linear-progress__bar mdc-linear-progress__primary-bar\" aria-hidden=\"true\">\n <span class=\"mdc-linear-progress__bar-inner\"></span>\n</div>\n<div class=\"mdc-linear-progress__bar mdc-linear-progress__secondary-bar\" aria-hidden=\"true\">\n <span class=\"mdc-linear-progress__bar-inner\"></span>\n</div>\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nimport {NgModule} from '@angular/core';\nimport {MatCommonModule} from '@angular/material-experimental/mdc-core';\nimport {MatProgressBar} from './progress-bar';\n\n@NgModule({\n exports: [MatProgressBar, MatCommonModule],\n declarations: [MatProgressBar],\n})\nexport class MatProgressBarModule {}\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nexport * from './progress-bar';\nexport * from './module';\n\nexport {\n ProgressAnimationEnd,\n MAT_PROGRESS_BAR_LOCATION,\n MatProgressBarLocation,\n MAT_PROGRESS_BAR_LOCATION_FACTORY,\n MAT_PROGRESS_BAR_DEFAULT_OPTIONS,\n MatProgressBarDefaultOptions,\n} from '@angular/material/progress-bar';\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nexport * from './public-api';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -60,6 +60,9 @@ class MatProgressSpinner extends _MatProgressSpinnerBase {
60
60
  this._noopAnimations =
61
61
  animationMode === 'NoopAnimations' && !!defaults && !defaults._forceAnimations;
62
62
  if (defaults) {
63
+ if (defaults.color) {
64
+ this.color = this.defaultColor = defaults.color;
65
+ }
63
66
  if (defaults.diameter) {
64
67
  this.diameter = defaults.diameter;
65
68
  }
@@ -150,9 +153,9 @@ class MatProgressSpinner extends _MatProgressSpinnerBase {
150
153
  }
151
154
  }
152
155
  }
153
- MatProgressSpinner.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: MatProgressSpinner, deps: [{ token: i0.ElementRef }, { token: ANIMATION_MODULE_TYPE, optional: true }, { token: MAT_PROGRESS_SPINNER_DEFAULT_OPTIONS }], target: i0.ɵɵFactoryTarget.Component });
154
- MatProgressSpinner.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.0", type: MatProgressSpinner, selector: "mat-progress-spinner, mat-spinner", inputs: { color: "color", mode: "mode", value: "value", diameter: "diameter", strokeWidth: "strokeWidth" }, host: { attributes: { "role": "progressbar", "tabindex": "-1" }, properties: { "class._mat-animation-noopable": "_noopAnimations", "style.width.px": "diameter", "style.height.px": "diameter", "attr.aria-valuemin": "0", "attr.aria-valuemax": "100", "attr.aria-valuenow": "mode === \"determinate\" ? value : null", "attr.mode": "mode" }, classAttribute: "mat-mdc-progress-spinner mdc-circular-progress" }, viewQueries: [{ propertyName: "_determinateCircle", first: true, predicate: ["determinateSpinner"], descendants: true }], exportAs: ["matProgressSpinner"], usesInheritance: true, ngImport: i0, template: "<ng-template #circle>\n <svg [attr.viewBox]=\"_viewBox()\" class=\"mdc-circular-progress__indeterminate-circle-graphic\"\n xmlns=\"http://www.w3.org/2000/svg\" focusable=\"false\">\n <circle [attr.r]=\"_circleRadius()\"\n [style.stroke-dasharray.px]=\"_strokeCircumference()\"\n [style.stroke-dashoffset.px]=\"_strokeCircumference() / 2\"\n [style.stroke-width.%]=\"_circleStrokeWidth()\"\n cx=\"50%\" cy=\"50%\"/>\n </svg>\n</ng-template>\n\n<!--\n All children need to be hidden for screen readers in order to support ChromeVox.\n More context in the issue: https://github.com/angular/components/issues/22165.\n-->\n<div class=\"mdc-circular-progress__determinate-container\" aria-hidden=\"true\" #determinateSpinner>\n <svg [attr.viewBox]=\"_viewBox()\" class=\"mdc-circular-progress__determinate-circle-graphic\"\n xmlns=\"http://www.w3.org/2000/svg\" focusable=\"false\">\n <circle [attr.r]=\"_circleRadius()\"\n [style.stroke-dasharray.px]=\"_strokeCircumference()\"\n [style.stroke-dashoffset.px]=\"_strokeDashOffset()\"\n [style.stroke-width.%]=\"_circleStrokeWidth()\"\n class=\"mdc-circular-progress__determinate-circle\"\n cx=\"50%\" cy=\"50%\"/>\n </svg>\n</div>\n<!--TODO: figure out why there are 3 separate svgs-->\n<div class=\"mdc-circular-progress__indeterminate-container\" aria-hidden=\"true\">\n <div class=\"mdc-circular-progress__spinner-layer\">\n <div class=\"mdc-circular-progress__circle-clipper mdc-circular-progress__circle-left\">\n <ng-container [ngTemplateOutlet]=\"circle\"></ng-container>\n </div>\n <div class=\"mdc-circular-progress__gap-patch\">\n <ng-container [ngTemplateOutlet]=\"circle\"></ng-container>\n </div>\n <div class=\"mdc-circular-progress__circle-clipper mdc-circular-progress__circle-right\">\n <ng-container [ngTemplateOutlet]=\"circle\"></ng-container>\n </div>\n </div>\n</div>\n", styles: ["@keyframes mdc-circular-progress-container-rotate{to{transform:rotate(360deg)}}@keyframes mdc-circular-progress-spinner-layer-rotate{12.5%{transform:rotate(135deg)}25%{transform:rotate(270deg)}37.5%{transform:rotate(405deg)}50%{transform:rotate(540deg)}62.5%{transform:rotate(675deg)}75%{transform:rotate(810deg)}87.5%{transform:rotate(945deg)}100%{transform:rotate(1080deg)}}@keyframes mdc-circular-progress-color-1-fade-in-out{from{opacity:.99}25%{opacity:.99}26%{opacity:0}89%{opacity:0}90%{opacity:.99}to{opacity:.99}}@keyframes mdc-circular-progress-color-2-fade-in-out{from{opacity:0}15%{opacity:0}25%{opacity:.99}50%{opacity:.99}51%{opacity:0}to{opacity:0}}@keyframes mdc-circular-progress-color-3-fade-in-out{from{opacity:0}40%{opacity:0}50%{opacity:.99}75%{opacity:.99}76%{opacity:0}to{opacity:0}}@keyframes mdc-circular-progress-color-4-fade-in-out{from{opacity:0}65%{opacity:0}75%{opacity:.99}90%{opacity:.99}to{opacity:0}}@keyframes mdc-circular-progress-left-spin{from{transform:rotate(265deg)}50%{transform:rotate(130deg)}to{transform:rotate(265deg)}}@keyframes mdc-circular-progress-right-spin{from{transform:rotate(-265deg)}50%{transform:rotate(-130deg)}to{transform:rotate(-265deg)}}.mdc-circular-progress{display:inline-flex;position:relative;direction:ltr;line-height:0;transition:opacity 250ms 0ms cubic-bezier(0.4, 0, 0.6, 1)}.mdc-circular-progress__determinate-container,.mdc-circular-progress__indeterminate-circle-graphic,.mdc-circular-progress__indeterminate-container,.mdc-circular-progress__spinner-layer{position:absolute;width:100%;height:100%}.mdc-circular-progress__determinate-container{transform:rotate(-90deg)}.mdc-circular-progress__indeterminate-container{font-size:0;letter-spacing:0;white-space:nowrap;opacity:0}.mdc-circular-progress__determinate-circle-graphic,.mdc-circular-progress__indeterminate-circle-graphic{fill:transparent}.mdc-circular-progress__determinate-circle{transition:stroke-dashoffset 500ms 0ms cubic-bezier(0, 0, 0.2, 1)}.mdc-circular-progress__gap-patch{position:absolute;top:0;left:47.5%;box-sizing:border-box;width:5%;height:100%;overflow:hidden}.mdc-circular-progress__gap-patch .mdc-circular-progress__indeterminate-circle-graphic{left:-900%;width:2000%;transform:rotate(180deg)}.mdc-circular-progress__circle-clipper{display:inline-flex;position:relative;width:50%;height:100%;overflow:hidden}.mdc-circular-progress__circle-clipper .mdc-circular-progress__indeterminate-circle-graphic{width:200%}.mdc-circular-progress__circle-right .mdc-circular-progress__indeterminate-circle-graphic{left:-100%}.mdc-circular-progress--indeterminate .mdc-circular-progress__determinate-container{opacity:0}.mdc-circular-progress--indeterminate .mdc-circular-progress__indeterminate-container{opacity:1}.mdc-circular-progress--indeterminate .mdc-circular-progress__indeterminate-container{animation:mdc-circular-progress-container-rotate 1568.2352941176ms linear infinite}.mdc-circular-progress--indeterminate .mdc-circular-progress__spinner-layer{animation:mdc-circular-progress-spinner-layer-rotate 5332ms cubic-bezier(0.4, 0, 0.2, 1) infinite both}.mdc-circular-progress--indeterminate .mdc-circular-progress__color-1{animation:mdc-circular-progress-spinner-layer-rotate 5332ms cubic-bezier(0.4, 0, 0.2, 1) infinite both,mdc-circular-progress-color-1-fade-in-out 5332ms cubic-bezier(0.4, 0, 0.2, 1) infinite both}.mdc-circular-progress--indeterminate .mdc-circular-progress__color-2{animation:mdc-circular-progress-spinner-layer-rotate 5332ms cubic-bezier(0.4, 0, 0.2, 1) infinite both,mdc-circular-progress-color-2-fade-in-out 5332ms cubic-bezier(0.4, 0, 0.2, 1) infinite both}.mdc-circular-progress--indeterminate .mdc-circular-progress__color-3{animation:mdc-circular-progress-spinner-layer-rotate 5332ms cubic-bezier(0.4, 0, 0.2, 1) infinite both,mdc-circular-progress-color-3-fade-in-out 5332ms cubic-bezier(0.4, 0, 0.2, 1) infinite both}.mdc-circular-progress--indeterminate .mdc-circular-progress__color-4{animation:mdc-circular-progress-spinner-layer-rotate 5332ms cubic-bezier(0.4, 0, 0.2, 1) infinite both,mdc-circular-progress-color-4-fade-in-out 5332ms cubic-bezier(0.4, 0, 0.2, 1) infinite both}.mdc-circular-progress--indeterminate .mdc-circular-progress__circle-left .mdc-circular-progress__indeterminate-circle-graphic{animation:mdc-circular-progress-left-spin 1333ms cubic-bezier(0.4, 0, 0.2, 1) infinite both}.mdc-circular-progress--indeterminate .mdc-circular-progress__circle-right .mdc-circular-progress__indeterminate-circle-graphic{animation:mdc-circular-progress-right-spin 1333ms cubic-bezier(0.4, 0, 0.2, 1) infinite both}.mdc-circular-progress--closed{opacity:0}.mat-mdc-progress-spinner{display:block;overflow:hidden;line-height:0}.mat-mdc-progress-spinner._mat-animation-noopable,.mat-mdc-progress-spinner._mat-animation-noopable .mdc-circular-progress__determinate-circle{transition:none}.mat-mdc-progress-spinner._mat-animation-noopable .mdc-circular-progress__indeterminate-circle-graphic,.mat-mdc-progress-spinner._mat-animation-noopable .mdc-circular-progress__spinner-layer,.mat-mdc-progress-spinner._mat-animation-noopable .mdc-circular-progress__indeterminate-container{animation:none}.mat-mdc-progress-spinner._mat-animation-noopable .mdc-circular-progress__indeterminate-container circle{stroke-dasharray:0 !important}.cdk-high-contrast-active .mat-mdc-progress-spinner .mdc-circular-progress__indeterminate-circle-graphic,.cdk-high-contrast-active .mat-mdc-progress-spinner .mdc-circular-progress__determinate-circle{stroke:currentColor;stroke:CanvasText}\n"], directives: [{ type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
155
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: MatProgressSpinner, decorators: [{
156
+ MatProgressSpinner.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0-next.4", ngImport: i0, type: MatProgressSpinner, deps: [{ token: i0.ElementRef }, { token: ANIMATION_MODULE_TYPE, optional: true }, { token: MAT_PROGRESS_SPINNER_DEFAULT_OPTIONS }], target: i0.ɵɵFactoryTarget.Component });
157
+ MatProgressSpinner.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "14.0.0-next.4", type: MatProgressSpinner, selector: "mat-progress-spinner, mat-spinner", inputs: { color: "color", mode: "mode", value: "value", diameter: "diameter", strokeWidth: "strokeWidth" }, host: { attributes: { "role": "progressbar", "tabindex": "-1" }, properties: { "class._mat-animation-noopable": "_noopAnimations", "style.width.px": "diameter", "style.height.px": "diameter", "attr.aria-valuemin": "0", "attr.aria-valuemax": "100", "attr.aria-valuenow": "mode === \"determinate\" ? value : null", "attr.mode": "mode" }, classAttribute: "mat-mdc-progress-spinner mdc-circular-progress" }, viewQueries: [{ propertyName: "_determinateCircle", first: true, predicate: ["determinateSpinner"], descendants: true }], exportAs: ["matProgressSpinner"], usesInheritance: true, ngImport: i0, template: "<ng-template #circle>\n <svg [attr.viewBox]=\"_viewBox()\" class=\"mdc-circular-progress__indeterminate-circle-graphic\"\n xmlns=\"http://www.w3.org/2000/svg\" focusable=\"false\">\n <circle [attr.r]=\"_circleRadius()\"\n [style.stroke-dasharray.px]=\"_strokeCircumference()\"\n [style.stroke-dashoffset.px]=\"_strokeCircumference() / 2\"\n [style.stroke-width.%]=\"_circleStrokeWidth()\"\n cx=\"50%\" cy=\"50%\"/>\n </svg>\n</ng-template>\n\n<!--\n All children need to be hidden for screen readers in order to support ChromeVox.\n More context in the issue: https://github.com/angular/components/issues/22165.\n-->\n<div class=\"mdc-circular-progress__determinate-container\" aria-hidden=\"true\" #determinateSpinner>\n <svg [attr.viewBox]=\"_viewBox()\" class=\"mdc-circular-progress__determinate-circle-graphic\"\n xmlns=\"http://www.w3.org/2000/svg\" focusable=\"false\">\n <circle [attr.r]=\"_circleRadius()\"\n [style.stroke-dasharray.px]=\"_strokeCircumference()\"\n [style.stroke-dashoffset.px]=\"_strokeDashOffset()\"\n [style.stroke-width.%]=\"_circleStrokeWidth()\"\n class=\"mdc-circular-progress__determinate-circle\"\n cx=\"50%\" cy=\"50%\"/>\n </svg>\n</div>\n<!--TODO: figure out why there are 3 separate svgs-->\n<div class=\"mdc-circular-progress__indeterminate-container\" aria-hidden=\"true\">\n <div class=\"mdc-circular-progress__spinner-layer\">\n <div class=\"mdc-circular-progress__circle-clipper mdc-circular-progress__circle-left\">\n <ng-container [ngTemplateOutlet]=\"circle\"></ng-container>\n </div>\n <div class=\"mdc-circular-progress__gap-patch\">\n <ng-container [ngTemplateOutlet]=\"circle\"></ng-container>\n </div>\n <div class=\"mdc-circular-progress__circle-clipper mdc-circular-progress__circle-right\">\n <ng-container [ngTemplateOutlet]=\"circle\"></ng-container>\n </div>\n </div>\n</div>\n", styles: ["@keyframes mdc-circular-progress-container-rotate{to{transform:rotate(360deg)}}@keyframes mdc-circular-progress-spinner-layer-rotate{12.5%{transform:rotate(135deg)}25%{transform:rotate(270deg)}37.5%{transform:rotate(405deg)}50%{transform:rotate(540deg)}62.5%{transform:rotate(675deg)}75%{transform:rotate(810deg)}87.5%{transform:rotate(945deg)}100%{transform:rotate(1080deg)}}@keyframes mdc-circular-progress-color-1-fade-in-out{from{opacity:.99}25%{opacity:.99}26%{opacity:0}89%{opacity:0}90%{opacity:.99}to{opacity:.99}}@keyframes mdc-circular-progress-color-2-fade-in-out{from{opacity:0}15%{opacity:0}25%{opacity:.99}50%{opacity:.99}51%{opacity:0}to{opacity:0}}@keyframes mdc-circular-progress-color-3-fade-in-out{from{opacity:0}40%{opacity:0}50%{opacity:.99}75%{opacity:.99}76%{opacity:0}to{opacity:0}}@keyframes mdc-circular-progress-color-4-fade-in-out{from{opacity:0}65%{opacity:0}75%{opacity:.99}90%{opacity:.99}to{opacity:0}}@keyframes mdc-circular-progress-left-spin{from{transform:rotate(265deg)}50%{transform:rotate(130deg)}to{transform:rotate(265deg)}}@keyframes mdc-circular-progress-right-spin{from{transform:rotate(-265deg)}50%{transform:rotate(-130deg)}to{transform:rotate(-265deg)}}.mdc-circular-progress{display:inline-flex;position:relative;direction:ltr;line-height:0;transition:opacity 250ms 0ms cubic-bezier(0.4, 0, 0.6, 1)}.mdc-circular-progress__determinate-container,.mdc-circular-progress__indeterminate-circle-graphic,.mdc-circular-progress__indeterminate-container,.mdc-circular-progress__spinner-layer{position:absolute;width:100%;height:100%}.mdc-circular-progress__determinate-container{transform:rotate(-90deg)}.mdc-circular-progress__indeterminate-container{font-size:0;letter-spacing:0;white-space:nowrap;opacity:0}.mdc-circular-progress__determinate-circle-graphic,.mdc-circular-progress__indeterminate-circle-graphic{fill:transparent}.mdc-circular-progress__determinate-circle{transition:stroke-dashoffset 500ms 0ms cubic-bezier(0, 0, 0.2, 1)}.mdc-circular-progress__gap-patch{position:absolute;top:0;left:47.5%;box-sizing:border-box;width:5%;height:100%;overflow:hidden}.mdc-circular-progress__gap-patch .mdc-circular-progress__indeterminate-circle-graphic{left:-900%;width:2000%;transform:rotate(180deg)}.mdc-circular-progress__circle-clipper{display:inline-flex;position:relative;width:50%;height:100%;overflow:hidden}.mdc-circular-progress__circle-clipper .mdc-circular-progress__indeterminate-circle-graphic{width:200%}.mdc-circular-progress__circle-right .mdc-circular-progress__indeterminate-circle-graphic{left:-100%}.mdc-circular-progress--indeterminate .mdc-circular-progress__determinate-container{opacity:0}.mdc-circular-progress--indeterminate .mdc-circular-progress__indeterminate-container{opacity:1}.mdc-circular-progress--indeterminate .mdc-circular-progress__indeterminate-container{animation:mdc-circular-progress-container-rotate 1568.2352941176ms linear infinite}.mdc-circular-progress--indeterminate .mdc-circular-progress__spinner-layer{animation:mdc-circular-progress-spinner-layer-rotate 5332ms cubic-bezier(0.4, 0, 0.2, 1) infinite both}.mdc-circular-progress--indeterminate .mdc-circular-progress__color-1{animation:mdc-circular-progress-spinner-layer-rotate 5332ms cubic-bezier(0.4, 0, 0.2, 1) infinite both,mdc-circular-progress-color-1-fade-in-out 5332ms cubic-bezier(0.4, 0, 0.2, 1) infinite both}.mdc-circular-progress--indeterminate .mdc-circular-progress__color-2{animation:mdc-circular-progress-spinner-layer-rotate 5332ms cubic-bezier(0.4, 0, 0.2, 1) infinite both,mdc-circular-progress-color-2-fade-in-out 5332ms cubic-bezier(0.4, 0, 0.2, 1) infinite both}.mdc-circular-progress--indeterminate .mdc-circular-progress__color-3{animation:mdc-circular-progress-spinner-layer-rotate 5332ms cubic-bezier(0.4, 0, 0.2, 1) infinite both,mdc-circular-progress-color-3-fade-in-out 5332ms cubic-bezier(0.4, 0, 0.2, 1) infinite both}.mdc-circular-progress--indeterminate .mdc-circular-progress__color-4{animation:mdc-circular-progress-spinner-layer-rotate 5332ms cubic-bezier(0.4, 0, 0.2, 1) infinite both,mdc-circular-progress-color-4-fade-in-out 5332ms cubic-bezier(0.4, 0, 0.2, 1) infinite both}.mdc-circular-progress--indeterminate .mdc-circular-progress__circle-left .mdc-circular-progress__indeterminate-circle-graphic{animation:mdc-circular-progress-left-spin 1333ms cubic-bezier(0.4, 0, 0.2, 1) infinite both}.mdc-circular-progress--indeterminate .mdc-circular-progress__circle-right .mdc-circular-progress__indeterminate-circle-graphic{animation:mdc-circular-progress-right-spin 1333ms cubic-bezier(0.4, 0, 0.2, 1) infinite both}.mdc-circular-progress--closed{opacity:0}.mat-mdc-progress-spinner{display:block;overflow:hidden;line-height:0}.mat-mdc-progress-spinner._mat-animation-noopable,.mat-mdc-progress-spinner._mat-animation-noopable .mdc-circular-progress__determinate-circle{transition:none}.mat-mdc-progress-spinner._mat-animation-noopable .mdc-circular-progress__indeterminate-circle-graphic,.mat-mdc-progress-spinner._mat-animation-noopable .mdc-circular-progress__spinner-layer,.mat-mdc-progress-spinner._mat-animation-noopable .mdc-circular-progress__indeterminate-container{animation:none}.mat-mdc-progress-spinner._mat-animation-noopable .mdc-circular-progress__indeterminate-container circle{stroke-dasharray:0 !important}.cdk-high-contrast-active .mat-mdc-progress-spinner .mdc-circular-progress__indeterminate-circle-graphic,.cdk-high-contrast-active .mat-mdc-progress-spinner .mdc-circular-progress__determinate-circle{stroke:currentColor;stroke:CanvasText}\n"], directives: [{ type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
158
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0-next.4", ngImport: i0, type: MatProgressSpinner, decorators: [{
156
159
  type: Component,
157
160
  args: [{ selector: 'mat-progress-spinner, mat-spinner', exportAs: 'matProgressSpinner', host: {
158
161
  'role': 'progressbar',
@@ -208,10 +211,10 @@ const MatSpinner = MatProgressSpinner;
208
211
  */
209
212
  class MatProgressSpinnerModule {
210
213
  }
211
- MatProgressSpinnerModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: MatProgressSpinnerModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
212
- MatProgressSpinnerModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: MatProgressSpinnerModule, declarations: [MatProgressSpinner, MatSpinner], imports: [CommonModule], exports: [MatProgressSpinner, MatSpinner, MatCommonModule] });
213
- MatProgressSpinnerModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: MatProgressSpinnerModule, imports: [[CommonModule], MatCommonModule] });
214
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: MatProgressSpinnerModule, decorators: [{
214
+ MatProgressSpinnerModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0-next.4", ngImport: i0, type: MatProgressSpinnerModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
215
+ MatProgressSpinnerModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "14.0.0-next.4", ngImport: i0, type: MatProgressSpinnerModule, declarations: [MatProgressSpinner, MatSpinner], imports: [CommonModule], exports: [MatProgressSpinner, MatSpinner, MatCommonModule] });
216
+ MatProgressSpinnerModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.0.0-next.4", ngImport: i0, type: MatProgressSpinnerModule, imports: [[CommonModule], MatCommonModule] });
217
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0-next.4", ngImport: i0, type: MatProgressSpinnerModule, decorators: [{
215
218
  type: NgModule,
216
219
  args: [{
217
220
  imports: [CommonModule],
@@ -1 +1 @@
1
- {"version":3,"file":"mdc-progress-spinner.mjs","sources":["../../../../../../src/material-experimental/mdc-progress-spinner/progress-spinner.ts","../../../../../../src/material-experimental/mdc-progress-spinner/progress-spinner.html","../../../../../../src/material-experimental/mdc-progress-spinner/module.ts","../../../../../../src/material-experimental/mdc-progress-spinner/public-api.ts","../../../../../../src/material-experimental/mdc-progress-spinner/index.ts","../../../../../../src/material-experimental/mdc-progress-spinner/mdc-progress-spinner_public_index.ts"],"sourcesContent":["/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nimport {\n AfterViewInit,\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n Inject,\n Input,\n OnDestroy,\n Optional,\n ViewChild,\n ViewEncapsulation,\n} from '@angular/core';\nimport {\n MDCCircularProgressAdapter,\n MDCCircularProgressFoundation,\n} from '@material/circular-progress';\nimport {CanColor, mixinColor} from '@angular/material-experimental/mdc-core';\nimport {ANIMATION_MODULE_TYPE} from '@angular/platform-browser/animations';\nimport {\n MAT_PROGRESS_SPINNER_DEFAULT_OPTIONS,\n MatProgressSpinnerDefaultOptions,\n} from '@angular/material/progress-spinner';\nimport {coerceNumberProperty, NumberInput} from '@angular/cdk/coercion';\n\n// Boilerplate for applying mixins to MatProgressBar.\nconst _MatProgressSpinnerBase = mixinColor(\n class {\n constructor(public _elementRef: ElementRef) {}\n },\n 'primary',\n);\n\n/** Possible mode for a progress spinner. */\nexport type ProgressSpinnerMode = 'determinate' | 'indeterminate';\n\n/**\n * Base reference size of the spinner.\n */\nconst BASE_SIZE = 100;\n\n/**\n * Base reference stroke width of the spinner.\n */\nconst BASE_STROKE_WIDTH = 10;\n\n@Component({\n selector: 'mat-progress-spinner, mat-spinner',\n exportAs: 'matProgressSpinner',\n host: {\n 'role': 'progressbar',\n 'class': 'mat-mdc-progress-spinner mdc-circular-progress',\n // set tab index to -1 so screen readers will read the aria-label\n // Note: there is a known issue with JAWS that does not read progressbar aria labels on FireFox\n 'tabindex': '-1',\n '[class._mat-animation-noopable]': `_noopAnimations`,\n '[style.width.px]': 'diameter',\n '[style.height.px]': 'diameter',\n '[attr.aria-valuemin]': '0',\n '[attr.aria-valuemax]': '100',\n '[attr.aria-valuenow]': 'mode === \"determinate\" ? value : null',\n '[attr.mode]': 'mode',\n },\n inputs: ['color'],\n templateUrl: 'progress-spinner.html',\n styleUrls: ['progress-spinner.css'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n})\nexport class MatProgressSpinner\n extends _MatProgressSpinnerBase\n implements AfterViewInit, OnDestroy, CanColor\n{\n /** Whether the _mat-animation-noopable class should be applied, disabling animations. */\n _noopAnimations: boolean;\n\n /** Implements all of the logic of the MDC circular progress. */\n _foundation: MDCCircularProgressFoundation;\n\n /** The element of the determinate spinner. */\n @ViewChild('determinateSpinner') _determinateCircle: ElementRef<HTMLElement>;\n\n /** Adapter used by MDC to interact with the DOM. */\n // TODO: switch to class when MDC removes object spread in foundation\n // https://github.com/material-components/material-components-web/pull/6256\n private _adapter: MDCCircularProgressAdapter = {\n addClass: (className: string) => this._elementRef.nativeElement.classList.add(className),\n hasClass: (className: string) => this._elementRef.nativeElement.classList.contains(className),\n removeClass: (className: string) => this._elementRef.nativeElement.classList.remove(className),\n removeAttribute: (name: string) => this._elementRef.nativeElement.removeAttribute(name),\n setAttribute: (name, value) => {\n if (name !== 'aria-valuenow') {\n // MDC deals with values between 0 and 1 but Angular Material deals with values between\n // 0 and 100 so the aria-valuenow should be set through the attr binding in the host\n // instead of by the MDC adapter\n this._elementRef.nativeElement.setAttribute(name, value);\n }\n },\n getDeterminateCircleAttribute: (attributeName: string) =>\n this._determinateCircle.nativeElement.getAttribute(attributeName),\n setDeterminateCircleAttribute: (attributeName: string, value: string) =>\n this._determinateCircle.nativeElement.setAttribute(attributeName, value),\n };\n\n constructor(\n elementRef: ElementRef<HTMLElement>,\n @Optional() @Inject(ANIMATION_MODULE_TYPE) animationMode: string,\n @Inject(MAT_PROGRESS_SPINNER_DEFAULT_OPTIONS)\n defaults?: MatProgressSpinnerDefaultOptions,\n ) {\n super(elementRef);\n this._noopAnimations =\n animationMode === 'NoopAnimations' && !!defaults && !defaults._forceAnimations;\n\n if (defaults) {\n if (defaults.diameter) {\n this.diameter = defaults.diameter;\n }\n\n if (defaults.strokeWidth) {\n this.strokeWidth = defaults.strokeWidth;\n }\n }\n }\n\n private _mode: ProgressSpinnerMode =\n this._elementRef.nativeElement.nodeName.toLowerCase() === 'mat-spinner'\n ? 'indeterminate'\n : 'determinate';\n\n /**\n * Mode of the progress bar.\n *\n * Input must be one of these values: determinate, indeterminate, buffer, query, defaults to\n * 'determinate'.\n * Mirrored to mode attribute.\n */\n @Input()\n get mode(): ProgressSpinnerMode {\n return this._mode;\n }\n\n set mode(value: ProgressSpinnerMode) {\n this._mode = value;\n this._syncFoundation();\n }\n\n private _value = 0;\n\n /** Value of the progress bar. Defaults to zero. Mirrored to aria-valuenow. */\n @Input()\n get value(): number {\n return this.mode === 'determinate' ? this._value : 0;\n }\n\n set value(v: NumberInput) {\n this._value = Math.max(0, Math.min(100, coerceNumberProperty(v)));\n this._syncFoundation();\n }\n\n private _diameter = BASE_SIZE;\n\n /** The diameter of the progress spinner (will set width and height of svg). */\n @Input()\n get diameter(): number {\n return this._diameter;\n }\n\n set diameter(size: NumberInput) {\n this._diameter = coerceNumberProperty(size);\n this._syncFoundation();\n }\n\n private _strokeWidth: number;\n\n /** Stroke width of the progress spinner. */\n @Input()\n get strokeWidth(): number {\n return this._strokeWidth ?? this.diameter / 10;\n }\n\n set strokeWidth(value: NumberInput) {\n this._strokeWidth = coerceNumberProperty(value);\n }\n\n /** The radius of the spinner, adjusted for stroke width. */\n _circleRadius(): number {\n return (this.diameter - BASE_STROKE_WIDTH) / 2;\n }\n\n /** The view box of the spinner's svg element. */\n _viewBox() {\n const viewBox = this._circleRadius() * 2 + this.strokeWidth;\n return `0 0 ${viewBox} ${viewBox}`;\n }\n\n /** The stroke circumference of the svg circle. */\n _strokeCircumference(): number {\n return 2 * Math.PI * this._circleRadius();\n }\n\n /** The dash offset of the svg circle. */\n _strokeDashOffset() {\n if (this.mode === 'determinate') {\n return (this._strokeCircumference() * (100 - this._value)) / 100;\n }\n return null;\n }\n\n /** Stroke width of the circle in percent. */\n _circleStrokeWidth() {\n return (this.strokeWidth / this.diameter) * 100;\n }\n\n ngAfterViewInit() {\n this._foundation = new MDCCircularProgressFoundation(this._adapter);\n this._foundation.init();\n this._syncFoundation();\n }\n\n ngOnDestroy() {\n if (this._foundation) {\n this._foundation.destroy();\n }\n }\n\n /** Syncs the state of the progress spinner with the MDC foundation. */\n private _syncFoundation() {\n const foundation = this._foundation;\n\n if (foundation) {\n const mode = this.mode;\n foundation.setProgress(this.value / 100);\n foundation.setDeterminate(mode === 'determinate');\n }\n }\n}\n\n/**\n * `<mat-spinner>` component.\n *\n * This is a component definition to be used as a convenience reference to create an\n * indeterminate `<mat-progress-spinner>` instance.\n */\n// tslint:disable-next-line:variable-name\nexport const MatSpinner = MatProgressSpinner;\n","<ng-template #circle>\n <svg [attr.viewBox]=\"_viewBox()\" class=\"mdc-circular-progress__indeterminate-circle-graphic\"\n xmlns=\"http://www.w3.org/2000/svg\" focusable=\"false\">\n <circle [attr.r]=\"_circleRadius()\"\n [style.stroke-dasharray.px]=\"_strokeCircumference()\"\n [style.stroke-dashoffset.px]=\"_strokeCircumference() / 2\"\n [style.stroke-width.%]=\"_circleStrokeWidth()\"\n cx=\"50%\" cy=\"50%\"/>\n </svg>\n</ng-template>\n\n<!--\n All children need to be hidden for screen readers in order to support ChromeVox.\n More context in the issue: https://github.com/angular/components/issues/22165.\n-->\n<div class=\"mdc-circular-progress__determinate-container\" aria-hidden=\"true\" #determinateSpinner>\n <svg [attr.viewBox]=\"_viewBox()\" class=\"mdc-circular-progress__determinate-circle-graphic\"\n xmlns=\"http://www.w3.org/2000/svg\" focusable=\"false\">\n <circle [attr.r]=\"_circleRadius()\"\n [style.stroke-dasharray.px]=\"_strokeCircumference()\"\n [style.stroke-dashoffset.px]=\"_strokeDashOffset()\"\n [style.stroke-width.%]=\"_circleStrokeWidth()\"\n class=\"mdc-circular-progress__determinate-circle\"\n cx=\"50%\" cy=\"50%\"/>\n </svg>\n</div>\n<!--TODO: figure out why there are 3 separate svgs-->\n<div class=\"mdc-circular-progress__indeterminate-container\" aria-hidden=\"true\">\n <div class=\"mdc-circular-progress__spinner-layer\">\n <div class=\"mdc-circular-progress__circle-clipper mdc-circular-progress__circle-left\">\n <ng-container [ngTemplateOutlet]=\"circle\"></ng-container>\n </div>\n <div class=\"mdc-circular-progress__gap-patch\">\n <ng-container [ngTemplateOutlet]=\"circle\"></ng-container>\n </div>\n <div class=\"mdc-circular-progress__circle-clipper mdc-circular-progress__circle-right\">\n <ng-container [ngTemplateOutlet]=\"circle\"></ng-container>\n </div>\n </div>\n</div>\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nimport {NgModule} from '@angular/core';\nimport {MatCommonModule} from '@angular/material-experimental/mdc-core';\nimport {MatProgressSpinner, MatSpinner} from './progress-spinner';\nimport {CommonModule} from '@angular/common';\n\n@NgModule({\n imports: [CommonModule],\n exports: [MatProgressSpinner, MatSpinner, MatCommonModule],\n declarations: [MatProgressSpinner, MatSpinner],\n})\nexport class MatProgressSpinnerModule {}\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nexport * from './progress-spinner';\nexport * from './module';\n\nexport {\n MAT_PROGRESS_SPINNER_DEFAULT_OPTIONS,\n MatProgressSpinnerDefaultOptions,\n MAT_PROGRESS_SPINNER_DEFAULT_OPTIONS_FACTORY,\n} from '@angular/material/progress-spinner';\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nexport * from './public-api';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mdc-progress-spinner.mjs","sources":["../../../../../../src/material-experimental/mdc-progress-spinner/progress-spinner.ts","../../../../../../src/material-experimental/mdc-progress-spinner/progress-spinner.html","../../../../../../src/material-experimental/mdc-progress-spinner/module.ts","../../../../../../src/material-experimental/mdc-progress-spinner/public-api.ts","../../../../../../src/material-experimental/mdc-progress-spinner/index.ts","../../../../../../src/material-experimental/mdc-progress-spinner/mdc-progress-spinner_public_index.ts"],"sourcesContent":["/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nimport {\n AfterViewInit,\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n Inject,\n Input,\n OnDestroy,\n Optional,\n ViewChild,\n ViewEncapsulation,\n} from '@angular/core';\nimport {\n MDCCircularProgressAdapter,\n MDCCircularProgressFoundation,\n} from '@material/circular-progress';\nimport {CanColor, mixinColor} from '@angular/material-experimental/mdc-core';\nimport {ANIMATION_MODULE_TYPE} from '@angular/platform-browser/animations';\nimport {\n MAT_PROGRESS_SPINNER_DEFAULT_OPTIONS,\n MatProgressSpinnerDefaultOptions,\n} from '@angular/material/progress-spinner';\nimport {coerceNumberProperty, NumberInput} from '@angular/cdk/coercion';\n\n// Boilerplate for applying mixins to MatProgressBar.\nconst _MatProgressSpinnerBase = mixinColor(\n class {\n constructor(public _elementRef: ElementRef) {}\n },\n 'primary',\n);\n\n/** Possible mode for a progress spinner. */\nexport type ProgressSpinnerMode = 'determinate' | 'indeterminate';\n\n/**\n * Base reference size of the spinner.\n */\nconst BASE_SIZE = 100;\n\n/**\n * Base reference stroke width of the spinner.\n */\nconst BASE_STROKE_WIDTH = 10;\n\n@Component({\n selector: 'mat-progress-spinner, mat-spinner',\n exportAs: 'matProgressSpinner',\n host: {\n 'role': 'progressbar',\n 'class': 'mat-mdc-progress-spinner mdc-circular-progress',\n // set tab index to -1 so screen readers will read the aria-label\n // Note: there is a known issue with JAWS that does not read progressbar aria labels on FireFox\n 'tabindex': '-1',\n '[class._mat-animation-noopable]': `_noopAnimations`,\n '[style.width.px]': 'diameter',\n '[style.height.px]': 'diameter',\n '[attr.aria-valuemin]': '0',\n '[attr.aria-valuemax]': '100',\n '[attr.aria-valuenow]': 'mode === \"determinate\" ? value : null',\n '[attr.mode]': 'mode',\n },\n inputs: ['color'],\n templateUrl: 'progress-spinner.html',\n styleUrls: ['progress-spinner.css'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n})\nexport class MatProgressSpinner\n extends _MatProgressSpinnerBase\n implements AfterViewInit, OnDestroy, CanColor\n{\n /** Whether the _mat-animation-noopable class should be applied, disabling animations. */\n _noopAnimations: boolean;\n\n /** Implements all of the logic of the MDC circular progress. */\n _foundation: MDCCircularProgressFoundation;\n\n /** The element of the determinate spinner. */\n @ViewChild('determinateSpinner') _determinateCircle: ElementRef<HTMLElement>;\n\n /** Adapter used by MDC to interact with the DOM. */\n // TODO: switch to class when MDC removes object spread in foundation\n // https://github.com/material-components/material-components-web/pull/6256\n private _adapter: MDCCircularProgressAdapter = {\n addClass: (className: string) => this._elementRef.nativeElement.classList.add(className),\n hasClass: (className: string) => this._elementRef.nativeElement.classList.contains(className),\n removeClass: (className: string) => this._elementRef.nativeElement.classList.remove(className),\n removeAttribute: (name: string) => this._elementRef.nativeElement.removeAttribute(name),\n setAttribute: (name, value) => {\n if (name !== 'aria-valuenow') {\n // MDC deals with values between 0 and 1 but Angular Material deals with values between\n // 0 and 100 so the aria-valuenow should be set through the attr binding in the host\n // instead of by the MDC adapter\n this._elementRef.nativeElement.setAttribute(name, value);\n }\n },\n getDeterminateCircleAttribute: (attributeName: string) =>\n this._determinateCircle.nativeElement.getAttribute(attributeName),\n setDeterminateCircleAttribute: (attributeName: string, value: string) =>\n this._determinateCircle.nativeElement.setAttribute(attributeName, value),\n };\n\n constructor(\n elementRef: ElementRef<HTMLElement>,\n @Optional() @Inject(ANIMATION_MODULE_TYPE) animationMode: string,\n @Inject(MAT_PROGRESS_SPINNER_DEFAULT_OPTIONS)\n defaults?: MatProgressSpinnerDefaultOptions,\n ) {\n super(elementRef);\n this._noopAnimations =\n animationMode === 'NoopAnimations' && !!defaults && !defaults._forceAnimations;\n\n if (defaults) {\n if (defaults.color) {\n this.color = this.defaultColor = defaults.color;\n }\n\n if (defaults.diameter) {\n this.diameter = defaults.diameter;\n }\n\n if (defaults.strokeWidth) {\n this.strokeWidth = defaults.strokeWidth;\n }\n }\n }\n\n private _mode: ProgressSpinnerMode =\n this._elementRef.nativeElement.nodeName.toLowerCase() === 'mat-spinner'\n ? 'indeterminate'\n : 'determinate';\n\n /**\n * Mode of the progress bar.\n *\n * Input must be one of these values: determinate, indeterminate, buffer, query, defaults to\n * 'determinate'.\n * Mirrored to mode attribute.\n */\n @Input()\n get mode(): ProgressSpinnerMode {\n return this._mode;\n }\n\n set mode(value: ProgressSpinnerMode) {\n this._mode = value;\n this._syncFoundation();\n }\n\n private _value = 0;\n\n /** Value of the progress bar. Defaults to zero. Mirrored to aria-valuenow. */\n @Input()\n get value(): number {\n return this.mode === 'determinate' ? this._value : 0;\n }\n\n set value(v: NumberInput) {\n this._value = Math.max(0, Math.min(100, coerceNumberProperty(v)));\n this._syncFoundation();\n }\n\n private _diameter = BASE_SIZE;\n\n /** The diameter of the progress spinner (will set width and height of svg). */\n @Input()\n get diameter(): number {\n return this._diameter;\n }\n\n set diameter(size: NumberInput) {\n this._diameter = coerceNumberProperty(size);\n this._syncFoundation();\n }\n\n private _strokeWidth: number;\n\n /** Stroke width of the progress spinner. */\n @Input()\n get strokeWidth(): number {\n return this._strokeWidth ?? this.diameter / 10;\n }\n\n set strokeWidth(value: NumberInput) {\n this._strokeWidth = coerceNumberProperty(value);\n }\n\n /** The radius of the spinner, adjusted for stroke width. */\n _circleRadius(): number {\n return (this.diameter - BASE_STROKE_WIDTH) / 2;\n }\n\n /** The view box of the spinner's svg element. */\n _viewBox() {\n const viewBox = this._circleRadius() * 2 + this.strokeWidth;\n return `0 0 ${viewBox} ${viewBox}`;\n }\n\n /** The stroke circumference of the svg circle. */\n _strokeCircumference(): number {\n return 2 * Math.PI * this._circleRadius();\n }\n\n /** The dash offset of the svg circle. */\n _strokeDashOffset() {\n if (this.mode === 'determinate') {\n return (this._strokeCircumference() * (100 - this._value)) / 100;\n }\n return null;\n }\n\n /** Stroke width of the circle in percent. */\n _circleStrokeWidth() {\n return (this.strokeWidth / this.diameter) * 100;\n }\n\n ngAfterViewInit() {\n this._foundation = new MDCCircularProgressFoundation(this._adapter);\n this._foundation.init();\n this._syncFoundation();\n }\n\n ngOnDestroy() {\n if (this._foundation) {\n this._foundation.destroy();\n }\n }\n\n /** Syncs the state of the progress spinner with the MDC foundation. */\n private _syncFoundation() {\n const foundation = this._foundation;\n\n if (foundation) {\n const mode = this.mode;\n foundation.setProgress(this.value / 100);\n foundation.setDeterminate(mode === 'determinate');\n }\n }\n}\n\n/**\n * `<mat-spinner>` component.\n *\n * This is a component definition to be used as a convenience reference to create an\n * indeterminate `<mat-progress-spinner>` instance.\n */\n// tslint:disable-next-line:variable-name\nexport const MatSpinner = MatProgressSpinner;\n","<ng-template #circle>\n <svg [attr.viewBox]=\"_viewBox()\" class=\"mdc-circular-progress__indeterminate-circle-graphic\"\n xmlns=\"http://www.w3.org/2000/svg\" focusable=\"false\">\n <circle [attr.r]=\"_circleRadius()\"\n [style.stroke-dasharray.px]=\"_strokeCircumference()\"\n [style.stroke-dashoffset.px]=\"_strokeCircumference() / 2\"\n [style.stroke-width.%]=\"_circleStrokeWidth()\"\n cx=\"50%\" cy=\"50%\"/>\n </svg>\n</ng-template>\n\n<!--\n All children need to be hidden for screen readers in order to support ChromeVox.\n More context in the issue: https://github.com/angular/components/issues/22165.\n-->\n<div class=\"mdc-circular-progress__determinate-container\" aria-hidden=\"true\" #determinateSpinner>\n <svg [attr.viewBox]=\"_viewBox()\" class=\"mdc-circular-progress__determinate-circle-graphic\"\n xmlns=\"http://www.w3.org/2000/svg\" focusable=\"false\">\n <circle [attr.r]=\"_circleRadius()\"\n [style.stroke-dasharray.px]=\"_strokeCircumference()\"\n [style.stroke-dashoffset.px]=\"_strokeDashOffset()\"\n [style.stroke-width.%]=\"_circleStrokeWidth()\"\n class=\"mdc-circular-progress__determinate-circle\"\n cx=\"50%\" cy=\"50%\"/>\n </svg>\n</div>\n<!--TODO: figure out why there are 3 separate svgs-->\n<div class=\"mdc-circular-progress__indeterminate-container\" aria-hidden=\"true\">\n <div class=\"mdc-circular-progress__spinner-layer\">\n <div class=\"mdc-circular-progress__circle-clipper mdc-circular-progress__circle-left\">\n <ng-container [ngTemplateOutlet]=\"circle\"></ng-container>\n </div>\n <div class=\"mdc-circular-progress__gap-patch\">\n <ng-container [ngTemplateOutlet]=\"circle\"></ng-container>\n </div>\n <div class=\"mdc-circular-progress__circle-clipper mdc-circular-progress__circle-right\">\n <ng-container [ngTemplateOutlet]=\"circle\"></ng-container>\n </div>\n </div>\n</div>\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nimport {NgModule} from '@angular/core';\nimport {MatCommonModule} from '@angular/material-experimental/mdc-core';\nimport {MatProgressSpinner, MatSpinner} from './progress-spinner';\nimport {CommonModule} from '@angular/common';\n\n@NgModule({\n imports: [CommonModule],\n exports: [MatProgressSpinner, MatSpinner, MatCommonModule],\n declarations: [MatProgressSpinner, MatSpinner],\n})\nexport class MatProgressSpinnerModule {}\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nexport * from './progress-spinner';\nexport * from './module';\n\nexport {\n MAT_PROGRESS_SPINNER_DEFAULT_OPTIONS,\n MatProgressSpinnerDefaultOptions,\n MAT_PROGRESS_SPINNER_DEFAULT_OPTIONS_FACTORY,\n} from '@angular/material/progress-spinner';\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nexport * from './public-api';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -40,12 +40,12 @@ const MAT_RADIO_GROUP = new InjectionToken('MatRadioGroup');
40
40
  */
41
41
  class MatRadioGroup extends _MatRadioGroupBase {
42
42
  }
43
- MatRadioGroup.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: MatRadioGroup, deps: null, target: i0.ɵɵFactoryTarget.Directive });
44
- MatRadioGroup.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.2.0", type: MatRadioGroup, selector: "mat-radio-group", host: { attributes: { "role": "radiogroup" }, classAttribute: "mat-mdc-radio-group" }, providers: [
43
+ MatRadioGroup.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0-next.4", ngImport: i0, type: MatRadioGroup, deps: null, target: i0.ɵɵFactoryTarget.Directive });
44
+ MatRadioGroup.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "14.0.0-next.4", type: MatRadioGroup, selector: "mat-radio-group", host: { attributes: { "role": "radiogroup" }, classAttribute: "mat-mdc-radio-group" }, providers: [
45
45
  MAT_RADIO_GROUP_CONTROL_VALUE_ACCESSOR,
46
46
  { provide: MAT_RADIO_GROUP, useExisting: MatRadioGroup },
47
47
  ], queries: [{ propertyName: "_radios", predicate: i0.forwardRef(function () { return MatRadioButton; }), descendants: true }], exportAs: ["matRadioGroup"], usesInheritance: true, ngImport: i0 });
48
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: MatRadioGroup, decorators: [{
48
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0-next.4", ngImport: i0, type: MatRadioGroup, decorators: [{
49
49
  type: Directive,
50
50
  args: [{
51
51
  selector: 'mat-radio-group',
@@ -100,9 +100,9 @@ class MatRadioButton extends _MatRadioButtonBase {
100
100
  this._radioFoundation.setDisabled(this.disabled);
101
101
  }
102
102
  }
103
- MatRadioButton.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: MatRadioButton, deps: [{ token: MAT_RADIO_GROUP, optional: true }, { token: i0.ElementRef }, { token: i0.ChangeDetectorRef }, { token: i1.FocusMonitor }, { token: i2.UniqueSelectionDispatcher }, { token: ANIMATION_MODULE_TYPE, optional: true }, { token: MAT_RADIO_DEFAULT_OPTIONS, optional: true }, { token: 'tabindex', attribute: true }], target: i0.ɵɵFactoryTarget.Component });
104
- MatRadioButton.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.0", type: MatRadioButton, selector: "mat-radio-button", inputs: { disableRipple: "disableRipple", tabIndex: "tabIndex" }, host: { listeners: { "focus": "_inputElement.nativeElement.focus()" }, properties: { "attr.id": "id", "class.mat-primary": "color === \"primary\"", "class.mat-accent": "color === \"accent\"", "class.mat-warn": "color === \"warn\"", "class._mat-animation-noopable": "_noopAnimations", "attr.tabindex": "null", "attr.aria-label": "null", "attr.aria-labelledby": "null", "attr.aria-describedby": "null" }, classAttribute: "mat-mdc-radio-button" }, exportAs: ["matRadioButton"], usesInheritance: true, ngImport: i0, template: "<div class=\"mdc-form-field\" #formField\n [class.mdc-form-field--align-end]=\"labelPosition == 'before'\">\n <div class=\"mdc-radio\" [ngClass]=\"_classes\">\n <!-- Render this element first so the input is on top. -->\n <div class=\"mat-mdc-radio-touch-target\" (click)=\"_onInputInteraction($event)\"></div>\n <input #input class=\"mdc-radio__native-control\" type=\"radio\"\n [id]=\"inputId\"\n [checked]=\"checked\"\n [disabled]=\"disabled\"\n [tabIndex]=\"tabIndex\"\n [attr.name]=\"name\"\n [attr.value]=\"value\"\n [required]=\"required\"\n [attr.aria-label]=\"ariaLabel\"\n [attr.aria-labelledby]=\"ariaLabelledby\"\n [attr.aria-describedby]=\"ariaDescribedby\"\n (change)=\"_onInputInteraction($event)\">\n <div class=\"mdc-radio__background\">\n <div class=\"mdc-radio__outer-circle\"></div>\n <div class=\"mdc-radio__inner-circle\"></div>\n </div>\n <div mat-ripple class=\"mat-radio-ripple mat-mdc-focus-indicator\"\n [matRippleTrigger]=\"formField\"\n [matRippleDisabled]=\"_isRippleDisabled()\"\n [matRippleCentered]=\"true\">\n <div class=\"mat-ripple-element mat-radio-persistent-ripple\"></div>\n </div>\n </div>\n <label [for]=\"inputId\">\n <ng-content></ng-content>\n </label>\n</div>\n", styles: [".mdc-radio{display:inline-block;position:relative;flex:0 0 auto;box-sizing:content-box;width:20px;height:20px;cursor:pointer;will-change:opacity,transform,border-color,color}.mdc-radio__background{display:inline-block;position:relative;box-sizing:border-box;width:20px;height:20px}.mdc-radio__background::before{position:absolute;transform:scale(0, 0);border-radius:50%;opacity:0;pointer-events:none;content:\"\";transition:opacity 120ms 0ms cubic-bezier(0.4, 0, 0.6, 1),transform 120ms 0ms cubic-bezier(0.4, 0, 0.6, 1)}.mdc-radio__outer-circle{position:absolute;top:0;left:0;box-sizing:border-box;width:100%;height:100%;border-width:2px;border-style:solid;border-radius:50%;transition:border-color 120ms 0ms cubic-bezier(0.4, 0, 0.6, 1)}.mdc-radio__inner-circle{position:absolute;top:0;left:0;box-sizing:border-box;width:100%;height:100%;transform:scale(0, 0);border-width:10px;border-style:solid;border-radius:50%;transition:transform 120ms 0ms cubic-bezier(0.4, 0, 0.6, 1),border-color 120ms 0ms cubic-bezier(0.4, 0, 0.6, 1)}.mdc-radio__native-control{position:absolute;margin:0;padding:0;opacity:0;cursor:inherit;z-index:1}.mdc-radio--touch{margin-top:4px;margin-bottom:4px;margin-right:4px;margin-left:4px}.mdc-radio--touch .mdc-radio__native-control{top:calc((40px - 48px) / 2);right:calc((40px - 48px) / 2);left:calc((40px - 48px) / 2);width:48px;height:48px}.mdc-radio.mdc-ripple-upgraded--background-focused .mdc-radio__focus-ring,.mdc-radio:not(.mdc-ripple-upgraded):focus .mdc-radio__focus-ring{pointer-events:none;border:2px solid transparent;border-radius:6px;position:absolute;top:50%;left:50%;transform:translate(-50%, -50%);height:100%;width:100%}@media screen and (forced-colors: active){.mdc-radio.mdc-ripple-upgraded--background-focused .mdc-radio__focus-ring,.mdc-radio:not(.mdc-ripple-upgraded):focus .mdc-radio__focus-ring{border-color:CanvasText}}.mdc-radio.mdc-ripple-upgraded--background-focused .mdc-radio__focus-ring::after,.mdc-radio:not(.mdc-ripple-upgraded):focus .mdc-radio__focus-ring::after{content:\"\";border:2px solid transparent;border-radius:8px;display:block;position:absolute;top:50%;left:50%;transform:translate(-50%, -50%);height:calc(100% + 4px);width:calc(100% + 4px)}@media screen and (forced-colors: active){.mdc-radio.mdc-ripple-upgraded--background-focused .mdc-radio__focus-ring::after,.mdc-radio:not(.mdc-ripple-upgraded):focus .mdc-radio__focus-ring::after{border-color:CanvasText}}.mdc-radio__native-control:checked+.mdc-radio__background,.mdc-radio__native-control:disabled+.mdc-radio__background{transition:opacity 120ms 0ms cubic-bezier(0, 0, 0.2, 1),transform 120ms 0ms cubic-bezier(0, 0, 0.2, 1)}.mdc-radio__native-control:checked+.mdc-radio__background .mdc-radio__outer-circle,.mdc-radio__native-control:disabled+.mdc-radio__background .mdc-radio__outer-circle{transition:border-color 120ms 0ms cubic-bezier(0, 0, 0.2, 1)}.mdc-radio__native-control:checked+.mdc-radio__background .mdc-radio__inner-circle,.mdc-radio__native-control:disabled+.mdc-radio__background .mdc-radio__inner-circle{transition:transform 120ms 0ms cubic-bezier(0, 0, 0.2, 1),border-color 120ms 0ms cubic-bezier(0, 0, 0.2, 1)}.mdc-radio--disabled{cursor:default;pointer-events:none}.mdc-radio__native-control:checked+.mdc-radio__background .mdc-radio__inner-circle{transform:scale(0.5);transition:transform 120ms 0ms cubic-bezier(0, 0, 0.2, 1),border-color 120ms 0ms cubic-bezier(0, 0, 0.2, 1)}.mdc-radio__native-control:disabled+.mdc-radio__background,[aria-disabled=true] .mdc-radio__native-control+.mdc-radio__background{cursor:default}.mdc-radio__native-control:focus+.mdc-radio__background::before{transform:scale(1);opacity:.12;transition:opacity 120ms 0ms cubic-bezier(0, 0, 0.2, 1),transform 120ms 0ms cubic-bezier(0, 0, 0.2, 1)}.mdc-form-field{display:inline-flex;align-items:center;vertical-align:middle}.mdc-form-field>label{margin-left:0;margin-right:auto;padding-left:4px;padding-right:0;order:0}[dir=rtl] .mdc-form-field>label,.mdc-form-field>label[dir=rtl]{margin-left:auto;margin-right:0}[dir=rtl] .mdc-form-field>label,.mdc-form-field>label[dir=rtl]{padding-left:0;padding-right:4px}.mdc-form-field--nowrap>label{text-overflow:ellipsis;overflow:hidden;white-space:nowrap}.mdc-form-field--align-end>label{margin-left:auto;margin-right:0;padding-left:0;padding-right:4px;order:-1}[dir=rtl] .mdc-form-field--align-end>label,.mdc-form-field--align-end>label[dir=rtl]{margin-left:0;margin-right:auto}[dir=rtl] .mdc-form-field--align-end>label,.mdc-form-field--align-end>label[dir=rtl]{padding-left:4px;padding-right:0}.mdc-form-field--space-between{justify-content:space-between}.mdc-form-field--space-between>label{margin:0}[dir=rtl] .mdc-form-field--space-between>label,.mdc-form-field--space-between>label[dir=rtl]{margin:0}.mat-mdc-radio-button .mdc-radio{padding:calc((var(--mdc-radio-state-layer-size, 40px) - 20px) / 2)}.mat-mdc-radio-button .mdc-radio [aria-disabled=true] .mdc-radio__native-control:checked+.mdc-radio__background .mdc-radio__outer-circle,.mat-mdc-radio-button .mdc-radio .mdc-radio__native-control:disabled:checked+.mdc-radio__background .mdc-radio__outer-circle{border-color:var(--mdc-radio-disabled-selected-icon-color, #000)}.mat-mdc-radio-button .mdc-radio [aria-disabled=true] .mdc-radio__native-control+.mdc-radio__background .mdc-radio__inner-circle,.mat-mdc-radio-button .mdc-radio .mdc-radio__native-control:disabled+.mdc-radio__background .mdc-radio__inner-circle{border-color:var(--mdc-radio-disabled-selected-icon-color, #000)}.mat-mdc-radio-button .mdc-radio [aria-disabled=true] .mdc-radio__native-control:checked+.mdc-radio__background .mdc-radio__outer-circle,.mat-mdc-radio-button .mdc-radio .mdc-radio__native-control:disabled:checked+.mdc-radio__background .mdc-radio__outer-circle{opacity:var(--mdc-radio-disabled-selected-icon-opacity, 0.38)}.mat-mdc-radio-button .mdc-radio [aria-disabled=true] .mdc-radio__native-control+.mdc-radio__background .mdc-radio__inner-circle,.mat-mdc-radio-button .mdc-radio .mdc-radio__native-control:disabled+.mdc-radio__background .mdc-radio__inner-circle{opacity:var(--mdc-radio-disabled-selected-icon-opacity, 0.38)}.mat-mdc-radio-button .mdc-radio [aria-disabled=true] .mdc-radio__native-control:not(:checked)+.mdc-radio__background .mdc-radio__outer-circle,.mat-mdc-radio-button .mdc-radio .mdc-radio__native-control:disabled:not(:checked)+.mdc-radio__background .mdc-radio__outer-circle{border-color:var(--mdc-radio-disabled-unselected-icon-color, #000)}.mat-mdc-radio-button .mdc-radio [aria-disabled=true] .mdc-radio__native-control:not(:checked)+.mdc-radio__background .mdc-radio__outer-circle,.mat-mdc-radio-button .mdc-radio .mdc-radio__native-control:disabled:not(:checked)+.mdc-radio__background .mdc-radio__outer-circle{opacity:var(--mdc-radio-disabled-unselected-icon-opacity, 0.38)}.mat-mdc-radio-button .mdc-radio.mdc-ripple-upgraded--background-focused .mdc-radio__native-control:enabled:checked+.mdc-radio__background .mdc-radio__outer-circle,.mat-mdc-radio-button .mdc-radio:not(.mdc-ripple-upgraded):focus .mdc-radio__native-control:enabled:checked+.mdc-radio__background .mdc-radio__outer-circle{border-color:var(--mdc-radio-selected-focus-icon-color, #6200ee)}.mat-mdc-radio-button .mdc-radio.mdc-ripple-upgraded--background-focused .mdc-radio__native-control:enabled+.mdc-radio__background .mdc-radio__inner-circle,.mat-mdc-radio-button .mdc-radio:not(.mdc-ripple-upgraded):focus .mdc-radio__native-control:enabled+.mdc-radio__background .mdc-radio__inner-circle{border-color:var(--mdc-radio-selected-focus-icon-color, #6200ee)}.mat-mdc-radio-button .mdc-radio:hover .mdc-radio__native-control:enabled:checked+.mdc-radio__background .mdc-radio__outer-circle{border-color:var(--mdc-radio-selected-hover-icon-color, #6200ee)}.mat-mdc-radio-button .mdc-radio:hover .mdc-radio__native-control:enabled+.mdc-radio__background .mdc-radio__inner-circle{border-color:var(--mdc-radio-selected-hover-icon-color, #6200ee)}.mat-mdc-radio-button .mdc-radio .mdc-radio__native-control:enabled:checked+.mdc-radio__background .mdc-radio__outer-circle{border-color:var(--mdc-radio-selected-icon-color, #6200ee)}.mat-mdc-radio-button .mdc-radio .mdc-radio__native-control:enabled+.mdc-radio__background .mdc-radio__inner-circle{border-color:var(--mdc-radio-selected-icon-color, #6200ee)}.mat-mdc-radio-button .mdc-radio:not(:disabled):active .mdc-radio__native-control:enabled:checked+.mdc-radio__background .mdc-radio__outer-circle{border-color:var(--mdc-radio-selected-pressed-icon-color, #6200ee)}.mat-mdc-radio-button .mdc-radio:not(:disabled):active .mdc-radio__native-control:enabled+.mdc-radio__background .mdc-radio__inner-circle{border-color:var(--mdc-radio-selected-pressed-icon-color, #6200ee)}.mat-mdc-radio-button .mdc-radio:hover .mdc-radio__native-control:enabled:not(:checked)+.mdc-radio__background .mdc-radio__outer-circle{border-color:var(--mdc-radio-unselected-hover-icon-color, #000)}.mat-mdc-radio-button .mdc-radio .mdc-radio__native-control:enabled:not(:checked)+.mdc-radio__background .mdc-radio__outer-circle{border-color:var(--mdc-radio-unselected-icon-color, #000)}.mat-mdc-radio-button .mdc-radio:not(:disabled):active .mdc-radio__native-control:enabled:not(:checked)+.mdc-radio__background .mdc-radio__outer-circle{border-color:var(--mdc-radio-unselected-pressed-icon-color, #000)}.mat-mdc-radio-button .mdc-radio .mdc-radio__background::before{top:calc(-1 * (var(--mdc-radio-state-layer-size, 40px) - 20px) / 2);left:calc(-1 * (var(--mdc-radio-state-layer-size, 40px) - 20px) / 2);width:var(--mdc-radio-state-layer-size, 40px);height:var(--mdc-radio-state-layer-size, 40px)}.mat-mdc-radio-button .mdc-radio .mdc-radio__native-control{top:calc((var(--mdc-radio-state-layer-size, 40px) - var(--mdc-radio-state-layer-size, 40px)) / 2);right:calc((var(--mdc-radio-state-layer-size, 40px) - var(--mdc-radio-state-layer-size, 40px)) / 2);left:calc((var(--mdc-radio-state-layer-size, 40px) - var(--mdc-radio-state-layer-size, 40px)) / 2);width:var(--mdc-radio-state-layer-size, 40px);height:var(--mdc-radio-state-layer-size, 40px)}.mat-mdc-radio-button .mat-radio-ripple{top:0;left:0;right:0;bottom:0;position:absolute;pointer-events:none;border-radius:50%}.mat-mdc-radio-button .mat-radio-ripple .mat-ripple-element{opacity:.14}.mat-mdc-radio-button._mat-animation-noopable .mdc-radio__background::before,.mat-mdc-radio-button._mat-animation-noopable .mdc-radio__outer-circle,.mat-mdc-radio-button._mat-animation-noopable .mdc-radio__inner-circle{transition:none !important}.mat-mdc-radio-touch-target{position:absolute;top:50%;height:48px;left:50%;width:48px;transform:translate(-50%, -50%)}[dir=rtl] .mat-mdc-radio-touch-target{left:0;right:50%;transform:translate(50%, -50%)}.cdk-high-contrast-active .mat-mdc-radio-button:not(.mat-radio-disabled).cdk-keyboard-focused .mat-radio-ripple,.cdk-high-contrast-active .mat-mdc-radio-button:not(.mat-radio-disabled).cdk-program-focused .mat-radio-ripple{outline:solid 3px}\n"], directives: [{ type: i3.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i4.MatRipple, selector: "[mat-ripple], [matRipple]", inputs: ["matRippleColor", "matRippleUnbounded", "matRippleCentered", "matRippleRadius", "matRippleAnimation", "matRippleDisabled", "matRippleTrigger"], exportAs: ["matRipple"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
105
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: MatRadioButton, decorators: [{
103
+ MatRadioButton.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0-next.4", ngImport: i0, type: MatRadioButton, deps: [{ token: MAT_RADIO_GROUP, optional: true }, { token: i0.ElementRef }, { token: i0.ChangeDetectorRef }, { token: i1.FocusMonitor }, { token: i2.UniqueSelectionDispatcher }, { token: ANIMATION_MODULE_TYPE, optional: true }, { token: MAT_RADIO_DEFAULT_OPTIONS, optional: true }, { token: 'tabindex', attribute: true }], target: i0.ɵɵFactoryTarget.Component });
104
+ MatRadioButton.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "14.0.0-next.4", type: MatRadioButton, selector: "mat-radio-button", inputs: { disableRipple: "disableRipple", tabIndex: "tabIndex" }, host: { listeners: { "focus": "_inputElement.nativeElement.focus()" }, properties: { "attr.id": "id", "class.mat-primary": "color === \"primary\"", "class.mat-accent": "color === \"accent\"", "class.mat-warn": "color === \"warn\"", "class._mat-animation-noopable": "_noopAnimations", "attr.tabindex": "null", "attr.aria-label": "null", "attr.aria-labelledby": "null", "attr.aria-describedby": "null" }, classAttribute: "mat-mdc-radio-button" }, exportAs: ["matRadioButton"], usesInheritance: true, ngImport: i0, template: "<div class=\"mdc-form-field\" #formField\n [class.mdc-form-field--align-end]=\"labelPosition == 'before'\">\n <div class=\"mdc-radio\" [ngClass]=\"_classes\">\n <!-- Render this element first so the input is on top. -->\n <div class=\"mat-mdc-radio-touch-target\" (click)=\"_onInputInteraction($event)\"></div>\n <input #input class=\"mdc-radio__native-control\" type=\"radio\"\n [id]=\"inputId\"\n [checked]=\"checked\"\n [disabled]=\"disabled\"\n [tabIndex]=\"tabIndex\"\n [attr.name]=\"name\"\n [attr.value]=\"value\"\n [required]=\"required\"\n [attr.aria-label]=\"ariaLabel\"\n [attr.aria-labelledby]=\"ariaLabelledby\"\n [attr.aria-describedby]=\"ariaDescribedby\"\n (change)=\"_onInputInteraction($event)\">\n <div class=\"mdc-radio__background\">\n <div class=\"mdc-radio__outer-circle\"></div>\n <div class=\"mdc-radio__inner-circle\"></div>\n </div>\n <div mat-ripple class=\"mat-radio-ripple mat-mdc-focus-indicator\"\n [matRippleTrigger]=\"formField\"\n [matRippleDisabled]=\"_isRippleDisabled()\"\n [matRippleCentered]=\"true\">\n <div class=\"mat-ripple-element mat-radio-persistent-ripple\"></div>\n </div>\n </div>\n <label [for]=\"inputId\">\n <ng-content></ng-content>\n </label>\n</div>\n", styles: [".mdc-radio{display:inline-block;position:relative;flex:0 0 auto;box-sizing:content-box;width:20px;height:20px;cursor:pointer;will-change:opacity,transform,border-color,color}.mdc-radio__background{display:inline-block;position:relative;box-sizing:border-box;width:20px;height:20px}.mdc-radio__background::before{position:absolute;transform:scale(0, 0);border-radius:50%;opacity:0;pointer-events:none;content:\"\";transition:opacity 120ms 0ms cubic-bezier(0.4, 0, 0.6, 1),transform 120ms 0ms cubic-bezier(0.4, 0, 0.6, 1)}.mdc-radio__outer-circle{position:absolute;top:0;left:0;box-sizing:border-box;width:100%;height:100%;border-width:2px;border-style:solid;border-radius:50%;transition:border-color 120ms 0ms cubic-bezier(0.4, 0, 0.6, 1)}.mdc-radio__inner-circle{position:absolute;top:0;left:0;box-sizing:border-box;width:100%;height:100%;transform:scale(0, 0);border-width:10px;border-style:solid;border-radius:50%;transition:transform 120ms 0ms cubic-bezier(0.4, 0, 0.6, 1),border-color 120ms 0ms cubic-bezier(0.4, 0, 0.6, 1)}.mdc-radio__native-control{position:absolute;margin:0;padding:0;opacity:0;cursor:inherit;z-index:1}.mdc-radio--touch{margin-top:4px;margin-bottom:4px;margin-right:4px;margin-left:4px}.mdc-radio--touch .mdc-radio__native-control{top:calc((40px - 48px) / 2);right:calc((40px - 48px) / 2);left:calc((40px - 48px) / 2);width:48px;height:48px}.mdc-radio.mdc-ripple-upgraded--background-focused .mdc-radio__focus-ring,.mdc-radio:not(.mdc-ripple-upgraded):focus .mdc-radio__focus-ring{pointer-events:none;border:2px solid transparent;border-radius:6px;position:absolute;top:50%;left:50%;transform:translate(-50%, -50%);height:100%;width:100%}@media screen and (forced-colors: active){.mdc-radio.mdc-ripple-upgraded--background-focused .mdc-radio__focus-ring,.mdc-radio:not(.mdc-ripple-upgraded):focus .mdc-radio__focus-ring{border-color:CanvasText}}.mdc-radio.mdc-ripple-upgraded--background-focused .mdc-radio__focus-ring::after,.mdc-radio:not(.mdc-ripple-upgraded):focus .mdc-radio__focus-ring::after{content:\"\";border:2px solid transparent;border-radius:8px;display:block;position:absolute;top:50%;left:50%;transform:translate(-50%, -50%);height:calc(100% + 4px);width:calc(100% + 4px)}@media screen and (forced-colors: active){.mdc-radio.mdc-ripple-upgraded--background-focused .mdc-radio__focus-ring::after,.mdc-radio:not(.mdc-ripple-upgraded):focus .mdc-radio__focus-ring::after{border-color:CanvasText}}.mdc-radio__native-control:checked+.mdc-radio__background,.mdc-radio__native-control:disabled+.mdc-radio__background{transition:opacity 120ms 0ms cubic-bezier(0, 0, 0.2, 1),transform 120ms 0ms cubic-bezier(0, 0, 0.2, 1)}.mdc-radio__native-control:checked+.mdc-radio__background .mdc-radio__outer-circle,.mdc-radio__native-control:disabled+.mdc-radio__background .mdc-radio__outer-circle{transition:border-color 120ms 0ms cubic-bezier(0, 0, 0.2, 1)}.mdc-radio__native-control:checked+.mdc-radio__background .mdc-radio__inner-circle,.mdc-radio__native-control:disabled+.mdc-radio__background .mdc-radio__inner-circle{transition:transform 120ms 0ms cubic-bezier(0, 0, 0.2, 1),border-color 120ms 0ms cubic-bezier(0, 0, 0.2, 1)}.mdc-radio--disabled{cursor:default;pointer-events:none}.mdc-radio__native-control:checked+.mdc-radio__background .mdc-radio__inner-circle{transform:scale(0.5);transition:transform 120ms 0ms cubic-bezier(0, 0, 0.2, 1),border-color 120ms 0ms cubic-bezier(0, 0, 0.2, 1)}.mdc-radio__native-control:disabled+.mdc-radio__background,[aria-disabled=true] .mdc-radio__native-control+.mdc-radio__background{cursor:default}.mdc-radio__native-control:focus+.mdc-radio__background::before{transform:scale(1);opacity:.12;transition:opacity 120ms 0ms cubic-bezier(0, 0, 0.2, 1),transform 120ms 0ms cubic-bezier(0, 0, 0.2, 1)}.mdc-form-field{display:inline-flex;align-items:center;vertical-align:middle}.mdc-form-field>label{margin-left:0;margin-right:auto;padding-left:4px;padding-right:0;order:0}[dir=rtl] .mdc-form-field>label,.mdc-form-field>label[dir=rtl]{margin-left:auto;margin-right:0}[dir=rtl] .mdc-form-field>label,.mdc-form-field>label[dir=rtl]{padding-left:0;padding-right:4px}.mdc-form-field--nowrap>label{text-overflow:ellipsis;overflow:hidden;white-space:nowrap}.mdc-form-field--align-end>label{margin-left:auto;margin-right:0;padding-left:0;padding-right:4px;order:-1}[dir=rtl] .mdc-form-field--align-end>label,.mdc-form-field--align-end>label[dir=rtl]{margin-left:0;margin-right:auto}[dir=rtl] .mdc-form-field--align-end>label,.mdc-form-field--align-end>label[dir=rtl]{padding-left:4px;padding-right:0}.mdc-form-field--space-between{justify-content:space-between}.mdc-form-field--space-between>label{margin:0}[dir=rtl] .mdc-form-field--space-between>label,.mdc-form-field--space-between>label[dir=rtl]{margin:0}.mat-mdc-radio-button .mdc-radio{padding:calc((var(--mdc-radio-state-layer-size, 40px) - 20px) / 2)}.mat-mdc-radio-button .mdc-radio [aria-disabled=true] .mdc-radio__native-control:checked+.mdc-radio__background .mdc-radio__outer-circle,.mat-mdc-radio-button .mdc-radio .mdc-radio__native-control:disabled:checked+.mdc-radio__background .mdc-radio__outer-circle{border-color:var(--mdc-radio-disabled-selected-icon-color, #000)}.mat-mdc-radio-button .mdc-radio [aria-disabled=true] .mdc-radio__native-control+.mdc-radio__background .mdc-radio__inner-circle,.mat-mdc-radio-button .mdc-radio .mdc-radio__native-control:disabled+.mdc-radio__background .mdc-radio__inner-circle{border-color:var(--mdc-radio-disabled-selected-icon-color, #000)}.mat-mdc-radio-button .mdc-radio [aria-disabled=true] .mdc-radio__native-control:checked+.mdc-radio__background .mdc-radio__outer-circle,.mat-mdc-radio-button .mdc-radio .mdc-radio__native-control:disabled:checked+.mdc-radio__background .mdc-radio__outer-circle{opacity:var(--mdc-radio-disabled-selected-icon-opacity, 0.38)}.mat-mdc-radio-button .mdc-radio [aria-disabled=true] .mdc-radio__native-control+.mdc-radio__background .mdc-radio__inner-circle,.mat-mdc-radio-button .mdc-radio .mdc-radio__native-control:disabled+.mdc-radio__background .mdc-radio__inner-circle{opacity:var(--mdc-radio-disabled-selected-icon-opacity, 0.38)}.mat-mdc-radio-button .mdc-radio [aria-disabled=true] .mdc-radio__native-control:not(:checked)+.mdc-radio__background .mdc-radio__outer-circle,.mat-mdc-radio-button .mdc-radio .mdc-radio__native-control:disabled:not(:checked)+.mdc-radio__background .mdc-radio__outer-circle{border-color:var(--mdc-radio-disabled-unselected-icon-color, #000)}.mat-mdc-radio-button .mdc-radio [aria-disabled=true] .mdc-radio__native-control:not(:checked)+.mdc-radio__background .mdc-radio__outer-circle,.mat-mdc-radio-button .mdc-radio .mdc-radio__native-control:disabled:not(:checked)+.mdc-radio__background .mdc-radio__outer-circle{opacity:var(--mdc-radio-disabled-unselected-icon-opacity, 0.38)}.mat-mdc-radio-button .mdc-radio.mdc-ripple-upgraded--background-focused .mdc-radio__native-control:enabled:checked+.mdc-radio__background .mdc-radio__outer-circle,.mat-mdc-radio-button .mdc-radio:not(.mdc-ripple-upgraded):focus .mdc-radio__native-control:enabled:checked+.mdc-radio__background .mdc-radio__outer-circle{border-color:var(--mdc-radio-selected-focus-icon-color, #6200ee)}.mat-mdc-radio-button .mdc-radio.mdc-ripple-upgraded--background-focused .mdc-radio__native-control:enabled+.mdc-radio__background .mdc-radio__inner-circle,.mat-mdc-radio-button .mdc-radio:not(.mdc-ripple-upgraded):focus .mdc-radio__native-control:enabled+.mdc-radio__background .mdc-radio__inner-circle{border-color:var(--mdc-radio-selected-focus-icon-color, #6200ee)}.mat-mdc-radio-button .mdc-radio:hover .mdc-radio__native-control:enabled:checked+.mdc-radio__background .mdc-radio__outer-circle{border-color:var(--mdc-radio-selected-hover-icon-color, #6200ee)}.mat-mdc-radio-button .mdc-radio:hover .mdc-radio__native-control:enabled+.mdc-radio__background .mdc-radio__inner-circle{border-color:var(--mdc-radio-selected-hover-icon-color, #6200ee)}.mat-mdc-radio-button .mdc-radio .mdc-radio__native-control:enabled:checked+.mdc-radio__background .mdc-radio__outer-circle{border-color:var(--mdc-radio-selected-icon-color, #6200ee)}.mat-mdc-radio-button .mdc-radio .mdc-radio__native-control:enabled+.mdc-radio__background .mdc-radio__inner-circle{border-color:var(--mdc-radio-selected-icon-color, #6200ee)}.mat-mdc-radio-button .mdc-radio:not(:disabled):active .mdc-radio__native-control:enabled:checked+.mdc-radio__background .mdc-radio__outer-circle{border-color:var(--mdc-radio-selected-pressed-icon-color, #6200ee)}.mat-mdc-radio-button .mdc-radio:not(:disabled):active .mdc-radio__native-control:enabled+.mdc-radio__background .mdc-radio__inner-circle{border-color:var(--mdc-radio-selected-pressed-icon-color, #6200ee)}.mat-mdc-radio-button .mdc-radio:hover .mdc-radio__native-control:enabled:not(:checked)+.mdc-radio__background .mdc-radio__outer-circle{border-color:var(--mdc-radio-unselected-hover-icon-color, #000)}.mat-mdc-radio-button .mdc-radio .mdc-radio__native-control:enabled:not(:checked)+.mdc-radio__background .mdc-radio__outer-circle{border-color:var(--mdc-radio-unselected-icon-color, #000)}.mat-mdc-radio-button .mdc-radio:not(:disabled):active .mdc-radio__native-control:enabled:not(:checked)+.mdc-radio__background .mdc-radio__outer-circle{border-color:var(--mdc-radio-unselected-pressed-icon-color, #000)}.mat-mdc-radio-button .mdc-radio .mdc-radio__background::before{top:calc(-1 * (var(--mdc-radio-state-layer-size, 40px) - 20px) / 2);left:calc(-1 * (var(--mdc-radio-state-layer-size, 40px) - 20px) / 2);width:var(--mdc-radio-state-layer-size, 40px);height:var(--mdc-radio-state-layer-size, 40px)}.mat-mdc-radio-button .mdc-radio .mdc-radio__native-control{top:calc((var(--mdc-radio-state-layer-size, 40px) - var(--mdc-radio-state-layer-size, 40px)) / 2);right:calc((var(--mdc-radio-state-layer-size, 40px) - var(--mdc-radio-state-layer-size, 40px)) / 2);left:calc((var(--mdc-radio-state-layer-size, 40px) - var(--mdc-radio-state-layer-size, 40px)) / 2);width:var(--mdc-radio-state-layer-size, 40px);height:var(--mdc-radio-state-layer-size, 40px)}.mat-mdc-radio-button .mat-radio-ripple{top:0;left:0;right:0;bottom:0;position:absolute;pointer-events:none;border-radius:50%}.mat-mdc-radio-button .mat-radio-ripple .mat-ripple-element{opacity:.14}.mat-mdc-radio-button._mat-animation-noopable .mdc-radio__background::before,.mat-mdc-radio-button._mat-animation-noopable .mdc-radio__outer-circle,.mat-mdc-radio-button._mat-animation-noopable .mdc-radio__inner-circle{transition:none !important}.mat-mdc-radio-touch-target{position:absolute;top:50%;height:48px;left:50%;width:48px;transform:translate(-50%, -50%)}[dir=rtl] .mat-mdc-radio-touch-target{left:0;right:50%;transform:translate(50%, -50%)}.cdk-high-contrast-active .mat-mdc-radio-button:not(.mat-radio-disabled).cdk-keyboard-focused .mat-radio-ripple,.cdk-high-contrast-active .mat-mdc-radio-button:not(.mat-radio-disabled).cdk-program-focused .mat-radio-ripple{outline:solid 3px}\n"], directives: [{ type: i3.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i4.MatRipple, selector: "[mat-ripple], [matRipple]", inputs: ["matRippleColor", "matRippleUnbounded", "matRippleCentered", "matRippleRadius", "matRippleAnimation", "matRippleDisabled", "matRippleTrigger"], exportAs: ["matRipple"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
105
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0-next.4", ngImport: i0, type: MatRadioButton, decorators: [{
106
106
  type: Component,
107
107
  args: [{ selector: 'mat-radio-button', host: {
108
108
  'class': 'mat-mdc-radio-button',
@@ -152,10 +152,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.0", ngImpor
152
152
  */
153
153
  class MatRadioModule {
154
154
  }
155
- MatRadioModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: MatRadioModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
156
- MatRadioModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: MatRadioModule, declarations: [MatRadioGroup, MatRadioButton], imports: [MatCommonModule, CommonModule, MatRippleModule], exports: [MatCommonModule, MatRadioGroup, MatRadioButton] });
157
- MatRadioModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: MatRadioModule, imports: [[MatCommonModule, CommonModule, MatRippleModule], MatCommonModule] });
158
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: MatRadioModule, decorators: [{
155
+ MatRadioModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0-next.4", ngImport: i0, type: MatRadioModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
156
+ MatRadioModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "14.0.0-next.4", ngImport: i0, type: MatRadioModule, declarations: [MatRadioGroup, MatRadioButton], imports: [MatCommonModule, CommonModule, MatRippleModule], exports: [MatCommonModule, MatRadioGroup, MatRadioButton] });
157
+ MatRadioModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.0.0-next.4", ngImport: i0, type: MatRadioModule, imports: [[MatCommonModule, CommonModule, MatRippleModule], MatCommonModule] });
158
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0-next.4", ngImport: i0, type: MatRadioModule, decorators: [{
159
159
  type: NgModule,
160
160
  args: [{
161
161
  imports: [MatCommonModule, CommonModule, MatRippleModule],
@@ -1 +1 @@
1
- {"version":3,"file":"mdc-radio.mjs","sources":["../../../../../../src/material-experimental/mdc-radio/radio.ts","../../../../../../src/material-experimental/mdc-radio/radio.html","../../../../../../src/material-experimental/mdc-radio/module.ts","../../../../../../src/material-experimental/mdc-radio/public-api.ts","../../../../../../src/material-experimental/mdc-radio/index.ts","../../../../../../src/material-experimental/mdc-radio/mdc-radio_public_index.ts"],"sourcesContent":["/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nimport {\n AfterViewInit,\n Attribute,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ContentChildren,\n Directive,\n ElementRef,\n forwardRef,\n Inject,\n InjectionToken,\n OnDestroy,\n Optional,\n QueryList,\n ViewEncapsulation,\n} from '@angular/core';\nimport {MDCRadioAdapter, MDCRadioFoundation} from '@material/radio';\nimport {\n MAT_RADIO_DEFAULT_OPTIONS,\n _MatRadioButtonBase,\n MatRadioDefaultOptions,\n _MatRadioGroupBase,\n} from '@angular/material/radio';\nimport {FocusMonitor} from '@angular/cdk/a11y';\nimport {UniqueSelectionDispatcher} from '@angular/cdk/collections';\nimport {ANIMATION_MODULE_TYPE} from '@angular/platform-browser/animations';\nimport {NG_VALUE_ACCESSOR} from '@angular/forms';\n\n// Re-export symbols used by the base Material radio component so that users do not need to depend\n// on both packages.\nexport {MatRadioChange, MAT_RADIO_DEFAULT_OPTIONS} from '@angular/material/radio';\n\n/**\n * Provider Expression that allows mat-radio-group to register as a ControlValueAccessor. This\n * allows it to support [(ngModel)] and ngControl.\n * @docs-private\n */\nexport const MAT_RADIO_GROUP_CONTROL_VALUE_ACCESSOR: any = {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => MatRadioGroup),\n multi: true,\n};\n\n/**\n * Injection token that can be used to inject instances of `MatRadioGroup`. It serves as\n * alternative token to the actual `MatRadioGroup` class which could cause unnecessary\n * retention of the class and its component metadata.\n */\nexport const MAT_RADIO_GROUP = new InjectionToken<_MatRadioGroupBase<_MatRadioButtonBase>>(\n 'MatRadioGroup',\n);\n\n/**\n * A group of radio buttons. May contain one or more `<mat-radio-button>` elements.\n */\n@Directive({\n selector: 'mat-radio-group',\n exportAs: 'matRadioGroup',\n providers: [\n MAT_RADIO_GROUP_CONTROL_VALUE_ACCESSOR,\n {provide: MAT_RADIO_GROUP, useExisting: MatRadioGroup},\n ],\n host: {\n 'role': 'radiogroup',\n 'class': 'mat-mdc-radio-group',\n },\n})\nexport class MatRadioGroup extends _MatRadioGroupBase<MatRadioButton> {\n /** Child radio buttons. */\n @ContentChildren(forwardRef(() => MatRadioButton), {descendants: true})\n _radios: QueryList<MatRadioButton>;\n}\n\n@Component({\n selector: 'mat-radio-button',\n templateUrl: 'radio.html',\n styleUrls: ['radio.css'],\n host: {\n 'class': 'mat-mdc-radio-button',\n '[attr.id]': 'id',\n '[class.mat-primary]': 'color === \"primary\"',\n '[class.mat-accent]': 'color === \"accent\"',\n '[class.mat-warn]': 'color === \"warn\"',\n '[class._mat-animation-noopable]': '_noopAnimations',\n // Needs to be removed since it causes some a11y issues (see #21266).\n '[attr.tabindex]': 'null',\n '[attr.aria-label]': 'null',\n '[attr.aria-labelledby]': 'null',\n '[attr.aria-describedby]': 'null',\n // Note: under normal conditions focus shouldn't land on this element, however it may be\n // programmatically set, for example inside of a focus trap, in this case we want to forward\n // the focus to the native element.\n '(focus)': '_inputElement.nativeElement.focus()',\n },\n inputs: ['disableRipple', 'tabIndex'],\n exportAs: 'matRadioButton',\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class MatRadioButton extends _MatRadioButtonBase implements AfterViewInit, OnDestroy {\n private _radioAdapter: MDCRadioAdapter = {\n addClass: (className: string) => this._setClass(className, true),\n removeClass: (className: string) => this._setClass(className, false),\n setNativeControlDisabled: (disabled: boolean) => {\n if (this.disabled !== disabled) {\n this.disabled = disabled;\n this._changeDetector.markForCheck();\n }\n },\n };\n\n _radioFoundation = new MDCRadioFoundation(this._radioAdapter);\n _classes: {[key: string]: boolean} = {};\n\n constructor(\n @Optional() @Inject(MAT_RADIO_GROUP) radioGroup: MatRadioGroup,\n elementRef: ElementRef,\n _changeDetector: ChangeDetectorRef,\n _focusMonitor: FocusMonitor,\n _radioDispatcher: UniqueSelectionDispatcher,\n @Optional() @Inject(ANIMATION_MODULE_TYPE) animationMode?: string,\n @Optional()\n @Inject(MAT_RADIO_DEFAULT_OPTIONS)\n _providerOverride?: MatRadioDefaultOptions,\n @Attribute('tabindex') tabIndex?: string,\n ) {\n super(\n radioGroup,\n elementRef,\n _changeDetector,\n _focusMonitor,\n _radioDispatcher,\n animationMode,\n _providerOverride,\n tabIndex,\n );\n }\n\n override ngAfterViewInit() {\n super.ngAfterViewInit();\n this._radioFoundation.init();\n }\n\n override ngOnDestroy() {\n super.ngOnDestroy();\n this._radioFoundation.destroy();\n }\n\n private _setClass(cssClass: string, active: boolean) {\n this._classes = {...this._classes, [cssClass]: active};\n this._changeDetector.markForCheck();\n }\n\n /**\n * Overrides the parent function so that the foundation can be set with the current\n * disabled state.\n */\n protected override _setDisabled(value: boolean) {\n super._setDisabled(value);\n this._radioFoundation.setDisabled(this.disabled);\n }\n}\n","<div class=\"mdc-form-field\" #formField\n [class.mdc-form-field--align-end]=\"labelPosition == 'before'\">\n <div class=\"mdc-radio\" [ngClass]=\"_classes\">\n <!-- Render this element first so the input is on top. -->\n <div class=\"mat-mdc-radio-touch-target\" (click)=\"_onInputInteraction($event)\"></div>\n <input #input class=\"mdc-radio__native-control\" type=\"radio\"\n [id]=\"inputId\"\n [checked]=\"checked\"\n [disabled]=\"disabled\"\n [tabIndex]=\"tabIndex\"\n [attr.name]=\"name\"\n [attr.value]=\"value\"\n [required]=\"required\"\n [attr.aria-label]=\"ariaLabel\"\n [attr.aria-labelledby]=\"ariaLabelledby\"\n [attr.aria-describedby]=\"ariaDescribedby\"\n (change)=\"_onInputInteraction($event)\">\n <div class=\"mdc-radio__background\">\n <div class=\"mdc-radio__outer-circle\"></div>\n <div class=\"mdc-radio__inner-circle\"></div>\n </div>\n <div mat-ripple class=\"mat-radio-ripple mat-mdc-focus-indicator\"\n [matRippleTrigger]=\"formField\"\n [matRippleDisabled]=\"_isRippleDisabled()\"\n [matRippleCentered]=\"true\">\n <div class=\"mat-ripple-element mat-radio-persistent-ripple\"></div>\n </div>\n </div>\n <label [for]=\"inputId\">\n <ng-content></ng-content>\n </label>\n</div>\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nimport {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {MatCommonModule, MatRippleModule} from '@angular/material-experimental/mdc-core';\nimport {MatRadioButton, MatRadioGroup} from './radio';\n\n@NgModule({\n imports: [MatCommonModule, CommonModule, MatRippleModule],\n exports: [MatCommonModule, MatRadioGroup, MatRadioButton],\n declarations: [MatRadioGroup, MatRadioButton],\n})\nexport class MatRadioModule {}\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nexport * from './radio';\nexport * from './module';\n\nexport {MAT_RADIO_DEFAULT_OPTIONS_FACTORY, MatRadioDefaultOptions} from '@angular/material/radio';\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nexport * from './public-api';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mdc-radio.mjs","sources":["../../../../../../src/material-experimental/mdc-radio/radio.ts","../../../../../../src/material-experimental/mdc-radio/radio.html","../../../../../../src/material-experimental/mdc-radio/module.ts","../../../../../../src/material-experimental/mdc-radio/public-api.ts","../../../../../../src/material-experimental/mdc-radio/index.ts","../../../../../../src/material-experimental/mdc-radio/mdc-radio_public_index.ts"],"sourcesContent":["/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nimport {\n AfterViewInit,\n Attribute,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ContentChildren,\n Directive,\n ElementRef,\n forwardRef,\n Inject,\n InjectionToken,\n OnDestroy,\n Optional,\n QueryList,\n ViewEncapsulation,\n} from '@angular/core';\nimport {MDCRadioAdapter, MDCRadioFoundation} from '@material/radio';\nimport {\n MAT_RADIO_DEFAULT_OPTIONS,\n _MatRadioButtonBase,\n MatRadioDefaultOptions,\n _MatRadioGroupBase,\n} from '@angular/material/radio';\nimport {FocusMonitor} from '@angular/cdk/a11y';\nimport {UniqueSelectionDispatcher} from '@angular/cdk/collections';\nimport {ANIMATION_MODULE_TYPE} from '@angular/platform-browser/animations';\nimport {NG_VALUE_ACCESSOR} from '@angular/forms';\n\n// Re-export symbols used by the base Material radio component so that users do not need to depend\n// on both packages.\nexport {MatRadioChange, MAT_RADIO_DEFAULT_OPTIONS} from '@angular/material/radio';\n\n/**\n * Provider Expression that allows mat-radio-group to register as a ControlValueAccessor. This\n * allows it to support [(ngModel)] and ngControl.\n * @docs-private\n */\nexport const MAT_RADIO_GROUP_CONTROL_VALUE_ACCESSOR: any = {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => MatRadioGroup),\n multi: true,\n};\n\n/**\n * Injection token that can be used to inject instances of `MatRadioGroup`. It serves as\n * alternative token to the actual `MatRadioGroup` class which could cause unnecessary\n * retention of the class and its component metadata.\n */\nexport const MAT_RADIO_GROUP = new InjectionToken<_MatRadioGroupBase<_MatRadioButtonBase>>(\n 'MatRadioGroup',\n);\n\n/**\n * A group of radio buttons. May contain one or more `<mat-radio-button>` elements.\n */\n@Directive({\n selector: 'mat-radio-group',\n exportAs: 'matRadioGroup',\n providers: [\n MAT_RADIO_GROUP_CONTROL_VALUE_ACCESSOR,\n {provide: MAT_RADIO_GROUP, useExisting: MatRadioGroup},\n ],\n host: {\n 'role': 'radiogroup',\n 'class': 'mat-mdc-radio-group',\n },\n})\nexport class MatRadioGroup extends _MatRadioGroupBase<MatRadioButton> {\n /** Child radio buttons. */\n @ContentChildren(forwardRef(() => MatRadioButton), {descendants: true})\n _radios: QueryList<MatRadioButton>;\n}\n\n@Component({\n selector: 'mat-radio-button',\n templateUrl: 'radio.html',\n styleUrls: ['radio.css'],\n host: {\n 'class': 'mat-mdc-radio-button',\n '[attr.id]': 'id',\n '[class.mat-primary]': 'color === \"primary\"',\n '[class.mat-accent]': 'color === \"accent\"',\n '[class.mat-warn]': 'color === \"warn\"',\n '[class._mat-animation-noopable]': '_noopAnimations',\n // Needs to be removed since it causes some a11y issues (see #21266).\n '[attr.tabindex]': 'null',\n '[attr.aria-label]': 'null',\n '[attr.aria-labelledby]': 'null',\n '[attr.aria-describedby]': 'null',\n // Note: under normal conditions focus shouldn't land on this element, however it may be\n // programmatically set, for example inside of a focus trap, in this case we want to forward\n // the focus to the native element.\n '(focus)': '_inputElement.nativeElement.focus()',\n },\n inputs: ['disableRipple', 'tabIndex'],\n exportAs: 'matRadioButton',\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class MatRadioButton extends _MatRadioButtonBase implements AfterViewInit, OnDestroy {\n private _radioAdapter: MDCRadioAdapter = {\n addClass: (className: string) => this._setClass(className, true),\n removeClass: (className: string) => this._setClass(className, false),\n setNativeControlDisabled: (disabled: boolean) => {\n if (this.disabled !== disabled) {\n this.disabled = disabled;\n this._changeDetector.markForCheck();\n }\n },\n };\n\n _radioFoundation = new MDCRadioFoundation(this._radioAdapter);\n _classes: {[key: string]: boolean} = {};\n\n constructor(\n @Optional() @Inject(MAT_RADIO_GROUP) radioGroup: MatRadioGroup,\n elementRef: ElementRef,\n _changeDetector: ChangeDetectorRef,\n _focusMonitor: FocusMonitor,\n _radioDispatcher: UniqueSelectionDispatcher,\n @Optional() @Inject(ANIMATION_MODULE_TYPE) animationMode?: string,\n @Optional()\n @Inject(MAT_RADIO_DEFAULT_OPTIONS)\n _providerOverride?: MatRadioDefaultOptions,\n @Attribute('tabindex') tabIndex?: string,\n ) {\n super(\n radioGroup,\n elementRef,\n _changeDetector,\n _focusMonitor,\n _radioDispatcher,\n animationMode,\n _providerOverride,\n tabIndex,\n );\n }\n\n override ngAfterViewInit() {\n super.ngAfterViewInit();\n this._radioFoundation.init();\n }\n\n override ngOnDestroy() {\n super.ngOnDestroy();\n this._radioFoundation.destroy();\n }\n\n private _setClass(cssClass: string, active: boolean) {\n this._classes = {...this._classes, [cssClass]: active};\n this._changeDetector.markForCheck();\n }\n\n /**\n * Overrides the parent function so that the foundation can be set with the current\n * disabled state.\n */\n protected override _setDisabled(value: boolean) {\n super._setDisabled(value);\n this._radioFoundation.setDisabled(this.disabled);\n }\n}\n","<div class=\"mdc-form-field\" #formField\n [class.mdc-form-field--align-end]=\"labelPosition == 'before'\">\n <div class=\"mdc-radio\" [ngClass]=\"_classes\">\n <!-- Render this element first so the input is on top. -->\n <div class=\"mat-mdc-radio-touch-target\" (click)=\"_onInputInteraction($event)\"></div>\n <input #input class=\"mdc-radio__native-control\" type=\"radio\"\n [id]=\"inputId\"\n [checked]=\"checked\"\n [disabled]=\"disabled\"\n [tabIndex]=\"tabIndex\"\n [attr.name]=\"name\"\n [attr.value]=\"value\"\n [required]=\"required\"\n [attr.aria-label]=\"ariaLabel\"\n [attr.aria-labelledby]=\"ariaLabelledby\"\n [attr.aria-describedby]=\"ariaDescribedby\"\n (change)=\"_onInputInteraction($event)\">\n <div class=\"mdc-radio__background\">\n <div class=\"mdc-radio__outer-circle\"></div>\n <div class=\"mdc-radio__inner-circle\"></div>\n </div>\n <div mat-ripple class=\"mat-radio-ripple mat-mdc-focus-indicator\"\n [matRippleTrigger]=\"formField\"\n [matRippleDisabled]=\"_isRippleDisabled()\"\n [matRippleCentered]=\"true\">\n <div class=\"mat-ripple-element mat-radio-persistent-ripple\"></div>\n </div>\n </div>\n <label [for]=\"inputId\">\n <ng-content></ng-content>\n </label>\n</div>\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nimport {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {MatCommonModule, MatRippleModule} from '@angular/material-experimental/mdc-core';\nimport {MatRadioButton, MatRadioGroup} from './radio';\n\n@NgModule({\n imports: [MatCommonModule, CommonModule, MatRippleModule],\n exports: [MatCommonModule, MatRadioGroup, MatRadioButton],\n declarations: [MatRadioGroup, MatRadioButton],\n})\nexport class MatRadioModule {}\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nexport * from './radio';\nexport * from './module';\n\nexport {MAT_RADIO_DEFAULT_OPTIONS_FACTORY, MatRadioDefaultOptions} from '@angular/material/radio';\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nexport * from './public-api';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -73,9 +73,9 @@ class MatSelectChange {
73
73
  */
74
74
  class MatSelectTrigger {
75
75
  }
76
- MatSelectTrigger.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: MatSelectTrigger, deps: [], target: i0.ɵɵFactoryTarget.Directive });
77
- MatSelectTrigger.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.2.0", type: MatSelectTrigger, selector: "mat-select-trigger", providers: [{ provide: MAT_SELECT_TRIGGER, useExisting: MatSelectTrigger }], ngImport: i0 });
78
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: MatSelectTrigger, decorators: [{
76
+ MatSelectTrigger.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0-next.4", ngImport: i0, type: MatSelectTrigger, deps: [], target: i0.ɵɵFactoryTarget.Directive });
77
+ MatSelectTrigger.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "14.0.0-next.4", type: MatSelectTrigger, selector: "mat-select-trigger", providers: [{ provide: MAT_SELECT_TRIGGER, useExisting: MatSelectTrigger }], ngImport: i0 });
78
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0-next.4", ngImport: i0, type: MatSelectTrigger, decorators: [{
79
79
  type: Directive,
80
80
  args: [{
81
81
  selector: 'mat-select-trigger',
@@ -168,12 +168,12 @@ class MatSelect extends _MatSelectBase {
168
168
  return refToMeasure.nativeElement.getBoundingClientRect().width;
169
169
  }
170
170
  }
171
- MatSelect.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: MatSelect, deps: null, target: i0.ɵɵFactoryTarget.Component });
172
- MatSelect.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.0", type: MatSelect, selector: "mat-select", inputs: { disabled: "disabled", disableRipple: "disableRipple", tabIndex: "tabIndex" }, host: { attributes: { "role": "combobox", "aria-autocomplete": "none", "aria-haspopup": "listbox" }, listeners: { "keydown": "_handleKeydown($event)", "focus": "_onFocus()", "blur": "_onBlur()" }, properties: { "attr.id": "id", "attr.tabindex": "tabIndex", "attr.aria-controls": "panelOpen ? id + \"-panel\" : null", "attr.aria-expanded": "panelOpen", "attr.aria-label": "ariaLabel || null", "attr.aria-required": "required.toString()", "attr.aria-disabled": "disabled.toString()", "attr.aria-invalid": "errorState", "attr.aria-describedby": "_ariaDescribedby || null", "attr.aria-activedescendant": "_getAriaActiveDescendant()", "class.mat-mdc-select-disabled": "disabled", "class.mat-mdc-select-invalid": "errorState", "class.mat-mdc-select-required": "required", "class.mat-mdc-select-empty": "empty", "class.mat-mdc-select-multiple": "multiple" }, classAttribute: "mat-mdc-select" }, providers: [
171
+ MatSelect.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0-next.4", ngImport: i0, type: MatSelect, deps: null, target: i0.ɵɵFactoryTarget.Component });
172
+ MatSelect.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "14.0.0-next.4", type: MatSelect, selector: "mat-select", inputs: { disabled: "disabled", disableRipple: "disableRipple", tabIndex: "tabIndex" }, host: { attributes: { "role": "combobox", "aria-autocomplete": "none", "aria-haspopup": "listbox" }, listeners: { "keydown": "_handleKeydown($event)", "focus": "_onFocus()", "blur": "_onBlur()" }, properties: { "attr.id": "id", "attr.tabindex": "tabIndex", "attr.aria-controls": "panelOpen ? id + \"-panel\" : null", "attr.aria-expanded": "panelOpen", "attr.aria-label": "ariaLabel || null", "attr.aria-required": "required.toString()", "attr.aria-disabled": "disabled.toString()", "attr.aria-invalid": "errorState", "attr.aria-describedby": "_ariaDescribedby || null", "attr.aria-activedescendant": "_getAriaActiveDescendant()", "class.mat-mdc-select-disabled": "disabled", "class.mat-mdc-select-invalid": "errorState", "class.mat-mdc-select-required": "required", "class.mat-mdc-select-empty": "empty", "class.mat-mdc-select-multiple": "multiple" }, classAttribute: "mat-mdc-select" }, providers: [
173
173
  { provide: MatFormFieldControl, useExisting: MatSelect },
174
174
  { provide: MAT_OPTION_PARENT_COMPONENT, useExisting: MatSelect },
175
- ], queries: [{ propertyName: "customTrigger", first: true, predicate: MAT_SELECT_TRIGGER, descendants: true }, { propertyName: "options", predicate: MatOption, descendants: true }, { propertyName: "optionGroups", predicate: MAT_OPTGROUP, descendants: true }], exportAs: ["matSelect"], usesInheritance: true, ngImport: i0, template: "<!--\n Note that the select trigger element specifies `aria-owns` pointing to the listbox overlay.\n While aria-owns is not required for the ARIA 1.2 `role=\"combobox\"` interaction pattern,\n it fixes an issue with VoiceOver when the select appears inside of an `aria-model=\"true\"`\n element (e.g. a dialog). Without this `aria-owns`, the `aria-modal` on a dialog prevents\n VoiceOver from \"seeing\" the select's listbox overlay for aria-activedescendant.\n Using `aria-owns` re-parents the select overlay so that it works again.\n See https://github.com/angular/components/issues/20694\n-->\n<div cdk-overlay-origin\n [attr.aria-owns]=\"panelOpen ? id + '-panel' : null\"\n class=\"mat-mdc-select-trigger\"\n (click)=\"toggle()\"\n #fallbackOverlayOrigin=\"cdkOverlayOrigin\"\n #trigger>\n <div class=\"mat-mdc-select-value\" [ngSwitch]=\"empty\" [attr.id]=\"_valueId\">\n <span class=\"mat-mdc-select-placeholder mat-mdc-select-min-line\" *ngSwitchCase=\"true\">{{placeholder}}</span>\n <span class=\"mat-mdc-select-value-text\" *ngSwitchCase=\"false\" [ngSwitch]=\"!!customTrigger\">\n <span class=\"mat-mdc-select-min-line\" *ngSwitchDefault>{{triggerValue}}</span>\n <ng-content select=\"mat-select-trigger\" *ngSwitchCase=\"true\"></ng-content>\n </span>\n </div>\n\n <div class=\"mat-mdc-select-arrow-wrapper\">\n <div class=\"mat-mdc-select-arrow\">\n <!-- Use an inline SVG, because it works better than a CSS triangle in high contrast mode. -->\n <svg viewBox=\"0 0 24 24\" width=\"24px\" height=\"24px\" focusable=\"false\">\n <path d=\"M7 10l5 5 5-5z\"/>\n </svg>\n </div>\n </div>\n</div>\n\n<ng-template\n cdk-connected-overlay\n cdkConnectedOverlayLockPosition\n cdkConnectedOverlayHasBackdrop\n cdkConnectedOverlayBackdropClass=\"cdk-overlay-transparent-backdrop\"\n [cdkConnectedOverlayPanelClass]=\"_overlayPanelClass\"\n [cdkConnectedOverlayScrollStrategy]=\"_scrollStrategy\"\n [cdkConnectedOverlayOrigin]=\"_preferredOverlayOrigin || fallbackOverlayOrigin\"\n [cdkConnectedOverlayOpen]=\"panelOpen\"\n [cdkConnectedOverlayPositions]=\"_positions\"\n [cdkConnectedOverlayWidth]=\"_overlayWidth\"\n (backdropClick)=\"close()\"\n (attach)=\"_onAttached()\"\n (detach)=\"close()\">\n <div\n #panel\n role=\"listbox\"\n tabindex=\"-1\"\n class=\"mat-mdc-select-panel mdc-menu-surface mdc-menu-surface--open {{ _getPanelTheme() }}\"\n [attr.id]=\"id + '-panel'\"\n [attr.aria-multiselectable]=\"multiple\"\n [attr.aria-label]=\"ariaLabel || null\"\n [attr.aria-labelledby]=\"_getPanelAriaLabelledby()\"\n [ngClass]=\"panelClass\"\n [@transformPanel]=\"'showing'\"\n (@transformPanel.done)=\"_panelDoneAnimatingStream.next($event.toState)\"\n (keydown)=\"_handleKeydown($event)\">\n <ng-content></ng-content>\n </div>\n</ng-template>\n", styles: [".mdc-menu-surface{display:none;position:absolute;box-sizing:border-box;max-width:calc(100vw - 32px);max-width:var(--mdc-menu-max-width, calc(100vw - 32px));max-height:calc(100vh - 32px);max-height:var(--mdc-menu-max-height, calc(100vh - 32px));margin:0;padding:0;transform:scale(1);transform-origin:top left;opacity:0;overflow:auto;will-change:transform,opacity;z-index:8;border-radius:4px;border-radius:var(--mdc-shape-medium, 4px);transform-origin-left:top left;transform-origin-right:top right}.mdc-menu-surface:focus{outline:none}.mdc-menu-surface--animating-open{display:inline-block;transform:scale(0.8);opacity:0}.mdc-menu-surface--open{display:inline-block;transform:scale(1);opacity:1}.mdc-menu-surface--animating-closed{display:inline-block;opacity:0}[dir=rtl] .mdc-menu-surface,.mdc-menu-surface[dir=rtl]{transform-origin-left:top right;transform-origin-right:top left}.mdc-menu-surface--anchor{position:relative;overflow:visible}.mdc-menu-surface--fixed{position:fixed}.mdc-menu-surface--fullwidth{width:100%}.mat-mdc-select{display:inline-block;width:100%;outline:none}.mat-mdc-select-trigger{display:inline-table;cursor:pointer;position:relative;box-sizing:border-box}.mat-mdc-select-disabled .mat-mdc-select-trigger{-webkit-user-select:none;-moz-user-select:none;user-select:none;cursor:default}.mat-mdc-select-value{display:table-cell;max-width:0;width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mat-mdc-select-value-text{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mat-mdc-select-arrow-wrapper{display:table-cell;vertical-align:middle}.mat-form-field-appearance-fill .mat-mdc-select-arrow-wrapper{transform:translateY(-40%)}.mat-mdc-select-arrow{width:10px;height:5px;position:relative}.mat-mdc-select-arrow svg{fill:currentColor;position:absolute;top:50%;left:50%;transform:translate(-50%, -50%)}.cdk-high-contrast-active .mat-mdc-select-arrow svg{fill:CanvasText}.mdc-menu-surface.mat-mdc-select-panel{width:100%;max-height:275px;position:static;outline:0;margin:0;padding:8px 0;list-style-type:none}.mdc-menu-surface.mat-mdc-select-panel:focus{outline:none}.cdk-high-contrast-active .mdc-menu-surface.mat-mdc-select-panel{outline:solid 1px}.cdk-overlay-pane:not(.mat-mdc-select-panel-above) .mdc-menu-surface.mat-mdc-select-panel{border-top-left-radius:0;border-top-right-radius:0;transform-origin:top center}.mat-mdc-select-panel-above .mdc-menu-surface.mat-mdc-select-panel{border-bottom-left-radius:0;border-bottom-right-radius:0;transform-origin:bottom center}.mat-mdc-select-placeholder{transition:color 400ms 133.3333333333ms cubic-bezier(0.25, 0.8, 0.25, 1)}._mat-animation-noopable .mat-mdc-select-placeholder{transition:none}.mat-form-field-hide-placeholder .mat-mdc-select-placeholder{color:transparent;-webkit-text-fill-color:transparent;transition:none;display:block}.mat-mdc-form-field-type-mat-select.mat-form-field-appearance-fill .mdc-floating-label{max-width:calc(100% - 18px)}.mat-mdc-form-field-type-mat-select.mat-form-field-appearance-fill .mdc-floating-label--float-above{max-width:calc(100% / 0.75 - 24px)}.mat-mdc-form-field-type-mat-select.mat-form-field-appearance-outline .mdc-notched-outline__notch{max-width:calc(100% - 60px)}.mat-mdc-form-field-type-mat-select.mat-form-field-appearance-outline .mdc-text-field--label-floating .mdc-notched-outline__notch{max-width:calc(100% - 24px)}.mat-mdc-select-min-line:empty::before{content:\" \";white-space:pre;width:1px;display:inline-block;opacity:0}\n"], directives: [{ type: i1.CdkOverlayOrigin, selector: "[cdk-overlay-origin], [overlay-origin], [cdkOverlayOrigin]", exportAs: ["cdkOverlayOrigin"] }, { type: i2.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { type: i2.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { type: i2.NgSwitchDefault, selector: "[ngSwitchDefault]" }, { type: i1.CdkConnectedOverlay, selector: "[cdk-connected-overlay], [connected-overlay], [cdkConnectedOverlay]", inputs: ["cdkConnectedOverlayOrigin", "cdkConnectedOverlayPositions", "cdkConnectedOverlayPositionStrategy", "cdkConnectedOverlayOffsetX", "cdkConnectedOverlayOffsetY", "cdkConnectedOverlayWidth", "cdkConnectedOverlayHeight", "cdkConnectedOverlayMinWidth", "cdkConnectedOverlayMinHeight", "cdkConnectedOverlayBackdropClass", "cdkConnectedOverlayPanelClass", "cdkConnectedOverlayViewportMargin", "cdkConnectedOverlayScrollStrategy", "cdkConnectedOverlayOpen", "cdkConnectedOverlayDisableClose", "cdkConnectedOverlayTransformOriginOn", "cdkConnectedOverlayHasBackdrop", "cdkConnectedOverlayLockPosition", "cdkConnectedOverlayFlexibleDimensions", "cdkConnectedOverlayGrowAfterOpen", "cdkConnectedOverlayPush"], outputs: ["backdropClick", "positionChange", "attach", "detach", "overlayKeydown", "overlayOutsideClick"], exportAs: ["cdkConnectedOverlay"] }, { type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }], animations: [matSelectAnimations.transformPanel], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
176
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: MatSelect, decorators: [{
175
+ ], queries: [{ propertyName: "customTrigger", first: true, predicate: MAT_SELECT_TRIGGER, descendants: true }, { propertyName: "options", predicate: MatOption, descendants: true }, { propertyName: "optionGroups", predicate: MAT_OPTGROUP, descendants: true }], exportAs: ["matSelect"], usesInheritance: true, ngImport: i0, template: "<!--\n Note that the select trigger element specifies `aria-owns` pointing to the listbox overlay.\n While aria-owns is not required for the ARIA 1.2 `role=\"combobox\"` interaction pattern,\n it fixes an issue with VoiceOver when the select appears inside of an `aria-model=\"true\"`\n element (e.g. a dialog). Without this `aria-owns`, the `aria-modal` on a dialog prevents\n VoiceOver from \"seeing\" the select's listbox overlay for aria-activedescendant.\n Using `aria-owns` re-parents the select overlay so that it works again.\n See https://github.com/angular/components/issues/20694\n-->\n<div cdk-overlay-origin\n [attr.aria-owns]=\"panelOpen ? id + '-panel' : null\"\n class=\"mat-mdc-select-trigger\"\n (click)=\"toggle()\"\n #fallbackOverlayOrigin=\"cdkOverlayOrigin\"\n #trigger>\n <div class=\"mat-mdc-select-value\" [ngSwitch]=\"empty\" [attr.id]=\"_valueId\">\n <span class=\"mat-mdc-select-placeholder mat-mdc-select-min-line\" *ngSwitchCase=\"true\">{{placeholder}}</span>\n <span class=\"mat-mdc-select-value-text\" *ngSwitchCase=\"false\" [ngSwitch]=\"!!customTrigger\">\n <span class=\"mat-mdc-select-min-line\" *ngSwitchDefault>{{triggerValue}}</span>\n <ng-content select=\"mat-select-trigger\" *ngSwitchCase=\"true\"></ng-content>\n </span>\n </div>\n\n <div class=\"mat-mdc-select-arrow-wrapper\">\n <div class=\"mat-mdc-select-arrow\">\n <!-- Use an inline SVG, because it works better than a CSS triangle in high contrast mode. -->\n <svg viewBox=\"0 0 24 24\" width=\"24px\" height=\"24px\" focusable=\"false\">\n <path d=\"M7 10l5 5 5-5z\"/>\n </svg>\n </div>\n </div>\n</div>\n\n<ng-template\n cdk-connected-overlay\n cdkConnectedOverlayLockPosition\n cdkConnectedOverlayHasBackdrop\n cdkConnectedOverlayBackdropClass=\"cdk-overlay-transparent-backdrop\"\n [cdkConnectedOverlayPanelClass]=\"_overlayPanelClass\"\n [cdkConnectedOverlayScrollStrategy]=\"_scrollStrategy\"\n [cdkConnectedOverlayOrigin]=\"_preferredOverlayOrigin || fallbackOverlayOrigin\"\n [cdkConnectedOverlayOpen]=\"panelOpen\"\n [cdkConnectedOverlayPositions]=\"_positions\"\n [cdkConnectedOverlayWidth]=\"_overlayWidth\"\n (backdropClick)=\"close()\"\n (attach)=\"_onAttached()\"\n (detach)=\"close()\">\n <div\n #panel\n role=\"listbox\"\n tabindex=\"-1\"\n class=\"mat-mdc-select-panel mdc-menu-surface mdc-menu-surface--open {{ _getPanelTheme() }}\"\n [attr.id]=\"id + '-panel'\"\n [attr.aria-multiselectable]=\"multiple\"\n [attr.aria-label]=\"ariaLabel || null\"\n [attr.aria-labelledby]=\"_getPanelAriaLabelledby()\"\n [ngClass]=\"panelClass\"\n [@transformPanel]=\"'showing'\"\n (@transformPanel.done)=\"_panelDoneAnimatingStream.next($event.toState)\"\n (keydown)=\"_handleKeydown($event)\">\n <ng-content></ng-content>\n </div>\n</ng-template>\n", styles: [".mdc-menu-surface{display:none;position:absolute;box-sizing:border-box;max-width:calc(100vw - 32px);max-width:var(--mdc-menu-max-width, calc(100vw - 32px));max-height:calc(100vh - 32px);max-height:var(--mdc-menu-max-height, calc(100vh - 32px));margin:0;padding:0;transform:scale(1);transform-origin:top left;opacity:0;overflow:auto;will-change:transform,opacity;z-index:8;border-radius:4px;border-radius:var(--mdc-shape-medium, 4px);transform-origin-left:top left;transform-origin-right:top right}.mdc-menu-surface:focus{outline:none}.mdc-menu-surface--animating-open{display:inline-block;transform:scale(0.8);opacity:0}.mdc-menu-surface--open{display:inline-block;transform:scale(1);opacity:1}.mdc-menu-surface--animating-closed{display:inline-block;opacity:0}[dir=rtl] .mdc-menu-surface,.mdc-menu-surface[dir=rtl]{transform-origin-left:top right;transform-origin-right:top left}.mdc-menu-surface--anchor{position:relative;overflow:visible}.mdc-menu-surface--fixed{position:fixed}.mdc-menu-surface--fullwidth{width:100%}.mat-mdc-select{display:inline-block;width:100%;outline:none}.mat-mdc-select-trigger{display:inline-table;cursor:pointer;position:relative;box-sizing:border-box}.mat-mdc-select-disabled .mat-mdc-select-trigger{-webkit-user-select:none;-moz-user-select:none;user-select:none;cursor:default}.mat-mdc-select-value{display:table-cell;max-width:0;width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mat-mdc-select-value-text{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mat-mdc-select-arrow-wrapper{display:table-cell;vertical-align:middle}.mat-form-field-appearance-fill .mat-mdc-select-arrow-wrapper{transform:translateY(-40%)}.mat-mdc-select-arrow{width:10px;height:5px;position:relative}.mat-mdc-select-arrow svg{fill:currentColor;position:absolute;top:50%;left:50%;transform:translate(-50%, -50%)}.cdk-high-contrast-active .mat-mdc-select-arrow svg{fill:CanvasText}.mat-mdc-select-disabled .cdk-high-contrast-active .mat-mdc-select-arrow svg{fill:GrayText}.mdc-menu-surface.mat-mdc-select-panel{width:100%;max-height:275px;position:static;outline:0;margin:0;padding:8px 0;list-style-type:none}.mdc-menu-surface.mat-mdc-select-panel:focus{outline:none}.cdk-high-contrast-active .mdc-menu-surface.mat-mdc-select-panel{outline:solid 1px}.cdk-overlay-pane:not(.mat-mdc-select-panel-above) .mdc-menu-surface.mat-mdc-select-panel{border-top-left-radius:0;border-top-right-radius:0;transform-origin:top center}.mat-mdc-select-panel-above .mdc-menu-surface.mat-mdc-select-panel{border-bottom-left-radius:0;border-bottom-right-radius:0;transform-origin:bottom center}.mat-mdc-select-placeholder{transition:color 400ms 133.3333333333ms cubic-bezier(0.25, 0.8, 0.25, 1)}._mat-animation-noopable .mat-mdc-select-placeholder{transition:none}.mat-form-field-hide-placeholder .mat-mdc-select-placeholder{color:transparent;-webkit-text-fill-color:transparent;transition:none;display:block}.mat-mdc-form-field-type-mat-select.mat-form-field-appearance-fill .mat-mdc-floating-label{max-width:calc(100% - 18px)}.mat-mdc-form-field-type-mat-select.mat-form-field-appearance-fill .mdc-floating-label--float-above{max-width:calc(100% / 0.75 - 24px)}.mat-mdc-form-field-type-mat-select.mat-form-field-appearance-outline .mdc-notched-outline__notch{max-width:calc(100% - 60px)}.mat-mdc-form-field-type-mat-select.mat-form-field-appearance-outline .mdc-text-field--label-floating .mdc-notched-outline__notch{max-width:calc(100% - 24px)}.mat-mdc-select-min-line:empty::before{content:\" \";white-space:pre;width:1px;display:inline-block;opacity:0}\n"], directives: [{ type: i1.CdkOverlayOrigin, selector: "[cdk-overlay-origin], [overlay-origin], [cdkOverlayOrigin]", exportAs: ["cdkOverlayOrigin"] }, { type: i2.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { type: i2.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { type: i2.NgSwitchDefault, selector: "[ngSwitchDefault]" }, { type: i1.CdkConnectedOverlay, selector: "[cdk-connected-overlay], [connected-overlay], [cdkConnectedOverlay]", inputs: ["cdkConnectedOverlayOrigin", "cdkConnectedOverlayPositions", "cdkConnectedOverlayPositionStrategy", "cdkConnectedOverlayOffsetX", "cdkConnectedOverlayOffsetY", "cdkConnectedOverlayWidth", "cdkConnectedOverlayHeight", "cdkConnectedOverlayMinWidth", "cdkConnectedOverlayMinHeight", "cdkConnectedOverlayBackdropClass", "cdkConnectedOverlayPanelClass", "cdkConnectedOverlayViewportMargin", "cdkConnectedOverlayScrollStrategy", "cdkConnectedOverlayOpen", "cdkConnectedOverlayDisableClose", "cdkConnectedOverlayTransformOriginOn", "cdkConnectedOverlayHasBackdrop", "cdkConnectedOverlayLockPosition", "cdkConnectedOverlayFlexibleDimensions", "cdkConnectedOverlayGrowAfterOpen", "cdkConnectedOverlayPush"], outputs: ["backdropClick", "positionChange", "attach", "detach", "overlayKeydown", "overlayOutsideClick"], exportAs: ["cdkConnectedOverlay"] }, { type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }], animations: [matSelectAnimations.transformPanel], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
176
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0-next.4", ngImport: i0, type: MatSelect, decorators: [{
177
177
  type: Component,
178
178
  args: [{ selector: 'mat-select', exportAs: 'matSelect', inputs: ['disabled', 'disableRipple', 'tabIndex'], encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, host: {
179
179
  'role': 'combobox',
@@ -201,7 +201,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.0", ngImpor
201
201
  }, animations: [matSelectAnimations.transformPanel], providers: [
202
202
  { provide: MatFormFieldControl, useExisting: MatSelect },
203
203
  { provide: MAT_OPTION_PARENT_COMPONENT, useExisting: MatSelect },
204
- ], template: "<!--\n Note that the select trigger element specifies `aria-owns` pointing to the listbox overlay.\n While aria-owns is not required for the ARIA 1.2 `role=\"combobox\"` interaction pattern,\n it fixes an issue with VoiceOver when the select appears inside of an `aria-model=\"true\"`\n element (e.g. a dialog). Without this `aria-owns`, the `aria-modal` on a dialog prevents\n VoiceOver from \"seeing\" the select's listbox overlay for aria-activedescendant.\n Using `aria-owns` re-parents the select overlay so that it works again.\n See https://github.com/angular/components/issues/20694\n-->\n<div cdk-overlay-origin\n [attr.aria-owns]=\"panelOpen ? id + '-panel' : null\"\n class=\"mat-mdc-select-trigger\"\n (click)=\"toggle()\"\n #fallbackOverlayOrigin=\"cdkOverlayOrigin\"\n #trigger>\n <div class=\"mat-mdc-select-value\" [ngSwitch]=\"empty\" [attr.id]=\"_valueId\">\n <span class=\"mat-mdc-select-placeholder mat-mdc-select-min-line\" *ngSwitchCase=\"true\">{{placeholder}}</span>\n <span class=\"mat-mdc-select-value-text\" *ngSwitchCase=\"false\" [ngSwitch]=\"!!customTrigger\">\n <span class=\"mat-mdc-select-min-line\" *ngSwitchDefault>{{triggerValue}}</span>\n <ng-content select=\"mat-select-trigger\" *ngSwitchCase=\"true\"></ng-content>\n </span>\n </div>\n\n <div class=\"mat-mdc-select-arrow-wrapper\">\n <div class=\"mat-mdc-select-arrow\">\n <!-- Use an inline SVG, because it works better than a CSS triangle in high contrast mode. -->\n <svg viewBox=\"0 0 24 24\" width=\"24px\" height=\"24px\" focusable=\"false\">\n <path d=\"M7 10l5 5 5-5z\"/>\n </svg>\n </div>\n </div>\n</div>\n\n<ng-template\n cdk-connected-overlay\n cdkConnectedOverlayLockPosition\n cdkConnectedOverlayHasBackdrop\n cdkConnectedOverlayBackdropClass=\"cdk-overlay-transparent-backdrop\"\n [cdkConnectedOverlayPanelClass]=\"_overlayPanelClass\"\n [cdkConnectedOverlayScrollStrategy]=\"_scrollStrategy\"\n [cdkConnectedOverlayOrigin]=\"_preferredOverlayOrigin || fallbackOverlayOrigin\"\n [cdkConnectedOverlayOpen]=\"panelOpen\"\n [cdkConnectedOverlayPositions]=\"_positions\"\n [cdkConnectedOverlayWidth]=\"_overlayWidth\"\n (backdropClick)=\"close()\"\n (attach)=\"_onAttached()\"\n (detach)=\"close()\">\n <div\n #panel\n role=\"listbox\"\n tabindex=\"-1\"\n class=\"mat-mdc-select-panel mdc-menu-surface mdc-menu-surface--open {{ _getPanelTheme() }}\"\n [attr.id]=\"id + '-panel'\"\n [attr.aria-multiselectable]=\"multiple\"\n [attr.aria-label]=\"ariaLabel || null\"\n [attr.aria-labelledby]=\"_getPanelAriaLabelledby()\"\n [ngClass]=\"panelClass\"\n [@transformPanel]=\"'showing'\"\n (@transformPanel.done)=\"_panelDoneAnimatingStream.next($event.toState)\"\n (keydown)=\"_handleKeydown($event)\">\n <ng-content></ng-content>\n </div>\n</ng-template>\n", styles: [".mdc-menu-surface{display:none;position:absolute;box-sizing:border-box;max-width:calc(100vw - 32px);max-width:var(--mdc-menu-max-width, calc(100vw - 32px));max-height:calc(100vh - 32px);max-height:var(--mdc-menu-max-height, calc(100vh - 32px));margin:0;padding:0;transform:scale(1);transform-origin:top left;opacity:0;overflow:auto;will-change:transform,opacity;z-index:8;border-radius:4px;border-radius:var(--mdc-shape-medium, 4px);transform-origin-left:top left;transform-origin-right:top right}.mdc-menu-surface:focus{outline:none}.mdc-menu-surface--animating-open{display:inline-block;transform:scale(0.8);opacity:0}.mdc-menu-surface--open{display:inline-block;transform:scale(1);opacity:1}.mdc-menu-surface--animating-closed{display:inline-block;opacity:0}[dir=rtl] .mdc-menu-surface,.mdc-menu-surface[dir=rtl]{transform-origin-left:top right;transform-origin-right:top left}.mdc-menu-surface--anchor{position:relative;overflow:visible}.mdc-menu-surface--fixed{position:fixed}.mdc-menu-surface--fullwidth{width:100%}.mat-mdc-select{display:inline-block;width:100%;outline:none}.mat-mdc-select-trigger{display:inline-table;cursor:pointer;position:relative;box-sizing:border-box}.mat-mdc-select-disabled .mat-mdc-select-trigger{-webkit-user-select:none;-moz-user-select:none;user-select:none;cursor:default}.mat-mdc-select-value{display:table-cell;max-width:0;width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mat-mdc-select-value-text{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mat-mdc-select-arrow-wrapper{display:table-cell;vertical-align:middle}.mat-form-field-appearance-fill .mat-mdc-select-arrow-wrapper{transform:translateY(-40%)}.mat-mdc-select-arrow{width:10px;height:5px;position:relative}.mat-mdc-select-arrow svg{fill:currentColor;position:absolute;top:50%;left:50%;transform:translate(-50%, -50%)}.cdk-high-contrast-active .mat-mdc-select-arrow svg{fill:CanvasText}.mdc-menu-surface.mat-mdc-select-panel{width:100%;max-height:275px;position:static;outline:0;margin:0;padding:8px 0;list-style-type:none}.mdc-menu-surface.mat-mdc-select-panel:focus{outline:none}.cdk-high-contrast-active .mdc-menu-surface.mat-mdc-select-panel{outline:solid 1px}.cdk-overlay-pane:not(.mat-mdc-select-panel-above) .mdc-menu-surface.mat-mdc-select-panel{border-top-left-radius:0;border-top-right-radius:0;transform-origin:top center}.mat-mdc-select-panel-above .mdc-menu-surface.mat-mdc-select-panel{border-bottom-left-radius:0;border-bottom-right-radius:0;transform-origin:bottom center}.mat-mdc-select-placeholder{transition:color 400ms 133.3333333333ms cubic-bezier(0.25, 0.8, 0.25, 1)}._mat-animation-noopable .mat-mdc-select-placeholder{transition:none}.mat-form-field-hide-placeholder .mat-mdc-select-placeholder{color:transparent;-webkit-text-fill-color:transparent;transition:none;display:block}.mat-mdc-form-field-type-mat-select.mat-form-field-appearance-fill .mdc-floating-label{max-width:calc(100% - 18px)}.mat-mdc-form-field-type-mat-select.mat-form-field-appearance-fill .mdc-floating-label--float-above{max-width:calc(100% / 0.75 - 24px)}.mat-mdc-form-field-type-mat-select.mat-form-field-appearance-outline .mdc-notched-outline__notch{max-width:calc(100% - 60px)}.mat-mdc-form-field-type-mat-select.mat-form-field-appearance-outline .mdc-text-field--label-floating .mdc-notched-outline__notch{max-width:calc(100% - 24px)}.mat-mdc-select-min-line:empty::before{content:\" \";white-space:pre;width:1px;display:inline-block;opacity:0}\n"] }]
204
+ ], template: "<!--\n Note that the select trigger element specifies `aria-owns` pointing to the listbox overlay.\n While aria-owns is not required for the ARIA 1.2 `role=\"combobox\"` interaction pattern,\n it fixes an issue with VoiceOver when the select appears inside of an `aria-model=\"true\"`\n element (e.g. a dialog). Without this `aria-owns`, the `aria-modal` on a dialog prevents\n VoiceOver from \"seeing\" the select's listbox overlay for aria-activedescendant.\n Using `aria-owns` re-parents the select overlay so that it works again.\n See https://github.com/angular/components/issues/20694\n-->\n<div cdk-overlay-origin\n [attr.aria-owns]=\"panelOpen ? id + '-panel' : null\"\n class=\"mat-mdc-select-trigger\"\n (click)=\"toggle()\"\n #fallbackOverlayOrigin=\"cdkOverlayOrigin\"\n #trigger>\n <div class=\"mat-mdc-select-value\" [ngSwitch]=\"empty\" [attr.id]=\"_valueId\">\n <span class=\"mat-mdc-select-placeholder mat-mdc-select-min-line\" *ngSwitchCase=\"true\">{{placeholder}}</span>\n <span class=\"mat-mdc-select-value-text\" *ngSwitchCase=\"false\" [ngSwitch]=\"!!customTrigger\">\n <span class=\"mat-mdc-select-min-line\" *ngSwitchDefault>{{triggerValue}}</span>\n <ng-content select=\"mat-select-trigger\" *ngSwitchCase=\"true\"></ng-content>\n </span>\n </div>\n\n <div class=\"mat-mdc-select-arrow-wrapper\">\n <div class=\"mat-mdc-select-arrow\">\n <!-- Use an inline SVG, because it works better than a CSS triangle in high contrast mode. -->\n <svg viewBox=\"0 0 24 24\" width=\"24px\" height=\"24px\" focusable=\"false\">\n <path d=\"M7 10l5 5 5-5z\"/>\n </svg>\n </div>\n </div>\n</div>\n\n<ng-template\n cdk-connected-overlay\n cdkConnectedOverlayLockPosition\n cdkConnectedOverlayHasBackdrop\n cdkConnectedOverlayBackdropClass=\"cdk-overlay-transparent-backdrop\"\n [cdkConnectedOverlayPanelClass]=\"_overlayPanelClass\"\n [cdkConnectedOverlayScrollStrategy]=\"_scrollStrategy\"\n [cdkConnectedOverlayOrigin]=\"_preferredOverlayOrigin || fallbackOverlayOrigin\"\n [cdkConnectedOverlayOpen]=\"panelOpen\"\n [cdkConnectedOverlayPositions]=\"_positions\"\n [cdkConnectedOverlayWidth]=\"_overlayWidth\"\n (backdropClick)=\"close()\"\n (attach)=\"_onAttached()\"\n (detach)=\"close()\">\n <div\n #panel\n role=\"listbox\"\n tabindex=\"-1\"\n class=\"mat-mdc-select-panel mdc-menu-surface mdc-menu-surface--open {{ _getPanelTheme() }}\"\n [attr.id]=\"id + '-panel'\"\n [attr.aria-multiselectable]=\"multiple\"\n [attr.aria-label]=\"ariaLabel || null\"\n [attr.aria-labelledby]=\"_getPanelAriaLabelledby()\"\n [ngClass]=\"panelClass\"\n [@transformPanel]=\"'showing'\"\n (@transformPanel.done)=\"_panelDoneAnimatingStream.next($event.toState)\"\n (keydown)=\"_handleKeydown($event)\">\n <ng-content></ng-content>\n </div>\n</ng-template>\n", styles: [".mdc-menu-surface{display:none;position:absolute;box-sizing:border-box;max-width:calc(100vw - 32px);max-width:var(--mdc-menu-max-width, calc(100vw - 32px));max-height:calc(100vh - 32px);max-height:var(--mdc-menu-max-height, calc(100vh - 32px));margin:0;padding:0;transform:scale(1);transform-origin:top left;opacity:0;overflow:auto;will-change:transform,opacity;z-index:8;border-radius:4px;border-radius:var(--mdc-shape-medium, 4px);transform-origin-left:top left;transform-origin-right:top right}.mdc-menu-surface:focus{outline:none}.mdc-menu-surface--animating-open{display:inline-block;transform:scale(0.8);opacity:0}.mdc-menu-surface--open{display:inline-block;transform:scale(1);opacity:1}.mdc-menu-surface--animating-closed{display:inline-block;opacity:0}[dir=rtl] .mdc-menu-surface,.mdc-menu-surface[dir=rtl]{transform-origin-left:top right;transform-origin-right:top left}.mdc-menu-surface--anchor{position:relative;overflow:visible}.mdc-menu-surface--fixed{position:fixed}.mdc-menu-surface--fullwidth{width:100%}.mat-mdc-select{display:inline-block;width:100%;outline:none}.mat-mdc-select-trigger{display:inline-table;cursor:pointer;position:relative;box-sizing:border-box}.mat-mdc-select-disabled .mat-mdc-select-trigger{-webkit-user-select:none;-moz-user-select:none;user-select:none;cursor:default}.mat-mdc-select-value{display:table-cell;max-width:0;width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mat-mdc-select-value-text{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mat-mdc-select-arrow-wrapper{display:table-cell;vertical-align:middle}.mat-form-field-appearance-fill .mat-mdc-select-arrow-wrapper{transform:translateY(-40%)}.mat-mdc-select-arrow{width:10px;height:5px;position:relative}.mat-mdc-select-arrow svg{fill:currentColor;position:absolute;top:50%;left:50%;transform:translate(-50%, -50%)}.cdk-high-contrast-active .mat-mdc-select-arrow svg{fill:CanvasText}.mat-mdc-select-disabled .cdk-high-contrast-active .mat-mdc-select-arrow svg{fill:GrayText}.mdc-menu-surface.mat-mdc-select-panel{width:100%;max-height:275px;position:static;outline:0;margin:0;padding:8px 0;list-style-type:none}.mdc-menu-surface.mat-mdc-select-panel:focus{outline:none}.cdk-high-contrast-active .mdc-menu-surface.mat-mdc-select-panel{outline:solid 1px}.cdk-overlay-pane:not(.mat-mdc-select-panel-above) .mdc-menu-surface.mat-mdc-select-panel{border-top-left-radius:0;border-top-right-radius:0;transform-origin:top center}.mat-mdc-select-panel-above .mdc-menu-surface.mat-mdc-select-panel{border-bottom-left-radius:0;border-bottom-right-radius:0;transform-origin:bottom center}.mat-mdc-select-placeholder{transition:color 400ms 133.3333333333ms cubic-bezier(0.25, 0.8, 0.25, 1)}._mat-animation-noopable .mat-mdc-select-placeholder{transition:none}.mat-form-field-hide-placeholder .mat-mdc-select-placeholder{color:transparent;-webkit-text-fill-color:transparent;transition:none;display:block}.mat-mdc-form-field-type-mat-select.mat-form-field-appearance-fill .mat-mdc-floating-label{max-width:calc(100% - 18px)}.mat-mdc-form-field-type-mat-select.mat-form-field-appearance-fill .mdc-floating-label--float-above{max-width:calc(100% / 0.75 - 24px)}.mat-mdc-form-field-type-mat-select.mat-form-field-appearance-outline .mdc-notched-outline__notch{max-width:calc(100% - 60px)}.mat-mdc-form-field-type-mat-select.mat-form-field-appearance-outline .mdc-text-field--label-floating .mdc-notched-outline__notch{max-width:calc(100% - 24px)}.mat-mdc-select-min-line:empty::before{content:\" \";white-space:pre;width:1px;display:inline-block;opacity:0}\n"] }]
205
205
  }], propDecorators: { options: [{
206
206
  type: ContentChildren,
207
207
  args: [MatOption, { descendants: true }]
@@ -222,18 +222,18 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.0", ngImpor
222
222
  */
223
223
  class MatSelectModule {
224
224
  }
225
- MatSelectModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: MatSelectModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
226
- MatSelectModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: MatSelectModule, declarations: [MatSelect, MatSelectTrigger], imports: [CommonModule, OverlayModule, MatOptionModule, MatCommonModule], exports: [CdkScrollableModule,
225
+ MatSelectModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0-next.4", ngImport: i0, type: MatSelectModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
226
+ MatSelectModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "14.0.0-next.4", ngImport: i0, type: MatSelectModule, declarations: [MatSelect, MatSelectTrigger], imports: [CommonModule, OverlayModule, MatOptionModule, MatCommonModule], exports: [CdkScrollableModule,
227
227
  MatFormFieldModule,
228
228
  MatSelect,
229
229
  MatSelectTrigger,
230
230
  MatOptionModule,
231
231
  MatCommonModule] });
232
- MatSelectModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: MatSelectModule, providers: [MAT_SELECT_SCROLL_STRATEGY_PROVIDER], imports: [[CommonModule, OverlayModule, MatOptionModule, MatCommonModule], CdkScrollableModule,
232
+ MatSelectModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.0.0-next.4", ngImport: i0, type: MatSelectModule, providers: [MAT_SELECT_SCROLL_STRATEGY_PROVIDER], imports: [[CommonModule, OverlayModule, MatOptionModule, MatCommonModule], CdkScrollableModule,
233
233
  MatFormFieldModule,
234
234
  MatOptionModule,
235
235
  MatCommonModule] });
236
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: MatSelectModule, decorators: [{
236
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0-next.4", ngImport: i0, type: MatSelectModule, decorators: [{
237
237
  type: NgModule,
238
238
  args: [{
239
239
  imports: [CommonModule, OverlayModule, MatOptionModule, MatCommonModule],