Commit f74bc4b4 authored by alish's avatar alish
Browse files

feat: complete FAKE_DATA_GENERATOR setting #1097

parent c8bd2e8b
Loading
Loading
Loading
Loading
+30 −0
Original line number Diff line number Diff line
import { Injectable } from '@angular/core';
import {
	CanActivate,
	ActivatedRouteSnapshot,
	Router,
	RouterStateSnapshot,
} from '@angular/router';
import { Store } from '@app/@core/data/store.service';

@Injectable()
export class FakeDataModuleGuard implements CanActivate {
	constructor(
		private readonly router: Router,
		private readonly store: Store
	) {}

	canActivate(
		route: ActivatedRouteSnapshot,
		state: RouterStateSnapshot
	): boolean {
		const fakeDataGenerator = !!+this.store.fakeDataGenerator;

		if (!fakeDataGenerator) {
			this.router.navigate(['/']);
			return false;
		}

		return true;
	}
}
+1 −1
Original line number Diff line number Diff line
@@ -5,7 +5,7 @@

	<nb-card-body>
		<button
			*ngIf="fakeDataGenerator"
			[disabled]="!fakeDataGenerator"
			nbButton
			status="primary"
			class="mr-3"
+1 −1
Original line number Diff line number Diff line
@@ -16,7 +16,7 @@ export class SetupComponent implements OnInit {
		private readonly _store: Store
	) {}
	ngOnInit(): void {
		this.fakeDataGenerator = !!this._store.fakeDataGenerator;
		this.fakeDataGenerator = !!+this._store.fakeDataGenerator;
	}

	navigateToFakeDataPage() {
+2 −0
Original line number Diff line number Diff line
import { RouterModule, Routes } from '@angular/router';
import { NgModule } from '@angular/core';
import { PagesComponent } from './pages.component';
import { FakeDataModuleGuard } from './+fakeData/fakeData.module.guard';

const routes: Routes = [
	{
@@ -65,6 +66,7 @@ const routes: Routes = [
					import('app/pages/+fakeData/fakeData.module').then(
						(m) => m.FakeDataModule
					),
				canActivate: [FakeDataModuleGuard],
			},
			{
				path: 'devices',
+2 −0
Original line number Diff line number Diff line
@@ -5,6 +5,7 @@ import { PagesRoutingModule } from './pages-routing.module';
import { ThemeModule } from '../@theme/theme.module';
import { MiscellaneousModule } from './miscellaneous/miscellaneous.module';
import { SignInRedirectModule } from './+sign-in-redirect/sign-in-redirect.module';
import { FakeDataModuleGuard } from './+fakeData/fakeData.module.guard';

const PAGES_COMPONENTS = [PagesComponent];

@@ -16,6 +17,7 @@ const PAGES_COMPONENTS = [PagesComponent];
		SignInRedirectModule,
		MiscellaneousModule,
	],
	providers: [FakeDataModuleGuard],
	declarations: [...PAGES_COMPONENTS],
})
export class PagesModule {}
Loading