heartml 1.0.0.beta1 → 1.0.0.beta2
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/Gemfile.lock +1 -1
- data/lib/heartml/component_renderer.rb +3 -1
- data/lib/heartml/fragment.rb +12 -3
- data/lib/heartml/version.rb +1 -1
- data/lib/heartml.rb +0 -1
- metadata +1 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: c4ce5c2d26f4d668a6267c0d1ac9bcdfa39c8dfc9bc82ea4ee812842a0cd3778
|
4
|
+
data.tar.gz: ab81276b47264ccf1dba10b72a3ae75f406d4f13da26ea81c56f98f385f9bf25
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: d97478938f30b82e275ec3ae79943b2def87c452ce28c4475d2e1fa68a66434842ddbe5195b877aa4de6ad0c735b58e61a34df69d7b75e0bea1f43a79e764f26
|
7
|
+
data.tar.gz: 757de7a3889c304655d7439e92386ded89bc04815a407acdd261d10aa6456f7380f8666d628a4c7e25d47150bc20fe36e353d5bceee3ad6b7d7cc58d18cb14a1
|
data/Gemfile.lock
CHANGED
@@ -11,7 +11,9 @@ module Heartml
|
|
11
11
|
inspect_html do |doc, resource|
|
12
12
|
view_context = Bridgetown::ERBView.new(resource)
|
13
13
|
|
14
|
-
FragmentRenderComponent.new(body: doc.body, scope:
|
14
|
+
rdr = FragmentRenderComponent.new(body: doc.at_css("body"), scope: view_context)
|
15
|
+
rdr.define_singleton_method(:view_context) { view_context }
|
16
|
+
rdr.call
|
15
17
|
|
16
18
|
# Heartml.registered_elements.each do |component|
|
17
19
|
# tag_name = component.tag_name
|
data/lib/heartml/fragment.rb
CHANGED
@@ -46,9 +46,11 @@ module Heartml
|
|
46
46
|
|
47
47
|
obj = component.new(**attrs)
|
48
48
|
render_output = if obj.respond_to?(:render_in)
|
49
|
-
obj.render_in(@component.view_context, rendering_mode: :node)
|
49
|
+
obj.render_in(@component.view_context, rendering_mode: :node) do
|
50
|
+
process(fragamatize(node.children))
|
51
|
+
end
|
50
52
|
else
|
51
|
-
obj.render_element(content: node.children)
|
53
|
+
obj.render_element(content: process(fragamatize(node.children)))
|
52
54
|
end
|
53
55
|
|
54
56
|
node.replace(render_output)
|
@@ -56,6 +58,14 @@ module Heartml
|
|
56
58
|
|
57
59
|
process_attribute_bindings(node)
|
58
60
|
end
|
61
|
+
|
62
|
+
fragment
|
63
|
+
end
|
64
|
+
|
65
|
+
def fragamatize(node_set)
|
66
|
+
frag = Nokolexbor::DocumentFragment.new(@fragment.document)
|
67
|
+
node_set.each { |child| child.parent = frag }
|
68
|
+
frag
|
59
69
|
end
|
60
70
|
|
61
71
|
def process_attribute_bindings(node) # rubocop:todo Metrics
|
@@ -69,7 +79,6 @@ module Heartml
|
|
69
79
|
end
|
70
80
|
rescue Exception => e # rubocop:disable Lint/RescueException
|
71
81
|
line_segments = [@component.class.heart_module, @component.class.line_number_of_node(attr_node)]
|
72
|
-
puts "here we go!"
|
73
82
|
raise e.class, e.message.lines.first, [line_segments.join(":"), *e.backtrace]
|
74
83
|
end
|
75
84
|
end
|
data/lib/heartml/version.rb
CHANGED
data/lib/heartml.rb
CHANGED