@supabase/supabase-js 1.36.0-next.9 → 2.0.0-rc.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (57) hide show
  1. package/dist/main/SupabaseClient.d.ts +24 -35
  2. package/dist/main/SupabaseClient.d.ts.map +1 -1
  3. package/dist/main/SupabaseClient.js +58 -129
  4. package/dist/main/SupabaseClient.js.map +1 -1
  5. package/dist/main/index.d.ts +2 -1
  6. package/dist/main/index.d.ts.map +1 -1
  7. package/dist/main/index.js +6 -1
  8. package/dist/main/index.js.map +1 -1
  9. package/dist/main/lib/constants.d.ts +0 -1
  10. package/dist/main/lib/constants.d.ts.map +1 -1
  11. package/dist/main/lib/constants.js +1 -2
  12. package/dist/main/lib/constants.js.map +1 -1
  13. package/dist/main/lib/helpers.d.ts +2 -0
  14. package/dist/main/lib/helpers.d.ts.map +1 -1
  15. package/dist/main/lib/helpers.js +12 -2
  16. package/dist/main/lib/helpers.js.map +1 -1
  17. package/dist/main/lib/types.d.ts +15 -32
  18. package/dist/main/lib/types.d.ts.map +1 -1
  19. package/dist/main/lib/version.d.ts +1 -1
  20. package/dist/main/lib/version.js +1 -1
  21. package/dist/module/SupabaseClient.d.ts +24 -35
  22. package/dist/module/SupabaseClient.d.ts.map +1 -1
  23. package/dist/module/SupabaseClient.js +60 -131
  24. package/dist/module/SupabaseClient.js.map +1 -1
  25. package/dist/module/index.d.ts +2 -1
  26. package/dist/module/index.d.ts.map +1 -1
  27. package/dist/module/index.js +1 -0
  28. package/dist/module/index.js.map +1 -1
  29. package/dist/module/lib/constants.d.ts +0 -1
  30. package/dist/module/lib/constants.d.ts.map +1 -1
  31. package/dist/module/lib/constants.js +0 -1
  32. package/dist/module/lib/constants.js.map +1 -1
  33. package/dist/module/lib/helpers.d.ts +2 -0
  34. package/dist/module/lib/helpers.d.ts.map +1 -1
  35. package/dist/module/lib/helpers.js +10 -1
  36. package/dist/module/lib/helpers.js.map +1 -1
  37. package/dist/module/lib/types.d.ts +15 -32
  38. package/dist/module/lib/types.d.ts.map +1 -1
  39. package/dist/module/lib/version.d.ts +1 -1
  40. package/dist/module/lib/version.js +1 -1
  41. package/dist/umd/supabase.js +1 -1
  42. package/package.json +7 -7
  43. package/src/SupabaseClient.ts +73 -136
  44. package/src/index.ts +7 -1
  45. package/src/lib/constants.ts +0 -1
  46. package/src/lib/helpers.ts +43 -0
  47. package/src/lib/types.ts +15 -33
  48. package/src/lib/version.ts +1 -1
  49. package/dist/main/lib/SupabaseRealtimeClient.d.ts +0 -22
  50. package/dist/main/lib/SupabaseRealtimeClient.d.ts.map +0 -1
  51. package/dist/main/lib/SupabaseRealtimeClient.js +0 -79
  52. package/dist/main/lib/SupabaseRealtimeClient.js.map +0 -1
  53. package/dist/module/lib/SupabaseRealtimeClient.d.ts +0 -22
  54. package/dist/module/lib/SupabaseRealtimeClient.d.ts.map +0 -1
  55. package/dist/module/lib/SupabaseRealtimeClient.js +0 -75
  56. package/dist/module/lib/SupabaseRealtimeClient.js.map +0 -1
  57. package/src/lib/SupabaseRealtimeClient.ts +0 -91
@@ -1,9 +1,8 @@
1
1
  import { FunctionsClient } from '@supabase/functions-js';
2
2
  import { PostgrestClient, PostgrestFilterBuilder, PostgrestQueryBuilder } from '@supabase/postgrest-js';
3
3
  import { RealtimeChannel, RealtimeClient } from '@supabase/realtime-js';
4
- import { SupabaseStorageClient } from '@supabase/storage-js';
4
+ import { StorageClient as SupabaseStorageClient } from '@supabase/storage-js';
5
5
  import { SupabaseAuthClient } from './lib/SupabaseAuthClient';
6
- import { SupabaseRealtimeClient } from './lib/SupabaseRealtimeClient';
7
6
  import { Fetch, GenericSchema, SupabaseClientOptions } from './lib/types';
8
7
  /**
9
8
  * Supabase Client.
@@ -23,10 +22,9 @@ export default class SupabaseClient<Database = any, SchemaName extends string &
23
22
  protected functionsUrl: string;
24
23
  protected realtime: RealtimeClient;
25
24
  protected rest: PostgrestClient<Database, SchemaName>;
26
- protected multiTab: boolean;
25
+ protected storageKey: string;
27
26
  protected fetch?: Fetch;
28
27
  protected changedAccessToken: string | undefined;
29
- protected shouldThrowOnError: boolean;
30
28
  protected headers: {
31
29
  [key: string]: string;
32
30
  };
@@ -34,14 +32,13 @@ export default class SupabaseClient<Database = any, SchemaName extends string &
34
32
  * Create a new client for use in the browser.
35
33
  * @param supabaseUrl The unique Supabase URL which is supplied when you create a new project in your project dashboard.
36
34
  * @param supabaseKey The unique Supabase Key which is supplied when you create a new project in your project dashboard.
37
- * @param options.schema You can switch in between schemas. The schema needs to be on the list of exposed schemas inside Supabase.
38
- * @param options.autoRefreshToken Set to "true" if you want to automatically refresh the token before expiring.
39
- * @param options.persistSession Set to "true" if you want to automatically save the user session into local storage.
40
- * @param options.detectSessionInUrl Set to "true" if you want to automatically detects OAuth grants in the URL and signs in the user.
41
- * @param options.headers Any additional headers to send with each network request.
35
+ * @param options.db.schema You can switch in between schemas. The schema needs to be on the list of exposed schemas inside Supabase.
36
+ * @param options.auth.autoRefreshToken Set to "true" if you want to automatically refresh the token before expiring.
37
+ * @param options.auth.persistSession Set to "true" if you want to automatically save the user session into local storage.
38
+ * @param options.auth.detectSessionInUrl Set to "true" if you want to automatically detects OAuth grants in the URL and signs in the user.
42
39
  * @param options.realtime Options passed along to realtime-js constructor.
43
- * @param options.multiTab Set to "false" if you want to disable multi-tab/window events.
44
- * @param options.fetch A custom fetch implementation.
40
+ * @param options.global.fetch A custom fetch implementation.
41
+ * @param options.global.headers Any additional headers to send with each network request.
45
42
  */
46
43
  constructor(supabaseUrl: string, supabaseKey: string, options?: SupabaseClientOptions<SchemaName>);
47
44
  /**
@@ -58,6 +55,7 @@ export default class SupabaseClient<Database = any, SchemaName extends string &
58
55
  * @param table The table name to operate on.
59
56
  */
60
57
  from<TableName extends string & keyof Schema['Tables'], Table extends Schema['Tables'][TableName]>(table: TableName): PostgrestQueryBuilder<Table>;
58
+ from(table: string): PostgrestQueryBuilder<any>;
61
59
  /**
62
60
  * Perform a function call.
63
61
  *
@@ -72,42 +70,33 @@ export default class SupabaseClient<Database = any, SchemaName extends string &
72
70
  count?: 'exact' | 'planned' | 'estimated';
73
71
  }): PostgrestFilterBuilder<Function_['Returns'] extends any[] ? Function_['Returns'][number] extends Record<string, unknown> ? Function_['Returns'][number] : never : never, Function_['Returns']>;
74
72
  /**
75
- * Creates a channel with Broadcast and Presence.
73
+ * Creates a Realtime channel with Broadcast, Presence, and Postgres Changes.
74
+ *
75
+ * @param {string} name - The name of the Realtime channel.
76
+ * @param {Object} opts - The options to pass to the Realtime channel.
77
+ *
76
78
  */
77
79
  channel(name: string, opts?: {
78
80
  [key: string]: any;
79
- }): SupabaseRealtimeClient;
81
+ }): RealtimeChannel;
80
82
  /**
81
- * Closes and removes all channels and returns a list of removed
82
- * channels and their errors.
83
+ * Returns all Realtime channels.
83
84
  */
84
- removeAllChannels(): Promise<{
85
- data: {
86
- channels: RealtimeChannel;
87
- };
88
- error: Error | null;
89
- }[]>;
85
+ getChannels(): RealtimeChannel[];
90
86
  /**
91
- * Closes and removes a channel and returns the number of open channels.
87
+ * Unsubscribes and removes Realtime channel from Realtime client.
88
+ *
89
+ * @param {RealtimeChannel} channel - The name of the Realtime channel.
92
90
  *
93
- * @param channel The channel you want to close and remove.
94
91
  */
95
- removeChannel(channel: RealtimeChannel): Promise<{
96
- data: {
97
- openChannels: number;
98
- };
99
- error: Error | null;
100
- }>;
101
- private _getAccessToken;
102
- private _closeChannel;
103
- private _unsubscribeChannel;
92
+ removeChannel(channel: RealtimeChannel): Promise<'ok' | 'timed out' | 'error'>;
104
93
  /**
105
- * Returns an array of all your channels.
94
+ * Unsubscribes and removes all Realtime channels from Realtime client.
106
95
  */
107
- getChannels(): RealtimeChannel[];
96
+ removeAllChannels(): Promise<('ok' | 'timed out' | 'error')[]>;
97
+ private _getAccessToken;
108
98
  private _initSupabaseAuthClient;
109
99
  private _initRealtimeClient;
110
- private _listenForMultiTabEvents;
111
100
  private _listenForAuthEvents;
112
101
  private _handleTokenChanged;
113
102
  }
@@ -1 +1 @@
1
- {"version":3,"file":"SupabaseClient.d.ts","sourceRoot":"","sources":["../../src/SupabaseClient.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SupabaseClient.d.ts","sourceRoot":"","sources":["../../src/SupabaseClient.ts"],"names":[],"mappings":"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"}
@@ -17,15 +17,18 @@ const constants_1 = require("./lib/constants");
17
17
  const fetch_1 = require("./lib/fetch");
18
18
  const helpers_1 = require("./lib/helpers");
19
19
  const SupabaseAuthClient_1 = require("./lib/SupabaseAuthClient");
20
- const SupabaseRealtimeClient_1 = require("./lib/SupabaseRealtimeClient");
21
- const DEFAULT_OPTIONS = {
20
+ const DEFAULT_GLOBAL_OPTIONS = {
21
+ headers: constants_1.DEFAULT_HEADERS,
22
+ };
23
+ const DEFAULT_DB_OPTIONS = {
22
24
  schema: 'public',
25
+ };
26
+ const DEFAULT_AUTH_OPTIONS = {
23
27
  autoRefreshToken: true,
24
28
  persistSession: true,
25
29
  detectSessionInUrl: true,
26
- multiTab: true,
27
- headers: constants_1.DEFAULT_HEADERS,
28
30
  };
31
+ const DEFAULT_REALTIME_OPTIONS = {};
29
32
  /**
30
33
  * Supabase Client.
31
34
  *
@@ -36,17 +39,16 @@ class SupabaseClient {
36
39
  * Create a new client for use in the browser.
37
40
  * @param supabaseUrl The unique Supabase URL which is supplied when you create a new project in your project dashboard.
38
41
  * @param supabaseKey The unique Supabase Key which is supplied when you create a new project in your project dashboard.
39
- * @param options.schema You can switch in between schemas. The schema needs to be on the list of exposed schemas inside Supabase.
40
- * @param options.autoRefreshToken Set to "true" if you want to automatically refresh the token before expiring.
41
- * @param options.persistSession Set to "true" if you want to automatically save the user session into local storage.
42
- * @param options.detectSessionInUrl Set to "true" if you want to automatically detects OAuth grants in the URL and signs in the user.
43
- * @param options.headers Any additional headers to send with each network request.
42
+ * @param options.db.schema You can switch in between schemas. The schema needs to be on the list of exposed schemas inside Supabase.
43
+ * @param options.auth.autoRefreshToken Set to "true" if you want to automatically refresh the token before expiring.
44
+ * @param options.auth.persistSession Set to "true" if you want to automatically save the user session into local storage.
45
+ * @param options.auth.detectSessionInUrl Set to "true" if you want to automatically detects OAuth grants in the URL and signs in the user.
44
46
  * @param options.realtime Options passed along to realtime-js constructor.
45
- * @param options.multiTab Set to "false" if you want to disable multi-tab/window events.
46
- * @param options.fetch A custom fetch implementation.
47
+ * @param options.global.fetch A custom fetch implementation.
48
+ * @param options.global.headers Any additional headers to send with each network request.
47
49
  */
48
50
  constructor(supabaseUrl, supabaseKey, options) {
49
- var _a, _b, _c;
51
+ var _a, _b, _c, _d, _e, _f, _g, _h;
50
52
  this.supabaseUrl = supabaseUrl;
51
53
  this.supabaseKey = supabaseKey;
52
54
  if (!supabaseUrl)
@@ -54,7 +56,6 @@ class SupabaseClient {
54
56
  if (!supabaseKey)
55
57
  throw new Error('supabaseKey is required.');
56
58
  const _supabaseUrl = (0, helpers_1.stripTrailingSlash)(supabaseUrl);
57
- const settings = Object.assign(Object.assign({}, DEFAULT_OPTIONS), options);
58
59
  this.realtimeUrl = `${_supabaseUrl}/realtime/v1`.replace('http', 'ws');
59
60
  this.authUrl = `${_supabaseUrl}/auth/v1`;
60
61
  this.storageUrl = `${_supabaseUrl}/storage/v1`;
@@ -66,24 +67,26 @@ class SupabaseClient {
66
67
  else {
67
68
  this.functionsUrl = `${_supabaseUrl}/functions/v1`;
68
69
  }
69
- this.multiTab = (_b = (_a = settings.auth) === null || _a === void 0 ? void 0 : _a.multiTab) !== null && _b !== void 0 ? _b : false;
70
- this.headers = Object.assign(Object.assign({}, constants_1.DEFAULT_HEADERS), options === null || options === void 0 ? void 0 : options.headers);
71
- this.shouldThrowOnError = settings.shouldThrowOnError || false;
72
- this.auth = this._initSupabaseAuthClient(settings.auth || {}, this.headers, settings.fetch);
73
- this.fetch = (0, fetch_1.fetchWithAuth)(supabaseKey, this._getAccessToken.bind(this), settings.fetch);
70
+ // default storage key uses the supabase project ref as a namespace
71
+ const defaultStorageKey = `sb-${new URL(this.authUrl).hostname.split('.')[0]}-auth-token`;
72
+ const DEFAULTS = {
73
+ db: DEFAULT_DB_OPTIONS,
74
+ realtime: DEFAULT_REALTIME_OPTIONS,
75
+ auth: Object.assign(Object.assign({}, DEFAULT_AUTH_OPTIONS), { storageKey: defaultStorageKey }),
76
+ global: DEFAULT_GLOBAL_OPTIONS,
77
+ };
78
+ const settings = (0, helpers_1.applySettingDefaults)(options !== null && options !== void 0 ? options : {}, DEFAULTS);
79
+ this.storageKey = (_b = (_a = settings.auth) === null || _a === void 0 ? void 0 : _a.storageKey) !== null && _b !== void 0 ? _b : '';
80
+ this.headers = (_d = (_c = settings.global) === null || _c === void 0 ? void 0 : _c.headers) !== null && _d !== void 0 ? _d : {};
81
+ this.auth = this._initSupabaseAuthClient((_e = settings.auth) !== null && _e !== void 0 ? _e : {}, this.headers, (_f = settings.global) === null || _f === void 0 ? void 0 : _f.fetch);
82
+ this.fetch = (0, fetch_1.fetchWithAuth)(supabaseKey, this._getAccessToken.bind(this), (_g = settings.global) === null || _g === void 0 ? void 0 : _g.fetch);
74
83
  this.realtime = this._initRealtimeClient(Object.assign({ headers: this.headers }, settings.realtime));
75
84
  this.rest = new postgrest_js_1.PostgrestClient(`${_supabaseUrl}/rest/v1`, {
76
85
  headers: this.headers,
77
- schema: (_c = options === null || options === void 0 ? void 0 : options.db) === null || _c === void 0 ? void 0 : _c.schema,
86
+ schema: (_h = settings.db) === null || _h === void 0 ? void 0 : _h.schema,
78
87
  fetch: this.fetch,
79
- throwOnError: this.shouldThrowOnError,
80
88
  });
81
89
  this._listenForAuthEvents();
82
- this._listenForMultiTabEvents();
83
- // In the future we might allow the user to pass in a logger to receive these events.
84
- // this.realtime.onOpen(() => console.log('OPEN'))
85
- // this.realtime.onClose(() => console.log('CLOSED'))
86
- // this.realtime.onError((e: Error) => console.log('Socket error', e))
87
90
  }
88
91
  /**
89
92
  * Supabase Functions allows you to deploy and invoke edge functions.
@@ -98,13 +101,8 @@ class SupabaseClient {
98
101
  * Supabase Storage allows you to manage user-generated content, such as photos or videos.
99
102
  */
100
103
  get storage() {
101
- return new storage_js_1.SupabaseStorageClient(this.storageUrl, this.headers, this.fetch);
104
+ return new storage_js_1.StorageClient(this.storageUrl, this.headers, this.fetch);
102
105
  }
103
- /**
104
- * Perform a table operation.
105
- *
106
- * @param table The table name to operate on.
107
- */
108
106
  from(table) {
109
107
  return this.rest.from(table);
110
108
  }
@@ -121,80 +119,44 @@ class SupabaseClient {
121
119
  return this.rest.rpc(fn, args, options);
122
120
  }
123
121
  /**
124
- * Creates a channel with Broadcast and Presence.
122
+ * Creates a Realtime channel with Broadcast, Presence, and Postgres Changes.
123
+ *
124
+ * @param {string} name - The name of the Realtime channel.
125
+ * @param {Object} opts - The options to pass to the Realtime channel.
126
+ *
125
127
  */
126
- channel(name, opts) {
127
- if (!this.realtime.isConnected()) {
128
- this.realtime.connect();
129
- }
130
- return new SupabaseRealtimeClient_1.SupabaseRealtimeClient(this.realtime, name, opts);
128
+ channel(name, opts = {}) {
129
+ return this.realtime.channel(name, opts);
131
130
  }
132
131
  /**
133
- * Closes and removes all channels and returns a list of removed
134
- * channels and their errors.
132
+ * Returns all Realtime channels.
135
133
  */
136
- removeAllChannels() {
137
- return __awaiter(this, void 0, void 0, function* () {
138
- const allChans = this.getChannels().slice();
139
- const allChanPromises = allChans.map((chan) => this.removeChannel(chan));
140
- const allRemovedChans = yield Promise.all(allChanPromises);
141
- return allRemovedChans.map(({ error }, i) => {
142
- return {
143
- data: { channels: allChans[i] },
144
- error,
145
- };
146
- });
147
- });
134
+ getChannels() {
135
+ return this.realtime.getChannels();
148
136
  }
149
137
  /**
150
- * Closes and removes a channel and returns the number of open channels.
138
+ * Unsubscribes and removes Realtime channel from Realtime client.
139
+ *
140
+ * @param {RealtimeChannel} channel - The name of the Realtime channel.
151
141
  *
152
- * @param channel The channel you want to close and remove.
153
142
  */
154
143
  removeChannel(channel) {
155
- return __awaiter(this, void 0, void 0, function* () {
156
- const { error } = yield this._closeChannel(channel);
157
- const allChans = this.getChannels();
158
- const openChanCount = allChans.filter((chan) => chan.isJoined()).length;
159
- if (allChans.length === 0)
160
- yield this.realtime.disconnect();
161
- return { data: { openChannels: openChanCount }, error };
162
- });
144
+ return this.realtime.removeChannel(channel);
163
145
  }
164
- _getAccessToken() {
165
- var _a;
166
- return __awaiter(this, void 0, void 0, function* () {
167
- const { session } = yield this.auth.getSession();
168
- return (_a = session === null || session === void 0 ? void 0 : session.access_token) !== null && _a !== void 0 ? _a : null;
169
- });
146
+ /**
147
+ * Unsubscribes and removes all Realtime channels from Realtime client.
148
+ */
149
+ removeAllChannels() {
150
+ return this.realtime.removeAllChannels();
170
151
  }
171
- _closeChannel(channel) {
152
+ _getAccessToken() {
153
+ var _a, _b;
172
154
  return __awaiter(this, void 0, void 0, function* () {
173
- let error = null;
174
- if (!channel.isClosed()) {
175
- const { error: unsubError } = yield this._unsubscribeChannel(channel);
176
- error = unsubError;
177
- }
178
- this.realtime.remove(channel);
179
- return { error };
180
- });
181
- }
182
- _unsubscribeChannel(channel) {
183
- return new Promise((resolve) => {
184
- channel
185
- .unsubscribe()
186
- .receive('ok', () => resolve({ error: null }))
187
- .receive('error', (error) => resolve({ error }))
188
- .receive('timeout', () => resolve({ error: new Error('timed out') }));
155
+ const { data } = yield this.auth.getSession();
156
+ return (_b = (_a = data.session) === null || _a === void 0 ? void 0 : _a.access_token) !== null && _b !== void 0 ? _b : null;
189
157
  });
190
158
  }
191
- /**
192
- * Returns an array of all your channels.
193
- */
194
- getChannels() {
195
- return this.realtime.channels;
196
- }
197
- _initSupabaseAuthClient({ autoRefreshToken, persistSession, detectSessionInUrl, localStorage, cookieOptions, multiTab, }, headers, fetch) {
159
+ _initSupabaseAuthClient({ autoRefreshToken, persistSession, detectSessionInUrl, storage, storageKey, }, headers, fetch) {
198
160
  const authHeaders = {
199
161
  Authorization: `Bearer ${this.supabaseKey}`,
200
162
  apikey: `${this.supabaseKey}`,
@@ -202,48 +164,19 @@ class SupabaseClient {
202
164
  return new SupabaseAuthClient_1.SupabaseAuthClient({
203
165
  url: this.authUrl,
204
166
  headers: Object.assign(Object.assign({}, headers), authHeaders),
167
+ storageKey: storageKey,
205
168
  autoRefreshToken,
206
169
  persistSession,
207
170
  detectSessionInUrl,
208
- localStorage,
171
+ storage,
209
172
  fetch,
210
- cookieOptions,
211
- multiTab,
212
173
  });
213
174
  }
214
175
  _initRealtimeClient(options) {
215
- return new realtime_js_1.RealtimeClient(this.realtimeUrl, Object.assign(Object.assign({}, options), { params: Object.assign({ apikey: this.supabaseKey, vsndate: '2022' }, options === null || options === void 0 ? void 0 : options.params) }));
216
- }
217
- _listenForMultiTabEvents() {
218
- if (!this.multiTab || !(0, helpers_1.isBrowser)() || !(window === null || window === void 0 ? void 0 : window.addEventListener)) {
219
- return null;
220
- }
221
- try {
222
- return window === null || window === void 0 ? void 0 : window.addEventListener('storage', (e) => {
223
- var _a, _b, _c;
224
- if (e.key === constants_1.STORAGE_KEY) {
225
- const newSession = JSON.parse(String(e.newValue));
226
- const accessToken = (_b = (_a = newSession === null || newSession === void 0 ? void 0 : newSession.currentSession) === null || _a === void 0 ? void 0 : _a.access_token) !== null && _b !== void 0 ? _b : undefined;
227
- const previousAccessToken = (_c = this.auth.session()) === null || _c === void 0 ? void 0 : _c.access_token;
228
- if (!accessToken) {
229
- this._handleTokenChanged('SIGNED_OUT', accessToken, 'STORAGE');
230
- }
231
- else if (!previousAccessToken && accessToken) {
232
- this._handleTokenChanged('SIGNED_IN', accessToken, 'STORAGE');
233
- }
234
- else if (previousAccessToken !== accessToken) {
235
- this._handleTokenChanged('TOKEN_REFRESHED', accessToken, 'STORAGE');
236
- }
237
- }
238
- });
239
- }
240
- catch (error) {
241
- console.error('_listenForMultiTabEvents', error);
242
- return null;
243
- }
176
+ return new realtime_js_1.RealtimeClient(this.realtimeUrl, Object.assign(Object.assign({}, options), { params: Object.assign({ apikey: this.supabaseKey }, options === null || options === void 0 ? void 0 : options.params) }));
244
177
  }
245
178
  _listenForAuthEvents() {
246
- let { data } = this.auth.onAuthStateChange((event, session) => {
179
+ let data = this.auth.onAuthStateChange((event, session) => {
247
180
  this._handleTokenChanged(event, session === null || session === void 0 ? void 0 : session.access_token, 'CLIENT');
248
181
  });
249
182
  return data;
@@ -252,11 +185,7 @@ class SupabaseClient {
252
185
  if ((event === 'TOKEN_REFRESHED' || event === 'SIGNED_IN') &&
253
186
  this.changedAccessToken !== token) {
254
187
  // Token has changed
255
- this.realtime.setAuth(token);
256
- // Ideally we should call this.auth.recoverSession() - need to make public
257
- // to trigger a "SIGNED_IN" event on this client.
258
- if (source == 'STORAGE')
259
- this.auth.setAuth(token);
188
+ this.realtime.setAuth(token !== null && token !== void 0 ? token : null);
260
189
  this.changedAccessToken = token;
261
190
  }
262
191
  else if (event === 'SIGNED_OUT' || event === 'USER_DELETED') {
@@ -1 +1 @@
1
- {"version":3,"file":"SupabaseClient.js","sourceRoot":"","sources":["../../src/SupabaseClient.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SupabaseClient.js","sourceRoot":"","sources":["../../src/SupabaseClient.ts"],"names":[],"mappings":"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"}
@@ -3,9 +3,10 @@ import type { GenericSchema, SupabaseClientOptions } from './lib/types';
3
3
  export * from '@supabase/gotrue-js';
4
4
  export type { User as AuthUser, Session as AuthSession } from '@supabase/gotrue-js';
5
5
  export type { PostgrestResponse, PostgrestSingleResponse, PostgrestMaybeSingleResponse, PostgrestError, } from '@supabase/postgrest-js';
6
+ export { FunctionsHttpError, FunctionsFetchError, FunctionsRelayError, FunctionsError, } from '@supabase/functions-js';
6
7
  export * from '@supabase/realtime-js';
7
8
  export { default as SupabaseClient } from './SupabaseClient';
8
- export type { SupabaseClientOptions, SupabaseRealtimePayload } from './lib/types';
9
+ export type { SupabaseClientOptions } from './lib/types';
9
10
  /**
10
11
  * Creates a new Supabase Client.
11
12
  */
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,cAAc,MAAM,kBAAkB,CAAA;AAC7C,OAAO,KAAK,EAAE,aAAa,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAA;AAEvE,cAAc,qBAAqB,CAAA;AACnC,YAAY,EAAE,IAAI,IAAI,QAAQ,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,qBAAqB,CAAA;AACnF,YAAY,EACV,iBAAiB,EACjB,uBAAuB,EACvB,4BAA4B,EAC5B,cAAc,GACf,MAAM,wBAAwB,CAAA;AAC/B,cAAc,uBAAuB,CAAA;AACrC,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,kBAAkB,CAAA;AAC5D,YAAY,EAAE,qBAAqB,EAAE,uBAAuB,EAAE,MAAM,aAAa,CAAA;AAEjF;;GAEG;AACH,eAAO,MAAM,YAAY,2PASV,MAAM,eACN,MAAM,0GAIpB,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,cAAc,MAAM,kBAAkB,CAAA;AAC7C,OAAO,KAAK,EAAE,aAAa,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAA;AAEvE,cAAc,qBAAqB,CAAA;AACnC,YAAY,EAAE,IAAI,IAAI,QAAQ,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,qBAAqB,CAAA;AACnF,YAAY,EACV,iBAAiB,EACjB,uBAAuB,EACvB,4BAA4B,EAC5B,cAAc,GACf,MAAM,wBAAwB,CAAA;AAC/B,OAAO,EACL,kBAAkB,EAClB,mBAAmB,EACnB,mBAAmB,EACnB,cAAc,GACf,MAAM,wBAAwB,CAAA;AAC/B,cAAc,uBAAuB,CAAA;AACrC,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,kBAAkB,CAAA;AAC5D,YAAY,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAA;AAExD;;GAEG;AACH,eAAO,MAAM,YAAY,2PASV,MAAM,eACN,MAAM,0GAIpB,CAAA"}
@@ -17,9 +17,14 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
17
17
  return (mod && mod.__esModule) ? mod : { "default": mod };
18
18
  };
19
19
  Object.defineProperty(exports, "__esModule", { value: true });
20
- exports.createClient = exports.SupabaseClient = void 0;
20
+ exports.createClient = exports.SupabaseClient = exports.FunctionsError = exports.FunctionsRelayError = exports.FunctionsFetchError = exports.FunctionsHttpError = void 0;
21
21
  const SupabaseClient_1 = __importDefault(require("./SupabaseClient"));
22
22
  __exportStar(require("@supabase/gotrue-js"), exports);
23
+ var functions_js_1 = require("@supabase/functions-js");
24
+ Object.defineProperty(exports, "FunctionsHttpError", { enumerable: true, get: function () { return functions_js_1.FunctionsHttpError; } });
25
+ Object.defineProperty(exports, "FunctionsFetchError", { enumerable: true, get: function () { return functions_js_1.FunctionsFetchError; } });
26
+ Object.defineProperty(exports, "FunctionsRelayError", { enumerable: true, get: function () { return functions_js_1.FunctionsRelayError; } });
27
+ Object.defineProperty(exports, "FunctionsError", { enumerable: true, get: function () { return functions_js_1.FunctionsError; } });
23
28
  __exportStar(require("@supabase/realtime-js"), exports);
24
29
  var SupabaseClient_2 = require("./SupabaseClient");
25
30
  Object.defineProperty(exports, "SupabaseClient", { enumerable: true, get: function () { return __importDefault(SupabaseClient_2).default; } });
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA,sEAA6C;AAG7C,sDAAmC;AAQnC,wDAAqC;AACrC,mDAA4D;AAAnD,iIAAA,OAAO,OAAkB;AAGlC;;GAEG;AACI,MAAM,YAAY,GAAG,CAS1B,WAAmB,EACnB,WAAmB,EACnB,OAA2C,EACG,EAAE;IAChD,OAAO,IAAI,wBAAc,CAAC,WAAW,EAAE,WAAW,EAAE,OAAO,CAAC,CAAA;AAC9D,CAAC,CAAA;AAdY,QAAA,YAAY,gBAcxB"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA,sEAA6C;AAG7C,sDAAmC;AAQnC,uDAK+B;AAJ7B,kHAAA,kBAAkB,OAAA;AAClB,mHAAA,mBAAmB,OAAA;AACnB,mHAAA,mBAAmB,OAAA;AACnB,8GAAA,cAAc,OAAA;AAEhB,wDAAqC;AACrC,mDAA4D;AAAnD,iIAAA,OAAO,OAAkB;AAGlC;;GAEG;AACI,MAAM,YAAY,GAAG,CAS1B,WAAmB,EACnB,WAAmB,EACnB,OAA2C,EACG,EAAE;IAChD,OAAO,IAAI,wBAAc,CAAC,WAAW,EAAE,WAAW,EAAE,OAAO,CAAC,CAAA;AAC9D,CAAC,CAAA;AAdY,QAAA,YAAY,gBAcxB"}
@@ -1,5 +1,4 @@
1
1
  export declare const DEFAULT_HEADERS: {
2
2
  'X-Client-Info': string;
3
3
  };
4
- export declare const STORAGE_KEY = "supabase.auth.token";
5
4
  //# sourceMappingURL=constants.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../src/lib/constants.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,eAAe;;CAAgD,CAAA;AAC5E,eAAO,MAAM,WAAW,wBAAwB,CAAA"}
1
+ {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../src/lib/constants.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,eAAe;;CAAgD,CAAA"}
@@ -1,8 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.STORAGE_KEY = exports.DEFAULT_HEADERS = void 0;
3
+ exports.DEFAULT_HEADERS = void 0;
4
4
  // constants.ts
5
5
  const version_1 = require("./version");
6
6
  exports.DEFAULT_HEADERS = { 'X-Client-Info': `supabase-js/${version_1.version}` };
7
- exports.STORAGE_KEY = 'supabase.auth.token';
8
7
  //# sourceMappingURL=constants.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../src/lib/constants.ts"],"names":[],"mappings":";;;AAAA,eAAe;AACf,uCAAmC;AACtB,QAAA,eAAe,GAAG,EAAE,eAAe,EAAE,eAAe,iBAAO,EAAE,EAAE,CAAA;AAC/D,QAAA,WAAW,GAAG,qBAAqB,CAAA"}
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../src/lib/constants.ts"],"names":[],"mappings":";;;AAAA,eAAe;AACf,uCAAmC;AACtB,QAAA,eAAe,GAAG,EAAE,eAAe,EAAE,eAAe,iBAAO,EAAE,EAAE,CAAA"}
@@ -1,4 +1,6 @@
1
+ import { SupabaseClientOptions } from './types';
1
2
  export declare function uuid(): string;
2
3
  export declare function stripTrailingSlash(url: string): string;
3
4
  export declare const isBrowser: () => boolean;
5
+ export declare function applySettingDefaults<Database = any, SchemaName extends string & keyof Database = 'public' extends keyof Database ? 'public' : string & keyof Database>(options: SupabaseClientOptions<SchemaName>, defaults: SupabaseClientOptions<any>): SupabaseClientOptions<SchemaName>;
4
6
  //# sourceMappingURL=helpers.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../../src/lib/helpers.ts"],"names":[],"mappings":"AAEA,wBAAgB,IAAI,WAMnB;AAED,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAEtD;AAED,eAAO,MAAM,SAAS,eAAsC,CAAA"}
1
+ {"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../../src/lib/helpers.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,qBAAqB,EAAE,MAAM,SAAS,CAAA;AAE/C,wBAAgB,IAAI,WAMnB;AAED,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAEtD;AAED,eAAO,MAAM,SAAS,eAAsC,CAAA;AAE5D,wBAAgB,oBAAoB,CAClC,QAAQ,GAAG,GAAG,EACd,UAAU,SAAS,MAAM,GAAG,MAAM,QAAQ,GAAG,QAAQ,SAAS,MAAM,QAAQ,GACxE,QAAQ,GACR,MAAM,GAAG,MAAM,QAAQ,EAE3B,OAAO,EAAE,qBAAqB,CAAC,UAAU,CAAC,EAC1C,QAAQ,EAAE,qBAAqB,CAAC,GAAG,CAAC,GACnC,qBAAqB,CAAC,UAAU,CAAC,CAgCnC"}
@@ -1,7 +1,6 @@
1
1
  "use strict";
2
- // helpers.ts
3
2
  Object.defineProperty(exports, "__esModule", { value: true });
4
- exports.isBrowser = exports.stripTrailingSlash = exports.uuid = void 0;
3
+ exports.applySettingDefaults = exports.isBrowser = exports.stripTrailingSlash = exports.uuid = void 0;
5
4
  function uuid() {
6
5
  return 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, function (c) {
7
6
  var r = (Math.random() * 16) | 0, v = c == 'x' ? r : (r & 0x3) | 0x8;
@@ -15,4 +14,15 @@ function stripTrailingSlash(url) {
15
14
  exports.stripTrailingSlash = stripTrailingSlash;
16
15
  const isBrowser = () => typeof window !== 'undefined';
17
16
  exports.isBrowser = isBrowser;
17
+ function applySettingDefaults(options, defaults) {
18
+ const { db: dbOptions, auth: authOptions, realtime: realtimeOptions, global: globalOptions, } = options;
19
+ const { db: DEFAULT_DB_OPTIONS, auth: DEFAULT_AUTH_OPTIONS, realtime: DEFAULT_REALTIME_OPTIONS, global: DEFAULT_GLOBAL_OPTIONS, } = defaults;
20
+ return {
21
+ db: Object.assign(Object.assign({}, DEFAULT_DB_OPTIONS), dbOptions),
22
+ auth: Object.assign(Object.assign({}, DEFAULT_AUTH_OPTIONS), authOptions),
23
+ realtime: Object.assign(Object.assign({}, DEFAULT_REALTIME_OPTIONS), realtimeOptions),
24
+ global: Object.assign(Object.assign({}, DEFAULT_GLOBAL_OPTIONS), globalOptions),
25
+ };
26
+ }
27
+ exports.applySettingDefaults = applySettingDefaults;
18
28
  //# sourceMappingURL=helpers.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../../src/lib/helpers.ts"],"names":[],"mappings":";AAAA,aAAa;;;AAEb,SAAgB,IAAI;IAClB,OAAO,sCAAsC,CAAC,OAAO,CAAC,OAAO,EAAE,UAAU,CAAC;QACxE,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,EAC9B,CAAC,GAAG,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,GAAG,GAAG,CAAA;QACpC,OAAO,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAA;IACvB,CAAC,CAAC,CAAA;AACJ,CAAC;AAND,oBAMC;AAED,SAAgB,kBAAkB,CAAC,GAAW;IAC5C,OAAO,GAAG,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAA;AAC/B,CAAC;AAFD,gDAEC;AAEM,MAAM,SAAS,GAAG,GAAG,EAAE,CAAC,OAAO,MAAM,KAAK,WAAW,CAAA;AAA/C,QAAA,SAAS,aAAsC"}
1
+ {"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../../src/lib/helpers.ts"],"names":[],"mappings":";;;AAGA,SAAgB,IAAI;IAClB,OAAO,sCAAsC,CAAC,OAAO,CAAC,OAAO,EAAE,UAAU,CAAC;QACxE,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,EAC9B,CAAC,GAAG,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,GAAG,GAAG,CAAA;QACpC,OAAO,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAA;IACvB,CAAC,CAAC,CAAA;AACJ,CAAC;AAND,oBAMC;AAED,SAAgB,kBAAkB,CAAC,GAAW;IAC5C,OAAO,GAAG,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAA;AAC/B,CAAC;AAFD,gDAEC;AAEM,MAAM,SAAS,GAAG,GAAG,EAAE,CAAC,OAAO,MAAM,KAAK,WAAW,CAAA;AAA/C,QAAA,SAAS,aAAsC;AAE5D,SAAgB,oBAAoB,CAMlC,OAA0C,EAC1C,QAAoC;IAEpC,MAAM,EACJ,EAAE,EAAE,SAAS,EACb,IAAI,EAAE,WAAW,EACjB,QAAQ,EAAE,eAAe,EACzB,MAAM,EAAE,aAAa,GACtB,GAAG,OAAO,CAAA;IACX,MAAM,EACJ,EAAE,EAAE,kBAAkB,EACtB,IAAI,EAAE,oBAAoB,EAC1B,QAAQ,EAAE,wBAAwB,EAClC,MAAM,EAAE,sBAAsB,GAC/B,GAAG,QAAQ,CAAA;IAEZ,OAAO;QACL,EAAE,kCACG,kBAAkB,GAClB,SAAS,CACb;QACD,IAAI,kCACC,oBAAoB,GACpB,WAAW,CACf;QACD,QAAQ,kCACH,wBAAwB,GACxB,eAAe,CACnB;QACD,MAAM,kCACD,sBAAsB,GACtB,aAAa,CACjB;KACF,CAAA;AACH,CAAC;AAxCD,oDAwCC"}
@@ -16,6 +16,10 @@ export declare type SupabaseClientOptions<SchemaName> = {
16
16
  * Automatically refreshes the token for logged in users.
17
17
  */
18
18
  autoRefreshToken?: boolean;
19
+ /**
20
+ * Optional key name used for storing tokens in local storage
21
+ */
22
+ storageKey?: string;
19
23
  /**
20
24
  * Whether to persist a logged in session to storage.
21
25
  */
@@ -27,43 +31,22 @@ export declare type SupabaseClientOptions<SchemaName> = {
27
31
  /**
28
32
  * A storage provider. Used to store the logged in session.
29
33
  */
30
- localStorage?: SupabaseAuthClientOptions['localStorage'];
31
- /**
32
- * Options passed to the gotrue-js instance
33
- */
34
- cookieOptions?: SupabaseAuthClientOptions['cookieOptions'];
35
- /**
36
- * Allows to enable/disable multi-tab/window events
37
- */
38
- multiTab?: boolean;
34
+ storage?: SupabaseAuthClientOptions['storage'];
39
35
  };
40
36
  /**
41
37
  * Options passed to the realtime-js instance
42
38
  */
43
39
  realtime?: RealtimeClientOptions;
44
- /**
45
- * A custom `fetch` implementation.
46
- */
47
- fetch?: Fetch;
48
- /**
49
- * Optional headers for initializing the client.
50
- */
51
- headers?: Record<string, string>;
52
- /**
53
- * Throw errors, instead of returning them.
54
- */
55
- shouldThrowOnError?: boolean;
56
- };
57
- export declare type SupabaseRealtimePayload<T> = {
58
- commit_timestamp: string;
59
- eventType: 'INSERT' | 'UPDATE' | 'DELETE';
60
- schema: string;
61
- table: string;
62
- /** The new record. Present for 'INSERT' and 'UPDATE' events. */
63
- new: T;
64
- /** The previous record. Present for 'UPDATE' and 'DELETE' events. */
65
- old: T;
66
- errors: string[] | null;
40
+ global?: {
41
+ /**
42
+ * A custom `fetch` implementation.
43
+ */
44
+ fetch?: Fetch;
45
+ /**
46
+ * Optional headers for initializing the client.
47
+ */
48
+ headers?: Record<string, string>;
49
+ };
67
50
  };
68
51
  export declare type GenericTable = {
69
52
  Row: Record<string, unknown>;