Browse Source

refactor: improvements

pull/9717/head
Pranav C 1 month ago
parent
commit
f5da6e22e5
  1. 6
      packages/nc-gui/components/workspace/integrations/forms/EditOrAddDatabase.vue
  2. 12
      packages/nc-gui/utils/baseCreateUtils.ts

6
packages/nc-gui/components/workspace/integrations/forms/EditOrAddDatabase.vue

@ -367,10 +367,10 @@ const testConnection = async (retry = 0, initialConfig = null) => {
} }
} }
async function handleConnectionError(e: any, retry: number, initialConfig: any): Promise<void> { const MAX_CONNECTION_RETRIES = 3
const MAX_RETRIES = 3
if (retry >= MAX_RETRIES) { async function handleConnectionError(e: any, retry: number, initialConfig: any): Promise<void> {
if (retry >= MAX_CONNECTION_RETRIES) {
testSuccess.value = false testSuccess.value = false
testConnectionError.value = await extractSdkResponseErrorMsg(e) testConnectionError.value = await extractSdkResponseErrorMsg(e)
// reset the connection config to initial state // reset the connection config to initial state

12
packages/nc-gui/utils/baseCreateUtils.ts

@ -223,8 +223,7 @@ enum CertTypes {
key = 'key', key = 'key',
} }
function generateConfigFix(e: any) { const errorHandlers = [
const errorHandlers = [
{ {
messages: ['unable to get local issuer certificate', 'self signed certificate in certificate chain'], messages: ['unable to get local issuer certificate', 'self signed certificate in certificate chain'],
codes: ['UNABLE_TO_GET_ISSUER_CERT_LOCALLY', 'SELF_SIGNED_CERT_IN_CHAIN'], codes: ['UNABLE_TO_GET_ISSUER_CERT_LOCALLY', 'SELF_SIGNED_CERT_IN_CHAIN'],
@ -254,16 +253,17 @@ function generateConfigFix(e: any) {
}, },
}, },
}, },
] ]
function generateConfigFix(e: any) {
for (const handler of errorHandlers) { for (const handler of errorHandlers) {
const errorMessage = e?.response?.data?.msg const errorMessage = e?.response?.data?.msg
const errorCode = e?.response?.data?.sql_code const errorCode = e?.response?.data?.sql_code
if (!errorMessage || !errorCode) return if (!errorMessage && !errorCode) return
const messageMatches = handler.messages.some((msg) => errorMessage?.includes?.(msg)) const messageMatches = errorMessage && handler.messages.some((msg) => errorMessage?.includes?.(msg))
const codeMatches = handler.codes.includes(errorCode) const codeMatches = errorCode && handler.codes.includes(errorCode)
if (messageMatches || codeMatches) { if (messageMatches || codeMatches) {
return handler.action return handler.action

Loading…
Cancel
Save