diff --git a/src/app/services/file/file-loader.service.spec.ts b/src/app/services/file/file-loader.service.spec.ts new file mode 100644 index 000000000..b3d2db03e --- /dev/null +++ b/src/app/services/file/file-loader.service.spec.ts @@ -0,0 +1,16 @@ +import { TestBed } from '@angular/core/testing'; + +import { FileLoaderService } from './file-loader.service'; + +describe('FileLoaderService', () => { + let service: FileLoaderService; + + beforeEach(() => { + TestBed.configureTestingModule({}); + service = TestBed.inject(FileLoaderService); + }); + + it('should be created', () => { + expect(service).toBeTruthy(); + }); +}); diff --git a/src/app/services/file/file-loader.service.ts b/src/app/services/file/file-loader.service.ts new file mode 100644 index 000000000..d1de9fc19 --- /dev/null +++ b/src/app/services/file/file-loader.service.ts @@ -0,0 +1,27 @@ +import { Injectable } from '@angular/core'; + +@Injectable({ + providedIn: 'root' +}) +export class FileLoaderService { + + constructor() { } + + + loadeFile({ type = 'file'}): HTMLInputElement { + + let input = document.createElement('input'); + input.type = type; + + // input.onchange = () => { + // // you can use this method to get file and perform respective operations + // let files = Array.from(input.files); + // console.log(files); + // }; + + input.click(); + + return input + + } +} diff --git a/src/app/services/file/file-to-base64.service.spec.ts b/src/app/services/file/file-to-base64.service.spec.ts new file mode 100644 index 000000000..727e8e7c8 --- /dev/null +++ b/src/app/services/file/file-to-base64.service.spec.ts @@ -0,0 +1,16 @@ +import { TestBed } from '@angular/core/testing'; + +import { FileToBase64Service } from './file-to-base64.service'; + +describe('FileToBase64Service', () => { + let service: FileToBase64Service; + + beforeEach(() => { + TestBed.configureTestingModule({}); + service = TestBed.inject(FileToBase64Service); + }); + + it('should be created', () => { + expect(service).toBeTruthy(); + }); +}); diff --git a/src/app/services/file/file-to-base64.service.ts b/src/app/services/file/file-to-base64.service.ts new file mode 100644 index 000000000..53d7675b6 --- /dev/null +++ b/src/app/services/file/file-to-base64.service.ts @@ -0,0 +1,19 @@ +import { Injectable } from '@angular/core'; + +@Injectable({ + providedIn: 'root' +}) +export class FileToBase64Service { + + constructor() { } + + convert(file) { + return new Promise((resolve, reject) => { + const reader = new FileReader(); + reader.readAsDataURL(file); + reader.onload = () => resolve(reader.result); + reader.onerror = error => reject(error); + }); + + } +}