@techextensor/tab-core-utility 2.2.139 → 2.2.140

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.
@@ -8,19 +8,25 @@ export class TabBlueprintService {
8
8
  constructor() {
9
9
  this.apiService = inject(ApiService);
10
10
  }
11
- getNextStatus(recordId, params) {
12
- const headers = getHeaders();
13
- if (headers) {
14
- return this.apiService.get(`${API.getNextStatus}?RecordId=${recordId}`, params, headers);
15
- }
16
- return null;
11
+ /**
12
+ * Retrieves the next status of a record.
13
+ * @param payload - Object containing the recordId and appObjectId.
14
+ * @param params - Optional parameters for the API call.
15
+ * @returns An observable of the API response.
16
+ */
17
+ getNextStatus(payload, params) {
18
+ const headers = getHeaders(); // Get headers for the API request
19
+ return this.apiService.get(`${API.getNextStatus}?RecordId=${payload.recordId}&AppObjectId=${payload.appObjectId}`, params, headers);
17
20
  }
18
- updateStatus(recordId, nextPossibleStatusId, params) {
19
- const headers = getHeaders();
20
- if (headers) {
21
- return this.apiService.get(`${API.updateStatus}?RecordId=${recordId}&NextPossibleStatusId=${nextPossibleStatusId}`, params, headers);
22
- }
23
- return null;
21
+ /**
22
+ * Updates the status of a record.
23
+ * @param payload - Object containing the next possible status ID.
24
+ * @param params - Optional parameters for the API call.
25
+ * @returns An observable of the API response.
26
+ */
27
+ updateStatus(payload, params) {
28
+ const headers = getHeaders(); // Get headers for the API request
29
+ return this.apiService.get(`${API.updateStatus}?RecordId=${payload.recordId}&AppObjectId=${payload.appObjectId}&NextPossibleStatusId=${payload.nextPossibleStatusId}`, params, headers);
24
30
  }
25
31
  static { this.ɵfac = function TabBlueprintService_Factory(t) { return new (t || TabBlueprintService)(); }; }
26
32
  static { this.ɵprov = /*@__PURE__*/ i0.ɵɵdefineInjectable({ token: TabBlueprintService, factory: TabBlueprintService.ɵfac, providedIn: 'root' }); }
@@ -29,4 +35,4 @@ export class TabBlueprintService {
29
35
  type: Injectable,
30
36
  args: [{ providedIn: 'root' }]
31
37
  }], null, null); })();
32
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFiLWJsdWVwcmludC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9kYXRhLWFjY2Vzcy9zcmMvbGliL3RhYi1jb3JlLXV0aWxpdHkvYXBwL2NydWQvdGFiLWJsdWVwcmludC5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLHVEQUF1RDtBQUN2RCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNuRCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFDaEUsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ25ELE9BQU8sRUFBRSxHQUFHLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQzs7QUFJakQsTUFBTSxPQUFPLG1CQUFtQjtJQURoQztRQUVtQixlQUFVLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFDO0tBeUJsRDtJQXZCQyxhQUFhLENBQUMsUUFBZSxFQUFFLE1BQVk7UUFDekMsTUFBTSxPQUFPLEdBQUcsVUFBVSxFQUFFLENBQUM7UUFDN0IsSUFBSSxPQUFPLEVBQUUsQ0FBQztZQUNaLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQ3hCLEdBQUcsR0FBRyxDQUFDLGFBQWEsYUFBYSxRQUFRLEVBQUUsRUFDM0MsTUFBTSxFQUNOLE9BQU8sQ0FDUixDQUFDO1FBQ0osQ0FBQztRQUNELE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQUVELFlBQVksQ0FBQyxRQUFlLEVBQUUsb0JBQTJCLEVBQUUsTUFBWTtRQUNyRSxNQUFNLE9BQU8sR0FBRyxVQUFVLEVBQUUsQ0FBQztRQUM3QixJQUFJLE9BQU8sRUFBRSxDQUFDO1lBQ1osT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FDeEIsR0FBRyxHQUFHLENBQUMsWUFBWSxhQUFhLFFBQVEseUJBQXlCLG9CQUFvQixFQUFFLEVBQ3ZGLE1BQU0sRUFDTixPQUFPLENBQ1IsQ0FBQztRQUNKLENBQUM7UUFDRCxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7b0ZBekJVLG1CQUFtQjt1RUFBbkIsbUJBQW1CLFdBQW5CLG1CQUFtQixtQkFETixNQUFNOztpRkFDbkIsbUJBQW1CO2NBRC9CLFVBQVU7ZUFBQyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyIvKiBlc2xpbnQtZGlzYWJsZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55ICovXG5pbXBvcnQgeyBJbmplY3RhYmxlLCBpbmplY3QgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHsgQXBpU2VydmljZSB9IGZyb20gXCIuLi8uLi9jb3JlL2h0dHAtY2xpZW50L2FwaS5zZXJ2aWNlXCI7XG5pbXBvcnQgeyBnZXRIZWFkZXJzIH0gZnJvbSBcIi4uL3V0aWxzL3JlcS1yZXMudXRpbFwiO1xuaW1wb3J0IHsgQVBJIH0gZnJvbSBcIi4uL2NvbnN0YW50cy9hcGktY29uc3RhbnRzXCI7XG5cblxuQEluamVjdGFibGUoeyBwcm92aWRlZEluOiAncm9vdCcgfSlcbmV4cG9ydCBjbGFzcyBUYWJCbHVlcHJpbnRTZXJ2aWNlIHtcbiAgcHJpdmF0ZSByZWFkb25seSBhcGlTZXJ2aWNlID0gaW5qZWN0KEFwaVNlcnZpY2UpO1xuXG4gIGdldE5leHRTdGF0dXMocmVjb3JkSWQ6c3RyaW5nLCBwYXJhbXM/OiBhbnkpOmFueSB7XG4gICAgY29uc3QgaGVhZGVycyA9IGdldEhlYWRlcnMoKTtcbiAgICBpZiAoaGVhZGVycykge1xuICAgICAgcmV0dXJuIHRoaXMuYXBpU2VydmljZS5nZXQoXG4gICAgICAgIGAke0FQSS5nZXROZXh0U3RhdHVzfT9SZWNvcmRJZD0ke3JlY29yZElkfWAsXG4gICAgICAgIHBhcmFtcyxcbiAgICAgICAgaGVhZGVyc1xuICAgICAgKTtcbiAgICB9XG4gICAgcmV0dXJuIG51bGw7XG4gIH1cblxuICB1cGRhdGVTdGF0dXMocmVjb3JkSWQ6c3RyaW5nLCBuZXh0UG9zc2libGVTdGF0dXNJZDpzdHJpbmcsIHBhcmFtcz86IGFueSk6YW55IHtcbiAgICBjb25zdCBoZWFkZXJzID0gZ2V0SGVhZGVycygpO1xuICAgIGlmIChoZWFkZXJzKSB7XG4gICAgICByZXR1cm4gdGhpcy5hcGlTZXJ2aWNlLmdldChcbiAgICAgICAgYCR7QVBJLnVwZGF0ZVN0YXR1c30/UmVjb3JkSWQ9JHtyZWNvcmRJZH0mTmV4dFBvc3NpYmxlU3RhdHVzSWQ9JHtuZXh0UG9zc2libGVTdGF0dXNJZH1gLFxuICAgICAgICBwYXJhbXMsXG4gICAgICAgIGhlYWRlcnNcbiAgICAgICk7XG4gICAgfVxuICAgIHJldHVybiBudWxsO1xuICB9XG59Il19
38
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFiLWJsdWVwcmludC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9kYXRhLWFjY2Vzcy9zcmMvbGliL3RhYi1jb3JlLXV0aWxpdHkvYXBwL2NydWQvdGFiLWJsdWVwcmludC5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLHVEQUF1RDtBQUN2RCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNuRCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFDaEUsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ25ELE9BQU8sRUFBRSxHQUFHLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQzs7QUFNakQsTUFBTSxPQUFPLG1CQUFtQjtJQURoQztRQUVtQixlQUFVLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFDO0tBK0JsRDtJQTdCQzs7Ozs7T0FLRztJQUNILGFBQWEsQ0FBQyxPQUEwQixFQUFFLE1BQVk7UUFDcEQsTUFBTSxPQUFPLEdBQUcsVUFBVSxFQUFFLENBQUMsQ0FBQyxrQ0FBa0M7UUFDaEUsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FDeEIsR0FBRyxHQUFHLENBQUMsYUFBYSxhQUFhLE9BQU8sQ0FBQyxRQUFRLGdCQUFnQixPQUFPLENBQUMsV0FBVyxFQUFFLEVBQ3RGLE1BQU0sRUFDTixPQUFPLENBQ1IsQ0FBQztJQUNKLENBQUM7SUFFRDs7Ozs7T0FLRztJQUNILFlBQVksQ0FBQyxPQUE0QixFQUFFLE1BQVk7UUFDckQsTUFBTSxPQUFPLEdBQUcsVUFBVSxFQUFFLENBQUMsQ0FBQyxrQ0FBa0M7UUFDaEUsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FDeEIsR0FBRyxHQUFHLENBQUMsWUFBWSxhQUFhLE9BQU8sQ0FBQyxRQUFRLGdCQUFnQixPQUFPLENBQUMsV0FBVyx5QkFBeUIsT0FBTyxDQUFDLG9CQUFvQixFQUFFLEVBQzFJLE1BQU0sRUFDTixPQUFPLENBQ1IsQ0FBQztJQUNKLENBQUM7b0ZBL0JVLG1CQUFtQjt1RUFBbkIsbUJBQW1CLFdBQW5CLG1CQUFtQixtQkFETixNQUFNOztpRkFDbkIsbUJBQW1CO2NBRC9CLFVBQVU7ZUFBQyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyIvKiBlc2xpbnQtZGlzYWJsZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55ICovXG5pbXBvcnQgeyBJbmplY3RhYmxlLCBpbmplY3QgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHsgQXBpU2VydmljZSB9IGZyb20gXCIuLi8uLi9jb3JlL2h0dHAtY2xpZW50L2FwaS5zZXJ2aWNlXCI7XG5pbXBvcnQgeyBnZXRIZWFkZXJzIH0gZnJvbSBcIi4uL3V0aWxzL3JlcS1yZXMudXRpbFwiO1xuaW1wb3J0IHsgQVBJIH0gZnJvbSBcIi4uL2NvbnN0YW50cy9hcGktY29uc3RhbnRzXCI7XG5pbXBvcnQgeyBDb21tb25BcGlSZXNwb25zZSwgTmV4dFN0YXR1c1BheWxvYWQsIFVwZGF0ZVN0YXR1c1BheWxvYWQgfSBmcm9tIFwiLi4vaW50ZXJmYWNlcy9jb21tb24tYXBpLmludGVyZmFjZVwiO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gXCJyeGpzXCI7XG5cblxuQEluamVjdGFibGUoeyBwcm92aWRlZEluOiAncm9vdCcgfSlcbmV4cG9ydCBjbGFzcyBUYWJCbHVlcHJpbnRTZXJ2aWNlIHtcbiAgcHJpdmF0ZSByZWFkb25seSBhcGlTZXJ2aWNlID0gaW5qZWN0KEFwaVNlcnZpY2UpO1xuXG4gIC8qKlxuICAgKiBSZXRyaWV2ZXMgdGhlIG5leHQgc3RhdHVzIG9mIGEgcmVjb3JkLlxuICAgKiBAcGFyYW0gcGF5bG9hZCAtIE9iamVjdCBjb250YWluaW5nIHRoZSByZWNvcmRJZCBhbmQgYXBwT2JqZWN0SWQuXG4gICAqIEBwYXJhbSBwYXJhbXMgLSBPcHRpb25hbCBwYXJhbWV0ZXJzIGZvciB0aGUgQVBJIGNhbGwuXG4gICAqIEByZXR1cm5zIEFuIG9ic2VydmFibGUgb2YgdGhlIEFQSSByZXNwb25zZS5cbiAgICovXG4gIGdldE5leHRTdGF0dXMocGF5bG9hZDogTmV4dFN0YXR1c1BheWxvYWQsIHBhcmFtcz86IGFueSk6IE9ic2VydmFibGU8Q29tbW9uQXBpUmVzcG9uc2U+IHtcbiAgICBjb25zdCBoZWFkZXJzID0gZ2V0SGVhZGVycygpOyAvLyBHZXQgaGVhZGVycyBmb3IgdGhlIEFQSSByZXF1ZXN0XG4gICAgcmV0dXJuIHRoaXMuYXBpU2VydmljZS5nZXQoXG4gICAgICBgJHtBUEkuZ2V0TmV4dFN0YXR1c30/UmVjb3JkSWQ9JHtwYXlsb2FkLnJlY29yZElkfSZBcHBPYmplY3RJZD0ke3BheWxvYWQuYXBwT2JqZWN0SWR9YCxcbiAgICAgIHBhcmFtcyxcbiAgICAgIGhlYWRlcnNcbiAgICApO1xuICB9XG5cbiAgLyoqXG4gICAqIFVwZGF0ZXMgdGhlIHN0YXR1cyBvZiBhIHJlY29yZC5cbiAgICogQHBhcmFtIHBheWxvYWQgLSBPYmplY3QgY29udGFpbmluZyB0aGUgbmV4dCBwb3NzaWJsZSBzdGF0dXMgSUQuXG4gICAqIEBwYXJhbSBwYXJhbXMgLSBPcHRpb25hbCBwYXJhbWV0ZXJzIGZvciB0aGUgQVBJIGNhbGwuXG4gICAqIEByZXR1cm5zIEFuIG9ic2VydmFibGUgb2YgdGhlIEFQSSByZXNwb25zZS5cbiAgICovXG4gIHVwZGF0ZVN0YXR1cyhwYXlsb2FkOiBVcGRhdGVTdGF0dXNQYXlsb2FkLCBwYXJhbXM/OiBhbnkpOiBPYnNlcnZhYmxlPENvbW1vbkFwaVJlc3BvbnNlPiB7XG4gICAgY29uc3QgaGVhZGVycyA9IGdldEhlYWRlcnMoKTsgLy8gR2V0IGhlYWRlcnMgZm9yIHRoZSBBUEkgcmVxdWVzdFxuICAgIHJldHVybiB0aGlzLmFwaVNlcnZpY2UuZ2V0KFxuICAgICAgYCR7QVBJLnVwZGF0ZVN0YXR1c30/UmVjb3JkSWQ9JHtwYXlsb2FkLnJlY29yZElkfSZBcHBPYmplY3RJZD0ke3BheWxvYWQuYXBwT2JqZWN0SWR9Jk5leHRQb3NzaWJsZVN0YXR1c0lkPSR7cGF5bG9hZC5uZXh0UG9zc2libGVTdGF0dXNJZH1gLFxuICAgICAgcGFyYW1zLFxuICAgICAgaGVhZGVyc1xuICAgICk7XG4gIH1cbn0iXX0=
@@ -18,12 +18,8 @@ export class TabFormioService {
18
18
  getScreen(screenId, config, params) {
19
19
  // Retrieve headers for the API request
20
20
  const headers = getHeaders();
21
- if (headers) {
22
- // Construct the API endpoint with the screenId and optional configuration
23
- return this.apiService.get(`${API.getScreen}?screenId=${screenId}${config?.layoutId ? `&layoutId=${config?.layoutId}` : ''}${config?.version ? `&version=${config?.version}` : ''}`, params, headers);
24
- }
25
- // Return null if headers are not available
26
- return null;
21
+ // Construct the API endpoint with the screenId and optional configuration
22
+ return this.apiService.get(`${API.getScreen}?screenId=${screenId}${config?.layoutId ? `&layoutId=${config?.layoutId}` : ''}${config?.version ? `&version=${config?.version}` : ''}`, params, headers);
27
23
  }
28
24
  /**
29
25
  * Retrieves the submission data from the server.
@@ -32,10 +28,7 @@ export class TabFormioService {
32
28
  */
33
29
  getScreenData(screenId, requestPayload) {
34
30
  const headers = getHeaders();
35
- if (headers) {
36
- return this.apiService.post(`${API.getScreenData}/${screenId}`, requestPayload, headers);
37
- }
38
- return null;
31
+ return this.apiService.post(`${API.getScreenData}/${screenId}`, requestPayload, headers);
39
32
  }
40
33
  /**
41
34
  * Called when the form is submitted.
@@ -43,10 +36,18 @@ export class TabFormioService {
43
36
  */
44
37
  processRequest(data) {
45
38
  const headers = getHeaders();
46
- if (headers) {
47
- return this.apiService.post(`${API.processRequest}`, data, headers);
48
- }
49
- return null;
39
+ return this.apiService.post(`${API.processRequest}`, data, headers);
40
+ }
41
+ /**
42
+ * Retrieves the formIO components for the given appObjectId and type.
43
+ * @param appObjectId - The ID of the app object.
44
+ * @param type - The type of the components to retrieve. Can be either 'CommonFilter' or 'BulkUpdate'
45
+ * @param params - Additional parameters for the API call.
46
+ * @returns The formIO components in the response body.
47
+ */
48
+ buildFormIOComponents(appObjectId, type, params) {
49
+ const headers = getHeaders();
50
+ return this.apiService.get(`${API.BuildFormIOComponents}${appObjectId}&Type=${type}`, params, headers);
50
51
  }
51
52
  static { this.ɵfac = function TabFormioService_Factory(t) { return new (t || TabFormioService)(); }; }
52
53
  static { this.ɵprov = /*@__PURE__*/ i0.ɵɵdefineInjectable({ token: TabFormioService, factory: TabFormioService.ɵfac, providedIn: 'root' }); }
@@ -55,4 +56,4 @@ export class TabFormioService {
55
56
  type: Injectable,
56
57
  args: [{ providedIn: 'root' }]
57
58
  }], null, null); })();
58
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFiLWZvcm1pby5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9kYXRhLWFjY2Vzcy9zcmMvbGliL3RhYi1jb3JlLXV0aWxpdHkvYXBwL2NydWQvdGFiLWZvcm1pby5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ25ELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUNoRSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDbkQsT0FBTyxFQUFFLEdBQUcsRUFBRSxNQUFNLDRCQUE0QixDQUFDOztBQUlqRCxNQUFNLE9BQU8sZ0JBQWdCO0lBRDdCO1FBRW1CLGVBQVUsR0FBRyxNQUFNLENBQUMsVUFBVSxDQUFDLENBQUM7S0F5RGxEO0lBdkRDOzs7Ozs7O09BT0c7SUFDSCxTQUFTLENBQUMsUUFBZ0IsRUFBRSxNQUFnRCxFQUFFLE1BQVk7UUFDeEYsdUNBQXVDO1FBQ3ZDLE1BQU0sT0FBTyxHQUFHLFVBQVUsRUFBRSxDQUFDO1FBQzdCLElBQUksT0FBTyxFQUFFLENBQUM7WUFDWiwwRUFBMEU7WUFDMUUsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FDeEIsR0FBRyxHQUFHLENBQUMsU0FBUyxhQUFhLFFBQVEsR0FBRyxNQUFNLEVBQUUsUUFBUSxDQUFDLENBQUMsQ0FBQyxhQUFhLE1BQU0sRUFBRSxRQUFRLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRSxHQUFHLE1BQU0sRUFBRSxPQUFPLENBQUMsQ0FBQyxDQUFDLFlBQVksTUFBTSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsRUFDeEosTUFBTSxFQUNOLE9BQU8sQ0FDUixDQUFDO1FBQ0osQ0FBQztRQUNELDJDQUEyQztRQUMzQyxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFFRDs7OztPQUlHO0lBQ0gsYUFBYSxDQUFDLFFBQWdCLEVBQUUsY0FBbUI7UUFDakQsTUFBTSxPQUFPLEdBQUcsVUFBVSxFQUFFLENBQUM7UUFDN0IsSUFBSSxPQUFPLEVBQUUsQ0FBQztZQUNaLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQ3pCLEdBQUcsR0FBRyxDQUFDLGFBQWEsSUFBSSxRQUFRLEVBQUUsRUFDbEMsY0FBYyxFQUNkLE9BQU8sQ0FDUixDQUFDO1FBQ0osQ0FBQztRQUNELE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQUVEOzs7TUFHRTtJQUNGLGNBQWMsQ0FBQyxJQUFTO1FBQ3RCLE1BQU0sT0FBTyxHQUFHLFVBQVUsRUFBRSxDQUFDO1FBQzdCLElBQUksT0FBTyxFQUFFLENBQUM7WUFDWixPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUN6QixHQUFHLEdBQUcsQ0FBQyxjQUFjLEVBQUUsRUFDdkIsSUFBSSxFQUNKLE9BQU8sQ0FDUixDQUFDO1FBQ0osQ0FBQztRQUNELE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztpRkF6RFUsZ0JBQWdCO3VFQUFoQixnQkFBZ0IsV0FBaEIsZ0JBQWdCLG1CQURILE1BQU07O2lGQUNuQixnQkFBZ0I7Y0FENUIsVUFBVTtlQUFDLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUsIGluamVjdCB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5pbXBvcnQgeyBBcGlTZXJ2aWNlIH0gZnJvbSBcIi4uLy4uL2NvcmUvaHR0cC1jbGllbnQvYXBpLnNlcnZpY2VcIjtcbmltcG9ydCB7IGdldEhlYWRlcnMgfSBmcm9tIFwiLi4vdXRpbHMvcmVxLXJlcy51dGlsXCI7XG5pbXBvcnQgeyBBUEkgfSBmcm9tIFwiLi4vY29uc3RhbnRzL2FwaS1jb25zdGFudHNcIjtcblxuXG5ASW5qZWN0YWJsZSh7IHByb3ZpZGVkSW46ICdyb290JyB9KVxuZXhwb3J0IGNsYXNzIFRhYkZvcm1pb1NlcnZpY2Uge1xuICBwcml2YXRlIHJlYWRvbmx5IGFwaVNlcnZpY2UgPSBpbmplY3QoQXBpU2VydmljZSk7XG5cbiAgLyoqXG4gICAqIEZldGNoZXMgc2NyZWVuIGRhdGEgZnJvbSB0aGUgc2VydmVyIGJhc2VkIG9uIHRoZSBzY3JlZW4gSUQgYW5kIG9wdGlvbmFsIGNvbmZpZ3VyYXRpb24uXG4gICAqIFxuICAgKiBAcGFyYW0gc2NyZWVuSWQgLSBUaGUgSUQgb2YgdGhlIHNjcmVlbiB0byByZXRyaWV2ZS5cbiAgICogQHBhcmFtIGNvbmZpZyAtIE9wdGlvbmFsIGNvbmZpZ3VyYXRpb24gaW5jbHVkaW5nIGxheW91dElkIGFuZCB2ZXJzaW9uLlxuICAgKiBAcGFyYW0gcGFyYW1zIC0gQWRkaXRpb25hbCBwYXJhbWV0ZXJzIGZvciB0aGUgQVBJIGNhbGwuXG4gICAqIEByZXR1cm5zIFRoZSBzY3JlZW4gZGF0YSBpZiBoZWFkZXJzIGFyZSBhdmFpbGFibGUsIG90aGVyd2lzZSBudWxsLlxuICAgKi9cbiAgZ2V0U2NyZWVuKHNjcmVlbklkOiBzdHJpbmcsIGNvbmZpZz86IHsgbGF5b3V0SWQ/OiBzdHJpbmc7IHZlcnNpb24/OiBzdHJpbmcgfSwgcGFyYW1zPzogYW55KTogYW55IHtcbiAgICAvLyBSZXRyaWV2ZSBoZWFkZXJzIGZvciB0aGUgQVBJIHJlcXVlc3RcbiAgICBjb25zdCBoZWFkZXJzID0gZ2V0SGVhZGVycygpO1xuICAgIGlmIChoZWFkZXJzKSB7XG4gICAgICAvLyBDb25zdHJ1Y3QgdGhlIEFQSSBlbmRwb2ludCB3aXRoIHRoZSBzY3JlZW5JZCBhbmQgb3B0aW9uYWwgY29uZmlndXJhdGlvblxuICAgICAgcmV0dXJuIHRoaXMuYXBpU2VydmljZS5nZXQoXG4gICAgICAgIGAke0FQSS5nZXRTY3JlZW59P3NjcmVlbklkPSR7c2NyZWVuSWR9JHtjb25maWc/LmxheW91dElkID8gYCZsYXlvdXRJZD0ke2NvbmZpZz8ubGF5b3V0SWR9YCA6ICcnfSR7Y29uZmlnPy52ZXJzaW9uID8gYCZ2ZXJzaW9uPSR7Y29uZmlnPy52ZXJzaW9ufWAgOiAnJ31gLFxuICAgICAgICBwYXJhbXMsXG4gICAgICAgIGhlYWRlcnNcbiAgICAgICk7XG4gICAgfVxuICAgIC8vIFJldHVybiBudWxsIGlmIGhlYWRlcnMgYXJlIG5vdCBhdmFpbGFibGVcbiAgICByZXR1cm4gbnVsbDtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZXRyaWV2ZXMgdGhlIHN1Ym1pc3Npb24gZGF0YSBmcm9tIHRoZSBzZXJ2ZXIuXG4gICAqIEBwYXJhbSBkYXRhIC0gT2JqZWN0IGNvbnRhaW5pbmcgc2NyZWVuSWQgYW5kIHJlcXRva2Vuc1xuICAgKiBAcmV0dXJucyBBIFN1YmplY3QgZW1pdHRpbmcgdGhlIHN1Ym1pc3Npb24gZGF0YSBvciB1bmRlZmluZWQuXG4gICAqL1xuICBnZXRTY3JlZW5EYXRhKHNjcmVlbklkOiBzdHJpbmcsIHJlcXVlc3RQYXlsb2FkOiBhbnkpOiBhbnkge1xuICAgIGNvbnN0IGhlYWRlcnMgPSBnZXRIZWFkZXJzKCk7XG4gICAgaWYgKGhlYWRlcnMpIHtcbiAgICAgIHJldHVybiB0aGlzLmFwaVNlcnZpY2UucG9zdChcbiAgICAgICAgYCR7QVBJLmdldFNjcmVlbkRhdGF9LyR7c2NyZWVuSWR9YCxcbiAgICAgICAgcmVxdWVzdFBheWxvYWQsXG4gICAgICAgIGhlYWRlcnNcbiAgICAgICk7XG4gICAgfVxuICAgIHJldHVybiBudWxsO1xuICB9XG5cbiAgLyoqXG4gICogQ2FsbGVkIHdoZW4gdGhlIGZvcm0gaXMgc3VibWl0dGVkLlxuICAqIEBwYXJhbSBkYXRhIE9iamVjdCBjb250YWluaW5nIHN1Ym1pc3Npb24gZGF0YS5cbiAgKi9cbiAgcHJvY2Vzc1JlcXVlc3QoZGF0YTogYW55KTogYW55IHtcbiAgICBjb25zdCBoZWFkZXJzID0gZ2V0SGVhZGVycygpO1xuICAgIGlmIChoZWFkZXJzKSB7XG4gICAgICByZXR1cm4gdGhpcy5hcGlTZXJ2aWNlLnBvc3QoXG4gICAgICAgIGAke0FQSS5wcm9jZXNzUmVxdWVzdH1gLFxuICAgICAgICBkYXRhLFxuICAgICAgICBoZWFkZXJzXG4gICAgICApO1xuICAgIH1cbiAgICByZXR1cm4gbnVsbDtcbiAgfVxufSJdfQ==
59
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFiLWZvcm1pby5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9kYXRhLWFjY2Vzcy9zcmMvbGliL3RhYi1jb3JlLXV0aWxpdHkvYXBwL2NydWQvdGFiLWZvcm1pby5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ25ELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUNoRSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDbkQsT0FBTyxFQUFFLEdBQUcsRUFBRSxNQUFNLDRCQUE0QixDQUFDOztBQU9qRCxNQUFNLE9BQU8sZ0JBQWdCO0lBRDdCO1FBRW1CLGVBQVUsR0FBRyxNQUFNLENBQUMsVUFBVSxDQUFDLENBQUM7S0ErRGxEO0lBN0RDOzs7Ozs7O09BT0c7SUFDSCxTQUFTLENBQUMsUUFBZ0IsRUFBRSxNQUF3QixFQUFFLE1BQVk7UUFDaEUsdUNBQXVDO1FBQ3ZDLE1BQU0sT0FBTyxHQUFHLFVBQVUsRUFBRSxDQUFDO1FBQzdCLDBFQUEwRTtRQUMxRSxPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUN4QixHQUFHLEdBQUcsQ0FBQyxTQUFTLGFBQWEsUUFBUSxHQUFHLE1BQU0sRUFBRSxRQUFRLENBQUMsQ0FBQyxDQUFDLGFBQWEsTUFBTSxFQUFFLFFBQVEsRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLEdBQUcsTUFBTSxFQUFFLE9BQU8sQ0FBQyxDQUFDLENBQUMsWUFBWSxNQUFNLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxFQUN4SixNQUFNLEVBQ04sT0FBTyxDQUNSLENBQUM7SUFDSixDQUFDO0lBRUQ7Ozs7T0FJRztJQUNILGFBQWEsQ0FBQyxRQUFnQixFQUFFLGNBQW1CO1FBQ2pELE1BQU0sT0FBTyxHQUFHLFVBQVUsRUFBRSxDQUFDO1FBQzdCLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQ3pCLEdBQUcsR0FBRyxDQUFDLGFBQWEsSUFBSSxRQUFRLEVBQUUsRUFDbEMsY0FBYyxFQUNkLE9BQU8sQ0FDUixDQUFDO0lBQ0osQ0FBQztJQUVEOzs7TUFHRTtJQUNGLGNBQWMsQ0FBQyxJQUEyQjtRQUN4QyxNQUFNLE9BQU8sR0FBRyxVQUFVLEVBQUUsQ0FBQztRQUM3QixPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUN6QixHQUFHLEdBQUcsQ0FBQyxjQUFjLEVBQUUsRUFDdkIsSUFBSSxFQUNKLE9BQU8sQ0FDUixDQUFDO0lBQ0osQ0FBQztJQUVEOzs7Ozs7T0FNRztJQUNILHFCQUFxQixDQUFDLFdBQW1CLEVBQUUsSUFBNEIsRUFBRSxNQUFZO1FBQ25GLE1BQU0sT0FBTyxHQUFHLFVBQVUsRUFBRSxDQUFDO1FBQzdCLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQ3hCLEdBQUcsR0FBRyxDQUFDLHFCQUFxQixHQUFHLFdBQVcsU0FBUyxJQUFJLEVBQUUsRUFDekQsTUFBTSxFQUNOLE9BQU8sQ0FDUixDQUFDO0lBQ0osQ0FBQztpRkEvRFUsZ0JBQWdCO3VFQUFoQixnQkFBZ0IsV0FBaEIsZ0JBQWdCLG1CQURILE1BQU07O2lGQUNuQixnQkFBZ0I7Y0FENUIsVUFBVTtlQUFDLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUsIGluamVjdCB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5pbXBvcnQgeyBBcGlTZXJ2aWNlIH0gZnJvbSBcIi4uLy4uL2NvcmUvaHR0cC1jbGllbnQvYXBpLnNlcnZpY2VcIjtcbmltcG9ydCB7IGdldEhlYWRlcnMgfSBmcm9tIFwiLi4vdXRpbHMvcmVxLXJlcy51dGlsXCI7XG5pbXBvcnQgeyBBUEkgfSBmcm9tIFwiLi4vY29uc3RhbnRzL2FwaS1jb25zdGFudHNcIjtcbmltcG9ydCB7IENvbW1vbkFwaVJlc3BvbnNlLCBHZXRTY3JlZW5Db25maWcsIFByb2Nlc3NSZXF1ZXN0UGF5bG9hZCB9IGZyb20gXCIuLi9pbnRlcmZhY2VzL2NvbW1vbi1hcGkuaW50ZXJmYWNlXCI7XG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSBcInJ4anNcIjtcbmltcG9ydCB7IEJ1aWxkRm9ybUNvbXBvbmVudFR5cGUgfSBmcm9tIFwiLi4vZW51bXMvY29tbW9uLmVudW1cIjtcblxuXG5ASW5qZWN0YWJsZSh7IHByb3ZpZGVkSW46ICdyb290JyB9KVxuZXhwb3J0IGNsYXNzIFRhYkZvcm1pb1NlcnZpY2Uge1xuICBwcml2YXRlIHJlYWRvbmx5IGFwaVNlcnZpY2UgPSBpbmplY3QoQXBpU2VydmljZSk7XG5cbiAgLyoqXG4gICAqIEZldGNoZXMgc2NyZWVuIGRhdGEgZnJvbSB0aGUgc2VydmVyIGJhc2VkIG9uIHRoZSBzY3JlZW4gSUQgYW5kIG9wdGlvbmFsIGNvbmZpZ3VyYXRpb24uXG4gICAqIFxuICAgKiBAcGFyYW0gc2NyZWVuSWQgLSBUaGUgSUQgb2YgdGhlIHNjcmVlbiB0byByZXRyaWV2ZS5cbiAgICogQHBhcmFtIGNvbmZpZyAtIE9wdGlvbmFsIGNvbmZpZ3VyYXRpb24gaW5jbHVkaW5nIGxheW91dElkIGFuZCB2ZXJzaW9uLlxuICAgKiBAcGFyYW0gcGFyYW1zIC0gQWRkaXRpb25hbCBwYXJhbWV0ZXJzIGZvciB0aGUgQVBJIGNhbGwuXG4gICAqIEByZXR1cm5zIFRoZSBzY3JlZW4gZGF0YSBpZiBoZWFkZXJzIGFyZSBhdmFpbGFibGUsIG90aGVyd2lzZSBudWxsLlxuICAgKi9cbiAgZ2V0U2NyZWVuKHNjcmVlbklkOiBzdHJpbmcsIGNvbmZpZz86IEdldFNjcmVlbkNvbmZpZywgcGFyYW1zPzogYW55KTogT2JzZXJ2YWJsZTxDb21tb25BcGlSZXNwb25zZT4ge1xuICAgIC8vIFJldHJpZXZlIGhlYWRlcnMgZm9yIHRoZSBBUEkgcmVxdWVzdFxuICAgIGNvbnN0IGhlYWRlcnMgPSBnZXRIZWFkZXJzKCk7XG4gICAgLy8gQ29uc3RydWN0IHRoZSBBUEkgZW5kcG9pbnQgd2l0aCB0aGUgc2NyZWVuSWQgYW5kIG9wdGlvbmFsIGNvbmZpZ3VyYXRpb25cbiAgICByZXR1cm4gdGhpcy5hcGlTZXJ2aWNlLmdldChcbiAgICAgIGAke0FQSS5nZXRTY3JlZW59P3NjcmVlbklkPSR7c2NyZWVuSWR9JHtjb25maWc/LmxheW91dElkID8gYCZsYXlvdXRJZD0ke2NvbmZpZz8ubGF5b3V0SWR9YCA6ICcnfSR7Y29uZmlnPy52ZXJzaW9uID8gYCZ2ZXJzaW9uPSR7Y29uZmlnPy52ZXJzaW9ufWAgOiAnJ31gLFxuICAgICAgcGFyYW1zLFxuICAgICAgaGVhZGVyc1xuICAgICk7XG4gIH1cblxuICAvKipcbiAgICogUmV0cmlldmVzIHRoZSBzdWJtaXNzaW9uIGRhdGEgZnJvbSB0aGUgc2VydmVyLlxuICAgKiBAcGFyYW0gZGF0YSAtIE9iamVjdCBjb250YWluaW5nIHNjcmVlbklkIGFuZCByZXF0b2tlbnNcbiAgICogQHJldHVybnMgQSBTdWJqZWN0IGVtaXR0aW5nIHRoZSBzdWJtaXNzaW9uIGRhdGEgb3IgdW5kZWZpbmVkLlxuICAgKi9cbiAgZ2V0U2NyZWVuRGF0YShzY3JlZW5JZDogc3RyaW5nLCByZXF1ZXN0UGF5bG9hZDogYW55KTogT2JzZXJ2YWJsZTxDb21tb25BcGlSZXNwb25zZT4ge1xuICAgIGNvbnN0IGhlYWRlcnMgPSBnZXRIZWFkZXJzKCk7XG4gICAgcmV0dXJuIHRoaXMuYXBpU2VydmljZS5wb3N0KFxuICAgICAgYCR7QVBJLmdldFNjcmVlbkRhdGF9LyR7c2NyZWVuSWR9YCxcbiAgICAgIHJlcXVlc3RQYXlsb2FkLFxuICAgICAgaGVhZGVyc1xuICAgICk7XG4gIH1cblxuICAvKipcbiAgKiBDYWxsZWQgd2hlbiB0aGUgZm9ybSBpcyBzdWJtaXR0ZWQuXG4gICogQHBhcmFtIGRhdGEgT2JqZWN0IGNvbnRhaW5pbmcgc3VibWlzc2lvbiBkYXRhLlxuICAqL1xuICBwcm9jZXNzUmVxdWVzdChkYXRhOiBQcm9jZXNzUmVxdWVzdFBheWxvYWQpOiBPYnNlcnZhYmxlPENvbW1vbkFwaVJlc3BvbnNlPiB7XG4gICAgY29uc3QgaGVhZGVycyA9IGdldEhlYWRlcnMoKTtcbiAgICByZXR1cm4gdGhpcy5hcGlTZXJ2aWNlLnBvc3QoXG4gICAgICBgJHtBUEkucHJvY2Vzc1JlcXVlc3R9YCxcbiAgICAgIGRhdGEsXG4gICAgICBoZWFkZXJzXG4gICAgKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZXRyaWV2ZXMgdGhlIGZvcm1JTyBjb21wb25lbnRzIGZvciB0aGUgZ2l2ZW4gYXBwT2JqZWN0SWQgYW5kIHR5cGUuXG4gICAqIEBwYXJhbSBhcHBPYmplY3RJZCAtIFRoZSBJRCBvZiB0aGUgYXBwIG9iamVjdC5cbiAgICogQHBhcmFtIHR5cGUgLSBUaGUgdHlwZSBvZiB0aGUgY29tcG9uZW50cyB0byByZXRyaWV2ZS4gQ2FuIGJlIGVpdGhlciAnQ29tbW9uRmlsdGVyJyBvciAnQnVsa1VwZGF0ZSdcbiAgICogQHBhcmFtIHBhcmFtcyAtIEFkZGl0aW9uYWwgcGFyYW1ldGVycyBmb3IgdGhlIEFQSSBjYWxsLlxuICAgKiBAcmV0dXJucyBUaGUgZm9ybUlPIGNvbXBvbmVudHMgaW4gdGhlIHJlc3BvbnNlIGJvZHkuXG4gICAqL1xuICBidWlsZEZvcm1JT0NvbXBvbmVudHMoYXBwT2JqZWN0SWQ6IHN0cmluZywgdHlwZTogQnVpbGRGb3JtQ29tcG9uZW50VHlwZSwgcGFyYW1zPzogYW55KTogT2JzZXJ2YWJsZTxDb21tb25BcGlSZXNwb25zZT4ge1xuICAgIGNvbnN0IGhlYWRlcnMgPSBnZXRIZWFkZXJzKCk7XG4gICAgcmV0dXJuIHRoaXMuYXBpU2VydmljZS5nZXQoXG4gICAgICBgJHtBUEkuQnVpbGRGb3JtSU9Db21wb25lbnRzfSR7YXBwT2JqZWN0SWR9JlR5cGU9JHt0eXBlfWAsXG4gICAgICBwYXJhbXMsXG4gICAgICBoZWFkZXJzXG4gICAgKTtcbiAgfVxufSJdfQ==
@@ -198,32 +198,6 @@ export class TabGetService {
198
198
  headers);
199
199
  }
200
200
  }
201
- /**
202
- * Retrieves a form configuration for a common filter based on the provided application object ID.
203
- * @param appObjectId - The ID of the application object.
204
- * @param params - Optional parameters for the request.
205
- * @returns The response from the API or null if headers are unavailable.
206
- */
207
- getBuildFormIOForCommonFilter(appObjectId, params) {
208
- const headers = getHeaders();
209
- if (headers) {
210
- return this.apiService.get(`${API.BuildFormIOComponents}${appObjectId}&Type=CommonFilter`, params, headers);
211
- }
212
- return null;
213
- }
214
- /**
215
- * Retrieves a form configuration for a bulk update based on the provided application object ID.
216
- * @param appObjectId - The ID of the application object.
217
- * @param params - Optional parameters for the request.
218
- * @returns The response from the API or null if headers are unavailable.
219
- */
220
- getBuildFormIOForBulkUpdate(appObjectId, params) {
221
- const headers = getHeaders();
222
- if (headers) {
223
- return this.apiService.get(`${API.BuildFormIOComponents}${appObjectId}&Type=BulkUpdate`, params, headers);
224
- }
225
- return null;
226
- }
227
201
  // /**
228
202
  // * Get Resource Language By Language Code
229
203
  // * @param languageCode - Language Code
@@ -369,4 +343,4 @@ export class TabGetService {
369
343
  type: Injectable,
370
344
  args: [{ providedIn: 'root' }]
371
345
  }], null, null); })();
372
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFiLWdldC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9kYXRhLWFjY2Vzcy9zcmMvbGliL3RhYi1jb3JlLXV0aWxpdHkvYXBwL2NydWQvdGFiLWdldC5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLHVEQUF1RDtBQUV2RCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNuRCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFDaEUsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQzFELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUNuRCxPQUFPLEVBQUUsR0FBRyxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDakQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBRXJELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUNwRCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDaEQsT0FBTyxFQUNMLG1CQUFtQixFQUNuQiwwQkFBMEIsR0FDM0IsTUFBTSxtQ0FBbUMsQ0FBQztBQUMzQyxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sTUFBTSxDQUFDOztBQUdqQyxNQUFNLE9BQU8sYUFBYTtJQUQxQjtRQUVtQixlQUFVLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBQ2hDLGNBQVMsR0FBRyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUM7S0E4WmhEO0lBNVpDOzs7O09BSUc7SUFDSCxxQkFBcUIsQ0FBQyxJQUFTLEVBQUMsT0FBWTtRQUMxQyxNQUFNLE1BQU0sR0FBRyxVQUFVLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDakMsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FD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bGludC1kaXNhYmxlIEB0eXBlc2NyaXB0LWVzbGludC9uby1leHBsaWNpdC1hbnkgKi9cclxuXHJcbmltcG9ydCB7IEluamVjdGFibGUsIGluamVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBBcGlTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vY29yZS9odHRwLWNsaWVudC9hcGkuc2VydmljZSc7XHJcbmltcG9ydCB7IERTUUhlbHBlciB9IGZyb20gJy4uL2hlbHBlcnMvY29tbW9uL2RzcS5oZWxwZXJzJztcclxuaW1wb3J0IHsgZ2V0SGVhZGVycyB9IGZyb20gJy4uL3V0aWxzL3JlcS1yZXMudXRpbCc7XHJcbmltcG9ydCB7IEFQSSB9IGZyb20gJy4uL2NvbnN0YW50cy9hcGktY29uc3RhbnRzJztcclxuaW1wb3J0IHsgZ2V0QXBwT2JqZWN0IH0gZnJvbSAnLi4vdXRpbHMvdGFiLWFwcC51dGlsJztcclxuaW1wb3J0IHsgQVBJU2VsZWN0UXVlcnkgfSBmcm9tICcuLi9tb2RlbHMvYXBpLXF1ZXJ5LmNsYXNzJztcclxuaW1wb3J0IHsgRmlsdGVyVmFsdWVUeXBlIH0gZnJvbSAnLi4vZW51bXMvZHNxLmVudW0nO1xyXG5pbXBvcnQgeyBRdWVyeVR5cGUgfSBmcm9tICcuLi9lbnVtcy9xdWVyeS5lbnVtJztcclxuaW1wb3J0IHtcclxuICBBcHBPYmplY3RzQ29uc3RhbnRzLFxyXG4gIERhdGFTb3VyY2VRdWVyaWVzQ29uc3RhbnRzLFxyXG59IGZyb20gJy4uL2NvbnN0YW50cy9hcHAtb2JqZWN0LWNvbnN0YW50cyc7XHJcbmltcG9ydCB7IHN3aXRjaE1hcCB9IGZyb20gJ3J4anMnO1xyXG5cclxuQEluamVjdGFibGUoeyBwcm92aWRlZEluOiAncm9vdCcgfSlcclxuZXhwb3J0IGNsYXNzIFRhYkdldFNlcnZpY2Uge1xyXG4gIHByaXZhdGUgcmVhZG9ubHkgYXBpU2VydmljZSA9IGluamVjdChBcGlTZXJ2aWNlKTtcclxuICBwcml2YXRlIHJlYWRvbmx5IGRzcUhlbHBlciA9IGluamVjdChEU1FIZWxwZXIpO1xyXG5cclxuICAvKipcclxuICAgKiBFeGVjdXRlIFJBVyBEU1Egd2l0aCBOYW1lXHJcbiAgICogQHBhcmFtIGRhdGEgLSBPYmplY3QgY29udGFpbmluZyBBcHBPYmplY3ROYW1lIGFuZCBEU1FOYW1lXHJcbiAgICogQHJldHVybnMgUmVzcG9uc2UgZnJvbSB0aGUgQVBJXHJcbiAgICovXHJcbiAgZXhlY3V0ZVJBV0RTUVdpdGhOYW1lKGRhdGE6IGFueSxoZWFkZXJzPzphbnkpOiBhbnkge1xyXG4gICAgY29uc3QgaGVhZGVyID0gZ2V0SGVhZGVycyhoZWFkZXJzKTtcclxuICAgICAgcmV0dXJuIHRoaXMuYXBpU2VydmljZS5wb3N0KFxyXG4gICAgICAgIGAke0FQSS5nZXREU1F9LyR7ZGF0YS5BcHBPYmplY3ROYW1lfS8ke2RhdGEuRFNRTmFtZX1gLFxyXG4gICAgICAgIGRhdGEsXHJcbiAgICAgICAgaGVhZGVyXHJcbiAgICAgICk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBHZXQgUmVjb3JkXHJcbiAgICogQHBhcmFtIHBhcmFtcyAtIFBhcmFtZXRlcnMgZm9yIHRoZSByZXF1ZXN0XHJcbiAgICogQHJldHVybnMgUmVzcG9uc2UgZnJvbSB0aGUgQVBJXHJcbiAgICovXHJcbiAgZ2V0UmVjb3JkKHBhcmFtczogYW55KTogYW55IHtcclxuICAgIGNvbnN0IGhlYWRlcnMgPSBnZXRIZWFkZXJzKCk7XHJcbiAgICBpZiAoaGVhZGVycykge1xyXG4gICAgICByZXR1cm4gdGhpcy5hcGlTZXJ2aWNlLmdldChgJHtBUEkuZ2V0cmVjb3JkfWAsIHBhcmFtcywgaGVhZGVycyk7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gbnVsbDtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIEV4ZWN1dGUgUmF3IFNRTFxyXG4gICAqIEBwYXJhbSBkYXRhIC0gRGF0YSBmb3IgdGhlIHJlcXVlc3RcclxuICAgKiBAcmV0dXJucyBSZXNwb25zZSBmcm9tIHRoZSBBUElcclxuICAgKi9cclxuICBleGVjdXRlUmF3U3FsKGRhdGE6IGFueSk6IGFueSB7XHJcbiAgICBjb25zdCBoZWFkZXJzID0gZ2V0SGVhZGVycygpO1xyXG4gICAgaWYgKGhlYWRlcnMpIHtcclxuICAgICAgcmV0dXJuIHRoaXMuYXBpU2VydmljZS5wb3N0KGAke0FQSS5yYXdTUUx9JHtkYXRhfWAsICcnLCBoZWFkZXJzKTtcclxuICAgIH1cclxuICAgIHJldHVybiBudWxsO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogR2V0IEhpc3RvcnlcclxuICAgKiBAcGFyYW0gYXBwT2JqZWN0SWQgLSBJRCBvZiB0aGUgYXBwbGljYXRpb24gb2JqZWN0XHJcbiAgICogQHBhcmFtIHJlY29yZElkcyAtIEFycmF5IG9mIHJlY29yZCBJRHNcclxuICAgKiBAcmV0dXJucyBSZXNwb25zZSBmcm9tIHRoZSBBUElcclxuICAgKi9cclxuICBnZXRIaXN0b3J5KGFwcE9iamVjdElkOiBzdHJpbmcsIHJlY29yZElkczogc3RyaW5nW10pOiBhbnkge1xyXG4gICAgY29uc3QgZGF0YTogYW55ID0ge307XHJcbiAgICBpZiAoYXBwT2JqZWN0SWQgJiYgcmVjb3JkSWRzKSB7XHJcbiAgICAgIGNvbnN0IGFwcE9iamVjdE5hbWUgPSBnZXRBcHBPYmplY3QoYXBwT2JqZWN0SWQpPy5PYmplY3ROYW1lO1xyXG4gICAgICBjb25zdCBoZWFkZXJzID0gZ2V0SGVhZGVycygpO1xyXG4gICAgICBpZiAoYXBwT2JqZWN0TmFtZSAmJiBoZWFkZXJzKSB7XHJcbiAgICAgICAgZGF0YS5PYmplY3ROYW1lID0gYXBwT2JqZWN0TmFtZTtcclxuICAgICAgICBkYXRhLlJlY29yZElkcyA9IHJlY29yZElkcztcclxuICAgICAgICByZXR1cm4gdGhpcy5hcGlTZXJ2aWNlLnBvc3QoYCR7QVBJLmdldEhpc3Rvcnl9YCwgZGF0YSwgaGVhZGVycyk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIHJldHVybiBudWxsO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogUE1KQVkgSW1wb3J0XHJcbiAgICogQHBhcmFtIGRhdGEgLSBEYXRhIGZvciBQTUpBWSBpbXBvcnRcclxuICAgKiBAcmV0dXJucyBSZXNwb25zZSBmcm9tIHRoZSBBUElcclxuICAgKi9cclxuICBwbWpheUltcG9ydChkYXRhOiBhbnkpOiBhbnkge1xyXG4gICAgY29uc3QgaGVhZGVycyA9IGdldEhlYWRlcnMoKTtcclxuICAgIGlmIChoZWFkZXJzKSB7XHJcbiAgICAgIHJldHVybiB0aGlzLmFwaVNlcnZpY2UucG9zdChgJHtBUEkucG1qYXlJbXBvcnR9YCwgZGF0YSwgaGVhZGVycyk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBFeGVjdXRlcyBhIHNlbGVjdCBxdWVyeSB3aXRoIG9wdGlvbmFsIHBhcmFtZXRlcnNcclxuICAgKiBAcGFyYW0gZGF0YSAtIFRoZSBzZWxlY3QgcXVlcnkgZGF0YVxyXG4gICAqIEBwYXJhbSBwYXJhbWV0ZXJzIC0gT3B0aW9uYWwgcGFyYW1ldGVycyB0byBiZSBhcHBsaWVkIHRvIHRoZSBxdWVyeVxyXG4gICAqIEByZXR1cm5zIFJlc3VsdCBvZiB0aGUgc2VsZWN0IHF1ZXJ5IGV4ZWN1dGlvblxyXG4gICAqL1xyXG4gIHNlbGVjdEV4ZWN1dG9yKGRhdGE6IEFQSVNlbGVjdFF1ZXJ5LCBwYXJhbWV0ZXJzPzogYW55KTogYW55IHtcclxuICAgIGlmIChwYXJhbWV0ZXJzICYmIE9iamVjdC5rZXlzKHBhcmFtZXRlcnMpLmxlbmd0aCkge1xyXG4gICAgICBkYXRhLldoZXJlQ2xhdXNlLkZpbHRlckxvZ2ljID0gZGF0YS5XaGVyZUNsYXVzZS5GaWx0ZXJMb2dpYyB8fCAnW10nO1xyXG4gICAgICBkYXRhLldoZXJlQ2xhdXNlLkZpbHRlcnMgPSBkYXRhLldoZXJlQ2xhdXNlLkZpbHRlcnMgfHwgW107XHJcbiAgICAgIGRhdGEuV2hlcmVDbGF1c2UuU1FMUXVlcnkgPSBkYXRhLldoZXJlQ2xhdXNlLlNRTFF1ZXJ5IHx8ICcnO1xyXG4gICAgICAvKipcclxuICAgICAgICogUmVwbGFjZXMgdmFsdWVzIGZyb20gcGFyYW1ldGVycyBpZiBtYXRjaGVkIGFuZCBpbiBmb3JtYXQgb2Yge3trZXl9fS5cclxuICAgICAgICogRXhhbXBsZTogaWYgZmlsdGVyLlZhbHVlIGlzIFwie3t1c2VySWR9fVwiIGFuZFxyXG4gICAgICAgKiB0aGlzLl92YWx1ZS5wYXJhbWV0ZXJzLnVzZXJJZCBpcyAxMjMsIHRoZW4gZmlsdGVyLlZhbHVlIHdpbGwgYmUgcmVwbGFjZWQgd2l0aFxyXG4gICAgICAgKiBcIjEyM1wiLlxyXG4gICAgICAgKi9cclxuICAgICAgZGF0YS5XaGVyZUNsYXVzZS5GaWx0ZXJzLmZvckVhY2goKGZpbHRlcjogYW55KSA9PiB7XHJcbiAgICAgICAgLy8gZmlsdGVyLlZhbHVlVHlwZSBpcyAxIChsaXRlcmFsKVxyXG4gICAgICAgIGlmIChmaWx0ZXIuVmFsdWUgJiYgZmlsdGVyLlZhbHVlVHlwZSA9PSBGaWx0ZXJWYWx1ZVR5cGUuTGl0ZXJhbCkge1xyXG4gICAgICAgICAgZmlsdGVyLlZhbHVlID0gZmlsdGVyLlZhbHVlLnJlcGxhY2UoXHJcbiAgICAgICAgICAgIC97eyhbXn1dKyl9fS9nLFxyXG4gICAgICAgICAgICAobWF0Y2g6IHN0cmluZywga2V5OiBzdHJpbmcpID0+IHtcclxuICAgICAgICAgICAgICBjb25zdCB2YWx1ZSA9IHBhcmFtZXRlcnNba2V5XTtcclxuICAgICAgICAgICAgICByZXR1cm4gdmFsdWUgIT09IHVuZGVmaW5lZCA/IHZhbHVlIDogbnVsbDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgLy8gaWYgdmFsdWVUeXBlID0gMiAoUGFyYW1ldGVycylcclxuICAgICAgICAvLyB0aGVuIHdlIG5lZWQgdG8gcmVwbGFjZSB0aGUgdmFsdWUgd2l0aCBwYXJhbWV0ZXJzIGFuZCBjaGFuZ2UgdGhlIHZhbHVlVHlwZSB0byAxIChMaXRlcmFsKVxyXG4gICAgICAgIGVsc2UgaWYgKGZpbHRlci5WYWx1ZVR5cGUgPT0gRmlsdGVyVmFsdWVUeXBlLlBhcmFtZXRlcikge1xyXG4gICAgICAgICAgZmlsdGVyLlZhbHVlID0gZmlsdGVyLlZhbHVlLnJlcGxhY2UoXHJcbiAgICAgICAgICAgIC8oW159XSspL2csXHJcbiAgICAgICAgICAgIChtYXRjaDogc3RyaW5nLCBrZXk6IHN0cmluZykgPT4ge1xyXG4gICAgICAgICAgICAgIGNvbnN0IHZhbHVlID0gcGFyYW1ldGVyc1trZXldO1xyXG4gICAgICAgICAgICAgIHJldHVybiB2YWx1ZSAhPT0gdW5kZWZpbmVkID8gdmFsdWUgOiBudWxsO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICApO1xyXG4gICAgICAgICAgZmlsdGVyLlZhbHVlVHlwZSA9IEZpbHRlclZhbHVlVHlwZS5MaXRlcmFsO1xyXG4gICAgICAgIH1cclxuICAgICAgfSk7XHJcbiAgICAgIChkYXRhPy5XaGVyZUNsYXVzZT8uRmlsdGVycyB8fCBbXSkuZm9yRWFjaCgoZWxlbWVudDogYW55KSA9PiB7XHJcbiAgICAgICAgaWYgKFxyXG4gICAgICAgICAgZWxlbWVudC5WYWx1ZVR5cGUgPT09IEZpbHRlclZhbHVlVHlwZS5QYXJhbWV0ZXIgJiZcclxuICAgICAgICAgIHBhcmFtZXRlcnNbZWxlbWVudC5GaWVsZElEXVxyXG4gICAgICAgICkge1xyXG4gICAgICAgICAgZWxlbWVudC5WYWx1ZSA9IHBhcmFtZXRlcnNbZWxlbWVudC5GaWVsZElEXTtcclxuICAgICAgICB9XHJcbiAgICAgIH0pO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIHRoaXMuZHNxSGVscGVyLmV4ZWN1dGVRdWVyeShkYXRhLCBRdWVyeVR5cGUuU2VsZWN0KTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIEV4ZWN1dGVzIGEgc2VsZWN0IHF1ZXJ5IGJ5IGl0cyBJRCwgdXNpbmcgdGhlIHByb3ZpZGVkIHBhcmFtZXRlcnMuXHJcbiAgICpcclxuICAgKiBAcGFyYW0gc2VsZWN0UXVlcnlJZCAtIFRoZSBJRCBvZiB0aGUgc2VsZWN0IHF1ZXJ5IHRvIGJlIGV4ZWN1dGVkLlxyXG4gICAqIEBwYXJhbSBwYXJhbWV0ZXJzIC0gT3B0aW9uYWwgcGFyYW1ldGVycyB0byBiZSBhcHBsaWVkIHRvIHRoZSBxdWVyeS5cclxuICAgKiBAcmV0dXJucyBUaGUgcmVzdWx0IG9mIHRoZSBzZWxlY3QgcXVlcnkgZXhlY3V0aW9uLlxyXG4gICAqIEB0aHJvd3MgQW4gZXJyb3IgaWYgdGhlIEFQSSByZXNwb25zZSBzdGF0dXMgY29kZSBpcyBub3QgJzIwMCcuXHJcbiAgICovXHJcbiAgZXhlY3V0ZVNlbGVjdFF1ZXJ5QnlJZChzZWxlY3RRdWVyeUlkOiBzdHJpbmcsIHBhcmFtZXRlcnM/OiBhbnkpOiBhbnkge1xyXG4gICAgcmV0dXJuIHRoaXMuZXhlY3V0ZVJBV0RTUVdpdGhOYW1lKHtcclxuICAgICAgQXBwT2JqZWN0TmFtZTogQXBwT2JqZWN0c0NvbnN0YW50cy5UQUJEX1F1ZXJpZXMsXHJcbiAgICAgIERTUU5hbWU6IERhdGFTb3VyY2VRdWVyaWVzQ29uc3RhbnRzLkRldGFpbF9UQUJEX1F1ZXJpZXMsXHJcbiAgICAgIFJlcXRva2Vuczoge1xyXG4gICAgICAgIElEOiBzZWxlY3RRdWVyeUlkLFxyXG4gICAgICB9LFxyXG4gICAgfSkucGlwZShcclxuICAgICAgc3dpdGNoTWFwKChyZXM6IGFueSkgPT4ge1xyXG4gICAgICAgIGlmIChyZXMuU3RhdHVzQ29kZSA9PT0gJzIwMCcpIHtcclxuICAgICAgICAgIGNvbnN0IENvbmZpZ3VyYXRpb24gPSBKU09OLnBhcnNlKHJlcy5SZXN1bHRbMF0uQ29uZmlndXJhdGlvbiB8fCAne30nKTtcclxuICAgICAgICAgIGlmIChDb25maWd1cmF0aW9uLldoZXJlQ2xhdXNlPy5GaWx0ZXJzKSB7XHJcbiAgICAgICAgICAgIENvbmZpZ3VyYXRpb24uV2hlcmVDbGF1c2UuRmlsdGVycyA9IHRoaXMucmVtb3ZlV2hlcmVDbGF1c2VGb3JFbXB0eVBhcmFtcyhDb25maWd1cmF0aW9uLldoZXJlQ2xhdXNlLkZpbHRlcnMsIHBhcmFtZXRlcnMgfHwge30pO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgcmV0dXJuIHRoaXMuc2VsZWN0RXhlY3V0b3IoQ29uZmlndXJhdGlvbiwgcGFyYW1ldGVycyk7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgIHRocm93IG5ldyBFcnJvcihyZXMuTWVzc2FnZSk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9KVxyXG4gICAgKTtcclxuICB9XHJcbiAgcmVtb3ZlV2hlcmVDbGF1c2VGb3JFbXB0eVBhcmFtcyhmaWx0ZXJzOiBhbnlbXSwgcGFyYW1ldGVyczogUmVjb3JkPHN0cmluZywgYW55Pik6IGFueVtdIHtcclxuICAgIHJldHVybiBmaWx0ZXJzLmZpbHRlcigoZmlsdGVyOiBhbnkpID0+IHtcclxuICAgICAgICBpZiAoZmlsdGVyLlZhbHVlVHlwZSA9PT0gRmlsdGVyVmFsdWVUeXBlLlBhcmFtZXRlcikge1xyXG4gICAgICAgICAgICBjb25zdCBwYXJhbWV0ZXJOYW1lID0gZmlsdGVyLlZhbHVlO1xyXG4gICAgICAgICAgICBpZiAocGFyYW1ldGVycz8uaGFzT3duUHJvcGVydHkocGFyYW1ldGVyTmFtZSkgJiYgcGFyYW1ldGVyc1twYXJhbWV0ZXJOYW1lXSA9PT0gJycpIHtcclxuICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTsgLy8gUmVtb3ZlIGZpbHRlclxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGlmIChPYmplY3Qua2V5cyhwYXJhbWV0ZXJzIHx8IHt9KS5sZW5ndGggPT09IDAgJiYgZmlsdGVyLlZhbHVlVHlwZSA9PT0gRmlsdGVyVmFsdWVUeXBlLlBhcmFtZXRlcikge1xyXG4gICAgICAgICAgICByZXR1cm4gZmFsc2U7IC8vIFJlbW92ZSBmaWx0ZXJcclxuICAgICAgICB9XHJcbiAgICAgICAgcmV0dXJuIHRydWU7IC8vIEtlZXAgZmlsdGVyXHJcbiAgICB9KTtcclxuICB9XHJcbiAgZ2V0VGVzdENvbm5lY3Rpb24oY29ubmVjdGlvbklkOiBhbnksIHBhcmFtcz86IGFueSk6IGFueSB7XHJcbiAgICBpZiAoY29ubmVjdGlvbklkKSB7XHJcbiAgICAgIGNvbnN0IGhlYWRlcnMgPSBnZXRIZWFkZXJzKCk7XHJcbiAgICAgIGlmIChoZWFkZXJzKSB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuYXBpU2VydmljZS5nZXQoXHJcbiAgICAgICAgICBgJHtBUEkudGVzdENvbm5lY3Rpb259JHtjb25uZWN0aW9uSWR9YCxcclxuICAgICAgICAgIHBhcmFtcyxcclxuICAgICAgICAgIGhlYWRlcnNcclxuICAgICAgICApO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICByZXR1cm4gbnVsbDtcclxuICB9XHJcbiAgZ2V0UGVyZm9ybVZhbGlkYXRpb24oY29ubmVjdGlvbklkOiBhbnksIHBhcmFtcz86IGFueSk6IGFueSB7XHJcbiAgICBpZiAoY29ubmVjdGlvbklkKSB7XHJcbiAgICAgIGNvbnN0IGhlYWRlcnMgPSBnZXRIZWFkZXJzKCk7XHJcbiAgICAgIGlmIChoZWFkZXJzKSB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuYXBpU2VydmljZS5nZXQoXHJcbiAgICAgICAgICBgJHtBUEkucGVyZm9ybVZhbGlkYXRpb259JHtjb25uZWN0aW9uSWR9YCxcclxuICAgICAgICAgIHBhcmFtcyxcclxuICAgICAgICAgIGhlYWRlcnNcclxuICAgICAgICApO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICByZXR1cm4gbnVsbDtcclxuICB9XHJcbiAgLyoqXHJcbiAgICogU2V0cyB0aGUgdGFiIGNvbXBvbmVudHMgZm9yIHRoZSBnaXZlbiB0ZW5hbnRcclxuICAgKiBAcGFyYW0gY29ubmVjdGlvbklkIFRoZSBJRCBvZiB0aGUgY29ubmVjdGlvblxyXG4gICAqIEByZXR1cm5zIEFuIG9ic2VydmFibGUgb2YgdGhlIHJlc3BvbnNlIGZyb20gdGhlIEFQSVxyXG4gICAqL1xyXG4gIHNldFRhYkNvbXBvbmVudHNGb3JUZW5hbnQoY29ubmVjdGlvbklkOiBzdHJpbmcsIGRhdGE/OiBhbnkpOiBhbnkge1xyXG4gICAgY29uc3QgaGVhZGVycyA9IGdldEhlYWRlcnMoKTtcclxuICAgIGlmIChoZWFkZXJzKSB7XHJcbiAgICAgIC8vIFNldCB0aGUgdGFiIGNvbXBvbmVudHMgZm9yIHRoZSB0ZW5hbnRcclxuICAgICAgcmV0dXJuIHRoaXMuYXBpU2VydmljZS5wb3N0KFxyXG4gICAgICAgIC8vIEFQSSBlbmRwb2ludCBmb3Igc2V0dGluZyB0YWIgY29tcG9uZW50c1xyXG4gICAgICAgIGAke0FQSS5zZXRUYWJDb21wb25lbnRzfSR7Y29ubmVjdGlvbklkfWAsXHJcbiAgICAgICAgZGF0YSxcclxuICAgICAgICAvLyBUaGUgaGVhZGVycyBmb3IgdGhlIHJlcXVlc3RcclxuICAgICAgICBoZWFkZXJzXHJcbiAgICAgICk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBSZXRyaWV2ZXMgYSBmb3JtIGNvbmZpZ3VyYXRpb24gZm9yIGEgY29tbW9uIGZpbHRlciBiYXNlZCBvbiB0aGUgcHJvdmlkZWQgYXBwbGljYXRpb24gb2JqZWN0IElELlxyXG4gICAqIEBwYXJhbSBhcHBPYmplY3RJZCAtIFRoZSBJRCBvZiB0aGUgYXBwbGljYXRpb24gb2JqZWN0LlxyXG4gICAqIEBwYXJhbSBwYXJhbXMgLSBPcHRpb25hbCBwYXJhbWV0ZXJzIGZvciB0aGUgcmVxdWVzdC5cclxuICAgKiBAcmV0dXJucyBUaGUgcmVzcG9uc2UgZnJvbSB0aGUgQVBJIG9yIG51bGwgaWYgaGVhZGVycyBhcmUgdW5hdmFpbGFibGUuXHJcbiAgICovXHJcbiAgZ2V0QnVpbGRGb3JtSU9Gb3JDb21tb25GaWx0ZXIoYXBwT2JqZWN0SWQ6IHN0cmluZywgcGFyYW1zPzogYW55KSB7XHJcbiAgICBjb25zdCBoZWFkZXJzID0gZ2V0SGVhZGVycygpO1xyXG4gICAgaWYgKGhlYWRlcnMpIHtcclxuICAgICAgcmV0dXJuIHRoaXMuYXBpU2VydmljZS5nZXQoXHJcbiAgICAgICAgYCR7QVBJLkJ1aWxkRm9ybUlPQ29tcG9uZW50c30ke2FwcE9iamVjdElkfSZUeXBlPUNvbW1vbkZpbHRlcmAsXHJcbiAgICAgICAgcGFyYW1zLFxyXG4gICAgICAgIGhlYWRlcnNcclxuICAgICAgKTtcclxuICAgIH1cclxuICAgIHJldHVybiBudWxsO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogUmV0cmlldmVzIGEgZm9ybSBjb25maWd1cmF0aW9uIGZvciBhIGJ1bGsgdXBkYXRlIGJhc2VkIG9uIHRoZSBwcm92aWRlZCBhcHBsaWNhdGlvbiBvYmplY3QgSUQuXHJcbiAgICogQHBhcmFtIGFwcE9iamVjdElkIC0gVGhlIElEIG9mIHRoZSBhcHBsaWNhdGlvbiBvYmplY3QuXHJcbiAgICogQHBhcmFtIHBhcmFtcyAtIE9wdGlvbmFsIHBhcmFtZXRlcnMgZm9yIHRoZSByZXF1ZXN0LlxyXG4gICAqIEByZXR1cm5zIFRoZSByZXNwb25zZSBmcm9tIHRoZSBBUEkgb3IgbnVsbCBpZiBoZWFkZXJzIGFyZSB1bmF2YWlsYWJsZS5cclxuICAgKi9cclxuICBnZXRCdWlsZEZvcm1JT0ZvckJ1bGtVcGRhdGUoYXBwT2JqZWN0SWQ6IHN0cmluZywgcGFyYW1zPzogYW55KSB7XHJcbiAgICBjb25zdCBoZWFkZXJzID0gZ2V0SGVhZGVycygpO1xyXG4gICAgaWYgKGhlYWRlcnMpIHtcclxuICAgICAgcmV0dXJuIHRoaXMuYXBpU2VydmljZS5nZXQoXHJcbiAgICAgICAgYCR7QVBJLkJ1aWxkRm9ybUlPQ29tcG9uZW50c30ke2FwcE9iamVjdElkfSZUeXBlPUJ1bGtVcGRhdGVgLFxyXG4gICAgICAgIHBhcmFtcyxcclxuICAgICAgICBoZWFkZXJzXHJcbiAgICAgICk7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gbnVsbDtcclxuICB9XHJcblxyXG4gIC8vIC8qKlxyXG4gIC8vICAqIEdldCBSZXNvdXJjZSBMYW5ndWFnZSBCeSBMYW5ndWFnZSBDb2RlXHJcbiAgLy8gICogQHBhcmFtIGxhbmd1YWdlQ29kZSAtIExhbmd1YWdlIENvZGVcclxuICAvLyAgKiBAcmV0dXJucyBSZXNwb25zZSBmcm9tIHRoZSBBUElcclxuICAvLyAgKi9cclxuICAvLyBnZXRSZXNvdXJjZUxhbmd1YWdlQnlMYW5ndWFnZUNvZGUobGFuZ3VhZ2VDb2RlOiBudW1iZXIpOiBhbnkge1xyXG4gIC8vICAgY29uc3QgaGVhZGVycyA9IGdldEhlYWRlcnMoKTtcclxuICAvLyAgIGlmIChoZWFkZXJzKSB7XHJcbiAgLy8gICAgIHJldHVybiB0aGlzLmFwaVNlcnZpY2UucG9zdChcclxuICAvLyAgICAgICBgJHtBUEkubGFuZ3VhZ2VSZXNvdXJjZX1gLFxyXG4gIC8vICAgICAgIHsgTGFuZ3VhZ2VDb2RlOiBsYW5ndWFnZUNvZGUgfSxcclxuICAvLyAgICAgICBoZWFkZXJzXHJcbiAgLy8gICAgICk7XHJcbiAgLy8gICB9XHJcbiAgLy8gICByZXR1cm4gbnVsbDtcclxuICAvLyB9XHJcblxyXG4gIC8qKlxyXG4gICAqIEdldCBTZWFyY2ggRGF0YVxyXG4gICAqIEBwYXJhbSBzZWFyY2hRdWVyeSAtIFNlYXJjaCBRdWVyeSBzdHJpbmdcclxuICAgKiBAcGFyYW0gbGltaXQgLSBMaW1pdCBvZiBzZWFyY2ggcmVzdWx0c1xyXG4gICAqIEByZXR1cm5zIFJlc3BvbnNlIGZyb20gdGhlIEFQSVxyXG4gICAqL1xyXG4gIGdldFNlYXJjaERhdGEoc2VhcmNoUXVlcnk6IHN0cmluZywgbGltaXQ6IG51bWJlciwgcGFyYW1zPzogYW55KTogYW55IHtcclxuICAgIGNvbnN0IGhlYWRlcnMgPSBnZXRIZWFkZXJzKCk7XHJcbiAgICBpZiAoaGVhZGVycykge1xyXG4gICAgICByZXR1cm4gdGhpcy5hcGlTZXJ2aWNlLmdldChcclxuICAgICAgICBgJHtBUEkuc2VhcmNofT9zZWFyY2hRdWVyeT0ke3NlYXJjaFF1ZXJ5fSZsaW1pdD0ke2xpbWl0fWAsXHJcbiAgICAgICAgcGFyYW1zLFxyXG4gICAgICAgIGhlYWRlcnNcclxuICAgICAgKTtcclxuICAgIH1cclxuICAgIHJldHVybiBudWxsO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogSW5zZXJ0IFNjcmVlbiBQZXJmb3JtYW5jZSBTdGF0aXN0aWNzXHJcbiAgICogQHBhcmFtIGRhdGEgLSBEYXRhIHRvIGluc2VydFxyXG4gICAqIEByZXR1cm5zIFJlc3BvbnNlIGZyb20gdGhlIEFQSVxyXG4gICAqL1xyXG4gIGluc2VydFNjcmVlblBlcmZvcm1hbmNlU3RhdGlzdGljcyhkYXRhOiBhbnkpOiBhbnkge1xyXG4gICAgY29uc3QgaGVhZGVycyA9IGdldEhlYWRlcnMoKTtcclxuICAgIGlmIChoZWFkZXJzKSB7XHJcbiAgICAgIC8vIFNldCB0aGUgdGFiIGNvbXBvbmVudHMgZm9yIHRoZSB0ZW5hbnRcclxuICAgICAgcmV0dXJuIHRoaXMuYXBpU2VydmljZS5wb3N0KFxyXG4gICAgICAgIC8vIEFQSSBlbmRwb2ludCBmb3IgaW5zZXJ0aW5nIHNjcmVlbiBwZXJmb3JtYW5jZSBzdGF0aXN0aWNzXHJcbiAgICAgICAgYCR7QVBJLkluc2VydFNjcmVlblBlcmZvcm1hbmNlQW5hbHl0aWNzfWAsXHJcbiAgICAgICAgZGF0YSxcclxuICAgICAgICAvLyBUaGUgaGVhZGVycyBmb3IgdGhlIHJlcXVlc3RcclxuICAgICAgICBoZWFkZXJzXHJcbiAgICAgICk7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gbnVsbDtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIEV4ZWN1dGVzIGFuIEhUVFAgcmVxdWVzdCB3aXRoIHRoZSBzcGVjaWZpZWQgbWV0aG9kLCBVUkwsIGhlYWRlcnMsIGFuZCBib2R5LlxyXG4gICAqXHJcbiAgICogQHBhcmFtIGZ1bGxVcmwgLVRoZSBmdWxsIFVSTCBvZiB0aGUgcmVxdWVzdCBjb250YWluaW5nIHRoZSBxdWVyeSBwYXJhbWV0ZXJzLlxyXG4gICAqIEBwYXJhbSBtZXRob2QgLSBUaGUgSFRUUCBtZXRob2QgdG8gYmUgdXNlZCAoJ0dFVCcsICdQT1NUJywgJ1BVVCcsICdERUxFVEUnKS5cclxuICAgKiBAcGFyYW0gaGVhZGVycyAtIFRoZSBoZWFkZXJzIHRvIGluY2x1ZGUgaW4gdGhlIHJlcXVlc3QuXHJcbiAgICogQHBhcmFtIGJvZHkgLSBUaGUgYm9keSBjb250ZW50IGZvciBtZXRob2RzIGxpa2UgUE9TVCBhbmQgUFVULlxyXG4gICAqIEByZXR1cm5zIFRoZSBBUEkgcmVzcG9uc2UgY29ycmVzcG9uZGluZyB0byB0aGUgcmVxdWVzdC5cclxuICAgKi9cclxuICBleGVjdXRlSHR0cFJlcXVlc3QoXHJcbiAgICBmdWxsVXJsOiBhbnksXHJcbiAgICBtZXRob2Q6ICdHRVQnIHwgJ1BPU1QnIHwgJ1BVVCcgfCAnREVMRVRFJyxcclxuICAgIGhlYWRlcnM6IGFueSxcclxuICAgIGJvZHk6IGFueVxyXG4gICk6IGFueSB7XHJcbiAgICBoZWFkZXJzID0ge1xyXG4gICAgICAuLi4oaGVhZGVycyB8fCB7fSksXHJcbiAgICAgICdYLVNraXAtSW50ZXJjZXB0b3InOiAndHJ1ZScsXHJcbiAgICAgICdYLVNraXAtQXV0aCc6ICd0cnVlJyxcclxuICAgICAgJ1gtVHJhY2stQVBJLURldGFpbHMnOiAndHJ1ZScsXHJcbiAgICB9O1xyXG4gICAgaWYgKG1ldGhvZCA9PSAnR0VUJykge1xyXG4gICAgICByZXR1cm4gdGhpcy5hcGlTZXJ2aWNlLmdldEJ5VXJsKGZ1bGxVcmwsIHsgaGVhZGVycyB9KTtcclxuICAgIH0gZWxzZSBpZiAobWV0aG9kID09ICdQT1NUJykge1xyXG4gICAgICByZXR1cm4gdGhpcy5hcGlTZXJ2aWNlLnBvc3RCeVVybChmdWxsVXJsLCBib2R5LCB7IGhlYWRlcnMgfSk7XHJcbiAgICB9IGVsc2UgaWYgKG1ldGhvZCA9PSAnUFVUJykge1xyXG4gICAgICByZXR1cm4gdGhpcy5hcGlTZXJ2aWNlLnB1dEJ5VXJsKGZ1bGxVcmwsIGJvZHksIHsgaGVhZGVycyB9KTtcclxuICAgIH0gZWxzZSBpZiAobWV0aG9kID09ICdERUxFVEUnKSB7XHJcbiAgICAgIHJldHVybiB0aGlzLmFwaVNlcnZpY2UuZGVsZXRlQnlVcmwoZnVsbFVybCwgeyBoZWFkZXJzIH0pO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogR2VuZXJhdGVzIGFuIEhUVFAgUmVxdWVzdCBiYXNlZCBvbiB0aGUgcHJvdmlkZWQgRGF0YVNvdXJjZVF1ZXJ5IG5hbWVcclxuICAgKiBAcGFyYW0gUXVlcnlOYW1lIC0gVGhlIG5hbWUgb2YgdGhlIERhdGFTb3VyY2VRdWVyeVxyXG4gICAqIEByZXR1cm5zIFRoZSByZXN1bHQgb2YgdGhlIGdlbmVyYXRlZCBIVFRQIHJlcXVlc3RcclxuICAgKi9cclxuICBnZW5lcmF0ZUh0dHBSZXF1ZXN0KFF1ZXJ5TmFtZTogc3RyaW5nKTogYW55IHtcclxuICAgIGNvbnN0IGhlYWRlcnMgPSBnZXRIZWFkZXJzKCk7XHJcbiAgICBpZiAoaGVhZGVycykge1xyXG4gICAgICByZXR1cm4gdGhpcy5hcGlTZXJ2aWNlLmdldChcclxuICAgICAgICBgJHtBUEkuR2VuZXJhdGVIdHRwUmVxdWVzdH0/ZHNxTmFtZT0ke1F1ZXJ5TmFtZX1gLFxyXG4gICAgICAgIHVuZGVmaW5lZCxcclxuICAgICAgICBoZWFkZXJzXHJcbiAgICAgICk7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gbnVsbDtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIFJldHJpZXZlcyB0aGUgZGV0YWlsZWQgYW5hbHl0aWNzIG9mIGEgc2NyZWVuJ3MgcGVyZm9ybWFuY2UuXHJcbiAgICogQHBhcmFtIGRhdGEgLSBEYXRhIHRvIGJlIHNlbnQgdG8gdGhlIEFQSVxyXG4gICAqIEByZXR1cm5zIFJlc3BvbnNlIGZyb20gdGhlIEFQSVxyXG4gICAqL1xyXG4gIGdldERldGFpbE9mUGVyZm9ybWFuY2VBbmFseXRpY3MoZGF0YTogYW55KTogYW55IHtcclxuICAgIGNvbnN0IGhlYWRlcnMgPSBnZXRIZWFkZXJzKCk7XHJcbiAgICBpZiAoaGVhZGVycykge1xyXG4gICAgICAvLyBTZXQgdGhlIHRhYiBjb21wb25lbnRzIGZvciB0aGUgdGVuYW50XHJcbiAgICAgIHJldHVybiB0aGlzLmFwaVNlcnZpY2UucG9zdChcclxuICAgICAgICAvLyBBUEkgZW5kcG9pbnQgZm9yIHJldHJpZXZpbmcgdGhlIGRldGFpbGVkIGFuYWx5dGljcyBvZiBhIHNjcmVlbidzIHBlcmZvcm1hbmNlXHJcbiAgICAgICAgYCR7QVBJLkdldERldGFpbE9mUGVyZm9ybWFuY2VBbmFseXRpY3N9YCxcclxuICAgICAgICBkYXRhLFxyXG4gICAgICAgIC8vIFRoZSBoZWFkZXJzIGZvciB0aGUgcmVxdWVzdFxyXG4gICAgICAgIGhlYWRlcnNcclxuICAgICAgKTtcclxuICAgIH1cclxuICAgIHJldHVybiBudWxsO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogR2V0IHN1bW1hcnkgb2YgcGVyZm9ybWFuY2UgYW5hbHl0aWNzXHJcbiAgICogQHBhcmFtIGRhdGEgLSBEYXRhIHRvIGJlIHNlbnQgdG8gdGhlIEFQSVxyXG4gICAqIEByZXR1cm5zIFJlc3BvbnNlIGZyb20gdGhlIEFQSVxyXG4gICAqL1xyXG4gIGdldFN1bW1hcnlPZlBlcmZvcm1hbmNlQW5hbHl0aWNzKGRhdGE6IGFueSk6IGFueSB7XHJcbiAgICBjb25zdCBoZWFkZXJzID0gZ2V0SGVhZGVycygpO1xyXG4gICAgaWYgKGhlYWRlcnMpIHtcclxuICAgICAgLy8gU2V0IHRoZSB0YWIgY29tcG9uZW50cyBmb3IgdGhlIHRlbmFudFxyXG4gICAgICByZXR1cm4gdGhpcy5hcGlTZXJ2aWNlLnBvc3QoXHJcbiAgICAgICAgLy8gQVBJIGVuZHBvaW50IGZvciBpbnNlcnRpbmcgc2NyZWVuIHBlcmZvcm1hbmNlIHN0YXRpc3RpY3NcclxuICAgICAgICBgJHtBUEkuR2V0U3VtbWFyeU9mUGVyZm9ybWFuY2VBbmFseXRpY3N9YCxcclxuICAgICAgICBkYXRhLFxyXG4gICAgICAgIC8vIFRoZSBoZWFkZXJzIGZvciB0aGUgcmVxdWVzdFxyXG4gICAgICAgIGhlYWRlcnNcclxuICAgICAgKTtcclxuICAgIH1cclxuICAgIHJldHVybiBudWxsO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogUmVmcmVzaGVzIHRoZSBnbG9iYWwgc2VhcmNoIGRhdGEuXHJcbiAgICogQHBhcmFtIGRhdGEgLSBEYXRhIHRvIGJlIHNlbnQgdG8gdGhlIEFQSVxyXG4gICAqIEByZXR1cm5zIFJlc3BvbnNlIGZyb20gdGhlIEFQSVxyXG4gICAqL1xyXG4gIFJlZnJlc2hHbG9iYWxTZWFyY2hEYXRhKGRhdGE6IGFueSk6IGFueSB7XHJcbiAgICBjb25zdCBoZWFkZXJzID0gZ2V0SGVhZGVycygpO1xyXG4gICAgaWYgKGhlYWRlcnMpIHtcclxuICAgICAgLy8gU2V0IHRoZSB0YWIgY29tcG9uZW50cyBmb3IgdGhlIHRlbmFudFxyXG4gICAgICByZXR1cm4gdGhpcy5hcGlTZXJ2aWNlLnBvc3QoXHJcbiAgICAgICAgLy8gQVBJIGVuZHBvaW50IGZvciByZWZyZXNoaW5nIHRoZSBnbG9iYWwgc2VhcmNoIGRhdGFcclxuICAgICAgICBgJHtBUEkuUmVmcmVzaEdsb2JhbFNlYXJjaERhdGF9YCxcclxuICAgICAgICBkYXRhLFxyXG4gICAgICAgIC8vIFRoZSBoZWFkZXJzIGZvciB0aGUgcmVxdWVzdFxyXG4gICAgICAgIGhlYWRlcnNcclxuICAgICAgKTtcclxuICAgIH1cclxuICAgIHJldHVybiBudWxsO1xyXG4gIH1cclxufVxyXG4iXX0=
346
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFiLWdldC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9kYXRhLWFjY2Vzcy9zcmMvbGliL3RhYi1jb3JlLXV0aWxpdHkvYXBwL2NydWQvdGFiLWdldC5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLHVEQUF1RDtBQUV2RCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNuRCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFDaEUsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQzFELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUNuRCxPQUFPLEVBQUUsR0FBRyxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDakQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBRXJELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUNwRCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDaEQsT0FBTyxFQUNMLG1CQUFtQixFQUNuQiwwQkFBMEIsR0FDM0IsTUFBTSxtQ0FBbUMsQ0FBQztBQUMzQyxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sTUFBTSxDQUFDOztBQUdqQyxNQUFNLE9BQU8sYUFBYTtJQUQxQjtRQUVtQixlQUFVLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBQ2hDLGNBQVMsR0FBRyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUM7S0EwWGhEO0lBeFhDOzs7O09BSUc7SUFDSCxxQkFBcUIsQ0FBQyxJQUFTLEVBQUMsT0FBWTtRQUMxQyxNQUFNLE1BQU0sR0FBRyxVQUFVLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDakMsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FD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dUJBQXVCLENBQUMsSUFBUztRQUMvQixNQUFNLE9BQU8sR0FBRyxVQUFVLEVBQUUsQ0FBQztRQUM3QixJQUFJLE9BQU8sRUFBRSxDQUFDO1lBQ1osd0NBQXdDO1lBQ3hDLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJO1lBQ3pCLHFEQUFxRDtZQUNyRCxHQUFHLEdBQUcsQ0FBQyx1QkFBdUIsRUFBRSxFQUNoQyxJQUFJO1lBQ0osOEJBQThCO1lBQzlCLE9BQU8sQ0FDUixDQUFDO1FBQ0osQ0FBQztRQUNELE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQzs4RUEzWFUsYUFBYTt1RUFBYixhQUFhLFdBQWIsYUFBYSxtQkFEQSxNQUFNOztpRkFDbkIsYUFBYTtjQUR6QixVQUFVO2VBQUMsRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiLyogZXNsaW50LWRpc2FibGUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWV4cGxpY2l0LWFueSAqL1xyXG5cclxuaW1wb3J0IHsgSW5qZWN0YWJsZSwgaW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEFwaVNlcnZpY2UgfSBmcm9tICcuLi8uLi9jb3JlL2h0dHAtY2xpZW50L2FwaS5zZXJ2aWNlJztcclxuaW1wb3J0IHsgRFNRSGVscGVyIH0gZnJvbSAnLi4vaGVscGVycy9jb21tb24vZHNxLmhlbHBlcnMnO1xyXG5pbXBvcnQgeyBnZXRIZWFkZXJzIH0gZnJvbSAnLi4vdXRpbHMvcmVxLXJlcy51dGlsJztcclxuaW1wb3J0IHsgQVBJIH0gZnJvbSAnLi4vY29uc3RhbnRzL2FwaS1jb25zdGFudHMnO1xyXG5pbXBvcnQgeyBnZXRBcHBPYmplY3QgfSBmcm9tICcuLi91dGlscy90YWItYXBwLnV0aWwnO1xyXG5pbXBvcnQgeyBBUElTZWxlY3RRdWVyeSB9IGZyb20gJy4uL21vZGVscy9hcGktcXVlcnkuY2xhc3MnO1xyXG5pbXBvcnQgeyBGaWx0ZXJWYWx1ZVR5cGUgfSBmcm9tICcuLi9lbnVtcy9kc3EuZW51bSc7XHJcbmltcG9ydCB7IFF1ZXJ5VHlwZSB9IGZyb20gJy4uL2VudW1zL3F1ZXJ5LmVudW0nO1xyXG5pbXBvcnQge1xyXG4gIEFwcE9iamVjdHNDb25zdGFudHMsXHJcbiAgRGF0YVNvdXJjZVF1ZXJpZXNDb25zdGFudHMsXHJcbn0gZnJvbSAnLi4vY29uc3RhbnRzL2FwcC1vYmplY3QtY29uc3RhbnRzJztcclxuaW1wb3J0IHsgc3dpdGNoTWFwIH0gZnJvbSAncnhqcyc7XHJcblxyXG5ASW5qZWN0YWJsZSh7IHByb3ZpZGVkSW46ICdyb290JyB9KVxyXG5leHBvcnQgY2xhc3MgVGFiR2V0U2VydmljZSB7XHJcbiAgcHJpdmF0ZSByZWFkb25seSBhcGlTZXJ2aWNlID0gaW5qZWN0KEFwaVNlcnZpY2UpO1xyXG4gIHByaXZhdGUgcmVhZG9ubHkgZHNxSGVscGVyID0gaW5qZWN0KERTUUhlbHBlcik7XHJcblxyXG4gIC8qKlxyXG4gICAqIEV4ZWN1dGUgUkFXIERTUSB3aXRoIE5hbWVcclxuICAgKiBAcGFyYW0gZGF0YSAtIE9iamVjdCBjb250YWluaW5nIEFwcE9iamVjdE5hbWUgYW5kIERTUU5hbWVcclxuICAgKiBAcmV0dXJucyBSZXNwb25zZSBmcm9tIHRoZSBBUElcclxuICAgKi9cclxuICBleGVjdXRlUkFXRFNRV2l0aE5hbWUoZGF0YTogYW55LGhlYWRlcnM/OmFueSk6IGFueSB7XHJcbiAgICBjb25zdCBoZWFkZXIgPSBnZXRIZWFkZXJzKGhlYWRlcnMpO1xyXG4gICAgICByZXR1cm4gdGhpcy5hcGlTZXJ2aWNlLnBvc3QoXHJcbiAgICAgICAgYCR7QVBJLmdldERTUX0vJHtkYXRhLkFwcE9iamVjdE5hbWV9LyR7ZGF0YS5EU1FOYW1lfWAsXHJcbiAgICAgICAgZGF0YSxcclxuICAgICAgICBoZWFkZXJcclxuICAgICAgKTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIEdldCBSZWNvcmRcclxuICAgKiBAcGFyYW0gcGFyYW1zIC0gUGFyYW1ldGVycyBmb3IgdGhlIHJlcXVlc3RcclxuICAgKiBAcmV0dXJucyBSZXNwb25zZSBmcm9tIHRoZSBBUElcclxuICAgKi9cclxuICBnZXRSZWNvcmQocGFyYW1zOiBhbnkpOiBhbnkge1xyXG4gICAgY29uc3QgaGVhZGVycyA9IGdldEhlYWRlcnMoKTtcclxuICAgIGlmIChoZWFkZXJzKSB7XHJcbiAgICAgIHJldHVybiB0aGlzLmFwaVNlcnZpY2UuZ2V0KGAke0FQSS5nZXRyZWNvcmR9YCwgcGFyYW1zLCBoZWFkZXJzKTtcclxuICAgIH1cclxuICAgIHJldHVybiBudWxsO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogRXhlY3V0ZSBSYXcgU1FMXHJcbiAgICogQHBhcmFtIGRhdGEgLSBEYXRhIGZvciB0aGUgcmVxdWVzdFxyXG4gICAqIEByZXR1cm5zIFJlc3BvbnNlIGZyb20gdGhlIEFQSVxyXG4gICAqL1xyXG4gIGV4ZWN1dGVSYXdTcWwoZGF0YTogYW55KTogYW55IHtcclxuICAgIGNvbnN0IGhlYWRlcnMgPSBnZXRIZWFkZXJzKCk7XHJcbiAgICBpZiAoaGVhZGVycykge1xyXG4gICAgICByZXR1cm4gdGhpcy5hcGlTZXJ2aWNlLnBvc3QoYCR7QVBJLnJhd1NRTH0ke2RhdGF9YCwgJycsIGhlYWRlcnMpO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIG51bGw7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBHZXQgSGlzdG9yeVxyXG4gICAqIEBwYXJhbSBhcHBPYmplY3RJZCAtIElEIG9mIHRoZSBhcHBsaWNhdGlvbiBvYmplY3RcclxuICAgKiBAcGFyYW0gcmVjb3JkSWRzIC0gQXJyYXkgb2YgcmVjb3JkIElEc1xyXG4gICAqIEByZXR1cm5zIFJlc3BvbnNlIGZyb20gdGhlIEFQSVxyXG4gICAqL1xyXG4gIGdldEhpc3RvcnkoYXBwT2JqZWN0SWQ6IHN0cmluZywgcmVjb3JkSWRzOiBzdHJpbmdbXSk6IGFueSB7XHJcbiAgICBjb25zdCBkYXRhOiBhbnkgPSB7fTtcclxuICAgIGlmIChhcHBPYmplY3RJZCAmJiByZWNvcmRJZHMpIHtcclxuICAgICAgY29uc3QgYXBwT2JqZWN0TmFtZSA9IGdldEFwcE9iamVjdChhcHBPYmplY3RJZCk/Lk9iamVjdE5hbWU7XHJcbiAgICAgIGNvbnN0IGhlYWRlcnMgPSBnZXRIZWFkZXJzKCk7XHJcbiAgICAgIGlmIChhcHBPYmplY3ROYW1lICYmIGhlYWRlcnMpIHtcclxuICAgICAgICBkYXRhLk9iamVjdE5hbWUgPSBhcHBPYmplY3ROYW1lO1xyXG4gICAgICAgIGRhdGEuUmVjb3JkSWRzID0gcmVjb3JkSWRzO1xyXG4gICAgICAgIHJldHVybiB0aGlzLmFwaVNlcnZpY2UucG9zdChgJHtBUEkuZ2V0SGlzdG9yeX1gLCBkYXRhLCBoZWFkZXJzKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgcmV0dXJuIG51bGw7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBQTUpBWSBJbXBvcnRcclxuICAgKiBAcGFyYW0gZGF0YSAtIERhdGEgZm9yIFBNSkFZIGltcG9ydFxyXG4gICAqIEByZXR1cm5zIFJlc3BvbnNlIGZyb20gdGhlIEFQSVxyXG4gICAqL1xyXG4gIHBtamF5SW1wb3J0KGRhdGE6IGFueSk6IGFueSB7XHJcbiAgICBjb25zdCBoZWFkZXJzID0gZ2V0SGVhZGVycygpO1xyXG4gICAgaWYgKGhlYWRlcnMpIHtcclxuICAgICAgcmV0dXJuIHRoaXMuYXBpU2VydmljZS5wb3N0KGAke0FQSS5wbWpheUltcG9ydH1gLCBkYXRhLCBoZWFkZXJzKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIEV4ZWN1dGVzIGEgc2VsZWN0IHF1ZXJ5IHdpdGggb3B0aW9uYWwgcGFyYW1ldGVyc1xyXG4gICAqIEBwYXJhbSBkYXRhIC0gVGhlIHNlbGVjdCBxdWVyeSBkYXRhXHJcbiAgICogQHBhcmFtIHBhcmFtZXRlcnMgLSBPcHRpb25hbCBwYXJhbWV0ZXJzIHRvIGJlIGFwcGxpZWQgdG8gdGhlIHF1ZXJ5XHJcbiAgICogQHJldHVybnMgUmVzdWx0IG9mIHRoZSBzZWxlY3QgcXVlcnkgZXhlY3V0aW9uXHJcbiAgICovXHJcbiAgc2VsZWN0RXhlY3V0b3IoZGF0YTogQVBJU2VsZWN0UXVlcnksIHBhcmFtZXRlcnM/OiBhbnkpOiBhbnkge1xyXG4gICAgaWYgKHBhcmFtZXRlcnMgJiYgT2JqZWN0LmtleXMocGFyYW1ldGVycykubGVuZ3RoKSB7XHJcbiAgICAgIGRhdGEuV2hlcmVDbGF1c2UuRmlsdGVyTG9naWMgPSBkYXRhLldoZXJlQ2xhdXNlLkZpbHRlckxvZ2ljIHx8ICdbXSc7XHJcbiAgICAgIGRhdGEuV2hlcmVDbGF1c2UuRmlsdGVycyA9IGRhdGEuV2hlcmVDbGF1c2UuRmlsdGVycyB8fCBbXTtcclxuICAgICAgZGF0YS5XaGVyZUNsYXVzZS5TUUxRdWVyeSA9IGRhdGEuV2hlcmVDbGF1c2UuU1FMUXVlcnkgfHwgJyc7XHJcbiAgICAgIC8qKlxyXG4gICAgICAgKiBSZXBsYWNlcyB2YWx1ZXMgZnJvbSBwYXJhbWV0ZXJzIGlmIG1hdGNoZWQgYW5kIGluIGZvcm1hdCBvZiB7e2tleX19LlxyXG4gICAgICAgKiBFeGFtcGxlOiBpZiBmaWx0ZXIuVmFsdWUgaXMgXCJ7e3VzZXJJZH19XCIgYW5kXHJcbiAgICAgICAqIHRoaXMuX3ZhbHVlLnBhcmFtZXRlcnMudXNlcklkIGlzIDEyMywgdGhlbiBmaWx0ZXIuVmFsdWUgd2lsbCBiZSByZXBsYWNlZCB3aXRoXHJcbiAgICAgICAqIFwiMTIzXCIuXHJcbiAgICAgICAqL1xyXG4gICAgICBkYXRhLldoZXJlQ2xhdXNlLkZpbHRlcnMuZm9yRWFjaCgoZmlsdGVyOiBhbnkpID0+IHtcclxuICAgICAgICAvLyBmaWx0ZXIuVmFsdWVUeXBlIGlzIDEgKGxpdGVyYWwpXHJcbiAgICAgICAgaWYgKGZpbHRlci5WYWx1ZSAmJiBmaWx0ZXIuVmFsdWVUeXBlID09IEZpbHRlclZhbHVlVHlwZS5MaXRlcmFsKSB7XHJcbiAgICAgICAgICBmaWx0ZXIuVmFsdWUgPSBmaWx0ZXIuVmFsdWUucmVwbGFjZShcclxuICAgICAgICAgICAgL3t7KFtefV0rKX19L2csXHJcbiAgICAgICAgICAgIChtYXRjaDogc3RyaW5nLCBrZXk6IHN0cmluZykgPT4ge1xyXG4gICAgICAgICAgICAgIGNvbnN0IHZhbHVlID0gcGFyYW1ldGVyc1trZXldO1xyXG4gICAgICAgICAgICAgIHJldHVybiB2YWx1ZSAhPT0gdW5kZWZpbmVkID8gdmFsdWUgOiBudWxsO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICApO1xyXG4gICAgICAgIH1cclxuICAgICAgICAvLyBpZiB2YWx1ZVR5cGUgPSAyIChQYXJhbWV0ZXJzKVxyXG4gICAgICAgIC8vIHRoZW4gd2UgbmVlZCB0byByZXBsYWNlIHRoZSB2YWx1ZSB3aXRoIHBhcmFtZXRlcnMgYW5kIGNoYW5nZSB0aGUgdmFsdWVUeXBlIHRvIDEgKExpdGVyYWwpXHJcbiAgICAgICAgZWxzZSBpZiAoZmlsdGVyLlZhbHVlVHlwZSA9PSBGaWx0ZXJWYWx1ZVR5cGUuUGFyYW1ldGVyKSB7XHJcbiAgICAgICAgICBmaWx0ZXIuVmFsdWUgPSBmaWx0ZXIuVmFsdWUucmVwbGFjZShcclxuICAgICAgICAgICAgLyhbXn1dKykvZyxcclxuICAgICAgICAgICAgKG1hdGNoOiBzdHJpbmcsIGtleTogc3RyaW5nKSA9PiB7XHJcbiAgICAgICAgICAgICAgY29uc3QgdmFsdWUgPSBwYXJhbWV0ZXJzW2tleV07XHJcbiAgICAgICAgICAgICAgcmV0dXJuIHZhbHVlICE9PSB1bmRlZmluZWQgPyB2YWx1ZSA6IG51bGw7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICk7XHJcbiAgICAgICAgICBmaWx0ZXIuVmFsdWVUeXBlID0gRmlsdGVyVmFsdWVUeXBlLkxpdGVyYWw7XHJcbiAgICAgICAgfVxyXG4gICAgICB9KTtcclxuICAgICAgKGRhdGE/LldoZXJlQ2xhdXNlPy5GaWx0ZXJzIHx8IFtdKS5mb3JFYWNoKChlbGVtZW50OiBhbnkpID0+IHtcclxuICAgICAgICBpZiAoXHJcbiAgICAgICAgICBlbGVtZW50LlZhbHVlVHlwZSA9PT0gRmlsdGVyVmFsdWVUeXBlLlBhcmFtZXRlciAmJlxyXG4gICAgICAgICAgcGFyYW1ldGVyc1tlbGVtZW50LkZpZWxkSURdXHJcbiAgICAgICAgKSB7XHJcbiAgICAgICAgICBlbGVtZW50LlZhbHVlID0gcGFyYW1ldGVyc1tlbGVtZW50LkZpZWxkSURdO1xyXG4gICAgICAgIH1cclxuICAgICAgfSk7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gdGhpcy5kc3FIZWxwZXIuZXhlY3V0ZVF1ZXJ5KGRhdGEsIFF1ZXJ5VHlwZS5TZWxlY3QpO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogRXhlY3V0ZXMgYSBzZWxlY3QgcXVlcnkgYnkgaXRzIElELCB1c2luZyB0aGUgcHJvdmlkZWQgcGFyYW1ldGVycy5cclxuICAgKlxyXG4gICAqIEBwYXJhbSBzZWxlY3RRdWVyeUlkIC0gVGhlIElEIG9mIHRoZSBzZWxlY3QgcXVlcnkgdG8gYmUgZXhlY3V0ZWQuXHJcbiAgICogQHBhcmFtIHBhcmFtZXRlcnMgLSBPcHRpb25hbCBwYXJhbWV0ZXJzIHRvIGJlIGFwcGxpZWQgdG8gdGhlIHF1ZXJ5LlxyXG4gICAqIEByZXR1cm5zIFRoZSByZXN1bHQgb2YgdGhlIHNlbGVjdCBxdWVyeSBleGVjdXRpb24uXHJcbiAgICogQHRocm93cyBBbiBlcnJvciBpZiB0aGUgQVBJIHJlc3BvbnNlIHN0YXR1cyBjb2RlIGlzIG5vdCAnMjAwJy5cclxuICAgKi9cclxuICBleGVjdXRlU2VsZWN0UXVlcnlCeUlkKHNlbGVjdFF1ZXJ5SWQ6IHN0cmluZywgcGFyYW1ldGVycz86IGFueSk6IGFueSB7XHJcbiAgICByZXR1cm4gdGhpcy5leGVjdXRlUkFXRFNRV2l0aE5hbWUoe1xyXG4gICAgICBBcHBPYmplY3ROYW1lOiBBcHBPYmplY3RzQ29uc3RhbnRzLlRBQkRfUXVlcmllcyxcclxuICAgICAgRFNRTmFtZTogRGF0YVNvdXJjZVF1ZXJpZXNDb25zdGFudHMuRGV0YWlsX1RBQkRfUXVlcmllcyxcclxuICAgICAgUmVxdG9rZW5zOiB7XHJcbiAgICAgICAgSUQ6IHNlbGVjdFF1ZXJ5SWQsXHJcbiAgICAgIH0sXHJcbiAgICB9KS5waXBlKFxyXG4gICAgICBzd2l0Y2hNYXAoKHJlczogYW55KSA9PiB7XHJcbiAgICAgICAgaWYgKHJlcy5TdGF0dXNDb2RlID09PSAnMjAwJykge1xyXG4gICAgICAgICAgY29uc3QgQ29uZmlndXJhdGlvbiA9IEpTT04ucGFyc2UocmVzLlJlc3VsdFswXS5Db25maWd1cmF0aW9uIHx8ICd7fScpO1xyXG4gICAgICAgICAgaWYgKENvbmZpZ3VyYXRpb24uV2hlcmVDbGF1c2U/LkZpbHRlcnMpIHtcclxuICAgICAgICAgICAgQ29uZmlndXJhdGlvbi5XaGVyZUNsYXVzZS5GaWx0ZXJzID0gdGhpcy5yZW1vdmVXaGVyZUNsYXVzZUZvckVtcHR5UGFyYW1zKENvbmZpZ3VyYXRpb24uV2hlcmVDbGF1c2UuRmlsdGVycywgcGFyYW1ldGVycyB8fCB7fSk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICByZXR1cm4gdGhpcy5zZWxlY3RFeGVjdXRvcihDb25maWd1cmF0aW9uLCBwYXJhbWV0ZXJzKTtcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgdGhyb3cgbmV3IEVycm9yKHJlcy5NZXNzYWdlKTtcclxuICAgICAgICB9XHJcbiAgICAgIH0pXHJcbiAgICApO1xyXG4gIH1cclxuICByZW1vdmVXaGVyZUNsYXVzZUZvckVtcHR5UGFyYW1zKGZpbHRlcnM6IGFueVtdLCBwYXJhbWV0ZXJzOiBSZWNvcmQ8c3RyaW5nLCBhbnk+KTogYW55W10ge1xyXG4gICAgcmV0dXJuIGZpbHRlcnMuZmlsdGVyKChmaWx0ZXI6IGFueSkgPT4ge1xyXG4gICAgICAgIGlmIChmaWx0ZXIuVmFsdWVUeXBlID09PSBGaWx0ZXJWYWx1ZVR5cGUuUGFyYW1ldGVyKSB7XHJcbiAgICAgICAgICAgIGNvbnN0IHBhcmFtZXRlck5hbWUgPSBmaWx0ZXIuVmFsdWU7XHJcbiAgICAgICAgICAgIGlmIChwYXJhbWV0ZXJzPy5oYXNPd25Qcm9wZXJ0eShwYXJhbWV0ZXJOYW1lKSAmJiBwYXJhbWV0ZXJzW3BhcmFtZXRlck5hbWVdID09PSAnJykge1xyXG4gICAgICAgICAgICAgICAgcmV0dXJuIGZhbHNlOyAvLyBSZW1vdmUgZmlsdGVyXHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgaWYgKE9iamVjdC5rZXlzKHBhcmFtZXRlcnMgfHwge30pLmxlbmd0aCA9PT0gMCAmJiBmaWx0ZXIuVmFsdWVUeXBlID09PSBGaWx0ZXJWYWx1ZVR5cGUuUGFyYW1ldGVyKSB7XHJcbiAgICAgICAgICAgIHJldHVybiBmYWxzZTsgLy8gUmVtb3ZlIGZpbHRlclxyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm4gdHJ1ZTsgLy8gS2VlcCBmaWx0ZXJcclxuICAgIH0pO1xyXG4gIH1cclxuICBnZXRUZXN0Q29ubmVjdGlvbihjb25uZWN0aW9uSWQ6IGFueSwgcGFyYW1zPzogYW55KTogYW55IHtcclxuICAgIGlmIChjb25uZWN0aW9uSWQpIHtcclxuICAgICAgY29uc3QgaGVhZGVycyA9IGdldEhlYWRlcnMoKTtcclxuICAgICAgaWYgKGhlYWRlcnMpIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5hcGlTZXJ2aWNlLmdldChcclxuICAgICAgICAgIGAke0FQSS50ZXN0Q29ubmVjdGlvbn0ke2Nvbm5lY3Rpb25JZH1gLFxyXG4gICAgICAgICAgcGFyYW1zLFxyXG4gICAgICAgICAgaGVhZGVyc1xyXG4gICAgICAgICk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIHJldHVybiBudWxsO1xyXG4gIH1cclxuICBnZXRQZXJmb3JtVmFsaWRhdGlvbihjb25uZWN0aW9uSWQ6IGFueSwgcGFyYW1zPzogYW55KTogYW55IHtcclxuICAgIGlmIChjb25uZWN0aW9uSWQpIHtcclxuICAgICAgY29uc3QgaGVhZGVycyA9IGdldEhlYWRlcnMoKTtcclxuICAgICAgaWYgKGhlYWRlcnMpIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5hcGlTZXJ2aWNlLmdldChcclxuICAgICAgICAgIGAke0FQSS5wZXJmb3JtVmFsaWRhdGlvbn0ke2Nvbm5lY3Rpb25JZH1gLFxyXG4gICAgICAgICAgcGFyYW1zLFxyXG4gICAgICAgICAgaGVhZGVyc1xyXG4gICAgICAgICk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIHJldHVybiBudWxsO1xyXG4gIH1cclxuICAvKipcclxuICAgKiBTZXRzIHRoZSB0YWIgY29tcG9uZW50cyBmb3IgdGhlIGdpdmVuIHRlbmFudFxyXG4gICAqIEBwYXJhbSBjb25uZWN0aW9uSWQgVGhlIElEIG9mIHRoZSBjb25uZWN0aW9uXHJcbiAgICogQHJldHVybnMgQW4gb2JzZXJ2YWJsZSBvZiB0aGUgcmVzcG9uc2UgZnJvbSB0aGUgQVBJXHJcbiAgICovXHJcbiAgc2V0VGFiQ29tcG9uZW50c0ZvclRlbmFudChjb25uZWN0aW9uSWQ6IHN0cmluZywgZGF0YT86IGFueSk6IGFueSB7XHJcbiAgICBjb25zdCBoZWFkZXJzID0gZ2V0SGVhZGVycygpO1xyXG4gICAgaWYgKGhlYWRlcnMpIHtcclxuICAgICAgLy8gU2V0IHRoZSB0YWIgY29tcG9uZW50cyBmb3IgdGhlIHRlbmFudFxyXG4gICAgICByZXR1cm4gdGhpcy5hcGlTZXJ2aWNlLnBvc3QoXHJcbiAgICAgICAgLy8gQVBJIGVuZHBvaW50IGZvciBzZXR0aW5nIHRhYiBjb21wb25lbnRzXHJcbiAgICAgICAgYCR7QVBJLnNldFRhYkNvbXBvbmVudHN9JHtjb25uZWN0aW9uSWR9YCxcclxuICAgICAgICBkYXRhLFxyXG4gICAgICAgIC8vIFRoZSBoZWFkZXJzIGZvciB0aGUgcmVxdWVzdFxyXG4gICAgICAgIGhlYWRlcnNcclxuICAgICAgKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8vIC8qKlxyXG4gIC8vICAqIEdldCBSZXNvdXJjZSBMYW5ndWFnZSBCeSBMYW5ndWFnZSBDb2RlXHJcbiAgLy8gICogQHBhcmFtIGxhbmd1YWdlQ29kZSAtIExhbmd1YWdlIENvZGVcclxuICAvLyAgKiBAcmV0dXJucyBSZXNwb25zZSBmcm9tIHRoZSBBUElcclxuICAvLyAgKi9cclxuICAvLyBnZXRSZXNvdXJjZUxhbmd1YWdlQnlMYW5ndWFnZUNvZGUobGFuZ3VhZ2VDb2RlOiBudW1iZXIpOiBhbnkge1xyXG4gIC8vICAgY29uc3QgaGVhZGVycyA9IGdldEhlYWRlcnMoKTtcclxuICAvLyAgIGlmIChoZWFkZXJzKSB7XHJcbiAgLy8gICAgIHJldHVybiB0aGlzLmFwaVNlcnZpY2UucG9zdChcclxuICAvLyAgICAgICBgJHtBUEkubGFuZ3VhZ2VSZXNvdXJjZX1gLFxyXG4gIC8vICAgICAgIHsgTGFuZ3VhZ2VDb2RlOiBsYW5ndWFnZUNvZGUgfSxcclxuICAvLyAgICAgICBoZWFkZXJzXHJcbiAgLy8gICAgICk7XHJcbiAgLy8gICB9XHJcbiAgLy8gICByZXR1cm4gbnVsbDtcclxuICAvLyB9XHJcblxyXG4gIC8qKlxyXG4gICAqIEdldCBTZWFyY2ggRGF0YVxyXG4gICAqIEBwYXJhbSBzZWFyY2hRdWVyeSAtIFNlYXJjaCBRdWVyeSBzdHJpbmdcclxuICAgKiBAcGFyYW0gbGltaXQgLSBMaW1pdCBvZiBzZWFyY2ggcmVzdWx0c1xyXG4gICAqIEByZXR1cm5zIFJlc3BvbnNlIGZyb20gdGhlIEFQSVxyXG4gICAqL1xyXG4gIGdldFNlYXJjaERhdGEoc2VhcmNoUXVlcnk6IHN0cmluZywgbGltaXQ6IG51bWJlciwgcGFyYW1zPzogYW55KTogYW55IHtcclxuICAgIGNvbnN0IGhlYWRlcnMgPSBnZXRIZWFkZXJzKCk7XHJcbiAgICBpZiAoaGVhZGVycykge1xyXG4gICAgICByZXR1cm4gdGhpcy5hcGlTZXJ2aWNlLmdldChcclxuICAgICAgICBgJHtBUEkuc2VhcmNofT9zZWFyY2hRdWVyeT0ke3NlYXJjaFF1ZXJ5fSZsaW1pdD0ke2xpbWl0fWAsXHJcbiAgICAgICAgcGFyYW1zLFxyXG4gICAgICAgIGhlYWRlcnNcclxuICAgICAgKTtcclxuICAgIH1cclxuICAgIHJldHVybiBudWxsO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogSW5zZXJ0IFNjcmVlbiBQZXJmb3JtYW5jZSBTdGF0aXN0aWNzXHJcbiAgICogQHBhcmFtIGRhdGEgLSBEYXRhIHRvIGluc2VydFxyXG4gICAqIEByZXR1cm5zIFJlc3BvbnNlIGZyb20gdGhlIEFQSVxyXG4gICAqL1xyXG4gIGluc2VydFNjcmVlblBlcmZvcm1hbmNlU3RhdGlzdGljcyhkYXRhOiBhbnkpOiBhbnkge1xyXG4gICAgY29uc3QgaGVhZGVycyA9IGdldEhlYWRlcnMoKTtcclxuICAgIGlmIChoZWFkZXJzKSB7XHJcbiAgICAgIC8vIFNldCB0aGUgdGFiIGNvbXBvbmVudHMgZm9yIHRoZSB0ZW5hbnRcclxuICAgICAgcmV0dXJuIHRoaXMuYXBpU2VydmljZS5wb3N0KFxyXG4gICAgICAgIC8vIEFQSSBlbmRwb2ludCBmb3IgaW5zZXJ0aW5nIHNjcmVlbiBwZXJmb3JtYW5jZSBzdGF0aXN0aWNzXHJcbiAgICAgICAgYCR7QVBJLkluc2VydFNjcmVlblBlcmZvcm1hbmNlQW5hbHl0aWNzfWAsXHJcbiAgICAgICAgZGF0YSxcclxuICAgICAgICAvLyBUaGUgaGVhZGVycyBmb3IgdGhlIHJlcXVlc3RcclxuICAgICAgICBoZWFkZXJzXHJcbiAgICAgICk7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gbnVsbDtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIEV4ZWN1dGVzIGFuIEhUVFAgcmVxdWVzdCB3aXRoIHRoZSBzcGVjaWZpZWQgbWV0aG9kLCBVUkwsIGhlYWRlcnMsIGFuZCBib2R5LlxyXG4gICAqXHJcbiAgICogQHBhcmFtIGZ1bGxVcmwgLVRoZSBmdWxsIFVSTCBvZiB0aGUgcmVxdWVzdCBjb250YWluaW5nIHRoZSBxdWVyeSBwYXJhbWV0ZXJzLlxyXG4gICAqIEBwYXJhbSBtZXRob2QgLSBUaGUgSFRUUCBtZXRob2QgdG8gYmUgdXNlZCAoJ0dFVCcsICdQT1NUJywgJ1BVVCcsICdERUxFVEUnKS5cclxuICAgKiBAcGFyYW0gaGVhZGVycyAtIFRoZSBoZWFkZXJzIHRvIGluY2x1ZGUgaW4gdGhlIHJlcXVlc3QuXHJcbiAgICogQHBhcmFtIGJvZHkgLSBUaGUgYm9keSBjb250ZW50IGZvciBtZXRob2RzIGxpa2UgUE9TVCBhbmQgUFVULlxyXG4gICAqIEByZXR1cm5zIFRoZSBBUEkgcmVzcG9uc2UgY29ycmVzcG9uZGluZyB0byB0aGUgcmVxdWVzdC5cclxuICAgKi9cclxuICBleGVjdXRlSHR0cFJlcXVlc3QoXHJcbiAgICBmdWxsVXJsOiBhbnksXHJcbiAgICBtZXRob2Q6ICdHRVQnIHwgJ1BPU1QnIHwgJ1BVVCcgfCAnREVMRVRFJyxcclxuICAgIGhlYWRlcnM6IGFueSxcclxuICAgIGJvZHk6IGFueVxyXG4gICk6IGFueSB7XHJcbiAgICBoZWFkZXJzID0ge1xyXG4gICAgICAuLi4oaGVhZGVycyB8fCB7fSksXHJcbiAgICAgICdYLVNraXAtSW50ZXJjZXB0b3InOiAndHJ1ZScsXHJcbiAgICAgICdYLVNraXAtQXV0aCc6ICd0cnVlJyxcclxuICAgICAgJ1gtVHJhY2stQVBJLURldGFpbHMnOiAndHJ1ZScsXHJcbiAgICB9O1xyXG4gICAgaWYgKG1ldGhvZCA9PSAnR0VUJykge1xyXG4gICAgICByZXR1cm4gdGhpcy5hcGlTZXJ2aWNlLmdldEJ5VXJsKGZ1bGxVcmwsIHsgaGVhZGVycyB9KTtcclxuICAgIH0gZWxzZSBpZiAobWV0aG9kID09ICdQT1NUJykge1xyXG4gICAgICByZXR1cm4gdGhpcy5hcGlTZXJ2aWNlLnBvc3RCeVVybChmdWxsVXJsLCBib2R5LCB7IGhlYWRlcnMgfSk7XHJcbiAgICB9IGVsc2UgaWYgKG1ldGhvZCA9PSAnUFVUJykge1xyXG4gICAgICByZXR1cm4gdGhpcy5hcGlTZXJ2aWNlLnB1dEJ5VXJsKGZ1bGxVcmwsIGJvZHksIHsgaGVhZGVycyB9KTtcclxuICAgIH0gZWxzZSBpZiAobWV0aG9kID09ICdERUxFVEUnKSB7XHJcbiAgICAgIHJldHVybiB0aGlzLmFwaVNlcnZpY2UuZGVsZXRlQnlVcmwoZnVsbFVybCwgeyBoZWFkZXJzIH0pO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogR2VuZXJhdGVzIGFuIEhUVFAgUmVxdWVzdCBiYXNlZCBvbiB0aGUgcHJvdmlkZWQgRGF0YVNvdXJjZVF1ZXJ5IG5hbWVcclxuICAgKiBAcGFyYW0gUXVlcnlOYW1lIC0gVGhlIG5hbWUgb2YgdGhlIERhdGFTb3VyY2VRdWVyeVxyXG4gICAqIEByZXR1cm5zIFRoZSByZXN1bHQgb2YgdGhlIGdlbmVyYXRlZCBIVFRQIHJlcXVlc3RcclxuICAgKi9cclxuICBnZW5lcmF0ZUh0dHBSZXF1ZXN0KFF1ZXJ5TmFtZTogc3RyaW5nKTogYW55IHtcclxuICAgIGNvbnN0IGhlYWRlcnMgPSBnZXRIZWFkZXJzKCk7XHJcbiAgICBpZiAoaGVhZGVycykge1xyXG4gICAgICByZXR1cm4gdGhpcy5hcGlTZXJ2aWNlLmdldChcclxuICAgICAgICBgJHtBUEkuR2VuZXJhdGVIdHRwUmVxdWVzdH0/ZHNxTmFtZT0ke1F1ZXJ5TmFtZX1gLFxyXG4gICAgICAgIHVuZGVmaW5lZCxcclxuICAgICAgICBoZWFkZXJzXHJcbiAgICAgICk7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gbnVsbDtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIFJldHJpZXZlcyB0aGUgZGV0YWlsZWQgYW5hbHl0aWNzIG9mIGEgc2NyZWVuJ3MgcGVyZm9ybWFuY2UuXHJcbiAgICogQHBhcmFtIGRhdGEgLSBEYXRhIHRvIGJlIHNlbnQgdG8gdGhlIEFQSVxyXG4gICAqIEByZXR1cm5zIFJlc3BvbnNlIGZyb20gdGhlIEFQSVxyXG4gICAqL1xyXG4gIGdldERldGFpbE9mUGVyZm9ybWFuY2VBbmFseXRpY3MoZGF0YTogYW55KTogYW55IHtcclxuICAgIGNvbnN0IGhlYWRlcnMgPSBnZXRIZWFkZXJzKCk7XHJcbiAgICBpZiAoaGVhZGVycykge1xyXG4gICAgICAvLyBTZXQgdGhlIHRhYiBjb21wb25lbnRzIGZvciB0aGUgdGVuYW50XHJcbiAgICAgIHJldHVybiB0aGlzLmFwaVNlcnZpY2UucG9zdChcclxuICAgICAgICAvLyBBUEkgZW5kcG9pbnQgZm9yIHJldHJpZXZpbmcgdGhlIGRldGFpbGVkIGFuYWx5dGljcyBvZiBhIHNjcmVlbidzIHBlcmZvcm1hbmNlXHJcbiAgICAgICAgYCR7QVBJLkdldERldGFpbE9mUGVyZm9ybWFuY2VBbmFseXRpY3N9YCxcclxuICAgICAgICBkYXRhLFxyXG4gICAgICAgIC8vIFRoZSBoZWFkZXJzIGZvciB0aGUgcmVxdWVzdFxyXG4gICAgICAgIGhlYWRlcnNcclxuICAgICAgKTtcclxuICAgIH1cclxuICAgIHJldHVybiBudWxsO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogR2V0IHN1bW1hcnkgb2YgcGVyZm9ybWFuY2UgYW5hbHl0aWNzXHJcbiAgICogQHBhcmFtIGRhdGEgLSBEYXRhIHRvIGJlIHNlbnQgdG8gdGhlIEFQSVxyXG4gICAqIEByZXR1cm5zIFJlc3BvbnNlIGZyb20gdGhlIEFQSVxyXG4gICAqL1xyXG4gIGdldFN1bW1hcnlPZlBlcmZvcm1hbmNlQW5hbHl0aWNzKGRhdGE6IGFueSk6IGFueSB7XHJcbiAgICBjb25zdCBoZWFkZXJzID0gZ2V0SGVhZGVycygpO1xyXG4gICAgaWYgKGhlYWRlcnMpIHtcclxuICAgICAgLy8gU2V0IHRoZSB0YWIgY29tcG9uZW50cyBmb3IgdGhlIHRlbmFudFxyXG4gICAgICByZXR1cm4gdGhpcy5hcGlTZXJ2aWNlLnBvc3QoXHJcbiAgICAgICAgLy8gQVBJIGVuZHBvaW50IGZvciBpbnNlcnRpbmcgc2NyZWVuIHBlcmZvcm1hbmNlIHN0YXRpc3RpY3NcclxuICAgICAgICBgJHtBUEkuR2V0U3VtbWFyeU9mUGVyZm9ybWFuY2VBbmFseXRpY3N9YCxcclxuICAgICAgICBkYXRhLFxyXG4gICAgICAgIC8vIFRoZSBoZWFkZXJzIGZvciB0aGUgcmVxdWVzdFxyXG4gICAgICAgIGhlYWRlcnNcclxuICAgICAgKTtcclxuICAgIH1cclxuICAgIHJldHVybiBudWxsO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogUmVmcmVzaGVzIHRoZSBnbG9iYWwgc2VhcmNoIGRhdGEuXHJcbiAgICogQHBhcmFtIGRhdGEgLSBEYXRhIHRvIGJlIHNlbnQgdG8gdGhlIEFQSVxyXG4gICAqIEByZXR1cm5zIFJlc3BvbnNlIGZyb20gdGhlIEFQSVxyXG4gICAqL1xyXG4gIFJlZnJlc2hHbG9iYWxTZWFyY2hEYXRhKGRhdGE6IGFueSk6IGFueSB7XHJcbiAgICBjb25zdCBoZWFkZXJzID0gZ2V0SGVhZGVycygpO1xyXG4gICAgaWYgKGhlYWRlcnMpIHtcclxuICAgICAgLy8gU2V0IHRoZSB0YWIgY29tcG9uZW50cyBmb3IgdGhlIHRlbmFudFxyXG4gICAgICByZXR1cm4gdGhpcy5hcGlTZXJ2aWNlLnBvc3QoXHJcbiAgICAgICAgLy8gQVBJIGVuZHBvaW50IGZvciByZWZyZXNoaW5nIHRoZSBnbG9iYWwgc2VhcmNoIGRhdGFcclxuICAgICAgICBgJHtBUEkuUmVmcmVzaEdsb2JhbFNlYXJjaERhdGF9YCxcclxuICAgICAgICBkYXRhLFxyXG4gICAgICAgIC8vIFRoZSBoZWFkZXJzIGZvciB0aGUgcmVxdWVzdFxyXG4gICAgICAgIGhlYWRlcnNcclxuICAgICAgKTtcclxuICAgIH1cclxuICAgIHJldHVybiBudWxsO1xyXG4gIH1cclxufVxyXG4iXX0=
@@ -20,4 +20,4 @@ export var ReleaseContentType;
20
20
  ReleaseContentType[ReleaseContentType["Data"] = 2] = "Data";
21
21
  ReleaseContentType[ReleaseContentType["Script"] = 3] = "Script";
22
22
  })(ReleaseContentType || (ReleaseContentType = {}));
23
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tbW9uLmVudW0uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2RhdGEtYWNjZXNzL3NyYy9saWIvdGFiLWNvcmUtdXRpbGl0eS9hcHAvZW51bXMvY29tbW9uLmVudW0udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxDQUFOLElBQVksVUFHWDtBQUhELFdBQVksVUFBVTtJQUNsQiwyQ0FBUSxDQUFBO0lBQ1IsK0NBQVUsQ0FBQTtBQUNkLENBQUMsRUFIVyxVQUFVLEtBQVYsVUFBVSxRQUdyQjtBQUVELE1BQU0sQ0FBTixJQUFZLFVBR1g7QUFIRCxXQUFZLFVBQVU7SUFDbEIsNkNBQVMsQ0FBQTtJQUNULDJDQUFRLENBQUE7QUFDWixDQUFDLEVBSFcsVUFBVSxLQUFWLFVBQVUsUUFHckI7QUFFRCxNQUFNLENBQU4sSUFBWSxZQUlYO0FBSkQsV0FBWSxZQUFZO0lBQ3BCLG1FQUFrQixDQUFBO0lBQ2xCLDZFQUF1QixDQUFBO0lBQ3ZCLHVEQUFZLENBQUE7QUFDaEIsQ0FBQyxFQUpXLFlBQVksS0FBWixZQUFZLFFBSXZCO0FBRUQsTUFBTSxDQUFOLElBQVksa0JBSVg7QUFKRCxXQUFZLGtCQUFrQjtJQUMxQixtRUFBWSxDQUFBO0lBQ1osMkRBQVEsQ0FBQTtJQUNSLCtEQUFVLENBQUE7QUFDZCxDQUFDLEVBSlcsa0JBQWtCLEtBQWxCLGtCQUFrQixRQUk3QiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBlbnVtIFNjcmVlblR5cGUge1xuICAgIExpc3QgPSAxLFxuICAgIERldGFpbCA9IDJcbn1cblxuZXhwb3J0IGVudW0gT2JqZWN0VHlwZSB7XG4gICAgVGFibGUgPSAxLFxuICAgIFZpZXcgPSAyXG59XG5cbmV4cG9ydCBlbnVtIFJlc291cmNlVHlwZSB7XG4gICAgRW1haWxUZWFtcGxhdGUgPSAxLFxuICAgIExhbmd1YWdlVHJhbnNsYXRpb24gPSAyLFxuICAgIFNldHRpbmdzID0gM1xufVxuXG5leHBvcnQgZW51bSBSZWxlYXNlQ29udGVudFR5cGUge1xuICAgIE1ldGFEYXRhID0gMSxcbiAgICBEYXRhID0gMixcbiAgICBTY3JpcHQgPSAzXG59Il19
23
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tbW9uLmVudW0uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2RhdGEtYWNjZXNzL3NyYy9saWIvdGFiLWNvcmUtdXRpbGl0eS9hcHAvZW51bXMvY29tbW9uLmVudW0udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxDQUFOLElBQVksVUFHWDtBQUhELFdBQVksVUFBVTtJQUNsQiwyQ0FBUSxDQUFBO0lBQ1IsK0NBQVUsQ0FBQTtBQUNkLENBQUMsRUFIVyxVQUFVLEtBQVYsVUFBVSxRQUdyQjtBQUVELE1BQU0sQ0FBTixJQUFZLFVBR1g7QUFIRCxXQUFZLFVBQVU7SUFDbEIsNkNBQVMsQ0FBQTtJQUNULDJDQUFRLENBQUE7QUFDWixDQUFDLEVBSFcsVUFBVSxLQUFWLFVBQVUsUUFHckI7QUFFRCxNQUFNLENBQU4sSUFBWSxZQUlYO0FBSkQsV0FBWSxZQUFZO0lBQ3BCLG1FQUFrQixDQUFBO0lBQ2xCLDZFQUF1QixDQUFBO0lBQ3ZCLHVEQUFZLENBQUE7QUFDaEIsQ0FBQyxFQUpXLFlBQVksS0FBWixZQUFZLFFBSXZCO0FBRUQsTUFBTSxDQUFOLElBQVksa0JBSVg7QUFKRCxXQUFZLGtCQUFrQjtJQUMxQixtRUFBWSxDQUFBO0lBQ1osMkRBQVEsQ0FBQTtJQUNSLCtEQUFVLENBQUE7QUFDZCxDQUFDLEVBSlcsa0JBQWtCLEtBQWxCLGtCQUFrQixRQUk3QiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBlbnVtIFNjcmVlblR5cGUge1xuICAgIExpc3QgPSAxLFxuICAgIERldGFpbCA9IDJcbn1cblxuZXhwb3J0IGVudW0gT2JqZWN0VHlwZSB7XG4gICAgVGFibGUgPSAxLFxuICAgIFZpZXcgPSAyXG59XG5cbmV4cG9ydCBlbnVtIFJlc291cmNlVHlwZSB7XG4gICAgRW1haWxUZWFtcGxhdGUgPSAxLFxuICAgIExhbmd1YWdlVHJhbnNsYXRpb24gPSAyLFxuICAgIFNldHRpbmdzID0gM1xufVxuXG5leHBvcnQgZW51bSBSZWxlYXNlQ29udGVudFR5cGUge1xuICAgIE1ldGFEYXRhID0gMSxcbiAgICBEYXRhID0gMixcbiAgICBTY3JpcHQgPSAzXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQnVpbGRGb3JtQ29tcG9uZW50VHlwZSB7XG4gICAgQ29tbW9uRmlsdGVyOiAnQ29tbW9uRmlsdGVyJyxcbiAgICBCdWxrVXBkYXRlOiAnQnVsa1VwZGF0ZSdcbn0iXX0=
@@ -43,10 +43,7 @@ export class TemplateHelper {
43
43
  }
44
44
  templateParse(data) {
45
45
  const headers = getHeaders();
46
- if (headers) {
47
- return this.apiService.post(API.templateParse, data, headers);
48
- }
49
- return of(null);
46
+ return this.apiService.post(API.templateParse, data, headers);
50
47
  }
51
48
  static { this.ɵfac = function TemplateHelper_Factory(t) { return new (t || TemplateHelper)(); }; }
52
49
  static { this.ɵprov = /*@__PURE__*/ i0.ɵɵdefineInjectable({ token: TemplateHelper, factory: TemplateHelper.ɵfac, providedIn: 'root' }); }
@@ -55,4 +52,4 @@ export class TemplateHelper {
55
52
  type: Injectable,
56
53
  args: [{ providedIn: 'root' }]
57
54
  }], null, null); })();
58
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVtcGxhdGUuaGVscGVycy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvZGF0YS1hY2Nlc3Mvc3JjL2xpYi90YWItY29yZS11dGlsaXR5L2FwcC9oZWxwZXJzL2NvbW1vbi90ZW1wbGF0ZS5oZWxwZXJzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLHVEQUF1RDtBQUV2RCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNuRCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sdUNBQXVDLENBQUM7QUFDbkUsT0FBTyxFQUFFLEdBQUcsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQ3BELE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFDbEMsT0FBTyxFQUFjLEVBQUUsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUN0QyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7O0FBR3RELE1BQU0sT0FBTyxjQUFjO0lBRDNCO1FBRW1CLGVBQVUsR0FBRyxNQUFNLENBQUMsVUFBVSxDQUFDLENBQUM7UUFDekMsV0FBTSxHQUFHLElBQUksTUFBTSxFQUFFLENBQUM7S0E2Qy9CO0lBM0NDOzs7Ozs7T0FNRztJQUNILG9CQUFvQixDQUFDLFFBQWdCLEVBQUUsaUJBQXlCO1FBQzlELE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxrQkFBa0IsQ0FDbkMsUUFBUSxJQUFJLEVBQUUsRUFDZCxpQkFBaUIsSUFBSSxpQkFBaUIsS0FBSyxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsaUJBQWlCLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUNuRixDQUFDO0lBQ0osQ0FBQztJQUVEOzs7Ozs7T0FNRztJQUNILHNCQUFzQixDQUFDLElBQVMsRUFBRSxxQkFBcUIsR0FBRyxJQUFJO1FBQzVELElBQUksSUFBSSxHQUFHLEVBQUUsQ0FBQztRQUVkLElBQUksQ0FBQztZQUNILElBQUksR0FBRyxJQUFJLENBQUMsb0JBQW9CLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsaUJBQWlCLENBQUMsQ0FBQztRQUN2RSxDQUFDO1FBQUMsT0FBTyxLQUFLLEVBQUUsQ0FBQztZQUNmLE9BQU8sQ0FBQyxHQUFHLENBQUMsb0JBQW9CLEVBQUUsS0FBSyxDQUFDLENBQUM7WUFDekMsSUFBSSxxQkFBcUIsRUFBRSxDQUFDO2dCQUMxQixPQUFPLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDbEMsQ0FBQztRQUNILENBQUM7UUFFRCxPQUFPLEVBQUUsQ0FBQyxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDO0lBQzlCLENBQUM7SUFFTyxhQUFhLENBQUMsSUFBUztRQUM3QixNQUFNLE9BQU8sR0FBRyxVQUFVLEVBQUUsQ0FBQztRQUM3QixJQUFJLE9BQU8sRUFBRSxDQUFDO1lBQ1osT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsYUFBYSxFQUFFLElBQUksRUFBRSxPQUFPLENBQUMsQ0FBQztRQUNoRSxDQUFDO1FBQ0QsT0FBTyxFQUFFLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDbEIsQ0FBQzsrRUE5Q1UsY0FBYzt1RUFBZCxjQUFjLFdBQWQsY0FBYyxtQkFERCxNQUFNOztpRkFDbkIsY0FBYztjQUQxQixVQUFVO2VBQUMsRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiLyogZXNsaW50LWRpc2FibGUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWV4cGxpY2l0LWFueSAqL1xyXG5cclxuaW1wb3J0IHsgSW5qZWN0YWJsZSwgaW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEFwaVNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9jb3JlL2h0dHAtY2xpZW50L2FwaS5zZXJ2aWNlJztcclxuaW1wb3J0IHsgQVBJIH0gZnJvbSAnLi4vLi4vY29uc3RhbnRzL2FwaS1jb25zdGFudHMnO1xyXG5pbXBvcnQgeyBMaXF1aWQgfSBmcm9tICdsaXF1aWRqcyc7XHJcbmltcG9ydCB7IE9ic2VydmFibGUsIG9mIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IGdldEhlYWRlcnMgfSBmcm9tICcuLi8uLi91dGlscy9yZXEtcmVzLnV0aWwnO1xyXG5cclxuQEluamVjdGFibGUoeyBwcm92aWRlZEluOiAncm9vdCcgfSlcclxuZXhwb3J0IGNsYXNzIFRlbXBsYXRlSGVscGVyIHtcclxuICBwcml2YXRlIHJlYWRvbmx5IGFwaVNlcnZpY2UgPSBpbmplY3QoQXBpU2VydmljZSk7XHJcbiAgcHJpdmF0ZSBlbmdpbmUgPSBuZXcgTGlxdWlkKCk7XHJcblxyXG4gIC8qKlxyXG4gICAqIFBhcnNlcyB0aGUgdGVtcGxhdGUgdXNpbmcgbG9jYWwgcmVuZGVyaW5nLlxyXG4gICAqXHJcbiAgICogQHBhcmFtIHRlbXBsYXRlIC0gVGhlIHRlbXBsYXRlIHRvIGJlIHBhcnNlZC5cclxuICAgKiBAcGFyYW0gdGVtcGxhdGVWYXJpYWJsZXMgLSBUaGUgdmFyaWFibGVzIHRvIGJlIHVzZWQgZm9yIHRlbXBsYXRlIHJlbmRlcmluZy5cclxuICAgKiBAcmV0dXJucyBUaGUgcmVuZGVyZWQgdGVtcGxhdGUgcmVzdWx0LlxyXG4gICAqL1xyXG4gIHRlbXBsYXRlUGFyc2VMb2NhbGx5KHRlbXBsYXRlOiBzdHJpbmcsIHRlbXBsYXRlVmFyaWFibGVzOiBzdHJpbmcpOiBzdHJpbmcge1xyXG4gICAgcmV0dXJuIHRoaXMuZW5naW5lLnBhcnNlQW5kUmVuZGVyU3luYyhcclxuICAgICAgdGVtcGxhdGUgPz8gJycsXHJcbiAgICAgIHRlbXBsYXRlVmFyaWFibGVzICYmIHRlbXBsYXRlVmFyaWFibGVzICE9PSAnJyA/IEpTT04ucGFyc2UodGVtcGxhdGVWYXJpYWJsZXMpIDoge31cclxuICAgICk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBQYXJzZXMgdGhlIHRlbXBsYXRlIHVuaXZlcnNhbGx5LCBlaXRoZXIgdXNpbmcgbG9jYWwgcmVuZGVyaW5nIG9yIHNlcnZlci1zaWRlIHJlbmRlcmluZy5cclxuICAgKlxyXG4gICAqIEBwYXJhbSBkYXRhIC0gVGhlIGRhdGEgdG8gYmUgdXNlZCBmb3IgdGVtcGxhdGUgcGFyc2luZy5cclxuICAgKiBAcGFyYW0gc2hvdWxkRmFpbE9uU2VydmVyUGFyc2UgLSBJbmRpY2F0ZXMgd2hldGhlciB0byBmYWlsIG9uIHNlcnZlci1zaWRlIHBhcnNlIGlmIGxvY2FsIHBhcnNpbmcgZmFpbHMuXHJcbiAgICogQHJldHVybnMgQW4gb2JzZXJ2YWJsZSB0aGF0IGVtaXRzIHRoZSBwYXJzZWQgdGVtcGxhdGUgcmVzdWx0LlxyXG4gICAqL1xyXG4gIHRlbXBsYXRlUGFyc2VVbml2ZXJzYWwoZGF0YTogYW55LCBvbkZhaWxlZFBhcnNlT25TZXJ2ZXIgPSB0cnVlKTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuICAgIGxldCBodG1sID0gJyc7XHJcblxyXG4gICAgdHJ5IHtcclxuICAgICAgaHRtbCA9IHRoaXMudGVtcGxhdGVQYXJzZUxvY2FsbHkoZGF0YS5WYWx1ZSwgZGF0YS5UZW1wbGF0ZXZhcmlhYmxlcyk7XHJcbiAgICB9IGNhdGNoIChlcnJvcikge1xyXG4gICAgICBjb25zb2xlLmxvZygnTG9jYWwgcGFyc2UgZmFpbGVkJywgZXJyb3IpO1xyXG4gICAgICBpZiAob25GYWlsZWRQYXJzZU9uU2VydmVyKSB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMudGVtcGxhdGVQYXJzZShkYXRhKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIHJldHVybiBvZih7IFJlc3VsdDogaHRtbCB9KTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgdGVtcGxhdGVQYXJzZShkYXRhOiBhbnkpOiBPYnNlcnZhYmxlPGFueT4ge1xyXG4gICAgY29uc3QgaGVhZGVycyA9IGdldEhlYWRlcnMoKTtcclxuICAgIGlmIChoZWFkZXJzKSB7XHJcbiAgICAgIHJldHVybiB0aGlzLmFwaVNlcnZpY2UucG9zdChBUEkudGVtcGxhdGVQYXJzZSwgZGF0YSwgaGVhZGVycyk7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gb2YobnVsbCk7XHJcbiAgfVxyXG59XHJcbiJdfQ==
55
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVtcGxhdGUuaGVscGVycy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvZGF0YS1hY2Nlc3Mvc3JjL2xpYi90YWItY29yZS11dGlsaXR5L2FwcC9oZWxwZXJzL2NvbW1vbi90ZW1wbGF0ZS5oZWxwZXJzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLHVEQUF1RDtBQUV2RCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNuRCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sdUNBQXVDLENBQUM7QUFDbkUsT0FBTyxFQUFFLEdBQUcsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQ3BELE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFDbEMsT0FBTyxFQUFjLEVBQUUsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUN0QyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7O0FBSXRELE1BQU0sT0FBTyxjQUFjO0lBRDNCO1FBRW1CLGVBQVUsR0FBRyxNQUFNLENBQUMsVUFBVSxDQUFDLENBQUM7UUFDekMsV0FBTSxHQUFHLElBQUksTUFBTSxFQUFFLENBQUM7S0EwQy9CO0lBeENDOzs7Ozs7T0FNRztJQUNILG9CQUFvQixDQUFDLFFBQWdCLEVBQUUsaUJBQXlCO1FBQzlELE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxrQkFBa0IsQ0FDbkMsUUFBUSxJQUFJLEVBQUUsRUFDZCxpQkFBaUIsSUFBSSxpQkFBaUIsS0FBSyxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsaUJBQWlCLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUNuRixDQUFDO0lBQ0osQ0FBQztJQUVEOzs7Ozs7T0FNRztJQUNILHNCQUFzQixDQUFDLElBQTBCLEVBQUUscUJBQXFCLEdBQUcsSUFBSTtRQUM3RSxJQUFJLElBQUksR0FBRyxFQUFFLENBQUM7UUFFZCxJQUFJLENBQUM7WUFDSCxJQUFJLEdBQUcsSUFBSSxDQUFDLG9CQUFvQixDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsSUFBSSxDQUFDLGlCQUFpQixDQUFDLENBQUM7UUFDdkUsQ0FBQztRQUFDLE9BQU8sS0FBSyxFQUFFLENBQUM7WUFDZixPQUFPLENBQUMsR0FBRyxDQUFDLG9CQUFvQixFQUFFLEtBQUssQ0FBQyxDQUFDO1lBQ3pDLElBQUkscUJBQXFCLEVBQUUsQ0FBQztnQkFDMUIsT0FBTyxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxDQUFDO1lBQ2xDLENBQUM7UUFDSCxDQUFDO1FBRUQsT0FBTyxFQUFFLENBQUMsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQztJQUM5QixDQUFDO0lBRU8sYUFBYSxDQUFDLElBQTBCO1FBQzlDLE1BQU0sT0FBTyxHQUFHLFVBQVUsRUFBRSxDQUFDO1FBQzdCLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLGFBQWEsRUFBRSxJQUFJLEVBQUUsT0FBTyxDQUFDLENBQUM7SUFDaEUsQ0FBQzsrRUEzQ1UsY0FBYzt1RUFBZCxjQUFjLFdBQWQsY0FBYyxtQkFERCxNQUFNOztpRkFDbkIsY0FBYztjQUQxQixVQUFVO2VBQUMsRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiLyogZXNsaW50LWRpc2FibGUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWV4cGxpY2l0LWFueSAqL1xyXG5cclxuaW1wb3J0IHsgSW5qZWN0YWJsZSwgaW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEFwaVNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9jb3JlL2h0dHAtY2xpZW50L2FwaS5zZXJ2aWNlJztcclxuaW1wb3J0IHsgQVBJIH0gZnJvbSAnLi4vLi4vY29uc3RhbnRzL2FwaS1jb25zdGFudHMnO1xyXG5pbXBvcnQgeyBMaXF1aWQgfSBmcm9tICdsaXF1aWRqcyc7XHJcbmltcG9ydCB7IE9ic2VydmFibGUsIG9mIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IGdldEhlYWRlcnMgfSBmcm9tICcuLi8uLi91dGlscy9yZXEtcmVzLnV0aWwnO1xyXG5pbXBvcnQgeyBDb21tb25BcGlSZXNwb25zZSwgVGVtcGxhdGVQYXJzZVBheWxvYWQgfSBmcm9tICcuLi8uLi9pbnRlcmZhY2VzL2NvbW1vbi1hcGkuaW50ZXJmYWNlJztcclxuXHJcbkBJbmplY3RhYmxlKHsgcHJvdmlkZWRJbjogJ3Jvb3QnIH0pXHJcbmV4cG9ydCBjbGFzcyBUZW1wbGF0ZUhlbHBlciB7XHJcbiAgcHJpdmF0ZSByZWFkb25seSBhcGlTZXJ2aWNlID0gaW5qZWN0KEFwaVNlcnZpY2UpO1xyXG4gIHByaXZhdGUgZW5naW5lID0gbmV3IExpcXVpZCgpO1xyXG5cclxuICAvKipcclxuICAgKiBQYXJzZXMgdGhlIHRlbXBsYXRlIHVzaW5nIGxvY2FsIHJlbmRlcmluZy5cclxuICAgKlxyXG4gICAqIEBwYXJhbSB0ZW1wbGF0ZSAtIFRoZSB0ZW1wbGF0ZSB0byBiZSBwYXJzZWQuXHJcbiAgICogQHBhcmFtIHRlbXBsYXRlVmFyaWFibGVzIC0gVGhlIHZhcmlhYmxlcyB0byBiZSB1c2VkIGZvciB0ZW1wbGF0ZSByZW5kZXJpbmcuXHJcbiAgICogQHJldHVybnMgVGhlIHJlbmRlcmVkIHRlbXBsYXRlIHJlc3VsdC5cclxuICAgKi9cclxuICB0ZW1wbGF0ZVBhcnNlTG9jYWxseSh0ZW1wbGF0ZTogc3RyaW5nLCB0ZW1wbGF0ZVZhcmlhYmxlczogc3RyaW5nKTogc3RyaW5nIHtcclxuICAgIHJldHVybiB0aGlzLmVuZ2luZS5wYXJzZUFuZFJlbmRlclN5bmMoXHJcbiAgICAgIHRlbXBsYXRlID8/ICcnLFxyXG4gICAgICB0ZW1wbGF0ZVZhcmlhYmxlcyAmJiB0ZW1wbGF0ZVZhcmlhYmxlcyAhPT0gJycgPyBKU09OLnBhcnNlKHRlbXBsYXRlVmFyaWFibGVzKSA6IHt9XHJcbiAgICApO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogUGFyc2VzIHRoZSB0ZW1wbGF0ZSB1bml2ZXJzYWxseSwgZWl0aGVyIHVzaW5nIGxvY2FsIHJlbmRlcmluZyBvciBzZXJ2ZXItc2lkZSByZW5kZXJpbmcuXHJcbiAgICpcclxuICAgKiBAcGFyYW0gZGF0YSAtIFRoZSBkYXRhIHRvIGJlIHVzZWQgZm9yIHRlbXBsYXRlIHBhcnNpbmcuXHJcbiAgICogQHBhcmFtIHNob3VsZEZhaWxPblNlcnZlclBhcnNlIC0gSW5kaWNhdGVzIHdoZXRoZXIgdG8gZmFpbCBvbiBzZXJ2ZXItc2lkZSBwYXJzZSBpZiBsb2NhbCBwYXJzaW5nIGZhaWxzLlxyXG4gICAqIEByZXR1cm5zIEFuIG9ic2VydmFibGUgdGhhdCBlbWl0cyB0aGUgcGFyc2VkIHRlbXBsYXRlIHJlc3VsdC5cclxuICAgKi9cclxuICB0ZW1wbGF0ZVBhcnNlVW5pdmVyc2FsKGRhdGE6IFRlbXBsYXRlUGFyc2VQYXlsb2FkLCBvbkZhaWxlZFBhcnNlT25TZXJ2ZXIgPSB0cnVlKTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuICAgIGxldCBodG1sID0gJyc7XHJcblxyXG4gICAgdHJ5IHtcclxuICAgICAgaHRtbCA9IHRoaXMudGVtcGxhdGVQYXJzZUxvY2FsbHkoZGF0YS5WYWx1ZSwgZGF0YS5UZW1wbGF0ZXZhcmlhYmxlcyk7XHJcbiAgICB9IGNhdGNoIChlcnJvcikge1xyXG4gICAgICBjb25zb2xlLmxvZygnTG9jYWwgcGFyc2UgZmFpbGVkJywgZXJyb3IpO1xyXG4gICAgICBpZiAob25GYWlsZWRQYXJzZU9uU2VydmVyKSB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMudGVtcGxhdGVQYXJzZShkYXRhKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIHJldHVybiBvZih7IFJlc3VsdDogaHRtbCB9KTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgdGVtcGxhdGVQYXJzZShkYXRhOiBUZW1wbGF0ZVBhcnNlUGF5bG9hZCk6IE9ic2VydmFibGU8Q29tbW9uQXBpUmVzcG9uc2U+IHtcclxuICAgIGNvbnN0IGhlYWRlcnMgPSBnZXRIZWFkZXJzKCk7XHJcbiAgICByZXR1cm4gdGhpcy5hcGlTZXJ2aWNlLnBvc3QoQVBJLnRlbXBsYXRlUGFyc2UsIGRhdGEsIGhlYWRlcnMpO1xyXG4gIH1cclxufVxyXG4iXX0=
@@ -1,2 +1,2 @@
1
1
  export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tbW9uLWFwaS5pbnRlcmZhY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2RhdGEtYWNjZXNzL3NyYy9saWIvdGFiLWNvcmUtdXRpbGl0eS9hcHAvaW50ZXJmYWNlcy9jb21tb24tYXBpLmludGVyZmFjZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiLyogZXNsaW50LWRpc2FibGUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWV4cGxpY2l0LWFueSAqL1xuZXhwb3J0IGludGVyZmFjZSBBcGlSZXNwb25zZSB7XG4gIHJlcXVlc3RJZDogc3RyaW5nO1xuICBpc1N1Y2Nlc3M6IGJvb2xlYW47XG4gIHJlc3VsdDogYW55O1xuICBlcnJvcnM6IHN0cmluZ1tdO1xufVxuZXhwb3J0IGludGVyZmFjZSBSZWNvcmRJbmZvIHtcbiAgaXNTeXN0ZW1SZWNvcmQ6IGJvb2xlYW4gfCBudWxsO1xuICBibHVlcHJpbnRJZDogc3RyaW5nIHwgbnVsbDtcbiAgYmx1ZXByaW50U3RhdHVzSWQ6IHN0cmluZyB8IG51bGw7XG4gIHJlY29yZElkOiBzdHJpbmc7XG4gIHByaW1hcnlLZXk6IHN0cmluZztcbn1cblxuXG5leHBvcnQgaW50ZXJmYWNlIENvbW1vbkFwaVJlc3BvbnNlIHtcbiAgUmVxdWVzdElkOiBzdHJpbmdcbiAgSXNTdWNjZXNzOiBib29sZWFuXG4gIFJlc3VsdDogc3RyaW5nIHwgYW55W11cbiAgU3RhdHVzQ29kZTogc3RyaW5nXG4gIFJlY29yZEFmZmVjdHRlZDogbnVtYmVyXG4gIFRvdGFsUmVjb3JkczogbnVtYmVyXG4gIFRvdGFsRXhlY3V0aW9uVGltZTogbnVtYmVyXG4gIExvZzogYW55W11cbiAgRXJyb3JzOiBhbnlbXVxufSJdfQ==
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tbW9uLWFwaS5pbnRlcmZhY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2RhdGEtYWNjZXNzL3NyYy9saWIvdGFiLWNvcmUtdXRpbGl0eS9hcHAvaW50ZXJmYWNlcy9jb21tb24tYXBpLmludGVyZmFjZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiLyogZXNsaW50LWRpc2FibGUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWV4cGxpY2l0LWFueSAqL1xuZXhwb3J0IGludGVyZmFjZSBBcGlSZXNwb25zZSB7XG4gIHJlcXVlc3RJZDogc3RyaW5nO1xuICBpc1N1Y2Nlc3M6IGJvb2xlYW47XG4gIHJlc3VsdDogYW55O1xuICBlcnJvcnM6IHN0cmluZ1tdO1xufVxuZXhwb3J0IGludGVyZmFjZSBSZWNvcmRJbmZvIHtcbiAgaXNTeXN0ZW1SZWNvcmQ6IGJvb2xlYW4gfCBudWxsO1xuICBibHVlcHJpbnRJZDogc3RyaW5nIHwgbnVsbDtcbiAgYmx1ZXByaW50U3RhdHVzSWQ6IHN0cmluZyB8IG51bGw7XG4gIHJlY29yZElkOiBzdHJpbmc7XG4gIHByaW1hcnlLZXk6IHN0cmluZztcbn1cblxuXG5leHBvcnQgaW50ZXJmYWNlIENvbW1vbkFwaVJlc3BvbnNlIHtcbiAgUmVxdWVzdElkOiBzdHJpbmdcbiAgSXNTdWNjZXNzOiBib29sZWFuXG4gIFJlc3VsdDogc3RyaW5nIHwgYW55W11cbiAgU3RhdHVzQ29kZTogc3RyaW5nXG4gIFJlY29yZEFmZmVjdHRlZDogbnVtYmVyXG4gIFRvdGFsUmVjb3JkczogbnVtYmVyXG4gIFRvdGFsRXhlY3V0aW9uVGltZTogbnVtYmVyXG4gIExvZzogYW55W11cbiAgRXJyb3JzOiBhbnlbXVxufVxuXG5leHBvcnQgaW50ZXJmYWNlIEdldFNjcmVlbkNvbmZpZyB7IFxuICBsYXlvdXRJZD86IHN0cmluZzsgXG4gIHZlcnNpb24/OiBzdHJpbmcgXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUHJvY2Vzc1JlcXVlc3RQYXlsb2FkIHtcbiAgU2NyZWVuSWQ6IHN0cmluZyxcbiAgRGF0YTogYW55XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgVGVtcGxhdGVQYXJzZVBheWxvYWQge1xuICBEYXRhU291cmNlTW9kZTogbnVtYmVyLFxuICBWYWx1ZTogc3RyaW5nLFxuICBUZW1wbGF0ZXZhcmlhYmxlczogc3RyaW5nXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgTmV4dFN0YXR1c1BheWxvYWQge1xuICByZWNvcmRJZDogc3RyaW5nLCBcbiAgYXBwT2JqZWN0SWQ6IHN0cmluZ1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFVwZGF0ZVN0YXR1c1BheWxvYWQgZXh0ZW5kcyBOZXh0U3RhdHVzUGF5bG9hZCB7XG4gIG5leHRQb3NzaWJsZVN0YXR1c0lkOiBzdHJpbmdcbn0iXX0=
@@ -1,8 +1,22 @@
1
+ import { CommonApiResponse, NextStatusPayload, UpdateStatusPayload } from "../interfaces/common-api.interface";
2
+ import { Observable } from "rxjs";
1
3
  import * as i0 from "@angular/core";
2
4
  export declare class TabBlueprintService {
3
5
  private readonly apiService;
4
- getNextStatus(recordId: string, params?: any): any;
5
- updateStatus(recordId: string, nextPossibleStatusId: string, params?: any): any;
6
+ /**
7
+ * Retrieves the next status of a record.
8
+ * @param payload - Object containing the recordId and appObjectId.
9
+ * @param params - Optional parameters for the API call.
10
+ * @returns An observable of the API response.
11
+ */
12
+ getNextStatus(payload: NextStatusPayload, params?: any): Observable<CommonApiResponse>;
13
+ /**
14
+ * Updates the status of a record.
15
+ * @param payload - Object containing the next possible status ID.
16
+ * @param params - Optional parameters for the API call.
17
+ * @returns An observable of the API response.
18
+ */
19
+ updateStatus(payload: UpdateStatusPayload, params?: any): Observable<CommonApiResponse>;
6
20
  static ɵfac: i0.ɵɵFactoryDeclaration<TabBlueprintService, never>;
7
21
  static ɵprov: i0.ɵɵInjectableDeclaration<TabBlueprintService>;
8
22
  }
@@ -1,3 +1,6 @@
1
+ import { CommonApiResponse, GetScreenConfig, ProcessRequestPayload } from "../interfaces/common-api.interface";
2
+ import { Observable } from "rxjs";
3
+ import { BuildFormComponentType } from "../enums/common.enum";
1
4
  import * as i0 from "@angular/core";
2
5
  export declare class TabFormioService {
3
6
  private readonly apiService;
@@ -9,21 +12,26 @@ export declare class TabFormioService {
9
12
  * @param params - Additional parameters for the API call.
10
13
  * @returns The screen data if headers are available, otherwise null.
11
14
  */
12
- getScreen(screenId: string, config?: {
13
- layoutId?: string;
14
- version?: string;
15
- }, params?: any): any;
15
+ getScreen(screenId: string, config?: GetScreenConfig, params?: any): Observable<CommonApiResponse>;
16
16
  /**
17
17
  * Retrieves the submission data from the server.
18
18
  * @param data - Object containing screenId and reqtokens
19
19
  * @returns A Subject emitting the submission data or undefined.
20
20
  */
21
- getScreenData(screenId: string, requestPayload: any): any;
21
+ getScreenData(screenId: string, requestPayload: any): Observable<CommonApiResponse>;
22
22
  /**
23
23
  * Called when the form is submitted.
24
24
  * @param data Object containing submission data.
25
25
  */
26
- processRequest(data: any): any;
26
+ processRequest(data: ProcessRequestPayload): Observable<CommonApiResponse>;
27
+ /**
28
+ * Retrieves the formIO components for the given appObjectId and type.
29
+ * @param appObjectId - The ID of the app object.
30
+ * @param type - The type of the components to retrieve. Can be either 'CommonFilter' or 'BulkUpdate'
31
+ * @param params - Additional parameters for the API call.
32
+ * @returns The formIO components in the response body.
33
+ */
34
+ buildFormIOComponents(appObjectId: string, type: BuildFormComponentType, params?: any): Observable<CommonApiResponse>;
27
35
  static ɵfac: i0.ɵɵFactoryDeclaration<TabFormioService, never>;
28
36
  static ɵprov: i0.ɵɵInjectableDeclaration<TabFormioService>;
29
37
  }
@@ -59,20 +59,6 @@ export declare class TabGetService {
59
59
  * @returns An observable of the response from the API
60
60
  */
61
61
  setTabComponentsForTenant(connectionId: string, data?: any): any;
62
- /**
63
- * Retrieves a form configuration for a common filter based on the provided application object ID.
64
- * @param appObjectId - The ID of the application object.
65
- * @param params - Optional parameters for the request.
66
- * @returns The response from the API or null if headers are unavailable.
67
- */
68
- getBuildFormIOForCommonFilter(appObjectId: string, params?: any): import("rxjs").Observable<any> | null;
69
- /**
70
- * Retrieves a form configuration for a bulk update based on the provided application object ID.
71
- * @param appObjectId - The ID of the application object.
72
- * @param params - Optional parameters for the request.
73
- * @returns The response from the API or null if headers are unavailable.
74
- */
75
- getBuildFormIOForBulkUpdate(appObjectId: string, params?: any): import("rxjs").Observable<any> | null;
76
62
  /**
77
63
  * Get Search Data
78
64
  * @param searchQuery - Search Query string
@@ -16,3 +16,7 @@ export declare enum ReleaseContentType {
16
16
  Data = 2,
17
17
  Script = 3
18
18
  }
19
+ export interface BuildFormComponentType {
20
+ CommonFilter: 'CommonFilter';
21
+ BulkUpdate: 'BulkUpdate';
22
+ }
@@ -1,4 +1,5 @@
1
1
  import { Observable } from 'rxjs';
2
+ import { TemplateParsePayload } from '../../interfaces/common-api.interface';
2
3
  import * as i0 from "@angular/core";
3
4
  export declare class TemplateHelper {
4
5
  private readonly apiService;
@@ -18,7 +19,7 @@ export declare class TemplateHelper {
18
19
  * @param shouldFailOnServerParse - Indicates whether to fail on server-side parse if local parsing fails.
19
20
  * @returns An observable that emits the parsed template result.
20
21
  */
21
- templateParseUniversal(data: any, onFailedParseOnServer?: boolean): Observable<any>;
22
+ templateParseUniversal(data: TemplateParsePayload, onFailedParseOnServer?: boolean): Observable<any>;
22
23
  private templateParse;
23
24
  static ɵfac: i0.ɵɵFactoryDeclaration<TemplateHelper, never>;
24
25
  static ɵprov: i0.ɵɵInjectableDeclaration<TemplateHelper>;
@@ -22,3 +22,23 @@ export interface CommonApiResponse {
22
22
  Log: any[];
23
23
  Errors: any[];
24
24
  }
25
+ export interface GetScreenConfig {
26
+ layoutId?: string;
27
+ version?: string;
28
+ }
29
+ export interface ProcessRequestPayload {
30
+ ScreenId: string;
31
+ Data: any;
32
+ }
33
+ export interface TemplateParsePayload {
34
+ DataSourceMode: number;
35
+ Value: string;
36
+ Templatevariables: string;
37
+ }
38
+ export interface NextStatusPayload {
39
+ recordId: string;
40
+ appObjectId: string;
41
+ }
42
+ export interface UpdateStatusPayload extends NextStatusPayload {
43
+ nextPossibleStatusId: string;
44
+ }
@@ -2,18 +2,18 @@ import { Observable } from "rxjs";
2
2
  import { LoginUserRequest } from "../app/interfaces/auth.interface";
3
3
  export declare const authStore: import("@angular/core").Type<{
4
4
  token: import("@angular/core").Signal<string>;
5
+ name: import("@angular/core").Signal<string>;
5
6
  id: import("@angular/core").Signal<any>;
6
7
  email: import("@angular/core").Signal<string>;
7
- name: import("@angular/core").Signal<string>;
8
8
  avatar: import("@angular/core").Signal<string>;
9
9
  status: import("@angular/core").Signal<string>;
10
10
  checkUserlogin: () => boolean;
11
11
  login: (API_URL: string, credentials: LoginUserRequest) => Observable<any>;
12
12
  } & import("@ngrx/signals").StateSignal<{
13
13
  token: string;
14
+ name: string;
14
15
  id: any;
15
16
  email: string;
16
- name: string;
17
17
  avatar: string;
18
18
  status: string;
19
19
  }>>;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@techextensor/tab-core-utility",
3
- "version": "2.2.139",
3
+ "version": "2.2.140",
4
4
  "peerDependencies": {
5
5
  "@angular/common": "^17.3.0",
6
6
  "@angular/core": "^17.3.0",