@von-development-studio/angular-rest-service 2.0.0-SNAPSHOT → 2.0.2-SNAPSHOT

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,2 +1,2 @@
1
1
  export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidm9uLXJlc3QtZGVmaW5pdGlvbi50eXBlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhci1yZXN0LXNlcnZpY2Uvc3JjL2xpYi9tb2RlbC92b24tcmVzdC1kZWZpbml0aW9uLnR5cGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBpbnRlcmZhY2UgR2VuZXJpY1BhcmFtcyB7XG4gIFtrZXk6IHN0cmluZ106IGFueTtcbn1cblxuZXhwb3J0IHR5cGUgSGVhZGVyUGFyYW1zID0ge1xuICBjb250ZW50VHlwZT86IHN0cmluZztcbiAgYWNjZXB0Pzogc3RyaW5nO1xufSAmIHsgcGFyYW1zPzogR2VuZXJpY1BhcmFtcyB9O1xuXG5leHBvcnQgaW50ZXJmYWNlIEJhc2VQYXJhbXMge1xuICB1cmw6IHN0cmluZztcbiAgdXJsUGFyYW1zPzogR2VuZXJpY1BhcmFtcztcbiAgcGFyYW1zPzogSGVhZGVyUGFyYW1zO1xufVxuXG5leHBvcnQgdHlwZSBHZXRQYXJhbXMgPSBCYXNlUGFyYW1zO1xuXG5leHBvcnQgdHlwZSBEZWxldGVQYXJhbXMgPSBCYXNlUGFyYW1zO1xuXG5leHBvcnQgdHlwZSBQb3N0UGFyYW1zPEIgPSBhbnkgfCBGb3JtRGF0YT4gPSBCYXNlUGFyYW1zICYgeyBib2R5OiBCIH07XG5cbmV4cG9ydCB0eXBlIFB1dFBhcmFtczxCID0gYW55IHwgRm9ybURhdGE+ID0gQmFzZVBhcmFtcyAmIHsgYm9keTogQiB9O1xuXG5leHBvcnQgdHlwZSBQYXRjaFBhcmFtczxCID0gYW55IHwgRm9ybURhdGE+ID0gQmFzZVBhcmFtcyAmIHsgYm9keTogQiB9O1xuIl19
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidm9uLXJlc3QtZGVmaW5pdGlvbi50eXBlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhci1yZXN0LXNlcnZpY2Uvc3JjL2xpYi9tb2RlbC92b24tcmVzdC1kZWZpbml0aW9uLnR5cGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBpbnRlcmZhY2UgR2VuZXJpY1BhcmFtcyB7XG4gIFtrZXk6IHN0cmluZ106IGFueSB8IHVuZGVmaW5lZCB8IG51bGw7XG59XG5cbmV4cG9ydCB0eXBlIEhlYWRlclBhcmFtcyA9IHtcbiAgY29udGVudFR5cGU/OiBzdHJpbmc7XG4gIGFjY2VwdD86IHN0cmluZztcbn0gJiB7IHBhcmFtcz86IEdlbmVyaWNQYXJhbXMgfTtcblxuZXhwb3J0IGludGVyZmFjZSBCYXNlUGFyYW1zIHtcbiAgdXJsOiBzdHJpbmc7XG4gIHVybFBhcmFtcz86IEdlbmVyaWNQYXJhbXM7XG4gIHBhcmFtcz86IEhlYWRlclBhcmFtcztcbn1cblxuZXhwb3J0IHR5cGUgR2V0UGFyYW1zID0gQmFzZVBhcmFtcztcblxuZXhwb3J0IHR5cGUgRGVsZXRlUGFyYW1zID0gQmFzZVBhcmFtcztcblxuZXhwb3J0IHR5cGUgUG9zdFBhcmFtczxCID0gYW55IHwgRm9ybURhdGE+ID0gQmFzZVBhcmFtcyAmIHsgYm9keT86IEIgfTtcblxuZXhwb3J0IHR5cGUgUHV0UGFyYW1zPEIgPSBhbnkgfCBGb3JtRGF0YT4gPSBCYXNlUGFyYW1zICYgeyBib2R5PzogQiB9O1xuXG5leHBvcnQgdHlwZSBQYXRjaFBhcmFtczxCID0gYW55IHwgRm9ybURhdGE+ID0gQmFzZVBhcmFtcyAmIHsgYm9keT86IEIgfTtcbiJdfQ==
@@ -49,7 +49,7 @@ export class VonRestService {
49
49
  })
50
50
  .pipe(take(1), share());
51
51
  };
52
- this.get = ({ url, urlParams, params, }) => {
52
+ this.get = ({ url, urlParams, params }) => {
53
53
  url = this.setUrlParams(url, urlParams);
54
54
  return this.http.get(url, this.setOptions(params));
55
55
  };
@@ -94,4 +94,4 @@ export class VonRestService {
94
94
  };
95
95
  }
96
96
  }
97
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidm9uLXJlc3Quc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItcmVzdC1zZXJ2aWNlL3NyYy9saWIvdm9uLXJlc3Quc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQWMsV0FBVyxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFHL0QsT0FBTyxFQUFFLEdBQUcsRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFXbEQsTUFBTSxPQUFnQixjQUFjO0lBQ2xDLFlBQXNCLElBQWdCLEVBQVksU0FBdUI7UUFBbkQsU0FBSSxHQUFKLElBQUksQ0FBWTtRQUFZLGNBQVMsR0FBVCxTQUFTLENBQWM7UUFFL0QsZUFBVSxHQUFHLENBQUMsWUFBMkIsRUFBZSxFQUFFO1lBQ2xFLE9BQU8sSUFBSSxXQUFXLENBQUM7Z0JBQ3JCLGNBQWMsRUFBRSxZQUFZLEVBQUUsV0FBVyxJQUFJLGtCQUFrQjtnQkFDL0QsTUFBTSxFQUFFLFlBQVksRUFBRSxNQUFNLElBQUksa0JBQWtCO2dCQUNsRCw2QkFBNkIsRUFBRSxHQUFHO2FBQ25DLENBQUMsQ0FBQztRQUNMLENBQUMsQ0FBQztRQUVRLGVBQVUsR0FBRyxDQUFDLFlBQTJCLEVBQXVCLEVBQUU7WUFDMUUsT0FBTztnQkFDTCxPQUFPLEVBQUUsSUFBSSxDQUFDLFVBQVUsQ0FBQyxZQUFZLENBQUM7Z0JBQ3RDLE1BQU0sRUFBRSxZQUFZLEVBQUUsTUFBTTtnQkFDNUIsZUFBZSxFQUFFLElBQUk7YUFDdEIsQ0FBQztRQUNKLENBQUMsQ0FBQztRQUVRLHNCQUFpQixHQUFHLENBQzVCLFlBQTJCLEVBQ04sRUFBRTtZQUN2QixPQUFPO2dCQUNMLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxZQUFZLEVBQUUsTUFBTSxDQUFDO2dCQUN4QyxPQUFPLEVBQUUsSUFBSSxXQUFXLENBQUM7b0JBQ3ZCLE1BQU0sRUFB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LElBQUksT0FBTyxHQUNULElBQUksWUFBWSxRQUFRO2dCQUN0QixDQUFDLENBQUMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLE1BQU0sQ0FBQztnQkFDaEMsQ0FBQyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsTUFBTSxDQUFDLENBQUM7WUFDOUIsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBSSxHQUFHLEVBQUUsSUFBSSxFQUFFLE9BQU8sQ0FBQyxDQUFDO1FBQ2hELENBQUMsQ0FBQztJQTFJMEUsQ0FBQztDQTJJOUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBIdHRwQ2xpZW50LCBIdHRwSGVhZGVycyB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcbmltcG9ydCB7IERvbVNhbml0aXplciwgU2FmZVJlc291cmNlVXJsIH0gZnJvbSAnQGFuZ3VsYXIvcGxhdGZvcm0tYnJvd3Nlcic7XG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBtYXAsIHNoYXJlLCB0YWtlIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgVm9uSHR0cE9wdGlvbnNNb2RlbCB9IGZyb20gJy4vbW9kZWwvdm9uLWh0dHAtb3B0aW9ucy5tb2RlbCc7XG5pbXBvcnQge1xuICBEZWxldGVQYXJhbXMsXG4gIEdlbmVyaWNQYXJhbXMsXG4gIEdldFBhcmFtcyxcbiAgSGVhZGVyUGFyYW1zLFxuICBQb3N0UGFyYW1zLFxuICBQdXRQYXJhbXMsXG59IGZyb20gJy4vbW9kZWwvdm9uLXJlc3QtZGVmaW5pdGlvbi50eXBlJztcblxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIFZvblJlc3RTZXJ2aWNlIHtcbiAgY29uc3RydWN0b3IocHJvdGVjdGVkIGh0dHA6IEh0dHBDbGllbnQsIHByb3RlY3RlZCBzYW5pdGl6ZXI6IERvbVNhbml0aXplcikge31cblxuICBwcm90ZWN0ZWQgc2V0SGVhZGVycyA9IChoZWFkZXJQYXJhbXM/OiBIZWFkZXJQYXJhbXMpOiBIdHRwSGVhZGVycyA9PiB7XG4gICAgcmV0dXJuIG5ldyBIdHRwSGVhZGVycyh7XG4gICAgICAnQ29udGVudC1UeXBlJzogaGVhZGVyUGFyYW1zPy5jb250ZW50VHlwZSA/PyAnYXBwbGljYXRpb24vanNvbicsXG4gICAgICBBY2NlcHQ6IGhlYWRlclBhcmFtcz8uYWNjZXB0ID8/ICdhcHBsaWNhdGlvbi9qc29uJyxcbiAgICAgICdBY2Nlc3MtQ29udHJvbC1BbGxvdy1PcmlnaW4nOiAnKicsXG4gICAgfSk7XG4gIH07XG5cbiAgcHJvdGVjdGVkIHNldE9wdGlvbnMgPSAoaGVhZGVyUGFyYW1zPzogSGVhZGVyUGFyYW1zKTogVm9uSHR0cE9wdGlvbnNNb2RlbCA9PiB7XG4gICAgcmV0dXJuIHtcbiAgICAgIGhlYWRlcnM6IHRoaXMuc2V0SGVhZGVycyhoZWFkZXJQYXJhbXMpLFxuICAgICAgcGFyYW1zOiBoZWFkZXJQYXJhbXM/LnBhcmFtcyxcbiAgICAgIHdpdGhDcmVkZW50aWFsczogdHJ1ZSxcbiAgICB9O1xuICB9O1xuXG4gIHByb3RlY3RlZCBzZXRPcHRpb25zRm9yRmlsZSA9IChcbiAgICBoZWFkZXJQYXJhbXM/OiBIZWFkZXJQYXJhbXNcbiAgKTogVm9uSHR0cE9wdGlvbnNNb2RlbCA9PiB7XG4gICAgcmV0dXJuIHtcbiAgICAgIC4uLnRoaXMuc2V0T3B0aW9ucyhoZWFkZXJQYXJhbXM/LnBhcmFtcyksXG4gICAgICBoZWFkZXJzOiBuZXcgSHR0cEhlYWRlcnMoe1xuICAgICAgICBBY2NlcHQ6IGhlYWRlclBhcmFtcz8uYWNjZXB0ID8/ICdhcHBsaWNhdGlvbi9qc29uJyxcbiAgICAgICAgJ0FjY2Vzcy1Db250cm9sLUFsbG93LU9yaWdpbic6ICcqJyxcbiAgICAgIH0pLFxuICAgIH07XG4gIH07XG5cbiAgcHJvdGVjdGVkIHNldFVybFBhcmFtcyA9ICh1cmw6IHN0cmluZywgcGFyYW1zPzogR2VuZXJpY1BhcmFtcykgPT4ge1xuICAgIGlmIChwYXJhbXMgIT0gbnVsbCkge1xuICAgICAgZm9yIChjb25zdCBwIGluIHBhcmFtcykge1xuICAgICAgICBpZiAocCAhPSBudWxsKSB7XG4gICAgICAgICAgdXJsID0gdXJsLnJlcGxhY2UoYHske3B9fWAsIHBhcmFtc1twXSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIHVybDtcbiAgfTtcblxuICBwcm90ZWN0ZWQgYXV0aGVudGljYXRlID0gKFxuICAgIHVybDogc3RyaW5nLFxuICAgIHVzZXJuYW1lOiBzdHJpbmcsXG4gICAgcGFzc3dvcmQ6IHN0cmluZ1xuICApOiBPYnNlcnZhYmxlPGFueT4gPT4ge1xuICAgIGNvbnN0IGF1dGhvcml6YXRpb24gPSBidG9hKGAke3VzZXJuYW1lfToke3Bhc3N3b3JkfWApO1xuICAgIGNvbnN0IGhlYWRlcnMgPSBuZXcgSHR0cEhlYWRlcnMoe1xuICAgICAgYXV0aG9yaXphdGlvbjogYEJhc2ljICR7YXV0aG9yaXphdGlvbn1gLFxuICAgIH0pO1xuICAgIHJldHVybiB0aGlzLmh0dHBcbiAgICAgIC5nZXQodXJsLCB7XG4gICAgICAgIGhlYWRlcnMsXG4gICAgICAgIHdpdGhDcmVkZW50aWFsczogdHJ1ZSxcbiAgICAgIH0pXG4gICAgICAucGlwZSh0YWtlKDEpLCBzaGFyZSgpKTtcbiAgfTtcblxuICBwcm90ZWN0ZWQgZ2V0ID0gPFIgPSBhbnk+KHtcbiAgICB1cmwsXG4gICAgdXJsUGFyYW1zLFxuICAgIHBhcmFtcyxcbiAgfTogR2V0UGFyYW1zKTogT2JzZXJ2YWJsZTxSPiA9PiB7XG4gICAgdXJsID0gdGhpcy5zZXRVcmxQYXJhbXModXJsLCB1cmxQYXJhbXMpO1xuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0PFI+KHVybCwgdGhpcy5zZXRPcHRpb25zKHBhcmFtcykpO1xuICB9O1xuXG4gIHByb3RlY3RlZCBmaWxlID0gKHtcbiAgICB1cmwsXG4gICAgdXJsUGFyYW1zLFxuICAgIHBhcmFtcyxcbiAgfTogR2V0UGFyYW1zKTogT2JzZXJ2YWJsZTxTYWZlUmVzb3VyY2VVcmw+ID0+IHtcbiAgICB1cmwgPSB0aGlzLnNldFVybFBhcmFtcyh1cmwsIHVybFBhcmFtcyk7XG4gICAgcmV0dXJuIHRoaXMuaHR0cFxuICAgICAgLmdldCh1cmwsIHtcbiAgICAgICAgLi4udGhpcy5zZXRPcHRpb25zRm9yRmlsZShwYXJhbXMpLFxuICAgICAgICByZXNwb25zZVR5cGU6ICdibG9iJyBhcyAnanNvbicsXG4gICAgICB9KVxuICAgICAgLnBpcGUoXG4gICAgICAgIG1hcCgocmVzOiBhbnkpID0+IHtcbiAgICAgICAgICBjb25zdCBmaWxlQmxvYiA9IG5ldyBCbG9iKFtyZXNdLCB7IHR5cGU6IHBhcmFtcz8uY29udGVudFR5cGUgfSk7XG4gICAgICAgICAgY29uc3Qgb2JqVXJsID0gVVJMLmNyZWF0ZU9iamVjdFVSTChmaWxlQmxvYik7XG4gICAgICAgICAgY29uc3Qgc2FuaXRpemVkID1cbiAgICAgICAgICAgIHRoaXMuc2FuaXRpemVyLmJ5cGFzc1NlY3VyaXR5VHJ1c3RSZXNvdXJjZVVybChvYmpVcmwpO1xuICAgICAgICAgIHJldHVybiBzYW5pdGl6ZWQ7XG4gICAgICAgIH0pXG4gICAgICApO1xuICB9O1xuXG4gIHByb3RlY3RlZCBkZWxldGUgPSA8UiA9IGFueT4oe1xuICAgIHVybCxcbiAgICB1cmxQYXJhbXMsXG4gICAgcGFyYW1zLFxuICB9OiBEZWxldGVQYXJhbXMpOiBPYnNlcnZhYmxlPFI+ID0+IHtcbiAgICB1cmwgPSB0aGlzLnNldFVybFBhcmFtcyh1cmwsIHVybFBhcmFtcyk7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5kZWxldGU8Uj4odXJsLCB0aGlzLnNldE9wdGlvbnMocGFyYW1zKSk7XG4gIH07XG5cbiAgcHJvdGVjdGVkIHBvc3QgPSA8UiA9IGFueSwgQiA9IGFueSB8IEZvcm1EYXRhPih7XG4gICAgdXJsLFxuICAgIGJvZHksXG4gICAgdXJsUGFyYW1zLFxuICAgIHBhcmFtcyxcbiAgfTogUG9zdFBhcmFtczxCPik6IE9ic2VydmFibGU8Uj4gPT4ge1xuICAgIHVybCA9IHRoaXMuc2V0VXJsUGFyYW1zKHVybCwgdXJsUGFyYW1zKTtcbiAgICBsZXQgb3B0aW9ucyA9XG4gICAgICBib2R5IGluc3RhbmNlb2YgRm9ybURhdGFcbiAgICAgICAgPyB0aGlzLnNldE9wdGlvbnNGb3JGaWxlKHBhcmFtcylcbiAgICAgICAgOiB0aGlzLnNldE9wdGlvbnMocGFyYW1zKTtcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Q8Uj4odXJsLCBib2R5LCBvcHRpb25zKTtcbiAgfTtcblxuICBwcm90ZWN0ZWQgcHV0ID0gPFIgPSBhbnksIEIgPSBhbnkgfCBGb3JtRGF0YT4oe1xuICAgIHVybCxcbiAgICBib2R5LFxuICAgIHVybFBhcmFtcyxcbiAgICBwYXJhbXMsXG4gIH06IFB1dFBhcmFtczxCPik6IE9ic2VydmFibGU8Uj4gPT4ge1xuICAgIHVybCA9IHRoaXMuc2V0VXJsUGFyYW1zKHVybCwgdXJsUGFyYW1zKTtcbiAgICBsZXQgb3B0aW9ucyA9XG4gICAgICBib2R5IGluc3RhbmNlb2YgRm9ybURhdGFcbiAgICAgICAgPyB0aGlzLnNldE9wdGlvbnNGb3JGaWxlKHBhcmFtcylcbiAgICAgICAgOiB0aGlzLnNldE9wdGlvbnMocGFyYW1zKTtcbiAgICByZXR1cm4gdGhpcy5odHRwLnB1dDxSPih1cmwsIGJvZHksIG9wdGlvbnMpO1xuICB9O1xuXG4gIHByb3RlY3RlZCBwYXRjaCA9IDxSID0gYW55LCBCID0gYW55IHwgRm9ybURhdGE+KHtcbiAgICB1cmwsXG4gICAgYm9keSxcbiAgICB1cmxQYXJhbXMsXG4gICAgcGFyYW1zLFxuICB9OiBQdXRQYXJhbXM8Qj4pOiBPYnNlcnZhYmxlPFI+ID0+IHtcbiAgICB1cmwgPSB0aGlzLnNldFVybFBhcmFtcyh1cmwsIHVybFBhcmFtcyk7XG4gICAgbGV0IG9wdGlvbnMgPVxuICAgICAgYm9keSBpbnN0YW5jZW9mIEZvcm1EYXRhXG4gICAgICAgID8gdGhpcy5zZXRPcHRpb25zRm9yRmlsZShwYXJhbXMpXG4gICAgICAgIDogdGhpcy5zZXRPcHRpb25zKHBhcmFtcyk7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wYXRjaDxSPih1cmwsIGJvZHksIG9wdGlvbnMpO1xuICB9O1xufVxuIl19
97
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidm9uLXJlc3Quc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItcmVzdC1zZXJ2aWNlL3NyYy9saWIvdm9uLXJlc3Quc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQWMsV0FBVyxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFHL0QsT0FBTyxFQUFFLEdBQUcsRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFXbEQsTUFBTSxPQUFnQixjQUFjO0lBQ2xDLFlBQXNCLElBQWdCLEVBQVksU0FBdUI7UUFBbkQsU0FBSSxHQUFKLElBQUksQ0FBWTtRQUFZLGNBQVMsR0FBVCxTQUFTLENBQWM7UUFFL0QsZUFBVSxHQUFHLENBQUMsWUFBMkIsRUFBZSxFQUFFO1lBQ2xFLE9BQU8sSUFBSSxXQUFXLENBQUM7Z0JBQ3JCLGNBQWMsRUFBRSxZQUFZLEVBQUUsV0FBVyxJQUFJLGtCQUFrQjtnQkFDL0QsTUFBTSxFQUFFLFlBQVksRUFBRSxNQUFNLElBQUksa0JBQWtCO2dCQUNsRCw2QkFBNkIsRUFBRSxHQUFHO2FBQ25DLENBQUMsQ0FBQztRQUNMLENBQUMsQ0FBQztRQUVRLGVBQVUsR0FBRyxDQUFDLFlBQTJCLEVBQXVCLEVBQUU7WUFDMUUsT0FBTztnQkFDTCxPQUFPLEVBQUUsSUFBSSxDQUFDLFVBQVUsQ0FBQyxZQUFZLENBQUM7Z0JBQ3RDLE1BQU0sRUFBRSxZQUFZLEVBQUUsTUFBTTtnQkFDNUIsZUFBZSxFQUFFLElBQUk7YUFDdEIsQ0FBQztRQUNKLENBQUMsQ0FBQztRQUVRLHNCQUFpQixHQUFHLENBQzVCLFlBQTJCLEVBQ04sRUFBRTtZQUN2QixPQUFPO2dCQUNMLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxZQUFZLEVBQUUsTUFBTSxDQUFDO2dCQUN4QyxPQUFPLEVBQUUsSUFBSSxXQUFXLENBQUM7b0JBQ3ZCLE1BQU0sRUFB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QUksT0FBTyxHQUNULElBQUksWUFBWSxRQUFRO2dCQUN0QixDQUFDLENBQUMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLE1BQU0sQ0FBQztnQkFDaEMsQ0FBQyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsTUFBTSxDQUFDLENBQUM7WUFDOUIsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBSSxHQUFHLEVBQUUsSUFBSSxFQUFFLE9BQU8sQ0FBQyxDQUFDO1FBQ2hELENBQUMsQ0FBQztJQXRJMEUsQ0FBQztDQXVJOUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBIdHRwQ2xpZW50LCBIdHRwSGVhZGVycyB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcbmltcG9ydCB7IERvbVNhbml0aXplciwgU2FmZVJlc291cmNlVXJsIH0gZnJvbSAnQGFuZ3VsYXIvcGxhdGZvcm0tYnJvd3Nlcic7XG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBtYXAsIHNoYXJlLCB0YWtlIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgVm9uSHR0cE9wdGlvbnNNb2RlbCB9IGZyb20gJy4vbW9kZWwvdm9uLWh0dHAtb3B0aW9ucy5tb2RlbCc7XG5pbXBvcnQge1xuICBEZWxldGVQYXJhbXMsXG4gIEdlbmVyaWNQYXJhbXMsXG4gIEdldFBhcmFtcyxcbiAgSGVhZGVyUGFyYW1zLFxuICBQb3N0UGFyYW1zLFxuICBQdXRQYXJhbXMsXG59IGZyb20gJy4vbW9kZWwvdm9uLXJlc3QtZGVmaW5pdGlvbi50eXBlJztcblxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIFZvblJlc3RTZXJ2aWNlIHtcbiAgY29uc3RydWN0b3IocHJvdGVjdGVkIGh0dHA6IEh0dHBDbGllbnQsIHByb3RlY3RlZCBzYW5pdGl6ZXI6IERvbVNhbml0aXplcikge31cblxuICBwcm90ZWN0ZWQgc2V0SGVhZGVycyA9IChoZWFkZXJQYXJhbXM/OiBIZWFkZXJQYXJhbXMpOiBIdHRwSGVhZGVycyA9PiB7XG4gICAgcmV0dXJuIG5ldyBIdHRwSGVhZGVycyh7XG4gICAgICAnQ29udGVudC1UeXBlJzogaGVhZGVyUGFyYW1zPy5jb250ZW50VHlwZSA/PyAnYXBwbGljYXRpb24vanNvbicsXG4gICAgICBBY2NlcHQ6IGhlYWRlclBhcmFtcz8uYWNjZXB0ID8/ICdhcHBsaWNhdGlvbi9qc29uJyxcbiAgICAgICdBY2Nlc3MtQ29udHJvbC1BbGxvdy1PcmlnaW4nOiAnKicsXG4gICAgfSk7XG4gIH07XG5cbiAgcHJvdGVjdGVkIHNldE9wdGlvbnMgPSAoaGVhZGVyUGFyYW1zPzogSGVhZGVyUGFyYW1zKTogVm9uSHR0cE9wdGlvbnNNb2RlbCA9PiB7XG4gICAgcmV0dXJuIHtcbiAgICAgIGhlYWRlcnM6IHRoaXMuc2V0SGVhZGVycyhoZWFkZXJQYXJhbXMpLFxuICAgICAgcGFyYW1zOiBoZWFkZXJQYXJhbXM/LnBhcmFtcyxcbiAgICAgIHdpdGhDcmVkZW50aWFsczogdHJ1ZSxcbiAgICB9O1xuICB9O1xuXG4gIHByb3RlY3RlZCBzZXRPcHRpb25zRm9yRmlsZSA9IChcbiAgICBoZWFkZXJQYXJhbXM/OiBIZWFkZXJQYXJhbXNcbiAgKTogVm9uSHR0cE9wdGlvbnNNb2RlbCA9PiB7XG4gICAgcmV0dXJuIHtcbiAgICAgIC4uLnRoaXMuc2V0T3B0aW9ucyhoZWFkZXJQYXJhbXM/LnBhcmFtcyksXG4gICAgICBoZWFkZXJzOiBuZXcgSHR0cEhlYWRlcnMoe1xuICAgICAgICBBY2NlcHQ6IGhlYWRlclBhcmFtcz8uYWNjZXB0ID8/ICdhcHBsaWNhdGlvbi9qc29uJyxcbiAgICAgICAgJ0FjY2Vzcy1Db250cm9sLUFsbG93LU9yaWdpbic6ICcqJyxcbiAgICAgIH0pLFxuICAgIH07XG4gIH07XG5cbiAgcHJvdGVjdGVkIHNldFVybFBhcmFtcyA9ICh1cmw6IHN0cmluZywgcGFyYW1zPzogR2VuZXJpY1BhcmFtcykgPT4ge1xuICAgIGlmIChwYXJhbXMgIT0gbnVsbCkge1xuICAgICAgZm9yIChjb25zdCBwIGluIHBhcmFtcykge1xuICAgICAgICBpZiAocCAhPSBudWxsKSB7XG4gICAgICAgICAgdXJsID0gdXJsLnJlcGxhY2UoYHske3B9fWAsIHBhcmFtc1twXSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIHVybDtcbiAgfTtcblxuICBhdXRoZW50aWNhdGUgPSAoXG4gICAgdXJsOiBzdHJpbmcsXG4gICAgdXNlcm5hbWU6IHN0cmluZyxcbiAgICBwYXNzd29yZDogc3RyaW5nXG4gICk6IE9ic2VydmFibGU8YW55PiA9PiB7XG4gICAgY29uc3QgYXV0aG9yaXphdGlvbiA9IGJ0b2EoYCR7dXNlcm5hbWV9OiR7cGFzc3dvcmR9YCk7XG4gICAgY29uc3QgaGVhZGVycyA9IG5ldyBIdHRwSGVhZGVycyh7XG4gICAgICBhdXRob3JpemF0aW9uOiBgQmFzaWMgJHthdXRob3JpemF0aW9ufWAsXG4gICAgfSk7XG4gICAgcmV0dXJuIHRoaXMuaHR0cFxuICAgICAgLmdldCh1cmwsIHtcbiAgICAgICAgaGVhZGVycyxcbiAgICAgICAgd2l0aENyZWRlbnRpYWxzOiB0cnVlLFxuICAgICAgfSlcbiAgICAgIC5waXBlKHRha2UoMSksIHNoYXJlKCkpO1xuICB9O1xuXG4gIGdldCA9IDxSID0gYW55Pih7IHVybCwgdXJsUGFyYW1zLCBwYXJhbXMgfTogR2V0UGFyYW1zKTogT2JzZXJ2YWJsZTxSPiA9PiB7XG4gICAgdXJsID0gdGhpcy5zZXRVcmxQYXJhbXModXJsLCB1cmxQYXJhbXMpO1xuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0PFI+KHVybCwgdGhpcy5zZXRPcHRpb25zKHBhcmFtcykpO1xuICB9O1xuXG4gIGZpbGUgPSAoe1xuICAgIHVybCxcbiAgICB1cmxQYXJhbXMsXG4gICAgcGFyYW1zLFxuICB9OiBHZXRQYXJhbXMpOiBPYnNlcnZhYmxlPFNhZmVSZXNvdXJjZVVybD4gPT4ge1xuICAgIHVybCA9IHRoaXMuc2V0VXJsUGFyYW1zKHVybCwgdXJsUGFyYW1zKTtcbiAgICByZXR1cm4gdGhpcy5odHRwXG4gICAgICAuZ2V0KHVybCwge1xuICAgICAgICAuLi50aGlzLnNldE9wdGlvbnNGb3JGaWxlKHBhcmFtcyksXG4gICAgICAgIHJlc3BvbnNlVHlwZTogJ2Jsb2InIGFzICdqc29uJyxcbiAgICAgIH0pXG4gICAgICAucGlwZShcbiAgICAgICAgbWFwKChyZXM6IGFueSkgPT4ge1xuICAgICAgICAgIGNvbnN0IGZpbGVCbG9iID0gbmV3IEJsb2IoW3Jlc10sIHsgdHlwZTogcGFyYW1zPy5jb250ZW50VHlwZSB9KTtcbiAgICAgICAgICBjb25zdCBvYmpVcmwgPSBVUkwuY3JlYXRlT2JqZWN0VVJMKGZpbGVCbG9iKTtcbiAgICAgICAgICBjb25zdCBzYW5pdGl6ZWQgPVxuICAgICAgICAgICAgdGhpcy5zYW5pdGl6ZXIuYnlwYXNzU2VjdXJpdHlUcnVzdFJlc291cmNlVXJsKG9ialVybCk7XG4gICAgICAgICAgcmV0dXJuIHNhbml0aXplZDtcbiAgICAgICAgfSlcbiAgICAgICk7XG4gIH07XG5cbiAgZGVsZXRlID0gPFIgPSBhbnk+KHtcbiAgICB1cmwsXG4gICAgdXJsUGFyYW1zLFxuICAgIHBhcmFtcyxcbiAgfTogRGVsZXRlUGFyYW1zKTogT2JzZXJ2YWJsZTxSPiA9PiB7XG4gICAgdXJsID0gdGhpcy5zZXRVcmxQYXJhbXModXJsLCB1cmxQYXJhbXMpO1xuICAgIHJldHVybiB0aGlzLmh0dHAuZGVsZXRlPFI+KHVybCwgdGhpcy5zZXRPcHRpb25zKHBhcmFtcykpO1xuICB9O1xuXG4gIHBvc3QgPSA8UiA9IGFueSwgQiA9IGFueSB8IEZvcm1EYXRhPih7XG4gICAgdXJsLFxuICAgIGJvZHksXG4gICAgdXJsUGFyYW1zLFxuICAgIHBhcmFtcyxcbiAgfTogUG9zdFBhcmFtczxCPik6IE9ic2VydmFibGU8Uj4gPT4ge1xuICAgIHVybCA9IHRoaXMuc2V0VXJsUGFyYW1zKHVybCwgdXJsUGFyYW1zKTtcbiAgICBsZXQgb3B0aW9ucyA9XG4gICAgICBib2R5IGluc3RhbmNlb2YgRm9ybURhdGFcbiAgICAgICAgPyB0aGlzLnNldE9wdGlvbnNGb3JGaWxlKHBhcmFtcylcbiAgICAgICAgOiB0aGlzLnNldE9wdGlvbnMocGFyYW1zKTtcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Q8Uj4odXJsLCBib2R5LCBvcHRpb25zKTtcbiAgfTtcblxuICBwdXQgPSA8UiA9IGFueSwgQiA9IGFueSB8IEZvcm1EYXRhPih7XG4gICAgdXJsLFxuICAgIGJvZHksXG4gICAgdXJsUGFyYW1zLFxuICAgIHBhcmFtcyxcbiAgfTogUHV0UGFyYW1zPEI+KTogT2JzZXJ2YWJsZTxSPiA9PiB7XG4gICAgdXJsID0gdGhpcy5zZXRVcmxQYXJhbXModXJsLCB1cmxQYXJhbXMpO1xuICAgIGxldCBvcHRpb25zID1cbiAgICAgIGJvZHkgaW5zdGFuY2VvZiBGb3JtRGF0YVxuICAgICAgICA/IHRoaXMuc2V0T3B0aW9uc0ZvckZpbGUocGFyYW1zKVxuICAgICAgICA6IHRoaXMuc2V0T3B0aW9ucyhwYXJhbXMpO1xuICAgIHJldHVybiB0aGlzLmh0dHAucHV0PFI+KHVybCwgYm9keSwgb3B0aW9ucyk7XG4gIH07XG5cbiAgcGF0Y2ggPSA8UiA9IGFueSwgQiA9IGFueSB8IEZvcm1EYXRhPih7XG4gICAgdXJsLFxuICAgIGJvZHksXG4gICAgdXJsUGFyYW1zLFxuICAgIHBhcmFtcyxcbiAgfTogUHV0UGFyYW1zPEI+KTogT2JzZXJ2YWJsZTxSPiA9PiB7XG4gICAgdXJsID0gdGhpcy5zZXRVcmxQYXJhbXModXJsLCB1cmxQYXJhbXMpO1xuICAgIGxldCBvcHRpb25zID1cbiAgICAgIGJvZHkgaW5zdGFuY2VvZiBGb3JtRGF0YVxuICAgICAgICA/IHRoaXMuc2V0T3B0aW9uc0ZvckZpbGUocGFyYW1zKVxuICAgICAgICA6IHRoaXMuc2V0T3B0aW9ucyhwYXJhbXMpO1xuICAgIHJldHVybiB0aGlzLmh0dHAucGF0Y2g8Uj4odXJsLCBib2R5LCBvcHRpb25zKTtcbiAgfTtcbn1cbiJdfQ==
@@ -109,7 +109,7 @@ class VonRestService {
109
109
  })
110
110
  .pipe(take(1), share());
111
111
  };
112
- this.get = ({ url, urlParams, params, }) => {
112
+ this.get = ({ url, urlParams, params }) => {
113
113
  url = this.setUrlParams(url, urlParams);
114
114
  return this.http.get(url, this.setOptions(params));
115
115
  };
@@ -1 +1 @@
1
- {"version":3,"file":"von-development-studio-angular-rest-service.mjs","sources":["../../../projects/angular-rest-service/src/lib/von-rest-interceptor.service.ts","../../../projects/angular-rest-service/src/lib/von-rest.service.ts","../../../projects/angular-rest-service/src/von-development-studio-angular-rest-service.ts"],"sourcesContent":["import { HttpErrorResponse, HttpEvent, HttpHandler, HttpInterceptor, HttpRequest, HttpResponse } from '@angular/common/http';\nimport { Router } from '@angular/router';\nimport { Observable, throwError } from 'rxjs';\nimport { catchError, map } from 'rxjs/operators';\nimport { VonErrorRestInterceptorModel } from './model/von-error-rest-interceptor.model';\n\nexport abstract class VonRestInterceptorService implements HttpInterceptor {\n protected consoleDebug = false;\n protected errorResponseUnknown = 'Unknown Error';\n protected errorResponseForbidden = 'Forbidden Error';\n protected urlWhoAmI = 'api/who-am-i';\n protected redirectOn403 = true;\n protected redirect403Url = ['403'];\n\n constructor(protected router: Router) {}\n\n intercept(request: HttpRequest<any>, next: HttpHandler): Observable<HttpEvent<any>> {\n return next.handle(request).pipe(map(this.mapEvent), catchError(this.catchError));\n }\n\n protected postHttpRequest = () => {};\n\n protected mapEvent = (event: HttpEvent<any>) => {\n if (event instanceof HttpResponse) {\n if (event.status === 200 || event.status === 204) {\n this.postHttpRequest();\n return event;\n }\n if (event.status !== 200) {\n const error: VonErrorRestInterceptorModel = {\n status: event.status,\n message: event.statusText,\n body: event.body,\n };\n if (this.consoleDebug) {\n console.error('[ErrorWS]: ', error);\n }\n throw error;\n }\n }\n return event;\n };\n\n protected catchError = (errorResponse: HttpErrorResponse) => {\n if (this.consoleDebug) {\n console.error('[Fatal]: ', errorResponse);\n }\n const error: VonErrorRestInterceptorModel = {\n status: errorResponse.status,\n message: '',\n body: errorResponse.error || {},\n };\n if (errorResponse.status === 0) {\n error.message = this.errorResponseUnknown;\n }\n if (errorResponse.status === 401) {\n error.message = errorResponse.error ? errorResponse.error : this.errorResponseForbidden;\n }\n if (this.redirectOn403) {\n if (errorResponse.status === 403 || (errorResponse.url && errorResponse.url.indexOf(this.urlWhoAmI) > -1)) {\n this.router.navigate(this.redirect403Url);\n }\n }\n this.postHttpRequest();\n return throwError(error);\n };\n}\n","import { HttpClient, HttpHeaders } from '@angular/common/http';\nimport { DomSanitizer, SafeResourceUrl } from '@angular/platform-browser';\nimport { Observable } from 'rxjs';\nimport { map, share, take } from 'rxjs/operators';\nimport { VonHttpOptionsModel } from './model/von-http-options.model';\nimport {\n DeleteParams,\n GenericParams,\n GetParams,\n HeaderParams,\n PostParams,\n PutParams,\n} from './model/von-rest-definition.type';\n\nexport abstract class VonRestService {\n constructor(protected http: HttpClient, protected sanitizer: DomSanitizer) {}\n\n protected setHeaders = (headerParams?: HeaderParams): HttpHeaders => {\n return new HttpHeaders({\n 'Content-Type': headerParams?.contentType ?? 'application/json',\n Accept: headerParams?.accept ?? 'application/json',\n 'Access-Control-Allow-Origin': '*',\n });\n };\n\n protected setOptions = (headerParams?: HeaderParams): VonHttpOptionsModel => {\n return {\n headers: this.setHeaders(headerParams),\n params: headerParams?.params,\n withCredentials: true,\n };\n };\n\n protected setOptionsForFile = (\n headerParams?: HeaderParams\n ): VonHttpOptionsModel => {\n return {\n ...this.setOptions(headerParams?.params),\n headers: new HttpHeaders({\n Accept: headerParams?.accept ?? 'application/json',\n 'Access-Control-Allow-Origin': '*',\n }),\n };\n };\n\n protected setUrlParams = (url: string, params?: GenericParams) => {\n if (params != null) {\n for (const p in params) {\n if (p != null) {\n url = url.replace(`{${p}}`, params[p]);\n }\n }\n }\n return url;\n };\n\n protected authenticate = (\n url: string,\n username: string,\n password: string\n ): Observable<any> => {\n const authorization = btoa(`${username}:${password}`);\n const headers = new HttpHeaders({\n authorization: `Basic ${authorization}`,\n });\n return this.http\n .get(url, {\n headers,\n withCredentials: true,\n })\n .pipe(take(1), share());\n };\n\n protected get = <R = any>({\n url,\n urlParams,\n params,\n }: GetParams): Observable<R> => {\n url = this.setUrlParams(url, urlParams);\n return this.http.get<R>(url, this.setOptions(params));\n };\n\n protected file = ({\n url,\n urlParams,\n params,\n }: GetParams): Observable<SafeResourceUrl> => {\n url = this.setUrlParams(url, urlParams);\n return this.http\n .get(url, {\n ...this.setOptionsForFile(params),\n responseType: 'blob' as 'json',\n })\n .pipe(\n map((res: any) => {\n const fileBlob = new Blob([res], { type: params?.contentType });\n const objUrl = URL.createObjectURL(fileBlob);\n const sanitized =\n this.sanitizer.bypassSecurityTrustResourceUrl(objUrl);\n return sanitized;\n })\n );\n };\n\n protected delete = <R = any>({\n url,\n urlParams,\n params,\n }: DeleteParams): Observable<R> => {\n url = this.setUrlParams(url, urlParams);\n return this.http.delete<R>(url, this.setOptions(params));\n };\n\n protected post = <R = any, B = any | FormData>({\n url,\n body,\n urlParams,\n params,\n }: PostParams<B>): Observable<R> => {\n url = this.setUrlParams(url, urlParams);\n let options =\n body instanceof FormData\n ? this.setOptionsForFile(params)\n : this.setOptions(params);\n return this.http.post<R>(url, body, options);\n };\n\n protected put = <R = any, B = any | FormData>({\n url,\n body,\n urlParams,\n params,\n }: PutParams<B>): Observable<R> => {\n url = this.setUrlParams(url, urlParams);\n let options =\n body instanceof FormData\n ? this.setOptionsForFile(params)\n : this.setOptions(params);\n return this.http.put<R>(url, body, options);\n };\n\n protected patch = <R = any, B = any | FormData>({\n url,\n body,\n urlParams,\n params,\n }: PutParams<B>): Observable<R> => {\n url = this.setUrlParams(url, urlParams);\n let options =\n body instanceof FormData\n ? this.setOptionsForFile(params)\n : this.setOptions(params);\n return this.http.patch<R>(url, body, options);\n };\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"von-development-studio-angular-rest-service.mjs","sources":["../../../projects/angular-rest-service/src/lib/von-rest-interceptor.service.ts","../../../projects/angular-rest-service/src/lib/von-rest.service.ts","../../../projects/angular-rest-service/src/von-development-studio-angular-rest-service.ts"],"sourcesContent":["import { HttpErrorResponse, HttpEvent, HttpHandler, HttpInterceptor, HttpRequest, HttpResponse } from '@angular/common/http';\nimport { Router } from '@angular/router';\nimport { Observable, throwError } from 'rxjs';\nimport { catchError, map } from 'rxjs/operators';\nimport { VonErrorRestInterceptorModel } from './model/von-error-rest-interceptor.model';\n\nexport abstract class VonRestInterceptorService implements HttpInterceptor {\n protected consoleDebug = false;\n protected errorResponseUnknown = 'Unknown Error';\n protected errorResponseForbidden = 'Forbidden Error';\n protected urlWhoAmI = 'api/who-am-i';\n protected redirectOn403 = true;\n protected redirect403Url = ['403'];\n\n constructor(protected router: Router) {}\n\n intercept(request: HttpRequest<any>, next: HttpHandler): Observable<HttpEvent<any>> {\n return next.handle(request).pipe(map(this.mapEvent), catchError(this.catchError));\n }\n\n protected postHttpRequest = () => {};\n\n protected mapEvent = (event: HttpEvent<any>) => {\n if (event instanceof HttpResponse) {\n if (event.status === 200 || event.status === 204) {\n this.postHttpRequest();\n return event;\n }\n if (event.status !== 200) {\n const error: VonErrorRestInterceptorModel = {\n status: event.status,\n message: event.statusText,\n body: event.body,\n };\n if (this.consoleDebug) {\n console.error('[ErrorWS]: ', error);\n }\n throw error;\n }\n }\n return event;\n };\n\n protected catchError = (errorResponse: HttpErrorResponse) => {\n if (this.consoleDebug) {\n console.error('[Fatal]: ', errorResponse);\n }\n const error: VonErrorRestInterceptorModel = {\n status: errorResponse.status,\n message: '',\n body: errorResponse.error || {},\n };\n if (errorResponse.status === 0) {\n error.message = this.errorResponseUnknown;\n }\n if (errorResponse.status === 401) {\n error.message = errorResponse.error ? errorResponse.error : this.errorResponseForbidden;\n }\n if (this.redirectOn403) {\n if (errorResponse.status === 403 || (errorResponse.url && errorResponse.url.indexOf(this.urlWhoAmI) > -1)) {\n this.router.navigate(this.redirect403Url);\n }\n }\n this.postHttpRequest();\n return throwError(error);\n };\n}\n","import { HttpClient, HttpHeaders } from '@angular/common/http';\nimport { DomSanitizer, SafeResourceUrl } from '@angular/platform-browser';\nimport { Observable } from 'rxjs';\nimport { map, share, take } from 'rxjs/operators';\nimport { VonHttpOptionsModel } from './model/von-http-options.model';\nimport {\n DeleteParams,\n GenericParams,\n GetParams,\n HeaderParams,\n PostParams,\n PutParams,\n} from './model/von-rest-definition.type';\n\nexport abstract class VonRestService {\n constructor(protected http: HttpClient, protected sanitizer: DomSanitizer) {}\n\n protected setHeaders = (headerParams?: HeaderParams): HttpHeaders => {\n return new HttpHeaders({\n 'Content-Type': headerParams?.contentType ?? 'application/json',\n Accept: headerParams?.accept ?? 'application/json',\n 'Access-Control-Allow-Origin': '*',\n });\n };\n\n protected setOptions = (headerParams?: HeaderParams): VonHttpOptionsModel => {\n return {\n headers: this.setHeaders(headerParams),\n params: headerParams?.params,\n withCredentials: true,\n };\n };\n\n protected setOptionsForFile = (\n headerParams?: HeaderParams\n ): VonHttpOptionsModel => {\n return {\n ...this.setOptions(headerParams?.params),\n headers: new HttpHeaders({\n Accept: headerParams?.accept ?? 'application/json',\n 'Access-Control-Allow-Origin': '*',\n }),\n };\n };\n\n protected setUrlParams = (url: string, params?: GenericParams) => {\n if (params != null) {\n for (const p in params) {\n if (p != null) {\n url = url.replace(`{${p}}`, params[p]);\n }\n }\n }\n return url;\n };\n\n authenticate = (\n url: string,\n username: string,\n password: string\n ): Observable<any> => {\n const authorization = btoa(`${username}:${password}`);\n const headers = new HttpHeaders({\n authorization: `Basic ${authorization}`,\n });\n return this.http\n .get(url, {\n headers,\n withCredentials: true,\n })\n .pipe(take(1), share());\n };\n\n get = <R = any>({ url, urlParams, params }: GetParams): Observable<R> => {\n url = this.setUrlParams(url, urlParams);\n return this.http.get<R>(url, this.setOptions(params));\n };\n\n file = ({\n url,\n urlParams,\n params,\n }: GetParams): Observable<SafeResourceUrl> => {\n url = this.setUrlParams(url, urlParams);\n return this.http\n .get(url, {\n ...this.setOptionsForFile(params),\n responseType: 'blob' as 'json',\n })\n .pipe(\n map((res: any) => {\n const fileBlob = new Blob([res], { type: params?.contentType });\n const objUrl = URL.createObjectURL(fileBlob);\n const sanitized =\n this.sanitizer.bypassSecurityTrustResourceUrl(objUrl);\n return sanitized;\n })\n );\n };\n\n delete = <R = any>({\n url,\n urlParams,\n params,\n }: DeleteParams): Observable<R> => {\n url = this.setUrlParams(url, urlParams);\n return this.http.delete<R>(url, this.setOptions(params));\n };\n\n post = <R = any, B = any | FormData>({\n url,\n body,\n urlParams,\n params,\n }: PostParams<B>): Observable<R> => {\n url = this.setUrlParams(url, urlParams);\n let options =\n body instanceof FormData\n ? this.setOptionsForFile(params)\n : this.setOptions(params);\n return this.http.post<R>(url, body, options);\n };\n\n put = <R = any, B = any | FormData>({\n url,\n body,\n urlParams,\n params,\n }: PutParams<B>): Observable<R> => {\n url = this.setUrlParams(url, urlParams);\n let options =\n body instanceof FormData\n ? this.setOptionsForFile(params)\n : this.setOptions(params);\n return this.http.put<R>(url, body, options);\n };\n\n patch = <R = any, B = any | FormData>({\n url,\n body,\n urlParams,\n params,\n }: PutParams<B>): Observable<R> => {\n url = this.setUrlParams(url, urlParams);\n let options =\n body instanceof FormData\n ? this.setOptionsForFile(params)\n : this.setOptions(params);\n return this.http.patch<R>(url, body, options);\n };\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
@@ -110,7 +110,7 @@ class VonRestService {
110
110
  })
111
111
  .pipe(take(1), share());
112
112
  };
113
- this.get = ({ url, urlParams, params, }) => {
113
+ this.get = ({ url, urlParams, params }) => {
114
114
  url = this.setUrlParams(url, urlParams);
115
115
  return this.http.get(url, this.setOptions(params));
116
116
  };
@@ -1 +1 @@
1
- {"version":3,"file":"von-development-studio-angular-rest-service.mjs","sources":["../../../projects/angular-rest-service/src/lib/von-rest-interceptor.service.ts","../../../projects/angular-rest-service/src/lib/von-rest.service.ts","../../../projects/angular-rest-service/src/von-development-studio-angular-rest-service.ts"],"sourcesContent":["import { HttpErrorResponse, HttpEvent, HttpHandler, HttpInterceptor, HttpRequest, HttpResponse } from '@angular/common/http';\nimport { Router } from '@angular/router';\nimport { Observable, throwError } from 'rxjs';\nimport { catchError, map } from 'rxjs/operators';\nimport { VonErrorRestInterceptorModel } from './model/von-error-rest-interceptor.model';\n\nexport abstract class VonRestInterceptorService implements HttpInterceptor {\n protected consoleDebug = false;\n protected errorResponseUnknown = 'Unknown Error';\n protected errorResponseForbidden = 'Forbidden Error';\n protected urlWhoAmI = 'api/who-am-i';\n protected redirectOn403 = true;\n protected redirect403Url = ['403'];\n\n constructor(protected router: Router) {}\n\n intercept(request: HttpRequest<any>, next: HttpHandler): Observable<HttpEvent<any>> {\n return next.handle(request).pipe(map(this.mapEvent), catchError(this.catchError));\n }\n\n protected postHttpRequest = () => {};\n\n protected mapEvent = (event: HttpEvent<any>) => {\n if (event instanceof HttpResponse) {\n if (event.status === 200 || event.status === 204) {\n this.postHttpRequest();\n return event;\n }\n if (event.status !== 200) {\n const error: VonErrorRestInterceptorModel = {\n status: event.status,\n message: event.statusText,\n body: event.body,\n };\n if (this.consoleDebug) {\n console.error('[ErrorWS]: ', error);\n }\n throw error;\n }\n }\n return event;\n };\n\n protected catchError = (errorResponse: HttpErrorResponse) => {\n if (this.consoleDebug) {\n console.error('[Fatal]: ', errorResponse);\n }\n const error: VonErrorRestInterceptorModel = {\n status: errorResponse.status,\n message: '',\n body: errorResponse.error || {},\n };\n if (errorResponse.status === 0) {\n error.message = this.errorResponseUnknown;\n }\n if (errorResponse.status === 401) {\n error.message = errorResponse.error ? errorResponse.error : this.errorResponseForbidden;\n }\n if (this.redirectOn403) {\n if (errorResponse.status === 403 || (errorResponse.url && errorResponse.url.indexOf(this.urlWhoAmI) > -1)) {\n this.router.navigate(this.redirect403Url);\n }\n }\n this.postHttpRequest();\n return throwError(error);\n };\n}\n","import { HttpClient, HttpHeaders } from '@angular/common/http';\nimport { DomSanitizer, SafeResourceUrl } from '@angular/platform-browser';\nimport { Observable } from 'rxjs';\nimport { map, share, take } from 'rxjs/operators';\nimport { VonHttpOptionsModel } from './model/von-http-options.model';\nimport {\n DeleteParams,\n GenericParams,\n GetParams,\n HeaderParams,\n PostParams,\n PutParams,\n} from './model/von-rest-definition.type';\n\nexport abstract class VonRestService {\n constructor(protected http: HttpClient, protected sanitizer: DomSanitizer) {}\n\n protected setHeaders = (headerParams?: HeaderParams): HttpHeaders => {\n return new HttpHeaders({\n 'Content-Type': headerParams?.contentType ?? 'application/json',\n Accept: headerParams?.accept ?? 'application/json',\n 'Access-Control-Allow-Origin': '*',\n });\n };\n\n protected setOptions = (headerParams?: HeaderParams): VonHttpOptionsModel => {\n return {\n headers: this.setHeaders(headerParams),\n params: headerParams?.params,\n withCredentials: true,\n };\n };\n\n protected setOptionsForFile = (\n headerParams?: HeaderParams\n ): VonHttpOptionsModel => {\n return {\n ...this.setOptions(headerParams?.params),\n headers: new HttpHeaders({\n Accept: headerParams?.accept ?? 'application/json',\n 'Access-Control-Allow-Origin': '*',\n }),\n };\n };\n\n protected setUrlParams = (url: string, params?: GenericParams) => {\n if (params != null) {\n for (const p in params) {\n if (p != null) {\n url = url.replace(`{${p}}`, params[p]);\n }\n }\n }\n return url;\n };\n\n protected authenticate = (\n url: string,\n username: string,\n password: string\n ): Observable<any> => {\n const authorization = btoa(`${username}:${password}`);\n const headers = new HttpHeaders({\n authorization: `Basic ${authorization}`,\n });\n return this.http\n .get(url, {\n headers,\n withCredentials: true,\n })\n .pipe(take(1), share());\n };\n\n protected get = <R = any>({\n url,\n urlParams,\n params,\n }: GetParams): Observable<R> => {\n url = this.setUrlParams(url, urlParams);\n return this.http.get<R>(url, this.setOptions(params));\n };\n\n protected file = ({\n url,\n urlParams,\n params,\n }: GetParams): Observable<SafeResourceUrl> => {\n url = this.setUrlParams(url, urlParams);\n return this.http\n .get(url, {\n ...this.setOptionsForFile(params),\n responseType: 'blob' as 'json',\n })\n .pipe(\n map((res: any) => {\n const fileBlob = new Blob([res], { type: params?.contentType });\n const objUrl = URL.createObjectURL(fileBlob);\n const sanitized =\n this.sanitizer.bypassSecurityTrustResourceUrl(objUrl);\n return sanitized;\n })\n );\n };\n\n protected delete = <R = any>({\n url,\n urlParams,\n params,\n }: DeleteParams): Observable<R> => {\n url = this.setUrlParams(url, urlParams);\n return this.http.delete<R>(url, this.setOptions(params));\n };\n\n protected post = <R = any, B = any | FormData>({\n url,\n body,\n urlParams,\n params,\n }: PostParams<B>): Observable<R> => {\n url = this.setUrlParams(url, urlParams);\n let options =\n body instanceof FormData\n ? this.setOptionsForFile(params)\n : this.setOptions(params);\n return this.http.post<R>(url, body, options);\n };\n\n protected put = <R = any, B = any | FormData>({\n url,\n body,\n urlParams,\n params,\n }: PutParams<B>): Observable<R> => {\n url = this.setUrlParams(url, urlParams);\n let options =\n body instanceof FormData\n ? this.setOptionsForFile(params)\n : this.setOptions(params);\n return this.http.put<R>(url, body, options);\n };\n\n protected patch = <R = any, B = any | FormData>({\n url,\n body,\n urlParams,\n params,\n }: PutParams<B>): Observable<R> => {\n url = this.setUrlParams(url, urlParams);\n let options =\n body instanceof FormData\n ? this.setOptionsForFile(params)\n : this.setOptions(params);\n return this.http.patch<R>(url, body, options);\n };\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"von-development-studio-angular-rest-service.mjs","sources":["../../../projects/angular-rest-service/src/lib/von-rest-interceptor.service.ts","../../../projects/angular-rest-service/src/lib/von-rest.service.ts","../../../projects/angular-rest-service/src/von-development-studio-angular-rest-service.ts"],"sourcesContent":["import { HttpErrorResponse, HttpEvent, HttpHandler, HttpInterceptor, HttpRequest, HttpResponse } from '@angular/common/http';\nimport { Router } from '@angular/router';\nimport { Observable, throwError } from 'rxjs';\nimport { catchError, map } from 'rxjs/operators';\nimport { VonErrorRestInterceptorModel } from './model/von-error-rest-interceptor.model';\n\nexport abstract class VonRestInterceptorService implements HttpInterceptor {\n protected consoleDebug = false;\n protected errorResponseUnknown = 'Unknown Error';\n protected errorResponseForbidden = 'Forbidden Error';\n protected urlWhoAmI = 'api/who-am-i';\n protected redirectOn403 = true;\n protected redirect403Url = ['403'];\n\n constructor(protected router: Router) {}\n\n intercept(request: HttpRequest<any>, next: HttpHandler): Observable<HttpEvent<any>> {\n return next.handle(request).pipe(map(this.mapEvent), catchError(this.catchError));\n }\n\n protected postHttpRequest = () => {};\n\n protected mapEvent = (event: HttpEvent<any>) => {\n if (event instanceof HttpResponse) {\n if (event.status === 200 || event.status === 204) {\n this.postHttpRequest();\n return event;\n }\n if (event.status !== 200) {\n const error: VonErrorRestInterceptorModel = {\n status: event.status,\n message: event.statusText,\n body: event.body,\n };\n if (this.consoleDebug) {\n console.error('[ErrorWS]: ', error);\n }\n throw error;\n }\n }\n return event;\n };\n\n protected catchError = (errorResponse: HttpErrorResponse) => {\n if (this.consoleDebug) {\n console.error('[Fatal]: ', errorResponse);\n }\n const error: VonErrorRestInterceptorModel = {\n status: errorResponse.status,\n message: '',\n body: errorResponse.error || {},\n };\n if (errorResponse.status === 0) {\n error.message = this.errorResponseUnknown;\n }\n if (errorResponse.status === 401) {\n error.message = errorResponse.error ? errorResponse.error : this.errorResponseForbidden;\n }\n if (this.redirectOn403) {\n if (errorResponse.status === 403 || (errorResponse.url && errorResponse.url.indexOf(this.urlWhoAmI) > -1)) {\n this.router.navigate(this.redirect403Url);\n }\n }\n this.postHttpRequest();\n return throwError(error);\n };\n}\n","import { HttpClient, HttpHeaders } from '@angular/common/http';\nimport { DomSanitizer, SafeResourceUrl } from '@angular/platform-browser';\nimport { Observable } from 'rxjs';\nimport { map, share, take } from 'rxjs/operators';\nimport { VonHttpOptionsModel } from './model/von-http-options.model';\nimport {\n DeleteParams,\n GenericParams,\n GetParams,\n HeaderParams,\n PostParams,\n PutParams,\n} from './model/von-rest-definition.type';\n\nexport abstract class VonRestService {\n constructor(protected http: HttpClient, protected sanitizer: DomSanitizer) {}\n\n protected setHeaders = (headerParams?: HeaderParams): HttpHeaders => {\n return new HttpHeaders({\n 'Content-Type': headerParams?.contentType ?? 'application/json',\n Accept: headerParams?.accept ?? 'application/json',\n 'Access-Control-Allow-Origin': '*',\n });\n };\n\n protected setOptions = (headerParams?: HeaderParams): VonHttpOptionsModel => {\n return {\n headers: this.setHeaders(headerParams),\n params: headerParams?.params,\n withCredentials: true,\n };\n };\n\n protected setOptionsForFile = (\n headerParams?: HeaderParams\n ): VonHttpOptionsModel => {\n return {\n ...this.setOptions(headerParams?.params),\n headers: new HttpHeaders({\n Accept: headerParams?.accept ?? 'application/json',\n 'Access-Control-Allow-Origin': '*',\n }),\n };\n };\n\n protected setUrlParams = (url: string, params?: GenericParams) => {\n if (params != null) {\n for (const p in params) {\n if (p != null) {\n url = url.replace(`{${p}}`, params[p]);\n }\n }\n }\n return url;\n };\n\n authenticate = (\n url: string,\n username: string,\n password: string\n ): Observable<any> => {\n const authorization = btoa(`${username}:${password}`);\n const headers = new HttpHeaders({\n authorization: `Basic ${authorization}`,\n });\n return this.http\n .get(url, {\n headers,\n withCredentials: true,\n })\n .pipe(take(1), share());\n };\n\n get = <R = any>({ url, urlParams, params }: GetParams): Observable<R> => {\n url = this.setUrlParams(url, urlParams);\n return this.http.get<R>(url, this.setOptions(params));\n };\n\n file = ({\n url,\n urlParams,\n params,\n }: GetParams): Observable<SafeResourceUrl> => {\n url = this.setUrlParams(url, urlParams);\n return this.http\n .get(url, {\n ...this.setOptionsForFile(params),\n responseType: 'blob' as 'json',\n })\n .pipe(\n map((res: any) => {\n const fileBlob = new Blob([res], { type: params?.contentType });\n const objUrl = URL.createObjectURL(fileBlob);\n const sanitized =\n this.sanitizer.bypassSecurityTrustResourceUrl(objUrl);\n return sanitized;\n })\n );\n };\n\n delete = <R = any>({\n url,\n urlParams,\n params,\n }: DeleteParams): Observable<R> => {\n url = this.setUrlParams(url, urlParams);\n return this.http.delete<R>(url, this.setOptions(params));\n };\n\n post = <R = any, B = any | FormData>({\n url,\n body,\n urlParams,\n params,\n }: PostParams<B>): Observable<R> => {\n url = this.setUrlParams(url, urlParams);\n let options =\n body instanceof FormData\n ? this.setOptionsForFile(params)\n : this.setOptions(params);\n return this.http.post<R>(url, body, options);\n };\n\n put = <R = any, B = any | FormData>({\n url,\n body,\n urlParams,\n params,\n }: PutParams<B>): Observable<R> => {\n url = this.setUrlParams(url, urlParams);\n let options =\n body instanceof FormData\n ? this.setOptionsForFile(params)\n : this.setOptions(params);\n return this.http.put<R>(url, body, options);\n };\n\n patch = <R = any, B = any | FormData>({\n url,\n body,\n urlParams,\n params,\n }: PutParams<B>): Observable<R> => {\n url = this.setUrlParams(url, urlParams);\n let options =\n body instanceof FormData\n ? this.setOptionsForFile(params)\n : this.setOptions(params);\n return this.http.patch<R>(url, body, options);\n };\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":";;;;MAMsB,yBAAyB,CAAA;AAQ7C,IAAA,WAAA,CAAsB,MAAc,EAAA;QAAd,IAAM,CAAA,MAAA,GAAN,MAAM,CAAQ;QAP1B,IAAY,CAAA,YAAA,GAAG,KAAK,CAAC;QACrB,IAAoB,CAAA,oBAAA,GAAG,eAAe,CAAC;QACvC,IAAsB,CAAA,sBAAA,GAAG,iBAAiB,CAAC;QAC3C,IAAS,CAAA,SAAA,GAAG,cAAc,CAAC;QAC3B,IAAa,CAAA,aAAA,GAAG,IAAI,CAAC;AACrB,QAAA,IAAA,CAAA,cAAc,GAAG,CAAC,KAAK,CAAC,CAAC;AAQzB,QAAA,IAAA,CAAA,eAAe,GAAG,MAAK,GAAG,CAAC;AAE3B,QAAA,IAAA,CAAA,QAAQ,GAAG,CAAC,KAAqB,KAAI;YAC7C,IAAI,KAAK,YAAY,YAAY,EAAE;gBACjC,IAAI,KAAK,CAAC,MAAM,KAAK,GAAG,IAAI,KAAK,CAAC,MAAM,KAAK,GAAG,EAAE;oBAChD,IAAI,CAAC,eAAe,EAAE,CAAC;AACvB,oBAAA,OAAO,KAAK,CAAC;AACd,iBAAA;AACD,gBAAA,IAAI,KAAK,CAAC,MAAM,KAAK,GAAG,EAAE;AACxB,oBAAA,MAAM,KAAK,GAAiC;wBAC1C,MAAM,EAAE,KAAK,CAAC,MAAM;wBACpB,OAAO,EAAE,KAAK,CAAC,UAAU;wBACzB,IAAI,EAAE,KAAK,CAAC,IAAI;qBACjB,CAAC;oBACF,IAAI,IAAI,CAAC,YAAY,EAAE;AACrB,wBAAA,OAAO,CAAC,KAAK,CAAC,aAAa,EAAE,KAAK,CAAC,CAAC;AACrC,qBAAA;AACD,oBAAA,MAAM,KAAK,CAAC;AACb,iBAAA;AACF,aAAA;AACD,YAAA,OAAO,KAAK,CAAC;AACf,SAAC,CAAC;AAEQ,QAAA,IAAA,CAAA,UAAU,GAAG,CAAC,aAAgC,KAAI;YAC1D,IAAI,IAAI,CAAC,YAAY,EAAE;AACrB,gBAAA,OAAO,CAAC,KAAK,CAAC,WAAW,EAAE,aAAa,CAAC,CAAC;AAC3C,aAAA;AACD,YAAA,MAAM,KAAK,GAAiC;gBAC1C,MAAM,EAAE,aAAa,CAAC,MAAM;AAC5B,gBAAA,OAAO,EAAE,EAAE;AACX,gBAAA,IAAI,EAAE,aAAa,CAAC,KAAK,IAAI,EAAE;aAChC,CAAC;AACF,YAAA,IAAI,aAAa,CAAC,MAAM,KAAK,CAAC,EAAE;AAC9B,gBAAA,KAAK,CAAC,OAAO,GAAG,IAAI,CAAC,oBAAoB,CAAC;AAC3C,aAAA;AACD,YAAA,IAAI,aAAa,CAAC,MAAM,KAAK,GAAG,EAAE;AAChC,gBAAA,KAAK,CAAC,OAAO,GAAG,aAAa,CAAC,KAAK,GAAG,aAAa,CAAC,KAAK,GAAG,IAAI,CAAC,sBAAsB,CAAC;AACzF,aAAA;YACD,IAAI,IAAI,CAAC,aAAa,EAAE;gBACtB,IAAI,aAAa,CAAC,MAAM,KAAK,GAAG,KAAK,aAAa,CAAC,GAAG,IAAI,aAAa,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE;oBACzG,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;AAC3C,iBAAA;AACF,aAAA;YACD,IAAI,CAAC,eAAe,EAAE,CAAC;AACvB,YAAA,OAAO,UAAU,CAAC,KAAK,CAAC,CAAC;AAC3B,SAAC,CAAC;KAnDsC;IAExC,SAAS,CAAC,OAAyB,EAAE,IAAiB,EAAA;QACpD,OAAO,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,UAAU,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC;KACnF;AAgDF;;MCpDqB,cAAc,CAAA;IAClC,WAAsB,CAAA,IAAgB,EAAY,SAAuB,EAAA;QAAnD,IAAI,CAAA,IAAA,GAAJ,IAAI,CAAY;QAAY,IAAS,CAAA,SAAA,GAAT,SAAS,CAAc;AAE/D,QAAA,IAAA,CAAA,UAAU,GAAG,CAAC,YAA2B,KAAiB;YAClE,OAAO,IAAI,WAAW,CAAC;AACrB,gBAAA,cAAc,EAAE,YAAY,EAAE,WAAW,IAAI,kBAAkB;AAC/D,gBAAA,MAAM,EAAE,YAAY,EAAE,MAAM,IAAI,kBAAkB;AAClD,gBAAA,6BAA6B,EAAE,GAAG;AACnC,aAAA,CAAC,CAAC;AACL,SAAC,CAAC;AAEQ,QAAA,IAAA,CAAA,UAAU,GAAG,CAAC,YAA2B,KAAyB;YAC1E,OAAO;AACL,gBAAA,OAAO,EAAE,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC;gBACtC,MAAM,EAAE,YAAY,EAAE,MAAM;AAC5B,gBAAA,eAAe,EAAE,IAAI;aACtB,CAAC;AACJ,SAAC,CAAC;AAEQ,QAAA,IAAA,CAAA,iBAAiB,GAAG,CAC5B,YAA2B,KACJ;YACvB,OAAO;AACL,gBAAA,GAAG,IAAI,CAAC,UAAU,CAAC,YAAY,EAAE,MAAM,CAAC;gBACxC,OAAO,EAAE,IAAI,WAAW,CAAC;AACvB,oBAAA,MAAM,EAAE,YAAY,EAAE,MAAM,IAAI,kBAAkB;AAClD,oBAAA,6BAA6B,EAAE,GAAG;iBACnC,CAAC;aACH,CAAC;AACJ,SAAC,CAAC;AAEQ,QAAA,IAAA,CAAA,YAAY,GAAG,CAAC,GAAW,EAAE,MAAsB,KAAI;YAC/D,IAAI,MAAM,IAAI,IAAI,EAAE;AAClB,gBAAA,KAAK,MAAM,CAAC,IAAI,MAAM,EAAE;oBACtB,IAAI,CAAC,IAAI,IAAI,EAAE;AACb,wBAAA,GAAG,GAAG,GAAG,CAAC,OAAO,CAAC,CAAI,CAAA,EAAA,CAAC,CAAG,CAAA,CAAA,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;AACxC,qBAAA;AACF,iBAAA;AACF,aAAA;AACD,YAAA,OAAO,GAAG,CAAC;AACb,SAAC,CAAC;QAEF,IAAY,CAAA,YAAA,GAAG,CACb,GAAW,EACX,QAAgB,EAChB,QAAgB,KACG;YACnB,MAAM,aAAa,GAAG,IAAI,CAAC,CAAA,EAAG,QAAQ,CAAI,CAAA,EAAA,QAAQ,CAAE,CAAA,CAAC,CAAC;AACtD,YAAA,MAAM,OAAO,GAAG,IAAI,WAAW,CAAC;gBAC9B,aAAa,EAAE,CAAS,MAAA,EAAA,aAAa,CAAE,CAAA;AACxC,aAAA,CAAC,CAAC;YACH,OAAO,IAAI,CAAC,IAAI;iBACb,GAAG,CAAC,GAAG,EAAE;gBACR,OAAO;AACP,gBAAA,eAAe,EAAE,IAAI;aACtB,CAAC;iBACD,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;AAC5B,SAAC,CAAC;QAEF,IAAG,CAAA,GAAA,GAAG,CAAU,EAAE,GAAG,EAAE,SAAS,EAAE,MAAM,EAAa,KAAmB;YACtE,GAAG,GAAG,IAAI,CAAC,YAAY,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC;AACxC,YAAA,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAI,GAAG,EAAE,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC;AACxD,SAAC,CAAC;QAEF,IAAI,CAAA,IAAA,GAAG,CAAC,EACN,GAAG,EACH,SAAS,EACT,MAAM,GACI,KAAiC;YAC3C,GAAG,GAAG,IAAI,CAAC,YAAY,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC;YACxC,OAAO,IAAI,CAAC,IAAI;iBACb,GAAG,CAAC,GAAG,EAAE;AACR,gBAAA,GAAG,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC;AACjC,gBAAA,YAAY,EAAE,MAAgB;aAC/B,CAAC;AACD,iBAAA,IAAI,CACH,GAAG,CAAC,CAAC,GAAQ,KAAI;AACf,gBAAA,MAAM,QAAQ,GAAG,IAAI,IAAI,CAAC,CAAC,GAAG,CAAC,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,WAAW,EAAE,CAAC,CAAC;gBAChE,MAAM,MAAM,GAAG,GAAG,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC;gBAC7C,MAAM,SAAS,GACb,IAAI,CAAC,SAAS,CAAC,8BAA8B,CAAC,MAAM,CAAC,CAAC;AACxD,gBAAA,OAAO,SAAS,CAAC;aAClB,CAAC,CACH,CAAC;AACN,SAAC,CAAC;QAEF,IAAM,CAAA,MAAA,GAAG,CAAU,EACjB,GAAG,EACH,SAAS,EACT,MAAM,GACO,KAAmB;YAChC,GAAG,GAAG,IAAI,CAAC,YAAY,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC;AACxC,YAAA,OAAO,IAAI,CAAC,IAAI,CAAC,MAAM,CAAI,GAAG,EAAE,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC;AAC3D,SAAC,CAAC;AAEF,QAAA,IAAA,CAAA,IAAI,GAAG,CAA8B,EACnC,GAAG,EACH,IAAI,EACJ,SAAS,EACT,MAAM,GACQ,KAAmB;YACjC,GAAG,GAAG,IAAI,CAAC,YAAY,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC;AACxC,YAAA,IAAI,OAAO,GACT,IAAI,YAAY,QAAQ;AACtB,kBAAE,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC;AAChC,kBAAE,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;AAC9B,YAAA,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAI,GAAG,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;AAC/C,SAAC,CAAC;AAEF,QAAA,IAAA,CAAA,GAAG,GAAG,CAA8B,EAClC,GAAG,EACH,IAAI,EACJ,SAAS,EACT,MAAM,GACO,KAAmB;YAChC,GAAG,GAAG,IAAI,CAAC,YAAY,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC;AACxC,YAAA,IAAI,OAAO,GACT,IAAI,YAAY,QAAQ;AACtB,kBAAE,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC;AAChC,kBAAE,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;AAC9B,YAAA,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAI,GAAG,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;AAC9C,SAAC,CAAC;AAEF,QAAA,IAAA,CAAA,KAAK,GAAG,CAA8B,EACpC,GAAG,EACH,IAAI,EACJ,SAAS,EACT,MAAM,GACO,KAAmB;YAChC,GAAG,GAAG,IAAI,CAAC,YAAY,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC;AACxC,YAAA,IAAI,OAAO,GACT,IAAI,YAAY,QAAQ;AACtB,kBAAE,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC;AAChC,kBAAE,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;AAC9B,YAAA,OAAO,IAAI,CAAC,IAAI,CAAC,KAAK,CAAI,GAAG,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;AAChD,SAAC,CAAC;KAtI2E;AAuI9E;;ACtJD;;AAEG;;;;"}
@@ -1,5 +1,5 @@
1
1
  export interface GenericParams {
2
- [key: string]: any;
2
+ [key: string]: any | undefined | null;
3
3
  }
4
4
  export declare type HeaderParams = {
5
5
  contentType?: string;
@@ -15,11 +15,11 @@ export interface BaseParams {
15
15
  export declare type GetParams = BaseParams;
16
16
  export declare type DeleteParams = BaseParams;
17
17
  export declare type PostParams<B = any | FormData> = BaseParams & {
18
- body: B;
18
+ body?: B;
19
19
  };
20
20
  export declare type PutParams<B = any | FormData> = BaseParams & {
21
- body: B;
21
+ body?: B;
22
22
  };
23
23
  export declare type PatchParams<B = any | FormData> = BaseParams & {
24
- body: B;
24
+ body?: B;
25
25
  };
@@ -11,11 +11,11 @@ export declare abstract class VonRestService {
11
11
  protected setOptions: (headerParams?: HeaderParams | undefined) => VonHttpOptionsModel;
12
12
  protected setOptionsForFile: (headerParams?: HeaderParams | undefined) => VonHttpOptionsModel;
13
13
  protected setUrlParams: (url: string, params?: GenericParams | undefined) => string;
14
- protected authenticate: (url: string, username: string, password: string) => Observable<any>;
15
- protected get: <R = any>({ url, urlParams, params, }: GetParams) => Observable<R>;
16
- protected file: ({ url, urlParams, params, }: GetParams) => Observable<SafeResourceUrl>;
17
- protected delete: <R = any>({ url, urlParams, params, }: DeleteParams) => Observable<R>;
18
- protected post: <R = any, B = any>({ url, body, urlParams, params, }: PostParams<B>) => Observable<R>;
19
- protected put: <R = any, B = any>({ url, body, urlParams, params, }: PutParams<B>) => Observable<R>;
20
- protected patch: <R = any, B = any>({ url, body, urlParams, params, }: PutParams<B>) => Observable<R>;
14
+ authenticate: (url: string, username: string, password: string) => Observable<any>;
15
+ get: <R = any>({ url, urlParams, params }: GetParams) => Observable<R>;
16
+ file: ({ url, urlParams, params, }: GetParams) => Observable<SafeResourceUrl>;
17
+ delete: <R = any>({ url, urlParams, params, }: DeleteParams) => Observable<R>;
18
+ post: <R = any, B = any>({ url, body, urlParams, params, }: PostParams<B>) => Observable<R>;
19
+ put: <R = any, B = any>({ url, body, urlParams, params, }: PutParams<B>) => Observable<R>;
20
+ patch: <R = any, B = any>({ url, body, urlParams, params, }: PutParams<B>) => Observable<R>;
21
21
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@von-development-studio/angular-rest-service",
3
- "version": "2.0.0-SNAPSHOT",
3
+ "version": "2.0.2-SNAPSHOT",
4
4
  "description": "Angular Rest Service wrapper.",
5
5
  "repository": {
6
6
  "type": "git",