Forráskód Böngészése

Merge pull request #661 from smiclea/fix-edit-endpoint

Fix endpoint fields reverting to previous values
Nashwan Azhari 4 éve
szülő
commit
1d623f1fa1
3 módosított fájl, 12 hozzáadás és 3 törlés
  1. 9 1
      src/stores/ProviderStore.ts
  2. 2 1
      src/utils/ApiCaller.ts
  3. 1 1
      src/utils/ObjectUtils.ts

+ 9 - 1
src/stores/ProviderStore.ts

@@ -176,8 +176,15 @@ class ProviderStore {
     regionsField.enum = [...regionStore.regions]
   }
 
+  loadingForProvider: ProviderTypes | null = null
+
   @action async getConnectionInfoSchema(providerName: ProviderTypes): Promise<void> {
+    if (this.connectionSchemaLoading && this.loadingForProvider === providerName) {
+      return
+    }
+
     this.connectionSchemaLoading = true
+    this.loadingForProvider = providerName
 
     try {
       const fields: Field[] = await ProviderSource.getConnectionInfoSchema(providerName)
@@ -330,7 +337,8 @@ class ProviderStore {
         isValid(),
       )
       return options
-    } catch (err) {
+    } catch (e) {
+      const err: any = e
       console.error(err)
       canceled = err ? err.canceled : false
       if (canceled) {

+ 2 - 1
src/utils/ApiCaller.ts

@@ -116,7 +116,8 @@ class ApiCaller {
         cacher.save({ key: options.url, data: response.data })
       }
       return response
-    } catch (error) {
+    } catch (err) {
+      const error: any = err
       if (error.response) {
         throw apiCallerHandlers.handleErrorResponse(error)
       } else if (error.request) {

+ 1 - 1
src/utils/ObjectUtils.ts

@@ -72,7 +72,7 @@ class ObjectUtils {
   }
 
   static async wait(ms: number) {
-    return new Promise(r => setTimeout(() => r(), ms))
+    return new Promise<void>(r => setTimeout(() => r(), ms))
   }
 
   static async waitFor(