Skip to content

Commit 7e09735

Browse files
committed
Add X-Fragments header support for rendering phlex fragments
1 parent d15e9e6 commit 7e09735

File tree

1 file changed

+4
-2
lines changed

1 file changed

+4
-2
lines changed

lib/phlex/rails/sgml.rb

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -105,8 +105,10 @@ def render_in(view_context, &erb)
105105
context = { rails_view_context: view_context }
106106
end
107107

108+
fragments = view_context.request.headers.fetch("X-Fragments", "").split(" ").presence
109+
108110
if erb
109-
call(context:) { |*args|
111+
call(context:, fragments:) { |*args|
110112
if args.length == 1 && Phlex::SGML === args[0] && !erb.source_location&.[](0)&.end_with?(".rb")
111113
unbuffered = Phlex::Rails::Unbuffered.new(args[0])
112114
raw(view_context.capture(unbuffered, &erb))
@@ -115,7 +117,7 @@ def render_in(view_context, &erb)
115117
end
116118
}.html_safe
117119
else
118-
call(context:).html_safe
120+
call(context:, fragments:).html_safe
119121
end
120122
end
121123

0 commit comments

Comments
 (0)