UNPKG

carbon-components-angular

Version:
67 lines (63 loc) 2.69 kB
/** * * carbon-angular v0.0.0 | base-modal.service.d.ts * * Copyright 2014, 2025 IBM * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ import { ComponentRef, EnvironmentInjector } from "@angular/core"; import { PlaceholderService } from "carbon-components-angular/placeholder"; import * as i0 from "@angular/core"; /** * Modal service handles instantiating and destroying modal instances. * Uses PlaceholderService to track open instances, and for it's placeholder view reference. */ export declare class BaseModalService { placeholderService: PlaceholderService; protected static modalList: Array<ComponentRef<any>>; /** * Current module/component injection enviornment * Allows modules to use providers from calling component * * Root Module/ * └── Lazy loaded Feature Module/ * ├── Provides Service & imports modules * ├── Modal component (component that extends base component) * └── Modal component launcher (dynamically creates modal component) * * Passing EnvironmentInjector in `createComponent` will look for provider declaration in feature * module instead of root module. This is required to pass correct context in a lazy-loaded applications. * Services injected in root, will also be available as feature module enviornment will also hierarchically inherit * the root services. */ protected environment: EnvironmentInjector; /** * Creates an instance of `ModalService`. */ constructor(placeholderService: PlaceholderService); /** * Creates and renders the modal component that is passed in. * `inputs` is an optional parameter of `data` that can be passed to the `Modal` component. */ create<T>(data: { component: any; inputs?: any; }): ComponentRef<any>; /** * Destroys the modal on the supplied index. * When called without parameters it destroys the most recently created/top most modal. */ destroy(index?: number): void; static ɵfac: i0.ɵɵFactoryDeclaration<BaseModalService, never>; static ɵprov: i0.ɵɵInjectableDeclaration<BaseModalService>; }