@boltapp/bolt-app-db 0.0.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.
@@ -0,0 +1,29 @@
1
+ import { relations } from "drizzle-orm";
2
+ import { index, integer, sqliteTable, text, uniqueIndex } from "drizzle-orm/sqlite-core";
3
+ import { nanoid } from "nanoid";
4
+ import { boltApps } from "./app-schema";
5
+ export const boltDataStores = sqliteTable("bolt_data_stores", {
6
+ id: text()
7
+ .primaryKey()
8
+ .$defaultFn(() => nanoid()),
9
+ name: text().notNull(),
10
+ label: text().default("Untitled Store").notNull(),
11
+ description: text(),
12
+ items: text({ mode: "json" }).$type(),
13
+ data: text({ mode: "json" }).$type().notNull(),
14
+ appId: text("app_id").notNull(),
15
+ organizationId: text("organization_id"),
16
+ createdBy: text().default("system").notNull(),
17
+ updatedBy: text().default("system").notNull(),
18
+ createdAt: integer({ mode: "timestamp" }),
19
+ updatedAt: integer({ mode: "timestamp" }),
20
+ }, (table) => [
21
+ uniqueIndex("bolt_data_stores_app_name_unique_idx").on(table.appId, table.name),
22
+ index("bolt_data_stores_app_idx").on(table.appId),
23
+ ]);
24
+ export const boltDataStoresRelations = relations(boltDataStores, ({ one }) => ({
25
+ app: one(boltApps, {
26
+ fields: [boltDataStores.appId],
27
+ references: [boltApps.id],
28
+ }),
29
+ }));
@@ -0,0 +1,324 @@
1
+ export declare const boltFiles: import("drizzle-orm/sqlite-core").SQLiteTableWithColumns<{
2
+ name: "bolt_files";
3
+ schema: undefined;
4
+ columns: {
5
+ id: import("drizzle-orm/sqlite-core").SQLiteColumn<{
6
+ name: "id";
7
+ tableName: "bolt_files";
8
+ dataType: "string";
9
+ columnType: "SQLiteText";
10
+ data: string;
11
+ driverParam: string;
12
+ notNull: true;
13
+ hasDefault: true;
14
+ isPrimaryKey: true;
15
+ isAutoincrement: false;
16
+ hasRuntimeDefault: true;
17
+ enumValues: [string, ...string[]];
18
+ baseColumn: never;
19
+ identity: undefined;
20
+ generated: undefined;
21
+ }, {}, {
22
+ length: undefined;
23
+ }>;
24
+ appId: import("drizzle-orm/sqlite-core").SQLiteColumn<{
25
+ name: "app_id";
26
+ tableName: "bolt_files";
27
+ dataType: "string";
28
+ columnType: "SQLiteText";
29
+ data: string;
30
+ driverParam: string;
31
+ notNull: true;
32
+ hasDefault: false;
33
+ isPrimaryKey: false;
34
+ isAutoincrement: false;
35
+ hasRuntimeDefault: false;
36
+ enumValues: [string, ...string[]];
37
+ baseColumn: never;
38
+ identity: undefined;
39
+ generated: undefined;
40
+ }, {}, {
41
+ length: number | undefined;
42
+ }>;
43
+ organizationId: import("drizzle-orm/sqlite-core").SQLiteColumn<{
44
+ name: "organization_id";
45
+ tableName: "bolt_files";
46
+ dataType: "string";
47
+ columnType: "SQLiteText";
48
+ data: string;
49
+ driverParam: string;
50
+ notNull: false;
51
+ hasDefault: false;
52
+ isPrimaryKey: false;
53
+ isAutoincrement: false;
54
+ hasRuntimeDefault: false;
55
+ enumValues: [string, ...string[]];
56
+ baseColumn: never;
57
+ identity: undefined;
58
+ generated: undefined;
59
+ }, {}, {
60
+ length: number | undefined;
61
+ }>;
62
+ name: import("drizzle-orm/sqlite-core").SQLiteColumn<{
63
+ name: "name";
64
+ tableName: "bolt_files";
65
+ dataType: "string";
66
+ columnType: "SQLiteText";
67
+ data: string;
68
+ driverParam: string;
69
+ notNull: true;
70
+ hasDefault: false;
71
+ isPrimaryKey: false;
72
+ isAutoincrement: false;
73
+ hasRuntimeDefault: false;
74
+ enumValues: [string, ...string[]];
75
+ baseColumn: never;
76
+ identity: undefined;
77
+ generated: undefined;
78
+ }, {}, {
79
+ length: number | undefined;
80
+ }>;
81
+ url: import("drizzle-orm/sqlite-core").SQLiteColumn<{
82
+ name: "url";
83
+ tableName: "bolt_files";
84
+ dataType: "string";
85
+ columnType: "SQLiteText";
86
+ data: string;
87
+ driverParam: string;
88
+ notNull: true;
89
+ hasDefault: false;
90
+ isPrimaryKey: false;
91
+ isAutoincrement: false;
92
+ hasRuntimeDefault: false;
93
+ enumValues: [string, ...string[]];
94
+ baseColumn: never;
95
+ identity: undefined;
96
+ generated: undefined;
97
+ }, {}, {
98
+ length: number | undefined;
99
+ }>;
100
+ mimeType: import("drizzle-orm/sqlite-core").SQLiteColumn<{
101
+ name: "mime_type";
102
+ tableName: "bolt_files";
103
+ dataType: "string";
104
+ columnType: "SQLiteText";
105
+ data: string;
106
+ driverParam: string;
107
+ notNull: true;
108
+ hasDefault: false;
109
+ isPrimaryKey: false;
110
+ isAutoincrement: false;
111
+ hasRuntimeDefault: false;
112
+ enumValues: [string, ...string[]];
113
+ baseColumn: never;
114
+ identity: undefined;
115
+ generated: undefined;
116
+ }, {}, {
117
+ length: number | undefined;
118
+ }>;
119
+ extension: import("drizzle-orm/sqlite-core").SQLiteColumn<{
120
+ name: "extension";
121
+ tableName: "bolt_files";
122
+ dataType: "string";
123
+ columnType: "SQLiteText";
124
+ data: string;
125
+ driverParam: string;
126
+ notNull: false;
127
+ hasDefault: false;
128
+ isPrimaryKey: false;
129
+ isAutoincrement: false;
130
+ hasRuntimeDefault: false;
131
+ enumValues: [string, ...string[]];
132
+ baseColumn: never;
133
+ identity: undefined;
134
+ generated: undefined;
135
+ }, {}, {
136
+ length: number | undefined;
137
+ }>;
138
+ size: import("drizzle-orm/sqlite-core").SQLiteColumn<{
139
+ name: "size";
140
+ tableName: "bolt_files";
141
+ dataType: "number";
142
+ columnType: "SQLiteInteger";
143
+ data: number;
144
+ driverParam: number;
145
+ notNull: false;
146
+ hasDefault: false;
147
+ isPrimaryKey: false;
148
+ isAutoincrement: false;
149
+ hasRuntimeDefault: false;
150
+ enumValues: undefined;
151
+ baseColumn: never;
152
+ identity: undefined;
153
+ generated: undefined;
154
+ }, {}, {}>;
155
+ width: import("drizzle-orm/sqlite-core").SQLiteColumn<{
156
+ name: "width";
157
+ tableName: "bolt_files";
158
+ dataType: "number";
159
+ columnType: "SQLiteInteger";
160
+ data: number;
161
+ driverParam: number;
162
+ notNull: false;
163
+ hasDefault: false;
164
+ isPrimaryKey: false;
165
+ isAutoincrement: false;
166
+ hasRuntimeDefault: false;
167
+ enumValues: undefined;
168
+ baseColumn: never;
169
+ identity: undefined;
170
+ generated: undefined;
171
+ }, {}, {}>;
172
+ height: import("drizzle-orm/sqlite-core").SQLiteColumn<{
173
+ name: "height";
174
+ tableName: "bolt_files";
175
+ dataType: "number";
176
+ columnType: "SQLiteInteger";
177
+ data: number;
178
+ driverParam: number;
179
+ notNull: false;
180
+ hasDefault: false;
181
+ isPrimaryKey: false;
182
+ isAutoincrement: false;
183
+ hasRuntimeDefault: false;
184
+ enumValues: undefined;
185
+ baseColumn: never;
186
+ identity: undefined;
187
+ generated: undefined;
188
+ }, {}, {}>;
189
+ alt: import("drizzle-orm/sqlite-core").SQLiteColumn<{
190
+ name: "alt";
191
+ tableName: "bolt_files";
192
+ dataType: "string";
193
+ columnType: "SQLiteText";
194
+ data: string;
195
+ driverParam: string;
196
+ notNull: false;
197
+ hasDefault: false;
198
+ isPrimaryKey: false;
199
+ isAutoincrement: false;
200
+ hasRuntimeDefault: false;
201
+ enumValues: [string, ...string[]];
202
+ baseColumn: never;
203
+ identity: undefined;
204
+ generated: undefined;
205
+ }, {}, {
206
+ length: number | undefined;
207
+ }>;
208
+ source: import("drizzle-orm/sqlite-core").SQLiteColumn<{
209
+ name: "source";
210
+ tableName: "bolt_files";
211
+ dataType: "string";
212
+ columnType: "SQLiteText";
213
+ data: "local" | "remote";
214
+ driverParam: string;
215
+ notNull: false;
216
+ hasDefault: true;
217
+ isPrimaryKey: false;
218
+ isAutoincrement: false;
219
+ hasRuntimeDefault: false;
220
+ enumValues: ["local", "remote"];
221
+ baseColumn: never;
222
+ identity: undefined;
223
+ generated: undefined;
224
+ }, {}, {
225
+ length: number | undefined;
226
+ }>;
227
+ storagePath: import("drizzle-orm/sqlite-core").SQLiteColumn<{
228
+ name: "storage_path";
229
+ tableName: "bolt_files";
230
+ dataType: "string";
231
+ columnType: "SQLiteText";
232
+ data: string;
233
+ driverParam: string;
234
+ notNull: true;
235
+ hasDefault: false;
236
+ isPrimaryKey: false;
237
+ isAutoincrement: false;
238
+ hasRuntimeDefault: false;
239
+ enumValues: [string, ...string[]];
240
+ baseColumn: never;
241
+ identity: undefined;
242
+ generated: undefined;
243
+ }, {}, {
244
+ length: number | undefined;
245
+ }>;
246
+ createdBy: import("drizzle-orm/sqlite-core").SQLiteColumn<{
247
+ name: "created_by";
248
+ tableName: "bolt_files";
249
+ dataType: "string";
250
+ columnType: "SQLiteText";
251
+ data: string;
252
+ driverParam: string;
253
+ notNull: true;
254
+ hasDefault: true;
255
+ isPrimaryKey: false;
256
+ isAutoincrement: false;
257
+ hasRuntimeDefault: false;
258
+ enumValues: [string, ...string[]];
259
+ baseColumn: never;
260
+ identity: undefined;
261
+ generated: undefined;
262
+ }, {}, {
263
+ length: number | undefined;
264
+ }>;
265
+ updatedBy: import("drizzle-orm/sqlite-core").SQLiteColumn<{
266
+ name: "updated_by";
267
+ tableName: "bolt_files";
268
+ dataType: "string";
269
+ columnType: "SQLiteText";
270
+ data: string;
271
+ driverParam: string;
272
+ notNull: false;
273
+ hasDefault: true;
274
+ isPrimaryKey: false;
275
+ isAutoincrement: false;
276
+ hasRuntimeDefault: false;
277
+ enumValues: [string, ...string[]];
278
+ baseColumn: never;
279
+ identity: undefined;
280
+ generated: undefined;
281
+ }, {}, {
282
+ length: number | undefined;
283
+ }>;
284
+ createdAt: import("drizzle-orm/sqlite-core").SQLiteColumn<{
285
+ name: "created_at";
286
+ tableName: "bolt_files";
287
+ dataType: "date";
288
+ columnType: "SQLiteTimestamp";
289
+ data: Date;
290
+ driverParam: number;
291
+ notNull: false;
292
+ hasDefault: false;
293
+ isPrimaryKey: false;
294
+ isAutoincrement: false;
295
+ hasRuntimeDefault: false;
296
+ enumValues: undefined;
297
+ baseColumn: never;
298
+ identity: undefined;
299
+ generated: undefined;
300
+ }, {}, {}>;
301
+ updatedAt: import("drizzle-orm/sqlite-core").SQLiteColumn<{
302
+ name: "updated_at";
303
+ tableName: "bolt_files";
304
+ dataType: "date";
305
+ columnType: "SQLiteTimestamp";
306
+ data: Date;
307
+ driverParam: number;
308
+ notNull: false;
309
+ hasDefault: false;
310
+ isPrimaryKey: false;
311
+ isAutoincrement: false;
312
+ hasRuntimeDefault: false;
313
+ enumValues: undefined;
314
+ baseColumn: never;
315
+ identity: undefined;
316
+ generated: undefined;
317
+ }, {}, {}>;
318
+ };
319
+ dialect: "sqlite";
320
+ }>;
321
+ export declare const boltFilesRelations: import("drizzle-orm").Relations<"bolt_files", {
322
+ app: import("drizzle-orm").One<"bolt_apps", true>;
323
+ }>;
324
+ export type BoltFileClient = typeof boltFiles.$inferSelect;
@@ -0,0 +1,31 @@
1
+ import { relations } from "drizzle-orm";
2
+ import { index, integer, sqliteTable, text } from "drizzle-orm/sqlite-core";
3
+ import { nanoid } from "nanoid";
4
+ import { boltApps } from "./app-schema";
5
+ export const boltFiles = sqliteTable("bolt_files", {
6
+ id: text()
7
+ .primaryKey()
8
+ .$defaultFn(() => nanoid()),
9
+ appId: text("app_id").notNull(),
10
+ organizationId: text("organization_id"),
11
+ name: text("name").notNull(),
12
+ url: text("url").notNull(),
13
+ mimeType: text("mime_type").notNull(),
14
+ extension: text("extension"),
15
+ size: integer("size"),
16
+ width: integer("width"),
17
+ height: integer("height"),
18
+ alt: text("alt"),
19
+ source: text("source", { enum: ["local", "remote"] }).default("local"),
20
+ storagePath: text("storage_path").notNull(),
21
+ createdBy: text("created_by").default("system").notNull(),
22
+ updatedBy: text("updated_by").default("system"),
23
+ createdAt: integer("created_at", { mode: "timestamp" }),
24
+ updatedAt: integer("updated_at", { mode: "timestamp" }),
25
+ }, (table) => [index("bolt_files_app_idx").on(table.appId), index("bolt_files_name_idx").on(table.name)]);
26
+ export const boltFilesRelations = relations(boltFiles, ({ one }) => ({
27
+ app: one(boltApps, {
28
+ fields: [boltFiles.appId],
29
+ references: [boltApps.id],
30
+ }),
31
+ }));
@@ -0,0 +1,5 @@
1
+ export * from "./project-schema";
2
+ export * from "./table-schema";
3
+ export * from "./app-schema";
4
+ export * from "./data-store-schema";
5
+ export * from "./file-schema";
@@ -0,0 +1,5 @@
1
+ export * from "./project-schema";
2
+ export * from "./table-schema";
3
+ export * from "./app-schema";
4
+ export * from "./data-store-schema";
5
+ export * from "./file-schema";
@@ -0,0 +1,156 @@
1
+ export declare const boltProjects: import("drizzle-orm/sqlite-core").SQLiteTableWithColumns<{
2
+ name: "bolt_projects";
3
+ schema: undefined;
4
+ columns: {
5
+ id: import("drizzle-orm/sqlite-core").SQLiteColumn<{
6
+ name: "id";
7
+ tableName: "bolt_projects";
8
+ dataType: "string";
9
+ columnType: "SQLiteText";
10
+ data: string;
11
+ driverParam: string;
12
+ notNull: true;
13
+ hasDefault: true;
14
+ isPrimaryKey: true;
15
+ isAutoincrement: false;
16
+ hasRuntimeDefault: true;
17
+ enumValues: [string, ...string[]];
18
+ baseColumn: never;
19
+ identity: undefined;
20
+ generated: undefined;
21
+ }, {}, {
22
+ length: undefined;
23
+ }>;
24
+ name: import("drizzle-orm/sqlite-core").SQLiteColumn<{
25
+ name: "name";
26
+ tableName: "bolt_projects";
27
+ dataType: "string";
28
+ columnType: "SQLiteText";
29
+ data: string;
30
+ driverParam: string;
31
+ notNull: true;
32
+ hasDefault: false;
33
+ isPrimaryKey: false;
34
+ isAutoincrement: false;
35
+ hasRuntimeDefault: false;
36
+ enumValues: [string, ...string[]];
37
+ baseColumn: never;
38
+ identity: undefined;
39
+ generated: undefined;
40
+ }, {}, {
41
+ length: undefined;
42
+ }>;
43
+ description: import("drizzle-orm/sqlite-core").SQLiteColumn<{
44
+ name: "description";
45
+ tableName: "bolt_projects";
46
+ dataType: "string";
47
+ columnType: "SQLiteText";
48
+ data: string;
49
+ driverParam: string;
50
+ notNull: false;
51
+ hasDefault: false;
52
+ isPrimaryKey: false;
53
+ isAutoincrement: false;
54
+ hasRuntimeDefault: false;
55
+ enumValues: [string, ...string[]];
56
+ baseColumn: never;
57
+ identity: undefined;
58
+ generated: undefined;
59
+ }, {}, {
60
+ length: undefined;
61
+ }>;
62
+ slug: import("drizzle-orm/sqlite-core").SQLiteColumn<{
63
+ name: "slug";
64
+ tableName: "bolt_projects";
65
+ dataType: "string";
66
+ columnType: "SQLiteText";
67
+ data: string;
68
+ driverParam: string;
69
+ notNull: true;
70
+ hasDefault: false;
71
+ isPrimaryKey: false;
72
+ isAutoincrement: false;
73
+ hasRuntimeDefault: false;
74
+ enumValues: [string, ...string[]];
75
+ baseColumn: never;
76
+ identity: undefined;
77
+ generated: undefined;
78
+ }, {}, {
79
+ length: undefined;
80
+ }>;
81
+ createdAt: import("drizzle-orm/sqlite-core").SQLiteColumn<{
82
+ name: "createdAt";
83
+ tableName: "bolt_projects";
84
+ dataType: "date";
85
+ columnType: "SQLiteTimestamp";
86
+ data: Date;
87
+ driverParam: number;
88
+ notNull: false;
89
+ hasDefault: false;
90
+ isPrimaryKey: false;
91
+ isAutoincrement: false;
92
+ hasRuntimeDefault: false;
93
+ enumValues: undefined;
94
+ baseColumn: never;
95
+ identity: undefined;
96
+ generated: undefined;
97
+ }, {}, {}>;
98
+ updatedAt: import("drizzle-orm/sqlite-core").SQLiteColumn<{
99
+ name: "updatedAt";
100
+ tableName: "bolt_projects";
101
+ dataType: "date";
102
+ columnType: "SQLiteTimestamp";
103
+ data: Date;
104
+ driverParam: number;
105
+ notNull: false;
106
+ hasDefault: false;
107
+ isPrimaryKey: false;
108
+ isAutoincrement: false;
109
+ hasRuntimeDefault: false;
110
+ enumValues: undefined;
111
+ baseColumn: never;
112
+ identity: undefined;
113
+ generated: undefined;
114
+ }, {}, {}>;
115
+ createdBy: import("drizzle-orm/sqlite-core").SQLiteColumn<{
116
+ name: "createdBy";
117
+ tableName: "bolt_projects";
118
+ dataType: "string";
119
+ columnType: "SQLiteText";
120
+ data: string;
121
+ driverParam: string;
122
+ notNull: true;
123
+ hasDefault: true;
124
+ isPrimaryKey: false;
125
+ isAutoincrement: false;
126
+ hasRuntimeDefault: false;
127
+ enumValues: [string, ...string[]];
128
+ baseColumn: never;
129
+ identity: undefined;
130
+ generated: undefined;
131
+ }, {}, {
132
+ length: undefined;
133
+ }>;
134
+ updatedBy: import("drizzle-orm/sqlite-core").SQLiteColumn<{
135
+ name: "updatedBy";
136
+ tableName: "bolt_projects";
137
+ dataType: "string";
138
+ columnType: "SQLiteText";
139
+ data: string;
140
+ driverParam: string;
141
+ notNull: true;
142
+ hasDefault: true;
143
+ isPrimaryKey: false;
144
+ isAutoincrement: false;
145
+ hasRuntimeDefault: false;
146
+ enumValues: [string, ...string[]];
147
+ baseColumn: never;
148
+ identity: undefined;
149
+ generated: undefined;
150
+ }, {}, {
151
+ length: undefined;
152
+ }>;
153
+ };
154
+ dialect: "sqlite";
155
+ }>;
156
+ export type BoltProjectClient = typeof boltProjects.$inferSelect;
@@ -0,0 +1,17 @@
1
+ import { integer, sqliteTable, text, uniqueIndex } from "drizzle-orm/sqlite-core";
2
+ import { nanoid } from "nanoid";
3
+ export const boltProjects = sqliteTable("bolt_projects", {
4
+ id: text()
5
+ .primaryKey()
6
+ .$defaultFn(() => nanoid()),
7
+ name: text().notNull(),
8
+ description: text(),
9
+ slug: text().notNull(),
10
+ createdAt: integer({ mode: "timestamp" }),
11
+ updatedAt: integer({ mode: "timestamp" }),
12
+ createdBy: text().default("system").notNull(),
13
+ updatedBy: text().default("system").notNull(),
14
+ }, (table) => [
15
+ uniqueIndex("bolt_projects_name_unique_idx").on(table.name),
16
+ uniqueIndex("bolt_projects_slug_unique_idx").on(table.slug),
17
+ ]);