belletrist 1.1.0 → 1.1.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 7a59242bc76875cc57af10fc601d9f873eaeb3b5423f84a7f7d52b28360434db
4
- data.tar.gz: 4c4ddb3a7ba0e25b0b354ce4fc753a5523b9e5b02b8621b72f6a04e23e00103f
3
+ metadata.gz: 1548984783b84be9e93ebfb48bec3b847b941d4f5423d4b62b6b41e1949143d2
4
+ data.tar.gz: 9f8a5ed9ce20dde4164b54082c63f178292ab36722041b07f0731c19b3781172
5
5
  SHA512:
6
- metadata.gz: 933f94556b186d146d75ec205be968ab2928bf8be727a1d162f2e1de8585cb027ee6b626ee12b499644e33015d7a11152ac7948c1ee50007a93f90e44d73bc62
7
- data.tar.gz: d642df58fde3590cfdbfc6985cbfb320c34eafff083a5d40483668e7c402af684a5b5b24d876de48d711665ef18c3ae4a75c273313f980fa61e1b235f2d6965d
6
+ metadata.gz: eff3997808304d963d70831bfe2465ff10ab98ca9590836eeba16751fc9f323a2ffe1d95b14e1b095e39e24400f0d6ee882c26bdd1286763051b2e62b7921bfc
7
+ data.tar.gz: 5d687259b269539d2ae70da5d3075f7648ad35e477024d0f7154327f61fc42197af96c8b8abe79a8ab8603ed6c610260e30c7db94a6b5f23ec19b4016e7be805
data/CHANGELOG.md CHANGED
@@ -1,7 +1,14 @@
1
- # Scribe Changelog
1
+ # Belletrist Changelog
2
2
  This file contains general, high level explanations of the differences between versions. Please check the commmit
3
3
  history for further details.
4
4
 
5
+ ## 1.1.2
6
+ * Fixed issue with how the `lang` argument was declared for HTML documents, causing it to not be added properly.
7
+
8
+ ## 1.1.1
9
+ * Ensuring the sanitize the key of a JSON object entry. While normally these would be converted from Symbols,
10
+ it should still be sanitized all the same.
11
+
5
12
  ## 1.1.0
6
13
  * Added JSON DSL. Supports the same `with` mechanism as the HTML DSL, and generally functions similarly.
7
14
  * Rewrote `HTML::Element` to inherit directly from `Belletrist::BaseCollector`.
@@ -20,10 +20,6 @@ module Belletrist
20
20
  raise NotImplementedError
21
21
  end
22
22
 
23
- def p(*args, &block)
24
- method_missing(:p, *args, &block)
25
- end
26
-
27
23
  def with(ele, &block)
28
24
  @elements.push ele
29
25
  ele.instance_eval(&block) if block
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- require_relative './abstract'
3
+ require_relative './collectors'
4
4
 
5
5
  module Belletrist::HTML
6
6
  class Element < Belletrist::BaseCollector
@@ -41,6 +41,10 @@ module Belletrist::HTML
41
41
  Element.new(name, args)
42
42
  end
43
43
 
44
+ def p(*args, &block)
45
+ method_missing(:p, *args, &block)
46
+ end
47
+
44
48
  private def import_attribute(hash)
45
49
  hash.each do |entry|
46
50
  k, v = entry
@@ -68,13 +72,12 @@ module Belletrist::HTML
68
72
  end
69
73
 
70
74
  class Document
71
- def initialize(spec=V5, lang=nil)
75
+ def initialize(spec=V5, lang: nil)
72
76
  super()
73
- body_args = []
74
- body_args.push lang if lang
77
+ language = {'lang': lang} if lang
75
78
 
76
79
  @head = Element.new 'head'
77
- @body = Element.new 'body', body_args
80
+ @body = Element.new 'body', [language]
78
81
  @spec = spec
79
82
  end
80
83
 
@@ -1,9 +1,9 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- require_relative './abstract'
3
+ require_relative './collectors'
4
4
 
5
5
  module Belletrist::JSON
6
- def self.to_value(v)
6
+ def self.sanitize(v)
7
7
  if v.nil?
8
8
  'null'
9
9
  elsif v.is_a?(String)
@@ -72,7 +72,7 @@ module Belletrist::JSON
72
72
  value = '{'
73
73
  @elements.each_index do |i|
74
74
  item = @elements[i]
75
- value += "\"#{item.key}\":#{JSON.to_value(item.value)}"
75
+ value += "#{JSON.sanitize(item.key)}:#{JSON.sanitize(item.value)}"
76
76
  value += ',' unless i + 1 == @elements.length
77
77
  end
78
78
  value + '}'
@@ -119,7 +119,7 @@ module Belletrist::JSON
119
119
  value = '['
120
120
  @elements.each_index do |i|
121
121
  item = @elements[i]
122
- value += JSON.to_value(item)
122
+ value += JSON.sanitize(item)
123
123
  value += ',' unless i + 1 == @elements.length
124
124
  end
125
125
  value + ']'
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Belletrist
4
- VERSION = '1.1.0'
4
+ VERSION = '1.1.2'
5
5
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: belletrist
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.1.0
4
+ version: 1.1.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Juniper
@@ -26,7 +26,7 @@ files:
26
26
  - README.md
27
27
  - belletrist.gemspec
28
28
  - lib/belletrist.rb
29
- - lib/belletrist/abstract.rb
29
+ - lib/belletrist/collectors.rb
30
30
  - lib/belletrist/html.rb
31
31
  - lib/belletrist/json.rb
32
32
  - lib/belletrist/version.rb