Class: Supabase::Client

Inherits:
Object
  • Object
show all
Defined in:
lib/supabase/client.rb

Constant Summary collapse

DEFAULT_SCHEMA =
'public'

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(supabase_url: '', supabase_key: '', schema: DEFAULT_SCHEMA) ⇒ Client

Returns a new instance of Client.



9
10
11
12
13
# File 'lib/supabase/client.rb', line 9

def initialize(supabase_url: '', supabase_key: '', schema: DEFAULT_SCHEMA)
  self.supabase_url = supabase_url
  self.supabase_key = supabase_key
  self.schema = schema
end

Instance Attribute Details

#schemaObject

Returns the value of attribute schema.



7
8
9
# File 'lib/supabase/client.rb', line 7

def schema
  @schema
end

#supabase_keyObject

Returns the value of attribute supabase_key.



7
8
9
# File 'lib/supabase/client.rb', line 7

def supabase_key
  @supabase_key
end

#supabase_urlObject

Returns the value of attribute supabase_url.



7
8
9
# File 'lib/supabase/client.rb', line 7

def supabase_url
  @supabase_url
end

Class Method Details

.clientObject



33
34
35
# File 'lib/supabase/client.rb', line 33

def client
  @client ||= Client.new
end

.create_client {|client| ... } ⇒ Object

Yields:



27
28
29
30
31
# File 'lib/supabase/client.rb', line 27

def create_client
  yield(client)

  client
end

Instance Method Details

#auth_headersObject



19
20
21
22
23
24
# File 'lib/supabase/client.rb', line 19

def auth_headers
  {
    apikey: supabase_key,
    Authorization: "Bearer #{supabase_key}"
  }
end

#rest_urlObject



15
16
17
# File 'lib/supabase/client.rb', line 15

def rest_url
  "#{supabase_url}/rest/v1"
end