@qrvey/fetch
Version:
 
1 lines • 24.6 kB
Source Map (JSON)
{"version":3,"sources":["../../src/helpers/constants.ts","../../src/helpers/errors/customError.ts","../../src/helpers/errors/restClientError.ts","../../src/helpers/errors/restBadHttpActionParams.ts","../../src/services/fetchClient.service.ts","../../src/services/fetch.service.ts"],"names":[],"mappings":"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","file":"index.mjs","sourcesContent":["export const DEFAULT_OPTIONS_WITH_API_KEY = {\n useApiKey: true,\n};\n\nexport const HTTPAction = {\n GET: 'GET',\n POST: 'POST',\n PATCH: 'PATCH',\n DELETE: 'DELETE',\n PUT: 'PUT',\n} as const;\n","/* eslint-disable @typescript-eslint/no-explicit-any */\nexport class CustomError extends Error {\n constructor(\n message: string,\n private errorDetails: any,\n stack?: string,\n private context = process.env.SERVICE_NAME || 'QrveyCustomError',\n ) {\n super(message);\n this.name = 'ERROR in ' + this.context;\n this.stack = stack;\n }\n\n toJSON() {\n return {\n name: this.name,\n message: this.message,\n stack: this.stack,\n details: this.errorDetails,\n };\n }\n}\n","import { CustomError } from './customError';\n\nexport class RestClientError extends CustomError {\n public details?: unknown;\n public status?: number;\n\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n constructor(url: string, restError: any = {}, status?: number) {\n const message = `REST Client Error at ${url}${\n restError?.message ? `: ${restError?.message}` : ''\n }`;\n super(message, restError, restError.stack);\n if (status !== undefined) this.status = status;\n }\n}\n","import { CustomError } from './customError';\n\nexport class RestBadHttpActionParams extends CustomError {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n constructor(url: string, message: string, error: any = {}) {\n const errorMessage = `Bad RestHttpAction params at ${url}: ${message}`;\n super(errorMessage, error.message || error, error.stack);\n }\n}\n","import {\n IHttpActionOptions,\n IRequestHeaders,\n IFetchOptions,\n IFetchResponse,\n} from '../interfaces';\nimport { HttpMethod } from '../types';\nimport { RestBadHttpActionParams, RestClientError } from '../helpers/errors';\n\nexport default class FetchClientService {\n private static validateEndpoint(endpoint: string) {\n if (endpoint.startsWith('/')) return;\n const errorMessage = `Invalid endpoint \"${endpoint}\". Please replace with \"/${endpoint}\"`;\n throw new RestBadHttpActionParams(endpoint, errorMessage);\n }\n\n private static buildUrl(endpoint: string, options: IHttpActionOptions) {\n const baseDomain: string = process.env.DOMAIN ?? '';\n const privateDomain: string = process.env.PRIVATE_DOMAIN ?? '';\n const defaultDomain =\n options.privateDomain === false ? baseDomain : privateDomain;\n return `${options.baseDomain || defaultDomain}${endpoint}`;\n }\n\n private static baseHeaders(options: IHttpActionOptions) {\n const baseHeaders: IRequestHeaders = {\n 'Content-Type': 'application/json',\n };\n\n const customContentTypeHeader =\n options.headers?.['content-type'] ||\n options.headers?.['Content-Type'];\n\n if (customContentTypeHeader) {\n baseHeaders['Content-Type'] = customContentTypeHeader;\n }\n\n if (options.useApiKey && process.env.API_KEY)\n baseHeaders['x-api-key'] = process.env.API_KEY;\n\n const serviceNameEnv = process.env.SERVICE_NAME?.trim();\n const hostnameEnv = process.env.HOSTNAME?.trim();\n\n if (!baseHeaders['q-service-name'] && serviceNameEnv?.length) {\n baseHeaders['q-service-name'] = serviceNameEnv;\n }\n if (!baseHeaders['q-hostname'] && hostnameEnv?.length) {\n baseHeaders['q-hostname'] = hostnameEnv;\n }\n\n return baseHeaders;\n }\n\n private static customHeaders(options: IHttpActionOptions) {\n const {\n // eslint-disable-next-line no-unused-vars, @typescript-eslint/no-unused-vars\n 'Content-Type': _ContentType,\n // eslint-disable-next-line no-unused-vars, @typescript-eslint/no-unused-vars\n 'content-type': _contentType,\n ...customHeadersObject\n } = options.headers || {};\n\n return customHeadersObject;\n }\n\n private static internalHeaders() {\n const internalHeaders: IRequestHeaders = {};\n\n const serviceNameEnv = process.env.SERVICE_NAME?.trim();\n const hostnameEnv = process.env.HOSTNAME?.trim();\n\n if (serviceNameEnv?.length) {\n internalHeaders['q-service-name'] = serviceNameEnv;\n }\n if (hostnameEnv?.length) {\n internalHeaders['q-hostname'] = hostnameEnv;\n }\n\n return internalHeaders;\n }\n\n private static buildFetchOptions(\n method: string,\n body: unknown,\n options: IHttpActionOptions,\n ): IFetchOptions {\n const headers = {\n ...this.baseHeaders(options),\n ...this.customHeaders(options),\n ...this.internalHeaders(),\n };\n\n /**\n * * exclude headers with invalid values\n */\n const filteredHeaders = Object.fromEntries(\n Object.entries(headers).filter(\n ([, value]) => value !== null && value !== undefined,\n ),\n );\n\n const requestOptions: IFetchOptions = {\n headers: filteredHeaders,\n method,\n };\n if (body) requestOptions['body'] = JSON.stringify(body);\n return requestOptions;\n }\n\n private static isValidUrl(url: URL) {\n return !!(url.protocol && url.hostname && url.pathname);\n }\n\n private static hasValidProtocol(url: URL) {\n const secureProtocols = ['http:', 'https:'];\n return secureProtocols.includes(url.protocol);\n }\n\n private static verifyUrl(urlObj: URL): void {\n if (!this.isValidUrl(urlObj)) {\n throw new RestBadHttpActionParams(\n 'Invalid URL',\n `URL details: Protocol: ${urlObj.protocol}, Hostname: ${urlObj.hostname}, Pathname: ${urlObj.pathname}`,\n );\n }\n if (!this.hasValidProtocol(urlObj)) {\n throw new RestBadHttpActionParams(\n 'Invalid URL',\n `URL protocol [${urlObj.protocol}] is not secure`,\n );\n }\n }\n\n private static toHttpUrl(url: string) {\n try {\n const urlObj = new URL(url);\n this.verifyUrl(urlObj);\n return urlObj.href;\n } catch (error) {\n throw new RestBadHttpActionParams(\n `Invalid URL [${url}]`,\n 'URL is not valid.',\n error,\n );\n }\n }\n\n private static isFileDownload(\n contentType: string | null,\n contentDisposition: string | null,\n ) {\n return (\n contentDisposition?.includes('attachment') ||\n contentType?.includes('application/octet-stream') ||\n contentType?.includes('text/csv') ||\n contentType?.includes('application/vnd.ms-excel') ||\n contentType?.includes('application/vnd.openxmlformats') ||\n contentType?.includes('application/zip') ||\n contentType?.includes('application/pdf')\n );\n }\n\n private static async getResponseData(\n isJsonResponse: boolean,\n response: Response,\n options: IHttpActionOptions,\n ) {\n try {\n if (options.returnRawResponse) {\n return response;\n }\n\n const contentType = response.headers.get('content-type');\n const contentDisposition = response.headers.get(\n 'content-disposition',\n );\n const contentEncoding = response.headers.get('content-encoding');\n\n const isFileDownload = this.isFileDownload(\n contentType,\n contentDisposition,\n );\n\n if (options.skipJsonParsing && contentEncoding) {\n return await response.arrayBuffer();\n }\n\n if (options.skipJsonParsing && isFileDownload) {\n return await response.arrayBuffer();\n }\n\n if (options.skipJsonParsing) {\n return await response.text();\n }\n\n const text = await response.text();\n\n if (isJsonResponse) {\n try {\n return JSON.parse(text);\n } catch {\n return text;\n }\n }\n return text;\n } catch (error) {\n console.error('Error processing response data:', error);\n return null;\n }\n }\n\n private static getResponseHeaders(\n response: Response,\n ): Record<string, string> {\n const headers: Record<string, string> = {};\n response.headers.forEach((value, key) => {\n headers[key] = value;\n });\n return headers;\n }\n\n private static async handleResponse(\n response: Response,\n httpActionOptions: IHttpActionOptions,\n ): Promise<IFetchResponse | unknown> {\n const responseContentType = response.headers.get('content-type');\n const isJsonResponse =\n responseContentType &&\n responseContentType.includes('application/json') &&\n !httpActionOptions.skipJsonParsing;\n\n const responseData = await this.getResponseData(\n !!isJsonResponse,\n response,\n httpActionOptions,\n );\n\n if (response.ok) {\n if (httpActionOptions.includeHttpResponseDetails) {\n const headers = this.getResponseHeaders(response);\n return {\n status: response.status,\n data: responseData,\n headers,\n };\n }\n return responseData;\n }\n\n throw new RestClientError(\n response.url,\n responseData ?? {},\n response.status,\n );\n }\n\n private static fetchData(\n url: string,\n {\n fetchOptions,\n httpActionOptions,\n }: {\n fetchOptions: IFetchOptions;\n httpActionOptions: IHttpActionOptions;\n },\n ) {\n return fetch(url, fetchOptions)\n .then((response) =>\n this.handleResponse(response, httpActionOptions),\n )\n .catch((error) => {\n if (error instanceof RestClientError) throw error;\n throw new RestClientError(url, error);\n });\n }\n\n private static queryParamsToQueryString(\n queryParameters: Record<string, string | string[]>,\n ) {\n const queryParamsArray = Object.entries(queryParameters).map(\n ([queryName, queryValue]) => {\n const isArrayValue = Array.isArray(queryValue);\n if (isArrayValue)\n return queryValue\n .map((val) => `${queryName}=${val}`)\n .join('&');\n else return `${queryName}=${queryValue}`;\n },\n );\n return queryParamsArray.join('&');\n }\n\n public static httpAction(\n method: HttpMethod,\n endpoint: string,\n body: unknown,\n options: IHttpActionOptions = {},\n ) {\n this.validateEndpoint(endpoint);\n const url = this.buildUrl(endpoint, options);\n const queryParamsString = options.queryParameters\n ? `?${this.queryParamsToQueryString(options.queryParameters)}`\n : '';\n const httpUrl = this.toHttpUrl(`${url}${queryParamsString}`);\n const fetchDataOptions = {\n fetchOptions: this.buildFetchOptions(\n method.toUpperCase(),\n body,\n options,\n ),\n httpActionOptions: options,\n };\n return this.fetchData(httpUrl, fetchDataOptions);\n }\n}\n","import { HTTPAction } from '../helpers/constants';\nimport { IFetchOptions, IHttpActionOptions } from '../interfaces';\nimport { HttpMethod } from '../types';\nimport FetchClientService from './fetchClient.service';\n\nexport default class FetchService {\n static sendRequest(\n endpoint: string,\n body: unknown,\n options: IFetchOptions,\n ) {\n return FetchClientService.httpAction(\n options.method as HttpMethod,\n endpoint,\n body,\n options,\n );\n }\n\n static get(endpoint: string, options: IHttpActionOptions) {\n return FetchService.sendRequest(endpoint, null, {\n ...options,\n method: HTTPAction.GET,\n });\n }\n\n static post(endpoint: string, body: unknown, options: IHttpActionOptions) {\n return FetchService.sendRequest(endpoint, body, {\n ...options,\n method: HTTPAction.POST,\n });\n }\n\n static put(endpoint: string, body: unknown, options: IHttpActionOptions) {\n return FetchService.sendRequest(endpoint, body, {\n ...options,\n method: HTTPAction.PUT,\n });\n }\n\n static patch(endpoint: string, body: unknown, options: IHttpActionOptions) {\n return FetchService.sendRequest(endpoint, body, {\n ...options,\n method: HTTPAction.PATCH,\n });\n }\n\n static delete(\n endpoint: string,\n body: unknown,\n options: IHttpActionOptions,\n ) {\n return FetchService.sendRequest(endpoint, body, {\n ...options,\n method: HTTPAction.DELETE,\n });\n }\n}\n"]}