@coursebuilder/adapter-drizzle
Version:
Drizzle adapter for Course Builder.
728 lines (684 loc) • 27.5 kB
JavaScript
"use strict";
var __defProp = Object.defineProperty;
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
var __getOwnPropNames = Object.getOwnPropertyNames;
var __hasOwnProp = Object.prototype.hasOwnProperty;
var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
var __export = (target, all) => {
for (var name in all)
__defProp(target, name, { get: all[name], enumerable: true });
};
var __copyProps = (to, from, except, desc) => {
if (from && typeof from === "object" || typeof from === "function") {
for (let key of __getOwnPropNames(from))
if (!__hasOwnProp.call(to, key) && key !== except)
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
}
return to;
};
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
// src/lib/mysql/schemas/auth/users.ts
var users_exports = {};
__export(users_exports, {
getUsersRelationsSchema: () => getUsersRelationsSchema,
getUsersSchema: () => getUsersSchema
});
module.exports = __toCommonJS(users_exports);
var import_drizzle_orm33 = require("drizzle-orm");
var import_mysql_core37 = require("drizzle-orm/mysql-core");
// src/lib/mysql/schemas/commerce/purchase.ts
var import_drizzle_orm25 = require("drizzle-orm");
var import_mysql_core27 = require("drizzle-orm/mysql-core");
// src/lib/mysql/schemas/org/organization-memberships.ts
var import_drizzle_orm23 = require("drizzle-orm");
var import_mysql_core23 = require("drizzle-orm/mysql-core");
// src/lib/mysql/schemas/org/organization-membership-roles.ts
var import_drizzle_orm22 = require("drizzle-orm");
var import_mysql_core22 = require("drizzle-orm/mysql-core");
// src/lib/mysql/schemas/auth/roles.ts
var import_drizzle_orm2 = require("drizzle-orm");
var import_mysql_core2 = require("drizzle-orm/mysql-core");
// src/lib/mysql/schemas/auth/user-roles.ts
var import_drizzle_orm = require("drizzle-orm");
var import_mysql_core = require("drizzle-orm/mysql-core");
function getUserRolesSchema(mysqlTable) {
return mysqlTable("UserRole", {
userId: (0, import_mysql_core.varchar)("userId", {
length: 255
}).notNull(),
roleId: (0, import_mysql_core.varchar)("roleId", {
length: 255
}).notNull(),
active: (0, import_mysql_core.boolean)("active").notNull().default(true),
organizationId: (0, import_mysql_core.varchar)("organizationId", {
length: 191
}),
createdAt: (0, import_mysql_core.timestamp)("createdAt", {
mode: "date",
fsp: 3
}).defaultNow(),
updatedAt: (0, import_mysql_core.timestamp)("updatedAt", {
mode: "date",
fsp: 3
}).defaultNow(),
deletedAt: (0, import_mysql_core.timestamp)("deletedAt", {
mode: "date",
fsp: 3
})
}, (ur) => ({
pk: (0, import_mysql_core.primaryKey)({
columns: [
ur.userId,
ur.roleId
]
}),
userIdIdx: (0, import_mysql_core.index)("userId_idx").on(ur.userId),
roleIdIdx: (0, import_mysql_core.index)("roleId_idx").on(ur.roleId),
organizationIdIdx: (0, import_mysql_core.index)("organizationId_idx").on(ur.organizationId)
}));
}
__name(getUserRolesSchema, "getUserRolesSchema");
// src/lib/mysql/schemas/org/organizations.ts
var import_drizzle_orm21 = require("drizzle-orm");
var import_mysql_core21 = require("drizzle-orm/mysql-core");
// src/lib/mysql/schemas/commerce/subscription.ts
var import_drizzle_orm20 = require("drizzle-orm");
var import_mysql_core20 = require("drizzle-orm/mysql-core");
// src/lib/mysql/schemas/commerce/merchant-subscription.ts
var import_drizzle_orm7 = require("drizzle-orm");
var import_mysql_core7 = require("drizzle-orm/mysql-core");
// src/lib/mysql/schemas/commerce/merchant-charge.ts
var import_drizzle_orm6 = require("drizzle-orm");
var import_mysql_core6 = require("drizzle-orm/mysql-core");
// src/lib/mysql/schemas/commerce/merchant-account.ts
var import_drizzle_orm3 = require("drizzle-orm");
var import_mysql_core3 = require("drizzle-orm/mysql-core");
// src/lib/mysql/schemas/commerce/merchant-customer.ts
var import_drizzle_orm4 = require("drizzle-orm");
var import_mysql_core4 = require("drizzle-orm/mysql-core");
// src/lib/mysql/schemas/commerce/merchant-product.ts
var import_drizzle_orm5 = require("drizzle-orm");
var import_mysql_core5 = require("drizzle-orm/mysql-core");
// src/lib/mysql/schemas/commerce/product.ts
var import_drizzle_orm19 = require("drizzle-orm");
var import_mysql_core19 = require("drizzle-orm/mysql-core");
// src/lib/mysql/schemas/content/content-resource-product.ts
var import_drizzle_orm16 = require("drizzle-orm");
var import_mysql_core16 = require("drizzle-orm/mysql-core");
// src/lib/mysql/schemas/content/content-resource.ts
var import_drizzle_orm15 = require("drizzle-orm");
var import_mysql_core15 = require("drizzle-orm/mysql-core");
// src/lib/mysql/schemas/content/content-contributions.ts
var import_drizzle_orm9 = require("drizzle-orm");
var import_mysql_core9 = require("drizzle-orm/mysql-core");
// src/lib/mysql/schemas/content/contribution-types.ts
var import_drizzle_orm8 = require("drizzle-orm");
var import_mysql_core8 = require("drizzle-orm/mysql-core");
// src/lib/mysql/schemas/content/content-contributions.ts
function getContentContributionsSchema(mysqlTable) {
return mysqlTable("ContentContribution", {
id: (0, import_mysql_core9.varchar)("id", {
length: 255
}).notNull().primaryKey(),
userId: (0, import_mysql_core9.varchar)("userId", {
length: 255
}).notNull(),
organizationId: (0, import_mysql_core9.varchar)("organizationId", {
length: 191
}),
organizationMembershipId: (0, import_mysql_core9.varchar)("organizationMembershipId", {
length: 255
}),
contentId: (0, import_mysql_core9.varchar)("contentId", {
length: 255
}).notNull(),
contributionTypeId: (0, import_mysql_core9.varchar)("contributionTypeId", {
length: 255
}).notNull(),
active: (0, import_mysql_core9.boolean)("active").notNull().default(true),
createdAt: (0, import_mysql_core9.timestamp)("createdAt", {
mode: "date",
fsp: 3
}).defaultNow(),
updatedAt: (0, import_mysql_core9.timestamp)("updatedAt", {
mode: "date",
fsp: 3
}).defaultNow(),
deletedAt: (0, import_mysql_core9.timestamp)("deletedAt", {
mode: "date",
fsp: 3
})
}, (cc) => ({
userIdIdx: (0, import_mysql_core9.index)("userId_idx").on(cc.userId),
contentIdIdx: (0, import_mysql_core9.index)("contentId_idx").on(cc.contentId),
contributionTypeIdIdx: (0, import_mysql_core9.index)("contributionTypeId_idx").on(cc.contributionTypeId),
organizationMembershipIdIdx: (0, import_mysql_core9.index)("organizationMembershipId_idx").on(cc.organizationMembershipId)
}));
}
__name(getContentContributionsSchema, "getContentContributionsSchema");
// src/lib/mysql/schemas/content/content-resource-resource.ts
var import_drizzle_orm10 = require("drizzle-orm");
var import_mysql_core10 = require("drizzle-orm/mysql-core");
// src/lib/mysql/schemas/content/content-resource-tag.ts
var import_drizzle_orm13 = require("drizzle-orm");
var import_mysql_core13 = require("drizzle-orm/mysql-core");
// src/lib/mysql/schemas/content/tag.ts
var import_drizzle_orm12 = require("drizzle-orm");
var import_mysql_core12 = require("drizzle-orm/mysql-core");
// src/lib/mysql/schemas/content/tag-tag.ts
var import_drizzle_orm11 = require("drizzle-orm");
var import_mysql_core11 = require("drizzle-orm/mysql-core");
// src/lib/mysql/schemas/content/content-resource-version.ts
var import_drizzle_orm14 = require("drizzle-orm");
var import_mysql_core14 = require("drizzle-orm/mysql-core");
// src/lib/mysql/schemas/content/content-resource.ts
function getContentResourceSchema(mysqlTable) {
return mysqlTable("ContentResource", {
id: (0, import_mysql_core15.varchar)("id", {
length: 255
}).notNull().primaryKey(),
organizationId: (0, import_mysql_core15.varchar)("organizationId", {
length: 191
}),
createdByOrganizationMembershipId: (0, import_mysql_core15.varchar)("createdByOrganizationMembershipId", {
length: 191
}),
type: (0, import_mysql_core15.varchar)("type", {
length: 255
}).notNull(),
createdById: (0, import_mysql_core15.varchar)("createdById", {
length: 255
}).notNull(),
fields: (0, import_mysql_core15.json)("fields").$type().default({}),
currentVersionId: (0, import_mysql_core15.varchar)("currentVersionId", {
length: 255
}),
createdAt: (0, import_mysql_core15.timestamp)("createdAt", {
mode: "date",
fsp: 3
}).default(import_drizzle_orm15.sql`CURRENT_TIMESTAMP(3)`),
updatedAt: (0, import_mysql_core15.timestamp)("updatedAt", {
mode: "date",
fsp: 3
}).default(import_drizzle_orm15.sql`CURRENT_TIMESTAMP(3)`),
deletedAt: (0, import_mysql_core15.timestamp)("deletedAt", {
mode: "date",
fsp: 3
})
}, (cm) => ({
typeIdx: (0, import_mysql_core15.index)("type_idx").on(cm.type),
createdByIdx: (0, import_mysql_core15.index)("createdById_idx").on(cm.createdById),
createdAtIdx: (0, import_mysql_core15.index)("createdAt_idx").on(cm.createdAt),
currentVersionIdIdx: (0, import_mysql_core15.index)("currentVersionId_idx").on(cm.currentVersionId),
createdByOrganizationMembershipIdIdx: (0, import_mysql_core15.index)("createdByOrganizationMembershipId_idx").on(cm.createdByOrganizationMembershipId)
}));
}
__name(getContentResourceSchema, "getContentResourceSchema");
// src/lib/mysql/schemas/commerce/price.ts
var import_drizzle_orm18 = require("drizzle-orm");
var import_mysql_core18 = require("drizzle-orm/mysql-core");
// src/lib/mysql/schemas/commerce/merchant-price.ts
var import_drizzle_orm17 = require("drizzle-orm");
var import_mysql_core17 = require("drizzle-orm/mysql-core");
// src/lib/mysql/schemas/org/organization-memberships.ts
function getOrganizationMembershipsSchema(mysqlTable) {
return mysqlTable("OrganizationMembership", {
id: (0, import_mysql_core23.varchar)("id", {
length: 255
}).notNull().primaryKey(),
organizationId: (0, import_mysql_core23.varchar)("organizationId", {
length: 191
}),
role: (0, import_mysql_core23.varchar)("role", {
length: 191
}).notNull().default("user"),
invitedById: (0, import_mysql_core23.varchar)("invitedById", {
length: 255
}).notNull(),
userId: (0, import_mysql_core23.varchar)("userId", {
length: 255
}).notNull(),
fields: (0, import_mysql_core23.json)("fields").$type().default({}),
createdAt: (0, import_mysql_core23.timestamp)("createdAt", {
mode: "date",
fsp: 3
}).default(import_drizzle_orm23.sql`CURRENT_TIMESTAMP(3)`)
}, (organizationMembership) => ({
roleIdx: (0, import_mysql_core23.index)("role_idx").on(organizationMembership.role),
createdAtIdx: (0, import_mysql_core23.index)("created_at_idx").on(organizationMembership.createdAt),
organizationIdIdx: (0, import_mysql_core23.index)("organizationId_idx").on(organizationMembership.organizationId)
}));
}
__name(getOrganizationMembershipsSchema, "getOrganizationMembershipsSchema");
// src/lib/mysql/schemas/commerce/coupon.ts
var import_drizzle_orm24 = require("drizzle-orm");
var import_mysql_core25 = require("drizzle-orm/mysql-core");
// src/lib/mysql/schemas/commerce/merchant-coupon.ts
var import_mysql_core24 = require("drizzle-orm/mysql-core");
// src/lib/mysql/schemas/commerce/merchant-session.ts
var import_mysql_core26 = require("drizzle-orm/mysql-core");
// src/lib/mysql/schemas/commerce/purchase.ts
function getPurchaseSchema(mysqlTable) {
return mysqlTable("Purchase", {
id: (0, import_mysql_core27.varchar)("id", {
length: 191
}).notNull(),
userId: (0, import_mysql_core27.varchar)("userId", {
length: 191
}),
purchasedByorganizationMembershipId: (0, import_mysql_core27.varchar)("organizationMembershipId", {
length: 191
}),
organizationId: (0, import_mysql_core27.varchar)("organizationId", {
length: 191
}),
createdAt: (0, import_mysql_core27.timestamp)("createdAt", {
mode: "date",
fsp: 3
}).default(import_drizzle_orm25.sql`CURRENT_TIMESTAMP(3)`).notNull(),
totalAmount: (0, import_mysql_core27.decimal)("totalAmount", {
precision: 65,
scale: 30
}).notNull(),
ipAddress: (0, import_mysql_core27.varchar)("ip_address", {
length: 191
}),
city: (0, import_mysql_core27.varchar)("city", {
length: 191
}),
state: (0, import_mysql_core27.varchar)("state", {
length: 191
}),
country: (0, import_mysql_core27.varchar)("country", {
length: 191
}),
couponId: (0, import_mysql_core27.varchar)("couponId", {
length: 191
}),
productId: (0, import_mysql_core27.varchar)("productId", {
length: 191
}).notNull(),
merchantChargeId: (0, import_mysql_core27.varchar)("merchantChargeId", {
length: 191
}),
upgradedFromId: (0, import_mysql_core27.varchar)("upgradedFromId", {
length: 191
}),
status: (0, import_mysql_core27.varchar)("status", {
length: 191
}).default("Valid").notNull(),
bulkCouponId: (0, import_mysql_core27.varchar)("bulkCouponId", {
length: 191
}),
merchantSessionId: (0, import_mysql_core27.varchar)("merchantSessionId", {
length: 191
}),
redeemedBulkCouponId: (0, import_mysql_core27.varchar)("redeemedBulkCouponId", {
length: 191
}),
fields: (0, import_mysql_core27.json)("fields").$type().default({})
}, (table) => {
return {
purchaseId: (0, import_mysql_core27.primaryKey)({
columns: [
table.id
],
name: "Purchase_id"
}),
merchantChargeIdIdx: (0, import_mysql_core27.index)("idx_Purchase_on_merchantChargeId").on(table.merchantChargeId),
purchaseUpgradedFromIdKey: (0, import_mysql_core27.unique)("Purchase_upgradedFromId_key").on(table.upgradedFromId),
organizationIdIdx: (0, import_mysql_core27.index)("organizationId_idx").on(table.organizationId),
organizationMembershipIdIdx: (0, import_mysql_core27.index)("organizationMembershipId_idx").on(table.purchasedByorganizationMembershipId)
};
});
}
__name(getPurchaseSchema, "getPurchaseSchema");
// src/lib/mysql/schemas/communication/comment.ts
var import_drizzle_orm26 = require("drizzle-orm");
var import_mysql_core28 = require("drizzle-orm/mysql-core");
function getCommentsSchema(mysqlTable) {
return mysqlTable("Comment", {
id: (0, import_mysql_core28.varchar)("id", {
length: 191
}).notNull(),
userId: (0, import_mysql_core28.varchar)("userId", {
length: 255
}).notNull(),
organizationMembershipId: (0, import_mysql_core28.varchar)("organizationMembershipId", {
length: 255
}),
context: (0, import_mysql_core28.json)("context").$type().default({}),
text: (0, import_mysql_core28.text)("text").notNull(),
createdAt: (0, import_mysql_core28.timestamp)("createdAt", {
mode: "date",
fsp: 3
}).default(import_drizzle_orm26.sql`CURRENT_TIMESTAMP(3)`),
updatedAt: (0, import_mysql_core28.timestamp)("updatedAt", {
mode: "date",
fsp: 3
}).default(import_drizzle_orm26.sql`CURRENT_TIMESTAMP(3)`),
deletedAt: (0, import_mysql_core28.timestamp)("deletedAt", {
mode: "date",
fsp: 3
})
}, (crr) => ({
pk: (0, import_mysql_core28.primaryKey)({
columns: [
crr.id
]
}),
crrUserIdIdKey: (0, import_mysql_core28.index)("crr_userIdId_idx").on(crr.userId),
organizationMembershipIdIdx: (0, import_mysql_core28.index)("organizationMembershipId_idx").on(crr.organizationMembershipId)
}));
}
__name(getCommentsSchema, "getCommentsSchema");
// src/lib/mysql/schemas/communication/communication-preferences.ts
var import_drizzle_orm27 = require("drizzle-orm");
var import_mysql_core31 = require("drizzle-orm/mysql-core");
// src/lib/mysql/schemas/communication/communication-channel.ts
var import_mysql_core29 = require("drizzle-orm/mysql-core");
// src/lib/mysql/schemas/communication/communication-preference-types.ts
var import_mysql_core30 = require("drizzle-orm/mysql-core");
// src/lib/mysql/schemas/communication/communication-preferences.ts
function getCommunicationPreferencesSchema(mysqlTable) {
return mysqlTable("CommunicationPreference", {
id: (0, import_mysql_core31.varchar)("id", {
length: 255
}).notNull().primaryKey(),
organizationId: (0, import_mysql_core31.varchar)("organizationId", {
length: 191
}),
userId: (0, import_mysql_core31.varchar)("userId", {
length: 255
}).notNull(),
organizationMembershipId: (0, import_mysql_core31.varchar)("organizationMembershipId", {
length: 255
}),
channelId: (0, import_mysql_core31.varchar)("channelId", {
length: 255
}).notNull(),
preferenceLevel: (0, import_mysql_core31.mysqlEnum)("preferenceLevel", [
"low",
"medium",
"high"
]).notNull().default("medium"),
preferenceTypeId: (0, import_mysql_core31.varchar)("preferenceTypeId", {
length: 255
}).notNull(),
active: (0, import_mysql_core31.boolean)("active").notNull().default(true),
createdAt: (0, import_mysql_core31.timestamp)("createdAt", {
mode: "date",
fsp: 3
}).defaultNow(),
optInAt: (0, import_mysql_core31.timestamp)("optInAt", {
mode: "date",
fsp: 3
}),
optOutAt: (0, import_mysql_core31.timestamp)("optOutAt", {
mode: "date",
fsp: 3
}),
updatedAt: (0, import_mysql_core31.timestamp)("updatedAt", {
mode: "date",
fsp: 3
}).defaultNow(),
deletedAt: (0, import_mysql_core31.timestamp)("deletedAt", {
mode: "date",
fsp: 3
})
}, (cp) => ({
userIdIdx: (0, import_mysql_core31.index)("userId_idx").on(cp.userId),
preferenceTypeIdx: (0, import_mysql_core31.index)("preferenceTypeId_idx").on(cp.preferenceTypeId),
channelIdIdx: (0, import_mysql_core31.index)("channelId_idx").on(cp.channelId),
organizationMembershipIdIdx: (0, import_mysql_core31.index)("organizationMembershipId_idx").on(cp.organizationMembershipId)
}));
}
__name(getCommunicationPreferencesSchema, "getCommunicationPreferencesSchema");
// src/lib/mysql/schemas/auth/accounts.ts
var import_drizzle_orm28 = require("drizzle-orm");
var import_mysql_core32 = require("drizzle-orm/mysql-core");
function getAccountsSchema(mysqlTable) {
return mysqlTable("Account", {
userId: (0, import_mysql_core32.varchar)("userId", {
length: 255
}).notNull(),
type: (0, import_mysql_core32.varchar)("type", {
length: 255
}).$type().notNull(),
provider: (0, import_mysql_core32.varchar)("provider", {
length: 255
}).notNull(),
providerAccountId: (0, import_mysql_core32.varchar)("providerAccountId", {
length: 255
}).notNull(),
refresh_token: (0, import_mysql_core32.text)("refresh_token"),
access_token: (0, import_mysql_core32.text)("access_token"),
oauth_token: (0, import_mysql_core32.text)("oauth_token"),
oauth_token_secret: (0, import_mysql_core32.text)("oauth_token_secret"),
expires_at: (0, import_mysql_core32.int)("expires_at"),
token_type: (0, import_mysql_core32.varchar)("token_type", {
length: 255
}),
scope: (0, import_mysql_core32.varchar)("scope", {
length: 255
}),
id_token: (0, import_mysql_core32.text)("id_token"),
session_state: (0, import_mysql_core32.varchar)("session_state", {
length: 255
}),
refresh_token_expires_in: (0, import_mysql_core32.int)("refresh_token_expires_in")
}, (account) => ({
pk: (0, import_mysql_core32.primaryKey)({
columns: [
account.provider,
account.providerAccountId
]
}),
userIdIdx: (0, import_mysql_core32.index)("userId_idx").on(account.userId)
}));
}
__name(getAccountsSchema, "getAccountsSchema");
// src/lib/mysql/schemas/auth/profiles.ts
var import_drizzle_orm29 = require("drizzle-orm");
var import_mysql_core33 = require("drizzle-orm/mysql-core");
function getProfilesSchema(mysqlTable) {
return mysqlTable("Profile", {
id: (0, import_mysql_core33.varchar)("id", {
length: 255
}).notNull().primaryKey(),
userId: (0, import_mysql_core33.varchar)("userId", {
length: 255
}).notNull(),
type: (0, import_mysql_core33.varchar)("type", {
length: 255
}).notNull(),
fields: (0, import_mysql_core33.json)("fields").$type().default({}),
createdAt: (0, import_mysql_core33.timestamp)("createdAt", {
mode: "date",
fsp: 3
}).default(import_drizzle_orm29.sql`CURRENT_TIMESTAMP(3)`),
updatedAt: (0, import_mysql_core33.timestamp)("updatedAt", {
mode: "date",
fsp: 3
}).default(import_drizzle_orm29.sql`CURRENT_TIMESTAMP(3)`)
}, (profile) => ({
userIdIdx: (0, import_mysql_core33.index)("userId_idx").on(profile.userId),
uniqueUserType: (0, import_mysql_core33.uniqueIndex)("unique_user_type_idx").on(profile.userId, profile.type)
}));
}
__name(getProfilesSchema, "getProfilesSchema");
// src/lib/mysql/schemas/auth/user-permissions.ts
var import_drizzle_orm31 = require("drizzle-orm");
var import_mysql_core35 = require("drizzle-orm/mysql-core");
// src/lib/mysql/schemas/auth/permissions.ts
var import_drizzle_orm30 = require("drizzle-orm");
var import_mysql_core34 = require("drizzle-orm/mysql-core");
// src/lib/mysql/schemas/auth/user-permissions.ts
function getUserPermissionsSchema(mysqlTable) {
return mysqlTable("UserPermission", {
userId: (0, import_mysql_core35.varchar)("userId", {
length: 255
}).notNull(),
organizationId: (0, import_mysql_core35.varchar)("organizationId", {
length: 191
}),
permissionId: (0, import_mysql_core35.varchar)("permissionId", {
length: 255
}).notNull(),
active: (0, import_mysql_core35.boolean)("active").notNull().default(true),
createdAt: (0, import_mysql_core35.timestamp)("createdAt", {
mode: "date",
fsp: 3
}).defaultNow(),
updatedAt: (0, import_mysql_core35.timestamp)("updatedAt", {
mode: "date",
fsp: 3
}).defaultNow(),
deletedAt: (0, import_mysql_core35.timestamp)("deletedAt", {
mode: "date",
fsp: 3
})
}, (up) => ({
pk: (0, import_mysql_core35.primaryKey)({
columns: [
up.userId,
up.permissionId
]
}),
userIdIdx: (0, import_mysql_core35.index)("userId_idx").on(up.userId),
permissionIdIdx: (0, import_mysql_core35.index)("permissionId_idx").on(up.permissionId),
organizationIdIdx: (0, import_mysql_core35.index)("organizationId_idx").on(up.organizationId)
}));
}
__name(getUserPermissionsSchema, "getUserPermissionsSchema");
// src/lib/mysql/schemas/auth/user-prefs.ts
var import_drizzle_orm32 = require("drizzle-orm");
var import_mysql_core36 = require("drizzle-orm/mysql-core");
function getUserPrefsSchema(mysqlTable) {
return mysqlTable("UserPrefs", {
id: (0, import_mysql_core36.varchar)("id", {
length: 191
}).notNull(),
organizationId: (0, import_mysql_core36.varchar)("organizationId", {
length: 191
}),
type: (0, import_mysql_core36.varchar)("type", {
length: 191
}).default("Global").notNull(),
userId: (0, import_mysql_core36.varchar)("userId", {
length: 255
}).notNull(),
fields: (0, import_mysql_core36.json)("fields").$type().default({}),
createdAt: (0, import_mysql_core36.timestamp)("createdAt", {
mode: "date",
fsp: 3
}).default(import_drizzle_orm32.sql`CURRENT_TIMESTAMP(3)`),
updatedAt: (0, import_mysql_core36.timestamp)("updatedAt", {
mode: "date",
fsp: 3
}).default(import_drizzle_orm32.sql`CURRENT_TIMESTAMP(3)`),
deletedAt: (0, import_mysql_core36.timestamp)("deletedAt", {
mode: "date",
fsp: 3
})
}, (crr) => ({
pk: (0, import_mysql_core36.primaryKey)({
columns: [
crr.id
]
}),
crrUserIdIdKey: (0, import_mysql_core36.index)("crr_userIdId_idx").on(crr.userId),
organizationIdIdx: (0, import_mysql_core36.index)("organizationId_idx").on(crr.organizationId)
}));
}
__name(getUserPrefsSchema, "getUserPrefsSchema");
// src/lib/mysql/schemas/auth/users.ts
function getUsersSchema(mysqlTable) {
return mysqlTable("User", {
id: (0, import_mysql_core37.varchar)("id", {
length: 255
}).notNull().primaryKey(),
name: (0, import_mysql_core37.varchar)("name", {
length: 255
}),
role: (0, import_mysql_core37.varchar)("role", {
length: 191
}).notNull().default("user"),
email: (0, import_mysql_core37.varchar)("email", {
length: 255
}).notNull().unique(),
fields: (0, import_mysql_core37.json)("fields").$type().default({}),
emailVerified: (0, import_mysql_core37.timestamp)("emailVerified", {
mode: "date",
fsp: 3
}),
image: (0, import_mysql_core37.varchar)("image", {
length: 255
}),
createdAt: (0, import_mysql_core37.timestamp)("createdAt", {
mode: "date",
fsp: 3
}).default(import_drizzle_orm33.sql`CURRENT_TIMESTAMP(3)`)
}, (user) => ({
emailIdx: (0, import_mysql_core37.index)("email_idx").on(user.email),
roleIdx: (0, import_mysql_core37.index)("role_idx").on(user.role),
createdAtIdx: (0, import_mysql_core37.index)("created_at_idx").on(user.createdAt)
}));
}
__name(getUsersSchema, "getUsersSchema");
function getUsersRelationsSchema(mysqlTable) {
const users = getUsersSchema(mysqlTable);
const profiles = getProfilesSchema(mysqlTable);
const accounts = getAccountsSchema(mysqlTable);
const communicationPreferences = getCommunicationPreferencesSchema(mysqlTable);
const userRoles = getUserRolesSchema(mysqlTable);
const userPermissions = getUserPermissionsSchema(mysqlTable);
const contentContributions = getContentContributionsSchema(mysqlTable);
const contentResource = getContentResourceSchema(mysqlTable);
const purchases = getPurchaseSchema(mysqlTable);
const comments = getCommentsSchema(mysqlTable);
const userPrefs = getUserPrefsSchema(mysqlTable);
const organizationMemberships = getOrganizationMembershipsSchema(mysqlTable);
return (0, import_drizzle_orm33.relations)(users, ({ many, one }) => ({
profiles: many(profiles, {
relationName: "profiles"
}),
accounts: many(accounts, {
relationName: "user"
}),
purchases: many(purchases, {
relationName: "user"
}),
communicationPreferences: many(communicationPreferences, {
relationName: "user"
}),
roles: many(userRoles, {
relationName: "user"
}),
userPermissions: many(userPermissions, {
relationName: "user"
}),
contributions: many(contentContributions, {
relationName: "user"
}),
createdContent: many(contentResource, {
relationName: "user"
}),
comments: many(comments, {
relationName: "user"
}),
prefs: many(userPrefs, {
relationName: "user"
}),
organizationMemberships: many(organizationMemberships, {
relationName: "user"
})
}));
}
__name(getUsersRelationsSchema, "getUsersRelationsSchema");
// Annotate the CommonJS export names for ESM import in node:
0 && (module.exports = {
getUsersRelationsSchema,
getUsersSchema
});
//# sourceMappingURL=users.cjs.map