@universis/common
Version:
Universis - common directives and services
101 lines • 12.8 kB
JavaScript
import { NgModule, CUSTOM_ELEMENTS_SCHEMA } from '@angular/core';
import { CommonModule } from '@angular/common';
import { FormsModule } from '@angular/forms';
import { HttpClient, HttpClientModule } from '@angular/common/http';
import { AuthenticationService } from './services/authentication.service';
import { UserService } from './services/user.service';
import { LoginComponent } from './components/login/login.component';
import { LogoutComponent } from './components/logout/logout.component';
import { APP_LOCATIONS, DEFAULT_APP_LOCATIONS, AuthGuard } from './guards/auth.guard';
import { AuthRoutingModule } from './auth.routing';
import { AuthCallbackComponent } from './auth-callback.component';
import { TranslateModule } from '@ngx-translate/core';
import { AngularDataContext, MostModule } from '@themost/angular';
import { ActivatedUser } from './services/activated-user.service';
import { PkceAuthenticationService } from './services/pkce-authentication.service';
import { ConfigurationService } from '../shared/services/configuration.service';
import { ActivatedRoute } from '@angular/router';
import { RefreshTokenActionComponent, RefreshTokenComponent } from './components/refresh/refresh-token.component';
import * as i0 from "@angular/core";
export function AuthenticationServiceFactory(http, configuration, context, activatedRoute, activatedUser) {
const authSettings = configuration.settings.auth;
if (Object.prototype.hasOwnProperty.call(authSettings, 'use')) {
if (authSettings.use === 'PkceAuthenticationService') {
// use PkceAuthenticationService
return new PkceAuthenticationService(http, configuration, context, activatedRoute, activatedUser);
}
// show warning for unsupported service
console.log('WARN', 'The specified authentication service is not yet implemented.');
}
// use fallback which is of course an instance of SignerService
return new AuthenticationService(configuration, context, activatedRoute, activatedUser);
}
export class AuthModule {
static forRoot(locations) {
return {
ngModule: AuthModule,
providers: [
AuthGuard,
{
provide: AuthenticationService,
useFactory: AuthenticationServiceFactory,
deps: [
HttpClient,
ConfigurationService,
AngularDataContext,
ActivatedRoute,
ActivatedUser,
],
},
UserService,
ActivatedUser,
{
provide: APP_LOCATIONS,
useValue: locations || DEFAULT_APP_LOCATIONS
}
]
};
}
}
AuthModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: AuthModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
AuthModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.10", ngImport: i0, type: AuthModule, declarations: [LoginComponent,
LogoutComponent,
AuthCallbackComponent,
RefreshTokenComponent,
RefreshTokenActionComponent], imports: [HttpClientModule,
CommonModule,
FormsModule,
TranslateModule,
MostModule,
AuthRoutingModule], exports: [RefreshTokenComponent] });
AuthModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: AuthModule, imports: [HttpClientModule,
CommonModule,
FormsModule,
TranslateModule,
MostModule,
AuthRoutingModule] });
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: AuthModule, decorators: [{
type: NgModule,
args: [{
imports: [
HttpClientModule,
CommonModule,
FormsModule,
TranslateModule,
MostModule,
AuthRoutingModule
],
declarations: [
LoginComponent,
LogoutComponent,
AuthCallbackComponent,
RefreshTokenComponent,
RefreshTokenActionComponent
],
exports: [
RefreshTokenComponent
],
schemas: [CUSTOM_ELEMENTS_SCHEMA]
}]
}] });
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0aC5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvYXV0aC9hdXRoLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLHNCQUFzQixFQUF1QixNQUFNLGVBQWUsQ0FBQztBQUN0RixPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzdDLE9BQU8sRUFBRSxVQUFVLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUNwRSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUMxRSxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDdEQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBQ3BFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQztBQUN2RSxPQUFPLEVBQUUsYUFBYSxFQUFFLHFCQUFxQixFQUFFLFNBQVMsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3RGLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ25ELE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQ2xFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUN0RCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsVUFBVSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDbEUsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBQ2xFLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLHdDQUF3QyxDQUFDO0FBQ25GLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDBDQUEwQyxDQUFDO0FBQ2hGLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUNqRCxPQUFPLEVBQUUsMkJBQTJCLEVBQUUscUJBQXFCLEVBQUUsTUFBTSw4Q0FBOEMsQ0FBQzs7QUFHbEgsTUFBTSxVQUFVLDRCQUE0QixDQUN4QyxJQUFnQixFQUNoQixhQUFtQyxFQUNuQyxPQUEyQixFQUMzQixjQUE4QixFQUM5QixhQUE0QjtJQUM1QixNQUFNLFlBQVksR0FBcUIsYUFBYSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUM7SUFDbkUsSUFBSSxNQUFNLENBQUMsU0FBUyxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsWUFBWSxFQUFFLEtBQUssQ0FBQyxFQUFFO1FBQzNELElBQUksWUFBWSxDQUFDLEdBQUcsS0FBSywyQkFBMkIsRUFBRTtZQUNsRCxnQ0FBZ0M7WUFDaEMsT0FBTyxJQUFJLHlCQUF5QixDQUFDLElBQUksRUFBRSxhQUFhLEVBQ3BELE9BQU8sRUFBRSxjQUFjLEVBQUUsYUFBYSxDQUFDLENBQUM7U0FDL0M7UUFDRCx1Q0FBdUM7UUFDdkMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxNQUFNLEVBQUUsOERBQThELENBQUMsQ0FBQztLQUN2RjtJQUNELCtEQUErRDtJQUMvRCxPQUFPLElBQUkscUJBQXFCLENBQUMsYUFBYSxFQUMxQyxPQUFPLEVBQUUsY0FBYyxFQUFFLGFBQWEsQ0FBQyxDQUFDO0FBQ2hELENBQUM7QUF1QkQsTUFBTSxPQUFPLFVBQVU7SUFFbkIsTUFBTSxDQUFDLE9BQU8sQ0FBQyxTQUFxQztRQUNoRCxPQUFPO1lBQ0gsUUFBUSxFQUFFLFVBQVU7WUFDcEIsU0FBUyxFQUFFO2dCQUNQLFNBQVM7Z0JBQ1Q7b0JBQ0ksT0FBTyxFQUFFLHFCQUFxQjtvQkFDOUIsVUFBVSxFQUFFLDRCQUE0QjtvQkFDeEMsSUFBSSxFQUFFO3dCQUNGLFVBQVU7d0JBQ1Ysb0JBQW9CO3dCQUNwQixrQkFBa0I7d0JBQ2xCLGNBQWM7d0JBQ2QsYUFBYTtxQkFDaEI7aUJBQ0o7Z0JBQ0QsV0FBVztnQkFDWCxhQUFhO2dCQUNiO29CQUNJLE9BQU8sRUFBRSxhQUFhO29CQUN0QixRQUFRLEVBQUUsU0FBUyxJQUFJLHFCQUFxQjtpQkFDL0M7YUFDSjtTQUNKLENBQUM7SUFDTixDQUFDOzt3R0ExQlEsVUFBVTt5R0FBVixVQUFVLGlCQVhmLGNBQWM7UUFDZCxlQUFlO1FBQ2YscUJBQXFCO1FBQ3JCLHFCQUFxQjtRQUNyQiwyQkFBMkIsYUFaM0IsZ0JBQWdCO1FBQ2hCLFlBQVk7UUFDWixXQUFXO1FBQ1gsZUFBZTtRQUNmLFVBQVU7UUFDVixpQkFBaUIsYUFVakIscUJBQXFCO3lHQUloQixVQUFVLFlBbkJmLGdCQUFnQjtRQUNoQixZQUFZO1FBQ1osV0FBVztRQUNYLGVBQWU7UUFDZixVQUFVO1FBQ1YsaUJBQWlCOzRGQWNaLFVBQVU7a0JBckJ0QixRQUFRO21CQUFDO29CQUNOLE9BQU8sRUFBRTt3QkFDTCxnQkFBZ0I7d0JBQ2hCLFlBQVk7d0JBQ1osV0FBVzt3QkFDWCxlQUFlO3dCQUNmLFVBQVU7d0JBQ1YsaUJBQWlCO3FCQUNwQjtvQkFDRCxZQUFZLEVBQUU7d0JBQ1YsY0FBYzt3QkFDZCxlQUFlO3dCQUNmLHFCQUFxQjt3QkFDckIscUJBQXFCO3dCQUNyQiwyQkFBMkI7cUJBQzlCO29CQUNELE9BQU8sRUFBRTt3QkFDTCxxQkFBcUI7cUJBQ3hCO29CQUNELE9BQU8sRUFBRSxDQUFDLHNCQUFzQixDQUFDO2lCQUNwQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlLCBDVVNUT01fRUxFTUVOVFNfU0NIRU1BLCBNb2R1bGVXaXRoUHJvdmlkZXJzIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBIdHRwQ2xpZW50LCBIdHRwQ2xpZW50TW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHsgQXV0aGVudGljYXRpb25TZXJ2aWNlIH0gZnJvbSAnLi9zZXJ2aWNlcy9hdXRoZW50aWNhdGlvbi5zZXJ2aWNlJztcbmltcG9ydCB7IFVzZXJTZXJ2aWNlIH0gZnJvbSAnLi9zZXJ2aWNlcy91c2VyLnNlcnZpY2UnO1xuaW1wb3J0IHsgTG9naW5Db21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvbG9naW4vbG9naW4uY29tcG9uZW50JztcbmltcG9ydCB7IExvZ291dENvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9sb2dvdXQvbG9nb3V0LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBBUFBfTE9DQVRJT05TLCBERUZBVUxUX0FQUF9MT0NBVElPTlMsIEF1dGhHdWFyZCB9IGZyb20gJy4vZ3VhcmRzL2F1dGguZ3VhcmQnO1xuaW1wb3J0IHsgQXV0aFJvdXRpbmdNb2R1bGUgfSBmcm9tICcuL2F1dGgucm91dGluZyc7XG5pbXBvcnQgeyBBdXRoQ2FsbGJhY2tDb21wb25lbnQgfSBmcm9tICcuL2F1dGgtY2FsbGJhY2suY29tcG9uZW50JztcbmltcG9ydCB7IFRyYW5zbGF0ZU1vZHVsZSB9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnO1xuaW1wb3J0IHsgQW5ndWxhckRhdGFDb250ZXh0LCBNb3N0TW9kdWxlIH0gZnJvbSAnQHRoZW1vc3QvYW5ndWxhcic7XG5pbXBvcnQgeyBBY3RpdmF0ZWRVc2VyIH0gZnJvbSAnLi9zZXJ2aWNlcy9hY3RpdmF0ZWQtdXNlci5zZXJ2aWNlJztcbmltcG9ydCB7IFBrY2VBdXRoZW50aWNhdGlvblNlcnZpY2UgfSBmcm9tICcuL3NlcnZpY2VzL3BrY2UtYXV0aGVudGljYXRpb24uc2VydmljZSc7XG5pbXBvcnQgeyBDb25maWd1cmF0aW9uU2VydmljZSB9IGZyb20gJy4uL3NoYXJlZC9zZXJ2aWNlcy9jb25maWd1cmF0aW9uLnNlcnZpY2UnO1xuaW1wb3J0IHsgQWN0aXZhdGVkUm91dGUgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgUmVmcmVzaFRva2VuQWN0aW9uQ29tcG9uZW50LCBSZWZyZXNoVG9rZW5Db21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvcmVmcmVzaC9yZWZyZXNoLXRva2VuLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBMb2NhdGlvblBlcm1pc3Npb24gfSBmcm9tICcuL2d1YXJkcy9hdXRoLmd1YXJkLmludGVyZmFjZXMnO1xuXG5leHBvcnQgZnVuY3Rpb24gQXV0aGVudGljYXRpb25TZXJ2aWNlRmFjdG9yeShcbiAgICBodHRwOiBIdHRwQ2xpZW50LFxuICAgIGNvbmZpZ3VyYXRpb246IENvbmZpZ3VyYXRpb25TZXJ2aWNlLFxuICAgIGNvbnRleHQ6IEFuZ3VsYXJEYXRhQ29udGV4dCxcbiAgICBhY3RpdmF0ZWRSb3V0ZTogQWN0aXZhdGVkUm91dGUsXG4gICAgYWN0aXZhdGVkVXNlcjogQWN0aXZhdGVkVXNlcikge1xuICAgIGNvbnN0IGF1dGhTZXR0aW5nczogeyB1c2U/OiBzdHJpbmcgfSA9IGNvbmZpZ3VyYXRpb24uc2V0dGluZ3MuYXV0aDtcbiAgICBpZiAoT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGF1dGhTZXR0aW5ncywgJ3VzZScpKSB7XG4gICAgICAgIGlmIChhdXRoU2V0dGluZ3MudXNlID09PSAnUGtjZUF1dGhlbnRpY2F0aW9uU2VydmljZScpIHtcbiAgICAgICAgICAgIC8vIHVzZSBQa2NlQXV0aGVudGljYXRpb25TZXJ2aWNlXG4gICAgICAgICAgICByZXR1cm4gbmV3IFBrY2VBdXRoZW50aWNhdGlvblNlcnZpY2UoaHR0cCwgY29uZmlndXJhdGlvbixcbiAgICAgICAgICAgICAgICBjb250ZXh0LCBhY3RpdmF0ZWRSb3V0ZSwgYWN0aXZhdGVkVXNlcik7XG4gICAgICAgIH1cbiAgICAgICAgLy8gc2hvdyB3YXJuaW5nIGZvciB1bnN1cHBvcnRlZCBzZXJ2aWNlXG4gICAgICAgIGNvbnNvbGUubG9nKCdXQVJOJywgJ1RoZSBzcGVjaWZpZWQgYXV0aGVudGljYXRpb24gc2VydmljZSBpcyBub3QgeWV0IGltcGxlbWVudGVkLicpO1xuICAgIH1cbiAgICAvLyB1c2UgZmFsbGJhY2sgd2hpY2ggaXMgb2YgY291cnNlIGFuIGluc3RhbmNlIG9mIFNpZ25lclNlcnZpY2VcbiAgICByZXR1cm4gbmV3IEF1dGhlbnRpY2F0aW9uU2VydmljZShjb25maWd1cmF0aW9uLFxuICAgICAgICBjb250ZXh0LCBhY3RpdmF0ZWRSb3V0ZSwgYWN0aXZhdGVkVXNlcik7XG59XG5cbkBOZ01vZHVsZSh7XG4gICAgaW1wb3J0czogW1xuICAgICAgICBIdHRwQ2xpZW50TW9kdWxlLFxuICAgICAgICBDb21tb25Nb2R1bGUsXG4gICAgICAgIEZvcm1zTW9kdWxlLFxuICAgICAgICBUcmFuc2xhdGVNb2R1bGUsXG4gICAgICAgIE1vc3RNb2R1bGUsXG4gICAgICAgIEF1dGhSb3V0aW5nTW9kdWxlXG4gICAgXSxcbiAgICBkZWNsYXJhdGlvbnM6IFtcbiAgICAgICAgTG9naW5Db21wb25lbnQsXG4gICAgICAgIExvZ291dENvbXBvbmVudCxcbiAgICAgICAgQXV0aENhbGxiYWNrQ29tcG9uZW50LFxuICAgICAgICBSZWZyZXNoVG9rZW5Db21wb25lbnQsXG4gICAgICAgIFJlZnJlc2hUb2tlbkFjdGlvbkNvbXBvbmVudFxuICAgIF0sXG4gICAgZXhwb3J0czogW1xuICAgICAgICBSZWZyZXNoVG9rZW5Db21wb25lbnRcbiAgICBdLFxuICAgIHNjaGVtYXM6IFtDVVNUT01fRUxFTUVOVFNfU0NIRU1BXVxufSlcbmV4cG9ydCBjbGFzcyBBdXRoTW9kdWxlIHtcblxuICAgIHN0YXRpYyBmb3JSb290KGxvY2F0aW9ucz86IEFycmF5PExvY2F0aW9uUGVybWlzc2lvbj4pOiBNb2R1bGVXaXRoUHJvdmlkZXJzPEF1dGhNb2R1bGU+IHtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIG5nTW9kdWxlOiBBdXRoTW9kdWxlLFxuICAgICAgICAgICAgcHJvdmlkZXJzOiBbXG4gICAgICAgICAgICAgICAgQXV0aEd1YXJkLFxuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgcHJvdmlkZTogQXV0aGVudGljYXRpb25TZXJ2aWNlLFxuICAgICAgICAgICAgICAgICAgICB1c2VGYWN0b3J5OiBBdXRoZW50aWNhdGlvblNlcnZpY2VGYWN0b3J5LFxuICAgICAgICAgICAgICAgICAgICBkZXBzOiBbXG4gICAgICAgICAgICAgICAgICAgICAgICBIdHRwQ2xpZW50LFxuICAgICAgICAgICAgICAgICAgICAgICAgQ29uZmlndXJhdGlvblNlcnZpY2UsXG4gICAgICAgICAgICAgICAgICAgICAgICBBbmd1bGFyRGF0YUNvbnRleHQsXG4gICAgICAgICAgICAgICAgICAgICAgICBBY3RpdmF0ZWRSb3V0ZSxcbiAgICAgICAgICAgICAgICAgICAgICAgIEFjdGl2YXRlZFVzZXIsXG4gICAgICAgICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICBVc2VyU2VydmljZSxcbiAgICAgICAgICAgICAgICBBY3RpdmF0ZWRVc2VyLFxuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgcHJvdmlkZTogQVBQX0xPQ0FUSU9OUyxcbiAgICAgICAgICAgICAgICAgICAgdXNlVmFsdWU6IGxvY2F0aW9ucyB8fCBERUZBVUxUX0FQUF9MT0NBVElPTlNcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICBdXG4gICAgICAgIH07XG4gICAgfVxuXG59XG4iXX0=