
# Veidlapu spraudnis

`@tailwindcss/forms` ir oficiālā veidlapu spraudņa 1:1 PHP ports. Tas nodrošina noteiktu veidlapu vadīklu atiestatīšanas stilu — teksta ievades laukiem, teksta apgabaliem, izvēles sarakstiem, izvēles rūtiņām un radio pogām — un piešķir tām vienotu pamatizskatu (atiestatīts izskats, apmale, iekšējās atkāpes, fokusa kontūra, pielāgota izvēles saraksta bultiņa un izvēles rūtiņu/radio pogu ikonas), ko pēc tam varat pielāgot ar utilītām.

## Lietošana

Ielādējiet spraudni ar `@plugin` un importējiet utilītu slāni:

```php
use TailwindPHP\tw;

$css = tw::generate(
    '<input class="form-input"><select class="form-select"></select>',
    '@plugin "@tailwindcss/forms"; @import "tailwindcss/utilities.css";'
);
```

## Stratēģija

Opcija `strategy` nosaka, kā tiek lietoti stili:

| Stratēģija | Darbība |
|----------|----------|
| `base` | Vispārēji noformē vietējos veidlapu elementus, izmantojot tādus atlasītājus kā `[type='text']`, `textarea` un `select`. |
| `class` | Noformē tikai skaidri norādītās klases `form-*`, nemainot elementus bez klasēm. |

Ja `strategy` nav norādīts, tiek lietotas **abas** stratēģijas — vietējiem elementiem tiek piemērota pamata atiestatīšana, un ir pieejamas arī klases `form-*`. Lai atteiktos no vienas stratēģijas, iestatiet otru:

```css
@plugin "@tailwindcss/forms" {
    strategy: "class";
}
```

## Klašu stratēģija

Izmantojot `class` stratēģiju vai noklusēto iestatījumu, skaidri pievienojiet šīs klases elementiem, kurus vēlaties noformēt:

| Klase | Elements |
|-------|---------|
| `form-input` | Teksta ievades lauki |
| `form-textarea` | `<textarea>` |
| `form-select` | `<select>` |
| `form-multiselect` | `<select multiple>` |
| `form-checkbox` | `<input type="checkbox">` |
| `form-radio` | `<input type="radio">` |

```php
$css = tw::generate(
    '
        <input class="form-input">
        <textarea class="form-textarea"></textarea>
        <select class="form-select"></select>
        <select class="form-multiselect" multiple></select>
        <input type="checkbox" class="form-checkbox">
        <input type="radio" class="form-radio">
    ',
    '
        @plugin "@tailwindcss/forms" {
            strategy: "class";
        }
        @import "tailwindcss/utilities.css";
    '
);
```

Katra klase atiestata vadīklas izskatu un iestata apmales, iekšējās atkāpes un fokusa kontūru; `form-select` pievieno fona attēlu ar bultiņu, bet `form-checkbox`/`form-radio` pievieno ikonas atzīmētajam stāvoklim. To visu varat pielāgot ar parastām utilītām (piemēram, `class="form-input rounded-lg border-gray-300"`).

Direktīvu `@plugin` un ielādes informāciju skatiet sadaļā [Spraudņi](https://tailwindphp.inline0.dev/lv/docs/plugins).
