@motherbase/client 1.0.1 → 1.1.1
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.
- package/README.md +167 -121
- package/dist/auth.d.ts +50 -45
- package/dist/auth.d.ts.map +1 -1
- package/dist/auth.js +97 -91
- package/dist/auth.js.map +1 -1
- package/dist/channel.d.ts +104 -0
- package/dist/channel.d.ts.map +1 -0
- package/dist/channel.js +179 -0
- package/dist/channel.js.map +1 -0
- package/dist/functions.d.ts +24 -0
- package/dist/functions.d.ts.map +1 -0
- package/dist/functions.js +24 -0
- package/dist/functions.js.map +1 -0
- package/dist/http.d.ts +29 -2
- package/dist/http.d.ts.map +1 -1
- package/dist/http.js +58 -5
- package/dist/http.js.map +1 -1
- package/dist/index.d.ts +52 -18
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +66 -20
- package/dist/index.js.map +1 -1
- package/dist/postgrest.d.ts +58 -0
- package/dist/postgrest.d.ts.map +1 -0
- package/dist/postgrest.js +166 -0
- package/dist/postgrest.js.map +1 -0
- package/dist/realtime.d.ts +86 -2
- package/dist/realtime.d.ts.map +1 -1
- package/dist/realtime.js +304 -9
- package/dist/realtime.js.map +1 -1
- package/dist/storage.d.ts +48 -22
- package/dist/storage.d.ts.map +1 -1
- package/dist/storage.js +94 -26
- package/dist/storage.js.map +1 -1
- package/dist/types.d.ts +49 -6
- package/dist/types.d.ts.map +1 -1
- package/dist/types.js +0 -1
- package/dist/types.js.map +1 -1
- package/package.json +4 -1
package/dist/types.d.ts
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
|
-
/** Shared types for the Motherbase client SDK. */
|
|
2
|
-
|
|
1
|
+
/** Shared types for the Motherbase client SDK (Supabase-js compatible surface). */
|
|
2
|
+
import type { StorageRemoveContract, StorageUploadContract } from '@motherbase/contracts';
|
|
3
|
+
/** The envelope non-REST API endpoints (auth, storage, edge) wrap their payload in. */
|
|
3
4
|
export interface ApiEnvelope<T = unknown> {
|
|
4
5
|
status: 0 | 1;
|
|
5
6
|
message: string;
|
|
@@ -14,12 +15,17 @@ export interface User {
|
|
|
14
15
|
role?: string;
|
|
15
16
|
[key: string]: unknown;
|
|
16
17
|
}
|
|
17
|
-
/**
|
|
18
|
+
/**
|
|
19
|
+
* The bearer token issued by sign-up / sign-in. With Better Auth this is the
|
|
20
|
+
* session token; there is no separate refresh token (a session is valid until
|
|
21
|
+
* it expires, after which the user re-authenticates). `refreshToken` is kept
|
|
22
|
+
* optional for backwards source-compat and is unused.
|
|
23
|
+
*/
|
|
18
24
|
export interface Tokens {
|
|
19
25
|
accessToken: string;
|
|
20
|
-
refreshToken
|
|
26
|
+
refreshToken?: string;
|
|
21
27
|
}
|
|
22
|
-
/** The locally-held session:
|
|
28
|
+
/** The locally-held session: the bearer token plus the user it belongs to. */
|
|
23
29
|
export interface Session extends Tokens {
|
|
24
30
|
user: User;
|
|
25
31
|
}
|
|
@@ -34,7 +40,33 @@ export interface FileObject {
|
|
|
34
40
|
[key: string]: unknown;
|
|
35
41
|
}
|
|
36
42
|
export type FileVisibility = 'public' | 'private';
|
|
37
|
-
|
|
43
|
+
/** Exact payload returned by `POST /api/files/`. */
|
|
44
|
+
export type StorageUploadResponse = StorageUploadContract<FileObject>;
|
|
45
|
+
/** Exact payload returned by `DELETE /api/files/:id`. */
|
|
46
|
+
export type StorageRemoveResponse = StorageRemoveContract;
|
|
47
|
+
/** A file-ish value accepted by multipart uploads (browser File/Blob or RN asset). */
|
|
48
|
+
export type UploadInput = Blob | {
|
|
49
|
+
uri: string;
|
|
50
|
+
name?: string;
|
|
51
|
+
type?: string;
|
|
52
|
+
};
|
|
53
|
+
/**
|
|
54
|
+
* The uniform result envelope every data/auth/storage call resolves to.
|
|
55
|
+
* `error` is `null` on success; `data` is `null` on failure. Never throws for
|
|
56
|
+
* expected API errors — only for programmer misuse.
|
|
57
|
+
*/
|
|
58
|
+
export interface MotherbaseResponse<T> {
|
|
59
|
+
data: T | null;
|
|
60
|
+
error: MotherbaseError | null;
|
|
61
|
+
}
|
|
62
|
+
/** Supabase-shaped error object. */
|
|
63
|
+
export interface MotherbaseError {
|
|
64
|
+
message: string;
|
|
65
|
+
/** HTTP status code, when the failure came from an HTTP response. */
|
|
66
|
+
status?: number;
|
|
67
|
+
/** Backend/app error code, when present. */
|
|
68
|
+
code?: string;
|
|
69
|
+
}
|
|
38
70
|
/**
|
|
39
71
|
* Persists the session between runs. Implementations must be synchronous-or-async
|
|
40
72
|
* tolerant: every method may return a value or a promise of it.
|
|
@@ -50,7 +82,18 @@ export interface ClientOptions {
|
|
|
50
82
|
autoRefresh?: boolean;
|
|
51
83
|
/** Override the fetch implementation (for SSR or tests). */
|
|
52
84
|
fetch?: typeof fetch;
|
|
85
|
+
/** Extra headers merged into every request (e.g. a custom `apikey`). */
|
|
86
|
+
headers?: Record<string, string>;
|
|
87
|
+
/**
|
|
88
|
+
* Inject a socket.io factory for realtime (tests / custom transports).
|
|
89
|
+
* When omitted, `socket.io-client` is imported lazily at connect time.
|
|
90
|
+
*/
|
|
91
|
+
realtimeIoFactory?: (url: string, opts: Record<string, unknown>) => import('./realtime.js').SocketLike;
|
|
53
92
|
}
|
|
93
|
+
/** Supabase-compatible auth change events emitted by `onAuthStateChange`. */
|
|
94
|
+
export type AuthChangeEvent = 'SIGNED_IN' | 'SIGNED_OUT' | 'TOKEN_REFRESHED';
|
|
95
|
+
export type AuthChangeListener = (event: AuthChangeEvent, session: Session | null) => void;
|
|
96
|
+
/** Internal event names used by the session store. */
|
|
54
97
|
export type AuthEvent = 'signIn' | 'signOut' | 'tokenRefreshed';
|
|
55
98
|
export type AuthListener = (event: AuthEvent, session: Session | null) => void;
|
|
56
99
|
//# sourceMappingURL=types.d.ts.map
|
package/dist/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
|
package/dist/types.js
CHANGED
package/dist/types.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":""}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@motherbase/client",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.1.1",
|
|
4
4
|
"description": "Typed client SDK for Motherbase, the open source self-hosted backend platform.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./dist/index.js",
|
|
@@ -32,6 +32,9 @@
|
|
|
32
32
|
"self-hosted"
|
|
33
33
|
],
|
|
34
34
|
"license": "MIT",
|
|
35
|
+
"dependencies": {
|
|
36
|
+
"@motherbase/contracts": "^1.0.0"
|
|
37
|
+
},
|
|
35
38
|
"peerDependencies": {
|
|
36
39
|
"socket.io-client": "^4.0.0"
|
|
37
40
|
},
|