mirror of
https://code.equilibrium.co.ao/ITO/doneit-web.git
synced 2026-04-18 12:37:53 +00:00
1 line
14 KiB
JSON
1 line
14 KiB
JSON
{"ast":null,"code":"import _asyncToGenerator from \"C:/Users/eudes.inacio/GabineteDigital/gabinete-digital-fo/node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js\";\nimport { __decorate } from \"tslib\";\nimport { Injectable } from '@angular/core';\nimport { FileLoaderService } from '../file/file-loader.service';\nimport { InAppBrowser } from '@ionic-native/in-app-browser/ngx';\nimport { LoadingController, Platform } from '@ionic/angular';\nimport { Filesystem, Directory } from '@capacitor/filesystem';\nimport { FileToBase64Service } from 'src/app/services/file/file-to-base64.service';\nconst IMAGE_DIR = 'stored-images';\nlet FileService = class FileService {\n constructor(fileLoaderService, iab, loadingCtrl, platform, fileToBase64Service) {\n this.fileLoaderService = fileLoaderService;\n this.iab = iab;\n this.loadingCtrl = loadingCtrl;\n this.platform = platform;\n this.fileToBase64Service = fileToBase64Service;\n this.images = [];\n this.photos = [];\n this.downloadProgess = 0;\n this.convertBlobToBase64 = blob => new Promise((resolve, reject) => {\n const reader = new FileReader();\n reader.onerror = reject;\n reader.onload = () => {\n resolve(reader.result);\n };\n reader.readAsDataURL(blob);\n });\n }\n saveImage(photo) {\n var _this = this;\n return _asyncToGenerator(function* () {\n const base64Data = yield _this.readAsBase64(photo);\n const fileName = new Date().getTime() + '.jpeg';\n const savedFile = yield Filesystem.writeFile({\n path: `${IMAGE_DIR}/${fileName}`,\n data: base64Data,\n directory: Directory.Data\n });\n })();\n }\n //new method 3\n loadFiles() {\n var _this2 = this;\n return _asyncToGenerator(function* () {\n const loading = yield _this2.loadingCtrl.create({\n message: 'Loading data...'\n });\n yield loading.present();\n return new Promise((resolve, reject) => {\n Filesystem.readdir({\n path: IMAGE_DIR,\n directory: Directory.Data\n }).then(result => {\n let lastphoto = result.files[result.files.length - 1];\n resolve(lastphoto);\n }, /*#__PURE__*/function () {\n var _ref = _asyncToGenerator(function* (err) {\n reject('ERROR FILE DOSENT EXIST');\n // Folder does not yet exists!\n yield Filesystem.mkdir({\n path: IMAGE_DIR,\n directory: Directory.Data,\n recursive: true\n });\n });\n return function (_x) {\n return _ref.apply(this, arguments);\n };\n }()).then(_ => {\n loading.dismiss();\n });\n });\n })();\n }\n //new method 2\n readAsBase64(photo) {\n var _this3 = this;\n return _asyncToGenerator(function* () {\n if (_this3.platform.is('hybrid')) {\n const file = yield Filesystem.readFile({\n path: photo.path\n });\n return file.data;\n } else {\n // Fetch the photo, read as a blob, then convert to base64 format\n const response = yield fetch(photo.webPath);\n const blob = yield response.blob();\n return yield _this3.convertBlobToBase64(blob);\n }\n })();\n }\n readFile(filePath) {\n return _asyncToGenerator(function* () {\n return yield Filesystem.readFile({\n path: filePath,\n directory: Directory.Data\n });\n })();\n }\n //new method 4\n loadFileData(fileName) {\n var _this4 = this;\n return _asyncToGenerator(function* () {\n // for (let f of fileNames) {\n const filePath = `${IMAGE_DIR}/${fileName}`;\n const readFile = yield _this4.readFile(filePath);\n const image = {\n name: fileName,\n path: filePath,\n data: `data:image/jpeg;base64,${readFile.data}`\n };\n const capturedImage = image.data;\n const capturedImageTitle = new Date().getTime() + '.jpeg';\n return {\n capturedImage,\n capturedImageTitle\n };\n })();\n }\n getFileFromDevice(types) {\n var _this5 = this;\n const input = this.fileLoaderService.createInput({\n accept: types\n });\n return new Promise((resolve, reject) => {\n input.onchange = /*#__PURE__*/_asyncToGenerator(function* () {\n const file = _this5.fileLoaderService.getFirstFile(input);\n resolve(file);\n });\n });\n }\n viewDocumentByUrl(url) {\n const browser = this.iab.create(url, \"_parent\");\n browser.show();\n }\n};\nFileService.ctorParameters = () => [{\n type: FileLoaderService\n}, {\n type: InAppBrowser\n}, {\n type: LoadingController\n}, {\n type: Platform\n}, {\n type: FileToBase64Service\n}];\nFileService = __decorate([Injectable({\n providedIn: 'root'\n})], FileService);\nexport { FileService };","map":{"version":3,"mappings":"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","names":["Injectable","FileLoaderService","InAppBrowser","LoadingController","Platform","Filesystem","Directory","FileToBase64Service","IMAGE_DIR","FileService","constructor","fileLoaderService","iab","loadingCtrl","platform","fileToBase64Service","blob","Promise","resolve","reject","reader","FileReader","onerror","onload","result","readAsDataURL","saveImage","photo","base64Data","_this","readAsBase64","fileName","Date","getTime","savedFile","writeFile","path","data","directory","Data","loadFiles","loading","_this2","create","message","present","readdir","then","lastphoto","files","length","err","mkdir","recursive","_","dismiss","_this3","is","file","readFile","response","fetch","webPath","convertBlobToBase64","filePath","loadFileData","_this4","image","name","capturedImage","capturedImageTitle","getFileFromDevice","types","input","createInput","accept","onchange","_this5","getFirstFile","viewDocumentByUrl","url","browser","show","providedIn"],"sourceRoot":"","sources":["C:\\Users\\eudes.inacio\\GabineteDigital\\gabinete-digital-fo\\src\\app\\services\\functions\\file.service.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\r\nimport { FileLoaderService } from '../file/file-loader.service';\r\nimport { InAppBrowser } from '@ionic-native/in-app-browser/ngx';\r\nimport { LoadingController, Platform } from '@ionic/angular';\r\nimport {Photo} from '@capacitor/camera';\r\nimport { FileType } from 'src/app/models/fileType';\r\nimport { Filesystem, Directory } from '@capacitor/filesystem';\r\nimport { FileToBase64Service } from 'src/app/services/file/file-to-base64.service';\r\n\r\nconst IMAGE_DIR = 'stored-images';\r\n\r\ninterface LocalFile {\r\n name: string;\r\n path: string;\r\n data: string;\r\n}\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class FileService {\r\n\r\n images: LocalFile[] = [];\r\n capturedImage:any;\r\n capturedImageTitle:any;\r\n showLoader: boolean;\r\n\r\n files: Set<File>;\r\n photos: any[] = [];\r\n idroom: any;\r\n\r\n downloadProgess = 0;\r\n downloadFilename: any;\r\n convertBlobToBase64Worker;\r\n\r\n constructor(\r\n private fileLoaderService: FileLoaderService,\r\n private iab: InAppBrowser,\r\n private loadingCtrl: LoadingController,\r\n private platform: Platform,\r\n private fileToBase64Service: FileToBase64Service\r\n ) {}\r\n\r\n\r\n convertBlobToBase64 = (blob: Blob) => new Promise((resolve, reject) => {\r\n const reader = new FileReader;\r\n reader.onerror = reject;\r\n reader.onload = () => {\r\n resolve(reader.result);\r\n };\r\n reader.readAsDataURL(blob);\r\n });\r\n\r\n\r\n\r\n async saveImage(photo: Photo) {\r\n const base64Data = await this.readAsBase64(photo);\r\n\r\n const fileName = new Date().getTime() + '.jpeg';\r\n const savedFile = await Filesystem.writeFile({\r\n path: `${IMAGE_DIR}/${fileName}`,\r\n data: base64Data,\r\n directory: Directory.Data\r\n });\r\n\r\n }\r\n\r\n //new method 3\r\n async loadFiles() {\r\n\r\n const loading = await this.loadingCtrl.create({\r\n message: 'Loading data...',\r\n });\r\n await loading.present();\r\n\r\n return new Promise((resolve, reject)=>{\r\n Filesystem.readdir({\r\n path: IMAGE_DIR,\r\n directory: Directory.Data,\r\n }).then(result => {\r\n \r\n let lastphoto = result.files[result.files.length - 1]\r\n resolve(lastphoto)\r\n },\r\n async (err) => {\r\n \r\n reject('ERROR FILE DOSENT EXIST')\r\n // Folder does not yet exists!\r\n await Filesystem.mkdir({\r\n path: IMAGE_DIR,\r\n directory: Directory.Data,\r\n recursive: true\r\n });\r\n }\r\n ).then(_ => {\r\n loading.dismiss();\r\n });\r\n })\r\n }\r\n\r\n\r\n //new method 2\r\n private async readAsBase64(photo: Photo) {\r\n if (this.platform.is('hybrid')) {\r\n const file = await Filesystem.readFile({\r\n path: photo.path\r\n });\r\n\r\n return file.data;\r\n }\r\n else {\r\n // Fetch the photo, read as a blob, then convert to base64 format\r\n const response = await fetch(photo.webPath);\r\n const blob = await response.blob();\r\n\r\n return await this.convertBlobToBase64(blob) as string;\r\n }\r\n }\r\n\r\n\r\n async readFile(filePath) {\r\n return await Filesystem.readFile({\r\n path: filePath,\r\n directory: Directory.Data,\r\n });\r\n }\r\n\r\n //new method 4\r\n async loadFileData(fileName: string) {\r\n \r\n // for (let f of fileNames) {\r\n const filePath = `${IMAGE_DIR}/${fileName}`;\r\n\r\n const readFile = await this.readFile(filePath)\r\n\r\n const image ={\r\n name: fileName,\r\n path: filePath,\r\n data: `data:image/jpeg;base64,${readFile.data}`,\r\n };\r\n\r\n \r\n\r\n const capturedImage = image.data\r\n\r\n const capturedImageTitle = new Date().getTime() + '.jpeg';\r\n\r\n\r\n return { capturedImage, capturedImageTitle}\r\n\r\n }\r\n\r\n\r\n\r\n getFileFromDevice(types: typeof FileType[]) {\r\n const input = this.fileLoaderService.createInput({\r\n accept: types\r\n })\r\n\r\n return new Promise((resolve, reject)=>{\r\n input.onchange = async () => {\r\n const file = this.fileLoaderService.getFirstFile(input)\r\n\r\n resolve(file);\r\n };\r\n })\r\n\r\n\r\n }\r\n\r\n\r\n viewDocumentByUrl(url) {\r\n const browser = this.iab.create(url,\"_parent\");\r\n browser.show();\r\n }\r\n\r\n}\r\n"]},"metadata":{},"sourceType":"module"} |