Sha256: a8d6c77d3508a4a6d56ecf9b44f360edd9aca3670ca6515c80ba88fe2ec96c60

Contents?: true

Size: 750 Bytes

Versions: 31

Compression:

Stored size: 750 Bytes

Contents

# frozen_string_literal: true

module Playbook
  module Classnames
    def self.included(base)
      base.prop :classname
      base.prop :dark, type: Playbook::Props::Boolean, default: false
    end

    def generate_classname(*name_parts, separator: "_")
      [
        name_parts.compact.join(separator),
        prop(:classname),
        spacing_props,
        dark_props,
        max_width_props,
        z_index_props,
        number_spacing_props,
      ].compact.join(" ")
    end

    def generate_classname_without_spacing(*name_parts, separator: "_")
      [
        name_parts.compact.join(separator),
        prop(:classname),
      ].compact.join(" ")
    end

  private

    def dark_props
      dark ? "dark" : nil
    end
  end
end

Version data entries

31 entries across 31 versions & 1 rubygems

Version Path
playbook_ui-10.16.0 lib/playbook/classnames.rb
playbook_ui-10.15.1 lib/playbook/classnames.rb
playbook_ui-10.15.1.pre.alpha.rubocop.deps lib/playbook/classnames.rb
playbook_ui-10.15.0 lib/playbook/classnames.rb
playbook_ui-10.14.1.pre.alpha2 lib/playbook/classnames.rb
playbook_ui-10.14.1.pre.alpha1 lib/playbook/classnames.rb
playbook_ui-10.14.0 lib/playbook/classnames.rb
playbook_ui-10.13.1 lib/playbook/classnames.rb
playbook_ui-10.13.0 lib/playbook/classnames.rb
playbook_ui-10.13.0.pre.node.update lib/playbook/classnames.rb
playbook_ui-10.12.0 lib/playbook/classnames.rb
playbook_ui-10.11.0 lib/playbook/classnames.rb
playbook_ui-10.10.0 lib/playbook/classnames.rb
playbook_ui-10.9.0 lib/playbook/classnames.rb
playbook_ui-10.8.1.pre.alpha.flexdeps lib/playbook/classnames.rb
playbook_ui-10.9.0.pre.alpha1 lib/playbook/classnames.rb
playbook_ui-10.8.0 lib/playbook/classnames.rb
playbook_ui-10.7.1 lib/playbook/classnames.rb
playbook_ui-10.7.0 lib/playbook/classnames.rb
playbook_ui-10.6.2.pre.alpha.dep lib/playbook/classnames.rb