Typescript

Base Props

Interfacce base riutilizzabili per componenti form e display — BaseFormControlProps, BaseStyledProps, BaseDropdownProps e altre.

BaseInteractiveProps

export interface BaseInteractiveProps {
  disabled?: boolean;
  loading?: boolean;
}

Props base per tutti i componenti interattivi. Tutte le altre interfacce di props form la estendono.

CampoTipoDefaultDescrizione
disabledbooleanfalseDisabilita il componente impedendo interazioni
loadingbooleanfalseMostra stato di caricamento

BaseFormControlProps

export interface BaseFormControlProps extends BaseInteractiveProps {
  readonly?: boolean;
  required?: boolean;
  invalid?: boolean;
  name?: string | null;
  autofocus?: boolean;
}

Props base per tutti i form control. Include gestione degli stati comuni di un campo di input.

CampoTipoDefaultDescrizione
disabledbooleanfalseDisabilita il componente
loadingbooleanfalseMostra stato di caricamento
readonlybooleanfalseCampo in sola lettura
requiredbooleanfalseCampo obbligatorio
invalidbooleanfalseStato di validazione invalido
namestring | nullNome del campo per form nativi
autofocusbooleanfalseFocus automatico al mount

BaseStyledProps

export interface BaseStyledProps {
  severity?: Severity;
  size?: Size;
  rounded?: boolean;
  fluid?: boolean;
}

Props per stile visivo base. Usate da componenti con varianti di colore e dimensione (Button, Badge, Tag, ecc.).

CampoTipoDefaultDescrizione
severitySeveritySeverità visiva per colorazione
sizeSizeDimensione del componente
roundedbooleanfalseBordi arrotondati (pill/circle)
fluidbooleanfalseOccupa tutta la larghezza disponibile

BaseStyledWithVariantProps

export interface BaseStyledWithVariantProps extends BaseStyledProps {
  variant?: FormVariant | null;
}

Estende BaseStyledProps con la prop variant per i form control (outlined/filled).


BaseInputAccessibilityProps

export interface BaseInputAccessibilityProps {
  inputId?: string | null;
  inputClass?: string | null;
  inputStyle?: string | Record<string, string | number> | null;
  ariaLabel?: string | null;
  ariaLabelledby?: string | null;
  tabindex?: number | null;
}

Props per accessibilità degli input. Permettono di configurare attributi ARIA e ID per la corretta associazione con label.

CampoTipoDescrizione
inputIdstring | nullID dell'elemento input per accessibilità e label
inputClassstring | nullClasse CSS aggiuntiva per l'input interno
inputStylestring | object | nullStile inline per l'input interno
ariaLabelstring | nullLabel ARIA per screen reader
ariaLabelledbystring | nullID dell'elemento che funge da label ARIA
tabindexnumber | nullOrdine di tabulazione per navigazione tastiera

BaseFieldHelperProps

export interface BaseFieldHelperProps {
  label?: string | null;
  helperText?: string | null;
  error?: string | null;
  placeholder?: string | null;
}

Props per il testo di supporto dei form control. Usate da InputText, Select, MultiSelect e tutti i campi con label e messaggi di errore.

CampoTipoDescrizione
labelstring | nullLabel testuale mostrata sopra il campo
helperTextstring | nullTesto di aiuto mostrato sotto il campo
errorstring | nullMessaggio di errore mostrato sotto il campo
placeholderstring | nullTesto mostrato quando il campo è vuoto

BaseIconProps

export interface BaseIconProps {
  loadingIcon?: string;
  clearIcon?: string;
}

Props per le icone comuni dei form control.

CampoTipoDefaultDescrizione
loadingIconstring'pi pi-spinner pi-spin'Classe CSS dell'icona di caricamento
clearIconstring'pi pi-times'Classe CSS dell'icona di cancellazione

BasePrefixSuffixIconProps

export interface BasePrefixSuffixIconProps {
  prefixIcon?: string | null;
  suffixIcon?: string | null;
}

Props per le icone decorative a sinistra e destra del campo di input.

BaseClearableProps

export interface BaseClearableProps {
  showClear?: boolean;
  clearIcon?: string;
}

Props per la funzionalità di cancellazione del contenuto. Aggiunge un pulsante "X" al campo.

BaseLoadableProps

export interface BaseLoadableProps {
  loading?: boolean;
  loadingIcon?: string;
}

Props per componenti che mostrano uno stato di caricamento con icona personalizzabile.


BaseOverlayProps

export interface BaseOverlayProps {
  modelValue?: boolean;
  closable?: boolean;
  closeIcon?: string;
  closeOnEscape?: boolean;
}

Props base per componenti overlay (Dialog, Drawer, Sidebar, Popover).

CampoTipoDefaultDescrizione
modelValuebooleanfalseStato di visibilità (v-model)
closablebooleantrueMostra il pulsante di chiusura
closeIconstring'pi pi-times'Classe CSS dell'icona di chiusura
closeOnEscapebooleantrueChiude con il tasto Escape

BaseModalOverlayProps

export interface BaseModalOverlayProps extends BaseOverlayProps {
  dismissableMask?: boolean;
  blockScroll?: boolean;
  showHeader?: boolean;
}

Estende BaseOverlayProps con configurazioni specifiche per overlay modali con mask.

CampoTipoDefaultDescrizione
dismissableMaskbooleanfalseChiude al click sull'overlay/mask
blockScrollbooleantrueBlocca lo scroll del body quando aperto
showHeaderbooleantrueMostra la sezione header

BaseOverlayHeaderProps

export interface BaseOverlayHeaderProps {
  header?: string | null;
  icon?: string | null;
}

Props per l'header degli overlay (titolo e icona).


BaseDropdownProps

export interface BaseDropdownProps extends BaseInteractiveProps {
  appendTo?: 'body' | 'self' | null;
  scrollHeight?: string;
  virtualScrollerOptions?: Record<string, unknown> | null;
  filter?: boolean;
  filterPlaceholder?: string | null;
  showClear?: boolean;
  size?: Size;
  variant?: FormVariant | null;
}

Props base per tutti i componenti dropdown (Select, Autocomplete, MultiSelect, TreeSelect).

CampoTipoDefaultDescrizione
appendTo'body' | 'self' | nullnullElemento a cui appendere il dropdown
scrollHeightstring'200px'Altezza massima del dropdown con scroll
virtualScrollerOptionsobject | nullOpzioni per lo scroll virtuale
filterbooleanfalseAbilita il filtro di ricerca nelle opzioni
filterPlaceholderstring | nullPlaceholder del campo filtro
showClearbooleanfalseMostra pulsante per cancellare la selezione
sizeSizeDimensione del componente
variantFormVariant | nullVariante visiva del campo

BaseDropdownBehaviorProps

export interface BaseDropdownBehaviorProps {
  autoOptionFocus?: boolean;
  focusOnHover?: boolean;
  selectOnFocus?: boolean;
  checkmark?: boolean;
  highlightOnSelect?: boolean;
}

Props per il comportamento interattivo del dropdown.

CampoTipoDefaultDescrizione
autoOptionFocusbooleanfalseSposta il focus sulla prima opzione all'apertura
focusOnHoverbooleantrueSposta il focus sull'opzione al passaggio del mouse
selectOnFocusbooleanfalseSeleziona automaticamente l'opzione al focus
checkmarkbooleanfalseMostra un checkmark accanto all'opzione selezionata
highlightOnSelectbooleantrueEvidenzia l'opzione selezionata nella lista

BaseDropdownFilterProps

export interface BaseDropdownFilterProps {
  filter?: boolean;
  filterPlaceholder?: string | null;
  filterLocale?: string | null;
  filterFields?: string[] | null;
  resetFilterOnHide?: boolean;
  autoFilterFocus?: boolean;
}

Props per la funzionalità di filtro/ricerca nel dropdown.

CampoTipoDefaultDescrizione
filterbooleanfalseAbilita il filtro di ricerca
filterPlaceholderstring | nullPlaceholder del campo filtro
filterLocalestring | nullLocale per il confronto stringhe nel filtro
filterFieldsstring[] | nullCampi da includere nella ricerca
resetFilterOnHidebooleanfalseResetta il filtro alla chiusura
autoFilterFocusbooleantrueSposta il focus sul filtro all'apertura

BaseOptionsConfigProps

export interface BaseOptionsConfigProps<T = Record<string, unknown>> {
  options?: T[] | null;
  optionLabel?: string | ((option: T) => string) | null;
  optionValue?: string | ((option: T) => unknown) | null;
  optionDisabled?: string | ((option: T) => boolean) | null;
  dataKey?: string | null;
}

Props per la configurazione delle opzioni nei componenti di selezione. Generica sul tipo T delle opzioni.

CampoTipoDefaultDescrizione
optionsT[] | nullArray di opzioni da visualizzare
optionLabelstring | Function | null'label'Proprietà o funzione per il testo visualizzato
optionValuestring | Function | null'value'Proprietà o funzione per il valore dell'opzione
optionDisabledstring | Function | null'disabled'Proprietà o funzione per opzione disabilitata
dataKeystring | nullProprietà usata come chiave univoca

BaseOptionGroupProps

export interface BaseOptionGroupProps<T = Record<string, unknown>> {
  optionGroupLabel?: string | ((option: T) => string) | null;
  optionGroupChildren?: string | ((option: T) => T[]) | null;
}

Props per la gestione di gruppi di opzioni nel dropdown.