@angular-mdl/core
Version:
Angular components, directives and styles based on material design lite https://getmdl.io.
93 lines (92 loc) • 4.42 kB
TypeScript
import { AfterContentInit, ElementRef, EventEmitter, InjectionToken, NgZone, OnChanges, OnDestroy, QueryList, Renderer2, SimpleChanges } from "@angular/core";
import { EventManager } from "@angular/platform-browser";
import { MdlLayoutHeaderComponent } from "./mdl-layout-header.component";
import { MdlLayoutDrawerComponent } from "./mdl-layout-drawer.component";
import { MdlLayoutContentComponent } from "./mdl-layout-content.component";
import { Observable } from "rxjs";
import { MdlError } from "../common/mdl-error";
import { MdlLayoutMediatorService } from "./mdl-layout-mediator.service";
import * as i0 from "@angular/core";
/**
* The LAYOUT_SCREEN_SIZE_THRESHOLD can be changed at the root module. Just provide a value for this InjectionToken:
*
* providers: [
* {provide:LAYOUT_SCREEN_SIZE_THRESHOLD, useValue: 768 }
* ]
*
* you also need to change the scss variable to the same value: $layout-screen-size-threshold: 768px.
*
* It should be clear that this can only be used if you are using the scss and not the pre compiled css from getmdl.io.
*
*/
export declare const LAYOUT_SCREEN_SIZE_THRESHOLD: InjectionToken<number>;
export declare class MdLUnsupportedLayoutTypeError extends MdlError {
constructor(type: string);
}
export declare class MdlScreenSizeService {
layoutScreenSizeThreshold: number;
private sizesSubject;
private windowMediaQueryListener;
constructor(ngZone: NgZone, layoutScreenSizeThreshold: number);
isSmallScreen(): boolean;
sizes(): Observable<boolean>;
destroy(): void;
static ɵfac: i0.ɵɵFactoryDeclaration<MdlScreenSizeService, [null, { optional: true; }]>;
static ɵprov: i0.ɵɵInjectableDeclaration<MdlScreenSizeService>;
}
export declare class MdlLayoutComponent implements AfterContentInit, OnDestroy, OnChanges {
private renderer;
private evm;
private el;
private screenSizeService;
private layoutMediatorService;
header: MdlLayoutHeaderComponent | undefined;
drawers: QueryList<MdlLayoutDrawerComponent>;
content: MdlLayoutContentComponent | undefined;
mode: string;
selectedTabEmitter: EventEmitter<any>;
mouseoverTabEmitter: EventEmitter<any>;
mouseoutTabEmitter: EventEmitter<any>;
onOpen: EventEmitter<void>;
onClose: EventEmitter<void>;
isDrawerVisible: boolean;
isSmallScreen: boolean;
private scrollListener;
private isFixedDrawerIntern;
private isFixedHeaderIntern;
private isSeamedIntern;
private selectedIndexIntern;
private isNoDrawerIntern;
private subscriptions;
constructor(renderer: Renderer2, evm: EventManager, el: ElementRef, screenSizeService: MdlScreenSizeService, layoutMediatorService: MdlLayoutMediatorService);
get isFixedDrawer(): boolean;
set isFixedDrawer(value: boolean | string);
get isFixedHeader(): boolean;
set isFixedHeader(value: boolean | string);
get isSeamed(): boolean;
set isSeamed(value: boolean | string);
get selectedIndex(): number;
set selectedIndex(value: number | undefined);
get isNoDrawer(): boolean;
set isNoDrawer(value: boolean | string);
ngAfterContentInit(): void;
ngOnChanges(changes: SimpleChanges): void;
toggleDrawer(): void;
closeDrawer(): void;
openDrawer(): void;
obfuscatorKeyDown($event: KeyboardEvent): void;
ngOnDestroy(): void;
closeDrawerOnSmallScreens(): void;
openDrawerOnSmallScreens(): void;
hasDrawer(): boolean;
private tabSelected;
private onTabMouseover;
private onTabMouseout;
private updateSelectedTabIndex;
private validateMode;
private onScroll;
private onQueryChange;
private setDrawerVisible;
static ɵfac: i0.ɵɵFactoryDeclaration<MdlLayoutComponent, never>;
static ɵcmp: i0.ɵɵComponentDeclaration<MdlLayoutComponent, "mdl-layout", ["mdlLayout"], { "mode": "mdl-layout-mode"; "isFixedDrawer": "mdl-layout-fixed-drawer"; "isFixedHeader": "mdl-layout-fixed-header"; "isSeamed": "mdl-layout-header-seamed"; "selectedIndex": "mdl-layout-tab-active-index"; "isNoDrawer": "mdl-layout-no-drawer-button"; }, { "selectedTabEmitter": "mdl-layout-tab-active-changed"; "mouseoverTabEmitter": "mdl-layout-tab-mouseover"; "mouseoutTabEmitter": "mdl-layout-tab-mouseout"; "onOpen": "open"; "onClose": "close"; }, ["header", "content", "drawers"], ["mdl-layout-header", "mdl-layout-drawer", "mdl-layout-content"], false, never>;
}