@abp/ng.core 8.3.1 → 9.0.0-rc.1

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/README.md CHANGED
@@ -5,25 +5,23 @@ For more information, check out the below links:
5
5
 
6
6
  🔗Official Website: https://abp.io
7
7
 
8
- 🔗Commercial Website: https://commercial.abp.io
9
-
10
- 🔗Commercial Demo: https://commercial.abp.io/demo
8
+ 🔗Commercial Demo: https://abp.io/demo
11
9
 
12
10
  🔗GitHub Repository: https://github.com/abpframework/abp
13
11
 
14
12
  🔗Official Theme: https://www.LeptonTheme.com
15
13
 
16
- 🔗Documentation: https://docs.abp.io
14
+ 🔗Documentation: https://abp.io/docs/latest/
17
15
 
18
- 🔗Community: https://community.abp.io
16
+ 🔗Community: https://abp.io/community/
19
17
 
20
- 🔗Blog: https://blog.abp.io
18
+ 🔗Blog: https://abp.io/blog/
21
19
 
22
20
  🔗Books: https://abp.io/books
23
21
 
24
22
  🔗Twitter: https://twitter.com/abpframework
25
23
 
26
- 🔗Discord: https://community.abp.io/discord
24
+ 🔗Discord: https://abp.io/community/discord
27
25
 
28
26
  🔗Stackoverflow: https://stackoverflow.com/questions/tagged/abp
29
27
 
@@ -34,7 +32,7 @@ For more information, check out the below links:
34
32
 
35
33
  Why should you use the ABP.IO Platform instead of creating a new solution from scratch?
36
34
 
37
- You can find the answer here 👉🏻 [Why ABP Platform?](https://docs.abp.io/en/commercial/latest/why-abp-io-platform)
35
+ You can find the answer here 👉🏻 [Why ABP Platform?](https://abp.io/docs/latest/others/why-abp-platform)
38
36
 
39
37
 
40
38
  ## 🚀 Key Features of the ABP Framework
@@ -100,7 +98,7 @@ You can find the answer here 👉🏻 [Why ABP Platform?](https://docs.abp.io/en
100
98
 
101
99
  ## 🧐 How It Works?
102
100
 
103
- The following page explains how you use the ABP.IO Platform as a .NET developer 👉 [How it works?](https://commercial.abp.io/how-it-works)
101
+ The following page explains how you use the ABP.IO Platform as a .NET developer 👉 [How it works?](https://abp.io/how-it-works)
104
102
 
105
103
 
106
104
  ### 📘 Supported Database Providers
@@ -127,4 +125,4 @@ The following page explains how you use the ABP.IO Platform as a .NET developer
127
125
 
128
126
  ## 📫 Bug & Support
129
127
 
130
- Support for open-source ABP Framework client-side packages is available at [GitHub Issues](https://github.com/abpframework/abp/issues), and the commercial support is available at [support.abp.io](https://support.abp.io).
128
+ Support for open-source ABP Framework client-side packages is available at [GitHub Issues](https://github.com/abpframework/abp/issues), and the commercial support is available at [abp.io/support](https://abp.io/support/questions).
@@ -35,7 +35,8 @@ export class ConfigStateService {
35
35
  if (!appState.localization.currentCulture.cultureName) {
36
36
  throw new Error('culture name should defined');
37
37
  }
38
- return this.getlocalizationResource(appState.localization.currentCulture.cultureName).pipe(map(result => ({ ...appState, localization: { ...appState.localization, ...result } })));
38
+ const cultureName = this.uiCultureFromAuthCodeFlow ?? appState.localization.currentCulture.cultureName;
39
+ return this.getlocalizationResource(cultureName).pipe(map(result => ({ ...appState, localization: { ...appState.localization, ...result } })), tap(() => (this.uiCultureFromAuthCodeFlow = undefined)));
39
40
  }
40
41
  getlocalizationResource(cultureName) {
41
42
  return this.abpApplicationLocalizationService.get({
@@ -108,6 +109,15 @@ export class ConfigStateService {
108
109
  return keys.reduce((acc, key) => ({ ...acc, [key]: features.values[key] }), {});
109
110
  });
110
111
  }
112
+ isFeatureEnabled(key, features) {
113
+ return features.values[key] === 'true';
114
+ }
115
+ getFeatureIsEnabled(key) {
116
+ return this.isFeatureEnabled(key, this.store.state.features);
117
+ }
118
+ getFeatureIsEnabled$(key) {
119
+ return this.store.sliceState(state => this.isFeatureEnabled(key, state.features));
120
+ }
111
121
  getSetting(key) {
112
122
  return this.store.state.setting?.values?.[key];
113
123
  }
@@ -176,4 +186,4 @@ function splitKeys(keys) {
176
186
  }
177
187
  return keys;
178
188
  }
179
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlnLXN0YXRlLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jb3JlL3NyYy9saWIvc2VydmljZXMvY29uZmlnLXN0YXRlLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzdELE9BQU8sRUFBYyxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDM0MsT0FBTyxFQUFFLEdBQUcsRUFBRSxTQUFTLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzNELE9BQU8sRUFBRSxrQ0FBa0MsRUFBRSxNQUFNLHFHQUFxRyxDQUFDO0FBQ3pKLE9BQU8sRUFBRSxpQ0FBaUMsRUFBRSxNQUFNLG9HQUFvRyxDQUFDO0FBS3ZKLE9BQU8sRUFBRSxtQ0FBbUMsRUFBRSxNQUFNLGdEQUFnRCxDQUFDO0FBQ3JHLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQzs7OztBQUs5RCxNQUFNLE9BQU8sa0JBQWtCO0lBSTdCLFFBQVEsQ0FBQyxNQUFtQztRQUMxQyxJQUFJLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUN6QixDQUFDO0lBRUQsSUFBSSxvQkFBb0I7UUFDdEIsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLFdBQVcsQ0FBQztJQUNoQyxDQUFDO0lBQ0QsWUFDVSxnQkFBb0QsRUFDcEQsaUNBQW9FLEVBRzNELDRCQUE0QztRQUpyRCxxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQW9DO1FBQ3BELHNDQUFpQyxHQUFqQyxpQ0FBaUMsQ0FBbUM7UUFHM0QsaUNBQTRCLEdBQTVCLDRCQUE0QixDQUFnQjtRQWZ2RCxrQkFBYSxHQUFHLElBQUksT0FBTyxFQUFRLENBQUM7UUFDM0IsVUFBSyxHQUFHLElBQUks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QXhNVSxrQkFBa0IscUhBZW5CLG1DQUFtQztrSEFmbEMsa0JBQWtCLGNBRmpCLE1BQU07OzJGQUVQLGtCQUFrQjtrQkFIOUIsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkI7OzBCQWVJLFFBQVE7OzBCQUNSLE1BQU07MkJBQUMsbUNBQW1DOztBQTRML0MsU0FBUyxTQUFTLENBQUMsSUFBdUI7SUFDeEMsSUFBSSxPQUFPLElBQUksS0FBSyxRQUFRLEVBQUUsQ0FBQztRQUM3QixJQUFJLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUN6QixDQUFDO0lBRUQsSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQztRQUN6QixNQUFNLElBQUksS0FBSyxDQUFDLHVEQUF1RCxDQUFDLENBQUM7SUFDM0UsQ0FBQztJQUVELE9BQU8sSUFBSSxDQUFDO0FBQ2QsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdCwgSW5qZWN0YWJsZSwgT3B0aW9uYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBtYXAsIHN3aXRjaE1hcCwgdGFrZSwgdGFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xyXG5pbXBvcnQgeyBBYnBBcHBsaWNhdGlvbkNvbmZpZ3VyYXRpb25TZXJ2aWNlIH0gZnJvbSAnLi4vcHJveHkvdm9sby9hYnAvYXNwLW5ldC1jb3JlL212Yy9hcHBsaWNhdGlvbi1jb25maWd1cmF0aW9ucy9hYnAtYXBwbGljYXRpb24tY29uZmlndXJhdGlvbi5zZXJ2aWNlJztcclxuaW1wb3J0IHsgQWJwQXBwbGljYXRpb25Mb2NhbGl6YXRpb25TZXJ2aWNlIH0gZnJvbSAnLi4vcHJveHkvdm9sby9hYnAvYXNwLW5ldC1jb3JlL212Yy9hcHBsaWNhdGlvbi1jb25maWd1cmF0aW9ucy9hYnAtYXBwbGljYXRpb24tbG9jYWxpemF0aW9uLnNlcnZpY2UnO1xyXG5pbXBvcnQge1xyXG4gIEFwcGxpY2F0aW9uQ29uZmlndXJhdGlvbkR0byxcclxuICBBcHBsaWNhdGlvbkdsb2JhbEZlYXR1cmVDb25maWd1cmF0aW9uRHRvLFxyXG59IGZyb20gJy4uL3Byb3h5L3ZvbG8vYWJwL2FzcC1uZXQtY29yZS9tdmMvYXBwbGljYXRpb24tY29uZmlndXJhdGlvbnMvbW9kZWxzJztcclxuaW1wb3J0IHsgSU5DVURFX0xPQ0FMSVpBVElPTl9SRVNPVVJDRVNfVE9LRU4gfSBmcm9tICcuLi90b2tlbnMvaW5jbHVkZS1sb2NhbGl6YXRpb24tcmVzb3VyY2VzLnRva2VuJztcclxuaW1wb3J0IHsgSW50ZXJuYWxTdG9yZSB9IGZyb20gJy4uL3V0aWxzL2ludGVybmFsLXN0b3JlLXV0aWxzJztcclxuXHJcbkBJbmplY3RhYmxlKHtcclxuICBwcm92aWRlZEluOiAncm9vdCcsXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBDb25maWdTdGF0ZVNlcnZpY2Uge1xyXG4gIHByaXZhdGUgdXBkYXRlU3ViamVjdCA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XHJcbiAgcHJpdmF0ZSByZWFkb25seSBzdG9yZSA9IG5ldyBJbnRlcm5hbFN0b3JlKHt9IGFzIEFwcGxpY2F0aW9uQ29uZmlndXJhdGlvbkR0byk7XHJcblxyXG4gIHNldFN0YXRlKGNvbmZpZzogQXBwbGljYXRpb25Db25maWd1cmF0aW9uRHRvKSB7XHJcbiAgICB0aGlzLnN0b3JlLnNldChjb25maWcpO1xyXG4gIH1cclxuXHJcbiAgZ2V0IGNyZWF0ZU9uVXBkYXRlU3RyZWFtKCkge1xyXG4gICAgcmV0dXJuIHRoaXMuc3RvcmUuc2xpY2VVcGRhdGU7XHJcbiAgfVxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSBhYnBDb25maWdTZXJ2aWNlOiBBYnBBcHBsaWNhdGlvbkNvbmZpZ3VyYXRpb25TZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBhYnBBcHBsaWNhdGlvbkxvY2FsaXphdGlvblNlcnZpY2U6IEFicEFwcGxpY2F0aW9uTG9jYWxpemF0aW9uU2VydmljZSxcclxuICAgIEBPcHRpb25hbCgpXHJcbiAgICBASW5qZWN0KElOQ1VERV9MT0NBTElaQVRJT05fUkVTT1VSQ0VTX1RPS0VOKVxyXG4gICAgcHJpdmF0ZSByZWFkb25seSBpbmNsdWRlTG9jYWxpemF0aW9uUmVzb3VyY2VzOiBib29sZWFuIHwgbnVsbCxcclxuICApIHtcclxuICAgIHRoaXMuaW5pdFVwZGF0ZVN0cmVhbSgpO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBpbml0VXBkYXRlU3RyZWFtKCkge1xyXG4gICAgdGhpcy51cGRhdGVTdWJqZWN0XHJcbiAgICAgIC5waXBlKFxyXG4gICAgICAgIHN3aXRjaE1hcCgoKSA9PlxyXG4gICAgICAgICAgdGhpcy5hYnBDb25maWdTZXJ2aWNlLmdldCh7XHJcbiAgICAgICAgICAgIGluY2x1ZGVMb2NhbGl6YXRpb25SZXNvdXJjZXM6ICEhdGhpcy5pbmNsdWRlTG9jYWxpemF0aW9uUmVzb3VyY2VzLFxyXG4gICAgICAgICAgfSksXHJcbiAgICAgICAgKSxcclxuICAgICAgKVxyXG4gICAgICAucGlwZShzd2l0Y2hNYXAoYXBwU3RhdGUgPT4gdGhpcy5nZXRMb2NhbGl6YXRpb25BbmRDb21iaW5lV2l0aEFwcFN0YXRlKGFwcFN0YXRlKSkpXHJcbiAgICAgIC5zdWJzY3JpYmUocmVzID0+IHRoaXMuc3RvcmUuc2V0KHJlcykpO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBnZXRMb2NhbGl6YXRpb25BbmRDb21iaW5lV2l0aEFwcFN0YXRlKFxyXG4gICAgYXBwU3RhdGU6IEFwcGxpY2F0aW9uQ29uZmlndXJhdGlvbkR0byxcclxuICApOiBPYnNlcnZhYmxlPEFwcGxpY2F0aW9uQ29uZmlndXJhdGlvbkR0bz4ge1xyXG4gICAgaWYgKCFhcHBTdGF0ZS5sb2NhbGl6YXRpb24uY3VycmVudEN1bHR1cmUuY3VsdHVyZU5hbWUpIHtcclxuICAgICAgdGhyb3cgbmV3IEVycm9yKCdjdWx0dXJlIG5hbWUgc2hvdWxkIGRlZmluZWQnKTtcclxuICAgIH1cclxuICAgIHJldHVybiB0aGlzLmdldGxvY2FsaXphdGlvblJlc291cmNlKGFwcFN0YXRlLmxvY2FsaXphdGlvbi5jdXJyZW50Q3VsdHVyZS5jdWx0dXJlTmFtZSkucGlwZShcclxuICAgICAgbWFwKHJlc3VsdCA9PiAoeyAuLi5hcHBTdGF0ZSwgbG9jYWxpemF0aW9uOiB7IC4uLmFwcFN0YXRlLmxvY2FsaXphdGlvbiwgLi4ucmVzdWx0IH0gfSkpLFxyXG4gICAgKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgZ2V0bG9jYWxpemF0aW9uUmVzb3VyY2UoY3VsdHVyZU5hbWU6IHN0cmluZykge1xyXG4gICAgcmV0dXJuIHRoaXMuYWJwQXBwbGljYXRpb25Mb2NhbGl6YXRpb25TZXJ2aWNlLmdldCh7XHJcbiAgICAgIGN1bHR1cmVOYW1lOiBjdWx0dXJlTmFtZSxcclxuICAgICAgb25seUR5bmFtaWNzOiBmYWxzZSxcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgcmVmcmVzaEFwcFN0YXRlKCkge1xyXG4gICAgdGhpcy51cGRhdGVTdWJqZWN0Lm5leHQoKTtcclxuICAgIHJldHVybiB0aGlzLmNyZWF0ZU9uVXBkYXRlU3RyZWFtKHN0YXRlID0+IHN0YXRlKS5waXBlKHRha2UoMSkpO1xyXG4gIH1cclxuXHJcbiAgcmVmcmVzaExvY2FsaXphdGlvbihsYW5nOiBzdHJpbmcpOiBPYnNlcnZhYmxlPG51bGw+IHtcclxuICAgIGlmKHRoaXMuaW5jbHVkZUxvY2FsaXphdGlvblJlc291cmNlcyl7XHJcbiAgICAgIHJldHVybiB0aGlzLnJlZnJlc2hBcHBTdGF0ZSgpLnBpcGUobWFwKCgpID0+IG51bGwpKTtcclxuICAgIH1cclxuICAgIFxyXG4gICAgcmV0dXJuIHRoaXMuZ2V0bG9jYWxpemF0aW9uUmVzb3VyY2UobGFuZylcclxuICAgICAgLnBpcGUoXHJcbiAgICAgICAgdGFwKHJlc3VsdCA9PlxyXG4gICAgICAgICAgdGhpcy5zdG9yZS5wYXRjaCh7IGxvY2FsaXphdGlvbjogeyAuLi50aGlzLnN0b3JlLnN0YXRlLmxvY2FsaXphdGlvbiwgLi4ucmVzdWx0IH0gfSksXHJcbiAgICAgICAgKSxcclxuICAgICAgKVxyXG4gICAgICAucGlwZShtYXAoKCkgPT4gbnVsbCkpO1xyXG4gIH1cclxuXHJcbiAgZ2V0T25lJDxLIGV4dGVuZHMga2V5b2YgQXBwbGljYXRpb25Db25maWd1cmF0aW9uRHRvPihrZXk6IEspIHtcclxuICAgIHJldHVybiB0aGlzLnN0b3JlLnNsaWNlU3RhdGUoc3RhdGUgPT4gc3RhdGVba2V5XSk7XHJcbiAgfVxyXG5cclxuICBnZXRPbmU8SyBleHRlbmRzIGtleW9mIEFwcGxpY2F0aW9uQ29uZmlndXJhdGlvbkR0bz4oa2V5OiBLKSB7XHJcbiAgICByZXR1cm4gdGhpcy5zdG9yZS5zdGF0ZVtrZXldO1xyXG4gIH1cclxuXHJcbiAgZ2V0QWxsJCgpOiBPYnNlcnZhYmxlPEFwcGxpY2F0aW9uQ29uZmlndXJhdGlvbkR0bz4ge1xyXG4gICAgcmV0dXJuIHRoaXMuc3RvcmUuc2xpY2VTdGF0ZShzdGF0ZSA9PiBzdGF0ZSk7XHJcbiAgfVxyXG5cclxuICBnZXRBbGwoKTogQXBwbGljYXRpb25Db25maWd1cmF0aW9uRHRvIHtcclxuICAgIHJldHVybiB0aGlzLnN0b3JlLnN0YXRlO1xyXG4gIH1cclxuXHJcbiAgZ2V0RGVlcCQoa2V5czogc3RyaW5nW10gfCBzdHJpbmcpOiBPYnNlcnZhYmxlPGFueT4ge1xyXG4gICAga2V5cyA9IHNwbGl0S2V5cyhrZXlzKTtcclxuXHJcbiAgICByZXR1cm4gdGhpcy5zdG9yZVxyXG4gICAgICAuc2xpY2VTdGF0ZShzdGF0ZSA9PiBzdGF0ZSlcclxuICAgICAgLnBpcGUoXHJcbiAgICAgICAgbWFwKHN0YXRlID0+IHtcclxuICAgICAgICAgIHJldHVybiAoa2V5cyBhcyBzdHJpbmdbXSkucmVkdWNlKChhY2M6IGFueSwgdmFsKSA9PiB7XHJcbiAgICAgICAgICAgIGlmIChhY2MpIHtcclxuICAgICAgICAgICAgICByZXR1cm4gYWNjW3ZhbF07XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIHJldHVybiB1bmRlZmluZWQ7XHJcbiAgICAgICAgICB9LCBzdGF0ZSk7XHJcbiAgICAgICAgfSksXHJcbiAgICAgICk7XHJcbiAgfVxyXG5cclxuICBnZXREZWVwKGtleXM6IHN0cmluZ1tdIHwgc3RyaW5nKTogYW55IHtcclxuICAgIGtleXMgPSBzcGxpdEtleXMoa2V5cyk7XHJcblxyXG4gICAgcmV0dXJuIChrZXlzIGFzIHN0cmluZ1tdKS5yZWR1Y2UoKGFjYzogYW55LCB2YWwpID0+IHtcclxuICAgICAgaWYgKGFjYykge1xyXG4gICAgICAgIHJldHVybiBhY2NbdmFsXTtcclxuICAgICAgfVxyXG5cclxuICAgICAgcmV0dXJuIHVuZGVmaW5lZDtcclxuICAgIH0sIHRoaXMuc3RvcmUuc3RhdGUpO1xyXG4gIH1cclxuXHJcbiAgZ2V0RmVhdHVyZShrZXk6IHN0cmluZykge1xyXG4gICAgcmV0dXJuIHRoaXMuc3RvcmUuc3RhdGUuZmVhdHVyZXM/LnZhbHVlcz8uW2tleV07XHJcbiAgfVxyXG5cclxuICBnZXRGZWF0dXJlJChrZXk6IHN0cmluZykge1xyXG4gICAgcmV0dXJuIHRoaXMuc3RvcmUuc2xpY2VTdGF0ZShzdGF0ZSA9PiBzdGF0ZS5mZWF0dXJlcz8udmFsdWVzPy5ba2V5XSk7XHJcbiAgfVxyXG5cclxuICBnZXRGZWF0dXJlcyhrZXlzOiBzdHJpbmdbXSkge1xyXG4gICAgY29uc3QgeyBmZWF0dXJlcyB9ID0gdGhpcy5zdG9yZS5zdGF0ZTtcclxuICAgIGlmICghZmVhdHVyZXMpIHJldHVybjtcclxuXHJcbiAgICByZXR1cm4ga2V5cy5yZWR1Y2UoKGFjYywga2V5KSA9PiAoeyAuLi5hY2MsIFtrZXldOiBmZWF0dXJlcy52YWx1ZXNba2V5XSB9KSwge30pO1xyXG4gIH1cclxuXHJcbiAgZ2V0RmVhdHVyZXMkKGtleXM6IHN0cmluZ1tdKTogT2JzZXJ2YWJsZTx7IFtrZXk6IHN0cmluZ106IHN0cmluZzsgfSB8IHVuZGVmaW5lZD4ge1xyXG4gICAgcmV0dXJuIHRoaXMuc3RvcmUuc2xpY2VTdGF0ZSgoeyBmZWF0dXJlcyB9KSA9PiB7XHJcbiAgICAgIGlmICghZmVhdHVyZXM/LnZhbHVlcykgcmV0dXJuO1xyXG5cclxuICAgICAgcmV0dXJuIGtleXMucmVkdWNlKChhY2MsIGtleSkgPT4gKHsgLi4uYWNjLCBba2V5XTogZmVhdHVyZXMudmFsdWVzW2tleV0gfSksIHt9KTtcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgZ2V0U2V0dGluZyhrZXk6IHN0cmluZykge1xyXG4gICAgcmV0dXJuIHRoaXMuc3RvcmUuc3RhdGUuc2V0dGluZz8udmFsdWVzPy5ba2V5XTtcclxuICB9XHJcblxyXG4gIGdldFNldHRpbmckKGtleTogc3RyaW5nKSB7XHJcbiAgICByZXR1cm4gdGhpcy5zdG9yZS5zbGljZVN0YXRlKHN0YXRlID0+IHN0YXRlLnNldHRpbmc/LnZhbHVlcz8uW2tleV0pO1xyXG4gIH1cclxuXHJcbiAgZ2V0U2V0dGluZ3Moa2V5d29yZD86IHN0cmluZykge1xyXG4gICAgY29uc3Qgc2V0dGluZ3MgPSB0aGlzLnN0b3JlLnN0YXRlLnNldHRpbmc/LnZhbHVlcyB8fCB7fTtcclxuXHJcbiAgICBpZiAoIWtleXdvcmQpIHJldHVybiBzZXR0aW5ncztcclxuXHJcbiAgICBjb25zdCBrZXlzRm91bmQgPSBPYmplY3Qua2V5cyhzZXR0aW5ncykuZmlsdGVyKGtleSA9PiBrZXkuaW5kZXhPZihrZXl3b3JkKSA+IC0xKTtcclxuXHJcbiAgICByZXR1cm4ga2V5c0ZvdW5kLnJlZHVjZSgoYWNjLCBrZXkpID0+IHtcclxuICAgICAgYWNjW2tleV0gPSBzZXR0aW5nc1trZXldO1xyXG4gICAgICByZXR1cm4gYWNjO1xyXG4gICAgfSwge30gYXMgUmVjb3JkPHN0cmluZywgc3RyaW5nPik7XHJcbiAgfVxyXG5cclxuICBnZXRTZXR0aW5ncyQoa2V5d29yZD86IHN0cmluZykge1xyXG4gICAgcmV0dXJuIHRoaXMuc3RvcmVcclxuICAgICAgLnNsaWNlU3RhdGUoc3RhdGUgPT4gc3RhdGUuc2V0dGluZz8udmFsdWVzKVxyXG4gICAgICAucGlwZShcclxuICAgICAgICBtYXAoKHNldHRpbmdzID0ge30pID0+IHtcclxuICAgICAgICAgIGlmICgha2V5d29yZCkgcmV0dXJuIHNldHRpbmdzO1xyXG5cclxuICAgICAgICAgIGNvbnN0IGtleXNGb3VuZCA9IE9iamVjdC5rZXlzKHNldHRpbmdzKS5maWx0ZXIoa2V5ID0+IGtleS5pbmRleE9mKGtleXdvcmQpID4gLTEpO1xyXG5cclxuICAgICAgICAgIHJldHVybiBrZXlzRm91bmQucmVkdWNlKChhY2MsIGtleSkgPT4ge1xyXG4gICAgICAgICAgICBhY2Nba2V5XSA9IHNldHRpbmdzW2tleV07XHJcbiAgICAgICAgICAgIHJldHVybiBhY2M7XHJcbiAgICAgICAgICB9LCB7fSBhcyBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+KTtcclxuICAgICAgICB9KSxcclxuICAgICAgKTtcclxuICB9XHJcblxyXG4gIGdldEdsb2JhbEZlYXR1cmVzKCkge1xyXG4gICAgcmV0dXJuIHRoaXMuc3RvcmUuc3RhdGUuZ2xvYmFsRmVhdHVyZXM7XHJcbiAgfVxyXG5cclxuICBnZXRHbG9iYWxGZWF0dXJlcyQoKSB7XHJcbiAgICByZXR1cm4gdGhpcy5zdG9yZS5zbGljZVN0YXRlKHN0YXRlID0+IHN0YXRlLmdsb2JhbEZlYXR1cmVzKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgaXNHbG9iYWxGZWF0dXJlRW5hYmxlZChcclxuICAgIGtleTogc3RyaW5nLFxyXG4gICAgZ2xvYmFsRmVhdHVyZXM6IEFwcGxpY2F0aW9uR2xvYmFsRmVhdHVyZUNvbmZpZ3VyYXRpb25EdG8sXHJcbiAgKSB7XHJcbiAgICBjb25zdCBmZWF0dXJlcyA9IGdsb2JhbEZlYXR1cmVzLmVuYWJsZWRGZWF0dXJlcyB8fCBbXTtcclxuICAgIHJldHVybiBmZWF0dXJlcy5zb21lKGYgPT4ga2V5ID09PSBmKTtcclxuICB9XHJcblxyXG4gIGdldEdsb2JhbEZlYXR1cmVJc0VuYWJsZWQoa2V5OiBzdHJpbmcpIHtcclxuICAgIHJldHVybiB0aGlzLmlzR2xvYmFsRmVhdHVyZUVuYWJsZWQoa2V5LCB0aGlzLnN0b3JlLnN0YXRlLmdsb2JhbEZlYXR1cmVzKTtcclxuICB9XHJcblxyXG4gIGdldEdsb2JhbEZlYXR1cmVJc0VuYWJsZWQkKGtleTogc3RyaW5nKSB7XHJcbiAgICByZXR1cm4gdGhpcy5zdG9yZS5zbGljZVN0YXRlKHN0YXRlID0+IHRoaXMuaXNHbG9iYWxGZWF0dXJlRW5hYmxlZChrZXksIHN0YXRlLmdsb2JhbEZlYXR1cmVzKSk7XHJcbiAgfVxyXG59XHJcblxyXG5mdW5jdGlvbiBzcGxpdEtleXMoa2V5czogc3RyaW5nW10gfCBzdHJpbmcpOiBzdHJpbmdbXSB7XHJcbiAgaWYgKHR5cGVvZiBrZXlzID09PSAnc3RyaW5nJykge1xyXG4gICAga2V5cyA9IGtleXMuc3BsaXQoJy4nKTtcclxuICB9XHJcblxyXG4gIGlmICghQXJyYXkuaXNBcnJheShrZXlzKSkge1xyXG4gICAgdGhyb3cgbmV3IEVycm9yKCdUaGUgYXJndW1lbnQgbXVzdCBiZSBhIGRvdCBzdHJpbmcgb3IgYW4gc3RyaW5nIGFycmF5LicpO1xyXG4gIH1cclxuXHJcbiAgcmV0dXJuIGtleXM7XHJcbn1cclxuIl19
189
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlnLXN0YXRlLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jb3JlL3NyYy9saWIvc2VydmljZXMvY29uZmlnLXN0YXRlLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzdELE9BQU8sRUFBYyxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDM0MsT0FBTyxFQUFFLEdBQUcsRUFBRSxTQUFTLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzNELE9BQU8sRUFBRSxrQ0FBa0MsRUFBRSxNQUFNLHFHQUFxRyxDQUFDO0FBQ3pKLE9BQU8sRUFBRSxpQ0FBaUMsRUFBRSxNQUFNLG9HQUFvRyxDQUFDO0FBTXZKLE9BQU8sRUFBRSxtQ0FBbUMsRUFBRSxNQUFNLGdEQUFnRCxDQUFDO0FBQ3JHLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQzs7OztBQUs5RCxNQUFNLE9BQU8sa0JBQWtCO0lBTTdCLFFBQVEsQ0FBQyxNQUFtQztRQUMxQyxJQUFJLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUN6QixDQUFDO0lBRUQsSUFBSSxvQkFBb0I7UUFDdEIsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLFdBQVcsQ0FBQztJQUNoQyxDQUFDO0lBQ0QsWUFDVSxnQkFBb0QsRUFDcEQsaUNBQW9FLEVBRzNELDRCQUE0QztRQUpyRCxxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQW9DO1FBQ3BELHNDQUFpQyxHQUFqQyxpQ0FBaUMsQ0FBbUM7UUFHM0QsaUNBQTRCLEdBQTVCLDRCQUE0QixDQUFnQjtRQWpCdkQsa0JBQWEsR0FBRyxJQUFJLE9BQU8sRUFBUSxDQUFDO1FBQzNCLFVBQUssR0FBRyxJQUFJ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LE9BQU8sSUFBSSxDQUFDO0FBQ2QsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdCwgSW5qZWN0YWJsZSwgT3B0aW9uYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBtYXAsIHN3aXRjaE1hcCwgdGFrZSwgdGFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xyXG5pbXBvcnQgeyBBYnBBcHBsaWNhdGlvbkNvbmZpZ3VyYXRpb25TZXJ2aWNlIH0gZnJvbSAnLi4vcHJveHkvdm9sby9hYnAvYXNwLW5ldC1jb3JlL212Yy9hcHBsaWNhdGlvbi1jb25maWd1cmF0aW9ucy9hYnAtYXBwbGljYXRpb24tY29uZmlndXJhdGlvbi5zZXJ2aWNlJztcclxuaW1wb3J0IHsgQWJwQXBwbGljYXRpb25Mb2NhbGl6YXRpb25TZXJ2aWNlIH0gZnJvbSAnLi4vcHJveHkvdm9sby9hYnAvYXNwLW5ldC1jb3JlL212Yy9hcHBsaWNhdGlvbi1jb25maWd1cmF0aW9ucy9hYnAtYXBwbGljYXRpb24tbG9jYWxpemF0aW9uLnNlcnZpY2UnO1xyXG5pbXBvcnQge1xyXG4gIEFwcGxpY2F0aW9uQ29uZmlndXJhdGlvbkR0byxcclxuICBBcHBsaWNhdGlvbkZlYXR1cmVDb25maWd1cmF0aW9uRHRvLFxyXG4gIEFwcGxpY2F0aW9uR2xvYmFsRmVhdHVyZUNvbmZpZ3VyYXRpb25EdG8sXHJcbn0gZnJvbSAnLi4vcHJveHkvdm9sby9hYnAvYXNwLW5ldC1jb3JlL212Yy9hcHBsaWNhdGlvbi1jb25maWd1cmF0aW9ucy9tb2RlbHMnO1xyXG5pbXBvcnQgeyBJTkNVREVfTE9DQUxJWkFUSU9OX1JFU09VUkNFU19UT0tFTiB9IGZyb20gJy4uL3Rva2Vucy9pbmNsdWRlLWxvY2FsaXphdGlvbi1yZXNvdXJjZXMudG9rZW4nO1xyXG5pbXBvcnQgeyBJbnRlcm5hbFN0b3JlIH0gZnJvbSAnLi4vdXRpbHMvaW50ZXJuYWwtc3RvcmUtdXRpbHMnO1xyXG5cclxuQEluamVjdGFibGUoe1xyXG4gIHByb3ZpZGVkSW46ICdyb290JyxcclxufSlcclxuZXhwb3J0IGNsYXNzIENvbmZpZ1N0YXRlU2VydmljZSB7XHJcbiAgcHJpdmF0ZSB1cGRhdGVTdWJqZWN0ID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcclxuICBwcml2YXRlIHJlYWRvbmx5IHN0b3JlID0gbmV3IEludGVybmFsU3RvcmUoe30gYXMgQXBwbGljYXRpb25Db25maWd1cmF0aW9uRHRvKTtcclxuXHJcbiAgcHVibGljIHVpQ3VsdHVyZUZyb21BdXRoQ29kZUZsb3c6IHN0cmluZztcclxuXHJcbiAgc2V0U3RhdGUoY29uZmlnOiBBcHBsaWNhdGlvbkNvbmZpZ3VyYXRpb25EdG8pIHtcclxuICAgIHRoaXMuc3RvcmUuc2V0KGNvbmZpZyk7XHJcbiAgfVxyXG5cclxuICBnZXQgY3JlYXRlT25VcGRhdGVTdHJlYW0oKSB7XHJcbiAgICByZXR1cm4gdGhpcy5zdG9yZS5zbGljZVVwZGF0ZTtcclxuICB9XHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwcml2YXRlIGFicENvbmZpZ1NlcnZpY2U6IEFicEFwcGxpY2F0aW9uQ29uZmlndXJhdGlvblNlcnZpY2UsXHJcbiAgICBwcml2YXRlIGFicEFwcGxpY2F0aW9uTG9jYWxpemF0aW9uU2VydmljZTogQWJwQXBwbGljYXRpb25Mb2NhbGl6YXRpb25TZXJ2aWNlLFxyXG4gICAgQE9wdGlvbmFsKClcclxuICAgIEBJbmplY3QoSU5DVURFX0xPQ0FMSVpBVElPTl9SRVNPVVJDRVNfVE9LRU4pXHJcbiAgICBwcml2YXRlIHJlYWRvbmx5IGluY2x1ZGVMb2NhbGl6YXRpb25SZXNvdXJjZXM6IGJvb2xlYW4gfCBudWxsLFxyXG4gICkge1xyXG4gICAgdGhpcy5pbml0VXBkYXRlU3RyZWFtKCk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGluaXRVcGRhdGVTdHJlYW0oKSB7XHJcbiAgICB0aGlzLnVwZGF0ZVN1YmplY3RcclxuICAgICAgLnBpcGUoXHJcbiAgICAgICAgc3dpdGNoTWFwKCgpID0+XHJcbiAgICAgICAgICB0aGlzLmFicENvbmZpZ1NlcnZpY2UuZ2V0KHtcclxuICAgICAgICAgICAgaW5jbHVkZUxvY2FsaXphdGlvblJlc291cmNlczogISF0aGlzLmluY2x1ZGVMb2NhbGl6YXRpb25SZXNvdXJjZXMsXHJcbiAgICAgICAgICB9KSxcclxuICAgICAgICApLFxyXG4gICAgICApXHJcbiAgICAgIC5waXBlKHN3aXRjaE1hcChhcHBTdGF0ZSA9PiB0aGlzLmdldExvY2FsaXphdGlvbkFuZENvbWJpbmVXaXRoQXBwU3RhdGUoYXBwU3RhdGUpKSlcclxuICAgICAgLnN1YnNjcmliZShyZXMgPT4gdGhpcy5zdG9yZS5zZXQocmVzKSk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGdldExvY2FsaXphdGlvbkFuZENvbWJpbmVXaXRoQXBwU3RhdGUoXHJcbiAgICBhcHBTdGF0ZTogQXBwbGljYXRpb25Db25maWd1cmF0aW9uRHRvLFxyXG4gICk6IE9ic2VydmFibGU8QXBwbGljYXRpb25Db25maWd1cmF0aW9uRHRvPiB7XHJcbiAgICBpZiAoIWFwcFN0YXRlLmxvY2FsaXphdGlvbi5jdXJyZW50Q3VsdHVyZS5jdWx0dXJlTmFtZSkge1xyXG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ2N1bHR1cmUgbmFtZSBzaG91bGQgZGVmaW5lZCcpO1xyXG4gICAgfVxyXG5cclxuICAgIGNvbnN0IGN1bHR1cmVOYW1lID1cclxuICAgICAgdGhpcy51aUN1bHR1cmVGcm9tQXV0aENvZGVGbG93ID8/IGFwcFN0YXRlLmxvY2FsaXphdGlvbi5jdXJyZW50Q3VsdHVyZS5jdWx0dXJlTmFtZTtcclxuXHJcbiAgICByZXR1cm4gdGhpcy5nZXRsb2NhbGl6YXRpb25SZXNvdXJjZShjdWx0dXJlTmFtZSkucGlwZShcclxuICAgICAgbWFwKHJlc3VsdCA9PiAoeyAuLi5hcHBTdGF0ZSwgbG9jYWxpemF0aW9uOiB7IC4uLmFwcFN0YXRlLmxvY2FsaXphdGlvbiwgLi4ucmVzdWx0IH0gfSkpLFxyXG4gICAgICB0YXAoKCkgPT4gKHRoaXMudWlDdWx0dXJlRnJvbUF1dGhDb2RlRmxvdyA9IHVuZGVmaW5lZCkpLFxyXG4gICAgKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgZ2V0bG9jYWxpemF0aW9uUmVzb3VyY2UoY3VsdHVyZU5hbWU6IHN0cmluZykge1xyXG4gICAgcmV0dXJuIHRoaXMuYWJwQXBwbGljYXRpb25Mb2NhbGl6YXRpb25TZXJ2aWNlLmdldCh7XHJcbiAgICAgIGN1bHR1cmVOYW1lOiBjdWx0dXJlTmFtZSxcclxuICAgICAgb25seUR5bmFtaWNzOiBmYWxzZSxcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgcmVmcmVzaEFwcFN0YXRlKCkge1xyXG4gICAgdGhpcy51cGRhdGVTdWJqZWN0Lm5leHQoKTtcclxuICAgIHJldHVybiB0aGlzLmNyZWF0ZU9uVXBkYXRlU3RyZWFtKHN0YXRlID0+IHN0YXRlKS5waXBlKHRha2UoMSkpO1xyXG4gIH1cclxuXHJcbiAgcmVmcmVzaExvY2FsaXphdGlvbihsYW5nOiBzdHJpbmcpOiBPYnNlcnZhYmxlPG51bGw+IHtcclxuICAgIGlmICh0aGlzLmluY2x1ZGVMb2NhbGl6YXRpb25SZXNvdXJjZXMpIHtcclxuICAgICAgcmV0dXJuIHRoaXMucmVmcmVzaEFwcFN0YXRlKCkucGlwZShtYXAoKCkgPT4gbnVsbCkpO1xyXG4gICAgfVxyXG5cclxuICAgIHJldHVybiB0aGlzLmdldGxvY2FsaXphdGlvblJlc291cmNlKGxhbmcpXHJcbiAgICAgIC5waXBlKFxyXG4gICAgICAgIHRhcChyZXN1bHQgPT5cclxuICAgICAgICAgIHRoaXMuc3RvcmUucGF0Y2goeyBsb2NhbGl6YXRpb246IHsgLi4udGhpcy5zdG9yZS5zdGF0ZS5sb2NhbGl6YXRpb24sIC4uLnJlc3VsdCB9IH0pLFxyXG4gICAgICAgICksXHJcbiAgICAgIClcclxuICAgICAgLnBpcGUobWFwKCgpID0+IG51bGwpKTtcclxuICB9XHJcblxyXG4gIGdldE9uZSQ8SyBleHRlbmRzIGtleW9mIEFwcGxpY2F0aW9uQ29uZmlndXJhdGlvbkR0bz4oa2V5OiBLKSB7XHJcbiAgICByZXR1cm4gdGhpcy5zdG9yZS5zbGljZVN0YXRlKHN0YXRlID0+IHN0YXRlW2tleV0pO1xyXG4gIH1cclxuXHJcbiAgZ2V0T25lPEsgZXh0ZW5kcyBrZXlvZiBBcHBsaWNhdGlvbkNvbmZpZ3VyYXRpb25EdG8+KGtleTogSykge1xyXG4gICAgcmV0dXJuIHRoaXMuc3RvcmUuc3RhdGVba2V5XTtcclxuICB9XHJcblxyXG4gIGdldEFsbCQoKTogT2JzZXJ2YWJsZTxBcHBsaWNhdGlvbkNvbmZpZ3VyYXRpb25EdG8+IHtcclxuICAgIHJldHVybiB0aGlzLnN0b3JlLnNsaWNlU3RhdGUoc3RhdGUgPT4gc3RhdGUpO1xyXG4gIH1cclxuXHJcbiAgZ2V0QWxsKCk6IEFwcGxpY2F0aW9uQ29uZmlndXJhdGlvbkR0byB7XHJcbiAgICByZXR1cm4gdGhpcy5zdG9yZS5zdGF0ZTtcclxuICB9XHJcblxyXG4gIGdldERlZXAkKGtleXM6IHN0cmluZ1tdIHwgc3RyaW5nKTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuICAgIGtleXMgPSBzcGxpdEtleXMoa2V5cyk7XHJcblxyXG4gICAgcmV0dXJuIHRoaXMuc3RvcmVcclxuICAgICAgLnNsaWNlU3RhdGUoc3RhdGUgPT4gc3RhdGUpXHJcbiAgICAgIC5waXBlKFxyXG4gICAgICAgIG1hcChzdGF0ZSA9PiB7XHJcbiAgICAgICAgICByZXR1cm4gKGtleXMgYXMgc3RyaW5nW10pLnJlZHVjZSgoYWNjOiBhbnksIHZhbCkgPT4ge1xyXG4gICAgICAgICAgICBpZiAoYWNjKSB7XHJcbiAgICAgICAgICAgICAgcmV0dXJuIGFjY1t2YWxdO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICByZXR1cm4gdW5kZWZpbmVkO1xyXG4gICAgICAgICAgfSwgc3RhdGUpO1xyXG4gICAgICAgIH0pLFxyXG4gICAgICApO1xyXG4gIH1cclxuXHJcbiAgZ2V0RGVlcChrZXlzOiBzdHJpbmdbXSB8IHN0cmluZyk6IGFueSB7XHJcbiAgICBrZXlzID0gc3BsaXRLZXlzKGtleXMpO1xyXG5cclxuICAgIHJldHVybiAoa2V5cyBhcyBzdHJpbmdbXSkucmVkdWNlKChhY2M6IGFueSwgdmFsKSA9PiB7XHJcbiAgICAgIGlmIChhY2MpIHtcclxuICAgICAgICByZXR1cm4gYWNjW3ZhbF07XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHJldHVybiB1bmRlZmluZWQ7XHJcbiAgICB9LCB0aGlzLnN0b3JlLnN0YXRlKTtcclxuICB9XHJcblxyXG4gIGdldEZlYXR1cmUoa2V5OiBzdHJpbmcpIHtcclxuICAgIHJldHVybiB0aGlzLnN0b3JlLnN0YXRlLmZlYXR1cmVzPy52YWx1ZXM/LltrZXldO1xyXG4gIH1cclxuXHJcbiAgZ2V0RmVhdHVyZSQoa2V5OiBzdHJpbmcpIHtcclxuICAgIHJldHVybiB0aGlzLnN0b3JlLnNsaWNlU3RhdGUoc3RhdGUgPT4gc3RhdGUuZmVhdHVyZXM/LnZhbHVlcz8uW2tleV0pO1xyXG4gIH1cclxuXHJcbiAgZ2V0RmVhdHVyZXMoa2V5czogc3RyaW5nW10pIHtcclxuICAgIGNvbnN0IHsgZmVhdHVyZXMgfSA9IHRoaXMuc3RvcmUuc3RhdGU7XHJcbiAgICBpZiAoIWZlYXR1cmVzKSByZXR1cm47XHJcblxyXG4gICAgcmV0dXJuIGtleXMucmVkdWNlKChhY2MsIGtleSkgPT4gKHsgLi4uYWNjLCBba2V5XTogZmVhdHVyZXMudmFsdWVzW2tleV0gfSksIHt9KTtcclxuICB9XHJcblxyXG4gIGdldEZlYXR1cmVzJChrZXlzOiBzdHJpbmdbXSk6IE9ic2VydmFibGU8eyBba2V5OiBzdHJpbmddOiBzdHJpbmcgfSB8IHVuZGVmaW5lZD4ge1xyXG4gICAgcmV0dXJuIHRoaXMuc3RvcmUuc2xpY2VTdGF0ZSgoeyBmZWF0dXJlcyB9KSA9PiB7XHJcbiAgICAgIGlmICghZmVhdHVyZXM/LnZhbHVlcykgcmV0dXJuO1xyXG5cclxuICAgICAgcmV0dXJuIGtleXMucmVkdWNlKChhY2MsIGtleSkgPT4gKHsgLi4uYWNjLCBba2V5XTogZmVhdHVyZXMudmFsdWVzW2tleV0gfSksIHt9KTtcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBpc0ZlYXR1cmVFbmFibGVkKGtleTogc3RyaW5nLCBmZWF0dXJlczogQXBwbGljYXRpb25GZWF0dXJlQ29uZmlndXJhdGlvbkR0bykge1xyXG4gICAgcmV0dXJuIGZlYXR1cmVzLnZhbHVlc1trZXldID09PSAndHJ1ZSc7XHJcbiAgfVxyXG5cclxuICBnZXRGZWF0dXJlSXNFbmFibGVkKGtleTogc3RyaW5nKSB7XHJcbiAgICByZXR1cm4gdGhpcy5pc0ZlYXR1cmVFbmFibGVkKGtleSwgdGhpcy5zdG9yZS5zdGF0ZS5mZWF0dXJlcyk7XHJcbiAgfVxyXG5cclxuICBnZXRGZWF0dXJlSXNFbmFibGVkJChrZXk6IHN0cmluZykge1xyXG4gICAgcmV0dXJuIHRoaXMuc3RvcmUuc2xpY2VTdGF0ZShzdGF0ZSA9PiB0aGlzLmlzRmVhdHVyZUVuYWJsZWQoa2V5LCBzdGF0ZS5mZWF0dXJlcykpO1xyXG4gIH1cclxuXHJcbiAgZ2V0U2V0dGluZyhrZXk6IHN0cmluZykge1xyXG4gICAgcmV0dXJuIHRoaXMuc3RvcmUuc3RhdGUuc2V0dGluZz8udmFsdWVzPy5ba2V5XTtcclxuICB9XHJcblxyXG4gIGdldFNldHRpbmckKGtleTogc3RyaW5nKSB7XHJcbiAgICByZXR1cm4gdGhpcy5zdG9yZS5zbGljZVN0YXRlKHN0YXRlID0+IHN0YXRlLnNldHRpbmc/LnZhbHVlcz8uW2tleV0pO1xyXG4gIH1cclxuXHJcbiAgZ2V0U2V0dGluZ3Moa2V5d29yZD86IHN0cmluZykge1xyXG4gICAgY29uc3Qgc2V0dGluZ3MgPSB0aGlzLnN0b3JlLnN0YXRlLnNldHRpbmc/LnZhbHVlcyB8fCB7fTtcclxuXHJcbiAgICBpZiAoIWtleXdvcmQpIHJldHVybiBzZXR0aW5ncztcclxuXHJcbiAgICBjb25zdCBrZXlzRm91bmQgPSBPYmplY3Qua2V5cyhzZXR0aW5ncykuZmlsdGVyKGtleSA9PiBrZXkuaW5kZXhPZihrZXl3b3JkKSA+IC0xKTtcclxuXHJcbiAgICByZXR1cm4ga2V5c0ZvdW5kLnJlZHVjZShcclxuICAgICAgKGFjYywga2V5KSA9PiB7XHJcbiAgICAgICAgYWNjW2tleV0gPSBzZXR0aW5nc1trZXldO1xyXG4gICAgICAgIHJldHVybiBhY2M7XHJcbiAgICAgIH0sXHJcbiAgICAgIHt9IGFzIFJlY29yZDxzdHJpbmcsIHN0cmluZz4sXHJcbiAgICApO1xyXG4gIH1cclxuXHJcbiAgZ2V0U2V0dGluZ3MkKGtleXdvcmQ/OiBzdHJpbmcpIHtcclxuICAgIHJldHVybiB0aGlzLnN0b3JlXHJcbiAgICAgIC5zbGljZVN0YXRlKHN0YXRlID0+IHN0YXRlLnNldHRpbmc/LnZhbHVlcylcclxuICAgICAgLnBpcGUoXHJcbiAgICAgICAgbWFwKChzZXR0aW5ncyA9IHt9KSA9PiB7XHJcbiAgICAgICAgICBpZiAoIWtleXdvcmQpIHJldHVybiBzZXR0aW5ncztcclxuXHJcbiAgICAgICAgICBjb25zdCBrZXlzRm91bmQgPSBPYmplY3Qua2V5cyhzZXR0aW5ncykuZmlsdGVyKGtleSA9PiBrZXkuaW5kZXhPZihrZXl3b3JkKSA+IC0xKTtcclxuXHJcbiAgICAgICAgICByZXR1cm4ga2V5c0ZvdW5kLnJlZHVjZShcclxuICAgICAgICAgICAgKGFjYywga2V5KSA9PiB7XHJcbiAgICAgICAgICAgICAgYWNjW2tleV0gPSBzZXR0aW5nc1trZXldO1xyXG4gICAgICAgICAgICAgIHJldHVybiBhY2M7XHJcbiAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgIHt9IGFzIFJlY29yZDxzdHJpbmcsIHN0cmluZz4sXHJcbiAgICAgICAgICApO1xyXG4gICAgICAgIH0pLFxyXG4gICAgICApO1xyXG4gIH1cclxuXHJcbiAgZ2V0R2xvYmFsRmVhdHVyZXMoKSB7XHJcbiAgICByZXR1cm4gdGhpcy5zdG9yZS5zdGF0ZS5nbG9iYWxGZWF0dXJlcztcclxuICB9XHJcblxyXG4gIGdldEdsb2JhbEZlYXR1cmVzJCgpIHtcclxuICAgIHJldHVybiB0aGlzLnN0b3JlLnNsaWNlU3RhdGUoc3RhdGUgPT4gc3RhdGUuZ2xvYmFsRmVhdHVyZXMpO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBpc0dsb2JhbEZlYXR1cmVFbmFibGVkKFxyXG4gICAga2V5OiBzdHJpbmcsXHJcbiAgICBnbG9iYWxGZWF0dXJlczogQXBwbGljYXRpb25HbG9iYWxGZWF0dXJlQ29uZmlndXJhdGlvbkR0byxcclxuICApIHtcclxuICAgIGNvbnN0IGZlYXR1cmVzID0gZ2xvYmFsRmVhdHVyZXMuZW5hYmxlZEZlYXR1cmVzIHx8IFtdO1xyXG4gICAgcmV0dXJuIGZlYXR1cmVzLnNvbWUoZiA9PiBrZXkgPT09IGYpO1xyXG4gIH1cclxuXHJcbiAgZ2V0R2xvYmFsRmVhdHVyZUlzRW5hYmxlZChrZXk6IHN0cmluZykge1xyXG4gICAgcmV0dXJuIHRoaXMuaXNHbG9iYWxGZWF0dXJlRW5hYmxlZChrZXksIHRoaXMuc3RvcmUuc3RhdGUuZ2xvYmFsRmVhdHVyZXMpO1xyXG4gIH1cclxuXHJcbiAgZ2V0R2xvYmFsRmVhdHVyZUlzRW5hYmxlZCQoa2V5OiBzdHJpbmcpIHtcclxuICAgIHJldHVybiB0aGlzLnN0b3JlLnNsaWNlU3RhdGUoc3RhdGUgPT4gdGhpcy5pc0dsb2JhbEZlYXR1cmVFbmFibGVkKGtleSwgc3RhdGUuZ2xvYmFsRmVhdHVyZXMpKTtcclxuICB9XHJcbn1cclxuXHJcbmZ1bmN0aW9uIHNwbGl0S2V5cyhrZXlzOiBzdHJpbmdbXSB8IHN0cmluZyk6IHN0cmluZ1tdIHtcclxuICBpZiAodHlwZW9mIGtleXMgPT09ICdzdHJpbmcnKSB7XHJcbiAgICBrZXlzID0ga2V5cy5zcGxpdCgnLicpO1xyXG4gIH1cclxuXHJcbiAgaWYgKCFBcnJheS5pc0FycmF5KGtleXMpKSB7XHJcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ1RoZSBhcmd1bWVudCBtdXN0IGJlIGEgZG90IHN0cmluZyBvciBhbiBzdHJpbmcgYXJyYXkuJyk7XHJcbiAgfVxyXG5cclxuICByZXR1cm4ga2V5cztcclxufVxyXG4iXX0=
@@ -1,6 +1,6 @@
1
1
  import { Injectable, Injector } from '@angular/core';
2
- import { BehaviorSubject, of, ReplaySubject, Subject, } from 'rxjs';
3
- import { catchError, debounceTime, filter, shareReplay, switchMap, takeUntil, tap, } from 'rxjs/operators';
2
+ import { EMPTY, BehaviorSubject, ReplaySubject, Subject, } from 'rxjs';
3
+ import { catchError, debounceTime, filter, finalize, shareReplay, switchMap, takeUntil, tap, } from 'rxjs/operators';
4
4
  import { LIST_QUERY_DEBOUNCE_TIME } from '../tokens/list.token';
5
5
  import * as i0 from "@angular/core";
6
6
  export class ListService {
@@ -55,19 +55,25 @@ export class ListService {
55
55
  .asObservable()
56
56
  .pipe(this.delay, shareReplay({ bufferSize: 1, refCount: true }));
57
57
  }
58
+ /**
59
+ * @deprecated Use `requestStatus$` instead.
60
+ */
58
61
  get isLoading$() {
59
- return this._isLoading$.asObservable();
62
+ return this._isLoading$.asObservable().pipe(takeUntil(this.destroy$));
63
+ }
64
+ get requestStatus$() {
65
+ return this._requestStatus.asObservable().pipe(takeUntil(this.destroy$));
60
66
  }
61
67
  constructor(injector) {
62
68
  this._filter = '';
63
69
  this._maxResultCount = 10;
64
- this._skipCount = 0;
65
70
  this._page = 0;
66
71
  this._totalCount = 0;
67
72
  this._sortKey = '';
68
73
  this._sortOrder = '';
69
74
  this._query$ = new ReplaySubject(1);
70
75
  this._isLoading$ = new BehaviorSubject(false);
76
+ this._requestStatus = new BehaviorSubject('idle');
71
77
  this.destroy$ = new Subject();
72
78
  this.get = () => {
73
79
  this.resetPageWhenUnchanged();
@@ -81,7 +87,13 @@ export class ListService {
81
87
  this.get();
82
88
  }
83
89
  hookToQuery(streamCreatorCallback) {
84
- return this.query$.pipe(tap(() => this._isLoading$.next(true)), switchMap(query => streamCreatorCallback(query).pipe(catchError(() => of(null)))), filter(Boolean), tap(() => this._isLoading$.next(false)), shareReplay({ bufferSize: 1, refCount: true }), takeUntil(this.destroy$));
90
+ return this.query$.pipe(tap(() => this._isLoading$.next(true)), tap(() => this._requestStatus.next('loading')), switchMap(query => streamCreatorCallback(query).pipe(catchError(() => {
91
+ this._requestStatus.next('error');
92
+ return EMPTY;
93
+ }), tap(() => this._requestStatus.next('success')), finalize(() => {
94
+ this._isLoading$.next(false);
95
+ this._requestStatus.next('idle');
96
+ }))), filter(Boolean), shareReplay({ bufferSize: 1, refCount: true }), takeUntil(this.destroy$));
85
97
  }
86
98
  ngOnDestroy() {
87
99
  this.destroy$.next();
@@ -90,11 +102,9 @@ export class ListService {
90
102
  const maxPage = Number(Number(this.totalCount / this._maxResultCount).toFixed());
91
103
  const skipCount = this._page * this._maxResultCount;
92
104
  if (skipCount !== this._totalCount) {
93
- this._skipCount = skipCount;
94
105
  return;
95
106
  }
96
107
  if (this.page === maxPage && this.page > 0) {
97
- this._skipCount = skipCount - this._maxResultCount;
98
108
  this.page = this.page - 1;
99
109
  }
100
110
  }
@@ -112,4 +122,4 @@ export class ListService {
112
122
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.5", ngImport: i0, type: ListService, decorators: [{
113
123
  type: Injectable
114
124
  }], ctorParameters: () => [{ type: i0.Injector }] });
115
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGlzdC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvY29yZS9zcmMvbGliL3NlcnZpY2VzL2xpc3Quc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLFFBQVEsRUFBYSxNQUFNLGVBQWUsQ0FBQztBQUNoRSxPQUFPLEVBQ0wsZUFBZSxFQUdmLEVBQUUsRUFDRixhQUFhLEVBQ2IsT0FBTyxHQUNSLE1BQU0sTUFBTSxDQUFDO0FBQ2QsT0FBTyxFQUNMLFVBQVUsRUFDVixZQUFZLEVBQ1osTUFBTSxFQUNOLFdBQVcsRUFDWCxTQUFTLEVBQ1QsU0FBUyxFQUNULEdBQUcsR0FDSixNQUFNLGdCQUFnQixDQUFDO0FBR3hCLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLHNCQUFzQixDQUFDOztBQUdoRSxNQUFNLE9BQU8sV0FBVztJQUV0QixJQUFJLE1BQU0sQ0FBQyxLQUFhO1FBQ3RCLElBQUksQ0FBQyxPQUFPLEdBQUcsS0FBSyxDQUFDO1FBQ3JCLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQztJQUNiLENBQUM7SUFDRCxJQUFJLE1BQU07UUFDUixPQUFPLElBQUksQ0FBQyxPQUFPLENBQUM7SUFDdEIsQ0FBQztJQUdELElBQUksY0FBYyxDQUFDLEtBQWE7UUFDOUIsSUFBSSxDQUFDLGVBQWUsR0FBRyxLQUFLLENBQUM7UUFDN0IsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDO0lBQ2IsQ0FBQztJQUNELElBQUksY0FBYztRQUNoQixPQUFPLElBQUksQ0FBQyxlQUFlLENBQUM7SUFDOUIsQ0FBQztJQUlELElBQUksSUFBSSxDQUFDLEtBQWE7UUFDcEIsSUFBSSxLQUFLLEtBQUssSUFBSSxDQUFDLEtBQUs7WUFBRSxPQUFPO1FBRWpDLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQ25CLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FB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Q3BDLFNBQVMsRUFBRSxJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxlQUFlO1lBQzVDLE9BQU8sRUFBRSxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxRQUFRLElBQUksSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDLENBQUMsQ0FBQyxTQUFTO1NBQ25ELENBQUMsQ0FBQztJQUMvQixDQUFDOzhHQXBJVSxXQUFXO2tIQUFYLFdBQVc7OzJGQUFYLFdBQVc7a0JBRHZCLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlLCBJbmplY3RvciwgT25EZXN0cm95IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7XHJcbiAgQmVoYXZpb3JTdWJqZWN0LFxyXG4gIE1vbm9UeXBlT3BlcmF0b3JGdW5jdGlvbixcclxuICBPYnNlcnZhYmxlLFxyXG4gIG9mLFxyXG4gIFJlcGxheVN1YmplY3QsXHJcbiAgU3ViamVjdCxcclxufSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHtcclxuICBjYXRjaEVycm9yLFxyXG4gIGRlYm91bmNlVGltZSxcclxuICBmaWx0ZXIsXHJcbiAgc2hhcmVSZXBsYXksXHJcbiAgc3dpdGNoTWFwLFxyXG4gIHRha2VVbnRpbCxcclxuICB0YXAsXHJcbn0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xyXG5pbXBvcnQgeyBBQlAgfSBmcm9tICcuLi9tb2RlbHMvY29tbW9uJztcclxuaW1wb3J0IHsgUGFnZWRSZXN1bHREdG8gfSBmcm9tICcuLi9tb2RlbHMvZHRvcyc7XHJcbmltcG9ydCB7IExJU1RfUVVFUllfREVCT1VOQ0VfVElNRSB9IGZyb20gJy4uL3Rva2Vucy9saXN0LnRva2VuJztcclxuXHJcbkBJbmplY3RhYmxlKClcclxuZXhwb3J0IGNsYXNzIExpc3RTZXJ2aWNlPFF1ZXJ5UGFyYW1zVHlwZSA9IEFCUC5QYWdlUXVlcnlQYXJhbXMgfCBhbnk+IGltcGxlbWVudHMgT25EZXN0cm95IHtcclxuICBwcml2YXRlIF9maWx0ZXIgPSAnJztcclxuICBzZXQgZmlsdGVyKHZhbHVlOiBzdHJpbmcpIHtcclxuICAgIHRoaXMuX2ZpbHRlciA9IHZhbHVlO1xyXG4gICAgdGhpcy5nZXQoKTtcclxuICB9XHJcbiAgZ2V0IGZpbHRlcigpOiBzdHJpbmcge1xyXG4gICAgcmV0dXJuIHRoaXMuX2ZpbHRlcjtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgX21heFJlc3VsdENvdW50ID0gMTA7XHJcbiAgc2V0IG1heFJlc3VsdENvdW50KHZhbHVlOiBudW1iZXIpIHtcclxuICAgIHRoaXMuX21heFJlc3VsdENvdW50ID0gdmFsdWU7XHJcbiAgICB0aGlzLmdldCgpO1xyXG4gIH1cclxuICBnZXQgbWF4UmVzdWx0Q291bnQoKTogbnVtYmVyIHtcclxuICAgIHJldHVybiB0aGlzLl9tYXhSZXN1bHRDb3VudDtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgX3NraXBDb3VudCA9IDA7XHJcbiAgcHJpdmF0ZSBfcGFnZSA9IDA7XHJcbiAgc2V0IHBhZ2UodmFsdWU6IG51bWJlcikge1xyXG4gICAgaWYgKHZhbHVlID09PSB0aGlzLl9wYWdlKSByZXR1cm47XHJcblxyXG4gICAgdGhpcy5fcGFnZSA9IHZhbHVlO1xyXG4gICAgdGhpcy5nZXQoKTtcclxuICB9XHJcbiAgZ2V0IHBhZ2UoKTogbnVtYmVyIHtcclxuICAgIHJldHVybiB0aGlzLl9wYWdlO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBfdG90YWxDb3VudCA9IDA7XHJcbiAgc2V0IHRvdGFsQ291bnQodmFsdWU6IG51bWJlcikge1xyXG4gICAgaWYgKHZhbHVlID09PSB0aGlzLl90b3RhbENvdW50KSByZXR1cm47XHJcblxyXG4gICAgdGhpcy5fdG90YWxDb3VudCA9IHZhbHVlO1xyXG4gICAgdGhpcy5nZXQoKTtcclxuICB9XHJcbiAgZ2V0IHRvdGFsQ291bnQoKTogbnVtYmVyIHtcclxuICAgIHJldHVybiB0aGlzLl90b3RhbENvdW50O1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBfc29ydEtleSA9ICcnO1xyXG4gIHNldCBzb3J0S2V5KHZhbHVlOiBzdHJpbmcpIHtcclxuICAgIHRoaXMuX3NvcnRLZXkgPSB2YWx1ZTtcclxuICAgIHRoaXMuZ2V0KCk7XHJcbiAgfVxyXG4gIGdldCBzb3J0S2V5KCk6IHN0cmluZyB7XHJcbiAgICByZXR1cm4gdGhpcy5fc29ydEtleTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgX3NvcnRPcmRlciA9ICcnO1xyXG4gIHNldCBzb3J0T3JkZXIodmFsdWU6IHN0cmluZykge1xyXG4gICAgdGhpcy5fc29ydE9yZGVyID0gdmFsdWU7XHJcbiAgICB0aGlzLmdldCgpO1xyXG4gIH1cclxuICBnZXQgc29ydE9yZGVyKCk6IHN0cmluZyB7XHJcbiAgICByZXR1cm4gdGhpcy5fc29ydE9yZGVyO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBfcXVlcnkkID0gbmV3IFJlcGxheVN1YmplY3Q8UXVlcnlQYXJhbXNUeXBlPigxKTtcclxuXHJcbiAgZ2V0IHF1ZXJ5JCgpOiBPYnNlcnZhYmxlPFF1ZXJ5UGFyYW1zVHlwZT4ge1xyXG4gICAgcmV0dXJuIHRoaXMuX3F1ZXJ5JFxyXG4gICAgICAuYXNPYnNlcnZhYmxlKClcclxuICAgICAgLnBpcGUodGhpcy5kZWxheSwgc2hhcmVSZXBsYXkoeyBidWZmZXJTaXplOiAxLCByZWZDb3VudDogdHJ1ZSB9KSk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIF9pc0xvYWRpbmckID0gbmV3IEJlaGF2aW9yU3ViamVjdChmYWxzZSk7XHJcblxyXG4gIHByaXZhdGUgZGVzdHJveSQgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xyXG5cclxuICBwcml2YXRlIGRlbGF5OiBNb25vVHlwZU9wZXJhdG9yRnVuY3Rpb248UXVlcnlQYXJhbXNUeXBlPjtcclxuXHJcbiAgZ2V0IGlzTG9hZGluZyQoKTogT2JzZXJ2YWJsZTxib29sZWFuPiB7XHJcbiAgICByZXR1cm4gdGhpcy5faXNMb2FkaW5nJC5hc09ic2VydmFibGUoKTtcclxuICB9XHJcblxyXG4gIGdldCA9ICgpID0+IHtcclxuICAgIHRoaXMucmVzZXRQYWdlV2hlblVuY2hhbmdlZCgpO1xyXG4gICAgdGhpcy5uZXh0KCk7XHJcbiAgfTtcclxuXHJcbiAgZ2V0V2l0aG91dFBhZ2VSZXNldCA9ICgpID0+IHtcclxuICAgIHRoaXMubmV4dCgpO1xyXG4gIH07XHJcblxyXG4gIGNvbnN0cnVjdG9yKGluamVjdG9yOiBJbmplY3Rvcikge1xyXG4gICAgY29uc3QgZGVsYXkgPSBpbmplY3Rvci5nZXQoTElTVF9RVUVSWV9ERUJPVU5DRV9USU1FLCAzMDApO1xyXG4gICAgdGhpcy5kZWxheSA9IGRlbGF5ID8gZGVib3VuY2VUaW1lKGRlbGF5KSA6IHRhcCgpO1xyXG4gICAgdGhpcy5nZXQoKTtcclxuICB9XHJcblxyXG4gIGhvb2tUb1F1ZXJ5PFQ+KFxyXG4gICAgc3RyZWFtQ3JlYXRvckNhbGxiYWNrOiBRdWVyeVN0cmVhbUNyZWF0b3JDYWxsYmFjazxULCBRdWVyeVBhcmFtc1R5cGU+LFxyXG4gICk6IE9ic2VydmFibGU8UGFnZWRSZXN1bHREdG88VD4+IHtcclxuICAgIHJldHVybiB0aGlzLnF1ZXJ5JC5waXBlKFxyXG4gICAgICB0YXAoKCkgPT4gdGhpcy5faXNMb2FkaW5nJC5uZXh0KHRydWUpKSxcclxuICAgICAgc3dpdGNoTWFwKHF1ZXJ5ID0+IHN0cmVhbUNyZWF0b3JDYWxsYmFjayhxdWVyeSkucGlwZShjYXRjaEVycm9yKCgpID0+IG9mKG51bGwpKSkpLFxyXG4gICAgICBmaWx0ZXIoQm9vbGVhbiksXHJcbiAgICAgIHRhcCgoKSA9PiB0aGlzLl9pc0xvYWRpbmckLm5leHQoZmFsc2UpKSxcclxuICAgICAgc2hhcmVSZXBsYXk8YW55Pih7IGJ1ZmZlclNpemU6IDEsIHJlZkNvdW50OiB0cnVlIH0pLFxyXG4gICAgICB0YWtlVW50aWwodGhpcy5kZXN0cm95JCksXHJcbiAgICApO1xyXG4gIH1cclxuXHJcbiAgbmdPbkRlc3Ryb3koKSB7XHJcbiAgICB0aGlzLmRlc3Ryb3kkLm5leHQoKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgcmVzZXRQYWdlV2hlblVuY2hhbmdlZCgpIHtcclxuICAgIGNvbnN0IG1heFBhZ2UgPSBOdW1iZXIoTnVtYmVyKHRoaXMudG90YWxDb3VudCAvIHRoaXMuX21heFJlc3VsdENvdW50KS50b0ZpeGVkKCkpO1xyXG4gICAgY29uc3Qgc2tpcENvdW50ID0gdGhpcy5fcGFnZSAqIHRoaXMuX21heFJlc3VsdENvdW50O1xyXG5cclxuICAgIGlmIChza2lwQ291bnQgIT09IHRoaXMuX3RvdGFsQ291bnQpIHtcclxuICAgICAgdGhpcy5fc2tpcENvdW50ID0gc2tpcENvdW50O1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKHRoaXMucGFnZSA9PT0gbWF4UGFnZSAmJiB0aGlzLnBhZ2UgPiAwKSB7XHJcbiAgICAgIHRoaXMuX3NraXBDb3VudCA9IHNraXBDb3VudCAtIHRoaXMuX21heFJlc3VsdENvdW50O1xyXG4gICAgICB0aGlzLnBhZ2UgPSB0aGlzLnBhZ2UgLSAxO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBuZXh0KCkge1xyXG4gICAgdGhpcy5fcXVlcnkkLm5leHQoe1xyXG4gICAgICBmaWx0ZXI6IHRoaXMuX2ZpbHRlciB8fCB1bmRlZmluZWQsXHJcbiAgICAgIG1heFJlc3VsdENvdW50OiB0aGlzLl9tYXhSZXN1bHRDb3VudCxcclxuICAgICAgc2tpcENvdW50OiB0aGlzLl9wYWdlICogdGhpcy5fbWF4UmVzdWx0Q291bnQsXHJcbiAgICAgIHNvcnRpbmc6IHRoaXMuX3NvcnRPcmRlciA/IGAke3RoaXMuX3NvcnRLZXl9ICR7dGhpcy5fc29ydE9yZGVyfWAgOiB1bmRlZmluZWQsXHJcbiAgICB9IGFzIGFueSBhcyBRdWVyeVBhcmFtc1R5cGUpO1xyXG4gIH1cclxufVxyXG5cclxuZXhwb3J0IHR5cGUgUXVlcnlTdHJlYW1DcmVhdG9yQ2FsbGJhY2s8VCwgUXVlcnlQYXJhbXNUeXBlID0gQUJQLlBhZ2VRdWVyeVBhcmFtcz4gPSAoXHJcbiAgcXVlcnk6IFF1ZXJ5UGFyYW1zVHlwZSxcclxuKSA9PiBPYnNlcnZhYmxlPFBhZ2VkUmVzdWx0RHRvPFQ+PjtcclxuIl19
125
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGlzdC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvY29yZS9zcmMvbGliL3NlcnZpY2VzL2xpc3Quc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLFFBQVEsRUFBYSxNQUFNLGVBQWUsQ0FBQztBQUNoRSxPQUFPLEVBQ0wsS0FBSyxFQUNMLGVBQWUsRUFHZixhQUFhLEVBQ2IsT0FBTyxHQUNSLE1BQU0sTUFBTSxDQUFDO0FBQ2QsT0FBTyxFQUNMLFVBQVUsRUFDVixZQUFZLEVBQ1osTUFBTSxFQUNOLFFBQVEsRUFDUixXQUFXLEVBQ1gsU0FBUyxFQUNULFNBQVMsRUFDVCxHQUFHLEdBQ0osTUFBTSxnQkFBZ0IsQ0FBQztBQUd4QixPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQzs7QUFLaEUsTUFBTSxPQUFPLFdBQVc7SUFFdEIsSUFBSSxNQUFNLENBQUMsS0FBYTtRQUN0QixJQUFJLENBQUMsT0FBTyxHQUFHLEtBQUssQ0FBQztRQUNyQixJQUFJLENBQUMsR0FBRyxFQUFFLENBQUM7SUFDYixDQUFDO0lBQ0QsSUFBSSxNQUFNO1FBQ1IsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDO0lBQ3RCLENBQUM7SUFHRCxJQUFJLGNBQWMsQ0FBQyxLQUFhO1FBQzlCLElBQUksQ0FBQyxlQUFlLEdBQUcsS0FBSyxDQUFDO1FBQzdCLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQztJQUNiLENBQUM7SUFDRCxJQUFJLGNBQWM7UUFDaEIsT0FBTyxJQUFJLENBQUMsZUFBZSxDQUFDO0lBQzlCLENBQUM7SUFHRCxJQUFJLElBQUksQ0FBQyxLQUFhO1FBQ3BCLElBQUksS0FBSyxLQUFLLElBQUksQ0FBQyxLQUFLO1lBQUUsT0FBTztRQUVqQyxJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUNuQixJQUFJLENBQUMsR0FB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UUFDakYsTUFBTSxTQUFTLEdBQUcsSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMsZUFBZSxDQUFDO1FBRXBELElBQUksU0FBUyxLQUFLLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztZQUNuQyxPQUFPO1FBQ1QsQ0FBQztRQUVELElBQUksSUFBSSxDQUFDLElBQUksS0FBSyxPQUFPLElBQUksSUFBSSxDQUFDLElBQUksR0FBRyxDQUFDLEVBQUUsQ0FBQztZQUMzQyxJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQyxJQUFJLEdBQUcsQ0FBQyxDQUFDO1FBQzVCLENBQUM7SUFDSCxDQUFDO0lBRU8sSUFBSTtRQUNWLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDO1lBQ2hCLE1BQU0sRUFBRSxJQUFJLENBQUMsT0FBTyxJQUFJLFNBQVM7WUFDakMsY0FBYyxFQUFFLElBQUksQ0FBQyxlQUFlO1lBQ3BDLFNBQVMsRUFBRSxJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxlQUFlO1lBQzVDLE9BQU8sRUFBRSxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxRQUFRLElBQUksSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDLENBQUMsQ0FBQyxTQUFTO1NBQ25ELENBQUMsQ0FBQztJQUMvQixDQUFDOzhHQXJKVSxXQUFXO2tIQUFYLFdBQVc7OzJGQUFYLFdBQVc7a0JBRHZCLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlLCBJbmplY3RvciwgT25EZXN0cm95IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7XHJcbiAgRU1QVFksXHJcbiAgQmVoYXZpb3JTdWJqZWN0LFxyXG4gIE1vbm9UeXBlT3BlcmF0b3JGdW5jdGlvbixcclxuICBPYnNlcnZhYmxlLFxyXG4gIFJlcGxheVN1YmplY3QsXHJcbiAgU3ViamVjdCxcclxufSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHtcclxuICBjYXRjaEVycm9yLFxyXG4gIGRlYm91bmNlVGltZSxcclxuICBmaWx0ZXIsXHJcbiAgZmluYWxpemUsXHJcbiAgc2hhcmVSZXBsYXksXHJcbiAgc3dpdGNoTWFwLFxyXG4gIHRha2VVbnRpbCxcclxuICB0YXAsXHJcbn0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xyXG5pbXBvcnQgeyBBQlAgfSBmcm9tICcuLi9tb2RlbHMvY29tbW9uJztcclxuaW1wb3J0IHsgUGFnZWRSZXN1bHREdG8gfSBmcm9tICcuLi9tb2RlbHMvZHRvcyc7XHJcbmltcG9ydCB7IExJU1RfUVVFUllfREVCT1VOQ0VfVElNRSB9IGZyb20gJy4uL3Rva2Vucy9saXN0LnRva2VuJztcclxuXHJcbmV4cG9ydCB0eXBlIFJlcXVlc3RTdGF0dXMgPSAnaWRsZScgfCAnbG9hZGluZycgfCAnc3VjY2VzcycgfCAnZXJyb3InO1xyXG5cclxuQEluamVjdGFibGUoKVxyXG5leHBvcnQgY2xhc3MgTGlzdFNlcnZpY2U8UXVlcnlQYXJhbXNUeXBlID0gQUJQLlBhZ2VRdWVyeVBhcmFtcyB8IGFueT4gaW1wbGVtZW50cyBPbkRlc3Ryb3kge1xyXG4gIHByaXZhdGUgX2ZpbHRlciA9ICcnO1xyXG4gIHNldCBmaWx0ZXIodmFsdWU6IHN0cmluZykge1xyXG4gICAgdGhpcy5fZmlsdGVyID0gdmFsdWU7XHJcbiAgICB0aGlzLmdldCgpO1xyXG4gIH1cclxuICBnZXQgZmlsdGVyKCk6IHN0cmluZyB7XHJcbiAgICByZXR1cm4gdGhpcy5fZmlsdGVyO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBfbWF4UmVzdWx0Q291bnQgPSAxMDtcclxuICBzZXQgbWF4UmVzdWx0Q291bnQodmFsdWU6IG51bWJlcikge1xyXG4gICAgdGhpcy5fbWF4UmVzdWx0Q291bnQgPSB2YWx1ZTtcclxuICAgIHRoaXMuZ2V0KCk7XHJcbiAgfVxyXG4gIGdldCBtYXhSZXN1bHRDb3VudCgpOiBudW1iZXIge1xyXG4gICAgcmV0dXJuIHRoaXMuX21heFJlc3VsdENvdW50O1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBfcGFnZSA9IDA7XHJcbiAgc2V0IHBhZ2UodmFsdWU6IG51bWJlcikge1xyXG4gICAgaWYgKHZhbHVlID09PSB0aGlzLl9wYWdlKSByZXR1cm47XHJcblxyXG4gICAgdGhpcy5fcGFnZSA9IHZhbHVlO1xyXG4gICAgdGhpcy5nZXQoKTtcclxuICB9XHJcbiAgZ2V0IHBhZ2UoKTogbnVtYmVyIHtcclxuICAgIHJldHVybiB0aGlzLl9wYWdlO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBfdG90YWxDb3VudCA9IDA7XHJcbiAgc2V0IHRvdGFsQ291bnQodmFsdWU6IG51bWJlcikge1xyXG4gICAgaWYgKHZhbHVlID09PSB0aGlzLl90b3RhbENvdW50KSByZXR1cm47XHJcblxyXG4gICAgdGhpcy5fdG90YWxDb3VudCA9IHZhbHVlO1xyXG4gICAgdGhpcy5nZXQoKTtcclxuICB9XHJcbiAgZ2V0IHRvdGFsQ291bnQoKTogbnVtYmVyIHtcclxuICAgIHJldHVybiB0aGlzLl90b3RhbENvdW50O1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBfc29ydEtleSA9ICcnO1xyXG4gIHNldCBzb3J0S2V5KHZhbHVlOiBzdHJpbmcpIHtcclxuICAgIHRoaXMuX3NvcnRLZXkgPSB2YWx1ZTtcclxuICAgIHRoaXMuZ2V0KCk7XHJcbiAgfVxyXG4gIGdldCBzb3J0S2V5KCk6IHN0cmluZyB7XHJcbiAgICByZXR1cm4gdGhpcy5fc29ydEtleTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgX3NvcnRPcmRlciA9ICcnO1xyXG4gIHNldCBzb3J0T3JkZXIodmFsdWU6IHN0cmluZykge1xyXG4gICAgdGhpcy5fc29ydE9yZGVyID0gdmFsdWU7XHJcbiAgICB0aGlzLmdldCgpO1xyXG4gIH1cclxuICBnZXQgc29ydE9yZGVyKCk6IHN0cmluZyB7XHJcbiAgICByZXR1cm4gdGhpcy5fc29ydE9yZGVyO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBfcXVlcnkkID0gbmV3IFJlcGxheVN1YmplY3Q8UXVlcnlQYXJhbXNUeXBlPigxKTtcclxuXHJcbiAgZ2V0IHF1ZXJ5JCgpOiBPYnNlcnZhYmxlPFF1ZXJ5UGFyYW1zVHlwZT4ge1xyXG4gICAgcmV0dXJuIHRoaXMuX3F1ZXJ5JFxyXG4gICAgICAuYXNPYnNlcnZhYmxlKClcclxuICAgICAgLnBpcGUodGhpcy5kZWxheSwgc2hhcmVSZXBsYXkoeyBidWZmZXJTaXplOiAxLCByZWZDb3VudDogdHJ1ZSB9KSk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIF9pc0xvYWRpbmckID0gbmV3IEJlaGF2aW9yU3ViamVjdChmYWxzZSk7XHJcblxyXG4gIHByaXZhdGUgX3JlcXVlc3RTdGF0dXMgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PFJlcXVlc3RTdGF0dXM+KCdpZGxlJyk7XHJcblxyXG4gIHByaXZhdGUgZGVzdHJveSQgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xyXG5cclxuICBwcml2YXRlIGRlbGF5OiBNb25vVHlwZU9wZXJhdG9yRnVuY3Rpb248UXVlcnlQYXJhbXNUeXBlPjtcclxuXHJcbiAgLyoqXHJcbiAgICogQGRlcHJlY2F0ZWQgVXNlIGByZXF1ZXN0U3RhdHVzJGAgaW5zdGVhZC5cclxuICAgKi9cclxuICBnZXQgaXNMb2FkaW5nJCgpOiBPYnNlcnZhYmxlPGJvb2xlYW4+IHtcclxuICAgIHJldHVybiB0aGlzLl9pc0xvYWRpbmckLmFzT2JzZXJ2YWJsZSgpLnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveSQpKTtcclxuICB9XHJcblxyXG4gIGdldCByZXF1ZXN0U3RhdHVzJCgpOiBPYnNlcnZhYmxlPFJlcXVlc3RTdGF0dXM+IHtcclxuICAgIHJldHVybiB0aGlzLl9yZXF1ZXN0U3RhdHVzLmFzT2JzZXJ2YWJsZSgpLnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveSQpKTtcclxuICB9XHJcblxyXG4gIGdldCA9ICgpID0+IHtcclxuICAgIHRoaXMucmVzZXRQYWdlV2hlblVuY2hhbmdlZCgpO1xyXG4gICAgdGhpcy5uZXh0KCk7XHJcbiAgfTtcclxuXHJcbiAgZ2V0V2l0aG91dFBhZ2VSZXNldCA9ICgpID0+IHtcclxuICAgIHRoaXMubmV4dCgpO1xyXG4gIH07XHJcblxyXG4gIGNvbnN0cnVjdG9yKGluamVjdG9yOiBJbmplY3Rvcikge1xyXG4gICAgY29uc3QgZGVsYXkgPSBpbmplY3Rvci5nZXQoTElTVF9RVUVSWV9ERUJPVU5DRV9USU1FLCAzMDApO1xyXG4gICAgdGhpcy5kZWxheSA9IGRlbGF5ID8gZGVib3VuY2VUaW1lKGRlbGF5KSA6IHRhcCgpO1xyXG4gICAgdGhpcy5nZXQoKTtcclxuICB9XHJcblxyXG4gIGhvb2tUb1F1ZXJ5PFQ+KFxyXG4gICAgc3RyZWFtQ3JlYXRvckNhbGxiYWNrOiBRdWVyeVN0cmVhbUNyZWF0b3JDYWxsYmFjazxULCBRdWVyeVBhcmFtc1R5cGU+LFxyXG4gICk6IE9ic2VydmFibGU8UGFnZWRSZXN1bHREdG88VD4+IHtcclxuICAgIHJldHVybiB0aGlzLnF1ZXJ5JC5waXBlKFxyXG4gICAgICB0YXAoKCkgPT4gdGhpcy5faXNMb2FkaW5nJC5uZXh0KHRydWUpKSxcclxuICAgICAgdGFwKCgpID0+IHRoaXMuX3JlcXVlc3RTdGF0dXMubmV4dCgnbG9hZGluZycpKSxcclxuICAgICAgc3dpdGNoTWFwKHF1ZXJ5ID0+XHJcbiAgICAgICAgc3RyZWFtQ3JlYXRvckNhbGxiYWNrKHF1ZXJ5KS5waXBlKFxyXG4gICAgICAgICAgY2F0Y2hFcnJvcigoKSA9PiB7XHJcbiAgICAgICAgICAgIHRoaXMuX3JlcXVlc3RTdGF0dXMubmV4dCgnZXJyb3InKTtcclxuICAgICAgICAgICAgcmV0dXJuIEVNUFRZO1xyXG4gICAgICAgICAgfSksXHJcbiAgICAgICAgICB0YXAoKCkgPT4gdGhpcy5fcmVxdWVzdFN0YXR1cy5uZXh0KCdzdWNjZXNzJykpLFxyXG4gICAgICAgICAgZmluYWxpemUoKCkgPT4ge1xyXG4gICAgICAgICAgICB0aGlzLl9pc0xvYWRpbmckLm5leHQoZmFsc2UpO1xyXG4gICAgICAgICAgICB0aGlzLl9yZXF1ZXN0U3RhdHVzLm5leHQoJ2lkbGUnKTtcclxuICAgICAgICAgIH0pLFxyXG4gICAgICAgICksXHJcbiAgICAgICksXHJcbiAgICAgIGZpbHRlcihCb29sZWFuKSxcclxuICAgICAgc2hhcmVSZXBsYXk8YW55Pih7IGJ1ZmZlclNpemU6IDEsIHJlZkNvdW50OiB0cnVlIH0pLFxyXG4gICAgICB0YWtlVW50aWwodGhpcy5kZXN0cm95JCksXHJcbiAgICApO1xyXG4gIH1cclxuXHJcbiAgbmdPbkRlc3Ryb3koKSB7XHJcbiAgICB0aGlzLmRlc3Ryb3kkLm5leHQoKTtcclxuICB9XHJcbiAgcHJpdmF0ZSByZXNldFBhZ2VXaGVuVW5jaGFuZ2VkKCkge1xyXG4gICAgY29uc3QgbWF4UGFnZSA9IE51bWJlcihOdW1iZXIodGhpcy50b3RhbENvdW50IC8gdGhpcy5fbWF4UmVzdWx0Q291bnQpLnRvRml4ZWQoKSk7XHJcbiAgICBjb25zdCBza2lwQ291bnQgPSB0aGlzLl9wYWdlICogdGhpcy5fbWF4UmVzdWx0Q291bnQ7XHJcblxyXG4gICAgaWYgKHNraXBDb3VudCAhPT0gdGhpcy5fdG90YWxDb3VudCkge1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKHRoaXMucGFnZSA9PT0gbWF4UGFnZSAmJiB0aGlzLnBhZ2UgPiAwKSB7XHJcbiAgICAgIHRoaXMucGFnZSA9IHRoaXMucGFnZSAtIDE7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIG5leHQoKSB7XHJcbiAgICB0aGlzLl9xdWVyeSQubmV4dCh7XHJcbiAgICAgIGZpbHRlcjogdGhpcy5fZmlsdGVyIHx8IHVuZGVmaW5lZCxcclxuICAgICAgbWF4UmVzdWx0Q291bnQ6IHRoaXMuX21heFJlc3VsdENvdW50LFxyXG4gICAgICBza2lwQ291bnQ6IHRoaXMuX3BhZ2UgKiB0aGlzLl9tYXhSZXN1bHRDb3VudCxcclxuICAgICAgc29ydGluZzogdGhpcy5fc29ydE9yZGVyID8gYCR7dGhpcy5fc29ydEtleX0gJHt0aGlzLl9zb3J0T3JkZXJ9YCA6IHVuZGVmaW5lZCxcclxuICAgIH0gYXMgYW55IGFzIFF1ZXJ5UGFyYW1zVHlwZSk7XHJcbiAgfVxyXG59XHJcblxyXG5leHBvcnQgdHlwZSBRdWVyeVN0cmVhbUNyZWF0b3JDYWxsYmFjazxULCBRdWVyeVBhcmFtc1R5cGUgPSBBQlAuUGFnZVF1ZXJ5UGFyYW1zPiA9IChcclxuICBxdWVyeTogUXVlcnlQYXJhbXNUeXBlLFxyXG4pID0+IE9ic2VydmFibGU8UGFnZWRSZXN1bHREdG88VD4+O1xyXG4iXX0=
@@ -38,4 +38,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.5", ngImpor
38
38
  type: Injectable,
39
39
  args: [{ providedIn: 'root' }]
40
40
  }] });
41
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2luZG93LnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jb3JlL3NyYy9saWIvc2VydmljZXMvd2luZG93LnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbkQsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGlCQUFpQixDQUFDOztBQUczQyxNQUFNLE9BQU8sZ0JBQWdCO0lBRDdCO1FBRXFCLGFBQVEsR0FBRyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDNUIsV0FBTSxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsV0FBVyxDQUFDO1FBQ25DLGNBQVMsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQztLQThCdEQ7SUE1QkMsZUFBZSxDQUFDLElBQVk7UUFDMUIsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDLFNBQVMsQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDbEQsQ0FBQztJQUVELElBQUksQ0FBQyxHQUFrQixFQUFFLE1BQWUsRUFBRSxRQUFpQjtRQUN6RCxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLEdBQUcsRUFBRSxNQUFNLEVBQUUsUUFBUSxDQUFDLENBQUM7SUFDakQsQ0FBQztJQUVELFVBQVU7UUFDUixJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxNQUFNLEVBQUUsQ0FBQztJQUNoQyxDQUFDO0lBQ0QsWUFBWSxDQUFDLElBQVUsRUFBRSxRQUFnQjtRQUN2QyxNQUFNLE9BQU8sR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDdEQsTUFBTSxDQUFDLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxhQUFhLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDM0MsQ0FBQyxDQUFDLEtBQUssQ0FBQyxPQUFPLEdBQUcsTUFBTSxDQUFDO1FBQ3pCLENBQUMsQ0FBQyxJQUFJLEdBQUcsT0FBTyxDQUFDO1FBQ2pCLENBQUMsQ0FBQyxRQUFRLEdBQUcsUUFBUSxDQUFDO1FBQ3RCLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUNsQyxDQUFDLENBQUMsYUFBYSxDQUNiLElBQUksVUFBVSxDQUFDLE9BQU8sRUFBRTtZQUN0QixPQUFPLEVBQUUsSUFBSTtZQUNiLFVBQVUsRUFBRSxJQUFJO1lBQ2hCLElBQUksRUFBRSxJQUFJLENBQUMsTUFBTTtTQUNsQixDQUFDLENBQ0gsQ0FBQztRQUNGLElBQUksQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLGVBQWUsQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUN6QyxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDcEMsQ0FBQzs4R0FoQ1UsZ0JBQWdCO2tIQUFoQixnQkFBZ0IsY0FESCxNQUFNOzsyRkFDbkIsZ0JBQWdCO2tCQUQ1QixVQUFVO21CQUFDLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUsIGluamVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBET0NVTUVOVCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcblxyXG5ASW5qZWN0YWJsZSh7IHByb3ZpZGVkSW46ICdyb290JyB9KVxyXG5leHBvcnQgY2xhc3MgQWJwV2luZG93U2VydmljZSB7XHJcbiAgcHJvdGVjdGVkIHJlYWRvbmx5IGRvY3VtZW50ID0gaW5qZWN0KERPQ1VNRU5UKTtcclxuICBwcm90ZWN0ZWQgcmVhZG9ubHkgd2luZG93ID0gdGhpcy5kb2N1bWVudC5kZWZhdWx0VmlldztcclxuICBwcm90ZWN0ZWQgcmVhZG9ubHkgbmF2aWdhdG9yID0gdGhpcy53aW5kb3cubmF2aWdhdG9yO1xyXG5cclxuICBjb3B5VG9DbGlwYm9hcmQodGV4dDogc3RyaW5nKTogUHJvbWlzZTx2b2lkPiB7XHJcbiAgICByZXR1cm4gdGhpcy5uYXZpZ2F0b3IuY2xpcGJvYXJkLndyaXRlVGV4dCh0ZXh0KTtcclxuICB9XHJcblxyXG4gIG9wZW4odXJsPzogc3RyaW5nIHwgVVJMLCB0YXJnZXQ/OiBzdHJpbmcsIGZlYXR1cmVzPzogc3RyaW5nKTogV2luZG93IHtcclxuICAgIHJldHVybiB0aGlzLndpbmRvdy5vcGVuKHVybCwgdGFyZ2V0LCBmZWF0dXJlcyk7XHJcbiAgfVxyXG5cclxuICByZWxvYWRQYWdlKCk6IHZvaWQge1xyXG4gICAgdGhpcy53aW5kb3cubG9jYXRpb24ucmVsb2FkKCk7XHJcbiAgfVxyXG4gIGRvd25sb2FkQmxvYihibG9iOiBCbG9iLCBmaWxlTmFtZTogc3RyaW5nKSB7XHJcbiAgICBjb25zdCBibG9iVXJsID0gdGhpcy53aW5kb3cuVVJMLmNyZWF0ZU9iamVjdFVSTChibG9iKTtcclxuICAgIGNvbnN0IGEgPSB0aGlzLmRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2EnKTtcclxuICAgIGEuc3R5bGUuZGlzcGxheSA9ICdub25lJztcclxuICAgIGEuaHJlZiA9IGJsb2JVcmw7XHJcbiAgICBhLmRvd25sb2FkID0gZmlsZU5hbWU7XHJcbiAgICB0aGlzLmRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQoYSk7XHJcbiAgICBhLmRpc3BhdGNoRXZlbnQoXHJcbiAgICAgIG5ldyBNb3VzZUV2ZW50KCdjbGljaycsIHtcclxuICAgICAgICBidWJibGVzOiB0cnVlLFxyXG4gICAgICAgIGNhbmNlbGFibGU6IHRydWUsXHJcbiAgICAgICAgdmlldzogdGhpcy53aW5kb3csXHJcbiAgICAgIH0pLFxyXG4gICAgKTtcclxuICAgIHRoaXMud2luZG93LlVSTC5yZXZva2VPYmplY3RVUkwoYmxvYlVybCk7XHJcbiAgICB0aGlzLmRvY3VtZW50LmJvZHkucmVtb3ZlQ2hpbGQoYSk7XHJcbiAgfVxyXG59XHJcbiJdfQ==
41
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2luZG93LnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jb3JlL3NyYy9saWIvc2VydmljZXMvd2luZG93LnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbkQsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGlCQUFpQixDQUFDOztBQUczQyxNQUFNLE9BQU8sZ0JBQWdCO0lBRDdCO1FBRWtCLGFBQVEsR0FBRyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDNUIsV0FBTSxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsV0FBVyxDQUFDO1FBQ25DLGNBQVMsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQztLQThCbkQ7SUE1QkMsZUFBZSxDQUFDLElBQVk7UUFDMUIsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDLFNBQVMsQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDbEQsQ0FBQztJQUVELElBQUksQ0FBQyxHQUFrQixFQUFFLE1BQWUsRUFBRSxRQUFpQjtRQUN6RCxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLEdBQUcsRUFBRSxNQUFNLEVBQUUsUUFBUSxDQUFDLENBQUM7SUFDakQsQ0FBQztJQUVELFVBQVU7UUFDUixJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxNQUFNLEVBQUUsQ0FBQztJQUNoQyxDQUFDO0lBQ0QsWUFBWSxDQUFDLElBQVUsRUFBRSxRQUFnQjtRQUN2QyxNQUFNLE9BQU8sR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDdEQsTUFBTSxDQUFDLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxhQUFhLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDM0MsQ0FBQyxDQUFDLEtBQUssQ0FBQyxPQUFPLEdBQUcsTUFBTSxDQUFDO1FBQ3pCLENBQUMsQ0FBQyxJQUFJLEdBQUcsT0FBTyxDQUFDO1FBQ2pCLENBQUMsQ0FBQyxRQUFRLEdBQUcsUUFBUSxDQUFDO1FBQ3RCLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUNsQyxDQUFDLENBQUMsYUFBYSxDQUNiLElBQUksVUFBVSxDQUFDLE9BQU8sRUFBRTtZQUN0QixPQUFPLEVBQUUsSUFBSTtZQUNiLFVBQVUsRUFBRSxJQUFJO1lBQ2hCLElBQUksRUFBRSxJQUFJLENBQUMsTUFBTTtTQUNsQixDQUFDLENBQ0gsQ0FBQztRQUNGLElBQUksQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLGVBQWUsQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUN6QyxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDcEMsQ0FBQzs4R0FoQ1UsZ0JBQWdCO2tIQUFoQixnQkFBZ0IsY0FESCxNQUFNOzsyRkFDbkIsZ0JBQWdCO2tCQUQ1QixVQUFVO21CQUFDLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUsIGluamVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBET0NVTUVOVCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcblxyXG5ASW5qZWN0YWJsZSh7IHByb3ZpZGVkSW46ICdyb290JyB9KVxyXG5leHBvcnQgY2xhc3MgQWJwV2luZG93U2VydmljZSB7XHJcbiAgcHVibGljIHJlYWRvbmx5IGRvY3VtZW50ID0gaW5qZWN0KERPQ1VNRU5UKTtcclxuICBwdWJsaWMgcmVhZG9ubHkgd2luZG93ID0gdGhpcy5kb2N1bWVudC5kZWZhdWx0VmlldztcclxuICBwdWJsaWMgcmVhZG9ubHkgbmF2aWdhdG9yID0gdGhpcy53aW5kb3cubmF2aWdhdG9yO1xyXG5cclxuICBjb3B5VG9DbGlwYm9hcmQodGV4dDogc3RyaW5nKTogUHJvbWlzZTx2b2lkPiB7XHJcbiAgICByZXR1cm4gdGhpcy5uYXZpZ2F0b3IuY2xpcGJvYXJkLndyaXRlVGV4dCh0ZXh0KTtcclxuICB9XHJcblxyXG4gIG9wZW4odXJsPzogc3RyaW5nIHwgVVJMLCB0YXJnZXQ/OiBzdHJpbmcsIGZlYXR1cmVzPzogc3RyaW5nKTogV2luZG93IHtcclxuICAgIHJldHVybiB0aGlzLndpbmRvdy5vcGVuKHVybCwgdGFyZ2V0LCBmZWF0dXJlcyk7XHJcbiAgfVxyXG5cclxuICByZWxvYWRQYWdlKCk6IHZvaWQge1xyXG4gICAgdGhpcy53aW5kb3cubG9jYXRpb24ucmVsb2FkKCk7XHJcbiAgfVxyXG4gIGRvd25sb2FkQmxvYihibG9iOiBCbG9iLCBmaWxlTmFtZTogc3RyaW5nKSB7XHJcbiAgICBjb25zdCBibG9iVXJsID0gdGhpcy53aW5kb3cuVVJMLmNyZWF0ZU9iamVjdFVSTChibG9iKTtcclxuICAgIGNvbnN0IGEgPSB0aGlzLmRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2EnKTtcclxuICAgIGEuc3R5bGUuZGlzcGxheSA9ICdub25lJztcclxuICAgIGEuaHJlZiA9IGJsb2JVcmw7XHJcbiAgICBhLmRvd25sb2FkID0gZmlsZU5hbWU7XHJcbiAgICB0aGlzLmRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQoYSk7XHJcbiAgICBhLmRpc3BhdGNoRXZlbnQoXHJcbiAgICAgIG5ldyBNb3VzZUV2ZW50KCdjbGljaycsIHtcclxuICAgICAgICBidWJibGVzOiB0cnVlLFxyXG4gICAgICAgIGNhbmNlbGFibGU6IHRydWUsXHJcbiAgICAgICAgdmlldzogdGhpcy53aW5kb3csXHJcbiAgICAgIH0pLFxyXG4gICAgKTtcclxuICAgIHRoaXMud2luZG93LlVSTC5yZXZva2VPYmplY3RVUkwoYmxvYlVybCk7XHJcbiAgICB0aGlzLmRvY3VtZW50LmJvZHkucmVtb3ZlQ2hpbGQoYSk7XHJcbiAgfVxyXG59XHJcbiJdfQ==
@@ -15,7 +15,7 @@ export function createTokenParser(format) {
15
15
  }
16
16
  export function interpolate(text, params) {
17
17
  return text
18
- .replace(/(['"]?\{\s*(\d+)\s*\}['"]?)/g, (_, match, digit) => params[digit] ?? match)
18
+ .replace(/(['"])?\{\s*(\d+)\s*\}\1/g, (_, quote, digit) => (quote ? quote : '') + (params[digit] ?? `{${digit}}`) + (quote ? quote : ''))
19
19
  .replace(/\s+/g, ' ');
20
20
  }
21
21
  export function escapeHtmlChars(value) {
@@ -27,4 +27,4 @@ export function escapeHtmlChars(value) {
27
27
  .replace(/"/g, '"')
28
28
  : value;
29
29
  }
30
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RyaW5nLXV0aWxzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvY29yZS9zcmMvbGliL3V0aWxzL3N0cmluZy11dGlscy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLFVBQVUsaUJBQWlCLENBQUMsTUFBYztJQUM5QyxPQUFPLENBQUMsR0FBVyxFQUFFLEVBQUU7UUFDckIsTUFBTSxNQUFNLEdBQWEsRUFBRSxDQUFDO1FBQzVCLE1BQU0sS0FBSyxHQUFHLE1BQU0sQ0FBQyxPQUFPLENBQUMsS0FBSyxFQUFFLEtBQUssQ0FBQyxDQUFDLE9BQU8sQ0FBQywyQkFBMkIsRUFBRSxDQUFDLENBQUMsRUFBRSxLQUFLLEVBQUUsRUFBRTtZQUMzRixNQUFNLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQ25CLE9BQU8sTUFBTSxDQUFDO1FBQ2hCLENBQUMsQ0FBQyxDQUFDO1FBRUgsTUFBTSxPQUFPLEdBQUcsQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUVsRCxPQUFPLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFO1lBQ2xDLE1BQU0sR0FBRyxHQUFHLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUN0QixHQUFHLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQztZQUNwRCxPQUFPLEdBQUcsQ0FBQztRQUNiLENBQUMsRUFBRSxFQUE4QixDQUFDLENBQUM7SUFDckMsQ0FBQyxDQUFDO0FBQ0osQ0FBQztBQUVELE1BQU0sVUFBVSxXQUFXLENBQUMsSUFBWSxFQUFFLE1BQWdCO0lBQ3hELE9BQU8sSUFBSTtTQUNSLE9BQU8sQ0FBQyw4QkFBOEIsRUFBRSxDQUFDLENBQUMsRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLEVBQUUsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLElBQUksS0FBSyxDQUFDO1NBQ3BGLE9BQU8sQ0FBQyxNQUFNLEVBQUUsR0FBRyxDQUFDLENBQUM7QUFDMUIsQ0FBQztBQUVELE1BQU0sVUFBVSxlQUFlLENBQUMsS0FBVTtJQUN4QyxPQUFPLEtBQUssSUFBSSxPQUFPLEtBQUssS0FBSyxRQUFRO1FBQ3ZDLENBQUMsQ0FBQyxLQUFLO2FBQ0YsT0FBTyxDQUFDLElBQUksRUFBRSxPQUFPLENBQUM7YUFDdEIsT0FBTyxDQUFDLElBQUksRUFBRSxNQUFNLENBQUM7YUFDckIsT0FBTyxDQUFDLElBQUksRUFBRSxNQUFNLENBQUM7YUFDckIsT0FBTyxDQUFDLElBQUksRUFBRSxRQUFRLENBQUM7UUFDNUIsQ0FBQyxDQUFDLEtBQUssQ0FBQztBQUNaLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgZnVuY3Rpb24gY3JlYXRlVG9rZW5QYXJzZXIoZm9ybWF0OiBzdHJpbmcpIHtcclxuICByZXR1cm4gKHN0cjogc3RyaW5nKSA9PiB7XHJcbiAgICBjb25zdCB0b2tlbnM6IHN0cmluZ1tdID0gW107XHJcbiAgICBjb25zdCByZWdleCA9IGZvcm1hdC5yZXBsYWNlKC9cXC4vZywgJ1xcXFwuJykucmVwbGFjZSgvXFx7XFxzPyhbMC05YS16QS1aXSspXFxzP1xcfS9nLCAoXywgdG9rZW4pID0+IHtcclxuICAgICAgdG9rZW5zLnB1c2godG9rZW4pO1xyXG4gICAgICByZXR1cm4gJyguKyknO1xyXG4gICAgfSk7XHJcblxyXG4gICAgY29uc3QgbWF0Y2hlcyA9IChzdHIubWF0Y2gocmVnZXgpIHx8IFtdKS5zbGljZSgxKTtcclxuXHJcbiAgICByZXR1cm4gbWF0Y2hlcy5yZWR1Y2UoKGFjYywgdiwgaSkgPT4ge1xyXG4gICAgICBjb25zdCBrZXkgPSB0b2tlbnNbaV07XHJcbiAgICAgIGFjY1trZXldID0gWy4uLihhY2Nba2V5XSB8fCBbXSksIHZdLmZpbHRlcihCb29sZWFuKTtcclxuICAgICAgcmV0dXJuIGFjYztcclxuICAgIH0sIHt9IGFzIFJlY29yZDxzdHJpbmcsIHN0cmluZ1tdPik7XHJcbiAgfTtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGludGVycG9sYXRlKHRleHQ6IHN0cmluZywgcGFyYW1zOiBzdHJpbmdbXSkge1xyXG4gIHJldHVybiB0ZXh0XHJcbiAgICAucmVwbGFjZSgvKFsnXCJdP1xce1xccyooXFxkKylcXHMqXFx9WydcIl0/KS9nLCAoXywgbWF0Y2gsIGRpZ2l0KSA9PiBwYXJhbXNbZGlnaXRdID8/IG1hdGNoKVxyXG4gICAgLnJlcGxhY2UoL1xccysvZywgJyAnKTtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGVzY2FwZUh0bWxDaGFycyh2YWx1ZTogYW55KSB7XHJcbiAgcmV0dXJuIHZhbHVlICYmIHR5cGVvZiB2YWx1ZSA9PT0gJ3N0cmluZydcclxuICAgID8gdmFsdWVcclxuICAgICAgICAucmVwbGFjZSgvJi9nLCAnJmFtcDsnKVxyXG4gICAgICAgIC5yZXBsYWNlKC88L2csICcmbHQ7JylcclxuICAgICAgICAucmVwbGFjZSgvPi9nLCAnJmd0OycpXHJcbiAgICAgICAgLnJlcGxhY2UoL1wiL2csICcmcXVvdDsnKVxyXG4gICAgOiB2YWx1ZTtcclxufVxyXG4iXX0=
30
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RyaW5nLXV0aWxzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvY29yZS9zcmMvbGliL3V0aWxzL3N0cmluZy11dGlscy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLFVBQVUsaUJBQWlCLENBQUMsTUFBYztJQUM5QyxPQUFPLENBQUMsR0FBVyxFQUFFLEVBQUU7UUFDckIsTUFBTSxNQUFNLEdBQWEsRUFBRSxDQUFDO1FBQzVCLE1BQU0sS0FBSyxHQUFHLE1BQU0sQ0FBQyxPQUFPLENBQUMsS0FBSyxFQUFFLEtBQUssQ0FBQyxDQUFDLE9BQU8sQ0FBQywyQkFBMkIsRUFBRSxDQUFDLENBQUMsRUFBRSxLQUFLLEVBQUUsRUFBRTtZQUMzRixNQUFNLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQ25CLE9BQU8sTUFBTSxDQUFDO1FBQ2hCLENBQUMsQ0FBQyxDQUFDO1FBRUgsTUFBTSxPQUFPLEdBQUcsQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUVsRCxPQUFPLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFO1lBQ2xDLE1BQU0sR0FBRyxHQUFHLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUN0QixHQUFHLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQztZQUNwRCxPQUFPLEdBQUcsQ0FBQztRQUNiLENBQUMsRUFBRSxFQUE4QixDQUFDLENBQUM7SUFDckMsQ0FBQyxDQUFDO0FBQ0osQ0FBQztBQUVELE1BQU0sVUFBVSxXQUFXLENBQUMsSUFBWSxFQUFFLE1BQWdCO0lBQ3pELE9BQU8sSUFBSTtTQUNQLE9BQU8sQ0FBQywyQkFBMkIsRUFBRSxDQUFDLENBQUMsRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLEVBQUUsQ0FDeEQsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLElBQUksSUFBSSxLQUFLLEdBQUcsQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUM5RTtTQUNBLE9BQU8sQ0FBQyxNQUFNLEVBQUUsR0FBRyxDQUFDLENBQUM7QUFDMUIsQ0FBQztBQUVELE1BQU0sVUFBVSxlQUFlLENBQUMsS0FBVTtJQUN4QyxPQUFPLEtBQUssSUFBSSxPQUFPLEtBQUssS0FBSyxRQUFRO1FBQ3ZDLENBQUMsQ0FBQyxLQUFLO2FBQ0YsT0FBTyxDQUFDLElBQUksRUFBRSxPQUFPLENBQUM7YUFDdEIsT0FBTyxDQUFDLElBQUksRUFBRSxNQUFNLENBQUM7YUFDckIsT0FBTyxDQUFDLElBQUksRUFBRSxNQUFNLENBQUM7YUFDckIsT0FBTyxDQUFDLElBQUksRUFBRSxRQUFRLENBQUM7UUFDNUIsQ0FBQyxDQUFDLEtBQUssQ0FBQztBQUNaLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgZnVuY3Rpb24gY3JlYXRlVG9rZW5QYXJzZXIoZm9ybWF0OiBzdHJpbmcpIHtcclxuICByZXR1cm4gKHN0cjogc3RyaW5nKSA9PiB7XHJcbiAgICBjb25zdCB0b2tlbnM6IHN0cmluZ1tdID0gW107XHJcbiAgICBjb25zdCByZWdleCA9IGZvcm1hdC5yZXBsYWNlKC9cXC4vZywgJ1xcXFwuJykucmVwbGFjZSgvXFx7XFxzPyhbMC05YS16QS1aXSspXFxzP1xcfS9nLCAoXywgdG9rZW4pID0+IHtcclxuICAgICAgdG9rZW5zLnB1c2godG9rZW4pO1xyXG4gICAgICByZXR1cm4gJyguKyknO1xyXG4gICAgfSk7XHJcblxyXG4gICAgY29uc3QgbWF0Y2hlcyA9IChzdHIubWF0Y2gocmVnZXgpIHx8IFtdKS5zbGljZSgxKTtcclxuXHJcbiAgICByZXR1cm4gbWF0Y2hlcy5yZWR1Y2UoKGFjYywgdiwgaSkgPT4ge1xyXG4gICAgICBjb25zdCBrZXkgPSB0b2tlbnNbaV07XHJcbiAgICAgIGFjY1trZXldID0gWy4uLihhY2Nba2V5XSB8fCBbXSksIHZdLmZpbHRlcihCb29sZWFuKTtcclxuICAgICAgcmV0dXJuIGFjYztcclxuICAgIH0sIHt9IGFzIFJlY29yZDxzdHJpbmcsIHN0cmluZ1tdPik7XHJcbiAgfTtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGludGVycG9sYXRlKHRleHQ6IHN0cmluZywgcGFyYW1zOiBzdHJpbmdbXSkge1xyXG4gcmV0dXJuIHRleHRcclxuICAgIC5yZXBsYWNlKC8oWydcIl0pP1xce1xccyooXFxkKylcXHMqXFx9XFwxL2csIChfLCBxdW90ZSwgZGlnaXQpID0+IFxyXG4gICAgICAocXVvdGUgPyBxdW90ZSA6ICcnKSArIChwYXJhbXNbZGlnaXRdID8/IGB7JHtkaWdpdH19YCkgKyAocXVvdGUgPyBxdW90ZSA6ICcnKVxyXG4gICAgKVxyXG4gICAgLnJlcGxhY2UoL1xccysvZywgJyAnKTtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGVzY2FwZUh0bWxDaGFycyh2YWx1ZTogYW55KSB7XHJcbiAgcmV0dXJuIHZhbHVlICYmIHR5cGVvZiB2YWx1ZSA9PT0gJ3N0cmluZydcclxuICAgID8gdmFsdWVcclxuICAgICAgICAucmVwbGFjZSgvJi9nLCAnJmFtcDsnKVxyXG4gICAgICAgIC5yZXBsYWNlKC88L2csICcmbHQ7JylcclxuICAgICAgICAucmVwbGFjZSgvPi9nLCAnJmd0OycpXHJcbiAgICAgICAgLnJlcGxhY2UoL1wiL2csICcmcXVvdDsnKVxyXG4gICAgOiB2YWx1ZTtcclxufVxyXG4iXX0=
@@ -94,8 +94,8 @@ export async function defaultLocalErrorHandlerFn({ locale, resolve }) {
94
94
  return;
95
95
  }
96
96
  if (isDevMode()) {
97
- console.error(`Cannot find the ${locale} locale file. You can check how can add new culture at https://docs.abp.io/en/abp/latest/UI/Angular/Localization#adding-a-new-culture`);
97
+ console.error(`Cannot find the ${locale} locale file. You can check how can add new culture at https://abp.io/docs/latest/framework/ui/angular/localization#adding-a-new-culture`);
98
98
  }
99
99
  resolve();
100
100
  }
101
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVnaXN0ZXItbG9jYWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvY29yZS9sb2NhbGUvc3JjL3V0aWxzL3JlZ2lzdGVyLWxvY2FsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDaEQsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQVMxQyxJQUFJLFNBQVMsR0FBRyxFQUErQixDQUFDO0FBUWhELFNBQVMsVUFBVSxDQUFDLE1BQWM7SUFDaEMseUhBQXlIO0lBRXpILE1BQU0sSUFBSSxHQUFHO1FBQ1QsSUFBSSxFQUFFLEdBQUcsRUFBRSxDQUFDLE1BQU0sQ0FBQyw0QkFBNEIsQ0FBQztRQUNoRCxJQUFJLEVBQUUsR0FBRyxFQUFFLENBQUMsTUFBTSxDQUFDLDRCQUE0QixDQUFDO1FBQ2hELElBQUksRUFBRSxHQUFHLEVBQUUsQ0FBQyxNQUFNLENBQUMsNEJBQTRCLENBQUM7UUFDaEQsT0FBTyxFQUFFLEdBQUcsRUFBRSxDQUFDLE1BQU0sQ0FBQywrQkFBK0IsQ0FBQztRQUN0RCxJQUFJLEVBQUUsR0FBRyxFQUFFLENBQUMsTUFBTSxDQUFDLDRCQUE0QixDQUFDO1FBQ2hELElBQUksRUFBRSxHQUFHLEVBQUUsQ0FBQyxNQUFNLENBQUMsNEJBQTRCLENBQUM7UUFDaEQsSUFBSSxFQUFFLEdBQUcsRUFBRSxDQUFDLE1BQU0sQ0FBQyw0QkFBNEIsQ0FBQztRQUNoRCxJQUFJLEVBQUUsR0FBRyxFQUFFLENBQUMsTUFBTSxDQUFDLDRCQUE0QixDQUFDO1FBQ2hELElBQUksRUFBRSxHQUFHLEVBQUUsQ0FBQyxNQUFNLENBQUMsNEJBQTRCLENBQUM7UUFDaEQsSUFBSSxFQUFFLEdBQUcsRUFBRSxDQUFDLE1BQU0sQ0FBQyw0QkFBNEIsQ0FBQztRQUNoRCxJQUFJLEVBQUUsR0FBRyxFQUFFLENBQUMsTUFB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Y2FsZXMgfSBmcm9tICdAYWJwL25nLmNvcmUnO1xyXG5pbXBvcnQgeyBpc0Rldk1vZGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgTG9jYWxlRXJyb3JIYW5kbGVyRGF0YSB7XHJcbiAgcmVzb2x2ZTogYW55O1xyXG4gIHJlamVjdDogYW55O1xyXG4gIGVycm9yOiBhbnk7XHJcbiAgbG9jYWxlOiBzdHJpbmc7XHJcbn1cclxuXHJcbmxldCBsb2NhbGVNYXAgPSB7fSBhcyB7IFtrZXk6IHN0cmluZ106IHN0cmluZyB9O1xyXG5cclxuZXhwb3J0IGludGVyZmFjZSBSZWdpc3RlckxvY2FsZURhdGEge1xyXG4gIGN1bHR1cmVOYW1lTG9jYWxlRmlsZU1hcD86IFJlY29yZDxzdHJpbmcsIHN0cmluZz47XHJcbiAgZXJyb3JIYW5kbGVyRm4/OiAoZGF0YTogTG9jYWxlRXJyb3JIYW5kbGVyRGF0YSkgPT4gYW55O1xyXG59XHJcblxyXG5cclxuZnVuY3Rpb24gbG9hZExvY2FsZShsb2NhbGU6IHN0cmluZykge1xyXG4gIC8vIGhhcmQgY29kZWQgbGlzdCB3b3JrcyB3aXRoIGVzYnVpbGQuIFNvdXJjZSBodHRwczovL2dpdGh1Yi5jb20vYW5ndWxhci9hbmd1bGFyLWNsaS9pc3N1ZXMvMjY5MDQjaXNzdWVjb21tZW50LTE5MDM1OTY1NjNcclxuXHJcbiAgY29uc3QgbGlzdCA9IHtcclxuICAgICAgJ2FyJzogKCkgPT4gaW1wb3J0KCdAYW5ndWxhci9jb21tb24vbG9jYWxlcy9hcicpLFxyXG4gICAgICAnY3MnOiAoKSA9PiBpbXBvcnQoJ0Bhbmd1bGFyL2NvbW1vbi9sb2NhbGVzL2NzJyksXHJcbiAgICAgICdlbic6ICgpID0+IGltcG9ydCgnQGFuZ3VsYXIvY29tbW9uL2xvY2FsZXMvZW4nKSxcclxuICAgICAgJ2VuLUdCJzogKCkgPT4gaW1wb3J0KCdAYW5ndWxhci9jb21tb24vbG9jYWxlcy9lbi1HQicpLFxyXG4gICAgICAnZXMnOiAoKSA9PiBpbXBvcnQoJ0Bhbmd1bGFyL2NvbW1vbi9sb2NhbGVzL2VzJyksXHJcbiAgICAgICdkZSc6ICgpID0+IGltcG9ydCgnQGFuZ3VsYXIvY29tbW9uL2xvY2FsZXMvZGUnKSxcclxuICAgICAgJ2ZpJzogKCkgPT4gaW1wb3J0KCdAYW5ndWxhci9jb21tb24vbG9jYWxlcy9maScpLFxyXG4gICAgICAnZnInOiAoKSA9PiBpbXBvcnQoJ0Bhbmd1bGFyL2NvbW1vbi9sb2NhbGVzL2ZyJyksXHJcbiAgICAgICdoaSc6ICgpID0+IGltcG9ydCgnQGFuZ3VsYXIvY29tbW9uL2xvY2FsZXMvaGknKSxcclxuICAgICAgJ2h1JzogKCkgPT4gaW1wb3J0KCdAYW5ndWxhci9jb21tb24vbG9jYWxlcy9odScpLFxyXG4gICAgICAnaXMnOiAoKSA9PiBpbXBvcnQoJ0Bhbmd1bGFyL2NvbW1vbi9sb2NhbGVzL2lzJyksXHJcbiAgICAgICdpdCc6ICgpID0+IGltcG9ydCgnQGFuZ3VsYXIvY29tbW9uL2xvY2FsZXMvaXQnKSxcclxuICAgICAgJ3B0JzogKCkgPT4gaW1wb3J0KCdAYW5ndWxhci9jb21tb24vbG9jYWxlcy9wdCcpLFxyXG4gICAgICAndHInOiAoKSA9PiBpbXBvcnQoJ0Bhbmd1bGFyL2NvbW1vbi9sb2NhbGVzL3RyJyksXHJcbiAgICAgICdydSc6ICgpID0+IGltcG9ydCgnQGFuZ3VsYXIvY29tbW9uL2xvY2FsZXMvcnUnKSxcclxuICAgICAgJ3JvJzogKCkgPT4gaW1wb3J0KCdAYW5ndWxhci9jb21tb24vbG9jYWxlcy9ybycpLFxyXG4gICAgICAnc2snOiAoKSA9PiBpbXBvcnQoJ0Bhbmd1bGFyL2NvbW1vbi9sb2NhbGVzL3NrJyksXHJcbiAgICAgICdzbCc6ICgpID0+IGltcG9ydCgnQGFuZ3VsYXIvY29tbW9uL2xvY2FsZXMvc2wnKSxcclxuICAgICAgJ3poLUhhbnMnOiAoKSA9PiBpbXBvcnQoJ0Bhbmd1bGFyL2NvbW1vbi9sb2NhbGVzL3poLUhhbnMnKSxcclxuICAgICAgJ3poLUhhbnQnOiAoKSA9PiBpbXBvcnQoJ0Bhbmd1bGFyL2NvbW1vbi9sb2NhbGVzL3poLUhhbnQnKVxyXG4gIH1cclxuICByZXR1cm4gbGlzdFtsb2NhbGVdKCk7XHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiByZWdpc3RlckxvY2FsZUZvckVzQnVpbGQoXHJcbiAge1xyXG4gICAgICBjdWx0dXJlTmFtZUxvY2FsZUZpbGVNYXAgPSB7fSxcclxuICAgICAgZXJyb3JIYW5kbGVyRm4gPSBkZWZhdWx0TG9jYWxFcnJvckhhbmRsZXJGbixcclxuICB9ID0ge30gYXMgUmVnaXN0ZXJMb2NhbGVEYXRhLFxyXG4pIHtcclxuICByZXR1cm4gKGxvY2FsZTogc3RyaW5nKTogUHJvbWlzZTxhbnk+ID0+IHtcclxuICAgICAgbG9jYWxlTWFwID0geyAuLi5kaWZmZXJlbnRMb2NhbGVzLCAuLi5jdWx0dXJlTmFtZUxvY2FsZUZpbGVNYXAgfTtcclxuICAgICAgY29uc3QgbCA9IGxvY2FsZU1hcFtsb2NhbGVdIHx8IGxvY2FsZTtcclxuICAgICAgY29uc3QgbG9jYWxlU3VwcG9ydExpc3QgPSBcImFyfGNzfGVufGVuLUdCfGVzfGRlfGZpfGZyfGhpfGh1fGlzfGl0fHB0fHRyfHJ1fHJvfHNrfHNsfHpoLUhhbnN8emgtSGFudFwiLnNwbGl0KFwifFwiKTtcclxuXHJcbiAgICAgIGlmIChsb2NhbGVTdXBwb3J0TGlzdC5pbmRleE9mKGxvY2FsZSkgPT0gLTEpIHtcclxuICAgICAgICAgIHJldHVybjtcclxuICAgICAgfVxyXG4gICAgICByZXR1cm4gbmV3IFByb21pc2UoKHJlc29sdmUsIHJlamVjdCkgPT4ge1xyXG4gICAgICAgICAgcmV0dXJuIGxvYWRMb2NhbGUobClcclxuICAgICAgICAgICAgICAudGhlbih2YWwgPT4ge1xyXG4gICAgICAgICAgICAgICAgICBsZXQgbW9kdWxlID0gdmFsO1xyXG4gICAgICAgICAgICAgICAgICB3aGlsZSAobW9kdWxlLmRlZmF1bHQpIHtcclxuICAgICAgICAgICAgICAgICAgICAgIG1vZHVsZSA9IG1vZHVsZS5kZWZhdWx0O1xyXG4gICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgIHJlc29sdmUoeyBkZWZhdWx0OiBtb2R1bGUgfSk7XHJcbiAgICAgICAgICAgICAgfSlcclxuICAgICAgICAgICAgICAuY2F0Y2goZXJyb3IgPT4ge1xyXG4gICAgICAgICAgICAgICAgICBlcnJvckhhbmRsZXJGbih7XHJcbiAgICAgICAgICAgICAgICAgICAgICByZXNvbHZlLFxyXG4gICAgICAgICAgICAgICAgICAgICAgcmVqZWN0LFxyXG4gICAgICAgICAgICAgICAgICAgICAgZXJyb3IsXHJcbiAgICAgICAgICAgICAgICAgICAgICBsb2NhbGUsXHJcbiAgICAgICAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICAgIH0pO1xyXG4gICAgICB9KTtcclxuICB9O1xyXG59XHJcblxyXG5cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiByZWdpc3RlckxvY2FsZShcclxuICB7XHJcbiAgICBjdWx0dXJlTmFtZUxvY2FsZUZpbGVNYXAgPSB7fSxcclxuICAgIGVycm9ySGFuZGxlckZuID0gZGVmYXVsdExvY2FsRXJyb3JIYW5kbGVyRm4sXHJcbiAgfSA9IHt9IGFzIFJlZ2lzdGVyTG9jYWxlRGF0YSxcclxuKSB7XHJcbiAgcmV0dXJuIChsb2NhbGU6IHN0cmluZyk6IFByb21pc2U8YW55PiA9PiB7XHJcbiAgICBsb2NhbGVNYXAgPSB7IC4uLmRpZmZlcmVudExvY2FsZXMsIC4uLmN1bHR1cmVOYW1lTG9jYWxlRmlsZU1hcCB9O1xyXG4gICAgY29uc3QgbG9jYWxlUGF0aCA9IGAvbG9jYWxlcy8ke2xvY2FsZU1hcFtsb2NhbGVdIHx8IGxvY2FsZX1gO1xyXG4gICAgcmV0dXJuIG5ldyBQcm9taXNlKChyZXNvbHZlLCByZWplY3QpID0+IHtcclxuICAgICAgcmV0dXJuIGltcG9ydChcclxuICAgICAgICAvKiB3ZWJwYWNrTW9kZTogXCJsYXp5LW9uY2VcIiAqL1xyXG4gICAgICAgIC8qIHdlYnBhY2tDaHVua05hbWU6IFwibG9jYWxlc1wiKi9cclxuICAgICAgICAvKiB3ZWJwYWNrSW5jbHVkZTogL1svXFxcXF0oYXJ8Y3N8ZW58ZW4tR0J8ZXN8ZGV8Zml8ZnJ8aGl8aHV8aXN8aXR8cHR8dHJ8cnV8cm98c2t8c2x8emgtSGFuc3x6aC1IYW50KVxcLihtanN8anMpJC8gKi9cclxuICAgICAgICAvKiB3ZWJwYWNrRXhjbHVkZTogL1svXFxcXF1nbG9iYWx8ZXh0cmEvICovXHJcbiAgICAgICAgYEBhbmd1bGFyL2NvbW1vbiR7bG9jYWxlUGF0aH1gXHJcbiAgICAgIClcclxuICAgICAgICAudGhlbih2YWwgPT4ge1xyXG4gICAgICAgICAgbGV0IG1vZHVsZSA9IHZhbDtcclxuICAgICAgICAgIHdoaWxlIChtb2R1bGUuZGVmYXVsdCkge1xyXG4gICAgICAgICAgICBtb2R1bGUgPSBtb2R1bGUuZGVmYXVsdDtcclxuICAgICAgICAgIH1cclxuICAgICAgICAgIHJlc29sdmUoeyBkZWZhdWx0OiBtb2R1bGUgfSk7XHJcbiAgICAgICAgfSlcclxuICAgICAgICAuY2F0Y2goZXJyb3IgPT4ge1xyXG4gICAgICAgICAgZXJyb3JIYW5kbGVyRm4oe1xyXG4gICAgICAgICAgICByZXNvbHZlLFxyXG4gICAgICAgICAgICByZWplY3QsXHJcbiAgICAgICAgICAgIGVycm9yLFxyXG4gICAgICAgICAgICBsb2NhbGUsXHJcbiAgICAgICAgICB9KTtcclxuICAgICAgICB9KTtcclxuICAgIH0pO1xyXG4gIH07XHJcbn1cclxuXHJcbmNvbnN0IGV4dHJhTG9jYWxlcyA9IHt9IGFzIHsgW2tleTogc3RyaW5nXTogYW55IH07XHJcbmV4cG9ydCBmdW5jdGlvbiBzdG9yZUxvY2FsZURhdGEoZGF0YTogYW55LCBsb2NhbGVJZDogc3RyaW5nKSB7XHJcbiAgZXh0cmFMb2NhbGVzW2xvY2FsZUlkXSA9IGRhdGE7XHJcbn1cclxuXHJcbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBkZWZhdWx0TG9jYWxFcnJvckhhbmRsZXJGbih7IGxvY2FsZSwgcmVzb2x2ZSB9OiBMb2NhbGVFcnJvckhhbmRsZXJEYXRhKSB7XHJcbiAgaWYgKGV4dHJhTG9jYWxlc1tsb2NhbGVdKSB7XHJcbiAgICByZXNvbHZlKHsgZGVmYXVsdDogZXh0cmFMb2NhbGVzW2xvY2FsZU1hcFtsb2NhbGVdIHx8IGxvY2FsZV0gfSk7XHJcbiAgICByZXR1cm47XHJcbiAgfVxyXG5cclxuICBpZiAoaXNEZXZNb2RlKCkpIHtcclxuICAgIGNvbnNvbGUuZXJyb3IoXHJcbiAgICAgIGBDYW5ub3QgZmluZCB0aGUgJHtsb2NhbGV9IGxvY2FsZSBmaWxlLiBZb3UgY2FuIGNoZWNrIGhvdyBjYW4gYWRkIG5ldyBjdWx0dXJlIGF0IGh0dHBzOi8vZG9jcy5hYnAuaW8vZW4vYWJwL2xhdGVzdC9VSS9Bbmd1bGFyL0xvY2FsaXphdGlvbiNhZGRpbmctYS1uZXctY3VsdHVyZWAsXHJcbiAgICApO1xyXG4gIH1cclxuXHJcbiAgcmVzb2x2ZSgpO1xyXG59XHJcbiJdfQ==
101
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVnaXN0ZXItbG9jYWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvY29yZS9sb2NhbGUvc3JjL3V0aWxzL3JlZ2lzdGVyLWxvY2FsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDaEQsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQVMxQyxJQUFJLFNBQVMsR0FBRyxFQUErQixDQUFDO0FBUWhELFNBQVMsVUFBVSxDQUFDLE1BQWM7SUFDaEMseUhBQXlIO0lBRXpILE1BQU0sSUFBSSxHQUFHO1FBQ1QsSUFBSSxFQUFFLEdBQUcsRUFBRSxDQUFDLE1BQU0sQ0FBQyw0QkFBNEIsQ0FBQztRQUNoRCxJQUFJLEVBQUUsR0FBRyxFQUFFLENBQUMsTUFBTSxDQUFDLDRCQUE0QixDQUFDO1FBQ2hELElBQUksRUFBRSxHQUFHLEVBQUUsQ0FBQyxNQUFNLENBQUMsNEJBQTRCLENBQUM7UUFDaEQsT0FBTyxFQUFFLEdBQUcsRUFBRSxDQUFDLE1BQU0sQ0FBQywrQkFBK0IsQ0FBQztRQUN0RCxJQUFJLEVBQUUsR0FBRyxFQUFFLENBQUMsTUFBTSxDQUFDLDRCQUE0QixDQUFDO1FBQ2hELElBQUksRUFBRSxHQUFHLEVBQUUsQ0FBQyxNQUFNLENBQUMsNEJBQTRCLENBQUM7UUFDaEQsSUFBSSxFQUFFLEdBQUcsRUFBRSxDQUFDLE1BQU0sQ0FBQyw0QkFBNEIsQ0FBQztRQUNoRCxJQUFJLEVBQUUsR0FBRyxFQUFFLENBQUMsTUFBTSxDQUFDLDRCQUE0QixDQUFDO1FBQ2hELElBQUksRUFBRSxHQUFHLEVBQUUsQ0FBQyxNQUFNLENBQUMsNEJBQTRCLENBQUM7UUFDaEQsSUFBSSxFQUFFLEdBQUcsRUFBRSxDQUFDLE1BQU0sQ0FBQyw0QkFBNEIsQ0FBQztRQUNoRCxJQUFJLEVBQUUsR0FBRyxFQUFFLENBQUMsTUFBTSxDQUFDLDRCQUE0QixDQUFDO1FBQ2hELElBQUksRUFBRSxHQUFHLEVBQUUsQ0FBQyxNQUFNLENBQUMsNEJBQTRCLENBQUM7UUFDaEQsSUFBSSxFQUFFLEdBQUcsRUFBRSxDQUFDLE1BQU0sQ0FBQyw0QkFBNEIsQ0FBQztRQUNoRCxJQUFJLEVBQUUsR0FBRyxFQUFFLENBQUMsTUFBTSxDQUFDLDRCQUE0QixDQUFDO1FBQ2hELElBQUksRUFBRSxHQUFHLEVBQUUsQ0FBQyxNQUFNLENBQUMsNEJBQTRCLENBQUM7UUFDaEQsSUFBSSxFQUFFLEdBQUcsRUFBRSxDQUFDLE1BQU0sQ0FBQyw0QkFBNEIsQ0FBQztRQUNoRCxJQUFJLEVBQUUsR0FBRyxFQUFFLENBQUMsTUFBTSxDQUFDLDRCQUE0QixDQUFDO1FBQ2hELElBQUksRUFBRSxHQUFHLEVBQUUsQ0FBQyxNQUFNLENBQUMsNEJBQTRCLENBQUM7UUFDaEQsU0FBUyxFQUFFLEdBQUcsRUFBRSxDQUFDLE1BQU0sQ0FBQyxpQ0FBaUMsQ0FBQztRQUMxRCxTQUFTLEVBQUUsR0FBRyxFQUFFLENBQUMsTUFBTSxDQUFDLGlDQUFpQyxDQUFDO0tBQzdELENBQUE7SUFDRCxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDO0FBQ3hCLENBQUM7QUFFRCxNQUFNLFVBQVUsd0JBQXdCLENBQ3RDLEVBQ0ksd0JBQXdCLEdBQUcsRUFBRSxFQUM3QixjQUFjLEdBQUcsMEJBQTBCLE1BQzNDLEVBQXdCO0lBRTVCLE9BQU8sQ0FBQyxNQUFjLEVBQWdCLEVBQUU7UUFDcEMsU0FBUyxHQUFHLEVBQUUsR0FBRyxnQkFBZ0IsRUFBRSxHQUFHLHdCQUF3QixFQUFFLENBQUM7UUFDakUsTUFBTSxDQUFDLEdBQUcsU0FBUyxDQUFDLE1BQU0sQ0FBQyxJQUFJLE1BQU0sQ0FBQztRQUN0QyxNQUFNLGlCQUFpQixHQUFHLDBFQUEwRSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUVoSCxJQUFJLGlCQUFpQixDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUMsRUFBRSxDQUFDO1lBQzFDLE9BQU87UUFDWCxDQUFDO1FBQ0QsT0FBTyxJQUFJLE9BQU8sQ0FBQyxDQUFDLE9BQU8sRUFBRSxNQUFNLEVBQUUsRUFBRTtZQUNuQyxPQUFPLFVBQVUsQ0FBQyxDQUFDLENBQUM7aUJBQ2YsSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFO2dCQUNSLElBQUksTUFBTSxHQUFHLEdBQUcsQ0FBQztnQkFDakIsT0FBTyxNQUFNLENBQUMsT0FBTyxFQUFFLENBQUM7b0JBQ3BCLE1BQU0sR0FBRyxNQUFNLENBQUMsT0FBTyxDQUFDO2dCQUM1QixDQUFDO2dCQUNELE9BQU8sQ0FBQyxFQUFFLE9BQU8sRUFBRSxNQUFNLEVBQUUsQ0FBQyxDQUFDO1lBQ2pDLENBQUMsQ0FBQztpQkFDRCxLQUFLLENBQUMsS0FBSyxDQUFDLEVBQUU7Z0JBQ1gsY0FBYyxDQUFDO29CQUNYLE9BQU87b0JBQ1AsTUFBTTtvQkFDTixLQUFLO29CQUNMLE1BQU07aUJBQ1QsQ0FBQyxDQUFDO1lBQ1AsQ0FBQyxDQUFDLENBQUM7UUFDWCxDQUFDLENBQUMsQ0FBQztJQUNQLENBQUMsQ0FBQztBQUNKLENBQUM7QUFJRCxNQUFNLFVBQVUsY0FBYyxDQUM1QixFQUNFLHdCQUF3QixHQUFHLEVBQUUsRUFDN0IsY0FBYyxHQUFHLDBCQUEwQixNQUN6QyxFQUF3QjtJQUU1QixPQUFPLENBQUMsTUFBYyxFQUFnQixFQUFFO1FBQ3RDLFNBQVMsR0FBRyxFQUFFLEdBQUcsZ0JBQWdCLEVBQUUsR0FBRyx3QkFBd0IsRUFBRSxDQUFDO1FBQ2pFLE1BQU0sVUFBVSxHQUFHLFlBQVksU0FBUyxDQUFDLE1BQU0sQ0FBQyxJQUFJLE1BQU0sRUFBRSxDQUFDO1FBQzdELE9BQU8sSUFBSSxPQUFPLENBQUMsQ0FBQyxPQUFPLEVBQUUsTUFBTSxFQUFFLEVBQUU7WUFDckMsT0FBTyxNQUFNO1lBQ1gsOEJBQThCO1lBQzlCLGdDQUFnQztZQUNoQyxrSEFBa0g7WUFDbEgseUNBQXlDO1lBQ3pDLGtCQUFrQixVQUFVLEVBQUUsQ0FDL0I7aUJBQ0UsSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFO2dCQUNWLElBQUksTUFBTSxHQUFHLEdBQUcsQ0FBQztnQkFDakIsT0FBTyxNQUFNLENBQUMsT0FBTyxFQUFFLENBQUM7b0JBQ3RCLE1BQU0sR0FBRyxNQUFNLENBQUMsT0FBTyxDQUFDO2dCQUMxQixDQUFDO2dCQUNELE9BQU8sQ0FBQyxFQUFFLE9BQU8sRUFBRSxNQUFNLEVBQUUsQ0FBQyxDQUFDO1lBQy9CLENBQUMsQ0FBQztpQkFDRCxLQUFLLENBQUMsS0FBSyxDQUFDLEVBQUU7Z0JBQ2IsY0FBYyxDQUFDO29CQUNiLE9BQU87b0JBQ1AsTUFBTTtvQkFDTixLQUFLO29CQUNMLE1BQU07aUJBQ1AsQ0FBQyxDQUFDO1lBQ0wsQ0FBQyxDQUFDLENBQUM7UUFDUCxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUMsQ0FBQztBQUNKLENBQUM7QUFFRCxNQUFNLFlBQVksR0FBRyxFQUE0QixDQUFDO0FBQ2xELE1BQU0sVUFBVSxlQUFlLENBQUMsSUFBUyxFQUFFLFFBQWdCO0lBQ3pELFlBQVksQ0FBQyxRQUFRLENBQUMsR0FBRyxJQUFJLENBQUM7QUFDaEMsQ0FBQztBQUVELE1BQU0sQ0FBQyxLQUFLLFVBQVUsMEJBQTBCLENBQUMsRUFBRSxNQUFNLEVBQUUsT0FBTyxFQUEwQjtJQUMxRixJQUFJLFlBQVksQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDO1FBQ3pCLE9BQU8sQ0FBQyxFQUFFLE9BQU8sRUFBRSxZQUFZLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxJQUFJLE1BQU0sQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUNoRSxPQUFPO0lBQ1QsQ0FBQztJQUVELElBQUksU0FBUyxFQUFFLEVBQUUsQ0FBQztRQUNoQixPQUFPLENBQUMsS0FBSyxDQUNYLG1CQUFtQixNQUFNLDBJQUEwSSxDQUNwSyxDQUFDO0lBQ0osQ0FBQztJQUVELE9BQU8sRUFBRSxDQUFDO0FBQ1osQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGRpZmZlcmVudExvY2FsZXMgfSBmcm9tICdAYWJwL25nLmNvcmUnO1xyXG5pbXBvcnQgeyBpc0Rldk1vZGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgTG9jYWxlRXJyb3JIYW5kbGVyRGF0YSB7XHJcbiAgcmVzb2x2ZTogYW55O1xyXG4gIHJlamVjdDogYW55O1xyXG4gIGVycm9yOiBhbnk7XHJcbiAgbG9jYWxlOiBzdHJpbmc7XHJcbn1cclxuXHJcbmxldCBsb2NhbGVNYXAgPSB7fSBhcyB7IFtrZXk6IHN0cmluZ106IHN0cmluZyB9O1xyXG5cclxuZXhwb3J0IGludGVyZmFjZSBSZWdpc3RlckxvY2FsZURhdGEge1xyXG4gIGN1bHR1cmVOYW1lTG9jYWxlRmlsZU1hcD86IFJlY29yZDxzdHJpbmcsIHN0cmluZz47XHJcbiAgZXJyb3JIYW5kbGVyRm4/OiAoZGF0YTogTG9jYWxlRXJyb3JIYW5kbGVyRGF0YSkgPT4gYW55O1xyXG59XHJcblxyXG5cclxuZnVuY3Rpb24gbG9hZExvY2FsZShsb2NhbGU6IHN0cmluZykge1xyXG4gIC8vIGhhcmQgY29kZWQgbGlzdCB3b3JrcyB3aXRoIGVzYnVpbGQuIFNvdXJjZSBodHRwczovL2dpdGh1Yi5jb20vYW5ndWxhci9hbmd1bGFyLWNsaS9pc3N1ZXMvMjY5MDQjaXNzdWVjb21tZW50LTE5MDM1OTY1NjNcclxuXHJcbiAgY29uc3QgbGlzdCA9IHtcclxuICAgICAgJ2FyJzogKCkgPT4gaW1wb3J0KCdAYW5ndWxhci9jb21tb24vbG9jYWxlcy9hcicpLFxyXG4gICAgICAnY3MnOiAoKSA9PiBpbXBvcnQoJ0Bhbmd1bGFyL2NvbW1vbi9sb2NhbGVzL2NzJyksXHJcbiAgICAgICdlbic6ICgpID0+IGltcG9ydCgnQGFuZ3VsYXIvY29tbW9uL2xvY2FsZXMvZW4nKSxcclxuICAgICAgJ2VuLUdCJzogKCkgPT4gaW1wb3J0KCdAYW5ndWxhci9jb21tb24vbG9jYWxlcy9lbi1HQicpLFxyXG4gICAgICAnZXMnOiAoKSA9PiBpbXBvcnQoJ0Bhbmd1bGFyL2NvbW1vbi9sb2NhbGVzL2VzJyksXHJcbiAgICAgICdkZSc6ICgpID0+IGltcG9ydCgnQGFuZ3VsYXIvY29tbW9uL2xvY2FsZXMvZGUnKSxcclxuICAgICAgJ2ZpJzogKCkgPT4gaW1wb3J0KCdAYW5ndWxhci9jb21tb24vbG9jYWxlcy9maScpLFxyXG4gICAgICAnZnInOiAoKSA9PiBpbXBvcnQoJ0Bhbmd1bGFyL2NvbW1vbi9sb2NhbGVzL2ZyJyksXHJcbiAgICAgICdoaSc6ICgpID0+IGltcG9ydCgnQGFuZ3VsYXIvY29tbW9uL2xvY2FsZXMvaGknKSxcclxuICAgICAgJ2h1JzogKCkgPT4gaW1wb3J0KCdAYW5ndWxhci9jb21tb24vbG9jYWxlcy9odScpLFxyXG4gICAgICAnaXMnOiAoKSA9PiBpbXBvcnQoJ0Bhbmd1bGFyL2NvbW1vbi9sb2NhbGVzL2lzJyksXHJcbiAgICAgICdpdCc6ICgpID0+IGltcG9ydCgnQGFuZ3VsYXIvY29tbW9uL2xvY2FsZXMvaXQnKSxcclxuICAgICAgJ3B0JzogKCkgPT4gaW1wb3J0KCdAYW5ndWxhci9jb21tb24vbG9jYWxlcy9wdCcpLFxyXG4gICAgICAndHInOiAoKSA9PiBpbXBvcnQoJ0Bhbmd1bGFyL2NvbW1vbi9sb2NhbGVzL3RyJyksXHJcbiAgICAgICdydSc6ICgpID0+IGltcG9ydCgnQGFuZ3VsYXIvY29tbW9uL2xvY2FsZXMvcnUnKSxcclxuICAgICAgJ3JvJzogKCkgPT4gaW1wb3J0KCdAYW5ndWxhci9jb21tb24vbG9jYWxlcy9ybycpLFxyXG4gICAgICAnc2snOiAoKSA9PiBpbXBvcnQoJ0Bhbmd1bGFyL2NvbW1vbi9sb2NhbGVzL3NrJyksXHJcbiAgICAgICdzbCc6ICgpID0+IGltcG9ydCgnQGFuZ3VsYXIvY29tbW9uL2xvY2FsZXMvc2wnKSxcclxuICAgICAgJ3poLUhhbnMnOiAoKSA9PiBpbXBvcnQoJ0Bhbmd1bGFyL2NvbW1vbi9sb2NhbGVzL3poLUhhbnMnKSxcclxuICAgICAgJ3poLUhhbnQnOiAoKSA9PiBpbXBvcnQoJ0Bhbmd1bGFyL2NvbW1vbi9sb2NhbGVzL3poLUhhbnQnKVxyXG4gIH1cclxuICByZXR1cm4gbGlzdFtsb2NhbGVdKCk7XHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiByZWdpc3RlckxvY2FsZUZvckVzQnVpbGQoXHJcbiAge1xyXG4gICAgICBjdWx0dXJlTmFtZUxvY2FsZUZpbGVNYXAgPSB7fSxcclxuICAgICAgZXJyb3JIYW5kbGVyRm4gPSBkZWZhdWx0TG9jYWxFcnJvckhhbmRsZXJGbixcclxuICB9ID0ge30gYXMgUmVnaXN0ZXJMb2NhbGVEYXRhLFxyXG4pIHtcclxuICByZXR1cm4gKGxvY2FsZTogc3RyaW5nKTogUHJvbWlzZTxhbnk+ID0+IHtcclxuICAgICAgbG9jYWxlTWFwID0geyAuLi5kaWZmZXJlbnRMb2NhbGVzLCAuLi5jdWx0dXJlTmFtZUxvY2FsZUZpbGVNYXAgfTtcclxuICAgICAgY29uc3QgbCA9IGxvY2FsZU1hcFtsb2NhbGVdIHx8IGxvY2FsZTtcclxuICAgICAgY29uc3QgbG9jYWxlU3VwcG9ydExpc3QgPSBcImFyfGNzfGVufGVuLUdCfGVzfGRlfGZpfGZyfGhpfGh1fGlzfGl0fHB0fHRyfHJ1fHJvfHNrfHNsfHpoLUhhbnN8emgtSGFudFwiLnNwbGl0KFwifFwiKTtcclxuXHJcbiAgICAgIGlmIChsb2NhbGVTdXBwb3J0TGlzdC5pbmRleE9mKGxvY2FsZSkgPT0gLTEpIHtcclxuICAgICAgICAgIHJldHVybjtcclxuICAgICAgfVxyXG4gICAgICByZXR1cm4gbmV3IFByb21pc2UoKHJlc29sdmUsIHJlamVjdCkgPT4ge1xyXG4gICAgICAgICAgcmV0dXJuIGxvYWRMb2NhbGUobClcclxuICAgICAgICAgICAgICAudGhlbih2YWwgPT4ge1xyXG4gICAgICAgICAgICAgICAgICBsZXQgbW9kdWxlID0gdmFsO1xyXG4gICAgICAgICAgICAgICAgICB3aGlsZSAobW9kdWxlLmRlZmF1bHQpIHtcclxuICAgICAgICAgICAgICAgICAgICAgIG1vZHVsZSA9IG1vZHVsZS5kZWZhdWx0O1xyXG4gICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgIHJlc29sdmUoeyBkZWZhdWx0OiBtb2R1bGUgfSk7XHJcbiAgICAgICAgICAgICAgfSlcclxuICAgICAgICAgICAgICAuY2F0Y2goZXJyb3IgPT4ge1xyXG4gICAgICAgICAgICAgICAgICBlcnJvckhhbmRsZXJGbih7XHJcbiAgICAgICAgICAgICAgICAgICAgICByZXNvbHZlLFxyXG4gICAgICAgICAgICAgICAgICAgICAgcmVqZWN0LFxyXG4gICAgICAgICAgICAgICAgICAgICAgZXJyb3IsXHJcbiAgICAgICAgICAgICAgICAgICAgICBsb2NhbGUsXHJcbiAgICAgICAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICAgIH0pO1xyXG4gICAgICB9KTtcclxuICB9O1xyXG59XHJcblxyXG5cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiByZWdpc3RlckxvY2FsZShcclxuICB7XHJcbiAgICBjdWx0dXJlTmFtZUxvY2FsZUZpbGVNYXAgPSB7fSxcclxuICAgIGVycm9ySGFuZGxlckZuID0gZGVmYXVsdExvY2FsRXJyb3JIYW5kbGVyRm4sXHJcbiAgfSA9IHt9IGFzIFJlZ2lzdGVyTG9jYWxlRGF0YSxcclxuKSB7XHJcbiAgcmV0dXJuIChsb2NhbGU6IHN0cmluZyk6IFByb21pc2U8YW55PiA9PiB7XHJcbiAgICBsb2NhbGVNYXAgPSB7IC4uLmRpZmZlcmVudExvY2FsZXMsIC4uLmN1bHR1cmVOYW1lTG9jYWxlRmlsZU1hcCB9O1xyXG4gICAgY29uc3QgbG9jYWxlUGF0aCA9IGAvbG9jYWxlcy8ke2xvY2FsZU1hcFtsb2NhbGVdIHx8IGxvY2FsZX1gO1xyXG4gICAgcmV0dXJuIG5ldyBQcm9taXNlKChyZXNvbHZlLCByZWplY3QpID0+IHtcclxuICAgICAgcmV0dXJuIGltcG9ydChcclxuICAgICAgICAvKiB3ZWJwYWNrTW9kZTogXCJsYXp5LW9uY2VcIiAqL1xyXG4gICAgICAgIC8qIHdlYnBhY2tDaHVua05hbWU6IFwibG9jYWxlc1wiKi9cclxuICAgICAgICAvKiB3ZWJwYWNrSW5jbHVkZTogL1svXFxcXF0oYXJ8Y3N8ZW58ZW4tR0J8ZXN8ZGV8Zml8ZnJ8aGl8aHV8aXN8aXR8cHR8dHJ8cnV8cm98c2t8c2x8emgtSGFuc3x6aC1IYW50KVxcLihtanN8anMpJC8gKi9cclxuICAgICAgICAvKiB3ZWJwYWNrRXhjbHVkZTogL1svXFxcXF1nbG9iYWx8ZXh0cmEvICovXHJcbiAgICAgICAgYEBhbmd1bGFyL2NvbW1vbiR7bG9jYWxlUGF0aH1gXHJcbiAgICAgIClcclxuICAgICAgICAudGhlbih2YWwgPT4ge1xyXG4gICAgICAgICAgbGV0IG1vZHVsZSA9IHZhbDtcclxuICAgICAgICAgIHdoaWxlIChtb2R1bGUuZGVmYXVsdCkge1xyXG4gICAgICAgICAgICBtb2R1bGUgPSBtb2R1bGUuZGVmYXVsdDtcclxuICAgICAgICAgIH1cclxuICAgICAgICAgIHJlc29sdmUoeyBkZWZhdWx0OiBtb2R1bGUgfSk7XHJcbiAgICAgICAgfSlcclxuICAgICAgICAuY2F0Y2goZXJyb3IgPT4ge1xyXG4gICAgICAgICAgZXJyb3JIYW5kbGVyRm4oe1xyXG4gICAgICAgICAgICByZXNvbHZlLFxyXG4gICAgICAgICAgICByZWplY3QsXHJcbiAgICAgICAgICAgIGVycm9yLFxyXG4gICAgICAgICAgICBsb2NhbGUsXHJcbiAgICAgICAgICB9KTtcclxuICAgICAgICB9KTtcclxuICAgIH0pO1xyXG4gIH07XHJcbn1cclxuXHJcbmNvbnN0IGV4dHJhTG9jYWxlcyA9IHt9IGFzIHsgW2tleTogc3RyaW5nXTogYW55IH07XHJcbmV4cG9ydCBmdW5jdGlvbiBzdG9yZUxvY2FsZURhdGEoZGF0YTogYW55LCBsb2NhbGVJZDogc3RyaW5nKSB7XHJcbiAgZXh0cmFMb2NhbGVzW2xvY2FsZUlkXSA9IGRhdGE7XHJcbn1cclxuXHJcbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBkZWZhdWx0TG9jYWxFcnJvckhhbmRsZXJGbih7IGxvY2FsZSwgcmVzb2x2ZSB9OiBMb2NhbGVFcnJvckhhbmRsZXJEYXRhKSB7XHJcbiAgaWYgKGV4dHJhTG9jYWxlc1tsb2NhbGVdKSB7XHJcbiAgICByZXNvbHZlKHsgZGVmYXVsdDogZXh0cmFMb2NhbGVzW2xvY2FsZU1hcFtsb2NhbGVdIHx8IGxvY2FsZV0gfSk7XHJcbiAgICByZXR1cm47XHJcbiAgfVxyXG5cclxuICBpZiAoaXNEZXZNb2RlKCkpIHtcclxuICAgIGNvbnNvbGUuZXJyb3IoXHJcbiAgICAgIGBDYW5ub3QgZmluZCB0aGUgJHtsb2NhbGV9IGxvY2FsZSBmaWxlLiBZb3UgY2FuIGNoZWNrIGhvdyBjYW4gYWRkIG5ldyBjdWx0dXJlIGF0IGh0dHBzOi8vYWJwLmlvL2RvY3MvbGF0ZXN0L2ZyYW1ld29yay91aS9hbmd1bGFyL2xvY2FsaXphdGlvbiNhZGRpbmctYS1uZXctY3VsdHVyZWAsXHJcbiAgICApO1xyXG4gIH1cclxuXHJcbiAgcmVzb2x2ZSgpO1xyXG59XHJcbiJdfQ==
@@ -95,7 +95,7 @@ async function defaultLocalErrorHandlerFn({ locale, resolve }) {
95
95
  return;
96
96
  }
97
97
  if (isDevMode()) {
98
- console.error(`Cannot find the ${locale} locale file. You can check how can add new culture at https://docs.abp.io/en/abp/latest/UI/Angular/Localization#adding-a-new-culture`);
98
+ console.error(`Cannot find the ${locale} locale file. You can check how can add new culture at https://abp.io/docs/latest/framework/ui/angular/localization#adding-a-new-culture`);
99
99
  }
100
100
  resolve();
101
101
  }
@@ -1 +1 @@
1
- {"version":3,"file":"abp-ng.core-locale.mjs","sources":["../../../../packages/core/locale/src/utils/register-locale.ts","../../../../packages/core/locale/src/abp-ng.core-locale.ts"],"sourcesContent":["import { differentLocales } from '@abp/ng.core';\r\nimport { isDevMode } from '@angular/core';\r\n\r\nexport interface LocaleErrorHandlerData {\r\n resolve: any;\r\n reject: any;\r\n error: any;\r\n locale: string;\r\n}\r\n\r\nlet localeMap = {} as { [key: string]: string };\r\n\r\nexport interface RegisterLocaleData {\r\n cultureNameLocaleFileMap?: Record<string, string>;\r\n errorHandlerFn?: (data: LocaleErrorHandlerData) => any;\r\n}\r\n\r\n\r\nfunction loadLocale(locale: string) {\r\n // hard coded list works with esbuild. Source https://github.com/angular/angular-cli/issues/26904#issuecomment-1903596563\r\n\r\n const list = {\r\n 'ar': () => import('@angular/common/locales/ar'),\r\n 'cs': () => import('@angular/common/locales/cs'),\r\n 'en': () => import('@angular/common/locales/en'),\r\n 'en-GB': () => import('@angular/common/locales/en-GB'),\r\n 'es': () => import('@angular/common/locales/es'),\r\n 'de': () => import('@angular/common/locales/de'),\r\n 'fi': () => import('@angular/common/locales/fi'),\r\n 'fr': () => import('@angular/common/locales/fr'),\r\n 'hi': () => import('@angular/common/locales/hi'),\r\n 'hu': () => import('@angular/common/locales/hu'),\r\n 'is': () => import('@angular/common/locales/is'),\r\n 'it': () => import('@angular/common/locales/it'),\r\n 'pt': () => import('@angular/common/locales/pt'),\r\n 'tr': () => import('@angular/common/locales/tr'),\r\n 'ru': () => import('@angular/common/locales/ru'),\r\n 'ro': () => import('@angular/common/locales/ro'),\r\n 'sk': () => import('@angular/common/locales/sk'),\r\n 'sl': () => import('@angular/common/locales/sl'),\r\n 'zh-Hans': () => import('@angular/common/locales/zh-Hans'),\r\n 'zh-Hant': () => import('@angular/common/locales/zh-Hant')\r\n }\r\n return list[locale]();\r\n}\r\n\r\nexport function registerLocaleForEsBuild(\r\n {\r\n cultureNameLocaleFileMap = {},\r\n errorHandlerFn = defaultLocalErrorHandlerFn,\r\n } = {} as RegisterLocaleData,\r\n) {\r\n return (locale: string): Promise<any> => {\r\n localeMap = { ...differentLocales, ...cultureNameLocaleFileMap };\r\n const l = localeMap[locale] || locale;\r\n const localeSupportList = \"ar|cs|en|en-GB|es|de|fi|fr|hi|hu|is|it|pt|tr|ru|ro|sk|sl|zh-Hans|zh-Hant\".split(\"|\");\r\n\r\n if (localeSupportList.indexOf(locale) == -1) {\r\n return;\r\n }\r\n return new Promise((resolve, reject) => {\r\n return loadLocale(l)\r\n .then(val => {\r\n let module = val;\r\n while (module.default) {\r\n module = module.default;\r\n }\r\n resolve({ default: module });\r\n })\r\n .catch(error => {\r\n errorHandlerFn({\r\n resolve,\r\n reject,\r\n error,\r\n locale,\r\n });\r\n });\r\n });\r\n };\r\n}\r\n\r\n\r\n\r\nexport function registerLocale(\r\n {\r\n cultureNameLocaleFileMap = {},\r\n errorHandlerFn = defaultLocalErrorHandlerFn,\r\n } = {} as RegisterLocaleData,\r\n) {\r\n return (locale: string): Promise<any> => {\r\n localeMap = { ...differentLocales, ...cultureNameLocaleFileMap };\r\n const localePath = `/locales/${localeMap[locale] || locale}`;\r\n return new Promise((resolve, reject) => {\r\n return import(\r\n /* webpackMode: \"lazy-once\" */\r\n /* webpackChunkName: \"locales\"*/\r\n /* webpackInclude: /[/\\\\](ar|cs|en|en-GB|es|de|fi|fr|hi|hu|is|it|pt|tr|ru|ro|sk|sl|zh-Hans|zh-Hant)\\.(mjs|js)$/ */\r\n /* webpackExclude: /[/\\\\]global|extra/ */\r\n `@angular/common${localePath}`\r\n )\r\n .then(val => {\r\n let module = val;\r\n while (module.default) {\r\n module = module.default;\r\n }\r\n resolve({ default: module });\r\n })\r\n .catch(error => {\r\n errorHandlerFn({\r\n resolve,\r\n reject,\r\n error,\r\n locale,\r\n });\r\n });\r\n });\r\n };\r\n}\r\n\r\nconst extraLocales = {} as { [key: string]: any };\r\nexport function storeLocaleData(data: any, localeId: string) {\r\n extraLocales[localeId] = data;\r\n}\r\n\r\nexport async function defaultLocalErrorHandlerFn({ locale, resolve }: LocaleErrorHandlerData) {\r\n if (extraLocales[locale]) {\r\n resolve({ default: extraLocales[localeMap[locale] || locale] });\r\n return;\r\n }\r\n\r\n if (isDevMode()) {\r\n console.error(\r\n `Cannot find the ${locale} locale file. You can check how can add new culture at https://docs.abp.io/en/abp/latest/UI/Angular/Localization#adding-a-new-culture`,\r\n );\r\n }\r\n\r\n resolve();\r\n}\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"abp-ng.core-locale.mjs","sources":["../../../../packages/core/locale/src/utils/register-locale.ts","../../../../packages/core/locale/src/abp-ng.core-locale.ts"],"sourcesContent":["import { differentLocales } from '@abp/ng.core';\r\nimport { isDevMode } from '@angular/core';\r\n\r\nexport interface LocaleErrorHandlerData {\r\n resolve: any;\r\n reject: any;\r\n error: any;\r\n locale: string;\r\n}\r\n\r\nlet localeMap = {} as { [key: string]: string };\r\n\r\nexport interface RegisterLocaleData {\r\n cultureNameLocaleFileMap?: Record<string, string>;\r\n errorHandlerFn?: (data: LocaleErrorHandlerData) => any;\r\n}\r\n\r\n\r\nfunction loadLocale(locale: string) {\r\n // hard coded list works with esbuild. Source https://github.com/angular/angular-cli/issues/26904#issuecomment-1903596563\r\n\r\n const list = {\r\n 'ar': () => import('@angular/common/locales/ar'),\r\n 'cs': () => import('@angular/common/locales/cs'),\r\n 'en': () => import('@angular/common/locales/en'),\r\n 'en-GB': () => import('@angular/common/locales/en-GB'),\r\n 'es': () => import('@angular/common/locales/es'),\r\n 'de': () => import('@angular/common/locales/de'),\r\n 'fi': () => import('@angular/common/locales/fi'),\r\n 'fr': () => import('@angular/common/locales/fr'),\r\n 'hi': () => import('@angular/common/locales/hi'),\r\n 'hu': () => import('@angular/common/locales/hu'),\r\n 'is': () => import('@angular/common/locales/is'),\r\n 'it': () => import('@angular/common/locales/it'),\r\n 'pt': () => import('@angular/common/locales/pt'),\r\n 'tr': () => import('@angular/common/locales/tr'),\r\n 'ru': () => import('@angular/common/locales/ru'),\r\n 'ro': () => import('@angular/common/locales/ro'),\r\n 'sk': () => import('@angular/common/locales/sk'),\r\n 'sl': () => import('@angular/common/locales/sl'),\r\n 'zh-Hans': () => import('@angular/common/locales/zh-Hans'),\r\n 'zh-Hant': () => import('@angular/common/locales/zh-Hant')\r\n }\r\n return list[locale]();\r\n}\r\n\r\nexport function registerLocaleForEsBuild(\r\n {\r\n cultureNameLocaleFileMap = {},\r\n errorHandlerFn = defaultLocalErrorHandlerFn,\r\n } = {} as RegisterLocaleData,\r\n) {\r\n return (locale: string): Promise<any> => {\r\n localeMap = { ...differentLocales, ...cultureNameLocaleFileMap };\r\n const l = localeMap[locale] || locale;\r\n const localeSupportList = \"ar|cs|en|en-GB|es|de|fi|fr|hi|hu|is|it|pt|tr|ru|ro|sk|sl|zh-Hans|zh-Hant\".split(\"|\");\r\n\r\n if (localeSupportList.indexOf(locale) == -1) {\r\n return;\r\n }\r\n return new Promise((resolve, reject) => {\r\n return loadLocale(l)\r\n .then(val => {\r\n let module = val;\r\n while (module.default) {\r\n module = module.default;\r\n }\r\n resolve({ default: module });\r\n })\r\n .catch(error => {\r\n errorHandlerFn({\r\n resolve,\r\n reject,\r\n error,\r\n locale,\r\n });\r\n });\r\n });\r\n };\r\n}\r\n\r\n\r\n\r\nexport function registerLocale(\r\n {\r\n cultureNameLocaleFileMap = {},\r\n errorHandlerFn = defaultLocalErrorHandlerFn,\r\n } = {} as RegisterLocaleData,\r\n) {\r\n return (locale: string): Promise<any> => {\r\n localeMap = { ...differentLocales, ...cultureNameLocaleFileMap };\r\n const localePath = `/locales/${localeMap[locale] || locale}`;\r\n return new Promise((resolve, reject) => {\r\n return import(\r\n /* webpackMode: \"lazy-once\" */\r\n /* webpackChunkName: \"locales\"*/\r\n /* webpackInclude: /[/\\\\](ar|cs|en|en-GB|es|de|fi|fr|hi|hu|is|it|pt|tr|ru|ro|sk|sl|zh-Hans|zh-Hant)\\.(mjs|js)$/ */\r\n /* webpackExclude: /[/\\\\]global|extra/ */\r\n `@angular/common${localePath}`\r\n )\r\n .then(val => {\r\n let module = val;\r\n while (module.default) {\r\n module = module.default;\r\n }\r\n resolve({ default: module });\r\n })\r\n .catch(error => {\r\n errorHandlerFn({\r\n resolve,\r\n reject,\r\n error,\r\n locale,\r\n });\r\n });\r\n });\r\n };\r\n}\r\n\r\nconst extraLocales = {} as { [key: string]: any };\r\nexport function storeLocaleData(data: any, localeId: string) {\r\n extraLocales[localeId] = data;\r\n}\r\n\r\nexport async function defaultLocalErrorHandlerFn({ locale, resolve }: LocaleErrorHandlerData) {\r\n if (extraLocales[locale]) {\r\n resolve({ default: extraLocales[localeMap[locale] || locale] });\r\n return;\r\n }\r\n\r\n if (isDevMode()) {\r\n console.error(\r\n `Cannot find the ${locale} locale file. You can check how can add new culture at https://abp.io/docs/latest/framework/ui/angular/localization#adding-a-new-culture`,\r\n );\r\n }\r\n\r\n resolve();\r\n}\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  import * as i0 from '@angular/core';
2
2
  import { inject, ChangeDetectorRef, Component, Input, Injectable, InjectionToken, NgModuleFactory, Injector, Compiler, Inject, signal, computed, effect, Optional, isDevMode, SkipSelf, Directive, EventEmitter, Output, Self, Pipe, NgModule, LOCALE_ID, SecurityContext, APP_INITIALIZER, makeEnvironmentProviders, ElementRef, HostListener, ComponentFactoryResolver, ApplicationRef } from '@angular/core';
3
- import { of, BehaviorSubject, Subject, throwError, firstValueFrom, lastValueFrom, Observable, timer, pipe, concat, ReplaySubject, map as map$1, Subscription, combineLatest, from, fromEvent } from 'rxjs';
3
+ import { of, BehaviorSubject, Subject, throwError, firstValueFrom, lastValueFrom, Observable, timer, pipe, concat, ReplaySubject, EMPTY, map as map$1, Subscription, combineLatest, from, fromEvent } from 'rxjs';
4
4
  import * as i1$1 from '@angular/router';
5
5
  import { PRIMARY_OUTLET, NavigationCancel, NavigationEnd, NavigationError, NavigationStart, Router, TitleStrategy, ActivatedRoute, RouterModule } from '@angular/router';
6
6
  import * as i1$2 from '@angular/common';
@@ -263,7 +263,7 @@ function createTokenParser(format) {
263
263
  }
264
264
  function interpolate(text, params) {
265
265
  return text
266
- .replace(/(['"]?\{\s*(\d+)\s*\}['"]?)/g, (_, match, digit) => params[digit] ?? match)
266
+ .replace(/(['"])?\{\s*(\d+)\s*\}\1/g, (_, quote, digit) => (quote ? quote : '') + (params[digit] ?? `{${digit}}`) + (quote ? quote : ''))
267
267
  .replace(/\s+/g, ' ');
268
268
  }
269
269
  function escapeHtmlChars(value) {
@@ -1479,19 +1479,25 @@ class ListService {
1479
1479
  .asObservable()
1480
1480
  .pipe(this.delay, shareReplay({ bufferSize: 1, refCount: true }));
1481
1481
  }
1482
+ /**
1483
+ * @deprecated Use `requestStatus$` instead.
1484
+ */
1482
1485
  get isLoading$() {
1483
- return this._isLoading$.asObservable();
1486
+ return this._isLoading$.asObservable().pipe(takeUntil(this.destroy$));
1487
+ }
1488
+ get requestStatus$() {
1489
+ return this._requestStatus.asObservable().pipe(takeUntil(this.destroy$));
1484
1490
  }
1485
1491
  constructor(injector) {
1486
1492
  this._filter = '';
1487
1493
  this._maxResultCount = 10;
1488
- this._skipCount = 0;
1489
1494
  this._page = 0;
1490
1495
  this._totalCount = 0;
1491
1496
  this._sortKey = '';
1492
1497
  this._sortOrder = '';
1493
1498
  this._query$ = new ReplaySubject(1);
1494
1499
  this._isLoading$ = new BehaviorSubject(false);
1500
+ this._requestStatus = new BehaviorSubject('idle');
1495
1501
  this.destroy$ = new Subject();
1496
1502
  this.get = () => {
1497
1503
  this.resetPageWhenUnchanged();
@@ -1505,7 +1511,13 @@ class ListService {
1505
1511
  this.get();
1506
1512
  }
1507
1513
  hookToQuery(streamCreatorCallback) {
1508
- return this.query$.pipe(tap(() => this._isLoading$.next(true)), switchMap(query => streamCreatorCallback(query).pipe(catchError(() => of(null)))), filter(Boolean), tap(() => this._isLoading$.next(false)), shareReplay({ bufferSize: 1, refCount: true }), takeUntil(this.destroy$));
1514
+ return this.query$.pipe(tap(() => this._isLoading$.next(true)), tap(() => this._requestStatus.next('loading')), switchMap(query => streamCreatorCallback(query).pipe(catchError(() => {
1515
+ this._requestStatus.next('error');
1516
+ return EMPTY;
1517
+ }), tap(() => this._requestStatus.next('success')), finalize(() => {
1518
+ this._isLoading$.next(false);
1519
+ this._requestStatus.next('idle');
1520
+ }))), filter(Boolean), shareReplay({ bufferSize: 1, refCount: true }), takeUntil(this.destroy$));
1509
1521
  }
1510
1522
  ngOnDestroy() {
1511
1523
  this.destroy$.next();
@@ -1514,11 +1526,9 @@ class ListService {
1514
1526
  const maxPage = Number(Number(this.totalCount / this._maxResultCount).toFixed());
1515
1527
  const skipCount = this._page * this._maxResultCount;
1516
1528
  if (skipCount !== this._totalCount) {
1517
- this._skipCount = skipCount;
1518
1529
  return;
1519
1530
  }
1520
1531
  if (this.page === maxPage && this.page > 0) {
1521
- this._skipCount = skipCount - this._maxResultCount;
1522
1532
  this.page = this.page - 1;
1523
1533
  }
1524
1534
  }
@@ -2219,7 +2229,8 @@ class ConfigStateService {
2219
2229
  if (!appState.localization.currentCulture.cultureName) {
2220
2230
  throw new Error('culture name should defined');
2221
2231
  }
2222
- return this.getlocalizationResource(appState.localization.currentCulture.cultureName).pipe(map(result => ({ ...appState, localization: { ...appState.localization, ...result } })));
2232
+ const cultureName = this.uiCultureFromAuthCodeFlow ?? appState.localization.currentCulture.cultureName;
2233
+ return this.getlocalizationResource(cultureName).pipe(map(result => ({ ...appState, localization: { ...appState.localization, ...result } })), tap(() => (this.uiCultureFromAuthCodeFlow = undefined)));
2223
2234
  }
2224
2235
  getlocalizationResource(cultureName) {
2225
2236
  return this.abpApplicationLocalizationService.get({
@@ -2292,6 +2303,15 @@ class ConfigStateService {
2292
2303
  return keys.reduce((acc, key) => ({ ...acc, [key]: features.values[key] }), {});
2293
2304
  });
2294
2305
  }
2306
+ isFeatureEnabled(key, features) {
2307
+ return features.values[key] === 'true';
2308
+ }
2309
+ getFeatureIsEnabled(key) {
2310
+ return this.isFeatureEnabled(key, this.store.state.features);
2311
+ }
2312
+ getFeatureIsEnabled$(key) {
2313
+ return this.store.sliceState(state => this.isFeatureEnabled(key, state.features));
2314
+ }
2295
2315
  getSetting(key) {
2296
2316
  return this.store.state.setting?.values?.[key];
2297
2317
  }