ng-cw-v12
Version:
Angular UI Component Library
60 lines (59 loc) • 2.44 kB
TypeScript
import { ElementRef, EventEmitter, OnDestroy, SimpleChanges, OnChanges } from '@angular/core';
import { DomSanitizer, SafeHtml } from '@angular/platform-browser';
import * as i0 from "@angular/core";
export declare type NcModeType = 'distance' | 'magnification';
export declare type NcThemeType = 'light' | 'dark';
export declare type NcDirectionType = 'horizontal' | 'vertical';
export declare type NcTooltipPositionType = 'top' | 'bottom' | 'left' | 'right';
export declare class DockComponent implements OnDestroy, OnChanges {
private sanitizer;
/** 图标尺寸 */
ncSize: number;
/** 鼠标到最远放大图标的距离 */
ncDistance: number;
/** 展示模式 */
ncMode: NcModeType;
/** 相对于ncSize放大或间隙的倍数 */
ncMultiple: number;
/** 主题 */
ncTheme: NcThemeType;
/** 方向 */
ncDirection: NcDirectionType;
/** 分割线 */
ncDividerIndex: number[];
/** 提示文本 */
ncTooltip: string[];
/** 提示文本位置 */
ncTooltipPosition: NcTooltipPositionType;
/** hover效果 */
private _hover;
set ncHover(val: boolean | string);
get ncHover(): boolean;
/** 图标列表 */
ncItems: string[];
/** 图标点击事件 */
ncClick: EventEmitter<number>;
dockContainer: ElementRef;
private mouseXY;
iconScales: number[];
private isAnimating;
private animationFrameId;
constructor(sanitizer: DomSanitizer);
ngOnChanges(changes: SimpleChanges): void;
ngOnDestroy(): void;
private resetIconScales;
onMouseMove(event: MouseEvent): void;
onMouseLeave(): void;
private updateIconScales;
onIconClick(index: number): void;
/**
* 检查项目是否为SVG内容
*/
isSvgContent(item: string): boolean;
/**
* 返回安全处理后的SVG内容
*/
getSanitizedSvg(svg: string): SafeHtml;
static ɵfac: i0.ɵɵFactoryDeclaration<DockComponent, never>;
static ɵcmp: i0.ɵɵComponentDeclaration<DockComponent, "nc-dock", never, { "ncSize": "ncSize"; "ncDistance": "ncDistance"; "ncMode": "ncMode"; "ncMultiple": "ncMultiple"; "ncTheme": "ncTheme"; "ncDirection": "ncDirection"; "ncDividerIndex": "ncDividerIndex"; "ncTooltip": "ncTooltip"; "ncTooltipPosition": "ncTooltipPosition"; "ncHover": "ncHover"; "ncItems": "ncItems"; }, { "ncClick": "ncClick"; }, never, never>;
}