@net7/boilerplate-common 4.4.0 → 4.5.0

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.
@@ -36,7 +36,10 @@ export class ApolloProvider {
36
36
  source$ = this.http.get(providerConfig.baseUrl);
37
37
  }
38
38
  else {
39
- source$ = this.http.post(providerConfig.baseUrl, { query: queryBody }, httpOptions);
39
+ source$ = this.http.post(providerConfig.baseUrl, { query: queryBody }, {
40
+ ...httpOptions,
41
+ responseType: 'json' // force to json
42
+ });
40
43
  }
41
44
  return source$.pipe(map((response) => response.data[queryName]));
42
45
  }
@@ -84,4 +87,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImpo
84
87
  providedIn: 'root',
85
88
  }]
86
89
  }], ctorParameters: function () { return [{ type: i1.HttpClient }, { type: i2.ConfigurationService }]; } });
87
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBvbGxvLnByb3ZpZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbjctYm9pbGVycGxhdGUtY29tbW9uL3NyYy9saWIvc2VydmljZXMvY29tbXVuaWNhdGlvbi1wcm92aWRlcnMvYXBvbGxvLnByb3ZpZGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFM0MsT0FBTyxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFDOzs7O0FBS3JDLE1BQU0sa0JBQWtCLEdBQUcsRUFBRSxDQUFDO0FBSzlCLE1BQU0sT0FBTyxjQUFjO0lBQ3pCLFlBQ1UsSUFBZ0IsRUFDaEIsYUFBbUM7UUFEbkMsU0FBSSxHQUFKLElBQUksQ0FBWTtRQUNoQixrQkFBYSxHQUFiLGFBQWEsQ0FBc0I7SUFDMUMsQ0FBQztJQUVKLFFBQVEsQ0FBQyxjQUFjLEVBQUUsU0FBaUIsRUFBRSxPQUFPO1FBQ2pELE1BQU0sRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLFdBQVcsRUFBRSxHQUFHLE9BQU8sQ0FBQztRQUNoRCxNQUFNLFNBQVMsR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLEdBQUcsQ0FBQyxXQUFXLENBQUMsSUFBSSxrQkFBa0IsQ0FBQztRQUM1RSxNQUFNLE1BQU0sR0FBRyxjQUFjLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxjQUFjLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7UUFDN0UsSUFBSSxLQUFLLENBQUM7UUFFVixJQUFJLE1BQU0sSUFBSSxNQUFNLENBQUMsU0FBUyxDQUFDLEVBQUU7WUFDL0IsS0FBSyxHQUFHLE1BQU0sQ0FBQyxTQUFTLENBQUMsQ0FBQztTQUMzQjtRQUVELEtBQUssR0FBRyxLQUFLLElBQUksRUFBRSxDQUFDO1FBQ3BCLE1BQU0sRUFBRSxTQUFTLEVBQUUsR0FB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LEtBQUssQ0FBQyxFQUFFO2dCQUNwRSxTQUFTLENBQUMsSUFBSSxDQUFDLEdBQUcsR0FBRyxDQUFDLE9BQU8sQ0FBQyxHQUFHLEVBQUUsRUFBRSxDQUFDLEtBQUssTUFBTSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQzthQUMzRDtpQkFBTSxJQUFJLE9BQU8sTUFBTSxDQUFDLEdBQUcsQ0FBQyxLQUFLLFFBQVEsSUFBSSxPQUFPLE1BQU0sQ0FBQyxHQUFHLENBQUMsS0FBSyxTQUFTLElBQUksTUFBTSxDQUFDLEdBQUcsQ0FBQyxLQUFLLElBQUksRUFBRTtnQkFDdEcsU0FBUyxDQUFDLElBQUksQ0FBQyxHQUFHLEdBQUcsS0FBSyxNQUFNLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDO2FBQzFDO2lCQUFNO2dCQUNMLFNBQVMsQ0FBQyxJQUFJLENBQUMsR0FBRyxHQUFHLE1BQU0sTUFBTSxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsQ0FBQzthQUM1QztRQUNILENBQUMsQ0FBQyxDQUFDO1FBQ0gsT0FBTyxTQUFTLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQzdCLENBQUM7OzRHQTNFVSxjQUFjO2dIQUFkLGNBQWMsY0FGYixNQUFNOzRGQUVQLGNBQWM7a0JBSDFCLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgSHR0cENsaWVudCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcbmltcG9ydCB7IG1hcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IENvbW11bmljYXRpb25Qcm92aWRlciB9IGZyb20gJy4vY29tbXVuaWNhdGlvbi1wcm92aWRlci5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgQ29uZmlndXJhdGlvblNlcnZpY2UgfSBmcm9tICcuLi9jb25maWd1cmF0aW9uLnNlcnZpY2UnO1xuXG5jb25zdCBERUZBVUxUX1RSRUVfREVQVEggPSAxNTtcblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCcsXG59KVxuZXhwb3J0IGNsYXNzIEFwb2xsb1Byb3ZpZGVyIGltcGxlbWVudHMgQ29tbXVuaWNhdGlvblByb3ZpZGVyIHtcbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBodHRwOiBIdHRwQ2xpZW50LFxuICAgIHByaXZhdGUgY29uZmlndXJhdGlvbjogQ29uZmlndXJhdGlvblNlcnZpY2UsXG4gICkge31cblxuICByZXF1ZXN0JChwcm92aWRlckNvbmZpZywgcmVxdWVzdElkOiBzdHJpbmcsIG9wdGlvbnMpIHtcbiAgICBjb25zdCB7IHBhcmFtcywgbWV0aG9kLCBodHRwT3B0aW9ucyB9ID0gb3B0aW9ucztcbiAgICBjb25zdCB0cmVlRGVwdGggPSB0aGlzLmNvbmZpZ3VyYXRpb24uZ2V0KCd0cmVlRGVwdGgnKSB8fCBERUZBVUxUX1RSRUVfREVQVEg7XG4gICAgY29uc3QgY29uZmlnID0gcHJvdmlkZXJDb25maWcuY29uZmlnID8gcHJvdmlkZXJDb25maWcuY29uZmlnKHRyZWVEZXB0aCkgOiB7fTtcbiAgICBsZXQgcXVlcnk7XG5cbiAgICBpZiAoY29uZmlnICYmIGNvbmZpZ1tyZXF1ZXN0SWRdKSB7XG4gICAgICBxdWVyeSA9IGNvbmZpZ1tyZXF1ZXN0SWRdO1xuICAgIH1cblxuICAgIHF1ZXJ5ID0gcXVlcnkgfHwge307XG4gICAgY29uc3QgeyBxdWVyeU5hbWUgfSA9IHF1ZXJ5O1xuICAgIGxldCB7IHF1ZXJ5Qm9keSB9ID0gcXVlcnk7XG5cbiAgICAvLyBjb25maWcgcXVlcnkgY29udHJvbFxuICAgIGlmICghcXVlcnlOYW1lIHx8ICFxdWVyeUJvZHkpIHtcbiAgICAgIHRocm93IEVycm9yKGBObyBjb25maWcgZm91bmQgZm9yIHJlcXVlc3RJZCAnJHtyZXF1ZXN0SWR9J2ApO1xuICAgIH1cblxuICAgIGlmIChwYXJhbXMpIHtcbiAgICAgIGNvbnN0IHBhcmFtc1N0ciA9IHRoaXMubWFrZVBhcmFtc1N0cihwYXJhbXMpO1xuICAgICAgcXVlcnlCb2R5ID0gcXVlcnlCb2R5LnJlcGxhY2UoJ19fUEFSQU1TX18nLCBwYXJhbXNTdHIpO1xuICAgIH0gZWxzZSB7XG4gICAgICBxdWVyeUJvZHkgPSBxdWVyeUJvZHkucmVwbGFjZSgnKF9fUEFSQU1TX18pJywgJycpO1xuICAgIH1cblxuICAgIGxldCBzb3VyY2UkOiBPYnNlcnZhYmxlPGFueT47XG5cbiAgICBpZiAobWV0aG9kICYmIG1ldGhvZCA9PT0gJ0dFVCcpIHtcbiAgICAgIHNvdXJjZSQgPSB0aGlzLmh0dHAuZ2V0KHByb3ZpZGVyQ29uZmlnLmJhc2VVcmwpO1xuICAgIH0gZWxzZSB7XG4gICAgICBzb3VyY2UkID0gdGhpcy5odHRwLnBvc3QoXG4gICAgICAgIHByb3ZpZGVyQ29uZmlnLmJhc2VVcmwsXG4gICAgICAgIHsgcXVlcnk6IHF1ZXJ5Qm9keSB9LFxuICAgICAgICBodHRwT3B0aW9ucyxcbiAgICAgICk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHNvdXJjZSQucGlwZShtYXAoKHJlc3BvbnNlOiBhbnkpID0+IHJlc3BvbnNlLmRhdGFbcXVlcnlOYW1lXSkpO1xuICB9XG5cbiAgcHJpdmF0ZSBtYWtlUGFyYW1zU3RyKHBhcmFtcykge1xuICAgIGNvbnN0IHBhcmFtc1N0ciA9IFtdO1xuICAgIE9iamVjdC5rZXlzKHBhcmFtcykuZm9yRWFjaCgoa2V5KSA9PiB7XG4gICAgICBpZiAoQXJyYXkuaXNBcnJheShwYXJhbXNba2V5XSkpIHtcbiAgICAgICAgY29uc3QgYXJyU3RyID0gW107XG4gICAgICAgIHBhcmFtc1trZXldLmZvckVhY2goKHZhbCkgPT4ge1xuICAgICAgICAgIGlmICh0eXBlb2YgdmFsID09PSAnb2JqZWN0Jykge1xuICAgICAgICAgICAgY29uc3Qgc3ViUGFyYW1zU3RyID0gdGhpcy5tYWtlUGFyYW1zU3RyKHZhbCk7XG4gICAgICAgICAgICBhcnJTdHIucHVzaChgeyAke3N1YlBhcmFtc1N0cn0gfWApO1xuICAgICAgICAgIH0gZWxzZSBpZiAodHlwZW9mIHZhbCA9PT0gJ251bWJlcicgfHwgdHlwZW9mIHZhbCA9PT0gJ2Jvb2xlYW4nIHx8IHZhbCA9PT0gbnVsbCkge1xuICAgICAgICAgICAgYXJyU3RyLnB1c2goYCR7dmFsfWApO1xuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBhcnJTdHIucHVzaChgXCIke3ZhbH1cImApO1xuICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgICAgIHBhcmFtc1N0ci5wdXNoKGAke2tleX06IFske2FyclN0ci5qb2luKCcsJyl9XWApO1xuICAgICAgfSBlbHNlIGlmICh0eXBlb2YgcGFyYW1zW2tleV0gPT09ICdvYmplY3QnICYmIHBhcmFtc1trZXldKSB7XG4gICAgICAgIGNvbnN0IHN1YlBhcmFtc1N0ciA9IHRoaXMubWFrZVBhcmFtc1N0cihwYXJhbXNba2V5XSk7XG4gICAgICAgIHBhcmFtc1N0ci5wdXNoKGAke2tleX06IHsgJHtzdWJQYXJhbXNTdHJ9IH1gKTtcbiAgICAgIH0gZWxzZSBpZiAodHlwZW9mIHBhcmFtc1trZXldID09PSAnc3RyaW5nJyAmJiBrZXkuaW5kZXhPZignJCcpID09PSAwKSB7XG4gICAgICAgIHBhcmFtc1N0ci5wdXNoKGAke2tleS5yZXBsYWNlKCckJywgJycpfTogJHtwYXJhbXNba2V5XX1gKTtcbiAgICAgIH0gZWxzZSBpZiAodHlwZW9mIHBhcmFtc1trZXldID09PSAnbnVtYmVyJyB8fCB0eXBlb2YgcGFyYW1zW2tleV0gPT09ICdib29sZWFuJyB8fCBwYXJhbXNba2V5XSA9PT0gbnVsbCkge1xuICAgICAgICBwYXJhbXNTdHIucHVzaChgJHtrZXl9OiAke3BhcmFtc1trZXldfWApO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgcGFyYW1zU3RyLnB1c2goYCR7a2V5fTogXCIke3BhcmFtc1trZXldfVwiYCk7XG4gICAgICB9XG4gICAgfSk7XG4gICAgcmV0dXJuIHBhcmFtc1N0ci5qb2luKCcgJyk7XG4gIH1cbn1cbiJdfQ==
90
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBvbGxvLnByb3ZpZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbjctYm9pbGVycGxhdGUtY29tbW9uL3NyYy9saWIvc2VydmljZXMvY29tbXVuaWNhdGlvbi1wcm92aWRlcnMvYXBvbGxvLnByb3ZpZGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFM0MsT0FBTyxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFDOzs7O0FBTXJDLE1BQU0sa0JBQWtCLEdBQUcsRUFBRSxDQUFDO0FBSzlCLE1BQU0sT0FBTyxjQUFjO0lBQ3pCLFlBQ1UsSUFBZ0IsRUFDaEIsYUFBbUM7UUFEbkMsU0FBSSxHQUFKLElBQUksQ0FBWTtRQUNoQixrQkFBYSxHQUFiLGFBQWEsQ0FBc0I7SUFDMUMsQ0FBQztJQUVKLFFBQVEsQ0FBSSxjQUFjLEVBQUUsU0FBaUIsRUFBRSxPQUFnQztRQUM3RSxNQUFNLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxXQUFXLEVBQUUsR0FBRyxPQUFPLENBQUM7UUFDaEQsTUFBTSxTQUFTLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxHQUFHLENBQUMsV0FBVyxDQUFDLElBQUksa0JBQWtCLENBQUM7UUFDNUUsTUFBTSxNQUFNLEdBQUcsY0FBYyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsY0FBYyxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO1FBQzdFLElBQUksS0FBSyxDQUFDO1FBRVYsSUFBSSxNQUFNLElBQUksTUFBTSxDQUFDLFNBQVMsQ0FBQyxFQUFFO1lBQy9CLEtBQUssR0FBRyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUM7U0FDM0I7UUFFRCxLQUFLLEdBQUcsS0FBSyxJQUFJLEVBQUUsQ0FBQztRQUNwQixNQUFNLEVBQUUsU0FBUyxFQUFFLEdB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RyxDQUFDLEtBQUssUUFBUSxJQUFJLEdBQUcsQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxFQUFFO2dCQUNwRSxTQUFTLENBQUMsSUFBSSxDQUFDLEdBQUcsR0FBRyxDQUFDLE9BQU8sQ0FBQyxHQUFHLEVBQUUsRUFBRSxDQUFDLEtBQUssTUFBTSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQzthQUMzRDtpQkFBTSxJQUFJLE9BQU8sTUFBTSxDQUFDLEdBQUcsQ0FBQyxLQUFLLFFBQVEsSUFBSSxPQUFPLE1BQU0sQ0FBQyxHQUFHLENBQUMsS0FBSyxTQUFTLElBQUksTUFBTSxDQUFDLEdBQUcsQ0FBQyxLQUFLLElBQUksRUFBRTtnQkFDdEcsU0FBUyxDQUFDLElBQUksQ0FBQyxHQUFHLEdBQUcsS0FBSyxNQUFNLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDO2FBQzFDO2lCQUFNO2dCQUNMLFNBQVMsQ0FBQyxJQUFJLENBQUMsR0FBRyxHQUFHLE1BQU0sTUFBTSxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsQ0FBQzthQUM1QztRQUNILENBQUMsQ0FBQyxDQUFDO1FBQ0gsT0FBTyxTQUFTLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQzdCLENBQUM7OzRHQTlFVSxjQUFjO2dIQUFkLGNBQWMsY0FGYixNQUFNOzRGQUVQLGNBQWM7a0JBSDFCLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgSHR0cENsaWVudCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcbmltcG9ydCB7IG1hcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IENvbW11bmljYXRpb25Qcm92aWRlciB9IGZyb20gJy4vY29tbXVuaWNhdGlvbi1wcm92aWRlci5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgQ29uZmlndXJhdGlvblNlcnZpY2UgfSBmcm9tICcuLi9jb25maWd1cmF0aW9uLnNlcnZpY2UnO1xuaW1wb3J0IHsgQ29tbXVuaWNhdGlvbk9wdGlvbnMgfSBmcm9tICcuLi9jb21tdW5pY2F0aW9uLnNlcnZpY2UnO1xuXG5jb25zdCBERUZBVUxUX1RSRUVfREVQVEggPSAxNTtcblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCcsXG59KVxuZXhwb3J0IGNsYXNzIEFwb2xsb1Byb3ZpZGVyIGltcGxlbWVudHMgQ29tbXVuaWNhdGlvblByb3ZpZGVyIHtcbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBodHRwOiBIdHRwQ2xpZW50LFxuICAgIHByaXZhdGUgY29uZmlndXJhdGlvbjogQ29uZmlndXJhdGlvblNlcnZpY2UsXG4gICkge31cblxuICByZXF1ZXN0JDxUPihwcm92aWRlckNvbmZpZywgcmVxdWVzdElkOiBzdHJpbmcsIG9wdGlvbnM6IENvbW11bmljYXRpb25PcHRpb25zPFQ+KSB7XG4gICAgY29uc3QgeyBwYXJhbXMsIG1ldGhvZCwgaHR0cE9wdGlvbnMgfSA9IG9wdGlvbnM7XG4gICAgY29uc3QgdHJlZURlcHRoID0gdGhpcy5jb25maWd1cmF0aW9uLmdldCgndHJlZURlcHRoJykgfHwgREVGQVVMVF9UUkVFX0RFUFRIO1xuICAgIGNvbnN0IGNvbmZpZyA9IHByb3ZpZGVyQ29uZmlnLmNvbmZpZyA/IHByb3ZpZGVyQ29uZmlnLmNvbmZpZyh0cmVlRGVwdGgpIDoge307XG4gICAgbGV0IHF1ZXJ5O1xuXG4gICAgaWYgKGNvbmZpZyAmJiBjb25maWdbcmVxdWVzdElkXSkge1xuICAgICAgcXVlcnkgPSBjb25maWdbcmVxdWVzdElkXTtcbiAgICB9XG5cbiAgICBxdWVyeSA9IHF1ZXJ5IHx8IHt9O1xuICAgIGNvbnN0IHsgcXVlcnlOYW1lIH0gPSBxdWVyeTtcbiAgICBsZXQgeyBxdWVyeUJvZHkgfSA9IHF1ZXJ5O1xuXG4gICAgLy8gY29uZmlnIHF1ZXJ5IGNvbnRyb2xcbiAgICBpZiAoIXF1ZXJ5TmFtZSB8fCAhcXVlcnlCb2R5KSB7XG4gICAgICB0aHJvdyBFcnJvcihgTm8gY29uZmlnIGZvdW5kIGZvciByZXF1ZXN0SWQgJyR7cmVxdWVzdElkfSdgKTtcbiAgICB9XG5cbiAgICBpZiAocGFyYW1zKSB7XG4gICAgICBjb25zdCBwYXJhbXNTdHIgPSB0aGlzLm1ha2VQYXJhbXNTdHIocGFyYW1zKTtcbiAgICAgIHF1ZXJ5Qm9keSA9IHF1ZXJ5Qm9keS5yZXBsYWNlKCdfX1BBUkFNU19fJywgcGFyYW1zU3RyKTtcbiAgICB9IGVsc2Uge1xuICAgICAgcXVlcnlCb2R5ID0gcXVlcnlCb2R5LnJlcGxhY2UoJyhfX1BBUkFNU19fKScsICcnKTtcbiAgICB9XG5cbiAgICBsZXQgc291cmNlJDogT2JzZXJ2YWJsZTxhbnk+O1xuXG4gICAgaWYgKG1ldGhvZCAmJiBtZXRob2QgPT09ICdHRVQnKSB7XG4gICAgICBzb3VyY2UkID0gdGhpcy5odHRwLmdldChwcm92aWRlckNvbmZpZy5iYXNlVXJsKTtcbiAgICB9IGVsc2Uge1xuICAgICAgc291cmNlJCA9IHRoaXMuaHR0cC5wb3N0KFxuICAgICAgICBwcm92aWRlckNvbmZpZy5iYXNlVXJsLFxuICAgICAgICB7IHF1ZXJ5OiBxdWVyeUJvZHkgfSxcbiAgICAgICAge1xuICAgICAgICAgIC4uLmh0dHBPcHRpb25zLFxuICAgICAgICAgIHJlc3BvbnNlVHlwZTogJ2pzb24nIC8vIGZvcmNlIHRvIGpzb25cbiAgICAgICAgfSxcbiAgICAgICk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHNvdXJjZSQucGlwZShtYXAoKHJlc3BvbnNlOiBhbnkpID0+IHJlc3BvbnNlLmRhdGFbcXVlcnlOYW1lXSkpO1xuICB9XG5cbiAgcHJpdmF0ZSBtYWtlUGFyYW1zU3RyKHBhcmFtcykge1xuICAgIGNvbnN0IHBhcmFtc1N0ciA9IFtdO1xuICAgIE9iamVjdC5rZXlzKHBhcmFtcykuZm9yRWFjaCgoa2V5KSA9PiB7XG4gICAgICBpZiAoQXJyYXkuaXNBcnJheShwYXJhbXNba2V5XSkpIHtcbiAgICAgICAgY29uc3QgYXJyU3RyID0gW107XG4gICAgICAgIHBhcmFtc1trZXldLmZvckVhY2goKHZhbCkgPT4ge1xuICAgICAgICAgIGlmICh0eXBlb2YgdmFsID09PSAnb2JqZWN0Jykge1xuICAgICAgICAgICAgY29uc3Qgc3ViUGFyYW1zU3RyID0gdGhpcy5tYWtlUGFyYW1zU3RyKHZhbCk7XG4gICAgICAgICAgICBhcnJTdHIucHVzaChgeyAke3N1YlBhcmFtc1N0cn0gfWApO1xuICAgICAgICAgIH0gZWxzZSBpZiAodHlwZW9mIHZhbCA9PT0gJ251bWJlcicgfHwgdHlwZW9mIHZhbCA9PT0gJ2Jvb2xlYW4nIHx8IHZhbCA9PT0gbnVsbCkge1xuICAgICAgICAgICAgYXJyU3RyLnB1c2goYCR7dmFsfWApO1xuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBhcnJTdHIucHVzaChgXCIke3ZhbH1cImApO1xuICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgICAgIHBhcmFtc1N0ci5wdXNoKGAke2tleX06IFske2FyclN0ci5qb2luKCcsJyl9XWApO1xuICAgICAgfSBlbHNlIGlmICh0eXBlb2YgcGFyYW1zW2tleV0gPT09ICdvYmplY3QnICYmIHBhcmFtc1trZXldKSB7XG4gICAgICAgIGNvbnN0IHN1YlBhcmFtc1N0ciA9IHRoaXMubWFrZVBhcmFtc1N0cihwYXJhbXNba2V5XSk7XG4gICAgICAgIHBhcmFtc1N0ci5wdXNoKGAke2tleX06IHsgJHtzdWJQYXJhbXNTdHJ9IH1gKTtcbiAgICAgIH0gZWxzZSBpZiAodHlwZW9mIHBhcmFtc1trZXldID09PSAnc3RyaW5nJyAmJiBrZXkuaW5kZXhPZignJCcpID09PSAwKSB7XG4gICAgICAgIHBhcmFtc1N0ci5wdXNoKGAke2tleS5yZXBsYWNlKCckJywgJycpfTogJHtwYXJhbXNba2V5XX1gKTtcbiAgICAgIH0gZWxzZSBpZiAodHlwZW9mIHBhcmFtc1trZXldID09PSAnbnVtYmVyJyB8fCB0eXBlb2YgcGFyYW1zW2tleV0gPT09ICdib29sZWFuJyB8fCBwYXJhbXNba2V5XSA9PT0gbnVsbCkge1xuICAgICAgICBwYXJhbXNTdHIucHVzaChgJHtrZXl9OiAke3BhcmFtc1trZXldfWApO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgcGFyYW1zU3RyLnB1c2goYCR7a2V5fTogXCIke3BhcmFtc1trZXldfVwiYCk7XG4gICAgICB9XG4gICAgfSk7XG4gICAgcmV0dXJuIHBhcmFtc1N0ci5qb2luKCcgJyk7XG4gIH1cbn1cbiJdfQ==
@@ -5,7 +5,7 @@ export class RestProvider {
5
5
  constructor(http) {
6
6
  this.http = http;
7
7
  }
8
- request$(providerConfig, requestId, options = {}) {
8
+ request$(providerConfig, requestId, options) {
9
9
  const { params, httpOptions, urlParams = '', } = options;
10
10
  let { method } = options;
11
11
  let point;
@@ -20,14 +20,27 @@ export class RestProvider {
20
20
  if (!point) {
21
21
  throw Error(`No config found for requestId "${requestId}"`);
22
22
  }
23
- if (method === 'POST' || method === 'PUT') {
24
- return this.http[method.toLowerCase()](providerConfig.baseUrl + point + urlParams, params, httpOptions);
23
+ const formattedUrl = this.getFormattedUrl(providerConfig.baseUrl, point, urlParams);
24
+ if (['POST', 'PUT', 'PATCH'].includes(method)) {
25
+ return this.http[method.toLowerCase()](formattedUrl, params, httpOptions);
25
26
  }
26
- if (method === 'GET' || method === 'DELETE') {
27
- return this.http[method.toLowerCase()](providerConfig.baseUrl + point + urlParams, httpOptions);
27
+ if (['GET', 'DELETE'].includes(method)) {
28
+ return this.http[method.toLowerCase()](formattedUrl, httpOptions);
28
29
  }
29
30
  throw Error(`Rest method ${method} not supported`);
30
31
  }
32
+ getFormattedUrl(baseUrl, point, urlParams) {
33
+ if (typeof urlParams === 'string') {
34
+ return baseUrl + point + urlParams;
35
+ }
36
+ return baseUrl + this.parseUrlPlaceholders(point, urlParams);
37
+ }
38
+ parseUrlPlaceholders(source, placeholders) {
39
+ return source.replace(/{\s*\w+\s*}/g, (match) => {
40
+ const key = match.replace(/{|}/g, '').trim();
41
+ return placeholders[key] || match;
42
+ });
43
+ }
31
44
  }
32
45
  RestProvider.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: RestProvider, deps: [{ token: i1.HttpClient }], target: i0.ɵɵFactoryTarget.Injectable });
33
46
  RestProvider.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: RestProvider, providedIn: 'root' });
@@ -37,4 +50,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImpo
37
50
  providedIn: 'root',
38
51
  }]
39
52
  }], ctorParameters: function () { return [{ type: i1.HttpClient }]; } });
40
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzdC5wcm92aWRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL243LWJvaWxlcnBsYXRlLWNvbW1vbi9zcmMvbGliL3NlcnZpY2VzL2NvbW11bmljYXRpb24tcHJvdmlkZXJzL3Jlc3QucHJvdmlkZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7O0FBTzNDLE1BQU0sT0FBTyxZQUFZO0lBQ3ZCLFlBQ1UsSUFBZ0I7UUFBaEIsU0FBSSxHQUFKLElBQUksQ0FBWTtJQUN2QixDQUFDO0lBRUosUUFBUSxDQUFDLGNBQWMsRUFBRSxTQUFTLEVBQUUsVUFBZSxFQUFFO1FBQ25ELE1BQU0sRUFDSixNQUFNLEVBQUUsV0FBVyxFQUFFLFNBQVMsR0FBRyxFQUFFLEdBQ3BDLEdBQUcsT0FBTyxDQUFDO1FBQ1osSUFBSSxFQUFFLE1BQU0sRUFBRSxHQUFHLE9BQU8sQ0FBQztRQUN6QixJQUFJLEtBQUssQ0FBQztRQUVWLGlCQUFpQjtRQUNqQixJQUFJLENBQUMsTUFBTSxFQUFFO1lBQUUsTUFBTSxHQUFHLGNBQWMsQ0FBQyxhQUFhLElBQUksS0FBSyxDQUFDO1NBQUU7UUFFaEUsSUFBSSxjQUFjLENBQUMsTUFBTSxJQUFJLGNBQWMsQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLEVBQUU7WUFDN0QsS0FBSyxHQUFHLGNBQWMsQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUM7U0FDMUM7UUFFRCx1QkFBdUI7UUFDdkIsSUFBSSxDQUFDLEtBQUssRUFBRTtZQUNWLE1BQU0sS0FBSyxDQUFDLGtDQUFrQyxTQUFTLEdBQUcsQ0FBQyxDQUFDO1NBQzdEO1FBQ0QsSUFBSSxNQUFNLEtBQUssTUFBTSxJQUFJLE1BQU0sS0FBSyxLQUFLLEVBQUU7WUFDekMsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxXQUFXLEVBQUUsQ0FBQyxDQUNwQyxjQUFjLENBQUMsT0FBTyxHQUFHLEtBQUssR0FBRyxTQUFTLEVBQUUsTUFBTSxFQUFFLFdBQVcsQ0FDaEUsQ0FBQztTQUNIO1FBQUMsSUFBSSxNQUFNLEtBQUssS0FBSyxJQUFJLE1BQU0sS0FBSyxRQUFRLEVBQUU7WUFDN0MsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxXQUFXLEVBQUUsQ0FBQyxDQUNwQyxjQUFjLENBQUMsT0FBTyxHQUFHLEtBQUssR0FBRyxTQUFTLEVBQUUsV0FBVyxDQUN4RCxDQUFDO1NBQ0g7UUFDRCxNQUFNLEtBQUssQ0FBQyxlQUFlLE1BQU0sZ0JBQWdCLENBQUMsQ0FBQztJQUNyRCxDQUFDOzswR0FqQ1UsWUFBWTs4R0FBWixZQUFZLGNBRlgsTUFBTTs0RkFFUCxZQUFZO2tCQUh4QixVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEh0dHBDbGllbnQgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XG5pbXBvcnQgeyBDb21tdW5pY2F0aW9uUHJvdmlkZXIgfSBmcm9tICcuL2NvbW11bmljYXRpb24tcHJvdmlkZXIuaW50ZXJmYWNlJztcblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCcsXG59KVxuZXhwb3J0IGNsYXNzIFJlc3RQcm92aWRlciBpbXBsZW1lbnRzIENvbW11bmljYXRpb25Qcm92aWRlciB7XG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgaHR0cDogSHR0cENsaWVudCxcbiAgKSB7fVxuXG4gIHJlcXVlc3QkKHByb3ZpZGVyQ29uZmlnLCByZXF1ZXN0SWQsIG9wdGlvbnM6IGFueSA9IHt9KSB7XG4gICAgY29uc3Qge1xuICAgICAgcGFyYW1zLCBodHRwT3B0aW9ucywgdXJsUGFyYW1zID0gJycsXG4gICAgfSA9IG9wdGlvbnM7XG4gICAgbGV0IHsgbWV0aG9kIH0gPSBvcHRpb25zO1xuICAgIGxldCBwb2ludDtcblxuICAgIC8vIGRlZmF1bHQgbWV0aG9kXG4gICAgaWYgKCFtZXRob2QpIHsgbWV0aG9kID0gcHJvdmlkZXJDb25maWcuZGVmYXVsdE1ldGhvZCB8fCAnR0VUJzsgfVxuXG4gICAgaWYgKHByb3ZpZGVyQ29uZmlnLmNvbmZpZyAmJiBwcm92aWRlckNvbmZpZy5jb25maWdbcmVxdWVzdElkXSkge1xuICAgICAgcG9pbnQgPSBwcm92aWRlckNvbmZpZy5jb25maWdbcmVxdWVzdElkXTtcbiAgICB9XG5cbiAgICAvLyBjb25maWcgcG9pbnQgY29udHJvbFxuICAgIGlmICghcG9pbnQpIHtcbiAgICAgIHRocm93IEVycm9yKGBObyBjb25maWcgZm91bmQgZm9yIHJlcXVlc3RJZCBcIiR7cmVxdWVzdElkfVwiYCk7XG4gICAgfVxuICAgIGlmIChtZXRob2QgPT09ICdQT1NUJyB8fCBtZXRob2QgPT09ICdQVVQnKSB7XG4gICAgICByZXR1cm4gdGhpcy5odHRwW21ldGhvZC50b0xvd2VyQ2FzZSgpXShcbiAgICAgICAgcHJvdmlkZXJDb25maWcuYmFzZVVybCArIHBvaW50ICsgdXJsUGFyYW1zLCBwYXJhbXMsIGh0dHBPcHRpb25zLFxuICAgICAgKTtcbiAgICB9IGlmIChtZXRob2QgPT09ICdHRVQnIHx8IG1ldGhvZCA9PT0gJ0RFTEVURScpIHtcbiAgICAgIHJldHVybiB0aGlzLmh0dHBbbWV0aG9kLnRvTG93ZXJDYXNlKCldKFxuICAgICAgICBwcm92aWRlckNvbmZpZy5iYXNlVXJsICsgcG9pbnQgKyB1cmxQYXJhbXMsIGh0dHBPcHRpb25zLFxuICAgICAgKTtcbiAgICB9XG4gICAgdGhyb3cgRXJyb3IoYFJlc3QgbWV0aG9kICR7bWV0aG9kfSBub3Qgc3VwcG9ydGVkYCk7XG4gIH1cbn1cbiJdfQ==
53
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzdC5wcm92aWRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL243LWJvaWxlcnBsYXRlLWNvbW1vbi9zcmMvbGliL3NlcnZpY2VzL2NvbW11bmljYXRpb24tcHJvdmlkZXJzL3Jlc3QucHJvdmlkZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7O0FBUTNDLE1BQU0sT0FBTyxZQUFZO0lBQ3ZCLFlBQ1UsSUFBZ0I7UUFBaEIsU0FBSSxHQUFKLElBQUksQ0FBWTtJQUN2QixDQUFDO0lBRUosUUFBUSxDQUFJLGNBQWMsRUFBRSxTQUFTLEVBQUUsT0FBZ0M7UUFDckUsTUFBTSxFQUNKLE1BQU0sRUFBRSxXQUFXLEVBQUUsU0FBUyxHQUFHLEVBQUUsR0FDcEMsR0FBRyxPQUFPLENBQUM7UUFDWixJQUFJLEVBQUUsTUFBTSxFQUFFLEdBQUcsT0FBTyxDQUFDO1FBQ3pCLElBQUksS0FBSyxDQUFDO1FBRVYsaUJBQWlCO1FBQ2pCLElBQUksQ0FBQyxNQUFNLEVBQUU7WUFBRSxNQUFNLEdBQUcsY0FBYyxDQUFDLGFBQWEsSUFBSSxLQUFLLENBQUM7U0FBRTtRQUVoRSxJQUFJLGNBQWMsQ0FBQyxNQUFNLElBQUksY0FBYyxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsRUFBRTtZQUM3RCxLQUFLLEdBQUcsY0FBYyxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsQ0FBQztTQUMxQztRQUVELHVCQUF1QjtRQUN2QixJQUFJLENBQUMsS0FBSyxFQUFFO1lBQ1YsTUFBTSxLQUFLLENBQUMsa0NBQWtDLFNBQVMsR0FBRyxDQUFDLENBQUM7U0FDN0Q7UUFFRCxNQUFNLFlBQVksR0FBRyxJQUFJLENBQUMsZUFBZSxDQUFDLGNBQWMsQ0FBQyxPQUFPLEVBQUUsS0FBSyxFQUFFLFNBQVMsQ0FBQyxDQUFDO1FBQ3BGLElBQUksQ0FBQyxNQUFNLEVBQUUsS0FBSyxFQUFFLE9BQU8sQ0FBQyxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsRUFBRTtZQUM3QyxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLFdBQVcsRUFBRSxDQUFDLENBQ3BDLFlBQVksRUFDWixNQUFNLEVBQ04sV0FBVyxDQUNaLENBQUM7U0FDSDtRQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsUUFBUSxDQUFDLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxFQUFFO1lBQ3hDLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsV0FBVyxFQUFFLENBQUMsQ0FDcEMsWUFBWSxFQUNaLFdBQVcsQ0FDWixDQUFDO1NBQ0g7UUFDRCxNQUFNLEtBQUssQ0FBQyxlQUFlLE1BQU0sZ0JBQWdCLENBQUMsQ0FBQztJQUNyRCxDQUFDO0lBRU8sZUFBZSxDQUFDLE9BQWUsRUFBRSxLQUFhLEVBQUUsU0FBMEI7UUFDaEYsSUFBSSxPQUFPLFNBQVMsS0FBSyxRQUFRLEVBQUU7WUFDakMsT0FBTyxPQUFPLEdBQUcsS0FBSyxHQUFHLFNBQVMsQ0FBQztTQUNwQztRQUNELE9BQU8sT0FBTyxHQUFHLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxLQUFLLEVBQUUsU0FBUyxDQUFDLENBQUM7SUFDL0QsQ0FBQztJQUVPLG9CQUFvQixDQUFDLE1BQWMsRUFBRSxZQUFvQjtRQUMvRCxPQUFPLE1BQU0sQ0FBQyxPQUFPLENBQUMsY0FBYyxFQUFFLENBQUMsS0FBSyxFQUFFLEVBQUU7WUFDOUMsTUFBTSxHQUFHLEdBQUcsS0FBSyxDQUFDLE9BQU8sQ0FBQyxNQUFNLEVBQUUsRUFBRSxDQUFDLENBQUMsSUFBSSxFQUFFLENBQUM7WUFDN0MsT0FBTyxZQUFZLENBQUMsR0FBRyxDQUFDLElBQUksS0FBSyxDQUFDO1FBQ3BDLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQzs7MEdBcERVLFlBQVk7OEdBQVosWUFBWSxjQUZYLE1BQU07NEZBRVAsWUFBWTtrQkFIeEIsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBIdHRwQ2xpZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHsgQ29tbXVuaWNhdGlvblByb3ZpZGVyIH0gZnJvbSAnLi9jb21tdW5pY2F0aW9uLXByb3ZpZGVyLmludGVyZmFjZSc7XG5pbXBvcnQgeyBDb21tdW5pY2F0aW9uT3B0aW9ucyB9IGZyb20gJy4uL2NvbW11bmljYXRpb24uc2VydmljZSc7XG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxufSlcbmV4cG9ydCBjbGFzcyBSZXN0UHJvdmlkZXIgaW1wbGVtZW50cyBDb21tdW5pY2F0aW9uUHJvdmlkZXIge1xuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGh0dHA6IEh0dHBDbGllbnQsXG4gICkge31cblxuICByZXF1ZXN0JDxUPihwcm92aWRlckNvbmZpZywgcmVxdWVzdElkLCBvcHRpb25zOiBDb21tdW5pY2F0aW9uT3B0aW9uczxUPikge1xuICAgIGNvbnN0IHtcbiAgICAgIHBhcmFtcywgaHR0cE9wdGlvbnMsIHVybFBhcmFtcyA9ICcnLFxuICAgIH0gPSBvcHRpb25zO1xuICAgIGxldCB7IG1ldGhvZCB9ID0gb3B0aW9ucztcbiAgICBsZXQgcG9pbnQ7XG5cbiAgICAvLyBkZWZhdWx0IG1ldGhvZFxuICAgIGlmICghbWV0aG9kKSB7IG1ldGhvZCA9IHByb3ZpZGVyQ29uZmlnLmRlZmF1bHRNZXRob2QgfHwgJ0dFVCc7IH1cblxuICAgIGlmIChwcm92aWRlckNvbmZpZy5jb25maWcgJiYgcHJvdmlkZXJDb25maWcuY29uZmlnW3JlcXVlc3RJZF0pIHtcbiAgICAgIHBvaW50ID0gcHJvdmlkZXJDb25maWcuY29uZmlnW3JlcXVlc3RJZF07XG4gICAgfVxuXG4gICAgLy8gY29uZmlnIHBvaW50IGNvbnRyb2xcbiAgICBpZiAoIXBvaW50KSB7XG4gICAgICB0aHJvdyBFcnJvcihgTm8gY29uZmlnIGZvdW5kIGZvciByZXF1ZXN0SWQgXCIke3JlcXVlc3RJZH1cImApO1xuICAgIH1cblxuICAgIGNvbnN0IGZvcm1hdHRlZFVybCA9IHRoaXMuZ2V0Rm9ybWF0dGVkVXJsKHByb3ZpZGVyQ29uZmlnLmJhc2VVcmwsIHBvaW50LCB1cmxQYXJhbXMpO1xuICAgIGlmIChbJ1BPU1QnLCAnUFVUJywgJ1BBVENIJ10uaW5jbHVkZXMobWV0aG9kKSkge1xuICAgICAgcmV0dXJuIHRoaXMuaHR0cFttZXRob2QudG9Mb3dlckNhc2UoKV0oXG4gICAgICAgIGZvcm1hdHRlZFVybCxcbiAgICAgICAgcGFyYW1zLFxuICAgICAgICBodHRwT3B0aW9uc1xuICAgICAgKTtcbiAgICB9IGlmIChbJ0dFVCcsICdERUxFVEUnXS5pbmNsdWRlcyhtZXRob2QpKSB7XG4gICAgICByZXR1cm4gdGhpcy5odHRwW21ldGhvZC50b0xvd2VyQ2FzZSgpXShcbiAgICAgICAgZm9ybWF0dGVkVXJsLFxuICAgICAgICBodHRwT3B0aW9uc1xuICAgICAgKTtcbiAgICB9XG4gICAgdGhyb3cgRXJyb3IoYFJlc3QgbWV0aG9kICR7bWV0aG9kfSBub3Qgc3VwcG9ydGVkYCk7XG4gIH1cblxuICBwcml2YXRlIGdldEZvcm1hdHRlZFVybChiYXNlVXJsOiBzdHJpbmcsIHBvaW50OiBzdHJpbmcsIHVybFBhcmFtczogc3RyaW5nIHwgb2JqZWN0KSB7XG4gICAgaWYgKHR5cGVvZiB1cmxQYXJhbXMgPT09ICdzdHJpbmcnKSB7XG4gICAgICByZXR1cm4gYmFzZVVybCArIHBvaW50ICsgdXJsUGFyYW1zO1xuICAgIH1cbiAgICByZXR1cm4gYmFzZVVybCArIHRoaXMucGFyc2VVcmxQbGFjZWhvbGRlcnMocG9pbnQsIHVybFBhcmFtcyk7XG4gIH1cblxuICBwcml2YXRlIHBhcnNlVXJsUGxhY2Vob2xkZXJzKHNvdXJjZTogc3RyaW5nLCBwbGFjZWhvbGRlcnM6IG9iamVjdCkge1xuICAgIHJldHVybiBzb3VyY2UucmVwbGFjZSgve1xccypcXHcrXFxzKn0vZywgKG1hdGNoKSA9PiB7XG4gICAgICBjb25zdCBrZXkgPSBtYXRjaC5yZXBsYWNlKC97fH0vZywgJycpLnRyaW0oKTtcbiAgICAgIHJldHVybiBwbGFjZWhvbGRlcnNba2V5XSB8fCBtYXRjaDtcbiAgICB9KTtcbiAgfVxufVxuIl19
@@ -1,6 +1,6 @@
1
1
  import { Injectable } from '@angular/core';
2
2
  import { catchError } from 'rxjs/operators';
3
- import { empty } from 'rxjs';
3
+ import { EMPTY } from 'rxjs';
4
4
  import * as i0 from "@angular/core";
5
5
  import * as i1 from "./configuration.service";
6
6
  import * as i2 from "./communication-providers/apollo.provider";
@@ -18,19 +18,28 @@ export class CommunicationService {
18
18
  throw Error('No communications.defaultProvider setted in config');
19
19
  }
20
20
  }
21
- request$(requestId, options = {}, provider) {
21
+ request$(requestId, options, provider) {
22
22
  const activeProvider = provider || this.defaultProvider;
23
23
  const activeProviderConfig = this.communicationConfig.providers[activeProvider];
24
24
  if (!activeProviderConfig) {
25
25
  throw Error(`There is no config for "${activeProvider}" provider`);
26
26
  }
27
- // provider.type control for retrocompatibility
27
+ // provider.type check for retrocompatibility
28
28
  const activeProviderType = activeProviderConfig.type || activeProvider;
29
29
  if (!this[activeProviderType]) {
30
30
  throw Error(`There is no "${activeProviderType}" provider type`);
31
31
  }
32
- const { onError } = options;
33
- return this[activeProviderType].request$(activeProviderConfig, requestId, options)
32
+ const requestOptions = options || {};
33
+ // adding query params
34
+ // to http client httpoptions params
35
+ if (requestOptions.queryParams) {
36
+ requestOptions.httpOptions = {
37
+ ...(requestOptions.httpOptions || {}),
38
+ params: requestOptions.queryParams
39
+ };
40
+ }
41
+ const { onError } = options || {};
42
+ return this[activeProviderType].request$(activeProviderConfig, requestId, requestOptions)
34
43
  .pipe(catchError((error) => this.handleError(error, onError)));
35
44
  }
36
45
  handleError(error, onError) {
@@ -40,7 +49,7 @@ export class CommunicationService {
40
49
  else {
41
50
  console.warn('No error handler for communication request', error);
42
51
  }
43
- return empty();
52
+ return EMPTY;
44
53
  }
45
54
  getUrl(requestId, provider) {
46
55
  const activeProvider = provider || this.defaultProvider;
@@ -48,12 +57,12 @@ export class CommunicationService {
48
57
  if (!activeProviderConfig) {
49
58
  throw Error(`There is no config for "${activeProvider}" provider`);
50
59
  }
51
- const baseUrl = activeProviderConfig.baseUrl;
60
+ const { baseUrl } = activeProviderConfig;
52
61
  if (!requestId) {
53
62
  return baseUrl;
54
63
  }
55
64
  if (!activeProviderConfig.config[requestId]) {
56
- throw Error(`There is no config for "${requestId}" `);
65
+ throw Error(`There is no config for "${requestId}"`);
57
66
  }
58
67
  return baseUrl + activeProviderConfig.config[requestId];
59
68
  }
@@ -66,4 +75,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImpo
66
75
  providedIn: 'root',
67
76
  }]
68
77
  }], ctorParameters: function () { return [{ type: i1.ConfigurationService }, { type: i2.ApolloProvider }, { type: i3.RestProvider }]; } });
69
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tbXVuaWNhdGlvbi5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbjctYm9pbGVycGxhdGUtY29tbW9uL3NyYy9saWIvc2VydmljZXMvY29tbXVuaWNhdGlvbi5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzVDLE9BQU8sRUFBYyxLQUFLLEVBQUUsTUFBTSxNQUFNLENBQUM7Ozs7O0FBUXpDLE1BQU0sT0FBTyxvQkFBb0I7SUFLL0IsWUFDVSxNQUE0QixFQUM1QixNQUFzQixFQUN0QixJQUFrQjtRQUZsQixXQUFNLEdBQU4sTUFBTSxDQUFzQjtRQUM1QixXQUFNLEdBQU4sTUFBTSxDQUFnQjtRQUN0QixTQUFJLEdBQUosSUFBSSxDQUFjO1FBRTFCLElBQUk7WUFDRixJQUFJLENBQUMsbUJBQW1CLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsZUFBZSxDQUFDLENBQUM7WUFDNUQsSUFBSSxDQUFDLGVBQWUsR0FBRyxJQUFJLENBQUMsbUJBQW1CLENBQUMsZUFBZSxDQUFDO1NBQ2pFO1FBQUMsT0FBTyxHQUFHLEVBQUU7WUFDWixNQUFNLEtBQUssQ0FBQyxvREFBb0QsQ0FBQyxDQUFDO1NBQ25FO0lBQ0gsQ0FBQztJQUVELFFBQVEsQ0FBQyxTQUFTLEVBQUUsVUFBZSxFQUFFLEVBQUUsUUFBUztRQUM5QyxNQUFNLGNBQWMsR0FBRyxRQUFRLElBQUksSUFBSSxDQUFDLGVBQWUsQ0FBQztRQUN4RCxNQUFNLG9CQUFvQixHQUFHLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxTQUFTLENBQUMsY0FBYyxDQUFDLENBQUM7UUFFaEYsSUFBSSxDQUFDLG9CQUFvQixFQUFFO1lBQ3pCLE1BQU0sS0FBSyxDQUFDLDJCQUEyQixjQUFjLFlBQVksQ0FBQyxDQUFDO1NBQ3BFO1FBRUQsK0NBQStDO1FBQy9DLE1BQU0sa0JBQWtCLEdBQUcsb0JBQW9CLENBQUMsSUFBSSxJQUFJLGNBQWMsQ0FBQztRQUV2RSxJQUFJLENBQUMsSUFBSSxDQUFDLGtCQUFrQixDQUFDLEVBQUU7WUFDN0IsTUFBTSxLQUFLLENBQUMsZ0JBQWdCLGtCQUFrQixpQkFBaUIsQ0FBQyxDQUFDO1NBQ2xFO1FBRUQsTUFBTSxFQUFFLE9BQU8sRUFBRSxHQUFHLE9BQU8sQ0FBQztRQUM1QixPQUFPLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxvQkFBb0IsRUFBRSxTQUFTLEVBQUUsT0FBTyxDQUFDO2FBQy9FLElBQUksQ0FDSCxVQUFVLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsS0FBSyxFQUFFLE9BQU8sQ0FBQyxDQUFDLENBQ3hELENBQUM7SUFDTixDQUFDO0lBRUQsV0FBVyxDQUFDLEtBQUssRUFBRSxPQUFPO1FBQ3hCLElBQUksT0FBTyxFQUFFO1lBQ1gsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDO1NBQ2hCO2FBQU07WUFDTCxPQUFPLENBQUMsSUFBSSxDQUFDLDRDQUE0QyxFQUFFLEtBQUssQ0FBQyxDQUFDO1NBQ25FO1FBRUQsT0FBTyxLQUFLLEVBQUUsQ0FBQztJQUNqQixDQUFDO0lBRUMsTUFBTSxDQUFDLFNBQVUsRUFBRSxRQUFTO1FBQ3hCLE1BQU0sY0FBYyxHQUFHLFFBQVEsSUFBSSxJQUFJLENBQUMsZUFBZSxDQUFDO1FBQ3hELE1BQU0sb0JBQW9CLEdBQUcsSUFBSSxDQUFDLG1CQUFtQixDQUFDLFNBQVMsQ0FBQyxjQUFjLENBQUMsQ0FBQztRQUVoRixJQUFJLENBQUMsb0JBQW9CLEVBQUU7WUFDdkIsTUFBTSxLQUFLLENBQUMsMkJBQTJCLGNBQWMsWUFBWSxDQUFDLENBQUM7U0FDdEU7UUFFRCxNQUFNLE9BQU8sR0FBRyxvQkFBb0IsQ0FBQyxPQUFPLENBQUM7UUFFN0MsSUFBSSxDQUFDLFNBQVMsRUFBRTtZQUNaLE9BQU8sT0FBTyxDQUFDO1NBQ2xCO1FBRUQsSUFBSSxDQUFDLG9CQUFvQixDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsRUFBRTtZQUN6QyxNQUFNLEtBQUssQ0FBQywyQkFBMkIsU0FBUyxJQUFJLENBQUMsQ0FBQztTQUN6RDtRQUNELE9BQU8sT0FBTyxHQUFHLG9CQUFvQixDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsQ0FBQTtJQUMzRCxDQUFDOztrSEFwRVEsb0JBQW9CO3NIQUFwQixvQkFBb0IsY0FGbkIsTUFBTTs0RkFFUCxvQkFBb0I7a0JBSGhDLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgY2F0Y2hFcnJvciB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IE9ic2VydmFibGUsIGVtcHR5IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBDb25maWd1cmF0aW9uU2VydmljZSB9IGZyb20gJy4vY29uZmlndXJhdGlvbi5zZXJ2aWNlJztcbmltcG9ydCB7IEFwb2xsb1Byb3ZpZGVyIH0gZnJvbSAnLi9jb21tdW5pY2F0aW9uLXByb3ZpZGVycy9hcG9sbG8ucHJvdmlkZXInO1xuaW1wb3J0IHsgUmVzdFByb3ZpZGVyIH0gZnJvbSAnLi9jb21tdW5pY2F0aW9uLXByb3ZpZGVycy9yZXN0LnByb3ZpZGVyJztcblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCcsXG59KVxuZXhwb3J0IGNsYXNzIENvbW11bmljYXRpb25TZXJ2aWNlIHtcbiAgcHJpdmF0ZSBkZWZhdWx0UHJvdmlkZXI6IHN0cmluZztcblxuICBwcml2YXRlIGNvbW11bmljYXRpb25Db25maWc6IGFueTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGNvbmZpZzogQ29uZmlndXJhdGlvblNlcnZpY2UsXG4gICAgcHJpdmF0ZSBhcG9sbG86IEFwb2xsb1Byb3ZpZGVyLFxuICAgIHByaXZhdGUgcmVzdDogUmVzdFByb3ZpZGVyLFxuICApIHtcbiAgICB0cnkge1xuICAgICAgdGhpcy5jb21tdW5pY2F0aW9uQ29uZmlnID0gdGhpcy5jb25maWcuZ2V0KCdjb21tdW5pY2F0aW9uJyk7XG4gICAgICB0aGlzLmRlZmF1bHRQcm92aWRlciA9IHRoaXMuY29tbXVuaWNhdGlvbkNvbmZpZy5kZWZhdWx0UHJvdmlkZXI7XG4gICAgfSBjYXRjaCAoZXJyKSB7XG4gICAgICB0aHJvdyBFcnJvcignTm8gY29tbXVuaWNhdGlvbnMuZGVmYXVsdFByb3ZpZGVyIHNldHRlZCBpbiBjb25maWcnKTtcbiAgICB9XG4gIH1cblxuICByZXF1ZXN0JChyZXF1ZXN0SWQsIG9wdGlvbnM6IGFueSA9IHt9LCBwcm92aWRlcj8pIHtcbiAgICBjb25zdCBhY3RpdmVQcm92aWRlciA9IHByb3ZpZGVyIHx8IHRoaXMuZGVmYXVsdFByb3ZpZGVyO1xuICAgIGNvbnN0IGFjdGl2ZVByb3ZpZGVyQ29uZmlnID0gdGhpcy5jb21tdW5pY2F0aW9uQ29uZmlnLnByb3ZpZGVyc1thY3RpdmVQcm92aWRlcl07XG5cbiAgICBpZiAoIWFjdGl2ZVByb3ZpZGVyQ29uZmlnKSB7XG4gICAgICB0aHJvdyBFcnJvcihgVGhlcmUgaXMgbm8gY29uZmlnIGZvciBcIiR7YWN0aXZlUHJvdmlkZXJ9XCIgcHJvdmlkZXJgKTtcbiAgICB9XG5cbiAgICAvLyBwcm92aWRlci50eXBlIGNvbnRyb2wgZm9yIHJldHJvY29tcGF0aWJpbGl0eVxuICAgIGNvbnN0IGFjdGl2ZVByb3ZpZGVyVHlwZSA9IGFjdGl2ZVByb3ZpZGVyQ29uZmlnLnR5cGUgfHwgYWN0aXZlUHJvdmlkZXI7XG5cbiAgICBpZiAoIXRoaXNbYWN0aXZlUHJvdmlkZXJUeXBlXSkge1xuICAgICAgdGhyb3cgRXJyb3IoYFRoZXJlIGlzIG5vIFwiJHthY3RpdmVQcm92aWRlclR5cGV9XCIgcHJvdmlkZXIgdHlwZWApO1xuICAgIH1cblxuICAgIGNvbnN0IHsgb25FcnJvciB9ID0gb3B0aW9ucztcbiAgICByZXR1cm4gdGhpc1thY3RpdmVQcm92aWRlclR5cGVdLnJlcXVlc3QkKGFjdGl2ZVByb3ZpZGVyQ29uZmlnLCByZXF1ZXN0SWQsIG9wdGlvbnMpXG4gICAgICAucGlwZShcbiAgICAgICAgY2F0Y2hFcnJvcigoZXJyb3IpID0+IHRoaXMuaGFuZGxlRXJyb3IoZXJyb3IsIG9uRXJyb3IpKSxcbiAgICAgICk7XG4gIH1cblxuICBoYW5kbGVFcnJvcihlcnJvciwgb25FcnJvcik6IE9ic2VydmFibGU8YW55PiB7XG4gICAgaWYgKG9uRXJyb3IpIHtcbiAgICAgIG9uRXJyb3IoZXJyb3IpO1xuICAgIH0gZWxzZSB7XG4gICAgICBjb25zb2xlLndhcm4oJ05vIGVycm9yIGhhbmRsZXIgZm9yIGNvbW11bmljYXRpb24gcmVxdWVzdCcsIGVycm9yKTtcbiAgICB9XG5cbiAgICByZXR1cm4gZW1wdHkoKTtcbiAgfVxuICBcbiAgICBnZXRVcmwocmVxdWVzdElkPywgcHJvdmlkZXI/KXtcbiAgICAgICAgY29uc3QgYWN0aXZlUHJvdmlkZXIgPSBwcm92aWRlciB8fCB0aGlzLmRlZmF1bHRQcm92aWRlcjtcbiAgICAgICAgY29uc3QgYWN0aXZlUHJvdmlkZXJDb25maWcgPSB0aGlzLmNvbW11bmljYXRpb25Db25maWcucHJvdmlkZXJzW2FjdGl2ZVByb3ZpZGVyXTtcblxuICAgICAgICBpZiAoIWFjdGl2ZVByb3ZpZGVyQ29uZmlnKSB7XG4gICAgICAgICAgICB0aHJvdyBFcnJvcihgVGhlcmUgaXMgbm8gY29uZmlnIGZvciBcIiR7YWN0aXZlUHJvdmlkZXJ9XCIgcHJvdmlkZXJgKTtcbiAgICAgICAgfSAgIFxuICAgICAgICBcbiAgICAgICAgY29uc3QgYmFzZVVybCA9IGFjdGl2ZVByb3ZpZGVyQ29uZmlnLmJhc2VVcmw7XG4gICAgICAgIFxuICAgICAgICBpZiggIXJlcXVlc3RJZCApe1xuICAgICAgICAgICAgcmV0dXJuIGJhc2VVcmw7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIGlmICghYWN0aXZlUHJvdmlkZXJDb25maWcuY29uZmlnW3JlcXVlc3RJZF0pIHtcbiAgICAgICAgICAgIHRocm93IEVycm9yKGBUaGVyZSBpcyBubyBjb25maWcgZm9yIFwiJHtyZXF1ZXN0SWR9XCIgYCk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIGJhc2VVcmwgKyBhY3RpdmVQcm92aWRlckNvbmZpZy5jb25maWdbcmVxdWVzdElkXSAgICBcbiAgICB9XG59XG4iXX0=
78
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tbXVuaWNhdGlvbi5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbjctYm9pbGVycGxhdGUtY29tbW9uL3NyYy9saWIvc2VydmljZXMvY29tbXVuaWNhdGlvbi5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzVDLE9BQU8sRUFBYyxLQUFLLEVBQUUsTUFBTSxNQUFNLENBQUM7Ozs7O0FBb0N6QyxNQUFNLE9BQU8sb0JBQW9CO0lBSy9CLFlBQ1UsTUFBNEIsRUFDNUIsTUFBc0IsRUFDdEIsSUFBa0I7UUFGbEIsV0FBTSxHQUFOLE1BQU0sQ0FBc0I7UUFDNUIsV0FBTSxHQUFOLE1BQU0sQ0FBZ0I7UUFDdEIsU0FBSSxHQUFKLElBQUksQ0FBYztRQUUxQixJQUFJO1lBQ0YsSUFBSSxDQUFDLG1CQUFtQixHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLGVBQWUsQ0FBQyxDQUFDO1lBQzVELElBQUksQ0FBQyxlQUFlLEdBQUcsSUFBSSxDQUFDLG1CQUFtQixDQUFDLGVBQWUsQ0FBQztTQUNqRTtRQUFDLE9BQU8sR0FBRyxFQUFFO1lBQ1osTUFBTSxLQUFLLENBQUMsb0RBQW9ELENBQUMsQ0FBQztTQUNuRTtJQUNILENBQUM7SUFFRCxRQUFRLENBQ04sU0FBaUIsRUFDakIsT0FBaUMsRUFDakMsUUFBaUI7UUFFakIsTUFBTSxjQUFjLEdBQUcsUUFBUSxJQUFJLElBQUksQ0FBQyxlQUFlLENBQUM7UUFDeEQsTUFBTSxvQkFBb0IsR0FBRyxJQUFJLENBQUMsbUJBQW1CLENBQUMsU0FBUyxDQUFDLGNBQWMsQ0FBQyxDQUFDO1FBRWhGLElBQUksQ0FBQyxvQkFBb0IsRUFBRTtZQUN6QixNQUFNLEtBQUssQ0FBQywyQkFBMkIsY0FBYyxZQUFZLENBQUMsQ0FBQztTQUNwRTtRQUVELDZDQUE2QztRQUM3QyxNQUFNLGtCQUFrQixHQUFHLG9CQUFvQixDQUFDLElBQUksSUFBSSxjQUFjLENBQUM7UUFFdkUsSUFBSSxDQUFDLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxFQUFFO1lBQzdCLE1BQU0sS0FBSyxDQUFDLGdCQUFnQixrQkFBa0IsaUJBQWlCLENBQUMsQ0FBQztTQUNsRTtRQUVELE1BQU0sY0FBYyxHQUFHLE9BQU8sSUFBSSxFQUFFLENBQUM7UUFFckMsc0JBQXNCO1FBQ3RCLG9DQUFvQztRQUNwQyxJQUFJLGNBQWMsQ0FBQyxXQUFXLEVBQUU7WUFDOUIsY0FBYyxDQUFDLFdBQVcsR0FBRztnQkFDM0IsR0FBRyxDQUFDLGNBQWMsQ0FBQyxXQUFXLElBQUksRUFBRSxDQUFDO2dCQUNyQyxNQUFNLEVBQUUsY0FBYyxDQUFDLFdBQVc7YUFDbkMsQ0FBQztTQUNIO1FBRUQsTUFBTSxFQUFFLE9BQU8sRUFBRSxHQUFHLE9BQU8sSUFBSSxFQUFFLENBQUM7UUFDbEMsT0FBTyxJQUFJLENBQUMsa0JBQWtCLENBQUMsQ0FBQyxRQUFRLENBQUksb0JBQW9CLEVBQUUsU0FBUyxFQUFFLGNBQWMsQ0FBQzthQUN6RixJQUFJLENBQ0gsVUFBVSxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLEtBQUssRUFBRSxPQUFPLENBQUMsQ0FBQyxDQUN4RCxDQUFDO0lBQ04sQ0FBQztJQUVELFdBQVcsQ0FBQyxLQUFLLEVBQUUsT0FBc0I7UUFDdkMsSUFBSSxPQUFPLEVBQUU7WUFDWCxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUM7U0FDaEI7YUFBTTtZQUNMLE9BQU8sQ0FBQyxJQUFJLENBQUMsNENBQTRDLEVBQUUsS0FBSyxDQUFDLENBQUM7U0FDbkU7UUFFRCxPQUFPLEtBQUssQ0FBQztJQUNmLENBQUM7SUFFRCxNQUFNLENBQUMsU0FBVSxFQUFFLFFBQVM7UUFDMUIsTUFBTSxjQUFjLEdBQUcsUUFBUSxJQUFJLElBQUksQ0FBQyxlQUFlLENBQUM7UUFDeEQsTUFBTSxvQkFBb0IsR0FBRyxJQUFJLENBQUMsbUJBQW1CLENBQUMsU0FBUyxDQUFDLGNBQWMsQ0FBQyxDQUFDO1FBRWhGLElBQUksQ0FBQyxvQkFBb0IsRUFBRTtZQUN6QixNQUFNLEtBQUssQ0FBQywyQkFBMkIsY0FBYyxZQUFZLENBQUMsQ0FBQztTQUNwRTtRQUVELE1BQU0sRUFBRSxPQUFPLEVBQUUsR0FBRyxvQkFBb0IsQ0FBQztRQUV6QyxJQUFJLENBQUMsU0FBUyxFQUFFO1lBQ2QsT0FBTyxPQUFPLENBQUM7U0FDaEI7UUFFRCxJQUFJLENBQUMsb0JBQW9CLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxFQUFFO1lBQzNDLE1BQU0sS0FBSyxDQUFDLDJCQUEyQixTQUFTLEdBQUcsQ0FBQyxDQUFDO1NBQ3REO1FBQ0QsT0FBTyxPQUFPLEdBQUcsb0JBQW9CLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBQzFELENBQUM7O2tIQW5GVSxvQkFBb0I7c0hBQXBCLG9CQUFvQixjQUZuQixNQUFNOzRGQUVQLG9CQUFvQjtrQkFIaEMsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBjYXRjaEVycm9yIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgRU1QVFkgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7XG4gIEh0dHBDb250ZXh0LCBIdHRwSGVhZGVycywgSHR0cFBhcmFtc1xufSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XG5pbXBvcnQgeyBDb25maWd1cmF0aW9uU2VydmljZSB9IGZyb20gJy4vY29uZmlndXJhdGlvbi5zZXJ2aWNlJztcbmltcG9ydCB7IEFwb2xsb1Byb3ZpZGVyIH0gZnJvbSAnLi9jb21tdW5pY2F0aW9uLXByb3ZpZGVycy9hcG9sbG8ucHJvdmlkZXInO1xuaW1wb3J0IHsgUmVzdFByb3ZpZGVyIH0gZnJvbSAnLi9jb21tdW5pY2F0aW9uLXByb3ZpZGVycy9yZXN0LnByb3ZpZGVyJztcbmltcG9ydCB7IENvbmZpZ0NvbW1vbkNvbW11bmljYXRpb24gfSBmcm9tICcuLi9jb25maWctdHlwZXMnO1xuXG5leHBvcnQgdHlwZSBDb21tdW5pY2F0aW9uUXVlcnlQYXJhbXMgPSBIdHRwUGFyYW1zIHwge1xuICBbcGFyYW06IHN0cmluZ106IHN0cmluZyB8IG51bWJlciB8IGJvb2xlYW4gfCBSZWFkb25seUFycmF5PHN0cmluZyB8IG51bWJlciB8IGJvb2xlYW4+O1xufTtcblxuZXhwb3J0IHR5cGUgQ29tbXVuaWNhdGlvbkh0dHBPcHRpb25zID0ge1xuICBib2R5PzogYW55O1xuICBjb250ZXh0PzogSHR0cENvbnRleHQ7XG4gIHJlc3BvbnNlVHlwZT86ICdhcnJheWJ1ZmZlcicgfCAnYmxvYicgfCAnanNvbicgfCAndGV4dCc7XG4gIHdpdGhDcmVkZW50aWFscz86IGJvb2xlYW47XG4gIHBhcmFtcz86IENvbW11bmljYXRpb25RdWVyeVBhcmFtcztcbiAgaGVhZGVycz86IEh0dHBIZWFkZXJzIHwge1xuICAgIFtoZWFkZXI6IHN0cmluZ106IHN0cmluZyB8IHN0cmluZ1tdO1xuICB9O1xufVxuXG5leHBvcnQgdHlwZSBDb21tdW5pY2F0aW9uT3B0aW9uczxVPiA9IHtcbiAgbWV0aG9kPzogJ0dFVCcgfCAnUE9TVCcgfCAnUFVUJyB8ICdQQVRDSCcgfCAnREVMRVRFJztcbiAgcGFyYW1zPzogVTtcbiAgdXJsUGFyYW1zPzogc3RyaW5nIHwgb2JqZWN0O1xuICBxdWVyeVBhcmFtcz86IENvbW11bmljYXRpb25RdWVyeVBhcmFtcztcbiAgaHR0cE9wdGlvbnM/OiBDb21tdW5pY2F0aW9uSHR0cE9wdGlvbnM7XG4gIG9uRXJyb3I/OiAoZXJyKSA9PiB2b2lkO1xufVxuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290Jyxcbn0pXG5leHBvcnQgY2xhc3MgQ29tbXVuaWNhdGlvblNlcnZpY2Uge1xuICBwcml2YXRlIGRlZmF1bHRQcm92aWRlcjogc3RyaW5nO1xuXG4gIHByaXZhdGUgY29tbXVuaWNhdGlvbkNvbmZpZzogQ29uZmlnQ29tbW9uQ29tbXVuaWNhdGlvbjtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGNvbmZpZzogQ29uZmlndXJhdGlvblNlcnZpY2UsXG4gICAgcHJpdmF0ZSBhcG9sbG86IEFwb2xsb1Byb3ZpZGVyLFxuICAgIHByaXZhdGUgcmVzdDogUmVzdFByb3ZpZGVyLFxuICApIHtcbiAgICB0cnkge1xuICAgICAgdGhpcy5jb21tdW5pY2F0aW9uQ29uZmlnID0gdGhpcy5jb25maWcuZ2V0KCdjb21tdW5pY2F0aW9uJyk7XG4gICAgICB0aGlzLmRlZmF1bHRQcm92aWRlciA9IHRoaXMuY29tbXVuaWNhdGlvbkNvbmZpZy5kZWZhdWx0UHJvdmlkZXI7XG4gICAgfSBjYXRjaCAoZXJyKSB7XG4gICAgICB0aHJvdyBFcnJvcignTm8gY29tbXVuaWNhdGlvbnMuZGVmYXVsdFByb3ZpZGVyIHNldHRlZCBpbiBjb25maWcnKTtcbiAgICB9XG4gIH1cblxuICByZXF1ZXN0JDxUID0gYW55LCBVID0gYW55PihcbiAgICByZXF1ZXN0SWQ6IHN0cmluZyxcbiAgICBvcHRpb25zPzogQ29tbXVuaWNhdGlvbk9wdGlvbnM8VT4sXG4gICAgcHJvdmlkZXI/OiBzdHJpbmdcbiAgKTogT2JzZXJ2YWJsZTxUPiB7XG4gICAgY29uc3QgYWN0aXZlUHJvdmlkZXIgPSBwcm92aWRlciB8fCB0aGlzLmRlZmF1bHRQcm92aWRlcjtcbiAgICBjb25zdCBhY3RpdmVQcm92aWRlckNvbmZpZyA9IHRoaXMuY29tbXVuaWNhdGlvbkNvbmZpZy5wcm92aWRlcnNbYWN0aXZlUHJvdmlkZXJdO1xuXG4gICAgaWYgKCFhY3RpdmVQcm92aWRlckNvbmZpZykge1xuICAgICAgdGhyb3cgRXJyb3IoYFRoZXJlIGlzIG5vIGNvbmZpZyBmb3IgXCIke2FjdGl2ZVByb3ZpZGVyfVwiIHByb3ZpZGVyYCk7XG4gICAgfVxuXG4gICAgLy8gcHJvdmlkZXIudHlwZSBjaGVjayBmb3IgcmV0cm9jb21wYXRpYmlsaXR5XG4gICAgY29uc3QgYWN0aXZlUHJvdmlkZXJUeXBlID0gYWN0aXZlUHJvdmlkZXJDb25maWcudHlwZSB8fCBhY3RpdmVQcm92aWRlcjtcblxuICAgIGlmICghdGhpc1thY3RpdmVQcm92aWRlclR5cGVdKSB7XG4gICAgICB0aHJvdyBFcnJvcihgVGhlcmUgaXMgbm8gXCIke2FjdGl2ZVByb3ZpZGVyVHlwZX1cIiBwcm92aWRlciB0eXBlYCk7XG4gICAgfVxuXG4gICAgY29uc3QgcmVxdWVzdE9wdGlvbnMgPSBvcHRpb25zIHx8IHt9O1xuXG4gICAgLy8gYWRkaW5nIHF1ZXJ5IHBhcmFtc1xuICAgIC8vIHRvIGh0dHAgY2xpZW50IGh0dHBvcHRpb25zIHBhcmFtc1xuICAgIGlmIChyZXF1ZXN0T3B0aW9ucy5xdWVyeVBhcmFtcykge1xuICAgICAgcmVxdWVzdE9wdGlvbnMuaHR0cE9wdGlvbnMgPSB7XG4gICAgICAgIC4uLihyZXF1ZXN0T3B0aW9ucy5odHRwT3B0aW9ucyB8fCB7fSksXG4gICAgICAgIHBhcmFtczogcmVxdWVzdE9wdGlvbnMucXVlcnlQYXJhbXNcbiAgICAgIH07XG4gICAgfVxuXG4gICAgY29uc3QgeyBvbkVycm9yIH0gPSBvcHRpb25zIHx8IHt9O1xuICAgIHJldHVybiB0aGlzW2FjdGl2ZVByb3ZpZGVyVHlwZV0ucmVxdWVzdCQ8VD4oYWN0aXZlUHJvdmlkZXJDb25maWcsIHJlcXVlc3RJZCwgcmVxdWVzdE9wdGlvbnMpXG4gICAgICAucGlwZShcbiAgICAgICAgY2F0Y2hFcnJvcigoZXJyb3IpID0+IHRoaXMuaGFuZGxlRXJyb3IoZXJyb3IsIG9uRXJyb3IpKSxcbiAgICAgICk7XG4gIH1cblxuICBoYW5kbGVFcnJvcihlcnJvciwgb25FcnJvcjogKGVycikgPT4gdm9pZCk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgaWYgKG9uRXJyb3IpIHtcbiAgICAgIG9uRXJyb3IoZXJyb3IpO1xuICAgIH0gZWxzZSB7XG4gICAgICBjb25zb2xlLndhcm4oJ05vIGVycm9yIGhhbmRsZXIgZm9yIGNvbW11bmljYXRpb24gcmVxdWVzdCcsIGVycm9yKTtcbiAgICB9XG5cbiAgICByZXR1cm4gRU1QVFk7XG4gIH1cblxuICBnZXRVcmwocmVxdWVzdElkPywgcHJvdmlkZXI/KSB7XG4gICAgY29uc3QgYWN0aXZlUHJvdmlkZXIgPSBwcm92aWRlciB8fCB0aGlzLmRlZmF1bHRQcm92aWRlcjtcbiAgICBjb25zdCBhY3RpdmVQcm92aWRlckNvbmZpZyA9IHRoaXMuY29tbXVuaWNhdGlvbkNvbmZpZy5wcm92aWRlcnNbYWN0aXZlUHJvdmlkZXJdO1xuXG4gICAgaWYgKCFhY3RpdmVQcm92aWRlckNvbmZpZykge1xuICAgICAgdGhyb3cgRXJyb3IoYFRoZXJlIGlzIG5vIGNvbmZpZyBmb3IgXCIke2FjdGl2ZVByb3ZpZGVyfVwiIHByb3ZpZGVyYCk7XG4gICAgfVxuXG4gICAgY29uc3QgeyBiYXNlVXJsIH0gPSBhY3RpdmVQcm92aWRlckNvbmZpZztcblxuICAgIGlmICghcmVxdWVzdElkKSB7XG4gICAgICByZXR1cm4gYmFzZVVybDtcbiAgICB9XG5cbiAgICBpZiAoIWFjdGl2ZVByb3ZpZGVyQ29uZmlnLmNvbmZpZ1tyZXF1ZXN0SWRdKSB7XG4gICAgICB0aHJvdyBFcnJvcihgVGhlcmUgaXMgbm8gY29uZmlnIGZvciBcIiR7cmVxdWVzdElkfVwiYCk7XG4gICAgfVxuICAgIHJldHVybiBiYXNlVXJsICsgYWN0aXZlUHJvdmlkZXJDb25maWcuY29uZmlnW3JlcXVlc3RJZF07XG4gIH1cbn1cbiJdfQ==
@@ -6,7 +6,7 @@ import * as i1 from '@angular/common/http';
6
6
  import { HttpClientModule } from '@angular/common/http';
7
7
  import * as i6 from '@net7/components';
8
8
  import { DvComponentsLibModule } from '@net7/components';
9
- import { ReplaySubject, empty, Subject, of } from 'rxjs';
9
+ import { ReplaySubject, EMPTY, Subject, of } from 'rxjs';
10
10
  import { map, catchError, takeUntil, filter, tap } from 'rxjs/operators';
11
11
  import { LayoutBuilder, LayoutDataSource, EventHandler, DataSource, _t } from '@net7/core';
12
12
  import { hideAll } from 'tippy.js';
@@ -145,7 +145,8 @@ class ApolloProvider {
145
145
  source$ = this.http.get(providerConfig.baseUrl);
146
146
  }
147
147
  else {
148
- source$ = this.http.post(providerConfig.baseUrl, { query: queryBody }, httpOptions);
148
+ source$ = this.http.post(providerConfig.baseUrl, { query: queryBody }, Object.assign(Object.assign({}, httpOptions), { responseType: 'json' // force to json
149
+ }));
149
150
  }
150
151
  return source$.pipe(map((response) => response.data[queryName]));
151
152
  }
@@ -198,7 +199,7 @@ class RestProvider {
198
199
  constructor(http) {
199
200
  this.http = http;
200
201
  }
201
- request$(providerConfig, requestId, options = {}) {
202
+ request$(providerConfig, requestId, options) {
202
203
  const { params, httpOptions, urlParams = '', } = options;
203
204
  let { method } = options;
204
205
  let point;
@@ -213,14 +214,27 @@ class RestProvider {
213
214
  if (!point) {
214
215
  throw Error(`No config found for requestId "${requestId}"`);
215
216
  }
216
- if (method === 'POST' || method === 'PUT') {
217
- return this.http[method.toLowerCase()](providerConfig.baseUrl + point + urlParams, params, httpOptions);
217
+ const formattedUrl = this.getFormattedUrl(providerConfig.baseUrl, point, urlParams);
218
+ if (['POST', 'PUT', 'PATCH'].includes(method)) {
219
+ return this.http[method.toLowerCase()](formattedUrl, params, httpOptions);
218
220
  }
219
- if (method === 'GET' || method === 'DELETE') {
220
- return this.http[method.toLowerCase()](providerConfig.baseUrl + point + urlParams, httpOptions);
221
+ if (['GET', 'DELETE'].includes(method)) {
222
+ return this.http[method.toLowerCase()](formattedUrl, httpOptions);
221
223
  }
222
224
  throw Error(`Rest method ${method} not supported`);
223
225
  }
226
+ getFormattedUrl(baseUrl, point, urlParams) {
227
+ if (typeof urlParams === 'string') {
228
+ return baseUrl + point + urlParams;
229
+ }
230
+ return baseUrl + this.parseUrlPlaceholders(point, urlParams);
231
+ }
232
+ parseUrlPlaceholders(source, placeholders) {
233
+ return source.replace(/{\s*\w+\s*}/g, (match) => {
234
+ const key = match.replace(/{|}/g, '').trim();
235
+ return placeholders[key] || match;
236
+ });
237
+ }
224
238
  }
225
239
  RestProvider.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: RestProvider, deps: [{ token: i1.HttpClient }], target: i0.ɵɵFactoryTarget.Injectable });
226
240
  RestProvider.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: RestProvider, providedIn: 'root' });
@@ -244,19 +258,25 @@ class CommunicationService {
244
258
  throw Error('No communications.defaultProvider setted in config');
245
259
  }
246
260
  }
247
- request$(requestId, options = {}, provider) {
261
+ request$(requestId, options, provider) {
248
262
  const activeProvider = provider || this.defaultProvider;
249
263
  const activeProviderConfig = this.communicationConfig.providers[activeProvider];
250
264
  if (!activeProviderConfig) {
251
265
  throw Error(`There is no config for "${activeProvider}" provider`);
252
266
  }
253
- // provider.type control for retrocompatibility
267
+ // provider.type check for retrocompatibility
254
268
  const activeProviderType = activeProviderConfig.type || activeProvider;
255
269
  if (!this[activeProviderType]) {
256
270
  throw Error(`There is no "${activeProviderType}" provider type`);
257
271
  }
258
- const { onError } = options;
259
- return this[activeProviderType].request$(activeProviderConfig, requestId, options)
272
+ const requestOptions = options || {};
273
+ // adding query params
274
+ // to http client httpoptions params
275
+ if (requestOptions.queryParams) {
276
+ requestOptions.httpOptions = Object.assign(Object.assign({}, (requestOptions.httpOptions || {})), { params: requestOptions.queryParams });
277
+ }
278
+ const { onError } = options || {};
279
+ return this[activeProviderType].request$(activeProviderConfig, requestId, requestOptions)
260
280
  .pipe(catchError((error) => this.handleError(error, onError)));
261
281
  }
262
282
  handleError(error, onError) {
@@ -266,7 +286,7 @@ class CommunicationService {
266
286
  else {
267
287
  console.warn('No error handler for communication request', error);
268
288
  }
269
- return empty();
289
+ return EMPTY;
270
290
  }
271
291
  getUrl(requestId, provider) {
272
292
  const activeProvider = provider || this.defaultProvider;
@@ -274,12 +294,12 @@ class CommunicationService {
274
294
  if (!activeProviderConfig) {
275
295
  throw Error(`There is no config for "${activeProvider}" provider`);
276
296
  }
277
- const baseUrl = activeProviderConfig.baseUrl;
297
+ const { baseUrl } = activeProviderConfig;
278
298
  if (!requestId) {
279
299
  return baseUrl;
280
300
  }
281
301
  if (!activeProviderConfig.config[requestId]) {
282
- throw Error(`There is no config for "${requestId}" `);
302
+ throw Error(`There is no config for "${requestId}"`);
283
303
  }
284
304
  return baseUrl + activeProviderConfig.config[requestId];
285
305
  }