12345678910 |
- /**
- * @copyright © 未来飞马 © 未来全栈 www.fmode.cn
- * 版权所有 © 未来飞马 © 江西脑控科技有限公司 Copyright © Fmode Technology Co., Ltd.
- * 保留所有权利 All Rights Reserved.
- * /home/ryan/workspace/nova/nova-admin/dist/fmode-ng/esm2022/lib/storage/service-hwobs/hwobs.service.mjs
- */
- import{Injectable}from"@angular/core";import ObsClient from"esdk-obs-browserjs";import Parse from"parse";import*as i0 from"@angular/core";export class HwobsService{constructor(){this.Attachment=Parse.Object.extend("Attachment"),this.host="https://web3-test.obs.cn-south-1.myhuaweicloud.com/",this.bucketName="web3-test",this.obsClient=new ObsClient({access_key_id:"6UIET20WHUI5TLXWOVNA",secret_access_key:"YaoY8Kj3TeGZHEcBzplTMZiPGNL13Y3frEavC1kF",server:"https://obs.cn-south-1.myhuaweicloud.com"})}listDir(e){return new Promise(((t,s)=>{this.obsClient.listObjects({Bucket:this.bucketName,Prefix:e,Delimiter:"/"},((e,r)=>{if(e)console.error("Error--\x3e"+e),s(e);else{if(console.log("Status--\x3e"+r.CommonMsg.Status),console.log(r),r.CommonMsg.Status<300&&r.InterfaceResult)for(var o in r.InterfaceResult.Contents)console.log("Contents["+o+"]:"),console.log("Key--\x3e"+r.InterfaceResult.Contents[o].Key),console.log("Owner[ID]--\x3e"+r.InterfaceResult.Contents[o].Owner.ID);let e=r.InterfaceResult.CommonPrefixes,s=r.InterfaceResult.Contents;t({dirs:e,files:s})}}))}))}async uploadFile(e,t){let s=await this.checkFileExists(e);return s?.id?s:new Promise(((s,r)=>{this.obsClient.putObject({Bucket:this.bucketName,Key:t,SourceFile:e},(async(o,a)=>{if(o)console.error("Error--\x3e"+o),r(o);else{console.log("Status--\x3e"+a.CommonMsg.Status);let r=await this.saveAttachment(e,t);s(r)}}))}))}async checkFileExists(e){let t,s=await this.getFileHash(e),r=new Parse.Query("Attachment");r.equalTo("hash",s),r.equalTo("size",e.size);let o=await r.first();return o?.id||(o=new this.Attachment),t=o,t}async saveAttachment(e,t){let s=await this.getFileHash(e),r=await this.checkFileExists(e);return r.set("name",e.name),r.set("size",e.size),r.set("mime",e.type),r.set("url",this.host+t),r.set("hash",s),r=await r.save(),r}async getFileHash(e){return new Promise(((t,s)=>{const r=new FileReader;r.onload=async e=>{const s=e.target.result,r=await crypto.subtle.digest("SHA-256",s),o=Array.from(new Uint8Array(r)).map((e=>e.toString(16).padStart(2,"0"))).join("");t(o)},r.onerror=e=>{s(e.target.error)},r.readAsArrayBuffer(e)}))}static{this.ɵfac=i0.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"17.3.12",ngImport:i0,type:HwobsService,deps:[],target:i0.ɵɵFactoryTarget.Injectable})}static{this.ɵprov=i0.ɵɵngDeclareInjectable({minVersion:"12.0.0",version:"17.3.12",ngImport:i0,type:HwobsService,providedIn:"root"})}}i0.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"17.3.12",ngImport:i0,type:HwobsService,decorators:[{type:Injectable,args:[{providedIn:"root"}]}],ctorParameters:()=>[]});
- var MODULE_PATH_NEED = `6K+l5paH5Lu25piv5pys6aG555uu55qE5LiA6YOo5YiGIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIHRoZSBDb21wb25lbnRzIGluIEZtb2RlIEluYy4KICAgIOeJiOadg+aJgOaciSDCqSDmnKrmnaXpo57pqawgwqkg5rGf6KW/6ISR5o6n56eR5oqA5pyJ6ZmQ5YWs5Y+4IENvcHlyaWdodCDCqSBGbW9kZSBUZWNobm9sb2d5IENvLiwgTHRkLgogICAg5L+d55WZ5omA5pyJ5p2D5YipIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgICDkuKXnpoHlnKjmnKrnu4/mjojmnYPnmoTmg4XlhrXkuIvvvIzpgJrov4fku7vkvZXlqpLku4vlpI3liLbmraTmlofku7YgVW5hdXRob3JpemVkIGNvcHlpbmcgb2YgdGhpcyBmaWxlLCB2aWEgYW55IG1lZGl1bSBpcyBzdHJpY3RseSBwcm9oaWJpdGVkCiAgICDor6Xmlofku7bmmK/kuJPmnInnmoTmnLrlr4bmlofku7YgUHJvcHJpZXRhcnkgYW5kIGNvbmZpZGVudGlhbAogICAKICAgIENvcHlyaWdodCAyMDIxLW5vdyBGbW9kZSBJbmMuIHN1cHBvcnRAZm1vZGUuY24uIDE4NjA3MDA3MDczLgogICAg5L+d55WZ5omA5pyJ5p2D5YipIEFsbCByaWdodHMgcmVzZXJ2ZWQuCgogICAgUEFUSDovaG9tZS9yeWFuL3dvcmtzcGFjZS9ub3ZhL25vdmEtYWRtaW4vZGlzdC9mbW9kZS1uZy9lc20yMDIyL2xpYi9zdG9yYWdlL3NlcnZpY2UtaHdvYnMvaHdvYnMuc2VydmljZS5tanM=`
-
|