Skip to main content

Catalogo dei componenti v0.5.2

Tutti i componenti di design-laravel-kit. Questa pagina è realizzata interamente con i componenti del pacchetto.

Layout

Pagina completa: <x-italia::layout> combina l'header (slim + center + navbar), un contenitore principale con skip link accessibile e un footer. Questa pagina è renderizzata tramite <x-italia::layout>: l'header in alto e il footer in fondo sono demo interattive.

Mostra il codice
<x-italia::layout title="Titolo della pagina">
    <x-slot:slim ente="Comune di Roma" ente-url="/" login-url="/login"></x-slot:slim>
    <x-slot:center title="Comune di Roma" tagline="Portale istituzionale" url="/" search-url="/cerca">
        <x-italia::header-social-link url="https://facebook.com" icon="it-facebook" label="Facebook" />
    </x-slot:center>
    <x-slot:navbar>
        <x-italia::header-nav-item text="Amministrazione" url="/amministrazione" />
        <x-italia::header-nav-item text="Servizi" url="/servizi" />
    </x-slot:navbar>
    <x-slot:footer title="Comune di Roma">
        <x-italia::footer-legal-link url="/privacy" text="Privacy policy" data-element="privacy-policy-link" />
    </x-slot:footer>
    <x-slot:breadcrumbs>...</x-slot:breadcrumbs>
    Contenuto della pagina
</x-italia::layout>
Layout senza footer
Pagina senza footer Skip to main content

Accesso al servizio

Pagina di esempio senza footer, ideale per il login e per i layout minimali.

<x-italia::layout title="Pagina senza footer" :show-footer="false">
    <h2 class="h4">Accesso al servizio</h2>
    <p>Pagina di esempio senza footer, ideale per il login e per i layout minimali.</p>
</x-italia::layout>

Alert

Messaggi di notifica con quattro varianti, titolo opzionale e versione chiudibile. L'icona della variante è resa dal CSS di Bootstrap Italia.

Mostra il codice
<x-italia::alert variant="info">Informazione importante.</x-italia::alert>
<x-italia::alert variant="success" title="Fatto!">Operazione completata.</x-italia::alert>
<x-italia::alert variant="warning">Attenzione a questo elemento.</x-italia::alert>
<x-italia::alert variant="danger" title="Errore" dismissible>Qualcosa è andato storto.</x-italia::alert>

Badge

Etichette di stato in otto varianti, formato pillola e versione link.

Principale Secondario Successo Pericolo Avviso Informazione Chiaro Scuro 3 nuovi Badge con link
Mostra il codice
<x-italia::badge>Principale</x-italia::badge>
<x-italia::badge variant="success">Successo</x-italia::badge>
<x-italia::badge variant="danger" pill>3 nuovi</x-italia::badge>
<x-italia::badge variant="info" href="/foo">Badge con link</x-italia::badge>

Card

Contenitore flessibile per i contenuti: titolo, sottotitolo, immagine, azioni e variante completamente cliccabile. La card con immagine utilizza la struttura img-responsive-wrapper di Bootstrap Italia (ritaglio 31:19).

Titolo della card

Sottotitolo

Contenuto della card con testo descrittivo.
Immagine descrittiva della card

Card con immagine

Testo della card con immagine sopra.

Card con azioni

Card con slot per azioni in fondo.

Card link

Cliccabile nella sua interezza.
Mostra il codice
<x-italia::card title="Titolo della card" subtitle="Sottotitolo">
    Contenuto della card con testo descrittivo.
</x-italia::card>

<x-italia::card title="Card con immagine" image="https://..." image-alt="Immagine descrittiva della card">
    Testo della card con immagine sopra.
</x-italia::card>

<x-italia::card title="Card con azioni">
    Card con slot per azioni in fondo.
    <x-slot:actions>
        <x-italia::button size="sm">Azione</x-italia::button>
        <x-italia::button variant="outline" size="sm">Annulla</x-italia::button>
    </x-slot:actions>
</x-italia::card>

<x-italia::card title="Card link" href="/catalog">
    Cliccabile nella sua interezza.
</x-italia::card>

// Varianti
<x-italia::card big>Card grande</x-italia::card>
<x-italia::card teaser>Card teaser</x-italia::card>

Pulsante SPID

Pulsante di accesso SPID, compatibile con italia/spid-laravel (percorso predefinito /spid/login). Include il testo ufficiale AgID «Entra con SPID» e un logo ufficiale integrato.

Menu a discesa degli Identity Provider (lista statica; chi integra il pacchetto collega il JavaScript)

Pulsante CIE

Pulsante di accesso CIE (Carta d'Identità Elettronica), con percorso predefinito /cie/login.

Button

Cinque varianti, tre dimensioni, stati disabilitato/in caricamento e variante link.

Link con aspetto da pulsante Link disabilitato
Mostra il codice
<x-italia::button>Principale</x-italia::button>
<x-italia::button variant="secondary">Secondario</x-italia::button>
<x-italia::button variant="danger">Pericolo</x-italia::button>
<x-italia::button variant="outline">Outline</x-italia::button>
<x-italia::button variant="link">Link</x-italia::button>
<x-italia::button size="sm">Piccolo</x-italia::button>
<x-italia::button size="lg">Grande</x-italia::button>
<x-italia::button disabled>Disabilitato</x-italia::button>
<x-italia::button loading>Caricamento…</x-italia::button>
<x-italia::button href="/catalog">Link con aspetto da pulsante</x-italia::button>

Spinner

Indicatore di caricamento in quattro dimensioni, cerchio doppio come impostazione predefinita, con etichetta per screen reader.

Loading
Loading
Loading
Caricamento in corso
Loading
Cerchio singolo (:double="false")
Mostra il codice
<x-italia::spinner size="sm" />
<x-italia::spinner />
<x-italia::spinner size="lg" />
<x-italia::spinner size="xl" label="Caricamento in corso" />
<x-italia::spinner :double="false" size="lg" />

Icon

Icone dallo sprite SVG di Bootstrap Italia. Dimensioni: sm, md (predefinita), lg e xl.

it-search
it-close
it-check
it-check-circle
it-info-circle
it-warning
it-error
it-calendar
it-clock
it-user
it-settings
it-mail
it-telephone
it-pin
it-link
it-external-link
it-download
it-upload
it-copy
it-delete
Mostra il codice
<x-italia::icon name="it-search" />
<x-italia::icon name="it-search" size="lg" />
<x-italia::icon name="it-search" size="xl" label="Cerca" />
<x-italia::icon name="it-close" spacing="right" />

Input

Campi di testo con etichetta flottante, vari tipi di input, suggerimenti, stato obbligatorio e gestione degli errori di validazione.

name@example.com
Minimo 18 anni
Questo suggerimento viene nascosto quando compare un errore
Mostra il codice
<x-italia::input name="nome" label="Nome" />
<x-italia::input name="cf_demo" label="Codice Fiscale (demo)" placeholder="RSSMRA80A01H501U" />
<x-italia::input name="email" type="email" label="Email" hint="name@example.com" required />
<x-italia::input name="password" type="password" label="Password" />
<x-italia::input name="eta" type="number" label="Età" hint="Minimo 18 anni" />
<x-italia::input name="semplice" label="Senza etichetta flottante" :floating="false" />

Select

Menu a discesa: semplice, con optgroup, selezione multipla e placeholder.

Seleziona il paese di residenza
Ctrl+clic per selezionare più ruoli
Mostra il codice
<x-italia::select name="paese" label="Paese" required :options="['it' => 'Italia', ...]" placeholder="Seleziona..." />
<x-italia::select name="citta" label="Città" :options="['Nord' => ['mi' => 'Milano', ...], ...]" />
<x-italia::select name="ruoli" label="Ruoli" :options="[...]" multiple />
Mostra il codice
<x-italia::select name="citta-slot" label="Città (slot)">
    <option value="mi">Milano</option>
    <option value="na">Napoli</option>
    <option value="rm">Roma</option>
    <option value="to">Torino</option>
</x-italia::select>

<x-italia::select name="citta-filtro" label="Città (filtro)" placeholder="Tutte le città" :placeholder-disabled="false" :options="['mi' => 'Milano', 'na' => 'Napoli', 'rm' => 'Roma']" />

Textarea

Area di testo con numero di righe configurabile e suggerimento.

Max 500 caratteri
Mostra il codice
<x-italia::textarea name="bio" label="Biografia" hint="Max 500 caratteri" />
<x-italia::textarea name="note" label="Note" :rows="5" />

Checkbox

Checkbox: singola, preselezionata, disabilitata o raggruppata con un nome array.

Gruppo (interessi[])

Mostra il codice
<x-italia::checkbox name="termini" label="Accetto i termini" required />
<x-italia::checkbox name="newsletter" label="Iscriviti alla newsletter" value="yes" />
<x-italia::checkbox name="promo" label="Pre-selezionata" checked />
<x-italia::checkbox name="sms" label="Disabilitata" disabled />

// Gruppo: usa [] nel nome per un array
<x-italia::checkbox name="interessi[]" value="sport" label="Sport" />
<x-italia::checkbox name="interessi[]" value="musica" label="Musica" />
<x-italia::checkbox name="interessi[]" value="viaggi" label="Viaggi" />

Gruppo checkbox

Gruppo di checkbox in un fieldset con un solo messaggio di errore di validazione.

Interessi Seleziona uno o più interessi
Mostra il codice
<form method="get" action="/catalog">
    <x-italia::checkbox-group name="demo" legend="Interessi" hint="Seleziona uno o più interessi">
        <x-italia::checkbox name="demo[]" value="sport" label="Sport" />
        <x-italia::checkbox name="demo[]" value="musica" label="Musica" />
        <x-italia::checkbox name="demo[]" value="viaggi" label="Viaggi" />
    </x-italia::checkbox-group>
</form>

Radio

Gruppo di radio con lo stesso name: è possibile selezionare una sola opzione.

Mostra il codice
<x-italia::radio name="genere" value="m" label="Maschio" />
<x-italia::radio name="genere" value="f" label="Femmina" />
<x-italia::radio name="genere" value="o" label="Altro" />
<x-italia::radio name="genere" value="x" label="Disabilitata" disabled />

Gruppo radio

Gruppo di radio accessibile con fieldset, legend e un unico messaggio di errore.

Genere (required) Seleziona un'opzione
Mostra il codice
<form method="get" action="/catalog">
    <x-italia::radio-group name="demo" legend="Genere" hint="Seleziona un'opzione" required>
        <x-italia::radio name="demo" value="m" label="Maschio" />
        <x-italia::radio name="demo" value="f" label="Femmina" />
        <x-italia::radio name="demo" value="o" label="Altro" />
    </x-italia::radio-group>
</form>