source: trip-planner-front/node_modules/@angular/cdk/__ivy_ngcc__/fesm2015/portal.js.map@ 6c1585f

Last change on this file since 6c1585f was 6a3a178, checked in by Ema <ema_spirova@…>, 3 years ago

initial commit

  • Property mode set to 100644
File size: 39.0 KB
Line 
1{"version":3,"file":"portal.js","sources":["../../../../../../src/cdk/portal/portal-errors.ts","../../../../../../src/cdk/portal/portal.ts","../../../../../../src/cdk/portal/dom-portal-outlet.ts","../../../../../../src/cdk/portal/portal-directives.ts","../../../../../../src/cdk/portal/portal-injector.ts","../../../../../../src/cdk/portal/public-api.ts","../../../../../../src/cdk/portal/index.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\n/**\n * Throws an exception when attempting to attach a null portal to a host.\n * @docs-private\n */\nexport function throwNullPortalError() {\n throw Error('Must provide a portal to attach');\n}\n\n/**\n * Throws an exception when attempting to attach a portal to a host that is already attached.\n * @docs-private\n */\nexport function throwPortalAlreadyAttachedError() {\n throw Error('Host already has a portal attached');\n}\n\n/**\n * Throws an exception when attempting to attach a portal to an already-disposed host.\n * @docs-private\n */\nexport function throwPortalOutletAlreadyDisposedError() {\n throw Error('This PortalOutlet has already been disposed');\n}\n\n/**\n * Throws an exception when attempting to attach an unknown portal type.\n * @docs-private\n */\nexport function throwUnknownPortalTypeError() {\n throw Error('Attempting to attach an unknown Portal type. BasePortalOutlet accepts either ' +\n 'a ComponentPortal or a TemplatePortal.');\n}\n\n/**\n * Throws an exception when attempting to attach a portal to a null host.\n * @docs-private\n */\nexport function throwNullPortalOutletError() {\n throw Error('Attempting to attach a portal to a null PortalOutlet');\n}\n\n/**\n * Throws an exception when attempting to detach a portal that is not attached.\n * @docs-private\n */\nexport function throwNoPortalAttachedError() {\n throw Error('Attempting to detach a portal that is not attached to a host');\n}\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nimport {\n TemplateRef,\n ViewContainerRef,\n ElementRef,\n ComponentRef,\n EmbeddedViewRef,\n Injector,\n ComponentFactoryResolver,\n} from '@angular/core';\nimport {\n throwNullPortalOutletError,\n throwPortalAlreadyAttachedError,\n throwNoPortalAttachedError,\n throwNullPortalError,\n throwPortalOutletAlreadyDisposedError,\n throwUnknownPortalTypeError\n} from './portal-errors';\n\n/** Interface that can be used to generically type a class. */\nexport interface ComponentType<T> {\n new (...args: any[]): T;\n}\n\n/**\n * A `Portal` is something that you want to render somewhere else.\n * It can be attach to / detached from a `PortalOutlet`.\n */\nexport abstract class Portal<T> {\n private _attachedHost: PortalOutlet | null;\n\n /** Attach this portal to a host. */\n attach(host: PortalOutlet): T {\n if (typeof ngDevMode === 'undefined' || ngDevMode) {\n if (host == null) {\n throwNullPortalOutletError();\n }\n\n if (host.hasAttached()) {\n throwPortalAlreadyAttachedError();\n }\n }\n\n this._attachedHost = host;\n return <T> host.attach(this);\n }\n\n /** Detach this portal from its host */\n detach(): void {\n let host = this._attachedHost;\n\n if (host != null) {\n this._attachedHost = null;\n host.detach();\n } else if (typeof ngDevMode === 'undefined' || ngDevMode) {\n throwNoPortalAttachedError();\n }\n }\n\n /** Whether this portal is attached to a host. */\n get isAttached(): boolean {\n return this._attachedHost != null;\n }\n\n /**\n * Sets the PortalOutlet reference without performing `attach()`. This is used directly by\n * the PortalOutlet when it is performing an `attach()` or `detach()`.\n */\n setAttachedHost(host: PortalOutlet | null) {\n this._attachedHost = host;\n }\n}\n\n\n/**\n * A `ComponentPortal` is a portal that instantiates some Component upon attachment.\n */\nexport class ComponentPortal<T> extends Portal<ComponentRef<T>> {\n /** The type of the component that will be instantiated for attachment. */\n component: ComponentType<T>;\n\n /**\n * [Optional] Where the attached component should live in Angular's *logical* component tree.\n * This is different from where the component *renders*, which is determined by the PortalOutlet.\n * The origin is necessary when the host is outside of the Angular application context.\n */\n viewContainerRef?: ViewContainerRef | null;\n\n /** [Optional] Injector used for the instantiation of the component. */\n injector?: Injector | null;\n\n /**\n * Alternate `ComponentFactoryResolver` to use when resolving the associated component.\n * Defaults to using the resolver from the outlet that the portal is attached to.\n */\n componentFactoryResolver?: ComponentFactoryResolver | null;\n\n constructor(\n component: ComponentType<T>,\n viewContainerRef?: ViewContainerRef | null,\n injector?: Injector | null,\n componentFactoryResolver?: ComponentFactoryResolver | null) {\n super();\n this.component = component;\n this.viewContainerRef = viewContainerRef;\n this.injector = injector;\n this.componentFactoryResolver = componentFactoryResolver;\n }\n}\n\n/**\n * A `TemplatePortal` is a portal that represents some embedded template (TemplateRef).\n */\nexport class TemplatePortal<C = any> extends Portal<EmbeddedViewRef<C>> {\n /** The embedded template that will be used to instantiate an embedded View in the host. */\n templateRef: TemplateRef<C>;\n\n /** Reference to the ViewContainer into which the template will be stamped out. */\n viewContainerRef: ViewContainerRef;\n\n /** Contextual data to be passed in to the embedded view. */\n context: C | undefined;\n\n constructor(template: TemplateRef<C>, viewContainerRef: ViewContainerRef, context?: C) {\n super();\n this.templateRef = template;\n this.viewContainerRef = viewContainerRef;\n this.context = context;\n }\n\n get origin(): ElementRef {\n return this.templateRef.elementRef;\n }\n\n /**\n * Attach the portal to the provided `PortalOutlet`.\n * When a context is provided it will override the `context` property of the `TemplatePortal`\n * instance.\n */\n override attach(host: PortalOutlet, context: C | undefined = this.context): EmbeddedViewRef<C> {\n this.context = context;\n return super.attach(host);\n }\n\n override detach(): void {\n this.context = undefined;\n return super.detach();\n }\n}\n\n/**\n * A `DomPortal` is a portal whose DOM element will be taken from its current position\n * in the DOM and moved into a portal outlet, when it is attached. On detach, the content\n * will be restored to its original position.\n */\nexport class DomPortal<T = HTMLElement> extends Portal<T> {\n /** DOM node hosting the portal's content. */\n readonly element: T;\n\n constructor(element: T | ElementRef<T>) {\n super();\n this.element = element instanceof ElementRef ? element.nativeElement : element;\n }\n}\n\n\n/** A `PortalOutlet` is an space that can contain a single `Portal`. */\nexport interface PortalOutlet {\n /** Attaches a portal to this outlet. */\n attach(portal: Portal<any>): any;\n\n /** Detaches the currently attached portal from this outlet. */\n detach(): any;\n\n /** Performs cleanup before the outlet is destroyed. */\n dispose(): void;\n\n /** Whether there is currently a portal attached to this outlet. */\n hasAttached(): boolean;\n}\n\n/**\n * @deprecated Use `PortalOutlet` instead.\n * @breaking-change 9.0.0\n */\nexport type PortalHost = PortalOutlet;\n\n/**\n * Partial implementation of PortalOutlet that handles attaching\n * ComponentPortal and TemplatePortal.\n */\nexport abstract class BasePortalOutlet implements PortalOutlet {\n /** The portal currently attached to the host. */\n protected _attachedPortal: Portal<any> | null;\n\n /** A function that will permanently dispose this host. */\n private _disposeFn: (() => void) | null;\n\n /** Whether this host has already been permanently disposed. */\n private _isDisposed: boolean = false;\n\n /** Whether this host has an attached portal. */\n hasAttached(): boolean {\n return !!this._attachedPortal;\n }\n\n attach<T>(portal: ComponentPortal<T>): ComponentRef<T>;\n attach<T>(portal: TemplatePortal<T>): EmbeddedViewRef<T>;\n attach(portal: any): any;\n\n /** Attaches a portal. */\n attach(portal: Portal<any>): any {\n if (typeof ngDevMode === 'undefined' || ngDevMode) {\n if (!portal) {\n throwNullPortalError();\n }\n\n if (this.hasAttached()) {\n throwPortalAlreadyAttachedError();\n }\n\n if (this._isDisposed) {\n throwPortalOutletAlreadyDisposedError();\n }\n }\n\n if (portal instanceof ComponentPortal) {\n this._attachedPortal = portal;\n return this.attachComponentPortal(portal);\n } else if (portal instanceof TemplatePortal) {\n this._attachedPortal = portal;\n return this.attachTemplatePortal(portal);\n // @breaking-change 10.0.0 remove null check for `this.attachDomPortal`.\n } else if (this.attachDomPortal && portal instanceof DomPortal) {\n this._attachedPortal = portal;\n return this.attachDomPortal(portal);\n }\n\n if (typeof ngDevMode === 'undefined' || ngDevMode) {\n throwUnknownPortalTypeError();\n }\n }\n\n abstract attachComponentPortal<T>(portal: ComponentPortal<T>): ComponentRef<T>;\n\n abstract attachTemplatePortal<C>(portal: TemplatePortal<C>): EmbeddedViewRef<C>;\n\n // @breaking-change 10.0.0 `attachDomPortal` to become a required abstract method.\n readonly attachDomPortal: null | ((portal: DomPortal) => any) = null;\n\n /** Detaches a previously attached portal. */\n detach(): void {\n if (this._attachedPortal) {\n this._attachedPortal.setAttachedHost(null);\n this._attachedPortal = null;\n }\n\n this._invokeDisposeFn();\n }\n\n /** Permanently dispose of this portal host. */\n dispose(): void {\n if (this.hasAttached()) {\n this.detach();\n }\n\n this._invokeDisposeFn();\n this._isDisposed = true;\n }\n\n /** @docs-private */\n setDisposeFn(fn: () => void) {\n this._disposeFn = fn;\n }\n\n private _invokeDisposeFn() {\n if (this._disposeFn) {\n this._disposeFn();\n this._disposeFn = null;\n }\n }\n}\n\n/**\n * @deprecated Use `BasePortalOutlet` instead.\n * @breaking-change 9.0.0\n */\nexport abstract class BasePortalHost extends BasePortalOutlet {}\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nimport {\n ComponentFactoryResolver,\n ComponentRef,\n EmbeddedViewRef,\n ApplicationRef,\n Injector,\n} from '@angular/core';\nimport {BasePortalOutlet, ComponentPortal, TemplatePortal, DomPortal} from './portal';\n\n\n/**\n * A PortalOutlet for attaching portals to an arbitrary DOM element outside of the Angular\n * application context.\n */\nexport class DomPortalOutlet extends BasePortalOutlet {\n private _document: Document;\n\n constructor(\n /** Element into which the content is projected. */\n public outletElement: Element,\n private _componentFactoryResolver: ComponentFactoryResolver,\n private _appRef: ApplicationRef,\n private _defaultInjector: Injector,\n\n /**\n * @deprecated `_document` Parameter to be made required.\n * @breaking-change 10.0.0\n */\n _document?: any) {\n super();\n this._document = _document;\n }\n\n /**\n * Attach the given ComponentPortal to DOM element using the ComponentFactoryResolver.\n * @param portal Portal to be attached\n * @returns Reference to the created component.\n */\n attachComponentPortal<T>(portal: ComponentPortal<T>): ComponentRef<T> {\n const resolver = portal.componentFactoryResolver || this._componentFactoryResolver;\n const componentFactory = resolver.resolveComponentFactory(portal.component);\n let componentRef: ComponentRef<T>;\n\n // If the portal specifies a ViewContainerRef, we will use that as the attachment point\n // for the component (in terms of Angular's component tree, not rendering).\n // When the ViewContainerRef is missing, we use the factory to create the component directly\n // and then manually attach the view to the application.\n if (portal.viewContainerRef) {\n componentRef = portal.viewContainerRef.createComponent(\n componentFactory,\n portal.viewContainerRef.length,\n portal.injector || portal.viewContainerRef.injector);\n\n this.setDisposeFn(() => componentRef.destroy());\n } else {\n componentRef = componentFactory.create(portal.injector || this._defaultInjector);\n this._appRef.attachView(componentRef.hostView);\n this.setDisposeFn(() => {\n this._appRef.detachView(componentRef.hostView);\n componentRef.destroy();\n });\n }\n // At this point the component has been instantiated, so we move it to the location in the DOM\n // where we want it to be rendered.\n this.outletElement.appendChild(this._getComponentRootNode(componentRef));\n this._attachedPortal = portal;\n\n return componentRef;\n }\n\n /**\n * Attaches a template portal to the DOM as an embedded view.\n * @param portal Portal to be attached.\n * @returns Reference to the created embedded view.\n */\n attachTemplatePortal<C>(portal: TemplatePortal<C>): EmbeddedViewRef<C> {\n let viewContainer = portal.viewContainerRef;\n let viewRef = viewContainer.createEmbeddedView(portal.templateRef, portal.context);\n\n // The method `createEmbeddedView` will add the view as a child of the viewContainer.\n // But for the DomPortalOutlet the view can be added everywhere in the DOM\n // (e.g Overlay Container) To move the view to the specified host element. We just\n // re-append the existing root nodes.\n viewRef.rootNodes.forEach(rootNode => this.outletElement.appendChild(rootNode));\n\n // Note that we want to detect changes after the nodes have been moved so that\n // any directives inside the portal that are looking at the DOM inside a lifecycle\n // hook won't be invoked too early.\n viewRef.detectChanges();\n\n this.setDisposeFn((() => {\n let index = viewContainer.indexOf(viewRef);\n if (index !== -1) {\n viewContainer.remove(index);\n }\n }));\n\n this._attachedPortal = portal;\n\n // TODO(jelbourn): Return locals from view.\n return viewRef;\n }\n\n /**\n * Attaches a DOM portal by transferring its content into the outlet.\n * @param portal Portal to be attached.\n * @deprecated To be turned into a method.\n * @breaking-change 10.0.0\n */\n override attachDomPortal = (portal: DomPortal) => {\n // @breaking-change 10.0.0 Remove check and error once the\n // `_document` constructor parameter is required.\n if (!this._document && (typeof ngDevMode === 'undefined' || ngDevMode)) {\n throw Error('Cannot attach DOM portal without _document constructor parameter');\n }\n\n const element = portal.element;\n if (!element.parentNode && (typeof ngDevMode === 'undefined' || ngDevMode)) {\n throw Error('DOM portal content must be attached to a parent node.');\n }\n\n // Anchor used to save the element's previous position so\n // that we can restore it when the portal is detached.\n const anchorNode = this._document.createComment('dom-portal');\n\n element.parentNode!.insertBefore(anchorNode, element);\n this.outletElement.appendChild(element);\n this._attachedPortal = portal;\n\n super.setDisposeFn(() => {\n // We can't use `replaceWith` here because IE doesn't support it.\n if (anchorNode.parentNode) {\n anchorNode.parentNode.replaceChild(element, anchorNode);\n }\n });\n }\n\n /**\n * Clears out a portal from the DOM.\n */\n override dispose(): void {\n super.dispose();\n if (this.outletElement.parentNode != null) {\n this.outletElement.parentNode.removeChild(this.outletElement);\n }\n }\n\n /** Gets the root HTMLElement for an instantiated component. */\n private _getComponentRootNode(componentRef: ComponentRef<any>): HTMLElement {\n return (componentRef.hostView as EmbeddedViewRef<any>).rootNodes[0] as HTMLElement;\n }\n}\n\n/**\n * @deprecated Use `DomPortalOutlet` instead.\n * @breaking-change 9.0.0\n */\nexport class DomPortalHost extends DomPortalOutlet {}\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nimport {\n ComponentFactoryResolver,\n ComponentRef,\n Directive,\n EmbeddedViewRef,\n EventEmitter,\n NgModule,\n OnDestroy,\n OnInit,\n Output,\n TemplateRef,\n ViewContainerRef,\n Inject,\n} from '@angular/core';\nimport {DOCUMENT} from '@angular/common';\nimport {BasePortalOutlet, ComponentPortal, Portal, TemplatePortal, DomPortal} from './portal';\n\n\n/**\n * Directive version of a `TemplatePortal`. Because the directive *is* a TemplatePortal,\n * the directive instance itself can be attached to a host, enabling declarative use of portals.\n */\n@Directive({\n selector: '[cdkPortal]',\n exportAs: 'cdkPortal',\n})\nexport class CdkPortal extends TemplatePortal {\n constructor(templateRef: TemplateRef<any>, viewContainerRef: ViewContainerRef) {\n super(templateRef, viewContainerRef);\n }\n}\n\n/**\n * @deprecated Use `CdkPortal` instead.\n * @breaking-change 9.0.0\n */\n@Directive({\n selector: '[cdk-portal], [portal]',\n exportAs: 'cdkPortal',\n providers: [{\n provide: CdkPortal,\n useExisting: TemplatePortalDirective\n }]\n})\nexport class TemplatePortalDirective extends CdkPortal {}\n\n/**\n * Possible attached references to the CdkPortalOutlet.\n */\nexport type CdkPortalOutletAttachedRef = ComponentRef<any> | EmbeddedViewRef<any> | null;\n\n\n/**\n * Directive version of a PortalOutlet. Because the directive *is* a PortalOutlet, portals can be\n * directly attached to it, enabling declarative use.\n *\n * Usage:\n * `<ng-template [cdkPortalOutlet]=\"greeting\"></ng-template>`\n */\n@Directive({\n selector: '[cdkPortalOutlet]',\n exportAs: 'cdkPortalOutlet',\n inputs: ['portal: cdkPortalOutlet']\n})\nexport class CdkPortalOutlet extends BasePortalOutlet implements OnInit, OnDestroy {\n private _document: Document;\n\n /** Whether the portal component is initialized. */\n private _isInitialized = false;\n\n /** Reference to the currently-attached component/view ref. */\n private _attachedRef: CdkPortalOutletAttachedRef;\n\n constructor(\n private _componentFactoryResolver: ComponentFactoryResolver,\n private _viewContainerRef: ViewContainerRef,\n\n /**\n * @deprecated `_document` parameter to be made required.\n * @breaking-change 9.0.0\n */\n @Inject(DOCUMENT) _document?: any) {\n super();\n this._document = _document;\n }\n\n /** Portal associated with the Portal outlet. */\n get portal(): Portal<any> | null {\n return this._attachedPortal;\n }\n\n set portal(portal: Portal<any> | null) {\n // Ignore the cases where the `portal` is set to a falsy value before the lifecycle hooks have\n // run. This handles the cases where the user might do something like `<div cdkPortalOutlet>`\n // and attach a portal programmatically in the parent component. When Angular does the first CD\n // round, it will fire the setter with empty string, causing the user's content to be cleared.\n if (this.hasAttached() && !portal && !this._isInitialized) {\n return;\n }\n\n if (this.hasAttached()) {\n super.detach();\n }\n\n if (portal) {\n super.attach(portal);\n }\n\n this._attachedPortal = portal;\n }\n\n /** Emits when a portal is attached to the outlet. */\n @Output() readonly attached: EventEmitter<CdkPortalOutletAttachedRef> =\n new EventEmitter<CdkPortalOutletAttachedRef>();\n\n /** Component or view reference that is attached to the portal. */\n get attachedRef(): CdkPortalOutletAttachedRef {\n return this._attachedRef;\n }\n\n ngOnInit() {\n this._isInitialized = true;\n }\n\n ngOnDestroy() {\n super.dispose();\n this._attachedPortal = null;\n this._attachedRef = null;\n }\n\n /**\n * Attach the given ComponentPortal to this PortalOutlet using the ComponentFactoryResolver.\n *\n * @param portal Portal to be attached to the portal outlet.\n * @returns Reference to the created component.\n */\n attachComponentPortal<T>(portal: ComponentPortal<T>): ComponentRef<T> {\n portal.setAttachedHost(this);\n\n // If the portal specifies an origin, use that as the logical location of the component\n // in the application tree. Otherwise use the location of this PortalOutlet.\n const viewContainerRef = portal.viewContainerRef != null ?\n portal.viewContainerRef :\n this._viewContainerRef;\n\n const resolver = portal.componentFactoryResolver || this._componentFactoryResolver;\n const componentFactory = resolver.resolveComponentFactory(portal.component);\n const ref = viewContainerRef.createComponent(\n componentFactory, viewContainerRef.length,\n portal.injector || viewContainerRef.injector);\n\n // If we're using a view container that's different from the injected one (e.g. when the portal\n // specifies its own) we need to move the component into the outlet, otherwise it'll be rendered\n // inside of the alternate view container.\n if (viewContainerRef !== this._viewContainerRef) {\n this._getRootNode().appendChild((ref.hostView as EmbeddedViewRef<any>).rootNodes[0]);\n }\n\n super.setDisposeFn(() => ref.destroy());\n this._attachedPortal = portal;\n this._attachedRef = ref;\n this.attached.emit(ref);\n\n return ref;\n }\n\n /**\n * Attach the given TemplatePortal to this PortalHost as an embedded View.\n * @param portal Portal to be attached.\n * @returns Reference to the created embedded view.\n */\n attachTemplatePortal<C>(portal: TemplatePortal<C>): EmbeddedViewRef<C> {\n portal.setAttachedHost(this);\n const viewRef = this._viewContainerRef.createEmbeddedView(portal.templateRef, portal.context);\n super.setDisposeFn(() => this._viewContainerRef.clear());\n\n this._attachedPortal = portal;\n this._attachedRef = viewRef;\n this.attached.emit(viewRef);\n\n return viewRef;\n }\n\n /**\n * Attaches the given DomPortal to this PortalHost by moving all of the portal content into it.\n * @param portal Portal to be attached.\n * @deprecated To be turned into a method.\n * @breaking-change 10.0.0\n */\n override attachDomPortal = (portal: DomPortal) => {\n // @breaking-change 9.0.0 Remove check and error once the\n // `_document` constructor parameter is required.\n if (!this._document && (typeof ngDevMode === 'undefined' || ngDevMode)) {\n throw Error('Cannot attach DOM portal without _document constructor parameter');\n }\n\n const element = portal.element;\n if (!element.parentNode && (typeof ngDevMode === 'undefined' || ngDevMode)) {\n throw Error('DOM portal content must be attached to a parent node.');\n }\n\n // Anchor used to save the element's previous position so\n // that we can restore it when the portal is detached.\n const anchorNode = this._document.createComment('dom-portal');\n\n portal.setAttachedHost(this);\n element.parentNode!.insertBefore(anchorNode, element);\n this._getRootNode().appendChild(element);\n this._attachedPortal = portal;\n\n super.setDisposeFn(() => {\n if (anchorNode.parentNode) {\n anchorNode.parentNode!.replaceChild(element, anchorNode);\n }\n });\n }\n\n /** Gets the root node of the portal outlet. */\n private _getRootNode(): HTMLElement {\n const nativeElement: Node = this._viewContainerRef.element.nativeElement;\n\n // The directive could be set on a template which will result in a comment\n // node being the root. Use the comment's parent node if that is the case.\n return (nativeElement.nodeType === nativeElement.ELEMENT_NODE ?\n nativeElement : nativeElement.parentNode!) as HTMLElement;\n }\n\n static ngAcceptInputType_portal: Portal<any> | null | undefined | '';\n}\n\n/**\n * @deprecated Use `CdkPortalOutlet` instead.\n * @breaking-change 9.0.0\n */\n@Directive({\n selector: '[cdkPortalHost], [portalHost]',\n exportAs: 'cdkPortalHost',\n inputs: ['portal: cdkPortalHost'],\n providers: [{\n provide: CdkPortalOutlet,\n useExisting: PortalHostDirective\n }]\n})\nexport class PortalHostDirective extends CdkPortalOutlet {}\n\n\n@NgModule({\n exports: [CdkPortal, CdkPortalOutlet, TemplatePortalDirective, PortalHostDirective],\n declarations: [CdkPortal, CdkPortalOutlet, TemplatePortalDirective, PortalHostDirective],\n})\nexport class PortalModule {}\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nimport {Injector} from '@angular/core';\n\n/**\n * Custom injector to be used when providing custom\n * injection tokens to components inside a portal.\n * @docs-private\n * @deprecated Use `Injector.create` instead.\n * @breaking-change 11.0.0\n */\nexport class PortalInjector implements Injector {\n constructor(\n private _parentInjector: Injector,\n private _customTokens: WeakMap<any, any>) { }\n\n get(token: any, notFoundValue?: any): any {\n const value = this._customTokens.get(token);\n\n if (typeof value !== 'undefined') {\n return value;\n }\n\n return this._parentInjector.get<any>(token, notFoundValue);\n }\n}\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nexport * from './portal';\nexport * from './dom-portal-outlet';\nexport * from './portal-directives';\nexport * from './portal-injector';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"]}
Note: See TracBrowser for help on using the repository browser.