primeng
Version:
PrimeNG is a premium UI library for Angular featuring a rich set of 90+ components, a theme designer, various theme alternatives such as Material, Bootstrap, Tailwind, premium templates and professional support. In addition, it integrates with PrimeBlock,
286 lines (276 loc) • 12 kB
TypeScript
import { ScrollAreaPassThrough, ScrollAreaVariant } from 'primeng/types/scrollarea';
export * from 'primeng/types/scrollarea';
import * as _angular_core from '@angular/core';
import { InjectionToken } from '@angular/core';
import { BaseComponent } from 'primeng/basecomponent';
import * as i1 from 'primeng/bind';
import { Bind } from 'primeng/bind';
import { BaseStyle } from 'primeng/base';
import * as i7 from 'primeng/api';
/**
*
* ScrollArea is a cross browser, lightweight and themable alternative to native browser scrollbar.
*
* [Live Demo](https://www.primeng.org/scrollarea)
*
* @module scrollareastyle
*
*/
declare enum ScrollAreaClasses {
/**
* Class name of the root element
*/
root = "p-scrollarea",
/**
* Class name of the viewport element
*/
viewport = "p-scrollarea-viewport",
/**
* Class name of the content element
*/
content = "p-scrollarea-content",
/**
* Class name of the scrollbar element
*/
scrollbar = "p-scrollarea-scrollbar",
/**
* Class name of the handle element
*/
handle = "p-scrollarea-handle",
/**
* Class name of the corner element
*/
corner = "p-scrollarea-corner"
}
declare class ScrollAreaStyle extends BaseStyle {
name: string;
style: string;
classes: {
root: ({ instance }: any) => (string | {
'p-scrollarea-mask': any;
})[];
viewport: string;
content: string;
scrollbar: string;
handle: string;
corner: string;
};
inlineStyles: {
root: {
position: string;
};
viewport: {
overflow: string;
scrollbarWidth: string;
};
scrollbar: ({ instance }: any) => {
position: string;
touchAction: string;
userSelect: string;
WebkitUserSelect: string;
display: string | undefined;
top: number | undefined;
bottom: string | number;
insetInlineEnd: string | number;
insetInlineStart: number | undefined;
};
corner: ({ instance }: any) => {
position: string;
bottom: number;
insetInlineEnd: number;
display: string | undefined;
};
};
static ɵfac: _angular_core.ɵɵFactoryDeclaration<ScrollAreaStyle, never>;
static ɵprov: _angular_core.ɵɵInjectableDeclaration<ScrollAreaStyle>;
}
interface ScrollAreaStyle extends BaseStyle {
}
/**
* ScrollAreaViewport is a helper component for ScrollArea component.
* @group Components
*/
declare class ScrollAreaViewport extends BaseComponent {
componentName: string;
$pcScrollAreaViewport: ScrollAreaViewport | undefined;
bindDirectiveInstance: Bind;
pcScrollArea: ScrollArea;
_componentStyle: ScrollAreaStyle;
private hostEl;
viewportTabindex: _angular_core.Signal<number | null>;
dataScrollYBefore: _angular_core.Signal<"" | null>;
dataScrollYAfter: _angular_core.Signal<"" | null>;
dataScrollXBefore: _angular_core.Signal<"" | null>;
dataScrollXAfter: _angular_core.Signal<"" | null>;
onAfterViewChecked(): void;
onAfterViewInit(): void;
static ɵfac: _angular_core.ɵɵFactoryDeclaration<ScrollAreaViewport, never>;
static ɵcmp: _angular_core.ɵɵComponentDeclaration<ScrollAreaViewport, "p-scrollarea-viewport, p-scroll-area-viewport", never, {}, {}, never, ["*"], true, [{ directive: typeof i1.Bind; inputs: {}; outputs: {}; }]>;
}
/**
* ScrollAreaContent is a helper component for ScrollArea component.
* @group Components
*/
declare class ScrollAreaContent extends BaseComponent {
componentName: string;
bindDirectiveInstance: Bind;
pcScrollArea: ScrollArea;
_componentStyle: ScrollAreaStyle;
contentMinWidth: _angular_core.Signal<"fit-content" | null>;
contentMinHeight: _angular_core.Signal<"fit-content" | null>;
onAfterViewChecked(): void;
static ɵfac: _angular_core.ɵɵFactoryDeclaration<ScrollAreaContent, never>;
static ɵcmp: _angular_core.ɵɵComponentDeclaration<ScrollAreaContent, "p-scrollarea-content, p-scroll-area-content", never, {}, {}, never, ["*"], true, [{ directive: typeof i1.Bind; inputs: {}; outputs: {}; }]>;
}
/**
* ScrollAreaScrollbar is a helper component for ScrollArea component.
* @group Components
*/
declare class ScrollAreaScrollbar extends BaseComponent {
componentName: string;
$pcScrollAreaScrollbar: ScrollAreaScrollbar | undefined;
bindDirectiveInstance: Bind;
pcScrollArea: ScrollArea;
_componentStyle: ScrollAreaStyle;
private hostEl;
/**
* Orientation of the scrollbar.
* @group Props
*/
orientation: _angular_core.InputSignal<"vertical" | "horizontal">;
isVertical: _angular_core.Signal<boolean>;
isHidden: _angular_core.Signal<boolean>;
dataHovering: _angular_core.Signal<"" | null>;
dataScrolling: _angular_core.Signal<"" | null>;
onAfterViewChecked(): void;
onAfterViewInit(): void;
static ɵfac: _angular_core.ɵɵFactoryDeclaration<ScrollAreaScrollbar, never>;
static ɵcmp: _angular_core.ɵɵComponentDeclaration<ScrollAreaScrollbar, "p-scrollarea-scrollbar, p-scroll-area-scrollbar", never, { "orientation": { "alias": "orientation"; "required": false; "isSignal": true; }; }, {}, never, ["*"], true, [{ directive: typeof i1.Bind; inputs: {}; outputs: {}; }]>;
}
/**
* ScrollAreaHandle is a helper component for ScrollArea component.
* @group Components
*/
declare class ScrollAreaHandle extends BaseComponent {
componentName: string;
bindDirectiveInstance: Bind;
pcScrollArea: ScrollArea;
pcScrollbar: ScrollAreaScrollbar;
_componentStyle: ScrollAreaStyle;
private hostEl;
orientation: _angular_core.Signal<"vertical" | "horizontal">;
isVertical: _angular_core.Signal<boolean>;
handleHeight: _angular_core.Signal<"var(--px-handle-height, 0px)" | undefined>;
handleWidth: _angular_core.Signal<"var(--px-handle-width, 0px)" | undefined>;
handleTransform: _angular_core.Signal<"translate3d(0, var(--px-handle-offset, 0px), 0)" | "translate3d(var(--px-handle-offset, 0px), 0, 0)">;
onAfterViewChecked(): void;
onAfterViewInit(): void;
static ɵfac: _angular_core.ɵɵFactoryDeclaration<ScrollAreaHandle, never>;
static ɵcmp: _angular_core.ɵɵComponentDeclaration<ScrollAreaHandle, "p-scrollarea-handle, p-scroll-area-handle", never, {}, {}, never, never, true, [{ directive: typeof i1.Bind; inputs: {}; outputs: {}; }]>;
}
/**
* ScrollAreaCorner is a helper component for ScrollArea component.
* @group Components
*/
declare class ScrollAreaCorner extends BaseComponent {
componentName: string;
bindDirectiveInstance: Bind;
pcScrollArea: ScrollArea;
_componentStyle: ScrollAreaStyle;
private hostEl;
isHidden: _angular_core.Signal<boolean>;
onAfterViewChecked(): void;
onAfterViewInit(): void;
static ɵfac: _angular_core.ɵɵFactoryDeclaration<ScrollAreaCorner, never>;
static ɵcmp: _angular_core.ɵɵComponentDeclaration<ScrollAreaCorner, "p-scrollarea-corner, p-scroll-area-corner", never, {}, {}, never, never, true, [{ directive: typeof i1.Bind; inputs: {}; outputs: {}; }]>;
}
/**
* ScrollArea is a cross browser, lightweight and themable alternative to native browser scrollbar.
* @group Components
*/
declare class ScrollArea extends BaseComponent<ScrollAreaPassThrough> {
componentName: string;
$pcScrollArea: ScrollArea | undefined;
bindDirectiveInstance: Bind;
/**
* Scrollbar visibility variant.
* @group Props
*/
variant: _angular_core.InputSignal<ScrollAreaVariant>;
/**
* Whether to show gradient mask at scroll edges.
* @group Props
*/
mask: _angular_core.InputSignalWithTransform<boolean, unknown>;
/**
* Tabindex of the viewport when content overflows.
* @defaultValue 0
* @group Props
*/
tabindex: _angular_core.InputSignalWithTransform<number, unknown>;
_componentStyle: ScrollAreaStyle;
hovering: _angular_core.WritableSignal<boolean>;
scrollingX: _angular_core.WritableSignal<boolean>;
scrollingY: _angular_core.WritableSignal<boolean>;
touchModality: _angular_core.WritableSignal<boolean>;
hiddenX: _angular_core.WritableSignal<boolean>;
hiddenY: _angular_core.WritableSignal<boolean>;
cornerHidden: _angular_core.WritableSignal<boolean>;
hasOverflowX: _angular_core.WritableSignal<boolean>;
hasOverflowY: _angular_core.WritableSignal<boolean>;
yBefore: _angular_core.WritableSignal<boolean>;
yAfter: _angular_core.WritableSignal<boolean>;
xBefore: _angular_core.WritableSignal<boolean>;
xAfter: _angular_core.WritableSignal<boolean>;
cornerWidthValue: _angular_core.WritableSignal<number>;
cornerHeightValue: _angular_core.WritableSignal<number>;
cornerWidthPx: _angular_core.Signal<string>;
cornerHeightPx: _angular_core.Signal<string>;
dataHovering: _angular_core.Signal<"" | null>;
dataScrollingY: _angular_core.Signal<"" | null>;
dataScrollingX: _angular_core.Signal<"" | null>;
viewportEl: HTMLElement | null;
scrollbarYEl: HTMLElement | null;
scrollbarXEl: HTMLElement | null;
handleYEl: HTMLElement | null;
handleXEl: HTMLElement | null;
cornerEl: HTMLElement | null;
private isDragging;
private dragOrientation;
private dragStart;
private prevScroll;
private scrollXTimeout;
private scrollYTimeout;
private rafId;
private resizeObserver;
onAfterViewChecked(): void;
onAfterViewInit(): void;
onDestroy(): void;
private setupResizeObserver;
computeHandle(): void;
onScroll(): void;
onHandlePointerDown(event: PointerEvent, orientation: 'vertical' | 'horizontal'): void;
onScrollbarPointerDown(event: PointerEvent, orientation: 'vertical' | 'horizontal'): void;
onScrollbarPointerMove(event: PointerEvent): void;
onScrollbarPointerUp(event: PointerEvent): void;
onScrollbarWheel(event: WheelEvent, orientation: 'vertical' | 'horizontal'): void;
onRootPointerEnter(event: PointerEvent): void;
onRootPointerLeave(): void;
onRootPointerDown(event: PointerEvent): void;
/**
* Refreshes the position and size of the scrollbar.
* @group Method
*/
refresh(): void;
static ɵfac: _angular_core.ɵɵFactoryDeclaration<ScrollArea, never>;
static ɵcmp: _angular_core.ɵɵComponentDeclaration<ScrollArea, "p-scrollarea, p-scroll-area", never, { "variant": { "alias": "variant"; "required": false; "isSignal": true; }; "mask": { "alias": "mask"; "required": false; "isSignal": true; }; "tabindex": { "alias": "tabindex"; "required": false; "isSignal": true; }; }, {}, never, ["*"], true, [{ directive: typeof i1.Bind; inputs: {}; outputs: {}; }]>;
}
declare class ScrollAreaModule {
static ɵfac: _angular_core.ɵɵFactoryDeclaration<ScrollAreaModule, never>;
static ɵmod: _angular_core.ɵɵNgModuleDeclaration<ScrollAreaModule, never, [typeof ScrollArea, typeof ScrollAreaViewport, typeof ScrollAreaContent, typeof ScrollAreaScrollbar, typeof ScrollAreaHandle, typeof ScrollAreaCorner, typeof i7.SharedModule, typeof i1.BindModule], [typeof ScrollArea, typeof ScrollAreaViewport, typeof ScrollAreaContent, typeof ScrollAreaScrollbar, typeof ScrollAreaHandle, typeof ScrollAreaCorner, typeof i7.SharedModule, typeof i1.BindModule]>;
static ɵinj: _angular_core.ɵɵInjectorDeclaration<ScrollAreaModule>;
}
declare const SCROLLAREA_INSTANCE: InjectionToken<any>;
declare const SCROLLAREA_VIEWPORT_INSTANCE: InjectionToken<any>;
declare const SCROLLAREA_SCROLLBAR_INSTANCE: InjectionToken<any>;
export { SCROLLAREA_INSTANCE, SCROLLAREA_SCROLLBAR_INSTANCE, SCROLLAREA_VIEWPORT_INSTANCE, ScrollArea, ScrollAreaClasses, ScrollAreaContent, ScrollAreaCorner, ScrollAreaHandle, ScrollAreaModule, ScrollAreaScrollbar, ScrollAreaStyle, ScrollAreaViewport };