cloud-ide-model-schema 1.1.190 → 1.1.192

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 (36) hide show
  1. package/lib/schema/academics/aca_student_enrollment.d.ts +8 -0
  2. package/lib/schema/academics/aca_student_enrollment.js +103 -0
  3. package/lib/schema/academics/index.d.ts +1 -0
  4. package/lib/schema/academics/index.js +1 -0
  5. package/lib/schema/attendance/attendance_exception.d.ts +8 -0
  6. package/lib/schema/attendance/attendance_exception.js +18 -0
  7. package/lib/schema/attendance/attendance_integration_audit.d.ts +8 -0
  8. package/lib/schema/attendance/attendance_integration_audit.js +18 -0
  9. package/lib/schema/attendance/attendance_provider_master.d.ts +8 -0
  10. package/lib/schema/attendance/attendance_provider_master.js +16 -0
  11. package/lib/schema/attendance/attendance_record.d.ts +8 -0
  12. package/lib/schema/attendance/attendance_record.js +37 -0
  13. package/lib/schema/attendance/attendance_school_integration.d.ts +8 -0
  14. package/lib/schema/attendance/attendance_school_integration.js +24 -0
  15. package/lib/schema/attendance/index.d.ts +5 -0
  16. package/lib/schema/attendance/index.js +13 -0
  17. package/lib/schema/core/core_ai_capability.d.ts +8 -0
  18. package/lib/schema/core/core_ai_capability.js +37 -0
  19. package/lib/schema/core/core_ai_embedding_chunk.d.ts +8 -0
  20. package/lib/schema/core/core_ai_embedding_chunk.js +50 -0
  21. package/lib/schema/core/core_ai_feedback_log.d.ts +8 -0
  22. package/lib/schema/core/core_ai_feedback_log.js +38 -0
  23. package/lib/schema/core/core_ai_knowledge_source.d.ts +8 -0
  24. package/lib/schema/core/core_ai_knowledge_source.js +41 -0
  25. package/lib/schema/core/core_ai_prompt_template.d.ts +8 -0
  26. package/lib/schema/core/core_ai_prompt_template.js +18 -0
  27. package/lib/schema/core/core_ai_request_audit_log.d.ts +8 -0
  28. package/lib/schema/core/core_ai_request_audit_log.js +26 -0
  29. package/lib/schema/core/core_ai_role_capability_mapping.d.ts +8 -0
  30. package/lib/schema/core/core_ai_role_capability_mapping.js +33 -0
  31. package/lib/schema/core/index.d.ts +22 -1
  32. package/lib/schema/core/index.js +15 -1
  33. package/lib/schema/index.d.ts +1 -0
  34. package/lib/schema/index.js +1 -0
  35. package/package.json +3 -3
  36. package/README.md +0 -145
@@ -0,0 +1,8 @@
1
+ import { AcaStudentEnrollment } from "cloud-ide-lms-model";
2
+ import mongoose from "mongoose";
3
+ declare const CAcaStudentEnrollment: mongoose.Model<AcaStudentEnrollment, {}, {}, {}, mongoose.Document<unknown, {}, AcaStudentEnrollment, {}> & AcaStudentEnrollment & Required<{
4
+ _id: string;
5
+ }> & {
6
+ __v: number;
7
+ }, any>;
8
+ export { CAcaStudentEnrollment };
@@ -0,0 +1,103 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.CAcaStudentEnrollment = void 0;
4
+ var mongoose_1 = require("mongoose");
5
+ /* SCHEMA START */
6
+ var aca_student_enrollment = new mongoose_1.Schema({
7
+ acen_student_id_auth: {
8
+ type: mongoose_1.default.Schema.Types.ObjectId,
9
+ ref: "auth_user_mst",
10
+ required: true
11
+ },
12
+ acen_entity_id_syen: {
13
+ type: mongoose_1.default.Schema.Types.ObjectId,
14
+ ref: "core_system_entity",
15
+ required: true
16
+ },
17
+ acen_academic_year_id_acayr: {
18
+ type: mongoose_1.default.Schema.Types.ObjectId,
19
+ ref: "aca_academic_year",
20
+ required: true
21
+ },
22
+ acen_class_program_id_acacpm: {
23
+ type: mongoose_1.default.Schema.Types.ObjectId,
24
+ ref: "aca_class_program_master",
25
+ required: true
26
+ },
27
+ acen_branch_id_acabrn: {
28
+ type: mongoose_1.default.Schema.Types.ObjectId,
29
+ ref: "aca_class_prg_branch",
30
+ default: null
31
+ },
32
+ acen_term_id_acapt: {
33
+ type: mongoose_1.default.Schema.Types.ObjectId,
34
+ ref: "aca_class_program_term",
35
+ required: true
36
+ },
37
+ acen_section_id_acapts: {
38
+ type: mongoose_1.default.Schema.Types.ObjectId,
39
+ ref: "aca_prg_trm_section",
40
+ required: true
41
+ },
42
+ acen_roll_number: {
43
+ type: String,
44
+ trim: true,
45
+ maxlength: 50
46
+ },
47
+ acen_status_sygms: {
48
+ type: mongoose_1.default.Schema.Types.ObjectId,
49
+ ref: "core_general_master",
50
+ required: true
51
+ },
52
+ acen_current_year_level: {
53
+ type: String,
54
+ trim: true,
55
+ maxlength: 30
56
+ },
57
+ acen_joined_date: {
58
+ type: Date
59
+ },
60
+ acen_exit_date: {
61
+ type: Date,
62
+ default: null
63
+ },
64
+ acen_previous_enrollment_id: {
65
+ type: mongoose_1.default.Schema.Types.ObjectId,
66
+ ref: "aca_student_enrollment",
67
+ default: null
68
+ },
69
+ acen_promoted_to_enrollment_id: {
70
+ type: mongoose_1.default.Schema.Types.ObjectId,
71
+ ref: "aca_student_enrollment",
72
+ default: null
73
+ },
74
+ acen_iscurrent: {
75
+ type: Boolean,
76
+ default: true
77
+ },
78
+ acen_isactive: {
79
+ type: Boolean,
80
+ default: true
81
+ },
82
+ acen_remarks: {
83
+ type: String,
84
+ trim: true,
85
+ maxlength: 500
86
+ },
87
+ acen_created_by_user: {
88
+ type: mongoose_1.default.Schema.Types.ObjectId,
89
+ ref: "auth_user_mst"
90
+ },
91
+ acen_updated_by_user: {
92
+ type: mongoose_1.default.Schema.Types.ObjectId,
93
+ ref: "auth_user_mst"
94
+ }
95
+ }, { collection: "aca_student_enrollment", timestamps: { createdAt: "acen_created_at", updatedAt: "acen_updated_at" } });
96
+ // Query/index patterns for section-wise operational usage
97
+ aca_student_enrollment.index({ acen_entity_id_syen: 1, acen_academic_year_id_acayr: 1, acen_section_id_acapts: 1, acen_iscurrent: 1 });
98
+ aca_student_enrollment.index({ acen_student_id_auth: 1, acen_academic_year_id_acayr: 1 });
99
+ aca_student_enrollment.index({ acen_class_program_id_acacpm: 1, acen_term_id_acapt: 1, acen_section_id_acapts: 1 });
100
+ // Prevent multiple "current" enrollments for same student/year/entity
101
+ aca_student_enrollment.index({ acen_student_id_auth: 1, acen_entity_id_syen: 1, acen_academic_year_id_acayr: 1, acen_iscurrent: 1 }, { unique: true });
102
+ var CAcaStudentEnrollment = mongoose_1.default.model("aca_student_enrollment", aca_student_enrollment);
103
+ exports.CAcaStudentEnrollment = CAcaStudentEnrollment;
@@ -6,3 +6,4 @@ export * from './aca_prg_trm_section';
6
6
  export * from './aca_class_prg_branch';
7
7
  export * from './academics_education_board';
8
8
  export * from './academics_bonafide_request';
9
+ export * from './aca_student_enrollment';
@@ -22,3 +22,4 @@ __exportStar(require("./aca_prg_trm_section"), exports);
22
22
  __exportStar(require("./aca_class_prg_branch"), exports);
23
23
  __exportStar(require("./academics_education_board"), exports);
24
24
  __exportStar(require("./academics_bonafide_request"), exports);
25
+ __exportStar(require("./aca_student_enrollment"), exports);
@@ -0,0 +1,8 @@
1
+ import { AttendanceException } from "cloud-ide-lms-model";
2
+ import mongoose from "mongoose";
3
+ declare const CAttendanceException: mongoose.Model<AttendanceException, {}, {}, {}, mongoose.Document<unknown, {}, AttendanceException, {}> & AttendanceException & Required<{
4
+ _id: string;
5
+ }> & {
6
+ __v: number;
7
+ }, any>;
8
+ export { CAttendanceException };
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.CAttendanceException = void 0;
4
+ var mongoose_1 = require("mongoose");
5
+ var attendance_exception = new mongoose_1.Schema({
6
+ atex_entity_id_syen: { type: mongoose_1.default.Schema.Types.ObjectId, ref: "core_system_entity", required: true },
7
+ atex_attendance_record_id_atnr: { type: mongoose_1.default.Schema.Types.ObjectId, ref: "attendance_record", default: null },
8
+ atex_exception_type_sygms: { type: mongoose_1.default.Schema.Types.ObjectId, ref: "core_general_master", required: true },
9
+ atex_exception_status: { type: String, enum: ["OPEN", "RESOLVED"], default: "OPEN" },
10
+ atex_message: { type: String, required: true, trim: true, maxlength: 1000 },
11
+ atex_resolution_note: { type: String, trim: true, maxlength: 1000, default: null },
12
+ atex_resolved_by_user: { type: mongoose_1.default.Schema.Types.ObjectId, ref: "auth_user_mst", default: null },
13
+ atex_resolved_at: { type: Date, default: null },
14
+ atex_isactive: { type: Boolean, default: true }
15
+ }, { collection: "attendance_exception", timestamps: { createdAt: "atex_created_at", updatedAt: "atex_updated_at" } });
16
+ attendance_exception.index({ atex_entity_id_syen: 1, atex_exception_status: 1, atex_created_at: -1 });
17
+ var CAttendanceException = mongoose_1.default.model("attendance_exception", attendance_exception);
18
+ exports.CAttendanceException = CAttendanceException;
@@ -0,0 +1,8 @@
1
+ import { AttendanceIntegrationAudit } from "cloud-ide-lms-model";
2
+ import mongoose from "mongoose";
3
+ declare const CAttendanceIntegrationAudit: mongoose.Model<AttendanceIntegrationAudit, {}, {}, {}, mongoose.Document<unknown, {}, AttendanceIntegrationAudit, {}> & AttendanceIntegrationAudit & Required<{
4
+ _id: string;
5
+ }> & {
6
+ __v: number;
7
+ }, any>;
8
+ export { CAttendanceIntegrationAudit };
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.CAttendanceIntegrationAudit = void 0;
4
+ var mongoose_1 = require("mongoose");
5
+ var attendance_integration_audit = new mongoose_1.Schema({
6
+ atia_entity_id_syen: { type: mongoose_1.default.Schema.Types.ObjectId, ref: "core_system_entity", required: true },
7
+ atia_school_integration_id_atsi: { type: mongoose_1.default.Schema.Types.ObjectId, ref: "attendance_school_integration", required: true },
8
+ atia_action: { type: String, required: true, trim: true, maxlength: 100 },
9
+ atia_status: { type: String, enum: ["SUCCESS", "FAILED"], default: "SUCCESS" },
10
+ atia_request_payload: { type: mongoose_1.Schema.Types.Mixed, default: null },
11
+ atia_response_payload: { type: mongoose_1.Schema.Types.Mixed, default: null },
12
+ atia_error_message: { type: String, trim: true, maxlength: 1000, default: null },
13
+ atia_action_by_user: { type: mongoose_1.default.Schema.Types.ObjectId, ref: "auth_user_mst", default: null },
14
+ atia_isactive: { type: Boolean, default: true }
15
+ }, { collection: "attendance_integration_audit", timestamps: { createdAt: "atia_created_at", updatedAt: "atia_updated_at" } });
16
+ attendance_integration_audit.index({ atia_entity_id_syen: 1, atia_created_at: -1 });
17
+ var CAttendanceIntegrationAudit = mongoose_1.default.model("attendance_integration_audit", attendance_integration_audit);
18
+ exports.CAttendanceIntegrationAudit = CAttendanceIntegrationAudit;
@@ -0,0 +1,8 @@
1
+ import { AttendanceProviderMaster } from "cloud-ide-lms-model";
2
+ import mongoose from "mongoose";
3
+ declare const CAttendanceProviderMaster: mongoose.Model<AttendanceProviderMaster, {}, {}, {}, mongoose.Document<unknown, {}, AttendanceProviderMaster, {}> & AttendanceProviderMaster & Required<{
4
+ _id: string;
5
+ }> & {
6
+ __v: number;
7
+ }, any>;
8
+ export { CAttendanceProviderMaster };
@@ -0,0 +1,16 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.CAttendanceProviderMaster = void 0;
4
+ var mongoose_1 = require("mongoose");
5
+ var attendance_provider_master = new mongoose_1.Schema({
6
+ atprv_provider_code: { type: String, required: true, trim: true, maxlength: 60 },
7
+ atprv_provider_name: { type: String, required: true, trim: true, maxlength: 120 },
8
+ atprv_auth_type: { type: String, enum: ["API_KEY", "OAUTH", "USERNAME_PASSWORD", "TOKEN"], required: true },
9
+ atprv_sync_mode: { type: String, enum: ["PULL", "WEBHOOK", "BOTH"], default: "PULL" },
10
+ atprv_endpoint_template: { type: String, trim: true, maxlength: 500, default: null },
11
+ atprv_field_mapping_schema: { type: mongoose_1.Schema.Types.Mixed, default: {} },
12
+ atprv_isactive: { type: Boolean, default: true }
13
+ }, { collection: "attendance_provider_master", timestamps: { createdAt: "atprv_created_at", updatedAt: "atprv_updated_at" } });
14
+ attendance_provider_master.index({ atprv_provider_code: 1 }, { unique: true });
15
+ var CAttendanceProviderMaster = mongoose_1.default.model("attendance_provider_master", attendance_provider_master);
16
+ exports.CAttendanceProviderMaster = CAttendanceProviderMaster;
@@ -0,0 +1,8 @@
1
+ import { AttendanceRecord } from "cloud-ide-lms-model";
2
+ import mongoose from "mongoose";
3
+ declare const CAttendanceRecord: mongoose.Model<AttendanceRecord, {}, {}, {}, mongoose.Document<unknown, {}, AttendanceRecord, {}> & AttendanceRecord & Required<{
4
+ _id: string;
5
+ }> & {
6
+ __v: number;
7
+ }, any>;
8
+ export { CAttendanceRecord };
@@ -0,0 +1,37 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.CAttendanceRecord = void 0;
4
+ var mongoose_1 = require("mongoose");
5
+ var attendance_record = new mongoose_1.Schema({
6
+ atnr_date: { type: Date, required: true },
7
+ atnr_user_id_auth: { type: mongoose_1.default.Schema.Types.ObjectId, ref: "auth_user_mst", required: true },
8
+ atnr_entity_id_syen: { type: mongoose_1.default.Schema.Types.ObjectId, ref: "core_system_entity", required: true },
9
+ atnr_status_sygms: { type: mongoose_1.default.Schema.Types.ObjectId, ref: "core_general_master", required: true },
10
+ atnr_attendee_type: { type: String, enum: ["STUDENT", "TEACHER", "STAFF", "ALL"], required: true },
11
+ atnr_section_id_acapts: { type: mongoose_1.default.Schema.Types.ObjectId, ref: "aca_prg_trm_section", default: null },
12
+ atnr_academic_year_id_acayr: { type: mongoose_1.default.Schema.Types.ObjectId, ref: "aca_academic_year", default: null },
13
+ atnr_period_index: { type: Number, default: null },
14
+ atnr_department_id: { type: mongoose_1.default.Schema.Types.ObjectId, ref: "core_department", default: null },
15
+ atnr_location_id: { type: String, trim: true, default: null },
16
+ atnr_source: { type: String, enum: ["manual", "electronic"], default: "manual" },
17
+ atnr_device_id: { type: String, trim: true, default: null },
18
+ atnr_punch_in: { type: Date, default: null },
19
+ atnr_punch_out: { type: Date, default: null },
20
+ atnr_remark: { type: String, trim: true, maxlength: 500, default: null },
21
+ atnr_marked_by_user: { type: mongoose_1.default.Schema.Types.ObjectId, ref: "auth_user_mst", default: null },
22
+ atnr_isactive: { type: Boolean, default: true }
23
+ }, { collection: "attendance_record", timestamps: { createdAt: "atnr_created_at", updatedAt: "atnr_updated_at" } });
24
+ attendance_record.index({ atnr_entity_id_syen: 1, atnr_date: 1 });
25
+ attendance_record.index({ atnr_entity_id_syen: 1, atnr_academic_year_id_acayr: 1, atnr_section_id_acapts: 1, atnr_date: 1 });
26
+ attendance_record.index({ atnr_user_id_auth: 1, atnr_date: 1 });
27
+ attendance_record.index({ atnr_source: 1, atnr_device_id: 1 });
28
+ attendance_record.index({
29
+ atnr_date: 1,
30
+ atnr_user_id_auth: 1,
31
+ atnr_entity_id_syen: 1,
32
+ atnr_section_id_acapts: 1,
33
+ atnr_academic_year_id_acayr: 1,
34
+ atnr_period_index: 1
35
+ }, { unique: true });
36
+ var CAttendanceRecord = mongoose_1.default.model("attendance_record", attendance_record);
37
+ exports.CAttendanceRecord = CAttendanceRecord;
@@ -0,0 +1,8 @@
1
+ import { AttendanceSchoolIntegration } from "cloud-ide-lms-model";
2
+ import mongoose from "mongoose";
3
+ declare const CAttendanceSchoolIntegration: mongoose.Model<AttendanceSchoolIntegration, {}, {}, {}, mongoose.Document<unknown, {}, AttendanceSchoolIntegration, {}> & AttendanceSchoolIntegration & Required<{
4
+ _id: string;
5
+ }> & {
6
+ __v: number;
7
+ }, any>;
8
+ export { CAttendanceSchoolIntegration };
@@ -0,0 +1,24 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.CAttendanceSchoolIntegration = void 0;
4
+ var mongoose_1 = require("mongoose");
5
+ var attendance_school_integration = new mongoose_1.Schema({
6
+ atsi_entity_id_syen: { type: mongoose_1.default.Schema.Types.ObjectId, ref: "core_system_entity", required: true },
7
+ atsi_provider_id_atprv: { type: mongoose_1.default.Schema.Types.ObjectId, ref: "attendance_provider_master", required: true },
8
+ atsi_auth_type: { type: String, enum: ["API_KEY", "OAUTH", "USERNAME_PASSWORD", "TOKEN"], required: true },
9
+ atsi_credentials_encrypted: { type: String, required: true },
10
+ atsi_endpoint_base_url: { type: String, trim: true, maxlength: 500, required: true },
11
+ atsi_device_group: { type: String, trim: true, maxlength: 100, default: null },
12
+ atsi_sync_mode: { type: String, enum: ["PULL", "WEBHOOK"], default: "PULL" },
13
+ atsi_sync_frequency_minutes: { type: Number, default: 15 },
14
+ atsi_status: { type: String, enum: ["DRAFT", "TESTED", "ENABLED", "DISABLED", "ERROR"], default: "DRAFT" },
15
+ atsi_enabled: { type: Boolean, default: false },
16
+ atsi_last_tested_at: { type: Date, default: null },
17
+ atsi_last_sync_at: { type: Date, default: null },
18
+ atsi_created_by_user: { type: mongoose_1.default.Schema.Types.ObjectId, ref: "auth_user_mst", default: null },
19
+ atsi_updated_by_user: { type: mongoose_1.default.Schema.Types.ObjectId, ref: "auth_user_mst", default: null },
20
+ atsi_isactive: { type: Boolean, default: true }
21
+ }, { collection: "attendance_school_integration", timestamps: { createdAt: "atsi_created_at", updatedAt: "atsi_updated_at" } });
22
+ attendance_school_integration.index({ atsi_entity_id_syen: 1, atsi_provider_id_atprv: 1 }, { unique: true });
23
+ var CAttendanceSchoolIntegration = mongoose_1.default.model("attendance_school_integration", attendance_school_integration);
24
+ exports.CAttendanceSchoolIntegration = CAttendanceSchoolIntegration;
@@ -0,0 +1,5 @@
1
+ export { CAttendanceRecord } from "./attendance_record";
2
+ export { CAttendanceProviderMaster } from "./attendance_provider_master";
3
+ export { CAttendanceSchoolIntegration } from "./attendance_school_integration";
4
+ export { CAttendanceIntegrationAudit } from "./attendance_integration_audit";
5
+ export { CAttendanceException } from "./attendance_exception";
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.CAttendanceException = exports.CAttendanceIntegrationAudit = exports.CAttendanceSchoolIntegration = exports.CAttendanceProviderMaster = exports.CAttendanceRecord = void 0;
4
+ var attendance_record_1 = require("./attendance_record");
5
+ Object.defineProperty(exports, "CAttendanceRecord", { enumerable: true, get: function () { return attendance_record_1.CAttendanceRecord; } });
6
+ var attendance_provider_master_1 = require("./attendance_provider_master");
7
+ Object.defineProperty(exports, "CAttendanceProviderMaster", { enumerable: true, get: function () { return attendance_provider_master_1.CAttendanceProviderMaster; } });
8
+ var attendance_school_integration_1 = require("./attendance_school_integration");
9
+ Object.defineProperty(exports, "CAttendanceSchoolIntegration", { enumerable: true, get: function () { return attendance_school_integration_1.CAttendanceSchoolIntegration; } });
10
+ var attendance_integration_audit_1 = require("./attendance_integration_audit");
11
+ Object.defineProperty(exports, "CAttendanceIntegrationAudit", { enumerable: true, get: function () { return attendance_integration_audit_1.CAttendanceIntegrationAudit; } });
12
+ var attendance_exception_1 = require("./attendance_exception");
13
+ Object.defineProperty(exports, "CAttendanceException", { enumerable: true, get: function () { return attendance_exception_1.CAttendanceException; } });
@@ -0,0 +1,8 @@
1
+ import { CoreAiCapability } from "cloud-ide-lms-model";
2
+ import mongoose from "mongoose";
3
+ declare const CCoreAiCapability: mongoose.Model<CoreAiCapability, {}, {}, {}, mongoose.Document<unknown, {}, CoreAiCapability, {}> & CoreAiCapability & Required<{
4
+ _id: string;
5
+ }> & {
6
+ __v: number;
7
+ }, any>;
8
+ export { CCoreAiCapability };
@@ -0,0 +1,37 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.CCoreAiCapability = void 0;
4
+ var mongoose_1 = require("mongoose");
5
+ var core_ai_capability = new mongoose_1.Schema({
6
+ aicap_code: {
7
+ type: String,
8
+ required: true,
9
+ unique: true,
10
+ trim: true,
11
+ maxlength: 100
12
+ },
13
+ aicap_title: {
14
+ type: String,
15
+ required: true,
16
+ trim: true,
17
+ maxlength: 150
18
+ },
19
+ aicap_description: {
20
+ type: String,
21
+ trim: true,
22
+ maxlength: 500
23
+ },
24
+ aicap_risk_tier: {
25
+ type: String,
26
+ enum: ["LOW", "MEDIUM", "HIGH"],
27
+ default: "LOW"
28
+ },
29
+ aicap_isactive: {
30
+ type: Boolean,
31
+ default: true
32
+ }
33
+ }, { collection: "ai_capability", timestamps: true });
34
+ core_ai_capability.index({ aicap_code: 1 }, { unique: true });
35
+ core_ai_capability.index({ aicap_isactive: 1 });
36
+ var CCoreAiCapability = mongoose_1.default.model("ai_capability", core_ai_capability);
37
+ exports.CCoreAiCapability = CCoreAiCapability;
@@ -0,0 +1,8 @@
1
+ import { CoreAiEmbeddingChunk } from "cloud-ide-lms-model";
2
+ import mongoose from "mongoose";
3
+ declare const CCoreAiEmbeddingChunk: mongoose.Model<CoreAiEmbeddingChunk, {}, {}, {}, mongoose.Document<unknown, {}, CoreAiEmbeddingChunk, {}> & CoreAiEmbeddingChunk & Required<{
4
+ _id: string;
5
+ }> & {
6
+ __v: number;
7
+ }, any>;
8
+ export { CCoreAiEmbeddingChunk };
@@ -0,0 +1,50 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.CCoreAiEmbeddingChunk = void 0;
4
+ var mongoose_1 = require("mongoose");
5
+ var core_ai_embedding_chunk = new mongoose_1.Schema({
6
+ aiec_knowledge_source_id_aiks: {
7
+ type: mongoose_1.default.Schema.Types.ObjectId,
8
+ ref: "ai_knowledge_source",
9
+ required: true
10
+ },
11
+ aiec_entity_id_syen: {
12
+ type: mongoose_1.default.Schema.Types.ObjectId,
13
+ ref: "core_system_entity",
14
+ required: true
15
+ },
16
+ aiec_module: {
17
+ type: String,
18
+ required: true,
19
+ trim: true,
20
+ maxlength: 100
21
+ },
22
+ aiec_page_code: {
23
+ type: String,
24
+ trim: true,
25
+ maxlength: 120
26
+ },
27
+ aiec_chunk_text: {
28
+ type: String,
29
+ required: true,
30
+ trim: true,
31
+ maxlength: 60000
32
+ },
33
+ aiec_embedding: {
34
+ type: [Number],
35
+ default: []
36
+ },
37
+ aiec_metadata: {
38
+ type: mongoose_1.Schema.Types.Mixed,
39
+ default: {}
40
+ },
41
+ aiec_isactive: {
42
+ type: Boolean,
43
+ default: true
44
+ }
45
+ }, { collection: "ai_embedding_chunk", timestamps: true });
46
+ core_ai_embedding_chunk.index({ aiec_entity_id_syen: 1, aiec_module: 1, aiec_isactive: 1 });
47
+ core_ai_embedding_chunk.index({ aiec_page_code: 1, aiec_isactive: 1 });
48
+ core_ai_embedding_chunk.index({ aiec_chunk_text: "text" });
49
+ var CCoreAiEmbeddingChunk = mongoose_1.default.model("ai_embedding_chunk", core_ai_embedding_chunk);
50
+ exports.CCoreAiEmbeddingChunk = CCoreAiEmbeddingChunk;
@@ -0,0 +1,8 @@
1
+ import { CoreAiFeedbackLog } from "cloud-ide-lms-model";
2
+ import mongoose from "mongoose";
3
+ declare const CCoreAiFeedbackLog: mongoose.Model<CoreAiFeedbackLog, {}, {}, {}, mongoose.Document<unknown, {}, CoreAiFeedbackLog, {}> & CoreAiFeedbackLog & Required<{
4
+ _id: string;
5
+ }> & {
6
+ __v: number;
7
+ }, any>;
8
+ export { CCoreAiFeedbackLog };
@@ -0,0 +1,38 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.CCoreAiFeedbackLog = void 0;
4
+ var mongoose_1 = require("mongoose");
5
+ var core_ai_feedback_log = new mongoose_1.Schema({
6
+ aifbl_request_id_airal: {
7
+ type: mongoose_1.default.Schema.Types.ObjectId,
8
+ ref: "ai_request_audit_log",
9
+ required: true
10
+ },
11
+ aifbl_user_id_auth: {
12
+ type: mongoose_1.default.Schema.Types.ObjectId,
13
+ ref: "auth_user_mst"
14
+ },
15
+ aifbl_entity_id_syen: {
16
+ type: mongoose_1.default.Schema.Types.ObjectId,
17
+ ref: "core_system_entity",
18
+ required: true
19
+ },
20
+ aifbl_rating: {
21
+ type: String,
22
+ enum: ["UP", "DOWN"],
23
+ required: true
24
+ },
25
+ aifbl_feedback_text: {
26
+ type: String,
27
+ trim: true,
28
+ maxlength: 1000
29
+ },
30
+ aifbl_created_at: {
31
+ type: Date,
32
+ default: Date.now
33
+ }
34
+ }, { collection: "ai_feedback_log", timestamps: false });
35
+ core_ai_feedback_log.index({ aifbl_request_id_airal: 1 });
36
+ core_ai_feedback_log.index({ aifbl_entity_id_syen: 1, aifbl_created_at: -1 });
37
+ var CCoreAiFeedbackLog = mongoose_1.default.model("ai_feedback_log", core_ai_feedback_log);
38
+ exports.CCoreAiFeedbackLog = CCoreAiFeedbackLog;
@@ -0,0 +1,8 @@
1
+ import { CoreAiKnowledgeSource } from "cloud-ide-lms-model";
2
+ import mongoose from "mongoose";
3
+ declare const CCoreAiKnowledgeSource: mongoose.Model<CoreAiKnowledgeSource, {}, {}, {}, mongoose.Document<unknown, {}, CoreAiKnowledgeSource, {}> & CoreAiKnowledgeSource & Required<{
4
+ _id: string;
5
+ }> & {
6
+ __v: number;
7
+ }, any>;
8
+ export { CCoreAiKnowledgeSource };
@@ -0,0 +1,41 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.CCoreAiKnowledgeSource = void 0;
4
+ var mongoose_1 = require("mongoose");
5
+ var core_ai_knowledge_source = new mongoose_1.Schema({
6
+ aiks_entity_id_syen: {
7
+ type: mongoose_1.default.Schema.Types.ObjectId,
8
+ ref: "core_system_entity",
9
+ required: true
10
+ },
11
+ aiks_module: {
12
+ type: String,
13
+ required: true,
14
+ trim: true,
15
+ maxlength: 100
16
+ },
17
+ aiks_source_type: {
18
+ type: String,
19
+ enum: ["DOC", "URL", "MANUAL"],
20
+ default: "DOC"
21
+ },
22
+ aiks_source_ref: {
23
+ type: String,
24
+ required: true,
25
+ trim: true,
26
+ maxlength: 500
27
+ },
28
+ aiks_title: {
29
+ type: String,
30
+ required: true,
31
+ trim: true,
32
+ maxlength: 200
33
+ },
34
+ aiks_isactive: {
35
+ type: Boolean,
36
+ default: true
37
+ }
38
+ }, { collection: "ai_knowledge_source", timestamps: true });
39
+ core_ai_knowledge_source.index({ aiks_entity_id_syen: 1, aiks_module: 1, aiks_isactive: 1 });
40
+ var CCoreAiKnowledgeSource = mongoose_1.default.model("ai_knowledge_source", core_ai_knowledge_source);
41
+ exports.CCoreAiKnowledgeSource = CCoreAiKnowledgeSource;
@@ -0,0 +1,8 @@
1
+ import { CoreAiPromptTemplate } from "cloud-ide-lms-model";
2
+ import mongoose from "mongoose";
3
+ declare const CCoreAiPromptTemplate: mongoose.Model<CoreAiPromptTemplate, {}, {}, {}, mongoose.Document<unknown, {}, CoreAiPromptTemplate, {}> & CoreAiPromptTemplate & Required<{
4
+ _id: string;
5
+ }> & {
6
+ __v: number;
7
+ }, any>;
8
+ export { CCoreAiPromptTemplate };
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.CCoreAiPromptTemplate = void 0;
4
+ var mongoose_1 = require("mongoose");
5
+ var core_ai_prompt_template = new mongoose_1.Schema({
6
+ aiprmt_code: { type: String, required: true, trim: true, maxlength: 100 },
7
+ aiprmt_title: { type: String, required: true, trim: true, maxlength: 200 },
8
+ aiprmt_module: { type: String, required: true, trim: true, maxlength: 100 },
9
+ aiprmt_capability_code: { type: String, required: true, trim: true, maxlength: 100 },
10
+ aiprmt_system_prompt: { type: String, required: true, trim: true, maxlength: 20000 },
11
+ aiprmt_version: { type: Number, default: 1 },
12
+ aiprmt_isapproved: { type: Boolean, default: false },
13
+ aiprmt_isactive: { type: Boolean, default: true }
14
+ }, { collection: "ai_prompt_template", timestamps: true });
15
+ core_ai_prompt_template.index({ aiprmt_code: 1, aiprmt_version: -1 }, { unique: true });
16
+ core_ai_prompt_template.index({ aiprmt_module: 1, aiprmt_capability_code: 1, aiprmt_isactive: 1 });
17
+ var CCoreAiPromptTemplate = mongoose_1.default.model("ai_prompt_template", core_ai_prompt_template);
18
+ exports.CCoreAiPromptTemplate = CCoreAiPromptTemplate;
@@ -0,0 +1,8 @@
1
+ import { CoreAiRequestAuditLog } from "cloud-ide-lms-model";
2
+ import mongoose from "mongoose";
3
+ declare const CCoreAiRequestAuditLog: mongoose.Model<CoreAiRequestAuditLog, {}, {}, {}, mongoose.Document<unknown, {}, CoreAiRequestAuditLog, {}> & CoreAiRequestAuditLog & Required<{
4
+ _id: string;
5
+ }> & {
6
+ __v: number;
7
+ }, any>;
8
+ export { CCoreAiRequestAuditLog };
@@ -0,0 +1,26 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.CCoreAiRequestAuditLog = void 0;
4
+ var mongoose_1 = require("mongoose");
5
+ var core_ai_request_audit_log = new mongoose_1.Schema({
6
+ airal_user_id_auth: { type: mongoose_1.default.Schema.Types.ObjectId, ref: "auth_user_mst" },
7
+ airal_entity_id_syen: { type: mongoose_1.default.Schema.Types.ObjectId, ref: "core_system_entity", required: true },
8
+ airal_page_code: { type: String, trim: true, maxlength: 120 },
9
+ airal_capability_code: { type: String, required: true, trim: true, maxlength: 120 },
10
+ airal_prompt_redacted: { type: String, trim: true, maxlength: 30000 },
11
+ airal_provider: { type: String, trim: true, maxlength: 60 },
12
+ airal_model: { type: String, trim: true, maxlength: 80 },
13
+ airal_latency_ms: { type: Number, default: 0 },
14
+ airal_token_in: { type: Number, default: 0 },
15
+ airal_token_out: { type: Number, default: 0 },
16
+ airal_estimated_cost: { type: Number, default: 0 },
17
+ airal_success: { type: Boolean, default: false },
18
+ airal_policy_decision: { type: String, enum: ["ALLOW", "DENY"], required: true },
19
+ airal_policy_reason: { type: String, trim: true, maxlength: 500 },
20
+ airal_created_at: { type: Date, default: Date.now }
21
+ }, { collection: "ai_request_audit_log", timestamps: false });
22
+ core_ai_request_audit_log.index({ airal_entity_id_syen: 1, airal_created_at: -1 });
23
+ core_ai_request_audit_log.index({ airal_user_id_auth: 1, airal_created_at: -1 });
24
+ core_ai_request_audit_log.index({ airal_capability_code: 1, airal_created_at: -1 });
25
+ var CCoreAiRequestAuditLog = mongoose_1.default.model("ai_request_audit_log", core_ai_request_audit_log);
26
+ exports.CCoreAiRequestAuditLog = CCoreAiRequestAuditLog;
@@ -0,0 +1,8 @@
1
+ import { CoreAiRoleCapabilityMapping } from "cloud-ide-lms-model";
2
+ import mongoose from "mongoose";
3
+ declare const CCoreAiRoleCapabilityMapping: mongoose.Model<CoreAiRoleCapabilityMapping, {}, {}, {}, mongoose.Document<unknown, {}, CoreAiRoleCapabilityMapping, {}> & CoreAiRoleCapabilityMapping & Required<{
4
+ _id: string;
5
+ }> & {
6
+ __v: number;
7
+ }, any>;
8
+ export { CCoreAiRoleCapabilityMapping };
@@ -0,0 +1,33 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.CCoreAiRoleCapabilityMapping = void 0;
4
+ var mongoose_1 = require("mongoose");
5
+ var core_ai_role_capability_mapping = new mongoose_1.Schema({
6
+ aircm_role_id_syusrol: {
7
+ type: mongoose_1.default.Schema.Types.ObjectId,
8
+ ref: "core_user_role",
9
+ required: true
10
+ },
11
+ aircm_capability_id_aicap: {
12
+ type: mongoose_1.default.Schema.Types.ObjectId,
13
+ ref: "ai_capability",
14
+ required: true
15
+ },
16
+ aircm_entity_id_syen: {
17
+ type: mongoose_1.default.Schema.Types.ObjectId,
18
+ ref: "core_system_entity",
19
+ required: true
20
+ },
21
+ aircm_isactive: {
22
+ type: Boolean,
23
+ default: true
24
+ }
25
+ }, { collection: "ai_role_capability_mapping", timestamps: true });
26
+ core_ai_role_capability_mapping.index({
27
+ aircm_role_id_syusrol: 1,
28
+ aircm_capability_id_aicap: 1,
29
+ aircm_entity_id_syen: 1
30
+ }, { unique: true });
31
+ core_ai_role_capability_mapping.index({ aircm_entity_id_syen: 1, aircm_isactive: 1 });
32
+ var CCoreAiRoleCapabilityMapping = mongoose_1.default.model("ai_role_capability_mapping", core_ai_role_capability_mapping);
33
+ exports.CCoreAiRoleCapabilityMapping = CCoreAiRoleCapabilityMapping;
@@ -40,6 +40,13 @@ import { CCoreWorkflowConfig } from './core_workflow_config';
40
40
  import { CCoreWorkflowApproverRules } from './core_workflow_approver_rules';
41
41
  import { CCoreWorkflowTransactionHistory } from './core_workflow_transaction_history';
42
42
  import { CCoreApiEndpointMaster } from './core_api_endpoint_master';
43
+ import { CCoreAiCapability } from './core_ai_capability';
44
+ import { CCoreAiRoleCapabilityMapping } from './core_ai_role_capability_mapping';
45
+ import { CCoreAiPromptTemplate } from './core_ai_prompt_template';
46
+ import { CCoreAiRequestAuditLog } from './core_ai_request_audit_log';
47
+ import { CCoreAiFeedbackLog } from './core_ai_feedback_log';
48
+ import { CCoreAiKnowledgeSource } from './core_ai_knowledge_source';
49
+ import { CCoreAiEmbeddingChunk } from './core_ai_embedding_chunk';
43
50
  export * from './core_user_contact_addresses';
44
51
  export * from './core_entity_access_pass_management';
45
52
  export { CCoreSypg, CCoreSytm, CCoreSyme, CCoreSylog, CCoreSyen, CCoreSyco, CCoreFinancialConfig, CCoreSypin, CCoreSyptb, CCoreSypgr, CCoreSype, CCoreSygms, CCoreSygmt, CCoreSyenm, CCoreCyfm, CCoreSyctr, CCoreSynat,
@@ -92,4 +99,18 @@ CCoreWorkflowApproverRules,
92
99
  /** Workflow Transaction History schemas */
93
100
  CCoreWorkflowTransactionHistory,
94
101
  /** API Endpoint Master schemas */
95
- CCoreApiEndpointMaster };
102
+ CCoreApiEndpointMaster,
103
+ /** AI Capability schemas */
104
+ CCoreAiCapability,
105
+ /** AI Role Capability Mapping schemas */
106
+ CCoreAiRoleCapabilityMapping,
107
+ /** AI Prompt Template schemas */
108
+ CCoreAiPromptTemplate,
109
+ /** AI Request Audit Log schemas */
110
+ CCoreAiRequestAuditLog,
111
+ /** AI Feedback Log schemas */
112
+ CCoreAiFeedbackLog,
113
+ /** AI Knowledge Source schemas */
114
+ CCoreAiKnowledgeSource,
115
+ /** AI Embedding Chunk schemas */
116
+ CCoreAiEmbeddingChunk };
@@ -14,7 +14,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
14
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
- exports.CCoreApiEndpointMaster = exports.CCoreWorkflowTransactionHistory = exports.CCoreWorkflowApproverRules = exports.CCoreWorkflowConfig = exports.CCoreWorkflowRegistry = exports.CCoreDashboardCards = exports.CCoreUserTypeMapping = exports.CCoreBoardGradeSystem = exports.CCoreBoardExamPattern = exports.CCoreEntityUdise = exports.CCoreSchoolBoardAffiliation = exports.CCoreUserRoleExceptions = exports.CCoreUserRoleRights = exports.CCoreUserRole = exports.CCoreUserFamilyDetails = exports.CCoreUserDocuments = exports.CCoreSydept = exports.CCoreSydsgl = exports.CCoreSydsg = exports.CCoreSycr = exports.CCoreSypn = exports.CCoreSyoth = exports.CCoreSyupth = exports.CCoreSyth = exports.CCoreSylang = exports.CCoreSynat = exports.CCoreSyctr = exports.CCoreCyfm = exports.CCoreSyenm = exports.CCoreSygmt = exports.CCoreSygms = exports.CCoreSype = exports.CCoreSypgr = exports.CCoreSyptb = exports.CCoreSypin = exports.CCoreFinancialConfig = exports.CCoreSyco = exports.CCoreSyen = exports.CCoreSylog = exports.CCoreSyme = exports.CCoreSytm = exports.CCoreSypg = void 0;
17
+ exports.CCoreAiEmbeddingChunk = exports.CCoreAiKnowledgeSource = exports.CCoreAiFeedbackLog = exports.CCoreAiRequestAuditLog = exports.CCoreAiPromptTemplate = exports.CCoreAiRoleCapabilityMapping = exports.CCoreAiCapability = exports.CCoreApiEndpointMaster = exports.CCoreWorkflowTransactionHistory = exports.CCoreWorkflowApproverRules = exports.CCoreWorkflowConfig = exports.CCoreWorkflowRegistry = exports.CCoreDashboardCards = exports.CCoreUserTypeMapping = exports.CCoreBoardGradeSystem = exports.CCoreBoardExamPattern = exports.CCoreEntityUdise = exports.CCoreSchoolBoardAffiliation = exports.CCoreUserRoleExceptions = exports.CCoreUserRoleRights = exports.CCoreUserRole = exports.CCoreUserFamilyDetails = exports.CCoreUserDocuments = exports.CCoreSydept = exports.CCoreSydsgl = exports.CCoreSydsg = exports.CCoreSycr = exports.CCoreSypn = exports.CCoreSyoth = exports.CCoreSyupth = exports.CCoreSyth = exports.CCoreSylang = exports.CCoreSynat = exports.CCoreSyctr = exports.CCoreCyfm = exports.CCoreSyenm = exports.CCoreSygmt = exports.CCoreSygms = exports.CCoreSype = exports.CCoreSypgr = exports.CCoreSyptb = exports.CCoreSypin = exports.CCoreFinancialConfig = exports.CCoreSyco = exports.CCoreSyen = exports.CCoreSylog = exports.CCoreSyme = exports.CCoreSytm = exports.CCoreSypg = void 0;
18
18
  var core_system_pages_1 = require("./core_system_pages");
19
19
  Object.defineProperty(exports, "CCoreSypg", { enumerable: true, get: function () { return core_system_pages_1.CCoreSypg; } });
20
20
  var core_system_pages_theme_1 = require("./core_system_pages_theme");
@@ -99,5 +99,19 @@ var core_workflow_transaction_history_1 = require("./core_workflow_transaction_h
99
99
  Object.defineProperty(exports, "CCoreWorkflowTransactionHistory", { enumerable: true, get: function () { return core_workflow_transaction_history_1.CCoreWorkflowTransactionHistory; } });
100
100
  var core_api_endpoint_master_1 = require("./core_api_endpoint_master");
101
101
  Object.defineProperty(exports, "CCoreApiEndpointMaster", { enumerable: true, get: function () { return core_api_endpoint_master_1.CCoreApiEndpointMaster; } });
102
+ var core_ai_capability_1 = require("./core_ai_capability");
103
+ Object.defineProperty(exports, "CCoreAiCapability", { enumerable: true, get: function () { return core_ai_capability_1.CCoreAiCapability; } });
104
+ var core_ai_role_capability_mapping_1 = require("./core_ai_role_capability_mapping");
105
+ Object.defineProperty(exports, "CCoreAiRoleCapabilityMapping", { enumerable: true, get: function () { return core_ai_role_capability_mapping_1.CCoreAiRoleCapabilityMapping; } });
106
+ var core_ai_prompt_template_1 = require("./core_ai_prompt_template");
107
+ Object.defineProperty(exports, "CCoreAiPromptTemplate", { enumerable: true, get: function () { return core_ai_prompt_template_1.CCoreAiPromptTemplate; } });
108
+ var core_ai_request_audit_log_1 = require("./core_ai_request_audit_log");
109
+ Object.defineProperty(exports, "CCoreAiRequestAuditLog", { enumerable: true, get: function () { return core_ai_request_audit_log_1.CCoreAiRequestAuditLog; } });
110
+ var core_ai_feedback_log_1 = require("./core_ai_feedback_log");
111
+ Object.defineProperty(exports, "CCoreAiFeedbackLog", { enumerable: true, get: function () { return core_ai_feedback_log_1.CCoreAiFeedbackLog; } });
112
+ var core_ai_knowledge_source_1 = require("./core_ai_knowledge_source");
113
+ Object.defineProperty(exports, "CCoreAiKnowledgeSource", { enumerable: true, get: function () { return core_ai_knowledge_source_1.CCoreAiKnowledgeSource; } });
114
+ var core_ai_embedding_chunk_1 = require("./core_ai_embedding_chunk");
115
+ Object.defineProperty(exports, "CCoreAiEmbeddingChunk", { enumerable: true, get: function () { return core_ai_embedding_chunk_1.CCoreAiEmbeddingChunk; } });
102
116
  __exportStar(require("./core_user_contact_addresses"), exports);
103
117
  __exportStar(require("./core_entity_access_pass_management"), exports);
@@ -10,3 +10,4 @@ export * from "./fleet";
10
10
  export * from "./notifications";
11
11
  export * from "./system";
12
12
  export * from "./app";
13
+ export * from "./attendance";
@@ -26,3 +26,4 @@ __exportStar(require("./fleet"), exports);
26
26
  __exportStar(require("./notifications"), exports);
27
27
  __exportStar(require("./system"), exports);
28
28
  __exportStar(require("./app"), exports);
29
+ __exportStar(require("./attendance"), exports);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "dependencies": {
3
- "cloud-ide-lms-model": "file:../cloud-ide-lms-model",
3
+ "cloud-ide-lms-model": "^1.1.80",
4
4
  "dotenv": "^16.5.0",
5
5
  "mongoose": "^8.15.0"
6
6
  },
@@ -9,7 +9,7 @@
9
9
  "typescript": "^5.8.3"
10
10
  },
11
11
  "name": "cloud-ide-model-schema",
12
- "version": "1.1.190",
12
+ "version": "1.1.192",
13
13
  "description": "Pachage for schema management of Cloud IDEsys LMS",
14
14
  "main": "lib/index.js",
15
15
  "types": "lib/index.d.ts",
@@ -32,4 +32,4 @@
32
32
  "files": [
33
33
  "lib/**/*"
34
34
  ]
35
- }
35
+ }
package/README.md DELETED
@@ -1,145 +0,0 @@
1
- # Cloud IDE Model Schema
2
-
3
- A package for MongoDB schema management for the Cloud IDE LMS (Learning Management System).
4
-
5
- ## Overview
6
-
7
- The `cloud-ide-model-schema` package provides Mongoose schema definitions for the Cloud IDE LMS system. It includes schema models for authentication, core functionality, email management, and more.
8
-
9
- ## Installation
10
-
11
- ```bash
12
- npm install cloud-ide-model-schema
13
- ```
14
-
15
- ## Usage
16
-
17
- ```javascript
18
- const { CUser, CCoreSytm, CEmailTemplete } = require('cloud-ide-model-schema');
19
-
20
- // Use the models to interact with MongoDB
21
- const user = await CUser.findOne({ user_username: 'username' });
22
- ```
23
-
24
- ## Project Structure
25
-
26
- The project is organized into the following main directories:
27
-
28
- ### Source Code (`/src/`)
29
-
30
- - **Schema Components** (`/src/schema/`)
31
- - **Authentication Schemas** (`/src/schema/auth/`)
32
- - User management
33
- - Login sessions
34
- - Mobile PIN authentication
35
- - **Core Schemas** (`/src/schema/core/`)
36
- - System pages and themes
37
- - Menu management
38
- - Entity management
39
- - General master data
40
- - File management
41
- - **Email Schemas** (`/src/schema/email/`)
42
- - Email lists
43
- - Templates
44
- - Logging
45
- - Vendor management
46
-
47
- - **Configuration** (`/src/config/`)
48
- - Database connection utilities
49
- - Environment configuration
50
-
51
- ### Compiled Output (`/lib/`)
52
-
53
- - **Schema Files** (`/lib/schema/`)
54
- - Compiled JavaScript files of all schema definitions
55
- - TypeScript declaration files (`.d.ts`)
56
-
57
- - **Common Types** (`/lib/common-types/`)
58
- - Type definitions for API responses
59
- - JWT payload interfaces
60
- - General utility types
61
-
62
- - **Configuration** (`/lib/config/`)
63
- - Compiled database utilities
64
-
65
- - **Model Interfaces** (`/lib/model/`)
66
- - Type definitions for authentication
67
- - Core system model types
68
- - Email service interfaces
69
-
70
- ## Dependencies
71
-
72
- - `cloud-ide-lms-model` - Data model type definitions
73
- - `mongoose` - MongoDB ORM
74
- - `dotenv` - Environment variable management
75
-
76
- ## Development
77
-
78
- ### Scripts
79
-
80
- - `npm run build` - Build TypeScript code
81
- - `npm run prepare` - Run build automatically before publishing
82
-
83
- ### Contributing
84
-
85
- 1. Clone the repository
86
- 2. Install dependencies: `npm install`
87
- 3. Make your changes
88
- 4. Build the project: `npm run build`
89
- 5. Test your changes
90
- 6. Submit a pull request
91
-
92
- ## Documentation Structure
93
-
94
- This project uses README.md files throughout the codebase to provide comprehensive documentation. Each directory has its own README that explains its purpose and contents.
95
-
96
- ### Navigation Guide
97
-
98
- #### Source Code Documentation
99
-
100
- - [Source Directory](./src/README.md): Overview of the TypeScript source code
101
- - [Configuration](./src/config/README.md): Database connection and configuration utilities
102
- - [Schema](./src/schema/README.md): Schema structure overview
103
- - [Authentication Schemas](./src/schema/auth/README.md): User management schemas
104
- - [Core System Schemas](./src/schema/core/README.md): Core functionality schemas
105
- - [Email Service Schemas](./src/schema/email/README.md): Email management schemas
106
-
107
- #### Compiled Output Documentation
108
-
109
- - [Compiled Output Directory](./lib/README.md): Overview of the compiled JavaScript files
110
- - [Common Types](./lib/common-types/README.md): Shared type definitions
111
- - [Model Interfaces](./lib/model/README.md): Domain model interfaces
112
- - [Schema](./lib/schema/README.md): Compiled schema models
113
- - [Configuration](./lib/config/README.md): Compiled configuration utilities
114
- - [Utilities](./lib/utilities/README.md): Helper functions and utilities
115
- - [Types](./lib/@types/README.md): Internal type definitions
116
-
117
- ### README Structure
118
-
119
- Each README file contains:
120
- 1. An overview of the directory or component
121
- 2. Navigation links to related documents
122
- 3. Details about files or subdirectories
123
- 4. Usage information where appropriate
124
-
125
- ## Table of Contents
126
-
127
- - [Overview](#overview)
128
- - [Installation](#installation)
129
- - [Usage](#usage)
130
- - [Project Structure](#project-structure)
131
- - [Dependencies](#dependencies)
132
- - [Development](#development)
133
- - [Documentation Structure](#documentation-structure)
134
- - [Navigation Guide](#navigation-guide)
135
- - [README Structure](#readme-structure)
136
- - [License](#license)
137
- - [Author](#author)
138
-
139
- ## License
140
-
141
- ISC
142
-
143
- ## Author
144
-
145
- Ankush Bhure