fix(core): update
This commit is contained in:
		
							
								
								
									
										34
									
								
								package-lock.json
									
									
									
										generated
									
									
									
								
							
							
						
						
									
										34
									
								
								package-lock.json
									
									
									
										generated
									
									
									
								
							| @@ -96,7 +96,6 @@ | ||||
|       "version": "3.0.11", | ||||
|       "resolved": "https://verdaccio.lossless.one/@pushrocks%2flik/-/lik-3.0.11.tgz", | ||||
|       "integrity": "sha512-SDKRPj9+xBTqozlDPcA7O6BcccM1Tw/sXPVP+OnhNxCubDZ/L2kGNpPpqm43NJUoNxSSo5wdBw4N7MAFYCGdVg==", | ||||
|       "dev": true, | ||||
|       "requires": { | ||||
|         "@pushrocks/smartdelay": "^2.0.3", | ||||
|         "@pushrocks/smartpromise": "^3.0.2", | ||||
| @@ -143,25 +142,22 @@ | ||||
|       "version": "2.0.3", | ||||
|       "resolved": "https://registry.npmjs.org/@pushrocks/smartdelay/-/smartdelay-2.0.3.tgz", | ||||
|       "integrity": "sha512-TXKDDqsc7sBTLl+oiYNaF6IdNk1n70i8ur8QfwcUU6tegTnrEkvMWy9h5Zdty/fq1ioCNpKLvuXoA+fgYVwKGQ==", | ||||
|       "dev": true, | ||||
|       "requires": { | ||||
|         "@pushrocks/smartpromise": "^3.0.2" | ||||
|       } | ||||
|     }, | ||||
|     "@pushrocks/smartevent": { | ||||
|       "version": "2.0.3", | ||||
|       "resolved": "https://registry.npmjs.org/@pushrocks/smartevent/-/smartevent-2.0.3.tgz", | ||||
|       "resolved": "https://verdaccio.lossless.one/@pushrocks%2fsmartevent/-/smartevent-2.0.3.tgz", | ||||
|       "integrity": "sha512-x4B1mzzE6LrMATXsRLNuZpMTlB2JodL44MA4bF4FucU3SBBiWhFv3CFJRlO9B23SKZ1fwdJQrk2lT7YTUHXXJQ==", | ||||
|       "dev": true, | ||||
|       "requires": { | ||||
|         "@pushrocks/smartpromise": "^2.0.5" | ||||
|       }, | ||||
|       "dependencies": { | ||||
|         "@pushrocks/smartpromise": { | ||||
|           "version": "2.0.5", | ||||
|           "resolved": "https://registry.npmjs.org/@pushrocks/smartpromise/-/smartpromise-2.0.5.tgz", | ||||
|           "integrity": "sha512-9j/chLtIiNkR0MDw7Mpxg9slxAVvAQwUZuiaPYX5KpHdKxQaHLI1VZ8IN0vPhwlfgNO4i4vGXV0wB8BvSDj03g==", | ||||
|           "dev": true | ||||
|           "resolved": "https://verdaccio.lossless.one/@pushrocks%2fsmartpromise/-/smartpromise-2.0.5.tgz", | ||||
|           "integrity": "sha512-9j/chLtIiNkR0MDw7Mpxg9slxAVvAQwUZuiaPYX5KpHdKxQaHLI1VZ8IN0vPhwlfgNO4i4vGXV0wB8BvSDj03g==" | ||||
|         } | ||||
|       } | ||||
|     }, | ||||
| @@ -279,7 +275,6 @@ | ||||
|       "version": "2.0.5", | ||||
|       "resolved": "https://verdaccio.lossless.one/@pushrocks%2fsmartrx/-/smartrx-2.0.5.tgz", | ||||
|       "integrity": "sha512-BOlIJmnCO8pxqu9f18D9UV5rIsyrmKeK/mWNMiAe/NH2OTeRPNLpgmhZBkXSKNVD8tSsD8aazs4BcACgYOg1FQ==", | ||||
|       "dev": true, | ||||
|       "requires": { | ||||
|         "@pushrocks/lik": "^3.0.11", | ||||
|         "@pushrocks/smartevent": "^2.0.3", | ||||
| @@ -304,7 +299,6 @@ | ||||
|       "version": "3.0.12", | ||||
|       "resolved": "https://registry.npmjs.org/@pushrocks/smarttime/-/smarttime-3.0.12.tgz", | ||||
|       "integrity": "sha512-NoMt1NUhNqcF5y7fCTHoC3d/+MobzgNUg6yHbSGxFRaentQzCrMPNahQIVLbrAStf03LUUBePUjSRdPYucP1gw==", | ||||
|       "dev": true, | ||||
|       "requires": { | ||||
|         "@pushrocks/smartpromise": "^3.0.2", | ||||
|         "@types/cron": "^1.7.1", | ||||
| @@ -364,7 +358,6 @@ | ||||
|       "version": "1.7.1", | ||||
|       "resolved": "https://registry.npmjs.org/@types/cron/-/cron-1.7.1.tgz", | ||||
|       "integrity": "sha512-48brwgU18DqA0mQX1As5OcJEo1yNjaXMM6Mk4r8K1dOzLJRQ37FE/kCivKx7ClKEHfhX2FdcxKzJ1B744a+V3A==", | ||||
|       "dev": true, | ||||
|       "requires": { | ||||
|         "@types/node": "*", | ||||
|         "moment": ">=2.14.0" | ||||
| @@ -411,14 +404,12 @@ | ||||
|     "@types/luxon": { | ||||
|       "version": "1.15.2", | ||||
|       "resolved": "https://registry.npmjs.org/@types/luxon/-/luxon-1.15.2.tgz", | ||||
|       "integrity": "sha512-zHPoyVrLvNaiMRYdhmh88Rn489ZgAgbc6iLxR5Yi0VCNfeNYHcszbhJV2vDHLNrVGy35BPtWBRn4OP2F9BBvFw==", | ||||
|       "dev": true | ||||
|       "integrity": "sha512-zHPoyVrLvNaiMRYdhmh88Rn489ZgAgbc6iLxR5Yi0VCNfeNYHcszbhJV2vDHLNrVGy35BPtWBRn4OP2F9BBvFw==" | ||||
|     }, | ||||
|     "@types/minimatch": { | ||||
|       "version": "3.0.3", | ||||
|       "resolved": "https://registry.npmjs.org/@types/minimatch/-/minimatch-3.0.3.tgz", | ||||
|       "integrity": "sha512-tHq6qdbT9U1IRSGf14CL0pUlULksvY9OZ+5eEgl1N7t+OA3tGvNpxJCzuKQlsNgCVwbAs670L1vcVQi8j9HjnA==", | ||||
|       "dev": true | ||||
|       "integrity": "sha512-tHq6qdbT9U1IRSGf14CL0pUlULksvY9OZ+5eEgl1N7t+OA3tGvNpxJCzuKQlsNgCVwbAs670L1vcVQi8j9HjnA==" | ||||
|     }, | ||||
|     "@types/minio": { | ||||
|       "version": "7.0.3", | ||||
| @@ -703,7 +694,6 @@ | ||||
|       "version": "1.7.2", | ||||
|       "resolved": "https://verdaccio.lossless.one/cron/-/cron-1.7.2.tgz", | ||||
|       "integrity": "sha512-+SaJ2OfeRvfQqwXQ2kgr0Y5pzBR/lijf5OpnnaruwWnmI799JfWr2jN2ItOV9s3A/+TFOt6mxvKzQq5F0Jp6VQ==", | ||||
|       "dev": true, | ||||
|       "requires": { | ||||
|         "moment-timezone": "^0.5.x" | ||||
|       } | ||||
| @@ -1122,8 +1112,7 @@ | ||||
|     "luxon": { | ||||
|       "version": "1.19.3", | ||||
|       "resolved": "https://verdaccio.lossless.one/luxon/-/luxon-1.19.3.tgz", | ||||
|       "integrity": "sha512-YwTDjGRQC0QC9Iya2g2eKZfgEFqRId4ZoLHORQcfTMB/5xrTx427V7ZPjQJ1vzvhA2vJfG2bh1Kv8V8IFMWCUA==", | ||||
|       "dev": true | ||||
|       "integrity": "sha512-YwTDjGRQC0QC9Iya2g2eKZfgEFqRId4ZoLHORQcfTMB/5xrTx427V7ZPjQJ1vzvhA2vJfG2bh1Kv8V8IFMWCUA==" | ||||
|     }, | ||||
|     "make-error": { | ||||
|       "version": "1.3.5", | ||||
| @@ -1214,14 +1203,12 @@ | ||||
|     "moment": { | ||||
|       "version": "2.24.0", | ||||
|       "resolved": "https://registry.npmjs.org/moment/-/moment-2.24.0.tgz", | ||||
|       "integrity": "sha512-bV7f+6l2QigeBBZSM/6yTNq4P2fNpSWj/0e7jQcy87A8e7o2nAfP/34/2ky5Vw4B9S446EtIhodAzkFCcR4dQg==", | ||||
|       "dev": true | ||||
|       "integrity": "sha512-bV7f+6l2QigeBBZSM/6yTNq4P2fNpSWj/0e7jQcy87A8e7o2nAfP/34/2ky5Vw4B9S446EtIhodAzkFCcR4dQg==" | ||||
|     }, | ||||
|     "moment-timezone": { | ||||
|       "version": "0.5.26", | ||||
|       "resolved": "https://registry.npmjs.org/moment-timezone/-/moment-timezone-0.5.26.tgz", | ||||
|       "integrity": "sha512-sFP4cgEKTCymBBKgoxZjYzlSovC20Y6J7y3nanDc5RoBIXKlZhoYwBoZGe3flwU6A372AcRwScH8KiwV6zjy1g==", | ||||
|       "dev": true, | ||||
|       "requires": { | ||||
|         "moment": ">= 2.9.0" | ||||
|       } | ||||
| @@ -1478,7 +1465,6 @@ | ||||
|       "version": "6.5.3", | ||||
|       "resolved": "https://verdaccio.lossless.one/rxjs/-/rxjs-6.5.3.tgz", | ||||
|       "integrity": "sha512-wuYsAYYFdWTAnAaPoKGNhfpWwKZbJW+HgAJ+mImp+Epl7BG8oNWBCTyRM8gba9k4lk8BgWdoYm21Mo/RYhhbgA==", | ||||
|       "dev": true, | ||||
|       "requires": { | ||||
|         "tslib": "^1.9.0" | ||||
|       } | ||||
| @@ -1618,8 +1604,7 @@ | ||||
|     "symbol-tree": { | ||||
|       "version": "3.2.4", | ||||
|       "resolved": "https://registry.npmjs.org/symbol-tree/-/symbol-tree-3.2.4.tgz", | ||||
|       "integrity": "sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw==", | ||||
|       "dev": true | ||||
|       "integrity": "sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw==" | ||||
|     }, | ||||
|     "through2": { | ||||
|       "version": "3.0.1", | ||||
| @@ -1645,8 +1630,7 @@ | ||||
|     "tslib": { | ||||
|       "version": "1.10.0", | ||||
|       "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.10.0.tgz", | ||||
|       "integrity": "sha512-qOebF53frne81cf0S9B41ByenJ3/IuH8yJKngAX35CmiZySA0khhkovshKK+jGCaMnVomla7gVlIcc3EvKPbTQ==", | ||||
|       "dev": true | ||||
|       "integrity": "sha512-qOebF53frne81cf0S9B41ByenJ3/IuH8yJKngAX35CmiZySA0khhkovshKK+jGCaMnVomla7gVlIcc3EvKPbTQ==" | ||||
|     }, | ||||
|     "tslint": { | ||||
|       "version": "5.20.0", | ||||
|   | ||||
| @@ -22,6 +22,7 @@ | ||||
|     "@pushrocks/qenv": "^4.0.6", | ||||
|     "@pushrocks/smartpath": "^4.0.1", | ||||
|     "@pushrocks/smartpromise": "^3.0.6", | ||||
|     "@pushrocks/smartrx": "^2.0.5", | ||||
|     "@pushrocks/streamfunction": "^1.0.24", | ||||
|     "@types/minio": "^7.0.3", | ||||
|     "minio": "^7.0.12" | ||||
|   | ||||
| @@ -1,6 +1,7 @@ | ||||
| import * as plugins from './smartbucket.plugins'; | ||||
| import { SmartBucket } from './smartbucket.classes.smartbucket'; | ||||
| import { Directory } from './smartbucket.classes.directory'; | ||||
| import { Observable } from 'rxjs'; | ||||
|  | ||||
| export class Bucket { | ||||
|   public static async getBucketByName(smartbucketRef: SmartBucket, bucketNameArg: string) { | ||||
| @@ -64,18 +65,36 @@ export class Bucket { | ||||
|    */ | ||||
|   public async fastGet(pathArg: string) { | ||||
|     const done = plugins.smartpromise.defer(); | ||||
|     let completeFile: string = ''; | ||||
|     const replaySubject = await this.fastGetStream(pathArg); | ||||
|     replaySubject.subscribe( | ||||
|       chunkString => { | ||||
|         completeFile += chunkString; | ||||
|       }, | ||||
|       err => { | ||||
|         console.log(err); | ||||
|       }, | ||||
|       () => { | ||||
|         done.resolve(); | ||||
|       } | ||||
|     ); | ||||
|     await done.promise; | ||||
|     return completeFile; | ||||
|   } | ||||
|  | ||||
|   public async fastGetStream(pathArg: string): Promise<plugins.smartrx.rxjs.ReplaySubject<string>> { | ||||
|     const fileStream = await this.smartbucketRef.minioClient | ||||
|       .getObject(this.name, pathArg) | ||||
|       .catch(e => console.log(e)); | ||||
|     let completeFile: string = ''; | ||||
|     const replaySubject = new plugins.smartrx.rxjs.ReplaySubject<string>(); | ||||
|     const duplexStream = plugins.streamfunction.createDuplexStream<Buffer, Buffer>( | ||||
|       async chunk => { | ||||
|         const chunkString = chunk.toString(); | ||||
|         completeFile += chunkString; | ||||
|         replaySubject.next(chunkString); | ||||
|         return chunk; | ||||
|       }, | ||||
|       async cb => { | ||||
|         done.resolve(); | ||||
|         replaySubject.complete(); | ||||
|         return Buffer.from(''); | ||||
|       } | ||||
|     ); | ||||
| @@ -85,8 +104,7 @@ export class Bucket { | ||||
|     } | ||||
|  | ||||
|     fileStream.pipe(duplexStream); | ||||
|     await done.promise; | ||||
|     return completeFile; | ||||
|     return replaySubject; | ||||
|   } | ||||
|  | ||||
|   /** | ||||
|   | ||||
| @@ -177,6 +177,12 @@ export class Directory { | ||||
|     return result; | ||||
|   } | ||||
|  | ||||
|   public async fastGetStream(pathArg: string): Promise<plugins.smartrx.rxjs.ReplaySubject<string>> { | ||||
|     const path = plugins.path.join(this.getBasePath(), pathArg); | ||||
|     const result = await this.bucketRef.fastGetStream(path); | ||||
|     return result; | ||||
|   } | ||||
|  | ||||
|   public async fastRemove(pathArg: string) { | ||||
|     const path = plugins.path.join(this.getBasePath(), pathArg); | ||||
|     await this.bucketRef.fastRemove(path); | ||||
|   | ||||
| @@ -5,9 +5,10 @@ export { path }; | ||||
|  | ||||
| import * as smartpath from '@pushrocks/smartpath'; | ||||
| import * as smartpromise from '@pushrocks/smartpromise'; | ||||
| import * as smartrx from '@pushrocks/smartrx'; | ||||
| import * as streamfunction from '@pushrocks/streamfunction'; | ||||
|  | ||||
| export { smartpath, smartpromise, streamfunction }; | ||||
| export { smartpath, smartpromise, smartrx, streamfunction }; | ||||
|  | ||||
| // third party scope | ||||
| import * as minio from 'minio'; | ||||
|   | ||||
		Reference in New Issue
	
	Block a user