eac_tools 0.58.0 → 0.59.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.
Files changed (26) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile.lock +3 -3
  3. data/lib/eac_tools/version.rb +1 -1
  4. data/sub/avm-eac_asciidoctor_base0/lib/avm/eac_asciidoctor_base0/instances/build/document/media.rb +28 -0
  5. data/sub/avm-eac_asciidoctor_base0/lib/avm/eac_asciidoctor_base0/instances/build/document.rb +14 -10
  6. data/sub/avm-eac_asciidoctor_base0/lib/avm/eac_asciidoctor_base0/sources/base/document/media.rb +30 -0
  7. data/sub/avm-eac_asciidoctor_base0/lib/avm/eac_asciidoctor_base0/sources/base/document.rb +1 -0
  8. data/sub/avm-eac_asciidoctor_base0/lib/avm/eac_asciidoctor_base0/version.rb +1 -1
  9. data/sub/avm-eac_asciidoctor_base0/spec/lib/avm/eac_asciidoctor_base0/instances/build_spec.rb +10 -20
  10. data/sub/avm-eac_asciidoctor_base0/spec/lib/avm/eac_asciidoctor_base0/instances/build_spec_files/first.source/content/_media/a_media_file +1 -0
  11. data/sub/avm-eac_asciidoctor_base0/spec/lib/avm/eac_asciidoctor_base0/instances/build_spec_files/first.source/content/doc1/_media/a_media_file +1 -0
  12. data/sub/avm-eac_asciidoctor_base0/spec/lib/avm/eac_asciidoctor_base0/instances/build_spec_files/first.source/content/doc1/body.adoc +11 -0
  13. data/sub/avm-eac_asciidoctor_base0/spec/lib/avm/eac_asciidoctor_base0/instances/build_spec_files/first.source/content/doc1/title +1 -0
  14. data/sub/avm-eac_asciidoctor_base0/spec/lib/avm/eac_asciidoctor_base0/instances/build_spec_files/first.source/content/doc2/body.adoc +11 -0
  15. data/sub/avm-eac_asciidoctor_base0/spec/lib/avm/eac_asciidoctor_base0/instances/build_spec_files/first.source/content/doc2/doc2_1/_media/a_media_file +1 -0
  16. data/sub/avm-eac_asciidoctor_base0/spec/lib/avm/eac_asciidoctor_base0/instances/build_spec_files/first.source/content/doc2/doc2_1/body.adoc +11 -0
  17. data/sub/avm-eac_asciidoctor_base0/spec/lib/avm/eac_asciidoctor_base0/instances/build_spec_files/first.source/content/doc2/doc2_1/title +1 -0
  18. data/sub/avm-eac_asciidoctor_base0/spec/lib/avm/eac_asciidoctor_base0/instances/build_spec_files/first.source/content/doc2/title +1 -0
  19. data/sub/avm-eac_asciidoctor_base0/spec/lib/avm/eac_asciidoctor_base0/instances/build_spec_files/first.target/_media/a_media_file +1 -0
  20. data/sub/avm-eac_asciidoctor_base0/spec/lib/avm/eac_asciidoctor_base0/instances/build_spec_files/first.target/doc1/_media/a_media_file +1 -0
  21. data/sub/avm-eac_asciidoctor_base0/spec/lib/avm/eac_asciidoctor_base0/instances/build_spec_files/first.target/doc2/doc2_1/_media/a_media_file +1 -0
  22. metadata +21 -7
  23. /data/sub/avm-eac_asciidoctor_base0/spec/lib/avm/eac_asciidoctor_base0/instances/build_spec_files/{index.html → first.target/doc1/index.html} +0 -0
  24. /data/sub/avm-eac_asciidoctor_base0/spec/lib/avm/eac_asciidoctor_base0/instances/build_spec_files/{doc1.html → first.target/doc2/doc2_1/index.html} +0 -0
  25. /data/sub/avm-eac_asciidoctor_base0/spec/lib/avm/eac_asciidoctor_base0/instances/build_spec_files/{doc2.html → first.target/doc2/index.html} +0 -0
  26. /data/sub/avm-eac_asciidoctor_base0/spec/lib/avm/eac_asciidoctor_base0/instances/build_spec_files/{doc2/doc2_1.html → first.target/index.html} +0 -0
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: ff15266dd0fd06d6c50c3b3e2970122497b2de3fbfe81256f8f137b8f014b138
4
- data.tar.gz: e33174a9d250c9f677321323f6d5fc18eeb7e54b215cf1f9de606b8387efbaf6
3
+ metadata.gz: 2cb19ed074ebe2b0a6b8d0695d83159c38744eccc80c3e361d3d6b2a60c99874
4
+ data.tar.gz: fe65562b50eea39849b5a7001ce3804ac19e0df8c6fcaec8678732719130fc8d
5
5
  SHA512:
6
- metadata.gz: 8b19995fc569e17ca90ce26cb98e46e6bf0da5dfe429e97897cbe738bbfedda45f1dac6a071cb9b09c112536b26c46ceb47c21200f471c52bc159e3e4ed5317e
7
- data.tar.gz: ba05f3546c0bba6967385775acfb6cc5d3991f2833e98e02cc0e9e9d9956739ad1b00b94759a97e58d245fd6c1030df4aee950efbc6d72f77009a0b0c2a934b1
6
+ metadata.gz: 7ae8c3ac14a3bff264e300b79e19742c7254274dffbb8aa17cb4119b22b460cff527e5e971d499e6bd0adfad853fdc89c7ff418ba8af7360ca5ac1997166c401
7
+ data.tar.gz: 5d593fc1603967b5d2ad2231dad540cdd81db1c1f4f861fd12259afc0e60cfdd93f67f5248b7eef76013dc2fd57fa50dcf5628478641ff162d10da5d45f0960f
data/Gemfile.lock CHANGED
@@ -1,9 +1,9 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- eac_tools (0.58.0)
4
+ eac_tools (0.59.0)
5
5
  avm (~> 0.66, >= 0.66.1)
6
- avm-eac_asciidoctor_base0 (~> 0.16)
6
+ avm-eac_asciidoctor_base0 (~> 0.17)
7
7
  avm-eac_generic_base0 (~> 0.12)
8
8
  avm-eac_latex_base0 (~> 0.3)
9
9
  avm-eac_php_base0 (~> 0.4, >= 0.4.1)
@@ -37,7 +37,7 @@ PATH
37
37
  PATH
38
38
  remote: sub/avm-eac_asciidoctor_base0
39
39
  specs:
40
- avm-eac_asciidoctor_base0 (0.16.0)
40
+ avm-eac_asciidoctor_base0 (0.17.0)
41
41
  asciidoctor (~> 2.0, >= 2.0.18)
42
42
  avm-eac_webapp_base0 (~> 0.14)
43
43
  eac_ruby_utils (~> 0.112)
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module EacTools
4
- VERSION = '0.58.0'
4
+ VERSION = '0.59.0'
5
5
  end
@@ -0,0 +1,28 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'asciidoctor'
4
+ require 'eac_ruby_utils/core_ext'
5
+
6
+ module Avm
7
+ module EacAsciidoctorBase0
8
+ module Instances
9
+ class Build
10
+ class Document
11
+ module Media
12
+ def copy_media_directory
13
+ source_document.copy_media_directory_to(media_target_path)
14
+ end
15
+
16
+ # @return [Pathname]
17
+ def media_target_path
18
+ build.target_directory.join(
19
+ parent_document.present? ? source_document.subpath : '',
20
+ ::Avm::EacAsciidoctorBase0::Sources::Base::Document::Media::MEDIA_DIRECTORY_BASENAME
21
+ )
22
+ end
23
+ end
24
+ end
25
+ end
26
+ end
27
+ end
28
+ end
@@ -8,9 +8,9 @@ module Avm
8
8
  module Instances
9
9
  class Build
10
10
  class Document
11
- require_sub __FILE__
11
+ require_sub __FILE__, include_modules: true
12
12
 
13
- ROOT_BODY_TARGET_BASENAME = 'index'
13
+ BODY_TARGET_BASENAME = 'index.html'
14
14
 
15
15
  enable_simple_cache
16
16
  enable_speaker
@@ -20,9 +20,16 @@ module Avm
20
20
  #
21
21
  # @return [Pathname]
22
22
  def body_target_path
23
- build.target_directory.join(
24
- parent_document.present? ? source_document.subpath : ROOT_BODY_TARGET_BASENAME
25
- ).basename_sub('.*') { |b| "#{b}.html" }
23
+ build.target_directory.join(source_document.subpath).join(BODY_TARGET_BASENAME)
24
+ end
25
+
26
+ # @return [Asciidoctor::Document]
27
+ def build_body
28
+ ::Asciidoctor.convert(
29
+ pre_processed_body_source_content,
30
+ base_dir: convert_base_dir,
31
+ to_file: body_target_path.to_path, safe: :unsafe, mkdirs: true
32
+ )
26
33
  end
27
34
 
28
35
  # @return [Pathname]
@@ -37,11 +44,8 @@ module Avm
37
44
 
38
45
  def perform_self
39
46
  infov 'Building', source_document.subpath
40
- ::Asciidoctor.convert(
41
- pre_processed_body_source_content,
42
- base_dir: convert_base_dir,
43
- to_file: body_target_path.to_path, safe: :unsafe, mkdirs: true
44
- )
47
+ build_body
48
+ copy_media_directory
45
49
  end
46
50
 
47
51
  def perform_children
@@ -0,0 +1,30 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'asciidoctor'
4
+ require 'eac_ruby_utils/core_ext'
5
+
6
+ module Avm
7
+ module EacAsciidoctorBase0
8
+ module Sources
9
+ class Base
10
+ class Document
11
+ module Media
12
+ MEDIA_DIRECTORY_BASENAME = '_media'
13
+
14
+ def copy_media_directory_to(target_directory_path)
15
+ return unless media_directory.directory?
16
+
17
+ target_directory_path.parent.mkpath
18
+ ::FileUtils.copy_entry(media_directory, target_directory_path)
19
+ end
20
+
21
+ # @return [Pathname]
22
+ def media_directory
23
+ root_path.join(MEDIA_DIRECTORY_BASENAME)
24
+ end
25
+ end
26
+ end
27
+ end
28
+ end
29
+ end
30
+ end
@@ -38,6 +38,7 @@ module Avm
38
38
 
39
39
  def children_uncached
40
40
  root_path.children.select(&:directory?)
41
+ .reject { |path| path.basename.to_path == MEDIA_DIRECTORY_BASENAME }
41
42
  .map { |path| self.class.new(source, self, path.basename) }
42
43
  end
43
44
  end
@@ -2,6 +2,6 @@
2
2
 
3
3
  module Avm
4
4
  module EacAsciidoctorBase0
5
- VERSION = '0.16.0'
5
+ VERSION = '0.17.0'
6
6
  end
7
7
  end
@@ -10,14 +10,9 @@ require 'eac_fs/comparator'
10
10
  ::Avm::EacAsciidoctorBase0::Instances::Base
11
11
  .new(application, 'stub')
12
12
  end
13
- let(:fixtures_dir) { __dir__.to_pathname.join('build_spec_files') }
14
13
  let(:fs_comparator) { ::EacFs::Comparator.new.truncate_file('*.html') }
15
14
  let(:instance) { described_class.new(application_instance) }
16
15
  let(:source) { avm_source('EacAsciidoctorBase0', target_basename: application.id) }
17
- let(:target_dir) { fixtures_dir }
18
- let(:main_document) do
19
- source.path.join(::Avm::EacAsciidoctorBase0::Sources::Base::MAIN_FILE_SUBPATH)
20
- end
21
16
 
22
17
  before do
23
18
  application.entry('stereotype').write('EacAsciidoctorBase0')
@@ -27,22 +22,17 @@ require 'eac_fs/comparator'
27
22
  application_instance.entry('install.name_initials').write('T.A.')
28
23
  application_instance.entry('install.email').write('theauthor@example.net')
29
24
  application_instance.entry('web.url').write('https://www.example.net')
30
- %w[doc1 doc2 doc2/doc2_1].each do |subpath|
31
- target_dir = source.content_directory.join(subpath)
32
- target_dir.mkpath
33
- ::FileUtils.cp(
34
- main_document,
35
- target_dir.join(::Avm::EacAsciidoctorBase0::Sources::Base::CONTENT_DOCUMENT_BASENAME)
36
- )
37
- ::FileUtils.cp(
38
- source.root_document.title_path,
39
- target_dir.join(::Avm::EacAsciidoctorBase0::Sources::Base::Document::TITLE_BASENAME)
40
- )
41
- end
42
- instance.perform
43
25
  end
44
26
 
45
- it do
46
- expect(fs_comparator.build(instance.target_directory)).to eq(fs_comparator.build(target_dir))
27
+ include_examples 'source_target_fixtures', __FILE__ do
28
+ def source_data(source_file)
29
+ ::FileUtils.copy_entry(source_file, source.path)
30
+ instance.perform
31
+ fs_comparator.build(instance.target_directory)
32
+ end
33
+
34
+ def target_data(target_file)
35
+ fs_comparator.build(target_file.to_pathname)
36
+ end
47
37
  end
48
38
  end
@@ -0,0 +1,11 @@
1
+ == Child Documents
2
+
3
+ //#child_docs
4
+
5
+ == First Section
6
+
7
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aenean sapien.
8
+
9
+ == Second Section
10
+
11
+ Nam faucibus quis dui at laoreet. Pellentesque ut sapien est.
@@ -0,0 +1,11 @@
1
+ == Child Documents
2
+
3
+ //#child_docs
4
+
5
+ == First Section
6
+
7
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aenean sapien.
8
+
9
+ == Second Section
10
+
11
+ Nam faucibus quis dui at laoreet. Pellentesque ut sapien est.
@@ -0,0 +1,11 @@
1
+ == Child Documents
2
+
3
+ //#child_docs
4
+
5
+ == First Section
6
+
7
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aenean sapien.
8
+
9
+ == Second Section
10
+
11
+ Nam faucibus quis dui at laoreet. Pellentesque ut sapien est.
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: eac_tools
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.58.0
4
+ version: 0.59.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Put here the authors
@@ -36,14 +36,14 @@ dependencies:
36
36
  requirements:
37
37
  - - "~>"
38
38
  - !ruby/object:Gem::Version
39
- version: '0.16'
39
+ version: '0.17'
40
40
  type: :runtime
41
41
  prerelease: false
42
42
  version_requirements: !ruby/object:Gem::Requirement
43
43
  requirements:
44
44
  - - "~>"
45
45
  - !ruby/object:Gem::Version
46
- version: '0.16'
46
+ version: '0.17'
47
47
  - !ruby/object:Gem::Dependency
48
48
  name: avm-eac_generic_base0
49
49
  requirement: !ruby/object:Gem::Requirement
@@ -377,6 +377,7 @@ files:
377
377
  - sub/avm-eac_asciidoctor_base0/lib/avm/eac_asciidoctor_base0/instances/build/document.rb
378
378
  - sub/avm-eac_asciidoctor_base0/lib/avm/eac_asciidoctor_base0/instances/build/document/child_docs_macro_value.rb
379
379
  - sub/avm-eac_asciidoctor_base0/lib/avm/eac_asciidoctor_base0/instances/build/document/header_lines.rb
380
+ - sub/avm-eac_asciidoctor_base0/lib/avm/eac_asciidoctor_base0/instances/build/document/media.rb
380
381
  - sub/avm-eac_asciidoctor_base0/lib/avm/eac_asciidoctor_base0/instances/build/document/pre_process_line.rb
381
382
  - sub/avm-eac_asciidoctor_base0/lib/avm/eac_asciidoctor_base0/instances/deploy.rb
382
383
  - sub/avm-eac_asciidoctor_base0/lib/avm/eac_asciidoctor_base0/source_generators.rb
@@ -384,6 +385,7 @@ files:
384
385
  - sub/avm-eac_asciidoctor_base0/lib/avm/eac_asciidoctor_base0/sources.rb
385
386
  - sub/avm-eac_asciidoctor_base0/lib/avm/eac_asciidoctor_base0/sources/base.rb
386
387
  - sub/avm-eac_asciidoctor_base0/lib/avm/eac_asciidoctor_base0/sources/base/document.rb
388
+ - sub/avm-eac_asciidoctor_base0/lib/avm/eac_asciidoctor_base0/sources/base/document/media.rb
387
389
  - sub/avm-eac_asciidoctor_base0/lib/avm/eac_asciidoctor_base0/sources/base/document/title.rb
388
390
  - sub/avm-eac_asciidoctor_base0/lib/avm/eac_asciidoctor_base0/sources/base/instance_to_build.rb
389
391
  - sub/avm-eac_asciidoctor_base0/lib/avm/eac_asciidoctor_base0/sources/base/theme.rb
@@ -394,10 +396,22 @@ files:
394
396
  - sub/avm-eac_asciidoctor_base0/spec/lib/avm/eac_asciidoctor_base0/instances/build/document_spec.rb
395
397
  - sub/avm-eac_asciidoctor_base0/spec/lib/avm/eac_asciidoctor_base0/instances/build/document_spec_files/pre_processed_root_body.adoc
396
398
  - sub/avm-eac_asciidoctor_base0/spec/lib/avm/eac_asciidoctor_base0/instances/build_spec.rb
397
- - sub/avm-eac_asciidoctor_base0/spec/lib/avm/eac_asciidoctor_base0/instances/build_spec_files/doc1.html
398
- - sub/avm-eac_asciidoctor_base0/spec/lib/avm/eac_asciidoctor_base0/instances/build_spec_files/doc2.html
399
- - sub/avm-eac_asciidoctor_base0/spec/lib/avm/eac_asciidoctor_base0/instances/build_spec_files/doc2/doc2_1.html
400
- - sub/avm-eac_asciidoctor_base0/spec/lib/avm/eac_asciidoctor_base0/instances/build_spec_files/index.html
399
+ - sub/avm-eac_asciidoctor_base0/spec/lib/avm/eac_asciidoctor_base0/instances/build_spec_files/first.source/content/_media/a_media_file
400
+ - sub/avm-eac_asciidoctor_base0/spec/lib/avm/eac_asciidoctor_base0/instances/build_spec_files/first.source/content/doc1/_media/a_media_file
401
+ - sub/avm-eac_asciidoctor_base0/spec/lib/avm/eac_asciidoctor_base0/instances/build_spec_files/first.source/content/doc1/body.adoc
402
+ - sub/avm-eac_asciidoctor_base0/spec/lib/avm/eac_asciidoctor_base0/instances/build_spec_files/first.source/content/doc1/title
403
+ - sub/avm-eac_asciidoctor_base0/spec/lib/avm/eac_asciidoctor_base0/instances/build_spec_files/first.source/content/doc2/body.adoc
404
+ - sub/avm-eac_asciidoctor_base0/spec/lib/avm/eac_asciidoctor_base0/instances/build_spec_files/first.source/content/doc2/doc2_1/_media/a_media_file
405
+ - sub/avm-eac_asciidoctor_base0/spec/lib/avm/eac_asciidoctor_base0/instances/build_spec_files/first.source/content/doc2/doc2_1/body.adoc
406
+ - sub/avm-eac_asciidoctor_base0/spec/lib/avm/eac_asciidoctor_base0/instances/build_spec_files/first.source/content/doc2/doc2_1/title
407
+ - sub/avm-eac_asciidoctor_base0/spec/lib/avm/eac_asciidoctor_base0/instances/build_spec_files/first.source/content/doc2/title
408
+ - sub/avm-eac_asciidoctor_base0/spec/lib/avm/eac_asciidoctor_base0/instances/build_spec_files/first.target/_media/a_media_file
409
+ - sub/avm-eac_asciidoctor_base0/spec/lib/avm/eac_asciidoctor_base0/instances/build_spec_files/first.target/doc1/_media/a_media_file
410
+ - sub/avm-eac_asciidoctor_base0/spec/lib/avm/eac_asciidoctor_base0/instances/build_spec_files/first.target/doc1/index.html
411
+ - sub/avm-eac_asciidoctor_base0/spec/lib/avm/eac_asciidoctor_base0/instances/build_spec_files/first.target/doc2/doc2_1/_media/a_media_file
412
+ - sub/avm-eac_asciidoctor_base0/spec/lib/avm/eac_asciidoctor_base0/instances/build_spec_files/first.target/doc2/doc2_1/index.html
413
+ - sub/avm-eac_asciidoctor_base0/spec/lib/avm/eac_asciidoctor_base0/instances/build_spec_files/first.target/doc2/index.html
414
+ - sub/avm-eac_asciidoctor_base0/spec/lib/avm/eac_asciidoctor_base0/instances/build_spec_files/first.target/index.html
401
415
  - sub/avm-eac_asciidoctor_base0/spec/lib/avm/eac_asciidoctor_base0/source_generators/base_spec.rb
402
416
  - sub/avm-eac_asciidoctor_base0/spec/lib/avm/eac_asciidoctor_base0/source_generators/base_spec_files/no_options/content/body.adoc
403
417
  - sub/avm-eac_asciidoctor_base0/spec/lib/avm/eac_asciidoctor_base0/source_generators/base_spec_files/no_options/content/title