relaton-cen 1.19.0 → 1.20.1

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: 5c1cf521b45c1bc14c2b07022c245cac43d93d26ef72321db1f2cc62454ccd47
4
- data.tar.gz: 6dffbdda4ab6263301982eeefbf1d79a18d94752142be1d8ef4249109dd8a6a4
3
+ metadata.gz: 6b5494001b882408a35049aed09cac4cc3b865e6bb516066635670968b12db88
4
+ data.tar.gz: 7c7ba2d4beb850f50311b3875f59913eae6b6ad54208c0832e38c97457bcd3f5
5
5
  SHA512:
6
- metadata.gz: ef2eb8b2ba57773d61ddc196d4f948a49b7e3fab66051661aa0918853ba50a5c2bec6f37157c5578f44b2cc30a6c295f66cdf233f0dd14378fd33104b5123332
7
- data.tar.gz: d076629f32e60aea396c0b88a709a652f81db843ea75a3e8f01ef128e999273eb5ac4445bb89536351af158f041f7de5ad1dfb9d1ef2c14334915412f3a49ca6
6
+ metadata.gz: f892adf5399eb8ef93c51d0d56d04272b71674587ed873c0b4316151995faaf60cca7ccc349c4ce7703577887a68f382a1c8f37810f9b587b1e2cb6709771dc6
7
+ data.tar.gz: f529f06753eb83fe79c22d2cf7fa7bdfaba94f678c69ff60e7ee6400da13077ab7e068385beb126ec0aaea72958379651edec4ee4bc1fcd8533fb185ecb7df63
@@ -110,28 +110,33 @@ module RelatonCen
110
110
  # Fetch relations.
111
111
  # @param doc [Mechanize::Page]
112
112
  # @return [Array<Hash>]
113
- def fetch_relations(doc) # rubocop:disable Metrics/MethodLength,Metrics/AbcSize
113
+ def fetch_relations(doc)
114
114
  doc.xpath(
115
115
  "//div[@id='DASHBOARD_LISTRELATIONS']/table/tr[th[.!='Sales Points']]",
116
116
  ).each_with_object([]) do |rt, a|
117
- t = rt.at("th").text
118
- type = case t
119
- when "Supersedes" then "obsoletes"
120
- when /Normative reference/ then "cites"
121
- else t.downcase
122
- end
117
+ type = relation_type rt.at("th").text.downcase
123
118
  rt.xpath("td/a").each do |r|
124
- fref = RelatonBib::FormattedRef.new(content: r.text, language: "en",
125
- script: "Latn")
126
- link = fetch_link HitCollection::DOMAIN + r[:href]
127
- bibitem = RelatonBib::BibliographicItem.new(
128
- formattedref: fref, type: "standard", link: link,
129
- )
130
- a << { type: type, bibitem: bibitem }
119
+ a << { type: type, bibitem: create_relation(r) }
131
120
  end
132
121
  end
133
122
  end
134
123
 
124
+ def relation_type(type)
125
+ case type
126
+ when "supersedes" then "obsoletes"
127
+ when "superseded by" then "obsoletedBy"
128
+ when /bibliographic references/ then "cites"
129
+ when /normative reference/ then "cites"
130
+ else type
131
+ end
132
+ end
133
+
134
+ def create_relation(rel)
135
+ fref = RelatonBib::FormattedRef.new(content: rel.text, language: "en", script: "Latn")
136
+ link = fetch_link HitCollection::DOMAIN + rel[:href]
137
+ BibliographicItem.new(formattedref: fref, type: "standard", link: link)
138
+ end
139
+
135
140
  # Fetch titles.
136
141
  # @param doc [Mechanize::Page]
137
142
  # @return [RelatonBib::TypedTitleStringCollection]
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module RelatonCen
4
- VERSION = "1.19.0"
4
+ VERSION = "1.20.1"
5
5
  end
data/relaton_cen.gemspec CHANGED
@@ -32,7 +32,7 @@ Gem::Specification.new do |spec|
32
32
  spec.require_paths = ["lib"]
33
33
 
34
34
  spec.add_dependency "mechanize", "~> 2.10"
35
- spec.add_dependency "relaton-iso-bib", "~> 1.19.0"
35
+ spec.add_dependency "relaton-iso-bib", "~> 1.20.0"
36
36
 
37
37
  # For more information and examples about making a new gem, checkout our
38
38
  # guide at: https://bundler.io/guides/creating_gem.html
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: relaton-cen
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.19.0
4
+ version: 1.20.1
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: 2025-03-06 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: mechanize
@@ -30,14 +30,14 @@ dependencies:
30
30
  requirements:
31
31
  - - "~>"
32
32
  - !ruby/object:Gem::Version
33
- version: 1.19.0
33
+ version: 1.20.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.19.0
40
+ version: 1.20.0
41
41
  description: 'RelatonCen: retrieve Cenelec Standards for bibliographic use using the
42
42
  IsoBibliographicItem model'
43
43
  email:
@@ -84,7 +84,7 @@ licenses:
84
84
  metadata:
85
85
  homepage_uri: https://github.com/metanorma/relaton-cen
86
86
  source_code_uri: https://github.com/metanorma/relaton-cen
87
- post_install_message:
87
+ post_install_message:
88
88
  rdoc_options: []
89
89
  require_paths:
90
90
  - lib
@@ -99,8 +99,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
99
99
  - !ruby/object:Gem::Version
100
100
  version: '0'
101
101
  requirements: []
102
- rubygems_version: 3.3.27
103
- signing_key:
102
+ rubygems_version: 3.5.22
103
+ signing_key:
104
104
  specification_version: 4
105
105
  summary: 'RelatonCen: retrieve Cenelec Standards for bibliographic use using the IsoBibliographicItem
106
106
  model'