origen_doc_helpers 0.7.0 → 0.7.1

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: f10206613a76375cd6ec5925e33ea6a4928585a5
4
- data.tar.gz: 713eef54df6cbaa62ce7b30b9bf63aba164b29c6
3
+ metadata.gz: c9913b384df5e46cc7aaa1a413e4bdebf5707074
4
+ data.tar.gz: 0eec0a9f93a7760a5d19a833f12d4aa88c3221bf
5
5
  SHA512:
6
- metadata.gz: e64c3ceefca6c63d72b561a20c5ca6bfd776e4ed62e1c0f2447757f31dd8f80d73b6505ae26703a49e3192f75451d2428297e8e7b7e69b2c53d369b5dbe7efe2
7
- data.tar.gz: 13036d3ddafdbed4126f94f752e6e9f667a62d351b6e56523047fce98ce918f9779953343db3e9a5456fe59e324584708f22fac1d25fe108bac672fe91ae24b5
6
+ metadata.gz: 201b1b79b0c2ca2b556536ca635c1602154901fd25511f43a576f14ad805c7d5bc50dc97464c3229f4eed04ea2c966b581327618aaf2c2aa214f66a87c0123fc
7
+ data.tar.gz: 60ec544a89a90dfb5a3a040a2f7ca747f7d51e12ed488c58f0bcbd95187cea043243d1d9b4d1b3c47c0288f0df81647e047090c92999d33fdd2ccc4fe2306107
data/config/version.rb CHANGED
@@ -1,7 +1,7 @@
1
1
  module OrigenDocHelpers
2
2
  MAJOR = 0
3
3
  MINOR = 7
4
- BUGFIX = 0
4
+ BUGFIX = 1
5
5
  DEV = nil
6
6
 
7
7
  VERSION = [MAJOR, MINOR, BUGFIX].join(".") + (DEV ? ".pre#{DEV}" : '')
@@ -10,6 +10,23 @@ module OrigenDocHelpers
10
10
  @pending_pages = []
11
11
  end
12
12
 
13
+ # Force any pending sections and pages into the index, these will be added
14
+ # at the end since their :after/:before reference is not valid
15
+ def force_pending
16
+ @force_pending = true
17
+ @pending_sections.each do |id, opts, blk|
18
+ section(id, opts, &blk)
19
+ end
20
+ @pending_pages.each do |section_id, id, opts|
21
+ @current_section_id = section_id
22
+ @current_section = @index[section_key]
23
+ page(id, opts)
24
+ end
25
+
26
+ @force_pending = nil
27
+ self
28
+ end
29
+
13
30
  def section(id, options = {}, &block)
14
31
  @current_section_id = id
15
32
  if options[:heading]
@@ -29,14 +46,14 @@ module OrigenDocHelpers
29
46
  @section_keys[id] ||= @section_keys[id].to_s if @section_keys[id]
30
47
  section_pending = false
31
48
  unless @index[section_key]
32
- if options[:after]
49
+ if options[:after] && !@force_pending
33
50
  if has_key?(:@index, section_key(options[:after]))
34
51
  insert_after(:@index, section_key, section_key(options[:after]), {})
35
52
  else
36
53
  @pending_sections << [id, options.dup, block] unless @no_pending
37
54
  section_pending = true
38
55
  end
39
- elsif options[:before]
56
+ elsif options[:before] && !@force_pending
40
57
  if has_key?(:@index, section_key(options[:before]))
41
58
  insert_before(:@index, section_key, section_key(options[:before]), {})
42
59
  else
@@ -52,7 +69,7 @@ module OrigenDocHelpers
52
69
  @current_section = nil
53
70
 
54
71
  # See if any pending sections can now be inserted
55
- unless @no_pending
72
+ unless @no_pending || @force_pending
56
73
  @pending_sections.each do |id, opts, blk|
57
74
  @no_pending = true
58
75
  section(id, opts, &blk)
@@ -70,18 +87,18 @@ module OrigenDocHelpers
70
87
  value = options[:heading] || id
71
88
  value = value.to_s if value
72
89
  page_pending = false
73
- if options[:after]
90
+ if options[:after] && !@force_pending
74
91
  if has_key?(:@current_section, topic_key(options[:after]))
75
92
  insert_after(:@current_section, topic_key, topic_key(options[:after]), value)
76
93
  else
77
- @pending_pages << [id, options.dup] unless @no_page_pending
94
+ @pending_pages << [@current_section_id, id, options.dup] unless @no_page_pending
78
95
  page_pending = true
79
96
  end
80
- elsif options[:before]
97
+ elsif options[:before] && !@force_pending
81
98
  if has_key?(:@current_section, topic_key(options[:before]))
82
99
  insert_before(:@current_section, topic_key, topic_key(options[:before]), value)
83
100
  else
84
- @pending_pages << [id, options.dup] unless @no_page_pending
101
+ @pending_pages << [@current_section_id, id, options.dup] unless @no_page_pending
85
102
  page_pending = true
86
103
  end
87
104
  else
@@ -92,8 +109,8 @@ module OrigenDocHelpers
92
109
  @index[section_key] = @current_section unless page_pending
93
110
 
94
111
  # See if any pending pages can now be inserted
95
- unless @no_page_pending
96
- @pending_pages.each do |id, opts|
112
+ unless @no_page_pending || @force_pending
113
+ @pending_pages.each do |section_id, id, opts|
97
114
  @no_page_pending = true
98
115
  page(id, opts)
99
116
  @no_page_pending = false
@@ -1,7 +1,11 @@
1
1
  % options[:root] ||= "docs"
2
2
  % options[:path_separator] ||= "_"
3
3
  % pdf_filename = ::OrigenDocHelpers::PDF.register(options)
4
- % options[:index] = options[:index].to_h
4
+ % if options[:index].is_a?(OrigenDocHelpers::GuideIndex)
5
+ % options[:index] = options[:index].force_pending.to_h
6
+ % else
7
+ % options[:index] = options[:index].to_h
8
+ % end
5
9
 
6
10
  <div class="row">
7
11
  <div class="col-md-3 sidebar-nav-container">
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: origen_doc_helpers
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.7.0
4
+ version: 0.7.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Stephen McGinty
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2018-08-13 00:00:00.000000000 Z
11
+ date: 2018-08-16 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: origen