fix(core): update
This commit is contained in:
		
							
								
								
									
										17315
									
								
								package-lock.json
									
									
									
										generated
									
									
									
								
							
							
						
						
									
										17315
									
								
								package-lock.json
									
									
									
										generated
									
									
									
								
							
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							
							
								
								
									
										16
									
								
								package.json
									
									
									
									
									
								
							
							
						
						
									
										16
									
								
								package.json
									
									
									
									
									
								
							| @@ -5,6 +5,7 @@ | |||||||
|   "description": "securely request from browsers", |   "description": "securely request from browsers", | ||||||
|   "main": "dist_ts/index.js", |   "main": "dist_ts/index.js", | ||||||
|   "typings": "dist_ts/index.d.ts", |   "typings": "dist_ts/index.d.ts", | ||||||
|  |   "type": "module", | ||||||
|   "author": "Lossless GmbH", |   "author": "Lossless GmbH", | ||||||
|   "license": "MIT", |   "license": "MIT", | ||||||
|   "scripts": { |   "scripts": { | ||||||
| @@ -13,20 +14,21 @@ | |||||||
|     "format": "(gitzone format)" |     "format": "(gitzone format)" | ||||||
|   }, |   }, | ||||||
|   "devDependencies": { |   "devDependencies": { | ||||||
|     "@gitzone/tsbuild": "^2.1.29", |     "@gitzone/tsbuild": "^2.1.56", | ||||||
|     "@gitzone/tsbundle": "^1.0.89", |     "@gitzone/tsbundle": "^1.0.98", | ||||||
|     "@gitzone/tstest": "^1.0.60", |     "@gitzone/tstest": "^1.0.68", | ||||||
|     "@pushrocks/smartexpress": "^3.0.108", |     "@pushrocks/smartexpress": "^3.0.108", | ||||||
|     "@pushrocks/tapbundle": "^4.0.3", |     "@pushrocks/tapbundle": "^5.0.2", | ||||||
|     "@types/node": "^17.0.17", |     "@types/node": "^17.0.21", | ||||||
|     "tslint": "^6.1.3", |     "tslint": "^6.1.3", | ||||||
|     "tslint-config-prettier": "^1.18.0" |     "tslint-config-prettier": "^1.18.0" | ||||||
|   }, |   }, | ||||||
|   "dependencies": { |   "dependencies": { | ||||||
|     "@pushrocks/smartdelay": "^2.0.13", |     "@pushrocks/smartdelay": "^2.0.13", | ||||||
|     "@pushrocks/smartenv": "^4.0.16", |     "@pushrocks/smartenv": "^5.0.0", | ||||||
|     "@pushrocks/smartjson": "^4.0.6", |     "@pushrocks/smartjson": "^4.0.6", | ||||||
|     "node-fetch": "^2.6.1" |     "@pushrocks/smartpromise": "^3.1.7", | ||||||
|  |     "node-fetch": "^3.2.3" | ||||||
|   }, |   }, | ||||||
|   "files": [ |   "files": [ | ||||||
|     "ts/**/*", |     "ts/**/*", | ||||||
|   | |||||||
| @@ -1,5 +1,5 @@ | |||||||
| import { expect, tap } from '@pushrocks/tapbundle'; | import { expect, tap } from '@pushrocks/tapbundle'; | ||||||
| import * as webrequest from '../ts/index'; | import * as webrequest from '../ts/index.js'; | ||||||
|  |  | ||||||
| tap.test('first test', async (tools) => { | tap.test('first test', async (tools) => { | ||||||
|   const done = tools.defer(); |   const done = tools.defer(); | ||||||
|   | |||||||
| @@ -1,5 +1,5 @@ | |||||||
| import { expect, tap } from '@pushrocks/tapbundle'; | import { expect, tap } from '@pushrocks/tapbundle'; | ||||||
| import * as webrequest from '../ts/index'; | import * as webrequest from '../ts/index.js'; | ||||||
|  |  | ||||||
| // test dependencies | // test dependencies | ||||||
| import * as smartexpress from '@pushrocks/smartexpress'; | import * as smartexpress from '@pushrocks/smartexpress'; | ||||||
|   | |||||||
							
								
								
									
										25
									
								
								ts/index.ts
									
									
									
									
									
								
							
							
						
						
									
										25
									
								
								ts/index.ts
									
									
									
									
									
								
							| @@ -1,16 +1,22 @@ | |||||||
| import * as plugins from './webrequest.plugins'; | import * as plugins from './webrequest.plugins.js'; | ||||||
|  |  | ||||||
| /** | /** | ||||||
|  * web request |  * web request | ||||||
|  */ |  */ | ||||||
| export class WebRequest { | export class WebRequest { | ||||||
|   private static polyfillsLoaded = false; |   private static polyfillStatusEvaluated = false; | ||||||
|   public static loadNeededPolyfills() { |   private static neededPolyfillsLoadedDeferred = plugins.smartpromise.defer(); | ||||||
|     const smartenv = new plugins.smartenv.Smartenv(); |   public static async loadNeededPolyfills() { | ||||||
|     if (!smartenv.isBrowser && !this.polyfillsLoaded) { |     if (this.polyfillStatusEvaluated) { | ||||||
|       this.polyfillsLoaded = true; |       return this.neededPolyfillsLoadedDeferred.promise; | ||||||
|       globalThis.fetch = smartenv.getSafeNodeModule('node-fetch'); |  | ||||||
|     } |     } | ||||||
|  |     this.polyfillStatusEvaluated = true; | ||||||
|  |     const smartenv = new plugins.smartenv.Smartenv(); | ||||||
|  |     if (!smartenv.isBrowser) { | ||||||
|  |       this.polyfillStatusEvaluated = true; | ||||||
|  |       await smartenv.getSafeNodeModule('node-fetch'); | ||||||
|  |     } | ||||||
|  |     this.neededPolyfillsLoadedDeferred.resolve(); | ||||||
|   } |   } | ||||||
|  |  | ||||||
|   constructor() { |   constructor() { | ||||||
| @@ -18,6 +24,7 @@ export class WebRequest { | |||||||
|   } |   } | ||||||
|  |  | ||||||
|   public async getJson(urlArg: string | string[]) { |   public async getJson(urlArg: string | string[]) { | ||||||
|  |     await WebRequest.neededPolyfillsLoadedDeferred.promise; | ||||||
|     const response: Response = await this.request(urlArg, { |     const response: Response = await this.request(urlArg, { | ||||||
|       method: 'GET', |       method: 'GET', | ||||||
|     }); |     }); | ||||||
| @@ -30,6 +37,7 @@ export class WebRequest { | |||||||
|    * postJson |    * postJson | ||||||
|    */ |    */ | ||||||
|   public async postJson(urlArg: string, requestBody?: any) { |   public async postJson(urlArg: string, requestBody?: any) { | ||||||
|  |     await WebRequest.neededPolyfillsLoadedDeferred.promise; | ||||||
|     const response: Response = await this.request(urlArg, { |     const response: Response = await this.request(urlArg, { | ||||||
|       body: plugins.smartjson.stringify(requestBody), |       body: plugins.smartjson.stringify(requestBody), | ||||||
|       method: 'POST', |       method: 'POST', | ||||||
| @@ -43,6 +51,7 @@ export class WebRequest { | |||||||
|    * put js |    * put js | ||||||
|    */ |    */ | ||||||
|   public async putJson(urlArg: string, requestBody?: any) { |   public async putJson(urlArg: string, requestBody?: any) { | ||||||
|  |     await WebRequest.neededPolyfillsLoadedDeferred.promise; | ||||||
|     const response: Response = await this.request(urlArg, { |     const response: Response = await this.request(urlArg, { | ||||||
|       body: plugins.smartjson.stringify(requestBody), |       body: plugins.smartjson.stringify(requestBody), | ||||||
|       method: 'PUT', |       method: 'PUT', | ||||||
| @@ -56,6 +65,7 @@ export class WebRequest { | |||||||
|    * put js |    * put js | ||||||
|    */ |    */ | ||||||
|   public async deleteJson(urlArg: string) { |   public async deleteJson(urlArg: string) { | ||||||
|  |     await WebRequest.neededPolyfillsLoadedDeferred.promise; | ||||||
|     const response: Response = await this.request(urlArg, { |     const response: Response = await this.request(urlArg, { | ||||||
|       method: 'GET', |       method: 'GET', | ||||||
|     }); |     }); | ||||||
| @@ -75,6 +85,7 @@ export class WebRequest { | |||||||
|       headers?: HeadersInit; |       headers?: HeadersInit; | ||||||
|     } |     } | ||||||
|   ): Promise<Response> { |   ): Promise<Response> { | ||||||
|  |     await WebRequest.neededPolyfillsLoadedDeferred.promise; | ||||||
|     let allUrls: string[]; |     let allUrls: string[]; | ||||||
|     let usedUrlIndex = 0; |     let usedUrlIndex = 0; | ||||||
|  |  | ||||||
|   | |||||||
| @@ -1,5 +1,6 @@ | |||||||
| import * as smartdelay from '@pushrocks/smartdelay'; | import * as smartdelay from '@pushrocks/smartdelay'; | ||||||
| import * as smartenv from '@pushrocks/smartenv'; | import * as smartenv from '@pushrocks/smartenv'; | ||||||
| import * as smartjson from '@pushrocks/smartjson'; | import * as smartjson from '@pushrocks/smartjson'; | ||||||
|  | import * as smartpromise from '@pushrocks/smartpromise'; | ||||||
|  |  | ||||||
| export { smartdelay, smartenv, smartjson }; | export { smartdelay, smartenv, smartjson, smartpromise }; | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user