@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
@@ -0,0 +1,265 @@
1
+ import __tsdown_shims_path from 'node:path';
2
+ import __tsdown_shims_url from 'node:url';
3
+ /** Narrow `project_links` table definition. */
4
+ declare const projectLinks: import("drizzle-orm/mysql-core/table.js").MySqlTableWithColumns<{
5
+ name: "project_links";
6
+ schema: undefined;
7
+ columns: {
8
+ id: import("drizzle-orm/mysql-core/index.js").MySqlColumn<{
9
+ name: "id";
10
+ tableName: "project_links";
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
+ downstreamId: import("drizzle-orm/mysql-core/index.js").MySqlColumn<{
26
+ name: "downstream_id";
27
+ tableName: "project_links";
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
+ upstreamId: import("drizzle-orm/mysql-core/index.js").MySqlColumn<{
43
+ name: "upstream_id";
44
+ tableName: "project_links";
45
+ dataType: "string";
46
+ columnType: "MySqlText";
47
+ data: string;
48
+ driverParam: string;
49
+ notNull: true;
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
+ packageName: import("drizzle-orm/mysql-core/index.js").MySqlColumn<{
60
+ name: "package_name";
61
+ tableName: "project_links";
62
+ dataType: "string";
63
+ columnType: "MySqlText";
64
+ data: string;
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
+ createdAt: import("drizzle-orm/mysql-core/index.js").MySqlColumn<{
77
+ name: "created_at";
78
+ tableName: "project_links";
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
+ /** Narrow `build_package_usage` table definition. */
97
+ declare const buildPackageUsage: import("drizzle-orm/mysql-core/table.js").MySqlTableWithColumns<{
98
+ name: "build_package_usage";
99
+ schema: undefined;
100
+ columns: {
101
+ id: import("drizzle-orm/mysql-core/index.js").MySqlColumn<{
102
+ name: "id";
103
+ tableName: "build_package_usage";
104
+ dataType: "string";
105
+ columnType: "MySqlText";
106
+ data: string;
107
+ driverParam: string;
108
+ notNull: true;
109
+ hasDefault: false;
110
+ isPrimaryKey: true;
111
+ isAutoincrement: false;
112
+ hasRuntimeDefault: false;
113
+ enumValues: [string, ...string[]];
114
+ baseColumn: never;
115
+ identity: undefined;
116
+ generated: undefined;
117
+ }, {}, {}>;
118
+ projectId: import("drizzle-orm/mysql-core/index.js").MySqlColumn<{
119
+ name: "project_id";
120
+ tableName: "build_package_usage";
121
+ dataType: "string";
122
+ columnType: "MySqlText";
123
+ data: string;
124
+ driverParam: string;
125
+ notNull: true;
126
+ hasDefault: false;
127
+ isPrimaryKey: false;
128
+ isAutoincrement: false;
129
+ hasRuntimeDefault: false;
130
+ enumValues: [string, ...string[]];
131
+ baseColumn: never;
132
+ identity: undefined;
133
+ generated: undefined;
134
+ }, {}, {}>;
135
+ buildId: import("drizzle-orm/mysql-core/index.js").MySqlColumn<{
136
+ name: "build_id";
137
+ tableName: "build_package_usage";
138
+ dataType: "string";
139
+ columnType: "MySqlText";
140
+ data: string;
141
+ driverParam: string;
142
+ notNull: true;
143
+ hasDefault: false;
144
+ isPrimaryKey: false;
145
+ isAutoincrement: false;
146
+ hasRuntimeDefault: false;
147
+ enumValues: [string, ...string[]];
148
+ baseColumn: never;
149
+ identity: undefined;
150
+ generated: undefined;
151
+ }, {}, {}>;
152
+ storyImportPath: import("drizzle-orm/mysql-core/index.js").MySqlColumn<{
153
+ name: "story_import_path";
154
+ tableName: "build_package_usage";
155
+ dataType: "string";
156
+ columnType: "MySqlText";
157
+ data: string;
158
+ driverParam: string;
159
+ notNull: true;
160
+ hasDefault: false;
161
+ isPrimaryKey: false;
162
+ isAutoincrement: false;
163
+ hasRuntimeDefault: false;
164
+ enumValues: [string, ...string[]];
165
+ baseColumn: never;
166
+ identity: undefined;
167
+ generated: undefined;
168
+ }, {}, {}>;
169
+ packageName: import("drizzle-orm/mysql-core/index.js").MySqlColumn<{
170
+ name: "package_name";
171
+ tableName: "build_package_usage";
172
+ dataType: "string";
173
+ columnType: "MySqlText";
174
+ data: string;
175
+ driverParam: string;
176
+ notNull: true;
177
+ hasDefault: false;
178
+ isPrimaryKey: false;
179
+ isAutoincrement: false;
180
+ hasRuntimeDefault: false;
181
+ enumValues: [string, ...string[]];
182
+ baseColumn: never;
183
+ identity: undefined;
184
+ generated: undefined;
185
+ }, {}, {}>;
186
+ modulePath: import("drizzle-orm/mysql-core/index.js").MySqlColumn<{
187
+ name: "module_path";
188
+ tableName: "build_package_usage";
189
+ dataType: "string";
190
+ columnType: "MySqlText";
191
+ data: string;
192
+ driverParam: string;
193
+ notNull: true;
194
+ hasDefault: false;
195
+ isPrimaryKey: false;
196
+ isAutoincrement: false;
197
+ hasRuntimeDefault: false;
198
+ enumValues: [string, ...string[]];
199
+ baseColumn: never;
200
+ identity: undefined;
201
+ generated: undefined;
202
+ }, {}, {}>;
203
+ version: import("drizzle-orm/mysql-core/index.js").MySqlColumn<{
204
+ name: "version";
205
+ tableName: "build_package_usage";
206
+ dataType: "string";
207
+ columnType: "MySqlText";
208
+ data: string;
209
+ driverParam: string;
210
+ notNull: false;
211
+ hasDefault: false;
212
+ isPrimaryKey: false;
213
+ isAutoincrement: false;
214
+ hasRuntimeDefault: false;
215
+ enumValues: [string, ...string[]];
216
+ baseColumn: never;
217
+ identity: undefined;
218
+ generated: undefined;
219
+ }, {}, {}>;
220
+ createdAt: import("drizzle-orm/mysql-core/index.js").MySqlColumn<{
221
+ name: "created_at";
222
+ tableName: "build_package_usage";
223
+ dataType: "custom";
224
+ columnType: "MySqlCustomColumn";
225
+ data: string;
226
+ driverParam: string;
227
+ notNull: true;
228
+ hasDefault: false;
229
+ isPrimaryKey: false;
230
+ isAutoincrement: false;
231
+ hasRuntimeDefault: false;
232
+ enumValues: undefined;
233
+ baseColumn: never;
234
+ identity: undefined;
235
+ generated: undefined;
236
+ }, {}, {}>;
237
+ };
238
+ dialect: 'mysql';
239
+ }>;
240
+ /** A link from a downstream project to the upstream project that publishes a package it consumes. */
241
+ interface ProjectLink {
242
+ id: string;
243
+ /** Project that consumes the package (the app). */
244
+ downstreamId: string;
245
+ /** Project whose Storybook publishes the package's components (the design system). */
246
+ upstreamId: string;
247
+ packageName: string;
248
+ createdAt: string;
249
+ }
250
+ /** A dependency package a story file reaches in a build. */
251
+ interface BuildPackageUsage {
252
+ id: string;
253
+ projectId: string;
254
+ buildId: string;
255
+ /** Story import path, joined to `snapshots.storyImportPath` at read time. */
256
+ storyImportPath: string;
257
+ packageName: string;
258
+ /** First module inside the package the story reaches. */
259
+ modulePath: string;
260
+ /** Installed package version at upload time; null when it could not be resolved. */
261
+ version: string | null;
262
+ createdAt: string;
263
+ }
264
+ export { BuildPackageUsage, ProjectLink, buildPackageUsage, projectLinks };
265
+ //# sourceMappingURL=usage.d.mts.map
@@ -0,0 +1,36 @@
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, mysqlTable, text, uniqueIndex } from "drizzle-orm/mysql-core";
8
+ // src/schema/usage.ts
9
+ /** Narrow `project_links` table definition. */
10
+ const projectLinks = mysqlTable("project_links", {
11
+ id: text("id").primaryKey(),
12
+ downstreamId: text("downstream_id").notNull().references(() => projects.id, { onDelete: "cascade" }),
13
+ upstreamId: text("upstream_id").notNull().references(() => projects.id, { onDelete: "cascade" }),
14
+ packageName: text("package_name").notNull(),
15
+ createdAt: datetime("created_at", {
16
+ mode: "string",
17
+ fsp: 3
18
+ }).notNull()
19
+ }, (t) => [uniqueIndex("project_links_downstream_package_idx").on(t.downstreamId, t.packageName)]);
20
+ /** Narrow `build_package_usage` table definition. */
21
+ const buildPackageUsage = mysqlTable("build_package_usage", {
22
+ id: text("id").primaryKey(),
23
+ projectId: text("project_id").notNull().references(() => projects.id, { onDelete: "cascade" }),
24
+ buildId: text("build_id").notNull().references(() => builds.id, { onDelete: "cascade" }),
25
+ storyImportPath: text("story_import_path").notNull(),
26
+ packageName: text("package_name").notNull(),
27
+ modulePath: text("module_path").notNull(),
28
+ version: text("version"),
29
+ createdAt: datetime("created_at", {
30
+ mode: "string",
31
+ fsp: 3
32
+ }).notNull()
33
+ }, (t) => [index("build_package_usage_build_id_idx").on(t.buildId)]);
34
+ export { buildPackageUsage, projectLinks };
35
+
36
+ //# sourceMappingURL=usage.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"usage.mjs","names":[],"sources":["../../src/schema/usage.ts"],"sourcesContent":["import { mysqlTable, text, uniqueIndex, index } from \"drizzle-orm/mysql-core\";\nimport { builds } from \"./build.ts\";\nimport { datetime } from \"./datetime.ts\";\nimport { projects } from \"./project.ts\";\n\n/** Narrow `project_links` table definition. */\nexport const projectLinks = mysqlTable(\n \"project_links\",\n {\n id: text(\"id\").primaryKey(),\n downstreamId: text(\"downstream_id\")\n .notNull()\n .references(() => projects.id, { onDelete: \"cascade\" }),\n upstreamId: text(\"upstream_id\")\n .notNull()\n .references(() => projects.id, { onDelete: \"cascade\" }),\n packageName: text(\"package_name\").notNull(),\n createdAt: datetime(\"created_at\", { mode: \"string\", fsp: 3 }).notNull(),\n },\n (t) => [uniqueIndex(\"project_links_downstream_package_idx\").on(t.downstreamId, t.packageName)],\n);\n\n/** Narrow `build_package_usage` table definition. */\nexport const buildPackageUsage = mysqlTable(\n \"build_package_usage\",\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 storyImportPath: text(\"story_import_path\").notNull(),\n packageName: text(\"package_name\").notNull(),\n modulePath: text(\"module_path\").notNull(),\n version: text(\"version\"),\n createdAt: datetime(\"created_at\", { mode: \"string\", fsp: 3 }).notNull(),\n },\n (t) => [index(\"build_package_usage_build_id_idx\").on(t.buildId)],\n);\n\n/** A link from a downstream project to the upstream project that publishes a package it consumes. */\nexport interface ProjectLink {\n id: string;\n /** Project that consumes the package (the app). */\n downstreamId: string;\n /** Project whose Storybook publishes the package's components (the design system). */\n upstreamId: string;\n packageName: string;\n createdAt: string;\n}\n\n/** A dependency package a story file reaches in a build. */\nexport interface BuildPackageUsage {\n id: string;\n projectId: string;\n buildId: string;\n /** Story import path, joined to `snapshots.storyImportPath` at read time. */\n storyImportPath: string;\n packageName: string;\n /** First module inside the package the story reaches. */\n modulePath: string;\n /** Installed package version at upload time; null when it could not be resolved. */\n version: string | null;\n createdAt: string;\n}\n"],"mappings":";;;;;;;;;AAMA,MAAa,eAAe,WAC1B,iBACA;CACE,IAAI,KAAK,IAAI,CAAC,CAAC,WAAW;CAC1B,cAAc,KAAK,eAAe,CAAC,CAChC,QAAQ,CAAC,CACT,iBAAiB,SAAS,IAAI,EAAE,UAAU,UAAU,CAAC;CACxD,YAAY,KAAK,aAAa,CAAC,CAC5B,QAAQ,CAAC,CACT,iBAAiB,SAAS,IAAI,EAAE,UAAU,UAAU,CAAC;CACxD,aAAa,KAAK,cAAc,CAAC,CAAC,QAAQ;CAC1C,WAAW,SAAS,cAAc;EAAE,MAAM;EAAU,KAAK;CAAE,CAAC,CAAC,CAAC,QAAQ;AACxE,IACC,MAAM,CAAC,YAAY,sCAAsC,CAAC,CAAC,GAAG,EAAE,cAAc,EAAE,WAAW,CAAC,CAC/F;;AAGA,MAAa,oBAAoB,WAC/B,uBACA;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,iBAAiB,KAAK,mBAAmB,CAAC,CAAC,QAAQ;CACnD,aAAa,KAAK,cAAc,CAAC,CAAC,QAAQ;CAC1C,YAAY,KAAK,aAAa,CAAC,CAAC,QAAQ;CACxC,SAAS,KAAK,SAAS;CACvB,WAAW,SAAS,cAAc;EAAE,MAAM;EAAU,KAAK;CAAE,CAAC,CAAC,CAAC,QAAQ;AACxE,IACC,MAAM,CAAC,MAAM,kCAAkC,CAAC,CAAC,GAAG,EAAE,OAAO,CAAC,CACjE"}
@@ -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/user-invite.d.ts
4
3
  /** Invite token for local accounts (one-time, hashed at rest). */
5
- declare const userInviteTokens: import("drizzle-orm/mysql-core").MySqlTableWithColumns<{
4
+ declare const userInviteTokens: import("drizzle-orm/mysql-core/table.js").MySqlTableWithColumns<{
6
5
  name: "user_invite_tokens";
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: "user_invite_tokens";
12
11
  dataType: "string";
@@ -23,7 +22,7 @@ declare const userInviteTokens: import("drizzle-orm/mysql-core").MySqlTableWithC
23
22
  identity: undefined;
24
23
  generated: undefined;
25
24
  }, {}, {}>;
26
- userId: import("drizzle-orm/mysql-core").MySqlColumn<{
25
+ userId: import("drizzle-orm/mysql-core/index.js").MySqlColumn<{
27
26
  name: "user_id";
28
27
  tableName: "user_invite_tokens";
29
28
  dataType: "string";
@@ -40,7 +39,7 @@ declare const userInviteTokens: import("drizzle-orm/mysql-core").MySqlTableWithC
40
39
  identity: undefined;
41
40
  generated: undefined;
42
41
  }, {}, {}>;
43
- tokenHash: import("drizzle-orm/mysql-core").MySqlColumn<{
42
+ tokenHash: import("drizzle-orm/mysql-core/index.js").MySqlColumn<{
44
43
  name: "token_hash";
45
44
  tableName: "user_invite_tokens";
46
45
  dataType: "string";
@@ -57,13 +56,13 @@ declare const userInviteTokens: import("drizzle-orm/mysql-core").MySqlTableWithC
57
56
  identity: undefined;
58
57
  generated: undefined;
59
58
  }, {}, {}>;
60
- expiresAt: import("drizzle-orm/mysql-core").MySqlColumn<{
59
+ expiresAt: import("drizzle-orm/mysql-core/index.js").MySqlColumn<{
61
60
  name: "expires_at";
62
61
  tableName: "user_invite_tokens";
63
- dataType: "string";
64
- columnType: "MySqlDateTimeString";
62
+ dataType: "custom";
63
+ columnType: "MySqlCustomColumn";
65
64
  data: string;
66
- driverParam: string | number;
65
+ driverParam: string;
67
66
  notNull: true;
68
67
  hasDefault: false;
69
68
  isPrimaryKey: false;
@@ -74,13 +73,13 @@ declare const userInviteTokens: import("drizzle-orm/mysql-core").MySqlTableWithC
74
73
  identity: undefined;
75
74
  generated: undefined;
76
75
  }, {}, {}>;
77
- usedAt: import("drizzle-orm/mysql-core").MySqlColumn<{
76
+ usedAt: import("drizzle-orm/mysql-core/index.js").MySqlColumn<{
78
77
  name: "used_at";
79
78
  tableName: "user_invite_tokens";
80
- dataType: "string";
81
- columnType: "MySqlDateTimeString";
79
+ dataType: "custom";
80
+ columnType: "MySqlCustomColumn";
82
81
  data: string;
83
- driverParam: string | number;
82
+ driverParam: string;
84
83
  notNull: false;
85
84
  hasDefault: false;
86
85
  isPrimaryKey: false;
@@ -91,13 +90,13 @@ declare const userInviteTokens: import("drizzle-orm/mysql-core").MySqlTableWithC
91
90
  identity: undefined;
92
91
  generated: undefined;
93
92
  }, {}, {}>;
94
- createdAt: import("drizzle-orm/mysql-core").MySqlColumn<{
93
+ createdAt: import("drizzle-orm/mysql-core/index.js").MySqlColumn<{
95
94
  name: "created_at";
96
95
  tableName: "user_invite_tokens";
97
- dataType: "string";
98
- columnType: "MySqlDateTimeString";
96
+ dataType: "custom";
97
+ columnType: "MySqlCustomColumn";
99
98
  data: string;
100
- driverParam: string | number;
99
+ driverParam: string;
101
100
  notNull: true;
102
101
  hasDefault: false;
103
102
  isPrimaryKey: false;
@@ -120,6 +119,5 @@ interface UserInviteToken {
120
119
  usedAt: string | null;
121
120
  createdAt: string;
122
121
  }
123
- //#endregion
124
122
  export { UserInviteToken, userInviteTokens };
125
123
  //# sourceMappingURL=user-invite.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 { users } from "./user.mjs";
5
- import { datetime, mysqlTable, text } from "drizzle-orm/mysql-core";
6
- //#region src/schema/user-invite.ts
6
+ import { mysqlTable, text } from "drizzle-orm/mysql-core";
7
+ // src/schema/user-invite.ts
7
8
  /** Invite token for local accounts (one-time, hashed at rest). */
8
9
  const userInviteTokens = mysqlTable("user_invite_tokens", {
9
10
  id: text("id").primaryKey(),
@@ -22,7 +23,6 @@ const userInviteTokens = mysqlTable("user_invite_tokens", {
22
23
  fsp: 3
23
24
  }).notNull()
24
25
  });
25
- //#endregion
26
26
  export { userInviteTokens };
27
27
 
28
28
  //# sourceMappingURL=user-invite.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"user-invite.mjs","names":[],"sources":["../../src/schema/user-invite.ts"],"sourcesContent":["import { mysqlTable, text, datetime } from \"drizzle-orm/mysql-core\";\nimport { users } from \"./user.ts\";\n\n/** Invite token for local accounts (one-time, hashed at rest). */\nexport const userInviteTokens = mysqlTable(\"user_invite_tokens\", {\n id: text(\"id\").primaryKey(),\n userId: text(\"user_id\")\n .notNull()\n .references(() => users.id, { onDelete: \"cascade\" }),\n tokenHash: text(\"token_hash\").notNull().unique(),\n expiresAt: datetime(\"expires_at\", { mode: \"string\", fsp: 3 }).notNull(),\n usedAt: datetime(\"used_at\", { mode: \"string\", fsp: 3 }),\n createdAt: datetime(\"created_at\", { mode: \"string\", fsp: 3 }).notNull(),\n});\n\n/** A user invite token row. */\nexport interface UserInviteToken {\n id: string;\n userId: string;\n tokenHash: string;\n expiresAt: string;\n usedAt: string | null;\n createdAt: string;\n}\n"],"mappings":";;;;;;;AAIA,MAAa,mBAAmB,WAAW,sBAAsB;CAC/D,IAAI,KAAK,IAAI,CAAC,CAAC,WAAW;CAC1B,QAAQ,KAAK,SAAS,CAAC,CACpB,QAAQ,CAAC,CACT,iBAAiB,MAAM,IAAI,EAAE,UAAU,UAAU,CAAC;CACrD,WAAW,KAAK,YAAY,CAAC,CAAC,QAAQ,CAAC,CAAC,OAAO;CAC/C,WAAW,SAAS,cAAc;EAAE,MAAM;EAAU,KAAK;CAAE,CAAC,CAAC,CAAC,QAAQ;CACtE,QAAQ,SAAS,WAAW;EAAE,MAAM;EAAU,KAAK;CAAE,CAAC;CACtD,WAAW,SAAS,cAAc;EAAE,MAAM;EAAU,KAAK;CAAE,CAAC,CAAC,CAAC,QAAQ;AACxE,CAAC"}
1
+ {"version":3,"file":"user-invite.mjs","names":[],"sources":["../../src/schema/user-invite.ts"],"sourcesContent":["import { mysqlTable, text } from \"drizzle-orm/mysql-core\";\nimport { datetime } from \"./datetime.ts\";\nimport { users } from \"./user.ts\";\n\n/** Invite token for local accounts (one-time, hashed at rest). */\nexport const userInviteTokens = mysqlTable(\"user_invite_tokens\", {\n id: text(\"id\").primaryKey(),\n userId: text(\"user_id\")\n .notNull()\n .references(() => users.id, { onDelete: \"cascade\" }),\n tokenHash: text(\"token_hash\").notNull().unique(),\n expiresAt: datetime(\"expires_at\", { mode: \"string\", fsp: 3 }).notNull(),\n usedAt: datetime(\"used_at\", { mode: \"string\", fsp: 3 }),\n createdAt: datetime(\"created_at\", { mode: \"string\", fsp: 3 }).notNull(),\n});\n\n/** A user invite token row. */\nexport interface UserInviteToken {\n id: string;\n userId: string;\n tokenHash: string;\n expiresAt: string;\n usedAt: string | null;\n createdAt: string;\n}\n"],"mappings":";;;;;;;;AAKA,MAAa,mBAAmB,WAAW,sBAAsB;CAC/D,IAAI,KAAK,IAAI,CAAC,CAAC,WAAW;CAC1B,QAAQ,KAAK,SAAS,CAAC,CACpB,QAAQ,CAAC,CACT,iBAAiB,MAAM,IAAI,EAAE,UAAU,UAAU,CAAC;CACrD,WAAW,KAAK,YAAY,CAAC,CAAC,QAAQ,CAAC,CAAC,OAAO;CAC/C,WAAW,SAAS,cAAc;EAAE,MAAM;EAAU,KAAK;CAAE,CAAC,CAAC,CAAC,QAAQ;CACtE,QAAQ,SAAS,WAAW;EAAE,MAAM;EAAU,KAAK;CAAE,CAAC;CACtD,WAAW,SAAS,cAAc;EAAE,MAAM;EAAU,KAAK;CAAE,CAAC,CAAC,CAAC,QAAQ;AACxE,CAAC"}
@@ -1,13 +1,12 @@
1
1
  import __tsdown_shims_path from 'node:path';
2
2
  import __tsdown_shims_url from 'node:url';
3
3
  import { SiteRole } from "@storyshelf/core/types";
4
- //#region src/schema/user.d.ts
5
4
  /** Narrow `users` table definition. */
6
- declare const users: import("drizzle-orm/mysql-core").MySqlTableWithColumns<{
5
+ declare const users: import("drizzle-orm/mysql-core/table.js").MySqlTableWithColumns<{
7
6
  name: "users";
8
7
  schema: undefined;
9
8
  columns: {
10
- id: import("drizzle-orm/mysql-core").MySqlColumn<{
9
+ id: import("drizzle-orm/mysql-core/index.js").MySqlColumn<{
11
10
  name: "id";
12
11
  tableName: "users";
13
12
  dataType: "string";
@@ -24,7 +23,7 @@ declare const users: import("drizzle-orm/mysql-core").MySqlTableWithColumns<{
24
23
  identity: undefined;
25
24
  generated: undefined;
26
25
  }, {}, {}>;
27
- email: import("drizzle-orm/mysql-core").MySqlColumn<{
26
+ email: import("drizzle-orm/mysql-core/index.js").MySqlColumn<{
28
27
  name: "email";
29
28
  tableName: "users";
30
29
  dataType: "string";
@@ -41,7 +40,7 @@ declare const users: import("drizzle-orm/mysql-core").MySqlTableWithColumns<{
41
40
  identity: undefined;
42
41
  generated: undefined;
43
42
  }, {}, {}>;
44
- name: import("drizzle-orm/mysql-core").MySqlColumn<{
43
+ name: import("drizzle-orm/mysql-core/index.js").MySqlColumn<{
45
44
  name: "name";
46
45
  tableName: "users";
47
46
  dataType: "string";
@@ -58,7 +57,7 @@ declare const users: import("drizzle-orm/mysql-core").MySqlTableWithColumns<{
58
57
  identity: undefined;
59
58
  generated: undefined;
60
59
  }, {}, {}>;
61
- avatarUrl: import("drizzle-orm/mysql-core").MySqlColumn<{
60
+ avatarUrl: import("drizzle-orm/mysql-core/index.js").MySqlColumn<{
62
61
  name: "avatar_url";
63
62
  tableName: "users";
64
63
  dataType: "string";
@@ -75,7 +74,7 @@ declare const users: import("drizzle-orm/mysql-core").MySqlTableWithColumns<{
75
74
  identity: undefined;
76
75
  generated: undefined;
77
76
  }, {}, {}>;
78
- role: import("drizzle-orm/mysql-core").MySqlColumn<{
77
+ role: import("drizzle-orm/mysql-core/index.js").MySqlColumn<{
79
78
  name: "role";
80
79
  tableName: "users";
81
80
  dataType: "string";
@@ -94,13 +93,13 @@ declare const users: import("drizzle-orm/mysql-core").MySqlTableWithColumns<{
94
93
  }, {}, {
95
94
  $type: "admin" | "member" | "viewer";
96
95
  }>;
97
- lastLoginAt: import("drizzle-orm/mysql-core").MySqlColumn<{
96
+ lastLoginAt: import("drizzle-orm/mysql-core/index.js").MySqlColumn<{
98
97
  name: "last_login_at";
99
98
  tableName: "users";
100
- dataType: "string";
101
- columnType: "MySqlDateTimeString";
99
+ dataType: "custom";
100
+ columnType: "MySqlCustomColumn";
102
101
  data: string;
103
- driverParam: string | number;
102
+ driverParam: string;
104
103
  notNull: false;
105
104
  hasDefault: false;
106
105
  isPrimaryKey: false;
@@ -111,13 +110,13 @@ declare const users: import("drizzle-orm/mysql-core").MySqlTableWithColumns<{
111
110
  identity: undefined;
112
111
  generated: undefined;
113
112
  }, {}, {}>;
114
- createdAt: import("drizzle-orm/mysql-core").MySqlColumn<{
113
+ createdAt: import("drizzle-orm/mysql-core/index.js").MySqlColumn<{
115
114
  name: "created_at";
116
115
  tableName: "users";
117
- dataType: "string";
118
- columnType: "MySqlDateTimeString";
116
+ dataType: "custom";
117
+ columnType: "MySqlCustomColumn";
119
118
  data: string;
120
- driverParam: string | number;
119
+ driverParam: string;
121
120
  notNull: true;
122
121
  hasDefault: false;
123
122
  isPrimaryKey: false;
@@ -128,6 +127,76 @@ declare const users: import("drizzle-orm/mysql-core").MySqlTableWithColumns<{
128
127
  identity: undefined;
129
128
  generated: undefined;
130
129
  }, {}, {}>;
130
+ passwordHash: import("drizzle-orm/mysql-core/index.js").MySqlColumn<{
131
+ name: "password_hash";
132
+ tableName: "users";
133
+ dataType: "string";
134
+ columnType: "MySqlText";
135
+ data: string;
136
+ driverParam: string;
137
+ notNull: false;
138
+ hasDefault: false;
139
+ isPrimaryKey: false;
140
+ isAutoincrement: false;
141
+ hasRuntimeDefault: false;
142
+ enumValues: [string, ...string[]];
143
+ baseColumn: never;
144
+ identity: undefined;
145
+ generated: undefined;
146
+ }, {}, {}>;
147
+ displayNameOverride: import("drizzle-orm/mysql-core/index.js").MySqlColumn<{
148
+ name: "display_name_override";
149
+ tableName: "users";
150
+ dataType: "string";
151
+ columnType: "MySqlText";
152
+ data: string;
153
+ driverParam: string;
154
+ notNull: false;
155
+ hasDefault: false;
156
+ isPrimaryKey: false;
157
+ isAutoincrement: false;
158
+ hasRuntimeDefault: false;
159
+ enumValues: [string, ...string[]];
160
+ baseColumn: never;
161
+ identity: undefined;
162
+ generated: undefined;
163
+ }, {}, {}>;
164
+ authProvider: import("drizzle-orm/mysql-core/index.js").MySqlColumn<{
165
+ name: "auth_provider";
166
+ tableName: "users";
167
+ dataType: "string";
168
+ columnType: "MySqlText";
169
+ data: "local" | "oidc" | "shared";
170
+ driverParam: string;
171
+ notNull: true;
172
+ hasDefault: true;
173
+ isPrimaryKey: false;
174
+ isAutoincrement: false;
175
+ hasRuntimeDefault: false;
176
+ enumValues: [string, ...string[]];
177
+ baseColumn: never;
178
+ identity: undefined;
179
+ generated: undefined;
180
+ }, {}, {
181
+ $type: "local" | "oidc" | "shared";
182
+ }>;
183
+ disabled: import("drizzle-orm/mysql-core/index.js").MySqlColumn<{
184
+ name: "disabled";
185
+ tableName: "users";
186
+ dataType: "boolean";
187
+ columnType: "MySqlBoolean";
188
+ data: boolean;
189
+ driverParam: number | boolean;
190
+ notNull: true;
191
+ hasDefault: true;
192
+ isPrimaryKey: false;
193
+ isAutoincrement: false;
194
+ hasRuntimeDefault: false;
195
+ enumValues: undefined;
196
+ baseColumn: never;
197
+ identity: undefined;
198
+ generated: undefined;
199
+ }, {}, {}>;
131
200
  };
132
201
  dialect: 'mysql';
133
202
  }>;
@@ -140,7 +209,10 @@ interface User {
140
209
  role: SiteRole;
141
210
  lastLoginAt: string | null;
142
211
  createdAt: string;
212
+ passwordHash: string | null;
213
+ displayNameOverride: string | null;
214
+ authProvider: "local" | "oidc" | "shared";
215
+ disabled: boolean;
143
216
  }
144
- //#endregion
145
217
  export { User, users };
146
218
  //# sourceMappingURL=user.d.mts.map
@@ -1,8 +1,9 @@
1
1
  import "node:path";
2
2
  import "node:url";
3
3
  import.meta.url;
4
- import { datetime, mysqlTable, text } from "drizzle-orm/mysql-core";
5
- //#region src/schema/user.ts
4
+ import { datetime } from "./datetime.mjs";
5
+ import { boolean, mysqlTable, text } from "drizzle-orm/mysql-core";
6
+ // src/schema/user.ts
6
7
  /** Narrow `users` table definition. */
7
8
  const users = mysqlTable("users", {
8
9
  id: text("id").primaryKey(),
@@ -17,9 +18,12 @@ const users = mysqlTable("users", {
17
18
  createdAt: datetime("created_at", {
18
19
  mode: "string",
19
20
  fsp: 3
20
- }).notNull()
21
+ }).notNull(),
22
+ passwordHash: text("password_hash"),
23
+ displayNameOverride: text("display_name_override"),
24
+ authProvider: text("auth_provider").$type().notNull().default("oidc"),
25
+ disabled: boolean("disabled").notNull().default(false)
21
26
  });
22
- //#endregion
23
27
  export { users };
24
28
 
25
29
  //# sourceMappingURL=user.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"user.mjs","names":[],"sources":["../../src/schema/user.ts"],"sourcesContent":["import type { SiteRole } from \"@storyshelf/core/types\";\nimport { mysqlTable, text, datetime } from \"drizzle-orm/mysql-core\";\n\n/** Narrow `users` table definition. */\nexport const users = mysqlTable(\"users\", {\n id: text(\"id\").primaryKey(),\n email: text(\"email\").notNull(),\n name: text(\"name\").notNull(),\n avatarUrl: text(\"avatar_url\"),\n role: text(\"role\").$type<SiteRole>().notNull().default(\"member\"),\n lastLoginAt: datetime(\"last_login_at\", { mode: \"string\", fsp: 3 }),\n createdAt: datetime(\"created_at\", { mode: \"string\", fsp: 3 }).notNull(),\n});\n\n/** A user row. */\nexport interface User {\n id: string;\n email: string;\n name: string;\n avatarUrl: string | null;\n role: SiteRole;\n lastLoginAt: string | null;\n createdAt: string;\n}\n"],"mappings":";;;;;;AAIA,MAAa,QAAQ,WAAW,SAAS;CACvC,IAAI,KAAK,IAAI,CAAC,CAAC,WAAW;CAC1B,OAAO,KAAK,OAAO,CAAC,CAAC,QAAQ;CAC7B,MAAM,KAAK,MAAM,CAAC,CAAC,QAAQ;CAC3B,WAAW,KAAK,YAAY;CAC5B,MAAM,KAAK,MAAM,CAAC,CAAC,MAAgB,CAAC,CAAC,QAAQ,CAAC,CAAC,QAAQ,QAAQ;CAC/D,aAAa,SAAS,iBAAiB;EAAE,MAAM;EAAU,KAAK;CAAE,CAAC;CACjE,WAAW,SAAS,cAAc;EAAE,MAAM;EAAU,KAAK;CAAE,CAAC,CAAC,CAAC,QAAQ;AACxE,CAAC"}
1
+ {"version":3,"file":"user.mjs","names":[],"sources":["../../src/schema/user.ts"],"sourcesContent":["import type { SiteRole } from \"@storyshelf/core/types\";\nimport { boolean, mysqlTable, text } from \"drizzle-orm/mysql-core\";\nimport { datetime } from \"./datetime.ts\";\n\n/** Narrow `users` table definition. */\nexport const users = mysqlTable(\"users\", {\n id: text(\"id\").primaryKey(),\n email: text(\"email\").notNull(),\n name: text(\"name\").notNull(),\n avatarUrl: text(\"avatar_url\"),\n role: text(\"role\").$type<SiteRole>().notNull().default(\"member\"),\n lastLoginAt: datetime(\"last_login_at\", { mode: \"string\", fsp: 3 }),\n createdAt: datetime(\"created_at\", { mode: \"string\", fsp: 3 }).notNull(),\n passwordHash: text(\"password_hash\"),\n displayNameOverride: text(\"display_name_override\"),\n authProvider: text(\"auth_provider\")\n .$type<\"local\" | \"oidc\" | \"shared\">()\n .notNull()\n .default(\"oidc\"),\n disabled: boolean(\"disabled\").notNull().default(false),\n});\n\n/** A user row. */\nexport interface User {\n id: string;\n email: string;\n name: string;\n avatarUrl: string | null;\n role: SiteRole;\n lastLoginAt: string | null;\n createdAt: string;\n passwordHash: string | null;\n displayNameOverride: string | null;\n authProvider: \"local\" | \"oidc\" | \"shared\";\n disabled: boolean;\n}\n"],"mappings":";;;;;;;AAKA,MAAa,QAAQ,WAAW,SAAS;CACvC,IAAI,KAAK,IAAI,CAAC,CAAC,WAAW;CAC1B,OAAO,KAAK,OAAO,CAAC,CAAC,QAAQ;CAC7B,MAAM,KAAK,MAAM,CAAC,CAAC,QAAQ;CAC3B,WAAW,KAAK,YAAY;CAC5B,MAAM,KAAK,MAAM,CAAC,CAAC,MAAgB,CAAC,CAAC,QAAQ,CAAC,CAAC,QAAQ,QAAQ;CAC/D,aAAa,SAAS,iBAAiB;EAAE,MAAM;EAAU,KAAK;CAAE,CAAC;CACjE,WAAW,SAAS,cAAc;EAAE,MAAM;EAAU,KAAK;CAAE,CAAC,CAAC,CAAC,QAAQ;CACtE,cAAc,KAAK,eAAe;CAClC,qBAAqB,KAAK,uBAAuB;CACjD,cAAc,KAAK,eAAe,CAAC,CAChC,MAAmC,CAAC,CACpC,QAAQ,CAAC,CACT,QAAQ,MAAM;CACjB,UAAU,QAAQ,UAAU,CAAC,CAAC,QAAQ,CAAC,CAAC,QAAQ,KAAK;AACvD,CAAC"}