igniteui-webcomponents
Version:
Ignite UI for Web Components is a complete library of UI components, giving you the ability to build modern web applications using encapsulation and the concept of reusable components in a dependency-free approach.
46 lines (45 loc) • 1.5 kB
TypeScript
import type { StyleInfo } from 'lit/directives/style-map.js';
type PanePosition = 'start' | 'end';
interface SplitterPaneState {
size?: string;
minSize?: string;
maxSize?: string;
savedSize?: string;
styles: StyleInfo;
}
interface PaneResizeSnapshot {
initialSize: number;
isPercentageBased: boolean;
minSizePx?: number;
maxSizePx?: number;
}
interface SplitterResizeState {
startPane: PaneResizeSnapshot | null;
endPane: PaneResizeSnapshot | null;
isDragging: boolean;
dragStartPosition: {
x: number;
y: number;
};
dragPointerId: number;
}
interface IgcSplitterResizeEventArgs {
/** The current size of the start panel in pixels */
startPanelSize: number;
/** The current size of the end panel in pixels */
endPanelSize: number;
/** The change in size since the resize operation started (only for igcResizing and igcResizeEnd) */
delta?: number;
}
/**
* @hidden
* @deprecated use IgcSplitterResizeEventArgs instead
*/
interface IgcSplitterResizeEventDetail extends IgcSplitterResizeEventArgs {
}
interface IgcSplitterComponentEventMap {
igcResizeStart: CustomEvent<IgcSplitterResizeEventArgs>;
igcResizing: CustomEvent<IgcSplitterResizeEventArgs>;
igcResizeEnd: CustomEvent<IgcSplitterResizeEventArgs>;
}
export type { PanePosition, SplitterPaneState, PaneResizeSnapshot, SplitterResizeState, IgcSplitterResizeEventArgs, IgcSplitterResizeEventDetail, IgcSplitterComponentEventMap, };