diff --git a/packages/editor-ui/src/Interface.ts b/packages/editor-ui/src/Interface.ts index d6b33d009144d..f65103cf34bd0 100644 --- a/packages/editor-ui/src/Interface.ts +++ b/packages/editor-ui/src/Interface.ts @@ -764,6 +764,7 @@ export interface ICredentialMap { export interface ICredentialsState { credentialTypes: ICredentialTypeMap; credentials: ICredentialMap; + fetchedAllCredentials: boolean; } export interface ITagsState { diff --git a/packages/editor-ui/src/modules/credentials.ts b/packages/editor-ui/src/modules/credentials.ts index c890e8a61d1c7..1fb014370fb21 100644 --- a/packages/editor-ui/src/modules/credentials.ts +++ b/packages/editor-ui/src/modules/credentials.ts @@ -35,6 +35,7 @@ const module: Module = { state: { credentialTypes: {}, credentials: {}, + fetchedAllCredentials: false, }, mutations: { setCredentialTypes: (state: ICredentialsState, credentialTypes: ICredentialType[]) => { @@ -52,6 +53,7 @@ const module: Module = { return accu; }, {}); + state.fetchedAllCredentials = true; }, upsertCredential(state: ICredentialsState, credential: ICredentialsResponse) { if (credential.id) { @@ -130,7 +132,7 @@ const module: Module = { context.commit('setCredentialTypes', credentialTypes); }, fetchAllCredentials: async (context: ActionContext) => { - if (context.getters.allCredentials.length > 0) { + if (context.state.fetchedAllCredentials) { return; } const credentials = await getAllCredentials(context.rootGetters.getRestApiContext);