UNPKG

@nova-ui/bits

Version:

SolarWinds Nova Framework

91 lines (90 loc) 3.64 kB
import { AfterViewInit, ElementRef, EventEmitter, NgZone, OnChanges, OnDestroy, Renderer2, SimpleChanges } from "@angular/core"; import { IResizeProperties, ResizeDirection, ResizeUnit } from "./public-api"; import { EventBusService } from "../../../services/event-bus.service"; import { UtilService } from "../../../services/util.service"; import * as i0 from "@angular/core"; /** * @ignore * <example-url>./../examples/index.html#/resizer</example-url> */ export declare class ResizerDirective implements AfterViewInit, OnChanges, OnDestroy { private elRef; private renderer; private utilService; private _element; private ngZone; private eventBusService; /** * Direction in which element can be resizable. can be "top", "right", "left" and "bottom" */ private _direction; set resizerDirection(direction: ResizeDirection); get resizerDirection(): ResizeDirection; /** * Sets custom size of resizable element */ protected _size: number; /** * Disables element resizing */ private _disabled; set resizerDisabled(isDisabled: boolean); get resizerDisabled(): boolean; /** * Choose resize value of your element(pixel, percent). By default pixels are used. */ resizerValue: ResizeUnit; /** * Switch to mode in which resizer change parent's and sibling's flex-basis (layout-specific) */ isMultiple: boolean; /** * Emits new size of element on which directive was applied */ resizerSizeChanged: EventEmitter<string>; protected resizePropObj: IResizeProperties; protected parentContainerNode: HTMLElement; protected resizerSplit: HTMLElement; protected targetElement: ElementRef; protected resizeClass: string; protected resizeGutter: HTMLElement; protected offsetSize: number; private _resizeElement; private _oldSize; private _isDragging; private _isFirstTimeInteracting; private _isHovering; private resizeObserver?; private resizeSubscription; private eventSubscriptions; private mouseUpUnlisten; private mouseMoveUnlisten; private sibling; constructor(elRef: ElementRef, renderer: Renderer2, utilService: UtilService, _element: ElementRef, ngZone: NgZone, eventBusService: EventBusService); ngOnChanges(changes: SimpleChanges): void; ngAfterViewInit(): void; ngOnDestroy(): void; protected addResizeObserver(): void; protected addSubscription(): void; protected onSizeChanged(newSize: string): void; protected refreshStyle(): void; protected unlistenEvents(): void; protected appendEvents(): void; protected isResizeHorizontal(): boolean; protected isAtTheBeginning(): boolean; private switchDisabledClasses; private appendResizeElement; private unlistenResizeEvents; private onMouseEnter; private onMouseLeave; private onMouseMove; private onMouseDown; private onMouseUp; private calculatePosition; private applyNewSize; private updateSize; private calculateNativeElementSize; private calculateSiblingSize; static ɵfac: i0.ɵɵFactoryDeclaration<ResizerDirective, never>; static ɵdir: i0.ɵɵDirectiveDeclaration<ResizerDirective, "[nuiResizer]", never, { "resizerDirection": { "alias": "resizerDirection"; "required": false; }; "resizerDisabled": { "alias": "resizerDisabled"; "required": false; }; "resizerValue": { "alias": "resizerValue"; "required": false; }; "isMultiple": { "alias": "isMultiple"; "required": false; }; }, { "resizerSizeChanged": "resizerSizeChanged"; }, never, never, false, never>; }