@storyshelf/db-mysql 0.6.2 → 0.7.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.
Files changed (92) hide show
  1. package/README.md +36 -0
  2. package/dist/ddl.d.mts +1 -1
  3. package/dist/ddl.mjs +381 -138
  4. package/dist/ddl.mjs.map +1 -1
  5. package/dist/drizzle-factory-mysql.mjs +7 -1
  6. package/dist/drizzle-factory-mysql.mjs.map +1 -1
  7. package/dist/foreign-keys.mjs +339 -0
  8. package/dist/foreign-keys.mjs.map +1 -0
  9. package/dist/index.mjs +10 -5
  10. package/dist/index.mjs.map +1 -1
  11. package/dist/migrate.mjs +300 -72
  12. package/dist/migrate.mjs.map +1 -1
  13. package/dist/schema/baseline.d.mts +60 -6
  14. package/dist/schema/baseline.mjs +6 -2
  15. package/dist/schema/baseline.mjs.map +1 -1
  16. package/dist/schema/{status-config.d.mts → build-component.d.mts} +46 -39
  17. package/dist/schema/build-component.mjs +26 -0
  18. package/dist/schema/build-component.mjs.map +1 -0
  19. package/dist/schema/build-review.d.mts +118 -0
  20. package/dist/schema/build-review.mjs +24 -0
  21. package/dist/schema/build-review.mjs.map +1 -0
  22. package/dist/schema/build.d.mts +44 -8
  23. package/dist/schema/build.mjs +5 -1
  24. package/dist/schema/build.mjs.map +1 -1
  25. package/dist/schema/capture-attempt.d.mts +18 -18
  26. package/dist/schema/capture-attempt.mjs +2 -1
  27. package/dist/schema/capture-attempt.mjs.map +1 -1
  28. package/dist/schema/capture-job.d.mts +330 -0
  29. package/dist/schema/capture-job.mjs +57 -0
  30. package/dist/schema/capture-job.mjs.map +1 -0
  31. package/dist/schema/capture-shard.d.mts +257 -0
  32. package/dist/schema/capture-shard.mjs +41 -0
  33. package/dist/schema/capture-shard.mjs.map +1 -0
  34. package/dist/schema/comment.d.mts +24 -6
  35. package/dist/schema/comment.mjs +5 -3
  36. package/dist/schema/comment.mjs.map +1 -1
  37. package/dist/schema/connection.d.mts +173 -0
  38. package/dist/schema/connection.mjs +36 -0
  39. package/dist/schema/connection.mjs.map +1 -0
  40. package/dist/schema/content-refs.d.mts +6 -6
  41. package/dist/schema/content-refs.mjs +2 -1
  42. package/dist/schema/content-refs.mjs.map +1 -1
  43. package/dist/schema/datetime.mjs +47 -0
  44. package/dist/schema/datetime.mjs.map +1 -0
  45. package/dist/schema/design.d.mts +589 -0
  46. package/dist/schema/design.mjs +74 -0
  47. package/dist/schema/design.mjs.map +1 -0
  48. package/dist/schema/insight.d.mts +633 -0
  49. package/dist/schema/insight.mjs +69 -0
  50. package/dist/schema/insight.mjs.map +1 -0
  51. package/dist/schema/label.d.mts +6 -6
  52. package/dist/schema/label.mjs +2 -1
  53. package/dist/schema/label.mjs.map +1 -1
  54. package/dist/schema/member.d.mts +3 -3
  55. package/dist/schema/member.mjs +2 -1
  56. package/dist/schema/member.mjs.map +1 -1
  57. package/dist/schema/notification.d.mts +45 -9
  58. package/dist/schema/notification.mjs +7 -1
  59. package/dist/schema/notification.mjs.map +1 -1
  60. package/dist/schema/project-group-mapping.d.mts +3 -3
  61. package/dist/schema/project-group-mapping.mjs +2 -1
  62. package/dist/schema/project-group-mapping.mjs.map +1 -1
  63. package/dist/schema/project.d.mts +132 -6
  64. package/dist/schema/project.mjs +10 -2
  65. package/dist/schema/project.mjs.map +1 -1
  66. package/dist/schema/site-setting.d.mts +99 -0
  67. package/dist/schema/site-setting.mjs +24 -0
  68. package/dist/schema/site-setting.mjs.map +1 -0
  69. package/dist/schema/snapshot.d.mts +117 -9
  70. package/dist/schema/snapshot.mjs +13 -2
  71. package/dist/schema/snapshot.mjs.map +1 -1
  72. package/dist/schema/token.d.mts +6 -6
  73. package/dist/schema/token.mjs +2 -1
  74. package/dist/schema/token.mjs.map +1 -1
  75. package/dist/schema/usage.d.mts +267 -0
  76. package/dist/schema/usage.mjs +37 -0
  77. package/dist/schema/usage.mjs.map +1 -0
  78. package/dist/schema/user-invite.d.mts +9 -9
  79. package/dist/schema/user-invite.mjs +2 -1
  80. package/dist/schema/user-invite.mjs.map +1 -1
  81. package/dist/schema/user.d.mts +6 -6
  82. package/dist/schema/user.mjs +2 -1
  83. package/dist/schema/user.mjs.map +1 -1
  84. package/dist/schema/webhook.d.mts +6 -6
  85. package/dist/schema/webhook.mjs +2 -1
  86. package/dist/schema/webhook.mjs.map +1 -1
  87. package/dist/schema.d.mts +24 -3
  88. package/dist/schema.mjs +25 -4
  89. package/dist/schema.mjs.map +1 -1
  90. package/package.json +5 -5
  91. package/dist/schema/status-config.mjs +0 -26
  92. package/dist/schema/status-config.mjs.map +0 -1
@@ -0,0 +1,330 @@
1
+ import __tsdown_shims_path from 'node:path';
2
+ import __tsdown_shims_url from 'node:url';
3
+ import { CaptureJobEntry, CaptureJobKind } from "@storyshelf/core/schema";
4
+ //#region src/schema/capture-job.d.ts
5
+ /**
6
+ * Narrow `capture_jobs` table definition: the database queue's job rows and per-attempt claim rows.
7
+ * No foreign keys: notify jobs may have no build, and finished rows are purged by retention.
8
+ */
9
+ declare const captureJobs: import("drizzle-orm/mysql-core").MySqlTableWithColumns<{
10
+ name: "capture_jobs";
11
+ schema: undefined;
12
+ columns: {
13
+ id: import("drizzle-orm/mysql-core").MySqlColumn<{
14
+ name: "id";
15
+ tableName: "capture_jobs";
16
+ dataType: "string";
17
+ columnType: "MySqlText";
18
+ data: string;
19
+ driverParam: string;
20
+ notNull: true;
21
+ hasDefault: false;
22
+ isPrimaryKey: true;
23
+ isAutoincrement: false;
24
+ hasRuntimeDefault: false;
25
+ enumValues: [string, ...string[]];
26
+ baseColumn: never;
27
+ identity: undefined;
28
+ generated: undefined;
29
+ }, {}, {}>;
30
+ entry: import("drizzle-orm/mysql-core").MySqlColumn<{
31
+ name: "entry";
32
+ tableName: "capture_jobs";
33
+ dataType: "string";
34
+ columnType: "MySqlText";
35
+ data: CaptureJobEntry;
36
+ driverParam: string;
37
+ notNull: true;
38
+ hasDefault: false;
39
+ isPrimaryKey: false;
40
+ isAutoincrement: false;
41
+ hasRuntimeDefault: false;
42
+ enumValues: [string, ...string[]];
43
+ baseColumn: never;
44
+ identity: undefined;
45
+ generated: undefined;
46
+ }, {}, {
47
+ $type: CaptureJobEntry;
48
+ }>;
49
+ jobId: import("drizzle-orm/mysql-core").MySqlColumn<{
50
+ name: "job_id";
51
+ tableName: "capture_jobs";
52
+ dataType: "string";
53
+ columnType: "MySqlText";
54
+ data: string;
55
+ driverParam: string;
56
+ notNull: true;
57
+ hasDefault: false;
58
+ isPrimaryKey: false;
59
+ isAutoincrement: false;
60
+ hasRuntimeDefault: false;
61
+ enumValues: [string, ...string[]];
62
+ baseColumn: never;
63
+ identity: undefined;
64
+ generated: undefined;
65
+ }, {}, {}>;
66
+ kind: import("drizzle-orm/mysql-core").MySqlColumn<{
67
+ name: "kind";
68
+ tableName: "capture_jobs";
69
+ dataType: "string";
70
+ columnType: "MySqlText";
71
+ data: CaptureJobKind;
72
+ driverParam: string;
73
+ notNull: true;
74
+ hasDefault: false;
75
+ isPrimaryKey: false;
76
+ isAutoincrement: false;
77
+ hasRuntimeDefault: false;
78
+ enumValues: [string, ...string[]];
79
+ baseColumn: never;
80
+ identity: undefined;
81
+ generated: undefined;
82
+ }, {}, {
83
+ $type: CaptureJobKind;
84
+ }>;
85
+ buildId: import("drizzle-orm/mysql-core").MySqlColumn<{
86
+ name: "build_id";
87
+ tableName: "capture_jobs";
88
+ dataType: "string";
89
+ columnType: "MySqlText";
90
+ data: string;
91
+ driverParam: string;
92
+ notNull: false;
93
+ hasDefault: false;
94
+ isPrimaryKey: false;
95
+ isAutoincrement: false;
96
+ hasRuntimeDefault: false;
97
+ enumValues: [string, ...string[]];
98
+ baseColumn: never;
99
+ identity: undefined;
100
+ generated: undefined;
101
+ }, {}, {}>;
102
+ shardId: import("drizzle-orm/mysql-core").MySqlColumn<{
103
+ name: "shard_id";
104
+ tableName: "capture_jobs";
105
+ dataType: "string";
106
+ columnType: "MySqlText";
107
+ data: string;
108
+ driverParam: string;
109
+ notNull: false;
110
+ hasDefault: false;
111
+ isPrimaryKey: false;
112
+ isAutoincrement: false;
113
+ hasRuntimeDefault: false;
114
+ enumValues: [string, ...string[]];
115
+ baseColumn: never;
116
+ identity: undefined;
117
+ generated: undefined;
118
+ }, {}, {}>;
119
+ attempt: import("drizzle-orm/mysql-core").MySqlColumn<{
120
+ name: "attempt";
121
+ tableName: "capture_jobs";
122
+ dataType: "number";
123
+ columnType: "MySqlInt";
124
+ data: number;
125
+ driverParam: string | number;
126
+ notNull: true;
127
+ hasDefault: true;
128
+ isPrimaryKey: false;
129
+ isAutoincrement: false;
130
+ hasRuntimeDefault: false;
131
+ enumValues: undefined;
132
+ baseColumn: never;
133
+ identity: undefined;
134
+ generated: undefined;
135
+ }, {}, {}>;
136
+ maxAttempts: import("drizzle-orm/mysql-core").MySqlColumn<{
137
+ name: "max_attempts";
138
+ tableName: "capture_jobs";
139
+ dataType: "number";
140
+ columnType: "MySqlInt";
141
+ data: number;
142
+ driverParam: string | number;
143
+ notNull: true;
144
+ hasDefault: true;
145
+ isPrimaryKey: false;
146
+ isAutoincrement: false;
147
+ hasRuntimeDefault: false;
148
+ enumValues: undefined;
149
+ baseColumn: never;
150
+ identity: undefined;
151
+ generated: undefined;
152
+ }, {}, {}>;
153
+ status: import("drizzle-orm/mysql-core").MySqlColumn<{
154
+ name: "status";
155
+ tableName: "capture_jobs";
156
+ dataType: "string";
157
+ columnType: "MySqlText";
158
+ data: "cancelled" | "done" | "expired" | "failed" | "queued" | "running";
159
+ driverParam: string;
160
+ notNull: true;
161
+ hasDefault: false;
162
+ isPrimaryKey: false;
163
+ isAutoincrement: false;
164
+ hasRuntimeDefault: false;
165
+ enumValues: [string, ...string[]];
166
+ baseColumn: never;
167
+ identity: undefined;
168
+ generated: undefined;
169
+ }, {}, {
170
+ $type: "cancelled" | "done" | "expired" | "failed" | "queued" | "running";
171
+ }>;
172
+ visibleAt: import("drizzle-orm/mysql-core").MySqlColumn<{
173
+ name: "visible_at";
174
+ tableName: "capture_jobs";
175
+ dataType: "custom";
176
+ columnType: "MySqlCustomColumn";
177
+ data: string;
178
+ driverParam: string;
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
+ owner: import("drizzle-orm/mysql-core").MySqlColumn<{
190
+ name: "owner";
191
+ tableName: "capture_jobs";
192
+ dataType: "string";
193
+ columnType: "MySqlText";
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
+ payload: import("drizzle-orm/mysql-core").MySqlColumn<{
207
+ name: "payload";
208
+ tableName: "capture_jobs";
209
+ dataType: "string";
210
+ columnType: "MySqlText";
211
+ data: string;
212
+ driverParam: string;
213
+ notNull: false;
214
+ hasDefault: false;
215
+ isPrimaryKey: false;
216
+ isAutoincrement: false;
217
+ hasRuntimeDefault: false;
218
+ enumValues: [string, ...string[]];
219
+ baseColumn: never;
220
+ identity: undefined;
221
+ generated: undefined;
222
+ }, {}, {}>;
223
+ cancelRequestedAt: import("drizzle-orm/mysql-core").MySqlColumn<{
224
+ name: "cancel_requested_at";
225
+ tableName: "capture_jobs";
226
+ dataType: "custom";
227
+ columnType: "MySqlCustomColumn";
228
+ data: string;
229
+ driverParam: string;
230
+ notNull: false;
231
+ hasDefault: false;
232
+ isPrimaryKey: false;
233
+ isAutoincrement: false;
234
+ hasRuntimeDefault: false;
235
+ enumValues: undefined;
236
+ baseColumn: never;
237
+ identity: undefined;
238
+ generated: undefined;
239
+ }, {}, {}>;
240
+ error: import("drizzle-orm/mysql-core").MySqlColumn<{
241
+ name: "error";
242
+ tableName: "capture_jobs";
243
+ dataType: "string";
244
+ columnType: "MySqlText";
245
+ data: string;
246
+ driverParam: string;
247
+ notNull: false;
248
+ hasDefault: false;
249
+ isPrimaryKey: false;
250
+ isAutoincrement: false;
251
+ hasRuntimeDefault: false;
252
+ enumValues: [string, ...string[]];
253
+ baseColumn: never;
254
+ identity: undefined;
255
+ generated: undefined;
256
+ }, {}, {}>;
257
+ startedAt: import("drizzle-orm/mysql-core").MySqlColumn<{
258
+ name: "started_at";
259
+ tableName: "capture_jobs";
260
+ dataType: "custom";
261
+ columnType: "MySqlCustomColumn";
262
+ data: string;
263
+ driverParam: string;
264
+ notNull: false;
265
+ hasDefault: false;
266
+ isPrimaryKey: false;
267
+ isAutoincrement: false;
268
+ hasRuntimeDefault: false;
269
+ enumValues: undefined;
270
+ baseColumn: never;
271
+ identity: undefined;
272
+ generated: undefined;
273
+ }, {}, {}>;
274
+ finishedAt: import("drizzle-orm/mysql-core").MySqlColumn<{
275
+ name: "finished_at";
276
+ tableName: "capture_jobs";
277
+ dataType: "custom";
278
+ columnType: "MySqlCustomColumn";
279
+ data: string;
280
+ driverParam: string;
281
+ notNull: false;
282
+ hasDefault: false;
283
+ isPrimaryKey: false;
284
+ isAutoincrement: false;
285
+ hasRuntimeDefault: false;
286
+ enumValues: undefined;
287
+ baseColumn: never;
288
+ identity: undefined;
289
+ generated: undefined;
290
+ }, {}, {}>;
291
+ createdAt: import("drizzle-orm/mysql-core").MySqlColumn<{
292
+ name: "created_at";
293
+ tableName: "capture_jobs";
294
+ dataType: "custom";
295
+ columnType: "MySqlCustomColumn";
296
+ data: string;
297
+ driverParam: string;
298
+ notNull: true;
299
+ hasDefault: false;
300
+ isPrimaryKey: false;
301
+ isAutoincrement: false;
302
+ hasRuntimeDefault: false;
303
+ enumValues: undefined;
304
+ baseColumn: never;
305
+ identity: undefined;
306
+ generated: undefined;
307
+ }, {}, {}>;
308
+ updatedAt: import("drizzle-orm/mysql-core").MySqlColumn<{
309
+ name: "updated_at";
310
+ tableName: "capture_jobs";
311
+ dataType: "custom";
312
+ columnType: "MySqlCustomColumn";
313
+ data: string;
314
+ driverParam: string;
315
+ notNull: true;
316
+ hasDefault: false;
317
+ isPrimaryKey: false;
318
+ isAutoincrement: false;
319
+ hasRuntimeDefault: false;
320
+ enumValues: undefined;
321
+ baseColumn: never;
322
+ identity: undefined;
323
+ generated: undefined;
324
+ }, {}, {}>;
325
+ };
326
+ dialect: 'mysql';
327
+ }>;
328
+ //#endregion
329
+ export { captureJobs };
330
+ //# sourceMappingURL=capture-job.d.mts.map
@@ -0,0 +1,57 @@
1
+ import "node:path";
2
+ import "node:url";
3
+ import.meta.url;
4
+ import { datetime } from "./datetime.mjs";
5
+ import { index, int, mysqlTable, text } from "drizzle-orm/mysql-core";
6
+ //#region src/schema/capture-job.ts
7
+ /**
8
+ * Narrow `capture_jobs` table definition: the database queue's job rows and per-attempt claim rows.
9
+ * No foreign keys: notify jobs may have no build, and finished rows are purged by retention.
10
+ */
11
+ const captureJobs = mysqlTable("capture_jobs", {
12
+ id: text("id").primaryKey(),
13
+ entry: text("entry").$type().notNull(),
14
+ jobId: text("job_id").notNull(),
15
+ kind: text("kind").$type().notNull(),
16
+ buildId: text("build_id"),
17
+ shardId: text("shard_id"),
18
+ attempt: int("attempt").notNull().default(0),
19
+ maxAttempts: int("max_attempts").notNull().default(3),
20
+ status: text("status").$type().notNull(),
21
+ visibleAt: datetime("visible_at", {
22
+ mode: "string",
23
+ fsp: 3
24
+ }),
25
+ owner: text("owner"),
26
+ payload: text("payload"),
27
+ cancelRequestedAt: datetime("cancel_requested_at", {
28
+ mode: "string",
29
+ fsp: 3
30
+ }),
31
+ error: text("error"),
32
+ startedAt: datetime("started_at", {
33
+ mode: "string",
34
+ fsp: 3
35
+ }),
36
+ finishedAt: datetime("finished_at", {
37
+ mode: "string",
38
+ fsp: 3
39
+ }),
40
+ createdAt: datetime("created_at", {
41
+ mode: "string",
42
+ fsp: 3
43
+ }).notNull(),
44
+ updatedAt: datetime("updated_at", {
45
+ mode: "string",
46
+ fsp: 3
47
+ }).notNull()
48
+ }, (table) => [
49
+ index("capture_jobs_poll_idx").on(table.kind, table.visibleAt, table.status),
50
+ index("capture_jobs_job_id_idx").on(table.jobId),
51
+ index("capture_jobs_build_id_idx").on(table.buildId),
52
+ index("capture_jobs_entry_created_idx").on(table.entry, table.createdAt)
53
+ ]);
54
+ //#endregion
55
+ export { captureJobs };
56
+
57
+ //# sourceMappingURL=capture-job.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"capture-job.mjs","names":[],"sources":["../../src/schema/capture-job.ts"],"sourcesContent":["import type {\n CaptureAttemptStatus,\n CaptureJobEntry,\n CaptureJobKind,\n CaptureJobStatus,\n} from \"@storyshelf/core/schema\";\nimport { index, int, mysqlTable, text } from \"drizzle-orm/mysql-core\";\nimport { datetime } from \"./datetime.ts\";\n\n/**\n * Narrow `capture_jobs` table definition: the database queue's job rows and per-attempt claim rows.\n * No foreign keys: notify jobs may have no build, and finished rows are purged by retention.\n */\nexport const captureJobs = mysqlTable(\n \"capture_jobs\",\n {\n id: text(\"id\").primaryKey(),\n entry: text(\"entry\").$type<CaptureJobEntry>().notNull(),\n jobId: text(\"job_id\").notNull(),\n kind: text(\"kind\").$type<CaptureJobKind>().notNull(),\n buildId: text(\"build_id\"),\n shardId: text(\"shard_id\"),\n attempt: int(\"attempt\").notNull().default(0),\n maxAttempts: int(\"max_attempts\").notNull().default(3),\n status: text(\"status\").$type<CaptureJobStatus | CaptureAttemptStatus>().notNull(),\n visibleAt: datetime(\"visible_at\", { mode: \"string\", fsp: 3 }),\n owner: text(\"owner\"),\n payload: text(\"payload\"),\n cancelRequestedAt: datetime(\"cancel_requested_at\", { mode: \"string\", fsp: 3 }),\n error: text(\"error\"),\n startedAt: datetime(\"started_at\", { mode: \"string\", fsp: 3 }),\n finishedAt: datetime(\"finished_at\", { mode: \"string\", fsp: 3 }),\n createdAt: datetime(\"created_at\", { mode: \"string\", fsp: 3 }).notNull(),\n updatedAt: datetime(\"updated_at\", { mode: \"string\", fsp: 3 }).notNull(),\n },\n (table) => [\n index(\"capture_jobs_poll_idx\").on(table.kind, table.visibleAt, table.status),\n index(\"capture_jobs_job_id_idx\").on(table.jobId),\n index(\"capture_jobs_build_id_idx\").on(table.buildId),\n index(\"capture_jobs_entry_created_idx\").on(table.entry, table.createdAt),\n ],\n);\n"],"mappings":";;;;;;;;;;AAaA,MAAa,cAAc,WACzB,gBACA;CACE,IAAI,KAAK,IAAI,CAAC,CAAC,WAAW;CAC1B,OAAO,KAAK,OAAO,CAAC,CAAC,MAAuB,CAAC,CAAC,QAAQ;CACtD,OAAO,KAAK,QAAQ,CAAC,CAAC,QAAQ;CAC9B,MAAM,KAAK,MAAM,CAAC,CAAC,MAAsB,CAAC,CAAC,QAAQ;CACnD,SAAS,KAAK,UAAU;CACxB,SAAS,KAAK,UAAU;CACxB,SAAS,IAAI,SAAS,CAAC,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC;CAC3C,aAAa,IAAI,cAAc,CAAC,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC;CACpD,QAAQ,KAAK,QAAQ,CAAC,CAAC,MAA+C,CAAC,CAAC,QAAQ;CAChF,WAAW,SAAS,cAAc;EAAE,MAAM;EAAU,KAAK;CAAE,CAAC;CAC5D,OAAO,KAAK,OAAO;CACnB,SAAS,KAAK,SAAS;CACvB,mBAAmB,SAAS,uBAAuB;EAAE,MAAM;EAAU,KAAK;CAAE,CAAC;CAC7E,OAAO,KAAK,OAAO;CACnB,WAAW,SAAS,cAAc;EAAE,MAAM;EAAU,KAAK;CAAE,CAAC;CAC5D,YAAY,SAAS,eAAe;EAAE,MAAM;EAAU,KAAK;CAAE,CAAC;CAC9D,WAAW,SAAS,cAAc;EAAE,MAAM;EAAU,KAAK;CAAE,CAAC,CAAC,CAAC,QAAQ;CACtE,WAAW,SAAS,cAAc;EAAE,MAAM;EAAU,KAAK;CAAE,CAAC,CAAC,CAAC,QAAQ;AACxE,IACC,UAAU;CACT,MAAM,uBAAuB,CAAC,CAAC,GAAG,MAAM,MAAM,MAAM,WAAW,MAAM,MAAM;CAC3E,MAAM,yBAAyB,CAAC,CAAC,GAAG,MAAM,KAAK;CAC/C,MAAM,2BAA2B,CAAC,CAAC,GAAG,MAAM,OAAO;CACnD,MAAM,gCAAgC,CAAC,CAAC,GAAG,MAAM,OAAO,MAAM,SAAS;AACzE,CACF"}
@@ -0,0 +1,257 @@
1
+ import __tsdown_shims_path from 'node:path';
2
+ import __tsdown_shims_url from 'node:url';
3
+ import { CaptureShardKind, CaptureShardStatus } from "@storyshelf/core/schema";
4
+ //#region src/schema/capture-shard.d.ts
5
+ /** Narrow `capture_shards` table definition: the stages of a sharded capture and its finalize claim. */
6
+ declare const captureShards: import("drizzle-orm/mysql-core").MySqlTableWithColumns<{
7
+ name: "capture_shards";
8
+ schema: undefined;
9
+ columns: {
10
+ id: import("drizzle-orm/mysql-core").MySqlColumn<{
11
+ name: "id";
12
+ tableName: "capture_shards";
13
+ dataType: "string";
14
+ columnType: "MySqlText";
15
+ data: string;
16
+ driverParam: string;
17
+ notNull: true;
18
+ hasDefault: false;
19
+ isPrimaryKey: true;
20
+ isAutoincrement: false;
21
+ hasRuntimeDefault: false;
22
+ enumValues: [string, ...string[]];
23
+ baseColumn: never;
24
+ identity: undefined;
25
+ generated: undefined;
26
+ }, {}, {}>;
27
+ projectId: import("drizzle-orm/mysql-core").MySqlColumn<{
28
+ name: "project_id";
29
+ tableName: "capture_shards";
30
+ dataType: "string";
31
+ columnType: "MySqlText";
32
+ data: string;
33
+ driverParam: string;
34
+ notNull: true;
35
+ hasDefault: false;
36
+ isPrimaryKey: false;
37
+ isAutoincrement: false;
38
+ hasRuntimeDefault: false;
39
+ enumValues: [string, ...string[]];
40
+ baseColumn: never;
41
+ identity: undefined;
42
+ generated: undefined;
43
+ }, {}, {}>;
44
+ buildId: import("drizzle-orm/mysql-core").MySqlColumn<{
45
+ name: "build_id";
46
+ tableName: "capture_shards";
47
+ dataType: "string";
48
+ columnType: "MySqlText";
49
+ data: string;
50
+ driverParam: string;
51
+ notNull: true;
52
+ hasDefault: false;
53
+ isPrimaryKey: false;
54
+ isAutoincrement: false;
55
+ hasRuntimeDefault: false;
56
+ enumValues: [string, ...string[]];
57
+ baseColumn: never;
58
+ identity: undefined;
59
+ generated: undefined;
60
+ }, {}, {}>;
61
+ kind: import("drizzle-orm/mysql-core").MySqlColumn<{
62
+ name: "kind";
63
+ tableName: "capture_shards";
64
+ dataType: "string";
65
+ columnType: "MySqlText";
66
+ data: CaptureShardKind;
67
+ driverParam: string;
68
+ notNull: true;
69
+ hasDefault: false;
70
+ isPrimaryKey: false;
71
+ isAutoincrement: false;
72
+ hasRuntimeDefault: false;
73
+ enumValues: [string, ...string[]];
74
+ baseColumn: never;
75
+ identity: undefined;
76
+ generated: undefined;
77
+ }, {}, {
78
+ $type: CaptureShardKind;
79
+ }>;
80
+ ordinal: import("drizzle-orm/mysql-core").MySqlColumn<{
81
+ name: "ordinal";
82
+ tableName: "capture_shards";
83
+ dataType: "number";
84
+ columnType: "MySqlInt";
85
+ data: number;
86
+ driverParam: string | number;
87
+ notNull: true;
88
+ hasDefault: false;
89
+ isPrimaryKey: false;
90
+ isAutoincrement: false;
91
+ hasRuntimeDefault: false;
92
+ enumValues: undefined;
93
+ baseColumn: never;
94
+ identity: undefined;
95
+ generated: undefined;
96
+ }, {}, {}>;
97
+ status: import("drizzle-orm/mysql-core").MySqlColumn<{
98
+ name: "status";
99
+ tableName: "capture_shards";
100
+ dataType: "string";
101
+ columnType: "MySqlText";
102
+ data: CaptureShardStatus;
103
+ driverParam: string;
104
+ notNull: true;
105
+ hasDefault: true;
106
+ isPrimaryKey: false;
107
+ isAutoincrement: false;
108
+ hasRuntimeDefault: false;
109
+ enumValues: [string, ...string[]];
110
+ baseColumn: never;
111
+ identity: undefined;
112
+ generated: undefined;
113
+ }, {}, {
114
+ $type: CaptureShardStatus;
115
+ }>;
116
+ attemptId: import("drizzle-orm/mysql-core").MySqlColumn<{
117
+ name: "attempt_id";
118
+ tableName: "capture_shards";
119
+ dataType: "string";
120
+ columnType: "MySqlText";
121
+ data: string;
122
+ driverParam: string;
123
+ notNull: false;
124
+ hasDefault: false;
125
+ isPrimaryKey: false;
126
+ isAutoincrement: false;
127
+ hasRuntimeDefault: false;
128
+ enumValues: [string, ...string[]];
129
+ baseColumn: never;
130
+ identity: undefined;
131
+ generated: undefined;
132
+ }, {}, {}>;
133
+ payload: import("drizzle-orm/mysql-core").MySqlColumn<{
134
+ name: "payload";
135
+ tableName: "capture_shards";
136
+ dataType: "string";
137
+ columnType: "MySqlText";
138
+ data: string;
139
+ driverParam: string;
140
+ notNull: false;
141
+ hasDefault: false;
142
+ isPrimaryKey: false;
143
+ isAutoincrement: false;
144
+ hasRuntimeDefault: false;
145
+ enumValues: [string, ...string[]];
146
+ baseColumn: never;
147
+ identity: undefined;
148
+ generated: undefined;
149
+ }, {}, {}>;
150
+ result: import("drizzle-orm/mysql-core").MySqlColumn<{
151
+ name: "result";
152
+ tableName: "capture_shards";
153
+ dataType: "string";
154
+ columnType: "MySqlText";
155
+ data: string;
156
+ driverParam: string;
157
+ notNull: false;
158
+ hasDefault: false;
159
+ isPrimaryKey: false;
160
+ isAutoincrement: false;
161
+ hasRuntimeDefault: false;
162
+ enumValues: [string, ...string[]];
163
+ baseColumn: never;
164
+ identity: undefined;
165
+ generated: undefined;
166
+ }, {}, {}>;
167
+ error: import("drizzle-orm/mysql-core").MySqlColumn<{
168
+ name: "error";
169
+ tableName: "capture_shards";
170
+ dataType: "string";
171
+ columnType: "MySqlText";
172
+ data: string;
173
+ driverParam: string;
174
+ notNull: false;
175
+ hasDefault: false;
176
+ isPrimaryKey: false;
177
+ isAutoincrement: false;
178
+ hasRuntimeDefault: false;
179
+ enumValues: [string, ...string[]];
180
+ baseColumn: never;
181
+ identity: undefined;
182
+ generated: undefined;
183
+ }, {}, {}>;
184
+ startedAt: import("drizzle-orm/mysql-core").MySqlColumn<{
185
+ name: "started_at";
186
+ tableName: "capture_shards";
187
+ dataType: "custom";
188
+ columnType: "MySqlCustomColumn";
189
+ data: string;
190
+ driverParam: string;
191
+ notNull: false;
192
+ hasDefault: false;
193
+ isPrimaryKey: false;
194
+ isAutoincrement: false;
195
+ hasRuntimeDefault: false;
196
+ enumValues: undefined;
197
+ baseColumn: never;
198
+ identity: undefined;
199
+ generated: undefined;
200
+ }, {}, {}>;
201
+ finishedAt: import("drizzle-orm/mysql-core").MySqlColumn<{
202
+ name: "finished_at";
203
+ tableName: "capture_shards";
204
+ dataType: "custom";
205
+ columnType: "MySqlCustomColumn";
206
+ data: string;
207
+ driverParam: string;
208
+ notNull: false;
209
+ hasDefault: false;
210
+ isPrimaryKey: false;
211
+ isAutoincrement: false;
212
+ hasRuntimeDefault: false;
213
+ enumValues: undefined;
214
+ baseColumn: never;
215
+ identity: undefined;
216
+ generated: undefined;
217
+ }, {}, {}>;
218
+ createdAt: import("drizzle-orm/mysql-core").MySqlColumn<{
219
+ name: "created_at";
220
+ tableName: "capture_shards";
221
+ dataType: "custom";
222
+ columnType: "MySqlCustomColumn";
223
+ data: string;
224
+ driverParam: string;
225
+ notNull: true;
226
+ hasDefault: false;
227
+ isPrimaryKey: false;
228
+ isAutoincrement: false;
229
+ hasRuntimeDefault: false;
230
+ enumValues: undefined;
231
+ baseColumn: never;
232
+ identity: undefined;
233
+ generated: undefined;
234
+ }, {}, {}>;
235
+ updatedAt: import("drizzle-orm/mysql-core").MySqlColumn<{
236
+ name: "updated_at";
237
+ tableName: "capture_shards";
238
+ dataType: "custom";
239
+ columnType: "MySqlCustomColumn";
240
+ data: string;
241
+ driverParam: string;
242
+ notNull: true;
243
+ hasDefault: false;
244
+ isPrimaryKey: false;
245
+ isAutoincrement: false;
246
+ hasRuntimeDefault: false;
247
+ enumValues: undefined;
248
+ baseColumn: never;
249
+ identity: undefined;
250
+ generated: undefined;
251
+ }, {}, {}>;
252
+ };
253
+ dialect: 'mysql';
254
+ }>;
255
+ //#endregion
256
+ export { captureShards };
257
+ //# sourceMappingURL=capture-shard.d.mts.map
@@ -0,0 +1,41 @@
1
+ import "node:path";
2
+ import "node:url";
3
+ import.meta.url;
4
+ import { datetime } from "./datetime.mjs";
5
+ import { projects } from "./project.mjs";
6
+ import { builds } from "./build.mjs";
7
+ import { index, int, mysqlTable, text, uniqueIndex } from "drizzle-orm/mysql-core";
8
+ //#region src/schema/capture-shard.ts
9
+ /** Narrow `capture_shards` table definition: the stages of a sharded capture and its finalize claim. */
10
+ const captureShards = mysqlTable("capture_shards", {
11
+ id: text("id").primaryKey(),
12
+ projectId: text("project_id").notNull().references(() => projects.id, { onDelete: "cascade" }),
13
+ buildId: text("build_id").notNull().references(() => builds.id, { onDelete: "cascade" }),
14
+ kind: text("kind").$type().notNull(),
15
+ ordinal: int("ordinal").notNull(),
16
+ status: text("status").$type().notNull().default("pending"),
17
+ attemptId: text("attempt_id"),
18
+ payload: text("payload"),
19
+ result: text("result"),
20
+ error: text("error"),
21
+ startedAt: datetime("started_at", {
22
+ mode: "string",
23
+ fsp: 3
24
+ }),
25
+ finishedAt: datetime("finished_at", {
26
+ mode: "string",
27
+ fsp: 3
28
+ }),
29
+ createdAt: datetime("created_at", {
30
+ mode: "string",
31
+ fsp: 3
32
+ }).notNull(),
33
+ updatedAt: datetime("updated_at", {
34
+ mode: "string",
35
+ fsp: 3
36
+ }).notNull()
37
+ }, (t) => [uniqueIndex("capture_shards_build_kind_ordinal_idx").on(t.buildId, t.kind, t.ordinal), index("capture_shards_build_id_idx").on(t.buildId)]);
38
+ //#endregion
39
+ export { captureShards };
40
+
41
+ //# sourceMappingURL=capture-shard.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"capture-shard.mjs","names":[],"sources":["../../src/schema/capture-shard.ts"],"sourcesContent":["import type { CaptureShardKind, CaptureShardStatus } from \"@storyshelf/core/schema\";\nimport { index, int, mysqlTable, text, uniqueIndex } from \"drizzle-orm/mysql-core\";\nimport { builds } from \"./build.ts\";\nimport { datetime } from \"./datetime.ts\";\nimport { projects } from \"./project.ts\";\n\n/** Narrow `capture_shards` table definition: the stages of a sharded capture and its finalize claim. */\nexport const captureShards = mysqlTable(\n \"capture_shards\",\n {\n id: text(\"id\").primaryKey(),\n projectId: text(\"project_id\")\n .notNull()\n .references(() => projects.id, { onDelete: \"cascade\" }),\n buildId: text(\"build_id\")\n .notNull()\n .references(() => builds.id, { onDelete: \"cascade\" }),\n kind: text(\"kind\").$type<CaptureShardKind>().notNull(),\n ordinal: int(\"ordinal\").notNull(),\n status: text(\"status\").$type<CaptureShardStatus>().notNull().default(\"pending\"),\n attemptId: text(\"attempt_id\"),\n payload: text(\"payload\"),\n result: text(\"result\"),\n error: text(\"error\"),\n startedAt: datetime(\"started_at\", { mode: \"string\", fsp: 3 }),\n finishedAt: datetime(\"finished_at\", { mode: \"string\", fsp: 3 }),\n createdAt: datetime(\"created_at\", { mode: \"string\", fsp: 3 }).notNull(),\n updatedAt: datetime(\"updated_at\", { mode: \"string\", fsp: 3 }).notNull(),\n },\n (t) => [\n uniqueIndex(\"capture_shards_build_kind_ordinal_idx\").on(t.buildId, t.kind, t.ordinal),\n index(\"capture_shards_build_id_idx\").on(t.buildId),\n ],\n);\n"],"mappings":";;;;;;;;;AAOA,MAAa,gBAAgB,WAC3B,kBACA;CACE,IAAI,KAAK,IAAI,CAAC,CAAC,WAAW;CAC1B,WAAW,KAAK,YAAY,CAAC,CAC1B,QAAQ,CAAC,CACT,iBAAiB,SAAS,IAAI,EAAE,UAAU,UAAU,CAAC;CACxD,SAAS,KAAK,UAAU,CAAC,CACtB,QAAQ,CAAC,CACT,iBAAiB,OAAO,IAAI,EAAE,UAAU,UAAU,CAAC;CACtD,MAAM,KAAK,MAAM,CAAC,CAAC,MAAwB,CAAC,CAAC,QAAQ;CACrD,SAAS,IAAI,SAAS,CAAC,CAAC,QAAQ;CAChC,QAAQ,KAAK,QAAQ,CAAC,CAAC,MAA0B,CAAC,CAAC,QAAQ,CAAC,CAAC,QAAQ,SAAS;CAC9E,WAAW,KAAK,YAAY;CAC5B,SAAS,KAAK,SAAS;CACvB,QAAQ,KAAK,QAAQ;CACrB,OAAO,KAAK,OAAO;CACnB,WAAW,SAAS,cAAc;EAAE,MAAM;EAAU,KAAK;CAAE,CAAC;CAC5D,YAAY,SAAS,eAAe;EAAE,MAAM;EAAU,KAAK;CAAE,CAAC;CAC9D,WAAW,SAAS,cAAc;EAAE,MAAM;EAAU,KAAK;CAAE,CAAC,CAAC,CAAC,QAAQ;CACtE,WAAW,SAAS,cAAc;EAAE,MAAM;EAAU,KAAK;CAAE,CAAC,CAAC,CAAC,QAAQ;AACxE,IACC,MAAM,CACL,YAAY,uCAAuC,CAAC,CAAC,GAAG,EAAE,SAAS,EAAE,MAAM,EAAE,OAAO,GACpF,MAAM,6BAA6B,CAAC,CAAC,GAAG,EAAE,OAAO,CACnD,CACF"}