kovid 0.5.4 β 0.5.5
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/Gemfile.lock +1 -1
- data/README.md +3 -1
- data/lib/kovid/request.rb +12 -5
- data/lib/kovid/tablelize.rb +28 -4
- data/lib/kovid/version.rb +1 -1
- data/lib/kovid.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: bbc5646b9be503c0b26d29ed1c546a18f5bad793a792ec7b2f59cc2ad0ac7622
|
4
|
+
data.tar.gz: a4a15e16634862590e3f62194b6f49cf1652f84fec6aec2b3f80c5649558aa1d
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 73a7a4c5a633f79e898f48e1fcbc5e4a7dde8145e0a94d704e43c5918ca46e01b880629bd527bbcc77c66a786cd67d6139de9f83fef166f6c836a5e70626d922
|
7
|
+
data.tar.gz: f00ba753893b56d053b10972ea6091fcaf69f707f6425750bfee6ef00be27f1588a5f2aa5b473a958abeedf6b29a532689fdc86ca0a8c0923cce51da1e0c45d0
|
data/Gemfile.lock
CHANGED
data/README.md
CHANGED
@@ -2,6 +2,8 @@
|
|
2
2
|
[![Open Source Helpers](https://www.codetriage.com/siaw23/kovid/badges/users.svg)](https://www.codetriage.com/siaw23/kovid)
|
3
3
|
|
4
4
|
|
5
|
+
If you're looking to consume this in your Ruby-based application, you might want to check [Sarskov](https://github.com/siaw23/sarskov) out. Sarskov returns statistics in a JSON format.
|
6
|
+
|
5
7
|
# π¦ Kovid
|
6
8
|
|
7
9
|
Kovid is a small CLI app to fetch data surrounding the coronavirus pandemic of 2019. I found myself checking [Wikipedia](https://en.wikipedia.org/wiki/2019%E2%80%9320_coronavirus_pandemic) constantly for information so I thought I'd build this to provide info directly in the terminal. It's where some of us spend time more.
|
@@ -61,7 +63,7 @@ You can compare as many countries as you want; `kovid compare FOO BAR BAZ` OR `k
|
|
61
63
|
πΊπΈπΊπΈπΊπΈ
|
62
64
|
|
63
65
|
You can compare US states with:
|
64
|
-
* `kovid
|
66
|
+
* `kovid states STATE STATE` Example: `kovid states illinois "new york" california`
|
65
67
|
|
66
68
|
You can compare provicnes with:
|
67
69
|
* `kovid provinces PROVINCE PROVINCE` Example: `kovid provinces ontario manitoba`
|
data/lib/kovid/request.rb
CHANGED
@@ -13,11 +13,18 @@ module Kovid
|
|
13
13
|
|
14
14
|
SERVER_DOWN = 'Server overwhelmed. Please try again in a moment.'
|
15
15
|
|
16
|
-
EU_ISOS = %w[AT BE BG CY CZ DE DK EE ES FI FR GR HR HU IE IT LT
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
16
|
+
EU_ISOS = %w[AT BE BG CY CZ DE DK EE ES FI FR GR HR HU IE IT LT \
|
17
|
+
LU LV MT NL PL PT RO SE SI SK].freeze
|
18
|
+
EUROPE_ISOS = EU_ISOS + %w[GB IS NO CH MC AD SM VA BA RS ME MK AL\
|
19
|
+
BY UA RU MD]
|
20
|
+
AFRICA_ISOS = %w[DZ AO BJ BW BF BI CM CV CF TD KM CD CG CI DJ EG \
|
21
|
+
GQ ER SZ ET GA GM GH GN GW KE LS LR LY MG MW ML MR MU MA MZ NA NE \
|
22
|
+
NG RW ST SN SC SL SO ZA SS SD TZ TG TN UG ZM ZW EH].freeze
|
23
|
+
SOUTH_AMERICA_ISOS = ['AR' 'BO', 'BV', 'BR', 'CL', 'CO', 'EC', \
|
24
|
+
'FK', 'GF', 'GY', 'PY', 'PE', 'GS', 'SR', 'UY', 'VE'].freeze
|
25
|
+
ASIA_ISOS = %w[AE AF AM AZ BD BH BN BT CC CN CX GE HK ID IL IN \
|
26
|
+
IQ IR JO JP KG KH KP KR KW KZ LA LB LK MM MN MO MY NP OM PH PK \
|
27
|
+
PS QA SA SG SY TH TJ TL TM TR TW UZ VN YE].freeze
|
21
28
|
|
22
29
|
class << self
|
23
30
|
def eu_aggregate
|
data/lib/kovid/tablelize.rb
CHANGED
@@ -88,6 +88,13 @@ module Kovid
|
|
88
88
|
FOOTER_LINE = ['------------', '------------', '------------', '------------'].freeze
|
89
89
|
COUNTRY_LETTERS = 'A'.upto('Z').with_index(127_462).to_h.freeze
|
90
90
|
|
91
|
+
RIGHT_ALIGN_COLUMNS = {
|
92
|
+
compare_country_table_full: [1, 2, 3, 4, 5, 6, 7],
|
93
|
+
compare_country_table: [1, 2, 3, 4, 5],
|
94
|
+
compare_us_states: [1, 2, 3, 4, 5],
|
95
|
+
compare_provinces: [1, 2, 3]
|
96
|
+
}.freeze
|
97
|
+
|
91
98
|
def country_table(data)
|
92
99
|
rows = [
|
93
100
|
[
|
@@ -179,7 +186,9 @@ module Kovid
|
|
179
186
|
end
|
180
187
|
end
|
181
188
|
|
182
|
-
|
189
|
+
align_columns(:compare_country_table,
|
190
|
+
Terminal::Table.new(headings: COMPARE_COUNTRIES_TABLE_HEADINGS,
|
191
|
+
rows: rows))
|
183
192
|
end
|
184
193
|
|
185
194
|
def compare_countries_table_full(data)
|
@@ -196,7 +205,9 @@ module Kovid
|
|
196
205
|
]
|
197
206
|
end
|
198
207
|
|
199
|
-
|
208
|
+
align_columns(:compare_country_table_full,
|
209
|
+
Terminal::Table.new(headings: COMPARE_COUNTRY_TABLE_FULL,
|
210
|
+
rows: rows))
|
200
211
|
end
|
201
212
|
|
202
213
|
def compare_us_states(data)
|
@@ -211,7 +222,9 @@ module Kovid
|
|
211
222
|
]
|
212
223
|
end
|
213
224
|
|
214
|
-
|
225
|
+
align_columns(:compare_us_states,
|
226
|
+
Terminal::Table.new(headings: COMPARE_STATES_HEADINGS,
|
227
|
+
rows: rows))
|
215
228
|
end
|
216
229
|
|
217
230
|
def compare_provinces(data)
|
@@ -224,7 +237,9 @@ module Kovid
|
|
224
237
|
]
|
225
238
|
end
|
226
239
|
|
227
|
-
|
240
|
+
align_columns(:compare_provinces,
|
241
|
+
Terminal::Table.new(headings: COMPARE_PROVINCES_HEADINGS,
|
242
|
+
rows: rows))
|
228
243
|
end
|
229
244
|
|
230
245
|
def cases(cases)
|
@@ -416,6 +431,15 @@ module Kovid
|
|
416
431
|
rows: rows
|
417
432
|
)
|
418
433
|
end
|
434
|
+
|
435
|
+
def align_columns(table_type, table)
|
436
|
+
return table unless RIGHT_ALIGN_COLUMNS[table_type]
|
437
|
+
|
438
|
+
RIGHT_ALIGN_COLUMNS[table_type].each do |col_no|
|
439
|
+
table.align_column(col_no, :right)
|
440
|
+
end
|
441
|
+
table
|
442
|
+
end
|
419
443
|
end
|
420
444
|
end
|
421
445
|
end
|
data/lib/kovid/version.rb
CHANGED
data/lib/kovid.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: kovid
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.5.
|
4
|
+
version: 0.5.5
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Emmanuel Hayford
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2020-04-
|
11
|
+
date: 2020-04-02 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: thor
|