@angular/material 11.1.2 → 11.2.2

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 (199) hide show
  1. package/_theming.scss +162 -155
  2. package/autocomplete/_autocomplete-theme.import.scss +2 -0
  3. package/autocomplete/autocomplete.d.ts +1 -1
  4. package/badge/_badge-theme.import.scss +5 -0
  5. package/bottom-sheet/_bottom-sheet-theme.import.scss +4 -0
  6. package/bottom-sheet/bottom-sheet-container.d.ts +2 -0
  7. package/bottom-sheet/index.metadata.json +1 -1
  8. package/bundles/material-autocomplete.umd.js.map +1 -1
  9. package/bundles/material-bottom-sheet.umd.js +11 -3
  10. package/bundles/material-bottom-sheet.umd.js.map +1 -1
  11. package/bundles/material-bottom-sheet.umd.min.js +1 -1
  12. package/bundles/material-bottom-sheet.umd.min.js.map +1 -1
  13. package/bundles/material-core.umd.js +3 -3
  14. package/bundles/material-core.umd.js.map +1 -1
  15. package/bundles/material-core.umd.min.js +3 -3
  16. package/bundles/material-core.umd.min.js.map +1 -1
  17. package/bundles/material-datepicker.umd.js +21 -2
  18. package/bundles/material-datepicker.umd.js.map +1 -1
  19. package/bundles/material-datepicker.umd.min.js +1 -1
  20. package/bundles/material-datepicker.umd.min.js.map +1 -1
  21. package/bundles/material-form-field-testing.umd.js +137 -140
  22. package/bundles/material-form-field-testing.umd.js.map +1 -1
  23. package/bundles/material-form-field-testing.umd.min.js +3 -3
  24. package/bundles/material-form-field-testing.umd.min.js.map +1 -1
  25. package/bundles/material-form-field.umd.js +1 -1
  26. package/bundles/material-form-field.umd.min.js +1 -1
  27. package/bundles/material-form-field.umd.min.js.map +1 -1
  28. package/bundles/material-input.umd.js +4 -2
  29. package/bundles/material-input.umd.js.map +1 -1
  30. package/bundles/material-input.umd.min.js +1 -1
  31. package/bundles/material-input.umd.min.js.map +1 -1
  32. package/bundles/material-menu.umd.js +2 -2
  33. package/bundles/material-menu.umd.js.map +1 -1
  34. package/bundles/material-menu.umd.min.js +1 -1
  35. package/bundles/material-menu.umd.min.js.map +1 -1
  36. package/bundles/material-select.umd.js +8 -2
  37. package/bundles/material-select.umd.js.map +1 -1
  38. package/bundles/material-select.umd.min.js +5 -5
  39. package/bundles/material-select.umd.min.js.map +1 -1
  40. package/bundles/material-slide-toggle-testing.umd.js +60 -51
  41. package/bundles/material-slide-toggle-testing.umd.js.map +1 -1
  42. package/bundles/material-slide-toggle-testing.umd.min.js +2 -2
  43. package/bundles/material-slide-toggle-testing.umd.min.js.map +1 -1
  44. package/bundles/material-sort.umd.js +11 -3
  45. package/bundles/material-sort.umd.js.map +1 -1
  46. package/bundles/material-sort.umd.min.js +3 -3
  47. package/bundles/material-sort.umd.min.js.map +1 -1
  48. package/bundles/material-stepper.umd.js +6 -2
  49. package/bundles/material-stepper.umd.js.map +1 -1
  50. package/bundles/material-stepper.umd.min.js +1 -1
  51. package/bundles/material-stepper.umd.min.js.map +1 -1
  52. package/bundles/material-tabs.umd.js +8 -2
  53. package/bundles/material-tabs.umd.js.map +1 -1
  54. package/bundles/material-tabs.umd.min.js +4 -4
  55. package/bundles/material-tabs.umd.min.js.map +1 -1
  56. package/bundles/material-tooltip-testing.umd.js +44 -16
  57. package/bundles/material-tooltip-testing.umd.js.map +1 -1
  58. package/bundles/material-tooltip-testing.umd.min.js +1 -1
  59. package/bundles/material-tooltip-testing.umd.min.js.map +1 -1
  60. package/button/_button-base.import.scss +4 -0
  61. package/button/_button-theme.import.scss +3 -0
  62. package/button-toggle/_button-toggle-theme.import.scss +6 -0
  63. package/button-toggle/_button-toggle-variables.import.scss +1 -0
  64. package/card/_card-theme.import.scss +4 -0
  65. package/checkbox/_checkbox-theme.import.scss +3 -0
  66. package/chips/_chips-theme.import.scss +4 -0
  67. package/core/_core.import.scss +10 -0
  68. package/core/color/_all-color.import.scss +3 -0
  69. package/core/density/private/_all-density.import.scss +9 -0
  70. package/core/density/private/_compatibility.import.scss +1 -0
  71. package/core/focus-indicators/_focus-indicators.import.scss +3 -0
  72. package/core/index.metadata.json +1 -1
  73. package/core/option/_optgroup-theme.import.scss +4 -0
  74. package/core/option/_option-theme.import.scss +4 -0
  75. package/core/ripple/_ripple.import.scss +3 -0
  76. package/core/selection/pseudo-checkbox/_pseudo-checkbox-theme.import.scss +2 -0
  77. package/core/style/_button-common.import.scss +2 -0
  78. package/core/style/_checkbox-common.import.scss +2 -0
  79. package/core/style/_elevation.import.scss +2 -0
  80. package/core/style/_form-common.import.scss +2 -0
  81. package/core/style/_layout-common.import.scss +1 -0
  82. package/core/style/_list-common.import.scss +1 -0
  83. package/core/style/_menu-common.import.scss +5 -0
  84. package/core/style/_private.import.scss +2 -0
  85. package/core/style/_variables.import.scss +1 -0
  86. package/core/style/_vendor-prefixes.import.scss +1 -0
  87. package/core/theming/_all-theme.import.scss +37 -0
  88. package/core/theming/_palette.import.scss +1 -0
  89. package/core/theming/_theming.import.scss +2 -0
  90. package/core/theming/_theming.scss +7 -4
  91. package/core/typography/_all-typography.import.scss +38 -0
  92. package/core/typography/_typography-utils.import.scss +1 -0
  93. package/core/typography/_typography.import.scss +2 -0
  94. package/datepicker/_datepicker-theme.import.scss +4 -0
  95. package/datepicker/datepicker-base.d.ts +9 -0
  96. package/datepicker/index.metadata.json +1 -1
  97. package/dialog/_dialog-theme.import.scss +4 -0
  98. package/divider/_divider-offset.import.scss +1 -0
  99. package/divider/_divider-theme.import.scss +3 -0
  100. package/esm2015/autocomplete/autocomplete.js +1 -1
  101. package/esm2015/bottom-sheet/bottom-sheet-container.js +12 -4
  102. package/esm2015/core/common-behaviors/common-module.js +1 -1
  103. package/esm2015/core/option/optgroup.js +2 -2
  104. package/esm2015/core/version.js +1 -1
  105. package/esm2015/datepicker/datepicker-base.js +13 -2
  106. package/esm2015/datepicker/datepicker-toggle.js +6 -2
  107. package/esm2015/form-field/form-field.js +1 -1
  108. package/esm2015/form-field/testing/form-field-harness.js +68 -76
  109. package/esm2015/input/input.js +5 -3
  110. package/esm2015/menu/menu-trigger.js +2 -2
  111. package/esm2015/menu/menu.js +1 -1
  112. package/esm2015/select/select.js +9 -3
  113. package/esm2015/slide-toggle/testing/slide-toggle-harness.js +29 -24
  114. package/esm2015/sort/sort.js +12 -5
  115. package/esm2015/stepper/stepper-animations.js +7 -3
  116. package/esm2015/tabs/tab-body.js +2 -2
  117. package/esm2015/tabs/tab-group.js +8 -2
  118. package/esm2015/tooltip/testing/tooltip-harness.js +14 -2
  119. package/expansion/_expansion-mixins.import.scss +1 -0
  120. package/expansion/_expansion-theme.import.scss +6 -0
  121. package/expansion/_expansion-variables.import.scss +1 -0
  122. package/fesm2015/autocomplete.js.map +1 -1
  123. package/fesm2015/bottom-sheet.js +11 -3
  124. package/fesm2015/bottom-sheet.js.map +1 -1
  125. package/fesm2015/core.js +3 -3
  126. package/fesm2015/core.js.map +1 -1
  127. package/fesm2015/datepicker.js +17 -2
  128. package/fesm2015/datepicker.js.map +1 -1
  129. package/fesm2015/form-field/testing.js +69 -77
  130. package/fesm2015/form-field/testing.js.map +1 -1
  131. package/fesm2015/form-field.js +1 -1
  132. package/fesm2015/input.js +4 -2
  133. package/fesm2015/input.js.map +1 -1
  134. package/fesm2015/menu.js +2 -2
  135. package/fesm2015/menu.js.map +1 -1
  136. package/fesm2015/select.js +8 -2
  137. package/fesm2015/select.js.map +1 -1
  138. package/fesm2015/slide-toggle/testing.js +29 -24
  139. package/fesm2015/slide-toggle/testing.js.map +1 -1
  140. package/fesm2015/sort.js +12 -5
  141. package/fesm2015/sort.js.map +1 -1
  142. package/fesm2015/stepper.js +6 -2
  143. package/fesm2015/stepper.js.map +1 -1
  144. package/fesm2015/tabs.js +8 -2
  145. package/fesm2015/tabs.js.map +1 -1
  146. package/fesm2015/tooltip/testing.js +13 -1
  147. package/fesm2015/tooltip/testing.js.map +1 -1
  148. package/form-field/_form-field-fill-theme.import.scss +5 -0
  149. package/form-field/_form-field-legacy-theme.import.scss +5 -0
  150. package/form-field/_form-field-outline-theme.import.scss +5 -0
  151. package/form-field/_form-field-standard-theme.import.scss +5 -0
  152. package/form-field/_form-field-theme.import.scss +9 -0
  153. package/form-field/index.metadata.json +1 -1
  154. package/form-field/testing/form-field-harness.d.ts +47 -32
  155. package/grid-list/_grid-list-theme.import.scss +5 -0
  156. package/icon/_icon-theme.import.scss +2 -0
  157. package/input/_input-theme.import.scss +6 -0
  158. package/input/index.metadata.json +1 -1
  159. package/list/_list-theme.import.scss +5 -0
  160. package/menu/_menu-theme.import.scss +4 -0
  161. package/menu/index.metadata.json +1 -1
  162. package/package.json +2 -2
  163. package/paginator/_paginator-theme.import.scss +5 -0
  164. package/paginator/_paginator-variables.import.scss +1 -0
  165. package/prebuilt-themes/deeppurple-amber.css +1 -1
  166. package/prebuilt-themes/indigo-pink.css +1 -1
  167. package/prebuilt-themes/pink-bluegrey.css +1 -1
  168. package/prebuilt-themes/purple-green.css +1 -1
  169. package/progress-bar/_progress-bar-theme.import.scss +3 -0
  170. package/progress-spinner/_progress-spinner-theme.import.scss +3 -0
  171. package/radio/_radio-theme.import.scss +4 -0
  172. package/schematics/ng-add/index.js +1 -1
  173. package/select/_select-theme.import.scss +5 -0
  174. package/select/index.metadata.json +1 -1
  175. package/select/select.d.ts +1 -1
  176. package/sidenav/_sidenav-theme.import.scss +3 -0
  177. package/slide-toggle/_slide-toggle-theme.import.scss +4 -0
  178. package/slide-toggle/testing/slide-toggle-harness.d.ts +19 -15
  179. package/slider/_slider-theme.import.scss +4 -0
  180. package/snack-bar/_snack-bar-theme.import.scss +4 -0
  181. package/sort/_sort-theme.import.scss +2 -0
  182. package/sort/index.metadata.json +1 -1
  183. package/sort/sort.d.ts +10 -1
  184. package/stepper/_stepper-theme.import.scss +5 -0
  185. package/stepper/_stepper-variables.import.scss +1 -0
  186. package/stepper/index.metadata.json +1 -1
  187. package/table/_table-flex-styles.import.scss +1 -0
  188. package/table/_table-flex-styles.scss +72 -0
  189. package/table/_table-theme.import.scss +4 -0
  190. package/tabs/_tabs-common.import.scss +4 -0
  191. package/tabs/_tabs-theme.import.scss +4 -0
  192. package/tabs/_tabs-theme.scss +3 -1
  193. package/tabs/index.metadata.json +1 -1
  194. package/tabs/tab-group.d.ts +3 -0
  195. package/toolbar/_toolbar-theme.import.scss +6 -0
  196. package/toolbar/_toolbar-variables.import.scss +1 -0
  197. package/tooltip/_tooltip-theme.import.scss +4 -0
  198. package/tree/_tree-theme.import.scss +4 -0
  199. package/tree/_tree-variables.import.scss +1 -0
package/_theming.scss CHANGED
@@ -2,6 +2,86 @@
2
2
  // the `@angular/material` theming Sass bundle. See `//src/material:theming_bundle`.
3
3
 
4
4
  // Import all the theming functionality.
5
+ @mixin cdk-a11y {
6
+ .cdk-visually-hidden {
7
+ border: 0;
8
+ clip: rect(0 0 0 0);
9
+ height: 1px;
10
+ margin: -1px;
11
+ overflow: hidden;
12
+ padding: 0;
13
+ position: absolute;
14
+ width: 1px;
15
+
16
+ // Avoid browsers rendering the focus ring in some cases.
17
+ outline: 0;
18
+
19
+ // Avoid some cases where the browser will still render the native controls (see #9049).
20
+ -webkit-appearance: none;
21
+ -moz-appearance: none;
22
+ }
23
+ }
24
+
25
+ /// Emits the mixin's content nested under `$selector-context` if `$selector-context`
26
+ /// is non-empty.
27
+ /// @param selector-context The selector under which to nest the mixin's content.
28
+ @mixin _cdk-optionally-nest-content($selector-context) {
29
+ @if ($selector-context == '') {
30
+ @content;
31
+ }
32
+ @else {
33
+ #{$selector-context} {
34
+ @content;
35
+ }
36
+ }
37
+ }
38
+
39
+ /// Applies styles for users in high contrast mode. Note that this only applies
40
+ /// to Microsoft browsers. Chrome can be included by checking for the `html[hc]`
41
+ /// attribute, however Chrome handles high contrast differently.
42
+ ///
43
+ /// @param target Which kind of high contrast setting to target. Defaults to `active`, can be
44
+ /// `white-on-black` or `black-on-white`.
45
+ /// @param encapsulation Whether to emit styles for view encapsulation. Values are:
46
+ /// * `on` - works for `Emulated`, `Native`, and `ShadowDom`
47
+ /// * `off` - works for `None`
48
+ /// * `any` - works for all encapsulation modes by emitting the CSS twice (default).
49
+ @mixin cdk-high-contrast($target: active, $encapsulation: 'any') {
50
+ @if ($target != 'active' and $target != 'black-on-white' and $target != 'white-on-black') {
51
+ @error 'Unknown cdk-high-contrast value "#{$target}" provided. ' +
52
+ 'Allowed values are "active", "black-on-white", and "white-on-black"';
53
+ }
54
+
55
+ @if ($encapsulation != 'on' and $encapsulation != 'off' and $encapsulation != 'any') {
56
+ @error 'Unknown cdk-high-contrast encapsulation "#{$encapsulation}" provided. ' +
57
+ 'Allowed values are "on", "off", and "any"';
58
+ }
59
+
60
+ // If the selector context has multiple parts, such as `.section, .region`, just doing
61
+ // `.cdk-high-contrast-xxx #{&}` will only apply the parent selector to the first part of the
62
+ // context. We address this by nesting the selector context under .cdk-high-contrast.
63
+ @at-root {
64
+ $selector-context: #{&};
65
+
66
+ @if ($encapsulation != 'on') {
67
+ .cdk-high-contrast-#{$target} {
68
+ @include _cdk-optionally-nest-content($selector-context) {
69
+ @content;
70
+ }
71
+ }
72
+ }
73
+
74
+ @if ($encapsulation != 'off') {
75
+ .cdk-high-contrast-#{$target} :host {
76
+ @include _cdk-optionally-nest-content($selector-context) {
77
+ @content;
78
+ }
79
+ }
80
+ }
81
+ }
82
+ }
83
+
84
+
5
85
  // We want overlays to always appear over user content, so set a baseline
6
86
  // very high z-index for the overlay container, which is where we create the new
7
87
  // stacking context for all overlays.
@@ -88,7 +168,7 @@ $backdrop-animation-timing-function: cubic-bezier(0.25, 0.8, 0.25, 1) !default;
88
168
  // to making it opaque using `opacity`. Note that we can't use the `cdk-high-contrast`
89
169
  // mixin, because we can't normalize the import path to the _a11y.scss both for the
90
170
  // source and when this file is distributed. See #10908.
91
- @media screen and (-ms-high-contrast: active) {
171
+ @include cdk-high-contrast(active, off) {
92
172
  opacity: 0.6;
93
173
  }
94
174
  }
@@ -144,84 +224,6 @@ $backdrop-animation-timing-function: cubic-bezier(0.25, 0.8, 0.25, 1) !default;
144
224
  }
145
225
  }
146
226
 
147
- @mixin cdk-a11y {
148
- .cdk-visually-hidden {
149
- border: 0;
150
- clip: rect(0 0 0 0);
151
- height: 1px;
152
- margin: -1px;
153
- overflow: hidden;
154
- padding: 0;
155
- position: absolute;
156
- width: 1px;
157
-
158
- // Avoid browsers rendering the focus ring in some cases.
159
- outline: 0;
160
-
161
- // Avoid some cases where the browser will still render the native controls (see #9049).
162
- -webkit-appearance: none;
163
- -moz-appearance: none;
164
- }
165
- }
166
-
167
- /// Emits the mixin's content nested under `$selector-context` if `$selector-context`
168
- /// is non-empty.
169
- /// @param selector-context The selector under which to nest the mixin's content.
170
- @mixin _cdk-optionally-nest-content($selector-context) {
171
- @if ($selector-context == '') {
172
- @content;
173
- }
174
- @else {
175
- #{$selector-context} {
176
- @content;
177
- }
178
- }
179
- }
180
-
181
- /// Applies styles for users in high contrast mode. Note that this only applies
182
- /// to Microsoft browsers. Chrome can be included by checking for the `html[hc]`
183
- /// attribute, however Chrome handles high contrast differently.
184
- ///
185
- /// @param target Which kind of high contrast setting to target. Defaults to `active`, can be
186
- /// `white-on-black` or `black-on-white`.
187
- /// @param encapsulation Whether to emit styles for view encapsulation. Values are:
188
- /// * `on` - works for `Emulated`, `Native`, and `ShadowDom`
189
- /// * `off` - works for `None`
190
- /// * `any` - works for all encapsulation modes by emitting the CSS twice (default).
191
- @mixin cdk-high-contrast($target: active, $encapsulation: 'any') {
192
- @if ($target != 'active' and $target != 'black-on-white' and $target != 'white-on-black') {
193
- @error 'Unknown cdk-high-contrast value "#{$target}" provided. ' +
194
- 'Allowed values are "active", "black-on-white", and "white-on-black"';
195
- }
196
-
197
- @if ($encapsulation != 'on' and $encapsulation != 'off' and $encapsulation != 'any') {
198
- @error 'Unknown cdk-high-contrast encapsulation "#{$encapsulation}" provided. ' +
199
- 'Allowed values are "on", "off", and "any"';
200
- }
201
-
202
- // If the selector context has multiple parts, such as `.section, .region`, just doing
203
- // `.cdk-high-contrast-xxx #{&}` will only apply the parent selector to the first part of the
204
- // context. We address this by nesting the selector context under .cdk-high-contrast.
205
- @at-root {
206
- $selector-context: #{&};
207
-
208
- @if ($encapsulation != 'on') {
209
- .cdk-high-contrast-#{$target} {
210
- @include _cdk-optionally-nest-content($selector-context) {
211
- @content;
212
- }
213
- }
214
- }
215
-
216
- @if ($encapsulation != 'off') {
217
- .cdk-high-contrast-#{$target} :host {
218
- @include _cdk-optionally-nest-content($selector-context) {
219
- @content;
220
- }
221
- }
222
- }
223
- }
224
- }
225
227
 
226
228
  // Core styles that enable monitoring autofill state of text fields.
227
229
  @mixin cdk-text-field {
@@ -1334,6 +1336,78 @@ $mat-dark-theme-foreground: (
1334
1336
  slider-off-active: rgba(white, 0.3),
1335
1337
  );
1336
1338
 
1339
+ // Note that this file is called `private`, because the APIs in it aren't public yet.
1340
+ // Once they're made available, the code should be moved out into an `index.scss`.
1341
+
1342
+ // Taken from mat-density with small modifications to not rely on the new Sass module
1343
+ // system, and to support arbitrary properties in a density configuration.
1344
+ // https://github.com/material-components/material-components-web/blob/master/packages/mdc-density
1345
+
1346
+ $_mat-density-interval: 4px !default;
1347
+ $_mat-density-minimum-scale: minimum !default;
1348
+ $_mat-density-maximum-scale: maximum !default;
1349
+ $_mat-density-supported-scales: (default, minimum, maximum) !default;
1350
+ $_mat-density-default-scale: 0 !default;
1351
+
1352
+ // Whether density should be generated at root. This will be temporarily set to `true`
1353
+ // whenever density styles for legacy themes are generated.
1354
+ $mat-private-density-generate-at-root: false;
1355
+ // Whether density styles should be generated. This will be temporarily set to `false` if
1356
+ // duplicate density styles for a legacy theme would be generated. For legacy themes,
1357
+ // we always generate the default density **only once** at root.
1358
+ $mat-private-density-generate-styles: true;
1359
+
1360
+ // Mixin that can be used to wrap density styles of given components. The mixin will
1361
+ // move the density styles to root if the `$mat-private-density-generate-at-root` global variable
1362
+ // is set. If `$mat-private-density-generate-styles` is set to `false`, generation of density
1363
+ // styles wrapped in this mixin is skipped. This mixin exists to improve backwards compatibility
1364
+ // of the new theming API where density styles are included as part of themes. Previously,
1365
+ // density styles of components were part of their base styles. With the new API, they are
1366
+ // part of the theming system. The `<..>-theme` mixins generate density by default unless
1367
+ // the density configuration is explicitly specified as per new API. This means, that projects
1368
+ // using `<..>-theme` mixins for separate themes (like `.dark-theme`) will cause duplicate
1369
+ // density styles. This is breaking as it increases specificity of density styles. This mixin
1370
+ // provides an API to control generation of density styles so that we can ensure they are only
1371
+ // created *once* and at root.
1372
+ @mixin mat-private-density-legacy-compatibility() {
1373
+ @if $mat-private-density-generate-styles and $mat-private-density-generate-at-root {
1374
+ @at-root {
1375
+ @content;
1376
+ }
1377
+ }
1378
+ @else if $mat-private-density-generate-styles {
1379
+ @content;
1380
+ }
1381
+ }
1382
+
1383
+ @function mat-private-density-prop-value($density-config, $density-scale, $property-name) {
1384
+ @if (type-of($density-scale) == 'string' and
1385
+ index($list: $_mat-density-supported-scales, $value: $density-scale) == null) {
1386
+ @error 'mat-density: Supported density scales #{$_mat-density-supported-scales}, ' +
1387
+ 'but received #{$density-scale}.';
1388
+ }
1389
+
1390
+ $value: null;
1391
+ $property-scale-map: map-get($density-config, $property-name);
1392
+
1393
+ @if map-has-key($property-scale-map, $density-scale) {
1394
+ $value: map-get($property-scale-map, $density-scale);
1395
+ }
1396
+ @else {
1397
+ $value: map-get($property-scale-map, default) + $density-scale * $_mat-density-interval;
1398
+ }
1399
+
1400
+ $min-value: map-get($property-scale-map, $_mat-density-minimum-scale);
1401
+ $max-value: map-get($property-scale-map, $_mat-density-maximum-scale);
1402
+
1403
+ @if ($value < $min-value or $value > $max-value) {
1404
+ @error 'mat-density: #{$property-name} must be between #{$min-value} and ' +
1405
+ '#{$max-value} (inclusive), but received #{$value}.';
1406
+ }
1407
+
1408
+ @return $value;
1409
+ }
1410
+
1337
1411
 
1338
1412
  // Whether duplication warnings should be disabled. Warnings enabled by default.
1339
1413
  $mat-theme-ignore-duplication-warnings: false !default;
@@ -1352,7 +1426,7 @@ $_mat-theme-emitted-typography: () !default;
1352
1426
  $_mat-theme-emitted-density: () !default;
1353
1427
 
1354
1428
  // For a given hue in a palette, return the contrast color from the map of contrast palettes.
1355
- // @param $color-map
1429
+ // @param $palette
1356
1430
  // @param $hue
1357
1431
  @function mat-contrast($palette, $hue) {
1358
1432
  @return map-get(map-get($palette, contrast), $hue);
@@ -1361,9 +1435,11 @@ $_mat-theme-emitted-density: () !default;
1361
1435
 
1362
1436
  // Creates a map of hues to colors for a theme. This is used to define a theme palette in terms
1363
1437
  // of the Material Design hues.
1364
- // @param $color-map
1365
- // @param $primary
1438
+ // @param $base-palette
1439
+ // @param $default
1366
1440
  // @param $lighter
1441
+ // @param $darker
1442
+ // @param $text
1367
1443
  @function mat-palette($base-palette, $default: 500, $lighter: 100, $darker: 700, $text: $default) {
1368
1444
  $result: map-merge($base-palette, (
1369
1445
  default: map-get($base-palette, $default),
@@ -1391,7 +1467,7 @@ $_mat-theme-emitted-density: () !default;
1391
1467
  // The hue can be one of the standard values (500, A400, etc.), one of the three preconfigured
1392
1468
  // hues (default, lighter, darker), or any of the aforementioned prefixed with "-contrast".
1393
1469
  //
1394
- // @param $color-map The theme palette (output of mat-palette).
1470
+ // @param $palette The theme palette (output of mat-palette).
1395
1471
  // @param $hue The hue from the palette to use. If this is a value between 0 and 1, it will
1396
1472
  // be treated as opacity.
1397
1473
  // @param $opacity The alpha channel value for the color.
@@ -2969,77 +3045,6 @@ $_mat-button-ripple-opacity: 0.1;
2969
3045
 
2970
3046
 
2971
3047
 
2972
- // Note that this file is called `private`, because the APIs in it aren't public yet.
2973
- // Once they're made available, the code should be moved out into an `index.scss`.
2974
-
2975
- // Taken from mat-density with small modifications to not rely on the new Sass module
2976
- // system, and to support arbitrary properties in a density configuration.
2977
- // https://github.com/material-components/material-components-web/blob/master/packages/mdc-density
2978
-
2979
- $_mat-density-interval: 4px !default;
2980
- $_mat-density-minimum-scale: minimum !default;
2981
- $_mat-density-maximum-scale: maximum !default;
2982
- $_mat-density-supported-scales: (default, minimum, maximum) !default;
2983
- $_mat-density-default-scale: 0 !default;
2984
-
2985
- // Whether density should be generated at root. This will be temporarily set to `true`
2986
- // whenever density styles for legacy themes are generated.
2987
- $mat-private-density-generate-at-root: false;
2988
- // Whether density styles should be generated. This will be temporarily set to `false` if
2989
- // duplicate density styles for a legacy theme would be generated. For legacy themes,
2990
- // we always generate the default density **only once** at root.
2991
- $mat-private-density-generate-styles: true;
2992
-
2993
- // Mixin that can be used to wrap density styles of given components. The mixin will
2994
- // move the density styles to root if the `$mat-private-density-generate-at-root` global variable
2995
- // is set. If `$mat-private-density-generate-styles` is set to `false`, generation of density
2996
- // styles wrapped in this mixin is skipped. This mixin exists to improve backwards compatibility
2997
- // of the new theming API where density styles are included as part of themes. Previously,
2998
- // density styles of components were part of their base styles. With the new API, they are
2999
- // part of the theming system. The `<..>-theme` mixins generate density by default unless
3000
- // the density configuration is explicitly specified as per new API. This means, that projects
3001
- // using `<..>-theme` mixins for separate themes (like `.dark-theme`) will cause duplicate
3002
- // density styles. This is breaking as it increases specificity of density styles. This mixin
3003
- // provides an API to control generation of density styles so that we can ensure they are only
3004
- // created *once* and at root.
3005
- @mixin mat-private-density-legacy-compatibility() {
3006
- @if $mat-private-density-generate-styles and $mat-private-density-generate-at-root {
3007
- @at-root {
3008
- @content;
3009
- }
3010
- }
3011
- @else if $mat-private-density-generate-styles {
3012
- @content;
3013
- }
3014
- }
3015
-
3016
- @function mat-private-density-prop-value($density-config, $density-scale, $property-name) {
3017
- @if (type-of($density-scale) == 'string' and
3018
- index($list: $_mat-density-supported-scales, $value: $density-scale) == null) {
3019
- @error 'mat-density: Supported density scales #{$_mat-density-supported-scales}, ' +
3020
- 'but received #{$density-scale}.';
3021
- }
3022
-
3023
- $value: null;
3024
- $property-scale-map: map-get($density-config, $property-name);
3025
-
3026
- @if map-has-key($property-scale-map, $density-scale) {
3027
- $value: map-get($property-scale-map, $density-scale);
3028
- }
3029
- @else {
3030
- $value: map-get($property-scale-map, default) + $density-scale * $_mat-density-interval;
3031
- }
3032
-
3033
- $min-value: map-get($property-scale-map, $_mat-density-minimum-scale);
3034
- $max-value: map-get($property-scale-map, $_mat-density-maximum-scale);
3035
-
3036
- @if ($value < $min-value or $value > $max-value) {
3037
- @error 'mat-density: #{$property-name} must be between #{$min-value} and ' +
3038
- '#{$max-value} (inclusive), but received #{$value}.';
3039
- }
3040
-
3041
- @return $value;
3042
- }
3043
3048
 
3044
3049
  $mat-button-toggle-standard-height: 48px !default;
3045
3050
  // Minimum height for highest density can vary based on the content that developers
@@ -5755,7 +5760,9 @@ $mat-step-header-icon-size: 16px;
5755
5760
  }
5756
5761
 
5757
5762
  // Set pagination chevrons to contrast background
5758
- > .mat-tab-header-pagination .mat-tab-header-pagination-chevron {
5763
+ > .mat-tab-header-pagination .mat-tab-header-pagination-chevron,
5764
+ > .mat-tab-links .mat-focus-indicator::before,
5765
+ > .mat-tab-header .mat-focus-indicator::before {
5759
5766
  border-color: mat-color($background-color, default-contrast);
5760
5767
  }
5761
5768
 
@@ -0,0 +1,2 @@
1
+ @forward 'autocomplete-theme';
2
+ @forward '../core/theming/theming';
@@ -68,7 +68,7 @@ export declare abstract class _MatAutocompleteBase extends _MatAutocompleteMixin
68
68
  abstract options: QueryList<_MatOptionBase>;
69
69
  /** @docs-private */
70
70
  abstract optionGroups: QueryList<_MatOptgroupBase>;
71
- /** Aria label of the select. If not specified, the placeholder will be used as label. */
71
+ /** Aria label of the autocomplete. */
72
72
  ariaLabel: string;
73
73
  /** Input that can be used to specify the `aria-labelledby` attribute. */
74
74
  ariaLabelledby: string;
@@ -0,0 +1,5 @@
1
+ @forward 'badge-theme';
2
+ @forward '../core/theming/palette';
3
+ @forward '../core/theming/theming';
4
+ @forward '../core/typography/typography-utils';
5
+ @forward '../../cdk/a11y/a11y';
@@ -0,0 +1,4 @@
1
+ @forward 'bottom-sheet-theme';
2
+ @forward '../core/typography/typography-utils';
3
+ @forward '../core/theming/palette';
4
+ @forward '../core/theming/theming';
@@ -65,4 +65,6 @@ export declare class MatBottomSheetContainer extends BasePortalOutlet implements
65
65
  private _restoreFocus;
66
66
  /** Saves a reference to the element that was focused before the bottom sheet was opened. */
67
67
  private _savePreviouslyFocusedElement;
68
+ /** Gets the currently-focused element on the page. */
69
+ private _getActiveElement;
68
70
  }
@@ -1 +1 @@
1
- {"__symbolic":"module","version":4,"metadata":{"MatBottomSheetModule":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"NgModule","line":15,"character":1},"arguments":[{"imports":[{"__symbolic":"reference","module":"@angular/cdk/overlay","name":"OverlayModule","line":17,"character":4},{"__symbolic":"reference","module":"@angular/material/core","name":"MatCommonModule","line":18,"character":4},{"__symbolic":"reference","module":"@angular/cdk/portal","name":"PortalModule","line":19,"character":4}],"exports":[{"__symbolic":"reference","name":"MatBottomSheetContainer"},{"__symbolic":"reference","module":"@angular/material/core","name":"MatCommonModule","line":21,"character":37}],"declarations":[{"__symbolic":"reference","name":"MatBottomSheetContainer"}],"entryComponents":[{"__symbolic":"reference","name":"MatBottomSheetContainer"}]}]}],"members":{}},"MAT_BOTTOM_SHEET_DEFAULT_OPTIONS":{"__symbolic":"new","expression":{"__symbolic":"reference","module":"@angular/core","name":"InjectionToken","line":32,"character":8},"arguments":["mat-bottom-sheet-default-options"]},"MatBottomSheet":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":37,"character":1},"arguments":[{"providedIn":{"__symbolic":"reference","name":"MatBottomSheetModule"}}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[null,null,[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Optional","line":58,"character":7}},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"SkipSelf","line":58,"character":19}}],[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Optional","line":59,"character":7}},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":59,"character":19},"arguments":[{"__symbolic":"reference","name":"MAT_BOTTOM_SHEET_DEFAULT_OPTIONS"}]}]],"parameters":[{"__symbolic":"reference","module":"@angular/cdk/overlay","name":"Overlay","line":56,"character":24},{"__symbolic":"reference","module":"@angular/core","name":"Injector","line":57,"character":25},{"__symbolic":"reference","name":"MatBottomSheet"},{"__symbolic":"reference","name":"MatBottomSheetConfig"}]}],"open":[{"__symbolic":"method"},{"__symbolic":"method"},{"__symbolic":"method"}],"dismiss":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}],"_attachContainer":[{"__symbolic":"method"}],"_createOverlay":[{"__symbolic":"method"}],"_createInjector":[{"__symbolic":"method"}]},"statics":{"ɵprov":{}}},"MAT_BOTTOM_SHEET_DATA":{"__symbolic":"new","expression":{"__symbolic":"reference","module":"@angular/core","name":"InjectionToken","line":13,"character":41},"arguments":["MatBottomSheetData"]},"MatBottomSheetConfig":{"__symbolic":"class","arity":1,"members":{}},"MatBottomSheetContainer":{"__symbolic":"class","extends":{"__symbolic":"reference","module":"@angular/cdk/portal","name":"BasePortalOutlet","line":65,"character":45},"decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":43,"character":1},"arguments":[{"selector":"mat-bottom-sheet-container","changeDetection":{"__symbolic":"select","expression":{"__symbolic":"reference","module":"@angular/core","name":"ChangeDetectionStrategy","line":51,"character":19},"member":"Default"},"encapsulation":{"__symbolic":"select","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewEncapsulation","line":52,"character":17},"member":"None"},"animations":[{"__symbolic":"select","expression":{"__symbolic":"reference","name":"matBottomSheetAnimations"},"member":"bottomSheetState"}],"host":{"class":"mat-bottom-sheet-container","tabindex":"-1","role":"dialog","aria-modal":"true","[attr.aria-label]":"bottomSheetConfig?.ariaLabel","[@state]":"_animationState","(@state.start)":"_onAnimationStart($event)","(@state.done)":"_onAnimationDone($event)","$quoted$":["class","tabindex","role","aria-modal","[attr.aria-label]","[@state]","(@state.start)","(@state.done)"]},"template":"<ng-template cdkPortalOutlet></ng-template>\r\n","styles":[".mat-bottom-sheet-container{padding:8px 16px;min-width:100vw;box-sizing:border-box;display:block;outline:0;max-height:80vh;overflow:auto}.cdk-high-contrast-active .mat-bottom-sheet-container{outline:1px solid}.mat-bottom-sheet-container-xlarge,.mat-bottom-sheet-container-large,.mat-bottom-sheet-container-medium{border-top-left-radius:4px;border-top-right-radius:4px}.mat-bottom-sheet-container-medium{min-width:384px;max-width:calc(100vw - 128px)}.mat-bottom-sheet-container-large{min-width:512px;max-width:calc(100vw - 256px)}.mat-bottom-sheet-container-xlarge{min-width:576px;max-width:calc(100vw - 384px)}\n"]}]}],"members":{"_portalOutlet":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewChild","line":69,"character":3},"arguments":[{"__symbolic":"reference","module":"@angular/cdk/portal","name":"CdkPortalOutlet","line":69,"character":13},{"static":true}]}]}],"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[null,null,null,null,[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Optional","line":94,"character":5}},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":94,"character":17},"arguments":[{"__symbolic":"reference","module":"@angular/common","name":"DOCUMENT","line":94,"character":24}]}],null],"parameters":[{"__symbolic":"reference","name":"ElementRef","module":"@angular/core","arguments":[{"__symbolic":"error","message":"Could not resolve type","line":90,"character":36,"context":{"typeName":"HTMLElement"},"module":"./bottom-sheet-container"}]},{"__symbolic":"reference","module":"@angular/core","name":"ChangeDetectorRef","line":91,"character":32},{"__symbolic":"reference","module":"@angular/cdk/a11y","name":"FocusTrapFactory","line":92,"character":31},{"__symbolic":"reference","module":"@angular/cdk/layout","name":"BreakpointObserver","line":93,"character":24},{"__symbolic":"reference","name":"any"},{"__symbolic":"reference","name":"MatBottomSheetConfig"}]}],"attachComponentPortal":[{"__symbolic":"method"}],"attachTemplatePortal":[{"__symbolic":"method"}],"enter":[{"__symbolic":"method"}],"exit":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}],"_onAnimationDone":[{"__symbolic":"method"}],"_onAnimationStart":[{"__symbolic":"method"}],"_toggleClass":[{"__symbolic":"method"}],"_validatePortalAttached":[{"__symbolic":"method"}],"_setPanelClass":[{"__symbolic":"method"}],"_trapFocus":[{"__symbolic":"method"}],"_restoreFocus":[{"__symbolic":"method"}],"_savePreviouslyFocusedElement":[{"__symbolic":"method"}]}},"matBottomSheetAnimations":{"bottomSheetState":{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"trigger","line":22,"character":20},"arguments":["state",[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"state","line":23,"character":4},"arguments":["void, hidden",{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"style","line":23,"character":26},"arguments":[{"transform":"translateY(100%)"}]}]},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"state","line":24,"character":4},"arguments":["visible",{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"style","line":24,"character":21},"arguments":[{"transform":"translateY(0%)"}]}]},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"transition","line":25,"character":4},"arguments":["visible => void, visible => hidden",{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"animate","line":26,"character":8},"arguments":[{"__symbolic":"binop","operator":"+","left":{"__symbolic":"binop","operator":"+","left":{"__symbolic":"select","expression":{"__symbolic":"reference","module":"@angular/material/core","name":"AnimationDurations","line":26,"character":19},"member":"COMPLEX"},"right":" "},"right":{"__symbolic":"select","expression":{"__symbolic":"reference","module":"@angular/material/core","name":"AnimationCurves","line":26,"character":49},"member":"ACCELERATION_CURVE"}}]}]},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"transition","line":27,"character":4},"arguments":["void => visible",{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"animate","line":28,"character":8},"arguments":[{"__symbolic":"binop","operator":"+","left":{"__symbolic":"binop","operator":"+","left":{"__symbolic":"select","expression":{"__symbolic":"reference","module":"@angular/material/core","name":"AnimationDurations","line":28,"character":19},"member":"EXITING"},"right":" "},"right":{"__symbolic":"select","expression":{"__symbolic":"reference","module":"@angular/material/core","name":"AnimationCurves","line":28,"character":49},"member":"DECELERATION_CURVE"}}]}]}]]}},"MatBottomSheetRef":{"__symbolic":"class","arity":2,"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"MatBottomSheetContainer"},{"__symbolic":"reference","module":"@angular/cdk/overlay","name":"OverlayRef","line":45,"character":25}]}],"dismiss":[{"__symbolic":"method"}],"afterDismissed":[{"__symbolic":"method"}],"afterOpened":[{"__symbolic":"method"}],"backdropClick":[{"__symbolic":"method"}],"keydownEvents":[{"__symbolic":"method"}]}}},"origins":{"MatBottomSheetModule":"./bottom-sheet-module","MAT_BOTTOM_SHEET_DEFAULT_OPTIONS":"./bottom-sheet","MatBottomSheet":"./bottom-sheet","MAT_BOTTOM_SHEET_DATA":"./bottom-sheet-config","MatBottomSheetConfig":"./bottom-sheet-config","MatBottomSheetContainer":"./bottom-sheet-container","matBottomSheetAnimations":"./bottom-sheet-animations","MatBottomSheetRef":"./bottom-sheet-ref"},"importAs":"@angular/material/bottom-sheet"}
1
+ {"__symbolic":"module","version":4,"metadata":{"MatBottomSheetModule":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"NgModule","line":15,"character":1},"arguments":[{"imports":[{"__symbolic":"reference","module":"@angular/cdk/overlay","name":"OverlayModule","line":17,"character":4},{"__symbolic":"reference","module":"@angular/material/core","name":"MatCommonModule","line":18,"character":4},{"__symbolic":"reference","module":"@angular/cdk/portal","name":"PortalModule","line":19,"character":4}],"exports":[{"__symbolic":"reference","name":"MatBottomSheetContainer"},{"__symbolic":"reference","module":"@angular/material/core","name":"MatCommonModule","line":21,"character":37}],"declarations":[{"__symbolic":"reference","name":"MatBottomSheetContainer"}],"entryComponents":[{"__symbolic":"reference","name":"MatBottomSheetContainer"}]}]}],"members":{}},"MAT_BOTTOM_SHEET_DEFAULT_OPTIONS":{"__symbolic":"new","expression":{"__symbolic":"reference","module":"@angular/core","name":"InjectionToken","line":32,"character":8},"arguments":["mat-bottom-sheet-default-options"]},"MatBottomSheet":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":37,"character":1},"arguments":[{"providedIn":{"__symbolic":"reference","name":"MatBottomSheetModule"}}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[null,null,[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Optional","line":58,"character":7}},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"SkipSelf","line":58,"character":19}}],[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Optional","line":59,"character":7}},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":59,"character":19},"arguments":[{"__symbolic":"reference","name":"MAT_BOTTOM_SHEET_DEFAULT_OPTIONS"}]}]],"parameters":[{"__symbolic":"reference","module":"@angular/cdk/overlay","name":"Overlay","line":56,"character":24},{"__symbolic":"reference","module":"@angular/core","name":"Injector","line":57,"character":25},{"__symbolic":"reference","name":"MatBottomSheet"},{"__symbolic":"reference","name":"MatBottomSheetConfig"}]}],"open":[{"__symbolic":"method"},{"__symbolic":"method"},{"__symbolic":"method"}],"dismiss":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}],"_attachContainer":[{"__symbolic":"method"}],"_createOverlay":[{"__symbolic":"method"}],"_createInjector":[{"__symbolic":"method"}]},"statics":{"ɵprov":{}}},"MAT_BOTTOM_SHEET_DATA":{"__symbolic":"new","expression":{"__symbolic":"reference","module":"@angular/core","name":"InjectionToken","line":13,"character":41},"arguments":["MatBottomSheetData"]},"MatBottomSheetConfig":{"__symbolic":"class","arity":1,"members":{}},"MatBottomSheetContainer":{"__symbolic":"class","extends":{"__symbolic":"reference","module":"@angular/cdk/portal","name":"BasePortalOutlet","line":65,"character":45},"decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":43,"character":1},"arguments":[{"selector":"mat-bottom-sheet-container","changeDetection":{"__symbolic":"select","expression":{"__symbolic":"reference","module":"@angular/core","name":"ChangeDetectionStrategy","line":51,"character":19},"member":"Default"},"encapsulation":{"__symbolic":"select","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewEncapsulation","line":52,"character":17},"member":"None"},"animations":[{"__symbolic":"select","expression":{"__symbolic":"reference","name":"matBottomSheetAnimations"},"member":"bottomSheetState"}],"host":{"class":"mat-bottom-sheet-container","tabindex":"-1","role":"dialog","aria-modal":"true","[attr.aria-label]":"bottomSheetConfig?.ariaLabel","[@state]":"_animationState","(@state.start)":"_onAnimationStart($event)","(@state.done)":"_onAnimationDone($event)","$quoted$":["class","tabindex","role","aria-modal","[attr.aria-label]","[@state]","(@state.start)","(@state.done)"]},"template":"<ng-template cdkPortalOutlet></ng-template>\r\n","styles":[".mat-bottom-sheet-container{padding:8px 16px;min-width:100vw;box-sizing:border-box;display:block;outline:0;max-height:80vh;overflow:auto}.cdk-high-contrast-active .mat-bottom-sheet-container{outline:1px solid}.mat-bottom-sheet-container-xlarge,.mat-bottom-sheet-container-large,.mat-bottom-sheet-container-medium{border-top-left-radius:4px;border-top-right-radius:4px}.mat-bottom-sheet-container-medium{min-width:384px;max-width:calc(100vw - 128px)}.mat-bottom-sheet-container-large{min-width:512px;max-width:calc(100vw - 256px)}.mat-bottom-sheet-container-xlarge{min-width:576px;max-width:calc(100vw - 384px)}\n"]}]}],"members":{"_portalOutlet":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewChild","line":69,"character":3},"arguments":[{"__symbolic":"reference","module":"@angular/cdk/portal","name":"CdkPortalOutlet","line":69,"character":13},{"static":true}]}]}],"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[null,null,null,null,[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Optional","line":94,"character":5}},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":94,"character":17},"arguments":[{"__symbolic":"reference","module":"@angular/common","name":"DOCUMENT","line":94,"character":24}]}],null],"parameters":[{"__symbolic":"reference","name":"ElementRef","module":"@angular/core","arguments":[{"__symbolic":"error","message":"Could not resolve type","line":90,"character":36,"context":{"typeName":"HTMLElement"},"module":"./bottom-sheet-container"}]},{"__symbolic":"reference","module":"@angular/core","name":"ChangeDetectorRef","line":91,"character":32},{"__symbolic":"reference","module":"@angular/cdk/a11y","name":"FocusTrapFactory","line":92,"character":31},{"__symbolic":"reference","module":"@angular/cdk/layout","name":"BreakpointObserver","line":93,"character":24},{"__symbolic":"reference","name":"any"},{"__symbolic":"reference","name":"MatBottomSheetConfig"}]}],"attachComponentPortal":[{"__symbolic":"method"}],"attachTemplatePortal":[{"__symbolic":"method"}],"enter":[{"__symbolic":"method"}],"exit":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}],"_onAnimationDone":[{"__symbolic":"method"}],"_onAnimationStart":[{"__symbolic":"method"}],"_toggleClass":[{"__symbolic":"method"}],"_validatePortalAttached":[{"__symbolic":"method"}],"_setPanelClass":[{"__symbolic":"method"}],"_trapFocus":[{"__symbolic":"method"}],"_restoreFocus":[{"__symbolic":"method"}],"_savePreviouslyFocusedElement":[{"__symbolic":"method"}],"_getActiveElement":[{"__symbolic":"method"}]}},"matBottomSheetAnimations":{"bottomSheetState":{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"trigger","line":22,"character":20},"arguments":["state",[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"state","line":23,"character":4},"arguments":["void, hidden",{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"style","line":23,"character":26},"arguments":[{"transform":"translateY(100%)"}]}]},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"state","line":24,"character":4},"arguments":["visible",{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"style","line":24,"character":21},"arguments":[{"transform":"translateY(0%)"}]}]},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"transition","line":25,"character":4},"arguments":["visible => void, visible => hidden",{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"animate","line":26,"character":8},"arguments":[{"__symbolic":"binop","operator":"+","left":{"__symbolic":"binop","operator":"+","left":{"__symbolic":"select","expression":{"__symbolic":"reference","module":"@angular/material/core","name":"AnimationDurations","line":26,"character":19},"member":"COMPLEX"},"right":" "},"right":{"__symbolic":"select","expression":{"__symbolic":"reference","module":"@angular/material/core","name":"AnimationCurves","line":26,"character":49},"member":"ACCELERATION_CURVE"}}]}]},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"transition","line":27,"character":4},"arguments":["void => visible",{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"animate","line":28,"character":8},"arguments":[{"__symbolic":"binop","operator":"+","left":{"__symbolic":"binop","operator":"+","left":{"__symbolic":"select","expression":{"__symbolic":"reference","module":"@angular/material/core","name":"AnimationDurations","line":28,"character":19},"member":"EXITING"},"right":" "},"right":{"__symbolic":"select","expression":{"__symbolic":"reference","module":"@angular/material/core","name":"AnimationCurves","line":28,"character":49},"member":"DECELERATION_CURVE"}}]}]}]]}},"MatBottomSheetRef":{"__symbolic":"class","arity":2,"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"MatBottomSheetContainer"},{"__symbolic":"reference","module":"@angular/cdk/overlay","name":"OverlayRef","line":45,"character":25}]}],"dismiss":[{"__symbolic":"method"}],"afterDismissed":[{"__symbolic":"method"}],"afterOpened":[{"__symbolic":"method"}],"backdropClick":[{"__symbolic":"method"}],"keydownEvents":[{"__symbolic":"method"}]}}},"origins":{"MatBottomSheetModule":"./bottom-sheet-module","MAT_BOTTOM_SHEET_DEFAULT_OPTIONS":"./bottom-sheet","MatBottomSheet":"./bottom-sheet","MAT_BOTTOM_SHEET_DATA":"./bottom-sheet-config","MatBottomSheetConfig":"./bottom-sheet-config","MatBottomSheetContainer":"./bottom-sheet-container","matBottomSheetAnimations":"./bottom-sheet-animations","MatBottomSheetRef":"./bottom-sheet-ref"},"importAs":"@angular/material/bottom-sheet"}