@c8y/ngx-components
Version:
Angular modules for Cumulocity IoT applications
38 lines • 3.82 kB
JavaScript
function c8yNg1HttpInterceptor($q, c8yLoadingIndicator, c8yApiService) {
'ngInject';
function request(config) {
const { url, method } = config;
c8yApiService.onStart({ url, method, options: config });
return config;
}
function requestError(rejection) {
finishRequest(rejection);
return $q.reject(rejection);
}
function response(res) {
finishRequest(res);
return res;
}
function responseError(rejection) {
finishRequest(rejection);
c8yLoadingIndicator.responseError(rejection);
return $q.reject(rejection);
}
function finishRequest(res) {
const { url, method } = res.config;
c8yApiService.onFinish({
url,
method,
response: res,
options: res.config
});
}
return {
request,
requestError,
response,
responseError
};
}
export { c8yNg1HttpInterceptor };
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaHR0cC5pbnRlcmNlcHRvci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3VwZ3JhZGUvbmcxL2h0dHAuaW50ZXJjZXB0b3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsU0FBUyxxQkFBcUIsQ0FBQyxFQUFFLEVBQUUsbUJBQW1CLEVBQUUsYUFBYTtJQUNuRSxVQUFVLENBQUM7SUFFWCxTQUFTLE9BQU8sQ0FBQyxNQUFNO1FBQ3JCLE1BQU0sRUFBRSxHQUFHLEVBQUUsTUFBTSxFQUFFLEdBQUcsTUFBTSxDQUFDO1FBQy9CLGFBQWEsQ0FBQyxPQUFPLENBQUMsRUFBRSxHQUFHLEVBQUUsTUFBTSxFQUFFLE9BQU8sRUFBRSxNQUFNLEVBQUUsQ0FBQyxDQUFDO1FBQ3hELE9BQU8sTUFBTSxDQUFDO0lBQ2hCLENBQUM7SUFFRCxTQUFTLFlBQVksQ0FBQyxTQUFTO1FBQzdCLGFBQWEsQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUN6QixPQUFPLEVBQUUsQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDOUIsQ0FBQztJQUVELFNBQVMsUUFBUSxDQUFDLEdBQUc7UUFDbkIsYUFBYSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQ25CLE9BQU8sR0FBRyxDQUFDO0lBQ2IsQ0FBQztJQUVELFNBQVMsYUFBYSxDQUFDLFNBQVM7UUFDOUIsYUFBYSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQ3pCLG1CQUFtQixDQUFDLGFBQWEsQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUM3QyxPQUFPLEVBQUUsQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDOUIsQ0FBQztJQUVELFNBQVMsYUFBYSxDQUFDLEdBQUc7UUFDeEIsTUFBTSxFQUFFLEdBQUcsRUFBRSxNQUFNLEVBQUUsR0FBRyxHQUFHLENBQUMsTUFBTSxDQUFDO1FBQ25DLGFBQWEsQ0FBQyxRQUFRLENBQUM7WUFDckIsR0FBRztZQUNILE1BQU07WUFDTixRQUFRLEVBQUUsR0FBRztZQUNiLE9BQU8sRUFBRSxHQUFHLENBQUMsTUFBTTtTQUNwQixDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsT0FBTztRQUNMLE9BQU87UUFDUCxZQUFZO1FBQ1osUUFBUTtRQUNSLGFBQWE7S0FDZCxDQUFDO0FBQ0osQ0FBQztBQUVELE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZnVuY3Rpb24gYzh5TmcxSHR0cEludGVyY2VwdG9yKCRxLCBjOHlMb2FkaW5nSW5kaWNhdG9yLCBjOHlBcGlTZXJ2aWNlKSB7XHJcbiAgJ25nSW5qZWN0JztcclxuXHJcbiAgZnVuY3Rpb24gcmVxdWVzdChjb25maWcpIHtcclxuICAgIGNvbnN0IHsgdXJsLCBtZXRob2QgfSA9IGNvbmZpZztcclxuICAgIGM4eUFwaVNlcnZpY2Uub25TdGFydCh7IHVybCwgbWV0aG9kLCBvcHRpb25zOiBjb25maWcgfSk7XHJcbiAgICByZXR1cm4gY29uZmlnO1xyXG4gIH1cclxuXHJcbiAgZnVuY3Rpb24gcmVxdWVzdEVycm9yKHJlamVjdGlvbikge1xyXG4gICAgZmluaXNoUmVxdWVzdChyZWplY3Rpb24pO1xyXG4gICAgcmV0dXJuICRxLnJlamVjdChyZWplY3Rpb24pO1xyXG4gIH1cclxuXHJcbiAgZnVuY3Rpb24gcmVzcG9uc2UocmVzKSB7XHJcbiAgICBmaW5pc2hSZXF1ZXN0KHJlcyk7XHJcbiAgICByZXR1cm4gcmVzO1xyXG4gIH1cclxuXHJcbiAgZnVuY3Rpb24gcmVzcG9uc2VFcnJvcihyZWplY3Rpb24pIHtcclxuICAgIGZpbmlzaFJlcXVlc3QocmVqZWN0aW9uKTtcclxuICAgIGM4eUxvYWRpbmdJbmRpY2F0b3IucmVzcG9uc2VFcnJvcihyZWplY3Rpb24pO1xyXG4gICAgcmV0dXJuICRxLnJlamVjdChyZWplY3Rpb24pO1xyXG4gIH1cclxuXHJcbiAgZnVuY3Rpb24gZmluaXNoUmVxdWVzdChyZXMpIHtcclxuICAgIGNvbnN0IHsgdXJsLCBtZXRob2QgfSA9IHJlcy5jb25maWc7XHJcbiAgICBjOHlBcGlTZXJ2aWNlLm9uRmluaXNoKHtcclxuICAgICAgdXJsLFxyXG4gICAgICBtZXRob2QsXHJcbiAgICAgIHJlc3BvbnNlOiByZXMsXHJcbiAgICAgIG9wdGlvbnM6IHJlcy5jb25maWdcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgcmV0dXJuIHtcclxuICAgIHJlcXVlc3QsXHJcbiAgICByZXF1ZXN0RXJyb3IsXHJcbiAgICByZXNwb25zZSxcclxuICAgIHJlc3BvbnNlRXJyb3JcclxuICB9O1xyXG59XHJcblxyXG5leHBvcnQgeyBjOHlOZzFIdHRwSW50ZXJjZXB0b3IgfTtcclxuIl19