@motherbase/client 2.2.3 → 2.2.4

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.
@@ -69,6 +69,16 @@ export interface FindManyArgs<Row, Select extends SelectColumns<Row> | undefined
69
69
  /** Skip this many rows first. Needs `take`. */
70
70
  skip?: number;
71
71
  }
72
+ /** What `findUnique()` accepts: a `where` that must name a column, and optionally a `select`. */
73
+ export interface FindUniqueArgs<Row, Select extends SelectColumns<Row> | undefined = undefined> {
74
+ where: Where<Row>;
75
+ select?: Select;
76
+ }
77
+ /** What `createMany()` accepts. `skipDuplicates` drops rows whose primary key already exists. */
78
+ export interface CreateManyArgs<Insert> {
79
+ data: Insert[];
80
+ skipDuplicates?: boolean;
81
+ }
72
82
  /** `select: { id: true }` narrows each result to `Pick<Row, 'id'>`; no select is the whole row. */
73
83
  export type Selected<Row, Select> = Select extends SelectColumns<Row> ? Pick<Row, Extract<keyof Select, keyof Row>> : Row;
74
84
  /**
@@ -86,6 +96,30 @@ export interface TableFacade<Row, Insert, Update> {
86
96
  * @example await client.db.posts.findFirst({ where: { slug } })
87
97
  */
88
98
  findFirst<Select extends SelectColumns<Row> | undefined = undefined>(args?: Omit<FindManyArgs<Row, Select>, 'take'>): Promise<Selected<Row, Select> | null>;
99
+ /**
100
+ * Like `findFirst()`, but throws when no row matches.
101
+ * @example await client.db.posts.findFirstOrThrow({ where: { slug } })
102
+ */
103
+ findFirstOrThrow<Select extends SelectColumns<Row> | undefined = undefined>(args?: Omit<FindManyArgs<Row, Select>, 'take'>): Promise<Selected<Row, Select>>;
104
+ /**
105
+ * Read the one row matching `where`, or `null` when none does. Throws if
106
+ * several match: the database knows which columns are unique, the facade
107
+ * only sees the answer.
108
+ * @example await client.db.posts.findUnique({ where: { id } })
109
+ */
110
+ findUnique<Select extends SelectColumns<Row> | undefined = undefined>(args: FindUniqueArgs<Row, Select>): Promise<Selected<Row, Select> | null>;
111
+ /**
112
+ * Like `findUnique()`, but throws when no row matches.
113
+ * @example await client.db.posts.findUniqueOrThrow({ where: { id } })
114
+ */
115
+ findUniqueOrThrow<Select extends SelectColumns<Row> | undefined = undefined>(args: FindUniqueArgs<Row, Select>): Promise<Selected<Row, Select>>;
116
+ /**
117
+ * Count the rows matching `where`, without reading them.
118
+ * @example await client.db.posts.count({ where: { published: true } })
119
+ */
120
+ count(args?: {
121
+ where?: Where<Row>;
122
+ }): Promise<number>;
89
123
  /**
90
124
  * Insert one row and resolve it as stored, defaults and generated ids included.
91
125
  * @example const post = await client.db.posts.create({ data: { title } })
@@ -93,6 +127,28 @@ export interface TableFacade<Row, Insert, Update> {
93
127
  create(args: {
94
128
  data: Insert;
95
129
  }): Promise<Row>;
130
+ /**
131
+ * Insert several rows in one request and resolve how many were inserted.
132
+ * `skipDuplicates` drops rows whose primary key already exists.
133
+ * @example await client.db.tags.createMany({ data: [{ name: 'a' }, { name: 'b' }], skipDuplicates: true })
134
+ */
135
+ createMany(args: CreateManyArgs<Insert>): Promise<{
136
+ count: number;
137
+ }>;
138
+ /**
139
+ * `createMany()` resolving the inserted rows instead of their count.
140
+ * @example const tags = await client.db.tags.createManyAndReturn({ data: [{ name: 'a' }] })
141
+ */
142
+ createManyAndReturn(args: CreateManyArgs<Insert>): Promise<Row[]>;
143
+ /**
144
+ * Update the one row matching `where` and resolve it. Throws when none
145
+ * matches, and when several would: the server refuses before writing.
146
+ * @example await client.db.posts.update({ where: { id }, data: { title } })
147
+ */
148
+ update(args: {
149
+ where: Where<Row>;
150
+ data: Update;
151
+ }): Promise<Row>;
96
152
  /**
97
153
  * Update every row matching `where` and resolve the updated rows (Prisma
98
154
  * resolves `{ count }`). Throws if `where` matches no column, so an id that
@@ -112,6 +168,24 @@ export interface TableFacade<Row, Insert, Update> {
112
168
  deleteMany(args: {
113
169
  where: Where<Row>;
114
170
  }): Promise<Row[]>;
171
+ /**
172
+ * Delete the one row matching `where` and resolve it. Throws when none
173
+ * matches, and when several would: the server refuses before deleting.
174
+ * @example await client.db.posts.delete({ where: { id } })
175
+ */
176
+ delete(args: {
177
+ where: Where<Row>;
178
+ }): Promise<Row>;
179
+ /**
180
+ * Update the row matching `where` with `update`, or insert `create` when
181
+ * none matches, and resolve the row.
182
+ * @example await client.db.likes.upsert({ where: { post_id, user_id }, create: { post_id, user_id }, update: {} })
183
+ */
184
+ upsert(args: {
185
+ where: Where<Row>;
186
+ create: Insert;
187
+ update: Update;
188
+ }): Promise<Row>;
115
189
  }
116
190
  /** `client.db`: one `TableFacade` per table or view of the generated `Database`. */
117
191
  export type DatabaseFacade<Schema extends GenericSchema> = {
@@ -1 +1 @@
1
- {"version":3,"file":"facade.d.ts","sourceRoot":"","sources":["../../src/database/facade.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"facade.d.ts","sourceRoot":"","sources":["../../src/database/facade.ts"],"names":[],"mappings":"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"}
@@ -84,10 +84,25 @@ function applyFilter(query, { column, operator, value }) {
84
84
  function requireFilters(where, method) {
85
85
  const filters = filtersOf(where);
86
86
  if (!filters.length) {
87
- throw new Error(`${method}(): where matched no column. Use client.from(table) to write every row.`);
87
+ throw new Error(`${method}(): where matched no column. Use client.from(table) to target every row.`);
88
88
  }
89
89
  return filters;
90
90
  }
91
+ /** `query` narrowed by a `where` that must not be empty. */
92
+ function narrowed(query, where, method) {
93
+ for (const filter of requireFilters(where, method))
94
+ applyFilter(query, filter);
95
+ return query;
96
+ }
97
+ /**
98
+ * A PATCH or DELETE matching nothing answers 404 here (under compat it
99
+ * resolves empty instead). Either way it means no row, not a failure.
100
+ */
101
+ function noRows(error) {
102
+ if (error.status === 404)
103
+ return [];
104
+ throw error;
105
+ }
91
106
  /** The read half: `findMany` arguments applied to a fresh builder. Exported for tests. */
92
107
  export function applyFindArgs(query, args = {}) {
93
108
  query.select(args.select ? Object.keys(args.select).join(',') : '*');
@@ -118,6 +133,11 @@ async function dataOf(query) {
118
133
  * one instead of throwing synchronously.
119
134
  */
120
135
  export function tableFacade(newQuery) {
136
+ async function createManyAndReturn({ data, skipDuplicates }) {
137
+ const rows = data;
138
+ const query = skipDuplicates ? newQuery().upsert(rows, { ignoreDuplicates: true }) : newQuery().insert(rows);
139
+ return dataOf(query.select().throwOnError());
140
+ }
121
141
  return {
122
142
  async findMany(args) {
123
143
  return dataOf(applyFindArgs(newQuery(), args).throwOnError());
@@ -125,22 +145,53 @@ export function tableFacade(newQuery) {
125
145
  async findFirst(args) {
126
146
  return dataOf(applyFindArgs(newQuery(), { ...args, take: 1 }).throwOnError().maybeSingle());
127
147
  },
148
+ async findFirstOrThrow(args) {
149
+ return dataOf(applyFindArgs(newQuery(), { ...args, take: 1 }).throwOnError().single());
150
+ },
151
+ // Two rows are enough to tell a unique match from several, without reading them all.
152
+ async findUnique(args) {
153
+ requireFilters(args.where, 'findUnique');
154
+ return dataOf(applyFindArgs(newQuery(), { ...args, take: 2 }).throwOnError().maybeSingle());
155
+ },
156
+ async findUniqueOrThrow(args) {
157
+ requireFilters(args.where, 'findUniqueOrThrow');
158
+ return dataOf(applyFindArgs(newQuery(), { ...args, take: 2 }).throwOnError().single());
159
+ },
160
+ async count(args) {
161
+ const query = newQuery().select('*', { count: 'exact', head: true });
162
+ for (const filter of filtersOf(args?.where))
163
+ applyFilter(query, filter);
164
+ return (await query.throwOnError()).count ?? 0;
165
+ },
128
166
  async create({ data }) {
129
167
  return dataOf(newQuery().insert(data).select().throwOnError().single());
130
168
  },
169
+ // The server sends no Content-Range on writes, so the count is of the rows sent back.
170
+ async createMany(args) {
171
+ return { count: (await createManyAndReturn(args)).length };
172
+ },
173
+ createManyAndReturn,
174
+ async update({ where, data }) {
175
+ const query = narrowed(newQuery().update(data), where, 'update').maxAffected(1);
176
+ return dataOf(query.select().throwOnError().single());
177
+ },
131
178
  async updateMany({ where, data }) {
132
- const filters = requireFilters(where, 'updateMany');
133
- const query = newQuery().update(data);
134
- for (const filter of filters)
135
- applyFilter(query, filter);
136
- return dataOf(query.select().throwOnError());
179
+ return dataOf(narrowed(newQuery().update(data), where, 'updateMany').select().throwOnError());
180
+ },
181
+ async delete({ where }) {
182
+ const query = narrowed(newQuery().delete(), where, 'delete').maxAffected(1);
183
+ return dataOf(query.select().throwOnError().single());
137
184
  },
138
185
  async deleteMany({ where }) {
139
- const filters = requireFilters(where, 'deleteMany');
140
- const query = newQuery().delete();
141
- for (const filter of filters)
142
- applyFilter(query, filter);
143
- return dataOf(query.select().throwOnError());
186
+ return dataOf(narrowed(newQuery().delete(), where, 'deleteMany').select().throwOnError());
187
+ },
188
+ // ponytail: update, then insert if nothing matched. A concurrent insert in
189
+ // between fails on the unique constraint instead of merging; Prisma's own
190
+ // non-native upsert has the same gap.
191
+ async upsert({ where, create, update }) {
192
+ const query = narrowed(newQuery().update(update), where, 'upsert').maxAffected(1);
193
+ const [updated] = await dataOf(query.select().throwOnError()).catch(noRows);
194
+ return updated ?? dataOf(newQuery().insert(create).select().throwOnError().single());
144
195
  },
145
196
  };
146
197
  }
@@ -1 +1 @@
1
- {"version":3,"file":"facade.js","sourceRoot":"","sources":["../../src/database/facade.ts"],"names":[],"mappings":"AA+HA,MAAM,SAAS,GAAG,IAAI,GAAG,CAAS;IAChC,QAAQ,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,UAAU,EAAE,YAAY,EAAE,UAAU;CACjE,CAAC,CAAC;AAQxB;;;GAGG;AACH,SAAS,WAAW,CAAC,SAAkB;IACrC,IAAI,OAAO,SAAS,KAAK,QAAQ,IAAI,SAAS,KAAK,IAAI,IAAI,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC;QAAE,OAAO,KAAK,CAAC;IAClG,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IACpC,OAAO,IAAI,CAAC,MAAM,GAAG,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;AAClE,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,SAAS,CAAC,QAAgB,EAAE;IAC1C,MAAM,OAAO,GAAa,EAAE,CAAC;IAC7B,KAAK,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QACxD,IAAI,WAAW,CAAC,SAAS,CAAC,EAAE,CAAC;YAC3B,KAAK,MAAM,CAAC,QAAQ,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC;gBAC1D,OAAO,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAoB,EAAE,KAAK,EAAE,CAAC,CAAC;YAClE,CAAC;QACH,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAC;QACjE,CAAC;IACH,CAAC;IACD,OAAO,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC;AAC9D,CAAC;AAED,SAAS,WAAW,CAAC,KAAc,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAU;IACtE,MAAM,CAAC,GAAG,KAAY,CAAC;IACvB,QAAQ,QAAQ,EAAE,CAAC;QACjB,yEAAyE;QACzE,KAAK,QAAQ;YAAE,IAAI,KAAK,KAAK,IAAI;gBAAE,KAAK,CAAC,EAAE,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;;gBAAM,KAAK,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;YAAC,OAAO;QAC5F,KAAK,KAAK;YAAE,IAAI,KAAK,KAAK,IAAI;gBAAE,KAAK,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;;gBAAM,KAAK,CAAC,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;YAAC,OAAO;QACjG,KAAK,IAAI;YAAE,KAAK,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;YAAC,OAAO;QACvC,KAAK,IAAI;YAAE,KAAK,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;YAAC,OAAO;QACvC,KAAK,KAAK;YAAE,KAAK,CAAC,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;YAAC,OAAO;QACzC,KAAK,IAAI;YAAE,KAAK,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;YAAC,OAAO;QACvC,KAAK,KAAK;YAAE,KAAK,CAAC,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;YAAC,OAAO;QACzC,oCAAoC;QACpC,gGAAgG;QAChG,KAAK,UAAU;YAAE,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC;YAAC,OAAO;QACtD,KAAK,YAAY;YAAE,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC;YAAC,OAAO;QACvD,KAAK,UAAU;YAAE,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC;YAAC,OAAO;IACvD,CAAC;AACH,CAAC;AAED;;;;GAIG;AACH,SAAS,cAAc,CAAC,KAAa,EAAE,MAAc;IACnD,MAAM,OAAO,GAAG,SAAS,CAAC,KAAK,CAAC,CAAC;IACjC,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;QACpB,MAAM,IAAI,KAAK,CAAC,GAAG,MAAM,yEAAyE,CAAC,CAAC;IACtG,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,0FAA0F;AAC1F,MAAM,UAAU,aAAa,CAAC,KAAc,EAAE,OAA+B,EAAE;IAC7E,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;IACrE,KAAK,MAAM,MAAM,IAAI,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC;QAAE,WAAW,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;IACvE,KAAK,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,IAAI,EAAE,CAAC,EAAE,CAAC;QACrE,KAAK,CAAC,KAAK,CAAC,MAAM,EAAE,EAAE,SAAS,EAAE,SAAS,KAAK,KAAK,EAAE,CAAC,CAAC;IAC1D,CAAC;IACD,IAAI,IAAI,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;QAC5B,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,IAAI,CAAC,CAAC;QAC5B,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,GAAG,IAAI,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC;IAC1C,CAAC;SAAM,IAAI,IAAI,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;QACnC,MAAM,IAAI,KAAK,CAAC,wEAAwE,CAAC,CAAC;IAC5F,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;;GAGG;AACH,KAAK,UAAU,MAAM,CAAC,KAAqC;IACzD,OAAO,CAAC,MAAM,KAAK,CAAC,CAAC,IAAI,CAAC;AAC5B,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,WAAW,CAAsB,QAAuB;IACtE,OAAO;QACL,KAAK,CAAC,QAAQ,CAAC,IAAI;YACjB,OAAO,MAAM,CAAC,aAAa,CAAC,QAAQ,EAAE,EAAE,IAAI,CAAC,CAAC,YAAY,EAAE,CAAC,CAAC;QAChE,CAAC;QAED,KAAK,CAAC,SAAS,CAAC,IAAI;YAClB,OAAO,MAAM,CAAC,aAAa,CAAC,QAAQ,EAAE,EAAE,EAAE,GAAG,IAAI,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC,YAAY,EAAE,CAAC,WAAW,EAAE,CAAC,CAAC;QAC9F,CAAC;QAED,KAAK,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE;YACnB,OAAO,MAAM,CAAC,QAAQ,EAAE,CAAC,MAAM,CAAC,IAAc,CAAC,CAAC,MAAM,EAAE,CAAC,YAAY,EAAE,CAAC,MAAM,EAAE,CAAC,CAAC;QACpF,CAAC;QAED,KAAK,CAAC,UAAU,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE;YAC9B,MAAM,OAAO,GAAG,cAAc,CAAC,KAAK,EAAE,YAAY,CAAC,CAAC;YACpD,MAAM,KAAK,GAAG,QAAQ,EAAE,CAAC,MAAM,CAAC,IAAc,CAAC,CAAC;YAChD,KAAK,MAAM,MAAM,IAAI,OAAO;gBAAE,WAAW,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;YACzD,OAAO,MAAM,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,YAAY,EAAE,CAAC,CAAC;QAC/C,CAAC;QAED,KAAK,CAAC,UAAU,CAAC,EAAE,KAAK,EAAE;YACxB,MAAM,OAAO,GAAG,cAAc,CAAC,KAAK,EAAE,YAAY,CAAC,CAAC;YACpD,MAAM,KAAK,GAAG,QAAQ,EAAE,CAAC,MAAM,EAAE,CAAC;YAClC,KAAK,MAAM,MAAM,IAAI,OAAO;gBAAE,WAAW,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;YACzD,OAAO,MAAM,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,YAAY,EAAE,CAAC,CAAC;QAC/C,CAAC;KACF,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"facade.js","sourceRoot":"","sources":["../../src/database/facade.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@motherbase/client",
3
- "version": "2.2.3",
3
+ "version": "2.2.4",
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",