phlexing
phlexing copied to clipboard
`render` should not become a stubbed private method
When using nested components, the generated code currently includes a private render method stub marked with # TODO: Implement me. This causes confusion because it overrides the intended render behavior, making nested components render invisible or not behave as expected.
ERB Input:
<div>
<%= render Components::CardStatusBadge.new(card: card) %>
</div>
Output:
class Components::Myn::CardItem < Components::Base
attr_accessor :card
def initialize(card:)
@card = card
end
def view_template
div { render Components::CardStatusBadge.new(card: card) }
end
private
def render(*args, **kwargs)
# TODO: Implement me
end
end
Expected output:
class Components::Myn::CardItem < Components::Base
attr_accessor :card
def initialize(card:)
@card = card
end
def view_template
div { render Components::CardStatusBadge.new(card: card) }
end
end