@vue-skuilder/express 0.1.11-2 → 0.1.11-20

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 (45) hide show
  1. package/dist/app-factory.d.ts +1 -1
  2. package/dist/app-factory.d.ts.map +1 -1
  3. package/dist/app-factory.js +33 -7
  4. package/dist/app-factory.js.map +1 -1
  5. package/dist/app.js +30 -1
  6. package/dist/app.js.map +1 -1
  7. package/dist/assets/classroomDesignDoc.js +24 -0
  8. package/dist/assets/courseValidateDocUpdate.js +56 -0
  9. package/dist/assets/get-tagsDesignDoc.json +9 -0
  10. package/dist/attachment-preprocessing/index.d.ts +1 -1
  11. package/dist/attachment-preprocessing/index.d.ts.map +1 -1
  12. package/dist/attachment-preprocessing/index.js +94 -27
  13. package/dist/attachment-preprocessing/index.js.map +1 -1
  14. package/dist/client-requests/classroom-requests.d.ts.map +1 -1
  15. package/dist/client-requests/classroom-requests.js +2 -2
  16. package/dist/client-requests/classroom-requests.js.map +1 -1
  17. package/dist/client-requests/course-requests.d.ts.map +1 -1
  18. package/dist/client-requests/course-requests.js +8 -5
  19. package/dist/client-requests/course-requests.js.map +1 -1
  20. package/dist/couchdb/authentication.js +4 -4
  21. package/dist/couchdb/authentication.js.map +1 -1
  22. package/dist/couchdb/index.d.ts +4 -3
  23. package/dist/couchdb/index.d.ts.map +1 -1
  24. package/dist/couchdb/index.js +32 -27
  25. package/dist/couchdb/index.js.map +1 -1
  26. package/dist/design-docs.d.ts.map +1 -1
  27. package/dist/design-docs.js +9 -4
  28. package/dist/design-docs.js.map +1 -1
  29. package/dist/types.d.ts +5 -0
  30. package/dist/types.d.ts.map +1 -1
  31. package/dist/utils/env.d.ts +1 -0
  32. package/dist/utils/env.d.ts.map +1 -1
  33. package/dist/utils/env.js +3 -21
  34. package/dist/utils/env.js.map +1 -1
  35. package/package.json +5 -5
  36. package/src/app-factory.ts +40 -16
  37. package/src/app.ts +36 -1
  38. package/src/attachment-preprocessing/index.ts +108 -36
  39. package/src/client-requests/classroom-requests.ts +3 -2
  40. package/src/client-requests/course-requests.ts +8 -5
  41. package/src/couchdb/authentication.ts +4 -4
  42. package/src/couchdb/index.ts +54 -37
  43. package/src/design-docs.ts +10 -4
  44. package/src/types.ts +16 -10
  45. package/src/utils/env.ts +4 -25
@@ -18,5 +18,5 @@ export declare function createExpressApp(config: AppConfig): express.Application
18
18
  * Initialize background services and database connections.
19
19
  * This should be called after the server starts listening.
20
20
  */
21
- export declare function initializeServices(): Promise<void>;
21
+ export declare function initializeServices(config: AppConfig): Promise<void>;
22
22
  //# sourceMappingURL=app-factory.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"app-factory.d.ts","sourceRoot":"","sources":["../src/app-factory.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,aAAa,EAEd,MAAM,sBAAsB,CAAC;AAK9B,OAAO,OAAO,MAAM,SAAS,CAAC;AAsB9B,OAAO,KAAK,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAEzE,MAAM,WAAW,gBAAiB,SAAQ,OAAO,CAAC,OAAO;IACvD,IAAI,EAAE,aAAa,CAAC;CACrB;AAED;;;GAGG;AACH,MAAM,MAAM,SAAS,GAAG,mBAAmB,GAAG,iBAAiB,CAAC;AAuBhE;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,SAAS,GAAG,OAAO,CAAC,WAAW,CA6LvE;AAED;;;GAGG;AACH,wBAAsB,kBAAkB,IAAI,OAAO,CAAC,IAAI,CAAC,CAwBxD"}
1
+ {"version":3,"file":"app-factory.d.ts","sourceRoot":"","sources":["../src/app-factory.ts"],"names":[],"mappings":"AACA,OAAO,EAEL,aAAa,EAEd,MAAM,sBAAsB,CAAC;AAK9B,OAAO,OAAO,MAAM,SAAS,CAAC;AAmB9B,OAAO,KAAK,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAEzE,MAAM,WAAW,gBAAiB,SAAQ,OAAO,CAAC,OAAO;IACvD,IAAI,EAAE,aAAa,CAAC;CACrB;AAED;;;GAGG;AACH,MAAM,MAAM,SAAS,GAAG,mBAAmB,GAAG,iBAAiB,CAAC;AAwBhE;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,SAAS,GAAG,OAAO,CAAC,WAAW,CA6LvE;AAED;;;GAGG;AACH,wBAAsB,kBAAkB,CAAC,MAAM,EAAE,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC,CAiDzE"}
@@ -1,3 +1,4 @@
1
+ import { initializeDataLayer } from '@vue-skuilder/db';
1
2
  import { ServerRequestType as RequestEnum, prepareNote55, } from '@vue-skuilder/common';
2
3
  import { CourseLookup } from '@vue-skuilder/db';
3
4
  import cookieParser from 'cookie-parser';
@@ -9,7 +10,7 @@ import { ClassroomCreationQueue, ClassroomJoinQueue, ClassroomLeaveQueue, } from
9
10
  import { CourseCreationQueue, initCourseDBDesignDocInsert, } from './client-requests/course-requests.js';
10
11
  import { packCourse } from './client-requests/pack-requests.js';
11
12
  import { requestIsAuthenticated } from './couchdb/authentication.js';
12
- import CouchDB, { useOrCreateCourseDB, useOrCreateDB, } from './couchdb/index.js';
13
+ import { getCouchDB, initializeCouchDB, useOrCreateCourseDB, useOrCreateDB } from './couchdb/index.js';
13
14
  import { classroomDbDesignDoc } from './design-docs.js';
14
15
  import logger from './logger.js';
15
16
  import logsRouter from './routes/logs.js';
@@ -30,6 +31,7 @@ function convertToEnvConfig(config) {
30
31
  COUCHDB_PASSWORD: config.couchdb.password,
31
32
  VERSION: config.version,
32
33
  NODE_ENV: config.nodeEnv || 'development',
34
+ COURSE_IDS: config.courseIDs || [],
33
35
  };
34
36
  }
35
37
  /**
@@ -42,6 +44,8 @@ export function createExpressApp(config) {
42
44
  const envConfig = isExpressServerConfig(config)
43
45
  ? convertToEnvConfig(config)
44
46
  : config;
47
+ // Initialize CouchDB connection
48
+ initializeCouchDB(envConfig);
45
49
  // Configure CORS - use config if available, otherwise defaults
46
50
  const corsOptions = isExpressServerConfig(config) && config.cors
47
51
  ? config.cors
@@ -86,8 +90,8 @@ export function createExpressApp(config) {
86
90
  logger.info(`Delete request made on course ${req.params.courseID}...`);
87
91
  const auth = await requestIsAuthenticated(req);
88
92
  if (auth) {
89
- logger.info(`\tAuthenticated delete request made...`);
90
- const dbResp = await CouchDB.db.destroy(`coursedb-${req.params.courseID}`);
93
+ logger.info(` Authenticated delete request made...`);
94
+ const dbResp = await getCouchDB().db.destroy(`coursedb-${req.params.courseID}`);
91
95
  if (!dbResp.ok) {
92
96
  res.json({ success: false, error: dbResp });
93
97
  return;
@@ -143,7 +147,7 @@ export function createExpressApp(config) {
143
147
  }
144
148
  else if (body.type === RequestEnum.ADD_COURSE_DATA) {
145
149
  const payload = prepareNote55(body.data.courseID, body.data.codeCourse, body.data.shape, body.data.data, body.data.author, body.data.tags, body.data.uploads);
146
- CouchDB.use(`coursedb-${body.data.courseID}`)
150
+ getCouchDB().use(`coursedb-${body.data.courseID}`)
147
151
  .insert(payload)
148
152
  .then((r) => {
149
153
  logger.info(`\t\t\tCouchDB insert result: ${JSON.stringify(r)}`);
@@ -184,7 +188,7 @@ export function createExpressApp(config) {
184
188
  });
185
189
  app.get('/', (_req, res) => {
186
190
  let status = `Express service is running.\nVersion: ${envConfig.VERSION}\n`;
187
- CouchDB.session()
191
+ getCouchDB().session()
188
192
  .then((s) => {
189
193
  if (s.ok) {
190
194
  status += 'Couchdb is running.\n';
@@ -206,12 +210,34 @@ export function createExpressApp(config) {
206
210
  * Initialize background services and database connections.
207
211
  * This should be called after the server starts listening.
208
212
  */
209
- export async function initializeServices() {
213
+ export async function initializeServices(config) {
214
+ // Initialize data layer first
215
+ const envConfig = isExpressServerConfig(config)
216
+ ? convertToEnvConfig(config)
217
+ : config;
218
+ await initializeDataLayer({
219
+ type: 'couch',
220
+ options: {
221
+ COUCHDB_PASSWORD: envConfig.COUCHDB_PASSWORD,
222
+ COUCHDB_USERNAME: envConfig.COUCHDB_ADMIN,
223
+ COUCHDB_SERVER_PROTOCOL: envConfig.COUCHDB_PROTOCOL,
224
+ COUCHDB_SERVER_URL: envConfig.COUCHDB_SERVER,
225
+ },
226
+ }).catch((e) => {
227
+ logger.error('Error initializing data layer:', e);
228
+ // In programmatic mode, we shouldn't exit the process, but let the error propagate
229
+ throw e;
230
+ });
210
231
  try {
211
232
  // start the change-listener that does post-processing on user
212
233
  // media uploads
213
234
  void PostProcess();
214
- void initCourseDBDesignDocInsert();
235
+ initCourseDBDesignDocInsert().catch((error) => {
236
+ logger.error(`Error in initCourseDBDesignDocInsert background task: ${error}`);
237
+ if (error && typeof error === 'object') {
238
+ logger.error(`Full error details in initCourseDBDesignDocInsert: ${JSON.stringify(error)}`);
239
+ }
240
+ });
215
241
  void useOrCreateDB('classdb-lookup');
216
242
  try {
217
243
  await (await useOrCreateDB('coursedb')).insert({
@@ -1 +1 @@
1
- {"version":3,"file":"app-factory.js","sourceRoot":"","sources":["../src/app-factory.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"app-factory.js","sourceRoot":"","sources":["../src/app-factory.ts"],"names":[],"mappings":"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"}
package/dist/app.js CHANGED
@@ -1,6 +1,35 @@
1
1
  import { createExpressApp, initializeServices } from './app-factory.js';
2
2
  import logger from './logger.js';
3
3
  import ENV from './utils/env.js';
4
+ import dotenv from 'dotenv';
5
+ import { initializeCouchDB } from './couchdb/index.js';
6
+ import { initializeDataLayer } from '@vue-skuilder/db';
7
+ dotenv.config({
8
+ path: process.argv && process.argv.length == 3
9
+ ? process.argv[2]
10
+ : '.env.development',
11
+ });
12
+ // Now that dotenv is configured, we can validate the environment
13
+ const requiredVars = ['COUCHDB_SERVER', 'COUCHDB_PROTOCOL', 'COUCHDB_ADMIN', 'COUCHDB_PASSWORD', 'VERSION', 'NODE_ENV'];
14
+ const missingVars = requiredVars.filter(v => !process.env[v]);
15
+ if (missingVars.length > 0) {
16
+ missingVars.forEach(v => logger.error(`${v} not defined in environment`));
17
+ process.exit(1);
18
+ }
19
+ // Initialize CouchDB connection
20
+ initializeCouchDB(ENV);
21
+ initializeDataLayer({
22
+ type: 'couch',
23
+ options: {
24
+ COUCHDB_PASSWORD: ENV.COUCHDB_PASSWORD,
25
+ COUCHDB_USERNAME: ENV.COUCHDB_ADMIN,
26
+ COUCHDB_SERVER_PROTOCOL: ENV.COUCHDB_PROTOCOL,
27
+ COUCHDB_SERVER_URL: ENV.COUCHDB_SERVER,
28
+ },
29
+ }).catch((e) => {
30
+ logger.error('Error initializing data layer:', e);
31
+ process.exit(1);
32
+ });
4
33
  process.on('unhandledRejection', (reason, promise) => {
5
34
  logger.error('Unhandled Rejection at:', promise, 'reason:', reason);
6
35
  });
@@ -18,7 +47,7 @@ const init = async () => {
18
47
  while (!listening) {
19
48
  await new Promise((resolve) => setTimeout(resolve, 100));
20
49
  }
21
- await initializeServices();
50
+ await initializeServices(ENV);
22
51
  };
23
52
  init().catch((e) => {
24
53
  logger.error(`Error initializing app: ${JSON.stringify(e)}`);
package/dist/app.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"app.js","sourceRoot":"","sources":["../src/app.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AACxE,OAAO,MAAM,MAAM,aAAa,CAAC;AACjC,OAAO,GAAG,MAAM,gBAAgB,CAAC;AAEjC,OAAO,CAAC,EAAE,CAAC,oBAAoB,EAAE,CAAC,MAAM,EAAE,OAAO,EAAE,EAAE;IACnD,MAAM,CAAC,KAAK,CAAC,yBAAyB,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,CAAC,CAAC;AACtE,CAAC,CAAC,CAAC;AAEH,MAAM,CAAC,IAAI,CAAC,gCAAgC,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC;AAE3D,MAAM,IAAI,GAAG,IAAI,CAAC;AAClB,IAAI,SAAS,GAAG,KAAK,CAAC;AAEtB,0CAA0C;AAC1C,MAAM,GAAG,GAAG,gBAAgB,CAAC,GAAG,CAAC,CAAC;AAElC,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE,GAAG,EAAE;IACpB,SAAS,GAAG,IAAI,CAAC;IACjB,MAAM,CAAC,IAAI,CAAC,iCAAiC,IAAI,GAAG,CAAC,CAAC;AACxD,CAAC,CAAC,CAAC;AAEH,oCAAoC;AACpC,MAAM,IAAI,GAAG,KAAK,IAAmB,EAAE;IACrC,OAAO,CAAC,SAAS,EAAE,CAAC;QAClB,MAAM,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC,CAAC;IAC3D,CAAC;IACD,MAAM,kBAAkB,EAAE,CAAC;AAC7B,CAAC,CAAC;AAEF,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE;IACjB,MAAM,CAAC,KAAK,CAAC,2BAA2B,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;AAC/D,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"app.js","sourceRoot":"","sources":["../src/app.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,24 @@
1
+ function (newDoc, oldDoc, userCtx, secObj) {
2
+ // from https://github.com/iriscouch/manage_couchdb/blob/master/js/validate_doc_update.js
3
+
4
+ var ddoc = this;
5
+
6
+ secObj.admins = secObj.admins || {};
7
+ secObj.admins.names = secObj.admins.names || [];
8
+ secObj.admins.roles = secObj.admins.roles || [];
9
+
10
+ var IS_DB_ADMIN = false;
11
+ if (~userCtx.roles.indexOf('_admin'))
12
+ IS_DB_ADMIN = true;
13
+ if (~secObj.admins.names.indexOf(userCtx.name))
14
+ IS_DB_ADMIN = true;
15
+ for (var i = 0; i < userCtx.roles; i++)
16
+ if (~secObj.admins.roles.indexOf(userCtx.roles[i]))
17
+ IS_DB_ADMIN = true;
18
+
19
+ if (ddoc.access && ddoc.access.read_only)
20
+ if (IS_DB_ADMIN)
21
+ log('Admin change on read-only db: ' + newDoc._id);
22
+ else
23
+ throw { 'forbidden': 'This database is read-only' };
24
+ }
@@ -0,0 +1,56 @@
1
+ function(newDoc, oldDoc, userCtx, secObj) {
2
+ // Skip validation for deletions
3
+ if (newDoc._deleted) return;
4
+
5
+ // Always allow admins to do anything
6
+ if (userCtx.roles.indexOf('_admin') !== -1) return;
7
+
8
+ // For CourseConfig document - we need special handling
9
+ if (newDoc._id === 'CourseConfig') {
10
+ // Allow the creator or admins listed in the document to modify it
11
+ if (oldDoc && oldDoc.creator === userCtx.name) return;
12
+ if (oldDoc && oldDoc.admins && Array.isArray(oldDoc.admins) && oldDoc.admins.indexOf(userCtx.name) !== -1) return;
13
+
14
+ // For updates, if user is not creator or admin, deny
15
+ if (oldDoc) {
16
+ throw({forbidden: "Only course creator or admins can modify course configuration"});
17
+ }
18
+
19
+ // For new course config, allow (initial creation is secured at API level)
20
+ return;
21
+ }
22
+
23
+ // For all other documents
24
+ var isAdmin = false;
25
+ var isModerator = false;
26
+
27
+ // Course admins and moderators can edit anything
28
+ // (Since we can't check CourseConfig directly, we rely on document author for regular docs)
29
+
30
+ // Document has author field that matches current user - allow
31
+ if (oldDoc && oldDoc.author === userCtx.name) return;
32
+
33
+ // Allow document creation by any authenticated user
34
+ if (!oldDoc) {
35
+ if (!userCtx.name) {
36
+ throw({forbidden: "You must be logged in to create documents"});
37
+ }
38
+
39
+ // Ensure new documents have an author field that matches the current user
40
+ if (!newDoc.author || newDoc.author !== userCtx.name) {
41
+ throw({forbidden: "Document author must match your username"});
42
+ }
43
+
44
+ return;
45
+ }
46
+
47
+ // For updates to existing documents, deny if not the original author
48
+ if (oldDoc && oldDoc.author && oldDoc.author !== userCtx.name) {
49
+ throw({forbidden: "You can only modify your own documents"});
50
+ }
51
+
52
+ // Special case for design documents - only admins can modify (handled above)
53
+ if (newDoc._id.startsWith('_design/')) {
54
+ throw({forbidden: "Only admins can modify design documents"});
55
+ }
56
+ }
@@ -0,0 +1,9 @@
1
+ {
2
+ "_id": "_design/getTags",
3
+ "views": {
4
+ "get-tags": {
5
+ "map": "function (doc) {\n if (doc.docType && doc.docType === \"TAG\"\n) {\n for (var cardIndex in doc.taggedCards){\n emit(doc.taggedCards[cardIndex], {\n docType: doc.docType,\n name: doc.name,\n snippit: doc.snippit,\n wiki: '',\n taggedCards: []\n });\n }\n }\n}"
6
+ }
7
+ },
8
+ "language": "javascript"
9
+ }
@@ -7,5 +7,5 @@ export declare function postProcessCourse(courseID: string): void;
7
7
  * Connect to CouchDB, monitor changes to uploaded card data,
8
8
  * perform post-processing on uploaded media
9
9
  */
10
- export default function postProcess(): Promise<void>;
10
+ export default function postProcess(courseIDs?: string[]): Promise<void>;
11
11
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/attachment-preprocessing/index.ts"],"names":[],"mappings":"AA2BA;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CA2BxD;AAED;;;GAGG;AACH,wBAA8B,WAAW,IAAI,OAAO,CAAC,IAAI,CAAC,CAoDzD"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/attachment-preprocessing/index.ts"],"names":[],"mappings":"AA2BA;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAyCxD;AAED;;;GAGG;AACH,wBAA8B,WAAW,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAkF7E"}
@@ -1,4 +1,4 @@
1
- import CouchDB from '../couchdb/index.js';
1
+ import { getCouchDB } from '../couchdb/index.js';
2
2
  import { normalize } from './normalize.js';
3
3
  import AsyncProcessQueue from '../utils/processQueue.js';
4
4
  import logger from '../logger.js';
@@ -12,10 +12,23 @@ const Q = new AsyncProcessQueue(processDocAttachments);
12
12
  */
13
13
  export function postProcessCourse(courseID) {
14
14
  try {
15
- logger.info(`Following course ${courseID}`);
15
+ logger.info(`postProcessCourse: Starting for courseID: ${courseID}`);
16
16
  const crsString = `coursedb-${courseID}`;
17
+ logger.debug(`postProcessCourse: Using database name: ${crsString}`);
17
18
  // Get database instance
18
- const db = CouchDB.use(crsString);
19
+ const db = getCouchDB().use(crsString);
20
+ // Test database existence before setting up change listener
21
+ db.info().catch((e) => {
22
+ if (e && typeof e === 'object' && 'status' in e && e.status === 404) {
23
+ logger.error(`postProcessCourse: Database "${crsString}" does not exist. Expected database name may be incorrect for courseID: ${courseID}`);
24
+ return;
25
+ }
26
+ logger.error(`postProcessCourse: Error checking database "${crsString}": ${e}`);
27
+ // Log full error details for debugging
28
+ if (e && typeof e === 'object') {
29
+ logger.error(`postProcessCourse: Full error details for ${crsString}:`, e);
30
+ }
31
+ });
19
32
  const courseFilter = filterFactory(courseID);
20
33
  db.changesReader
21
34
  .start({
@@ -39,33 +52,56 @@ export function postProcessCourse(courseID) {
39
52
  * Connect to CouchDB, monitor changes to uploaded card data,
40
53
  * perform post-processing on uploaded media
41
54
  */
42
- export default async function postProcess() {
55
+ export default async function postProcess(courseIDs) {
43
56
  try {
44
57
  logger.info(`Following all course databases for changes...`);
45
- // Existing behavior for platform-ui courses
46
- const courses = await CourseLookup.allCourseWare();
47
- const processedCourseIds = new Set();
48
- for (const course of courses) {
58
+ let processedCourseIds = new Set();
59
+ if (courseIDs && courseIDs.length > 0) {
60
+ processedCourseIds = new Set(courseIDs);
61
+ }
62
+ else {
63
+ // Existing behavior for platform-ui courses
49
64
  try {
50
- postProcessCourse(course._id);
51
- processedCourseIds.add(`coursedb-${course._id}`);
65
+ const courses = await CourseLookup.allCourseWare();
66
+ for (const course of courses) {
67
+ try {
68
+ postProcessCourse(course._id);
69
+ processedCourseIds.add(`coursedb-${course._id}`);
70
+ }
71
+ catch (e) {
72
+ logger.error(`Error processing course ${course._id}: ${e}`);
73
+ throw e;
74
+ }
75
+ }
52
76
  }
53
77
  catch (e) {
54
- logger.error(`Error processing course ${course._id}: ${e}`);
55
- throw e;
78
+ // Handle CourseLookup.allCourseWare() failure gracefully
79
+ if (e && typeof e === 'object' && 'error' in e && e.error === 'not_found') {
80
+ logger.warn('Course lookup database not found - skipping platform course discovery');
81
+ }
82
+ else {
83
+ logger.error(`Error fetching course list from CourseLookup: ${e}`);
84
+ if (e && typeof e === 'object' && 'status' in e && e.status === 404) {
85
+ logger.error(`Database connection failed - this might indicate a database name mismatch or connection issue`);
86
+ }
87
+ }
88
+ // Continue to studio mode discovery even if platform courses fail
56
89
  }
57
90
  }
58
91
  // Studio mode: discover additional databases not in coursedb-lookup
59
92
  if (ENV.NODE_ENV === 'studio') {
60
93
  logger.info('Studio mode detected: scanning for additional course databases...');
61
94
  try {
62
- const allDbs = await CouchDB.db.list();
63
- const studioDbs = allDbs.filter(db => db.startsWith('coursedb-') &&
64
- !processedCourseIds.has(db));
65
- logger.info(`Found ${studioDbs.length} potential studio databases`);
95
+ const allDbs = await getCouchDB().db.list();
96
+ logger.debug(`All databases found: ${allDbs.join(', ')}`);
97
+ const studioDbs = allDbs.filter((db) => db.startsWith('coursedb-') && !processedCourseIds.has(db));
98
+ logger.info(`Found ${studioDbs.length} potential studio databases: ${studioDbs.join(', ')}`);
99
+ logger.debug(`Already processed course IDs: ${Array.from(processedCourseIds).join(', ')}`);
66
100
  for (const studioDb of studioDbs) {
67
101
  const courseId = studioDb.replace('coursedb-', '');
102
+ logger.debug(`Checking studio database: ${studioDb} (courseId: ${courseId})`);
68
103
  try {
104
+ logger.debug(`Calling hasCourseConfig for: ${studioDb}`);
69
105
  if (await hasCourseConfig(studioDb)) {
70
106
  logger.info(`Starting postprocessing for studio database: ${studioDb}`);
71
107
  postProcessCourse(courseId);
@@ -76,6 +112,10 @@ export default async function postProcess() {
76
112
  }
77
113
  catch (e) {
78
114
  logger.error(`Error processing studio database ${studioDb}: ${e}`);
115
+ // Log the full error object for debugging
116
+ if (e && typeof e === 'object') {
117
+ logger.error(`Error details for ${studioDb}:`, e);
118
+ }
79
119
  }
80
120
  }
81
121
  }
@@ -89,7 +129,9 @@ export default async function postProcess() {
89
129
  }
90
130
  }
91
131
  function filterFactory(courseID) {
92
- const courseDatabase = CouchDB.use(`coursedb-${courseID}`);
132
+ const databaseName = `coursedb-${courseID}`;
133
+ logger.debug(`filterFactory: Creating filter for database: ${databaseName}`);
134
+ const courseDatabase = getCouchDB().use(databaseName);
93
135
  return async function filterChanges(changeItem) {
94
136
  try {
95
137
  const docNoAttachments = await courseDatabase.get(changeItem.id, {
@@ -135,7 +177,7 @@ async function processDocAttachments(request) {
135
177
  status: 'warning',
136
178
  };
137
179
  }
138
- const courseDatabase = CouchDB.use(`coursedb-${request.courseID}`);
180
+ const courseDatabase = getCouchDB().use(`coursedb-${request.courseID}`);
139
181
  const doc = await courseDatabase.get(request.docID, {
140
182
  attachments: true,
141
183
  att_encoding_info: true,
@@ -180,24 +222,49 @@ async function processDocAttachments(request) {
180
222
  */
181
223
  async function hasCourseConfig(databaseName) {
182
224
  try {
183
- const db = CouchDB.use(databaseName);
225
+ logger.debug(`hasCourseConfig: Accessing database: ${databaseName}`);
226
+ const db = getCouchDB().use(databaseName);
227
+ // First check if database exists by trying to get info
228
+ try {
229
+ await db.info();
230
+ logger.debug(`hasCourseConfig: Database ${databaseName} exists, checking for course config`);
231
+ }
232
+ catch (infoError) {
233
+ if (infoError && typeof infoError === 'object' && 'status' in infoError && infoError.status === 404) {
234
+ logger.debug(`hasCourseConfig: Database ${databaseName} does not exist (404)`);
235
+ return false;
236
+ }
237
+ logger.warn(`hasCourseConfig: Error getting info for database ${databaseName}: ${infoError}`);
238
+ throw infoError;
239
+ }
184
240
  // Try to find a course configuration document
185
241
  // Course databases should have documents with course metadata
186
242
  const result = await db.find({
187
243
  selector: {
188
244
  $or: [
189
- { 'type': 'course' },
190
- { 'shape': { $exists: true } },
191
- { 'course_id': { $exists: true } },
192
- { 'courseID': { $exists: true } }
193
- ]
245
+ { type: 'course' },
246
+ { shape: { $exists: true } },
247
+ { course_id: { $exists: true } },
248
+ { courseID: { $exists: true } },
249
+ ],
194
250
  },
195
- limit: 1
251
+ limit: 1,
196
252
  });
197
- return result.docs && result.docs.length > 0;
253
+ const hasConfig = result.docs && result.docs.length > 0;
254
+ logger.debug(`hasCourseConfig: Database ${databaseName} has course config: ${hasConfig}`);
255
+ return hasConfig;
198
256
  }
199
257
  catch (e) {
200
- logger.debug(`Error checking course config for ${databaseName}: ${e}`);
258
+ // Handle specific database not found errors
259
+ if (e && typeof e === 'object' && 'error' in e && e.error === 'not_found') {
260
+ logger.debug(`hasCourseConfig: Database ${databaseName} does not exist (not_found error)`);
261
+ return false;
262
+ }
263
+ logger.error(`hasCourseConfig: Error checking course config for ${databaseName}: ${e}`);
264
+ // Log full error details for debugging
265
+ if (e && typeof e === 'object') {
266
+ logger.error(`hasCourseConfig: Full error details for ${databaseName}:`, e);
267
+ }
201
268
  return false;
202
269
  }
203
270
  }
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/attachment-preprocessing/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/attachment-preprocessing/index.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"classroom-requests.d.ts","sourceRoot":"","sources":["../../src/client-requests/classroom-requests.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,eAAe,EAIf,MAAM,EACP,MAAM,sBAAsB,CAAC;AAO9B,OAAO,iBAA6B,MAAM,0BAA0B,CAAC;AAGrE,eAAO,MAAM,mBAAmB,mBAAmB,CAAC;AAuMpD,eAAO,MAAM,mBAAmB;;;cAEO,MAAM;yDAE5B,CAAC;AAElB,eAAO,MAAM,kBAAkB;;;;;;;;;;SAIf,CAAC;AAEjB,eAAO,MAAM,sBAAsB;;;;;SAIjB,CAAC"}
1
+ {"version":3,"file":"classroom-requests.d.ts","sourceRoot":"","sources":["../../src/client-requests/classroom-requests.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,eAAe,EAIf,MAAM,EACP,MAAM,sBAAsB,CAAC;AAQ9B,OAAO,iBAA6B,MAAM,0BAA0B,CAAC;AAGrE,eAAO,MAAM,mBAAmB,mBAAmB,CAAC;AAuMpD,eAAO,MAAM,mBAAmB;;;cAEO,MAAM;yDAE5B,CAAC;AAElB,eAAO,MAAM,kBAAkB;;;;;;;;;;SAIf,CAAC;AAEjB,eAAO,MAAM,sBAAsB;;;;;SAIjB,CAAC"}
@@ -1,7 +1,7 @@
1
1
  import hashids from 'hashids';
2
2
  import { Status, } from '@vue-skuilder/common';
3
3
  import { classroomDbDesignDoc } from '../design-docs.js';
4
- import CouchDB, { docCount, useOrCreateDB, } from '../couchdb/index.js';
4
+ import { docCount, useOrCreateDB, getCouchDB, } from '../couchdb/index.js';
5
5
  import AsyncProcessQueue from '../utils/processQueue.js';
6
6
  import logger from '../logger.js';
7
7
  export const CLASSROOM_DB_LOOKUP = 'classdb-lookup';
@@ -67,7 +67,7 @@ async function createClassroom(config) {
67
67
  logger.info(`CreateClass Request:
68
68
  ${JSON.stringify(config)}`);
69
69
  const num = (await docCount(CLASSROOM_DB_LOOKUP)) + 1; //
70
- const uuid = (await CouchDB.uuids(1)).uuids[0];
70
+ const uuid = (await getCouchDB().uuids(1)).uuids[0];
71
71
  const hasher = new hashids('', 6, 'abcdefghijklmnopqrstuvwxyz123456789');
72
72
  const studentDbName = `classdb-student-${uuid}`;
73
73
  const teacherDbName = `classdb-teacher-${uuid}`;
@@ -1 +1 @@
1
- {"version":3,"file":"classroom-requests.js","sourceRoot":"","sources":["../../src/client-requests/classroom-requests.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"classroom-requests.js","sourceRoot":"","sources":["../../src/client-requests/classroom-requests.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"course-requests.d.ts","sourceRoot":"","sources":["../../src/client-requests/course-requests.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAGpD,OAAO,iBAA6B,MAAM,0BAA0B,CAAC;AAgDrE,wBAAsB,2BAA2B,IAAI,OAAO,CAAC,IAAI,CAAC,CA4CjE;AAqFD,MAAM,MAAM,gBAAgB,GAAG,YAAY,CAAC,UAAU,CAAC,CAAC;AAExD,eAAO,MAAM,mBAAmB;;;;SAIjB,CAAC"}
1
+ {"version":3,"file":"course-requests.d.ts","sourceRoot":"","sources":["../../src/client-requests/course-requests.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAGpD,OAAO,iBAA6B,MAAM,0BAA0B,CAAC;AAgDrE,wBAAsB,2BAA2B,IAAI,OAAO,CAAC,IAAI,CAAC,CA+CjE;AAqFD,MAAM,MAAM,gBAAgB,GAAG,YAAY,CAAC,UAAU,CAAC,CAAC;AAExD,eAAO,MAAM,mBAAmB;;;;SAIjB,CAAC"}