@storyshelf/db-mysql 0.6.2 → 0.8.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 (98) hide show
  1. package/README.md +36 -0
  2. package/dist/ddl.d.mts +1 -3
  3. package/dist/ddl.mjs +391 -141
  4. package/dist/ddl.mjs.map +1 -1
  5. package/dist/drizzle-factory-mysql.mjs +15 -8
  6. package/dist/drizzle-factory-mysql.mjs.map +1 -1
  7. package/dist/drizzle-factory.mjs +1 -2
  8. package/dist/foreign-keys.mjs +338 -0
  9. package/dist/foreign-keys.mjs.map +1 -0
  10. package/dist/index.d.mts +0 -2
  11. package/dist/index.mjs +11 -7
  12. package/dist/index.mjs.map +1 -1
  13. package/dist/migrate.mjs +349 -73
  14. package/dist/migrate.mjs.map +1 -1
  15. package/dist/planetscale.d.mts +0 -2
  16. package/dist/planetscale.mjs +1 -2
  17. package/dist/schema/baseline.d.mts +89 -19
  18. package/dist/schema/baseline.mjs +8 -4
  19. package/dist/schema/baseline.mjs.map +1 -1
  20. package/dist/schema/{status-config.d.mts → build-component.d.mts} +47 -42
  21. package/dist/schema/build-component.mjs +25 -0
  22. package/dist/schema/build-component.mjs.map +1 -0
  23. package/dist/schema/build-review.d.mts +116 -0
  24. package/dist/schema/build-review.mjs +23 -0
  25. package/dist/schema/build-review.mjs.map +1 -0
  26. package/dist/schema/build.d.mts +65 -31
  27. package/dist/schema/build.mjs +6 -3
  28. package/dist/schema/build.mjs.map +1 -1
  29. package/dist/schema/capture-attempt.d.mts +43 -45
  30. package/dist/schema/capture-attempt.mjs +3 -3
  31. package/dist/schema/capture-attempt.mjs.map +1 -1
  32. package/dist/schema/capture-job.d.mts +328 -0
  33. package/dist/schema/capture-job.mjs +56 -0
  34. package/dist/schema/capture-job.mjs.map +1 -0
  35. package/dist/schema/capture-shard.d.mts +255 -0
  36. package/dist/schema/capture-shard.mjs +40 -0
  37. package/dist/schema/capture-shard.mjs.map +1 -0
  38. package/dist/schema/comment.d.mts +35 -19
  39. package/dist/schema/comment.mjs +6 -5
  40. package/dist/schema/comment.mjs.map +1 -1
  41. package/dist/schema/connection.d.mts +171 -0
  42. package/dist/schema/connection.mjs +35 -0
  43. package/dist/schema/connection.mjs.map +1 -0
  44. package/dist/schema/content-refs.d.mts +11 -13
  45. package/dist/schema/content-refs.mjs +3 -3
  46. package/dist/schema/content-refs.mjs.map +1 -1
  47. package/dist/schema/datetime.mjs +46 -0
  48. package/dist/schema/datetime.mjs.map +1 -0
  49. package/dist/schema/design.d.mts +587 -0
  50. package/dist/schema/design.mjs +73 -0
  51. package/dist/schema/design.mjs.map +1 -0
  52. package/dist/schema/insight.d.mts +631 -0
  53. package/dist/schema/insight.mjs +68 -0
  54. package/dist/schema/insight.mjs.map +1 -0
  55. package/dist/schema/label.d.mts +21 -23
  56. package/dist/schema/label.mjs +3 -3
  57. package/dist/schema/label.mjs.map +1 -1
  58. package/dist/schema/member.d.mts +10 -12
  59. package/dist/schema/member.mjs +3 -3
  60. package/dist/schema/member.mjs.map +1 -1
  61. package/dist/schema/notification.d.mts +63 -29
  62. package/dist/schema/notification.mjs +8 -3
  63. package/dist/schema/notification.mjs.map +1 -1
  64. package/dist/schema/project-group-mapping.d.mts +9 -11
  65. package/dist/schema/project-group-mapping.mjs +3 -3
  66. package/dist/schema/project-group-mapping.mjs.map +1 -1
  67. package/dist/schema/project.d.mts +149 -25
  68. package/dist/schema/project.mjs +11 -4
  69. package/dist/schema/project.mjs.map +1 -1
  70. package/dist/schema/site-setting.d.mts +97 -0
  71. package/dist/schema/site-setting.mjs +23 -0
  72. package/dist/schema/site-setting.mjs.map +1 -0
  73. package/dist/schema/snapshot.d.mts +195 -35
  74. package/dist/schema/snapshot.mjs +17 -4
  75. package/dist/schema/snapshot.mjs.map +1 -1
  76. package/dist/schema/token.d.mts +14 -16
  77. package/dist/schema/token.mjs +3 -3
  78. package/dist/schema/token.mjs.map +1 -1
  79. package/dist/schema/usage.d.mts +265 -0
  80. package/dist/schema/usage.mjs +36 -0
  81. package/dist/schema/usage.mjs.map +1 -0
  82. package/dist/schema/user-invite.d.mts +16 -18
  83. package/dist/schema/user-invite.mjs +3 -3
  84. package/dist/schema/user-invite.mjs.map +1 -1
  85. package/dist/schema/user.d.mts +88 -16
  86. package/dist/schema/user.mjs +8 -4
  87. package/dist/schema/user.mjs.map +1 -1
  88. package/dist/schema/webhook.d.mts +14 -16
  89. package/dist/schema/webhook.mjs +3 -3
  90. package/dist/schema/webhook.mjs.map +1 -1
  91. package/dist/schema.d.mts +24 -5
  92. package/dist/schema.mjs +26 -6
  93. package/dist/schema.mjs.map +1 -1
  94. package/dist/tidb.d.mts +0 -2
  95. package/dist/tidb.mjs +1 -2
  96. package/package.json +7 -7
  97. package/dist/schema/status-config.mjs +0 -26
  98. package/dist/schema/status-config.mjs.map +0 -1
@@ -1,9 +1,10 @@
1
1
  import "node:path";
2
2
  import "node:url";
3
3
  import.meta.url;
4
+ import { datetime } from "./datetime.mjs";
4
5
  import { projects } from "./project.mjs";
5
- import { datetime, mysqlTable, text, uniqueIndex } from "drizzle-orm/mysql-core";
6
- //#region src/schema/project-group-mapping.ts
6
+ import { mysqlTable, text, uniqueIndex } from "drizzle-orm/mysql-core";
7
+ // src/schema/project-group-mapping.ts
7
8
  /** Narrow `project_group_mappings` table definition. */
8
9
  const projectGroupMappings = mysqlTable("project_group_mappings", {
9
10
  id: text("id").primaryKey(),
@@ -15,7 +16,6 @@ const projectGroupMappings = mysqlTable("project_group_mappings", {
15
16
  fsp: 3
16
17
  }).notNull()
17
18
  }, (t) => [uniqueIndex("project_group_mappings_project_group_idx").on(t.projectId, t.groupName)]);
18
- //#endregion
19
19
  export { projectGroupMappings };
20
20
 
21
21
  //# sourceMappingURL=project-group-mapping.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"project-group-mapping.mjs","names":[],"sources":["../../src/schema/project-group-mapping.ts"],"sourcesContent":["import type { ProjectRole } from \"@storyshelf/core/types\";\nimport { mysqlTable, text, datetime, uniqueIndex } from \"drizzle-orm/mysql-core\";\nimport { projects } from \"./project.ts\";\n\n/** Narrow `project_group_mappings` table definition. */\nexport const projectGroupMappings = mysqlTable(\n \"project_group_mappings\",\n {\n id: text(\"id\").primaryKey(),\n projectId: text(\"project_id\")\n .notNull()\n .references(() => projects.id, { onDelete: \"cascade\" }),\n groupName: text(\"group_name\").notNull(),\n role: text(\"role\").$type<ProjectRole>().notNull().default(\"viewer\"),\n createdAt: datetime(\"created_at\", { mode: \"string\", fsp: 3 }).notNull(),\n },\n (t) => [uniqueIndex(\"project_group_mappings_project_group_idx\").on(t.projectId, t.groupName)],\n);\n\n/** An identity-provider group to project-role mapping row. */\nexport interface ProjectGroupMapping {\n id: string;\n projectId: string;\n groupName: string;\n role: ProjectRole;\n createdAt: string;\n}\n"],"mappings":";;;;;;;AAKA,MAAa,uBAAuB,WAClC,0BACA;CACE,IAAI,KAAK,IAAI,CAAC,CAAC,WAAW;CAC1B,WAAW,KAAK,YAAY,CAAC,CAC1B,QAAQ,CAAC,CACT,iBAAiB,SAAS,IAAI,EAAE,UAAU,UAAU,CAAC;CACxD,WAAW,KAAK,YAAY,CAAC,CAAC,QAAQ;CACtC,MAAM,KAAK,MAAM,CAAC,CAAC,MAAmB,CAAC,CAAC,QAAQ,CAAC,CAAC,QAAQ,QAAQ;CAClE,WAAW,SAAS,cAAc;EAAE,MAAM;EAAU,KAAK;CAAE,CAAC,CAAC,CAAC,QAAQ;AACxE,IACC,MAAM,CAAC,YAAY,0CAA0C,CAAC,CAAC,GAAG,EAAE,WAAW,EAAE,SAAS,CAAC,CAC9F"}
1
+ {"version":3,"file":"project-group-mapping.mjs","names":[],"sources":["../../src/schema/project-group-mapping.ts"],"sourcesContent":["import type { ProjectRole } from \"@storyshelf/core/types\";\nimport { mysqlTable, text, uniqueIndex } from \"drizzle-orm/mysql-core\";\nimport { datetime } from \"./datetime.ts\";\nimport { projects } from \"./project.ts\";\n\n/** Narrow `project_group_mappings` table definition. */\nexport const projectGroupMappings = mysqlTable(\n \"project_group_mappings\",\n {\n id: text(\"id\").primaryKey(),\n projectId: text(\"project_id\")\n .notNull()\n .references(() => projects.id, { onDelete: \"cascade\" }),\n groupName: text(\"group_name\").notNull(),\n role: text(\"role\").$type<ProjectRole>().notNull().default(\"viewer\"),\n createdAt: datetime(\"created_at\", { mode: \"string\", fsp: 3 }).notNull(),\n },\n (t) => [uniqueIndex(\"project_group_mappings_project_group_idx\").on(t.projectId, t.groupName)],\n);\n\n/** An identity-provider group to project-role mapping row. */\nexport interface ProjectGroupMapping {\n id: string;\n projectId: string;\n groupName: string;\n role: ProjectRole;\n createdAt: string;\n}\n"],"mappings":";;;;;;;;AAMA,MAAa,uBAAuB,WAClC,0BACA;CACE,IAAI,KAAK,IAAI,CAAC,CAAC,WAAW;CAC1B,WAAW,KAAK,YAAY,CAAC,CAC1B,QAAQ,CAAC,CACT,iBAAiB,SAAS,IAAI,EAAE,UAAU,UAAU,CAAC;CACxD,WAAW,KAAK,YAAY,CAAC,CAAC,QAAQ;CACtC,MAAM,KAAK,MAAM,CAAC,CAAC,MAAmB,CAAC,CAAC,QAAQ,CAAC,CAAC,QAAQ,QAAQ;CAClE,WAAW,SAAS,cAAc;EAAE,MAAM;EAAU,KAAK;CAAE,CAAC,CAAC,CAAC,QAAQ;AACxE,IACC,MAAM,CAAC,YAAY,0CAA0C,CAAC,CAAC,GAAG,EAAE,WAAW,EAAE,SAAS,CAAC,CAC9F"}
@@ -1,12 +1,11 @@
1
1
  import __tsdown_shims_path from 'node:path';
2
2
  import __tsdown_shims_url from 'node:url';
3
- //#region src/schema/project.d.ts
4
3
  /** Narrow `projects` table definition. */
5
- declare const projects: import("drizzle-orm/mysql-core").MySqlTableWithColumns<{
4
+ declare const projects: import("drizzle-orm/mysql-core/table.js").MySqlTableWithColumns<{
6
5
  name: "projects";
7
6
  schema: undefined;
8
7
  columns: {
9
- id: import("drizzle-orm/mysql-core").MySqlColumn<{
8
+ id: import("drizzle-orm/mysql-core/index.js").MySqlColumn<{
10
9
  name: "id";
11
10
  tableName: "projects";
12
11
  dataType: "string";
@@ -23,7 +22,7 @@ declare const projects: import("drizzle-orm/mysql-core").MySqlTableWithColumns<{
23
22
  identity: undefined;
24
23
  generated: undefined;
25
24
  }, {}, {}>;
26
- name: import("drizzle-orm/mysql-core").MySqlColumn<{
25
+ name: import("drizzle-orm/mysql-core/index.js").MySqlColumn<{
27
26
  name: "name";
28
27
  tableName: "projects";
29
28
  dataType: "string";
@@ -40,7 +39,7 @@ declare const projects: import("drizzle-orm/mysql-core").MySqlTableWithColumns<{
40
39
  identity: undefined;
41
40
  generated: undefined;
42
41
  }, {}, {}>;
43
- slug: import("drizzle-orm/mysql-core").MySqlColumn<{
42
+ slug: import("drizzle-orm/mysql-core/index.js").MySqlColumn<{
44
43
  name: "slug";
45
44
  tableName: "projects";
46
45
  dataType: "string";
@@ -57,7 +56,7 @@ declare const projects: import("drizzle-orm/mysql-core").MySqlTableWithColumns<{
57
56
  identity: undefined;
58
57
  generated: undefined;
59
58
  }, {}, {}>;
60
- gitRepository: import("drizzle-orm/mysql-core").MySqlColumn<{
59
+ gitRepository: import("drizzle-orm/mysql-core/index.js").MySqlColumn<{
61
60
  name: "git_repository";
62
61
  tableName: "projects";
63
62
  dataType: "string";
@@ -74,7 +73,7 @@ declare const projects: import("drizzle-orm/mysql-core").MySqlTableWithColumns<{
74
73
  identity: undefined;
75
74
  generated: undefined;
76
75
  }, {}, {}>;
77
- gitDefaultBranch: import("drizzle-orm/mysql-core").MySqlColumn<{
76
+ gitDefaultBranch: import("drizzle-orm/mysql-core/index.js").MySqlColumn<{
78
77
  name: "git_default_branch";
79
78
  tableName: "projects";
80
79
  dataType: "string";
@@ -91,7 +90,7 @@ declare const projects: import("drizzle-orm/mysql-core").MySqlTableWithColumns<{
91
90
  identity: undefined;
92
91
  generated: undefined;
93
92
  }, {}, {}>;
94
- pixelThreshold: import("drizzle-orm/mysql-core").MySqlColumn<{
93
+ pixelThreshold: import("drizzle-orm/mysql-core/index.js").MySqlColumn<{
95
94
  name: "pixel_threshold";
96
95
  tableName: "projects";
97
96
  dataType: "number";
@@ -108,7 +107,7 @@ declare const projects: import("drizzle-orm/mysql-core").MySqlTableWithColumns<{
108
107
  identity: undefined;
109
108
  generated: undefined;
110
109
  }, {}, {}>;
111
- maxDiffRatio: import("drizzle-orm/mysql-core").MySqlColumn<{
110
+ maxDiffRatio: import("drizzle-orm/mysql-core/index.js").MySqlColumn<{
112
111
  name: "max_diff_ratio";
113
112
  tableName: "projects";
114
113
  dataType: "number";
@@ -125,7 +124,7 @@ declare const projects: import("drizzle-orm/mysql-core").MySqlTableWithColumns<{
125
124
  identity: undefined;
126
125
  generated: undefined;
127
126
  }, {}, {}>;
128
- publicBranchRegex: import("drizzle-orm/mysql-core").MySqlColumn<{
127
+ publicBranchRegex: import("drizzle-orm/mysql-core/index.js").MySqlColumn<{
129
128
  name: "public_branch_regex";
130
129
  tableName: "projects";
131
130
  dataType: "string";
@@ -142,7 +141,7 @@ declare const projects: import("drizzle-orm/mysql-core").MySqlTableWithColumns<{
142
141
  identity: undefined;
143
142
  generated: undefined;
144
143
  }, {}, {}>;
145
- storybookMeta: import("drizzle-orm/mysql-core").MySqlColumn<{
144
+ storybookMeta: import("drizzle-orm/mysql-core/index.js").MySqlColumn<{
146
145
  name: "storybook_meta";
147
146
  tableName: "projects";
148
147
  dataType: "string";
@@ -161,7 +160,7 @@ declare const projects: import("drizzle-orm/mysql-core").MySqlTableWithColumns<{
161
160
  }, {}, {
162
161
  $type: string | null | undefined;
163
162
  }>;
164
- executePlay: import("drizzle-orm/mysql-core").MySqlColumn<{
163
+ executePlay: import("drizzle-orm/mysql-core/index.js").MySqlColumn<{
165
164
  name: "execute_play";
166
165
  tableName: "projects";
167
166
  dataType: "boolean";
@@ -178,7 +177,7 @@ declare const projects: import("drizzle-orm/mysql-core").MySqlTableWithColumns<{
178
177
  identity: undefined;
179
178
  generated: undefined;
180
179
  }, {}, {}>;
181
- playTimeoutMs: import("drizzle-orm/mysql-core").MySqlColumn<{
180
+ playTimeoutMs: import("drizzle-orm/mysql-core/index.js").MySqlColumn<{
182
181
  name: "play_timeout_ms";
183
182
  tableName: "projects";
184
183
  dataType: "number";
@@ -195,7 +194,7 @@ declare const projects: import("drizzle-orm/mysql-core").MySqlTableWithColumns<{
195
194
  identity: undefined;
196
195
  generated: undefined;
197
196
  }, {}, {}>;
198
- runA11y: import("drizzle-orm/mysql-core").MySqlColumn<{
197
+ runA11y: import("drizzle-orm/mysql-core/index.js").MySqlColumn<{
199
198
  name: "run_a11y";
200
199
  tableName: "projects";
201
200
  dataType: "boolean";
@@ -212,7 +211,24 @@ declare const projects: import("drizzle-orm/mysql-core").MySqlTableWithColumns<{
212
211
  identity: undefined;
213
212
  generated: undefined;
214
213
  }, {}, {}>;
215
- browser: import("drizzle-orm/mysql-core").MySqlColumn<{
214
+ runTests: import("drizzle-orm/mysql-core/index.js").MySqlColumn<{
215
+ name: "run_tests";
216
+ tableName: "projects";
217
+ dataType: "boolean";
218
+ columnType: "MySqlBoolean";
219
+ data: boolean;
220
+ driverParam: number | boolean;
221
+ notNull: true;
222
+ hasDefault: true;
223
+ isPrimaryKey: false;
224
+ isAutoincrement: false;
225
+ hasRuntimeDefault: false;
226
+ enumValues: undefined;
227
+ baseColumn: never;
228
+ identity: undefined;
229
+ generated: undefined;
230
+ }, {}, {}>;
231
+ browser: import("drizzle-orm/mysql-core/index.js").MySqlColumn<{
216
232
  name: "browser";
217
233
  tableName: "projects";
218
234
  dataType: "string";
@@ -229,7 +245,7 @@ declare const projects: import("drizzle-orm/mysql-core").MySqlTableWithColumns<{
229
245
  identity: undefined;
230
246
  generated: undefined;
231
247
  }, {}, {}>;
232
- viewports: import("drizzle-orm/mysql-core").MySqlColumn<{
248
+ viewports: import("drizzle-orm/mysql-core/index.js").MySqlColumn<{
233
249
  name: "viewports";
234
250
  tableName: "projects";
235
251
  dataType: "string";
@@ -246,7 +262,41 @@ declare const projects: import("drizzle-orm/mysql-core").MySqlTableWithColumns<{
246
262
  identity: undefined;
247
263
  generated: undefined;
248
264
  }, {}, {}>;
249
- automigrate: import("drizzle-orm/mysql-core").MySqlColumn<{
265
+ browsers: import("drizzle-orm/mysql-core/index.js").MySqlColumn<{
266
+ name: "browsers";
267
+ tableName: "projects";
268
+ dataType: "string";
269
+ columnType: "MySqlText";
270
+ data: string;
271
+ driverParam: string;
272
+ notNull: false;
273
+ hasDefault: false;
274
+ isPrimaryKey: false;
275
+ isAutoincrement: false;
276
+ hasRuntimeDefault: false;
277
+ enumValues: [string, ...string[]];
278
+ baseColumn: never;
279
+ identity: undefined;
280
+ generated: undefined;
281
+ }, {}, {}>;
282
+ modesAllowlist: import("drizzle-orm/mysql-core/index.js").MySqlColumn<{
283
+ name: "modes_allowlist";
284
+ tableName: "projects";
285
+ dataType: "string";
286
+ columnType: "MySqlText";
287
+ data: string;
288
+ driverParam: string;
289
+ notNull: false;
290
+ hasDefault: false;
291
+ isPrimaryKey: false;
292
+ isAutoincrement: false;
293
+ hasRuntimeDefault: false;
294
+ enumValues: [string, ...string[]];
295
+ baseColumn: never;
296
+ identity: undefined;
297
+ generated: undefined;
298
+ }, {}, {}>;
299
+ automigrate: import("drizzle-orm/mysql-core/index.js").MySqlColumn<{
250
300
  name: "automigrate";
251
301
  tableName: "projects";
252
302
  dataType: "boolean";
@@ -263,13 +313,81 @@ declare const projects: import("drizzle-orm/mysql-core").MySqlTableWithColumns<{
263
313
  identity: undefined;
264
314
  generated: undefined;
265
315
  }, {}, {}>;
266
- createdAt: import("drizzle-orm/mysql-core").MySqlColumn<{
267
- name: "created_at";
316
+ aiProfile: import("drizzle-orm/mysql-core/index.js").MySqlColumn<{
317
+ name: "ai_profile";
268
318
  tableName: "projects";
269
319
  dataType: "string";
270
- columnType: "MySqlDateTimeString";
320
+ columnType: "MySqlText";
271
321
  data: string;
322
+ driverParam: string;
323
+ notNull: false;
324
+ hasDefault: false;
325
+ isPrimaryKey: false;
326
+ isAutoincrement: false;
327
+ hasRuntimeDefault: false;
328
+ enumValues: [string, ...string[]];
329
+ baseColumn: never;
330
+ identity: undefined;
331
+ generated: undefined;
332
+ }, {}, {}>;
333
+ reviewEnabled: import("drizzle-orm/mysql-core/index.js").MySqlColumn<{
334
+ name: "review_enabled";
335
+ tableName: "projects";
336
+ dataType: "boolean";
337
+ columnType: "MySqlBoolean";
338
+ data: boolean;
339
+ driverParam: number | boolean;
340
+ notNull: true;
341
+ hasDefault: true;
342
+ isPrimaryKey: false;
343
+ isAutoincrement: false;
344
+ hasRuntimeDefault: false;
345
+ enumValues: undefined;
346
+ baseColumn: never;
347
+ identity: undefined;
348
+ generated: undefined;
349
+ }, {}, {}>;
350
+ reviewApprovals: import("drizzle-orm/mysql-core/index.js").MySqlColumn<{
351
+ name: "review_approvals";
352
+ tableName: "projects";
353
+ dataType: "number";
354
+ columnType: "MySqlInt";
355
+ data: number;
356
+ driverParam: string | number;
357
+ notNull: true;
358
+ hasDefault: true;
359
+ isPrimaryKey: false;
360
+ isAutoincrement: false;
361
+ hasRuntimeDefault: false;
362
+ enumValues: undefined;
363
+ baseColumn: never;
364
+ identity: undefined;
365
+ generated: undefined;
366
+ }, {}, {}>;
367
+ storybookUrlTtlSeconds: import("drizzle-orm/mysql-core/index.js").MySqlColumn<{
368
+ name: "storybook_url_ttl_seconds";
369
+ tableName: "projects";
370
+ dataType: "number";
371
+ columnType: "MySqlInt";
372
+ data: number;
272
373
  driverParam: string | number;
374
+ notNull: false;
375
+ hasDefault: false;
376
+ isPrimaryKey: false;
377
+ isAutoincrement: false;
378
+ hasRuntimeDefault: false;
379
+ enumValues: undefined;
380
+ baseColumn: never;
381
+ identity: undefined;
382
+ generated: undefined;
383
+ }, {}, {}>;
384
+ createdAt: import("drizzle-orm/mysql-core/index.js").MySqlColumn<{
385
+ name: "created_at";
386
+ tableName: "projects";
387
+ dataType: "custom";
388
+ columnType: "MySqlCustomColumn";
389
+ data: string;
390
+ driverParam: string;
273
391
  notNull: true;
274
392
  hasDefault: false;
275
393
  isPrimaryKey: false;
@@ -280,13 +398,13 @@ declare const projects: import("drizzle-orm/mysql-core").MySqlTableWithColumns<{
280
398
  identity: undefined;
281
399
  generated: undefined;
282
400
  }, {}, {}>;
283
- updatedAt: import("drizzle-orm/mysql-core").MySqlColumn<{
401
+ updatedAt: import("drizzle-orm/mysql-core/index.js").MySqlColumn<{
284
402
  name: "updated_at";
285
403
  tableName: "projects";
286
- dataType: "string";
287
- columnType: "MySqlDateTimeString";
404
+ dataType: "custom";
405
+ columnType: "MySqlCustomColumn";
288
406
  data: string;
289
- driverParam: string | number;
407
+ driverParam: string;
290
408
  notNull: true;
291
409
  hasDefault: false;
292
410
  isPrimaryKey: false;
@@ -314,9 +432,16 @@ interface Project {
314
432
  executePlay: boolean;
315
433
  playTimeoutMs: number;
316
434
  runA11y?: boolean;
435
+ runTests?: boolean;
317
436
  browser?: string;
318
437
  viewports?: string | null;
438
+ browsers?: string | null;
439
+ modesAllowlist?: string | null;
319
440
  automigrate: boolean;
441
+ aiProfile: string | null;
442
+ reviewEnabled: boolean;
443
+ reviewApprovals: number;
444
+ storybookUrlTtlSeconds: number | null;
320
445
  createdAt: string;
321
446
  updatedAt: string;
322
447
  }
@@ -332,6 +457,5 @@ interface StorybookMeta {
332
457
  packagePath?: string;
333
458
  previewParameters?: Record<string, unknown>;
334
459
  }
335
- //#endregion
336
460
  export { Project, StorybookMeta, projects };
337
461
  //# sourceMappingURL=project.d.mts.map
@@ -1,8 +1,9 @@
1
1
  import "node:path";
2
2
  import "node:url";
3
3
  import.meta.url;
4
- import { boolean, datetime, double, int, mysqlTable, text } from "drizzle-orm/mysql-core";
5
- //#region src/schema/project.ts
4
+ import { datetime } from "./datetime.mjs";
5
+ import { boolean, double, int, mysqlTable, text } from "drizzle-orm/mysql-core";
6
+ // src/schema/project.ts
6
7
  /** Narrow `projects` table definition. */
7
8
  const projects = mysqlTable("projects", {
8
9
  id: text("id").primaryKey(),
@@ -16,10 +17,17 @@ const projects = mysqlTable("projects", {
16
17
  storybookMeta: text("storybook_meta").$type().default(null),
17
18
  executePlay: boolean("execute_play").notNull().default(false),
18
19
  playTimeoutMs: int("play_timeout_ms").notNull().default(1e4),
19
- runA11y: boolean("run_a11y").notNull().default(false),
20
+ runA11y: boolean("run_a11y").notNull().default(true),
21
+ runTests: boolean("run_tests").notNull().default(false),
20
22
  browser: text("browser").notNull().default("chromium"),
21
23
  viewports: text("viewports"),
24
+ browsers: text("browsers"),
25
+ modesAllowlist: text("modes_allowlist"),
22
26
  automigrate: boolean("automigrate").notNull().default(false),
27
+ aiProfile: text("ai_profile"),
28
+ reviewEnabled: boolean("review_enabled").notNull().default(true),
29
+ reviewApprovals: int("review_approvals").notNull().default(1),
30
+ storybookUrlTtlSeconds: int("storybook_url_ttl_seconds"),
23
31
  createdAt: datetime("created_at", {
24
32
  mode: "string",
25
33
  fsp: 3
@@ -29,7 +37,6 @@ const projects = mysqlTable("projects", {
29
37
  fsp: 3
30
38
  }).notNull()
31
39
  });
32
- //#endregion
33
40
  export { projects };
34
41
 
35
42
  //# sourceMappingURL=project.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"project.mjs","names":[],"sources":["../../src/schema/project.ts"],"sourcesContent":["import { boolean, double, int, mysqlTable, text, datetime } from \"drizzle-orm/mysql-core\";\n\n/** Narrow `projects` table definition. */\nexport const projects = mysqlTable(\"projects\", {\n id: text(\"id\").primaryKey(),\n name: text(\"name\").notNull(),\n slug: text(\"slug\").notNull(),\n gitRepository: text(\"git_repository\"),\n gitDefaultBranch: text(\"git_default_branch\").notNull().default(\"main\"),\n pixelThreshold: double(\"pixel_threshold\").notNull().default(0.1),\n maxDiffRatio: double(\"max_diff_ratio\").notNull().default(0.01),\n publicBranchRegex: text(\"public_branch_regex\"),\n storybookMeta: text(\"storybook_meta\").$type<string | null | undefined>().default(null),\n executePlay: boolean(\"execute_play\").notNull().default(false),\n playTimeoutMs: int(\"play_timeout_ms\").notNull().default(10_000),\n runA11y: boolean(\"run_a11y\").notNull().default(false),\n browser: text(\"browser\").notNull().default(\"chromium\"),\n viewports: text(\"viewports\"),\n automigrate: boolean(\"automigrate\").notNull().default(false),\n createdAt: datetime(\"created_at\", { mode: \"string\", fsp: 3 }).notNull(),\n updatedAt: datetime(\"updated_at\", { mode: \"string\", fsp: 3 }).notNull(),\n});\n\n/** A project row. */\nexport interface Project {\n id: string;\n name: string;\n slug: string;\n gitRepository: string | null;\n gitDefaultBranch: string;\n pixelThreshold: number;\n maxDiffRatio: number;\n publicBranchRegex: string | null;\n storybookMeta: string | null | undefined;\n executePlay: boolean;\n playTimeoutMs: number;\n runA11y?: boolean;\n browser?: string;\n viewports?: string | null;\n automigrate: boolean;\n createdAt: string;\n updatedAt: string;\n}\n\n/** Storybook metadata synced from a project's published Storybook. */\nexport interface StorybookMeta {\n framework?: { name?: string; options?: unknown };\n addons?: string[];\n storiesGlobs?: string[];\n staticDirs?: string[];\n packagePath?: string;\n previewParameters?: Record<string, unknown>;\n}\n"],"mappings":";;;;;;AAGA,MAAa,WAAW,WAAW,YAAY;CAC7C,IAAI,KAAK,IAAI,CAAC,CAAC,WAAW;CAC1B,MAAM,KAAK,MAAM,CAAC,CAAC,QAAQ;CAC3B,MAAM,KAAK,MAAM,CAAC,CAAC,QAAQ;CAC3B,eAAe,KAAK,gBAAgB;CACpC,kBAAkB,KAAK,oBAAoB,CAAC,CAAC,QAAQ,CAAC,CAAC,QAAQ,MAAM;CACrE,gBAAgB,OAAO,iBAAiB,CAAC,CAAC,QAAQ,CAAC,CAAC,QAAQ,EAAG;CAC/D,cAAc,OAAO,gBAAgB,CAAC,CAAC,QAAQ,CAAC,CAAC,QAAQ,GAAI;CAC7D,mBAAmB,KAAK,qBAAqB;CAC7C,eAAe,KAAK,gBAAgB,CAAC,CAAC,MAAiC,CAAC,CAAC,QAAQ,IAAI;CACrF,aAAa,QAAQ,cAAc,CAAC,CAAC,QAAQ,CAAC,CAAC,QAAQ,KAAK;CAC5D,eAAe,IAAI,iBAAiB,CAAC,CAAC,QAAQ,CAAC,CAAC,QAAQ,GAAM;CAC9D,SAAS,QAAQ,UAAU,CAAC,CAAC,QAAQ,CAAC,CAAC,QAAQ,KAAK;CACpD,SAAS,KAAK,SAAS,CAAC,CAAC,QAAQ,CAAC,CAAC,QAAQ,UAAU;CACrD,WAAW,KAAK,WAAW;CAC3B,aAAa,QAAQ,aAAa,CAAC,CAAC,QAAQ,CAAC,CAAC,QAAQ,KAAK;CAC3D,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,CAAC"}
1
+ {"version":3,"file":"project.mjs","names":[],"sources":["../../src/schema/project.ts"],"sourcesContent":["import { boolean, double, int, mysqlTable, text } from \"drizzle-orm/mysql-core\";\nimport { datetime } from \"./datetime.ts\";\n\n/** Narrow `projects` table definition. */\nexport const projects = mysqlTable(\"projects\", {\n id: text(\"id\").primaryKey(),\n name: text(\"name\").notNull(),\n slug: text(\"slug\").notNull(),\n gitRepository: text(\"git_repository\"),\n gitDefaultBranch: text(\"git_default_branch\").notNull().default(\"main\"),\n pixelThreshold: double(\"pixel_threshold\").notNull().default(0.1),\n maxDiffRatio: double(\"max_diff_ratio\").notNull().default(0.01),\n publicBranchRegex: text(\"public_branch_regex\"),\n storybookMeta: text(\"storybook_meta\").$type<string | null | undefined>().default(null),\n executePlay: boolean(\"execute_play\").notNull().default(false),\n playTimeoutMs: int(\"play_timeout_ms\").notNull().default(10_000),\n runA11y: boolean(\"run_a11y\").notNull().default(true),\n runTests: boolean(\"run_tests\").notNull().default(false),\n browser: text(\"browser\").notNull().default(\"chromium\"),\n viewports: text(\"viewports\"),\n browsers: text(\"browsers\"),\n modesAllowlist: text(\"modes_allowlist\"),\n automigrate: boolean(\"automigrate\").notNull().default(false),\n aiProfile: text(\"ai_profile\"),\n reviewEnabled: boolean(\"review_enabled\").notNull().default(true),\n reviewApprovals: int(\"review_approvals\").notNull().default(1),\n storybookUrlTtlSeconds: int(\"storybook_url_ttl_seconds\"),\n createdAt: datetime(\"created_at\", { mode: \"string\", fsp: 3 }).notNull(),\n updatedAt: datetime(\"updated_at\", { mode: \"string\", fsp: 3 }).notNull(),\n});\n\n/** A project row. */\nexport interface Project {\n id: string;\n name: string;\n slug: string;\n gitRepository: string | null;\n gitDefaultBranch: string;\n pixelThreshold: number;\n maxDiffRatio: number;\n publicBranchRegex: string | null;\n storybookMeta: string | null | undefined;\n executePlay: boolean;\n playTimeoutMs: number;\n runA11y?: boolean;\n runTests?: boolean;\n browser?: string;\n viewports?: string | null;\n browsers?: string | null;\n modesAllowlist?: string | null;\n automigrate: boolean;\n aiProfile: string | null;\n reviewEnabled: boolean;\n reviewApprovals: number;\n storybookUrlTtlSeconds: number | null;\n createdAt: string;\n updatedAt: string;\n}\n\n/** Storybook metadata synced from a project's published Storybook. */\nexport interface StorybookMeta {\n framework?: { name?: string; options?: unknown };\n addons?: string[];\n storiesGlobs?: string[];\n staticDirs?: string[];\n packagePath?: string;\n previewParameters?: Record<string, unknown>;\n}\n"],"mappings":";;;;;;;AAIA,MAAa,WAAW,WAAW,YAAY;CAC7C,IAAI,KAAK,IAAI,CAAC,CAAC,WAAW;CAC1B,MAAM,KAAK,MAAM,CAAC,CAAC,QAAQ;CAC3B,MAAM,KAAK,MAAM,CAAC,CAAC,QAAQ;CAC3B,eAAe,KAAK,gBAAgB;CACpC,kBAAkB,KAAK,oBAAoB,CAAC,CAAC,QAAQ,CAAC,CAAC,QAAQ,MAAM;CACrE,gBAAgB,OAAO,iBAAiB,CAAC,CAAC,QAAQ,CAAC,CAAC,QAAQ,EAAG;CAC/D,cAAc,OAAO,gBAAgB,CAAC,CAAC,QAAQ,CAAC,CAAC,QAAQ,GAAI;CAC7D,mBAAmB,KAAK,qBAAqB;CAC7C,eAAe,KAAK,gBAAgB,CAAC,CAAC,MAAiC,CAAC,CAAC,QAAQ,IAAI;CACrF,aAAa,QAAQ,cAAc,CAAC,CAAC,QAAQ,CAAC,CAAC,QAAQ,KAAK;CAC5D,eAAe,IAAI,iBAAiB,CAAC,CAAC,QAAQ,CAAC,CAAC,QAAQ,GAAM;CAC9D,SAAS,QAAQ,UAAU,CAAC,CAAC,QAAQ,CAAC,CAAC,QAAQ,IAAI;CACnD,UAAU,QAAQ,WAAW,CAAC,CAAC,QAAQ,CAAC,CAAC,QAAQ,KAAK;CACtD,SAAS,KAAK,SAAS,CAAC,CAAC,QAAQ,CAAC,CAAC,QAAQ,UAAU;CACrD,WAAW,KAAK,WAAW;CAC3B,UAAU,KAAK,UAAU;CACzB,gBAAgB,KAAK,iBAAiB;CACtC,aAAa,QAAQ,aAAa,CAAC,CAAC,QAAQ,CAAC,CAAC,QAAQ,KAAK;CAC3D,WAAW,KAAK,YAAY;CAC5B,eAAe,QAAQ,gBAAgB,CAAC,CAAC,QAAQ,CAAC,CAAC,QAAQ,IAAI;CAC/D,iBAAiB,IAAI,kBAAkB,CAAC,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC;CAC5D,wBAAwB,IAAI,2BAA2B;CACvD,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,CAAC"}
@@ -0,0 +1,97 @@
1
+ import __tsdown_shims_path from 'node:path';
2
+ import __tsdown_shims_url from 'node:url';
3
+ /** Narrow `site_settings` table definition: key-value facts the app learns at runtime. */
4
+ declare const siteSettings: import("drizzle-orm/mysql-core/table.js").MySqlTableWithColumns<{
5
+ name: "site_settings";
6
+ schema: undefined;
7
+ columns: {
8
+ id: import("drizzle-orm/mysql-core/index.js").MySqlColumn<{
9
+ name: "id";
10
+ tableName: "site_settings";
11
+ dataType: "string";
12
+ columnType: "MySqlText";
13
+ data: string;
14
+ driverParam: string;
15
+ notNull: true;
16
+ hasDefault: false;
17
+ isPrimaryKey: true;
18
+ isAutoincrement: false;
19
+ hasRuntimeDefault: false;
20
+ enumValues: [string, ...string[]];
21
+ baseColumn: never;
22
+ identity: undefined;
23
+ generated: undefined;
24
+ }, {}, {}>;
25
+ value: import("drizzle-orm/mysql-core/index.js").MySqlColumn<{
26
+ name: "value";
27
+ tableName: "site_settings";
28
+ dataType: "string";
29
+ columnType: "MySqlText";
30
+ data: string;
31
+ driverParam: string;
32
+ notNull: true;
33
+ hasDefault: false;
34
+ isPrimaryKey: false;
35
+ isAutoincrement: false;
36
+ hasRuntimeDefault: false;
37
+ enumValues: [string, ...string[]];
38
+ baseColumn: never;
39
+ identity: undefined;
40
+ generated: undefined;
41
+ }, {}, {}>;
42
+ updatedBy: import("drizzle-orm/mysql-core/index.js").MySqlColumn<{
43
+ name: "updated_by";
44
+ tableName: "site_settings";
45
+ dataType: "string";
46
+ columnType: "MySqlText";
47
+ data: string;
48
+ driverParam: string;
49
+ notNull: false;
50
+ hasDefault: false;
51
+ isPrimaryKey: false;
52
+ isAutoincrement: false;
53
+ hasRuntimeDefault: false;
54
+ enumValues: [string, ...string[]];
55
+ baseColumn: never;
56
+ identity: undefined;
57
+ generated: undefined;
58
+ }, {}, {}>;
59
+ createdAt: import("drizzle-orm/mysql-core/index.js").MySqlColumn<{
60
+ name: "created_at";
61
+ tableName: "site_settings";
62
+ dataType: "custom";
63
+ columnType: "MySqlCustomColumn";
64
+ data: string;
65
+ driverParam: string;
66
+ notNull: true;
67
+ hasDefault: false;
68
+ isPrimaryKey: false;
69
+ isAutoincrement: false;
70
+ hasRuntimeDefault: false;
71
+ enumValues: undefined;
72
+ baseColumn: never;
73
+ identity: undefined;
74
+ generated: undefined;
75
+ }, {}, {}>;
76
+ updatedAt: import("drizzle-orm/mysql-core/index.js").MySqlColumn<{
77
+ name: "updated_at";
78
+ tableName: "site_settings";
79
+ dataType: "custom";
80
+ columnType: "MySqlCustomColumn";
81
+ data: string;
82
+ driverParam: string;
83
+ notNull: true;
84
+ hasDefault: false;
85
+ isPrimaryKey: false;
86
+ isAutoincrement: false;
87
+ hasRuntimeDefault: false;
88
+ enumValues: undefined;
89
+ baseColumn: never;
90
+ identity: undefined;
91
+ generated: undefined;
92
+ }, {}, {}>;
93
+ };
94
+ dialect: 'mysql';
95
+ }>;
96
+ export { siteSettings };
97
+ //# sourceMappingURL=site-setting.d.mts.map
@@ -0,0 +1,23 @@
1
+ import "node:path";
2
+ import "node:url";
3
+ import.meta.url;
4
+ import { datetime } from "./datetime.mjs";
5
+ import { mysqlTable, text } from "drizzle-orm/mysql-core";
6
+ // src/schema/site-setting.ts
7
+ /** Narrow `site_settings` table definition: key-value facts the app learns at runtime. */
8
+ const siteSettings = mysqlTable("site_settings", {
9
+ id: text("id").primaryKey(),
10
+ value: text("value").notNull(),
11
+ updatedBy: text("updated_by"),
12
+ createdAt: datetime("created_at", {
13
+ mode: "string",
14
+ fsp: 3
15
+ }).notNull(),
16
+ updatedAt: datetime("updated_at", {
17
+ mode: "string",
18
+ fsp: 3
19
+ }).notNull()
20
+ });
21
+ export { siteSettings };
22
+
23
+ //# sourceMappingURL=site-setting.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"site-setting.mjs","names":[],"sources":["../../src/schema/site-setting.ts"],"sourcesContent":["import { mysqlTable, text } from \"drizzle-orm/mysql-core\";\nimport { datetime } from \"./datetime.ts\";\n\n/** Narrow `site_settings` table definition: key-value facts the app learns at runtime. */\nexport const siteSettings = mysqlTable(\"site_settings\", {\n id: text(\"id\").primaryKey(),\n value: text(\"value\").notNull(),\n updatedBy: text(\"updated_by\"),\n createdAt: datetime(\"created_at\", { mode: \"string\", fsp: 3 }).notNull(),\n updatedAt: datetime(\"updated_at\", { mode: \"string\", fsp: 3 }).notNull(),\n});\n"],"mappings":";;;;;;;AAIA,MAAa,eAAe,WAAW,iBAAiB;CACtD,IAAI,KAAK,IAAI,CAAC,CAAC,WAAW;CAC1B,OAAO,KAAK,OAAO,CAAC,CAAC,QAAQ;CAC7B,WAAW,KAAK,YAAY;CAC5B,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,CAAC"}