UNPKG

@davvidess/angular-split

Version:

Angular UI library to split views and allow dragging to resize areas using CSS flexbox layout.

42 lines (41 loc) 1.08 kB
import { SplitAreaDirective } from './directive/splitArea.directive'; export interface IPoint { x: number; y: number; } export interface IArea { component: SplitAreaDirective; order: number; size: number | null; minSize: number | null; maxSize: number | null; } export interface ISplitSnapshot { gutterNum: number; allAreasSizePixel: number; allInvolvedAreasSizePercent: number; lastSteppedOffset: number; areasBeforeGutter: Array<IAreaSnapshot>; areasAfterGutter: Array<IAreaSnapshot>; } export interface IAreaSnapshot { area: IArea; sizePixelAtStart: number; sizePercentAtStart: number; } export interface ISplitSideAbsorptionCapacity { remain: number; list: Array<IAreaAbsorptionCapacity>; } export interface IAreaAbsorptionCapacity { areaSnapshot: IAreaSnapshot; pixelAbsorb: number; percentAfterAbsorption: number; pixelRemain: number; } export interface IOutputData { gutterNum: number; sizes: IOutputAreaSizes; } export interface IOutputAreaSizes extends Array<number | '*'> { }