@acorex/modules 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +7 -0
- package/auth/README.md +3 -0
- package/auth/index.d.ts +3 -0
- package/auth/lib/account/account.module.d.ts +8 -0
- package/auth/lib/account/app-chooser/app-chooser-list.component.d.ts +11 -0
- package/auth/lib/account/app-chooser/app-chooser-slot.component.d.ts +12 -0
- package/auth/lib/account/app-chooser/app-chooser.component.d.ts +13 -0
- package/auth/lib/account/profile/profile-slot.component.d.ts +16 -0
- package/auth/lib/account/tenant-chooser/tenant-chooser-dropdown.component.d.ts +10 -0
- package/auth/lib/account/tenant-chooser/tenant-chooser.component.d.ts +21 -0
- package/auth/lib/auth.config.d.ts +23 -0
- package/auth/lib/auth.module.d.ts +14 -0
- package/auth/lib/auth.routes.d.ts +2 -0
- package/auth/lib/error-handler.d.ts +10 -0
- package/auth/lib/forgot/password/password.component.d.ts +11 -0
- package/auth/lib/forgot/routes.d.ts +3 -0
- package/auth/lib/login/login.module.d.ts +7 -0
- package/auth/lib/login/password/password.component.d.ts +22 -0
- package/auth/lib/register/email/email.component.d.ts +5 -0
- package/auth/lib/register/register.module.d.ts +7 -0
- package/auth/lib/register/result/result.component.d.ts +5 -0
- package/auth/lib/shared/layouts/blank/blank.layout.d.ts +8 -0
- package/auth/lib/shared/layouts/master/master.layout.d.ts +7 -0
- package/auth/lib/shared/services/idle.service.d.ts +17 -0
- package/auth/lib/shared/services/index.d.ts +1 -0
- package/auth/lib/store/auth.effects.d.ts +18 -0
- package/auth/lib/store/index.d.ts +1 -0
- package/auth/lib/two-factor/two-factor-code/two-factor-code.component.d.ts +8 -0
- package/auth/lib/two-factor/two-factor.module.d.ts +7 -0
- package/backend/README.md +4 -0
- package/backend/index.d.ts +2 -0
- package/backend/lib/auth/oidc/application.loader.d.ts +16 -0
- package/backend/lib/auth/oidc/feature.loader.d.ts +5 -0
- package/backend/lib/auth/oidc/index.d.ts +5 -0
- package/backend/lib/auth/oidc/oidc.strategy.d.ts +19 -0
- package/backend/lib/auth/oidc/permission.loader.d.ts +5 -0
- package/backend/lib/auth/oidc/signincallback.component.d.ts +13 -0
- package/backend/lib/auth/oidc/tenant.loader.d.ts +16 -0
- package/backend/lib/auth/oidc/usermanager.service.d.ts +12 -0
- package/backend/lib/auth/userpass/application.loader.d.ts +6 -0
- package/backend/lib/auth/userpass/index.d.ts +4 -0
- package/backend/lib/auth/userpass/permission.loader.d.ts +5 -0
- package/backend/lib/auth/userpass/tenant.loader.d.ts +6 -0
- package/backend/lib/auth/userpass/userpass.strategy.d.ts +12 -0
- package/backend/lib/backend.configs.d.ts +99 -0
- package/backend/lib/backend.module.d.ts +8 -0
- package/backend/lib/data/api/data-provider.d.ts +21 -0
- package/esm2022/acorex-modules.mjs +5 -0
- package/esm2022/auth/acorex-modules-auth.mjs +5 -0
- package/esm2022/auth/index.mjs +4 -0
- package/esm2022/auth/lib/account/account.module.mjs +106 -0
- package/esm2022/auth/lib/account/app-chooser/app-chooser-list.component.mjs +31 -0
- package/esm2022/auth/lib/account/app-chooser/app-chooser-slot.component.mjs +41 -0
- package/esm2022/auth/lib/account/app-chooser/app-chooser.component.mjs +62 -0
- package/esm2022/auth/lib/account/profile/profile-slot.component.mjs +56 -0
- package/esm2022/auth/lib/account/tenant-chooser/tenant-chooser-dropdown.component.mjs +26 -0
- package/esm2022/auth/lib/account/tenant-chooser/tenant-chooser.component.mjs +81 -0
- package/esm2022/auth/lib/auth.config.mjs +22 -0
- package/esm2022/auth/lib/auth.module.mjs +45 -0
- package/esm2022/auth/lib/auth.routes.mjs +38 -0
- package/esm2022/auth/lib/error-handler.mjs +41 -0
- package/esm2022/auth/lib/forgot/password/password.component.mjs +56 -0
- package/esm2022/auth/lib/forgot/routes.mjs +7 -0
- package/esm2022/auth/lib/login/login.module.mjs +53 -0
- package/esm2022/auth/lib/login/password/password.component.mjs +99 -0
- package/esm2022/auth/lib/register/email/email.component.mjs +42 -0
- package/esm2022/auth/lib/register/register.module.mjs +59 -0
- package/esm2022/auth/lib/register/result/result.component.mjs +33 -0
- package/esm2022/auth/lib/shared/layouts/blank/blank.layout.mjs +15 -0
- package/esm2022/auth/lib/shared/layouts/master/master.layout.mjs +21 -0
- package/esm2022/auth/lib/shared/services/idle.service.mjs +42 -0
- package/esm2022/auth/lib/shared/services/index.mjs +2 -0
- package/esm2022/auth/lib/store/auth.effects.mjs +90 -0
- package/esm2022/auth/lib/store/index.mjs +3 -0
- package/esm2022/auth/lib/two-factor/two-factor-code/two-factor-code.component.mjs +37 -0
- package/esm2022/auth/lib/two-factor/two-factor.module.mjs +42 -0
- package/esm2022/backend/acorex-modules-backend.mjs +5 -0
- package/esm2022/backend/index.mjs +3 -0
- package/esm2022/backend/lib/auth/oidc/application.loader.mjs +47 -0
- package/esm2022/backend/lib/auth/oidc/feature.loader.mjs +7 -0
- package/esm2022/backend/lib/auth/oidc/index.mjs +6 -0
- package/esm2022/backend/lib/auth/oidc/oidc.strategy.mjs +77 -0
- package/esm2022/backend/lib/auth/oidc/permission.loader.mjs +7 -0
- package/esm2022/backend/lib/auth/oidc/signincallback.component.mjs +26 -0
- package/esm2022/backend/lib/auth/oidc/tenant.loader.mjs +41 -0
- package/esm2022/backend/lib/auth/oidc/usermanager.service.mjs +35 -0
- package/esm2022/backend/lib/auth/userpass/application.loader.mjs +30 -0
- package/esm2022/backend/lib/auth/userpass/index.mjs +5 -0
- package/esm2022/backend/lib/auth/userpass/permission.loader.mjs +12 -0
- package/esm2022/backend/lib/auth/userpass/tenant.loader.mjs +26 -0
- package/esm2022/backend/lib/auth/userpass/userpass.strategy.mjs +40 -0
- package/esm2022/backend/lib/backend.configs.mjs +3 -0
- package/esm2022/backend/lib/backend.module.mjs +106 -0
- package/esm2022/backend/lib/data/api/data-provider.mjs +67 -0
- package/esm2022/index.mjs +2 -0
- package/esm2022/notification/acorex-modules-notification.mjs +5 -0
- package/esm2022/notification/index.mjs +2 -0
- package/esm2022/notification/lib/notification.module.mjs +16 -0
- package/fesm2022/acorex-modules-auth-acorex-modules-auth-3tiGzryz.mjs +484 -0
- package/fesm2022/acorex-modules-auth-acorex-modules-auth-3tiGzryz.mjs.map +1 -0
- package/fesm2022/acorex-modules-auth-app-chooser.component-Hh2T5orM.mjs +70 -0
- package/fesm2022/acorex-modules-auth-app-chooser.component-Hh2T5orM.mjs.map +1 -0
- package/fesm2022/acorex-modules-auth-blank.layout-0xNRyD5z.mjs +18 -0
- package/fesm2022/acorex-modules-auth-blank.layout-0xNRyD5z.mjs.map +1 -0
- package/fesm2022/acorex-modules-auth-email.component-ZbTwT8iu.mjs +45 -0
- package/fesm2022/acorex-modules-auth-email.component-ZbTwT8iu.mjs.map +1 -0
- package/fesm2022/acorex-modules-auth-login.module-lGs54nBU.mjs +71 -0
- package/fesm2022/acorex-modules-auth-login.module-lGs54nBU.mjs.map +1 -0
- package/fesm2022/acorex-modules-auth-master.layout-ytopPv2z.mjs +37 -0
- package/fesm2022/acorex-modules-auth-master.layout-ytopPv2z.mjs.map +1 -0
- package/fesm2022/acorex-modules-auth-password.component-Q9Me4kkK.mjs +72 -0
- package/fesm2022/acorex-modules-auth-password.component-Q9Me4kkK.mjs.map +1 -0
- package/fesm2022/acorex-modules-auth-password.component-p1Ks9S5q.mjs +110 -0
- package/fesm2022/acorex-modules-auth-password.component-p1Ks9S5q.mjs.map +1 -0
- package/fesm2022/acorex-modules-auth-register.module-ckbVm-yf.mjs +77 -0
- package/fesm2022/acorex-modules-auth-register.module-ckbVm-yf.mjs.map +1 -0
- package/fesm2022/acorex-modules-auth-result.component-ORUU7lkV.mjs +36 -0
- package/fesm2022/acorex-modules-auth-result.component-ORUU7lkV.mjs.map +1 -0
- package/fesm2022/acorex-modules-auth-routes-jgo2XGe0.mjs +9 -0
- package/fesm2022/acorex-modules-auth-routes-jgo2XGe0.mjs.map +1 -0
- package/fesm2022/acorex-modules-auth-tenant-chooser.component-PeGg21Im.mjs +84 -0
- package/fesm2022/acorex-modules-auth-tenant-chooser.component-PeGg21Im.mjs.map +1 -0
- package/fesm2022/acorex-modules-auth-two-factor-code.component-fP6CLq9T.mjs +40 -0
- package/fesm2022/acorex-modules-auth-two-factor-code.component-fP6CLq9T.mjs.map +1 -0
- package/fesm2022/acorex-modules-auth-two-factor.module--fcoNW-s.mjs +60 -0
- package/fesm2022/acorex-modules-auth-two-factor.module--fcoNW-s.mjs.map +1 -0
- package/fesm2022/acorex-modules-auth.mjs +19 -0
- package/fesm2022/acorex-modules-auth.mjs.map +1 -0
- package/fesm2022/acorex-modules-backend.mjs +488 -0
- package/fesm2022/acorex-modules-backend.mjs.map +1 -0
- package/fesm2022/acorex-modules-notification.mjs +23 -0
- package/fesm2022/acorex-modules-notification.mjs.map +1 -0
- package/fesm2022/acorex-modules.mjs +6 -0
- package/fesm2022/acorex-modules.mjs.map +1 -0
- package/index.d.ts +2 -0
- package/notification/README.md +4 -0
- package/notification/index.d.ts +1 -0
- package/notification/lib/notification.module.d.ts +6 -0
- package/package.json +44 -0
@@ -0,0 +1,70 @@
|
|
1
|
+
import * as i0 from '@angular/core';
|
2
|
+
import { inject, Component, ViewEncapsulation } from '@angular/core';
|
3
|
+
import * as i3 from '@acorex/components/avatar';
|
4
|
+
import { AXAvatarModule } from '@acorex/components/avatar';
|
5
|
+
import { AXButtonModule } from '@acorex/components/button';
|
6
|
+
import { AXCheckBoxModule } from '@acorex/components/check-box';
|
7
|
+
import { AXDecoratorModule } from '@acorex/components/decorators';
|
8
|
+
import { AXFormModule } from '@acorex/components/form';
|
9
|
+
import * as i2 from '@acorex/components/image';
|
10
|
+
import { AXImageModule } from '@acorex/components/image';
|
11
|
+
import { AXLabelModule } from '@acorex/components/label';
|
12
|
+
import { AXLoadingModule } from '@acorex/components/loading';
|
13
|
+
import { AXTextBoxModule } from '@acorex/components/text-box';
|
14
|
+
import * as i6 from '@acorex/core/translation';
|
15
|
+
import { AXTranslationModule } from '@acorex/core/translation';
|
16
|
+
import { AXPSessionService } from '@acorex/platform/auth';
|
17
|
+
import { AXP_PLATFORM_CONFIG_TOKEN } from '@acorex/platform/common';
|
18
|
+
import { AXPLogoComponent } from '@acorex/platform/layouts';
|
19
|
+
import * as i1 from '@angular/common';
|
20
|
+
import { CommonModule } from '@angular/common';
|
21
|
+
import { Router } from '@angular/router';
|
22
|
+
import { b as AXPTenantChooserDropdownComponent, c as AXPAppChooserListComponent } from './acorex-modules-auth-acorex-modules-auth-3tiGzryz.mjs';
|
23
|
+
import '@angular/common/http';
|
24
|
+
import '@ngrx/effects';
|
25
|
+
import '@acorex/components/dialog';
|
26
|
+
import 'rxjs';
|
27
|
+
import 'rxjs/operators';
|
28
|
+
import '@acorex/components/popover';
|
29
|
+
|
30
|
+
class AXPAuthAppChooserComponent {
|
31
|
+
constructor() {
|
32
|
+
this.router = inject(Router);
|
33
|
+
this.platformConfig = inject(AXP_PLATFORM_CONFIG_TOKEN);
|
34
|
+
this.sessionService = inject(AXPSessionService);
|
35
|
+
this.user = this.sessionService.user;
|
36
|
+
this.tenants$ = this.sessionService.tenants$;
|
37
|
+
this.tenant = this.sessionService.tenant;
|
38
|
+
}
|
39
|
+
tenantChooser() {
|
40
|
+
this.router.navigate(['/auth/account/tenant-chooser']);
|
41
|
+
}
|
42
|
+
async handleSignout() {
|
43
|
+
await this.sessionService.signout();
|
44
|
+
this.router.navigate(['/auth/login']);
|
45
|
+
}
|
46
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: AXPAuthAppChooserComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
47
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.1.2", type: AXPAuthAppChooserComponent, isStandalone: true, selector: "axp-auth-app-chooser", ngImport: i0, template: "<main \n *translate=\"let t\"\n class=\"ax-w-full ax-space-y-10 ax-h-[100vh] ax-flex ax-flex-col ax-items-center ax-justify-center ax-bg-surface md:ax-bg-default\"\n >\n <section>\n <axp-logo \n [source]=\"platformConfig.logo?.colored\"\n [attr.alt]=\"platformConfig.title\"\n class=\"ax-w-36 ax-mx-auto\"\n ></axp-logo>\n </section>\n <section class=\"ax-flex ax-justify-center\">\n <div\n class=\"ax-flex ax-gap-2 ax-justify-center ax-text-center ax-flex-col ax-items-center ax-border ax-rounded-lg ax-shadow-lg ax-p-6 md:ax-w-96 ax-w-80\"\n >\n <ax-avatar class=\"ax-rounded-full\" [size]=\"72\">\n @if(user?.avatar){\n <ax-image [src]=\"user?.avatar\"></ax-image>\n }\n </ax-avatar>\n <h2 class=\"md:ax-text-lg ax-font-medium\">{{ t('welcome') | async }}, {{ user?.title }}</h2>\n <axp-tenant-chooser-dropdown></axp-tenant-chooser-dropdown>\n <p class=\"ax-text-neutral-500 ax-text-sm md:ax-text-base ax-font-medium\">\n {{ t('application-chooser.description', { scope: 'auth' }) | async }}\n </p>\n <div class=\"ax-mt-3 ax-w-full ax-overflow-auto ax-max-h-[300px] ax-pe-2\">\n <axp-app-chooser-list></axp-app-chooser-list>\n </div>\n </div>\n </section>\n <section>\n <p class=\"ax-text-neutral-400 ax-text-sm\">\n {{ t('application-chooser.footer', { scope: 'auth' }) | async }}\n <ng-container *ngIf=\"tenants$ | async as tenants\">\n @if(tenants.length > 1){\n <a (click)=\"tenantChooser()\" class=\"ax-text-primary-500 ax-cursor-pointer ax-font-medium hover:ax-underline\">\n {{ t('application-chooser.backCompany', { scope: 'auth' }) | async }}\n </a>\n } @else {\n <a (click)=\"handleSignout()\" class=\"ax-text-primary-500 ax-font-medium ax-cursor-pointer hover:ax-underline\">\n {{ t('backLogin', { scope: 'auth' }) | async }}\n </a>\n }\n </ng-container>\n </p>\n </section>\n</main>", styles: [".gradient{background:-webkit-linear-gradient(var(--ax-current-v1),var(--ax-current-v2));-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "ngmodule", type: AXFormModule }, { kind: "ngmodule", type: AXTextBoxModule }, { kind: "ngmodule", type: AXButtonModule }, { kind: "ngmodule", type: AXLabelModule }, { kind: "ngmodule", type: AXCheckBoxModule }, { kind: "ngmodule", type: AXAvatarModule }, { kind: "component", type: i3.AXAvatarComponent, selector: "ax-avatar", inputs: ["color", "size", "look"] }, { kind: "ngmodule", type: AXImageModule }, { kind: "component", type: i2.AXImageComponent, selector: "ax-image", inputs: ["overlayMode", "src", "alt", "priority", "lazy"], outputs: ["onLoad", "onError"] }, { kind: "ngmodule", type: AXDecoratorModule }, { kind: "component", type: AXPLogoComponent, selector: "axp-logo", inputs: ["source"] }, { kind: "ngmodule", type: AXLoadingModule }, { kind: "ngmodule", type: AXTranslationModule }, { kind: "directive", type: i6.AXTranslatorDirective, selector: "[translate]" }, { kind: "component", type: AXPTenantChooserDropdownComponent, selector: "axp-tenant-chooser-dropdown" }, { kind: "component", type: AXPAppChooserListComponent, selector: "axp-app-chooser-list" }], encapsulation: i0.ViewEncapsulation.None }); }
|
48
|
+
}
|
49
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: AXPAuthAppChooserComponent, decorators: [{
|
50
|
+
type: Component,
|
51
|
+
args: [{ selector: 'axp-auth-app-chooser', imports: [
|
52
|
+
CommonModule,
|
53
|
+
AXFormModule,
|
54
|
+
AXTextBoxModule,
|
55
|
+
AXButtonModule,
|
56
|
+
AXLabelModule,
|
57
|
+
AXCheckBoxModule,
|
58
|
+
AXAvatarModule,
|
59
|
+
AXImageModule,
|
60
|
+
AXDecoratorModule,
|
61
|
+
AXPLogoComponent,
|
62
|
+
AXLoadingModule,
|
63
|
+
AXTranslationModule,
|
64
|
+
AXPTenantChooserDropdownComponent,
|
65
|
+
AXPAppChooserListComponent
|
66
|
+
], encapsulation: ViewEncapsulation.None, standalone: true, template: "<main \n *translate=\"let t\"\n class=\"ax-w-full ax-space-y-10 ax-h-[100vh] ax-flex ax-flex-col ax-items-center ax-justify-center ax-bg-surface md:ax-bg-default\"\n >\n <section>\n <axp-logo \n [source]=\"platformConfig.logo?.colored\"\n [attr.alt]=\"platformConfig.title\"\n class=\"ax-w-36 ax-mx-auto\"\n ></axp-logo>\n </section>\n <section class=\"ax-flex ax-justify-center\">\n <div\n class=\"ax-flex ax-gap-2 ax-justify-center ax-text-center ax-flex-col ax-items-center ax-border ax-rounded-lg ax-shadow-lg ax-p-6 md:ax-w-96 ax-w-80\"\n >\n <ax-avatar class=\"ax-rounded-full\" [size]=\"72\">\n @if(user?.avatar){\n <ax-image [src]=\"user?.avatar\"></ax-image>\n }\n </ax-avatar>\n <h2 class=\"md:ax-text-lg ax-font-medium\">{{ t('welcome') | async }}, {{ user?.title }}</h2>\n <axp-tenant-chooser-dropdown></axp-tenant-chooser-dropdown>\n <p class=\"ax-text-neutral-500 ax-text-sm md:ax-text-base ax-font-medium\">\n {{ t('application-chooser.description', { scope: 'auth' }) | async }}\n </p>\n <div class=\"ax-mt-3 ax-w-full ax-overflow-auto ax-max-h-[300px] ax-pe-2\">\n <axp-app-chooser-list></axp-app-chooser-list>\n </div>\n </div>\n </section>\n <section>\n <p class=\"ax-text-neutral-400 ax-text-sm\">\n {{ t('application-chooser.footer', { scope: 'auth' }) | async }}\n <ng-container *ngIf=\"tenants$ | async as tenants\">\n @if(tenants.length > 1){\n <a (click)=\"tenantChooser()\" class=\"ax-text-primary-500 ax-cursor-pointer ax-font-medium hover:ax-underline\">\n {{ t('application-chooser.backCompany', { scope: 'auth' }) | async }}\n </a>\n } @else {\n <a (click)=\"handleSignout()\" class=\"ax-text-primary-500 ax-font-medium ax-cursor-pointer hover:ax-underline\">\n {{ t('backLogin', { scope: 'auth' }) | async }}\n </a>\n }\n </ng-container>\n </p>\n </section>\n</main>", styles: [".gradient{background:-webkit-linear-gradient(var(--ax-current-v1),var(--ax-current-v2));-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}\n"] }]
|
67
|
+
}] });
|
68
|
+
|
69
|
+
export { AXPAuthAppChooserComponent };
|
70
|
+
//# sourceMappingURL=acorex-modules-auth-app-chooser.component-Hh2T5orM.mjs.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"acorex-modules-auth-app-chooser.component-Hh2T5orM.mjs","sources":["../../../../libs/modules/auth/src/lib/account/app-chooser/app-chooser.component.ts","../../../../libs/modules/auth/src/lib/account/app-chooser/app-chooser.component.html"],"sourcesContent":["import { Component, ViewEncapsulation, inject } from '@angular/core';\n\nimport { AXAvatarModule } from '@acorex/components/avatar';\nimport { AXButtonModule } from '@acorex/components/button';\nimport { AXCheckBoxModule } from '@acorex/components/check-box';\nimport { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXFormModule } from '@acorex/components/form';\nimport { AXImageModule } from '@acorex/components/image';\nimport { AXLabelModule } from '@acorex/components/label';\nimport { AXLoadingModule } from '@acorex/components/loading';\nimport { AXTextBoxModule } from '@acorex/components/text-box';\nimport { AXTranslationModule } from '@acorex/core/translation';\nimport { AXPSessionService } from '@acorex/platform/auth';\nimport { AXP_PLATFORM_CONFIG_TOKEN } from '@acorex/platform/common';\nimport { AXPLogoComponent } from '@acorex/platform/layouts';\nimport { CommonModule } from '@angular/common';\nimport { Router } from '@angular/router';\nimport { AXPTenantChooserDropdownComponent } from '../tenant-chooser/tenant-chooser-dropdown.component';\nimport { AXPAppChooserListComponent } from './app-chooser-list.component';\n\n@Component({\n selector: 'axp-auth-app-chooser',\n templateUrl: './app-chooser.component.html',\n styleUrls: ['./app-chooser.component.scss'],\n imports: [\n CommonModule,\n AXFormModule,\n AXTextBoxModule,\n AXButtonModule,\n AXLabelModule,\n AXCheckBoxModule,\n AXAvatarModule,\n AXImageModule,\n AXDecoratorModule,\n AXPLogoComponent,\n AXLoadingModule,\n AXTranslationModule,\n AXPTenantChooserDropdownComponent,\n AXPAppChooserListComponent\n ],\n encapsulation: ViewEncapsulation.None,\n standalone: true,\n})\nexport class AXPAuthAppChooserComponent {\n\n private router = inject(Router);\n protected platformConfig = inject(AXP_PLATFORM_CONFIG_TOKEN);\n private sessionService = inject(AXPSessionService);\n\n protected user = this.sessionService.user;\n protected tenants$ = this.sessionService.tenants$;\n protected tenant = this.sessionService.tenant;\n\n\n tenantChooser() {\n this.router.navigate(['/auth/account/tenant-chooser']);\n }\n\n async handleSignout() {\n await this.sessionService.signout();\n this.router.navigate(['/auth/login']);\n }\n\n\n}\n","<main \n *translate=\"let t\"\n class=\"ax-w-full ax-space-y-10 ax-h-[100vh] ax-flex ax-flex-col ax-items-center ax-justify-center ax-bg-surface md:ax-bg-default\"\n >\n <section>\n <axp-logo \n [source]=\"platformConfig.logo?.colored\"\n [attr.alt]=\"platformConfig.title\"\n class=\"ax-w-36 ax-mx-auto\"\n ></axp-logo>\n </section>\n <section class=\"ax-flex ax-justify-center\">\n <div\n class=\"ax-flex ax-gap-2 ax-justify-center ax-text-center ax-flex-col ax-items-center ax-border ax-rounded-lg ax-shadow-lg ax-p-6 md:ax-w-96 ax-w-80\"\n >\n <ax-avatar class=\"ax-rounded-full\" [size]=\"72\">\n @if(user?.avatar){\n <ax-image [src]=\"user?.avatar\"></ax-image>\n }\n </ax-avatar>\n <h2 class=\"md:ax-text-lg ax-font-medium\">{{ t('welcome') | async }}, {{ user?.title }}</h2>\n <axp-tenant-chooser-dropdown></axp-tenant-chooser-dropdown>\n <p class=\"ax-text-neutral-500 ax-text-sm md:ax-text-base ax-font-medium\">\n {{ t('application-chooser.description', { scope: 'auth' }) | async }}\n </p>\n <div class=\"ax-mt-3 ax-w-full ax-overflow-auto ax-max-h-[300px] ax-pe-2\">\n <axp-app-chooser-list></axp-app-chooser-list>\n </div>\n </div>\n </section>\n <section>\n <p class=\"ax-text-neutral-400 ax-text-sm\">\n {{ t('application-chooser.footer', { scope: 'auth' }) | async }}\n <ng-container *ngIf=\"tenants$ | async as tenants\">\n @if(tenants.length > 1){\n <a (click)=\"tenantChooser()\" class=\"ax-text-primary-500 ax-cursor-pointer ax-font-medium hover:ax-underline\">\n {{ t('application-chooser.backCompany', { scope: 'auth' }) | async }}\n </a>\n } @else {\n <a (click)=\"handleSignout()\" class=\"ax-text-primary-500 ax-font-medium ax-cursor-pointer hover:ax-underline\">\n {{ t('backLogin', { scope: 'auth' }) | async }}\n </a>\n }\n </ng-container>\n </p>\n </section>\n</main>"],"names":["i2","i3","i4"],"mappings":"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"}
|
@@ -0,0 +1,18 @@
|
|
1
|
+
import * as i0 from '@angular/core';
|
2
|
+
import { Component } from '@angular/core';
|
3
|
+
import * as i2 from '@angular/router';
|
4
|
+
import { RouterModule } from '@angular/router';
|
5
|
+
|
6
|
+
class AXPAuthBlankLayoutComponent {
|
7
|
+
constructor() { }
|
8
|
+
ngOnInit() { }
|
9
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: AXPAuthBlankLayoutComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
10
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.1.2", type: AXPAuthBlankLayoutComponent, isStandalone: true, selector: "ng-component", ngImport: i0, template: "<router-outlet></router-outlet>", dependencies: [{ kind: "ngmodule", type: RouterModule }, { kind: "directive", type: i2.RouterOutlet, selector: "router-outlet", inputs: ["name"], outputs: ["activate", "deactivate", "attach", "detach"], exportAs: ["outlet"] }] }); }
|
11
|
+
}
|
12
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: AXPAuthBlankLayoutComponent, decorators: [{
|
13
|
+
type: Component,
|
14
|
+
args: [{ imports: [RouterModule], standalone: true, template: "<router-outlet></router-outlet>" }]
|
15
|
+
}], ctorParameters: () => [] });
|
16
|
+
|
17
|
+
export { AXPAuthBlankLayoutComponent };
|
18
|
+
//# sourceMappingURL=acorex-modules-auth-blank.layout-0xNRyD5z.mjs.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"acorex-modules-auth-blank.layout-0xNRyD5z.mjs","sources":["../../../../libs/modules/auth/src/lib/shared/layouts/blank/blank.layout.ts","../../../../libs/modules/auth/src/lib/shared/layouts/blank/blank.layout.html"],"sourcesContent":["import { Component, OnInit } from '@angular/core';\nimport { RouterModule } from '@angular/router';\n\n@Component({\n templateUrl: 'blank.layout.html',\n imports: [RouterModule],\n standalone: true,\n})\nexport class AXPAuthBlankLayoutComponent implements OnInit {\n constructor() { }\n\n ngOnInit() { }\n}\n","<router-outlet></router-outlet>"],"names":["i1"],"mappings":";;;;;MAQa,2BAA2B,CAAA;AACtC,IAAA,WAAA,GAAA,GAAiB;AAEjB,IAAA,QAAQ,MAAM;8GAHH,2BAA2B,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;kGAA3B,2BAA2B,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,cAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,ECRxC,iCAA+B,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EDKnB,YAAY,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,EAAA,CAAA,YAAA,EAAA,QAAA,EAAA,eAAA,EAAA,MAAA,EAAA,CAAA,MAAA,CAAA,EAAA,OAAA,EAAA,CAAA,UAAA,EAAA,YAAA,EAAA,QAAA,EAAA,QAAA,CAAA,EAAA,QAAA,EAAA,CAAA,QAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,EAAA;;2FAGX,2BAA2B,EAAA,UAAA,EAAA,CAAA;kBALvC,SAAS;8BAEC,CAAC,YAAY,CAAC,EAAA,UAAA,EACX,IAAI,EAAA,QAAA,EAAA,iCAAA,EAAA,CAAA;;;;;"}
|
@@ -0,0 +1,45 @@
|
|
1
|
+
import * as i5 from '@acorex/components/button';
|
2
|
+
import { AXButtonModule } from '@acorex/components/button';
|
3
|
+
import * as i7 from '@acorex/components/decorators';
|
4
|
+
import { AXDecoratorModule } from '@acorex/components/decorators';
|
5
|
+
import * as i2 from '@acorex/components/form';
|
6
|
+
import { AXFormModule } from '@acorex/components/form';
|
7
|
+
import * as i6 from '@acorex/components/label';
|
8
|
+
import { AXLabelModule } from '@acorex/components/label';
|
9
|
+
import { AXLoadingModule } from '@acorex/components/loading';
|
10
|
+
import * as i4 from '@acorex/components/password-box';
|
11
|
+
import { AXPasswordBoxModule } from '@acorex/components/password-box';
|
12
|
+
import * as i3 from '@acorex/components/text-box';
|
13
|
+
import { AXTextBoxModule } from '@acorex/components/text-box';
|
14
|
+
import * as i6$1 from '@acorex/core/translation';
|
15
|
+
import { AXTranslationModule } from '@acorex/core/translation';
|
16
|
+
import * as i1 from '@angular/common';
|
17
|
+
import { CommonModule } from '@angular/common';
|
18
|
+
import * as i0 from '@angular/core';
|
19
|
+
import { Component } from '@angular/core';
|
20
|
+
import * as i2$1 from '@angular/router';
|
21
|
+
import { RouterModule } from '@angular/router';
|
22
|
+
|
23
|
+
const MODULES = [
|
24
|
+
CommonModule,
|
25
|
+
AXFormModule,
|
26
|
+
AXTextBoxModule,
|
27
|
+
AXPasswordBoxModule,
|
28
|
+
AXButtonModule,
|
29
|
+
AXLabelModule,
|
30
|
+
AXDecoratorModule,
|
31
|
+
AXTranslationModule,
|
32
|
+
AXLoadingModule,
|
33
|
+
RouterModule
|
34
|
+
];
|
35
|
+
class AXPRegisterEmailComponent {
|
36
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: AXPRegisterEmailComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
37
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.1.2", type: AXPRegisterEmailComponent, isStandalone: true, selector: "ng-component", ngImport: i0, template: "<ng-container *translate=\"let t\">\n <div class=\"ax-text-center ax-mb-4\">\n <h1 class=\"ax-font-bold ax-text-xl ax-mb-2\">\n {{ t('signup.title',{scope:'auth'})| async}}\n </h1>\n <p class=\"ax-text-base ax-text-neutral-600\">\n {{ t('signup.hint',{scope:'auth'})| async}}\n </p>\n </div>\n <div class=\"ax-w-80 lg:ax-w-96\">\n <ax-form>\n <div class=\"ax-flex ax-flex-col ax-gap-6\">\n <ax-form-field>\n <ax-label> {{ t('email',{scope:'auth'})| async}}</ax-label>\n <ax-text-box>\n <ax-validation-rule type=\"required\"></ax-validation-rule>\n </ax-text-box>\n </ax-form-field>\n <ax-form-field>\n <ax-label> {{ t('password',{scope:'auth'})| async}}</ax-label>\n <ax-password-box>\n <ax-validation-rule type=\"required\"></ax-validation-rule>\n </ax-password-box>\n </ax-form-field>\n <ax-form-field>\n <ax-label> {{ t('confirm-password',{scope:'auth'})| async}}</ax-label>\n <ax-password-box>\n <ax-validation-rule type=\"required\"></ax-validation-rule>\n </ax-password-box>\n </ax-form-field>\n </div>\n <ax-button color=\"primary\" class=\"ax-mt-6 ax-w-full\" text=\"Submit\">\n </ax-button>\n <div class=\"ax-heading ax-heading-center !ax-my-8\">\n <span>or</span>\n </div>\n <div class=\"ax-flex ax-flex-col ax-gap-2 lg:ax-flex-row ax-justify-between ax-mt-6\">\n <ax-button text=\"Sign in with Google\" color=\"ghost\">\n <ax-prefix>\n <ax-icon>\n <i class=\"fa-brands fa-google fa-lg ax-text-danger-500\"></i>\n </ax-icon>\n </ax-prefix>\n </ax-button>\n <ax-button text=\"Sign in with Apple\" color=\"ghost\">\n <ax-prefix>\n <ax-icon>\n <i class=\"fa-brands fa-apple fa-xl\"></i>\n </ax-icon>\n </ax-prefix>\n </ax-button>\n </div>\n <div class=\"ax-text-center ax-mt-6 ax-text-sm ax-font-normal\">\n <span> {{ t('signup.hasAccount',{scope:'auth'}) | async}} </span>\n <a [routerLink]=\"['/auth/login']\" class=\"ax-link ax-font-semibold\">{{ t('signin.title',{scope:'auth'}) |\n async }}</a>\n </div>\n </ax-form>\n </div>\n</ng-container>", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "ngmodule", type: AXFormModule }, { kind: "component", type: i2.AXFormFieldComponent, selector: "ax-form-field" }, { kind: "component", type: i2.AXFormComponent, selector: "ax-form", inputs: ["messageStyle", "updateOn"], outputs: ["onValidate", "updateOnChange"] }, { kind: "directive", type: i2.AXValidationRuleDirective, selector: "ax-validation-rule", inputs: ["rule", "options", "message"] }, { kind: "ngmodule", type: AXTextBoxModule }, { kind: "component", type: i3.AXTextBoxComponent, selector: "ax-text-box", inputs: ["disabled", "tabIndex", "readonly", "value", "state", "name", "id", "placeholder", "maxLength", "allowNull", "type", "autoComplete", "look", "mask-options", "class"], outputs: ["onBlur", "onFocus", "valueChange", "stateChange", "onValueChanged", "readonlyChange", "disabledChange", "onKeyDown", "onKeyUp", "onKeyPress"] }, { kind: "ngmodule", type: AXPasswordBoxModule }, { kind: "component", type: i4.AXPasswordBoxComponent, selector: "ax-password-box", inputs: ["readonly", "disabled", "tabIndex", "placeholder", "value", "state", "name", "id", "look", "autoComplete", "showToggleButton", "class"], outputs: ["valueChange", "stateChange", "onValueChanged", "onBlur", "onFocus", "readonlyChange", "disabledChange", "onKeyDown", "onKeyUp", "onKeyPress"] }, { kind: "ngmodule", type: AXButtonModule }, { kind: "component", type: i5.AXButtonComponent, selector: "ax-button", inputs: ["disabled", "size", "tabIndex", "color", "look", "text", "toggleable", "selected", "type"], outputs: ["onBlur", "onFocus", "onClick", "selectedChange", "toggleableChange", "lookChange", "colorChange", "disabledChange"] }, { kind: "ngmodule", type: AXLabelModule }, { kind: "component", type: i6.AXLabelComponent, selector: "ax-label", inputs: ["required", "for"], outputs: ["requiredChange"] }, { kind: "ngmodule", type: AXDecoratorModule }, { kind: "component", type: i7.AXDecoratorIconComponent, selector: "ax-icon", inputs: ["icon"] }, { kind: "component", type: i7.AXDecoratorGenericComponent, selector: "ax-footer, ax-header, ax-content, ax-divider, ax-form-hint, ax-prefix, ax-suffix, ax-text, ax-title , ax-sub-title, ax-placeholder, ax-overlay" }, { kind: "ngmodule", type: AXTranslationModule }, { kind: "directive", type: i6$1.AXTranslatorDirective, selector: "[translate]" }, { kind: "ngmodule", type: AXLoadingModule }, { kind: "ngmodule", type: RouterModule }, { kind: "directive", type: i2$1.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }] }); }
|
38
|
+
}
|
39
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: AXPRegisterEmailComponent, decorators: [{
|
40
|
+
type: Component,
|
41
|
+
args: [{ imports: [...MODULES], standalone: true, template: "<ng-container *translate=\"let t\">\n <div class=\"ax-text-center ax-mb-4\">\n <h1 class=\"ax-font-bold ax-text-xl ax-mb-2\">\n {{ t('signup.title',{scope:'auth'})| async}}\n </h1>\n <p class=\"ax-text-base ax-text-neutral-600\">\n {{ t('signup.hint',{scope:'auth'})| async}}\n </p>\n </div>\n <div class=\"ax-w-80 lg:ax-w-96\">\n <ax-form>\n <div class=\"ax-flex ax-flex-col ax-gap-6\">\n <ax-form-field>\n <ax-label> {{ t('email',{scope:'auth'})| async}}</ax-label>\n <ax-text-box>\n <ax-validation-rule type=\"required\"></ax-validation-rule>\n </ax-text-box>\n </ax-form-field>\n <ax-form-field>\n <ax-label> {{ t('password',{scope:'auth'})| async}}</ax-label>\n <ax-password-box>\n <ax-validation-rule type=\"required\"></ax-validation-rule>\n </ax-password-box>\n </ax-form-field>\n <ax-form-field>\n <ax-label> {{ t('confirm-password',{scope:'auth'})| async}}</ax-label>\n <ax-password-box>\n <ax-validation-rule type=\"required\"></ax-validation-rule>\n </ax-password-box>\n </ax-form-field>\n </div>\n <ax-button color=\"primary\" class=\"ax-mt-6 ax-w-full\" text=\"Submit\">\n </ax-button>\n <div class=\"ax-heading ax-heading-center !ax-my-8\">\n <span>or</span>\n </div>\n <div class=\"ax-flex ax-flex-col ax-gap-2 lg:ax-flex-row ax-justify-between ax-mt-6\">\n <ax-button text=\"Sign in with Google\" color=\"ghost\">\n <ax-prefix>\n <ax-icon>\n <i class=\"fa-brands fa-google fa-lg ax-text-danger-500\"></i>\n </ax-icon>\n </ax-prefix>\n </ax-button>\n <ax-button text=\"Sign in with Apple\" color=\"ghost\">\n <ax-prefix>\n <ax-icon>\n <i class=\"fa-brands fa-apple fa-xl\"></i>\n </ax-icon>\n </ax-prefix>\n </ax-button>\n </div>\n <div class=\"ax-text-center ax-mt-6 ax-text-sm ax-font-normal\">\n <span> {{ t('signup.hasAccount',{scope:'auth'}) | async}} </span>\n <a [routerLink]=\"['/auth/login']\" class=\"ax-link ax-font-semibold\">{{ t('signin.title',{scope:'auth'}) |\n async }}</a>\n </div>\n </ax-form>\n </div>\n</ng-container>" }]
|
42
|
+
}] });
|
43
|
+
|
44
|
+
export { AXPRegisterEmailComponent };
|
45
|
+
//# sourceMappingURL=acorex-modules-auth-email.component-ZbTwT8iu.mjs.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"acorex-modules-auth-email.component-ZbTwT8iu.mjs","sources":["../../../../libs/modules/auth/src/lib/register/email/email.component.ts","../../../../libs/modules/auth/src/lib/register/email/email.component.html"],"sourcesContent":["import { AXButtonModule } from '@acorex/components/button';\nimport { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXFormModule } from '@acorex/components/form';\nimport { AXLabelModule } from '@acorex/components/label';\nimport { AXLoadingModule } from '@acorex/components/loading';\nimport { AXPasswordBoxModule } from '@acorex/components/password-box';\nimport { AXTextBoxModule } from '@acorex/components/text-box';\nimport { AXTranslationModule } from '@acorex/core/translation';\nimport { CommonModule } from '@angular/common';\nimport { Component } from '@angular/core';\nimport { RouterModule } from '@angular/router';\n\nconst MODULES = [\n CommonModule,\n AXFormModule,\n AXTextBoxModule,\n AXPasswordBoxModule,\n AXButtonModule,\n AXLabelModule,\n AXDecoratorModule,\n AXTranslationModule,\n AXLoadingModule,\n RouterModule\n];\n\n@Component({\n templateUrl: './email.component.html',\n imports: [...MODULES],\n standalone: true,\n})\nexport class AXPRegisterEmailComponent { }\n","<ng-container *translate=\"let t\">\n <div class=\"ax-text-center ax-mb-4\">\n <h1 class=\"ax-font-bold ax-text-xl ax-mb-2\">\n {{ t('signup.title',{scope:'auth'})| async}}\n </h1>\n <p class=\"ax-text-base ax-text-neutral-600\">\n {{ t('signup.hint',{scope:'auth'})| async}}\n </p>\n </div>\n <div class=\"ax-w-80 lg:ax-w-96\">\n <ax-form>\n <div class=\"ax-flex ax-flex-col ax-gap-6\">\n <ax-form-field>\n <ax-label> {{ t('email',{scope:'auth'})| async}}</ax-label>\n <ax-text-box>\n <ax-validation-rule type=\"required\"></ax-validation-rule>\n </ax-text-box>\n </ax-form-field>\n <ax-form-field>\n <ax-label> {{ t('password',{scope:'auth'})| async}}</ax-label>\n <ax-password-box>\n <ax-validation-rule type=\"required\"></ax-validation-rule>\n </ax-password-box>\n </ax-form-field>\n <ax-form-field>\n <ax-label> {{ t('confirm-password',{scope:'auth'})| async}}</ax-label>\n <ax-password-box>\n <ax-validation-rule type=\"required\"></ax-validation-rule>\n </ax-password-box>\n </ax-form-field>\n </div>\n <ax-button color=\"primary\" class=\"ax-mt-6 ax-w-full\" text=\"Submit\">\n </ax-button>\n <div class=\"ax-heading ax-heading-center !ax-my-8\">\n <span>or</span>\n </div>\n <div class=\"ax-flex ax-flex-col ax-gap-2 lg:ax-flex-row ax-justify-between ax-mt-6\">\n <ax-button text=\"Sign in with Google\" color=\"ghost\">\n <ax-prefix>\n <ax-icon>\n <i class=\"fa-brands fa-google fa-lg ax-text-danger-500\"></i>\n </ax-icon>\n </ax-prefix>\n </ax-button>\n <ax-button text=\"Sign in with Apple\" color=\"ghost\">\n <ax-prefix>\n <ax-icon>\n <i class=\"fa-brands fa-apple fa-xl\"></i>\n </ax-icon>\n </ax-prefix>\n </ax-button>\n </div>\n <div class=\"ax-text-center ax-mt-6 ax-text-sm ax-font-normal\">\n <span> {{ t('signup.hasAccount',{scope:'auth'}) | async}} </span>\n <a [routerLink]=\"['/auth/login']\" class=\"ax-link ax-font-semibold\">{{ t('signin.title',{scope:'auth'}) |\n async }}</a>\n </div>\n </ax-form>\n </div>\n</ng-container>"],"names":["i8","i9"],"mappings":"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"}
|
@@ -0,0 +1,71 @@
|
|
1
|
+
import * as i0 from '@angular/core';
|
2
|
+
import { inject, NgModule } from '@angular/core';
|
3
|
+
import { RouterModule, ROUTES } from '@angular/router';
|
4
|
+
import { A as AXM_AUTH_CONFIG_TOKEN, a as AXMAuthenticationTypes } from './acorex-modules-auth-acorex-modules-auth-3tiGzryz.mjs';
|
5
|
+
import '@acorex/platform/common';
|
6
|
+
import '@angular/common';
|
7
|
+
import '@angular/common/http';
|
8
|
+
import '@ngrx/effects';
|
9
|
+
import '@acorex/platform/auth';
|
10
|
+
import '@acorex/components/dialog';
|
11
|
+
import 'rxjs';
|
12
|
+
import 'rxjs/operators';
|
13
|
+
import '@acorex/components/button';
|
14
|
+
import '@acorex/components/decorators';
|
15
|
+
import '@acorex/components/popover';
|
16
|
+
import '@acorex/platform/layouts';
|
17
|
+
import '@acorex/components/loading';
|
18
|
+
import '@acorex/components/avatar';
|
19
|
+
import '@acorex/components/image';
|
20
|
+
|
21
|
+
function routesFacory() {
|
22
|
+
const val = inject(AXM_AUTH_CONFIG_TOKEN);
|
23
|
+
let routes = [];
|
24
|
+
routes = [
|
25
|
+
{
|
26
|
+
path: 'login',
|
27
|
+
loadComponent: () => {
|
28
|
+
if ([
|
29
|
+
AXMAuthenticationTypes.UsernamePassword,
|
30
|
+
AXMAuthenticationTypes.EmailPassword,
|
31
|
+
AXMAuthenticationTypes.MobilePassword,
|
32
|
+
].includes(val.type)) {
|
33
|
+
return import('./acorex-modules-auth-password.component-p1Ks9S5q.mjs').then((c) => c.AXPLoginPasswordComponent);
|
34
|
+
}
|
35
|
+
else {
|
36
|
+
return import('./acorex-modules-auth-password.component-p1Ks9S5q.mjs').then((c) => c.AXPLoginPasswordComponent);
|
37
|
+
}
|
38
|
+
},
|
39
|
+
},
|
40
|
+
// { path: 'signincallback', component: SignincallbackComponent },
|
41
|
+
];
|
42
|
+
return routes;
|
43
|
+
}
|
44
|
+
class AXPSignInModule {
|
45
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: AXPSignInModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
46
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.1.2", ngImport: i0, type: AXPSignInModule, imports: [RouterModule] }); }
|
47
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: AXPSignInModule, providers: [
|
48
|
+
{
|
49
|
+
provide: ROUTES,
|
50
|
+
multi: true,
|
51
|
+
useFactory: routesFacory,
|
52
|
+
},
|
53
|
+
], imports: [RouterModule] }); }
|
54
|
+
}
|
55
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: AXPSignInModule, decorators: [{
|
56
|
+
type: NgModule,
|
57
|
+
args: [{
|
58
|
+
imports: [RouterModule],
|
59
|
+
exports: [],
|
60
|
+
providers: [
|
61
|
+
{
|
62
|
+
provide: ROUTES,
|
63
|
+
multi: true,
|
64
|
+
useFactory: routesFacory,
|
65
|
+
},
|
66
|
+
],
|
67
|
+
}]
|
68
|
+
}] });
|
69
|
+
|
70
|
+
export { AXPSignInModule };
|
71
|
+
//# sourceMappingURL=acorex-modules-auth-login.module-lGs54nBU.mjs.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"acorex-modules-auth-login.module-lGs54nBU.mjs","sources":["../../../../libs/modules/auth/src/lib/login/login.module.ts"],"sourcesContent":["import { NgModule, inject } from '@angular/core';\nimport { ROUTES, RouterModule, Routes } from '@angular/router';\nimport { AXMAuthenticationTypes, AXM_AUTH_CONFIG_TOKEN } from '../auth.config';\n\nfunction routesFacory() {\n const val = inject(AXM_AUTH_CONFIG_TOKEN);\n let routes: Routes = [];\n routes = [\n {\n path: 'login',\n loadComponent: () => {\n if (\n [\n AXMAuthenticationTypes.UsernamePassword,\n AXMAuthenticationTypes.EmailPassword,\n AXMAuthenticationTypes.MobilePassword,\n ].includes(val.type)\n ) {\n return import('./password/password.component').then((c) => c.AXPLoginPasswordComponent);\n } else {\n return import('./password/password.component').then((c) => c.AXPLoginPasswordComponent);\n }\n },\n },\n // { path: 'signincallback', component: SignincallbackComponent },\n ];\n return routes;\n}\n\n@NgModule({\n imports: [RouterModule],\n exports: [],\n providers: [\n {\n provide: ROUTES,\n multi: true,\n useFactory: routesFacory,\n },\n ],\n})\nexport class AXPSignInModule {}\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;AAIA,SAAS,YAAY,GAAA;AACnB,IAAA,MAAM,GAAG,GAAG,MAAM,CAAC,qBAAqB,CAAC,CAAC;IAC1C,IAAI,MAAM,GAAW,EAAE,CAAC;AACxB,IAAA,MAAM,GAAG;AACP,QAAA;AACE,YAAA,IAAI,EAAE,OAAO;YACb,aAAa,EAAE,MAAK;gBAClB,IACE;AACE,oBAAA,sBAAsB,CAAC,gBAAgB;AACvC,oBAAA,sBAAsB,CAAC,aAAa;AACpC,oBAAA,sBAAsB,CAAC,cAAc;AACtC,iBAAA,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,EACpB;AACA,oBAAA,OAAO,OAAO,uDAA+B,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,yBAAyB,CAAC,CAAC;iBACzF;qBAAM;AACL,oBAAA,OAAO,OAAO,uDAA+B,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,yBAAyB,CAAC,CAAC;iBACzF;aACF;AACF,SAAA;;KAEF,CAAC;AACF,IAAA,OAAO,MAAM,CAAC;AAChB,CAAC;MAaY,eAAe,CAAA;8GAAf,eAAe,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA,EAAA;AAAf,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,eAAe,YAVhB,YAAY,CAAA,EAAA,CAAA,CAAA,EAAA;AAUX,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,eAAe,EARf,SAAA,EAAA;AACT,YAAA;AACE,gBAAA,OAAO,EAAE,MAAM;AACf,gBAAA,KAAK,EAAE,IAAI;AACX,gBAAA,UAAU,EAAE,YAAY;AACzB,aAAA;AACF,SAAA,EAAA,OAAA,EAAA,CARS,YAAY,CAAA,EAAA,CAAA,CAAA,EAAA;;2FAUX,eAAe,EAAA,UAAA,EAAA,CAAA;kBAX3B,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;oBACR,OAAO,EAAE,CAAC,YAAY,CAAC;AACvB,oBAAA,OAAO,EAAE,EAAE;AACX,oBAAA,SAAS,EAAE;AACT,wBAAA;AACE,4BAAA,OAAO,EAAE,MAAM;AACf,4BAAA,KAAK,EAAE,IAAI;AACX,4BAAA,UAAU,EAAE,YAAY;AACzB,yBAAA;AACF,qBAAA;AACF,iBAAA,CAAA;;;;;"}
|
@@ -0,0 +1,37 @@
|
|
1
|
+
import * as i1 from '@acorex/platform/common';
|
2
|
+
import { AXP_PLATFORM_CONFIG_TOKEN, AXPComponentSlotModule } from '@acorex/platform/common';
|
3
|
+
import { AXPLogoComponent } from '@acorex/platform/layouts';
|
4
|
+
import * as i0 from '@angular/core';
|
5
|
+
import { inject, Component, ViewEncapsulation } from '@angular/core';
|
6
|
+
import * as i2 from '@angular/router';
|
7
|
+
import { RouterModule } from '@angular/router';
|
8
|
+
import { A as AXM_AUTH_CONFIG_TOKEN } from './acorex-modules-auth-acorex-modules-auth-3tiGzryz.mjs';
|
9
|
+
import '@angular/common';
|
10
|
+
import '@angular/common/http';
|
11
|
+
import '@ngrx/effects';
|
12
|
+
import '@acorex/platform/auth';
|
13
|
+
import '@acorex/components/dialog';
|
14
|
+
import 'rxjs';
|
15
|
+
import 'rxjs/operators';
|
16
|
+
import '@acorex/components/button';
|
17
|
+
import '@acorex/components/decorators';
|
18
|
+
import '@acorex/components/popover';
|
19
|
+
import '@acorex/components/loading';
|
20
|
+
import '@acorex/components/avatar';
|
21
|
+
import '@acorex/components/image';
|
22
|
+
|
23
|
+
class AXPAuthMasterLayoutComponent {
|
24
|
+
constructor() {
|
25
|
+
this.authConfig = inject(AXM_AUTH_CONFIG_TOKEN);
|
26
|
+
this.platformConfig = inject(AXP_PLATFORM_CONFIG_TOKEN);
|
27
|
+
}
|
28
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: AXPAuthMasterLayoutComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
29
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.1.2", type: AXPAuthMasterLayoutComponent, isStandalone: true, selector: "ng-component", ngImport: i0, template: "<div class=\"ax-w-full ax-h-full ax-flex\">\n <div class=\"ax-flex-1 ax-bg-surface ax-flex ax-flex-col ax-items-center ax-justify-between ax-py-12\">\n <router-outlet></router-outlet>\n <div class=\"ax-flex ax-justify-between\">\n <div class=\"auth-footer-links\">\n <axp-component-slot name=\"auth-footer-links\"></axp-component-slot>\n </div>\n </div>\n </div>\n <div class=\"ax-hidden lg:ax-flex ax-bg-primary-500 ax-flex-1 axp-auth-bk\">\n <div class=\"ax-flex ax-flex-col ax-text-primary-fore ax-justify-between ax-px-48 ax-py-20 ax-text-center\">\n <div>\n <axp-logo [source]=\"platformConfig.logo?.colored\" [attr.alt]=\"platformConfig.title\"\n class=\"ax-w-48 ax-mx-auto\"></axp-logo>\n </div>\n <div>\n <p class=\"ax-font-black ax-text-4xl ax-mb-4\">\n {{authConfig.signinPage?.slogan}}\n </p>\n <p>\n {{authConfig.signinPage?.description}}\n </p>\n </div>\n </div>\n </div>\n</div>", styles: [".auth-footer-links{gap:1.25rem;font-size:.875rem;line-height:1.25rem;font-weight:600}.auth-footer-links a{color:rgba(var(--ax-color-primary-500));cursor:pointer}.auth-footer-links a:hover{text-decoration:underline}.auth-footer-links a:visited{color:rgba(var(--ax-color-primary-700))}\n"], dependencies: [{ kind: "ngmodule", type: RouterModule }, { kind: "directive", type: i2.RouterOutlet, selector: "router-outlet", inputs: ["name"], outputs: ["activate", "deactivate", "attach", "detach"], exportAs: ["outlet"] }, { kind: "component", type: AXPLogoComponent, selector: "axp-logo", inputs: ["source"] }, { kind: "ngmodule", type: AXPComponentSlotModule }, { kind: "directive", type: i1.AXPComponentSlotDirective, selector: "axp-component-slot", inputs: ["name"] }], encapsulation: i0.ViewEncapsulation.None }); }
|
30
|
+
}
|
31
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: AXPAuthMasterLayoutComponent, decorators: [{
|
32
|
+
type: Component,
|
33
|
+
args: [{ imports: [RouterModule, AXPLogoComponent, AXPComponentSlotModule], standalone: true, encapsulation: ViewEncapsulation.None, template: "<div class=\"ax-w-full ax-h-full ax-flex\">\n <div class=\"ax-flex-1 ax-bg-surface ax-flex ax-flex-col ax-items-center ax-justify-between ax-py-12\">\n <router-outlet></router-outlet>\n <div class=\"ax-flex ax-justify-between\">\n <div class=\"auth-footer-links\">\n <axp-component-slot name=\"auth-footer-links\"></axp-component-slot>\n </div>\n </div>\n </div>\n <div class=\"ax-hidden lg:ax-flex ax-bg-primary-500 ax-flex-1 axp-auth-bk\">\n <div class=\"ax-flex ax-flex-col ax-text-primary-fore ax-justify-between ax-px-48 ax-py-20 ax-text-center\">\n <div>\n <axp-logo [source]=\"platformConfig.logo?.colored\" [attr.alt]=\"platformConfig.title\"\n class=\"ax-w-48 ax-mx-auto\"></axp-logo>\n </div>\n <div>\n <p class=\"ax-font-black ax-text-4xl ax-mb-4\">\n {{authConfig.signinPage?.slogan}}\n </p>\n <p>\n {{authConfig.signinPage?.description}}\n </p>\n </div>\n </div>\n </div>\n</div>", styles: [".auth-footer-links{gap:1.25rem;font-size:.875rem;line-height:1.25rem;font-weight:600}.auth-footer-links a{color:rgba(var(--ax-color-primary-500));cursor:pointer}.auth-footer-links a:hover{text-decoration:underline}.auth-footer-links a:visited{color:rgba(var(--ax-color-primary-700))}\n"] }]
|
34
|
+
}] });
|
35
|
+
|
36
|
+
export { AXPAuthMasterLayoutComponent };
|
37
|
+
//# sourceMappingURL=acorex-modules-auth-master.layout-ytopPv2z.mjs.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"acorex-modules-auth-master.layout-ytopPv2z.mjs","sources":["../../../../libs/modules/auth/src/lib/shared/layouts/master/master.layout.ts","../../../../libs/modules/auth/src/lib/shared/layouts/master/master.layout.html"],"sourcesContent":["import { AXPComponentSlotModule, AXP_PLATFORM_CONFIG_TOKEN } from '@acorex/platform/common';\nimport { AXPLogoComponent } from '@acorex/platform/layouts';\nimport { Component, ViewEncapsulation, inject } from '@angular/core';\nimport { RouterModule } from '@angular/router';\nimport { AXM_AUTH_CONFIG_TOKEN } from '../../../auth.config';\n\n@Component({\n templateUrl: 'master.layout.html',\n styleUrls: ['master.layout.scss'],\n imports: [RouterModule, AXPLogoComponent, AXPComponentSlotModule],\n standalone: true,\n encapsulation: ViewEncapsulation.None\n})\nexport class AXPAuthMasterLayoutComponent {\n protected authConfig = inject(AXM_AUTH_CONFIG_TOKEN);\n protected platformConfig = inject(AXP_PLATFORM_CONFIG_TOKEN);\n}\n","<div class=\"ax-w-full ax-h-full ax-flex\">\n <div class=\"ax-flex-1 ax-bg-surface ax-flex ax-flex-col ax-items-center ax-justify-between ax-py-12\">\n <router-outlet></router-outlet>\n <div class=\"ax-flex ax-justify-between\">\n <div class=\"auth-footer-links\">\n <axp-component-slot name=\"auth-footer-links\"></axp-component-slot>\n </div>\n </div>\n </div>\n <div class=\"ax-hidden lg:ax-flex ax-bg-primary-500 ax-flex-1 axp-auth-bk\">\n <div class=\"ax-flex ax-flex-col ax-text-primary-fore ax-justify-between ax-px-48 ax-py-20 ax-text-center\">\n <div>\n <axp-logo [source]=\"platformConfig.logo?.colored\" [attr.alt]=\"platformConfig.title\"\n class=\"ax-w-48 ax-mx-auto\"></axp-logo>\n </div>\n <div>\n <p class=\"ax-font-black ax-text-4xl ax-mb-4\">\n {{authConfig.signinPage?.slogan}}\n </p>\n <p>\n {{authConfig.signinPage?.description}}\n </p>\n </div>\n </div>\n </div>\n</div>"],"names":["i1","i2"],"mappings":";;;;;;;;;;;;;;;;;;;;;;MAaa,4BAA4B,CAAA;AAPzC,IAAA,WAAA,GAAA;AAQY,QAAA,IAAA,CAAA,UAAU,GAAG,MAAM,CAAC,qBAAqB,CAAC,CAAC;AAC3C,QAAA,IAAA,CAAA,cAAc,GAAG,MAAM,CAAC,yBAAyB,CAAC,CAAC;AAC9D,KAAA;8GAHY,4BAA4B,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;AAA5B,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,4BAA4B,wECbzC,o/BAyBM,EAAA,MAAA,EAAA,CAAA,+RAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EDhBM,YAAY,EAAE,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,EAAA,CAAA,YAAA,EAAA,QAAA,EAAA,eAAA,EAAA,MAAA,EAAA,CAAA,MAAA,CAAA,EAAA,OAAA,EAAA,CAAA,UAAA,EAAA,YAAA,EAAA,QAAA,EAAA,QAAA,CAAA,EAAA,QAAA,EAAA,CAAA,QAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,gBAAgB,wEAAE,sBAAsB,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,EAAA,CAAA,yBAAA,EAAA,QAAA,EAAA,oBAAA,EAAA,MAAA,EAAA,CAAA,MAAA,CAAA,EAAA,CAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA,CAAA,EAAA;;2FAIrD,4BAA4B,EAAA,UAAA,EAAA,CAAA;kBAPxC,SAAS;8BAGC,CAAC,YAAY,EAAE,gBAAgB,EAAE,sBAAsB,CAAC,EAAA,UAAA,EACrD,IAAI,EAAA,aAAA,EACD,iBAAiB,CAAC,IAAI,EAAA,QAAA,EAAA,o/BAAA,EAAA,MAAA,EAAA,CAAA,+RAAA,CAAA,EAAA,CAAA;;;;;"}
|
@@ -0,0 +1,72 @@
|
|
1
|
+
import * as i5 from '@acorex/components/button';
|
2
|
+
import { AXButtonModule } from '@acorex/components/button';
|
3
|
+
import { AXCheckBoxModule } from '@acorex/components/check-box';
|
4
|
+
import * as i2 from '@acorex/components/form';
|
5
|
+
import { AXFormModule } from '@acorex/components/form';
|
6
|
+
import * as i6 from '@acorex/components/label';
|
7
|
+
import { AXLabelModule } from '@acorex/components/label';
|
8
|
+
import { AXPasswordBoxModule } from '@acorex/components/password-box';
|
9
|
+
import * as i3 from '@acorex/components/text-box';
|
10
|
+
import { AXTextBoxModule } from '@acorex/components/text-box';
|
11
|
+
import * as i6$1 from '@acorex/core/translation';
|
12
|
+
import { AXTranslationModule } from '@acorex/core/translation';
|
13
|
+
import * as i1 from '@angular/common';
|
14
|
+
import { CommonModule } from '@angular/common';
|
15
|
+
import * as i0 from '@angular/core';
|
16
|
+
import { inject, Component } from '@angular/core';
|
17
|
+
import * as i2$1 from '@angular/router';
|
18
|
+
import { RouterModule } from '@angular/router';
|
19
|
+
import { A as AXM_AUTH_CONFIG_TOKEN, a as AXMAuthenticationTypes } from './acorex-modules-auth-acorex-modules-auth-3tiGzryz.mjs';
|
20
|
+
import '@acorex/platform/common';
|
21
|
+
import '@angular/common/http';
|
22
|
+
import '@ngrx/effects';
|
23
|
+
import '@acorex/platform/auth';
|
24
|
+
import '@acorex/components/dialog';
|
25
|
+
import 'rxjs';
|
26
|
+
import 'rxjs/operators';
|
27
|
+
import '@acorex/components/decorators';
|
28
|
+
import '@acorex/components/popover';
|
29
|
+
import '@acorex/platform/layouts';
|
30
|
+
import '@acorex/components/loading';
|
31
|
+
import '@acorex/components/avatar';
|
32
|
+
import '@acorex/components/image';
|
33
|
+
|
34
|
+
const MODULES = [
|
35
|
+
CommonModule,
|
36
|
+
AXFormModule,
|
37
|
+
AXTextBoxModule,
|
38
|
+
AXPasswordBoxModule,
|
39
|
+
AXButtonModule,
|
40
|
+
AXLabelModule,
|
41
|
+
AXCheckBoxModule,
|
42
|
+
AXTranslationModule,
|
43
|
+
RouterModule,
|
44
|
+
];
|
45
|
+
class AXPForgetPasswordComponent {
|
46
|
+
constructor() {
|
47
|
+
this.configs = inject(AXM_AUTH_CONFIG_TOKEN);
|
48
|
+
}
|
49
|
+
ngOnInit() {
|
50
|
+
this.l2 = 'password';
|
51
|
+
switch (this.configs.type) {
|
52
|
+
case AXMAuthenticationTypes.EmailPassword:
|
53
|
+
this.l1 = 'email';
|
54
|
+
break;
|
55
|
+
case AXMAuthenticationTypes.MobilePassword:
|
56
|
+
this.l1 = 'mobile';
|
57
|
+
break;
|
58
|
+
case AXMAuthenticationTypes.UsernamePassword:
|
59
|
+
default:
|
60
|
+
this.l1 = 'username';
|
61
|
+
}
|
62
|
+
}
|
63
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: AXPForgetPasswordComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
64
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.1.2", type: AXPForgetPasswordComponent, isStandalone: true, selector: "ng-component", ngImport: i0, template: "<div class=\"ax-text-center ax-mb-4\" *translate=\"let t\">\n <h1 class=\"ax-font-bold ax-text-xl ax-mb-2\">{{ t('forgot.password',{scope:'auth'}) | async }}</h1>\n <p class=\"ax-text-base ax-text-neutral-600\">\n {{ t('forgot.hint',{ scope:'auth', params:{ name:(t(l1,{scope:'auth'}) | async) } }) | async }}\n </p>\n</div>\n<div class=\"ax-w-80 lg:ax-w-96\" *translate=\"let t\">\n <ax-form>\n <div class=\"ax-flex ax-flex-col ax-gap-6\">\n <ax-form-field>\n <ax-label>{{ t(l1,{scope:'auth'}) | async }}</ax-label>\n <ax-text-box></ax-text-box>\n </ax-form-field>\n </div>\n <ax-button color=\"primary\" class=\"ax-mt-6 ax-w-full\" [text]=\"t('forgot.submit',{scope:'auth'}) | async\"></ax-button>\n <div class=\"ax-text-center ax-mt-6 ax-text-sm ax-font-normal\">\n <span> {{ t('forgot.remember',{scope:'auth'}) | async}} </span>\n <a [routerLink]=\"['/auth/login']\" class=\"ax-link ax-font-semibold\">{{ t('signin.title',{scope:'auth'}) |\n async }}</a>\n </div>\n </ax-form>\n</div>", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "ngmodule", type: AXFormModule }, { kind: "component", type: i2.AXFormFieldComponent, selector: "ax-form-field" }, { kind: "component", type: i2.AXFormComponent, selector: "ax-form", inputs: ["messageStyle", "updateOn"], outputs: ["onValidate", "updateOnChange"] }, { kind: "ngmodule", type: AXTextBoxModule }, { kind: "component", type: i3.AXTextBoxComponent, selector: "ax-text-box", inputs: ["disabled", "tabIndex", "readonly", "value", "state", "name", "id", "placeholder", "maxLength", "allowNull", "type", "autoComplete", "look", "mask-options", "class"], outputs: ["onBlur", "onFocus", "valueChange", "stateChange", "onValueChanged", "readonlyChange", "disabledChange", "onKeyDown", "onKeyUp", "onKeyPress"] }, { kind: "ngmodule", type: AXPasswordBoxModule }, { kind: "ngmodule", type: AXButtonModule }, { kind: "component", type: i5.AXButtonComponent, selector: "ax-button", inputs: ["disabled", "size", "tabIndex", "color", "look", "text", "toggleable", "selected", "type"], outputs: ["onBlur", "onFocus", "onClick", "selectedChange", "toggleableChange", "lookChange", "colorChange", "disabledChange"] }, { kind: "ngmodule", type: AXLabelModule }, { kind: "component", type: i6.AXLabelComponent, selector: "ax-label", inputs: ["required", "for"], outputs: ["requiredChange"] }, { kind: "ngmodule", type: AXCheckBoxModule }, { kind: "ngmodule", type: AXTranslationModule }, { kind: "directive", type: i6$1.AXTranslatorDirective, selector: "[translate]" }, { kind: "ngmodule", type: RouterModule }, { kind: "directive", type: i2$1.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }] }); }
|
65
|
+
}
|
66
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: AXPForgetPasswordComponent, decorators: [{
|
67
|
+
type: Component,
|
68
|
+
args: [{ imports: [...MODULES], standalone: true, template: "<div class=\"ax-text-center ax-mb-4\" *translate=\"let t\">\n <h1 class=\"ax-font-bold ax-text-xl ax-mb-2\">{{ t('forgot.password',{scope:'auth'}) | async }}</h1>\n <p class=\"ax-text-base ax-text-neutral-600\">\n {{ t('forgot.hint',{ scope:'auth', params:{ name:(t(l1,{scope:'auth'}) | async) } }) | async }}\n </p>\n</div>\n<div class=\"ax-w-80 lg:ax-w-96\" *translate=\"let t\">\n <ax-form>\n <div class=\"ax-flex ax-flex-col ax-gap-6\">\n <ax-form-field>\n <ax-label>{{ t(l1,{scope:'auth'}) | async }}</ax-label>\n <ax-text-box></ax-text-box>\n </ax-form-field>\n </div>\n <ax-button color=\"primary\" class=\"ax-mt-6 ax-w-full\" [text]=\"t('forgot.submit',{scope:'auth'}) | async\"></ax-button>\n <div class=\"ax-text-center ax-mt-6 ax-text-sm ax-font-normal\">\n <span> {{ t('forgot.remember',{scope:'auth'}) | async}} </span>\n <a [routerLink]=\"['/auth/login']\" class=\"ax-link ax-font-semibold\">{{ t('signin.title',{scope:'auth'}) |\n async }}</a>\n </div>\n </ax-form>\n</div>" }]
|
69
|
+
}] });
|
70
|
+
|
71
|
+
export { AXPForgetPasswordComponent };
|
72
|
+
//# sourceMappingURL=acorex-modules-auth-password.component-Q9Me4kkK.mjs.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"acorex-modules-auth-password.component-Q9Me4kkK.mjs","sources":["../../../../libs/modules/auth/src/lib/forgot/password/password.component.ts","../../../../libs/modules/auth/src/lib/forgot/password/password.component.html"],"sourcesContent":["import { AXButtonModule } from '@acorex/components/button';\nimport { AXCheckBoxModule } from '@acorex/components/check-box';\nimport { AXFormModule } from '@acorex/components/form';\nimport { AXLabelModule } from '@acorex/components/label';\nimport { AXPasswordBoxModule } from '@acorex/components/password-box';\nimport { AXTextBoxModule } from '@acorex/components/text-box';\nimport { AXTranslationModule } from '@acorex/core/translation';\nimport { CommonModule } from '@angular/common';\nimport { Component, OnInit, inject } from '@angular/core';\nimport { RouterModule } from '@angular/router';\nimport { AXMAuthConfigs, AXMAuthenticationTypes, AXM_AUTH_CONFIG_TOKEN } from '../../auth.config';\n\nconst MODULES = [\n CommonModule,\n AXFormModule,\n AXTextBoxModule,\n AXPasswordBoxModule,\n AXButtonModule,\n AXLabelModule,\n AXCheckBoxModule,\n AXTranslationModule,\n RouterModule,\n];\n\n@Component({\n templateUrl: './password.component.html',\n imports: [...MODULES],\n standalone: true,\n})\nexport class AXPForgetPasswordComponent implements OnInit {\n protected l1!: string;\n protected l2!: string;\n\n protected configs: AXMAuthConfigs = inject<AXMAuthConfigs>(AXM_AUTH_CONFIG_TOKEN);\n\n ngOnInit(): void {\n this.l2 = 'password';\n switch (this.configs.type) {\n case AXMAuthenticationTypes.EmailPassword:\n this.l1 = 'email';\n break;\n case AXMAuthenticationTypes.MobilePassword:\n this.l1 = 'mobile';\n\n break;\n case AXMAuthenticationTypes.UsernamePassword:\n default:\n this.l1 = 'username';\n }\n }\n}\n","<div class=\"ax-text-center ax-mb-4\" *translate=\"let t\">\n <h1 class=\"ax-font-bold ax-text-xl ax-mb-2\">{{ t('forgot.password',{scope:'auth'}) | async }}</h1>\n <p class=\"ax-text-base ax-text-neutral-600\">\n {{ t('forgot.hint',{ scope:'auth', params:{ name:(t(l1,{scope:'auth'}) | async) } }) | async }}\n </p>\n</div>\n<div class=\"ax-w-80 lg:ax-w-96\" *translate=\"let t\">\n <ax-form>\n <div class=\"ax-flex ax-flex-col ax-gap-6\">\n <ax-form-field>\n <ax-label>{{ t(l1,{scope:'auth'}) | async }}</ax-label>\n <ax-text-box></ax-text-box>\n </ax-form-field>\n </div>\n <ax-button color=\"primary\" class=\"ax-mt-6 ax-w-full\" [text]=\"t('forgot.submit',{scope:'auth'}) | async\"></ax-button>\n <div class=\"ax-text-center ax-mt-6 ax-text-sm ax-font-normal\">\n <span> {{ t('forgot.remember',{scope:'auth'}) | async}} </span>\n <a [routerLink]=\"['/auth/login']\" class=\"ax-link ax-font-semibold\">{{ t('signin.title',{scope:'auth'}) |\n async }}</a>\n </div>\n </ax-form>\n</div>"],"names":["i5","i7"],"mappings":"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"}
|
@@ -0,0 +1,110 @@
|
|
1
|
+
import * as i5 from '@acorex/components/button';
|
2
|
+
import { AXButtonModule } from '@acorex/components/button';
|
3
|
+
import * as i8 from '@acorex/components/check-box';
|
4
|
+
import { AXCheckBoxModule } from '@acorex/components/check-box';
|
5
|
+
import * as i7 from '@acorex/components/decorators';
|
6
|
+
import { AXDecoratorModule } from '@acorex/components/decorators';
|
7
|
+
import { AXDialogService } from '@acorex/components/dialog';
|
8
|
+
import * as i2 from '@acorex/components/form';
|
9
|
+
import { AXFormModule, AXFormComponent } from '@acorex/components/form';
|
10
|
+
import * as i6 from '@acorex/components/label';
|
11
|
+
import { AXLabelModule } from '@acorex/components/label';
|
12
|
+
import * as i3$1 from '@acorex/components/loading';
|
13
|
+
import { AXLoadingModule } from '@acorex/components/loading';
|
14
|
+
import * as i4 from '@acorex/components/password-box';
|
15
|
+
import { AXPasswordBoxModule } from '@acorex/components/password-box';
|
16
|
+
import * as i3 from '@acorex/components/text-box';
|
17
|
+
import { AXTextBoxModule } from '@acorex/components/text-box';
|
18
|
+
import * as i6$1 from '@acorex/core/translation';
|
19
|
+
import { AXTranslationModule } from '@acorex/core/translation';
|
20
|
+
import * as i1 from '@angular/common';
|
21
|
+
import { CommonModule } from '@angular/common';
|
22
|
+
import * as i0 from '@angular/core';
|
23
|
+
import { inject, Component, ViewChild } from '@angular/core';
|
24
|
+
import * as i2$1 from '@angular/router';
|
25
|
+
import { RouterModule, Router } from '@angular/router';
|
26
|
+
import { AXPSessionService } from '@acorex/platform/auth';
|
27
|
+
import { BehaviorSubject } from 'rxjs';
|
28
|
+
import { A as AXM_AUTH_CONFIG_TOKEN, a as AXMAuthenticationTypes } from './acorex-modules-auth-acorex-modules-auth-3tiGzryz.mjs';
|
29
|
+
import '@acorex/platform/common';
|
30
|
+
import '@angular/common/http';
|
31
|
+
import '@ngrx/effects';
|
32
|
+
import 'rxjs/operators';
|
33
|
+
import '@acorex/components/popover';
|
34
|
+
import '@acorex/platform/layouts';
|
35
|
+
import '@acorex/components/avatar';
|
36
|
+
import '@acorex/components/image';
|
37
|
+
|
38
|
+
const MODULES = [
|
39
|
+
CommonModule,
|
40
|
+
AXFormModule,
|
41
|
+
AXTextBoxModule,
|
42
|
+
AXPasswordBoxModule,
|
43
|
+
AXButtonModule,
|
44
|
+
AXLabelModule,
|
45
|
+
AXDecoratorModule,
|
46
|
+
AXCheckBoxModule,
|
47
|
+
AXTranslationModule,
|
48
|
+
AXTranslationModule,
|
49
|
+
AXLoadingModule,
|
50
|
+
RouterModule,
|
51
|
+
];
|
52
|
+
class AXPLoginPasswordComponent {
|
53
|
+
constructor() {
|
54
|
+
this.configs = inject(AXM_AUTH_CONFIG_TOKEN);
|
55
|
+
this.v1 = 'admin';
|
56
|
+
this.v2 = '123';
|
57
|
+
this.isLoading$ = new BehaviorSubject(false);
|
58
|
+
this.submitText = 'signin.submit';
|
59
|
+
this.dialogService = inject(AXDialogService);
|
60
|
+
this.sessionService = inject(AXPSessionService);
|
61
|
+
this.router = inject(Router);
|
62
|
+
}
|
63
|
+
ngOnInit() {
|
64
|
+
this.l2 = 'password';
|
65
|
+
switch (this.configs.type) {
|
66
|
+
case AXMAuthenticationTypes.EmailPassword:
|
67
|
+
this.l1 = 'email';
|
68
|
+
break;
|
69
|
+
case AXMAuthenticationTypes.MobilePassword:
|
70
|
+
this.l1 = 'mobile';
|
71
|
+
break;
|
72
|
+
case AXMAuthenticationTypes.UsernamePassword:
|
73
|
+
default:
|
74
|
+
this.l1 = 'username';
|
75
|
+
}
|
76
|
+
}
|
77
|
+
handleForgotOnClick() {
|
78
|
+
this.router.navigate(['/auth/forgot']);
|
79
|
+
}
|
80
|
+
handleLoginClick() {
|
81
|
+
this.form.validate().then(async (form) => {
|
82
|
+
if (form.result) {
|
83
|
+
this.isLoading$.next(true);
|
84
|
+
this.submitText = 'processing';
|
85
|
+
this.submitText = 'redirecting';
|
86
|
+
try {
|
87
|
+
await this.sessionService.signin({ strategy: 'oidc', username: this.v1, password: this.v2 });
|
88
|
+
this.router.navigate(['/auth/account/tenant-chooser']);
|
89
|
+
}
|
90
|
+
catch (error) {
|
91
|
+
this.dialogService.alert('Something went wrong!', `${error} `, 'warning');
|
92
|
+
this.submitText = 'signin.submit';
|
93
|
+
this.isLoading$.next(false);
|
94
|
+
}
|
95
|
+
}
|
96
|
+
});
|
97
|
+
}
|
98
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: AXPLoginPasswordComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
99
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.1.2", type: AXPLoginPasswordComponent, isStandalone: true, selector: "ng-component", viewQueries: [{ propertyName: "form", first: true, predicate: AXFormComponent, descendants: true }], ngImport: i0, template: "<ng-container *translate=\"let t\">\n <div class=\"ax-text-center ax-mb-4\">\n <h1 class=\"ax-font-bold ax-text-xl ax-mb-2\">\n {{ t('signin.title',{scope:'auth'}) | async }}\n </h1>\n <p class=\"ax-text-base ax-text-neutral-600\">\n {{ t('signin.hint',{scope:'auth'}) | async }}\n </p>\n </div>\n <div class=\"ax-w-80 lg:ax-w-96\">\n <ax-form>\n <div class=\"ax-flex ax-flex-col ax-gap-6\">\n <ax-form-field>\n <ax-label>{{ t(l1,{scope:'auth'}) | async }}</ax-label>\n <ax-text-box [(value)]=\"v1\">\n <ax-validation-rule rule=\"required\"></ax-validation-rule>\n </ax-text-box>\n </ax-form-field>\n <ax-form-field>\n <ax-label>{{ t(l2,{scope:'auth'}) | async }}</ax-label>\n <ax-password-box [(value)]=\"v2\">\n <ax-validation-rule rule=\"required\"></ax-validation-rule>\n </ax-password-box>\n </ax-form-field>\n <div class=\"ax-flex ax-justify-between ax-items-center\">\n <ax-check-box>\n <ax-label class=\"ax-mb-0\">{{ t('signin.remember',{scope:'auth'}) | async }}</ax-label>\n </ax-check-box>\n <ax-button color=\"primary\" class=\"ax-sm\" [text]=\"t('forgot.password',{scope:'auth'}) | async\" look=\"blank\"\n (onClick)=\"handleForgotOnClick()\">\n </ax-button>\n </div>\n </div>\n <ax-button color=\"primary\" class=\"ax-mt-6 ax-w-full\" [text]=\"t(submitText,{scope:'auth'}) | async\"\n (onClick)=\"handleLoginClick()\" [disabled]=\"isLoading$ | async\">\n <ax-loading *ngIf=\"isLoading$ | async\"></ax-loading>\n </ax-button>\n <div class=\"ax-heading ax-heading-center !ax-my-8\">\n <span>{{ t('signin.or',{scope:'auth'}) | async }}</span>\n </div>\n <div class=\"ax-flex ax-flex-col ax-gap-2 lg:ax-flex-row ax-justify-between ax-mt-6\">\n <ax-button text=\"Sign in with Google\" color=\"ghost\">\n <ax-prefix>\n <ax-icon>\n <i class=\"fa-brands fa-google fa-lg ax-text-danger-500\"></i>\n </ax-icon>\n </ax-prefix>\n </ax-button>\n <ax-button text=\"Sign in with Apple\" color=\"ghost\">\n <ax-prefix>\n <ax-icon>\n <i class=\"fa-brands fa-apple fa-xl\"></i>\n </ax-icon>\n </ax-prefix>\n </ax-button>\n </div>\n <div class=\"ax-text-center ax-mt-6 ax-text-sm ax-font-normal\">\n <span> {{ t('signin.noAccount',{scope:'auth'}) | async}} </span>\n <a [routerLink]=\"['/auth/register']\" class=\"ax-link ax-font-semibold\">{{ t('signin.register',{scope:'auth'}) |\n async }}</a>\n </div>\n </ax-form>\n </div>\n</ng-container>", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "ngmodule", type: AXFormModule }, { kind: "component", type: i2.AXFormFieldComponent, selector: "ax-form-field" }, { kind: "component", type: i2.AXFormComponent, selector: "ax-form", inputs: ["messageStyle", "updateOn"], outputs: ["onValidate", "updateOnChange"] }, { kind: "directive", type: i2.AXValidationRuleDirective, selector: "ax-validation-rule", inputs: ["rule", "options", "message"] }, { kind: "ngmodule", type: AXTextBoxModule }, { kind: "component", type: i3.AXTextBoxComponent, selector: "ax-text-box", inputs: ["disabled", "tabIndex", "readonly", "value", "state", "name", "id", "placeholder", "maxLength", "allowNull", "type", "autoComplete", "look", "mask-options", "class"], outputs: ["onBlur", "onFocus", "valueChange", "stateChange", "onValueChanged", "readonlyChange", "disabledChange", "onKeyDown", "onKeyUp", "onKeyPress"] }, { kind: "ngmodule", type: AXPasswordBoxModule }, { kind: "component", type: i4.AXPasswordBoxComponent, selector: "ax-password-box", inputs: ["readonly", "disabled", "tabIndex", "placeholder", "value", "state", "name", "id", "look", "autoComplete", "showToggleButton", "class"], outputs: ["valueChange", "stateChange", "onValueChanged", "onBlur", "onFocus", "readonlyChange", "disabledChange", "onKeyDown", "onKeyUp", "onKeyPress"] }, { kind: "ngmodule", type: AXButtonModule }, { kind: "component", type: i5.AXButtonComponent, selector: "ax-button", inputs: ["disabled", "size", "tabIndex", "color", "look", "text", "toggleable", "selected", "type"], outputs: ["onBlur", "onFocus", "onClick", "selectedChange", "toggleableChange", "lookChange", "colorChange", "disabledChange"] }, { kind: "ngmodule", type: AXLabelModule }, { kind: "component", type: i6.AXLabelComponent, selector: "ax-label", inputs: ["required", "for"], outputs: ["requiredChange"] }, { kind: "ngmodule", type: AXDecoratorModule }, { kind: "component", type: i7.AXDecoratorIconComponent, selector: "ax-icon", inputs: ["icon"] }, { kind: "component", type: i7.AXDecoratorGenericComponent, selector: "ax-footer, ax-header, ax-content, ax-divider, ax-form-hint, ax-prefix, ax-suffix, ax-text, ax-title , ax-sub-title, ax-placeholder, ax-overlay" }, { kind: "ngmodule", type: AXCheckBoxModule }, { kind: "component", type: i8.AXCheckBoxComponent, selector: "ax-check-box", inputs: ["disabled", "tabIndex", "readonly", "value", "name", "id", "checked", "indeterminate"], outputs: ["onBlur", "onFocus", "valueChange", "onValueChanged"] }, { kind: "ngmodule", type: AXTranslationModule }, { kind: "directive", type: i6$1.AXTranslatorDirective, selector: "[translate]" }, { kind: "ngmodule", type: AXLoadingModule }, { kind: "component", type: i3$1.AXLoadingComponent, selector: "ax-loading", inputs: ["visible", "type", "context"], outputs: ["visibleChange"] }, { kind: "ngmodule", type: RouterModule }, { kind: "directive", type: i2$1.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }] }); }
|
100
|
+
}
|
101
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: AXPLoginPasswordComponent, decorators: [{
|
102
|
+
type: Component,
|
103
|
+
args: [{ imports: [...MODULES], standalone: true, template: "<ng-container *translate=\"let t\">\n <div class=\"ax-text-center ax-mb-4\">\n <h1 class=\"ax-font-bold ax-text-xl ax-mb-2\">\n {{ t('signin.title',{scope:'auth'}) | async }}\n </h1>\n <p class=\"ax-text-base ax-text-neutral-600\">\n {{ t('signin.hint',{scope:'auth'}) | async }}\n </p>\n </div>\n <div class=\"ax-w-80 lg:ax-w-96\">\n <ax-form>\n <div class=\"ax-flex ax-flex-col ax-gap-6\">\n <ax-form-field>\n <ax-label>{{ t(l1,{scope:'auth'}) | async }}</ax-label>\n <ax-text-box [(value)]=\"v1\">\n <ax-validation-rule rule=\"required\"></ax-validation-rule>\n </ax-text-box>\n </ax-form-field>\n <ax-form-field>\n <ax-label>{{ t(l2,{scope:'auth'}) | async }}</ax-label>\n <ax-password-box [(value)]=\"v2\">\n <ax-validation-rule rule=\"required\"></ax-validation-rule>\n </ax-password-box>\n </ax-form-field>\n <div class=\"ax-flex ax-justify-between ax-items-center\">\n <ax-check-box>\n <ax-label class=\"ax-mb-0\">{{ t('signin.remember',{scope:'auth'}) | async }}</ax-label>\n </ax-check-box>\n <ax-button color=\"primary\" class=\"ax-sm\" [text]=\"t('forgot.password',{scope:'auth'}) | async\" look=\"blank\"\n (onClick)=\"handleForgotOnClick()\">\n </ax-button>\n </div>\n </div>\n <ax-button color=\"primary\" class=\"ax-mt-6 ax-w-full\" [text]=\"t(submitText,{scope:'auth'}) | async\"\n (onClick)=\"handleLoginClick()\" [disabled]=\"isLoading$ | async\">\n <ax-loading *ngIf=\"isLoading$ | async\"></ax-loading>\n </ax-button>\n <div class=\"ax-heading ax-heading-center !ax-my-8\">\n <span>{{ t('signin.or',{scope:'auth'}) | async }}</span>\n </div>\n <div class=\"ax-flex ax-flex-col ax-gap-2 lg:ax-flex-row ax-justify-between ax-mt-6\">\n <ax-button text=\"Sign in with Google\" color=\"ghost\">\n <ax-prefix>\n <ax-icon>\n <i class=\"fa-brands fa-google fa-lg ax-text-danger-500\"></i>\n </ax-icon>\n </ax-prefix>\n </ax-button>\n <ax-button text=\"Sign in with Apple\" color=\"ghost\">\n <ax-prefix>\n <ax-icon>\n <i class=\"fa-brands fa-apple fa-xl\"></i>\n </ax-icon>\n </ax-prefix>\n </ax-button>\n </div>\n <div class=\"ax-text-center ax-mt-6 ax-text-sm ax-font-normal\">\n <span> {{ t('signin.noAccount',{scope:'auth'}) | async}} </span>\n <a [routerLink]=\"['/auth/register']\" class=\"ax-link ax-font-semibold\">{{ t('signin.register',{scope:'auth'}) |\n async }}</a>\n </div>\n </ax-form>\n </div>\n</ng-container>" }]
|
104
|
+
}], propDecorators: { form: [{
|
105
|
+
type: ViewChild,
|
106
|
+
args: [AXFormComponent]
|
107
|
+
}] } });
|
108
|
+
|
109
|
+
export { AXPLoginPasswordComponent };
|
110
|
+
//# sourceMappingURL=acorex-modules-auth-password.component-p1Ks9S5q.mjs.map
|