relaton-gb 1.19.0 → 1.20.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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 92e9e83e3558899a7705d5e279a1d8458d7a3417ade6b26f4a06835e7ac25005
4
- data.tar.gz: 6b5bfd8af41d5ef1a8ddb3aa96b34787f2bf5372f31a729943bcba3426cb3147
3
+ metadata.gz: 1a6f089b0e88176b0a975002a00cc353ecddc6f611721b89886f5578b047a893
4
+ data.tar.gz: c962a506d4d9b6359c9ae7e041ae78a6dd61d3b096bfa12833e19cdb8404556c
5
5
  SHA512:
6
- metadata.gz: 0032bd0054227d78ccec76d8ba302a01a11085a15a89e8cf03d609f96088998dde81bdc93981e50a88239e6d1bf78d9d039a6f3118d011c9e4254bf91eb9872f
7
- data.tar.gz: ad973c15f76b194dbd6c9198cc391b3e2d4b2313bce3dfa325bcf5d7f99d1f0a0b3cd7e60bfca7527a6b54ac854206b784b20159128690eccd5d83dcf96e701f
6
+ metadata.gz: 03e7d65e846285ae4c246b6b0d5c17cda499391413ff49254a535aa0a7413699c740fa736a620291963dacd0d02d16af23b58f2825426a0c45a9c6d1437017a7
7
+ data.tar.gz: 19ee5ac1b544b344bd051515d14b3558dd6b71eeed66228a8178b5ab6c4c54f322b3ff12a585569e2866334641553a36fcc63bd95da7618f8d3dd6a49c48266c
@@ -57,7 +57,7 @@ module RelatonGb
57
57
  # @return [String] XML
58
58
  def to_xml(**opts) # rubocop:disable Metrics/AbcSize, Metrics/MethodLength, Metrics/CyclomaticComplexity, Metrics/PerceivedComplexity
59
59
  super(**opts) do |b|
60
- if opts[:bibdata] && has_ext_attrs?
60
+ if opts[:bibdata] && has_ext?
61
61
  ext = b.ext do
62
62
  doctype&.to_xml b
63
63
  b.horizontal horizontal unless horizontal.nil?
@@ -76,13 +76,17 @@ module RelatonGb
76
76
  # @return [Hash]
77
77
  def to_hash # rubocop:disable Metrics/AbcSize
78
78
  hash = super
79
- hash["ccs"] = single_element_array(ccs) if ccs&.any?
80
- hash["committee"] = committee.to_hash if committee
81
- hash["plannumber"] = gbplannumber if gbplannumber
82
- hash["gbtype"] = gbtype.to_hash
79
+ hash["ext"]["ccs"] = single_element_array(ccs) if ccs&.any?
80
+ hash["ext"]["committee"] = committee.to_hash if committee
81
+ hash["ext"]["plannumber"] = gbplannumber if gbplannumber
82
+ hash["ext"]["gbtype"] = gbtype.to_hash if gbtype
83
83
  hash
84
84
  end
85
85
 
86
+ def has_ext?
87
+ super || ccs&.any? || committee || gbplannumber || gbtype
88
+ end
89
+
86
90
  # @param prefix [String]
87
91
  # @return [String]
88
92
  def to_asciibib(prefix = "")
@@ -128,8 +132,8 @@ module RelatonGb
128
132
  #
129
133
  # @return [Boolean]
130
134
  #
131
- def has_ext_attrs?
132
- super || committee || docsubtype
133
- end
135
+ # def has_ext_attrs?
136
+ # super || committee || docsubtype
137
+ # end
134
138
  end
135
139
  end
@@ -11,6 +11,9 @@ module RelatonGb
11
11
  ret = super
12
12
  return if ret.nil?
13
13
 
14
+ ret[:committee] = ret[:ext][:committee] if ret.dig(:ext, :committee)
15
+ ret[:plannumber] = ret[:ext][:plannumber] if ret.dig(:ext, :plannumber)
16
+ ret[:gbtype] = ret[:ext][:gbtype] if ret.dig(:ext, :gbtype)
14
17
  ccs_hash_to_bib(ret)
15
18
  ret
16
19
  end
@@ -27,8 +30,11 @@ module RelatonGb
27
30
  end
28
31
 
29
32
  def ccs_hash_to_bib(ret)
30
- ret[:ccs] = RelatonBib.array(ret[:ccs]).map do |ccs|
31
- (ccs[:code] && Cnccs.fetch(ccs[:code])) || Cnccs.fetch(ccs)
33
+ ccs = ret.dig(:ext, :ccs) || ret[:ccs] # @TODO: remove ret[:ccs] after all specs are updated
34
+ return unless ccs
35
+
36
+ ret[:ccs] = RelatonBib.array(ccs).map do |item|
37
+ (item[:code] && Cnccs.fetch(item[:code])) || Cnccs.fetch(item)
32
38
  end
33
39
  end
34
40
 
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module RelatonGb
4
- VERSION = "1.19.0"
4
+ VERSION = "1.20.0"
5
5
  end
data/relaton_gb.gemspec CHANGED
@@ -27,6 +27,6 @@ Gem::Specification.new do |spec|
27
27
  spec.add_dependency "cnccs", "~> 0.1.1"
28
28
  spec.add_dependency "gb-agencies", "~> 0.0.1"
29
29
  spec.add_dependency "mechanize", "~> 2.10"
30
- spec.add_dependency "relaton-iso-bib", "~> 1.19.0"
30
+ spec.add_dependency "relaton-iso-bib", "~> 1.20.0"
31
31
  spec.add_dependency "csv", "~> 3.0"
32
32
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: relaton-gb
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.19.0
4
+ version: 1.20.0
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: 2024-07-03 00:00:00.000000000 Z
11
+ date: 2024-12-12 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: cnccs
@@ -58,14 +58,14 @@ dependencies:
58
58
  requirements:
59
59
  - - "~>"
60
60
  - !ruby/object:Gem::Version
61
- version: 1.19.0
61
+ version: 1.20.0
62
62
  type: :runtime
63
63
  prerelease: false
64
64
  version_requirements: !ruby/object:Gem::Requirement
65
65
  requirements:
66
66
  - - "~>"
67
67
  - !ruby/object:Gem::Version
68
- version: 1.19.0
68
+ version: 1.20.0
69
69
  - !ruby/object:Gem::Dependency
70
70
  name: csv
71
71
  requirement: !ruby/object:Gem::Requirement
@@ -130,7 +130,7 @@ homepage: https://github.com/metanorma/relaton_gb
130
130
  licenses:
131
131
  - BSD-2-Clause
132
132
  metadata: {}
133
- post_install_message:
133
+ post_install_message:
134
134
  rdoc_options: []
135
135
  require_paths:
136
136
  - lib
@@ -146,7 +146,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
146
146
  version: '0'
147
147
  requirements: []
148
148
  rubygems_version: 3.3.27
149
- signing_key:
149
+ signing_key:
150
150
  specification_version: 4
151
151
  summary: 'RelatonGb: retrieve Chinese GB Standards for bibliographic use using the
152
152
  BibliographicItem model.'