@rolatech/angular-account 17.1.1 → 17.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/esm2022/lib/components/avatar-update-dialog/avatar-update-dialog.component.mjs +7 -9
- package/esm2022/lib/components/forgot-password/forgot-password.component.mjs +3 -3
- package/esm2022/lib/components/login/login-wechat/login-wechat.component.mjs +3 -3
- package/esm2022/lib/components/logout/logout.component.mjs +3 -3
- package/esm2022/lib/components/passwordreset/passwordreset.component.mjs +3 -3
- package/esm2022/lib/components/topbar-login/topbar-login.component.mjs +9 -11
- package/esm2022/lib/pages/accounts/signin/signin.component.mjs +5 -5
- package/esm2022/lib/pages/accounts/signup/signup.component.mjs +3 -3
- package/esm2022/lib/pages/myaccount/email/email.component.mjs +3 -3
- package/esm2022/lib/pages/myaccount/email-verification/email-verification.component.mjs +3 -3
- package/esm2022/lib/pages/myaccount/gender/gender.component.mjs +3 -3
- package/esm2022/lib/pages/myaccount/home/home.component.mjs +3 -3
- package/esm2022/lib/pages/myaccount/personal-info/info.component.mjs +3 -3
- package/esm2022/lib/pages/myaccount/personal-info/profile/profile.component.mjs +3 -3
- package/esm2022/lib/pages/myaccount/personal-info/username/username.component.mjs +3 -3
- package/esm2022/lib/pages/myaccount/phone/phone.component.mjs +3 -3
- package/esm2022/lib/pages/myaccount/security/security-faceid/security-faceid.component.mjs +3 -3
- package/esm2022/lib/pages/myaccount/security/security-index/security-index.component.mjs +3 -3
- package/esm2022/lib/pages/myaccount/security/security-password/security-password.component.mjs +3 -3
- package/esm2022/lib/pages/myaccount/security/security-verification/security-verification.component.mjs +3 -3
- package/esm2022/lib/services/wechat-login.service.mjs +6 -6
- package/fesm2022/{rolatech-angular-account-email-verification.component-DZIf6jgD.mjs → rolatech-angular-account-email-verification.component-Yr6sqNmw.mjs} +4 -4
- package/fesm2022/{rolatech-angular-account-email-verification.component-DZIf6jgD.mjs.map → rolatech-angular-account-email-verification.component-Yr6sqNmw.mjs.map} +1 -1
- package/fesm2022/{rolatech-angular-account-email.component-PtXqxz7k.mjs → rolatech-angular-account-email.component-BJHAz8uK.mjs} +4 -4
- package/fesm2022/{rolatech-angular-account-email.component-PtXqxz7k.mjs.map → rolatech-angular-account-email.component-BJHAz8uK.mjs.map} +1 -1
- package/fesm2022/{rolatech-angular-account-gender.component-BoDIgSY6.mjs → rolatech-angular-account-gender.component-CS2hSvax.mjs} +4 -4
- package/fesm2022/{rolatech-angular-account-gender.component-BoDIgSY6.mjs.map → rolatech-angular-account-gender.component-CS2hSvax.mjs.map} +1 -1
- package/fesm2022/{rolatech-angular-account-home.component-at7zQWKX.mjs → rolatech-angular-account-home.component-Cc26-TjO.mjs} +4 -4
- package/fesm2022/{rolatech-angular-account-home.component-at7zQWKX.mjs.map → rolatech-angular-account-home.component-Cc26-TjO.mjs.map} +1 -1
- package/fesm2022/{rolatech-angular-account-info.component-CYSgtPnu.mjs → rolatech-angular-account-info.component-Bk-DhHtK.mjs} +10 -12
- package/fesm2022/rolatech-angular-account-info.component-Bk-DhHtK.mjs.map +1 -0
- package/fesm2022/{rolatech-angular-account-login.routes-CFKZiHz9.mjs → rolatech-angular-account-login.routes-DvmIiOwo.mjs} +5 -5
- package/fesm2022/{rolatech-angular-account-login.routes-CFKZiHz9.mjs.map → rolatech-angular-account-login.routes-DvmIiOwo.mjs.map} +1 -1
- package/fesm2022/{rolatech-angular-account-phone.component-DkoWLdMW.mjs → rolatech-angular-account-phone.component-DaSRdJam.mjs} +4 -4
- package/fesm2022/{rolatech-angular-account-phone.component-DkoWLdMW.mjs.map → rolatech-angular-account-phone.component-DaSRdJam.mjs.map} +1 -1
- package/fesm2022/{rolatech-angular-account-profile.component-BVzB-02E.mjs → rolatech-angular-account-profile.component-B_bSqz0X.mjs} +4 -4
- package/fesm2022/{rolatech-angular-account-profile.component-BVzB-02E.mjs.map → rolatech-angular-account-profile.component-B_bSqz0X.mjs.map} +1 -1
- package/fesm2022/{rolatech-angular-account-rolatech-angular-account-5xEl_6uf.mjs → rolatech-angular-account-rolatech-angular-account-D5W_Ag2w.mjs} +39 -41
- package/fesm2022/rolatech-angular-account-rolatech-angular-account-D5W_Ag2w.mjs.map +1 -0
- package/fesm2022/{rolatech-angular-account-security.routes-C4LeXJQd.mjs → rolatech-angular-account-security.routes-B9DWZw7I.mjs} +10 -10
- package/fesm2022/{rolatech-angular-account-security.routes-C4LeXJQd.mjs.map → rolatech-angular-account-security.routes-B9DWZw7I.mjs.map} +1 -1
- package/fesm2022/{rolatech-angular-account-username.component-BaCvzgyP.mjs → rolatech-angular-account-username.component-BDW_ZpOU.mjs} +4 -4
- package/fesm2022/{rolatech-angular-account-username.component-BaCvzgyP.mjs.map → rolatech-angular-account-username.component-BDW_ZpOU.mjs.map} +1 -1
- package/fesm2022/rolatech-angular-account.mjs +1 -1
- package/lib/components/avatar-update-dialog/avatar-update-dialog.component.d.ts +1 -2
- package/lib/components/topbar-login/topbar-login.component.d.ts +2 -2
- package/lib/services/wechat-login.service.d.ts +1 -2
- package/package.json +3 -3
- package/themes/_default.scss +1 -1
- package/fesm2022/rolatech-angular-account-info.component-CYSgtPnu.mjs.map +0 -1
- package/fesm2022/rolatech-angular-account-rolatech-angular-account-5xEl_6uf.mjs.map +0 -1
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
|
-
import { inject, PLATFORM_ID,
|
|
2
|
+
import { inject, PLATFORM_ID, input, Component, output, Injectable, HostListener, makeEnvironmentProviders } from '@angular/core';
|
|
3
3
|
import * as i1 from '@angular/common';
|
|
4
4
|
import { isPlatformBrowser, CommonModule } from '@angular/common';
|
|
5
5
|
import { APP_CONFIG, AngularCommonModule, WINDOW } from '@rolatech/angular-common';
|
|
@@ -19,34 +19,32 @@ class TopbarLoginComponent {
|
|
|
19
19
|
constructor() {
|
|
20
20
|
this.environment = inject(APP_CONFIG);
|
|
21
21
|
this.platformId = inject(PLATFORM_ID);
|
|
22
|
-
this.service = 'www';
|
|
22
|
+
this.service = input('www');
|
|
23
23
|
this.signinUrl = '';
|
|
24
24
|
this.signupUrl = this.environment.accountsUrl + '/signup';
|
|
25
|
-
this.logoutUrl = this.environment.accountsUrl + `/logout?service=${this.service}`;
|
|
25
|
+
this.logoutUrl = this.environment.accountsUrl + `/logout?service=${this.service()}`;
|
|
26
26
|
}
|
|
27
27
|
ngOnInit() {
|
|
28
28
|
if (isPlatformBrowser(this.platformId)) {
|
|
29
29
|
this.signinUrl = `${this.environment.accountsUrl}/signin?continue=` + window.location.href;
|
|
30
|
-
this.logoutUrl = this.environment.accountsUrl + `/logout?service=${this.service}&continue=` + window.location.origin;
|
|
30
|
+
this.logoutUrl = this.environment.accountsUrl + `/logout?service=${this.service()}&continue=` + window.location.origin;
|
|
31
31
|
}
|
|
32
32
|
}
|
|
33
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.
|
|
34
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "
|
|
33
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: TopbarLoginComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
34
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "17.3.0", type: TopbarLoginComponent, isStandalone: true, selector: "rolatech-account-topbar-login", inputs: { service: { classPropertyName: "service", publicName: "service", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: "<div class=\"flex\">\n <a class=\"inline-block sm:border border-black py-2 px-5 mr-2 cursor-pointer rounded-md\" [href]=\"signinUrl\"\n ><span>\u767B\u5F55</span></a\n >\n <a class=\"inline-block sm:border border-white py-2 px-5 text-white bg-orange-600 cursor-pointer rounded-md\" [href]=\"signupUrl\"\n ><span>\u6CE8\u518C</span></a\n >\n</div>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: CommonModule }] }); }
|
|
35
35
|
}
|
|
36
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.
|
|
36
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: TopbarLoginComponent, decorators: [{
|
|
37
37
|
type: Component,
|
|
38
38
|
args: [{ selector: 'rolatech-account-topbar-login', standalone: true, imports: [CommonModule], template: "<div class=\"flex\">\n <a class=\"inline-block sm:border border-black py-2 px-5 mr-2 cursor-pointer rounded-md\" [href]=\"signinUrl\"\n ><span>\u767B\u5F55</span></a\n >\n <a class=\"inline-block sm:border border-white py-2 px-5 text-white bg-orange-600 cursor-pointer rounded-md\" [href]=\"signupUrl\"\n ><span>\u6CE8\u518C</span></a\n >\n</div>\n" }]
|
|
39
|
-
}]
|
|
40
|
-
type: Input
|
|
41
|
-
}] } });
|
|
39
|
+
}] });
|
|
42
40
|
|
|
43
41
|
class ForgotPasswordComponent {
|
|
44
42
|
constructor() { }
|
|
45
43
|
ngOnInit() { }
|
|
46
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.
|
|
47
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.
|
|
44
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: ForgotPasswordComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
45
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.0", type: ForgotPasswordComponent, isStandalone: true, selector: "rolatech-account-forgot-password", ngImport: i0, template: "<p>forgot-password works!</p>\n", styles: [""] }); }
|
|
48
46
|
}
|
|
49
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.
|
|
47
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: ForgotPasswordComponent, decorators: [{
|
|
50
48
|
type: Component,
|
|
51
49
|
args: [{ selector: 'rolatech-account-forgot-password', standalone: true, template: "<p>forgot-password works!</p>\n" }]
|
|
52
50
|
}], ctorParameters: () => [] });
|
|
@@ -81,10 +79,10 @@ class LogoutComponent {
|
|
|
81
79
|
},
|
|
82
80
|
});
|
|
83
81
|
}
|
|
84
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.
|
|
85
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.
|
|
82
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: LogoutComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
83
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.0", type: LogoutComponent, isStandalone: true, selector: "rolatech-account-logout", ngImport: i0, template: "<p>Please waiting...</p>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: AngularCommonModule }, { kind: "ngmodule", type: AngularComponentsModule }] }); }
|
|
86
84
|
}
|
|
87
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.
|
|
85
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: LogoutComponent, decorators: [{
|
|
88
86
|
type: Component,
|
|
89
87
|
args: [{ standalone: true, imports: [AngularCommonModule, AngularComponentsModule], selector: 'rolatech-account-logout', template: "<p>Please waiting...</p>\n" }]
|
|
90
88
|
}] });
|
|
@@ -92,22 +90,22 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.3", ngImpor
|
|
|
92
90
|
class PasswordresetComponent {
|
|
93
91
|
constructor() { }
|
|
94
92
|
ngOnInit() { }
|
|
95
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.
|
|
96
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.
|
|
93
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: PasswordresetComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
94
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.0", type: PasswordresetComponent, isStandalone: true, selector: "rolatech-account-passwordreset", ngImport: i0, template: "<p>passwordreset works!</p>\n", styles: [""] }); }
|
|
97
95
|
}
|
|
98
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.
|
|
96
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: PasswordresetComponent, decorators: [{
|
|
99
97
|
type: Component,
|
|
100
98
|
args: [{ selector: 'rolatech-account-passwordreset', standalone: true, template: "<p>passwordreset works!</p>\n" }]
|
|
101
99
|
}], ctorParameters: () => [] });
|
|
102
100
|
|
|
103
101
|
class WeChatLoginService {
|
|
104
102
|
constructor() {
|
|
105
|
-
this.onWeChatLogin =
|
|
103
|
+
this.onWeChatLogin = output();
|
|
106
104
|
}
|
|
107
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.
|
|
108
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.
|
|
105
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: WeChatLoginService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
106
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: WeChatLoginService, providedIn: 'root' }); }
|
|
109
107
|
}
|
|
110
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.
|
|
108
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: WeChatLoginService, decorators: [{
|
|
111
109
|
type: Injectable,
|
|
112
110
|
args: [{
|
|
113
111
|
providedIn: 'root',
|
|
@@ -237,12 +235,12 @@ class SigninComponent extends BaseComponent {
|
|
|
237
235
|
const src = `${this.baseUrl}?appid=${this.appid}&response_type=code&self_redirect=true&scope=snsapi_login&href=${href}&redirect_uri=${encodedURI}&state=${this.state}#wechat_redirect`;
|
|
238
236
|
this.urlSafe = this.sanitizer.bypassSecurityTrustResourceUrl(src);
|
|
239
237
|
}
|
|
240
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.
|
|
241
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.
|
|
238
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: SigninComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
239
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.0", type: SigninComponent, isStandalone: true, selector: "rolatech-account-auth-signin", host: { listeners: { "window:message": "onLogin($event)" } }, usesInheritance: true, ngImport: i0, template: "<div class=\"h-full flex flex-col items-center sm:justify-center sm:bg-gray-100\">\n <div\n class=\"w-full p-8 lg:p-11 rounded-xl bg-white flex flex-col lg:flex-row justify-between xl:w-[800px] lg:w-[600px] sm:w-[600px]\"\n >\n <!-- header -->\n <div class=\"flex flex-col py-6\">\n <div class=\"text-3xl font-medium mb-3\">\u767B\u5F55</div>\n <div class=\"text-md\">\u4F7F\u7528\u62FC\u5C0F\u8BFE\u8D26\u53F7\u767B\u5F55</div>\n </div>\n <div>\n <!-- content -->\n <mat-tab-group mat-stretch-tabs=\"false\" mat-align-tabs=\"start\" (selectedTabChange)=\"onSelectedTabChange($event)\">\n <mat-tab label=\"\u8D26\u53F7\u5BC6\u7801\">\n <div class=\"pt-6\">\n <form [formGroup]=\"passrodForm\" class=\"flex flex-col\">\n <mat-form-field appearance=\"fill\">\n <mat-label> \u7528\u6237\u540D/\u624B\u673A\u53F7 </mat-label>\n <input matInput formControlName=\"account\" required />\n @if (passrodForm.controls['account'].touched && passrodForm.controls['account'].invalid) {\n <mat-error>\n @if (passrodForm.controls['account'].errors?.['required']) {\n <span>\u7528\u6237\u540D\u5FC5\u586B</span>\n }\n </mat-error>\n }\n </mat-form-field>\n <mat-form-field appearance=\"fill\">\n <mat-label> \u5BC6\u7801 </mat-label>\n <input autocomplete matInput formControlName=\"password\" type=\"password\" />\n @if (passrodForm.controls['password'].touched && passrodForm.controls['password'].invalid) {\n <mat-error>\n @if (passrodForm.controls['password'].errors?.['required']) {\n <span>\u8BF7\u8F93\u5165\u5BC6\u7801</span>\n }\n </mat-error>\n }\n </mat-form-field>\n </form>\n </div>\n </mat-tab>\n <mat-tab label=\"\u77ED\u4FE1\u9A8C\u8BC1\u7801\">\n <div class=\"pt-6\">\n <form [formGroup]=\"codeForm\" class=\"flex flex-col\">\n <mat-form-field appearance=\"fill\">\n <mat-label> \u624B\u673A\u53F7 </mat-label>\n <input autocomplete matInput formControlName=\"phone\" required />\n @if (codeForm.controls['phone'].touched && codeForm.controls['phone'].invalid) {\n <mat-error>\n @if (codeForm.controls['phone'].errors?.['required']) {\n <span> \u624B\u673A\u53F7\u5FC5\u586B</span>\n }\n @if (codeForm.controls['phone'].errors?.['pattern']) {\n <span> \u624B\u673A\u53F7\u683C\u5F0F\u9519\u8BEF </span>\n }\n </mat-error>\n }\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 formControlName=\"code\" type=\"text\" required />\n @if (codeForm.controls['code'].touched && codeForm.controls['code'].invalid) {\n <mat-error>\n @if (codeForm.controls['code'].errors?.['required']) {\n <span> \u8BF7\u8F93\u5165\u9A8C\u8BC1\u7801 </span>\n }\n </mat-error>\n }\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=\"max-w-[128px] p-3 mt-2 text-white rounded text-center\"\n >\n <span>{{ showButtonText }}</span>\n </button>\n </div>\n </form>\n </div>\n </mat-tab>\n <mat-tab label=\"\u5FAE\u4FE1\u626B\u7801\">\n <div class=\"py-6\">\n <div class=\"w-[190px] h-[190px] mx-auto\">\n @if (tabIndex === 2) {\n <iframe [src]=\"urlSafe\" class=\"w-full h-full inline\" scrolling=\"no\" frameBorder=\"no\" #iframe></iframe>\n <!-- <img [src]=\"urlSafe\" class=\"w-full h-full inline\" /> -->\n <div></div>\n }\n </div>\n </div>\n </mat-tab>\n </mat-tab-group>\n\n <!-- actions -->\n <div class=\"flex justify-between items-center py-2 pl-2\">\n <a class=\"underline underline-offset-4\" href=\"signup\">\u521B\u5EFA\u8D26\u53F7</a>\n <div\n (click)=\"login()\"\n class=\"cursor-pointer bg-orange-600 hover:bg-orange-700 w-[128px] p-3 shadow-gray-300 shadow hover:shadow-lg text-white rounded text-center\"\n >\n <span>\u767B\u5F55</span>\n </div>\n </div>\n </div>\n\n <!-- 3-part -->\n <!-- <div class=\"flex flex-col justify-center items-center mt-6\">\n <div class=\"flex items-center\">\n <span class=\"w-16 h-[1px] bg-gray-300\"></span>\n <span class=\"px-3\">\u7B2C\u4E09\u65B9\u767B\u5F55</span>\n <span class=\"w-16 h-[1px] bg-gray-300\"></span>\n </div>\n <div class=\"mt-3 flex items-center hover:shadow hover:shadow-gray-400 cursor-pointer p-3\">\n <img class=\"w-4 h-4\" src=\"assets/images/icon64_appwx_logo.png\" />\n <span class=\"ml-1\">\u5FAE\u4FE1</span>\n </div>\n </div> -->\n </div>\n</div>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: AngularCommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1$1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1$1.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$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$1.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i1$1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$1.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "ngmodule", type: AngularComponentsModule }, { kind: "component", type: i3.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i3.MatLabel, selector: "mat-label" }, { kind: "directive", type: i3.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { 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: "component", type: i5.MatTab, selector: "mat-tab", inputs: ["disabled", "label", "aria-label", "aria-labelledby", "labelClass", "bodyClass"], exportAs: ["matTab"] }, { kind: "component", type: i5.MatTabGroup, selector: "mat-tab-group", inputs: ["color", "fitInkBarToContent", "mat-stretch-tabs", "dynamicHeight", "selectedIndex", "headerPosition", "animationDuration", "contentTabIndex", "disablePagination", "disableRipple", "preserveContent", "backgroundColor"], outputs: ["selectedIndexChange", "focusChange", "animationDone", "selectedTabChange"], exportAs: ["matTabGroup"] }] }); }
|
|
242
240
|
}
|
|
243
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.
|
|
241
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: SigninComponent, decorators: [{
|
|
244
242
|
type: Component,
|
|
245
|
-
args: [{ standalone: true, imports: [AngularCommonModule, AngularComponentsModule], selector: 'rolatech-account-auth-signin', template: "<div class=\"h-full flex flex-col items-center sm:justify-center sm:bg-gray-100\">\n <div\n class=\"w-full p-8 lg:p-11 rounded-xl bg-white flex flex-col lg:flex-row justify-between xl:w-[800px] lg:w-[600px] sm:w-[600px]\"\n >\n <!-- header -->\n <div class=\"flex flex-col py-6\">\n <div class=\"text-3xl font-medium mb-3\">\u767B\u5F55</div>\n <div class=\"text-md\">\u4F7F\u7528\u62FC\u5C0F\u8BFE\u8D26\u53F7\u767B\u5F55</div>\n </div>\n <div>\n <!-- content -->\n <mat-tab-group mat-stretch-tabs=\"false\" mat-align-tabs=\"start\" (selectedTabChange)=\"onSelectedTabChange($event)\">\n <mat-tab label=\"\u8D26\u53F7\u5BC6\u7801\">\n <div class=\"pt-6\">\n <form [formGroup]=\"passrodForm\" class=\"flex flex-col\">\n <mat-form-field>\n <mat-label> \u7528\u6237\u540D/\u624B\u673A\u53F7 </mat-label>\n <input
|
|
243
|
+
args: [{ standalone: true, imports: [AngularCommonModule, AngularComponentsModule], selector: 'rolatech-account-auth-signin', template: "<div class=\"h-full flex flex-col items-center sm:justify-center sm:bg-gray-100\">\n <div\n class=\"w-full p-8 lg:p-11 rounded-xl bg-white flex flex-col lg:flex-row justify-between xl:w-[800px] lg:w-[600px] sm:w-[600px]\"\n >\n <!-- header -->\n <div class=\"flex flex-col py-6\">\n <div class=\"text-3xl font-medium mb-3\">\u767B\u5F55</div>\n <div class=\"text-md\">\u4F7F\u7528\u62FC\u5C0F\u8BFE\u8D26\u53F7\u767B\u5F55</div>\n </div>\n <div>\n <!-- content -->\n <mat-tab-group mat-stretch-tabs=\"false\" mat-align-tabs=\"start\" (selectedTabChange)=\"onSelectedTabChange($event)\">\n <mat-tab label=\"\u8D26\u53F7\u5BC6\u7801\">\n <div class=\"pt-6\">\n <form [formGroup]=\"passrodForm\" class=\"flex flex-col\">\n <mat-form-field appearance=\"fill\">\n <mat-label> \u7528\u6237\u540D/\u624B\u673A\u53F7 </mat-label>\n <input matInput formControlName=\"account\" required />\n @if (passrodForm.controls['account'].touched && passrodForm.controls['account'].invalid) {\n <mat-error>\n @if (passrodForm.controls['account'].errors?.['required']) {\n <span>\u7528\u6237\u540D\u5FC5\u586B</span>\n }\n </mat-error>\n }\n </mat-form-field>\n <mat-form-field appearance=\"fill\">\n <mat-label> \u5BC6\u7801 </mat-label>\n <input autocomplete matInput formControlName=\"password\" type=\"password\" />\n @if (passrodForm.controls['password'].touched && passrodForm.controls['password'].invalid) {\n <mat-error>\n @if (passrodForm.controls['password'].errors?.['required']) {\n <span>\u8BF7\u8F93\u5165\u5BC6\u7801</span>\n }\n </mat-error>\n }\n </mat-form-field>\n </form>\n </div>\n </mat-tab>\n <mat-tab label=\"\u77ED\u4FE1\u9A8C\u8BC1\u7801\">\n <div class=\"pt-6\">\n <form [formGroup]=\"codeForm\" class=\"flex flex-col\">\n <mat-form-field appearance=\"fill\">\n <mat-label> \u624B\u673A\u53F7 </mat-label>\n <input autocomplete matInput formControlName=\"phone\" required />\n @if (codeForm.controls['phone'].touched && codeForm.controls['phone'].invalid) {\n <mat-error>\n @if (codeForm.controls['phone'].errors?.['required']) {\n <span> \u624B\u673A\u53F7\u5FC5\u586B</span>\n }\n @if (codeForm.controls['phone'].errors?.['pattern']) {\n <span> \u624B\u673A\u53F7\u683C\u5F0F\u9519\u8BEF </span>\n }\n </mat-error>\n }\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 formControlName=\"code\" type=\"text\" required />\n @if (codeForm.controls['code'].touched && codeForm.controls['code'].invalid) {\n <mat-error>\n @if (codeForm.controls['code'].errors?.['required']) {\n <span> \u8BF7\u8F93\u5165\u9A8C\u8BC1\u7801 </span>\n }\n </mat-error>\n }\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=\"max-w-[128px] p-3 mt-2 text-white rounded text-center\"\n >\n <span>{{ showButtonText }}</span>\n </button>\n </div>\n </form>\n </div>\n </mat-tab>\n <mat-tab label=\"\u5FAE\u4FE1\u626B\u7801\">\n <div class=\"py-6\">\n <div class=\"w-[190px] h-[190px] mx-auto\">\n @if (tabIndex === 2) {\n <iframe [src]=\"urlSafe\" class=\"w-full h-full inline\" scrolling=\"no\" frameBorder=\"no\" #iframe></iframe>\n <!-- <img [src]=\"urlSafe\" class=\"w-full h-full inline\" /> -->\n <div></div>\n }\n </div>\n </div>\n </mat-tab>\n </mat-tab-group>\n\n <!-- actions -->\n <div class=\"flex justify-between items-center py-2 pl-2\">\n <a class=\"underline underline-offset-4\" href=\"signup\">\u521B\u5EFA\u8D26\u53F7</a>\n <div\n (click)=\"login()\"\n class=\"cursor-pointer bg-orange-600 hover:bg-orange-700 w-[128px] p-3 shadow-gray-300 shadow hover:shadow-lg text-white rounded text-center\"\n >\n <span>\u767B\u5F55</span>\n </div>\n </div>\n </div>\n\n <!-- 3-part -->\n <!-- <div class=\"flex flex-col justify-center items-center mt-6\">\n <div class=\"flex items-center\">\n <span class=\"w-16 h-[1px] bg-gray-300\"></span>\n <span class=\"px-3\">\u7B2C\u4E09\u65B9\u767B\u5F55</span>\n <span class=\"w-16 h-[1px] bg-gray-300\"></span>\n </div>\n <div class=\"mt-3 flex items-center hover:shadow hover:shadow-gray-400 cursor-pointer p-3\">\n <img class=\"w-4 h-4\" src=\"assets/images/icon64_appwx_logo.png\" />\n <span class=\"ml-1\">\u5FAE\u4FE1</span>\n </div>\n </div> -->\n </div>\n</div>\n" }]
|
|
246
244
|
}], propDecorators: { onLogin: [{
|
|
247
245
|
type: HostListener,
|
|
248
246
|
args: ['window:message', ['$event']]
|
|
@@ -312,10 +310,10 @@ class SignupComponent extends BaseComponent {
|
|
|
312
310
|
},
|
|
313
311
|
});
|
|
314
312
|
}
|
|
315
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.
|
|
316
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.
|
|
313
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: SignupComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
314
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.0", type: SignupComponent, isStandalone: true, selector: "rolatech-account-signup", usesInheritance: true, ngImport: i0, template: "<div class=\"h-full flex flex-col md:justify-center items-center\">\n <div class=\"md:shadow-md p-8 rounded-md\">\n <div class=\"text-2xl pl-2 pb-6\">\u6CE8\u518C</div>\n <form [formGroup]=\"signupForm\" (submit)=\"submit()\">\n <!-- name -->\n <mat-form-field appearance=\"fill\">\n <mat-label> \u59D3\u540D </mat-label>\n <input matInput formControlName=\"name\" required />\n @if (signupForm.controls['name'].touched && signupForm.controls['name'].invalid) {\n <mat-error>\n @if (signupForm.controls['name'].errors?.['required']) {\n <span>\u59D3\u540D\u5FC5\u586B</span>\n }\n </mat-error>\n }\n </mat-form-field>\n <!-- phone -->\n <mat-form-field appearance=\"fill\">\n <mat-label> \u624B\u673A\u53F7 </mat-label>\n <input matInput formControlName=\"phone\" required />\n @if (signupForm.controls['phone'].touched && signupForm.controls['phone'].invalid) {\n <mat-error>\n @if (signupForm.controls['phone'].errors?.['required']) {\n <span>\u624B\u673A\u53F7\u5FC5\u586B</span>\n }\n @if (signupForm.controls['phone'].errors?.['pattern']) {\n <span> \u624B\u673A\u53F7\u683C\u5F0F\u9519\u8BEF </span>\n }\n </mat-error>\n }\n </mat-form-field>\n <!-- phone code -->\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 formControlName=\"code\" required />\n @if (signupForm.controls['code'].touched && signupForm.controls['code'].invalid) {\n <mat-error>\n @if (signupForm.controls['code'].errors?.['required']) {\n <span>\u9A8C\u8BC1\u7801\u5FC5\u586B</span>\n }\n </mat-error>\n }\n </mat-form-field>\n <div\n (click)=\"sendSMSCode()\"\n class=\"cursor-pointer bg-orange-600 hover:bg-orange-700 w-[128px] p-3 mt-2 shadow-gray-300 shadow hover:shadow-lg text-white rounded text-center\"\n >\n <span>\u53D1\u9001\u9A8C\u8BC1\u7801</span>\n </div>\n </div>\n\n <!-- password -->\n <mat-form-field appearance=\"fill\">\n <mat-label> \u5BC6\u7801 </mat-label>\n <input matInput formControlName=\"password\" type=\"password\" autocomplete=\"password\" />\n @if (signupForm.controls['password'].touched && signupForm.controls['password'].invalid) {\n <mat-error>\n @if (signupForm.controls['password'].errors?.['required']) {\n <span>\u8BF7\u8F93\u5165\u5BC6\u7801</span>\n }\n </mat-error>\n }\n </mat-form-field>\n\n <!-- password confirm -->\n <mat-form-field appearance=\"fill\">\n <mat-label> \u786E\u8BA4\u5BC6\u7801 </mat-label>\n <input matInput formControlName=\"rePassword\" type=\"password\" autocomplete=\"rePassword\" />\n @if (signupForm.controls['rePassword'].touched && signupForm.controls['rePassword'].invalid) {\n <mat-error>\n @if (signupForm.controls['rePassword'].errors?.['required']) {\n <span>\u8BF7\u786E\u8BA4\u5BC6\u7801</span>\n }\n </mat-error>\n }\n </mat-form-field>\n </form>\n <div class=\"flex justify-between items-center px-3\">\n <a mat-button href=\"/signin\">\u767B\u5F55</a>\n <div\n (click)=\"submit()\"\n class=\"cursor-pointer bg-orange-600 hover:bg-orange-700 w-[128px] p-3 shadow-gray-300 shadow hover:shadow-lg text-white rounded text-center\"\n >\n <span>\u6CE8\u518C</span>\n </div>\n </div>\n </div>\n</div>\n", styles: ["mat-form-field{width:100%;margin-bottom:8px}\n"], dependencies: [{ kind: "ngmodule", type: AngularCommonModule }, { kind: "directive", type: i1$1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1$1.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$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$1.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i1$1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$1.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "ngmodule", type: AngularComponentsModule }, { kind: "component", type: i2.MatAnchor, selector: "a[mat-button], a[mat-raised-button], a[mat-flat-button], a[mat-stroked-button]", exportAs: ["matButton", "matAnchor"] }, { kind: "component", type: i3.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i3.MatLabel, selector: "mat-label" }, { kind: "directive", type: i3.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { 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"] }] }); }
|
|
317
315
|
}
|
|
318
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.
|
|
316
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: SignupComponent, decorators: [{
|
|
319
317
|
type: Component,
|
|
320
318
|
args: [{ standalone: true, imports: [AngularCommonModule, AngularComponentsModule], selector: 'rolatech-account-signup', template: "<div class=\"h-full flex flex-col md:justify-center items-center\">\n <div class=\"md:shadow-md p-8 rounded-md\">\n <div class=\"text-2xl pl-2 pb-6\">\u6CE8\u518C</div>\n <form [formGroup]=\"signupForm\" (submit)=\"submit()\">\n <!-- name -->\n <mat-form-field appearance=\"fill\">\n <mat-label> \u59D3\u540D </mat-label>\n <input matInput formControlName=\"name\" required />\n @if (signupForm.controls['name'].touched && signupForm.controls['name'].invalid) {\n <mat-error>\n @if (signupForm.controls['name'].errors?.['required']) {\n <span>\u59D3\u540D\u5FC5\u586B</span>\n }\n </mat-error>\n }\n </mat-form-field>\n <!-- phone -->\n <mat-form-field appearance=\"fill\">\n <mat-label> \u624B\u673A\u53F7 </mat-label>\n <input matInput formControlName=\"phone\" required />\n @if (signupForm.controls['phone'].touched && signupForm.controls['phone'].invalid) {\n <mat-error>\n @if (signupForm.controls['phone'].errors?.['required']) {\n <span>\u624B\u673A\u53F7\u5FC5\u586B</span>\n }\n @if (signupForm.controls['phone'].errors?.['pattern']) {\n <span> \u624B\u673A\u53F7\u683C\u5F0F\u9519\u8BEF </span>\n }\n </mat-error>\n }\n </mat-form-field>\n <!-- phone code -->\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 formControlName=\"code\" required />\n @if (signupForm.controls['code'].touched && signupForm.controls['code'].invalid) {\n <mat-error>\n @if (signupForm.controls['code'].errors?.['required']) {\n <span>\u9A8C\u8BC1\u7801\u5FC5\u586B</span>\n }\n </mat-error>\n }\n </mat-form-field>\n <div\n (click)=\"sendSMSCode()\"\n class=\"cursor-pointer bg-orange-600 hover:bg-orange-700 w-[128px] p-3 mt-2 shadow-gray-300 shadow hover:shadow-lg text-white rounded text-center\"\n >\n <span>\u53D1\u9001\u9A8C\u8BC1\u7801</span>\n </div>\n </div>\n\n <!-- password -->\n <mat-form-field appearance=\"fill\">\n <mat-label> \u5BC6\u7801 </mat-label>\n <input matInput formControlName=\"password\" type=\"password\" autocomplete=\"password\" />\n @if (signupForm.controls['password'].touched && signupForm.controls['password'].invalid) {\n <mat-error>\n @if (signupForm.controls['password'].errors?.['required']) {\n <span>\u8BF7\u8F93\u5165\u5BC6\u7801</span>\n }\n </mat-error>\n }\n </mat-form-field>\n\n <!-- password confirm -->\n <mat-form-field appearance=\"fill\">\n <mat-label> \u786E\u8BA4\u5BC6\u7801 </mat-label>\n <input matInput formControlName=\"rePassword\" type=\"password\" autocomplete=\"rePassword\" />\n @if (signupForm.controls['rePassword'].touched && signupForm.controls['rePassword'].invalid) {\n <mat-error>\n @if (signupForm.controls['rePassword'].errors?.['required']) {\n <span>\u8BF7\u786E\u8BA4\u5BC6\u7801</span>\n }\n </mat-error>\n }\n </mat-form-field>\n </form>\n <div class=\"flex justify-between items-center px-3\">\n <a mat-button href=\"/signin\">\u767B\u5F55</a>\n <div\n (click)=\"submit()\"\n class=\"cursor-pointer bg-orange-600 hover:bg-orange-700 w-[128px] p-3 shadow-gray-300 shadow hover:shadow-lg text-white rounded text-center\"\n >\n <span>\u6CE8\u518C</span>\n </div>\n </div>\n </div>\n</div>\n", styles: ["mat-form-field{width:100%;margin-bottom:8px}\n"] }]
|
|
321
319
|
}] });
|
|
@@ -329,7 +327,7 @@ const accountRoutes = [
|
|
|
329
327
|
{ path: 'signin', canActivate: [AuthGuard], component: SigninComponent, data: { title: 'Signin' } },
|
|
330
328
|
{ path: 'signup', component: SignupComponent, data: { title: 'Signup' } },
|
|
331
329
|
{ path: 'logout', component: LogoutComponent },
|
|
332
|
-
{ path: 'login', loadChildren: () => import('./rolatech-angular-account-login.routes-
|
|
330
|
+
{ path: 'login', loadChildren: () => import('./rolatech-angular-account-login.routes-DvmIiOwo.mjs') },
|
|
333
331
|
{
|
|
334
332
|
path: 'passwordreset/:token',
|
|
335
333
|
component: PasswordresetComponent,
|
|
@@ -353,31 +351,31 @@ const accountRoutes = [
|
|
|
353
351
|
const myaccountRoutes = [
|
|
354
352
|
{
|
|
355
353
|
path: '',
|
|
356
|
-
loadComponent: () => import('./rolatech-angular-account-home.component-
|
|
354
|
+
loadComponent: () => import('./rolatech-angular-account-home.component-Cc26-TjO.mjs').then((c) => c.HomeComponent),
|
|
357
355
|
data: { title: '首页' },
|
|
358
356
|
},
|
|
359
357
|
{
|
|
360
358
|
path: 'personal-info',
|
|
361
|
-
loadComponent: () => import('./rolatech-angular-account-info.component-
|
|
359
|
+
loadComponent: () => import('./rolatech-angular-account-info.component-Bk-DhHtK.mjs').then((c) => c.InfoComponent),
|
|
362
360
|
},
|
|
363
361
|
{
|
|
364
362
|
path: 'profile',
|
|
365
|
-
loadComponent: () => import('./rolatech-angular-account-profile.component-
|
|
363
|
+
loadComponent: () => import('./rolatech-angular-account-profile.component-B_bSqz0X.mjs').then((c) => c.ProfileComponent),
|
|
366
364
|
},
|
|
367
365
|
{
|
|
368
366
|
path: 'username',
|
|
369
|
-
loadComponent: () => import('./rolatech-angular-account-username.component-
|
|
367
|
+
loadComponent: () => import('./rolatech-angular-account-username.component-BDW_ZpOU.mjs').then((c) => c.UsernameComponent),
|
|
370
368
|
},
|
|
371
|
-
{ path: 'gender', loadComponent: () => import('./rolatech-angular-account-gender.component-
|
|
372
|
-
{ path: 'email', loadComponent: () => import('./rolatech-angular-account-email.component-
|
|
369
|
+
{ path: 'gender', loadComponent: () => import('./rolatech-angular-account-gender.component-CS2hSvax.mjs').then((c) => c.GenderComponent) },
|
|
370
|
+
{ path: 'email', loadComponent: () => import('./rolatech-angular-account-email.component-BJHAz8uK.mjs').then((c) => c.EmailComponent) },
|
|
373
371
|
{
|
|
374
372
|
path: 'email-verification/:id',
|
|
375
|
-
loadComponent: () => import('./rolatech-angular-account-email-verification.component-
|
|
373
|
+
loadComponent: () => import('./rolatech-angular-account-email-verification.component-Yr6sqNmw.mjs').then((c) => c.EmailVerificationComponent),
|
|
376
374
|
},
|
|
377
|
-
{ path: 'phone', loadComponent: () => import('./rolatech-angular-account-phone.component-
|
|
375
|
+
{ path: 'phone', loadComponent: () => import('./rolatech-angular-account-phone.component-DaSRdJam.mjs').then((c) => c.PhoneComponent) },
|
|
378
376
|
{
|
|
379
377
|
path: 'security',
|
|
380
|
-
loadChildren: () => import('./rolatech-angular-account-security.routes-
|
|
378
|
+
loadChildren: () => import('./rolatech-angular-account-security.routes-B9DWZw7I.mjs'),
|
|
381
379
|
data: { title: 'Security' },
|
|
382
380
|
},
|
|
383
381
|
{
|
|
@@ -403,4 +401,4 @@ function provideAngularAuthRoutes() {
|
|
|
403
401
|
*/
|
|
404
402
|
|
|
405
403
|
export { TopbarLoginComponent as T, WeChatLoginService as W, accountRoutes as a, myaccountRoutes as m, provideAngularAuthRoutes as p };
|
|
406
|
-
//# sourceMappingURL=rolatech-angular-account-rolatech-angular-account-
|
|
404
|
+
//# sourceMappingURL=rolatech-angular-account-rolatech-angular-account-D5W_Ag2w.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"rolatech-angular-account-rolatech-angular-account-D5W_Ag2w.mjs","sources":["../../../../libs/angular-account/src/lib/components/topbar-login/topbar-login.component.ts","../../../../libs/angular-account/src/lib/components/topbar-login/topbar-login.component.html","../../../../libs/angular-account/src/lib/components/forgot-password/forgot-password.component.ts","../../../../libs/angular-account/src/lib/components/forgot-password/forgot-password.component.html","../../../../libs/angular-account/src/lib/components/logout/logout.component.ts","../../../../libs/angular-account/src/lib/components/logout/logout.component.html","../../../../libs/angular-account/src/lib/components/passwordreset/passwordreset.component.ts","../../../../libs/angular-account/src/lib/components/passwordreset/passwordreset.component.html","../../../../libs/angular-account/src/lib/services/wechat-login.service.ts","../../../../libs/angular-account/src/lib/pages/accounts/signin/signin.component.ts","../../../../libs/angular-account/src/lib/pages/accounts/signin/signin.component.html","../../../../libs/angular-account/src/lib/pages/accounts/signup/signup.component.ts","../../../../libs/angular-account/src/lib/pages/accounts/signup/signup.component.html","../../../../libs/angular-account/src/lib/account.routes.ts","../../../../libs/angular-account/src/lib/myaccount.routes.ts","../../../../libs/angular-account/src/provider.ts","../../../../libs/angular-account/src/rolatech-angular-account.ts"],"sourcesContent":["import { Component, OnInit, PLATFORM_ID, inject, input } from '@angular/core';\nimport { CommonModule, isPlatformBrowser } from '@angular/common';\nimport { APP_CONFIG } from '@rolatech/angular-common';\n\n@Component({\n selector: 'rolatech-account-topbar-login',\n standalone: true,\n imports: [CommonModule],\n templateUrl: './topbar-login.component.html',\n styleUrl: './topbar-login.component.scss',\n})\nexport class TopbarLoginComponent implements OnInit {\n environment = inject(APP_CONFIG);\n platformId = inject(PLATFORM_ID);\n service = input('www');\n signinUrl = '';\n signupUrl = this.environment.accountsUrl + '/signup';\n logoutUrl = this.environment.accountsUrl + `/logout?service=${this.service()}`;\n ngOnInit(): void {\n if (isPlatformBrowser(this.platformId)) {\n this.signinUrl = `${this.environment.accountsUrl}/signin?continue=` + window.location.href;\n this.logoutUrl = this.environment.accountsUrl + `/logout?service=${this.service()}&continue=` + window.location.origin;\n }\n }\n}\n","<div class=\"flex\">\n <a class=\"inline-block sm:border border-black py-2 px-5 mr-2 cursor-pointer rounded-md\" [href]=\"signinUrl\"\n ><span>登录</span></a\n >\n <a class=\"inline-block sm:border border-white py-2 px-5 text-white bg-orange-600 cursor-pointer rounded-md\" [href]=\"signupUrl\"\n ><span>注册</span></a\n >\n</div>\n","import { Component, OnInit } from '@angular/core';\n\n@Component({\n selector: 'rolatech-account-forgot-password',\n templateUrl: './forgot-password.component.html',\n styleUrls: ['./forgot-password.component.scss'],\n standalone: true,\n})\nexport class ForgotPasswordComponent implements OnInit {\n constructor() {}\n\n ngOnInit(): void {}\n}\n","<p>forgot-password works!</p>\n","import { isPlatformBrowser } from '@angular/common';\nimport { Component, inject, OnInit, PLATFORM_ID } from '@angular/core';\nimport { MatSnackBar } from '@angular/material/snack-bar';\nimport { ActivatedRoute, Router } from '@angular/router';\nimport { AuthService } from '@rolatech/angular-auth';\nimport { APP_CONFIG, AngularCommonModule } from '@rolatech/angular-common';\nimport { AngularComponentsModule } from '@rolatech/angular-components';\nimport { map, take } from 'rxjs';\n\n@Component({\n standalone: true,\n imports: [AngularCommonModule, AngularComponentsModule],\n selector: 'rolatech-account-logout',\n templateUrl: './logout.component.html',\n styleUrls: ['./logout.component.scss'],\n})\nexport class LogoutComponent implements OnInit {\n service = '';\n continue = '';\n environment = inject(APP_CONFIG);\n platformId = inject(PLATFORM_ID);\n route = inject(ActivatedRoute);\n router = inject(Router);\n authService = inject(AuthService);\n snackBar = inject(MatSnackBar);\n\n ngOnInit(): void {\n this.service = this.route.snapshot.queryParams['service'] || 'www';\n this.continue = this.route.snapshot.queryParams['continue'] || '/';\n if (isPlatformBrowser(this.platformId)) {\n this.logout();\n }\n }\n logout() {\n this.authService.logout().subscribe({\n next: (res) => {\n this.router.navigate(['/signin'], {\n queryParams: { continue: this.continue },\n });\n },\n error: (error) => {\n this.snackBar.open(error.message);\n },\n });\n }\n}\n","<p>Please waiting...</p>\n","import { Component, OnInit } from '@angular/core';\n\n@Component({\n selector: 'rolatech-account-passwordreset',\n templateUrl: './passwordreset.component.html',\n styleUrls: ['./passwordreset.component.scss'],\n standalone: true,\n})\nexport class PasswordresetComponent implements OnInit {\n constructor() {}\n\n ngOnInit(): void {}\n}\n","<p>passwordreset works!</p>\n","import { Injectable, output } from '@angular/core';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class WeChatLoginService {\n onWeChatLogin = output<any>();\n\n constructor() {}\n}\n","import { isPlatformBrowser } from '@angular/common';\nimport { Component, HostListener, inject, OnInit, PLATFORM_ID } from '@angular/core';\nimport { FormBuilder, FormGroup, Validators } from '@angular/forms';\nimport { MatTabChangeEvent } from '@angular/material/tabs';\nimport { SafeResourceUrl, DomSanitizer } from '@angular/platform-browser';\nimport { AngularCommonModule, APP_CONFIG } from '@rolatech/angular-common';\nimport { AngularComponentsModule, BaseComponent } from '@rolatech/angular-components';\nimport { AuthService, AuthUserService } from '@rolatech/angular-auth';\nimport { WeChatLoginService } from '../../../services/wechat-login.service';\n\n@Component({\n standalone: true,\n imports: [AngularCommonModule, AngularComponentsModule],\n selector: 'rolatech-account-auth-signin',\n templateUrl: './signin.component.html',\n styleUrls: ['./signin.component.scss'],\n})\nexport class SigninComponent extends BaseComponent implements OnInit {\n passrodForm!: FormGroup;\n codeForm!: FormGroup;\n continue = '';\n environment = inject(APP_CONFIG);\n platformId = inject(PLATFORM_ID);\n formBuilder = inject(FormBuilder);\n authService = inject(AuthService);\n authUserService = inject(AuthUserService);\n wechtLoginService = inject(WeChatLoginService);\n\n tabIndex = 0;\n countDown = false;\n countDownTime = 60;\n showButtonText = '发送验证码';\n appid = 'wx567acbea73439828';\n state = 'add';\n urlSafe!: SafeResourceUrl;\n sanitizer = inject(DomSanitizer);\n baseUrl = 'https://open.weixin.qq.com/connect/qrconnect';\n\n @HostListener('window:message', ['$event'])\n onLogin(event: any): void {\n if (event.origin !== window.location.origin || /react-devtools/gi.test(event.data.source)) {\n return;\n }\n if (event.origin === this.environment.accountsUrl && event.data.code === 200) {\n window.location.href = this.continue === this.environment.accountsUrl ? this.environment.myaccountUrl : this.continue;\n }\n }\n\n ngOnInit(): void {\n this.titleService.setTitle('账号登录 - 拼小课');\n this.passrodForm = this.formBuilder.group({\n account: [null, Validators.required],\n password: [null, Validators.required],\n });\n this.codeForm = this.formBuilder.group({\n phone: [null, [Validators.required, Validators.pattern('1(3|4|5|6|7|8|9)\\\\d{9}')]],\n code: [null, Validators.required],\n });\n this.continue = this.route.snapshot.queryParams['continue'] || '/';\n }\n get form() {\n return this.tabIndex === 0 ? this.passrodForm.controls : this.codeForm.controls;\n }\n sendSMSCode() {\n const phoneControl = this.codeForm.get('phone');\n if (!phoneControl?.valid) {\n return;\n }\n const phone = phoneControl.value;\n this.countDown = true;\n const start = setInterval(() => {\n if (this.countDownTime >= 0) {\n this.showButtonText = `${this.countDownTime--}秒重发`;\n } else {\n clearInterval(start);\n this.showButtonText = '重新发送';\n this.countDown = false;\n this.countDownTime = 60;\n }\n }, 1000);\n\n this.authUserService.sendSMSCode('+86', phone).subscribe({\n next: (res) => {\n this.snackBarService.open('发送成功');\n },\n error: (error) => {\n this.snackBarService.open(error.message);\n },\n });\n }\n login() {\n let data = {};\n if (this.tabIndex === 0) {\n if (!this.passrodForm.valid) {\n return;\n }\n data = {\n account: this.form['account'].value,\n password: this.form['password'].value,\n };\n }\n if (this.tabIndex === 1) {\n if (!this.codeForm.valid) {\n return;\n }\n data = {\n phone: this.form['phone'].value,\n code: this.form['code'].value,\n };\n }\n\n this.authService.login(data).subscribe({\n next: () => {\n if (isPlatformBrowser(this.platformId)) {\n window.location.href = this.continue === this.environment.accountsUrl ? this.environment.myaccountUrl : this.continue;\n }\n },\n error: (error) => {\n this.snackBarService.open(error.message);\n },\n });\n }\n onSelectedTabChange(e: MatTabChangeEvent) {\n const { index } = e;\n this.tabIndex = index;\n if (index === 0) {\n this.codeForm.reset();\n }\n if (index === 1) {\n this.passrodForm.reset();\n }\n if (index === 2) {\n this.codeForm.reset();\n this.passrodForm.reset();\n this.wechat();\n }\n }\n wechat() {\n const redirectUri = 'https://accounts.pinxiaoke.cn/login?continue';\n // const redirectUri = `${window.location.origin}/login?continue`;\n const href = 'https://cloudcache.tencent-cloud.com/open_proj/proj_qcloud_v2/gateway/login-regist/css/link-wx-login.css';\n const encodedURI = encodeURI(redirectUri);\n const src = `${this.baseUrl}?appid=${this.appid}&response_type=code&self_redirect=true&scope=snsapi_login&href=${href}&redirect_uri=${encodedURI}&state=${this.state}#wechat_redirect`;\n this.urlSafe = this.sanitizer.bypassSecurityTrustResourceUrl(src);\n }\n}\n","<div class=\"h-full flex flex-col items-center sm:justify-center sm:bg-gray-100\">\n <div\n class=\"w-full p-8 lg:p-11 rounded-xl bg-white flex flex-col lg:flex-row justify-between xl:w-[800px] lg:w-[600px] sm:w-[600px]\"\n >\n <!-- header -->\n <div class=\"flex flex-col py-6\">\n <div class=\"text-3xl font-medium mb-3\">登录</div>\n <div class=\"text-md\">使用拼小课账号登录</div>\n </div>\n <div>\n <!-- content -->\n <mat-tab-group mat-stretch-tabs=\"false\" mat-align-tabs=\"start\" (selectedTabChange)=\"onSelectedTabChange($event)\">\n <mat-tab label=\"账号密码\">\n <div class=\"pt-6\">\n <form [formGroup]=\"passrodForm\" class=\"flex flex-col\">\n <mat-form-field appearance=\"fill\">\n <mat-label> 用户名/手机号 </mat-label>\n <input matInput formControlName=\"account\" required />\n @if (passrodForm.controls['account'].touched && passrodForm.controls['account'].invalid) {\n <mat-error>\n @if (passrodForm.controls['account'].errors?.['required']) {\n <span>用户名必填</span>\n }\n </mat-error>\n }\n </mat-form-field>\n <mat-form-field appearance=\"fill\">\n <mat-label> 密码 </mat-label>\n <input autocomplete matInput formControlName=\"password\" type=\"password\" />\n @if (passrodForm.controls['password'].touched && passrodForm.controls['password'].invalid) {\n <mat-error>\n @if (passrodForm.controls['password'].errors?.['required']) {\n <span>请输入密码</span>\n }\n </mat-error>\n }\n </mat-form-field>\n </form>\n </div>\n </mat-tab>\n <mat-tab label=\"短信验证码\">\n <div class=\"pt-6\">\n <form [formGroup]=\"codeForm\" class=\"flex flex-col\">\n <mat-form-field appearance=\"fill\">\n <mat-label> 手机号 </mat-label>\n <input autocomplete matInput formControlName=\"phone\" required />\n @if (codeForm.controls['phone'].touched && codeForm.controls['phone'].invalid) {\n <mat-error>\n @if (codeForm.controls['phone'].errors?.['required']) {\n <span> 手机号必填</span>\n }\n @if (codeForm.controls['phone'].errors?.['pattern']) {\n <span> 手机号格式错误 </span>\n }\n </mat-error>\n }\n </mat-form-field>\n <div class=\"flex justify-between items-start gap-3\">\n <mat-form-field appearance=\"fill\">\n <mat-label> 验证码 </mat-label>\n <input matInput formControlName=\"code\" type=\"text\" required />\n @if (codeForm.controls['code'].touched && codeForm.controls['code'].invalid) {\n <mat-error>\n @if (codeForm.controls['code'].errors?.['required']) {\n <span> 请输入验证码 </span>\n }\n </mat-error>\n }\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=\"max-w-[128px] p-3 mt-2 text-white rounded text-center\"\n >\n <span>{{ showButtonText }}</span>\n </button>\n </div>\n </form>\n </div>\n </mat-tab>\n <mat-tab label=\"微信扫码\">\n <div class=\"py-6\">\n <div class=\"w-[190px] h-[190px] mx-auto\">\n @if (tabIndex === 2) {\n <iframe [src]=\"urlSafe\" class=\"w-full h-full inline\" scrolling=\"no\" frameBorder=\"no\" #iframe></iframe>\n <!-- <img [src]=\"urlSafe\" class=\"w-full h-full inline\" /> -->\n <div></div>\n }\n </div>\n </div>\n </mat-tab>\n </mat-tab-group>\n\n <!-- actions -->\n <div class=\"flex justify-between items-center py-2 pl-2\">\n <a class=\"underline underline-offset-4\" href=\"signup\">创建账号</a>\n <div\n (click)=\"login()\"\n class=\"cursor-pointer bg-orange-600 hover:bg-orange-700 w-[128px] p-3 shadow-gray-300 shadow hover:shadow-lg text-white rounded text-center\"\n >\n <span>登录</span>\n </div>\n </div>\n </div>\n\n <!-- 3-part -->\n <!-- <div class=\"flex flex-col justify-center items-center mt-6\">\n <div class=\"flex items-center\">\n <span class=\"w-16 h-[1px] bg-gray-300\"></span>\n <span class=\"px-3\">第三方登录</span>\n <span class=\"w-16 h-[1px] bg-gray-300\"></span>\n </div>\n <div class=\"mt-3 flex items-center hover:shadow hover:shadow-gray-400 cursor-pointer p-3\">\n <img class=\"w-4 h-4\" src=\"assets/images/icon64_appwx_logo.png\" />\n <span class=\"ml-1\">微信</span>\n </div>\n </div> -->\n </div>\n</div>\n","import { Component, inject, OnInit } from '@angular/core';\nimport { FormBuilder, FormGroup, Validators } from '@angular/forms';\nimport { AngularCommonModule, APP_CONFIG, WINDOW } from '@rolatech/angular-common';\nimport { AngularComponentsModule, BaseComponent } from '@rolatech/angular-components';\nimport { AuthUserService } from '@rolatech/angular-auth';\n\n@Component({\n standalone: true,\n imports: [AngularCommonModule, AngularComponentsModule],\n selector: 'rolatech-account-signup',\n templateUrl: './signup.component.html',\n styleUrls: ['./signup.component.scss'],\n})\nexport class SignupComponent extends BaseComponent implements OnInit {\n signupForm!: FormGroup;\n continue = '/';\n authUserService = inject(AuthUserService);\n formBuilder = inject(FormBuilder);\n environment = inject(APP_CONFIG);\n window = inject(WINDOW);\n countDown = false;\n countDownTime = 60;\n showButtonText = '发送验证码';\n\n ngOnInit(): void {\n this.titleService.setTitle('账号注册 - 拼小课');\n this.signupForm = this.formBuilder.group({\n name: [null, Validators.required],\n phone: [null, [Validators.required, Validators.pattern('1(3|4|5|6|7|8|9)\\\\d{9}')]],\n code: [null, Validators.required],\n password: [null, Validators.required],\n rePassword: [null, Validators.required],\n });\n this.continue = this.route.snapshot.queryParams['continue'] || '/';\n }\n sendSMSCode() {\n const phoneControl = this.signupForm.get('phone');\n if (!phoneControl?.valid) {\n return;\n }\n const phone = phoneControl.value;\n this.countDown = true;\n const start = setInterval(() => {\n if (this.countDownTime >= 0) {\n this.showButtonText = `${this.countDownTime--}秒重发`;\n } else {\n clearInterval(start);\n this.showButtonText = '重新发送';\n this.countDown = false;\n this.countDownTime = 60;\n }\n }, 1000);\n this.authUserService.sendSMSCode('+86', phone).subscribe({\n next: (res) => {\n this.snackBarService.open('发送成功');\n },\n error: (error) => {\n this.snackBarService.open(error.message);\n },\n });\n }\n submit() {\n if (!this.signupForm.valid) {\n return;\n }\n const data = {};\n this.authUserService.signup(this.signupForm.value).subscribe({\n next: (res) => {\n this.window.location.href = this.continue ? this.continue : this.environment.myaccountUrl;\n },\n error: (error) => {\n this.snackBarService.open(error.message);\n },\n });\n }\n}\n","<div class=\"h-full flex flex-col md:justify-center items-center\">\n <div class=\"md:shadow-md p-8 rounded-md\">\n <div class=\"text-2xl pl-2 pb-6\">注册</div>\n <form [formGroup]=\"signupForm\" (submit)=\"submit()\">\n <!-- name -->\n <mat-form-field appearance=\"fill\">\n <mat-label> 姓名 </mat-label>\n <input matInput formControlName=\"name\" required />\n @if (signupForm.controls['name'].touched && signupForm.controls['name'].invalid) {\n <mat-error>\n @if (signupForm.controls['name'].errors?.['required']) {\n <span>姓名必填</span>\n }\n </mat-error>\n }\n </mat-form-field>\n <!-- phone -->\n <mat-form-field appearance=\"fill\">\n <mat-label> 手机号 </mat-label>\n <input matInput formControlName=\"phone\" required />\n @if (signupForm.controls['phone'].touched && signupForm.controls['phone'].invalid) {\n <mat-error>\n @if (signupForm.controls['phone'].errors?.['required']) {\n <span>手机号必填</span>\n }\n @if (signupForm.controls['phone'].errors?.['pattern']) {\n <span> 手机号格式错误 </span>\n }\n </mat-error>\n }\n </mat-form-field>\n <!-- phone code -->\n <div class=\"flex justify-between items-start gap-3\">\n <mat-form-field appearance=\"fill\">\n <mat-label> 验证码 </mat-label>\n <input matInput formControlName=\"code\" required />\n @if (signupForm.controls['code'].touched && signupForm.controls['code'].invalid) {\n <mat-error>\n @if (signupForm.controls['code'].errors?.['required']) {\n <span>验证码必填</span>\n }\n </mat-error>\n }\n </mat-form-field>\n <div\n (click)=\"sendSMSCode()\"\n class=\"cursor-pointer bg-orange-600 hover:bg-orange-700 w-[128px] p-3 mt-2 shadow-gray-300 shadow hover:shadow-lg text-white rounded text-center\"\n >\n <span>发送验证码</span>\n </div>\n </div>\n\n <!-- password -->\n <mat-form-field appearance=\"fill\">\n <mat-label> 密码 </mat-label>\n <input matInput formControlName=\"password\" type=\"password\" autocomplete=\"password\" />\n @if (signupForm.controls['password'].touched && signupForm.controls['password'].invalid) {\n <mat-error>\n @if (signupForm.controls['password'].errors?.['required']) {\n <span>请输入密码</span>\n }\n </mat-error>\n }\n </mat-form-field>\n\n <!-- password confirm -->\n <mat-form-field appearance=\"fill\">\n <mat-label> 确认密码 </mat-label>\n <input matInput formControlName=\"rePassword\" type=\"password\" autocomplete=\"rePassword\" />\n @if (signupForm.controls['rePassword'].touched && signupForm.controls['rePassword'].invalid) {\n <mat-error>\n @if (signupForm.controls['rePassword'].errors?.['required']) {\n <span>请确认密码</span>\n }\n </mat-error>\n }\n </mat-form-field>\n </form>\n <div class=\"flex justify-between items-center px-3\">\n <a mat-button href=\"/signin\">登录</a>\n <div\n (click)=\"submit()\"\n class=\"cursor-pointer bg-orange-600 hover:bg-orange-700 w-[128px] p-3 shadow-gray-300 shadow hover:shadow-lg text-white rounded text-center\"\n >\n <span>注册</span>\n </div>\n </div>\n </div>\n</div>\n","import { Routes } from '@angular/router';\nimport { AuthGuard, ForbiddenComponent, UnauthorizedComponent } from '@rolatech/angular-auth';\nimport { ForgotPasswordComponent } from './components/forgot-password/forgot-password.component';\nimport { LogoutComponent } from './components/logout/logout.component';\nimport { PasswordresetComponent } from './components/passwordreset/passwordreset.component';\nimport { SigninComponent } from './pages/accounts/signin/signin.component';\nimport { SignupComponent } from './pages/accounts/signup/signup.component';\n\nexport const accountRoutes: Routes = [\n {\n path: '',\n pathMatch: 'full',\n redirectTo: 'signin',\n },\n { path: 'signin', canActivate: [AuthGuard], component: SigninComponent, data: { title: 'Signin' } },\n { path: 'signup', component: SignupComponent, data: { title: 'Signup' } },\n { path: 'logout', component: LogoutComponent },\n { path: 'login', loadChildren: () => import('./components/login/login.routes') },\n {\n path: 'passwordreset/:token',\n component: PasswordresetComponent,\n data: { title: 'Password Reset' },\n },\n {\n path: 'forgot',\n component: ForgotPasswordComponent,\n data: { title: 'Forgot Password' },\n },\n {\n path: 'unauthorized',\n component: UnauthorizedComponent,\n },\n {\n path: 'forbidden',\n component: ForbiddenComponent,\n },\n];\n","import { Routes } from '@angular/router';\n\nexport const myaccountRoutes: Routes = [\n {\n path: '',\n loadComponent: () => import('./pages/myaccount/home/home.component').then((c) => c.HomeComponent),\n data: { title: '首页' },\n },\n {\n path: 'personal-info',\n loadComponent: () => import('./pages/myaccount/personal-info/info.component').then((c) => c.InfoComponent),\n },\n {\n path: 'profile',\n loadComponent: () => import('./pages/myaccount/personal-info/profile/profile.component').then((c) => c.ProfileComponent),\n },\n {\n path: 'username',\n loadComponent: () => import('./pages/myaccount/personal-info/username/username.component').then((c) => c.UsernameComponent),\n },\n { path: 'gender', loadComponent: () => import('./pages/myaccount/gender/gender.component').then((c) => c.GenderComponent) },\n { path: 'email', loadComponent: () => import('./pages/myaccount/email/email.component').then((c) => c.EmailComponent) },\n {\n path: 'email-verification/:id',\n loadComponent: () =>\n import('./pages/myaccount/email-verification/email-verification.component').then((c) => c.EmailVerificationComponent),\n },\n { path: 'phone', loadComponent: () => import('./pages/myaccount/phone/phone.component').then((c) => c.PhoneComponent) },\n {\n path: 'security',\n loadChildren: () => import('./pages/myaccount/security/security.routes'),\n data: { title: 'Security' },\n },\n {\n path: 'notifications',\n loadChildren: () => import('@rolatech/angular-notification').then((m) => m.notificationRoutes),\n data: { title: '通知中心' },\n },\n];\n","import { EnvironmentProviders, Provider, makeEnvironmentProviders } from '@angular/core';\nimport { ROUTES } from '@angular/router';\nimport { accountRoutes } from './lib/account.routes';\n\nexport function provideAngularAuthRoutes(): EnvironmentProviders {\n const provider: Provider[] = [\n {\n provide: ROUTES,\n useValue: accountRoutes,\n multi: true,\n },\n ];\n return makeEnvironmentProviders(provider);\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
@@ -64,10 +64,10 @@ class SecurityIndexComponent {
|
|
|
64
64
|
},
|
|
65
65
|
});
|
|
66
66
|
}
|
|
67
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.
|
|
68
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.
|
|
67
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: SecurityIndexComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
68
|
+
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"] }] }); }
|
|
69
69
|
}
|
|
70
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.
|
|
70
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: SecurityIndexComponent, decorators: [{
|
|
71
71
|
type: Component,
|
|
72
72
|
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" }]
|
|
73
73
|
}], ctorParameters: () => [] });
|
|
@@ -98,10 +98,10 @@ class SecurityPasswordComponent {
|
|
|
98
98
|
},
|
|
99
99
|
});
|
|
100
100
|
}
|
|
101
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.
|
|
102
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.
|
|
101
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: SecurityPasswordComponent, deps: [{ token: i1$1.FormBuilder }, { token: i2$1.AuthService }, { token: i3$1.MatSnackBar }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
102
|
+
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$1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1$1.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$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$1.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i1$1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$1.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "ngmodule", type: AngularComponentsModule }, { kind: "component", type: i2$2.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { 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: i3$2.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i3$2.MatLabel, selector: "mat-label" }, { kind: "directive", type: i4$1.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]" }] }); }
|
|
103
103
|
}
|
|
104
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.
|
|
104
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: SecurityPasswordComponent, decorators: [{
|
|
105
105
|
type: Component,
|
|
106
106
|
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" }]
|
|
107
107
|
}], ctorParameters: () => [{ type: i1$1.FormBuilder }, { type: i2$1.AuthService }, { type: i3$1.MatSnackBar }] });
|
|
@@ -175,10 +175,10 @@ class SecurityVerificationComponent {
|
|
|
175
175
|
this.renderer.removeChild(this.qrcElement.nativeElement, node);
|
|
176
176
|
}
|
|
177
177
|
}
|
|
178
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.
|
|
179
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.
|
|
178
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: SecurityVerificationComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
179
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.0", type: SecurityVerificationComponent, isStandalone: true, selector: "rolatech-account-security-verification", viewQueries: [{ propertyName: "qrcElement", first: true, predicate: ["qrcode"], descendants: true }], ngImport: i0, template: "<div class=\"max-w-[1120px] m-auto\">\n <div class=\"max-w-[820px]\">\n <div class=\"flex flex-col justify-center items-center p-3 mb-12\">\n <p class=\"text-3xl\">\u5B9E\u540D\u8BA4\u8BC1</p>\n <p class=\"text-md\">\u5B9E\u540D\u8BA4\u8BC1, \u4F1A\u8BA9\u4F60\u7684\u8D26\u6237\u66F4\u52A0\u5B89\u5168</p>\n </div>\n </div>\n @if (verified) {\n <div class=\"p-3\">\n <div class=\"text-md font-bold py-3\">\u60A8\u5DF2\u7ECF\u5B8C\u6210\u5B9E\u540D\u8BA4\u8BC1</div>\n <div class=\"flex flex-col\">\n <div><span class=\"text-gray-600\">\u59D3\u540D: </span> <span>22</span></div>\n <div><span class=\"text-gray-600\">\u8EAB\u4EFD\u8BC1: </span><span>22</span></div>\n </div>\n </div>\n } @else {\n <div>\u672A\u8BA4\u8BC1</div>\n <button mat-raised-button (click)=\"verify()\" color=\"primary\">\u8BF7\u6C42\u8BA4\u8BC1</button>\n <div #qrcode>\n @if (loading) {\n <div>\n <rolatech-loading-spinner></rolatech-loading-spinner>\n </div>\n }\n </div>\n }\n</div>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: AngularCommonModule }, { kind: "ngmodule", type: AngularComponentsModule }, { kind: "component", type: i2$2.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "component", type: LoadingSpinnerComponent, selector: "rolatech-loading-spinner", inputs: ["title"] }] }); }
|
|
180
180
|
}
|
|
181
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.
|
|
181
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: SecurityVerificationComponent, decorators: [{
|
|
182
182
|
type: Component,
|
|
183
183
|
args: [{ standalone: true, imports: [AngularCommonModule, AngularComponentsModule, LoadingSpinnerComponent], selector: 'rolatech-account-security-verification', template: "<div class=\"max-w-[1120px] m-auto\">\n <div class=\"max-w-[820px]\">\n <div class=\"flex flex-col justify-center items-center p-3 mb-12\">\n <p class=\"text-3xl\">\u5B9E\u540D\u8BA4\u8BC1</p>\n <p class=\"text-md\">\u5B9E\u540D\u8BA4\u8BC1, \u4F1A\u8BA9\u4F60\u7684\u8D26\u6237\u66F4\u52A0\u5B89\u5168</p>\n </div>\n </div>\n @if (verified) {\n <div class=\"p-3\">\n <div class=\"text-md font-bold py-3\">\u60A8\u5DF2\u7ECF\u5B8C\u6210\u5B9E\u540D\u8BA4\u8BC1</div>\n <div class=\"flex flex-col\">\n <div><span class=\"text-gray-600\">\u59D3\u540D: </span> <span>22</span></div>\n <div><span class=\"text-gray-600\">\u8EAB\u4EFD\u8BC1: </span><span>22</span></div>\n </div>\n </div>\n } @else {\n <div>\u672A\u8BA4\u8BC1</div>\n <button mat-raised-button (click)=\"verify()\" color=\"primary\">\u8BF7\u6C42\u8BA4\u8BC1</button>\n <div #qrcode>\n @if (loading) {\n <div>\n <rolatech-loading-spinner></rolatech-loading-spinner>\n </div>\n }\n </div>\n }\n</div>\n" }]
|
|
184
184
|
}], propDecorators: { qrcElement: [{
|
|
@@ -203,4 +203,4 @@ const securityRoutes = [
|
|
|
203
203
|
];
|
|
204
204
|
|
|
205
205
|
export { securityRoutes as default };
|
|
206
|
-
//# sourceMappingURL=rolatech-angular-account-security.routes-
|
|
206
|
+
//# sourceMappingURL=rolatech-angular-account-security.routes-B9DWZw7I.mjs.map
|