slate_serializer 0.3.0 → 0.4.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/Gemfile.lock +2 -2
- data/lib/slate_serializer/html.rb +6 -5
- data/lib/slate_serializer/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 432867276132b2b0e32c3be8173bfdd19844e0f89285ec3876102fca6460cb50
|
4
|
+
data.tar.gz: b85e11c1938e841007e8096bf0d1fb09b14bcf40c6ac8038ff06af2682989e8a
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: cfa1421b6e4830ed7c859eca5391c5ac5b988af63a022476360aacd005c33d427124169ab73f501a059f49dd94b4267cc2814ab3753db4cbbe5bdaa0a2a25786
|
7
|
+
data.tar.gz: 5a8d815c6bfd755a559535679029d7388fad4afc9de4e677db6b9e90fab07b5a26b214a2453d0af7d2cac2bbf64344b75b08c4aa35ff6a8d0f7b0e620aebd3eb
|
data/Gemfile.lock
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
PATH
|
2
2
|
remote: .
|
3
3
|
specs:
|
4
|
-
slate_serializer (0.
|
4
|
+
slate_serializer (0.4.0)
|
5
5
|
nokogiri (~> 1.10)
|
6
6
|
|
7
7
|
GEM
|
@@ -9,7 +9,7 @@ GEM
|
|
9
9
|
specs:
|
10
10
|
diff-lcs (1.3)
|
11
11
|
mini_portile2 (2.4.0)
|
12
|
-
nokogiri (1.10.
|
12
|
+
nokogiri (1.10.4)
|
13
13
|
mini_portile2 (~> 2.4.0)
|
14
14
|
rake (10.5.0)
|
15
15
|
rspec (3.8.0)
|
@@ -17,10 +17,13 @@ module SlateSerializer
|
|
17
17
|
'tbody': 'tbody',
|
18
18
|
'tr': 'tr',
|
19
19
|
'td': 'td',
|
20
|
-
'text': 'text'
|
20
|
+
'text': 'text',
|
21
|
+
'hr': 'hr',
|
22
|
+
'figure': 'figure',
|
23
|
+
'figcaption': 'figcaption'
|
21
24
|
}.freeze
|
22
25
|
# Default block types list
|
23
|
-
BLOCK_ELEMENTS = %w[img li p ol ul table tbody tr td].freeze
|
26
|
+
BLOCK_ELEMENTS = %w[figure figcaption hr img li p ol ul table tbody tr td].freeze
|
24
27
|
# Default inline types list
|
25
28
|
INLINE_ELEMENTS = %w[a].freeze
|
26
29
|
# Default mark types list
|
@@ -68,8 +71,6 @@ module SlateSerializer
|
|
68
71
|
type = convert_name_to_type(element)
|
69
72
|
|
70
73
|
nodes = element.children.flat_map do |child|
|
71
|
-
next if child.text.strip == '' && child.type == 'img'
|
72
|
-
|
73
74
|
if block?(child)
|
74
75
|
element_to_node(child)
|
75
76
|
elsif inline?(child)
|
@@ -81,7 +82,7 @@ module SlateSerializer
|
|
81
82
|
end
|
82
83
|
end.compact
|
83
84
|
|
84
|
-
nodes << { marks: [], object: 'text', text: '' } if nodes.empty?
|
85
|
+
nodes << { marks: [], object: 'text', text: '' } if nodes.empty? && type != 'image'
|
85
86
|
|
86
87
|
{
|
87
88
|
data: element.attributes.each_with_object({}) { |a, h| h[a[1].name] = a[1].value },
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: slate_serializer
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.4.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Wesley Stam
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2019-
|
11
|
+
date: 2019-09-12 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: nokogiri
|