feat(admin): sprint 19 admin dashboard, routing, i18n
- Add admin dashboard feature (models/gateway/facade/components/page) - Wire admin/products routes and backoffice coming-soon placeholders - Add lastPublishedAt to ProjectEditorFacade/state - Add dashboard i18n keys (en/ru/hy) and docs/ADMIN.md Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
@@ -0,0 +1,5 @@
|
||||
<div class="coming-soon">
|
||||
<h1 class="coming-soon__title">{{ titleKey | translate }}</h1>
|
||||
<p class="coming-soon__description">{{ 'dashboard.comingSoonDescription' | translate }}</p>
|
||||
<a class="coming-soon__link" [routerLink]="['../dashboard']">{{ 'dashboard.backToDashboard' | translate }}</a>
|
||||
</div>
|
||||
@@ -0,0 +1,32 @@
|
||||
.coming-soon {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
align-items: flex-start;
|
||||
gap: 12px;
|
||||
max-width: 640px;
|
||||
margin: 40px auto;
|
||||
padding: 24px;
|
||||
text-align: left;
|
||||
}
|
||||
|
||||
.coming-soon__title {
|
||||
margin: 0;
|
||||
font-size: 24px;
|
||||
font-weight: 800;
|
||||
color: var(--text-primary, #1e3c38);
|
||||
}
|
||||
|
||||
.coming-soon__description {
|
||||
margin: 0;
|
||||
color: var(--text-secondary, #667a77);
|
||||
}
|
||||
|
||||
.coming-soon__link {
|
||||
color: var(--primary-color, #497671);
|
||||
font-weight: 600;
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
.coming-soon__link:hover {
|
||||
text-decoration: underline;
|
||||
}
|
||||
@@ -0,0 +1,19 @@
|
||||
import { ChangeDetectionStrategy, Component, inject } from '@angular/core';
|
||||
import { CommonModule } from '@angular/common';
|
||||
import { ActivatedRoute, RouterLink } from '@angular/router';
|
||||
import { TranslatePipe } from '../../../i18n/translate.pipe';
|
||||
|
||||
/** Landing page for backoffice sections not built yet (categories, static pages, transactions, orders, media). Route `data.titleKey` sets the section name; falls back to the generic "coming soon" title. */
|
||||
@Component({
|
||||
selector: 'app-backoffice-coming-soon-page',
|
||||
standalone: true,
|
||||
imports: [CommonModule, RouterLink, TranslatePipe],
|
||||
templateUrl: './backoffice-coming-soon-page.component.html',
|
||||
styleUrls: ['./backoffice-coming-soon-page.component.scss'],
|
||||
changeDetection: ChangeDetectionStrategy.OnPush,
|
||||
})
|
||||
export class BackofficeComingSoonPageComponent {
|
||||
private readonly route = inject(ActivatedRoute);
|
||||
|
||||
readonly titleKey: string = this.route.snapshot.data['titleKey'] ?? 'dashboard.comingSoonTitle';
|
||||
}
|
||||
Reference in New Issue
Block a user