diff --git a/packages/igx-templates/igx-ts/custom-templates/fintech-grid/files/src/app/__path__/__filePrefix__.ts b/packages/igx-templates/igx-ts/custom-templates/fintech-grid/files/src/app/__path__/__filePrefix__.ts index 782bc1163..d973a63ea 100644 --- a/packages/igx-templates/igx-ts/custom-templates/fintech-grid/files/src/app/__path__/__filePrefix__.ts +++ b/packages/igx-templates/igx-ts/custom-templates/fintech-grid/files/src/app/__path__/__filePrefix__.ts @@ -44,13 +44,13 @@ import { } from 'igniteui-angular-charts'; import { timer } from 'rxjs'; import { debounce } from 'rxjs/operators'; -import { LocalDataService } from './localData.service'; -import { Contract, REGIONS } from './localData/financialData'; +import { LocalData } from './local-data'; +import { Contract, REGIONS } from './data/financialData'; import { NgIf, NgFor, CurrencyPipe } from '@angular/common'; import { ReactiveFormsModule, FormsModule } from '@angular/forms'; @Component({ - providers: [LocalDataService], + providers: [LocalData], selector: 'app-<%=filePrefix%>', templateUrl: './<%=filePrefix%>.html', styleUrl: './<%=filePrefix%>.scss', @@ -136,11 +136,11 @@ export class <%=ClassName%> implements OnInit, AfterViewInit, OnDestroy { private timer: any; private volumeChanged: any; constructor( - private localService: LocalDataService, + private localData: LocalData, private elRef: ElementRef, private cdr: ChangeDetectorRef) { - this.subscription = this.localService.getData(this.volume); - this.localService.records.subscribe(x => { this.data = x; }); + this.subscription = this.localData.getData(this.volume); + this.localData.records.subscribe(x => { this.data = x; }); } public ngOnInit(): void { @@ -166,7 +166,7 @@ export class <%=ClassName%> implements OnInit, AfterViewInit, OnDestroy { this.volumeChanged = this.volumeSlider.valueChange.pipe(debounce(() => timer(200))); this.volumeChanged.subscribe( () => { - this.localService.getData(this.volume); + this.localData.getData(this.volume); }, (err: string) => console.log('Error: ' + err)); } diff --git a/packages/igx-templates/igx-ts/custom-templates/fintech-grid/files/src/app/__path__/localData/financialData.ts b/packages/igx-templates/igx-ts/custom-templates/fintech-grid/files/src/app/__path__/data/financialData.ts similarity index 100% rename from packages/igx-templates/igx-ts/custom-templates/fintech-grid/files/src/app/__path__/localData/financialData.ts rename to packages/igx-templates/igx-ts/custom-templates/fintech-grid/files/src/app/__path__/data/financialData.ts diff --git a/packages/igx-templates/igx-ts/custom-templates/fintech-grid/files/src/app/__path__/localData.service.ts b/packages/igx-templates/igx-ts/custom-templates/fintech-grid/files/src/app/__path__/local-data.ts similarity index 83% rename from packages/igx-templates/igx-ts/custom-templates/fintech-grid/files/src/app/__path__/localData.service.ts rename to packages/igx-templates/igx-ts/custom-templates/fintech-grid/files/src/app/__path__/local-data.ts index 2cdf8c9f4..c8e59ab34 100644 --- a/packages/igx-templates/igx-ts/custom-templates/fintech-grid/files/src/app/__path__/localData.service.ts +++ b/packages/igx-templates/igx-ts/custom-templates/fintech-grid/files/src/app/__path__/local-data.ts @@ -1,9 +1,9 @@ import { Injectable } from '@angular/core'; import { BehaviorSubject, Observable} from 'rxjs'; -import { FinancialData } from './localData/financialData'; +import { FinancialData } from './data/financialData'; @Injectable() -export class LocalDataService { +export class LocalData { public records: Observable; public records$: BehaviorSubject; diff --git a/packages/igx-templates/igx-ts/custom-templates/fintech-tree-grid/files/src/app/__path__/__filePrefix__.ts b/packages/igx-templates/igx-ts/custom-templates/fintech-tree-grid/files/src/app/__path__/__filePrefix__.ts index 982f5b65c..e0e81abd6 100644 --- a/packages/igx-templates/igx-ts/custom-templates/fintech-tree-grid/files/src/app/__path__/__filePrefix__.ts +++ b/packages/igx-templates/igx-ts/custom-templates/fintech-tree-grid/files/src/app/__path__/__filePrefix__.ts @@ -33,13 +33,13 @@ import { } from '<%=igxPackage%>'; import { timer } from 'rxjs'; import { debounce } from 'rxjs/operators'; -import { LocalDataService } from './localData.service'; +import { LocalData } from './local-data'; import { ITreeGridAggregation, <%=ClassName%>TreeGridGroupingPipe } from './tree-grid-grouping.pipe'; import { NgIf, CurrencyPipe } from '@angular/common'; import { ReactiveFormsModule, FormsModule } from '@angular/forms'; @Component({ - providers: [LocalDataService], + providers: [LocalData], selector: 'app-<%=filePrefix%>', templateUrl: './<%=filePrefix%>.html', styleUrl: './<%=filePrefix%>.scss', @@ -140,9 +140,9 @@ export class <%=ClassName%> implements OnInit, AfterViewInit, OnDestroy { private timer: any; private volumeChanged: any; - constructor(private zone: NgZone, private localService: LocalDataService, private elRef: ElementRef) { - this.subscription = this.localService.getData(this.volume); - this.localService.records.subscribe((d) => this.data = d); + constructor(private zone: NgZone, private localData: LocalData, private elRef: ElementRef) { + this.subscription = this.localData.getData(this.volume); + this.localData.records.subscribe((d) => this.data = d); } public ngOnInit(): void { @@ -150,7 +150,7 @@ export class <%=ClassName%> implements OnInit, AfterViewInit, OnDestroy { this.volumeChanged = this.volumeSlider.valueChange.pipe(debounce(() => timer(200))); this.volumeChanged.subscribe( () => { - this.localService.getData(this.volume); + this.localData.getData(this.volume); }, (err: string) => console.log('Error: ' + err)); } diff --git a/packages/igx-templates/igx-ts/custom-templates/fintech-tree-grid/files/src/app/__path__/localData.service.ts b/packages/igx-templates/igx-ts/custom-templates/fintech-tree-grid/files/src/app/__path__/local-data.ts similarity index 94% rename from packages/igx-templates/igx-ts/custom-templates/fintech-tree-grid/files/src/app/__path__/localData.service.ts rename to packages/igx-templates/igx-ts/custom-templates/fintech-tree-grid/files/src/app/__path__/local-data.ts index 08807db0c..6fd0180ab 100644 --- a/packages/igx-templates/igx-ts/custom-templates/fintech-tree-grid/files/src/app/__path__/localData.service.ts +++ b/packages/igx-templates/igx-ts/custom-templates/fintech-tree-grid/files/src/app/__path__/local-data.ts @@ -3,7 +3,7 @@ import { BehaviorSubject, Observable} from 'rxjs'; import { FinancialData } from './assets/financialData'; @Injectable() -export class LocalDataService { +export class LocalData { public records: Observable; public records$: BehaviorSubject; diff --git a/packages/igx-templates/igx-ts/projects/_base/files/src/app/app.config.ts b/packages/igx-templates/igx-ts/projects/_base/files/src/app/app.config.ts index 0c7ee82de..327bd6ad7 100644 --- a/packages/igx-templates/igx-ts/projects/_base/files/src/app/app.config.ts +++ b/packages/igx-templates/igx-ts/projects/_base/files/src/app/app.config.ts @@ -5,7 +5,7 @@ import { provideRouter } from '@angular/router'; import { environment } from '../environments/environment'; import { routes } from './app.routes'; -import { GlobalErrorHandlerService } from './error-routing/error/global-error-handler.service'; +import { GlobalErrorHandler } from './error-routing/error/global-error-handler'; export const appConfig: ApplicationConfig = { providers: [ @@ -14,6 +14,6 @@ export const appConfig: ApplicationConfig = { provideRouter(routes), importProvidersFrom(BrowserModule, HammerModule), provideAnimations(), - ...(environment.production ? [{ provide: ErrorHandler, useClass: GlobalErrorHandlerService }] : []) + ...(environment.production ? [{ provide: ErrorHandler, useClass: GlobalErrorHandler }] : []) ] }; diff --git a/packages/igx-templates/igx-ts/projects/_base/files/src/app/error-routing/error/global-error-handler.service.ts b/packages/igx-templates/igx-ts/projects/_base/files/src/app/error-routing/error/global-error-handler.ts similarity index 89% rename from packages/igx-templates/igx-ts/projects/_base/files/src/app/error-routing/error/global-error-handler.service.ts rename to packages/igx-templates/igx-ts/projects/_base/files/src/app/error-routing/error/global-error-handler.ts index 392139de4..05c2691e4 100644 --- a/packages/igx-templates/igx-ts/projects/_base/files/src/app/error-routing/error/global-error-handler.service.ts +++ b/packages/igx-templates/igx-ts/projects/_base/files/src/app/error-routing/error/global-error-handler.ts @@ -2,7 +2,7 @@ import { ErrorHandler, Injectable, Injector, NgZone, inject } from '@angular/cor import { Router } from '@angular/router'; @Injectable() -export class GlobalErrorHandlerService implements ErrorHandler { +export class GlobalErrorHandler implements ErrorHandler { private injector = inject(Injector); private zone = inject(NgZone); diff --git a/packages/igx-templates/igx-ts/projects/side-nav-auth/files/src/app/app-module.ts b/packages/igx-templates/igx-ts/projects/side-nav-auth/files/src/app/app-module.ts index 4c84966a5..6c4811c3a 100644 --- a/packages/igx-templates/igx-ts/projects/side-nav-auth/files/src/app/app-module.ts +++ b/packages/igx-templates/igx-ts/projects/side-nav-auth/files/src/app/app-module.ts @@ -7,7 +7,7 @@ import { } from 'igniteui-angular'; import { AppRoutingModule } from './app-routing-module'; import { App } from './app'; -import { AuthenticationModule, ExternalAuthService } from './authentication'; +import { AuthenticationModule, ExternalAuth } from './authentication'; import { Home } from './home/home'; @NgModule({ @@ -33,7 +33,7 @@ import { Home } from './home/home'; }) export class AppModule { - constructor(private externalAuthService: ExternalAuthService) { + constructor(private externalAuthService: ExternalAuth) { /** * To register a social login, un-comment one or more of the following and add your service provider Client ID. * See https://github.com/IgniteUI/igniteui-cli/wiki/Angular-Authentication-Project-Template#add-a-third-party-social-provider diff --git a/packages/igx-templates/igx-ts/projects/side-nav-auth/files/src/app/app.config.ts b/packages/igx-templates/igx-ts/projects/side-nav-auth/files/src/app/app.config.ts index 6afd9d3be..ba5845305 100644 --- a/packages/igx-templates/igx-ts/projects/side-nav-auth/files/src/app/app.config.ts +++ b/packages/igx-templates/igx-ts/projects/side-nav-auth/files/src/app/app.config.ts @@ -9,7 +9,7 @@ import { IgxRippleModule, } from '<%=igxPackage%>'; -import { AuthenticationModule, ExternalAuthService } from './authentication'; +import { AuthenticationModule, ExternalAuth } from './authentication'; import { routes } from './app.routes'; export const appConfig: ApplicationConfig = { @@ -27,6 +27,6 @@ export const appConfig: ApplicationConfig = { AuthenticationModule ), provideAnimations(), - ExternalAuthService + ExternalAuth ] }; diff --git a/packages/igx-templates/igx-ts/projects/side-nav-auth/files/src/app/authentication/auth.guard.ts b/packages/igx-templates/igx-ts/projects/side-nav-auth/files/src/app/authentication/auth.guard.ts index d21cbe035..53d957c23 100644 --- a/packages/igx-templates/igx-ts/projects/side-nav-auth/files/src/app/authentication/auth.guard.ts +++ b/packages/igx-templates/igx-ts/projects/side-nav-auth/files/src/app/authentication/auth.guard.ts @@ -1,15 +1,15 @@ import { Injectable } from '@angular/core'; import { ActivatedRouteSnapshot, CanActivate, Router, RouterStateSnapshot } from '@angular/router'; -import { UserService } from './services/user.service'; +import { UserStore } from './services/user-store'; @Injectable({ providedIn: 'root' }) export class AuthGuard implements CanActivate { - constructor(private router: Router, private userService: UserService) { } + constructor(private router: Router, private userStore: UserStore) { } canActivate(route: ActivatedRouteSnapshot, state: RouterStateSnapshot) { - if (this.userService.currentUser) { + if (this.userStore.currentUser) { return true; } this.router.navigate([''], { queryParams: { returnUrl: state.url } }); diff --git a/packages/igx-templates/igx-ts/projects/side-nav-auth/files/src/app/authentication/authentication-module.ts b/packages/igx-templates/igx-ts/projects/side-nav-auth/files/src/app/authentication/authentication-module.ts index ef4d9f559..7e78614f3 100644 --- a/packages/igx-templates/igx-ts/projects/side-nav-auth/files/src/app/authentication/authentication-module.ts +++ b/packages/igx-templates/igx-ts/projects/side-nav-auth/files/src/app/authentication/authentication-module.ts @@ -21,7 +21,7 @@ import { Login } from './login/login'; import { Profile} from './profile/profile'; import { Redirect } from './redirect/redirect'; import { Register } from './register/register'; -import { BackendProvider } from './services/fake-backend.service'; +import { BackendProvider } from './services/fake-backend'; import { JwtInterceptor } from './services/jwt.interceptor'; @NgModule({ diff --git a/packages/igx-templates/igx-ts/projects/side-nav-auth/files/src/app/authentication/authentication-routing-module.ts b/packages/igx-templates/igx-ts/projects/side-nav-auth/files/src/app/authentication/authentication-routing-module.ts index 605274380..135624a81 100644 --- a/packages/igx-templates/igx-ts/projects/side-nav-auth/files/src/app/authentication/authentication-routing-module.ts +++ b/packages/igx-templates/igx-ts/projects/side-nav-auth/files/src/app/authentication/authentication-routing-module.ts @@ -4,7 +4,7 @@ import { AuthGuard } from './auth.guard'; import { Profile } from './profile/profile'; import { Redirect } from './redirect/redirect'; import { ExternalAuthProvider } from './services/external-auth-configs'; -import { ExternalAuthRedirectUrl } from './services/external-auth.service'; +import { ExternalAuthRedirectUrl } from './services/external-auth'; const authRoutes: Routes = [ { path: 'profile', component: Profile, canActivate: [AuthGuard] }, diff --git a/packages/igx-templates/igx-ts/projects/side-nav-auth/files/src/app/authentication/index.ts b/packages/igx-templates/igx-ts/projects/side-nav-auth/files/src/app/authentication/index.ts index 954a0443a..b04b6d28c 100644 --- a/packages/igx-templates/igx-ts/projects/side-nav-auth/files/src/app/authentication/index.ts +++ b/packages/igx-templates/igx-ts/projects/side-nav-auth/files/src/app/authentication/index.ts @@ -4,6 +4,6 @@ export * from './authentication-module'; export * from './models/login'; export * from './models/register-info'; export * from './models/user'; -export * from './services/authentication.service'; -export * from './services/external-auth.service'; -export * from './services/user.service'; +export * from './services/authentication'; +export * from './services/external-auth'; +export * from './services/user-store'; diff --git a/packages/igx-templates/igx-ts/projects/side-nav-auth/files/src/app/authentication/login-bar/login-bar.html b/packages/igx-templates/igx-ts/projects/side-nav-auth/files/src/app/authentication/login-bar/login-bar.html index 377e1c981..822231891 100644 --- a/packages/igx-templates/igx-ts/projects/side-nav-auth/files/src/app/authentication/login-bar/login-bar.html +++ b/packages/igx-templates/igx-ts/projects/side-nav-auth/files/src/app/authentication/login-bar/login-bar.html @@ -1,9 +1,9 @@ - - Create new account? - diff --git a/packages/igx-templates/igx-ts/projects/side-nav-auth/files/src/app/authentication/login/login.spec.ts b/packages/igx-templates/igx-ts/projects/side-nav-auth/files/src/app/authentication/login/login.spec.ts index adf09e3f5..4f7e5ee13 100644 --- a/packages/igx-templates/igx-ts/projects/side-nav-auth/files/src/app/authentication/login/login.spec.ts +++ b/packages/igx-templates/igx-ts/projects/side-nav-auth/files/src/app/authentication/login/login.spec.ts @@ -6,10 +6,10 @@ import { NoopAnimationsModule } from '@angular/platform-browser/animations'; import { Router } from '@angular/router'; import { RouterTestingModule } from '@angular/router/testing'; import { IgxButtonModule, IgxIconModule, IgxInputGroupModule, IgxRippleModule } from 'igniteui-angular'; -import { AuthenticationService } from '../services/authentication.service'; +import { Authentication } from '../services/authentication'; import { ExternalAuthProvider } from '../services/external-auth-configs'; -import { ExternalAuthService } from '../services/external-auth.service'; -import { UserService } from '../services/user.service'; +import { ExternalAuth } from '../services/external-auth'; +import { UserStore } from '../services/user-store'; import { Login } from './login'; const MAIL_GROUP_NAME = 'email'; @@ -18,18 +18,18 @@ const PASSWORD_GROUP_NAME = 'password'; describe('Login', () => { let component: Login; let fixture: ComponentFixture; - const extAuthSpy = jasmine.createSpyObj('ExternalAuthService', ['login', 'hasProvider']); - const authSpy = jasmine.createSpyObj('AuthenticationService', ['login']); - const userServSpy = jasmine.createSpyObj('UserService', ['setCurrentUser']); + const extAuthSpy = jasmine.createSpyObj('ExternalAuth', ['login', 'hasProvider']); + const authSpy = jasmine.createSpyObj('Authentication', ['login']); + const userServSpy = jasmine.createSpyObj('UserStore', ['setCurrentUser']); beforeEach(async () => { await TestBed.configureTestingModule({ imports: [Login, ReactiveFormsModule, RouterTestingModule, NoopAnimationsModule, IgxInputGroupModule, IgxButtonModule, IgxIconModule, IgxRippleModule], providers: [ - { provide: ExternalAuthService, useValue: extAuthSpy }, - { provide: AuthenticationService, useValue: authSpy }, - { provide: UserService, useValue: userServSpy } + { provide: ExternalAuth, useValue: extAuthSpy }, + { provide: Authentication, useValue: authSpy }, + { provide: UserStore, useValue: userServSpy } ] }) .compileComponents(); diff --git a/packages/igx-templates/igx-ts/projects/side-nav-auth/files/src/app/authentication/login/login.ts b/packages/igx-templates/igx-ts/projects/side-nav-auth/files/src/app/authentication/login/login.ts index b82145890..d52dccee9 100644 --- a/packages/igx-templates/igx-ts/projects/side-nav-auth/files/src/app/authentication/login/login.ts +++ b/packages/igx-templates/igx-ts/projects/side-nav-auth/files/src/app/authentication/login/login.ts @@ -5,10 +5,10 @@ import { Router } from '@angular/router'; import { IgxInputGroupComponent, IgxPrefixDirective, IgxIconComponent, IgxLabelDirective, IgxInputDirective, IgxButtonDirective, IgxRippleDirective } from 'igniteui-angular'; -import { AuthenticationService } from '../services/authentication.service'; +import { Authentication } from '../services/authentication'; import { ExternalAuthProvider } from '../services/external-auth-configs'; -import { ExternalAuthService } from '../services/external-auth.service'; -import { UserService } from '../services/user.service'; +import { ExternalAuth } from '../services/external-auth'; +import { UserStore } from '../services/user-store'; @Component({ selector: 'app-login', @@ -25,8 +25,8 @@ export class Login { public providers = ExternalAuthProvider; constructor( - public authService: ExternalAuthService, private authentication: AuthenticationService, - private userService: UserService, private router: Router, fb: FormBuilder + public externalAuth: ExternalAuth, private authentication: Authentication, + private userStore: UserStore, private router: Router, fb: FormBuilder ) { this.loginForm = fb.group({ email: ['', Validators.required], @@ -35,22 +35,22 @@ export class Login { } signUpG() { - this.authService.login(ExternalAuthProvider.Google); + this.externalAuth.login(ExternalAuthProvider.Google); } signUpMS() { - this.authService.login(ExternalAuthProvider.Microsoft); + this.externalAuth.login(ExternalAuthProvider.Microsoft); } signUpFb() { - this.authService.login(ExternalAuthProvider.Facebook); + this.externalAuth.login(ExternalAuthProvider.Facebook); this.loggedIn.emit(); } async tryLogin() { const response = await this.authentication.login(this.loginForm.value); if (!response.error) { - this.userService.setCurrentUser(response.user!); + this.userStore.setCurrentUser(response.user!); this.router.navigate(['/profile']); this.loginForm.reset(); // https://github.com/angular/angular/issues/15741 diff --git a/packages/igx-templates/igx-ts/projects/side-nav-auth/files/src/app/authentication/profile/profile.html b/packages/igx-templates/igx-ts/projects/side-nav-auth/files/src/app/authentication/profile/profile.html index f89c3186d..77c7a1514 100644 --- a/packages/igx-templates/igx-ts/projects/side-nav-auth/files/src/app/authentication/profile/profile.html +++ b/packages/igx-templates/igx-ts/projects/side-nav-auth/files/src/app/authentication/profile/profile.html @@ -1,3 +1,3 @@

- Hello {{this.userService.currentUser!.name.toUpperCase()}}, you are now logged in! + Hello {{this.userStore.currentUser!.name.toUpperCase()}}, you are now logged in!

diff --git a/packages/igx-templates/igx-ts/projects/side-nav-auth/files/src/app/authentication/profile/profile.spec.ts b/packages/igx-templates/igx-ts/projects/side-nav-auth/files/src/app/authentication/profile/profile.spec.ts index 5e40c2627..6c1d5d0a7 100644 --- a/packages/igx-templates/igx-ts/projects/side-nav-auth/files/src/app/authentication/profile/profile.spec.ts +++ b/packages/igx-templates/igx-ts/projects/side-nav-auth/files/src/app/authentication/profile/profile.spec.ts @@ -1,5 +1,5 @@ import { ComponentFixture, TestBed } from '@angular/core/testing'; -import { UserService } from '../services/user.service'; +import { UserStore } from '../services/user-store'; import { Profile } from './profile'; describe('Profile', () => { @@ -10,7 +10,7 @@ describe('Profile', () => { await TestBed.configureTestingModule({ imports: [Profile], providers: [ - { provide: UserService, useValue: { currentUser: { name: 'test' } } } + { provide: UserStore, useValue: { currentUser: { name: 'test' } } } ] }) .compileComponents(); diff --git a/packages/igx-templates/igx-ts/projects/side-nav-auth/files/src/app/authentication/profile/profile.ts b/packages/igx-templates/igx-ts/projects/side-nav-auth/files/src/app/authentication/profile/profile.ts index b07b49c1b..bd24aeaf5 100644 --- a/packages/igx-templates/igx-ts/projects/side-nav-auth/files/src/app/authentication/profile/profile.ts +++ b/packages/igx-templates/igx-ts/projects/side-nav-auth/files/src/app/authentication/profile/profile.ts @@ -1,5 +1,5 @@ import { Component } from '@angular/core'; -import { UserService } from '../services/user.service'; +import { UserStore } from '../services/user-store'; @Component({ selector: 'app-profile', @@ -7,5 +7,5 @@ import { UserService } from '../services/user.service'; styleUrl: './profile.scss' }) export class Profile { - constructor(public userService: UserService) { } + constructor(public userStore: UserStore) { } } diff --git a/packages/igx-templates/igx-ts/projects/side-nav-auth/files/src/app/authentication/redirect/redirect.spec.ts b/packages/igx-templates/igx-ts/projects/side-nav-auth/files/src/app/authentication/redirect/redirect.spec.ts index 99f67285e..c93235cfe 100644 --- a/packages/igx-templates/igx-ts/projects/side-nav-auth/files/src/app/authentication/redirect/redirect.spec.ts +++ b/packages/igx-templates/igx-ts/projects/side-nav-auth/files/src/app/authentication/redirect/redirect.spec.ts @@ -1,26 +1,26 @@ import { ComponentFixture, TestBed } from '@angular/core/testing'; import { ActivatedRoute, Router } from '@angular/router'; import { RouterTestingModule } from '@angular/router/testing'; -import { AuthenticationService } from '../services/authentication.service'; -import { ExternalAuthService } from '../services/external-auth.service'; -import { UserService } from '../services/user.service'; +import { Authentication } from '../services/authentication'; +import { ExternalAuth } from '../services/external-auth'; +import { UserStore } from '../services/user-store'; import { Redirect } from './redirect'; describe('Redirect', () => { let fixture: ComponentFixture; const activeRouteSpy: any = { snapshot: { data: { value: { provider: {} } } } }; - const extAuthSpy = jasmine.createSpyObj('ExternalAuthService', ['getUserInfo']); - const authSpy = jasmine.createSpyObj('AuthenticationService', ['loginWith']); - const userServSpy = jasmine.createSpyObj('UserService', ['setCurrentUser']); + const extAuthSpy = jasmine.createSpyObj('ExternalAuth', ['getUserInfo']); + const authSpy = jasmine.createSpyObj('Authentication', ['loginWith']); + const userServSpy = jasmine.createSpyObj('UserStore', ['setCurrentUser']); beforeEach(async () => { await TestBed.configureTestingModule({ imports: [RouterTestingModule, Redirect], providers: [ { provide: ActivatedRoute, useValue: activeRouteSpy }, - { provide: ExternalAuthService, useValue: extAuthSpy }, - { provide: AuthenticationService, useValue: authSpy }, - { provide: UserService, useValue: userServSpy } + { provide: ExternalAuth, useValue: extAuthSpy }, + { provide: Authentication, useValue: authSpy }, + { provide: UserStore, useValue: userServSpy } ] }) .compileComponents(); diff --git a/packages/igx-templates/igx-ts/projects/side-nav-auth/files/src/app/authentication/redirect/redirect.ts b/packages/igx-templates/igx-ts/projects/side-nav-auth/files/src/app/authentication/redirect/redirect.ts index f546d2dfd..210386e67 100644 --- a/packages/igx-templates/igx-ts/projects/side-nav-auth/files/src/app/authentication/redirect/redirect.ts +++ b/packages/igx-templates/igx-ts/projects/side-nav-auth/files/src/app/authentication/redirect/redirect.ts @@ -1,10 +1,10 @@ import { Component, OnInit } from '@angular/core'; import { ActivatedRoute, Router } from '@angular/router'; import { ExternalLogin } from '../models/login'; -import { AuthenticationService } from '../services/authentication.service'; +import { Authentication } from '../services/authentication'; import { ExternalAuthProvider } from '../services/external-auth-configs'; -import { ExternalAuthService } from '../services/external-auth.service'; -import { UserService } from '../services/user.service'; +import { ExternalAuth } from '../services/external-auth'; +import { UserStore } from '../services/user-store'; const routeData = 'value'; @@ -17,17 +17,17 @@ export class Redirect implements OnInit { constructor( route: ActivatedRoute, private router: Router, - private user: UserService, - private authService: AuthenticationService, - private externalAuthService: ExternalAuthService) { + private userStore: UserStore, + private authentication: Authentication, + private externalAuth: ExternalAuth) { this.provider = route.snapshot.data[routeData].provider as ExternalAuthProvider; } async ngOnInit() { - const userInfo: ExternalLogin = await this.externalAuthService.getUserInfo(this.provider); - const result = await this.authService.loginWith(userInfo); + const userInfo: ExternalLogin = await this.externalAuth.getUserInfo(this.provider); + const result = await this.authentication.loginWith(userInfo); if (!result.error) { - this.user.setCurrentUser(result.user!); + this.userStore.setCurrentUser(result.user!); this.router.navigate(['/profile']); } else { alert(result.error); diff --git a/packages/igx-templates/igx-ts/projects/side-nav-auth/files/src/app/authentication/register/register.spec.ts b/packages/igx-templates/igx-ts/projects/side-nav-auth/files/src/app/authentication/register/register.spec.ts index fade6c5c8..828ca8413 100644 --- a/packages/igx-templates/igx-ts/projects/side-nav-auth/files/src/app/authentication/register/register.spec.ts +++ b/packages/igx-templates/igx-ts/projects/side-nav-auth/files/src/app/authentication/register/register.spec.ts @@ -4,8 +4,8 @@ import { NoopAnimationsModule } from '@angular/platform-browser/animations'; import { Router } from '@angular/router'; import { RouterTestingModule } from '@angular/router/testing'; import { IgxButtonModule, IgxIconModule, IgxInputGroupModule, IgxRippleModule } from 'igniteui-angular'; -import { AuthenticationService } from '../services/authentication.service'; -import { UserService } from '../services/user.service'; +import { Authentication } from '../services/authentication'; +import { UserStore } from '../services/user-store'; import { Register } from './register'; const MAIL_GROUP_NAME = 'email'; @@ -16,8 +16,8 @@ const FAMILY_NAME_GROUP_NAME = 'family_name'; describe('Register', () => { let component: Register; let fixture: ComponentFixture; - const authSpy = jasmine.createSpyObj('AuthenticationService', ['register']); - const userServSpy = jasmine.createSpyObj('UserService', ['setCurrentUser']); + const authSpy = jasmine.createSpyObj('Authentication', ['register']); + const userServSpy = jasmine.createSpyObj('UserStore', ['setCurrentUser']); const routerSpy = jasmine.createSpyObj('Router', ['navigate']); beforeEach(async () => { @@ -33,8 +33,8 @@ describe('Register', () => { Register ], providers: [ - { provide: AuthenticationService, useValue: authSpy }, - { provide: UserService, useValue: userServSpy }, + { provide: Authentication, useValue: authSpy }, + { provide: UserStore, useValue: userServSpy }, { provide: Router, useValue: routerSpy } ] }) diff --git a/packages/igx-templates/igx-ts/projects/side-nav-auth/files/src/app/authentication/register/register.ts b/packages/igx-templates/igx-ts/projects/side-nav-auth/files/src/app/authentication/register/register.ts index 9f61bf414..a32fefb77 100644 --- a/packages/igx-templates/igx-ts/projects/side-nav-auth/files/src/app/authentication/register/register.ts +++ b/packages/igx-templates/igx-ts/projects/side-nav-auth/files/src/app/authentication/register/register.ts @@ -4,8 +4,8 @@ import { Router } from '@angular/router'; import { IgxInputGroupComponent, IgxPrefixDirective, IgxIconComponent, IgxLabelDirective, IgxInputDirective, IgxButtonDirective, IgxRippleDirective } from 'igniteui-angular'; import { RegisterInfo } from '../models/register-info'; -import { AuthenticationService } from '../services/authentication.service'; -import { UserService } from '../services/user.service'; +import { Authentication } from '../services/authentication'; +import { UserStore } from '../services/user-store'; @Component({ selector: 'app-register', @@ -23,9 +23,9 @@ export class Register { @Output() registered: EventEmitter = new EventEmitter(); - constructor(private authentication: AuthenticationService, + constructor(private authentication: Authentication, private fb: FormBuilder, - private userService: UserService, + private userStore: UserStore, private router: Router) { this.registrationForm = this.fb.group({ given_name: ['', Validators.required], @@ -38,7 +38,7 @@ export class Register { async tryRegister() { const response = await this.authentication.register(this.registrationForm.value as RegisterInfo); if (!response.error) { - this.userService.setCurrentUser(response.user!); + this.userStore.setCurrentUser(response.user!); this.router.navigate(['/profile']); this.registered.emit(); } else { diff --git a/packages/igx-templates/igx-ts/projects/side-nav-auth/files/src/app/authentication/services/authentication.service.ts b/packages/igx-templates/igx-ts/projects/side-nav-auth/files/src/app/authentication/services/authentication.ts similarity index 97% rename from packages/igx-templates/igx-ts/projects/side-nav-auth/files/src/app/authentication/services/authentication.service.ts rename to packages/igx-templates/igx-ts/projects/side-nav-auth/files/src/app/authentication/services/authentication.ts index 2c304fa88..7edd93f7b 100644 --- a/packages/igx-templates/igx-ts/projects/side-nav-auth/files/src/app/authentication/services/authentication.service.ts +++ b/packages/igx-templates/igx-ts/projects/side-nav-auth/files/src/app/authentication/services/authentication.ts @@ -9,7 +9,7 @@ import { parseUser } from './jwt-util'; @Injectable({ providedIn: 'root' }) -export class AuthenticationService { +export class Authentication { constructor(private http: HttpClient) { } diff --git a/packages/igx-templates/igx-ts/projects/side-nav-auth/files/src/app/authentication/services/external-auth.service.ts b/packages/igx-templates/igx-ts/projects/side-nav-auth/files/src/app/authentication/services/external-auth.ts similarity index 99% rename from packages/igx-templates/igx-ts/projects/side-nav-auth/files/src/app/authentication/services/external-auth.service.ts rename to packages/igx-templates/igx-ts/projects/side-nav-auth/files/src/app/authentication/services/external-auth.ts index 25708d811..752d03f57 100644 --- a/packages/igx-templates/igx-ts/projects/side-nav-auth/files/src/app/authentication/services/external-auth.service.ts +++ b/packages/igx-templates/igx-ts/projects/side-nav-auth/files/src/app/authentication/services/external-auth.ts @@ -19,7 +19,7 @@ export enum ExternalAuthRedirectUrl { @Injectable({ providedIn: 'root' }) -export class ExternalAuthService { +export class ExternalAuth { protected providers: Map = new Map(); public get activeProvider(): ExternalAuthProvider { return this.localStorage.getItem('extActiveProvider') as ExternalAuthProvider; diff --git a/packages/igx-templates/igx-ts/projects/side-nav-auth/files/src/app/authentication/services/fake-backend.service.ts b/packages/igx-templates/igx-ts/projects/side-nav-auth/files/src/app/authentication/services/fake-backend.ts similarity index 100% rename from packages/igx-templates/igx-ts/projects/side-nav-auth/files/src/app/authentication/services/fake-backend.service.ts rename to packages/igx-templates/igx-ts/projects/side-nav-auth/files/src/app/authentication/services/fake-backend.ts diff --git a/packages/igx-templates/igx-ts/projects/side-nav-auth/files/src/app/authentication/services/jwt.interceptor.ts b/packages/igx-templates/igx-ts/projects/side-nav-auth/files/src/app/authentication/services/jwt.interceptor.ts index d1b8a064f..8e62c8b7b 100644 --- a/packages/igx-templates/igx-ts/projects/side-nav-auth/files/src/app/authentication/services/jwt.interceptor.ts +++ b/packages/igx-templates/igx-ts/projects/side-nav-auth/files/src/app/authentication/services/jwt.interceptor.ts @@ -1,16 +1,16 @@ import { HttpEvent, HttpHandler, HttpInterceptor, HttpRequest } from '@angular/common/http'; import { Injectable } from '@angular/core'; import { Observable } from 'rxjs'; -import { UserService } from '../services/user.service'; +import { UserStore } from '../services/user-store'; @Injectable({ providedIn: 'root' }) export class JwtInterceptor implements HttpInterceptor { - constructor(private userService: UserService) { } + constructor(private userStore: UserStore) { } intercept(request: HttpRequest, next: HttpHandler): Observable> { - const currentUser = this.userService.currentUser; + const currentUser = this.userStore.currentUser; if (currentUser && currentUser.token) { request = request.clone({ setHeaders: { diff --git a/packages/igx-templates/igx-ts/projects/side-nav-auth/files/src/app/authentication/services/services.spec.ts b/packages/igx-templates/igx-ts/projects/side-nav-auth/files/src/app/authentication/services/services.spec.ts index 286551e93..d78918ec8 100644 --- a/packages/igx-templates/igx-ts/projects/side-nav-auth/files/src/app/authentication/services/services.spec.ts +++ b/packages/igx-templates/igx-ts/projects/side-nav-auth/files/src/app/authentication/services/services.spec.ts @@ -5,14 +5,14 @@ import { take } from 'rxjs/operators'; import { FacebookProvider } from '../providers/facebook-provider'; import { GoogleProvider } from '../providers/google-provider'; import { MicrosoftProvider } from '../providers/microsoft-provider'; -import { AuthenticationService } from './authentication.service'; +import { Authentication } from './authentication'; import { ExternalAuthProvider } from './external-auth-configs'; -import { ExternalAuthRedirectUrl, ExternalAuthService } from './external-auth.service'; -import { BackendInterceptor } from './fake-backend.service'; +import { ExternalAuthRedirectUrl, ExternalAuth } from './external-auth'; +import { BackendInterceptor } from './fake-backend'; import * as JWTUtil from './jwt-util'; import { LocalStorageService } from './local-storage'; import msKeys from './microsoft-keys'; -import { UserService } from './user.service'; +import { UserStore } from './user-store'; describe('Services', () => { @@ -21,7 +21,7 @@ describe('Services', () => { post: () => { } } as any; - const authServ = new AuthenticationService(MOCK_HTTP_CLIENT); + const authServ = new Authentication(MOCK_HTTP_CLIENT); it('Should properly initialize', async () => { expect(authServ).toBeDefined(); }); @@ -79,7 +79,7 @@ describe('Services', () => { } as any; const localStorage = new LocalStorageService(PLATFORM_ID); - const extAuthServ = new ExternalAuthService(MOCK_ROUTER, MOCK_OIDC_SECURITY, MOCK_OIDC_CONFIG, MOCK_LOCATION, localStorage); + const extAuthServ = new ExternalAuth(MOCK_ROUTER, MOCK_OIDC_SECURITY, MOCK_OIDC_CONFIG, MOCK_LOCATION, localStorage); it(`Should properly initialize`, () => { expect(extAuthServ).toBeDefined(); }); @@ -488,7 +488,7 @@ describe('Services', () => { }); it(`Should properly initialize`, () => { - const userServ = new UserService(localStorage); + const userServ = new UserStore(localStorage); expect(userServ).toBeDefined(); expect(localStorage.getItem).toHaveBeenCalledWith('currentUser'); expect(JSON.parse).toHaveBeenCalledWith('MOCK JSON'); @@ -497,7 +497,7 @@ describe('Services', () => { }); it(`Should properly get 'initials'`, () => { - const userServ = new UserService(localStorage); + const userServ = new UserStore(localStorage); const currentUserSpy = spyOnProperty(userServ, 'currentUser', 'get').and.returnValue(null); expect(userServ.initials).toEqual(null); currentUserSpy.and.returnValue({ given_name: '' }); @@ -515,7 +515,7 @@ describe('Services', () => { }); it(`Should properly 'setCurrentUser'`, () => { - const userServ = new UserService(localStorage); + const userServ = new UserStore(localStorage); const mockUser2 = { exp: 111, name: 'Qually T', @@ -537,7 +537,7 @@ describe('Services', () => { }); it(`Should properly call 'clearCurrentUser'`, () => { - const userServ = new UserService(localStorage); + const userServ = new UserStore(localStorage); spyOn(localStorage, 'removeItem'); expect(userServ.currentUser).toBeTruthy(); userServ.clearCurrentUser(); diff --git a/packages/igx-templates/igx-ts/projects/side-nav-auth/files/src/app/authentication/services/user.service.ts b/packages/igx-templates/igx-ts/projects/side-nav-auth/files/src/app/authentication/services/user-store.ts similarity index 93% rename from packages/igx-templates/igx-ts/projects/side-nav-auth/files/src/app/authentication/services/user.service.ts rename to packages/igx-templates/igx-ts/projects/side-nav-auth/files/src/app/authentication/services/user-store.ts index c313a4491..af8fc88d9 100644 --- a/packages/igx-templates/igx-ts/projects/side-nav-auth/files/src/app/authentication/services/user.service.ts +++ b/packages/igx-templates/igx-ts/projects/side-nav-auth/files/src/app/authentication/services/user-store.ts @@ -8,14 +8,14 @@ const USER_TOKEN = 'currentUser'; * Service used to store and provide the current logged in user in the app. * * **NOTE**: Keep in mind using local storage can be susceptible to XSS attacks. - * Consider not storing the User o the client storage if the app requirements allow, + * Consider not storing the User on the client storage if the app requirements allow, * adding a fingerprint to the JWT claims that is sent with a secure cookie, * or other security measures. */ @Injectable({ providedIn: 'root' }) -export class UserService { +export class UserStore { private _currentUser: User | null; /** Current logged in user, if any */ public get currentUser() { return this._currentUser; } diff --git a/packages/igx-templates/igx-ts/tree/default/files/src/app/__path__/__filePrefix__.ts b/packages/igx-templates/igx-ts/tree/default/files/src/app/__path__/__filePrefix__.ts index 65bfb38e7..a0b8e29fe 100644 --- a/packages/igx-templates/igx-ts/tree/default/files/src/app/__path__/__filePrefix__.ts +++ b/packages/igx-templates/igx-ts/tree/default/files/src/app/__path__/__filePrefix__.ts @@ -10,13 +10,13 @@ import { import { Subject } from 'rxjs'; import { take, takeUntil } from 'rxjs/operators'; import { DATA, NodeData, REMOTE_ROOT, SelectableNodeData } from './local-data'; -import { DataService } from './services/data.service'; +import { Data } from './services/data'; @Component({ selector: 'app-<%=filePrefix%>', templateUrl: './<%=filePrefix%>.html', styleUrl: './<%=filePrefix%>.scss', - providers: [DataService], + providers: [Data], imports: [ IgxTreeComponent, NgFor, @@ -37,7 +37,7 @@ export class <%=ClassName%> implements OnDestroy { public remoteData: SelectableNodeData[] = []; private destroy$ = new Subject(); - constructor(private dataService: DataService) { + constructor(private dataService: Data) { this.dataService.data.pipe(takeUntil(this.destroy$)).subscribe((data) => { this.loading = false; this.remoteData = data; diff --git a/packages/igx-templates/igx-ts/tree/default/files/src/app/__path__/services/data.service.ts b/packages/igx-templates/igx-ts/tree/default/files/src/app/__path__/services/data.ts similarity index 98% rename from packages/igx-templates/igx-ts/tree/default/files/src/app/__path__/services/data.service.ts rename to packages/igx-templates/igx-ts/tree/default/files/src/app/__path__/services/data.ts index 12de7b1a9..5b970f2ef 100644 --- a/packages/igx-templates/igx-ts/tree/default/files/src/app/__path__/services/data.service.ts +++ b/packages/igx-templates/igx-ts/tree/default/files/src/app/__path__/services/data.ts @@ -3,7 +3,7 @@ import { Observable, ReplaySubject } from 'rxjs'; import { NodeData, REMOTE_DATA, SelectableNodeData } from '../local-data'; @Injectable() -export class DataService { +export class Data { private nodeData: SelectableNodeData[] = []; private selectedNode: Set = new Set(); private deselectedNode: Set = new Set();