@omnedia/ngx-particles
Version:
A simple component library to create a container with an animated background.
42 lines (39 loc) • 1.7 kB
TypeScript
import * as i0 from '@angular/core';
import { AfterViewInit, OnDestroy, ElementRef } from '@angular/core';
declare class NgxParticlesComponent implements AfterViewInit, OnDestroy {
private platformId;
canvasRef: ElementRef<HTMLCanvasElement>;
wrapperRef: ElementRef<HTMLElement>;
quantity: number;
size: number;
color: string;
staticity: number;
ease: number;
particleSpeed: number;
vx: number;
vy: number;
private mousePosition;
private mouse;
private circles;
onClick(event: MouseEvent): void;
private isInView;
private isAnimating;
private animationFrameId?;
private intersectionObserver?;
constructor(platformId: object);
ngAfterViewInit(): void;
ngOnDestroy(): void;
renderContents(isIntersecting: boolean): void;
private setCanvasSize;
private drawParticles;
private circleParams;
private drawCircle;
private animate;
private clearContext;
private onMouseMove;
private remapValue;
private hexToRgb;
static ɵfac: i0.ɵɵFactoryDeclaration<NgxParticlesComponent, never>;
static ɵcmp: i0.ɵɵComponentDeclaration<NgxParticlesComponent, "om-particles", never, { "quantity": { "alias": "quantity"; "required": false; }; "size": { "alias": "size"; "required": false; }; "color": { "alias": "circleColor"; "required": false; }; "staticity": { "alias": "staticity"; "required": false; }; "ease": { "alias": "ease"; "required": false; }; "particleSpeed": { "alias": "particleSpeed"; "required": false; }; "vx": { "alias": "vx"; "required": false; }; "vy": { "alias": "vy"; "required": false; }; }, {}, never, ["*"], true, never>;
}
export { NgxParticlesComponent };