rate_center 0.1.2 → 0.1.3

Sign up to get free protection for your applications and to get access to all the features.
Files changed (115) hide show
  1. checksums.yaml +4 -4
  2. data/.release-please-manifest.json +1 -1
  3. data/CHANGELOG.md +7 -0
  4. data/README.md +14 -15
  5. data/data/cities/us/ak.yml +1077 -3221
  6. data/data/cities/us/al.yml +1790 -5358
  7. data/data/cities/us/ar.yml +1890 -5710
  8. data/data/cities/us/az.yml +1422 -4236
  9. data/data/cities/us/ca.yml +5539 -16077
  10. data/data/cities/us/co.yml +1865 -5323
  11. data/data/cities/us/ct.yml +576 -1714
  12. data/data/cities/us/dc.yml +1 -3
  13. data/data/cities/us/de.yml +237 -711
  14. data/data/cities/us/fl.yml +2904 -8670
  15. data/data/cities/us/ga.yml +2010 -6030
  16. data/data/cities/us/hi.yml +474 -1422
  17. data/data/cities/us/ia.yml +3093 -9583
  18. data/data/cities/us/id.yml +726 -2178
  19. data/data/cities/us/il.yml +4718 -13968
  20. data/data/cities/us/in.yml +2955 -8835
  21. data/data/cities/us/ks.yml +2339 -6937
  22. data/data/cities/us/ky.yml +1665 -4987
  23. data/data/cities/us/la.yml +1464 -4392
  24. data/data/cities/us/ma.yml +381 -1143
  25. data/data/cities/us/md.yml +2061 -5833
  26. data/data/cities/us/me.yml +200 -598
  27. data/data/cities/us/mi.yml +2294 -6954
  28. data/data/cities/us/mn.yml +2730 -8232
  29. data/data/cities/us/mo.yml +4049 -11597
  30. data/data/cities/us/ms.yml +1316 -3918
  31. data/data/cities/us/mt.yml +1485 -4575
  32. data/data/cities/us/nc.yml +2389 -7157
  33. data/data/cities/us/nd.yml +1215 -3683
  34. data/data/cities/us/ne.yml +1770 -5310
  35. data/data/cities/us/nh.yml +123 -369
  36. data/data/cities/us/nj.yml +1984 -5942
  37. data/data/cities/us/nm.yml +1557 -4671
  38. data/data/cities/us/nv.yml +511 -1437
  39. data/data/cities/us/ny.yml +3107 -9163
  40. data/data/cities/us/oh.yml +3802 -11404
  41. data/data/cities/us/ok.yml +2543 -7605
  42. data/data/cities/us/or.yml +1287 -3851
  43. data/data/cities/us/pa.yml +5564 -16534
  44. data/data/cities/us/pr.yml +843 -2529
  45. data/data/cities/us/ri.yml +93 -279
  46. data/data/cities/us/sc.yml +1474 -4482
  47. data/data/cities/us/sd.yml +1466 -4412
  48. data/data/cities/us/tn.yml +1647 -4845
  49. data/data/cities/us/tx.yml +7000 -19984
  50. data/data/cities/us/ut.yml +1144 -3304
  51. data/data/cities/us/va.yml +2071 -6175
  52. data/data/cities/us/vt.yml +318 -954
  53. data/data/cities/us/wa.yml +2088 -6138
  54. data/data/cities/us/wi.yml +2489 -7407
  55. data/data/cities/us/wv.yml +1355 -4029
  56. data/data/cities/us/wy.yml +612 -1836
  57. data/data/rate_centers/us/ak.yml +254 -762
  58. data/data/rate_centers/us/al.yml +517 -1145
  59. data/data/rate_centers/us/ar.yml +823 -1619
  60. data/data/rate_centers/us/az.yml +164 -484
  61. data/data/rate_centers/us/ca.yml +761 -2271
  62. data/data/rate_centers/us/co.yml +231 -685
  63. data/data/rate_centers/us/ct.yml +198 -388
  64. data/data/rate_centers/us/dc.yml +1 -3
  65. data/data/rate_centers/us/de.yml +30 -90
  66. data/data/rate_centers/us/fl.yml +302 -888
  67. data/data/rate_centers/us/ga.yml +386 -1134
  68. data/data/rate_centers/us/hi.yml +6 -18
  69. data/data/rate_centers/us/ia.yml +821 -2715
  70. data/data/rate_centers/us/id.yml +177 -545
  71. data/data/rate_centers/us/il.yml +1097 -3167
  72. data/data/rate_centers/us/in.yml +699 -1757
  73. data/data/rate_centers/us/ks.yml +617 -1851
  74. data/data/rate_centers/us/ky.yml +372 -1116
  75. data/data/rate_centers/us/la.yml +312 -880
  76. data/data/rate_centers/us/ma.yml +266 -798
  77. data/data/rate_centers/us/md.yml +185 -533
  78. data/data/rate_centers/us/me.yml +251 -753
  79. data/data/rate_centers/us/mi.yml +755 -2093
  80. data/data/rate_centers/us/mn.yml +667 -2021
  81. data/data/rate_centers/us/mo.yml +1266 -2924
  82. data/data/rate_centers/us/ms.yml +257 -743
  83. data/data/rate_centers/us/mt.yml +260 -934
  84. data/data/rate_centers/us/nc.yml +929 -1825
  85. data/data/rate_centers/us/nd.yml +314 -960
  86. data/data/rate_centers/us/ne.yml +487 -1421
  87. data/data/rate_centers/us/nh.yml +156 -450
  88. data/data/rate_centers/us/nj.yml +364 -782
  89. data/data/rate_centers/us/nm.yml +163 -489
  90. data/data/rate_centers/us/nv.yml +106 -318
  91. data/data/rate_centers/us/ny.yml +837 -2297
  92. data/data/rate_centers/us/oh.yml +1102 -2618
  93. data/data/rate_centers/us/ok.yml +536 -1600
  94. data/data/rate_centers/us/or.yml +275 -807
  95. data/data/rate_centers/us/pa.yml +1355 -2923
  96. data/data/rate_centers/us/pr.yml +86 -254
  97. data/data/rate_centers/us/ri.yml +25 -75
  98. data/data/rate_centers/us/sc.yml +296 -854
  99. data/data/rate_centers/us/sd.yml +278 -844
  100. data/data/rate_centers/us/tn.yml +403 -1119
  101. data/data/rate_centers/us/tx.yml +1619 -4497
  102. data/data/rate_centers/us/ut.yml +154 -454
  103. data/data/rate_centers/us/va.yml +619 -1361
  104. data/data/rate_centers/us/vt.yml +141 -423
  105. data/data/rate_centers/us/wa.yml +296 -888
  106. data/data/rate_centers/us/wi.yml +888 -2106
  107. data/data/rate_centers/us/wv.yml +229 -687
  108. data/data/rate_centers/us/wy.yml +95 -281
  109. data/lib/rate_center/city.rb +3 -4
  110. data/lib/rate_center/data_prep.rb +3 -9
  111. data/lib/rate_center/distance.rb +1 -1
  112. data/lib/rate_center/rate_center.rb +3 -4
  113. data/lib/rate_center/version.rb +1 -1
  114. metadata +2 -3
  115. data/lib/rate_center/vector.rb +0 -3
@@ -1,7 +1,6 @@
1
1
 
2
2
  require "ostruct"
3
3
  require_relative "collection"
4
- require_relative "vector"
5
4
  require_relative "distance"
6
5
 
7
6
  module RateCenter
@@ -19,10 +18,10 @@ module RateCenter
19
18
  data.map do |data|
20
19
  city = new(**data)
21
20
  city.nearby_rate_centers = Array(data["nearby_rate_centers"]).map do |rate_center|
22
- distance = rate_center.fetch("distance")
23
- Vector.new(
21
+ distance_km = rate_center.fetch("distance_km")
22
+ Distance.new(
24
23
  name: rate_center.fetch("name"),
25
- distance: Distance.new(value: distance.fetch("value"), units: distance.fetch("units"))
24
+ distance_km:
26
25
  )
27
26
  end
28
27
  city
@@ -32,10 +32,7 @@ module RateCenter
32
32
 
33
33
  rate_center["closest_city"] = {
34
34
  "name" => closest_city.name,
35
- "distance" => {
36
- "value" => closest_city.distance.round(2),
37
- "units" => "km"
38
- }
35
+ "distance_km" => closest_city.distance.round(2)
39
36
  }
40
37
  end
41
38
  end
@@ -66,10 +63,7 @@ module RateCenter
66
63
  city["nearby_rate_centers"] = nearby_rate_centers.map do |rate_center|
67
64
  {
68
65
  "name" => rate_center.name,
69
- "distance" => {
70
- "value" => rate_center.distance.round(2),
71
- "units" => "km"
72
- }
66
+ "distance_km" => rate_center.distance.round(2)
73
67
  }
74
68
  end
75
69
  end
@@ -92,7 +86,7 @@ module RateCenter
92
86
  )
93
87
  end
94
88
 
95
- distances_to.sort_by(&:distance)
89
+ distances_to.sort_by { |e| [ e.distance, e.name ] }
96
90
  end
97
91
 
98
92
  def write_data(type, country, data)
@@ -1,3 +1,3 @@
1
1
  module RateCenter
2
- Distance = Struct.new(:value, :units, keyword_init: true)
2
+ Distance = Struct.new(:name, :distance_km, keyword_init: true)
3
3
  end
@@ -1,6 +1,5 @@
1
1
  require "ostruct"
2
2
  require_relative "collection"
3
- require_relative "vector"
4
3
  require_relative "distance"
5
4
 
6
5
  module RateCenter
@@ -20,10 +19,10 @@ module RateCenter
20
19
  closest_city = data["closest_city"]
21
20
  next rate_center if closest_city.nil?
22
21
 
23
- distance = closest_city.fetch("distance")
24
- rate_center.closest_city = Vector.new(
22
+ distance_km = closest_city.fetch("distance_km")
23
+ rate_center.closest_city = Distance.new(
25
24
  name: closest_city.fetch("name"),
26
- distance: Distance.new(value: distance.fetch("value"), units: distance.fetch("units"))
25
+ distance_km:
27
26
  )
28
27
 
29
28
  rate_center
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module RateCenter
4
- VERSION = "0.1.2"
4
+ VERSION = "0.1.3"
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rate_center
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.2
4
+ version: 0.1.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - David Wilkie
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2024-10-05 00:00:00.000000000 Z
11
+ date: 2024-10-07 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: multi_xml
@@ -368,7 +368,6 @@ files:
368
368
  - lib/rate_center/distance.rb
369
369
  - lib/rate_center/errors.rb
370
370
  - lib/rate_center/rate_center.rb
371
- - lib/rate_center/vector.rb
372
371
  - lib/rate_center/version.rb
373
372
  - release-please-config.json
374
373
  homepage: https://github.com/somleng/rate_center
@@ -1,3 +0,0 @@
1
- module RateCenter
2
- Vector = Struct.new(:name, :distance, keyword_init: true)
3
- end