@switch (view()) { @case ('loading') {

Caricamento del checkout…

} @case ('error') {

Non è stato possibile caricare il carrello.

} @case ('empty') {

Il carrello è vuoto: non c'è nulla da pagare.

Vai allo shop

} @default { @if (cart.cart(); as c) {
    @for (s of steps; track s; let i = $index) {
  1. {{ stepTitles[s] }} @if (isDone(s)) { (completato) }

    @if (isDone(s) && !locked()) { }
    @if (isDone(s)) {
    @switch (s) { @case ('contact') {

    {{ email() }}

    } @case ('address') { @if (c.shippingAddress; as a) {

    Spedizione: @for (line of addressLines(a); track $index) {
    {{ line }} }

    } @if (billingDifferent() && c.billingAddress; as b) {

    Fatturazione: @for (line of addressLines(b); track $index) {
    {{ line }} }

    } @if (c.invoice; as inv) {

    Fattura a: {{ inv.companyName }}, P.IVA {{ inv.vatNumber }}

    } } @case ('shipping') { @if (c.shippingMethod; as m) {

    {{ m.name }} — {{ euro(m.amount) }}

    } } }
    } @if (step() === s) {
    @if (stepError(); as message) { } @switch (s) { @case ('contact') {
    @if (authenticated()) {

    Stai ordinando come {{ session.user()?.firstName }} {{ session.user()?.lastName }} ({{ email() }}). Conferma e riepilogo dell'ordine arriveranno a questo indirizzo.

    } @else { }
    } @case ('address') {
    Indirizzo di spedizione
    @if (billingDifferent()) {
    Indirizzo di fatturazione
    } @if (wantsInvoice()) { @let inv = addressForm.controls.invoice.controls;
    Dati per la fattura

    Indica il codice destinatario oppure la PEC per ricevere la fattura elettronica.

    }
    Consensi @if (privacyError()) {

    Il consenso è necessario per completare l'ordine.

    }
    } @case ('shipping') {
    @if (shippingOptions(); as options) { @if (options.length === 0) {

    Nessuna modalità di spedizione disponibile per questo indirizzo. Contattaci per completare l'ordine.

    } @else {
    Modalità di spedizione @for (o of options; track o.id) { }
    } } @else {

    Caricamento delle modalità di spedizione…

    }
    } @case ('payment') { @switch (paymentState()) { @case ('unavailable') { } @case ('loading') {

    Preparazione del pagamento sicuro…

    } @case ('completing') {

    Pagamento confermato, registrazione dell'ordine…

    } }
    @if (paymentError(); as message) { }
    @switch (paymentState()) { @case ('error') { } @case ('complete-failed') { } @default { @if (paymentState() !== 'unavailable') { } } }

    Pagamento sicuro gestito da Stripe: i dati della carta non passano dai nostri server. Proseguendo confermi l'ordine con obbligo di pagamento.

    } }
    }
  2. }
} } }