ngx-techlify-core 16.0.4 → 16.1.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.
Files changed (32) hide show
  1. package/esm2022/lib/audit-log/audit-log-list/audit-log-list.component.mjs +112 -47
  2. package/esm2022/lib/audit-log/audit-log-list/audit-log-list.module.mjs +8 -4
  3. package/esm2022/lib/audit-log/audit-log-list-filter/audit-log-list-filter.component.mjs +32 -42
  4. package/esm2022/lib/audit-log/audit-log-list-filter/audit-log-list-filter.module.mjs +7 -3
  5. package/esm2022/lib/audit-log/audit-log.service.mjs +18 -0
  6. package/esm2022/lib/audit-log/audit-logs-view-model/audit-logs-view-model.component.mjs +3 -3
  7. package/esm2022/lib/base-model/techlify-listing-component.class.mjs +58 -3
  8. package/esm2022/lib/change-password/change-password.component.mjs +3 -3
  9. package/esm2022/lib/core/error-handler.interceptor.mjs +30 -17
  10. package/esm2022/lib/entity-files/entity-file-form/entity-file-form.component.mjs +2 -2
  11. package/esm2022/lib/entity-files/entity-file.service.mjs +3 -1
  12. package/esm2022/lib/entity-files/entity-files-view-all.component.mjs +3 -3
  13. package/esm2022/lib/export-excel/export-excel-button/export-excel-button.component.mjs +4 -4
  14. package/esm2022/lib/login/login.component.mjs +3 -3
  15. package/esm2022/lib/techlify-tagger-tag-form-field/techlify-tagger-tag-form-field.component.mjs +22 -46
  16. package/esm2022/lib/user/current-user.service.mjs +2 -2
  17. package/esm2022/lib/user/user-enable-button-component/user-enable-button.component.mjs +8 -3
  18. package/esm2022/lib/user/user-view.component.mjs +1 -1
  19. package/esm2022/lib/user/users-view-all.component.mjs +47 -44
  20. package/fesm2022/ngx-techlify-core.mjs +377 -255
  21. package/fesm2022/ngx-techlify-core.mjs.map +1 -1
  22. package/lib/audit-log/audit-log-list/audit-log-list.component.d.ts +15 -12
  23. package/lib/audit-log/audit-log-list/audit-log-list.module.d.ts +2 -1
  24. package/lib/audit-log/audit-log-list-filter/audit-log-list-filter.component.d.ts +9 -9
  25. package/lib/audit-log/audit-log-list-filter/audit-log-list-filter.module.d.ts +2 -1
  26. package/lib/audit-log/audit-log.service.d.ts +8 -0
  27. package/lib/base-model/techlify-listing-component.class.d.ts +30 -2
  28. package/lib/core/error-handler.interceptor.d.ts +10 -1
  29. package/lib/techlify-tagger-tag-form-field/techlify-tagger-tag-form-field.component.d.ts +1 -6
  30. package/lib/user/user-enable-button-component/user-enable-button.component.d.ts +2 -1
  31. package/lib/user/users-view-all.component.d.ts +6 -6
  32. package/package.json +1 -1
@@ -1,10 +1,12 @@
1
1
  import { Injectable } from '@angular/core';
2
+ import { HttpErrorResponse } from '@angular/common/http';
2
3
  import { throwError } from 'rxjs';
3
4
  import { catchError } from 'rxjs/operators';
4
5
  import { Logger } from './logger.service';
5
6
  import * as i0 from "@angular/core";
6
7
  import * as i1 from "./config.service";
7
8
  import * as i2 from "./error-handler.service";
9
+ import * as i3 from "./alert.service";
8
10
  const log = new Logger('ErrorHandlerInterceptor');
9
11
  /**
10
12
  * Adds a default error handler to all requests.
@@ -12,33 +14,44 @@ const log = new Logger('ErrorHandlerInterceptor');
12
14
  export class ErrorHandlerInterceptor {
13
15
  configService;
14
16
  errorHandler;
15
- constructor(configService, errorHandler) {
17
+ alertService;
18
+ constructor(configService, errorHandler, alertService) {
16
19
  this.configService = configService;
17
20
  this.errorHandler = errorHandler;
21
+ this.alertService = alertService;
18
22
  }
19
23
  intercept(request, next) {
20
24
  return next.handle(request).pipe(catchError(error => this.handleError(error)));
21
25
  }
22
26
  // Customize the default error handler here if needed
23
27
  handleError(error) {
24
- let errorMessage = '';
25
- if (error.error instanceof ErrorEvent) {
26
- // client-side error
27
- errorMessage = `Client Error: ${this.configService?.getProjectKey()}: ${error.error.message}`;
28
+ if (this.checkNoNetworkConnection(error)) {
29
+ this.alertService.addAlert('Internet connection not available, try later', 'warning');
30
+ return throwError(error);
28
31
  }
29
- else {
30
- // server-side error
31
- errorMessage = `Server Error: ${this.configService?.getProjectKey()}`;
32
- try {
33
- this.errorHandler.handleError(error, 'Unexpected Server Error, try later or contact service team');
34
- }
35
- catch (e) {
36
- console.log("Unable to handle server error", e);
37
- }
32
+ try {
33
+ this.errorHandler.handleError(error, 'Unexpected Server Error, try later or contact service team');
34
+ }
35
+ catch (e) {
36
+ console.log("Unable to handle server error", e);
38
37
  }
39
38
  return throwError(error);
40
39
  }
41
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ErrorHandlerInterceptor, deps: [{ token: i1.ConfigService }, { token: i2.ErrorHandlerService }], target: i0.ɵɵFactoryTarget.Injectable });
40
+ /**
41
+ * Helper function to check if an error is likely due to a network connection issue.
42
+ *
43
+ * @param error The error object to check.
44
+ * @returns `true` if it's likely a network error, `false` otherwise.
45
+ */
46
+ checkNoNetworkConnection(error) {
47
+ return (error instanceof HttpErrorResponse
48
+ && !error.headers.keys().length
49
+ && !error.ok
50
+ && !error.status
51
+ && !error.error.loaded
52
+ && !error.error.total);
53
+ }
54
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ErrorHandlerInterceptor, deps: [{ token: i1.ConfigService }, { token: i2.ErrorHandlerService }, { token: i3.AlertService }], target: i0.ɵɵFactoryTarget.Injectable });
42
55
  static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ErrorHandlerInterceptor, providedIn: 'root' });
43
56
  }
44
57
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ErrorHandlerInterceptor, decorators: [{
@@ -46,5 +59,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
46
59
  args: [{
47
60
  providedIn: 'root'
48
61
  }]
49
- }], ctorParameters: function () { return [{ type: i1.ConfigService }, { type: i2.ErrorHandlerService }]; } });
50
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXJyb3ItaGFuZGxlci5pbnRlcmNlcHRvci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC10ZWNobGlmeS1jb3JlL3NyYy9saWIvY29yZS9lcnJvci1oYW5kbGVyLmludGVyY2VwdG9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFM0MsT0FBTyxFQUFjLFVBQVUsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUM5QyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDNUMsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLGtCQUFrQixDQUFDOzs7O0FBSTFDLE1BQU0sR0FBRyxHQUFHLElBQUksTUFBTSxDQUFDLHlCQUF5QixDQUFDLENBQUM7QUFFbEQ7O0dBRUc7QUFJSCxNQUFNLE9BQU8sdUJBQXVCO0lBRWQ7SUFBc0M7SUFBMUQsWUFBb0IsYUFBNEIsRUFBVSxZQUFpQztRQUF2RSxrQkFBYSxHQUFiLGFBQWEsQ0FBZTtRQUFVLGlCQUFZLEdBQVosWUFBWSxDQUFxQjtJQUFJLENBQUM7SUFFaEcsU0FBUyxDQUFDLE9BQXlCLEVBQUUsSUFBaUI7UUFDcEQsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUNqRixDQUFDO0lBRUQscURBQXFEO0lBQzdDLFdBQVcsQ0FBQyxLQUF3QjtRQUMxQyxJQUFJLFlBQVksR0FBRyxFQUFFLENBQUM7UUFDdEIsSUFBSSxLQUFLLENBQUMsS0FBSyxZQUFZLFVBQVUsRUFBRTtZQUNyQyxvQkFBb0I7WUFDcEIsWUFBWSxHQUFHLGlCQUFpQixJQUFJLENBQUMsYUFBYSxFQUFFLGFBQWEsRUFBRSxLQUFLLEtBQUssQ0FBQyxLQUFLLENBQUMsT0FBTyxFQUFFLENBQUM7U0FDL0Y7YUFBTTtZQUNMLG9CQUFvQjtZQUNwQixZQUFZLEdBQUcsaUJBQWlCLElBQUksQ0FBQyxhQUFhLEVBQUUsYUFBYSxFQUFFLEVBQUUsQ0FBQztZQUN0RSxJQUFJO2dCQUNGLElBQUksQ0FBQyxZQUFZLENBQUMsV0FBVyxDQUFDLEtBQUssRUFBRSw0REFBNEQsQ0FBQyxDQUFDO2FBQ3BHO1lBQUMsT0FBTyxDQUFDLEVBQUU7Z0JBQ1YsT0FBTyxDQUFDLEdBQUcsQ0FBQywrQkFBK0IsRUFBRSxDQUFDLENBQUMsQ0FBQzthQUNqRDtTQUNGO1FBQ0QsT0FBTyxVQUFVLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDM0IsQ0FBQzt3R0F4QlUsdUJBQXVCOzRHQUF2Qix1QkFBdUIsY0FGdEIsTUFBTTs7NEZBRVAsdUJBQXVCO2tCQUhuQyxVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEh0dHBFdmVudCwgSHR0cEludGVyY2VwdG9yLCBIdHRwSGFuZGxlciwgSHR0cFJlcXVlc3QsIEh0dHBFcnJvclJlc3BvbnNlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgdGhyb3dFcnJvciB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgY2F0Y2hFcnJvciB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IExvZ2dlciB9IGZyb20gJy4vbG9nZ2VyLnNlcnZpY2UnO1xuaW1wb3J0IHsgQ29uZmlnU2VydmljZSB9IGZyb20gJy4vY29uZmlnLnNlcnZpY2UnO1xuaW1wb3J0IHsgRXJyb3JIYW5kbGVyU2VydmljZSB9IGZyb20gJy4vZXJyb3ItaGFuZGxlci5zZXJ2aWNlJztcblxuY29uc3QgbG9nID0gbmV3IExvZ2dlcignRXJyb3JIYW5kbGVySW50ZXJjZXB0b3InKTtcblxuLyoqXG4gKiBBZGRzIGEgZGVmYXVsdCBlcnJvciBoYW5kbGVyIHRvIGFsbCByZXF1ZXN0cy5cbiAqL1xuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCdcbn0pXG5leHBvcnQgY2xhc3MgRXJyb3JIYW5kbGVySW50ZXJjZXB0b3IgaW1wbGVtZW50cyBIdHRwSW50ZXJjZXB0b3Ige1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgY29uZmlnU2VydmljZTogQ29uZmlnU2VydmljZSwgcHJpdmF0ZSBlcnJvckhhbmRsZXI6IEVycm9ySGFuZGxlclNlcnZpY2UpIHsgfVxuXG4gIGludGVyY2VwdChyZXF1ZXN0OiBIdHRwUmVxdWVzdDxhbnk+LCBuZXh0OiBIdHRwSGFuZGxlcik6IE9ic2VydmFibGU8SHR0cEV2ZW50PGFueT4+IHtcbiAgICByZXR1cm4gbmV4dC5oYW5kbGUocmVxdWVzdCkucGlwZShjYXRjaEVycm9yKGVycm9yID0+IHRoaXMuaGFuZGxlRXJyb3IoZXJyb3IpKSk7XG4gIH1cblxuICAvLyBDdXN0b21pemUgdGhlIGRlZmF1bHQgZXJyb3IgaGFuZGxlciBoZXJlIGlmIG5lZWRlZFxuICBwcml2YXRlIGhhbmRsZUVycm9yKGVycm9yOiBIdHRwRXJyb3JSZXNwb25zZSk6IE9ic2VydmFibGU8SHR0cEV2ZW50PGFueT4+IHtcbiAgICBsZXQgZXJyb3JNZXNzYWdlID0gJyc7XG4gICAgaWYgKGVycm9yLmVycm9yIGluc3RhbmNlb2YgRXJyb3JFdmVudCkge1xuICAgICAgLy8gY2xpZW50LXNpZGUgZXJyb3JcbiAgICAgIGVycm9yTWVzc2FnZSA9IGBDbGllbnQgRXJyb3I6ICR7dGhpcy5jb25maWdTZXJ2aWNlPy5nZXRQcm9qZWN0S2V5KCl9OiAke2Vycm9yLmVycm9yLm1lc3NhZ2V9YDtcbiAgICB9IGVsc2Uge1xuICAgICAgLy8gc2VydmVyLXNpZGUgZXJyb3JcbiAgICAgIGVycm9yTWVzc2FnZSA9IGBTZXJ2ZXIgRXJyb3I6ICR7dGhpcy5jb25maWdTZXJ2aWNlPy5nZXRQcm9qZWN0S2V5KCl9YDtcbiAgICAgIHRyeSB7XG4gICAgICAgIHRoaXMuZXJyb3JIYW5kbGVyLmhhbmRsZUVycm9yKGVycm9yLCAnVW5leHBlY3RlZCBTZXJ2ZXIgRXJyb3IsIHRyeSBsYXRlciBvciBjb250YWN0IHNlcnZpY2UgdGVhbScpO1xuICAgICAgfSBjYXRjaCAoZSkge1xuICAgICAgICBjb25zb2xlLmxvZyhcIlVuYWJsZSB0byBoYW5kbGUgc2VydmVyIGVycm9yXCIsIGUpO1xuICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gdGhyb3dFcnJvcihlcnJvcik7XG4gIH1cblxufVxuIl19
62
+ }], ctorParameters: function () { return [{ type: i1.ConfigService }, { type: i2.ErrorHandlerService }, { type: i3.AlertService }]; } });
63
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXJyb3ItaGFuZGxlci5pbnRlcmNlcHRvci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC10ZWNobGlmeS1jb3JlL3NyYy9saWIvY29yZS9lcnJvci1oYW5kbGVyLmludGVyY2VwdG9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUF3RCxpQkFBaUIsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQy9HLE9BQU8sRUFBYyxVQUFVLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDOUMsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzVDLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQzs7Ozs7QUFLMUMsTUFBTSxHQUFHLEdBQUcsSUFBSSxNQUFNLENBQUMseUJBQXlCLENBQUMsQ0FBQztBQUVsRDs7R0FFRztBQUlILE1BQU0sT0FBTyx1QkFBdUI7SUFFZDtJQUNWO0lBQ0E7SUFGVixZQUFvQixhQUE0QixFQUN0QyxZQUFpQyxFQUNqQyxZQUEwQjtRQUZoQixrQkFBYSxHQUFiLGFBQWEsQ0FBZTtRQUN0QyxpQkFBWSxHQUFaLFlBQVksQ0FBcUI7UUFDakMsaUJBQVksR0FBWixZQUFZLENBQWM7SUFBSSxDQUFDO0lBRXpDLFNBQVMsQ0FBQyxPQUF5QixFQUFFLElBQWlCO1FBQ3BELE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDakYsQ0FBQztJQUVELHFEQUFxRDtJQUM3QyxXQUFXLENBQUMsS0FBd0I7UUFDMUMsSUFBSSxJQUFJLENBQUMsd0JBQXdCLENBQUMsS0FBSyxDQUFDLEVBQUU7WUFDeEMsSUFBSSxDQUFDLFlBQVksQ0FBQyxRQUFRLENBQUMsOENBQThDLEVBQUUsU0FBUyxDQUFDLENBQUM7WUFDdEYsT0FBTyxVQUFVLENBQUMsS0FBSyxDQUFDLENBQUM7U0FDMUI7UUFDRCxJQUFJO1lBQ0YsSUFBSSxDQUFDLFlBQVksQ0FBQyxXQUFXLENBQUMsS0FBSyxFQUFFLDREQUE0RCxDQUFDLENBQUM7U0FDcEc7UUFBQyxPQUFPLENBQUMsRUFBRTtZQUNWLE9BQU8sQ0FBQyxHQUFHLENBQUMsK0JBQStCLEVBQUUsQ0FBQyxDQUFDLENBQUM7U0FDakQ7UUFDRCxPQUFPLFVBQVUsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUMzQixDQUFDO0lBRUQ7Ozs7O0tBS0M7SUFDRCx3QkFBd0IsQ0FBQyxLQUFVO1FBQ2pDLE9BQU8sQ0FDTCxLQUFLLFlBQVksaUJBQWlCO2VBQy9CLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxJQUFJLEVBQUUsQ0FBQyxNQUFNO2VBQzVCLENBQUMsS0FBSyxDQUFDLEVBQUU7ZUFDVCxDQUFDLEtBQUssQ0FBQyxNQUFNO2VBQ2IsQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLE1BQU07ZUFDbkIsQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FDdEIsQ0FBQTtJQUNILENBQUM7d0dBdkNVLHVCQUF1Qjs0R0FBdkIsdUJBQXVCLGNBRnRCLE1BQU07OzRGQUVQLHVCQUF1QjtrQkFIbkMsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBIdHRwRXZlbnQsIEh0dHBJbnRlcmNlcHRvciwgSHR0cEhhbmRsZXIsIEh0dHBSZXF1ZXN0LCBIdHRwRXJyb3JSZXNwb25zZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcbmltcG9ydCB7IE9ic2VydmFibGUsIHRocm93RXJyb3IgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IGNhdGNoRXJyb3IgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBMb2dnZXIgfSBmcm9tICcuL2xvZ2dlci5zZXJ2aWNlJztcbmltcG9ydCB7IENvbmZpZ1NlcnZpY2UgfSBmcm9tICcuL2NvbmZpZy5zZXJ2aWNlJztcbmltcG9ydCB7IEVycm9ySGFuZGxlclNlcnZpY2UgfSBmcm9tICcuL2Vycm9yLWhhbmRsZXIuc2VydmljZSc7XG5pbXBvcnQgeyBBbGVydFNlcnZpY2UgfSBmcm9tICcuL2FsZXJ0LnNlcnZpY2UnO1xuXG5jb25zdCBsb2cgPSBuZXcgTG9nZ2VyKCdFcnJvckhhbmRsZXJJbnRlcmNlcHRvcicpO1xuXG4vKipcbiAqIEFkZHMgYSBkZWZhdWx0IGVycm9yIGhhbmRsZXIgdG8gYWxsIHJlcXVlc3RzLlxuICovXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBFcnJvckhhbmRsZXJJbnRlcmNlcHRvciBpbXBsZW1lbnRzIEh0dHBJbnRlcmNlcHRvciB7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBjb25maWdTZXJ2aWNlOiBDb25maWdTZXJ2aWNlLFxuICAgIHByaXZhdGUgZXJyb3JIYW5kbGVyOiBFcnJvckhhbmRsZXJTZXJ2aWNlLFxuICAgIHByaXZhdGUgYWxlcnRTZXJ2aWNlOiBBbGVydFNlcnZpY2UpIHsgfVxuXG4gIGludGVyY2VwdChyZXF1ZXN0OiBIdHRwUmVxdWVzdDxhbnk+LCBuZXh0OiBIdHRwSGFuZGxlcik6IE9ic2VydmFibGU8SHR0cEV2ZW50PGFueT4+IHtcbiAgICByZXR1cm4gbmV4dC5oYW5kbGUocmVxdWVzdCkucGlwZShjYXRjaEVycm9yKGVycm9yID0+IHRoaXMuaGFuZGxlRXJyb3IoZXJyb3IpKSk7XG4gIH1cblxuICAvLyBDdXN0b21pemUgdGhlIGRlZmF1bHQgZXJyb3IgaGFuZGxlciBoZXJlIGlmIG5lZWRlZFxuICBwcml2YXRlIGhhbmRsZUVycm9yKGVycm9yOiBIdHRwRXJyb3JSZXNwb25zZSk6IE9ic2VydmFibGU8SHR0cEV2ZW50PGFueT4+IHtcbiAgICBpZiAodGhpcy5jaGVja05vTmV0d29ya0Nvbm5lY3Rpb24oZXJyb3IpKSB7XG4gICAgICB0aGlzLmFsZXJ0U2VydmljZS5hZGRBbGVydCgnSW50ZXJuZXQgY29ubmVjdGlvbiBub3QgYXZhaWxhYmxlLCB0cnkgbGF0ZXInLCAnd2FybmluZycpO1xuICAgICAgcmV0dXJuIHRocm93RXJyb3IoZXJyb3IpO1xuICAgIH1cbiAgICB0cnkge1xuICAgICAgdGhpcy5lcnJvckhhbmRsZXIuaGFuZGxlRXJyb3IoZXJyb3IsICdVbmV4cGVjdGVkIFNlcnZlciBFcnJvciwgdHJ5IGxhdGVyIG9yIGNvbnRhY3Qgc2VydmljZSB0ZWFtJyk7XG4gICAgfSBjYXRjaCAoZSkge1xuICAgICAgY29uc29sZS5sb2coXCJVbmFibGUgdG8gaGFuZGxlIHNlcnZlciBlcnJvclwiLCBlKTtcbiAgICB9XG4gICAgcmV0dXJuIHRocm93RXJyb3IoZXJyb3IpO1xuICB9XG5cbiAgLyoqXG4gKiBIZWxwZXIgZnVuY3Rpb24gdG8gY2hlY2sgaWYgYW4gZXJyb3IgaXMgbGlrZWx5IGR1ZSB0byBhIG5ldHdvcmsgY29ubmVjdGlvbiBpc3N1ZS5cbiAqXG4gKiBAcGFyYW0gZXJyb3IgVGhlIGVycm9yIG9iamVjdCB0byBjaGVjay5cbiAqIEByZXR1cm5zIGB0cnVlYCBpZiBpdCdzIGxpa2VseSBhIG5ldHdvcmsgZXJyb3IsIGBmYWxzZWAgb3RoZXJ3aXNlLlxuICovXG4gIGNoZWNrTm9OZXR3b3JrQ29ubmVjdGlvbihlcnJvcjogYW55KTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIChcbiAgICAgIGVycm9yIGluc3RhbmNlb2YgSHR0cEVycm9yUmVzcG9uc2VcbiAgICAgICYmICFlcnJvci5oZWFkZXJzLmtleXMoKS5sZW5ndGhcbiAgICAgICYmICFlcnJvci5va1xuICAgICAgJiYgIWVycm9yLnN0YXR1c1xuICAgICAgJiYgIWVycm9yLmVycm9yLmxvYWRlZFxuICAgICAgJiYgIWVycm9yLmVycm9yLnRvdGFsXG4gICAgKVxuICB9XG5cbn1cbiJdfQ==
@@ -134,7 +134,7 @@ export class EntityFileFormComponent {
134
134
  async fileChanged(event) {
135
135
  this.fileList = event;
136
136
  if (this.fileList.length > 0) {
137
- const result = await this.entityFileService.uploadEntityFile(this.fileList[0]);
137
+ const result = await this.entityFileService.uploadEntityFile(this.fileList[0], { entity_type: this.entityFileGroup.get('entity_type').value });
138
138
  this.entityFileGroup.patchValue(result.item);
139
139
  ;
140
140
  this.fileList = [];
@@ -171,4 +171,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
171
171
  type: Inject,
172
172
  args: [MAT_DIALOG_DATA]
173
173
  }] }, { type: i2.FormValidatorService }, { type: i3.UntypedFormBuilder }, { type: i4.EntityFileService }, { type: i5.AlertService }]; } });
174
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW50aXR5LWZpbGUtZm9ybS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtdGVjaGxpZnktY29yZS9zcmMvbGliL2VudGl0eS1maWxlcy9lbnRpdHktZmlsZS1mb3JtL2VudGl0eS1maWxlLWZvcm0uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LXRlY2hsaWZ5LWNvcmUvc3JjL2xpYi9lbnRpdHktZmlsZXMvZW50aXR5LWZpbGUtZm9ybS9lbnRpdHktZmlsZS1mb3JtLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQVUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzFELE9BQU8sRUFBZ0IsZUFBZSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDekUsT0FBTyxFQUF3QyxVQUFVLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7Ozs7Ozs7Ozs7Ozs7O0FBV2xGLE1BQU0sYUFBYSxHQUFRO0lBQ3pCLEdBQUcsRUFBRTtRQUNILFFBQVEsRUFBRSxrQkFBa0I7S0FDN0I7Q0FDRixDQUFDO0FBT0YsTUFBTSxPQUFPLHVCQUF1QjtJQWtCekI7SUFDeUI7SUFDeEI7SUFDQTtJQUNBO0lBQ0E7SUF0QlYsZUFBZSxDQUFtQjtJQUNsQywwQkFBMEIsQ0FBVTtJQUNwQyxVQUFVLENBQVU7SUFDcEIsVUFBVSxDQUFvQjtJQUM5QixRQUFRLEdBQVUsRUFBRSxDQUFDO0lBQ3JCLFlBQVksQ0FBZTtJQUMzQixtQkFBbUIsQ0FBVTtJQUM3QixRQUFRLEdBQUcsS0FBSyxDQUFDO0lBRWpCOztPQUVHO0lBQ0gsZUFBZSxHQUFHLEtBQUssQ0FBQztJQUN4QixxQkFBcUIsR0FBYSxFQUFFLENBQUM7SUFDckMsaUJBQWlCLENBQW1DO0lBRXBELFlBQ1MsU0FBZ0QsRUFDdkIsSUFBUyxFQUNqQyxvQkFBMEMsRUFD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WUFBWSxDQUMzQyxLQUFLLEVBQ0wsSUFBSSxDQUFDLGVBQWUsRUFDcEIsSUFBSSxDQUFDLDBCQUEwQixDQUNoQyxDQUFDO0lBQ0osQ0FBQztJQUVELHdDQUF3QztJQUN4QyxlQUFlLENBQUMsS0FBYTtRQUMzQixPQUFPLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxlQUFlLENBQzlDLEtBQUssRUFDTCxJQUFJLENBQUMsZUFBZSxFQUNwQixhQUFhLENBQ2QsQ0FBQztJQUNKLENBQUM7d0dBdEtVLHVCQUF1Qiw4Q0FtQnhCLGVBQWU7NEZBbkJkLHVCQUF1Qix3REN4QnBDLDQzRUFtREE7OzRGRDNCYSx1QkFBdUI7a0JBTG5DLFNBQVM7K0JBQ0Usa0JBQWtCOzswQkF1QnpCLE1BQU07MkJBQUMsZUFBZSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgT25Jbml0LCBJbmplY3QgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHsgTWF0RGlhbG9nUmVmLCBNQVRfRElBTE9HX0RBVEEgfSBmcm9tIFwiQGFuZ3VsYXIvbWF0ZXJpYWwvZGlhbG9nXCI7XG5pbXBvcnQgeyBVbnR5cGVkRm9ybUdyb3VwLCBVbnR5cGVkRm9ybUJ1aWxkZXIsIFZhbGlkYXRvcnMgfSBmcm9tIFwiQGFuZ3VsYXIvZm9ybXNcIjtcbmltcG9ydCB7IEVudGl0eUZpbGVTZXJ2aWNlIH0gZnJvbSAnLi4vZW50aXR5LWZpbGUuc2VydmljZSc7XG5pbXBvcnQgeyBGaWxlRHJvcHBlckNvbmZpZyB9IGZyb20gJy4uLy4uL2ZpbGUtZHJvcHBlci9maWxlLWRyb3BwZXIubW9kZWwnO1xuaW1wb3J0IHsgVmlld2VyQ29uZmlnIH0gZnJvbSAnLi4vLi4vZG9jdW1lbnQtdmlld2VyL3ZpZXdlci1jb25maWcubW9kZWwnO1xuaW1wb3J0IHsgRm9ybVZhbGlkYXRvclNlcnZpY2UgfSBmcm9tICcuLi8uLi9jb3JlL2Zvcm0tdmFsaWRhdG9yLnNlcnZpY2UnO1xuaW1wb3J0IHsgQWxlcnRTZXJ2aWNlIH0gZnJvbSBcIi4uLy4uL2NvcmUvYWxlcnQuc2VydmljZVwiO1xuaW1wb3J0IHtcbiAgVGVjaGxpZnlUYWdnZXJUYWdGb3JtQ29uZmlnTW9kZWxcbn0gZnJvbSBcIi4uLy4uL3RlY2hsaWZ5LXRhZ2dlci10YWctZm9ybS1maWVsZC90ZWNobGlmeS10YWdnZXItdGFnLWZvcm0tY29uZmlnLm1vZGVsXCI7XG5pbXBvcnQge09ic2VydmFibGV9IGZyb20gXCJyeGpzXCI7XG5cbmNvbnN0IGVycm9yTWVzc2FnZXM6IGFueSA9IHtcbiAgdXJsOiB7XG4gICAgcmVxdWlyZWQ6IFwiRmlsZSBpcyByZXF1aXJlZFwiXG4gIH0sXG59O1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdlbnRpdHktZmlsZS1mb3JtJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2VudGl0eS1maWxlLWZvcm0uY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9lbnRpdHktZmlsZS1mb3JtLmNvbXBvbmVudC5jc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBFbnRpdHlGaWxlRm9ybUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIGVudGl0eUZpbGVHcm91cDogVW50eXBlZEZvcm1Hcm91cDtcbiAgYXNzaWdubWVudEZpbGVGaXJzdEF0dGVtcHQ6IGJvb2xlYW47XG4gIHVwZGF0ZU1vZGU6IGJvb2xlYW47XG4gIGZpbGVDb25maWc6IEZpbGVEcm9wcGVyQ29uZmlnO1xuICBmaWxlTGlzdDogYW55W10gPSBbXTtcbiAgdmlld2VyQ29uZmlnOiBWaWV3ZXJDb25maWc7XG4gIGhpZGVUaXRsZUFuZERldGFpbHM6IGJvb2xlYW47XG4gIGlzU2F2aW5nID0gZmFsc2U7XG5cbiAgLyoqXG4gICAqIFNob3VsZCB3ZSBhbGxvdyB0YWdnaW5nIGVudGl0eS1maWxlcz9cbiAgICovXG4gIHVzZVRlY2hsaWZ5VGFncyA9IGZhbHNlO1xuICB0ZWNobGlmeVRhZ0NhdGVnb3JpZXM6IHN0cmluZ1tdID0gW107XG4gIHRlY2hsaWZ5VGFnQ29uZmlnOiBUZWNobGlmeVRhZ2dlclRhZ0Zvcm1Db25maWdNb2RlbDtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwdWJsaWMgZGlhbG9nUmVmOiBNYXREaWFsb2dSZWY8RW50aXR5RmlsZUZvcm1Db21wb25lbnQ+LFxuICAgIEBJbmplY3QoTUFUX0RJQUxPR19EQVRBKSBwdWJsaWMgZGF0YTogYW55LFxuICAgIHByaXZhdGUgZm9ybVZhbGlkYXRvclNlcnZpY2U6IEZvcm1WYWxpZGF0b3JTZXJ2aWNlLFxuICAgIHByaXZhdGUgZmI6IFVudHlwZWRGb3JtQnVpbGRlcixcbiAgICBwcml2YXRlIGVudGl0eUZpbGVTZXJ2aWNlOiBFbnRpdHlGaWxlU2VydmljZSxcbiAgICBwcml2YXRlIGFsZXJ0U2VydmljZTogQWxlcnRTZXJ2aWNlXG4gICkge1xuICAgIHRoaXMuY3JlYXRlRm9ybSgpO1xuICB9XG5cbiAgLyoqIE1ldGhvZCB0byBjcmVhdGUgYSBmb3JtICoqL1xuICBwcml2YXRlIGNyZWF0ZUZvcm0oKSB7XG4gICAgLy9UT0RPOiBGaW5pYWxpemUgYW5kIGFkZCBtb3JlIHZhbGlkYXRpb25zLlxuICAgIHRoaXMuZW50aXR5RmlsZUdyb3VwID0gdGhpcy5mYi5ncm91cCh7XG4gICAgICBpZDogWycnXSxcbiAgICAgIHRpdGxlOiBbJyddLFxuICAgICAgZGV0YWlsczogWycnXSxcbiAgICAgIGVudGl0eV90eXBlOiBbJyddLFxuICAgICAgZW50aXR5X2lkOiBbXSxcbiAgICAgIGZpbGU6IFsnJywgVmFsaWRhdG9ycy5yZXF1aXJlZF0sXG4gICAgICB1cmw6IFsnJywgVmFsaWRhdG9ycy5yZXF1aXJlZF0sXG4gICAgICBmaWxlX3NpemU6IFsnJywgVmFsaWRhdG9ycy5yZXF1aXJlZF0sXG4gICAgICB0YWdfaWRzOiBbW11dXG4gICAgfSk7XG4gIH1cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5kYXRhLmVudGl0eSkge1xuICAgICAgdGhpcy5lbnRpdHlGaWxlR3JvdXAuZ2V0KCdlbnRpdHlfdHlwZScpLnNldFZhbHVlKHRoaXMuZGF0YS5lbnRpdHkuZW50aXR5X3R5cGUpO1xuICAgICAgdGhpcy5lbnRpdHlGaWxlR3JvdXAuZ2V0KCdlbnRpdHlfaWQnKS5zZXRWYWx1ZSh0aGlzLmRhdGEuZW50aXR5LmVudGl0eV9pZCk7XG4gICAgfVxuICAgIGlmICh0aGlzLmRhdGEuZmlsZSkge1xuICAgICAgdGhpcy51cGRhdGVNb2RlID0gdHJ1ZTtcbiAgICAgIHRoaXMuZW50aXR5RmlsZUdyb3VwLnBhdGNoVmFsdWUodGhpcy5kYXRhLmZpbGUpO1xuICAgIH1cblxuICAgIGlmICh0aGlzLmRhdGE/LmhpZGVUaXRsZUFuZERldGFpbHMpIHtcbiAgICAgIHRoaXMuaGlkZVRpdGxlQW5kRGV0YWlscyA9IHRoaXMuZGF0YT8uaGlkZVRpdGxlQW5kRGV0YWlscztcbiAgICB9XG5cbiAgICBpZiAodGhpcy5kYXRhPy51c2VUZWNobGlmeVRhZ3MpIHtcbiAgICAgIHRoaXMudXNlVGVjaGxpZnlUYWdzID0gdGhpcy5kYXRhPy51c2VUZWNobGlmeVRhZ3M7XG4gICAgICB0aGlzLnRlY2hsaWZ5VGFnQ2F0ZWdvcmllcyA9IHRoaXMuZGF0YT8udGVjaGxpZnlUYWdDYXRlZ29yaWVzO1xuICAgICAgdGhpcy50ZWNobGlmeVRhZ0NvbmZpZyA9IHRoaXMuZGF0YT8udGVjaGxpZnlUYWdDb25maWc7XG4gICAgICBpZiAodGhpcy5kYXRhLmZpbGU/LnRhZ3MpIHtcbiAgICAgICAgdGhpcy5lbnRpdHlGaWxlR3JvdXAuZ2V0KCd0YWdfaWRzJykuc2V0VmFsdWUoXG4gICAgICAgICAgKHRoaXMuZGF0YS5maWxlPy50YWdzIGFzIFtdKS5tYXAoKHRhZzogYW55KSA9PiB0YWcuaWQpXG4gICAgICAgICk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy9GaWxlIGRyb3BwZXIgY29uZmlnXG4gICAgdGhpcy5maWxlQ29uZmlnID0ge1xuICAgICAgZmlsZUlkOiBcInN1YmplY3RGaWxlXCIsXG4gICAgICBjb250YWluZXJJZDogXCJzdWJqZWN0RmlsZUNvbnRhaW5lclwiLFxuICAgICAgc3R5bGVzOiB7XG4gICAgICAgIGhlaWdodDogXCIyMDBweFwiXG4gICAgICB9LFxuICAgICAgbXVsdGlwbGU6IGZhbHNlLFxuICAgICAgYWNjZXB0RmlsZTogXCIqXCIsXG4gICAgICBtYXhTaXplOiAxMCxcbiAgICAgIGFjY2VwdEZpbGVUZXh0OiBcIkFsbCBGaWxlc1wiXG4gICAgfTtcblxuICAgIHRoaXMudmlld2VyQ29uZmlnID0ge1xuICAgICAgdmlld2VyU3R5bGU6IHtcbiAgICAgICAgaGVpZ2h0OiAnMjAwcHgnLFxuICAgICAgICB3aWR0aDogJzEwMCUnXG4gICAgICB9XG4gICAgfVxuICB9XG5cblxuICAvL01ldGhvZCB0byB0cmlnZ2VyIHN1Ym1pdFxuICBhc3luYyBzdWJtaXQoKSB7XG4gICAgdGhpcy5hc3NpZ25tZW50RmlsZUZpcnN0QXR0ZW1wdCA9IHRydWU7XG4gICAgaWYgKCF0aGlzLmVudGl0eUZpbGVHcm91cC52YWxpZCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICBjb25zdCBtb2RlbCA9IHRoaXMuZW50aXR5RmlsZUdyb3VwLnZhbHVlO1xuXG4gICAgaWYgKHRoaXMuaGlkZVRpdGxlQW5kRGV0YWlscykge1xuICAgICAgbW9kZWwudGl0bGUgPSBtb2RlbC5maWxlO1xuICAgIH1cbiAgICBtb2RlbC50YWdfaWRzID0gbW9kZWwudGFnX2lkcy50b1N0cmluZygpO1xuICAgIGNvbnN0IHBhcmFtczogYW55ID0ge1xuICAgICAgd2l0aDogJ2NyZWF0b3IsdGFncydcbiAgICB9O1xuICAgIHRoaXMuaXNTYXZpbmcgPSB0cnVlO1xuICAgIGNvbnN0IHJlcXVlc3Q6IE9ic2VydmFibGU8YW55PiA9IHRoaXMudXBkYXRlTW9kZVxuICAgICAgPyB0aGlzLmVudGl0eUZpbGVTZXJ2aWNlLnVwZGF0ZShtb2RlbCwgcGFyYW1zKVxuICAgICAgOiB0aGlzLmVudGl0eUZpbGVTZXJ2aWNlLnN0b3JlKG1vZGVsLCBwYXJhbXMpO1xuICAgIHJlcXVlc3Quc3Vic2NyaWJlKHtcbiAgICAgICAgbmV4dDogKHJlc3VsdDogYW55KSA9PiB7XG4gICAgICAgICAgdGhpcy5pc1NhdmluZyA9IGZhbHNlO1xuICAgICAgICAgIHRoaXMuZGlhbG9nUmVmLmNsb3NlKHJlc3VsdC5pdGVtKTtcbiAgICAgICAgICB0aGlzLmFsZXJ0U2VydmljZS5hZGRBbGVydChcbiAgICAgICAgICAgICdGaWxlIHN1Ym1pdHRlZCBzdWNjZXNzZnVsbHknLFxuICAgICAgICAgICAgJ3N1Y2Nlc3MnXG4gICAgICAgICAgKTtcbiAgICAgICAgfSxcbiAgICAgICAgZXJyb3I6ICgpID0+IHRoaXMuaXNTYXZpbmcgPSBmYWxzZVxuICAgIH0pO1xuICB9XG5cbiAgYXN5bmMgZmlsZUNoYW5nZWQoZXZlbnQ6IGFueSkge1xuICAgIHRoaXMuZmlsZUxpc3QgPSBldmVudDtcblxuICAgIGlmICh0aGlzLmZpbGVMaXN0Lmxlbmd0aCA+IDApIHtcblxuICAgICAgY29uc3QgcmVzdWx0OiBhbnkgPSBhd2FpdCB0aGlzLmVudGl0eUZpbGVTZXJ2aWNlLnVwbG9hZEVudGl0eUZpbGUoXG4gICAgICAgIHRoaXMuZmlsZUxpc3RbMF0sXG4gICAgICApO1xuICAgICAgdGhpcy5lbnRpdHlGaWxlR3JvdXAucGF0Y2hWYWx1ZShyZXN1bHQuaXRlbSk7O1xuICAgICAgdGhpcy5maWxlTGlzdCA9IFtdO1xuICAgIH1cbiAgfVxuXG5cbiAgYXN5bmMgcmVtb3ZlRmlsZSgpIHtcbiAgICBpZiAodGhpcy5lbnRpdHlGaWxlR3JvdXAudmFsdWUuZmlsZSkge1xuICAgICAgdHJ5IHtcbiAgICAgICAgdGhpcy5lbnRpdHlGaWxlR3JvdXAucGF0Y2hWYWx1ZSh7XG4gICAgICAgICAgZmlsZTogXCJcIixcbiAgICAgICAgICB1cmw6IFwiXCJcbiAgICAgICAgfSk7XG4gICAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgICB0aGlzLmFsZXJ0U2VydmljZS5hZGRBbGVydChcIlVuYWJsZSB0byByZW1vdmUgZmlsZSwgdHJ5IGxhdGVyXCIsIFwid2FyblwiKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvKipNZXRob2QgdG8gZXZhbHVhdGUgZm9ybSBmaWVsZHMqL1xuICBpc0ZpZWxkVmFsaWQoZmllbGQ6IHN0cmluZykge1xuICAgIHJldHVybiB0aGlzLmZvcm1WYWxpZGF0b3JTZXJ2aWNlLmlzRmllbGRWYWxpZChcbiAgICAgIGZpZWxkLFxuICAgICAgdGhpcy5lbnRpdHlGaWxlR3JvdXAsXG4gICAgICB0aGlzLmFzc2lnbm1lbnRGaWxlRmlyc3RBdHRlbXB0XG4gICAgKTtcbiAgfVxuXG4gIC8qKk1ldGhvZCB0byBmaW5kIGVycm9yIGluIGZvcm0gZmllbGRzKi9cbiAgZ2V0RXJyb3JNZXNzYWdlKGZpZWxkOiBzdHJpbmcpIHtcbiAgICByZXR1cm4gdGhpcy5mb3JtVmFsaWRhdG9yU2VydmljZS5nZXRFcnJvck1lc3NhZ2UoXG4gICAgICBmaWVsZCxcbiAgICAgIHRoaXMuZW50aXR5RmlsZUdyb3VwLFxuICAgICAgZXJyb3JNZXNzYWdlc1xuICAgICk7XG4gIH1cblxufVxuIiwiPGZvcm0gW2Zvcm1Hcm91cF09XCJlbnRpdHlGaWxlR3JvdXBcIiAobmdTdWJtaXQpPVwic3VibWl0KClcIj5cbiAgPGRpdiBmeExheW91dD1cImNvbHVtblwiIGNsYXNzPVwibWF0LXR5cG9ncmFwaHlcIj5cbiAgICA8ZGl2IG1hdC1kaWFsb2ctdGl0bGUgY2xhc3M9XCJ0ZXh0LWNlbnRlclwiPlxuICAgICAgPGRpdj5FbnRpdHkgRmlsZTwvZGl2PlxuICAgIDwvZGl2PlxuICAgIDxkaXYgbWF0LWRpYWxvZy1jb250ZW50IGZ4TGF5b3V0PVwiY29sdW1uXCIgZnhMYXlvdXRBbGlnbi49XCJzdGFydFwiPlxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIiFoaWRlVGl0bGVBbmREZXRhaWxzXCI+XG4gICAgICAgIDxtYXQtZm9ybS1maWVsZD5cbiAgICAgICAgICA8aW5wdXQgdHlwZT1cInRleHRcIiBtYXRJbnB1dCBmb3JtQ29udHJvbE5hbWU9XCJ0aXRsZVwiIHBsYWNlaG9sZGVyPVwiVGl0bGVcIiBhdXRvY29tcGxldGU9XCJvZmZcIj5cbiAgICAgICAgPC9tYXQtZm9ybS1maWVsZD5cbiAgICAgICAgPG1hdC1mb3JtLWZpZWxkPlxuICAgICAgICAgIDx0ZXh0YXJlYSBtYXRJbnB1dCBmb3JtQ29udHJvbE5hbWU9XCJkZXRhaWxzXCIgcGxhY2Vob2xkZXI9XCJEZXRhaWxzXCIgYXV0b2NvbXBsZXRlPVwib2ZmXCI+PC90ZXh0YXJlYT5cbiAgICAgICAgPC9tYXQtZm9ybS1maWVsZD5cbiAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cInVzZVRlY2hsaWZ5VGFnc1wiPlxuICAgICAgICA8bWF0LWZvcm0tZmllbGQ+XG4gICAgICAgICAgPG1hdC1sYWJlbD5UYWc8L21hdC1sYWJlbD5cbiAgICAgICAgICA8YXBwLXRlY2hsaWZ5LXRhZ2dlci10YWctZm9ybS1maWVsZFxuICAgICAgICAgICAgW2NhdGVnb3JpZXNdPVwidGVjaGxpZnlUYWdDYXRlZ29yaWVzXCJcbiAgICAgICAgICAgIG1vZGVsVHlwZT1cImVudGl0eS1maWxlXCJcbiAgICAgICAgICAgIGZvcm1Db250cm9sTmFtZT1cInRhZ19pZHNcIlxuICAgICAgICAgICAgW21vZGVsSWRdPVwiZW50aXR5RmlsZUdyb3VwLmdldCgnaWQnKS52YWx1ZVwiXG4gICAgICAgICAgICBwbGFjZWhvbGRlcj1cIkVudGVyIG5ldyB0YWdcIlxuICAgICAgICAgICAgW2NvbmZpZ109XCJ0ZWNobGlmeVRhZ0NvbmZpZ1wiXG4gICAgICAgICAgPjwvYXBwLXRlY2hsaWZ5LXRhZ2dlci10YWctZm9ybS1maWVsZD5cbiAgICAgICAgPC9tYXQtZm9ybS1maWVsZD5cbiAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgPG5nLXRlbXBsYXRlICNmaWxlVXBsb2FkPlxuICAgICAgICA8c2VjdGlvbiBmeEZsZXg9XCIxMDAlXCI+XG4gICAgICAgICAgPGRpdj5FbnRpdHkgRmlsZSo8L2Rpdj5cbiAgICAgICAgICA8YXBwLWZpbGUtZHJvcHBlciBbY29uZmlnXT1cImZpbGVDb25maWdcIiAoZmlsZUNoYW5nZWQpPVwiZmlsZUNoYW5nZWQoJGV2ZW50KVwiIFtmaWxlQXJyYXldPVwiZmlsZUxpc3RcIj5cbiAgICAgICAgICA8L2FwcC1maWxlLWRyb3BwZXI+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cInRleHQtZGFuZ2VyXCIgKm5nSWY9XCJpc0ZpZWxkVmFsaWQoJ3VybCcpXCI+XG4gICAgICAgICAgICB7e2dldEVycm9yTWVzc2FnZShcInVybFwiKX19XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvc2VjdGlvbj5cbiAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgICA8ZGl2IGZ4RmxleD1cIjEwMCVcIiBjbGFzcz1cIm10LTJcIiAqbmdJZj1cImVudGl0eUZpbGVHcm91cC5nZXQoJ3VybCcpLnZhbHVlO2Vsc2UgZmlsZVVwbG9hZDtcIj5cbiAgICAgICAgPGFwcC1kb2N1bWVudC12aWV3ZXIgW2ZpbGVdPVwiZW50aXR5RmlsZUdyb3VwLmdldCgnZmlsZScpLnZhbHVlXCIgW2ZpbGVVcmxdPVwiZW50aXR5RmlsZUdyb3VwLmdldCgndXJsJykudmFsdWVcIlxuICAgICAgICAgIFtjb25maWddPVwidGhpcy52aWV3ZXJDb25maWdcIiAocmVtb3ZlKT1cInJlbW92ZUZpbGUoKVwiIFtkaXNhYmxlRWRpdF09XCJ1cGRhdGVNb2RlXCI+XG4gICAgICAgIDwvYXBwLWRvY3VtZW50LXZpZXdlcj5cbiAgICAgIDwvZGl2PlxuICAgICAgPGRpdiBjbGFzcz1cIm10LTQgbWItMlwiIGZ4TGF5b3V0PVwicm93XCIgZnhMYXlvdXRHYXA9XCIzMHB4XCIgZnhMYXlvdXRBbGlnbj1cImVuZFwiIGZ4RmxleD1cIjEwMCVcIj5cbiAgICAgICAgPGJ1dHRvbiBbZGlzYWJsZWRdPVwiaXNTYXZpbmdcIiBtYXQtcmFpc2VkLWJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgKGNsaWNrKT1cImRpYWxvZ1JlZi5jbG9zZSgpXCI+XG4gICAgICAgICAgQ2FuY2VsXG4gICAgICAgIDwvYnV0dG9uPlxuICAgICAgICA8YnV0dG9uIFtkaXNhYmxlZF09XCJpc1NhdmluZ1wiIG1hdC1yYWlzZWQtYnV0dG9uIHR5cGU9XCJzdWJtaXRcIiBjb2xvcj1cInByaW1hcnlcIj5TYXZlPC9idXR0b24+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG48L2Zvcm0+XG4iXX0=
174
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW50aXR5LWZpbGUtZm9ybS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtdGVjaGxpZnktY29yZS9zcmMvbGliL2VudGl0eS1maWxlcy9lbnRpdHktZmlsZS1mb3JtL2VudGl0eS1maWxlLWZvcm0uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LXRlY2hsaWZ5LWNvcmUvc3JjL2xpYi9lbnRpdHktZmlsZXMvZW50aXR5LWZpbGUtZm9ybS9lbnRpdHktZmlsZS1mb3JtLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQVUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzFELE9BQU8sRUFBZ0IsZUFBZSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDekUsT0FBTyxFQUF3QyxVQUFVLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7Ozs7Ozs7Ozs7Ozs7O0FBV2xGLE1BQU0sYUFBYSxHQUFRO0lBQ3pCLEdBQUcsRUFBRTtRQUNILFFBQVEsRUFBRSxrQkFBa0I7S0FDN0I7Q0FDRixDQUFDO0FBT0YsTUFBTSxPQUFPLHVCQUF1QjtJQWtCekI7SUFDeUI7SUFDeEI7SUFDQTtJQUNBO0lBQ0E7SUF0QlYsZUFBZSxDQUFtQjtJQUNsQywwQkFBMEIsQ0FBVTtJQUNwQyxVQUFVLENBQVU7SUFDcEIsVUFBVSxDQUFvQjtJQUM5QixRQUFRLEdBQVUsRUFBRSxDQUFDO0lBQ3JCLFlBQVksQ0FBZTtJQUMzQixtQkFBbUIsQ0FBVTtJQUM3QixRQUFRLEdBQUcsS0FBSyxDQUFDO0lBRWpCOztPQUVHO0lBQ0gsZUFBZSxHQUFHLEtBQUssQ0FBQztJQUN4QixxQkFBcUIsR0FBYSxFQUFFLENBQUM7SUFDckMsaUJBQWlCLENBQW1DO0lBRXBELFlBQ1MsU0FBZ0QsRUFDdkIsSUFBUyxFQUNqQyxvQkFBMEMsRUFD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SUFDSCxDQUFDO0lBRUQsbUNBQW1DO0lBQ25DLFlBQVksQ0FBQyxLQUFhO1FBQ3hCLE9BQU8sSUFBSSxDQUFDLG9CQUFvQixDQUFDLFlBQVksQ0FDM0MsS0FBSyxFQUNMLElBQUksQ0FBQyxlQUFlLEVBQ3BCLElBQUksQ0FBQywwQkFBMEIsQ0FDaEMsQ0FBQztJQUNKLENBQUM7SUFFRCx3Q0FBd0M7SUFDeEMsZUFBZSxDQUFDLEtBQWE7UUFDM0IsT0FBTyxJQUFJLENBQUMsb0JBQW9CLENBQUMsZUFBZSxDQUM5QyxLQUFLLEVBQ0wsSUFBSSxDQUFDLGVBQWUsRUFDcEIsYUFBYSxDQUNkLENBQUM7SUFDSixDQUFDO3dHQXRLVSx1QkFBdUIsOENBbUJ4QixlQUFlOzRGQW5CZCx1QkFBdUIsd0RDeEJwQyw0M0VBbURBOzs0RkQzQmEsdUJBQXVCO2tCQUxuQyxTQUFTOytCQUNFLGtCQUFrQjs7MEJBdUJ6QixNQUFNOzJCQUFDLGVBQWUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIE9uSW5pdCwgSW5qZWN0IH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcbmltcG9ydCB7IE1hdERpYWxvZ1JlZiwgTUFUX0RJQUxPR19EQVRBIH0gZnJvbSBcIkBhbmd1bGFyL21hdGVyaWFsL2RpYWxvZ1wiO1xuaW1wb3J0IHsgVW50eXBlZEZvcm1Hcm91cCwgVW50eXBlZEZvcm1CdWlsZGVyLCBWYWxpZGF0b3JzIH0gZnJvbSBcIkBhbmd1bGFyL2Zvcm1zXCI7XG5pbXBvcnQgeyBFbnRpdHlGaWxlU2VydmljZSB9IGZyb20gJy4uL2VudGl0eS1maWxlLnNlcnZpY2UnO1xuaW1wb3J0IHsgRmlsZURyb3BwZXJDb25maWcgfSBmcm9tICcuLi8uLi9maWxlLWRyb3BwZXIvZmlsZS1kcm9wcGVyLm1vZGVsJztcbmltcG9ydCB7IFZpZXdlckNvbmZpZyB9IGZyb20gJy4uLy4uL2RvY3VtZW50LXZpZXdlci92aWV3ZXItY29uZmlnLm1vZGVsJztcbmltcG9ydCB7IEZvcm1WYWxpZGF0b3JTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vY29yZS9mb3JtLXZhbGlkYXRvci5zZXJ2aWNlJztcbmltcG9ydCB7IEFsZXJ0U2VydmljZSB9IGZyb20gXCIuLi8uLi9jb3JlL2FsZXJ0LnNlcnZpY2VcIjtcbmltcG9ydCB7XG4gIFRlY2hsaWZ5VGFnZ2VyVGFnRm9ybUNvbmZpZ01vZGVsXG59IGZyb20gXCIuLi8uLi90ZWNobGlmeS10YWdnZXItdGFnLWZvcm0tZmllbGQvdGVjaGxpZnktdGFnZ2VyLXRhZy1mb3JtLWNvbmZpZy5tb2RlbFwiO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gXCJyeGpzXCI7XG5cbmNvbnN0IGVycm9yTWVzc2FnZXM6IGFueSA9IHtcbiAgdXJsOiB7XG4gICAgcmVxdWlyZWQ6IFwiRmlsZSBpcyByZXF1aXJlZFwiXG4gIH0sXG59O1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdlbnRpdHktZmlsZS1mb3JtJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2VudGl0eS1maWxlLWZvcm0uY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9lbnRpdHktZmlsZS1mb3JtLmNvbXBvbmVudC5jc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBFbnRpdHlGaWxlRm9ybUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIGVudGl0eUZpbGVHcm91cDogVW50eXBlZEZvcm1Hcm91cDtcbiAgYXNzaWdubWVudEZpbGVGaXJzdEF0dGVtcHQ6IGJvb2xlYW47XG4gIHVwZGF0ZU1vZGU6IGJvb2xlYW47XG4gIGZpbGVDb25maWc6IEZpbGVEcm9wcGVyQ29uZmlnO1xuICBmaWxlTGlzdDogYW55W10gPSBbXTtcbiAgdmlld2VyQ29uZmlnOiBWaWV3ZXJDb25maWc7XG4gIGhpZGVUaXRsZUFuZERldGFpbHM6IGJvb2xlYW47XG4gIGlzU2F2aW5nID0gZmFsc2U7XG5cbiAgLyoqXG4gICAqIFNob3VsZCB3ZSBhbGxvdyB0YWdnaW5nIGVudGl0eS1maWxlcz9cbiAgICovXG4gIHVzZVRlY2hsaWZ5VGFncyA9IGZhbHNlO1xuICB0ZWNobGlmeVRhZ0NhdGVnb3JpZXM6IHN0cmluZ1tdID0gW107XG4gIHRlY2hsaWZ5VGFnQ29uZmlnOiBUZWNobGlmeVRhZ2dlclRhZ0Zvcm1Db25maWdNb2RlbDtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwdWJsaWMgZGlhbG9nUmVmOiBNYXREaWFsb2dSZWY8RW50aXR5RmlsZUZvcm1Db21wb25lbnQ+LFxuICAgIEBJbmplY3QoTUFUX0RJQUxPR19EQVRBKSBwdWJsaWMgZGF0YTogYW55LFxuICAgIHByaXZhdGUgZm9ybVZhbGlkYXRvclNlcnZpY2U6IEZvcm1WYWxpZGF0b3JTZXJ2aWNlLFxuICAgIHByaXZhdGUgZmI6IFVudHlwZWRGb3JtQnVpbGRlcixcbiAgICBwcml2YXRlIGVudGl0eUZpbGVTZXJ2aWNlOiBFbnRpdHlGaWxlU2VydmljZSxcbiAgICBwcml2YXRlIGFsZXJ0U2VydmljZTogQWxlcnRTZXJ2aWNlXG4gICkge1xuICAgIHRoaXMuY3JlYXRlRm9ybSgpO1xuICB9XG5cbiAgLyoqIE1ldGhvZCB0byBjcmVhdGUgYSBmb3JtICoqL1xuICBwcml2YXRlIGNyZWF0ZUZvcm0oKSB7XG4gICAgLy9UT0RPOiBGaW5pYWxpemUgYW5kIGFkZCBtb3JlIHZhbGlkYXRpb25zLlxuICAgIHRoaXMuZW50aXR5RmlsZUdyb3VwID0gdGhpcy5mYi5ncm91cCh7XG4gICAgICBpZDogWycnXSxcbiAgICAgIHRpdGxlOiBbJyddLFxuICAgICAgZGV0YWlsczogWycnXSxcbiAgICAgIGVudGl0eV90eXBlOiBbJyddLFxuICAgICAgZW50aXR5X2lkOiBbXSxcbiAgICAgIGZpbGU6IFsnJywgVmFsaWRhdG9ycy5yZXF1aXJlZF0sXG4gICAgICB1cmw6IFsnJywgVmFsaWRhdG9ycy5yZXF1aXJlZF0sXG4gICAgICBmaWxlX3NpemU6IFsnJywgVmFsaWRhdG9ycy5yZXF1aXJlZF0sXG4gICAgICB0YWdfaWRzOiBbW11dXG4gICAgfSk7XG4gIH1cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5kYXRhLmVudGl0eSkge1xuICAgICAgdGhpcy5lbnRpdHlGaWxlR3JvdXAuZ2V0KCdlbnRpdHlfdHlwZScpLnNldFZhbHVlKHRoaXMuZGF0YS5lbnRpdHkuZW50aXR5X3R5cGUpO1xuICAgICAgdGhpcy5lbnRpdHlGaWxlR3JvdXAuZ2V0KCdlbnRpdHlfaWQnKS5zZXRWYWx1ZSh0aGlzLmRhdGEuZW50aXR5LmVudGl0eV9pZCk7XG4gICAgfVxuICAgIGlmICh0aGlzLmRhdGEuZmlsZSkge1xuICAgICAgdGhpcy51cGRhdGVNb2RlID0gdHJ1ZTtcbiAgICAgIHRoaXMuZW50aXR5RmlsZUdyb3VwLnBhdGNoVmFsdWUodGhpcy5kYXRhLmZpbGUpO1xuICAgIH1cblxuICAgIGlmICh0aGlzLmRhdGE/LmhpZGVUaXRsZUFuZERldGFpbHMpIHtcbiAgICAgIHRoaXMuaGlkZVRpdGxlQW5kRGV0YWlscyA9IHRoaXMuZGF0YT8uaGlkZVRpdGxlQW5kRGV0YWlscztcbiAgICB9XG5cbiAgICBpZiAodGhpcy5kYXRhPy51c2VUZWNobGlmeVRhZ3MpIHtcbiAgICAgIHRoaXMudXNlVGVjaGxpZnlUYWdzID0gdGhpcy5kYXRhPy51c2VUZWNobGlmeVRhZ3M7XG4gICAgICB0aGlzLnRlY2hsaWZ5VGFnQ2F0ZWdvcmllcyA9IHRoaXMuZGF0YT8udGVjaGxpZnlUYWdDYXRlZ29yaWVzO1xuICAgICAgdGhpcy50ZWNobGlmeVRhZ0NvbmZpZyA9IHRoaXMuZGF0YT8udGVjaGxpZnlUYWdDb25maWc7XG4gICAgICBpZiAodGhpcy5kYXRhLmZpbGU/LnRhZ3MpIHtcbiAgICAgICAgdGhpcy5lbnRpdHlGaWxlR3JvdXAuZ2V0KCd0YWdfaWRzJykuc2V0VmFsdWUoXG4gICAgICAgICAgKHRoaXMuZGF0YS5maWxlPy50YWdzIGFzIFtdKS5tYXAoKHRhZzogYW55KSA9PiB0YWcuaWQpXG4gICAgICAgICk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy9GaWxlIGRyb3BwZXIgY29uZmlnXG4gICAgdGhpcy5maWxlQ29uZmlnID0ge1xuICAgICAgZmlsZUlkOiBcInN1YmplY3RGaWxlXCIsXG4gICAgICBjb250YWluZXJJZDogXCJzdWJqZWN0RmlsZUNvbnRhaW5lclwiLFxuICAgICAgc3R5bGVzOiB7XG4gICAgICAgIGhlaWdodDogXCIyMDBweFwiXG4gICAgICB9LFxuICAgICAgbXVsdGlwbGU6IGZhbHNlLFxuICAgICAgYWNjZXB0RmlsZTogXCIqXCIsXG4gICAgICBtYXhTaXplOiAxMCxcbiAgICAgIGFjY2VwdEZpbGVUZXh0OiBcIkFsbCBGaWxlc1wiXG4gICAgfTtcblxuICAgIHRoaXMudmlld2VyQ29uZmlnID0ge1xuICAgICAgdmlld2VyU3R5bGU6IHtcbiAgICAgICAgaGVpZ2h0OiAnMjAwcHgnLFxuICAgICAgICB3aWR0aDogJzEwMCUnXG4gICAgICB9XG4gICAgfVxuICB9XG5cblxuICAvL01ldGhvZCB0byB0cmlnZ2VyIHN1Ym1pdFxuICBhc3luYyBzdWJtaXQoKSB7XG4gICAgdGhpcy5hc3NpZ25tZW50RmlsZUZpcnN0QXR0ZW1wdCA9IHRydWU7XG4gICAgaWYgKCF0aGlzLmVudGl0eUZpbGVHcm91cC52YWxpZCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICBjb25zdCBtb2RlbCA9IHRoaXMuZW50aXR5RmlsZUdyb3VwLnZhbHVlO1xuXG4gICAgaWYgKHRoaXMuaGlkZVRpdGxlQW5kRGV0YWlscykge1xuICAgICAgbW9kZWwudGl0bGUgPSBtb2RlbC5maWxlO1xuICAgIH1cbiAgICBtb2RlbC50YWdfaWRzID0gbW9kZWwudGFnX2lkcy50b1N0cmluZygpO1xuICAgIGNvbnN0IHBhcmFtczogYW55ID0ge1xuICAgICAgd2l0aDogJ2NyZWF0b3IsdGFncydcbiAgICB9O1xuICAgIHRoaXMuaXNTYXZpbmcgPSB0cnVlO1xuICAgIGNvbnN0IHJlcXVlc3Q6IE9ic2VydmFibGU8YW55PiA9IHRoaXMudXBkYXRlTW9kZVxuICAgICAgPyB0aGlzLmVudGl0eUZpbGVTZXJ2aWNlLnVwZGF0ZShtb2RlbCwgcGFyYW1zKVxuICAgICAgOiB0aGlzLmVudGl0eUZpbGVTZXJ2aWNlLnN0b3JlKG1vZGVsLCBwYXJhbXMpO1xuICAgIHJlcXVlc3Quc3Vic2NyaWJlKHtcbiAgICAgIG5leHQ6IChyZXN1bHQ6IGFueSkgPT4ge1xuICAgICAgICB0aGlzLmlzU2F2aW5nID0gZmFsc2U7XG4gICAgICAgIHRoaXMuZGlhbG9nUmVmLmNsb3NlKHJlc3VsdC5pdGVtKTtcbiAgICAgICAgdGhpcy5hbGVydFNlcnZpY2UuYWRkQWxlcnQoXG4gICAgICAgICAgJ0ZpbGUgc3VibWl0dGVkIHN1Y2Nlc3NmdWxseScsXG4gICAgICAgICAgJ3N1Y2Nlc3MnXG4gICAgICAgICk7XG4gICAgICB9LFxuICAgICAgZXJyb3I6ICgpID0+IHRoaXMuaXNTYXZpbmcgPSBmYWxzZVxuICAgIH0pO1xuICB9XG5cbiAgYXN5bmMgZmlsZUNoYW5nZWQoZXZlbnQ6IGFueSkge1xuICAgIHRoaXMuZmlsZUxpc3QgPSBldmVudDtcblxuICAgIGlmICh0aGlzLmZpbGVMaXN0Lmxlbmd0aCA+IDApIHtcblxuICAgICAgY29uc3QgcmVzdWx0OiBhbnkgPSBhd2FpdCB0aGlzLmVudGl0eUZpbGVTZXJ2aWNlLnVwbG9hZEVudGl0eUZpbGUoXG4gICAgICAgIHRoaXMuZmlsZUxpc3RbMF0sIHsgZW50aXR5X3R5cGU6IHRoaXMuZW50aXR5RmlsZUdyb3VwLmdldCgnZW50aXR5X3R5cGUnKS52YWx1ZSB9XG4gICAgICApO1xuICAgICAgdGhpcy5lbnRpdHlGaWxlR3JvdXAucGF0Y2hWYWx1ZShyZXN1bHQuaXRlbSk7O1xuICAgICAgdGhpcy5maWxlTGlzdCA9IFtdO1xuICAgIH1cbiAgfVxuXG5cbiAgYXN5bmMgcmVtb3ZlRmlsZSgpIHtcbiAgICBpZiAodGhpcy5lbnRpdHlGaWxlR3JvdXAudmFsdWUuZmlsZSkge1xuICAgICAgdHJ5IHtcbiAgICAgICAgdGhpcy5lbnRpdHlGaWxlR3JvdXAucGF0Y2hWYWx1ZSh7XG4gICAgICAgICAgZmlsZTogXCJcIixcbiAgICAgICAgICB1cmw6IFwiXCJcbiAgICAgICAgfSk7XG4gICAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgICB0aGlzLmFsZXJ0U2VydmljZS5hZGRBbGVydChcIlVuYWJsZSB0byByZW1vdmUgZmlsZSwgdHJ5IGxhdGVyXCIsIFwid2FyblwiKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvKipNZXRob2QgdG8gZXZhbHVhdGUgZm9ybSBmaWVsZHMqL1xuICBpc0ZpZWxkVmFsaWQoZmllbGQ6IHN0cmluZykge1xuICAgIHJldHVybiB0aGlzLmZvcm1WYWxpZGF0b3JTZXJ2aWNlLmlzRmllbGRWYWxpZChcbiAgICAgIGZpZWxkLFxuICAgICAgdGhpcy5lbnRpdHlGaWxlR3JvdXAsXG4gICAgICB0aGlzLmFzc2lnbm1lbnRGaWxlRmlyc3RBdHRlbXB0XG4gICAgKTtcbiAgfVxuXG4gIC8qKk1ldGhvZCB0byBmaW5kIGVycm9yIGluIGZvcm0gZmllbGRzKi9cbiAgZ2V0RXJyb3JNZXNzYWdlKGZpZWxkOiBzdHJpbmcpIHtcbiAgICByZXR1cm4gdGhpcy5mb3JtVmFsaWRhdG9yU2VydmljZS5nZXRFcnJvck1lc3NhZ2UoXG4gICAgICBmaWVsZCxcbiAgICAgIHRoaXMuZW50aXR5RmlsZUdyb3VwLFxuICAgICAgZXJyb3JNZXNzYWdlc1xuICAgICk7XG4gIH1cblxufVxuIiwiPGZvcm0gW2Zvcm1Hcm91cF09XCJlbnRpdHlGaWxlR3JvdXBcIiAobmdTdWJtaXQpPVwic3VibWl0KClcIj5cbiAgPGRpdiBmeExheW91dD1cImNvbHVtblwiIGNsYXNzPVwibWF0LXR5cG9ncmFwaHlcIj5cbiAgICA8ZGl2IG1hdC1kaWFsb2ctdGl0bGUgY2xhc3M9XCJ0ZXh0LWNlbnRlclwiPlxuICAgICAgPGRpdj5FbnRpdHkgRmlsZTwvZGl2PlxuICAgIDwvZGl2PlxuICAgIDxkaXYgbWF0LWRpYWxvZy1jb250ZW50IGZ4TGF5b3V0PVwiY29sdW1uXCIgZnhMYXlvdXRBbGlnbi49XCJzdGFydFwiPlxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIiFoaWRlVGl0bGVBbmREZXRhaWxzXCI+XG4gICAgICAgIDxtYXQtZm9ybS1maWVsZD5cbiAgICAgICAgICA8aW5wdXQgdHlwZT1cInRleHRcIiBtYXRJbnB1dCBmb3JtQ29udHJvbE5hbWU9XCJ0aXRsZVwiIHBsYWNlaG9sZGVyPVwiVGl0bGVcIiBhdXRvY29tcGxldGU9XCJvZmZcIj5cbiAgICAgICAgPC9tYXQtZm9ybS1maWVsZD5cbiAgICAgICAgPG1hdC1mb3JtLWZpZWxkPlxuICAgICAgICAgIDx0ZXh0YXJlYSBtYXRJbnB1dCBmb3JtQ29udHJvbE5hbWU9XCJkZXRhaWxzXCIgcGxhY2Vob2xkZXI9XCJEZXRhaWxzXCIgYXV0b2NvbXBsZXRlPVwib2ZmXCI+PC90ZXh0YXJlYT5cbiAgICAgICAgPC9tYXQtZm9ybS1maWVsZD5cbiAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cInVzZVRlY2hsaWZ5VGFnc1wiPlxuICAgICAgICA8bWF0LWZvcm0tZmllbGQ+XG4gICAgICAgICAgPG1hdC1sYWJlbD5UYWc8L21hdC1sYWJlbD5cbiAgICAgICAgICA8YXBwLXRlY2hsaWZ5LXRhZ2dlci10YWctZm9ybS1maWVsZFxuICAgICAgICAgICAgW2NhdGVnb3JpZXNdPVwidGVjaGxpZnlUYWdDYXRlZ29yaWVzXCJcbiAgICAgICAgICAgIG1vZGVsVHlwZT1cImVudGl0eS1maWxlXCJcbiAgICAgICAgICAgIGZvcm1Db250cm9sTmFtZT1cInRhZ19pZHNcIlxuICAgICAgICAgICAgW21vZGVsSWRdPVwiZW50aXR5RmlsZUdyb3VwLmdldCgnaWQnKS52YWx1ZVwiXG4gICAgICAgICAgICBwbGFjZWhvbGRlcj1cIkVudGVyIG5ldyB0YWdcIlxuICAgICAgICAgICAgW2NvbmZpZ109XCJ0ZWNobGlmeVRhZ0NvbmZpZ1wiXG4gICAgICAgICAgPjwvYXBwLXRlY2hsaWZ5LXRhZ2dlci10YWctZm9ybS1maWVsZD5cbiAgICAgICAgPC9tYXQtZm9ybS1maWVsZD5cbiAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgPG5nLXRlbXBsYXRlICNmaWxlVXBsb2FkPlxuICAgICAgICA8c2VjdGlvbiBmeEZsZXg9XCIxMDAlXCI+XG4gICAgICAgICAgPGRpdj5FbnRpdHkgRmlsZSo8L2Rpdj5cbiAgICAgICAgICA8YXBwLWZpbGUtZHJvcHBlciBbY29uZmlnXT1cImZpbGVDb25maWdcIiAoZmlsZUNoYW5nZWQpPVwiZmlsZUNoYW5nZWQoJGV2ZW50KVwiIFtmaWxlQXJyYXldPVwiZmlsZUxpc3RcIj5cbiAgICAgICAgICA8L2FwcC1maWxlLWRyb3BwZXI+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cInRleHQtZGFuZ2VyXCIgKm5nSWY9XCJpc0ZpZWxkVmFsaWQoJ3VybCcpXCI+XG4gICAgICAgICAgICB7e2dldEVycm9yTWVzc2FnZShcInVybFwiKX19XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvc2VjdGlvbj5cbiAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgICA8ZGl2IGZ4RmxleD1cIjEwMCVcIiBjbGFzcz1cIm10LTJcIiAqbmdJZj1cImVudGl0eUZpbGVHcm91cC5nZXQoJ3VybCcpLnZhbHVlO2Vsc2UgZmlsZVVwbG9hZDtcIj5cbiAgICAgICAgPGFwcC1kb2N1bWVudC12aWV3ZXIgW2ZpbGVdPVwiZW50aXR5RmlsZUdyb3VwLmdldCgnZmlsZScpLnZhbHVlXCIgW2ZpbGVVcmxdPVwiZW50aXR5RmlsZUdyb3VwLmdldCgndXJsJykudmFsdWVcIlxuICAgICAgICAgIFtjb25maWddPVwidGhpcy52aWV3ZXJDb25maWdcIiAocmVtb3ZlKT1cInJlbW92ZUZpbGUoKVwiIFtkaXNhYmxlRWRpdF09XCJ1cGRhdGVNb2RlXCI+XG4gICAgICAgIDwvYXBwLWRvY3VtZW50LXZpZXdlcj5cbiAgICAgIDwvZGl2PlxuICAgICAgPGRpdiBjbGFzcz1cIm10LTQgbWItMlwiIGZ4TGF5b3V0PVwicm93XCIgZnhMYXlvdXRHYXA9XCIzMHB4XCIgZnhMYXlvdXRBbGlnbj1cImVuZFwiIGZ4RmxleD1cIjEwMCVcIj5cbiAgICAgICAgPGJ1dHRvbiBbZGlzYWJsZWRdPVwiaXNTYXZpbmdcIiBtYXQtcmFpc2VkLWJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgKGNsaWNrKT1cImRpYWxvZ1JlZi5jbG9zZSgpXCI+XG4gICAgICAgICAgQ2FuY2VsXG4gICAgICAgIDwvYnV0dG9uPlxuICAgICAgICA8YnV0dG9uIFtkaXNhYmxlZF09XCJpc1NhdmluZ1wiIG1hdC1yYWlzZWQtYnV0dG9uIHR5cGU9XCJzdWJtaXRcIiBjb2xvcj1cInByaW1hcnlcIj5TYXZlPC9idXR0b24+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG48L2Zvcm0+XG4iXX0=
@@ -16,6 +16,8 @@ export class EntityFileService extends TechlifyServiceBaseClass {
16
16
  formData.append("fileData", file, file.name);
17
17
  if (params?.entity_id) {
18
18
  formData.append('entity_id', params.entity_id);
19
+ }
20
+ if (params?.entity_type) {
19
21
  formData.append('entity_type', params.entity_type);
20
22
  }
21
23
  params?.disk ? formData.append('disk', params.disk) : null;
@@ -36,4 +38,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
36
38
  providedIn: 'root'
37
39
  }]
38
40
  }], ctorParameters: function () { return [{ type: i1.HttpService }]; } });
39
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW50aXR5LWZpbGUuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC10ZWNobGlmeS1jb3JlL3NyYy9saWIvZW50aXR5LWZpbGVzL2VudGl0eS1maWxlLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUUzQyxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSxlQUFlLENBQUM7OztBQUt6RCxNQUFNLE9BQU8saUJBQWtCLFNBQVEsd0JBQXdCO0lBRTFDO0lBQW5CLFlBQW1CLElBQWlCO1FBQ2xDLEtBQUssQ0FBQyxJQUFJLEVBQUUsY0FBYyxDQUFDLENBQUM7UUFEWCxTQUFJLEdBQUosSUFBSSxDQUFhO0lBRXBDLENBQUM7SUFFRCxnQkFBZ0IsQ0FBQyxLQUFVO1FBQ3pCLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsb0JBQW9CLEtBQUssQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLFNBQVMsRUFBRSxDQUFDO0lBQ3RFLENBQUM7SUFFRCxnQkFBZ0IsQ0FBQyxJQUFVLEVBQUUsTUFBWTtRQUN2QyxNQUFNLFFBQVEsR0FBYSxJQUFJLFFBQVEsRUFBRSxDQUFDO1FBQzFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsVUFBVSxFQUFFLElBQUksRUFBRSxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDN0MsSUFBSSxNQUFNLEVBQUUsU0FBUyxFQUFFO1lBQ3JCLFFBQVEsQ0FBQyxNQUFNLENBQUMsV0FBVyxFQUFFLE1BQU0sQ0FBQyxTQUFTLENBQUMsQ0FBQztZQUMvQyxRQUFRLENBQUMsTUFBTSxDQUFDLGFBQWEsRUFBRSxNQUFNLENBQUMsV0FBVyxDQUFDLENBQUM7U0FDcEQ7UUFFRCxNQUFNLEVBQUUsSUFBSSxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLE1BQU0sRUFBRSxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQztRQUMzRCxNQUFNLEVBQUUsUUFBUSxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLFVBQVUsRUFBRSxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQztRQUV2RSxPQUFPLElBQUksQ0FBQyxJQUFJO2FBQ2IsVUFBVSxFQUFFO2FBQ1osSUFBSSxDQUNILHlCQUF5QixFQUN6QixRQUFRLENBQ1QsQ0FBQyxTQUFTLEVBQUUsQ0FBQztJQUNsQixDQUFDO0lBRUQsVUFBVSxDQUFDLEtBQUs7UUFDZCxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLDhCQUE4QixFQUFFLEtBQUssQ0FBQyxDQUFDLFNBQVMsRUFBRSxDQUFDO0lBQzNFLENBQUM7d0dBL0JVLGlCQUFpQjs0R0FBakIsaUJBQWlCLGNBRmhCLE1BQU07OzRGQUVQLGlCQUFpQjtrQkFIN0IsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBIdHRwU2VydmljZSB9IGZyb20gJy4uL2NvcmUvaHR0cC5zZXJ2aWNlJztcbmltcG9ydCB7IFRlY2hsaWZ5U2VydmljZUJhc2VDbGFzcyB9IGZyb20gXCIuLi9iYXNlLW1vZGVsXCI7XG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXG59KVxuZXhwb3J0IGNsYXNzIEVudGl0eUZpbGVTZXJ2aWNlIGV4dGVuZHMgVGVjaGxpZnlTZXJ2aWNlQmFzZUNsYXNzIHtcblxuICBjb25zdHJ1Y3RvcihwdWJsaWMgaHR0cDogSHR0cFNlcnZpY2UpIHtcbiAgICBzdXBlcihodHRwLCAnZW50aXR5LWZpbGVzJyk7XG4gIH1cblxuICBkZWxldGVFbnRpdHlGaWxlKG1vZGVsOiBhbnkpIHtcbiAgICByZXR1cm4gdGhpcy5odHRwLmRlbGV0ZShgYXBpL2VudGl0eS1maWxlcy8ke21vZGVsLmlkfWApLnRvUHJvbWlzZSgpO1xuICB9XG5cbiAgdXBsb2FkRW50aXR5RmlsZShmaWxlOiBGaWxlLCBwYXJhbXM/OiBhbnkpIHtcbiAgICBjb25zdCBmb3JtRGF0YTogRm9ybURhdGEgPSBuZXcgRm9ybURhdGEoKTtcbiAgICBmb3JtRGF0YS5hcHBlbmQoXCJmaWxlRGF0YVwiLCBmaWxlLCBmaWxlLm5hbWUpO1xuICAgIGlmIChwYXJhbXM/LmVudGl0eV9pZCkge1xuICAgICAgZm9ybURhdGEuYXBwZW5kKCdlbnRpdHlfaWQnLCBwYXJhbXMuZW50aXR5X2lkKTtcbiAgICAgIGZvcm1EYXRhLmFwcGVuZCgnZW50aXR5X3R5cGUnLCBwYXJhbXMuZW50aXR5X3R5cGUpO1xuICAgIH1cblxuICAgIHBhcmFtcz8uZGlzayA/IGZvcm1EYXRhLmFwcGVuZCgnZGlzaycsIHBhcmFtcy5kaXNrKSA6IG51bGw7XG4gICAgcGFyYW1zPy5zdWJfcGF0aCA/IGZvcm1EYXRhLmFwcGVuZCgnc3ViX3BhdGgnLCBwYXJhbXMuc3ViX3BhdGgpIDogbnVsbDtcblxuICAgIHJldHVybiB0aGlzLmh0dHBcbiAgICAgIC5za2lwSGVhZGVyKClcbiAgICAgIC5wb3N0KFxuICAgICAgICBcImFwaS9lbnRpdHktZmlsZXMtdXBsb2FkXCIsXG4gICAgICAgIGZvcm1EYXRhLFxuICAgICAgKS50b1Byb21pc2UoKTtcbiAgfVxuXG4gIGJ1bGtVcGRhdGUobW9kZWwpIHtcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3QoYGFwaS9lbnRpdHktZmlsZXMvYnVsay11cGRhdGVgLCBtb2RlbCkudG9Qcm9taXNlKCk7XG4gIH1cblxufVxuIl19
41
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW50aXR5LWZpbGUuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC10ZWNobGlmeS1jb3JlL3NyYy9saWIvZW50aXR5LWZpbGVzL2VudGl0eS1maWxlLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUUzQyxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSxlQUFlLENBQUM7OztBQUt6RCxNQUFNLE9BQU8saUJBQWtCLFNBQVEsd0JBQXdCO0lBRTFDO0lBQW5CLFlBQW1CLElBQWlCO1FBQ2xDLEtBQUssQ0FBQyxJQUFJLEVBQUUsY0FBYyxDQUFDLENBQUM7UUFEWCxTQUFJLEdBQUosSUFBSSxDQUFhO0lBRXBDLENBQUM7SUFFRCxnQkFBZ0IsQ0FBQyxLQUFVO1FBQ3pCLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsb0JBQW9CLEtBQUssQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLFNBQVMsRUFBRSxDQUFDO0lBQ3RFLENBQUM7SUFFRCxnQkFBZ0IsQ0FBQyxJQUFVLEVBQUUsTUFBWTtRQUN2QyxNQUFNLFFBQVEsR0FBYSxJQUFJLFFBQVEsRUFBRSxDQUFDO1FBQzFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsVUFBVSxFQUFFLElBQUksRUFBRSxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDN0MsSUFBSSxNQUFNLEVBQUUsU0FBUyxFQUFFO1lBQ3JCLFFBQVEsQ0FBQyxNQUFNLENBQUMsV0FBVyxFQUFFLE1BQU0sQ0FBQyxTQUFTLENBQUMsQ0FBQztTQUNoRDtRQUNELElBQUksTUFBTSxFQUFFLFdBQVcsRUFBRTtZQUN2QixRQUFRLENBQUMsTUFBTSxDQUFDLGFBQWEsRUFBRSxNQUFNLENBQUMsV0FBVyxDQUFDLENBQUM7U0FDcEQ7UUFFRCxNQUFNLEVBQUUsSUFBSSxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLE1BQU0sRUFBRSxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQztRQUMzRCxNQUFNLEVBQUUsUUFBUSxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLFVBQVUsRUFBRSxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQztRQUV2RSxPQUFPLElBQUksQ0FBQyxJQUFJO2FBQ2IsVUFBVSxFQUFFO2FBQ1osSUFBSSxDQUNILHlCQUF5QixFQUN6QixRQUFRLENBQ1QsQ0FBQyxTQUFTLEVBQUUsQ0FBQztJQUNsQixDQUFDO0lBRUQsVUFBVSxDQUFDLEtBQUs7UUFDZCxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLDhCQUE4QixFQUFFLEtBQUssQ0FBQyxDQUFDLFNBQVMsRUFBRSxDQUFDO0lBQzNFLENBQUM7d0dBakNVLGlCQUFpQjs0R0FBakIsaUJBQWlCLGNBRmhCLE1BQU07OzRGQUVQLGlCQUFpQjtrQkFIN0IsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBIdHRwU2VydmljZSB9IGZyb20gJy4uL2NvcmUvaHR0cC5zZXJ2aWNlJztcbmltcG9ydCB7IFRlY2hsaWZ5U2VydmljZUJhc2VDbGFzcyB9IGZyb20gXCIuLi9iYXNlLW1vZGVsXCI7XG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXG59KVxuZXhwb3J0IGNsYXNzIEVudGl0eUZpbGVTZXJ2aWNlIGV4dGVuZHMgVGVjaGxpZnlTZXJ2aWNlQmFzZUNsYXNzIHtcblxuICBjb25zdHJ1Y3RvcihwdWJsaWMgaHR0cDogSHR0cFNlcnZpY2UpIHtcbiAgICBzdXBlcihodHRwLCAnZW50aXR5LWZpbGVzJyk7XG4gIH1cblxuICBkZWxldGVFbnRpdHlGaWxlKG1vZGVsOiBhbnkpIHtcbiAgICByZXR1cm4gdGhpcy5odHRwLmRlbGV0ZShgYXBpL2VudGl0eS1maWxlcy8ke21vZGVsLmlkfWApLnRvUHJvbWlzZSgpO1xuICB9XG5cbiAgdXBsb2FkRW50aXR5RmlsZShmaWxlOiBGaWxlLCBwYXJhbXM/OiBhbnkpIHtcbiAgICBjb25zdCBmb3JtRGF0YTogRm9ybURhdGEgPSBuZXcgRm9ybURhdGEoKTtcbiAgICBmb3JtRGF0YS5hcHBlbmQoXCJmaWxlRGF0YVwiLCBmaWxlLCBmaWxlLm5hbWUpO1xuICAgIGlmIChwYXJhbXM/LmVudGl0eV9pZCkge1xuICAgICAgZm9ybURhdGEuYXBwZW5kKCdlbnRpdHlfaWQnLCBwYXJhbXMuZW50aXR5X2lkKTtcbiAgICB9XG4gICAgaWYgKHBhcmFtcz8uZW50aXR5X3R5cGUpIHtcbiAgICAgIGZvcm1EYXRhLmFwcGVuZCgnZW50aXR5X3R5cGUnLCBwYXJhbXMuZW50aXR5X3R5cGUpO1xuICAgIH1cblxuICAgIHBhcmFtcz8uZGlzayA/IGZvcm1EYXRhLmFwcGVuZCgnZGlzaycsIHBhcmFtcy5kaXNrKSA6IG51bGw7XG4gICAgcGFyYW1zPy5zdWJfcGF0aCA/IGZvcm1EYXRhLmFwcGVuZCgnc3ViX3BhdGgnLCBwYXJhbXMuc3ViX3BhdGgpIDogbnVsbDtcblxuICAgIHJldHVybiB0aGlzLmh0dHBcbiAgICAgIC5za2lwSGVhZGVyKClcbiAgICAgIC5wb3N0KFxuICAgICAgICBcImFwaS9lbnRpdHktZmlsZXMtdXBsb2FkXCIsXG4gICAgICAgIGZvcm1EYXRhLFxuICAgICAgKS50b1Byb21pc2UoKTtcbiAgfVxuXG4gIGJ1bGtVcGRhdGUobW9kZWwpIHtcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3QoYGFwaS9lbnRpdHktZmlsZXMvYnVsay11cGRhdGVgLCBtb2RlbCkudG9Qcm9taXNlKCk7XG4gIH1cblxufVxuIl19