class Primer::Forms::TextField
def trailing_visual_component
def trailing_visual_component return @trailing_visual_component if defined?(@trailing_visual_component) visual = @input.trailing_visual # Render icon if specified @trailing_visual_component = if (icon_arguments = visual[:icon]) Primer::Beta::Octicon.new(**icon_arguments) elsif (label_arguments = visual[:label]) # Render label if specified label_arguments[:classes] = class_names( label_arguments.delete(:classes), "FormControl-input-trailingVisualLabel" ) text = label_arguments.delete(:text) Primer::Beta::Label.new(**label_arguments).with_content(text) elsif (counter_arguments = visual[:counter]) # Render counter if specified counter_arguments[:classes] = class_names( counter_arguments.delete(:classes), "FormControl-input-trailingVisualCounter" ) Primer::Beta::Counter.new(**counter_arguments) elsif (truncate_arguments = visual[:text]) # Render text if specified truncate_arguments[:classes] = class_names( truncate_arguments.delete(:classes), "FormControl-input-trailingVisualText" ) text = truncate_arguments.delete(:text) Primer::Beta::Truncate.new(**truncate_arguments).with_content(text) end end