@obliczeniowo/elementary
Version:
Library made in Angular version 20
66 lines (60 loc) • 2.46 kB
TypeScript
import * as i0 from '@angular/core';
import { ElementRef, Renderer2, EventEmitter } from '@angular/core';
import { DrawingSvgInterface } from '@obliczeniowo/elementary/drawing';
import { Point2D, ColorType } from '@obliczeniowo/elementary/classes';
import * as i2 from '@angular/common';
interface PageItem {
name: string;
rootName: string;
parentName: string;
value: number;
data?: any;
}
interface PageCategory {
rootName?: string;
parentName?: string;
pos: Point2D;
endPos: Point2D;
pChanged: boolean;
}
declare class PagesCircleTreeComponent {
protected elementRef: ElementRef<HTMLElement>;
protected renderer: Renderer2;
/** items to draw */
items: i0.InputSignalWithTransform<PageItem[], PageItem[]>;
onClicked: EventEmitter<PageItem>;
/** drawing interface */
protected drawing: DrawingSvgInterface;
/** found under mouse item */
protected item: PageItem | undefined;
/** prepared points to redraw diagram */
protected points: Point2D[];
/** ray */
protected graphSize: number;
/**
* graphSizeMax = graphSize + dGraphSize
*/
protected dGraphSize: number;
/** size of svg view box */
protected size: number;
/** categories */
protected categories: PageCategory[];
constructor(elementRef: ElementRef<HTMLElement>, renderer: Renderer2);
ngAfterViewInit(): void;
move(event: any): void;
clicked(): void;
protected calcPoints(): void;
protected calcCategories(): void;
protected draw(): void;
protected drawSplittedText(text: string, position: Point2D, color: ColorType, maxLength: number): number;
protected getMax(): number;
static ɵfac: i0.ɵɵFactoryDeclaration<PagesCircleTreeComponent, never>;
static ɵcmp: i0.ɵɵComponentDeclaration<PagesCircleTreeComponent, "obl-pages-circle-tree", never, { "items": { "alias": "items"; "required": false; "isSignal": true; }; }, { "onClicked": "onClicked"; }, never, never, false, never>;
}
declare class PagesCircleTreeModule {
static ɵfac: i0.ɵɵFactoryDeclaration<PagesCircleTreeModule, never>;
static ɵmod: i0.ɵɵNgModuleDeclaration<PagesCircleTreeModule, [typeof PagesCircleTreeComponent], [typeof i2.CommonModule], [typeof PagesCircleTreeComponent]>;
static ɵinj: i0.ɵɵInjectorDeclaration<PagesCircleTreeModule>;
}
export { PagesCircleTreeComponent, PagesCircleTreeModule };
export type { PageCategory, PageItem };