nayyar 0.1.2 → 0.2.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 +4 -4
- data/.circleci/config.yml +6 -3
- data/.rubocop.yml +1 -0
- data/README.md +3 -0
- data/bin/seed +11 -0
- data/lib/.DS_Store +0 -0
- data/lib/data/districts.yml +74 -0
- data/lib/data/extract.rb +30 -4
- data/lib/data/locations.csv +501 -1
- data/lib/data/states.yml +15 -0
- data/lib/data/townships.yml +430 -17
- data/lib/nayyar/district.rb +1 -0
- data/lib/nayyar/state.rb +1 -0
- data/lib/nayyar/township.rb +1 -0
- data/lib/nayyar/version.rb +1 -1
- metadata +8 -6
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: b2214fdcbce8558b80e51d36d46ae9782ad6e2b1069b039b40cb77a26cbbc261
|
|
4
|
+
data.tar.gz: bb7a84322f286cd4b0df42f524dd9f0b1c38a5c0351b9b290d6eb9d9b27f023f
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 58fde7fc55bfafa3bec000b93a27d3ec4a604052df3595c5ab4792265f69e4a3e378a6ee9738cd6206b00b9f35244d884ea451c3ae1dfe7ccffda0ab41b76e00
|
|
7
|
+
data.tar.gz: 53d14ecff7dcc82f15f0ec86dfac166b31e0d0f2bbac43c773ced6c304ed57ac07fc89517f365336b051d8eddf06ca33aea689b4d59bb89b9076200039bd537a
|
data/.circleci/config.yml
CHANGED
|
@@ -5,14 +5,14 @@ version: 2.1
|
|
|
5
5
|
# Orbs are reusable packages of CircleCI configuration that you may share across projects, enabling you to create encapsulated, parameterized commands, jobs, and executors that can be used across multiple projects.
|
|
6
6
|
# See: https://circleci.com/docs/2.0/orb-intro/
|
|
7
7
|
orbs:
|
|
8
|
-
ruby: circleci/ruby@1.
|
|
8
|
+
ruby: circleci/ruby@1.8.0
|
|
9
9
|
|
|
10
10
|
# Define a job to be invoked later in a workflow.
|
|
11
11
|
# See: https://circleci.com/docs/2.0/configuration-reference/#jobs
|
|
12
12
|
jobs:
|
|
13
13
|
rspec:
|
|
14
14
|
docker:
|
|
15
|
-
- image: cimg/ruby:3.1.
|
|
15
|
+
- image: cimg/ruby:3.1.2
|
|
16
16
|
executor: ruby/default
|
|
17
17
|
steps:
|
|
18
18
|
- checkout
|
|
@@ -21,7 +21,10 @@ jobs:
|
|
|
21
21
|
command: bundle -v
|
|
22
22
|
- run:
|
|
23
23
|
name: bundle install
|
|
24
|
-
command: bundle install
|
|
24
|
+
command: bundle _2.3.11_ install
|
|
25
|
+
- run:
|
|
26
|
+
name: rubocop
|
|
27
|
+
command: rubocop
|
|
25
28
|
- run:
|
|
26
29
|
name: rspec
|
|
27
30
|
command: rspec
|
data/.rubocop.yml
CHANGED
data/README.md
CHANGED
|
@@ -143,6 +143,9 @@ Use any of the `find_by` or `find_by_**index_name**` with a bang `!` to trigger
|
|
|
143
143
|
## Development
|
|
144
144
|
|
|
145
145
|
After checking out the repo, run `bin/setup` to install dependencies. Then, run `bin/console` for an interactive prompt that will allow you to experiment.
|
|
146
|
+
|
|
147
|
+
All data-related files are in the lib/data directory. `locations.csv` file is the source of truth, which includes States, Districts, and Townships data. YAML files are generated
|
|
148
|
+
by extracting the data from the `locations.csv` file. Do not update directly to YAML files. Any updates must be made in the `locations.csv` file and extracted to YAML files by running `bin/seed`.
|
|
146
149
|
|
|
147
150
|
To install this gem onto your local machine, run `bundle exec rake install`. To release a new version, update the version number in `version.rb`, and then run `bundle exec rake release` to create a git tag for the version, push git commits and tags, and push the `.gem` file to [rubygems.org](https://rubygems.org).
|
|
148
151
|
|
data/bin/seed
ADDED
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
#!/bin/bash
|
|
2
|
+
set -euo pipefail
|
|
3
|
+
IFS=$'\n\t'
|
|
4
|
+
|
|
5
|
+
# Parentheses are used to run the command in a subshell. Ruuning a command
|
|
6
|
+
# in sub-shell allows you to stay on the current directory after running
|
|
7
|
+
# the command.
|
|
8
|
+
|
|
9
|
+
(cd lib/data && bundle exec ruby extract.rb)
|
|
10
|
+
|
|
11
|
+
echo "Seeding done"
|
data/lib/.DS_Store
ADDED
|
Binary file
|
data/lib/data/districts.yml
CHANGED
|
@@ -1,223 +1,297 @@
|
|
|
1
1
|
---
|
|
2
2
|
- :pcode: MMR001D001
|
|
3
3
|
:name: Myitkyina
|
|
4
|
+
:my_name: မြစ်ကြီးနား
|
|
4
5
|
:state: MMR001
|
|
5
6
|
- :pcode: MMR001D002
|
|
6
7
|
:name: Mohnyin
|
|
8
|
+
:my_name: မိုးညှင်
|
|
7
9
|
:state: MMR001
|
|
8
10
|
- :pcode: MMR001D003
|
|
9
11
|
:name: Bhamo
|
|
12
|
+
:my_name: ဗန်းမော်
|
|
10
13
|
:state: MMR001
|
|
11
14
|
- :pcode: MMR001D004
|
|
12
15
|
:name: Puta-O
|
|
16
|
+
:my_name: ပူတာအို
|
|
13
17
|
:state: MMR001
|
|
14
18
|
- :pcode: MMR002D001
|
|
15
19
|
:name: Loikaw
|
|
20
|
+
:my_name: လွိုင်ကော်
|
|
16
21
|
:state: MMR002
|
|
17
22
|
- :pcode: MMR002D002
|
|
18
23
|
:name: Bawlake
|
|
24
|
+
:my_name: ဘော်လခဲ
|
|
19
25
|
:state: MMR002
|
|
20
26
|
- :pcode: MMR003D001
|
|
21
27
|
:name: Hpa-An
|
|
28
|
+
:my_name: ဘားအံ
|
|
22
29
|
:state: MMR003
|
|
23
30
|
- :pcode: MMR003D004
|
|
24
31
|
:name: Hpapun
|
|
32
|
+
:my_name: ဖာပွန်
|
|
25
33
|
:state: MMR003
|
|
26
34
|
- :pcode: MMR003D002
|
|
27
35
|
:name: Myawaddy
|
|
36
|
+
:my_name: မြဝတီ
|
|
28
37
|
:state: MMR003
|
|
29
38
|
- :pcode: MMR003D003
|
|
30
39
|
:name: Kawkareik
|
|
40
|
+
:my_name: ကော့ကရိတ်
|
|
31
41
|
:state: MMR003
|
|
32
42
|
- :pcode: MMR004D003
|
|
33
43
|
:name: Hakha
|
|
44
|
+
:my_name: ဟားခါး
|
|
34
45
|
:state: MMR004
|
|
35
46
|
- :pcode: MMR004D001
|
|
36
47
|
:name: Falam
|
|
48
|
+
:my_name: ဖလမ်း
|
|
37
49
|
:state: MMR004
|
|
38
50
|
- :pcode: MMR004D002
|
|
39
51
|
:name: Mindat
|
|
52
|
+
:my_name: မင်းတပ်
|
|
40
53
|
:state: MMR004
|
|
41
54
|
- :pcode: MMR005D001
|
|
42
55
|
:name: Sagaing
|
|
56
|
+
:my_name: စစ်ကိုင်း
|
|
43
57
|
:state: MMR005
|
|
44
58
|
- :pcode: MMR005D002
|
|
45
59
|
:name: Shwebo
|
|
60
|
+
:my_name: ရွှေဘို
|
|
46
61
|
:state: MMR005
|
|
47
62
|
- :pcode: MMR005D003
|
|
48
63
|
:name: Monywa
|
|
64
|
+
:my_name: မုံရွာ
|
|
49
65
|
:state: MMR005
|
|
50
66
|
- :pcode: MMR005D004
|
|
51
67
|
:name: Katha
|
|
68
|
+
:my_name: ကသာ
|
|
52
69
|
:state: MMR005
|
|
53
70
|
- :pcode: MMR005D005
|
|
54
71
|
:name: Kale
|
|
72
|
+
:my_name: ကလေး
|
|
55
73
|
:state: MMR005
|
|
56
74
|
- :pcode: MMR005D006
|
|
57
75
|
:name: Tamu
|
|
76
|
+
:my_name: တမူး
|
|
58
77
|
:state: MMR005
|
|
59
78
|
- :pcode: MMR005D007
|
|
60
79
|
:name: Mawlaik
|
|
80
|
+
:my_name: မော်လိုက်
|
|
61
81
|
:state: MMR005
|
|
62
82
|
- :pcode: MMR005D008
|
|
63
83
|
:name: Hkamti
|
|
84
|
+
:my_name: ခန္တီး
|
|
64
85
|
:state: MMR005
|
|
65
86
|
- :pcode: MMR005D009
|
|
66
87
|
:name: Yinmabin
|
|
88
|
+
:my_name: ယင်းမာပင်
|
|
67
89
|
:state: MMR005
|
|
68
90
|
- :pcode: MMR006D001
|
|
69
91
|
:name: Dawei
|
|
92
|
+
:my_name: ထားဝယ်
|
|
70
93
|
:state: MMR006
|
|
71
94
|
- :pcode: MMR006D002
|
|
72
95
|
:name: Myeik
|
|
96
|
+
:my_name: မြိတ်
|
|
73
97
|
:state: MMR006
|
|
74
98
|
- :pcode: MMR006D003
|
|
75
99
|
:name: Kawthoung
|
|
100
|
+
:my_name: ကော့သောင်း
|
|
76
101
|
:state: MMR006
|
|
77
102
|
- :pcode: MMR007D001
|
|
78
103
|
:name: Bago
|
|
104
|
+
:my_name: ပဲခူး
|
|
79
105
|
:state: MMR111
|
|
80
106
|
- :pcode: MMR007D002
|
|
81
107
|
:name: Taungoo
|
|
108
|
+
:my_name: တောင်ငူ
|
|
82
109
|
:state: MMR111
|
|
83
110
|
- :pcode: MMR008D001
|
|
84
111
|
:name: Pyay
|
|
112
|
+
:my_name: ပြည်
|
|
85
113
|
:state: MMR111
|
|
86
114
|
- :pcode: MMR008D002
|
|
87
115
|
:name: Thayarwady
|
|
116
|
+
:my_name: သာယာဝတီ
|
|
88
117
|
:state: MMR111
|
|
89
118
|
- :pcode: MMR009D001
|
|
90
119
|
:name: Magway
|
|
120
|
+
:my_name: မကွေး
|
|
91
121
|
:state: MMR009
|
|
92
122
|
- :pcode: MMR009D002
|
|
93
123
|
:name: Minbu
|
|
124
|
+
:my_name: မင်းဘူး
|
|
94
125
|
:state: MMR009
|
|
95
126
|
- :pcode: MMR009D003
|
|
96
127
|
:name: Thayet
|
|
128
|
+
:my_name: သရက်
|
|
97
129
|
:state: MMR009
|
|
98
130
|
- :pcode: MMR009D004
|
|
99
131
|
:name: Pakokku
|
|
132
|
+
:my_name: ပခုက္ကူ
|
|
100
133
|
:state: MMR009
|
|
101
134
|
- :pcode: MMR009D005
|
|
102
135
|
:name: Gangaw
|
|
136
|
+
:my_name: ဂန့်ဂေါ
|
|
103
137
|
:state: MMR009
|
|
104
138
|
- :pcode: MMR010D001
|
|
105
139
|
:name: Mandalay
|
|
140
|
+
:my_name: မန္တလေး
|
|
106
141
|
:state: MMR010
|
|
107
142
|
- :pcode: MMR010D002
|
|
108
143
|
:name: Pyinoolwin
|
|
144
|
+
:my_name: ပြင်ဦးလွင်
|
|
109
145
|
:state: MMR010
|
|
110
146
|
- :pcode: MMR010D003
|
|
111
147
|
:name: Kyaukse
|
|
148
|
+
:my_name: ကျောက်ဆည်
|
|
112
149
|
:state: MMR010
|
|
113
150
|
- :pcode: MMR010D004
|
|
114
151
|
:name: Myingyan
|
|
152
|
+
:my_name: မြင်းခြံ
|
|
115
153
|
:state: MMR010
|
|
116
154
|
- :pcode: MMR010D005
|
|
117
155
|
:name: Nyaung-U
|
|
156
|
+
:my_name: ညောင်ဦး
|
|
118
157
|
:state: MMR010
|
|
119
158
|
- :pcode: MMR010D006
|
|
120
159
|
:name: Yamethin
|
|
160
|
+
:my_name: ရမည်းသင်း
|
|
121
161
|
:state: MMR010
|
|
122
162
|
- :pcode: MMR010D007
|
|
123
163
|
:name: Meiktila
|
|
164
|
+
:my_name: မိတ္ထီလာ
|
|
124
165
|
:state: MMR010
|
|
125
166
|
- :pcode: MMR011D001
|
|
126
167
|
:name: Mawlamyine
|
|
168
|
+
:my_name: မော်လမြိုင်
|
|
127
169
|
:state: MMR011
|
|
128
170
|
- :pcode: MMR011D002
|
|
129
171
|
:name: Thaton
|
|
172
|
+
:my_name: သထုံ
|
|
130
173
|
:state: MMR011
|
|
131
174
|
- :pcode: MMR012D001
|
|
132
175
|
:name: Sittwe
|
|
176
|
+
:my_name: စစ်တွေ
|
|
133
177
|
:state: MMR012
|
|
134
178
|
- :pcode: MMR012D005
|
|
135
179
|
:name: Mrauk-U
|
|
180
|
+
:my_name: မြောက်ဦး
|
|
136
181
|
:state: MMR012
|
|
137
182
|
- :pcode: MMR012D002
|
|
138
183
|
:name: Maungdaw
|
|
184
|
+
:my_name: မောင်တော
|
|
139
185
|
:state: MMR012
|
|
140
186
|
- :pcode: MMR012D003
|
|
141
187
|
:name: Kyaukpyu
|
|
188
|
+
:my_name: ကျောက်ဖြူ
|
|
142
189
|
:state: MMR012
|
|
143
190
|
- :pcode: MMR012D004
|
|
144
191
|
:name: Thandwe
|
|
192
|
+
:my_name: သံတွဲ
|
|
145
193
|
:state: MMR012
|
|
146
194
|
- :pcode: MMR013D001
|
|
147
195
|
:name: Yangon (North)
|
|
196
|
+
:my_name: ရန်ကုန်(မြောက်ပိုင်း)
|
|
148
197
|
:state: MMR013
|
|
149
198
|
- :pcode: MMR013D002
|
|
150
199
|
:name: Yangon (East)
|
|
200
|
+
:my_name: ရန်ကုန်(အရှေ့ပိုင်း)
|
|
151
201
|
:state: MMR013
|
|
152
202
|
- :pcode: MMR013D003
|
|
153
203
|
:name: Yangon (South)
|
|
204
|
+
:my_name: ရန်ကုန်(တောင်ပိုင်း)
|
|
154
205
|
:state: MMR013
|
|
155
206
|
- :pcode: MMR013D004
|
|
156
207
|
:name: Yangon (West)
|
|
208
|
+
:my_name: ရန်ကုန်(အနောက်ပိုင်း)
|
|
157
209
|
:state: MMR013
|
|
158
210
|
- :pcode: MMR014D001
|
|
159
211
|
:name: Taunggyi
|
|
212
|
+
:my_name: တောင်ကြီး
|
|
160
213
|
:state: MMR222
|
|
161
214
|
- :pcode: MMR014D002
|
|
162
215
|
:name: Loilen
|
|
216
|
+
:my_name: လွိုင်လင်
|
|
163
217
|
:state: MMR222
|
|
164
218
|
- :pcode: MMR014D003
|
|
165
219
|
:name: Langkho
|
|
220
|
+
:my_name: လင်းခေး
|
|
166
221
|
:state: MMR222
|
|
167
222
|
- :pcode: MMR015D001
|
|
168
223
|
:name: Lashio
|
|
224
|
+
:my_name: လားရှိုး
|
|
169
225
|
:state: MMR222
|
|
170
226
|
- :pcode: MMR015D002
|
|
171
227
|
:name: Muse
|
|
228
|
+
:my_name: မူစယ်
|
|
172
229
|
:state: MMR222
|
|
173
230
|
- :pcode: MMR015D003
|
|
174
231
|
:name: Kyaukme
|
|
232
|
+
:my_name: ကျောက်မဲ
|
|
175
233
|
:state: MMR222
|
|
176
234
|
- :pcode: MMR015D004
|
|
177
235
|
:name: Kunlong
|
|
236
|
+
:my_name: ကွမ်းလုံ
|
|
178
237
|
:state: MMR222
|
|
179
238
|
- :pcode: MMR015D005
|
|
180
239
|
:name: Laukkaing
|
|
240
|
+
:my_name: လောက်ကိုင်
|
|
181
241
|
:state: MMR222
|
|
182
242
|
- :pcode: MMR015D006
|
|
183
243
|
:name: Hopang
|
|
244
|
+
:my_name: ဟိုပန်
|
|
184
245
|
:state: MMR222
|
|
185
246
|
- :pcode: MMR015D007
|
|
186
247
|
:name: Matman
|
|
248
|
+
:my_name: မက်မန်း
|
|
187
249
|
:state: MMR222
|
|
188
250
|
- :pcode: MMR016D001
|
|
189
251
|
:name: Kengtung
|
|
252
|
+
:my_name: ကျိုင်းတုံ
|
|
190
253
|
:state: MMR222
|
|
191
254
|
- :pcode: MMR016D002
|
|
192
255
|
:name: Monghsat
|
|
256
|
+
:my_name: မိုင်းဆတ်
|
|
193
257
|
:state: MMR222
|
|
194
258
|
- :pcode: MMR016D003
|
|
195
259
|
:name: Tachileik
|
|
260
|
+
:my_name: တာချီလိတ်
|
|
196
261
|
:state: MMR222
|
|
197
262
|
- :pcode: MMR016D004
|
|
198
263
|
:name: Monghpyak
|
|
264
|
+
:my_name: မိုင်းဖြတ်
|
|
199
265
|
:state: MMR222
|
|
200
266
|
- :pcode: MMR017D001
|
|
201
267
|
:name: Pathein
|
|
268
|
+
:my_name: ပုသိမ်
|
|
202
269
|
:state: MMR017
|
|
203
270
|
- :pcode: MMR017D006
|
|
204
271
|
:name: Pyapon
|
|
272
|
+
:my_name: ဖျာပုံ
|
|
205
273
|
:state: MMR017
|
|
206
274
|
- :pcode: MMR017D005
|
|
207
275
|
:name: Maubin
|
|
276
|
+
:my_name: မအူပင်
|
|
208
277
|
:state: MMR017
|
|
209
278
|
- :pcode: MMR017D003
|
|
210
279
|
:name: Myaungmya
|
|
280
|
+
:my_name: မြောင်းမြ
|
|
211
281
|
:state: MMR017
|
|
212
282
|
- :pcode: MMR017D004
|
|
213
283
|
:name: Labutta
|
|
284
|
+
:my_name: လပွတ္တာ
|
|
214
285
|
:state: MMR017
|
|
215
286
|
- :pcode: MMR017D002
|
|
216
287
|
:name: Hinthada
|
|
288
|
+
:my_name: ဟင်္သာတ
|
|
217
289
|
:state: MMR017
|
|
218
290
|
- :pcode: MMR018D001
|
|
219
291
|
:name: Naypyitaw (North)
|
|
292
|
+
:my_name: နေပြည်တော်(မြောက်ပိုင်း)
|
|
220
293
|
:state: MMR018
|
|
221
294
|
- :pcode: MMR018D002
|
|
222
295
|
:name: Naypyitaw (South)
|
|
296
|
+
:my_name: နေပြည်တော်(တောင်ပိုင်း)
|
|
223
297
|
:state: MMR018
|
data/lib/data/extract.rb
CHANGED
|
@@ -11,10 +11,36 @@ states = []
|
|
|
11
11
|
districts = []
|
|
12
12
|
townships = []
|
|
13
13
|
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
14
|
+
def state(location)
|
|
15
|
+
{ iso: location[:iso], pcode: location[:s_pcode], alpha3: location[:alpha3], name: location[:state],
|
|
16
|
+
my_name: location[:state_in_my] }
|
|
17
|
+
end
|
|
18
|
+
|
|
19
|
+
def district?(location)
|
|
20
|
+
!location[:d_pcode].nil?
|
|
21
|
+
end
|
|
22
|
+
|
|
23
|
+
def district(location)
|
|
24
|
+
{ pcode: location[:d_pcode], name: location[:district], my_name: location[:district_in_my],
|
|
25
|
+
state: location[:s_pcode] }
|
|
26
|
+
end
|
|
27
|
+
|
|
28
|
+
def township?(location)
|
|
29
|
+
!location[:t_pcode].nil?
|
|
30
|
+
end
|
|
31
|
+
|
|
32
|
+
def township(location)
|
|
33
|
+
{ pcode: location[:t_pcode], name: location[:township], my_name: location[:township_in_my],
|
|
34
|
+
district: location[:d_pcode] }
|
|
35
|
+
end
|
|
36
|
+
|
|
37
|
+
CSV.foreach('locations.csv') do |location_csv_data|
|
|
38
|
+
keys = %i[iso s_pcode alpha3 state state_in_my d_pcode district district_in_my t_pcode township
|
|
39
|
+
township_in_my]
|
|
40
|
+
location = keys.zip(*location_csv_data).to_h
|
|
41
|
+
states << state(location)
|
|
42
|
+
districts << district(location) if district?(location)
|
|
43
|
+
townships << township(location) if township?(location)
|
|
18
44
|
end
|
|
19
45
|
states.uniq! { |state| state[:pcode] }
|
|
20
46
|
districts.uniq! { |district| district[:pcode] }
|