mods_display 1.3.0 → 1.3.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 +4 -4
- data/Gemfile +1 -0
- data/lib/mods_display/fields/title.rb +7 -3
- data/lib/mods_display/html.rb +3 -4
- data/lib/mods_display/version.rb +1 -1
- data/mods_display.gemspec +35 -0
- metadata +5 -18
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: a3c2bc98c15b659a075bccc6e3dea41e55f757f3318ad4d1e34109c314d10792
|
4
|
+
data.tar.gz: 3fc189b77cd0088578718fa5f1645e5390c0442825faacc51e7ec9de92f568c7
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 2a35e824baad68b451eb64f126a3eea9eb61c0fd190c767933c4f6946336034d5f604fa8f81a24c1060ab9e29ed7c9d72c941f526b7bf42288870e51862d60fc
|
7
|
+
data.tar.gz: 9fbd968fe4409450090e9f3285a19f9eb86f3834ddf36061e6d4b5d5c617efaeb2996cdc88a8363a6cb29e79525403578e62266b0873423266d85ea484c461ed
|
data/Gemfile
CHANGED
@@ -3,9 +3,8 @@
|
|
3
3
|
module ModsDisplay
|
4
4
|
class Title < Field
|
5
5
|
def fields
|
6
|
-
return_values =
|
7
|
-
|
8
|
-
return_values << ModsDisplay::Values.new(
|
6
|
+
return_values = sorted_values.map do |value|
|
7
|
+
ModsDisplay::Values.new(
|
9
8
|
label: displayLabel(value) || title_label(value),
|
10
9
|
values: [assemble_title(value)]
|
11
10
|
)
|
@@ -15,6 +14,11 @@ module ModsDisplay
|
|
15
14
|
|
16
15
|
private
|
17
16
|
|
17
|
+
# If there is a node with usage="primary", then it should come first.
|
18
|
+
def sorted_values
|
19
|
+
Array(@values).sort_by { |node| node['usage'] == 'primary' ? 0 : 1 }
|
20
|
+
end
|
21
|
+
|
18
22
|
def delimiter
|
19
23
|
'<br />'.html_safe
|
20
24
|
end
|
data/lib/mods_display/html.rb
CHANGED
@@ -35,9 +35,8 @@ module ModsDisplay
|
|
35
35
|
end
|
36
36
|
|
37
37
|
def title
|
38
|
-
|
39
|
-
|
40
|
-
''
|
38
|
+
title_fields = mods_field(:title).fields
|
39
|
+
title_fields.empty? ? '' : title_fields.first.values
|
41
40
|
end
|
42
41
|
|
43
42
|
def render_in(view_context)
|
@@ -45,7 +44,7 @@ module ModsDisplay
|
|
45
44
|
end
|
46
45
|
|
47
46
|
# Need to figure out how to get the 1st title out of the list.
|
48
|
-
# Maybe have a separate class that will omit the first
|
47
|
+
# Maybe have a separate class that will omit the first title natively
|
49
48
|
# and replace the first key in the the fields list with that.
|
50
49
|
def body(view_context = ApplicationController.renderer)
|
51
50
|
view_context.render ModsDisplay::RecordComponent.new(record: self), layout: false
|
data/lib/mods_display/version.rb
CHANGED
@@ -0,0 +1,35 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
require_relative "lib/mods_display/version"
|
3
|
+
|
4
|
+
Gem::Specification.new do |gem|
|
5
|
+
gem.name = 'mods_display'
|
6
|
+
gem.version = ModsDisplay::VERSION
|
7
|
+
gem.authors = ['Jessie Keck']
|
8
|
+
gem.email = ['jessie.keck@gmail.com']
|
9
|
+
gem.description = 'MODS Display is a gem to centralize the display logic of MODS metadata.'
|
10
|
+
gem.summary = 'The MODS Display gem allows implementers to configure a customized display of MODS metadata. This display implements the specifications defined at Stanford for how to display MODS.'
|
11
|
+
gem.homepage = 'https://github.com/sul-dlss/mods_display'
|
12
|
+
|
13
|
+
# Specify which files should be added to the gem when it is released.
|
14
|
+
# The `git ls-files -z` loads the files in the RubyGem that have been added into git.
|
15
|
+
gem.files = Dir.chdir(File.expand_path(__dir__)) do
|
16
|
+
`git ls-files -z`.split("\x0").reject do |f|
|
17
|
+
(f == __FILE__) || f.match(%r{\A(?:(?:test|spec|features)/|\.(?:git|travis|circleci)|appveyor)})
|
18
|
+
end
|
19
|
+
end
|
20
|
+
gem.bindir = "exe"
|
21
|
+
gem.executables = gem.files.grep(%r{\Aexe/}) { |f| File.basename(f) }
|
22
|
+
gem.require_paths = ["lib"]
|
23
|
+
|
24
|
+
gem.add_dependency 'stanford-mods', '~> 3.3'
|
25
|
+
gem.add_dependency 'i18n'
|
26
|
+
gem.add_dependency 'view_component'
|
27
|
+
|
28
|
+
gem.add_development_dependency 'rake'
|
29
|
+
gem.add_development_dependency 'rspec', '~> 3.0'
|
30
|
+
gem.add_development_dependency 'rspec-rails'
|
31
|
+
gem.add_development_dependency 'rubocop'
|
32
|
+
gem.add_development_dependency 'capybara'
|
33
|
+
gem.add_development_dependency 'rails', ENV['RAILS_VERSION'] || '~> 6.0'
|
34
|
+
gem.add_development_dependency 'combustion', '~> 1.3'
|
35
|
+
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: mods_display
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.3.
|
4
|
+
version: 1.3.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Jessie Keck
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2023-
|
11
|
+
date: 2023-04-05 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: stanford-mods
|
@@ -122,20 +122,6 @@ dependencies:
|
|
122
122
|
- - ">="
|
123
123
|
- !ruby/object:Gem::Version
|
124
124
|
version: '0'
|
125
|
-
- !ruby/object:Gem::Dependency
|
126
|
-
name: byebug
|
127
|
-
requirement: !ruby/object:Gem::Requirement
|
128
|
-
requirements:
|
129
|
-
- - ">="
|
130
|
-
- !ruby/object:Gem::Version
|
131
|
-
version: '0'
|
132
|
-
type: :development
|
133
|
-
prerelease: false
|
134
|
-
version_requirements: !ruby/object:Gem::Requirement
|
135
|
-
requirements:
|
136
|
-
- - ">="
|
137
|
-
- !ruby/object:Gem::Version
|
138
|
-
version: '0'
|
139
125
|
- !ruby/object:Gem::Dependency
|
140
126
|
name: rails
|
141
127
|
requirement: !ruby/object:Gem::Requirement
|
@@ -164,7 +150,7 @@ dependencies:
|
|
164
150
|
- - "~>"
|
165
151
|
- !ruby/object:Gem::Version
|
166
152
|
version: '1.3'
|
167
|
-
description: MODS Display is a gem to centralize the display logic of MODS
|
153
|
+
description: MODS Display is a gem to centralize the display logic of MODS metadata.
|
168
154
|
email:
|
169
155
|
- jessie.keck@gmail.com
|
170
156
|
executables: []
|
@@ -220,6 +206,7 @@ files:
|
|
220
206
|
- lib/mods_display/related_item_concerns.rb
|
221
207
|
- lib/mods_display/relator_codes.rb
|
222
208
|
- lib/mods_display/version.rb
|
209
|
+
- mods_display.gemspec
|
223
210
|
homepage: https://github.com/sul-dlss/mods_display
|
224
211
|
licenses: []
|
225
212
|
metadata: {}
|
@@ -238,7 +225,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
238
225
|
- !ruby/object:Gem::Version
|
239
226
|
version: '0'
|
240
227
|
requirements: []
|
241
|
-
rubygems_version: 3.
|
228
|
+
rubygems_version: 3.4.6
|
242
229
|
signing_key:
|
243
230
|
specification_version: 4
|
244
231
|
summary: The MODS Display gem allows implementers to configure a customized display
|