stefangalescu / statamic-heroicons
在Statamic模板中使用并轻松自定义Heroicons
Requires
- php: ^8.1 || ^8.2 || ^8.3
- blade-ui-kit/blade-heroicons: ^2.3
- statamic/cms: ^3.4 || ^4 || ^5
Requires (Dev)
- facade/ignition-contracts: ^1.0
- laravel/pint: ^1.15
- nunomaduro/collision: ^4.2 || ^5.0 || ^6.1 || ^8.1
- orchestra/testbench: ^7.0 || ^8.0 || ^9.0
README
Statamic Heroicons
一个用于在Statamic站点中轻松使用Heroicons的包。此包是blade-ui-kit/blade-heroicons
的包装。
要查看可用图标的全列表,请参阅SVG目录,该目录位于blade-ui-kit/blade-heroicons
仓库中,或在heroicons.com上预览。Heroicons最初由Steve Schoger和Adam Wathan开发。
如果您想使用Heroicons v1,请使用此包的v1版本。
要求
- PHP 8.1或更高版本
- Laravel 9.0或更高版本
- Statamic 3.3或更高版本
除了上述要求外,您还需要使用Statamic的新Runtime Antlers引擎。更多关于它以及如何在Statamic官方文档中启用它的信息。
文档
安装
首先,将statamic-heroicons
作为Composer依赖项要求
composer require stefangalescu/statamic-heroicons
如果您需要额外的选项,可以发布blade-ui-kit/blade-heroicons
配置。确保也要查看blade-ui-kit/blade-heroicons
提供的图标缓存功能。
使用方法
{{ heroicon:mini:bars-3 }} {{ heroicon:solid:bars-3 }} {{ heroicon:outline:bars-3 }} {{ heroicon:outline:bars-3 class="text-gray-500" }} {{ heroicon :variant="variant" :icon="icon" }}
除了几个保留的prop名称(as
、scope
、variant
、icon
)外,您传递给标签的任何prop(例如class
、style
、aria-hidden
等)都将添加到根SVG元素。
{{ heroicon }}
标签还允许您传递动态绑定的属性,就像您在像Alpine.js这样的JavaScript框架中使用一样。唯一的陷阱是您不能使用缩写语法:class="condition ? 'text-red-500' : 'text-green-500'"
。您必须使用完整的绑定(例如x-bind:class
、v-bind:class
)。示例
{{ heroicon:solid:bars-3 class="w-5 h-5" title="Main menu" }} {{ heroicon:solid:bars-3 class="w-5 h-5" x-bind:class="condition ? 'text-red-500' : 'text-green-500'" }}
测试
composer test
安全
如果发现漏洞,只有statamic-heroicons
的最新版本将收到安全更新。
如果您发现安全漏洞,请立即通过电子邮件报告给Stefan Galescu,通过电子邮件。请不要通过GitHub Issues报告安全问题。
赞助Stefan
此插件是开源的,这意味着任何人都可以免费在他们的网站上使用此插件!
然而,维护和开发开源项目的新功能可能需要相当多的时间。如果您在生产环境中使用statamic-heroicons
,请考虑以您认为公平的金额赞助我。