@obliczeniowo/elementary
Version:
Library made in Angular version 20
180 lines (170 loc) • 9.52 kB
TypeScript
import * as _angular_core from '@angular/core';
import { SimpleChanges, OnInit, EventEmitter, ElementRef } from '@angular/core';
import { ColorRGB } from '@obliczeniowo/elementary/classes';
import { IconResourceService } from '@obliczeniowo/elementary/icons';
import * as i6 from '@angular/common';
declare class ArchComponent {
/** start angle in degrees */
start: _angular_core.InputSignal<number>;
/** end angle in degrees */
end: _angular_core.InputSignal<number>;
/** ray in pixels */
ray: _angular_core.InputSignal<number>;
/** */
x: _angular_core.InputSignal<number>;
/** */
y: _angular_core.InputSignal<number>;
/** arch thickness in pixels */
width: _angular_core.InputSignal<number>;
/** arch stroke color */
background: _angular_core.InputSignal<string>;
/** id if required */
pathId: _angular_core.InputSignal<string | undefined>;
/** reverse for change side of text */
reverse: _angular_core.InputSignal<boolean>;
/** angle scale */
angleScale: _angular_core.InputSignal<number>;
path: string | undefined;
protected scaledStart: number;
protected scaledEnd: number;
constructor();
protected recalculatePath(): void;
static ɵfac: _angular_core.ɵɵFactoryDeclaration<ArchComponent, never>;
static ɵcmp: _angular_core.ɵɵComponentDeclaration<ArchComponent, "g[obl-arch]", never, { "start": { "alias": "start"; "required": false; "isSignal": true; }; "end": { "alias": "end"; "required": false; "isSignal": true; }; "ray": { "alias": "ray"; "required": false; "isSignal": true; }; "x": { "alias": "x"; "required": false; "isSignal": true; }; "y": { "alias": "y"; "required": false; "isSignal": true; }; "width": { "alias": "width"; "required": false; "isSignal": true; }; "background": { "alias": "background"; "required": false; "isSignal": true; }; "pathId": { "alias": "pathId"; "required": false; "isSignal": true; }; "reverse": { "alias": "reverse"; "required": false; "isSignal": true; }; "angleScale": { "alias": "angleScale"; "required": false; "isSignal": true; }; }, {}, never, never, false, never>;
}
declare class MenuItemComponent {
/** start angle in degrees */
start: _angular_core.InputSignal<number>;
/** end angle in degrees */
end: _angular_core.InputSignal<number>;
/** ray */
ray: _angular_core.InputSignal<number>;
/** */
x: _angular_core.InputSignal<number>;
/** */
y: _angular_core.InputSignal<number>;
/** thickness of arch */
width: _angular_core.InputSignal<number>;
/** background (thickness) color as string */
background: _angular_core.InputSignal<string>;
/** text color */
color: _angular_core.InputSignal<string>;
/** text to display on item */
text: _angular_core.InputSignal<string>;
/** */
angleScale: _angular_core.InputSignal<number>;
shadow: _angular_core.InputSignal<boolean>;
mouseOver(): void;
mouseLeave(): void;
protected hover: boolean;
textPathId: string;
clickable: boolean;
get textRay(): number;
get reverse(): boolean;
protected _href: string | null;
get href(): string | null;
constructor();
ngOnChanges(changes: SimpleChanges): void;
private setId;
static ɵfac: _angular_core.ɵɵFactoryDeclaration<MenuItemComponent, never>;
static ɵcmp: _angular_core.ɵɵComponentDeclaration<MenuItemComponent, "g[obl-menu-item]", never, { "start": { "alias": "start"; "required": false; "isSignal": true; }; "end": { "alias": "end"; "required": false; "isSignal": true; }; "ray": { "alias": "ray"; "required": false; "isSignal": true; }; "x": { "alias": "x"; "required": false; "isSignal": true; }; "y": { "alias": "y"; "required": false; "isSignal": true; }; "width": { "alias": "width"; "required": false; "isSignal": true; }; "background": { "alias": "background"; "required": false; "isSignal": true; }; "color": { "alias": "color"; "required": false; "isSignal": true; }; "text": { "alias": "text"; "required": false; "isSignal": true; }; "angleScale": { "alias": "angleScale"; "required": false; "isSignal": true; }; "shadow": { "alias": "shadow"; "required": false; "isSignal": true; }; }, {}, never, never, false, never>;
}
interface CircleMenuItem<T = any> {
id: number;
color: ColorRGB;
background: ColorRGB;
text: string;
parent?: Partial<CircleMenuItem<T>>;
data?: T;
}
interface CircleExtendedMenuItem extends CircleMenuItem {
subItems?: CircleMenuItem[];
}
declare class CircleMenuComponent implements OnInit {
/** menu items options not optional must be at leas 1 base element, subItems optional */
items: _angular_core.InputSignal<CircleExtendedMenuItem[]>;
/** menu description */
menu: _angular_core.InputSignal<string>;
/** */
closeOnClick: _angular_core.InputSignal<boolean>;
clicked: EventEmitter<Partial<CircleMenuItem>>;
get length(): number;
protected startIndex: number;
protected time: any;
protected animation: number;
get start(): number;
readonly ray: number;
get angle(): number;
readonly width: number;
readonly height: number;
get position(): number;
ngOnInit(): void;
move(offset: number): void;
itemClicked(item: Partial<CircleMenuItem>): void;
ngOnDestroy(): void;
static ɵfac: _angular_core.ɵɵFactoryDeclaration<CircleMenuComponent, never>;
static ɵcmp: _angular_core.ɵɵComponentDeclaration<CircleMenuComponent, "obl-circle-menu", never, { "items": { "alias": "items"; "required": false; "isSignal": true; }; "menu": { "alias": "menu"; "required": false; "isSignal": true; }; "closeOnClick": { "alias": "closeOnClick"; "required": false; "isSignal": true; }; }, { "clicked": "clicked"; }, never, never, false, never>;
}
declare class SvgIconButtonComponent {
protected icons: IconResourceService;
protected elementRef: ElementRef<HTMLElement>;
get iconWidth(): number;
protected _ray: number;
get ray(): number;
readonly k: number;
/** icon name */
icon: _angular_core.InputSignal<string | undefined>;
/** */
disabled?: boolean;
/** */
clickable: boolean;
mouseOver(): void;
mouseLeave(): void;
protected hover: boolean;
iconScale: number;
protected _iconSvg: SVGSVGElement | undefined;
protected _iconWidth: number;
constructor(icons: IconResourceService, elementRef: ElementRef<HTMLElement>);
static ɵfac: _angular_core.ɵɵFactoryDeclaration<SvgIconButtonComponent, never>;
static ɵcmp: _angular_core.ɵɵComponentDeclaration<SvgIconButtonComponent, "g[obl-svg-icon-button]", never, { "icon": { "alias": "icon"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; }; }, {}, never, never, false, never>;
}
declare class ExtendedMenuItemComponent {
/** start angle in degrees */
start: _angular_core.InputSignal<number>;
/** end angle in degrees */
end: _angular_core.InputSignal<number>;
/** ray */
ray: _angular_core.InputSignal<number>;
/** */
x: _angular_core.InputSignal<number>;
/** */
y: _angular_core.InputSignal<number>;
/** thickness of arch */
width: _angular_core.InputSignal<number>;
/** angle scale for animations */
angleScale: _angular_core.InputSignal<number>;
/** */
closeOnClick: _angular_core.InputSignal<boolean>;
item: _angular_core.InputSignal<CircleExtendedMenuItem>;
clicked: EventEmitter<Partial<CircleMenuItem>>;
mouseOver(): void;
mouseLeave(): void;
protected hover: boolean;
readonly length: number;
protected time: any;
protected animation: number[];
protected startIndex: number;
ngOnDestroy(): void;
itemClicked(item: CircleMenuItem, parent?: boolean): void;
move(move: number): void;
protected animate(): void;
static ɵfac: _angular_core.ɵɵFactoryDeclaration<ExtendedMenuItemComponent, never>;
static ɵcmp: _angular_core.ɵɵComponentDeclaration<ExtendedMenuItemComponent, "g[obl-extended-menu-item]", never, { "start": { "alias": "start"; "required": false; "isSignal": true; }; "end": { "alias": "end"; "required": false; "isSignal": true; }; "ray": { "alias": "ray"; "required": false; "isSignal": true; }; "x": { "alias": "x"; "required": false; "isSignal": true; }; "y": { "alias": "y"; "required": false; "isSignal": true; }; "width": { "alias": "width"; "required": false; "isSignal": true; }; "angleScale": { "alias": "angleScale"; "required": false; "isSignal": true; }; "closeOnClick": { "alias": "closeOnClick"; "required": false; "isSignal": true; }; "item": { "alias": "item"; "required": true; "isSignal": true; }; }, { "clicked": "clicked"; }, never, never, false, never>;
}
declare class CircleMenuModule {
static ɵfac: _angular_core.ɵɵFactoryDeclaration<CircleMenuModule, never>;
static ɵmod: _angular_core.ɵɵNgModuleDeclaration<CircleMenuModule, [typeof ArchComponent, typeof MenuItemComponent, typeof CircleMenuComponent, typeof SvgIconButtonComponent, typeof ExtendedMenuItemComponent], [typeof i6.CommonModule], [typeof ArchComponent, typeof MenuItemComponent, typeof CircleMenuComponent, typeof SvgIconButtonComponent, typeof ExtendedMenuItemComponent]>;
static ɵinj: _angular_core.ɵɵInjectorDeclaration<CircleMenuModule>;
}
export { ArchComponent, CircleMenuComponent, CircleMenuModule, ExtendedMenuItemComponent, MenuItemComponent, SvgIconButtonComponent };
export type { CircleExtendedMenuItem, CircleMenuItem };