eac_tools 0.60.3 → 0.61.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 +4 -4
- data/Gemfile.lock +6 -6
- data/lib/eac_tools/version.rb +1 -1
- data/sub/avm-eac_asciidoctor_base0/lib/avm/eac_asciidoctor_base0/instances/build/document/header_lines.rb +1 -1
- data/sub/avm-eac_asciidoctor_base0/lib/avm/eac_asciidoctor_base0/instances/build/document/pre_process_line.rb +16 -4
- data/sub/avm-eac_asciidoctor_base0/lib/avm/eac_asciidoctor_base0/instances/build/document.rb +23 -1
- data/sub/avm-eac_asciidoctor_base0/lib/avm/eac_asciidoctor_base0/instances/macros/base.rb +21 -0
- data/sub/avm-eac_asciidoctor_base0/lib/avm/eac_asciidoctor_base0/instances/macros/breadcrumbs.rb +55 -0
- data/sub/avm-eac_asciidoctor_base0/lib/avm/eac_asciidoctor_base0/instances/macros/child_docs/document_builder.rb +63 -0
- data/sub/avm-eac_asciidoctor_base0/lib/avm/eac_asciidoctor_base0/instances/macros/child_docs.rb +35 -0
- data/sub/avm-eac_asciidoctor_base0/lib/avm/eac_asciidoctor_base0/instances/macros/default_body.rb +21 -0
- data/sub/avm-eac_asciidoctor_base0/lib/avm/eac_asciidoctor_base0/instances/macros.rb +13 -0
- data/sub/avm-eac_asciidoctor_base0/lib/avm/eac_asciidoctor_base0/sources/base.rb +5 -1
- data/sub/avm-eac_asciidoctor_base0/lib/avm/eac_asciidoctor_base0/version.rb +1 -1
- metadata +10 -12
- data/sub/avm-eac_asciidoctor_base0/lib/avm/eac_asciidoctor_base0/instances/build/document/breadcrumbs_macro_value.rb +0 -59
- data/sub/avm-eac_asciidoctor_base0/lib/avm/eac_asciidoctor_base0/instances/build/document/child_docs_macro_value.rb +0 -49
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 88b13d61ea11ac15cc3677a1cf5ec17f1381f8f87ab25074f8cf7be2804e0679
|
|
4
|
+
data.tar.gz: 4432b02f679cabc7aa8ac455599e2bdfa653a02c973a05f02315a7992b50665e
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 0e4a6b279e9e1ee080a4fdf0f390187330bf84b36b022816cb807fa2274bf338c7c894587bd2938f9d71b72b45da42d2df6de2609ef9c783a42a4d063642685a
|
|
7
|
+
data.tar.gz: 2731fdeb08a1110cabba28cab3ccc98a60d8530e5d8a16c08a91459524952c98cccf7550cbcb6f21ccfcbdff8917c083d4911418ad91d6dc843e6e9f02fff58f
|
data/Gemfile.lock
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
PATH
|
|
2
2
|
remote: .
|
|
3
3
|
specs:
|
|
4
|
-
eac_tools (0.
|
|
4
|
+
eac_tools (0.61.0)
|
|
5
5
|
avm (~> 0.67, >= 0.67.1)
|
|
6
|
-
avm-eac_asciidoctor_base0 (~> 0.
|
|
6
|
+
avm-eac_asciidoctor_base0 (~> 0.19)
|
|
7
7
|
avm-eac_generic_base0 (~> 0.12)
|
|
8
8
|
avm-eac_latex_base0 (~> 0.3, >= 0.3.1)
|
|
9
9
|
avm-eac_php_base0 (~> 0.4, >= 0.4.2)
|
|
@@ -34,7 +34,7 @@ PATH
|
|
|
34
34
|
PATH
|
|
35
35
|
remote: sub/avm-eac_asciidoctor_base0
|
|
36
36
|
specs:
|
|
37
|
-
avm-eac_asciidoctor_base0 (0.
|
|
37
|
+
avm-eac_asciidoctor_base0 (0.19.0)
|
|
38
38
|
asciidoctor (~> 2.0, >= 2.0.18)
|
|
39
39
|
avm-eac_webapp_base0 (~> 0.15)
|
|
40
40
|
eac_ruby_utils (~> 0.112)
|
|
@@ -287,7 +287,7 @@ GEM
|
|
|
287
287
|
parslet (~> 2.0)
|
|
288
288
|
curb (0.9.11)
|
|
289
289
|
diff-lcs (1.5.0)
|
|
290
|
-
eac_envs-http (0.3.
|
|
290
|
+
eac_envs-http (0.3.1)
|
|
291
291
|
eac_fs (~> 0.16)
|
|
292
292
|
eac_ruby_utils (~> 0.112)
|
|
293
293
|
faraday (~> 2.7, >= 2.7.4)
|
|
@@ -295,8 +295,8 @@ GEM
|
|
|
295
295
|
faraday-gzip (~> 0.1)
|
|
296
296
|
faraday-multipart (~> 1.0, >= 1.0.4)
|
|
297
297
|
faraday-retry (~> 2.1)
|
|
298
|
-
eac_rest (0.
|
|
299
|
-
eac_envs-http (~> 0.
|
|
298
|
+
eac_rest (0.8.0)
|
|
299
|
+
eac_envs-http (~> 0.3, >= 0.3.1)
|
|
300
300
|
eac_fs (~> 0.16)
|
|
301
301
|
eac_ruby_utils (~> 0.112)
|
|
302
302
|
eac_ruby_gem_support (0.5.1)
|
data/lib/eac_tools/version.rb
CHANGED
|
@@ -11,8 +11,10 @@ module Avm
|
|
|
11
11
|
enable_method_class
|
|
12
12
|
enable_simple_cache
|
|
13
13
|
|
|
14
|
-
|
|
15
|
-
|
|
14
|
+
ARGUMENT_SEPARATOR = ','
|
|
15
|
+
MACRO_PARSER = %r{\A\s*//\#(\S+)(?:\s+(.+))?\s*?\z}.to_parser do |m|
|
|
16
|
+
::Struct.new(:name, :arguments).new(m[1],
|
|
17
|
+
m[2].to_s.split(ARGUMENT_SEPARATOR).map(&:strip))
|
|
16
18
|
end
|
|
17
19
|
|
|
18
20
|
common_constructor :document, :line
|
|
@@ -30,18 +32,28 @@ module Avm
|
|
|
30
32
|
macro_name.present?
|
|
31
33
|
end
|
|
32
34
|
|
|
35
|
+
# @return [Array<String>, nil]
|
|
36
|
+
def macro_arguments
|
|
37
|
+
parsed_macro.if_present(&:arguments)
|
|
38
|
+
end
|
|
39
|
+
|
|
40
|
+
# @return [String, nil]
|
|
41
|
+
def macro_name
|
|
42
|
+
parsed_macro.if_present(&:name)
|
|
43
|
+
end
|
|
44
|
+
|
|
33
45
|
def macro_parser
|
|
34
46
|
MACRO_PARSER
|
|
35
47
|
end
|
|
36
48
|
|
|
37
49
|
# @return [Array<String>]
|
|
38
50
|
def macro_value
|
|
39
|
-
document.
|
|
51
|
+
document.macro_lines(macro_name, macro_arguments)
|
|
40
52
|
end
|
|
41
53
|
|
|
42
54
|
private
|
|
43
55
|
|
|
44
|
-
def
|
|
56
|
+
def parsed_macro_uncached
|
|
45
57
|
macro_parser.parse(line)
|
|
46
58
|
end
|
|
47
59
|
end
|
data/sub/avm-eac_asciidoctor_base0/lib/avm/eac_asciidoctor_base0/instances/build/document.rb
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
# frozen_string_literal: true
|
|
2
2
|
|
|
3
3
|
require 'asciidoctor'
|
|
4
|
+
require 'avm/eac_asciidoctor_base0/instances/macros'
|
|
4
5
|
require 'eac_ruby_utils/core_ext'
|
|
5
6
|
|
|
6
7
|
module Avm
|
|
@@ -22,6 +23,15 @@ module Avm
|
|
|
22
23
|
other.body_target_path.relative_path_from(body_target_path.dirname)
|
|
23
24
|
end
|
|
24
25
|
|
|
26
|
+
# @return [Enumerable<String>]
|
|
27
|
+
def body_source_lines
|
|
28
|
+
if source_document.body_path.file?
|
|
29
|
+
source_document.body_path.read.each_line
|
|
30
|
+
else
|
|
31
|
+
default_body_source_lines
|
|
32
|
+
end
|
|
33
|
+
end
|
|
34
|
+
|
|
25
35
|
# Absolute path to the output of Asciidoctor's source file.
|
|
26
36
|
#
|
|
27
37
|
# @return [Pathname]
|
|
@@ -56,6 +66,18 @@ module Avm
|
|
|
56
66
|
source_document.root_path
|
|
57
67
|
end
|
|
58
68
|
|
|
69
|
+
# @return [Enumerable<String>]
|
|
70
|
+
def default_body_source_lines
|
|
71
|
+
macro_lines(:default_body)
|
|
72
|
+
end
|
|
73
|
+
|
|
74
|
+
# @param name [String]
|
|
75
|
+
# @return [Array<String>]
|
|
76
|
+
def macro_lines(name, arguments = [])
|
|
77
|
+
::Avm::EacAsciidoctorBase0::Instances::Macros.const_get(name.to_s.camelize)
|
|
78
|
+
.new(self, arguments).result
|
|
79
|
+
end
|
|
80
|
+
|
|
59
81
|
def perform
|
|
60
82
|
perform_self
|
|
61
83
|
perform_children
|
|
@@ -74,7 +96,7 @@ module Avm
|
|
|
74
96
|
# @return [String]
|
|
75
97
|
def pre_processed_body_source_content
|
|
76
98
|
(
|
|
77
|
-
header_lines + [''] +
|
|
99
|
+
header_lines + [''] + body_source_lines
|
|
78
100
|
.flat_map { |line| pre_process_line(line.rstrip) }
|
|
79
101
|
).map { |line| "#{line.rstrip}\n" }.join
|
|
80
102
|
end
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
require 'eac_ruby_utils/core_ext'
|
|
4
|
+
|
|
5
|
+
module Avm
|
|
6
|
+
module EacAsciidoctorBase0
|
|
7
|
+
module Instances
|
|
8
|
+
module Macros
|
|
9
|
+
class Base
|
|
10
|
+
enable_abstract_methods
|
|
11
|
+
common_constructor :document, :arguments, default: [[]]
|
|
12
|
+
|
|
13
|
+
# @return [Array<String>]
|
|
14
|
+
def result
|
|
15
|
+
raise_abstract_method __method__
|
|
16
|
+
end
|
|
17
|
+
end
|
|
18
|
+
end
|
|
19
|
+
end
|
|
20
|
+
end
|
|
21
|
+
end
|
data/sub/avm-eac_asciidoctor_base0/lib/avm/eac_asciidoctor_base0/instances/macros/breadcrumbs.rb
ADDED
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
require 'avm/eac_asciidoctor_base0/instances/macros/base'
|
|
4
|
+
require 'eac_ruby_utils/core_ext'
|
|
5
|
+
|
|
6
|
+
module Avm
|
|
7
|
+
module EacAsciidoctorBase0
|
|
8
|
+
module Instances
|
|
9
|
+
module Macros
|
|
10
|
+
class Breadcrumbs < ::Avm::EacAsciidoctorBase0::Instances::Macros::Base
|
|
11
|
+
NODE_SEPARATOR = ' » '
|
|
12
|
+
ROOT_DOCUMENT_TITLE = 'Home'
|
|
13
|
+
|
|
14
|
+
# @return [Array<String>]
|
|
15
|
+
def result
|
|
16
|
+
trail_nodes.join(NODE_SEPARATOR)
|
|
17
|
+
end
|
|
18
|
+
|
|
19
|
+
def trail_nodes
|
|
20
|
+
r = []
|
|
21
|
+
current = document
|
|
22
|
+
while current.present?
|
|
23
|
+
r.unshift(Node.new(document, current))
|
|
24
|
+
current = current.parent_document
|
|
25
|
+
end
|
|
26
|
+
r
|
|
27
|
+
end
|
|
28
|
+
|
|
29
|
+
class Node
|
|
30
|
+
common_constructor :current, :document
|
|
31
|
+
|
|
32
|
+
# @return [String]
|
|
33
|
+
def address
|
|
34
|
+
current.href_to_other_body(document)
|
|
35
|
+
end
|
|
36
|
+
|
|
37
|
+
# @return [String]
|
|
38
|
+
def title
|
|
39
|
+
if document.parent_document.present?
|
|
40
|
+
document.source_document.title
|
|
41
|
+
else
|
|
42
|
+
ROOT_DOCUMENT_TITLE
|
|
43
|
+
end
|
|
44
|
+
end
|
|
45
|
+
|
|
46
|
+
# @return [String]
|
|
47
|
+
def to_s
|
|
48
|
+
"link:#{address}[#{title}]"
|
|
49
|
+
end
|
|
50
|
+
end
|
|
51
|
+
end
|
|
52
|
+
end
|
|
53
|
+
end
|
|
54
|
+
end
|
|
55
|
+
end
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
require 'avm/eac_asciidoctor_base0/instances/macros/base'
|
|
4
|
+
require 'eac_ruby_utils/core_ext'
|
|
5
|
+
|
|
6
|
+
module Avm
|
|
7
|
+
module EacAsciidoctorBase0
|
|
8
|
+
module Instances
|
|
9
|
+
module Macros
|
|
10
|
+
class ChildDocs < ::Avm::EacAsciidoctorBase0::Instances::Macros::Base
|
|
11
|
+
class DocumentBuilder
|
|
12
|
+
common_constructor :child_docs, :document, :depth, default: [0]
|
|
13
|
+
compare_by :title, :address
|
|
14
|
+
|
|
15
|
+
# @return [Pathname]
|
|
16
|
+
def address
|
|
17
|
+
root_document.href_to_other_body(document)
|
|
18
|
+
end
|
|
19
|
+
|
|
20
|
+
# @return [Array] Document's children mapped to document builders.
|
|
21
|
+
def children
|
|
22
|
+
document.children.map { |c| self.class.new(child_docs, c, depth + 1) }.sort
|
|
23
|
+
end
|
|
24
|
+
|
|
25
|
+
# @return [Boolean]
|
|
26
|
+
def lines_for_children?
|
|
27
|
+
child_docs.maximum_depth.negative? || child_docs.maximum_depth <= depth
|
|
28
|
+
end
|
|
29
|
+
|
|
30
|
+
# @return [String]
|
|
31
|
+
def link
|
|
32
|
+
"link:#{address}[#{title}]"
|
|
33
|
+
end
|
|
34
|
+
|
|
35
|
+
# @return [Array<String>]
|
|
36
|
+
def result
|
|
37
|
+
children.flat_map do |child|
|
|
38
|
+
r = [child.self_line]
|
|
39
|
+
r += child.result if lines_for_children?
|
|
40
|
+
r
|
|
41
|
+
end
|
|
42
|
+
end
|
|
43
|
+
|
|
44
|
+
# @return [Avm::EacAsciidoctorBase0::Instances::Build::Document]
|
|
45
|
+
def root_document
|
|
46
|
+
child_docs.document
|
|
47
|
+
end
|
|
48
|
+
|
|
49
|
+
# @return [String]
|
|
50
|
+
def self_line
|
|
51
|
+
"#{'*' * depth} #{link}"
|
|
52
|
+
end
|
|
53
|
+
|
|
54
|
+
# @return [String]
|
|
55
|
+
def title
|
|
56
|
+
document.source_document.title
|
|
57
|
+
end
|
|
58
|
+
end
|
|
59
|
+
end
|
|
60
|
+
end
|
|
61
|
+
end
|
|
62
|
+
end
|
|
63
|
+
end
|
data/sub/avm-eac_asciidoctor_base0/lib/avm/eac_asciidoctor_base0/instances/macros/child_docs.rb
ADDED
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
require 'avm/eac_asciidoctor_base0/instances/macros/base'
|
|
4
|
+
require 'eac_ruby_utils/core_ext'
|
|
5
|
+
|
|
6
|
+
module Avm
|
|
7
|
+
module EacAsciidoctorBase0
|
|
8
|
+
module Instances
|
|
9
|
+
module Macros
|
|
10
|
+
class ChildDocs < ::Avm::EacAsciidoctorBase0::Instances::Macros::Base
|
|
11
|
+
DEFAULT_MAXIMUM_DEPTH = -1
|
|
12
|
+
|
|
13
|
+
# @return [Array<String>]
|
|
14
|
+
def result
|
|
15
|
+
document_builder_class.new(self, document).result
|
|
16
|
+
end
|
|
17
|
+
|
|
18
|
+
# @return [Integer]
|
|
19
|
+
def maximum_depth
|
|
20
|
+
arguments[0].if_present(DEFAULT_MAXIMUM_DEPTH, &:to_i)
|
|
21
|
+
end
|
|
22
|
+
|
|
23
|
+
private
|
|
24
|
+
|
|
25
|
+
# @return [Class]
|
|
26
|
+
def document_builder_class
|
|
27
|
+
::Avm::EacAsciidoctorBase0::Instances::Macros::ChildDocs::DocumentBuilder
|
|
28
|
+
end
|
|
29
|
+
|
|
30
|
+
require_sub __FILE__
|
|
31
|
+
end
|
|
32
|
+
end
|
|
33
|
+
end
|
|
34
|
+
end
|
|
35
|
+
end
|
data/sub/avm-eac_asciidoctor_base0/lib/avm/eac_asciidoctor_base0/instances/macros/default_body.rb
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
require 'avm/eac_asciidoctor_base0/instances/macros/base'
|
|
4
|
+
require 'eac_ruby_utils/core_ext'
|
|
5
|
+
|
|
6
|
+
module Avm
|
|
7
|
+
module EacAsciidoctorBase0
|
|
8
|
+
module Instances
|
|
9
|
+
module Macros
|
|
10
|
+
class DefaultBody < ::Avm::EacAsciidoctorBase0::Instances::Macros::Base
|
|
11
|
+
RESULT_LINES = ['== Índice', '', '//#child_docs'].freeze
|
|
12
|
+
|
|
13
|
+
# @return [Array<String>]
|
|
14
|
+
def result
|
|
15
|
+
RESULT_LINES
|
|
16
|
+
end
|
|
17
|
+
end
|
|
18
|
+
end
|
|
19
|
+
end
|
|
20
|
+
end
|
|
21
|
+
end
|
|
@@ -8,9 +8,13 @@ module Avm
|
|
|
8
8
|
module EacAsciidoctorBase0
|
|
9
9
|
module Sources
|
|
10
10
|
class Base < ::Avm::EacWebappBase0::Sources::Base
|
|
11
|
+
require_sub __FILE__
|
|
12
|
+
|
|
11
13
|
CONTENT_DIRECTORY_SUBPATH = ::Pathname.new('content')
|
|
12
14
|
CONTENT_DOCUMENT_BASENAME = ::Pathname.new('body.adoc')
|
|
13
|
-
MAIN_FILE_SUBPATH = CONTENT_DIRECTORY_SUBPATH.join(
|
|
15
|
+
MAIN_FILE_SUBPATH = CONTENT_DIRECTORY_SUBPATH.join(
|
|
16
|
+
::Avm::EacAsciidoctorBase0::Sources::Base::Document::TITLE_BASENAME
|
|
17
|
+
)
|
|
14
18
|
|
|
15
19
|
require_sub __FILE__, include_modules: true
|
|
16
20
|
|
metadata
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: eac_tools
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.
|
|
4
|
+
version: 0.61.0
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Put here the authors
|
|
8
8
|
autorequire:
|
|
9
9
|
bindir: bin
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date: 2023-
|
|
11
|
+
date: 2023-05-01 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: avm
|
|
@@ -36,20 +36,14 @@ dependencies:
|
|
|
36
36
|
requirements:
|
|
37
37
|
- - "~>"
|
|
38
38
|
- !ruby/object:Gem::Version
|
|
39
|
-
version: '0.
|
|
40
|
-
- - ">="
|
|
41
|
-
- !ruby/object:Gem::Version
|
|
42
|
-
version: 0.18.1
|
|
39
|
+
version: '0.19'
|
|
43
40
|
type: :runtime
|
|
44
41
|
prerelease: false
|
|
45
42
|
version_requirements: !ruby/object:Gem::Requirement
|
|
46
43
|
requirements:
|
|
47
44
|
- - "~>"
|
|
48
45
|
- !ruby/object:Gem::Version
|
|
49
|
-
version: '0.
|
|
50
|
-
- - ">="
|
|
51
|
-
- !ruby/object:Gem::Version
|
|
52
|
-
version: 0.18.1
|
|
46
|
+
version: '0.19'
|
|
53
47
|
- !ruby/object:Gem::Dependency
|
|
54
48
|
name: avm-eac_generic_base0
|
|
55
49
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -412,12 +406,16 @@ files:
|
|
|
412
406
|
- sub/avm-eac_asciidoctor_base0/lib/avm/eac_asciidoctor_base0/instances/base.rb
|
|
413
407
|
- sub/avm-eac_asciidoctor_base0/lib/avm/eac_asciidoctor_base0/instances/build.rb
|
|
414
408
|
- sub/avm-eac_asciidoctor_base0/lib/avm/eac_asciidoctor_base0/instances/build/document.rb
|
|
415
|
-
- sub/avm-eac_asciidoctor_base0/lib/avm/eac_asciidoctor_base0/instances/build/document/breadcrumbs_macro_value.rb
|
|
416
|
-
- sub/avm-eac_asciidoctor_base0/lib/avm/eac_asciidoctor_base0/instances/build/document/child_docs_macro_value.rb
|
|
417
409
|
- sub/avm-eac_asciidoctor_base0/lib/avm/eac_asciidoctor_base0/instances/build/document/header_lines.rb
|
|
418
410
|
- sub/avm-eac_asciidoctor_base0/lib/avm/eac_asciidoctor_base0/instances/build/document/media.rb
|
|
419
411
|
- sub/avm-eac_asciidoctor_base0/lib/avm/eac_asciidoctor_base0/instances/build/document/pre_process_line.rb
|
|
420
412
|
- sub/avm-eac_asciidoctor_base0/lib/avm/eac_asciidoctor_base0/instances/deploy.rb
|
|
413
|
+
- sub/avm-eac_asciidoctor_base0/lib/avm/eac_asciidoctor_base0/instances/macros.rb
|
|
414
|
+
- sub/avm-eac_asciidoctor_base0/lib/avm/eac_asciidoctor_base0/instances/macros/base.rb
|
|
415
|
+
- sub/avm-eac_asciidoctor_base0/lib/avm/eac_asciidoctor_base0/instances/macros/breadcrumbs.rb
|
|
416
|
+
- sub/avm-eac_asciidoctor_base0/lib/avm/eac_asciidoctor_base0/instances/macros/child_docs.rb
|
|
417
|
+
- sub/avm-eac_asciidoctor_base0/lib/avm/eac_asciidoctor_base0/instances/macros/child_docs/document_builder.rb
|
|
418
|
+
- sub/avm-eac_asciidoctor_base0/lib/avm/eac_asciidoctor_base0/instances/macros/default_body.rb
|
|
421
419
|
- sub/avm-eac_asciidoctor_base0/lib/avm/eac_asciidoctor_base0/source_generators.rb
|
|
422
420
|
- sub/avm-eac_asciidoctor_base0/lib/avm/eac_asciidoctor_base0/source_generators/base.rb
|
|
423
421
|
- sub/avm-eac_asciidoctor_base0/lib/avm/eac_asciidoctor_base0/sources.rb
|
|
@@ -1,59 +0,0 @@
|
|
|
1
|
-
# frozen_string_literal: true
|
|
2
|
-
|
|
3
|
-
require 'eac_ruby_utils/core_ext'
|
|
4
|
-
|
|
5
|
-
module Avm
|
|
6
|
-
module EacAsciidoctorBase0
|
|
7
|
-
module Instances
|
|
8
|
-
class Build
|
|
9
|
-
class Document
|
|
10
|
-
class BreadcrumbsMacroValue
|
|
11
|
-
enable_method_class
|
|
12
|
-
common_constructor :document
|
|
13
|
-
|
|
14
|
-
NODE_SEPARATOR = ' » '
|
|
15
|
-
ROOT_DOCUMENT_TITLE = 'Home'
|
|
16
|
-
|
|
17
|
-
# @return [Array<String>]
|
|
18
|
-
def result
|
|
19
|
-
trail_nodes.join(NODE_SEPARATOR)
|
|
20
|
-
end
|
|
21
|
-
|
|
22
|
-
def trail_nodes
|
|
23
|
-
r = []
|
|
24
|
-
current = document
|
|
25
|
-
while current.present?
|
|
26
|
-
r.unshift(Node.new(document, current))
|
|
27
|
-
current = current.parent_document
|
|
28
|
-
end
|
|
29
|
-
r
|
|
30
|
-
end
|
|
31
|
-
|
|
32
|
-
class Node
|
|
33
|
-
common_constructor :current, :document
|
|
34
|
-
|
|
35
|
-
# @return [String]
|
|
36
|
-
def address
|
|
37
|
-
current.href_to_other_body(document)
|
|
38
|
-
end
|
|
39
|
-
|
|
40
|
-
# @return [String]
|
|
41
|
-
def title
|
|
42
|
-
if document.parent_document.present?
|
|
43
|
-
document.source_document.title
|
|
44
|
-
else
|
|
45
|
-
ROOT_DOCUMENT_TITLE
|
|
46
|
-
end
|
|
47
|
-
end
|
|
48
|
-
|
|
49
|
-
# @return [String]
|
|
50
|
-
def to_s
|
|
51
|
-
"link:#{address}[#{title}]"
|
|
52
|
-
end
|
|
53
|
-
end
|
|
54
|
-
end
|
|
55
|
-
end
|
|
56
|
-
end
|
|
57
|
-
end
|
|
58
|
-
end
|
|
59
|
-
end
|
|
@@ -1,49 +0,0 @@
|
|
|
1
|
-
# frozen_string_literal: true
|
|
2
|
-
|
|
3
|
-
require 'eac_ruby_utils/core_ext'
|
|
4
|
-
|
|
5
|
-
module Avm
|
|
6
|
-
module EacAsciidoctorBase0
|
|
7
|
-
module Instances
|
|
8
|
-
class Build
|
|
9
|
-
class Document
|
|
10
|
-
class ChildDocsMacroValue
|
|
11
|
-
enable_method_class
|
|
12
|
-
common_constructor :document
|
|
13
|
-
|
|
14
|
-
# @return [Array<String>]
|
|
15
|
-
def result
|
|
16
|
-
document.children.map { |child_doc| ChildDocLine.new(document, child_doc) }.sort
|
|
17
|
-
.map(&:result)
|
|
18
|
-
end
|
|
19
|
-
|
|
20
|
-
class ChildDocLine
|
|
21
|
-
common_constructor :document, :child
|
|
22
|
-
compare_by :title, :address
|
|
23
|
-
|
|
24
|
-
# @return [Pathname]
|
|
25
|
-
def address
|
|
26
|
-
document.href_to_other_body(child)
|
|
27
|
-
end
|
|
28
|
-
|
|
29
|
-
# @return [String]
|
|
30
|
-
def link
|
|
31
|
-
"link:#{address}[#{title}]"
|
|
32
|
-
end
|
|
33
|
-
|
|
34
|
-
# @return [String]
|
|
35
|
-
def result
|
|
36
|
-
"* #{link}"
|
|
37
|
-
end
|
|
38
|
-
|
|
39
|
-
# @return [String]
|
|
40
|
-
def title
|
|
41
|
-
child.source_document.title
|
|
42
|
-
end
|
|
43
|
-
end
|
|
44
|
-
end
|
|
45
|
-
end
|
|
46
|
-
end
|
|
47
|
-
end
|
|
48
|
-
end
|
|
49
|
-
end
|