metanorma-document 0.2.5 → 0.2.6
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
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 27e82b07d3f2f3edd230cf27c0b18671597160bca302e2f06ac848210d2a667b
|
|
4
|
+
data.tar.gz: ebab43042eaadc336ad64bb5d46389ff0e82262bbd9ecfa1e7035ed369219023
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: f99ecc2897bbfef8283a6bddf89bfdb0d5a95010e2158eec5a7bc874ff5cef73f87bd317c507c5610acb30461274ad58e32693b72ed829e0efc696fc12c49d9e
|
|
7
|
+
data.tar.gz: 9f1fdf2062229aa79771f4cddbe7146c399a86d0474e9bf4f3a72031e1337d51c156d87dc424c614a46d216294e68f0c07987dae2ce1ebb27e763a609142654b
|
|
@@ -94,7 +94,7 @@ module Metanorma
|
|
|
94
94
|
render_definition_list render_sourcecode render_table
|
|
95
95
|
render_figure render_quote render_formula render_note
|
|
96
96
|
render_image render_stem_content register_figure_entry
|
|
97
|
-
render_liquid
|
|
97
|
+
render_liquid render_block_children
|
|
98
98
|
].freeze
|
|
99
99
|
|
|
100
100
|
def initialize(renderer)
|
|
@@ -874,6 +874,51 @@ module Metanorma
|
|
|
874
874
|
@output << %(<a id="#{escape_html(safe_attr(bookmark, :id).to_s)}"></a>)
|
|
875
875
|
end
|
|
876
876
|
|
|
877
|
+
# Renders the typed child collections of a block element (paragraphs,
|
|
878
|
+
# lists, nested blocks) in a standard order. Used by Drops and section
|
|
879
|
+
# rendering to avoid duplicating the enumeration in each consumer.
|
|
880
|
+
#
|
|
881
|
+
# +children+ is a Hash mapping attr names to render-method symbols:
|
|
882
|
+
# { paragraphs: :render_paragraph, ul: :render_unordered_list, ... }
|
|
883
|
+
#
|
|
884
|
+
# Each key is sent to +model+ via safe_attr; non-nil results are
|
|
885
|
+
# dispatched to the corresponding render method.
|
|
886
|
+
def render_block_children(model, children:)
|
|
887
|
+
children.each do |attr, render_method|
|
|
888
|
+
values = safe_attr(model, attr)
|
|
889
|
+
next if values.nil?
|
|
890
|
+
|
|
891
|
+
Array(values).each { |v| public_send(render_method, v) }
|
|
892
|
+
end
|
|
893
|
+
end
|
|
894
|
+
|
|
895
|
+
# Standard child set for container blocks (example, note, etc.)
|
|
896
|
+
BLOCK_CHILDREN = {
|
|
897
|
+
paragraphs: :render_paragraph,
|
|
898
|
+
ul: :render_unordered_list,
|
|
899
|
+
ol: :render_ordered_list,
|
|
900
|
+
dl: :render_definition_list,
|
|
901
|
+
sourcecode: :render_sourcecode,
|
|
902
|
+
table: :render_table,
|
|
903
|
+
figure: :render_figure,
|
|
904
|
+
quote: :render_quote,
|
|
905
|
+
formula: :render_formula,
|
|
906
|
+
}.freeze
|
|
907
|
+
|
|
908
|
+
# Minimal child set for simple blocks (admonition, note with content only)
|
|
909
|
+
SIMPLE_CHILDREN = {
|
|
910
|
+
paragraphs: :render_paragraph,
|
|
911
|
+
}.freeze
|
|
912
|
+
|
|
913
|
+
# Note-style child set (paragraphs + lists + dl, no nested blocks)
|
|
914
|
+
NOTE_CHILDREN = {
|
|
915
|
+
paragraphs: :render_paragraph,
|
|
916
|
+
ul: :render_unordered_list,
|
|
917
|
+
ol: :render_ordered_list,
|
|
918
|
+
dl: :render_definition_list,
|
|
919
|
+
quote: :render_quote,
|
|
920
|
+
}.freeze
|
|
921
|
+
|
|
877
922
|
# --- Section rendering ---
|
|
878
923
|
|
|
879
924
|
def render_basic_section(section, level: 1, **_opts)
|
|
@@ -1431,7 +1476,7 @@ module Metanorma
|
|
|
1431
1476
|
return stem.math.to_xml
|
|
1432
1477
|
rescue StandardError
|
|
1433
1478
|
math_items = Array(stem.math)
|
|
1434
|
-
return math_items.
|
|
1479
|
+
return math_items.join
|
|
1435
1480
|
end
|
|
1436
1481
|
end
|
|
1437
1482
|
if stem.asciimath
|
|
@@ -9,7 +9,8 @@ module Metanorma
|
|
|
9
9
|
id = renderer.safe_attr(admonition, :id)
|
|
10
10
|
|
|
11
11
|
content_html = renderer.capture_output do
|
|
12
|
-
|
|
12
|
+
renderer.render_block_children(admonition,
|
|
13
|
+
children: BaseRenderer::SIMPLE_CHILDREN)
|
|
13
14
|
end
|
|
14
15
|
|
|
15
16
|
new(
|
|
@@ -9,17 +9,8 @@ module Metanorma
|
|
|
9
9
|
label = renderer.extract_block_label(example, "EXAMPLE")
|
|
10
10
|
|
|
11
11
|
content_html = renderer.capture_output do
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
end
|
|
15
|
-
example.ul&.each { |ul| renderer.render_unordered_list(ul) }
|
|
16
|
-
example.ol&.each { |ol| renderer.render_ordered_list(ol) }
|
|
17
|
-
example.dl&.each { |dl| renderer.render_definition_list(dl) }
|
|
18
|
-
example.sourcecode&.each { |sc| renderer.render_sourcecode(sc) }
|
|
19
|
-
example.table&.each { |t| renderer.render_table(t) }
|
|
20
|
-
example.figure&.each { |f| renderer.render_figure(f) }
|
|
21
|
-
example.quote&.each { |q| renderer.render_quote(q) }
|
|
22
|
-
example.formula&.each { |f| renderer.render_formula(f) }
|
|
12
|
+
renderer.render_block_children(example,
|
|
13
|
+
children: BaseRenderer::BLOCK_CHILDREN)
|
|
23
14
|
end
|
|
24
15
|
|
|
25
16
|
new(
|
|
@@ -14,9 +14,8 @@ module Metanorma
|
|
|
14
14
|
else
|
|
15
15
|
renderer.render_mixed_inline(note)
|
|
16
16
|
end
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
note.dl&.then { |dl| renderer.render_definition_list(dl) }
|
|
17
|
+
renderer.render_block_children(note,
|
|
18
|
+
children: BaseRenderer::NOTE_CHILDREN)
|
|
20
19
|
end
|
|
21
20
|
|
|
22
21
|
new(
|
metadata
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: metanorma-document
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.2.
|
|
4
|
+
version: 0.2.6
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Ribose Inc.
|
|
8
8
|
autorequire:
|
|
9
9
|
bindir: exe
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date: 2026-05-
|
|
11
|
+
date: 2026-05-12 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: lutaml-model
|