map_classes

in lib/primer/view_components/linters/argument_mappers/base.rb [49:74]


        def map_classes(classes_node)
          erb_helper.raise_if_erb_block(classes_node)

          system_arguments = system_arguments_to_args(classes_node.value)
          args = classes_to_args(system_arguments[:classes]&.split || [])

          invalid_classes = args[:classes].select { |class_name| Primer::Classify::Validation.invalid?(class_name) }

          raise ConversionError, "Cannot convert #{'class'.pluralize(invalid_classes.size)} #{invalid_classes.join(',')}" if invalid_classes.present?

          
          res = {
            **args.except(:classes),
            **system_arguments.except(:classes)
          }

          if args[:classes].present?
            res = {
              **res,
              classes: args[:classes].join(" ").to_json
            }
          end

          res
        end