@rxap/layout 16.0.0-dev.26 → 16.0.0-dev.28

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/CHANGELOG.md CHANGED
@@ -3,6 +3,24 @@
3
3
  All notable changes to this project will be documented in this file.
4
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
5
 
6
+ # [16.0.0-dev.28](https://gitlab.com/rxap/packages/compare/@rxap/layout@16.0.0-dev.27...@rxap/layout@16.0.0-dev.28) (2023-09-21)
7
+
8
+ ### Bug Fixes
9
+
10
+ - move status infiltrator to layout component ([1d1f69b](https://gitlab.com/rxap/packages/commit/1d1f69b22ae171a9d69b7d6d9e3f4e9f2e0849ee))
11
+ - support advanced settings for layout sidenav ([65ff765](https://gitlab.com/rxap/packages/commit/65ff765b66f799de5089c954d34532bc9b4a7e77))
12
+
13
+ # [16.0.0-dev.27](https://gitlab.com/rxap/packages/compare/@rxap/layout@16.0.0-dev.26...@rxap/layout@16.0.0-dev.27) (2023-09-19)
14
+
15
+ ### Bug Fixes
16
+
17
+ - refactor user service use ([cf553c9](https://gitlab.com/rxap/packages/commit/cf553c96765bfbc0ded49c6611e4d57903e55647))
18
+ - use authorization service directly ([35ec333](https://gitlab.com/rxap/packages/commit/35ec333dc0f2959302f9fa74160de8a8d1437a7f))
19
+
20
+ ### Features
21
+
22
+ - add language utility services ([96e6785](https://gitlab.com/rxap/packages/commit/96e67855bfcb27f274393526d1ab81f6d7c2f24a))
23
+
6
24
  # [16.0.0-dev.26](https://gitlab.com/rxap/packages/compare/@rxap/layout@16.0.0-dev.25...@rxap/layout@16.0.0-dev.26) (2023-09-18)
7
25
 
8
26
  ### Bug Fixes
package/README.md CHANGED
@@ -17,5 +17,5 @@ yarn add @rxap/layout
17
17
  ```
18
18
  **Install peer dependencies:**
19
19
  ```bash
20
- yarn add @angular/animations@^16.1.4 @angular/cdk@^16.1.4 @angular/common@^16.1.4 @angular/core@^16.1.4 @angular/flex-layout@^15.0.0-beta.42 @angular/forms@^16.1.4 @angular/material@^16.1.4 @angular/router@^16.1.4 @rxap/authentication@^16.0.0-dev.14 @rxap/browser-utilities@^0.0.2-dev.8 @rxap/config@^16.0.0-dev.15 @rxap/data-source@^16.0.0-dev.18 @rxap/directives@^16.0.0-dev.15 @rxap/environment@^16.0.0-dev.15 @rxap/icon@^16.0.0-dev.15 @rxap/material-directives@^16.0.0-dev.17 @rxap/ngx-changelog@^16.1.0-dev.0 @rxap/ngx-status-check@^16.1.0-dev.8 @rxap/services@^16.0.0-dev.14 @rxap/utilities@^16.0.0-dev.18 rxjs@^7.8.0 tslib@2.6.2
20
+ yarn add @angular/animations@^16.1.4 @angular/cdk@^16.1.4 @angular/common@^16.1.4 @angular/core@^16.1.4 @angular/flex-layout@^15.0.0-beta.42 @angular/forms@^16.1.4 @angular/material@^16.1.4 @angular/router@^16.1.4 @rxap/authentication@^16.0.0-dev.15 @rxap/authorization@^16.0.0-dev.20 @rxap/browser-utilities@^0.0.2-dev.8 @rxap/config@^16.0.0-dev.16 @rxap/data-source@^16.0.0-dev.18 @rxap/directives@^16.0.0-dev.15 @rxap/environment@^16.0.0-dev.15 @rxap/icon@^16.0.0-dev.15 @rxap/material-directives@^16.0.0-dev.17 @rxap/ngx-changelog@^16.1.0-dev.1 @rxap/ngx-localize@^16.1.0-dev.0 @rxap/ngx-status-check@^16.1.0-dev.8 @rxap/ngx-user@^16.1.0-dev.0 @rxap/services@^16.0.0-dev.15 @rxap/utilities@^16.0.0-dev.18 rxjs@^7.8.0 tslib@2.6.2
21
21
  ```
package/esm2022/index.mjs CHANGED
@@ -37,8 +37,5 @@ export * from './lib/window-container-sidenav/window-container-sidenav.component
37
37
  // endregion
38
38
  export * from './lib/footer.directive';
39
39
  export * from './lib/types';
40
- export * from './lib/i18n-check.guard';
41
- export * from './lib/i18n.service';
42
- export * from './lib/language-selector.service';
43
40
  export * from './lib/app-url.service';
44
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9hbmd1bGFyL2xheW91dC9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxjQUFjLENBQUM7QUFFN0IsZ0JBQWdCO0FBR2hCLGNBQWMsK0JBQStCLENBQUM7QUFFOUMsWUFBWTtBQUVaLGdCQUFnQjtBQUdoQixjQUFjLCtCQUErQixDQUFDO0FBRTlDLGNBQWMsMENBQTBDLENBQUM7QUFFekQsY0FBYyw0REFBNEQsQ0FBQztBQUUzRSxjQUFjLGtEQUFrRCxDQUFDO0FBRWpFLGNBQWMsb0VBQW9FLENBQUM7QUFFbkYsY0FBYyx3RUFBd0UsQ0FBQztBQUd2RixjQUFjLGdEQUFnRCxDQUFDO0FBRS9ELFlBQVk7QUFFWixnQkFBZ0I7QUFFaEIsY0FBYywrQkFBK0IsQ0FBQztBQUM5QyxjQUFjLHVDQUF1QyxDQUFDO0FBRXRELFlBQVk7QUFFWixvQkFBb0I7QUFFcEIsY0FBYyxrQ0FBa0MsQ0FBQztBQUNqRCxjQUFjLCtDQUErQyxDQUFDO0FBQzlELGNBQWMscUNBQXFDLENBQUM7QUFFcEQsY0FBYyx1Q0FBdUMsQ0FBQztBQUN0RCxjQUFjLDREQUE0RCxDQUFDO0FBRTNFLFlBQVk7QUFFWixpQkFBaUI7QUFHakIsY0FBYyxpQ0FBaUMsQ0FBQztBQUNoRCxjQUFjLHdDQUF3QyxDQUFDO0FBQ3ZELGNBQWMsd0NBQXdDLENBQUM7QUFDdkQsY0FBYyx5Q0FBeUMsQ0FBQztBQUN4RCxjQUFjLHlDQUF5QyxDQUFDO0FBR3hELFlBQVk7QUFFWixzQ0FBc0M7QUFHdEMsY0FBYywyRUFBMkUsQ0FBQztBQUUxRixZQUFZO0FBRVosa0NBQWtDO0FBRWxDLGNBQWMsbUVBQW1FLENBQUM7QUFHbEYsWUFBWTtBQUVaLGNBQWMsd0JBQXdCLENBQUM7QUFDdkMsY0FBYyxhQUFhLENBQUM7QUFDNUIsY0FBYyx3QkFBd0IsQ0FBQztBQUN2QyxjQUFjLG9CQUFvQixDQUFDO0FBQ25DLGNBQWMsaUNBQWlDLENBQUM7QUFDaEQsY0FBYyx1QkFBdUIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vbGliL3Rva2Vucyc7XG5cbi8vIHJlZ2lvbiBmb290ZXJcblxuXG5leHBvcnQgKiBmcm9tICcuL2xpYi9mb290ZXIvZm9vdGVyLmNvbXBvbmVudCc7XG5cbi8vIGVuZHJlZ2lvblxuXG4vLyByZWdpb24gaGVhZGVyXG5cblxuZXhwb3J0ICogZnJvbSAnLi9saWIvaGVhZGVyL2hlYWRlci5jb21wb25lbnQnO1xuXG5leHBvcnQgKiBmcm9tICcuL2xpYi9oZWFkZXIvc2lnbi1vdXQvc2lnbi1vdXQuY29tcG9uZW50JztcblxuZXhwb3J0ICogZnJvbSAnLi9saWIvaGVhZGVyL3VzZXItcHJvZmlsZS1pY29uL3VzZXItcHJvZmlsZS1pY29uLmNvbXBvbmVudCc7XG5cbmV4cG9ydCAqIGZyb20gJy4vbGliL2hlYWRlci9yZXNldC1idXR0b24vcmVzZXQtYnV0dG9uLmNvbXBvbmVudCc7XG5cbmV4cG9ydCAqIGZyb20gJy4vbGliL2hlYWRlci9zaWRlbmF2LXRvZ2dsZS1idXR0b24vc2lkZW5hdi10b2dnbGUtYnV0dG9uLmNvbXBvbmVudCc7XG5cbmV4cG9ydCAqIGZyb20gJy4vbGliL2hlYWRlci9uYXZpZ2F0aW9uLXByb2dyZXNzLWJhci9uYXZpZ2F0aW9uLXByb2dyZXNzLWJhci5jb21wb25lbnQnO1xuXG5cbmV4cG9ydCAqIGZyb20gJy4vbGliL2hlYWRlci9hcHBzLWJ1dHRvbi9hcHBzLWJ1dHRvbi5jb21wb25lbnQnO1xuXG4vLyBlbmRyZWdpb25cblxuLy8gcmVnaW9uIGxheW91dFxuXG5leHBvcnQgKiBmcm9tICcuL2xpYi9sYXlvdXQvbGF5b3V0LmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9sYXlvdXQvbGF5b3V0LmNvbXBvbmVudC5zZXJ2aWNlJztcblxuLy8gZW5kcmVnaW9uXG5cbi8vIHJlZ2lvbiBuYXZpZ2F0aW9uXG5cbmV4cG9ydCAqIGZyb20gJy4vbGliL25hdmlnYXRpb24vbmF2aWdhdGlvbi1pdGVtJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL25hdmlnYXRpb24vcmVwbGFjZS1yb3V0ZXItcGF0aHMuc2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9uYXZpZ2F0aW9uL25hdmlnYXRpb24uc2VydmljZSc7XG5cbmV4cG9ydCAqIGZyb20gJy4vbGliL25hdmlnYXRpb24vbmF2aWdhdGlvbi5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvbmF2aWdhdGlvbi9uYXZpZ2F0aW9uLWl0ZW0vbmF2aWdhdGlvbi1pdGVtLmNvbXBvbmVudCc7XG5cbi8vIGVuZHJlZ2lvblxuXG4vLyByZWdpb24gc2lkZW5hdlxuXG5cbmV4cG9ydCAqIGZyb20gJy4vbGliL3NpZGVuYXYvc2lkZW5hdi5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvc2lkZW5hdi9zaWRlbmF2LWhlYWRlci5kaXJlY3RpdmUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvc2lkZW5hdi9zaWRlbmF2LWZvb3Rlci5kaXJlY3RpdmUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvc2lkZW5hdi9zaWRlbmF2LmNvbXBvbmVudC5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3NpZGVuYXYvdmVyc2lvbi92ZXJzaW9uLmNvbXBvbmVudCc7XG5cblxuLy8gZW5kcmVnaW9uXG5cbi8vIHJlZ2lvbiB0b2dnbGUgd2luZG93IHNpZGVuYXYgYnV0dG9uXG5cblxuZXhwb3J0ICogZnJvbSAnLi9saWIvdG9nZ2xlLXdpbmRvdy1zaWRlbmF2LWJ1dHRvbi90b2dnbGUtd2luZG93LXNpZGVuYXYtYnV0dG9uLmNvbXBvbmVudCc7XG5cbi8vIGVuZHJlZ2lvblxuXG4vLyByZWdpb24gd2luZG93IGNvbnRhaW5lciBzaWRlbmF2XG5cbmV4cG9ydCAqIGZyb20gJy4vbGliL3dpbmRvdy1jb250YWluZXItc2lkZW5hdi93aW5kb3ctY29udGFpbmVyLXNpZGVuYXYuY29tcG9uZW50JztcblxuXG4vLyBlbmRyZWdpb25cblxuZXhwb3J0ICogZnJvbSAnLi9saWIvZm9vdGVyLmRpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi90eXBlcyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9pMThuLWNoZWNrLmd1YXJkJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2kxOG4uc2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9sYW5ndWFnZS1zZWxlY3Rvci5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2FwcC11cmwuc2VydmljZSc7XG4iXX0=
41
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9hbmd1bGFyL2xheW91dC9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxjQUFjLENBQUM7QUFFN0IsZ0JBQWdCO0FBR2hCLGNBQWMsK0JBQStCLENBQUM7QUFFOUMsWUFBWTtBQUVaLGdCQUFnQjtBQUdoQixjQUFjLCtCQUErQixDQUFDO0FBRTlDLGNBQWMsMENBQTBDLENBQUM7QUFFekQsY0FBYyw0REFBNEQsQ0FBQztBQUUzRSxjQUFjLGtEQUFrRCxDQUFDO0FBRWpFLGNBQWMsb0VBQW9FLENBQUM7QUFFbkYsY0FBYyx3RUFBd0UsQ0FBQztBQUd2RixjQUFjLGdEQUFnRCxDQUFDO0FBRS9ELFlBQVk7QUFFWixnQkFBZ0I7QUFFaEIsY0FBYywrQkFBK0IsQ0FBQztBQUM5QyxjQUFjLHVDQUF1QyxDQUFDO0FBRXRELFlBQVk7QUFFWixvQkFBb0I7QUFFcEIsY0FBYyxrQ0FBa0MsQ0FBQztBQUNqRCxjQUFjLCtDQUErQyxDQUFDO0FBQzlELGNBQWMscUNBQXFDLENBQUM7QUFFcEQsY0FBYyx1Q0FBdUMsQ0FBQztBQUN0RCxjQUFjLDREQUE0RCxDQUFDO0FBRTNFLFlBQVk7QUFFWixpQkFBaUI7QUFHakIsY0FBYyxpQ0FBaUMsQ0FBQztBQUNoRCxjQUFjLHdDQUF3QyxDQUFDO0FBQ3ZELGNBQWMsd0NBQXdDLENBQUM7QUFDdkQsY0FBYyx5Q0FBeUMsQ0FBQztBQUN4RCxjQUFjLHlDQUF5QyxDQUFDO0FBR3hELFlBQVk7QUFFWixzQ0FBc0M7QUFHdEMsY0FBYywyRUFBMkUsQ0FBQztBQUUxRixZQUFZO0FBRVosa0NBQWtDO0FBRWxDLGNBQWMsbUVBQW1FLENBQUM7QUFHbEYsWUFBWTtBQUVaLGNBQWMsd0JBQXdCLENBQUM7QUFDdkMsY0FBYyxhQUFhLENBQUM7QUFDNUIsY0FBYyx1QkFBdUIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vbGliL3Rva2Vucyc7XG5cbi8vIHJlZ2lvbiBmb290ZXJcblxuXG5leHBvcnQgKiBmcm9tICcuL2xpYi9mb290ZXIvZm9vdGVyLmNvbXBvbmVudCc7XG5cbi8vIGVuZHJlZ2lvblxuXG4vLyByZWdpb24gaGVhZGVyXG5cblxuZXhwb3J0ICogZnJvbSAnLi9saWIvaGVhZGVyL2hlYWRlci5jb21wb25lbnQnO1xuXG5leHBvcnQgKiBmcm9tICcuL2xpYi9oZWFkZXIvc2lnbi1vdXQvc2lnbi1vdXQuY29tcG9uZW50JztcblxuZXhwb3J0ICogZnJvbSAnLi9saWIvaGVhZGVyL3VzZXItcHJvZmlsZS1pY29uL3VzZXItcHJvZmlsZS1pY29uLmNvbXBvbmVudCc7XG5cbmV4cG9ydCAqIGZyb20gJy4vbGliL2hlYWRlci9yZXNldC1idXR0b24vcmVzZXQtYnV0dG9uLmNvbXBvbmVudCc7XG5cbmV4cG9ydCAqIGZyb20gJy4vbGliL2hlYWRlci9zaWRlbmF2LXRvZ2dsZS1idXR0b24vc2lkZW5hdi10b2dnbGUtYnV0dG9uLmNvbXBvbmVudCc7XG5cbmV4cG9ydCAqIGZyb20gJy4vbGliL2hlYWRlci9uYXZpZ2F0aW9uLXByb2dyZXNzLWJhci9uYXZpZ2F0aW9uLXByb2dyZXNzLWJhci5jb21wb25lbnQnO1xuXG5cbmV4cG9ydCAqIGZyb20gJy4vbGliL2hlYWRlci9hcHBzLWJ1dHRvbi9hcHBzLWJ1dHRvbi5jb21wb25lbnQnO1xuXG4vLyBlbmRyZWdpb25cblxuLy8gcmVnaW9uIGxheW91dFxuXG5leHBvcnQgKiBmcm9tICcuL2xpYi9sYXlvdXQvbGF5b3V0LmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9sYXlvdXQvbGF5b3V0LmNvbXBvbmVudC5zZXJ2aWNlJztcblxuLy8gZW5kcmVnaW9uXG5cbi8vIHJlZ2lvbiBuYXZpZ2F0aW9uXG5cbmV4cG9ydCAqIGZyb20gJy4vbGliL25hdmlnYXRpb24vbmF2aWdhdGlvbi1pdGVtJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL25hdmlnYXRpb24vcmVwbGFjZS1yb3V0ZXItcGF0aHMuc2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9uYXZpZ2F0aW9uL25hdmlnYXRpb24uc2VydmljZSc7XG5cbmV4cG9ydCAqIGZyb20gJy4vbGliL25hdmlnYXRpb24vbmF2aWdhdGlvbi5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvbmF2aWdhdGlvbi9uYXZpZ2F0aW9uLWl0ZW0vbmF2aWdhdGlvbi1pdGVtLmNvbXBvbmVudCc7XG5cbi8vIGVuZHJlZ2lvblxuXG4vLyByZWdpb24gc2lkZW5hdlxuXG5cbmV4cG9ydCAqIGZyb20gJy4vbGliL3NpZGVuYXYvc2lkZW5hdi5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvc2lkZW5hdi9zaWRlbmF2LWhlYWRlci5kaXJlY3RpdmUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvc2lkZW5hdi9zaWRlbmF2LWZvb3Rlci5kaXJlY3RpdmUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvc2lkZW5hdi9zaWRlbmF2LmNvbXBvbmVudC5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3NpZGVuYXYvdmVyc2lvbi92ZXJzaW9uLmNvbXBvbmVudCc7XG5cblxuLy8gZW5kcmVnaW9uXG5cbi8vIHJlZ2lvbiB0b2dnbGUgd2luZG93IHNpZGVuYXYgYnV0dG9uXG5cblxuZXhwb3J0ICogZnJvbSAnLi9saWIvdG9nZ2xlLXdpbmRvdy1zaWRlbmF2LWJ1dHRvbi90b2dnbGUtd2luZG93LXNpZGVuYXYtYnV0dG9uLmNvbXBvbmVudCc7XG5cbi8vIGVuZHJlZ2lvblxuXG4vLyByZWdpb24gd2luZG93IGNvbnRhaW5lciBzaWRlbmF2XG5cbmV4cG9ydCAqIGZyb20gJy4vbGliL3dpbmRvdy1jb250YWluZXItc2lkZW5hdi93aW5kb3ctY29udGFpbmVyLXNpZGVuYXYuY29tcG9uZW50JztcblxuXG4vLyBlbmRyZWdpb25cblxuZXhwb3J0ICogZnJvbSAnLi9saWIvZm9vdGVyLmRpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi90eXBlcyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9hcHAtdXJsLnNlcnZpY2UnO1xuIl19
@@ -1,16 +1,17 @@
1
1
  import { Inject, Injectable, LOCALE_ID, } from '@angular/core';
2
- import { RxapUserProfileService } from '@rxap/authentication';
2
+ import { AuthorizationService } from '@rxap/authorization';
3
3
  import { ClickOnLink } from '@rxap/browser-utilities';
4
4
  import { ConfigService } from '@rxap/config';
5
5
  import { JoinPath } from '@rxap/utilities';
6
+ import { firstValueFrom } from 'rxjs';
6
7
  import * as i0 from "@angular/core";
7
8
  import * as i1 from "@rxap/config";
8
- import * as i2 from "@rxap/authentication";
9
+ import * as i2 from "@rxap/authorization";
9
10
  export class AppUrlService {
10
- constructor(config, localeId, userProfileService) {
11
+ constructor(config, localeId, authorizationService) {
11
12
  this.config = config;
12
13
  this.localeId = localeId;
13
- this.userProfileService = userProfileService;
14
+ this.authorizationService = authorizationService;
14
15
  this._apps = this.config.get('navigation.apps', []);
15
16
  }
16
17
  getApp(appId) {
@@ -31,27 +32,28 @@ export class AppUrlService {
31
32
  }
32
33
  }
33
34
  async getAppList() {
34
- const roles = await this.userProfileService.getRoleList();
35
- return this._apps.filter(app => !app.hidden)
35
+ const appList = this
36
+ ._apps
37
+ .filter(app => !app.hidden)
36
38
  .map(app => ({
37
39
  ...app,
38
40
  href: JoinPath(app.href, this.getPathPrefix()),
39
- }))
40
- .filter(app => !app.permissions ||
41
- !app.permissions.length ||
42
- app.permissions.every(permission => roles.includes(permission)));
41
+ }));
42
+ const filteredAppList = [];
43
+ for (const app of appList) {
44
+ if (await firstValueFrom(this.authorizationService.hasPermission$(app.permissions))) {
45
+ filteredAppList.push(app);
46
+ }
47
+ }
48
+ return filteredAppList;
43
49
  }
44
50
  getPathPrefix() {
45
- switch (this.localeId) {
46
- case 'de-DE':
47
- return 'de';
48
- case 'en-US':
49
- return 'en';
50
- default:
51
- return 'de';
51
+ if (this.localeId) {
52
+ return this.localeId.replace(/-.+$/, '');
52
53
  }
54
+ return '';
53
55
  }
54
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.4", ngImport: i0, type: AppUrlService, deps: [{ token: i1.ConfigService }, { token: LOCALE_ID }, { token: i2.RxapUserProfileService }], target: i0.ɵɵFactoryTarget.Injectable }); }
56
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.4", ngImport: i0, type: AppUrlService, deps: [{ token: i1.ConfigService }, { token: LOCALE_ID }, { token: i2.AuthorizationService }], target: i0.ɵɵFactoryTarget.Injectable }); }
55
57
  static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.1.4", ngImport: i0, type: AppUrlService, providedIn: 'root' }); }
56
58
  }
57
59
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.4", ngImport: i0, type: AppUrlService, decorators: [{
@@ -60,5 +62,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.4", ngImpor
60
62
  }], ctorParameters: function () { return [{ type: i1.ConfigService }, { type: undefined, decorators: [{
61
63
  type: Inject,
62
64
  args: [LOCALE_ID]
63
- }] }, { type: i2.RxapUserProfileService }]; } });
64
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwLXVybC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvYW5ndWxhci9sYXlvdXQvc3JjL2xpYi9hcHAtdXJsLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLE1BQU0sRUFDTixVQUFVLEVBQ1YsU0FBUyxHQUNWLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQzlELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUN0RCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBQzdDLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQzs7OztBQWEzQyxNQUFNLE9BQU8sYUFBYTtJQUl4QixZQUNtQixNQUFxQixFQUVyQixRQUFnQixFQUNoQixrQkFBMEM7UUFIMUMsV0FBTSxHQUFOLE1BQU0sQ0FBZTtRQUVyQixhQUFRLEdBQVIsUUFBUSxDQUFRO1FBQ2hCLHVCQUFrQixHQUFsQixrQkFBa0IsQ0FBd0I7UUFFM0QsSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxpQkFBaUIsRUFBRSxFQUFFLENBQUMsQ0FBQztJQUN0RCxDQUFDO0lBRU0sTUFBTSxDQUFDLEtBQWE7UUFDekIsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsQ0FBQyxFQUFFLEtBQUssS0FBSyxDQUFDLElBQUksSUFBSSxDQUFDO0lBQzFELENBQUM7SUFFTSxTQUFTLENBQUMsS0FBYSxFQUFFLElBQVk7UUFFMUMsTUFBTSxHQUFHLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUUvQixJQUFJLEdBQUcsRUFBRTtZQUNQLE1BQU0sTUFBTSxHQUFHLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQztZQUNwQyxPQUFPLFFBQVEsQ0FBQyxHQUFHLENBQUMsSUFBSSxFQUFFLE1BQU0sRUFBRSxJQUFJLENBQUMsQ0FBQztTQUN6QztRQUVELE9BQU8sSUFBSSxDQUFDO0lBRWQsQ0FBQztJQUVNLFFBQVEsQ0FBQyxLQUFhLEVBQUUsSUFBWTtRQUV6QyxNQUFNLEdBQUcsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsQ0FBQztRQUV4QyxJQUFJLEdBQUcsRUFBRTtZQUNQLFdBQVcsQ0FBQyxHQUFHLENBQUMsQ0FBQztTQUNsQjtJQUVILENBQUM7SUFFTSxLQUFLLENBQUMsVUFBVTtRQUNyQixNQUFNLEtBQUssR0FBRyxNQUFNLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxXQUFXLEVBQUUsQ0FBQztRQUMxRCxPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDO2FBQ2hDLEdBQUcsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUM7WUFDWCxHQUFHLEdBQUc7WUFDTixJQUFJLEVBQUUsUUFBUSxDQUFDLEdBQUcsQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDO1NBQy9DLENBQUMsQ0FBQzthQUNGLE1BQU0sQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsR0FBRyxDQUFDLFdBQVc7WUFDN0IsQ0FBQyxHQUFHLENBQUMsV0FBVyxDQUFDLE1BQU07WUFDdkIsR0FBRyxDQUFDLFdBQVcsQ0FBQyxLQUFLLENBQUMsVUFBVSxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUNoRixDQUFDO0lBRU8sYUFBYTtRQUNuQixRQUFRLElBQUksQ0FBQyxRQUFRLEVBQUU7WUFFckIsS0FBSyxPQUFPO2dCQUNWLE9BQU8sSUFBSSxDQUFDO1lBRWQsS0FBSyxPQUFPO2dCQUNWLE9BQU8sSUFBSSxDQUFDO1lBRWQ7Z0JBQ0UsT0FBTyxJQUFJLENBQUM7U0FFZjtJQUNILENBQUM7OEdBakVVLGFBQWEsK0NBTWQsU0FBUztrSEFOUixhQUFhLGNBREEsTUFBTTs7MkZBQ25CLGFBQWE7a0JBRHpCLFVBQVU7bUJBQUMsRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFOzswQkFPN0IsTUFBTTsyQkFBQyxTQUFTIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgSW5qZWN0LFxuICBJbmplY3RhYmxlLFxuICBMT0NBTEVfSUQsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgUnhhcFVzZXJQcm9maWxlU2VydmljZSB9IGZyb20gJ0ByeGFwL2F1dGhlbnRpY2F0aW9uJztcbmltcG9ydCB7IENsaWNrT25MaW5rIH0gZnJvbSAnQHJ4YXAvYnJvd3Nlci11dGlsaXRpZXMnO1xuaW1wb3J0IHsgQ29uZmlnU2VydmljZSB9IGZyb20gJ0ByeGFwL2NvbmZpZyc7XG5pbXBvcnQgeyBKb2luUGF0aCB9IGZyb20gJ0ByeGFwL3V0aWxpdGllcyc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgRXh0ZXJuYWxBcHBzIHtcbiAgaW1hZ2U/OiBzdHJpbmc7XG4gIGxhYmVsOiBzdHJpbmc7XG4gIGhyZWY6IHN0cmluZztcbiAgZW1wdHk/OiBmYWxzZTtcbiAgaGlkZGVuPzogYm9vbGVhbjtcbiAgaWQ/OiBzdHJpbmc7XG4gIHBlcm1pc3Npb25zOiBzdHJpbmdbXTtcbn1cblxuQEluamVjdGFibGUoeyBwcm92aWRlZEluOiAncm9vdCcgfSlcbmV4cG9ydCBjbGFzcyBBcHBVcmxTZXJ2aWNlIHtcblxuICBwcml2YXRlIF9hcHBzOiBBcnJheTxFeHRlcm5hbEFwcHM+O1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgcmVhZG9ubHkgY29uZmlnOiBDb25maWdTZXJ2aWNlLFxuICAgIEBJbmplY3QoTE9DQUxFX0lEKVxuICAgIHByaXZhdGUgcmVhZG9ubHkgbG9jYWxlSWQ6IHN0cmluZyxcbiAgICBwcml2YXRlIHJlYWRvbmx5IHVzZXJQcm9maWxlU2VydmljZTogUnhhcFVzZXJQcm9maWxlU2VydmljZSxcbiAgKSB7XG4gICAgdGhpcy5fYXBwcyA9IHRoaXMuY29uZmlnLmdldCgnbmF2aWdhdGlvbi5hcHBzJywgW10pO1xuICB9XG5cbiAgcHVibGljIGdldEFwcChhcHBJZDogc3RyaW5nKTogRXh0ZXJuYWxBcHBzIHwgbnVsbCB7XG4gICAgcmV0dXJuIHRoaXMuX2FwcHMuZmluZChhcHAgPT4gYXBwLmlkID09PSBhcHBJZCkgPz8gbnVsbDtcbiAgfVxuXG4gIHB1YmxpYyBnZXRBcHBVcmwoYXBwSWQ6IHN0cmluZywgcGF0aDogc3RyaW5nKTogc3RyaW5nIHwgbnVsbCB7XG5cbiAgICBjb25zdCBhcHAgPSB0aGlzLmdldEFwcChhcHBJZCk7XG5cbiAgICBpZiAoYXBwKSB7XG4gICAgICBjb25zdCBwcmVmaXggPSB0aGlzLmdldFBhdGhQcmVmaXgoKTtcbiAgICAgIHJldHVybiBKb2luUGF0aChhcHAuaHJlZiwgcHJlZml4LCBwYXRoKTtcbiAgICB9XG5cbiAgICByZXR1cm4gbnVsbDtcblxuICB9XG5cbiAgcHVibGljIG5hdmlnYXRlKGFwcElkOiBzdHJpbmcsIHBhdGg6IHN0cmluZyk6IHZvaWQge1xuXG4gICAgY29uc3QgdXJsID0gdGhpcy5nZXRBcHBVcmwoYXBwSWQsIHBhdGgpO1xuXG4gICAgaWYgKHVybCkge1xuICAgICAgQ2xpY2tPbkxpbmsodXJsKTtcbiAgICB9XG5cbiAgfVxuXG4gIHB1YmxpYyBhc3luYyBnZXRBcHBMaXN0KCk6IFByb21pc2U8QXJyYXk8RXh0ZXJuYWxBcHBzPj4ge1xuICAgIGNvbnN0IHJvbGVzID0gYXdhaXQgdGhpcy51c2VyUHJvZmlsZVNlcnZpY2UuZ2V0Um9sZUxpc3QoKTtcbiAgICByZXR1cm4gdGhpcy5fYXBwcy5maWx0ZXIoYXBwID0+ICFhcHAuaGlkZGVuKVxuICAgICAgICAgICAgICAgLm1hcChhcHAgPT4gKHtcbiAgICAgICAgICAgICAgICAgLi4uYXBwLFxuICAgICAgICAgICAgICAgICBocmVmOiBKb2luUGF0aChhcHAuaHJlZiwgdGhpcy5nZXRQYXRoUHJlZml4KCkpLFxuICAgICAgICAgICAgICAgfSkpXG4gICAgICAgICAgICAgICAuZmlsdGVyKGFwcCA9PiAhYXBwLnBlcm1pc3Npb25zIHx8XG4gICAgICAgICAgICAgICAgICFhcHAucGVybWlzc2lvbnMubGVuZ3RoIHx8XG4gICAgICAgICAgICAgICAgIGFwcC5wZXJtaXNzaW9ucy5ldmVyeShwZXJtaXNzaW9uID0+IHJvbGVzLmluY2x1ZGVzKHBlcm1pc3Npb24pKSk7XG4gIH1cblxuICBwcml2YXRlIGdldFBhdGhQcmVmaXgoKTogc3RyaW5nIHtcbiAgICBzd2l0Y2ggKHRoaXMubG9jYWxlSWQpIHtcblxuICAgICAgY2FzZSAnZGUtREUnOlxuICAgICAgICByZXR1cm4gJ2RlJztcblxuICAgICAgY2FzZSAnZW4tVVMnOlxuICAgICAgICByZXR1cm4gJ2VuJztcblxuICAgICAgZGVmYXVsdDpcbiAgICAgICAgcmV0dXJuICdkZSc7XG5cbiAgICB9XG4gIH1cblxufVxuIl19
65
+ }] }, { type: i2.AuthorizationService }]; } });
66
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwLXVybC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvYW5ndWxhci9sYXlvdXQvc3JjL2xpYi9hcHAtdXJsLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLE1BQU0sRUFDTixVQUFVLEVBQ1YsU0FBUyxHQUNWLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQzNELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUN0RCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBQzdDLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMzQyxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sTUFBTSxDQUFDOzs7O0FBYXRDLE1BQU0sT0FBTyxhQUFhO0lBSXhCLFlBQ21CLE1BQXFCLEVBRXJCLFFBQWdCLEVBQ2hCLG9CQUEwQztRQUgxQyxXQUFNLEdBQU4sTUFBTSxDQUFlO1FBRXJCLGFBQVEsR0FBUixRQUFRLENBQVE7UUFDaEIseUJBQW9CLEdBQXBCLG9CQUFvQixDQUFzQjtRQUUzRCxJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLGlCQUFpQixFQUFFLEVBQUUsQ0FBQyxDQUFDO0lBQ3RELENBQUM7SUFFTSxNQUFNLENBQUMsS0FBYTtRQUN6QixPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxDQUFDLEVBQUUsS0FBSyxLQUFLLENBQUMsSUFBSSxJQUFJLENBQUM7SUFDMUQsQ0FBQztJQUVNLFNBQVMsQ0FBQyxLQUFhLEVBQUUsSUFBWTtRQUUxQyxNQUFNLEdBQUcsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBRS9CLElBQUksR0FBRyxFQUFFO1lBQ1AsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDO1lBQ3BDLE9BQU8sUUFBUSxDQUFDLEdBQUcsQ0FBQyxJQUFJLEVBQUUsTUFBTSxFQUFFLElBQUksQ0FBQyxDQUFDO1NBQ3pDO1FBRUQsT0FBTyxJQUFJLENBQUM7SUFFZCxDQUFDO0lBRU0sUUFBUSxDQUFDLEtBQWEsRUFBRSxJQUFZO1FBRXpDLE1BQU0sR0FBRyxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxFQUFFLElBQUksQ0FBQyxDQUFDO1FBRXhDLElBQUksR0FBRyxFQUFFO1lBQ1AsV0FBVyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1NBQ2xCO0lBRUgsQ0FBQztJQUVNLEtBQUssQ0FBQyxVQUFVO1FBQ3JCLE1BQU0sT0FBTyxHQUFHLElBQUk7YUFDakIsS0FBSzthQUNMLE1BQU0sQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQzthQUMxQixHQUFHLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDO1lBQ1gsR0FBRyxHQUFHO1lBQ04sSUFBSSxFQUFFLFFBQVEsQ0FBQyxHQUFHLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQztTQUMvQyxDQUFDLENBQUMsQ0FBQztRQUVOLE1BQU0sZUFBZSxHQUF3QixFQUFFLENBQUM7UUFDaEQsS0FBSyxNQUFNLEdBQUcsSUFBSSxPQUFPLEVBQUU7WUFDekIsSUFBSSxNQUFNLGNBQWMsQ0FBQyxJQUFJLENBQUMsb0JBQW9CLENBQUMsY0FBYyxDQUFDLEdBQUcsQ0FBQyxXQUFXLENBQUMsQ0FBQyxFQUFFO2dCQUNuRixlQUFlLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO2FBQzNCO1NBQ0Y7UUFDRCxPQUFPLGVBQWUsQ0FBQztJQUN6QixDQUFDO0lBRU8sYUFBYTtRQUNuQixJQUFJLElBQUksQ0FBQyxRQUFRLEVBQUU7WUFDakIsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxNQUFNLEVBQUUsRUFBRSxDQUFDLENBQUM7U0FDMUM7UUFDRCxPQUFPLEVBQUUsQ0FBQztJQUNaLENBQUM7OEdBL0RVLGFBQWEsK0NBTWQsU0FBUztrSEFOUixhQUFhLGNBREEsTUFBTTs7MkZBQ25CLGFBQWE7a0JBRHpCLFVBQVU7bUJBQUMsRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFOzswQkFPN0IsTUFBTTsyQkFBQyxTQUFTIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgSW5qZWN0LFxuICBJbmplY3RhYmxlLFxuICBMT0NBTEVfSUQsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQXV0aG9yaXphdGlvblNlcnZpY2UgfSBmcm9tICdAcnhhcC9hdXRob3JpemF0aW9uJztcbmltcG9ydCB7IENsaWNrT25MaW5rIH0gZnJvbSAnQHJ4YXAvYnJvd3Nlci11dGlsaXRpZXMnO1xuaW1wb3J0IHsgQ29uZmlnU2VydmljZSB9IGZyb20gJ0ByeGFwL2NvbmZpZyc7XG5pbXBvcnQgeyBKb2luUGF0aCB9IGZyb20gJ0ByeGFwL3V0aWxpdGllcyc7XG5pbXBvcnQgeyBmaXJzdFZhbHVlRnJvbSB9IGZyb20gJ3J4anMnO1xuXG5leHBvcnQgaW50ZXJmYWNlIEV4dGVybmFsQXBwcyB7XG4gIGltYWdlPzogc3RyaW5nO1xuICBsYWJlbDogc3RyaW5nO1xuICBocmVmOiBzdHJpbmc7XG4gIGVtcHR5PzogZmFsc2U7XG4gIGhpZGRlbj86IGJvb2xlYW47XG4gIGlkPzogc3RyaW5nO1xuICBwZXJtaXNzaW9uczogc3RyaW5nW107XG59XG5cbkBJbmplY3RhYmxlKHsgcHJvdmlkZWRJbjogJ3Jvb3QnIH0pXG5leHBvcnQgY2xhc3MgQXBwVXJsU2VydmljZSB7XG5cbiAgcHJpdmF0ZSBfYXBwczogQXJyYXk8RXh0ZXJuYWxBcHBzPjtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHJlYWRvbmx5IGNvbmZpZzogQ29uZmlnU2VydmljZSxcbiAgICBASW5qZWN0KExPQ0FMRV9JRClcbiAgICBwcml2YXRlIHJlYWRvbmx5IGxvY2FsZUlkOiBzdHJpbmcsXG4gICAgcHJpdmF0ZSByZWFkb25seSBhdXRob3JpemF0aW9uU2VydmljZTogQXV0aG9yaXphdGlvblNlcnZpY2UsXG4gICkge1xuICAgIHRoaXMuX2FwcHMgPSB0aGlzLmNvbmZpZy5nZXQoJ25hdmlnYXRpb24uYXBwcycsIFtdKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXRBcHAoYXBwSWQ6IHN0cmluZyk6IEV4dGVybmFsQXBwcyB8IG51bGwge1xuICAgIHJldHVybiB0aGlzLl9hcHBzLmZpbmQoYXBwID0+IGFwcC5pZCA9PT0gYXBwSWQpID8/IG51bGw7XG4gIH1cblxuICBwdWJsaWMgZ2V0QXBwVXJsKGFwcElkOiBzdHJpbmcsIHBhdGg6IHN0cmluZyk6IHN0cmluZyB8IG51bGwge1xuXG4gICAgY29uc3QgYXBwID0gdGhpcy5nZXRBcHAoYXBwSWQpO1xuXG4gICAgaWYgKGFwcCkge1xuICAgICAgY29uc3QgcHJlZml4ID0gdGhpcy5nZXRQYXRoUHJlZml4KCk7XG4gICAgICByZXR1cm4gSm9pblBhdGgoYXBwLmhyZWYsIHByZWZpeCwgcGF0aCk7XG4gICAgfVxuXG4gICAgcmV0dXJuIG51bGw7XG5cbiAgfVxuXG4gIHB1YmxpYyBuYXZpZ2F0ZShhcHBJZDogc3RyaW5nLCBwYXRoOiBzdHJpbmcpOiB2b2lkIHtcblxuICAgIGNvbnN0IHVybCA9IHRoaXMuZ2V0QXBwVXJsKGFwcElkLCBwYXRoKTtcblxuICAgIGlmICh1cmwpIHtcbiAgICAgIENsaWNrT25MaW5rKHVybCk7XG4gICAgfVxuXG4gIH1cblxuICBwdWJsaWMgYXN5bmMgZ2V0QXBwTGlzdCgpOiBQcm9taXNlPEFycmF5PEV4dGVybmFsQXBwcz4+IHtcbiAgICBjb25zdCBhcHBMaXN0ID0gdGhpc1xuICAgICAgLl9hcHBzXG4gICAgICAuZmlsdGVyKGFwcCA9PiAhYXBwLmhpZGRlbilcbiAgICAgIC5tYXAoYXBwID0+ICh7XG4gICAgICAgIC4uLmFwcCxcbiAgICAgICAgaHJlZjogSm9pblBhdGgoYXBwLmhyZWYsIHRoaXMuZ2V0UGF0aFByZWZpeCgpKSxcbiAgICAgIH0pKTtcblxuICAgIGNvbnN0IGZpbHRlcmVkQXBwTGlzdDogQXJyYXk8RXh0ZXJuYWxBcHBzPiA9IFtdO1xuICAgIGZvciAoY29uc3QgYXBwIG9mIGFwcExpc3QpIHtcbiAgICAgIGlmIChhd2FpdCBmaXJzdFZhbHVlRnJvbSh0aGlzLmF1dGhvcml6YXRpb25TZXJ2aWNlLmhhc1Blcm1pc3Npb24kKGFwcC5wZXJtaXNzaW9ucykpKSB7XG4gICAgICAgIGZpbHRlcmVkQXBwTGlzdC5wdXNoKGFwcCk7XG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiBmaWx0ZXJlZEFwcExpc3Q7XG4gIH1cblxuICBwcml2YXRlIGdldFBhdGhQcmVmaXgoKTogc3RyaW5nIHtcbiAgICBpZiAodGhpcy5sb2NhbGVJZCkge1xuICAgICAgcmV0dXJuIHRoaXMubG9jYWxlSWQucmVwbGFjZSgvLS4rJC8sICcnKTtcbiAgICB9XG4gICAgcmV0dXJuICcnO1xuICB9XG5cbn1cbiJdfQ==
@@ -1,5 +1,6 @@
1
1
  import { AsyncPipe, NgClass, NgIf, } from '@angular/common';
2
2
  import { ChangeDetectionStrategy, Component, Inject, Input, Optional, } from '@angular/core';
3
+ import { toSignal } from '@angular/core/rxjs-interop';
3
4
  import { FormsModule } from '@angular/forms';
4
5
  import { MatButtonModule } from '@angular/material/button';
5
6
  import { MatOptionModule, } from '@angular/material/core';
@@ -7,31 +8,35 @@ import { MatFormFieldModule } from '@angular/material/form-field';
7
8
  import { MatIconModule } from '@angular/material/icon';
8
9
  import { MatMenuModule } from '@angular/material/menu';
9
10
  import { MatSelectModule } from '@angular/material/select';
10
- import { MatSidenav } from '@angular/material/sidenav';
11
11
  import { MatSlideToggleModule } from '@angular/material/slide-toggle';
12
12
  import { MatToolbarModule } from '@angular/material/toolbar';
13
13
  import { DataSourceCollectionDirective } from '@rxap/data-source/directive';
14
14
  import { StopPropagationDirective } from '@rxap/directives';
15
- import { StatusIndicatorComponent } from '@rxap/ngx-status-check';
16
15
  import { HeaderService } from '@rxap/services';
17
16
  import { Subscription } from 'rxjs';
18
17
  import { tap } from 'rxjs/operators';
18
+ import { LayoutComponentService } from '../layout/layout.component.service';
19
19
  import { RXAP_HEADER_COMPONENT } from '../tokens';
20
20
  import { AppsButtonComponent } from './apps-button/apps-button.component';
21
- import { LanguageSelectorComponent } from './language-selector/language-selector.component';
22
21
  import { NavigationProgressBarComponent } from './navigation-progress-bar/navigation-progress-bar.component';
23
22
  import { SettingsButtonComponent } from './settings-button/settings-button.component';
23
+ import { SidenavToggleButtonComponent } from './sidenav-toggle-button/sidenav-toggle-button.component';
24
24
  import { UserProfileIconComponent } from './user-profile-icon/user-profile-icon.component';
25
25
  import * as i0 from "@angular/core";
26
- import * as i1 from "@angular/material/toolbar";
27
- import * as i2 from "@rxap/services";
26
+ import * as i1 from "../layout/layout.component.service";
27
+ import * as i2 from "@angular/material/toolbar";
28
+ import * as i3 from "@rxap/services";
28
29
  export class HeaderComponent {
29
- constructor(headerComponentService, headerComponent) {
30
+ constructor(headerComponentService, layoutComponentService, headerComponent) {
30
31
  this.headerComponentService = headerComponentService;
32
+ this.layoutComponentService = layoutComponentService;
31
33
  this.headerComponent = headerComponent;
32
34
  this.components = [];
33
35
  this.subscriptions = new Subscription();
34
36
  this.color = undefined;
37
+ this.collapsable =
38
+ toSignal(layoutComponentService.collapsable$, { initialValue: layoutComponentService.collapsable$.value });
39
+ this.opened = toSignal(layoutComponentService.opened$, { initialValue: layoutComponentService.opened$.value });
35
40
  }
36
41
  ngOnInit() {
37
42
  this.updateComponents();
@@ -45,8 +50,8 @@ export class HeaderComponent {
45
50
  ngOnDestroy() {
46
51
  this.subscriptions.unsubscribe();
47
52
  }
48
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.4", ngImport: i0, type: HeaderComponent, deps: [{ token: HeaderService }, { token: RXAP_HEADER_COMPONENT, optional: true }], target: i0.ɵɵFactoryTarget.Component }); }
49
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.4", type: HeaderComponent, isStandalone: true, selector: "rxap-header", inputs: { sidenav: "sidenav", color: "color" }, ngImport: i0, template: "<mat-toolbar [color]=\"color\" [ngClass]=\"{ open: sidenav?.opened }\" class=\"mat-elevation-z3 header\">\n <div class=\"w-full flex flex-row gap-x-4 justify-between items-center\">\n <rxap-status-indicator class=\"grow-0\"></rxap-status-indicator>\n <div class=\"grow\">\n <ng-content></ng-content>\n </div>\n <rxap-apps-button class=\"grow-0\"></rxap-apps-button>\n <rxap-settings-button class=\"grow-0\"></rxap-settings-button>\n <rxap-user-profile-icon class=\"grow-0\"></rxap-user-profile-icon>\n </div>\n</mat-toolbar>\n\n<rxap-navigation-progress-bar></rxap-navigation-progress-bar>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: MatToolbarModule }, { kind: "component", type: i1.MatToolbar, selector: "mat-toolbar", inputs: ["color"], exportAs: ["matToolbar"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "ngmodule", type: MatButtonModule }, { kind: "ngmodule", type: MatMenuModule }, { kind: "ngmodule", type: MatIconModule }, { kind: "ngmodule", type: MatFormFieldModule }, { kind: "ngmodule", type: MatSelectModule }, { kind: "ngmodule", type: FormsModule }, { kind: "ngmodule", type: MatOptionModule }, { kind: "ngmodule", type: MatSlideToggleModule }, { kind: "component", type: NavigationProgressBarComponent, selector: "rxap-navigation-progress-bar" }, { kind: "component", type: UserProfileIconComponent, selector: "rxap-user-profile-icon" }, { kind: "component", type: AppsButtonComponent, selector: "rxap-apps-button" }, { kind: "component", type: SettingsButtonComponent, selector: "rxap-settings-button" }, { kind: "component", type: StatusIndicatorComponent, selector: "rxap-status-indicator" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
53
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.4", ngImport: i0, type: HeaderComponent, deps: [{ token: HeaderService }, { token: i1.LayoutComponentService }, { token: RXAP_HEADER_COMPONENT, optional: true }], target: i0.ɵɵFactoryTarget.Component }); }
54
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.4", type: HeaderComponent, isStandalone: true, selector: "rxap-header", inputs: { color: "color" }, ngImport: i0, template: "<mat-toolbar [color]=\"color\" [ngClass]=\"{ open: opened() }\" class=\"mat-elevation-z3 header\">\n <div class=\"w-full flex flex-row gap-x-4 justify-between items-center\">\n <rxap-sidenav-toggle-button *ngIf=\"!collapsable()\"></rxap-sidenav-toggle-button>\n <div class=\"grow\">\n <ng-content></ng-content>\n </div>\n <rxap-apps-button class=\"grow-0\"></rxap-apps-button>\n <rxap-settings-button class=\"grow-0\"></rxap-settings-button>\n <rxap-user-profile-icon class=\"grow-0\"></rxap-user-profile-icon>\n </div>\n</mat-toolbar>\n\n<rxap-navigation-progress-bar></rxap-navigation-progress-bar>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: MatToolbarModule }, { kind: "component", type: i2.MatToolbar, selector: "mat-toolbar", inputs: ["color"], exportAs: ["matToolbar"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: MatButtonModule }, { kind: "ngmodule", type: MatMenuModule }, { kind: "ngmodule", type: MatIconModule }, { kind: "ngmodule", type: MatFormFieldModule }, { kind: "ngmodule", type: MatSelectModule }, { kind: "ngmodule", type: FormsModule }, { kind: "ngmodule", type: MatOptionModule }, { kind: "ngmodule", type: MatSlideToggleModule }, { kind: "component", type: NavigationProgressBarComponent, selector: "rxap-navigation-progress-bar" }, { kind: "component", type: UserProfileIconComponent, selector: "rxap-user-profile-icon" }, { kind: "component", type: AppsButtonComponent, selector: "rxap-apps-button" }, { kind: "component", type: SettingsButtonComponent, selector: "rxap-settings-button" }, { kind: "component", type: SidenavToggleButtonComponent, selector: "rxap-sidenav-toggle-button" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
50
55
  }
51
56
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.4", ngImport: i0, type: HeaderComponent, decorators: [{
52
57
  type: Component,
@@ -57,7 +62,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.4", ngImpor
57
62
  MatButtonModule,
58
63
  MatMenuModule,
59
64
  MatIconModule,
60
- LanguageSelectorComponent,
61
65
  MatFormFieldModule,
62
66
  StopPropagationDirective,
63
67
  MatSelectModule,
@@ -70,19 +74,17 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.4", ngImpor
70
74
  UserProfileIconComponent,
71
75
  AppsButtonComponent,
72
76
  SettingsButtonComponent,
73
- StatusIndicatorComponent,
74
- ], template: "<mat-toolbar [color]=\"color\" [ngClass]=\"{ open: sidenav?.opened }\" class=\"mat-elevation-z3 header\">\n <div class=\"w-full flex flex-row gap-x-4 justify-between items-center\">\n <rxap-status-indicator class=\"grow-0\"></rxap-status-indicator>\n <div class=\"grow\">\n <ng-content></ng-content>\n </div>\n <rxap-apps-button class=\"grow-0\"></rxap-apps-button>\n <rxap-settings-button class=\"grow-0\"></rxap-settings-button>\n <rxap-user-profile-icon class=\"grow-0\"></rxap-user-profile-icon>\n </div>\n</mat-toolbar>\n\n<rxap-navigation-progress-bar></rxap-navigation-progress-bar>\n" }]
75
- }], ctorParameters: function () { return [{ type: i2.HeaderService, decorators: [{
77
+ SidenavToggleButtonComponent,
78
+ ], template: "<mat-toolbar [color]=\"color\" [ngClass]=\"{ open: opened() }\" class=\"mat-elevation-z3 header\">\n <div class=\"w-full flex flex-row gap-x-4 justify-between items-center\">\n <rxap-sidenav-toggle-button *ngIf=\"!collapsable()\"></rxap-sidenav-toggle-button>\n <div class=\"grow\">\n <ng-content></ng-content>\n </div>\n <rxap-apps-button class=\"grow-0\"></rxap-apps-button>\n <rxap-settings-button class=\"grow-0\"></rxap-settings-button>\n <rxap-user-profile-icon class=\"grow-0\"></rxap-user-profile-icon>\n </div>\n</mat-toolbar>\n\n<rxap-navigation-progress-bar></rxap-navigation-progress-bar>\n" }]
79
+ }], ctorParameters: function () { return [{ type: i3.HeaderService, decorators: [{
76
80
  type: Inject,
77
81
  args: [HeaderService]
78
- }] }, { type: undefined, decorators: [{
82
+ }] }, { type: i1.LayoutComponentService }, { type: undefined, decorators: [{
79
83
  type: Optional
80
84
  }, {
81
85
  type: Inject,
82
86
  args: [RXAP_HEADER_COMPONENT]
83
- }] }]; }, propDecorators: { sidenav: [{
84
- type: Input
85
- }], color: [{
87
+ }] }]; }, propDecorators: { color: [{
86
88
  type: Input
87
89
  }] } });
88
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGVhZGVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2FuZ3VsYXIvbGF5b3V0L3NyYy9saWIvaGVhZGVyL2hlYWRlci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9hbmd1bGFyL2xheW91dC9zcmMvbGliL2hlYWRlci9oZWFkZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFNBQVMsRUFDVCxPQUFPLEVBQ1AsSUFBSSxHQUNMLE1BQU0saUJBQWlCLENBQUM7QUFDekIsT0FBTyxFQUNMLHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsTUFBTSxFQUNOLEtBQUssRUFHTCxRQUFRLEdBQ1QsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzdDLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMzRCxPQUFPLEVBQ0wsZUFBZSxHQUVoQixNQUFNLHdCQUF3QixDQUFDO0FBQ2hDLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQ2xFLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUN2RCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDdkQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQzNELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUN2RCxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUN0RSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUM3RCxPQUFPLEVBQUUsNkJBQTZCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUM1RSxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUM1RCxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUNsRSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFL0MsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUNwQyxPQUFPLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDckMsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sV0FBVyxDQUFDO0FBQ2xELE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBQzFFLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLGlEQUFpRCxDQUFDO0FBQzVGLE9BQU8sRUFBRSw4QkFBOEIsRUFBRSxNQUFNLDZEQUE2RCxDQUFDO0FBQzdHLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLDZDQUE2QyxDQUFDO0FBQ3RGLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLGlEQUFpRCxDQUFDOzs7O0FBK0IzRixNQUFNLE9BQU8sZUFBZTtJQVcxQixZQUVrQixzQkFBcUMsRUFDSCxlQUFvQjtRQUR0RCwyQkFBc0IsR0FBdEIsc0JBQXNCLENBQWU7UUFDSCxvQkFBZSxHQUFmLGVBQWUsQ0FBSztRQVZqRSxlQUFVLEdBQTRCLEVBQUUsQ0FBQztRQUV6QyxrQkFBYSxHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7UUFHbkMsVUFBSyxHQUFpQixTQUFTLENBQUM7SUFPdkMsQ0FBQztJQUVNLFFBQVE7UUFDYixJQUFJLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQztRQUN4QixJQUFJLENBQUMsYUFBYSxDQUFDLEdBQUcsQ0FDcEIsSUFBSSxDQUFDLHNCQUFzQixDQUFDLE9BQU87YUFDOUIsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQyxDQUFDO2FBQ3hDLFNBQVMsRUFBRSxDQUNqQixDQUFDO0lBQ0osQ0FBQztJQUVNLGdCQUFnQjtRQUNyQixJQUFJLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxhQUFhLEVBQUUsQ0FBQztJQUNoRSxDQUFDO0lBRU0sV0FBVztRQUNoQixJQUFJLENBQUMsYUFBYSxDQUFDLFdBQVcsRUFBRSxDQUFDO0lBQ25DLENBQUM7OEdBakNVLGVBQWUsa0JBWWhCLGFBQWEsYUFFRCxxQkFBcUI7a0dBZGhDLGVBQWUsdUhDdEU1QiwwbUJBYUEseUREbUNJLGdCQUFnQixpSkFDaEIsT0FBTyxtRkFFUCxlQUFlLDhCQUNmLGFBQWEsOEJBQ2IsYUFBYSw4QkFFYixrQkFBa0IsOEJBRWxCLGVBQWUsOEJBQ2YsV0FBVyw4QkFDWCxlQUFlLDhCQUVmLG9CQUFvQiwrQkFFcEIsOEJBQThCLHlFQUM5Qix3QkFBd0IsbUVBQ3hCLG1CQUFtQiw2REFDbkIsdUJBQXVCLGlFQUN2Qix3QkFBd0I7OzJGQUdmLGVBQWU7a0JBN0IzQixTQUFTOytCQUNFLGFBQWEsbUJBR04sdUJBQXVCLENBQUMsTUFBTSxjQUNuQyxJQUFJLFdBQ1A7d0JBQ1AsZ0JBQWdCO3dCQUNoQixPQUFPO3dCQUNQLElBQUk7d0JBQ0osZUFBZTt3QkFDZixhQUFhO3dCQUNiLGFBQWE7d0JBQ2IseUJBQXlCO3dCQUN6QixrQkFBa0I7d0JBQ2xCLHdCQUF3Qjt3QkFDeEIsZUFBZTt3QkFDZixXQUFXO3dCQUNYLGVBQWU7d0JBQ2YsNkJBQTZCO3dCQUM3QixvQkFBb0I7d0JBQ3BCLFNBQVM7d0JBQ1QsOEJBQThCO3dCQUM5Qix3QkFBd0I7d0JBQ3hCLG1CQUFtQjt3QkFDbkIsdUJBQXVCO3dCQUN2Qix3QkFBd0I7cUJBQ3pCOzswQkFjRSxNQUFNOzJCQUFDLGFBQWE7OzBCQUVwQixRQUFROzswQkFBSSxNQUFNOzJCQUFDLHFCQUFxQjs0Q0FacEMsT0FBTztzQkFEYixLQUFLO2dCQVFDLEtBQUs7c0JBRFgsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIEFzeW5jUGlwZSxcbiAgTmdDbGFzcyxcbiAgTmdJZixcbn0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDb21wb25lbnQsXG4gIEluamVjdCxcbiAgSW5wdXQsXG4gIE9uRGVzdHJveSxcbiAgT25Jbml0LFxuICBPcHRpb25hbCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IE1hdEJ1dHRvbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2J1dHRvbic7XG5pbXBvcnQge1xuICBNYXRPcHRpb25Nb2R1bGUsXG4gIFRoZW1lUGFsZXR0ZSxcbn0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvY29yZSc7XG5pbXBvcnQgeyBNYXRGb3JtRmllbGRNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9mb3JtLWZpZWxkJztcbmltcG9ydCB7IE1hdEljb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9pY29uJztcbmltcG9ydCB7IE1hdE1lbnVNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9tZW51JztcbmltcG9ydCB7IE1hdFNlbGVjdE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3NlbGVjdCc7XG5pbXBvcnQgeyBNYXRTaWRlbmF2IH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvc2lkZW5hdic7XG5pbXBvcnQgeyBNYXRTbGlkZVRvZ2dsZU1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3NsaWRlLXRvZ2dsZSc7XG5pbXBvcnQgeyBNYXRUb29sYmFyTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvdG9vbGJhcic7XG5pbXBvcnQgeyBEYXRhU291cmNlQ29sbGVjdGlvbkRpcmVjdGl2ZSB9IGZyb20gJ0ByeGFwL2RhdGEtc291cmNlL2RpcmVjdGl2ZSc7XG5pbXBvcnQgeyBTdG9wUHJvcGFnYXRpb25EaXJlY3RpdmUgfSBmcm9tICdAcnhhcC9kaXJlY3RpdmVzJztcbmltcG9ydCB7IFN0YXR1c0luZGljYXRvckNvbXBvbmVudCB9IGZyb20gJ0ByeGFwL25neC1zdGF0dXMtY2hlY2snO1xuaW1wb3J0IHsgSGVhZGVyU2VydmljZSB9IGZyb20gJ0ByeGFwL3NlcnZpY2VzJztcbmltcG9ydCB7IENvbnN0cnVjdG9yIH0gZnJvbSAnQHJ4YXAvdXRpbGl0aWVzJztcbmltcG9ydCB7IFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgdGFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgUlhBUF9IRUFERVJfQ09NUE9ORU5UIH0gZnJvbSAnLi4vdG9rZW5zJztcbmltcG9ydCB7IEFwcHNCdXR0b25Db21wb25lbnQgfSBmcm9tICcuL2FwcHMtYnV0dG9uL2FwcHMtYnV0dG9uLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBMYW5ndWFnZVNlbGVjdG9yQ29tcG9uZW50IH0gZnJvbSAnLi9sYW5ndWFnZS1zZWxlY3Rvci9sYW5ndWFnZS1zZWxlY3Rvci5jb21wb25lbnQnO1xuaW1wb3J0IHsgTmF2aWdhdGlvblByb2dyZXNzQmFyQ29tcG9uZW50IH0gZnJvbSAnLi9uYXZpZ2F0aW9uLXByb2dyZXNzLWJhci9uYXZpZ2F0aW9uLXByb2dyZXNzLWJhci5jb21wb25lbnQnO1xuaW1wb3J0IHsgU2V0dGluZ3NCdXR0b25Db21wb25lbnQgfSBmcm9tICcuL3NldHRpbmdzLWJ1dHRvbi9zZXR0aW5ncy1idXR0b24uY29tcG9uZW50JztcbmltcG9ydCB7IFVzZXJQcm9maWxlSWNvbkNvbXBvbmVudCB9IGZyb20gJy4vdXNlci1wcm9maWxlLWljb24vdXNlci1wcm9maWxlLWljb24uY29tcG9uZW50JztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAncnhhcC1oZWFkZXInLFxuICB0ZW1wbGF0ZVVybDogJy4vaGVhZGVyLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbICcuL2hlYWRlci5jb21wb25lbnQuc2NzcycgXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtcbiAgICBNYXRUb29sYmFyTW9kdWxlLFxuICAgIE5nQ2xhc3MsXG4gICAgTmdJZixcbiAgICBNYXRCdXR0b25Nb2R1bGUsXG4gICAgTWF0TWVudU1vZHVsZSxcbiAgICBNYXRJY29uTW9kdWxlLFxuICAgIExhbmd1YWdlU2VsZWN0b3JDb21wb25lbnQsXG4gICAgTWF0Rm9ybUZpZWxkTW9kdWxlLFxuICAgIFN0b3BQcm9wYWdhdGlvbkRpcmVjdGl2ZSxcbiAgICBNYXRTZWxlY3RNb2R1bGUsXG4gICAgRm9ybXNNb2R1bGUsXG4gICAgTWF0T3B0aW9uTW9kdWxlLFxuICAgIERhdGFTb3VyY2VDb2xsZWN0aW9uRGlyZWN0aXZlLFxuICAgIE1hdFNsaWRlVG9nZ2xlTW9kdWxlLFxuICAgIEFzeW5jUGlwZSxcbiAgICBOYXZpZ2F0aW9uUHJvZ3Jlc3NCYXJDb21wb25lbnQsXG4gICAgVXNlclByb2ZpbGVJY29uQ29tcG9uZW50LFxuICAgIEFwcHNCdXR0b25Db21wb25lbnQsXG4gICAgU2V0dGluZ3NCdXR0b25Db21wb25lbnQsXG4gICAgU3RhdHVzSW5kaWNhdG9yQ29tcG9uZW50LFxuICBdLFxufSlcbmV4cG9ydCBjbGFzcyBIZWFkZXJDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzaWRlbmF2PzogTWF0U2lkZW5hdjtcblxuICBwdWJsaWMgY29tcG9uZW50czogQXJyYXk8Q29uc3RydWN0b3I8YW55Pj4gPSBbXTtcblxuICBwdWJsaWMgc3Vic2NyaXB0aW9ucyA9IG5ldyBTdWJzY3JpcHRpb24oKTtcblxuICBASW5wdXQoKVxuICBwdWJsaWMgY29sb3I6IFRoZW1lUGFsZXR0ZSA9IHVuZGVmaW5lZDtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBASW5qZWN0KEhlYWRlclNlcnZpY2UpXG4gICAgcHVibGljIHJlYWRvbmx5IGhlYWRlckNvbXBvbmVudFNlcnZpY2U6IEhlYWRlclNlcnZpY2UsXG4gICAgQE9wdGlvbmFsKCkgQEluamVjdChSWEFQX0hFQURFUl9DT01QT05FTlQpIHB1YmxpYyBoZWFkZXJDb21wb25lbnQ6IGFueSxcbiAgKSB7XG4gIH1cblxuICBwdWJsaWMgbmdPbkluaXQoKSB7XG4gICAgdGhpcy51cGRhdGVDb21wb25lbnRzKCk7XG4gICAgdGhpcy5zdWJzY3JpcHRpb25zLmFkZChcbiAgICAgIHRoaXMuaGVhZGVyQ29tcG9uZW50U2VydmljZS51cGRhdGUkXG4gICAgICAgICAgLnBpcGUodGFwKCgpID0+IHRoaXMudXBkYXRlQ29tcG9uZW50cygpKSlcbiAgICAgICAgICAuc3Vic2NyaWJlKCksXG4gICAgKTtcbiAgfVxuXG4gIHB1YmxpYyB1cGRhdGVDb21wb25lbnRzKCk6IHZvaWQge1xuICAgIHRoaXMuY29tcG9uZW50cyA9IHRoaXMuaGVhZGVyQ29tcG9uZW50U2VydmljZS5nZXRDb21wb25lbnRzKCk7XG4gIH1cblxuICBwdWJsaWMgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5zdWJzY3JpcHRpb25zLnVuc3Vic2NyaWJlKCk7XG4gIH1cblxufVxuIiwiPG1hdC10b29sYmFyIFtjb2xvcl09XCJjb2xvclwiIFtuZ0NsYXNzXT1cInsgb3Blbjogc2lkZW5hdj8ub3BlbmVkIH1cIiBjbGFzcz1cIm1hdC1lbGV2YXRpb24tejMgaGVhZGVyXCI+XG4gIDxkaXYgY2xhc3M9XCJ3LWZ1bGwgZmxleCBmbGV4LXJvdyBnYXAteC00IGp1c3RpZnktYmV0d2VlbiBpdGVtcy1jZW50ZXJcIj5cbiAgICA8cnhhcC1zdGF0dXMtaW5kaWNhdG9yIGNsYXNzPVwiZ3Jvdy0wXCI+PC9yeGFwLXN0YXR1cy1pbmRpY2F0b3I+XG4gICAgPGRpdiBjbGFzcz1cImdyb3dcIj5cbiAgICAgIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cbiAgICA8L2Rpdj5cbiAgICA8cnhhcC1hcHBzLWJ1dHRvbiBjbGFzcz1cImdyb3ctMFwiPjwvcnhhcC1hcHBzLWJ1dHRvbj5cbiAgICA8cnhhcC1zZXR0aW5ncy1idXR0b24gY2xhc3M9XCJncm93LTBcIj48L3J4YXAtc2V0dGluZ3MtYnV0dG9uPlxuICAgIDxyeGFwLXVzZXItcHJvZmlsZS1pY29uIGNsYXNzPVwiZ3Jvdy0wXCI+PC9yeGFwLXVzZXItcHJvZmlsZS1pY29uPlxuICA8L2Rpdj5cbjwvbWF0LXRvb2xiYXI+XG5cbjxyeGFwLW5hdmlnYXRpb24tcHJvZ3Jlc3MtYmFyPjwvcnhhcC1uYXZpZ2F0aW9uLXByb2dyZXNzLWJhcj5cbiJdfQ==
90
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGVhZGVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2FuZ3VsYXIvbGF5b3V0L3NyYy9saWIvaGVhZGVyL2hlYWRlci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9hbmd1bGFyL2xheW91dC9zcmMvbGliL2hlYWRlci9oZWFkZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFNBQVMsRUFDVCxPQUFPLEVBQ1AsSUFBSSxHQUNMLE1BQU0saUJBQWlCLENBQUM7QUFDekIsT0FBTyxFQUNMLHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsTUFBTSxFQUNOLEtBQUssRUFHTCxRQUFRLEdBRVQsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ3RELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUM3QyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDM0QsT0FBTyxFQUNMLGVBQWUsR0FFaEIsTUFBTSx3QkFBd0IsQ0FBQztBQUNoQyxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUNsRSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDdkQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUN0RSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUM3RCxPQUFPLEVBQUUsNkJBQTZCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUM1RSxPQUFPLEVB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Q2YsNkJBQTZCO3dCQUM3QixvQkFBb0I7d0JBQ3BCLFNBQVM7d0JBQ1QsOEJBQThCO3dCQUM5Qix3QkFBd0I7d0JBQ3hCLG1CQUFtQjt3QkFDbkIsdUJBQXVCO3dCQUN2Qiw0QkFBNEI7cUJBQzdCOzswQkFlRSxNQUFNOzJCQUFDLGFBQWE7OzBCQUdwQixRQUFROzswQkFBSSxNQUFNOzJCQUFDLHFCQUFxQjs0Q0FUcEMsS0FBSztzQkFEWCxLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQXN5bmNQaXBlLFxuICBOZ0NsYXNzLFxuICBOZ0lmLFxufSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENvbXBvbmVudCxcbiAgSW5qZWN0LFxuICBJbnB1dCxcbiAgT25EZXN0cm95LFxuICBPbkluaXQsXG4gIE9wdGlvbmFsLFxuICBTaWduYWwsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgdG9TaWduYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlL3J4anMtaW50ZXJvcCc7XG5pbXBvcnQgeyBGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IE1hdEJ1dHRvbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2J1dHRvbic7XG5pbXBvcnQge1xuICBNYXRPcHRpb25Nb2R1bGUsXG4gIFRoZW1lUGFsZXR0ZSxcbn0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvY29yZSc7XG5pbXBvcnQgeyBNYXRGb3JtRmllbGRNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9mb3JtLWZpZWxkJztcbmltcG9ydCB7IE1hdEljb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9pY29uJztcbmltcG9ydCB7IE1hdE1lbnVNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9tZW51JztcbmltcG9ydCB7IE1hdFNlbGVjdE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3NlbGVjdCc7XG5pbXBvcnQgeyBNYXRTbGlkZVRvZ2dsZU1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3NsaWRlLXRvZ2dsZSc7XG5pbXBvcnQgeyBNYXRUb29sYmFyTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvdG9vbGJhcic7XG5pbXBvcnQgeyBEYXRhU291cmNlQ29sbGVjdGlvbkRpcmVjdGl2ZSB9IGZyb20gJ0ByeGFwL2RhdGEtc291cmNlL2RpcmVjdGl2ZSc7XG5pbXBvcnQgeyBTdG9wUHJvcGFnYXRpb25EaXJlY3RpdmUgfSBmcm9tICdAcnhhcC9kaXJlY3RpdmVzJztcbmltcG9ydCB7IEhlYWRlclNlcnZpY2UgfSBmcm9tICdAcnhhcC9zZXJ2aWNlcyc7XG5pbXBvcnQgeyBDb25zdHJ1Y3RvciB9IGZyb20gJ0ByeGFwL3V0aWxpdGllcyc7XG5pbXBvcnQgeyBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IHRhcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IExheW91dENvbXBvbmVudFNlcnZpY2UgfSBmcm9tICcuLi9sYXlvdXQvbGF5b3V0LmNvbXBvbmVudC5zZXJ2aWNlJztcbmltcG9ydCB7IFJYQVBfSEVBREVSX0NPTVBPTkVOVCB9IGZyb20gJy4uL3Rva2Vucyc7XG5pbXBvcnQgeyBBcHBzQnV0dG9uQ29tcG9uZW50IH0gZnJvbSAnLi9hcHBzLWJ1dHRvbi9hcHBzLWJ1dHRvbi5jb21wb25lbnQnO1xuaW1wb3J0IHsgTmF2aWdhdGlvblByb2dyZXNzQmFyQ29tcG9uZW50IH0gZnJvbSAnLi9uYXZpZ2F0aW9uLXByb2dyZXNzLWJhci9uYXZpZ2F0aW9uLXByb2dyZXNzLWJhci5jb21wb25lbnQnO1xuaW1wb3J0IHsgU2V0dGluZ3NCdXR0b25Db21wb25lbnQgfSBmcm9tICcuL3NldHRpbmdzLWJ1dHRvbi9zZXR0aW5ncy1idXR0b24uY29tcG9uZW50JztcbmltcG9ydCB7IFNpZGVuYXZUb2dnbGVCdXR0b25Db21wb25lbnQgfSBmcm9tICcuL3NpZGVuYXYtdG9nZ2xlLWJ1dHRvbi9zaWRlbmF2LXRvZ2dsZS1idXR0b24uY29tcG9uZW50JztcbmltcG9ydCB7IFVzZXJQcm9maWxlSWNvbkNvbXBvbmVudCB9IGZyb20gJy4vdXNlci1wcm9maWxlLWljb24vdXNlci1wcm9maWxlLWljb24uY29tcG9uZW50JztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAncnhhcC1oZWFkZXInLFxuICB0ZW1wbGF0ZVVybDogJy4vaGVhZGVyLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbICcuL2hlYWRlci5jb21wb25lbnQuc2NzcycgXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtcbiAgICBNYXRUb29sYmFyTW9kdWxlLFxuICAgIE5nQ2xhc3MsXG4gICAgTmdJZixcbiAgICBNYXRCdXR0b25Nb2R1bGUsXG4gICAgTWF0TWVudU1vZHVsZSxcbiAgICBNYXRJY29uTW9kdWxlLFxuICAgIE1hdEZvcm1GaWVsZE1vZHVsZSxcbiAgICBTdG9wUHJvcGFnYXRpb25EaXJlY3RpdmUsXG4gICAgTWF0U2VsZWN0TW9kdWxlLFxuICAgIEZvcm1zTW9kdWxlLFxuICAgIE1hdE9wdGlvbk1vZHVsZSxcbiAgICBEYXRhU291cmNlQ29sbGVjdGlvbkRpcmVjdGl2ZSxcbiAgICBNYXRTbGlkZVRvZ2dsZU1vZHVsZSxcbiAgICBBc3luY1BpcGUsXG4gICAgTmF2aWdhdGlvblByb2dyZXNzQmFyQ29tcG9uZW50LFxuICAgIFVzZXJQcm9maWxlSWNvbkNvbXBvbmVudCxcbiAgICBBcHBzQnV0dG9uQ29tcG9uZW50LFxuICAgIFNldHRpbmdzQnV0dG9uQ29tcG9uZW50LFxuICAgIFNpZGVuYXZUb2dnbGVCdXR0b25Db21wb25lbnQsXG4gIF0sXG59KVxuZXhwb3J0IGNsYXNzIEhlYWRlckNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcblxuICBwdWJsaWMgY29tcG9uZW50czogQXJyYXk8Q29uc3RydWN0b3I8YW55Pj4gPSBbXTtcblxuICBwdWJsaWMgc3Vic2NyaXB0aW9ucyA9IG5ldyBTdWJzY3JpcHRpb24oKTtcblxuICBASW5wdXQoKVxuICBwdWJsaWMgY29sb3I6IFRoZW1lUGFsZXR0ZSA9IHVuZGVmaW5lZDtcblxuICBwdWJsaWMgcmVhZG9ubHkgY29sbGFwc2FibGU6IFNpZ25hbDxib29sZWFuPjtcbiAgcHVibGljIHJlYWRvbmx5IG9wZW5lZDogU2lnbmFsPGJvb2xlYW4+O1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIEBJbmplY3QoSGVhZGVyU2VydmljZSlcbiAgICBwdWJsaWMgcmVhZG9ubHkgaGVhZGVyQ29tcG9uZW50U2VydmljZTogSGVhZGVyU2VydmljZSxcbiAgICBwdWJsaWMgcmVhZG9ubHkgbGF5b3V0Q29tcG9uZW50U2VydmljZTogTGF5b3V0Q29tcG9uZW50U2VydmljZSxcbiAgICBAT3B0aW9uYWwoKSBASW5qZWN0KFJYQVBfSEVBREVSX0NPTVBPTkVOVCkgcHVibGljIGhlYWRlckNvbXBvbmVudDogYW55LFxuICApIHtcbiAgICB0aGlzLmNvbGxhcHNhYmxlID1cbiAgICAgIHRvU2lnbmFsKGxheW91dENvbXBvbmVudFNlcnZpY2UuY29sbGFwc2FibGUkLCB7IGluaXRpYWxWYWx1ZTogbGF5b3V0Q29tcG9uZW50U2VydmljZS5jb2xsYXBzYWJsZSQudmFsdWUgfSk7XG4gICAgdGhpcy5vcGVuZWQgPSB0b1NpZ25hbChsYXlvdXRDb21wb25lbnRTZXJ2aWNlLm9wZW5lZCQsIHsgaW5pdGlhbFZhbHVlOiBsYXlvdXRDb21wb25lbnRTZXJ2aWNlLm9wZW5lZCQudmFsdWUgfSk7XG4gIH1cblxuICBwdWJsaWMgbmdPbkluaXQoKSB7XG4gICAgdGhpcy51cGRhdGVDb21wb25lbnRzKCk7XG4gICAgdGhpcy5zdWJzY3JpcHRpb25zLmFkZChcbiAgICAgIHRoaXMuaGVhZGVyQ29tcG9uZW50U2VydmljZS51cGRhdGUkXG4gICAgICAgICAgLnBpcGUodGFwKCgpID0+IHRoaXMudXBkYXRlQ29tcG9uZW50cygpKSlcbiAgICAgICAgICAuc3Vic2NyaWJlKCksXG4gICAgKTtcbiAgfVxuXG4gIHB1YmxpYyB1cGRhdGVDb21wb25lbnRzKCk6IHZvaWQge1xuICAgIHRoaXMuY29tcG9uZW50cyA9IHRoaXMuaGVhZGVyQ29tcG9uZW50U2VydmljZS5nZXRDb21wb25lbnRzKCk7XG4gIH1cblxuICBwdWJsaWMgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5zdWJzY3JpcHRpb25zLnVuc3Vic2NyaWJlKCk7XG4gIH1cblxufVxuIiwiPG1hdC10b29sYmFyIFtjb2xvcl09XCJjb2xvclwiIFtuZ0NsYXNzXT1cInsgb3Blbjogb3BlbmVkKCkgfVwiIGNsYXNzPVwibWF0LWVsZXZhdGlvbi16MyBoZWFkZXJcIj5cbiAgPGRpdiBjbGFzcz1cInctZnVsbCBmbGV4IGZsZXgtcm93IGdhcC14LTQganVzdGlmeS1iZXR3ZWVuIGl0ZW1zLWNlbnRlclwiPlxuICAgIDxyeGFwLXNpZGVuYXYtdG9nZ2xlLWJ1dHRvbiAqbmdJZj1cIiFjb2xsYXBzYWJsZSgpXCI+PC9yeGFwLXNpZGVuYXYtdG9nZ2xlLWJ1dHRvbj5cbiAgICA8ZGl2IGNsYXNzPVwiZ3Jvd1wiPlxuICAgICAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuICAgIDwvZGl2PlxuICAgIDxyeGFwLWFwcHMtYnV0dG9uIGNsYXNzPVwiZ3Jvdy0wXCI+PC9yeGFwLWFwcHMtYnV0dG9uPlxuICAgIDxyeGFwLXNldHRpbmdzLWJ1dHRvbiBjbGFzcz1cImdyb3ctMFwiPjwvcnhhcC1zZXR0aW5ncy1idXR0b24+XG4gICAgPHJ4YXAtdXNlci1wcm9maWxlLWljb24gY2xhc3M9XCJncm93LTBcIj48L3J4YXAtdXNlci1wcm9maWxlLWljb24+XG4gIDwvZGl2PlxuPC9tYXQtdG9vbGJhcj5cblxuPHJ4YXAtbmF2aWdhdGlvbi1wcm9ncmVzcy1iYXI+PC9yeGFwLW5hdmlnYXRpb24tcHJvZ3Jlc3MtYmFyPlxuIl19
@@ -1,13 +1,13 @@
1
+ import { KeyValuePipe, NgFor, NgIf, } from '@angular/common';
1
2
  import { ChangeDetectionStrategy, Component, } from '@angular/core';
2
- import { MatOptionModule } from '@angular/material/core';
3
3
  import { FormsModule } from '@angular/forms';
4
+ import { MatOptionModule } from '@angular/material/core';
5
+ import { MatFormFieldModule } from '@angular/material/form-field';
4
6
  import { MatSelectModule } from '@angular/material/select';
5
7
  import { StopPropagationDirective } from '@rxap/directives';
6
- import { MatFormFieldModule } from '@angular/material/form-field';
7
- import { KeyValuePipe, NgFor, NgIf, } from '@angular/common';
8
- import { LanguageSelectorService } from '../../language-selector.service';
8
+ import { LanguageSelectorService } from '@rxap/ngx-localize';
9
9
  import * as i0 from "@angular/core";
10
- import * as i1 from "../../language-selector.service";
10
+ import * as i1 from "@rxap/ngx-localize";
11
11
  import * as i2 from "@angular/material/form-field";
12
12
  import * as i3 from "@angular/material/select";
13
13
  import * as i4 from "@angular/material/core";
@@ -32,4 +32,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.4", ngImpor
32
32
  KeyValuePipe,
33
33
  ], template: "<ng-template [ngIf]=\"(language.languages | keyvalue).length\">\n <div>\n <mat-form-field appearance=\"outline\" class=\"language-selector\" rxapStopPropagation>\n <mat-label i18n>Select Language</mat-label>\n <mat-select (ngModelChange)=\"language.setLanguage($event)\" [ngModel]=\"language.selectedLanguage\">\n <mat-option *ngFor=\"let item of language.languages | keyvalue\" [value]=\"item.key\">{{item.value}}</mat-option>\n </mat-select>\n </mat-form-field>\n </div>\n</ng-template>\n", styles: [".language-selector{width:calc(100% - 32px);margin:0 16px}.language-selector ::ng-deep .mat-form-field-wrapper{padding-bottom:0}.language-selector ::ng-deep .mat-form-field-wrapper .mat-form-field-infix{padding:12px 0;border-width:6px}.language-selector ::ng-deep .mat-form-field-wrapper .mat-form-field-infix .mat-select-arrow-wrapper{transform:translateY(0)}\n"] }]
34
34
  }], ctorParameters: function () { return [{ type: i1.LanguageSelectorService }]; } });
35
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGFuZ3VhZ2Utc2VsZWN0b3IuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvYW5ndWxhci9sYXlvdXQvc3JjL2xpYi9oZWFkZXIvbGFuZ3VhZ2Utc2VsZWN0b3IvbGFuZ3VhZ2Utc2VsZWN0b3IuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvYW5ndWxhci9sYXlvdXQvc3JjL2xpYi9oZWFkZXIvbGFuZ3VhZ2Utc2VsZWN0b3IvbGFuZ3VhZ2Utc2VsZWN0b3IuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLHVCQUF1QixFQUN2QixTQUFTLEdBQ1YsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3pELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUM3QyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDM0QsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDNUQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDbEUsT0FBTyxFQUNMLFlBQVksRUFDWixLQUFLLEVBQ0wsSUFBSSxHQUNMLE1BQU0saUJBQWlCLENBQUM7QUFDekIsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0saUNBQWlDLENBQUM7Ozs7Ozs7QUFtQjFFLE1BQU0sT0FBTyx5QkFBeUI7SUFDcEMsWUFBNEIsUUFBaUM7UUFBakMsYUFBUSxHQUFSLFFBQVEsQ0FBeUI7SUFDN0QsQ0FBQzs4R0FGVSx5QkFBeUI7a0dBQXpCLHlCQUF5QixrRkNqQ3RDLDBnQkFVQSxtYURhSSxJQUFJLDRGQUNKLGtCQUFrQiwyU0FDbEIsd0JBQXdCLGlFQUN4QixlQUFlLHVUQUNmLFdBQVcsK1ZBQ1gsS0FBSyxrSEFDTCxlQUFlLDBCQUNmLFlBQVk7OzJGQUdILHlCQUF5QjtrQkFqQnJDLFNBQVM7K0JBQ0Usd0JBQXdCLG1CQUdqQix1QkFBdUIsQ0FBQyxNQUFNLGNBQ25DLElBQUksV0FDUDt3QkFDUCxJQUFJO3dCQUNKLGtCQUFrQjt3QkFDbEIsd0JBQXdCO3dCQUN4QixlQUFlO3dCQUNmLFdBQVc7d0JBQ1gsS0FBSzt3QkFDTCxlQUFlO3dCQUNmLFlBQVk7cUJBQ2IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ29tcG9uZW50LFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE1hdE9wdGlvbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2NvcmUnO1xuaW1wb3J0IHsgRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBNYXRTZWxlY3RNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9zZWxlY3QnO1xuaW1wb3J0IHsgU3RvcFByb3BhZ2F0aW9uRGlyZWN0aXZlIH0gZnJvbSAnQHJ4YXAvZGlyZWN0aXZlcyc7XG5pbXBvcnQgeyBNYXRGb3JtRmllbGRNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9mb3JtLWZpZWxkJztcbmltcG9ydCB7XG4gIEtleVZhbHVlUGlwZSxcbiAgTmdGb3IsXG4gIE5nSWYsXG59IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBMYW5ndWFnZVNlbGVjdG9yU2VydmljZSB9IGZyb20gJy4uLy4uL2xhbmd1YWdlLXNlbGVjdG9yLnNlcnZpY2UnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdyeGFwLWxhbmd1YWdlLXNlbGVjdG9yJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2xhbmd1YWdlLXNlbGVjdG9yLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbICcuL2xhbmd1YWdlLXNlbGVjdG9yLmNvbXBvbmVudC5zY3NzJyBdLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW1xuICAgIE5nSWYsXG4gICAgTWF0Rm9ybUZpZWxkTW9kdWxlLFxuICAgIFN0b3BQcm9wYWdhdGlvbkRpcmVjdGl2ZSxcbiAgICBNYXRTZWxlY3RNb2R1bGUsXG4gICAgRm9ybXNNb2R1bGUsXG4gICAgTmdGb3IsXG4gICAgTWF0T3B0aW9uTW9kdWxlLFxuICAgIEtleVZhbHVlUGlwZSxcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgTGFuZ3VhZ2VTZWxlY3RvckNvbXBvbmVudCB7XG4gIGNvbnN0cnVjdG9yKHB1YmxpYyByZWFkb25seSBsYW5ndWFnZTogTGFuZ3VhZ2VTZWxlY3RvclNlcnZpY2UpIHtcbiAgfVxuXG59XG4iLCI8bmctdGVtcGxhdGUgW25nSWZdPVwiKGxhbmd1YWdlLmxhbmd1YWdlcyB8IGtleXZhbHVlKS5sZW5ndGhcIj5cbiAgPGRpdj5cbiAgICA8bWF0LWZvcm0tZmllbGQgYXBwZWFyYW5jZT1cIm91dGxpbmVcIiBjbGFzcz1cImxhbmd1YWdlLXNlbGVjdG9yXCIgcnhhcFN0b3BQcm9wYWdhdGlvbj5cbiAgICAgIDxtYXQtbGFiZWwgaTE4bj5TZWxlY3QgTGFuZ3VhZ2U8L21hdC1sYWJlbD5cbiAgICAgIDxtYXQtc2VsZWN0IChuZ01vZGVsQ2hhbmdlKT1cImxhbmd1YWdlLnNldExhbmd1YWdlKCRldmVudClcIiBbbmdNb2RlbF09XCJsYW5ndWFnZS5zZWxlY3RlZExhbmd1YWdlXCI+XG4gICAgICAgIDxtYXQtb3B0aW9uICpuZ0Zvcj1cImxldCBpdGVtIG9mIGxhbmd1YWdlLmxhbmd1YWdlcyB8IGtleXZhbHVlXCIgW3ZhbHVlXT1cIml0ZW0ua2V5XCI+e3tpdGVtLnZhbHVlfX08L21hdC1vcHRpb24+XG4gICAgICA8L21hdC1zZWxlY3Q+XG4gICAgPC9tYXQtZm9ybS1maWVsZD5cbiAgPC9kaXY+XG48L25nLXRlbXBsYXRlPlxuIl19
35
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGFuZ3VhZ2Utc2VsZWN0b3IuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvYW5ndWxhci9sYXlvdXQvc3JjL2xpYi9oZWFkZXIvbGFuZ3VhZ2Utc2VsZWN0b3IvbGFuZ3VhZ2Utc2VsZWN0b3IuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvYW5ndWxhci9sYXlvdXQvc3JjL2xpYi9oZWFkZXIvbGFuZ3VhZ2Utc2VsZWN0b3IvbGFuZ3VhZ2Utc2VsZWN0b3IuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFlBQVksRUFDWixLQUFLLEVBQ0wsSUFBSSxHQUNMLE1BQU0saUJBQWlCLENBQUM7QUFDekIsT0FBTyxFQUNMLHVCQUF1QixFQUN2QixTQUFTLEdBQ1YsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzdDLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUN6RCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUNsRSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDM0QsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDNUQsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sb0JBQW9CLENBQUM7Ozs7Ozs7QUFtQjdELE1BQU0sT0FBTyx5QkFBeUI7SUFDcEMsWUFBNEIsUUFBaUM7UUFBakMsYUFBUSxHQUFSLFFBQVEsQ0FBeUI7SUFDN0QsQ0FBQzs4R0FGVSx5QkFBeUI7a0dBQXpCLHlCQUF5QixrRkNqQ3RDLDBnQkFVQSxtYURhSSxJQUFJLDRGQUNKLGtCQUFrQiwyU0FDbEIsd0JBQXdCLGlFQUN4QixlQUFlLHVUQUNmLFdBQVcsK1ZBQ1gsS0FBSyxrSEFDTCxlQUFlLDBCQUNmLFlBQVk7OzJGQUdILHlCQUF5QjtrQkFqQnJDLFNBQVM7K0JBQ0Usd0JBQXdCLG1CQUdqQix1QkFBdUIsQ0FBQyxNQUFNLGNBQ25DLElBQUksV0FDUDt3QkFDUCxJQUFJO3dCQUNKLGtCQUFrQjt3QkFDbEIsd0JBQXdCO3dCQUN4QixlQUFlO3dCQUNmLFdBQVc7d0JBQ1gsS0FBSzt3QkFDTCxlQUFlO3dCQUNmLFlBQVk7cUJBQ2IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBLZXlWYWx1ZVBpcGUsXG4gIE5nRm9yLFxuICBOZ0lmLFxufSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENvbXBvbmVudCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IE1hdE9wdGlvbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2NvcmUnO1xuaW1wb3J0IHsgTWF0Rm9ybUZpZWxkTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZm9ybS1maWVsZCc7XG5pbXBvcnQgeyBNYXRTZWxlY3RNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9zZWxlY3QnO1xuaW1wb3J0IHsgU3RvcFByb3BhZ2F0aW9uRGlyZWN0aXZlIH0gZnJvbSAnQHJ4YXAvZGlyZWN0aXZlcyc7XG5pbXBvcnQgeyBMYW5ndWFnZVNlbGVjdG9yU2VydmljZSB9IGZyb20gJ0ByeGFwL25neC1sb2NhbGl6ZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3J4YXAtbGFuZ3VhZ2Utc2VsZWN0b3InLFxuICB0ZW1wbGF0ZVVybDogJy4vbGFuZ3VhZ2Utc2VsZWN0b3IuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsgJy4vbGFuZ3VhZ2Utc2VsZWN0b3IuY29tcG9uZW50LnNjc3MnIF0sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbXG4gICAgTmdJZixcbiAgICBNYXRGb3JtRmllbGRNb2R1bGUsXG4gICAgU3RvcFByb3BhZ2F0aW9uRGlyZWN0aXZlLFxuICAgIE1hdFNlbGVjdE1vZHVsZSxcbiAgICBGb3Jtc01vZHVsZSxcbiAgICBOZ0ZvcixcbiAgICBNYXRPcHRpb25Nb2R1bGUsXG4gICAgS2V5VmFsdWVQaXBlLFxuICBdLFxufSlcbmV4cG9ydCBjbGFzcyBMYW5ndWFnZVNlbGVjdG9yQ29tcG9uZW50IHtcbiAgY29uc3RydWN0b3IocHVibGljIHJlYWRvbmx5IGxhbmd1YWdlOiBMYW5ndWFnZVNlbGVjdG9yU2VydmljZSkge1xuICB9XG5cbn1cbiIsIjxuZy10ZW1wbGF0ZSBbbmdJZl09XCIobGFuZ3VhZ2UubGFuZ3VhZ2VzIHwga2V5dmFsdWUpLmxlbmd0aFwiPlxuICA8ZGl2PlxuICAgIDxtYXQtZm9ybS1maWVsZCBhcHBlYXJhbmNlPVwib3V0bGluZVwiIGNsYXNzPVwibGFuZ3VhZ2Utc2VsZWN0b3JcIiByeGFwU3RvcFByb3BhZ2F0aW9uPlxuICAgICAgPG1hdC1sYWJlbCBpMThuPlNlbGVjdCBMYW5ndWFnZTwvbWF0LWxhYmVsPlxuICAgICAgPG1hdC1zZWxlY3QgKG5nTW9kZWxDaGFuZ2UpPVwibGFuZ3VhZ2Uuc2V0TGFuZ3VhZ2UoJGV2ZW50KVwiIFtuZ01vZGVsXT1cImxhbmd1YWdlLnNlbGVjdGVkTGFuZ3VhZ2VcIj5cbiAgICAgICAgPG1hdC1vcHRpb24gKm5nRm9yPVwibGV0IGl0ZW0gb2YgbGFuZ3VhZ2UubGFuZ3VhZ2VzIHwga2V5dmFsdWVcIiBbdmFsdWVdPVwiaXRlbS5rZXlcIj57e2l0ZW0udmFsdWV9fTwvbWF0LW9wdGlvbj5cbiAgICAgIDwvbWF0LXNlbGVjdD5cbiAgICA8L21hdC1mb3JtLWZpZWxkPlxuICA8L2Rpdj5cbjwvbmctdGVtcGxhdGU+XG4iXX0=
@@ -1,14 +1,20 @@
1
- import { ChangeDetectionStrategy, Component, Input, } from '@angular/core';
2
- import { MatSidenav } from '@angular/material/sidenav';
3
- import { MatIconModule } from '@angular/material/icon';
4
1
  import { NgIf } from '@angular/common';
2
+ import { ChangeDetectionStrategy, Component, } from '@angular/core';
3
+ import { toSignal } from '@angular/core/rxjs-interop';
5
4
  import { MatButtonModule } from '@angular/material/button';
5
+ import { MatIconModule } from '@angular/material/icon';
6
+ import { LayoutComponentService } from '../../layout/layout.component.service';
6
7
  import * as i0 from "@angular/core";
7
- import * as i1 from "@angular/material/button";
8
- import * as i2 from "@angular/material/icon";
8
+ import * as i1 from "../../layout/layout.component.service";
9
+ import * as i2 from "@angular/material/button";
10
+ import * as i3 from "@angular/material/icon";
9
11
  export class SidenavToggleButtonComponent {
10
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.4", ngImport: i0, type: SidenavToggleButtonComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
11
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.4", type: SidenavToggleButtonComponent, isStandalone: true, selector: "rxap-sidenav-toggle-button", inputs: { sidenav: "sidenav" }, ngImport: i0, template: "<button (click)=\"sidenav.toggle()\" mat-icon-button>\n <mat-icon *ngIf=\"!sidenav.opened\">menu</mat-icon>\n <mat-icon *ngIf=\"sidenav.opened\">menu_open</mat-icon>\n</button>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i1.MatIconButton, selector: "button[mat-icon-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i2.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
12
+ constructor(layoutComponentService) {
13
+ this.layoutComponentService = layoutComponentService;
14
+ this.opened = toSignal(layoutComponentService.opened$, { initialValue: layoutComponentService.opened$.value });
15
+ }
16
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.4", ngImport: i0, type: SidenavToggleButtonComponent, deps: [{ token: i1.LayoutComponentService }], target: i0.ɵɵFactoryTarget.Component }); }
17
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.4", type: SidenavToggleButtonComponent, isStandalone: true, selector: "rxap-sidenav-toggle-button", ngImport: i0, template: "<button (click)=\"layoutComponentService.toggleOpend()\" mat-icon-button>\n <mat-icon *ngIf=\"!opened()\">menu</mat-icon>\n <mat-icon *ngIf=\"opened()\">menu_open</mat-icon>\n</button>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i2.MatIconButton, selector: "button[mat-icon-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i3.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
12
18
  }
13
19
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.4", ngImport: i0, type: SidenavToggleButtonComponent, decorators: [{
14
20
  type: Component,
@@ -16,9 +22,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.4", ngImpor
16
22
  MatButtonModule,
17
23
  NgIf,
18
24
  MatIconModule,
19
- ], template: "<button (click)=\"sidenav.toggle()\" mat-icon-button>\n <mat-icon *ngIf=\"!sidenav.opened\">menu</mat-icon>\n <mat-icon *ngIf=\"sidenav.opened\">menu_open</mat-icon>\n</button>\n" }]
20
- }], propDecorators: { sidenav: [{
21
- type: Input,
22
- args: [{ required: true }]
23
- }] } });
24
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2lkZW5hdi10b2dnbGUtYnV0dG9uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2FuZ3VsYXIvbGF5b3V0L3NyYy9saWIvaGVhZGVyL3NpZGVuYXYtdG9nZ2xlLWJ1dHRvbi9zaWRlbmF2LXRvZ2dsZS1idXR0b24uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvYW5ndWxhci9sYXlvdXQvc3JjL2xpYi9oZWFkZXIvc2lkZW5hdi10b2dnbGUtYnV0dG9uL3NpZGVuYXYtdG9nZ2xlLWJ1dHRvbi5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxLQUFLLEdBQ04sTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBRXZELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUN2RCxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDdkMsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDBCQUEwQixDQUFDOzs7O0FBYzNELE1BQU0sT0FBTyw0QkFBNEI7OEdBQTVCLDRCQUE0QjtrR0FBNUIsNEJBQTRCLHNIQ3ZCekMsc0xBSUEseUREY0ksZUFBZSw0TEFDZixJQUFJLDRGQUNKLGFBQWE7OzJGQUdKLDRCQUE0QjtrQkFaeEMsU0FBUzsrQkFDRSw0QkFBNEIsbUJBR3JCLHVCQUF1QixDQUFDLE1BQU0sY0FDbkMsSUFBSSxXQUNQO3dCQUNQLGVBQWU7d0JBQ2YsSUFBSTt3QkFDSixhQUFhO3FCQUNkOzhCQUtNLE9BQU87c0JBRGIsS0FBSzt1QkFBQyxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ29tcG9uZW50LFxuICBJbnB1dCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBNYXRTaWRlbmF2IH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvc2lkZW5hdic7XG5pbXBvcnQgeyBSZXF1aXJlZCB9IGZyb20gJ0ByeGFwL3V0aWxpdGllcyc7XG5pbXBvcnQgeyBNYXRJY29uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaWNvbic7XG5pbXBvcnQgeyBOZ0lmIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IE1hdEJ1dHRvbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2J1dHRvbic7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3J4YXAtc2lkZW5hdi10b2dnbGUtYnV0dG9uJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3NpZGVuYXYtdG9nZ2xlLWJ1dHRvbi5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWyAnLi9zaWRlbmF2LXRvZ2dsZS1idXR0b24uY29tcG9uZW50LnNjc3MnIF0sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbXG4gICAgTWF0QnV0dG9uTW9kdWxlLFxuICAgIE5nSWYsXG4gICAgTWF0SWNvbk1vZHVsZSxcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgU2lkZW5hdlRvZ2dsZUJ1dHRvbkNvbXBvbmVudCB7XG5cbiAgQElucHV0KHsgcmVxdWlyZWQ6IHRydWUgfSlcbiAgcHVibGljIHNpZGVuYXYhOiBNYXRTaWRlbmF2O1xuXG59XG4iLCI8YnV0dG9uIChjbGljayk9XCJzaWRlbmF2LnRvZ2dsZSgpXCIgbWF0LWljb24tYnV0dG9uPlxuICA8bWF0LWljb24gKm5nSWY9XCIhc2lkZW5hdi5vcGVuZWRcIj5tZW51PC9tYXQtaWNvbj5cbiAgPG1hdC1pY29uICpuZ0lmPVwic2lkZW5hdi5vcGVuZWRcIj5tZW51X29wZW48L21hdC1pY29uPlxuPC9idXR0b24+XG4iXX0=
25
+ ], template: "<button (click)=\"layoutComponentService.toggleOpend()\" mat-icon-button>\n <mat-icon *ngIf=\"!opened()\">menu</mat-icon>\n <mat-icon *ngIf=\"opened()\">menu_open</mat-icon>\n</button>\n" }]
26
+ }], ctorParameters: function () { return [{ type: i1.LayoutComponentService }]; } });
27
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2lkZW5hdi10b2dnbGUtYnV0dG9uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2FuZ3VsYXIvbGF5b3V0L3NyYy9saWIvaGVhZGVyL3NpZGVuYXYtdG9nZ2xlLWJ1dHRvbi9zaWRlbmF2LXRvZ2dsZS1idXR0b24uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvYW5ndWxhci9sYXlvdXQvc3JjL2xpYi9oZWFkZXIvc2lkZW5hdi10b2dnbGUtYnV0dG9uL3NpZGVuYXYtdG9nZ2xlLWJ1dHRvbi5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDdkMsT0FBTyxFQUNMLHVCQUF1QixFQUN2QixTQUFTLEdBRVYsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ3RELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDdkQsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sdUNBQXVDLENBQUM7Ozs7O0FBYy9FLE1BQU0sT0FBTyw0QkFBNEI7SUFJdkMsWUFBNEIsc0JBQThDO1FBQTlDLDJCQUFzQixHQUF0QixzQkFBc0IsQ0FBd0I7UUFDeEUsSUFBSSxDQUFDLE1BQU0sR0FBRyxRQUFRLENBQUMsc0JBQXNCLENBQUMsT0FBTyxFQUFFLEVBQUUsWUFBWSxFQUFFLHNCQUFzQixDQUFDLE9BQU8sQ0FBQyxLQUFLLEVBQUUsQ0FBQyxDQUFDO0lBQ2pILENBQUM7OEdBTlUsNEJBQTRCO2tHQUE1Qiw0QkFBNEIsc0ZDdkJ6Qyw4TEFJQSx5RERjSSxlQUFlLDRMQUNmLElBQUksNEZBQ0osYUFBYTs7MkZBR0osNEJBQTRCO2tCQVp4QyxTQUFTOytCQUNFLDRCQUE0QixtQkFHckIsdUJBQXVCLENBQUMsTUFBTSxjQUNuQyxJQUFJLFdBQ1A7d0JBQ1AsZUFBZTt3QkFDZixJQUFJO3dCQUNKLGFBQWE7cUJBQ2QiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ0lmIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDb21wb25lbnQsXG4gIFNpZ25hbCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyB0b1NpZ25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUvcnhqcy1pbnRlcm9wJztcbmltcG9ydCB7IE1hdEJ1dHRvbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2J1dHRvbic7XG5pbXBvcnQgeyBNYXRJY29uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaWNvbic7XG5pbXBvcnQgeyBMYXlvdXRDb21wb25lbnRTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vbGF5b3V0L2xheW91dC5jb21wb25lbnQuc2VydmljZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3J4YXAtc2lkZW5hdi10b2dnbGUtYnV0dG9uJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3NpZGVuYXYtdG9nZ2xlLWJ1dHRvbi5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWyAnLi9zaWRlbmF2LXRvZ2dsZS1idXR0b24uY29tcG9uZW50LnNjc3MnIF0sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbXG4gICAgTWF0QnV0dG9uTW9kdWxlLFxuICAgIE5nSWYsXG4gICAgTWF0SWNvbk1vZHVsZSxcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgU2lkZW5hdlRvZ2dsZUJ1dHRvbkNvbXBvbmVudCB7XG5cbiAgcHVibGljIHJlYWRvbmx5IG9wZW5lZDogU2lnbmFsPGJvb2xlYW4+O1xuXG4gIGNvbnN0cnVjdG9yKHB1YmxpYyByZWFkb25seSBsYXlvdXRDb21wb25lbnRTZXJ2aWNlOiBMYXlvdXRDb21wb25lbnRTZXJ2aWNlKSB7XG4gICAgdGhpcy5vcGVuZWQgPSB0b1NpZ25hbChsYXlvdXRDb21wb25lbnRTZXJ2aWNlLm9wZW5lZCQsIHsgaW5pdGlhbFZhbHVlOiBsYXlvdXRDb21wb25lbnRTZXJ2aWNlLm9wZW5lZCQudmFsdWUgfSk7XG4gIH1cblxufVxuIiwiPGJ1dHRvbiAoY2xpY2spPVwibGF5b3V0Q29tcG9uZW50U2VydmljZS50b2dnbGVPcGVuZCgpXCIgbWF0LWljb24tYnV0dG9uPlxuICA8bWF0LWljb24gKm5nSWY9XCIhb3BlbmVkKClcIj5tZW51PC9tYXQtaWNvbj5cbiAgPG1hdC1pY29uICpuZ0lmPVwib3BlbmVkKClcIj5tZW51X29wZW48L21hdC1pY29uPlxuPC9idXR0b24+XG4iXX0=
@@ -1,31 +1,34 @@
1
1
  import { AsyncPipe, NgIf, } from '@angular/common';
2
- import { ChangeDetectionStrategy, Component, signal, } from '@angular/core';
2
+ import { ChangeDetectionStrategy, Component, Inject, InjectionToken, } from '@angular/core';
3
+ import { toSignal } from '@angular/core/rxjs-interop';
3
4
  import { MatIconModule } from '@angular/material/icon';
4
5
  import { MatMenuModule } from '@angular/material/menu';
5
- import { RxapAuthenticationService, RxapUserProfileService, } from '@rxap/authentication';
6
- import { filter, } from 'rxjs';
7
- import { switchMap, tap, } from 'rxjs/operators';
6
+ import { RxapAuthenticationService } from '@rxap/authentication';
7
+ import { UserProfileDataSource } from '@rxap/ngx-user';
8
+ import { distinctUntilChanged, filter, skip, } from 'rxjs';
9
+ import { map, switchMap, } from 'rxjs/operators';
8
10
  import * as i0 from "@angular/core";
9
- import * as i1 from "@rxap/authentication";
10
- import * as i2 from "@angular/material/menu";
11
- import * as i3 from "@angular/material/icon";
11
+ import * as i1 from "@rxap/ngx-user";
12
+ import * as i2 from "@rxap/authentication";
13
+ import * as i3 from "@angular/material/menu";
14
+ import * as i4 from "@angular/material/icon";
15
+ export const EXTRACT_USERNAME_FROM_PROFILE = new InjectionToken('extract-username-from-profile', {
16
+ providedIn: 'root',
17
+ factory: () => (profile) => (profile ? profile.username ?? profile.email ?? profile.name : null) ?? null,
18
+ });
12
19
  export class UserProfileIconComponent {
13
- constructor(userProfileService, authenticationService) {
20
+ constructor(userProfileService, authenticationService, extractUsernameFromProfile) {
14
21
  this.userProfileService = userProfileService;
15
22
  this.authenticationService = authenticationService;
16
- this.username = signal(null);
17
- }
18
- ngOnInit() {
19
- this._subscription = this.authenticationService.isAuthenticated$.pipe(filter(Boolean), switchMap(() => this.userProfileService.getProfile()), filter(Boolean), tap((user) => this.username.set(user.username ?? null))).subscribe();
20
- }
21
- ngOnDestroy() {
22
- this._subscription?.unsubscribe();
23
+ this.username = toSignal(this.authenticationService.isAuthenticated$.pipe(filter(Boolean), switchMap(() => this.userProfileService.connect({
24
+ viewChange: this.authenticationService.isAuthenticated$.pipe(skip(1), filter(Boolean), distinctUntilChanged()),
25
+ })), filter(Boolean), map(extractUsernameFromProfile)), { initialValue: null });
23
26
  }
24
27
  async logout() {
25
28
  await this.authenticationService.signOut();
26
29
  }
27
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.4", ngImport: i0, type: UserProfileIconComponent, deps: [{ token: i1.RxapUserProfileService }, { token: i1.RxapAuthenticationService }], target: i0.ɵɵFactoryTarget.Component }); }
28
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.4", type: UserProfileIconComponent, isStandalone: true, selector: "rxap-user-profile-icon", ngImport: i0, template: "<button [matMenuTriggerFor]=\"menu\"\n [disabled]=\"!username()\"\n class=\"profile-icon flex flex-row justify-center items-center\">\n <mat-icon class=\"avatar-icon\" svgIcon=\"account-circle\"></mat-icon>\n</button>\n\n<mat-menu #menu=\"matMenu\" [yPosition]=\"'below'\" class=\"!max-w-none\">\n <button mat-menu-item>\n <span class=\"flex flex-row gap-2\">\n <mat-icon svgIcon=\"account\"></mat-icon>\n <span>{{username()}}</span>\n </span>\n </button>\n <button (click)=\"logout()\" mat-menu-item>\n <span class=\"flex flex-row gap-2\">\n <mat-icon svgIcon=\"logout\"></mat-icon>\n <span i18n>Logout</span>\n </span>\n </button>\n</mat-menu>\n", styles: [".profile-icon{border-radius:100%;border:none;height:32px;width:32px;overflow:hidden;background-position:center center;background-repeat:no-repeat;background-size:cover}.profile-icon .avatar-icon{width:32px;height:32px;font-size:32px}.profile-icon:hover{cursor:pointer}.profile-icon:focus{outline:none}\n"], dependencies: [{ kind: "ngmodule", type: MatMenuModule }, { kind: "component", type: i2.MatMenu, selector: "mat-menu", exportAs: ["matMenu"] }, { kind: "component", type: i2.MatMenuItem, selector: "[mat-menu-item]", inputs: ["disabled", "disableRipple", "role"], exportAs: ["matMenuItem"] }, { kind: "directive", type: i2.MatMenuTrigger, selector: "[mat-menu-trigger-for], [matMenuTriggerFor]", exportAs: ["matMenuTrigger"] }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i3.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
30
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.4", ngImport: i0, type: UserProfileIconComponent, deps: [{ token: i1.UserProfileDataSource }, { token: i2.RxapAuthenticationService }, { token: EXTRACT_USERNAME_FROM_PROFILE }], target: i0.ɵɵFactoryTarget.Component }); }
31
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.4", type: UserProfileIconComponent, isStandalone: true, selector: "rxap-user-profile-icon", ngImport: i0, template: "<button [matMenuTriggerFor]=\"menu\"\n [disabled]=\"!username()\"\n class=\"profile-icon flex flex-row justify-center items-center\">\n <mat-icon class=\"avatar-icon\" svgIcon=\"account-circle\"></mat-icon>\n</button>\n\n<mat-menu #menu=\"matMenu\" [yPosition]=\"'below'\" class=\"!max-w-none\">\n <button mat-menu-item>\n <span class=\"flex flex-row gap-2\">\n <mat-icon svgIcon=\"account\"></mat-icon>\n <span>{{username()}}</span>\n </span>\n </button>\n <button (click)=\"logout()\" mat-menu-item>\n <span class=\"flex flex-row gap-2\">\n <mat-icon svgIcon=\"logout\"></mat-icon>\n <span i18n>Logout</span>\n </span>\n </button>\n</mat-menu>\n", styles: [".profile-icon{border-radius:100%;border:none;height:32px;width:32px;overflow:hidden;background-position:center center;background-repeat:no-repeat;background-size:cover}.profile-icon .avatar-icon{width:32px;height:32px;font-size:32px}.profile-icon:hover{cursor:pointer}.profile-icon:focus{outline:none}\n"], dependencies: [{ kind: "ngmodule", type: MatMenuModule }, { kind: "component", type: i3.MatMenu, selector: "mat-menu", exportAs: ["matMenu"] }, { kind: "component", type: i3.MatMenuItem, selector: "[mat-menu-item]", inputs: ["disabled", "disableRipple", "role"], exportAs: ["matMenuItem"] }, { kind: "directive", type: i3.MatMenuTrigger, selector: "[mat-menu-trigger-for], [matMenuTriggerFor]", exportAs: ["matMenuTrigger"] }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i4.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
29
32
  }
30
33
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.4", ngImport: i0, type: UserProfileIconComponent, decorators: [{
31
34
  type: Component,
@@ -35,5 +38,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.4", ngImpor
35
38
  NgIf,
36
39
  AsyncPipe,
37
40
  ], template: "<button [matMenuTriggerFor]=\"menu\"\n [disabled]=\"!username()\"\n class=\"profile-icon flex flex-row justify-center items-center\">\n <mat-icon class=\"avatar-icon\" svgIcon=\"account-circle\"></mat-icon>\n</button>\n\n<mat-menu #menu=\"matMenu\" [yPosition]=\"'below'\" class=\"!max-w-none\">\n <button mat-menu-item>\n <span class=\"flex flex-row gap-2\">\n <mat-icon svgIcon=\"account\"></mat-icon>\n <span>{{username()}}</span>\n </span>\n </button>\n <button (click)=\"logout()\" mat-menu-item>\n <span class=\"flex flex-row gap-2\">\n <mat-icon svgIcon=\"logout\"></mat-icon>\n <span i18n>Logout</span>\n </span>\n </button>\n</mat-menu>\n", styles: [".profile-icon{border-radius:100%;border:none;height:32px;width:32px;overflow:hidden;background-position:center center;background-repeat:no-repeat;background-size:cover}.profile-icon .avatar-icon{width:32px;height:32px;font-size:32px}.profile-icon:hover{cursor:pointer}.profile-icon:focus{outline:none}\n"] }]
38
- }], ctorParameters: function () { return [{ type: i1.RxapUserProfileService }, { type: i1.RxapAuthenticationService }]; } });
39
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlci1wcm9maWxlLWljb24uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvYW5ndWxhci9sYXlvdXQvc3JjL2xpYi9oZWFkZXIvdXNlci1wcm9maWxlLWljb24vdXNlci1wcm9maWxlLWljb24uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvYW5ndWxhci9sYXlvdXQvc3JjL2xpYi9oZWFkZXIvdXNlci1wcm9maWxlLWljb24vdXNlci1wcm9maWxlLWljb24uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFNBQVMsRUFDVCxJQUFJLEdBQ0wsTUFBTSxpQkFBaUIsQ0FBQztBQUN6QixPQUFPLEVBQ0wsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFHVCxNQUFNLEdBQ1AsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUN2RCxPQUFPLEVBQ0wseUJBQXlCLEVBQ3pCLHNCQUFzQixHQUN2QixNQUFNLHNCQUFzQixDQUFDO0FBQzlCLE9BQU8sRUFDTCxNQUFNLEdBRVAsTUFBTSxNQUFNLENBQUM7QUFDZCxPQUFPLEVBQ0wsU0FBUyxFQUNULEdBQUcsR0FDSixNQUFNLGdCQUFnQixDQUFDOzs7OztBQWV4QixNQUFNLE9BQU8sd0JBQXdCO0lBTW5DLFlBQ21CLGtCQUEwQyxFQUMxQyxxQkFBZ0Q7UUFEaEQsdUJBQWtCLEdBQWxCLGtCQUFrQixDQUF3QjtRQUMxQywwQkFBcUIsR0FBckIscUJBQXFCLENBQTJCO1FBTjVELGFBQVEsR0FBRyxNQUFNLENBQWdCLElBQUksQ0FBQyxDQUFDO0lBTzNDLENBQUM7SUFFSixRQUFRO1FBQ04sSUFBSSxDQUFDLGFBQWEsR0FBRyxJQUFJLENBQUMscUJBQXFCLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUNuRSxNQUFNLENBQUMsT0FBTyxDQUFDLEVBQ2YsU0FBUyxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxVQUFVLEVBQUUsQ0FBQyxFQUNyRCxNQUFNLENBQUMsT0FBTyxDQUFDLEVBQ2YsR0FBRyxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsUUFBUSxJQUFJLElBQUksQ0FBQyxDQUFDLENBQ3hELENBQUMsU0FBUyxFQUFFLENBQUM7SUFDaEIsQ0FBQztJQUVELFdBQVc7UUFDVCxJQUFJLENBQUMsYUFBYSxFQUFFLFdBQVcsRUFBRSxDQUFDO0lBQ3BDLENBQUM7SUFFTSxLQUFLLENBQUMsTUFBTTtRQUNqQixNQUFNLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxPQUFPLEVBQUUsQ0FBQztJQUM3QyxDQUFDOzhHQTFCVSx3QkFBd0I7a0dBQXhCLHdCQUF3QixrRkN2Q3JDLDRyQkFvQkEsd1dEYUksYUFBYSwrWUFDYixhQUFhOzsyRkFLSix3QkFBd0I7a0JBYnBDLFNBQVM7K0JBQ0Usd0JBQXdCLG1CQUdqQix1QkFBdUIsQ0FBQyxNQUFNLGNBQ25DLElBQUksV0FDUDt3QkFDUCxhQUFhO3dCQUNiLGFBQWE7d0JBQ2IsSUFBSTt3QkFDSixTQUFTO3FCQUNWIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQXN5bmNQaXBlLFxuICBOZ0lmLFxufSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENvbXBvbmVudCxcbiAgT25EZXN0cm95LFxuICBPbkluaXQsXG4gIHNpZ25hbCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBNYXRJY29uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaWNvbic7XG5pbXBvcnQgeyBNYXRNZW51TW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvbWVudSc7XG5pbXBvcnQge1xuICBSeGFwQXV0aGVudGljYXRpb25TZXJ2aWNlLFxuICBSeGFwVXNlclByb2ZpbGVTZXJ2aWNlLFxufSBmcm9tICdAcnhhcC9hdXRoZW50aWNhdGlvbic7XG5pbXBvcnQge1xuICBmaWx0ZXIsXG4gIFN1YnNjcmlwdGlvbixcbn0gZnJvbSAncnhqcyc7XG5pbXBvcnQge1xuICBzd2l0Y2hNYXAsXG4gIHRhcCxcbn0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdyeGFwLXVzZXItcHJvZmlsZS1pY29uJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3VzZXItcHJvZmlsZS1pY29uLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbICcuL3VzZXItcHJvZmlsZS1pY29uLmNvbXBvbmVudC5zY3NzJyBdLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW1xuICAgIE1hdE1lbnVNb2R1bGUsXG4gICAgTWF0SWNvbk1vZHVsZSxcbiAgICBOZ0lmLFxuICAgIEFzeW5jUGlwZSxcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgVXNlclByb2ZpbGVJY29uQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xuXG4gIHB1YmxpYyB1c2VybmFtZSA9IHNpZ25hbDxudWxsIHwgc3RyaW5nPihudWxsKTtcblxuICBwcml2YXRlIF9zdWJzY3JpcHRpb24/OiBTdWJzY3JpcHRpb247XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSByZWFkb25seSB1c2VyUHJvZmlsZVNlcnZpY2U6IFJ4YXBVc2VyUHJvZmlsZVNlcnZpY2UsXG4gICAgcHJpdmF0ZSByZWFkb25seSBhdXRoZW50aWNhdGlvblNlcnZpY2U6IFJ4YXBBdXRoZW50aWNhdGlvblNlcnZpY2UsXG4gICkge31cblxuICBuZ09uSW5pdCgpIHtcbiAgICB0aGlzLl9zdWJzY3JpcHRpb24gPSB0aGlzLmF1dGhlbnRpY2F0aW9uU2VydmljZS5pc0F1dGhlbnRpY2F0ZWQkLnBpcGUoXG4gICAgICBmaWx0ZXIoQm9vbGVhbiksXG4gICAgICBzd2l0Y2hNYXAoKCkgPT4gdGhpcy51c2VyUHJvZmlsZVNlcnZpY2UuZ2V0UHJvZmlsZSgpKSxcbiAgICAgIGZpbHRlcihCb29sZWFuKSxcbiAgICAgIHRhcCgodXNlcikgPT4gdGhpcy51c2VybmFtZS5zZXQodXNlci51c2VybmFtZSA/PyBudWxsKSksXG4gICAgKS5zdWJzY3JpYmUoKTtcbiAgfVxuXG4gIG5nT25EZXN0cm95KCkge1xuICAgIHRoaXMuX3N1YnNjcmlwdGlvbj8udW5zdWJzY3JpYmUoKTtcbiAgfVxuXG4gIHB1YmxpYyBhc3luYyBsb2dvdXQoKSB7XG4gICAgYXdhaXQgdGhpcy5hdXRoZW50aWNhdGlvblNlcnZpY2Uuc2lnbk91dCgpO1xuICB9XG5cblxufVxuIiwiPGJ1dHRvbiBbbWF0TWVudVRyaWdnZXJGb3JdPVwibWVudVwiXG4gICAgICAgIFtkaXNhYmxlZF09XCIhdXNlcm5hbWUoKVwiXG4gICAgICAgIGNsYXNzPVwicHJvZmlsZS1pY29uIGZsZXggZmxleC1yb3cganVzdGlmeS1jZW50ZXIgaXRlbXMtY2VudGVyXCI+XG4gIDxtYXQtaWNvbiBjbGFzcz1cImF2YXRhci1pY29uXCIgc3ZnSWNvbj1cImFjY291bnQtY2lyY2xlXCI+PC9tYXQtaWNvbj5cbjwvYnV0dG9uPlxuXG48bWF0LW1lbnUgI21lbnU9XCJtYXRNZW51XCIgW3lQb3NpdGlvbl09XCInYmVsb3cnXCIgY2xhc3M9XCIhbWF4LXctbm9uZVwiPlxuICA8YnV0dG9uIG1hdC1tZW51LWl0ZW0+XG4gICAgPHNwYW4gY2xhc3M9XCJmbGV4IGZsZXgtcm93IGdhcC0yXCI+XG4gICAgICA8bWF0LWljb24gc3ZnSWNvbj1cImFjY291bnRcIj48L21hdC1pY29uPlxuICAgICAgPHNwYW4+e3t1c2VybmFtZSgpfX08L3NwYW4+XG4gICAgPC9zcGFuPlxuICA8L2J1dHRvbj5cbiAgPGJ1dHRvbiAoY2xpY2spPVwibG9nb3V0KClcIiBtYXQtbWVudS1pdGVtPlxuICAgIDxzcGFuIGNsYXNzPVwiZmxleCBmbGV4LXJvdyBnYXAtMlwiPlxuICAgICAgPG1hdC1pY29uIHN2Z0ljb249XCJsb2dvdXRcIj48L21hdC1pY29uPlxuICAgICAgPHNwYW4gaTE4bj5Mb2dvdXQ8L3NwYW4+XG4gICAgPC9zcGFuPlxuICA8L2J1dHRvbj5cbjwvbWF0LW1lbnU+XG4iXX0=
41
+ }], ctorParameters: function () { return [{ type: i1.UserProfileDataSource }, { type: i2.RxapAuthenticationService }, { type: undefined, decorators: [{
42
+ type: Inject,
43
+ args: [EXTRACT_USERNAME_FROM_PROFILE]
44
+ }] }]; } });
45
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlci1wcm9maWxlLWljb24uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvYW5ndWxhci9sYXlvdXQvc3JjL2xpYi9oZWFkZXIvdXNlci1wcm9maWxlLWljb24vdXNlci1wcm9maWxlLWljb24uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvYW5ndWxhci9sYXlvdXQvc3JjL2xpYi9oZWFkZXIvdXNlci1wcm9maWxlLWljb24vdXNlci1wcm9maWxlLWljb24uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFNBQVMsRUFDVCxJQUFJLEdBQ0wsTUFBTSxpQkFBaUIsQ0FBQztBQUN6QixPQUFPLEVBQ0wsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxNQUFNLEVBQ04sY0FBYyxHQUVmLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUN0RCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDdkQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ2pFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3ZELE9BQU8sRUFDTCxvQkFBb0IsRUFDcEIsTUFBTSxFQUNOLElBQUksR0FDTCxNQUFNLE1BQU0sQ0FBQztBQUNkLE9BQU8sRUFDTCxHQUFHLEVBQ0gsU0FBUyxHQUNWLE1BQU0sZ0JBQWdCLENBQUM7Ozs7OztBQUl4QixNQUFNLENBQUMsTUFBTSw2QkFBNkIsR0FBRyxJQUFJLGNBQWMsQ0FDN0QsK0JBQStCLEVBQy9CO0lBQ0UsVUFBVSxFQUFFLE1BQU07SUFDbEIsT0FBTyxFQUFFLEdBQUcsRUFBRSxDQUFDLENBQUMsT0FBWSxFQUFFLEVBQUUsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLFFBQVEsSUFBSSxPQUFPLENBQUMsS0FBSyxJQUFJLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxJQUFJLElBQUk7Q0FDOUcsQ0FDRixDQUFDO0FBZUYsTUFBTSxPQUFPLHdCQUF3QjtJQUluQyxZQUNtQixrQkFBNEMsRUFDNUMscUJBQWdELEVBRS9ELDBCQUEyRDtRQUg1Qyx1QkFBa0IsR0FBbEIsa0JBQWtCLENBQTBCO1FBQzVDLDBCQUFxQixHQUFyQixxQkFBcUIsQ0FBMkI7UUFJakUsSUFBSSxDQUFDLFFBQVEsR0FBRyxRQUFRLENBQUMsSUFBSSxDQUFDLHFCQUFxQixDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FDdkUsTUFBTSxDQUFDLE9BQU8sQ0FBQyxFQUNmLFNBQVMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsa0JBQWtCLENBQUMsT0FBTyxDQUFDO1lBQzlDLFVBQVUsRUFBRSxJQUFJLENBQUMscUJBQXFCLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUMxRCxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQ1AsTUFBTSxDQUFDLE9BQU8sQ0FBQyxFQUNmLG9CQUFvQixFQUFFLENBQ3ZCO1NBQ0YsQ0FBQyxDQUFDLEVBQ0gsTUFBTSxDQUFDLE9BQU8sQ0FBQyxFQUNmLEdBQUcsQ0FBQywwQkFBMEIsQ0FBQyxDQUNoQyxFQUFFLEVBQUUsWUFBWSxFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7SUFDN0IsQ0FBQztJQUVNLEtBQUssQ0FBQyxNQUFNO1FBQ2pCLE1BQU0sSUFBSSxDQUFDLHFCQUFxQixDQUFDLE9BQU8sRUFBRSxDQUFDO0lBQzdDLENBQUM7OEdBMUJVLHdCQUF3QixnR0FPekIsNkJBQTZCO2tHQVA1Qix3QkFBd0Isa0ZDakRyQyw0ckJBb0JBLHdXRHVCSSxhQUFhLCtZQUNiLGFBQWE7OzJGQUtKLHdCQUF3QjtrQkFicEMsU0FBUzsrQkFDRSx3QkFBd0IsbUJBR2pCLHVCQUF1QixDQUFDLE1BQU0sY0FDbkMsSUFBSSxXQUNQO3dCQUNQLGFBQWE7d0JBQ2IsYUFBYTt3QkFDYixJQUFJO3dCQUNKLFNBQVM7cUJBQ1Y7OzBCQVNFLE1BQU07MkJBQUMsNkJBQTZCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQXN5bmNQaXBlLFxuICBOZ0lmLFxufSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENvbXBvbmVudCxcbiAgSW5qZWN0LFxuICBJbmplY3Rpb25Ub2tlbixcbiAgU2lnbmFsLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IHRvU2lnbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZS9yeGpzLWludGVyb3AnO1xuaW1wb3J0IHsgTWF0SWNvbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2ljb24nO1xuaW1wb3J0IHsgTWF0TWVudU1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL21lbnUnO1xuaW1wb3J0IHsgUnhhcEF1dGhlbnRpY2F0aW9uU2VydmljZSB9IGZyb20gJ0ByeGFwL2F1dGhlbnRpY2F0aW9uJztcbmltcG9ydCB7IFVzZXJQcm9maWxlRGF0YVNvdXJjZSB9IGZyb20gJ0ByeGFwL25neC11c2VyJztcbmltcG9ydCB7XG4gIGRpc3RpbmN0VW50aWxDaGFuZ2VkLFxuICBmaWx0ZXIsXG4gIHNraXAsXG59IGZyb20gJ3J4anMnO1xuaW1wb3J0IHtcbiAgbWFwLFxuICBzd2l0Y2hNYXAsXG59IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuZXhwb3J0IHR5cGUgRXh0cmFjdFVzZXJuYW1lRnJvbVByb2ZpbGVGbjxUID0gdW5rbm93bj4gPSAocHJvZmlsZTogVCkgPT4gc3RyaW5nIHwgbnVsbDtcblxuZXhwb3J0IGNvbnN0IEVYVFJBQ1RfVVNFUk5BTUVfRlJPTV9QUk9GSUxFID0gbmV3IEluamVjdGlvblRva2VuPEV4dHJhY3RVc2VybmFtZUZyb21Qcm9maWxlRm4+KFxuICAnZXh0cmFjdC11c2VybmFtZS1mcm9tLXByb2ZpbGUnLFxuICB7XG4gICAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxuICAgIGZhY3Rvcnk6ICgpID0+IChwcm9maWxlOiBhbnkpID0+IChwcm9maWxlID8gcHJvZmlsZS51c2VybmFtZSA/PyBwcm9maWxlLmVtYWlsID8/IHByb2ZpbGUubmFtZSA6IG51bGwpID8/IG51bGwsXG4gIH0sXG4pO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdyeGFwLXVzZXItcHJvZmlsZS1pY29uJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3VzZXItcHJvZmlsZS1pY29uLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbICcuL3VzZXItcHJvZmlsZS1pY29uLmNvbXBvbmVudC5zY3NzJyBdLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW1xuICAgIE1hdE1lbnVNb2R1bGUsXG4gICAgTWF0SWNvbk1vZHVsZSxcbiAgICBOZ0lmLFxuICAgIEFzeW5jUGlwZSxcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgVXNlclByb2ZpbGVJY29uQ29tcG9uZW50PFQgPSB1bmtub3duPiB7XG5cbiAgcHVibGljIHVzZXJuYW1lOiBTaWduYWw8c3RyaW5nIHwgbnVsbD47XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSByZWFkb25seSB1c2VyUHJvZmlsZVNlcnZpY2U6IFVzZXJQcm9maWxlRGF0YVNvdXJjZTxUPixcbiAgICBwcml2YXRlIHJlYWRvbmx5IGF1dGhlbnRpY2F0aW9uU2VydmljZTogUnhhcEF1dGhlbnRpY2F0aW9uU2VydmljZSxcbiAgICBASW5qZWN0KEVYVFJBQ1RfVVNFUk5BTUVfRlJPTV9QUk9GSUxFKVxuICAgICAgZXh0cmFjdFVzZXJuYW1lRnJvbVByb2ZpbGU6IEV4dHJhY3RVc2VybmFtZUZyb21Qcm9maWxlRm48VD4sXG4gICkge1xuICAgIHRoaXMudXNlcm5hbWUgPSB0b1NpZ25hbCh0aGlzLmF1dGhlbnRpY2F0aW9uU2VydmljZS5pc0F1dGhlbnRpY2F0ZWQkLnBpcGUoXG4gICAgICBmaWx0ZXIoQm9vbGVhbiksXG4gICAgICBzd2l0Y2hNYXAoKCkgPT4gdGhpcy51c2VyUHJvZmlsZVNlcnZpY2UuY29ubmVjdCh7XG4gICAgICAgIHZpZXdDaGFuZ2U6IHRoaXMuYXV0aGVudGljYXRpb25TZXJ2aWNlLmlzQXV0aGVudGljYXRlZCQucGlwZShcbiAgICAgICAgICBza2lwKDEpLFxuICAgICAgICAgIGZpbHRlcihCb29sZWFuKSxcbiAgICAgICAgICBkaXN0aW5jdFVudGlsQ2hhbmdlZCgpLFxuICAgICAgICApLFxuICAgICAgfSkpLFxuICAgICAgZmlsdGVyKEJvb2xlYW4pLFxuICAgICAgbWFwKGV4dHJhY3RVc2VybmFtZUZyb21Qcm9maWxlKSxcbiAgICApLCB7IGluaXRpYWxWYWx1ZTogbnVsbCB9KTtcbiAgfVxuXG4gIHB1YmxpYyBhc3luYyBsb2dvdXQoKSB7XG4gICAgYXdhaXQgdGhpcy5hdXRoZW50aWNhdGlvblNlcnZpY2Uuc2lnbk91dCgpO1xuICB9XG5cblxufVxuIiwiPGJ1dHRvbiBbbWF0TWVudVRyaWdnZXJGb3JdPVwibWVudVwiXG4gICAgICAgIFtkaXNhYmxlZF09XCIhdXNlcm5hbWUoKVwiXG4gICAgICAgIGNsYXNzPVwicHJvZmlsZS1pY29uIGZsZXggZmxleC1yb3cganVzdGlmeS1jZW50ZXIgaXRlbXMtY2VudGVyXCI+XG4gIDxtYXQtaWNvbiBjbGFzcz1cImF2YXRhci1pY29uXCIgc3ZnSWNvbj1cImFjY291bnQtY2lyY2xlXCI+PC9tYXQtaWNvbj5cbjwvYnV0dG9uPlxuXG48bWF0LW1lbnUgI21lbnU9XCJtYXRNZW51XCIgW3lQb3NpdGlvbl09XCInYmVsb3cnXCIgY2xhc3M9XCIhbWF4LXctbm9uZVwiPlxuICA8YnV0dG9uIG1hdC1tZW51LWl0ZW0+XG4gICAgPHNwYW4gY2xhc3M9XCJmbGV4IGZsZXgtcm93IGdhcC0yXCI+XG4gICAgICA8bWF0LWljb24gc3ZnSWNvbj1cImFjY291bnRcIj48L21hdC1pY29uPlxuICAgICAgPHNwYW4+e3t1c2VybmFtZSgpfX08L3NwYW4+XG4gICAgPC9zcGFuPlxuICA8L2J1dHRvbj5cbiAgPGJ1dHRvbiAoY2xpY2spPVwibG9nb3V0KClcIiBtYXQtbWVudS1pdGVtPlxuICAgIDxzcGFuIGNsYXNzPVwiZmxleCBmbGV4LXJvdyBnYXAtMlwiPlxuICAgICAgPG1hdC1pY29uIHN2Z0ljb249XCJsb2dvdXRcIj48L21hdC1pY29uPlxuICAgICAgPHNwYW4gaTE4bj5Mb2dvdXQ8L3NwYW4+XG4gICAgPC9zcGFuPlxuICA8L2J1dHRvbj5cbjwvbWF0LW1lbnU+XG4iXX0=