@mckit/auth 19.0.4 → 19.0.6

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.
@@ -102,7 +102,7 @@ class MCAuthenticationService {
102
102
  });
103
103
  }
104
104
  signIn(data) {
105
- return this.http.post(`${this.config.baseUrl}oauth/token`, data)
105
+ return this.http.post(`${this.config.baseUrl}oauth/token`, { ...data, grant_type: 'password' })
106
106
  .pipe(switchMap(user => this.saveUser(user).pipe(map(res => user))));
107
107
  }
108
108
  register(data) {
@@ -1 +1 @@
1
- {"version":3,"file":"mckit-auth.mjs","sources":["../../../../projects/mckit/auth/src/lib/entities/mc-user.ts","../../../../projects/mckit/auth/src/lib/entities/mc-auth-config.ts","../../../../projects/mckit/auth/src/lib/entities/mc-auth-model.ts","../../../../projects/mckit/auth/src/lib/entities/mc-base-auth-page-config.ts","../../../../projects/mckit/auth/src/lib/providers/auth.provider.ts","../../../../projects/mckit/auth/src/lib/services/authentication.service.ts","../../../../projects/mckit/auth/src/lib/interceptors/auth.interceptor.ts","../../../../projects/mckit/auth/src/lib/guards/auth.guard.ts","../../../../projects/mckit/auth/src/lib/resolvers/user.resolver.ts","../../../../projects/mckit/auth/src/lib/pipes/initial-name.pipe.ts","../../../../projects/mckit/auth/src/lib/components/avatar-with-menu/avatar-with-menu.component.ts","../../../../projects/mckit/auth/src/lib/components/avatar-with-menu/avatar-with-menu.component.html","../../../../projects/mckit/auth/src/lib/pages/base-auth-page.component.ts","../../../../projects/mckit/auth/src/lib/pages/auth-basic/auth-basic.component.ts","../../../../projects/mckit/auth/src/lib/pages/auth-basic/auth-basic.component.html","../../../../projects/mckit/auth/src/lib/pages/auth-half/auth-half.component.ts","../../../../projects/mckit/auth/src/lib/pages/auth-half/auth-half.component.html","../../../../projects/mckit/auth/src/lib/pages/auth-sakai/auth-sakai.component.ts","../../../../projects/mckit/auth/src/lib/pages/auth-sakai/auth-sakai.component.html","../../../../projects/mckit/auth/src/lib/pages/auth-sakai-only-social/auth-sakai-only-social.component.ts","../../../../projects/mckit/auth/src/lib/pages/auth-sakai-only-social/auth-sakai-only-social.component.html","../../../../projects/mckit/auth/src/public-api.ts","../../../../projects/mckit/auth/src/mckit-auth.ts"],"sourcesContent":["export class MCUser {\n static STATUS_INACTIVE = 0;\n static STATUS_ACTIVE = 1;\n static STATUS_SUSPENDED = 2;\n\n public id?: number|string;\n public firstname: string = '';\n public lastname: string = '';\n public email: string = '';\n public photo?: string = '';\n public role: number = 0;\n public status: number = 0;\n public created_at: string = '';\n public extra: any;\n\n public token_type: string = 'bearer';\n public access_token: string = '';\n}\n","import { InjectionToken } from \"@angular/core\";\n\nexport const MC_AUTH_CONFIG = new InjectionToken<MCAuthConfig>('mc.auth');\n\nexport class MCAuthConfig {\n baseUrl: string = '';\n}\n","export class MCAuthModel {\n email?: string|null;\n password?: string|null;\n}\n","export class MCBaseAuthPageConfig {\n title?: string;\n}\n","import { EnvironmentProviders, makeEnvironmentProviders } from \"@angular/core\";\nimport { MC_AUTH_CONFIG, MCAuthConfig } from \"../entities/mc-auth-config\";\n\nexport function provideMCAuth(value: MCAuthConfig): EnvironmentProviders {\n return makeEnvironmentProviders([{ provide: MC_AUTH_CONFIG, useValue: value }]);\n}\n","import { inject, Injectable, signal } from '@angular/core';\nimport { StorageMap } from '@ngx-pwa/local-storage';\nimport { MCUser } from '../entities/mc-user';\nimport { map, Observable, switchMap, tap } from 'rxjs';\nimport { HttpClient } from '@angular/common/http';\nimport { MC_AUTH_CONFIG } from '../entities/mc-auth-config';\n\nexport const MC_AUTH_KEY_STORAGE_TOKEN = 'mc.auth.storage';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class MCAuthenticationService {\n\n http = inject(HttpClient);\n\n config = inject(MC_AUTH_CONFIG);\n\n isLogged = signal<boolean>(false);\n\n constructor(\n private storage: StorageMap\n ) {\n this.initialize();\n }\n\n saveUser(user: MCUser): Observable<undefined> {\n return this.storage.set(MC_AUTH_KEY_STORAGE_TOKEN, JSON.stringify(user), { type: 'string' })\n .pipe(tap(res => this.isLogged.update(res => true)));\n }\n\n getUser(): Observable<MCUser|undefined> {\n return this.storage.get(MC_AUTH_KEY_STORAGE_TOKEN, { type: 'string' })\n .pipe(map(data => {\n if(data == undefined||data == ''){\n return;\n }\n return JSON.parse(data);\n }));\n }\n\n removeUser(): Observable<any> {\n return this.storage.delete(MC_AUTH_KEY_STORAGE_TOKEN);\n }\n\n initialize() {\n this.getUser()\n .subscribe(user => {\n if(user == undefined){\n return;\n }\n\n this.isLogged.update(res => true);\n });\n }\n\n signIn(data: any): Observable<MCUser> {\n return this.http.post<MCUser>(`${this.config.baseUrl}oauth/token`, data)\n .pipe(\n switchMap(user => this.saveUser(user).pipe(map(res => user)))\n );\n }\n\n register(data: any): Observable<MCUser> {\n return this.http.post<MCUser>(`${this.config.baseUrl}users`, data)\n .pipe(\n switchMap(() => this.signIn(data)),\n switchMap(user => this.saveUser(user).pipe(map(res => user)))\n );\n }\n}\n","import { HttpErrorResponse, HttpInterceptorFn, HttpResponse } from '@angular/common/http';\nimport { inject } from '@angular/core';\nimport { MC_AUTH_CONFIG } from '../entities/mc-auth-config';\nimport { MCAuthenticationService } from '../services/authentication.service';\nimport { catchError, switchMap, tap } from 'rxjs';\n\nexport const MC_AUTH_SKIP_INTERCEPTOR = 'skip-interceptor';\n\nexport const authInterceptor: HttpInterceptorFn = (req, next) => {\n\n const config = inject(MC_AUTH_CONFIG);\n const authService = inject(MCAuthenticationService);\n\n if(req.url.indexOf(config.baseUrl) == -1){\n return next(req);\n }\n\n if (req.headers.has(MC_AUTH_SKIP_INTERCEPTOR)) {\n const clonedReq = req.clone({ headers: req.headers.delete(MC_AUTH_SKIP_INTERCEPTOR) });\n return next(clonedReq);\n }\n\n return authService.getUser()\n .pipe(\n\n switchMap(user => {\n\n if(user == undefined){\n return next(req);\n }\n\n return next(req.clone({\n headers: req.headers.set('Authorization', `Bearer ${user.access_token}`)\n }));\n\n }),\n tap(event => {\n\n if(event instanceof HttpResponse && event.status == 401){\n authService.removeUser().subscribe(() => {\n window.location.reload();\n });\n }\n\n }),\n catchError(err => {\n\n if(err instanceof HttpErrorResponse && err.status == 401){\n authService.removeUser().subscribe(() => {\n window.location.reload();\n });\n }\n\n throw err;\n }),\n\n\n );\n};\n","import { inject } from '@angular/core';\nimport { CanActivateFn, RedirectCommand, Router } from '@angular/router';\nimport { MCAuthenticationService } from '../services/authentication.service';\nimport { map } from 'rxjs';\n\nexport const mcAuthGuard: CanActivateFn = (route, state) => {\n const router = inject(Router);\n const authService = inject(MCAuthenticationService);\n\n let paramRedirect = router.url;\n if (paramRedirect.includes('/login')) {\n paramRedirect = '';\n }\n\n return authService.getUser()\n .pipe(map(user => {\n if(user == undefined){\n const loginPath = router.parseUrl(\"/login\");\n loginPath.queryParams = {\n redirect: paramRedirect\n };\n return new RedirectCommand(loginPath, { skipLocationChange: true });\n }\n\n return true;\n }));\n};\n","import { ResolveFn } from '@angular/router';\nimport { MCAuthenticationService } from '../services/authentication.service';\nimport { inject } from '@angular/core';\nimport { MCUser } from '../entities/mc-user';\n\nexport const mcUserResolver: ResolveFn<MCUser|undefined> = (route, state) => {\n const authService = inject(MCAuthenticationService);\n\n return authService.getUser();\n};\n","import { Pipe, PipeTransform } from '@angular/core';\nimport { MCUser } from '../entities/mc-user';\n\n@Pipe({\n name: 'initialName',\n standalone: true\n})\nexport class InitialNamePipe implements PipeTransform {\n\n transform(user: MCUser): string {\n // Get the first letter of the first name\n const firstLetter = user.firstname.charAt(0);\n // Verify if the last name is not empty\n if (user.lastname == undefined || user.lastname == '') {\n // Return the first letter\n return firstLetter;\n }\n // Get the first letter of the last name\n const lastLetter = user.lastname.charAt(0);\n // Return the initials\n return firstLetter + lastLetter;\n }\n\n}\n","import { afterNextRender, Component, inject, signal } from '@angular/core';\nimport { MCComponent, MCCoreComponent } from '@mckit/core';\nimport { MenuItem } from 'primeng/api';\nimport { MCAuthenticationService } from '../../services/authentication.service';\nimport { tap } from 'rxjs';\nimport { CommonModule } from '@angular/common';\nimport { ButtonModule } from 'primeng/button';\nimport { MenuModule } from 'primeng/menu';\nimport { AvatarModule } from 'primeng/avatar';\nimport { InitialNamePipe } from '../../pipes/initial-name.pipe';\nimport { MCUser } from '../../entities/mc-user';\n\n@Component({\n selector: 'mc-avatar-with-menu',\n imports: [CommonModule, ButtonModule, MenuModule, AvatarModule, InitialNamePipe],\n templateUrl: './avatar-with-menu.component.html',\n styleUrl: './avatar-with-menu.component.scss'\n})\nexport class AvatarWithMenuComponent extends MCCoreComponent {\n\n authService = inject(MCAuthenticationService);\n\n user = signal<MCUser|undefined>(undefined);\n items = signal<Array<MenuItem>>([]);\n\n constructor() {\n super();\n afterNextRender(() => {\n this.loadUser();\n });\n }\n\n loadMenu() {\n let items = this.component.config.items ?? [];\n if(items.length == 0){\n return;\n }\n\n items[0].label = `Hi ${this.user()?.firstname}`;\n this.items.set(items);\n }\n\n loadUser() {\n this.authService.getUser()\n .pipe(tap(user => this.user.set(user)))\n .subscribe(user => this.loadMenu());\n }\n}\n\nexport class MCAvatarWithMenu extends MCComponent {\n constructor(\n items: Array<MenuItem>\n ) {\n super(AvatarWithMenuComponent);\n\n this.config = {\n items: items\n };\n }\n}\n","<p-menu #menu [model]=\"items()\" [popup]=\"true\" />\n@if (user() != undefined) {\n @if (user()!.photo != undefined && user()!.photo != '') {\n <p-avatar [image]=\"user()!.photo\" styleClass=\"topbar-avatar\" [shape]=\"'circle'\" [size]=\"'large'\" (click)=\"menu.toggle($event)\" />\n } @else {\n <p-avatar label=\"{{ user()! | initialName }}\" styleClass=\"topbar-avatar\" [shape]=\"'circle'\" [size]=\"'large'\" (click)=\"menu.toggle($event)\" />\n }\n\n}\n","import { FormControl, FormGroup, Validators } from \"@angular/forms\";\nimport { MCAuthModel } from \"../entities/mc-auth-model\";\nimport { inject, signal } from \"@angular/core\";\nimport { MCMessage } from \"@mckit/core\";\n\nexport abstract class MCBaseAuthPage {\n group = new FormGroup({\n email: new FormControl<string>('', [Validators.required, Validators.email]),\n password: new FormControl<string>('', Validators.required)\n });\n\n isSending = signal(false);\n\n messages = signal<Array<MCMessage>>([]);\n\n abstract onSubmit(obj: MCAuthModel): void;\n\n onClickSubmit() {\n if(this.group.invalid){\n return;\n }\n\n if(this.isSending()){\n return;\n }\n\n this.clearMessages();\n\n let obj = new MCAuthModel();\n obj.email = this.group.get('email')?.value;\n obj.password = this.group.get('password')?.value;\n\n this.showLoading();\n this.onSubmit(obj);\n }\n\n showSuccessMessage(message: string) {\n this.messages.set([{ severity: 'success', text: message}]);\n }\n\n showErrorMessage(message: string) {\n this.messages.set([{ severity: 'error', text: message}]);\n }\n\n clearMessages() {\n this.messages.set([]);\n }\n\n showLoading() {\n this.isSending.set(true);\n }\n\n hideLoading() {\n this.isSending.set(false);\n }\n}\n","import { Component, EventEmitter, input, Input, output, Output } from '@angular/core';\nimport { CardModule } from 'primeng/card';\nimport { ButtonModule } from 'primeng/button';\nimport { IconFieldModule } from 'primeng/iconfield';\nimport { InputIconModule } from 'primeng/inputicon';\nimport { InputTextModule } from 'primeng/inputtext';\nimport { PasswordModule } from 'primeng/password';\nimport { FormGroup, FormsModule, ReactiveFormsModule, FormControl, Validators } from '@angular/forms';\nimport { MessageModule } from 'primeng/message';\nimport { MCAuthModel } from '../../entities/mc-auth-model';\nimport { MCBaseAuthPageConfig } from '../../entities/mc-base-auth-page-config';\nimport { RouterModule } from '@angular/router';\nimport { MCBaseAuthPage } from '../base-auth-page.component';\nimport { CommonModule } from '@angular/common';\n\n\n\n@Component({\n selector: 'mc-auth-basic',\n imports: [CommonModule, FormsModule, ReactiveFormsModule, ButtonModule, CardModule, IconFieldModule, InputIconModule, InputTextModule, PasswordModule, MessageModule, RouterModule],\n templateUrl: './auth-basic.component.html',\n styleUrl: './auth-basic.component.scss'\n})\nexport class MCAuthBasicComponent extends MCBaseAuthPage {\n config = input.required<MCAuthBasicConfig>();\n submit = output<MCAuthModel>();\n\n onSubmit(obj: MCAuthModel): void {\n this.submit.emit(obj);\n }\n}\n\nexport class MCAuthBasicConfig extends MCBaseAuthPageConfig {\n subtitle?: string;\n\n emailPlaceholder?: string;\n passwordPlaceholder?: string;\n\n submitButton?: string;\n\n resetPassword?: string;\n resetPasswordLink?: string;\n\n register?: string;\n registerLink?: string;\n}\n","<div class=\"background-container\">\n <svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 1600 800\" preserveAspectRatio=\"none\" class=\"fixed left-0 top-0 min-h-screen min-w-screen\"><rect width=\"1600\" height=\"800\" fill=\"var(--primary-500)\"></rect><path d=\"M478.4 581c3.2 0.8 6.4 1.7 9.5 2.5c196.2 52.5 388.7 133.5 593.5 176.6c174.2 36.6 349.5 29.2 518.6-10.2V0H0v574.9c52.3-17.6 106.5-27.7 161.1-30.9C268.4 537.4 375.7 554.2 478.4 581z\" fill=\"var(--primary-400)\"></path><path d=\"M181.8 259.4c98.2 6 191.9 35.2 281.3 72.1c2.8 1.1 5.5 2.3 8.3 3.4c171 71.6 342.7 158.5 531.3 207.7c198.8 51.8 403.4 40.8 597.3-14.8V0H0v283.2C59 263.6 120.6 255.7 181.8 259.4z\" fill=\"var(--primary-300)\"></path><path d=\"M454.9 86.3C600.7 177 751.6 269.3 924.1 325c208.6 67.4 431.3 60.8 637.9-5.3c12.8-4.1 25.4-8.4 38.1-12.9V0H288.1c56 21.3 108.7 50.6 159.7 82C450.2 83.4 452.5 84.9 454.9 86.3z\" fill=\"var(--primary-200)\"></path><path d=\"M1397.5 154.8c47.2-10.6 93.6-25.3 138.6-43.8c21.7-8.9 43-18.8 63.9-29.5V0H643.4c62.9 41.7 129.7 78.2 202.1 107.4C1020.4 178.1 1214.2 196.1 1397.5 154.8z\" fill=\"var(--primary-100)\"></path></svg>\n</div>\n<div class=\"mc-auth-basic-container\">\n <p-card [header]=\"config().title ?? 'Log in'\" [subheader]=\"config().subtitle ?? 'Please enter your details'\">\n\n <form class=\"\" [formGroup]=\"group\" (ngSubmit)=\"onClickSubmit()\">\n <p-iconField iconPosition=\"left\" class=\"mb-3 w-full\">\n <p-inputIcon styleClass=\"pi pi-envelope\" />\n <input type=\"text\" pInputText [placeholder]=\"config().emailPlaceholder ?? 'Email'\" formControlName=\"email\" name=\"email\" (keyup.enter)=\"onClickSubmit()\" class=\"w-full\" />\n </p-iconField>\n\n <p-iconField iconPosition=\"left\" class=\"w-full\">\n <p-inputIcon styleClass=\"pi pi-lock\" />\n <p-password [placeholder]=\"config().passwordPlaceholder ?? 'Password'\" [feedback]=\"false\" [toggleMask]=\"true\" formControlName=\"password\" name=\"password\" (keyup.enter)=\"onClickSubmit()\" inputStyleClass=\"w-full\" styleClass=\"w-full\" />\n </p-iconField>\n\n @if (config().resetPasswordLink != undefined) {\n <div class=\"more-actions\">\n <p-button [routerLink]=\"config().resetPasswordLink\" [label]=\"config().resetPassword ?? 'Reset Password'\" [link]=\"true\" />\n </div>\n }\n\n @for (message of messages(); track message; let first = $first) {\n <p-message [severity]=\"message.severity\" [text]=\"message.text\" [ngClass]=\"{ 'mt-4': !first }\" />\n }\n </form>\n\n <ng-template pTemplate=\"footer\">\n <div class=\"mt-1 w-full\">\n <p-button [label]=\"config().submitButton ?? 'Log in'\" [loading]=\"isSending()\" (click)=\"onClickSubmit()\" [disabled]=\"group.invalid || isSending()\" styleClass=\"w-full\" />\n </div>\n\n @if (config().registerLink != undefined) {\n <div class=\"more-actions-footer mt-3\">\n <p-button [routerLink]=\"config().registerLink\" [label]=\"config().register ?? 'Don’t have an account? Register'\" [link]=\"true\" />\n </div>\n }\n </ng-template>\n </p-card>\n</div>\n","import { Component, EventEmitter, Input, Output } from '@angular/core';\nimport { MCBaseAuthPageConfig } from '../../entities/mc-base-auth-page-config';\nimport { MCAuthModel } from '../../entities/mc-auth-model';\nimport { CommonModule } from '@angular/common';\n\n@Component({\n selector: 'mc-auth-half',\n imports: [CommonModule],\n templateUrl: './auth-half.component.html',\n styleUrl: './auth-half.component.scss'\n})\nexport class MCAuthHalfComponent {\n @Input() config!: MCAuthHalfConfig;\n @Output() submit = new EventEmitter<MCAuthModel>();\n\n\n}\n\nexport class MCAuthHalfConfig extends MCBaseAuthPageConfig {\n image?: string;\n}\n","<div class=\"mc-auth-half-container\">\n <div class=\"column-left\">\n <div class=\"container-form\">\n <h1>{{ config.title }}</h1>\n </div>\n </div>\n\n <div class=\"column-right\">\n @if (config.image != undefined) {\n <img [src]=\"config.image\" />\n }\n </div>\n</div>\n","import { CommonModule } from '@angular/common';\nimport { Component, input, output } from '@angular/core';\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\nimport { ButtonModule } from 'primeng/button';\nimport { CardModule } from 'primeng/card';\nimport { CheckboxModule } from 'primeng/checkbox';\nimport { IconFieldModule } from 'primeng/iconfield';\nimport { InputIconModule } from 'primeng/inputicon';\nimport { InputTextModule } from 'primeng/inputtext';\nimport { PasswordModule } from 'primeng/password';\nimport { MCBaseAuthPageConfig } from '../../entities/mc-base-auth-page-config';\nimport { MCBaseAuthPage } from '../base-auth-page.component';\nimport { MCAuthModel } from '../../entities/mc-auth-model';\nimport { MessageModule } from 'primeng/message';\n\n@Component({\n selector: 'mc-auth-sakai',\n imports: [CommonModule, FormsModule, ReactiveFormsModule, ButtonModule, CardModule, IconFieldModule, InputIconModule, InputTextModule, PasswordModule, CheckboxModule, MessageModule],\n templateUrl: './auth-sakai.component.html',\n styleUrl: './auth-sakai.component.scss'\n})\nexport class MCAuthSakaiComponent extends MCBaseAuthPage {\n config = input.required<MCAuthSakaiConfig>();\n submit = output<MCAuthModel>();\n action = output<string>();\n\n onSubmit(obj: MCAuthModel): void {\n this.submit.emit(obj);\n }\n\n onAction(type: string) {\n this.action.emit(type);\n }\n}\n\nexport class MCAuthSakaiConfig extends MCBaseAuthPageConfig {\n logo?: string;\n\n subtitle?: string;\n\n emailPlaceholder?: string;\n passwordPlaceholder?: string;\n\n submitButton?: string;\n\n resetPassword?: string;\n resetPasswordLink?: string;\n\n register?: string;\n registerLink?: string;\n}\n","<div class=\"bg-surface-50 dark:bg-surface-950 flex items-center justify-center min-h-screen min-w-[100vw] overflow-hidden\">\n <div class=\"flex flex-col items-center justify-center\">\n @if (config().logo != undefined) {\n <img [src]=\"config().logo\" class=\"mb-5 w-6rem flex-shrink-0\">\n }\n <div class=\"container-degradee\" style=\"border-radius: 56px; padding: 0.3rem; background: linear-gradient(180deg, var(--primary-color) 10%, rgba(33, 150, 243, 0) 30%)\">\n <div class=\"container-content\" class=\"w-full bg-surface-0 dark:bg-surface-900 py-20 px-8 sm:px-20\" style=\"border-radius:53px\">\n <div class=\"text-center mb-8\">\n <div class=\"text-surface-900 dark:text-surface-0 text-3xl font-medium mb-4\">{{config().subtitle}}</div>\n <h1 class=\"text-muted-color font-medium\">{{config().title}}</h1>\n </div>\n\n <form class=\"\" [formGroup]=\"group\" (ngSubmit)=\"onClickSubmit()\">\n <div>\n <label for=\"email\" class=\"block text-surface-900 dark:text-surface-0 text-xl font-medium mb-2\">Email</label>\n <input type=\"text\" pInputText [placeholder]=\"config().emailPlaceholder ?? 'Email'\" formControlName=\"email\" name=\"email\" class=\"w-full md:w-[30rem] mb-8\" />\n\n <div class=\"container-password-label flex justify-between justify-content-between align-items-end items-end\">\n <label for=\"password1\" class=\"block text-surface-900 dark:text-surface-0 font-medium text-xl mb-2\">Password</label>\n @if (config().resetPassword != undefined) {\n <div class=\"more-actions\">\n <p-button [label]=\"config().resetPassword ?? 'Reset Password'\" [link]=\"true\" (onClick)=\"onAction('forgot-password')\" styleClass=\"button-forgot-password\" />\n </div>\n }\n </div>\n\n <p-password id=\"password1\" formControlName=\"password\" name=\"password\" placeholder=\"Password\" [toggleMask]=\"true\" styleClass=\"mb-5 w-full\" inputStyleClass=\"w-full p-3 md:w-30rem\" [placeholder]=\"config().passwordPlaceholder ?? 'Password'\" (keyup.enter)=\"onClickSubmit()\" [feedback]=\"false\"></p-password>\n\n <!--<div class=\"flex align-items-center items-center justify-between mb-5 gap-5\">\n <div class=\"flex align-items-center items-center\">\n <p-checkbox id=\"rememberme1\" [binary]=\"true\" styleClass=\"mr-2\"></p-checkbox>\n <label for=\"rememberme1\">Remember me</label>\n </div>\n <a class=\"font-medium no-underline ml-2 text-right cursor-pointer\" style=\"color: var(--primary-color)\">Forgot password?</a>\n </div>-->\n\n @for (message of messages(); track message; let first = $first) {\n <p-message [severity]=\"message.severity\" [text]=\"message.text\" [ngClass]=\"{ 'mt-4': !first }\" />\n }\n\n <p-button pRipple [label]=\"config().submitButton ?? 'Log in'\" [loading]=\"isSending()\" size=\"large\" [style]=\"{ width: '100%' }\" (click)=\"onClickSubmit()\" [disabled]=\"group.invalid || isSending()\" />\n\n </div>\n </form>\n </div>\n </div>\n\n <ng-content></ng-content>\n\n </div>\n</div>\n","import { CommonModule } from '@angular/common';\nimport { Component, input, output } from '@angular/core';\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\nimport { ButtonModule } from 'primeng/button';\nimport { CardModule } from 'primeng/card';\nimport { CheckboxModule } from 'primeng/checkbox';\nimport { IconFieldModule } from 'primeng/iconfield';\nimport { InputIconModule } from 'primeng/inputicon';\nimport { InputTextModule } from 'primeng/inputtext';\nimport { PasswordModule } from 'primeng/password';\nimport { MCBaseAuthPage } from '../base-auth-page.component';\nimport { MCAuthModel } from '../../entities/mc-auth-model';\nimport { MessageModule } from 'primeng/message';\nimport { MCAuthSakaiConfig } from '../auth-sakai/auth-sakai.component';\n\n@Component({\n selector: 'mc-auth-sakai-social',\n imports: [CommonModule, FormsModule, ReactiveFormsModule, ButtonModule, CardModule, IconFieldModule, InputIconModule, InputTextModule, PasswordModule, CheckboxModule, MessageModule],\n\n templateUrl: './auth-sakai-only-social.component.html',\n styleUrl: './auth-sakai-only-social.component.scss'\n})\nexport class MCAuthSakaiSocialComponent extends MCBaseAuthPage {\n config = input.required<MCAuthSakaiConfig>();\n submit = output<MCAuthModel>();\n action = output<string>();\n\n onSubmit(obj: MCAuthModel): void {\n this.submit.emit(obj);\n }\n\n onAction(type: string) {\n this.action.emit(type);\n }\n}\n","<div\n class=\"surface-ground flex align-items-center items-center justify-content-center justify-center min-h-screen min-w-screen overflow-hidden\">\n <div class=\"flex flex-col flex-column align-items-center items-center justify-content-center justify-center\">\n @if (config().logo != undefined) {\n <img [src]=\"config().logo\" class=\"mb-5 w-6rem flex-shrink-0\" alt=\"logo\">\n }\n\n <ng-content select=\"[pageheader]\"></ng-content>\n <div class=\"container-degradee\"\n style=\"border-radius:56px; padding:0.3rem; background: linear-gradient(180deg, var(--primary-color) 10%, rgba(33, 150, 243, 0) 30%);\">\n <div class=\"container-content w-full surface-card py-8 px-5 sm:px-8\" style=\"border-radius:53px\">\n <div class=\"text-center mb-5\">\n <div class=\"text-900 text-sm font-medium mb-3 uppercase tracking-widest\">{{ config().subtitle }}</div>\n <h1 class=\"text-600 font-black text-2xl\">{{ config().title }}</h1>\n </div>\n\n <form class=\"\" [formGroup]=\"group\" (ngSubmit)=\"onClickSubmit()\">\n <div>\n\n @for (message of messages(); track message; let first = $first) {\n <p-message [severity]=\"message.severity\" [text]=\"message.text\" [ngClass]=\"{ 'mt-4': !first }\" />\n }\n\n <ng-content></ng-content>\n </div>\n </form>\n </div>\n </div>\n </div>\n</div>\n","/*\n * Public API Surface of auth\n */\n\n/**\n * Entities\n */\nexport * from './lib/entities/mc-user';\nexport * from './lib/entities/mc-auth-config';\nexport * from './lib/entities/mc-auth-model';\nexport * from './lib/entities/mc-base-auth-page-config';\n\n/**\n * Providers\n */\nexport * from './lib/providers/auth.provider';\n\n/**\n * Services\n */\nexport * from './lib/services/authentication.service';\n\n/**\n * Interceptors\n */\nexport * from './lib/interceptors/auth.interceptor';\n\n/**\n * Guards\n */\nexport * from './lib/guards/auth.guard';\n\n/**\n * Resolvers\n */\nexport * from './lib/resolvers/user.resolver';\n\n/**\n * Pipes\n */\nexport * from './lib/pipes/initial-name.pipe';\n\n/**\n * Components\n */\nexport * from './lib/components/avatar-with-menu/avatar-with-menu.component';\n\n/**\n * Pages\n */\nexport * from './lib/pages/base-auth-page.component';\nexport * from './lib/pages/auth-basic/auth-basic.component';\nexport * from './lib/pages/auth-half/auth-half.component';\nexport * from './lib/pages/auth-sakai/auth-sakai.component';\nexport * from './lib/pages/auth-sakai-only-social/auth-sakai-only-social.component';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i1","i2","i5","i6","i3"],"mappings":"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"}
1
+ {"version":3,"file":"mckit-auth.mjs","sources":["../../../../projects/mckit/auth/src/lib/entities/mc-user.ts","../../../../projects/mckit/auth/src/lib/entities/mc-auth-config.ts","../../../../projects/mckit/auth/src/lib/entities/mc-auth-model.ts","../../../../projects/mckit/auth/src/lib/entities/mc-base-auth-page-config.ts","../../../../projects/mckit/auth/src/lib/providers/auth.provider.ts","../../../../projects/mckit/auth/src/lib/services/authentication.service.ts","../../../../projects/mckit/auth/src/lib/interceptors/auth.interceptor.ts","../../../../projects/mckit/auth/src/lib/guards/auth.guard.ts","../../../../projects/mckit/auth/src/lib/resolvers/user.resolver.ts","../../../../projects/mckit/auth/src/lib/pipes/initial-name.pipe.ts","../../../../projects/mckit/auth/src/lib/components/avatar-with-menu/avatar-with-menu.component.ts","../../../../projects/mckit/auth/src/lib/components/avatar-with-menu/avatar-with-menu.component.html","../../../../projects/mckit/auth/src/lib/pages/base-auth-page.component.ts","../../../../projects/mckit/auth/src/lib/pages/auth-basic/auth-basic.component.ts","../../../../projects/mckit/auth/src/lib/pages/auth-basic/auth-basic.component.html","../../../../projects/mckit/auth/src/lib/pages/auth-half/auth-half.component.ts","../../../../projects/mckit/auth/src/lib/pages/auth-half/auth-half.component.html","../../../../projects/mckit/auth/src/lib/pages/auth-sakai/auth-sakai.component.ts","../../../../projects/mckit/auth/src/lib/pages/auth-sakai/auth-sakai.component.html","../../../../projects/mckit/auth/src/lib/pages/auth-sakai-only-social/auth-sakai-only-social.component.ts","../../../../projects/mckit/auth/src/lib/pages/auth-sakai-only-social/auth-sakai-only-social.component.html","../../../../projects/mckit/auth/src/public-api.ts","../../../../projects/mckit/auth/src/mckit-auth.ts"],"sourcesContent":["export class MCUser {\n static STATUS_INACTIVE = 0;\n static STATUS_ACTIVE = 1;\n static STATUS_SUSPENDED = 2;\n\n public id?: number|string;\n public firstname: string = '';\n public lastname: string = '';\n public email: string = '';\n public photo?: string = '';\n public role: number = 0;\n public status: number = 0;\n public created_at: string = '';\n public extra: any;\n\n public token_type: string = 'bearer';\n public access_token: string = '';\n}\n","import { InjectionToken } from \"@angular/core\";\n\nexport const MC_AUTH_CONFIG = new InjectionToken<MCAuthConfig>('mc.auth');\n\nexport class MCAuthConfig {\n baseUrl: string = '';\n}\n","export class MCAuthModel {\n email?: string|null;\n password?: string|null;\n}\n","export class MCBaseAuthPageConfig {\n title?: string;\n}\n","import { EnvironmentProviders, makeEnvironmentProviders } from \"@angular/core\";\nimport { MC_AUTH_CONFIG, MCAuthConfig } from \"../entities/mc-auth-config\";\n\nexport function provideMCAuth(value: MCAuthConfig): EnvironmentProviders {\n return makeEnvironmentProviders([{ provide: MC_AUTH_CONFIG, useValue: value }]);\n}\n","import { inject, Injectable, signal } from '@angular/core';\nimport { StorageMap } from '@ngx-pwa/local-storage';\nimport { MCUser } from '../entities/mc-user';\nimport { map, Observable, switchMap, tap } from 'rxjs';\nimport { HttpClient } from '@angular/common/http';\nimport { MC_AUTH_CONFIG } from '../entities/mc-auth-config';\n\nexport const MC_AUTH_KEY_STORAGE_TOKEN = 'mc.auth.storage';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class MCAuthenticationService {\n\n http = inject(HttpClient);\n\n config = inject(MC_AUTH_CONFIG);\n\n isLogged = signal<boolean>(false);\n\n constructor(\n private storage: StorageMap\n ) {\n this.initialize();\n }\n\n saveUser(user: MCUser): Observable<undefined> {\n return this.storage.set(MC_AUTH_KEY_STORAGE_TOKEN, JSON.stringify(user), { type: 'string' })\n .pipe(tap(res => this.isLogged.update(res => true)));\n }\n\n getUser(): Observable<MCUser | undefined> {\n return this.storage.get(MC_AUTH_KEY_STORAGE_TOKEN, { type: 'string' })\n .pipe(map(data => {\n if (data == undefined || data == '') {\n return;\n }\n return JSON.parse(data);\n }));\n }\n\n removeUser(): Observable<any> {\n return this.storage.delete(MC_AUTH_KEY_STORAGE_TOKEN);\n }\n\n initialize() {\n this.getUser()\n .subscribe(user => {\n if (user == undefined) {\n return;\n }\n\n this.isLogged.update(res => true);\n });\n }\n\n signIn(data: any): Observable<MCUser> {\n return this.http.post<MCUser>(`${this.config.baseUrl}oauth/token`, { ...data, grant_type: 'password' })\n .pipe(\n switchMap(user => this.saveUser(user).pipe(map(res => user)))\n );\n }\n\n register(data: any): Observable<MCUser> {\n return this.http.post<MCUser>(`${this.config.baseUrl}users`, data)\n .pipe(\n switchMap(() => this.signIn(data)),\n switchMap(user => this.saveUser(user).pipe(map(res => user)))\n );\n }\n}\n","import { HttpErrorResponse, HttpInterceptorFn, HttpResponse } from '@angular/common/http';\nimport { inject } from '@angular/core';\nimport { MC_AUTH_CONFIG } from '../entities/mc-auth-config';\nimport { MCAuthenticationService } from '../services/authentication.service';\nimport { catchError, switchMap, tap } from 'rxjs';\n\nexport const MC_AUTH_SKIP_INTERCEPTOR = 'skip-interceptor';\n\nexport const authInterceptor: HttpInterceptorFn = (req, next) => {\n\n const config = inject(MC_AUTH_CONFIG);\n const authService = inject(MCAuthenticationService);\n\n if(req.url.indexOf(config.baseUrl) == -1){\n return next(req);\n }\n\n if (req.headers.has(MC_AUTH_SKIP_INTERCEPTOR)) {\n const clonedReq = req.clone({ headers: req.headers.delete(MC_AUTH_SKIP_INTERCEPTOR) });\n return next(clonedReq);\n }\n\n return authService.getUser()\n .pipe(\n\n switchMap(user => {\n\n if(user == undefined){\n return next(req);\n }\n\n return next(req.clone({\n headers: req.headers.set('Authorization', `Bearer ${user.access_token}`)\n }));\n\n }),\n tap(event => {\n\n if(event instanceof HttpResponse && event.status == 401){\n authService.removeUser().subscribe(() => {\n window.location.reload();\n });\n }\n\n }),\n catchError(err => {\n\n if(err instanceof HttpErrorResponse && err.status == 401){\n authService.removeUser().subscribe(() => {\n window.location.reload();\n });\n }\n\n throw err;\n }),\n\n\n );\n};\n","import { inject } from '@angular/core';\nimport { CanActivateFn, RedirectCommand, Router } from '@angular/router';\nimport { MCAuthenticationService } from '../services/authentication.service';\nimport { map } from 'rxjs';\n\nexport const mcAuthGuard: CanActivateFn = (route, state) => {\n const router = inject(Router);\n const authService = inject(MCAuthenticationService);\n\n let paramRedirect = router.url;\n if (paramRedirect.includes('/login')) {\n paramRedirect = '';\n }\n\n return authService.getUser()\n .pipe(map(user => {\n if(user == undefined){\n const loginPath = router.parseUrl(\"/login\");\n loginPath.queryParams = {\n redirect: paramRedirect\n };\n return new RedirectCommand(loginPath, { skipLocationChange: true });\n }\n\n return true;\n }));\n};\n","import { ResolveFn } from '@angular/router';\nimport { MCAuthenticationService } from '../services/authentication.service';\nimport { inject } from '@angular/core';\nimport { MCUser } from '../entities/mc-user';\n\nexport const mcUserResolver: ResolveFn<MCUser|undefined> = (route, state) => {\n const authService = inject(MCAuthenticationService);\n\n return authService.getUser();\n};\n","import { Pipe, PipeTransform } from '@angular/core';\nimport { MCUser } from '../entities/mc-user';\n\n@Pipe({\n name: 'initialName',\n standalone: true\n})\nexport class InitialNamePipe implements PipeTransform {\n\n transform(user: MCUser): string {\n // Get the first letter of the first name\n const firstLetter = user.firstname.charAt(0);\n // Verify if the last name is not empty\n if (user.lastname == undefined || user.lastname == '') {\n // Return the first letter\n return firstLetter;\n }\n // Get the first letter of the last name\n const lastLetter = user.lastname.charAt(0);\n // Return the initials\n return firstLetter + lastLetter;\n }\n\n}\n","import { afterNextRender, Component, inject, signal } from '@angular/core';\nimport { MCComponent, MCCoreComponent } from '@mckit/core';\nimport { MenuItem } from 'primeng/api';\nimport { MCAuthenticationService } from '../../services/authentication.service';\nimport { tap } from 'rxjs';\nimport { CommonModule } from '@angular/common';\nimport { ButtonModule } from 'primeng/button';\nimport { MenuModule } from 'primeng/menu';\nimport { AvatarModule } from 'primeng/avatar';\nimport { InitialNamePipe } from '../../pipes/initial-name.pipe';\nimport { MCUser } from '../../entities/mc-user';\n\n@Component({\n selector: 'mc-avatar-with-menu',\n imports: [CommonModule, ButtonModule, MenuModule, AvatarModule, InitialNamePipe],\n templateUrl: './avatar-with-menu.component.html',\n styleUrl: './avatar-with-menu.component.scss'\n})\nexport class AvatarWithMenuComponent extends MCCoreComponent {\n\n authService = inject(MCAuthenticationService);\n\n user = signal<MCUser|undefined>(undefined);\n items = signal<Array<MenuItem>>([]);\n\n constructor() {\n super();\n afterNextRender(() => {\n this.loadUser();\n });\n }\n\n loadMenu() {\n let items = this.component.config.items ?? [];\n if(items.length == 0){\n return;\n }\n\n items[0].label = `Hi ${this.user()?.firstname}`;\n this.items.set(items);\n }\n\n loadUser() {\n this.authService.getUser()\n .pipe(tap(user => this.user.set(user)))\n .subscribe(user => this.loadMenu());\n }\n}\n\nexport class MCAvatarWithMenu extends MCComponent {\n constructor(\n items: Array<MenuItem>\n ) {\n super(AvatarWithMenuComponent);\n\n this.config = {\n items: items\n };\n }\n}\n","<p-menu #menu [model]=\"items()\" [popup]=\"true\" />\n@if (user() != undefined) {\n @if (user()!.photo != undefined && user()!.photo != '') {\n <p-avatar [image]=\"user()!.photo\" styleClass=\"topbar-avatar\" [shape]=\"'circle'\" [size]=\"'large'\" (click)=\"menu.toggle($event)\" />\n } @else {\n <p-avatar label=\"{{ user()! | initialName }}\" styleClass=\"topbar-avatar\" [shape]=\"'circle'\" [size]=\"'large'\" (click)=\"menu.toggle($event)\" />\n }\n\n}\n","import { FormControl, FormGroup, Validators } from \"@angular/forms\";\nimport { MCAuthModel } from \"../entities/mc-auth-model\";\nimport { inject, signal } from \"@angular/core\";\nimport { MCMessage } from \"@mckit/core\";\n\nexport abstract class MCBaseAuthPage {\n group = new FormGroup({\n email: new FormControl<string>('', [Validators.required, Validators.email]),\n password: new FormControl<string>('', Validators.required)\n });\n\n isSending = signal(false);\n\n messages = signal<Array<MCMessage>>([]);\n\n abstract onSubmit(obj: MCAuthModel): void;\n\n onClickSubmit() {\n if(this.group.invalid){\n return;\n }\n\n if(this.isSending()){\n return;\n }\n\n this.clearMessages();\n\n let obj = new MCAuthModel();\n obj.email = this.group.get('email')?.value;\n obj.password = this.group.get('password')?.value;\n\n this.showLoading();\n this.onSubmit(obj);\n }\n\n showSuccessMessage(message: string) {\n this.messages.set([{ severity: 'success', text: message}]);\n }\n\n showErrorMessage(message: string) {\n this.messages.set([{ severity: 'error', text: message}]);\n }\n\n clearMessages() {\n this.messages.set([]);\n }\n\n showLoading() {\n this.isSending.set(true);\n }\n\n hideLoading() {\n this.isSending.set(false);\n }\n}\n","import { Component, EventEmitter, input, Input, output, Output } from '@angular/core';\nimport { CardModule } from 'primeng/card';\nimport { ButtonModule } from 'primeng/button';\nimport { IconFieldModule } from 'primeng/iconfield';\nimport { InputIconModule } from 'primeng/inputicon';\nimport { InputTextModule } from 'primeng/inputtext';\nimport { PasswordModule } from 'primeng/password';\nimport { FormGroup, FormsModule, ReactiveFormsModule, FormControl, Validators } from '@angular/forms';\nimport { MessageModule } from 'primeng/message';\nimport { MCAuthModel } from '../../entities/mc-auth-model';\nimport { MCBaseAuthPageConfig } from '../../entities/mc-base-auth-page-config';\nimport { RouterModule } from '@angular/router';\nimport { MCBaseAuthPage } from '../base-auth-page.component';\nimport { CommonModule } from '@angular/common';\n\n\n\n@Component({\n selector: 'mc-auth-basic',\n imports: [CommonModule, FormsModule, ReactiveFormsModule, ButtonModule, CardModule, IconFieldModule, InputIconModule, InputTextModule, PasswordModule, MessageModule, RouterModule],\n templateUrl: './auth-basic.component.html',\n styleUrl: './auth-basic.component.scss'\n})\nexport class MCAuthBasicComponent extends MCBaseAuthPage {\n config = input.required<MCAuthBasicConfig>();\n submit = output<MCAuthModel>();\n\n onSubmit(obj: MCAuthModel): void {\n this.submit.emit(obj);\n }\n}\n\nexport class MCAuthBasicConfig extends MCBaseAuthPageConfig {\n subtitle?: string;\n\n emailPlaceholder?: string;\n passwordPlaceholder?: string;\n\n submitButton?: string;\n\n resetPassword?: string;\n resetPasswordLink?: string;\n\n register?: string;\n registerLink?: string;\n}\n","<div class=\"background-container\">\n <svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 1600 800\" preserveAspectRatio=\"none\" class=\"fixed left-0 top-0 min-h-screen min-w-screen\"><rect width=\"1600\" height=\"800\" fill=\"var(--primary-500)\"></rect><path d=\"M478.4 581c3.2 0.8 6.4 1.7 9.5 2.5c196.2 52.5 388.7 133.5 593.5 176.6c174.2 36.6 349.5 29.2 518.6-10.2V0H0v574.9c52.3-17.6 106.5-27.7 161.1-30.9C268.4 537.4 375.7 554.2 478.4 581z\" fill=\"var(--primary-400)\"></path><path d=\"M181.8 259.4c98.2 6 191.9 35.2 281.3 72.1c2.8 1.1 5.5 2.3 8.3 3.4c171 71.6 342.7 158.5 531.3 207.7c198.8 51.8 403.4 40.8 597.3-14.8V0H0v283.2C59 263.6 120.6 255.7 181.8 259.4z\" fill=\"var(--primary-300)\"></path><path d=\"M454.9 86.3C600.7 177 751.6 269.3 924.1 325c208.6 67.4 431.3 60.8 637.9-5.3c12.8-4.1 25.4-8.4 38.1-12.9V0H288.1c56 21.3 108.7 50.6 159.7 82C450.2 83.4 452.5 84.9 454.9 86.3z\" fill=\"var(--primary-200)\"></path><path d=\"M1397.5 154.8c47.2-10.6 93.6-25.3 138.6-43.8c21.7-8.9 43-18.8 63.9-29.5V0H643.4c62.9 41.7 129.7 78.2 202.1 107.4C1020.4 178.1 1214.2 196.1 1397.5 154.8z\" fill=\"var(--primary-100)\"></path></svg>\n</div>\n<div class=\"mc-auth-basic-container\">\n <p-card [header]=\"config().title ?? 'Log in'\" [subheader]=\"config().subtitle ?? 'Please enter your details'\">\n\n <form class=\"\" [formGroup]=\"group\" (ngSubmit)=\"onClickSubmit()\">\n <p-iconField iconPosition=\"left\" class=\"mb-3 w-full\">\n <p-inputIcon styleClass=\"pi pi-envelope\" />\n <input type=\"text\" pInputText [placeholder]=\"config().emailPlaceholder ?? 'Email'\" formControlName=\"email\" name=\"email\" (keyup.enter)=\"onClickSubmit()\" class=\"w-full\" />\n </p-iconField>\n\n <p-iconField iconPosition=\"left\" class=\"w-full\">\n <p-inputIcon styleClass=\"pi pi-lock\" />\n <p-password [placeholder]=\"config().passwordPlaceholder ?? 'Password'\" [feedback]=\"false\" [toggleMask]=\"true\" formControlName=\"password\" name=\"password\" (keyup.enter)=\"onClickSubmit()\" inputStyleClass=\"w-full\" styleClass=\"w-full\" />\n </p-iconField>\n\n @if (config().resetPasswordLink != undefined) {\n <div class=\"more-actions\">\n <p-button [routerLink]=\"config().resetPasswordLink\" [label]=\"config().resetPassword ?? 'Reset Password'\" [link]=\"true\" />\n </div>\n }\n\n @for (message of messages(); track message; let first = $first) {\n <p-message [severity]=\"message.severity\" [text]=\"message.text\" [ngClass]=\"{ 'mt-4': !first }\" />\n }\n </form>\n\n <ng-template pTemplate=\"footer\">\n <div class=\"mt-1 w-full\">\n <p-button [label]=\"config().submitButton ?? 'Log in'\" [loading]=\"isSending()\" (click)=\"onClickSubmit()\" [disabled]=\"group.invalid || isSending()\" styleClass=\"w-full\" />\n </div>\n\n @if (config().registerLink != undefined) {\n <div class=\"more-actions-footer mt-3\">\n <p-button [routerLink]=\"config().registerLink\" [label]=\"config().register ?? 'Don’t have an account? Register'\" [link]=\"true\" />\n </div>\n }\n </ng-template>\n </p-card>\n</div>\n","import { Component, EventEmitter, Input, Output } from '@angular/core';\nimport { MCBaseAuthPageConfig } from '../../entities/mc-base-auth-page-config';\nimport { MCAuthModel } from '../../entities/mc-auth-model';\nimport { CommonModule } from '@angular/common';\n\n@Component({\n selector: 'mc-auth-half',\n imports: [CommonModule],\n templateUrl: './auth-half.component.html',\n styleUrl: './auth-half.component.scss'\n})\nexport class MCAuthHalfComponent {\n @Input() config!: MCAuthHalfConfig;\n @Output() submit = new EventEmitter<MCAuthModel>();\n\n\n}\n\nexport class MCAuthHalfConfig extends MCBaseAuthPageConfig {\n image?: string;\n}\n","<div class=\"mc-auth-half-container\">\n <div class=\"column-left\">\n <div class=\"container-form\">\n <h1>{{ config.title }}</h1>\n </div>\n </div>\n\n <div class=\"column-right\">\n @if (config.image != undefined) {\n <img [src]=\"config.image\" />\n }\n </div>\n</div>\n","import { CommonModule } from '@angular/common';\nimport { Component, input, output } from '@angular/core';\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\nimport { ButtonModule } from 'primeng/button';\nimport { CardModule } from 'primeng/card';\nimport { CheckboxModule } from 'primeng/checkbox';\nimport { IconFieldModule } from 'primeng/iconfield';\nimport { InputIconModule } from 'primeng/inputicon';\nimport { InputTextModule } from 'primeng/inputtext';\nimport { PasswordModule } from 'primeng/password';\nimport { MCBaseAuthPageConfig } from '../../entities/mc-base-auth-page-config';\nimport { MCBaseAuthPage } from '../base-auth-page.component';\nimport { MCAuthModel } from '../../entities/mc-auth-model';\nimport { MessageModule } from 'primeng/message';\n\n@Component({\n selector: 'mc-auth-sakai',\n imports: [CommonModule, FormsModule, ReactiveFormsModule, ButtonModule, CardModule, IconFieldModule, InputIconModule, InputTextModule, PasswordModule, CheckboxModule, MessageModule],\n templateUrl: './auth-sakai.component.html',\n styleUrl: './auth-sakai.component.scss'\n})\nexport class MCAuthSakaiComponent extends MCBaseAuthPage {\n config = input.required<MCAuthSakaiConfig>();\n submit = output<MCAuthModel>();\n action = output<string>();\n\n onSubmit(obj: MCAuthModel): void {\n this.submit.emit(obj);\n }\n\n onAction(type: string) {\n this.action.emit(type);\n }\n}\n\nexport class MCAuthSakaiConfig extends MCBaseAuthPageConfig {\n logo?: string;\n\n subtitle?: string;\n\n emailPlaceholder?: string;\n passwordPlaceholder?: string;\n\n submitButton?: string;\n\n resetPassword?: string;\n resetPasswordLink?: string;\n\n register?: string;\n registerLink?: string;\n}\n","<div class=\"bg-surface-50 dark:bg-surface-950 flex items-center justify-center min-h-screen min-w-[100vw] overflow-hidden\">\n <div class=\"flex flex-col items-center justify-center\">\n @if (config().logo != undefined) {\n <img [src]=\"config().logo\" class=\"mb-5 w-6rem flex-shrink-0\">\n }\n <div class=\"container-degradee\" style=\"border-radius: 56px; padding: 0.3rem; background: linear-gradient(180deg, var(--primary-color) 10%, rgba(33, 150, 243, 0) 30%)\">\n <div class=\"container-content\" class=\"w-full bg-surface-0 dark:bg-surface-900 py-20 px-8 sm:px-20\" style=\"border-radius:53px\">\n <div class=\"text-center mb-8\">\n <div class=\"text-surface-900 dark:text-surface-0 text-3xl font-medium mb-4\">{{config().subtitle}}</div>\n <h1 class=\"text-muted-color font-medium\">{{config().title}}</h1>\n </div>\n\n <form class=\"\" [formGroup]=\"group\" (ngSubmit)=\"onClickSubmit()\">\n <div>\n <label for=\"email\" class=\"block text-surface-900 dark:text-surface-0 text-xl font-medium mb-2\">Email</label>\n <input type=\"text\" pInputText [placeholder]=\"config().emailPlaceholder ?? 'Email'\" formControlName=\"email\" name=\"email\" class=\"w-full md:w-[30rem] mb-8\" />\n\n <div class=\"container-password-label flex justify-between justify-content-between align-items-end items-end\">\n <label for=\"password1\" class=\"block text-surface-900 dark:text-surface-0 font-medium text-xl mb-2\">Password</label>\n @if (config().resetPassword != undefined) {\n <div class=\"more-actions\">\n <p-button [label]=\"config().resetPassword ?? 'Reset Password'\" [link]=\"true\" (onClick)=\"onAction('forgot-password')\" styleClass=\"button-forgot-password\" />\n </div>\n }\n </div>\n\n <p-password id=\"password1\" formControlName=\"password\" name=\"password\" placeholder=\"Password\" [toggleMask]=\"true\" styleClass=\"mb-5 w-full\" inputStyleClass=\"w-full p-3 md:w-30rem\" [placeholder]=\"config().passwordPlaceholder ?? 'Password'\" (keyup.enter)=\"onClickSubmit()\" [feedback]=\"false\"></p-password>\n\n <!--<div class=\"flex align-items-center items-center justify-between mb-5 gap-5\">\n <div class=\"flex align-items-center items-center\">\n <p-checkbox id=\"rememberme1\" [binary]=\"true\" styleClass=\"mr-2\"></p-checkbox>\n <label for=\"rememberme1\">Remember me</label>\n </div>\n <a class=\"font-medium no-underline ml-2 text-right cursor-pointer\" style=\"color: var(--primary-color)\">Forgot password?</a>\n </div>-->\n\n @for (message of messages(); track message; let first = $first) {\n <p-message [severity]=\"message.severity\" [text]=\"message.text\" [ngClass]=\"{ 'mt-4': !first }\" />\n }\n\n <p-button pRipple [label]=\"config().submitButton ?? 'Log in'\" [loading]=\"isSending()\" size=\"large\" [style]=\"{ width: '100%' }\" (click)=\"onClickSubmit()\" [disabled]=\"group.invalid || isSending()\" />\n\n </div>\n </form>\n </div>\n </div>\n\n <ng-content></ng-content>\n\n </div>\n</div>\n","import { CommonModule } from '@angular/common';\nimport { Component, input, output } from '@angular/core';\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\nimport { ButtonModule } from 'primeng/button';\nimport { CardModule } from 'primeng/card';\nimport { CheckboxModule } from 'primeng/checkbox';\nimport { IconFieldModule } from 'primeng/iconfield';\nimport { InputIconModule } from 'primeng/inputicon';\nimport { InputTextModule } from 'primeng/inputtext';\nimport { PasswordModule } from 'primeng/password';\nimport { MCBaseAuthPage } from '../base-auth-page.component';\nimport { MCAuthModel } from '../../entities/mc-auth-model';\nimport { MessageModule } from 'primeng/message';\nimport { MCAuthSakaiConfig } from '../auth-sakai/auth-sakai.component';\n\n@Component({\n selector: 'mc-auth-sakai-social',\n imports: [CommonModule, FormsModule, ReactiveFormsModule, ButtonModule, CardModule, IconFieldModule, InputIconModule, InputTextModule, PasswordModule, CheckboxModule, MessageModule],\n\n templateUrl: './auth-sakai-only-social.component.html',\n styleUrl: './auth-sakai-only-social.component.scss'\n})\nexport class MCAuthSakaiSocialComponent extends MCBaseAuthPage {\n config = input.required<MCAuthSakaiConfig>();\n submit = output<MCAuthModel>();\n action = output<string>();\n\n onSubmit(obj: MCAuthModel): void {\n this.submit.emit(obj);\n }\n\n onAction(type: string) {\n this.action.emit(type);\n }\n}\n","<div\n class=\"surface-ground flex align-items-center items-center justify-content-center justify-center min-h-screen min-w-screen overflow-hidden\">\n <div class=\"flex flex-col flex-column align-items-center items-center justify-content-center justify-center\">\n @if (config().logo != undefined) {\n <img [src]=\"config().logo\" class=\"mb-5 w-6rem flex-shrink-0\" alt=\"logo\">\n }\n\n <ng-content select=\"[pageheader]\"></ng-content>\n <div class=\"container-degradee\"\n style=\"border-radius:56px; padding:0.3rem; background: linear-gradient(180deg, var(--primary-color) 10%, rgba(33, 150, 243, 0) 30%);\">\n <div class=\"container-content w-full surface-card py-8 px-5 sm:px-8\" style=\"border-radius:53px\">\n <div class=\"text-center mb-5\">\n <div class=\"text-900 text-sm font-medium mb-3 uppercase tracking-widest\">{{ config().subtitle }}</div>\n <h1 class=\"text-600 font-black text-2xl\">{{ config().title }}</h1>\n </div>\n\n <form class=\"\" [formGroup]=\"group\" (ngSubmit)=\"onClickSubmit()\">\n <div>\n\n @for (message of messages(); track message; let first = $first) {\n <p-message [severity]=\"message.severity\" [text]=\"message.text\" [ngClass]=\"{ 'mt-4': !first }\" />\n }\n\n <ng-content></ng-content>\n </div>\n </form>\n </div>\n </div>\n </div>\n</div>\n","/*\n * Public API Surface of auth\n */\n\n/**\n * Entities\n */\nexport * from './lib/entities/mc-user';\nexport * from './lib/entities/mc-auth-config';\nexport * from './lib/entities/mc-auth-model';\nexport * from './lib/entities/mc-base-auth-page-config';\n\n/**\n * Providers\n */\nexport * from './lib/providers/auth.provider';\n\n/**\n * Services\n */\nexport * from './lib/services/authentication.service';\n\n/**\n * Interceptors\n */\nexport * from './lib/interceptors/auth.interceptor';\n\n/**\n * Guards\n */\nexport * from './lib/guards/auth.guard';\n\n/**\n * Resolvers\n */\nexport * from './lib/resolvers/user.resolver';\n\n/**\n * Pipes\n */\nexport * from './lib/pipes/initial-name.pipe';\n\n/**\n * Components\n */\nexport * from './lib/components/avatar-with-menu/avatar-with-menu.component';\n\n/**\n * Pages\n */\nexport * from './lib/pages/base-auth-page.component';\nexport * from './lib/pages/auth-basic/auth-basic.component';\nexport * from './lib/pages/auth-half/auth-half.component';\nexport * from './lib/pages/auth-sakai/auth-sakai.component';\nexport * from './lib/pages/auth-sakai-only-social/auth-sakai-only-social.component';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i1","i2","i5","i6","i3"],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mckit/auth",
3
- "version": "19.0.4",
3
+ "version": "19.0.6",
4
4
  "peerDependencies": {
5
5
  "@angular/common": "^19.0.0",
6
6
  "@angular/core": "^19.0.0",