@read-frog/api-contract 0.3.0 → 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.
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","names":[],"sources":["../src/schemas/column.ts","../src/schemas/custom-table.ts","../src/schemas/notebase-beta.ts","../src/schemas/row.ts","../src/schemas/view.ts","../src/index.ts"],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","names":[],"sources":["../src/public-errors.ts","../src/schemas/beta-access.ts","../src/schemas/column.ts","../src/schemas/custom-table.ts","../src/schemas/row.ts","../src/schemas/view.ts","../src/index.ts"],"mappings":"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"}
package/dist/index.js CHANGED
@@ -1,7 +1,97 @@
1
1
  import { oc } from "@orpc/contract";
2
- import { COLUMN_MAX_WIDTH, COLUMN_MIN_WIDTH, columnConfigSchema } from "@read-frog/definitions";
2
+ import { BETA_FEATURE_KEYS, COLUMN_MAX_WIDTH, COLUMN_MIN_WIDTH, columnConfigSchema } from "@read-frog/definitions";
3
3
  import { z } from "zod";
4
-
4
+ //#region src/schemas/beta-access.ts
5
+ const BetaFeatureKeySchema = z.enum(BETA_FEATURE_KEYS);
6
+ const BetaAccessStatusInputSchema = z.object({ featureKey: BetaFeatureKeySchema }).strict();
7
+ const BetaAccessStatusOutputSchema = z.object({
8
+ featureKey: BetaFeatureKeySchema,
9
+ allowed: z.boolean()
10
+ });
11
+ //#endregion
12
+ //#region src/contracts/beta-access.ts
13
+ const betaAccessContract = { status: oc.route({
14
+ method: "GET",
15
+ path: "/beta-access/status",
16
+ summary: "Get beta access status for a feature",
17
+ tags: ["Beta Access"]
18
+ }).input(BetaAccessStatusInputSchema).output(BetaAccessStatusOutputSchema) };
19
+ //#endregion
20
+ //#region src/public-errors.ts
21
+ const CellValidationFailureReasonSchema = z.enum([
22
+ "unknown_column",
23
+ "type_mismatch",
24
+ "invalid_select_option",
25
+ "invalid_date_format"
26
+ ]);
27
+ const CellValidationFailureDetailsSchema = z.object({
28
+ expectedFormat: z.string().optional(),
29
+ expectedType: z.string().optional(),
30
+ receivedType: z.string().optional(),
31
+ receivedValue: z.unknown().optional(),
32
+ validOptions: z.array(z.string()).optional()
33
+ }).strict();
34
+ const CellValidationFailedDataSchema = z.object({
35
+ columnId: z.string(),
36
+ details: CellValidationFailureDetailsSchema,
37
+ reason: CellValidationFailureReasonSchema
38
+ }).strict();
39
+ const PUBLIC_APP_ERROR_DEFS = {
40
+ NOTEBASE_BETA_RESTRICTED: {
41
+ message: "Notebase is currently in beta for selected accounts",
42
+ status: 403
43
+ },
44
+ TABLE_NOT_FOUND: {
45
+ message: "Table not found",
46
+ status: 404
47
+ },
48
+ COLUMN_NOT_FOUND: {
49
+ message: "Column not found",
50
+ status: 404
51
+ },
52
+ ROW_NOT_FOUND: {
53
+ message: "Row not found",
54
+ status: 404
55
+ },
56
+ VIEW_NOT_FOUND: {
57
+ message: "View not found",
58
+ status: 404
59
+ },
60
+ CELL_VALIDATION_FAILED: {
61
+ data: CellValidationFailedDataSchema,
62
+ message: "Cell validation failed",
63
+ status: 422
64
+ },
65
+ PRIMARY_COLUMN_DELETE_NOT_ALLOWED: {
66
+ message: "Cannot delete primary column",
67
+ status: 400
68
+ },
69
+ CONCURRENT_POSITION_CONFLICT: {
70
+ message: "Concurrent position conflict, please retry",
71
+ status: 409
72
+ }
73
+ };
74
+ function isPublicAppErrorCode(code) {
75
+ return code !== void 0 && code in PUBLIC_APP_ERROR_DEFS;
76
+ }
77
+ function getPublicErrorDefinition(code) {
78
+ return PUBLIC_APP_ERROR_DEFS[code];
79
+ }
80
+ function pickPublicErrorMap(...codes) {
81
+ return Object.fromEntries(codes.map((code) => {
82
+ const definition = PUBLIC_APP_ERROR_DEFS[code];
83
+ if ("data" in definition) return [code, {
84
+ data: definition.data,
85
+ message: definition.message,
86
+ status: definition.status
87
+ }];
88
+ return [code, {
89
+ message: definition.message,
90
+ status: definition.status
91
+ }];
92
+ }));
93
+ }
94
+ //#endregion
5
95
  //#region src/schemas/column.ts
6
96
  const columnWidthSchema = z.number().int().min(COLUMN_MIN_WIDTH).max(COLUMN_MAX_WIDTH);
7
97
  const tableColumnSchema = z.object({
@@ -42,36 +132,37 @@ const ColumnReorderInputSchema = z.object({
42
132
  ids: z.array(z.uuid())
43
133
  });
44
134
  const ColumnReorderOutputSchema = z.object({ txid: z.number() });
45
-
135
+ //#endregion
136
+ //#region src/contracts/shared.ts
137
+ const notebaseProcedure = oc.errors(pickPublicErrorMap("NOTEBASE_BETA_RESTRICTED"));
46
138
  //#endregion
47
139
  //#region src/contracts/column.ts
48
140
  const columnContract = {
49
- create: oc.route({
141
+ create: notebaseProcedure.errors(pickPublicErrorMap("TABLE_NOT_FOUND", "CONCURRENT_POSITION_CONFLICT")).route({
50
142
  method: "POST",
51
143
  path: "/columns",
52
144
  summary: "Create column",
53
145
  tags: ["Columns"]
54
146
  }).input(ColumnCreateInputSchema).output(ColumnCreateOutputSchema),
55
- update: oc.route({
147
+ update: notebaseProcedure.errors(pickPublicErrorMap("COLUMN_NOT_FOUND")).route({
56
148
  method: "PATCH",
57
149
  path: "/columns/{columnId}",
58
150
  summary: "Update column",
59
151
  tags: ["Columns"]
60
152
  }).input(ColumnUpdateInputSchema).output(ColumnUpdateOutputSchema),
61
- delete: oc.route({
153
+ delete: notebaseProcedure.errors(pickPublicErrorMap("COLUMN_NOT_FOUND", "PRIMARY_COLUMN_DELETE_NOT_ALLOWED", "CONCURRENT_POSITION_CONFLICT")).route({
62
154
  method: "DELETE",
63
155
  path: "/columns/{columnId}",
64
156
  summary: "Delete column",
65
157
  tags: ["Columns"]
66
158
  }).input(ColumnDeleteInputSchema).output(ColumnDeleteOutputSchema),
67
- reorder: oc.route({
159
+ reorder: notebaseProcedure.errors(pickPublicErrorMap("TABLE_NOT_FOUND", "CONCURRENT_POSITION_CONFLICT")).route({
68
160
  method: "POST",
69
161
  path: "/columns/reorder",
70
162
  summary: "Reorder columns in a table",
71
163
  tags: ["Columns"]
72
164
  }).input(ColumnReorderInputSchema).output(ColumnReorderOutputSchema)
73
165
  };
74
-
75
166
  //#endregion
76
167
  //#region src/schemas/row.ts
77
168
  const rowCellsSchema = z.record(z.string(), z.unknown());
@@ -113,7 +204,6 @@ const RowReorderInputSchema = z.object({
113
204
  ids: z.array(z.uuid())
114
205
  });
115
206
  const RowReorderOutputSchema = z.object({ txid: z.number() });
116
-
117
207
  //#endregion
118
208
  //#region src/schemas/view.ts
119
209
  const tableViewTypeSchema = z.enum([
@@ -164,7 +254,6 @@ const tableViewSchema = z.object({
164
254
  createdAt: z.coerce.date(),
165
255
  updatedAt: z.coerce.date()
166
256
  });
167
-
168
257
  //#endregion
169
258
  //#region src/schemas/custom-table.ts
170
259
  const CustomTableListInputSchema = z.object({});
@@ -202,100 +291,77 @@ const CustomTableGetSchemaOutputSchema = z.object({
202
291
  updatedAt: z.coerce.date(),
203
292
  columns: z.array(tableColumnSchema)
204
293
  });
205
-
206
- //#endregion
207
- //#region src/contracts/custom-table.ts
208
- const customTableContract = {
209
- list: oc.route({
210
- method: "GET",
211
- path: "/custom-tables",
212
- summary: "List custom tables",
213
- tags: ["Custom Tables"]
214
- }).input(CustomTableListInputSchema).output(CustomTableListOutputSchema),
215
- get: oc.route({
216
- method: "GET",
217
- path: "/custom-tables/{id}",
218
- summary: "Get custom table with columns, rows, and views",
219
- tags: ["Custom Tables"]
220
- }).input(CustomTableGetInputSchema).output(CustomTableGetOutputSchema),
221
- getSchema: oc.route({
222
- method: "GET",
223
- path: "/custom-tables/{id}/schema",
224
- summary: "Get custom table schema",
225
- tags: ["Custom Tables"]
226
- }).input(CustomTableGetSchemaInputSchema).output(CustomTableGetSchemaOutputSchema),
227
- create: oc.route({
228
- method: "POST",
229
- path: "/custom-tables",
230
- summary: "Create custom table",
231
- tags: ["Custom Tables"]
232
- }).input(CustomTableCreateInputSchema).output(CustomTableCreateOutputSchema),
233
- update: oc.route({
234
- method: "PUT",
235
- path: "/custom-tables/{id}",
236
- summary: "Update custom table",
237
- tags: ["Custom Tables"]
238
- }).input(CustomTableUpdateInputSchema).output(CustomTableUpdateOutputSchema),
239
- delete: oc.route({
240
- method: "DELETE",
241
- path: "/custom-tables/{id}",
242
- summary: "Delete custom table",
243
- tags: ["Custom Tables"]
244
- }).input(CustomTableDeleteInputSchema).output(CustomTableDeleteOutputSchema)
245
- };
246
-
247
- //#endregion
248
- //#region src/schemas/notebase-beta.ts
249
- const NotebaseBetaStatusInputSchema = z.object({}).strict();
250
- const NotebaseBetaStatusOutputSchema = z.object({ allowed: z.boolean() });
251
-
252
- //#endregion
253
- //#region src/contracts/notebase-beta.ts
254
- const notebaseBetaContract = { status: oc.route({
255
- method: "GET",
256
- path: "/notebase-beta/status",
257
- summary: "Get Notebase beta access status",
258
- tags: ["Notebase Beta"]
259
- }).input(NotebaseBetaStatusInputSchema).output(NotebaseBetaStatusOutputSchema) };
260
-
261
- //#endregion
262
- //#region src/contracts/row.ts
263
- const rowContract = {
264
- create: oc.route({
265
- method: "POST",
266
- path: "/rows",
267
- summary: "Create row",
268
- tags: ["Rows"]
269
- }).input(RowCreateInputSchema).output(RowCreateOutputSchema),
270
- update: oc.route({
271
- method: "PATCH",
272
- path: "/rows/{rowId}",
273
- summary: "Update row cells",
274
- tags: ["Rows"]
275
- }).input(RowUpdateInputSchema).output(RowUpdateOutputSchema),
276
- delete: oc.route({
277
- method: "DELETE",
278
- path: "/rows/{rowId}",
279
- summary: "Delete row",
280
- tags: ["Rows"]
281
- }).input(RowDeleteInputSchema).output(RowDeleteOutputSchema),
282
- reorder: oc.route({
283
- method: "POST",
284
- path: "/rows/reorder",
285
- summary: "Reorder rows in a table",
286
- tags: ["Rows"]
287
- }).input(RowReorderInputSchema).output(RowReorderOutputSchema)
288
- };
289
-
290
294
  //#endregion
291
295
  //#region src/index.ts
292
296
  const contract = {
293
- customTable: customTableContract,
297
+ betaAccess: betaAccessContract,
298
+ customTable: {
299
+ list: notebaseProcedure.route({
300
+ method: "GET",
301
+ path: "/custom-tables",
302
+ summary: "List custom tables",
303
+ tags: ["Custom Tables"]
304
+ }).input(CustomTableListInputSchema).output(CustomTableListOutputSchema),
305
+ get: notebaseProcedure.errors(pickPublicErrorMap("TABLE_NOT_FOUND")).route({
306
+ method: "GET",
307
+ path: "/custom-tables/{id}",
308
+ summary: "Get custom table with columns, rows, and views",
309
+ tags: ["Custom Tables"]
310
+ }).input(CustomTableGetInputSchema).output(CustomTableGetOutputSchema),
311
+ getSchema: notebaseProcedure.errors(pickPublicErrorMap("TABLE_NOT_FOUND")).route({
312
+ method: "GET",
313
+ path: "/custom-tables/{id}/schema",
314
+ summary: "Get custom table schema",
315
+ tags: ["Custom Tables"]
316
+ }).input(CustomTableGetSchemaInputSchema).output(CustomTableGetSchemaOutputSchema),
317
+ create: notebaseProcedure.route({
318
+ method: "POST",
319
+ path: "/custom-tables",
320
+ summary: "Create custom table",
321
+ tags: ["Custom Tables"]
322
+ }).input(CustomTableCreateInputSchema).output(CustomTableCreateOutputSchema),
323
+ update: notebaseProcedure.errors(pickPublicErrorMap("TABLE_NOT_FOUND")).route({
324
+ method: "PUT",
325
+ path: "/custom-tables/{id}",
326
+ summary: "Update custom table",
327
+ tags: ["Custom Tables"]
328
+ }).input(CustomTableUpdateInputSchema).output(CustomTableUpdateOutputSchema),
329
+ delete: notebaseProcedure.errors(pickPublicErrorMap("TABLE_NOT_FOUND")).route({
330
+ method: "DELETE",
331
+ path: "/custom-tables/{id}",
332
+ summary: "Delete custom table",
333
+ tags: ["Custom Tables"]
334
+ }).input(CustomTableDeleteInputSchema).output(CustomTableDeleteOutputSchema)
335
+ },
294
336
  column: columnContract,
295
- row: rowContract,
296
- notebaseBeta: notebaseBetaContract
337
+ row: {
338
+ create: notebaseProcedure.errors(pickPublicErrorMap("TABLE_NOT_FOUND", "CELL_VALIDATION_FAILED", "CONCURRENT_POSITION_CONFLICT")).route({
339
+ method: "POST",
340
+ path: "/rows",
341
+ summary: "Create row",
342
+ tags: ["Rows"]
343
+ }).input(RowCreateInputSchema).output(RowCreateOutputSchema),
344
+ update: notebaseProcedure.errors(pickPublicErrorMap("ROW_NOT_FOUND", "CELL_VALIDATION_FAILED")).route({
345
+ method: "PATCH",
346
+ path: "/rows/{rowId}",
347
+ summary: "Update row cells",
348
+ tags: ["Rows"]
349
+ }).input(RowUpdateInputSchema).output(RowUpdateOutputSchema),
350
+ delete: notebaseProcedure.errors(pickPublicErrorMap("ROW_NOT_FOUND", "CONCURRENT_POSITION_CONFLICT")).route({
351
+ method: "DELETE",
352
+ path: "/rows/{rowId}",
353
+ summary: "Delete row",
354
+ tags: ["Rows"]
355
+ }).input(RowDeleteInputSchema).output(RowDeleteOutputSchema),
356
+ reorder: notebaseProcedure.errors(pickPublicErrorMap("TABLE_NOT_FOUND", "CONCURRENT_POSITION_CONFLICT")).route({
357
+ method: "POST",
358
+ path: "/rows/reorder",
359
+ summary: "Reorder rows in a table",
360
+ tags: ["Rows"]
361
+ }).input(RowReorderInputSchema).output(RowReorderOutputSchema)
362
+ }
297
363
  };
298
-
299
364
  //#endregion
300
- export { ColumnCreateInputSchema, ColumnCreateOutputSchema, ColumnDeleteInputSchema, ColumnDeleteOutputSchema, ColumnReorderInputSchema, ColumnReorderOutputSchema, ColumnUpdateInputSchema, ColumnUpdateOutputSchema, CustomTableCreateInputSchema, CustomTableCreateOutputSchema, CustomTableDeleteInputSchema, CustomTableDeleteOutputSchema, CustomTableGetInputSchema, CustomTableGetOutputSchema, CustomTableGetSchemaInputSchema, CustomTableGetSchemaOutputSchema, CustomTableListInputSchema, CustomTableListItemSchema, CustomTableListOutputSchema, CustomTableUpdateInputSchema, CustomTableUpdateOutputSchema, NotebaseBetaStatusInputSchema, NotebaseBetaStatusOutputSchema, RowCreateInputSchema, RowCreateOutputSchema, RowDeleteInputSchema, RowDeleteOutputSchema, RowReorderInputSchema, RowReorderOutputSchema, RowUpdateInputSchema, RowUpdateOutputSchema, columnCreateDataSchema, columnUpdateDataSchema, columnWidthSchema, contract, customTableCreateDataSchema, customTableUpdateDataSchema, rowCellsSchema, rowCreateDataSchema, rowUpdateDataSchema, tableColumnSchema, tableRowSchema, tableViewSchema, tableViewTypeSchema, viewConfigSchema, viewCreateDataSchema, viewFilterSchema, viewFiltersSchema, viewSortSchema, viewSortsSchema, viewUpdateDataSchema };
365
+ export { BetaAccessStatusInputSchema, BetaAccessStatusOutputSchema, BetaFeatureKeySchema, CellValidationFailedDataSchema, CellValidationFailureDetailsSchema, CellValidationFailureReasonSchema, ColumnCreateInputSchema, ColumnCreateOutputSchema, ColumnDeleteInputSchema, ColumnDeleteOutputSchema, ColumnReorderInputSchema, ColumnReorderOutputSchema, ColumnUpdateInputSchema, ColumnUpdateOutputSchema, CustomTableCreateInputSchema, CustomTableCreateOutputSchema, CustomTableDeleteInputSchema, CustomTableDeleteOutputSchema, CustomTableGetInputSchema, CustomTableGetOutputSchema, CustomTableGetSchemaInputSchema, CustomTableGetSchemaOutputSchema, CustomTableListInputSchema, CustomTableListItemSchema, CustomTableListOutputSchema, CustomTableUpdateInputSchema, CustomTableUpdateOutputSchema, PUBLIC_APP_ERROR_DEFS, RowCreateInputSchema, RowCreateOutputSchema, RowDeleteInputSchema, RowDeleteOutputSchema, RowReorderInputSchema, RowReorderOutputSchema, RowUpdateInputSchema, RowUpdateOutputSchema, columnCreateDataSchema, columnUpdateDataSchema, columnWidthSchema, contract, customTableCreateDataSchema, customTableUpdateDataSchema, getPublicErrorDefinition, isPublicAppErrorCode, pickPublicErrorMap, rowCellsSchema, rowCreateDataSchema, rowUpdateDataSchema, tableColumnSchema, tableRowSchema, tableViewSchema, tableViewTypeSchema, viewConfigSchema, viewCreateDataSchema, viewFilterSchema, viewFiltersSchema, viewSortSchema, viewSortsSchema, viewUpdateDataSchema };
366
+
301
367
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":[],"sources":["../src/schemas/column.ts","../src/contracts/column.ts","../src/schemas/row.ts","../src/schemas/view.ts","../src/schemas/custom-table.ts","../src/contracts/custom-table.ts","../src/schemas/notebase-beta.ts","../src/contracts/notebase-beta.ts","../src/contracts/row.ts","../src/index.ts"],"sourcesContent":["import { COLUMN_MAX_WIDTH, COLUMN_MIN_WIDTH, columnConfigSchema } from '@read-frog/definitions'\nimport { z } from 'zod'\n\nexport const columnWidthSchema = z.number().int().min(COLUMN_MIN_WIDTH).max(COLUMN_MAX_WIDTH)\n\nexport const tableColumnSchema = z.object({\n id: z.string(),\n tableId: z.string(),\n name: z.string(),\n config: columnConfigSchema,\n position: z.number(),\n isPrimary: z.boolean(),\n width: z.number().nullable(),\n createdAt: z.coerce.date(),\n updatedAt: z.coerce.date(),\n})\nexport type TableColumn = z.infer<typeof tableColumnSchema>\n\nexport const columnCreateDataSchema = z.object({\n id: z.uuid().optional(),\n name: z.string().min(1),\n config: columnConfigSchema,\n}).strict()\nexport type ColumnCreateData = z.infer<typeof columnCreateDataSchema>\n\nexport const columnUpdateDataSchema = z.object({\n name: z.string().min(1).optional(),\n config: columnConfigSchema.optional(),\n width: columnWidthSchema.nullable().optional(),\n}).strict()\nexport type ColumnUpdateData = z.infer<typeof columnUpdateDataSchema>\n\nexport const ColumnCreateInputSchema = z.object({\n tableId: z.uuid(),\n data: columnCreateDataSchema,\n})\nexport type ColumnCreateInput = z.infer<typeof ColumnCreateInputSchema>\n\nexport const ColumnCreateOutputSchema = z.object({\n txid: z.number(),\n})\nexport type ColumnCreateOutput = z.infer<typeof ColumnCreateOutputSchema>\n\nexport const ColumnUpdateInputSchema = z.object({\n columnId: z.uuid(),\n data: columnUpdateDataSchema,\n})\nexport type ColumnUpdateInput = z.infer<typeof ColumnUpdateInputSchema>\n\nexport const ColumnUpdateOutputSchema = z.object({\n txid: z.number(),\n})\nexport type ColumnUpdateOutput = z.infer<typeof ColumnUpdateOutputSchema>\n\nexport const ColumnDeleteInputSchema = z.object({\n columnId: z.uuid(),\n})\nexport type ColumnDeleteInput = z.infer<typeof ColumnDeleteInputSchema>\n\nexport const ColumnDeleteOutputSchema = z.object({\n txid: z.number(),\n})\nexport type ColumnDeleteOutput = z.infer<typeof ColumnDeleteOutputSchema>\n\nexport const ColumnReorderInputSchema = z.object({\n tableId: z.uuid(),\n ids: z.array(z.uuid()),\n})\nexport type ColumnReorderInput = z.infer<typeof ColumnReorderInputSchema>\n\nexport const ColumnReorderOutputSchema = z.object({\n txid: z.number(),\n})\nexport type ColumnReorderOutput = z.infer<typeof ColumnReorderOutputSchema>\n","import { oc } from '@orpc/contract'\nimport {\n ColumnCreateInputSchema,\n ColumnCreateOutputSchema,\n ColumnDeleteInputSchema,\n ColumnDeleteOutputSchema,\n ColumnReorderInputSchema,\n ColumnReorderOutputSchema,\n ColumnUpdateInputSchema,\n ColumnUpdateOutputSchema,\n} from '@/schemas/column'\n\nexport const columnContract = {\n create: oc\n .route({\n method: 'POST',\n path: '/columns',\n summary: 'Create column',\n tags: ['Columns'],\n })\n .input(ColumnCreateInputSchema)\n .output(ColumnCreateOutputSchema),\n\n update: oc\n .route({\n method: 'PATCH',\n path: '/columns/{columnId}',\n summary: 'Update column',\n tags: ['Columns'],\n })\n .input(ColumnUpdateInputSchema)\n .output(ColumnUpdateOutputSchema),\n\n delete: oc\n .route({\n method: 'DELETE',\n path: '/columns/{columnId}',\n summary: 'Delete column',\n tags: ['Columns'],\n })\n .input(ColumnDeleteInputSchema)\n .output(ColumnDeleteOutputSchema),\n\n reorder: oc\n .route({\n method: 'POST',\n path: '/columns/reorder',\n summary: 'Reorder columns in a table',\n tags: ['Columns'],\n })\n .input(ColumnReorderInputSchema)\n .output(ColumnReorderOutputSchema),\n}\n","import { z } from 'zod'\n\nexport const rowCellsSchema = z.record(z.string(), z.unknown())\n\nexport const tableRowSchema = z.object({\n id: z.string(),\n tableId: z.string(),\n cells: rowCellsSchema,\n position: z.number(),\n createdAt: z.coerce.date(),\n updatedAt: z.coerce.date(),\n})\nexport type TableRow = z.infer<typeof tableRowSchema>\n\nexport const rowCreateDataSchema = z.object({\n id: z.uuid().optional(),\n cells: rowCellsSchema.optional(),\n}).strict()\nexport type RowCreateData = z.infer<typeof rowCreateDataSchema>\n\nexport const rowUpdateDataSchema = z.object({\n cells: rowCellsSchema.optional(),\n}).strict()\nexport type RowUpdateData = z.infer<typeof rowUpdateDataSchema>\n\nexport const RowCreateInputSchema = z.object({\n tableId: z.uuid(),\n data: rowCreateDataSchema,\n})\nexport type RowCreateInput = z.infer<typeof RowCreateInputSchema>\n\nexport const RowCreateOutputSchema = z.object({\n txid: z.number(),\n})\nexport type RowCreateOutput = z.infer<typeof RowCreateOutputSchema>\n\nexport const RowUpdateInputSchema = z.object({\n rowId: z.uuid(),\n data: rowUpdateDataSchema,\n})\nexport type RowUpdateInput = z.infer<typeof RowUpdateInputSchema>\n\nexport const RowUpdateOutputSchema = z.object({\n id: z.uuid(),\n tableId: z.uuid(),\n cells: rowCellsSchema,\n position: z.number().int(),\n createdAt: z.date(),\n updatedAt: z.date(),\n txid: z.number(),\n})\nexport type RowUpdateOutput = z.infer<typeof RowUpdateOutputSchema>\n\nexport const RowDeleteInputSchema = z.object({\n rowId: z.uuid(),\n})\nexport type RowDeleteInput = z.infer<typeof RowDeleteInputSchema>\n\nexport const RowDeleteOutputSchema = z.object({\n txid: z.number(),\n})\nexport type RowDeleteOutput = z.infer<typeof RowDeleteOutputSchema>\n\nexport const RowReorderInputSchema = z.object({\n tableId: z.uuid(),\n ids: z.array(z.uuid()),\n})\nexport type RowReorderInput = z.infer<typeof RowReorderInputSchema>\n\nexport const RowReorderOutputSchema = z.object({\n txid: z.number(),\n})\nexport type RowReorderOutput = z.infer<typeof RowReorderOutputSchema>\n","import { z } from 'zod'\n\nexport const tableViewTypeSchema = z.enum(['table', 'kanban', 'gallery'])\nexport type TableViewType = z.infer<typeof tableViewTypeSchema>\n\nexport const viewConfigSchema = z.object({\n columnWidths: z.record(z.string(), z.number()).optional(),\n hiddenColumns: z.array(z.string()).optional(),\n groupByColumnId: z.string().optional(),\n}).catchall(z.unknown())\nexport type ViewConfig = z.infer<typeof viewConfigSchema>\n\nexport const viewFilterSchema = z.object({\n columnId: z.string(),\n operator: z.string(),\n value: z.unknown(),\n}).strict()\nexport type ViewFilter = z.infer<typeof viewFilterSchema>\n\nexport const viewFiltersSchema = z.array(viewFilterSchema)\n\nexport const viewSortSchema = z.object({\n columnId: z.string(),\n direction: z.enum(['asc', 'desc']),\n}).strict()\nexport type ViewSort = z.infer<typeof viewSortSchema>\n\nexport const viewSortsSchema = z.array(viewSortSchema)\n\nexport const viewCreateDataSchema = z.object({\n id: z.uuid().optional(),\n name: z.string().min(1),\n type: tableViewTypeSchema,\n config: viewConfigSchema.optional(),\n filters: viewFiltersSchema.optional(),\n sorts: viewSortsSchema.optional(),\n}).strict()\nexport type ViewCreateData = z.infer<typeof viewCreateDataSchema>\n\nexport const viewUpdateDataSchema = z.object({\n name: z.string().min(1).optional(),\n type: tableViewTypeSchema.optional(),\n config: viewConfigSchema.optional(),\n filters: viewFiltersSchema.optional(),\n sorts: viewSortsSchema.optional(),\n}).strict()\nexport type ViewUpdateData = z.infer<typeof viewUpdateDataSchema>\n\nexport const tableViewSchema = z.object({\n id: z.string(),\n tableId: z.string(),\n name: z.string(),\n type: tableViewTypeSchema,\n config: viewConfigSchema.nullable(),\n filters: z.array(z.unknown()).nullable(),\n sorts: z.array(z.unknown()).nullable(),\n position: z.number(),\n createdAt: z.coerce.date(),\n updatedAt: z.coerce.date(),\n})\nexport type TableView = z.infer<typeof tableViewSchema>\n","import { z } from 'zod'\nimport { tableColumnSchema } from './column'\nimport { tableRowSchema } from './row'\nimport { tableViewSchema } from './view'\n\nexport const CustomTableListInputSchema = z.object({})\nexport type CustomTableListInput = z.infer<typeof CustomTableListInputSchema>\n\nexport const CustomTableListItemSchema = z.object({\n id: z.string(),\n name: z.string(),\n})\nexport type CustomTableListItem = z.infer<typeof CustomTableListItemSchema>\n\nexport const CustomTableListOutputSchema = z.array(CustomTableListItemSchema)\nexport type CustomTableListOutput = z.infer<typeof CustomTableListOutputSchema>\n\nexport const customTableCreateDataSchema = z.object({\n id: z.uuid().optional(),\n name: z.string().min(1),\n}).strict()\nexport type CustomTableCreateData = z.infer<typeof customTableCreateDataSchema>\n\nexport const CustomTableCreateInputSchema = customTableCreateDataSchema\nexport type CustomTableCreateInput = z.infer<typeof CustomTableCreateInputSchema>\n\nexport const CustomTableCreateOutputSchema = z.object({\n txid: z.number(),\n})\nexport type CustomTableCreateOutput = z.infer<typeof CustomTableCreateOutputSchema>\n\nexport const customTableUpdateDataSchema = z.object({\n name: z.string().min(1).optional(),\n}).strict()\nexport type CustomTableUpdateData = z.infer<typeof customTableUpdateDataSchema>\n\nexport const CustomTableUpdateInputSchema = customTableUpdateDataSchema.extend({\n id: z.uuid(),\n})\nexport type CustomTableUpdateInput = z.infer<typeof CustomTableUpdateInputSchema>\n\nexport const CustomTableUpdateOutputSchema = z.object({\n txid: z.number(),\n})\nexport type CustomTableUpdateOutput = z.infer<typeof CustomTableUpdateOutputSchema>\n\nexport const CustomTableDeleteInputSchema = z.object({\n id: z.uuid(),\n})\nexport type CustomTableDeleteInput = z.infer<typeof CustomTableDeleteInputSchema>\n\nexport const CustomTableDeleteOutputSchema = z.object({\n txid: z.number(),\n})\nexport type CustomTableDeleteOutput = z.infer<typeof CustomTableDeleteOutputSchema>\n\n// Get endpoint schemas\nexport const CustomTableGetInputSchema = z.object({\n id: z.uuid(),\n})\nexport type CustomTableGetInput = z.infer<typeof CustomTableGetInputSchema>\n\nexport const CustomTableGetSchemaInputSchema = z.object({\n id: z.uuid(),\n})\nexport type CustomTableGetSchemaInput = z.infer<typeof CustomTableGetSchemaInputSchema>\n\nexport const CustomTableGetOutputSchema = z.object({\n id: z.string(),\n userId: z.string(),\n name: z.string(),\n createdAt: z.coerce.date(),\n updatedAt: z.coerce.date(),\n columns: z.array(tableColumnSchema),\n rows: z.array(tableRowSchema),\n views: z.array(tableViewSchema),\n})\nexport type CustomTableGetOutput = z.infer<typeof CustomTableGetOutputSchema>\n\nexport const CustomTableGetSchemaOutputSchema = z.object({\n id: z.string(),\n name: z.string(),\n updatedAt: z.coerce.date(),\n columns: z.array(tableColumnSchema),\n})\nexport type CustomTableGetSchemaOutput = z.infer<typeof CustomTableGetSchemaOutputSchema>\n","import { oc } from '@orpc/contract'\nimport {\n CustomTableCreateInputSchema,\n CustomTableCreateOutputSchema,\n CustomTableDeleteInputSchema,\n CustomTableDeleteOutputSchema,\n CustomTableGetInputSchema,\n CustomTableGetOutputSchema,\n CustomTableGetSchemaInputSchema,\n CustomTableGetSchemaOutputSchema,\n CustomTableListInputSchema,\n CustomTableListOutputSchema,\n CustomTableUpdateInputSchema,\n CustomTableUpdateOutputSchema,\n} from '@/schemas/custom-table'\n\nexport const customTableContract = {\n list: oc\n .route({\n method: 'GET',\n path: '/custom-tables',\n summary: 'List custom tables',\n tags: ['Custom Tables'],\n })\n .input(CustomTableListInputSchema)\n .output(CustomTableListOutputSchema),\n\n get: oc\n .route({\n method: 'GET',\n path: '/custom-tables/{id}',\n summary: 'Get custom table with columns, rows, and views',\n tags: ['Custom Tables'],\n })\n .input(CustomTableGetInputSchema)\n .output(CustomTableGetOutputSchema),\n\n getSchema: oc\n .route({\n method: 'GET',\n path: '/custom-tables/{id}/schema',\n summary: 'Get custom table schema',\n tags: ['Custom Tables'],\n })\n .input(CustomTableGetSchemaInputSchema)\n .output(CustomTableGetSchemaOutputSchema),\n\n create: oc\n .route({\n method: 'POST',\n path: '/custom-tables',\n summary: 'Create custom table',\n tags: ['Custom Tables'],\n })\n .input(CustomTableCreateInputSchema)\n .output(CustomTableCreateOutputSchema),\n\n update: oc\n .route({\n method: 'PUT',\n path: '/custom-tables/{id}',\n summary: 'Update custom table',\n tags: ['Custom Tables'],\n })\n .input(CustomTableUpdateInputSchema)\n .output(CustomTableUpdateOutputSchema),\n\n delete: oc\n .route({\n method: 'DELETE',\n path: '/custom-tables/{id}',\n summary: 'Delete custom table',\n tags: ['Custom Tables'],\n })\n .input(CustomTableDeleteInputSchema)\n .output(CustomTableDeleteOutputSchema),\n}\n","import { z } from 'zod'\n\nexport const NotebaseBetaStatusInputSchema = z.object({}).strict()\nexport type NotebaseBetaStatusInput = z.infer<typeof NotebaseBetaStatusInputSchema>\n\nexport const NotebaseBetaStatusOutputSchema = z.object({\n allowed: z.boolean(),\n})\nexport type NotebaseBetaStatusOutput = z.infer<typeof NotebaseBetaStatusOutputSchema>\n","import { oc } from '@orpc/contract'\nimport {\n NotebaseBetaStatusInputSchema,\n NotebaseBetaStatusOutputSchema,\n} from '@/schemas/notebase-beta'\n\nexport const notebaseBetaContract = {\n status: oc\n .route({\n method: 'GET',\n path: '/notebase-beta/status',\n summary: 'Get Notebase beta access status',\n tags: ['Notebase Beta'],\n })\n .input(NotebaseBetaStatusInputSchema)\n .output(NotebaseBetaStatusOutputSchema),\n}\n","import { oc } from '@orpc/contract'\nimport {\n RowCreateInputSchema,\n RowCreateOutputSchema,\n RowDeleteInputSchema,\n RowDeleteOutputSchema,\n RowReorderInputSchema,\n RowReorderOutputSchema,\n RowUpdateInputSchema,\n RowUpdateOutputSchema,\n} from '@/schemas/row'\n\nexport const rowContract = {\n create: oc\n .route({\n method: 'POST',\n path: '/rows',\n summary: 'Create row',\n tags: ['Rows'],\n })\n .input(RowCreateInputSchema)\n .output(RowCreateOutputSchema),\n\n update: oc\n .route({\n method: 'PATCH',\n path: '/rows/{rowId}',\n summary: 'Update row cells',\n tags: ['Rows'],\n })\n .input(RowUpdateInputSchema)\n .output(RowUpdateOutputSchema),\n\n delete: oc\n .route({\n method: 'DELETE',\n path: '/rows/{rowId}',\n summary: 'Delete row',\n tags: ['Rows'],\n })\n .input(RowDeleteInputSchema)\n .output(RowDeleteOutputSchema),\n\n reorder: oc\n .route({\n method: 'POST',\n path: '/rows/reorder',\n summary: 'Reorder rows in a table',\n tags: ['Rows'],\n })\n .input(RowReorderInputSchema)\n .output(RowReorderOutputSchema),\n}\n","import type { ContractRouterClient } from '@orpc/contract'\nimport { columnContract } from './contracts/column'\nimport { customTableContract } from './contracts/custom-table'\nimport { notebaseBetaContract } from './contracts/notebase-beta'\nimport { rowContract } from './contracts/row'\n\nexport const contract = {\n customTable: customTableContract,\n column: columnContract,\n row: rowContract,\n notebaseBeta: notebaseBetaContract,\n}\n\nexport type ORPCRouterClient = ContractRouterClient<typeof contract>\n\n// Re-export schemas for convenience\nexport * from './schemas/column'\nexport * from './schemas/custom-table'\nexport * from './schemas/notebase-beta'\nexport * from './schemas/row'\nexport * from './schemas/view'\n"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","names":[],"sources":["../src/schemas/beta-access.ts","../src/contracts/beta-access.ts","../src/public-errors.ts","../src/schemas/column.ts","../src/contracts/shared.ts","../src/contracts/column.ts","../src/schemas/row.ts","../src/schemas/view.ts","../src/schemas/custom-table.ts","../src/contracts/custom-table.ts","../src/contracts/row.ts","../src/index.ts"],"sourcesContent":["import { BETA_FEATURE_KEYS } from \"@read-frog/definitions\"\nimport { z } from \"zod\"\n\nexport const BetaFeatureKeySchema = z.enum(BETA_FEATURE_KEYS)\nexport type BetaFeatureKey = z.infer<typeof BetaFeatureKeySchema>\n\nexport const BetaAccessStatusInputSchema = z.object({\n featureKey: BetaFeatureKeySchema,\n}).strict()\nexport type BetaAccessStatusInput = z.infer<typeof BetaAccessStatusInputSchema>\n\nexport const BetaAccessStatusOutputSchema = z.object({\n featureKey: BetaFeatureKeySchema,\n allowed: z.boolean(),\n})\nexport type BetaAccessStatusOutput = z.infer<typeof BetaAccessStatusOutputSchema>\n","import { oc } from \"@orpc/contract\"\nimport {\n BetaAccessStatusInputSchema,\n BetaAccessStatusOutputSchema,\n} from \"@/schemas/beta-access\"\n\nexport const betaAccessContract = {\n status: oc\n .route({\n method: \"GET\",\n path: \"/beta-access/status\",\n summary: \"Get beta access status for a feature\",\n tags: [\"Beta Access\"],\n })\n .input(BetaAccessStatusInputSchema)\n .output(BetaAccessStatusOutputSchema),\n}\n","import type { ErrorMap } from \"@orpc/contract\"\nimport { z } from \"zod\"\n\ninterface PublicAppErrorDefinition {\n data?: z.ZodTypeAny\n message: string\n status: number\n}\n\nexport const CellValidationFailureReasonSchema = z.enum([\n \"unknown_column\",\n \"type_mismatch\",\n \"invalid_select_option\",\n \"invalid_date_format\",\n])\nexport type CellValidationFailureReason = z.infer<typeof CellValidationFailureReasonSchema>\n\nexport const CellValidationFailureDetailsSchema = z.object({\n expectedFormat: z.string().optional(),\n expectedType: z.string().optional(),\n receivedType: z.string().optional(),\n receivedValue: z.unknown().optional(),\n validOptions: z.array(z.string()).optional(),\n}).strict()\nexport type CellValidationFailureDetails = z.infer<typeof CellValidationFailureDetailsSchema>\n\nexport const CellValidationFailedDataSchema = z.object({\n columnId: z.string(),\n details: CellValidationFailureDetailsSchema,\n reason: CellValidationFailureReasonSchema,\n}).strict()\nexport type CellValidationFailedData = z.infer<typeof CellValidationFailedDataSchema>\n\nexport const PUBLIC_APP_ERROR_DEFS = {\n NOTEBASE_BETA_RESTRICTED: {\n message: \"Notebase is currently in beta for selected accounts\",\n status: 403,\n },\n TABLE_NOT_FOUND: {\n message: \"Table not found\",\n status: 404,\n },\n COLUMN_NOT_FOUND: {\n message: \"Column not found\",\n status: 404,\n },\n ROW_NOT_FOUND: {\n message: \"Row not found\",\n status: 404,\n },\n VIEW_NOT_FOUND: {\n message: \"View not found\",\n status: 404,\n },\n CELL_VALIDATION_FAILED: {\n data: CellValidationFailedDataSchema,\n message: \"Cell validation failed\",\n status: 422,\n },\n PRIMARY_COLUMN_DELETE_NOT_ALLOWED: {\n message: \"Cannot delete primary column\",\n status: 400,\n },\n CONCURRENT_POSITION_CONFLICT: {\n message: \"Concurrent position conflict, please retry\",\n status: 409,\n },\n} as const satisfies Record<string, PublicAppErrorDefinition>\n\nexport type PublicAppErrorCode = keyof typeof PUBLIC_APP_ERROR_DEFS\n\nexport type PublicAppErrorData<TCode extends PublicAppErrorCode>\n = (typeof PUBLIC_APP_ERROR_DEFS)[TCode] extends { data: infer TSchema extends z.ZodTypeAny }\n ? z.output<TSchema>\n : undefined\n\nexport function isPublicAppErrorCode(code: string | undefined): code is PublicAppErrorCode {\n return code !== undefined && code in PUBLIC_APP_ERROR_DEFS\n}\n\nexport function getPublicErrorDefinition<TCode extends PublicAppErrorCode>(code: TCode) {\n return PUBLIC_APP_ERROR_DEFS[code]\n}\n\nexport function pickPublicErrorMap<const TCodes extends readonly PublicAppErrorCode[]>(\n ...codes: TCodes\n) {\n return Object.fromEntries(codes.map((code) => {\n const definition = PUBLIC_APP_ERROR_DEFS[code]\n\n if (\"data\" in definition) {\n return [code, {\n data: definition.data,\n message: definition.message,\n status: definition.status,\n }]\n }\n\n return [code, {\n message: definition.message,\n status: definition.status,\n }]\n })) as Pick<ErrorMap, TCodes[number]>\n}\n","import { COLUMN_MAX_WIDTH, COLUMN_MIN_WIDTH, columnConfigSchema } from \"@read-frog/definitions\"\nimport { z } from \"zod\"\n\nexport const columnWidthSchema = z.number().int().min(COLUMN_MIN_WIDTH).max(COLUMN_MAX_WIDTH)\n\nexport const tableColumnSchema = z.object({\n id: z.string(),\n tableId: z.string(),\n name: z.string(),\n config: columnConfigSchema,\n position: z.number(),\n isPrimary: z.boolean(),\n width: z.number().nullable(),\n createdAt: z.coerce.date(),\n updatedAt: z.coerce.date(),\n})\nexport type TableColumn = z.infer<typeof tableColumnSchema>\n\nexport const columnCreateDataSchema = z.object({\n id: z.uuid().optional(),\n name: z.string().min(1),\n config: columnConfigSchema,\n}).strict()\nexport type ColumnCreateData = z.infer<typeof columnCreateDataSchema>\n\nexport const columnUpdateDataSchema = z.object({\n name: z.string().min(1).optional(),\n config: columnConfigSchema.optional(),\n width: columnWidthSchema.nullable().optional(),\n}).strict()\nexport type ColumnUpdateData = z.infer<typeof columnUpdateDataSchema>\n\nexport const ColumnCreateInputSchema = z.object({\n tableId: z.uuid(),\n data: columnCreateDataSchema,\n})\nexport type ColumnCreateInput = z.infer<typeof ColumnCreateInputSchema>\n\nexport const ColumnCreateOutputSchema = z.object({\n txid: z.number(),\n})\nexport type ColumnCreateOutput = z.infer<typeof ColumnCreateOutputSchema>\n\nexport const ColumnUpdateInputSchema = z.object({\n columnId: z.uuid(),\n data: columnUpdateDataSchema,\n})\nexport type ColumnUpdateInput = z.infer<typeof ColumnUpdateInputSchema>\n\nexport const ColumnUpdateOutputSchema = z.object({\n txid: z.number(),\n})\nexport type ColumnUpdateOutput = z.infer<typeof ColumnUpdateOutputSchema>\n\nexport const ColumnDeleteInputSchema = z.object({\n columnId: z.uuid(),\n})\nexport type ColumnDeleteInput = z.infer<typeof ColumnDeleteInputSchema>\n\nexport const ColumnDeleteOutputSchema = z.object({\n txid: z.number(),\n})\nexport type ColumnDeleteOutput = z.infer<typeof ColumnDeleteOutputSchema>\n\nexport const ColumnReorderInputSchema = z.object({\n tableId: z.uuid(),\n ids: z.array(z.uuid()),\n})\nexport type ColumnReorderInput = z.infer<typeof ColumnReorderInputSchema>\n\nexport const ColumnReorderOutputSchema = z.object({\n txid: z.number(),\n})\nexport type ColumnReorderOutput = z.infer<typeof ColumnReorderOutputSchema>\n","import { oc } from \"@orpc/contract\"\nimport { pickPublicErrorMap } from \"@/public-errors\"\n\nexport const notebaseProcedure = oc.errors(\n pickPublicErrorMap(\"NOTEBASE_BETA_RESTRICTED\"),\n)\n","import { pickPublicErrorMap } from \"@/public-errors\"\nimport {\n ColumnCreateInputSchema,\n ColumnCreateOutputSchema,\n ColumnDeleteInputSchema,\n ColumnDeleteOutputSchema,\n ColumnReorderInputSchema,\n ColumnReorderOutputSchema,\n ColumnUpdateInputSchema,\n ColumnUpdateOutputSchema,\n} from \"@/schemas/column\"\nimport { notebaseProcedure } from \"./shared\"\n\nexport const columnContract = {\n create: notebaseProcedure\n .errors(pickPublicErrorMap(\"TABLE_NOT_FOUND\", \"CONCURRENT_POSITION_CONFLICT\"))\n .route({\n method: \"POST\",\n path: \"/columns\",\n summary: \"Create column\",\n tags: [\"Columns\"],\n })\n .input(ColumnCreateInputSchema)\n .output(ColumnCreateOutputSchema),\n\n update: notebaseProcedure\n .errors(pickPublicErrorMap(\"COLUMN_NOT_FOUND\"))\n .route({\n method: \"PATCH\",\n path: \"/columns/{columnId}\",\n summary: \"Update column\",\n tags: [\"Columns\"],\n })\n .input(ColumnUpdateInputSchema)\n .output(ColumnUpdateOutputSchema),\n\n delete: notebaseProcedure\n .errors(pickPublicErrorMap(\n \"COLUMN_NOT_FOUND\",\n \"PRIMARY_COLUMN_DELETE_NOT_ALLOWED\",\n \"CONCURRENT_POSITION_CONFLICT\",\n ))\n .route({\n method: \"DELETE\",\n path: \"/columns/{columnId}\",\n summary: \"Delete column\",\n tags: [\"Columns\"],\n })\n .input(ColumnDeleteInputSchema)\n .output(ColumnDeleteOutputSchema),\n\n reorder: notebaseProcedure\n .errors(pickPublicErrorMap(\"TABLE_NOT_FOUND\", \"CONCURRENT_POSITION_CONFLICT\"))\n .route({\n method: \"POST\",\n path: \"/columns/reorder\",\n summary: \"Reorder columns in a table\",\n tags: [\"Columns\"],\n })\n .input(ColumnReorderInputSchema)\n .output(ColumnReorderOutputSchema),\n}\n","import { z } from \"zod\"\n\nexport const rowCellsSchema = z.record(z.string(), z.unknown())\n\nexport const tableRowSchema = z.object({\n id: z.string(),\n tableId: z.string(),\n cells: rowCellsSchema,\n position: z.number(),\n createdAt: z.coerce.date(),\n updatedAt: z.coerce.date(),\n})\nexport type TableRow = z.infer<typeof tableRowSchema>\n\nexport const rowCreateDataSchema = z.object({\n id: z.uuid().optional(),\n cells: rowCellsSchema.optional(),\n}).strict()\nexport type RowCreateData = z.infer<typeof rowCreateDataSchema>\n\nexport const rowUpdateDataSchema = z.object({\n cells: rowCellsSchema.optional(),\n}).strict()\nexport type RowUpdateData = z.infer<typeof rowUpdateDataSchema>\n\nexport const RowCreateInputSchema = z.object({\n tableId: z.uuid(),\n data: rowCreateDataSchema,\n})\nexport type RowCreateInput = z.infer<typeof RowCreateInputSchema>\n\nexport const RowCreateOutputSchema = z.object({\n txid: z.number(),\n})\nexport type RowCreateOutput = z.infer<typeof RowCreateOutputSchema>\n\nexport const RowUpdateInputSchema = z.object({\n rowId: z.uuid(),\n data: rowUpdateDataSchema,\n})\nexport type RowUpdateInput = z.infer<typeof RowUpdateInputSchema>\n\nexport const RowUpdateOutputSchema = z.object({\n id: z.uuid(),\n tableId: z.uuid(),\n cells: rowCellsSchema,\n position: z.number().int(),\n createdAt: z.date(),\n updatedAt: z.date(),\n txid: z.number(),\n})\nexport type RowUpdateOutput = z.infer<typeof RowUpdateOutputSchema>\n\nexport const RowDeleteInputSchema = z.object({\n rowId: z.uuid(),\n})\nexport type RowDeleteInput = z.infer<typeof RowDeleteInputSchema>\n\nexport const RowDeleteOutputSchema = z.object({\n txid: z.number(),\n})\nexport type RowDeleteOutput = z.infer<typeof RowDeleteOutputSchema>\n\nexport const RowReorderInputSchema = z.object({\n tableId: z.uuid(),\n ids: z.array(z.uuid()),\n})\nexport type RowReorderInput = z.infer<typeof RowReorderInputSchema>\n\nexport const RowReorderOutputSchema = z.object({\n txid: z.number(),\n})\nexport type RowReorderOutput = z.infer<typeof RowReorderOutputSchema>\n","import { z } from \"zod\"\n\nexport const tableViewTypeSchema = z.enum([\"table\", \"kanban\", \"gallery\"])\nexport type TableViewType = z.infer<typeof tableViewTypeSchema>\n\nexport const viewConfigSchema = z.object({\n columnWidths: z.record(z.string(), z.number()).optional(),\n hiddenColumns: z.array(z.string()).optional(),\n groupByColumnId: z.string().optional(),\n}).catchall(z.unknown())\nexport type ViewConfig = z.infer<typeof viewConfigSchema>\n\nexport const viewFilterSchema = z.object({\n columnId: z.string(),\n operator: z.string(),\n value: z.unknown(),\n}).strict()\nexport type ViewFilter = z.infer<typeof viewFilterSchema>\n\nexport const viewFiltersSchema = z.array(viewFilterSchema)\n\nexport const viewSortSchema = z.object({\n columnId: z.string(),\n direction: z.enum([\"asc\", \"desc\"]),\n}).strict()\nexport type ViewSort = z.infer<typeof viewSortSchema>\n\nexport const viewSortsSchema = z.array(viewSortSchema)\n\nexport const viewCreateDataSchema = z.object({\n id: z.uuid().optional(),\n name: z.string().min(1),\n type: tableViewTypeSchema,\n config: viewConfigSchema.optional(),\n filters: viewFiltersSchema.optional(),\n sorts: viewSortsSchema.optional(),\n}).strict()\nexport type ViewCreateData = z.infer<typeof viewCreateDataSchema>\n\nexport const viewUpdateDataSchema = z.object({\n name: z.string().min(1).optional(),\n type: tableViewTypeSchema.optional(),\n config: viewConfigSchema.optional(),\n filters: viewFiltersSchema.optional(),\n sorts: viewSortsSchema.optional(),\n}).strict()\nexport type ViewUpdateData = z.infer<typeof viewUpdateDataSchema>\n\nexport const tableViewSchema = z.object({\n id: z.string(),\n tableId: z.string(),\n name: z.string(),\n type: tableViewTypeSchema,\n config: viewConfigSchema.nullable(),\n filters: z.array(z.unknown()).nullable(),\n sorts: z.array(z.unknown()).nullable(),\n position: z.number(),\n createdAt: z.coerce.date(),\n updatedAt: z.coerce.date(),\n})\nexport type TableView = z.infer<typeof tableViewSchema>\n","import { z } from \"zod\"\nimport { tableColumnSchema } from \"./column\"\nimport { tableRowSchema } from \"./row\"\nimport { tableViewSchema } from \"./view\"\n\nexport const CustomTableListInputSchema = z.object({})\nexport type CustomTableListInput = z.infer<typeof CustomTableListInputSchema>\n\nexport const CustomTableListItemSchema = z.object({\n id: z.string(),\n name: z.string(),\n})\nexport type CustomTableListItem = z.infer<typeof CustomTableListItemSchema>\n\nexport const CustomTableListOutputSchema = z.array(CustomTableListItemSchema)\nexport type CustomTableListOutput = z.infer<typeof CustomTableListOutputSchema>\n\nexport const customTableCreateDataSchema = z.object({\n id: z.uuid().optional(),\n name: z.string().min(1),\n}).strict()\nexport type CustomTableCreateData = z.infer<typeof customTableCreateDataSchema>\n\nexport const CustomTableCreateInputSchema = customTableCreateDataSchema\nexport type CustomTableCreateInput = z.infer<typeof CustomTableCreateInputSchema>\n\nexport const CustomTableCreateOutputSchema = z.object({\n txid: z.number(),\n})\nexport type CustomTableCreateOutput = z.infer<typeof CustomTableCreateOutputSchema>\n\nexport const customTableUpdateDataSchema = z.object({\n name: z.string().min(1).optional(),\n}).strict()\nexport type CustomTableUpdateData = z.infer<typeof customTableUpdateDataSchema>\n\nexport const CustomTableUpdateInputSchema = customTableUpdateDataSchema.extend({\n id: z.uuid(),\n})\nexport type CustomTableUpdateInput = z.infer<typeof CustomTableUpdateInputSchema>\n\nexport const CustomTableUpdateOutputSchema = z.object({\n txid: z.number(),\n})\nexport type CustomTableUpdateOutput = z.infer<typeof CustomTableUpdateOutputSchema>\n\nexport const CustomTableDeleteInputSchema = z.object({\n id: z.uuid(),\n})\nexport type CustomTableDeleteInput = z.infer<typeof CustomTableDeleteInputSchema>\n\nexport const CustomTableDeleteOutputSchema = z.object({\n txid: z.number(),\n})\nexport type CustomTableDeleteOutput = z.infer<typeof CustomTableDeleteOutputSchema>\n\n// Get endpoint schemas\nexport const CustomTableGetInputSchema = z.object({\n id: z.uuid(),\n})\nexport type CustomTableGetInput = z.infer<typeof CustomTableGetInputSchema>\n\nexport const CustomTableGetSchemaInputSchema = z.object({\n id: z.uuid(),\n})\nexport type CustomTableGetSchemaInput = z.infer<typeof CustomTableGetSchemaInputSchema>\n\nexport const CustomTableGetOutputSchema = z.object({\n id: z.string(),\n userId: z.string(),\n name: z.string(),\n createdAt: z.coerce.date(),\n updatedAt: z.coerce.date(),\n columns: z.array(tableColumnSchema),\n rows: z.array(tableRowSchema),\n views: z.array(tableViewSchema),\n})\nexport type CustomTableGetOutput = z.infer<typeof CustomTableGetOutputSchema>\n\nexport const CustomTableGetSchemaOutputSchema = z.object({\n id: z.string(),\n name: z.string(),\n updatedAt: z.coerce.date(),\n columns: z.array(tableColumnSchema),\n})\nexport type CustomTableGetSchemaOutput = z.infer<typeof CustomTableGetSchemaOutputSchema>\n","import { pickPublicErrorMap } from \"@/public-errors\"\nimport {\n CustomTableCreateInputSchema,\n CustomTableCreateOutputSchema,\n CustomTableDeleteInputSchema,\n CustomTableDeleteOutputSchema,\n CustomTableGetInputSchema,\n CustomTableGetOutputSchema,\n CustomTableGetSchemaInputSchema,\n CustomTableGetSchemaOutputSchema,\n CustomTableListInputSchema,\n CustomTableListOutputSchema,\n CustomTableUpdateInputSchema,\n CustomTableUpdateOutputSchema,\n} from \"@/schemas/custom-table\"\nimport { notebaseProcedure } from \"./shared\"\n\nexport const customTableContract = {\n list: notebaseProcedure\n .route({\n method: \"GET\",\n path: \"/custom-tables\",\n summary: \"List custom tables\",\n tags: [\"Custom Tables\"],\n })\n .input(CustomTableListInputSchema)\n .output(CustomTableListOutputSchema),\n\n get: notebaseProcedure\n .errors(pickPublicErrorMap(\"TABLE_NOT_FOUND\"))\n .route({\n method: \"GET\",\n path: \"/custom-tables/{id}\",\n summary: \"Get custom table with columns, rows, and views\",\n tags: [\"Custom Tables\"],\n })\n .input(CustomTableGetInputSchema)\n .output(CustomTableGetOutputSchema),\n\n getSchema: notebaseProcedure\n .errors(pickPublicErrorMap(\"TABLE_NOT_FOUND\"))\n .route({\n method: \"GET\",\n path: \"/custom-tables/{id}/schema\",\n summary: \"Get custom table schema\",\n tags: [\"Custom Tables\"],\n })\n .input(CustomTableGetSchemaInputSchema)\n .output(CustomTableGetSchemaOutputSchema),\n\n create: notebaseProcedure\n .route({\n method: \"POST\",\n path: \"/custom-tables\",\n summary: \"Create custom table\",\n tags: [\"Custom Tables\"],\n })\n .input(CustomTableCreateInputSchema)\n .output(CustomTableCreateOutputSchema),\n\n update: notebaseProcedure\n .errors(pickPublicErrorMap(\"TABLE_NOT_FOUND\"))\n .route({\n method: \"PUT\",\n path: \"/custom-tables/{id}\",\n summary: \"Update custom table\",\n tags: [\"Custom Tables\"],\n })\n .input(CustomTableUpdateInputSchema)\n .output(CustomTableUpdateOutputSchema),\n\n delete: notebaseProcedure\n .errors(pickPublicErrorMap(\"TABLE_NOT_FOUND\"))\n .route({\n method: \"DELETE\",\n path: \"/custom-tables/{id}\",\n summary: \"Delete custom table\",\n tags: [\"Custom Tables\"],\n })\n .input(CustomTableDeleteInputSchema)\n .output(CustomTableDeleteOutputSchema),\n}\n","import { pickPublicErrorMap } from \"@/public-errors\"\nimport {\n RowCreateInputSchema,\n RowCreateOutputSchema,\n RowDeleteInputSchema,\n RowDeleteOutputSchema,\n RowReorderInputSchema,\n RowReorderOutputSchema,\n RowUpdateInputSchema,\n RowUpdateOutputSchema,\n} from \"@/schemas/row\"\nimport { notebaseProcedure } from \"./shared\"\n\nexport const rowContract = {\n create: notebaseProcedure\n .errors(pickPublicErrorMap(\n \"TABLE_NOT_FOUND\",\n \"CELL_VALIDATION_FAILED\",\n \"CONCURRENT_POSITION_CONFLICT\",\n ))\n .route({\n method: \"POST\",\n path: \"/rows\",\n summary: \"Create row\",\n tags: [\"Rows\"],\n })\n .input(RowCreateInputSchema)\n .output(RowCreateOutputSchema),\n\n update: notebaseProcedure\n .errors(pickPublicErrorMap(\"ROW_NOT_FOUND\", \"CELL_VALIDATION_FAILED\"))\n .route({\n method: \"PATCH\",\n path: \"/rows/{rowId}\",\n summary: \"Update row cells\",\n tags: [\"Rows\"],\n })\n .input(RowUpdateInputSchema)\n .output(RowUpdateOutputSchema),\n\n delete: notebaseProcedure\n .errors(pickPublicErrorMap(\"ROW_NOT_FOUND\", \"CONCURRENT_POSITION_CONFLICT\"))\n .route({\n method: \"DELETE\",\n path: \"/rows/{rowId}\",\n summary: \"Delete row\",\n tags: [\"Rows\"],\n })\n .input(RowDeleteInputSchema)\n .output(RowDeleteOutputSchema),\n\n reorder: notebaseProcedure\n .errors(pickPublicErrorMap(\"TABLE_NOT_FOUND\", \"CONCURRENT_POSITION_CONFLICT\"))\n .route({\n method: \"POST\",\n path: \"/rows/reorder\",\n summary: \"Reorder rows in a table\",\n tags: [\"Rows\"],\n })\n .input(RowReorderInputSchema)\n .output(RowReorderOutputSchema),\n}\n","import type { ContractRouterClient } from \"@orpc/contract\"\nimport { betaAccessContract } from \"./contracts/beta-access\"\nimport { columnContract } from \"./contracts/column\"\nimport { customTableContract } from \"./contracts/custom-table\"\nimport { rowContract } from \"./contracts/row\"\n\nexport const contract = {\n betaAccess: betaAccessContract,\n customTable: customTableContract,\n column: columnContract,\n row: rowContract,\n}\n\nexport type ORPCRouterClient = ContractRouterClient<typeof contract>\n\nexport * from \"./public-errors\"\nexport * from \"./schemas/beta-access\"\nexport * from \"./schemas/column\"\nexport * from \"./schemas/custom-table\"\nexport * from \"./schemas/row\"\nexport * from \"./schemas/view\"\n"],"mappings":"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"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@read-frog/api-contract",
3
3
  "type": "module",
4
- "version": "0.3.0",
4
+ "version": "0.4.0",
5
5
  "private": false,
6
6
  "exports": {
7
7
  ".": {
@@ -12,17 +12,18 @@
12
12
  "main": "./dist/index.js",
13
13
  "types": "./dist/index.d.ts",
14
14
  "files": [
15
- "dist"
15
+ "dist",
16
+ "src"
16
17
  ],
17
18
  "dependencies": {
18
- "@orpc/contract": "^1.13.5",
19
+ "@orpc/contract": "^1.13.14",
19
20
  "zod": "^4.3.6",
20
- "@read-frog/definitions": "0.1.2"
21
+ "@read-frog/definitions": "0.1.3"
21
22
  },
22
23
  "devDependencies": {
23
- "@types/node": "^25.5.0",
24
- "tsdown": "^0.20.3",
25
- "@repo/eslint-config": "0.0.0",
24
+ "@types/node": "^25.6.0",
25
+ "tsdown": "^0.21.8",
26
+ "@repo/eslint-config": "0.0.1",
26
27
  "@repo/tsdown-config": "0.0.0",
27
28
  "@repo/typescript-config": "0.0.0"
28
29
  },
@@ -0,0 +1,17 @@
1
+ import { oc } from "@orpc/contract"
2
+ import {
3
+ BetaAccessStatusInputSchema,
4
+ BetaAccessStatusOutputSchema,
5
+ } from "@/schemas/beta-access"
6
+
7
+ export const betaAccessContract = {
8
+ status: oc
9
+ .route({
10
+ method: "GET",
11
+ path: "/beta-access/status",
12
+ summary: "Get beta access status for a feature",
13
+ tags: ["Beta Access"],
14
+ })
15
+ .input(BetaAccessStatusInputSchema)
16
+ .output(BetaAccessStatusOutputSchema),
17
+ }
@@ -0,0 +1,62 @@
1
+ import { pickPublicErrorMap } from "@/public-errors"
2
+ import {
3
+ ColumnCreateInputSchema,
4
+ ColumnCreateOutputSchema,
5
+ ColumnDeleteInputSchema,
6
+ ColumnDeleteOutputSchema,
7
+ ColumnReorderInputSchema,
8
+ ColumnReorderOutputSchema,
9
+ ColumnUpdateInputSchema,
10
+ ColumnUpdateOutputSchema,
11
+ } from "@/schemas/column"
12
+ import { notebaseProcedure } from "./shared"
13
+
14
+ export const columnContract = {
15
+ create: notebaseProcedure
16
+ .errors(pickPublicErrorMap("TABLE_NOT_FOUND", "CONCURRENT_POSITION_CONFLICT"))
17
+ .route({
18
+ method: "POST",
19
+ path: "/columns",
20
+ summary: "Create column",
21
+ tags: ["Columns"],
22
+ })
23
+ .input(ColumnCreateInputSchema)
24
+ .output(ColumnCreateOutputSchema),
25
+
26
+ update: notebaseProcedure
27
+ .errors(pickPublicErrorMap("COLUMN_NOT_FOUND"))
28
+ .route({
29
+ method: "PATCH",
30
+ path: "/columns/{columnId}",
31
+ summary: "Update column",
32
+ tags: ["Columns"],
33
+ })
34
+ .input(ColumnUpdateInputSchema)
35
+ .output(ColumnUpdateOutputSchema),
36
+
37
+ delete: notebaseProcedure
38
+ .errors(pickPublicErrorMap(
39
+ "COLUMN_NOT_FOUND",
40
+ "PRIMARY_COLUMN_DELETE_NOT_ALLOWED",
41
+ "CONCURRENT_POSITION_CONFLICT",
42
+ ))
43
+ .route({
44
+ method: "DELETE",
45
+ path: "/columns/{columnId}",
46
+ summary: "Delete column",
47
+ tags: ["Columns"],
48
+ })
49
+ .input(ColumnDeleteInputSchema)
50
+ .output(ColumnDeleteOutputSchema),
51
+
52
+ reorder: notebaseProcedure
53
+ .errors(pickPublicErrorMap("TABLE_NOT_FOUND", "CONCURRENT_POSITION_CONFLICT"))
54
+ .route({
55
+ method: "POST",
56
+ path: "/columns/reorder",
57
+ summary: "Reorder columns in a table",
58
+ tags: ["Columns"],
59
+ })
60
+ .input(ColumnReorderInputSchema)
61
+ .output(ColumnReorderOutputSchema),
62
+ }