import{a as s}from"./iframe-BaLO-W8Q.js";import"./preload-helper-PPVm8Dsz.js";function c(a){return`
	<div class="col-xs-12 col-sm-6 col-md-4 col-lg-4">
   <div class="date datePicker ">
      <div class="input-relative">
         <label class="control-label inail-label" for="form-data_1">${a.etichetta}</label>
         <input id="form-data_1" class="form-control inail-input" placeholder="gg / mm / aaaa" type="text" data-datepicker-aria>
      </div>
   </div>
   <div class="inail-div-message"></div>
</div>`}function d(a){return`
	<div class="col-xs-12 col-sm-6 col-md-4 col-lg-4">
   <div class="date datePicker ">
      <div class="input-relative">
         <label class="control-label inail-label" for="form-data_2">Label</label>
         <input  id="form-data_2" class="form-control inail-input"  placeholder="gg / mm / aaaa" type="text" data-datepicker-aria ${a.disabilitato?"disabled":""}>
      </div>
   </div>
</div>`}function u(a){const e=a.inErrore?" inail-input-error":"",l=a.inErrore?'aria-labelledby="label-date-error "':"";return`
	<div class="col-xs-12 col-sm-6 col-md-4 col-lg-4">
   <div class="form-group date datePicker ">
      <div class="input-relative">
         <label class="control-label inail-label" for="form-data_3">${a.etichetta}</label>
         <input id="form-data_3" class="form-control inail-input ${e}"  placeholder="gg / mm / aaaa" type="text"  ${l} aria-describedby="error" data-datepicker-aria>
      </div>
      <div class="inail-div-message">
      ${a.inErrore?`<span class="inail-span-error" id="error"><i class="fa-solid fa-circle-exclamation"></i> ${a.messaggioErrore}</span>`:""}
      ${a.info?`<span class="inail-span-ht" id="hint-date-info">${a.messaggioHelper}</span>`:""}
      </div>
   </div>
</div>
	`}function p(a){return`
	<div class="col-xs-12 col-sm-6 col-md-4 col-lg-4">
   <div class="date datePicker ">
    	<div class="input-relative ">
        <label class="control-label inail-label" id="label-date-info" for="form-data_4">${a.etichetta}</label>
         ${a.info?`<span role="button" tabindex="0" 
					class="fa fa-question-circle fa-lg" 
					data-toggle="popover" 
					data-trigger="focus" 
               aria-labelledby="label-date-info"
					data-content="${a.descrizioneTooltip}">
            </span>`:""}
        <input id="form-data_4" class="form-control inail-input"  aria-describedby="hint-date-info" placeholder="gg / mm / aaaa" type="text" data-datepicker-aria>
      </div>
      <div class="inail-div-message">
      ${a.info?`<span class="inail-span-ht" id="hint-date-info">${a.messaggioHelper}</span>`:""}
      </div>
   	</div>
	</div>`}function m(a){return`
  <fieldset>
   <legend class="inail-date-range-title">Periodo</legend>
	<div class="row" aria-labelledby="periodo-label" role="group">
	<div class="col-xs-12 col-sm-6 col-md-4 col-lg-4">
   <div class="date datePicker ">
      <div class="input-relative">
         <label class="control-label inail-label" for="form-data_5">${a.etichetta}</label>
         <input id="form-data_5" class="form-control inail-input"  placeholder="gg / mm / aaaa" type="text" data-datepicker-aria>
      </div>
      <div class="inail-div-message"></div>
   </div>
</div>
<div class="col-xs-12 col-sm-6 col-md-4 col-lg-4">
   <div class="date datePicker ">
      <div class="input-relative">
         <label class="control-label inail-label" for="form-data_6">${a.etichettaSecondaria}</label>
         <input id="form-data_6" class="form-control inail-input" placeholder="gg / mm / aaaa" type="text" data-datepicker-aria>
      </div>
      <div class="inail-div-message"></div>
   </div>
</div>
	</div>
   </fieldset>
	`}const g=`L'etichetta del form deve essere sempre fuori dal campo. Se il campo è “obbligatorio” devono essere inseriti: il simbolo “*” dopo dell'Etichetta (label) del Campo, l'attributo \`aria-required="true"\` nel tag input, select o textarea e,prima del form, la leggenda "I campi contrassegnati con l’asterisco (*) sono obbligatori."

L'errore di compilazione deve essere sempre composto da:
- campo evidenziato
- descrizione dell'errore chiara per qualsiasi utente. Evitare quindi di scrivere frasi come “Errore Generico”

Si suggerisce di inserire, quando necessario, un tooltip per fornire maggiori indicazioni sul valore da inserire. `,b=`**PANORAMICA**  
- **Descrizione generale**: Il componente Button rappresenta un elemento interattivo che consente agli utenti di eseguire azioni o triggerare eventi all'interno di un'interfaccia web.
- **Funzionalità principali**: Offre un'ampia gamma di varianti stilistiche e dimensioni per adattarsi a diversi contesti d'uso, garantendo coerenza e accessibilità.

**CASO D'USO**  
- **Scenari di utilizzo principali**: Utilizzato per inviare moduli, avviare processi, navigare tra pagine o eseguire qualsiasi azione definita dall'applicazione.
- **Contesto di implementazione consigliato**: Ideale in qualsiasi punto dell'interfaccia dove è richiesta un'interazione utente per eseguire un'azione specifica.
- **Posizionamento ideale nell'interfaccia**: Può essere posizionato in moduli, toolbar, dialoghi o come call-to-action prominente nelle pagine.

**CARATTERISTICHE PRINCIPALI**  
- **Funzionalità chiave**:
  - Supporto per varianti di stile: primario, secondario, successo, pericolo, avviso, informazione, luce, scuro.
  - Dimensioni personalizzabili: piccolo, medio, grande.
  - Stato disabilitato per indicare azioni non disponibili.
- **Aspetti tecnici rilevanti**: Implementato utilizzando l'elemento \`<button>\` o \`<a>\` con ruoli e attributi appropriati per garantire l'accessibilità.
- **Caratteristiche di accessibilità**: Progettato per essere completamente navigabile tramite tastiera e compatibile con screen reader, includendo attributi ARIA quando necessario.

**VARIANTI**  
- **Elenco e descrizione delle varianti disponibili**:
  - Stili: primario, secondario, successo, pericolo, avviso, informazione, luce, scuro.
  - Dimensioni: piccolo, medio, grande.
- **Casi d'uso specifici per ogni variante**:
  - Stili diversi per indicare l'importanza o la natura dell'azione.
  - Dimensioni diverse per adattarsi a spazi specifici nell'interfaccia.

**PROPRIETÀ**  
- **Proprietà configurabili**:
  - \`type\`: specifica il tipo di pulsante (\`button\`, \`submit\`, \`reset\`).
  - \`disabled\`: disabilita l'interazione con il pulsante.
  - \`aria-label\`: fornisce un'etichetta accessibile per il pulsante.
- **Parametri disponibili**: Possibilità di aggiungere attributi personalizzati per estendere la funzionalità.
- **Attributi per l'accessibilità**: Utilizzo di \`aria-label\` o \`aria-labelledby\` per descrivere l'azione del pulsante.

**DETTAGLI DI IMPLEMENTAZIONE**  
- **Struttura HTML**: Il pulsante è rappresentato da un elemento \`<button>\` o \`<a>\` con classi specifiche per lo stile e attributi per l'accessibilità.
- **Stile e CSS utilizzati**: Utilizza classi CSS per gestire il layout e l'aspetto, garantendo coerenza con il design system.
- **Variabili CSS disponibili e loro funzione**:
  - \`--btn-padding\`: padding interno del pulsante.
  - \`--btn-font-size\`: dimensione del testo del pulsante.
  - \`--btn-border-radius\`: raggio dei bordi del pulsante.
  - \`--btn-background-color\`: colore di sfondo del pulsante.
  - \`--btn-text-color\`: colore del testo del pulsante.

**BEST PRACTICES**  
- **Raccomandazioni d'uso**:
  - Utilizzare etichette chiare e concise che descrivano l'azione del pulsante.
  - Assicurarsi che il pulsante sia facilmente identificabile e distinguibile dagli altri elementi.
- **Linee guida implementative**: Evitare di utilizzare pulsanti per navigare tra pagine; preferire link per la navigazione.
- **Pratiche da evitare**: Evitare di utilizzare pulsanti senza etichette o con etichette ambigue.

**LINEE GUIDA PER L'ACCESSIBILITÀ**  
- **Requisiti di accessibilità**: Assicurarsi che il pulsante sia navigabile tramite tastiera e che abbia un'etichetta descrittiva.
- **Supporto tastiera**: Il pulsante deve essere attivabile tramite la barra spaziatrice o Invio.
- **Configurazione screen reader**: Utilizzare attributi ARIA per fornire informazioni sul contesto e la funzione del pulsante.

**COMPONENTI CORRELATI**  
- **Componenti associati**: Button Group, Toolbar, Icon Button.
- **Relazioni con altri elementi**: Spesso utilizzato all'interno di moduli, dialoghi o come call-to-action nelle pagine.
`,z={title:"Componenti/Form Items/Campi data",parameters:{docs:{description:{component:b},mdxPage:g,showAccessibility:!0}},decorators:[(a,e)=>s(a,e,5,["https://cdn.inailcloud.it/assets/inail/u.1.0/static-webkit/js/custom-webkit.js","https://cdn.inailcloud.it/assets/inail/u.1.0/static/js/main.js"],!0),a=>`<main id="contenutoPrincipale"><div style="height: 150px;">${a()}</div></main>`]},i={name:"Campo data",argTypes:{etichetta:{control:"text",description:"Specifica l'etichetta visualizzata sopra il input data",defaultValue:{summary:"Label"}}},args:{etichetta:"Label"},render:({...a})=>c(a)},t={name:"Campo data disabilitato",argTypes:{etichetta:{control:"text",description:"Specifica l'etichetta visualizzata sopra il input data",defaultValue:{summary:"Label"}},disabilitato:{control:"boolean",description:"Imposta il input data come disabilitato",defaultValue:{summary:!0}}},args:{etichetta:"Label",disabilitato:!0},render:a=>d(a)},o={name:"Campo data con errore",argTypes:{etichetta:{control:"text",description:"Specifica l'etichetta visualizzata sopra il input data",defaultValue:{summary:"Label"}},inErrore:{control:"boolean",description:"Imposta il input data con uno stato di errore",defaultValue:{summary:!0}},messaggioErrore:{control:"text",description:"Visualizza un messaggio di errore sotto il input data",defaultValue:{summary:"Messaggio d'errore"}}},args:{etichetta:"Label",inErrore:!0,messaggioErrore:"Messaggio d'errore"},render:a=>u(a)},r={name:"Campo data con tasto di info",argTypes:{etichetta:{control:"text",description:"Specifica l'etichetta visualizzata sopra il input data",defaultValue:{summary:"Label"}},info:{control:"boolean",description:"Mostra un'icona di informazioni accanto al input currency",defaultValue:{summary:!0}},messaggioHelper:{control:"text",description:"Visualizza un messaggio di supporto sotto il input currency",defaultValue:{summary:"*Testo di aiuto"}},descrizioneTooltip:{control:"text",description:"Visualizza il messaggio nel tooltip",defaultValue:{summary:"Inserire un suggerimento o una descrizione relativa a questo campo."}}},args:{etichetta:"Label",info:!0,messaggioHelper:"Testo di aiuto",descrizioneTooltip:"Inserire un suggerimento o una descrizione relativa a questo campo."},render:a=>p(a)},n={name:"Campi data con periodo",argTypes:{etichetta:{control:"text",description:"Specifica l'etichetta visualizzata sopra il primo input data",defaultValue:{summary:"Dal"}},etichettaSecondaria:{control:"text",description:"Specifica l'etichetta visualizzata sopra il secondo input data",defaultValue:{summary:"Al"}}},args:{etichetta:"Dal",etichettaSecondaria:"Al"},render:a=>m(a)};i.parameters={...i.parameters,docs:{...i.parameters?.docs,source:{originalSource:`{
  name: "Campo data",
  argTypes: {
    etichetta: {
      control: 'text',
      description: "Specifica l'etichetta visualizzata sopra il input data",
      defaultValue: {
        summary: "Label"
      }
    }
  },
  args: {
    etichetta: 'Label'
  },
  render: ({
    ...args
  }) => CreateInputDate(args)
}`,...i.parameters?.docs?.source}}};t.parameters={...t.parameters,docs:{...t.parameters?.docs,source:{originalSource:`{
  name: "Campo data disabilitato",
  argTypes: {
    etichetta: {
      control: 'text',
      description: "Specifica l'etichetta visualizzata sopra il input data",
      defaultValue: {
        summary: "Label"
      }
    },
    disabilitato: {
      control: "boolean",
      description: "Imposta il input data come disabilitato",
      defaultValue: {
        summary: true
      }
    }
  },
  args: {
    etichetta: 'Label',
    disabilitato: true
  },
  render: args => CrateInputDateDisabled(args)
}`,...t.parameters?.docs?.source}}};o.parameters={...o.parameters,docs:{...o.parameters?.docs,source:{originalSource:`{
  name: "Campo data con errore",
  argTypes: {
    etichetta: {
      control: 'text',
      description: "Specifica l'etichetta visualizzata sopra il input data",
      defaultValue: {
        summary: "Label"
      }
    },
    inErrore: {
      control: "boolean",
      description: "Imposta il input data con uno stato di errore",
      defaultValue: {
        summary: true
      }
    },
    messaggioErrore: {
      control: 'text',
      description: "Visualizza un messaggio di errore sotto il input data",
      defaultValue: {
        summary: "Messaggio d'errore"
      }
    }
  },
  args: {
    etichetta: 'Label',
    inErrore: true,
    messaggioErrore: "Messaggio d'errore"
  },
  render: args => CrateInputDateInError(args)
}`,...o.parameters?.docs?.source}}};r.parameters={...r.parameters,docs:{...r.parameters?.docs,source:{originalSource:`{
  name: "Campo data con tasto di info",
  argTypes: {
    etichetta: {
      control: 'text',
      description: "Specifica l'etichetta visualizzata sopra il input data",
      defaultValue: {
        summary: "Label"
      }
    },
    info: {
      control: "boolean",
      description: "Mostra un'icona di informazioni accanto al input currency",
      defaultValue: {
        summary: true
      }
    },
    messaggioHelper: {
      control: 'text',
      description: "Visualizza un messaggio di supporto sotto il input currency",
      defaultValue: {
        summary: "*Testo di aiuto"
      }
    },
    descrizioneTooltip: {
      control: "text",
      description: "Visualizza il messaggio nel tooltip",
      defaultValue: {
        summary: "Inserire un suggerimento o una descrizione relativa a questo campo."
      }
    }
  },
  args: {
    etichetta: "Label",
    info: true,
    messaggioHelper: "Testo di aiuto",
    descrizioneTooltip: "Inserire un suggerimento o una descrizione relativa a questo campo."
  },
  render: args => CrateInputDateInfo(args)
}`,...r.parameters?.docs?.source}}};n.parameters={...n.parameters,docs:{...n.parameters?.docs,source:{originalSource:`{
  name: "Campi data con periodo",
  argTypes: {
    etichetta: {
      control: 'text',
      description: "Specifica l'etichetta visualizzata sopra il primo input data",
      defaultValue: {
        summary: "Dal"
      }
    },
    etichettaSecondaria: {
      control: 'text',
      description: "Specifica l'etichetta visualizzata sopra il secondo input data",
      defaultValue: {
        summary: "Al"
      }
    }
  },
  args: {
    etichetta: "Dal",
    etichettaSecondaria: "Al"
  },
  render: args => CreateDataRange(args)
}`,...n.parameters?.docs?.source}}};const h=["CampiInput","CampoDataDisabilitato","CampoDataInError","CampoDataInfo","CampiDataRange"];export{n as CampiDataRange,i as CampiInput,t as CampoDataDisabilitato,o as CampoDataInError,r as CampoDataInfo,h as __namedExportsOrder,z as default};
