Press n or j to go to the next uncovered block, b, p or k for the previous block.
| 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 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 | 1x 7x | /**
* BUILT WITH O2.SERVICES AI HIVE
*
* This file was created by AI Hive - a dynamic swarm of AI agents that
* transform customer requirements into shipped products, handling every
* phase of the software engineering lifecycle.
*
* IMPORTANT: Keep this file focused and under 200 lines to ensure
* AI agents can effectively work with it.
*
* Learn more: https://o2.services
*/
import { Component } from '@angular/core';
import { RouterOutlet, RouterLink, RouterLinkActive } from '@angular/router';
import { CommonModule } from '@angular/common';
@Component({
selector: 'app-root',
standalone: true,
imports: [CommonModule, RouterOutlet, RouterLink, RouterLinkActive],
template: `
<div class="app-container">
<header class="app-header">
<h1>CAS/DISOT System</h1>
<nav class="main-nav">
<a routerLink="/" routerLinkActive="active" [routerLinkActiveOptions]="{exact: true}">Home</a>
<a routerLink="/content" routerLinkActive="active">Content List</a>
<a routerLink="/content/upload" routerLinkActive="active">Upload</a>
<a routerLink="/disot/create" routerLinkActive="active">Create Entry</a>
<a routerLink="/disot/verify" routerLinkActive="active">Verify</a>
<a routerLink="/metadata/create" routerLinkActive="active">Metadata</a>
<a routerLink="/settings" routerLinkActive="active">Settings</a>
</nav>
</header>
<main class="main-content">
<router-outlet></router-outlet>
</main>
<footer class="app-footer">
<p>Decentralized Content Management System</p>
</footer>
</div>
`,
styles: [`
.app-container {
min-height: 100vh;
display: flex;
flex-direction: column;
}
.app-header {
background-color: #2c3e50;
color: white;
padding: 20px;
box-shadow: 0 2px 4px rgba(0,0,0,0.1);
}
.app-header h1 {
margin: 0 0 15px 0;
font-size: 24px;
}
.main-nav {
display: flex;
gap: 20px;
}
.main-nav a {
color: #ecf0f1;
text-decoration: none;
padding: 8px 16px;
border-radius: 4px;
transition: background-color 0.3s;
}
.main-nav a:hover {
background-color: #34495e;
}
.main-nav a.active {
background-color: #3498db;
}
.main-content {
flex: 1;
background-color: #f5f5f5;
padding: 20px;
}
.app-footer {
background-color: #2c3e50;
color: #ecf0f1;
text-align: center;
padding: 20px;
}
.app-footer p {
margin: 0;
}
`]
})
export class App {
protected title = 'cas-app';
}
|