123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100
  1. var __extends = (this && this.__extends) || (function () {
  2. var extendStatics = Object.setPrototypeOf ||
  3. ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
  4. function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };
  5. return function (d, b) {
  6. extendStatics(d, b);
  7. function __() { this.constructor = d; }
  8. d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
  9. };
  10. })();
  11. (function (factory) {
  12. if (typeof module === "object" && typeof module.exports === "object") {
  13. var v = factory(require, exports);
  14. if (v !== undefined) module.exports = v;
  15. }
  16. else if (typeof define === "function" && define.amd) {
  17. define(["require", "exports", "@angular/core", "./app", "../../config/config", "../../navigation/deep-linker", "../../platform/dom-controller", "../../gestures/gesture-controller", "../../navigation/nav-controller-base", "../../platform/platform", "../../transitions/transition-controller"], factory);
  18. }
  19. })(function (require, exports) {
  20. "use strict";
  21. Object.defineProperty(exports, "__esModule", { value: true });
  22. var core_1 = require("@angular/core");
  23. var app_1 = require("./app");
  24. var config_1 = require("../../config/config");
  25. var deep_linker_1 = require("../../navigation/deep-linker");
  26. var dom_controller_1 = require("../../platform/dom-controller");
  27. var gesture_controller_1 = require("../../gestures/gesture-controller");
  28. var nav_controller_base_1 = require("../../navigation/nav-controller-base");
  29. var platform_1 = require("../../platform/platform");
  30. var transition_controller_1 = require("../../transitions/transition-controller");
  31. /**
  32. * @hidden
  33. */
  34. var OverlayPortal = (function (_super) {
  35. __extends(OverlayPortal, _super);
  36. function OverlayPortal(app, config, plt, elementRef, zone, renderer, cfr, gestureCtrl, transCtrl, linker, viewPort, domCtrl, errHandler) {
  37. var _this = _super.call(this, null, app, config, plt, elementRef, zone, renderer, cfr, gestureCtrl, transCtrl, linker, domCtrl, errHandler) || this;
  38. _this._isPortal = true;
  39. _this._init = true;
  40. _this.setViewport(viewPort);
  41. // on every page change make sure the portal has
  42. // dismissed any views that should be auto dismissed on page change
  43. app.viewDidLeave.subscribe(function (view) {
  44. if (!view.isOverlay) {
  45. _this.dismissPageChangeViews();
  46. }
  47. });
  48. return _this;
  49. }
  50. Object.defineProperty(OverlayPortal.prototype, "_overlayPortal", {
  51. set: function (val) {
  52. this._zIndexOffset = (val || 0);
  53. },
  54. enumerable: true,
  55. configurable: true
  56. });
  57. OverlayPortal.prototype.ngOnDestroy = function () {
  58. this.destroy();
  59. };
  60. /*
  61. * @private
  62. */
  63. OverlayPortal.prototype.getType = function () {
  64. return 'portal';
  65. };
  66. /*
  67. * @private
  68. */
  69. OverlayPortal.prototype.getSecondaryIdentifier = function () {
  70. return null;
  71. };
  72. OverlayPortal.decorators = [
  73. { type: core_1.Directive, args: [{
  74. selector: '[overlay-portal]',
  75. },] },
  76. ];
  77. /** @nocollapse */
  78. OverlayPortal.ctorParameters = function () { return [
  79. { type: app_1.App, decorators: [{ type: core_1.Inject, args: [core_1.forwardRef(function () { return app_1.App; }),] },] },
  80. { type: config_1.Config, },
  81. { type: platform_1.Platform, },
  82. { type: core_1.ElementRef, },
  83. { type: core_1.NgZone, },
  84. { type: core_1.Renderer, },
  85. { type: core_1.ComponentFactoryResolver, },
  86. { type: gesture_controller_1.GestureController, },
  87. { type: transition_controller_1.TransitionController, },
  88. { type: deep_linker_1.DeepLinker, decorators: [{ type: core_1.Optional },] },
  89. { type: core_1.ViewContainerRef, },
  90. { type: dom_controller_1.DomController, },
  91. { type: core_1.ErrorHandler, },
  92. ]; };
  93. OverlayPortal.propDecorators = {
  94. '_overlayPortal': [{ type: core_1.Input, args: ['overlay-portal',] },],
  95. };
  96. return OverlayPortal;
  97. }(nav_controller_base_1.NavControllerBase));
  98. exports.OverlayPortal = OverlayPortal;
  99. });
  100. //# sourceMappingURL=overlay-portal.js.map