@rolatech/angular-account 17.2.0 → 17.2.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (60) hide show
  1. package/esm2022/lib/components/avatar-update-dialog/avatar-update-dialog.component.mjs +3 -3
  2. package/esm2022/lib/components/forgot-password/forgot-password.component.mjs +3 -3
  3. package/esm2022/lib/components/index.mjs +2 -1
  4. package/esm2022/lib/components/login/login-wechat/login-wechat.component.mjs +3 -3
  5. package/esm2022/lib/components/logout/logout.component.mjs +3 -3
  6. package/esm2022/lib/components/passwordreset/passwordreset.component.mjs +3 -3
  7. package/esm2022/lib/components/topbar-login/topbar-login.component.mjs +3 -3
  8. package/esm2022/lib/components/user-item/user-item.component.mjs +28 -0
  9. package/esm2022/lib/pages/accounts/signin/signin.component.mjs +37 -38
  10. package/esm2022/lib/pages/accounts/signup/signup.component.mjs +3 -3
  11. package/esm2022/lib/pages/myaccount/email/email.component.mjs +3 -3
  12. package/esm2022/lib/pages/myaccount/email-verification/email-verification.component.mjs +3 -3
  13. package/esm2022/lib/pages/myaccount/gender/gender.component.mjs +3 -3
  14. package/esm2022/lib/pages/myaccount/home/home.component.mjs +60 -9
  15. package/esm2022/lib/pages/myaccount/personal-info/info.component.mjs +6 -6
  16. package/esm2022/lib/pages/myaccount/personal-info/profile/profile.component.mjs +3 -3
  17. package/esm2022/lib/pages/myaccount/personal-info/username/username.component.mjs +3 -3
  18. package/esm2022/lib/pages/myaccount/phone/phone.component.mjs +3 -3
  19. package/esm2022/lib/pages/myaccount/security/security-faceid/security-faceid.component.mjs +3 -3
  20. package/esm2022/lib/pages/myaccount/security/security-index/security-index.component.mjs +3 -3
  21. package/esm2022/lib/pages/myaccount/security/security-password/security-password.component.mjs +3 -3
  22. package/esm2022/lib/pages/myaccount/security/security-verification/security-verification.component.mjs +12 -14
  23. package/esm2022/lib/services/wechat-login.service.mjs +3 -3
  24. package/fesm2022/{rolatech-angular-account-email-verification.component-Yr6sqNmw.mjs → rolatech-angular-account-email-verification.component-D9e--XMc.mjs} +4 -4
  25. package/fesm2022/{rolatech-angular-account-email-verification.component-Yr6sqNmw.mjs.map → rolatech-angular-account-email-verification.component-D9e--XMc.mjs.map} +1 -1
  26. package/fesm2022/{rolatech-angular-account-email.component-BJHAz8uK.mjs → rolatech-angular-account-email.component-DC8qYVOJ.mjs} +4 -4
  27. package/fesm2022/{rolatech-angular-account-email.component-BJHAz8uK.mjs.map → rolatech-angular-account-email.component-DC8qYVOJ.mjs.map} +1 -1
  28. package/fesm2022/{rolatech-angular-account-gender.component-CS2hSvax.mjs → rolatech-angular-account-gender.component-DWdWJiQW.mjs} +4 -4
  29. package/fesm2022/{rolatech-angular-account-gender.component-CS2hSvax.mjs.map → rolatech-angular-account-gender.component-DWdWJiQW.mjs.map} +1 -1
  30. package/fesm2022/rolatech-angular-account-home.component-C1Qm2HeL.mjs +83 -0
  31. package/fesm2022/rolatech-angular-account-home.component-C1Qm2HeL.mjs.map +1 -0
  32. package/fesm2022/rolatech-angular-account-info.component-DNi4eTxV.mjs +105 -0
  33. package/fesm2022/rolatech-angular-account-info.component-DNi4eTxV.mjs.map +1 -0
  34. package/fesm2022/{rolatech-angular-account-login.routes-DvmIiOwo.mjs → rolatech-angular-account-login.routes-dJ6K7YSD.mjs} +5 -6
  35. package/fesm2022/{rolatech-angular-account-login.routes-DvmIiOwo.mjs.map → rolatech-angular-account-login.routes-dJ6K7YSD.mjs.map} +1 -1
  36. package/fesm2022/{rolatech-angular-account-phone.component-DaSRdJam.mjs → rolatech-angular-account-phone.component-r9dWPfEL.mjs} +4 -4
  37. package/fesm2022/{rolatech-angular-account-phone.component-DaSRdJam.mjs.map → rolatech-angular-account-phone.component-r9dWPfEL.mjs.map} +1 -1
  38. package/fesm2022/{rolatech-angular-account-profile.component-B_bSqz0X.mjs → rolatech-angular-account-profile.component-CJfmQ3Ba.mjs} +4 -4
  39. package/fesm2022/{rolatech-angular-account-profile.component-B_bSqz0X.mjs.map → rolatech-angular-account-profile.component-CJfmQ3Ba.mjs.map} +1 -1
  40. package/fesm2022/{rolatech-angular-account-rolatech-angular-account-D5W_Ag2w.mjs → rolatech-angular-account-rolatech-angular-account-juLtk_PW.mjs} +92 -68
  41. package/fesm2022/rolatech-angular-account-rolatech-angular-account-juLtk_PW.mjs.map +1 -0
  42. package/fesm2022/{rolatech-angular-account-security.routes-B9DWZw7I.mjs → rolatech-angular-account-security.routes-Dag8RZ38.mjs} +18 -20
  43. package/fesm2022/rolatech-angular-account-security.routes-Dag8RZ38.mjs.map +1 -0
  44. package/fesm2022/{rolatech-angular-account-username.component-BDW_ZpOU.mjs → rolatech-angular-account-username.component-BL2F5fnx.mjs} +4 -4
  45. package/fesm2022/{rolatech-angular-account-username.component-BDW_ZpOU.mjs.map → rolatech-angular-account-username.component-BL2F5fnx.mjs.map} +1 -1
  46. package/fesm2022/rolatech-angular-account.mjs +1 -2
  47. package/fesm2022/rolatech-angular-account.mjs.map +1 -1
  48. package/lib/components/index.d.ts +1 -0
  49. package/lib/components/user-item/user-item.component.d.ts +12 -0
  50. package/lib/pages/accounts/signin/signin.component.d.ts +3 -4
  51. package/lib/pages/myaccount/home/home.component.d.ts +9 -0
  52. package/lib/pages/myaccount/security/security-verification/security-verification.component.d.ts +1 -1
  53. package/package.json +1 -1
  54. package/themes/_default.scss +1 -1
  55. package/fesm2022/rolatech-angular-account-home.component-Cc26-TjO.mjs +0 -25
  56. package/fesm2022/rolatech-angular-account-home.component-Cc26-TjO.mjs.map +0 -1
  57. package/fesm2022/rolatech-angular-account-info.component-Bk-DhHtK.mjs +0 -105
  58. package/fesm2022/rolatech-angular-account-info.component-Bk-DhHtK.mjs.map +0 -1
  59. package/fesm2022/rolatech-angular-account-rolatech-angular-account-D5W_Ag2w.mjs.map +0 -1
  60. package/fesm2022/rolatech-angular-account-security.routes-B9DWZw7I.mjs.map +0 -1
@@ -16,10 +16,10 @@ export class EmailVerificationComponent extends BaseComponent {
16
16
  this.dialogService.open(options);
17
17
  this.dialogService.confirmed().subscribe((confirmed) => { });
18
18
  }
19
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: EmailVerificationComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
20
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.0", type: EmailVerificationComponent, isStandalone: true, selector: "myaccount-email-verification", usesInheritance: true, ngImport: i0, template: "<div class=\"p-3\">Email verification</div>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: AngularCommonModule }, { kind: "ngmodule", type: AngularComponentsModule }] }); }
19
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: EmailVerificationComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
20
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.3", type: EmailVerificationComponent, isStandalone: true, selector: "myaccount-email-verification", usesInheritance: true, ngImport: i0, template: "<div class=\"p-3\">Email verification</div>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: AngularCommonModule }, { kind: "ngmodule", type: AngularComponentsModule }] }); }
21
21
  }
22
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: EmailVerificationComponent, decorators: [{
22
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: EmailVerificationComponent, decorators: [{
23
23
  type: Component,
24
24
  args: [{ standalone: true, imports: [AngularCommonModule, AngularComponentsModule], selector: 'myaccount-email-verification', template: "<div class=\"p-3\">Email verification</div>\n" }]
25
25
  }] });
@@ -36,10 +36,10 @@ export class GenderComponent extends BaseComponent {
36
36
  },
37
37
  });
38
38
  }
39
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: GenderComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
40
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.0", type: GenderComponent, isStandalone: true, selector: "rolatech-account-gender", usesInheritance: true, ngImport: i0, template: "<div>\n <div class=\"px-3 max-w-[1120px] m-auto\">\n <div class=\"flex items-center\">\n <div class=\"flex items-center justify-center w-11 h-11 cursor-pointer\" rolatechBackButton>\n <mat-icon>arrow_back</mat-icon>\n </div>\n <span class=\"text-xl font-medium\">\u8BBE\u7F6E\u6027\u522B</span>\n </div>\n </div>\n <div class=\"px-4\">\n <mat-divider></mat-divider>\n </div>\n <div class=\"max-w-[1120px] m-auto p-4\">\n <label class=\"px-2\">\u6027\u522B\u9009\u62E9</label>\n <mat-radio-group class=\"flex flex-col\" color=\"primary\" [(ngModel)]=\"selectedGender\">\n @for (gender of genders; track gender) {\n <mat-radio-button [value]=\"gender\">{{ gender }}</mat-radio-button>\n }\n </mat-radio-group>\n <div class=\"flex justify-end items-center mt-3\">\n <button mat-button rolatechBackButton>\u53D6\u6D88</button>\n <button\n class=\"bg-orange-600 shadow shadow-gray-300 cursor-pointer w-20 p-2 text-white rounded text-center ml-3\"\n (click)=\"save()\"\n >\n \u4FDD\u5B58\n </button>\n </div>\n </div>\n</div>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: AngularCommonModule }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: AngularComponentsModule }, { kind: "component", type: i2.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "component", type: i3.MatDivider, selector: "mat-divider", inputs: ["vertical", "inset"] }, { kind: "component", type: i4.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: i5.MatRadioGroup, selector: "mat-radio-group", inputs: ["color", "name", "labelPosition", "value", "selected", "disabled", "required"], outputs: ["change"], exportAs: ["matRadioGroup"] }, { kind: "component", type: i5.MatRadioButton, selector: "mat-radio-button", inputs: ["id", "name", "aria-label", "aria-labelledby", "aria-describedby", "disableRipple", "tabIndex", "checked", "value", "labelPosition", "disabled", "required", "color"], outputs: ["change"], exportAs: ["matRadioButton"] }, { kind: "ngmodule", type: MatRadioModule }, { kind: "directive", type: BackButtonDirective, selector: "[rolatechBackButton]" }] }); }
39
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: GenderComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
40
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.3", type: GenderComponent, isStandalone: true, selector: "rolatech-account-gender", usesInheritance: true, ngImport: i0, template: "<div>\n <div class=\"px-3 max-w-[1120px] m-auto\">\n <div class=\"flex items-center\">\n <div class=\"flex items-center justify-center w-11 h-11 cursor-pointer\" rolatechBackButton>\n <mat-icon>arrow_back</mat-icon>\n </div>\n <span class=\"text-xl font-medium\">\u8BBE\u7F6E\u6027\u522B</span>\n </div>\n </div>\n <div class=\"px-4\">\n <mat-divider></mat-divider>\n </div>\n <div class=\"max-w-[1120px] m-auto p-4\">\n <label class=\"px-2\">\u6027\u522B\u9009\u62E9</label>\n <mat-radio-group class=\"flex flex-col\" color=\"primary\" [(ngModel)]=\"selectedGender\">\n @for (gender of genders; track gender) {\n <mat-radio-button [value]=\"gender\">{{ gender }}</mat-radio-button>\n }\n </mat-radio-group>\n <div class=\"flex justify-end items-center mt-3\">\n <button mat-button rolatechBackButton>\u53D6\u6D88</button>\n <button\n class=\"bg-orange-600 shadow shadow-gray-300 cursor-pointer w-20 p-2 text-white rounded text-center ml-3\"\n (click)=\"save()\"\n >\n \u4FDD\u5B58\n </button>\n </div>\n </div>\n</div>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: AngularCommonModule }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: AngularComponentsModule }, { kind: "component", type: i2.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "component", type: i3.MatDivider, selector: "mat-divider", inputs: ["vertical", "inset"] }, { kind: "component", type: i4.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: i5.MatRadioGroup, selector: "mat-radio-group", inputs: ["color", "name", "labelPosition", "value", "selected", "disabled", "required"], outputs: ["change"], exportAs: ["matRadioGroup"] }, { kind: "component", type: i5.MatRadioButton, selector: "mat-radio-button", inputs: ["id", "name", "aria-label", "aria-labelledby", "aria-describedby", "disableRipple", "tabIndex", "checked", "value", "labelPosition", "disabled", "required", "color"], outputs: ["change"], exportAs: ["matRadioButton"] }, { kind: "ngmodule", type: MatRadioModule }, { kind: "directive", type: BackButtonDirective, selector: "[rolatechBackButton]" }] }); }
41
41
  }
42
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: GenderComponent, decorators: [{
42
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: GenderComponent, decorators: [{
43
43
  type: Component,
44
44
  args: [{ standalone: true, imports: [AngularCommonModule, AngularComponentsModule, MatRadioModule, BackButtonDirective], selector: 'rolatech-account-gender', template: "<div>\n <div class=\"px-3 max-w-[1120px] m-auto\">\n <div class=\"flex items-center\">\n <div class=\"flex items-center justify-center w-11 h-11 cursor-pointer\" rolatechBackButton>\n <mat-icon>arrow_back</mat-icon>\n </div>\n <span class=\"text-xl font-medium\">\u8BBE\u7F6E\u6027\u522B</span>\n </div>\n </div>\n <div class=\"px-4\">\n <mat-divider></mat-divider>\n </div>\n <div class=\"max-w-[1120px] m-auto p-4\">\n <label class=\"px-2\">\u6027\u522B\u9009\u62E9</label>\n <mat-radio-group class=\"flex flex-col\" color=\"primary\" [(ngModel)]=\"selectedGender\">\n @for (gender of genders; track gender) {\n <mat-radio-button [value]=\"gender\">{{ gender }}</mat-radio-button>\n }\n </mat-radio-group>\n <div class=\"flex justify-end items-center mt-3\">\n <button mat-button rolatechBackButton>\u53D6\u6D88</button>\n <button\n class=\"bg-orange-600 shadow shadow-gray-300 cursor-pointer w-20 p-2 text-white rounded text-center ml-3\"\n (click)=\"save()\"\n >\n \u4FDD\u5B58\n </button>\n </div>\n </div>\n</div>\n" }]
45
45
  }] });
@@ -1,22 +1,73 @@
1
- import { Component, inject } from '@angular/core';
1
+ import { Component, effect, inject, signal } from '@angular/core';
2
2
  import { AuthUserService } from '@rolatech/angular-auth';
3
- import { AngularComponentsModule, BaseComponent, LoadingSpinnerComponent } from '@rolatech/angular-components';
3
+ import { AngularComponentsModule, BaseComponent, SpinnerComponent, TabComponent, TabsComponent, } from '@rolatech/angular-components';
4
4
  import { AngularCommonModule } from '@rolatech/angular-common';
5
+ import { UserItemComponent } from '../../../components';
6
+ import { map } from 'lodash';
5
7
  import * as i0 from "@angular/core";
6
8
  import * as i1 from "@angular/common";
7
9
  export class HomeComponent extends BaseComponent {
8
10
  constructor() {
9
- super(...arguments);
11
+ super();
10
12
  this.authUserService = inject(AuthUserService);
13
+ this.users = [];
14
+ this.isFollowing = true;
15
+ this.selectIndex = signal(0);
16
+ effect(() => {
17
+ const index = this.selectIndex();
18
+ if (index === 0) {
19
+ this.listFollowingByUsername();
20
+ }
21
+ if (index === 1) {
22
+ this.listFollowersByUsername();
23
+ }
24
+ if (index === 2) {
25
+ }
26
+ });
11
27
  }
12
28
  ngOnInit() {
13
29
  this.user$ = this.authUserService.me();
14
30
  }
15
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: HomeComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
16
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.0", type: HomeComponent, isStandalone: true, selector: "rolatech-account-home", usesInheritance: true, ngImport: i0, template: "@if (user$ | async; as user) {\n <div class=\"max-w-[1120px] m-auto\">\n <div class=\"max-w-[820px] m-3\">\n <!-- <rolatech-loading-spinner></rolatech-loading-spinner> -->\n <div class=\"flex flex-col justify-center items-center p-3 mb-12\">\n <div class=\"p-3 mb-3\">\n <div class=\"w-20 h-20 rounded-full bg-orange-600\">\n @if (user.avatar) {\n <img class=\"w-20 h-20 rounded-full object-cover\" [src]=\"user.avatar\" />\n }\n </div>\n </div>\n <p class=\"text-3xl\">\u6B22\u8FCE\u56DE\u6765, {{ user.name }}</p>\n <p class=\"text-md\">\u7528\u6237\u4E2D\u5FC3, \u65B9\u4FBF\u60A8\u7EF4\u62A4\u4E2A\u4EBA\u4FE1\u606F, \u8FD9\u4F1A\u6709\u4E00\u4E2A\u5F88\u597D\u7684\u4F53\u9A8C</p>\n </div>\n </div>\n </div>\n}\n", styles: [""], dependencies: [{ kind: "ngmodule", type: AngularCommonModule }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "ngmodule", type: AngularComponentsModule }] }); }
31
+ follow() {
32
+ this.authUserService.follow('pinxiaoke').subscribe({
33
+ next: (res) => {
34
+ console.log(res);
35
+ },
36
+ });
37
+ }
38
+ unfollow() {
39
+ this.authUserService.unfollow('rokistar').subscribe({
40
+ next: (res) => {
41
+ console.log(res);
42
+ },
43
+ });
44
+ }
45
+ listFollowingByUsername() {
46
+ this.authUserService.listFollowingByUsername('rokistar').subscribe({
47
+ next: (res) => {
48
+ this.users = map(res.data, 'user');
49
+ this.isFollowing = true;
50
+ console.log(this.users);
51
+ },
52
+ });
53
+ }
54
+ listFollowersByUsername() {
55
+ this.authUserService.listFollowersByUsername('rokistar').subscribe({
56
+ next: (res) => {
57
+ this.users = map(res.data, 'follower');
58
+ this.isFollowing = false;
59
+ console.log(res);
60
+ },
61
+ });
62
+ }
63
+ onClick(event) {
64
+ console.log(event);
65
+ }
66
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: HomeComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
67
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.3", type: HomeComponent, isStandalone: true, selector: "rolatech-account-home", usesInheritance: true, ngImport: i0, template: "@if (user$ | async; as user) {\n <div class=\"max-w-[1120px] m-auto\">\n <div class=\"max-w-[820px] m-3\">\n <!-- <rolatech-spinner></rolatech-spinner> -->\n <div class=\"flex flex-col justify-center items-center p-3 mb-12\">\n <div class=\"p-3 mb-3\">\n <div class=\"w-20 h-20 rounded-full bg-orange-600\">\n @if (user.avatar) {\n <img class=\"w-20 h-20 rounded-full object-cover\" [src]=\"user.avatar\" />\n }\n </div>\n </div>\n <p class=\"text-3xl\">\u6B22\u8FCE\u56DE\u6765, {{ user.name }}</p>\n <p class=\"text-md\">\u7528\u6237\u4E2D\u5FC3, \u65B9\u4FBF\u60A8\u7EF4\u62A4\u4E2A\u4EBA\u4FE1\u606F, \u8FD9\u4F1A\u6709\u4E00\u4E2A\u5F88\u597D\u7684\u4F53\u9A8C</p>\n <button (click)=\"follow()\">Follow</button>\n <button (click)=\"unfollow()\">UnFollow</button>\n <button (click)=\"listFollowingByUsername()\">listFollowingByUsername</button>\n <button (click)=\"listFollowersByUsername()\">List Followers</button>\n </div>\n </div>\n </div>\n}\n<rolatech-tabs [(select)]=\"selectIndex\">\n <rolatech-tab label=\"\u5173\u6CE8\"></rolatech-tab>\n <rolatech-tab label=\"\u7C89\u4E1D\"></rolatech-tab>\n</rolatech-tabs>\n@for (item of users; track $index) {\n <rolatech-account-user-item [user]=\"item\" [isFollowing]=\"isFollowing\" (click)=\"onClick($event)\"></rolatech-account-user-item>\n}\n<!-- @for (number of [0, 1, 2, 3, 4, 5]; track number) {\n <rolatech-account-user-item></rolatech-account-user-item>\n} -->\n", styles: [""], dependencies: [{ kind: "ngmodule", type: AngularCommonModule }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "ngmodule", type: AngularComponentsModule }, { kind: "component", type: UserItemComponent, selector: "rolatech-account-user-item", inputs: ["user", "isFollowing"], outputs: ["follow", "unfollow"] }, { kind: "component", type: TabsComponent, selector: "rolatech-tabs", inputs: ["select"], outputs: ["selectChange"] }, { kind: "component", type: TabComponent, selector: "rolatech-tab", inputs: ["label"] }] }); }
17
68
  }
18
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: HomeComponent, decorators: [{
69
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: HomeComponent, decorators: [{
19
70
  type: Component,
20
- args: [{ standalone: true, imports: [AngularCommonModule, AngularComponentsModule, LoadingSpinnerComponent], selector: 'rolatech-account-home', template: "@if (user$ | async; as user) {\n <div class=\"max-w-[1120px] m-auto\">\n <div class=\"max-w-[820px] m-3\">\n <!-- <rolatech-loading-spinner></rolatech-loading-spinner> -->\n <div class=\"flex flex-col justify-center items-center p-3 mb-12\">\n <div class=\"p-3 mb-3\">\n <div class=\"w-20 h-20 rounded-full bg-orange-600\">\n @if (user.avatar) {\n <img class=\"w-20 h-20 rounded-full object-cover\" [src]=\"user.avatar\" />\n }\n </div>\n </div>\n <p class=\"text-3xl\">\u6B22\u8FCE\u56DE\u6765, {{ user.name }}</p>\n <p class=\"text-md\">\u7528\u6237\u4E2D\u5FC3, \u65B9\u4FBF\u60A8\u7EF4\u62A4\u4E2A\u4EBA\u4FE1\u606F, \u8FD9\u4F1A\u6709\u4E00\u4E2A\u5F88\u597D\u7684\u4F53\u9A8C</p>\n </div>\n </div>\n </div>\n}\n" }]
21
- }] });
22
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaG9tZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXItYWNjb3VudC9zcmMvbGliL3BhZ2VzL215YWNjb3VudC9ob21lL2hvbWUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hbmd1bGFyLWFjY291bnQvc3JjL2xpYi9wYWdlcy9teWFjY291bnQvaG9tZS9ob21lLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFVLE1BQU0sZUFBZSxDQUFDO0FBQzFELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUN6RCxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsYUFBYSxFQUFFLHVCQUF1QixFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDL0csT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7OztBQVMvRCxNQUFNLE9BQU8sYUFBYyxTQUFRLGFBQWE7SUFQaEQ7O1FBU0Usb0JBQWUsR0FBRyxNQUFNLENBQUMsZUFBZSxDQUFDLENBQUM7S0FLM0M7SUFIQyxRQUFRO1FBQ04sSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMsZUFBZSxDQUFDLEVBQUUsRUFBRSxDQUFDO0lBQ3pDLENBQUM7OEdBTlUsYUFBYTtrR0FBYixhQUFhLHdHQ2IxQix1ekJBa0JBLHlERFZZLG1CQUFtQixtRkFBRSx1QkFBdUI7OzJGQUszQyxhQUFhO2tCQVB6QixTQUFTO2lDQUNJLElBQUksV0FDUCxDQUFDLG1CQUFtQixFQUFFLHVCQUF1QixFQUFFLHVCQUF1QixDQUFDLFlBQ3RFLHVCQUF1QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IENvbXBvbmVudCwgaW5qZWN0LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEF1dGhVc2VyU2VydmljZSB9IGZyb20gJ0Byb2xhdGVjaC9hbmd1bGFyLWF1dGgnO1xuaW1wb3J0IHsgQW5ndWxhckNvbXBvbmVudHNNb2R1bGUsIEJhc2VDb21wb25lbnQsIExvYWRpbmdTcGlubmVyQ29tcG9uZW50IH0gZnJvbSAnQHJvbGF0ZWNoL2FuZ3VsYXItY29tcG9uZW50cyc7XG5pbXBvcnQgeyBBbmd1bGFyQ29tbW9uTW9kdWxlIH0gZnJvbSAnQHJvbGF0ZWNoL2FuZ3VsYXItY29tbW9uJztcblxuQENvbXBvbmVudCh7XG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtBbmd1bGFyQ29tbW9uTW9kdWxlLCBBbmd1bGFyQ29tcG9uZW50c01vZHVsZSwgTG9hZGluZ1NwaW5uZXJDb21wb25lbnRdLFxuICBzZWxlY3RvcjogJ3JvbGF0ZWNoLWFjY291bnQtaG9tZScsXG4gIHRlbXBsYXRlVXJsOiAnLi9ob21lLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vaG9tZS5jb21wb25lbnQuc2NzcyddLFxufSlcbmV4cG9ydCBjbGFzcyBIb21lQ29tcG9uZW50IGV4dGVuZHMgQmFzZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIHVzZXIkITogT2JzZXJ2YWJsZTxhbnk+O1xuICBhdXRoVXNlclNlcnZpY2UgPSBpbmplY3QoQXV0aFVzZXJTZXJ2aWNlKTtcblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLnVzZXIkID0gdGhpcy5hdXRoVXNlclNlcnZpY2UubWUoKTtcbiAgfVxufVxuIiwiQGlmICh1c2VyJCB8IGFzeW5jOyBhcyB1c2VyKSB7XG4gIDxkaXYgY2xhc3M9XCJtYXgtdy1bMTEyMHB4XSBtLWF1dG9cIj5cbiAgICA8ZGl2IGNsYXNzPVwibWF4LXctWzgyMHB4XSBtLTNcIj5cbiAgICAgIDwhLS0gPHJvbGF0ZWNoLWxvYWRpbmctc3Bpbm5lcj48L3JvbGF0ZWNoLWxvYWRpbmctc3Bpbm5lcj4gLS0+XG4gICAgICA8ZGl2IGNsYXNzPVwiZmxleCBmbGV4LWNvbCBqdXN0aWZ5LWNlbnRlciBpdGVtcy1jZW50ZXIgcC0zIG1iLTEyXCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJwLTMgbWItM1wiPlxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJ3LTIwIGgtMjAgcm91bmRlZC1mdWxsIGJnLW9yYW5nZS02MDBcIj5cbiAgICAgICAgICAgIEBpZiAodXNlci5hdmF0YXIpIHtcbiAgICAgICAgICAgICAgPGltZyBjbGFzcz1cInctMjAgaC0yMCByb3VuZGVkLWZ1bGwgb2JqZWN0LWNvdmVyXCIgW3NyY109XCJ1c2VyLmF2YXRhclwiIC8+XG4gICAgICAgICAgICB9XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8cCBjbGFzcz1cInRleHQtM3hsXCI+5qyi6L+O5Zue5p2lLCB7eyB1c2VyLm5hbWUgfX08L3A+XG4gICAgICAgIDxwIGNsYXNzPVwidGV4dC1tZFwiPueUqOaIt+S4reW/gywg5pa55L6/5oKo57u05oqk5Liq5Lq65L+h5oGvLCDov5nkvJrmnInkuIDkuKrlvojlpb3nmoTkvZPpqow8L3A+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG59XG4iXX0=
71
+ args: [{ standalone: true, imports: [AngularCommonModule, AngularComponentsModule, SpinnerComponent, UserItemComponent, TabsComponent, TabComponent], selector: 'rolatech-account-home', template: "@if (user$ | async; as user) {\n <div class=\"max-w-[1120px] m-auto\">\n <div class=\"max-w-[820px] m-3\">\n <!-- <rolatech-spinner></rolatech-spinner> -->\n <div class=\"flex flex-col justify-center items-center p-3 mb-12\">\n <div class=\"p-3 mb-3\">\n <div class=\"w-20 h-20 rounded-full bg-orange-600\">\n @if (user.avatar) {\n <img class=\"w-20 h-20 rounded-full object-cover\" [src]=\"user.avatar\" />\n }\n </div>\n </div>\n <p class=\"text-3xl\">\u6B22\u8FCE\u56DE\u6765, {{ user.name }}</p>\n <p class=\"text-md\">\u7528\u6237\u4E2D\u5FC3, \u65B9\u4FBF\u60A8\u7EF4\u62A4\u4E2A\u4EBA\u4FE1\u606F, \u8FD9\u4F1A\u6709\u4E00\u4E2A\u5F88\u597D\u7684\u4F53\u9A8C</p>\n <button (click)=\"follow()\">Follow</button>\n <button (click)=\"unfollow()\">UnFollow</button>\n <button (click)=\"listFollowingByUsername()\">listFollowingByUsername</button>\n <button (click)=\"listFollowersByUsername()\">List Followers</button>\n </div>\n </div>\n </div>\n}\n<rolatech-tabs [(select)]=\"selectIndex\">\n <rolatech-tab label=\"\u5173\u6CE8\"></rolatech-tab>\n <rolatech-tab label=\"\u7C89\u4E1D\"></rolatech-tab>\n</rolatech-tabs>\n@for (item of users; track $index) {\n <rolatech-account-user-item [user]=\"item\" [isFollowing]=\"isFollowing\" (click)=\"onClick($event)\"></rolatech-account-user-item>\n}\n<!-- @for (number of [0, 1, 2, 3, 4, 5]; track number) {\n <rolatech-account-user-item></rolatech-account-user-item>\n} -->\n" }]
72
+ }], ctorParameters: () => [] });
73
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaG9tZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXItYWNjb3VudC9zcmMvbGliL3BhZ2VzL215YWNjb3VudC9ob21lL2hvbWUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hbmd1bGFyLWFjY291bnQvc3JjL2xpYi9wYWdlcy9teWFjY291bnQvaG9tZS9ob21lLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBVSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDMUUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3pELE9BQU8sRUFDTCx1QkFBdUIsRUFDdkIsYUFBYSxFQUNiLGdCQUFnQixFQUNoQixZQUFZLEVBQ1osYUFBYSxHQUNkLE1BQU0sOEJBQThCLENBQUM7QUFDdEMsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDL0QsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDeEQsT0FBTyxFQUFFLEdBQUcsRUFBRSxNQUFNLFFBQVEsQ0FBQzs7O0FBUzdCLE1BQU0sT0FBTyxhQUFjLFNBQVEsYUFBYTtJQU05QztRQUNFLEtBQUssRUFBRSxDQUFDO1FBTFYsb0JBQWUsR0FBRyxNQUFNLENBQUMsZUFBZSxDQUFDLENBQUM7UUFDMUMsVUFBSyxHQUFRLEVBQUUsQ0FBQztRQUNoQixnQkFBVyxHQUFHLElBQUksQ0FBQztRQUNuQixnQkFBVyxHQUFHLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUd0QixNQUFNLENBQUMsR0FBRyxFQUFFO1lBQ1YsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO1lBQ2pDLElBQUksS0FBSyxLQUFLLENBQUMsRUFBRSxDQUFDO2dCQUNoQixJQUFJLENBQUMsdUJBQXVCLEVBQUUsQ0FBQztZQUNqQyxDQUFDO1lBQ0QsSUFBSSxLQUFLLEtBQUssQ0FBQyxFQUFFLENBQUM7Z0JBQ2hCLElBQUksQ0FBQyx1QkFBdUIsRUFBRSxDQUFDO1lBQ2pDLENBQUM7WUFDRCxJQUFJLEtBQUssS0FBSyxDQUFDLEVBQUUsQ0FBQztZQUNsQixDQUFDO1FBQ0gsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBQ0QsUUFBUTtRQUNOLElBQUksQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDLGVBQWUsQ0FBQyxFQUFFLEVBQUUsQ0FBQztJQUN6QyxDQUFDO0lBQ0QsTUFBTTtRQUNKLElBQUksQ0FBQyxlQUFlLENBQUMsTUFBTSxDQUFDLFdBQVcsQ0FBQyxDQUFDLFNBQVMsQ0FBQztZQUNqRCxJQUFJLEVBQUUsQ0FBQyxHQUFHLEVBQUUsRUFBRTtnQkFDWixPQUFPLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1lBQ25CLENBQUM7U0FDRixDQUFDLENBQUM7SUFDTCxDQUFDO0lBQ0QsUUFBUTtRQUNOLElBQUksQ0FBQyxlQUFlLENBQUMsUUFBUSxDQUFDLFVBQVUsQ0FBQyxDQUFDLFNBQVMsQ0FBQztZQUNsRCxJQUFJLEVBQUUsQ0FBQyxHQUFHLEVBQUUsRUFBRTtnQkFDWixPQUFPLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1lBQ25CLENBQUM7U0FDRixDQUFDLENBQUM7SUFDTCxDQUFDO0lBQ0QsdUJBQXVCO1FBQ3JCLElBQUksQ0FBQyxlQUFlLENBQUMsdUJBQXVCLENBQUMsVUFBVSxDQUFDLENBQUMsU0FBUyxDQUFDO1lBQ2pFLElBQUksRUFBRSxDQUFDLEdBQUcsRUFBRSxFQUFFO2dCQUNaLElBQUksQ0FBQyxLQUFLLEdBQUcsR0FBRyxDQUFDLEdBQUcsQ0FBQyxJQUFJLEVBQUUsTUFBTSxDQUFDLENBQUM7Z0JBQ25DLElBQUksQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDO2dCQUN4QixPQUFPLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUMxQixDQUFDO1NBQ0YsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUNELHVCQUF1QjtRQUNyQixJQUFJLENBQUMsZUFBZSxDQUFDLHVCQUF1QixDQUFDLFVBQVUsQ0FBQyxDQUFDLFNBQVMsQ0FBQztZQUNqRSxJQUFJLEVBQUUsQ0FBQyxHQUFHLEVBQUUsRUFBRTtnQkFDWixJQUFJLENBQUMsS0FBSyxHQUFHLEdBQUcsQ0FBQyxHQUFHLENBQUMsSUFBSSxFQUFFLFVBQVUsQ0FBQyxDQUFDO2dCQUN2QyxJQUFJLENBQUMsV0FBVyxHQUFHLEtBQUssQ0FBQztnQkFDekIsT0FBTyxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsQ0FBQztZQUNuQixDQUFDO1NBQ0YsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUNELE9BQU8sQ0FBQyxLQUFLO1FBQ1gsT0FBTyxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNyQixDQUFDOzhHQXpEVSxhQUFhO2tHQUFiLGFBQWEsd0dDckIxQiwwaERBZ0NBLHlERGhCWSxtQkFBbUIsbUZBQUUsdUJBQXVCLCtCQUFvQixpQkFBaUIseUlBQUUsYUFBYSx5R0FBRSxZQUFZOzsyRkFLN0csYUFBYTtrQkFQekIsU0FBUztpQ0FDSSxJQUFJLFdBQ1AsQ0FBQyxtQkFBbUIsRUFBRSx1QkFBdUIsRUFBRSxnQkFBZ0IsRUFBRSxpQkFBaUIsRUFBRSxhQUFhLEVBQUUsWUFBWSxDQUFDLFlBQy9HLHVCQUF1QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IENvbXBvbmVudCwgZWZmZWN0LCBpbmplY3QsIE9uSW5pdCwgc2lnbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBdXRoVXNlclNlcnZpY2UgfSBmcm9tICdAcm9sYXRlY2gvYW5ndWxhci1hdXRoJztcbmltcG9ydCB7XG4gIEFuZ3VsYXJDb21wb25lbnRzTW9kdWxlLFxuICBCYXNlQ29tcG9uZW50LFxuICBTcGlubmVyQ29tcG9uZW50LFxuICBUYWJDb21wb25lbnQsXG4gIFRhYnNDb21wb25lbnQsXG59IGZyb20gJ0Byb2xhdGVjaC9hbmd1bGFyLWNvbXBvbmVudHMnO1xuaW1wb3J0IHsgQW5ndWxhckNvbW1vbk1vZHVsZSB9IGZyb20gJ0Byb2xhdGVjaC9hbmd1bGFyLWNvbW1vbic7XG5pbXBvcnQgeyBVc2VySXRlbUNvbXBvbmVudCB9IGZyb20gJy4uLy4uLy4uL2NvbXBvbmVudHMnO1xuaW1wb3J0IHsgbWFwIH0gZnJvbSAnbG9kYXNoJztcblxuQENvbXBvbmVudCh7XG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtBbmd1bGFyQ29tbW9uTW9kdWxlLCBBbmd1bGFyQ29tcG9uZW50c01vZHVsZSwgU3Bpbm5lckNvbXBvbmVudCwgVXNlckl0ZW1Db21wb25lbnQsIFRhYnNDb21wb25lbnQsIFRhYkNvbXBvbmVudF0sXG4gIHNlbGVjdG9yOiAncm9sYXRlY2gtYWNjb3VudC1ob21lJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2hvbWUuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9ob21lLmNvbXBvbmVudC5zY3NzJ10sXG59KVxuZXhwb3J0IGNsYXNzIEhvbWVDb21wb25lbnQgZXh0ZW5kcyBCYXNlQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcbiAgdXNlciQhOiBPYnNlcnZhYmxlPGFueT47XG4gIGF1dGhVc2VyU2VydmljZSA9IGluamVjdChBdXRoVXNlclNlcnZpY2UpO1xuICB1c2VyczogYW55ID0gW107XG4gIGlzRm9sbG93aW5nID0gdHJ1ZTtcbiAgc2VsZWN0SW5kZXggPSBzaWduYWwoMCk7XG4gIGNvbnN0cnVjdG9yKCkge1xuICAgIHN1cGVyKCk7XG4gICAgZWZmZWN0KCgpID0+IHtcbiAgICAgIGNvbnN0IGluZGV4ID0gdGhpcy5zZWxlY3RJbmRleCgpO1xuICAgICAgaWYgKGluZGV4ID09PSAwKSB7XG4gICAgICAgIHRoaXMubGlzdEZvbGxvd2luZ0J5VXNlcm5hbWUoKTtcbiAgICAgIH1cbiAgICAgIGlmIChpbmRleCA9PT0gMSkge1xuICAgICAgICB0aGlzLmxpc3RGb2xsb3dlcnNCeVVzZXJuYW1lKCk7XG4gICAgICB9XG4gICAgICBpZiAoaW5kZXggPT09IDIpIHtcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLnVzZXIkID0gdGhpcy5hdXRoVXNlclNlcnZpY2UubWUoKTtcbiAgfVxuICBmb2xsb3coKSB7XG4gICAgdGhpcy5hdXRoVXNlclNlcnZpY2UuZm9sbG93KCdwaW54aWFva2UnKS5zdWJzY3JpYmUoe1xuICAgICAgbmV4dDogKHJlcykgPT4ge1xuICAgICAgICBjb25zb2xlLmxvZyhyZXMpO1xuICAgICAgfSxcbiAgICB9KTtcbiAgfVxuICB1bmZvbGxvdygpIHtcbiAgICB0aGlzLmF1dGhVc2VyU2VydmljZS51bmZvbGxvdygncm9raXN0YXInKS5zdWJzY3JpYmUoe1xuICAgICAgbmV4dDogKHJlcykgPT4ge1xuICAgICAgICBjb25zb2xlLmxvZyhyZXMpO1xuICAgICAgfSxcbiAgICB9KTtcbiAgfVxuICBsaXN0Rm9sbG93aW5nQnlVc2VybmFtZSgpIHtcbiAgICB0aGlzLmF1dGhVc2VyU2VydmljZS5saXN0Rm9sbG93aW5nQnlVc2VybmFtZSgncm9raXN0YXInKS5zdWJzY3JpYmUoe1xuICAgICAgbmV4dDogKHJlcykgPT4ge1xuICAgICAgICB0aGlzLnVzZXJzID0gbWFwKHJlcy5kYXRhLCAndXNlcicpO1xuICAgICAgICB0aGlzLmlzRm9sbG93aW5nID0gdHJ1ZTtcbiAgICAgICAgY29uc29sZS5sb2codGhpcy51c2Vycyk7XG4gICAgICB9LFxuICAgIH0pO1xuICB9XG4gIGxpc3RGb2xsb3dlcnNCeVVzZXJuYW1lKCkge1xuICAgIHRoaXMuYXV0aFVzZXJTZXJ2aWNlLmxpc3RGb2xsb3dlcnNCeVVzZXJuYW1lKCdyb2tpc3RhcicpLnN1YnNjcmliZSh7XG4gICAgICBuZXh0OiAocmVzKSA9PiB7XG4gICAgICAgIHRoaXMudXNlcnMgPSBtYXAocmVzLmRhdGEsICdmb2xsb3dlcicpO1xuICAgICAgICB0aGlzLmlzRm9sbG93aW5nID0gZmFsc2U7XG4gICAgICAgIGNvbnNvbGUubG9nKHJlcyk7XG4gICAgICB9LFxuICAgIH0pO1xuICB9XG4gIG9uQ2xpY2soZXZlbnQpIHtcbiAgICBjb25zb2xlLmxvZyhldmVudCk7XG4gIH1cbn1cbiIsIkBpZiAodXNlciQgfCBhc3luYzsgYXMgdXNlcikge1xuICA8ZGl2IGNsYXNzPVwibWF4LXctWzExMjBweF0gbS1hdXRvXCI+XG4gICAgPGRpdiBjbGFzcz1cIm1heC13LVs4MjBweF0gbS0zXCI+XG4gICAgICA8IS0tIDxyb2xhdGVjaC1zcGlubmVyPjwvcm9sYXRlY2gtc3Bpbm5lcj4gLS0+XG4gICAgICA8ZGl2IGNsYXNzPVwiZmxleCBmbGV4LWNvbCBqdXN0aWZ5LWNlbnRlciBpdGVtcy1jZW50ZXIgcC0zIG1iLTEyXCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJwLTMgbWItM1wiPlxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJ3LTIwIGgtMjAgcm91bmRlZC1mdWxsIGJnLW9yYW5nZS02MDBcIj5cbiAgICAgICAgICAgIEBpZiAodXNlci5hdmF0YXIpIHtcbiAgICAgICAgICAgICAgPGltZyBjbGFzcz1cInctMjAgaC0yMCByb3VuZGVkLWZ1bGwgb2JqZWN0LWNvdmVyXCIgW3NyY109XCJ1c2VyLmF2YXRhclwiIC8+XG4gICAgICAgICAgICB9XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8cCBjbGFzcz1cInRleHQtM3hsXCI+5qyi6L+O5Zue5p2lLCB7eyB1c2VyLm5hbWUgfX08L3A+XG4gICAgICAgIDxwIGNsYXNzPVwidGV4dC1tZFwiPueUqOaIt+S4reW/gywg5pa55L6/5oKo57u05oqk5Liq5Lq65L+h5oGvLCDov5nkvJrmnInkuIDkuKrlvojlpb3nmoTkvZPpqow8L3A+XG4gICAgICAgIDxidXR0b24gKGNsaWNrKT1cImZvbGxvdygpXCI+Rm9sbG93PC9idXR0b24+XG4gICAgICAgIDxidXR0b24gKGNsaWNrKT1cInVuZm9sbG93KClcIj5VbkZvbGxvdzwvYnV0dG9uPlxuICAgICAgICA8YnV0dG9uIChjbGljayk9XCJsaXN0Rm9sbG93aW5nQnlVc2VybmFtZSgpXCI+bGlzdEZvbGxvd2luZ0J5VXNlcm5hbWU8L2J1dHRvbj5cbiAgICAgICAgPGJ1dHRvbiAoY2xpY2spPVwibGlzdEZvbGxvd2Vyc0J5VXNlcm5hbWUoKVwiPkxpc3QgRm9sbG93ZXJzPC9idXR0b24+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG59XG48cm9sYXRlY2gtdGFicyBbKHNlbGVjdCldPVwic2VsZWN0SW5kZXhcIj5cbiAgPHJvbGF0ZWNoLXRhYiBsYWJlbD1cIuWFs+azqFwiPjwvcm9sYXRlY2gtdGFiPlxuICA8cm9sYXRlY2gtdGFiIGxhYmVsPVwi57KJ5LidXCI+PC9yb2xhdGVjaC10YWI+XG48L3JvbGF0ZWNoLXRhYnM+XG5AZm9yIChpdGVtIG9mIHVzZXJzOyB0cmFjayAkaW5kZXgpIHtcbiAgPHJvbGF0ZWNoLWFjY291bnQtdXNlci1pdGVtIFt1c2VyXT1cIml0ZW1cIiBbaXNGb2xsb3dpbmddPVwiaXNGb2xsb3dpbmdcIiAoY2xpY2spPVwib25DbGljaygkZXZlbnQpXCI+PC9yb2xhdGVjaC1hY2NvdW50LXVzZXItaXRlbT5cbn1cbjwhLS0gQGZvciAobnVtYmVyIG9mIFswLCAxLCAyLCAzLCA0LCA1XTsgdHJhY2sgbnVtYmVyKSB7XG4gIDxyb2xhdGVjaC1hY2NvdW50LXVzZXItaXRlbT48L3JvbGF0ZWNoLWFjY291bnQtdXNlci1pdGVtPlxufSAtLT5cbiJdfQ==
@@ -1,7 +1,7 @@
1
1
  import { Component, inject } from '@angular/core';
2
2
  import { AuthUserService } from '@rolatech/angular-auth';
3
3
  import { AngularCommonModule } from '@rolatech/angular-common';
4
- import { AngularComponentsModule, LoadingSpinnerComponent } from '@rolatech/angular-components';
4
+ import { AngularComponentsModule, SpinnerComponent } from '@rolatech/angular-components';
5
5
  import { MatDialog } from '@angular/material/dialog';
6
6
  import { UserGender } from '../../../contant/user';
7
7
  import { AvatarUpdateDialogComponent } from '../../../components/avatar-update-dialog/avatar-update-dialog.component';
@@ -35,11 +35,11 @@ export class InfoComponent {
35
35
  location.reload();
36
36
  });
37
37
  }
38
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: InfoComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
39
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.0", type: InfoComponent, isStandalone: true, selector: "rolatech-account-info", ngImport: i0, template: "<div class=\"max-w-[1120px] m-auto\">\n <div class=\"max-w-[820px] m-3\">\n <rolatech-loading-spinner></rolatech-loading-spinner>\n @if (user) {\n <div>\n <div class=\"flex flex-col justify-center items-center p-3 mb-12\">\n <p class=\"text-3xl\">\u4E2A\u4EBA\u4FE1\u606F</p>\n <p class=\"text-md\">\u7528\u6237\u4FE1\u606F\u7684\u5168\u90E8\u5185\u5BB9</p>\n </div>\n <div class=\"border border-grap-400 rounded px-3 pt-3 mb-14\">\n <div class=\"p-3 text-xl\">\u57FA\u672C\u8BBE\u7F6E</div>\n <mat-nav-list>\n <mat-list-item (click)=\"updateAvatar()\" class=\"h-16\">\n <div class=\"flex items-center justify-between\">\n <div class=\"flex flex-1 items-center\">\n <span class=\"w-24 text-sm font-thin\">\u5934\u50CF</span>\n <span class=\"w-24 text-sm\">\u8D26\u6237\u7684\u5934\u50CF</span>\n </div>\n <div\n class=\"mr-6 bg-orange-600 w-9 h-9 rounded-full cursor-pointer hover:outline-gray-200 outline outline-transparent outline-4\"\n >\n @if (user.avatar) {\n <div class=\"w-9 h-9\">\n <img [src]=\"user.avatar\" class=\"w-9 h-9 rounded-full object-cover\" />\n </div>\n }\n </div>\n </div>\n </mat-list-item>\n <mat-divider class=\"mx-3\"></mat-divider>\n <mat-list-item routerLink=\"../profile\">\n <div class=\"flex items-center justify-between\">\n <div class=\"flex flex-1 items-center\">\n <span class=\"w-24 text-sm font-thin\">\u59D3\u540D</span>\n <span>{{ user?.name }}</span>\n </div>\n <span>\n <mat-icon> navigate_next </mat-icon>\n </span>\n </div>\n </mat-list-item>\n <mat-divider class=\"mx-3\"></mat-divider>\n <mat-list-item routerLink=\"../gender\">\n <div class=\"flex items-center justify-between\">\n <div class=\"flex flex-1 items-center\">\n <span class=\"w-24 text-sm font-thin\">\u6027\u522B</span>\n <span>{{ gender[user.gender] || '\u672A\u8BBE\u7F6E' }}</span>\n </div>\n <span>\n <mat-icon> navigate_next </mat-icon>\n </span>\n </div>\n </mat-list-item>\n <mat-divider class=\"mx-3\"></mat-divider>\n <mat-list-item routerLink=\"../username\">\n <div class=\"flex items-center justify-between\">\n <div class=\"flex flex-1 items-center\">\n <span class=\"w-24 text-sm font-thin\">\u7528\u6237\u540D</span>\n <span>{{ user.username }}</span>\n </div>\n <span>\n <mat-icon> navigate_next </mat-icon>\n </span>\n </div>\n </mat-list-item>\n </mat-nav-list>\n </div>\n <!-- contact -->\n <div class=\"border border-grap-400 rounded px-3 pt-3\">\n <div class=\"p-3 text-xl\">\u8054\u7CFB\u65B9\u5F0F</div>\n <mat-nav-list>\n <mat-list-item routerLink=\"../email\">\n <div class=\"flex items-center justify-between\">\n <div class=\"flex flex-1 items-center\">\n <span class=\"w-24 text-sm font-thin\">\u90AE\u7BB1</span>\n <span>{{ user.email || '\u672A\u8BBE\u7F6E' }}</span>\n </div>\n <!-- <mat-icon mat-list-icon>arrow_drop_down</mat-icon> -->\n <span>\n <mat-icon> navigate_next </mat-icon>\n </span>\n </div>\n </mat-list-item>\n <mat-divider class=\"mx-3\"></mat-divider>\n <mat-list-item routerLink=\"../phone\">\n <div class=\"flex items-center justify-between\">\n <div class=\"flex flex-1 items-center\">\n <span class=\"w-24 text-sm font-thin\">\u7535\u8BDD</span>\n <span>{{ user.phone || '\u672A\u8BBE\u7F6E' }}</span>\n </div>\n <!-- <mat-icon mat-list-icon>arrow_drop_down</mat-icon> -->\n <span>\n <mat-icon> navigate_next </mat-icon>\n </span>\n </div>\n </mat-list-item>\n </mat-nav-list>\n </div>\n </div>\n }\n </div>\n</div>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: AngularCommonModule }, { kind: "directive", type: i1.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "ngmodule", type: AngularComponentsModule }, { kind: "component", type: i2.MatDivider, selector: "mat-divider", inputs: ["vertical", "inset"] }, { kind: "component", type: i3.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i4.MatNavList, selector: "mat-nav-list", exportAs: ["matNavList"] }, { kind: "component", type: i4.MatListItem, selector: "mat-list-item, a[mat-list-item], button[mat-list-item]", inputs: ["activated"], exportAs: ["matListItem"] }, { kind: "component", type: LoadingSpinnerComponent, selector: "rolatech-loading-spinner", inputs: ["title"] }] }); }
38
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: InfoComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
39
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.3", type: InfoComponent, isStandalone: true, selector: "rolatech-account-info", ngImport: i0, template: "<div class=\"max-w-[1120px] m-auto\">\n <div class=\"max-w-[820px] m-3\">\n <rolatech-spinner></rolatech-spinner>\n @if (user) {\n <div>\n <div class=\"flex flex-col justify-center items-center p-3 mb-12\">\n <p class=\"text-3xl\">\u4E2A\u4EBA\u4FE1\u606F</p>\n <p class=\"text-md\">\u7528\u6237\u4FE1\u606F\u7684\u5168\u90E8\u5185\u5BB9</p>\n </div>\n <div class=\"border border-grap-400 rounded px-3 pt-3 mb-14\">\n <div class=\"p-3 text-xl\">\u57FA\u672C\u8BBE\u7F6E</div>\n <mat-nav-list>\n <mat-list-item (click)=\"updateAvatar()\" class=\"h-16\">\n <div class=\"flex items-center justify-between\">\n <div class=\"flex flex-1 items-center\">\n <span class=\"w-24 text-sm font-thin\">\u5934\u50CF</span>\n <span class=\"w-24 text-sm\">\u8D26\u6237\u7684\u5934\u50CF</span>\n </div>\n <div\n class=\"mr-6 bg-orange-600 w-9 h-9 rounded-full cursor-pointer hover:outline-gray-200 outline outline-transparent outline-4\"\n >\n @if (user.avatar) {\n <div class=\"w-9 h-9\">\n <img [src]=\"user.avatar\" class=\"w-9 h-9 rounded-full object-cover\" />\n </div>\n }\n </div>\n </div>\n </mat-list-item>\n <mat-divider class=\"mx-3\"></mat-divider>\n <mat-list-item routerLink=\"../profile\">\n <div class=\"flex items-center justify-between\">\n <div class=\"flex flex-1 items-center\">\n <span class=\"w-24 text-sm font-thin\">\u59D3\u540D</span>\n <span>{{ user?.name }}</span>\n </div>\n <span>\n <mat-icon> navigate_next </mat-icon>\n </span>\n </div>\n </mat-list-item>\n <mat-divider class=\"mx-3\"></mat-divider>\n <mat-list-item routerLink=\"../gender\">\n <div class=\"flex items-center justify-between\">\n <div class=\"flex flex-1 items-center\">\n <span class=\"w-24 text-sm font-thin\">\u6027\u522B</span>\n <span>{{ gender[user.gender] || '\u672A\u8BBE\u7F6E' }}</span>\n </div>\n <span>\n <mat-icon> navigate_next </mat-icon>\n </span>\n </div>\n </mat-list-item>\n <mat-divider class=\"mx-3\"></mat-divider>\n <mat-list-item routerLink=\"../username\">\n <div class=\"flex items-center justify-between\">\n <div class=\"flex flex-1 items-center\">\n <span class=\"w-24 text-sm font-thin\">\u7528\u6237\u540D</span>\n <span>{{ user.username }}</span>\n </div>\n <span>\n <mat-icon> navigate_next </mat-icon>\n </span>\n </div>\n </mat-list-item>\n </mat-nav-list>\n </div>\n <!-- contact -->\n <div class=\"border border-grap-400 rounded px-3 pt-3\">\n <div class=\"p-3 text-xl\">\u8054\u7CFB\u65B9\u5F0F</div>\n <mat-nav-list>\n <mat-list-item routerLink=\"../email\">\n <div class=\"flex items-center justify-between\">\n <div class=\"flex flex-1 items-center\">\n <span class=\"w-24 text-sm font-thin\">\u90AE\u7BB1</span>\n <span>{{ user.email || '\u672A\u8BBE\u7F6E' }}</span>\n </div>\n <!-- <mat-icon mat-list-icon>arrow_drop_down</mat-icon> -->\n <span>\n <mat-icon> navigate_next </mat-icon>\n </span>\n </div>\n </mat-list-item>\n <mat-divider class=\"mx-3\"></mat-divider>\n <mat-list-item routerLink=\"../phone\">\n <div class=\"flex items-center justify-between\">\n <div class=\"flex flex-1 items-center\">\n <span class=\"w-24 text-sm font-thin\">\u7535\u8BDD</span>\n <span>{{ user.phone || '\u672A\u8BBE\u7F6E' }}</span>\n </div>\n <!-- <mat-icon mat-list-icon>arrow_drop_down</mat-icon> -->\n <span>\n <mat-icon> navigate_next </mat-icon>\n </span>\n </div>\n </mat-list-item>\n </mat-nav-list>\n </div>\n </div>\n }\n </div>\n</div>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: AngularCommonModule }, { kind: "directive", type: i1.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "ngmodule", type: AngularComponentsModule }, { kind: "component", type: i2.MatDivider, selector: "mat-divider", inputs: ["vertical", "inset"] }, { kind: "component", type: i3.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i4.MatNavList, selector: "mat-nav-list", exportAs: ["matNavList"] }, { kind: "component", type: i4.MatListItem, selector: "mat-list-item, a[mat-list-item], button[mat-list-item]", inputs: ["activated"], exportAs: ["matListItem"] }, { kind: "component", type: SpinnerComponent, selector: "rolatech-spinner", inputs: ["title"] }] }); }
40
40
  }
41
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: InfoComponent, decorators: [{
41
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: InfoComponent, decorators: [{
42
42
  type: Component,
43
- args: [{ standalone: true, imports: [AngularCommonModule, AngularComponentsModule, LoadingSpinnerComponent], selector: 'rolatech-account-info', template: "<div class=\"max-w-[1120px] m-auto\">\n <div class=\"max-w-[820px] m-3\">\n <rolatech-loading-spinner></rolatech-loading-spinner>\n @if (user) {\n <div>\n <div class=\"flex flex-col justify-center items-center p-3 mb-12\">\n <p class=\"text-3xl\">\u4E2A\u4EBA\u4FE1\u606F</p>\n <p class=\"text-md\">\u7528\u6237\u4FE1\u606F\u7684\u5168\u90E8\u5185\u5BB9</p>\n </div>\n <div class=\"border border-grap-400 rounded px-3 pt-3 mb-14\">\n <div class=\"p-3 text-xl\">\u57FA\u672C\u8BBE\u7F6E</div>\n <mat-nav-list>\n <mat-list-item (click)=\"updateAvatar()\" class=\"h-16\">\n <div class=\"flex items-center justify-between\">\n <div class=\"flex flex-1 items-center\">\n <span class=\"w-24 text-sm font-thin\">\u5934\u50CF</span>\n <span class=\"w-24 text-sm\">\u8D26\u6237\u7684\u5934\u50CF</span>\n </div>\n <div\n class=\"mr-6 bg-orange-600 w-9 h-9 rounded-full cursor-pointer hover:outline-gray-200 outline outline-transparent outline-4\"\n >\n @if (user.avatar) {\n <div class=\"w-9 h-9\">\n <img [src]=\"user.avatar\" class=\"w-9 h-9 rounded-full object-cover\" />\n </div>\n }\n </div>\n </div>\n </mat-list-item>\n <mat-divider class=\"mx-3\"></mat-divider>\n <mat-list-item routerLink=\"../profile\">\n <div class=\"flex items-center justify-between\">\n <div class=\"flex flex-1 items-center\">\n <span class=\"w-24 text-sm font-thin\">\u59D3\u540D</span>\n <span>{{ user?.name }}</span>\n </div>\n <span>\n <mat-icon> navigate_next </mat-icon>\n </span>\n </div>\n </mat-list-item>\n <mat-divider class=\"mx-3\"></mat-divider>\n <mat-list-item routerLink=\"../gender\">\n <div class=\"flex items-center justify-between\">\n <div class=\"flex flex-1 items-center\">\n <span class=\"w-24 text-sm font-thin\">\u6027\u522B</span>\n <span>{{ gender[user.gender] || '\u672A\u8BBE\u7F6E' }}</span>\n </div>\n <span>\n <mat-icon> navigate_next </mat-icon>\n </span>\n </div>\n </mat-list-item>\n <mat-divider class=\"mx-3\"></mat-divider>\n <mat-list-item routerLink=\"../username\">\n <div class=\"flex items-center justify-between\">\n <div class=\"flex flex-1 items-center\">\n <span class=\"w-24 text-sm font-thin\">\u7528\u6237\u540D</span>\n <span>{{ user.username }}</span>\n </div>\n <span>\n <mat-icon> navigate_next </mat-icon>\n </span>\n </div>\n </mat-list-item>\n </mat-nav-list>\n </div>\n <!-- contact -->\n <div class=\"border border-grap-400 rounded px-3 pt-3\">\n <div class=\"p-3 text-xl\">\u8054\u7CFB\u65B9\u5F0F</div>\n <mat-nav-list>\n <mat-list-item routerLink=\"../email\">\n <div class=\"flex items-center justify-between\">\n <div class=\"flex flex-1 items-center\">\n <span class=\"w-24 text-sm font-thin\">\u90AE\u7BB1</span>\n <span>{{ user.email || '\u672A\u8BBE\u7F6E' }}</span>\n </div>\n <!-- <mat-icon mat-list-icon>arrow_drop_down</mat-icon> -->\n <span>\n <mat-icon> navigate_next </mat-icon>\n </span>\n </div>\n </mat-list-item>\n <mat-divider class=\"mx-3\"></mat-divider>\n <mat-list-item routerLink=\"../phone\">\n <div class=\"flex items-center justify-between\">\n <div class=\"flex flex-1 items-center\">\n <span class=\"w-24 text-sm font-thin\">\u7535\u8BDD</span>\n <span>{{ user.phone || '\u672A\u8BBE\u7F6E' }}</span>\n </div>\n <!-- <mat-icon mat-list-icon>arrow_drop_down</mat-icon> -->\n <span>\n <mat-icon> navigate_next </mat-icon>\n </span>\n </div>\n </mat-list-item>\n </mat-nav-list>\n </div>\n </div>\n }\n </div>\n</div>\n" }]
43
+ args: [{ standalone: true, imports: [AngularCommonModule, AngularComponentsModule, SpinnerComponent], selector: 'rolatech-account-info', template: "<div class=\"max-w-[1120px] m-auto\">\n <div class=\"max-w-[820px] m-3\">\n <rolatech-spinner></rolatech-spinner>\n @if (user) {\n <div>\n <div class=\"flex flex-col justify-center items-center p-3 mb-12\">\n <p class=\"text-3xl\">\u4E2A\u4EBA\u4FE1\u606F</p>\n <p class=\"text-md\">\u7528\u6237\u4FE1\u606F\u7684\u5168\u90E8\u5185\u5BB9</p>\n </div>\n <div class=\"border border-grap-400 rounded px-3 pt-3 mb-14\">\n <div class=\"p-3 text-xl\">\u57FA\u672C\u8BBE\u7F6E</div>\n <mat-nav-list>\n <mat-list-item (click)=\"updateAvatar()\" class=\"h-16\">\n <div class=\"flex items-center justify-between\">\n <div class=\"flex flex-1 items-center\">\n <span class=\"w-24 text-sm font-thin\">\u5934\u50CF</span>\n <span class=\"w-24 text-sm\">\u8D26\u6237\u7684\u5934\u50CF</span>\n </div>\n <div\n class=\"mr-6 bg-orange-600 w-9 h-9 rounded-full cursor-pointer hover:outline-gray-200 outline outline-transparent outline-4\"\n >\n @if (user.avatar) {\n <div class=\"w-9 h-9\">\n <img [src]=\"user.avatar\" class=\"w-9 h-9 rounded-full object-cover\" />\n </div>\n }\n </div>\n </div>\n </mat-list-item>\n <mat-divider class=\"mx-3\"></mat-divider>\n <mat-list-item routerLink=\"../profile\">\n <div class=\"flex items-center justify-between\">\n <div class=\"flex flex-1 items-center\">\n <span class=\"w-24 text-sm font-thin\">\u59D3\u540D</span>\n <span>{{ user?.name }}</span>\n </div>\n <span>\n <mat-icon> navigate_next </mat-icon>\n </span>\n </div>\n </mat-list-item>\n <mat-divider class=\"mx-3\"></mat-divider>\n <mat-list-item routerLink=\"../gender\">\n <div class=\"flex items-center justify-between\">\n <div class=\"flex flex-1 items-center\">\n <span class=\"w-24 text-sm font-thin\">\u6027\u522B</span>\n <span>{{ gender[user.gender] || '\u672A\u8BBE\u7F6E' }}</span>\n </div>\n <span>\n <mat-icon> navigate_next </mat-icon>\n </span>\n </div>\n </mat-list-item>\n <mat-divider class=\"mx-3\"></mat-divider>\n <mat-list-item routerLink=\"../username\">\n <div class=\"flex items-center justify-between\">\n <div class=\"flex flex-1 items-center\">\n <span class=\"w-24 text-sm font-thin\">\u7528\u6237\u540D</span>\n <span>{{ user.username }}</span>\n </div>\n <span>\n <mat-icon> navigate_next </mat-icon>\n </span>\n </div>\n </mat-list-item>\n </mat-nav-list>\n </div>\n <!-- contact -->\n <div class=\"border border-grap-400 rounded px-3 pt-3\">\n <div class=\"p-3 text-xl\">\u8054\u7CFB\u65B9\u5F0F</div>\n <mat-nav-list>\n <mat-list-item routerLink=\"../email\">\n <div class=\"flex items-center justify-between\">\n <div class=\"flex flex-1 items-center\">\n <span class=\"w-24 text-sm font-thin\">\u90AE\u7BB1</span>\n <span>{{ user.email || '\u672A\u8BBE\u7F6E' }}</span>\n </div>\n <!-- <mat-icon mat-list-icon>arrow_drop_down</mat-icon> -->\n <span>\n <mat-icon> navigate_next </mat-icon>\n </span>\n </div>\n </mat-list-item>\n <mat-divider class=\"mx-3\"></mat-divider>\n <mat-list-item routerLink=\"../phone\">\n <div class=\"flex items-center justify-between\">\n <div class=\"flex flex-1 items-center\">\n <span class=\"w-24 text-sm font-thin\">\u7535\u8BDD</span>\n <span>{{ user.phone || '\u672A\u8BBE\u7F6E' }}</span>\n </div>\n <!-- <mat-icon mat-list-icon>arrow_drop_down</mat-icon> -->\n <span>\n <mat-icon> navigate_next </mat-icon>\n </span>\n </div>\n </mat-list-item>\n </mat-nav-list>\n </div>\n </div>\n }\n </div>\n</div>\n" }]
44
44
  }] });
45
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5mby5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXItYWNjb3VudC9zcmMvbGliL3BhZ2VzL215YWNjb3VudC9wZXJzb25hbC1pbmZvL2luZm8uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hbmd1bGFyLWFjY291bnQvc3JjL2xpYi9wYWdlcy9teWFjY291bnQvcGVyc29uYWwtaW5mby9pbmZvLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFVLE1BQU0sZUFBZSxDQUFDO0FBQzFELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUN6RCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMvRCxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUVoRyxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDckQsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ25ELE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLHlFQUF5RSxDQUFDOzs7Ozs7QUFTdEgsTUFBTSxPQUFPLGFBQWE7SUFQMUI7UUFTRSxvQkFBZSxHQUFHLE1BQU0sQ0FBQyxlQUFlLENBQUMsQ0FBQztRQUMxQyxXQUFNLEdBQUcsTUFBTSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBRTNCLFdBQU0sR0FBUSxVQUFVLENBQUM7S0FxQjFCO0lBbkJDLFFBQVE7UUFDTixJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxlQUFlLENBQUMsRUFBRSxFQUFFLENBQUM7UUFDdkMsSUFBSSxDQUFDLEtBQUssQ0FBQyxTQUFTLENBQUM7WUFDbkIsSUFBSSxFQUFFLENBQUMsSUFBSSxFQUFFLEVBQUU7Z0JBQ2IsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUM7WUFDbkIsQ0FBQztTQUNGLENBQUMsQ0FBQztJQUNMLENBQUM7SUFDRCxZQUFZO1FBQ1YsTUFBTSxTQUFTLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsMkJBQTJCLEVBQUU7WUFDOUQsSUFBSSxFQUFFO2dCQUNKLE1BQU0sRUFBRSxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU07YUFDekI7U0FDRixDQUFDLENBQUM7UUFDSCxTQUFTLENBQUMsV0FBVyxFQUFFLENBQUMsU0FBUyxDQUFDLENBQUMsTUFBTSxFQUFFLEVBQUU7WUFDM0MsT0FBTyxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsQ0FBQztZQUNwQixRQUFRLENBQUMsTUFBTSxFQUFFLENBQUM7UUFDcEIsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDOzhHQXpCVSxhQUFhO2tHQUFiLGFBQWEsaUZDaEIxQixxakpBc0dBLHlERDNGWSxtQkFBbUIsK1FBQUUsdUJBQXVCLDJoQkFBRSx1QkFBdUI7OzJGQUtwRSxhQUFhO2tCQVB6QixTQUFTO2lDQUNJLElBQUksV0FDUCxDQUFDLG1CQUFtQixFQUFFLHVCQUF1QixFQUFFLHVCQUF1QixDQUFDLFlBQ3RFLHVCQUF1QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgaW5qZWN0LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEF1dGhVc2VyU2VydmljZSB9IGZyb20gJ0Byb2xhdGVjaC9hbmd1bGFyLWF1dGgnO1xuaW1wb3J0IHsgQW5ndWxhckNvbW1vbk1vZHVsZSB9IGZyb20gJ0Byb2xhdGVjaC9hbmd1bGFyLWNvbW1vbic7XG5pbXBvcnQgeyBBbmd1bGFyQ29tcG9uZW50c01vZHVsZSwgTG9hZGluZ1NwaW5uZXJDb21wb25lbnQgfSBmcm9tICdAcm9sYXRlY2gvYW5ndWxhci1jb21wb25lbnRzJztcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IE1hdERpYWxvZyB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2RpYWxvZyc7XG5pbXBvcnQgeyBVc2VyR2VuZGVyIH0gZnJvbSAnLi4vLi4vLi4vY29udGFudC91c2VyJztcbmltcG9ydCB7IEF2YXRhclVwZGF0ZURpYWxvZ0NvbXBvbmVudCB9IGZyb20gJy4uLy4uLy4uL2NvbXBvbmVudHMvYXZhdGFyLXVwZGF0ZS1kaWFsb2cvYXZhdGFyLXVwZGF0ZS1kaWFsb2cuY29tcG9uZW50JztcblxuQENvbXBvbmVudCh7XG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtBbmd1bGFyQ29tbW9uTW9kdWxlLCBBbmd1bGFyQ29tcG9uZW50c01vZHVsZSwgTG9hZGluZ1NwaW5uZXJDb21wb25lbnRdLFxuICBzZWxlY3RvcjogJ3JvbGF0ZWNoLWFjY291bnQtaW5mbycsXG4gIHRlbXBsYXRlVXJsOiAnLi9pbmZvLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vaW5mby5jb21wb25lbnQuc2NzcyddLFxufSlcbmV4cG9ydCBjbGFzcyBJbmZvQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcbiAgdXNlciQhOiBPYnNlcnZhYmxlPGFueT47XG4gIGF1dGhVc2VyU2VydmljZSA9IGluamVjdChBdXRoVXNlclNlcnZpY2UpO1xuICBkaWFsb2cgPSBpbmplY3QoTWF0RGlhbG9nKTtcbiAgdXNlcjogYW55O1xuICBnZW5kZXI6IGFueSA9IFVzZXJHZW5kZXI7XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy51c2VyJCA9IHRoaXMuYXV0aFVzZXJTZXJ2aWNlLm1lKCk7XG4gICAgdGhpcy51c2VyJC5zdWJzY3JpYmUoe1xuICAgICAgbmV4dDogKHVzZXIpID0+IHtcbiAgICAgICAgdGhpcy51c2VyID0gdXNlcjtcbiAgICAgIH0sXG4gICAgfSk7XG4gIH1cbiAgdXBkYXRlQXZhdGFyKCkge1xuICAgIGNvbnN0IGRpYWxvZ1JlZiA9IHRoaXMuZGlhbG9nLm9wZW4oQXZhdGFyVXBkYXRlRGlhbG9nQ29tcG9uZW50LCB7XG4gICAgICBkYXRhOiB7XG4gICAgICAgIGF2YXRhcjogdGhpcy51c2VyLmF2YXRhcixcbiAgICAgIH0sXG4gICAgfSk7XG4gICAgZGlhbG9nUmVmLmFmdGVyQ2xvc2VkKCkuc3Vic2NyaWJlKChyZXN1bHQpID0+IHtcbiAgICAgIGNvbnNvbGUubG9nKHJlc3VsdCk7XG4gICAgICBsb2NhdGlvbi5yZWxvYWQoKTtcbiAgICB9KTtcbiAgfVxufVxuIiwiPGRpdiBjbGFzcz1cIm1heC13LVsxMTIwcHhdIG0tYXV0b1wiPlxuICA8ZGl2IGNsYXNzPVwibWF4LXctWzgyMHB4XSBtLTNcIj5cbiAgICA8cm9sYXRlY2gtbG9hZGluZy1zcGlubmVyPjwvcm9sYXRlY2gtbG9hZGluZy1zcGlubmVyPlxuICAgIEBpZiAodXNlcikge1xuICAgICAgPGRpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImZsZXggZmxleC1jb2wganVzdGlmeS1jZW50ZXIgaXRlbXMtY2VudGVyIHAtMyBtYi0xMlwiPlxuICAgICAgICAgIDxwIGNsYXNzPVwidGV4dC0zeGxcIj7kuKrkurrkv6Hmga88L3A+XG4gICAgICAgICAgPHAgY2xhc3M9XCJ0ZXh0LW1kXCI+55So5oi35L+h5oGv55qE5YWo6YOo5YaF5a65PC9wPlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImJvcmRlciBib3JkZXItZ3JhcC00MDAgcm91bmRlZCBweC0zIHB0LTMgbWItMTRcIj5cbiAgICAgICAgICA8ZGl2IGNsYXNzPVwicC0zIHRleHQteGxcIj7ln7rmnKzorr7nva48L2Rpdj5cbiAgICAgICAgICA8bWF0LW5hdi1saXN0PlxuICAgICAgICAgICAgPG1hdC1saXN0LWl0ZW0gKGNsaWNrKT1cInVwZGF0ZUF2YXRhcigpXCIgY2xhc3M9XCJoLTE2XCI+XG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmbGV4IGl0ZW1zLWNlbnRlciBqdXN0aWZ5LWJldHdlZW5cIj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmxleCBmbGV4LTEgaXRlbXMtY2VudGVyXCI+XG4gICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInctMjQgdGV4dC1zbSBmb250LXRoaW5cIj7lpLTlg488L3NwYW4+XG4gICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInctMjQgdGV4dC1zbVwiPui0puaIt+eahOWktOWDjzwvc3Bhbj5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICAgICAgICBjbGFzcz1cIm1yLTYgYmctb3JhbmdlLTYwMCB3LTkgaC05IHJvdW5kZWQtZnVsbCBjdXJzb3ItcG9pbnRlciBob3ZlcjpvdXRsaW5lLWdyYXktMjAwIG91dGxpbmUgb3V0bGluZS10cmFuc3BhcmVudCBvdXRsaW5lLTRcIlxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgIEBpZiAodXNlci5hdmF0YXIpIHtcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInctOSBoLTlcIj5cbiAgICAgICAgICAgICAgICAgICAgICA8aW1nIFtzcmNdPVwidXNlci5hdmF0YXJcIiBjbGFzcz1cInctOSBoLTkgcm91bmRlZC1mdWxsIG9iamVjdC1jb3ZlclwiIC8+XG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDwvbWF0LWxpc3QtaXRlbT5cbiAgICAgICAgICAgIDxtYXQtZGl2aWRlciBjbGFzcz1cIm14LTNcIj48L21hdC1kaXZpZGVyPlxuICAgICAgICAgICAgPG1hdC1saXN0LWl0ZW0gcm91dGVyTGluaz1cIi4uL3Byb2ZpbGVcIj5cbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZsZXggaXRlbXMtY2VudGVyIGp1c3RpZnktYmV0d2VlblwiPlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmbGV4IGZsZXgtMSBpdGVtcy1jZW50ZXJcIj5cbiAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidy0yNCB0ZXh0LXNtIGZvbnQtdGhpblwiPuWnk+WQjTwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgIDxzcGFuPnt7IHVzZXI/Lm5hbWUgfX08L3NwYW4+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPHNwYW4+XG4gICAgICAgICAgICAgICAgICA8bWF0LWljb24+IG5hdmlnYXRlX25leHQgPC9tYXQtaWNvbj5cbiAgICAgICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC9tYXQtbGlzdC1pdGVtPlxuICAgICAgICAgICAgPG1hdC1kaXZpZGVyIGNsYXNzPVwibXgtM1wiPjwvbWF0LWRpdmlkZXI+XG4gICAgICAgICAgICA8bWF0LWxpc3QtaXRlbSByb3V0ZXJMaW5rPVwiLi4vZ2VuZGVyXCI+XG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmbGV4IGl0ZW1zLWNlbnRlciBqdXN0aWZ5LWJldHdlZW5cIj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmxleCBmbGV4LTEgaXRlbXMtY2VudGVyXCI+XG4gICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInctMjQgdGV4dC1zbSBmb250LXRoaW5cIj7mgKfliKs8L3NwYW4+XG4gICAgICAgICAgICAgICAgICA8c3Bhbj57eyBnZW5kZXJbdXNlci5nZW5kZXJdIHx8ICfmnKrorr7nva4nIH19PC9zcGFuPlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDxzcGFuPlxuICAgICAgICAgICAgICAgICAgPG1hdC1pY29uPiBuYXZpZ2F0ZV9uZXh0IDwvbWF0LWljb24+XG4gICAgICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDwvbWF0LWxpc3QtaXRlbT5cbiAgICAgICAgICAgIDxtYXQtZGl2aWRlciBjbGFzcz1cIm14LTNcIj48L21hdC1kaXZpZGVyPlxuICAgICAgICAgICAgPG1hdC1saXN0LWl0ZW0gcm91dGVyTGluaz1cIi4uL3VzZXJuYW1lXCI+XG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmbGV4IGl0ZW1zLWNlbnRlciBqdXN0aWZ5LWJldHdlZW5cIj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmxleCBmbGV4LTEgaXRlbXMtY2VudGVyXCI+XG4gICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInctMjQgdGV4dC1zbSBmb250LXRoaW5cIj7nlKjmiLflkI08L3NwYW4+XG4gICAgICAgICAgICAgICAgICA8c3Bhbj57eyB1c2VyLnVzZXJuYW1lIH19PC9zcGFuPlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDxzcGFuPlxuICAgICAgICAgICAgICAgICAgPG1hdC1pY29uPiBuYXZpZ2F0ZV9uZXh0IDwvbWF0LWljb24+XG4gICAgICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDwvbWF0LWxpc3QtaXRlbT5cbiAgICAgICAgICA8L21hdC1uYXYtbGlzdD5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDwhLS0gY29udGFjdCAtLT5cbiAgICAgICAgPGRpdiBjbGFzcz1cImJvcmRlciBib3JkZXItZ3JhcC00MDAgcm91bmRlZCBweC0zIHB0LTNcIj5cbiAgICAgICAgICA8ZGl2IGNsYXNzPVwicC0zIHRleHQteGxcIj7ogZTns7vmlrnlvI88L2Rpdj5cbiAgICAgICAgICA8bWF0LW5hdi1saXN0PlxuICAgICAgICAgICAgPG1hdC1saXN0LWl0ZW0gcm91dGVyTGluaz1cIi4uL2VtYWlsXCI+XG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmbGV4IGl0ZW1zLWNlbnRlciBqdXN0aWZ5LWJldHdlZW5cIj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmxleCBmbGV4LTEgaXRlbXMtY2VudGVyXCI+XG4gICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInctMjQgdGV4dC1zbSBmb250LXRoaW5cIj7pgq7nrrE8L3NwYW4+XG4gICAgICAgICAgICAgICAgICA8c3Bhbj57eyB1c2VyLmVtYWlsIHx8ICfmnKrorr7nva4nIH19PC9zcGFuPlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDwhLS0gPG1hdC1pY29uIG1hdC1saXN0LWljb24+YXJyb3dfZHJvcF9kb3duPC9tYXQtaWNvbj4gLS0+XG4gICAgICAgICAgICAgICAgPHNwYW4+XG4gICAgICAgICAgICAgICAgICA8bWF0LWljb24+IG5hdmlnYXRlX25leHQgPC9tYXQtaWNvbj5cbiAgICAgICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC9tYXQtbGlzdC1pdGVtPlxuICAgICAgICAgICAgPG1hdC1kaXZpZGVyIGNsYXNzPVwibXgtM1wiPjwvbWF0LWRpdmlkZXI+XG4gICAgICAgICAgICA8bWF0LWxpc3QtaXRlbSByb3V0ZXJMaW5rPVwiLi4vcGhvbmVcIj5cbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZsZXggaXRlbXMtY2VudGVyIGp1c3RpZnktYmV0d2VlblwiPlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmbGV4IGZsZXgtMSBpdGVtcy1jZW50ZXJcIj5cbiAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidy0yNCB0ZXh0LXNtIGZvbnQtdGhpblwiPueUteivnTwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgIDxzcGFuPnt7IHVzZXIucGhvbmUgfHwgJ+acquiuvue9ricgfX08L3NwYW4+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPCEtLSA8bWF0LWljb24gbWF0LWxpc3QtaWNvbj5hcnJvd19kcm9wX2Rvd248L21hdC1pY29uPiAtLT5cbiAgICAgICAgICAgICAgICA8c3Bhbj5cbiAgICAgICAgICAgICAgICAgIDxtYXQtaWNvbj4gbmF2aWdhdGVfbmV4dCA8L21hdC1pY29uPlxuICAgICAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8L21hdC1saXN0LWl0ZW0+XG4gICAgICAgICAgPC9tYXQtbmF2LWxpc3Q+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9kaXY+XG4gICAgfVxuICA8L2Rpdj5cbjwvZGl2PlxuIl19
45
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5mby5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXItYWNjb3VudC9zcmMvbGliL3BhZ2VzL215YWNjb3VudC9wZXJzb25hbC1pbmZvL2luZm8uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hbmd1bGFyLWFjY291bnQvc3JjL2xpYi9wYWdlcy9teWFjY291bnQvcGVyc29uYWwtaW5mby9pbmZvLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFVLE1BQU0sZUFBZSxDQUFDO0FBQzFELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUN6RCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMvRCxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUV6RixPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDckQsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ25ELE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLHlFQUF5RSxDQUFDOzs7Ozs7QUFTdEgsTUFBTSxPQUFPLGFBQWE7SUFQMUI7UUFTRSxvQkFBZSxHQUFHLE1BQU0sQ0FBQyxlQUFlLENBQUMsQ0FBQztRQUMxQyxXQUFNLEdBQUcsTUFBTSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBRTNCLFdBQU0sR0FBUSxVQUFVLENBQUM7S0FxQjFCO0lBbkJDLFFBQVE7UUFDTixJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxlQUFlLENBQUMsRUFBRSxFQUFFLENBQUM7UUFDdkMsSUFBSSxDQUFDLEtBQUssQ0FBQyxTQUFTLENBQUM7WUFDbkIsSUFBSSxFQUFFLENBQUMsSUFBSSxFQUFFLEVBQUU7Z0JBQ2IsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUM7WUFDbkIsQ0FBQztTQUNGLENBQUMsQ0FBQztJQUNMLENBQUM7SUFDRCxZQUFZO1FBQ1YsTUFBTSxTQUFTLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsMkJBQTJCLEVBQUU7WUFDOUQsSUFBSSxFQUFFO2dCQUNKLE1BQU0sRUFBRSxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU07YUFDekI7U0FDRixDQUFDLENBQUM7UUFDSCxTQUFTLENBQUMsV0FBVyxFQUFFLENBQUMsU0FBUyxDQUFDLENBQUMsTUFBTSxFQUFFLEVBQUU7WUFDM0MsT0FBTyxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsQ0FBQztZQUNwQixRQUFRLENBQUMsTUFBTSxFQUFFLENBQUM7UUFDcEIsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDOzhHQXpCVSxhQUFhO2tHQUFiLGFBQWEsaUZDaEIxQixxaUpBc0dBLHlERDNGWSxtQkFBbUIsK1FBQUUsdUJBQXVCLDJoQkFBRSxnQkFBZ0I7OzJGQUs3RCxhQUFhO2tCQVB6QixTQUFTO2lDQUNJLElBQUksV0FDUCxDQUFDLG1CQUFtQixFQUFFLHVCQUF1QixFQUFFLGdCQUFnQixDQUFDLFlBQy9ELHVCQUF1QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgaW5qZWN0LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEF1dGhVc2VyU2VydmljZSB9IGZyb20gJ0Byb2xhdGVjaC9hbmd1bGFyLWF1dGgnO1xuaW1wb3J0IHsgQW5ndWxhckNvbW1vbk1vZHVsZSB9IGZyb20gJ0Byb2xhdGVjaC9hbmd1bGFyLWNvbW1vbic7XG5pbXBvcnQgeyBBbmd1bGFyQ29tcG9uZW50c01vZHVsZSwgU3Bpbm5lckNvbXBvbmVudCB9IGZyb20gJ0Byb2xhdGVjaC9hbmd1bGFyLWNvbXBvbmVudHMnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgTWF0RGlhbG9nIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZGlhbG9nJztcbmltcG9ydCB7IFVzZXJHZW5kZXIgfSBmcm9tICcuLi8uLi8uLi9jb250YW50L3VzZXInO1xuaW1wb3J0IHsgQXZhdGFyVXBkYXRlRGlhbG9nQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vLi4vY29tcG9uZW50cy9hdmF0YXItdXBkYXRlLWRpYWxvZy9hdmF0YXItdXBkYXRlLWRpYWxvZy5jb21wb25lbnQnO1xuXG5AQ29tcG9uZW50KHtcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW0FuZ3VsYXJDb21tb25Nb2R1bGUsIEFuZ3VsYXJDb21wb25lbnRzTW9kdWxlLCBTcGlubmVyQ29tcG9uZW50XSxcbiAgc2VsZWN0b3I6ICdyb2xhdGVjaC1hY2NvdW50LWluZm8nLFxuICB0ZW1wbGF0ZVVybDogJy4vaW5mby5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2luZm8uY29tcG9uZW50LnNjc3MnXSxcbn0pXG5leHBvcnQgY2xhc3MgSW5mb0NvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIHVzZXIkITogT2JzZXJ2YWJsZTxhbnk+O1xuICBhdXRoVXNlclNlcnZpY2UgPSBpbmplY3QoQXV0aFVzZXJTZXJ2aWNlKTtcbiAgZGlhbG9nID0gaW5qZWN0KE1hdERpYWxvZyk7XG4gIHVzZXI6IGFueTtcbiAgZ2VuZGVyOiBhbnkgPSBVc2VyR2VuZGVyO1xuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMudXNlciQgPSB0aGlzLmF1dGhVc2VyU2VydmljZS5tZSgpO1xuICAgIHRoaXMudXNlciQuc3Vic2NyaWJlKHtcbiAgICAgIG5leHQ6ICh1c2VyKSA9PiB7XG4gICAgICAgIHRoaXMudXNlciA9IHVzZXI7XG4gICAgICB9LFxuICAgIH0pO1xuICB9XG4gIHVwZGF0ZUF2YXRhcigpIHtcbiAgICBjb25zdCBkaWFsb2dSZWYgPSB0aGlzLmRpYWxvZy5vcGVuKEF2YXRhclVwZGF0ZURpYWxvZ0NvbXBvbmVudCwge1xuICAgICAgZGF0YToge1xuICAgICAgICBhdmF0YXI6IHRoaXMudXNlci5hdmF0YXIsXG4gICAgICB9LFxuICAgIH0pO1xuICAgIGRpYWxvZ1JlZi5hZnRlckNsb3NlZCgpLnN1YnNjcmliZSgocmVzdWx0KSA9PiB7XG4gICAgICBjb25zb2xlLmxvZyhyZXN1bHQpO1xuICAgICAgbG9jYXRpb24ucmVsb2FkKCk7XG4gICAgfSk7XG4gIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJtYXgtdy1bMTEyMHB4XSBtLWF1dG9cIj5cbiAgPGRpdiBjbGFzcz1cIm1heC13LVs4MjBweF0gbS0zXCI+XG4gICAgPHJvbGF0ZWNoLXNwaW5uZXI+PC9yb2xhdGVjaC1zcGlubmVyPlxuICAgIEBpZiAodXNlcikge1xuICAgICAgPGRpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImZsZXggZmxleC1jb2wganVzdGlmeS1jZW50ZXIgaXRlbXMtY2VudGVyIHAtMyBtYi0xMlwiPlxuICAgICAgICAgIDxwIGNsYXNzPVwidGV4dC0zeGxcIj7kuKrkurrkv6Hmga88L3A+XG4gICAgICAgICAgPHAgY2xhc3M9XCJ0ZXh0LW1kXCI+55So5oi35L+h5oGv55qE5YWo6YOo5YaF5a65PC9wPlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImJvcmRlciBib3JkZXItZ3JhcC00MDAgcm91bmRlZCBweC0zIHB0LTMgbWItMTRcIj5cbiAgICAgICAgICA8ZGl2IGNsYXNzPVwicC0zIHRleHQteGxcIj7ln7rmnKzorr7nva48L2Rpdj5cbiAgICAgICAgICA8bWF0LW5hdi1saXN0PlxuICAgICAgICAgICAgPG1hdC1saXN0LWl0ZW0gKGNsaWNrKT1cInVwZGF0ZUF2YXRhcigpXCIgY2xhc3M9XCJoLTE2XCI+XG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmbGV4IGl0ZW1zLWNlbnRlciBqdXN0aWZ5LWJldHdlZW5cIj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmxleCBmbGV4LTEgaXRlbXMtY2VudGVyXCI+XG4gICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInctMjQgdGV4dC1zbSBmb250LXRoaW5cIj7lpLTlg488L3NwYW4+XG4gICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInctMjQgdGV4dC1zbVwiPui0puaIt+eahOWktOWDjzwvc3Bhbj5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICAgICAgICBjbGFzcz1cIm1yLTYgYmctb3JhbmdlLTYwMCB3LTkgaC05IHJvdW5kZWQtZnVsbCBjdXJzb3ItcG9pbnRlciBob3ZlcjpvdXRsaW5lLWdyYXktMjAwIG91dGxpbmUgb3V0bGluZS10cmFuc3BhcmVudCBvdXRsaW5lLTRcIlxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgIEBpZiAodXNlci5hdmF0YXIpIHtcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInctOSBoLTlcIj5cbiAgICAgICAgICAgICAgICAgICAgICA8aW1nIFtzcmNdPVwidXNlci5hdmF0YXJcIiBjbGFzcz1cInctOSBoLTkgcm91bmRlZC1mdWxsIG9iamVjdC1jb3ZlclwiIC8+XG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDwvbWF0LWxpc3QtaXRlbT5cbiAgICAgICAgICAgIDxtYXQtZGl2aWRlciBjbGFzcz1cIm14LTNcIj48L21hdC1kaXZpZGVyPlxuICAgICAgICAgICAgPG1hdC1saXN0LWl0ZW0gcm91dGVyTGluaz1cIi4uL3Byb2ZpbGVcIj5cbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZsZXggaXRlbXMtY2VudGVyIGp1c3RpZnktYmV0d2VlblwiPlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmbGV4IGZsZXgtMSBpdGVtcy1jZW50ZXJcIj5cbiAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidy0yNCB0ZXh0LXNtIGZvbnQtdGhpblwiPuWnk+WQjTwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgIDxzcGFuPnt7IHVzZXI/Lm5hbWUgfX08L3NwYW4+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPHNwYW4+XG4gICAgICAgICAgICAgICAgICA8bWF0LWljb24+IG5hdmlnYXRlX25leHQgPC9tYXQtaWNvbj5cbiAgICAgICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC9tYXQtbGlzdC1pdGVtPlxuICAgICAgICAgICAgPG1hdC1kaXZpZGVyIGNsYXNzPVwibXgtM1wiPjwvbWF0LWRpdmlkZXI+XG4gICAgICAgICAgICA8bWF0LWxpc3QtaXRlbSByb3V0ZXJMaW5rPVwiLi4vZ2VuZGVyXCI+XG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmbGV4IGl0ZW1zLWNlbnRlciBqdXN0aWZ5LWJldHdlZW5cIj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmxleCBmbGV4LTEgaXRlbXMtY2VudGVyXCI+XG4gICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInctMjQgdGV4dC1zbSBmb250LXRoaW5cIj7mgKfliKs8L3NwYW4+XG4gICAgICAgICAgICAgICAgICA8c3Bhbj57eyBnZW5kZXJbdXNlci5nZW5kZXJdIHx8ICfmnKrorr7nva4nIH19PC9zcGFuPlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDxzcGFuPlxuICAgICAgICAgICAgICAgICAgPG1hdC1pY29uPiBuYXZpZ2F0ZV9uZXh0IDwvbWF0LWljb24+XG4gICAgICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDwvbWF0LWxpc3QtaXRlbT5cbiAgICAgICAgICAgIDxtYXQtZGl2aWRlciBjbGFzcz1cIm14LTNcIj48L21hdC1kaXZpZGVyPlxuICAgICAgICAgICAgPG1hdC1saXN0LWl0ZW0gcm91dGVyTGluaz1cIi4uL3VzZXJuYW1lXCI+XG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmbGV4IGl0ZW1zLWNlbnRlciBqdXN0aWZ5LWJldHdlZW5cIj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmxleCBmbGV4LTEgaXRlbXMtY2VudGVyXCI+XG4gICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInctMjQgdGV4dC1zbSBmb250LXRoaW5cIj7nlKjmiLflkI08L3NwYW4+XG4gICAgICAgICAgICAgICAgICA8c3Bhbj57eyB1c2VyLnVzZXJuYW1lIH19PC9zcGFuPlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDxzcGFuPlxuICAgICAgICAgICAgICAgICAgPG1hdC1pY29uPiBuYXZpZ2F0ZV9uZXh0IDwvbWF0LWljb24+XG4gICAgICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDwvbWF0LWxpc3QtaXRlbT5cbiAgICAgICAgICA8L21hdC1uYXYtbGlzdD5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDwhLS0gY29udGFjdCAtLT5cbiAgICAgICAgPGRpdiBjbGFzcz1cImJvcmRlciBib3JkZXItZ3JhcC00MDAgcm91bmRlZCBweC0zIHB0LTNcIj5cbiAgICAgICAgICA8ZGl2IGNsYXNzPVwicC0zIHRleHQteGxcIj7ogZTns7vmlrnlvI88L2Rpdj5cbiAgICAgICAgICA8bWF0LW5hdi1saXN0PlxuICAgICAgICAgICAgPG1hdC1saXN0LWl0ZW0gcm91dGVyTGluaz1cIi4uL2VtYWlsXCI+XG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmbGV4IGl0ZW1zLWNlbnRlciBqdXN0aWZ5LWJldHdlZW5cIj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmxleCBmbGV4LTEgaXRlbXMtY2VudGVyXCI+XG4gICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInctMjQgdGV4dC1zbSBmb250LXRoaW5cIj7pgq7nrrE8L3NwYW4+XG4gICAgICAgICAgICAgICAgICA8c3Bhbj57eyB1c2VyLmVtYWlsIHx8ICfmnKrorr7nva4nIH19PC9zcGFuPlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDwhLS0gPG1hdC1pY29uIG1hdC1saXN0LWljb24+YXJyb3dfZHJvcF9kb3duPC9tYXQtaWNvbj4gLS0+XG4gICAgICAgICAgICAgICAgPHNwYW4+XG4gICAgICAgICAgICAgICAgICA8bWF0LWljb24+IG5hdmlnYXRlX25leHQgPC9tYXQtaWNvbj5cbiAgICAgICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC9tYXQtbGlzdC1pdGVtPlxuICAgICAgICAgICAgPG1hdC1kaXZpZGVyIGNsYXNzPVwibXgtM1wiPjwvbWF0LWRpdmlkZXI+XG4gICAgICAgICAgICA8bWF0LWxpc3QtaXRlbSByb3V0ZXJMaW5rPVwiLi4vcGhvbmVcIj5cbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZsZXggaXRlbXMtY2VudGVyIGp1c3RpZnktYmV0d2VlblwiPlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmbGV4IGZsZXgtMSBpdGVtcy1jZW50ZXJcIj5cbiAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidy0yNCB0ZXh0LXNtIGZvbnQtdGhpblwiPueUteivnTwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgIDxzcGFuPnt7IHVzZXIucGhvbmUgfHwgJ+acquiuvue9ricgfX08L3NwYW4+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPCEtLSA8bWF0LWljb24gbWF0LWxpc3QtaWNvbj5hcnJvd19kcm9wX2Rvd248L21hdC1pY29uPiAtLT5cbiAgICAgICAgICAgICAgICA8c3Bhbj5cbiAgICAgICAgICAgICAgICAgIDxtYXQtaWNvbj4gbmF2aWdhdGVfbmV4dCA8L21hdC1pY29uPlxuICAgICAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8L21hdC1saXN0LWl0ZW0+XG4gICAgICAgICAgPC9tYXQtbmF2LWxpc3Q+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9kaXY+XG4gICAgfVxuICA8L2Rpdj5cbjwvZGl2PlxuIl19
@@ -31,10 +31,10 @@ export class ProfileComponent extends BaseComponent {
31
31
  },
32
32
  });
33
33
  }
34
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: ProfileComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
35
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.0", type: ProfileComponent, isStandalone: true, selector: "rolatech-account-profile", usesInheritance: true, ngImport: i0, template: "<div class=\"max-w-[1120px] m-auto\">\n <div class=\"max-w-[820px] p-4\">\n <div class=\"flex flex-col justify-center items-center p-3 mb-12\">\n <p class=\"text-3xl\">\u4FEE\u6539\u59D3\u540D</p>\n <p class=\"text-md\">\u7528\u6237\u540D\u662F\u60A8\u5728\u672C\u7AD9\u7684\u7B80\u79F0, \u53EF\u4EE5\u662F\u771F\u5B9E\u59D3\u540D, \u4E5F\u53EF\u4EE5\u662F\u6635\u79F0</p>\n </div>\n <div class=\"flex flex-col\">\n <mat-form-field appearance=\"fill\">\n <input matInput [(ngModel)]=\"name\" />\n </mat-form-field>\n </div>\n <div class=\"flex justify-end items-center mt-3\">\n <button mat-button rolatechBackButton>\u53D6\u6D88</button>\n <button\n class=\"bg-orange-600 shadow shadow-gray-300 cursor-pointer w-20 p-2 text-white rounded text-center ml-3\"\n (click)=\"save()\"\n >\n \u4FDD\u5B58\n </button>\n </div>\n </div>\n</div>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: AngularCommonModule }, { kind: "directive", type: i1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: AngularComponentsModule }, { kind: "component", type: i2.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "component", type: i3.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i4.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "directive", type: BackButtonDirective, selector: "[rolatechBackButton]" }] }); }
34
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: ProfileComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
35
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.3", type: ProfileComponent, isStandalone: true, selector: "rolatech-account-profile", usesInheritance: true, ngImport: i0, template: "<div class=\"max-w-[1120px] m-auto\">\n <div class=\"max-w-[820px] p-4\">\n <div class=\"flex flex-col justify-center items-center p-3 mb-12\">\n <p class=\"text-3xl\">\u4FEE\u6539\u59D3\u540D</p>\n <p class=\"text-md\">\u7528\u6237\u540D\u662F\u60A8\u5728\u672C\u7AD9\u7684\u7B80\u79F0, \u53EF\u4EE5\u662F\u771F\u5B9E\u59D3\u540D, \u4E5F\u53EF\u4EE5\u662F\u6635\u79F0</p>\n </div>\n <div class=\"flex flex-col\">\n <mat-form-field appearance=\"fill\">\n <input matInput [(ngModel)]=\"name\" />\n </mat-form-field>\n </div>\n <div class=\"flex justify-end items-center mt-3\">\n <button mat-button rolatechBackButton>\u53D6\u6D88</button>\n <button\n class=\"bg-orange-600 shadow shadow-gray-300 cursor-pointer w-20 p-2 text-white rounded text-center ml-3\"\n (click)=\"save()\"\n >\n \u4FDD\u5B58\n </button>\n </div>\n </div>\n</div>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: AngularCommonModule }, { kind: "directive", type: i1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: AngularComponentsModule }, { kind: "component", type: i2.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "component", type: i3.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i4.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "directive", type: BackButtonDirective, selector: "[rolatechBackButton]" }] }); }
36
36
  }
37
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: ProfileComponent, decorators: [{
37
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: ProfileComponent, decorators: [{
38
38
  type: Component,
39
39
  args: [{ standalone: true, imports: [AngularCommonModule, AngularComponentsModule, BackButtonDirective], selector: 'rolatech-account-profile', template: "<div class=\"max-w-[1120px] m-auto\">\n <div class=\"max-w-[820px] p-4\">\n <div class=\"flex flex-col justify-center items-center p-3 mb-12\">\n <p class=\"text-3xl\">\u4FEE\u6539\u59D3\u540D</p>\n <p class=\"text-md\">\u7528\u6237\u540D\u662F\u60A8\u5728\u672C\u7AD9\u7684\u7B80\u79F0, \u53EF\u4EE5\u662F\u771F\u5B9E\u59D3\u540D, \u4E5F\u53EF\u4EE5\u662F\u6635\u79F0</p>\n </div>\n <div class=\"flex flex-col\">\n <mat-form-field appearance=\"fill\">\n <input matInput [(ngModel)]=\"name\" />\n </mat-form-field>\n </div>\n <div class=\"flex justify-end items-center mt-3\">\n <button mat-button rolatechBackButton>\u53D6\u6D88</button>\n <button\n class=\"bg-orange-600 shadow shadow-gray-300 cursor-pointer w-20 p-2 text-white rounded text-center ml-3\"\n (click)=\"save()\"\n >\n \u4FDD\u5B58\n </button>\n </div>\n </div>\n</div>\n" }]
40
40
  }] });
@@ -31,10 +31,10 @@ export class UsernameComponent extends BaseComponent {
31
31
  },
32
32
  });
33
33
  }
34
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: UsernameComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
35
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.0", type: UsernameComponent, isStandalone: true, selector: "rolatech-account-username", usesInheritance: true, ngImport: i0, template: "<div class=\"max-w-[1120px] m-auto\">\n <div class=\"max-w-[820px] p-4\">\n <div class=\"flex flex-col justify-center items-center p-3 mb-12\">\n <p class=\"text-3xl\">\u4FEE\u6539\u7528\u6237\u540D</p>\n <p class=\"text-md\">\u7528\u6237\u540D\u662F\u60A8\u5728\u672C\u7AD9\u7684\u552F\u4E00\u6807\u8BC6</p>\n </div>\n <div class=\"flex flex-col\">\n <mat-form-field appearance=\"fill\">\n <span matTextPrefix>&#64;</span>\n <input matInput [(ngModel)]=\"username\" />\n </mat-form-field>\n </div>\n <div class=\"flex justify-end items-center mt-3\">\n <button mat-button rolatechBackButton>\u53D6\u6D88</button>\n <button\n class=\"bg-orange-600 shadow shadow-gray-300 cursor-pointer w-20 p-2 text-white rounded text-center ml-3\"\n (click)=\"save()\"\n >\n \u4FDD\u5B58\n </button>\n </div>\n </div>\n</div>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: AngularCommonModule }, { kind: "directive", type: i1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: AngularComponentsModule }, { kind: "component", type: i2.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "component", type: i3.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i3.MatPrefix, selector: "[matPrefix], [matIconPrefix], [matTextPrefix]", inputs: ["matTextPrefix"] }, { kind: "directive", type: i4.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "directive", type: BackButtonDirective, selector: "[rolatechBackButton]" }], encapsulation: i0.ViewEncapsulation.None }); }
34
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: UsernameComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
35
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.3", type: UsernameComponent, isStandalone: true, selector: "rolatech-account-username", usesInheritance: true, ngImport: i0, template: "<div class=\"max-w-[1120px] m-auto\">\n <div class=\"max-w-[820px] p-4\">\n <div class=\"flex flex-col justify-center items-center p-3 mb-12\">\n <p class=\"text-3xl\">\u4FEE\u6539\u7528\u6237\u540D</p>\n <p class=\"text-md\">\u7528\u6237\u540D\u662F\u60A8\u5728\u672C\u7AD9\u7684\u552F\u4E00\u6807\u8BC6</p>\n </div>\n <div class=\"flex flex-col\">\n <mat-form-field appearance=\"fill\">\n <span matTextPrefix>&#64;</span>\n <input matInput [(ngModel)]=\"username\" />\n </mat-form-field>\n </div>\n <div class=\"flex justify-end items-center mt-3\">\n <button mat-button rolatechBackButton>\u53D6\u6D88</button>\n <button\n class=\"bg-orange-600 shadow shadow-gray-300 cursor-pointer w-20 p-2 text-white rounded text-center ml-3\"\n (click)=\"save()\"\n >\n \u4FDD\u5B58\n </button>\n </div>\n </div>\n</div>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: AngularCommonModule }, { kind: "directive", type: i1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: AngularComponentsModule }, { kind: "component", type: i2.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "component", type: i3.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i3.MatPrefix, selector: "[matPrefix], [matIconPrefix], [matTextPrefix]", inputs: ["matTextPrefix"] }, { kind: "directive", type: i4.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "directive", type: BackButtonDirective, selector: "[rolatechBackButton]" }], encapsulation: i0.ViewEncapsulation.None }); }
36
36
  }
37
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: UsernameComponent, decorators: [{
37
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: UsernameComponent, decorators: [{
38
38
  type: Component,
39
39
  args: [{ standalone: true, imports: [AngularCommonModule, AngularComponentsModule, BackButtonDirective], selector: 'rolatech-account-username', encapsulation: ViewEncapsulation.None, template: "<div class=\"max-w-[1120px] m-auto\">\n <div class=\"max-w-[820px] p-4\">\n <div class=\"flex flex-col justify-center items-center p-3 mb-12\">\n <p class=\"text-3xl\">\u4FEE\u6539\u7528\u6237\u540D</p>\n <p class=\"text-md\">\u7528\u6237\u540D\u662F\u60A8\u5728\u672C\u7AD9\u7684\u552F\u4E00\u6807\u8BC6</p>\n </div>\n <div class=\"flex flex-col\">\n <mat-form-field appearance=\"fill\">\n <span matTextPrefix>&#64;</span>\n <input matInput [(ngModel)]=\"username\" />\n </mat-form-field>\n </div>\n <div class=\"flex justify-end items-center mt-3\">\n <button mat-button rolatechBackButton>\u53D6\u6D88</button>\n <button\n class=\"bg-orange-600 shadow shadow-gray-300 cursor-pointer w-20 p-2 text-white rounded text-center ml-3\"\n (click)=\"save()\"\n >\n \u4FDD\u5B58\n </button>\n </div>\n </div>\n</div>\n" }]
40
40
  }] });
@@ -60,10 +60,10 @@ export class PhoneComponent extends BaseComponent {
60
60
  },
61
61
  });
62
62
  }
63
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: PhoneComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
64
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.0", type: PhoneComponent, isStandalone: true, selector: "rolatech-account-phone", usesInheritance: true, ngImport: i0, template: "<div>\n <div class=\"px-3 max-w-[1120px] m-auto\">\n <div class=\"flex items-center\">\n <div class=\"flex items-center justify-center w-11 h-11 cursor-pointer\" rolatechBackButton>\n <mat-icon>arrow_back</mat-icon>\n </div>\n <span class=\"text-xl font-medium\">\u4FEE\u6539\u624B\u673A\u53F7</span>\n </div>\n </div>\n <div class=\"px-4\">\n <mat-divider></mat-divider>\n </div>\n\n <div class=\"max-w-[1120px] m-auto px-6\">\n <p class=\"text-md my-3\">\u624B\u673A\u53F7\u662F\u60A8\u5728\u672C\u7AD9\u7684\u552F\u4E00\u6807\u8BC6, \u66F4\u6539\u540E\u5C06\u540C\u65F6\u66F4\u6539\u7B2C\u4E09\u65B9\u7ED1\u5B9A\u7684\u624B\u673A\u53F7</p>\n <div class=\"flex flex-col mt-3\">\n <mat-form-field appearance=\"fill\">\n <mat-label> \u624B\u673A\u53F7 </mat-label>\n <input matInput [(ngModel)]=\"phone\" required />\n </mat-form-field>\n <div class=\"flex justify-between items-start gap-3\">\n <mat-form-field appearance=\"fill\">\n <mat-label> \u9A8C\u8BC1\u7801 </mat-label>\n <input matInput [(ngModel)]=\"code\" required />\n </mat-form-field>\n <button\n (click)=\"sendSMSCode()\"\n [disabled]=\"countDown\"\n [ngClass]=\"countDown ? 'bg-orange-300' : 'bg-orange-600 shadow shadow-gray-300 cursor-pointer'\"\n class=\"w-[128px] p-2 mt-2 text-white rounded text-center\"\n >\n <span class=\"text-sm\">{{ showButtonText }}</span>\n </button>\n </div>\n </div>\n\n <div class=\"flex justify-end items-center mt-3\">\n <button mat-button rolatechBackButton>\u53D6\u6D88</button>\n <button\n class=\"bg-orange-600 shadow shadow-gray-300 cursor-pointer w-[128px] p-2 text-white rounded text-center ml-3\"\n (click)=\"save()\"\n >\n \u4FDD\u5B58\n </button>\n </div>\n </div>\n</div>\n", styles: ["mat-form-field{width:100%}\n"], dependencies: [{ kind: "ngmodule", type: AngularCommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: AngularComponentsModule }, { kind: "component", type: i3.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "component", type: i4.MatDivider, selector: "mat-divider", inputs: ["vertical", "inset"] }, { kind: "component", type: i5.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i6.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i6.MatLabel, selector: "mat-label" }, { kind: "directive", type: i7.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "directive", type: BackButtonDirective, selector: "[rolatechBackButton]" }] }); }
63
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: PhoneComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
64
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.3", type: PhoneComponent, isStandalone: true, selector: "rolatech-account-phone", usesInheritance: true, ngImport: i0, template: "<div>\n <div class=\"px-3 max-w-[1120px] m-auto\">\n <div class=\"flex items-center\">\n <div class=\"flex items-center justify-center w-11 h-11 cursor-pointer\" rolatechBackButton>\n <mat-icon>arrow_back</mat-icon>\n </div>\n <span class=\"text-xl font-medium\">\u4FEE\u6539\u624B\u673A\u53F7</span>\n </div>\n </div>\n <div class=\"px-4\">\n <mat-divider></mat-divider>\n </div>\n\n <div class=\"max-w-[1120px] m-auto px-6\">\n <p class=\"text-md my-3\">\u624B\u673A\u53F7\u662F\u60A8\u5728\u672C\u7AD9\u7684\u552F\u4E00\u6807\u8BC6, \u66F4\u6539\u540E\u5C06\u540C\u65F6\u66F4\u6539\u7B2C\u4E09\u65B9\u7ED1\u5B9A\u7684\u624B\u673A\u53F7</p>\n <div class=\"flex flex-col mt-3\">\n <mat-form-field appearance=\"fill\">\n <mat-label> \u624B\u673A\u53F7 </mat-label>\n <input matInput [(ngModel)]=\"phone\" required />\n </mat-form-field>\n <div class=\"flex justify-between items-start gap-3\">\n <mat-form-field appearance=\"fill\">\n <mat-label> \u9A8C\u8BC1\u7801 </mat-label>\n <input matInput [(ngModel)]=\"code\" required />\n </mat-form-field>\n <button\n (click)=\"sendSMSCode()\"\n [disabled]=\"countDown\"\n [ngClass]=\"countDown ? 'bg-orange-300' : 'bg-orange-600 shadow shadow-gray-300 cursor-pointer'\"\n class=\"w-[128px] p-2 mt-2 text-white rounded text-center\"\n >\n <span class=\"text-sm\">{{ showButtonText }}</span>\n </button>\n </div>\n </div>\n\n <div class=\"flex justify-end items-center mt-3\">\n <button mat-button rolatechBackButton>\u53D6\u6D88</button>\n <button\n class=\"bg-orange-600 shadow shadow-gray-300 cursor-pointer w-[128px] p-2 text-white rounded text-center ml-3\"\n (click)=\"save()\"\n >\n \u4FDD\u5B58\n </button>\n </div>\n </div>\n</div>\n", styles: ["mat-form-field{width:100%}\n"], dependencies: [{ kind: "ngmodule", type: AngularCommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: AngularComponentsModule }, { kind: "component", type: i3.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "component", type: i4.MatDivider, selector: "mat-divider", inputs: ["vertical", "inset"] }, { kind: "component", type: i5.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i6.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i6.MatLabel, selector: "mat-label" }, { kind: "directive", type: i7.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "directive", type: BackButtonDirective, selector: "[rolatechBackButton]" }] }); }
65
65
  }
66
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: PhoneComponent, decorators: [{
66
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: PhoneComponent, decorators: [{
67
67
  type: Component,
68
68
  args: [{ standalone: true, imports: [AngularCommonModule, AngularComponentsModule, BackButtonDirective], selector: 'rolatech-account-phone', template: "<div>\n <div class=\"px-3 max-w-[1120px] m-auto\">\n <div class=\"flex items-center\">\n <div class=\"flex items-center justify-center w-11 h-11 cursor-pointer\" rolatechBackButton>\n <mat-icon>arrow_back</mat-icon>\n </div>\n <span class=\"text-xl font-medium\">\u4FEE\u6539\u624B\u673A\u53F7</span>\n </div>\n </div>\n <div class=\"px-4\">\n <mat-divider></mat-divider>\n </div>\n\n <div class=\"max-w-[1120px] m-auto px-6\">\n <p class=\"text-md my-3\">\u624B\u673A\u53F7\u662F\u60A8\u5728\u672C\u7AD9\u7684\u552F\u4E00\u6807\u8BC6, \u66F4\u6539\u540E\u5C06\u540C\u65F6\u66F4\u6539\u7B2C\u4E09\u65B9\u7ED1\u5B9A\u7684\u624B\u673A\u53F7</p>\n <div class=\"flex flex-col mt-3\">\n <mat-form-field appearance=\"fill\">\n <mat-label> \u624B\u673A\u53F7 </mat-label>\n <input matInput [(ngModel)]=\"phone\" required />\n </mat-form-field>\n <div class=\"flex justify-between items-start gap-3\">\n <mat-form-field appearance=\"fill\">\n <mat-label> \u9A8C\u8BC1\u7801 </mat-label>\n <input matInput [(ngModel)]=\"code\" required />\n </mat-form-field>\n <button\n (click)=\"sendSMSCode()\"\n [disabled]=\"countDown\"\n [ngClass]=\"countDown ? 'bg-orange-300' : 'bg-orange-600 shadow shadow-gray-300 cursor-pointer'\"\n class=\"w-[128px] p-2 mt-2 text-white rounded text-center\"\n >\n <span class=\"text-sm\">{{ showButtonText }}</span>\n </button>\n </div>\n </div>\n\n <div class=\"flex justify-end items-center mt-3\">\n <button mat-button rolatechBackButton>\u53D6\u6D88</button>\n <button\n class=\"bg-orange-600 shadow shadow-gray-300 cursor-pointer w-[128px] p-2 text-white rounded text-center ml-3\"\n (click)=\"save()\"\n >\n \u4FDD\u5B58\n </button>\n </div>\n </div>\n</div>\n", styles: ["mat-form-field{width:100%}\n"] }]
69
69
  }] });
@@ -3,10 +3,10 @@ import { AngularCommonModule } from '@rolatech/angular-common';
3
3
  import { AngularComponentsModule } from '@rolatech/angular-components';
4
4
  import * as i0 from "@angular/core";
5
5
  export class SecurityFaceidComponent {
6
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: SecurityFaceidComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
7
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.0", type: SecurityFaceidComponent, isStandalone: true, selector: "rolatech-account-security-faceid", ngImport: i0, template: "<p>security-faceid works!</p>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: AngularCommonModule }, { kind: "ngmodule", type: AngularComponentsModule }] }); }
6
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: SecurityFaceidComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
7
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.3", type: SecurityFaceidComponent, isStandalone: true, selector: "rolatech-account-security-faceid", ngImport: i0, template: "<p>security-faceid works!</p>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: AngularCommonModule }, { kind: "ngmodule", type: AngularComponentsModule }] }); }
8
8
  }
9
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: SecurityFaceidComponent, decorators: [{
9
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: SecurityFaceidComponent, decorators: [{
10
10
  type: Component,
11
11
  args: [{ standalone: true, imports: [AngularCommonModule, AngularComponentsModule], selector: 'rolatech-account-security-faceid', template: "<p>security-faceid works!</p>\n" }]
12
12
  }] });
@@ -54,10 +54,10 @@ export class SecurityIndexComponent {
54
54
  },
55
55
  });
56
56
  }
57
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: SecurityIndexComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
58
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.0", type: SecurityIndexComponent, isStandalone: true, selector: "rolatech-account-security-index", ngImport: i0, template: "<div class=\"max-w-[1120px] m-auto\">\n <div class=\"max-w-[820px] m-3\">\n <div class=\"flex flex-col justify-center items-center p-3 mb-12\">\n <p class=\"text-3xl\">\u5B89\u5168\u8BBE\u7F6E</p>\n <p class=\"text-md\">\u7528\u6237\u4FE1\u606F\u7684\u5B89\u5168\u8BBE\u7F6E</p>\n </div>\n <div class=\"border border-grap-400 rounded px-3 pt-3\">\n <div class=\"p-3 text-xl\">\u57FA\u672C\u8BBE\u7F6E</div>\n <mat-nav-list>\n <mat-list-item (click)=\"faceId()\">\n <div class=\"flex items-center justify-between\">\n <span>\u5B9E\u540D\u8BA4\u8BC1</span>\n <!-- <mat-icon mat-list-icon>arrow_drop_down</mat-icon> -->\n @if (!verified) {\n <span class=\"mr-3\"> \u672A\u8BA4\u8BC1 </span>\n }\n @if (verified) {\n <a class=\"mr-3\"> \u5DF2\u8BA4\u8BC1 </a>\n }\n <!-- @if (bind) {\n <a class=\"mr-3\" (click)=\"disconnectWeChat()\"> \u89E3\u7ED1 </a>\n } -->\n </div>\n </mat-list-item>\n <mat-divider></mat-divider>\n <mat-list-item>\n <div class=\"flex items-center justify-between\">\n <span>\u5FAE\u4FE1\u7ED1\u5B9A</span>\n <!-- <mat-icon mat-list-icon>arrow_drop_down</mat-icon> -->\n @if (!bind) {\n <span class=\"mr-3\" (click)=\"connectWeChat()\"> \u7ED1\u5B9A </span>\n }\n @if (bind) {\n <a class=\"mr-3\"> \u5DF2\u7ED1\u5B9A </a>\n }\n <!-- @if (bind) {\n <a class=\"mr-3\" (click)=\"disconnectWeChat()\"> \u89E3\u7ED1 </a>\n } -->\n </div>\n </mat-list-item>\n <mat-divider></mat-divider>\n <mat-list-item routerLink=\"./password\">\n <div class=\"flex items-center justify-between\">\n <span>\u5BC6\u7801\u8BBE\u7F6E</span>\n <!-- <mat-icon mat-list-icon>arrow_drop_down</mat-icon> -->\n <span>\n <mat-icon> navigate_next </mat-icon>\n </span>\n </div>\n </mat-list-item>\n </mat-nav-list>\n </div>\n </div>\n</div>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: AngularCommonModule }, { kind: "directive", type: i1.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "ngmodule", type: AngularComponentsModule }, { kind: "component", type: i2.MatDivider, selector: "mat-divider", inputs: ["vertical", "inset"] }, { kind: "component", type: i3.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i4.MatNavList, selector: "mat-nav-list", exportAs: ["matNavList"] }, { kind: "component", type: i4.MatListItem, selector: "mat-list-item, a[mat-list-item], button[mat-list-item]", inputs: ["activated"], exportAs: ["matListItem"] }] }); }
57
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: SecurityIndexComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
58
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.3", type: SecurityIndexComponent, isStandalone: true, selector: "rolatech-account-security-index", ngImport: i0, template: "<div class=\"max-w-[1120px] m-auto\">\n <div class=\"max-w-[820px] m-3\">\n <div class=\"flex flex-col justify-center items-center p-3 mb-12\">\n <p class=\"text-3xl\">\u5B89\u5168\u8BBE\u7F6E</p>\n <p class=\"text-md\">\u7528\u6237\u4FE1\u606F\u7684\u5B89\u5168\u8BBE\u7F6E</p>\n </div>\n <div class=\"border border-grap-400 rounded px-3 pt-3\">\n <div class=\"p-3 text-xl\">\u57FA\u672C\u8BBE\u7F6E</div>\n <mat-nav-list>\n <mat-list-item (click)=\"faceId()\">\n <div class=\"flex items-center justify-between\">\n <span>\u5B9E\u540D\u8BA4\u8BC1</span>\n <!-- <mat-icon mat-list-icon>arrow_drop_down</mat-icon> -->\n @if (!verified) {\n <span class=\"mr-3\"> \u672A\u8BA4\u8BC1 </span>\n }\n @if (verified) {\n <a class=\"mr-3\"> \u5DF2\u8BA4\u8BC1 </a>\n }\n <!-- @if (bind) {\n <a class=\"mr-3\" (click)=\"disconnectWeChat()\"> \u89E3\u7ED1 </a>\n } -->\n </div>\n </mat-list-item>\n <mat-divider></mat-divider>\n <mat-list-item>\n <div class=\"flex items-center justify-between\">\n <span>\u5FAE\u4FE1\u7ED1\u5B9A</span>\n <!-- <mat-icon mat-list-icon>arrow_drop_down</mat-icon> -->\n @if (!bind) {\n <span class=\"mr-3\" (click)=\"connectWeChat()\"> \u7ED1\u5B9A </span>\n }\n @if (bind) {\n <a class=\"mr-3\"> \u5DF2\u7ED1\u5B9A </a>\n }\n <!-- @if (bind) {\n <a class=\"mr-3\" (click)=\"disconnectWeChat()\"> \u89E3\u7ED1 </a>\n } -->\n </div>\n </mat-list-item>\n <mat-divider></mat-divider>\n <mat-list-item routerLink=\"./password\">\n <div class=\"flex items-center justify-between\">\n <span>\u5BC6\u7801\u8BBE\u7F6E</span>\n <!-- <mat-icon mat-list-icon>arrow_drop_down</mat-icon> -->\n <span>\n <mat-icon> navigate_next </mat-icon>\n </span>\n </div>\n </mat-list-item>\n </mat-nav-list>\n </div>\n </div>\n</div>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: AngularCommonModule }, { kind: "directive", type: i1.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "ngmodule", type: AngularComponentsModule }, { kind: "component", type: i2.MatDivider, selector: "mat-divider", inputs: ["vertical", "inset"] }, { kind: "component", type: i3.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i4.MatNavList, selector: "mat-nav-list", exportAs: ["matNavList"] }, { kind: "component", type: i4.MatListItem, selector: "mat-list-item, a[mat-list-item], button[mat-list-item]", inputs: ["activated"], exportAs: ["matListItem"] }] }); }
59
59
  }
60
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: SecurityIndexComponent, decorators: [{
60
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: SecurityIndexComponent, decorators: [{
61
61
  type: Component,
62
62
  args: [{ standalone: true, imports: [AngularCommonModule, AngularComponentsModule], selector: 'rolatech-account-security-index', template: "<div class=\"max-w-[1120px] m-auto\">\n <div class=\"max-w-[820px] m-3\">\n <div class=\"flex flex-col justify-center items-center p-3 mb-12\">\n <p class=\"text-3xl\">\u5B89\u5168\u8BBE\u7F6E</p>\n <p class=\"text-md\">\u7528\u6237\u4FE1\u606F\u7684\u5B89\u5168\u8BBE\u7F6E</p>\n </div>\n <div class=\"border border-grap-400 rounded px-3 pt-3\">\n <div class=\"p-3 text-xl\">\u57FA\u672C\u8BBE\u7F6E</div>\n <mat-nav-list>\n <mat-list-item (click)=\"faceId()\">\n <div class=\"flex items-center justify-between\">\n <span>\u5B9E\u540D\u8BA4\u8BC1</span>\n <!-- <mat-icon mat-list-icon>arrow_drop_down</mat-icon> -->\n @if (!verified) {\n <span class=\"mr-3\"> \u672A\u8BA4\u8BC1 </span>\n }\n @if (verified) {\n <a class=\"mr-3\"> \u5DF2\u8BA4\u8BC1 </a>\n }\n <!-- @if (bind) {\n <a class=\"mr-3\" (click)=\"disconnectWeChat()\"> \u89E3\u7ED1 </a>\n } -->\n </div>\n </mat-list-item>\n <mat-divider></mat-divider>\n <mat-list-item>\n <div class=\"flex items-center justify-between\">\n <span>\u5FAE\u4FE1\u7ED1\u5B9A</span>\n <!-- <mat-icon mat-list-icon>arrow_drop_down</mat-icon> -->\n @if (!bind) {\n <span class=\"mr-3\" (click)=\"connectWeChat()\"> \u7ED1\u5B9A </span>\n }\n @if (bind) {\n <a class=\"mr-3\"> \u5DF2\u7ED1\u5B9A </a>\n }\n <!-- @if (bind) {\n <a class=\"mr-3\" (click)=\"disconnectWeChat()\"> \u89E3\u7ED1 </a>\n } -->\n </div>\n </mat-list-item>\n <mat-divider></mat-divider>\n <mat-list-item routerLink=\"./password\">\n <div class=\"flex items-center justify-between\">\n <span>\u5BC6\u7801\u8BBE\u7F6E</span>\n <!-- <mat-icon mat-list-icon>arrow_drop_down</mat-icon> -->\n <span>\n <mat-icon> navigate_next </mat-icon>\n </span>\n </div>\n </mat-list-item>\n </mat-nav-list>\n </div>\n </div>\n</div>\n" }]
63
63
  }], ctorParameters: () => [] });
@@ -40,10 +40,10 @@ export class SecurityPasswordComponent {
40
40
  },
41
41
  });
42
42
  }
43
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: SecurityPasswordComponent, deps: [{ token: i1.FormBuilder }, { token: i2.AuthService }, { token: i3.MatSnackBar }], target: i0.ɵɵFactoryTarget.Component }); }
44
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.0", type: SecurityPasswordComponent, isStandalone: true, selector: "rolatech-account-security-password", ngImport: i0, template: "<div>\n <div class=\"px-3 max-w-[1120px] m-auto\">\n <div class=\"flex items-center\">\n <div class=\"flex items-center justify-center w-11 h-11 cursor-pointer\" rolatechBackButton>\n <mat-icon>arrow_back</mat-icon>\n </div>\n <span class=\"text-xl font-medium\">\u4FEE\u6539\u5BC6\u7801</span>\n </div>\n </div>\n <div class=\"px-4\">\n <mat-divider></mat-divider>\n </div>\n</div>\n<div class=\"max-w-[1120px] m-auto px-6\">\n <p class=\"text-md my-3\">\u4FEE\u6539\u7528\u6237\u5BC6\u7801</p>\n <div class=\"mt-3\">\n <form [formGroup]=\"passwordForm\">\n <div class=\"flex flex-col\">\n <mat-form-field appearance=\"fill\">\n <mat-label> \u539F\u5BC6\u7801</mat-label>\n <input matInput type=\"password\" formControlName=\"oldPassword\" required />\n </mat-form-field>\n <mat-form-field appearance=\"fill\">\n <mat-label> \u65B0\u5BC6\u7801 </mat-label>\n <input matInput type=\"password\" formControlName=\"newPassword\" required />\n </mat-form-field>\n <mat-form-field appearance=\"fill\">\n <mat-label> \u65B0\u5BC6\u7801 </mat-label>\n <input matInput type=\"password\" formControlName=\"ne2Password\" required />\n </mat-form-field>\n </div>\n </form>\n <div class=\"flex justify-end items-center mt-3\">\n <button mat-button rolatechBackButton>\u53D6\u6D88</button>\n <button\n class=\"bg-orange-600 shadow shadow-gray-300 cursor-pointer w-[128px] p-2 text-white rounded text-center ml-3\"\n (click)=\"save()\"\n >\n \u4FDD\u5B58\n </button>\n </div>\n </div>\n</div>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: AngularCommonModule }, { kind: "directive", type: i1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "ngmodule", type: AngularComponentsModule }, { kind: "component", type: i4.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "component", type: i5.MatDivider, selector: "mat-divider", inputs: ["vertical", "inset"] }, { kind: "component", type: i6.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i7.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i7.MatLabel, selector: "mat-label" }, { kind: "directive", type: i8.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "directive", type: BackButtonDirective, selector: "[rolatechBackButton]" }] }); }
43
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: SecurityPasswordComponent, deps: [{ token: i1.FormBuilder }, { token: i2.AuthService }, { token: i3.MatSnackBar }], target: i0.ɵɵFactoryTarget.Component }); }
44
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.3", type: SecurityPasswordComponent, isStandalone: true, selector: "rolatech-account-security-password", ngImport: i0, template: "<div>\n <div class=\"px-3 max-w-[1120px] m-auto\">\n <div class=\"flex items-center\">\n <div class=\"flex items-center justify-center w-11 h-11 cursor-pointer\" rolatechBackButton>\n <mat-icon>arrow_back</mat-icon>\n </div>\n <span class=\"text-xl font-medium\">\u4FEE\u6539\u5BC6\u7801</span>\n </div>\n </div>\n <div class=\"px-4\">\n <mat-divider></mat-divider>\n </div>\n</div>\n<div class=\"max-w-[1120px] m-auto px-6\">\n <p class=\"text-md my-3\">\u4FEE\u6539\u7528\u6237\u5BC6\u7801</p>\n <div class=\"mt-3\">\n <form [formGroup]=\"passwordForm\">\n <div class=\"flex flex-col\">\n <mat-form-field appearance=\"fill\">\n <mat-label> \u539F\u5BC6\u7801</mat-label>\n <input matInput type=\"password\" formControlName=\"oldPassword\" required />\n </mat-form-field>\n <mat-form-field appearance=\"fill\">\n <mat-label> \u65B0\u5BC6\u7801 </mat-label>\n <input matInput type=\"password\" formControlName=\"newPassword\" required />\n </mat-form-field>\n <mat-form-field appearance=\"fill\">\n <mat-label> \u65B0\u5BC6\u7801 </mat-label>\n <input matInput type=\"password\" formControlName=\"ne2Password\" required />\n </mat-form-field>\n </div>\n </form>\n <div class=\"flex justify-end items-center mt-3\">\n <button mat-button rolatechBackButton>\u53D6\u6D88</button>\n <button\n class=\"bg-orange-600 shadow shadow-gray-300 cursor-pointer w-[128px] p-2 text-white rounded text-center ml-3\"\n (click)=\"save()\"\n >\n \u4FDD\u5B58\n </button>\n </div>\n </div>\n</div>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: AngularCommonModule }, { kind: "directive", type: i1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "ngmodule", type: AngularComponentsModule }, { kind: "component", type: i4.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "component", type: i5.MatDivider, selector: "mat-divider", inputs: ["vertical", "inset"] }, { kind: "component", type: i6.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i7.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i7.MatLabel, selector: "mat-label" }, { kind: "directive", type: i8.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "directive", type: BackButtonDirective, selector: "[rolatechBackButton]" }] }); }
45
45
  }
46
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: SecurityPasswordComponent, decorators: [{
46
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: SecurityPasswordComponent, decorators: [{
47
47
  type: Component,
48
48
  args: [{ standalone: true, imports: [AngularCommonModule, AngularComponentsModule, BackButtonDirective], selector: 'rolatech-account-security-password', template: "<div>\n <div class=\"px-3 max-w-[1120px] m-auto\">\n <div class=\"flex items-center\">\n <div class=\"flex items-center justify-center w-11 h-11 cursor-pointer\" rolatechBackButton>\n <mat-icon>arrow_back</mat-icon>\n </div>\n <span class=\"text-xl font-medium\">\u4FEE\u6539\u5BC6\u7801</span>\n </div>\n </div>\n <div class=\"px-4\">\n <mat-divider></mat-divider>\n </div>\n</div>\n<div class=\"max-w-[1120px] m-auto px-6\">\n <p class=\"text-md my-3\">\u4FEE\u6539\u7528\u6237\u5BC6\u7801</p>\n <div class=\"mt-3\">\n <form [formGroup]=\"passwordForm\">\n <div class=\"flex flex-col\">\n <mat-form-field appearance=\"fill\">\n <mat-label> \u539F\u5BC6\u7801</mat-label>\n <input matInput type=\"password\" formControlName=\"oldPassword\" required />\n </mat-form-field>\n <mat-form-field appearance=\"fill\">\n <mat-label> \u65B0\u5BC6\u7801 </mat-label>\n <input matInput type=\"password\" formControlName=\"newPassword\" required />\n </mat-form-field>\n <mat-form-field appearance=\"fill\">\n <mat-label> \u65B0\u5BC6\u7801 </mat-label>\n <input matInput type=\"password\" formControlName=\"ne2Password\" required />\n </mat-form-field>\n </div>\n </form>\n <div class=\"flex justify-end items-center mt-3\">\n <button mat-button rolatechBackButton>\u53D6\u6D88</button>\n <button\n class=\"bg-orange-600 shadow shadow-gray-300 cursor-pointer w-[128px] p-2 text-white rounded text-center ml-3\"\n (click)=\"save()\"\n >\n \u4FDD\u5B58\n </button>\n </div>\n </div>\n</div>\n" }]
49
49
  }], ctorParameters: () => [{ type: i1.FormBuilder }, { type: i2.AuthService }, { type: i3.MatSnackBar }] });