@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,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/baseline.d.ts
4
3
  /** Narrow `baselines` table definition. */
5
- declare const baselines: import("drizzle-orm/mysql-core").MySqlTableWithColumns<{
4
+ declare const baselines: import("drizzle-orm/mysql-core/table.js").MySqlTableWithColumns<{
6
5
  name: "baselines";
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: "baselines";
12
11
  dataType: "string";
@@ -23,7 +22,7 @@ declare const baselines: import("drizzle-orm/mysql-core").MySqlTableWithColumns<
23
22
  identity: undefined;
24
23
  generated: undefined;
25
24
  }, {}, {}>;
26
- projectId: import("drizzle-orm/mysql-core").MySqlColumn<{
25
+ projectId: import("drizzle-orm/mysql-core/index.js").MySqlColumn<{
27
26
  name: "project_id";
28
27
  tableName: "baselines";
29
28
  dataType: "string";
@@ -40,7 +39,7 @@ declare const baselines: import("drizzle-orm/mysql-core").MySqlTableWithColumns<
40
39
  identity: undefined;
41
40
  generated: undefined;
42
41
  }, {}, {}>;
43
- storyId: import("drizzle-orm/mysql-core").MySqlColumn<{
42
+ storyId: import("drizzle-orm/mysql-core/index.js").MySqlColumn<{
44
43
  name: "story_id";
45
44
  tableName: "baselines";
46
45
  dataType: "string";
@@ -57,7 +56,7 @@ declare const baselines: import("drizzle-orm/mysql-core").MySqlTableWithColumns<
57
56
  identity: undefined;
58
57
  generated: undefined;
59
58
  }, {}, {}>;
60
- viewportName: import("drizzle-orm/mysql-core").MySqlColumn<{
59
+ viewportName: import("drizzle-orm/mysql-core/index.js").MySqlColumn<{
61
60
  name: "viewport_name";
62
61
  tableName: "baselines";
63
62
  dataType: "string";
@@ -74,7 +73,7 @@ declare const baselines: import("drizzle-orm/mysql-core").MySqlTableWithColumns<
74
73
  identity: undefined;
75
74
  generated: undefined;
76
75
  }, {}, {}>;
77
- branch: import("drizzle-orm/mysql-core").MySqlColumn<{
76
+ branch: import("drizzle-orm/mysql-core/index.js").MySqlColumn<{
78
77
  name: "branch";
79
78
  tableName: "baselines";
80
79
  dataType: "string";
@@ -91,7 +90,7 @@ declare const baselines: import("drizzle-orm/mysql-core").MySqlTableWithColumns<
91
90
  identity: undefined;
92
91
  generated: undefined;
93
92
  }, {}, {}>;
94
- snapshotId: import("drizzle-orm/mysql-core").MySqlColumn<{
93
+ snapshotId: import("drizzle-orm/mysql-core/index.js").MySqlColumn<{
95
94
  name: "snapshot_id";
96
95
  tableName: "baselines";
97
96
  dataType: "string";
@@ -108,7 +107,24 @@ declare const baselines: import("drizzle-orm/mysql-core").MySqlTableWithColumns<
108
107
  identity: undefined;
109
108
  generated: undefined;
110
109
  }, {}, {}>;
111
- screenshotPath: import("drizzle-orm/mysql-core").MySqlColumn<{
110
+ sourceBuildId: import("drizzle-orm/mysql-core/index.js").MySqlColumn<{
111
+ name: "source_build_id";
112
+ tableName: "baselines";
113
+ dataType: "string";
114
+ columnType: "MySqlText";
115
+ data: string;
116
+ driverParam: string;
117
+ notNull: false;
118
+ hasDefault: false;
119
+ isPrimaryKey: false;
120
+ isAutoincrement: false;
121
+ hasRuntimeDefault: false;
122
+ enumValues: [string, ...string[]];
123
+ baseColumn: never;
124
+ identity: undefined;
125
+ generated: undefined;
126
+ }, {}, {}>;
127
+ screenshotPath: import("drizzle-orm/mysql-core/index.js").MySqlColumn<{
112
128
  name: "screenshot_path";
113
129
  tableName: "baselines";
114
130
  dataType: "string";
@@ -125,7 +141,7 @@ declare const baselines: import("drizzle-orm/mysql-core").MySqlTableWithColumns<
125
141
  identity: undefined;
126
142
  generated: undefined;
127
143
  }, {}, {}>;
128
- infraHash: import("drizzle-orm/mysql-core").MySqlColumn<{
144
+ infraHash: import("drizzle-orm/mysql-core/index.js").MySqlColumn<{
129
145
  name: "infra_hash";
130
146
  tableName: "baselines";
131
147
  dataType: "string";
@@ -142,13 +158,64 @@ declare const baselines: import("drizzle-orm/mysql-core").MySqlTableWithColumns<
142
158
  identity: undefined;
143
159
  generated: undefined;
144
160
  }, {}, {}>;
145
- createdAt: import("drizzle-orm/mysql-core").MySqlColumn<{
146
- name: "created_at";
161
+ fingerprint: import("drizzle-orm/mysql-core/index.js").MySqlColumn<{
162
+ name: "fingerprint";
163
+ tableName: "baselines";
164
+ dataType: "string";
165
+ columnType: "MySqlText";
166
+ data: string;
167
+ driverParam: string;
168
+ notNull: false;
169
+ hasDefault: false;
170
+ isPrimaryKey: false;
171
+ isAutoincrement: false;
172
+ hasRuntimeDefault: false;
173
+ enumValues: [string, ...string[]];
174
+ baseColumn: never;
175
+ identity: undefined;
176
+ generated: undefined;
177
+ }, {}, {}>;
178
+ mode: import("drizzle-orm/mysql-core/index.js").MySqlColumn<{
179
+ name: "mode";
180
+ tableName: "baselines";
181
+ dataType: "string";
182
+ columnType: "MySqlText";
183
+ data: string;
184
+ driverParam: string;
185
+ notNull: false;
186
+ hasDefault: false;
187
+ isPrimaryKey: false;
188
+ isAutoincrement: false;
189
+ hasRuntimeDefault: false;
190
+ enumValues: [string, ...string[]];
191
+ baseColumn: never;
192
+ identity: undefined;
193
+ generated: undefined;
194
+ }, {}, {}>;
195
+ browser: import("drizzle-orm/mysql-core/index.js").MySqlColumn<{
196
+ name: "browser";
147
197
  tableName: "baselines";
148
198
  dataType: "string";
149
- columnType: "MySqlDateTimeString";
199
+ columnType: "MySqlText";
200
+ data: string;
201
+ driverParam: string;
202
+ notNull: true;
203
+ hasDefault: true;
204
+ isPrimaryKey: false;
205
+ isAutoincrement: false;
206
+ hasRuntimeDefault: false;
207
+ enumValues: [string, ...string[]];
208
+ baseColumn: never;
209
+ identity: undefined;
210
+ generated: undefined;
211
+ }, {}, {}>;
212
+ createdAt: import("drizzle-orm/mysql-core/index.js").MySqlColumn<{
213
+ name: "created_at";
214
+ tableName: "baselines";
215
+ dataType: "custom";
216
+ columnType: "MySqlCustomColumn";
150
217
  data: string;
151
- driverParam: string | number;
218
+ driverParam: string;
152
219
  notNull: true;
153
220
  hasDefault: false;
154
221
  isPrimaryKey: false;
@@ -159,13 +226,13 @@ declare const baselines: import("drizzle-orm/mysql-core").MySqlTableWithColumns<
159
226
  identity: undefined;
160
227
  generated: undefined;
161
228
  }, {}, {}>;
162
- updatedAt: import("drizzle-orm/mysql-core").MySqlColumn<{
229
+ updatedAt: import("drizzle-orm/mysql-core/index.js").MySqlColumn<{
163
230
  name: "updated_at";
164
231
  tableName: "baselines";
165
- dataType: "string";
166
- columnType: "MySqlDateTimeString";
232
+ dataType: "custom";
233
+ columnType: "MySqlCustomColumn";
167
234
  data: string;
168
- driverParam: string | number;
235
+ driverParam: string;
169
236
  notNull: true;
170
237
  hasDefault: false;
171
238
  isPrimaryKey: false;
@@ -187,11 +254,14 @@ interface Baseline {
187
254
  viewportName: string;
188
255
  branch: string;
189
256
  snapshotId: string | null;
257
+ sourceBuildId: string | null;
190
258
  screenshotPath: string;
191
259
  infraHash: string | null;
260
+ fingerprint: string | null;
261
+ mode?: string | null;
262
+ browser?: string;
192
263
  createdAt: string;
193
264
  updatedAt: string;
194
265
  }
195
- //#endregion
196
266
  export { Baseline, baselines };
197
267
  //# sourceMappingURL=baseline.d.mts.map
@@ -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, index, mysqlTable, text, uniqueIndex } from "drizzle-orm/mysql-core";
6
- //#region src/schema/baseline.ts
6
+ import { index, mysqlTable, text, uniqueIndex } from "drizzle-orm/mysql-core";
7
+ // src/schema/baseline.ts
7
8
  /** Narrow `baselines` table definition. */
8
9
  const baselines = mysqlTable("baselines", {
9
10
  id: text("id").primaryKey(),
@@ -12,8 +13,12 @@ const baselines = mysqlTable("baselines", {
12
13
  viewportName: text("viewport_name").notNull().default("desktop"),
13
14
  branch: text("branch").notNull(),
14
15
  snapshotId: text("snapshot_id"),
16
+ sourceBuildId: text("source_build_id"),
15
17
  screenshotPath: text("screenshot_path").notNull(),
16
18
  infraHash: text("infra_hash"),
19
+ fingerprint: text("fingerprint"),
20
+ mode: text("mode"),
21
+ browser: text("browser").notNull().default("chromium"),
17
22
  createdAt: datetime("created_at", {
18
23
  mode: "string",
19
24
  fsp: 3
@@ -22,8 +27,7 @@ const baselines = mysqlTable("baselines", {
22
27
  mode: "string",
23
28
  fsp: 3
24
29
  }).notNull()
25
- }, (t) => [uniqueIndex("baselines_project_story_viewport_branch_idx").on(t.projectId, t.storyId, t.viewportName, t.branch), index("baselines_project_story_idx").on(t.projectId, t.storyId)]);
26
- //#endregion
30
+ }, (t) => [uniqueIndex("baselines_project_story_mode_browser_branch_idx").on(t.projectId, t.storyId, t.viewportName, t.browser, t.branch), index("baselines_project_story_idx").on(t.projectId, t.storyId)]);
27
31
  export { baselines };
28
32
 
29
33
  //# sourceMappingURL=baseline.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"baseline.mjs","names":[],"sources":["../../src/schema/baseline.ts"],"sourcesContent":["import { index, mysqlTable, text, datetime, uniqueIndex } from \"drizzle-orm/mysql-core\";\nimport { projects } from \"./project.ts\";\n\n/** Narrow `baselines` table definition. */\nexport const baselines = mysqlTable(\n \"baselines\",\n {\n id: text(\"id\").primaryKey(),\n projectId: text(\"project_id\")\n .notNull()\n .references(() => projects.id, { onDelete: \"cascade\" }),\n storyId: text(\"story_id\").notNull(),\n viewportName: text(\"viewport_name\").notNull().default(\"desktop\"),\n branch: text(\"branch\").notNull(),\n snapshotId: text(\"snapshot_id\"),\n screenshotPath: text(\"screenshot_path\").notNull(),\n infraHash: text(\"infra_hash\"),\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(\"baselines_project_story_viewport_branch_idx\").on(\n t.projectId,\n t.storyId,\n t.viewportName,\n t.branch,\n ),\n index(\"baselines_project_story_idx\").on(t.projectId, t.storyId),\n ],\n);\n\n/** A baseline row. */\nexport interface Baseline {\n id: string;\n projectId: string;\n storyId: string;\n viewportName: string;\n branch: string;\n snapshotId: string | null;\n screenshotPath: string;\n infraHash: string | null;\n createdAt: string;\n updatedAt: string;\n}\n"],"mappings":";;;;;;;AAIA,MAAa,YAAY,WACvB,aACA;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,CAAC,QAAQ;CAClC,cAAc,KAAK,eAAe,CAAC,CAAC,QAAQ,CAAC,CAAC,QAAQ,SAAS;CAC/D,QAAQ,KAAK,QAAQ,CAAC,CAAC,QAAQ;CAC/B,YAAY,KAAK,aAAa;CAC9B,gBAAgB,KAAK,iBAAiB,CAAC,CAAC,QAAQ;CAChD,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,IACC,MAAM,CACL,YAAY,6CAA6C,CAAC,CAAC,GACzD,EAAE,WACF,EAAE,SACF,EAAE,cACF,EAAE,MACJ,GACA,MAAM,6BAA6B,CAAC,CAAC,GAAG,EAAE,WAAW,EAAE,OAAO,CAChE,CACF"}
1
+ {"version":3,"file":"baseline.mjs","names":[],"sources":["../../src/schema/baseline.ts"],"sourcesContent":["import { index, mysqlTable, text, uniqueIndex } from \"drizzle-orm/mysql-core\";\nimport { datetime } from \"./datetime.ts\";\nimport { projects } from \"./project.ts\";\n\n/** Narrow `baselines` table definition. */\nexport const baselines = mysqlTable(\n \"baselines\",\n {\n id: text(\"id\").primaryKey(),\n projectId: text(\"project_id\")\n .notNull()\n .references(() => projects.id, { onDelete: \"cascade\" }),\n storyId: text(\"story_id\").notNull(),\n viewportName: text(\"viewport_name\").notNull().default(\"desktop\"),\n branch: text(\"branch\").notNull(),\n snapshotId: text(\"snapshot_id\"),\n sourceBuildId: text(\"source_build_id\"),\n screenshotPath: text(\"screenshot_path\").notNull(),\n infraHash: text(\"infra_hash\"),\n fingerprint: text(\"fingerprint\"),\n mode: text(\"mode\"),\n browser: text(\"browser\").notNull().default(\"chromium\"),\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(\"baselines_project_story_mode_browser_branch_idx\").on(\n t.projectId,\n t.storyId,\n t.viewportName,\n t.browser,\n t.branch,\n ),\n index(\"baselines_project_story_idx\").on(t.projectId, t.storyId),\n ],\n);\n\n/** A baseline row. */\nexport interface Baseline {\n id: string;\n projectId: string;\n storyId: string;\n viewportName: string;\n branch: string;\n snapshotId: string | null;\n sourceBuildId: string | null;\n screenshotPath: string;\n infraHash: string | null;\n fingerprint: string | null;\n mode?: string | null;\n browser?: string;\n createdAt: string;\n updatedAt: string;\n}\n"],"mappings":";;;;;;;;AAKA,MAAa,YAAY,WACvB,aACA;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,CAAC,QAAQ;CAClC,cAAc,KAAK,eAAe,CAAC,CAAC,QAAQ,CAAC,CAAC,QAAQ,SAAS;CAC/D,QAAQ,KAAK,QAAQ,CAAC,CAAC,QAAQ;CAC/B,YAAY,KAAK,aAAa;CAC9B,eAAe,KAAK,iBAAiB;CACrC,gBAAgB,KAAK,iBAAiB,CAAC,CAAC,QAAQ;CAChD,WAAW,KAAK,YAAY;CAC5B,aAAa,KAAK,aAAa;CAC/B,MAAM,KAAK,MAAM;CACjB,SAAS,KAAK,SAAS,CAAC,CAAC,QAAQ,CAAC,CAAC,QAAQ,UAAU;CACrD,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,iDAAiD,CAAC,CAAC,GAC7D,EAAE,WACF,EAAE,SACF,EAAE,cACF,EAAE,SACF,EAAE,MACJ,GACA,MAAM,6BAA6B,CAAC,CAAC,GAAG,EAAE,WAAW,EAAE,OAAO,CAChE,CACF"}
@@ -1,14 +1,13 @@
1
1
  import __tsdown_shims_path from 'node:path';
2
2
  import __tsdown_shims_url from 'node:url';
3
- //#region src/schema/status-config.d.ts
4
- /** Narrow `project_status_configs` table definition. */
5
- declare const projectStatusConfigs: import("drizzle-orm/mysql-core").MySqlTableWithColumns<{
6
- name: "project_status_configs";
3
+ /** Narrow `build_components` table definition: one row per component of a published build. */
4
+ declare const buildComponents: import("drizzle-orm/mysql-core/table.js").MySqlTableWithColumns<{
5
+ name: "build_components";
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
- tableName: "project_status_configs";
10
+ tableName: "build_components";
12
11
  dataType: "string";
13
12
  columnType: "MySqlText";
14
13
  data: string;
@@ -23,9 +22,9 @@ declare const projectStatusConfigs: import("drizzle-orm/mysql-core").MySqlTableW
23
22
  identity: undefined;
24
23
  generated: undefined;
25
24
  }, {}, {}>;
26
- projectId: import("drizzle-orm/mysql-core").MySqlColumn<{
25
+ projectId: import("drizzle-orm/mysql-core/index.js").MySqlColumn<{
27
26
  name: "project_id";
28
- tableName: "project_status_configs";
27
+ tableName: "build_components";
29
28
  dataType: "string";
30
29
  columnType: "MySqlText";
31
30
  data: string;
@@ -40,9 +39,9 @@ declare const projectStatusConfigs: import("drizzle-orm/mysql-core").MySqlTableW
40
39
  identity: undefined;
41
40
  generated: undefined;
42
41
  }, {}, {}>;
43
- provider: import("drizzle-orm/mysql-core").MySqlColumn<{
44
- name: "provider";
45
- tableName: "project_status_configs";
42
+ buildId: import("drizzle-orm/mysql-core/index.js").MySqlColumn<{
43
+ name: "build_id";
44
+ tableName: "build_components";
46
45
  dataType: "string";
47
46
  columnType: "MySqlText";
48
47
  data: string;
@@ -57,9 +56,9 @@ declare const projectStatusConfigs: import("drizzle-orm/mysql-core").MySqlTableW
57
56
  identity: undefined;
58
57
  generated: undefined;
59
58
  }, {}, {}>;
60
- config: import("drizzle-orm/mysql-core").MySqlColumn<{
61
- name: "config";
62
- tableName: "project_status_configs";
59
+ importPath: import("drizzle-orm/mysql-core/index.js").MySqlColumn<{
60
+ name: "import_path";
61
+ tableName: "build_components";
63
62
  dataType: "string";
64
63
  columnType: "MySqlText";
65
64
  data: string;
@@ -74,9 +73,9 @@ declare const projectStatusConfigs: import("drizzle-orm/mysql-core").MySqlTableW
74
73
  identity: undefined;
75
74
  generated: undefined;
76
75
  }, {}, {}>;
77
- tokenEncrypted: import("drizzle-orm/mysql-core").MySqlColumn<{
78
- name: "token_encrypted";
79
- tableName: "project_status_configs";
76
+ title: import("drizzle-orm/mysql-core/index.js").MySqlColumn<{
77
+ name: "title";
78
+ tableName: "build_components";
80
79
  dataType: "string";
81
80
  columnType: "MySqlText";
82
81
  data: string;
@@ -91,15 +90,15 @@ declare const projectStatusConfigs: import("drizzle-orm/mysql-core").MySqlTableW
91
90
  identity: undefined;
92
91
  generated: undefined;
93
92
  }, {}, {}>;
94
- createdAt: import("drizzle-orm/mysql-core").MySqlColumn<{
95
- name: "created_at";
96
- tableName: "project_status_configs";
97
- dataType: "string";
98
- columnType: "MySqlDateTimeString";
99
- data: string;
93
+ storyCount: import("drizzle-orm/mysql-core/index.js").MySqlColumn<{
94
+ name: "story_count";
95
+ tableName: "build_components";
96
+ dataType: "number";
97
+ columnType: "MySqlInt";
98
+ data: number;
100
99
  driverParam: string | number;
101
100
  notNull: true;
102
- hasDefault: false;
101
+ hasDefault: true;
103
102
  isPrimaryKey: false;
104
103
  isAutoincrement: false;
105
104
  hasRuntimeDefault: false;
@@ -108,13 +107,30 @@ declare const projectStatusConfigs: import("drizzle-orm/mysql-core").MySqlTableW
108
107
  identity: undefined;
109
108
  generated: undefined;
110
109
  }, {}, {}>;
111
- updatedAt: import("drizzle-orm/mysql-core").MySqlColumn<{
112
- name: "updated_at";
113
- tableName: "project_status_configs";
110
+ hash: import("drizzle-orm/mysql-core/index.js").MySqlColumn<{
111
+ name: "hash";
112
+ tableName: "build_components";
114
113
  dataType: "string";
115
- columnType: "MySqlDateTimeString";
114
+ columnType: "MySqlText";
116
115
  data: string;
117
- driverParam: string | number;
116
+ driverParam: string;
117
+ notNull: true;
118
+ hasDefault: false;
119
+ isPrimaryKey: false;
120
+ isAutoincrement: false;
121
+ hasRuntimeDefault: false;
122
+ enumValues: [string, ...string[]];
123
+ baseColumn: never;
124
+ identity: undefined;
125
+ generated: undefined;
126
+ }, {}, {}>;
127
+ createdAt: import("drizzle-orm/mysql-core/index.js").MySqlColumn<{
128
+ name: "created_at";
129
+ tableName: "build_components";
130
+ dataType: "custom";
131
+ columnType: "MySqlCustomColumn";
132
+ data: string;
133
+ driverParam: string;
118
134
  notNull: true;
119
135
  hasDefault: false;
120
136
  isPrimaryKey: false;
@@ -128,16 +144,5 @@ declare const projectStatusConfigs: import("drizzle-orm/mysql-core").MySqlTableW
128
144
  };
129
145
  dialect: 'mysql';
130
146
  }>;
131
- /** A project status-config row. */
132
- interface ProjectStatusConfig {
133
- id: string;
134
- projectId: string;
135
- provider: string;
136
- config: string;
137
- tokenEncrypted: string;
138
- createdAt: string;
139
- updatedAt: string;
140
- }
141
- //#endregion
142
- export { ProjectStatusConfig, projectStatusConfigs };
143
- //# sourceMappingURL=status-config.d.mts.map
147
+ export { buildComponents };
148
+ //# sourceMappingURL=build-component.d.mts.map
@@ -0,0 +1,25 @@
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 } from "drizzle-orm/mysql-core";
8
+ // src/schema/build-component.ts
9
+ /** Narrow `build_components` table definition: one row per component of a published build. */
10
+ const buildComponents = mysqlTable("build_components", {
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
+ importPath: text("import_path").notNull(),
15
+ title: text("title").notNull(),
16
+ storyCount: int("story_count").notNull().default(0),
17
+ hash: text("hash").notNull(),
18
+ createdAt: datetime("created_at", {
19
+ mode: "string",
20
+ fsp: 3
21
+ }).notNull()
22
+ }, (table) => [index("build_components_build_id_idx").on(table.buildId), index("build_components_project_import_path_idx").on(table.projectId, table.importPath)]);
23
+ export { buildComponents };
24
+
25
+ //# sourceMappingURL=build-component.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"build-component.mjs","names":[],"sources":["../../src/schema/build-component.ts"],"sourcesContent":["import { index, int, mysqlTable, text } from \"drizzle-orm/mysql-core\";\nimport { builds } from \"./build.ts\";\nimport { datetime } from \"./datetime.ts\";\nimport { projects } from \"./project.ts\";\n\n/** Narrow `build_components` table definition: one row per component of a published build. */\nexport const buildComponents = mysqlTable(\n \"build_components\",\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 importPath: text(\"import_path\").notNull(),\n title: text(\"title\").notNull(),\n storyCount: int(\"story_count\").notNull().default(0),\n hash: text(\"hash\").notNull(),\n createdAt: datetime(\"created_at\", { mode: \"string\", fsp: 3 }).notNull(),\n },\n (table) => [\n index(\"build_components_build_id_idx\").on(table.buildId),\n index(\"build_components_project_import_path_idx\").on(table.projectId, table.importPath),\n ],\n);\n"],"mappings":";;;;;;;;;AAMA,MAAa,kBAAkB,WAC7B,oBACA;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,YAAY,KAAK,aAAa,CAAC,CAAC,QAAQ;CACxC,OAAO,KAAK,OAAO,CAAC,CAAC,QAAQ;CAC7B,YAAY,IAAI,aAAa,CAAC,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC;CAClD,MAAM,KAAK,MAAM,CAAC,CAAC,QAAQ;CAC3B,WAAW,SAAS,cAAc;EAAE,MAAM;EAAU,KAAK;CAAE,CAAC,CAAC,CAAC,QAAQ;AACxE,IACC,UAAU,CACT,MAAM,+BAA+B,CAAC,CAAC,GAAG,MAAM,OAAO,GACvD,MAAM,0CAA0C,CAAC,CAAC,GAAG,MAAM,WAAW,MAAM,UAAU,CACxF,CACF"}
@@ -0,0 +1,116 @@
1
+ import __tsdown_shims_path from 'node:path';
2
+ import __tsdown_shims_url from 'node:url';
3
+ /** Narrow `build_reviews` table definition: one verdict of one reviewer on one build. */
4
+ declare const buildReviews: import("drizzle-orm/mysql-core/table.js").MySqlTableWithColumns<{
5
+ name: "build_reviews";
6
+ schema: undefined;
7
+ columns: {
8
+ id: import("drizzle-orm/mysql-core/index.js").MySqlColumn<{
9
+ name: "id";
10
+ tableName: "build_reviews";
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
+ buildId: import("drizzle-orm/mysql-core/index.js").MySqlColumn<{
26
+ name: "build_id";
27
+ tableName: "build_reviews";
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
+ userId: import("drizzle-orm/mysql-core/index.js").MySqlColumn<{
43
+ name: "user_id";
44
+ tableName: "build_reviews";
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
+ verdict: import("drizzle-orm/mysql-core/index.js").MySqlColumn<{
60
+ name: "verdict";
61
+ tableName: "build_reviews";
62
+ dataType: "string";
63
+ columnType: "MySqlText";
64
+ data: "approved" | "rejected";
65
+ driverParam: string;
66
+ notNull: true;
67
+ hasDefault: false;
68
+ isPrimaryKey: false;
69
+ isAutoincrement: false;
70
+ hasRuntimeDefault: false;
71
+ enumValues: [string, ...string[]];
72
+ baseColumn: never;
73
+ identity: undefined;
74
+ generated: undefined;
75
+ }, {}, {
76
+ $type: "approved" | "rejected";
77
+ }>;
78
+ body: import("drizzle-orm/mysql-core/index.js").MySqlColumn<{
79
+ name: "body";
80
+ tableName: "build_reviews";
81
+ dataType: "string";
82
+ columnType: "MySqlText";
83
+ data: string;
84
+ driverParam: string;
85
+ notNull: false;
86
+ hasDefault: false;
87
+ isPrimaryKey: false;
88
+ isAutoincrement: false;
89
+ hasRuntimeDefault: false;
90
+ enumValues: [string, ...string[]];
91
+ baseColumn: never;
92
+ identity: undefined;
93
+ generated: undefined;
94
+ }, {}, {}>;
95
+ createdAt: import("drizzle-orm/mysql-core/index.js").MySqlColumn<{
96
+ name: "created_at";
97
+ tableName: "build_reviews";
98
+ dataType: "custom";
99
+ columnType: "MySqlCustomColumn";
100
+ data: string;
101
+ driverParam: string;
102
+ notNull: true;
103
+ hasDefault: false;
104
+ isPrimaryKey: false;
105
+ isAutoincrement: false;
106
+ hasRuntimeDefault: false;
107
+ enumValues: undefined;
108
+ baseColumn: never;
109
+ identity: undefined;
110
+ generated: undefined;
111
+ }, {}, {}>;
112
+ };
113
+ dialect: 'mysql';
114
+ }>;
115
+ export { buildReviews };
116
+ //# sourceMappingURL=build-review.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 { builds } from "./build.mjs";
6
+ import { users } from "./user.mjs";
7
+ import { index, mysqlTable, text } from "drizzle-orm/mysql-core";
8
+ // src/schema/build-review.ts
9
+ /** Narrow `build_reviews` table definition: one verdict of one reviewer on one build. */
10
+ const buildReviews = mysqlTable("build_reviews", {
11
+ id: text("id").primaryKey(),
12
+ buildId: text("build_id").notNull().references(() => builds.id, { onDelete: "cascade" }),
13
+ userId: text("user_id").references(() => users.id, { onDelete: "cascade" }),
14
+ verdict: text("verdict").$type().notNull(),
15
+ body: text("body"),
16
+ createdAt: datetime("created_at", {
17
+ mode: "string",
18
+ fsp: 3
19
+ }).notNull()
20
+ }, (table) => [index("build_reviews_build_id_idx").on(table.buildId)]);
21
+ export { buildReviews };
22
+
23
+ //# sourceMappingURL=build-review.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"build-review.mjs","names":[],"sources":["../../src/schema/build-review.ts"],"sourcesContent":["import { index, mysqlTable, text } from \"drizzle-orm/mysql-core\";\nimport { builds } from \"./build.ts\";\nimport { datetime } from \"./datetime.ts\";\nimport { users } from \"./user.ts\";\n\n/** Narrow `build_reviews` table definition: one verdict of one reviewer on one build. */\nexport const buildReviews = mysqlTable(\n \"build_reviews\",\n {\n id: text(\"id\").primaryKey(),\n buildId: text(\"build_id\")\n .notNull()\n .references(() => builds.id, { onDelete: \"cascade\" }),\n userId: text(\"user_id\").references(() => users.id, { onDelete: \"cascade\" }),\n verdict: text(\"verdict\").$type<\"approved\" | \"rejected\">().notNull(),\n body: text(\"body\"),\n createdAt: datetime(\"created_at\", { mode: \"string\", fsp: 3 }).notNull(),\n },\n (table) => [index(\"build_reviews_build_id_idx\").on(table.buildId)],\n);\n"],"mappings":";;;;;;;;;AAMA,MAAa,eAAe,WAC1B,iBACA;CACE,IAAI,KAAK,IAAI,CAAC,CAAC,WAAW;CAC1B,SAAS,KAAK,UAAU,CAAC,CACtB,QAAQ,CAAC,CACT,iBAAiB,OAAO,IAAI,EAAE,UAAU,UAAU,CAAC;CACtD,QAAQ,KAAK,SAAS,CAAC,CAAC,iBAAiB,MAAM,IAAI,EAAE,UAAU,UAAU,CAAC;CAC1E,SAAS,KAAK,SAAS,CAAC,CAAC,MAA+B,CAAC,CAAC,QAAQ;CAClE,MAAM,KAAK,MAAM;CACjB,WAAW,SAAS,cAAc;EAAE,MAAM;EAAU,KAAK;CAAE,CAAC,CAAC,CAAC,QAAQ;AACxE,IACC,UAAU,CAAC,MAAM,4BAA4B,CAAC,CAAC,GAAG,MAAM,OAAO,CAAC,CACnE"}