50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
|
# File 'lib/primer/view_components/linters/argument_mappers/base.rb', line 50
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
|