@abp/ng.core 8.3.0 → 8.3.2

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).
@@ -1,2 +1,2 @@
1
1
  export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW52aXJvbm1lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jb3JlL3NyYy9saWIvbW9kZWxzL2Vudmlyb25tZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBdXRoQ29uZmlnIH0gZnJvbSAnYW5ndWxhci1vYXV0aDItb2lkYyc7XHJcbmltcG9ydCB7IEFCUCB9IGZyb20gJy4vY29tbW9uJztcclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgRW52aXJvbm1lbnQge1xyXG4gIGFwaXM6IEFwaXM7XHJcbiAgYXBwbGljYXRpb246IEFwcGxpY2F0aW9uSW5mbztcclxuICBobXI/OiBib29sZWFuO1xyXG4gIHRlc3Q/OiBib29sZWFuO1xyXG4gIGxvY2FsaXphdGlvbj86IHsgZGVmYXVsdFJlc291cmNlTmFtZT86IHN0cmluZyB9O1xyXG4gIG9BdXRoQ29uZmlnPzogQXV0aENvbmZpZztcclxuICBwcm9kdWN0aW9uOiBib29sZWFuO1xyXG4gIHJlbW90ZUVudj86IFJlbW90ZUVudjtcclxuICBba2V5OiBzdHJpbmddOiBhbnk7IC8vIGVzbGludC1kaXNhYmxlLWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWV4cGxpY2l0LWFueVxyXG59XHJcbmV4cG9ydCBpbnRlcmZhY2UgQXBwbGljYXRpb25JbmZvIHtcclxuICBuYW1lOiBzdHJpbmc7XHJcbiAgYmFzZVVybD86IHN0cmluZztcclxuICBsb2dvVXJsPzogc3RyaW5nO1xyXG59XHJcbmV4cG9ydCBpbnRlcmZhY2UgSGFzQWRkaXRpb25hbCB7XHJcbiAgW2tleTogc3RyaW5nXTogc3RyaW5nO1xyXG59XHJcbmV4cG9ydCBpbnRlcmZhY2UgQXBpQ29uZmlnIGV4dGVuZHMgUGFydGlhbDxIYXNBZGRpdGlvbmFsPiB7XHJcbiAgdXJsOiBzdHJpbmc7XHJcbiAgcm9vdE5hbWVzcGFjZT86IHN0cmluZztcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBBcGlzIHtcclxuICBba2V5OiBzdHJpbmddOiBQYXJ0aWFsPEFwaUNvbmZpZz47XHJcbiAgZGVmYXVsdDogQXBpQ29uZmlnO1xyXG59XHJcblxyXG5leHBvcnQgdHlwZSBjdXN0b21NZXJnZUZuID0gKGxvY2FsRW52OiBQYXJ0aWFsPEVudmlyb25tZW50PiwgcmVtb3RlRW52OiBhbnkpID0+IEVudmlyb25tZW50O1xyXG5cclxuZXhwb3J0IGludGVyZmFjZSBSZW1vdGVFbnYge1xyXG4gIHVybDogc3RyaW5nO1xyXG4gIG1lcmdlU3RyYXRlZ3k6ICdkZWVwbWVyZ2UnIHwgJ292ZXJ3cml0ZScgfCBjdXN0b21NZXJnZUZuO1xyXG4gIG1ldGhvZD86IHN0cmluZztcclxuICBoZWFkZXJzPzogQUJQLkRpY3Rpb25hcnk8c3RyaW5nPjtcclxufVxyXG4iXX0=
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW52aXJvbm1lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jb3JlL3NyYy9saWIvbW9kZWxzL2Vudmlyb25tZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBdXRoQ29uZmlnIH0gZnJvbSAnYW5ndWxhci1vYXV0aDItb2lkYyc7XHJcbmltcG9ydCB7IEFCUCB9IGZyb20gJy4vY29tbW9uJztcclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgRW52aXJvbm1lbnQge1xyXG4gIGFwaXM6IEFwaXM7XHJcbiAgYXBwbGljYXRpb246IEFwcGxpY2F0aW9uSW5mbztcclxuICBobXI/OiBib29sZWFuO1xyXG4gIHRlc3Q/OiBib29sZWFuO1xyXG4gIGxvY2FsaXphdGlvbj86IHsgZGVmYXVsdFJlc291cmNlTmFtZT86IHN0cmluZyB9O1xyXG4gIG9BdXRoQ29uZmlnPzogQXV0aENvbmZpZyAmIHsgaW1wZXJzb25hdGlvbj86IEltcGVyc29uYXRpb24gfTtcclxuICBwcm9kdWN0aW9uOiBib29sZWFuO1xyXG4gIHJlbW90ZUVudj86IFJlbW90ZUVudjtcclxuICBba2V5OiBzdHJpbmddOiBhbnk7IC8vIGVzbGludC1kaXNhYmxlLWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWV4cGxpY2l0LWFueVxyXG59XHJcbmV4cG9ydCBpbnRlcmZhY2UgQXBwbGljYXRpb25JbmZvIHtcclxuICBuYW1lOiBzdHJpbmc7XHJcbiAgYmFzZVVybD86IHN0cmluZztcclxuICBsb2dvVXJsPzogc3RyaW5nO1xyXG59XHJcbmV4cG9ydCBpbnRlcmZhY2UgSGFzQWRkaXRpb25hbCB7XHJcbiAgW2tleTogc3RyaW5nXTogc3RyaW5nO1xyXG59XHJcbmV4cG9ydCBpbnRlcmZhY2UgQXBpQ29uZmlnIGV4dGVuZHMgUGFydGlhbDxIYXNBZGRpdGlvbmFsPiB7XHJcbiAgdXJsOiBzdHJpbmc7XHJcbiAgcm9vdE5hbWVzcGFjZT86IHN0cmluZztcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBBcGlzIHtcclxuICBba2V5OiBzdHJpbmddOiBQYXJ0aWFsPEFwaUNvbmZpZz47XHJcbiAgZGVmYXVsdDogQXBpQ29uZmlnO1xyXG59XHJcblxyXG5leHBvcnQgdHlwZSBjdXN0b21NZXJnZUZuID0gKGxvY2FsRW52OiBQYXJ0aWFsPEVudmlyb25tZW50PiwgcmVtb3RlRW52OiBhbnkpID0+IEVudmlyb25tZW50O1xyXG5cclxuZXhwb3J0IGludGVyZmFjZSBSZW1vdGVFbnYge1xyXG4gIHVybDogc3RyaW5nO1xyXG4gIG1lcmdlU3RyYXRlZ3k6ICdkZWVwbWVyZ2UnIHwgJ292ZXJ3cml0ZScgfCBjdXN0b21NZXJnZUZuO1xyXG4gIG1ldGhvZD86IHN0cmluZztcclxuICBoZWFkZXJzPzogQUJQLkRpY3Rpb25hcnk8c3RyaW5nPjtcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBJbXBlcnNvbmF0aW9uIHtcclxuICB0ZW5hbnRJbXBlcnNvbmF0aW9uPzogYm9vbGVhbjtcclxuICB1c2VySW1wZXJzb25hdGlvbj86IGJvb2xlYW47XHJcbn1cclxuIl19
@@ -38,6 +38,12 @@ export class EnvironmentService {
38
38
  getIssuer$() {
39
39
  return this.store.sliceState(state => state?.oAuthConfig?.issuer).pipe(map(mapToIssuer));
40
40
  }
41
+ getImpersonation() {
42
+ return this.store.state?.oAuthConfig?.impersonation || {};
43
+ }
44
+ getImpersonation$() {
45
+ return this.store.sliceState(state => state?.oAuthConfig?.impersonation || {});
46
+ }
41
47
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.5", ngImport: i0, type: EnvironmentService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
42
48
  static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.1.5", ngImport: i0, type: EnvironmentService, providedIn: 'root' }); }
43
49
  }
@@ -45,4 +51,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.5", ngImpor
45
51
  type: Injectable,
46
52
  args: [{ providedIn: 'root' }]
47
53
  }] });
48
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW52aXJvbm1lbnQuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvcmUvc3JjL2xpYi9zZXJ2aWNlcy9lbnZpcm9ubWVudC5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFM0MsT0FBTyxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRXJDLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQzs7QUFFOUQsTUFBTSxXQUFXLEdBQUcsQ0FBQyxHQUF1QixFQUFFLEVBQUUsQ0FBQyxDQUFDLElBQVUsRUFBRSxFQUFFLENBQzlELENBQUMsQ0FBQyxHQUFHLElBQUksSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQUksSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDLEdBQUcsSUFBSSxJQUFJLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQztBQUUvRCxNQUFNLFdBQVcsR0FBRyxDQUFDLE1BQTBCLEVBQUUsRUFBRTtJQUNqRCxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUM7UUFDWixPQUFPLE1BQU0sQ0FBQztJQUNoQixDQUFDO0lBQ0QsT0FBTyxNQUFNLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLE1BQU0sR0FBRyxHQUFHLENBQUM7QUFDdEQsQ0FBQyxDQUFDO0FBR0YsTUFBTSxPQUFPLGtCQUFrQjtJQUQvQjtRQUVtQixVQUFLLEdBQUcsSUFBSSxhQUFhLENBQUMsRUFBaUIsQ0FBQyxDQUFDO0tBbUMvRDtJQWpDQyxJQUFJLG9CQUFvQjtRQUN0QixPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsV0FBVyxDQUFDO0lBQ2hDLENBQUM7SUFFRCxlQUFlO1FBQ2IsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQy9DLENBQUM7SUFFRCxjQUFjO1FBQ1osT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQztJQUMxQixDQUFDO0lBRUQsU0FBUyxDQUFDLEdBQXVCO1FBQy9CLE9BQU8sV0FBVyxDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxFQUFFLElBQUksQ0FBQyxDQUFDO0lBQ2xELENBQUM7SUFFRCxVQUFVLENBQUMsR0FBVztRQUNwQixPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsVUFBVSxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsV0FBVyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUNoRixDQUFDO0lBRUQsUUFBUSxDQUFDLFdBQXdCO1FBQy9CLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBQzlCLENBQUM7SUFFRCxTQUFTO1FBQ1AsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLEVBQUUsV0FBVyxFQUFFLE1BQU0sQ0FBQztRQUVyRCxPQUFPLFdBQVcsQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUM3QixDQUFDO0lBRUQsVUFBVTtRQUNSLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxVQUFVLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxLQUFLLEVBQUUsV0FBVyxFQUFFLE1BQU0sQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQztJQUMzRixDQUFDOzhHQW5DVSxrQkFBa0I7a0hBQWxCLGtCQUFrQixjQURMLE1BQU07OzJGQUNuQixrQkFBa0I7a0JBRDlCLFVBQVU7bUJBQUMsRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IG1hcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcclxuaW1wb3J0IHsgQXBpcywgRW52aXJvbm1lbnQgfSBmcm9tICcuLi9tb2RlbHMvZW52aXJvbm1lbnQnO1xyXG5pbXBvcnQgeyBJbnRlcm5hbFN0b3JlIH0gZnJvbSAnLi4vdXRpbHMvaW50ZXJuYWwtc3RvcmUtdXRpbHMnO1xyXG5cclxuY29uc3QgbWFwVG9BcGlVcmwgPSAoa2V5OiBzdHJpbmcgfCB1bmRlZmluZWQpID0+IChhcGlzOiBBcGlzKSA9PlxyXG4gICgoa2V5ICYmIGFwaXNba2V5XSkgfHwgYXBpcy5kZWZhdWx0KS51cmwgfHwgYXBpcy5kZWZhdWx0LnVybDtcclxuXHJcbmNvbnN0IG1hcFRvSXNzdWVyID0gKGlzc3Vlcjogc3RyaW5nIHwgdW5kZWZpbmVkKSA9PiB7XHJcbiAgaWYgKCFpc3N1ZXIpIHtcclxuICAgIHJldHVybiBpc3N1ZXI7XHJcbiAgfVxyXG4gIHJldHVybiBpc3N1ZXIuZW5kc1dpdGgoJy8nKSA/IGlzc3VlciA6IGlzc3VlciArICcvJztcclxufTtcclxuXHJcbkBJbmplY3RhYmxlKHsgcHJvdmlkZWRJbjogJ3Jvb3QnIH0pXHJcbmV4cG9ydCBjbGFzcyBFbnZpcm9ubWVudFNlcnZpY2Uge1xyXG4gIHByaXZhdGUgcmVhZG9ubHkgc3RvcmUgPSBuZXcgSW50ZXJuYWxTdG9yZSh7fSBhcyBFbnZpcm9ubWVudCk7XHJcblxyXG4gIGdldCBjcmVhdGVPblVwZGF0ZVN0cmVhbSgpIHtcclxuICAgIHJldHVybiB0aGlzLnN0b3JlLnNsaWNlVXBkYXRlO1xyXG4gIH1cclxuXHJcbiAgZ2V0RW52aXJvbm1lbnQkKCk6IE9ic2VydmFibGU8RW52aXJvbm1lbnQ+IHtcclxuICAgIHJldHVybiB0aGlzLnN0b3JlLnNsaWNlU3RhdGUoc3RhdGUgPT4gc3RhdGUpO1xyXG4gIH1cclxuXHJcbiAgZ2V0RW52aXJvbm1lbnQoKTogRW52aXJvbm1lbnQge1xyXG4gICAgcmV0dXJuIHRoaXMuc3RvcmUuc3RhdGU7XHJcbiAgfVxyXG5cclxuICBnZXRBcGlVcmwoa2V5OiBzdHJpbmcgfCB1bmRlZmluZWQpIHtcclxuICAgIHJldHVybiBtYXBUb0FwaVVybChrZXkpKHRoaXMuc3RvcmUuc3RhdGU/LmFwaXMpO1xyXG4gIH1cclxuXHJcbiAgZ2V0QXBpVXJsJChrZXk6IHN0cmluZykge1xyXG4gICAgcmV0dXJuIHRoaXMuc3RvcmUuc2xpY2VTdGF0ZShzdGF0ZSA9PiBzdGF0ZS5hcGlzKS5waXBlKG1hcChtYXBUb0FwaVVybChrZXkpKSk7XHJcbiAgfVxyXG5cclxuICBzZXRTdGF0ZShlbnZpcm9ubWVudDogRW52aXJvbm1lbnQpIHtcclxuICAgIHRoaXMuc3RvcmUuc2V0KGVudmlyb25tZW50KTtcclxuICB9XHJcblxyXG4gIGdldElzc3VlcigpIHtcclxuICAgIGNvbnN0IGlzc3VlciA9IHRoaXMuc3RvcmUuc3RhdGU/Lm9BdXRoQ29uZmlnPy5pc3N1ZXI7XHJcblxyXG4gICAgcmV0dXJuIG1hcFRvSXNzdWVyKGlzc3Vlcik7XHJcbiAgfVxyXG5cclxuICBnZXRJc3N1ZXIkKCkge1xyXG4gICAgcmV0dXJuIHRoaXMuc3RvcmUuc2xpY2VTdGF0ZShzdGF0ZSA9PiBzdGF0ZT8ub0F1dGhDb25maWc/Lmlzc3VlcikucGlwZShtYXAobWFwVG9Jc3N1ZXIpKTtcclxuICB9XHJcbn1cclxuIl19
54
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW52aXJvbm1lbnQuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvcmUvc3JjL2xpYi9zZXJ2aWNlcy9lbnZpcm9ubWVudC5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFM0MsT0FBTyxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRXJDLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQzs7QUFFOUQsTUFBTSxXQUFXLEdBQUcsQ0FBQyxHQUF1QixFQUFFLEVBQUUsQ0FBQyxDQUFDLElBQVUsRUFBRSxFQUFFLENBQzlELENBQUMsQ0FBQyxHQUFHLElBQUksSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQUksSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDLEdBQUcsSUFBSSxJQUFJLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQztBQUUvRCxNQUFNLFdBQVcsR0FBRyxDQUFDLE1BQTBCLEVBQUUsRUFBRTtJQUNqRCxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUM7UUFDWixPQUFPLE1BQU0sQ0FBQztJQUNoQixDQUFDO0lBQ0QsT0FBTyxNQUFNLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLE1BQU0sR0FBRyxHQUFHLENBQUM7QUFDdEQsQ0FBQyxDQUFDO0FBR0YsTUFBTSxPQUFPLGtCQUFrQjtJQUQvQjtRQUVtQixVQUFLLEdBQUcsSUFBSSxhQUFhLENBQUMsRUFBaUIsQ0FBQyxDQUFDO0tBMkMvRDtJQXpDQyxJQUFJLG9CQUFvQjtRQUN0QixPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsV0FBVyxDQUFDO0lBQ2hDLENBQUM7SUFFRCxlQUFlO1FBQ2IsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQy9DLENBQUM7SUFFRCxjQUFjO1FBQ1osT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQztJQUMxQixDQUFDO0lBRUQsU0FBUyxDQUFDLEdBQXVCO1FBQy9CLE9BQU8sV0FBVyxDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxFQUFFLElBQUksQ0FBQyxDQUFDO0lBQ2xELENBQUM7SUFFRCxVQUFVLENBQUMsR0FBVztRQUNwQixPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsVUFBVSxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsV0FBVyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUNoRixDQUFDO0lBRUQsUUFBUSxDQUFDLFdBQXdCO1FBQy9CLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBQzlCLENBQUM7SUFFRCxTQUFTO1FBQ1AsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLEVBQUUsV0FBVyxFQUFFLE1BQU0sQ0FBQztRQUVyRCxPQUFPLFdBQVcsQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUM3QixDQUFDO0lBRUQsVUFBVTtRQUNSLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxVQUFVLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxLQUFLLEVBQUUsV0FBVyxFQUFFLE1BQU0sQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQztJQUMzRixDQUFDO0lBRUQsZ0JBQWdCO1FBQ2QsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssRUFBRSxXQUFXLEVBQUUsYUFBYSxJQUFJLEVBQUUsQ0FBQztJQUM1RCxDQUFDO0lBRUQsaUJBQWlCO1FBQ2YsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLEtBQUssRUFBRSxXQUFXLEVBQUUsYUFBYSxJQUFJLEVBQUUsQ0FBQyxDQUFDO0lBQ2pGLENBQUM7OEdBM0NVLGtCQUFrQjtrSEFBbEIsa0JBQWtCLGNBREwsTUFBTTs7MkZBQ25CLGtCQUFrQjtrQkFEOUIsVUFBVTttQkFBQyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgbWFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xyXG5pbXBvcnQgeyBBcGlzLCBFbnZpcm9ubWVudCB9IGZyb20gJy4uL21vZGVscy9lbnZpcm9ubWVudCc7XHJcbmltcG9ydCB7IEludGVybmFsU3RvcmUgfSBmcm9tICcuLi91dGlscy9pbnRlcm5hbC1zdG9yZS11dGlscyc7XHJcblxyXG5jb25zdCBtYXBUb0FwaVVybCA9IChrZXk6IHN0cmluZyB8IHVuZGVmaW5lZCkgPT4gKGFwaXM6IEFwaXMpID0+XHJcbiAgKChrZXkgJiYgYXBpc1trZXldKSB8fCBhcGlzLmRlZmF1bHQpLnVybCB8fCBhcGlzLmRlZmF1bHQudXJsO1xyXG5cclxuY29uc3QgbWFwVG9Jc3N1ZXIgPSAoaXNzdWVyOiBzdHJpbmcgfCB1bmRlZmluZWQpID0+IHtcclxuICBpZiAoIWlzc3Vlcikge1xyXG4gICAgcmV0dXJuIGlzc3VlcjtcclxuICB9XHJcbiAgcmV0dXJuIGlzc3Vlci5lbmRzV2l0aCgnLycpID8gaXNzdWVyIDogaXNzdWVyICsgJy8nO1xyXG59O1xyXG5cclxuQEluamVjdGFibGUoeyBwcm92aWRlZEluOiAncm9vdCcgfSlcclxuZXhwb3J0IGNsYXNzIEVudmlyb25tZW50U2VydmljZSB7XHJcbiAgcHJpdmF0ZSByZWFkb25seSBzdG9yZSA9IG5ldyBJbnRlcm5hbFN0b3JlKHt9IGFzIEVudmlyb25tZW50KTtcclxuXHJcbiAgZ2V0IGNyZWF0ZU9uVXBkYXRlU3RyZWFtKCkge1xyXG4gICAgcmV0dXJuIHRoaXMuc3RvcmUuc2xpY2VVcGRhdGU7XHJcbiAgfVxyXG5cclxuICBnZXRFbnZpcm9ubWVudCQoKTogT2JzZXJ2YWJsZTxFbnZpcm9ubWVudD4ge1xyXG4gICAgcmV0dXJuIHRoaXMuc3RvcmUuc2xpY2VTdGF0ZShzdGF0ZSA9PiBzdGF0ZSk7XHJcbiAgfVxyXG5cclxuICBnZXRFbnZpcm9ubWVudCgpOiBFbnZpcm9ubWVudCB7XHJcbiAgICByZXR1cm4gdGhpcy5zdG9yZS5zdGF0ZTtcclxuICB9XHJcblxyXG4gIGdldEFwaVVybChrZXk6IHN0cmluZyB8IHVuZGVmaW5lZCkge1xyXG4gICAgcmV0dXJuIG1hcFRvQXBpVXJsKGtleSkodGhpcy5zdG9yZS5zdGF0ZT8uYXBpcyk7XHJcbiAgfVxyXG5cclxuICBnZXRBcGlVcmwkKGtleTogc3RyaW5nKSB7XHJcbiAgICByZXR1cm4gdGhpcy5zdG9yZS5zbGljZVN0YXRlKHN0YXRlID0+IHN0YXRlLmFwaXMpLnBpcGUobWFwKG1hcFRvQXBpVXJsKGtleSkpKTtcclxuICB9XHJcblxyXG4gIHNldFN0YXRlKGVudmlyb25tZW50OiBFbnZpcm9ubWVudCkge1xyXG4gICAgdGhpcy5zdG9yZS5zZXQoZW52aXJvbm1lbnQpO1xyXG4gIH1cclxuXHJcbiAgZ2V0SXNzdWVyKCkge1xyXG4gICAgY29uc3QgaXNzdWVyID0gdGhpcy5zdG9yZS5zdGF0ZT8ub0F1dGhDb25maWc/Lmlzc3VlcjtcclxuXHJcbiAgICByZXR1cm4gbWFwVG9Jc3N1ZXIoaXNzdWVyKTtcclxuICB9XHJcblxyXG4gIGdldElzc3VlciQoKSB7XHJcbiAgICByZXR1cm4gdGhpcy5zdG9yZS5zbGljZVN0YXRlKHN0YXRlID0+IHN0YXRlPy5vQXV0aENvbmZpZz8uaXNzdWVyKS5waXBlKG1hcChtYXBUb0lzc3VlcikpO1xyXG4gIH1cclxuXHJcbiAgZ2V0SW1wZXJzb25hdGlvbigpIHtcclxuICAgIHJldHVybiB0aGlzLnN0b3JlLnN0YXRlPy5vQXV0aENvbmZpZz8uaW1wZXJzb25hdGlvbiB8fCB7fTtcclxuICB9XHJcblxyXG4gIGdldEltcGVyc29uYXRpb24kKCkge1xyXG4gICAgcmV0dXJuIHRoaXMuc3RvcmUuc2xpY2VTdGF0ZShzdGF0ZSA9PiBzdGF0ZT8ub0F1dGhDb25maWc/LmltcGVyc29uYXRpb24gfHwge30pO1xyXG4gIH1cclxufVxyXG4iXX0=
@@ -1,4 +1,5 @@
1
- import { Injectable } from '@angular/core';
1
+ import { Injectable, inject } from '@angular/core';
2
+ import { DOCUMENT } from '@angular/common';
2
3
  import compare from 'just-compare';
3
4
  import { filter, take } from 'rxjs/operators';
4
5
  import { InternalStore } from '../utils/internal-store-utils';
@@ -12,6 +13,7 @@ export class SessionStateService {
12
13
  this.configState = configState;
13
14
  this.localStorageService = localStorageService;
14
15
  this.store = new InternalStore({});
16
+ this.document = inject(DOCUMENT);
15
17
  this.updateLocalStorage = () => {
16
18
  this.localStorageService.setItem('abpSession', JSON.stringify(this.store.state));
17
19
  };
@@ -34,9 +36,7 @@ export class SessionStateService {
34
36
  if (lang.includes(';')) {
35
37
  lang = lang.split(';')[0];
36
38
  }
37
- if (appLanguage !== lang) {
38
- this.setLanguage(lang);
39
- }
39
+ this.setLanguage(lang);
40
40
  });
41
41
  }
42
42
  onLanguageChange$() {
@@ -63,10 +63,14 @@ export class SessionStateService {
63
63
  this.store.set({ ...this.store.state, tenant });
64
64
  }
65
65
  setLanguage(language) {
66
- if (language === this.store.state.language)
67
- return;
68
- this.store.patch({ language });
69
- document.documentElement.setAttribute('lang', language);
66
+ const currentLanguage = this.store.state.language;
67
+ if (language !== currentLanguage) {
68
+ this.store.patch({ language });
69
+ }
70
+ const currentAttribute = this.document.documentElement.getAttribute('lang');
71
+ if (language !== currentAttribute) {
72
+ this.document.documentElement.setAttribute('lang', language);
73
+ }
70
74
  }
71
75
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.5", ngImport: i0, type: SessionStateService, deps: [{ token: i1.ConfigStateService }, { token: i2.AbpLocalStorageService }], target: i0.ɵɵFactoryTarget.Injectable }); }
72
76
  static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.1.5", ngImport: i0, type: SessionStateService, providedIn: 'root' }); }
@@ -77,4 +81,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.5", ngImpor
77
81
  providedIn: 'root',
78
82
  }]
79
83
  }], ctorParameters: () => [{ type: i1.ConfigStateService }, { type: i2.AbpLocalStorageService }] });
80
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2Vzc2lvbi1zdGF0ZS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvY29yZS9zcmMvbGliL3NlcnZpY2VzL3Nlc3Npb24tc3RhdGUuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sT0FBTyxNQUFNLGNBQWMsQ0FBQztBQUNuQyxPQUFPLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRzlDLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUM5RCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUM1RCxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQzs7OztBQUtqRSxNQUFNLE9BQU8sbUJBQW1CO0lBTzlCLFlBQ1UsV0FBK0IsRUFDL0IsbUJBQTJDO1FBRDNDLGdCQUFXLEdBQVgsV0FBVyxDQUFvQjtRQUMvQix3QkFBbUIsR0FBbkIsbUJBQW1CLENBQXdCO1FBUnBDLFVBQUssR0FBRyxJQUFJLGFBQWEsQ0FBQyxFQUFtQixDQUFDLENBQUM7UUFFeEQsdUJBQWtCLEdBQUcsR0FBRyxFQUFFO1lBQ2hDLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxPQUFPLENBQUMsWUFBWSxFQUFFLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO1FBQ25GLENBQUMsQ0FBQztRQU1BLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUNaLElBQUksQ0FBQyxrQkFBa0IsRUFBRSxDQUFDO0lBQzVCLENBQUM7SUFFTyxJQUFJO1FBQ1YsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLG1CQUFtQixDQUFDLE9BQU8sQ0FBQyxZQUFZLENBQUMsQ0FBQztRQUMv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QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IGNvbXBhcmUgZnJvbSAnanVzdC1jb21wYXJlJztcclxuaW1wb3J0IHsgZmlsdGVyLCB0YWtlIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xyXG5pbXBvcnQgeyBTZXNzaW9uIH0gZnJvbSAnLi4vbW9kZWxzL3Nlc3Npb24nO1xyXG5pbXBvcnQgeyBDdXJyZW50VGVuYW50RHRvIH0gZnJvbSAnLi4vcHJveHkvdm9sby9hYnAvYXNwLW5ldC1jb3JlL212Yy9tdWx0aS10ZW5hbmN5L21vZGVscyc7XHJcbmltcG9ydCB7IEludGVybmFsU3RvcmUgfSBmcm9tICcuLi91dGlscy9pbnRlcm5hbC1zdG9yZS11dGlscyc7XHJcbmltcG9ydCB7IENvbmZpZ1N0YXRlU2VydmljZSB9IGZyb20gJy4vY29uZmlnLXN0YXRlLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBBYnBMb2NhbFN0b3JhZ2VTZXJ2aWNlIH0gZnJvbSAnLi9sb2NhbC1zdG9yYWdlLnNlcnZpY2UnO1xyXG5cclxuQEluamVjdGFibGUoe1xyXG4gIHByb3ZpZGVkSW46ICdyb290JyxcclxufSlcclxuZXhwb3J0IGNsYXNzIFNlc3Npb25TdGF0ZVNlcnZpY2Uge1xyXG4gIHByaXZhdGUgcmVhZG9ubHkgc3RvcmUgPSBuZXcgSW50ZXJuYWxTdG9yZSh7fSBhcyBTZXNzaW9uLlN0YXRlKTtcclxuXHJcbiAgcHJpdmF0ZSB1cGRhdGVMb2NhbFN0b3JhZ2UgPSAoKSA9PiB7XHJcbiAgICB0aGlzLmxvY2FsU3RvcmFnZVNlcnZpY2Uuc2V0SXRlbSgnYWJwU2Vzc2lvbicsIEpTT04uc3RyaW5naWZ5KHRoaXMuc3RvcmUuc3RhdGUpKTtcclxuICB9O1xyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHByaXZhdGUgY29uZmlnU3RhdGU6IENvbmZpZ1N0YXRlU2VydmljZSxcclxuICAgIHByaXZhdGUgbG9jYWxTdG9yYWdlU2VydmljZTogQWJwTG9jYWxTdG9yYWdlU2VydmljZSxcclxuICApIHtcclxuICAgIHRoaXMuaW5pdCgpO1xyXG4gICAgdGhpcy5zZXRJbml0aWFsTGFuZ3VhZ2UoKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgaW5pdCgpIHtcclxuICAgIGNvbnN0IHNlc3Npb24gPSB0aGlzLmxvY2FsU3RvcmFnZVNlcnZpY2UuZ2V0SXRlbSgnYWJwU2Vzc2lvbicpO1xyXG4gICAgaWYgKHNlc3Npb24pIHtcclxuICAgICAgdGhpcy5zdG9yZS5zZXQoSlNPTi5wYXJzZShzZXNzaW9uKSk7XHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy5zdG9yZS5zbGljZVVwZGF0ZShzdGF0ZSA9PiBzdGF0ZSkuc3Vic2NyaWJlKHRoaXMudXBkYXRlTG9jYWxTdG9yYWdlKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgc2V0SW5pdGlhbExhbmd1YWdlKCkge1xyXG4gICAgY29uc3QgYXBwTGFuZ3VhZ2UgPSB0aGlzLmdldExhbmd1YWdlKCk7XHJcblxyXG4gICAgdGhpcy5jb25maWdTdGF0ZVxyXG4gICAgICAuZ2V0RGVlcCQoJ2xvY2FsaXphdGlvbi5jdXJyZW50Q3VsdHVyZS5jdWx0dXJlTmFtZScpXHJcbiAgICAgIC5waXBlKFxyXG4gICAgICAgIGZpbHRlcihjdWx0dXJlTmFtZSA9PiAhIWN1bHR1cmVOYW1lKSxcclxuICAgICAgICB0YWtlKDEpLFxyXG4gICAgICApXHJcbiAgICAgIC5zdWJzY3JpYmUobGFuZyA9PiB7XHJcbiAgICAgICAgaWYgKGxhbmcuaW5jbHVkZXMoJzsnKSkge1xyXG4gICAgICAgICAgbGFuZyA9IGxhbmcuc3BsaXQoJzsnKVswXTtcclxuICAgICAgICB9XHJcbiAgICAgICAgaWYgKGFwcExhbmd1YWdlICE9PSBsYW5nKSB7XHJcbiAgICAgICAgICB0aGlzLnNldExhbmd1YWdlKGxhbmcpO1xyXG4gICAgICAgIH1cclxuICAgICAgfSk7XHJcbiAgfVxyXG5cclxuICBvbkxhbmd1YWdlQ2hhbmdlJCgpIHtcclxuICAgIHJldHVybiB0aGlzLnN0b3JlLnNsaWNlVXBkYXRlKHN0YXRlID0+IHN0YXRlLmxhbmd1YWdlKTtcclxuICB9XHJcblxyXG4gIG9uVGVuYW50Q2hhbmdlJCgpIHtcclxuICAgIHJldHVybiB0aGlzLnN0b3JlLnNsaWNlVXBkYXRlKHN0YXRlID0+IHN0YXRlLnRlbmFudCk7XHJcbiAgfVxyXG5cclxuICBnZXRMYW5ndWFnZSgpIHtcclxuICAgIHJldHVybiB0aGlzLnN0b3JlLnN0YXRlLmxhbmd1YWdlO1xyXG4gIH1cclxuXHJcbiAgZ2V0TGFuZ3VhZ2UkKCkge1xyXG4gICAgcmV0dXJuIHRoaXMuc3RvcmUuc2xpY2VTdGF0ZShzdGF0ZSA9PiBzdGF0ZS5sYW5ndWFnZSk7XHJcbiAgfVxyXG5cclxuICBnZXRUZW5hbnQoKSB7XHJcbiAgICByZXR1cm4gdGhpcy5zdG9yZS5zdGF0ZS50ZW5hbnQ7XHJcbiAgfVxyXG5cclxuICBnZXRUZW5hbnQkKCkge1xyXG4gICAgcmV0dXJuIHRoaXMuc3RvcmUuc2xpY2VTdGF0ZShzdGF0ZSA9PiBzdGF0ZS50ZW5hbnQpO1xyXG4gIH1cclxuXHJcbiAgc2V0VGVuYW50KHRlbmFudDogQ3VycmVudFRlbmFudER0byB8IG51bGwpIHtcclxuICAgIGlmIChjb21wYXJlKHRlbmFudCwgdGhpcy5zdG9yZS5zdGF0ZS50ZW5hbnQpKSByZXR1cm47XHJcblxyXG4gICAgdGhpcy5zdG9yZS5zZXQoeyAuLi50aGlzLnN0b3JlLnN0YXRlLCB0ZW5hbnQgfSk7XHJcbiAgfVxyXG5cclxuICBzZXRMYW5ndWFnZShsYW5ndWFnZTogc3RyaW5nKSB7XHJcbiAgICBpZiAobGFuZ3VhZ2UgPT09IHRoaXMuc3RvcmUuc3RhdGUubGFuZ3VhZ2UpIHJldHVybjtcclxuXHJcbiAgICB0aGlzLnN0b3JlLnBhdGNoKHsgbGFuZ3VhZ2UgfSk7XHJcbiAgICBkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuc2V0QXR0cmlidXRlKCdsYW5nJywgbGFuZ3VhZ2UpO1xyXG4gIH1cclxufVxyXG4iXX0=
84
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2Vzc2lvbi1zdGF0ZS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvY29yZS9zcmMvbGliL3NlcnZpY2VzL3Nlc3Npb24tc3RhdGUuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNuRCxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDM0MsT0FBTyxPQUFPLE1BQU0sY0FBYyxDQUFDO0FBQ25DLE9BQU8sRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFHOUMsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQzlELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQzVELE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLHlCQUF5QixDQUFDOzs7O0FBS2pFLE1BQU0sT0FBTyxtQkFBbUI7SUFROUIsWUFDVSxXQUErQixFQUMvQixtQkFBMkM7UUFEM0MsZ0JBQVcsR0FBWCxXQUFXLENBQW9CO1FBQy9CLHdCQUFtQixHQUFuQixtQkFBbUIsQ0FBd0I7UUFUcEMsVUFBSyxHQUFHLElBQUksYUFBYSxDQUFDLEVBQW1CLENBQUMsQ0FBQztRQUM3QyxhQUFRLEdBQUcsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBRXZDLHVCQUFrQixHQUFHLEdBQUcsRUFBRTtZQUNoQyxJQUFJLENBQUMsbUJBQW1CLENBQUMsT0FBTyxDQUFDLFlBQVksRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztRQUNuRixDQUFDLENBQUM7UUFNQSxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDWixJQUFJLENBQUMsa0JBQWtCLEVBQUUsQ0FB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NUUsSUFBSSxRQUFRLEtBQUssZ0JBQWdCLEVBQUUsQ0FBQztZQUNsQyxJQUFJLENBQUMsUUFBUSxDQUFDLGVBQWUsQ0FBQyxZQUFZLENBQUMsTUFBTSxFQUFFLFFBQVEsQ0FBQyxDQUFDO1FBQy9ELENBQUM7SUFDSCxDQUFDOzhHQXBGVSxtQkFBbUI7a0hBQW5CLG1CQUFtQixjQUZsQixNQUFNOzsyRkFFUCxtQkFBbUI7a0JBSC9CLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSwgaW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IERPQ1VNRU5UIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IGNvbXBhcmUgZnJvbSAnanVzdC1jb21wYXJlJztcclxuaW1wb3J0IHsgZmlsdGVyLCB0YWtlIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xyXG5pbXBvcnQgeyBTZXNzaW9uIH0gZnJvbSAnLi4vbW9kZWxzL3Nlc3Npb24nO1xyXG5pbXBvcnQgeyBDdXJyZW50VGVuYW50RHRvIH0gZnJvbSAnLi4vcHJveHkvdm9sby9hYnAvYXNwLW5ldC1jb3JlL212Yy9tdWx0aS10ZW5hbmN5L21vZGVscyc7XHJcbmltcG9ydCB7IEludGVybmFsU3RvcmUgfSBmcm9tICcuLi91dGlscy9pbnRlcm5hbC1zdG9yZS11dGlscyc7XHJcbmltcG9ydCB7IENvbmZpZ1N0YXRlU2VydmljZSB9IGZyb20gJy4vY29uZmlnLXN0YXRlLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBBYnBMb2NhbFN0b3JhZ2VTZXJ2aWNlIH0gZnJvbSAnLi9sb2NhbC1zdG9yYWdlLnNlcnZpY2UnO1xyXG5cclxuQEluamVjdGFibGUoe1xyXG4gIHByb3ZpZGVkSW46ICdyb290JyxcclxufSlcclxuZXhwb3J0IGNsYXNzIFNlc3Npb25TdGF0ZVNlcnZpY2Uge1xyXG4gIHByaXZhdGUgcmVhZG9ubHkgc3RvcmUgPSBuZXcgSW50ZXJuYWxTdG9yZSh7fSBhcyBTZXNzaW9uLlN0YXRlKTtcclxuICBwcm90ZWN0ZWQgcmVhZG9ubHkgZG9jdW1lbnQgPSBpbmplY3QoRE9DVU1FTlQpO1xyXG5cclxuICBwcml2YXRlIHVwZGF0ZUxvY2FsU3RvcmFnZSA9ICgpID0+IHtcclxuICAgIHRoaXMubG9jYWxTdG9yYWdlU2VydmljZS5zZXRJdGVtKCdhYnBTZXNzaW9uJywgSlNPTi5zdHJpbmdpZnkodGhpcy5zdG9yZS5zdGF0ZSkpO1xyXG4gIH07XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSBjb25maWdTdGF0ZTogQ29uZmlnU3RhdGVTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBsb2NhbFN0b3JhZ2VTZXJ2aWNlOiBBYnBMb2NhbFN0b3JhZ2VTZXJ2aWNlLFxyXG4gICkge1xyXG4gICAgdGhpcy5pbml0KCk7XHJcbiAgICB0aGlzLnNldEluaXRpYWxMYW5ndWFnZSgpO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBpbml0KCkge1xyXG4gICAgY29uc3Qgc2Vzc2lvbiA9IHRoaXMubG9jYWxTdG9yYWdlU2VydmljZS5nZXRJdGVtKCdhYnBTZXNzaW9uJyk7XHJcbiAgICBpZiAoc2Vzc2lvbikge1xyXG4gICAgICB0aGlzLnN0b3JlLnNldChKU09OLnBhcnNlKHNlc3Npb24pKTtcclxuICAgIH1cclxuXHJcbiAgICB0aGlzLnN0b3JlLnNsaWNlVXBkYXRlKHN0YXRlID0+IHN0YXRlKS5zdWJzY3JpYmUodGhpcy51cGRhdGVMb2NhbFN0b3JhZ2UpO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBzZXRJbml0aWFsTGFuZ3VhZ2UoKSB7XHJcbiAgICBjb25zdCBhcHBMYW5ndWFnZSA9IHRoaXMuZ2V0TGFuZ3VhZ2UoKTtcclxuXHJcbiAgICB0aGlzLmNvbmZpZ1N0YXRlXHJcbiAgICAgIC5nZXREZWVwJCgnbG9jYWxpemF0aW9uLmN1cnJlbnRDdWx0dXJlLmN1bHR1cmVOYW1lJylcclxuICAgICAgLnBpcGUoXHJcbiAgICAgICAgZmlsdGVyKGN1bHR1cmVOYW1lID0+ICEhY3VsdHVyZU5hbWUpLFxyXG4gICAgICAgIHRha2UoMSksXHJcbiAgICAgIClcclxuICAgICAgLnN1YnNjcmliZShsYW5nID0+IHtcclxuICAgICAgICBpZiAobGFuZy5pbmNsdWRlcygnOycpKSB7XHJcbiAgICAgICAgICBsYW5nID0gbGFuZy5zcGxpdCgnOycpWzBdO1xyXG4gICAgICAgIH1cclxuICAgICAgICBcclxuICAgICAgICB0aGlzLnNldExhbmd1YWdlKGxhbmcpO1xyXG4gICAgICB9KTtcclxuICB9XHJcblxyXG4gIG9uTGFuZ3VhZ2VDaGFuZ2UkKCkge1xyXG4gICAgcmV0dXJuIHRoaXMuc3RvcmUuc2xpY2VVcGRhdGUoc3RhdGUgPT4gc3RhdGUubGFuZ3VhZ2UpO1xyXG4gIH1cclxuXHJcbiAgb25UZW5hbnRDaGFuZ2UkKCkge1xyXG4gICAgcmV0dXJuIHRoaXMuc3RvcmUuc2xpY2VVcGRhdGUoc3RhdGUgPT4gc3RhdGUudGVuYW50KTtcclxuICB9XHJcblxyXG4gIGdldExhbmd1YWdlKCkge1xyXG4gICAgcmV0dXJuIHRoaXMuc3RvcmUuc3RhdGUubGFuZ3VhZ2U7XHJcbiAgfVxyXG5cclxuICBnZXRMYW5ndWFnZSQoKSB7XHJcbiAgICByZXR1cm4gdGhpcy5zdG9yZS5zbGljZVN0YXRlKHN0YXRlID0+IHN0YXRlLmxhbmd1YWdlKTtcclxuICB9XHJcblxyXG4gIGdldFRlbmFudCgpIHtcclxuICAgIHJldHVybiB0aGlzLnN0b3JlLnN0YXRlLnRlbmFudDtcclxuICB9XHJcblxyXG4gIGdldFRlbmFudCQoKSB7XHJcbiAgICByZXR1cm4gdGhpcy5zdG9yZS5zbGljZVN0YXRlKHN0YXRlID0+IHN0YXRlLnRlbmFudCk7XHJcbiAgfVxyXG5cclxuICBzZXRUZW5hbnQodGVuYW50OiBDdXJyZW50VGVuYW50RHRvIHwgbnVsbCkge1xyXG4gICAgaWYgKGNvbXBhcmUodGVuYW50LCB0aGlzLnN0b3JlLnN0YXRlLnRlbmFudCkpIHJldHVybjtcclxuXHJcbiAgICB0aGlzLnN0b3JlLnNldCh7IC4uLnRoaXMuc3RvcmUuc3RhdGUsIHRlbmFudCB9KTtcclxuICB9XHJcblxyXG4gIHNldExhbmd1YWdlKGxhbmd1YWdlOiBzdHJpbmcpIHtcclxuICAgIGNvbnN0IGN1cnJlbnRMYW5ndWFnZSA9IHRoaXMuc3RvcmUuc3RhdGUubGFuZ3VhZ2U7XHJcblxyXG4gICAgaWYgKGxhbmd1YWdlICE9PSBjdXJyZW50TGFuZ3VhZ2UpIHtcclxuICAgICAgdGhpcy5zdG9yZS5wYXRjaCh7IGxhbmd1YWdlIH0pO1xyXG4gICAgfVxyXG5cclxuICAgIGNvbnN0IGN1cnJlbnRBdHRyaWJ1dGUgPSB0aGlzLmRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5nZXRBdHRyaWJ1dGUoJ2xhbmcnKTtcclxuICAgIGlmIChsYW5ndWFnZSAhPT0gY3VycmVudEF0dHJpYnV0ZSkge1xyXG4gICAgICB0aGlzLmRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5zZXRBdHRyaWJ1dGUoJ2xhbmcnLCBsYW5ndWFnZSk7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiJdfQ==
@@ -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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVnaXN0ZXItbG9jYWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvY29yZS9sb2NhbGUvc3JjL3V0aWxzL3JlZ2lzdGVyLWxvY2FsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDaEQsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQVMxQyxJQUFJLFNBQVMsR0FBRyxFQUErQixDQUFDO0FBUWhELFNBQVMsVUFBVSxDQUFDLE1BQWM7SUFDaEMseUhBQXlIO0lBRXpILE1BQU0sSUFBSSxHQUFHO1FBQ1QsSUFBSSxFQUFFLEdBQUcsRUFBRSxDQUFDLE1BQU0sQ0FBQyw0QkFBNEIsQ0FBQztRQUNoRCxJQUFJLEVBQUUsR0FBRyxFQUFFLENBQUMsTUFBTSxDQUFDLDRCQUE0QixDQUFDO1FBQ2hELElBQUksRUFBRSxHQUFHLEVBQUUsQ0FBQyxNQUFNLENBQUMsNEJBQTRCLENBQUM7UUFDaEQsT0FBTyxFQUFFLEdBQUcsRUFBRSxDQUFDLE1BQU0sQ0FBQywrQkFBK0IsQ0FBQztRQUN0RCxJQUFJLEVBQUUsR0FBRyxFQUFFLENBQUMsTUFBTSxDQUFDLDRCQUE0QixDQUFDO1FBQ2hELElBQUksRUFBRSxHQUFHLEVBQUUsQ0FBQyxNQUFNLENBQUMsNEJBQTRCLENBQUM7UUFDaEQsSUFBSSxFQUFFLEdBQUcsRUFBRSxDQUFDLE1BQU0sQ0FBQyw0QkFBNEIsQ0FBQztRQUNoRCxJQUFJLEVBQUUsR0FBRyxFQUFFLENBQUMsTUFBTSxDQUFDLDRCQUE0QixDQUFDO1FBQ2hELElBQUksRUFBRSxHQUFHLEVBQUUsQ0FBQyxNQUFNLENBQUMsNEJBQTRCLENBQUM7UUFDaEQsSUFBSSxFQUFFLEdBQUcsRUFBRSxDQUFDLE1BQU0sQ0FBQyw0QkFBNEIsQ0FBQztRQUNoRCxJQUFJLEVBQUUsR0FBRyxFQUFFLENBQUMsTUFB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Y2FsZXMgfSBmcm9tICdAYWJwL25nLmNvcmUnO1xyXG5pbXBvcnQgeyBpc0Rldk1vZGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgTG9jYWxlRXJyb3JIYW5kbGVyRGF0YSB7XHJcbiAgcmVzb2x2ZTogYW55O1xyXG4gIHJlamVjdDogYW55O1xyXG4gIGVycm9yOiBhbnk7XHJcbiAgbG9jYWxlOiBzdHJpbmc7XHJcbn1cclxuXHJcbmxldCBsb2NhbGVNYXAgPSB7fSBhcyB7IFtrZXk6IHN0cmluZ106IHN0cmluZyB9O1xyXG5cclxuZXhwb3J0IGludGVyZmFjZSBSZWdpc3RlckxvY2FsZURhdGEge1xyXG4gIGN1bHR1cmVOYW1lTG9jYWxlRmlsZU1hcD86IFJlY29yZDxzdHJpbmcsIHN0cmluZz47XHJcbiAgZXJyb3JIYW5kbGVyRm4/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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"}
@@ -4,7 +4,7 @@ import { of, BehaviorSubject, Subject, throwError, firstValueFrom, lastValueFrom
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';
7
- import { registerLocaleData, DOCUMENT, DatePipe, DATE_PIPE_DEFAULT_TIMEZONE, CommonModule } from '@angular/common';
7
+ import { DOCUMENT, registerLocaleData, DatePipe, DATE_PIPE_DEFAULT_TIMEZONE, CommonModule } from '@angular/common';
8
8
  import { map, distinctUntilChanged, filter, catchError, tap, take, switchMap, mapTo, takeUntil, delay, retryWhen, shareReplay, debounceTime, finalize } from 'rxjs/operators';
9
9
  import * as i1 from '@angular/common/http';
10
10
  import { HttpClient, HttpContextToken, HttpContext, HttpParams, HttpErrorResponse, provideHttpClient, withInterceptorsFromDi, withXsrfConfiguration, HttpHeaders } from '@angular/common/http';
@@ -451,6 +451,12 @@ class EnvironmentService {
451
451
  getIssuer$() {
452
452
  return this.store.sliceState(state => state?.oAuthConfig?.issuer).pipe(map(mapToIssuer));
453
453
  }
454
+ getImpersonation() {
455
+ return this.store.state?.oAuthConfig?.impersonation || {};
456
+ }
457
+ getImpersonation$() {
458
+ return this.store.sliceState(state => state?.oAuthConfig?.impersonation || {});
459
+ }
454
460
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.5", ngImport: i0, type: EnvironmentService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
455
461
  static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.1.5", ngImport: i0, type: EnvironmentService, providedIn: 'root' }); }
456
462
  }
@@ -663,6 +669,7 @@ class SessionStateService {
663
669
  this.configState = configState;
664
670
  this.localStorageService = localStorageService;
665
671
  this.store = new InternalStore({});
672
+ this.document = inject(DOCUMENT);
666
673
  this.updateLocalStorage = () => {
667
674
  this.localStorageService.setItem('abpSession', JSON.stringify(this.store.state));
668
675
  };
@@ -685,9 +692,7 @@ class SessionStateService {
685
692
  if (lang.includes(';')) {
686
693
  lang = lang.split(';')[0];
687
694
  }
688
- if (appLanguage !== lang) {
689
- this.setLanguage(lang);
690
- }
695
+ this.setLanguage(lang);
691
696
  });
692
697
  }
693
698
  onLanguageChange$() {
@@ -714,10 +719,14 @@ class SessionStateService {
714
719
  this.store.set({ ...this.store.state, tenant });
715
720
  }
716
721
  setLanguage(language) {
717
- if (language === this.store.state.language)
718
- return;
719
- this.store.patch({ language });
720
- document.documentElement.setAttribute('lang', language);
722
+ const currentLanguage = this.store.state.language;
723
+ if (language !== currentLanguage) {
724
+ this.store.patch({ language });
725
+ }
726
+ const currentAttribute = this.document.documentElement.getAttribute('lang');
727
+ if (language !== currentAttribute) {
728
+ this.document.documentElement.setAttribute('lang', language);
729
+ }
721
730
  }
722
731
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.5", ngImport: i0, type: SessionStateService, deps: [{ token: ConfigStateService }, { token: AbpLocalStorageService }], target: i0.ɵɵFactoryTarget.Injectable }); }
723
732
  static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.1.5", ngImport: i0, type: SessionStateService, providedIn: 'root' }); }