@supabase/supabase-js 2.71.2-canary.3 → 2.71.2-canary.6

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 (66) hide show
  1. package/dist/main/SupabaseClient.d.ts +131 -0
  2. package/dist/main/SupabaseClient.d.ts.map +1 -0
  3. package/dist/main/SupabaseClient.js +229 -0
  4. package/dist/main/SupabaseClient.js.map +1 -0
  5. package/dist/main/index.d.ts +16 -0
  6. package/dist/main/index.d.ts.map +1 -0
  7. package/dist/main/index.js +68 -0
  8. package/dist/main/index.js.map +1 -0
  9. package/dist/main/lib/SupabaseAuthClient.d.ts +6 -0
  10. package/dist/main/lib/SupabaseAuthClient.d.ts.map +1 -0
  11. package/dist/main/lib/SupabaseAuthClient.js +11 -0
  12. package/dist/main/lib/SupabaseAuthClient.js.map +1 -0
  13. package/dist/main/lib/constants.d.ts +16 -0
  14. package/dist/main/lib/constants.d.ts.map +1 -0
  15. package/dist/main/lib/constants.js +33 -0
  16. package/dist/main/lib/constants.js.map +1 -0
  17. package/dist/main/lib/fetch.d.ts +6 -0
  18. package/dist/main/lib/fetch.d.ts.map +1 -0
  19. package/dist/main/lib/fetch.js +86 -0
  20. package/dist/main/lib/fetch.js.map +1 -0
  21. package/dist/main/lib/helpers.d.ts +6 -0
  22. package/dist/main/lib/helpers.d.ts.map +1 -0
  23. package/dist/main/lib/helpers.js +48 -0
  24. package/dist/main/lib/helpers.js.map +1 -0
  25. package/dist/main/lib/types.d.ts +117 -0
  26. package/dist/main/lib/types.d.ts.map +1 -0
  27. package/dist/main/lib/types.js +3 -0
  28. package/dist/main/lib/types.js.map +1 -0
  29. package/dist/main/lib/version.d.ts +2 -0
  30. package/dist/main/lib/version.d.ts.map +1 -0
  31. package/dist/main/lib/version.js +5 -0
  32. package/dist/main/lib/version.js.map +1 -0
  33. package/dist/module/SupabaseClient.d.ts +131 -0
  34. package/dist/module/SupabaseClient.d.ts.map +1 -0
  35. package/dist/module/SupabaseClient.js +226 -0
  36. package/dist/module/SupabaseClient.js.map +1 -0
  37. package/dist/module/index.d.ts +16 -0
  38. package/dist/module/index.d.ts.map +1 -0
  39. package/dist/module/index.js +40 -0
  40. package/dist/module/index.js.map +1 -0
  41. package/dist/module/lib/SupabaseAuthClient.d.ts +6 -0
  42. package/dist/module/lib/SupabaseAuthClient.d.ts.map +1 -0
  43. package/dist/module/lib/SupabaseAuthClient.js +7 -0
  44. package/dist/module/lib/SupabaseAuthClient.js.map +1 -0
  45. package/dist/module/lib/constants.d.ts +16 -0
  46. package/dist/module/lib/constants.d.ts.map +1 -0
  47. package/dist/module/lib/constants.js +30 -0
  48. package/dist/module/lib/constants.js.map +1 -0
  49. package/dist/module/lib/fetch.d.ts +6 -0
  50. package/dist/module/lib/fetch.d.ts.map +1 -0
  51. package/dist/module/lib/fetch.js +47 -0
  52. package/dist/module/lib/fetch.js.map +1 -0
  53. package/dist/module/lib/helpers.d.ts +6 -0
  54. package/dist/module/lib/helpers.d.ts.map +1 -0
  55. package/dist/module/lib/helpers.js +41 -0
  56. package/dist/module/lib/helpers.js.map +1 -0
  57. package/dist/module/lib/types.d.ts +117 -0
  58. package/dist/module/lib/types.d.ts.map +1 -0
  59. package/dist/module/lib/types.js +2 -0
  60. package/dist/module/lib/types.js.map +1 -0
  61. package/dist/module/lib/version.d.ts +2 -0
  62. package/dist/module/lib/version.d.ts.map +1 -0
  63. package/dist/module/lib/version.js +2 -0
  64. package/dist/module/lib/version.js.map +1 -0
  65. package/dist/umd/supabase.js +1 -0
  66. package/package.json +6 -6
@@ -0,0 +1,131 @@
1
+ import { FunctionsClient } from '@supabase/functions-js';
2
+ import { PostgrestClient, PostgrestFilterBuilder, PostgrestQueryBuilder } from '@supabase/postgrest-js';
3
+ import { RealtimeChannel, RealtimeChannelOptions, RealtimeClient } from '@supabase/realtime-js';
4
+ import { StorageClient as SupabaseStorageClient } from '@supabase/storage-js';
5
+ import { SupabaseAuthClient } from './lib/SupabaseAuthClient';
6
+ import { Fetch, GenericSchema, SupabaseClientOptions } from './lib/types';
7
+ /**
8
+ * Supabase Client.
9
+ *
10
+ * An isomorphic Javascript client for interacting with Postgres.
11
+ */
12
+ export default class SupabaseClient<Database = any, SchemaNameOrClientOptions extends (string & keyof Omit<Database, '__InternalSupabase'>) | {
13
+ PostgrestVersion: string;
14
+ } = 'public' extends keyof Omit<Database, '__InternalSupabase'> ? 'public' : string & keyof Omit<Database, '__InternalSupabase'>, SchemaName extends string & keyof Omit<Database, '__InternalSupabase'> = SchemaNameOrClientOptions extends string & keyof Omit<Database, '__InternalSupabase'> ? SchemaNameOrClientOptions : 'public' extends keyof Omit<Database, '__InternalSupabase'> ? 'public' : string & keyof Omit<Omit<Database, '__InternalSupabase'>, '__InternalSupabase'>, Schema extends Omit<Database, '__InternalSupabase'>[SchemaName] extends GenericSchema ? Omit<Database, '__InternalSupabase'>[SchemaName] : never = Omit<Database, '__InternalSupabase'>[SchemaName] extends GenericSchema ? Omit<Database, '__InternalSupabase'>[SchemaName] : never, ClientOptions extends {
15
+ PostgrestVersion: string;
16
+ } = SchemaNameOrClientOptions extends string & keyof Omit<Database, '__InternalSupabase'> ? Database extends {
17
+ __InternalSupabase: {
18
+ PostgrestVersion: string;
19
+ };
20
+ } ? Database['__InternalSupabase'] : {
21
+ PostgrestVersion: '12';
22
+ } : SchemaNameOrClientOptions extends {
23
+ PostgrestVersion: string;
24
+ } ? SchemaNameOrClientOptions : never> {
25
+ protected supabaseUrl: string;
26
+ protected supabaseKey: string;
27
+ /**
28
+ * Supabase Auth allows you to create and manage user sessions for access to data that is secured by access policies.
29
+ */
30
+ auth: SupabaseAuthClient;
31
+ realtime: RealtimeClient;
32
+ /**
33
+ * Supabase Storage allows you to manage user-generated content, such as photos or videos.
34
+ */
35
+ storage: SupabaseStorageClient;
36
+ protected realtimeUrl: URL;
37
+ protected authUrl: URL;
38
+ protected storageUrl: URL;
39
+ protected functionsUrl: URL;
40
+ protected rest: PostgrestClient<Database, ClientOptions, SchemaName>;
41
+ protected storageKey: string;
42
+ protected fetch?: Fetch;
43
+ protected changedAccessToken?: string;
44
+ protected accessToken?: () => Promise<string | null>;
45
+ protected headers: Record<string, string>;
46
+ /**
47
+ * Create a new client for use in the browser.
48
+ * @param supabaseUrl The unique Supabase URL which is supplied when you create a new project in your project dashboard.
49
+ * @param supabaseKey The unique Supabase Key which is supplied when you create a new project in your project dashboard.
50
+ * @param options.db.schema You can switch in between schemas. The schema needs to be on the list of exposed schemas inside Supabase.
51
+ * @param options.auth.autoRefreshToken Set to "true" if you want to automatically refresh the token before expiring.
52
+ * @param options.auth.persistSession Set to "true" if you want to automatically save the user session into local storage.
53
+ * @param options.auth.detectSessionInUrl Set to "true" if you want to automatically detects OAuth grants in the URL and signs in the user.
54
+ * @param options.realtime Options passed along to realtime-js constructor.
55
+ * @param options.storage Options passed along to the storage-js constructor.
56
+ * @param options.global.fetch A custom fetch implementation.
57
+ * @param options.global.headers Any additional headers to send with each network request.
58
+ */
59
+ constructor(supabaseUrl: string, supabaseKey: string, options?: SupabaseClientOptions<SchemaName>);
60
+ /**
61
+ * Supabase Functions allows you to deploy and invoke edge functions.
62
+ */
63
+ get functions(): FunctionsClient;
64
+ from<TableName extends string & keyof Schema['Tables'], Table extends Schema['Tables'][TableName]>(relation: TableName): PostgrestQueryBuilder<ClientOptions, Schema, Table, TableName>;
65
+ from<ViewName extends string & keyof Schema['Views'], View extends Schema['Views'][ViewName]>(relation: ViewName): PostgrestQueryBuilder<ClientOptions, Schema, View, ViewName>;
66
+ /**
67
+ * Select a schema to query or perform an function (rpc) call.
68
+ *
69
+ * The schema needs to be on the list of exposed schemas inside Supabase.
70
+ *
71
+ * @param schema - The schema to query
72
+ */
73
+ schema<DynamicSchema extends string & keyof Omit<Database, '__InternalSupabase'>>(schema: DynamicSchema): PostgrestClient<Database, ClientOptions, DynamicSchema, Database[DynamicSchema] extends GenericSchema ? Database[DynamicSchema] : any>;
74
+ /**
75
+ * Perform a function call.
76
+ *
77
+ * @param fn - The function name to call
78
+ * @param args - The arguments to pass to the function call
79
+ * @param options - Named parameters
80
+ * @param options.head - When set to `true`, `data` will not be returned.
81
+ * Useful if you only need the count.
82
+ * @param options.get - When set to `true`, the function will be called with
83
+ * read-only access mode.
84
+ * @param options.count - Count algorithm to use to count rows returned by the
85
+ * function. Only applicable for [set-returning
86
+ * functions](https://www.postgresql.org/docs/current/functions-srf.html).
87
+ *
88
+ * `"exact"`: Exact but slow count algorithm. Performs a `COUNT(*)` under the
89
+ * hood.
90
+ *
91
+ * `"planned"`: Approximated but fast count algorithm. Uses the Postgres
92
+ * statistics under the hood.
93
+ *
94
+ * `"estimated"`: Uses exact count for low numbers and planned count for high
95
+ * numbers.
96
+ */
97
+ rpc<FnName extends string & keyof Schema['Functions'], Fn extends Schema['Functions'][FnName]>(fn: FnName, args?: Fn['Args'], options?: {
98
+ head?: boolean;
99
+ get?: boolean;
100
+ count?: 'exact' | 'planned' | 'estimated';
101
+ }): PostgrestFilterBuilder<ClientOptions, Schema, Fn['Returns'] extends any[] ? Fn['Returns'][number] extends Record<string, unknown> ? Fn['Returns'][number] : never : never, Fn['Returns'], FnName, null, 'RPC'>;
102
+ /**
103
+ * Creates a Realtime channel with Broadcast, Presence, and Postgres Changes.
104
+ *
105
+ * @param {string} name - The name of the Realtime channel.
106
+ * @param {Object} opts - The options to pass to the Realtime channel.
107
+ *
108
+ */
109
+ channel(name: string, opts?: RealtimeChannelOptions): RealtimeChannel;
110
+ /**
111
+ * Returns all Realtime channels.
112
+ */
113
+ getChannels(): RealtimeChannel[];
114
+ /**
115
+ * Unsubscribes and removes Realtime channel from Realtime client.
116
+ *
117
+ * @param {RealtimeChannel} channel - The name of the Realtime channel.
118
+ *
119
+ */
120
+ removeChannel(channel: RealtimeChannel): Promise<'ok' | 'timed out' | 'error'>;
121
+ /**
122
+ * Unsubscribes and removes all Realtime channels from Realtime client.
123
+ */
124
+ removeAllChannels(): Promise<('ok' | 'timed out' | 'error')[]>;
125
+ private _getAccessToken;
126
+ private _initSupabaseAuthClient;
127
+ private _initRealtimeClient;
128
+ private _listenForAuthEvents;
129
+ private _handleTokenChanged;
130
+ }
131
+ //# sourceMappingURL=SupabaseClient.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SupabaseClient.d.ts","sourceRoot":"","sources":["../../src/SupabaseClient.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,229 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ const functions_js_1 = require("@supabase/functions-js");
13
+ const postgrest_js_1 = require("@supabase/postgrest-js");
14
+ const realtime_js_1 = require("@supabase/realtime-js");
15
+ const storage_js_1 = require("@supabase/storage-js");
16
+ const constants_1 = require("./lib/constants");
17
+ const fetch_1 = require("./lib/fetch");
18
+ const helpers_1 = require("./lib/helpers");
19
+ const SupabaseAuthClient_1 = require("./lib/SupabaseAuthClient");
20
+ /**
21
+ * Supabase Client.
22
+ *
23
+ * An isomorphic Javascript client for interacting with Postgres.
24
+ */
25
+ class SupabaseClient {
26
+ /**
27
+ * Create a new client for use in the browser.
28
+ * @param supabaseUrl The unique Supabase URL which is supplied when you create a new project in your project dashboard.
29
+ * @param supabaseKey The unique Supabase Key which is supplied when you create a new project in your project dashboard.
30
+ * @param options.db.schema You can switch in between schemas. The schema needs to be on the list of exposed schemas inside Supabase.
31
+ * @param options.auth.autoRefreshToken Set to "true" if you want to automatically refresh the token before expiring.
32
+ * @param options.auth.persistSession Set to "true" if you want to automatically save the user session into local storage.
33
+ * @param options.auth.detectSessionInUrl Set to "true" if you want to automatically detects OAuth grants in the URL and signs in the user.
34
+ * @param options.realtime Options passed along to realtime-js constructor.
35
+ * @param options.storage Options passed along to the storage-js constructor.
36
+ * @param options.global.fetch A custom fetch implementation.
37
+ * @param options.global.headers Any additional headers to send with each network request.
38
+ */
39
+ constructor(supabaseUrl, supabaseKey, options) {
40
+ var _a, _b, _c;
41
+ this.supabaseUrl = supabaseUrl;
42
+ this.supabaseKey = supabaseKey;
43
+ if (!supabaseUrl)
44
+ throw new Error('supabaseUrl is required.');
45
+ if (!supabaseKey)
46
+ throw new Error('supabaseKey is required.');
47
+ const _supabaseUrl = (0, helpers_1.ensureTrailingSlash)(supabaseUrl);
48
+ const baseUrl = new URL(_supabaseUrl);
49
+ this.realtimeUrl = new URL('realtime/v1', baseUrl);
50
+ this.realtimeUrl.protocol = this.realtimeUrl.protocol.replace('http', 'ws');
51
+ this.authUrl = new URL('auth/v1', baseUrl);
52
+ this.storageUrl = new URL('storage/v1', baseUrl);
53
+ this.functionsUrl = new URL('functions/v1', baseUrl);
54
+ // default storage key uses the supabase project ref as a namespace
55
+ const defaultStorageKey = `sb-${baseUrl.hostname.split('.')[0]}-auth-token`;
56
+ const DEFAULTS = {
57
+ db: constants_1.DEFAULT_DB_OPTIONS,
58
+ realtime: constants_1.DEFAULT_REALTIME_OPTIONS,
59
+ auth: Object.assign(Object.assign({}, constants_1.DEFAULT_AUTH_OPTIONS), { storageKey: defaultStorageKey }),
60
+ global: constants_1.DEFAULT_GLOBAL_OPTIONS,
61
+ };
62
+ const settings = (0, helpers_1.applySettingDefaults)(options !== null && options !== void 0 ? options : {}, DEFAULTS);
63
+ this.storageKey = (_a = settings.auth.storageKey) !== null && _a !== void 0 ? _a : '';
64
+ this.headers = (_b = settings.global.headers) !== null && _b !== void 0 ? _b : {};
65
+ if (!settings.accessToken) {
66
+ this.auth = this._initSupabaseAuthClient((_c = settings.auth) !== null && _c !== void 0 ? _c : {}, this.headers, settings.global.fetch);
67
+ }
68
+ else {
69
+ this.accessToken = settings.accessToken;
70
+ this.auth = new Proxy({}, {
71
+ get: (_, prop) => {
72
+ throw new Error(`@supabase/supabase-js: Supabase Client is configured with the accessToken option, accessing supabase.auth.${String(prop)} is not possible`);
73
+ },
74
+ });
75
+ }
76
+ this.fetch = (0, fetch_1.fetchWithAuth)(supabaseKey, this._getAccessToken.bind(this), settings.global.fetch);
77
+ this.realtime = this._initRealtimeClient(Object.assign({ headers: this.headers, accessToken: this._getAccessToken.bind(this) }, settings.realtime));
78
+ this.rest = new postgrest_js_1.PostgrestClient(new URL('rest/v1', baseUrl).href, {
79
+ headers: this.headers,
80
+ schema: settings.db.schema,
81
+ fetch: this.fetch,
82
+ });
83
+ this.storage = new storage_js_1.StorageClient(this.storageUrl.href, this.headers, this.fetch, options === null || options === void 0 ? void 0 : options.storage);
84
+ if (!settings.accessToken) {
85
+ this._listenForAuthEvents();
86
+ }
87
+ }
88
+ /**
89
+ * Supabase Functions allows you to deploy and invoke edge functions.
90
+ */
91
+ get functions() {
92
+ return new functions_js_1.FunctionsClient(this.functionsUrl.href, {
93
+ headers: this.headers,
94
+ customFetch: this.fetch,
95
+ });
96
+ }
97
+ /**
98
+ * Perform a query on a table or a view.
99
+ *
100
+ * @param relation - The table or view name to query
101
+ */
102
+ from(relation) {
103
+ return this.rest.from(relation);
104
+ }
105
+ // NOTE: signatures must be kept in sync with PostgrestClient.schema
106
+ /**
107
+ * Select a schema to query or perform an function (rpc) call.
108
+ *
109
+ * The schema needs to be on the list of exposed schemas inside Supabase.
110
+ *
111
+ * @param schema - The schema to query
112
+ */
113
+ schema(schema) {
114
+ return this.rest.schema(schema);
115
+ }
116
+ // NOTE: signatures must be kept in sync with PostgrestClient.rpc
117
+ /**
118
+ * Perform a function call.
119
+ *
120
+ * @param fn - The function name to call
121
+ * @param args - The arguments to pass to the function call
122
+ * @param options - Named parameters
123
+ * @param options.head - When set to `true`, `data` will not be returned.
124
+ * Useful if you only need the count.
125
+ * @param options.get - When set to `true`, the function will be called with
126
+ * read-only access mode.
127
+ * @param options.count - Count algorithm to use to count rows returned by the
128
+ * function. Only applicable for [set-returning
129
+ * functions](https://www.postgresql.org/docs/current/functions-srf.html).
130
+ *
131
+ * `"exact"`: Exact but slow count algorithm. Performs a `COUNT(*)` under the
132
+ * hood.
133
+ *
134
+ * `"planned"`: Approximated but fast count algorithm. Uses the Postgres
135
+ * statistics under the hood.
136
+ *
137
+ * `"estimated"`: Uses exact count for low numbers and planned count for high
138
+ * numbers.
139
+ */
140
+ rpc(fn, args = {}, options = {}) {
141
+ return this.rest.rpc(fn, args, options);
142
+ }
143
+ /**
144
+ * Creates a Realtime channel with Broadcast, Presence, and Postgres Changes.
145
+ *
146
+ * @param {string} name - The name of the Realtime channel.
147
+ * @param {Object} opts - The options to pass to the Realtime channel.
148
+ *
149
+ */
150
+ channel(name, opts = { config: {} }) {
151
+ return this.realtime.channel(name, opts);
152
+ }
153
+ /**
154
+ * Returns all Realtime channels.
155
+ */
156
+ getChannels() {
157
+ return this.realtime.getChannels();
158
+ }
159
+ /**
160
+ * Unsubscribes and removes Realtime channel from Realtime client.
161
+ *
162
+ * @param {RealtimeChannel} channel - The name of the Realtime channel.
163
+ *
164
+ */
165
+ removeChannel(channel) {
166
+ return this.realtime.removeChannel(channel);
167
+ }
168
+ /**
169
+ * Unsubscribes and removes all Realtime channels from Realtime client.
170
+ */
171
+ removeAllChannels() {
172
+ return this.realtime.removeAllChannels();
173
+ }
174
+ _getAccessToken() {
175
+ return __awaiter(this, void 0, void 0, function* () {
176
+ var _a, _b;
177
+ if (this.accessToken) {
178
+ return yield this.accessToken();
179
+ }
180
+ const { data } = yield this.auth.getSession();
181
+ return (_b = (_a = data.session) === null || _a === void 0 ? void 0 : _a.access_token) !== null && _b !== void 0 ? _b : this.supabaseKey;
182
+ });
183
+ }
184
+ _initSupabaseAuthClient({ autoRefreshToken, persistSession, detectSessionInUrl, storage, storageKey, flowType, lock, debug, }, headers, fetch) {
185
+ const authHeaders = {
186
+ Authorization: `Bearer ${this.supabaseKey}`,
187
+ apikey: `${this.supabaseKey}`,
188
+ };
189
+ return new SupabaseAuthClient_1.SupabaseAuthClient({
190
+ url: this.authUrl.href,
191
+ headers: Object.assign(Object.assign({}, authHeaders), headers),
192
+ storageKey: storageKey,
193
+ autoRefreshToken,
194
+ persistSession,
195
+ detectSessionInUrl,
196
+ storage,
197
+ flowType,
198
+ lock,
199
+ debug,
200
+ fetch,
201
+ // auth checks if there is a custom authorizaiton header using this flag
202
+ // so it knows whether to return an error when getUser is called with no session
203
+ hasCustomAuthorizationHeader: 'Authorization' in this.headers,
204
+ });
205
+ }
206
+ _initRealtimeClient(options) {
207
+ return new realtime_js_1.RealtimeClient(this.realtimeUrl.href, Object.assign(Object.assign({}, options), { params: Object.assign({ apikey: this.supabaseKey }, options === null || options === void 0 ? void 0 : options.params) }));
208
+ }
209
+ _listenForAuthEvents() {
210
+ let data = this.auth.onAuthStateChange((event, session) => {
211
+ this._handleTokenChanged(event, 'CLIENT', session === null || session === void 0 ? void 0 : session.access_token);
212
+ });
213
+ return data;
214
+ }
215
+ _handleTokenChanged(event, source, token) {
216
+ if ((event === 'TOKEN_REFRESHED' || event === 'SIGNED_IN') &&
217
+ this.changedAccessToken !== token) {
218
+ this.changedAccessToken = token;
219
+ }
220
+ else if (event === 'SIGNED_OUT') {
221
+ this.realtime.setAuth();
222
+ if (source == 'STORAGE')
223
+ this.auth.signOut();
224
+ this.changedAccessToken = undefined;
225
+ }
226
+ }
227
+ }
228
+ exports.default = SupabaseClient;
229
+ //# sourceMappingURL=SupabaseClient.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SupabaseClient.js","sourceRoot":"","sources":["../../src/SupabaseClient.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,16 @@
1
+ import SupabaseClient from './SupabaseClient';
2
+ import type { SupabaseClientOptions } from './lib/types';
3
+ export * from '@supabase/auth-js';
4
+ export type { User as AuthUser, Session as AuthSession } from '@supabase/auth-js';
5
+ export { type PostgrestResponse, type PostgrestSingleResponse, type PostgrestMaybeSingleResponse, PostgrestError, } from '@supabase/postgrest-js';
6
+ export { FunctionsHttpError, FunctionsFetchError, FunctionsRelayError, FunctionsError, type FunctionInvokeOptions, FunctionRegion, } from '@supabase/functions-js';
7
+ export * from '@supabase/realtime-js';
8
+ export { default as SupabaseClient } from './SupabaseClient';
9
+ export type { SupabaseClientOptions, QueryResult, QueryData, QueryError } from './lib/types';
10
+ /**
11
+ * Creates a new Supabase Client.
12
+ */
13
+ export declare const createClient: <Database = any, SchemaNameOrClientOptions extends (string & keyof Omit<Database, "__InternalSupabase">) | {
14
+ PostgrestVersion: string;
15
+ } = "public" extends keyof Omit<Database, "__InternalSupabase"> ? "public" : string & keyof Omit<Database, "__InternalSupabase">, SchemaName extends string & keyof Omit<Database, "__InternalSupabase"> = SchemaNameOrClientOptions extends string & keyof Omit<Database, "__InternalSupabase"> ? SchemaNameOrClientOptions : "public" extends keyof Omit<Database, "__InternalSupabase"> ? "public" : string & keyof Omit<Omit<Database, "__InternalSupabase">, "__InternalSupabase">>(supabaseUrl: string, supabaseKey: string, options?: SupabaseClientOptions<SchemaName>) => SupabaseClient<Database, SchemaNameOrClientOptions, SchemaName>;
16
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +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,qBAAqB,EAAE,MAAM,aAAa,CAAA;AAExD,cAAc,mBAAmB,CAAA;AACjC,YAAY,EAAE,IAAI,IAAI,QAAQ,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,mBAAmB,CAAA;AACjF,OAAO,EACL,KAAK,iBAAiB,EACtB,KAAK,uBAAuB,EAC5B,KAAK,4BAA4B,EACjC,cAAc,GACf,MAAM,wBAAwB,CAAA;AAC/B,OAAO,EACL,kBAAkB,EAClB,mBAAmB,EACnB,mBAAmB,EACnB,cAAc,EACd,KAAK,qBAAqB,EAC1B,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,WAAW,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AAE5F;;GAEG;AACH,eAAO,MAAM,YAAY,GACvB,QAAQ,GAAG,GAAG,EACd,yBAAyB,SACrB,CAAC,MAAM,GAAG,MAAM,IAAI,CAAC,QAAQ,EAAE,oBAAoB,CAAC,CAAC,GACrD;IAAE,gBAAgB,EAAE,MAAM,CAAA;CAAE,GAAG,QAAQ,SAAS,MAAM,IAAI,CAAC,QAAQ,EAAE,oBAAoB,CAAC,GAC1F,QAAQ,GACR,MAAM,GAAG,MAAM,IAAI,CAAC,QAAQ,EAAE,oBAAoB,CAAC,EACvD,UAAU,SAAS,MAAM,GACvB,MAAM,IAAI,CAAC,QAAQ,EAAE,oBAAoB,CAAC,GAAG,yBAAyB,SAAS,MAAM,GACrF,MAAM,IAAI,CAAC,QAAQ,EAAE,oBAAoB,CAAC,GACxC,yBAAyB,GACzB,QAAQ,SAAS,MAAM,IAAI,CAAC,QAAQ,EAAE,oBAAoB,CAAC,GACzD,QAAQ,GACR,MAAM,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,oBAAoB,CAAC,EAAE,oBAAoB,CAAC,EAErF,aAAa,MAAM,EACnB,aAAa,MAAM,EACnB,UAAU,qBAAqB,CAAC,UAAU,CAAC,KAC1C,cAAc,CAAC,QAAQ,EAAE,yBAAyB,EAAE,UAAU,CAMhE,CAAA"}
@@ -0,0 +1,68 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ var __importDefault = (this && this.__importDefault) || function (mod) {
17
+ return (mod && mod.__esModule) ? mod : { "default": mod };
18
+ };
19
+ Object.defineProperty(exports, "__esModule", { value: true });
20
+ exports.createClient = exports.SupabaseClient = exports.FunctionRegion = exports.FunctionsError = exports.FunctionsRelayError = exports.FunctionsFetchError = exports.FunctionsHttpError = exports.PostgrestError = void 0;
21
+ const SupabaseClient_1 = __importDefault(require("./SupabaseClient"));
22
+ __exportStar(require("@supabase/auth-js"), exports);
23
+ var postgrest_js_1 = require("@supabase/postgrest-js");
24
+ Object.defineProperty(exports, "PostgrestError", { enumerable: true, get: function () { return postgrest_js_1.PostgrestError; } });
25
+ var functions_js_1 = require("@supabase/functions-js");
26
+ Object.defineProperty(exports, "FunctionsHttpError", { enumerable: true, get: function () { return functions_js_1.FunctionsHttpError; } });
27
+ Object.defineProperty(exports, "FunctionsFetchError", { enumerable: true, get: function () { return functions_js_1.FunctionsFetchError; } });
28
+ Object.defineProperty(exports, "FunctionsRelayError", { enumerable: true, get: function () { return functions_js_1.FunctionsRelayError; } });
29
+ Object.defineProperty(exports, "FunctionsError", { enumerable: true, get: function () { return functions_js_1.FunctionsError; } });
30
+ Object.defineProperty(exports, "FunctionRegion", { enumerable: true, get: function () { return functions_js_1.FunctionRegion; } });
31
+ __exportStar(require("@supabase/realtime-js"), exports);
32
+ var SupabaseClient_2 = require("./SupabaseClient");
33
+ Object.defineProperty(exports, "SupabaseClient", { enumerable: true, get: function () { return __importDefault(SupabaseClient_2).default; } });
34
+ /**
35
+ * Creates a new Supabase Client.
36
+ */
37
+ const createClient = (supabaseUrl, supabaseKey, options) => {
38
+ return new SupabaseClient_1.default(supabaseUrl, supabaseKey, options);
39
+ };
40
+ exports.createClient = createClient;
41
+ // Check for Node.js <= 18 deprecation
42
+ function shouldShowDeprecationWarning() {
43
+ // Skip in browser environments
44
+ if (typeof window !== 'undefined') {
45
+ return false;
46
+ }
47
+ // Skip if process is not available (e.g., Edge Runtime)
48
+ if (typeof process === 'undefined') {
49
+ return false;
50
+ }
51
+ // Use dynamic property access to avoid Next.js Edge Runtime static analysis warnings
52
+ const processVersion = process['version'];
53
+ if (processVersion === undefined || processVersion === null) {
54
+ return false;
55
+ }
56
+ const versionMatch = processVersion.match(/^v(\d+)\./);
57
+ if (!versionMatch) {
58
+ return false;
59
+ }
60
+ const majorVersion = parseInt(versionMatch[1], 10);
61
+ return majorVersion <= 18;
62
+ }
63
+ if (shouldShowDeprecationWarning()) {
64
+ console.warn(`⚠️ Node.js 18 and below are deprecated and will no longer be supported in future versions of @supabase/supabase-js. ` +
65
+ `Please upgrade to Node.js 20 or later. ` +
66
+ `For more information, visit: https://github.com/orgs/supabase/discussions/37217`);
67
+ }
68
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA,sEAA6C;AAG7C,oDAAiC;AAEjC,uDAK+B;AAD7B,8GAAA,cAAc,OAAA;AAEhB,uDAO+B;AAN7B,kHAAA,kBAAkB,OAAA;AAClB,mHAAA,mBAAmB,OAAA;AACnB,mHAAA,mBAAmB,OAAA;AACnB,8GAAA,cAAc,OAAA;AAEd,8GAAA,cAAc,OAAA;AAEhB,wDAAqC;AACrC,mDAA4D;AAAnD,iIAAA,OAAO,OAAkB;AAGlC;;GAEG;AACI,MAAM,YAAY,GAAG,CAe1B,WAAmB,EACnB,WAAmB,EACnB,OAA2C,EACsB,EAAE;IACnE,OAAO,IAAI,wBAAc,CACvB,WAAW,EACX,WAAW,EACX,OAAO,CACR,CAAA;AACH,CAAC,CAAA;AAxBY,QAAA,YAAY,gBAwBxB;AAED,sCAAsC;AACtC,SAAS,4BAA4B;IACnC,+BAA+B;IAC/B,IAAI,OAAO,MAAM,KAAK,WAAW,EAAE,CAAC;QAClC,OAAO,KAAK,CAAA;IACd,CAAC;IAED,wDAAwD;IACxD,IAAI,OAAO,OAAO,KAAK,WAAW,EAAE,CAAC;QACnC,OAAO,KAAK,CAAA;IACd,CAAC;IAED,qFAAqF;IACrF,MAAM,cAAc,GAAI,OAAe,CAAC,SAAS,CAAC,CAAA;IAClD,IAAI,cAAc,KAAK,SAAS,IAAI,cAAc,KAAK,IAAI,EAAE,CAAC;QAC5D,OAAO,KAAK,CAAA;IACd,CAAC;IAED,MAAM,YAAY,GAAG,cAAc,CAAC,KAAK,CAAC,WAAW,CAAC,CAAA;IACtD,IAAI,CAAC,YAAY,EAAE,CAAC;QAClB,OAAO,KAAK,CAAA;IACd,CAAC;IAED,MAAM,YAAY,GAAG,QAAQ,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAA;IAClD,OAAO,YAAY,IAAI,EAAE,CAAA;AAC3B,CAAC;AAED,IAAI,4BAA4B,EAAE,EAAE,CAAC;IACnC,OAAO,CAAC,IAAI,CACV,uHAAuH;QACrH,yCAAyC;QACzC,iFAAiF,CACpF,CAAA;AACH,CAAC"}
@@ -0,0 +1,6 @@
1
+ import { AuthClient } from '@supabase/auth-js';
2
+ import { SupabaseAuthClientOptions } from './types';
3
+ export declare class SupabaseAuthClient extends AuthClient {
4
+ constructor(options: SupabaseAuthClientOptions);
5
+ }
6
+ //# sourceMappingURL=SupabaseAuthClient.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SupabaseAuthClient.d.ts","sourceRoot":"","sources":["../../../src/lib/SupabaseAuthClient.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAA;AAC9C,OAAO,EAAE,yBAAyB,EAAE,MAAM,SAAS,CAAA;AAEnD,qBAAa,kBAAmB,SAAQ,UAAU;gBACpC,OAAO,EAAE,yBAAyB;CAG/C"}
@@ -0,0 +1,11 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SupabaseAuthClient = void 0;
4
+ const auth_js_1 = require("@supabase/auth-js");
5
+ class SupabaseAuthClient extends auth_js_1.AuthClient {
6
+ constructor(options) {
7
+ super(options);
8
+ }
9
+ }
10
+ exports.SupabaseAuthClient = SupabaseAuthClient;
11
+ //# sourceMappingURL=SupabaseAuthClient.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SupabaseAuthClient.js","sourceRoot":"","sources":["../../../src/lib/SupabaseAuthClient.ts"],"names":[],"mappings":";;;AAAA,+CAA8C;AAG9C,MAAa,kBAAmB,SAAQ,oBAAU;IAChD,YAAY,OAAkC;QAC5C,KAAK,CAAC,OAAO,CAAC,CAAA;IAChB,CAAC;CACF;AAJD,gDAIC"}
@@ -0,0 +1,16 @@
1
+ import { RealtimeClientOptions } from '@supabase/realtime-js';
2
+ import { SupabaseAuthClientOptions } from './types';
3
+ export declare const DEFAULT_HEADERS: {
4
+ 'X-Client-Info': string;
5
+ };
6
+ export declare const DEFAULT_GLOBAL_OPTIONS: {
7
+ headers: {
8
+ 'X-Client-Info': string;
9
+ };
10
+ };
11
+ export declare const DEFAULT_DB_OPTIONS: {
12
+ schema: string;
13
+ };
14
+ export declare const DEFAULT_AUTH_OPTIONS: SupabaseAuthClientOptions;
15
+ export declare const DEFAULT_REALTIME_OPTIONS: RealtimeClientOptions;
16
+ //# sourceMappingURL=constants.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../src/lib/constants.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAA;AAC7D,OAAO,EAAE,yBAAyB,EAAE,MAAM,SAAS,CAAA;AAenD,eAAO,MAAM,eAAe;;CAA0D,CAAA;AAEtF,eAAO,MAAM,sBAAsB;;;;CAElC,CAAA;AAED,eAAO,MAAM,kBAAkB;;CAE9B,CAAA;AAED,eAAO,MAAM,oBAAoB,EAAE,yBAKlC,CAAA;AAED,eAAO,MAAM,wBAAwB,EAAE,qBAA0B,CAAA"}
@@ -0,0 +1,33 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.DEFAULT_REALTIME_OPTIONS = exports.DEFAULT_AUTH_OPTIONS = exports.DEFAULT_DB_OPTIONS = exports.DEFAULT_GLOBAL_OPTIONS = exports.DEFAULT_HEADERS = void 0;
4
+ const version_1 = require("./version");
5
+ let JS_ENV = '';
6
+ // @ts-ignore
7
+ if (typeof Deno !== 'undefined') {
8
+ JS_ENV = 'deno';
9
+ }
10
+ else if (typeof document !== 'undefined') {
11
+ JS_ENV = 'web';
12
+ }
13
+ else if (typeof navigator !== 'undefined' && navigator.product === 'ReactNative') {
14
+ JS_ENV = 'react-native';
15
+ }
16
+ else {
17
+ JS_ENV = 'node';
18
+ }
19
+ exports.DEFAULT_HEADERS = { 'X-Client-Info': `supabase-js-${JS_ENV}/${version_1.version}` };
20
+ exports.DEFAULT_GLOBAL_OPTIONS = {
21
+ headers: exports.DEFAULT_HEADERS,
22
+ };
23
+ exports.DEFAULT_DB_OPTIONS = {
24
+ schema: 'public',
25
+ };
26
+ exports.DEFAULT_AUTH_OPTIONS = {
27
+ autoRefreshToken: true,
28
+ persistSession: true,
29
+ detectSessionInUrl: true,
30
+ flowType: 'implicit',
31
+ };
32
+ exports.DEFAULT_REALTIME_OPTIONS = {};
33
+ //# sourceMappingURL=constants.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../src/lib/constants.ts"],"names":[],"mappings":";;;AAGA,uCAAmC;AAEnC,IAAI,MAAM,GAAG,EAAE,CAAA;AACf,aAAa;AACb,IAAI,OAAO,IAAI,KAAK,WAAW,EAAE,CAAC;IAChC,MAAM,GAAG,MAAM,CAAA;AACjB,CAAC;KAAM,IAAI,OAAO,QAAQ,KAAK,WAAW,EAAE,CAAC;IAC3C,MAAM,GAAG,KAAK,CAAA;AAChB,CAAC;KAAM,IAAI,OAAO,SAAS,KAAK,WAAW,IAAI,SAAS,CAAC,OAAO,KAAK,aAAa,EAAE,CAAC;IACnF,MAAM,GAAG,cAAc,CAAA;AACzB,CAAC;KAAM,CAAC;IACN,MAAM,GAAG,MAAM,CAAA;AACjB,CAAC;AAEY,QAAA,eAAe,GAAG,EAAE,eAAe,EAAE,eAAe,MAAM,IAAI,iBAAO,EAAE,EAAE,CAAA;AAEzE,QAAA,sBAAsB,GAAG;IACpC,OAAO,EAAE,uBAAe;CACzB,CAAA;AAEY,QAAA,kBAAkB,GAAG;IAChC,MAAM,EAAE,QAAQ;CACjB,CAAA;AAEY,QAAA,oBAAoB,GAA8B;IAC7D,gBAAgB,EAAE,IAAI;IACtB,cAAc,EAAE,IAAI;IACpB,kBAAkB,EAAE,IAAI;IACxB,QAAQ,EAAE,UAAU;CACrB,CAAA;AAEY,QAAA,wBAAwB,GAA0B,EAAE,CAAA"}
@@ -0,0 +1,6 @@
1
+ type Fetch = typeof fetch;
2
+ export declare const resolveFetch: (customFetch?: Fetch) => Fetch;
3
+ export declare const resolveHeadersConstructor: () => any;
4
+ export declare const fetchWithAuth: (supabaseKey: string, getAccessToken: () => Promise<string | null>, customFetch?: Fetch) => Fetch;
5
+ export {};
6
+ //# sourceMappingURL=fetch.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fetch.d.ts","sourceRoot":"","sources":["../../../src/lib/fetch.ts"],"names":[],"mappings":"AAGA,KAAK,KAAK,GAAG,OAAO,KAAK,CAAA;AAEzB,eAAO,MAAM,YAAY,GAAI,cAAc,KAAK,KAAG,KAUlD,CAAA;AAED,eAAO,MAAM,yBAAyB,WAMrC,CAAA;AAED,eAAO,MAAM,aAAa,GACxB,aAAa,MAAM,EACnB,gBAAgB,MAAM,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,EAC5C,cAAc,KAAK,KAClB,KAkBF,CAAA"}