@yelon/bis 18.2.0 → 19.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (46) hide show
  1. package/LICENSE +21 -21
  2. package/fesm2022/bis.mjs +63 -57
  3. package/fesm2022/bis.mjs.map +1 -1
  4. package/fesm2022/config.mjs.map +1 -1
  5. package/fesm2022/layout.mjs +70 -74
  6. package/fesm2022/layout.mjs.map +1 -1
  7. package/fesm2022/yunzai-widgets.mjs +92 -102
  8. package/fesm2022/yunzai-widgets.mjs.map +1 -1
  9. package/layout/layout-basic.component.d.ts +1 -2
  10. package/layout/style/layout-website-01.less +1 -0
  11. package/package.json +12 -20
  12. package/src/helper.d.ts +1 -2
  13. package/src/refresh-token.d.ts +1 -2
  14. package/src/website/layout-website-01.component.d.ts +4 -5
  15. package/src/website/layout-website-02.component.d.ts +6 -7
  16. package/src/yunzai-analysis-addon.guard.d.ts +1 -2
  17. package/esm2022/bis.mjs +0 -5
  18. package/esm2022/config/bis.config.mjs +0 -15
  19. package/esm2022/config/config.mjs +0 -5
  20. package/esm2022/config/public_api.mjs +0 -2
  21. package/esm2022/layout/layout-basic.component.mjs +0 -518
  22. package/esm2022/layout/layout-nav-application.component.mjs +0 -372
  23. package/esm2022/layout/layout-nav-group.component.mjs +0 -166
  24. package/esm2022/layout/layout-nav-tile.component.mjs +0 -15
  25. package/esm2022/layout/layout.mjs +0 -5
  26. package/esm2022/layout/layout.module.mjs +0 -54
  27. package/esm2022/layout/public_api.mjs +0 -6
  28. package/esm2022/public_api.mjs +0 -11
  29. package/esm2022/src/bis.module.mjs +0 -17
  30. package/esm2022/src/helper.mjs +0 -45
  31. package/esm2022/src/provide.mjs +0 -8
  32. package/esm2022/src/refresh-token.mjs +0 -79
  33. package/esm2022/src/startup.service.mjs +0 -205
  34. package/esm2022/src/website/layout-website-01.component.mjs +0 -173
  35. package/esm2022/src/website/layout-website-02.component.mjs +0 -204
  36. package/esm2022/src/yunzai-act.guard.mjs +0 -88
  37. package/esm2022/src/yunzai-analysis-addon.guard.mjs +0 -99
  38. package/esm2022/src/yunzai-default.interceptor.mjs +0 -63
  39. package/esm2022/yunzai-widgets/public_api.mjs +0 -7
  40. package/esm2022/yunzai-widgets/yunzai-clear-storage.component.mjs +0 -47
  41. package/esm2022/yunzai-widgets/yunzai-fullscreen.component.mjs +0 -47
  42. package/esm2022/yunzai-widgets/yunzai-i18n.component.mjs +0 -139
  43. package/esm2022/yunzai-widgets/yunzai-notify.component.mjs +0 -180
  44. package/esm2022/yunzai-widgets/yunzai-user.component.mjs +0 -120
  45. package/esm2022/yunzai-widgets/yunzai-widget.module.mjs +0 -62
  46. package/esm2022/yunzai-widgets/yunzai-widgets.mjs +0 -5
@@ -1,63 +0,0 @@
1
- import { HttpErrorResponse, HttpResponseBase } from '@angular/common/http';
2
- import { Injector, inject } from '@angular/core';
3
- import { of, throwError, mergeMap, catchError } from 'rxjs';
4
- import { mergeBisConfig } from '@yelon/bis/config';
5
- import { IGNORE_BASE_URL } from '@yelon/theme';
6
- import { YUNZAI_CONFIG, YunzaiConfigService } from '@yelon/util';
7
- import { checkStatus, getAdditionalHeaders, goTo, toLogin } from './helper';
8
- import { tryRefreshToken } from './refresh-token';
9
- function handleData(injector, ev, req, next) {
10
- checkStatus(injector, ev);
11
- const config = injector.get(YUNZAI_CONFIG).bis;
12
- switch (ev.status) {
13
- case 200:
14
- return of(ev);
15
- case 401:
16
- if (config.refreshTokenEnabled && config.refreshTokenType === 're-request') {
17
- const unAuthorizationReq = req.clone();
18
- unAuthorizationReq.headers.delete('Authorization');
19
- return tryRefreshToken(injector, ev, unAuthorizationReq, next);
20
- }
21
- toLogin(injector);
22
- break;
23
- case 403:
24
- case 404:
25
- case 500:
26
- goTo(injector, `/exception/${ev.status}?url=${req.urlWithParams}`);
27
- break;
28
- default:
29
- if (ev instanceof HttpErrorResponse) {
30
- console.warn('未可知错误,大部分是由于后端不支持跨域CORS或无效配置引起,请参考 https://ng.yunzainfo.com/docs/server 解决跨域问题', ev);
31
- }
32
- break;
33
- }
34
- if (ev instanceof HttpErrorResponse) {
35
- return throwError(() => ev);
36
- }
37
- else if (ev._throw) {
38
- return throwError(() => ev.body);
39
- }
40
- else {
41
- return of(ev);
42
- }
43
- }
44
- export const yunzaiDefaultInterceptor = (req, next) => {
45
- const config = mergeBisConfig(inject(YunzaiConfigService));
46
- const { baseUrl } = config;
47
- let url = req.url;
48
- if (!req.context.get(IGNORE_BASE_URL) && !url.startsWith('https://') && !url.startsWith('http://')) {
49
- url = baseUrl + (baseUrl.endsWith('/') && url.startsWith('/') ? url.substring(1) : url);
50
- }
51
- if (url.includes('.json') && url.includes('assets')) {
52
- url = req.url;
53
- }
54
- const newReq = req.clone({ url, setHeaders: getAdditionalHeaders(req.headers) });
55
- const injector = inject(Injector);
56
- return next(newReq).pipe(mergeMap(ev => {
57
- if (ev instanceof HttpResponseBase) {
58
- return handleData(injector, ev, newReq, next);
59
- }
60
- return of(ev);
61
- }), catchError((err) => handleData(injector, err, newReq, next)));
62
- };
63
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoieXVuemFpLWRlZmF1bHQuaW50ZXJjZXB0b3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9iaXMvc3JjL3l1bnphaS1kZWZhdWx0LmludGVyY2VwdG9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxpQkFBaUIsRUFJakIsZ0JBQWdCLEVBQ2pCLE1BQU0sc0JBQXNCLENBQUM7QUFDOUIsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDakQsT0FBTyxFQUFjLEVBQUUsRUFBRSxVQUFVLEVBQUUsUUFBUSxFQUFFLFVBQVUsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUV4RSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDbkQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUMvQyxPQUFPLEVBQUUsYUFBYSxFQUFFLG1CQUFtQixFQUFFLE1BQU0sYUFBYSxDQUFDO0FBR2pFLE9BQU8sRUFBRSxXQUFXLEVBQUUsb0JBQW9CLEVBQUUsSUFBSSxFQUFvQixPQUFPLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFDOUYsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRWxELFNBQVMsVUFBVSxDQUNqQixRQUFrQixFQUNsQixFQUFvQixFQUNwQixHQUEyQixFQUMzQixJQUFtQjtJQUVuQixXQUFXLENBQUMsUUFBUSxFQUFFLEVBQUUsQ0FBQyxDQUFDO0lBQzFCLE1BQU0sTUFBTSxHQUFHLFFBQVEsQ0FBQyxHQUFHLENBQUMsYUFBYSxDQUFDLENBQUMsR0FBSSxDQUFDO0lBQ2hELFFBQVEsRUFBRSxDQUFDLE1BQU0sRUFBRSxDQUFDO1FBQ2xCLEtBQUssR0FBRztZQUNOLE9BQU8sRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBQ2hCLEtBQUssR0FBRztZQUNOLElBQUksTUFBTSxDQUFDLG1CQUFt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LElBQUksQ0FBQyxDQUFDO1FBQ2hELENBQUM7UUFDRCxPQUFPLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQztJQUNoQixDQUFDLENBQUMsRUFDRixVQUFVLENBQUMsQ0FBQyxHQUFzQixFQUFFLEVBQUUsQ0FBQyxVQUFVLENBQUMsUUFBUSxFQUFFLEdBQUcsRUFBRSxNQUFNLEVBQUUsSUFBSSxDQUFDLENBQUMsQ0FDaEYsQ0FBQztBQUNKLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIEh0dHBFcnJvclJlc3BvbnNlLFxuICBIdHRwSGFuZGxlckZuLFxuICBIdHRwSW50ZXJjZXB0b3JGbixcbiAgSHR0cFJlcXVlc3QsXG4gIEh0dHBSZXNwb25zZUJhc2Vcbn0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHsgSW5qZWN0b3IsIGluamVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgb2YsIHRocm93RXJyb3IsIG1lcmdlTWFwLCBjYXRjaEVycm9yIH0gZnJvbSAncnhqcyc7XG5cbmltcG9ydCB7IG1lcmdlQmlzQ29uZmlnIH0gZnJvbSAnQHllbG9uL2Jpcy9jb25maWcnO1xuaW1wb3J0IHsgSUdOT1JFX0JBU0VfVVJMIH0gZnJvbSAnQHllbG9uL3RoZW1lJztcbmltcG9ydCB7IFlVTlpBSV9DT05GSUcsIFl1bnphaUNvbmZpZ1NlcnZpY2UgfSBmcm9tICdAeWVsb24vdXRpbCc7XG5pbXBvcnQgeyBOelNhZmVBbnkgfSBmcm9tICduZy16b3Jyby1hbnRkL2NvcmUvdHlwZXMnO1xuXG5pbXBvcnQgeyBjaGVja1N0YXR1cywgZ2V0QWRkaXRpb25hbEhlYWRlcnMsIGdvVG8sIFJlVGhyb3dIdHRwRXJyb3IsIHRvTG9naW4gfSBmcm9tICcuL2hlbHBlcic7XG5pbXBvcnQgeyB0cnlSZWZyZXNoVG9rZW4gfSBmcm9tICcuL3JlZnJlc2gtdG9rZW4nO1xuXG5mdW5jdGlvbiBoYW5kbGVEYXRhKFxuICBpbmplY3RvcjogSW5qZWN0b3IsXG4gIGV2OiBIdHRwUmVzcG9uc2VCYXNlLFxuICByZXE6IEh0dHBSZXF1ZXN0PE56U2FmZUFueT4sXG4gIG5leHQ6IEh0dHBIYW5kbGVyRm5cbik6IE9ic2VydmFibGU8TnpTYWZlQW55PiB7XG4gIGNoZWNrU3RhdHVzKGluamVjdG9yLCBldik7XG4gIGNvbnN0IGNvbmZpZyA9IGluamVjdG9yLmdldChZVU5aQUlfQ09ORklHKS5iaXMhO1xuICBzd2l0Y2ggKGV2LnN0YXR1cykge1xuICAgIGNhc2UgMjAwOlxuICAgICAgcmV0dXJuIG9mKGV2KTtcbiAgICBjYXNlIDQwMTpcbiAgICAgIGlmIChjb25maWcucmVmcmVzaFRva2VuRW5hYmxlZCAmJiBjb25maWcucmVmcmVzaFRva2VuVHlwZSA9PT0gJ3JlLXJlcXVlc3QnKSB7XG4gICAgICAgIGNvbnN0IHVuQXV0aG9yaXphdGlvblJlcSA9IHJlcS5jbG9uZSgpO1xuICAgICAgICB1bkF1dGhvcml6YXRpb25SZXEuaGVhZGVycy5kZWxldGUoJ0F1dGhvcml6YXRpb24nKTtcbiAgICAgICAgcmV0dXJuIHRyeVJlZnJlc2hUb2tlbihpbmplY3RvciwgZXYsIHVuQXV0aG9yaXphdGlvblJlcSwgbmV4dCk7XG4gICAgICB9XG4gICAgICB0b0xvZ2luKGluamVjdG9yKTtcbiAgICAgIGJyZWFrO1xuICAgIGNhc2UgNDAzOlxuICAgIGNhc2UgNDA0OlxuICAgIGNhc2UgNTAwOlxuICAgICAgZ29UbyhpbmplY3RvciwgYC9leGNlcHRpb24vJHtldi5zdGF0dXN9P3VybD0ke3JlcS51cmxXaXRoUGFyYW1zfWApO1xuICAgICAgYnJlYWs7XG4gICAgZGVmYXVsdDpcbiAgICAgIGlmIChldiBpbnN0YW5jZW9mIEh0dHBFcnJvclJlc3BvbnNlKSB7XG4gICAgICAgIGNvbnNvbGUud2FybihcbiAgICAgICAgICAn5pyq5Y+v55+l6ZSZ6K+v77yM5aSn6YOo5YiG5piv55Sx5LqO5ZCO56uv5LiN5pSv5oyB6Leo5Z+fQ09SU+aIluaXoOaViOmFjee9ruW8lei1t++8jOivt+WPguiAgyBodHRwczovL25nLnl1bnphaW5mby5jb20vZG9jcy9zZXJ2ZXIg6Kej5Yaz6Leo5Z+f6Zeu6aKYJyxcbiAgICAgICAgICBldlxuICAgICAgICApO1xuICAgICAgfVxuICAgICAgYnJlYWs7XG4gIH1cbiAgaWYgKGV2IGluc3RhbmNlb2YgSHR0cEVycm9yUmVzcG9uc2UpIHtcbiAgICByZXR1cm4gdGhyb3dFcnJvcigoKSA9PiBldik7XG4gIH0gZWxzZSBpZiAoKGV2IGFzIHVua25vd24gYXMgUmVUaHJvd0h0dHBFcnJvcikuX3Rocm93KSB7XG4gICAgcmV0dXJuIHRocm93RXJyb3IoKCkgPT4gKGV2IGFzIHVua25vd24gYXMgUmVUaHJvd0h0dHBFcnJvcikuYm9keSk7XG4gIH0gZWxzZSB7XG4gICAgcmV0dXJuIG9mKGV2KTtcbiAgfVxufVxuXG5leHBvcnQgY29uc3QgeXVuemFpRGVmYXVsdEludGVyY2VwdG9yOiBIdHRwSW50ZXJjZXB0b3JGbiA9IChyZXEsIG5leHQpID0+IHtcbiAgY29uc3QgY29uZmlnID0gbWVyZ2VCaXNDb25maWcoaW5qZWN0KFl1bnphaUNvbmZpZ1NlcnZpY2UpKTtcbiAgY29uc3QgeyBiYXNlVXJsIH0gPSBjb25maWc7XG4gIGxldCB1cmwgPSByZXEudXJsO1xuICBpZiAoIXJlcS5jb250ZXh0LmdldChJR05PUkVfQkFTRV9VUkwpICYmICF1cmwuc3RhcnRzV2l0aCgnaHR0cHM6Ly8nKSAmJiAhdXJsLnN0YXJ0c1dpdGgoJ2h0dHA6Ly8nKSkge1xuICAgIHVybCA9IGJhc2VVcmwgKyAoYmFzZVVybCEuZW5kc1dpdGgoJy8nKSAmJiB1cmwuc3RhcnRzV2l0aCgnLycpID8gdXJsLnN1YnN0cmluZygxKSA6IHVybCk7XG4gIH1cbiAgaWYgKHVybC5pbmNsdWRlcygnLmpzb24nKSAmJiB1cmwuaW5jbHVkZXMoJ2Fzc2V0cycpKSB7XG4gICAgdXJsID0gcmVxLnVybDtcbiAgfVxuICBjb25zdCBuZXdSZXEgPSByZXEuY2xvbmUoeyB1cmwsIHNldEhlYWRlcnM6IGdldEFkZGl0aW9uYWxIZWFkZXJzKHJlcS5oZWFkZXJzKSB9KTtcbiAgY29uc3QgaW5qZWN0b3IgPSBpbmplY3QoSW5qZWN0b3IpO1xuICByZXR1cm4gbmV4dChuZXdSZXEpLnBpcGUoXG4gICAgbWVyZ2VNYXAoZXYgPT4ge1xuICAgICAgaWYgKGV2IGluc3RhbmNlb2YgSHR0cFJlc3BvbnNlQmFzZSkge1xuICAgICAgICByZXR1cm4gaGFuZGxlRGF0YShpbmplY3RvciwgZXYsIG5ld1JlcSwgbmV4dCk7XG4gICAgICB9XG4gICAgICByZXR1cm4gb2YoZXYpO1xuICAgIH0pLFxuICAgIGNhdGNoRXJyb3IoKGVycjogSHR0cEVycm9yUmVzcG9uc2UpID0+IGhhbmRsZURhdGEoaW5qZWN0b3IsIGVyciwgbmV3UmVxLCBuZXh0KSlcbiAgKTtcbn07XG4iXX0=
@@ -1,7 +0,0 @@
1
- export * from './yunzai-clear-storage.component';
2
- export * from './yunzai-fullscreen.component';
3
- export * from './yunzai-notify.component';
4
- export * from './yunzai-i18n.component';
5
- export * from './yunzai-user.component';
6
- export * from './yunzai-widget.module';
7
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljX2FwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2Jpcy95dW56YWktd2lkZ2V0cy9wdWJsaWNfYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsa0NBQWtDLENBQUM7QUFDakQsY0FBYywrQkFBK0IsQ0FBQztBQUM5QyxjQUFjLDJCQUEyQixDQUFDO0FBQzFDLGNBQWMseUJBQXlCLENBQUM7QUFDeEMsY0FBYyx5QkFBeUIsQ0FBQztBQUN4QyxjQUFjLHdCQUF3QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi95dW56YWktY2xlYXItc3RvcmFnZS5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi95dW56YWktZnVsbHNjcmVlbi5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi95dW56YWktbm90aWZ5LmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL3l1bnphaS1pMThuLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL3l1bnphaS11c2VyLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL3l1bnphaS13aWRnZXQubW9kdWxlJztcbiJdfQ==
@@ -1,47 +0,0 @@
1
- import { ChangeDetectionStrategy, Component, HostListener, inject } from '@angular/core';
2
- import { I18nPipe } from '@yelon/theme';
3
- import { NzIconModule } from 'ng-zorro-antd/icon';
4
- import { NzMessageService } from 'ng-zorro-antd/message';
5
- import { NzModalService } from 'ng-zorro-antd/modal';
6
- import * as i0 from "@angular/core";
7
- import * as i1 from "ng-zorro-antd/icon";
8
- export class YunzaiHeaderClearStorageComponent {
9
- constructor() {
10
- this.modalSrv = inject(NzModalService);
11
- this.messageSrv = inject(NzMessageService);
12
- }
13
- _click() {
14
- this.modalSrv.confirm({
15
- nzTitle: 'Make sure clear all local storage?',
16
- nzOnOk: () => {
17
- localStorage.clear();
18
- this.messageSrv.success('Clear Finished!');
19
- }
20
- });
21
- }
22
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.6", ngImport: i0, type: YunzaiHeaderClearStorageComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
23
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.6", type: YunzaiHeaderClearStorageComponent, isStandalone: true, selector: "yunzai-header-clear-storage", host: { listeners: { "click": "_click()" }, properties: { "class.flex-1": "true" } }, ngImport: i0, template: `
24
- <i nz-icon nzType="tool"></i>
25
- {{ 'menu.clear.local.storage' | i18n }}
26
- `, isInline: true, dependencies: [{ kind: "ngmodule", type: NzIconModule }, { kind: "directive", type: i1.NzIconDirective, selector: "[nz-icon]", inputs: ["nzSpin", "nzRotate", "nzType", "nzTheme", "nzTwotoneColor", "nzIconfont"], exportAs: ["nzIcon"] }, { kind: "pipe", type: I18nPipe, name: "i18n" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
27
- }
28
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.6", ngImport: i0, type: YunzaiHeaderClearStorageComponent, decorators: [{
29
- type: Component,
30
- args: [{
31
- selector: 'yunzai-header-clear-storage',
32
- template: `
33
- <i nz-icon nzType="tool"></i>
34
- {{ 'menu.clear.local.storage' | i18n }}
35
- `,
36
- host: {
37
- '[class.flex-1]': 'true'
38
- },
39
- changeDetection: ChangeDetectionStrategy.OnPush,
40
- standalone: true,
41
- imports: [NzIconModule, I18nPipe]
42
- }]
43
- }], propDecorators: { _click: [{
44
- type: HostListener,
45
- args: ['click']
46
- }] } });
47
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoieXVuemFpLWNsZWFyLXN0b3JhZ2UuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvYmlzL3l1bnphaS13aWRnZXRzL3l1bnphaS1jbGVhci1zdG9yYWdlLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFekYsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUN4QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDbEQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDekQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHFCQUFxQixDQUFDOzs7QUFlckQsTUFBTSxPQUFPLGlDQUFpQztJQWI5QztRQWNtQixhQUFRLEdBQUcsTUFBTSxDQUFDLGNBQWMsQ0FBQyxDQUFDO1FBQ2xDLGVBQVUsR0FBRyxNQUFNLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztLQVl4RDtJQVRDLE1BQU07UUFDSixJQUFJLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQztZQUNwQixPQUFPLEVBQUUsb0NBQW9DO1lBQzdDLE1BQU0sRUFBRSxHQUFHLEVBQUU7Z0JBQ1gsWUFBWSxDQUFDLEtBQUssRUFBRSxDQUFDO2dCQUNyQixJQUFJLENBQUMsVUFBVSxDQUFDLE9BQU8sQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO1lBQzdDLENBQUM7U0FDRixDQUFDLENBQUM7SUFDTCxDQUFDOzhHQWJVLGlDQUFpQztrR0FBakMsaUNBQWlDLDZLQVhsQzs7O0dBR1QsMkRBTVMsWUFBWSw2TUFBRSxRQUFROzsyRkFFckIsaUNBQWlDO2tCQWI3QyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSw2QkFBNkI7b0JBQ3ZDLFFBQVEsRUFBRTs7O0dBR1Q7b0JBQ0QsSUFBSSxFQUFFO3dCQUNKLGdCQUFnQixFQUFFLE1BQU07cUJBQ3pCO29CQUNELGVBQWUsRUFBRSx1QkFBdUIsQ0FBQyxNQUFNO29CQUMvQyxVQUFVLEVBQUUsSUFBSTtvQkFDaEIsT0FBTyxFQUFFLENBQUMsWUFBWSxFQUFFLFFBQVEsQ0FBQztpQkFDbEM7OEJBTUMsTUFBTTtzQkFETCxZQUFZO3VCQUFDLE9BQU8iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBIb3N0TGlzdGVuZXIsIGluamVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBJMThuUGlwZSB9IGZyb20gJ0B5ZWxvbi90aGVtZSc7XG5pbXBvcnQgeyBOekljb25Nb2R1bGUgfSBmcm9tICduZy16b3Jyby1hbnRkL2ljb24nO1xuaW1wb3J0IHsgTnpNZXNzYWdlU2VydmljZSB9IGZyb20gJ25nLXpvcnJvLWFudGQvbWVzc2FnZSc7XG5pbXBvcnQgeyBOek1vZGFsU2VydmljZSB9IGZyb20gJ25nLXpvcnJvLWFudGQvbW9kYWwnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICd5dW56YWktaGVhZGVyLWNsZWFyLXN0b3JhZ2UnLFxuICB0ZW1wbGF0ZTogYFxuICAgIDxpIG56LWljb24gbnpUeXBlPVwidG9vbFwiPjwvaT5cbiAgICB7eyAnbWVudS5jbGVhci5sb2NhbC5zdG9yYWdlJyB8IGkxOG4gfX1cbiAgYCxcbiAgaG9zdDoge1xuICAgICdbY2xhc3MuZmxleC0xXSc6ICd0cnVlJ1xuICB9LFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW056SWNvbk1vZHVsZSwgSTE4blBpcGVdXG59KVxuZXhwb3J0IGNsYXNzIFl1bnphaUhlYWRlckNsZWFyU3RvcmFnZUNvbXBvbmVudCB7XG4gIHByaXZhdGUgcmVhZG9ubHkgbW9kYWxTcnYgPSBpbmplY3QoTnpNb2RhbFNlcnZpY2UpO1xuICBwcml2YXRlIHJlYWRvbmx5IG1lc3NhZ2VTcnYgPSBpbmplY3QoTnpNZXNzYWdlU2VydmljZSk7XG5cbiAgQEhvc3RMaXN0ZW5lcignY2xpY2snKVxuICBfY2xpY2soKTogdm9pZCB7XG4gICAgdGhpcy5tb2RhbFNydi5jb25maXJtKHtcbiAgICAgIG56VGl0bGU6ICdNYWtlIHN1cmUgY2xlYXIgYWxsIGxvY2FsIHN0b3JhZ2U/JyxcbiAgICAgIG56T25PazogKCkgPT4ge1xuICAgICAgICBsb2NhbFN0b3JhZ2UuY2xlYXIoKTtcbiAgICAgICAgdGhpcy5tZXNzYWdlU3J2LnN1Y2Nlc3MoJ0NsZWFyIEZpbmlzaGVkIScpO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG59XG4iXX0=
@@ -1,47 +0,0 @@
1
- import { ChangeDetectionStrategy, Component, HostListener } from '@angular/core';
2
- import screenfull from 'screenfull';
3
- import { I18nPipe } from '@yelon/theme';
4
- import { NzIconModule } from 'ng-zorro-antd/icon';
5
- import * as i0 from "@angular/core";
6
- import * as i1 from "ng-zorro-antd/icon";
7
- export class YunzaiHeaderFullScreenComponent {
8
- constructor() {
9
- this.status = false;
10
- }
11
- _resize() {
12
- this.status = screenfull.isFullscreen;
13
- }
14
- _click() {
15
- if (screenfull.isEnabled) {
16
- screenfull.toggle();
17
- }
18
- }
19
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.6", ngImport: i0, type: YunzaiHeaderFullScreenComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
20
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.6", type: YunzaiHeaderFullScreenComponent, isStandalone: true, selector: "yunzai-header-fullscreen", host: { listeners: { "window:resize": "_resize()", "click": "_click()" }, properties: { "class.flex-1": "true" } }, ngImport: i0, template: `
21
- <i nz-icon [nzType]="status ? 'fullscreen-exit' : 'fullscreen'"></i>
22
- {{ (status ? 'menu.fullscreen.exit' : 'menu.fullscreen') | i18n }}
23
- `, isInline: true, dependencies: [{ kind: "ngmodule", type: NzIconModule }, { kind: "directive", type: i1.NzIconDirective, selector: "[nz-icon]", inputs: ["nzSpin", "nzRotate", "nzType", "nzTheme", "nzTwotoneColor", "nzIconfont"], exportAs: ["nzIcon"] }, { kind: "pipe", type: I18nPipe, name: "i18n" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
24
- }
25
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.6", ngImport: i0, type: YunzaiHeaderFullScreenComponent, decorators: [{
26
- type: Component,
27
- args: [{
28
- selector: 'yunzai-header-fullscreen',
29
- template: `
30
- <i nz-icon [nzType]="status ? 'fullscreen-exit' : 'fullscreen'"></i>
31
- {{ (status ? 'menu.fullscreen.exit' : 'menu.fullscreen') | i18n }}
32
- `,
33
- host: {
34
- '[class.flex-1]': 'true'
35
- },
36
- changeDetection: ChangeDetectionStrategy.OnPush,
37
- standalone: true,
38
- imports: [NzIconModule, I18nPipe]
39
- }]
40
- }], propDecorators: { _resize: [{
41
- type: HostListener,
42
- args: ['window:resize']
43
- }], _click: [{
44
- type: HostListener,
45
- args: ['click']
46
- }] } });
47
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoieXVuemFpLWZ1bGxzY3JlZW4uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvYmlzL3l1bnphaS13aWRnZXRzL3l1bnphaS1mdWxsc2NyZWVuLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUVqRixPQUFPLFVBQVUsTUFBTSxZQUFZLENBQUM7QUFFcEMsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUN4QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sb0JBQW9CLENBQUM7OztBQWVsRCxNQUFNLE9BQU8sK0JBQStCO0lBYjVDO1FBY0UsV0FBTSxHQUFHLEtBQUssQ0FBQztLQWFoQjtJQVZDLE9BQU87UUFDTCxJQUFJLENBQUMsTUFBTSxHQUFHLFVBQVUsQ0FBQyxZQUFZLENBQUM7SUFDeEMsQ0FBQztJQUdELE1BQU07UUFDSixJQUFJLFVBQVUsQ0FBQyxTQUFTLEVBQUUsQ0FBQztZQUN6QixVQUFVLENBQUMsTUFBTSxFQUFFLENBQUM7UUFDdEIsQ0FBQztJQUNILENBQUM7OEdBYlUsK0JBQStCO2tHQUEvQiwrQkFBK0Isd01BWGhDOzs7R0FHVCwyREFNUyxZQUFZLDZNQUFFLFFBQVE7OzJGQUVyQiwrQkFBK0I7a0JBYjNDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLDBCQUEwQjtvQkFDcEMsUUFBUSxFQUFFOzs7R0FHVDtvQkFDRCxJQUFJLEVBQUU7d0JBQ0osZ0JBQWdCLEVBQUUsTUFBTTtxQkFDekI7b0JBQ0QsZUFBZSxFQUFFLHVCQUF1QixDQUFDLE1BQU07b0JBQy9DLFVBQVUsRUFBRSxJQUFJO29CQUNoQixPQUFPLEVBQUUsQ0FBQyxZQUFZLEVBQUUsUUFBUSxDQUFDO2lCQUNsQzs4QkFLQyxPQUFPO3NCQUROLFlBQVk7dUJBQUMsZUFBZTtnQkFNN0IsTUFBTTtzQkFETCxZQUFZO3VCQUFDLE9BQU8iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBIb3N0TGlzdGVuZXIgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHNjcmVlbmZ1bGwgZnJvbSAnc2NyZWVuZnVsbCc7XG5cbmltcG9ydCB7IEkxOG5QaXBlIH0gZnJvbSAnQHllbG9uL3RoZW1lJztcbmltcG9ydCB7IE56SWNvbk1vZHVsZSB9IGZyb20gJ25nLXpvcnJvLWFudGQvaWNvbic7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3l1bnphaS1oZWFkZXItZnVsbHNjcmVlbicsXG4gIHRlbXBsYXRlOiBgXG4gICAgPGkgbnotaWNvbiBbbnpUeXBlXT1cInN0YXR1cyA/ICdmdWxsc2NyZWVuLWV4aXQnIDogJ2Z1bGxzY3JlZW4nXCI+PC9pPlxuICAgIHt7IChzdGF0dXMgPyAnbWVudS5mdWxsc2NyZWVuLmV4aXQnIDogJ21lbnUuZnVsbHNjcmVlbicpIHwgaTE4biB9fVxuICBgLFxuICBob3N0OiB7XG4gICAgJ1tjbGFzcy5mbGV4LTFdJzogJ3RydWUnXG4gIH0sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbTnpJY29uTW9kdWxlLCBJMThuUGlwZV1cbn0pXG5leHBvcnQgY2xhc3MgWXVuemFpSGVhZGVyRnVsbFNjcmVlbkNvbXBvbmVudCB7XG4gIHN0YXR1cyA9IGZhbHNlO1xuXG4gIEBIb3N0TGlzdGVuZXIoJ3dpbmRvdzpyZXNpemUnKVxuICBfcmVzaXplKCk6IHZvaWQge1xuICAgIHRoaXMuc3RhdHVzID0gc2NyZWVuZnVsbC5pc0Z1bGxzY3JlZW47XG4gIH1cblxuICBASG9zdExpc3RlbmVyKCdjbGljaycpXG4gIF9jbGljaygpOiB2b2lkIHtcbiAgICBpZiAoc2NyZWVuZnVsbC5pc0VuYWJsZWQpIHtcbiAgICAgIHNjcmVlbmZ1bGwudG9nZ2xlKCk7XG4gICAgfVxuICB9XG59XG4iXX0=
@@ -1,139 +0,0 @@
1
- import { CommonModule, DOCUMENT } from '@angular/common';
2
- import { booleanAttribute, ChangeDetectionStrategy, Component, inject, Input } from '@angular/core';
3
- import { Subject, takeUntil } from 'rxjs';
4
- import { I18nPipe, SettingsService, YUNZAI_I18N_TOKEN } from '@yelon/theme';
5
- import { NzDropDownModule } from 'ng-zorro-antd/dropdown';
6
- import { NzIconModule } from 'ng-zorro-antd/icon';
7
- import * as i0 from "@angular/core";
8
- import * as i1 from "ng-zorro-antd/menu";
9
- import * as i2 from "ng-zorro-antd/dropdown";
10
- import * as i3 from "ng-zorro-antd/icon";
11
- export class YunzaiHeaderI18nComponent {
12
- constructor() {
13
- this.settings = inject(SettingsService);
14
- this.i18n = inject(YUNZAI_I18N_TOKEN);
15
- this.doc = inject(DOCUMENT);
16
- this.langs = [];
17
- this.destroy$ = new Subject();
18
- /** Whether to display language text */
19
- this.showLangText = true;
20
- }
21
- get curLangCode() {
22
- return this.settings.layout.lang;
23
- }
24
- ngOnInit() {
25
- this.i18n
26
- .getLangs()
27
- .pipe(takeUntil(this.destroy$))
28
- .subscribe(langs => {
29
- this.langs = langs;
30
- });
31
- }
32
- change(lang) {
33
- const spinEl = this.doc.createElement('div');
34
- spinEl.setAttribute('class', `page-loading ant-spin ant-spin-lg ant-spin-spinning`);
35
- spinEl.innerHTML = `<span class="ant-spin-dot ant-spin-dot-spin"><i></i><i></i><i></i><i></i></span>`;
36
- this.doc.body.appendChild(spinEl);
37
- this.i18n.loadLangData(lang).subscribe(res => {
38
- this.i18n.use(lang, res);
39
- this.settings.setLayout('lang', lang);
40
- setTimeout(() => this.doc.location.reload());
41
- });
42
- }
43
- ngOnDestroy() {
44
- this.destroy$.complete();
45
- }
46
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.6", ngImport: i0, type: YunzaiHeaderI18nComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
47
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.6", type: YunzaiHeaderI18nComponent, isStandalone: true, selector: "yunzai-header-i18n", inputs: { showLangText: ["showLangText", "showLangText", booleanAttribute] }, host: { properties: { "class.flex-1": "true" } }, ngImport: i0, template: `
48
- @if (showLangText) {
49
- <div nz-dropdown [nzDropdownMenu]="langMenu" nzPlacement="bottomRight">
50
- <i nz-icon nzType="global"></i>
51
- {{ 'lang.nav' | i18n }}
52
- <i nz-icon nzType="down"></i>
53
- </div>
54
- } @else {
55
- <i nz-dropdown [nzDropdownMenu]="langMenu" nzPlacement="bottomRight" nz-icon nzType="global"></i>
56
- }
57
- <nz-dropdown-menu data-event-id="_nav_lang" #langMenu="nzDropdownMenu">
58
- <ul nz-menu>
59
- @for (item of langs; track item) {
60
- <li
61
- data-event-id="_nav_lang"
62
- [attr.data-text]="item.text"
63
- nz-menu-item
64
- [nzSelected]="item.code === curLangCode"
65
- (click)="change(item.code)"
66
- >
67
- @if (!item.icon) {
68
- <span role="img" [attr.aria-label]="item.text" class="pr-xs">{{ item.abbr }}</span>
69
- } @else {
70
- <img
71
- style="margin-right:4px"
72
- width="50px"
73
- height="30px"
74
- [src]="'data:image/png;base64,' + item.icon"
75
- [alt]="item.abbr"
76
- class="pr-xs"
77
- />
78
- }
79
- {{ item.text }}
80
- </li>
81
- }
82
- </ul>
83
- </nz-dropdown-menu>
84
- `, isInline: true, dependencies: [{ kind: "ngmodule", type: NzDropDownModule }, { kind: "directive", type: i1.NzMenuDirective, selector: "[nz-menu]", inputs: ["nzInlineIndent", "nzTheme", "nzMode", "nzInlineCollapsed", "nzSelectable"], outputs: ["nzClick"], exportAs: ["nzMenu"] }, { kind: "component", type: i1.NzMenuItemComponent, selector: "[nz-menu-item]", inputs: ["nzPaddingLeft", "nzDisabled", "nzSelected", "nzDanger", "nzMatchRouterExact", "nzMatchRouter"], exportAs: ["nzMenuItem"] }, { kind: "directive", type: i2.NzDropDownDirective, selector: "[nz-dropdown]", inputs: ["nzDropdownMenu", "nzTrigger", "nzMatchWidthElement", "nzBackdrop", "nzClickHide", "nzDisabled", "nzVisible", "nzOverlayClassName", "nzOverlayStyle", "nzPlacement"], outputs: ["nzVisibleChange"], exportAs: ["nzDropdown"] }, { kind: "component", type: i2.NzDropdownMenuComponent, selector: "nz-dropdown-menu", exportAs: ["nzDropdownMenu"] }, { kind: "ngmodule", type: NzIconModule }, { kind: "directive", type: i3.NzIconDirective, selector: "[nz-icon]", inputs: ["nzSpin", "nzRotate", "nzType", "nzTheme", "nzTwotoneColor", "nzIconfont"], exportAs: ["nzIcon"] }, { kind: "pipe", type: I18nPipe, name: "i18n" }, { kind: "ngmodule", type: CommonModule }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
85
- }
86
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.6", ngImport: i0, type: YunzaiHeaderI18nComponent, decorators: [{
87
- type: Component,
88
- args: [{
89
- selector: `yunzai-header-i18n`,
90
- template: `
91
- @if (showLangText) {
92
- <div nz-dropdown [nzDropdownMenu]="langMenu" nzPlacement="bottomRight">
93
- <i nz-icon nzType="global"></i>
94
- {{ 'lang.nav' | i18n }}
95
- <i nz-icon nzType="down"></i>
96
- </div>
97
- } @else {
98
- <i nz-dropdown [nzDropdownMenu]="langMenu" nzPlacement="bottomRight" nz-icon nzType="global"></i>
99
- }
100
- <nz-dropdown-menu data-event-id="_nav_lang" #langMenu="nzDropdownMenu">
101
- <ul nz-menu>
102
- @for (item of langs; track item) {
103
- <li
104
- data-event-id="_nav_lang"
105
- [attr.data-text]="item.text"
106
- nz-menu-item
107
- [nzSelected]="item.code === curLangCode"
108
- (click)="change(item.code)"
109
- >
110
- @if (!item.icon) {
111
- <span role="img" [attr.aria-label]="item.text" class="pr-xs">{{ item.abbr }}</span>
112
- } @else {
113
- <img
114
- style="margin-right:4px"
115
- width="50px"
116
- height="30px"
117
- [src]="'data:image/png;base64,' + item.icon"
118
- [alt]="item.abbr"
119
- class="pr-xs"
120
- />
121
- }
122
- {{ item.text }}
123
- </li>
124
- }
125
- </ul>
126
- </nz-dropdown-menu>
127
- `,
128
- host: {
129
- '[class.flex-1]': 'true'
130
- },
131
- standalone: true,
132
- changeDetection: ChangeDetectionStrategy.OnPush,
133
- imports: [NzDropDownModule, NzIconModule, I18nPipe, CommonModule]
134
- }]
135
- }], propDecorators: { showLangText: [{
136
- type: Input,
137
- args: [{ transform: booleanAttribute }]
138
- }] } });
139
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoieXVuemFpLWkxOG4uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvYmlzL3l1bnphaS13aWRnZXRzL3l1bnphaS1pMThuLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLFFBQVEsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3pELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBcUIsTUFBTSxlQUFlLENBQUM7QUFDdkgsT0FBTyxFQUFFLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFFMUMsT0FBTyxFQUFFLFFBQVEsRUFBRSxlQUFlLEVBQUUsaUJBQWlCLEVBQXlDLE1BQU0sY0FBYyxDQUFDO0FBRW5ILE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQzFELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQzs7Ozs7QUFpRGxELE1BQU0sT0FBTyx5QkFBeUI7SUEvQ3RDO1FBZ0RtQixhQUFRLEdBQUcsTUFBTSxDQUFDLGVBQWUsQ0FBQyxDQUFDO1FBQ25DLFNBQUksR0FBRyxNQUFNLENBQXdCLGlCQUFpQixDQUFDLENBQUM7UUFDeEQsUUFBRyxHQUFHLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUN4QyxVQUFLLEdBQXFCLEVBQUUsQ0FBQztRQUNyQixhQUFRLEdBQXVCLElBQUksT0FBTyxFQUFhLENBQUM7UUFDaEUsdUNBQXVDO1FBQ0MsaUJBQVksR0FBRyxJQUFJLENBQUM7S0E2QjdEO0lBM0JDLElBQUksV0FBVztRQUNiLE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDO0lBQ25DLENBQUM7SUFDRCxRQUFRO1FBQ04sSUFBSSxDQUFDLElBQUk7YUFDTixRQUFRLEVBQUU7YUFDVixJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQzthQUM5QixTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUU7WUFDakIsSUFBSSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUM7UUFDckIsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDO0lBRUQsTUFBTSxDQUFDLElBQVk7UUFDakIsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDN0MsTUFBTSxDQUFDLFlBQVksQ0FBQyxPQUFPLEVBQUUscURBQXFELENBQUMsQ0FBQztRQUNwRixNQUFNLENBQUMsU0FBUyxHQUFHLGtGQUFrRixDQUFDO1FBQ3RHLElBQUksQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUVsQyxJQUFJLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUU7WUFDM0MsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsSUFBSSxFQUFFLEdBQUcsQ0FBQyxDQUFDO1lBQ3pCLElBQUksQ0FBQyxRQUFRLENBQUMsU0FBUyxDQUFDLE1BQU0sRUFBRSxJQUFJLENBQUMsQ0FBQztZQUN0QyxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsTUFBTSxFQUFFLENBQUMsQ0FBQztRQUMvQyxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFDRCxXQUFXO1FBQ1QsSUFBSSxDQUFDLFFBQVEsQ0FBQyxRQUFRLEVBQUUsQ0FBQztJQUMzQixDQUFDOzhHQW5DVSx5QkFBeUI7a0dBQXpCLHlCQUF5QiwrR0FPaEIsZ0JBQWdCLCtFQXBEMUI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FxQ1QsMkRBTVMsZ0JBQWdCLHkyQkFBRSxZQUFZLDZNQUFFLFFBQVEsNENBQUUsWUFBWTs7MkZBRXJELHlCQUF5QjtrQkEvQ3JDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLG9CQUFvQjtvQkFDOUIsUUFBUSxFQUFFOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBcUNUO29CQUNELElBQUksRUFBRTt3QkFDSixnQkFBZ0IsRUFBRSxNQUFNO3FCQUN6QjtvQkFDRCxVQUFVLEVBQUUsSUFBSTtvQkFDaEIsZUFBZSxFQUFFLHVCQUF1QixDQUFDLE1BQU07b0JBQy9DLE9BQU8sRUFBRSxDQUFDLGdCQUFnQixFQUFFLFlBQVksRUFBRSxRQUFRLEVBQUUsWUFBWSxDQUFDO2lCQUNsRTs4QkFReUMsWUFBWTtzQkFBbkQsS0FBSzt1QkFBQyxFQUFFLFNBQVMsRUFBRSxnQkFBZ0IsRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbW1vbk1vZHVsZSwgRE9DVU1FTlQgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgYm9vbGVhbkF0dHJpYnV0ZSwgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgaW5qZWN0LCBJbnB1dCwgT25EZXN0cm95LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFN1YmplY3QsIHRha2VVbnRpbCB9IGZyb20gJ3J4anMnO1xuXG5pbXBvcnQgeyBJMThuUGlwZSwgU2V0dGluZ3NTZXJ2aWNlLCBZVU5aQUlfSTE4Tl9UT0tFTiwgWXVuemFpSHR0cEkxOE5TZXJ2aWNlLCBZdW56YWlJMThOVHlwZSB9IGZyb20gJ0B5ZWxvbi90aGVtZSc7XG5pbXBvcnQgeyBOelNhZmVBbnkgfSBmcm9tICduZy16b3Jyby1hbnRkL2NvcmUvdHlwZXMnO1xuaW1wb3J0IHsgTnpEcm9wRG93bk1vZHVsZSB9IGZyb20gJ25nLXpvcnJvLWFudGQvZHJvcGRvd24nO1xuaW1wb3J0IHsgTnpJY29uTW9kdWxlIH0gZnJvbSAnbmctem9ycm8tYW50ZC9pY29uJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiBgeXVuemFpLWhlYWRlci1pMThuYCxcbiAgdGVtcGxhdGU6IGBcbiAgICBAaWYgKHNob3dMYW5nVGV4dCkge1xuICAgICAgPGRpdiBuei1kcm9wZG93biBbbnpEcm9wZG93bk1lbnVdPVwibGFuZ01lbnVcIiBuelBsYWNlbWVudD1cImJvdHRvbVJpZ2h0XCI+XG4gICAgICAgIDxpIG56LWljb24gbnpUeXBlPVwiZ2xvYmFsXCI+PC9pPlxuICAgICAgICB7eyAnbGFuZy5uYXYnIHwgaTE4biB9fVxuICAgICAgICA8aSBuei1pY29uIG56VHlwZT1cImRvd25cIj48L2k+XG4gICAgICA8L2Rpdj5cbiAgICB9IEBlbHNlIHtcbiAgICAgIDxpIG56LWRyb3Bkb3duIFtuekRyb3Bkb3duTWVudV09XCJsYW5nTWVudVwiIG56UGxhY2VtZW50PVwiYm90dG9tUmlnaHRcIiBuei1pY29uIG56VHlwZT1cImdsb2JhbFwiPjwvaT5cbiAgICB9XG4gICAgPG56LWRyb3Bkb3duLW1lbnUgZGF0YS1ldmVudC1pZD1cIl9uYXZfbGFuZ1wiICNsYW5nTWVudT1cIm56RHJvcGRvd25NZW51XCI+XG4gICAgICA8dWwgbnotbWVudT5cbiAgICAgICAgQGZvciAoaXRlbSBvZiBsYW5nczsgdHJhY2sgaXRlbSkge1xuICAgICAgICAgIDxsaVxuICAgICAgICAgICAgZGF0YS1ldmVudC1pZD1cIl9uYXZfbGFuZ1wiXG4gICAgICAgICAgICBbYXR0ci5kYXRhLXRleHRdPVwiaXRlbS50ZXh0XCJcbiAgICAgICAgICAgIG56LW1lbnUtaXRlbVxuICAgICAgICAgICAgW256U2VsZWN0ZWRdPVwiaXRlbS5jb2RlID09PSBjdXJMYW5nQ29kZVwiXG4gICAgICAgICAgICAoY2xpY2spPVwiY2hhbmdlKGl0ZW0uY29kZSlcIlxuICAgICAgICAgID5cbiAgICAgICAgICAgIEBpZiAoIWl0ZW0uaWNvbikge1xuICAgICAgICAgICAgICA8c3BhbiByb2xlPVwiaW1nXCIgW2F0dHIuYXJpYS1sYWJlbF09XCJpdGVtLnRleHRcIiBjbGFzcz1cInByLXhzXCI+e3sgaXRlbS5hYmJyIH19PC9zcGFuPlxuICAgICAgICAgICAgfSBAZWxzZSB7XG4gICAgICAgICAgICAgIDxpbWdcbiAgICAgICAgICAgICAgICBzdHlsZT1cIm1hcmdpbi1yaWdodDo0cHhcIlxuICAgICAgICAgICAgICAgIHdpZHRoPVwiNTBweFwiXG4gICAgICAgICAgICAgICAgaGVpZ2h0PVwiMzBweFwiXG4gICAgICAgICAgICAgICAgW3NyY109XCInZGF0YTppbWFnZS9wbmc7YmFzZTY0LCcgKyBpdGVtLmljb25cIlxuICAgICAgICAgICAgICAgIFthbHRdPVwiaXRlbS5hYmJyXCJcbiAgICAgICAgICAgICAgICBjbGFzcz1cInByLXhzXCJcbiAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHt7IGl0ZW0udGV4dCB9fVxuICAgICAgICAgIDwvbGk+XG4gICAgICAgIH1cbiAgICAgIDwvdWw+XG4gICAgPC9uei1kcm9wZG93bi1tZW51PlxuICBgLFxuICBob3N0OiB7XG4gICAgJ1tjbGFzcy5mbGV4LTFdJzogJ3RydWUnXG4gIH0sXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBpbXBvcnRzOiBbTnpEcm9wRG93bk1vZHVsZSwgTnpJY29uTW9kdWxlLCBJMThuUGlwZSwgQ29tbW9uTW9kdWxlXVxufSlcbmV4cG9ydCBjbGFzcyBZdW56YWlIZWFkZXJJMThuQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xuICBwcml2YXRlIHJlYWRvbmx5IHNldHRpbmdzID0gaW5qZWN0KFNldHRpbmdzU2VydmljZSk7XG4gIHByaXZhdGUgcmVhZG9ubHkgaTE4biA9IGluamVjdDxZdW56YWlIdHRwSTE4TlNlcnZpY2U+KFlVTlpBSV9JMThOX1RPS0VOKTtcbiAgcHJpdmF0ZSByZWFkb25seSBkb2MgPSBpbmplY3QoRE9DVU1FTlQpO1xuICBsYW5nczogWXVuemFpSTE4TlR5cGVbXSA9IFtdO1xuICBwcml2YXRlIGRlc3Ryb3kkOiBTdWJqZWN0PE56U2FmZUFueT4gPSBuZXcgU3ViamVjdDxOelNhZmVBbnk+KCk7XG4gIC8qKiBXaGV0aGVyIHRvIGRpc3BsYXkgbGFuZ3VhZ2UgdGV4dCAqL1xuICBASW5wdXQoeyB0cmFuc2Zvcm06IGJvb2xlYW5BdHRyaWJ1dGUgfSkgc2hvd0xhbmdUZXh0ID0gdHJ1ZTtcblxuICBnZXQgY3VyTGFuZ0NvZGUoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5zZXR0aW5ncy5sYXlvdXQubGFuZztcbiAgfVxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLmkxOG5cbiAgICAgIC5nZXRMYW5ncygpXG4gICAgICAucGlwZSh0YWtlVW50aWwodGhpcy5kZXN0cm95JCkpXG4gICAgICAuc3Vic2NyaWJlKGxhbmdzID0+IHtcbiAgICAgICAgdGhpcy5sYW5ncyA9IGxhbmdzO1xuICAgICAgfSk7XG4gIH1cblxuICBjaGFuZ2UobGFuZzogc3RyaW5nKTogdm9pZCB7XG4gICAgY29uc3Qgc3BpbkVsID0gdGhpcy5kb2MuY3JlYXRlRWxlbWVudCgnZGl2Jyk7XG4gICAgc3BpbkVsLnNldEF0dHJpYnV0ZSgnY2xhc3MnLCBgcGFnZS1sb2FkaW5nIGFudC1zcGluIGFudC1zcGluLWxnIGFudC1zcGluLXNwaW5uaW5nYCk7XG4gICAgc3BpbkVsLmlubmVySFRNTCA9IGA8c3BhbiBjbGFzcz1cImFudC1zcGluLWRvdCBhbnQtc3Bpbi1kb3Qtc3BpblwiPjxpPjwvaT48aT48L2k+PGk+PC9pPjxpPjwvaT48L3NwYW4+YDtcbiAgICB0aGlzLmRvYy5ib2R5LmFwcGVuZENoaWxkKHNwaW5FbCk7XG5cbiAgICB0aGlzLmkxOG4ubG9hZExhbmdEYXRhKGxhbmcpLnN1YnNjcmliZShyZXMgPT4ge1xuICAgICAgdGhpcy5pMThuLnVzZShsYW5nLCByZXMpO1xuICAgICAgdGhpcy5zZXR0aW5ncy5zZXRMYXlvdXQoJ2xhbmcnLCBsYW5nKTtcbiAgICAgIHNldFRpbWVvdXQoKCkgPT4gdGhpcy5kb2MubG9jYXRpb24ucmVsb2FkKCkpO1xuICAgIH0pO1xuICB9XG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMuZGVzdHJveSQuY29tcGxldGUoKTtcbiAgfVxufVxuIl19
@@ -1,180 +0,0 @@
1
- import { ChangeDetectionStrategy, ChangeDetectorRef, Component, inject } from '@angular/core';
2
- import { forkJoin, map } from 'rxjs';
3
- import { formatDistanceToNow } from 'date-fns';
4
- import { NoticeIconModule } from '@yelon/abc/notice-icon';
5
- import { _HttpClient, YUNZAI_I18N_TOKEN } from '@yelon/theme';
6
- import { WINDOW } from '@yelon/util';
7
- import { NzI18nService } from 'ng-zorro-antd/i18n';
8
- import { NzMessageService } from 'ng-zorro-antd/message';
9
- import * as i0 from "@angular/core";
10
- import * as i1 from "@yelon/abc/notice-icon";
11
- export class YunzaiHeaderNotifyComponent {
12
- constructor() {
13
- this.i18n = inject(YUNZAI_I18N_TOKEN);
14
- this.msg = inject(NzMessageService);
15
- this.nzI18n = inject(NzI18nService);
16
- this.cdr = inject(ChangeDetectorRef);
17
- this.http = inject(_HttpClient);
18
- this.win = inject(WINDOW);
19
- this.loading = false;
20
- this.count = 0;
21
- this.subs = [];
22
- this.data = [
23
- {
24
- key: 'msg',
25
- title: this.i18n.fanyi('notify.message'),
26
- list: [],
27
- emptyText: this.i18n.fanyi('notify.message.empty'),
28
- emptyImage: './assets/tmp/img/message.svg',
29
- clearText: this.i18n.fanyi('notify.message.clear')
30
- },
31
- {
32
- key: 'todo',
33
- title: this.i18n.fanyi('notify.todo'),
34
- list: [],
35
- emptyText: this.i18n.fanyi('notify.todo.empty'),
36
- emptyImage: './assets/tmp/img/todo.svg',
37
- clearText: this.i18n.fanyi('notify.todo.clear')
38
- },
39
- {
40
- key: 'notice',
41
- title: this.i18n.fanyi('notify.notice'),
42
- list: [],
43
- emptyText: this.i18n.fanyi('notify.notice.empty'),
44
- emptyImage: './assets/tmp/img/notice.svg',
45
- clearText: this.i18n.fanyi('notify.notice.clear')
46
- }
47
- ];
48
- }
49
- ngOnInit() {
50
- this.loadData();
51
- }
52
- loadData() {
53
- this.count = 0;
54
- this.loading = true;
55
- this.subs.push(
56
- // @ts-ignore
57
- forkJoin(this.loadTodo(), this.loadMessage()).subscribe(() => {
58
- this.loading = false;
59
- this.cdr.detectChanges();
60
- }));
61
- }
62
- loadMessage() {
63
- const formatMessageStatus = (status) => {
64
- switch (status) {
65
- case '0':
66
- return { extra: this.i18n.fanyi('notify.unread'), color: 'red' };
67
- case '1':
68
- return { extra: this.i18n.fanyi('notify.readed'), color: 'green' };
69
- default:
70
- return { extra: this.i18n.fanyi('notify.nostatus'), color: 'primary' };
71
- }
72
- };
73
- return this.http
74
- .post(`/message-center-3/my-msg-and-todo/msg-list`, {
75
- pageNum: 1,
76
- pageSize: 10,
77
- status: '0'
78
- })
79
- .pipe(map((response) => {
80
- const viewMessage = this.data.filter(d => d.key === 'msg')[0];
81
- viewMessage.list = response.data.list.map((m) => {
82
- return {
83
- ...m,
84
- avatar: m?.imgUrl || './assets/tmp/img/message.png',
85
- title: m.systemName,
86
- description: m.content,
87
- extra: formatMessageStatus(m.status).extra,
88
- color: formatMessageStatus(m.status).color,
89
- datetime: formatDistanceToNow(new Date(m.date), { locale: this.nzI18n.getDateLocale() })
90
- };
91
- });
92
- this.count += viewMessage.list.length;
93
- }));
94
- }
95
- loadTodo() {
96
- const formatTodoStatus = (status) => {
97
- switch (status) {
98
- case '0':
99
- return { extra: this.i18n.fanyi('notify.unstart'), color: 'red' };
100
- case '1':
101
- return { extra: this.i18n.fanyi('notify.started'), color: 'green' };
102
- default:
103
- return { extra: this.i18n.fanyi('notify.nostatus'), color: 'primary' };
104
- }
105
- };
106
- return this.http
107
- .post(`/message-center-3/my-msg-and-todo/todo-list`, {
108
- pageNum: 1,
109
- pageSize: 10,
110
- status: '0'
111
- })
112
- .pipe(map((response) => {
113
- const viewTodo = this.data.filter(d => d.key === 'todo')[0];
114
- viewTodo.list = response.data.list.map((t) => {
115
- return {
116
- ...t,
117
- avatar: t?.imgUrl || './assets/tmp/img/todo.png',
118
- title: t.systemName,
119
- description: t.content,
120
- datetime: formatDistanceToNow(new Date(t.date), { locale: this.nzI18n.getDateLocale() }),
121
- extra: formatTodoStatus(t.status).extra,
122
- color: formatTodoStatus(t.status).color
123
- };
124
- });
125
- this.count += viewTodo.list.length;
126
- }));
127
- }
128
- clear(type) {
129
- const t = this.data.filter(d => d.title === type)[0];
130
- if (t.key == 'msg' || t.key == 'notice') {
131
- this.subs.push(this.http.post(`/message-center-3/my-msg-and-todo/msg-clear`, {}).subscribe(_ => {
132
- this.msg.success(`${this.i18n.fanyi('notify.clear')} ${type}`);
133
- this.loadData();
134
- }));
135
- }
136
- if (t.key == 'todo') {
137
- this.loadData();
138
- }
139
- }
140
- select(res) {
141
- this.win.open(res.item.url);
142
- this.loadData();
143
- }
144
- ngOnDestroy() {
145
- this.subs.forEach(a => a.unsubscribe());
146
- }
147
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.6", ngImport: i0, type: YunzaiHeaderNotifyComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
148
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.6", type: YunzaiHeaderNotifyComponent, isStandalone: true, selector: "yunzai-header-notify", ngImport: i0, template: `
149
- <notice-icon
150
- [data]="data"
151
- [count]="count"
152
- [loading]="loading"
153
- btnClass="yunzai-default__nav-item"
154
- btnIconClass="yunzai-default__nav-item-icon"
155
- (select)="select($event)"
156
- (clear)="clear($event)"
157
- />
158
- `, isInline: true, dependencies: [{ kind: "ngmodule", type: NoticeIconModule }, { kind: "component", type: i1.NoticeIconComponent, selector: "notice-icon", inputs: ["data", "count", "loading", "popoverVisible", "btnClass", "btnIconClass", "centered"], outputs: ["select", "clear", "popoverVisibleChange"], exportAs: ["noticeIcon"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
159
- }
160
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.6", ngImport: i0, type: YunzaiHeaderNotifyComponent, decorators: [{
161
- type: Component,
162
- args: [{
163
- selector: `yunzai-header-notify`,
164
- template: `
165
- <notice-icon
166
- [data]="data"
167
- [count]="count"
168
- [loading]="loading"
169
- btnClass="yunzai-default__nav-item"
170
- btnIconClass="yunzai-default__nav-item-icon"
171
- (select)="select($event)"
172
- (clear)="clear($event)"
173
- />
174
- `,
175
- standalone: true,
176
- imports: [NoticeIconModule],
177
- changeDetection: ChangeDetectionStrategy.OnPush
178
- }]
179
- }] });
180
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoieXVuemFpLW5vdGlmeS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9iaXMveXVuemFpLXdpZGdldHMveXVuemFpLW5vdGlmeS5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLGlCQUFpQixFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQXFCLE1BQU0sZUFBZSxDQUFDO0FBQ2pILE9BQU8sRUFBRSxRQUFRLEVBQUUsR0FBRyxFQUE0QixNQUFNLE1BQU0sQ0FBQztBQUUvRCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFFL0MsT0FBTyxFQUFFLGdCQUFnQixFQUFnQyxNQUFNLHdCQUF3QixDQUFDO0FBQ3hGLE9BQU8sRUFBRSxXQUFXLEVBQUUsaUJBQWlCLEVBQXlCLE1BQU0sY0FBYyxDQUFDO0FBQ3JGLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFFckMsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQ25ELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHVCQUF1QixDQUFDOzs7QUFtQnpELE1BQU0sT0FBTywyQkFBMkI7SUFqQnhDO1FBa0JtQixTQUFJLEdBQUcsTUFBTSxDQUF3QixpQkFBaUIsQ0FBQyxDQUFDO1FBQ3hELFFBQUcsR0FBRyxNQUFNLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztRQUMvQixXQUFNLEdBQUcsTUFBTSxDQUFDLGFBQWEsQ0FBQyxDQUFDO1FBQy9CLFFBQUcsR0FBRyxNQUFNLENBQUMsaUJBQWlCLENBQUMsQ0FBQztRQUNoQyxTQUFJLEdBQUcsTUFBTSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBQzNCLFFBQUcsR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDdEMsWUFBTyxHQUFHLEtBQUssQ0FBQztRQUNoQixVQUFLLEdBQUcs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QUFJLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDNUIsSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQ2xCLENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsV0FBVyxFQUFFLENBQUMsQ0FBQztJQUMxQyxDQUFDOzhHQW5KVSwyQkFBMkI7a0dBQTNCLDJCQUEyQixnRkFmNUI7Ozs7Ozs7Ozs7R0FVVCwyREFFUyxnQkFBZ0I7OzJGQUdmLDJCQUEyQjtrQkFqQnZDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLHNCQUFzQjtvQkFDaEMsUUFBUSxFQUFFOzs7Ozs7Ozs7O0dBVVQ7b0JBQ0QsVUFBVSxFQUFFLElBQUk7b0JBQ2hCLE9BQU8sRUFBRSxDQUFDLGdCQUFnQixDQUFDO29CQUMzQixlQUFlLEVBQUUsdUJBQXVCLENBQUMsTUFBTTtpQkFDaEQiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ2hhbmdlRGV0ZWN0b3JSZWYsIENvbXBvbmVudCwgaW5qZWN0LCBPbkRlc3Ryb3ksIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgZm9ya0pvaW4sIG1hcCwgT2JzZXJ2YWJsZSwgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XG5cbmltcG9ydCB7IGZvcm1hdERpc3RhbmNlVG9Ob3cgfSBmcm9tICdkYXRlLWZucyc7XG5cbmltcG9ydCB7IE5vdGljZUljb25Nb2R1bGUsIE5vdGljZUljb25TZWxlY3QsIE5vdGljZUl0ZW0gfSBmcm9tICdAeWVsb24vYWJjL25vdGljZS1pY29uJztcbmltcG9ydCB7IF9IdHRwQ2xpZW50LCBZVU5aQUlfSTE4Tl9UT0tFTiwgWXVuemFpSHR0cEkxOE5TZXJ2aWNlIH0gZnJvbSAnQHllbG9uL3RoZW1lJztcbmltcG9ydCB7IFdJTkRPVyB9IGZyb20gJ0B5ZWxvbi91dGlsJztcbmltcG9ydCB7IE56U2FmZUFueSB9IGZyb20gJ25nLXpvcnJvLWFudGQvY29yZS90eXBlcyc7XG5pbXBvcnQgeyBOekkxOG5TZXJ2aWNlIH0gZnJvbSAnbmctem9ycm8tYW50ZC9pMThuJztcbmltcG9ydCB7IE56TWVzc2FnZVNlcnZpY2UgfSBmcm9tICduZy16b3Jyby1hbnRkL21lc3NhZ2UnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6IGB5dW56YWktaGVhZGVyLW5vdGlmeWAsXG4gIHRlbXBsYXRlOiBgXG4gICAgPG5vdGljZS1pY29uXG4gICAgICBbZGF0YV09XCJkYXRhXCJcbiAgICAgIFtjb3VudF09XCJjb3VudFwiXG4gICAgICBbbG9hZGluZ109XCJsb2FkaW5nXCJcbiAgICAgIGJ0bkNsYXNzPVwieXVuemFpLWRlZmF1bHRfX25hdi1pdGVtXCJcbiAgICAgIGJ0bkljb25DbGFzcz1cInl1bnphaS1kZWZhdWx0X19uYXYtaXRlbS1pY29uXCJcbiAgICAgIChzZWxlY3QpPVwic2VsZWN0KCRldmVudClcIlxuICAgICAgKGNsZWFyKT1cImNsZWFyKCRldmVudClcIlxuICAgIC8+XG4gIGAsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtOb3RpY2VJY29uTW9kdWxlXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2hcbn0pXG5leHBvcnQgY2xhc3MgWXVuemFpSGVhZGVyTm90aWZ5Q29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xuICBwcml2YXRlIHJlYWRvbmx5IGkxOG4gPSBpbmplY3Q8WXVuemFpSHR0cEkxOE5TZXJ2aWNlPihZVU5aQUlfSTE4Tl9UT0tFTik7XG4gIHByaXZhdGUgcmVhZG9ubHkgbXNnID0gaW5qZWN0KE56TWVzc2FnZVNlcnZpY2UpO1xuICBwcml2YXRlIHJlYWRvbmx5IG56STE4biA9IGluamVjdChOekkxOG5TZXJ2aWNlKTtcbiAgcHJpdmF0ZSByZWFkb25seSBjZHIgPSBpbmplY3QoQ2hhbmdlRGV0ZWN0b3JSZWYpO1xuICBwcml2YXRlIHJlYWRvbmx5IGh0dHAgPSBpbmplY3QoX0h0dHBDbGllbnQpO1xuICBwcml2YXRlIHJlYWRvbmx5IHdpbiA9IGluamVjdChXSU5ET1cpO1xuICBsb2FkaW5nID0gZmFsc2U7XG4gIGNvdW50ID0gMDtcbiAgc3ViczogU3Vic2NyaXB0aW9uW10gPSBbXTtcbiAgZGF0YTogTm90aWNlSXRlbVtdID0gW1xuICAgIHtcbiAgICAgIGtleTogJ21zZycsXG4gICAgICB0aXRsZTogdGhpcy5pMThuLmZhbnlpKCdub3RpZnkubWVzc2FnZScpLFxuICAgICAgbGlzdDogW10sXG4gICAgICBlbXB0eVRleHQ6IHRoaXMuaTE4bi5mYW55aSgnbm90aWZ5Lm1lc3NhZ2UuZW1wdHknKSxcbiAgICAgIGVtcHR5SW1hZ2U6ICcuL2Fzc2V0cy90bXAvaW1nL21lc3NhZ2Uuc3ZnJyxcbiAgICAgIGNsZWFyVGV4dDogdGhpcy5pMThuLmZhbnlpKCdub3RpZnkubWVzc2FnZS5jbGVhcicpXG4gICAgfSxcbiAgICB7XG4gICAgICBrZXk6ICd0b2RvJyxcbiAgICAgIHRpdGxlOiB0aGlzLmkxOG4uZmFueWkoJ25vdGlmeS50b2RvJyksXG4gICAgICBsaXN0OiBbXSxcbiAgICAgIGVtcHR5VGV4dDogdGhpcy5pMThuLmZhbnlpKCdub3RpZnkudG9kby5lbXB0eScpLFxuICAgICAgZW1wdHlJbWFnZTogJy4vYXNzZXRzL3RtcC9pbWcvdG9kby5zdmcnLFxuICAgICAgY2xlYXJUZXh0OiB0aGlzLmkxOG4uZmFueWkoJ25vdGlmeS50b2RvLmNsZWFyJylcbiAgICB9LFxuICAgIHtcbiAgICAgIGtleTogJ25vdGljZScsXG4gICAgICB0aXRsZTogdGhpcy5pMThuLmZhbnlpKCdub3RpZnkubm90aWNlJyksXG4gICAgICBsaXN0OiBbXSxcbiAgICAgIGVtcHR5VGV4dDogdGhpcy5pMThuLmZhbnlpKCdub3RpZnkubm90aWNlLmVtcHR5JyksXG4gICAgICBlbXB0eUltYWdlOiAnLi9hc3NldHMvdG1wL2ltZy9ub3RpY2Uuc3ZnJyxcbiAgICAgIGNsZWFyVGV4dDogdGhpcy5pMThuLmZhbnlpKCdub3RpZnkubm90aWNlLmNsZWFyJylcbiAgICB9XG4gIF07XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5sb2FkRGF0YSgpO1xuICB9XG5cbiAgbG9hZERhdGEoKTogdm9pZCB7XG4gICAgdGhpcy5jb3VudCA9IDA7XG4gICAgdGhpcy5sb2FkaW5nID0gdHJ1ZTtcbiAgICB0aGlzLnN1YnMucHVzaChcbiAgICAgIC8vIEB0cy1pZ25vcmVcbiAgICAgIGZvcmtKb2luKHRoaXMubG9hZFRvZG8oKSwgdGhpcy5sb2FkTWVzc2FnZSgpKS5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICB0aGlzLmxvYWRpbmcgPSBmYWxzZTtcbiAgICAgICAgdGhpcy5jZHIuZGV0ZWN0Q2hhbmdlcygpO1xuICAgICAgfSlcbiAgICApO1xuICB9XG5cbiAgbG9hZE1lc3NhZ2UoKTogT2JzZXJ2YWJsZTx2b2lkPiB7XG4gICAgY29uc3QgZm9ybWF0TWVzc2FnZVN0YXR1cyA9IChzdGF0dXM6IHN0cmluZyk6IE56U2FmZUFueSA9PiB7XG4gICAgICBzd2l0Y2ggKHN0YXR1cykge1xuICAgICAgICBjYXNlICcwJzpcbiAgICAgICAgICByZXR1cm4geyBleHRyYTogdGhpcy5pMThuLmZhbnlpKCdub3RpZnkudW5yZWFkJyksIGNvbG9yOiAncmVkJyB9O1xuICAgICAgICBjYXNlICcxJzpcbiAgICAgICAgICByZXR1cm4geyBleHRyYTogdGhpcy5pMThuLmZhbnlpKCdub3RpZnkucmVhZGVkJyksIGNvbG9yOiAnZ3JlZW4nIH07XG4gICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgcmV0dXJuIHsgZXh0cmE6IHRoaXMuaTE4bi5mYW55aSgnbm90aWZ5Lm5vc3RhdHVzJyksIGNvbG9yOiAncHJpbWFyeScgfTtcbiAgICAgIH1cbiAgICB9O1xuICAgIHJldHVybiB0aGlzLmh0dHBcbiAgICAgIC5wb3N0KGAvbWVzc2FnZS1jZW50ZXItMy9teS1tc2ctYW5kLXRvZG8vbXNnLWxpc3RgLCB7XG4gICAgICAgIHBhZ2VOdW06IDEsXG4gICAgICAgIHBhZ2VTaXplOiAxMCxcbiAgICAgICAgc3RhdHVzOiAnMCdcbiAgICAgIH0pXG4gICAgICAucGlwZShcbiAgICAgICAgbWFwKChyZXNwb25zZTogTnpTYWZlQW55KSA9PiB7XG4gICAgICAgICAgY29uc3Qgdmlld01lc3NhZ2UgPSB0aGlzLmRhdGEuZmlsdGVyKGQgPT4gZC5rZXkgPT09ICdtc2cnKVswXTtcbiAgICAgICAgICB2aWV3TWVzc2FnZS5saXN0ID0gcmVzcG9uc2UuZGF0YS5saXN0Lm1hcCgobTogTnpTYWZlQW55KSA9PiB7XG4gICAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgICAuLi5tLFxuICAgICAgICAgICAgICBhdmF0YXI6IG0/LmltZ1VybCB8fCAnLi9hc3NldHMvdG1wL2ltZy9tZXNzYWdlLnBuZycsXG4gICAgICAgICAgICAgIHRpdGxlOiBtLnN5c3RlbU5hbWUsXG4gICAgICAgICAgICAgIGRlc2NyaXB0aW9uOiBtLmNvbnRlbnQsXG4gICAgICAgICAgICAgIGV4dHJhOiBmb3JtYXRNZXNzYWdlU3RhdHVzKG0uc3RhdHVzKS5leHRyYSxcbiAgICAgICAgICAgICAgY29sb3I6IGZvcm1hdE1lc3NhZ2VTdGF0dXMobS5zdGF0dXMpLmNvbG9yLFxuICAgICAgICAgICAgICBkYXRldGltZTogZm9ybWF0RGlzdGFuY2VUb05vdyhuZXcgRGF0ZShtLmRhdGUpLCB7IGxvY2FsZTogdGhpcy5uekkxOG4uZ2V0RGF0ZUxvY2FsZSgpIH0pXG4gICAgICAgICAgICB9O1xuICAgICAgICAgIH0pO1xuICAgICAgICAgIHRoaXMuY291bnQgKz0gdmlld01lc3NhZ2UubGlzdC5sZW5ndGg7XG4gICAgICAgIH0pXG4gICAgICApO1xuICB9XG5cbiAgbG9hZFRvZG8oKTogT2JzZXJ2YWJsZTx2b2lkPiB7XG4gICAgY29uc3QgZm9ybWF0VG9kb1N0YXR1cyA9IChzdGF0dXM6IHN0cmluZyk6IE56U2FmZUFueSA9PiB7XG4gICAgICBzd2l0Y2ggKHN0YXR1cykge1xuICAgICAgICBjYXNlICcwJzpcbiAgICAgICAgICByZXR1cm4geyBleHRyYTogdGhpcy5pMThuLmZhbnlpKCdub3RpZnkudW5zdGFydCcpLCBjb2xvcjogJ3JlZCcgfTtcbiAgICAgICAgY2FzZSAnMSc6XG4gICAgICAgICAgcmV0dXJuIHsgZXh0cmE6IHRoaXMuaTE4bi5mYW55aSgnbm90aWZ5LnN0YXJ0ZWQnKSwgY29sb3I6ICdncmVlbicgfTtcbiAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICByZXR1cm4geyBleHRyYTogdGhpcy5pMThuLmZhbnlpKCdub3RpZnkubm9zdGF0dXMnKSwgY29sb3I6ICdwcmltYXJ5JyB9O1xuICAgICAgfVxuICAgIH07XG4gICAgcmV0dXJuIHRoaXMuaHR0cFxuICAgICAgLnBvc3QoYC9tZXNzYWdlLWNlbnRlci0zL215LW1zZy1hbmQtdG9kby90b2RvLWxpc3RgLCB7XG4gICAgICAgIHBhZ2VOdW06IDEsXG4gICAgICAgIHBhZ2VTaXplOiAxMCxcbiAgICAgICAgc3RhdHVzOiAnMCdcbiAgICAgIH0pXG4gICAgICAucGlwZShcbiAgICAgICAgbWFwKChyZXNwb25zZTogTnpTYWZlQW55KSA9PiB7XG4gICAgICAgICAgY29uc3Qgdmlld1RvZG8gPSB0aGlzLmRhdGEuZmlsdGVyKGQgPT4gZC5rZXkgPT09ICd0b2RvJylbMF07XG4gICAgICAgICAgdmlld1RvZG8ubGlzdCA9IHJlc3BvbnNlLmRhdGEubGlzdC5tYXAoKHQ6IE56U2FmZUFueSkgPT4ge1xuICAgICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgICAgLi4udCxcbiAgICAgICAgICAgICAgYXZhdGFyOiB0Py5pbWdVcmwgfHwgJy4vYXNzZXRzL3RtcC9pbWcvdG9kby5wbmcnLFxuICAgICAgICAgICAgICB0aXRsZTogdC5zeXN0ZW1OYW1lLFxuICAgICAgICAgICAgICBkZXNjcmlwdGlvbjogdC5jb250ZW50LFxuICAgICAgICAgICAgICBkYXRldGltZTogZm9ybWF0RGlzdGFuY2VUb05vdyhuZXcgRGF0ZSh0LmRhdGUpLCB7IGxvY2FsZTogdGhpcy5uekkxOG4uZ2V0RGF0ZUxvY2FsZSgpIH0pLFxuICAgICAgICAgICAgICBleHRyYTogZm9ybWF0VG9kb1N0YXR1cyh0LnN0YXR1cykuZXh0cmEsXG4gICAgICAgICAgICAgIGNvbG9yOiBmb3JtYXRUb2RvU3RhdHVzKHQuc3RhdHVzKS5jb2xvclxuICAgICAgICAgICAgfTtcbiAgICAgICAgICB9KTtcbiAgICAgICAgICB0aGlzLmNvdW50ICs9IHZpZXdUb2RvLmxpc3QubGVuZ3RoO1xuICAgICAgICB9KVxuICAgICAgKTtcbiAgfVxuXG4gIGNsZWFyKHR5cGU6IHN0cmluZyk6IHZvaWQge1xuICAgIGNvbnN0IHQgPSB0aGlzLmRhdGEuZmlsdGVyKGQgPT4gZC50aXRsZSA9PT0gdHlwZSlbMF07XG4gICAgaWYgKHQua2V5ID09ICdtc2cnIHx8IHQua2V5ID09ICdub3RpY2UnKSB7XG4gICAgICB0aGlzLnN1YnMucHVzaChcbiAgICAgICAgdGhpcy5odHRwLnBvc3QoYC9tZXNzYWdlLWNlbnRlci0zL215LW1zZy1hbmQtdG9kby9tc2ctY2xlYXJgLCB7fSkuc3Vic2NyaWJlKF8gPT4ge1xuICAgICAgICAgIHRoaXMubXNnLnN1Y2Nlc3MoYCR7dGhpcy5pMThuLmZhbnlpKCdub3RpZnkuY2xlYXInKX0gJHt0eXBlfWApO1xuICAgICAgICAgIHRoaXMubG9hZERhdGEoKTtcbiAgICAgICAgfSlcbiAgICAgICk7XG4gICAgfVxuICAgIGlmICh0LmtleSA9PSAndG9kbycpIHtcbiAgICAgIHRoaXMubG9hZERhdGEoKTtcbiAgICB9XG4gIH1cblxuICBzZWxlY3QocmVzOiBOb3RpY2VJY29uU2VsZWN0KTogdm9pZCB7XG4gICAgdGhpcy53aW4ub3BlbihyZXMuaXRlbS51cmwpO1xuICAgIHRoaXMubG9hZERhdGEoKTtcbiAgfVxuXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMuc3Vicy5mb3JFYWNoKGEgPT4gYS51bnN1YnNjcmliZSgpKTtcbiAgfVxufVxuIl19