@obliczeniowo/elementary
Version:
Library made in Angular version 20
159 lines (146 loc) • 5.55 kB
TypeScript
import { Point2D, ColorRGB } from '@obliczeniowo/elementary/classes';
import * as i0 from '@angular/core';
import { AfterViewInit, ElementRef } from '@angular/core';
import * as i2 from '@angular/common';
declare class Style {
styles: any;
toString(): string;
constructor(styleObject: any);
}
declare class SvgGroup {
id: string;
svgGroupContainer: SVGGElement;
constructor(id?: string, style?: Style | string);
append(child: any): void;
clear(): void;
}
declare abstract class Transform {
abstract toString(): string;
}
declare class Rotate extends Transform {
rotatePoint: Point2D | null;
angle: number;
constructor(angle: number, rotatePoint?: Point2D | null);
toString(): string;
}
declare class SvgText {
svg: SVGTextElement;
rotate: Rotate;
setText(text: string): void;
constructor(x: number, y: number, text: string, style: Style, id: string, rotate: Rotate, svgContainer: SVGElement | SvgGroup);
show(display: boolean): void;
private set _transform(value);
get transform(): string | null;
setX(x: number): void;
setY(y: number): void;
}
declare class PostDiagramValue {
key: string;
private readonly postsGroup;
private readonly valuesGroup;
private readonly keysGroup;
diagramValue: number;
private readonly svgPost;
valueText: SvgText;
keyText: SvgText;
private readonly legendContainer;
private readonly legendKey;
set setColor(color: any);
constructor(key: string, diagramValue: number, postsGroup: SvgGroup, valuesGroup: SvgGroup, keysGroup: SvgGroup, legendContainer: HTMLElement);
setPost(x: number, y: number, width: number, k: number): void;
getValue(): number;
setValue(value: number, k: number): void;
toString(): string;
}
declare class SvgPolyline {
svg: SVGPolylineElement;
points: Point2D[];
constructor(id: string, style: Style, svgContainer: SVGElement | SvgGroup, type?: string);
addPoint(x: number, y: number): void;
clearPoints(): void;
}
declare class SvgPolygon {
svg: SVGPolygonElement;
points: Point2D[];
constructor(id: string, style: Style, svgContainer: SVGElement | SvgGroup);
addPoint(x: number, y: number): void;
clearPoints(): void;
}
interface ScaleValue {
line: SvgPolyline;
value: SvgText;
}
declare class SvgPostDiagram {
values: PostDiagramValue[];
svgContainer: SVGSVGElement;
legendContainer: HTMLElement;
private readonly postsGroup;
private readonly valuesGroup;
private readonly keysGroup;
private readonly greedGroup;
private _displayPostKeys;
private _diagramHeight;
dy: number;
diagramWidth: number;
diagramPos: Point2D;
base: SvgPolygon;
leftScalePlain: SvgPolygon;
backScalePlain: SvgPolygon;
scaleLines: ScaleValue[];
scaleBase: SvgText;
private displayText;
private valuesColor;
private readonly scaleColor;
id: string;
private _colorFunction;
set colorFunction(colorFunction: (index: number, dataLength: number, value: number, max: number) => ColorRGB);
constructor(id: string, data: any, svgContainer: SVGSVGElement, legendContainer: HTMLElement);
get diagramHeight(): number;
displayPostKeys(display: boolean): void;
getMax(): number;
setValueColor(valuesColor: ColorRGB): void;
private clearHtml;
setDiagramValues(data: {
[key: string]: number;
}): void;
get postWidth(): number;
private _refreshBase;
private _refreshLeftScalePlain;
private _refreshBackScalePlain;
private _refreshScale;
refresh(): void;
toString(): string;
setDisplayValue(value: boolean): void;
setValue(value: number, index: number): void;
}
declare class PostDiagramComponent implements AfterViewInit {
yLabel: string;
xLabel: string;
diagramTitle: string;
private _diagramData;
svgContainer: ElementRef;
diagramLegend: ElementRef;
set diagramData(diagramData: {
[key: string]: number;
});
svgDiagram: SvgPostDiagram;
private _colorFunctionRef;
set colorFunction(colorFunctionRef: (index: number, dataLength: number, value: number, max: number) => ColorRGB);
ngAfterViewInit(): void;
static ɵfac: i0.ɵɵFactoryDeclaration<PostDiagramComponent, never>;
static ɵcmp: i0.ɵɵComponentDeclaration<PostDiagramComponent, "obl-post-diagram", never, { "yLabel": { "alias": "yLabel"; "required": false; }; "xLabel": { "alias": "xLabel"; "required": false; }; "diagramTitle": { "alias": "diagramTitle"; "required": false; }; "diagramData": { "alias": "diagramData"; "required": false; }; "colorFunction": { "alias": "colorFunction"; "required": false; }; }, {}, never, never, false, never>;
}
declare class PostDiagramModule {
static ɵfac: i0.ɵɵFactoryDeclaration<PostDiagramModule, never>;
static ɵmod: i0.ɵɵNgModuleDeclaration<PostDiagramModule, [typeof PostDiagramComponent], [typeof i2.CommonModule], [typeof PostDiagramComponent]>;
static ɵinj: i0.ɵɵInjectorDeclaration<PostDiagramModule>;
}
declare class SvgRect {
svg: SVGRectElement;
constructor(x: number, y: number, width: number, height: number, id: string, svgContainer: SVGElement | SvgGroup, style?: Style | string);
setX(x: string | number): void;
setY(y: string | number): void;
setWidth(width: string | number): void;
setHeight(height: string | number): void;
}
export { PostDiagramComponent, PostDiagramModule, Rotate, Style, SvgGroup, SvgRect, SvgText, Transform };