module Primer::Forms::ActsAsComponent::InstanceMethods

def before_render; end

def before_render; end

def capture(*args, &block)

ActsAsComponent with view component.
I would love to remove this at some point, perhaps if we ever decide to replace
This is necessary to restore the functionality changed by https://github.com/rails/rails/pull/47194.
def capture(*args, &block)
  old_buffer = @view_context.output_buffer
  @view_context.output_buffer = ActionView::OutputBuffer.new
  @view_context.capture(*args, &block)
ensure
  @view_context.output_buffer = old_buffer
end

def perform_render(&_block)

:nocov:
def perform_render(&_block)
  raise NotImplementedError, "subclasses must implement ##{__method__}."
end

def render_in(view_context, &block)

def render_in(view_context, &block)
  @view_context = view_context
  before_render
  perform_render(&block)
end

def set_original_view_context(view_context)

:nocov:
def set_original_view_context(view_context)
  @view_context = view_context
end