Sha256: 76badba5a54b6a99d5cbb2952561ce32f5861c25cbeb97fd2cd996f39a7cebdd
Contents?: true
Size: 1.57 KB
Versions: 80
Compression:
Stored size: 1.57 KB
Contents
# frozen_string_literal: true module Playbook module PbTitle class Title < Playbook::KitBase prop :color, type: Playbook::Props::Enum, values: [nil, "default", "light", "lighter", "success", "error", "link"], default: nil prop :size, default: 3 prop :tag, type: Playbook::Props::Enum, values: %w[h1 h2 h3 h4 h5 h6 p div span], default: "h3" prop :text prop :variant, type: Playbook::Props::Enum, values: [nil, "link"], default: nil, deprecated: true prop :bold, type: Playbook::Props::Boolean, default: true prop :truncate, type: Playbook::Props::Enum, values: [nil, "1", "2", "3", "4", "5"], default: nil def classname if is_size_responsive generate_classname("pb_title_kit", variant, color, is_bold, is_truncated) + generate_responsive_size_classname else generate_classname("pb_title_kit", size, variant, color, is_bold, is_truncated) end end def is_bold bold ? nil : "thin" end def is_truncated truncate ? "truncate-#{truncate}" : nil end def is_size_responsive try(:size).is_a?(::Hash) end def generate_responsive_size_classname css = "" if is_size_responsive size.each do |key, value| css += " pb_title_kit_#{key}_#{value}" end end css unless css.blank? end end end end
Version data entries
80 entries across 80 versions & 1 rubygems