@weirdscience/based-client 0.3.1 → 0.4.0

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/dist/client.d.ts CHANGED
@@ -1,3 +1,3 @@
1
- import type { BasedClientOptions, BasedClient } from "./types";
2
- export declare function createClient(options: BasedClientOptions): BasedClient;
1
+ import type { BasedClientOptions, BasedClient, DefaultTables } from "./types";
2
+ export declare function createClient<T extends Record<string, Record<string, unknown>> = DefaultTables>(options: BasedClientOptions): BasedClient<T>;
3
3
  //# sourceMappingURL=client.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,kBAAkB,EAGlB,WAAW,EAEZ,MAAM,SAAS,CAAC;AAqBjB,wBAAgB,YAAY,CAAC,OAAO,EAAE,kBAAkB,GAAG,WAAW,CAyPrE"}
1
+ {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,kBAAkB,EAGlB,WAAW,EAEX,aAAa,EAId,MAAM,SAAS,CAAC;AAsBjB,wBAAgB,YAAY,CAC1B,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,GAAG,aAAa,EACjE,OAAO,EAAE,kBAAkB,GAAG,WAAW,CAAC,CAAC,CAAC,CAyV7C"}
@@ -1,5 +1,5 @@
1
1
  import type { MutationResult, DefaultTables } from "../types";
2
- type MutationOperation = "create" | "update" | "delete";
2
+ type MutationOperation = "create" | "update" | "upsert" | "delete";
3
3
  export declare function useMutation<T extends Record<string, Record<string, unknown>> = DefaultTables, K extends string & keyof T = string & keyof T>(table: K, operation: MutationOperation): MutationResult<T[K]>;
4
4
  export {};
5
5
  //# sourceMappingURL=use-mutation.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"use-mutation.d.ts","sourceRoot":"","sources":["../../src/hooks/use-mutation.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAE9D,KAAK,iBAAiB,GAAG,QAAQ,GAAG,QAAQ,GAAG,QAAQ,CAAC;AAExD,wBAAgB,WAAW,CACzB,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,GAAG,aAAa,EACjE,CAAC,SAAS,MAAM,GAAG,MAAM,CAAC,GAAG,MAAM,GAAG,MAAM,CAAC,EAE7C,KAAK,EAAE,CAAC,EACR,SAAS,EAAE,iBAAiB,GAC3B,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CA0DtB"}
1
+ {"version":3,"file":"use-mutation.d.ts","sourceRoot":"","sources":["../../src/hooks/use-mutation.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAE9D,KAAK,iBAAiB,GAAG,QAAQ,GAAG,QAAQ,GAAG,QAAQ,GAAG,QAAQ,CAAC;AAEnE,wBAAgB,WAAW,CACzB,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,GAAG,aAAa,EACjE,CAAC,SAAS,MAAM,GAAG,MAAM,CAAC,GAAG,MAAM,GAAG,MAAM,CAAC,EAE7C,KAAK,EAAE,CAAC,EACR,SAAS,EAAE,iBAAiB,GAC3B,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAkDtB"}
@@ -1 +1 @@
1
- {"version":3,"file":"use-query.d.ts","sourceRoot":"","sources":["../../src/hooks/use-query.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,YAAY,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAEzE,wBAAgB,QAAQ,CACtB,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,GAAG,aAAa,EACjE,CAAC,SAAS,MAAM,GAAG,MAAM,CAAC,GAAG,MAAM,GAAG,MAAM,CAAC,EAE7C,KAAK,EAAE,CAAC,EACR,OAAO,CAAC,EAAE,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAC3B,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAyDnB"}
1
+ {"version":3,"file":"use-query.d.ts","sourceRoot":"","sources":["../../src/hooks/use-query.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,YAAY,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAEzE,wBAAgB,QAAQ,CACtB,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,GAAG,aAAa,EACjE,CAAC,SAAS,MAAM,GAAG,MAAM,CAAC,GAAG,MAAM,GAAG,MAAM,CAAC,EAE7C,KAAK,EAAE,CAAC,EACR,OAAO,CAAC,EAAE,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAC3B,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAwCnB"}
@@ -1 +1 @@
1
- {"version":3,"file":"use-record.d.ts","sourceRoot":"","sources":["../../src/hooks/use-record.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,aAAa,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAE3E,wBAAgB,SAAS,CACvB,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,GAAG,aAAa,EACjE,CAAC,SAAS,MAAM,GAAG,MAAM,CAAC,GAAG,MAAM,GAAG,MAAM,CAAC,EAE7C,KAAK,EAAE,CAAC,EACR,EAAE,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,EAC7B,OAAO,CAAC,EAAE,aAAa,GACtB,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CA8CpB"}
1
+ {"version":3,"file":"use-record.d.ts","sourceRoot":"","sources":["../../src/hooks/use-record.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,aAAa,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAE3E,wBAAgB,SAAS,CACvB,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,GAAG,aAAa,EACjE,CAAC,SAAS,MAAM,GAAG,MAAM,CAAC,GAAG,MAAM,GAAG,MAAM,CAAC,EAE7C,KAAK,EAAE,CAAC,EACR,EAAE,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,EAC7B,OAAO,CAAC,EAAE,aAAa,GACtB,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAmCpB"}
package/dist/index.d.ts CHANGED
@@ -4,5 +4,6 @@ export { useUser } from "./hooks/use-user";
4
4
  export { useQuery } from "./hooks/use-query";
5
5
  export { useRecord } from "./hooks/use-record";
6
6
  export { useMutation } from "./hooks/use-mutation";
7
- export type { BasedClient, BasedClientOptions, StorageAdapter, AuthUser, AuthState, QueryOptions, QueryResult, RecordOptions, RecordResult, MutationResult, DefaultTables, } from "./types";
7
+ export { BasedError } from "./types";
8
+ export type { BasedClient, BasedClientOptions, BasedTable, ListResult, StorageAdapter, AuthUser, AuthState, QueryOptions, QueryResult, RecordOptions, RecordResult, MutationResult, DefaultTables, } from "./types";
8
9
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AACxC,OAAO,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAC3D,OAAO,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAC3C,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAC7C,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAC/C,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAEnD,YAAY,EACV,WAAW,EACX,kBAAkB,EAClB,cAAc,EACd,QAAQ,EACR,SAAS,EACT,YAAY,EACZ,WAAW,EACX,aAAa,EACb,YAAY,EACZ,cAAc,EACd,aAAa,GACd,MAAM,SAAS,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AACxC,OAAO,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAC3D,OAAO,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAC3C,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAC7C,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAC/C,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACnD,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAErC,YAAY,EACV,WAAW,EACX,kBAAkB,EAClB,UAAU,EACV,UAAU,EACV,cAAc,EACd,QAAQ,EACR,SAAS,EACT,YAAY,EACZ,WAAW,EACX,aAAa,EACb,YAAY,EACZ,cAAc,EACd,aAAa,GACd,MAAM,SAAS,CAAC"}
package/dist/index.js CHANGED
@@ -1,3 +1,17 @@
1
+ // src/types.ts
2
+ class BasedError extends Error {
3
+ code;
4
+ status;
5
+ details;
6
+ constructor(code, message, status, details) {
7
+ super(message);
8
+ this.name = "BasedError";
9
+ this.code = code;
10
+ this.status = status;
11
+ this.details = details;
12
+ }
13
+ }
14
+
1
15
  // src/client.ts
2
16
  var DEFAULT_STORAGE_KEY = "based.session";
3
17
  function defaultStorage() {
@@ -208,9 +222,86 @@ function createClient(options) {
208
222
  return null;
209
223
  }
210
224
  }
225
+ async function parseOrThrow(res, fallbackCode) {
226
+ let json = null;
227
+ try {
228
+ json = await res.json();
229
+ } catch {}
230
+ if (!res.ok) {
231
+ const err = json?.error;
232
+ throw new BasedError(err?.code || fallbackCode, err?.message || `Request failed with status ${res.status}`, res.status, err?.details);
233
+ }
234
+ return json;
235
+ }
236
+ function from(table) {
237
+ const basePath = `/api/${table}`;
238
+ return {
239
+ async select(opts) {
240
+ const params = new URLSearchParams;
241
+ if (opts?.limit !== undefined)
242
+ params.set("limit", String(opts.limit));
243
+ if (opts?.offset !== undefined)
244
+ params.set("offset", String(opts.offset));
245
+ if (opts?.filter) {
246
+ for (const [key, value] of Object.entries(opts.filter)) {
247
+ if (value !== undefined)
248
+ params.set(key, String(value));
249
+ }
250
+ }
251
+ const query = params.toString();
252
+ const res = await fetchWithAuth(`${basePath}${query ? `?${query}` : ""}`);
253
+ const json = await parseOrThrow(res, "SELECT_FAILED");
254
+ return { data: json.data, total: json.total ?? json.data.length };
255
+ },
256
+ async get(id) {
257
+ const res = await fetchWithAuth(`${basePath}/${encodeURIComponent(id)}`);
258
+ if (res.status === 404)
259
+ return null;
260
+ const json = await parseOrThrow(res, "GET_FAILED");
261
+ return json.data;
262
+ },
263
+ async insert(data) {
264
+ const res = await fetchWithAuth(basePath, {
265
+ method: "POST",
266
+ body: JSON.stringify(data)
267
+ });
268
+ const json = await parseOrThrow(res, "INSERT_FAILED");
269
+ return json.data;
270
+ },
271
+ async update(id, data) {
272
+ const { id: _omit, ...rest } = data;
273
+ const res = await fetchWithAuth(`${basePath}/${encodeURIComponent(id)}`, {
274
+ method: "PUT",
275
+ body: JSON.stringify(rest)
276
+ });
277
+ const json = await parseOrThrow(res, "UPDATE_FAILED");
278
+ return json.data;
279
+ },
280
+ async upsert(data) {
281
+ const { id, ...rest } = data;
282
+ if (!id) {
283
+ throw new BasedError("MISSING_ID", "upsert() requires `data.id`. Use insert() to let the server generate one.", 400);
284
+ }
285
+ const res = await fetchWithAuth(`${basePath}/${encodeURIComponent(id)}`, {
286
+ method: "PUT",
287
+ body: JSON.stringify(rest)
288
+ });
289
+ const json = await parseOrThrow(res, "UPSERT_FAILED");
290
+ return json.data;
291
+ },
292
+ async delete(id) {
293
+ const res = await fetchWithAuth(`${basePath}/${encodeURIComponent(id)}`, {
294
+ method: "DELETE"
295
+ });
296
+ await parseOrThrow(res, "DELETE_FAILED");
297
+ return { deleted: true };
298
+ }
299
+ };
300
+ }
211
301
  return {
212
302
  auth: { signUp, signIn, signOut, refreshSession, getUser },
213
303
  fetch: fetchWithAuth,
304
+ from,
214
305
  subscribe,
215
306
  getState,
216
307
  ready
@@ -259,32 +350,13 @@ function useQuery(table, options) {
259
350
  const fetchData = useCallback(async () => {
260
351
  setIsLoading(true);
261
352
  setError(null);
262
- const params = new URLSearchParams;
263
- if (options?.limit)
264
- params.set("limit", String(options.limit));
265
- if (options?.offset)
266
- params.set("offset", String(options.offset));
267
- if (options?.filter) {
268
- for (const [key, value] of Object.entries(options.filter)) {
269
- if (value !== undefined)
270
- params.set(key, String(value));
271
- }
272
- }
273
- const query = params.toString();
274
- const path = `/api/${table}${query ? `?${query}` : ""}`;
275
353
  try {
276
- const res = await client.fetch(path);
277
- const json = await res.json();
278
- if (!res.ok) {
279
- setError(json.error || { code: "UNKNOWN", message: "Request failed" });
280
- setData(null);
281
- setTotal(0);
282
- } else {
283
- setData(json.data);
284
- setTotal(json.total ?? 0);
285
- }
354
+ const result = await client.from(table).select({ filter: options?.filter, limit: options?.limit, offset: options?.offset });
355
+ setData(result.data);
356
+ setTotal(result.total);
286
357
  } catch (err) {
287
- setError({ code: "NETWORK_ERROR", message: err.message });
358
+ const code = err instanceof BasedError ? err.code : "NETWORK_ERROR";
359
+ setError({ code, message: err.message });
288
360
  setData(null);
289
361
  setTotal(0);
290
362
  } finally {
@@ -317,21 +389,11 @@ function useRecord(table, id, options) {
317
389
  setIsLoading(true);
318
390
  setError(null);
319
391
  try {
320
- const res = await client.fetch(`/api/${table}/${encodeURIComponent(id)}`);
321
- const json = await res.json();
322
- if (!res.ok) {
323
- if (res.status === 404) {
324
- setData(null);
325
- setError(null);
326
- } else {
327
- setError(json.error || { code: "UNKNOWN", message: "Request failed" });
328
- setData(null);
329
- }
330
- } else {
331
- setData(json.data);
332
- }
392
+ const row = await client.from(table).get(id);
393
+ setData(row);
333
394
  } catch (err) {
334
- setError({ code: "NETWORK_ERROR", message: err.message });
395
+ const code = err instanceof BasedError ? err.code : "NETWORK_ERROR";
396
+ setError({ code, message: err.message });
335
397
  setData(null);
336
398
  } finally {
337
399
  setIsLoading(false);
@@ -358,42 +420,32 @@ function useMutation(table, operation) {
358
420
  setIsLoading(true);
359
421
  setError(null);
360
422
  try {
361
- let path;
362
- let method;
363
- let body;
423
+ const builder = client.from(table);
364
424
  switch (operation) {
365
425
  case "create":
366
- path = `/api/${table}`;
367
- method = "POST";
368
- body = JSON.stringify(data);
369
- break;
370
- case "update":
426
+ return await builder.insert(data);
427
+ case "update": {
371
428
  if (!data.id)
372
- throw new Error("Update requires an 'id' field");
373
- path = `/api/${table}/${data.id}`;
374
- method = "PUT";
429
+ throw new BasedError("MISSING_ID", "Update requires an 'id' field", 400);
375
430
  const { id, ...rest } = data;
376
- body = JSON.stringify(rest);
377
- break;
378
- case "delete":
431
+ return await builder.update(String(id), rest);
432
+ }
433
+ case "upsert": {
379
434
  if (!data.id)
380
- throw new Error("Delete requires an 'id' field");
381
- path = `/api/${table}/${data.id}`;
382
- method = "DELETE";
383
- break;
384
- }
385
- const res = await client.fetch(path, { method, body });
386
- const json = await res.json();
387
- if (!res.ok) {
388
- const err = json.error || { code: "UNKNOWN", message: "Mutation failed" };
389
- setError(err);
390
- throw new Error(err.message);
435
+ throw new BasedError("MISSING_ID", "Upsert requires an 'id' field", 400);
436
+ return await builder.upsert(data);
437
+ }
438
+ case "delete": {
439
+ if (!data.id)
440
+ throw new BasedError("MISSING_ID", "Delete requires an 'id' field", 400);
441
+ await builder.delete(String(data.id));
442
+ return data;
443
+ }
391
444
  }
392
- return json.data;
393
445
  } catch (err) {
394
- if (!error) {
395
- setError({ code: "MUTATION_ERROR", message: err.message });
396
- }
446
+ const code = err instanceof BasedError ? err.code : "MUTATION_ERROR";
447
+ const message = err.message;
448
+ setError({ code, message });
397
449
  throw err;
398
450
  } finally {
399
451
  setIsLoading(false);
@@ -408,5 +460,6 @@ export {
408
460
  useMutation,
409
461
  useBasedClient,
410
462
  createClient,
411
- BasedProvider
463
+ BasedProvider,
464
+ BasedError
412
465
  };
package/dist/types.d.ts CHANGED
@@ -30,7 +30,7 @@ export interface AuthState {
30
30
  */
31
31
  isLoading: boolean;
32
32
  }
33
- export interface BasedClient {
33
+ export interface BasedClient<T extends Record<string, Record<string, unknown>> = DefaultTables> {
34
34
  auth: {
35
35
  signUp(email: string, password: string): Promise<AuthUser>;
36
36
  signIn(email: string, password: string): Promise<AuthUser>;
@@ -42,6 +42,11 @@ export interface BasedClient {
42
42
  getUser(): Promise<AuthUser | null>;
43
43
  };
44
44
  fetch(path: string, init?: RequestInit): Promise<Response>;
45
+ /**
46
+ * Typed data builder for a table. Exposes `select`, `get`, `insert`,
47
+ * `update`, `upsert`, and `delete`. Methods throw `BasedError` on failure.
48
+ */
49
+ from<K extends string & keyof T>(table: K): BasedTable<T[K]>;
45
50
  subscribe(listener: () => void): () => void;
46
51
  getState(): AuthState;
47
52
  /**
@@ -50,6 +55,48 @@ export interface BasedClient {
50
55
  */
51
56
  ready(): Promise<void>;
52
57
  }
58
+ export interface ListResult<T> {
59
+ data: T[];
60
+ total: number;
61
+ }
62
+ export interface BasedTable<T = Record<string, unknown>> {
63
+ /**
64
+ * List rows with optional filter, limit, and offset. Returns `{ data, total }`.
65
+ */
66
+ select(options?: QueryOptions<T>): Promise<ListResult<T>>;
67
+ /**
68
+ * Fetch a single row by id. Resolves to `null` on 404.
69
+ */
70
+ get(id: string): Promise<T | null>;
71
+ /**
72
+ * Create a row. If `id` is omitted the server generates one.
73
+ */
74
+ insert(data: Partial<T> & Record<string, unknown>): Promise<T>;
75
+ /**
76
+ * Upsert a row at the given id. Creates if missing, updates if present.
77
+ * Wraps PUT /api/:table/:id (RFC 7231 § 4.3.4 upsert semantics).
78
+ */
79
+ update(id: string, data: Partial<T> & Record<string, unknown>): Promise<T>;
80
+ /**
81
+ * Upsert using `data.id` as the key. Equivalent to `update(data.id, data)`
82
+ * but reads more clearly when the caller picks the id themselves.
83
+ */
84
+ upsert(data: Partial<T> & Record<string, unknown> & {
85
+ id: string;
86
+ }): Promise<T>;
87
+ /**
88
+ * Delete a row by id.
89
+ */
90
+ delete(id: string): Promise<{
91
+ deleted: true;
92
+ }>;
93
+ }
94
+ export declare class BasedError extends Error {
95
+ code: string;
96
+ status: number;
97
+ details?: unknown;
98
+ constructor(code: string, message: string, status: number, details?: unknown);
99
+ }
53
100
  export interface QueryOptions<T = Record<string, unknown>> {
54
101
  filter?: Partial<Record<keyof T, string | number | boolean>>;
55
102
  limit?: number;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@weirdscience/based-client",
3
- "version": "0.3.1",
3
+ "version": "0.4.0",
4
4
  "description": "React SDK for Based — a minimal self-hosted BaaS",
5
5
  "license": "MIT",
6
6
  "repository": {