pubid-nist 0.2.2 → 0.2.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 +4 -4
- data/lib/pubid/nist/identifier.rb +3 -192
- data/lib/pubid/nist/renderer.rb +2 -0
- data/lib/pubid/nist/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: c7f76d8947ccd706282e78b94eb9c4284671b866acc1630c08a1fdd398dbd73e
|
4
|
+
data.tar.gz: 01dfd5d1e8afbe479916a906566406f2d3a7d8d3235053a86be6d0cf1c09de5c
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 051144f72ccff63f56b875f2bb843750b14b86d3b9014f27ecd15cfd61e084052df6ae44be931a2c9b7a7e63dee3e03a927e4c6123cf6ff3727cb134fcb43340
|
7
|
+
data.tar.gz: 7b26bc1e82271f82286079bda318834594dc93eca2ef6e3569109e2323d47c06708404aed1f1dd02aead5a1d03d60efe14d900556696976945fa4778fd2a032a
|
@@ -4,83 +4,6 @@ require "json"
|
|
4
4
|
|
5
5
|
UPDATE_CODES = YAML.load_file(File.join(File.dirname(__FILE__), "../../../update_codes.yaml"))
|
6
6
|
|
7
|
-
REVISION_DESC = {
|
8
|
-
long: ", Revision ",
|
9
|
-
abbrev: ", Rev. ",
|
10
|
-
short: "r",
|
11
|
-
mr: "r",
|
12
|
-
}.freeze
|
13
|
-
|
14
|
-
VERSION_DESC = {
|
15
|
-
long: ", Version ",
|
16
|
-
abbrev: ", Ver. ",
|
17
|
-
short: "ver",
|
18
|
-
mr: "ver",
|
19
|
-
}.freeze
|
20
|
-
|
21
|
-
VOLUME_DESC = {
|
22
|
-
long: ", Volume ",
|
23
|
-
abbrev: ", Vol. ",
|
24
|
-
short: "v",
|
25
|
-
mr: "v",
|
26
|
-
}.freeze
|
27
|
-
|
28
|
-
PART_DESC = {
|
29
|
-
long: " Part ",
|
30
|
-
abbrev: " Pt. ",
|
31
|
-
short: "pt",
|
32
|
-
mr: "pt",
|
33
|
-
}.freeze
|
34
|
-
|
35
|
-
EDITION_DESC = {
|
36
|
-
long: " Edition ",
|
37
|
-
abbrev: " Ed. ",
|
38
|
-
short: "e",
|
39
|
-
mr: "e",
|
40
|
-
}.freeze
|
41
|
-
|
42
|
-
SUPPLEMENT_DESC = {
|
43
|
-
long: " Supplement ",
|
44
|
-
abbrev: " Suppl. ",
|
45
|
-
short: "sup",
|
46
|
-
mr: "sup",
|
47
|
-
}.freeze
|
48
|
-
|
49
|
-
SECTION_DESC = {
|
50
|
-
long: " Section ",
|
51
|
-
abbrev: " Sec. ",
|
52
|
-
short: "sec",
|
53
|
-
mr: "sec",
|
54
|
-
}.freeze
|
55
|
-
|
56
|
-
APPENDIX_DESC = {
|
57
|
-
long: " Appendix ",
|
58
|
-
abbrev: " App. ",
|
59
|
-
short: "app",
|
60
|
-
mr: "app",
|
61
|
-
}.freeze
|
62
|
-
|
63
|
-
ERRATA_DESC = {
|
64
|
-
long: " Errata ",
|
65
|
-
abbrev: " Err. ",
|
66
|
-
short: "err",
|
67
|
-
mr: "err",
|
68
|
-
}.freeze
|
69
|
-
|
70
|
-
INDEX_DESC = {
|
71
|
-
long: " Index ",
|
72
|
-
abbrev: " Index. ",
|
73
|
-
short: "indx",
|
74
|
-
mr: "indx",
|
75
|
-
}.freeze
|
76
|
-
|
77
|
-
INSERT_DESC = {
|
78
|
-
long: " Insert ",
|
79
|
-
abbrev: " Ins. ",
|
80
|
-
short: "ins",
|
81
|
-
mr: "ins",
|
82
|
-
}.freeze
|
83
|
-
|
84
7
|
module Pubid::Nist
|
85
8
|
class Identifier < Pubid::Core::Identifier::Base
|
86
9
|
attr_accessor :serie, :code, :revision, :publisher, :version, :volume,
|
@@ -148,25 +71,11 @@ module Pubid::Nist
|
|
148
71
|
code
|
149
72
|
end
|
150
73
|
|
151
|
-
#
|
152
|
-
|
153
|
-
|
154
|
-
# result += "#{stage&.to_s(format)}"\
|
155
|
-
# " #{code}#{render_part(format)}#{render_edition(format)}"\
|
156
|
-
# "#{render_localities(format)}"\
|
157
|
-
# "#{render_update(format)}#{render_translation(format)}"
|
158
|
-
# result = render_addendum(result, format)
|
159
|
-
#
|
160
|
-
# return result.gsub(" ", ".") if format == :mr
|
161
|
-
#
|
162
|
-
# result
|
163
|
-
# end
|
164
|
-
|
165
|
-
def to_s(format = :short)
|
166
|
-
self.class.get_renderer_class.new(get_params).render(format: format)
|
74
|
+
# @param without_edition [Boolean] render pubid without rendering edition
|
75
|
+
def to_s(format = :short, without_edition: false)
|
76
|
+
self.class.get_renderer_class.new(get_params).render(format: format, without_edition: without_edition)
|
167
77
|
end
|
168
78
|
|
169
|
-
|
170
79
|
def to_json(*args)
|
171
80
|
result = {
|
172
81
|
styles: {
|
@@ -184,104 +93,6 @@ module Pubid::Nist
|
|
184
93
|
result.to_json(*args)
|
185
94
|
end
|
186
95
|
|
187
|
-
def render_serie(format)
|
188
|
-
if serie.to_s(format).include?(publisher.to_s(format))
|
189
|
-
return serie.to_s(format)
|
190
|
-
end
|
191
|
-
|
192
|
-
"#{publisher.to_s(format)} #{serie.to_s(format)}"
|
193
|
-
end
|
194
|
-
|
195
|
-
def render_part(format)
|
196
|
-
result = ""
|
197
|
-
result += "#{VOLUME_DESC[format]}#{volume}" unless volume.nil?
|
198
|
-
result += "#{PART_DESC[format]}#{part}" unless part.nil?
|
199
|
-
result
|
200
|
-
end
|
201
|
-
|
202
|
-
def render_edition(format)
|
203
|
-
result = ""
|
204
|
-
|
205
|
-
result += "#{EDITION_DESC[format]}#{edition.to_s}" unless edition.nil?
|
206
|
-
result += "#{REVISION_DESC[format]}#{revision == '' ? '1' : revision}" if revision
|
207
|
-
result += "#{VERSION_DESC[format]}#{version}" unless version.nil?
|
208
|
-
result
|
209
|
-
end
|
210
|
-
|
211
|
-
def render_localities(format)
|
212
|
-
result = ""
|
213
|
-
result += "#{SUPPLEMENT_DESC[format]}#{supplement}" unless supplement.nil?
|
214
|
-
result += "#{SECTION_DESC[format]}#{section}" unless section.nil?
|
215
|
-
result += "#{APPENDIX_DESC[format]}" unless appendix.nil?
|
216
|
-
result += "#{ERRATA_DESC[format]}" unless errata.nil?
|
217
|
-
result += INDEX_DESC[format] unless index.nil?
|
218
|
-
result += INSERT_DESC[format] unless insert.nil?
|
219
|
-
|
220
|
-
result
|
221
|
-
end
|
222
|
-
|
223
|
-
def render_update(format)
|
224
|
-
return "" if update_year.nil?
|
225
|
-
|
226
|
-
if update_month && update_number.nil?
|
227
|
-
@update_number = "1"
|
228
|
-
end
|
229
|
-
|
230
|
-
if update_year&.length == 2
|
231
|
-
@update_year = "19#{update_year}"
|
232
|
-
end
|
233
|
-
|
234
|
-
if update_number.match?(/\d+/)
|
235
|
-
update_text = update_number
|
236
|
-
update_text += "-#{update_year}" if update_year && !update_year.empty?
|
237
|
-
if update_month
|
238
|
-
date = Date.parse("01/#{update_month}/#{update_year}")
|
239
|
-
update_text += sprintf("%02d", date.month)
|
240
|
-
end
|
241
|
-
else
|
242
|
-
update_text = "1"
|
243
|
-
end
|
244
|
-
|
245
|
-
case format
|
246
|
-
when :long
|
247
|
-
" Update #{update_text}"
|
248
|
-
when :abbrev
|
249
|
-
" Upd. #{update_text}"
|
250
|
-
when :short
|
251
|
-
"/Upd#{update_text}"
|
252
|
-
when :mr
|
253
|
-
".u#{update_text}"
|
254
|
-
end
|
255
|
-
end
|
256
|
-
|
257
|
-
def render_translation(format)
|
258
|
-
return "" if translation.nil?
|
259
|
-
|
260
|
-
case format
|
261
|
-
when :long, :abbrev
|
262
|
-
" (#{translation.upcase})"
|
263
|
-
when :mr
|
264
|
-
".#{translation}"
|
265
|
-
when :short
|
266
|
-
"(#{translation})"
|
267
|
-
end
|
268
|
-
end
|
269
|
-
|
270
|
-
def render_addendum(input, format)
|
271
|
-
return input unless addendum
|
272
|
-
|
273
|
-
case format
|
274
|
-
when :long
|
275
|
-
"Addendum to #{input}"
|
276
|
-
when :abbrev
|
277
|
-
"Add. to #{input}"
|
278
|
-
when :short
|
279
|
-
"#{input} Add."
|
280
|
-
when :mr
|
281
|
-
"#{input}.add-1"
|
282
|
-
end
|
283
|
-
end
|
284
|
-
|
285
96
|
class << self
|
286
97
|
def create(**opts)
|
287
98
|
new(**opts)
|
data/lib/pubid/nist/renderer.rb
CHANGED
data/lib/pubid/nist/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: pubid-nist
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.2.
|
4
|
+
version: 0.2.3
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Ribose Inc.
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2023-09-
|
11
|
+
date: 2023-09-11 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rake
|