class Pakyow::UI::Framework
Public Instance Methods
boot()
click to toggle source
# File lib/pakyow/ui/framework.rb, line 34 def boot object.class_eval do register_helper :passive, Application::Helpers::UI include Application::Behavior::UI::Recording include Application::Behavior::UI::Rendering include Application::Behavior::UI::Timeouts isolated :Renderer do include Presenter::Renderer::Behavior::UI::InstallTransforms end prepend PresenterForContext ui_renderer = Class.new(isolated(:Renderer)) do def marshal_load(state) deserialize(state) @presenter_class = @app.find_ui_presenter_for(@presenter_class) initialize_presenter end def perform(*) @presenter.to_html end end # Delete the render_components build step since ui will not be invoking the component. # ui_renderer.__build_fns.delete_if { |fn| fn.source_location[0].end_with?("render_components.rb") } unless const_defined?(:UIRenderer, false) const_set(:UIRenderer, ui_renderer) end after "initialize" do config.data.subscriptions.version = config.version end # @api private attr_reader :ui_executor unfreezable :ui_executor after "initialize" do @ui_executor = Concurrent::SingleThreadExecutor.new( auto_terminate: false, ) end end end
marshal_load(state)
click to toggle source
# File lib/pakyow/ui/framework.rb, line 49 def marshal_load(state) deserialize(state) @presenter_class = @app.find_ui_presenter_for(@presenter_class) initialize_presenter end
perform(*)
click to toggle source
# File lib/pakyow/ui/framework.rb, line 55 def perform(*) @presenter.to_html end