File size: 1,708 Bytes
1bc149f
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
import { Component } from '@angular/core';
import {MatTab, MatTabGroup} from "@angular/material/tabs";
import {MatCard, MatCardContent, MatCardHeader, MatCardTitle} from "@angular/material/card";
import {LeaderboardsComponent} from "./leaderboards/leaderboards.component";
import {AboutComponent} from "./about/about.component";

import {SubmissionsComponent} from "./submissions/submissions.component";
import {DashboardComponent} from "./dashboard/dashboard.component";
import {TasksComponent} from "./tasks/tasks.component";
import {DatasetsComponent} from "./datasets/datasets.component";
import {MatButton} from "@angular/material/button";
import {AppStateService} from "../../state_management/services/app-state.service";
import {map} from "rxjs";
import {AsyncPipe, NgForOf, NgOptimizedImage} from "@angular/common";
import {RouterLink} from "@angular/router";
import {MatExpansionPanel, MatExpansionPanelHeader, MatExpansionPanelTitle} from "@angular/material/expansion";

@Component({
  selector: 'app-body',
  standalone: true,
  imports: [
    MatTabGroup,
    MatTab,
    MatCard,
    LeaderboardsComponent,
    AboutComponent,
    SubmissionsComponent,
    DashboardComponent,
    TasksComponent,
    DatasetsComponent,
    MatCardContent,
    MatCardTitle,
    MatCardHeader,
    MatButton,
    AsyncPipe,
    NgForOf,
    NgOptimizedImage,
    RouterLink,
    MatExpansionPanel,
    MatExpansionPanelTitle,
    MatExpansionPanelHeader
  ],
  templateUrl: './body.component.html',
  styleUrl: './body.component.css'
})
export class BodyComponent {

  tasks = this.stateService.state$.pipe(
    map(state => state.tasks)
  );

  constructor(
    private stateService: AppStateService
  ) { }

}