export async function processErrorCodes()

in src/services/rest/request.ts [80:111]


export async function processErrorCodes({
  url,
  statusCode,
  getMessage,
  retryCallback,
  csrfToken,
}: ProcessErrorCodesParams): Promise<boolean> {
  if (url?.startsWith(window.base_uri)) {
    switch (statusCode) {
      case HTTPCodesEnum.UNAUTHORIZED:
        window.BS?.SubscriptionManager?.closeSocket('you are logged out')
        return false

      case HTTPCodesEnum.FORBIDDEN:
        return (
          window.BS?.CSRF?.handleCSRFError(
            {
              status: statusCode,
              responseText: await getMessage(),
            },
            retryCallback,
            csrfToken,
          ) ?? false
        )

      default:
        return false
    }
  }

  return false
}