mn-requirements 0.1.0 → 0.1.3

Sign up to get free protection for your applications and to get access to all the features.
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: []