coradoc 0.1.0 → 0.2.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (73) hide show
  1. checksums.yaml +4 -4
  2. data/.pryrc.sample +1 -0
  3. data/lib/coradoc/document.rb +41 -23
  4. data/lib/coradoc/{document → element}/admonition.rb +1 -1
  5. data/lib/coradoc/{document → element}/attribute.rb +1 -1
  6. data/lib/coradoc/element/attribute_list.rb +46 -0
  7. data/lib/coradoc/element/audio.rb +22 -0
  8. data/lib/coradoc/element/author.rb +20 -0
  9. data/lib/coradoc/element/base.rb +17 -0
  10. data/lib/coradoc/element/block/core.rb +69 -0
  11. data/lib/coradoc/element/block/example.rb +22 -0
  12. data/lib/coradoc/element/block/literal.rb +19 -0
  13. data/lib/coradoc/element/block/quote.rb +19 -0
  14. data/lib/coradoc/element/block/side.rb +17 -0
  15. data/lib/coradoc/element/block/sourcecode.rb +20 -0
  16. data/lib/coradoc/element/block.rb +13 -0
  17. data/lib/coradoc/element/break.rb +11 -0
  18. data/lib/coradoc/{document/bibdata.rb → element/document_attributes.rb} +4 -8
  19. data/lib/coradoc/element/header.rb +20 -0
  20. data/lib/coradoc/element/image/block_image.rb +12 -0
  21. data/lib/coradoc/element/image/core.rb +24 -0
  22. data/lib/coradoc/element/image/inline_image.rb +12 -0
  23. data/lib/coradoc/element/image.rb +11 -0
  24. data/lib/coradoc/element/inline/anchor.rb +17 -0
  25. data/lib/coradoc/element/inline/bold.rb +19 -0
  26. data/lib/coradoc/element/inline/cross_reference.rb +22 -0
  27. data/lib/coradoc/element/inline/hard_line_break.rb +11 -0
  28. data/lib/coradoc/element/inline/highlight.rb +19 -0
  29. data/lib/coradoc/element/inline/image.rb +25 -0
  30. data/lib/coradoc/element/inline/italic.rb +19 -0
  31. data/lib/coradoc/element/inline/link.rb +26 -0
  32. data/lib/coradoc/element/inline/monospace.rb +19 -0
  33. data/lib/coradoc/element/inline/quotation.rb +17 -0
  34. data/lib/coradoc/element/inline/subscript.rb +17 -0
  35. data/lib/coradoc/element/inline/superscript.rb +17 -0
  36. data/lib/coradoc/element/inline.rb +19 -0
  37. data/lib/coradoc/element/list/core.rb +36 -0
  38. data/lib/coradoc/element/list/definition.rb +8 -0
  39. data/lib/coradoc/element/list/ordered.rb +15 -0
  40. data/lib/coradoc/element/list/unordered.rb +15 -0
  41. data/lib/coradoc/element/list.rb +13 -0
  42. data/lib/coradoc/element/list_item.rb +19 -0
  43. data/lib/coradoc/element/paragraph.rb +32 -0
  44. data/lib/coradoc/element/revision.rb +23 -0
  45. data/lib/coradoc/element/section.rb +37 -0
  46. data/lib/coradoc/element/table.rb +67 -0
  47. data/lib/coradoc/{document → element}/text_element.rb +8 -4
  48. data/lib/coradoc/element/title.rb +42 -0
  49. data/lib/coradoc/element/video.rb +23 -0
  50. data/lib/coradoc/generator.rb +17 -0
  51. data/lib/coradoc/legacy_parser.rb +8 -8
  52. data/lib/coradoc/oscal.rb +5 -2
  53. data/lib/coradoc/parser/asciidoc/base.rb +17 -17
  54. data/lib/coradoc/parser/asciidoc/content.rb +46 -20
  55. data/lib/coradoc/parser/asciidoc/{bibdata.rb → document_attributes.rb} +5 -5
  56. data/lib/coradoc/parser/asciidoc/header.rb +13 -10
  57. data/lib/coradoc/parser/asciidoc/section.rb +5 -5
  58. data/lib/coradoc/parser/base.rb +5 -5
  59. data/lib/coradoc/parser.rb +1 -1
  60. data/lib/coradoc/transformer.rb +39 -36
  61. data/lib/coradoc/version.rb +1 -1
  62. data/lib/coradoc.rb +6 -4
  63. metadata +55 -21
  64. data/lib/coradoc/document/author.rb +0 -11
  65. data/lib/coradoc/document/base.rb +0 -17
  66. data/lib/coradoc/document/block.rb +0 -34
  67. data/lib/coradoc/document/header.rb +0 -11
  68. data/lib/coradoc/document/list.rb +0 -14
  69. data/lib/coradoc/document/paragraph.rb +0 -19
  70. data/lib/coradoc/document/revision.rb +0 -11
  71. data/lib/coradoc/document/section.rb +0 -28
  72. data/lib/coradoc/document/table.rb +0 -20
  73. data/lib/coradoc/document/title.rb +0 -33
@@ -1,14 +0,0 @@
1
- module Coradoc
2
- module Document
3
- class List
4
- attr_reader :items
5
-
6
- def initialize(items)
7
- @items = items
8
- end
9
-
10
- class Unnumbered < List
11
- end
12
- end
13
- end
14
- end
@@ -1,19 +0,0 @@
1
- module Coradoc
2
- module Document
3
- class Paragraph
4
- attr_reader :content
5
-
6
- def initialize(content, _options = {})
7
- @content = content
8
- end
9
-
10
- def id
11
- content&.first&.id&.to_s
12
- end
13
-
14
- def texts
15
- content.map(&:content)
16
- end
17
- end
18
- end
19
- end
@@ -1,11 +0,0 @@
1
- module Coradoc
2
- class Document::Revision
3
- attr_reader :number, :date, :remark
4
-
5
- def initialize(number, options = {})
6
- @number = number
7
- @date = options.fetch(:date, nil)
8
- @remark = options.fetch(:remark, nil)
9
- end
10
- end
11
- end
@@ -1,28 +0,0 @@
1
- module Coradoc
2
- class Document::Section
3
- attr_reader :id, :title, :contents, :sections
4
-
5
- def initialize(title, options = {})
6
- @title = title
7
- @id = options.fetch(:id, nil).to_s
8
- @contents = options.fetch(:contents, [])
9
- @sections = options.fetch(:sections, [])
10
- end
11
-
12
- def glossaries
13
- @glossaries ||= extract_glossaries
14
- end
15
-
16
- def content
17
- if contents.count == 1 && contents.first.is_a?(Coradoc::Document::Paragraph)
18
- contents.first
19
- end
20
- end
21
-
22
- private
23
-
24
- def extract_glossaries
25
- contents.select {|c| c if c.is_a?(Coradoc::Document::Glossaries) }.first
26
- end
27
- end
28
- end
@@ -1,20 +0,0 @@
1
- module Coradoc
2
- module Document
3
- class Table
4
- attr_reader :title, :rows
5
-
6
- def initialize(title, rows)
7
- @rows = rows
8
- @title = title
9
- end
10
-
11
- class Row
12
- attr_reader :columns
13
-
14
- def initialize(columns)
15
- @columns = columns
16
- end
17
- end
18
- end
19
- end
20
- end
@@ -1,33 +0,0 @@
1
- module Coradoc
2
- module Document
3
- class Title
4
- attr_reader :id, :content, :line_break
5
-
6
- def initialize(content, level, options = {})
7
- @level_str = level
8
- @content = content.to_s
9
- @id = options.fetch(:id, nil).to_s
10
- @line_break = options.fetch(:line_break, "")
11
- end
12
-
13
- def level
14
- @level ||= level_from_string
15
- end
16
-
17
- alias :text :content
18
-
19
- private
20
-
21
- attr_reader :level_str
22
-
23
- def level_from_string
24
- case @level_str.length
25
- when 2 then :heading_two
26
- when 3 then :heading_three
27
- when 4 then :heading_four
28
- else :unknown
29
- end
30
- end
31
- end
32
- end
33
- end