Class: ReactOnRails::JsCodeBuilder

Inherits:
Object
  • Object
show all
Defined in:
lib/react_on_rails/js_code_builder.rb

Overview

Structured builder for generating JavaScript code used in server-side rendering. Replaces the heredoc-based JS code generation in ServerRenderingJsCode with overridable section methods that Pro can extend.

Part of the strategy pattern refactoring (see issue #2905). Currently additive — not yet wired into the main rendering path.

Instance Method Summary collapse

Instance Method Details

#build(render_request) ⇒ String

Build the complete JS code for a render request.

Parameters:

  • render_request (RenderRequest)

    The render request to build JS for

Returns:

  • (String)

    JavaScript code to evaluate for SSR



14
15
16
17
# File 'lib/react_on_rails/js_code_builder.rb', line 14

def build(render_request)
  body = build_sections(render_request).compact.join("\n")
  wrap_in_iife(body, render_request)
end