@acrodata/gui
Version:
JSON powered GUI for configurable panels.
41 lines (40 loc) • 1.94 kB
TypeScript
import { ChangeDetectorRef, ElementRef, EventEmitter, OnChanges, SimpleChanges } from '@angular/core';
import { ControlValueAccessor } from '@angular/forms';
import { GuiIconsRegistry } from '../gui-icons';
import { GuiControl } from '../interface';
import { GuiFileUploaderConfig } from './file-uploader-config';
import * as i0 from "@angular/core";
export type FileUploadType = 'image' | 'video' | 'audio' | '*';
export interface FileUploadContent {
data: File;
progress: number;
inProgress: boolean;
}
export declare class GuiFileUploader implements ControlValueAccessor, OnChanges {
private fileUploaderCfg;
private cdr;
fileInput: ElementRef<HTMLInputElement>;
config: Partial<GuiControl>;
disabled: boolean;
type: FileUploadType;
name: string;
accept: string;
fileChange: EventEmitter<string>;
url: string;
fileUpload: FileUploadContent;
private onChange;
private onTouched;
constructor(fileUploaderCfg: GuiFileUploaderConfig, cdr: ChangeDetectorRef, iconsRegistry: GuiIconsRegistry);
ngOnChanges(changes: SimpleChanges): void;
writeValue(value: string): void;
registerOnChange(fn: (value: string) => void): void;
registerOnTouched(fn: () => void): void;
setDisabledState(isDisabled: boolean): void;
upload(fileUpload: FileUploadContent): void;
onUrlChange(e: Event): void;
onFileChange(e: Event): void;
onBlur(): void;
onClear(): void;
static ɵfac: i0.ɵɵFactoryDeclaration<GuiFileUploader, never>;
static ɵcmp: i0.ɵɵComponentDeclaration<GuiFileUploader, "gui-file-uploader", never, { "config": { "alias": "config"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; "type": { "alias": "type"; "required": false; }; "name": { "alias": "name"; "required": false; }; "accept": { "alias": "accept"; "required": false; }; }, { "fileChange": "fileChange"; }, never, never, true, never>;
}