@@ -3,78 +3,76 @@ import PostgREST
33import Realtime
44import SupabaseStorage
55
6- /**
7- The main class for accessing Supabase functionality
8-
9- Initialize this class using `.init(supabaseURL: String, supabaseKey: String)`
10-
11- There are four main classes contained by the `Supabase` class.
12- 1. `auth`
13- 2. `database`
14- 3. `realtime`
15- 4. `storage`
16- Each class listed is available under `Supabase.{name}`, eg: `Supabase.auth`
17-
18- For more usage information read the README.md
19- */
6+ /// The main class for accessing Supabase functionality
7+ ///
8+ /// Initialize this class using `.init(supabaseURL: String, supabaseKey: String)`
9+ ///
10+ /// There are four main classes contained by the `Supabase` class.
11+ /// 1. `auth`
12+ /// 2. `database`
13+ /// 3. `realtime`
14+ /// 4. `storage`
15+ /// Each class listed is available under `Supabase.{name}`, eg: `Supabase.auth`
16+ ///
17+ /// For more usage information read the README.md
2018public class SupabaseClient {
21- private var supabaseUrl : String
22- private var supabaseKey : String
23- private var schema : String
24- private var restUrl : String
25- private var realtimeUrl : String
26- private var authUrl : String
27- private var storageUrl : String
19+ private var supabaseUrl : String
20+ private var supabaseKey : String
21+ private var schema : String
22+ private var restUrl : String
23+ private var realtimeUrl : String
24+ private var authUrl : String
25+ private var storageUrl : String
2826
29- /// Auth client for Supabase
30- public var auth : GoTrueClient
27+ /// Auth client for Supabase
28+ public var auth : GoTrueClient
3129
32- /// Storage client for Supabase.
33- public var storage : SupabaseStorageClient {
34- var headers : [ String : String ] = defaultHeaders
35- headers [ " Authorization " ] = " Bearer \( auth. session? . accessToken ?? supabaseKey) "
36- return SupabaseStorageClient ( url: storageUrl, headers: headers)
37- }
30+ /// Storage client for Supabase.
31+ public var storage : SupabaseStorageClient {
32+ var headers : [ String : String ] = defaultHeaders
33+ headers [ " Authorization " ] = " Bearer \( auth. session? . accessToken ?? supabaseKey) "
34+ return SupabaseStorageClient ( url: storageUrl, headers: headers)
35+ }
3836
39- /// Database client for Supabase.
40- public var database : PostgrestClient {
41- var headers : [ String : String ] = defaultHeaders
42- headers [ " Authorization " ] = " Bearer \( auth. session? . accessToken ?? supabaseKey) "
43- return PostgrestClient ( url: restUrl, headers: headers, schema: schema)
44- }
37+ /// Database client for Supabase.
38+ public var database : PostgrestClient {
39+ var headers : [ String : String ] = defaultHeaders
40+ headers [ " Authorization " ] = " Bearer \( auth. session? . accessToken ?? supabaseKey) "
41+ return PostgrestClient ( url: restUrl, headers: headers, schema: schema)
42+ }
4543
46- /// Realtime client for Supabase
47- public var realtime : RealtimeClient
44+ /// Realtime client for Supabase
45+ public var realtime : RealtimeClient
4846
49- private var defaultHeaders : [ String : String ]
47+ private var defaultHeaders : [ String : String ]
5048
51- /// Init `Supabase` with the provided parameters.
52- /// - Parameters:
53- /// - supabaseUrl: Unique Supabase project url
54- /// - supabaseKey: Supabase anonymous API Key
55- /// - schema: Database schema name, defaults to `public`
56- /// - autoRefreshToken: Toggles whether `Supabase.auth` automatically refreshes auth tokens. Defaults to `true`
57- public init (
58- supabaseUrl: String ,
59- supabaseKey: String ,
60- schema: String = " public " ,
61- autoRefreshToken: Bool = true
62- ) {
63- self . supabaseUrl = supabaseUrl
64- self . supabaseKey = supabaseKey
65- self . schema = schema
66- restUrl = " \( supabaseUrl) /rest/v1 "
67- realtimeUrl = " \( supabaseUrl) /realtime/v1 "
68- authUrl = " \( supabaseUrl) /auth/v1 "
69- storageUrl = " \( supabaseUrl) /storage/v1 "
49+ /// Init `Supabase` with the provided parameters.
50+ /// - Parameters:
51+ /// - supabaseUrl: Unique Supabase project url
52+ /// - supabaseKey: Supabase anonymous API Key
53+ /// - schema: Database schema name, defaults to `public`
54+ /// - autoRefreshToken: Toggles whether `Supabase.auth` automatically refreshes auth tokens. Defaults to `true`
55+ public init (
56+ supabaseUrl: String ,
57+ supabaseKey: String ,
58+ schema: String = " public " ,
59+ autoRefreshToken: Bool = true
60+ ) {
61+ self . supabaseUrl = supabaseUrl
62+ self . supabaseKey = supabaseKey
63+ self . schema = schema
64+ restUrl = " \( supabaseUrl) /rest/v1 "
65+ realtimeUrl = " \( supabaseUrl) /realtime/v1 "
66+ authUrl = " \( supabaseUrl) /auth/v1 "
67+ storageUrl = " \( supabaseUrl) /storage/v1 "
7068
71- defaultHeaders = [ " X-Client-Info " : " supabase-swift/0.0.1 " , " apikey " : supabaseKey]
69+ defaultHeaders = [ " X-Client-Info " : " supabase-swift/0.0.1 " , " apikey " : supabaseKey]
7270
73- auth = GoTrueClient (
74- url: authUrl,
75- headers: defaultHeaders,
76- autoRefreshToken: autoRefreshToken
77- )
78- realtime = RealtimeClient ( endPoint: realtimeUrl, params: defaultHeaders)
79- }
71+ auth = GoTrueClient (
72+ url: authUrl,
73+ headers: defaultHeaders,
74+ autoRefreshToken: autoRefreshToken
75+ )
76+ realtime = RealtimeClient ( endPoint: realtimeUrl, params: defaultHeaders)
77+ }
8078}
0 commit comments