import type { IFieldBase } from './field.types'; import { FieldBase } from './field.types'; export interface IFile extends IFieldBase { multiple?: boolean, // optional showPreview?: boolean, // optional } export class FileModel extends FieldBase implements IFile { type = "file"; subType = "file" // component = StreamFile; showPreview = true; validation = [ { action: 'file', message: 'This file is not valid.' } ]; constructor(file: Partial) { super(file); this.validation = [ ...this.validation, ...(file.validation || []) ]; this.showPreview = file.showPreview || this.showPreview; } }