@snabcentr/client-core 2.48.0 → 2.50.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.
package/config/index.d.ts CHANGED
@@ -8,3 +8,4 @@ export * from './sc-i-update-interval';
8
8
  export * from './sc-i-urls';
9
9
  export * from './sc-i-user-configs';
10
10
  export * from './sc-i-feedback-api';
11
+ export * from './sc-i-date-format';
@@ -0,0 +1,17 @@
1
+ /**
2
+ * Список форматов дат.
3
+ */
4
+ export interface ScIDateFormat {
5
+ /**
6
+ * Формат даты в API.
7
+ */
8
+ readonly api: string;
9
+ /**
10
+ * Формат даты в UI.
11
+ */
12
+ readonly uiDate: string;
13
+ /**
14
+ * Формат даты в UI с временем.
15
+ */
16
+ readonly uiDateWithTime: string;
17
+ }
@@ -7,11 +7,11 @@ export interface ScIFeedbackAPI {
7
7
  */
8
8
  readonly apiUrl: string;
9
9
  /**
10
- * Ключ-имя.
10
+ * Токен-ключ для аутентификации.
11
11
  */
12
- readonly keyName: string;
12
+ readonly authToken: string;
13
13
  /**
14
- * Токен-ключ.
14
+ * Название токен-ключа для аутентификации.
15
15
  */
16
- readonly authToken: string;
16
+ readonly authTokenName: string;
17
17
  }
@@ -8,4 +8,5 @@ export * from './sc-i-update-interval';
8
8
  export * from './sc-i-urls';
9
9
  export * from './sc-i-user-configs';
10
10
  export * from './sc-i-feedback-api';
11
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL2NvbmZpZy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLGlCQUFpQixDQUFDO0FBQ2hDLGNBQWMsb0JBQW9CLENBQUM7QUFDbkMsY0FBYyx1QkFBdUIsQ0FBQztBQUN0QyxjQUFjLDBCQUEwQixDQUFDO0FBQ3pDLGNBQWMsMEJBQTBCLENBQUM7QUFDekMsY0FBYyw2QkFBNkIsQ0FBQztBQUM1QyxjQUFjLHdCQUF3QixDQUFDO0FBQ3ZDLGNBQWMsYUFBYSxDQUFDO0FBQzVCLGNBQWMscUJBQXFCLENBQUM7QUFDcEMsY0FBYyxxQkFBcUIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vc2MtaS1hcGkta2V5cyc7XG5leHBvcnQgKiBmcm9tICcuL3NjLWktYXBwLXJlbGVhc2UnO1xuZXhwb3J0ICogZnJvbSAnLi9zYy1pLWNhY2hlLWxpZmV0aW1lJztcbmV4cG9ydCAqIGZyb20gJy4vc2MtaS1jb21wYW55LWJhc2UtaW5mbyc7XG5leHBvcnQgKiBmcm9tICcuL3NjLWktZGVmYXVsdC1wYWdlLW1ldGEnO1xuZXhwb3J0ICogZnJvbSAnLi9zYy1pLW1hcHMtZGVmYXVsdC1vcHRpb25zJztcbmV4cG9ydCAqIGZyb20gJy4vc2MtaS11cGRhdGUtaW50ZXJ2YWwnO1xuZXhwb3J0ICogZnJvbSAnLi9zYy1pLXVybHMnO1xuZXhwb3J0ICogZnJvbSAnLi9zYy1pLXVzZXItY29uZmlncyc7XG5leHBvcnQgKiBmcm9tICcuL3NjLWktZmVlZGJhY2stYXBpJztcbiJdfQ==
11
+ export * from './sc-i-date-format';
12
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL2NvbmZpZy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLGlCQUFpQixDQUFDO0FBQ2hDLGNBQWMsb0JBQW9CLENBQUM7QUFDbkMsY0FBYyx1QkFBdUIsQ0FBQztBQUN0QyxjQUFjLDBCQUEwQixDQUFDO0FBQ3pDLGNBQWMsMEJBQTBCLENBQUM7QUFDekMsY0FBYyw2QkFBNkIsQ0FBQztBQUM1QyxjQUFjLHdCQUF3QixDQUFDO0FBQ3ZDLGNBQWMsYUFBYSxDQUFDO0FBQzVCLGNBQWMscUJBQXFCLENBQUM7QUFDcEMsY0FBYyxxQkFBcUIsQ0FBQztBQUNwQyxjQUFjLG9CQUFvQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9zYy1pLWFwaS1rZXlzJztcbmV4cG9ydCAqIGZyb20gJy4vc2MtaS1hcHAtcmVsZWFzZSc7XG5leHBvcnQgKiBmcm9tICcuL3NjLWktY2FjaGUtbGlmZXRpbWUnO1xuZXhwb3J0ICogZnJvbSAnLi9zYy1pLWNvbXBhbnktYmFzZS1pbmZvJztcbmV4cG9ydCAqIGZyb20gJy4vc2MtaS1kZWZhdWx0LXBhZ2UtbWV0YSc7XG5leHBvcnQgKiBmcm9tICcuL3NjLWktbWFwcy1kZWZhdWx0LW9wdGlvbnMnO1xuZXhwb3J0ICogZnJvbSAnLi9zYy1pLXVwZGF0ZS1pbnRlcnZhbCc7XG5leHBvcnQgKiBmcm9tICcuL3NjLWktdXJscyc7XG5leHBvcnQgKiBmcm9tICcuL3NjLWktdXNlci1jb25maWdzJztcbmV4cG9ydCAqIGZyb20gJy4vc2MtaS1mZWVkYmFjay1hcGknO1xuZXhwb3J0ICogZnJvbSAnLi9zYy1pLWRhdGUtZm9ybWF0JztcbiJdfQ==
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2MtaS1kYXRlLWZvcm1hdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvY29uZmlnL3NjLWktZGF0ZS1mb3JtYXQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICog0KHQv9C40YHQvtC6INGE0L7RgNC80LDRgtC+0LIg0LTQsNGCLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFNjSURhdGVGb3JtYXQge1xuICAgIC8qKlxuICAgICAqINCk0L7RgNC80LDRgiDQtNCw0YLRiyDQsiBBUEkuXG4gICAgICovXG4gICAgcmVhZG9ubHkgYXBpOiBzdHJpbmc7XG5cbiAgICAvKipcbiAgICAgKiDQpNC+0YDQvNCw0YIg0LTQsNGC0Ysg0LIgVUkuXG4gICAgICovXG4gICAgcmVhZG9ubHkgdWlEYXRlOiBzdHJpbmc7XG5cbiAgICAvKipcbiAgICAgKiDQpNC+0YDQvNCw0YIg0LTQsNGC0Ysg0LIgVUkg0YEg0LLRgNC10LzQtdC90LXQvC5cbiAgICAgKi9cbiAgICByZWFkb25seSB1aURhdGVXaXRoVGltZTogc3RyaW5nO1xufVxuIl19
@@ -1,2 +1,2 @@
1
1
  export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2MtaS1mZWVkYmFjay1hcGkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL2NvbmZpZy9zYy1pLWZlZWRiYWNrLWFwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiDQlNCw0L3QvdGL0LUg0LTQu9GPINCy0LfQsNC40LzQvtC00LXQudGB0YLQstC40Y8g0YEgQVBJINC+0LHRgNCw0YLQvdC+0Lkg0YHQstGP0LfQuC5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBTY0lGZWVkYmFja0FQSSB7XG4gICAgLyoqXG4gICAgICogVVJMLdCw0LTRgNC10YEg0LrQvtC90LXRh9C90L7QuSDRgtC+0YfQutC4IEFQSS5cbiAgICAgKi9cbiAgICByZWFkb25seSBhcGlVcmw6IHN0cmluZztcblxuICAgIC8qKlxuICAgICAqINCa0LvRjtGHLdC40LzRjy5cbiAgICAgKi9cbiAgICByZWFkb25seSBrZXlOYW1lOiBzdHJpbmc7XG5cbiAgICAvKipcbiAgICAgKiDQotC+0LrQtdC9LdC60LvRjtGHLlxuICAgICAqL1xuICAgIHJlYWRvbmx5IGF1dGhUb2tlbjogc3RyaW5nO1xufVxuIl19
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2MtaS1mZWVkYmFjay1hcGkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL2NvbmZpZy9zYy1pLWZlZWRiYWNrLWFwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiDQlNCw0L3QvdGL0LUg0LTQu9GPINCy0LfQsNC40LzQvtC00LXQudGB0YLQstC40Y8g0YEgQVBJINC+0LHRgNCw0YLQvdC+0Lkg0YHQstGP0LfQuC5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBTY0lGZWVkYmFja0FQSSB7XG4gICAgLyoqXG4gICAgICogVVJMLdCw0LTRgNC10YEg0LrQvtC90LXRh9C90L7QuSDRgtC+0YfQutC4IEFQSS5cbiAgICAgKi9cbiAgICByZWFkb25seSBhcGlVcmw6IHN0cmluZztcblxuICAgIC8qKlxuICAgICAqINCi0L7QutC10L0t0LrQu9GO0Ycg0LTQu9GPINCw0YPRgtC10L3RgtC40YTQuNC60LDRhtC40LguXG4gICAgICovXG4gICAgcmVhZG9ubHkgYXV0aFRva2VuOiBzdHJpbmc7XG5cbiAgICAvKipcbiAgICAgKiDQndCw0LfQstCw0L3QuNC1INGC0L7QutC10L0t0LrQu9GO0YfQsCDQtNC70Y8g0LDRg9GC0LXQvdGC0LjRhNC40LrQsNGG0LjQuC5cbiAgICAgKi9cbiAgICByZWFkb25seSBhdXRoVG9rZW5OYW1lOiBzdHJpbmc7XG59XG4iXX0=
@@ -30,7 +30,7 @@ export class ScFeedbackService {
30
30
  .get(`${this.feedbackApi.apiUrl}/feedback/forms`, {
31
31
  context: new HttpContext().set(SC_AUTH_ADD_HEADER_REQUIRED, false).set(SC_IS_HEADER_REQUIRED, false),
32
32
  headers: {
33
- [this.feedbackApi.keyName]: this.feedbackApi.authToken,
33
+ [this.feedbackApi.authTokenName]: this.feedbackApi.authToken,
34
34
  },
35
35
  })
36
36
  .pipe(shareReplay(1));
@@ -46,7 +46,7 @@ export class ScFeedbackService {
46
46
  .post(`${this.feedbackApi.apiUrl}/feedback/${formSlug}`, feedbackMessage, {
47
47
  context: new HttpContext().set(SC_AUTH_ADD_HEADER_REQUIRED, false).set(SC_IS_HEADER_REQUIRED, false),
48
48
  headers: {
49
- [this.feedbackApi.keyName]: this.feedbackApi.authToken,
49
+ [this.feedbackApi.authTokenName]: this.feedbackApi.authToken,
50
50
  },
51
51
  })
52
52
  .pipe(tap(() => {
@@ -67,4 +67,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.12", ngImpo
67
67
  type: Inject,
68
68
  args: [SC_FEEDBACK_API]
69
69
  }] }] });
70
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2MtZmVlZGJhY2suc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvY29udGFjdHMvc2VydmljZXMvc2MtZmVlZGJhY2suc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQWMsV0FBVyxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDL0QsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbkQsT0FBTyxFQUFjLFdBQVcsRUFBRSxHQUFHLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFHcEQsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0sMkRBQTJELENBQUM7QUFDeEcsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0scURBQXFELENBQUM7QUFFNUYsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQy9ELE9BQU8sRUFBRSxzQkFBc0IsRUFBd0IsTUFBTSxvQkFBb0IsQ0FBQzs7OztBQUdsRjs7R0FFRztBQUlILE1BQU0sT0FBTyxpQkFBaUI7SUFhMUI7Ozs7OztPQU1HO0lBQ0gsWUFDcUIsSUFBZ0IsRUFDaEIsa0JBQXdDLEVBRXhDLFdBQTJCO1FBSDNCLFNBQUksR0FBSixJQUFJLENBQVk7UUFDaEIsdUJBQWtCLEdBQWxCLGtCQUFrQixDQUFzQjtRQUV4QyxnQkFBVyxHQUFYLFdBQVcsQ0FBZ0I7UUF2QmhEOztXQUVHO1FBQ2EsbUJBQWMsR0FBMkQsSUFBSSxDQUFDLElBQUk7YUFDN0YsR0FBRyxDQUE2QyxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsTUFBTSxpQkFBaUIsRUFBRTtZQUMxRixPQUFPLEVBQUUsSUFBSSxXQUFXLEVBQUUsQ0FBQyxHQUFHLENBQUMsMkJBQTJCLEVBQUUsS0FBSyxDQUFDLENBQUMsR0FBRyxDQUFDLHFCQUFxQixFQUFFLEtBQUssQ0FBQztZQUNwRyxPQUFPLEVBQUU7Z0JBQ0wsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLE9BQU8sQ0FBQyxFQUFFLElBQUksQ0FBQyxXQUFXLENBQUMsU0FBUzthQUN6RDtTQUNKLENBQUM7YUFDRCxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFjdkIsQ0FBQztJQUVKOzs7OztPQUtHO0lBQ0ksWUFBWSxDQUFDLFFBQXlCLEVBQUUsZUFBbUM7UUFDOUUsT0FBTyxJQUFJLENBQUMsSUFBSTthQUNYLElBQUksQ0FBWSxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsTUFBTSxhQUFhLFFBQVEsRUFBRSxFQUFFLGVBQWUsRUFBRTtZQUNqRixPQUFPLEVBQUUsSUFBSSxXQUFXLEVBQUUsQ0FBQyxHQUFHLENBQUMsMkJBQTJCLEVBQUUsS0FBSyxDQUFDLENBQUMsR0FBRyxDQUFDLHFCQUFxQixFQUFFLEtBQUssQ0FBQztZQUNwRyxPQUFPLEVBQUU7Z0JBQ0wsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLE9BQU8sQ0FBQyxFQUFFLElBQUksQ0FBQyxXQUFXLENBQUMsU0FBUzthQUN6RDtTQUNKLENBQUM7YUFDRCxJQUFJLENBQ0QsR0FBRyxDQUFDLEdBQUcsRUFBRTtZQUNMLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxvQkFBb0IsQ0FBQztnQkFDekMsTUFBTSxFQUFFLHNCQUFzQixDQUFDLFlBQVk7YUFDOUMsQ0FBQyxDQUFDO1FBQ1AsQ0FBQyxDQUFDLENBQ0wsQ0FBQztJQUNWLENBQUM7K0dBaERRLGlCQUFpQixnRkF1QmQsZUFBZTttSEF2QmxCLGlCQUFpQixjQUZkLE1BQU07OzRGQUVULGlCQUFpQjtrQkFIN0IsVUFBVTttQkFBQztvQkFDUixVQUFVLEVBQUUsTUFBTTtpQkFDckI7OzBCQXdCUSxNQUFNOzJCQUFDLGVBQWUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBIdHRwQ2xpZW50LCBIdHRwQ29udGV4dCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcbmltcG9ydCB7IEluamVjdCwgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgc2hhcmVSZXBsYXksIHRhcCB9IGZyb20gJ3J4anMnO1xuXG5pbXBvcnQgeyBTY0lGZWVkYmFja0FQSSB9IGZyb20gJy4uLy4uL2NvbmZpZyc7XG5pbXBvcnQgeyBTQ19BVVRIX0FERF9IRUFERVJfUkVRVUlSRUQgfSBmcm9tICcuLi8uLi9odHRwSW50ZXJjZXB0b3JzL3Rva2Vucy9zYy1hdXRoLWFkZC1oZWFkZXItcmVxdWlyZWQnO1xuaW1wb3J0IHsgU0NfSVNfSEVBREVSX1JFUVVJUkVEIH0gZnJvbSAnLi4vLi4vaHR0cEludGVyY2VwdG9ycy90b2tlbnMvc2MtaXMtaGVhZGVyLXJlcXVpcmVkJztcbmltcG9ydCB7IFNjSVJlZmVyZW5jZXNUeXBlcyB9IGZyb20gJy4uLy4uL3JlZmVyZW5jZXMvZHRvL3NjLWktcmVmZXJlbmNlcy10eXBlcyc7XG5pbXBvcnQgeyBTQ19GRUVEQkFDS19BUEkgfSBmcm9tICcuLi8uLi90b2tlbnMvc2MtZmVlZGJhY2stYXBpJztcbmltcG9ydCB7IFNjVXNlck1ldHJpa2FHb2Fsc0VudW0sIFNjVXNlck1ldHJpa2FTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vdXNlci1tZXRyaWthJztcbmltcG9ydCB7IFNjSUZlZWRiYWNrTWVzc2FnZSB9IGZyb20gJy4uL2R0byc7XG5pbXBvcnQgeyBTY0ZlZWRiYWNrRm9ybXMgfSBmcm9tICcuLi9lbnVtcy9zYy1mZWVkYmFjay1mb3Jtcyc7XG4vKipcbiAqINCh0LXRgNCy0LjRgSDQvtCx0YDQsNGC0L3QvtC5INGB0LLRj9C30LguXG4gKi9cbkBJbmplY3RhYmxlKHtcbiAgICBwcm92aWRlZEluOiAncm9vdCcsXG59KVxuZXhwb3J0IGNsYXNzIFNjRmVlZGJhY2tTZXJ2aWNlIHtcbiAgICAvKipcbiAgICAgKiDQodC/0LjRgdC+0Log0YTQvtGA0Lwg0L7QsdGA0LDRgtC90L7QuSDRgdCy0Y/Qt9C4LlxuICAgICAqL1xuICAgIHB1YmxpYyByZWFkb25seSBmZWVkYmFja0Zvcm1zJDogT2JzZXJ2YWJsZTxBcnJheTxTY0lSZWZlcmVuY2VzVHlwZXM8U2NGZWVkYmFja0Zvcm1zPj4+ID0gdGhpcy5odHRwXG4gICAgICAgIC5nZXQ8QXJyYXk8U2NJUmVmZXJlbmNlc1R5cGVzPFNjRmVlZGJhY2tGb3Jtcz4+PihgJHt0aGlzLmZlZWRiYWNrQXBpLmFwaVVybH0vZmVlZGJhY2svZm9ybXNgLCB7XG4gICAgICAgICAgICBjb250ZXh0OiBuZXcgSHR0cENvbnRleHQoKS5zZXQoU0NfQVVUSF9BRERfSEVBREVSX1JFUVVJUkVELCBmYWxzZSkuc2V0KFNDX0lTX0hFQURFUl9SRVFVSVJFRCwgZmFsc2UpLFxuICAgICAgICAgICAgaGVhZGVyczoge1xuICAgICAgICAgICAgICAgIFt0aGlzLmZlZWRiYWNrQXBpLmtleU5hbWVdOiB0aGlzLmZlZWRiYWNrQXBpLmF1dGhUb2tlbixcbiAgICAgICAgICAgIH0sXG4gICAgICAgIH0pXG4gICAgICAgIC5waXBlKHNoYXJlUmVwbGF5KDEpKTtcblxuICAgIC8qKlxuICAgICAqINCY0L3QuNGG0LjQsNC70LjQt9C40YDRg9C10YIg0Y3QutC30LXQvNC/0LvRj9GAINC60LvQsNGB0YHQsCB7QGxpbmsgU2NGZWVkYmFja1NlcnZpY2V9LlxuICAgICAqXG4gICAgICogQHBhcmFtIGh0dHAgSFRUUC3QutC70LjQtdC90YIuXG4gICAgICogQHBhcmFtIHVzZXJNZXRyaWthU2VydmljZSDQodC10YDQstC40YEg0LTQu9GPINGB0LHQvtGA0LAg0LzQtdGC0YDQuNC6INC+INC00LXQudGB0YLQstC40Y/RhSDQv9C+0LvRjNC30L7QstCw0YLQtdC70LXQuS5cbiAgICAgKiBAcGFyYW0gZmVlZGJhY2tBcGkg0JTQsNC90L3Ri9C1INC00LvRjyDQstC30LDQuNC80L7QtNC10LnRgdGC0LLQuNGPINGBIEFQSSDQvtCx0YDQsNGC0L3QvtC5INGB0LLRj9C30LguXG4gICAgICovXG4gICAgcHVibGljIGNvbnN0cnVjdG9yKFxuICAgICAgICBwcml2YXRlIHJlYWRvbmx5IGh0dHA6IEh0dHBDbGllbnQsXG4gICAgICAgIHByaXZhdGUgcmVhZG9ubHkgdXNlck1ldHJpa2FTZXJ2aWNlOiBTY1VzZXJNZXRyaWthU2VydmljZSxcbiAgICAgICAgQEluamVjdChTQ19GRUVEQkFDS19BUEkpXG4gICAgICAgIHByaXZhdGUgcmVhZG9ubHkgZmVlZGJhY2tBcGk6IFNjSUZlZWRiYWNrQVBJXG4gICAgKSB7fVxuXG4gICAgLyoqXG4gICAgICog0J7RgtC/0YDQsNCy0LvRj9C10YIg0YHQvtC+0LHRidC10L3QuNC1INC+0LHRgNCw0YLQvdC+0Lkg0YHQstGP0LfQuC5cbiAgICAgKlxuICAgICAqIEBwYXJhbSBmb3JtU2x1ZyDQodC40LzQstC+0LvRjNC90L7QtSDQvtCx0L7Qt9C90LDRh9C10L3QuNC1IChzbHVnKSDRhNC+0YDQvNGLLlxuICAgICAqIEBwYXJhbSBmZWVkYmFja01lc3NhZ2Ug0J7QsdGK0LXQutGCINGB0L7QvtCx0YnQtdC90LjRjyDQvtCx0YDQsNGC0L3QvtC5INGB0LLRj9C30LguXG4gICAgICovXG4gICAgcHVibGljIHNlbmRGZWVkYmFjayhmb3JtU2x1ZzogU2NGZWVkYmFja0Zvcm1zLCBmZWVkYmFja01lc3NhZ2U6IFNjSUZlZWRiYWNrTWVzc2FnZSk6IE9ic2VydmFibGU8dW5kZWZpbmVkPiB7XG4gICAgICAgIHJldHVybiB0aGlzLmh0dHBcbiAgICAgICAgICAgIC5wb3N0PHVuZGVmaW5lZD4oYCR7dGhpcy5mZWVkYmFja0FwaS5hcGlVcmx9L2ZlZWRiYWNrLyR7Zm9ybVNsdWd9YCwgZmVlZGJhY2tNZXNzYWdlLCB7XG4gICAgICAgICAgICAgICAgY29udGV4dDogbmV3IEh0dHBDb250ZXh0KCkuc2V0KFNDX0FVVEhfQUREX0hFQURFUl9SRVFVSVJFRCwgZmFsc2UpLnNldChTQ19JU19IRUFERVJfUkVRVUlSRUQsIGZhbHNlKSxcbiAgICAgICAgICAgICAgICBoZWFkZXJzOiB7XG4gICAgICAgICAgICAgICAgICAgIFt0aGlzLmZlZWRiYWNrQXBpLmtleU5hbWVdOiB0aGlzLmZlZWRiYWNrQXBpLmF1dGhUb2tlbixcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgfSlcbiAgICAgICAgICAgIC5waXBlKFxuICAgICAgICAgICAgICAgIHRhcCgoKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMudXNlck1ldHJpa2FTZXJ2aWNlLmVtaXRVc2VyTWV0cmlrYUV2ZW50KHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRhcmdldDogU2NVc2VyTWV0cmlrYUdvYWxzRW51bS5mZWVkYmFja1NlbnQsXG4gICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICApO1xuICAgIH1cbn1cbiJdfQ==
70
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2MtZmVlZGJhY2suc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvY29udGFjdHMvc2VydmljZXMvc2MtZmVlZGJhY2suc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQWMsV0FBVyxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDL0QsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbkQsT0FBTyxFQUFjLFdBQVcsRUFBRSxHQUFHLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFHcEQsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0sMkRBQTJELENBQUM7QUFDeEcsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0scURBQXFELENBQUM7QUFFNUYsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQy9ELE9BQU8sRUFBRSxzQkFBc0IsRUFBd0IsTUFBTSxvQkFBb0IsQ0FBQzs7OztBQUdsRjs7R0FFRztBQUlILE1BQU0sT0FBTyxpQkFBaUI7SUFhMUI7Ozs7OztPQU1HO0lBQ0gsWUFDcUIsSUFBZ0IsRUFDaEIsa0JBQXdDLEVBRXhDLFdBQTJCO1FBSDNCLFNBQUksR0FBSixJQUFJLENBQVk7UUFDaEIsdUJBQWtCLEdBQWxCLGtCQUFrQixDQUFzQjtRQUV4QyxnQkFBVyxHQUFYLFdBQVcsQ0FBZ0I7UUF2QmhEOztXQUVHO1FBQ2EsbUJBQWMsR0FBMkQsSUFBSSxDQUFDLElBQUk7YUFDN0YsR0FBRyxDQUE2QyxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsTUFBTSxpQkFBaUIsRUFBRTtZQUMxRixPQUFPLEVBQUUsSUFBSSxXQUFXLEVBQUUsQ0FBQyxHQUFHLENBQUMsMkJBQTJCLEVBQUUsS0FBSyxDQUFDLENBQUMsR0FBRyxDQUFDLHFCQUFxQixFQUFFLEtBQUssQ0FBQztZQUNwRyxPQUFPLEVBQUU7Z0JBQ0wsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLGFBQWEsQ0FBQyxFQUFFLElBQUksQ0FBQyxXQUFXLENBQUMsU0FBUzthQUMvRDtTQUNKLENBQUM7YUFDRCxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFjdkIsQ0FBQztJQUVKOzs7OztPQUtHO0lBQ0ksWUFBWSxDQUFDLFFBQXlCLEVBQUUsZUFBbUM7UUFDOUUsT0FBTyxJQUFJLENBQUMsSUFBSTthQUNYLElBQUksQ0FBWSxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsTUFBTSxhQUFhLFFBQVEsRUFBRSxFQUFFLGVBQWUsRUFBRTtZQUNqRixPQUFPLEVBQUUsSUFBSSxXQUFXLEVBQUUsQ0FBQyxHQUFHLENBQUMsMkJBQTJCLEVBQUUsS0FBSyxDQUFDLENBQUMsR0FBRyxDQUFDLHFCQUFxQixFQUFFLEtBQUssQ0FBQztZQUNwRyxPQUFPLEVBQUU7Z0JBQ0wsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLGFBQWEsQ0FBQyxFQUFFLElBQUksQ0FBQyxXQUFXLENBQUMsU0FBUzthQUMvRDtTQUNKLENBQUM7YUFDRCxJQUFJLENBQ0QsR0FBRyxDQUFDLEdBQUcsRUFBRTtZQUNMLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxvQkFBb0IsQ0FBQztnQkFDekMsTUFBTSxFQUFFLHNCQUFzQixDQUFDLFlBQVk7YUFDOUMsQ0FBQyxDQUFDO1FBQ1AsQ0FBQyxDQUFDLENBQ0wsQ0FBQztJQUNWLENBQUM7K0dBaERRLGlCQUFpQixnRkF1QmQsZUFBZTttSEF2QmxCLGlCQUFpQixjQUZkLE1BQU07OzRGQUVULGlCQUFpQjtrQkFIN0IsVUFBVTttQkFBQztvQkFDUixVQUFVLEVBQUUsTUFBTTtpQkFDckI7OzBCQXdCUSxNQUFNOzJCQUFDLGVBQWUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBIdHRwQ2xpZW50LCBIdHRwQ29udGV4dCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcbmltcG9ydCB7IEluamVjdCwgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgc2hhcmVSZXBsYXksIHRhcCB9IGZyb20gJ3J4anMnO1xuXG5pbXBvcnQgeyBTY0lGZWVkYmFja0FQSSB9IGZyb20gJy4uLy4uL2NvbmZpZyc7XG5pbXBvcnQgeyBTQ19BVVRIX0FERF9IRUFERVJfUkVRVUlSRUQgfSBmcm9tICcuLi8uLi9odHRwSW50ZXJjZXB0b3JzL3Rva2Vucy9zYy1hdXRoLWFkZC1oZWFkZXItcmVxdWlyZWQnO1xuaW1wb3J0IHsgU0NfSVNfSEVBREVSX1JFUVVJUkVEIH0gZnJvbSAnLi4vLi4vaHR0cEludGVyY2VwdG9ycy90b2tlbnMvc2MtaXMtaGVhZGVyLXJlcXVpcmVkJztcbmltcG9ydCB7IFNjSVJlZmVyZW5jZXNUeXBlcyB9IGZyb20gJy4uLy4uL3JlZmVyZW5jZXMvZHRvL3NjLWktcmVmZXJlbmNlcy10eXBlcyc7XG5pbXBvcnQgeyBTQ19GRUVEQkFDS19BUEkgfSBmcm9tICcuLi8uLi90b2tlbnMvc2MtZmVlZGJhY2stYXBpJztcbmltcG9ydCB7IFNjVXNlck1ldHJpa2FHb2Fsc0VudW0sIFNjVXNlck1ldHJpa2FTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vdXNlci1tZXRyaWthJztcbmltcG9ydCB7IFNjSUZlZWRiYWNrTWVzc2FnZSB9IGZyb20gJy4uL2R0byc7XG5pbXBvcnQgeyBTY0ZlZWRiYWNrRm9ybXMgfSBmcm9tICcuLi9lbnVtcy9zYy1mZWVkYmFjay1mb3Jtcyc7XG4vKipcbiAqINCh0LXRgNCy0LjRgSDQvtCx0YDQsNGC0L3QvtC5INGB0LLRj9C30LguXG4gKi9cbkBJbmplY3RhYmxlKHtcbiAgICBwcm92aWRlZEluOiAncm9vdCcsXG59KVxuZXhwb3J0IGNsYXNzIFNjRmVlZGJhY2tTZXJ2aWNlIHtcbiAgICAvKipcbiAgICAgKiDQodC/0LjRgdC+0Log0YTQvtGA0Lwg0L7QsdGA0LDRgtC90L7QuSDRgdCy0Y/Qt9C4LlxuICAgICAqL1xuICAgIHB1YmxpYyByZWFkb25seSBmZWVkYmFja0Zvcm1zJDogT2JzZXJ2YWJsZTxBcnJheTxTY0lSZWZlcmVuY2VzVHlwZXM8U2NGZWVkYmFja0Zvcm1zPj4+ID0gdGhpcy5odHRwXG4gICAgICAgIC5nZXQ8QXJyYXk8U2NJUmVmZXJlbmNlc1R5cGVzPFNjRmVlZGJhY2tGb3Jtcz4+PihgJHt0aGlzLmZlZWRiYWNrQXBpLmFwaVVybH0vZmVlZGJhY2svZm9ybXNgLCB7XG4gICAgICAgICAgICBjb250ZXh0OiBuZXcgSHR0cENvbnRleHQoKS5zZXQoU0NfQVVUSF9BRERfSEVBREVSX1JFUVVJUkVELCBmYWxzZSkuc2V0KFNDX0lTX0hFQURFUl9SRVFVSVJFRCwgZmFsc2UpLFxuICAgICAgICAgICAgaGVhZGVyczoge1xuICAgICAgICAgICAgICAgIFt0aGlzLmZlZWRiYWNrQXBpLmF1dGhUb2tlbk5hbWVdOiB0aGlzLmZlZWRiYWNrQXBpLmF1dGhUb2tlbixcbiAgICAgICAgICAgIH0sXG4gICAgICAgIH0pXG4gICAgICAgIC5waXBlKHNoYXJlUmVwbGF5KDEpKTtcblxuICAgIC8qKlxuICAgICAqINCY0L3QuNGG0LjQsNC70LjQt9C40YDRg9C10YIg0Y3QutC30LXQvNC/0LvRj9GAINC60LvQsNGB0YHQsCB7QGxpbmsgU2NGZWVkYmFja1NlcnZpY2V9LlxuICAgICAqXG4gICAgICogQHBhcmFtIGh0dHAgSFRUUC3QutC70LjQtdC90YIuXG4gICAgICogQHBhcmFtIHVzZXJNZXRyaWthU2VydmljZSDQodC10YDQstC40YEg0LTQu9GPINGB0LHQvtGA0LAg0LzQtdGC0YDQuNC6INC+INC00LXQudGB0YLQstC40Y/RhSDQv9C+0LvRjNC30L7QstCw0YLQtdC70LXQuS5cbiAgICAgKiBAcGFyYW0gZmVlZGJhY2tBcGkg0JTQsNC90L3Ri9C1INC00LvRjyDQstC30LDQuNC80L7QtNC10LnRgdGC0LLQuNGPINGBIEFQSSDQvtCx0YDQsNGC0L3QvtC5INGB0LLRj9C30LguXG4gICAgICovXG4gICAgcHVibGljIGNvbnN0cnVjdG9yKFxuICAgICAgICBwcml2YXRlIHJlYWRvbmx5IGh0dHA6IEh0dHBDbGllbnQsXG4gICAgICAgIHByaXZhdGUgcmVhZG9ubHkgdXNlck1ldHJpa2FTZXJ2aWNlOiBTY1VzZXJNZXRyaWthU2VydmljZSxcbiAgICAgICAgQEluamVjdChTQ19GRUVEQkFDS19BUEkpXG4gICAgICAgIHByaXZhdGUgcmVhZG9ubHkgZmVlZGJhY2tBcGk6IFNjSUZlZWRiYWNrQVBJXG4gICAgKSB7fVxuXG4gICAgLyoqXG4gICAgICog0J7RgtC/0YDQsNCy0LvRj9C10YIg0YHQvtC+0LHRidC10L3QuNC1INC+0LHRgNCw0YLQvdC+0Lkg0YHQstGP0LfQuC5cbiAgICAgKlxuICAgICAqIEBwYXJhbSBmb3JtU2x1ZyDQodC40LzQstC+0LvRjNC90L7QtSDQvtCx0L7Qt9C90LDRh9C10L3QuNC1IChzbHVnKSDRhNC+0YDQvNGLLlxuICAgICAqIEBwYXJhbSBmZWVkYmFja01lc3NhZ2Ug0J7QsdGK0LXQutGCINGB0L7QvtCx0YnQtdC90LjRjyDQvtCx0YDQsNGC0L3QvtC5INGB0LLRj9C30LguXG4gICAgICovXG4gICAgcHVibGljIHNlbmRGZWVkYmFjayhmb3JtU2x1ZzogU2NGZWVkYmFja0Zvcm1zLCBmZWVkYmFja01lc3NhZ2U6IFNjSUZlZWRiYWNrTWVzc2FnZSk6IE9ic2VydmFibGU8dW5kZWZpbmVkPiB7XG4gICAgICAgIHJldHVybiB0aGlzLmh0dHBcbiAgICAgICAgICAgIC5wb3N0PHVuZGVmaW5lZD4oYCR7dGhpcy5mZWVkYmFja0FwaS5hcGlVcmx9L2ZlZWRiYWNrLyR7Zm9ybVNsdWd9YCwgZmVlZGJhY2tNZXNzYWdlLCB7XG4gICAgICAgICAgICAgICAgY29udGV4dDogbmV3IEh0dHBDb250ZXh0KCkuc2V0KFNDX0FVVEhfQUREX0hFQURFUl9SRVFVSVJFRCwgZmFsc2UpLnNldChTQ19JU19IRUFERVJfUkVRVUlSRUQsIGZhbHNlKSxcbiAgICAgICAgICAgICAgICBoZWFkZXJzOiB7XG4gICAgICAgICAgICAgICAgICAgIFt0aGlzLmZlZWRiYWNrQXBpLmF1dGhUb2tlbk5hbWVdOiB0aGlzLmZlZWRiYWNrQXBpLmF1dGhUb2tlbixcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgfSlcbiAgICAgICAgICAgIC5waXBlKFxuICAgICAgICAgICAgICAgIHRhcCgoKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMudXNlck1ldHJpa2FTZXJ2aWNlLmVtaXRVc2VyTWV0cmlrYUV2ZW50KHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRhcmdldDogU2NVc2VyTWV0cmlrYUdvYWxzRW51bS5mZWVkYmFja1NlbnQsXG4gICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICApO1xuICAgIH1cbn1cbiJdfQ==
@@ -1,6 +1,7 @@
1
- import { Inject, Injectable } from '@angular/core';
1
+ import { Inject, inject, Injectable } from '@angular/core';
2
+ import { format, parse } from 'date-fns';
2
3
  import { filter, map, of, switchMap, tap } from 'rxjs';
3
- import { SC_UPDATE_INTERVAL, SC_URLS } from '../../tokens';
4
+ import { SC_DATE_FORMAT, SC_UPDATE_INTERVAL, SC_URLS } from '../../tokens';
4
5
  import { ScUserMetrikaGoalsEnum } from '../../user-metrika';
5
6
  import { ScDeliveryCost, ScOrder, ScOrderShort } from '../dto';
6
7
  import * as i0 from "@angular/core";
@@ -36,6 +37,10 @@ export class ScOrdersService {
36
37
  * Коллекция пар ключ-значение для заказов пользователя.
37
38
  */
38
39
  this.idOrderMap = new Map();
40
+ /**
41
+ * Формат дат.
42
+ */
43
+ this.dateFormats = inject(SC_DATE_FORMAT);
39
44
  authService
40
45
  .getAuthChange()
41
46
  .pipe(filter((state) => !state))
@@ -184,7 +189,10 @@ export class ScOrdersService {
184
189
  date: date,
185
190
  },
186
191
  })
187
- .pipe(map((ordersPaginateDTO) => new ScDeliveryCost(ordersPaginateDTO, date)));
192
+ .pipe(map((ordersPaginateDTO) => {
193
+ const formattedDate = format(parse(date, this.dateFormats.api, new Date()), this.dateFormats.uiDate);
194
+ return new ScDeliveryCost(ordersPaginateDTO, formattedDate);
195
+ }));
188
196
  }
189
197
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: ScOrdersService, deps: [{ token: i1.HttpClient }, { token: i2.ScAuthService }, { token: SC_URLS }, { token: SC_UPDATE_INTERVAL }, { token: i3.ScCartService }, { token: i4.ScUIService }, { token: i5.ScUserMetrikaService }], target: i0.ɵɵFactoryTarget.Injectable }); }
190
198
  static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: ScOrdersService, providedIn: 'root' }); }
@@ -201,4 +209,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.12", ngImpo
201
209
  type: Inject,
202
210
  args: [SC_UPDATE_INTERVAL]
203
211
  }] }, { type: i3.ScCartService }, { type: i4.ScUIService }, { type: i5.ScUserMetrikaService }] });
204
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2Mtb3JkZXJzLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL29yZGVyL3NlcnZpY2VzL3NjLW9yZGVycy5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUdBLE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ25ELE9BQU8sRUFBRSxNQUFNLEVBQUUsR0FBRyxFQUFjLEVBQUUsRUFBRSxTQUFTLEVBQUUsR0FBRyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBTW5FLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxPQUFPLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFFM0QsT0FBTyxFQUFFLHNCQUFzQixFQUF3QixNQUFNLG9CQUFvQixDQUFDO0FBQ2xGLE9BQU8sRUFBRSxjQUFjLEVBQXFDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxRQUFRLENBQUM7Ozs7Ozs7QUFHbEc7O0dBRUc7QUFJSCxNQUFNLE9BQU8sZUFBZTtJQU14Qjs7Ozs7Ozs7OztPQVVHO0lBQ0gsWUFDcUIsSUFBZ0IsRUFDaEIsV0FBMEIsRUFDVCxJQUFhLEVBQ0YsY0FBaUMsRUFDN0QsV0FBMEIsRUFDMUIsU0FBc0IsRUFDdEIsa0JBQXdDO1FBTnhDLFNBQUksR0FBSixJQUFJLENBQVk7UUFDaEIsZ0JBQVcsR0FBWCxXQUFXLENBQWU7UUFDVCxTQUFJLEdBQUosSUFBSSxDQUFTO1FBQ0YsbUJBQWMsR0FBZCxjQUFjLENBQW1CO1FBQzdELGdCQUFXLEdBQVgsV0FBVyxDQUFlO1FBQzFCLGNBQVMsR0FBVCxTQUFTLENBQWE7UUFDdEIsdUJBQWtCLEdBQWxCLGtCQUFrQixDQUFzQjtRQXZCN0Q7O1dBRUc7UUFDSyxlQUFVLEdBQXlCLElBQUksR0FBRyxFQUFtQixDQUFDO1FBc0JsRSxXQUFXO2FBQ04sYUFBYSxFQUFFO2FBQ2YsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLEtBQUss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LENBQUMsT0FBTyxDQUFDLENBQUMsQ0FDN0MsQ0FBQztJQUNOLENBQUM7SUFFRDs7Ozs7O09BTUc7SUFDSSxnQkFBZ0IsQ0FBQyxTQUFpQixFQUFFLFdBQW1CLEVBQUUsSUFBWTtRQUN4RSxPQUFPLElBQUksQ0FBQyxJQUFJO2FBQ1gsR0FBRyxDQUFxQixHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxvQkFBb0IsU0FBUyxPQUFPLEVBQUU7WUFDOUUsTUFBTSxFQUFFO2dCQUNKLFlBQVksRUFBRSxXQUFXO2dCQUN6QixJQUFJLEVBQUUsSUFBSTthQUNiO1NBQ0osQ0FBQzthQUNELElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxpQkFBaUIsRUFBRSxFQUFFLENBQUMsSUFBSSxjQUFjLENBQUMsaUJBQWlCLEVBQUUsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ3ZGLENBQUM7K0dBMU5RLGVBQWUseUVBb0JaLE9BQU8sYUFDUCxrQkFBa0I7bUhBckJyQixlQUFlLGNBRlosTUFBTTs7NEZBRVQsZUFBZTtrQkFIM0IsVUFBVTttQkFBQztvQkFDUixVQUFVLEVBQUUsTUFBTTtpQkFDckI7OzBCQXFCUSxNQUFNOzJCQUFDLE9BQU87OzBCQUNkLE1BQU07MkJBQUMsa0JBQWtCIiwic291cmNlc0NvbnRlbnQiOlsiLyogZXNsaW50LWRpc2FibGUgbm8tcGFyYW0tcmVhc3NpZ24gKi9cblxuaW1wb3J0IHsgSHR0cENsaWVudCwgSHR0cFBhcmFtcyB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcbmltcG9ydCB7IEluamVjdCwgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgZmlsdGVyLCBtYXAsIE9ic2VydmFibGUsIG9mLCBzd2l0Y2hNYXAsIHRhcCB9IGZyb20gJ3J4anMnO1xuXG5pbXBvcnQgeyBTY0F1dGhTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vYXV0aCc7XG5pbXBvcnQgeyBTY0NhcnQsIFNjQ2FydFNlcnZpY2UgfSBmcm9tICcuLi8uLi9jYXJ0JztcbmltcG9ydCB7IFNjSVVwZGF0ZUludGVydmFsLCBTY0lVcmxzIH0gZnJvbSAnLi4vLi4vY29uZmlnJztcbmltcG9ydCB7IFNjSVBhZ2luYXRlIH0gZnJvbSAnLi4vLi4vcGFnaW5hdGlvbic7XG5pbXBvcnQgeyBTQ19VUERBVEVfSU5URVJWQUwsIFNDX1VSTFMgfSBmcm9tICcuLi8uLi90b2tlbnMnO1xuaW1wb3J0IHsgU2NVSVNlcnZpY2UgfSBmcm9tICcuLi8uLi91aSc7XG5pbXBvcnQgeyBTY1VzZXJNZXRyaWthR29hbHNFbnVtLCBTY1VzZXJNZXRyaWthU2VydmljZSB9IGZyb20gJy4uLy4uL3VzZXItbWV0cmlrYSc7XG5pbXBvcnQgeyBTY0RlbGl2ZXJ5Q29zdCwgU2NJTmV3T3JkZXIsIFNjSU5ld09yZGVyRnJvbURyYWZ0LCBTY09yZGVyLCBTY09yZGVyU2hvcnQgfSBmcm9tICcuLi9kdG8nO1xuaW1wb3J0IHsgU2NJRGVsaXZlcnlDb3N0RFRPLCBTY0lPcmRlckRUTywgU2NJT3JkZXJTaG9ydERUTyB9IGZyb20gJy4uL2ludGVybmFsJztcblxuLyoqXG4gKiDQodC10YDQstC40YEg0LTQu9GPINGA0LDQsdC+0YLRiyDRgSDQt9Cw0LrQsNC30LDQvNC4LlxuICovXG5ASW5qZWN0YWJsZSh7XG4gICAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxufSlcbmV4cG9ydCBjbGFzcyBTY09yZGVyc1NlcnZpY2Uge1xuICAgIC8qKlxuICAgICAqINCa0L7Qu9C70LXQutGG0LjRjyDQv9Cw0YAg0LrQu9GO0Yct0LfQvdCw0YfQtdC90LjQtSDQtNC70Y8g0LfQsNC60LDQt9C+0LIg0L/QvtC70YzQt9C+0LLQsNGC0LXQu9GPLlxuICAgICAqL1xuICAgIHByaXZhdGUgaWRPcmRlck1hcDogTWFwPG51bWJlciwgU2NPcmRlcj4gPSBuZXcgTWFwPG51bWJlciwgU2NPcmRlcj4oKTtcblxuICAgIC8qKlxuICAgICAqINCY0L3QuNGG0LjQsNC70LjQt9C40YDRg9C10YIg0Y3QutC30LXQvNC/0LvRj9GAINC60LvQsNGB0YHQsCB7QGxpbmsgU2NPcmRlcnNTZXJ2aWNlfS5cbiAgICAgKlxuICAgICAqIEBwYXJhbSBodHRwINCh0LXRgNCy0LjRgSDQtNC70Y8g0LLRi9C/0L7Qu9C90LXQvdC40Y8gSFRUUC3Qt9Cw0L/RgNC+0YHQvtCyLlxuICAgICAqIEBwYXJhbSBhdXRoU2VydmljZSDQodC10YDQstC40YEg0LDRg9GC0LXQvdGC0LjRhNC40LrQsNGG0LjQuC5cbiAgICAgKiBAcGFyYW0gdXJscyDQodC/0LjRgdC+0Log0YHRgdGL0LvQvtC6INC90LAg0YDQsNC30LTQtdC70YsgYmFja2VuZC5cbiAgICAgKiBAcGFyYW0gdXBkYXRlSW50ZXJ2YWwg0JjQvdGC0LXRgNCy0LDQu9GLINC+0LHQvdC+0LLQu9C10L3QuNGPINC00LDQvdC90YvRhS5cbiAgICAgKiBAcGFyYW0gY2FydFNlcnZpY2Ug0KHQtdGA0LLQuNGBINC00LvRjyDRgNCw0LHQvtGC0Ysg0YEg0LrQvtGA0LfQuNC90L7QuS5cbiAgICAgKiBAcGFyYW0gdWlTZXJ2aWNlINCh0LXRgNCy0LjRgSDQtNC70Y8g0YDQsNCx0L7RgtGLINGBIFVJLlxuICAgICAqIEBwYXJhbSB1c2VyTWV0cmlrYVNlcnZpY2Ug0KHQtdGA0LLQuNGBINC00LvRjyDRgdCx0L7RgNCwINC80LXRgtGA0LjQuiDQviDQtNC10LnRgdGC0LLQuNGP0YUg0L/QvtC70YzQt9C+0LLQsNGC0LXQu9C10LkuXG4gICAgICovXG4gICAgcHVibGljIGNvbnN0cnVjdG9yKFxuICAgICAgICBwcml2YXRlIHJlYWRvbmx5IGh0dHA6IEh0dHBDbGllbnQsXG4gICAgICAgIHByaXZhdGUgcmVhZG9ubHkgYXV0aFNlcnZpY2U6IFNjQXV0aFNlcnZpY2UsXG4gICAgICAgIEBJbmplY3QoU0NfVVJMUykgcHJpdmF0ZSByZWFkb25seSB1cmxzOiBTY0lVcmxzLFxuICAgICAgICBASW5qZWN0KFNDX1VQREFURV9JTlRFUlZBTCkgcHJpdmF0ZSByZWFkb25seSB1cGRhdGVJbnRlcnZhbDogU2NJVXBkYXRlSW50ZXJ2YWwsXG4gICAgICAgIHByaXZhdGUgcmVhZG9ubHkgY2FydFNlcnZpY2U6IFNjQ2FydFNlcnZpY2UsXG4gICAgICAgIHByaXZhdGUgcmVhZG9ubHkgdWlTZXJ2aWNlOiBTY1VJU2VydmljZSxcbiAgICAgICAgcHJpdmF0ZSByZWFkb25seSB1c2VyTWV0cmlrYVNlcnZpY2U6IFNjVXNlck1ldHJpa2FTZXJ2aWNlXG4gICAgKSB7XG4gICAgICAgIGF1dGhTZXJ2aWNlXG4gICAgICAgICAgICAuZ2V0QXV0aENoYW5nZSgpXG4gICAgICAgICAgICAucGlwZShmaWx0ZXIoKHN0YXRlKSA9PiAhc3RhdGUpKVxuICAgICAgICAgICAgLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5pZE9yZGVyTWFwLmNsZWFyKCk7XG4gICAgICAgICAgICB9KTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiDQodC+0LfQtNCw0ZHRgiDQt9Cw0L/RgNC+0YEg0L3QvtCy0L7Qs9C+INC30LDQutCw0LfQsCDQv9C+INGD0LrQsNC30LDQvdC90L7QvNGDINC90LDQv9GA0LDQstC70LXQvdC40Y4g0L/RgNC+0LTQsNC2LlxuICAgICAqXG4gICAgICogQHBhcmFtIGRpcmVjdGlvbklkINCY0LTQtdC90YLQuNGE0LjQutCw0YLQvtGAINC90LDQv9GA0LDQstC70LXQvdC40Y8g0L/RgNC+0LTQsNC2LlxuICAgICAqIEBwYXJhbSBuZXdPcmRlciDQlNCw0L3QvdGL0LUg0L3QvtCy0L7Qs9C+INC30LDQutCw0LfQsC5cbiAgICAgKi9cbiAgICBwdWJsaWMgY3JlYXRlT3JkZXIkKGRpcmVjdGlvbklkOiBudW1iZXIsIG5ld09yZGVyOiBTY0lOZXdPcmRlcik6IE9ic2VydmFibGU8U2NPcmRlclNob3J0W10+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0PFNjSU9yZGVyU2hvcnREVE9bXT4oYCR7dGhpcy51cmxzLmFwaVVybH0vb3JkZXJzLyR7ZGlyZWN0aW9uSWR9YCwgbmV3T3JkZXIpLnBpcGUoXG4gICAgICAgICAgICBtYXAoKG9yZGVycykgPT4gb3JkZXJzLm1hcCgoaXRlbSkgPT4gbmV3IFNjT3JkZXJTaG9ydChpdGVtKSkpLFxuICAgICAgICAgICAgdGFwKChvcmRlcnM6IFNjT3JkZXJTaG9ydFtdKSA9PiB7XG4gICAgICAgICAgICAgICAgb3JkZXJzLmZvckVhY2goKG9yZGVyKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMudXNlck1ldHJpa2FTZXJ2aWNlLmVtaXRVc2VyTWV0cmlrYUV2ZW50KHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRhcmdldDogU2NVc2VyTWV0cmlrYUdvYWxzRW51bS5vcmRlckNyZWF0ZWQsXG4gICAgICAgICAgICAgICAgICAgICAgICBwYXJhbXM6IHsgb3JkZXJfaWQ6IG9yZGVyLmlkIH0sXG4gICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgfSksXG4gICAgICAgICAgICB0YXAoKCkgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMudWlTZXJ2aWNlLnJlbW92ZU5ld09yZGVyTWV0YWRhdGEoZGlyZWN0aW9uSWQpO1xuICAgICAgICAgICAgfSlcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiDQktC+0LfQstGA0LDRidCw0LXRgiDRgdC/0LjRgdC+0Log0LTQvtGB0YLRg9C/0L3Ri9GFINC00LDRgiDQtNC+0YHRgtCw0LLQutC4INC00LvRjyDRg9C60LDQt9Cw0L3QvdC+0LPQviDQsNC00YDQtdGB0LAuXG4gICAgICpcbiAgICAgKiBAcGFyYW0gYWRkcmVzc0lkINCY0LTQtdC90YLQuNGE0LjQutCw0YLQvtGAINCw0LTRgNC10YHQsCDQtNC+0YHRgtCw0LLQutC4INC60L7QvdGC0YDQsNCz0LXQvdGC0LAg0LrQu9C40LXQvdGC0LAuXG4gICAgICovXG4gICAgcHVibGljIGdldERlbGl2ZXJpZXNEYXRhJChhZGRyZXNzSWQ6IG51bWJlcik6IE9ic2VydmFibGU8c3RyaW5nW10+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQ8c3RyaW5nW10+KGAke3RoaXMudXJscy5hcGlVcmx9L29yZGVycy9kZWxpdmVyeS8ke2FkZHJlc3NJZH0vbmVhcmVzdC1kYXRlc2ApO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqINCS0L7Qt9Cy0YDQsNGJ0LDQtdGCINGB0L/QuNGB0L7QuiDQtNC+0YHRgtGD0L/QvdGL0YUg0LTQsNGCINGB0LDQvNC+0LLRi9Cy0L7Qt9CwINC00LvRjyDRg9C60LDQt9Cw0L3QvdC+0LPQviDRgdC60LvQsNC00LAuXG4gICAgICpcbiAgICAgKiBAcGFyYW0gd2FyZWhvdXNlSWQg0JjQtNC10L3RgtC40YTQuNC60LDRgtC+0YAg0YHQutC70LDQtNCwLlxuICAgICAqL1xuICAgIHB1YmxpYyBnZXRTZWxmRGVsaXZlcmllc0RhdGEkKHdhcmVob3VzZUlkOiBudW1iZXIpOiBPYnNlcnZhYmxlPHN0cmluZ1tdPiB7XG4gICAgICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0PHN0cmluZ1tdPihgJHt0aGlzLnVybHMuYXBpVXJsfS9vcmRlcnMvc2VsZi1kZWxpdmVyeS8ke3dhcmVob3VzZUlkfS9uZWFyZXN0LWRhdGVzYCk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICog0JLQvtC30LLRgNCw0YnQsNC10YIg0YHQv9C40YHQvtC6INC30LDQutCw0LfQvtCyINGBINC/0LDQs9C40L3QsNGG0LjQtdC5LlxuICAgICAqXG4gICAgICogQHBhcmFtIHBhcmFtcyDQn9Cw0YDQsNC80LXRgtGA0Ysg0LfQsNC/0YDQvtGB0LAg0L/QvtC70YPRh9C10L3QuNGPINC30LDQutCw0LfQvtCyLlxuICAgICAqL1xuICAgIHB1YmxpYyBnZXRPcmRlcnMkKHBhcmFtczogSHR0cFBhcmFtcyk6IE9ic2VydmFibGU8U2NJUGFnaW5hdGU8U2NPcmRlclNob3J0Pj4ge1xuICAgICAgICByZXR1cm4gdGhpcy5odHRwLmdldDxTY0lQYWdpbmF0ZTxTY0lPcmRlclNob3J0RFRPPj4oYCR7dGhpcy51cmxzLmFwaVVybH0vb3JkZXJzYCwgeyBwYXJhbXM6IHBhcmFtcyB9KS5waXBlKFxuICAgICAgICAgICAgbWFwKChvcmRlcnNQYWdpbmF0ZURUTykgPT4ge1xuICAgICAgICAgICAgICAgIG9yZGVyc1BhZ2luYXRlRFRPLmRhdGEgPSBvcmRlcnNQYWdpbmF0ZURUTy5kYXRhLm1hcCgoaXRlbSkgPT4gbmV3IFNjT3JkZXJTaG9ydChpdGVtKSk7XG5cbiAgICAgICAgICAgICAgICByZXR1cm4gb3JkZXJzUGFnaW5hdGVEVE8gYXMgU2NJUGFnaW5hdGU8U2NPcmRlclNob3J0PjtcbiAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgdGFwKChvcmRlcnNQYWdpbmF0ZSkgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMuaWRPcmRlck1hcC5mb3JFYWNoKChvcmRlcikgPT4ge1xuICAgICAgICAgICAgICAgICAgICBpZiAob3JkZXIuY2FjaGVkRGF0YUlzQWN0dWFsKHRoaXMudXBkYXRlSW50ZXJ2YWwub3JkZXJEYXRhKSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgZmluZE9yZGVyID0gb3JkZXJzUGFnaW5hdGUuZGF0YS5maW5kKChpdGVtKSA9PiBpdGVtLmlkID09PSBvcmRlci5pZCk7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChmaW5kT3JkZXIpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcmRlci51cGRhdGVEYXRhRnJvbVNob3J0T3JkZXIoZmluZE9yZGVyKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgfSlcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiDQktC+0LfQstGA0LDRidCw0LXRgiDQv9C+0LvQvdGD0Y4g0LjQvdGE0L7RgNC80LDRhtC40Y4g0L4g0LfQsNC60LDQt9C1LlxuICAgICAqXG4gICAgICogQHBhcmFtIG9yZGVySWQg0JjQtNC10L3RgtC40YTQuNC60LDRgtC+0YAg0LfQsNC60LDQt9CwLlxuICAgICAqIEBwYXJhbSBjYWNoZWFibGUg0J/RgNC40LfQvdCw0Log0LLQvtC30LzQvtC20L3QvtGB0YLQuCDQv9C+0LvRg9GH0LXQvdC40Y8g0LfQsNC60LDQt9CwINC40Lcg0LrRjdGI0LjRgNC+0LLQsNC90L3Ri9GFINC00LDQvdC90YvRhS5cbiAgICAgKi9cbiAgICBwdWJsaWMgZ2V0T3JkZXIkKG9yZGVySWQ6IG51bWJlciwgY2FjaGVhYmxlOiBib29sZWFuID0gdHJ1ZSk6IE9ic2VydmFibGU8U2NPcmRlcj4ge1xuICAgICAgICBjb25zdCBvcmRlck1hcCA9IHRoaXMuaWRPcmRlck1hcC5nZXQob3JkZXJJZCk7XG5cbiAgICAgICAgaWYgKGNhY2hlYWJsZSAmJiBvcmRlck1hcD8uY2FjaGVkRGF0YUlzQWN0dWFsKHRoaXMudXBkYXRlSW50ZXJ2YWwub3JkZXJEYXRhKSkge1xuICAgICAgICAgICAgcmV0dXJuIG9mKG9yZGVyTWFwKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0PFNjSU9yZGVyRFRPPihgJHt0aGlzLnVybHMuYXBpVXJsfS9vcmRlcnMvJHtvcmRlcklkfWApLnBpcGUoXG4gICAgICAgICAgICBtYXAoKG9yZGVyRFRPKSA9PiBuZXcgU2NPcmRlcihvcmRlckRUTykpLFxuICAgICAgICAgICAgc3dpdGNoTWFwKChvcmRlcikgPT5cbiAgICAgICAgICAgICAgICB0aGlzLmNhcnRTZXJ2aWNlLmdldENhcnRDaGFuZ2UkKCkucGlwZShcbiAgICAgICAgICAgICAgICAgICAgbWFwKChjYXJ0KSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBvcmRlci5wcm9kdWN0cz8ubWFwKChwcm9kdWN0KSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcHJvZHVjdC5wcm9kdWN0LmNhcnRJdGVtID0gY2FydC5pdGVtcy5maW5kKChpdGVtKSA9PiBpdGVtLnByb2R1Y3QuaWQgPT09IHByb2R1Y3QucHJvZHVjdC5pZCk7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gcHJvZHVjdDtcbiAgICAgICAgICAgICAgICAgICAgICAgIH0pO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gb3JkZXI7XG4gICAgICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgKSxcbiAgICAgICAgICAgIHRhcCgob3JkZXIpID0+IHRoaXMuaWRPcmRlck1hcC5zZXQob3JkZXIuaWQsIG9yZGVyKSlcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiDQmtC+0L/QuNGA0YPQtdGCINGC0L7QstCw0YDRiyDQt9Cw0LrQsNC30LAg0LIg0LrQvtGA0LfQuNC90YMg0YLQtdC60YPRidC10LPQviDQv9C+0LvRjNC30L7QstCw0YLQtdC70Y8uXG4gICAgICpcbiAgICAgKiBAcGFyYW0gb3JkZXJJZCDQmNC00LXQvdGC0LjRhNC40LrQsNGC0L7RgCDQt9Cw0LrQsNC30LAuXG4gICAgICovXG4gICAgcHVibGljIGNsb25lJChvcmRlcklkOiBudW1iZXIpOiBPYnNlcnZhYmxlPFNjQ2FydD4ge1xuICAgICAgICByZXR1cm4gdGhpcy5odHRwLnBhdGNoPHVuZGVmaW5lZD4oYCR7dGhpcy51cmxzLmFwaVVybH0vb3JkZXJzLyR7b3JkZXJJZH0vY2xvbmVgLCB7fSkucGlwZShcbiAgICAgICAgICAgIHRhcCgoKSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy51c2VyTWV0cmlrYVNlcnZpY2UuZW1pdFVzZXJNZXRyaWthRXZlbnQoe1xuICAgICAgICAgICAgICAgICAgICB0YXJnZXQ6IFNjVXNlck1ldHJpa2FHb2Fsc0VudW0ub3JkZXJDbG9uZWQsXG4gICAgICAgICAgICAgICAgICAgIHBhcmFtczogeyBvcmRlcl9pZDogb3JkZXJJZCB9LFxuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgfSksXG4gICAgICAgICAgICBzd2l0Y2hNYXAoKCkgPT4gdGhpcy5jYXJ0U2VydmljZS51cGRhdGVDYXJ0JCgpKVxuICAgICAgICApO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqINCe0YLQvNC10L3Rj9C10YIg0LfQsNC60LDQty5cbiAgICAgKlxuICAgICAqIEBwYXJhbSBvcmRlcklkINCY0LTQtdC90YLQuNGE0LjQutCw0YLQvtGAINC30LDQutCw0LfQsC5cbiAgICAgKi9cbiAgICBwdWJsaWMgY2FuY2VsJChvcmRlcklkOiBudW1iZXIpOiBPYnNlcnZhYmxlPHVuZGVmaW5lZD4ge1xuICAgICAgICByZXR1cm4gdGhpcy5odHRwLnBhdGNoPHVuZGVmaW5lZD4oYCR7dGhpcy51cmxzLmFwaVVybH0vb3JkZXJzLyR7b3JkZXJJZH0vY2FuY2VsYCwge30pLnBpcGUoXG4gICAgICAgICAgICB0YXAoKCkgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMudXNlck1ldHJpa2FTZXJ2aWNlLmVtaXRVc2VyTWV0cmlrYUV2ZW50KHtcbiAgICAgICAgICAgICAgICAgICAgdGFyZ2V0OiBTY1VzZXJNZXRyaWthR29hbHNFbnVtLm9yZGVyQ2FuY2VsbGVkLFxuICAgICAgICAgICAgICAgICAgICBwYXJhbXM6IHsgb3JkZXJfaWQ6IG9yZGVySWQgfSxcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH0pXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICog0KHQvtC30LTQsNGR0YIg0LfQsNC/0YDQvtGBINC90L7QstC+0LPQviDQt9Cw0LrQsNC30LAg0LjQtyDQt9Cw0LrQsNC30LAg0YfQtdGA0L3QvtCy0LjQutCwLlxuICAgICAqXG4gICAgICogQHBhcmFtIG9yZGVySWQg0JjQtNC10L3RgtC40YTQuNC60LDRgtC+0YAg0LfQsNC60LDQt9CwINGH0LXRgNC90L7QstC40LrQsC5cbiAgICAgKiBAcGFyYW0gbmV3T3JkZXIg0JTQsNC90L3Ri9C1INC90L7QstC+0LPQviDQt9Cw0LrQsNC30LAuXG4gICAgICovXG4gICAgcHVibGljIGNyZWF0ZU9yZGVyQnlEcmFmdCQob3JkZXJJZDogbnVtYmVyLCBuZXdPcmRlcjogU2NJTmV3T3JkZXJGcm9tRHJhZnQpOiBPYnNlcnZhYmxlPFNjT3JkZXJTaG9ydFtdPiB7XG4gICAgICAgIHJldHVybiB0aGlzLmh0dHAucG9zdDxTY0lPcmRlclNob3J0RFRPW10+KGAke3RoaXMudXJscy5hcGlVcmx9L29yZGVycy8ke29yZGVySWR9L2RyYWZ0YCwgbmV3T3JkZXIpLnBpcGUoXG4gICAgICAgICAgICBtYXAoKG9yZGVycykgPT4gb3JkZXJzLm1hcCgoaXRlbSkgPT4gbmV3IFNjT3JkZXJTaG9ydChpdGVtKSkpLFxuICAgICAgICAgICAgdGFwKCgpID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLnVzZXJNZXRyaWthU2VydmljZS5lbWl0VXNlck1ldHJpa2FFdmVudCh7XG4gICAgICAgICAgICAgICAgICAgIHRhcmdldDogU2NVc2VyTWV0cmlrYUdvYWxzRW51bS5vcmRlckNyZWF0ZWRGcm9tRHJhZnQsXG4gICAgICAgICAgICAgICAgICAgIHBhcmFtczogeyBvcmRlcl9pZDogb3JkZXJJZCB9LFxuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgfSksXG4gICAgICAgICAgICB0YXAoKCkgPT4gdGhpcy5pZE9yZGVyTWFwLmRlbGV0ZShvcmRlcklkKSlcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiDQodC+0LfQtNCw0ZHRgiDQt9Cw0L/RgNC+0YEg0L3QsCDRg9C00LDQu9C10L3QuNC1INC30LDQutCw0LfQsCDRh9C10YDQvdC+0LLQuNC60LAuXG4gICAgICpcbiAgICAgKiBAcGFyYW0gb3JkZXJJZCDQmNC00LXQvdGC0LjRhNC40LrQsNGC0L7RgCDQt9Cw0LrQsNC30LAg0YfQtdGA0L3QvtCy0LjQutCwLlxuICAgICAqL1xuICAgIHB1YmxpYyBkZWxldGVEcmFmdE9yZGVyJChvcmRlcklkOiBudW1iZXIpOiBPYnNlcnZhYmxlPHVuZGVmaW5lZD4ge1xuICAgICAgICByZXR1cm4gdGhpcy5odHRwLmRlbGV0ZTx1bmRlZmluZWQ+KGAke3RoaXMudXJscy5hcGlVcmx9L29yZGVycy8ke29yZGVySWR9L2RyYWZ0YCkucGlwZShcbiAgICAgICAgICAgIHRhcCgoKSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy51c2VyTWV0cmlrYVNlcnZpY2UuZW1pdFVzZXJNZXRyaWthRXZlbnQoe1xuICAgICAgICAgICAgICAgICAgICB0YXJnZXQ6IFNjVXNlck1ldHJpa2FHb2Fsc0VudW0ub3JkZXJEZWxldGVkLFxuICAgICAgICAgICAgICAgICAgICBwYXJhbXM6IHsgb3JkZXJfaWQ6IG9yZGVySWQsIGlzX2RyYWZ0OiB0cnVlIH0sXG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9KSxcbiAgICAgICAgICAgIHRhcCgoKSA9PiB0aGlzLmlkT3JkZXJNYXAuZGVsZXRlKG9yZGVySWQpKVxuICAgICAgICApO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqINCS0L7Qt9Cy0YDQsNGJ0LDQtdGCINC40L3RhNC+0YDQvNCw0YbQuNGOINC+INGB0YLQvtC40LzQvtGB0YLQuCDQtNC+0YHRgtCw0LLQutC4LlxuICAgICAqXG4gICAgICogQHBhcmFtIGFkZHJlc3NJZCDQmNC00LXQvdGC0LjRhNC40LrQsNGC0L7RgCDQsNC00YDQtdGB0LAg0LTQvtGB0YLQsNCy0LrQuCDQutC+0L3RgtGA0LDQs9C10L3RgtCwINC60LvQuNC10L3RgtCwLlxuICAgICAqIEBwYXJhbSB3YXJlaG91c2VJZCDQmNC00LXQvdGC0LjRhNC40LrQsNGC0L7RgCDRgdC60LvQsNC00LAuXG4gICAgICogQHBhcmFtIGRhdGUg0JTQsNGC0LAg0LTQvtGB0YLQsNCy0LrQuC5cbiAgICAgKi9cbiAgICBwdWJsaWMgZ2V0RGVsaXZlcnlDb3N0JChhZGRyZXNzSWQ6IG51bWJlciwgd2FyZWhvdXNlSWQ6IG51bWJlciwgZGF0ZTogc3RyaW5nKTogT2JzZXJ2YWJsZTxTY0RlbGl2ZXJ5Q29zdD4ge1xuICAgICAgICByZXR1cm4gdGhpcy5odHRwXG4gICAgICAgICAgICAuZ2V0PFNjSURlbGl2ZXJ5Q29zdERUTz4oYCR7dGhpcy51cmxzLmFwaVVybH0vb3JkZXJzL2RlbGl2ZXJ5LyR7YWRkcmVzc0lkfS9jb3N0YCwge1xuICAgICAgICAgICAgICAgIHBhcmFtczoge1xuICAgICAgICAgICAgICAgICAgICB3YXJlaG91c2VfaWQ6IHdhcmVob3VzZUlkLFxuICAgICAgICAgICAgICAgICAgICBkYXRlOiBkYXRlLFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9KVxuICAgICAgICAgICAgLnBpcGUobWFwKChvcmRlcnNQYWdpbmF0ZURUTykgPT4gbmV3IFNjRGVsaXZlcnlDb3N0KG9yZGVyc1BhZ2luYXRlRFRPLCBkYXRlKSkpO1xuICAgIH1cbn1cbiJdfQ==
212
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2Mtb3JkZXJzLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL29yZGVyL3NlcnZpY2VzL3NjLW9yZGVycy5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUdBLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzRCxPQUFPLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxNQUFNLFVBQVUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsTUFBTSxFQUFFLEdBQUcsRUFBYyxFQUFFLEVBQUUsU0FBUyxFQUFFLEdBQUcsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQU1uRSxPQUFPLEVBQUUsY0FBYyxFQUFFLGtCQUFrQixFQUFFLE9BQU8sRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUUzRSxPQUFPLEVBQUUsc0JBQXNCLEVBQXdCLE1BQU0sb0JBQW9CLENBQUM7QUFDbEYsT0FBTyxFQUFFLGNBQWMsRUFBcUMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLFFBQVEsQ0FBQzs7Ozs7OztBQUdsRzs7R0FFRztBQUlILE1BQU0sT0FBTyxlQUFlO0lBV3hCOzs7Ozs7Ozs7O09BVUc7SUFDSCxZQUNxQixJQUFnQixFQUNoQixXQUEwQixFQUNULElBQWEsRUFDRixjQUFpQyxFQUM3RCxXQUEwQixFQUMxQixTQUFzQixFQUN0QixrQkFBd0M7UUFOeEMsU0FBSSxHQUFKLElBQUksQ0FBWTtRQUNoQixnQkFBVyxHQUFYLFdBQVcsQ0FBZTtRQUNULFNBQUksR0FBSixJQUFJLENBQVM7UUFDRixtQkFBYyxHQUFkLGNBQWMsQ0FBbUI7UUFDN0QsZ0JBQVcsR0FBWCxXQUFXLENBQWU7UUFDMUIsY0FBUyxHQUFULFNBQVMsQ0FBYTtRQUN0Qix1QkFBa0IsR0FBbEIsa0JBQWtCLENBQXNCO1FBNUI3RDs7V0FFRztRQUNLLGVBQVUsR0FBeUIsSUFBSSxHQUFHLEVB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bXBvcnQgeyBIdHRwQ2xpZW50LCBIdHRwUGFyYW1zIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHsgSW5qZWN0LCBpbmplY3QsIEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IGZvcm1hdCwgcGFyc2UgfSBmcm9tICdkYXRlLWZucyc7XG5pbXBvcnQgeyBmaWx0ZXIsIG1hcCwgT2JzZXJ2YWJsZSwgb2YsIHN3aXRjaE1hcCwgdGFwIH0gZnJvbSAncnhqcyc7XG5cbmltcG9ydCB7IFNjQXV0aFNlcnZpY2UgfSBmcm9tICcuLi8uLi9hdXRoJztcbmltcG9ydCB7IFNjQ2FydCwgU2NDYXJ0U2VydmljZSB9IGZyb20gJy4uLy4uL2NhcnQnO1xuaW1wb3J0IHsgU2NJRGF0ZUZvcm1hdCwgU2NJVXBkYXRlSW50ZXJ2YWwsIFNjSVVybHMgfSBmcm9tICcuLi8uLi9jb25maWcnO1xuaW1wb3J0IHsgU2NJUGFnaW5hdGUgfSBmcm9tICcuLi8uLi9wYWdpbmF0aW9uJztcbmltcG9ydCB7IFNDX0RBVEVfRk9STUFULCBTQ19VUERBVEVfSU5URVJWQUwsIFNDX1VSTFMgfSBmcm9tICcuLi8uLi90b2tlbnMnO1xuaW1wb3J0IHsgU2NVSVNlcnZpY2UgfSBmcm9tICcuLi8uLi91aSc7XG5pbXBvcnQgeyBTY1VzZXJNZXRyaWthR29hbHNFbnVtLCBTY1VzZXJNZXRyaWthU2VydmljZSB9IGZyb20gJy4uLy4uL3VzZXItbWV0cmlrYSc7XG5pbXBvcnQgeyBTY0RlbGl2ZXJ5Q29zdCwgU2NJTmV3T3JkZXIsIFNjSU5ld09yZGVyRnJvbURyYWZ0LCBTY09yZGVyLCBTY09yZGVyU2hvcnQgfSBmcm9tICcuLi9kdG8nO1xuaW1wb3J0IHsgU2NJRGVsaXZlcnlDb3N0RFRPLCBTY0lPcmRlckRUTywgU2NJT3JkZXJTaG9ydERUTyB9IGZyb20gJy4uL2ludGVybmFsJztcblxuLyoqXG4gKiDQodC10YDQstC40YEg0LTQu9GPINGA0LDQsdC+0YLRiyDRgSDQt9Cw0LrQsNC30LDQvNC4LlxuICovXG5ASW5qZWN0YWJsZSh7XG4gICAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxufSlcbmV4cG9ydCBjbGFzcyBTY09yZGVyc1NlcnZpY2Uge1xuICAgIC8qKlxuICAgICAqINCa0L7Qu9C70LXQutGG0LjRjyDQv9Cw0YAg0LrQu9GO0Yct0LfQvdCw0YfQtdC90LjQtSDQtNC70Y8g0LfQsNC60LDQt9C+0LIg0L/QvtC70YzQt9C+0LLQsNGC0LXQu9GPLlxuICAgICAqL1xuICAgIHByaXZhdGUgaWRPcmRlck1hcDogTWFwPG51bWJlciwgU2NPcmRlcj4gPSBuZXcgTWFwPG51bWJlciwgU2NPcmRlcj4oKTtcblxuICAgIC8qKlxuICAgICAqINCk0L7RgNC80LDRgiDQtNCw0YIuXG4gICAgICovXG4gICAgcHJpdmF0ZSByZWFkb25seSBkYXRlRm9ybWF0czogU2NJRGF0ZUZvcm1hdCA9IGluamVjdChTQ19EQVRFX0ZPUk1BVCk7XG5cbiAgICAvKipcbiAgICAgKiDQmNC90LjRhtC40LDQu9C40LfQuNGA0YPQtdGCINGN0LrQt9C10LzQv9C70Y/RgCDQutC70LDRgdGB0LAge0BsaW5rIFNjT3JkZXJzU2VydmljZX0uXG4gICAgICpcbiAgICAgKiBAcGFyYW0gaHR0cCDQodC10YDQstC40YEg0LTQu9GPINCy0YvQv9C+0LvQvdC10L3QuNGPIEhUVFAt0LfQsNC/0YDQvtGB0L7Qsi5cbiAgICAgKiBAcGFyYW0gYXV0aFNlcnZpY2Ug0KHQtdGA0LLQuNGBINCw0YPRgtC10L3RgtC40YTQuNC60LDRhtC40LguXG4gICAgICogQHBhcmFtIHVybHMg0KHQv9C40YHQvtC6INGB0YHRi9C70L7QuiDQvdCwINGA0LDQt9C00LXQu9GLIGJhY2tlbmQuXG4gICAgICogQHBhcmFtIHVwZGF0ZUludGVydmFsINCY0L3RgtC10YDQstCw0LvRiyDQvtCx0L3QvtCy0LvQtdC90LjRjyDQtNCw0L3QvdGL0YUuXG4gICAgICogQHBhcmFtIGNhcnRTZXJ2aWNlINCh0LXRgNCy0LjRgSDQtNC70Y8g0YDQsNCx0L7RgtGLINGBINC60L7RgNC30LjQvdC+0LkuXG4gICAgICogQHBhcmFtIHVpU2VydmljZSDQodC10YDQstC40YEg0LTQu9GPINGA0LDQsdC+0YLRiyDRgSBVSS5cbiAgICAgKiBAcGFyYW0gdXNlck1ldHJpa2FTZXJ2aWNlINCh0LXRgNCy0LjRgSDQtNC70Y8g0YHQsdC+0YDQsCDQvNC10YLRgNC40Log0L4g0LTQtdC50YHRgtCy0LjRj9GFINC/0L7Qu9GM0LfQvtCy0LDRgtC10LvQtdC5LlxuICAgICAqL1xuICAgIHB1YmxpYyBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHJpdmF0ZSByZWFkb25seSBodHRwOiBIdHRwQ2xpZW50LFxuICAgICAgICBwcml2YXRlIHJlYWRvbmx5IGF1dGhTZXJ2aWNlOiBTY0F1dGhTZXJ2aWNlLFxuICAgICAgICBASW5qZWN0KFNDX1VSTFMpIHByaXZhdGUgcmVhZG9ubHkgdXJsczogU2NJVXJscyxcbiAgICAgICAgQEluamVjdChTQ19VUERBVEVfSU5URVJWQUwpIHByaXZhdGUgcmVhZG9ubHkgdXBkYXRlSW50ZXJ2YWw6IFNjSVVwZGF0ZUludGVydmFsLFxuICAgICAgICBwcml2YXRlIHJlYWRvbmx5IGNhcnRTZXJ2aWNlOiBTY0NhcnRTZXJ2aWNlLFxuICAgICAgICBwcml2YXRlIHJlYWRvbmx5IHVpU2VydmljZTogU2NVSVNlcnZpY2UsXG4gICAgICAgIHByaXZhdGUgcmVhZG9ubHkgdXNlck1ldHJpa2FTZXJ2aWNlOiBTY1VzZXJNZXRyaWthU2VydmljZVxuICAgICkge1xuICAgICAgICBhdXRoU2VydmljZVxuICAgICAgICAgICAgLmdldEF1dGhDaGFuZ2UoKVxuICAgICAgICAgICAgLnBpcGUoZmlsdGVyKChzdGF0ZSkgPT4gIXN0YXRlKSlcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMuaWRPcmRlck1hcC5jbGVhcigpO1xuICAgICAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICog0KHQvtC30LTQsNGR0YIg0LfQsNC/0YDQvtGBINC90L7QstC+0LPQviDQt9Cw0LrQsNC30LAg0L/QviDRg9C60LDQt9Cw0L3QvdC+0LzRgyDQvdCw0L/RgNCw0LLQu9C10L3QuNGOINC/0YDQvtC00LDQti5cbiAgICAgKlxuICAgICAqIEBwYXJhbSBkaXJlY3Rpb25JZCDQmNC00LXQvdGC0LjRhNC40LrQsNGC0L7RgCDQvdCw0L/RgNCw0LLQu9C10L3QuNGPINC/0YDQvtC00LDQti5cbiAgICAgKiBAcGFyYW0gbmV3T3JkZXIg0JTQsNC90L3Ri9C1INC90L7QstC+0LPQviDQt9Cw0LrQsNC30LAuXG4gICAgICovXG4gICAgcHVibGljIGNyZWF0ZU9yZGVyJChkaXJlY3Rpb25JZDogbnVtYmVyLCBuZXdPcmRlcjogU2NJTmV3T3JkZXIpOiBPYnNlcnZhYmxlPFNjT3JkZXJTaG9ydFtdPiB7XG4gICAgICAgIHJldHVybiB0aGlzLmh0dHAucG9zdDxTY0lPcmRlclNob3J0RFRPW10+KGAke3RoaXMudXJscy5hcGlVcmx9L29yZGVycy8ke2RpcmVjdGlvbklkfWAsIG5ld09yZGVyKS5waXBlKFxuICAgICAgICAgICAgbWFwKChvcmRlcnMpID0+IG9yZGVycy5tYXAoKGl0ZW0pID0+IG5ldyBTY09yZGVyU2hvcnQoaXRlbSkpKSxcbiAgICAgICAgICAgIHRhcCgob3JkZXJzOiBTY09yZGVyU2hvcnRbXSkgPT4ge1xuICAgICAgICAgICAgICAgIG9yZGVycy5mb3JFYWNoKChvcmRlcikgPT4ge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLnVzZXJNZXRyaWthU2VydmljZS5lbWl0VXNlck1ldHJpa2FFdmVudCh7XG4gICAgICAgICAgICAgICAgICAgICAgICB0YXJnZXQ6IFNjVXNlck1ldHJpa2FHb2Fsc0VudW0ub3JkZXJDcmVhdGVkLFxuICAgICAgICAgICAgICAgICAgICAgICAgcGFyYW1zOiB7IG9yZGVyX2lkOiBvcmRlci5pZCB9LFxuICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgdGFwKCgpID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLnVpU2VydmljZS5yZW1vdmVOZXdPcmRlck1ldGFkYXRhKGRpcmVjdGlvbklkKTtcbiAgICAgICAgICAgIH0pXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICog0JLQvtC30LLRgNCw0YnQsNC10YIg0YHQv9C40YHQvtC6INC00L7RgdGC0YPQv9C90YvRhSDQtNCw0YIg0LTQvtGB0YLQsNCy0LrQuCDQtNC70Y8g0YPQutCw0LfQsNC90L3QvtCz0L4g0LDQtNGA0LXRgdCwLlxuICAgICAqXG4gICAgICogQHBhcmFtIGFkZHJlc3NJZCDQmNC00LXQvdGC0LjRhNC40LrQsNGC0L7RgCDQsNC00YDQtdGB0LAg0LTQvtGB0YLQsNCy0LrQuCDQutC+0L3RgtGA0LDQs9C10L3RgtCwINC60LvQuNC10L3RgtCwLlxuICAgICAqL1xuICAgIHB1YmxpYyBnZXREZWxpdmVyaWVzRGF0YSQoYWRkcmVzc0lkOiBudW1iZXIpOiBPYnNlcnZhYmxlPHN0cmluZ1tdPiB7XG4gICAgICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0PHN0cmluZ1tdPihgJHt0aGlzLnVybHMuYXBpVXJsfS9vcmRlcnMvZGVsaXZlcnkvJHthZGRyZXNzSWR9L25lYXJlc3QtZGF0ZXNgKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiDQktC+0LfQstGA0LDRidCw0LXRgiDRgdC/0LjRgdC+0Log0LTQvtGB0YLRg9C/0L3Ri9GFINC00LDRgiDRgdCw0LzQvtCy0YvQstC+0LfQsCDQtNC70Y8g0YPQutCw0LfQsNC90L3QvtCz0L4g0YHQutC70LDQtNCwLlxuICAgICAqXG4gICAgICogQHBhcmFtIHdhcmVob3VzZUlkINCY0LTQtdC90YLQuNGE0LjQutCw0YLQvtGAINGB0LrQu9Cw0LTQsC5cbiAgICAgKi9cbiAgICBwdWJsaWMgZ2V0U2VsZkRlbGl2ZXJpZXNEYXRhJCh3YXJlaG91c2VJZDogbnVtYmVyKTogT2JzZXJ2YWJsZTxzdHJpbmdbXT4ge1xuICAgICAgICByZXR1cm4gdGhpcy5odHRwLmdldDxzdHJpbmdbXT4oYCR7dGhpcy51cmxzLmFwaVVybH0vb3JkZXJzL3NlbGYtZGVsaXZlcnkvJHt3YXJlaG91c2VJZH0vbmVhcmVzdC1kYXRlc2ApO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqINCS0L7Qt9Cy0YDQsNGJ0LDQtdGCINGB0L/QuNGB0L7QuiDQt9Cw0LrQsNC30L7QsiDRgSDQv9Cw0LPQuNC90LDRhtC40LXQuS5cbiAgICAgKlxuICAgICAqIEBwYXJhbSBwYXJhbXMg0J/QsNGA0LDQvNC10YLRgNGLINC30LDQv9GA0L7RgdCwINC/0L7Qu9GD0YfQtdC90LjRjyDQt9Cw0LrQsNC30L7Qsi5cbiAgICAgKi9cbiAgICBwdWJsaWMgZ2V0T3JkZXJzJChwYXJhbXM6IEh0dHBQYXJhbXMpOiBPYnNlcnZhYmxlPFNjSVBhZ2luYXRlPFNjT3JkZXJTaG9ydD4+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQ8U2NJUGFnaW5hdGU8U2NJT3JkZXJTaG9ydERUTz4+KGAke3RoaXMudXJscy5hcGlVcmx9L29yZGVyc2AsIHsgcGFyYW1zOiBwYXJhbXMgfSkucGlwZShcbiAgICAgICAgICAgIG1hcCgob3JkZXJzUGFnaW5hdGVEVE8pID0+IHtcbiAgICAgICAgICAgICAgICBvcmRlcnNQYWdpbmF0ZURUTy5kYXRhID0gb3JkZXJzUGFnaW5hdGVEVE8uZGF0YS5tYXAoKGl0ZW0pID0+IG5ldyBTY09yZGVyU2hvcnQoaXRlbSkpO1xuXG4gICAgICAgICAgICAgICAgcmV0dXJuIG9yZGVyc1BhZ2luYXRlRFRPIGFzIFNjSVBhZ2luYXRlPFNjT3JkZXJTaG9ydD47XG4gICAgICAgICAgICB9KSxcbiAgICAgICAgICAgIHRhcCgob3JkZXJzUGFnaW5hdGUpID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLmlkT3JkZXJNYXAuZm9yRWFjaCgob3JkZXIpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgaWYgKG9yZGVyLmNhY2hlZERhdGFJc0FjdHVhbCh0aGlzLnVwZGF0ZUludGVydmFsLm9yZGVyRGF0YSkpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGZpbmRPcmRlciA9IG9yZGVyc1BhZ2luYXRlLmRhdGEuZmluZCgoaXRlbSkgPT4gaXRlbS5pZCA9PT0gb3JkZXIuaWQpO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAoZmluZE9yZGVyKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgb3JkZXIudXBkYXRlRGF0YUZyb21TaG9ydE9yZGVyKGZpbmRPcmRlcik7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH0pXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICog0JLQvtC30LLRgNCw0YnQsNC10YIg0L/QvtC70L3Rg9GOINC40L3RhNC+0YDQvNCw0YbQuNGOINC+INC30LDQutCw0LfQtS5cbiAgICAgKlxuICAgICAqIEBwYXJhbSBvcmRlcklkINCY0LTQtdC90YLQuNGE0LjQutCw0YLQvtGAINC30LDQutCw0LfQsC5cbiAgICAgKiBAcGFyYW0gY2FjaGVhYmxlINCf0YDQuNC30L3QsNC6INCy0L7Qt9C80L7QttC90L7RgdGC0Lgg0L/QvtC70YPRh9C10L3QuNGPINC30LDQutCw0LfQsCDQuNC3INC60Y3RiNC40YDQvtCy0LDQvdC90YvRhSDQtNCw0L3QvdGL0YUuXG4gICAgICovXG4gICAgcHVibGljIGdldE9yZGVyJChvcmRlcklkOiBudW1iZXIsIGNhY2hlYWJsZTogYm9vbGVhbiA9IHRydWUpOiBPYnNlcnZhYmxlPFNjT3JkZXI+IHtcbiAgICAgICAgY29uc3Qgb3JkZXJNYXAgPSB0aGlzLmlkT3JkZXJNYXAuZ2V0KG9yZGVySWQpO1xuXG4gICAgICAgIGlmIChjYWNoZWFibGUgJiYgb3JkZXJNYXA/LmNhY2hlZERhdGFJc0FjdHVhbCh0aGlzLnVwZGF0ZUludGVydmFsLm9yZGVyRGF0YSkpIHtcbiAgICAgICAgICAgIHJldHVybiBvZihvcmRlck1hcCk7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gdGhpcy5odHRwLmdldDxTY0lPcmRlckRUTz4oYCR7dGhpcy51cmxzLmFwaVVybH0vb3JkZXJzLyR7b3JkZXJJZH1gKS5waXBlKFxuICAgICAgICAgICAgbWFwKChvcmRlckRUTykgPT4gbmV3IFNjT3JkZXIob3JkZXJEVE8pKSxcbiAgICAgICAgICAgIHN3aXRjaE1hcCgob3JkZXIpID0+XG4gICAgICAgICAgICAgICAgdGhpcy5jYXJ0U2VydmljZS5nZXRDYXJ0Q2hhbmdlJCgpLnBpcGUoXG4gICAgICAgICAgICAgICAgICAgIG1hcCgoY2FydCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgb3JkZXIucHJvZHVjdHM/Lm1hcCgocHJvZHVjdCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHByb2R1Y3QucHJvZHVjdC5jYXJ0SXRlbSA9IGNhcnQuaXRlbXMuZmluZCgoaXRlbSkgPT4gaXRlbS5wcm9kdWN0LmlkID09PSBwcm9kdWN0LnByb2R1Y3QuaWQpO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHByb2R1Y3Q7XG4gICAgICAgICAgICAgICAgICAgICAgICB9KTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIG9yZGVyO1xuICAgICAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICksXG4gICAgICAgICAgICB0YXAoKG9yZGVyKSA9PiB0aGlzLmlkT3JkZXJNYXAuc2V0KG9yZGVyLmlkLCBvcmRlcikpXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICog0JrQvtC/0LjRgNGD0LXRgiDRgtC+0LLQsNGA0Ysg0LfQsNC60LDQt9CwINCyINC60L7RgNC30LjQvdGDINGC0LXQutGD0YnQtdCz0L4g0L/QvtC70YzQt9C+0LLQsNGC0LXQu9GPLlxuICAgICAqXG4gICAgICogQHBhcmFtIG9yZGVySWQg0JjQtNC10L3RgtC40YTQuNC60LDRgtC+0YAg0LfQsNC60LDQt9CwLlxuICAgICAqL1xuICAgIHB1YmxpYyBjbG9uZSQob3JkZXJJZDogbnVtYmVyKTogT2JzZXJ2YWJsZTxTY0NhcnQ+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuaHR0cC5wYXRjaDx1bmRlZmluZWQ+KGAke3RoaXMudXJscy5hcGlVcmx9L29yZGVycy8ke29yZGVySWR9L2Nsb25lYCwge30pLnBpcGUoXG4gICAgICAgICAgICB0YXAoKCkgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMudXNlck1ldHJpa2FTZXJ2aWNlLmVtaXRVc2VyTWV0cmlrYUV2ZW50KHtcbiAgICAgICAgICAgICAgICAgICAgdGFyZ2V0OiBTY1VzZXJNZXRyaWthR29hbHNFbnVtLm9yZGVyQ2xvbmVkLFxuICAgICAgICAgICAgICAgICAgICBwYXJhbXM6IHsgb3JkZXJfaWQ6IG9yZGVySWQgfSxcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgc3dpdGNoTWFwKCgpID0+IHRoaXMuY2FydFNlcnZpY2UudXBkYXRlQ2FydCQoKSlcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiDQntGC0LzQtdC90Y/QtdGCINC30LDQutCw0LcuXG4gICAgICpcbiAgICAgKiBAcGFyYW0gb3JkZXJJZCDQmNC00LXQvdGC0LjRhNC40LrQsNGC0L7RgCDQt9Cw0LrQsNC30LAuXG4gICAgICovXG4gICAgcHVibGljIGNhbmNlbCQob3JkZXJJZDogbnVtYmVyKTogT2JzZXJ2YWJsZTx1bmRlZmluZWQ+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuaHR0cC5wYXRjaDx1bmRlZmluZWQ+KGAke3RoaXMudXJscy5hcGlVcmx9L29yZGVycy8ke29yZGVySWR9L2NhbmNlbGAsIHt9KS5waXBlKFxuICAgICAgICAgICAgdGFwKCgpID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLnVzZXJNZXRyaWthU2VydmljZS5lbWl0VXNlck1ldHJpa2FFdmVudCh7XG4gICAgICAgICAgICAgICAgICAgIHRhcmdldDogU2NVc2VyTWV0cmlrYUdvYWxzRW51bS5vcmRlckNhbmNlbGxlZCxcbiAgICAgICAgICAgICAgICAgICAgcGFyYW1zOiB7IG9yZGVyX2lkOiBvcmRlcklkIH0sXG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9KVxuICAgICAgICApO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqINCh0L7Qt9C00LDRkdGCINC30LDQv9GA0L7RgSDQvdC+0LLQvtCz0L4g0LfQsNC60LDQt9CwINC40Lcg0LfQsNC60LDQt9CwINGH0LXRgNC90L7QstC40LrQsC5cbiAgICAgKlxuICAgICAqIEBwYXJhbSBvcmRlcklkINCY0LTQtdC90YLQuNGE0LjQutCw0YLQvtGAINC30LDQutCw0LfQsCDRh9C10YDQvdC+0LLQuNC60LAuXG4gICAgICogQHBhcmFtIG5ld09yZGVyINCU0LDQvdC90YvQtSDQvdC+0LLQvtCz0L4g0LfQsNC60LDQt9CwLlxuICAgICAqL1xuICAgIHB1YmxpYyBjcmVhdGVPcmRlckJ5RHJhZnQkKG9yZGVySWQ6IG51bWJlciwgbmV3T3JkZXI6IFNjSU5ld09yZGVyRnJvbURyYWZ0KTogT2JzZXJ2YWJsZTxTY09yZGVyU2hvcnRbXT4ge1xuICAgICAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Q8U2NJT3JkZXJTaG9ydERUT1tdPihgJHt0aGlzLnVybHMuYXBpVXJsfS9vcmRlcnMvJHtvcmRlcklkfS9kcmFmdGAsIG5ld09yZGVyKS5waXBlKFxuICAgICAgICAgICAgbWFwKChvcmRlcnMpID0+IG9yZGVycy5tYXAoKGl0ZW0pID0+IG5ldyBTY09yZGVyU2hvcnQoaXRlbSkpKSxcbiAgICAgICAgICAgIHRhcCgoKSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy51c2VyTWV0cmlrYVNlcnZpY2UuZW1pdFVzZXJNZXRyaWthRXZlbnQoe1xuICAgICAgICAgICAgICAgICAgICB0YXJnZXQ6IFNjVXNlck1ldHJpa2FHb2Fsc0VudW0ub3JkZXJDcmVhdGVkRnJvbURyYWZ0LFxuICAgICAgICAgICAgICAgICAgICBwYXJhbXM6IHsgb3JkZXJfaWQ6IG9yZGVySWQgfSxcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgdGFwKCgpID0+IHRoaXMuaWRPcmRlck1hcC5kZWxldGUob3JkZXJJZCkpXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICog0KHQvtC30LTQsNGR0YIg0LfQsNC/0YDQvtGBINC90LAg0YPQtNCw0LvQtdC90LjQtSDQt9Cw0LrQsNC30LAg0YfQtdGA0L3QvtCy0LjQutCwLlxuICAgICAqXG4gICAgICogQHBhcmFtIG9yZGVySWQg0JjQtNC10L3RgtC40YTQuNC60LDRgtC+0YAg0LfQsNC60LDQt9CwINGH0LXRgNC90L7QstC40LrQsC5cbiAgICAgKi9cbiAgICBwdWJsaWMgZGVsZXRlRHJhZnRPcmRlciQob3JkZXJJZDogbnVtYmVyKTogT2JzZXJ2YWJsZTx1bmRlZmluZWQ+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuaHR0cC5kZWxldGU8dW5kZWZpbmVkPihgJHt0aGlzLnVybHMuYXBpVXJsfS9vcmRlcnMvJHtvcmRlcklkfS9kcmFmdGApLnBpcGUoXG4gICAgICAgICAgICB0YXAoKCkgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMudXNlck1ldHJpa2FTZXJ2aWNlLmVtaXRVc2VyTWV0cmlrYUV2ZW50KHtcbiAgICAgICAgICAgICAgICAgICAgdGFyZ2V0OiBTY1VzZXJNZXRyaWthR29hbHNFbnVtLm9yZGVyRGVsZXRlZCxcbiAgICAgICAgICAgICAgICAgICAgcGFyYW1zOiB7IG9yZGVyX2lkOiBvcmRlcklkLCBpc19kcmFmdDogdHJ1ZSB9LFxuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgfSksXG4gICAgICAgICAgICB0YXAoKCkgPT4gdGhpcy5pZE9yZGVyTWFwLmRlbGV0ZShvcmRlcklkKSlcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiDQktC+0LfQstGA0LDRidCw0LXRgiDQuNC90YTQvtGA0LzQsNGG0LjRjiDQviDRgdGC0L7QuNC80L7RgdGC0Lgg0LTQvtGB0YLQsNCy0LrQuC5cbiAgICAgKlxuICAgICAqIEBwYXJhbSBhZGRyZXNzSWQg0JjQtNC10L3RgtC40YTQuNC60LDRgtC+0YAg0LDQtNGA0LXRgdCwINC00L7RgdGC0LDQstC60Lgg0LrQvtC90YLRgNCw0LPQtdC90YLQsCDQutC70LjQtdC90YLQsC5cbiAgICAgKiBAcGFyYW0gd2FyZWhvdXNlSWQg0JjQtNC10L3RgtC40YTQuNC60LDRgtC+0YAg0YHQutC70LDQtNCwLlxuICAgICAqIEBwYXJhbSBkYXRlINCU0LDRgtCwINC00L7RgdGC0LDQstC60LguXG4gICAgICovXG4gICAgcHVibGljIGdldERlbGl2ZXJ5Q29zdCQoYWRkcmVzc0lkOiBudW1iZXIsIHdhcmVob3VzZUlkOiBudW1iZXIsIGRhdGU6IHN0cmluZyk6IE9ic2VydmFibGU8U2NEZWxpdmVyeUNvc3Q+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuaHR0cFxuICAgICAgICAgICAgLmdldDxTY0lEZWxpdmVyeUNvc3REVE8+KGAke3RoaXMudXJscy5hcGlVcmx9L29yZGVycy9kZWxpdmVyeS8ke2FkZHJlc3NJZH0vY29zdGAsIHtcbiAgICAgICAgICAgICAgICBwYXJhbXM6IHtcbiAgICAgICAgICAgICAgICAgICAgd2FyZWhvdXNlX2lkOiB3YXJlaG91c2VJZCxcbiAgICAgICAgICAgICAgICAgICAgZGF0ZTogZGF0ZSxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgfSlcbiAgICAgICAgICAgIC5waXBlKFxuICAgICAgICAgICAgICAgIG1hcCgob3JkZXJzUGFnaW5hdGVEVE8pID0+IHtcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgZm9ybWF0dGVkRGF0ZSA9IGZvcm1hdChwYXJzZShkYXRlLCB0aGlzLmRhdGVGb3JtYXRzLmFwaSwgbmV3IERhdGUoKSksIHRoaXMuZGF0ZUZvcm1hdHMudWlEYXRlKTtcblxuICAgICAgICAgICAgICAgICAgICByZXR1cm4gbmV3IFNjRGVsaXZlcnlDb3N0KG9yZGVyc1BhZ2luYXRlRFRPLCBmb3JtYXR0ZWREYXRlKTtcbiAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgKTtcbiAgICB9XG59XG4iXX0=
@@ -12,4 +12,5 @@ export * from './sc-release';
12
12
  export * from './sc-update-interval';
13
13
  export * from './sc-urls';
14
14
  export * from './sc-feedback-api';
15
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL3Rva2Vucy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLHdCQUF3QixDQUFDO0FBQ3ZDLGNBQWMsZUFBZSxDQUFDO0FBQzlCLGNBQWMscUJBQXFCLENBQUM7QUFDcEMsY0FBYyxtQkFBbUIsQ0FBQztBQUNsQyxjQUFjLDhCQUE4QixDQUFDO0FBQzdDLGNBQWMsNEJBQTRCLENBQUM7QUFDM0MsY0FBYyx3QkFBd0IsQ0FBQztBQUN2QyxjQUFjLDRCQUE0QixDQUFDO0FBQzNDLGNBQWMsMEJBQTBCLENBQUM7QUFDekMsY0FBYywyQkFBMkIsQ0FBQztBQUMxQyxjQUFjLGNBQWMsQ0FBQztBQUM3QixjQUFjLHNCQUFzQixDQUFDO0FBQ3JDLGNBQWMsV0FBVyxDQUFDO0FBQzFCLGNBQWMsbUJBQW1CLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL25vdGlmaWNhdGlvbi1vcHRpb25zJztcbmV4cG9ydCAqIGZyb20gJy4vc2MtYXBpLWtleXMnO1xuZXhwb3J0ICogZnJvbSAnLi9zYy1jYWNoZS1saWZldGltZSc7XG5leHBvcnQgKiBmcm9tICcuL3NjLWNvbXBhbnktbmFtZSc7XG5leHBvcnQgKiBmcm9tICcuL3NjLWNvbmZpZ3VyYXRvci1jb21wb25lbnRzJztcbmV4cG9ydCAqIGZyb20gJy4vc2MtY29uZmlndXJhdG9yLXNldHRpbmdzJztcbmV4cG9ydCAqIGZyb20gJy4vc2MtZGVmYXVsdC1wYWdlLW1ldGEnO1xuZXhwb3J0ICogZnJvbSAnLi9zYy1pcy1oaWRkZW4tZXJyb3ItYWxlcnQnO1xuZXhwb3J0ICogZnJvbSAnLi9zYy1saW5lYXItdmFsdWVzLXRva2VuJztcbmV4cG9ydCAqIGZyb20gJy4vc2MtcGF0aC1pbWFnZS1ub3QtZm91bmQnO1xuZXhwb3J0ICogZnJvbSAnLi9zYy1yZWxlYXNlJztcbmV4cG9ydCAqIGZyb20gJy4vc2MtdXBkYXRlLWludGVydmFsJztcbmV4cG9ydCAqIGZyb20gJy4vc2MtdXJscyc7XG5leHBvcnQgKiBmcm9tICcuL3NjLWZlZWRiYWNrLWFwaSc7XG4iXX0=
15
+ export * from './sc-date-format';
16
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL3Rva2Vucy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLHdCQUF3QixDQUFDO0FBQ3ZDLGNBQWMsZUFBZSxDQUFDO0FBQzlCLGNBQWMscUJBQXFCLENBQUM7QUFDcEMsY0FBYyxtQkFBbUIsQ0FBQztBQUNsQyxjQUFjLDhCQUE4QixDQUFDO0FBQzdDLGNBQWMsNEJBQTRCLENBQUM7QUFDM0MsY0FBYyx3QkFBd0IsQ0FBQztBQUN2QyxjQUFjLDRCQUE0QixDQUFDO0FBQzNDLGNBQWMsMEJBQTBCLENBQUM7QUFDekMsY0FBYywyQkFBMkIsQ0FBQztBQUMxQyxjQUFjLGNBQWMsQ0FBQztBQUM3QixjQUFjLHNCQUFzQixDQUFDO0FBQ3JDLGNBQWMsV0FBVyxDQUFDO0FBQzFCLGNBQWMsbUJBQW1CLENBQUM7QUFDbEMsY0FBYyxrQkFBa0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vbm90aWZpY2F0aW9uLW9wdGlvbnMnO1xuZXhwb3J0ICogZnJvbSAnLi9zYy1hcGkta2V5cyc7XG5leHBvcnQgKiBmcm9tICcuL3NjLWNhY2hlLWxpZmV0aW1lJztcbmV4cG9ydCAqIGZyb20gJy4vc2MtY29tcGFueS1uYW1lJztcbmV4cG9ydCAqIGZyb20gJy4vc2MtY29uZmlndXJhdG9yLWNvbXBvbmVudHMnO1xuZXhwb3J0ICogZnJvbSAnLi9zYy1jb25maWd1cmF0b3Itc2V0dGluZ3MnO1xuZXhwb3J0ICogZnJvbSAnLi9zYy1kZWZhdWx0LXBhZ2UtbWV0YSc7XG5leHBvcnQgKiBmcm9tICcuL3NjLWlzLWhpZGRlbi1lcnJvci1hbGVydCc7XG5leHBvcnQgKiBmcm9tICcuL3NjLWxpbmVhci12YWx1ZXMtdG9rZW4nO1xuZXhwb3J0ICogZnJvbSAnLi9zYy1wYXRoLWltYWdlLW5vdC1mb3VuZCc7XG5leHBvcnQgKiBmcm9tICcuL3NjLXJlbGVhc2UnO1xuZXhwb3J0ICogZnJvbSAnLi9zYy11cGRhdGUtaW50ZXJ2YWwnO1xuZXhwb3J0ICogZnJvbSAnLi9zYy11cmxzJztcbmV4cG9ydCAqIGZyb20gJy4vc2MtZmVlZGJhY2stYXBpJztcbmV4cG9ydCAqIGZyb20gJy4vc2MtZGF0ZS1mb3JtYXQnO1xuIl19
@@ -0,0 +1,6 @@
1
+ import { tuiCreateToken } from '@taiga-ui/cdk';
2
+ /**
3
+ * Токен внедрения формата дат.
4
+ */
5
+ export const SC_DATE_FORMAT = tuiCreateToken();
6
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2MtZGF0ZS1mb3JtYXQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL3Rva2Vucy9zYy1kYXRlLWZvcm1hdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBSS9DOztHQUVHO0FBQ0gsTUFBTSxDQUFDLE1BQU0sY0FBYyxHQUFrQyxjQUFjLEVBQWlCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3Rpb25Ub2tlbiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgdHVpQ3JlYXRlVG9rZW4gfSBmcm9tICdAdGFpZ2EtdWkvY2RrJztcblxuaW1wb3J0IHsgU2NJRGF0ZUZvcm1hdCB9IGZyb20gJy4uL2NvbmZpZy9zYy1pLWRhdGUtZm9ybWF0JztcblxuLyoqXG4gKiDQotC+0LrQtdC9INCy0L3QtdC00YDQtdC90LjRjyDRhNC+0YDQvNCw0YLQsCDQtNCw0YIuXG4gKi9cbmV4cG9ydCBjb25zdCBTQ19EQVRFX0ZPUk1BVDogSW5qZWN0aW9uVG9rZW48U2NJRGF0ZUZvcm1hdD4gPSB0dWlDcmVhdGVUb2tlbjxTY0lEYXRlRm9ybWF0PigpO1xuIl19
@@ -15,6 +15,7 @@ import { ActivatedRoute, Router, NavigationEnd } from '@angular/router';
15
15
  import { takeUntilDestroyed } from '@angular/core/rxjs-interop';
16
16
  import { objectToSnake, objectToCamel, toSnake } from 'ts-case-convert';
17
17
  import { isString, isMatch } from 'lodash-es';
18
+ import { format, parse } from 'date-fns';
18
19
  import * as i1$2 from '@angular/platform-browser';
19
20
  import { Meta, Title } from '@angular/platform-browser';
20
21
 
@@ -302,6 +303,11 @@ const SC_URLS = new InjectionToken('IUrls');
302
303
  */
303
304
  const SC_FEEDBACK_API = tuiCreateToken();
304
305
 
306
+ /**
307
+ * Токен внедрения формата дат.
308
+ */
309
+ const SC_DATE_FORMAT = tuiCreateToken();
310
+
305
311
  /**
306
312
  * Перечисление названий целей метрики используемых для отслеживания действий пользователей.
307
313
  */
@@ -3648,7 +3654,7 @@ class ScFeedbackService {
3648
3654
  .get(`${this.feedbackApi.apiUrl}/feedback/forms`, {
3649
3655
  context: new HttpContext().set(SC_AUTH_ADD_HEADER_REQUIRED, false).set(SC_IS_HEADER_REQUIRED, false),
3650
3656
  headers: {
3651
- [this.feedbackApi.keyName]: this.feedbackApi.authToken,
3657
+ [this.feedbackApi.authTokenName]: this.feedbackApi.authToken,
3652
3658
  },
3653
3659
  })
3654
3660
  .pipe(shareReplay(1));
@@ -3664,7 +3670,7 @@ class ScFeedbackService {
3664
3670
  .post(`${this.feedbackApi.apiUrl}/feedback/${formSlug}`, feedbackMessage, {
3665
3671
  context: new HttpContext().set(SC_AUTH_ADD_HEADER_REQUIRED, false).set(SC_IS_HEADER_REQUIRED, false),
3666
3672
  headers: {
3667
- [this.feedbackApi.keyName]: this.feedbackApi.authToken,
3673
+ [this.feedbackApi.authTokenName]: this.feedbackApi.authToken,
3668
3674
  },
3669
3675
  })
3670
3676
  .pipe(tap(() => {
@@ -5979,6 +5985,10 @@ class ScOrdersService {
5979
5985
  * Коллекция пар ключ-значение для заказов пользователя.
5980
5986
  */
5981
5987
  this.idOrderMap = new Map();
5988
+ /**
5989
+ * Формат дат.
5990
+ */
5991
+ this.dateFormats = inject(SC_DATE_FORMAT);
5982
5992
  authService
5983
5993
  .getAuthChange()
5984
5994
  .pipe(filter((state) => !state))
@@ -6127,7 +6137,10 @@ class ScOrdersService {
6127
6137
  date: date,
6128
6138
  },
6129
6139
  })
6130
- .pipe(map((ordersPaginateDTO) => new ScDeliveryCost(ordersPaginateDTO, date)));
6140
+ .pipe(map((ordersPaginateDTO) => {
6141
+ const formattedDate = format(parse(date, this.dateFormats.api, new Date()), this.dateFormats.uiDate);
6142
+ return new ScDeliveryCost(ordersPaginateDTO, formattedDate);
6143
+ }));
6131
6144
  }
6132
6145
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: ScOrdersService, deps: [{ token: i1$1.HttpClient }, { token: ScAuthService }, { token: SC_URLS }, { token: SC_UPDATE_INTERVAL }, { token: ScCartService }, { token: ScUIService }, { token: ScUserMetrikaService }], target: i0.ɵɵFactoryTarget.Injectable }); }
6133
6146
  static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: ScOrdersService, providedIn: 'root' }); }
@@ -7146,5 +7159,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.12", ngImpo
7146
7159
  * Generated bundle index. Do not edit.
7147
7160
  */
7148
7161
 
7149
- export { EMPTY_CART, IS_BROWSER, IS_RUNNING_ON_TERMINAL, IS_SERVER, RESPONSE, SC_ACCESS_AUTH_TOKEN_STORAGE_KEY, SC_API_KEYS, SC_AUTH_ADD_HEADER_REQUIRED, SC_AUTH_AS_CLIENT_DEFAULT_OPTIONS, SC_AUTH_AS_CLIENT_OPTIONS, SC_CACHE_LIFETIME, SC_CACHE_SETTINGS, SC_COMPANY_NAME, SC_CONFIGURATOR_COMPONENTS, SC_CONFIGURATOR_SETTINGS, SC_COUNT_FIRST_DISCOUNTED_PRODUCTS, SC_COUNT_LAST_NEWS, SC_DEFAULT_PAGE_META, SC_FEEDBACK_API, SC_GUEST_ENDPOINTS_TOKEN, SC_GUEST_PARAMETER_NAME_TOKEN, SC_GUEST_TOKEN_STORAGE_KEY, SC_ID_OR_SLUG_IN_ROUTE, SC_IS_HEADER_REQUIRED, SC_IS_HIDDEN_ERROR_ALERT, SC_IS_HIDDEN_ERROR_ALERT_HTTP_CONTEXT, SC_IS_LOGOUT_REQUEST, SC_IS_REFRESH_REQUIRED, SC_LINEAR_VALUES, SC_LINEAR_VALUES_TOKEN, SC_MAX_LENGTH_SEARCH_TERM, SC_MIN_LENGTH_SEARCH_TERM, SC_NEXT_PAGE_PAGINATION_CLICK, SC_PATH_IMAGE_NOT_FOUND, SC_PRODUCT_PAGINATION_DEFAULT_OPTIONS, SC_PRODUCT_PAGINATION_OPTIONS, SC_REFRESH_AUTH_TOKEN_STORAGE_KEY, SC_RELEASE, SC_UPDATE_INTERVAL, SC_URLS, SC_VACANCIES_DATA_SOURCE, SC_VIRTUAL_CATEGORY_INFO, SC_VIRTUAL_CATEGORY_PROVIDERS, SEARCH_TERM, SEARCH_TERM_PROVIDERS, ScAuthAsClientGuard, ScAuthInterceptor, ScAuthService, ScBannerService, ScCacheInterceptor, ScCacheSettings, ScCachedData, ScCachedItem, ScCart, ScCartItem, ScCartService, ScCatalogFormat, ScCatalogService, ScCategory, ScClientType, ScConfiguratorService, ScContactsService, ScContragentService, ScConvertInterceptor, ScConvertersService, ScDeliveryAddressService, ScDeliveryCost, ScDeliveryType, ScDocumentInfoNode, ScDocumentInfoTypesEnum, ScErrorsInterceptor, ScFavoriteService, ScFeedbackService, ScFilesService, ScFrequentlyAskedQuestionsService, ScGuestInterceptor, ScISalesDirectionCart, ScISuggestionType, ScIconTypesEnum, ScIdOrSlugGuard, ScIdOrSlugPipe, ScImageHelper, ScJsonLdComponent, ScJsonLdModule, ScLocationsService, ScMimeTypes, ScNews, ScNewsService, ScNotificationActionTypes, ScNotificationLevelNames, ScNotificationsService, ScOpfList, ScOptionsInterceptor, ScOrder, ScOrderShort, ScOrderStateStatus, ScOrdersService, ScPaginationService, ScPaymentStatus, ScPaymentType, ScPhoneService, ScProduct, ScProductTileType, ScQuestionnaireService, ScQuestionnaireStatusEnum, ScReclamationService, ScReclamationStatus, ScRecommendationService, ScReferenceName, ScReferencesService, ScRequisitesService, ScSearchService, ScSeoResource, ScSeoService, ScSocialType, ScSuggestionService, ScSum, ScTokenService, ScUIService, ScUTMService, ScUnitsHelper, ScUploadedFile, ScUser, ScUserMetadata, ScUserMetrikaGoalsEnum, ScUserMetrikaService, ScUserService, ScUserType, ScVCardService, ScVacanciesList, ScVacanciesService, ScVacancy, ScVerificationService, ScVirtualCategory, ScWarehouseService, TERMINAL_PROVIDERS, USER_AGENT_TERMINAL, filterChangedByKey, runningOnTerminalFactory, searchTermFactory };
7162
+ export { EMPTY_CART, IS_BROWSER, IS_RUNNING_ON_TERMINAL, IS_SERVER, RESPONSE, SC_ACCESS_AUTH_TOKEN_STORAGE_KEY, SC_API_KEYS, SC_AUTH_ADD_HEADER_REQUIRED, SC_AUTH_AS_CLIENT_DEFAULT_OPTIONS, SC_AUTH_AS_CLIENT_OPTIONS, SC_CACHE_LIFETIME, SC_CACHE_SETTINGS, SC_COMPANY_NAME, SC_CONFIGURATOR_COMPONENTS, SC_CONFIGURATOR_SETTINGS, SC_COUNT_FIRST_DISCOUNTED_PRODUCTS, SC_COUNT_LAST_NEWS, SC_DATE_FORMAT, SC_DEFAULT_PAGE_META, SC_FEEDBACK_API, SC_GUEST_ENDPOINTS_TOKEN, SC_GUEST_PARAMETER_NAME_TOKEN, SC_GUEST_TOKEN_STORAGE_KEY, SC_ID_OR_SLUG_IN_ROUTE, SC_IS_HEADER_REQUIRED, SC_IS_HIDDEN_ERROR_ALERT, SC_IS_HIDDEN_ERROR_ALERT_HTTP_CONTEXT, SC_IS_LOGOUT_REQUEST, SC_IS_REFRESH_REQUIRED, SC_LINEAR_VALUES, SC_LINEAR_VALUES_TOKEN, SC_MAX_LENGTH_SEARCH_TERM, SC_MIN_LENGTH_SEARCH_TERM, SC_NEXT_PAGE_PAGINATION_CLICK, SC_PATH_IMAGE_NOT_FOUND, SC_PRODUCT_PAGINATION_DEFAULT_OPTIONS, SC_PRODUCT_PAGINATION_OPTIONS, SC_REFRESH_AUTH_TOKEN_STORAGE_KEY, SC_RELEASE, SC_UPDATE_INTERVAL, SC_URLS, SC_VACANCIES_DATA_SOURCE, SC_VIRTUAL_CATEGORY_INFO, SC_VIRTUAL_CATEGORY_PROVIDERS, SEARCH_TERM, SEARCH_TERM_PROVIDERS, ScAuthAsClientGuard, ScAuthInterceptor, ScAuthService, ScBannerService, ScCacheInterceptor, ScCacheSettings, ScCachedData, ScCachedItem, ScCart, ScCartItem, ScCartService, ScCatalogFormat, ScCatalogService, ScCategory, ScClientType, ScConfiguratorService, ScContactsService, ScContragentService, ScConvertInterceptor, ScConvertersService, ScDeliveryAddressService, ScDeliveryCost, ScDeliveryType, ScDocumentInfoNode, ScDocumentInfoTypesEnum, ScErrorsInterceptor, ScFavoriteService, ScFeedbackService, ScFilesService, ScFrequentlyAskedQuestionsService, ScGuestInterceptor, ScISalesDirectionCart, ScISuggestionType, ScIconTypesEnum, ScIdOrSlugGuard, ScIdOrSlugPipe, ScImageHelper, ScJsonLdComponent, ScJsonLdModule, ScLocationsService, ScMimeTypes, ScNews, ScNewsService, ScNotificationActionTypes, ScNotificationLevelNames, ScNotificationsService, ScOpfList, ScOptionsInterceptor, ScOrder, ScOrderShort, ScOrderStateStatus, ScOrdersService, ScPaginationService, ScPaymentStatus, ScPaymentType, ScPhoneService, ScProduct, ScProductTileType, ScQuestionnaireService, ScQuestionnaireStatusEnum, ScReclamationService, ScReclamationStatus, ScRecommendationService, ScReferenceName, ScReferencesService, ScRequisitesService, ScSearchService, ScSeoResource, ScSeoService, ScSocialType, ScSuggestionService, ScSum, ScTokenService, ScUIService, ScUTMService, ScUnitsHelper, ScUploadedFile, ScUser, ScUserMetadata, ScUserMetrikaGoalsEnum, ScUserMetrikaService, ScUserService, ScUserType, ScVCardService, ScVacanciesList, ScVacanciesService, ScVacancy, ScVerificationService, ScVirtualCategory, ScWarehouseService, TERMINAL_PROVIDERS, USER_AGENT_TERMINAL, filterChangedByKey, runningOnTerminalFactory, searchTermFactory };
7150
7163
  //# sourceMappingURL=snabcentr-client-core.mjs.map