fix(core): update
This commit is contained in:
		
							
								
								
									
										1200
									
								
								package-lock.json
									
									
									
										generated
									
									
									
								
							
							
						
						
									
										1200
									
								
								package-lock.json
									
									
									
										generated
									
									
									
								
							
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							
							
								
								
									
										14
									
								
								package.json
									
									
									
									
									
								
							
							
						
						
									
										14
									
								
								package.json
									
									
									
									
									
								
							| @@ -13,14 +13,16 @@ | |||||||
|     "format": "(gitzone format)" |     "format": "(gitzone format)" | ||||||
|   }, |   }, | ||||||
|   "devDependencies": { |   "devDependencies": { | ||||||
|     "@gitzone/tsbuild": "^2.0.22", |     "@gitzone/tsbuild": "^2.1.17", | ||||||
|     "@gitzone/tstest": "^1.0.15", |     "@gitzone/tstest": "^1.0.24", | ||||||
|     "@pushrocks/tapbundle": "^3.0.7", |     "@pushrocks/tapbundle": "^3.0.13", | ||||||
|     "@types/node": "^11.9.5", |     "@types/node": "^12.7.8", | ||||||
|     "tslint": "^5.11.0", |     "tslint": "^5.20.0", | ||||||
|     "tslint-config-prettier": "^1.15.0" |     "tslint-config-prettier": "^1.15.0" | ||||||
|   }, |   }, | ||||||
|   "dependencies": { |   "dependencies": { | ||||||
|     "jsonwebtoken": "^8.5.0" |     "@pushrocks/smartcrypto": "^1.0.5", | ||||||
|  |     "@types/jsonwebtoken": "^8.3.4", | ||||||
|  |     "jsonwebtoken": "^8.5.1" | ||||||
|   } |   } | ||||||
| } | } | ||||||
|   | |||||||
							
								
								
									
										12
									
								
								test/test.ts
									
									
									
									
									
								
							
							
						
						
									
										12
									
								
								test/test.ts
									
									
									
									
									
								
							| @@ -1,8 +1,16 @@ | |||||||
| import { expect, tap } from '@pushrocks/tapbundle'; | import { expect, tap } from '@pushrocks/tapbundle'; | ||||||
| import * as smartjwt from '../ts/index'; | import * as smartjwt from '../ts/index'; | ||||||
|  |  | ||||||
| tap.test('first test', async () => { | let smartjwtInstance: smartjwt.SmartJwt; | ||||||
|   console.log(smartjwt.standardExport); |  | ||||||
|  | tap.test('should create a valid instance', async () => { | ||||||
|  |   smartjwtInstance = new smartjwt.SmartJwt(); | ||||||
|  |   await smartjwtInstance.createNewKeyPair(); | ||||||
|  |   console.log(smartjwtInstance); | ||||||
|  | }); | ||||||
|  |  | ||||||
|  | tap.test('should create a valid jwt', async () => { | ||||||
|  |    | ||||||
| }); | }); | ||||||
|  |  | ||||||
| tap.start(); | tap.start(); | ||||||
|   | |||||||
| @@ -1,5 +1 @@ | |||||||
| import * as plugins from './smartjwt.plugins'; | export * from './smartjwt.classes.smartjwt'; | ||||||
|  |  | ||||||
| export class SmartJwt { |  | ||||||
|    |  | ||||||
| } |  | ||||||
|   | |||||||
							
								
								
									
										50
									
								
								ts/smartjwt.classes.smartjwt.ts
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										50
									
								
								ts/smartjwt.classes.smartjwt.ts
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,50 @@ | |||||||
|  | import * as plugins from './smartjwt.plugins'; | ||||||
|  |  | ||||||
|  | /** | ||||||
|  |  *  | ||||||
|  |  */ | ||||||
|  | export class SmartJwt { | ||||||
|  |   public smartcryptoInstance = new plugins.smartcrypto.Smartcrypto(); | ||||||
|  |   public publicKey: plugins.smartcrypto.PublicKey; | ||||||
|  |   public privateKey: plugins.smartcrypto.PrivateKey; | ||||||
|  |  | ||||||
|  |   constructor() {}; | ||||||
|  |  | ||||||
|  |   /** | ||||||
|  |    * creates a JWT | ||||||
|  |    */ | ||||||
|  |   public async createJWT(payloadArg: any) { | ||||||
|  |     return plugins.jsonwebtoken.sign(payloadArg, this.privateKey.toPemString()); | ||||||
|  |   } | ||||||
|  |  | ||||||
|  |   /** | ||||||
|  |    * checks a JWT | ||||||
|  |    */ | ||||||
|  |   public async verifyJWTAndGetData(jwtArg: string) { | ||||||
|  |     return plugins.jsonwebtoken.verify(jwtArg, this.publicKey.toPemString()); | ||||||
|  |   }; | ||||||
|  |  | ||||||
|  |   /** | ||||||
|  |    * sets a private key to create jwts with | ||||||
|  |    */ | ||||||
|  |   public async setPrivateKey(privateKey: plugins.smartcrypto.PrivateKey) { | ||||||
|  |     this.privateKey = privateKey; | ||||||
|  |   } | ||||||
|  |  | ||||||
|  |   /** | ||||||
|  |    * sets a public key  | ||||||
|  |    */ | ||||||
|  |   public async setPublicKey(publicKey: plugins.smartcrypto.PublicKey) { | ||||||
|  |     this.publicKey = publicKey; | ||||||
|  |   } | ||||||
|  |  | ||||||
|  |  | ||||||
|  |   /** | ||||||
|  |    * creates a new keypair | ||||||
|  |    */ | ||||||
|  |   public async createNewKeyPair() { | ||||||
|  |     const keypair = await this.smartcryptoInstance.createKeyPair(); | ||||||
|  |     this.setPrivateKey(keypair.privateKey); | ||||||
|  |     this.setPublicKey(keypair.publicKey); | ||||||
|  |   } | ||||||
|  | } | ||||||
| @@ -1,3 +1,11 @@ | |||||||
|  | // @pushrocks scope | ||||||
|  | import * as smartcrypto from '@pushrocks/smartcrypto'; | ||||||
|  |  | ||||||
|  | export { | ||||||
|  |   smartcrypto | ||||||
|  | }; | ||||||
|  |  | ||||||
|  | // thirdparty scope | ||||||
| import * as jsonwebtoken from 'jsonwebtoken'; | import * as jsonwebtoken from 'jsonwebtoken'; | ||||||
| export { | export { | ||||||
|   jsonwebtoken |   jsonwebtoken | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user