@storyshelf/db-postgres 0.0.0-stage → 0.5.3

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 (81) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +18 -2
  3. package/dist/ddl.d.mts +8 -0
  4. package/dist/ddl.mjs +321 -0
  5. package/dist/ddl.mjs.map +1 -0
  6. package/dist/drizzle-factory-pg.mjs +77 -0
  7. package/dist/drizzle-factory-pg.mjs.map +1 -0
  8. package/dist/drizzle-factory.mjs +42 -0
  9. package/dist/drizzle-factory.mjs.map +1 -0
  10. package/dist/index.d.mts +50 -0
  11. package/dist/index.mjs +51 -0
  12. package/dist/index.mjs.map +1 -0
  13. package/dist/migrate.mjs +91 -0
  14. package/dist/migrate.mjs.map +1 -0
  15. package/dist/neon-http.d.mts +27 -0
  16. package/dist/neon-http.mjs +66 -0
  17. package/dist/neon-http.mjs.map +1 -0
  18. package/dist/neon.d.mts +29 -0
  19. package/dist/neon.mjs +59 -0
  20. package/dist/neon.mjs.map +1 -0
  21. package/dist/pg.d.mts +33 -0
  22. package/dist/pg.mjs +56 -0
  23. package/dist/pg.mjs.map +1 -0
  24. package/dist/pglite.d.mts +28 -0
  25. package/dist/pglite.mjs +54 -0
  26. package/dist/pglite.mjs.map +1 -0
  27. package/dist/schema/baseline.d.mts +197 -0
  28. package/dist/schema/baseline.mjs +29 -0
  29. package/dist/schema/baseline.mjs.map +1 -0
  30. package/dist/schema/build.d.mts +380 -0
  31. package/dist/schema/build.mjs +39 -0
  32. package/dist/schema/build.mjs.map +1 -0
  33. package/dist/schema/capture-attempt.d.mts +445 -0
  34. package/dist/schema/capture-attempt.mjs +58 -0
  35. package/dist/schema/capture-attempt.mjs.map +1 -0
  36. package/dist/schema/comment.d.mts +197 -0
  37. package/dist/schema/comment.mjs +32 -0
  38. package/dist/schema/comment.mjs.map +1 -0
  39. package/dist/schema/content-refs.d.mts +89 -0
  40. package/dist/schema/content-refs.mjs +22 -0
  41. package/dist/schema/content-refs.mjs.map +1 -0
  42. package/dist/schema/label.d.mts +262 -0
  43. package/dist/schema/label.mjs +36 -0
  44. package/dist/schema/label.mjs.map +1 -0
  45. package/dist/schema/member.d.mts +129 -0
  46. package/dist/schema/member.mjs +23 -0
  47. package/dist/schema/member.mjs.map +1 -0
  48. package/dist/schema/notification.d.mts +316 -0
  49. package/dist/schema/notification.mjs +42 -0
  50. package/dist/schema/notification.mjs.map +1 -0
  51. package/dist/schema/project-group-mapping.d.mts +110 -0
  52. package/dist/schema/project-group-mapping.mjs +21 -0
  53. package/dist/schema/project-group-mapping.mjs.map +1 -0
  54. package/dist/schema/project.d.mts +337 -0
  55. package/dist/schema/project.mjs +35 -0
  56. package/dist/schema/project.mjs.map +1 -0
  57. package/dist/schema/snapshot.d.mts +452 -0
  58. package/dist/schema/snapshot.mjs +47 -0
  59. package/dist/schema/snapshot.mjs.map +1 -0
  60. package/dist/schema/status-config.d.mts +143 -0
  61. package/dist/schema/status-config.mjs +26 -0
  62. package/dist/schema/status-config.mjs.map +1 -0
  63. package/dist/schema/token.d.mts +143 -0
  64. package/dist/schema/token.mjs +27 -0
  65. package/dist/schema/token.mjs.map +1 -0
  66. package/dist/schema/user-invite.d.mts +125 -0
  67. package/dist/schema/user-invite.mjs +28 -0
  68. package/dist/schema/user-invite.mjs.map +1 -0
  69. package/dist/schema/user.d.mts +146 -0
  70. package/dist/schema/user.mjs +25 -0
  71. package/dist/schema/user.mjs.map +1 -0
  72. package/dist/schema/webhook.d.mts +143 -0
  73. package/dist/schema/webhook.mjs +26 -0
  74. package/dist/schema/webhook.mjs.map +1 -0
  75. package/dist/schema.d.mts +47 -0
  76. package/dist/schema.mjs +46 -0
  77. package/dist/schema.mjs.map +1 -0
  78. package/dist/vercel.d.mts +26 -0
  79. package/dist/vercel.mjs +48 -0
  80. package/dist/vercel.mjs.map +1 -0
  81. package/package.json +134 -4
@@ -0,0 +1,197 @@
1
+ import __tsdown_shims_path from 'node:path';
2
+ import __tsdown_shims_url from 'node:url';
3
+ //#region src/schema/baseline.d.ts
4
+ /** Narrow `baselines` table definition. */
5
+ declare const baselines: import("drizzle-orm/pg-core").PgTableWithColumns<{
6
+ name: "baselines";
7
+ schema: undefined;
8
+ columns: {
9
+ id: import("drizzle-orm/pg-core").PgColumn<{
10
+ name: "id";
11
+ tableName: "baselines";
12
+ dataType: "string";
13
+ columnType: "PgText";
14
+ data: string;
15
+ driverParam: string;
16
+ notNull: true;
17
+ hasDefault: false;
18
+ isPrimaryKey: true;
19
+ isAutoincrement: false;
20
+ hasRuntimeDefault: false;
21
+ enumValues: [string, ...string[]];
22
+ baseColumn: never;
23
+ identity: undefined;
24
+ generated: undefined;
25
+ }, {}, {}>;
26
+ projectId: import("drizzle-orm/pg-core").PgColumn<{
27
+ name: "project_id";
28
+ tableName: "baselines";
29
+ dataType: "string";
30
+ columnType: "PgText";
31
+ data: string;
32
+ driverParam: string;
33
+ notNull: true;
34
+ hasDefault: false;
35
+ isPrimaryKey: false;
36
+ isAutoincrement: false;
37
+ hasRuntimeDefault: false;
38
+ enumValues: [string, ...string[]];
39
+ baseColumn: never;
40
+ identity: undefined;
41
+ generated: undefined;
42
+ }, {}, {}>;
43
+ storyId: import("drizzle-orm/pg-core").PgColumn<{
44
+ name: "story_id";
45
+ tableName: "baselines";
46
+ dataType: "string";
47
+ columnType: "PgText";
48
+ data: string;
49
+ driverParam: string;
50
+ notNull: true;
51
+ hasDefault: false;
52
+ isPrimaryKey: false;
53
+ isAutoincrement: false;
54
+ hasRuntimeDefault: false;
55
+ enumValues: [string, ...string[]];
56
+ baseColumn: never;
57
+ identity: undefined;
58
+ generated: undefined;
59
+ }, {}, {}>;
60
+ viewportName: import("drizzle-orm/pg-core").PgColumn<{
61
+ name: "viewport_name";
62
+ tableName: "baselines";
63
+ dataType: "string";
64
+ columnType: "PgText";
65
+ data: string;
66
+ driverParam: string;
67
+ notNull: true;
68
+ hasDefault: true;
69
+ isPrimaryKey: false;
70
+ isAutoincrement: false;
71
+ hasRuntimeDefault: false;
72
+ enumValues: [string, ...string[]];
73
+ baseColumn: never;
74
+ identity: undefined;
75
+ generated: undefined;
76
+ }, {}, {}>;
77
+ branch: import("drizzle-orm/pg-core").PgColumn<{
78
+ name: "branch";
79
+ tableName: "baselines";
80
+ dataType: "string";
81
+ columnType: "PgText";
82
+ data: string;
83
+ driverParam: string;
84
+ notNull: true;
85
+ hasDefault: false;
86
+ isPrimaryKey: false;
87
+ isAutoincrement: false;
88
+ hasRuntimeDefault: false;
89
+ enumValues: [string, ...string[]];
90
+ baseColumn: never;
91
+ identity: undefined;
92
+ generated: undefined;
93
+ }, {}, {}>;
94
+ snapshotId: import("drizzle-orm/pg-core").PgColumn<{
95
+ name: "snapshot_id";
96
+ tableName: "baselines";
97
+ dataType: "string";
98
+ columnType: "PgText";
99
+ data: string;
100
+ driverParam: string;
101
+ notNull: false;
102
+ hasDefault: false;
103
+ isPrimaryKey: false;
104
+ isAutoincrement: false;
105
+ hasRuntimeDefault: false;
106
+ enumValues: [string, ...string[]];
107
+ baseColumn: never;
108
+ identity: undefined;
109
+ generated: undefined;
110
+ }, {}, {}>;
111
+ screenshotPath: import("drizzle-orm/pg-core").PgColumn<{
112
+ name: "screenshot_path";
113
+ tableName: "baselines";
114
+ dataType: "string";
115
+ columnType: "PgText";
116
+ data: string;
117
+ driverParam: string;
118
+ notNull: true;
119
+ hasDefault: false;
120
+ isPrimaryKey: false;
121
+ isAutoincrement: false;
122
+ hasRuntimeDefault: false;
123
+ enumValues: [string, ...string[]];
124
+ baseColumn: never;
125
+ identity: undefined;
126
+ generated: undefined;
127
+ }, {}, {}>;
128
+ infraHash: import("drizzle-orm/pg-core").PgColumn<{
129
+ name: "infra_hash";
130
+ tableName: "baselines";
131
+ dataType: "string";
132
+ columnType: "PgText";
133
+ data: string;
134
+ driverParam: string;
135
+ notNull: false;
136
+ hasDefault: false;
137
+ isPrimaryKey: false;
138
+ isAutoincrement: false;
139
+ hasRuntimeDefault: false;
140
+ enumValues: [string, ...string[]];
141
+ baseColumn: never;
142
+ identity: undefined;
143
+ generated: undefined;
144
+ }, {}, {}>;
145
+ createdAt: import("drizzle-orm/pg-core").PgColumn<{
146
+ name: "created_at";
147
+ tableName: "baselines";
148
+ dataType: "string";
149
+ columnType: "PgTimestampString";
150
+ data: string;
151
+ driverParam: string;
152
+ notNull: true;
153
+ hasDefault: false;
154
+ isPrimaryKey: false;
155
+ isAutoincrement: false;
156
+ hasRuntimeDefault: false;
157
+ enumValues: undefined;
158
+ baseColumn: never;
159
+ identity: undefined;
160
+ generated: undefined;
161
+ }, {}, {}>;
162
+ updatedAt: import("drizzle-orm/pg-core").PgColumn<{
163
+ name: "updated_at";
164
+ tableName: "baselines";
165
+ dataType: "string";
166
+ columnType: "PgTimestampString";
167
+ data: string;
168
+ driverParam: string;
169
+ notNull: true;
170
+ hasDefault: false;
171
+ isPrimaryKey: false;
172
+ isAutoincrement: false;
173
+ hasRuntimeDefault: false;
174
+ enumValues: undefined;
175
+ baseColumn: never;
176
+ identity: undefined;
177
+ generated: undefined;
178
+ }, {}, {}>;
179
+ };
180
+ dialect: 'pg';
181
+ }>;
182
+ /** A baseline row. */
183
+ interface Baseline {
184
+ id: string;
185
+ projectId: string;
186
+ storyId: string;
187
+ viewportName: string;
188
+ branch: string;
189
+ snapshotId: string | null;
190
+ screenshotPath: string;
191
+ infraHash: string | null;
192
+ createdAt: string;
193
+ updatedAt: string;
194
+ }
195
+ //#endregion
196
+ export { Baseline, baselines };
197
+ //# sourceMappingURL=baseline.d.mts.map
@@ -0,0 +1,29 @@
1
+ import "node:path";
2
+ import "node:url";
3
+ import.meta.url;
4
+ import { projects } from "./project.mjs";
5
+ import { index, pgTable, text, timestamp, uniqueIndex } from "drizzle-orm/pg-core";
6
+ //#region src/schema/baseline.ts
7
+ /** Narrow `baselines` table definition. */
8
+ const baselines = pgTable("baselines", {
9
+ id: text("id").primaryKey(),
10
+ projectId: text("project_id").notNull().references(() => projects.id, { onDelete: "cascade" }),
11
+ storyId: text("story_id").notNull(),
12
+ viewportName: text("viewport_name").notNull().default("desktop"),
13
+ branch: text("branch").notNull(),
14
+ snapshotId: text("snapshot_id"),
15
+ screenshotPath: text("screenshot_path").notNull(),
16
+ infraHash: text("infra_hash"),
17
+ createdAt: timestamp("created_at", {
18
+ withTimezone: true,
19
+ mode: "string"
20
+ }).notNull(),
21
+ updatedAt: timestamp("updated_at", {
22
+ withTimezone: true,
23
+ mode: "string"
24
+ }).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
27
+ export { baselines };
28
+
29
+ //# sourceMappingURL=baseline.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"baseline.mjs","names":[],"sources":["../../src/schema/baseline.ts"],"sourcesContent":["import { index, pgTable, text, timestamp, uniqueIndex } from \"drizzle-orm/pg-core\";\nimport { projects } from \"./project.ts\";\n\n/** Narrow `baselines` table definition. */\nexport const baselines = pgTable(\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: timestamp(\"created_at\", { withTimezone: true, mode: \"string\" }).notNull(),\n updatedAt: timestamp(\"updated_at\", { withTimezone: true, mode: \"string\" }).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,QACvB,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,UAAU,cAAc;EAAE,cAAc;EAAM,MAAM;CAAS,CAAC,CAAC,CAAC,QAAQ;CACnF,WAAW,UAAU,cAAc;EAAE,cAAc;EAAM,MAAM;CAAS,CAAC,CAAC,CAAC,QAAQ;AACrF,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"}
@@ -0,0 +1,380 @@
1
+ import __tsdown_shims_path from 'node:path';
2
+ import __tsdown_shims_url from 'node:url';
3
+ import { BuildStatus } from "@storyshelf/core/types";
4
+ //#region src/schema/build.d.ts
5
+ /** Narrow `builds` table definition. */
6
+ declare const builds: import("drizzle-orm/pg-core").PgTableWithColumns<{
7
+ name: "builds";
8
+ schema: undefined;
9
+ columns: {
10
+ id: import("drizzle-orm/pg-core").PgColumn<{
11
+ name: "id";
12
+ tableName: "builds";
13
+ dataType: "string";
14
+ columnType: "PgText";
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/pg-core").PgColumn<{
28
+ name: "project_id";
29
+ tableName: "builds";
30
+ dataType: "string";
31
+ columnType: "PgText";
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
+ gitSha: import("drizzle-orm/pg-core").PgColumn<{
45
+ name: "git_sha";
46
+ tableName: "builds";
47
+ dataType: "string";
48
+ columnType: "PgText";
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
+ gitBranch: import("drizzle-orm/pg-core").PgColumn<{
62
+ name: "git_branch";
63
+ tableName: "builds";
64
+ dataType: "string";
65
+ columnType: "PgText";
66
+ data: string;
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
+ isDefault: import("drizzle-orm/pg-core").PgColumn<{
79
+ name: "is_default";
80
+ tableName: "builds";
81
+ dataType: "boolean";
82
+ columnType: "PgBoolean";
83
+ data: boolean;
84
+ driverParam: boolean;
85
+ notNull: true;
86
+ hasDefault: true;
87
+ isPrimaryKey: false;
88
+ isAutoincrement: false;
89
+ hasRuntimeDefault: false;
90
+ enumValues: undefined;
91
+ baseColumn: never;
92
+ identity: undefined;
93
+ generated: undefined;
94
+ }, {}, {}>;
95
+ authorEmail: import("drizzle-orm/pg-core").PgColumn<{
96
+ name: "author_email";
97
+ tableName: "builds";
98
+ dataType: "string";
99
+ columnType: "PgText";
100
+ data: string;
101
+ driverParam: string;
102
+ notNull: false;
103
+ hasDefault: false;
104
+ isPrimaryKey: false;
105
+ isAutoincrement: false;
106
+ hasRuntimeDefault: false;
107
+ enumValues: [string, ...string[]];
108
+ baseColumn: never;
109
+ identity: undefined;
110
+ generated: undefined;
111
+ }, {}, {}>;
112
+ authorName: import("drizzle-orm/pg-core").PgColumn<{
113
+ name: "author_name";
114
+ tableName: "builds";
115
+ dataType: "string";
116
+ columnType: "PgText";
117
+ data: string;
118
+ driverParam: string;
119
+ notNull: false;
120
+ hasDefault: false;
121
+ isPrimaryKey: false;
122
+ isAutoincrement: false;
123
+ hasRuntimeDefault: false;
124
+ enumValues: [string, ...string[]];
125
+ baseColumn: never;
126
+ identity: undefined;
127
+ generated: undefined;
128
+ }, {}, {}>;
129
+ message: import("drizzle-orm/pg-core").PgColumn<{
130
+ name: "message";
131
+ tableName: "builds";
132
+ dataType: "string";
133
+ columnType: "PgText";
134
+ data: string;
135
+ driverParam: string;
136
+ notNull: false;
137
+ hasDefault: false;
138
+ isPrimaryKey: false;
139
+ isAutoincrement: false;
140
+ hasRuntimeDefault: false;
141
+ enumValues: [string, ...string[]];
142
+ baseColumn: never;
143
+ identity: undefined;
144
+ generated: undefined;
145
+ }, {}, {}>;
146
+ public: import("drizzle-orm/pg-core").PgColumn<{
147
+ name: "public";
148
+ tableName: "builds";
149
+ dataType: "boolean";
150
+ columnType: "PgBoolean";
151
+ data: boolean;
152
+ driverParam: boolean;
153
+ notNull: true;
154
+ hasDefault: true;
155
+ isPrimaryKey: false;
156
+ isAutoincrement: false;
157
+ hasRuntimeDefault: false;
158
+ enumValues: undefined;
159
+ baseColumn: never;
160
+ identity: undefined;
161
+ generated: undefined;
162
+ }, {}, {}>;
163
+ status: import("drizzle-orm/pg-core").PgColumn<{
164
+ name: "status";
165
+ tableName: "builds";
166
+ dataType: "string";
167
+ columnType: "PgText";
168
+ data: "approved" | "capturing" | "comparing" | "failed" | "pending" | "rejected" | "reviewing";
169
+ driverParam: string;
170
+ notNull: true;
171
+ hasDefault: true;
172
+ isPrimaryKey: false;
173
+ isAutoincrement: false;
174
+ hasRuntimeDefault: false;
175
+ enumValues: [string, ...string[]];
176
+ baseColumn: never;
177
+ identity: undefined;
178
+ generated: undefined;
179
+ }, {}, {
180
+ $type: "approved" | "capturing" | "comparing" | "failed" | "pending" | "rejected" | "reviewing";
181
+ }>;
182
+ snapshotCount: import("drizzle-orm/pg-core").PgColumn<{
183
+ name: "snapshot_count";
184
+ tableName: "builds";
185
+ dataType: "number";
186
+ columnType: "PgInteger";
187
+ data: number;
188
+ driverParam: string | number;
189
+ notNull: true;
190
+ hasDefault: true;
191
+ isPrimaryKey: false;
192
+ isAutoincrement: false;
193
+ hasRuntimeDefault: false;
194
+ enumValues: undefined;
195
+ baseColumn: never;
196
+ identity: undefined;
197
+ generated: undefined;
198
+ }, {}, {}>;
199
+ changedCount: import("drizzle-orm/pg-core").PgColumn<{
200
+ name: "changed_count";
201
+ tableName: "builds";
202
+ dataType: "number";
203
+ columnType: "PgInteger";
204
+ data: number;
205
+ driverParam: string | number;
206
+ notNull: true;
207
+ hasDefault: true;
208
+ isPrimaryKey: false;
209
+ isAutoincrement: false;
210
+ hasRuntimeDefault: false;
211
+ enumValues: undefined;
212
+ baseColumn: never;
213
+ identity: undefined;
214
+ generated: undefined;
215
+ }, {}, {}>;
216
+ approvedCount: import("drizzle-orm/pg-core").PgColumn<{
217
+ name: "approved_count";
218
+ tableName: "builds";
219
+ dataType: "number";
220
+ columnType: "PgInteger";
221
+ data: number;
222
+ driverParam: string | number;
223
+ notNull: true;
224
+ hasDefault: true;
225
+ isPrimaryKey: false;
226
+ isAutoincrement: false;
227
+ hasRuntimeDefault: false;
228
+ enumValues: undefined;
229
+ baseColumn: never;
230
+ identity: undefined;
231
+ generated: undefined;
232
+ }, {}, {}>;
233
+ rejectedCount: import("drizzle-orm/pg-core").PgColumn<{
234
+ name: "rejected_count";
235
+ tableName: "builds";
236
+ dataType: "number";
237
+ columnType: "PgInteger";
238
+ data: number;
239
+ driverParam: string | number;
240
+ notNull: true;
241
+ hasDefault: true;
242
+ isPrimaryKey: false;
243
+ isAutoincrement: false;
244
+ hasRuntimeDefault: false;
245
+ enumValues: undefined;
246
+ baseColumn: never;
247
+ identity: undefined;
248
+ generated: undefined;
249
+ }, {}, {}>;
250
+ affectedOnly: import("drizzle-orm/pg-core").PgColumn<{
251
+ name: "affected_only";
252
+ tableName: "builds";
253
+ dataType: "boolean";
254
+ columnType: "PgBoolean";
255
+ data: boolean;
256
+ driverParam: boolean;
257
+ notNull: true;
258
+ hasDefault: true;
259
+ isPrimaryKey: false;
260
+ isAutoincrement: false;
261
+ hasRuntimeDefault: false;
262
+ enumValues: undefined;
263
+ baseColumn: never;
264
+ identity: undefined;
265
+ generated: undefined;
266
+ }, {}, {}>;
267
+ baselineSha: import("drizzle-orm/pg-core").PgColumn<{
268
+ name: "baseline_sha";
269
+ tableName: "builds";
270
+ dataType: "string";
271
+ columnType: "PgText";
272
+ data: string;
273
+ driverParam: string;
274
+ notNull: false;
275
+ hasDefault: false;
276
+ isPrimaryKey: false;
277
+ isAutoincrement: false;
278
+ hasRuntimeDefault: false;
279
+ enumValues: [string, ...string[]];
280
+ baseColumn: never;
281
+ identity: undefined;
282
+ generated: undefined;
283
+ }, {}, {}>;
284
+ changedFiles: import("drizzle-orm/pg-core").PgColumn<{
285
+ name: "changed_files";
286
+ tableName: "builds";
287
+ dataType: "string";
288
+ columnType: "PgText";
289
+ data: string;
290
+ driverParam: string;
291
+ notNull: false;
292
+ hasDefault: false;
293
+ isPrimaryKey: false;
294
+ isAutoincrement: false;
295
+ hasRuntimeDefault: false;
296
+ enumValues: [string, ...string[]];
297
+ baseColumn: never;
298
+ identity: undefined;
299
+ generated: undefined;
300
+ }, {}, {}>;
301
+ affectedImportPaths: import("drizzle-orm/pg-core").PgColumn<{
302
+ name: "affected_import_paths";
303
+ tableName: "builds";
304
+ dataType: "string";
305
+ columnType: "PgText";
306
+ data: string;
307
+ driverParam: string;
308
+ notNull: false;
309
+ hasDefault: false;
310
+ isPrimaryKey: false;
311
+ isAutoincrement: false;
312
+ hasRuntimeDefault: false;
313
+ enumValues: [string, ...string[]];
314
+ baseColumn: never;
315
+ identity: undefined;
316
+ generated: undefined;
317
+ }, {}, {}>;
318
+ createdAt: import("drizzle-orm/pg-core").PgColumn<{
319
+ name: "created_at";
320
+ tableName: "builds";
321
+ dataType: "string";
322
+ columnType: "PgTimestampString";
323
+ data: string;
324
+ driverParam: string;
325
+ notNull: true;
326
+ hasDefault: false;
327
+ isPrimaryKey: false;
328
+ isAutoincrement: false;
329
+ hasRuntimeDefault: false;
330
+ enumValues: undefined;
331
+ baseColumn: never;
332
+ identity: undefined;
333
+ generated: undefined;
334
+ }, {}, {}>;
335
+ updatedAt: import("drizzle-orm/pg-core").PgColumn<{
336
+ name: "updated_at";
337
+ tableName: "builds";
338
+ dataType: "string";
339
+ columnType: "PgTimestampString";
340
+ data: string;
341
+ driverParam: string;
342
+ notNull: true;
343
+ hasDefault: false;
344
+ isPrimaryKey: false;
345
+ isAutoincrement: false;
346
+ hasRuntimeDefault: false;
347
+ enumValues: undefined;
348
+ baseColumn: never;
349
+ identity: undefined;
350
+ generated: undefined;
351
+ }, {}, {}>;
352
+ };
353
+ dialect: 'pg';
354
+ }>;
355
+ /** A build row. */
356
+ interface Build {
357
+ id: string;
358
+ projectId: string;
359
+ gitSha: string;
360
+ gitBranch: string;
361
+ isDefault: boolean;
362
+ authorEmail: string | null;
363
+ authorName: string | null;
364
+ message: string | null;
365
+ public: boolean;
366
+ status: BuildStatus;
367
+ snapshotCount: number;
368
+ changedCount: number;
369
+ approvedCount: number;
370
+ rejectedCount: number;
371
+ affectedOnly: boolean;
372
+ baselineSha: string | null;
373
+ changedFiles: string | null;
374
+ affectedImportPaths: string | null;
375
+ createdAt: string;
376
+ updatedAt: string;
377
+ }
378
+ //#endregion
379
+ export { Build, builds };
380
+ //# sourceMappingURL=build.d.mts.map
@@ -0,0 +1,39 @@
1
+ import "node:path";
2
+ import "node:url";
3
+ import.meta.url;
4
+ import { projects } from "./project.mjs";
5
+ import { boolean, index, integer, pgTable, text, timestamp } from "drizzle-orm/pg-core";
6
+ //#region src/schema/build.ts
7
+ /** Narrow `builds` table definition. */
8
+ const builds = pgTable("builds", {
9
+ id: text("id").primaryKey(),
10
+ projectId: text("project_id").notNull().references(() => projects.id, { onDelete: "cascade" }),
11
+ gitSha: text("git_sha").notNull(),
12
+ gitBranch: text("git_branch").notNull(),
13
+ isDefault: boolean("is_default").notNull().default(false),
14
+ authorEmail: text("author_email"),
15
+ authorName: text("author_name"),
16
+ message: text("message"),
17
+ public: boolean("public").notNull().default(false),
18
+ status: text("status").$type().notNull().default("pending"),
19
+ snapshotCount: integer("snapshot_count").notNull().default(0),
20
+ changedCount: integer("changed_count").notNull().default(0),
21
+ approvedCount: integer("approved_count").notNull().default(0),
22
+ rejectedCount: integer("rejected_count").notNull().default(0),
23
+ affectedOnly: boolean("affected_only").notNull().default(true),
24
+ baselineSha: text("baseline_sha"),
25
+ changedFiles: text("changed_files"),
26
+ affectedImportPaths: text("affected_import_paths"),
27
+ createdAt: timestamp("created_at", {
28
+ withTimezone: true,
29
+ mode: "string"
30
+ }).notNull(),
31
+ updatedAt: timestamp("updated_at", {
32
+ withTimezone: true,
33
+ mode: "string"
34
+ }).notNull()
35
+ }, (t) => [index("builds_project_gitsha_idx").on(t.projectId, t.gitSha), index("builds_git_branch_idx").on(t.gitBranch)]);
36
+ //#endregion
37
+ export { builds };
38
+
39
+ //# sourceMappingURL=build.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"build.mjs","names":[],"sources":["../../src/schema/build.ts"],"sourcesContent":["import type { BuildStatus } from \"@storyshelf/core/types\";\nimport { boolean, index, integer, pgTable, text, timestamp } from \"drizzle-orm/pg-core\";\nimport { projects } from \"./project.ts\";\n\n/** Narrow `builds` table definition. */\nexport const builds = pgTable(\n \"builds\",\n {\n id: text(\"id\").primaryKey(),\n projectId: text(\"project_id\")\n .notNull()\n .references(() => projects.id, { onDelete: \"cascade\" }),\n gitSha: text(\"git_sha\").notNull(),\n gitBranch: text(\"git_branch\").notNull(),\n isDefault: boolean(\"is_default\").notNull().default(false),\n authorEmail: text(\"author_email\"),\n authorName: text(\"author_name\"),\n message: text(\"message\"),\n public: boolean(\"public\").notNull().default(false),\n status: text(\"status\").$type<BuildStatus>().notNull().default(\"pending\"),\n snapshotCount: integer(\"snapshot_count\").notNull().default(0),\n changedCount: integer(\"changed_count\").notNull().default(0),\n approvedCount: integer(\"approved_count\").notNull().default(0),\n rejectedCount: integer(\"rejected_count\").notNull().default(0),\n affectedOnly: boolean(\"affected_only\").notNull().default(true),\n baselineSha: text(\"baseline_sha\"),\n changedFiles: text(\"changed_files\"),\n affectedImportPaths: text(\"affected_import_paths\"),\n createdAt: timestamp(\"created_at\", { withTimezone: true, mode: \"string\" }).notNull(),\n updatedAt: timestamp(\"updated_at\", { withTimezone: true, mode: \"string\" }).notNull(),\n },\n (t) => [\n index(\"builds_project_gitsha_idx\").on(t.projectId, t.gitSha),\n index(\"builds_git_branch_idx\").on(t.gitBranch),\n ],\n);\n\n/** A build row. */\nexport interface Build {\n id: string;\n projectId: string;\n gitSha: string;\n gitBranch: string;\n isDefault: boolean;\n authorEmail: string | null;\n authorName: string | null;\n message: string | null;\n public: boolean;\n status: BuildStatus;\n snapshotCount: number;\n changedCount: number;\n approvedCount: number;\n rejectedCount: number;\n affectedOnly: boolean;\n baselineSha: string | null;\n changedFiles: string | null;\n affectedImportPaths: string | null;\n createdAt: string;\n updatedAt: string;\n}\n"],"mappings":";;;;;;;AAKA,MAAa,SAAS,QACpB,UACA;CACE,IAAI,KAAK,IAAI,CAAC,CAAC,WAAW;CAC1B,WAAW,KAAK,YAAY,CAAC,CAC1B,QAAQ,CAAC,CACT,iBAAiB,SAAS,IAAI,EAAE,UAAU,UAAU,CAAC;CACxD,QAAQ,KAAK,SAAS,CAAC,CAAC,QAAQ;CAChC,WAAW,KAAK,YAAY,CAAC,CAAC,QAAQ;CACtC,WAAW,QAAQ,YAAY,CAAC,CAAC,QAAQ,CAAC,CAAC,QAAQ,KAAK;CACxD,aAAa,KAAK,cAAc;CAChC,YAAY,KAAK,aAAa;CAC9B,SAAS,KAAK,SAAS;CACvB,QAAQ,QAAQ,QAAQ,CAAC,CAAC,QAAQ,CAAC,CAAC,QAAQ,KAAK;CACjD,QAAQ,KAAK,QAAQ,CAAC,CAAC,MAAmB,CAAC,CAAC,QAAQ,CAAC,CAAC,QAAQ,SAAS;CACvE,eAAe,QAAQ,gBAAgB,CAAC,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC;CAC5D,cAAc,QAAQ,eAAe,CAAC,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC;CAC1D,eAAe,QAAQ,gBAAgB,CAAC,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC;CAC5D,eAAe,QAAQ,gBAAgB,CAAC,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC;CAC5D,cAAc,QAAQ,eAAe,CAAC,CAAC,QAAQ,CAAC,CAAC,QAAQ,IAAI;CAC7D,aAAa,KAAK,cAAc;CAChC,cAAc,KAAK,eAAe;CAClC,qBAAqB,KAAK,uBAAuB;CACjD,WAAW,UAAU,cAAc;EAAE,cAAc;EAAM,MAAM;CAAS,CAAC,CAAC,CAAC,QAAQ;CACnF,WAAW,UAAU,cAAc;EAAE,cAAc;EAAM,MAAM;CAAS,CAAC,CAAC,CAAC,QAAQ;AACrF,IACC,MAAM,CACL,MAAM,2BAA2B,CAAC,CAAC,GAAG,EAAE,WAAW,EAAE,MAAM,GAC3D,MAAM,uBAAuB,CAAC,CAAC,GAAG,EAAE,SAAS,CAC/C,CACF"}