@coursebuilder/adapter-drizzle 0.0.3 → 0.0.5

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 (239) hide show
  1. package/dist/chunk-6CBAFOL3.js +38 -0
  2. package/dist/chunk-AIDEJDKJ.js +44 -0
  3. package/dist/chunk-BRGTUNY2.js +78 -0
  4. package/dist/chunk-H4MXNDWO.js +34 -0
  5. package/dist/chunk-ICL7XZ2Y.js +50 -0
  6. package/dist/chunk-JD4KFACE.js +43 -0
  7. package/dist/chunk-JQFZOCAU.js +4099 -0
  8. package/dist/chunk-KI47TR7F.js +47 -0
  9. package/dist/chunk-KVN3JV7C.js +60 -0
  10. package/dist/chunk-LLWSIKQV.js +18 -0
  11. package/dist/chunk-MBQ3TMHH.js +44 -0
  12. package/dist/chunk-NISOQSUL.js +47 -0
  13. package/dist/chunk-PUGK2AEH.js +746 -0
  14. package/dist/chunk-RMRO5TA7.js +228 -0
  15. package/dist/chunk-SFJM6FKE.js +36 -0
  16. package/dist/chunk-SQR6UWVO.js +225 -0
  17. package/dist/chunk-TA6VLEV5.js +45 -0
  18. package/dist/chunk-TMQIGK3N.js +36 -0
  19. package/dist/chunk-US2EXVMI.js +42 -0
  20. package/dist/chunk-UY3DVPP3.js +48 -0
  21. package/dist/chunk-VEFCDI73.js +67 -0
  22. package/dist/chunk-VNI36MMC.js +7 -0
  23. package/dist/chunk-VZABQCFH.js +40 -0
  24. package/dist/index.d.ts +15 -0
  25. package/dist/index.js +54 -0
  26. package/dist/lib/mysql/index.cjs +5414 -0
  27. package/dist/lib/mysql/index.cjs.map +1 -0
  28. package/dist/lib/mysql/index.d.ts +5713 -0
  29. package/dist/lib/mysql/index.js +30 -0
  30. package/dist/lib/mysql/index.js.map +1 -0
  31. package/dist/lib/mysql/schemas/auth/accounts.cjs +177 -0
  32. package/dist/lib/mysql/schemas/auth/accounts.cjs.map +1 -0
  33. package/dist/lib/mysql/schemas/auth/accounts.d.ts +184 -0
  34. package/dist/lib/mysql/schemas/auth/accounts.js +12 -0
  35. package/dist/lib/mysql/schemas/auth/accounts.js.map +1 -0
  36. package/dist/lib/mysql/schemas/auth/permissions.cjs +155 -0
  37. package/dist/lib/mysql/schemas/auth/permissions.cjs.map +1 -0
  38. package/dist/lib/mysql/schemas/auth/permissions.d.ts +100 -0
  39. package/dist/lib/mysql/schemas/auth/permissions.js +12 -0
  40. package/dist/lib/mysql/schemas/auth/permissions.js.map +1 -0
  41. package/dist/lib/mysql/schemas/auth/role-permissions.cjs +200 -0
  42. package/dist/lib/mysql/schemas/auth/role-permissions.cjs.map +1 -0
  43. package/dist/lib/mysql/schemas/auth/role-permissions.d.ts +89 -0
  44. package/dist/lib/mysql/schemas/auth/role-permissions.js +12 -0
  45. package/dist/lib/mysql/schemas/auth/role-permissions.js.map +1 -0
  46. package/dist/lib/mysql/schemas/auth/roles.cjs +157 -0
  47. package/dist/lib/mysql/schemas/auth/roles.cjs.map +1 -0
  48. package/dist/lib/mysql/schemas/auth/roles.d.ts +100 -0
  49. package/dist/lib/mysql/schemas/auth/roles.js +12 -0
  50. package/dist/lib/mysql/schemas/auth/roles.js.map +1 -0
  51. package/dist/lib/mysql/schemas/auth/sessions.cjs +156 -0
  52. package/dist/lib/mysql/schemas/auth/sessions.cjs.map +1 -0
  53. package/dist/lib/mysql/schemas/auth/sessions.d.ts +52 -0
  54. package/dist/lib/mysql/schemas/auth/sessions.js +13 -0
  55. package/dist/lib/mysql/schemas/auth/sessions.js.map +1 -0
  56. package/dist/lib/mysql/schemas/auth/user-permissions.cjs +207 -0
  57. package/dist/lib/mysql/schemas/auth/user-permissions.cjs.map +1 -0
  58. package/dist/lib/mysql/schemas/auth/user-permissions.d.ts +89 -0
  59. package/dist/lib/mysql/schemas/auth/user-permissions.js +12 -0
  60. package/dist/lib/mysql/schemas/auth/user-permissions.js.map +1 -0
  61. package/dist/lib/mysql/schemas/auth/user-roles.cjs +205 -0
  62. package/dist/lib/mysql/schemas/auth/user-roles.cjs.map +1 -0
  63. package/dist/lib/mysql/schemas/auth/user-roles.d.ts +89 -0
  64. package/dist/lib/mysql/schemas/auth/user-roles.js +12 -0
  65. package/dist/lib/mysql/schemas/auth/user-roles.js.map +1 -0
  66. package/dist/lib/mysql/schemas/auth/users.cjs +364 -0
  67. package/dist/lib/mysql/schemas/auth/users.cjs.map +1 -0
  68. package/dist/lib/mysql/schemas/auth/users.d.ts +105 -0
  69. package/dist/lib/mysql/schemas/auth/users.js +12 -0
  70. package/dist/lib/mysql/schemas/auth/users.js.map +1 -0
  71. package/dist/lib/mysql/schemas/auth/verification-tokens.cjs +57 -0
  72. package/dist/lib/mysql/schemas/auth/verification-tokens.cjs.map +1 -0
  73. package/dist/lib/mysql/schemas/auth/verification-tokens.d.ts +60 -0
  74. package/dist/lib/mysql/schemas/auth/verification-tokens.js +8 -0
  75. package/dist/lib/mysql/schemas/auth/verification-tokens.js.map +1 -0
  76. package/dist/lib/mysql/schemas/commerce/coupon.cjs +81 -0
  77. package/dist/lib/mysql/schemas/commerce/coupon.cjs.map +1 -0
  78. package/dist/lib/mysql/schemas/commerce/coupon.d.ts +168 -0
  79. package/dist/lib/mysql/schemas/commerce/coupon.js +8 -0
  80. package/dist/lib/mysql/schemas/commerce/coupon.js.map +1 -0
  81. package/dist/lib/mysql/schemas/commerce/merchant-account.cjs +61 -0
  82. package/dist/lib/mysql/schemas/commerce/merchant-account.cjs.map +1 -0
  83. package/dist/lib/mysql/schemas/commerce/merchant-account.d.ts +72 -0
  84. package/dist/lib/mysql/schemas/commerce/merchant-account.js +8 -0
  85. package/dist/lib/mysql/schemas/commerce/merchant-account.js.map +1 -0
  86. package/dist/lib/mysql/schemas/commerce/merchant-charge.cjs +71 -0
  87. package/dist/lib/mysql/schemas/commerce/merchant-charge.cjs.map +1 -0
  88. package/dist/lib/mysql/schemas/commerce/merchant-charge.d.ts +108 -0
  89. package/dist/lib/mysql/schemas/commerce/merchant-charge.js +8 -0
  90. package/dist/lib/mysql/schemas/commerce/merchant-charge.js.map +1 -0
  91. package/dist/lib/mysql/schemas/commerce/merchant-coupon.cjs +64 -0
  92. package/dist/lib/mysql/schemas/commerce/merchant-coupon.cjs.map +1 -0
  93. package/dist/lib/mysql/schemas/commerce/merchant-coupon.d.ts +84 -0
  94. package/dist/lib/mysql/schemas/commerce/merchant-coupon.js +8 -0
  95. package/dist/lib/mysql/schemas/commerce/merchant-coupon.js.map +1 -0
  96. package/dist/lib/mysql/schemas/commerce/merchant-customer.cjs +65 -0
  97. package/dist/lib/mysql/schemas/commerce/merchant-customer.cjs.map +1 -0
  98. package/dist/lib/mysql/schemas/commerce/merchant-customer.d.ts +84 -0
  99. package/dist/lib/mysql/schemas/commerce/merchant-customer.js +8 -0
  100. package/dist/lib/mysql/schemas/commerce/merchant-customer.js.map +1 -0
  101. package/dist/lib/mysql/schemas/commerce/merchant-price.cjs +68 -0
  102. package/dist/lib/mysql/schemas/commerce/merchant-price.cjs.map +1 -0
  103. package/dist/lib/mysql/schemas/commerce/merchant-price.d.ts +96 -0
  104. package/dist/lib/mysql/schemas/commerce/merchant-price.js +8 -0
  105. package/dist/lib/mysql/schemas/commerce/merchant-price.js.map +1 -0
  106. package/dist/lib/mysql/schemas/commerce/merchant-product.cjs +65 -0
  107. package/dist/lib/mysql/schemas/commerce/merchant-product.cjs.map +1 -0
  108. package/dist/lib/mysql/schemas/commerce/merchant-product.d.ts +84 -0
  109. package/dist/lib/mysql/schemas/commerce/merchant-product.js +8 -0
  110. package/dist/lib/mysql/schemas/commerce/merchant-product.js.map +1 -0
  111. package/dist/lib/mysql/schemas/commerce/merchant-session.cjs +55 -0
  112. package/dist/lib/mysql/schemas/commerce/merchant-session.cjs.map +1 -0
  113. package/dist/lib/mysql/schemas/commerce/merchant-session.d.ts +48 -0
  114. package/dist/lib/mysql/schemas/commerce/merchant-session.js +8 -0
  115. package/dist/lib/mysql/schemas/commerce/merchant-session.js.map +1 -0
  116. package/dist/lib/mysql/schemas/commerce/price.cjs +66 -0
  117. package/dist/lib/mysql/schemas/commerce/price.cjs.map +1 -0
  118. package/dist/lib/mysql/schemas/commerce/price.d.ts +96 -0
  119. package/dist/lib/mysql/schemas/commerce/price.js +8 -0
  120. package/dist/lib/mysql/schemas/commerce/price.js.map +1 -0
  121. package/dist/lib/mysql/schemas/commerce/product.cjs +63 -0
  122. package/dist/lib/mysql/schemas/commerce/product.cjs.map +1 -0
  123. package/dist/lib/mysql/schemas/commerce/product.d.ts +96 -0
  124. package/dist/lib/mysql/schemas/commerce/product.js +8 -0
  125. package/dist/lib/mysql/schemas/commerce/product.js.map +1 -0
  126. package/dist/lib/mysql/schemas/commerce/purchase-user-transfer.cjs +88 -0
  127. package/dist/lib/mysql/schemas/commerce/purchase-user-transfer.cjs.map +1 -0
  128. package/dist/lib/mysql/schemas/commerce/purchase-user-transfer.d.ts +132 -0
  129. package/dist/lib/mysql/schemas/commerce/purchase-user-transfer.js +8 -0
  130. package/dist/lib/mysql/schemas/commerce/purchase-user-transfer.js.map +1 -0
  131. package/dist/lib/mysql/schemas/commerce/purchase.cjs +99 -0
  132. package/dist/lib/mysql/schemas/commerce/purchase.cjs.map +1 -0
  133. package/dist/lib/mysql/schemas/commerce/purchase.d.ts +216 -0
  134. package/dist/lib/mysql/schemas/commerce/purchase.js +8 -0
  135. package/dist/lib/mysql/schemas/commerce/purchase.js.map +1 -0
  136. package/dist/lib/mysql/schemas/communication/communication-channel.cjs +59 -0
  137. package/dist/lib/mysql/schemas/communication/communication-channel.cjs.map +1 -0
  138. package/dist/lib/mysql/schemas/communication/communication-channel.d.ts +96 -0
  139. package/dist/lib/mysql/schemas/communication/communication-channel.js +8 -0
  140. package/dist/lib/mysql/schemas/communication/communication-channel.js.map +1 -0
  141. package/dist/lib/mysql/schemas/communication/communication-preference-types.cjs +57 -0
  142. package/dist/lib/mysql/schemas/communication/communication-preference-types.cjs.map +1 -0
  143. package/dist/lib/mysql/schemas/communication/communication-preference-types.d.ts +96 -0
  144. package/dist/lib/mysql/schemas/communication/communication-preference-types.js +8 -0
  145. package/dist/lib/mysql/schemas/communication/communication-preference-types.js.map +1 -0
  146. package/dist/lib/mysql/schemas/communication/communication-preferences.cjs +253 -0
  147. package/dist/lib/mysql/schemas/communication/communication-preferences.cjs.map +1 -0
  148. package/dist/lib/mysql/schemas/communication/communication-preferences.d.ts +150 -0
  149. package/dist/lib/mysql/schemas/communication/communication-preferences.js +12 -0
  150. package/dist/lib/mysql/schemas/communication/communication-preferences.js.map +1 -0
  151. package/dist/lib/mysql/schemas/content/content-contributions.cjs +252 -0
  152. package/dist/lib/mysql/schemas/content/content-contributions.cjs.map +1 -0
  153. package/dist/lib/mysql/schemas/content/content-contributions.d.ts +114 -0
  154. package/dist/lib/mysql/schemas/content/content-contributions.js +12 -0
  155. package/dist/lib/mysql/schemas/content/content-contributions.js.map +1 -0
  156. package/dist/lib/mysql/schemas/content/content-resource-resource.cjs +179 -0
  157. package/dist/lib/mysql/schemas/content/content-resource-resource.cjs.map +1 -0
  158. package/dist/lib/mysql/schemas/content/content-resource-resource.d.ts +101 -0
  159. package/dist/lib/mysql/schemas/content/content-resource-resource.js +12 -0
  160. package/dist/lib/mysql/schemas/content/content-resource-resource.js.map +1 -0
  161. package/dist/lib/mysql/schemas/content/content-resource.cjs +246 -0
  162. package/dist/lib/mysql/schemas/content/content-resource.cjs.map +1 -0
  163. package/dist/lib/mysql/schemas/content/content-resource.d.ts +103 -0
  164. package/dist/lib/mysql/schemas/content/content-resource.js +12 -0
  165. package/dist/lib/mysql/schemas/content/content-resource.js.map +1 -0
  166. package/dist/lib/mysql/schemas/content/contribution-types.cjs +162 -0
  167. package/dist/lib/mysql/schemas/content/contribution-types.cjs.map +1 -0
  168. package/dist/lib/mysql/schemas/content/contribution-types.d.ts +112 -0
  169. package/dist/lib/mysql/schemas/content/contribution-types.js +12 -0
  170. package/dist/lib/mysql/schemas/content/contribution-types.js.map +1 -0
  171. package/dist/lib/mysql/schemas/content/resource-progress.cjs +69 -0
  172. package/dist/lib/mysql/schemas/content/resource-progress.cjs.map +1 -0
  173. package/dist/lib/mysql/schemas/content/resource-progress.d.ts +84 -0
  174. package/dist/lib/mysql/schemas/content/resource-progress.js +8 -0
  175. package/dist/lib/mysql/schemas/content/resource-progress.js.map +1 -0
  176. package/dist/lib/pg.cjs +247 -0
  177. package/dist/lib/pg.cjs.map +1 -0
  178. package/{lib → dist/lib}/pg.d.ts +44 -41
  179. package/dist/lib/pg.js +10 -0
  180. package/dist/lib/pg.js.map +1 -0
  181. package/dist/lib/sqlite.cjs +259 -0
  182. package/dist/lib/sqlite.cjs.map +1 -0
  183. package/{lib → dist/lib}/sqlite.d.ts +53 -49
  184. package/dist/lib/sqlite.js +11 -0
  185. package/dist/lib/sqlite.js.map +1 -0
  186. package/dist/lib/utils.cjs +39 -0
  187. package/dist/lib/utils.cjs.map +1 -0
  188. package/dist/lib/utils.d.ts +28 -0
  189. package/dist/lib/utils.js +8 -0
  190. package/dist/lib/utils.js.map +1 -0
  191. package/package.json +20 -11
  192. package/src/index.ts +16 -11
  193. package/src/lib/mysql/index.ts +424 -0
  194. package/src/lib/mysql/schemas/auth/accounts.ts +52 -0
  195. package/src/lib/mysql/schemas/auth/permissions.ts +44 -0
  196. package/src/lib/mysql/schemas/auth/role-permissions.ts +56 -0
  197. package/src/lib/mysql/schemas/auth/roles.ts +46 -0
  198. package/src/lib/mysql/schemas/auth/sessions.ts +28 -0
  199. package/src/lib/mysql/schemas/auth/user-permissions.ts +56 -0
  200. package/src/lib/mysql/schemas/auth/user-roles.ts +56 -0
  201. package/src/lib/mysql/schemas/auth/users.ts +58 -0
  202. package/src/lib/mysql/schemas/auth/verification-tokens.ts +24 -0
  203. package/src/lib/mysql/schemas/commerce/coupon.ts +47 -0
  204. package/src/lib/mysql/schemas/commerce/merchant-account.ts +31 -0
  205. package/src/lib/mysql/schemas/commerce/merchant-charge.ts +44 -0
  206. package/src/lib/mysql/schemas/commerce/merchant-coupon.ts +38 -0
  207. package/src/lib/mysql/schemas/commerce/merchant-customer.ts +38 -0
  208. package/src/lib/mysql/schemas/commerce/merchant-price.ts +41 -0
  209. package/src/lib/mysql/schemas/commerce/merchant-product.ts +38 -0
  210. package/src/lib/mysql/schemas/commerce/merchant-session.ts +22 -0
  211. package/src/lib/mysql/schemas/commerce/price.ts +32 -0
  212. package/src/lib/mysql/schemas/commerce/product.ts +31 -0
  213. package/src/lib/mysql/schemas/commerce/purchase-user-transfer.ts +46 -0
  214. package/src/lib/mysql/schemas/commerce/purchase.ts +48 -0
  215. package/src/lib/mysql/schemas/communication/communication-channel.ts +35 -0
  216. package/src/lib/mysql/schemas/communication/communication-preference-types.ts +30 -0
  217. package/src/lib/mysql/schemas/communication/communication-preferences.ts +78 -0
  218. package/src/lib/mysql/schemas/content/content-contributions.ts +70 -0
  219. package/src/lib/mysql/schemas/content/content-resource-resource.ts +60 -0
  220. package/src/lib/mysql/schemas/content/content-resource.ts +57 -0
  221. package/src/lib/mysql/schemas/content/contribution-types.ts +49 -0
  222. package/src/lib/mysql/schemas/content/resource-progress.ts +38 -0
  223. package/src/lib/pg.ts +272 -252
  224. package/src/lib/sqlite.ts +261 -201
  225. package/src/lib/utils.ts +24 -21
  226. package/index.d.ts +0 -6
  227. package/index.d.ts.map +0 -1
  228. package/index.js +0 -20
  229. package/lib/mysql.d.ts +0 -505
  230. package/lib/mysql.d.ts.map +0 -1
  231. package/lib/mysql.js +0 -319
  232. package/lib/pg.d.ts.map +0 -1
  233. package/lib/pg.js +0 -231
  234. package/lib/sqlite.d.ts.map +0 -1
  235. package/lib/sqlite.js +0 -189
  236. package/lib/utils.d.ts +0 -26
  237. package/lib/utils.d.ts.map +0 -1
  238. package/lib/utils.js +0 -7
  239. package/src/lib/mysql.ts +0 -402
@@ -0,0 +1,228 @@
1
+ import {
2
+ stripUndefined
3
+ } from "./chunk-LLWSIKQV.js";
4
+ import {
5
+ __name
6
+ } from "./chunk-VNI36MMC.js";
7
+
8
+ // src/lib/sqlite.ts
9
+ import { and, eq, sql } from "drizzle-orm";
10
+ import { sqliteTable as defaultSqliteTableFn, integer, primaryKey, text } from "drizzle-orm/sqlite-core";
11
+ function createTables(sqliteTable) {
12
+ const users = sqliteTable("user", {
13
+ id: text("id").notNull().primaryKey(),
14
+ name: text("name"),
15
+ role: text("role", {
16
+ enum: [
17
+ "user",
18
+ "admin"
19
+ ]
20
+ }).default("user"),
21
+ email: text("email").notNull(),
22
+ emailVerified: integer("emailVerified", {
23
+ mode: "timestamp_ms"
24
+ }),
25
+ image: text("image")
26
+ });
27
+ const accounts = sqliteTable("account", {
28
+ userId: text("userId").notNull().references(() => users.id, {
29
+ onDelete: "cascade"
30
+ }),
31
+ type: text("type").$type().notNull(),
32
+ provider: text("provider").notNull(),
33
+ providerAccountId: text("providerAccountId").notNull(),
34
+ refresh_token: text("refresh_token"),
35
+ access_token: text("access_token"),
36
+ expires_at: integer("expires_at"),
37
+ token_type: text("token_type"),
38
+ scope: text("scope"),
39
+ id_token: text("id_token"),
40
+ session_state: text("session_state")
41
+ }, (account) => ({
42
+ pk: primaryKey({
43
+ columns: [
44
+ account.provider,
45
+ account.providerAccountId
46
+ ]
47
+ })
48
+ }));
49
+ const sessions = sqliteTable("session", {
50
+ sessionToken: text("sessionToken").notNull().primaryKey(),
51
+ userId: text("userId").notNull().references(() => users.id, {
52
+ onDelete: "cascade"
53
+ }),
54
+ expires: integer("expires", {
55
+ mode: "timestamp_ms"
56
+ }).notNull()
57
+ });
58
+ const verificationTokens = sqliteTable("verificationToken", {
59
+ identifier: text("identifier").notNull(),
60
+ token: text("token").notNull(),
61
+ expires: integer("expires", {
62
+ mode: "timestamp_ms"
63
+ }).notNull()
64
+ }, (vt) => ({
65
+ pk: primaryKey({
66
+ columns: [
67
+ vt.identifier,
68
+ vt.token
69
+ ]
70
+ })
71
+ }));
72
+ const contentResource = sqliteTable("contentResource", {
73
+ id: text("id", {
74
+ length: 255
75
+ }).notNull().primaryKey(),
76
+ type: text("type", {
77
+ length: 255
78
+ }).notNull(),
79
+ createdById: text("createdById", {
80
+ length: 255
81
+ }).notNull(),
82
+ fields: text("metadata", {
83
+ mode: "json"
84
+ }).$type().default({}),
85
+ createdAt: integer("createdAt", {
86
+ mode: "timestamp_ms"
87
+ }).default(sql`CURRENT_TIME`),
88
+ updatedAt: integer("updatedAt", {
89
+ mode: "timestamp_ms"
90
+ }).default(sql`CURRENT_TIME`),
91
+ deletedAt: integer("deletedAt", {
92
+ mode: "timestamp_ms"
93
+ })
94
+ });
95
+ const contentResourceResource = sqliteTable("contentResourceResource", {
96
+ resourceOfId: text("resourceOfId", {
97
+ length: 255
98
+ }).notNull(),
99
+ resourceId: text("resourceId", {
100
+ length: 255
101
+ }).notNull(),
102
+ position: integer("position").notNull().default(0),
103
+ metadata: text("metadata", {
104
+ mode: "json"
105
+ }).$type().default({}),
106
+ createdAt: integer("createdAt", {
107
+ mode: "timestamp_ms"
108
+ }).default(sql`CURRENT_TIME`),
109
+ updatedAt: integer("updatedAt", {
110
+ mode: "timestamp_ms"
111
+ }).default(sql`CURRENT_TIME`),
112
+ deletedAt: integer("deletedAt", {
113
+ mode: "timestamp_ms"
114
+ })
115
+ }, (crr) => ({
116
+ pk: primaryKey({
117
+ columns: [
118
+ crr.resourceOfId,
119
+ crr.resourceId
120
+ ]
121
+ })
122
+ }));
123
+ return {
124
+ users,
125
+ accounts,
126
+ sessions,
127
+ verificationTokens,
128
+ contentResource,
129
+ contentResourceResource
130
+ };
131
+ }
132
+ __name(createTables, "createTables");
133
+ function SQLiteDrizzleAdapter(client, tableFn = defaultSqliteTableFn) {
134
+ const { users, accounts, sessions, verificationTokens, contentResource } = createTables(tableFn);
135
+ return {
136
+ async updateContentResourceFields(options) {
137
+ return null;
138
+ },
139
+ async getVideoResource(id) {
140
+ return null;
141
+ },
142
+ async createContentResource(resource) {
143
+ return client.insert(contentResource).values({
144
+ ...resource,
145
+ id: crypto.randomUUID()
146
+ }).returning().get();
147
+ },
148
+ async getContentResource(data) {
149
+ const result = await client.select().from(contentResource).where(eq(contentResource.id, data)).get();
150
+ return result ?? null;
151
+ },
152
+ async createUser(data) {
153
+ return client.insert(users).values({
154
+ ...data,
155
+ id: crypto.randomUUID()
156
+ }).returning().get();
157
+ },
158
+ async getUser(data) {
159
+ const result = await client.select().from(users).where(eq(users.id, data)).get();
160
+ return result ?? null;
161
+ },
162
+ async getUserByEmail(data) {
163
+ const result = await client.select().from(users).where(eq(users.email, data)).get();
164
+ return result ?? null;
165
+ },
166
+ createSession(data) {
167
+ return client.insert(sessions).values(data).returning().get();
168
+ },
169
+ async getSessionAndUser(data) {
170
+ const result = await client.select({
171
+ session: sessions,
172
+ user: users
173
+ }).from(sessions).where(eq(sessions.sessionToken, data)).innerJoin(users, eq(users.id, sessions.userId)).get();
174
+ return result ?? null;
175
+ },
176
+ async updateUser(data) {
177
+ if (!data.id) {
178
+ throw new Error("No user id.");
179
+ }
180
+ const result = await client.update(users).set(data).where(eq(users.id, data.id)).returning().get();
181
+ return result ?? null;
182
+ },
183
+ async updateSession(data) {
184
+ const result = await client.update(sessions).set(data).where(eq(sessions.sessionToken, data.sessionToken)).returning().get();
185
+ return result ?? null;
186
+ },
187
+ async linkAccount(rawAccount) {
188
+ return stripUndefined(await client.insert(accounts).values(rawAccount).returning().get());
189
+ },
190
+ async getUserByAccount(account) {
191
+ const results = await client.select().from(accounts).leftJoin(users, eq(users.id, accounts.userId)).where(and(eq(accounts.provider, account.provider), eq(accounts.providerAccountId, account.providerAccountId))).get();
192
+ if (!results) {
193
+ return null;
194
+ }
195
+ return Promise.resolve(results).then((results2) => results2.user);
196
+ },
197
+ async deleteSession(sessionToken) {
198
+ const result = await client.delete(sessions).where(eq(sessions.sessionToken, sessionToken)).returning().get();
199
+ return result ?? null;
200
+ },
201
+ async createVerificationToken(token) {
202
+ const result = await client.insert(verificationTokens).values(token).returning().get();
203
+ return result ?? null;
204
+ },
205
+ async useVerificationToken(token) {
206
+ try {
207
+ const result = await client.delete(verificationTokens).where(and(eq(verificationTokens.identifier, token.identifier), eq(verificationTokens.token, token.token))).returning().get();
208
+ return result ?? null;
209
+ } catch (err) {
210
+ throw new Error("No verification token found.");
211
+ }
212
+ },
213
+ async deleteUser(id) {
214
+ const result = await client.delete(users).where(eq(users.id, id)).returning().get();
215
+ return result ?? null;
216
+ },
217
+ async unlinkAccount(account) {
218
+ await client.delete(accounts).where(and(eq(accounts.providerAccountId, account.providerAccountId), eq(accounts.provider, account.provider))).run();
219
+ }
220
+ };
221
+ }
222
+ __name(SQLiteDrizzleAdapter, "SQLiteDrizzleAdapter");
223
+
224
+ export {
225
+ createTables,
226
+ SQLiteDrizzleAdapter
227
+ };
228
+ //# sourceMappingURL=chunk-RMRO5TA7.js.map
@@ -0,0 +1,36 @@
1
+ import {
2
+ __name
3
+ } from "./chunk-VNI36MMC.js";
4
+
5
+ // src/lib/mysql/schemas/communication/communication-preference-types.ts
6
+ import { boolean, text, timestamp, varchar } from "drizzle-orm/mysql-core";
7
+ function getCommunicationPreferenceTypesSchema(mysqlTable) {
8
+ return mysqlTable("communicationPreferenceType", {
9
+ id: varchar("id", {
10
+ length: 255
11
+ }).notNull().primaryKey(),
12
+ name: varchar("name", {
13
+ length: 255
14
+ }).notNull(),
15
+ description: text("description"),
16
+ active: boolean("active").notNull().default(true),
17
+ createdAt: timestamp("createdAt", {
18
+ mode: "date",
19
+ fsp: 3
20
+ }).defaultNow(),
21
+ updatedAt: timestamp("updatedAt", {
22
+ mode: "date",
23
+ fsp: 3
24
+ }),
25
+ deletedAt: timestamp("deletedAt", {
26
+ mode: "date",
27
+ fsp: 3
28
+ })
29
+ });
30
+ }
31
+ __name(getCommunicationPreferenceTypesSchema, "getCommunicationPreferenceTypesSchema");
32
+
33
+ export {
34
+ getCommunicationPreferenceTypesSchema
35
+ };
36
+ //# sourceMappingURL=chunk-SFJM6FKE.js.map
@@ -0,0 +1,225 @@
1
+ import {
2
+ __name
3
+ } from "./chunk-VNI36MMC.js";
4
+
5
+ // src/lib/pg.ts
6
+ import { and, eq } from "drizzle-orm";
7
+ import { pgTable as defaultPgTableFn, integer, json, pgEnum, primaryKey, text, timestamp, varchar } from "drizzle-orm/pg-core";
8
+ function createTables(pgTable) {
9
+ const users = pgTable("user", {
10
+ id: text("id").notNull().primaryKey(),
11
+ name: text("name"),
12
+ email: text("email").notNull(),
13
+ emailVerified: timestamp("emailVerified", {
14
+ mode: "date"
15
+ }),
16
+ role: pgEnum("role", [
17
+ "user",
18
+ "admin"
19
+ ])("role").default("user"),
20
+ image: text("image")
21
+ });
22
+ const accounts = pgTable("account", {
23
+ userId: text("userId").notNull().references(() => users.id, {
24
+ onDelete: "cascade"
25
+ }),
26
+ type: text("type").$type().notNull(),
27
+ provider: text("provider").notNull(),
28
+ providerAccountId: text("providerAccountId").notNull(),
29
+ refresh_token: text("refresh_token"),
30
+ access_token: text("access_token"),
31
+ expires_at: integer("expires_at"),
32
+ token_type: text("token_type"),
33
+ scope: text("scope"),
34
+ id_token: text("id_token"),
35
+ session_state: text("session_state")
36
+ }, (account) => ({
37
+ pk: primaryKey({
38
+ columns: [
39
+ account.provider,
40
+ account.providerAccountId
41
+ ]
42
+ })
43
+ }));
44
+ const sessions = pgTable("session", {
45
+ sessionToken: text("sessionToken").notNull().primaryKey(),
46
+ userId: text("userId").notNull().references(() => users.id, {
47
+ onDelete: "cascade"
48
+ }),
49
+ expires: timestamp("expires", {
50
+ mode: "date"
51
+ }).notNull()
52
+ });
53
+ const verificationTokens = pgTable("verificationToken", {
54
+ identifier: text("identifier").notNull(),
55
+ token: text("token").notNull(),
56
+ expires: timestamp("expires", {
57
+ mode: "date"
58
+ }).notNull()
59
+ }, (vt) => ({
60
+ pk: primaryKey({
61
+ columns: [
62
+ vt.identifier,
63
+ vt.token
64
+ ]
65
+ })
66
+ }));
67
+ const contentResource = pgTable("contentResource", {
68
+ id: varchar("id", {
69
+ length: 255
70
+ }).notNull().primaryKey(),
71
+ type: varchar("type", {
72
+ length: 255
73
+ }).notNull(),
74
+ createdById: varchar("createdById", {
75
+ length: 255
76
+ }).notNull(),
77
+ fields: json("fields").$type().default({}),
78
+ createdAt: timestamp("createdAt", {
79
+ mode: "date",
80
+ precision: 6,
81
+ withTimezone: true
82
+ }).defaultNow(),
83
+ updatedAt: timestamp("updatedAt", {
84
+ mode: "date",
85
+ precision: 6,
86
+ withTimezone: true
87
+ }).defaultNow(),
88
+ deletedAt: timestamp("deletedAt", {
89
+ mode: "date",
90
+ precision: 6,
91
+ withTimezone: true
92
+ })
93
+ });
94
+ const contentResourceResource = pgTable("contentResourceResource", {
95
+ resourceOfId: varchar("resourceOfId", {
96
+ length: 255
97
+ }).notNull(),
98
+ resourceId: varchar("resourceId", {
99
+ length: 255
100
+ }).notNull(),
101
+ position: integer("position").notNull().default(0),
102
+ metadata: json("fields").$type().default({}),
103
+ createdAt: timestamp("createdAt", {
104
+ mode: "date",
105
+ precision: 6,
106
+ withTimezone: true
107
+ }).defaultNow(),
108
+ updatedAt: timestamp("updatedAt", {
109
+ mode: "date",
110
+ precision: 6,
111
+ withTimezone: true
112
+ }).defaultNow(),
113
+ deletedAt: timestamp("deletedAt", {
114
+ mode: "date",
115
+ precision: 6,
116
+ withTimezone: true
117
+ })
118
+ }, (crr) => ({
119
+ pk: primaryKey({
120
+ columns: [
121
+ crr.resourceOfId,
122
+ crr.resourceId
123
+ ]
124
+ })
125
+ }));
126
+ return {
127
+ users,
128
+ accounts,
129
+ sessions,
130
+ verificationTokens,
131
+ contentResource
132
+ };
133
+ }
134
+ __name(createTables, "createTables");
135
+ function pgDrizzleAdapter(client, tableFn = defaultPgTableFn) {
136
+ const { users, accounts, sessions, verificationTokens, contentResource } = createTables(tableFn);
137
+ return {
138
+ async updateContentResourceFields(options) {
139
+ return null;
140
+ },
141
+ async getVideoResource(id) {
142
+ return null;
143
+ },
144
+ async createContentResource(resource) {
145
+ return client.insert(contentResource).values({
146
+ ...resource,
147
+ id: crypto.randomUUID()
148
+ }).returning().then((res) => res[0] ?? null);
149
+ },
150
+ async getContentResource(data) {
151
+ const result = await client.select().from(contentResource).where(eq(contentResource.id, data)).then((res) => res[0] ?? null);
152
+ return result ?? null;
153
+ },
154
+ async createUser(data) {
155
+ return await client.insert(users).values({
156
+ ...data,
157
+ id: crypto.randomUUID()
158
+ }).returning().then((res) => res[0] ?? null);
159
+ },
160
+ async getUser(data) {
161
+ return await client.select().from(users).where(eq(users.id, data)).then((res) => res[0] ?? null);
162
+ },
163
+ async getUserByEmail(data) {
164
+ return await client.select().from(users).where(eq(users.email, data)).then((res) => res[0] ?? null);
165
+ },
166
+ async createSession(data) {
167
+ return await client.insert(sessions).values(data).returning().then((res) => res[0]);
168
+ },
169
+ async getSessionAndUser(data) {
170
+ return await client.select({
171
+ session: sessions,
172
+ user: users
173
+ }).from(sessions).where(eq(sessions.sessionToken, data)).innerJoin(users, eq(users.id, sessions.userId)).then((res) => res[0] ?? null);
174
+ },
175
+ async updateUser(data) {
176
+ if (!data.id) {
177
+ throw new Error("No user id.");
178
+ }
179
+ return await client.update(users).set(data).where(eq(users.id, data.id)).returning().then((res) => res[0]);
180
+ },
181
+ async updateSession(data) {
182
+ return await client.update(sessions).set(data).where(eq(sessions.sessionToken, data.sessionToken)).returning().then((res) => res[0]);
183
+ },
184
+ async linkAccount(rawAccount) {
185
+ await client.insert(accounts).values(rawAccount).returning().then((res) => res[0]);
186
+ },
187
+ async getUserByAccount(account) {
188
+ const dbAccount = await client.select().from(accounts).where(and(eq(accounts.providerAccountId, account.providerAccountId), eq(accounts.provider, account.provider))).leftJoin(users, eq(accounts.userId, users.id)).then((res) => res[0]) ?? null;
189
+ return dbAccount?.user ?? null;
190
+ },
191
+ async deleteSession(sessionToken) {
192
+ const session = await client.delete(sessions).where(eq(sessions.sessionToken, sessionToken)).returning().then((res) => res[0] ?? null);
193
+ return session;
194
+ },
195
+ async createVerificationToken(token) {
196
+ return await client.insert(verificationTokens).values(token).returning().then((res) => res[0]);
197
+ },
198
+ async useVerificationToken(token) {
199
+ try {
200
+ return await client.delete(verificationTokens).where(and(eq(verificationTokens.identifier, token.identifier), eq(verificationTokens.token, token.token))).returning().then((res) => res[0] ?? null);
201
+ } catch (err) {
202
+ throw new Error("No verification token found.");
203
+ }
204
+ },
205
+ async deleteUser(id) {
206
+ await client.delete(users).where(eq(users.id, id)).returning().then((res) => res[0] ?? null);
207
+ },
208
+ async unlinkAccount(account) {
209
+ const { type, provider, providerAccountId, userId } = await client.delete(accounts).where(and(eq(accounts.providerAccountId, account.providerAccountId), eq(accounts.provider, account.provider))).returning().then((res) => res[0] ?? null);
210
+ return {
211
+ provider,
212
+ type,
213
+ providerAccountId,
214
+ userId
215
+ };
216
+ }
217
+ };
218
+ }
219
+ __name(pgDrizzleAdapter, "pgDrizzleAdapter");
220
+
221
+ export {
222
+ createTables,
223
+ pgDrizzleAdapter
224
+ };
225
+ //# sourceMappingURL=chunk-SQR6UWVO.js.map
@@ -0,0 +1,45 @@
1
+ import {
2
+ __name
3
+ } from "./chunk-VNI36MMC.js";
4
+
5
+ // src/lib/mysql/schemas/commerce/price.ts
6
+ import { sql } from "drizzle-orm";
7
+ import { datetime, decimal, int, json, primaryKey, varchar } from "drizzle-orm/mysql-core";
8
+ function getPriceSchema(mysqlTable) {
9
+ return mysqlTable("prices", {
10
+ id: varchar("id", {
11
+ length: 191
12
+ }).notNull(),
13
+ productId: varchar("productId", {
14
+ length: 191
15
+ }),
16
+ nickname: varchar("nickname", {
17
+ length: 191
18
+ }),
19
+ status: int("status").default(0).notNull(),
20
+ unitAmount: decimal("unitAmount", {
21
+ precision: 10,
22
+ scale: 2
23
+ }).notNull(),
24
+ createdAt: datetime("createdAt", {
25
+ mode: "string",
26
+ fsp: 3
27
+ }).default(sql`CURRENT_TIMESTAMP(3)`).notNull(),
28
+ metadata: json("fields").$type().default({})
29
+ }, (table) => {
30
+ return {
31
+ priceId: primaryKey({
32
+ columns: [
33
+ table.id
34
+ ],
35
+ name: "Price_id"
36
+ })
37
+ };
38
+ });
39
+ }
40
+ __name(getPriceSchema, "getPriceSchema");
41
+
42
+ export {
43
+ getPriceSchema
44
+ };
45
+ //# sourceMappingURL=chunk-TA6VLEV5.js.map
@@ -0,0 +1,36 @@
1
+ import {
2
+ __name
3
+ } from "./chunk-VNI36MMC.js";
4
+
5
+ // src/lib/mysql/schemas/auth/verification-tokens.ts
6
+ import { primaryKey, timestamp, varchar } from "drizzle-orm/mysql-core";
7
+ function getVerificationTokensSchema(mysqlTable) {
8
+ return mysqlTable("verificationToken", {
9
+ identifier: varchar("identifier", {
10
+ length: 255
11
+ }).notNull(),
12
+ token: varchar("token", {
13
+ length: 255
14
+ }).notNull(),
15
+ expires: timestamp("expires", {
16
+ mode: "date"
17
+ }).notNull(),
18
+ createdAt: timestamp("createdAt", {
19
+ mode: "date",
20
+ fsp: 3
21
+ }).defaultNow()
22
+ }, (vt) => ({
23
+ pk: primaryKey({
24
+ columns: [
25
+ vt.identifier,
26
+ vt.token
27
+ ]
28
+ })
29
+ }));
30
+ }
31
+ __name(getVerificationTokensSchema, "getVerificationTokensSchema");
32
+
33
+ export {
34
+ getVerificationTokensSchema
35
+ };
36
+ //# sourceMappingURL=chunk-TMQIGK3N.js.map
@@ -0,0 +1,42 @@
1
+ import {
2
+ __name
3
+ } from "./chunk-VNI36MMC.js";
4
+
5
+ // src/lib/mysql/schemas/commerce/product.ts
6
+ import { sql } from "drizzle-orm";
7
+ import { datetime, int, json, primaryKey, varchar } from "drizzle-orm/mysql-core";
8
+ function getProductSchema(mysqlTable) {
9
+ return mysqlTable("products", {
10
+ id: varchar("id", {
11
+ length: 191
12
+ }).notNull(),
13
+ name: varchar("name", {
14
+ length: 191
15
+ }).notNull(),
16
+ key: varchar("key", {
17
+ length: 191
18
+ }),
19
+ metadata: json("fields").$type().default({}),
20
+ createdAt: datetime("createdAt", {
21
+ mode: "string",
22
+ fsp: 3
23
+ }).default(sql`CURRENT_TIMESTAMP(3)`).notNull(),
24
+ status: int("status").default(0).notNull(),
25
+ quantityAvailable: int("quantityAvailable").default(-1).notNull()
26
+ }, (table) => {
27
+ return {
28
+ productId: primaryKey({
29
+ columns: [
30
+ table.id
31
+ ],
32
+ name: "Product_id"
33
+ })
34
+ };
35
+ });
36
+ }
37
+ __name(getProductSchema, "getProductSchema");
38
+
39
+ export {
40
+ getProductSchema
41
+ };
42
+ //# sourceMappingURL=chunk-US2EXVMI.js.map
@@ -0,0 +1,48 @@
1
+ import {
2
+ __name
3
+ } from "./chunk-VNI36MMC.js";
4
+
5
+ // src/lib/mysql/schemas/content/resource-progress.ts
6
+ import { sql } from "drizzle-orm";
7
+ import { datetime, index, json, primaryKey, varchar } from "drizzle-orm/mysql-core";
8
+ function getResourceProgressSchema(mysqlTable) {
9
+ return mysqlTable("resourceProgresses", {
10
+ userId: varchar("userId", {
11
+ length: 191
12
+ }).notNull(),
13
+ contentResourceId: varchar("contentResourceId", {
14
+ length: 191
15
+ }),
16
+ metadata: json("fields").$type().default({}),
17
+ completedAt: datetime("completedAt", {
18
+ mode: "string",
19
+ fsp: 3
20
+ }),
21
+ updatedAt: datetime("updatedAt", {
22
+ mode: "string",
23
+ fsp: 3
24
+ }),
25
+ createdAt: datetime("createdAt", {
26
+ mode: "string",
27
+ fsp: 3
28
+ }).default(sql`CURRENT_TIMESTAMP(3)`).notNull()
29
+ }, (crp) => {
30
+ return {
31
+ userIdLessonIdIdx: index("crp_userId_contentResourceId_idx").on(crp.userId, crp.contentResourceId),
32
+ pk: primaryKey({
33
+ columns: [
34
+ crp.userId,
35
+ crp.contentResourceId
36
+ ]
37
+ }),
38
+ contentResourceIdIdx: index("contentResourceId_idx").on(crp.contentResourceId),
39
+ userIdIdx: index("resourceId_idx").on(crp.userId)
40
+ };
41
+ });
42
+ }
43
+ __name(getResourceProgressSchema, "getResourceProgressSchema");
44
+
45
+ export {
46
+ getResourceProgressSchema
47
+ };
48
+ //# sourceMappingURL=chunk-UY3DVPP3.js.map