produzione 1 #9

Merged
JoeKung merged 135 commits from dev into main 2026-03-03 09:58:04 +01:00
5 changed files with 23 additions and 9 deletions
Showing only changes of commit 7ebaff322c - Show all commits

View File

@@ -10,7 +10,7 @@ export const routes: Routes = [
loadComponent: () => import('./features/home/home.component').then(m => m.HomeComponent) loadComponent: () => import('./features/home/home.component').then(m => m.HomeComponent)
}, },
{ {
path: 'cal', path: 'calculator',
loadChildren: () => import('./features/calculator/calculator.routes').then(m => m.CALCULATOR_ROUTES) loadChildren: () => import('./features/calculator/calculator.routes').then(m => m.CALCULATOR_ROUTES)
}, },
{ {

View File

@@ -10,7 +10,7 @@
<nav class="nav-links" [class.open]="isMenuOpen"> <nav class="nav-links" [class.open]="isMenuOpen">
<a routerLink="/" routerLinkActive="active" [routerLinkActiveOptions]="{exact: true}" (click)="closeMenu()">{{ 'NAV.HOME' | translate }}</a> <a routerLink="/" routerLinkActive="active" [routerLinkActiveOptions]="{exact: true}" (click)="closeMenu()">{{ 'NAV.HOME' | translate }}</a>
<a routerLink="/cal" routerLinkActive="active" [routerLinkActiveOptions]="{exact: false}" (click)="closeMenu()">{{ 'NAV.CALCULATOR' | translate }}</a> <a routerLink="/calculator/basic" routerLinkActive="active" [routerLinkActiveOptions]="{exact: false}" (click)="closeMenu()">{{ 'NAV.CALCULATOR' | translate }}</a>
<a routerLink="/shop" routerLinkActive="active" (click)="closeMenu()">{{ 'NAV.SHOP' | translate }}</a> <a routerLink="/shop" routerLinkActive="active" (click)="closeMenu()">{{ 'NAV.SHOP' | translate }}</a>
<a routerLink="/about" routerLinkActive="active" (click)="closeMenu()">{{ 'NAV.ABOUT' | translate }}</a> <a routerLink="/about" routerLinkActive="active" (click)="closeMenu()">{{ 'NAV.ABOUT' | translate }}</a>
<a routerLink="/contact" routerLinkActive="active" (click)="closeMenu()">{{ 'NAV.CONTACT' | translate }}</a> <a routerLink="/contact" routerLinkActive="active" (click)="closeMenu()">{{ 'NAV.CONTACT' | translate }}</a>

View File

@@ -1,4 +1,4 @@
import { Component, signal, ViewChild, ElementRef } from '@angular/core'; import { Component, signal, ViewChild, ElementRef, OnInit } from '@angular/core';
import { CommonModule } from '@angular/common'; import { CommonModule } from '@angular/common';
import { TranslateModule } from '@ngx-translate/core'; import { TranslateModule } from '@ngx-translate/core';
@@ -9,7 +9,7 @@ import { QuoteResultComponent } from './components/quote-result/quote-result.com
import { QuoteRequest, QuoteResult, QuoteEstimatorService } from './services/quote-estimator.service'; import { QuoteRequest, QuoteResult, QuoteEstimatorService } from './services/quote-estimator.service';
import { UserDetailsComponent } from './components/user-details/user-details.component'; import { UserDetailsComponent } from './components/user-details/user-details.component';
import { SuccessStateComponent } from '../../shared/components/success-state/success-state.component'; import { SuccessStateComponent } from '../../shared/components/success-state/success-state.component';
import { Router } from '@angular/router'; import { Router, ActivatedRoute } from '@angular/router';
@Component({ @Component({
selector: 'app-calculator-page', selector: 'app-calculator-page',
@@ -18,7 +18,7 @@ import { Router } from '@angular/router';
templateUrl: './calculator-page.component.html', templateUrl: './calculator-page.component.html',
styleUrl: './calculator-page.component.scss' styleUrl: './calculator-page.component.scss'
}) })
export class CalculatorPageComponent { export class CalculatorPageComponent implements OnInit {
mode = signal<any>('easy'); mode = signal<any>('easy');
step = signal<'upload' | 'quote' | 'details' | 'success'>('upload'); step = signal<'upload' | 'quote' | 'details' | 'success'>('upload');
@@ -32,7 +32,19 @@ export class CalculatorPageComponent {
@ViewChild('uploadForm') uploadForm!: UploadFormComponent; @ViewChild('uploadForm') uploadForm!: UploadFormComponent;
@ViewChild('resultCol') resultCol!: ElementRef; @ViewChild('resultCol') resultCol!: ElementRef;
constructor(private estimator: QuoteEstimatorService, private router: Router) {} constructor(
private estimator: QuoteEstimatorService,
private router: Router,
private route: ActivatedRoute
) {}
ngOnInit() {
this.route.data.subscribe(data => {
if (data['mode']) {
this.mode.set(data['mode']);
}
});
}
onCalculate(req: QuoteRequest) { onCalculate(req: QuoteRequest) {
// ... (logic remains the same, simplified for diff) // ... (logic remains the same, simplified for diff)

View File

@@ -2,5 +2,7 @@ import { Routes } from '@angular/router';
import { CalculatorPageComponent } from './calculator-page.component'; import { CalculatorPageComponent } from './calculator-page.component';
export const CALCULATOR_ROUTES: Routes = [ export const CALCULATOR_ROUTES: Routes = [
{ path: '', component: CalculatorPageComponent } { path: '', redirectTo: 'basic', pathMatch: 'full' },
{ path: 'basic', component: CalculatorPageComponent, data: { mode: 'easy' } },
{ path: 'advanced', component: CalculatorPageComponent, data: { mode: 'advanced' } }
]; ];

View File

@@ -15,7 +15,7 @@
Se devi ancora crearlo, il nostro team di design lo progetterà per te. Se devi ancora crearlo, il nostro team di design lo progetterà per te.
</p> </p>
<div class="hero-actions"> <div class="hero-actions">
<app-button variant="primary" routerLink="/cal">Calcola Preventivo</app-button> <app-button variant="primary" routerLink="/calculator/basic">Calcola Preventivo</app-button>
<app-button variant="outline" routerLink="/shop">Vai allo shop</app-button> <app-button variant="outline" routerLink="/shop">Vai allo shop</app-button>
<app-button variant="text" routerLink="/contact">Parla con noi</app-button> <app-button variant="text" routerLink="/contact">Parla con noi</app-button>
</div> </div>
@@ -49,7 +49,7 @@
<li>Ricevi subito costo e tempo</li> <li>Ricevi subito costo e tempo</li>
</ul> </ul>
<div class="quote-actions"> <div class="quote-actions">
<app-button variant="primary" [fullWidth]="true" routerLink="/cal">Apri calcolatore</app-button> <app-button variant="primary" [fullWidth]="true" routerLink="/calculator/basic">Apri calcolatore</app-button>
<app-button variant="outline" [fullWidth]="true" routerLink="/contact">Parla con noi</app-button> <app-button variant="outline" [fullWidth]="true" routerLink="/contact">Parla con noi</app-button>
</div> </div>
</app-card> </app-card>