@angular/cdk 2.0.0-beta.11 → 2.0.0-beta.12

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 (306) hide show
  1. package/_a11y.scss +23 -0
  2. package/_overlay.scss +93 -0
  3. package/a11y/index.metadata.json +2 -1
  4. package/a11y/typings/a11y-module.d.ts +2 -0
  5. package/a11y/typings/focus-monitor.d.ts +1 -1
  6. package/a11y/typings/index.d.ts +1 -1
  7. package/a11y/typings/index.metadata.json +1 -1
  8. package/a11y/typings/{public_api.d.ts → public-api.d.ts} +8 -2
  9. package/a11y-prebuilt.css +1 -0
  10. package/a11y.metadata.json +2 -1
  11. package/bidi/index.metadata.json +2 -1
  12. package/bidi/typings/bidi-module.d.ts +2 -0
  13. package/bidi/typings/index.d.ts +1 -1
  14. package/bidi/typings/index.metadata.json +1 -1
  15. package/bidi/typings/public-api.d.ts +10 -0
  16. package/bidi.metadata.json +2 -1
  17. package/bundles/cdk-a11y.umd.js +1368 -1357
  18. package/bundles/cdk-a11y.umd.js.map +1 -1
  19. package/bundles/cdk-a11y.umd.min.js +2 -2
  20. package/bundles/cdk-a11y.umd.min.js.map +1 -1
  21. package/bundles/cdk-bidi.umd.js +42 -40
  22. package/bundles/cdk-bidi.umd.js.map +1 -1
  23. package/bundles/cdk-bidi.umd.min.js +2 -2
  24. package/bundles/cdk-bidi.umd.min.js.map +1 -1
  25. package/bundles/cdk-coercion.umd.js +12 -0
  26. package/bundles/cdk-coercion.umd.js.map +1 -1
  27. package/bundles/cdk-coercion.umd.min.js +2 -2
  28. package/bundles/cdk-coercion.umd.min.js.map +1 -1
  29. package/bundles/cdk-collections.umd.js +113 -11
  30. package/bundles/cdk-collections.umd.js.map +1 -1
  31. package/bundles/cdk-collections.umd.min.js +2 -2
  32. package/bundles/cdk-collections.umd.min.js.map +1 -1
  33. package/bundles/cdk-keycodes.umd.js.map +1 -1
  34. package/bundles/cdk-keycodes.umd.min.js +1 -1
  35. package/bundles/cdk-keycodes.umd.min.js.map +1 -1
  36. package/bundles/cdk-layout.umd.js +235 -0
  37. package/bundles/cdk-layout.umd.js.map +1 -0
  38. package/bundles/cdk-layout.umd.min.js +9 -0
  39. package/bundles/cdk-layout.umd.min.js.map +1 -0
  40. package/bundles/cdk-observers.umd.js +41 -40
  41. package/bundles/cdk-observers.umd.js.map +1 -1
  42. package/bundles/cdk-observers.umd.min.js +2 -2
  43. package/bundles/cdk-observers.umd.min.js.map +1 -1
  44. package/bundles/cdk-overlay.umd.js +306 -265
  45. package/bundles/cdk-overlay.umd.js.map +1 -1
  46. package/bundles/cdk-overlay.umd.min.js +2 -2
  47. package/bundles/cdk-overlay.umd.min.js.map +1 -1
  48. package/bundles/cdk-platform.umd.js +19 -17
  49. package/bundles/cdk-platform.umd.js.map +1 -1
  50. package/bundles/cdk-platform.umd.min.js +2 -2
  51. package/bundles/cdk-platform.umd.min.js.map +1 -1
  52. package/bundles/cdk-portal.umd.js +71 -37
  53. package/bundles/cdk-portal.umd.js.map +1 -1
  54. package/bundles/cdk-portal.umd.min.js +2 -2
  55. package/bundles/cdk-portal.umd.min.js.map +1 -1
  56. package/bundles/cdk-rxjs.umd.js +13 -4
  57. package/bundles/cdk-rxjs.umd.js.map +1 -1
  58. package/bundles/cdk-rxjs.umd.min.js +2 -2
  59. package/bundles/cdk-rxjs.umd.min.js.map +1 -1
  60. package/bundles/cdk-scrolling.umd.js +89 -54
  61. package/bundles/cdk-scrolling.umd.js.map +1 -1
  62. package/bundles/cdk-scrolling.umd.min.js +2 -2
  63. package/bundles/cdk-scrolling.umd.min.js.map +1 -1
  64. package/bundles/cdk-stepper.umd.js +115 -90
  65. package/bundles/cdk-stepper.umd.js.map +1 -1
  66. package/bundles/cdk-stepper.umd.min.js +2 -2
  67. package/bundles/cdk-stepper.umd.min.js.map +1 -1
  68. package/bundles/cdk-table.umd.js +261 -218
  69. package/bundles/cdk-table.umd.js.map +1 -1
  70. package/bundles/cdk-table.umd.min.js +2 -2
  71. package/bundles/cdk-table.umd.min.js.map +1 -1
  72. package/bundles/cdk.umd.js +1 -1
  73. package/bundles/cdk.umd.js.map +1 -1
  74. package/bundles/cdk.umd.min.js +2 -2
  75. package/bundles/cdk.umd.min.js.map +1 -1
  76. package/cdk.metadata.json +2 -1
  77. package/coercion/index.metadata.json +2 -1
  78. package/coercion/typings/array.d.ts +9 -0
  79. package/coercion/typings/index.d.ts +1 -1
  80. package/coercion/typings/index.metadata.json +1 -1
  81. package/{typings/coercion/public_api.d.ts → coercion/typings/public-api.d.ts} +1 -0
  82. package/coercion.metadata.json +2 -1
  83. package/collections/index.metadata.json +2 -1
  84. package/collections/typings/index.d.ts +2 -1
  85. package/collections/typings/index.metadata.json +1 -1
  86. package/{typings/collections/public_api.d.ts → collections/typings/public-api.d.ts} +1 -0
  87. package/collections/typings/selection.d.ts +13 -3
  88. package/collections/typings/unique-selection-dispatcher.d.ts +40 -0
  89. package/collections.metadata.json +2 -1
  90. package/esm2015/a11y.js +1252 -1250
  91. package/esm2015/a11y.js.map +1 -1
  92. package/esm2015/bidi.js +1 -1
  93. package/esm2015/bidi.js.map +1 -1
  94. package/esm2015/cdk.js +1 -1
  95. package/esm2015/cdk.js.map +1 -1
  96. package/esm2015/coercion.js +11 -1
  97. package/esm2015/coercion.js.map +1 -1
  98. package/esm2015/collections.js +93 -8
  99. package/esm2015/collections.js.map +1 -1
  100. package/esm2015/keycodes.js.map +1 -1
  101. package/esm2015/layout.js +226 -0
  102. package/esm2015/layout.js.map +1 -0
  103. package/esm2015/observers.js +8 -7
  104. package/esm2015/observers.js.map +1 -1
  105. package/esm2015/overlay.js +157 -136
  106. package/esm2015/overlay.js.map +1 -1
  107. package/esm2015/platform.js +1 -1
  108. package/esm2015/platform.js.map +1 -1
  109. package/esm2015/portal.js +30 -1
  110. package/esm2015/portal.js.map +1 -1
  111. package/esm2015/rxjs.js +5 -1
  112. package/esm2015/rxjs.js.map +1 -1
  113. package/esm2015/scrolling.js +39 -8
  114. package/esm2015/scrolling.js.map +1 -1
  115. package/esm2015/stepper.js +27 -5
  116. package/esm2015/stepper.js.map +1 -1
  117. package/esm2015/table.js +68 -29
  118. package/esm2015/table.js.map +1 -1
  119. package/esm5/a11y.es5.js +1372 -1357
  120. package/esm5/a11y.es5.js.map +1 -1
  121. package/esm5/bidi.es5.js +45 -40
  122. package/esm5/bidi.es5.js.map +1 -1
  123. package/esm5/cdk.es5.js +4 -1
  124. package/esm5/cdk.es5.js.map +1 -1
  125. package/esm5/coercion.es5.js +14 -1
  126. package/esm5/coercion.es5.js.map +1 -1
  127. package/esm5/collections.es5.js +110 -8
  128. package/esm5/collections.es5.js.map +1 -1
  129. package/esm5/keycodes.es5.js +2 -0
  130. package/esm5/keycodes.es5.js.map +1 -1
  131. package/esm5/layout.es5.js +234 -0
  132. package/esm5/layout.es5.js.map +1 -0
  133. package/esm5/observers.es5.js +44 -40
  134. package/esm5/observers.es5.js.map +1 -1
  135. package/esm5/overlay.es5.js +304 -259
  136. package/esm5/overlay.es5.js.map +1 -1
  137. package/esm5/platform.es5.js +22 -17
  138. package/esm5/platform.es5.js.map +1 -1
  139. package/esm5/portal.es5.js +81 -44
  140. package/esm5/portal.es5.js.map +1 -1
  141. package/esm5/rxjs.es5.js +12 -1
  142. package/esm5/rxjs.es5.js.map +1 -1
  143. package/esm5/scrolling.es5.js +89 -51
  144. package/esm5/scrolling.es5.js.map +1 -1
  145. package/esm5/stepper.es5.js +119 -91
  146. package/esm5/stepper.es5.js.map +1 -1
  147. package/esm5/table.es5.js +265 -218
  148. package/esm5/table.es5.js.map +1 -1
  149. package/keycodes/index.metadata.json +2 -1
  150. package/keycodes/typings/index.d.ts +1 -1
  151. package/keycodes/typings/{public_api.d.ts → public-api.d.ts} +0 -0
  152. package/keycodes.metadata.json +2 -1
  153. package/layout/index.d.ts +8 -0
  154. package/layout/index.metadata.json +12 -0
  155. package/layout/package.json +7 -0
  156. package/layout/typings/breakpoints-observer.d.ts +37 -0
  157. package/layout/typings/breakpoints.d.ts +18 -0
  158. package/layout/typings/index.d.ts +4 -0
  159. package/layout/typings/index.metadata.json +1 -0
  160. package/layout/typings/media-matcher.d.ts +15 -0
  161. package/layout/typings/public-api.d.ts +5 -0
  162. package/layout.d.ts +8 -0
  163. package/layout.metadata.json +12 -0
  164. package/observers/index.metadata.json +2 -1
  165. package/observers/typings/index.d.ts +1 -1
  166. package/observers/typings/index.metadata.json +1 -1
  167. package/observers/typings/observe-content.d.ts +3 -3
  168. package/observers/typings/{public_api.d.ts → public-api.d.ts} +0 -0
  169. package/observers.metadata.json +2 -1
  170. package/overlay/index.metadata.json +2 -1
  171. package/overlay/typings/index.d.ts +2 -2
  172. package/overlay/typings/index.metadata.json +1 -1
  173. package/overlay/typings/overlay-config.d.ts +1 -1
  174. package/overlay/typings/overlay-directives.d.ts +3 -3
  175. package/overlay/typings/overlay-module.d.ts +11 -0
  176. package/overlay/typings/overlay-ref.d.ts +6 -6
  177. package/overlay/typings/overlay.d.ts +2 -2
  178. package/overlay/typings/position/connected-position-strategy.d.ts +5 -0
  179. package/overlay/typings/position/position-strategy.d.ts +2 -0
  180. package/overlay/typings/{public_api.d.ts → public-api.d.ts} +1 -4
  181. package/overlay/typings/scroll/scroll-strategy.d.ts +1 -1
  182. package/overlay-prebuilt.css +1 -0
  183. package/overlay.metadata.json +2 -1
  184. package/package.json +3 -3
  185. package/platform/index.metadata.json +2 -1
  186. package/platform/typings/index.d.ts +1 -1
  187. package/platform/typings/index.metadata.json +1 -1
  188. package/platform/typings/platform-module.d.ts +2 -0
  189. package/platform/typings/public-api.d.ts +10 -0
  190. package/platform.metadata.json +2 -1
  191. package/portal/index.metadata.json +2 -1
  192. package/portal/typings/index.d.ts +1 -1
  193. package/portal/typings/index.metadata.json +1 -1
  194. package/portal/typings/{public_api.d.ts → public-api.d.ts} +1 -0
  195. package/portal.metadata.json +2 -1
  196. package/rxjs/index.metadata.json +2 -1
  197. package/rxjs/typings/index.d.ts +1 -1
  198. package/rxjs/typings/index.metadata.json +1 -1
  199. package/rxjs/typings/{public_api.d.ts → public-api.d.ts} +0 -0
  200. package/rxjs/typings/rx-operators.d.ts +7 -0
  201. package/rxjs.metadata.json +2 -1
  202. package/scrolling/index.metadata.json +2 -1
  203. package/scrolling/typings/index.d.ts +1 -1
  204. package/scrolling/typings/index.metadata.json +1 -1
  205. package/scrolling/typings/public-api.d.ts +11 -0
  206. package/scrolling/typings/scrolling-module.d.ts +2 -0
  207. package/scrolling/typings/viewport-ruler.d.ts +20 -6
  208. package/scrolling.metadata.json +2 -1
  209. package/stepper/index.metadata.json +2 -1
  210. package/stepper/typings/index.d.ts +1 -1
  211. package/stepper/typings/index.metadata.json +1 -1
  212. package/stepper/typings/public-api.d.ts +11 -0
  213. package/stepper/typings/stepper-module.d.ts +2 -0
  214. package/stepper/typings/stepper.d.ts +8 -4
  215. package/stepper.metadata.json +2 -1
  216. package/table/index.metadata.json +2 -1
  217. package/table/typings/index.d.ts +1 -1
  218. package/table/typings/index.metadata.json +1 -1
  219. package/table/typings/public-api.d.ts +13 -0
  220. package/table/typings/row.d.ts +11 -3
  221. package/table/typings/table-errors.d.ts +10 -0
  222. package/table/typings/table-module.d.ts +2 -0
  223. package/table/typings/table.d.ts +17 -8
  224. package/table.metadata.json +2 -1
  225. package/typings/a11y/a11y-module.d.ts +2 -0
  226. package/typings/a11y/focus-monitor.d.ts +1 -1
  227. package/typings/a11y/index.d.ts +1 -1
  228. package/typings/a11y/index.metadata.json +1 -1
  229. package/typings/a11y/{public_api.d.ts → public-api.d.ts} +8 -2
  230. package/typings/bidi/bidi-module.d.ts +2 -0
  231. package/typings/bidi/index.d.ts +1 -1
  232. package/typings/bidi/index.metadata.json +1 -1
  233. package/typings/bidi/public-api.d.ts +10 -0
  234. package/typings/coercion/array.d.ts +9 -0
  235. package/typings/coercion/index.d.ts +1 -1
  236. package/typings/coercion/index.metadata.json +1 -1
  237. package/{coercion/typings/public_api.d.ts → typings/coercion/public-api.d.ts} +1 -0
  238. package/typings/collections/index.d.ts +2 -1
  239. package/typings/collections/index.metadata.json +1 -1
  240. package/{collections/typings/public_api.d.ts → typings/collections/public-api.d.ts} +1 -0
  241. package/typings/collections/selection.d.ts +13 -3
  242. package/typings/collections/unique-selection-dispatcher.d.ts +40 -0
  243. package/typings/index.d.ts +1 -1
  244. package/typings/index.metadata.json +1 -1
  245. package/typings/keycodes/index.d.ts +1 -1
  246. package/typings/keycodes/{public_api.d.ts → public-api.d.ts} +0 -0
  247. package/typings/layout/breakpoints-observer.d.ts +37 -0
  248. package/typings/layout/breakpoints.d.ts +18 -0
  249. package/typings/layout/index.d.ts +4 -0
  250. package/typings/layout/index.metadata.json +1 -0
  251. package/typings/layout/media-matcher.d.ts +15 -0
  252. package/typings/layout/public-api.d.ts +5 -0
  253. package/typings/observers/index.d.ts +1 -1
  254. package/typings/observers/index.metadata.json +1 -1
  255. package/typings/observers/observe-content.d.ts +3 -3
  256. package/typings/observers/{public_api.d.ts → public-api.d.ts} +0 -0
  257. package/typings/overlay/index.d.ts +2 -2
  258. package/typings/overlay/index.metadata.json +1 -1
  259. package/typings/overlay/overlay-config.d.ts +1 -1
  260. package/typings/overlay/overlay-directives.d.ts +3 -3
  261. package/typings/overlay/overlay-module.d.ts +11 -0
  262. package/typings/overlay/overlay-ref.d.ts +6 -6
  263. package/typings/overlay/overlay.d.ts +2 -2
  264. package/typings/overlay/position/connected-position-strategy.d.ts +5 -0
  265. package/typings/overlay/position/position-strategy.d.ts +2 -0
  266. package/typings/overlay/{public_api.d.ts → public-api.d.ts} +1 -4
  267. package/typings/overlay/scroll/scroll-strategy.d.ts +1 -1
  268. package/typings/platform/index.d.ts +1 -1
  269. package/typings/platform/index.metadata.json +1 -1
  270. package/typings/platform/platform-module.d.ts +2 -0
  271. package/typings/platform/public-api.d.ts +10 -0
  272. package/typings/portal/index.d.ts +1 -1
  273. package/typings/portal/index.metadata.json +1 -1
  274. package/typings/portal/{public_api.d.ts → public-api.d.ts} +1 -0
  275. package/typings/{public_api.d.ts → public-api.d.ts} +0 -0
  276. package/typings/rxjs/index.d.ts +1 -1
  277. package/typings/rxjs/index.metadata.json +1 -1
  278. package/typings/rxjs/{public_api.d.ts → public-api.d.ts} +0 -0
  279. package/typings/rxjs/rx-operators.d.ts +7 -0
  280. package/typings/scrolling/index.d.ts +1 -1
  281. package/typings/scrolling/index.metadata.json +1 -1
  282. package/typings/scrolling/public-api.d.ts +11 -0
  283. package/typings/scrolling/scrolling-module.d.ts +2 -0
  284. package/typings/scrolling/viewport-ruler.d.ts +20 -6
  285. package/typings/stepper/index.d.ts +1 -1
  286. package/typings/stepper/index.metadata.json +1 -1
  287. package/typings/stepper/public-api.d.ts +11 -0
  288. package/typings/stepper/stepper-module.d.ts +2 -0
  289. package/typings/stepper/stepper.d.ts +8 -4
  290. package/typings/table/index.d.ts +1 -1
  291. package/typings/table/index.metadata.json +1 -1
  292. package/typings/table/public-api.d.ts +13 -0
  293. package/typings/table/row.d.ts +11 -3
  294. package/typings/table/table-errors.d.ts +10 -0
  295. package/typings/table/table-module.d.ts +2 -0
  296. package/typings/table/table.d.ts +17 -8
  297. package/bidi/typings/public_api.d.ts +0 -4
  298. package/platform/typings/public_api.d.ts +0 -4
  299. package/scrolling/typings/public_api.d.ts +0 -5
  300. package/stepper/typings/public_api.d.ts +0 -5
  301. package/table/typings/public_api.d.ts +0 -7
  302. package/typings/bidi/public_api.d.ts +0 -4
  303. package/typings/platform/public_api.d.ts +0 -4
  304. package/typings/scrolling/public_api.d.ts +0 -5
  305. package/typings/stepper/public_api.d.ts +0 -5
  306. package/typings/table/public_api.d.ts +0 -7
@@ -6,10 +6,10 @@
6
6
  * found in the LICENSE file at https://angular.io/license
7
7
  */
8
8
  (function (global, factory) {
9
- typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('@angular/core'), require('@angular/cdk/portal'), require('rxjs/Subject'), require('@angular/cdk/scrolling'), require('@angular/cdk/bidi'), require('@angular/cdk/coercion'), require('@angular/cdk/keycodes'), require('rxjs/Subscription')) :
10
- typeof define === 'function' && define.amd ? define(['exports', '@angular/core', '@angular/cdk/portal', 'rxjs/Subject', '@angular/cdk/scrolling', '@angular/cdk/bidi', '@angular/cdk/coercion', '@angular/cdk/keycodes', 'rxjs/Subscription'], factory) :
11
- (factory((global.ng = global.ng || {}, global.ng.cdk = global.ng.cdk || {}, global.ng.cdk.overlay = global.ng.cdk.overlay || {}),global.ng.core,global.ng.cdk.portal,global.Rx,global.ng.cdk.scrolling,global.ng.cdk.bidi,global.ng.cdk.coercion,global.ng.cdk.keycodes,global.Rx));
12
- }(this, (function (exports,_angular_core,_angular_cdk_portal,rxjs_Subject,_angular_cdk_scrolling,_angular_cdk_bidi,_angular_cdk_coercion,_angular_cdk_keycodes,rxjs_Subscription) { 'use strict';
9
+ typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('@angular/core'), require('@angular/cdk/portal'), require('rxjs/Subject'), require('@angular/cdk/scrolling'), require('rxjs/Subscription'), require('@angular/cdk/bidi'), require('@angular/cdk/coercion'), require('@angular/cdk/keycodes')) :
10
+ typeof define === 'function' && define.amd ? define(['exports', '@angular/core', '@angular/cdk/portal', 'rxjs/Subject', '@angular/cdk/scrolling', 'rxjs/Subscription', '@angular/cdk/bidi', '@angular/cdk/coercion', '@angular/cdk/keycodes'], factory) :
11
+ (factory((global.ng = global.ng || {}, global.ng.cdk = global.ng.cdk || {}, global.ng.cdk.overlay = global.ng.cdk.overlay || {}),global.ng.core,global.ng.cdk.portal,global.Rx,global.ng.cdk.scrolling,global.Rx,global.ng.cdk.bidi,global.ng.cdk.coercion,global.ng.cdk.keycodes));
12
+ }(this, (function (exports,_angular_core,_angular_cdk_portal,rxjs_Subject,_angular_cdk_scrolling,rxjs_Subscription,_angular_cdk_bidi,_angular_cdk_coercion,_angular_cdk_keycodes) { 'use strict';
13
13
 
14
14
  /*! *****************************************************************************
15
15
  Copyright (c) Microsoft Corporation. All rights reserved.
@@ -57,14 +57,15 @@ var NoopScrollStrategy = (function () {
57
57
  NoopScrollStrategy.prototype.attach = function () { };
58
58
  return NoopScrollStrategy;
59
59
  }());
60
+
60
61
  /**
61
62
  * OverlayConfig captures the initial configuration used when opening an overlay.
62
63
  */
63
64
  var OverlayConfig = (function () {
64
65
  /**
65
- * @param {?=} state
66
+ * @param {?=} config
66
67
  */
67
- function OverlayConfig(state) {
68
+ function OverlayConfig(config) {
68
69
  var _this = this;
69
70
  /**
70
71
  * Strategy to be used when handling scroll events while the overlay is open.
@@ -86,12 +87,13 @@ var OverlayConfig = (function () {
86
87
  * The direction of the text in the overlay panel.
87
88
  */
88
89
  this.direction = 'ltr';
89
- if (state) {
90
- Object.keys(state).forEach(function (key) { return _this[key] = state[key]; });
90
+ if (config) {
91
+ Object.keys(config).forEach(function (key) { return _this[key] = config[key]; });
91
92
  }
92
93
  }
93
94
  return OverlayConfig;
94
95
  }());
96
+
95
97
  /**
96
98
  * Reference to an overlay that has been created with the Overlay service.
97
99
  * Used to manipulate or dispose of said overlay.
@@ -100,20 +102,20 @@ var OverlayRef = (function () {
100
102
  /**
101
103
  * @param {?} _portalHost
102
104
  * @param {?} _pane
103
- * @param {?} _state
105
+ * @param {?} _config
104
106
  * @param {?} _ngZone
105
107
  */
106
- function OverlayRef(_portalHost, _pane, _state, _ngZone) {
108
+ function OverlayRef(_portalHost, _pane, _config, _ngZone) {
107
109
  this._portalHost = _portalHost;
108
110
  this._pane = _pane;
109
- this._state = _state;
111
+ this._config = _config;
110
112
  this._ngZone = _ngZone;
111
113
  this._backdropElement = null;
112
114
  this._backdropClick = new rxjs_Subject.Subject();
113
115
  this._attachments = new rxjs_Subject.Subject();
114
116
  this._detachments = new rxjs_Subject.Subject();
115
- if (_state.scrollStrategy) {
116
- _state.scrollStrategy.attach(this);
117
+ if (_config.scrollStrategy) {
118
+ _config.scrollStrategy.attach(this);
117
119
  }
118
120
  }
119
121
  Object.defineProperty(OverlayRef.prototype, "overlayElement", {
@@ -135,29 +137,29 @@ var OverlayRef = (function () {
135
137
  OverlayRef.prototype.attach = function (portal) {
136
138
  var _this = this;
137
139
  var /** @type {?} */ attachResult = this._portalHost.attach(portal);
138
- if (this._state.positionStrategy) {
139
- this._state.positionStrategy.attach(this);
140
+ if (this._config.positionStrategy) {
141
+ this._config.positionStrategy.attach(this);
140
142
  }
141
- // Update the pane element with the given state configuration.
143
+ // Update the pane element with the given configuration.
142
144
  this._updateStackingOrder();
143
145
  this.updateSize();
144
146
  this.updateDirection();
145
147
  this.updatePosition();
146
- if (this._state.scrollStrategy) {
147
- this._state.scrollStrategy.enable();
148
+ if (this._config.scrollStrategy) {
149
+ this._config.scrollStrategy.enable();
148
150
  }
149
151
  // Enable pointer events for the overlay pane element.
150
152
  this._togglePointerEvents(true);
151
- if (this._state.hasBackdrop) {
153
+ if (this._config.hasBackdrop) {
152
154
  this._attachBackdrop();
153
155
  }
154
- if (this._state.panelClass) {
156
+ if (this._config.panelClass) {
155
157
  // We can't do a spread here, because IE doesn't support setting multiple classes.
156
- if (Array.isArray(this._state.panelClass)) {
157
- this._state.panelClass.forEach(function (cls) { return _this._pane.classList.add(cls); });
158
+ if (Array.isArray(this._config.panelClass)) {
159
+ this._config.panelClass.forEach(function (cls) { return _this._pane.classList.add(cls); });
158
160
  }
159
161
  else {
160
- this._pane.classList.add(this._state.panelClass);
162
+ this._pane.classList.add(this._config.panelClass);
161
163
  }
162
164
  }
163
165
  // Only emit the `attachments` event once all other setup is done.
@@ -166,7 +168,7 @@ var OverlayRef = (function () {
166
168
  };
167
169
  /**
168
170
  * Detaches an overlay from a portal.
169
- * @return {?} Resolves when the overlay has been detached.
171
+ * @return {?} The portal detachment result.
170
172
  */
171
173
  OverlayRef.prototype.detach = function () {
172
174
  this.detachBackdrop();
@@ -174,8 +176,11 @@ var OverlayRef = (function () {
174
176
  // This is necessary because otherwise the pane element will cover the page and disable
175
177
  // pointer events therefore. Depends on the position strategy and the applied pane boundaries.
176
178
  this._togglePointerEvents(false);
177
- if (this._state.scrollStrategy) {
178
- this._state.scrollStrategy.disable();
179
+ if (this._config.positionStrategy && this._config.positionStrategy.detach) {
180
+ this._config.positionStrategy.detach();
181
+ }
182
+ if (this._config.scrollStrategy) {
183
+ this._config.scrollStrategy.disable();
179
184
  }
180
185
  var /** @type {?} */ detachmentResult = this._portalHost.detach();
181
186
  // Only emit after everything is detached.
@@ -187,11 +192,11 @@ var OverlayRef = (function () {
187
192
  * @return {?}
188
193
  */
189
194
  OverlayRef.prototype.dispose = function () {
190
- if (this._state.positionStrategy) {
191
- this._state.positionStrategy.dispose();
195
+ if (this._config.positionStrategy) {
196
+ this._config.positionStrategy.dispose();
192
197
  }
193
- if (this._state.scrollStrategy) {
194
- this._state.scrollStrategy.disable();
198
+ if (this._config.scrollStrategy) {
199
+ this._config.scrollStrategy.disable();
195
200
  }
196
201
  this.detachBackdrop();
197
202
  this._portalHost.dispose();
@@ -229,19 +234,19 @@ var OverlayRef = (function () {
229
234
  return this._detachments.asObservable();
230
235
  };
231
236
  /**
232
- * Gets the current state config of the overlay.
237
+ * Gets the current config of the overlay.
233
238
  * @return {?}
234
239
  */
235
- OverlayRef.prototype.getState = function () {
236
- return this._state;
240
+ OverlayRef.prototype.getConfig = function () {
241
+ return this._config;
237
242
  };
238
243
  /**
239
244
  * Updates the position of the overlay based on the position strategy.
240
245
  * @return {?}
241
246
  */
242
247
  OverlayRef.prototype.updatePosition = function () {
243
- if (this._state.positionStrategy) {
244
- this._state.positionStrategy.apply();
248
+ if (this._config.positionStrategy) {
249
+ this._config.positionStrategy.apply();
245
250
  }
246
251
  };
247
252
  /**
@@ -249,30 +254,30 @@ var OverlayRef = (function () {
249
254
  * @return {?}
250
255
  */
251
256
  OverlayRef.prototype.updateDirection = function () {
252
- this._pane.setAttribute('dir', /** @type {?} */ ((this._state.direction)));
257
+ this._pane.setAttribute('dir', /** @type {?} */ ((this._config.direction)));
253
258
  };
254
259
  /**
255
260
  * Updates the size of the overlay based on the overlay config.
256
261
  * @return {?}
257
262
  */
258
263
  OverlayRef.prototype.updateSize = function () {
259
- if (this._state.width || this._state.width === 0) {
260
- this._pane.style.width = formatCssUnit(this._state.width);
264
+ if (this._config.width || this._config.width === 0) {
265
+ this._pane.style.width = formatCssUnit(this._config.width);
261
266
  }
262
- if (this._state.height || this._state.height === 0) {
263
- this._pane.style.height = formatCssUnit(this._state.height);
267
+ if (this._config.height || this._config.height === 0) {
268
+ this._pane.style.height = formatCssUnit(this._config.height);
264
269
  }
265
- if (this._state.minWidth || this._state.minWidth === 0) {
266
- this._pane.style.minWidth = formatCssUnit(this._state.minWidth);
270
+ if (this._config.minWidth || this._config.minWidth === 0) {
271
+ this._pane.style.minWidth = formatCssUnit(this._config.minWidth);
267
272
  }
268
- if (this._state.minHeight || this._state.minHeight === 0) {
269
- this._pane.style.minHeight = formatCssUnit(this._state.minHeight);
273
+ if (this._config.minHeight || this._config.minHeight === 0) {
274
+ this._pane.style.minHeight = formatCssUnit(this._config.minHeight);
270
275
  }
271
- if (this._state.maxWidth || this._state.maxWidth === 0) {
272
- this._pane.style.maxWidth = formatCssUnit(this._state.maxWidth);
276
+ if (this._config.maxWidth || this._config.maxWidth === 0) {
277
+ this._pane.style.maxWidth = formatCssUnit(this._config.maxWidth);
273
278
  }
274
- if (this._state.maxHeight || this._state.maxHeight === 0) {
275
- this._pane.style.maxHeight = formatCssUnit(this._state.maxHeight);
279
+ if (this._config.maxHeight || this._config.maxHeight === 0) {
280
+ this._pane.style.maxHeight = formatCssUnit(this._config.maxHeight);
276
281
  }
277
282
  };
278
283
  /**
@@ -291,8 +296,8 @@ var OverlayRef = (function () {
291
296
  var _this = this;
292
297
  this._backdropElement = document.createElement('div');
293
298
  this._backdropElement.classList.add('cdk-overlay-backdrop');
294
- if (this._state.backdropClass) {
295
- this._backdropElement.classList.add(this._state.backdropClass);
299
+ if (this._config.backdropClass) {
300
+ this._backdropElement.classList.add(this._config.backdropClass);
296
301
  } /** @type {?} */
297
302
  ((
298
303
  // Insert the backdrop before the pane in the DOM order,
@@ -342,8 +347,8 @@ var OverlayRef = (function () {
342
347
  }
343
348
  };
344
349
  backdropToDetach.classList.remove('cdk-overlay-backdrop-showing');
345
- if (this._state.backdropClass) {
346
- backdropToDetach.classList.remove(this._state.backdropClass);
350
+ if (this._config.backdropClass) {
351
+ backdropToDetach.classList.remove(this._config.backdropClass);
347
352
  }
348
353
  backdropToDetach.addEventListener('transitionend', finishDetach_1);
349
354
  // If the backdrop doesn't have a transition, the `transitionend` event won't fire.
@@ -366,6 +371,7 @@ var OverlayRef = (function () {
366
371
  function formatCssUnit(value) {
367
372
  return typeof value === 'string' ? (value) : value + "px";
368
373
  }
374
+
369
375
  /** Horizontal dimension of a connection point on the perimeter of the origin or overlay element. */
370
376
  /**
371
377
  * The points of the origin element and the overlay element to connect.
@@ -423,15 +429,16 @@ var ConnectedOverlayPositionChange = (function () {
423
429
  this.connectionPair = connectionPair;
424
430
  this.scrollableViewProperties = scrollableViewProperties;
425
431
  }
432
+ /**
433
+ * @nocollapse
434
+ */
435
+ ConnectedOverlayPositionChange.ctorParameters = function () { return [
436
+ { type: ConnectionPositionPair, },
437
+ { type: ScrollingVisibility, decorators: [{ type: _angular_core.Optional },] },
438
+ ]; };
426
439
  return ConnectedOverlayPositionChange;
427
440
  }());
428
- /**
429
- * @nocollapse
430
- */
431
- ConnectedOverlayPositionChange.ctorParameters = function () { return [
432
- { type: ConnectionPositionPair, },
433
- { type: ScrollingVisibility, decorators: [{ type: _angular_core.Optional },] },
434
- ]; };
441
+
435
442
  /**
436
443
  * Gets whether an element is scrolled outside of view by any of its parent scrolling containers.
437
444
  * \@docs-private
@@ -464,6 +471,7 @@ function isElementClippedByScrolling(element, scrollContainers) {
464
471
  return clippedAbove || clippedBelow || clippedLeft || clippedRight;
465
472
  });
466
473
  }
474
+
467
475
  /**
468
476
  * A strategy for positioning overlays. Using this strategy, an overlay is given an
469
477
  * implicit position relative some origin element. The relative position is defined in terms of
@@ -481,6 +489,9 @@ var ConnectedPositionStrategy = (function () {
481
489
  function ConnectedPositionStrategy(originPos, overlayPos, _connectedTo, _viewportRuler) {
482
490
  this._connectedTo = _connectedTo;
483
491
  this._viewportRuler = _viewportRuler;
492
+ /**
493
+ * Layout direction of the position strategy.
494
+ */
484
495
  this._dir = 'ltr';
485
496
  /**
486
497
  * The offset in pixels for the overlay connection point on the x-axis
@@ -494,6 +505,10 @@ var ConnectedPositionStrategy = (function () {
494
505
  * The Scrollable containers used to check scrollable view properties on position change.
495
506
  */
496
507
  this.scrollables = [];
508
+ /**
509
+ * Subscription to viewport resize events.
510
+ */
511
+ this._resizeSubscription = rxjs_Subscription.Subscription.EMPTY;
497
512
  /**
498
513
  * Ordered list of preferred positions, from most to least desirable.
499
514
  */
@@ -540,14 +555,26 @@ var ConnectedPositionStrategy = (function () {
540
555
  * @return {?}
541
556
  */
542
557
  ConnectedPositionStrategy.prototype.attach = function (overlayRef) {
558
+ var _this = this;
543
559
  this._overlayRef = overlayRef;
544
560
  this._pane = overlayRef.overlayElement;
561
+ this._resizeSubscription.unsubscribe();
562
+ this._resizeSubscription = this._viewportRuler.change().subscribe(function () { return _this.apply(); });
545
563
  };
546
564
  /**
547
565
  * Performs any cleanup after the element is destroyed.
548
566
  * @return {?}
549
567
  */
550
- ConnectedPositionStrategy.prototype.dispose = function () { };
568
+ ConnectedPositionStrategy.prototype.dispose = function () {
569
+ this._resizeSubscription.unsubscribe();
570
+ };
571
+ /**
572
+ * \@docs-private
573
+ * @return {?}
574
+ */
575
+ ConnectedPositionStrategy.prototype.detach = function () {
576
+ this._resizeSubscription.unsubscribe();
577
+ };
551
578
  /**
552
579
  * Updates the position of the overlay element, using whichever preferred position relative
553
580
  * to the origin fits on-screen.
@@ -816,6 +843,7 @@ var ConnectedPositionStrategy = (function () {
816
843
  };
817
844
  return ConnectedPositionStrategy;
818
845
  }());
846
+
819
847
  /**
820
848
  * A strategy for positioning overlays. Using this strategy, an overlay is given an
821
849
  * explicit position relative to the browser's viewport. We use flexbox, instead of
@@ -984,6 +1012,7 @@ var GlobalPositionStrategy = (function () {
984
1012
  };
985
1013
  return GlobalPositionStrategy;
986
1014
  }());
1015
+
987
1016
  /**
988
1017
  * Builder for overlay position strategy.
989
1018
  */
@@ -1011,17 +1040,18 @@ var OverlayPositionBuilder = (function () {
1011
1040
  OverlayPositionBuilder.prototype.connectedTo = function (elementRef, originPos, overlayPos) {
1012
1041
  return new ConnectedPositionStrategy(originPos, overlayPos, elementRef, this._viewportRuler);
1013
1042
  };
1043
+ OverlayPositionBuilder.decorators = [
1044
+ { type: _angular_core.Injectable },
1045
+ ];
1046
+ /**
1047
+ * @nocollapse
1048
+ */
1049
+ OverlayPositionBuilder.ctorParameters = function () { return [
1050
+ { type: _angular_cdk_scrolling.ViewportRuler, },
1051
+ ]; };
1014
1052
  return OverlayPositionBuilder;
1015
1053
  }());
1016
- OverlayPositionBuilder.decorators = [
1017
- { type: _angular_core.Injectable },
1018
- ];
1019
- /**
1020
- * @nocollapse
1021
- */
1022
- OverlayPositionBuilder.ctorParameters = function () { return [
1023
- { type: _angular_cdk_scrolling.ViewportRuler, },
1024
- ]; };
1054
+
1025
1055
  /**
1026
1056
  * The OverlayContainer is the container in which all overlays will load.
1027
1057
  * It should be provided in the root component to ensure it is properly shared.
@@ -1060,15 +1090,15 @@ var OverlayContainer = (function () {
1060
1090
  document.body.appendChild(container);
1061
1091
  this._containerElement = container;
1062
1092
  };
1093
+ OverlayContainer.decorators = [
1094
+ { type: _angular_core.Injectable },
1095
+ ];
1096
+ /**
1097
+ * @nocollapse
1098
+ */
1099
+ OverlayContainer.ctorParameters = function () { return []; };
1063
1100
  return OverlayContainer;
1064
1101
  }());
1065
- OverlayContainer.decorators = [
1066
- { type: _angular_core.Injectable },
1067
- ];
1068
- /**
1069
- * @nocollapse
1070
- */
1071
- OverlayContainer.ctorParameters = function () { return []; };
1072
1102
  /**
1073
1103
  * \@docs-private
1074
1104
  * @param {?} parentContainer
@@ -1086,13 +1116,15 @@ var OVERLAY_CONTAINER_PROVIDER = {
1086
1116
  deps: [[new _angular_core.Optional(), new _angular_core.SkipSelf(), OverlayContainer]],
1087
1117
  useFactory: OVERLAY_CONTAINER_PROVIDER_FACTORY
1088
1118
  };
1119
+
1089
1120
  /**
1090
1121
  * Returns an error to be thrown when attempting to attach an already-attached scroll strategy.
1091
1122
  * @return {?}
1092
1123
  */
1093
- function getMdScrollStrategyAlreadyAttachedError() {
1124
+ function getMatScrollStrategyAlreadyAttachedError() {
1094
1125
  return Error("Scroll strategy has already been attached.");
1095
1126
  }
1127
+
1096
1128
  /**
1097
1129
  * Strategy that will close the overlay as soon as the user starts scrolling.
1098
1130
  */
@@ -1110,7 +1142,7 @@ var CloseScrollStrategy = (function () {
1110
1142
  */
1111
1143
  CloseScrollStrategy.prototype.attach = function (overlayRef) {
1112
1144
  if (this._overlayRef) {
1113
- throw getMdScrollStrategyAlreadyAttachedError();
1145
+ throw getMatScrollStrategyAlreadyAttachedError();
1114
1146
  }
1115
1147
  this._overlayRef = overlayRef;
1116
1148
  };
@@ -1139,6 +1171,7 @@ var CloseScrollStrategy = (function () {
1139
1171
  };
1140
1172
  return CloseScrollStrategy;
1141
1173
  }());
1174
+
1142
1175
  /**
1143
1176
  * Strategy that will prevent the user from scrolling while the overlay is visible.
1144
1177
  */
@@ -1201,6 +1234,7 @@ var BlockScrollStrategy = (function () {
1201
1234
  };
1202
1235
  return BlockScrollStrategy;
1203
1236
  }());
1237
+
1204
1238
  /**
1205
1239
  * Strategy that will update the element position as the user is scrolling.
1206
1240
  */
@@ -1220,7 +1254,7 @@ var RepositionScrollStrategy = (function () {
1220
1254
  */
1221
1255
  RepositionScrollStrategy.prototype.attach = function (overlayRef) {
1222
1256
  if (this._overlayRef) {
1223
- throw getMdScrollStrategyAlreadyAttachedError();
1257
+ throw getMatScrollStrategyAlreadyAttachedError();
1224
1258
  }
1225
1259
  this._overlayRef = overlayRef;
1226
1260
  };
@@ -1247,6 +1281,7 @@ var RepositionScrollStrategy = (function () {
1247
1281
  };
1248
1282
  return RepositionScrollStrategy;
1249
1283
  }());
1284
+
1250
1285
  /**
1251
1286
  * Options for how an overlay will handle scrolling.
1252
1287
  *
@@ -1279,28 +1314,31 @@ var ScrollStrategyOptions = (function () {
1279
1314
  * @param config Configuration to be used inside the scroll strategy.
1280
1315
  * Allows debouncing the reposition calls.
1281
1316
  */
1282
- this.reposition = function (config) { return new RepositionScrollStrategy(_this._scrollDispatcher, config); };
1317
+ this.reposition = function (config) {
1318
+ return new RepositionScrollStrategy(_this._scrollDispatcher, config);
1319
+ };
1283
1320
  }
1321
+ ScrollStrategyOptions.decorators = [
1322
+ { type: _angular_core.Injectable },
1323
+ ];
1324
+ /**
1325
+ * @nocollapse
1326
+ */
1327
+ ScrollStrategyOptions.ctorParameters = function () { return [
1328
+ { type: _angular_cdk_scrolling.ScrollDispatcher, },
1329
+ { type: _angular_cdk_scrolling.ViewportRuler, },
1330
+ ]; };
1284
1331
  return ScrollStrategyOptions;
1285
1332
  }());
1286
- ScrollStrategyOptions.decorators = [
1287
- { type: _angular_core.Injectable },
1288
- ];
1289
- /**
1290
- * @nocollapse
1291
- */
1292
- ScrollStrategyOptions.ctorParameters = function () { return [
1293
- { type: _angular_cdk_scrolling.ScrollDispatcher, },
1294
- { type: _angular_cdk_scrolling.ViewportRuler, },
1295
- ]; };
1333
+
1296
1334
  /**
1297
1335
  * Next overlay unique ID.
1298
1336
  */
1299
1337
  var nextUniqueId = 0;
1300
1338
  /**
1301
- * The default state for newly created overlays.
1339
+ * The default config for newly created overlays.
1302
1340
  */
1303
- var defaultState = new OverlayConfig();
1341
+ var defaultConfig = new OverlayConfig();
1304
1342
  /**
1305
1343
  * Service to create Overlays. Overlays are dynamically added pieces of floating UI, meant to be
1306
1344
  * used as a low-level building building block for other components. Dialogs, tooltips, menus,
@@ -1330,14 +1368,14 @@ var Overlay = (function () {
1330
1368
  }
1331
1369
  /**
1332
1370
  * Creates an overlay.
1333
- * @param {?=} state State to apply to the overlay.
1371
+ * @param {?=} config Config to apply to the overlay.
1334
1372
  * @return {?} Reference to the created overlay.
1335
1373
  */
1336
- Overlay.prototype.create = function (state) {
1337
- if (state === void 0) { state = defaultState; }
1374
+ Overlay.prototype.create = function (config) {
1375
+ if (config === void 0) { config = defaultConfig; }
1338
1376
  var /** @type {?} */ pane = this._createPaneElement();
1339
1377
  var /** @type {?} */ portalHost = this._createPortalHost(pane);
1340
- return new OverlayRef(portalHost, pane, state, this._ngZone);
1378
+ return new OverlayRef(portalHost, pane, config, this._ngZone);
1341
1379
  };
1342
1380
  /**
1343
1381
  * Returns a position builder that can be used, via fluent API,
@@ -1366,23 +1404,98 @@ var Overlay = (function () {
1366
1404
  Overlay.prototype._createPortalHost = function (pane) {
1367
1405
  return new _angular_cdk_portal.DomPortalHost(pane, this._componentFactoryResolver, this._appRef, this._injector);
1368
1406
  };
1407
+ Overlay.decorators = [
1408
+ { type: _angular_core.Injectable },
1409
+ ];
1410
+ /**
1411
+ * @nocollapse
1412
+ */
1413
+ Overlay.ctorParameters = function () { return [
1414
+ { type: ScrollStrategyOptions, },
1415
+ { type: OverlayContainer, },
1416
+ { type: _angular_core.ComponentFactoryResolver, },
1417
+ { type: OverlayPositionBuilder, },
1418
+ { type: _angular_core.ApplicationRef, },
1419
+ { type: _angular_core.Injector, },
1420
+ { type: _angular_core.NgZone, },
1421
+ ]; };
1369
1422
  return Overlay;
1370
1423
  }());
1371
- Overlay.decorators = [
1372
- { type: _angular_core.Injectable },
1373
- ];
1424
+
1374
1425
  /**
1375
- * @nocollapse
1426
+ * The FullscreenOverlayContainer is the alternative to OverlayContainer
1427
+ * that supports correct displaying of overlay elements in Fullscreen mode
1428
+ * https://developer.mozilla.org/en-US/docs/Web/API/Element/requestFullScreen
1429
+ * It should be provided in the root component that way:
1430
+ * providers: [
1431
+ * {provide: OverlayContainer, useClass: FullscreenOverlayContainer}
1432
+ * ],
1376
1433
  */
1377
- Overlay.ctorParameters = function () { return [
1378
- { type: ScrollStrategyOptions, },
1379
- { type: OverlayContainer, },
1380
- { type: _angular_core.ComponentFactoryResolver, },
1381
- { type: OverlayPositionBuilder, },
1382
- { type: _angular_core.ApplicationRef, },
1383
- { type: _angular_core.Injector, },
1384
- { type: _angular_core.NgZone, },
1385
- ]; };
1434
+ var FullscreenOverlayContainer = (function (_super) {
1435
+ __extends(FullscreenOverlayContainer, _super);
1436
+ function FullscreenOverlayContainer() {
1437
+ return _super !== null && _super.apply(this, arguments) || this;
1438
+ }
1439
+ /**
1440
+ * @return {?}
1441
+ */
1442
+ FullscreenOverlayContainer.prototype._createContainer = function () {
1443
+ var _this = this;
1444
+ _super.prototype._createContainer.call(this);
1445
+ this._adjustParentForFullscreenChange();
1446
+ this._addFullscreenChangeListener(function () { return _this._adjustParentForFullscreenChange(); });
1447
+ };
1448
+ /**
1449
+ * @return {?}
1450
+ */
1451
+ FullscreenOverlayContainer.prototype._adjustParentForFullscreenChange = function () {
1452
+ if (!this._containerElement) {
1453
+ return;
1454
+ }
1455
+ var /** @type {?} */ fullscreenElement = this.getFullscreenElement();
1456
+ var /** @type {?} */ parent = fullscreenElement || document.body;
1457
+ parent.appendChild(this._containerElement);
1458
+ };
1459
+ /**
1460
+ * @param {?} fn
1461
+ * @return {?}
1462
+ */
1463
+ FullscreenOverlayContainer.prototype._addFullscreenChangeListener = function (fn) {
1464
+ if (document.fullscreenEnabled) {
1465
+ document.addEventListener('fullscreenchange', fn);
1466
+ }
1467
+ else if (document.webkitFullscreenEnabled) {
1468
+ document.addEventListener('webkitfullscreenchange', fn);
1469
+ }
1470
+ else if (((document)).mozFullScreenEnabled) {
1471
+ document.addEventListener('mozfullscreenchange', fn);
1472
+ }
1473
+ else if (((document)).msFullscreenEnabled) {
1474
+ document.addEventListener('MSFullscreenChange', fn);
1475
+ }
1476
+ };
1477
+ /**
1478
+ * When the page is put into fullscreen mode, a specific element is specified.
1479
+ * Only that element and its children are visible when in fullscreen mode.
1480
+ * @return {?}
1481
+ */
1482
+ FullscreenOverlayContainer.prototype.getFullscreenElement = function () {
1483
+ return document.fullscreenElement ||
1484
+ document.webkitFullscreenElement ||
1485
+ ((document)).mozFullScreenElement ||
1486
+ ((document)).msFullscreenElement ||
1487
+ null;
1488
+ };
1489
+ FullscreenOverlayContainer.decorators = [
1490
+ { type: _angular_core.Injectable },
1491
+ ];
1492
+ /**
1493
+ * @nocollapse
1494
+ */
1495
+ FullscreenOverlayContainer.ctorParameters = function () { return []; };
1496
+ return FullscreenOverlayContainer;
1497
+ }(OverlayContainer));
1498
+
1386
1499
  /**
1387
1500
  * Default set of positions for the overlay. Follows the behavior of a dropdown.
1388
1501
  */
@@ -1393,22 +1506,22 @@ var defaultPositionList = [
1393
1506
  /**
1394
1507
  * Injection token that determines the scroll handling while the connected overlay is open.
1395
1508
  */
1396
- var MD_CONNECTED_OVERLAY_SCROLL_STRATEGY = new _angular_core.InjectionToken('md-connected-overlay-scroll-strategy');
1509
+ var MAT_CONNECTED_OVERLAY_SCROLL_STRATEGY = new _angular_core.InjectionToken('mat-connected-overlay-scroll-strategy');
1397
1510
  /**
1398
1511
  * \@docs-private
1399
1512
  * @param {?} overlay
1400
1513
  * @return {?}
1401
1514
  */
1402
- function MD_CONNECTED_OVERLAY_SCROLL_STRATEGY_PROVIDER_FACTORY(overlay) {
1515
+ function MAT_CONNECTED_OVERLAY_SCROLL_STRATEGY_PROVIDER_FACTORY(overlay) {
1403
1516
  return function () { return overlay.scrollStrategies.reposition(); };
1404
1517
  }
1405
1518
  /**
1406
1519
  * \@docs-private
1407
1520
  */
1408
- var MD_CONNECTED_OVERLAY_SCROLL_STRATEGY_PROVIDER = {
1409
- provide: MD_CONNECTED_OVERLAY_SCROLL_STRATEGY,
1521
+ var MAT_CONNECTED_OVERLAY_SCROLL_STRATEGY_PROVIDER = {
1522
+ provide: MAT_CONNECTED_OVERLAY_SCROLL_STRATEGY,
1410
1523
  deps: [Overlay],
1411
- useFactory: MD_CONNECTED_OVERLAY_SCROLL_STRATEGY_PROVIDER_FACTORY,
1524
+ useFactory: MAT_CONNECTED_OVERLAY_SCROLL_STRATEGY_PROVIDER_FACTORY,
1412
1525
  };
1413
1526
  /**
1414
1527
  * Directive applied to an element to make it usable as an origin for an Overlay using a
@@ -1421,20 +1534,20 @@ var OverlayOrigin = (function () {
1421
1534
  function OverlayOrigin(elementRef) {
1422
1535
  this.elementRef = elementRef;
1423
1536
  }
1537
+ OverlayOrigin.decorators = [
1538
+ { type: _angular_core.Directive, args: [{
1539
+ selector: '[cdk-overlay-origin], [overlay-origin], [cdkOverlayOrigin]',
1540
+ exportAs: 'cdkOverlayOrigin',
1541
+ },] },
1542
+ ];
1543
+ /**
1544
+ * @nocollapse
1545
+ */
1546
+ OverlayOrigin.ctorParameters = function () { return [
1547
+ { type: _angular_core.ElementRef, },
1548
+ ]; };
1424
1549
  return OverlayOrigin;
1425
1550
  }());
1426
- OverlayOrigin.decorators = [
1427
- { type: _angular_core.Directive, args: [{
1428
- selector: '[cdk-overlay-origin], [overlay-origin], [cdkOverlayOrigin]',
1429
- exportAs: 'cdkOverlayOrigin',
1430
- },] },
1431
- ];
1432
- /**
1433
- * @nocollapse
1434
- */
1435
- OverlayOrigin.ctorParameters = function () { return [
1436
- { type: _angular_core.ElementRef, },
1437
- ]; };
1438
1551
  /**
1439
1552
  * Directive to facilitate declarative creation of an Overlay using a ConnectedPositionStrategy.
1440
1553
  */
@@ -1818,7 +1931,7 @@ var ConnectedOverlayDirective = (function () {
1818
1931
  this._createOverlay();
1819
1932
  }
1820
1933
  this._position.withDirection(this.dir);
1821
- this._overlayRef.getState().direction = this.dir;
1934
+ this._overlayRef.getConfig().direction = this.dir;
1822
1935
  this._initEscapeListener();
1823
1936
  if (!this._overlayRef.hasAttached()) {
1824
1937
  this._overlayRef.attach(this._templatePortal);
@@ -1866,155 +1979,81 @@ var ConnectedOverlayDirective = (function () {
1866
1979
  }
1867
1980
  });
1868
1981
  };
1982
+ ConnectedOverlayDirective.decorators = [
1983
+ { type: _angular_core.Directive, args: [{
1984
+ selector: '[cdk-connected-overlay], [connected-overlay], [cdkConnectedOverlay]',
1985
+ exportAs: 'cdkConnectedOverlay'
1986
+ },] },
1987
+ ];
1988
+ /**
1989
+ * @nocollapse
1990
+ */
1991
+ ConnectedOverlayDirective.ctorParameters = function () { return [
1992
+ { type: Overlay, },
1993
+ { type: _angular_core.Renderer2, },
1994
+ { type: _angular_core.TemplateRef, },
1995
+ { type: _angular_core.ViewContainerRef, },
1996
+ { type: undefined, decorators: [{ type: _angular_core.Inject, args: [MAT_CONNECTED_OVERLAY_SCROLL_STRATEGY,] },] },
1997
+ { type: _angular_cdk_bidi.Directionality, decorators: [{ type: _angular_core.Optional },] },
1998
+ ]; };
1999
+ ConnectedOverlayDirective.propDecorators = {
2000
+ 'origin': [{ type: _angular_core.Input, args: ['cdkConnectedOverlayOrigin',] },],
2001
+ 'positions': [{ type: _angular_core.Input, args: ['cdkConnectedOverlayPositions',] },],
2002
+ 'offsetX': [{ type: _angular_core.Input, args: ['cdkConnectedOverlayOffsetX',] },],
2003
+ 'offsetY': [{ type: _angular_core.Input, args: ['cdkConnectedOverlayOffsetY',] },],
2004
+ 'width': [{ type: _angular_core.Input, args: ['cdkConnectedOverlayWidth',] },],
2005
+ 'height': [{ type: _angular_core.Input, args: ['cdkConnectedOverlayHeight',] },],
2006
+ 'minWidth': [{ type: _angular_core.Input, args: ['cdkConnectedOverlayMinWidth',] },],
2007
+ 'minHeight': [{ type: _angular_core.Input, args: ['cdkConnectedOverlayMinHeight',] },],
2008
+ 'backdropClass': [{ type: _angular_core.Input, args: ['cdkConnectedOverlayBackdropClass',] },],
2009
+ 'scrollStrategy': [{ type: _angular_core.Input, args: ['cdkConnectedOverlayScrollStrategy',] },],
2010
+ 'open': [{ type: _angular_core.Input, args: ['cdkConnectedOverlayOpen',] },],
2011
+ 'hasBackdrop': [{ type: _angular_core.Input, args: ['cdkConnectedOverlayHasBackdrop',] },],
2012
+ '_deprecatedOrigin': [{ type: _angular_core.Input, args: ['origin',] },],
2013
+ '_deprecatedPositions': [{ type: _angular_core.Input, args: ['positions',] },],
2014
+ '_deprecatedOffsetX': [{ type: _angular_core.Input, args: ['offsetX',] },],
2015
+ '_deprecatedOffsetY': [{ type: _angular_core.Input, args: ['offsetY',] },],
2016
+ '_deprecatedWidth': [{ type: _angular_core.Input, args: ['width',] },],
2017
+ '_deprecatedHeight': [{ type: _angular_core.Input, args: ['height',] },],
2018
+ '_deprecatedMinWidth': [{ type: _angular_core.Input, args: ['minWidth',] },],
2019
+ '_deprecatedMinHeight': [{ type: _angular_core.Input, args: ['minHeight',] },],
2020
+ '_deprecatedBackdropClass': [{ type: _angular_core.Input, args: ['backdropClass',] },],
2021
+ '_deprecatedScrollStrategy': [{ type: _angular_core.Input, args: ['scrollStrategy',] },],
2022
+ '_deprecatedOpen': [{ type: _angular_core.Input, args: ['open',] },],
2023
+ '_deprecatedHasBackdrop': [{ type: _angular_core.Input, args: ['hasBackdrop',] },],
2024
+ 'backdropClick': [{ type: _angular_core.Output },],
2025
+ 'positionChange': [{ type: _angular_core.Output },],
2026
+ 'attach': [{ type: _angular_core.Output },],
2027
+ 'detach': [{ type: _angular_core.Output },],
2028
+ };
1869
2029
  return ConnectedOverlayDirective;
1870
2030
  }());
1871
- ConnectedOverlayDirective.decorators = [
1872
- { type: _angular_core.Directive, args: [{
1873
- selector: '[cdk-connected-overlay], [connected-overlay], [cdkConnectedOverlay]',
1874
- exportAs: 'cdkConnectedOverlay'
1875
- },] },
1876
- ];
1877
- /**
1878
- * @nocollapse
1879
- */
1880
- ConnectedOverlayDirective.ctorParameters = function () { return [
1881
- { type: Overlay, },
1882
- { type: _angular_core.Renderer2, },
1883
- { type: _angular_core.TemplateRef, },
1884
- { type: _angular_core.ViewContainerRef, },
1885
- { type: undefined, decorators: [{ type: _angular_core.Inject, args: [MD_CONNECTED_OVERLAY_SCROLL_STRATEGY,] },] },
1886
- { type: _angular_cdk_bidi.Directionality, decorators: [{ type: _angular_core.Optional },] },
1887
- ]; };
1888
- ConnectedOverlayDirective.propDecorators = {
1889
- 'origin': [{ type: _angular_core.Input, args: ['cdkConnectedOverlayOrigin',] },],
1890
- 'positions': [{ type: _angular_core.Input, args: ['cdkConnectedOverlayPositions',] },],
1891
- 'offsetX': [{ type: _angular_core.Input, args: ['cdkConnectedOverlayOffsetX',] },],
1892
- 'offsetY': [{ type: _angular_core.Input, args: ['cdkConnectedOverlayOffsetY',] },],
1893
- 'width': [{ type: _angular_core.Input, args: ['cdkConnectedOverlayWidth',] },],
1894
- 'height': [{ type: _angular_core.Input, args: ['cdkConnectedOverlayHeight',] },],
1895
- 'minWidth': [{ type: _angular_core.Input, args: ['cdkConnectedOverlayMinWidth',] },],
1896
- 'minHeight': [{ type: _angular_core.Input, args: ['cdkConnectedOverlayMinHeight',] },],
1897
- 'backdropClass': [{ type: _angular_core.Input, args: ['cdkConnectedOverlayBackdropClass',] },],
1898
- 'scrollStrategy': [{ type: _angular_core.Input, args: ['cdkConnectedOverlayScrollStrategy',] },],
1899
- 'open': [{ type: _angular_core.Input, args: ['cdkConnectedOverlayOpen',] },],
1900
- 'hasBackdrop': [{ type: _angular_core.Input, args: ['cdkConnectedOverlayHasBackdrop',] },],
1901
- '_deprecatedOrigin': [{ type: _angular_core.Input, args: ['origin',] },],
1902
- '_deprecatedPositions': [{ type: _angular_core.Input, args: ['positions',] },],
1903
- '_deprecatedOffsetX': [{ type: _angular_core.Input, args: ['offsetX',] },],
1904
- '_deprecatedOffsetY': [{ type: _angular_core.Input, args: ['offsetY',] },],
1905
- '_deprecatedWidth': [{ type: _angular_core.Input, args: ['width',] },],
1906
- '_deprecatedHeight': [{ type: _angular_core.Input, args: ['height',] },],
1907
- '_deprecatedMinWidth': [{ type: _angular_core.Input, args: ['minWidth',] },],
1908
- '_deprecatedMinHeight': [{ type: _angular_core.Input, args: ['minHeight',] },],
1909
- '_deprecatedBackdropClass': [{ type: _angular_core.Input, args: ['backdropClass',] },],
1910
- '_deprecatedScrollStrategy': [{ type: _angular_core.Input, args: ['scrollStrategy',] },],
1911
- '_deprecatedOpen': [{ type: _angular_core.Input, args: ['open',] },],
1912
- '_deprecatedHasBackdrop': [{ type: _angular_core.Input, args: ['hasBackdrop',] },],
1913
- 'backdropClick': [{ type: _angular_core.Output },],
1914
- 'positionChange': [{ type: _angular_core.Output },],
1915
- 'attach': [{ type: _angular_core.Output },],
1916
- 'detach': [{ type: _angular_core.Output },],
1917
- };
1918
- /**
1919
- * The FullscreenOverlayContainer is the alternative to OverlayContainer
1920
- * that supports correct displaying of overlay elements in Fullscreen mode
1921
- * https://developer.mozilla.org/en-US/docs/Web/API/Element/requestFullScreen
1922
- * It should be provided in the root component that way:
1923
- * providers: [
1924
- * {provide: OverlayContainer, useClass: FullscreenOverlayContainer}
1925
- * ],
1926
- */
1927
- var FullscreenOverlayContainer = (function (_super) {
1928
- __extends(FullscreenOverlayContainer, _super);
1929
- function FullscreenOverlayContainer() {
1930
- return _super !== null && _super.apply(this, arguments) || this;
1931
- }
1932
- /**
1933
- * @return {?}
1934
- */
1935
- FullscreenOverlayContainer.prototype._createContainer = function () {
1936
- var _this = this;
1937
- _super.prototype._createContainer.call(this);
1938
- this._adjustParentForFullscreenChange();
1939
- this._addFullscreenChangeListener(function () { return _this._adjustParentForFullscreenChange(); });
1940
- };
1941
- /**
1942
- * @return {?}
1943
- */
1944
- FullscreenOverlayContainer.prototype._adjustParentForFullscreenChange = function () {
1945
- if (!this._containerElement) {
1946
- return;
1947
- }
1948
- var /** @type {?} */ fullscreenElement = this.getFullscreenElement();
1949
- var /** @type {?} */ parent = fullscreenElement || document.body;
1950
- parent.appendChild(this._containerElement);
1951
- };
1952
- /**
1953
- * @param {?} fn
1954
- * @return {?}
1955
- */
1956
- FullscreenOverlayContainer.prototype._addFullscreenChangeListener = function (fn) {
1957
- if (document.fullscreenEnabled) {
1958
- document.addEventListener('fullscreenchange', fn);
1959
- }
1960
- else if (document.webkitFullscreenEnabled) {
1961
- document.addEventListener('webkitfullscreenchange', fn);
1962
- }
1963
- else if (((document)).mozFullScreenEnabled) {
1964
- document.addEventListener('mozfullscreenchange', fn);
1965
- }
1966
- else if (((document)).msFullscreenEnabled) {
1967
- document.addEventListener('MSFullscreenChange', fn);
1968
- }
1969
- };
1970
- /**
1971
- * When the page is put into fullscreen mode, a specific element is specified.
1972
- * Only that element and its children are visible when in fullscreen mode.
1973
- * @return {?}
1974
- */
1975
- FullscreenOverlayContainer.prototype.getFullscreenElement = function () {
1976
- return document.fullscreenElement ||
1977
- document.webkitFullscreenElement ||
1978
- ((document)).mozFullScreenElement ||
1979
- ((document)).msFullscreenElement ||
1980
- null;
1981
- };
1982
- return FullscreenOverlayContainer;
1983
- }(OverlayContainer));
1984
- FullscreenOverlayContainer.decorators = [
1985
- { type: _angular_core.Injectable },
1986
- ];
1987
- /**
1988
- * @nocollapse
1989
- */
1990
- FullscreenOverlayContainer.ctorParameters = function () { return []; };
2031
+
1991
2032
  var OVERLAY_PROVIDERS = [
1992
2033
  Overlay,
1993
2034
  OverlayPositionBuilder,
1994
2035
  _angular_cdk_scrolling.VIEWPORT_RULER_PROVIDER,
1995
2036
  OVERLAY_CONTAINER_PROVIDER,
1996
- MD_CONNECTED_OVERLAY_SCROLL_STRATEGY_PROVIDER,
2037
+ MAT_CONNECTED_OVERLAY_SCROLL_STRATEGY_PROVIDER,
1997
2038
  ];
1998
2039
  var OverlayModule = (function () {
1999
2040
  function OverlayModule() {
2000
2041
  }
2042
+ OverlayModule.decorators = [
2043
+ { type: _angular_core.NgModule, args: [{
2044
+ imports: [_angular_cdk_portal.PortalModule, _angular_cdk_scrolling.ScrollDispatchModule],
2045
+ exports: [ConnectedOverlayDirective, OverlayOrigin, _angular_cdk_scrolling.ScrollDispatchModule],
2046
+ declarations: [ConnectedOverlayDirective, OverlayOrigin],
2047
+ providers: [OVERLAY_PROVIDERS, ScrollStrategyOptions],
2048
+ },] },
2049
+ ];
2050
+ /**
2051
+ * @nocollapse
2052
+ */
2053
+ OverlayModule.ctorParameters = function () { return []; };
2001
2054
  return OverlayModule;
2002
2055
  }());
2003
- OverlayModule.decorators = [
2004
- { type: _angular_core.NgModule, args: [{
2005
- imports: [_angular_cdk_portal.PortalModule, _angular_cdk_scrolling.ScrollDispatchModule],
2006
- exports: [ConnectedOverlayDirective, OverlayOrigin, _angular_cdk_scrolling.ScrollDispatchModule],
2007
- declarations: [ConnectedOverlayDirective, OverlayOrigin],
2008
- providers: [OVERLAY_PROVIDERS, ScrollStrategyOptions],
2009
- },] },
2010
- ];
2011
- /**
2012
- * @nocollapse
2013
- */
2014
- OverlayModule.ctorParameters = function () { return []; };
2015
2056
 
2016
- exports.OVERLAY_PROVIDERS = OVERLAY_PROVIDERS;
2017
- exports.OverlayModule = OverlayModule;
2018
2057
  exports.Overlay = Overlay;
2019
2058
  exports.OverlayContainer = OverlayContainer;
2020
2059
  exports.FullscreenOverlayContainer = FullscreenOverlayContainer;
@@ -2036,11 +2075,13 @@ exports.RepositionScrollStrategy = RepositionScrollStrategy;
2036
2075
  exports.CloseScrollStrategy = CloseScrollStrategy;
2037
2076
  exports.NoopScrollStrategy = NoopScrollStrategy;
2038
2077
  exports.BlockScrollStrategy = BlockScrollStrategy;
2078
+ exports.OVERLAY_PROVIDERS = OVERLAY_PROVIDERS;
2079
+ exports.OverlayModule = OverlayModule;
2039
2080
  exports.ɵb = OVERLAY_CONTAINER_PROVIDER;
2040
2081
  exports.ɵa = OVERLAY_CONTAINER_PROVIDER_FACTORY;
2041
- exports.ɵc = MD_CONNECTED_OVERLAY_SCROLL_STRATEGY;
2042
- exports.ɵe = MD_CONNECTED_OVERLAY_SCROLL_STRATEGY_PROVIDER;
2043
- exports.ɵd = MD_CONNECTED_OVERLAY_SCROLL_STRATEGY_PROVIDER_FACTORY;
2082
+ exports.ɵc = MAT_CONNECTED_OVERLAY_SCROLL_STRATEGY;
2083
+ exports.ɵe = MAT_CONNECTED_OVERLAY_SCROLL_STRATEGY_PROVIDER;
2084
+ exports.ɵd = MAT_CONNECTED_OVERLAY_SCROLL_STRATEGY_PROVIDER_FACTORY;
2044
2085
  exports.ɵf = OverlayPositionBuilder;
2045
2086
 
2046
2087
  Object.defineProperty(exports, '__esModule', { value: true });