mempool/frontend/src/app/graphs/graphs.routing.module.ts

184 lines
6.4 KiB
TypeScript
Raw Normal View History

import { NgModule } from '@angular/core';
import { RouterModule, Routes } from '@angular/router';
import { BlockHealthGraphComponent } from '../components/block-health-graph/block-health-graph.component';
import { BlockFeeRatesGraphComponent } from '../components/block-fee-rates-graph/block-fee-rates-graph.component';
import { BlockFeesGraphComponent } from '../components/block-fees-graph/block-fees-graph.component';
2024-05-03 12:33:05 +02:00
import { BlockFeesSubsidyGraphComponent } from '../components/block-fees-subsidy-graph/block-fees-subsidy-graph.component';
import { BlockRewardsGraphComponent } from '../components/block-rewards-graph/block-rewards-graph.component';
import { BlockSizesWeightsGraphComponent } from '../components/block-sizes-weights-graph/block-sizes-weights-graph.component';
import { GraphsComponent } from '../components/graphs/graphs.component';
import { HashrateChartComponent } from '../components/hashrate-chart/hashrate-chart.component';
import { HashrateChartPoolsComponent } from '../components/hashrates-chart-pools/hashrate-chart-pools.component';
import { MempoolBlockComponent } from '../components/mempool-block/mempool-block.component';
import { MiningDashboardComponent } from '../components/mining-dashboard/mining-dashboard.component';
2023-12-07 08:26:32 +00:00
import { AcceleratorDashboardComponent } from '../components/acceleration/accelerator-dashboard/accelerator-dashboard.component';
import { PoolRankingComponent } from '../components/pool-ranking/pool-ranking.component';
import { PoolComponent } from '../components/pool/pool.component';
import { StartComponent } from '../components/start/start.component';
import { StatisticsComponent } from '../components/statistics/statistics.component';
import { TelevisionComponent } from '../components/television/television.component';
import { DashboardComponent } from '../dashboard/dashboard.component';
2024-04-25 20:20:41 +00:00
import { CustomDashboardComponent } from '../components/custom-dashboard/custom-dashboard.component';
2023-12-07 08:26:32 +00:00
import { AccelerationFeesGraphComponent } from '../components/acceleration/acceleration-fees-graph/acceleration-fees-graph.component';
import { AccelerationsListComponent } from '../components/acceleration/accelerations-list/accelerations-list.component';
2024-03-18 08:19:56 +00:00
import { AddressComponent } from '../components/address/address.component';
2022-05-20 17:54:06 +04:00
2024-04-25 20:20:41 +00:00
const browserWindow = window || {};
// @ts-ignore
const browserWindowEnv = browserWindow.__env || {};
const isCustomized = browserWindowEnv?.customize;
const routes: Routes = [
{
path: '',
children: [
{
path: 'mining/pool/:slug',
2022-10-12 22:13:29 +00:00
data: { networks: ['bitcoin'] },
component: PoolComponent,
},
{
path: 'mining',
2022-10-12 22:13:29 +00:00
data: { networks: ['bitcoin'] },
component: StartComponent,
children: [
{
path: '',
component: MiningDashboardComponent,
},
]
},
2023-07-20 16:26:42 +09:00
{
path: 'acceleration',
data: { networks: ['bitcoin'] },
component: StartComponent,
children: [
{
path: '',
component: AcceleratorDashboardComponent,
}
]
},
{
path: 'acceleration/list/:page',
data: { networks: ['bitcoin'] },
component: AccelerationsListComponent,
},
{
path: 'acceleration/list',
redirectTo: 'acceleration/list/1',
},
{
path: 'mempool-block/:id',
2022-10-12 22:13:29 +00:00
data: { networks: ['bitcoin', 'liquid'] },
component: StartComponent,
children: [
{
path: '',
component: MempoolBlockComponent,
},
]
},
2024-03-18 08:19:56 +00:00
{
path: 'address/:id',
children: [],
component: AddressComponent,
data: {
ogImage: true,
networkSpecific: true,
}
},
{
path: 'graphs',
2022-10-12 22:13:29 +00:00
data: { networks: ['bitcoin', 'liquid'] },
component: GraphsComponent,
children: [
{
path: 'mempool',
2022-10-12 22:13:29 +00:00
data: { networks: ['bitcoin', 'liquid'] },
component: StatisticsComponent,
},
{
path: 'mining/hashrate-difficulty',
2022-10-12 22:13:29 +00:00
data: { networks: ['bitcoin'] },
component: HashrateChartComponent,
},
{
path: 'mining/pools-dominance',
2022-10-12 22:13:29 +00:00
data: { networks: ['bitcoin'] },
component: HashrateChartPoolsComponent,
},
{
path: 'mining/pools',
2022-10-12 22:13:29 +00:00
data: { networks: ['bitcoin'] },
component: PoolRankingComponent,
},
{
path: 'mining/block-fees',
2022-10-12 22:13:29 +00:00
data: { networks: ['bitcoin'] },
component: BlockFeesGraphComponent,
},
2024-05-03 12:33:05 +02:00
{
path: 'mining/block-fees-subsidy',
data: { networks: ['bitcoin'] },
component: BlockFeesSubsidyGraphComponent,
},
{
path: 'mining/block-rewards',
2022-10-12 22:13:29 +00:00
data: { networks: ['bitcoin'] },
component: BlockRewardsGraphComponent,
},
{
path: 'mining/block-fee-rates',
2022-10-12 22:13:29 +00:00
data: { networks: ['bitcoin'] },
component: BlockFeeRatesGraphComponent,
},
{
path: 'mining/block-sizes-weights',
2022-10-12 22:13:29 +00:00
data: { networks: ['bitcoin'] },
component: BlockSizesWeightsGraphComponent,
},
2023-07-21 14:11:46 +09:00
{
path: 'acceleration/fees',
data: { networks: ['bitcoin'] },
component: AccelerationFeesGraphComponent,
},
2022-07-06 15:15:08 +02:00
{
path: 'lightning',
data: { preload: true, networks: ['bitcoin'] },
loadChildren: () => import ('./lightning-graphs.module').then(m => m.LightningGraphsModule),
},
{
path: '',
2022-11-28 11:55:23 +09:00
pathMatch: 'full',
redirectTo: 'mempool',
},
{
path: 'mining/block-health',
2022-10-12 22:13:29 +00:00
data: { networks: ['bitcoin'] },
component: BlockHealthGraphComponent,
},
]
},
{
path: '',
component: StartComponent,
children: [{
path: '',
2024-04-25 20:20:41 +00:00
component: isCustomized ? CustomDashboardComponent : DashboardComponent,
}]
},
]
},
{
path: 'tv',
2022-10-12 22:13:29 +00:00
data: { networks: ['bitcoin', 'liquid'] },
component: TelevisionComponent
},
];
@NgModule({
imports: [RouterModule.forChild(routes)],
})
export class GraphsRoutingModule { }