2021-04-13 21:53:58 +02:00
|
|
|
import { NgModule } from '@angular/core';
|
2022-07-30 21:26:08 +02:00
|
|
|
import { RouterModule, Routes, TitleStrategy } from '@angular/router';
|
|
|
|
import { PageTitleStrategy } from '@ghostfolio/client/services/page-title.strategy';
|
2021-04-13 21:53:58 +02:00
|
|
|
|
|
|
|
import { ModulePreloadService } from './core/module-preload.service';
|
|
|
|
|
|
|
|
const routes: Routes = [
|
|
|
|
{
|
|
|
|
path: 'about',
|
|
|
|
loadChildren: () =>
|
|
|
|
import('./pages/about/about-page.module').then((m) => m.AboutPageModule)
|
|
|
|
},
|
2022-01-01 10:10:37 +01:00
|
|
|
{
|
|
|
|
path: 'about/changelog',
|
|
|
|
loadChildren: () =>
|
|
|
|
import('./pages/about/changelog/changelog-page.module').then(
|
|
|
|
(m) => m.ChangelogPageModule
|
|
|
|
)
|
|
|
|
},
|
2022-06-18 17:46:51 +02:00
|
|
|
{
|
|
|
|
path: 'about/privacy-policy',
|
|
|
|
loadChildren: () =>
|
|
|
|
import('./pages/about/privacy-policy/privacy-policy-page.module').then(
|
|
|
|
(m) => m.PrivacyPolicyPageModule
|
|
|
|
)
|
|
|
|
},
|
2021-04-13 21:53:58 +02:00
|
|
|
{
|
|
|
|
path: 'account',
|
|
|
|
loadChildren: () =>
|
|
|
|
import('./pages/account/account-page.module').then(
|
|
|
|
(m) => m.AccountPageModule
|
|
|
|
)
|
|
|
|
},
|
2021-05-01 12:30:52 +02:00
|
|
|
{
|
|
|
|
path: 'accounts',
|
|
|
|
loadChildren: () =>
|
|
|
|
import('./pages/accounts/accounts-page.module').then(
|
|
|
|
(m) => m.AccountsPageModule
|
|
|
|
)
|
|
|
|
},
|
|
|
|
{
|
|
|
|
path: 'admin',
|
|
|
|
loadChildren: () =>
|
|
|
|
import('./pages/admin/admin-page.module').then((m) => m.AdminPageModule)
|
|
|
|
},
|
2021-05-14 21:15:20 +02:00
|
|
|
{
|
|
|
|
path: 'auth',
|
|
|
|
loadChildren: () =>
|
|
|
|
import('./pages/auth/auth-page.module').then((m) => m.AuthPageModule)
|
|
|
|
},
|
2022-01-01 10:10:37 +01:00
|
|
|
{
|
|
|
|
path: 'blog',
|
|
|
|
loadChildren: () =>
|
|
|
|
import('./pages/blog/blog-page.module').then((m) => m.BlogPageModule)
|
|
|
|
},
|
2021-07-31 11:21:32 +02:00
|
|
|
{
|
2022-08-13 10:29:36 +02:00
|
|
|
path: 'blog/2021/07/hallo-ghostfolio',
|
2021-07-31 11:21:32 +02:00
|
|
|
loadChildren: () =>
|
|
|
|
import(
|
|
|
|
'./pages/blog/2021/07/hallo-ghostfolio/hallo-ghostfolio-page.module'
|
|
|
|
).then((m) => m.HalloGhostfolioPageModule)
|
|
|
|
},
|
2022-06-30 21:07:35 +02:00
|
|
|
{
|
2022-08-13 10:29:36 +02:00
|
|
|
path: 'blog/2021/07/hello-ghostfolio',
|
2021-07-31 11:21:32 +02:00
|
|
|
loadChildren: () =>
|
|
|
|
import(
|
|
|
|
'./pages/blog/2021/07/hello-ghostfolio/hello-ghostfolio-page.module'
|
|
|
|
).then((m) => m.HelloGhostfolioPageModule)
|
|
|
|
},
|
2022-01-05 20:22:59 +01:00
|
|
|
{
|
2022-08-13 10:29:36 +02:00
|
|
|
path: 'blog/2022/01/ghostfolio-first-months-in-open-source',
|
2022-01-05 20:22:59 +01:00
|
|
|
loadChildren: () =>
|
|
|
|
import(
|
|
|
|
'./pages/blog/2022/01/first-months-in-open-source/first-months-in-open-source-page.module'
|
|
|
|
).then((m) => m.FirstMonthsInOpenSourcePageModule)
|
|
|
|
},
|
2022-07-23 12:06:49 +02:00
|
|
|
{
|
2022-08-13 10:29:36 +02:00
|
|
|
path: 'blog/2022/07/ghostfolio-meets-internet-identity',
|
2022-07-23 12:06:49 +02:00
|
|
|
loadChildren: () =>
|
|
|
|
import(
|
|
|
|
'./pages/blog/2022/07/ghostfolio-meets-internet-identity/ghostfolio-meets-internet-identity-page.module'
|
|
|
|
).then((m) => m.GhostfolioMeetsInternetIdentityPageModule)
|
|
|
|
},
|
2022-07-14 16:16:07 +02:00
|
|
|
{
|
2022-08-13 10:29:36 +02:00
|
|
|
path: 'blog/2022/07/how-do-i-get-my-finances-in-order',
|
2022-07-14 16:16:07 +02:00
|
|
|
loadChildren: () =>
|
|
|
|
import(
|
|
|
|
'./pages/blog/2022/07/how-do-i-get-my-finances-in-order/how-do-i-get-my-finances-in-order-page.module'
|
|
|
|
).then((m) => m.HowDoIGetMyFinancesInOrderPageModule)
|
|
|
|
},
|
2022-08-13 10:42:56 +02:00
|
|
|
{
|
|
|
|
path: 'blog/2022/08/500-stars-on-github',
|
|
|
|
loadChildren: () =>
|
|
|
|
import(
|
|
|
|
'./pages/blog/2022/08/500-stars-on-github/500-stars-on-github-page.module'
|
|
|
|
).then((m) => m.FiveHundredStarsOnGitHubPageModule)
|
|
|
|
},
|
2022-10-01 18:35:55 +02:00
|
|
|
{
|
|
|
|
path: 'blog/2022/10/hacktoberfest-2022',
|
|
|
|
loadChildren: () =>
|
|
|
|
import(
|
|
|
|
'./pages/blog/2022/10/hacktoberfest-2022/hacktoberfest-2022-page.module'
|
|
|
|
).then((m) => m.Hacktoberfest2022PageModule)
|
|
|
|
},
|
2022-11-14 20:45:41 +01:00
|
|
|
{
|
|
|
|
path: 'blog/2022/11/black-friday-2022',
|
|
|
|
loadChildren: () =>
|
|
|
|
import(
|
|
|
|
'./pages/blog/2022/11/black-friday-2022/black-friday-2022-page.module'
|
|
|
|
).then((m) => m.BlackFriday2022PageModule)
|
|
|
|
},
|
2022-12-26 12:23:43 +01:00
|
|
|
{
|
|
|
|
path: 'blog/2022/12/the-importance-of-tracking-your-personal-finances',
|
|
|
|
loadChildren: () =>
|
|
|
|
import(
|
|
|
|
'./pages/blog/2022/12/the-importance-of-tracking-your-personal-finances/the-importance-of-tracking-your-personal-finances-page.module'
|
|
|
|
).then((m) => m.TheImportanceOfTrackingYourPersonalFinancesPageModule)
|
|
|
|
},
|
2023-01-21 16:07:32 +01:00
|
|
|
{
|
|
|
|
path: 'blog/2023/01/ghostfolio-auf-sackgeld-vorgestellt',
|
|
|
|
loadChildren: () =>
|
|
|
|
import(
|
|
|
|
'./pages/blog/2023/01/ghostfolio-auf-sackgeld-vorgestellt/ghostfolio-auf-sackgeld-vorgestellt-page.module'
|
|
|
|
).then((m) => m.GhostfolioAufSackgeldVorgestelltPageModule)
|
|
|
|
},
|
2022-08-13 10:29:36 +02:00
|
|
|
{
|
|
|
|
path: 'demo',
|
|
|
|
loadChildren: () =>
|
|
|
|
import('./pages/demo/demo-page.module').then((m) => m.DemoPageModule)
|
|
|
|
},
|
2022-07-29 18:32:26 +02:00
|
|
|
{
|
|
|
|
path: 'faq',
|
|
|
|
loadChildren: () =>
|
|
|
|
import('./pages/faq/faq-page.module').then((m) => m.FaqPageModule)
|
|
|
|
},
|
2022-02-13 18:12:59 +01:00
|
|
|
{
|
|
|
|
path: 'features',
|
|
|
|
loadChildren: () =>
|
|
|
|
import('./pages/features/features-page.module').then(
|
|
|
|
(m) => m.FeaturesPageModule
|
|
|
|
)
|
|
|
|
},
|
2021-04-13 21:53:58 +02:00
|
|
|
{
|
|
|
|
path: 'home',
|
|
|
|
loadChildren: () =>
|
|
|
|
import('./pages/home/home-page.module').then((m) => m.HomePageModule)
|
|
|
|
},
|
2022-07-05 21:45:27 +02:00
|
|
|
{
|
|
|
|
path: 'markets',
|
|
|
|
loadChildren: () =>
|
|
|
|
import('./pages/markets/markets-page.module').then(
|
|
|
|
(m) => m.MarketsPageModule
|
|
|
|
)
|
|
|
|
},
|
2021-10-19 18:27:50 +02:00
|
|
|
{
|
|
|
|
path: 'p',
|
|
|
|
loadChildren: () =>
|
|
|
|
import('./pages/public/public-page.module').then(
|
|
|
|
(m) => m.PublicPageModule
|
|
|
|
)
|
|
|
|
},
|
2021-05-14 21:15:20 +02:00
|
|
|
{
|
2021-08-07 07:12:40 +02:00
|
|
|
path: 'portfolio',
|
2021-05-14 21:15:20 +02:00
|
|
|
loadChildren: () =>
|
2021-08-07 07:12:40 +02:00
|
|
|
import('./pages/portfolio/portfolio-page.module').then(
|
|
|
|
(m) => m.PortfolioPageModule
|
2021-05-14 21:15:20 +02:00
|
|
|
)
|
|
|
|
},
|
2021-06-02 20:10:44 +02:00
|
|
|
{
|
2021-08-07 07:12:40 +02:00
|
|
|
path: 'pricing',
|
2021-06-02 20:10:44 +02:00
|
|
|
loadChildren: () =>
|
2021-08-07 07:12:40 +02:00
|
|
|
import('./pages/pricing/pricing-page.module').then(
|
|
|
|
(m) => m.PricingPageModule
|
2021-06-02 20:10:44 +02:00
|
|
|
)
|
|
|
|
},
|
|
|
|
{
|
2021-08-07 07:12:40 +02:00
|
|
|
path: 'register',
|
2021-06-02 20:10:44 +02:00
|
|
|
loadChildren: () =>
|
2021-08-07 07:12:40 +02:00
|
|
|
import('./pages/register/register-page.module').then(
|
|
|
|
(m) => m.RegisterPageModule
|
2021-06-02 20:10:44 +02:00
|
|
|
)
|
|
|
|
},
|
2021-04-13 21:53:58 +02:00
|
|
|
{
|
2021-08-07 07:12:40 +02:00
|
|
|
path: 'resources',
|
2021-04-13 21:53:58 +02:00
|
|
|
loadChildren: () =>
|
2021-08-07 07:12:40 +02:00
|
|
|
import('./pages/resources/resources-page.module').then(
|
|
|
|
(m) => m.ResourcesPageModule
|
|
|
|
)
|
|
|
|
},
|
|
|
|
{
|
|
|
|
path: 'start',
|
|
|
|
loadChildren: () =>
|
|
|
|
import('./pages/landing/landing-page.module').then(
|
|
|
|
(m) => m.LandingPageModule
|
2021-04-13 21:53:58 +02:00
|
|
|
)
|
|
|
|
},
|
2021-06-14 21:57:09 +02:00
|
|
|
{
|
|
|
|
path: 'webauthn',
|
|
|
|
loadChildren: () =>
|
|
|
|
import('./pages/webauthn/webauthn-page.module').then(
|
|
|
|
(m) => m.WebauthnPageModule
|
|
|
|
)
|
|
|
|
},
|
2021-05-22 10:04:56 +02:00
|
|
|
{
|
|
|
|
path: 'zen',
|
|
|
|
loadChildren: () =>
|
|
|
|
import('./pages/zen/zen-page.module').then((m) => m.ZenPageModule)
|
|
|
|
},
|
2021-04-13 21:53:58 +02:00
|
|
|
{
|
|
|
|
// wildcard, if requested url doesn't match any paths for routes defined
|
|
|
|
// earlier
|
|
|
|
path: '**',
|
2021-05-19 20:36:44 +02:00
|
|
|
redirectTo: 'home',
|
2021-04-13 21:53:58 +02:00
|
|
|
pathMatch: 'full'
|
|
|
|
}
|
|
|
|
];
|
|
|
|
|
|
|
|
@NgModule({
|
|
|
|
imports: [
|
|
|
|
RouterModule.forRoot(
|
|
|
|
routes,
|
|
|
|
// Preload all lazy loaded modules with the attribute preload === true
|
|
|
|
{
|
2021-07-24 21:17:06 +02:00
|
|
|
anchorScrolling: 'enabled',
|
2021-04-13 21:53:58 +02:00
|
|
|
preloadingStrategy: ModulePreloadService,
|
|
|
|
// enableTracing: true // <-- debugging purposes only
|
2021-04-20 21:52:01 +02:00
|
|
|
relativeLinkResolution: 'legacy'
|
2021-04-13 21:53:58 +02:00
|
|
|
}
|
|
|
|
)
|
|
|
|
],
|
2022-07-30 21:26:08 +02:00
|
|
|
providers: [
|
|
|
|
ModulePreloadService,
|
|
|
|
{ provide: TitleStrategy, useClass: PageTitleStrategy }
|
|
|
|
],
|
2021-04-13 21:53:58 +02:00
|
|
|
exports: [RouterModule]
|
|
|
|
})
|
|
|
|
export class AppRoutingModule {}
|