diff --git a/CHANGELOG.md b/CHANGELOG.md index f66a1875e..8082e11f9 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -10,6 +10,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Changed - Localized the content of the about page +- Refactored the public page to standalone - Refactored the dialog footer component - Refactored the dialog header component - Refactored the account detail dialog component to standalone diff --git a/apps/client/src/app/app-routing.module.ts b/apps/client/src/app/app-routing.module.ts index dae10fbf1..2d4f1b227 100644 --- a/apps/client/src/app/app-routing.module.ts +++ b/apps/client/src/app/app-routing.module.ts @@ -111,9 +111,7 @@ const routes: Routes = [ { path: publicRoutes.public.path, loadChildren: () => - import('./pages/public/public-page.module').then( - (m) => m.PublicPageModule - ) + import('./pages/public/public-page.routes').then((m) => m.routes) }, { path: publicRoutes.register.path, diff --git a/apps/client/src/app/pages/public/public-page-routing.module.ts b/apps/client/src/app/pages/public/public-page-routing.module.ts deleted file mode 100644 index 91fd95348..000000000 --- a/apps/client/src/app/pages/public/public-page-routing.module.ts +++ /dev/null @@ -1,20 +0,0 @@ -import { AuthGuard } from '@ghostfolio/client/core/auth.guard'; - -import { NgModule } from '@angular/core'; -import { RouterModule, Routes } from '@angular/router'; - -import { PublicPageComponent } from './public-page.component'; - -const routes: Routes = [ - { - canActivate: [AuthGuard], - component: PublicPageComponent, - path: ':id' - } -]; - -@NgModule({ - imports: [RouterModule.forChild(routes)], - exports: [RouterModule] -}) -export class PublicPageRoutingModule {} diff --git a/apps/client/src/app/pages/public/public-page.component.ts b/apps/client/src/app/pages/public/public-page.component.ts index 38a147081..8e709d3a9 100644 --- a/apps/client/src/app/pages/public/public-page.component.ts +++ b/apps/client/src/app/pages/public/public-page.component.ts @@ -1,3 +1,4 @@ +import { GfWorldMapChartComponent } from '@ghostfolio/client/components/world-map-chart/world-map-chart.component'; import { DataService } from '@ghostfolio/client/services/data.service'; import { UNKNOWN_KEY } from '@ghostfolio/common/config'; import { prettifySymbol } from '@ghostfolio/common/helper'; @@ -6,8 +7,19 @@ import { PublicPortfolioResponse } from '@ghostfolio/common/interfaces'; import { Market } from '@ghostfolio/common/types'; +import { GfHoldingsTableComponent } from '@ghostfolio/ui/holdings-table/holdings-table.component'; +import { GfPortfolioProportionChartComponent } from '@ghostfolio/ui/portfolio-proportion-chart/portfolio-proportion-chart.component'; +import { GfValueComponent } from '@ghostfolio/ui/value'; -import { ChangeDetectorRef, Component, OnInit } from '@angular/core'; +import { CommonModule } from '@angular/common'; +import { + ChangeDetectorRef, + Component, + CUSTOM_ELEMENTS_SCHEMA, + OnInit +} from '@angular/core'; +import { MatButtonModule } from '@angular/material/button'; +import { MatCardModule } from '@angular/material/card'; import { ActivatedRoute, Router } from '@angular/router'; import { AssetClass } from '@prisma/client'; import { StatusCodes } from 'http-status-codes'; @@ -18,12 +30,21 @@ import { catchError, takeUntil } from 'rxjs/operators'; @Component({ host: { class: 'page' }, + imports: [ + CommonModule, + GfHoldingsTableComponent, + GfPortfolioProportionChartComponent, + GfValueComponent, + GfWorldMapChartComponent, + MatButtonModule, + MatCardModule + ], + schemas: [CUSTOM_ELEMENTS_SCHEMA], selector: 'gf-public-page', styleUrls: ['./public-page.scss'], - templateUrl: './public-page.html', - standalone: false + templateUrl: './public-page.html' }) -export class PublicPageComponent implements OnInit { +export class GfPublicPageComponent implements OnInit { public continents: { [code: string]: { name: string; value: number }; }; diff --git a/apps/client/src/app/pages/public/public-page.module.ts b/apps/client/src/app/pages/public/public-page.module.ts deleted file mode 100644 index 95c0dc281..000000000 --- a/apps/client/src/app/pages/public/public-page.module.ts +++ /dev/null @@ -1,28 +0,0 @@ -import { GfWorldMapChartComponent } from '@ghostfolio/client/components/world-map-chart/world-map-chart.component'; -import { GfHoldingsTableComponent } from '@ghostfolio/ui/holdings-table'; -import { GfPortfolioProportionChartComponent } from '@ghostfolio/ui/portfolio-proportion-chart'; -import { GfValueComponent } from '@ghostfolio/ui/value'; - -import { CommonModule } from '@angular/common'; -import { CUSTOM_ELEMENTS_SCHEMA, NgModule } from '@angular/core'; -import { MatButtonModule } from '@angular/material/button'; -import { MatCardModule } from '@angular/material/card'; - -import { PublicPageRoutingModule } from './public-page-routing.module'; -import { PublicPageComponent } from './public-page.component'; - -@NgModule({ - declarations: [PublicPageComponent], - imports: [ - CommonModule, - GfHoldingsTableComponent, - GfPortfolioProportionChartComponent, - GfValueComponent, - GfWorldMapChartComponent, - MatButtonModule, - MatCardModule, - PublicPageRoutingModule - ], - schemas: [CUSTOM_ELEMENTS_SCHEMA] -}) -export class PublicPageModule {} diff --git a/apps/client/src/app/pages/public/public-page.routes.ts b/apps/client/src/app/pages/public/public-page.routes.ts new file mode 100644 index 000000000..444273137 --- /dev/null +++ b/apps/client/src/app/pages/public/public-page.routes.ts @@ -0,0 +1,13 @@ +import { AuthGuard } from '@ghostfolio/client/core/auth.guard'; + +import { Routes } from '@angular/router'; + +import { GfPublicPageComponent } from './public-page.component'; + +export const routes: Routes = [ + { + canActivate: [AuthGuard], + component: GfPublicPageComponent, + path: ':id' + } +];