Pluginy
TailwindPHP obsahuje PHP porty oficiálnych pluginov TailwindCSS a sprístupňuje natívne PHP rozhranie pluginov API. Pluginy registrujú utility, komponenty a varianty; načítavajú sa direktívou @plugin vo vstupnom súbore CSS. Vstavané pluginy sú 1:1 porty svojich náprotivkov JavaScript — majú rovnaké selektory a výstup — a sú implementované v PHP namiesto spúšťania cez Node. Momentálne existuje jedna výnimka: modifikátory prvkov pluginu typografie (prose-headings:, prose-a:, …) závisia od variantov pluginov, ktoré sa zatiaľ neuplatňujú (#10).
Používanie @plugin
Na plugin odkazujte podľa názvu pomocou @plugin. Vstavané pluginy používajú názov svojho balíka npm. Skombinujte direktívu s @import "tailwindcss/utilities.css";, aby sa triedy pluginu pridali do vrstvy utilít:
use TailwindPHP\tw;
$css = tw::generate([
'content' => '<article class="prose prose-lg"><h1>Hello</h1><p>Content here</p></article>',
'css' => '
@plugin "@tailwindcss/typography";
@import "tailwindcss/utilities.css";
',
]);
Naraz možno načítať viacero pluginov; ich poradie je ľubovoľné:
@plugin "@tailwindcss/typography";
@plugin "@tailwindcss/forms";
@import "tailwindcss/utilities.css";
@plugin nemožno vnoriť do inej direktívy at-rule (napríklad @media) a neregistrovaný názov pluginu vyvolá chybu.
Možnosti pluginov
Možnosti pluginu odovzdajte pomocou syntaxe bloku CSS za jeho názvom. Kľúče zodpovedajú poľu možností pluginu:
@plugin "@tailwindcss/forms" {
strategy: "class";
}
@plugin "@tailwindcss/typography" {
className: "markdown";
}
Plugin @tailwindcss/forms prijíma strategy (base alebo class); @tailwindcss/typography prijíma className na premenovanie generovanej triedy prose. Úplný zoznam možností nájdete na stránkach jednotlivých pluginov.
Vstavané pluginy
| Plugin | Popis |
|---|---|
@tailwindcss/typography |
Triedy prose — typografické predvolené nastavenia pre formátovaný text. Pozrite si Typografia. |
@tailwindcss/forms |
Ovládacie prvky formulára s obnoviteľným a upraviteľným štýlom. Pozrite si Formuláre. |
Vlastné pluginy
Vytvorte si vlastný plugin implementáciou PluginInterface a použitím metód v PluginAPI (addUtilities, matchUtilities, addComponents, addVariant, theme a ďalších). Zaregistrujte ho pomocou registerPlugin(new MyPlugin()), aby sa názov vrátený cez getName() dal použiť v direktíve @plugin "my-plugin":
use function TailwindPHP\registerPlugin;
registerPlugin(new MyCustomPlugin());
Rozhranie, úplný príklad a kompletný prehľad metód PluginAPI nájdete v časti Vlastné pluginy.