phoebe 0.1.0.pre.alpha.1 → 0.1.0.pre.alpha.2

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.
Files changed (122) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +82 -0
  3. data/README.md +10 -1
  4. data/lib/phoebe/client.rb +15 -1
  5. data/lib/phoebe/internal/transport/base_client.rb +2 -0
  6. data/lib/phoebe/internal/transport/pooled_net_requester.rb +13 -11
  7. data/lib/phoebe/internal/util.rb +61 -10
  8. data/lib/phoebe/models/data/observations/geo/recent/specie_list_params.rb +8 -1
  9. data/lib/phoebe/models/data/observations/nearest/geo_specie_list_params.rb +8 -1
  10. data/lib/phoebe/models/data/observations/recent/historic_list_params.rb +8 -1
  11. data/lib/phoebe/models/data/observations/recent/notable_list_params.rb +8 -1
  12. data/lib/phoebe/models/data/observations/recent/specie_retrieve_params.rb +8 -1
  13. data/lib/phoebe/models/data/observations/recent_list_params.rb +8 -1
  14. data/lib/phoebe/models/product/checklist_view_params.rb +7 -1
  15. data/lib/phoebe/models/product/list_retrieve_params.rb +8 -1
  16. data/lib/phoebe/models/product/lists/historical_retrieve_params.rb +8 -1
  17. data/lib/phoebe/models/product/species_list_list_params.rb +7 -1
  18. data/lib/phoebe/models/product/stat_retrieve_params.rb +7 -1
  19. data/lib/phoebe/models/product/top100_retrieve_params.rb +8 -1
  20. data/lib/phoebe/models/ref/hotspot/info_retrieve_params.rb +7 -1
  21. data/lib/phoebe/models/ref/hotspot_list_params.rb +8 -1
  22. data/lib/phoebe/models/ref/region/adjacent_list_params.rb +7 -1
  23. data/lib/phoebe/models/ref/region/info_retrieve_params.rb +8 -1
  24. data/lib/phoebe/models/ref/region/list_list_params.rb +8 -1
  25. data/lib/phoebe/models/ref/taxonomy/form_list_params.rb +7 -1
  26. data/lib/phoebe/models/ref/taxonomy/species_group_list_params.rb +9 -1
  27. data/lib/phoebe/resources/data/observations/geo/recent/notable.rb +7 -1
  28. data/lib/phoebe/resources/data/observations/geo/recent/species.rb +7 -1
  29. data/lib/phoebe/resources/data/observations/geo/recent.rb +17 -1
  30. data/lib/phoebe/resources/data/observations/geo.rb +5 -0
  31. data/lib/phoebe/resources/data/observations/nearest/geo_species.rb +7 -1
  32. data/lib/phoebe/resources/data/observations/nearest.rb +5 -0
  33. data/lib/phoebe/resources/data/observations/recent/historic.rb +10 -4
  34. data/lib/phoebe/resources/data/observations/recent/notable.rb +7 -1
  35. data/lib/phoebe/resources/data/observations/recent/species.rb +7 -1
  36. data/lib/phoebe/resources/data/observations/recent.rb +22 -1
  37. data/lib/phoebe/resources/data/observations.rb +5 -0
  38. data/lib/phoebe/resources/product/checklist.rb +5 -0
  39. data/lib/phoebe/resources/product/lists/historical.rb +7 -1
  40. data/lib/phoebe/resources/product/lists.rb +12 -1
  41. data/lib/phoebe/resources/product/species_list.rb +5 -0
  42. data/lib/phoebe/resources/product/stats.rb +5 -0
  43. data/lib/phoebe/resources/product/top100.rb +7 -1
  44. data/lib/phoebe/resources/product.rb +25 -0
  45. data/lib/phoebe/resources/ref/hotspot/geo.rb +4 -1
  46. data/lib/phoebe/resources/ref/hotspot/info.rb +2 -0
  47. data/lib/phoebe/resources/ref/hotspot.rb +8 -1
  48. data/lib/phoebe/resources/ref/region/adjacent.rb +1 -0
  49. data/lib/phoebe/resources/ref/region/info.rb +3 -1
  50. data/lib/phoebe/resources/ref/region/list.rb +3 -1
  51. data/lib/phoebe/resources/ref/region.rb +3 -0
  52. data/lib/phoebe/resources/ref/taxonomy/ebird.rb +2 -1
  53. data/lib/phoebe/resources/ref/taxonomy/species_groups.rb +2 -1
  54. data/lib/phoebe/resources/ref.rb +2 -0
  55. data/lib/phoebe/version.rb +1 -1
  56. data/rbi/phoebe/internal/util.rbi +29 -1
  57. data/rbi/phoebe/models/data/observations/geo/recent/specie_list_params.rbi +6 -0
  58. data/rbi/phoebe/models/data/observations/nearest/geo_specie_list_params.rbi +6 -0
  59. data/rbi/phoebe/models/data/observations/recent/historic_list_params.rbi +6 -0
  60. data/rbi/phoebe/models/data/observations/recent/notable_list_params.rbi +6 -0
  61. data/rbi/phoebe/models/data/observations/recent/specie_retrieve_params.rbi +6 -0
  62. data/rbi/phoebe/models/data/observations/recent_list_params.rbi +6 -0
  63. data/rbi/phoebe/models/product/checklist_view_params.rbi +13 -5
  64. data/rbi/phoebe/models/product/list_retrieve_params.rbi +10 -1
  65. data/rbi/phoebe/models/product/lists/historical_retrieve_params.rbi +6 -0
  66. data/rbi/phoebe/models/product/species_list_list_params.rbi +13 -5
  67. data/rbi/phoebe/models/product/stat_retrieve_params.rbi +6 -1
  68. data/rbi/phoebe/models/product/top100_retrieve_params.rbi +6 -0
  69. data/rbi/phoebe/models/ref/hotspot/info_retrieve_params.rbi +13 -5
  70. data/rbi/phoebe/models/ref/hotspot_list_params.rbi +6 -0
  71. data/rbi/phoebe/models/ref/region/adjacent_list_params.rbi +13 -5
  72. data/rbi/phoebe/models/ref/region/info_retrieve_params.rbi +6 -0
  73. data/rbi/phoebe/models/ref/region/list_list_params.rbi +6 -0
  74. data/rbi/phoebe/models/ref/taxonomy/form_list_params.rbi +13 -5
  75. data/rbi/phoebe/models/ref/taxonomy/species_group_list_params.rbi +14 -0
  76. data/rbi/phoebe/resources/data/observations/geo/recent/notable.rbi +5 -0
  77. data/rbi/phoebe/resources/data/observations/geo/recent/species.rbi +5 -0
  78. data/rbi/phoebe/resources/data/observations/geo/recent.rbi +15 -0
  79. data/rbi/phoebe/resources/data/observations/geo.rbi +5 -0
  80. data/rbi/phoebe/resources/data/observations/nearest/geo_species.rbi +5 -0
  81. data/rbi/phoebe/resources/data/observations/nearest.rbi +5 -0
  82. data/rbi/phoebe/resources/data/observations/recent/historic.rbi +8 -3
  83. data/rbi/phoebe/resources/data/observations/recent/notable.rbi +5 -0
  84. data/rbi/phoebe/resources/data/observations/recent/species.rbi +5 -0
  85. data/rbi/phoebe/resources/data/observations/recent.rbi +20 -0
  86. data/rbi/phoebe/resources/data/observations.rbi +5 -0
  87. data/rbi/phoebe/resources/product/checklist.rbi +5 -0
  88. data/rbi/phoebe/resources/product/lists/historical.rbi +5 -0
  89. data/rbi/phoebe/resources/product/lists.rbi +10 -0
  90. data/rbi/phoebe/resources/product/species_list.rbi +5 -0
  91. data/rbi/phoebe/resources/product/stats.rbi +5 -0
  92. data/rbi/phoebe/resources/product/top100.rbi +5 -0
  93. data/rbi/phoebe/resources/product.rbi +25 -0
  94. data/rbi/phoebe/resources/ref/hotspot/geo.rbi +2 -0
  95. data/rbi/phoebe/resources/ref/hotspot/info.rbi +2 -0
  96. data/rbi/phoebe/resources/ref/hotspot.rbi +6 -0
  97. data/rbi/phoebe/resources/ref/region/adjacent.rbi +1 -0
  98. data/rbi/phoebe/resources/ref/region/info.rbi +1 -0
  99. data/rbi/phoebe/resources/ref/region/list.rbi +1 -0
  100. data/rbi/phoebe/resources/ref/region.rbi +3 -0
  101. data/rbi/phoebe/resources/ref.rbi +2 -0
  102. data/sig/phoebe/internal/util.rbs +14 -0
  103. data/sig/phoebe/models/data/observations/geo/recent/specie_list_params.rbs +5 -0
  104. data/sig/phoebe/models/data/observations/nearest/geo_specie_list_params.rbs +5 -0
  105. data/sig/phoebe/models/data/observations/recent/historic_list_params.rbs +5 -0
  106. data/sig/phoebe/models/data/observations/recent/notable_list_params.rbs +5 -0
  107. data/sig/phoebe/models/data/observations/recent/specie_retrieve_params.rbs +5 -0
  108. data/sig/phoebe/models/data/observations/recent_list_params.rbs +5 -0
  109. data/sig/phoebe/models/product/checklist_view_params.rbs +11 -3
  110. data/sig/phoebe/models/product/list_retrieve_params.rbs +6 -1
  111. data/sig/phoebe/models/product/lists/historical_retrieve_params.rbs +5 -0
  112. data/sig/phoebe/models/product/species_list_list_params.rbs +11 -3
  113. data/sig/phoebe/models/product/stat_retrieve_params.rbs +5 -1
  114. data/sig/phoebe/models/product/top100_retrieve_params.rbs +5 -0
  115. data/sig/phoebe/models/ref/hotspot/info_retrieve_params.rbs +11 -3
  116. data/sig/phoebe/models/ref/hotspot_list_params.rbs +9 -1
  117. data/sig/phoebe/models/ref/region/adjacent_list_params.rbs +11 -3
  118. data/sig/phoebe/models/ref/region/info_retrieve_params.rbs +5 -0
  119. data/sig/phoebe/models/ref/region/list_list_params.rbs +5 -0
  120. data/sig/phoebe/models/ref/taxonomy/form_list_params.rbs +11 -3
  121. data/sig/phoebe/models/ref/taxonomy/species_group_list_params.rbs +8 -1
  122. metadata +16 -2
@@ -12,6 +12,9 @@ module Phoebe
12
12
  T.any(Phoebe::Ref::HotspotListParams, Phoebe::Internal::AnyHash)
13
13
  end
14
14
 
15
+ sig { returns(String) }
16
+ attr_accessor :region_code
17
+
15
18
  # The number of days back to fetch hotspots.
16
19
  sig { returns(T.nilable(Integer)) }
17
20
  attr_reader :back
@@ -30,12 +33,14 @@ module Phoebe
30
33
 
31
34
  sig do
32
35
  params(
36
+ region_code: String,
33
37
  back: Integer,
34
38
  fmt: Phoebe::Ref::HotspotListParams::Fmt::OrSymbol,
35
39
  request_options: Phoebe::RequestOptions::OrHash
36
40
  ).returns(T.attached_class)
37
41
  end
38
42
  def self.new(
43
+ region_code:,
39
44
  # The number of days back to fetch hotspots.
40
45
  back: nil,
41
46
  # Fetch the records in CSV or JSON format.
@@ -47,6 +52,7 @@ module Phoebe
47
52
  sig do
48
53
  override.returns(
49
54
  {
55
+ region_code: String,
50
56
  back: Integer,
51
57
  fmt: Phoebe::Ref::HotspotListParams::Fmt::OrSymbol,
52
58
  request_options: Phoebe::RequestOptions
@@ -16,15 +16,23 @@ module Phoebe
16
16
  )
17
17
  end
18
18
 
19
+ sig { returns(String) }
20
+ attr_accessor :region_code
21
+
19
22
  sig do
20
- params(request_options: Phoebe::RequestOptions::OrHash).returns(
21
- T.attached_class
22
- )
23
+ params(
24
+ region_code: String,
25
+ request_options: Phoebe::RequestOptions::OrHash
26
+ ).returns(T.attached_class)
23
27
  end
24
- def self.new(request_options: {})
28
+ def self.new(region_code:, request_options: {})
25
29
  end
26
30
 
27
- sig { override.returns({ request_options: Phoebe::RequestOptions }) }
31
+ sig do
32
+ override.returns(
33
+ { region_code: String, request_options: Phoebe::RequestOptions }
34
+ )
35
+ end
28
36
  def to_hash
29
37
  end
30
38
  end
@@ -16,6 +16,9 @@ module Phoebe
16
16
  )
17
17
  end
18
18
 
19
+ sig { returns(String) }
20
+ attr_accessor :region_code
21
+
19
22
  # The characters used to separate elements in the name.
20
23
  sig { returns(T.nilable(String)) }
21
24
  attr_reader :delim
@@ -43,6 +46,7 @@ module Phoebe
43
46
 
44
47
  sig do
45
48
  params(
49
+ region_code: String,
46
50
  delim: String,
47
51
  region_name_format:
48
52
  Phoebe::Ref::Region::InfoRetrieveParams::RegionNameFormat::OrSymbol,
@@ -50,6 +54,7 @@ module Phoebe
50
54
  ).returns(T.attached_class)
51
55
  end
52
56
  def self.new(
57
+ region_code:,
53
58
  # The characters used to separate elements in the name.
54
59
  delim: nil,
55
60
  # Control how the name is displayed.
@@ -61,6 +66,7 @@ module Phoebe
61
66
  sig do
62
67
  override.returns(
63
68
  {
69
+ region_code: String,
64
70
  delim: String,
65
71
  region_name_format:
66
72
  Phoebe::Ref::Region::InfoRetrieveParams::RegionNameFormat::OrSymbol,
@@ -19,6 +19,9 @@ module Phoebe
19
19
  sig { returns(String) }
20
20
  attr_accessor :region_type
21
21
 
22
+ sig { returns(String) }
23
+ attr_accessor :parent_region_code
24
+
22
25
  # Fetch the records in CSV or JSON format.
23
26
  sig do
24
27
  returns(
@@ -35,12 +38,14 @@ module Phoebe
35
38
  sig do
36
39
  params(
37
40
  region_type: String,
41
+ parent_region_code: String,
38
42
  fmt: Phoebe::Ref::Region::ListListParams::Fmt::OrSymbol,
39
43
  request_options: Phoebe::RequestOptions::OrHash
40
44
  ).returns(T.attached_class)
41
45
  end
42
46
  def self.new(
43
47
  region_type:,
48
+ parent_region_code:,
44
49
  # Fetch the records in CSV or JSON format.
45
50
  fmt: nil,
46
51
  request_options: {}
@@ -51,6 +56,7 @@ module Phoebe
51
56
  override.returns(
52
57
  {
53
58
  region_type: String,
59
+ parent_region_code: String,
54
60
  fmt: Phoebe::Ref::Region::ListListParams::Fmt::OrSymbol,
55
61
  request_options: Phoebe::RequestOptions
56
62
  }
@@ -16,15 +16,23 @@ module Phoebe
16
16
  )
17
17
  end
18
18
 
19
+ sig { returns(String) }
20
+ attr_accessor :species_code
21
+
19
22
  sig do
20
- params(request_options: Phoebe::RequestOptions::OrHash).returns(
21
- T.attached_class
22
- )
23
+ params(
24
+ species_code: String,
25
+ request_options: Phoebe::RequestOptions::OrHash
26
+ ).returns(T.attached_class)
23
27
  end
24
- def self.new(request_options: {})
28
+ def self.new(species_code:, request_options: {})
25
29
  end
26
30
 
27
- sig { override.returns({ request_options: Phoebe::RequestOptions }) }
31
+ sig do
32
+ override.returns(
33
+ { species_code: String, request_options: Phoebe::RequestOptions }
34
+ )
35
+ end
28
36
  def to_hash
29
37
  end
30
38
  end
@@ -16,6 +16,14 @@ module Phoebe
16
16
  )
17
17
  end
18
18
 
19
+ # The order in which groups are returned.
20
+ sig do
21
+ returns(
22
+ Phoebe::Ref::Taxonomy::SpeciesGroupListParams::SpeciesGrouping::OrSymbol
23
+ )
24
+ end
25
+ attr_accessor :species_grouping
26
+
19
27
  # Locale for species group names. English names are returned for any non-listed
20
28
  # locale or any non-translated group name.
21
29
  sig { returns(T.nilable(String)) }
@@ -26,11 +34,15 @@ module Phoebe
26
34
 
27
35
  sig do
28
36
  params(
37
+ species_grouping:
38
+ Phoebe::Ref::Taxonomy::SpeciesGroupListParams::SpeciesGrouping::OrSymbol,
29
39
  group_name_locale: String,
30
40
  request_options: Phoebe::RequestOptions::OrHash
31
41
  ).returns(T.attached_class)
32
42
  end
33
43
  def self.new(
44
+ # The order in which groups are returned.
45
+ species_grouping:,
34
46
  # Locale for species group names. English names are returned for any non-listed
35
47
  # locale or any non-translated group name.
36
48
  group_name_locale: nil,
@@ -41,6 +53,8 @@ module Phoebe
41
53
  sig do
42
54
  override.returns(
43
55
  {
56
+ species_grouping:
57
+ Phoebe::Ref::Taxonomy::SpeciesGroupListParams::SpeciesGrouping::OrSymbol,
44
58
  group_name_locale: String,
45
59
  request_options: Phoebe::RequestOptions
46
60
  }
@@ -6,6 +6,11 @@ module Phoebe
6
6
  class Observations
7
7
  class Geo
8
8
  class Recent
9
+ # The data/obs end-points are used to fetch observations submitted to eBird in
10
+ # checklists. There are two categories of end-point: 1. Fetch observations for a
11
+ # specific country, region or location. 2. Fetch observations for nearby
12
+ # locations - up to a distance of 50km. Each end-point supports optional query
13
+ # parameters which allow you to filter the list of observations returned.
9
14
  class Notable
10
15
  # Get the list of notable observations (up to 30 days ago) of birds seen at
11
16
  # locations within a radius of up to 50 kilometers, from a given set of
@@ -6,6 +6,11 @@ module Phoebe
6
6
  class Observations
7
7
  class Geo
8
8
  class Recent
9
+ # The data/obs end-points are used to fetch observations submitted to eBird in
10
+ # checklists. There are two categories of end-point: 1. Fetch observations for a
11
+ # specific country, region or location. 2. Fetch observations for nearby
12
+ # locations - up to a distance of 50km. Each end-point supports optional query
13
+ # parameters which allow you to filter the list of observations returned.
9
14
  class Species
10
15
  # Get all observations of a species, seen up to 30 days ago, at any location
11
16
  # within a radius of up to 50 kilometers, from a given set of coordinates. Results
@@ -5,7 +5,17 @@ module Phoebe
5
5
  class Data
6
6
  class Observations
7
7
  class Geo
8
+ # The data/obs end-points are used to fetch observations submitted to eBird in
9
+ # checklists. There are two categories of end-point: 1. Fetch observations for a
10
+ # specific country, region or location. 2. Fetch observations for nearby
11
+ # locations - up to a distance of 50km. Each end-point supports optional query
12
+ # parameters which allow you to filter the list of observations returned.
8
13
  class Recent
14
+ # The data/obs end-points are used to fetch observations submitted to eBird in
15
+ # checklists. There are two categories of end-point: 1. Fetch observations for a
16
+ # specific country, region or location. 2. Fetch observations for nearby
17
+ # locations - up to a distance of 50km. Each end-point supports optional query
18
+ # parameters which allow you to filter the list of observations returned.
9
19
  sig do
10
20
  returns(
11
21
  Phoebe::Resources::Data::Observations::Geo::Recent::Species
@@ -13,6 +23,11 @@ module Phoebe
13
23
  end
14
24
  attr_reader :species
15
25
 
26
+ # The data/obs end-points are used to fetch observations submitted to eBird in
27
+ # checklists. There are two categories of end-point: 1. Fetch observations for a
28
+ # specific country, region or location. 2. Fetch observations for nearby
29
+ # locations - up to a distance of 50km. Each end-point supports optional query
30
+ # parameters which allow you to filter the list of observations returned.
16
31
  sig do
17
32
  returns(
18
33
  Phoebe::Resources::Data::Observations::Geo::Recent::Notable
@@ -5,6 +5,11 @@ module Phoebe
5
5
  class Data
6
6
  class Observations
7
7
  class Geo
8
+ # The data/obs end-points are used to fetch observations submitted to eBird in
9
+ # checklists. There are two categories of end-point: 1. Fetch observations for a
10
+ # specific country, region or location. 2. Fetch observations for nearby
11
+ # locations - up to a distance of 50km. Each end-point supports optional query
12
+ # parameters which allow you to filter the list of observations returned.
8
13
  sig { returns(Phoebe::Resources::Data::Observations::Geo::Recent) }
9
14
  attr_reader :recent
10
15
 
@@ -5,6 +5,11 @@ module Phoebe
5
5
  class Data
6
6
  class Observations
7
7
  class Nearest
8
+ # The data/obs end-points are used to fetch observations submitted to eBird in
9
+ # checklists. There are two categories of end-point: 1. Fetch observations for a
10
+ # specific country, region or location. 2. Fetch observations for nearby
11
+ # locations - up to a distance of 50km. Each end-point supports optional query
12
+ # parameters which allow you to filter the list of observations returned.
8
13
  class GeoSpecies
9
14
  # Find the nearest locations where a species has been seen recently. #### Notes
10
15
  # The species code is typically a 6-letter code, e.g. barswa for Barn Swallow. You
@@ -5,6 +5,11 @@ module Phoebe
5
5
  class Data
6
6
  class Observations
7
7
  class Nearest
8
+ # The data/obs end-points are used to fetch observations submitted to eBird in
9
+ # checklists. There are two categories of end-point: 1. Fetch observations for a
10
+ # specific country, region or location. 2. Fetch observations for nearby
11
+ # locations - up to a distance of 50km. Each end-point supports optional query
12
+ # parameters which allow you to filter the list of observations returned.
8
13
  sig do
9
14
  returns(Phoebe::Resources::Data::Observations::Nearest::GeoSpecies)
10
15
  end
@@ -5,6 +5,11 @@ module Phoebe
5
5
  class Data
6
6
  class Observations
7
7
  class Recent
8
+ # The data/obs end-points are used to fetch observations submitted to eBird in
9
+ # checklists. There are two categories of end-point: 1. Fetch observations for a
10
+ # specific country, region or location. 2. Fetch observations for nearby
11
+ # locations - up to a distance of 50km. Each end-point supports optional query
12
+ # parameters which allow you to filter the list of observations returned.
8
13
  class Historic
9
14
  # Get a list of all taxa seen in a country, region or location on a specific date,
10
15
  # with the specific observations determined by the "rank" parameter (defaults to
@@ -32,13 +37,13 @@ module Phoebe
32
37
  ).returns(T::Array[Phoebe::Data::Observation])
33
38
  end
34
39
  def list(
35
- # Path param:
40
+ # Path param
36
41
  d,
37
42
  # Path param: The country, subnational1, subnational2 or location code.
38
43
  region_code:,
39
- # Path param:
44
+ # Path param
40
45
  y_:,
41
- # Path param:
46
+ # Path param
42
47
  m:,
43
48
  # Query param: Only fetch observations from these taxonomic categories
44
49
  cat: nil,
@@ -5,6 +5,11 @@ module Phoebe
5
5
  class Data
6
6
  class Observations
7
7
  class Recent
8
+ # The data/obs end-points are used to fetch observations submitted to eBird in
9
+ # checklists. There are two categories of end-point: 1. Fetch observations for a
10
+ # specific country, region or location. 2. Fetch observations for nearby
11
+ # locations - up to a distance of 50km. Each end-point supports optional query
12
+ # parameters which allow you to filter the list of observations returned.
8
13
  class Notable
9
14
  # Get the list of recent, notable observations (up to 30 days ago) of birds seen
10
15
  # in a country, region or location. Notable observations can be for locally or
@@ -5,6 +5,11 @@ module Phoebe
5
5
  class Data
6
6
  class Observations
7
7
  class Recent
8
+ # The data/obs end-points are used to fetch observations submitted to eBird in
9
+ # checklists. There are two categories of end-point: 1. Fetch observations for a
10
+ # specific country, region or location. 2. Fetch observations for nearby
11
+ # locations - up to a distance of 50km. Each end-point supports optional query
12
+ # parameters which allow you to filter the list of observations returned.
8
13
  class Species
9
14
  # Get the recent observations, up to 30 days ago, of a particular species in a
10
15
  # country, region or location. Results include only the most recent observation
@@ -4,17 +4,37 @@ module Phoebe
4
4
  module Resources
5
5
  class Data
6
6
  class Observations
7
+ # The data/obs end-points are used to fetch observations submitted to eBird in
8
+ # checklists. There are two categories of end-point: 1. Fetch observations for a
9
+ # specific country, region or location. 2. Fetch observations for nearby
10
+ # locations - up to a distance of 50km. Each end-point supports optional query
11
+ # parameters which allow you to filter the list of observations returned.
7
12
  class Recent
13
+ # The data/obs end-points are used to fetch observations submitted to eBird in
14
+ # checklists. There are two categories of end-point: 1. Fetch observations for a
15
+ # specific country, region or location. 2. Fetch observations for nearby
16
+ # locations - up to a distance of 50km. Each end-point supports optional query
17
+ # parameters which allow you to filter the list of observations returned.
8
18
  sig do
9
19
  returns(Phoebe::Resources::Data::Observations::Recent::Notable)
10
20
  end
11
21
  attr_reader :notable
12
22
 
23
+ # The data/obs end-points are used to fetch observations submitted to eBird in
24
+ # checklists. There are two categories of end-point: 1. Fetch observations for a
25
+ # specific country, region or location. 2. Fetch observations for nearby
26
+ # locations - up to a distance of 50km. Each end-point supports optional query
27
+ # parameters which allow you to filter the list of observations returned.
13
28
  sig do
14
29
  returns(Phoebe::Resources::Data::Observations::Recent::Species)
15
30
  end
16
31
  attr_reader :species
17
32
 
33
+ # The data/obs end-points are used to fetch observations submitted to eBird in
34
+ # checklists. There are two categories of end-point: 1. Fetch observations for a
35
+ # specific country, region or location. 2. Fetch observations for nearby
36
+ # locations - up to a distance of 50km. Each end-point supports optional query
37
+ # parameters which allow you to filter the list of observations returned.
18
38
  sig do
19
39
  returns(Phoebe::Resources::Data::Observations::Recent::Historic)
20
40
  end
@@ -4,6 +4,11 @@ module Phoebe
4
4
  module Resources
5
5
  class Data
6
6
  class Observations
7
+ # The data/obs end-points are used to fetch observations submitted to eBird in
8
+ # checklists. There are two categories of end-point: 1. Fetch observations for a
9
+ # specific country, region or location. 2. Fetch observations for nearby
10
+ # locations - up to a distance of 50km. Each end-point supports optional query
11
+ # parameters which allow you to filter the list of observations returned.
7
12
  sig { returns(Phoebe::Resources::Data::Observations::Recent) }
8
13
  attr_reader :recent
9
14
 
@@ -3,6 +3,11 @@
3
3
  module Phoebe
4
4
  module Resources
5
5
  class Product
6
+ # The product end-points make it easy to get the information shown in various
7
+ # pages on the eBird web site: 1. The Top 100 contributors on a given date. 2. The
8
+ # checklists submitted on a given date. 3. The most recent checklists
9
+ # submitted. 4. A summary of the checklists submitted on a given date. 5. The
10
+ # details and all the observations of a checklist.
6
11
  class Checklist
7
12
  # Get the details and observations of a checklist.
8
13
  #
@@ -4,6 +4,11 @@ module Phoebe
4
4
  module Resources
5
5
  class Product
6
6
  class Lists
7
+ # The product end-points make it easy to get the information shown in various
8
+ # pages on the eBird web site: 1. The Top 100 contributors on a given date. 2. The
9
+ # checklists submitted on a given date. 3. The most recent checklists
10
+ # submitted. 4. A summary of the checklists submitted on a given date. 5. The
11
+ # details and all the observations of a checklist.
7
12
  class Historical
8
13
  # Get information on the checklists submitted on a given date for a country or
9
14
  # region.
@@ -3,7 +3,17 @@
3
3
  module Phoebe
4
4
  module Resources
5
5
  class Product
6
+ # The data/obs end-points are used to fetch observations submitted to eBird in
7
+ # checklists. There are two categories of end-point: 1. Fetch observations for a
8
+ # specific country, region or location. 2. Fetch observations for nearby
9
+ # locations - up to a distance of 50km. Each end-point supports optional query
10
+ # parameters which allow you to filter the list of observations returned.
6
11
  class Lists
12
+ # The product end-points make it easy to get the information shown in various
13
+ # pages on the eBird web site: 1. The Top 100 contributors on a given date. 2. The
14
+ # checklists submitted on a given date. 3. The most recent checklists
15
+ # submitted. 4. A summary of the checklists submitted on a given date. 5. The
16
+ # details and all the observations of a checklist.
7
17
  sig { returns(Phoebe::Resources::Product::Lists::Historical) }
8
18
  attr_reader :historical
9
19
 
@@ -3,6 +3,11 @@
3
3
  module Phoebe
4
4
  module Resources
5
5
  class Product
6
+ # The product end-points make it easy to get the information shown in various
7
+ # pages on the eBird web site: 1. The Top 100 contributors on a given date. 2. The
8
+ # checklists submitted on a given date. 3. The most recent checklists
9
+ # submitted. 4. A summary of the checklists submitted on a given date. 5. The
10
+ # details and all the observations of a checklist.
6
11
  class SpeciesList
7
12
  # Get a list of species codes ever seen in a region, in taxonomic order (species
8
13
  # taxa only)
@@ -3,6 +3,11 @@
3
3
  module Phoebe
4
4
  module Resources
5
5
  class Product
6
+ # The product end-points make it easy to get the information shown in various
7
+ # pages on the eBird web site: 1. The Top 100 contributors on a given date. 2. The
8
+ # checklists submitted on a given date. 3. The most recent checklists
9
+ # submitted. 4. A summary of the checklists submitted on a given date. 5. The
10
+ # details and all the observations of a checklist.
6
11
  class Stats
7
12
  # Get a summary of the number of checklist submitted, species seen and
8
13
  # contributors on a given date for a country or region.
@@ -3,6 +3,11 @@
3
3
  module Phoebe
4
4
  module Resources
5
5
  class Product
6
+ # The product end-points make it easy to get the information shown in various
7
+ # pages on the eBird web site: 1. The Top 100 contributors on a given date. 2. The
8
+ # checklists submitted on a given date. 3. The most recent checklists
9
+ # submitted. 4. A summary of the checklists submitted on a given date. 5. The
10
+ # details and all the observations of a checklist.
6
11
  class Top100
7
12
  # Get the top 100 contributors on a given date for a country or region.
8
13
  #
@@ -3,18 +3,43 @@
3
3
  module Phoebe
4
4
  module Resources
5
5
  class Product
6
+ # The data/obs end-points are used to fetch observations submitted to eBird in
7
+ # checklists. There are two categories of end-point: 1. Fetch observations for a
8
+ # specific country, region or location. 2. Fetch observations for nearby
9
+ # locations - up to a distance of 50km. Each end-point supports optional query
10
+ # parameters which allow you to filter the list of observations returned.
6
11
  sig { returns(Phoebe::Resources::Product::Lists) }
7
12
  attr_reader :lists
8
13
 
14
+ # The product end-points make it easy to get the information shown in various
15
+ # pages on the eBird web site: 1. The Top 100 contributors on a given date. 2. The
16
+ # checklists submitted on a given date. 3. The most recent checklists
17
+ # submitted. 4. A summary of the checklists submitted on a given date. 5. The
18
+ # details and all the observations of a checklist.
9
19
  sig { returns(Phoebe::Resources::Product::Top100) }
10
20
  attr_reader :top100
11
21
 
22
+ # The product end-points make it easy to get the information shown in various
23
+ # pages on the eBird web site: 1. The Top 100 contributors on a given date. 2. The
24
+ # checklists submitted on a given date. 3. The most recent checklists
25
+ # submitted. 4. A summary of the checklists submitted on a given date. 5. The
26
+ # details and all the observations of a checklist.
12
27
  sig { returns(Phoebe::Resources::Product::Stats) }
13
28
  attr_reader :stats
14
29
 
30
+ # The product end-points make it easy to get the information shown in various
31
+ # pages on the eBird web site: 1. The Top 100 contributors on a given date. 2. The
32
+ # checklists submitted on a given date. 3. The most recent checklists
33
+ # submitted. 4. A summary of the checklists submitted on a given date. 5. The
34
+ # details and all the observations of a checklist.
15
35
  sig { returns(Phoebe::Resources::Product::SpeciesList) }
16
36
  attr_reader :species_list
17
37
 
38
+ # The product end-points make it easy to get the information shown in various
39
+ # pages on the eBird web site: 1. The Top 100 contributors on a given date. 2. The
40
+ # checklists submitted on a given date. 3. The most recent checklists
41
+ # submitted. 4. A summary of the checklists submitted on a given date. 5. The
42
+ # details and all the observations of a checklist.
18
43
  sig { returns(Phoebe::Resources::Product::Checklist) }
19
44
  attr_reader :checklist
20
45
 
@@ -4,6 +4,8 @@ module Phoebe
4
4
  module Resources
5
5
  class Ref
6
6
  class Hotspot
7
+ # With the ref/hotspot end-points you can find the hotspots for a given country or
8
+ # region or nearby hotspots
7
9
  class Geo
8
10
  # Get the list of hotspots, within a radius of up to 50 kilometers, from a given
9
11
  # set of coordinates.
@@ -4,6 +4,8 @@ module Phoebe
4
4
  module Resources
5
5
  class Ref
6
6
  class Hotspot
7
+ # With the ref/hotspot end-points you can find the hotspots for a given country or
8
+ # region or nearby hotspots
7
9
  class Info
8
10
  # Get information on the location of a hotspot. #### Notes This API call only
9
11
  # works for hotspots. If you pass the location code for a private location or an
@@ -3,10 +3,16 @@
3
3
  module Phoebe
4
4
  module Resources
5
5
  class Ref
6
+ # With the ref/hotspot end-points you can find the hotspots for a given country or
7
+ # region or nearby hotspots
6
8
  class Hotspot
9
+ # With the ref/hotspot end-points you can find the hotspots for a given country or
10
+ # region or nearby hotspots
7
11
  sig { returns(Phoebe::Resources::Ref::Hotspot::Geo) }
8
12
  attr_reader :geo
9
13
 
14
+ # With the ref/hotspot end-points you can find the hotspots for a given country or
15
+ # region or nearby hotspots
10
16
  sig { returns(Phoebe::Resources::Ref::Hotspot::Info) }
11
17
  attr_reader :info
12
18
 
@@ -4,6 +4,7 @@ module Phoebe
4
4
  module Resources
5
5
  class Ref
6
6
  class Region
7
+ # With the ref/geo end-point you can find a country's or region's neighbours.
7
8
  class Adjacent
8
9
  # Get the list of countries or regions that share a border with this one. ####
9
10
  # Notes Only subnational2 codes in the United States, New Zealand, or Mexico are
@@ -4,6 +4,7 @@ module Phoebe
4
4
  module Resources
5
5
  class Ref
6
6
  class Region
7
+ # The ref/region end-points return information on regions.
7
8
  class Info
8
9
  # Get information on the name and geographical area covered by a region.
9
10
  #
@@ -4,6 +4,7 @@ module Phoebe
4
4
  module Resources
5
5
  class Ref
6
6
  class Region
7
+ # The ref/region end-points return information on regions.
7
8
  class List
8
9
  # Get the list of sub-regions for a given country or region. #### Notes Not all
9
10
  # combinations of region type and region code are valid. You can fetch all the
@@ -4,12 +4,15 @@ module Phoebe
4
4
  module Resources
5
5
  class Ref
6
6
  class Region
7
+ # With the ref/geo end-point you can find a country's or region's neighbours.
7
8
  sig { returns(Phoebe::Resources::Ref::Region::Adjacent) }
8
9
  attr_reader :adjacent
9
10
 
11
+ # The ref/region end-points return information on regions.
10
12
  sig { returns(Phoebe::Resources::Ref::Region::Info) }
11
13
  attr_reader :info
12
14
 
15
+ # The ref/region end-points return information on regions.
13
16
  sig { returns(Phoebe::Resources::Ref::Region::List) }
14
17
  attr_reader :list
15
18
 
@@ -6,6 +6,8 @@ module Phoebe
6
6
  sig { returns(Phoebe::Resources::Ref::Region) }
7
7
  attr_reader :region
8
8
 
9
+ # With the ref/hotspot end-points you can find the hotspots for a given country or
10
+ # region or nearby hotspots
9
11
  sig { returns(Phoebe::Resources::Ref::Hotspot) }
10
12
  attr_reader :hotspot
11
13
 
@@ -45,8 +45,12 @@ module Phoebe
45
45
  -> top?
46
46
  } -> top?
47
47
 
48
+ RFC_3986_NOT_PCHARS: Regexp
49
+
48
50
  def self?.uri_origin: (URI::Generic uri) -> String
49
51
 
52
+ def self?.encode_path: (String | Integer path) -> String
53
+
50
54
  def self?.interpolate_path: (String | ::Array[String] path) -> String
51
55
 
52
56
  def self?.decode_query: (String? query) -> ::Hash[String, ::Array[String]]
@@ -106,6 +110,16 @@ module Phoebe
106
110
  JSON_CONTENT: Regexp
107
111
  JSONL_CONTENT: Regexp
108
112
 
113
+ def encode_query_params: (
114
+ ::Hash[Symbol, top] query
115
+ ) -> ::Hash[Symbol, top]
116
+
117
+ private def write_query_param_element!: (
118
+ ::Hash[Symbol, top] collection,
119
+ String key,
120
+ top element
121
+ ) -> nil
122
+
109
123
  def self?.write_multipart_content: (
110
124
  Enumerator::Yielder y,
111
125
  val: top,