UNPKG

@coursebuilder/adapter-drizzle

Version:

Drizzle adapter for Course Builder.

1 lines 3.13 kB
{"version":3,"sources":["../../../../../src/lib/mysql/schemas/content/lesson-progress.ts"],"sourcesContent":["import { sql } from 'drizzle-orm'\nimport {\n\tdatetime,\n\tindex,\n\tjson,\n\tMySqlTableFn,\n\tprimaryKey,\n\tvarchar,\n} from 'drizzle-orm/mysql-core'\n\nexport function getLessonProgressSchema(mysqlTable: MySqlTableFn) {\n\treturn mysqlTable(\n\t\t'LessonProgress',\n\t\t{\n\t\t\tid: varchar('id', { length: 191 }).notNull().primaryKey(),\n\t\t\tuserId: varchar('userId', { length: 191 }).notNull(),\n\t\t\torganizationId: varchar('organizationId', { length: 191 }),\n\t\t\torganizationMembershipId: varchar('organizationMembershipId', {\n\t\t\t\tlength: 191,\n\t\t\t}),\n\t\t\tlessonId: varchar('lessonId', { length: 191 }),\n\t\t\tlessonSlug: varchar('lessonSlug', { length: 191 }),\n\t\t\tlessonVersion: varchar('lessonVersion', { length: 191 }),\n\t\t\tsectionId: varchar('sectionId', { length: 191 }),\n\t\t\tmoduleId: varchar('moduleId', { length: 191 }),\n\t\t\tcompletedAt: datetime('completedAt', { mode: 'date', fsp: 3 }),\n\t\t\tupdatedAt: datetime('updatedAt', { mode: 'date', fsp: 3 }),\n\t\t\tcreatedAt: datetime('createdAt', { mode: 'date', fsp: 3 })\n\t\t\t\t.default(sql`CURRENT_TIMESTAMP(3)`)\n\t\t\t\t.notNull(),\n\t\t},\n\t\t(crp) => {\n\t\t\treturn {\n\t\t\t\tuserIdLessonIdIdx: index('crp_userId_contentResourceId_idx').on(\n\t\t\t\t\tcrp.userId,\n\t\t\t\t\tcrp.lessonId,\n\t\t\t\t),\n\t\t\t\tuserIdIdx: index('userId_idx').on(crp.userId),\n\t\t\t\tlessonIdIdx: index('lessonId_idx').on(crp.lessonId),\n\t\t\t\torganizationMembershipIdIdx: index('organizationMembershipId_idx').on(\n\t\t\t\t\tcrp.organizationMembershipId,\n\t\t\t\t),\n\t\t\t}\n\t\t},\n\t)\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;AAAA;;;;;yBAAoB;AACpB,wBAOO;AAEA,SAASA,wBAAwBC,YAAwB;AAC/D,SAAOA,WACN,kBACA;IACCC,QAAIC,2BAAQ,MAAM;MAAEC,QAAQ;IAAI,CAAA,EAAGC,QAAO,EAAGC,WAAU;IACvDC,YAAQJ,2BAAQ,UAAU;MAAEC,QAAQ;IAAI,CAAA,EAAGC,QAAO;IAClDG,oBAAgBL,2BAAQ,kBAAkB;MAAEC,QAAQ;IAAI,CAAA;IACxDK,8BAA0BN,2BAAQ,4BAA4B;MAC7DC,QAAQ;IACT,CAAA;IACAM,cAAUP,2BAAQ,YAAY;MAAEC,QAAQ;IAAI,CAAA;IAC5CO,gBAAYR,2BAAQ,cAAc;MAAEC,QAAQ;IAAI,CAAA;IAChDQ,mBAAeT,2BAAQ,iBAAiB;MAAEC,QAAQ;IAAI,CAAA;IACtDS,eAAWV,2BAAQ,aAAa;MAAEC,QAAQ;IAAI,CAAA;IAC9CU,cAAUX,2BAAQ,YAAY;MAAEC,QAAQ;IAAI,CAAA;IAC5CW,iBAAaC,4BAAS,eAAe;MAAEC,MAAM;MAAQC,KAAK;IAAE,CAAA;IAC5DC,eAAWH,4BAAS,aAAa;MAAEC,MAAM;MAAQC,KAAK;IAAE,CAAA;IACxDE,eAAWJ,4BAAS,aAAa;MAAEC,MAAM;MAAQC,KAAK;IAAE,CAAA,EACtDG,QAAQC,4CAAyB,EACjCjB,QAAO;EACV,GACA,CAACkB,QAAAA;AACA,WAAO;MACNC,uBAAmBC,yBAAM,kCAAA,EAAoCC,GAC5DH,IAAIhB,QACJgB,IAAIb,QAAQ;MAEbiB,eAAWF,yBAAM,YAAA,EAAcC,GAAGH,IAAIhB,MAAM;MAC5CqB,iBAAaH,yBAAM,cAAA,EAAgBC,GAAGH,IAAIb,QAAQ;MAClDmB,iCAA6BJ,yBAAM,8BAAA,EAAgCC,GAClEH,IAAId,wBAAwB;IAE9B;EACD,CAAA;AAEF;AAnCgBT;","names":["getLessonProgressSchema","mysqlTable","id","varchar","length","notNull","primaryKey","userId","organizationId","organizationMembershipId","lessonId","lessonSlug","lessonVersion","sectionId","moduleId","completedAt","datetime","mode","fsp","updatedAt","createdAt","default","sql","crp","userIdLessonIdIdx","index","on","userIdIdx","lessonIdIdx","organizationMembershipIdIdx"]}