@citolab/qti-backend-firebase 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 (78) hide show
  1. package/dist/api/app-specific/base/application-specific-base.d.ts +11 -20
  2. package/dist/api/app-specific/base/application-specific-base.d.ts.map +1 -1
  3. package/dist/api/app-specific/base/application-specific-base.js +73 -88
  4. package/dist/api/app-specific/base/application-specific-base.js.map +1 -1
  5. package/dist/api/app-specific/baseImplementation.d.ts +2 -3
  6. package/dist/api/app-specific/baseImplementation.d.ts.map +1 -1
  7. package/dist/api/app-specific/baseImplementation.js +2 -6
  8. package/dist/api/app-specific/baseImplementation.js.map +1 -1
  9. package/dist/api/app-specific/index.d.ts +1 -0
  10. package/dist/api/app-specific/index.d.ts.map +1 -1
  11. package/dist/api/app-specific/index.js +1 -0
  12. package/dist/api/app-specific/index.js.map +1 -1
  13. package/dist/api/app-specific/interface/IApplicationSpecific.d.ts +10 -20
  14. package/dist/api/app-specific/interface/IApplicationSpecific.d.ts.map +1 -1
  15. package/dist/api/qti-data.d.ts.map +1 -1
  16. package/dist/api/qti-data.js +619 -271
  17. package/dist/api/qti-data.js.map +1 -1
  18. package/dist/api/qti-resources.d.ts.map +1 -1
  19. package/dist/api/qti-resources.js +134 -131
  20. package/dist/api/qti-resources.js.map +1 -1
  21. package/dist/api/qti-teacher.d.ts.map +1 -1
  22. package/dist/api/qti-teacher.js +563 -424
  23. package/dist/api/qti-teacher.js.map +1 -1
  24. package/dist/api/qti-tools.d.ts.map +1 -1
  25. package/dist/api/qti-tools.js +213 -41
  26. package/dist/api/qti-tools.js.map +1 -1
  27. package/dist/helpers/database.d.ts +35 -24
  28. package/dist/helpers/database.d.ts.map +1 -1
  29. package/dist/helpers/database.js +47 -36
  30. package/dist/helpers/database.js.map +1 -1
  31. package/dist/helpers/db.d.ts +1 -1
  32. package/dist/helpers/db.d.ts.map +1 -1
  33. package/dist/helpers/db.js +3 -7
  34. package/dist/helpers/db.js.map +1 -1
  35. package/dist/helpers/endpoint-helpers.d.ts +2 -2
  36. package/dist/helpers/endpoint-helpers.d.ts.map +1 -1
  37. package/dist/helpers/endpoint-helpers.js +59 -17
  38. package/dist/helpers/endpoint-helpers.js.map +1 -1
  39. package/dist/helpers/excel-helper.d.ts +29 -0
  40. package/dist/helpers/excel-helper.d.ts.map +1 -0
  41. package/dist/helpers/excel-helper.js +150 -0
  42. package/dist/helpers/excel-helper.js.map +1 -0
  43. package/dist/helpers/general.d.ts +15 -0
  44. package/dist/helpers/general.d.ts.map +1 -0
  45. package/dist/helpers/general.js +148 -0
  46. package/dist/helpers/general.js.map +1 -0
  47. package/dist/helpers/index.d.ts +2 -0
  48. package/dist/helpers/index.d.ts.map +1 -1
  49. package/dist/helpers/index.js +2 -0
  50. package/dist/helpers/index.js.map +1 -1
  51. package/dist/helpers/logic.d.ts +100 -41
  52. package/dist/helpers/logic.d.ts.map +1 -1
  53. package/dist/helpers/logic.js +523 -413
  54. package/dist/helpers/logic.js.map +1 -1
  55. package/dist/helpers/package-upload.d.ts.map +1 -1
  56. package/dist/helpers/package-upload.js +2 -3
  57. package/dist/helpers/package-upload.js.map +1 -1
  58. package/dist/helpers/package.d.ts +3 -4
  59. package/dist/helpers/package.d.ts.map +1 -1
  60. package/dist/helpers/package.js +12 -17
  61. package/dist/helpers/package.js.map +1 -1
  62. package/dist/helpers/request-headers.d.ts +4 -0
  63. package/dist/helpers/request-headers.d.ts.map +1 -1
  64. package/dist/helpers/request-headers.js +2 -2
  65. package/dist/helpers/request-headers.js.map +1 -1
  66. package/dist/helpers/resource-cache.d.ts +35 -0
  67. package/dist/helpers/resource-cache.d.ts.map +1 -0
  68. package/dist/helpers/resource-cache.js +171 -0
  69. package/dist/helpers/resource-cache.js.map +1 -0
  70. package/dist/helpers/storage.d.ts +2 -2
  71. package/dist/helpers/storage.d.ts.map +1 -1
  72. package/dist/helpers/storage.js +16 -15
  73. package/dist/helpers/storage.js.map +1 -1
  74. package/dist/helpers/utils.d.ts +4 -3
  75. package/dist/helpers/utils.d.ts.map +1 -1
  76. package/dist/helpers/utils.js +73 -51
  77. package/dist/helpers/utils.js.map +1 -1
  78. package/package.json +12 -9
@@ -1,11 +1,6 @@
1
1
  export declare class DATABASE {
2
- appId?: string | undefined;
3
- constructor(appId?: string | undefined);
2
+ constructor();
4
3
  get basePath(): string;
5
- get APPLICATION(): {
6
- COLLECTION: string;
7
- DOC: () => string;
8
- };
9
4
  get FEEDBACK(): {
10
5
  COLLECTION: () => string;
11
6
  DOC: (feedbackId: string) => string;
@@ -17,13 +12,9 @@ export declare class DATABASE {
17
12
  DOC: (userId: string, dateId: string) => string;
18
13
  };
19
14
  };
20
- get GROUP_DELIVERY(): {
15
+ get DELIVERY(): {
21
16
  COLLECTION: () => string;
22
17
  DOC: (code: string) => string;
23
- STUDENTS: {
24
- COLLECTION: (code: string) => string;
25
- DOC: (code: string, itemId: string) => string;
26
- };
27
18
  };
28
19
  get PACKAGE(): {
29
20
  COLLECTION: () => string;
@@ -33,18 +24,22 @@ export declare class DATABASE {
33
24
  COLLECTION: () => string;
34
25
  DOC: (assessmentId: string) => string;
35
26
  };
36
- get STUDENT(): {
27
+ get TESTSET(): {
28
+ COLLECTION: () => string;
29
+ DOC: (testsetId: string) => string;
30
+ };
31
+ get TESTSET_SESSIONS(): {
32
+ COLLECTION: () => string;
33
+ DOC: (testSetId: string) => string;
34
+ };
35
+ get SESSION(): {
37
36
  COLLECTION: () => string;
38
37
  DOC: (code: string) => string;
39
38
  LOG: {
40
- COLLECTION: (teacherId: string) => string;
41
- DOC: (teacherId: string, dateId: string) => string;
42
- };
43
- SESSION: {
44
39
  COLLECTION: (code: string) => string;
45
- DOC: (code: string, sessionId: string) => string;
46
- LOG: (code: string, sessionId: string, dateId: string) => string;
40
+ DOC: (code: string, dateId: string) => string;
47
41
  };
42
+ TEST_CONTEXT: (code: string) => string;
48
43
  };
49
44
  get EVENTLOG(): {
50
45
  DOC: (identifier: string, timestamp: number) => string;
@@ -73,6 +68,14 @@ export declare class DATABASE {
73
68
  COLLECTION: (teacherId: string) => string;
74
69
  DOC: (teacherId: string, dateId: string) => string;
75
70
  };
71
+ DELIVERY_RESULTS: {
72
+ COLLECTION: (teacherId: string, deliveryId: string) => string;
73
+ DOC: (teacherId: string, deliveryId: string, code: string) => string;
74
+ };
75
+ DELIVERY_REPORTS: {
76
+ COLLECTION: (teacherId: string, deliveryId: string) => string;
77
+ DOC: (teacherId: string, deliveryId: string, code: string) => string;
78
+ };
76
79
  ASSESSMENT_RESULTS: {
77
80
  COLLECTION: (teacherId: string, assessmentId: string) => string;
78
81
  DOC: (teacherId: string, assessmentId: string, code: string) => string;
@@ -87,16 +90,24 @@ export declare class DATABASE {
87
90
  DOC: (teacherId: string, assessmentId: string, itemId: string, responseId: string) => string;
88
91
  };
89
92
  };
90
- STUDENTS: {
93
+ SESSIONS: {
91
94
  COLLECTION: (teacherId: string) => string;
92
- DOC: (teacherId: string, studentId: string) => string;
95
+ DOC: (teacherId: string, sessionCode: string) => string;
93
96
  SESSION: {
94
- COLLECTION: (teacherId: string, studentId: string) => string;
95
- DOC: (teacherId: string, studentId: string, sessionId: string) => string;
97
+ COLLECTION: (teacherId: string) => string;
98
+ DOC: (teacherId: string, sessionCode: string) => string;
96
99
  };
97
100
  ITEM: {
98
- COLLECTION: (teacherId: string, studentId: string) => string;
99
- DOC: (teacherId: string, studentId: string, itemId: string) => string;
101
+ COLLECTION: (teacherId: string, sessionCode: string) => string;
102
+ DOC: (teacherId: string, sessionCode: string, itemId: string) => string;
103
+ };
104
+ };
105
+ DELIVERY: {
106
+ COLLECTION: () => (teacherId: string) => string;
107
+ DOC: (teacherId: string, deliveryCode: string) => string;
108
+ STUDENTS: {
109
+ COLLECTION: (teacherId: string, deliveryCode: string) => string;
110
+ DOC: (teacherId: string, deliveryCode: string, studentCode: string) => string;
100
111
  };
101
112
  };
102
113
  };
@@ -1 +1 @@
1
- {"version":3,"file":"database.d.ts","sourceRoot":"","sources":["../../src/helpers/database.ts"],"names":[],"mappings":"AAEA,qBAAa,QAAQ;IACA,KAAK,CAAC,EAAE,MAAM;gBAAd,KAAK,CAAC,EAAE,MAAM,YAAA;IAEjC,IAAW,QAAQ,IAAI,MAAM,CAG5B;IAED,IAAI,WAAW;;;MAMd;IAED,IAAI,QAAQ;;0BAIU,MAAM;MAE3B;IAED,IAAI,KAAK;;0BAIa,MAAM;;0BAER,MAAM,UAAU,MAAM;;MAIzC;IAED,IAAI,cAAc;;oBAIF,MAAM;;+BAEG,MAAM;wBACb,MAAM,UAAU,MAAM;;MAIvC;IAED,IAAI,OAAO;;oBAIK,MAAM;MAErB;IACD,IAAI,UAAU;;4BAIU,MAAM;MAE7B;IAED,IAAI,OAAO;;oBAIK,MAAM;;oCAEQ,MAAM;6BACb,MAAM,UAAU,MAAM;;;+BAIpB,MAAM;wBACb,MAAM,aAAa,MAAM;wBAEzB,MAAM,aAAa,MAAM,UAAU,MAAM;;MAI1D;IAED,IAAI,QAAQ;0BAGU,MAAM,aAAa,MAAM;MAG9C;IAED,IAAI,uBAAuB;;sBAIT,MAAM;MAEvB;IAED,IAAI,QAAQ;;;oCAKkB,MAAM;6BACb,MAAM,UAAU,MAAM;;;;wCAMxB,MAAM,gBACH,MAAM,UACZ,MAAM;iCAIH,MAAM,gBACH,MAAM,UACZ,MAAM,cACF,MAAM;;;MAM3B;IACD,IAAI,OAAO;;yBAIU,MAAM;;oCAEG,MAAM;6BACb,MAAM,UAAU,MAAM;;;oCAKf,MAAM,gBAAgB,MAAM;6BAEnC,MAAM,gBAAgB,MAAM,QAAQ,MAAM;;;oCAInC,MAAM,gBAAgB,MAAM;6BAEnC,MAAM,gBAAgB,MAAM,QAAQ,MAAM;;;;wCAM5C,MAAM,gBACH,MAAM,UACZ,MAAM;iCAIH,MAAM,gBACH,MAAM,UACZ,MAAM,cACF,MAAM;;;;oCAME,MAAM;6BACb,MAAM,aAAa,MAAM;;wCAGhB,MAAM,aAAa,MAAM;iCAEhC,MAAM,aAAa,MAAM,aAAa,MAAM;;;wCAIrC,MAAM,aAAa,MAAM;iCAEhC,MAAM,aAAa,MAAM,UAAU,MAAM;;;MAKjE;IAED,IAAI,IAAI;;mBAGO,MAAM;8BACK,MAAM;gCACJ,MAAM,SAAS,MAAM;MAGhD;CACF"}
1
+ {"version":3,"file":"database.d.ts","sourceRoot":"","sources":["../../src/helpers/database.ts"],"names":[],"mappings":"AAEA,qBAAa,QAAQ;;IAGnB,IAAW,QAAQ,IAAI,MAAM,CAE5B;IAED,IAAI,QAAQ;;0BAIU,MAAM;MAE3B;IAED,IAAI,KAAK;;0BAIa,MAAM;;0BAER,MAAM,UAAU,MAAM;;MAIzC;IAED,IAAI,QAAQ;;oBAII,MAAM;MAErB;IAED,IAAI,OAAO;;oBAIK,MAAM;MAErB;IACD,IAAI,UAAU;;4BAIU,MAAM;MAE7B;IAED,IAAI,OAAO;;yBAIU,MAAM;MAE1B;IAED,IAAI,gBAAgB;;yBAIC,MAAM;MAE1B;IAED,IAAI,OAAO;;oBAIK,MAAM;;+BAEG,MAAM;wBACb,MAAM,UAAU,MAAM;;6BAGf,MAAM;MAE9B;IAED,IAAI,QAAQ;0BAGU,MAAM,aAAa,MAAM;MAG9C;IAED,IAAI,uBAAuB;;sBAIT,MAAM;MAEvB;IAED,IAAI,QAAQ;;;oCAKkB,MAAM;6BACb,MAAM,UAAU,MAAM;;;;wCAMxB,MAAM,gBACH,MAAM,UACZ,MAAM;iCAIH,MAAM,gBACH,MAAM,UACZ,MAAM,cACF,MAAM;;;MAM3B;IACD,IAAI,OAAO;;yBAIU,MAAM;;oCAEG,MAAM;6BACb,MAAM,UAAU,MAAM;;;oCAKf,MAAM,cAAc,MAAM;6BAEjC,MAAM,cAAc,MAAM,QAAQ,MAAM;;;oCAIjC,MAAM,cAAc,MAAM;6BAEjC,MAAM,cAAc,MAAM,QAAQ,MAAM;;;oCAKjC,MAAM,gBAAgB,MAAM;6BAEnC,MAAM,gBAAgB,MAAM,QAAQ,MAAM;;;oCAInC,MAAM,gBAAgB,MAAM;6BAEnC,MAAM,gBAAgB,MAAM,QAAQ,MAAM;;;;wCAM5C,MAAM,gBACH,MAAM,UACZ,MAAM;iCAIH,MAAM,gBACH,MAAM,UACZ,MAAM,cACF,MAAM;;;;oCAME,MAAM;6BACb,MAAM,eAAe,MAAM;;wCAGlB,MAAM;iCAEb,MAAM,eAAe,MAAM;;;wCAIpB,MAAM,eAAe,MAAM;iCAElC,MAAM,eAAe,MAAM,UAAU,MAAM;;;;+BAK3C,WAAW,MAAM;6BAEnB,MAAM,gBAAgB,MAAM;;wCAGnB,MAAM,gBAAgB,MAAM;iCAEnC,MAAM,gBAAgB,MAAM,eAAe,MAAM;;;MAKzE;IAED,IAAI,IAAI;;mBAGO,MAAM;8BAEK,MAAM;gCACJ,MAAM,SAAS,MAAM;MAGhD;CACF"}
@@ -1,19 +1,7 @@
1
- import { IsTrue } from "./utils";
2
1
  export class DATABASE {
3
- appId;
4
- constructor(appId) {
5
- this.appId = appId;
6
- }
2
+ constructor() { }
7
3
  get basePath() {
8
- const isSingleTenant = IsTrue(process.env["SINGLE_TENANT"]);
9
- return !isSingleTenant && this.appId ? `application/${this.appId}` : "";
10
- }
11
- get APPLICATION() {
12
- const basePath = this.basePath;
13
- return {
14
- COLLECTION: "application",
15
- DOC: () => (this.appId ? `${basePath}` : "application/info"),
16
- };
4
+ return ""; // Always use single tenant mode
17
5
  }
18
6
  get FEEDBACK() {
19
7
  const basePath = `${this.basePath}/feedback`;
@@ -32,15 +20,11 @@ export class DATABASE {
32
20
  },
33
21
  };
34
22
  }
35
- get GROUP_DELIVERY() {
36
- const basePath = `${this.basePath}/groupDelivery`;
23
+ get DELIVERY() {
24
+ const basePath = `${this.basePath}/delivery`;
37
25
  return {
38
26
  COLLECTION: () => basePath,
39
27
  DOC: (code) => `${basePath}/${code}`,
40
- STUDENTS: {
41
- COLLECTION: (code) => `${basePath}/${code}/students`,
42
- DOC: (code, itemId) => `${basePath}/${code}/students/${itemId}`,
43
- },
44
28
  };
45
29
  }
46
30
  get PACKAGE() {
@@ -57,20 +41,30 @@ export class DATABASE {
57
41
  DOC: (assessmentId) => `${basePath}/${assessmentId}`,
58
42
  };
59
43
  }
60
- get STUDENT() {
61
- const basePath = `${this.basePath}/students`;
44
+ get TESTSET() {
45
+ const basePath = `${this.basePath}/testsets`;
46
+ return {
47
+ COLLECTION: () => basePath,
48
+ DOC: (testsetId) => `${basePath}/${testsetId}`,
49
+ };
50
+ }
51
+ get TESTSET_SESSIONS() {
52
+ const basePath = `${this.basePath}/testsetsessions`;
53
+ return {
54
+ COLLECTION: () => basePath,
55
+ DOC: (testSetId) => `${basePath}/${testSetId}`,
56
+ };
57
+ }
58
+ get SESSION() {
59
+ const basePath = `${this.basePath}/sessions`;
62
60
  return {
63
61
  COLLECTION: () => basePath,
64
62
  DOC: (code) => `${basePath}/${code}`,
65
63
  LOG: {
66
- COLLECTION: (teacherId) => `${basePath}/${teacherId}/log`,
67
- DOC: (teacherId, dateId) => `${basePath}/${teacherId}/log/${dateId}`,
68
- },
69
- SESSION: {
70
- COLLECTION: (code) => `${basePath}/${code}/sessions`,
71
- DOC: (code, sessionId) => `${basePath}/${code}/sessions/${sessionId}`,
72
- LOG: (code, sessionId, dateId) => `${basePath}/${code}/sessions/${sessionId}/log/${dateId}`,
64
+ COLLECTION: (code) => `${basePath}/${code}/log`,
65
+ DOC: (code, dateId) => `${basePath}/${code}/log/${dateId}`,
73
66
  },
67
+ TEST_CONTEXT: (code) => `${basePath}/${code}/context/CONTEXT`,
74
68
  };
75
69
  }
76
70
  get EVENTLOG() {
@@ -111,6 +105,14 @@ export class DATABASE {
111
105
  COLLECTION: (teacherId) => `${basePath}/${teacherId}/log`,
112
106
  DOC: (teacherId, dateId) => `${basePath}/${teacherId}/log/${dateId}`,
113
107
  },
108
+ DELIVERY_RESULTS: {
109
+ COLLECTION: (teacherId, deliveryId) => `${basePath}/${teacherId}/delivery/${deliveryId}/results`,
110
+ DOC: (teacherId, deliveryId, code) => `${basePath}/${teacherId}/delivery/${deliveryId}/results/${code}`,
111
+ },
112
+ DELIVERY_REPORTS: {
113
+ COLLECTION: (teacherId, deliveryId) => `${basePath}/${teacherId}/delivery/${deliveryId}/reports`,
114
+ DOC: (teacherId, deliveryId, code) => `${basePath}/${teacherId}/delivery/${deliveryId}/reports/${code}`,
115
+ },
114
116
  ASSESSMENT_RESULTS: {
115
117
  COLLECTION: (teacherId, assessmentId) => `${basePath}/${teacherId}/assessment/${assessmentId}/results`,
116
118
  DOC: (teacherId, assessmentId, code) => `${basePath}/${teacherId}/assessment/${assessmentId}/results/${code}`,
@@ -125,16 +127,24 @@ export class DATABASE {
125
127
  DOC: (teacherId, assessmentId, itemId, responseId) => `${basePath}/${teacherId}/assessment/${assessmentId}/itemstats/${itemId}/responses/${responseId}`,
126
128
  },
127
129
  },
128
- STUDENTS: {
129
- COLLECTION: (teacherId) => `${basePath}/${teacherId}/students`,
130
- DOC: (teacherId, studentId) => `${basePath}/${teacherId}/students/${studentId}`,
130
+ SESSIONS: {
131
+ COLLECTION: (teacherId) => `${basePath}/${teacherId}/sessions`,
132
+ DOC: (teacherId, sessionCode) => `${basePath}/${teacherId}/sessions/${sessionCode}`,
131
133
  SESSION: {
132
- COLLECTION: (teacherId, studentId) => `${basePath}/${teacherId}/students/${studentId}/sessions`,
133
- DOC: (teacherId, studentId, sessionId) => `${basePath}/${teacherId}/students/${studentId}/sessions/${sessionId}`,
134
+ COLLECTION: (teacherId) => `${basePath}/${teacherId}/sessions`,
135
+ DOC: (teacherId, sessionCode) => `${basePath}/${teacherId}/sessions/${sessionCode}`,
134
136
  },
135
137
  ITEM: {
136
- COLLECTION: (teacherId, studentId) => `${basePath}/${teacherId}/students/${studentId}/items`,
137
- DOC: (teacherId, studentId, itemId) => `${basePath}/${teacherId}/students/${studentId}/items/${itemId}`,
138
+ COLLECTION: (teacherId, sessionCode) => `${basePath}/${teacherId}/sessions/${sessionCode}/items`,
139
+ DOC: (teacherId, sessionCode, itemId) => `${basePath}/${teacherId}/sessions/${sessionCode}/items/${itemId}`,
140
+ },
141
+ },
142
+ DELIVERY: {
143
+ COLLECTION: () => (teacherId) => `${basePath}/${teacherId}/delivery`,
144
+ DOC: (teacherId, deliveryCode) => `${basePath}/${teacherId}/delivery/${deliveryCode}`,
145
+ STUDENTS: {
146
+ COLLECTION: (teacherId, deliveryCode) => `${basePath}/${teacherId}/delivery/${deliveryCode}/students`,
147
+ DOC: (teacherId, deliveryCode, studentCode) => `${basePath}/${teacherId}/delivery/${deliveryCode}/students/${studentCode}`,
138
148
  },
139
149
  },
140
150
  };
@@ -143,6 +153,7 @@ export class DATABASE {
143
153
  return {
144
154
  COLLECTION: "auth",
145
155
  DOC: (uid) => `auth/${uid}`,
156
+ // Legacy methods - no longer used but kept for compatibility
146
157
  APP_COLLECTION: (uid) => `auth/${uid}/application`,
147
158
  CHECK_APP_RIGHTS: (uid, appId) => `auth/${uid}/application/${appId.toLowerCase()}`,
148
159
  };
@@ -1 +1 @@
1
- {"version":3,"file":"database.js","sourceRoot":"","sources":["../../src/helpers/database.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"database.js","sourceRoot":"","sources":["../../src/helpers/database.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,3 @@
1
- import { DATABASE } from './database';
1
+ import { DATABASE } from "./database";
2
2
  export declare const getDatabase: (appId?: string) => DATABASE;
3
3
  //# sourceMappingURL=db.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"db.d.ts","sourceRoot":"","sources":["../../src/helpers/db.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAGtC,eAAO,MAAM,WAAW,GAAI,QAAQ,MAAM,aAMzC,CAAC"}
1
+ {"version":3,"file":"db.d.ts","sourceRoot":"","sources":["../../src/helpers/db.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAEtC,eAAO,MAAM,WAAW,GAAI,QAAQ,MAAM,aAGzC,CAAC"}
@@ -1,10 +1,6 @@
1
- import { DATABASE } from './database';
2
- import { IsTrue } from './utils';
1
+ import { DATABASE } from "./database";
3
2
  export const getDatabase = (appId) => {
4
- if (IsTrue(process.env.SINGLE_TENANT)) {
5
- return new DATABASE();
6
- }
7
- const db = new DATABASE(!appId || appId === 'application' ? '' : appId);
8
- return db;
3
+ // Always return single tenant database
4
+ return new DATABASE();
9
5
  };
10
6
  //# sourceMappingURL=db.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"db.js","sourceRoot":"","sources":["../../src/helpers/db.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AAEjC,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,KAAc,EAAE,EAAE;IAC5C,IAAI,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC,EAAE,CAAC;QACtC,OAAO,IAAI,QAAQ,EAAE,CAAC;IACxB,CAAC;IACD,MAAM,EAAE,GAAG,IAAI,QAAQ,CAAC,CAAC,KAAK,IAAI,KAAK,KAAK,aAAa,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;IACxE,OAAO,EAAE,CAAC;AACZ,CAAC,CAAC"}
1
+ {"version":3,"file":"db.js","sourceRoot":"","sources":["../../src/helpers/db.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAEtC,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,KAAc,EAAE,EAAE;IAC5C,uCAAuC;IACvC,OAAO,IAAI,QAAQ,EAAE,CAAC;AACxB,CAAC,CAAC"}
@@ -4,7 +4,6 @@ export interface AuthenticatedRequest extends Request {
4
4
  user?: {
5
5
  uid: string;
6
6
  };
7
- appId?: string;
8
7
  file?: any;
9
8
  }
10
9
  export interface ErrorResponse {
@@ -19,9 +18,11 @@ export interface SuccessResponse<T = any> {
19
18
  export declare const sendError: (res: Response, status: number, message: string, details?: any) => void;
20
19
  export declare const sendSuccess: <T>(res: Response, data?: T, message?: string) => void;
21
20
  export declare const requireAuth: (req: AuthenticatedRequest, res: Response, next: NextFunction) => Promise<void>;
21
+ export declare const requireAuthType: (userTypes?: "student" | "teacher" | "both") => (req: AuthenticatedRequest, res: Response, next: NextFunction) => Promise<void>;
22
22
  export declare const handleValidationErrors: (req: Request, res: Response, next: NextFunction) => void;
23
23
  export declare const createRateLimit: (windowMs: number, max: number) => import("express-rate-limit").RateLimitRequestHandler;
24
24
  export declare const generalRateLimit: import("express-rate-limit").RateLimitRequestHandler;
25
+ export declare const resourceRateLimit: import("express-rate-limit").RateLimitRequestHandler;
25
26
  export declare const heavyOperationLimit: import("express-rate-limit").RateLimitRequestHandler;
26
27
  export declare const imageUploadConfig: multer.Multer;
27
28
  export declare const zipUploadConfig: multer.Multer;
@@ -29,5 +30,4 @@ export declare const errorHandler: (err: Error, req: Request, res: Response, nex
29
30
  export declare const optionalAuth: (req: AuthenticatedRequest, res: Response, next: NextFunction) => Promise<void>;
30
31
  export declare const validateAssessmentId: (assessmentId: string) => boolean;
31
32
  export declare const validatePackageId: (packageId: string) => boolean;
32
- export declare const validateApplicationId: (applicationId: string) => boolean;
33
33
  //# sourceMappingURL=endpoint-helpers.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"endpoint-helpers.d.ts","sourceRoot":"","sources":["../../src/helpers/endpoint-helpers.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,QAAQ,CAAC;AAE5B,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAS1D,MAAM,WAAW,oBAAqB,SAAQ,OAAO;IACnD,IAAI,CAAC,EAAE;QAAE,GAAG,EAAE,MAAM,CAAA;KAAE,CAAC;IACvB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,GAAG,CAAC;CACZ;AAED,MAAM,WAAW,aAAa;IAC5B,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,GAAG,CAAC;CACf;AAED,MAAM,WAAW,eAAe,CAAC,CAAC,GAAG,GAAG;IACtC,OAAO,EAAE,OAAO,CAAC;IACjB,IAAI,CAAC,EAAE,CAAC,CAAC;IACT,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAGD,eAAO,MAAM,SAAS,GACpB,KAAK,QAAQ,EACb,QAAQ,MAAM,EACd,SAAS,MAAM,EACf,UAAU,GAAG,KACZ,IAIF,CAAC;AAEF,eAAO,MAAM,WAAW,GAAI,CAAC,EAC3B,KAAK,QAAQ,EACb,OAAO,CAAC,EACR,UAAU,MAAM,KACf,IAKF,CAAC;AAEF,eAAO,MAAM,WAAW,GACtB,KAAK,oBAAoB,EACzB,KAAK,QAAQ,EACb,MAAM,YAAY,KACjB,OAAO,CAAC,IAAI,CAed,CAAC;AAGF,eAAO,MAAM,sBAAsB,GACjC,KAAK,OAAO,EACZ,KAAK,QAAQ,EACb,MAAM,YAAY,KACjB,IAOF,CAAC;AAGF,eAAO,MAAM,eAAe,GAAI,UAAU,MAAM,EAAE,KAAK,MAAM,yDAOzD,CAAC;AAGL,eAAO,MAAM,gBAAgB,sDAAuC,CAAC;AACrE,eAAO,MAAM,mBAAmB,sDAAsC,CAAC;AAGvE,eAAO,MAAM,iBAAiB,eAa5B,CAAC;AAEH,eAAO,MAAM,eAAe,eAa1B,CAAC;AAGH,eAAO,MAAM,YAAY,GACvB,KAAK,KAAK,EACV,KAAK,OAAO,EACZ,KAAK,QAAQ,EACb,MAAM,YAAY,KACjB,IAyBF,CAAC;AAEF,eAAO,MAAM,YAAY,GACvB,KAAK,oBAAoB,EACzB,KAAK,QAAQ,EACb,MAAM,YAAY,KACjB,OAAO,CAAC,IAAI,CAcd,CAAC;AAGF,eAAO,MAAM,oBAAoB,GAAI,cAAc,MAAM,KAAG,OAO3D,CAAC;AAEF,eAAO,MAAM,iBAAiB,GAAI,WAAW,MAAM,KAAG,OAOrD,CAAC;AAEF,eAAO,MAAM,qBAAqB,GAAI,eAAe,MAAM,KAAG,OAO7D,CAAC"}
1
+ {"version":3,"file":"endpoint-helpers.d.ts","sourceRoot":"","sources":["../../src/helpers/endpoint-helpers.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,QAAQ,CAAC;AAE5B,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAU1D,MAAM,WAAW,oBAAqB,SAAQ,OAAO;IACnD,IAAI,CAAC,EAAE;QAAE,GAAG,EAAE,MAAM,CAAA;KAAE,CAAC;IACvB,IAAI,CAAC,EAAE,GAAG,CAAC;CACZ;AAED,MAAM,WAAW,aAAa;IAC5B,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,GAAG,CAAC;CACf;AAED,MAAM,WAAW,eAAe,CAAC,CAAC,GAAG,GAAG;IACtC,OAAO,EAAE,OAAO,CAAC;IACjB,IAAI,CAAC,EAAE,CAAC,CAAC;IACT,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAGD,eAAO,MAAM,SAAS,GACpB,KAAK,QAAQ,EACb,QAAQ,MAAM,EACd,SAAS,MAAM,EACf,UAAU,GAAG,KACZ,IAIF,CAAC;AAEF,eAAO,MAAM,WAAW,GAAI,CAAC,EAC3B,KAAK,QAAQ,EACb,OAAO,CAAC,EACR,UAAU,MAAM,KACf,IAKF,CAAC;AAEF,eAAO,MAAM,WAAW,GACtB,KAAK,oBAAoB,EACzB,KAAK,QAAQ,EACb,MAAM,YAAY,KACjB,OAAO,CAAC,IAAI,CAwBd,CAAC;AAGF,eAAO,MAAM,eAAe,GACzB,YAAW,SAAS,GAAG,SAAS,GAAG,MAAkB,MAEpD,KAAK,oBAAoB,EACzB,KAAK,QAAQ,EACb,MAAM,YAAY,KACjB,OAAO,CAAC,IAAI,CA4Cd,CAAC;AAGJ,eAAO,MAAM,sBAAsB,GACjC,KAAK,OAAO,EACZ,KAAK,QAAQ,EACb,MAAM,YAAY,KACjB,IAOF,CAAC;AAGF,eAAO,MAAM,eAAe,GAAI,UAAU,MAAM,EAAE,KAAK,MAAM,yDAOzD,CAAC;AAGL,eAAO,MAAM,gBAAgB,sDAAuC,CAAC;AACrE,eAAO,MAAM,iBAAiB,sDAAsC,CAAC;AACrE,eAAO,MAAM,mBAAmB,sDAAsC,CAAC;AAGvE,eAAO,MAAM,iBAAiB,eAa5B,CAAC;AAEH,eAAO,MAAM,eAAe,eAa1B,CAAC;AAGH,eAAO,MAAM,YAAY,GACvB,KAAK,KAAK,EACV,KAAK,OAAO,EACZ,KAAK,QAAQ,EACb,MAAM,YAAY,KACjB,IAyBF,CAAC;AAEF,eAAO,MAAM,YAAY,GACvB,KAAK,oBAAoB,EACzB,KAAK,QAAQ,EACb,MAAM,YAAY,KACjB,OAAO,CAAC,IAAI,CAYd,CAAC;AAGF,eAAO,MAAM,oBAAoB,GAAI,cAAc,MAAM,KAAG,OAO3D,CAAC;AAEF,eAAO,MAAM,iBAAiB,GAAI,WAAW,MAAM,KAAG,OAOrD,CAAC"}
@@ -1,6 +1,6 @@
1
1
  import multer from "multer";
2
2
  import rateLimit from "express-rate-limit";
3
- import { authenticateStudent, getAppId, tryAuthenticateStudent, } from "./request-headers";
3
+ import { authenticateStudent, tryAuthenticateStudent, authenticateStudentOrTeacher, authenticate, } from "./request-headers";
4
4
  import { validationResult } from "express-validator";
5
5
  // Middleware for standardized error responses
6
6
  export const sendError = (res, status, message, details) => {
@@ -17,22 +17,71 @@ export const sendSuccess = (res, data, message) => {
17
17
  response.message = message;
18
18
  res.json(response);
19
19
  };
20
- // Authentication middleware
20
+ // Authentication middleware (backward compatible version)
21
21
  export const requireAuth = async (req, res, next) => {
22
22
  try {
23
23
  const result = await authenticateStudent(req, res);
24
- if (!result || result.handled) {
25
- sendError(res, 401, "Authentication required");
26
- return; // Just return void
24
+ if (!result) {
25
+ // Only send error if response hasn't been sent already
26
+ if (!res.headersSent) {
27
+ sendError(res, 401, "Authentication required");
28
+ }
29
+ return;
30
+ }
31
+ if (result.handled) {
32
+ // Response was already handled by authenticate function
33
+ return;
27
34
  }
28
35
  req.user = result.user;
29
- req.appId = getAppId(req);
30
36
  next();
31
37
  }
32
38
  catch (error) {
33
39
  console.error("Authentication error:", error);
34
- sendError(res, 500, "Authentication failed");
35
- return; // Just return void
40
+ // Only send error if response hasn't been sent already
41
+ if (!res.headersSent) {
42
+ sendError(res, 500, "Authentication failed");
43
+ }
44
+ return;
45
+ }
46
+ };
47
+ // Flexible authentication middleware with user type parameter
48
+ export const requireAuthType = (userTypes = "student") => async (req, res, next) => {
49
+ try {
50
+ let result;
51
+ switch (userTypes) {
52
+ case "student":
53
+ result = await authenticateStudent(req, res);
54
+ break;
55
+ case "teacher":
56
+ result = await authenticate(req, res, ["google.com", "password"], false);
57
+ break;
58
+ case "both":
59
+ result = await authenticateStudentOrTeacher(req, res);
60
+ break;
61
+ default:
62
+ result = await authenticateStudent(req, res);
63
+ }
64
+ if (!result) {
65
+ // Only send error if response hasn't been sent already
66
+ if (!res.headersSent) {
67
+ sendError(res, 401, "Authentication required");
68
+ }
69
+ return;
70
+ }
71
+ if (result.handled) {
72
+ // Response was already handled by authenticate function
73
+ return;
74
+ }
75
+ req.user = result.user;
76
+ next();
77
+ }
78
+ catch (error) {
79
+ console.error("Authentication error:", error);
80
+ // Only send error if response hasn't been sent already
81
+ if (!res.headersSent) {
82
+ sendError(res, 500, "Authentication failed");
83
+ }
84
+ return;
36
85
  }
37
86
  };
38
87
  // Validation middleware
@@ -53,7 +102,8 @@ export const createRateLimit = (windowMs, max) => rateLimit({
53
102
  legacyHeaders: false,
54
103
  });
55
104
  // Rate limits
56
- export const generalRateLimit = createRateLimit(15 * 60 * 1000, 100); // 100 requests per 15 minutes
105
+ export const generalRateLimit = createRateLimit(15 * 60 * 1000, 300); // 300 requests per 15 minutes
106
+ export const resourceRateLimit = createRateLimit(1 * 60 * 1000, 500); // 500 requests per 1 minute for resources
57
107
  export const heavyOperationLimit = createRateLimit(60 * 60 * 1000, 20); // 20 requests per hour for creating sessions
58
108
  // File upload configuration for feedback
59
109
  export const imageUploadConfig = multer({
@@ -117,13 +167,11 @@ export const optionalAuth = async (req, res, next) => {
117
167
  if (user) {
118
168
  req.user = user;
119
169
  }
120
- req.appId = getAppId(req);
121
170
  next();
122
171
  }
123
172
  catch (error) {
124
173
  console.error("Optional authentication error:", error);
125
174
  // Continue without authentication for optional auth
126
- req.appId = getAppId(req);
127
175
  next();
128
176
  }
129
177
  };
@@ -140,10 +188,4 @@ export const validatePackageId = (packageId) => {
140
188
  packageId.length <= 100 &&
141
189
  /^[a-zA-Z0-9_-]+$/.test(packageId));
142
190
  };
143
- export const validateApplicationId = (applicationId) => {
144
- return (typeof applicationId === "string" &&
145
- applicationId.length > 0 &&
146
- applicationId.length <= 100 &&
147
- /^[a-zA-Z0-9_-]+$/.test(applicationId));
148
- };
149
191
  //# sourceMappingURL=endpoint-helpers.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"endpoint-helpers.js","sourceRoot":"","sources":["../../src/helpers/endpoint-helpers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"endpoint-helpers.js","sourceRoot":"","sources":["../../src/helpers/endpoint-helpers.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,29 @@
1
+ import Excel from "exceljs";
2
+ export declare class ExcelHelper {
3
+ private filename;
4
+ private worksheetName?;
5
+ workbook: Excel.Workbook;
6
+ worksheet: Excel.Worksheet | undefined;
7
+ columnsByIndex: Map<number, string>;
8
+ columnsByName: Map<string, number>;
9
+ rows: ExcelHelperRow[];
10
+ constructor(filename: string, worksheetName?: string | undefined);
11
+ save(): Promise<void>;
12
+ init(): Promise<void>;
13
+ getCellValue(row: Excel.Row, key: string): string;
14
+ uniqueValuesInColumn(key: string): string[];
15
+ clearFilter(): void;
16
+ filterSheetByColumnValue(filter: {
17
+ columnName: string;
18
+ value: string;
19
+ }[]): void;
20
+ }
21
+ export declare class ExcelHelperRow {
22
+ private row;
23
+ private columnsByName;
24
+ constructor(row: Excel.Row, columnsByName: Map<string, number>);
25
+ getValue(key: string): any;
26
+ getNumericValue(key: string): number | null;
27
+ setValue: (key: string, value: string) => void;
28
+ }
29
+ //# sourceMappingURL=excel-helper.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"excel-helper.d.ts","sourceRoot":"","sources":["../../src/helpers/excel-helper.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,SAAS,CAAC;AAE5B,qBAAa,WAAW;IAMV,OAAO,CAAC,QAAQ;IAAU,OAAO,CAAC,aAAa,CAAC;IAL5D,QAAQ,iBAAwB;IAChC,SAAS,EAAE,KAAK,CAAC,SAAS,GAAG,SAAS,CAAa;IACnD,cAAc,sBAA6B;IAC3C,aAAa,sBAA6B;IAC1C,IAAI,EAAE,cAAc,EAAE,CAAM;gBACR,QAAQ,EAAE,MAAM,EAAU,aAAa,CAAC,EAAE,MAAM,YAAA;IAE9D,IAAI;IAIJ,IAAI;IA0BV,YAAY,CAAC,GAAG,EAAE,KAAK,CAAC,GAAG,EAAE,GAAG,EAAE,MAAM;IASxC,oBAAoB,CAAC,GAAG,EAAE,MAAM;IAiBhC,WAAW;IAUX,wBAAwB,CAAC,MAAM,EAAE;QAAE,UAAU,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,EAAE;CA+BzE;AAED,qBAAa,cAAc;IAEvB,OAAO,CAAC,GAAG;IACX,OAAO,CAAC,aAAa;gBADb,GAAG,EAAE,KAAK,CAAC,GAAG,EACd,aAAa,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC;IAG5C,QAAQ,CAAC,GAAG,EAAE,MAAM;IAmBpB,eAAe,CAAC,GAAG,EAAE,MAAM;IAa3B,QAAQ,GAAI,KAAK,MAAM,EAAE,OAAO,MAAM,UAOpC;CACH"}