mn-requirements 0.1.0 → 0.1.3

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: d0e6c91b33ab3f3b3eb4ce26df120009dfe92441024891d766115421023630ea
4
- data.tar.gz: 800e1d60081b242bd3aa921004839ac0cabbcde5102a6d8c29d1d652e22b5cfc
3
+ metadata.gz: 333a04af44a0a5f5f1d5eab78dcd03e017ef31496a149040d516083d1b59d00f
4
+ data.tar.gz: 2cc3b4028414b0a623e8b81e49b5f89845c09d856a08c9b71fcc60348f3241fc
5
5
  SHA512:
6
- metadata.gz: ad9db2b90feb438a6e146cc943585ccaf81b525147b9556860f11175976e65c247b44d2d084cfcae43b9d89fbba7d9b7bab8fef00f5d2051ea7ed1fd450b0c77
7
- data.tar.gz: 4d875db98cb7ef2942ead616f49268314a12e592aecd5422b7f586fd98cf8fdf485d752e2fdf522dd9dc4640aab1f5e9e12e5c79dff6debbd9f17687396b3b32
6
+ metadata.gz: 1bed26229a755a97e10394112feeee667273fa0b924033300b85b411f341d07912c28946ada743401784b60764c5d1b6a57836ae316b24d1093b57875f64f24c
7
+ data.tar.gz: ab52fa615cb6db3999a1fff035dbd30143e27f6f4a8eed2153e403a7f79ed257437892be78b61160dea9ce6d4a0fa59d1edf59c008b6006338a23aa57909b7b1
@@ -10,6 +10,6 @@ on:
10
10
 
11
11
  jobs:
12
12
  rake:
13
- uses: metanorma/metanorma-build-scripts/.github/workflows/graphviz-rake.yml@main
13
+ uses: metanorma/ci/.github/workflows/generic-rake.yml@main
14
14
  secrets:
15
15
  pat_token: ${{ secrets.METANORMA_CI_PAT_TOKEN }}
@@ -15,10 +15,10 @@ on:
15
15
 
16
16
  jobs:
17
17
  release:
18
- uses: metanorma/metanorma-build-scripts/.github/workflows/rubygems-release.yml@main
18
+ uses: metanorma/ci/.github/workflows/rubygems-release.yml@main
19
19
  with:
20
20
  next_version: ${{ github.event.inputs.next_version }}
21
- event_name: ${{ github.event_name }}
22
21
  secrets:
23
22
  rubygems-api-key: ${{ secrets.METANORMA_CI_RUBYGEMS_API_KEY }}
23
+ pat_token: ${{ secrets.METANORMA_CI_PAT_TOKEN }}
24
24
 
data/.rubocop.yml CHANGED
@@ -8,6 +8,3 @@ inherit_from:
8
8
 
9
9
  AllCops:
10
10
  TargetRubyVersion: 2.5
11
-
12
- Metrics/MethodLength:
13
- CountAsOne: ['array', 'heredoc']
@@ -24,3 +24,4 @@ requirements:
24
24
  indirectdependency: التبعية غير المباشرة
25
25
  identifier: المعرف
26
26
  included_in: مدرج في
27
+ statement: بيان
@@ -24,4 +24,4 @@ requirements:
24
24
  indirectdependency: Indirekte Abhängigkeit
25
25
  identifier: Kennung
26
26
  included_in: Enthalten in
27
-
27
+ statement: Aussage
@@ -24,4 +24,4 @@ requirements:
24
24
  indirectdependency: Indirect Dependency
25
25
  identifier: Identifier
26
26
  included_in: Included in
27
-
27
+ statement: Statement
@@ -24,4 +24,4 @@ requirements:
24
24
  indirectdependency: Dependencia indirecta
25
25
  identifier: Identificador
26
26
  included_in: Incluido en
27
-
27
+ statement: Declaración
@@ -24,4 +24,4 @@ requirements:
24
24
  indirectdependency: Dépendance indirecte
25
25
  identifier: Identifiant
26
26
  included_in: Inclus dans
27
-
27
+ statement: Déclaration
@@ -24,4 +24,4 @@ requirements:
24
24
  indirectdependency: Косвенная зависимость
25
25
  identifier: Идентификатор
26
26
  included_in: Входит в
27
-
27
+ statement: Утверждение
@@ -24,4 +24,4 @@ requirements:
24
24
  indirectdependency: 间接依赖
25
25
  identifier: 标识符
26
26
  included_in: 包含在
27
-
27
+ statement: 陈述
@@ -51,7 +51,7 @@ module Metanorma
51
51
  return ret unless title &&
52
52
  node.ancestors("requirement, recommendation, permission").empty?
53
53
 
54
- ret += l10n(": ") if name
54
+ ret += l10n(": ") unless !name || name.text.empty?
55
55
  ret += title.children.to_xml
56
56
  ret
57
57
  end
@@ -67,8 +67,8 @@ module Metanorma
67
67
 
68
68
  def recommend_title(node, out)
69
69
  label = node.at(ns("./identifier")) or return
70
- out.add_child("<tr><td>#{@labels['modspec']['identifier']}</td>"\
71
- "<td><tt>#{label.children.to_xml}</tt></td>")
70
+ out.add_child("<tr><td scope='colgroup' colspan='2'>"\
71
+ "<tt>#{label.children.to_xml}</tt></td>")
72
72
  end
73
73
 
74
74
  def recommendation_attributes1(node)
@@ -65,7 +65,8 @@ module Metanorma
65
65
  docxml.xpath(ns("//requirement | //recommendation | //permission"))
66
66
  .each_with_object({}) do |r, m|
67
67
  id = r.at(ns("./identifier")) or next
68
- m[id.text] = r["id"]
68
+ m[id.text] =
69
+ { id: r["id"], lbl: @xrefs.anchor(r["id"], :xref, false) }
69
70
  end
70
71
  end
71
72
 
@@ -77,7 +78,7 @@ module Metanorma
77
78
 
78
79
  subj = r.at(ns("./classification[tag = 'target']/value"))
79
80
  id = r.at(ns("./identifier")) or next
80
- lbl = @xrefs.anchor(@reqt_ids[id.text.strip], :xref, false)
81
+ lbl = @xrefs.anchor(@reqt_ids[id.text.strip][:id], :xref, false)
81
82
  next unless subj && lbl
82
83
 
83
84
  m[subj.text] = { lbl: lbl, id: r["id"] }
@@ -98,7 +99,7 @@ module Metanorma
98
99
  r.xpath(ns("./requirement | ./recommendation | ./permission"))
99
100
  .each do |r1|
100
101
  id1 = r1.at(ns("./identifier")) or next
101
- lbl = @xrefs.anchor(@reqt_ids[id.text.strip], :xref, false)
102
+ lbl = @xrefs.anchor(@reqt_ids[id.text.strip][:id], :xref, false)
102
103
  next unless lbl
103
104
 
104
105
  m[id1.text] = { lbl: lbl, id: r["id"] }
@@ -113,7 +114,7 @@ module Metanorma
113
114
 
114
115
  def recommendation_id(ident)
115
116
  test = @reqt_ids[ident&.strip] or return ident&.strip
116
- "<xref target='#{test}'>#{ident.strip}</xref>"
117
+ "<xref target='#{test[:id]}'>#{test[:lbl]}</xref>"
117
118
  end
118
119
  end
119
120
  end
@@ -57,6 +57,7 @@ module Metanorma
57
57
  def postprocess_anchor_struct(block, anchor)
58
58
  super
59
59
  if l = block.at(ns("./identifier"))&.text
60
+ anchor[:xref_bare] = anchor[:xref]
60
61
  anchor[:xref] += l10n(": ") + "<tt>#{l}</tt>"
61
62
  end
62
63
  anchor
@@ -1,19 +1,22 @@
1
1
  require_relative "../default/default"
2
2
  require_relative "../modspec/modspec"
3
3
  require_relative "../../isodoc/i18n"
4
+ require "metanorma-utils"
4
5
 
5
6
  module Metanorma
6
7
  class Requirements
7
8
  attr_accessor :i18n, :labels
8
9
 
10
+ Hash.include Metanorma::Utils::Hash
11
+
9
12
  def initialize(options)
10
13
  @default = options[:default]
11
14
  @i18n = i18n_klass(options[:lang] || "en",
12
15
  options[:script] || "Latn",
13
16
  options[:i18nhash])
14
- @labels = @i18n.get.merge(options[:labels] || {})["requirements"]
15
- @models = {}
16
- model_names.each { |k| @models[k] = create(k) }
17
+ @labels = @i18n.get.deep_merge(options[:labels] || {})["requirements"]
18
+ @models =
19
+ model_names.each_with_object({}) { |k, m| m[k] = create(k) }
17
20
  end
18
21
 
19
22
  def model_names
@@ -1,5 +1,5 @@
1
1
  module Metanorma
2
2
  class Requirements
3
- VERSION = "0.1.0".freeze
3
+ VERSION = "0.1.3".freeze
4
4
  end
5
5
  end
@@ -24,15 +24,13 @@ Gem::Specification.new do |spec|
24
24
  spec.require_paths = ["lib"]
25
25
  spec.required_ruby_version = Gem::Requirement.new(">= 2.5.0")
26
26
 
27
- spec.add_dependency "isodoc-i18n", "~> 1.0.0"
28
- spec.add_dependency "metanorma-utils", "~> 1.3.2"
27
+ spec.add_dependency "isodoc-i18n", "~> 1.0.7"
28
+ spec.add_dependency "metanorma-utils", "~> 1.4.0"
29
29
 
30
30
  spec.add_development_dependency "debug"
31
31
  spec.add_development_dependency "equivalent-xml", "~> 0.6"
32
32
  spec.add_development_dependency "guard", "~> 2.14"
33
33
  spec.add_development_dependency "guard-rspec", "~> 4.7"
34
- spec.add_development_dependency "isodoc", "~> 2"
35
- spec.add_development_dependency "metanorma-standoc", "~> 2"
36
34
  spec.add_development_dependency "rake", "~> 13.0"
37
35
  spec.add_development_dependency "rspec", "~> 3.6"
38
36
  spec.add_development_dependency "rubocop", "~> 1.5.2"
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: mn-requirements
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0
4
+ version: 0.1.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ribose Inc.
8
- autorequire:
8
+ autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2022-08-30 00:00:00.000000000 Z
11
+ date: 2022-09-05 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: isodoc-i18n
@@ -16,28 +16,28 @@ dependencies:
16
16
  requirements:
17
17
  - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: 1.0.0
19
+ version: 1.0.7
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - "~>"
25
25
  - !ruby/object:Gem::Version
26
- version: 1.0.0
26
+ version: 1.0.7
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: metanorma-utils
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
31
  - - "~>"
32
32
  - !ruby/object:Gem::Version
33
- version: 1.3.2
33
+ version: 1.4.0
34
34
  type: :runtime
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
38
  - - "~>"
39
39
  - !ruby/object:Gem::Version
40
- version: 1.3.2
40
+ version: 1.4.0
41
41
  - !ruby/object:Gem::Dependency
42
42
  name: debug
43
43
  requirement: !ruby/object:Gem::Requirement
@@ -94,34 +94,6 @@ dependencies:
94
94
  - - "~>"
95
95
  - !ruby/object:Gem::Version
96
96
  version: '4.7'
97
- - !ruby/object:Gem::Dependency
98
- name: isodoc
99
- requirement: !ruby/object:Gem::Requirement
100
- requirements:
101
- - - "~>"
102
- - !ruby/object:Gem::Version
103
- version: '2'
104
- type: :development
105
- prerelease: false
106
- version_requirements: !ruby/object:Gem::Requirement
107
- requirements:
108
- - - "~>"
109
- - !ruby/object:Gem::Version
110
- version: '2'
111
- - !ruby/object:Gem::Dependency
112
- name: metanorma-standoc
113
- requirement: !ruby/object:Gem::Requirement
114
- requirements:
115
- - - "~>"
116
- - !ruby/object:Gem::Version
117
- version: '2'
118
- type: :development
119
- prerelease: false
120
- version_requirements: !ruby/object:Gem::Requirement
121
- requirements:
122
- - - "~>"
123
- - !ruby/object:Gem::Version
124
- version: '2'
125
97
  - !ruby/object:Gem::Dependency
126
98
  name: rake
127
99
  requirement: !ruby/object:Gem::Requirement
@@ -254,7 +226,7 @@ homepage: https://github.com/metanorma/mn-requirements
254
226
  licenses:
255
227
  - BSD-2-Clause
256
228
  metadata: {}
257
- post_install_message:
229
+ post_install_message:
258
230
  rdoc_options: []
259
231
  require_paths:
260
232
  - lib
@@ -269,8 +241,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
269
241
  - !ruby/object:Gem::Version
270
242
  version: '0'
271
243
  requirements: []
272
- rubygems_version: 3.3.16
273
- signing_key:
244
+ rubygems_version: 3.1.6
245
+ signing_key:
274
246
  specification_version: 4
275
247
  summary: Requirements processing and rendering according to different models
276
248
  test_files: []