@angular/cdk 22.0.0-next.3 → 22.0.0-next.5
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 +23 -25
- package/fesm2022/_a11y-module-chunk.mjs.map +1 -1
- package/fesm2022/_breakpoints-observer-chunk.mjs +7 -9
- package/fesm2022/_breakpoints-observer-chunk.mjs.map +1 -1
- package/fesm2022/_directionality-chunk.mjs +3 -3
- package/fesm2022/_directionality-chunk.mjs.map +1 -1
- package/fesm2022/_focus-monitor-chunk.mjs +9 -11
- package/fesm2022/_focus-monitor-chunk.mjs.map +1 -1
- package/fesm2022/_id-generator-chunk.mjs +3 -3
- package/fesm2022/_overlay-module-chunk.mjs +41 -53
- package/fesm2022/_overlay-module-chunk.mjs.map +1 -1
- package/fesm2022/_platform-chunk.mjs +4 -6
- package/fesm2022/_platform-chunk.mjs.map +1 -1
- package/fesm2022/_style-loader-chunk.mjs +3 -3
- package/fesm2022/_unique-selection-dispatcher-chunk.mjs +3 -3
- package/fesm2022/a11y.mjs +9 -9
- package/fesm2022/a11y.mjs.map +1 -1
- package/fesm2022/accordion.mjs +10 -12
- package/fesm2022/accordion.mjs.map +1 -1
- package/fesm2022/bidi.mjs +7 -7
- package/fesm2022/cdk.mjs +1 -1
- package/fesm2022/cdk.mjs.map +1 -1
- package/fesm2022/clipboard.mjs +11 -13
- package/fesm2022/clipboard.mjs.map +1 -1
- package/fesm2022/dialog.mjs +11 -13
- package/fesm2022/dialog.mjs.map +1 -1
- package/fesm2022/drag-drop.mjs +33 -37
- package/fesm2022/drag-drop.mjs.map +1 -1
- package/fesm2022/layout.mjs +4 -4
- package/fesm2022/listbox.mjs +12 -12
- package/fesm2022/menu.mjs +49 -49
- package/fesm2022/observers-private.mjs +3 -3
- package/fesm2022/observers.mjs +14 -18
- package/fesm2022/observers.mjs.map +1 -1
- package/fesm2022/overlay.mjs +6 -10
- package/fesm2022/overlay.mjs.map +1 -1
- package/fesm2022/platform.mjs +4 -4
- package/fesm2022/portal.mjs +11 -15
- package/fesm2022/portal.mjs.map +1 -1
- package/fesm2022/private.mjs +3 -3
- package/fesm2022/scrolling.mjs +41 -53
- package/fesm2022/scrolling.mjs.map +1 -1
- package/fesm2022/stepper.mjs +24 -34
- package/fesm2022/stepper.mjs.map +1 -1
- package/fesm2022/table.mjs +83 -107
- package/fesm2022/table.mjs.map +1 -1
- package/fesm2022/text-field.mjs +17 -21
- package/fesm2022/text-field.mjs.map +1 -1
- package/fesm2022/tree.mjs +30 -42
- package/fesm2022/tree.mjs.map +1 -1
- package/package.json +1 -1
- package/schematics/ng-add/index.js +1 -1
- package/types/_a11y-module-chunk.d.ts +4 -5
- package/types/_bidi-module-chunk.d.ts +1 -1
- package/types/_focus-monitor-chunk.d.ts +1 -2
- package/types/_overlay-module-chunk.d.ts +1 -4
- package/types/_platform-chunk.d.ts +0 -2
- package/types/_portal-directives-chunk.d.ts +1 -2
- package/types/_scrolling-module-chunk.d.ts +3 -7
- package/types/a11y.d.ts +4 -4
- package/types/accordion.d.ts +0 -1
- package/types/clipboard.d.ts +1 -2
- package/types/dialog.d.ts +1 -2
- package/types/drag-drop.d.ts +6 -8
- package/types/layout.d.ts +1 -2
- package/types/observers.d.ts +0 -2
- package/types/overlay.d.ts +0 -4
- package/types/scrolling.d.ts +1 -1
- package/types/stepper.d.ts +1 -6
- package/types/table.d.ts +10 -19
- package/types/text-field.d.ts +1 -3
- package/types/tree.d.ts +2 -7
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} 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 constructor(\n component: ComponentType<T>,\n viewContainerRef?: ViewContainerRef | null,\n injector?: Injector | null,\n projectableNodes?: Node[][] | null,\n bindings?: Binding[],\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 }\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 });\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 });\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(...args: unknown[]);\n\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 constructor(...args: unknown[]);\n\n constructor() {\n super();\n }\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 });\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","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":"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"}
|
|
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} 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 constructor(\n component: ComponentType<T>,\n viewContainerRef?: ViewContainerRef | null,\n injector?: Injector | null,\n projectableNodes?: Node[][] | null,\n bindings?: Binding[],\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 }\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 });\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 });\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 });\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","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":"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"}
|
package/fesm2022/private.mjs
CHANGED
|
@@ -5,7 +5,7 @@ import { ChangeDetectionStrategy, ViewEncapsulation, Component, SecurityContext
|
|
|
5
5
|
class _VisuallyHiddenLoader {
|
|
6
6
|
static ɵfac = i0.ɵɵngDeclareFactory({
|
|
7
7
|
minVersion: "12.0.0",
|
|
8
|
-
version: "22.0.0-next.
|
|
8
|
+
version: "22.0.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.0.0-next.
|
|
16
|
+
version: "22.0.0-next.6",
|
|
17
17
|
type: _VisuallyHiddenLoader,
|
|
18
18
|
isStandalone: true,
|
|
19
19
|
selector: "ng-component",
|
|
@@ -28,7 +28,7 @@ class _VisuallyHiddenLoader {
|
|
|
28
28
|
}
|
|
29
29
|
i0.ɵɵngDeclareClassMetadata({
|
|
30
30
|
minVersion: "12.0.0",
|
|
31
|
-
version: "22.0.0-next.
|
|
31
|
+
version: "22.0.0-next.6",
|
|
32
32
|
ngImport: i0,
|
|
33
33
|
type: _VisuallyHiddenLoader,
|
|
34
34
|
decorators: [{
|
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.0.0-next.
|
|
142
|
+
version: "22.0.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.0.0-next.
|
|
150
|
+
version: "22.0.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.0.0-next.
|
|
170
|
+
version: "22.0.0-next.6",
|
|
171
171
|
ngImport: i0,
|
|
172
172
|
type: CdkFixedSizeVirtualScroll,
|
|
173
173
|
decorators: [{
|
|
@@ -200,7 +200,6 @@ class ScrollDispatcher {
|
|
|
200
200
|
_platform = inject(Platform);
|
|
201
201
|
_renderer = inject(RendererFactory2).createRenderer(null, null);
|
|
202
202
|
_cleanupGlobalListener;
|
|
203
|
-
constructor() {}
|
|
204
203
|
_scrolled = new Subject();
|
|
205
204
|
_scrolledCount = 0;
|
|
206
205
|
scrollContainers = new Map();
|
|
@@ -267,7 +266,7 @@ class ScrollDispatcher {
|
|
|
267
266
|
}
|
|
268
267
|
static ɵfac = i0.ɵɵngDeclareFactory({
|
|
269
268
|
minVersion: "12.0.0",
|
|
270
|
-
version: "22.0.0-next.
|
|
269
|
+
version: "22.0.0-next.6",
|
|
271
270
|
ngImport: i0,
|
|
272
271
|
type: ScrollDispatcher,
|
|
273
272
|
deps: [],
|
|
@@ -275,7 +274,7 @@ class ScrollDispatcher {
|
|
|
275
274
|
});
|
|
276
275
|
static ɵprov = i0.ɵɵngDeclareInjectable({
|
|
277
276
|
minVersion: "12.0.0",
|
|
278
|
-
version: "22.0.0-next.
|
|
277
|
+
version: "22.0.0-next.6",
|
|
279
278
|
ngImport: i0,
|
|
280
279
|
type: ScrollDispatcher,
|
|
281
280
|
providedIn: 'root'
|
|
@@ -283,7 +282,7 @@ class ScrollDispatcher {
|
|
|
283
282
|
}
|
|
284
283
|
i0.ɵɵngDeclareClassMetadata({
|
|
285
284
|
minVersion: "12.0.0",
|
|
286
|
-
version: "22.0.0-next.
|
|
285
|
+
version: "22.0.0-next.6",
|
|
287
286
|
ngImport: i0,
|
|
288
287
|
type: ScrollDispatcher,
|
|
289
288
|
decorators: [{
|
|
@@ -291,8 +290,7 @@ i0.ɵɵngDeclareClassMetadata({
|
|
|
291
290
|
args: [{
|
|
292
291
|
providedIn: 'root'
|
|
293
292
|
}]
|
|
294
|
-
}]
|
|
295
|
-
ctorParameters: () => []
|
|
293
|
+
}]
|
|
296
294
|
});
|
|
297
295
|
|
|
298
296
|
class CdkScrollable {
|
|
@@ -307,7 +305,6 @@ class CdkScrollable {
|
|
|
307
305
|
_renderer = inject(Renderer2);
|
|
308
306
|
_cleanupScroll;
|
|
309
307
|
_elementScrolled = new Subject();
|
|
310
|
-
constructor() {}
|
|
311
308
|
ngOnInit() {
|
|
312
309
|
this._cleanupScroll = this.ngZone.runOutsideAngular(() => this._renderer.listen(this._scrollElement, 'scroll', event => this._elementScrolled.next(event)));
|
|
313
310
|
this.scrollDispatcher.register(this);
|
|
@@ -404,7 +401,7 @@ class CdkScrollable {
|
|
|
404
401
|
}
|
|
405
402
|
static ɵfac = i0.ɵɵngDeclareFactory({
|
|
406
403
|
minVersion: "12.0.0",
|
|
407
|
-
version: "22.0.0-next.
|
|
404
|
+
version: "22.0.0-next.6",
|
|
408
405
|
ngImport: i0,
|
|
409
406
|
type: CdkScrollable,
|
|
410
407
|
deps: [],
|
|
@@ -412,7 +409,7 @@ class CdkScrollable {
|
|
|
412
409
|
});
|
|
413
410
|
static ɵdir = i0.ɵɵngDeclareDirective({
|
|
414
411
|
minVersion: "14.0.0",
|
|
415
|
-
version: "22.0.0-next.
|
|
412
|
+
version: "22.0.0-next.6",
|
|
416
413
|
type: CdkScrollable,
|
|
417
414
|
isStandalone: true,
|
|
418
415
|
selector: "[cdk-scrollable], [cdkScrollable]",
|
|
@@ -421,7 +418,7 @@ class CdkScrollable {
|
|
|
421
418
|
}
|
|
422
419
|
i0.ɵɵngDeclareClassMetadata({
|
|
423
420
|
minVersion: "12.0.0",
|
|
424
|
-
version: "22.0.0-next.
|
|
421
|
+
version: "22.0.0-next.6",
|
|
425
422
|
ngImport: i0,
|
|
426
423
|
type: CdkScrollable,
|
|
427
424
|
decorators: [{
|
|
@@ -429,8 +426,7 @@ i0.ɵɵngDeclareClassMetadata({
|
|
|
429
426
|
args: [{
|
|
430
427
|
selector: '[cdk-scrollable], [cdkScrollable]'
|
|
431
428
|
}]
|
|
432
|
-
}]
|
|
433
|
-
ctorParameters: () => []
|
|
429
|
+
}]
|
|
434
430
|
});
|
|
435
431
|
|
|
436
432
|
const DEFAULT_RESIZE_TIME = 20;
|
|
@@ -519,7 +515,7 @@ class ViewportRuler {
|
|
|
519
515
|
}
|
|
520
516
|
static ɵfac = i0.ɵɵngDeclareFactory({
|
|
521
517
|
minVersion: "12.0.0",
|
|
522
|
-
version: "22.0.0-next.
|
|
518
|
+
version: "22.0.0-next.6",
|
|
523
519
|
ngImport: i0,
|
|
524
520
|
type: ViewportRuler,
|
|
525
521
|
deps: [],
|
|
@@ -527,7 +523,7 @@ class ViewportRuler {
|
|
|
527
523
|
});
|
|
528
524
|
static ɵprov = i0.ɵɵngDeclareInjectable({
|
|
529
525
|
minVersion: "12.0.0",
|
|
530
|
-
version: "22.0.0-next.
|
|
526
|
+
version: "22.0.0-next.6",
|
|
531
527
|
ngImport: i0,
|
|
532
528
|
type: ViewportRuler,
|
|
533
529
|
providedIn: 'root'
|
|
@@ -535,7 +531,7 @@ class ViewportRuler {
|
|
|
535
531
|
}
|
|
536
532
|
i0.ɵɵngDeclareClassMetadata({
|
|
537
533
|
minVersion: "12.0.0",
|
|
538
|
-
version: "22.0.0-next.
|
|
534
|
+
version: "22.0.0-next.6",
|
|
539
535
|
ngImport: i0,
|
|
540
536
|
type: ViewportRuler,
|
|
541
537
|
decorators: [{
|
|
@@ -549,24 +545,21 @@ i0.ɵɵngDeclareClassMetadata({
|
|
|
549
545
|
|
|
550
546
|
const VIRTUAL_SCROLLABLE = new InjectionToken('VIRTUAL_SCROLLABLE');
|
|
551
547
|
class CdkVirtualScrollable extends CdkScrollable {
|
|
552
|
-
constructor() {
|
|
553
|
-
super();
|
|
554
|
-
}
|
|
555
548
|
measureViewportSize(orientation) {
|
|
556
549
|
const viewportEl = this.elementRef.nativeElement;
|
|
557
550
|
return orientation === 'horizontal' ? viewportEl.clientWidth : viewportEl.clientHeight;
|
|
558
551
|
}
|
|
559
552
|
static ɵfac = i0.ɵɵngDeclareFactory({
|
|
560
553
|
minVersion: "12.0.0",
|
|
561
|
-
version: "22.0.0-next.
|
|
554
|
+
version: "22.0.0-next.6",
|
|
562
555
|
ngImport: i0,
|
|
563
556
|
type: CdkVirtualScrollable,
|
|
564
|
-
deps:
|
|
557
|
+
deps: null,
|
|
565
558
|
target: i0.ɵɵFactoryTarget.Directive
|
|
566
559
|
});
|
|
567
560
|
static ɵdir = i0.ɵɵngDeclareDirective({
|
|
568
561
|
minVersion: "14.0.0",
|
|
569
|
-
version: "22.0.0-next.
|
|
562
|
+
version: "22.0.0-next.6",
|
|
570
563
|
type: CdkVirtualScrollable,
|
|
571
564
|
isStandalone: true,
|
|
572
565
|
usesInheritance: true,
|
|
@@ -575,13 +568,12 @@ class CdkVirtualScrollable extends CdkScrollable {
|
|
|
575
568
|
}
|
|
576
569
|
i0.ɵɵngDeclareClassMetadata({
|
|
577
570
|
minVersion: "12.0.0",
|
|
578
|
-
version: "22.0.0-next.
|
|
571
|
+
version: "22.0.0-next.6",
|
|
579
572
|
ngImport: i0,
|
|
580
573
|
type: CdkVirtualScrollable,
|
|
581
574
|
decorators: [{
|
|
582
575
|
type: Directive
|
|
583
|
-
}]
|
|
584
|
-
ctorParameters: () => []
|
|
576
|
+
}]
|
|
585
577
|
});
|
|
586
578
|
|
|
587
579
|
function rangesEqual(r1, r2) {
|
|
@@ -867,7 +859,7 @@ class CdkVirtualScrollViewport extends CdkVirtualScrollable {
|
|
|
867
859
|
}
|
|
868
860
|
static ɵfac = i0.ɵɵngDeclareFactory({
|
|
869
861
|
minVersion: "12.0.0",
|
|
870
|
-
version: "22.0.0-next.
|
|
862
|
+
version: "22.0.0-next.6",
|
|
871
863
|
ngImport: i0,
|
|
872
864
|
type: CdkVirtualScrollViewport,
|
|
873
865
|
deps: [],
|
|
@@ -875,7 +867,7 @@ class CdkVirtualScrollViewport extends CdkVirtualScrollable {
|
|
|
875
867
|
});
|
|
876
868
|
static ɵcmp = i0.ɵɵngDeclareComponent({
|
|
877
869
|
minVersion: "16.1.0",
|
|
878
|
-
version: "22.0.0-next.
|
|
870
|
+
version: "22.0.0-next.6",
|
|
879
871
|
type: CdkVirtualScrollViewport,
|
|
880
872
|
isStandalone: true,
|
|
881
873
|
selector: "cdk-virtual-scroll-viewport",
|
|
@@ -919,7 +911,7 @@ class CdkVirtualScrollViewport extends CdkVirtualScrollable {
|
|
|
919
911
|
}
|
|
920
912
|
i0.ɵɵngDeclareClassMetadata({
|
|
921
913
|
minVersion: "12.0.0",
|
|
922
|
-
version: "22.0.0-next.
|
|
914
|
+
version: "22.0.0-next.6",
|
|
923
915
|
ngImport: i0,
|
|
924
916
|
type: CdkVirtualScrollViewport,
|
|
925
917
|
decorators: [{
|
|
@@ -1166,7 +1158,7 @@ class CdkVirtualForOf {
|
|
|
1166
1158
|
}
|
|
1167
1159
|
static ɵfac = i0.ɵɵngDeclareFactory({
|
|
1168
1160
|
minVersion: "12.0.0",
|
|
1169
|
-
version: "22.0.0-next.
|
|
1161
|
+
version: "22.0.0-next.6",
|
|
1170
1162
|
ngImport: i0,
|
|
1171
1163
|
type: CdkVirtualForOf,
|
|
1172
1164
|
deps: [],
|
|
@@ -1174,7 +1166,7 @@ class CdkVirtualForOf {
|
|
|
1174
1166
|
});
|
|
1175
1167
|
static ɵdir = i0.ɵɵngDeclareDirective({
|
|
1176
1168
|
minVersion: "14.0.0",
|
|
1177
|
-
version: "22.0.0-next.
|
|
1169
|
+
version: "22.0.0-next.6",
|
|
1178
1170
|
type: CdkVirtualForOf,
|
|
1179
1171
|
isStandalone: true,
|
|
1180
1172
|
selector: "[cdkVirtualFor][cdkVirtualForOf]",
|
|
@@ -1189,7 +1181,7 @@ class CdkVirtualForOf {
|
|
|
1189
1181
|
}
|
|
1190
1182
|
i0.ɵɵngDeclareClassMetadata({
|
|
1191
1183
|
minVersion: "12.0.0",
|
|
1192
|
-
version: "22.0.0-next.
|
|
1184
|
+
version: "22.0.0-next.6",
|
|
1193
1185
|
ngImport: i0,
|
|
1194
1186
|
type: CdkVirtualForOf,
|
|
1195
1187
|
decorators: [{
|
|
@@ -1216,23 +1208,20 @@ i0.ɵɵngDeclareClassMetadata({
|
|
|
1216
1208
|
});
|
|
1217
1209
|
|
|
1218
1210
|
class CdkVirtualScrollableElement extends CdkVirtualScrollable {
|
|
1219
|
-
constructor() {
|
|
1220
|
-
super();
|
|
1221
|
-
}
|
|
1222
1211
|
measureBoundingClientRectWithScrollOffset(from) {
|
|
1223
1212
|
return this.getElementRef().nativeElement.getBoundingClientRect()[from] - this.measureScrollOffset(from);
|
|
1224
1213
|
}
|
|
1225
1214
|
static ɵfac = i0.ɵɵngDeclareFactory({
|
|
1226
1215
|
minVersion: "12.0.0",
|
|
1227
|
-
version: "22.0.0-next.
|
|
1216
|
+
version: "22.0.0-next.6",
|
|
1228
1217
|
ngImport: i0,
|
|
1229
1218
|
type: CdkVirtualScrollableElement,
|
|
1230
|
-
deps:
|
|
1219
|
+
deps: null,
|
|
1231
1220
|
target: i0.ɵɵFactoryTarget.Directive
|
|
1232
1221
|
});
|
|
1233
1222
|
static ɵdir = i0.ɵɵngDeclareDirective({
|
|
1234
1223
|
minVersion: "14.0.0",
|
|
1235
|
-
version: "22.0.0-next.
|
|
1224
|
+
version: "22.0.0-next.6",
|
|
1236
1225
|
type: CdkVirtualScrollableElement,
|
|
1237
1226
|
isStandalone: true,
|
|
1238
1227
|
selector: "[cdkVirtualScrollingElement]",
|
|
@@ -1249,7 +1238,7 @@ class CdkVirtualScrollableElement extends CdkVirtualScrollable {
|
|
|
1249
1238
|
}
|
|
1250
1239
|
i0.ɵɵngDeclareClassMetadata({
|
|
1251
1240
|
minVersion: "12.0.0",
|
|
1252
|
-
version: "22.0.0-next.
|
|
1241
|
+
version: "22.0.0-next.6",
|
|
1253
1242
|
ngImport: i0,
|
|
1254
1243
|
type: CdkVirtualScrollableElement,
|
|
1255
1244
|
decorators: [{
|
|
@@ -1264,8 +1253,7 @@ i0.ɵɵngDeclareClassMetadata({
|
|
|
1264
1253
|
'class': 'cdk-virtual-scrollable'
|
|
1265
1254
|
}
|
|
1266
1255
|
}]
|
|
1267
|
-
}]
|
|
1268
|
-
ctorParameters: () => []
|
|
1256
|
+
}]
|
|
1269
1257
|
});
|
|
1270
1258
|
|
|
1271
1259
|
class CdkVirtualScrollableWindow extends CdkVirtualScrollable {
|
|
@@ -1280,7 +1268,7 @@ class CdkVirtualScrollableWindow extends CdkVirtualScrollable {
|
|
|
1280
1268
|
}
|
|
1281
1269
|
static ɵfac = i0.ɵɵngDeclareFactory({
|
|
1282
1270
|
minVersion: "12.0.0",
|
|
1283
|
-
version: "22.0.0-next.
|
|
1271
|
+
version: "22.0.0-next.6",
|
|
1284
1272
|
ngImport: i0,
|
|
1285
1273
|
type: CdkVirtualScrollableWindow,
|
|
1286
1274
|
deps: [],
|
|
@@ -1288,7 +1276,7 @@ class CdkVirtualScrollableWindow extends CdkVirtualScrollable {
|
|
|
1288
1276
|
});
|
|
1289
1277
|
static ɵdir = i0.ɵɵngDeclareDirective({
|
|
1290
1278
|
minVersion: "14.0.0",
|
|
1291
|
-
version: "22.0.0-next.
|
|
1279
|
+
version: "22.0.0-next.6",
|
|
1292
1280
|
type: CdkVirtualScrollableWindow,
|
|
1293
1281
|
isStandalone: true,
|
|
1294
1282
|
selector: "cdk-virtual-scroll-viewport[scrollWindow]",
|
|
@@ -1302,7 +1290,7 @@ class CdkVirtualScrollableWindow extends CdkVirtualScrollable {
|
|
|
1302
1290
|
}
|
|
1303
1291
|
i0.ɵɵngDeclareClassMetadata({
|
|
1304
1292
|
minVersion: "12.0.0",
|
|
1305
|
-
version: "22.0.0-next.
|
|
1293
|
+
version: "22.0.0-next.6",
|
|
1306
1294
|
ngImport: i0,
|
|
1307
1295
|
type: CdkVirtualScrollableWindow,
|
|
1308
1296
|
decorators: [{
|
|
@@ -1321,7 +1309,7 @@ i0.ɵɵngDeclareClassMetadata({
|
|
|
1321
1309
|
class CdkScrollableModule {
|
|
1322
1310
|
static ɵfac = i0.ɵɵngDeclareFactory({
|
|
1323
1311
|
minVersion: "12.0.0",
|
|
1324
|
-
version: "22.0.0-next.
|
|
1312
|
+
version: "22.0.0-next.6",
|
|
1325
1313
|
ngImport: i0,
|
|
1326
1314
|
type: CdkScrollableModule,
|
|
1327
1315
|
deps: [],
|
|
@@ -1329,7 +1317,7 @@ class CdkScrollableModule {
|
|
|
1329
1317
|
});
|
|
1330
1318
|
static ɵmod = i0.ɵɵngDeclareNgModule({
|
|
1331
1319
|
minVersion: "14.0.0",
|
|
1332
|
-
version: "22.0.0-next.
|
|
1320
|
+
version: "22.0.0-next.6",
|
|
1333
1321
|
ngImport: i0,
|
|
1334
1322
|
type: CdkScrollableModule,
|
|
1335
1323
|
imports: [CdkScrollable],
|
|
@@ -1337,14 +1325,14 @@ class CdkScrollableModule {
|
|
|
1337
1325
|
});
|
|
1338
1326
|
static ɵinj = i0.ɵɵngDeclareInjector({
|
|
1339
1327
|
minVersion: "12.0.0",
|
|
1340
|
-
version: "22.0.0-next.
|
|
1328
|
+
version: "22.0.0-next.6",
|
|
1341
1329
|
ngImport: i0,
|
|
1342
1330
|
type: CdkScrollableModule
|
|
1343
1331
|
});
|
|
1344
1332
|
}
|
|
1345
1333
|
i0.ɵɵngDeclareClassMetadata({
|
|
1346
1334
|
minVersion: "12.0.0",
|
|
1347
|
-
version: "22.0.0-next.
|
|
1335
|
+
version: "22.0.0-next.6",
|
|
1348
1336
|
ngImport: i0,
|
|
1349
1337
|
type: CdkScrollableModule,
|
|
1350
1338
|
decorators: [{
|
|
@@ -1358,7 +1346,7 @@ i0.ɵɵngDeclareClassMetadata({
|
|
|
1358
1346
|
class ScrollingModule {
|
|
1359
1347
|
static ɵfac = i0.ɵɵngDeclareFactory({
|
|
1360
1348
|
minVersion: "12.0.0",
|
|
1361
|
-
version: "22.0.0-next.
|
|
1349
|
+
version: "22.0.0-next.6",
|
|
1362
1350
|
ngImport: i0,
|
|
1363
1351
|
type: ScrollingModule,
|
|
1364
1352
|
deps: [],
|
|
@@ -1366,7 +1354,7 @@ class ScrollingModule {
|
|
|
1366
1354
|
});
|
|
1367
1355
|
static ɵmod = i0.ɵɵngDeclareNgModule({
|
|
1368
1356
|
minVersion: "14.0.0",
|
|
1369
|
-
version: "22.0.0-next.
|
|
1357
|
+
version: "22.0.0-next.6",
|
|
1370
1358
|
ngImport: i0,
|
|
1371
1359
|
type: ScrollingModule,
|
|
1372
1360
|
imports: [BidiModule, CdkScrollableModule, CdkVirtualScrollViewport, CdkFixedSizeVirtualScroll, CdkVirtualForOf, CdkVirtualScrollableWindow, CdkVirtualScrollableElement],
|
|
@@ -1374,7 +1362,7 @@ class ScrollingModule {
|
|
|
1374
1362
|
});
|
|
1375
1363
|
static ɵinj = i0.ɵɵngDeclareInjector({
|
|
1376
1364
|
minVersion: "12.0.0",
|
|
1377
|
-
version: "22.0.0-next.
|
|
1365
|
+
version: "22.0.0-next.6",
|
|
1378
1366
|
ngImport: i0,
|
|
1379
1367
|
type: ScrollingModule,
|
|
1380
1368
|
imports: [BidiModule, CdkScrollableModule, BidiModule, CdkScrollableModule]
|
|
@@ -1382,7 +1370,7 @@ class ScrollingModule {
|
|
|
1382
1370
|
}
|
|
1383
1371
|
i0.ɵɵngDeclareClassMetadata({
|
|
1384
1372
|
minVersion: "12.0.0",
|
|
1385
|
-
version: "22.0.0-next.
|
|
1373
|
+
version: "22.0.0-next.6",
|
|
1386
1374
|
ngImport: i0,
|
|
1387
1375
|
type: ScrollingModule,
|
|
1388
1376
|
decorators: [{
|