@@ -3,78 +3,76 @@ import PostgREST
3
3
import Realtime
4
4
import SupabaseStorage
5
5
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
20
18
public 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
28
26
29
- /// Auth client for Supabase
30
- public var auth : GoTrueClient
27
+ /// Auth client for Supabase
28
+ public var auth : GoTrueClient
31
29
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
+ }
38
36
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
+ }
45
43
46
- /// Realtime client for Supabase
47
- public var realtime : RealtimeClient
44
+ /// Realtime client for Supabase
45
+ public var realtime : RealtimeClient
48
46
49
- private var defaultHeaders : [ String : String ]
47
+ private var defaultHeaders : [ String : String ]
50
48
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 "
70
68
71
- defaultHeaders = [ " X-Client-Info " : " supabase-swift/0.0.1 " , " apikey " : supabaseKey]
69
+ defaultHeaders = [ " X-Client-Info " : " supabase-swift/0.0.1 " , " apikey " : supabaseKey]
72
70
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
+ }
80
78
}
0 commit comments