avm-eac_github_base0 0.1.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 ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA256:
3
+ metadata.gz: b329c4e5eed8316e69106dd44e5e10c8acb5175945a55e4c4bbba4e00cdaaf68
4
+ data.tar.gz: ad39653a8d4bbfe8155d357ddc0312591ea1c7433b2be3eea6c1764da84a288a
5
+ SHA512:
6
+ metadata.gz: ade9f973d437307946f9ebd5c46f91d5c812d736235fe7f8e8b2f9c969403a4e0c97b9afe7f05f4600e32581453c167efdee1068e6b4dd66405b3258fc6fc092
7
+ data.tar.gz: c1a528dd3c39881d6ef5d62d3e962e5ccf11f5c2f05270ce7c4178c7feb46a81c08f47253ea994b1cb68d178f1528e33ec413090a1bc3bbeef23f698e8124cf4
@@ -0,0 +1,24 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'eac_rest/api'
4
+ require 'eac_rest/entity'
5
+ require 'eac_ruby_utils/core_ext'
6
+
7
+ module Avm
8
+ module EacGithubBase0
9
+ class Api < ::EacRest::Api
10
+ class Entity < ::EacRest::Entity
11
+ def all_from_list(entity_class, url_suffix)
12
+ r = []
13
+ while url_suffix.present?
14
+ response = api.request_json(url_suffix).response
15
+ r += response.body_data_or_raise
16
+ .map { |child_data| child_entity(entity_class, child_data) }
17
+ url_suffix = response.link('next')
18
+ end
19
+ r
20
+ end
21
+ end
22
+ end
23
+ end
24
+ end
@@ -0,0 +1,19 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'avm/eac_github_base0/api/entity'
4
+ require 'avm/eac_github_base0/api/repository'
5
+ require 'eac_rest/api'
6
+ require 'eac_ruby_utils/core_ext'
7
+
8
+ module Avm
9
+ module EacGithubBase0
10
+ class Api < ::EacRest::Api
11
+ class Organization < ::Avm::EacGithubBase0::Api::Entity
12
+ # @return [Array<Avm::EacGithubBase0::Api::Repository>]
13
+ def repositories
14
+ all_from_list(::Avm::EacGithubBase0::Api::Repository, "/orgs/#{id}/repos")
15
+ end
16
+ end
17
+ end
18
+ end
19
+ end
@@ -0,0 +1,14 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'avm/eac_github_base0/api/entity'
4
+ require 'eac_rest/api'
5
+ require 'eac_ruby_utils/core_ext'
6
+
7
+ module Avm
8
+ module EacGithubBase0
9
+ class Api < ::EacRest::Api
10
+ class Repository < ::Avm::EacGithubBase0::Api::Entity
11
+ end
12
+ end
13
+ end
14
+ end
@@ -0,0 +1,20 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'avm/eac_github_base0/api/entity'
4
+ require 'avm/eac_github_base0/api/organization'
5
+ require 'eac_rest/api'
6
+ require 'eac_ruby_utils/core_ext'
7
+
8
+ module Avm
9
+ module EacGithubBase0
10
+ class Api < ::EacRest::Api
11
+ class Root < ::Avm::EacGithubBase0::Api::Entity
12
+ # @param id [String]
13
+ # @return [Avm::EacGithubBase0::Api::Organization]
14
+ def organization(id)
15
+ child_entity(::Avm::EacGithubBase0::Api::Organization, id)
16
+ end
17
+ end
18
+ end
19
+ end
20
+ end
@@ -0,0 +1,18 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'eac_rest/api'
4
+ require 'eac_ruby_utils/core_ext'
5
+
6
+ module Avm
7
+ module EacGithubBase0
8
+ class Api < ::EacRest::Api
9
+ DEFAULT_ROOT_URL = 'https://api.github.com'
10
+
11
+ def initialize(root_url = DEFAULT_ROOT_URL)
12
+ super(root_url)
13
+ end
14
+
15
+ require_sub __FILE__
16
+ end
17
+ end
18
+ end
@@ -0,0 +1,7 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Avm
4
+ module EacGithubBase0
5
+ VERSION = '0.1.0'
6
+ end
7
+ end
@@ -0,0 +1,9 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'eac_ruby_utils/core_ext'
4
+
5
+ module Avm
6
+ module EacGithubBase0
7
+ require_sub __FILE__
8
+ end
9
+ end
metadata ADDED
@@ -0,0 +1,102 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: avm-eac_github_base0
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.1.0
5
+ platform: ruby
6
+ authors:
7
+ - Put here the authors
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2023-10-30 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: eac_rest
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - "~>"
18
+ - !ruby/object:Gem::Version
19
+ version: '0.10'
20
+ type: :runtime
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - "~>"
25
+ - !ruby/object:Gem::Version
26
+ version: '0.10'
27
+ - !ruby/object:Gem::Dependency
28
+ name: eac_ruby_utils
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - "~>"
32
+ - !ruby/object:Gem::Version
33
+ version: '0.119'
34
+ - - ">="
35
+ - !ruby/object:Gem::Version
36
+ version: 0.119.2
37
+ type: :runtime
38
+ prerelease: false
39
+ version_requirements: !ruby/object:Gem::Requirement
40
+ requirements:
41
+ - - "~>"
42
+ - !ruby/object:Gem::Version
43
+ version: '0.119'
44
+ - - ">="
45
+ - !ruby/object:Gem::Version
46
+ version: 0.119.2
47
+ - !ruby/object:Gem::Dependency
48
+ name: eac_ruby_gem_support
49
+ requirement: !ruby/object:Gem::Requirement
50
+ requirements:
51
+ - - "~>"
52
+ - !ruby/object:Gem::Version
53
+ version: '0.8'
54
+ - - ">="
55
+ - !ruby/object:Gem::Version
56
+ version: 0.8.2
57
+ type: :development
58
+ prerelease: false
59
+ version_requirements: !ruby/object:Gem::Requirement
60
+ requirements:
61
+ - - "~>"
62
+ - !ruby/object:Gem::Version
63
+ version: '0.8'
64
+ - - ">="
65
+ - !ruby/object:Gem::Version
66
+ version: 0.8.2
67
+ description:
68
+ email:
69
+ executables: []
70
+ extensions: []
71
+ extra_rdoc_files: []
72
+ files:
73
+ - lib/avm/eac_github_base0.rb
74
+ - lib/avm/eac_github_base0/api.rb
75
+ - lib/avm/eac_github_base0/api/entity.rb
76
+ - lib/avm/eac_github_base0/api/organization.rb
77
+ - lib/avm/eac_github_base0/api/repository.rb
78
+ - lib/avm/eac_github_base0/api/root.rb
79
+ - lib/avm/eac_github_base0/version.rb
80
+ homepage:
81
+ licenses: []
82
+ metadata: {}
83
+ post_install_message:
84
+ rdoc_options: []
85
+ require_paths:
86
+ - lib
87
+ required_ruby_version: !ruby/object:Gem::Requirement
88
+ requirements:
89
+ - - ">="
90
+ - !ruby/object:Gem::Version
91
+ version: '2.7'
92
+ required_rubygems_version: !ruby/object:Gem::Requirement
93
+ requirements:
94
+ - - ">="
95
+ - !ruby/object:Gem::Version
96
+ version: '0'
97
+ requirements: []
98
+ rubygems_version: 3.1.6
99
+ signing_key:
100
+ specification_version: 4
101
+ summary: Put here de description.
102
+ test_files: []