wst 0.12.0 → 0.13.0

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
  SHA1:
3
- metadata.gz: 5780fc012bd4a1464f33820f2b1e87e78e20cbc8
4
- data.tar.gz: 78ca2b68b04a8d910a3d7b3f5e6fb6e1ed56c309
3
+ metadata.gz: bfb855c53e137204ed23e5803e61ae8a20a5938a
4
+ data.tar.gz: 2e6b0c7fec56b69aa451b589678eeddc9407e763
5
5
  SHA512:
6
- metadata.gz: 86746cf2fe7cae704138f752013773fcc6d8bffea36c1d4e585810ef4abef2ac22d721ff29faf75146f97912b366b240f62a823aceaa8bd5f979ee6cb5fea171
7
- data.tar.gz: 77b8ca27579bd135db248ab2cdbdb3a43105898ae84aa7c982bab40e392280999936d2866f5c77547082a26c08437e3f37eea4d32a61109f53f3a8010e17e829
6
+ metadata.gz: 4ae9e1d3eb65e7ab60e8b7eb77e700e9154847e68af2def5e62876d9e7eeb71d4ac4af4b9c3c5a154ad1e411fa32a0d68a7f1d59a3888a9973ee6e2df304f93c
7
+ data.tar.gz: 73099a97902084e65332be954144b430dd554431022565ea32c321b5e92bf481cf65b39c382fe1a3f880e64ae1ba807d86684d5b0d822302a4491d9bc3e38cce
@@ -9,12 +9,12 @@ module Wst
9
9
 
10
10
  def render_layout
11
11
  hamlcontent = HamlContent.new layout_path, @content, render_content
12
- renderer = HamlRenderer.new hamlcontent
12
+ renderer = HamlRenderer.new hamlcontent, @wst
13
13
  renderer.render
14
14
  end
15
15
 
16
16
  def render_content
17
- haml_engine.render(@content) do
17
+ haml_engine.render(@content, :contents => @wst.contents) do
18
18
  @content.sub_content
19
19
  end
20
20
  end
@@ -23,4 +23,7 @@ module Wst
23
23
  Haml::Engine.new @content.raw_content
24
24
  end
25
25
  end
26
+
27
+ class XmlRenderer < HamlRenderer
28
+ end
26
29
  end
@@ -2,6 +2,7 @@
2
2
  require 'wst/haml_helpers_wlt_extensions'
3
3
  require 'wst/post'
4
4
  require 'wst/page'
5
+ require 'wst/contents'
5
6
  require 'wst/renderer_factory'
6
7
  require 'wst/css_renderer'
7
8
  require 'wst/js_renderer'
@@ -18,6 +19,7 @@ module Wst
18
19
  def initialize
19
20
  @css_renderer = CssRenderer.new
20
21
  @js_renderer = JsRenderer.new
22
+ @contents = Contents.new
21
23
  end
22
24
 
23
25
  # @param [Boolean] all Generate all content or only published content
@@ -51,6 +53,12 @@ module Wst
51
53
  @js_renderer.compile js_name
52
54
  end
53
55
 
56
+ # Get all contents
57
+ # return Wst::Contents
58
+ def contents
59
+ @contents
60
+ end
61
+
54
62
  private
55
63
 
56
64
  def init
@@ -75,9 +83,9 @@ module Wst
75
83
  # @param [Boolean] all Generate all content or only published content
76
84
  def content(all)
77
85
  logger.info 'Content'.blue
78
- contents(all).each do |doc|
86
+ @contents.all(all).each do |doc|
79
87
  logger.info " #{doc.content_url}"
80
- renderer = RendererFactory.for doc
88
+ renderer = RendererFactory.for doc, self
81
89
  renderer.write_to_site
82
90
  end
83
91
  end
@@ -94,17 +102,5 @@ module Wst
94
102
  end
95
103
  FileUtils.cp_r hidden , out_dir
96
104
  end
97
-
98
- # @param [Boolean] all Get all content or only published content
99
- # @return [Array<Content>] Contents
100
- def contents(all)
101
- return all_content if all
102
- all_content.select { |c| c.published }
103
- end
104
-
105
- # @return [Array<Content>] All post and page content
106
- def all_content
107
- [Post.all, Page.all].flatten
108
- end
109
105
  end
110
106
  end
@@ -7,8 +7,9 @@ module Wst
7
7
  class Renderer
8
8
  include Configuration
9
9
 
10
- def initialize content
10
+ def initialize content, wst
11
11
  @content = content
12
+ @wst = wst
12
13
  end
13
14
 
14
15
  def render
@@ -9,25 +9,28 @@ module Wst
9
9
  module RendererFactory
10
10
  module_function
11
11
 
12
- def for content
13
- send content.class.name.split('::').last.downcase.to_sym, content
12
+ def for content, wst
13
+ send content.class.name.split('::').last.downcase.to_sym, content, wst
14
14
  end
15
15
 
16
- def post content
17
- MdRenderer.new content
16
+ def post content, wst
17
+ MdRenderer.new content, wst
18
18
  end
19
19
 
20
- def mdpage content
21
- MdRenderer.new content
20
+ def mdpage content, wst
21
+ MdRenderer.new content, wst
22
22
  end
23
23
 
24
- def hamlpage content
25
- HamlRenderer.new content
24
+ def hamlpage content, wst
25
+ HamlRenderer.new content, wst
26
26
  end
27
27
 
28
- def hamlcontent content
29
- HamlRenderer.new content
28
+ def xmlpage content, wst
29
+ XmlRenderer.new content, wst
30
30
  end
31
31
 
32
+ def hamlcontent content, wst
33
+ HamlRenderer.new content, wst
34
+ end
32
35
  end
33
36
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: wst
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.12.0
4
+ version: 0.13.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Yves Brissaud
@@ -16,14 +16,14 @@ dependencies:
16
16
  requirements:
17
17
  - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: '0.1'
19
+ version: 0.3.0
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - "~>"
25
25
  - !ruby/object:Gem::Version
26
- version: '0.1'
26
+ version: 0.3.0
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: haml
29
29
  requirement: !ruby/object:Gem::Requirement