UNPKG

@ogs-gmbh/ngx-http

Version:

A lightweight Angular library that enhances HTTP functionalities by providing types, static values, and utility functions.

77 lines 12.3 kB
import { HttpHeaders, HttpParams } from "@angular/common/http"; import _ from "lodash"; function mergeHttpHeaders(...headers) { let httpHeaderResult = new HttpHeaders(); headers.forEach((currentHeader) => { if (currentHeader instanceof HttpHeaders) { currentHeader.keys().forEach((currentHeaderKey) => { const currentHeaderValue = currentHeader.get(currentHeaderKey); httpHeaderResult = httpHeaderResult.append(currentHeaderKey, currentHeaderValue); }); } else { Object.keys(currentHeader).forEach((currentHeaderKey) => { const currentHeaderValue = currentHeader[currentHeaderKey]; if (Array.isArray(currentHeaderValue)) { currentHeaderValue.forEach((currentHeaderValueItem) => { httpHeaderResult = httpHeaderResult.append(currentHeaderKey, currentHeaderValueItem); }); return; } httpHeaderResult = httpHeaderResult.append(currentHeaderKey, currentHeaderValue); }); } }); return httpHeaderResult; } function mergeHttpParams(...params) { let httpParamsResult = new HttpParams(); params.forEach((currentParams) => { if (currentParams instanceof HttpParams) { currentParams.keys().forEach((currentParamsKey) => { const currentParamsValue = currentParams.get(currentParamsKey); httpParamsResult = httpParamsResult.append(currentParamsKey, currentParamsValue); }); } else { Object.keys(currentParams).forEach((currentParamsKey) => { const currentParamsValue = currentParams[currentParamsKey]; if (Array.isArray(currentParamsValue)) { currentParamsValue.forEach((currentParamsValueItem) => { httpParamsResult = httpParamsResult.append(currentParamsKey, currentParamsValueItem); }); } else httpParamsResult = httpParamsResult.append(currentParamsKey, currentParamsValue); }); } }); return httpParamsResult; } function mergeHttpJsonBody(...body) { let httpBodyResult = {}; body.forEach((currentBody) => { httpBodyResult = _.merge(httpBodyResult, currentBody); }); return httpBodyResult; } function mergeHttpFormDataBody(...body) { const httpBodyResult = new FormData(); body.forEach((currentBody) => { currentBody.forEach((value, key) => { httpBodyResult.append(key, value); }); }); return httpBodyResult; } function mergeHttpUrlSearchParamsBody(...body) { const httpBodyResult = new URLSearchParams(); body.forEach((currentBody) => { currentBody.forEach((value, key) => { httpBodyResult.append(key, value); }); }); return httpBodyResult; } export { mergeHttpParams, mergeHttpHeaders, mergeHttpJsonBody, mergeHttpFormDataBody, mergeHttpUrlSearchParamsBody }; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVyZ2UuY29tbW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2NvbW1vbi9tZXJnZS5jb21tb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFdBQVcsRUFBRSxVQUFVLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUUvRCxPQUFPLENBQUMsTUFBTSxRQUFRLENBQUM7QUFFdkIsU0FBUyxnQkFBZ0IsQ0FBRSxHQUFHLE9BQTRCO0lBQ3hELElBQUksZ0JBQWdCLEdBQWdCLElBQUksV0FBVyxFQUFFLENBQUM7SUFFdEQsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFDLGFBQWdDLEVBQVEsRUFBRTtRQUN6RCxJQUFJLGFBQWEsWUFBWSxXQUFXLEVBQUUsQ0FBQztZQUN6QyxhQUFhLENBQUMsSUFBSSxFQUFFLENBQUMsT0FBTyxDQUFDLENBQUMsZ0JBQXdCLEVBQVEsRUFBRTtnQkFFOUQsTUFBTSxrQkFBa0IsR0FBVyxhQUFhLENBQUMsR0FBRyxDQUFDLGdCQUFnQixDQUFFLENBQUM7Z0JBRXhFLGdCQUFnQixHQUFHLGdCQUFnQixDQUFDLE1BQU0sQ0FBQyxnQkFBZ0IsRUFBRSxrQkFBa0IsQ0FBQyxDQUFDO1lBQ25GLENBQUMsQ0FBQyxDQUFDO1FBQ0wsQ0FBQzthQUFNLENBQUM7WUFDTixNQUFNLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFDLGdCQUF3QixFQUFRLEVBQUU7Z0JBRXBFLE1BQU0sa0JBQWtCLEdBQXNCLGFBQWEsQ0FBRSxnQkFBZ0IsQ0FBRyxDQUFDO2dCQUVqRixJQUFJLEtBQUssQ0FBQyxPQUFPLENBQUMsa0JBQWtCLENBQUMsRUFBRSxDQUFDO29CQUN0QyxrQkFBa0IsQ0FBQyxPQUFPLENBQUMsQ0FBQyxzQkFBOEIsRUFBUSxFQUFFO3dCQUNsRSxnQkFBZ0IsR0FBRyxnQkFBZ0IsQ0FBQyxNQUFNLENBQUMsZ0JBQWdCLEVBQUUsc0JBQXNCLENB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QUMsTUFBTSxDQUFDLEdBQUcsRUFBRSxLQUFLLENBQUMsQ0FBQztRQUNwQyxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUMsQ0FBQyxDQUFDO0lBRUgsT0FBTyxjQUFjLENBQUM7QUFDeEIsQ0FBQztBQUVELE9BQU8sRUFDTCxlQUFlLEVBQ2YsZ0JBQWdCLEVBQ2hCLGlCQUFpQixFQUNqQixxQkFBcUIsRUFDckIsNEJBQTRCLEVBQzdCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBIdHRwSGVhZGVycywgSHR0cFBhcmFtcyB9IGZyb20gXCJAYW5ndWxhci9jb21tb24vaHR0cFwiO1xuaW1wb3J0IHsgSHR0cEhlYWRlcnNPcHRpb24sIEh0dHBKc29uQm9keU9wdGlvbiwgSHR0cFBhcmFtc09wdGlvbiB9IGZyb20gXCIuLi90eXBlcy9odHRwLnR5cGVcIjtcbmltcG9ydCBfIGZyb20gXCJsb2Rhc2hcIjtcblxuZnVuY3Rpb24gbWVyZ2VIdHRwSGVhZGVycyAoLi4uaGVhZGVyczogSHR0cEhlYWRlcnNPcHRpb25bXSk6IEh0dHBIZWFkZXJzIHtcbiAgbGV0IGh0dHBIZWFkZXJSZXN1bHQ6IEh0dHBIZWFkZXJzID0gbmV3IEh0dHBIZWFkZXJzKCk7XG5cbiAgaGVhZGVycy5mb3JFYWNoKChjdXJyZW50SGVhZGVyOiBIdHRwSGVhZGVyc09wdGlvbik6IHZvaWQgPT4ge1xuICAgIGlmIChjdXJyZW50SGVhZGVyIGluc3RhbmNlb2YgSHR0cEhlYWRlcnMpIHtcbiAgICAgIGN1cnJlbnRIZWFkZXIua2V5cygpLmZvckVhY2goKGN1cnJlbnRIZWFkZXJLZXk6IHN0cmluZyk6IHZvaWQgPT4ge1xuICAgICAgICAvKiBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHRzZXNsaW50L25vLW5vbi1udWxsLWFzc2VydGlvbiAqL1xuICAgICAgICBjb25zdCBjdXJyZW50SGVhZGVyVmFsdWU6IHN0cmluZyA9IGN1cnJlbnRIZWFkZXIuZ2V0KGN1cnJlbnRIZWFkZXJLZXkpITtcblxuICAgICAgICBodHRwSGVhZGVyUmVzdWx0ID0gaHR0cEhlYWRlclJlc3VsdC5hcHBlbmQoY3VycmVudEhlYWRlcktleSwgY3VycmVudEhlYWRlclZhbHVlKTtcbiAgICAgIH0pO1xuICAgIH0gZWxzZSB7XG4gICAgICBPYmplY3Qua2V5cyhjdXJyZW50SGVhZGVyKS5mb3JFYWNoKChjdXJyZW50SGVhZGVyS2V5OiBzdHJpbmcpOiB2b2lkID0+IHtcbiAgICAgICAgLyogZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0c2VzbGludC9uby1ub24tbnVsbC1hc3NlcnRpb24gKi9cbiAgICAgICAgY29uc3QgY3VycmVudEhlYWRlclZhbHVlOiBzdHJpbmcgfCBzdHJpbmdbXSA9IGN1cnJlbnRIZWFkZXJbIGN1cnJlbnRIZWFkZXJLZXkgXSE7XG5cbiAgICAgICAgaWYgKEFycmF5LmlzQXJyYXkoY3VycmVudEhlYWRlclZhbHVlKSkge1xuICAgICAgICAgIGN1cnJlbnRIZWFkZXJWYWx1ZS5mb3JFYWNoKChjdXJyZW50SGVhZGVyVmFsdWVJdGVtOiBzdHJpbmcpOiB2b2lkID0+IHtcbiAgICAgICAgICAgIGh0dHBIZWFkZXJSZXN1bHQgPSBodHRwSGVhZGVyUmVzdWx0LmFwcGVuZChjdXJyZW50SGVhZGVyS2V5LCBjdXJyZW50SGVhZGVyVmFsdWVJdGVtKTtcbiAgICAgICAgICB9KTtcblxuICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIGh0dHBIZWFkZXJSZXN1bHQgPSBodHRwSGVhZGVyUmVzdWx0LmFwcGVuZChjdXJyZW50SGVhZGVyS2V5LCBjdXJyZW50SGVhZGVyVmFsdWUpO1xuICAgICAgfSk7XG4gICAgfVxuICB9KTtcblxuICByZXR1cm4gaHR0cEhlYWRlclJlc3VsdDtcbn1cblxuXG5mdW5jdGlvbiBtZXJnZUh0dHBQYXJhbXMgKC4uLnBhcmFtczogSHR0cFBhcmFtc09wdGlvbltdKTogSHR0cFBhcmFtcyB7XG4gIGxldCBodHRwUGFyYW1zUmVzdWx0OiBIdHRwUGFyYW1zID0gbmV3IEh0dHBQYXJhbXMoKTtcblxuICBwYXJhbXMuZm9yRWFjaCgoY3VycmVudFBhcmFtczogSHR0cFBhcmFtc09wdGlvbik6IHZvaWQgPT4ge1xuICAgIGlmIChjdXJyZW50UGFyYW1zIGluc3RhbmNlb2YgSHR0cFBhcmFtcykge1xuICAgICAgY3VycmVudFBhcmFtcy5rZXlzKCkuZm9yRWFjaCgoY3VycmVudFBhcmFtc0tleTogc3RyaW5nKTogdm9pZCA9PiB7XG4gICAgICAgIC8qIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHNlc2xpbnQvbm8tbm9uLW51bGwtYXNzZXJ0aW9uICovXG4gICAgICAgIGNvbnN0IGN1cnJlbnRQYXJhbXNWYWx1ZTogc3RyaW5nID0gY3VycmVudFBhcmFtcy5nZXQoY3VycmVudFBhcmFtc0tleSkhO1xuXG4gICAgICAgIGh0dHBQYXJhbXNSZXN1bHQgPSBodHRwUGFyYW1zUmVzdWx0LmFwcGVuZChjdXJyZW50UGFyYW1zS2V5LCBjdXJyZW50UGFyYW1zVmFsdWUpO1xuICAgICAgfSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIE9iamVjdC5rZXlzKGN1cnJlbnRQYXJhbXMpLmZvckVhY2goKGN1cnJlbnRQYXJhbXNLZXk6IHN0cmluZyk6IHZvaWQgPT4ge1xuICAgICAgICAvKiBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHRzZXNsaW50L25vLW5vbi1udWxsLWFzc2VydGlvbiAqL1xuICAgICAgICBjb25zdCBjdXJyZW50UGFyYW1zVmFsdWU6IHN0cmluZyB8IG51bWJlciB8IGJvb2xlYW4gfCBSZWFkb25seUFycmF5PHN0cmluZyB8IG51bWJlciB8IGJvb2xlYW4+ID0gY3VycmVudFBhcmFtc1sgY3VycmVudFBhcmFtc0tleSBdITtcblxuICAgICAgICBpZiAoQXJyYXkuaXNBcnJheShjdXJyZW50UGFyYW1zVmFsdWUpKSB7XG4gICAgICAgICAgY3VycmVudFBhcmFtc1ZhbHVlLmZvckVhY2goKGN1cnJlbnRQYXJhbXNWYWx1ZUl0ZW06IHN0cmluZyB8IG51bWJlciB8IGJvb2xlYW4pOiB2b2lkID0+IHtcbiAgICAgICAgICAgIGh0dHBQYXJhbXNSZXN1bHQgPSBodHRwUGFyYW1zUmVzdWx0LmFwcGVuZChjdXJyZW50UGFyYW1zS2V5LCBjdXJyZW50UGFyYW1zVmFsdWVJdGVtKTtcbiAgICAgICAgICB9KTtcbiAgICAgICAgfSBlbHNlXG4gICAgICAgICAgaHR0cFBhcmFtc1Jlc3VsdCA9IGh0dHBQYXJhbXNSZXN1bHQuYXBwZW5kKGN1cnJlbnRQYXJhbXNLZXksIGN1cnJlbnRQYXJhbXNWYWx1ZSBhcyBzdHJpbmcgfCBudW1iZXIgfCBib29sZWFuKTtcbiAgICAgIH0pO1xuICAgIH1cbiAgfSk7XG5cbiAgcmV0dXJuIGh0dHBQYXJhbXNSZXN1bHQ7XG59XG5cbmZ1bmN0aW9uIG1lcmdlSHR0cEpzb25Cb2R5ICguLi5ib2R5OiBIdHRwSnNvbkJvZHlPcHRpb25bXSk6IEh0dHBKc29uQm9keU9wdGlvbiB7XG4gIGxldCBodHRwQm9keVJlc3VsdDogSHR0cEpzb25Cb2R5T3B0aW9uID0ge307XG5cbiAgYm9keS5mb3JFYWNoKChjdXJyZW50Qm9keTogSHR0cEpzb25Cb2R5T3B0aW9uKTogdm9pZCA9PiB7XG4gICAgaHR0cEJvZHlSZXN1bHQgPSBfLm1lcmdlKGh0dHBCb2R5UmVzdWx0LCBjdXJyZW50Qm9keSk7XG4gIH0pO1xuXG4gIHJldHVybiBodHRwQm9keVJlc3VsdDtcbn1cblxuZnVuY3Rpb24gbWVyZ2VIdHRwRm9ybURhdGFCb2R5ICguLi5ib2R5OiBGb3JtRGF0YVtdKTogRm9ybURhdGEge1xuICBjb25zdCBodHRwQm9keVJlc3VsdDogRm9ybURhdGEgPSBuZXcgRm9ybURhdGEoKTtcblxuICBib2R5LmZvckVhY2goKGN1cnJlbnRCb2R5OiBGb3JtRGF0YSk6IHZvaWQgPT4ge1xuICAgIGN1cnJlbnRCb2R5LmZvckVhY2goKHZhbHVlOiBGb3JtRGF0YUVudHJ5VmFsdWUsIGtleTogc3RyaW5nKTogdm9pZCA9PiB7XG4gICAgICBodHRwQm9keVJlc3VsdC5hcHBlbmQoa2V5LCB2YWx1ZSk7XG4gICAgfSk7XG4gIH0pO1xuXG4gIHJldHVybiBodHRwQm9keVJlc3VsdDtcbn1cblxuZnVuY3Rpb24gbWVyZ2VIdHRwVXJsU2VhcmNoUGFyYW1zQm9keSAoLi4uYm9keTogVVJMU2VhcmNoUGFyYW1zW10pOiBVUkxTZWFyY2hQYXJhbXMge1xuICBjb25zdCBodHRwQm9keVJlc3VsdDogVVJMU2VhcmNoUGFyYW1zID0gbmV3IFVSTFNlYXJjaFBhcmFtcygpO1xuXG4gIGJvZHkuZm9yRWFjaCgoY3VycmVudEJvZHk6IFVSTFNlYXJjaFBhcmFtcyk6IHZvaWQgPT4ge1xuICAgIGN1cnJlbnRCb2R5LmZvckVhY2goKHZhbHVlOiBzdHJpbmcsIGtleTogc3RyaW5nKTogdm9pZCA9PiB7XG4gICAgICBodHRwQm9keVJlc3VsdC5hcHBlbmQoa2V5LCB2YWx1ZSk7XG4gICAgfSk7XG4gIH0pO1xuXG4gIHJldHVybiBodHRwQm9keVJlc3VsdDtcbn1cblxuZXhwb3J0IHtcbiAgbWVyZ2VIdHRwUGFyYW1zLFxuICBtZXJnZUh0dHBIZWFkZXJzLFxuICBtZXJnZUh0dHBKc29uQm9keSxcbiAgbWVyZ2VIdHRwRm9ybURhdGFCb2R5LFxuICBtZXJnZUh0dHBVcmxTZWFyY2hQYXJhbXNCb2R5XG59O1xuIl19