import { Component, Input, Output, EventEmitter, ElementRef, forwardRef, ExistingProvider, OnInit, OnChanges, AfterViewInit } from '@angular/core';
import { InputBase } from './inputBase';
import { RdLib } from '../../base/rdLib';
import { ScriptLoaderService } from '../../library/script-loader.service';
declare const XLSX;
const provider: ExistingProvider = { provide: InputBase, useExisting: forwardRef(() => InputFile) };
export type UploadModes = "instantly" | "useButtons";
export type ReadModes = "readAsText" | "readAsDataURL" | "readAsArrayBuffer" | "readAsBinaryString";
@Component({
selector: 'rd-input-file',
template: `
`,
providers: [provider]
})
export class InputFile extends InputBase implements OnInit, OnChanges, AfterViewInit {
constructor(private element: ElementRef, private script: ScriptLoaderService) {
super();
(window).fileReader = this.fileReader.bind(this);
}
@Input("rd-model") model;
@Output("rd-modelChange") modelChange: EventEmitter = new EventEmitter();
@Output("rd-onUpload") changeEvent: EventEmitter = new EventEmitter();
@Output("rd-onResponse") onResponse: EventEmitter