Skip to content

Commit

Permalink
Merge pull request #1731 from deepfence/ui-errr-msg-retrieval
Browse files Browse the repository at this point in the history
Error message retrieve from api response
  • Loading branch information
milan-deepfence authored Nov 13, 2023
2 parents e6d5a5f + 77db7fa commit 17a1ad9
Show file tree
Hide file tree
Showing 30 changed files with 155 additions and 86 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ import { TruncatedText } from '@/components/TruncatedText';
import { ActionEnumType } from '@/features/postures/data-component/toggleControlApiAction';
import { invalidateAllQueries, queries } from '@/queries';
import { ComplianceScanNodeTypeEnum, isCloudNode, isCloudOrgNode } from '@/types/common';
import { get403Message } from '@/utils/403';
import { get403Message, getResponseErrors } from '@/utils/403';
import { apiWrapper } from '@/utils/api';

export const complianceType: {
Expand Down Expand Up @@ -138,9 +138,10 @@ export const scanPostureApiAction = async ({
startComplianceScanResponse.error.response.status === 400 ||
startComplianceScanResponse.error.response.status === 409
) {
const { message } = await getResponseErrors(startComplianceScanResponse.error);
return {
success: false,
message: startComplianceScanResponse.error.message ?? '',
message,
};
} else if (startComplianceScanResponse.error.response.status === 403) {
const message = await get403Message(startComplianceScanResponse.error);
Expand Down Expand Up @@ -181,9 +182,10 @@ export const scanPostureApiAction = async ({
scheduleResponse.error.response.status === 400 ||
scheduleResponse.error.response.status === 409
) {
const { message } = await getResponseErrors(scheduleResponse.error);
return {
success: false,
message: scheduleResponse.error.message ?? '',
message,
};
} else if (scheduleResponse.error.response.status === 403) {
const message = await get403Message(scheduleResponse.error);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ import {
import { ScheduleScanForm } from '@/components/scan-configure-forms/ScheduleScanForm';
import { invalidateAllQueries } from '@/queries';
import { MalwareScanNodeTypeEnum } from '@/types/common';
import { get403Message } from '@/utils/403';
import { get403Message, getResponseErrors } from '@/utils/403';
import { apiWrapper } from '@/utils/api';
import { isNodeTypeARegistryTagType, isNodeTypeARegistryType } from '@/utils/registry';

Expand Down Expand Up @@ -157,9 +157,10 @@ export const scanMalwareApiAction = async ({
startMalwareScanResponse.error.response.status === 400 ||
startMalwareScanResponse.error.response.status === 409
) {
const { message } = await getResponseErrors(startMalwareScanResponse.error);
return {
success: false,
message: startMalwareScanResponse.error.message ?? '',
message,
};
} else if (startMalwareScanResponse.error.response.status === 403) {
const message = await get403Message(startMalwareScanResponse.error);
Expand Down Expand Up @@ -199,9 +200,10 @@ export const scanMalwareApiAction = async ({
scheduleResponse.error.response.status === 400 ||
scheduleResponse.error.response.status === 409
) {
const { message } = await getResponseErrors(scheduleResponse.error);
return {
success: false,
message: scheduleResponse.error.message ?? '',
message,
};
} else if (scheduleResponse.error.response.status === 403) {
const message = await get403Message(scheduleResponse.error);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ import {
import { ScheduleScanForm } from '@/components/scan-configure-forms/ScheduleScanForm';
import { invalidateAllQueries } from '@/queries';
import { SecretScanNodeTypeEnum } from '@/types/common';
import { get403Message } from '@/utils/403';
import { get403Message, getResponseErrors } from '@/utils/403';
import { apiWrapper } from '@/utils/api';
import { isNodeTypeARegistryTagType, isNodeTypeARegistryType } from '@/utils/registry';

Expand Down Expand Up @@ -156,9 +156,10 @@ export const scanSecretApiAction = async ({
startSecretScanResponse.error.response.status === 400 ||
startSecretScanResponse.error.response.status === 409
) {
const { message } = await getResponseErrors(startSecretScanResponse.error);
return {
success: false,
message: startSecretScanResponse.error.message ?? '',
message,
};
} else if (startSecretScanResponse.error.response.status === 403) {
const message = await get403Message(startSecretScanResponse.error);
Expand Down Expand Up @@ -196,9 +197,10 @@ export const scanSecretApiAction = async ({
scheduleResponse.error.response.status === 400 ||
scheduleResponse.error.response.status === 409
) {
const { message } = await getResponseErrors(scheduleResponse.error);
return {
success: false,
message: scheduleResponse.error.message ?? '',
message,
};
} else if (scheduleResponse.error.response.status === 403) {
const message = await get403Message(scheduleResponse.error);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -8,12 +8,11 @@ import {
getSecretApiClient,
getVulnerabilityApiClient,
} from '@/api/api';
import { ModelNodeIdentifierNodeTypeEnum } from '@/api/generated';
import { ErrorStandardLineIcon } from '@/components/icons/common/ErrorStandardLine';
import { SuccessModalContent } from '@/features/settings/components/SuccessModalContent';
import { invalidateAllQueries } from '@/queries';
import { ScanTypeEnum, VulnerabilityScanNodeTypeEnum } from '@/types/common';
import { get403Message } from '@/utils/403';
import { ScanTypeEnum } from '@/types/common';
import { get403Message, getResponseErrors } from '@/utils/403';
import { apiWrapper } from '@/utils/api';

export enum ActionEnumType {
Expand Down Expand Up @@ -57,9 +56,10 @@ export const actionStopScan = async ({
});
if (!result.ok) {
if (result.error.response.status === 400 || result.error.response.status === 409) {
const { message } = await getResponseErrors(result.error);
return {
success: false,
message: result.error.message ?? '',
message,
};
} else if (result.error.response.status === 403) {
const message = await get403Message(result.error);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ import {
import { ScheduleScanForm } from '@/components/scan-configure-forms/ScheduleScanForm';
import { invalidateAllQueries } from '@/queries';
import { VulnerabilityScanNodeTypeEnum } from '@/types/common';
import { get403Message } from '@/utils/403';
import { get403Message, getResponseErrors } from '@/utils/403';
import { apiWrapper } from '@/utils/api';
import { isNodeTypeARegistryTagType, isNodeTypeARegistryType } from '@/utils/registry';

Expand Down Expand Up @@ -237,9 +237,10 @@ export const scanVulnerabilityApiAction = async ({
startVulnerabilityScanResponse.error.response.status === 400 ||
startVulnerabilityScanResponse.error.response.status === 409
) {
const { message } = await getResponseErrors(startVulnerabilityScanResponse.error);
return {
success: false,
message: startVulnerabilityScanResponse.error.message ?? '',
message,
};
} else if (startVulnerabilityScanResponse.error.response.status === 403) {
const message = await get403Message(startVulnerabilityScanResponse.error);
Expand Down Expand Up @@ -277,9 +278,10 @@ export const scanVulnerabilityApiAction = async ({
scheduleResponse.error.response.status === 400 ||
scheduleResponse.error.response.status === 409
) {
const { message } = await getResponseErrors(scheduleResponse.error);
return {
success: false,
message: scheduleResponse.error.message ?? '',
message,
};
} else if (scheduleResponse.error.response.status === 403) {
const message = await get403Message(scheduleResponse.error);
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
import { toast } from 'sonner';

import { getAuthenticationApiClient } from '@/api/api';
import { getResponseErrors } from '@/utils/403';
import { apiWrapper, redirectToLogin } from '@/utils/api';
import storage from '@/utils/storage';

Expand All @@ -12,12 +13,13 @@ const action = async (): Promise<{
});
const logoutResponse = await logoutApi();
if (!logoutResponse.ok) {
const { message } = await getResponseErrors(logoutResponse.error);
if (logoutResponse.error.response.status === 404) {
return {
error: logoutResponse.error.message,
error: message,
};
}
toast.error(logoutResponse.error.message);
toast.error(message);
throw logoutResponse.error;
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ import { IntegrationsIcon } from '@/components/sideNavigation/icons/Integrations
import { ReportTable } from '@/features/integrations/components/ReportsTable';
import { SuccessModalContent } from '@/features/settings/components/SuccessModalContent';
import { invalidateAllQueries, queries } from '@/queries';
import { get403Message } from '@/utils/403';
import { get403Message, getResponseErrors } from '@/utils/403';
import { apiWrapper } from '@/utils/api';
import { download } from '@/utils/download';
import { usePageNavigation } from '@/utils/usePageNavigation';
Expand Down Expand Up @@ -108,8 +108,9 @@ const action = async ({ request }: ActionFunctionArgs): Promise<ActionData> => {
});
if (!r.ok) {
if (r.error.response.status === 400) {
const { message } = await getResponseErrors(r.error);
return {
message: r.error.message ?? 'Error in deleting report',
message: message ?? 'Error in deleting report',
success: false,
};
} else if (r.error.response.status === 403) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ import { PlusIcon } from '@/components/icons/common/Plus';
import { integrationTypeToNameMapping } from '@/features/integrations/pages/Integrations';
import { SuccessModalContent } from '@/features/settings/components/SuccessModalContent';
import { invalidateAllQueries, queries } from '@/queries';
import { get403Message } from '@/utils/403';
import { get403Message, getResponseErrors } from '@/utils/403';
import { apiWrapper } from '@/utils/api';
import { getArrayTypeValuesFromFormData } from '@/utils/formData';

Expand Down Expand Up @@ -378,8 +378,10 @@ const action = async ({ request, params }: ActionFunctionArgs): Promise<ActionDa
});
if (!r.ok) {
if (r.error.response.status === 400) {
const { message } = await getResponseErrors(r.error);
return {
message: r.error.message ?? 'Error in deleting integrations',
success: false,
message: message ?? 'Error in deleting integrations',
};
} else if (r.error.response.status === 403) {
const message = await get403Message(r.error);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -77,7 +77,7 @@ import { MalwaresCompare } from '@/features/malwares/components/scan-results/Mal
import { SuccessModalContent } from '@/features/settings/components/SuccessModalContent';
import { invalidateAllQueries, queries } from '@/queries';
import { MalwareSeverityType, ScanTypeEnum } from '@/types/common';
import { get403Message } from '@/utils/403';
import { get403Message, getResponseErrors } from '@/utils/403';
import { apiWrapper } from '@/utils/api';
import { formatMilliseconds } from '@/utils/date';
import { abbreviateNumber } from '@/utils/number';
Expand Down Expand Up @@ -143,10 +143,11 @@ const action = async ({
});
if (!result.ok) {
if (result.error.response.status === 400 || result.error.response.status === 409) {
const { message } = await getResponseErrors(result.error);
return {
action: actionType,
success: false,
message: result.error.message ?? '',
message: message ?? '',
};
} else if (result.error.response.status === 403) {
const message = await get403Message(result.error);
Expand Down Expand Up @@ -193,10 +194,11 @@ const action = async ({
});
if (!result.ok) {
if (result.error.response.status === 400 || result.error.response.status === 409) {
const { message } = await getResponseErrors(result.error);
return {
action: actionType,
success: false,
message: result.error.message ?? '',
message: message ?? '',
};
} else if (result.error.response.status === 403) {
const message = await get403Message(result.error);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -59,7 +59,7 @@ import { IconMapForNodeType } from '@/features/onboard/components/IconMapForNode
import { SuccessModalContent } from '@/features/settings/components/SuccessModalContent';
import { invalidateAllQueries, queries } from '@/queries';
import { ScanTypeEnum } from '@/types/common';
import { get403Message } from '@/utils/403';
import { get403Message, getResponseErrors } from '@/utils/403';
import { apiWrapper } from '@/utils/api';
import { formatMilliseconds } from '@/utils/date';
import {
Expand Down Expand Up @@ -129,9 +129,10 @@ const action = async ({
});
if (!result.ok) {
if (result.error.response.status === 400 || result.error.response.status === 409) {
const { message } = await getResponseErrors(result.error);
return {
success: false,
message: result.error.message ?? '',
message,
};
} else if (result.error.response.status === 403) {
const message = await get403Message(result.error);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@ import { toast } from 'sonner';

import { getControlsApiClient } from '@/api/api';
import { invalidateAllQueries } from '@/queries';
import { getResponseErrors } from '@/utils/403';
import { apiWrapper } from '@/utils/api';

export enum ActionEnumType {
Expand Down Expand Up @@ -40,7 +41,9 @@ export const toggleControlApiAction = async ({
});
if (!result.ok) {
if (result.error.response.status === 400 || result.error.response.status === 409) {
toast.error(result.error.message);
const { message } = await getResponseErrors(result.error);
toast.error(message);
return null;
}
}
toast.success(
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -72,7 +72,7 @@ import {
isCloudOrgNode,
ScanTypeEnum,
} from '@/types/common';
import { get403Message } from '@/utils/403';
import { get403Message, getResponseErrors } from '@/utils/403';
import { apiWrapper } from '@/utils/api';
import { formatPercentage } from '@/utils/number';
import {
Expand Down Expand Up @@ -164,9 +164,10 @@ const action = async ({
});
if (!result.ok) {
if (result.error.response.status === 400 || result.error.response.status === 409) {
const { message } = await getResponseErrors(result.error);
return {
success: false,
message: result.error.message,
message,
};
} else if (result.error.response.status === 403) {
const message = await get403Message(result.error);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -84,7 +84,7 @@ import {
PostureSeverityType,
ScanTypeEnum,
} from '@/types/common';
import { get403Message } from '@/utils/403';
import { get403Message, getResponseErrors } from '@/utils/403';
import { apiWrapper } from '@/utils/api';
import { formatMilliseconds } from '@/utils/date';
import { abbreviateNumber } from '@/utils/number';
Expand Down Expand Up @@ -155,10 +155,11 @@ const action = async ({

if (!result.ok) {
if (result.error.response.status === 400 || result.error.response.status === 409) {
const { message } = await getResponseErrors(result.error);
return {
action: actionType,
success: false,
message: result.error.message,
message: message,
};
} else if (result.error.response.status === 403) {
const message = await get403Message(result.error);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -83,7 +83,7 @@ import {
PostureSeverityType,
ScanTypeEnum,
} from '@/types/common';
import { get403Message } from '@/utils/403';
import { get403Message, getResponseErrors } from '@/utils/403';
import { apiWrapper } from '@/utils/api';
import { formatMilliseconds } from '@/utils/date';
import { abbreviateNumber } from '@/utils/number';
Expand Down Expand Up @@ -149,10 +149,11 @@ const action = async ({
});
if (!result.ok) {
if (result.error.response.status === 400 || result.error.response.status === 409) {
const { message } = await getResponseErrors(result.error);
return {
action: actionType,
success: false,
message: result.error.message,
message,
};
} else if (result.error.response.status === 403) {
const message = await get403Message(result.error);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -77,7 +77,7 @@ import { SecretsCompare } from '@/features/secrets/components/scan-results/Secre
import { SuccessModalContent } from '@/features/settings/components/SuccessModalContent';
import { invalidateAllQueries, queries } from '@/queries';
import { ScanTypeEnum, SecretSeverityType } from '@/types/common';
import { get403Message } from '@/utils/403';
import { get403Message, getResponseErrors } from '@/utils/403';
import { apiWrapper } from '@/utils/api';
import { formatMilliseconds } from '@/utils/date';
import { abbreviateNumber } from '@/utils/number';
Expand Down Expand Up @@ -144,10 +144,11 @@ const action = async ({
});
if (!result.ok) {
if (result.error.response.status === 400 || result.error.response.status === 409) {
const { message } = await getResponseErrors(result.error);
return {
action: actionType,
success: false,
message: result.error.message ?? '',
message,
};
} else if (result.error.response.status === 403) {
const message = await get403Message(result.error);
Expand Down Expand Up @@ -193,10 +194,11 @@ const action = async ({
});
if (!result.ok) {
if (result.error.response.status === 400 || result.error.response.status === 409) {
const { message } = await getResponseErrors(result.error);
return {
action: actionType,
success: false,
message: result.error.message ?? '',
message,
};
} else if (result.error.response.status === 403) {
const message = await get403Message(result.error);
Expand Down
Loading

0 comments on commit 17a1ad9

Please sign in to comment.