ngx-audio-wave
Version:
Very simple audio wave system
44 lines (43 loc) • 2.42 kB
TypeScript
import { AfterViewInit, OnDestroy } from '@angular/core';
import * as i0 from "@angular/core";
export declare class NgxAudioWaveComponent implements AfterViewInit, OnDestroy {
color: import("@angular/core").InputSignal<string>;
audioSrc: import("@angular/core").InputSignal<string>;
height: import("@angular/core").InputSignal<number>;
gap: import("@angular/core").InputSignal<number>;
rounded: import("@angular/core").InputSignal<boolean>;
hideBtn: import("@angular/core").InputSignal<boolean>;
protected _error: import("@angular/core").WritableSignal<boolean>;
protected _exactPlayedPercent: import("@angular/core").WritableSignal<number>;
protected _exactCurrentTime: import("@angular/core").WritableSignal<number>;
protected _isPause: import("@angular/core").WritableSignal<boolean>;
protected _isLoading: import("@angular/core").WritableSignal<boolean>;
protected _exactDuration: import("@angular/core").WritableSignal<number>;
protected _normalizedData: import("@angular/core").WritableSignal<number[]>;
private readonly platformId;
private readonly isPlatformBrowser;
private readonly httpClient;
private readonly audioWaveService;
private readonly destroyRef;
private audioRef;
get exactPlayedPercent(): number;
get exactDuration(): number;
get exactCurrentTime(): number;
get isPause(): boolean;
get isLoading(): boolean;
get playedPercent(): number;
get currentTime(): number;
get duration(): number;
get width(): number;
ngAfterViewInit(): void;
ngOnDestroy(): void;
play(time?: number): void;
pause(): void;
stop(): void;
private calculatePercent;
setTime(mouseEvent: MouseEvent): void;
private startInterval;
private fetchAudio;
static ɵfac: i0.ɵɵFactoryDeclaration<NgxAudioWaveComponent, never>;
static ɵcmp: i0.ɵɵComponentDeclaration<NgxAudioWaveComponent, "ngx-audio-wave", never, { "color": { "alias": "color"; "required": false; "isSignal": true; }; "audioSrc": { "alias": "audioSrc"; "required": true; "isSignal": true; }; "height": { "alias": "height"; "required": false; "isSignal": true; }; "gap": { "alias": "gap"; "required": false; "isSignal": true; }; "rounded": { "alias": "rounded"; "required": false; "isSignal": true; }; "hideBtn": { "alias": "hideBtn"; "required": false; "isSignal": true; }; }, {}, never, never, false, never>;
}