Sha256: d8b8fae67f16d976c8ff58b489535a7650100a63f83e1c3a47a5870e142c844f
Contents?: true
Size: 646 Bytes
Versions: 1
Compression:
Stored size: 646 Bytes
Contents
# frozen_string_literal: true class Icon < Component param :name, reader: false option :variant, reader: false, default: -> { } option :size, default: -> { :md }, reader: false def template div(**attrs) do render Protos::Icon.heroicon(@name, variant:) end end private def variant @variant || { xs: :micro, sm: :mini, md: :solid, lg: :solid }.fetch(@size) end def size { xs: "w-3 h-3", sm: "w-4 h-4", md: "w-5 h-5", lg: "w-7 h-7" }.fetch(@size) end def theme { container: tokens(size, "opacity-90", "inline-block") } end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
staticky-0.2.0 | site_template/lib/icon.rb |