Sha256: 9eae66fff1a9a5938a12080db10219adb279811704665522547b832f50d74083

Contents?: true

Size: 482 Bytes

Versions: 6

Compression:

Stored size: 482 Bytes

Contents

# frozen_string_literal: true

require "core"
require "ghub"

module Pennyworth
  module Integrations
    module GitHub
      # Provides low-level access to the GitHub API.
      class Client
        def initialize endpoint: Ghub::Endpoints::Repositories::Root.new
          @endpoint = endpoint
        end

        def get(path) = endpoint.index(*path.split("/")).value_or(Core::EMPTY_ARRAY).map(&:to_h)

        private

        attr_reader :endpoint
      end
    end
  end
end

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
pennyworth-15.4.1 lib/pennyworth/integrations/git_hub/client.rb
pennyworth-15.4.0 lib/pennyworth/integrations/git_hub/client.rb
pennyworth-15.3.0 lib/pennyworth/integrations/git_hub/client.rb
pennyworth-15.2.0 lib/pennyworth/integrations/git_hub/client.rb
pennyworth-15.1.1 lib/pennyworth/integrations/git_hub/client.rb
pennyworth-15.1.0 lib/pennyworth/integrations/git_hub/client.rb