Sha256: 1bbdb0fa00e469e331868edcbd7bc7ce986f6bcc427e58d1190d9d0900e43fe9
Contents?: true
Size: 1.55 KB
Versions: 4
Compression:
Stored size: 1.55 KB
Contents
# frozen_string_literal: true module Pinata class Client API_VERSION = "v3" BASE_DOMAIN = "pinata.cloud" API_BASE_URL = "https://api.#{BASE_DOMAIN}/" API_URL = "#{API_BASE_URL}#{API_VERSION}/" UPLOADS_URL = "https://uploads.#{BASE_DOMAIN}/#{API_VERSION}/" attr_reader :pinata_jwt, :adapter def initialize(pinata_jwt:, adapter: Faraday.default_adapter, stubs: nil) @pinata_jwt = pinata_jwt @adapter = adapter # Test stubs for requests @stubs = stubs end def authentication AuthenticationResource.new(self) end def files FilesResource.new(self) end def test_connection @test_connection ||= Faraday.new(url: API_BASE_URL) do |conn| conn.request :authorization, :Bearer, pinata_jwt conn.response :json, content_type: "application/json" conn.adapter adapter, @stubs end end def upload_connection @upload_connection ||= Faraday.new(url: UPLOADS_URL) do |conn| conn.request :authorization, :Bearer, pinata_jwt conn.request :multipart conn.request :json conn.response :json, content_type: "application/json" conn.adapter adapter, @stubs end end def api_connection @api_connection ||= Faraday.new(url: API_URL) do |conn| conn.request :authorization, :Bearer, pinata_jwt conn.request :json conn.response :json, content_type: "application/json" conn.adapter adapter, @stubs end end def inspect "#<Pinata::Client>" end end end
Version data entries
4 entries across 4 versions & 1 rubygems
Version | Path |
---|---|
pinata-1.0.3 | lib/pinata/client.rb |
pinata-1.0.2 | lib/pinata/client.rb |
pinata-1.0.1 | lib/pinata/client.rb |
pinata-1.0.0 | lib/pinata/client.rb |