@coursebuilder/adapter-drizzle 0.4.0 → 0.5.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.
- package/dist/{chunk-57CX5SOI.js → chunk-2UU2F4DM.js} +5 -4
- package/dist/{chunk-V23SCQL7.js → chunk-3NUCFLQJ.js} +2 -2
- package/dist/{chunk-Y7QZGEPT.js → chunk-4ZWS76VQ.js} +2 -2
- package/dist/{chunk-PPBEA4EM.js → chunk-6ON2O6UD.js} +2 -2
- package/dist/{chunk-ULEUIL2Y.js → chunk-BM5UKWXI.js} +3 -3
- package/dist/{chunk-IDINCRHK.js → chunk-CQNKTFXE.js} +3 -3
- package/dist/{chunk-N7UDJAI3.js → chunk-FRA4ZCRA.js} +462 -337
- package/dist/{chunk-J4LBG2TH.js → chunk-GINRTL6J.js} +2 -2
- package/dist/chunk-JZQ666KH.js +62 -0
- package/dist/{chunk-GLPDG7UE.js → chunk-KDEWFXEP.js} +2 -2
- package/dist/{chunk-MBB4GIJI.js → chunk-LERR6HQ3.js} +2 -2
- package/dist/{chunk-VDVCCU7D.js → chunk-LZHZDFNZ.js} +2 -2
- package/dist/{chunk-XJHSXR42.js → chunk-O6JECJRY.js} +4 -4
- package/dist/{chunk-BX5SO2JG.js → chunk-P4VXXTVA.js} +2 -2
- package/dist/{chunk-VXZRMVNY.js → chunk-QP6YMUQX.js} +2 -2
- package/dist/chunk-QTGVGIRO.js +54 -0
- package/dist/{chunk-ZD3R6UPJ.js → chunk-SRTIWWLG.js} +7 -7
- package/dist/{chunk-DL3UMWB4.js → chunk-TBM3AK3P.js} +3 -3
- package/dist/{chunk-FNYW3XKR.js → chunk-XIGJFVUM.js} +8 -8
- package/dist/{chunk-JKOYOL7A.js → chunk-YGRYHMCG.js} +2 -2
- package/dist/chunk-YVVXDJHI.js +56 -0
- package/dist/{chunk-A26D3TCA.js → chunk-Z245DYMP.js} +159 -62
- package/dist/index.js +22 -19
- package/dist/lib/mysql/index.cjs +992 -650
- package/dist/lib/mysql/index.cjs.map +1 -1
- package/dist/lib/mysql/index.d.cts +2064 -1148
- package/dist/lib/mysql/index.d.ts +2064 -1148
- package/dist/lib/mysql/index.js +22 -19
- package/dist/lib/mysql/schemas/auth/accounts.cjs +85 -77
- package/dist/lib/mysql/schemas/auth/accounts.cjs.map +1 -1
- package/dist/lib/mysql/schemas/auth/accounts.d.cts +17 -17
- package/dist/lib/mysql/schemas/auth/accounts.d.ts +17 -17
- package/dist/lib/mysql/schemas/auth/accounts.js +12 -12
- package/dist/lib/mysql/schemas/auth/device-access-token.cjs +214 -0
- package/dist/lib/mysql/schemas/auth/device-access-token.cjs.map +1 -0
- package/dist/lib/mysql/schemas/auth/device-access-token.d.cts +52 -0
- package/dist/lib/mysql/schemas/auth/device-access-token.d.ts +52 -0
- package/dist/lib/mysql/schemas/auth/device-access-token.js +22 -0
- package/dist/lib/mysql/schemas/auth/device-access-token.js.map +1 -0
- package/dist/lib/mysql/schemas/auth/device-verification.cjs +222 -0
- package/dist/lib/mysql/schemas/auth/device-verification.cjs.map +1 -0
- package/dist/lib/mysql/schemas/auth/device-verification.d.cts +88 -0
- package/dist/lib/mysql/schemas/auth/device-verification.d.ts +88 -0
- package/dist/lib/mysql/schemas/auth/device-verification.js +22 -0
- package/dist/lib/mysql/schemas/auth/device-verification.js.map +1 -0
- package/dist/lib/mysql/schemas/auth/permissions.cjs +1 -1
- package/dist/lib/mysql/schemas/auth/permissions.cjs.map +1 -1
- package/dist/lib/mysql/schemas/auth/permissions.d.cts +9 -9
- package/dist/lib/mysql/schemas/auth/permissions.d.ts +9 -9
- package/dist/lib/mysql/schemas/auth/permissions.js +1 -1
- package/dist/lib/mysql/schemas/auth/role-permissions.cjs +74 -66
- package/dist/lib/mysql/schemas/auth/role-permissions.cjs.map +1 -1
- package/dist/lib/mysql/schemas/auth/role-permissions.d.cts +10 -10
- package/dist/lib/mysql/schemas/auth/role-permissions.d.ts +10 -10
- package/dist/lib/mysql/schemas/auth/role-permissions.js +13 -13
- package/dist/lib/mysql/schemas/auth/roles.cjs +72 -64
- package/dist/lib/mysql/schemas/auth/roles.cjs.map +1 -1
- package/dist/lib/mysql/schemas/auth/roles.d.cts +10 -10
- package/dist/lib/mysql/schemas/auth/roles.d.ts +10 -10
- package/dist/lib/mysql/schemas/auth/roles.js +12 -12
- package/dist/lib/mysql/schemas/auth/sessions.cjs +75 -67
- package/dist/lib/mysql/schemas/auth/sessions.cjs.map +1 -1
- package/dist/lib/mysql/schemas/auth/sessions.d.cts +6 -6
- package/dist/lib/mysql/schemas/auth/sessions.d.ts +6 -6
- package/dist/lib/mysql/schemas/auth/sessions.js +13 -13
- package/dist/lib/mysql/schemas/auth/user-permissions.cjs +77 -69
- package/dist/lib/mysql/schemas/auth/user-permissions.cjs.map +1 -1
- package/dist/lib/mysql/schemas/auth/user-permissions.d.cts +10 -10
- package/dist/lib/mysql/schemas/auth/user-permissions.d.ts +10 -10
- package/dist/lib/mysql/schemas/auth/user-permissions.js +12 -12
- package/dist/lib/mysql/schemas/auth/user-prefs.cjs +222 -0
- package/dist/lib/mysql/schemas/auth/user-prefs.cjs.map +1 -0
- package/dist/lib/mysql/schemas/auth/user-prefs.d.cts +100 -0
- package/dist/lib/mysql/schemas/auth/user-prefs.d.ts +100 -0
- package/dist/lib/mysql/schemas/auth/user-prefs.js +21 -0
- package/dist/lib/mysql/schemas/auth/user-prefs.js.map +1 -0
- package/dist/lib/mysql/schemas/auth/user-roles.cjs +77 -69
- package/dist/lib/mysql/schemas/auth/user-roles.cjs.map +1 -1
- package/dist/lib/mysql/schemas/auth/user-roles.d.cts +10 -10
- package/dist/lib/mysql/schemas/auth/user-roles.d.ts +10 -10
- package/dist/lib/mysql/schemas/auth/user-roles.js +12 -12
- package/dist/lib/mysql/schemas/auth/users.cjs +263 -180
- package/dist/lib/mysql/schemas/auth/users.cjs.map +1 -1
- package/dist/lib/mysql/schemas/auth/users.d.cts +35 -21
- package/dist/lib/mysql/schemas/auth/users.d.ts +35 -21
- package/dist/lib/mysql/schemas/auth/users.js +12 -12
- package/dist/lib/mysql/schemas/auth/verification-tokens.cjs +1 -1
- package/dist/lib/mysql/schemas/auth/verification-tokens.cjs.map +1 -1
- package/dist/lib/mysql/schemas/auth/verification-tokens.d.cts +5 -5
- package/dist/lib/mysql/schemas/auth/verification-tokens.d.ts +5 -5
- package/dist/lib/mysql/schemas/auth/verification-tokens.js +1 -1
- package/dist/lib/mysql/schemas/commerce/coupon.cjs +75 -66
- package/dist/lib/mysql/schemas/commerce/coupon.cjs.map +1 -1
- package/dist/lib/mysql/schemas/commerce/coupon.d.cts +19 -19
- package/dist/lib/mysql/schemas/commerce/coupon.d.ts +19 -19
- package/dist/lib/mysql/schemas/commerce/coupon.js +12 -12
- package/dist/lib/mysql/schemas/commerce/merchant-account.cjs +1 -1
- package/dist/lib/mysql/schemas/commerce/merchant-account.cjs.map +1 -1
- package/dist/lib/mysql/schemas/commerce/merchant-account.d.cts +6 -6
- package/dist/lib/mysql/schemas/commerce/merchant-account.d.ts +6 -6
- package/dist/lib/mysql/schemas/commerce/merchant-account.js +1 -1
- package/dist/lib/mysql/schemas/commerce/merchant-charge.cjs +6 -5
- package/dist/lib/mysql/schemas/commerce/merchant-charge.cjs.map +1 -1
- package/dist/lib/mysql/schemas/commerce/merchant-charge.d.cts +13 -13
- package/dist/lib/mysql/schemas/commerce/merchant-charge.d.ts +13 -13
- package/dist/lib/mysql/schemas/commerce/merchant-charge.js +4 -4
- package/dist/lib/mysql/schemas/commerce/merchant-coupon.cjs +1 -1
- package/dist/lib/mysql/schemas/commerce/merchant-coupon.cjs.map +1 -1
- package/dist/lib/mysql/schemas/commerce/merchant-coupon.d.cts +7 -7
- package/dist/lib/mysql/schemas/commerce/merchant-coupon.d.ts +7 -7
- package/dist/lib/mysql/schemas/commerce/merchant-coupon.js +1 -1
- package/dist/lib/mysql/schemas/commerce/merchant-customer.cjs +3 -2
- package/dist/lib/mysql/schemas/commerce/merchant-customer.cjs.map +1 -1
- package/dist/lib/mysql/schemas/commerce/merchant-customer.d.cts +7 -7
- package/dist/lib/mysql/schemas/commerce/merchant-customer.d.ts +7 -7
- package/dist/lib/mysql/schemas/commerce/merchant-customer.js +1 -1
- package/dist/lib/mysql/schemas/commerce/merchant-price.cjs +1 -1
- package/dist/lib/mysql/schemas/commerce/merchant-price.cjs.map +1 -1
- package/dist/lib/mysql/schemas/commerce/merchant-price.d.cts +8 -8
- package/dist/lib/mysql/schemas/commerce/merchant-price.d.ts +8 -8
- package/dist/lib/mysql/schemas/commerce/merchant-price.js +1 -1
- package/dist/lib/mysql/schemas/commerce/merchant-product.cjs +1 -1
- package/dist/lib/mysql/schemas/commerce/merchant-product.cjs.map +1 -1
- package/dist/lib/mysql/schemas/commerce/merchant-product.d.cts +7 -7
- package/dist/lib/mysql/schemas/commerce/merchant-product.d.ts +7 -7
- package/dist/lib/mysql/schemas/commerce/merchant-product.js +1 -1
- package/dist/lib/mysql/schemas/commerce/merchant-session.cjs +1 -1
- package/dist/lib/mysql/schemas/commerce/merchant-session.cjs.map +1 -1
- package/dist/lib/mysql/schemas/commerce/merchant-session.d.cts +4 -4
- package/dist/lib/mysql/schemas/commerce/merchant-session.d.ts +4 -4
- package/dist/lib/mysql/schemas/commerce/merchant-session.js +1 -1
- package/dist/lib/mysql/schemas/commerce/price.cjs +60 -52
- package/dist/lib/mysql/schemas/commerce/price.cjs.map +1 -1
- package/dist/lib/mysql/schemas/commerce/price.d.cts +11 -11
- package/dist/lib/mysql/schemas/commerce/price.d.ts +11 -11
- package/dist/lib/mysql/schemas/commerce/price.js +12 -12
- package/dist/lib/mysql/schemas/commerce/product.cjs +75 -67
- package/dist/lib/mysql/schemas/commerce/product.cjs.map +1 -1
- package/dist/lib/mysql/schemas/commerce/product.d.cts +13 -13
- package/dist/lib/mysql/schemas/commerce/product.d.ts +13 -13
- package/dist/lib/mysql/schemas/commerce/product.js +12 -12
- package/dist/lib/mysql/schemas/commerce/purchase-user-transfer.cjs +105 -96
- package/dist/lib/mysql/schemas/commerce/purchase-user-transfer.cjs.map +1 -1
- package/dist/lib/mysql/schemas/commerce/purchase-user-transfer.d.cts +15 -15
- package/dist/lib/mysql/schemas/commerce/purchase-user-transfer.d.ts +15 -15
- package/dist/lib/mysql/schemas/commerce/purchase-user-transfer.js +13 -13
- package/dist/lib/mysql/schemas/commerce/purchase.cjs +138 -129
- package/dist/lib/mysql/schemas/commerce/purchase.cjs.map +1 -1
- package/dist/lib/mysql/schemas/commerce/purchase.d.cts +25 -25
- package/dist/lib/mysql/schemas/commerce/purchase.d.ts +25 -25
- package/dist/lib/mysql/schemas/commerce/purchase.js +12 -12
- package/dist/lib/mysql/schemas/commerce/upgradable-products.cjs +66 -58
- package/dist/lib/mysql/schemas/commerce/upgradable-products.cjs.map +1 -1
- package/dist/lib/mysql/schemas/commerce/upgradable-products.d.cts +11 -11
- package/dist/lib/mysql/schemas/commerce/upgradable-products.d.ts +11 -11
- package/dist/lib/mysql/schemas/commerce/upgradable-products.js +13 -13
- package/dist/lib/mysql/schemas/communication/comment.cjs +220 -0
- package/dist/lib/mysql/schemas/communication/comment.cjs.map +1 -0
- package/dist/lib/mysql/schemas/communication/comment.d.cts +100 -0
- package/dist/lib/mysql/schemas/communication/comment.d.ts +100 -0
- package/dist/lib/mysql/schemas/communication/comment.js +21 -0
- package/dist/lib/mysql/schemas/communication/comment.js.map +1 -0
- package/dist/lib/mysql/schemas/communication/communication-channel.cjs +1 -1
- package/dist/lib/mysql/schemas/communication/communication-channel.cjs.map +1 -1
- package/dist/lib/mysql/schemas/communication/communication-channel.d.cts +8 -8
- package/dist/lib/mysql/schemas/communication/communication-channel.d.ts +8 -8
- package/dist/lib/mysql/schemas/communication/communication-channel.js +1 -1
- package/dist/lib/mysql/schemas/communication/communication-preference-types.cjs +1 -1
- package/dist/lib/mysql/schemas/communication/communication-preference-types.cjs.map +1 -1
- package/dist/lib/mysql/schemas/communication/communication-preference-types.d.cts +8 -8
- package/dist/lib/mysql/schemas/communication/communication-preference-types.d.ts +8 -8
- package/dist/lib/mysql/schemas/communication/communication-preference-types.js +1 -1
- package/dist/lib/mysql/schemas/communication/communication-preferences.cjs +99 -91
- package/dist/lib/mysql/schemas/communication/communication-preferences.cjs.map +1 -1
- package/dist/lib/mysql/schemas/communication/communication-preferences.d.cts +16 -16
- package/dist/lib/mysql/schemas/communication/communication-preferences.d.ts +16 -16
- package/dist/lib/mysql/schemas/communication/communication-preferences.js +12 -12
- package/dist/lib/mysql/schemas/content/content-contributions.cjs +67 -59
- package/dist/lib/mysql/schemas/content/content-contributions.cjs.map +1 -1
- package/dist/lib/mysql/schemas/content/content-contributions.d.cts +13 -13
- package/dist/lib/mysql/schemas/content/content-contributions.d.ts +13 -13
- package/dist/lib/mysql/schemas/content/content-contributions.js +12 -12
- package/dist/lib/mysql/schemas/content/content-resource-product.cjs +61 -53
- package/dist/lib/mysql/schemas/content/content-resource-product.cjs.map +1 -1
- package/dist/lib/mysql/schemas/content/content-resource-product.d.cts +11 -11
- package/dist/lib/mysql/schemas/content/content-resource-product.d.ts +11 -11
- package/dist/lib/mysql/schemas/content/content-resource-product.js +12 -12
- package/dist/lib/mysql/schemas/content/content-resource-resource.cjs +58 -50
- package/dist/lib/mysql/schemas/content/content-resource-resource.cjs.map +1 -1
- package/dist/lib/mysql/schemas/content/content-resource-resource.d.cts +11 -11
- package/dist/lib/mysql/schemas/content/content-resource-resource.d.ts +11 -11
- package/dist/lib/mysql/schemas/content/content-resource-resource.js +12 -12
- package/dist/lib/mysql/schemas/content/content-resource.cjs +114 -66
- package/dist/lib/mysql/schemas/content/content-resource.cjs.map +1 -1
- package/dist/lib/mysql/schemas/content/content-resource.d.cts +14 -13
- package/dist/lib/mysql/schemas/content/content-resource.d.ts +14 -13
- package/dist/lib/mysql/schemas/content/content-resource.js +12 -12
- package/dist/lib/mysql/schemas/content/contribution-types.cjs +1 -1
- package/dist/lib/mysql/schemas/content/contribution-types.cjs.map +1 -1
- package/dist/lib/mysql/schemas/content/contribution-types.d.cts +10 -10
- package/dist/lib/mysql/schemas/content/contribution-types.d.ts +10 -10
- package/dist/lib/mysql/schemas/content/contribution-types.js +1 -1
- package/dist/lib/mysql/schemas/content/lesson-progress.cjs +77 -0
- package/dist/lib/mysql/schemas/content/lesson-progress.cjs.map +1 -0
- package/dist/lib/mysql/schemas/content/lesson-progress.d.cts +132 -0
- package/dist/lib/mysql/schemas/content/lesson-progress.d.ts +132 -0
- package/dist/lib/mysql/schemas/content/lesson-progress.js +8 -0
- package/dist/lib/mysql/schemas/content/lesson-progress.js.map +1 -0
- package/dist/lib/mysql/schemas/content/resource-progress.cjs +7 -7
- package/dist/lib/mysql/schemas/content/resource-progress.cjs.map +1 -1
- package/dist/lib/mysql/schemas/content/resource-progress.d.cts +9 -9
- package/dist/lib/mysql/schemas/content/resource-progress.d.ts +9 -9
- package/dist/lib/mysql/schemas/content/resource-progress.js +1 -1
- package/package.json +5 -5
- package/src/lib/mysql/index.ts +142 -39
- package/src/lib/mysql/schemas/auth/accounts.ts +1 -1
- package/src/lib/mysql/schemas/auth/device-access-token.ts +40 -0
- package/src/lib/mysql/schemas/auth/device-verification.ts +48 -0
- package/src/lib/mysql/schemas/auth/permissions.ts +1 -1
- package/src/lib/mysql/schemas/auth/role-permissions.ts +1 -1
- package/src/lib/mysql/schemas/auth/roles.ts +1 -1
- package/src/lib/mysql/schemas/auth/sessions.ts +1 -1
- package/src/lib/mysql/schemas/auth/user-permissions.ts +1 -1
- package/src/lib/mysql/schemas/auth/user-prefs.ts +52 -0
- package/src/lib/mysql/schemas/auth/user-roles.ts +1 -1
- package/src/lib/mysql/schemas/auth/users.ts +14 -2
- package/src/lib/mysql/schemas/auth/verification-tokens.ts +1 -1
- package/src/lib/mysql/schemas/commerce/coupon.ts +1 -4
- package/src/lib/mysql/schemas/commerce/merchant-account.ts +1 -1
- package/src/lib/mysql/schemas/commerce/merchant-charge.ts +1 -1
- package/src/lib/mysql/schemas/commerce/merchant-coupon.ts +1 -1
- package/src/lib/mysql/schemas/commerce/merchant-customer.ts +3 -1
- package/src/lib/mysql/schemas/commerce/merchant-price.ts +1 -1
- package/src/lib/mysql/schemas/commerce/merchant-product.ts +1 -1
- package/src/lib/mysql/schemas/commerce/merchant-session.ts +1 -1
- package/src/lib/mysql/schemas/commerce/price.ts +1 -1
- package/src/lib/mysql/schemas/commerce/product.ts +1 -1
- package/src/lib/mysql/schemas/commerce/purchase-user-transfer.ts +1 -1
- package/src/lib/mysql/schemas/commerce/purchase.ts +5 -4
- package/src/lib/mysql/schemas/commerce/upgradable-products.ts +1 -1
- package/src/lib/mysql/schemas/communication/comment.ts +52 -0
- package/src/lib/mysql/schemas/communication/communication-channel.ts +1 -1
- package/src/lib/mysql/schemas/communication/communication-preference-types.ts +1 -1
- package/src/lib/mysql/schemas/communication/communication-preferences.ts +1 -1
- package/src/lib/mysql/schemas/content/content-contributions.ts +1 -1
- package/src/lib/mysql/schemas/content/content-resource-product.ts +1 -1
- package/src/lib/mysql/schemas/content/content-resource-resource.ts +1 -1
- package/src/lib/mysql/schemas/content/content-resource.ts +6 -2
- package/src/lib/mysql/schemas/content/contribution-types.ts +1 -1
- package/src/lib/mysql/schemas/content/lesson-progress.ts +39 -0
- package/src/lib/mysql/schemas/content/resource-progress.ts +6 -8
|
@@ -12,16 +12,13 @@ import {
|
|
|
12
12
|
varchar,
|
|
13
13
|
} from 'drizzle-orm/mysql-core'
|
|
14
14
|
|
|
15
|
-
import { getContentResourceProductSchema } from '../content/content-resource-product.js'
|
|
16
15
|
import { getMerchantCouponSchema } from './merchant-coupon.js'
|
|
17
|
-
import { getMerchantProductSchema } from './merchant-product.js'
|
|
18
|
-
import { getPriceSchema } from './price.js'
|
|
19
16
|
import { getProductSchema } from './product.js'
|
|
20
17
|
import { getPurchaseSchema } from './purchase.js'
|
|
21
18
|
|
|
22
19
|
export function getCouponSchema(mysqlTable: MySqlTableFn) {
|
|
23
20
|
return mysqlTable(
|
|
24
|
-
'
|
|
21
|
+
'Coupon',
|
|
25
22
|
{
|
|
26
23
|
id: varchar('id', { length: 191 }).notNull(),
|
|
27
24
|
code: varchar('code', { length: 191 }),
|
|
@@ -14,7 +14,7 @@ import { getMerchantProductSchema } from './merchant-product.js'
|
|
|
14
14
|
|
|
15
15
|
export function getMerchantChargeSchema(mysqlTable: MySqlTableFn) {
|
|
16
16
|
return mysqlTable(
|
|
17
|
-
'
|
|
17
|
+
'MerchantCharge',
|
|
18
18
|
{
|
|
19
19
|
id: varchar('id', { length: 191 }).notNull(),
|
|
20
20
|
status: int('status').default(0).notNull(),
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { sql } from 'drizzle-orm'
|
|
2
2
|
import {
|
|
3
|
+
index,
|
|
3
4
|
int,
|
|
4
5
|
MySqlTableFn,
|
|
5
6
|
primaryKey,
|
|
@@ -10,7 +11,7 @@ import {
|
|
|
10
11
|
|
|
11
12
|
export function getMerchantCustomerSchema(mysqlTable: MySqlTableFn) {
|
|
12
13
|
return mysqlTable(
|
|
13
|
-
'
|
|
14
|
+
'MerchantCustomer',
|
|
14
15
|
{
|
|
15
16
|
id: varchar('id', { length: 191 }).notNull(),
|
|
16
17
|
userId: varchar('userId', { length: 191 }).notNull(),
|
|
@@ -32,6 +33,7 @@ export function getMerchantCustomerSchema(mysqlTable: MySqlTableFn) {
|
|
|
32
33
|
merchantCustomerIdentifierKey: unique(
|
|
33
34
|
'MerchantCustomer_identifier_key',
|
|
34
35
|
).on(table.identifier),
|
|
36
|
+
userIdIdx: index('idx_MerchantCustomer_on_userId').on(table.userId),
|
|
35
37
|
}
|
|
36
38
|
},
|
|
37
39
|
)
|
|
@@ -2,7 +2,7 @@ import { MySqlTableFn, primaryKey, varchar } from 'drizzle-orm/mysql-core'
|
|
|
2
2
|
|
|
3
3
|
export function getMerchantSessionSchema(mysqlTable: MySqlTableFn) {
|
|
4
4
|
return mysqlTable(
|
|
5
|
-
'
|
|
5
|
+
'MerchantSession',
|
|
6
6
|
{
|
|
7
7
|
id: varchar('id', { length: 191 }).notNull(),
|
|
8
8
|
identifier: varchar('identifier', { length: 191 }).notNull(),
|
|
@@ -14,7 +14,7 @@ import { getProductSchema } from './product.js'
|
|
|
14
14
|
|
|
15
15
|
export function getPriceSchema(mysqlTable: MySqlTableFn) {
|
|
16
16
|
return mysqlTable(
|
|
17
|
-
'
|
|
17
|
+
'Price',
|
|
18
18
|
{
|
|
19
19
|
id: varchar('id', { length: 191 }).notNull(),
|
|
20
20
|
productId: varchar('productId', { length: 191 }),
|
|
@@ -14,7 +14,7 @@ import { getPriceSchema } from './price.js'
|
|
|
14
14
|
|
|
15
15
|
export function getProductSchema(mysqlTable: MySqlTableFn) {
|
|
16
16
|
return mysqlTable(
|
|
17
|
-
'
|
|
17
|
+
'Product',
|
|
18
18
|
{
|
|
19
19
|
id: varchar('id', { length: 191 }).notNull(),
|
|
20
20
|
name: varchar('name', { length: 191 }).notNull(),
|
|
@@ -12,7 +12,7 @@ import { getPurchaseSchema } from './purchase.js'
|
|
|
12
12
|
|
|
13
13
|
export function getPurchaseUserTransferSchema(mysqlTable: MySqlTableFn) {
|
|
14
14
|
return mysqlTable(
|
|
15
|
-
'
|
|
15
|
+
'PurchaseUserTransfer',
|
|
16
16
|
{
|
|
17
17
|
id: varchar('id', { length: 191 }).notNull(),
|
|
18
18
|
transferState: mysqlEnum('transferState', [
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { relations, sql } from 'drizzle-orm'
|
|
2
2
|
import {
|
|
3
3
|
decimal,
|
|
4
|
+
index,
|
|
4
5
|
json,
|
|
5
6
|
MySqlTableFn,
|
|
6
7
|
primaryKey,
|
|
@@ -12,15 +13,12 @@ import {
|
|
|
12
13
|
import { getUsersSchema } from '../auth/users.js'
|
|
13
14
|
import { getCouponSchema } from './coupon.js'
|
|
14
15
|
import { getMerchantChargeSchema } from './merchant-charge.js'
|
|
15
|
-
import { getMerchantCouponSchema } from './merchant-coupon.js'
|
|
16
|
-
import { getMerchantCustomerSchema } from './merchant-customer.js'
|
|
17
|
-
import { getMerchantProductSchema } from './merchant-product.js'
|
|
18
16
|
import { getMerchantSessionSchema } from './merchant-session.js'
|
|
19
17
|
import { getProductSchema } from './product.js'
|
|
20
18
|
|
|
21
19
|
export function getPurchaseSchema(mysqlTable: MySqlTableFn) {
|
|
22
20
|
return mysqlTable(
|
|
23
|
-
'
|
|
21
|
+
'Purchase',
|
|
24
22
|
{
|
|
25
23
|
id: varchar('id', { length: 191 }).notNull(),
|
|
26
24
|
userId: varchar('userId', { length: 191 }),
|
|
@@ -48,6 +46,9 @@ export function getPurchaseSchema(mysqlTable: MySqlTableFn) {
|
|
|
48
46
|
(table) => {
|
|
49
47
|
return {
|
|
50
48
|
purchaseId: primaryKey({ columns: [table.id], name: 'Purchase_id' }),
|
|
49
|
+
merchantChargeIdIdx: index('idx_Purchase_on_merchantChargeId').on(
|
|
50
|
+
table.merchantChargeId,
|
|
51
|
+
),
|
|
51
52
|
purchaseUpgradedFromIdKey: unique('Purchase_upgradedFromId_key').on(
|
|
52
53
|
table.upgradedFromId,
|
|
53
54
|
),
|
|
@@ -13,7 +13,7 @@ import { getProductSchema } from './product.js'
|
|
|
13
13
|
|
|
14
14
|
export function getUpgradableProductsSchema(mysqlTable: MySqlTableFn) {
|
|
15
15
|
return mysqlTable(
|
|
16
|
-
'
|
|
16
|
+
'UpgradableProducts',
|
|
17
17
|
{
|
|
18
18
|
upgradableToId: varchar('upgradableToId', { length: 255 }).notNull(),
|
|
19
19
|
upgradableFromId: varchar('upgradableFrom', { length: 255 }).notNull(),
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
import { relations, sql } from 'drizzle-orm'
|
|
2
|
+
import {
|
|
3
|
+
index,
|
|
4
|
+
json,
|
|
5
|
+
MySqlTableFn,
|
|
6
|
+
primaryKey,
|
|
7
|
+
text,
|
|
8
|
+
timestamp,
|
|
9
|
+
varchar,
|
|
10
|
+
} from 'drizzle-orm/mysql-core'
|
|
11
|
+
|
|
12
|
+
import { getUsersSchema } from '../auth/users.js'
|
|
13
|
+
|
|
14
|
+
export function getCommentsSchema(mysqlTable: MySqlTableFn) {
|
|
15
|
+
return mysqlTable(
|
|
16
|
+
'Comment',
|
|
17
|
+
{
|
|
18
|
+
id: varchar('id', { length: 191 }).notNull(),
|
|
19
|
+
userId: varchar('userId', { length: 255 }).notNull(),
|
|
20
|
+
context: json('context').$type<Record<string, any>>().default({}),
|
|
21
|
+
text: text('text').notNull(),
|
|
22
|
+
createdAt: timestamp('createdAt', {
|
|
23
|
+
mode: 'date',
|
|
24
|
+
fsp: 3,
|
|
25
|
+
}).default(sql`CURRENT_TIMESTAMP(3)`),
|
|
26
|
+
updatedAt: timestamp('updatedAt', {
|
|
27
|
+
mode: 'date',
|
|
28
|
+
fsp: 3,
|
|
29
|
+
}).default(sql`CURRENT_TIMESTAMP(3)`),
|
|
30
|
+
deletedAt: timestamp('deletedAt', {
|
|
31
|
+
mode: 'date',
|
|
32
|
+
fsp: 3,
|
|
33
|
+
}),
|
|
34
|
+
},
|
|
35
|
+
(crr) => ({
|
|
36
|
+
pk: primaryKey({ columns: [crr.id] }),
|
|
37
|
+
crrUserIdIdKey: index('crr_userIdId_idx').on(crr.userId),
|
|
38
|
+
}),
|
|
39
|
+
)
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
export function getCommentRelationsSchema(mysqlTable: MySqlTableFn) {
|
|
43
|
+
const comment = getCommentsSchema(mysqlTable)
|
|
44
|
+
const user = getUsersSchema(mysqlTable)
|
|
45
|
+
return relations(comment, ({ one }) => ({
|
|
46
|
+
user: one(user, {
|
|
47
|
+
fields: [comment.userId],
|
|
48
|
+
references: [user.id],
|
|
49
|
+
relationName: 'user',
|
|
50
|
+
}),
|
|
51
|
+
}))
|
|
52
|
+
}
|
|
@@ -9,7 +9,7 @@ import {
|
|
|
9
9
|
|
|
10
10
|
export function getCommunicationChannelSchema(mysqlTable: MySqlTableFn) {
|
|
11
11
|
return mysqlTable(
|
|
12
|
-
'
|
|
12
|
+
'CommunicationChannel',
|
|
13
13
|
{
|
|
14
14
|
id: varchar('id', { length: 255 }).notNull().primaryKey(),
|
|
15
15
|
name: varchar('name', { length: 255 }).notNull(),
|
|
@@ -9,7 +9,7 @@ import {
|
|
|
9
9
|
export function getCommunicationPreferenceTypesSchema(
|
|
10
10
|
mysqlTable: MySqlTableFn,
|
|
11
11
|
) {
|
|
12
|
-
return mysqlTable('
|
|
12
|
+
return mysqlTable('CommunicationPreferenceType', {
|
|
13
13
|
id: varchar('id', { length: 255 }).notNull().primaryKey(),
|
|
14
14
|
name: varchar('name', { length: 255 }).notNull(),
|
|
15
15
|
description: text('description'),
|
|
@@ -14,7 +14,7 @@ import { getCommunicationPreferenceTypesSchema } from './communication-preferenc
|
|
|
14
14
|
|
|
15
15
|
export function getCommunicationPreferencesSchema(mysqlTable: MySqlTableFn) {
|
|
16
16
|
return mysqlTable(
|
|
17
|
-
'
|
|
17
|
+
'CommunicationPreference',
|
|
18
18
|
{
|
|
19
19
|
id: varchar('id', { length: 255 }).notNull().primaryKey(),
|
|
20
20
|
userId: varchar('userId', { length: 255 }).notNull(),
|
|
@@ -13,7 +13,7 @@ import { getContributionTypesSchema } from './contribution-types.js'
|
|
|
13
13
|
|
|
14
14
|
export function getContentContributionsSchema(mysqlTable: MySqlTableFn) {
|
|
15
15
|
return mysqlTable(
|
|
16
|
-
'
|
|
16
|
+
'ContentContribution',
|
|
17
17
|
{
|
|
18
18
|
id: varchar('id', { length: 255 }).notNull().primaryKey(),
|
|
19
19
|
userId: varchar('userId', { length: 255 }).notNull(),
|
|
@@ -14,7 +14,7 @@ import { getContentResourceSchema } from './content-resource.js'
|
|
|
14
14
|
|
|
15
15
|
export function getContentResourceProductSchema(mysqlTable: MySqlTableFn) {
|
|
16
16
|
return mysqlTable(
|
|
17
|
-
'
|
|
17
|
+
'ContentResourceProduct',
|
|
18
18
|
{
|
|
19
19
|
productId: varchar('productId', { length: 255 }).notNull(),
|
|
20
20
|
resourceId: varchar('resourceId', { length: 255 }).notNull(),
|
|
@@ -13,7 +13,7 @@ import { getContentResourceSchema } from './content-resource.js'
|
|
|
13
13
|
|
|
14
14
|
export function getContentResourceResourceSchema(mysqlTable: MySqlTableFn) {
|
|
15
15
|
return mysqlTable(
|
|
16
|
-
'
|
|
16
|
+
'ContentResourceResource',
|
|
17
17
|
{
|
|
18
18
|
resourceOfId: varchar('resourceOfId', { length: 255 }).notNull(),
|
|
19
19
|
resourceId: varchar('resourceId', { length: 255 }).notNull(),
|
|
@@ -14,7 +14,7 @@ import { getContentResourceResourceSchema } from './content-resource-resource.js
|
|
|
14
14
|
|
|
15
15
|
export function getContentResourceSchema(mysqlTable: MySqlTableFn) {
|
|
16
16
|
return mysqlTable(
|
|
17
|
-
'
|
|
17
|
+
'ContentResource',
|
|
18
18
|
{
|
|
19
19
|
id: varchar('id', { length: 255 }).notNull().primaryKey(),
|
|
20
20
|
type: varchar('type', { length: 255 }).notNull(),
|
|
@@ -46,16 +46,20 @@ export function getContentResourceRelationsSchema(mysqlTable: MySqlTableFn) {
|
|
|
46
46
|
const users = getUsersSchema(mysqlTable)
|
|
47
47
|
const contentResourceResource = getContentResourceResourceSchema(mysqlTable)
|
|
48
48
|
const contentResourceProduct = getContentResourceProductSchema(mysqlTable)
|
|
49
|
+
const contentContributions = getContentContributionsSchema(mysqlTable)
|
|
49
50
|
return relations(contentResource, ({ one, many }) => ({
|
|
50
51
|
createdBy: one(users, {
|
|
51
52
|
fields: [contentResource.createdById],
|
|
52
53
|
references: [users.id],
|
|
53
|
-
relationName: '
|
|
54
|
+
relationName: 'creator',
|
|
54
55
|
}),
|
|
55
56
|
resources: many(contentResourceResource, { relationName: 'resourceOf' }),
|
|
56
57
|
resourceOf: many(contentResourceResource, { relationName: 'resource' }),
|
|
57
58
|
resourceProducts: many(contentResourceProduct, {
|
|
58
59
|
relationName: 'resource',
|
|
59
60
|
}),
|
|
61
|
+
contributions: many(contentContributions, {
|
|
62
|
+
relationName: 'contributions',
|
|
63
|
+
}),
|
|
60
64
|
}))
|
|
61
65
|
}
|
|
@@ -12,7 +12,7 @@ import { getContentContributionsSchema } from './content-contributions.js'
|
|
|
12
12
|
|
|
13
13
|
export function getContributionTypesSchema(mysqlTable: MySqlTableFn) {
|
|
14
14
|
return mysqlTable(
|
|
15
|
-
'
|
|
15
|
+
'ContributionType',
|
|
16
16
|
{
|
|
17
17
|
id: varchar('id', { length: 255 }).notNull().primaryKey(),
|
|
18
18
|
slug: varchar('slug', { length: 255 }).notNull().unique(),
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import { sql } from 'drizzle-orm'
|
|
2
|
+
import {
|
|
3
|
+
datetime,
|
|
4
|
+
index,
|
|
5
|
+
json,
|
|
6
|
+
MySqlTableFn,
|
|
7
|
+
primaryKey,
|
|
8
|
+
varchar,
|
|
9
|
+
} from 'drizzle-orm/mysql-core'
|
|
10
|
+
|
|
11
|
+
export function getLessonProgressSchema(mysqlTable: MySqlTableFn) {
|
|
12
|
+
return mysqlTable(
|
|
13
|
+
'LessonProgress',
|
|
14
|
+
{
|
|
15
|
+
id: varchar('id', { length: 191 }).notNull().primaryKey(),
|
|
16
|
+
userId: varchar('userId', { length: 191 }).notNull(),
|
|
17
|
+
lessonId: varchar('lessonId', { length: 191 }),
|
|
18
|
+
lessonSlug: varchar('lessonSlug', { length: 191 }),
|
|
19
|
+
lessonVersion: varchar('lessonVersion', { length: 191 }),
|
|
20
|
+
sectionId: varchar('sectionId', { length: 191 }),
|
|
21
|
+
moduleId: varchar('moduleId', { length: 191 }),
|
|
22
|
+
completedAt: datetime('completedAt', { mode: 'date', fsp: 3 }),
|
|
23
|
+
updatedAt: datetime('updatedAt', { mode: 'date', fsp: 3 }),
|
|
24
|
+
createdAt: datetime('createdAt', { mode: 'date', fsp: 3 })
|
|
25
|
+
.default(sql`CURRENT_TIMESTAMP(3)`)
|
|
26
|
+
.notNull(),
|
|
27
|
+
},
|
|
28
|
+
(crp) => {
|
|
29
|
+
return {
|
|
30
|
+
userIdLessonIdIdx: index('crp_userId_contentResourceId_idx').on(
|
|
31
|
+
crp.userId,
|
|
32
|
+
crp.lessonId,
|
|
33
|
+
),
|
|
34
|
+
userIdIdx: index('userId_idx').on(crp.userId),
|
|
35
|
+
lessonIdIdx: index('lessonId_idx').on(crp.lessonId),
|
|
36
|
+
}
|
|
37
|
+
},
|
|
38
|
+
)
|
|
39
|
+
}
|
|
@@ -10,10 +10,10 @@ import {
|
|
|
10
10
|
|
|
11
11
|
export function getResourceProgressSchema(mysqlTable: MySqlTableFn) {
|
|
12
12
|
return mysqlTable(
|
|
13
|
-
'
|
|
13
|
+
'ResourceProgress',
|
|
14
14
|
{
|
|
15
|
-
userId: varchar('userId', { length:
|
|
16
|
-
|
|
15
|
+
userId: varchar('userId', { length: 255 }).notNull(),
|
|
16
|
+
resourceId: varchar('resourceId', { length: 255 }),
|
|
17
17
|
fields: json('fields').$type<Record<string, any>>().default({}),
|
|
18
18
|
completedAt: datetime('completedAt', { mode: 'date', fsp: 3 }),
|
|
19
19
|
updatedAt: datetime('updatedAt', { mode: 'date', fsp: 3 }),
|
|
@@ -25,12 +25,10 @@ export function getResourceProgressSchema(mysqlTable: MySqlTableFn) {
|
|
|
25
25
|
return {
|
|
26
26
|
userIdLessonIdIdx: index('crp_userId_contentResourceId_idx').on(
|
|
27
27
|
crp.userId,
|
|
28
|
-
crp.
|
|
29
|
-
),
|
|
30
|
-
pk: primaryKey({ columns: [crp.userId, crp.contentResourceId] }),
|
|
31
|
-
contentResourceIdIdx: index('contentResourceId_idx').on(
|
|
32
|
-
crp.contentResourceId,
|
|
28
|
+
crp.resourceId,
|
|
33
29
|
),
|
|
30
|
+
pk: primaryKey({ columns: [crp.userId, crp.resourceId] }),
|
|
31
|
+
contentResourceIdIdx: index('contentResourceId_idx').on(crp.resourceId),
|
|
34
32
|
userIdIdx: index('resourceId_idx').on(crp.userId),
|
|
35
33
|
}
|
|
36
34
|
},
|