import { HttpRequest, HttpStatusCode } from '@angular/common/http'; import { HttpMethod } from './tech.model'; export function isForbidden(status: HttpStatusCode): boolean { return status == HttpStatusCode.Forbidden; } export function isUnauthorized(status: HttpStatusCode): boolean { return status == HttpStatusCode.Unauthorized; } export function isUnprocessableEntity(status: HttpStatusCode): boolean { return status == HttpStatusCode.UnprocessableEntity; } export function isServerError(status: HttpStatusCode): boolean { return status >= 500 && status < 600 && !isConnectionTimeout(status); } export function isConnectionTimeout(status: HttpStatusCode): boolean { return isBadGateway(status) || isServiceUnavailable(status) || isGatewayTimeout(status); } function isBadGateway(status: HttpStatusCode): boolean { return status == HttpStatusCode.BadGateway; } export function isServiceUnavailable(status: HttpStatusCode): boolean { return status == HttpStatusCode.ServiceUnavailable; } function isGatewayTimeout(status: HttpStatusCode): boolean { return status == HttpStatusCode.GatewayTimeout; } export function isNotFound(status: HttpStatusCode): boolean { return status == HttpStatusCode.NotFound; } export function isChangingDataRequest(request: HttpRequest<unknown>): boolean { return request.method === HttpMethod.POST || request.method === HttpMethod.PUT || request.method === HttpMethod.PATCH || request.method === HttpMethod.DELETE; } export function existRequestHeader(request: HttpRequest<unknown>, key: string) { return request.headers.has(key); } export function addRequestHeader(request: HttpRequest<unknown>, key: string, token: string): HttpRequest<unknown> { return request.clone({ headers: request.headers.set(key, token) }); }