@angular/cdk 22.1.0-next.3 → 22.1.0-rc.0
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.
- package/fesm2022/_a11y-module-chunk.mjs +22 -22
- package/fesm2022/_a11y-module-chunk.mjs.map +1 -1
- package/fesm2022/_activedescendant-key-manager-chunk.mjs.map +1 -1
- package/fesm2022/_array-chunk.mjs.map +1 -1
- package/fesm2022/_breakpoints-observer-chunk.mjs +6 -6
- package/fesm2022/_breakpoints-observer-chunk.mjs.map +1 -1
- package/fesm2022/_css-pixel-value-chunk.mjs.map +1 -1
- package/fesm2022/_data-source-chunk.mjs.map +1 -1
- package/fesm2022/_directionality-chunk.mjs +3 -3
- package/fesm2022/_directionality-chunk.mjs.map +1 -1
- package/fesm2022/_dispose-view-repeater-strategy-chunk.mjs.map +1 -1
- package/fesm2022/_element-chunk.mjs.map +1 -1
- package/fesm2022/_fake-event-detection-chunk.mjs.map +1 -1
- package/fesm2022/_focus-key-manager-chunk.mjs.map +1 -1
- package/fesm2022/_focus-monitor-chunk.mjs +9 -9
- package/fesm2022/_focus-monitor-chunk.mjs.map +1 -1
- package/fesm2022/_id-generator-chunk.mjs +3 -3
- package/fesm2022/_id-generator-chunk.mjs.map +1 -1
- package/fesm2022/_keycodes-chunk.mjs.map +1 -1
- package/fesm2022/_list-key-manager-chunk.mjs.map +1 -1
- package/fesm2022/_overlay-module-chunk.mjs +35 -35
- package/fesm2022/_overlay-module-chunk.mjs.map +1 -1
- package/fesm2022/_passive-listeners-chunk.mjs.map +1 -1
- package/fesm2022/_platform-chunk.mjs +3 -3
- package/fesm2022/_platform-chunk.mjs.map +1 -1
- package/fesm2022/_recycle-view-repeater-strategy-chunk.mjs.map +1 -1
- package/fesm2022/_scrolling-chunk.mjs.map +1 -1
- package/fesm2022/_selection-model-chunk.mjs.map +1 -1
- package/fesm2022/_shadow-dom-chunk.mjs.map +1 -1
- package/fesm2022/_style-loader-chunk.mjs +3 -3
- package/fesm2022/_style-loader-chunk.mjs.map +1 -1
- package/fesm2022/_test-environment-chunk.mjs.map +1 -1
- package/fesm2022/_tree-key-manager-chunk.mjs.map +1 -1
- package/fesm2022/_typeahead-chunk.mjs.map +1 -1
- package/fesm2022/_unique-selection-dispatcher-chunk.mjs +3 -3
- package/fesm2022/_unique-selection-dispatcher-chunk.mjs.map +1 -1
- package/fesm2022/a11y.mjs +9 -9
- package/fesm2022/a11y.mjs.map +1 -1
- package/fesm2022/accordion.mjs +10 -10
- package/fesm2022/accordion.mjs.map +1 -1
- package/fesm2022/bidi.mjs +7 -7
- package/fesm2022/bidi.mjs.map +1 -1
- package/fesm2022/cdk.mjs +1 -1
- package/fesm2022/cdk.mjs.map +1 -1
- package/fesm2022/clipboard.mjs +10 -10
- package/fesm2022/clipboard.mjs.map +1 -1
- package/fesm2022/coercion-private.mjs.map +1 -1
- package/fesm2022/coercion.mjs.map +1 -1
- package/fesm2022/dialog.mjs +10 -10
- package/fesm2022/dialog.mjs.map +1 -1
- package/fesm2022/drag-drop.mjs +33 -33
- package/fesm2022/drag-drop.mjs.map +1 -1
- package/fesm2022/keycodes.mjs.map +1 -1
- package/fesm2022/layout.mjs +4 -4
- package/fesm2022/layout.mjs.map +1 -1
- package/fesm2022/listbox.mjs +10 -10
- package/fesm2022/listbox.mjs.map +1 -1
- package/fesm2022/menu.mjs +49 -49
- package/fesm2022/menu.mjs.map +1 -1
- package/fesm2022/observers-private.mjs +3 -3
- package/fesm2022/observers-private.mjs.map +1 -1
- package/fesm2022/observers.mjs +13 -13
- package/fesm2022/observers.mjs.map +1 -1
- package/fesm2022/overlay.mjs +3 -3
- package/fesm2022/overlay.mjs.map +1 -1
- package/fesm2022/platform.mjs +4 -4
- package/fesm2022/platform.mjs.map +1 -1
- package/fesm2022/portal.mjs +10 -10
- package/fesm2022/portal.mjs.map +1 -1
- package/fesm2022/private.mjs +10 -6
- package/fesm2022/private.mjs.map +1 -1
- package/fesm2022/scrolling.mjs +35 -35
- package/fesm2022/scrolling.mjs.map +1 -1
- package/fesm2022/stepper.mjs +45 -26
- package/fesm2022/stepper.mjs.map +1 -1
- package/fesm2022/table.mjs +73 -73
- package/fesm2022/table.mjs.map +1 -1
- package/fesm2022/testing-selenium-webdriver.mjs.map +1 -1
- package/fesm2022/testing-testbed.mjs.map +1 -1
- package/fesm2022/testing.mjs.map +1 -1
- package/fesm2022/text-field.mjs +16 -16
- package/fesm2022/text-field.mjs.map +1 -1
- package/fesm2022/tree.mjs +25 -25
- package/fesm2022/tree.mjs.map +1 -1
- package/package.json +1 -1
- package/schematics/ng-add/index.js +1 -1
- package/types/stepper.d.ts +5 -2
package/fesm2022/portal.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"portal.mjs","sources":["../../../../../darwin_arm64-fastbuild-ST-fdfa778d11ba/bin/src/cdk/portal/portal-errors.ts","../../../../../darwin_arm64-fastbuild-ST-fdfa778d11ba/bin/src/cdk/portal/portal.ts","../../../../../darwin_arm64-fastbuild-ST-fdfa778d11ba/bin/src/cdk/portal/dom-portal-outlet.ts","../../../../../darwin_arm64-fastbuild-ST-fdfa778d11ba/bin/src/cdk/portal/portal-directives.ts"],"sourcesContent":["/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.dev/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(\n 'Attempting to attach an unknown Portal type. BasePortalOutlet accepts either ' +\n 'a ComponentPortal or a TemplatePortal.',\n );\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.dev/license\n */\n\nimport {\n TemplateRef,\n ViewContainerRef,\n ElementRef,\n ComponentRef,\n EmbeddedViewRef,\n Injector,\n Binding,\n Type,\n DirectiveWithBindings,\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 = 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 * 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 * 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 /** Injector used for the instantiation of the component. */\n injector?: Injector | null;\n\n /**\n * List of DOM nodes that should be projected through `<ng-content>` of the attached component.\n */\n projectableNodes?: Node[][] | null;\n\n /**\n * Bindings to apply to the created component.\n */\n readonly bindings: Binding[] | null;\n\n /**\n * Directives to apply to the created component.\n */\n readonly directives: (Type<unknown> | DirectiveWithBindings<unknown>)[] | null;\n\n constructor(\n component: ComponentType<T>,\n viewContainerRef?: ViewContainerRef | null,\n injector?: Injector | null,\n projectableNodes?: Node[][] | null,\n bindings?: Binding[],\n directives?: (Type<unknown> | DirectiveWithBindings<unknown>)[],\n ) {\n super();\n this.component = component;\n this.viewContainerRef = viewContainerRef;\n this.injector = injector;\n this.projectableNodes = projectableNodes;\n this.bindings = bindings || null;\n this.directives = directives || null;\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 constructor(\n /** The embedded template that will be used to instantiate an embedded View in the host. */\n public templateRef: TemplateRef<C>,\n /** Reference to the ViewContainer into which the template will be stamped out. */\n public viewContainerRef: ViewContainerRef,\n /** Contextual data to be passed in to the embedded view. */\n public context?: C,\n /** The injector to use for the embedded view. */\n public injector?: Injector,\n ) {\n super();\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/** A `PortalOutlet` is a 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 * 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 = null;\n\n /** A function that will permanently dispose this host. */\n private _disposeFn: (() => void) | null = 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 * @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.dev/license\n */\n\nimport {\n ApplicationRef,\n ComponentRef,\n EmbeddedViewRef,\n EnvironmentInjector,\n Injector,\n NgModuleRef,\n createComponent,\n} from '@angular/core';\nimport {BasePortalOutlet, ComponentPortal, DomPortal, TemplatePortal} from './portal';\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 /**\n * @param outletElement Element into which the content is projected.\n * @param _appRef Reference to the application. Only used in component portals when there\n * is no `ViewContainerRef` available.\n * @param _defaultInjector Injector to use as a fallback when the portal being attached doesn't\n * have one. Only used for component portals.\n */\n constructor(\n /** Element into which the content is projected. */\n public outletElement: Element,\n private _appRef?: ApplicationRef,\n private _defaultInjector?: Injector,\n ) {\n super();\n }\n\n /**\n * Attach the given ComponentPortal to DOM element.\n * @param portal Portal to be attached\n * @returns Reference to the created component.\n */\n attachComponentPortal<T>(portal: ComponentPortal<T>): ComponentRef<T> {\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 const injector = portal.injector || portal.viewContainerRef.injector;\n const ngModuleRef = injector.get(NgModuleRef, null, {optional: true}) || undefined;\n\n componentRef = portal.viewContainerRef.createComponent(portal.component, {\n index: portal.viewContainerRef.length,\n injector,\n ngModuleRef,\n projectableNodes: portal.projectableNodes || undefined,\n bindings: portal.bindings || undefined,\n directives: portal.directives || undefined,\n });\n\n this.setDisposeFn(() => componentRef.destroy());\n } else {\n if ((typeof ngDevMode === 'undefined' || ngDevMode) && !this._appRef) {\n throw Error('Cannot attach component portal to outlet without an ApplicationRef.');\n }\n const appRef = this._appRef!;\n\n const elementInjector = portal.injector || this._defaultInjector || Injector.NULL;\n const environmentInjector = elementInjector.get(EnvironmentInjector, appRef.injector);\n componentRef = createComponent(portal.component, {\n elementInjector,\n environmentInjector,\n projectableNodes: portal.projectableNodes || undefined,\n bindings: portal.bindings || undefined,\n directives: portal.directives || undefined,\n });\n\n appRef.attachView(componentRef.hostView);\n this.setDisposeFn(() => {\n // Verify that the ApplicationRef has registered views before trying to detach a host view.\n // This check also protects the `detachView` from being called on a destroyed ApplicationRef.\n if (appRef.viewCount > 0) {\n appRef.detachView(componentRef.hostView);\n }\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 injector: portal.injector,\n });\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 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.outletElement.ownerDocument.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 this.outletElement.remove();\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 * @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.dev/license\n */\n\nimport {\n ComponentRef,\n Directive,\n EmbeddedViewRef,\n EventEmitter,\n NgModule,\n OnDestroy,\n OnInit,\n Output,\n TemplateRef,\n ViewContainerRef,\n Input,\n inject,\n NgModuleRef,\n DOCUMENT,\n} from '@angular/core';\n\nimport {BasePortalOutlet, ComponentPortal, Portal, TemplatePortal, DomPortal} from './portal';\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() {\n const templateRef = inject<TemplateRef<any>>(TemplateRef);\n const viewContainerRef = inject(ViewContainerRef);\n\n super(templateRef, viewContainerRef);\n }\n}\n\n/**\n * Possible attached references to the CdkPortalOutlet.\n */\nexport type CdkPortalOutletAttachedRef = ComponentRef<any> | EmbeddedViewRef<any> | null;\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})\nexport class CdkPortalOutlet extends BasePortalOutlet implements OnInit, OnDestroy {\n private _moduleRef = inject(NgModuleRef, {optional: true});\n private _document = inject(DOCUMENT);\n private _viewContainerRef = inject(ViewContainerRef);\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 = null;\n\n /** Portal associated with the Portal outlet. */\n @Input('cdkPortalOutlet')\n get portal(): Portal<any> | null {\n return this._attachedPortal;\n }\n\n set portal(portal: Portal<any> | null | undefined | '') {\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 || null;\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._attachedRef = this._attachedPortal = null;\n }\n\n /**\n * Attach the given ComponentPortal to this PortalOutlet.\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 =\n portal.viewContainerRef != null ? portal.viewContainerRef : this._viewContainerRef;\n\n const ref = viewContainerRef.createComponent(portal.component, {\n index: viewContainerRef.length,\n injector: portal.injector || viewContainerRef.injector,\n projectableNodes: portal.projectableNodes || undefined,\n ngModuleRef: this._moduleRef || undefined,\n bindings: portal.bindings || undefined,\n directives: portal.directives || undefined,\n });\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 injector: portal.injector,\n });\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 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 (\n nativeElement.nodeType === nativeElement.ELEMENT_NODE\n ? nativeElement\n : nativeElement.parentNode!\n ) as HTMLElement;\n }\n}\n\n@NgModule({\n imports: [CdkPortal, CdkPortalOutlet],\n exports: [CdkPortal, CdkPortalOutlet],\n})\nexport class PortalModule {}\n"],"names":["throwNullPortalError","Error","throwPortalAlreadyAttachedError","throwPortalOutletAlreadyDisposedError","throwUnknownPortalTypeError","throwNullPortalOutletError","throwNoPortalAttachedError","Portal","_attachedHost","attach","host","ngDevMode","hasAttached","detach","isAttached","setAttachedHost","ComponentPortal","component","viewContainerRef","injector","projectableNodes","bindings","directives","constructor","TemplatePortal","templateRef","context","origin","elementRef","undefined","DomPortal","element","ElementRef","nativeElement","BasePortalOutlet","_attachedPortal","_disposeFn","_isDisposed","portal","attachComponentPortal","attachTemplatePortal","attachDomPortal","_invokeDisposeFn","dispose","setDisposeFn","fn","DomPortalOutlet","outletElement","_appRef","_defaultInjector","componentRef","ngModuleRef","get","NgModuleRef","optional","createComponent","index","length","destroy","appRef","elementInjector","Injector","NULL","environmentInjector","EnvironmentInjector","attachView","hostView","viewCount","detachView","appendChild","_getComponentRootNode","viewContainer","viewRef","createEmbeddedView","rootNodes","forEach","rootNode","detectChanges","indexOf","remove","parentNode","anchorNode","ownerDocument","createComment","insertBefore","replaceChild","CdkPortal","inject","TemplateRef","ViewContainerRef","deps","target","i0","ɵɵFactoryTarget","Directive","isStandalone","selector","exportAs","usesInheritance","ngImport","decorators","args","CdkPortalOutlet","_moduleRef","_document","DOCUMENT","_viewContainerRef","_isInitialized","_attachedRef","attached","EventEmitter","attachedRef","ngOnInit","ngOnDestroy","ref","_getRootNode","emit","clear","nodeType","ELEMENT_NODE","inputs","outputs","Input","Output","PortalModule","NgModule","ɵmod","ɵɵngDeclareNgModule","minVersion","version","type","exports","imports"],"mappings":";;;SAYgBA,oBAAoBA,GAAA;EAClC,MAAMC,KAAK,CAAC,iCAAiC,CAAC;AAChD;SAMgBC,+BAA+BA,GAAA;EAC7C,MAAMD,KAAK,CAAC,oCAAoC,CAAC;AACnD;SAMgBE,qCAAqCA,GAAA;EACnD,MAAMF,KAAK,CAAC,6CAA6C,CAAC;AAC5D;SAMgBG,2BAA2BA,GAAA;AACzC,EAAA,MAAMH,KAAK,CACT,+EAA+E,GAC7E,wCAAwC,CAC3C;AACH;SAMgBI,0BAA0BA,GAAA;EACxC,MAAMJ,KAAK,CAAC,sDAAsD,CAAC;AACrE;SAMgBK,0BAA0BA,GAAA;EACxC,MAAML,KAAK,CAAC,8DAA8D,CAAC;AAC7E;;MCpBsBM,MAAM,CAAA;AAClBC,EAAAA,aAAa,GAAwB,IAAI;EAGjDC,MAAMA,CAACC,IAAkB,EAAA;AACvB,IAAA,IAAI,OAAOC,SAAS,KAAK,WAAW,IAAIA,SAAS,EAAE;MACjD,IAAID,IAAI,IAAI,IAAI,EAAE;AAChBL,QAAAA,0BAA0B,EAAE;AAC9B,MAAA;AAEA,MAAA,IAAIK,IAAI,CAACE,WAAW,EAAE,EAAE;AACtBV,QAAAA,+BAA+B,EAAE;AACnC,MAAA;AACF,IAAA;IAEA,IAAI,CAACM,aAAa,GAAGE,IAAI;AACzB,IAAA,OAAUA,IAAI,CAACD,MAAM,CAAC,IAAI,CAAC;AAC7B,EAAA;AAGAI,EAAAA,MAAMA,GAAA;AACJ,IAAA,IAAIH,IAAI,GAAG,IAAI,CAACF,aAAa;IAE7B,IAAIE,IAAI,IAAI,IAAI,EAAE;MAChB,IAAI,CAACF,aAAa,GAAG,IAAI;MACzBE,IAAI,CAACG,MAAM,EAAE;IACf,CAAA,MAAO,IAAI,OAAOF,SAAS,KAAK,WAAW,IAAIA,SAAS,EAAE;AACxDL,MAAAA,0BAA0B,EAAE;AAC9B,IAAA;AACF,EAAA;EAGA,IAAIQ,UAAUA,GAAA;AACZ,IAAA,OAAO,IAAI,CAACN,aAAa,IAAI,IAAI;AACnC,EAAA;EAMAO,eAAeA,CAACL,IAAyB,EAAA;IACvC,IAAI,CAACF,aAAa,GAAGE,IAAI;AAC3B,EAAA;AACD;AAKK,MAAOM,eAAmB,SAAQT,MAAuB,CAAA;EAE7DU,SAAS;EAOTC,gBAAgB;EAGhBC,QAAQ;EAKRC,gBAAgB;EAKPC,QAAQ;EAKRC,UAAU;AAEnBC,EAAAA,WAAAA,CACEN,SAA2B,EAC3BC,gBAA0C,EAC1CC,QAA0B,EAC1BC,gBAAkC,EAClCC,QAAoB,EACpBC,UAA+D,EAAA;AAE/D,IAAA,KAAK,EAAE;IACP,IAAI,CAACL,SAAS,GAAGA,SAAS;IAC1B,IAAI,CAACC,gBAAgB,GAAGA,gBAAgB;IACxC,IAAI,CAACC,QAAQ,GAAGA,QAAQ;IACxB,IAAI,CAACC,gBAAgB,GAAGA,gBAAgB;AACxC,IAAA,IAAI,CAACC,QAAQ,GAAGA,QAAQ,IAAI,IAAI;AAChC,IAAA,IAAI,CAACC,UAAU,GAAGA,UAAU,IAAI,IAAI;AACtC,EAAA;AACD;AAKK,MAAOE,cAAwB,SAAQjB,MAA0B,CAAA;EAG5DkB,WAAA;EAEAP,gBAAA;EAEAQ,OAAA;EAEAP,QAAA;EARTI,WAAAA,CAESE,WAA2B,EAE3BP,gBAAkC,EAElCQ,OAAW,EAEXP,QAAmB,EAAA;AAE1B,IAAA,KAAK,EAAE;IARA,IAAA,CAAAM,WAAW,GAAXA,WAAW;IAEX,IAAA,CAAAP,gBAAgB,GAAhBA,gBAAgB;IAEhB,IAAA,CAAAQ,OAAO,GAAPA,OAAO;IAEP,IAAA,CAAAP,QAAQ,GAARA,QAAQ;AAGjB,EAAA;EAEA,IAAIQ,MAAMA,GAAA;AACR,IAAA,OAAO,IAAI,CAACF,WAAW,CAACG,UAAU;AACpC,EAAA;EAOSnB,MAAMA,CAACC,IAAkB,EAAEgB,OAAA,GAAyB,IAAI,CAACA,OAAO,EAAA;IACvE,IAAI,CAACA,OAAO,GAAGA,OAAO;AACtB,IAAA,OAAO,KAAK,CAACjB,MAAM,CAACC,IAAI,CAAC;AAC3B,EAAA;AAESG,EAAAA,MAAMA,GAAA;IACb,IAAI,CAACa,OAAO,GAAGG,SAAS;AACxB,IAAA,OAAO,KAAK,CAAChB,MAAM,EAAE;AACvB,EAAA;AACD;AAOK,MAAOiB,SAA2B,SAAQvB,MAAS,CAAA;EAE9CwB,OAAO;EAEhBR,WAAAA,CAAYQ,OAA0B,EAAA;AACpC,IAAA,KAAK,EAAE;IACP,IAAI,CAACA,OAAO,GAAGA,OAAO,YAAYC,UAAU,GAAGD,OAAO,CAACE,aAAa,GAAGF,OAAO;AAChF,EAAA;AACD;MAqBqBG,gBAAgB,CAAA;AAE1BC,EAAAA,eAAe,GAAuB,IAAI;AAG5CC,EAAAA,UAAU,GAAwB,IAAI;AAGtCC,EAAAA,WAAW,GAAY,KAAK;AAGpCzB,EAAAA,WAAWA,GAAA;AACT,IAAA,OAAO,CAAC,CAAC,IAAI,CAACuB,eAAe;AAC/B,EAAA;EAOA1B,MAAMA,CAAC6B,MAAmB,EAAA;AACxB,IAAA,IAAI,OAAO3B,SAAS,KAAK,WAAW,IAAIA,SAAS,EAAE;MACjD,IAAI,CAAC2B,MAAM,EAAE;AACXtC,QAAAA,oBAAoB,EAAE;AACxB,MAAA;AAEA,MAAA,IAAI,IAAI,CAACY,WAAW,EAAE,EAAE;AACtBV,QAAAA,+BAA+B,EAAE;AACnC,MAAA;MAEA,IAAI,IAAI,CAACmC,WAAW,EAAE;AACpBlC,QAAAA,qCAAqC,EAAE;AACzC,MAAA;AACF,IAAA;IAEA,IAAImC,MAAM,YAAYtB,eAAe,EAAE;MACrC,IAAI,CAACmB,eAAe,GAAGG,MAAM;AAC7B,MAAA,OAAO,IAAI,CAACC,qBAAqB,CAACD,MAAM,CAAC;AAC3C,IAAA,CAAA,MAAO,IAAIA,MAAM,YAAYd,cAAc,EAAE;MAC3C,IAAI,CAACW,eAAe,GAAGG,MAAM;AAC7B,MAAA,OAAO,IAAI,CAACE,oBAAoB,CAACF,MAAM,CAAC;IAE1C,CAAA,MAAO,IAAI,IAAI,CAACG,eAAe,IAAIH,MAAM,YAAYR,SAAS,EAAE;MAC9D,IAAI,CAACK,eAAe,GAAGG,MAAM;AAC7B,MAAA,OAAO,IAAI,CAACG,eAAe,CAACH,MAAM,CAAC;AACrC,IAAA;AAEA,IAAA,IAAI,OAAO3B,SAAS,KAAK,WAAW,IAAIA,SAAS,EAAE;AACjDP,MAAAA,2BAA2B,EAAE;AAC/B,IAAA;AACF,EAAA;AAOSqC,EAAAA,eAAe,GAAwC,IAAI;AAGpE5B,EAAAA,MAAMA,GAAA;IACJ,IAAI,IAAI,CAACsB,eAAe,EAAE;AACxB,MAAA,IAAI,CAACA,eAAe,CAACpB,eAAe,CAAC,IAAI,CAAC;MAC1C,IAAI,CAACoB,eAAe,GAAG,IAAI;AAC7B,IAAA;IAEA,IAAI,CAACO,gBAAgB,EAAE;AACzB,EAAA;AAGAC,EAAAA,OAAOA,GAAA;AACL,IAAA,IAAI,IAAI,CAAC/B,WAAW,EAAE,EAAE;MACtB,IAAI,CAACC,MAAM,EAAE;AACf,IAAA;IAEA,IAAI,CAAC6B,gBAAgB,EAAE;IACvB,IAAI,CAACL,WAAW,GAAG,IAAI;AACzB,EAAA;EAGAO,YAAYA,CAACC,EAAc,EAAA;IACzB,IAAI,CAACT,UAAU,GAAGS,EAAE;AACtB,EAAA;AAEQH,EAAAA,gBAAgBA,GAAA;IACtB,IAAI,IAAI,CAACN,UAAU,EAAE;MACnB,IAAI,CAACA,UAAU,EAAE;MACjB,IAAI,CAACA,UAAU,GAAG,IAAI;AACxB,IAAA;AACF,EAAA;AACD;;AC9QK,MAAOU,eAAgB,SAAQZ,gBAAgB,CAAA;EAU1Ca,aAAA;EACCC,OAAA;EACAC,gBAAA;AAJV1B,EAAAA,WAAAA,CAESwB,aAAsB,EACrBC,OAAwB,EACxBC,gBAA2B,EAAA;AAEnC,IAAA,KAAK,EAAE;IAJA,IAAA,CAAAF,aAAa,GAAbA,aAAa;IACZ,IAAA,CAAAC,OAAO,GAAPA,OAAO;IACP,IAAA,CAAAC,gBAAgB,GAAhBA,gBAAgB;AAG1B,EAAA;EAOAV,qBAAqBA,CAAID,MAA0B,EAAA;AACjD,IAAA,IAAIY,YAA6B;IAMjC,IAAIZ,MAAM,CAACpB,gBAAgB,EAAE;MAC3B,MAAMC,QAAQ,GAAGmB,MAAM,CAACnB,QAAQ,IAAImB,MAAM,CAACpB,gBAAgB,CAACC,QAAQ;MACpE,MAAMgC,WAAW,GAAGhC,QAAQ,CAACiC,GAAG,CAACC,WAAW,EAAE,IAAI,EAAE;AAACC,QAAAA,QAAQ,EAAE;OAAK,CAAC,IAAIzB,SAAS;MAElFqB,YAAY,GAAGZ,MAAM,CAACpB,gBAAgB,CAACqC,eAAe,CAACjB,MAAM,CAACrB,SAAS,EAAE;AACvEuC,QAAAA,KAAK,EAAElB,MAAM,CAACpB,gBAAgB,CAACuC,MAAM;QACrCtC,QAAQ;QACRgC,WAAW;AACX/B,QAAAA,gBAAgB,EAAEkB,MAAM,CAAClB,gBAAgB,IAAIS,SAAS;AACtDR,QAAAA,QAAQ,EAAEiB,MAAM,CAACjB,QAAQ,IAAIQ,SAAS;AACtCP,QAAAA,UAAU,EAAEgB,MAAM,CAAChB,UAAU,IAAIO;AAClC,OAAA,CAAC;MAEF,IAAI,CAACe,YAAY,CAAC,MAAMM,YAAY,CAACQ,OAAO,EAAE,CAAC;AACjD,IAAA,CAAA,MAAO;AACL,MAAA,IAAI,CAAC,OAAO/C,SAAS,KAAK,WAAW,IAAIA,SAAS,KAAK,CAAC,IAAI,CAACqC,OAAO,EAAE;QACpE,MAAM/C,KAAK,CAAC,qEAAqE,CAAC;AACpF,MAAA;AACA,MAAA,MAAM0D,MAAM,GAAG,IAAI,CAACX,OAAQ;AAE5B,MAAA,MAAMY,eAAe,GAAGtB,MAAM,CAACnB,QAAQ,IAAI,IAAI,CAAC8B,gBAAgB,IAAIY,QAAQ,CAACC,IAAI;MACjF,MAAMC,mBAAmB,GAAGH,eAAe,CAACR,GAAG,CAACY,mBAAmB,EAAEL,MAAM,CAACxC,QAAQ,CAAC;AACrF+B,MAAAA,YAAY,GAAGK,eAAe,CAACjB,MAAM,CAACrB,SAAS,EAAE;QAC/C2C,eAAe;QACfG,mBAAmB;AACnB3C,QAAAA,gBAAgB,EAAEkB,MAAM,CAAClB,gBAAgB,IAAIS,SAAS;AACtDR,QAAAA,QAAQ,EAAEiB,MAAM,CAACjB,QAAQ,IAAIQ,SAAS;AACtCP,QAAAA,UAAU,EAAEgB,MAAM,CAAChB,UAAU,IAAIO;AAClC,OAAA,CAAC;AAEF8B,MAAAA,MAAM,CAACM,UAAU,CAACf,YAAY,CAACgB,QAAQ,CAAC;MACxC,IAAI,CAACtB,YAAY,CAAC,MAAK;AAGrB,QAAA,IAAIe,MAAM,CAACQ,SAAS,GAAG,CAAC,EAAE;AACxBR,UAAAA,MAAM,CAACS,UAAU,CAAClB,YAAY,CAACgB,QAAQ,CAAC;AAC1C,QAAA;QACAhB,YAAY,CAACQ,OAAO,EAAE;AACxB,MAAA,CAAC,CAAC;AACJ,IAAA;IAGA,IAAI,CAACX,aAAa,CAACsB,WAAW,CAAC,IAAI,CAACC,qBAAqB,CAACpB,YAAY,CAAC,CAAC;IACxE,IAAI,CAACf,eAAe,GAAGG,MAAM;AAE7B,IAAA,OAAOY,YAAY;AACrB,EAAA;EAOAV,oBAAoBA,CAAIF,MAAyB,EAAA;AAC/C,IAAA,IAAIiC,aAAa,GAAGjC,MAAM,CAACpB,gBAAgB;AAC3C,IAAA,IAAIsD,OAAO,GAAGD,aAAa,CAACE,kBAAkB,CAACnC,MAAM,CAACb,WAAW,EAAEa,MAAM,CAACZ,OAAO,EAAE;MACjFP,QAAQ,EAAEmB,MAAM,CAACnB;AAClB,KAAA,CAAC;AAMFqD,IAAAA,OAAO,CAACE,SAAS,CAACC,OAAO,CAACC,QAAQ,IAAI,IAAI,CAAC7B,aAAa,CAACsB,WAAW,CAACO,QAAQ,CAAC,CAAC;IAK/EJ,OAAO,CAACK,aAAa,EAAE;IAEvB,IAAI,CAACjC,YAAY,CAAC,MAAK;AACrB,MAAA,IAAIY,KAAK,GAAGe,aAAa,CAACO,OAAO,CAACN,OAAO,CAAC;AAC1C,MAAA,IAAIhB,KAAK,KAAK,EAAE,EAAE;AAChBe,QAAAA,aAAa,CAACQ,MAAM,CAACvB,KAAK,CAAC;AAC7B,MAAA;AACF,IAAA,CAAC,CAAC;IAEF,IAAI,CAACrB,eAAe,GAAGG,MAAM;AAG7B,IAAA,OAAOkC,OAAO;AAChB,EAAA;EAQS/B,eAAe,GAAIH,MAAiB,IAAI;AAC/C,IAAA,MAAMP,OAAO,GAAGO,MAAM,CAACP,OAAO;AAC9B,IAAA,IAAI,CAACA,OAAO,CAACiD,UAAU,KAAK,OAAOrE,SAAS,KAAK,WAAW,IAAIA,SAAS,CAAC,EAAE;MAC1E,MAAMV,KAAK,CAAC,uDAAuD,CAAC;AACtE,IAAA;IAIA,MAAMgF,UAAU,GAAG,IAAI,CAAClC,aAAa,CAACmC,aAAa,CAACC,aAAa,CAAC,YAAY,CAAC;IAE/EpD,OAAO,CAACiD,UAAW,CAACI,YAAY,CAACH,UAAU,EAAElD,OAAO,CAAC;AACrD,IAAA,IAAI,CAACgB,aAAa,CAACsB,WAAW,CAACtC,OAAO,CAAC;IACvC,IAAI,CAACI,eAAe,GAAGG,MAAM;IAE7B,KAAK,CAACM,YAAY,CAAC,MAAK;MAEtB,IAAIqC,UAAU,CAACD,UAAU,EAAE;QACzBC,UAAU,CAACD,UAAU,CAACK,YAAY,CAACtD,OAAO,EAAEkD,UAAU,CAAC;AACzD,MAAA;AACF,IAAA,CAAC,CAAC;EACJ,CAAC;AAKQtC,EAAAA,OAAOA,GAAA;IACd,KAAK,CAACA,OAAO,EAAE;AACf,IAAA,IAAI,CAACI,aAAa,CAACgC,MAAM,EAAE;AAC7B,EAAA;EAGQT,qBAAqBA,CAACpB,YAA+B,EAAA;AAC3D,IAAA,OAAQA,YAAY,CAACgB,QAAiC,CAACQ,SAAS,CAAC,CAAC,CAAgB;AACpF,EAAA;AACD;;AC5IK,MAAOY,SAAU,SAAQ9D,cAAc,CAAA;AAC3CD,EAAAA,WAAAA,GAAA;AACE,IAAA,MAAME,WAAW,GAAG8D,MAAM,CAAmBC,WAAW,CAAC;AACzD,IAAA,MAAMtE,gBAAgB,GAAGqE,MAAM,CAACE,gBAAgB,CAAC;AAEjD,IAAA,KAAK,CAAChE,WAAW,EAAEP,gBAAgB,CAAC;AACtC,EAAA;;;;;UANWoE,SAAS;AAAAI,IAAAA,IAAA,EAAA,EAAA;AAAAC,IAAAA,MAAA,EAAAC,EAAA,CAAAC,eAAA,CAAAC;AAAA,GAAA,CAAA;;;;UAATR,SAAS;AAAAS,IAAAA,YAAA,EAAA,IAAA;AAAAC,IAAAA,QAAA,EAAA,aAAA;IAAAC,QAAA,EAAA,CAAA,WAAA,CAAA;AAAAC,IAAAA,eAAA,EAAA,IAAA;AAAAC,IAAAA,QAAA,EAAAP;AAAA,GAAA,CAAA;;;;;;QAATN,SAAS;AAAAc,EAAAA,UAAA,EAAA,CAAA;UAJrBN,SAAS;AAACO,IAAAA,IAAA,EAAA,CAAA;AACTL,MAAAA,QAAQ,EAAE,aAAa;AACvBC,MAAAA,QAAQ,EAAE;KACX;;;;AA0BK,MAAOK,eAAgB,SAAQpE,gBAAgB,CAAA;AAC3CqE,EAAAA,UAAU,GAAGhB,MAAM,CAAClC,WAAW,EAAE;AAACC,IAAAA,QAAQ,EAAE;AAAI,GAAC,CAAC;AAClDkD,EAAAA,SAAS,GAAGjB,MAAM,CAACkB,QAAQ,CAAC;AAC5BC,EAAAA,iBAAiB,GAAGnB,MAAM,CAACE,gBAAgB,CAAC;AAG5CkB,EAAAA,cAAc,GAAG,KAAK;AAGtBC,EAAAA,YAAY,GAA+B,IAAI;EAGvD,IACItE,MAAMA,GAAA;IACR,OAAO,IAAI,CAACH,eAAe;AAC7B,EAAA;EAEA,IAAIG,MAAMA,CAACA,MAA2C,EAAA;AAKpD,IAAA,IAAI,IAAI,CAAC1B,WAAW,EAAE,IAAI,CAAC0B,MAAM,IAAI,CAAC,IAAI,CAACqE,cAAc,EAAE;AACzD,MAAA;AACF,IAAA;AAEA,IAAA,IAAI,IAAI,CAAC/F,WAAW,EAAE,EAAE;MACtB,KAAK,CAACC,MAAM,EAAE;AAChB,IAAA;AAEA,IAAA,IAAIyB,MAAM,EAAE;AACV,MAAA,KAAK,CAAC7B,MAAM,CAAC6B,MAAM,CAAC;AACtB,IAAA;AAEA,IAAA,IAAI,CAACH,eAAe,GAAGG,MAAM,IAAI,IAAI;AACvC,EAAA;AAGmBuE,EAAAA,QAAQ,GACzB,IAAIC,YAAY,EAA8B;EAGhD,IAAIC,WAAWA,GAAA;IACb,OAAO,IAAI,CAACH,YAAY;AAC1B,EAAA;AAEAI,EAAAA,QAAQA,GAAA;IACN,IAAI,CAACL,cAAc,GAAG,IAAI;AAC5B,EAAA;AAEAM,EAAAA,WAAWA,GAAA;IACT,KAAK,CAACtE,OAAO,EAAE;AACf,IAAA,IAAI,CAACiE,YAAY,GAAG,IAAI,CAACzE,eAAe,GAAG,IAAI;AACjD,EAAA;EAQAI,qBAAqBA,CAAID,MAA0B,EAAA;AACjDA,IAAAA,MAAM,CAACvB,eAAe,CAAC,IAAI,CAAC;AAI5B,IAAA,MAAMG,gBAAgB,GACpBoB,MAAM,CAACpB,gBAAgB,IAAI,IAAI,GAAGoB,MAAM,CAACpB,gBAAgB,GAAG,IAAI,CAACwF,iBAAiB;IAEpF,MAAMQ,GAAG,GAAGhG,gBAAgB,CAACqC,eAAe,CAACjB,MAAM,CAACrB,SAAS,EAAE;MAC7DuC,KAAK,EAAEtC,gBAAgB,CAACuC,MAAM;AAC9BtC,MAAAA,QAAQ,EAAEmB,MAAM,CAACnB,QAAQ,IAAID,gBAAgB,CAACC,QAAQ;AACtDC,MAAAA,gBAAgB,EAAEkB,MAAM,CAAClB,gBAAgB,IAAIS,SAAS;AACtDsB,MAAAA,WAAW,EAAE,IAAI,CAACoD,UAAU,IAAI1E,SAAS;AACzCR,MAAAA,QAAQ,EAAEiB,MAAM,CAACjB,QAAQ,IAAIQ,SAAS;AACtCP,MAAAA,UAAU,EAAEgB,MAAM,CAAChB,UAAU,IAAIO;AAClC,KAAA,CAAC;AAKF,IAAA,IAAIX,gBAAgB,KAAK,IAAI,CAACwF,iBAAiB,EAAE;AAC/C,MAAA,IAAI,CAACS,YAAY,EAAE,CAAC9C,WAAW,CAAE6C,GAAG,CAAChD,QAAiC,CAACQ,SAAS,CAAC,CAAC,CAAC,CAAC;AACtF,IAAA;IAEA,KAAK,CAAC9B,YAAY,CAAC,MAAMsE,GAAG,CAACxD,OAAO,EAAE,CAAC;IACvC,IAAI,CAACvB,eAAe,GAAGG,MAAM;IAC7B,IAAI,CAACsE,YAAY,GAAGM,GAAG;AACvB,IAAA,IAAI,CAACL,QAAQ,CAACO,IAAI,CAACF,GAAG,CAAC;AAEvB,IAAA,OAAOA,GAAG;AACZ,EAAA;EAOA1E,oBAAoBA,CAAIF,MAAyB,EAAA;AAC/CA,IAAAA,MAAM,CAACvB,eAAe,CAAC,IAAI,CAAC;AAC5B,IAAA,MAAMyD,OAAO,GAAG,IAAI,CAACkC,iBAAiB,CAACjC,kBAAkB,CAACnC,MAAM,CAACb,WAAW,EAAEa,MAAM,CAACZ,OAAO,EAAE;MAC5FP,QAAQ,EAAEmB,MAAM,CAACnB;AAClB,KAAA,CAAC;IACF,KAAK,CAACyB,YAAY,CAAC,MAAM,IAAI,CAAC8D,iBAAiB,CAACW,KAAK,EAAE,CAAC;IAExD,IAAI,CAAClF,eAAe,GAAGG,MAAM;IAC7B,IAAI,CAACsE,YAAY,GAAGpC,OAAO;AAC3B,IAAA,IAAI,CAACqC,QAAQ,CAACO,IAAI,CAAC5C,OAAO,CAAC;AAE3B,IAAA,OAAOA,OAAO;AAChB,EAAA;EAQS/B,eAAe,GAAIH,MAAiB,IAAI;AAC/C,IAAA,MAAMP,OAAO,GAAGO,MAAM,CAACP,OAAO;AAC9B,IAAA,IAAI,CAACA,OAAO,CAACiD,UAAU,KAAK,OAAOrE,SAAS,KAAK,WAAW,IAAIA,SAAS,CAAC,EAAE;MAC1E,MAAMV,KAAK,CAAC,uDAAuD,CAAC;AACtE,IAAA;IAIA,MAAMgF,UAAU,GAAG,IAAI,CAACuB,SAAS,CAACrB,aAAa,CAAC,YAAY,CAAC;AAE7D7C,IAAAA,MAAM,CAACvB,eAAe,CAAC,IAAI,CAAC;IAC5BgB,OAAO,CAACiD,UAAW,CAACI,YAAY,CAACH,UAAU,EAAElD,OAAO,CAAC;IACrD,IAAI,CAACoF,YAAY,EAAE,CAAC9C,WAAW,CAACtC,OAAO,CAAC;IACxC,IAAI,CAACI,eAAe,GAAGG,MAAM;IAE7B,KAAK,CAACM,YAAY,CAAC,MAAK;MACtB,IAAIqC,UAAU,CAACD,UAAU,EAAE;QACzBC,UAAU,CAACD,UAAW,CAACK,YAAY,CAACtD,OAAO,EAAEkD,UAAU,CAAC;AAC1D,MAAA;AACF,IAAA,CAAC,CAAC;EACJ,CAAC;AAGOkC,EAAAA,YAAYA,GAAA;IAClB,MAAMlF,aAAa,GAAS,IAAI,CAACyE,iBAAiB,CAAC3E,OAAO,CAACE,aAAa;AAIxE,IAAA,OACEA,aAAa,CAACqF,QAAQ,KAAKrF,aAAa,CAACsF,YAAA,GACrCtF,aAAA,GACAA,aAAa,CAAC+C,UAAW;AAEjC,EAAA;;;;;UAvJWsB,eAAe;AAAAZ,IAAAA,IAAA,EAAA,IAAA;AAAAC,IAAAA,MAAA,EAAAC,EAAA,CAAAC,eAAA,CAAAC;AAAA,GAAA,CAAA;;;;UAAfQ,eAAe;AAAAP,IAAAA,YAAA,EAAA,IAAA;AAAAC,IAAAA,QAAA,EAAA,mBAAA;AAAAwB,IAAAA,MAAA,EAAA;AAAAlF,MAAAA,MAAA,EAAA,CAAA,iBAAA,EAAA,QAAA;KAAA;AAAAmF,IAAAA,OAAA,EAAA;AAAAZ,MAAAA,QAAA,EAAA;KAAA;IAAAZ,QAAA,EAAA,CAAA,iBAAA,CAAA;AAAAC,IAAAA,eAAA,EAAA,IAAA;AAAAC,IAAAA,QAAA,EAAAP;AAAA,GAAA,CAAA;;;;;;QAAfU,eAAe;AAAAF,EAAAA,UAAA,EAAA,CAAA;UAJ3BN,SAAS;AAACO,IAAAA,IAAA,EAAA,CAAA;AACTL,MAAAA,QAAQ,EAAE,mBAAmB;AAC7BC,MAAAA,QAAQ,EAAE;KACX;;;;YAaEyB,KAAK;aAAC,iBAAiB;;;YA0BvBC;;;;MAwHUC,YAAY,CAAA;;;;;UAAZA,YAAY;AAAAlC,IAAAA,IAAA,EAAA,EAAA;AAAAC,IAAAA,MAAA,EAAAC,EAAA,CAAAC,eAAA,CAAAgC;AAAA,GAAA,CAAA;AAAZ,EAAA,OAAAC,IAAA,GAAAlC,EAAA,CAAAmC,mBAAA,CAAA;AAAAC,IAAAA,UAAA,EAAA,QAAA;AAAAC,IAAAA,OAAA,EAAA,eAAA;AAAA9B,IAAAA,QAAA,EAAAP,EAAA;AAAAsC,IAAAA,IAAA,EAAAN,YAAY;cAvLZtC,SAAS,EAyBTgB,eAAe,CAAA;AAAA6B,IAAAA,OAAA,EAAA,CAzBf7C,SAAS,EAyBTgB,eAAe;AAAA,GAAA,CAAA;;;;;UA8JfsB;AAAY,GAAA,CAAA;;;;;;QAAZA,YAAY;AAAAxB,EAAAA,UAAA,EAAA,CAAA;UAJxByB,QAAQ;AAACxB,IAAAA,IAAA,EAAA,CAAA;AACR+B,MAAAA,OAAO,EAAE,CAAC9C,SAAS,EAAEgB,eAAe,CAAC;AACrC6B,MAAAA,OAAO,EAAE,CAAC7C,SAAS,EAAEgB,eAAe;KACrC;;;;;;"}
|
|
1
|
+
{"version":3,"file":"portal.mjs","sources":["../../../../../darwin_arm64-fastbuild-ST-fdfa778d11ba/bin/src/cdk/portal/portal-errors.ts","../../../../../darwin_arm64-fastbuild-ST-fdfa778d11ba/bin/src/cdk/portal/portal.ts","../../../../../darwin_arm64-fastbuild-ST-fdfa778d11ba/bin/src/cdk/portal/dom-portal-outlet.ts","../../../../../darwin_arm64-fastbuild-ST-fdfa778d11ba/bin/src/cdk/portal/portal-directives.ts"],"sourcesContent":["/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.dev/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(\n 'Attempting to attach an unknown Portal type. BasePortalOutlet accepts either ' +\n 'a ComponentPortal or a TemplatePortal.',\n );\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.dev/license\n */\n\nimport {\n TemplateRef,\n ViewContainerRef,\n ElementRef,\n ComponentRef,\n EmbeddedViewRef,\n Injector,\n Binding,\n Type,\n DirectiveWithBindings,\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 = 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 * 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 * 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 /** Injector used for the instantiation of the component. */\n injector?: Injector | null;\n\n /**\n * List of DOM nodes that should be projected through `<ng-content>` of the attached component.\n */\n projectableNodes?: Node[][] | null;\n\n /**\n * Bindings to apply to the created component.\n */\n readonly bindings: Binding[] | null;\n\n /**\n * Directives to apply to the created component.\n */\n readonly directives: (Type<unknown> | DirectiveWithBindings<unknown>)[] | null;\n\n constructor(\n component: ComponentType<T>,\n viewContainerRef?: ViewContainerRef | null,\n injector?: Injector | null,\n projectableNodes?: Node[][] | null,\n bindings?: Binding[],\n directives?: (Type<unknown> | DirectiveWithBindings<unknown>)[],\n ) {\n super();\n this.component = component;\n this.viewContainerRef = viewContainerRef;\n this.injector = injector;\n this.projectableNodes = projectableNodes;\n this.bindings = bindings || null;\n this.directives = directives || null;\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 constructor(\n /** The embedded template that will be used to instantiate an embedded View in the host. */\n public templateRef: TemplateRef<C>,\n /** Reference to the ViewContainer into which the template will be stamped out. */\n public viewContainerRef: ViewContainerRef,\n /** Contextual data to be passed in to the embedded view. */\n public context?: C,\n /** The injector to use for the embedded view. */\n public injector?: Injector,\n ) {\n super();\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/** A `PortalOutlet` is a 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 * 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 = null;\n\n /** A function that will permanently dispose this host. */\n private _disposeFn: (() => void) | null = 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 * @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.dev/license\n */\n\nimport {\n ApplicationRef,\n ComponentRef,\n EmbeddedViewRef,\n EnvironmentInjector,\n Injector,\n NgModuleRef,\n createComponent,\n} from '@angular/core';\nimport {BasePortalOutlet, ComponentPortal, DomPortal, TemplatePortal} from './portal';\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 /**\n * @param outletElement Element into which the content is projected.\n * @param _appRef Reference to the application. Only used in component portals when there\n * is no `ViewContainerRef` available.\n * @param _defaultInjector Injector to use as a fallback when the portal being attached doesn't\n * have one. Only used for component portals.\n */\n constructor(\n /** Element into which the content is projected. */\n public outletElement: Element,\n private _appRef?: ApplicationRef,\n private _defaultInjector?: Injector,\n ) {\n super();\n }\n\n /**\n * Attach the given ComponentPortal to DOM element.\n * @param portal Portal to be attached\n * @returns Reference to the created component.\n */\n attachComponentPortal<T>(portal: ComponentPortal<T>): ComponentRef<T> {\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 const injector = portal.injector || portal.viewContainerRef.injector;\n const ngModuleRef = injector.get(NgModuleRef, null, {optional: true}) || undefined;\n\n componentRef = portal.viewContainerRef.createComponent(portal.component, {\n index: portal.viewContainerRef.length,\n injector,\n ngModuleRef,\n projectableNodes: portal.projectableNodes || undefined,\n bindings: portal.bindings || undefined,\n directives: portal.directives || undefined,\n });\n\n this.setDisposeFn(() => componentRef.destroy());\n } else {\n if ((typeof ngDevMode === 'undefined' || ngDevMode) && !this._appRef) {\n throw Error('Cannot attach component portal to outlet without an ApplicationRef.');\n }\n const appRef = this._appRef!;\n\n const elementInjector = portal.injector || this._defaultInjector || Injector.NULL;\n const environmentInjector = elementInjector.get(EnvironmentInjector, appRef.injector);\n componentRef = createComponent(portal.component, {\n elementInjector,\n environmentInjector,\n projectableNodes: portal.projectableNodes || undefined,\n bindings: portal.bindings || undefined,\n directives: portal.directives || undefined,\n });\n\n appRef.attachView(componentRef.hostView);\n this.setDisposeFn(() => {\n // Verify that the ApplicationRef has registered views before trying to detach a host view.\n // This check also protects the `detachView` from being called on a destroyed ApplicationRef.\n if (appRef.viewCount > 0) {\n appRef.detachView(componentRef.hostView);\n }\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 injector: portal.injector,\n });\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 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.outletElement.ownerDocument.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 this.outletElement.remove();\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 * @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.dev/license\n */\n\nimport {\n ComponentRef,\n Directive,\n EmbeddedViewRef,\n EventEmitter,\n NgModule,\n OnDestroy,\n OnInit,\n Output,\n TemplateRef,\n ViewContainerRef,\n Input,\n inject,\n NgModuleRef,\n DOCUMENT,\n} from '@angular/core';\n\nimport {BasePortalOutlet, ComponentPortal, Portal, TemplatePortal, DomPortal} from './portal';\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() {\n const templateRef = inject<TemplateRef<any>>(TemplateRef);\n const viewContainerRef = inject(ViewContainerRef);\n\n super(templateRef, viewContainerRef);\n }\n}\n\n/**\n * Possible attached references to the CdkPortalOutlet.\n */\nexport type CdkPortalOutletAttachedRef = ComponentRef<any> | EmbeddedViewRef<any> | null;\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})\nexport class CdkPortalOutlet extends BasePortalOutlet implements OnInit, OnDestroy {\n private _moduleRef = inject(NgModuleRef, {optional: true});\n private _document = inject(DOCUMENT);\n private _viewContainerRef = inject(ViewContainerRef);\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 = null;\n\n /** Portal associated with the Portal outlet. */\n @Input('cdkPortalOutlet')\n get portal(): Portal<any> | null {\n return this._attachedPortal;\n }\n\n set portal(portal: Portal<any> | null | undefined | '') {\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 || null;\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._attachedRef = this._attachedPortal = null;\n }\n\n /**\n * Attach the given ComponentPortal to this PortalOutlet.\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 =\n portal.viewContainerRef != null ? portal.viewContainerRef : this._viewContainerRef;\n\n const ref = viewContainerRef.createComponent(portal.component, {\n index: viewContainerRef.length,\n injector: portal.injector || viewContainerRef.injector,\n projectableNodes: portal.projectableNodes || undefined,\n ngModuleRef: this._moduleRef || undefined,\n bindings: portal.bindings || undefined,\n directives: portal.directives || undefined,\n });\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 injector: portal.injector,\n });\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 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 (\n nativeElement.nodeType === nativeElement.ELEMENT_NODE\n ? nativeElement\n : nativeElement.parentNode!\n ) as HTMLElement;\n }\n}\n\n@NgModule({\n imports: [CdkPortal, CdkPortalOutlet],\n exports: [CdkPortal, CdkPortalOutlet],\n})\nexport class PortalModule {}\n"],"names":[],"mappings":"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"}
|
package/fesm2022/private.mjs
CHANGED
|
@@ -5,7 +5,7 @@ import { ViewEncapsulation, Component, SecurityContext } from '@angular/core';
|
|
|
5
5
|
class _VisuallyHiddenLoader {
|
|
6
6
|
static ɵfac = i0.ɵɵngDeclareFactory({
|
|
7
7
|
minVersion: "12.0.0",
|
|
8
|
-
version: "22.1.0-next.
|
|
8
|
+
version: "22.1.0-next.6",
|
|
9
9
|
ngImport: i0,
|
|
10
10
|
type: _VisuallyHiddenLoader,
|
|
11
11
|
deps: [],
|
|
@@ -13,7 +13,7 @@ class _VisuallyHiddenLoader {
|
|
|
13
13
|
});
|
|
14
14
|
static ɵcmp = i0.ɵɵngDeclareComponent({
|
|
15
15
|
minVersion: "14.0.0",
|
|
16
|
-
version: "22.1.0-next.
|
|
16
|
+
version: "22.1.0-next.6",
|
|
17
17
|
type: _VisuallyHiddenLoader,
|
|
18
18
|
isStandalone: true,
|
|
19
19
|
selector: "ng-component",
|
|
@@ -27,7 +27,7 @@ class _VisuallyHiddenLoader {
|
|
|
27
27
|
}
|
|
28
28
|
i0.ɵɵngDeclareClassMetadata({
|
|
29
29
|
minVersion: "12.0.0",
|
|
30
|
-
version: "22.1.0-next.
|
|
30
|
+
version: "22.1.0-next.6",
|
|
31
31
|
ngImport: i0,
|
|
32
32
|
type: _VisuallyHiddenLoader,
|
|
33
33
|
decorators: [{
|
|
@@ -48,9 +48,13 @@ function getPolicy() {
|
|
|
48
48
|
if (typeof window !== 'undefined') {
|
|
49
49
|
const ttWindow = window;
|
|
50
50
|
if (ttWindow.trustedTypes !== undefined) {
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
51
|
+
try {
|
|
52
|
+
policy = ttWindow.trustedTypes.createPolicy('angular#components', {
|
|
53
|
+
createHTML: s => s
|
|
54
|
+
});
|
|
55
|
+
} catch (error) {
|
|
56
|
+
console.error(error);
|
|
57
|
+
}
|
|
54
58
|
}
|
|
55
59
|
}
|
|
56
60
|
}
|
package/fesm2022/private.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"private.mjs","sources":["../../../../../darwin_arm64-fastbuild-ST-fdfa778d11ba/bin/src/cdk/private/visually-hidden/visually-hidden.ts","../../../../../darwin_arm64-fastbuild-ST-fdfa778d11ba/bin/src/cdk/private/trusted-types.ts","../../../../../darwin_arm64-fastbuild-ST-fdfa778d11ba/bin/src/cdk/private/inner-html.ts"],"sourcesContent":["/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.dev/license\n */\n\nimport {Component, ViewEncapsulation} from '@angular/core';\n\n/**\n * Component used to load the .cdk-visually-hidden styles.\n * @docs-private\n */\n@Component({\n styleUrl: 'visually-hidden.css',\n exportAs: 'cdkVisuallyHidden',\n encapsulation: ViewEncapsulation.None,\n template: '',\n})\nexport class _VisuallyHiddenLoader {}\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.dev/license\n */\n\n// A module to facilitate use of a Trusted Types policy internally within\n// Angular Material. It lazily constructs the Trusted Types policy, providing\n// helper utilities for promoting strings to Trusted Types. When Trusted Types\n// are not available, strings are used as a fallback.\n// All use of this module is security-sensitive and should go through security review.\n\nexport interface TrustedHTML {\n __brand__: 'TrustedHTML';\n}\n\ninterface TrustedTypePolicyFactory {\n createPolicy(\n policyName: string,\n policyOptions: {\n createHTML?: (input: string) => string;\n },\n ): TrustedTypePolicy;\n}\n\ninterface TrustedTypePolicy {\n createHTML(input: string): TrustedHTML;\n}\n\n/**\n * The Trusted Types policy, or null if Trusted Types are not\n * enabled/supported, or undefined if the policy has not been created yet.\n */\nlet policy: TrustedTypePolicy | null | undefined;\n\n/**\n * Returns the Trusted Types policy, or null if Trusted Types are not\n * enabled/supported. The first call to this function will create the policy.\n */\nfunction getPolicy(): TrustedTypePolicy | null {\n if (policy === undefined) {\n policy = null;\n if (typeof window !== 'undefined') {\n const ttWindow = window as unknown as {trustedTypes?: TrustedTypePolicyFactory};\n if (ttWindow.trustedTypes !== undefined) {\n policy = ttWindow.trustedTypes.createPolicy('angular#components', {\n
|
|
1
|
+
{"version":3,"file":"private.mjs","sources":["../../../../../darwin_arm64-fastbuild-ST-fdfa778d11ba/bin/src/cdk/private/visually-hidden/visually-hidden.ts","../../../../../darwin_arm64-fastbuild-ST-fdfa778d11ba/bin/src/cdk/private/trusted-types.ts","../../../../../darwin_arm64-fastbuild-ST-fdfa778d11ba/bin/src/cdk/private/inner-html.ts"],"sourcesContent":["/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.dev/license\n */\n\nimport {Component, ViewEncapsulation} from '@angular/core';\n\n/**\n * Component used to load the .cdk-visually-hidden styles.\n * @docs-private\n */\n@Component({\n styleUrl: 'visually-hidden.css',\n exportAs: 'cdkVisuallyHidden',\n encapsulation: ViewEncapsulation.None,\n template: '',\n})\nexport class _VisuallyHiddenLoader {}\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.dev/license\n */\n\n// A module to facilitate use of a Trusted Types policy internally within\n// Angular Material. It lazily constructs the Trusted Types policy, providing\n// helper utilities for promoting strings to Trusted Types. When Trusted Types\n// are not available, strings are used as a fallback.\n// All use of this module is security-sensitive and should go through security review.\n\nexport interface TrustedHTML {\n __brand__: 'TrustedHTML';\n}\n\ninterface TrustedTypePolicyFactory {\n createPolicy(\n policyName: string,\n policyOptions: {\n createHTML?: (input: string) => string;\n },\n ): TrustedTypePolicy;\n}\n\ninterface TrustedTypePolicy {\n createHTML(input: string): TrustedHTML;\n}\n\n/**\n * The Trusted Types policy, or null if Trusted Types are not\n * enabled/supported, or undefined if the policy has not been created yet.\n */\nlet policy: TrustedTypePolicy | null | undefined;\n\n/**\n * Returns the Trusted Types policy, or null if Trusted Types are not\n * enabled/supported. The first call to this function will create the policy.\n */\nfunction getPolicy(): TrustedTypePolicy | null {\n if (policy === undefined) {\n policy = null;\n if (typeof window !== 'undefined') {\n const ttWindow = window as unknown as {trustedTypes?: TrustedTypePolicyFactory};\n if (ttWindow.trustedTypes !== undefined) {\n try {\n policy = ttWindow.trustedTypes.createPolicy('angular#components', {\n createHTML: (s: string) => s,\n });\n } catch (error) {\n // createPolicy can throw if the name is already registered, or if\n // window.trustedTypes was DOM-clobbered with an HTML element before\n // Angular bootstrapped. trustedHTMLFromString falls back to plain\n // strings — sanitization in _setInnerHtml still runs.\n console.error(error);\n }\n }\n }\n }\n return policy;\n}\n\n/**\n * Unsafely promote a string to a TrustedHTML, falling back to strings when\n * Trusted Types are not available.\n *\n * Important!!! This is a security-sensitive function; any use of this function\n * must go through security review. In particular, it must be assured that the\n * provided string will never cause an XSS vulnerability if used in a context\n * that will be interpreted as HTML by a browser, e.g. when assigning to\n * element.innerHTML.\n */\nexport function trustedHTMLFromString(html: string): TrustedHTML {\n return getPolicy()?.createHTML(html) || (html as unknown as TrustedHTML);\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.dev/license\n */\n\nimport {SecurityContext} from '@angular/core';\nimport {DomSanitizer, SafeHtml} from '@angular/platform-browser';\nimport {trustedHTMLFromString} from './trusted-types';\n\n// !!!Note!!! this file isn't synced into g3, but is replaced with a version that uses\n// internal-specific APIs. The internal version may have to be updated if the signature of\n// the function changes.\n\n/** Sanitizes and sets the `innerHTML` of an element. */\nexport function _setInnerHtml(element: HTMLElement, html: SafeHtml, sanitizer: DomSanitizer): void {\n const cleanHtml = sanitizer.sanitize(SecurityContext.HTML, html);\n\n if (cleanHtml === null && (typeof ngDevMode === 'undefined' || ngDevMode)) {\n throw new Error(`Could not sanitize HTML: ${html}`);\n }\n\n element.innerHTML = trustedHTMLFromString(cleanHtml || '') as unknown as string;\n}\n"],"names":[],"mappings":";;;;MAoBa,qBAAqB,CAAA;;;;;UAArB,qBAAqB;AAAA,IAAA,IAAA,EAAA,EAAA;AAAA,IAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA;AAAA,GAAA,CAAA;AAArB,EAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA;AAAA,IAAA,UAAA,EAAA,QAAA;AAAA,IAAA,OAAA,EAAA,eAAA;AAAA,IAAA,IAAA,EAAA,qBAAqB;;;;;cAFtB,EAAE;AAAA,IAAA,QAAA,EAAA,IAAA;IAAA,MAAA,EAAA,CAAA,yVAAA,CAAA;AAAA,IAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA;AAAA,GAAA,CAAA;;;;;;QAED,qBAAqB;AAAA,EAAA,UAAA,EAAA,CAAA;UANjC,SAAS;AAEE,IAAA,IAAA,EAAA,CAAA;AAAA,MAAA,QAAA,EAAA,mBAAmB;MAAA,aAAA,EACd,iBAAiB,CAAC,IAAI;gBAC3B,EAAE;MAAA,MAAA,EAAA,CAAA,yVAAA;KAAA;;;;ACiBd,IAAI,MAA4C;AAMhD,SAAS,SAAS,GAAA;EAChB,IAAI,MAAM,KAAK,SAAS,EAAE;AACxB,IAAA,MAAM,GAAG,IAAI;AACb,IAAA,IAAI,OAAO,MAAM,KAAK,WAAW,EAAE;MACjC,MAAM,QAAQ,GAAG,MAA8D;AAC/E,MAAA,IAAI,QAAQ,CAAC,YAAY,KAAK,SAAS,EAAE;QACvC,IAAI;UACF,MAAM,GAAG,QAAQ,CAAC,YAAY,CAAC,YAAY,CAAC,oBAAoB,EAAE;YAChE,UAAU,EAAG,CAAS,IAAK;AAC5B,WAAA,CAAC;QACJ,CAAA,CAAE,OAAO,KAAK,EAAE;AAKd,UAAA,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC;AACtB,QAAA;AACF,MAAA;AACF,IAAA;AACF,EAAA;AACA,EAAA,OAAO,MAAM;AACf;AAYM,SAAU,qBAAqB,CAAC,IAAY,EAAA;EAChD,OAAO,SAAS,EAAE,EAAE,UAAU,CAAC,IAAI,CAAC,IAAK,IAA+B;AAC1E;;SC3DgB,aAAa,CAAC,OAAoB,EAAE,IAAc,EAAE,SAAuB,EAAA;EACzF,MAAM,SAAS,GAAG,SAAS,CAAC,QAAQ,CAAC,eAAe,CAAC,IAAI,EAAE,IAAI,CAAC;EAEhE,IAAI,SAAS,KAAK,IAAI,KAAK,OAAO,SAAS,KAAK,WAAW,IAAI,SAAS,CAAC,EAAE;AACzE,IAAA,MAAM,IAAI,KAAK,CAAC,CAAA,yBAAA,EAA4B,IAAI,EAAE,CAAC;AACrD,EAAA;EAEA,OAAO,CAAC,SAAS,GAAG,qBAAqB,CAAC,SAAS,IAAI,EAAE,CAAsB;AACjF;;;;"}
|
package/fesm2022/scrolling.mjs
CHANGED
|
@@ -139,7 +139,7 @@ class CdkFixedSizeVirtualScroll {
|
|
|
139
139
|
}
|
|
140
140
|
static ɵfac = i0.ɵɵngDeclareFactory({
|
|
141
141
|
minVersion: "12.0.0",
|
|
142
|
-
version: "22.1.0-next.
|
|
142
|
+
version: "22.1.0-next.6",
|
|
143
143
|
ngImport: i0,
|
|
144
144
|
type: CdkFixedSizeVirtualScroll,
|
|
145
145
|
deps: [],
|
|
@@ -147,7 +147,7 @@ class CdkFixedSizeVirtualScroll {
|
|
|
147
147
|
});
|
|
148
148
|
static ɵdir = i0.ɵɵngDeclareDirective({
|
|
149
149
|
minVersion: "14.0.0",
|
|
150
|
-
version: "22.1.0-next.
|
|
150
|
+
version: "22.1.0-next.6",
|
|
151
151
|
type: CdkFixedSizeVirtualScroll,
|
|
152
152
|
isStandalone: true,
|
|
153
153
|
selector: "cdk-virtual-scroll-viewport[itemSize]",
|
|
@@ -167,7 +167,7 @@ class CdkFixedSizeVirtualScroll {
|
|
|
167
167
|
}
|
|
168
168
|
i0.ɵɵngDeclareClassMetadata({
|
|
169
169
|
minVersion: "12.0.0",
|
|
170
|
-
version: "22.1.0-next.
|
|
170
|
+
version: "22.1.0-next.6",
|
|
171
171
|
ngImport: i0,
|
|
172
172
|
type: CdkFixedSizeVirtualScroll,
|
|
173
173
|
decorators: [{
|
|
@@ -266,7 +266,7 @@ class ScrollDispatcher {
|
|
|
266
266
|
}
|
|
267
267
|
static ɵfac = i0.ɵɵngDeclareFactory({
|
|
268
268
|
minVersion: "12.0.0",
|
|
269
|
-
version: "22.1.0-next.
|
|
269
|
+
version: "22.1.0-next.6",
|
|
270
270
|
ngImport: i0,
|
|
271
271
|
type: ScrollDispatcher,
|
|
272
272
|
deps: [],
|
|
@@ -274,14 +274,14 @@ class ScrollDispatcher {
|
|
|
274
274
|
});
|
|
275
275
|
static ɵprov = i0.ɵɵngDeclareService({
|
|
276
276
|
minVersion: "22.0.0",
|
|
277
|
-
version: "22.1.0-next.
|
|
277
|
+
version: "22.1.0-next.6",
|
|
278
278
|
ngImport: i0,
|
|
279
279
|
type: ScrollDispatcher
|
|
280
280
|
});
|
|
281
281
|
}
|
|
282
282
|
i0.ɵɵngDeclareClassMetadata({
|
|
283
283
|
minVersion: "12.0.0",
|
|
284
|
-
version: "22.1.0-next.
|
|
284
|
+
version: "22.1.0-next.6",
|
|
285
285
|
ngImport: i0,
|
|
286
286
|
type: ScrollDispatcher,
|
|
287
287
|
decorators: [{
|
|
@@ -397,7 +397,7 @@ class CdkScrollable {
|
|
|
397
397
|
}
|
|
398
398
|
static ɵfac = i0.ɵɵngDeclareFactory({
|
|
399
399
|
minVersion: "12.0.0",
|
|
400
|
-
version: "22.1.0-next.
|
|
400
|
+
version: "22.1.0-next.6",
|
|
401
401
|
ngImport: i0,
|
|
402
402
|
type: CdkScrollable,
|
|
403
403
|
deps: [],
|
|
@@ -405,7 +405,7 @@ class CdkScrollable {
|
|
|
405
405
|
});
|
|
406
406
|
static ɵdir = i0.ɵɵngDeclareDirective({
|
|
407
407
|
minVersion: "14.0.0",
|
|
408
|
-
version: "22.1.0-next.
|
|
408
|
+
version: "22.1.0-next.6",
|
|
409
409
|
type: CdkScrollable,
|
|
410
410
|
isStandalone: true,
|
|
411
411
|
selector: "[cdk-scrollable], [cdkScrollable]",
|
|
@@ -414,7 +414,7 @@ class CdkScrollable {
|
|
|
414
414
|
}
|
|
415
415
|
i0.ɵɵngDeclareClassMetadata({
|
|
416
416
|
minVersion: "12.0.0",
|
|
417
|
-
version: "22.1.0-next.
|
|
417
|
+
version: "22.1.0-next.6",
|
|
418
418
|
ngImport: i0,
|
|
419
419
|
type: CdkScrollable,
|
|
420
420
|
decorators: [{
|
|
@@ -511,7 +511,7 @@ class ViewportRuler {
|
|
|
511
511
|
}
|
|
512
512
|
static ɵfac = i0.ɵɵngDeclareFactory({
|
|
513
513
|
minVersion: "12.0.0",
|
|
514
|
-
version: "22.1.0-next.
|
|
514
|
+
version: "22.1.0-next.6",
|
|
515
515
|
ngImport: i0,
|
|
516
516
|
type: ViewportRuler,
|
|
517
517
|
deps: [],
|
|
@@ -519,14 +519,14 @@ class ViewportRuler {
|
|
|
519
519
|
});
|
|
520
520
|
static ɵprov = i0.ɵɵngDeclareService({
|
|
521
521
|
minVersion: "22.0.0",
|
|
522
|
-
version: "22.1.0-next.
|
|
522
|
+
version: "22.1.0-next.6",
|
|
523
523
|
ngImport: i0,
|
|
524
524
|
type: ViewportRuler
|
|
525
525
|
});
|
|
526
526
|
}
|
|
527
527
|
i0.ɵɵngDeclareClassMetadata({
|
|
528
528
|
minVersion: "12.0.0",
|
|
529
|
-
version: "22.1.0-next.
|
|
529
|
+
version: "22.1.0-next.6",
|
|
530
530
|
ngImport: i0,
|
|
531
531
|
type: ViewportRuler,
|
|
532
532
|
decorators: [{
|
|
@@ -543,7 +543,7 @@ class CdkVirtualScrollable extends CdkScrollable {
|
|
|
543
543
|
}
|
|
544
544
|
static ɵfac = i0.ɵɵngDeclareFactory({
|
|
545
545
|
minVersion: "12.0.0",
|
|
546
|
-
version: "22.1.0-next.
|
|
546
|
+
version: "22.1.0-next.6",
|
|
547
547
|
ngImport: i0,
|
|
548
548
|
type: CdkVirtualScrollable,
|
|
549
549
|
deps: null,
|
|
@@ -551,7 +551,7 @@ class CdkVirtualScrollable extends CdkScrollable {
|
|
|
551
551
|
});
|
|
552
552
|
static ɵdir = i0.ɵɵngDeclareDirective({
|
|
553
553
|
minVersion: "14.0.0",
|
|
554
|
-
version: "22.1.0-next.
|
|
554
|
+
version: "22.1.0-next.6",
|
|
555
555
|
type: CdkVirtualScrollable,
|
|
556
556
|
isStandalone: true,
|
|
557
557
|
usesInheritance: true,
|
|
@@ -560,7 +560,7 @@ class CdkVirtualScrollable extends CdkScrollable {
|
|
|
560
560
|
}
|
|
561
561
|
i0.ɵɵngDeclareClassMetadata({
|
|
562
562
|
minVersion: "12.0.0",
|
|
563
|
-
version: "22.1.0-next.
|
|
563
|
+
version: "22.1.0-next.6",
|
|
564
564
|
ngImport: i0,
|
|
565
565
|
type: CdkVirtualScrollable,
|
|
566
566
|
decorators: [{
|
|
@@ -851,7 +851,7 @@ class CdkVirtualScrollViewport extends CdkVirtualScrollable {
|
|
|
851
851
|
}
|
|
852
852
|
static ɵfac = i0.ɵɵngDeclareFactory({
|
|
853
853
|
minVersion: "12.0.0",
|
|
854
|
-
version: "22.1.0-next.
|
|
854
|
+
version: "22.1.0-next.6",
|
|
855
855
|
ngImport: i0,
|
|
856
856
|
type: CdkVirtualScrollViewport,
|
|
857
857
|
deps: [],
|
|
@@ -859,7 +859,7 @@ class CdkVirtualScrollViewport extends CdkVirtualScrollable {
|
|
|
859
859
|
});
|
|
860
860
|
static ɵcmp = i0.ɵɵngDeclareComponent({
|
|
861
861
|
minVersion: "16.1.0",
|
|
862
|
-
version: "22.1.0-next.
|
|
862
|
+
version: "22.1.0-next.6",
|
|
863
863
|
type: CdkVirtualScrollViewport,
|
|
864
864
|
isStandalone: true,
|
|
865
865
|
selector: "cdk-virtual-scroll-viewport",
|
|
@@ -902,7 +902,7 @@ class CdkVirtualScrollViewport extends CdkVirtualScrollable {
|
|
|
902
902
|
}
|
|
903
903
|
i0.ɵɵngDeclareClassMetadata({
|
|
904
904
|
minVersion: "12.0.0",
|
|
905
|
-
version: "22.1.0-next.
|
|
905
|
+
version: "22.1.0-next.6",
|
|
906
906
|
ngImport: i0,
|
|
907
907
|
type: CdkVirtualScrollViewport,
|
|
908
908
|
decorators: [{
|
|
@@ -1148,7 +1148,7 @@ class CdkVirtualForOf {
|
|
|
1148
1148
|
}
|
|
1149
1149
|
static ɵfac = i0.ɵɵngDeclareFactory({
|
|
1150
1150
|
minVersion: "12.0.0",
|
|
1151
|
-
version: "22.1.0-next.
|
|
1151
|
+
version: "22.1.0-next.6",
|
|
1152
1152
|
ngImport: i0,
|
|
1153
1153
|
type: CdkVirtualForOf,
|
|
1154
1154
|
deps: [],
|
|
@@ -1156,7 +1156,7 @@ class CdkVirtualForOf {
|
|
|
1156
1156
|
});
|
|
1157
1157
|
static ɵdir = i0.ɵɵngDeclareDirective({
|
|
1158
1158
|
minVersion: "14.0.0",
|
|
1159
|
-
version: "22.1.0-next.
|
|
1159
|
+
version: "22.1.0-next.6",
|
|
1160
1160
|
type: CdkVirtualForOf,
|
|
1161
1161
|
isStandalone: true,
|
|
1162
1162
|
selector: "[cdkVirtualFor][cdkVirtualForOf]",
|
|
@@ -1171,7 +1171,7 @@ class CdkVirtualForOf {
|
|
|
1171
1171
|
}
|
|
1172
1172
|
i0.ɵɵngDeclareClassMetadata({
|
|
1173
1173
|
minVersion: "12.0.0",
|
|
1174
|
-
version: "22.1.0-next.
|
|
1174
|
+
version: "22.1.0-next.6",
|
|
1175
1175
|
ngImport: i0,
|
|
1176
1176
|
type: CdkVirtualForOf,
|
|
1177
1177
|
decorators: [{
|
|
@@ -1203,7 +1203,7 @@ class CdkVirtualScrollableElement extends CdkVirtualScrollable {
|
|
|
1203
1203
|
}
|
|
1204
1204
|
static ɵfac = i0.ɵɵngDeclareFactory({
|
|
1205
1205
|
minVersion: "12.0.0",
|
|
1206
|
-
version: "22.1.0-next.
|
|
1206
|
+
version: "22.1.0-next.6",
|
|
1207
1207
|
ngImport: i0,
|
|
1208
1208
|
type: CdkVirtualScrollableElement,
|
|
1209
1209
|
deps: null,
|
|
@@ -1211,7 +1211,7 @@ class CdkVirtualScrollableElement extends CdkVirtualScrollable {
|
|
|
1211
1211
|
});
|
|
1212
1212
|
static ɵdir = i0.ɵɵngDeclareDirective({
|
|
1213
1213
|
minVersion: "14.0.0",
|
|
1214
|
-
version: "22.1.0-next.
|
|
1214
|
+
version: "22.1.0-next.6",
|
|
1215
1215
|
type: CdkVirtualScrollableElement,
|
|
1216
1216
|
isStandalone: true,
|
|
1217
1217
|
selector: "[cdkVirtualScrollingElement]",
|
|
@@ -1228,7 +1228,7 @@ class CdkVirtualScrollableElement extends CdkVirtualScrollable {
|
|
|
1228
1228
|
}
|
|
1229
1229
|
i0.ɵɵngDeclareClassMetadata({
|
|
1230
1230
|
minVersion: "12.0.0",
|
|
1231
|
-
version: "22.1.0-next.
|
|
1231
|
+
version: "22.1.0-next.6",
|
|
1232
1232
|
ngImport: i0,
|
|
1233
1233
|
type: CdkVirtualScrollableElement,
|
|
1234
1234
|
decorators: [{
|
|
@@ -1258,7 +1258,7 @@ class CdkVirtualScrollableWindow extends CdkVirtualScrollable {
|
|
|
1258
1258
|
}
|
|
1259
1259
|
static ɵfac = i0.ɵɵngDeclareFactory({
|
|
1260
1260
|
minVersion: "12.0.0",
|
|
1261
|
-
version: "22.1.0-next.
|
|
1261
|
+
version: "22.1.0-next.6",
|
|
1262
1262
|
ngImport: i0,
|
|
1263
1263
|
type: CdkVirtualScrollableWindow,
|
|
1264
1264
|
deps: [],
|
|
@@ -1266,7 +1266,7 @@ class CdkVirtualScrollableWindow extends CdkVirtualScrollable {
|
|
|
1266
1266
|
});
|
|
1267
1267
|
static ɵdir = i0.ɵɵngDeclareDirective({
|
|
1268
1268
|
minVersion: "14.0.0",
|
|
1269
|
-
version: "22.1.0-next.
|
|
1269
|
+
version: "22.1.0-next.6",
|
|
1270
1270
|
type: CdkVirtualScrollableWindow,
|
|
1271
1271
|
isStandalone: true,
|
|
1272
1272
|
selector: "cdk-virtual-scroll-viewport[scrollWindow]",
|
|
@@ -1280,7 +1280,7 @@ class CdkVirtualScrollableWindow extends CdkVirtualScrollable {
|
|
|
1280
1280
|
}
|
|
1281
1281
|
i0.ɵɵngDeclareClassMetadata({
|
|
1282
1282
|
minVersion: "12.0.0",
|
|
1283
|
-
version: "22.1.0-next.
|
|
1283
|
+
version: "22.1.0-next.6",
|
|
1284
1284
|
ngImport: i0,
|
|
1285
1285
|
type: CdkVirtualScrollableWindow,
|
|
1286
1286
|
decorators: [{
|
|
@@ -1299,7 +1299,7 @@ i0.ɵɵngDeclareClassMetadata({
|
|
|
1299
1299
|
class CdkScrollableModule {
|
|
1300
1300
|
static ɵfac = i0.ɵɵngDeclareFactory({
|
|
1301
1301
|
minVersion: "12.0.0",
|
|
1302
|
-
version: "22.1.0-next.
|
|
1302
|
+
version: "22.1.0-next.6",
|
|
1303
1303
|
ngImport: i0,
|
|
1304
1304
|
type: CdkScrollableModule,
|
|
1305
1305
|
deps: [],
|
|
@@ -1307,7 +1307,7 @@ class CdkScrollableModule {
|
|
|
1307
1307
|
});
|
|
1308
1308
|
static ɵmod = i0.ɵɵngDeclareNgModule({
|
|
1309
1309
|
minVersion: "14.0.0",
|
|
1310
|
-
version: "22.1.0-next.
|
|
1310
|
+
version: "22.1.0-next.6",
|
|
1311
1311
|
ngImport: i0,
|
|
1312
1312
|
type: CdkScrollableModule,
|
|
1313
1313
|
imports: [CdkScrollable],
|
|
@@ -1315,14 +1315,14 @@ class CdkScrollableModule {
|
|
|
1315
1315
|
});
|
|
1316
1316
|
static ɵinj = i0.ɵɵngDeclareInjector({
|
|
1317
1317
|
minVersion: "12.0.0",
|
|
1318
|
-
version: "22.1.0-next.
|
|
1318
|
+
version: "22.1.0-next.6",
|
|
1319
1319
|
ngImport: i0,
|
|
1320
1320
|
type: CdkScrollableModule
|
|
1321
1321
|
});
|
|
1322
1322
|
}
|
|
1323
1323
|
i0.ɵɵngDeclareClassMetadata({
|
|
1324
1324
|
minVersion: "12.0.0",
|
|
1325
|
-
version: "22.1.0-next.
|
|
1325
|
+
version: "22.1.0-next.6",
|
|
1326
1326
|
ngImport: i0,
|
|
1327
1327
|
type: CdkScrollableModule,
|
|
1328
1328
|
decorators: [{
|
|
@@ -1336,7 +1336,7 @@ i0.ɵɵngDeclareClassMetadata({
|
|
|
1336
1336
|
class ScrollingModule {
|
|
1337
1337
|
static ɵfac = i0.ɵɵngDeclareFactory({
|
|
1338
1338
|
minVersion: "12.0.0",
|
|
1339
|
-
version: "22.1.0-next.
|
|
1339
|
+
version: "22.1.0-next.6",
|
|
1340
1340
|
ngImport: i0,
|
|
1341
1341
|
type: ScrollingModule,
|
|
1342
1342
|
deps: [],
|
|
@@ -1344,7 +1344,7 @@ class ScrollingModule {
|
|
|
1344
1344
|
});
|
|
1345
1345
|
static ɵmod = i0.ɵɵngDeclareNgModule({
|
|
1346
1346
|
minVersion: "14.0.0",
|
|
1347
|
-
version: "22.1.0-next.
|
|
1347
|
+
version: "22.1.0-next.6",
|
|
1348
1348
|
ngImport: i0,
|
|
1349
1349
|
type: ScrollingModule,
|
|
1350
1350
|
imports: [BidiModule, CdkScrollableModule, CdkVirtualScrollViewport, CdkFixedSizeVirtualScroll, CdkVirtualForOf, CdkVirtualScrollableWindow, CdkVirtualScrollableElement],
|
|
@@ -1352,7 +1352,7 @@ class ScrollingModule {
|
|
|
1352
1352
|
});
|
|
1353
1353
|
static ɵinj = i0.ɵɵngDeclareInjector({
|
|
1354
1354
|
minVersion: "12.0.0",
|
|
1355
|
-
version: "22.1.0-next.
|
|
1355
|
+
version: "22.1.0-next.6",
|
|
1356
1356
|
ngImport: i0,
|
|
1357
1357
|
type: ScrollingModule,
|
|
1358
1358
|
imports: [BidiModule, CdkScrollableModule, BidiModule, CdkScrollableModule]
|
|
@@ -1360,7 +1360,7 @@ class ScrollingModule {
|
|
|
1360
1360
|
}
|
|
1361
1361
|
i0.ɵɵngDeclareClassMetadata({
|
|
1362
1362
|
minVersion: "12.0.0",
|
|
1363
|
-
version: "22.1.0-next.
|
|
1363
|
+
version: "22.1.0-next.6",
|
|
1364
1364
|
ngImport: i0,
|
|
1365
1365
|
type: ScrollingModule,
|
|
1366
1366
|
decorators: [{
|