Class: ERBLint::Linters::ArgumentMappers::Label
- Defined in:
- lib/primer/view_components/linters/argument_mappers/label.rb
Overview
Maps classes in a label element to arguments for the Label component.
Constant Summary collapse
- SCHEME_MAPPINGS =
::Primer::ViewComponents::Constants.get( component: "Primer::Beta::Label", constant: "SCHEME_MAPPINGS", symbolize: true ).freeze
- SIZE_MAPPINGS =
::Primer::ViewComponents::Constants.get( component: "Primer::Beta::Label", constant: "SIZE_MAPPINGS", symbolize: true ).freeze
- DEFAULT_TAG =
::Primer::ViewComponents::Constants.get( component: "Primer::Beta::Label", constant: "DEFAULT_TAG" ).freeze
- INLINE_CLASS =
::Primer::ViewComponents::Constants.get( component: "Primer::Beta::Label", constant: "INLINE_CLASS" ).freeze
- ATTRIBUTES =
%w[title].freeze
Instance Method Summary collapse
Methods inherited from Base
#initialize, #map_classes, #system_arguments_to_args, #to_args, #to_s
Constructor Details
This class inherits a constructor from ERBLint::Linters::ArgumentMappers::Base
Instance Method Details
#attribute_to_args(attribute) ⇒ Object
34 35 36 |
# File 'lib/primer/view_components/linters/argument_mappers/label.rb', line 34 def attribute_to_args(attribute) { title: erb_helper.convert(attribute) } end |
#classes_to_args(classes) ⇒ Object
38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 |
# File 'lib/primer/view_components/linters/argument_mappers/label.rb', line 38 def classes_to_args(classes) classes.each_with_object({ classes: [] }) do |class_name, acc| next if class_name == "Label" if SCHEME_MAPPINGS[class_name] && acc[:scheme].nil? acc[:scheme] = SCHEME_MAPPINGS[class_name] elsif SIZE_MAPPINGS[class_name] && acc[:size].nil? acc[:size] = SIZE_MAPPINGS[class_name] elsif class_name == INLINE_CLASS && acc[:inline].nil? acc[:inline] = true else acc[:classes] << class_name end end end |