From 9a54ed83d2649ee64cea6e093302a17e3a9c92e8 Mon Sep 17 00:00:00 2001 From: Mr MRF <79112136+Mr-MRF-Dev@users.noreply.github.com> Date: Fri, 16 Aug 2024 03:02:59 +0330 Subject: [PATCH 001/142] feat: created dashboard component and style --- src/app/app.routes.ts | 5 + .../dashboard/dashboard.component.html | 104 ++++++++++++++++++ .../dashboard/dashboard.component.scss | 11 ++ .../dashboard/dashboard.component.spec.ts | 23 ++++ .../dashboard/dashboard.component.ts | 66 +++++++++++ 5 files changed, 209 insertions(+) create mode 100644 src/app/components/dashboard/dashboard.component.html create mode 100644 src/app/components/dashboard/dashboard.component.scss create mode 100644 src/app/components/dashboard/dashboard.component.spec.ts create mode 100644 src/app/components/dashboard/dashboard.component.ts diff --git a/src/app/app.routes.ts b/src/app/app.routes.ts index 89cda22..290ed57 100644 --- a/src/app/app.routes.ts +++ b/src/app/app.routes.ts @@ -1,6 +1,7 @@ import { Routes } from '@angular/router'; import { LoginComponent } from './components/login/login.component'; import { RegisterComponent } from './components/register/register.component'; +import { DashboardComponent } from './components/dashboard/dashboard.component'; export const routes: Routes = [ { @@ -11,4 +12,8 @@ export const routes: Routes = [ path: 'register', component: RegisterComponent, }, + { + path: 'dashboard', + component: DashboardComponent, + }, ]; diff --git a/src/app/components/dashboard/dashboard.component.html b/src/app/components/dashboard/dashboard.component.html new file mode 100644 index 0000000..121f466 --- /dev/null +++ b/src/app/components/dashboard/dashboard.component.html @@ -0,0 +1,104 @@ + + +
+ + + +
+ +
+

+ Some random content + A subtitle +

+
+
+
+
diff --git a/src/app/components/dashboard/dashboard.component.scss b/src/app/components/dashboard/dashboard.component.scss new file mode 100644 index 0000000..b9ea1a3 --- /dev/null +++ b/src/app/components/dashboard/dashboard.component.scss @@ -0,0 +1,11 @@ +#header { + height: calc(var(--tui-height-m) + 0.25rem); +} + +#container { + height: calc(100vh - var(--tui-height-m) - 0.25rem); +} + +#main { + overflow-y: auto; +} \ No newline at end of file diff --git a/src/app/components/dashboard/dashboard.component.spec.ts b/src/app/components/dashboard/dashboard.component.spec.ts new file mode 100644 index 0000000..30e39a2 --- /dev/null +++ b/src/app/components/dashboard/dashboard.component.spec.ts @@ -0,0 +1,23 @@ +import { ComponentFixture, TestBed } from '@angular/core/testing'; + +import { DashboardComponent } from './dashboard.component'; + +describe('DashboardComponent', () => { + let component: DashboardComponent; + let fixture: ComponentFixture; + + beforeEach(async () => { + await TestBed.configureTestingModule({ + imports: [DashboardComponent] + }) + .compileComponents(); + + fixture = TestBed.createComponent(DashboardComponent); + component = fixture.componentInstance; + fixture.detectChanges(); + }); + + it('should create', () => { + expect(component).toBeTruthy(); + }); +}); diff --git a/src/app/components/dashboard/dashboard.component.ts b/src/app/components/dashboard/dashboard.component.ts new file mode 100644 index 0000000..21f2d71 --- /dev/null +++ b/src/app/components/dashboard/dashboard.component.ts @@ -0,0 +1,66 @@ +import { ChangeDetectionStrategy, Component, Input } from '@angular/core'; +import { RouterLink, RouterLinkActive } from '@angular/router'; +import { TuiRepeatTimes } from '@taiga-ui/cdk'; +import { + TuiAppearance, + TuiButton, + TuiDataList, + TuiDropdown, + TuiIcon, + TuiSurface, + TuiTitle, + TuiScrollbar, +} from '@taiga-ui/core'; +import { + TuiAvatar, + TuiBadge, + TuiBadgeNotification, + TuiChevron, + TuiDataListDropdownManager, + TuiFade, + TuiTabs, + TuiBreadcrumbs, +} from '@taiga-ui/kit'; +import { TuiCardLarge, TuiHeader, TuiNavigation } from '@taiga-ui/layout'; +import { TuiItem } from '@taiga-ui/cdk'; +import { TitleCasePipe } from '@angular/common'; +@Component({ + exportAs: "Example1", + imports: [ + TuiNavigation, + TuiScrollbar, + TuiButton, + TuiIcon, + TuiChevron, + TuiDropdown, + TuiFade, + TuiDataList, + TuiBadgeNotification, + TuiAvatar, + RouterLink, + RouterLinkActive, + TuiAppearance, + TitleCasePipe, + TuiBadge, + TuiTabs, + TuiItem, + TuiBreadcrumbs, + TuiRepeatTimes, + TuiCardLarge, + TuiHeader, + TuiSurface, + TuiTitle, + TuiDataListDropdownManager, + ], + changeDetection: ChangeDetectionStrategy.OnPush, + + standalone: true, + selector: 'app-dashboard', + templateUrl: './dashboard.component.html', + styleUrl: './dashboard.component.scss' +}) +export class DashboardComponent { + protected title = "FrontEnd App"; + protected full_name = "name family"; + protected expanded = false; +} From 9202c72e7eb0d6081b3794cd800893b5c86ed7ee Mon Sep 17 00:00:00 2001 From: Mr MRF <79112136+Mr-MRF-Dev@users.noreply.github.com> Date: Fri, 16 Aug 2024 19:06:21 +0330 Subject: [PATCH 002/142] feat: Created user Component --- src/app/app.routes.ts | 7 + .../dashboard/dashboard.component.html | 41 +- .../dashboard/dashboard.component.scss | 9 +- .../dashboard/dashboard.component.ts | 45 +- .../dashboard/users/users.component.html | 423 ++++++++++++++++++ .../dashboard/users/users.component.scss | 11 + .../dashboard/users/users.component.spec.ts | 23 + .../dashboard/users/users.component.ts | 17 + 8 files changed, 506 insertions(+), 70 deletions(-) create mode 100644 src/app/components/dashboard/users/users.component.html create mode 100644 src/app/components/dashboard/users/users.component.scss create mode 100644 src/app/components/dashboard/users/users.component.spec.ts create mode 100644 src/app/components/dashboard/users/users.component.ts diff --git a/src/app/app.routes.ts b/src/app/app.routes.ts index 290ed57..a29a0ef 100644 --- a/src/app/app.routes.ts +++ b/src/app/app.routes.ts @@ -2,6 +2,7 @@ import { Routes } from '@angular/router'; import { LoginComponent } from './components/login/login.component'; import { RegisterComponent } from './components/register/register.component'; import { DashboardComponent } from './components/dashboard/dashboard.component'; +import { UsersComponent } from './components/dashboard/users/users.component'; export const routes: Routes = [ { @@ -14,6 +15,12 @@ export const routes: Routes = [ }, { path: 'dashboard', + title: "Dashboard", component: DashboardComponent, + children: [ + { + path: "users", component: UsersComponent + } + ], }, ]; diff --git a/src/app/components/dashboard/dashboard.component.html b/src/app/components/dashboard/dashboard.component.html index 121f466..3fbe915 100644 --- a/src/app/components/dashboard/dashboard.component.html +++ b/src/app/components/dashboard/dashboard.component.html @@ -1,6 +1,5 @@ - @@ -69,36 +73,7 @@
- -
-

- Some random content - A subtitle -

-
+
diff --git a/src/app/components/dashboard/dashboard.component.scss b/src/app/components/dashboard/dashboard.component.scss index b9ea1a3..6a75510 100644 --- a/src/app/components/dashboard/dashboard.component.scss +++ b/src/app/components/dashboard/dashboard.component.scss @@ -1,11 +1,12 @@ #header { - height: calc(var(--tui-height-m) + 0.25rem); + height: calc(var(--tui-height-m) + 0.25rem); } #container { - height: calc(100vh - var(--tui-height-m) - 0.25rem); + height: calc(100vh - var(--tui-height-m) - 0.25rem); } #main { - overflow-y: auto; -} \ No newline at end of file + padding: 0; + overflow-y: auto; +} diff --git a/src/app/components/dashboard/dashboard.component.ts b/src/app/components/dashboard/dashboard.component.ts index 21f2d71..3f6407d 100644 --- a/src/app/components/dashboard/dashboard.component.ts +++ b/src/app/components/dashboard/dashboard.component.ts @@ -1,29 +1,21 @@ -import { ChangeDetectionStrategy, Component, Input } from '@angular/core'; -import { RouterLink, RouterLinkActive } from '@angular/router'; -import { TuiRepeatTimes } from '@taiga-ui/cdk'; +// import angular +import { ChangeDetectionStrategy, Component } from '@angular/core'; +import { RouterLink, RouterLinkActive, RouterOutlet } from '@angular/router'; +import { TitleCasePipe } from '@angular/common'; + +// import tui import { - TuiAppearance, TuiButton, - TuiDataList, - TuiDropdown, TuiIcon, - TuiSurface, - TuiTitle, TuiScrollbar, } from '@taiga-ui/core'; import { - TuiAvatar, - TuiBadge, TuiBadgeNotification, - TuiChevron, - TuiDataListDropdownManager, TuiFade, - TuiTabs, - TuiBreadcrumbs, } from '@taiga-ui/kit'; -import { TuiCardLarge, TuiHeader, TuiNavigation } from '@taiga-ui/layout'; -import { TuiItem } from '@taiga-ui/cdk'; -import { TitleCasePipe } from '@angular/common'; +import { TuiCardLarge, TuiNavigation } from '@taiga-ui/layout'; + + @Component({ exportAs: "Example1", imports: [ @@ -31,26 +23,13 @@ import { TitleCasePipe } from '@angular/common'; TuiScrollbar, TuiButton, TuiIcon, - TuiChevron, - TuiDropdown, TuiFade, - TuiDataList, TuiBadgeNotification, - TuiAvatar, - RouterLink, - RouterLinkActive, - TuiAppearance, TitleCasePipe, - TuiBadge, - TuiTabs, - TuiItem, - TuiBreadcrumbs, - TuiRepeatTimes, TuiCardLarge, - TuiHeader, - TuiSurface, - TuiTitle, - TuiDataListDropdownManager, + RouterOutlet, + RouterLink, + RouterLinkActive, ], changeDetection: ChangeDetectionStrategy.OnPush, diff --git a/src/app/components/dashboard/users/users.component.html b/src/app/components/dashboard/users/users.component.html new file mode 100644 index 0000000..f36896a --- /dev/null +++ b/src/app/components/dashboard/users/users.component.html @@ -0,0 +1,423 @@ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NnmeUsernameRoleEmailActions
Name family@name123adminname@name.com + + +
Name family@name123adminname@name.com + + +
Name family@name123adminname@name.com + + +
Name family@name123adminname@name.com + + +
Name family@name123adminname@name.com + + +
Name family@name123adminname@name.com + + +
Name family@name123adminname@name.com + + +
Name family@name123adminname@name.com + + +
Name family@name123adminname@name.com + + +
Name family@name123adminname@name.com + + +
Name family@name123adminname@name.com + + +
Name family@name123adminname@name.com + + +
Name family@name123adminname@name.com + + +
Name family@name123adminname@name.com + + +
Name family@name123adminname@name.com + + +
Name family@name123adminname@name.com + + +
Name family@name123adminname@name.com + + +
Name family@name123adminname@name.com + + +
Name family@name123adminname@name.com + + +
Name family@name123adminname@name.com + + +
+
diff --git a/src/app/components/dashboard/users/users.component.scss b/src/app/components/dashboard/users/users.component.scss new file mode 100644 index 0000000..cad78cb --- /dev/null +++ b/src/app/components/dashboard/users/users.component.scss @@ -0,0 +1,11 @@ +#user-nav { + align-items: center; +} + +hr { + block-size: 1px; +} + +#user-container { + padding: 0; +} \ No newline at end of file diff --git a/src/app/components/dashboard/users/users.component.spec.ts b/src/app/components/dashboard/users/users.component.spec.ts new file mode 100644 index 0000000..241dbac --- /dev/null +++ b/src/app/components/dashboard/users/users.component.spec.ts @@ -0,0 +1,23 @@ +import { ComponentFixture, TestBed } from '@angular/core/testing'; + +import { UsersComponent } from './users.component'; + +describe('UsersComponent', () => { + let component: UsersComponent; + let fixture: ComponentFixture; + + beforeEach(async () => { + await TestBed.configureTestingModule({ + imports: [UsersComponent] + }) + .compileComponents(); + + fixture = TestBed.createComponent(UsersComponent); + component = fixture.componentInstance; + fixture.detectChanges(); + }); + + it('should create', () => { + expect(component).toBeTruthy(); + }); +}); diff --git a/src/app/components/dashboard/users/users.component.ts b/src/app/components/dashboard/users/users.component.ts new file mode 100644 index 0000000..fa5f184 --- /dev/null +++ b/src/app/components/dashboard/users/users.component.ts @@ -0,0 +1,17 @@ +import { ChangeDetectionStrategy, Component } from '@angular/core'; +import { RouterLink } from '@angular/router'; +import { TuiItem } from '@taiga-ui/cdk'; +import { TuiButton, TuiIcon, TuiSurface, TuiTitle } from '@taiga-ui/core'; +import { TuiBadge, TuiBadgeNotification, TuiBreadcrumbs, TuiFade } from '@taiga-ui/kit'; +import { TuiCardLarge, TuiHeader } from '@taiga-ui/layout'; + +@Component({ + selector: 'app-users', + standalone: true, + imports: [TuiIcon, TuiFade, TuiButton, TuiCardLarge, TuiSurface, TuiHeader, TuiTitle, TuiBadgeNotification, TuiBadge, TuiItem, + TuiBreadcrumbs, RouterLink], + templateUrl: './users.component.html', + styleUrl: './users.component.scss', + changeDetection: ChangeDetectionStrategy.OnPush, +}) +export class UsersComponent { } From c7d9bdac1d33b81543d0900b73af4b8d9e77f14c Mon Sep 17 00:00:00 2001 From: Mr MRF <79112136+Mr-MRF-Dev@users.noreply.github.com> Date: Sat, 17 Aug 2024 01:57:15 +0330 Subject: [PATCH 003/142] refactor(Users): refactor table styles and dynamic render --- .../dashboard/users/users.component.html | 410 ++---------------- .../dashboard/users/users.component.scss | 28 +- .../dashboard/users/users.component.ts | 37 +- src/app/pipes/role-appearance.pipe.spec.ts | 23 + src/app/pipes/role-appearance.pipe.ts | 22 + 5 files changed, 125 insertions(+), 395 deletions(-) create mode 100644 src/app/pipes/role-appearance.pipe.spec.ts create mode 100644 src/app/pipes/role-appearance.pipe.ts diff --git a/src/app/components/dashboard/users/users.component.html b/src/app/components/dashboard/users/users.component.html index f36896a..a06cdaa 100644 --- a/src/app/components/dashboard/users/users.component.html +++ b/src/app/components/dashboard/users/users.component.html @@ -1,4 +1,4 @@ -
+
+ - - - + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + @for (i of users; track i.username) { - - - - - - - - - - - - + - - - - - - - - - - - - - - - - - - - - - + }
Nnme
Nnme Username Role EmailActions
Name family@name123adminname@name.com - - -
Name family@name123adminname@name.com - - -
Name family@name123adminname@name.com - - -
Name family@name123adminname@name.com - - -
Name family@name123adminname@name.com - - -
Name family@name123adminname@name.com - - -
Name family@name123adminname@name.com - - -
Name family@name123adminname@name.com - - -
Name family@name123adminname@name.com - - -
Name family@name123adminname@name.com - - -
Name family@name123adminname@name.com - - -
Name family@name123adminname@name.com - - -
Name family@name123adminname@name.com - - -
Name family@name123adminname@name.com - - -
Name family@name123adminname@name.com - - - Actions
Name family@name123adminname@name.com - - + + {{ i.name + " " + i.last_name | titlecase }}
Name family@name123adminname@name.com - - + - delete user - + {{ r }} +
Name family@name123adminname@name.com - - + + {{ i.email }}
Name family@name123adminname@name.com - - -
Name family@name123adminname@name.com + + @@ -418,6 +57,7 @@

diff --git a/src/app/components/dashboard/users/users.component.scss b/src/app/components/dashboard/users/users.component.scss index cad78cb..7b61db1 100644 --- a/src/app/components/dashboard/users/users.component.scss +++ b/src/app/components/dashboard/users/users.component.scss @@ -1,11 +1,25 @@ -#user-nav { - align-items: center; -} - hr { - block-size: 1px; + block-size: 1px; } #user-container { - padding: 0; -} \ No newline at end of file + padding: 0; + margin: 2.5rem; + border: 1px solid #a5a5a5; + + #user-nav { + align-items: center; + } + + table { + #table_header { + background-color: #ebebeb; + border-block-end: 1px solid #c5c5c5; + + th { + color: black; + font-weight: bold; + } + } + } +} diff --git a/src/app/components/dashboard/users/users.component.ts b/src/app/components/dashboard/users/users.component.ts index fa5f184..b8b4e50 100644 --- a/src/app/components/dashboard/users/users.component.ts +++ b/src/app/components/dashboard/users/users.component.ts @@ -1,17 +1,48 @@ +import { NgForOf, TitleCasePipe } from '@angular/common'; import { ChangeDetectionStrategy, Component } from '@angular/core'; import { RouterLink } from '@angular/router'; import { TuiItem } from '@taiga-ui/cdk'; import { TuiButton, TuiIcon, TuiSurface, TuiTitle } from '@taiga-ui/core'; -import { TuiBadge, TuiBadgeNotification, TuiBreadcrumbs, TuiFade } from '@taiga-ui/kit'; +import { TuiBadge, TuiBadgeNotification, TuiBreadcrumbs, TuiChip, TuiFade } from '@taiga-ui/kit'; import { TuiCardLarge, TuiHeader } from '@taiga-ui/layout'; +import { RoleAppearancePipe } from '../../../pipes/role-appearance.pipe'; + +interface Users { + name: string; + last_name: string; + username: string; + email: string; + roles: string[]; +} @Component({ selector: 'app-users', standalone: true, imports: [TuiIcon, TuiFade, TuiButton, TuiCardLarge, TuiSurface, TuiHeader, TuiTitle, TuiBadgeNotification, TuiBadge, TuiItem, - TuiBreadcrumbs, RouterLink], + TuiBreadcrumbs, RouterLink, TitleCasePipe, RoleAppearancePipe, TuiChip, NgForOf], templateUrl: './users.component.html', styleUrl: './users.component.scss', changeDetection: ChangeDetectionStrategy.OnPush, }) -export class UsersComponent { } +export class UsersComponent { + + protected users: Users[] = [{ + name: "name", + last_name: "family", + username: "name123", + email: "123@123.com", + roles: ["Admin", "Developer"] + }, + { + name: "name", + last_name: "family", + username: "name123", + email: "123@123.com", + roles: ["Admin", "Developer"] + } + ] + + + + +} diff --git a/src/app/pipes/role-appearance.pipe.spec.ts b/src/app/pipes/role-appearance.pipe.spec.ts new file mode 100644 index 0000000..7d8e81f --- /dev/null +++ b/src/app/pipes/role-appearance.pipe.spec.ts @@ -0,0 +1,23 @@ +import { RoleAppearancePipe } from './role-appearance.pipe'; + +describe('RoleAppearancePipe Tests', () => { + it('create an instance', () => { + const pipe = new RoleAppearancePipe(); + expect(pipe).toBeTruthy(); + }); + + it("return 'success' when value is 'Admin'", () => { + const pipe = new RoleAppearancePipe(); + expect(pipe.transform('Admin')).toBe('success'); + }); + + it("return 'warning' when value is 'Developer'", () => { + const pipe = new RoleAppearancePipe(); + expect(pipe.transform('Developer')).toBe('warning'); + }); + + it("return 'neutral' by default case", () => { + const pipe = new RoleAppearancePipe(); + expect(pipe.transform('123')).toBe('neutral'); + }); +}); diff --git a/src/app/pipes/role-appearance.pipe.ts b/src/app/pipes/role-appearance.pipe.ts new file mode 100644 index 0000000..a14ed9a --- /dev/null +++ b/src/app/pipes/role-appearance.pipe.ts @@ -0,0 +1,22 @@ +import { Pipe, PipeTransform } from '@angular/core'; + +// this pipe is used to change the appearance +// of the role badge based on the role +@Pipe({ + name: 'roleAppearance', + standalone: true +}) +export class RoleAppearancePipe implements PipeTransform { + transform(value: string): string { + + if (value.toLowerCase() === 'admin') { + return 'success'; + } + + else if (value.toLowerCase() === 'developer') { + return 'warning'; + } + + return "neutral"; + } +} From 039d32c2fb9478d927bb8b47796ad3e671d60bec Mon Sep 17 00:00:00 2001 From: Mr MRF <79112136+Mr-MRF-Dev@users.noreply.github.com> Date: Sun, 18 Aug 2024 00:43:14 +0330 Subject: [PATCH 004/142] feat(Pipe): create avatar pipe get a string a return two letters of string --- .../dashboard/users/users.component.scss | 5 ---- src/app/pipes/avatar-text.pipe.spec.ts | 24 +++++++++++++++++++ src/app/pipes/avatar-text.pipe.ts | 22 +++++++++++++++++ 3 files changed, 46 insertions(+), 5 deletions(-) create mode 100644 src/app/pipes/avatar-text.pipe.spec.ts create mode 100644 src/app/pipes/avatar-text.pipe.ts diff --git a/src/app/components/dashboard/users/users.component.scss b/src/app/components/dashboard/users/users.component.scss index 7b61db1..70bb93f 100644 --- a/src/app/components/dashboard/users/users.component.scss +++ b/src/app/components/dashboard/users/users.component.scss @@ -1,10 +1,5 @@ -hr { - block-size: 1px; -} - #user-container { padding: 0; - margin: 2.5rem; border: 1px solid #a5a5a5; #user-nav { diff --git a/src/app/pipes/avatar-text.pipe.spec.ts b/src/app/pipes/avatar-text.pipe.spec.ts new file mode 100644 index 0000000..dfe7fad --- /dev/null +++ b/src/app/pipes/avatar-text.pipe.spec.ts @@ -0,0 +1,24 @@ +import { AvatarTextPipe } from './avatar-text.pipe'; + +describe('AvatarTextPipe', () => { + it('create an instance', () => { + const pipe = new AvatarTextPipe(); + expect(pipe).toBeTruthy(); + }); + + it('should return first letter of each word', () => { + const pipe = new AvatarTextPipe(); + expect(pipe.transform('name family')).toBe('NF'); + }); + + it('should return first 2 letter of one word', () => { + const pipe = new AvatarTextPipe(); + expect(pipe.transform('name')).toBe('NA'); + }); + + it('should return default value', () => { + const pipe = new AvatarTextPipe(); + expect(pipe.transform('')).toBe('@tui.user'); + }); + +}); diff --git a/src/app/pipes/avatar-text.pipe.ts b/src/app/pipes/avatar-text.pipe.ts new file mode 100644 index 0000000..e01ab6a --- /dev/null +++ b/src/app/pipes/avatar-text.pipe.ts @@ -0,0 +1,22 @@ +import { Pipe, PipeTransform } from '@angular/core'; + +@Pipe({ + name: 'avatarText', + standalone: true +}) +export class AvatarTextPipe implements PipeTransform { + + transform(value: string): string { + + const s = value.split(" "); + if (s.length >= 1) { + if (s.length >= 2) { + return s[0][0].toUpperCase() + s[1][0].toUpperCase(); + } + return s[0][0].toUpperCase() + s[0][1].toUpperCase(); + } + + return "@tui.user"; + } + +} From b87c46ce3a5497cac48dad25cd809c484cf14f00 Mon Sep 17 00:00:00 2001 From: Mr MRF <79112136+Mr-MRF-Dev@users.noreply.github.com> Date: Sun, 18 Aug 2024 00:44:11 +0330 Subject: [PATCH 005/142] feat(Profile): create profile component & set basic style --- public/user-bg.jpeg | Bin 0 -> 383369 bytes src/app/app.routes.ts | 4 +++ .../dashboard/dashboard.component.html | 9 +++++-- .../dashboard/dashboard.component.scss | 1 + .../dashboard/profile/profile.component.html | 16 ++++++++++++ .../dashboard/profile/profile.component.scss | 24 ++++++++++++++++++ .../profile/profile.component.spec.ts | 23 +++++++++++++++++ .../dashboard/profile/profile.component.ts | 18 +++++++++++++ 8 files changed, 93 insertions(+), 2 deletions(-) create mode 100644 public/user-bg.jpeg create mode 100644 src/app/components/dashboard/profile/profile.component.html create mode 100644 src/app/components/dashboard/profile/profile.component.scss create mode 100644 src/app/components/dashboard/profile/profile.component.spec.ts create mode 100644 src/app/components/dashboard/profile/profile.component.ts diff --git a/public/user-bg.jpeg b/public/user-bg.jpeg new file mode 100644 index 0000000000000000000000000000000000000000..abeb98aa1aab4670055c93b53a0f699f4bb642bd GIT binary patch literal 383369 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

!aEG9^Rv+#B6Dy}Wzo+WOcd~gk*J-)B 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≨Eu0-r0go_!&Ni6ETxQm!lBKVhy~!l7 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 - @@ -55,7 +60,7 @@


- -
- -
-
+
+ +
diff --git a/src/app/components/dashboard/dashboard.component.scss b/src/app/components/dashboard/dashboard.component.scss index 55586ad..a712db2 100644 --- a/src/app/components/dashboard/dashboard.component.scss +++ b/src/app/components/dashboard/dashboard.component.scss @@ -8,11 +8,18 @@ } #main { + height: 100%; + width: 100%; + padding: 0; margin: 0; overflow-y: auto; } +#main::-webkit-scrollbar { + width: 0; +} + .aside { background-color: var(--tui-background-accent-1); } diff --git a/src/app/components/dashboard/import/import.component.html b/src/app/components/dashboard/import/import.component.html index 4cc7ebc..b998595 100644 --- a/src/app/components/dashboard/import/import.component.html +++ b/src/app/components/dashboard/import/import.component.html @@ -1,109 +1,116 @@
-
+
-
-
- } - - + } + + +
main
diff --git a/src/app/components/dashboard/import/import.component.scss b/src/app/components/dashboard/import/import.component.scss index 2424d17..7a9a74e 100644 --- a/src/app/components/dashboard/import/import.component.scss +++ b/src/app/components/dashboard/import/import.component.scss @@ -1,10 +1,15 @@ #import-card { + height: 100%; padding: 0; tui-expand { margin-inline-start: 3rem; } + #import-aside { + overflow-y: auto; + } + li::marker { color: green; } diff --git a/src/app/components/dashboard/import/import.component.ts b/src/app/components/dashboard/import/import.component.ts index dd70f0f..6178bcc 100644 --- a/src/app/components/dashboard/import/import.component.ts +++ b/src/app/components/dashboard/import/import.component.ts @@ -2,7 +2,7 @@ import { AsyncPipe, KeyValuePipe, NgForOf, NgIf } from '@angular/common'; import { ChangeDetectionStrategy, Component, OnInit } from '@angular/core'; import { FormControl, FormsModule, ReactiveFormsModule } from '@angular/forms'; import { TuiActiveZone, tuiArrayRemove, TuiObscured } from '@taiga-ui/cdk'; -import { TuiButton, TuiDropdown, TuiExpand, TuiHint, TuiSurface } from '@taiga-ui/core'; +import { TuiButton, TuiDropdown, TuiExpand, TuiHint, TuiScrollbar, TuiSurface } from '@taiga-ui/core'; import { TuiChevron, TuiElasticContainer, TuiFade, TuiFileLike, TuiFiles } from '@taiga-ui/kit'; import { TuiInputModule } from '@taiga-ui/legacy'; import { TuiBlockStatus, TuiCardLarge } from '@taiga-ui/layout'; @@ -38,6 +38,7 @@ interface aside_item { TuiHint, TuiDropdown, TuiBlockStatus, + TuiScrollbar, KeyValuePipe], templateUrl: './import.component.html', styleUrl: './import.component.scss', @@ -56,15 +57,18 @@ export class ImportComponent implements OnInit { ngOnInit() { this.file_type = file_type; - this.items = [ - { - expanded: false, - title: "file sdsdd dsdsds here", - value: { aaaa: "ffff", rrr: "wwww" }, - dropdown: false, - }, - - ]; + this.items = []; + + for (let i = 0; i < 10; i++) { + this.items.push( + { + expanded: false, + title: "file sdsdd dsdsds here", + value: { aaaa: "ffff", rrr: "wwww" }, + dropdown: false, + }); + } + } protected isEmptyItems() { diff --git a/src/app/components/dashboard/profile/profile.component.html b/src/app/components/dashboard/profile/profile.component.html index 996af70..90e8297 100644 --- a/src/app/components/dashboard/profile/profile.component.html +++ b/src/app/components/dashboard/profile/profile.component.html @@ -82,7 +82,7 @@

size="m" (click)="editHandler()" > - {{ form.enabled ? 'Save' : 'Edit' }} + {{ form.enabled ? "Save" : "Edit" }} diff --git a/src/app/components/dashboard/profile/profile.component.scss b/src/app/components/dashboard/profile/profile.component.scss index 5be5f7c..ec612f7 100644 --- a/src/app/components/dashboard/profile/profile.component.scss +++ b/src/app/components/dashboard/profile/profile.component.scss @@ -1,5 +1,5 @@ #profile-card { - padding: 0; + padding: 0; margin: 2.5rem; border: 1px solid #a5a5a5; @@ -19,7 +19,7 @@ transform: translateY(calc(-1 * var(--t-gap))); margin-inline: 2rem; - #avatar { + #avatar { transform: translateY(calc(-50%)); border: 1px solid #858585; background-color: var(--tui-background-base-alt); diff --git a/src/app/components/dashboard/profile/profile.component.ts b/src/app/components/dashboard/profile/profile.component.ts index 3517db8..bf688e2 100644 --- a/src/app/components/dashboard/profile/profile.component.ts +++ b/src/app/components/dashboard/profile/profile.component.ts @@ -88,7 +88,7 @@ export class ProfileComponent implements OnInit { ]), }); - constructor(private authService: AuthService, private router: Router) {} + constructor(private authService: AuthService, private router: Router) { } ngOnInit(): void { this.form.disable(); } From ad4175abbb6200fb11a33e2057d025a97ae6b734 Mon Sep 17 00:00:00 2001 From: Mr MRF <79112136+Mr-MRF-Dev@users.noreply.github.com> Date: Sun, 25 Aug 2024 23:46:13 +0330 Subject: [PATCH 054/142] refactor(import): change some styles --- .../components/dashboard/import/import.component.html | 10 +++++----- .../components/dashboard/import/import.component.scss | 9 +-------- .../components/dashboard/import/import.component.ts | 2 +- 3 files changed, 7 insertions(+), 14 deletions(-) diff --git a/src/app/components/dashboard/import/import.component.html b/src/app/components/dashboard/import/import.component.html index b998595..036f1fa 100644 --- a/src/app/components/dashboard/import/import.component.html +++ b/src/app/components/dashboard/import/import.component.html @@ -2,7 +2,7 @@
-
+

tuiIconButton class="tui-space_right-2" [tuiChevron]="item.expanded" - (click)="item.expanded = !item.expanded" > Expand @@ -97,12 +96,13 @@
Not found
-
    +
    • - {{ i.key }}: {{ i.value }} +

      {{ i.key }}

      +

      {{ i.value }}

    diff --git a/src/app/components/dashboard/import/import.component.scss b/src/app/components/dashboard/import/import.component.scss index 7a9a74e..7d7ccb7 100644 --- a/src/app/components/dashboard/import/import.component.scss +++ b/src/app/components/dashboard/import/import.component.scss @@ -2,15 +2,8 @@ height: 100%; padding: 0; - tui-expand { - margin-inline-start: 3rem; - } - #import-aside { + height: 100%; overflow-y: auto; } - - li::marker { - color: green; - } } diff --git a/src/app/components/dashboard/import/import.component.ts b/src/app/components/dashboard/import/import.component.ts index 6178bcc..14c0d7b 100644 --- a/src/app/components/dashboard/import/import.component.ts +++ b/src/app/components/dashboard/import/import.component.ts @@ -64,7 +64,7 @@ export class ImportComponent implements OnInit { { expanded: false, title: "file sdsdd dsdsds here", - value: { aaaa: "ffff", rrr: "wwww" }, + value: { aaaaaaaaaaaaaaaaa: "faaaaaaaaaaaaaazzzzzzzfff", rrr: "wwww" }, dropdown: false, }); } From b27d36470a32223ebfcafa8714aed8f00fa58d69 Mon Sep 17 00:00:00 2001 From: Mr MRF <79112136+Mr-MRF-Dev@users.noreply.github.com> Date: Mon, 26 Aug 2024 00:49:51 +0330 Subject: [PATCH 055/142] feat(import): Added main section status --- public/graph-bg.png | Bin 0 -> 106047 bytes .../dashboard/import/import.component.html | 23 +++++++++++++++++- .../dashboard/import/import.component.scss | 5 ++++ .../dashboard/import/import.component.ts | 3 ++- 4 files changed, 29 insertions(+), 2 deletions(-) create mode 100644 public/graph-bg.png diff --git a/public/graph-bg.png b/public/graph-bg.png new file mode 100644 index 0000000000000000000000000000000000000000..acc342fcb1226a45dfab7070f827461499cf8f6f GIT binary patch literal 106047 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 B8h!u( literal 0 HcmV?d00001 diff --git a/src/app/components/dashboard/import/import.component.html b/src/app/components/dashboard/import/import.component.html index 036f1fa..ada8840 100644 --- a/src/app/components/dashboard/import/import.component.html +++ b/src/app/components/dashboard/import/import.component.html @@ -113,6 +113,27 @@
    Not found
    -
    main
    +
    +
    +

    Some Text or ...

    + +
    + + + graph img + +
    Start Sketching a Model
    + + select source and target file to start sketching a model +
    +
    diff --git a/src/app/components/dashboard/import/import.component.scss b/src/app/components/dashboard/import/import.component.scss index 7d7ccb7..fe9d05a 100644 --- a/src/app/components/dashboard/import/import.component.scss +++ b/src/app/components/dashboard/import/import.component.scss @@ -7,3 +7,8 @@ overflow-y: auto; } } + +.image { + width: 15rem; + height: 15rem; +} diff --git a/src/app/components/dashboard/import/import.component.ts b/src/app/components/dashboard/import/import.component.ts index 14c0d7b..22d79bd 100644 --- a/src/app/components/dashboard/import/import.component.ts +++ b/src/app/components/dashboard/import/import.component.ts @@ -47,7 +47,7 @@ interface aside_item { export class ImportComponent implements OnInit { protected items!: aside_item[]; protected file_type!: string; - + protected empty_graph !: boolean; protected readonly control = new FormControl(null); protected readonly failedFiles$ = new Subject(); protected readonly loadingFiles$ = new Subject(); @@ -56,6 +56,7 @@ export class ImportComponent implements OnInit { ); ngOnInit() { + this.empty_graph = true; this.file_type = file_type; this.items = []; From 7efc1cd200f7206575af27010120a4396924778c Mon Sep 17 00:00:00 2001 From: Mr MRF <79112136+Mr-MRF-Dev@users.noreply.github.com> Date: Mon, 26 Aug 2024 02:01:51 +0330 Subject: [PATCH 056/142] test(import): Added Some tests --- .../dashboard/import/import.component.html | 5 ++++- .../dashboard/import/import.component.spec.ts | 22 +++++++++++++++++-- src/app/services/admin/admin.service.spec.ts | 6 ++--- 3 files changed, 27 insertions(+), 6 deletions(-) diff --git a/src/app/components/dashboard/import/import.component.html b/src/app/components/dashboard/import/import.component.html index ada8840..1cced3f 100644 --- a/src/app/components/dashboard/import/import.component.html +++ b/src/app/components/dashboard/import/import.component.html @@ -113,7 +113,10 @@
    Not found
    -
    +

    Some Text or ...

    -

    - {{ item.title }} -

    + Expand +

    + {{ item.title }} +

    + + + - - - -
    - -
      -
    • -

      {{ i.key }}

      -

      {{ i.value }}

      -
    • -
    -
    + - } - -
    - + +
      +
    • +

      + {{ i.key }} +

      +

      + {{ i.value }} +

      +
    • +
    +
    + + } + +
    -
    -

    Some Text or ...

    +
    +

    Property graph model

    @@ -134,8 +148,7 @@
    Not found
    graph img
    Start Sketching a Model
    - - select source and target file to start sketching a model + Select source and target to start sketching a model
    diff --git a/src/app/components/dashboard/import/import.component.scss b/src/app/components/dashboard/import/import.component.scss index fe9d05a..33f4c2a 100644 --- a/src/app/components/dashboard/import/import.component.scss +++ b/src/app/components/dashboard/import/import.component.scss @@ -1,10 +1,11 @@ #import-card { height: 100%; padding: 0; + // font: var(tui-text_body-s); #import-aside { - height: 100%; - overflow-y: auto; + overflow-y: hidden; + width: 30rem; } } @@ -12,3 +13,19 @@ width: 15rem; height: 15rem; } + +div:has(> #import-aside) { + height: 100%; +} + +.key::before { + content: ''; + display: inline-block; + width: 6px; + height: 6px; + margin-right: 9px; + -moz-border-radius: 7.5px; + -webkit-border-radius: 7.5px; + border-radius: 7.5px; + background-color: #69b6d5; +} diff --git a/src/app/components/dashboard/import/import.component.ts b/src/app/components/dashboard/import/import.component.ts index 22d79bd..5f48d0b 100644 --- a/src/app/components/dashboard/import/import.component.ts +++ b/src/app/components/dashboard/import/import.component.ts @@ -2,24 +2,38 @@ import { AsyncPipe, KeyValuePipe, NgForOf, NgIf } from '@angular/common'; import { ChangeDetectionStrategy, Component, OnInit } from '@angular/core'; import { FormControl, FormsModule, ReactiveFormsModule } from '@angular/forms'; import { TuiActiveZone, tuiArrayRemove, TuiObscured } from '@taiga-ui/cdk'; -import { TuiButton, TuiDropdown, TuiExpand, TuiHint, TuiScrollbar, TuiSurface } from '@taiga-ui/core'; -import { TuiChevron, TuiElasticContainer, TuiFade, TuiFileLike, TuiFiles } from '@taiga-ui/kit'; +import { + TuiButton, + TuiDropdown, + TuiExpand, + TuiHint, + TuiScrollbar, + TuiSurface, +} from '@taiga-ui/core'; +import { + TuiChevron, + TuiElasticContainer, + TuiFade, + TuiFileLike, + TuiFiles, +} from '@taiga-ui/kit'; import { TuiInputModule } from '@taiga-ui/legacy'; import { TuiBlockStatus, TuiCardLarge } from '@taiga-ui/layout'; import { finalize, map, Observable, of, Subject, switchMap, timer } from 'rxjs'; import { file_type } from '../../../models/file'; interface aside_item { - expanded: boolean, - title: string, - value: {}, - dropdown: boolean, + expanded: boolean; + title: string; + value: {}; + dropdown: boolean; } @Component({ selector: 'app-import', standalone: true, - imports: [TuiCardLarge, + imports: [ + TuiCardLarge, TuiSurface, TuiButton, TuiElasticContainer, @@ -39,7 +53,8 @@ interface aside_item { TuiDropdown, TuiBlockStatus, TuiScrollbar, - KeyValuePipe], + KeyValuePipe, + ], templateUrl: './import.component.html', styleUrl: './import.component.scss', changeDetection: ChangeDetectionStrategy.OnPush, @@ -47,12 +62,12 @@ interface aside_item { export class ImportComponent implements OnInit { protected items!: aside_item[]; protected file_type!: string; - protected empty_graph !: boolean; + protected empty_graph!: boolean; protected readonly control = new FormControl(null); protected readonly failedFiles$ = new Subject(); protected readonly loadingFiles$ = new Subject(); protected readonly loadedFiles$ = this.control.valueChanges.pipe( - switchMap((file) => this.processFile(file)), + switchMap((file) => this.processFile(file)) ); ngOnInit() { @@ -60,16 +75,37 @@ export class ImportComponent implements OnInit { this.file_type = file_type; this.items = []; - for (let i = 0; i < 10; i++) { - this.items.push( - { - expanded: false, - title: "file sdsdd dsdsds here", - value: { aaaaaaaaaaaaaaaaa: "faaaaaaaaaaaaaazzzzzzzfff", rrr: "wwww" }, - dropdown: false, - }); - } - + this.items.push({ + expanded: false, + title: 'account.csv', + value: { + accountId: '6534454617', + cardId: '6104335000000190', + iban: 'IR120778801496000000198', + accountType: 'Savings', + branchTelephone: '55638667', + branchAddress: 'Tehran - Khayam Street - Above Golbandak Intersection', + branchName: 'Golbandak', + ownerFirstName: 'Afsar', + ownerLastName: 'Tabatabaei', + ownerId: '1227114110', + }, + dropdown: false, + }); + + this.items.push({ + expanded: false, + title: 'transaction.csv', + value: { + sourceAccount: '6534454617', + destinationAccount: '6039548046', + amount: '500,000,000', + date: '2020/07/13', + transactionId: '153348811341', + type: 'Paya', + }, + dropdown: false, + }); } protected isEmptyItems() { @@ -80,7 +116,9 @@ export class ImportComponent implements OnInit { this.control.setValue(null); } - protected processFile(file: TuiFileLike | null): Observable { + protected processFile( + file: TuiFileLike | null + ): Observable { this.failedFiles$.next(null); if (this.control.invalid || !file) { @@ -93,7 +131,12 @@ export class ImportComponent implements OnInit { return timer(1000).pipe( map(() => { if (Math.random() > 0.5) { - this.items.push({ expanded: false, dropdown: false, title: "new file name here", value: { as: "qqwqw", zx: "zxx" } }); + this.items.push({ + expanded: false, + dropdown: false, + title: 'new file name here', + value: { as: 'qqwqw', zx: 'zxx' }, + }); return file; } @@ -101,11 +144,10 @@ export class ImportComponent implements OnInit { return null; }), - finalize(() => this.loadingFiles$.next(null)), + finalize(() => this.loadingFiles$.next(null)) ); } - protected onObscured(obscured: boolean, index: number): void { if (obscured) { this.items[index].dropdown = false; From e124432ad426a6822746c546d72eb0949df309cb Mon Sep 17 00:00:00 2001 From: Mr MRF <79112136+Mr-MRF-Dev@users.noreply.github.com> Date: Mon, 26 Aug 2024 13:51:37 +0330 Subject: [PATCH 058/142] fix: fix import edit user component --- src/app/components/dashboard/users/users.component.ts | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/app/components/dashboard/users/users.component.ts b/src/app/components/dashboard/users/users.component.ts index 61f9c5c..8667854 100644 --- a/src/app/components/dashboard/users/users.component.ts +++ b/src/app/components/dashboard/users/users.component.ts @@ -32,6 +32,7 @@ import { PolymorpheusComponent } from '@taiga-ui/polymorpheus'; import { RegisterComponent } from './register/register.component'; import { AdminUserService } from '../../../services/admin/admin.service'; import { User } from '../../../models/user'; +import { EditUserComponent } from './edit-user/edit-user.component'; @Component({ selector: 'app-users', @@ -70,7 +71,7 @@ export class UsersComponent implements OnInit { private readonly rejDialog = this.dialogs.open( new PolymorpheusComponent(RegisterComponent, this.injector) ); - + private readonly edit_user_dialog = this.dialogs.open( new PolymorpheusComponent(EditUserComponent, this.injector) ); @@ -90,7 +91,7 @@ export class UsersComponent implements OnInit { }, }); } - + protected showEditUserDialog(): void { this.edit_user_dialog.subscribe({ complete: () => { From bd39d6ebc8f15c12c5e19892362603e7471bc2d1 Mon Sep 17 00:00:00 2001 From: Morteza Ghandchi Date: Mon, 26 Aug 2024 13:53:50 +0330 Subject: [PATCH 059/142] feat(style): add divide style --- src/app/components/dashboard/import/import.component.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/app/components/dashboard/import/import.component.html b/src/app/components/dashboard/import/import.component.html index 1e3869e..f1881ae 100644 --- a/src/app/components/dashboard/import/import.component.html +++ b/src/app/components/dashboard/import/import.component.html @@ -130,7 +130,7 @@
    No file yet
    class="h-full w-full md:w-3/4 flex flex-col bg-[#f1f2f4]" >

    Property graph model

    - +
    - diff --git a/src/app/components/dashboard/users/register/register.component.scss b/src/app/components/dashboard/users/register/register.component.scss index fb97b24..e69de29 100644 --- a/src/app/components/dashboard/users/register/register.component.scss +++ b/src/app/components/dashboard/users/register/register.component.scss @@ -1,3 +0,0 @@ -.tui-island_text-align_right { - margin-top: 1.25rem; -} diff --git a/src/app/components/dashboard/users/register/register.component.ts b/src/app/components/dashboard/users/register/register.component.ts index 138e487..acc666e 100644 --- a/src/app/components/dashboard/users/register/register.component.ts +++ b/src/app/components/dashboard/users/register/register.component.ts @@ -6,7 +6,7 @@ import { ReactiveFormsModule, Validators, } from '@angular/forms'; -import { TuiButton, TuiDialogContext, TuiLink } from '@taiga-ui/core'; +import { TuiButton, TuiDialogContext, TuiLink, TuiTitle } from '@taiga-ui/core'; import { TuiCheckbox } from '@taiga-ui/kit'; import { TuiInputDateModule, @@ -34,6 +34,7 @@ import { UserBody } from '../../../../models/api/userBody'; TuiInputModule, TuiInputPasswordModule, TuiLink, + TuiTitle, TuiButton, TuiCheckbox, TuiInputDateModule, From c94cca6be2119282c6e88cdf3a24eef4b9e73905 Mon Sep 17 00:00:00 2001 From: Morteza Ghandchi Date: Mon, 26 Aug 2024 15:27:28 +0330 Subject: [PATCH 061/142] feat(style): change circle menu styles --- .../dashboard/graph/graph.component.ts | 26 +++++++++++-------- 1 file changed, 15 insertions(+), 11 deletions(-) diff --git a/src/app/components/dashboard/graph/graph.component.ts b/src/app/components/dashboard/graph/graph.component.ts index f8edad5..3f79574 100644 --- a/src/app/components/dashboard/graph/graph.component.ts +++ b/src/app/components/dashboard/graph/graph.component.ts @@ -164,6 +164,7 @@ export class GraphComponent implements AfterViewInit { 'line-height': 1.2, color: '#202020', shape: 'ellipse', + 'overlay-opacity': 0, }, }, { @@ -186,7 +187,6 @@ export class GraphComponent implements AfterViewInit { 'source-distance-from-node': 5, 'target-distance-from-node': 5, 'text-background-shape': 'roundrectangle', - opacity: 50, 'font-family': 'cursive', 'font-weight': 'lighter', color: '#303030', @@ -242,18 +242,17 @@ export class GraphComponent implements AfterViewInit { // The default values of each option are outlined below: const defaults = { - menuRadius: function (ele: Singular) { - console.log(ele); - return 100; - }, // Updated to use the more generic Singular type selector: 'node', // Elements matching this Cytoscape.js selector will trigger cxtmenus commands: [ { fillColor: 'rgba(255, 111, 97, 0.7)', // Optional: custom background color for the item - content: 'Expand', // HTML/text content to be displayed in the menu + content: `
    + +
    `, // HTML/text content to be displayed in the menu contentStyle: { 'font-family': 'Roboto, Arial', 'font-size': '10', + 'text-align': 'center', }, // CSS key:value pairs to set the command's CSS in JS if you want select: function (ele: Singular) { // A function to execute when the command is selected @@ -267,7 +266,9 @@ export class GraphComponent implements AfterViewInit { }, { fillColor: 'rgba(107, 91, 149, 0.7)', // Optional: custom background color for the item - content: 'Details', // HTML/text content to be displayed in the menu + content: `
    + +
    `, // HTML/text content to be displayed in the menu contentStyle: { 'font-family': 'Roboto, Arial', 'font-size': '10' }, // CSS key:value pairs to set the command's CSS in JS if you want select: function (ele: Singular) { // A function to execute when the command is selected @@ -281,7 +282,9 @@ export class GraphComponent implements AfterViewInit { }, { fillColor: 'rgba(136, 176, 75, 0.7)', // Optional: custom background color for the item - content: 'Settings', // HTML/text content to be displayed in the menu + content: `
    + +
    `, // HTML/text content to be displayed in the menu contentStyle: { 'font-family': 'Roboto, Arial', 'font-size': '10', @@ -297,12 +300,13 @@ export class GraphComponent implements AfterViewInit { enabled: true, // Whether the command is selectable }, ], + menuRadius: 60, fillColor: 'rgba(0, 0, 0, 0.75)', // The background color of the menu activeFillColor: 'rgba(1, 105, 217, 0.75)', // The color used to indicate the selected command - activePadding: 18, // Additional size in pixels for the active command - indicatorSize: 28, // The size in pixels of the pointer to the active command + activePadding: 12, // Additional size in pixels for the active command + indicatorSize: 16, // The size in pixels of the pointer to the active command separatorWidth: 4, // The empty spacing in pixels between successive commands - spotlightPadding: 8, // Extra spacing in pixels between the element and the spotlight + spotlightPadding: 10, // Extra spacing in pixels between the element and the spotlight adaptativeNodeSpotlightRadius: false, // Specify whether the spotlight radius should adapt to the node size minSpotlightRadius: 24, // The minimum radius in pixels of the spotlight maxSpotlightRadius: 38, // The maximum radius in pixels of the spotlight From 579624100224bd77235fd0501813c710c1a2c176 Mon Sep 17 00:00:00 2001 From: Mr MRF <79112136+Mr-MRF-Dev@users.noreply.github.com> Date: Mon, 26 Aug 2024 15:31:05 +0330 Subject: [PATCH 062/142] feat: create admin user edit service --- .../user/admin-edit-user.service.spec.ts | 31 +++++++++++++++++++ .../services/user/admin-edit-user.service.ts | 21 +++++++++++++ 2 files changed, 52 insertions(+) create mode 100644 src/app/services/user/admin-edit-user.service.spec.ts create mode 100644 src/app/services/user/admin-edit-user.service.ts diff --git a/src/app/services/user/admin-edit-user.service.spec.ts b/src/app/services/user/admin-edit-user.service.spec.ts new file mode 100644 index 0000000..4056143 --- /dev/null +++ b/src/app/services/user/admin-edit-user.service.spec.ts @@ -0,0 +1,31 @@ +import { TestBed } from '@angular/core/testing'; + +import { AdminEditUserService } from './admin-edit-user.service'; +import { User } from '../../models/user'; +import { Role } from '../../models/role'; + +describe('AdminEditUserService', () => { + let service: AdminEditUserService; + + beforeEach(() => { + TestBed.configureTestingModule({}); + service = TestBed.inject(AdminEditUserService); + }); + + it('should be created', () => { + expect(service).toBeTruthy(); + }); + + it('should set and get user', () => { + const user: User = { + username: "Admin", + firstName: "Name", + lastName: "Family", + email: "admin@admin.admin", + roles: [{ roleType: "Admin" }], + }; + + service.setUser(user); + expect(service.getUser()).toEqual(user); + }); +}); diff --git a/src/app/services/user/admin-edit-user.service.ts b/src/app/services/user/admin-edit-user.service.ts new file mode 100644 index 0000000..c1394f1 --- /dev/null +++ b/src/app/services/user/admin-edit-user.service.ts @@ -0,0 +1,21 @@ +import { Injectable } from '@angular/core'; +import { User } from '../../models/user'; + +@Injectable({ + providedIn: 'root' +}) +export class AdminEditUserService { + + private cur_user!: User; + + constructor() { + } + + setUser(user: User) { + this.cur_user = user; + } + + getUser() { + return this.cur_user; + } +} From 9d9f21437ee5a78dc5b71a5b2993a13a441c213e Mon Sep 17 00:00:00 2001 From: Mr MRF <79112136+Mr-MRF-Dev@users.noreply.github.com> Date: Mon, 26 Aug 2024 15:31:35 +0330 Subject: [PATCH 063/142] refactor(admin/edit user): style and functions --- .../users/edit-user/edit-user.component.html | 131 ++++++------------ .../users/edit-user/edit-user.component.scss | 3 - .../users/edit-user/edit-user.component.ts | 41 ++---- .../users/register/register.component.html | 7 +- .../dashboard/users/users.component.html | 10 +- .../dashboard/users/users.component.ts | 33 ++++- 6 files changed, 91 insertions(+), 134 deletions(-) diff --git a/src/app/components/dashboard/users/edit-user/edit-user.component.html b/src/app/components/dashboard/users/edit-user/edit-user.component.html index b4706bd..b03e382 100644 --- a/src/app/components/dashboard/users/edit-user/edit-user.component.html +++ b/src/app/components/dashboard/users/edit-user/edit-user.component.html @@ -1,99 +1,48 @@ -
    - -

    Edit User

    - -
    diff --git a/src/app/components/dashboard/graph/graph.component.scss b/src/app/components/dashboard/graph/graph.component.scss index 50a00b9..913216a 100644 --- a/src/app/components/dashboard/graph/graph.component.scss +++ b/src/app/components/dashboard/graph/graph.component.scss @@ -5,5 +5,23 @@ top: 0px; left: 0px; font: var(--tui-font-text-ui-l); + background-color: #dfe5eb; +} + +.leftPanel { + position: relative; + z-index: 999999; + width: 30rem; + // background: #000; + left: 6rem; + top: 2rem; + height: calc(100% - 4rem); + display: flex; + flex-direction: column; +} + +.card { + margin-top: 1rem; background-color: #fff; + flex-grow: 1; } diff --git a/src/app/components/dashboard/graph/graph.component.ts b/src/app/components/dashboard/graph/graph.component.ts index caf0ceb..aeecf25 100644 --- a/src/app/components/dashboard/graph/graph.component.ts +++ b/src/app/components/dashboard/graph/graph.component.ts @@ -7,11 +7,13 @@ import { cytoElements } from './cytoProps/cytoElements'; import { cytoStyles } from './cytoProps/cytoStyle'; import { cytoLayout } from './cytoProps/cytoLayout'; import { cxtMenuDefaults } from './cytoProps/cxtMenuDefaults'; +import { SearchBarComponent } from './search-bar/search-bar.component'; +import { TuiCardLarge } from '@taiga-ui/layout'; @Component({ selector: 'app-graph', standalone: true, - imports: [], + imports: [SearchBarComponent, SearchBarComponent, TuiCardLarge], templateUrl: './graph.component.html', styleUrl: './graph.component.scss', }) diff --git a/src/app/components/dashboard/graph/search-bar/search-bar.component.html b/src/app/components/dashboard/graph/search-bar/search-bar.component.html new file mode 100644 index 0000000..25873e2 --- /dev/null +++ b/src/app/components/dashboard/graph/search-bar/search-bar.component.html @@ -0,0 +1,9 @@ + + Search + + diff --git a/src/app/components/dashboard/graph/search-bar/search-bar.component.scss b/src/app/components/dashboard/graph/search-bar/search-bar.component.scss new file mode 100644 index 0000000..4d65505 --- /dev/null +++ b/src/app/components/dashboard/graph/search-bar/search-bar.component.scss @@ -0,0 +1,3 @@ +.input { + height: 3rem; +} diff --git a/src/app/components/dashboard/graph/search-bar/search-bar.component.spec.ts b/src/app/components/dashboard/graph/search-bar/search-bar.component.spec.ts new file mode 100644 index 0000000..c26cc88 --- /dev/null +++ b/src/app/components/dashboard/graph/search-bar/search-bar.component.spec.ts @@ -0,0 +1,23 @@ +import { ComponentFixture, TestBed } from '@angular/core/testing'; + +import { SearchBarComponent } from './search-bar.component'; + +describe('SearchBarComponent', () => { + let component: SearchBarComponent; + let fixture: ComponentFixture; + + beforeEach(async () => { + await TestBed.configureTestingModule({ + imports: [SearchBarComponent] + }) + .compileComponents(); + + fixture = TestBed.createComponent(SearchBarComponent); + component = fixture.componentInstance; + fixture.detectChanges(); + }); + + it('should create', () => { + expect(component).toBeTruthy(); + }); +}); diff --git a/src/app/components/dashboard/graph/search-bar/search-bar.component.ts b/src/app/components/dashboard/graph/search-bar/search-bar.component.ts new file mode 100644 index 0000000..4901131 --- /dev/null +++ b/src/app/components/dashboard/graph/search-bar/search-bar.component.ts @@ -0,0 +1,16 @@ +import { ChangeDetectionStrategy, Component } from '@angular/core'; +import { FormsModule } from '@angular/forms'; +import { TuiHint, TuiTextfield } from '@taiga-ui/core'; +import { TuiInputModule } from '@taiga-ui/legacy'; + +@Component({ + selector: 'app-search-bar', + standalone: true, + imports: [TuiInputModule, TuiTextfield, FormsModule, TuiHint], + templateUrl: './search-bar.component.html', + styleUrl: './search-bar.component.scss', + changeDetection: ChangeDetectionStrategy.OnPush, +}) +export class SearchBarComponent { + protected value = ''; +} From b21412e227d91845a745c7b0441201daa7eecf6d Mon Sep 17 00:00:00 2001 From: Morteza Ghandchi Date: Tue, 27 Aug 2024 14:34:40 +0330 Subject: [PATCH 071/142] fix(layout): remove header --- .../components/dashboard/dashboard.component.html | 9 ++++----- .../components/dashboard/dashboard.component.scss | 14 +++++++++++++- 2 files changed, 17 insertions(+), 6 deletions(-) diff --git a/src/app/components/dashboard/dashboard.component.html b/src/app/components/dashboard/dashboard.component.html index 968558a..b3881a3 100644 --- a/src/app/components/dashboard/dashboard.component.html +++ b/src/app/components/dashboard/dashboard.component.html @@ -1,4 +1,4 @@ - + -->
    diff --git a/src/app/components/dashboard/dashboard.component.scss b/src/app/components/dashboard/dashboard.component.scss index 2e6ce00..595e021 100644 --- a/src/app/components/dashboard/dashboard.component.scss +++ b/src/app/components/dashboard/dashboard.component.scss @@ -8,10 +8,17 @@ } #container { - height: calc(100vh - var(--tui-height-m) - 0.25rem); + height: 100vh; background-color: #f5f6f6; } +button { + display: flex; + align-items: center; + justify-content: flex-start; + text-align: left; +} + #main { height: 100%; width: 100%; @@ -27,6 +34,7 @@ .aside { background-color: #131720; + height: 100vh; } :host { @@ -74,3 +82,7 @@ header[tuiNavigationHeader]:after { } } } + +aside[tuiNavigationAside][_ngcontent-ng-c2979599704]:before { + box-shadow: none !important; +} From b752b80c3e423eb40bc3a87b954982bfad620277 Mon Sep 17 00:00:00 2001 From: Mr MRF <79112136+Mr-MRF-Dev@users.noreply.github.com> Date: Tue, 27 Aug 2024 14:50:06 +0330 Subject: [PATCH 072/142] refactor: dashboard aside style --- .../dashboard/dashboard.component.scss | 36 ++++++++++--------- 1 file changed, 20 insertions(+), 16 deletions(-) diff --git a/src/app/components/dashboard/dashboard.component.scss b/src/app/components/dashboard/dashboard.component.scss index 595e021..efb3cd2 100644 --- a/src/app/components/dashboard/dashboard.component.scss +++ b/src/app/components/dashboard/dashboard.component.scss @@ -1,11 +1,11 @@ -#header { - height: calc(var(--tui-height-m) + 0.25rem); - background-color: #131720; +// #header { +// height: calc(var(--tui-height-m) + 0.25rem); +// background-color: #131720; - & button { - max-width: none; - } -} +// & button { +// max-width: none; +// } +// } #container { height: 100vh; @@ -34,7 +34,11 @@ button { .aside { background-color: #131720; - height: 100vh; + height: 100%; +} + +.aside button span { + margin-inline-start: 0.5rem; } :host { @@ -58,21 +62,21 @@ header[tuiNavigationHeader]:after { } @media (min-width: 768px) { - #header { - font: var(--tui-font-text-m); - height: calc(var(--tui-height-l) + 0.25rem); - } + // #header { + // font: var(--tui-font-text-m); + // height: calc(var(--tui-height-l) + 0.25rem); + // } #container { font: var(--tui-font-text-m); - height: calc(100vh - var(--tui-height-l) - 0.25rem); } aside { - [tuiButton][data-size='s']:not([tuiIconButton][data-appearance='icon']):not( - [tuiIconButton][data-appearance='link'] + padding: 1rem; + [tuiButton][data-size="s"]:not([tuiIconButton][data-appearance="icon"]):not( + [tuiIconButton][data-appearance="link"] ):before { - font-size: 1.2rem; + font-size: 1.1rem; } button { From b03162bb0dca2998e5685ae7da2b50d12d054003 Mon Sep 17 00:00:00 2001 From: Morteza Ghandchi Date: Tue, 27 Aug 2024 14:50:29 +0330 Subject: [PATCH 073/142] fix(layout): fix height cyto --- src/app/components/dashboard/graph/graph.component.scss | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/app/components/dashboard/graph/graph.component.scss b/src/app/components/dashboard/graph/graph.component.scss index 913216a..493955e 100644 --- a/src/app/components/dashboard/graph/graph.component.scss +++ b/src/app/components/dashboard/graph/graph.component.scss @@ -1,6 +1,6 @@ #cy { width: 100%; - height: 1000px; + height: 100%; position: absolute; top: 0px; left: 0px; From 45806625ca528c3326b264d4af7612373c3da5fb Mon Sep 17 00:00:00 2001 From: Mr MRF <79112136+Mr-MRF-Dev@users.noreply.github.com> Date: Tue, 27 Aug 2024 14:59:29 +0330 Subject: [PATCH 074/142] feat: create basic charts component --- src/app/app.routes.ts | 5 ++++ .../dashboard/charts/charts.component.html | 1 + .../dashboard/charts/charts.component.scss | 0 .../dashboard/charts/charts.component.spec.ts | 23 +++++++++++++++++++ .../dashboard/charts/charts.component.ts | 12 ++++++++++ .../dashboard/dashboard.component.html | 6 ++++- 6 files changed, 46 insertions(+), 1 deletion(-) create mode 100644 src/app/components/dashboard/charts/charts.component.html create mode 100644 src/app/components/dashboard/charts/charts.component.scss create mode 100644 src/app/components/dashboard/charts/charts.component.spec.ts create mode 100644 src/app/components/dashboard/charts/charts.component.ts diff --git a/src/app/app.routes.ts b/src/app/app.routes.ts index f4b01f5..a261e41 100644 --- a/src/app/app.routes.ts +++ b/src/app/app.routes.ts @@ -5,6 +5,7 @@ import { UsersComponent } from './components/dashboard/users/users.component'; import { ProfileComponent } from './components/dashboard/profile/profile.component'; import { GraphComponent } from './components/dashboard/graph/graph.component'; import { ImportComponent } from './components/dashboard/import/import.component'; +import { ChartsComponent } from './components/dashboard/charts/charts.component'; export const routes: Routes = [ { @@ -36,6 +37,10 @@ export const routes: Routes = [ path: 'import', component: ImportComponent, }, + { + path: 'charts', + component: ChartsComponent, + }, ], }, ]; diff --git a/src/app/components/dashboard/charts/charts.component.html b/src/app/components/dashboard/charts/charts.component.html new file mode 100644 index 0000000..1573ed8 --- /dev/null +++ b/src/app/components/dashboard/charts/charts.component.html @@ -0,0 +1 @@ +

    charts works!

    diff --git a/src/app/components/dashboard/charts/charts.component.scss b/src/app/components/dashboard/charts/charts.component.scss new file mode 100644 index 0000000..e69de29 diff --git a/src/app/components/dashboard/charts/charts.component.spec.ts b/src/app/components/dashboard/charts/charts.component.spec.ts new file mode 100644 index 0000000..25cac3b --- /dev/null +++ b/src/app/components/dashboard/charts/charts.component.spec.ts @@ -0,0 +1,23 @@ +import { ComponentFixture, TestBed } from '@angular/core/testing'; + +import { ChartsComponent } from './charts.component'; + +describe('ChartsComponent', () => { + let component: ChartsComponent; + let fixture: ComponentFixture; + + beforeEach(async () => { + await TestBed.configureTestingModule({ + imports: [ChartsComponent] + }) + .compileComponents(); + + fixture = TestBed.createComponent(ChartsComponent); + component = fixture.componentInstance; + fixture.detectChanges(); + }); + + it('should create', () => { + expect(component).toBeTruthy(); + }); +}); diff --git a/src/app/components/dashboard/charts/charts.component.ts b/src/app/components/dashboard/charts/charts.component.ts new file mode 100644 index 0000000..b72aca5 --- /dev/null +++ b/src/app/components/dashboard/charts/charts.component.ts @@ -0,0 +1,12 @@ +import { Component } from '@angular/core'; + +@Component({ + selector: 'app-charts', + standalone: true, + imports: [], + templateUrl: './charts.component.html', + styleUrl: './charts.component.scss' +}) +export class ChartsComponent { + +} diff --git a/src/app/components/dashboard/dashboard.component.html b/src/app/components/dashboard/dashboard.component.html index b3881a3..e5117af 100644 --- a/src/app/components/dashboard/dashboard.component.html +++ b/src/app/components/dashboard/dashboard.component.html @@ -58,6 +58,10 @@ + + @@ -75,7 +79,7 @@ [iconStart]="expanded ? '@tui.chevron-left' : '@tui.chevron-right'" (click)="expanded = !expanded" > - {{ expanded ? 'Collapse' : 'Expand' }} + {{ expanded ? "Collapse" : "Expand" }} From a46107119aefbdd8e697eda23245931f0767645b Mon Sep 17 00:00:00 2001 From: Mr MRF <79112136+Mr-MRF-Dev@users.noreply.github.com> Date: Tue, 27 Aug 2024 15:17:10 +0330 Subject: [PATCH 075/142] fix: aside style --- src/app/components/dashboard/dashboard.component.scss | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/app/components/dashboard/dashboard.component.scss b/src/app/components/dashboard/dashboard.component.scss index efb3cd2..e8edfe3 100644 --- a/src/app/components/dashboard/dashboard.component.scss +++ b/src/app/components/dashboard/dashboard.component.scss @@ -54,7 +54,9 @@ aside[tuiNavigationAside] { } aside[tuiNavigationAside]:before { - box-shadow: -1.5rem 0 #131720; + box-shadow: 0 -1.5rem #131720; + width: 0; + height: 0; } header[tuiNavigationHeader]:after { From 0f47e3babe5d456c5895ecc868700950db793061 Mon Sep 17 00:00:00 2001 From: Mr MRF <79112136+Mr-MRF-Dev@users.noreply.github.com> Date: Tue, 27 Aug 2024 15:43:55 +0330 Subject: [PATCH 076/142] fix: fix graph height style --- src/app/components/dashboard/graph/graph.component.scss | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/app/components/dashboard/graph/graph.component.scss b/src/app/components/dashboard/graph/graph.component.scss index 913216a..493955e 100644 --- a/src/app/components/dashboard/graph/graph.component.scss +++ b/src/app/components/dashboard/graph/graph.component.scss @@ -1,6 +1,6 @@ #cy { width: 100%; - height: 1000px; + height: 100%; position: absolute; top: 0px; left: 0px; From 88f2fbb5091faa59a39e95fe1cb1c2386f3c9ce0 Mon Sep 17 00:00:00 2001 From: Mr MRF <79112136+Mr-MRF-Dev@users.noreply.github.com> Date: Tue, 27 Aug 2024 15:44:21 +0330 Subject: [PATCH 077/142] feat: added tab in charts component --- .../dashboard/charts/charts.component.html | 18 ++++++++++++- .../dashboard/charts/charts.component.scss | 5 ++++ .../dashboard/charts/charts.component.ts | 26 ++++++++++++++++--- 3 files changed, 45 insertions(+), 4 deletions(-) diff --git a/src/app/components/dashboard/charts/charts.component.html b/src/app/components/dashboard/charts/charts.component.html index 1573ed8..732b019 100644 --- a/src/app/components/dashboard/charts/charts.component.html +++ b/src/app/components/dashboard/charts/charts.component.html @@ -1 +1,17 @@ -

    charts works!

    +
    + + + + + + + + +
    diff --git a/src/app/components/dashboard/charts/charts.component.scss b/src/app/components/dashboard/charts/charts.component.scss index e69de29..63c5399 100644 --- a/src/app/components/dashboard/charts/charts.component.scss +++ b/src/app/components/dashboard/charts/charts.component.scss @@ -0,0 +1,5 @@ +tui-tabs { + background-color: #f5f6f6; + position: relative; + z-index: 9999999; +} diff --git a/src/app/components/dashboard/charts/charts.component.ts b/src/app/components/dashboard/charts/charts.component.ts index b72aca5..f8e4f67 100644 --- a/src/app/components/dashboard/charts/charts.component.ts +++ b/src/app/components/dashboard/charts/charts.component.ts @@ -1,12 +1,32 @@ -import { Component } from '@angular/core'; +import { ChangeDetectionStrategy, Component } from '@angular/core'; +import { FormsModule } from '@angular/forms'; +import { TuiTabs } from '@taiga-ui/kit'; + +import { GraphComponent } from '../graph/graph.component'; +import { ImportComponent } from '../import/import.component'; @Component({ selector: 'app-charts', standalone: true, - imports: [], + imports: [GraphComponent, ImportComponent, TuiTabs, FormsModule], templateUrl: './charts.component.html', - styleUrl: './charts.component.scss' + styleUrl: './charts.component.scss', + changeDetection: ChangeDetectionStrategy.OnPush, }) export class ChartsComponent { + protected activeItemIndex = 0; + + protected tabHandler(item: string): void { + // if (item == "import") { + // this.activeItemIndex = 0; + // } + + // else if (item == "graph") { + // this.activeItemIndex = 1; + // } + // else { + // this.activeItemIndex = 0; + // } + } } From d8dde8fafc68ad6e53a9d2d6a02a3532b3345679 Mon Sep 17 00:00:00 2001 From: Mr MRF <79112136+Mr-MRF-Dev@users.noreply.github.com> Date: Tue, 27 Aug 2024 15:55:54 +0330 Subject: [PATCH 078/142] fix(import): remove border --- src/app/components/dashboard/import/import.component.html | 6 +----- src/app/components/dashboard/import/import.component.scss | 3 ++- 2 files changed, 3 insertions(+), 6 deletions(-) diff --git a/src/app/components/dashboard/import/import.component.html b/src/app/components/dashboard/import/import.component.html index 5cdfed3..0566c3e 100644 --- a/src/app/components/dashboard/import/import.component.html +++ b/src/app/components/dashboard/import/import.component.html @@ -2,11 +2,7 @@
    -
    +
    diff --git a/src/app/components/dashboard/graph/graph.component.scss b/src/app/components/dashboard/graph/graph.component.scss index 493955e..f245061 100644 --- a/src/app/components/dashboard/graph/graph.component.scss +++ b/src/app/components/dashboard/graph/graph.component.scss @@ -24,4 +24,9 @@ margin-top: 1rem; background-color: #fff; flex-grow: 1; + display: block !important; +} + +.tabs button { + font-weight: 400; } diff --git a/src/app/components/dashboard/graph/graph.component.ts b/src/app/components/dashboard/graph/graph.component.ts index aeecf25..b6a7add 100644 --- a/src/app/components/dashboard/graph/graph.component.ts +++ b/src/app/components/dashboard/graph/graph.component.ts @@ -9,15 +9,31 @@ import { cytoLayout } from './cytoProps/cytoLayout'; import { cxtMenuDefaults } from './cytoProps/cxtMenuDefaults'; import { SearchBarComponent } from './search-bar/search-bar.component'; import { TuiCardLarge } from '@taiga-ui/layout'; - +import { TuiChip } from '@taiga-ui/kit'; +import { TuiButton } from '@taiga-ui/core'; +import { TuiButtonClose } from '@taiga-ui/kit'; +import { TuiTabs } from '@taiga-ui/kit'; @Component({ selector: 'app-graph', standalone: true, - imports: [SearchBarComponent, SearchBarComponent, TuiCardLarge], + imports: [ + SearchBarComponent, + SearchBarComponent, + TuiCardLarge, + TuiChip, + TuiButton, + TuiButtonClose, + TuiTabs, + ], templateUrl: './graph.component.html', styleUrl: './graph.component.scss', }) export class GraphComponent implements AfterViewInit { + activeItemIndex = 0; + onTabClick(arg0: string) { + throw new Error('Method not implemented.'); + console.log(arg0); + } ngAfterViewInit(): void { cytoscape.use(cxtmenu); cytoscape.use(coseBilkent); From 93bbf4187006c0517777e90a1367d0d0da161b3b Mon Sep 17 00:00:00 2001 From: Morteza Ghandchi Date: Tue, 27 Aug 2024 16:17:36 +0330 Subject: [PATCH 080/142] fix: fix layout --- src/app/components/dashboard/charts/charts.component.html | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/src/app/components/dashboard/charts/charts.component.html b/src/app/components/dashboard/charts/charts.component.html index 732b019..943a10d 100644 --- a/src/app/components/dashboard/charts/charts.component.html +++ b/src/app/components/dashboard/charts/charts.component.html @@ -11,7 +11,8 @@ Graph - - - +
    + + +
    From 6eaa16cc6e66fa4f1737147a1c38872187dd4bd6 Mon Sep 17 00:00:00 2001 From: Mr MRF <79112136+Mr-MRF-Dev@users.noreply.github.com> Date: Tue, 27 Aug 2024 16:42:33 +0330 Subject: [PATCH 081/142] refactor: refactor chart header functions --- .../dashboard/charts/charts.component.html | 47 +++++++++++++++---- .../dashboard/charts/charts.component.scss | 2 +- .../dashboard/charts/charts.component.ts | 3 +- 3 files changed, 40 insertions(+), 12 deletions(-) diff --git a/src/app/components/dashboard/charts/charts.component.html b/src/app/components/dashboard/charts/charts.component.html index 732b019..7571243 100644 --- a/src/app/components/dashboard/charts/charts.component.html +++ b/src/app/components/dashboard/charts/charts.component.html @@ -1,16 +1,43 @@
    - - +
    +

    Charts

    +
    - -
    + + + + + +
    + + + + +
    +
    diff --git a/src/app/components/dashboard/charts/charts.component.scss b/src/app/components/dashboard/charts/charts.component.scss index 63c5399..72498f2 100644 --- a/src/app/components/dashboard/charts/charts.component.scss +++ b/src/app/components/dashboard/charts/charts.component.scss @@ -1,4 +1,4 @@ -tui-tabs { +#chart-header { background-color: #f5f6f6; position: relative; z-index: 9999999; diff --git a/src/app/components/dashboard/charts/charts.component.ts b/src/app/components/dashboard/charts/charts.component.ts index f8e4f67..c72a961 100644 --- a/src/app/components/dashboard/charts/charts.component.ts +++ b/src/app/components/dashboard/charts/charts.component.ts @@ -4,11 +4,12 @@ import { TuiTabs } from '@taiga-ui/kit'; import { GraphComponent } from '../graph/graph.component'; import { ImportComponent } from '../import/import.component'; +import { TuiButton, TuiIcon } from '@taiga-ui/core'; @Component({ selector: 'app-charts', standalone: true, - imports: [GraphComponent, ImportComponent, TuiTabs, FormsModule], + imports: [TuiButton, TuiIcon, GraphComponent, ImportComponent, TuiTabs, FormsModule], templateUrl: './charts.component.html', styleUrl: './charts.component.scss', changeDetection: ChangeDetectionStrategy.OnPush, From 60cd06edf733328a95761221e80756534ca137a9 Mon Sep 17 00:00:00 2001 From: Morteza Ghandchi Date: Tue, 27 Aug 2024 16:44:06 +0330 Subject: [PATCH 082/142] feat(style): left window properties style --- .../dashboard/graph/graph.component.html | 53 +++++++++++++------ .../dashboard/graph/graph.component.ts | 35 ++++++++++++ 2 files changed, 71 insertions(+), 17 deletions(-) diff --git a/src/app/components/dashboard/graph/graph.component.html b/src/app/components/dashboard/graph/graph.component.html index ef6f04f..ece9127 100644 --- a/src/app/components/dashboard/graph/graph.component.html +++ b/src/app/components/dashboard/graph/graph.component.html @@ -1,14 +1,18 @@ -
    - -
    +
    + +
    -
    +
    Account - - Nagar Ahmadi - + Nagar Ahmadi +
    @@ -22,7 +26,6 @@ > Properties - - -
    Replace me
    - - +
    + Account +
    + +
      + @for (item of items; track $index) { +
    • +

      + {{ i.key }} +

      +

      + {{ i.value }} +

      +
    • + } +
    diff --git a/src/app/components/dashboard/graph/graph.component.ts b/src/app/components/dashboard/graph/graph.component.ts index b6a7add..66ed471 100644 --- a/src/app/components/dashboard/graph/graph.component.ts +++ b/src/app/components/dashboard/graph/graph.component.ts @@ -13,6 +13,8 @@ import { TuiChip } from '@taiga-ui/kit'; import { TuiButton } from '@taiga-ui/core'; import { TuiButtonClose } from '@taiga-ui/kit'; import { TuiTabs } from '@taiga-ui/kit'; +import { CommonModule } from '@angular/common'; + @Component({ selector: 'app-graph', standalone: true, @@ -24,11 +26,44 @@ import { TuiTabs } from '@taiga-ui/kit'; TuiButton, TuiButtonClose, TuiTabs, + CommonModule, ], templateUrl: './graph.component.html', styleUrl: './graph.component.scss', }) export class GraphComponent implements AfterViewInit { + protected items = [ + { + expanded: false, + title: 'account.csv', + value: { + accountId: '6534454617', + cardId: '6104335000000190', + iban: 'IR120778801496000000198', + accountType: 'Savings', + branchTelephone: '55638667', + branchAddress: 'Tehran - Khayam Street - Above Golbandak Intersection', + branchName: 'Golbandak', + ownerFirstName: 'Afsar', + ownerLastName: 'Tabatabaei', + ownerId: '1227114110', + }, + dropdown: false, + }, + { + expanded: false, + title: 'transaction.csv', + value: { + sourceAccount: '6534454617', + destinationAccount: '6039548046', + amount: '500,000,000', + date: '2020/07/13', + transactionId: '153348811341', + type: 'Paya', + }, + dropdown: false, + }, + ]; activeItemIndex = 0; onTabClick(arg0: string) { throw new Error('Method not implemented.'); From f2c9198554fd2f06757ca561bcea88e801561b3b Mon Sep 17 00:00:00 2001 From: Mr MRF <79112136+Mr-MRF-Dev@users.noreply.github.com> Date: Tue, 27 Aug 2024 16:48:32 +0330 Subject: [PATCH 083/142] fix: fix chart body layout --- src/app/components/dashboard/charts/charts.component.html | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/app/components/dashboard/charts/charts.component.html b/src/app/components/dashboard/charts/charts.component.html index 7571243..1c10b40 100644 --- a/src/app/components/dashboard/charts/charts.component.html +++ b/src/app/components/dashboard/charts/charts.component.html @@ -39,6 +39,6 @@

    Charts

    - - + + From a24a2400cf5f62447c6b7c4ffd04ed6a25251dd7 Mon Sep 17 00:00:00 2001 From: Morteza Ghandchi Date: Tue, 27 Aug 2024 16:50:48 +0330 Subject: [PATCH 084/142] fix(style): fix scroll issue --- .../components/dashboard/dashboard.component.html | 2 +- .../components/dashboard/graph/graph.component.ts | 13 ------------- 2 files changed, 1 insertion(+), 14 deletions(-) diff --git a/src/app/components/dashboard/dashboard.component.html b/src/app/components/dashboard/dashboard.component.html index e5117af..75c3a48 100644 --- a/src/app/components/dashboard/dashboard.component.html +++ b/src/app/components/dashboard/dashboard.component.html @@ -79,7 +79,7 @@ [iconStart]="expanded ? '@tui.chevron-left' : '@tui.chevron-right'" (click)="expanded = !expanded" > - {{ expanded ? "Collapse" : "Expand" }} + {{ expanded ? 'Collapse' : 'Expand' }} diff --git a/src/app/components/dashboard/graph/graph.component.ts b/src/app/components/dashboard/graph/graph.component.ts index 66ed471..2548cfd 100644 --- a/src/app/components/dashboard/graph/graph.component.ts +++ b/src/app/components/dashboard/graph/graph.component.ts @@ -50,19 +50,6 @@ export class GraphComponent implements AfterViewInit { }, dropdown: false, }, - { - expanded: false, - title: 'transaction.csv', - value: { - sourceAccount: '6534454617', - destinationAccount: '6039548046', - amount: '500,000,000', - date: '2020/07/13', - transactionId: '153348811341', - type: 'Paya', - }, - dropdown: false, - }, ]; activeItemIndex = 0; onTabClick(arg0: string) { From 6ba8ce5f143acdfb2f6ec2111707843ac342d125 Mon Sep 17 00:00:00 2001 From: Mr MRF <79112136+Mr-MRF-Dev@users.noreply.github.com> Date: Tue, 27 Aug 2024 22:35:23 +0330 Subject: [PATCH 085/142] refactor(login): structure and styles --- src/app/components/login/login.component.html | 123 ++++++++++-------- src/app/components/login/login.component.scss | 28 +++- src/app/components/login/login.component.ts | 6 +- src/environments/environment.ts | 1 + 4 files changed, 102 insertions(+), 56 deletions(-) diff --git a/src/app/components/login/login.component.html b/src/app/components/login/login.component.html index fbe7590..b3df1fc 100644 --- a/src/app/components/login/login.component.html +++ b/src/app/components/login/login.component.html @@ -1,62 +1,83 @@
    -
    - -
    -
    -

    Sign in

    -

    - Welcome back! Please enter your credentials to access your account. -

    +
    + +
    +

    Welcome Back

    +

    Please login to your account

    +
    - @if (errorMessage) { -

    - {{ errorMessage }} -

    - } + - + - -
    + -
    -
    diff --git a/src/app/components/login/login.component.scss b/src/app/components/login/login.component.scss index 920527d..d8a46a5 100644 --- a/src/app/components/login/login.component.scss +++ b/src/app/components/login/login.component.scss @@ -7,6 +7,21 @@ $padding-large: 1.25rem; background-position: center; background-repeat: no-repeat; + .main-card { + border-radius: var(--tui-radius-xl); + background-color: var(--tui-background-base); + color: var(--tui-text-primary); + } + + .Rimg { + height: 100%; + border-radius: var(--tui-radius-xl); + background-image: url("/user-bg.jpeg"); + background-size: cover; + background-position: center; + background-repeat: no-repeat; + } + .tui-island { position: relative; display: block; @@ -24,7 +39,7 @@ $padding-large: 1.25rem; content: ""; box-sizing: border-box; - border: 1px solid var(--tui-border-normal); + // border: 1px solid var(--tui-border-normal); border-radius: inherit; pointer-events: none; } @@ -37,11 +52,14 @@ $padding-large: 1.25rem; } &__title { - font: var(--tui-font-heading-6); - margin: 0 0 0.75rem; + // text-align: center; + font-weight: bold; + font: var(--tui-font-heading-3); + margin: 0 0 0.5rem; } &__paragraph { + // text-align: center; margin: 0 0 1rem 0; color: var(--tui-text-secondary); } @@ -59,3 +77,7 @@ $padding-large: 1.25rem; } } } + +.tui-island:not(.tui-island_hoverable)::before { + border: 0; +} diff --git a/src/app/components/login/login.component.ts b/src/app/components/login/login.component.ts index 64e2c53..683993c 100644 --- a/src/app/components/login/login.component.ts +++ b/src/app/components/login/login.component.ts @@ -12,6 +12,7 @@ import { TuiCardLarge } from '@taiga-ui/layout'; import { CommonModule } from '@angular/common'; import { Router } from '@angular/router'; import { AuthService } from '../../services/auth/auth.service'; +import { environment } from '../../../environments/environment'; @Component({ selector: 'app-login', @@ -33,10 +34,11 @@ export class LoginComponent implements OnInit { form!: FormGroup; loading = false; errorMessage: string | null = null; - - constructor(private authService: AuthService, private router: Router) {} + protected github_repo!: string; + constructor(private authService: AuthService, private router: Router) { } ngOnInit(): void { + this.github_repo = environment.githubRepo; this.form = new FormGroup({ username: new FormControl(null, [ Validators.required, diff --git a/src/environments/environment.ts b/src/environments/environment.ts index 0575d03..b76be2f 100644 --- a/src/environments/environment.ts +++ b/src/environments/environment.ts @@ -1,4 +1,5 @@ export const environment = { production: false, apiBaseUrl: 'http://localhost:5222', + githubRepo: "https://github.com/Star-Academy/Summer1403-Project-Group02-Frontend", }; From b185ddce03a6c3e794f2387964c730186aabcbae Mon Sep 17 00:00:00 2001 From: Mr MRF <79112136+Mr-MRF-Dev@users.noreply.github.com> Date: Tue, 27 Aug 2024 22:41:06 +0330 Subject: [PATCH 086/142] chore: remove some padding --- src/app/components/login/login.component.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/app/components/login/login.component.html b/src/app/components/login/login.component.html index b3df1fc..05cb4ca 100644 --- a/src/app/components/login/login.component.html +++ b/src/app/components/login/login.component.html @@ -1,7 +1,7 @@
    From fd991ef97cafdf1a007dc54bbb3a9943ef5b9355 Mon Sep 17 00:00:00 2001 From: Mr MRF <79112136+Mr-MRF-Dev@users.noreply.github.com> Date: Tue, 27 Aug 2024 22:45:05 +0330 Subject: [PATCH 087/142] chore: fix mock default user --- src/app/components/dashboard/users/users.component.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/app/components/dashboard/users/users.component.ts b/src/app/components/dashboard/users/users.component.ts index 1c81134..3943dd1 100644 --- a/src/app/components/dashboard/users/users.component.ts +++ b/src/app/components/dashboard/users/users.component.ts @@ -77,7 +77,7 @@ export class UsersComponent implements OnInit { // lastName: "Family", // email: "admin@admin.admin", // roles: [{ roleType: "Admin" }], - // }; + // } // ]); private readonly rejDialog = this.dialogs.open( From c065a6e1d911ba79098ac87e88a65533bd9bdf95 Mon Sep 17 00:00:00 2001 From: Mr MRF <79112136+Mr-MRF-Dev@users.noreply.github.com> Date: Wed, 28 Aug 2024 01:16:56 +0330 Subject: [PATCH 088/142] feat(graph): Added mini tools layout --- .../dashboard/graph/graph.component.html | 25 +++++++++++++++++++ .../dashboard/graph/graph.component.scss | 22 ++++++++++++++++ .../dashboard/graph/graph.component.ts | 4 ++- 3 files changed, 50 insertions(+), 1 deletion(-) diff --git a/src/app/components/dashboard/graph/graph.component.html b/src/app/components/dashboard/graph/graph.component.html index ece9127..d58b0bb 100644 --- a/src/app/components/dashboard/graph/graph.component.html +++ b/src/app/components/dashboard/graph/graph.component.html @@ -95,4 +95,29 @@
+
+ + + + + + +
diff --git a/src/app/components/dashboard/graph/graph.component.scss b/src/app/components/dashboard/graph/graph.component.scss index f245061..ea7df51 100644 --- a/src/app/components/dashboard/graph/graph.component.scss +++ b/src/app/components/dashboard/graph/graph.component.scss @@ -20,6 +20,28 @@ flex-direction: column; } +.tools { + right: calc(-1 * 100% + calc(var(--tui-height-s) + 0.6rem)); + transform: translateY(-80%); + padding: 0.3rem; + position: relative; + width: calc(var(--tui-height-s)); + border-radius: var(--tui-radius-s); + z-index: 999999; + background-color: #fff; + + button { + // --t-size: calc(var(--tui-height-s) + 0.5rem); + + &[tuiIconButton][data-size="s"]:not( + [tuiIconButton][data-appearance="icon"] + ):not([tuiIconButton][data-appearance="link"]):before { + // font-size: 1.2rem; + color: black; + } + } +} + .card { margin-top: 1rem; background-color: #fff; diff --git a/src/app/components/dashboard/graph/graph.component.ts b/src/app/components/dashboard/graph/graph.component.ts index 2548cfd..a8cc521 100644 --- a/src/app/components/dashboard/graph/graph.component.ts +++ b/src/app/components/dashboard/graph/graph.component.ts @@ -10,7 +10,7 @@ import { cxtMenuDefaults } from './cytoProps/cxtMenuDefaults'; import { SearchBarComponent } from './search-bar/search-bar.component'; import { TuiCardLarge } from '@taiga-ui/layout'; import { TuiChip } from '@taiga-ui/kit'; -import { TuiButton } from '@taiga-ui/core'; +import { TuiButton, TuiIcon, TuiSurface } from '@taiga-ui/core'; import { TuiButtonClose } from '@taiga-ui/kit'; import { TuiTabs } from '@taiga-ui/kit'; import { CommonModule } from '@angular/common'; @@ -19,6 +19,8 @@ import { CommonModule } from '@angular/common'; selector: 'app-graph', standalone: true, imports: [ + TuiIcon, + TuiSurface, SearchBarComponent, SearchBarComponent, TuiCardLarge, From 151a57c6e2cfe28e1240f9274fe7028046eaedb1 Mon Sep 17 00:00:00 2001 From: Mr MRF <79112136+Mr-MRF-Dev@users.noreply.github.com> Date: Wed, 28 Aug 2024 02:13:04 +0330 Subject: [PATCH 089/142] feat(graph): Added select node & edit ui --- .../dashboard/graph/graph.component.html | 75 +++++++++++++------ .../dashboard/graph/graph.component.scss | 43 ++++++++--- .../dashboard/graph/graph.component.ts | 19 +++++ 3 files changed, 101 insertions(+), 36 deletions(-) diff --git a/src/app/components/dashboard/graph/graph.component.html b/src/app/components/dashboard/graph/graph.component.html index d58b0bb..05ecc53 100644 --- a/src/app/components/dashboard/graph/graph.component.html +++ b/src/app/components/dashboard/graph/graph.component.html @@ -95,29 +95,56 @@ -
- - - - - - + +
+
+ + + + + + +
+
+ + Force-based layout + + + + + + +
+
diff --git a/src/app/components/dashboard/graph/graph.component.scss b/src/app/components/dashboard/graph/graph.component.scss index ea7df51..c7f1013 100644 --- a/src/app/components/dashboard/graph/graph.component.scss +++ b/src/app/components/dashboard/graph/graph.component.scss @@ -21,24 +21,43 @@ } .tools { - right: calc(-1 * 100% + calc(var(--tui-height-s) + 0.6rem)); - transform: translateY(-80%); - padding: 0.3rem; + $tool-width: 15rem; + position: relative; - width: calc(var(--tui-height-s)); - border-radius: var(--tui-radius-s); + right: calc(-1 * 100% + calc($tool-width + 0.7rem)); + transform: translateY(-80%); z-index: 999999; - background-color: #fff; + width: $tool-width; + + .bar { + padding: 0.3rem; + width: calc(var(--tui-height-s)); + border-radius: var(--tui-radius-s); + background-color: #fff; - button { - // --t-size: calc(var(--tui-height-s) + 0.5rem); + button { + // --t-size: calc(var(--tui-height-s) + 0.5rem); - &[tuiIconButton][data-size="s"]:not( - [tuiIconButton][data-appearance="icon"] - ):not([tuiIconButton][data-appearance="link"]):before { - // font-size: 1.2rem; + &[tuiIconButton][data-size="s"]:not( + [tuiIconButton][data-appearance="icon"] + ):not([tuiIconButton][data-appearance="link"]):before { + // font-size: 1.2rem; + color: black; + } + } + } + + .select-edit { + border-radius: var(--tui-radius-s); + background-color: #fff; + + button:before { color: black; } + + tui-select { + width: calc($tool-width - var(--tui-height-s)); + } } } diff --git a/src/app/components/dashboard/graph/graph.component.ts b/src/app/components/dashboard/graph/graph.component.ts index a8cc521..3e8f440 100644 --- a/src/app/components/dashboard/graph/graph.component.ts +++ b/src/app/components/dashboard/graph/graph.component.ts @@ -14,6 +14,10 @@ import { TuiButton, TuiIcon, TuiSurface } from '@taiga-ui/core'; import { TuiButtonClose } from '@taiga-ui/kit'; import { TuiTabs } from '@taiga-ui/kit'; import { CommonModule } from '@angular/common'; +import { FormControl, ReactiveFormsModule } from '@angular/forms'; +import { TuiDataList } from '@taiga-ui/core'; +import { TuiDataListWrapper } from '@taiga-ui/kit'; +import { TuiSelectModule, TuiTextfieldControllerModule } from '@taiga-ui/legacy'; @Component({ selector: 'app-graph', @@ -29,11 +33,26 @@ import { CommonModule } from '@angular/common'; TuiButtonClose, TuiTabs, CommonModule, + TuiSelectModule, + TuiTextfieldControllerModule, + ReactiveFormsModule, + TuiDataListWrapper, + TuiDataList, ], templateUrl: './graph.component.html', styleUrl: './graph.component.scss', }) export class GraphComponent implements AfterViewInit { + + protected select_items = [ + "node 1", + "node 2", + "node 3", + ]; + + protected select_form = new FormControl(null); + + protected items = [ { expanded: false, From 744b0358f6b69707af877a3855f556f2206de328 Mon Sep 17 00:00:00 2001 From: Mr MRF <79112136+Mr-MRF-Dev@users.noreply.github.com> Date: Wed, 28 Aug 2024 10:22:03 +0330 Subject: [PATCH 090/142] feat(graph): Added node count tool bar --- .../dashboard/graph/graph.component.html | 103 ++++++++++-------- .../dashboard/graph/graph.component.scss | 58 ++++++---- 2 files changed, 94 insertions(+), 67 deletions(-) diff --git a/src/app/components/dashboard/graph/graph.component.html b/src/app/components/dashboard/graph/graph.component.html index 05ecc53..7d89435 100644 --- a/src/app/components/dashboard/graph/graph.component.html +++ b/src/app/components/dashboard/graph/graph.component.html @@ -96,54 +96,69 @@
-
-
- - - - - -
-
- - Force-based layout - - - - - + + + + + +
+
+ + Force-based layout + + + + + + +
diff --git a/src/app/components/dashboard/graph/graph.component.scss b/src/app/components/dashboard/graph/graph.component.scss index c7f1013..fa3a0b5 100644 --- a/src/app/components/dashboard/graph/graph.component.scss +++ b/src/app/components/dashboard/graph/graph.component.scss @@ -20,44 +20,56 @@ flex-direction: column; } -.tools { - $tool-width: 15rem; - +.bottom-panel { position: relative; - right: calc(-1 * 100% + calc($tool-width + 0.7rem)); transform: translateY(-80%); - z-index: 999999; - width: $tool-width; + z-index: 9999990; - .bar { - padding: 0.3rem; - width: calc(var(--tui-height-s)); - border-radius: var(--tui-radius-s); - background-color: #fff; + .tools { + $tool-width: 15rem; + width: $tool-width; + + .bar { + padding: 0.3rem; + width: calc(var(--tui-height-s)); + border-radius: var(--tui-radius-s); + background-color: #fff; + + button { + // --t-size: calc(var(--tui-height-s) + 0.5rem); + + &[tuiIconButton][data-size="s"]:not( + [tuiIconButton][data-appearance="icon"] + ):not([tuiIconButton][data-appearance="link"]):before { + // font-size: 1.2rem; + color: black; + } + } + } - button { - // --t-size: calc(var(--tui-height-s) + 0.5rem); + .select-edit { + border-radius: var(--tui-radius-s); + background-color: #fff; - &[tuiIconButton][data-size="s"]:not( - [tuiIconButton][data-appearance="icon"] - ):not([tuiIconButton][data-appearance="link"]):before { - // font-size: 1.2rem; + button:before { color: black; } + + tui-select { + width: calc($tool-width - var(--tui-height-s)); + } } } - .select-edit { - border-radius: var(--tui-radius-s); + .info-node { + width: 17rem; + padding: 0.3rem; + border-radius: var(--tui-radius-m); background-color: #fff; button:before { color: black; } - - tui-select { - width: calc($tool-width - var(--tui-height-s)); - } } } From 6d73be550e0387f193ff3693c1854628b886a824 Mon Sep 17 00:00:00 2001 From: Mr MRF <79112136+Mr-MRF-Dev@users.noreply.github.com> Date: Wed, 28 Aug 2024 10:24:57 +0330 Subject: [PATCH 091/142] refactor(graph): cahnge some style --- src/app/components/dashboard/graph/graph.component.html | 2 +- src/app/components/dashboard/graph/graph.component.scss | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/app/components/dashboard/graph/graph.component.html b/src/app/components/dashboard/graph/graph.component.html index 7d89435..458e1d7 100644 --- a/src/app/components/dashboard/graph/graph.component.html +++ b/src/app/components/dashboard/graph/graph.component.html @@ -96,7 +96,7 @@ -
+

All (134)

Selected (0)

diff --git a/src/app/components/dashboard/graph/graph.component.scss b/src/app/components/dashboard/graph/graph.component.scss index fa3a0b5..006e009 100644 --- a/src/app/components/dashboard/graph/graph.component.scss +++ b/src/app/components/dashboard/graph/graph.component.scss @@ -22,7 +22,7 @@ .bottom-panel { position: relative; - transform: translateY(-80%); + transform: translateY(-103%); z-index: 9999990; .tools { From 175bc664302a0385c9895210bb15f724b7888fed Mon Sep 17 00:00:00 2001 From: Mr MRF <79112136+Mr-MRF-Dev@users.noreply.github.com> Date: Wed, 28 Aug 2024 12:11:26 +0330 Subject: [PATCH 092/142] feat(graph): Create right panel --- .../dashboard/charts/charts.component.html | 12 +- .../dashboard/graph/graph.component.html | 172 ++++++++++++------ .../dashboard/graph/graph.component.scss | 69 ++++--- .../dashboard/graph/graph.component.ts | 18 +- 4 files changed, 173 insertions(+), 98 deletions(-) diff --git a/src/app/components/dashboard/charts/charts.component.html b/src/app/components/dashboard/charts/charts.component.html index 1c10b40..7a65d8c 100644 --- a/src/app/components/dashboard/charts/charts.component.html +++ b/src/app/components/dashboard/charts/charts.component.html @@ -8,12 +8,8 @@

Charts

- - + +
@@ -39,6 +35,6 @@

Charts

- - + + diff --git a/src/app/components/dashboard/graph/graph.component.html b/src/app/components/dashboard/graph/graph.component.html index 458e1d7..11681e3 100644 --- a/src/app/components/dashboard/graph/graph.component.html +++ b/src/app/components/dashboard/graph/graph.component.html @@ -96,69 +96,129 @@
-
-
-

All (134)

-

Selected (0)

- -
- -
-
- - - - - -
-
- +
+ + + + + + +
+
+ + Force-based layout + + + + + + +
+
+
+ +
+ + + + + + +
+ + - Force-based layout - - - + Filter Categories + + - - + + +
+ +
diff --git a/src/app/components/dashboard/graph/graph.component.scss b/src/app/components/dashboard/graph/graph.component.scss index 006e009..eaf0d80 100644 --- a/src/app/components/dashboard/graph/graph.component.scss +++ b/src/app/components/dashboard/graph/graph.component.scss @@ -20,56 +20,65 @@ flex-direction: column; } -.bottom-panel { +.panel { position: relative; - transform: translateY(-103%); + transform: translateY(-98%); z-index: 9999990; - .tools { - $tool-width: 15rem; - width: $tool-width; + .bottom-panel { + .tools { + $tool-width: 15rem; + width: $tool-width; - .bar { - padding: 0.3rem; - width: calc(var(--tui-height-s)); - border-radius: var(--tui-radius-s); - background-color: #fff; + .bar { + padding: 0.3rem; + width: calc(var(--tui-height-s)); + border-radius: var(--tui-radius-s); + background-color: #fff; - button { - // --t-size: calc(var(--tui-height-s) + 0.5rem); + button { + // --t-size: calc(var(--tui-height-s) + 0.5rem); - &[tuiIconButton][data-size="s"]:not( - [tuiIconButton][data-appearance="icon"] - ):not([tuiIconButton][data-appearance="link"]):before { - // font-size: 1.2rem; + &[tuiIconButton][data-size="s"]:not( + [tuiIconButton][data-appearance="icon"] + ):not([tuiIconButton][data-appearance="link"]):before { + // font-size: 1.2rem; + color: black; + } + } + } + + .select-edit { + border-radius: var(--tui-radius-s); + background-color: #fff; + + button:before { color: black; } + + tui-select { + width: calc($tool-width - var(--tui-height-s)); + } } } - .select-edit { - border-radius: var(--tui-radius-s); + .info-node { + width: 17rem; + padding: 0.3rem; + border-radius: var(--tui-radius-m); background-color: #fff; button:before { color: black; } - - tui-select { - width: calc($tool-width - var(--tui-height-s)); - } } } - .info-node { - width: 17rem; - padding: 0.3rem; - border-radius: var(--tui-radius-m); + .right-panel { + height: calc(100% - 3rem); + width: 18rem; + position: relative; background-color: #fff; - - button:before { - color: black; - } } } diff --git a/src/app/components/dashboard/graph/graph.component.ts b/src/app/components/dashboard/graph/graph.component.ts index 3e8f440..1427d06 100644 --- a/src/app/components/dashboard/graph/graph.component.ts +++ b/src/app/components/dashboard/graph/graph.component.ts @@ -9,15 +9,15 @@ import { cytoLayout } from './cytoProps/cytoLayout'; import { cxtMenuDefaults } from './cytoProps/cxtMenuDefaults'; import { SearchBarComponent } from './search-bar/search-bar.component'; import { TuiCardLarge } from '@taiga-ui/layout'; -import { TuiChip } from '@taiga-ui/kit'; -import { TuiButton, TuiIcon, TuiSurface } from '@taiga-ui/core'; +import { TuiChip, TuiRadioList } from '@taiga-ui/kit'; +import { TuiButton, TuiIcon, TuiSurface, TuiTextfield } from '@taiga-ui/core'; import { TuiButtonClose } from '@taiga-ui/kit'; import { TuiTabs } from '@taiga-ui/kit'; import { CommonModule } from '@angular/common'; -import { FormControl, ReactiveFormsModule } from '@angular/forms'; +import { FormControl, FormsModule, ReactiveFormsModule } from '@angular/forms'; import { TuiDataList } from '@taiga-ui/core'; import { TuiDataListWrapper } from '@taiga-ui/kit'; -import { TuiSelectModule, TuiTextfieldControllerModule } from '@taiga-ui/legacy'; +import { TuiInputModule, TuiSelectModule, TuiTextfieldControllerModule } from '@taiga-ui/legacy'; @Component({ selector: 'app-graph', @@ -32,12 +32,17 @@ import { TuiSelectModule, TuiTextfieldControllerModule } from '@taiga-ui/legacy' TuiButton, TuiButtonClose, TuiTabs, + FormsModule, CommonModule, TuiSelectModule, TuiTextfieldControllerModule, ReactiveFormsModule, TuiDataListWrapper, TuiDataList, + TuiRadioList, + // ReactiveFormsModule, + TuiInputModule, + TuiTextfield, ], templateUrl: './graph.component.html', styleUrl: './graph.component.scss', @@ -50,8 +55,13 @@ export class GraphComponent implements AfterViewInit { "node 3", ]; + protected readonly radio_ops = ['All', "In Scene", 'Off Scene']; + protected redio_target = this.radio_ops[0]; + protected select_form = new FormControl(null); + protected filter_text = new FormControl(null); + protected activeRightPanelTab = 0; protected items = [ { From 923e97bc2306592471d87bff0b3f4126f012fb96 Mon Sep 17 00:00:00 2001 From: Mr MRF <79112136+Mr-MRF-Dev@users.noreply.github.com> Date: Sat, 31 Aug 2024 01:07:40 +0330 Subject: [PATCH 093/142] refactor(Users): styles & responsive --- .../dashboard/users/users.component.html | 10 +- .../dashboard/users/users.component.scss | 77 +++++++-- .../dashboard/users/users.component.ts | 151 ++++++++++++++++-- 3 files changed, 216 insertions(+), 22 deletions(-) diff --git a/src/app/components/dashboard/users/users.component.html b/src/app/components/dashboard/users/users.component.html index 6334325..60c23b3 100644 --- a/src/app/components/dashboard/users/users.component.html +++ b/src/app/components/dashboard/users/users.component.html @@ -1,8 +1,10 @@
-
+ - -
Lorem ipsum dolor sit amet consectetur adipisicing elit. Modi illo quidem laudantium iste quibusdam eius officia perspiciatis fuga odit diff --git a/src/app/components/dashboard/profile/profile.component.ts b/src/app/components/dashboard/profile/profile.component.ts index bf688e2..46f74a3 100644 --- a/src/app/components/dashboard/profile/profile.component.ts +++ b/src/app/components/dashboard/profile/profile.component.ts @@ -4,13 +4,9 @@ import { Component, inject, INJECTOR, + OnInit, } from '@angular/core'; -import { - ReactiveFormsModule, - FormControl, - FormGroup, - Validators, -} from '@angular/forms'; +import { ReactiveFormsModule } from '@angular/forms'; import { TuiButton, TuiIcon, @@ -36,7 +32,7 @@ import { ChangePassDialogComponent } from './change-pass-dialog/change-pass-dial import type { TuiConfirmData } from '@taiga-ui/kit'; import { AuthService } from '../../../services/auth/auth.service'; import { Router } from '@angular/router'; -import { OnInit } from '@angular/core'; +import { EditDialogComponent } from './edit-dialog/edit-dialog.component'; @Component({ selector: 'app-profile', @@ -79,39 +75,30 @@ export class ProfileComponent implements OnInit { new PolymorpheusComponent(ChangePassDialogComponent, this.injector) ); - protected form = new FormGroup({ - first_name: new FormControl('name', Validators.required), - last_name: new FormControl('family', Validators.required), - email: new FormControl('mail@mail.com', [ - Validators.required, - Validators.email, - ]), - }); - - constructor(private authService: AuthService, private router: Router) { } - ngOnInit(): void { - this.form.disable(); - } + private readonly editDialog = this.dialogs.open( + new PolymorpheusComponent(EditDialogComponent, this.injector) + ); - editHandler() { - if (this.form.enabled) { - if (this.form.valid) { - // api call here + constructor(private authService: AuthService, private router: Router) {} - // after success - this.form.disable(); - } else { - this.form.markAllAsTouched(); + ngOnInit(): void { + this.authService.getCurrentUser().subscribe((user) => { + if (user) { + this.name = `${user.firstName} ${user.lastName}`; + this.username = user.username; + this.roles = user.roles.map((role) => role.roleType); } - } else { - this.form.enable(); - } + }); } protected showChangePassDialog(): void { this.changePassDialog.subscribe(); } + protected showUpdateInfoDialog(): void { + this.editDialog.subscribe(); + } + protected showLogoutDialog(): void { const data: TuiConfirmData = { content: 'Are you sure you want to logout?', From 8dbcb1449a831e3bc99ab809ec01540c64d2d9e2 Mon Sep 17 00:00:00 2001 From: Mr MRF <79112136+Mr-MRF-Dev@users.noreply.github.com> Date: Mon, 9 Sep 2024 02:42:47 +0330 Subject: [PATCH 117/142] feat(dashboard): add logout button in aside --- .../dashboard/dashboard.component.html | 6 +- .../dashboard/dashboard.component.ts | 100 ++++++++++++------ 2 files changed, 70 insertions(+), 36 deletions(-) diff --git a/src/app/components/dashboard/dashboard.component.html b/src/app/components/dashboard/dashboard.component.html index 75c3a48..928c50c 100644 --- a/src/app/components/dashboard/dashboard.component.html +++ b/src/app/components/dashboard/dashboard.component.html @@ -71,15 +71,15 @@ - diff --git a/src/app/components/dashboard/dashboard.component.ts b/src/app/components/dashboard/dashboard.component.ts index 4f97224..ac3a447 100644 --- a/src/app/components/dashboard/dashboard.component.ts +++ b/src/app/components/dashboard/dashboard.component.ts @@ -1,52 +1,86 @@ // import angular import { ChangeDetectionStrategy, Component } from '@angular/core'; +import { Router } from '@angular/router'; import { RouterLink, RouterLinkActive, RouterOutlet } from '@angular/router'; import { TitleCasePipe } from '@angular/common'; // import tui import { - TuiButton, - TuiIcon, - TuiScrollbar, + TuiButton, + TuiDialogService, + TuiIcon, + TuiScrollbar, } from '@taiga-ui/core'; import { - TuiBadgeNotification, - TuiFade, + TUI_CONFIRM, + TuiBadgeNotification, + TuiConfirmData, + TuiFade, } from '@taiga-ui/kit'; import { TuiCardLarge, TuiNavigation } from '@taiga-ui/layout'; +import { AuthService } from '../../services/auth/auth.service'; @Component({ - imports: [ - TuiNavigation, - TuiScrollbar, - TuiButton, - TuiIcon, - TuiFade, - TuiBadgeNotification, - TitleCasePipe, - TuiCardLarge, - RouterOutlet, - RouterLink, - RouterLinkActive, - ], - changeDetection: ChangeDetectionStrategy.OnPush, - standalone: true, - selector: 'app-dashboard', - templateUrl: './dashboard.component.html', - styleUrl: './dashboard.component.scss' + imports: [ + TuiNavigation, + TuiScrollbar, + TuiButton, + TuiIcon, + TuiFade, + TuiBadgeNotification, + TitleCasePipe, + TuiCardLarge, + RouterOutlet, + RouterLink, + RouterLinkActive, + ], + changeDetection: ChangeDetectionStrategy.OnPush, + standalone: true, + selector: 'app-dashboard', + templateUrl: './dashboard.component.html', + styleUrl: './dashboard.component.scss', }) export class DashboardComponent { - protected title = "FrontEnd App"; - protected full_name = "name family"; - protected expanded = true; + protected expanded = true; + + constructor( + private dialogs: TuiDialogService, + private authService: AuthService, + private router: Router + ) {} + + isPcMode(): boolean { + const pcModeThreshold = 768; + return window.innerWidth >= pcModeThreshold; + } + buttonSize(): TuiButton['size'] { + return this.isPcMode() ? 'm' : 's'; + } - isPcMode(): boolean { - const pcModeThreshold = 768; - return window.innerWidth >= pcModeThreshold; - } + logout() { + const data: TuiConfirmData = { + content: 'Are you sure you want to logout?', + yes: 'Yes', + no: 'No', + }; - buttonSize(): TuiButton["size"] { - return this.isPcMode() ? 'm' : 's'; - } + this.dialogs + .open(TUI_CONFIRM, { + label: 'Logout', + size: 's', + data, + }) + .subscribe({ + next: (result) => { + if (result) { + this.authService.logOutUser().subscribe({ + next: () => { + this.router.navigate(['/login']); + }, + }); + } + }, + }); + } } From 812fab4d0c70fa57626c86e349ffc7dcf7babd52 Mon Sep 17 00:00:00 2001 From: Mr MRF <79112136+Mr-MRF-Dev@users.noreply.github.com> Date: Mon, 9 Sep 2024 03:01:38 +0330 Subject: [PATCH 118/142] chore(change pass): remove loading --- .../change-pass-dialog.component.html | 17 ++++++++++++++- .../change-pass-dialog.component.ts | 21 ++++++++++--------- .../edit-dialog/edit-dialog.component.html | 2 +- .../edit-dialog/edit-dialog.component.ts | 8 ------- 4 files changed, 28 insertions(+), 20 deletions(-) diff --git a/src/app/components/dashboard/profile/change-pass-dialog/change-pass-dialog.component.html b/src/app/components/dashboard/profile/change-pass-dialog/change-pass-dialog.component.html index d2294bc..409e378 100644 --- a/src/app/components/dashboard/profile/change-pass-dialog/change-pass-dialog.component.html +++ b/src/app/components/dashboard/profile/change-pass-dialog/change-pass-dialog.component.html @@ -1,5 +1,20 @@

Change Password

+ +
    +
  • The password must be at least 8 characters long.
  • +
  • + It must contain at least one uppercase letter (A-Z). +
  • +
  • + It must contain at least one special character from the set !@#$%^&*. +
  • +
  • + It can contain lowercase letters (a-z), digits (0-9), and the special + characters mentioned above. +
  • +
+ Change Password
-
- Lorem ipsum dolor sit amet consectetur adipisicing elit. Modi illo - quidem laudantium iste quibusdam eius officia perspiciatis fuga odit - unde consequuntur a sequi eaque facere ratione aliquam, quo, dolorum - iure. -
+ + Documentation +

Documentation

+ learn more about the app and how to use it +
+ + + Repository +

Repository

+ view the source code of the app and contribute to its improvement +
+ + + support +

Support

+ get help from the community and the developers +
diff --git a/src/app/components/dashboard/profile/profile.component.scss b/src/app/components/dashboard/profile/profile.component.scss index c8b2d0a..8afc5ac 100644 --- a/src/app/components/dashboard/profile/profile.component.scss +++ b/src/app/components/dashboard/profile/profile.component.scss @@ -6,7 +6,7 @@ #bg-user { background: url("/user-bg.jpeg") no-repeat center / cover; - height: 14rem; + height: 10rem; border-radius: 0; border: 0; @@ -31,10 +31,27 @@ transform: translateY(-2rem); } - #quotes { - border: 1px dashed #c2c2c2; - background-color: var(--tui-background-base-alt); - color: var(--tui-text-primary); + .info-card { + display: flex; + flex-direction: column; + justify-content: center; + align-items: center; + padding-inline: 3rem; + gap: 1rem; + + text-align: center; + + img { + $img-size: 9rem; + width: $img-size; + height: $img-size; + } + + h4 { + font-size: 1.5rem; + font-weight: bold; + margin-block-start: 0.5rem; + } } } } diff --git a/src/app/components/dashboard/profile/profile.component.ts b/src/app/components/dashboard/profile/profile.component.ts index 46f74a3..4e19380 100644 --- a/src/app/components/dashboard/profile/profile.component.ts +++ b/src/app/components/dashboard/profile/profile.component.ts @@ -22,7 +22,7 @@ import { TuiFade, TUI_CONFIRM, } from '@taiga-ui/kit'; -import { TuiCardLarge } from '@taiga-ui/layout'; +import { TuiBlockStatus, TuiCardLarge } from '@taiga-ui/layout'; import { AvatarTextPipe } from '../../../pipes/avatar-text.pipe'; import { UsernamePipe } from '../../../pipes/username.pipe'; import { RoleAppearancePipe } from '../../../pipes/role-appearance.pipe'; @@ -33,6 +33,7 @@ import type { TuiConfirmData } from '@taiga-ui/kit'; import { AuthService } from '../../../services/auth/auth.service'; import { Router } from '@angular/router'; import { EditDialogComponent } from './edit-dialog/edit-dialog.component'; +import { environment } from '../../../../environments/environment'; @Component({ selector: 'app-profile', @@ -58,6 +59,7 @@ import { EditDialogComponent } from './edit-dialog/edit-dialog.component'; RoleAppearancePipe, TuiChip, NgForOf, + TuiBlockStatus, ], templateUrl: './profile.component.html', styleUrl: './profile.component.scss', @@ -81,7 +83,11 @@ export class ProfileComponent implements OnInit { constructor(private authService: AuthService, private router: Router) {} + protected github_repo!: string; + ngOnInit(): void { + this.github_repo = environment.githubRepo; + this.authService.getCurrentUser().subscribe((user) => { if (user) { this.name = `${user.firstName} ${user.lastName}`; From 0154ce4b446d8c2a8cbf69121abddac16b2d659e Mon Sep 17 00:00:00 2001 From: Mr MRF <79112136+Mr-MRF-Dev@users.noreply.github.com> Date: Mon, 9 Sep 2024 03:56:25 +0330 Subject: [PATCH 120/142] feat(User Update): added tests --- .../services/user/user-update.service.spec.ts | 82 ++++++++++++++++++- 1 file changed, 81 insertions(+), 1 deletion(-) diff --git a/src/app/services/user/user-update.service.spec.ts b/src/app/services/user/user-update.service.spec.ts index 355e7d6..821bb08 100644 --- a/src/app/services/user/user-update.service.spec.ts +++ b/src/app/services/user/user-update.service.spec.ts @@ -1,16 +1,96 @@ import { TestBed } from '@angular/core/testing'; import { UserUpdateService } from './user-update.service'; +import { + HttpClientTestingModule, + HttpTestingController, +} from '@angular/common/http/testing'; +import { NotificationService } from '../notif/notification.service'; +import { environment } from '../../../environments/environment'; +import { UserResponse } from '../../models/api/userResponse'; describe('UserUpdateService', () => { let service: UserUpdateService; + let httpMock: HttpTestingController; + let notificationServiceSpy: jasmine.SpyObj; beforeEach(() => { - TestBed.configureTestingModule({}); + const spy = jasmine.createSpyObj('NotificationService', ['showSuccess']); + + TestBed.configureTestingModule({ + imports: [HttpClientTestingModule], + providers: [ + UserUpdateService, + { provide: NotificationService, useValue: spy }, + ], + }); + service = TestBed.inject(UserUpdateService); + httpMock = TestBed.inject(HttpTestingController); + notificationServiceSpy = TestBed.inject( + NotificationService + ) as jasmine.SpyObj; + }); + + afterEach(() => { + httpMock.verify(); }); it('should be created', () => { expect(service).toBeTruthy(); }); + + it('should call the update API and show success notification', () => { + const mockResponse: UserResponse = { + data: { + username: 'john.doe', + firstName: 'John', + lastName: 'Doe', + email: 'john.doe@example.com', + roles: [], + }, + type: 200, + message: '', + }; + const firstName = 'John'; + const lastName = 'Doe'; + const email = 'john.doe@example.com'; + + service.editUser(firstName, lastName, email).subscribe((response) => { + expect(response).toEqual(mockResponse); + }); + + const req = httpMock.expectOne(`${environment.apiBaseUrl}/user/update`); + expect(req.request.method).toBe('PUT'); + expect(req.request.body).toEqual({ firstName, lastName, email }); + + req.flush(mockResponse); + + const message = ''; + expect(notificationServiceSpy.showSuccess).toHaveBeenCalledWith( + message, + '' + ); + }); + + it('should handle error response', () => { + const firstName = 'John'; + const lastName = 'Doe'; + const email = 'john.doe@example.com'; + + service.editUser(firstName, lastName, email).subscribe( + () => fail('should have failed with the 500 error'), + (error) => { + expect(error.status).toBe(500); + } + ); + + const req = httpMock.expectOne(`${environment.apiBaseUrl}/user/update`); + expect(req.request.method).toBe('PUT'); + + req.flush('Something went wrong', { + status: 500, + statusText: 'Server Error', + }); + }); }); From 285ff8ecdb651ae57a492473da11460125bde2ad Mon Sep 17 00:00:00 2001 From: Mr MRF <79112136+Mr-MRF-Dev@users.noreply.github.com> Date: Mon, 9 Sep 2024 04:02:37 +0330 Subject: [PATCH 121/142] feat(change pass service): added tests --- src/app/models/api/changepassResponse.ts | 2 +- .../user/change-password.service.spec.ts | 73 ++++++++++++++++++- 2 files changed, 72 insertions(+), 3 deletions(-) diff --git a/src/app/models/api/changepassResponse.ts b/src/app/models/api/changepassResponse.ts index bfaf500..efddd37 100644 --- a/src/app/models/api/changepassResponse.ts +++ b/src/app/models/api/changepassResponse.ts @@ -1,5 +1,5 @@ export interface ChangepassResponse { - data: Record; + data: object; type: number; message: string; } diff --git a/src/app/services/user/change-password.service.spec.ts b/src/app/services/user/change-password.service.spec.ts index a0548de..4a9ecd1 100644 --- a/src/app/services/user/change-password.service.spec.ts +++ b/src/app/services/user/change-password.service.spec.ts @@ -1,16 +1,85 @@ import { TestBed } from '@angular/core/testing'; - +import { + HttpClientTestingModule, + HttpTestingController, +} from '@angular/common/http/testing'; import { ChangePasswordService } from './change-password.service'; +import { NotificationService } from '../notif/notification.service'; +import { ChangepassResponse } from '../../models/api/changepassResponse'; +import { environment } from '../../../environments/environment'; describe('ChangePasswordService', () => { let service: ChangePasswordService; + let httpMock: HttpTestingController; + let notificationServiceSpy: jasmine.SpyObj; beforeEach(() => { - TestBed.configureTestingModule({}); + const spy = jasmine.createSpyObj('NotificationService', ['showSuccess']); + + TestBed.configureTestingModule({ + imports: [HttpClientTestingModule], + providers: [ + ChangePasswordService, + { provide: NotificationService, useValue: spy }, + ], + }); + service = TestBed.inject(ChangePasswordService); + httpMock = TestBed.inject(HttpTestingController); + notificationServiceSpy = TestBed.inject( + NotificationService + ) as jasmine.SpyObj; + }); + + afterEach(() => { + httpMock.verify(); }); it('should be created', () => { expect(service).toBeTruthy(); }); + + it('should change password successfully', () => { + const mockResponse: ChangepassResponse = { + data: {}, + type: 200, + message: 'Password changed successfully', + }; + const previousPassword = 'oldPassword'; + const newPassword = 'newPassword'; + + service + .changePassword(previousPassword, newPassword) + .subscribe((response) => { + expect(response).toEqual(mockResponse); + }); + + const req = httpMock.expectOne(`${environment.apiBaseUrl}/user/password`); + expect(req.request.method).toBe('PATCH'); + expect(req.request.body).toEqual({ previousPassword, newPassword }); + req.flush(mockResponse); + + expect(notificationServiceSpy.showSuccess).toHaveBeenCalled(); + }); + + it('should handle error when changing password', () => { + const previousPassword = 'oldPassword'; + const newPassword = 'newPassword'; + + service.changePassword(previousPassword, newPassword).subscribe({ + next: () => fail('should have failed with the 500 error'), + error: (error) => { + expect(error.status).toBe(500); + }, + }); + + const req = httpMock.expectOne(`${environment.apiBaseUrl}/user/password`); + expect(req.request.method).toBe('PATCH'); + req.flush('Something went wrong', { + status: 500, + statusText: 'Server Error', + }); + + expect(notificationServiceSpy.showSuccess).not.toHaveBeenCalled(); + }); }); From 0c1f24adfb4a6aaf9937ebca045db6ec9d57281d Mon Sep 17 00:00:00 2001 From: Mr MRF <79112136+Mr-MRF-Dev@users.noreply.github.com> Date: Mon, 9 Sep 2024 04:10:18 +0330 Subject: [PATCH 122/142] fix(auth service): fix tests --- src/app/services/auth/auth.service.spec.ts | 16 ++-------------- 1 file changed, 2 insertions(+), 14 deletions(-) diff --git a/src/app/services/auth/auth.service.spec.ts b/src/app/services/auth/auth.service.spec.ts index 7a3b304..4070536 100644 --- a/src/app/services/auth/auth.service.spec.ts +++ b/src/app/services/auth/auth.service.spec.ts @@ -6,7 +6,6 @@ import { import { AuthService } from './auth.service'; import { environment } from '../../../environments/environment'; import { LoginBody } from '../../models/api/loginBody'; -import { User } from '../../models/user'; import { LoginResponse } from '../../models/api/loginResponse'; import { of } from 'rxjs'; @@ -92,7 +91,7 @@ describe('AuthService', () => { service.loginUser(mockCredentials).subscribe({ error: (error) => { expect(error.message).toBe( - 'Unauthorized. Incorrect username or password.' + `Http failure response for ${environment.apiBaseUrl}/Authentication/login: 401 Unauthorized` ); }, }); @@ -104,20 +103,9 @@ describe('AuthService', () => { }); it('should log out the user and clear the currentUserSubject', () => { - const mockUser: User = { - username: 'testuser', - firstName: 'Test', - lastName: 'User', - email: 'testuser@example.com', - roles: [{ roleType: 'Admin' }], - }; - localStorage.setItem('savedCurrentUser', JSON.stringify(mockUser)); - spyOn(service['http'], 'post').and.returnValue(of(void 0)); service.logOutUser().subscribe(() => { - expect(localStorage.getItem('savedCurrentUser')).toBeNull(); - service.getCurrentUser().subscribe((user) => { expect(user).toBeUndefined(); }); @@ -125,7 +113,7 @@ describe('AuthService', () => { expect(service['http'].post).toHaveBeenCalledWith( `${environment.apiBaseUrl}/Authentication/logout`, - {} + { withCredentials: true } ); }); }); From fb911ba83e88562d5391127aa9f1cd0d9ac78b98 Mon Sep 17 00:00:00 2001 From: Mr MRF <79112136+Mr-MRF-Dev@users.noreply.github.com> Date: Mon, 9 Sep 2024 04:14:31 +0330 Subject: [PATCH 123/142] fix(login): fix tests --- src/app/components/login/login.component.spec.ts | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/app/components/login/login.component.spec.ts b/src/app/components/login/login.component.spec.ts index 730250c..4130e9b 100644 --- a/src/app/components/login/login.component.spec.ts +++ b/src/app/components/login/login.component.spec.ts @@ -71,16 +71,16 @@ describe('LoginComponent', () => { expect(passwordControl?.valid).toBeFalse(); }); - it('should render the "Sign in" text inside the tuiCardLarge', () => { + it('should render the "Welcome Back" text inside the tuiCardLarge', () => { const cardTitle = fixture.debugElement.query( By.css('.tui-island__title') ).nativeElement; - expect(cardTitle.textContent).toContain('Sign in'); + expect(cardTitle.textContent).toContain('Welcome Back'); }); it('should render a login button', () => { const loginButton = fixture.debugElement.query( - By.css('button[appearance="accent"]') + By.css('button[type="submit"]') ); expect(loginButton).toBeTruthy(); expect(loginButton.nativeElement.textContent).toContain('Login'); @@ -92,7 +92,7 @@ describe('LoginComponent', () => { fixture.detectChanges(); const loginButton = fixture.debugElement.query( - By.css('button[appearance="accent"]') + By.css('button[type="submit"]') ).nativeElement; expect(loginButton.disabled).toBeTrue(); From a28d034d182cc3afdb3af70f0b11c3b62f8f0571 Mon Sep 17 00:00:00 2001 From: Mr MRF <79112136+Mr-MRF-Dev@users.noreply.github.com> Date: Mon, 9 Sep 2024 05:46:09 +0330 Subject: [PATCH 124/142] feat(edit dialog): added tests --- .../edit-dialog/edit-dialog.component.html | 2 +- .../edit-dialog/edit-dialog.component.spec.ts | 164 +++++++++++++++++- .../edit-dialog/edit-dialog.component.ts | 2 +- 3 files changed, 165 insertions(+), 3 deletions(-) diff --git a/src/app/components/dashboard/profile/edit-dialog/edit-dialog.component.html b/src/app/components/dashboard/profile/edit-dialog/edit-dialog.component.html index 963bd69..2464238 100644 --- a/src/app/components/dashboard/profile/edit-dialog/edit-dialog.component.html +++ b/src/app/components/dashboard/profile/edit-dialog/edit-dialog.component.html @@ -31,7 +31,7 @@

Update Information

size="m" tuiButton [disabled]="form.invalid" - type="button" + type="submit" (click)="submit()" > Submit diff --git a/src/app/components/dashboard/profile/edit-dialog/edit-dialog.component.spec.ts b/src/app/components/dashboard/profile/edit-dialog/edit-dialog.component.spec.ts index 472a4a8..eec4052 100644 --- a/src/app/components/dashboard/profile/edit-dialog/edit-dialog.component.spec.ts +++ b/src/app/components/dashboard/profile/edit-dialog/edit-dialog.component.spec.ts @@ -1,6 +1,15 @@ import { ComponentFixture, TestBed } from '@angular/core/testing'; import { EditDialogComponent } from './edit-dialog.component'; +import { of } from 'rxjs'; +import { POLYMORPHEUS_CONTEXT } from '@taiga-ui/polymorpheus'; +import { TuiButton, TuiTextfield, TuiTitle } from '@taiga-ui/core'; +import { TuiInputModule, TuiTextfieldControllerModule } from '@taiga-ui/legacy'; +import { FormBuilder, ReactiveFormsModule } from '@angular/forms'; +import { TuiButtonLoading } from '@taiga-ui/kit'; +import { UserUpdateService } from '../../../../services/user/user-update.service'; +import { AuthService } from '../../../../services/auth/auth.service'; +import { By } from '@angular/platform-browser'; describe('EditDialogComponent', () => { let component: EditDialogComponent; @@ -8,7 +17,58 @@ describe('EditDialogComponent', () => { beforeEach(async () => { await TestBed.configureTestingModule({ - imports: [EditDialogComponent], + imports: [ + EditDialogComponent, + TuiTitle, + TuiInputModule, + TuiTextfield, + ReactiveFormsModule, + TuiTextfieldControllerModule, + TuiButton, + TuiButtonLoading, + ], + providers: [ + { + provide: POLYMORPHEUS_CONTEXT, + useValue: jasmine.createSpyObj({ + open: jasmine.createSpyObj({ + afterClosed: of('closed'), + }), + }), + }, + { + provide: FormBuilder, + useClass: FormBuilder, + }, + { + provide: UserUpdateService, + useValue: jasmine.createSpyObj({ + editUser: of({ + data: { + username: 'testuser', + firstName: 'Test', + lastName: 'User', + email: 'test@test.test', + roles: [{ roleType: 'Admin' }], + }, + type: 200, + message: 'string', + }), + }), + }, + { + provide: AuthService, + useValue: jasmine.createSpyObj({ + getCurrentUser: of({ + username: 'testuser', + firstName: 'Test', + lastName: 'User', + email: 'test@test.co', + roles: [{ roleType: 'Admin' }], + }), + }), + }, + ], }).compileComponents(); fixture = TestBed.createComponent(EditDialogComponent); @@ -19,4 +79,106 @@ describe('EditDialogComponent', () => { it('should create', () => { expect(component).toBeTruthy(); }); + + it("should call the authService's getCurrentUser method", () => { + const authService = TestBed.inject(AuthService); + expect(authService.getCurrentUser).toHaveBeenCalled(); + }); + + it('should inputs have user info when init', () => { + expect(component.form.controls['name'].value).toEqual('Test'); + expect(component.form.controls['family'].value).toEqual('User'); + expect(component.form.controls['email'].value).toEqual('test@test.co'); + }); + + it('should make the name control required and validate its length', () => { + const nameControl = component.form.get('name'); + nameControl?.setValue(''); + expect(nameControl?.valid).toBeFalse(); + + nameControl?.setValue('A'); + expect(nameControl?.valid).toBeFalse(); + + nameControl?.setValue('AB'); + expect(nameControl?.valid).toBeFalse(); + + nameControl?.setValue('ABC'); + expect(nameControl?.valid).toBeTrue(); + }); + + it('should make the family control required and validate its length', () => { + const familyControl = component.form.get('family'); + familyControl?.setValue(''); + expect(familyControl?.valid).toBeFalse(); + + familyControl?.setValue('A'); + expect(familyControl?.valid).toBeFalse(); + + familyControl?.setValue('AB'); + expect(familyControl?.valid).toBeFalse(); + + familyControl?.setValue('ABC'); + expect(familyControl?.valid).toBeTrue(); + }); + + it('should validate the email control', () => { + const emailControl = component.form.get('email'); + emailControl?.setValue(''); + expect(emailControl?.valid).toBeFalse(); + + emailControl?.setValue('invalid-email'); + expect(emailControl?.valid).toBeFalse(); + + emailControl?.setValue('user@example.com'); + expect(emailControl?.valid).toBeTrue(); + }); + + it('disables the submit button when the edit form is invalid', () => { + const submitButton = fixture.debugElement.query( + By.css('button[type="submit"]') + ); + component.form.setValue({ + name: '', + family: '', + email: '', + }); + + fixture.detectChanges(); + expect(submitButton.nativeElement.disabled).toBeTrue(); + }); + + it('enables the submit button when the edit form is valid', () => { + const submitButton = fixture.debugElement.query( + By.css('button[type="submit"]') + ); + component.form.setValue({ + name: 'wwweeee', + family: 'Doe', + email: 'John@Doe.dev', + }); + + fixture.detectChanges(); + expect(submitButton.nativeElement.disabled).toBeFalse(); + }); + + it('should call the update service when the form is submitted', () => { + const updateService = TestBed.inject(UserUpdateService); + const formValue = { + name: 'John', + family: 'Doe', + email: 'John@Doe.dev', + }; + component.form.setValue(formValue); + + const submitButton = fixture.debugElement.query( + By.css('button[type="submit"]') + ); + submitButton.nativeElement.click(); + + expect(updateService.editUser).toHaveBeenCalledWith( + formValue.name, + formValue.family, + formValue.email + ); + }); }); diff --git a/src/app/components/dashboard/profile/edit-dialog/edit-dialog.component.ts b/src/app/components/dashboard/profile/edit-dialog/edit-dialog.component.ts index 4b4c47c..3a54de5 100644 --- a/src/app/components/dashboard/profile/edit-dialog/edit-dialog.component.ts +++ b/src/app/components/dashboard/profile/edit-dialog/edit-dialog.component.ts @@ -33,7 +33,7 @@ import { AuthService } from '../../../../services/auth/auth.service'; export class EditDialogComponent implements OnInit { private readonly context = inject(POLYMORPHEUS_CONTEXT); - protected form!: FormGroup; + form!: FormGroup; constructor( private fb: FormBuilder, From 5373e312cbff32df5135dcee9fcb0749eaa02409 Mon Sep 17 00:00:00 2001 From: Mr MRF <79112136+Mr-MRF-Dev@users.noreply.github.com> Date: Mon, 9 Sep 2024 05:56:21 +0330 Subject: [PATCH 125/142] feat(change pass): added tests --- .../change-pass-dialog.component.html | 2 +- .../change-pass-dialog.component.spec.ts | 103 +++++++++++++++++- .../change-pass-dialog.component.ts | 2 +- 3 files changed, 102 insertions(+), 5 deletions(-) diff --git a/src/app/components/dashboard/profile/change-pass-dialog/change-pass-dialog.component.html b/src/app/components/dashboard/profile/change-pass-dialog/change-pass-dialog.component.html index 409e378..5919ddf 100644 --- a/src/app/components/dashboard/profile/change-pass-dialog/change-pass-dialog.component.html +++ b/src/app/components/dashboard/profile/change-pass-dialog/change-pass-dialog.component.html @@ -37,7 +37,7 @@

Change Password

size="m" tuiButton [disabled]="form.invalid" - type="button" + type="submit" (click)="submit()" > Submit diff --git a/src/app/components/dashboard/profile/change-pass-dialog/change-pass-dialog.component.spec.ts b/src/app/components/dashboard/profile/change-pass-dialog/change-pass-dialog.component.spec.ts index e12f2e0..2c6d75a 100644 --- a/src/app/components/dashboard/profile/change-pass-dialog/change-pass-dialog.component.spec.ts +++ b/src/app/components/dashboard/profile/change-pass-dialog/change-pass-dialog.component.spec.ts @@ -2,15 +2,59 @@ import { ComponentFixture, TestBed } from '@angular/core/testing'; import { ChangePassDialogComponent } from './change-pass-dialog.component'; +import { of } from 'rxjs'; +import { POLYMORPHEUS_CONTEXT } from '@taiga-ui/polymorpheus'; +import { TuiButton, TuiTextfield, TuiTitle } from '@taiga-ui/core'; +import { + TuiInputPasswordModule, + TuiTextfieldControllerModule, +} from '@taiga-ui/legacy'; +import { FormBuilder, ReactiveFormsModule } from '@angular/forms'; +import { TuiButtonLoading } from '@taiga-ui/kit'; +import { By } from '@angular/platform-browser'; +import { ChangePasswordService } from '../../../../services/user/change-password.service'; + describe('ChangePassDialogComponent', () => { let component: ChangePassDialogComponent; let fixture: ComponentFixture; beforeEach(async () => { await TestBed.configureTestingModule({ - imports: [ChangePassDialogComponent] - }) - .compileComponents(); + imports: [ + ChangePassDialogComponent, + TuiTitle, + TuiInputPasswordModule, + TuiTextfield, + ReactiveFormsModule, + TuiTextfieldControllerModule, + TuiButton, + TuiButtonLoading, + ], + providers: [ + { + provide: POLYMORPHEUS_CONTEXT, + useValue: jasmine.createSpyObj({ + open: jasmine.createSpyObj({ + afterClosed: of('closed'), + }), + }), + }, + { + provide: FormBuilder, + useClass: FormBuilder, + }, + { + provide: ChangePasswordService, + useValue: jasmine.createSpyObj({ + changePassword: of({ + data: {}, + type: 200, + message: 'string', + }), + }), + }, + ], + }).compileComponents(); fixture = TestBed.createComponent(ChangePassDialogComponent); component = fixture.componentInstance; @@ -20,4 +64,57 @@ describe('ChangePassDialogComponent', () => { it('should create', () => { expect(component).toBeTruthy(); }); + + it('should make the oldPass control required and validate its length', () => { + const oldPassControl = component.form.get('oldPass'); + oldPassControl?.setValue(''); + expect(oldPassControl?.valid).toBeFalse(); + + oldPassControl?.setValue('abc'); + expect(oldPassControl?.valid).toBeTrue(); + }); + + it('should make the newPass control required and validate its length', () => { + const newPassControl = component.form.get('newPass'); + newPassControl?.setValue(''); + expect(newPassControl?.valid).toBeFalse(); + + newPassControl?.setValue('abc'); + expect(newPassControl?.valid).toBeFalse(); + + newPassControl?.setValue('asassasasas'); + expect(newPassControl?.valid).toBeFalse(); + + newPassControl?.setValue('StrongnewPass'); + expect(newPassControl?.valid).toBeFalse(); + + newPassControl?.setValue('strongpP!@assword'); + expect(newPassControl?.valid).toBeTrue(); + }); + + it('disables the submit button when the edit form is invalid', () => { + const submitButton = fixture.debugElement.query( + By.css('button[type="submit"]') + ); + component.form.setValue({ + oldPass: '', + newPass: '', + }); + + fixture.detectChanges(); + expect(submitButton.nativeElement.disabled).toBeTrue(); + }); + + it('enables the submit button when the edit form is valid', () => { + const submitButton = fixture.debugElement.query( + By.css('button[type="submit"]') + ); + component.form.setValue({ + oldPass: 'admin', + newPass: 'AdminWWEEE@@@123', + }); + + fixture.detectChanges(); + expect(submitButton.nativeElement.disabled).toBeFalse(); + }); }); diff --git a/src/app/components/dashboard/profile/change-pass-dialog/change-pass-dialog.component.ts b/src/app/components/dashboard/profile/change-pass-dialog/change-pass-dialog.component.ts index f4f4612..71b3b7c 100644 --- a/src/app/components/dashboard/profile/change-pass-dialog/change-pass-dialog.component.ts +++ b/src/app/components/dashboard/profile/change-pass-dialog/change-pass-dialog.component.ts @@ -34,7 +34,7 @@ import { ChangePasswordService } from '../../../../services/user/change-password export class ChangePassDialogComponent { private readonly context = inject(POLYMORPHEUS_CONTEXT); - protected form: FormGroup; + form: FormGroup; constructor( private fb: FormBuilder, From 0b4bb7061d1557fe02cd558347055b6e48e0997f Mon Sep 17 00:00:00 2001 From: Mr MRF <79112136+Mr-MRF-Dev@users.noreply.github.com> Date: Mon, 9 Sep 2024 05:57:03 +0330 Subject: [PATCH 126/142] chore(register): re-write test roles --- .../dashboard/users/register/register.component.spec.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/app/components/dashboard/users/register/register.component.spec.ts b/src/app/components/dashboard/users/register/register.component.spec.ts index df5f4bf..9ee4ec4 100644 --- a/src/app/components/dashboard/users/register/register.component.spec.ts +++ b/src/app/components/dashboard/users/register/register.component.spec.ts @@ -181,7 +181,7 @@ describe('RegisterComponent', () => { dobControl?.setValue([]); expect(dobControl?.valid).toBeFalse(); - dobControl?.setValue(['2000-01-Admin']); + dobControl?.setValue(['Admin']); expect(dobControl?.valid).toBeTrue(); }); From 5116136fb78a83a5e49a4e015962bde209cb3cd7 Mon Sep 17 00:00:00 2001 From: Mr MRF <79112136+Mr-MRF-Dev@users.noreply.github.com> Date: Mon, 9 Sep 2024 06:14:15 +0330 Subject: [PATCH 127/142] feat(profile): added tests --- .../profile/profile.component.spec.ts | 79 ++++++++++++++++++- .../dashboard/profile/profile.component.ts | 6 +- 2 files changed, 78 insertions(+), 7 deletions(-) diff --git a/src/app/components/dashboard/profile/profile.component.spec.ts b/src/app/components/dashboard/profile/profile.component.spec.ts index 17789ee..c4cdcce 100644 --- a/src/app/components/dashboard/profile/profile.component.spec.ts +++ b/src/app/components/dashboard/profile/profile.component.spec.ts @@ -1,16 +1,40 @@ import { ComponentFixture, TestBed } from '@angular/core/testing'; - import { ProfileComponent } from './profile.component'; +import { AuthService } from '../../../services/auth/auth.service'; +import { Router } from '@angular/router'; +import { of } from 'rxjs'; +import { By } from '@angular/platform-browser'; describe('ProfileComponent', () => { let component: ProfileComponent; let fixture: ComponentFixture; + let authServiceMock: Partial; + let routerMock: Partial; beforeEach(async () => { + authServiceMock = { + getCurrentUser: jasmine.createSpy('getCurrentUser').and.returnValue( + of({ + firstName: 'John', + lastName: 'Doe', + username: 'john_doe', + roles: [{ roleType: 'Admin' }, { roleType: 'Developer' }], + }) + ), + logOutUser: jasmine.createSpy('logOutUser').and.returnValue(of({})), + }; + + routerMock = { + navigate: jasmine.createSpy('navigate'), + }; + await TestBed.configureTestingModule({ - imports: [ProfileComponent] - }) - .compileComponents(); + imports: [ProfileComponent], + providers: [ + { provide: AuthService, useValue: authServiceMock }, + { provide: Router, useValue: routerMock }, + ], + }).compileComponents(); fixture = TestBed.createComponent(ProfileComponent); component = fixture.componentInstance; @@ -20,4 +44,51 @@ describe('ProfileComponent', () => { it('should create', () => { expect(component).toBeTruthy(); }); + + it('should initialize with user data', () => { + const name = fixture.debugElement.query( + By.css('div[id="prof-header"] h2') + ).nativeElement; + expect(name.textContent).toBe(' John Doe @john_doe'); + + const username = fixture.debugElement.query( + By.css('div[id="prof-header"] h2 div') + ).nativeElement; + expect(username.textContent).toBe('@john_doe'); + }); + + it('should show user roles', () => { + const roles = fixture.debugElement.queryAll(By.css('tui-chip')); + expect(roles.length).toBe(2); + expect(roles[0].nativeElement.textContent).toBe(' Admin '); + expect(roles[1].nativeElement.textContent).toBe(' Developer '); + }); + + it('should show change password dialog', () => { + spyOn(component['changePassDialog'], 'subscribe'); + component.showChangePassDialog(); + expect(component['changePassDialog'].subscribe).toHaveBeenCalled(); + }); + + it('should show update info dialog', () => { + spyOn(component['editDialog'], 'subscribe'); + component.showUpdateInfoDialog(); + expect(component['editDialog'].subscribe).toHaveBeenCalled(); + }); + + it('should show logout dialog and log out user on confirmation', () => { + spyOn(component['dialogs'], 'open').and.returnValue(of(true)); + component.showLogoutDialog(); + expect(component['dialogs'].open).toHaveBeenCalled(); + expect(authServiceMock.logOutUser).toHaveBeenCalled(); + expect(routerMock.navigate).toHaveBeenCalledWith(['/login']); + }); + + it('should not log out user if logout is cancelled', () => { + spyOn(component['dialogs'], 'open').and.returnValue(of(false)); + component.showLogoutDialog(); + expect(component['dialogs'].open).toHaveBeenCalled(); + expect(authServiceMock.logOutUser).not.toHaveBeenCalled(); + expect(routerMock.navigate).not.toHaveBeenCalled(); + }); }); diff --git a/src/app/components/dashboard/profile/profile.component.ts b/src/app/components/dashboard/profile/profile.component.ts index 4e19380..178f62b 100644 --- a/src/app/components/dashboard/profile/profile.component.ts +++ b/src/app/components/dashboard/profile/profile.component.ts @@ -97,15 +97,15 @@ export class ProfileComponent implements OnInit { }); } - protected showChangePassDialog(): void { + showChangePassDialog(): void { this.changePassDialog.subscribe(); } - protected showUpdateInfoDialog(): void { + showUpdateInfoDialog(): void { this.editDialog.subscribe(); } - protected showLogoutDialog(): void { + showLogoutDialog(): void { const data: TuiConfirmData = { content: 'Are you sure you want to logout?', yes: 'Yes', From c881c205822c28f22aa44c26d2b045ef2d87d5a7 Mon Sep 17 00:00:00 2001 From: Mr MRF <79112136+Mr-MRF-Dev@users.noreply.github.com> Date: Mon, 9 Sep 2024 06:17:15 +0330 Subject: [PATCH 128/142] chore(edit user service): remove role interface --- .../services/admin/admin-edit-user.service.spec.ts | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/src/app/services/admin/admin-edit-user.service.spec.ts b/src/app/services/admin/admin-edit-user.service.spec.ts index 4056143..601895a 100644 --- a/src/app/services/admin/admin-edit-user.service.spec.ts +++ b/src/app/services/admin/admin-edit-user.service.spec.ts @@ -2,7 +2,6 @@ import { TestBed } from '@angular/core/testing'; import { AdminEditUserService } from './admin-edit-user.service'; import { User } from '../../models/user'; -import { Role } from '../../models/role'; describe('AdminEditUserService', () => { let service: AdminEditUserService; @@ -18,11 +17,11 @@ describe('AdminEditUserService', () => { it('should set and get user', () => { const user: User = { - username: "Admin", - firstName: "Name", - lastName: "Family", - email: "admin@admin.admin", - roles: [{ roleType: "Admin" }], + username: 'Admin', + firstName: 'Name', + lastName: 'Family', + email: 'admin@admin.admin', + roles: [{ roleType: 'Admin' }], }; service.setUser(user); From 2c213a27fb1f2c1e8ecd658eb908d729af163ff9 Mon Sep 17 00:00:00 2001 From: Mr MRF <79112136+Mr-MRF-Dev@users.noreply.github.com> Date: Mon, 9 Sep 2024 06:21:19 +0330 Subject: [PATCH 129/142] refactor: remove get users service --- .../services/admin/get-users.service.spec.ts | 16 --------- src/app/services/admin/get-users.service.ts | 36 ------------------- 2 files changed, 52 deletions(-) delete mode 100644 src/app/services/admin/get-users.service.spec.ts delete mode 100644 src/app/services/admin/get-users.service.ts diff --git a/src/app/services/admin/get-users.service.spec.ts b/src/app/services/admin/get-users.service.spec.ts deleted file mode 100644 index 464b8de..0000000 --- a/src/app/services/admin/get-users.service.spec.ts +++ /dev/null @@ -1,16 +0,0 @@ -import { TestBed } from '@angular/core/testing'; - -import { GetUsersService } from './get-users.service'; - -describe('GetUsersService', () => { - let service: GetUsersService; - - beforeEach(() => { - TestBed.configureTestingModule({}); - service = TestBed.inject(GetUsersService); - }); - - it('should be created', () => { - expect(service).toBeTruthy(); - }); -}); diff --git a/src/app/services/admin/get-users.service.ts b/src/app/services/admin/get-users.service.ts deleted file mode 100644 index c483e23..0000000 --- a/src/app/services/admin/get-users.service.ts +++ /dev/null @@ -1,36 +0,0 @@ -import { Injectable } from '@angular/core'; -import { HttpClient } from '@angular/common/http'; -import { Observable } from 'rxjs'; -import { tap } from 'rxjs/operators'; -import { environment } from '../../../environments/environment'; -import { AllUserResponse } from '../../models/api/userResponse'; -import { NotificationService } from '../notif/notification.service'; -import { SUCCESS_MESSAGES_MAP } from '../../constants/success-messages'; - -@Injectable({ - providedIn: 'root', -}) -export class GetUsersService { - constructor( - private http: HttpClient, - private notificationService: NotificationService - ) { } - - getUsers(): Observable { - const url = `${environment.apiBaseUrl}/Admin/users`; - - return this.http.get(url, { withCredentials: true }).pipe( - tap({ - next: () => { - const message = SUCCESS_MESSAGES_MAP.get( - 'Users Retrieved Successfully' - ); - this.notificationService.showSuccess( - message?.message ?? 'Users Retrieved Successfully', - message?.label ?? 'Success' - ); - }, - }) - ); - } -} From 29077b26ae261beb68cc60c3fa2e908548b9b7f2 Mon Sep 17 00:00:00 2001 From: Mr MRF <79112136+Mr-MRF-Dev@users.noreply.github.com> Date: Mon, 9 Sep 2024 11:39:39 +0330 Subject: [PATCH 130/142] feat(dashboard): added tests --- .../dashboard/dashboard.component.spec.ts | 62 +++++++++++++++++-- 1 file changed, 57 insertions(+), 5 deletions(-) diff --git a/src/app/components/dashboard/dashboard.component.spec.ts b/src/app/components/dashboard/dashboard.component.spec.ts index 4ea5327..2488bea 100644 --- a/src/app/components/dashboard/dashboard.component.spec.ts +++ b/src/app/components/dashboard/dashboard.component.spec.ts @@ -1,17 +1,32 @@ import { ComponentFixture, TestBed } from '@angular/core/testing'; - +import { of } from 'rxjs'; +import { AuthService } from '../../services/auth/auth.service'; import { DashboardComponent } from './dashboard.component'; -import { RouterModule } from '@angular/router'; +import { RouterTestingModule } from '@angular/router/testing'; +import { TuiDialogService } from '@taiga-ui/core'; describe('DashboardComponent', () => { let component: DashboardComponent; let fixture: ComponentFixture; + let authServiceMock: Partial; beforeEach(async () => { + authServiceMock = { + getCurrentUser: jasmine.createSpy('getCurrentUser').and.returnValue( + of({ + firstName: 'John', + lastName: 'Doe', + username: 'john_doe', + roles: [{ roleType: 'Admin' }, { roleType: 'Developer' }], + }) + ), + logOutUser: jasmine.createSpy('logOutUser').and.returnValue(of({})), + }; + await TestBed.configureTestingModule({ - imports: [DashboardComponent, RouterModule.forRoot([])] - }) - .compileComponents(); + imports: [DashboardComponent, RouterTestingModule], + providers: [{ provide: AuthService, useValue: authServiceMock }], + }).compileComponents(); fixture = TestBed.createComponent(DashboardComponent); component = fixture.componentInstance; @@ -21,4 +36,41 @@ describe('DashboardComponent', () => { it('should create', () => { expect(component).toBeTruthy(); }); + + it('should return true for isPcMode when window width is greater than or equal to 768', () => { + spyOnProperty(window, 'innerWidth').and.returnValue(800); + expect(component.isPcMode()).toBeTrue(); + }); + + it('should return false for isPcMode when window width is less than 768', () => { + spyOnProperty(window, 'innerWidth').and.returnValue(600); + expect(component.isPcMode()).toBeFalse(); + }); + + it('should return "m" for buttonSize when in PC mode', () => { + spyOn(component, 'isPcMode').and.returnValue(true); + expect(component.buttonSize()).toBe('m'); + }); + + it('should return "s" for buttonSize when not in PC mode', () => { + spyOn(component, 'isPcMode').and.returnValue(false); + expect(component.buttonSize()).toBe('s'); + }); + + it('should open logOut dialog when logout is called', () => { + const dialogService = TestBed.inject(TuiDialogService); + const dialogSpy = spyOn(dialogService, 'open').and.callThrough(); + component.logout(); + + expect(dialogSpy).toHaveBeenCalled(); + }); + + it('should log out user when user confirms log out', () => { + const dialogService = TestBed.inject(TuiDialogService); + const dialogSpy = spyOn(dialogService, 'open').and.returnValue(of(true)); + component.logout(); + + expect(dialogSpy).toHaveBeenCalled(); + expect(authServiceMock.logOutUser).toHaveBeenCalled(); + }); }); From dcdb9ac577b9f1e41bd965e67b82b81126088f80 Mon Sep 17 00:00:00 2001 From: Mr MRF <79112136+Mr-MRF-Dev@users.noreply.github.com> Date: Mon, 9 Sep 2024 11:47:08 +0330 Subject: [PATCH 131/142] feat(admin service): added tests --- src/app/services/admin/admin.service.spec.ts | 191 ++++++++++++++++++- 1 file changed, 188 insertions(+), 3 deletions(-) diff --git a/src/app/services/admin/admin.service.spec.ts b/src/app/services/admin/admin.service.spec.ts index a7fdd05..7f59482 100644 --- a/src/app/services/admin/admin.service.spec.ts +++ b/src/app/services/admin/admin.service.spec.ts @@ -1,16 +1,201 @@ import { TestBed } from '@angular/core/testing'; - +import { + HttpClientTestingModule, + HttpTestingController, +} from '@angular/common/http/testing'; import { AdminUserService } from './admin.service'; +import { NotificationService } from '../notif/notification.service'; +import { environment } from '../../../environments/environment'; +import { AllUserResponse, UserResponse } from '../../models/api/userResponse'; +import { User } from '../../models/user'; +import { RoleResponse } from '../../models/api/roleResponse'; +import { UserBody } from '../../models/api/userBody'; +import { EditUserBody } from '../../models/api/editUser'; -describe('AdminService', () => { +describe('AdminUserService', () => { let service: AdminUserService; + let httpMock: HttpTestingController; beforeEach(() => { - TestBed.configureTestingModule({}); + const spy = jasmine.createSpyObj('NotificationService', ['showSuccess']); + + TestBed.configureTestingModule({ + imports: [HttpClientTestingModule], + providers: [ + AdminUserService, + { provide: NotificationService, useValue: spy }, + ], + }); + service = TestBed.inject(AdminUserService); + httpMock = TestBed.inject(HttpTestingController); + }); + + afterEach(() => { + httpMock.verify(); }); it('should be created', () => { expect(service).toBeTruthy(); }); + + it('should fetch users', () => { + const dummyUsers: AllUserResponse = { + type: 200, + message: '', + data: [ + { + username: 'user1', + firstName: 'John', + lastName: 'Doe', + email: 'john.doe@example.com', + roles: [{ roleType: 'admin' }], + }, + { + username: 'user2', + firstName: 'Jane', + lastName: 'Smith', + email: 'jane.smith@example.com', + roles: [{ roleType: 'user' }], + }, + ], + }; + + service.fetchUsers(1).subscribe((users) => { + expect(users.data.length).toBe(2); + expect(users.data).toEqual(dummyUsers.data); + }); + + const req = httpMock.expectOne( + `${environment.apiBaseUrl}/Admin/users?pageNumber=1` + ); + expect(req.request.method).toBe('GET'); + req.flush(dummyUsers); + }); + + it('should get a user by username', () => { + const dummyUser: UserResponse = { + type: 200, + message: '', + data: { + username: 'user1', + firstName: '', + lastName: '', + email: '', + roles: [], + }, + }; + + service.getUser('user1').subscribe((user) => { + expect(user.data.username).toBe('user1'); + }); + + const req = httpMock.expectOne( + `${environment.apiBaseUrl}/Admin/users/user1` + ); + expect(req.request.method).toBe('GET'); + req.flush(dummyUser); + }); + + it('should create a new user', () => { + const newUser: User = { + username: 'newUser', + firstName: 'FirstName', + lastName: 'LastName', + email: 'newuser@example.com', + roles: [], + }; + const userBody: UserBody = { + username: 'newUser', + password: 'password', + firstName: 'FirstName', + lastName: 'LastName', + email: 'newuser@example.com', + roles: [], + }; + + service.createUser(userBody).subscribe((user) => { + expect(user.username).toBe('newUser'); + }); + + const req = httpMock.expectOne(`${environment.apiBaseUrl}/Admin/users`); + expect(req.request.method).toBe('POST'); + req.flush(newUser); + }); + + it('should delete a user by username', () => { + service.deleteUser('user1').subscribe(); + + const req = httpMock.expectOne( + `${environment.apiBaseUrl}/Admin/users/user1` + ); + expect(req.request.method).toBe('DELETE'); + req.flush({}); + }); + + it('should fetch roles', () => { + const dummyRoles: RoleResponse = { + data: [{ roleType: 'admin' }, { roleType: 'user' }], + type: 0, + message: '', + }; + + service.fetchRoles().subscribe((roles) => { + expect(roles.data.length).toBe(2); + expect(roles.data).toEqual(dummyRoles.data); + }); + + const req = httpMock.expectOne(`${environment.apiBaseUrl}/Admin/roles`); + expect(req.request.method).toBe('GET'); + req.flush(dummyRoles); + }); + + it('should add a role to a user', () => { + service.addRoleToUser('user1', 'admin').subscribe(); + + const req = httpMock.expectOne( + `${environment.apiBaseUrl}/Admin/users/user1/roles` + ); + expect(req.request.method).toBe('PUT'); + req.flush({}); + }); + + it('should remove a role from a user', () => { + service.removeRoleFromUser('user1', 'admin').subscribe(); + + const req = httpMock.expectOne( + `${environment.apiBaseUrl}/Admin/users/user1/roles/admin` + ); + expect(req.request.method).toBe('DELETE'); + req.flush({}); + }); + + it('should update a user', () => { + const updatedUser: UserResponse = { + data: { + username: 'updatedUser', + firstName: '', + lastName: '', + email: '', + roles: [], + }, + type: 0, + message: '', + }; + const editUserBody: EditUserBody = { + email: 'updated@example.com', + firstName: '', + lastName: '', + }; + + service.updateUser('user1', editUserBody).subscribe((user) => { + expect(user.data.username).toBe('updatedUser'); + }); + + const req = httpMock.expectOne( + `${environment.apiBaseUrl}/Admin/users/update/user1` + ); + expect(req.request.method).toBe('PUT'); + req.flush(updatedUser); + }); }); From 115a4ec94bbc8e297829b1124dafdacc7484306b Mon Sep 17 00:00:00 2001 From: Mr MRF <79112136+Mr-MRF-Dev@users.noreply.github.com> Date: Mon, 9 Sep 2024 11:49:30 +0330 Subject: [PATCH 132/142] fix(chart): fix test --- .../components/dashboard/charts/charts.component.spec.ts | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/app/components/dashboard/charts/charts.component.spec.ts b/src/app/components/dashboard/charts/charts.component.spec.ts index 25cac3b..56df121 100644 --- a/src/app/components/dashboard/charts/charts.component.spec.ts +++ b/src/app/components/dashboard/charts/charts.component.spec.ts @@ -1,4 +1,5 @@ import { ComponentFixture, TestBed } from '@angular/core/testing'; +import { BrowserAnimationsModule } from '@angular/platform-browser/animations'; import { ChartsComponent } from './charts.component'; @@ -8,9 +9,8 @@ describe('ChartsComponent', () => { beforeEach(async () => { await TestBed.configureTestingModule({ - imports: [ChartsComponent] - }) - .compileComponents(); + imports: [BrowserAnimationsModule, ChartsComponent], + }).compileComponents(); fixture = TestBed.createComponent(ChartsComponent); component = fixture.componentInstance; From cdc5ca9ca77f55c094384bf38c038a60bac69893 Mon Sep 17 00:00:00 2001 From: Mr MRF <79112136+Mr-MRF-Dev@users.noreply.github.com> Date: Mon, 9 Sep 2024 11:51:26 +0330 Subject: [PATCH 133/142] chore(users): remove TUI_CONFIRM --- .../dashboard/users/users.component.spec.ts | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/src/app/components/dashboard/users/users.component.spec.ts b/src/app/components/dashboard/users/users.component.spec.ts index 3bbecb6..5752605 100644 --- a/src/app/components/dashboard/users/users.component.spec.ts +++ b/src/app/components/dashboard/users/users.component.spec.ts @@ -22,7 +22,6 @@ import { import { TuiCardLarge, TuiHeader } from '@taiga-ui/layout'; import { RoleAppearancePipe } from '../../../pipes/role-appearance.pipe'; import { UsernamePipe } from '../../../pipes/username.pipe'; -import { TUI_CONFIRM } from '@taiga-ui/kit'; import { AdminUserService } from '../../../services/admin/admin.service'; import { AdminEditUserService } from '../../../services/admin/admin-edit-user.service'; import { @@ -113,15 +112,20 @@ describe('UsersComponent', () => { }), }), }, - { provide: AdminEditUserService, useValue: jasmine.createSpyObj({ - setUser: [] + { + provide: AdminEditUserService, + useValue: jasmine.createSpyObj({ + setUser: [], }), }, - { provide: TuiDialogService, useValue: jasmine.createSpyObj({ + { + provide: TuiDialogService, + useValue: jasmine.createSpyObj({ open: jasmine.createSpyObj({ afterClosed: of('closed'), }), - }), }, + }), + }, { provide: INJECTOR, useValue: INJECTOR }, ], }).compileComponents(); From b4f1f64f23b86214f8a8a2fd8377d4b16366becb Mon Sep 17 00:00:00 2001 From: Morteza Ghandchi Date: Sat, 7 Sep 2024 20:38:57 +0330 Subject: [PATCH 134/142] feat(auth): correct gaurd and routing logic --- src/app/app.routes.ts | 10 +++-- src/app/components/login/login.component.ts | 14 ++++--- src/app/guards/auth.guard.ts | 37 +++++++++++++++++++ src/app/services/admin/admin.service.ts | 23 ++++++------ .../error/http-error-interceptor.service.ts | 1 - 5 files changed, 64 insertions(+), 21 deletions(-) create mode 100644 src/app/guards/auth.guard.ts diff --git a/src/app/app.routes.ts b/src/app/app.routes.ts index a261e41..792e13b 100644 --- a/src/app/app.routes.ts +++ b/src/app/app.routes.ts @@ -12,14 +12,16 @@ export const routes: Routes = [ path: 'login', component: LoginComponent, }, - // { - // path: 'admin/register', - // component: RegisterComponent, - // }, + { + path: '', + pathMatch: 'full', + redirectTo: 'dashboard/users', + }, { path: 'dashboard', title: 'Dashboard', component: DashboardComponent, + canActivateChild: [authGuard], children: [ { path: 'users', diff --git a/src/app/components/login/login.component.ts b/src/app/components/login/login.component.ts index 683993c..457418a 100644 --- a/src/app/components/login/login.component.ts +++ b/src/app/components/login/login.component.ts @@ -1,4 +1,4 @@ -import { Component, OnInit } from '@angular/core'; +import { Component, inject, OnInit } from '@angular/core'; import { FormControl, FormGroup, @@ -10,7 +10,7 @@ import { TuiButton, TuiSurface } from '@taiga-ui/core'; import { TuiCheckbox } from '@taiga-ui/kit'; import { TuiCardLarge } from '@taiga-ui/layout'; import { CommonModule } from '@angular/common'; -import { Router } from '@angular/router'; +import { ActivatedRoute, Router } from '@angular/router'; import { AuthService } from '../../services/auth/auth.service'; import { environment } from '../../../environments/environment'; @@ -35,7 +35,9 @@ export class LoginComponent implements OnInit { loading = false; errorMessage: string | null = null; protected github_repo!: string; - constructor(private authService: AuthService, private router: Router) { } + route = inject(ActivatedRoute); + + constructor(private authService: AuthService, private router: Router) {} ngOnInit(): void { this.github_repo = environment.githubRepo; @@ -69,8 +71,10 @@ export class LoginComponent implements OnInit { this.authService.loginUser(credentials).subscribe({ next: () => { - this.loading = false; - this.router.navigate(['/dashboard']); + const returnUrl = + this.route.snapshot.queryParamMap.get('returnUrl') || '/'; + + this.router.navigate([returnUrl]); }, error: (error) => { this.loading = false; diff --git a/src/app/guards/auth.guard.ts b/src/app/guards/auth.guard.ts new file mode 100644 index 0000000..38233bc --- /dev/null +++ b/src/app/guards/auth.guard.ts @@ -0,0 +1,37 @@ +import { inject } from '@angular/core'; +import { CanActivateFn, Router } from '@angular/router'; +import { AuthService } from '../services/auth/auth.service'; +import { firstValueFrom } from 'rxjs'; + +export const authGuard: CanActivateFn = async (route, state) => { + const authService = inject(AuthService); + const router = inject(Router); + // Wait for the user check to complete + await authService.checkIfUserIsLoggedIn(); + + // Get the current user from the observable + const user = await firstValueFrom(authService.getCurrentUser()); + const currentUrl = route.url[0].path; + const isLoginRoute = currentUrl === 'login'; + + if (user) { + if (isLoginRoute) { + if (window.history.length > 1) { + history.back(); // Navigate back in history + } else { + // No history, so navigate to the home page or another default route + router.navigate(['/']); + } + return false; + } + return true; // User is authenticated, allow access + } else { + if (isLoginRoute) { + return true; + } + router.navigate(['/login'], { + queryParams: { returnUrl: state.url }, + }); + return false; // User is not authenticated, redirect to login + } +}; diff --git a/src/app/services/admin/admin.service.ts b/src/app/services/admin/admin.service.ts index 043c6f2..fecae02 100644 --- a/src/app/services/admin/admin.service.ts +++ b/src/app/services/admin/admin.service.ts @@ -21,16 +21,15 @@ export class AdminUserService { constructor( private http: HttpClient, private notificationService: NotificationService - ) { } + ) {} // Fetch all users - fetchUsers(page_index: number): Observable { - const url = `${environment.apiBaseUrl}/Admin/users?pageNumber=${page_index}`; - return this.http.get(url, { withCredentials: true }).pipe( - tap((response) => { - this.usersSubject.next(response.data); - }) - ); + fetchUsers(pageNumber = 1): Observable { + const url = `${environment.apiBaseUrl}/Admin/users`; + return this.http.get(url, { + withCredentials: true, + params: { pageNumber: pageNumber }, + }); } // Get a user by username @@ -109,9 +108,11 @@ export class AdminUserService { // update user :/ updateUser(username: string, user: EditUserBody): Observable { const url = `${environment.apiBaseUrl}/Admin/users/update/${username}`; - return this.http.put(url, user, { withCredentials: true }).pipe( - tap(() => this.showSuccessNotification('User Updated Successfully')) - ); + return this.http + .put(url, user, { withCredentials: true }) + .pipe( + tap(() => this.showSuccessNotification('User Updated Successfully')) + ); } // Helper method to show success notifications diff --git a/src/app/services/error/http-error-interceptor.service.ts b/src/app/services/error/http-error-interceptor.service.ts index d8ad76f..d344689 100644 --- a/src/app/services/error/http-error-interceptor.service.ts +++ b/src/app/services/error/http-error-interceptor.service.ts @@ -28,7 +28,6 @@ export class HttpErrorInterceptor implements HttpInterceptor { return next.handle(clonedRequest).pipe( catchError((error: HttpErrorResponse) => { const backendErrorMessage = error.error?.message; - console.log(error); this.showNotification(backendErrorMessage); return throwError(() => new Error(backendErrorMessage)); From f7d72ef00e0675ad66b33798568e26a1ff179240 Mon Sep 17 00:00:00 2001 From: Morteza Ghandchi Date: Sat, 7 Sep 2024 22:01:48 +0330 Subject: [PATCH 135/142] fix: fix unauthorized error --- src/app/services/error/http-error-interceptor.service.ts | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/app/services/error/http-error-interceptor.service.ts b/src/app/services/error/http-error-interceptor.service.ts index d344689..4eb9dd4 100644 --- a/src/app/services/error/http-error-interceptor.service.ts +++ b/src/app/services/error/http-error-interceptor.service.ts @@ -28,8 +28,9 @@ export class HttpErrorInterceptor implements HttpInterceptor { return next.handle(clonedRequest).pipe( catchError((error: HttpErrorResponse) => { const backendErrorMessage = error.error?.message; - - this.showNotification(backendErrorMessage); + if (backendErrorMessage !== 'Unauthorized') { + this.showNotification(backendErrorMessage); + } return throwError(() => new Error(backendErrorMessage)); }) ); From e928d7846c4bca899a46f7c0aaa735362bc183d7 Mon Sep 17 00:00:00 2001 From: Morteza Ghandchi Date: Mon, 9 Sep 2024 09:09:43 +0330 Subject: [PATCH 136/142] feat: adding home component to dashboard --- src/app/app.routes.ts | 9 +- .../dashboard/home/home.component.html | 26 ++++++ .../dashboard/home/home.component.scss | 84 +++++++++++++++++++ .../dashboard/home/home.component.spec.ts | 23 +++++ .../dashboard/home/home.component.ts | 38 +++++++++ src/app/guards/auth.guard.ts | 5 +- 6 files changed, 183 insertions(+), 2 deletions(-) create mode 100644 src/app/components/dashboard/home/home.component.html create mode 100644 src/app/components/dashboard/home/home.component.scss create mode 100644 src/app/components/dashboard/home/home.component.spec.ts create mode 100644 src/app/components/dashboard/home/home.component.ts diff --git a/src/app/app.routes.ts b/src/app/app.routes.ts index 792e13b..4a5fe82 100644 --- a/src/app/app.routes.ts +++ b/src/app/app.routes.ts @@ -6,6 +6,8 @@ import { ProfileComponent } from './components/dashboard/profile/profile.compone import { GraphComponent } from './components/dashboard/graph/graph.component'; import { ImportComponent } from './components/dashboard/import/import.component'; import { ChartsComponent } from './components/dashboard/charts/charts.component'; +import { authGuard } from './guards/auth.guard'; +import { HomeComponent } from './components/dashboard/home/home.component'; export const routes: Routes = [ { @@ -15,7 +17,7 @@ export const routes: Routes = [ { path: '', pathMatch: 'full', - redirectTo: 'dashboard/users', + redirectTo: 'dashboard', }, { path: 'dashboard', @@ -23,6 +25,11 @@ export const routes: Routes = [ component: DashboardComponent, canActivateChild: [authGuard], children: [ + { + path: '', + component: HomeComponent, + title: 'Dashboard Home', + }, { path: 'users', component: UsersComponent, diff --git a/src/app/components/dashboard/home/home.component.html b/src/app/components/dashboard/home/home.component.html new file mode 100644 index 0000000..3b95cc6 --- /dev/null +++ b/src/app/components/dashboard/home/home.component.html @@ -0,0 +1,26 @@ +@for (group of dataGroups; track group.dataGroupId) { +
+ +
+ +
+

{{ group.name }}

+
+
+

{{ group.createAt | date : 'short' }}

+

{{ group.updateAt | date : 'short' }}

+
+ +
+} diff --git a/src/app/components/dashboard/home/home.component.scss b/src/app/components/dashboard/home/home.component.scss new file mode 100644 index 0000000..c5616d3 --- /dev/null +++ b/src/app/components/dashboard/home/home.component.scss @@ -0,0 +1,84 @@ +/* BEGIN CARD DESIGN */ +.hero { + display: inline-block; + position: relative; + width: 400px; + min-width: 400px; + height: 400px; + border-radius: 30px; + overflow: hidden; + box-shadow: 5px 5px 30px rgba(0, 0, 0, 0.3); + margin: 30px; +} + +.hero-profile-img { + height: 70%; + object-fit: cover; +} + +.hero-description-bk { + background-image: linear-gradient(0deg, #3f5efb, #fc466b); + border-radius: 30px; + position: absolute; + top: 55%; + left: -5px; + height: 65%; + width: 108%; + transform: skew(19deg, -9deg); +} + +.hero-logo { + height: 80px; + width: 80px; + border-radius: 20px; + background-color: #fff; + position: absolute; + bottom: 30%; + left: 30px; + overflow: hidden; + box-shadow: 5px 5px 30px rgba(0, 0, 0, 0.7); +} + +.hero-logo img { + height: 100%; +} + +.hero-description { + top: -20px; + position: relative; + color: #fff; + font-weight: 900; + left: 200px; +} + +.hero-btn { + position: absolute; + color: #fff; + right: 30px; + bottom: 10%; + padding: 10px 20px; + border: 1px solid #fff; +} + +.hero-btn a { + color: #fff; +} + +.hero-date { + position: absolute; + color: #fff; + left: 30px; + bottom: 10%; +} + +.btn i:before { + width: 14px; + height: 14px; + position: fixed; + color: #fff; + background: #0077b5; + padding: 10px; + border-radius: 50%; + top: 5px; + right: 5px; +} diff --git a/src/app/components/dashboard/home/home.component.spec.ts b/src/app/components/dashboard/home/home.component.spec.ts new file mode 100644 index 0000000..1191557 --- /dev/null +++ b/src/app/components/dashboard/home/home.component.spec.ts @@ -0,0 +1,23 @@ +import { ComponentFixture, TestBed } from '@angular/core/testing'; + +import { HomeComponent } from './home.component'; + +describe('HomeComponent', () => { + let component: HomeComponent; + let fixture: ComponentFixture; + + beforeEach(async () => { + await TestBed.configureTestingModule({ + imports: [HomeComponent] + }) + .compileComponents(); + + fixture = TestBed.createComponent(HomeComponent); + component = fixture.componentInstance; + fixture.detectChanges(); + }); + + it('should create', () => { + expect(component).toBeTruthy(); + }); +}); diff --git a/src/app/components/dashboard/home/home.component.ts b/src/app/components/dashboard/home/home.component.ts new file mode 100644 index 0000000..3d26734 --- /dev/null +++ b/src/app/components/dashboard/home/home.component.ts @@ -0,0 +1,38 @@ +import { Component } from '@angular/core'; +import { DatePipe } from '@angular/common'; + +@Component({ + selector: 'app-home', + standalone: true, + imports: [DatePipe], + templateUrl: './home.component.html', + styleUrl: './home.component.scss', +}) +export class HomeComponent { + dataGroups = [ + { + dataGroupId: 1, + name: 'Group 1', + createAt: '2024-08-28T18:20:18.474778Z', + updateAt: '2024-08-28T18:20:18.474778Z', + }, + // { + // dataGroupId: 2, + // name: 'Group 2', + // createAt: '2024-08-28T18:55:19.984789Z', + // updateAt: '2024-08-28T18:55:19.984789Z', + // }, + // { + // dataGroupId: 3, + // name: 'Group 3', + // createAt: '2024-08-28T22:44:32.227683Z', + // updateAt: '2024-08-28T22:44:32.227683Z', + // }, + // { + // dataGroupId: 4, + // name: 'Group 4', + // createAt: '2024-09-06T15:32:53.280587Z', + // updateAt: '2024-09-06T15:32:53.280587Z', + // }, + ]; +} diff --git a/src/app/guards/auth.guard.ts b/src/app/guards/auth.guard.ts index 38233bc..ac7a991 100644 --- a/src/app/guards/auth.guard.ts +++ b/src/app/guards/auth.guard.ts @@ -11,7 +11,10 @@ export const authGuard: CanActivateFn = async (route, state) => { // Get the current user from the observable const user = await firstValueFrom(authService.getCurrentUser()); - const currentUrl = route.url[0].path; + let currentUrl = null; + if (route.url[0]?.path) { + currentUrl = route.url[0].path; + } const isLoginRoute = currentUrl === 'login'; if (user) { From 3b4f02ad018eb809a7b25eed0b5d2bc43214ff64 Mon Sep 17 00:00:00 2001 From: Morteza Ghandchi Date: Mon, 9 Sep 2024 12:25:42 +0330 Subject: [PATCH 137/142] feat: service for getting datasets --- src/app/app.routes.ts | 4 + .../dashboard/dashboard.component.html | 14 +-- .../dataset-card/dataset-card.component.html | 24 ++++ .../dataset-card/dataset-card.component.scss | 78 ++++++++++++ .../dataset-card.component.spec.ts | 23 ++++ .../dataset-card/dataset-card.component.ts | 22 ++++ .../dashboard/home/home.component.html | 58 +++++---- .../dashboard/home/home.component.scss | 111 +++++------------- .../dashboard/home/home.component.ts | 62 +++++----- .../data-group-resolver.service.spec.ts | 16 +++ .../data-group/data-group-resolver.service.ts | 22 ++++ .../data-group/data-group.service.spec.ts | 16 +++ .../services/data-group/data-group.service.ts | 23 ++++ 13 files changed, 327 insertions(+), 146 deletions(-) create mode 100644 src/app/components/dashboard/home/dataset-card/dataset-card.component.html create mode 100644 src/app/components/dashboard/home/dataset-card/dataset-card.component.scss create mode 100644 src/app/components/dashboard/home/dataset-card/dataset-card.component.spec.ts create mode 100644 src/app/components/dashboard/home/dataset-card/dataset-card.component.ts create mode 100644 src/app/services/data-group/data-group-resolver.service.spec.ts create mode 100644 src/app/services/data-group/data-group-resolver.service.ts create mode 100644 src/app/services/data-group/data-group.service.spec.ts create mode 100644 src/app/services/data-group/data-group.service.ts diff --git a/src/app/app.routes.ts b/src/app/app.routes.ts index 4a5fe82..0df80bb 100644 --- a/src/app/app.routes.ts +++ b/src/app/app.routes.ts @@ -8,6 +8,7 @@ import { ImportComponent } from './components/dashboard/import/import.component' import { ChartsComponent } from './components/dashboard/charts/charts.component'; import { authGuard } from './guards/auth.guard'; import { HomeComponent } from './components/dashboard/home/home.component'; +import { DataGroupResolver } from './services/data-group/data-group-resolver.service'; export const routes: Routes = [ { @@ -29,6 +30,9 @@ export const routes: Routes = [ path: '', component: HomeComponent, title: 'Dashboard Home', + resolve: { + dataGroups: DataGroupResolver, + }, }, { path: 'users', diff --git a/src/app/components/dashboard/dashboard.component.html b/src/app/components/dashboard/dashboard.component.html index 928c50c..280e430 100644 --- a/src/app/components/dashboard/dashboard.component.html +++ b/src/app/components/dashboard/dashboard.component.html @@ -49,20 +49,8 @@ Users - - - - - -
diff --git a/src/app/components/dashboard/home/dataset-card/dataset-card.component.html b/src/app/components/dashboard/home/dataset-card/dataset-card.component.html new file mode 100644 index 0000000..f763052 --- /dev/null +++ b/src/app/components/dashboard/home/dataset-card/dataset-card.component.html @@ -0,0 +1,24 @@ +
+ +
+ +
+

{{ data.name }}

+
+
+

Created at: {{ data.createAt | date : 'short' }}

+

Updated at: {{ data.updateAt | date : 'short' }}

+
+
+ Open +
+
diff --git a/src/app/components/dashboard/home/dataset-card/dataset-card.component.scss b/src/app/components/dashboard/home/dataset-card/dataset-card.component.scss new file mode 100644 index 0000000..9045a87 --- /dev/null +++ b/src/app/components/dashboard/home/dataset-card/dataset-card.component.scss @@ -0,0 +1,78 @@ +.hero { + display: inline-block; + position: relative; + width: 400px; + min-width: 400px; + height: 400px; + border-radius: 30px; + overflow: hidden; + box-shadow: 5px 5px 30px rgba(0, 0, 0, 0.3); + margin: 30px; +} + +.hero-profile-img { + height: 70%; + object-fit: cover; +} + +.hero-description-bk { + background-image: linear-gradient(0deg, #25a55a, #28bf9a); + border-radius: 30px; + position: absolute; + top: 55%; + left: -5px; + height: 65%; + width: 108%; + transform: skew(19deg, -9deg); +} + +.hero-logo { + height: 80px; + width: 80px; + border-radius: 20px; + background-color: #fff; + position: absolute; + bottom: 30%; + left: 30px; + overflow: hidden; + box-shadow: 5px 5px 30px rgba(0, 0, 0, 0.7); +} + +.hero-logo img { + height: 100%; +} + +.hero-description { + top: -30px; + position: relative; + color: #fff; + font-weight: 700; + right: 30px; + text-align: right; +} + +.hero-btn { + position: absolute; + color: #fff; + right: 30px; + bottom: 10%; +} + +.hero-date { + position: absolute; + color: #fff; + left: 30px; + bottom: 10%; +} + +.btn i:before { + width: 14px; + height: 14px; + position: fixed; + color: #fff; + // background: #0077b5; + padding: 10px; + border-radius: 50%; + top: 5px; + right: 5px; +} diff --git a/src/app/components/dashboard/home/dataset-card/dataset-card.component.spec.ts b/src/app/components/dashboard/home/dataset-card/dataset-card.component.spec.ts new file mode 100644 index 0000000..dc2cf0d --- /dev/null +++ b/src/app/components/dashboard/home/dataset-card/dataset-card.component.spec.ts @@ -0,0 +1,23 @@ +import { ComponentFixture, TestBed } from '@angular/core/testing'; + +import { DatasetCardComponent } from './dataset-card.component'; + +describe('DatasetCardComponent', () => { + let component: DatasetCardComponent; + let fixture: ComponentFixture; + + beforeEach(async () => { + await TestBed.configureTestingModule({ + imports: [DatasetCardComponent] + }) + .compileComponents(); + + fixture = TestBed.createComponent(DatasetCardComponent); + component = fixture.componentInstance; + fixture.detectChanges(); + }); + + it('should create', () => { + expect(component).toBeTruthy(); + }); +}); diff --git a/src/app/components/dashboard/home/dataset-card/dataset-card.component.ts b/src/app/components/dashboard/home/dataset-card/dataset-card.component.ts new file mode 100644 index 0000000..f64aac1 --- /dev/null +++ b/src/app/components/dashboard/home/dataset-card/dataset-card.component.ts @@ -0,0 +1,22 @@ +import { DatePipe } from '@angular/common'; +import { Component, Input } from '@angular/core'; +import { TuiButton } from '@taiga-ui/core'; + +@Component({ + selector: 'app-dataset-card', + standalone: true, + imports: [DatePipe, TuiButton], + templateUrl: './dataset-card.component.html', + styleUrl: './dataset-card.component.scss', +}) +export class DatasetCardComponent { + @Input() + data!: DataGroup; +} + +export interface DataGroup { + dataGroupId: number; + name: string; + createAt: string; // ISO date string format + updateAt: string; // ISO date string format +} diff --git a/src/app/components/dashboard/home/home.component.html b/src/app/components/dashboard/home/home.component.html index 3b95cc6..2c7e35a 100644 --- a/src/app/components/dashboard/home/home.component.html +++ b/src/app/components/dashboard/home/home.component.html @@ -1,26 +1,44 @@ -@for (group of dataGroups; track group.dataGroupId) { -
- -
-