@kipicore/dbcore 1.1.670 → 1.1.671
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.
- package/dist/commonValidator/commandValidator.d.ts +27 -0
- package/dist/commonValidator/commandValidator.js +225 -0
- package/dist/commonValidator/index.d.ts +3 -0
- package/dist/commonValidator/index.js +24 -0
- package/dist/commonValidator/joiCommonValidator.d.ts +12 -0
- package/dist/commonValidator/joiCommonValidator.js +47 -0
- package/dist/commonValidator/joiSchemaBuilder.d.ts +6 -0
- package/dist/commonValidator/joiSchemaBuilder.js +70 -0
- package/dist/configs/env.d.ts +2 -0
- package/dist/configs/env.js +4 -0
- package/dist/configs/index.d.ts +2 -0
- package/dist/configs/index.js +2 -0
- package/dist/configs/logger.d.ts +2 -0
- package/dist/configs/logger.js +44 -0
- package/dist/configs/redisConfig.d.ts +4 -0
- package/dist/configs/redisConfig.js +32 -0
- package/dist/constants/app.d.ts +20 -13
- package/dist/constants/app.js +31 -23
- package/dist/constants/errorMessages.d.ts +17 -0
- package/dist/constants/errorMessages.js +20 -1
- package/dist/constants/successMessages.d.ts +14 -0
- package/dist/constants/successMessages.js +17 -1
- package/dist/db/psql/migrations/20260714111425-change_status_enum_to_string_in_institutes.js +46 -0
- package/dist/db/psql/migrations/20260714131500-add_note_to_institutes.d.ts +2 -0
- package/dist/db/psql/migrations/20260714131500-add_note_to_institutes.js +20 -0
- package/dist/db/psql/migrations/20260715150000-create-ai-model-keys.d.ts +2 -0
- package/dist/db/psql/migrations/20260715150000-create-ai-model-keys.js +156 -0
- package/dist/db/psql/migrations/20260717071354-add_type_to_categories.d.ts +2 -0
- package/dist/db/psql/migrations/20260717071354-add_type_to_categories.js +19 -0
- package/dist/db/psql/migrations/20260717072745-add_type_to_sub_categories.d.ts +2 -0
- package/dist/db/psql/migrations/20260717072745-add_type_to_sub_categories.js +19 -0
- package/dist/db/psql/migrations/20260717095051-add_status_to_users.d.ts +2 -0
- package/dist/db/psql/migrations/20260717095051-add_status_to_users.js +19 -0
- package/dist/db/psql/migrations/20260721000001-add-deleted-at-to-rms-maintenance-activities.d.ts +2 -0
- package/dist/db/psql/migrations/20260721000001-add-deleted-at-to-rms-maintenance-activities.js +12 -0
- package/dist/db/psql/migrations/20260721000002-change-uploaded-from-enum-to-string-in-file-storage.d.ts +2 -0
- package/dist/db/psql/migrations/20260721000002-change-uploaded-from-enum-to-string-in-file-storage.js +42 -0
- package/dist/helpers/index.d.ts +3 -0
- package/dist/helpers/index.js +3 -0
- package/dist/helpers/sendEmail.d.ts +3 -0
- package/dist/helpers/sendEmail.js +117 -0
- package/dist/helpers/sendNotification.d.ts +4 -0
- package/dist/helpers/sendNotification.js +34 -0
- package/dist/helpers/sendSMS.d.ts +5 -0
- package/dist/helpers/sendSMS.js +34 -0
- package/dist/helpers/utils.d.ts +5 -3
- package/dist/helpers/utils.js +58 -31
- package/dist/index.d.ts +4 -0
- package/dist/index.js +4 -0
- package/dist/interfaces/aiModelKeysInterface.d.ts +15 -0
- package/dist/interfaces/categoriesInterface.d.ts +2 -1
- package/dist/interfaces/index.d.ts +1 -12
- package/dist/interfaces/index.js +1 -13
- package/dist/interfaces/instituteInterface.d.ts +1 -0
- package/dist/interfaces/subCategoriesInterface.d.ts +2 -1
- package/dist/interfaces/subscriptionPlanInterface.d.ts +2 -1
- package/dist/interfaces/userInterface.d.ts +2 -1
- package/dist/interfaces/vendorCompanyMetaInterface.d.ts +2 -1
- package/dist/models/mongodb/index.d.ts +0 -2
- package/dist/models/mongodb/index.js +1 -6
- package/dist/models/mongodb/productMetaModel.js +8 -0
- package/dist/models/mongodb/subscriptionPlanModel.js +5 -0
- package/dist/models/mongodb/vendorCompanyMetaModel.js +6 -1
- package/dist/models/psql/SubCategoriesModel.d.ts +2 -1
- package/dist/models/psql/SubCategoriesModel.js +5 -0
- package/dist/models/psql/aiModelKeysModel.d.ts +20 -0
- package/dist/models/psql/aiModelKeysModel.js +70 -0
- package/dist/models/psql/categoriesModel.d.ts +2 -1
- package/dist/models/psql/categoriesModel.js +5 -0
- package/dist/models/psql/fileStorageModel.js +3 -4
- package/dist/models/psql/index.d.ts +1 -10
- package/dist/models/psql/index.js +4 -23
- package/dist/models/psql/instituteModel.d.ts +1 -0
- package/dist/models/psql/instituteModel.js +5 -2
- package/dist/models/psql/userModel.d.ts +2 -1
- package/dist/models/psql/userModel.js +1 -0
- package/dist/queues/emailQueue.d.ts +3 -0
- package/dist/queues/emailQueue.js +22 -0
- package/dist/queues/emailWorker.d.ts +3 -0
- package/dist/queues/emailWorker.js +33 -0
- package/dist/queues/index.d.ts +2 -0
- package/dist/queues/index.js +18 -0
- package/dist/types/aiModelKeysType.d.ts +3 -0
- package/dist/types/commonType.d.ts +29 -1
- package/dist/types/index.d.ts +1 -12
- package/dist/types/index.js +1 -13
- package/package.json +11 -3
- package/dist/db/psql/migrations/20260714095754-create-arena-models.js +0 -642
- package/dist/db/psql/migrations/20260720092201-replace-facility-sports-with-sport-group-data.d.ts +0 -2
- package/dist/db/psql/migrations/20260720092201-replace-facility-sports-with-sport-group-data.js +0 -138
- package/dist/interfaces/ageGroupInterface.d.ts +0 -12
- package/dist/interfaces/assessmentTestInterface.d.ts +0 -24
- package/dist/interfaces/equipmentInterface.d.ts +0 -10
- package/dist/interfaces/equipmentInterface.js +0 -2
- package/dist/interfaces/facilityMasterInterface.d.ts +0 -9
- package/dist/interfaces/facilityMasterInterface.js +0 -2
- package/dist/interfaces/skillInterface.d.ts +0 -15
- package/dist/interfaces/skillInterface.js +0 -2
- package/dist/interfaces/sportCategoryInterface.d.ts +0 -9
- package/dist/interfaces/sportCategoryInterface.js +0 -2
- package/dist/interfaces/sportGroupDataInterface.d.ts +0 -7
- package/dist/interfaces/sportGroupDataInterface.js +0 -2
- package/dist/interfaces/sportInfoInterface.d.ts +0 -23
- package/dist/interfaces/sportInfoInterface.js +0 -2
- package/dist/interfaces/sportInterface.d.ts +0 -10
- package/dist/interfaces/sportInterface.js +0 -2
- package/dist/interfaces/sportRoleInterface.d.ts +0 -11
- package/dist/interfaces/sportRoleInterface.js +0 -2
- package/dist/interfaces/sportSubCategoryInterface.d.ts +0 -10
- package/dist/interfaces/sportSubCategoryInterface.js +0 -2
- package/dist/interfaces/unitInterface.d.ts +0 -10
- package/dist/interfaces/unitInterface.js +0 -2
- package/dist/models/mongodb/assessmentTestModel.d.ts +0 -4
- package/dist/models/mongodb/assessmentTestModel.js +0 -72
- package/dist/models/mongodb/sportInfoModel.d.ts +0 -4
- package/dist/models/mongodb/sportInfoModel.js +0 -71
- package/dist/models/psql/ageGroupModel.d.ts +0 -22
- package/dist/models/psql/ageGroupModel.js +0 -76
- package/dist/models/psql/equipmentModel.d.ts +0 -20
- package/dist/models/psql/equipmentModel.js +0 -57
- package/dist/models/psql/facilityMasterModel.d.ts +0 -18
- package/dist/models/psql/facilityMasterModel.js +0 -64
- package/dist/models/psql/skillModel.d.ts +0 -25
- package/dist/models/psql/skillModel.js +0 -99
- package/dist/models/psql/sportCategoryModel.d.ts +0 -19
- package/dist/models/psql/sportCategoryModel.js +0 -53
- package/dist/models/psql/sportGroupDataModel.d.ts +0 -13
- package/dist/models/psql/sportGroupDataModel.js +0 -64
- package/dist/models/psql/sportModel.d.ts +0 -20
- package/dist/models/psql/sportModel.js +0 -58
- package/dist/models/psql/sportRoleModel.d.ts +0 -21
- package/dist/models/psql/sportRoleModel.js +0 -71
- package/dist/models/psql/sportSubCategoryModel.d.ts +0 -20
- package/dist/models/psql/sportSubCategoryModel.js +0 -75
- package/dist/models/psql/unitModel.d.ts +0 -20
- package/dist/models/psql/unitModel.js +0 -57
- package/dist/types/ageGroupType.d.ts +0 -2
- package/dist/types/ageGroupType.js +0 -2
- package/dist/types/assessmentTestType.d.ts +0 -2
- package/dist/types/assessmentTestType.js +0 -2
- package/dist/types/equipmentType.d.ts +0 -2
- package/dist/types/equipmentType.js +0 -2
- package/dist/types/facilityMasterType.d.ts +0 -3
- package/dist/types/facilityMasterType.js +0 -2
- package/dist/types/skillType.d.ts +0 -2
- package/dist/types/skillType.js +0 -2
- package/dist/types/sportCategoryType.d.ts +0 -2
- package/dist/types/sportCategoryType.js +0 -2
- package/dist/types/sportGroupDataType.d.ts +0 -3
- package/dist/types/sportGroupDataType.js +0 -2
- package/dist/types/sportInfoType.d.ts +0 -2
- package/dist/types/sportInfoType.js +0 -2
- package/dist/types/sportRoleType.d.ts +0 -2
- package/dist/types/sportRoleType.js +0 -2
- package/dist/types/sportSubCategoryType.d.ts +0 -2
- package/dist/types/sportSubCategoryType.js +0 -2
- package/dist/types/sportType.d.ts +0 -2
- package/dist/types/sportType.js +0 -2
- package/dist/types/unitType.d.ts +0 -2
- package/dist/types/unitType.js +0 -2
- /package/dist/db/psql/migrations/{20260714095754-create-arena-models.d.ts → 20260714111425-change_status_enum_to_string_in_institutes.d.ts} +0 -0
- /package/dist/interfaces/{ageGroupInterface.js → aiModelKeysInterface.js} +0 -0
- /package/dist/{interfaces/assessmentTestInterface.js → types/aiModelKeysType.js} +0 -0
|
@@ -137,7 +137,7 @@ const vendorCompanyMetaSchema = new mongoose_1.Schema({
|
|
|
137
137
|
},
|
|
138
138
|
address2: {
|
|
139
139
|
type: String,
|
|
140
|
-
required:
|
|
140
|
+
required: false,
|
|
141
141
|
},
|
|
142
142
|
area: {
|
|
143
143
|
type: String,
|
|
@@ -185,6 +185,11 @@ const vendorCompanyMetaSchema = new mongoose_1.Schema({
|
|
|
185
185
|
enum: Object.values(constants_1.VENDOR_COMPANY_META_STATUS),
|
|
186
186
|
default: constants_1.VENDOR_COMPANY_META_STATUS.PENDING,
|
|
187
187
|
},
|
|
188
|
+
isActive: {
|
|
189
|
+
type: Boolean,
|
|
190
|
+
required: false,
|
|
191
|
+
default: true
|
|
192
|
+
},
|
|
188
193
|
createdBy: {
|
|
189
194
|
type: String,
|
|
190
195
|
},
|
|
@@ -1,12 +1,13 @@
|
|
|
1
1
|
import { Model } from 'sequelize';
|
|
2
2
|
import { ISubCategoriesModelAttributes } from '../../interfaces/subCategoriesInterface';
|
|
3
3
|
import { TSubCategoriesModelCreationAttributes } from '../../types/subCategoryType';
|
|
4
|
-
import { COMMAN_STATUS } from '../../constants/app';
|
|
4
|
+
import { CATEGORY_TYPE, COMMAN_STATUS } from '../../constants/app';
|
|
5
5
|
declare class SubCategoriesModel extends Model<ISubCategoriesModelAttributes, TSubCategoriesModelCreationAttributes> {
|
|
6
6
|
id: string;
|
|
7
7
|
name: string;
|
|
8
8
|
status: COMMAN_STATUS;
|
|
9
9
|
instituteId?: string;
|
|
10
|
+
type?: CATEGORY_TYPE;
|
|
10
11
|
createdBy: string;
|
|
11
12
|
updatedBy: string;
|
|
12
13
|
deletedBy: string;
|
|
@@ -90,6 +90,11 @@ SubCategoriesModel.init({
|
|
|
90
90
|
allowNull: true,
|
|
91
91
|
defaultValue: app_1.COMMAN_STATUS.ACTIVE,
|
|
92
92
|
},
|
|
93
|
+
type: {
|
|
94
|
+
type: sequelize_1.DataTypes.STRING,
|
|
95
|
+
allowNull: true,
|
|
96
|
+
defaultValue: app_1.CATEGORY_TYPE.INVENTORY,
|
|
97
|
+
}
|
|
93
98
|
}, {
|
|
94
99
|
modelName: 'SubCategoriesModel',
|
|
95
100
|
tableName: 'sub_categories',
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { Model } from 'sequelize';
|
|
2
|
+
import { AI_MODEL_KEYS, AI_MODEL_KEY_TYPES } from '../../constants';
|
|
3
|
+
import { IAiModelKeyAttributes } from '../../interfaces/aiModelKeysInterface';
|
|
4
|
+
import { TAiModelKeyCreationAttributes } from '../../types/aiModelKeysType';
|
|
5
|
+
declare class AiModelKeyModel extends Model<IAiModelKeyAttributes, TAiModelKeyCreationAttributes> {
|
|
6
|
+
id: string;
|
|
7
|
+
key: AI_MODEL_KEYS;
|
|
8
|
+
hasValue: string;
|
|
9
|
+
type: AI_MODEL_KEY_TYPES;
|
|
10
|
+
description: string;
|
|
11
|
+
version: number;
|
|
12
|
+
createdBy?: string;
|
|
13
|
+
updatedBy?: string;
|
|
14
|
+
deletedBy?: string;
|
|
15
|
+
readonly createdAt?: Date;
|
|
16
|
+
readonly updatedAt?: Date;
|
|
17
|
+
readonly deletedAt?: Date;
|
|
18
|
+
static associate(models: any): void;
|
|
19
|
+
}
|
|
20
|
+
export default AiModelKeyModel;
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const sequelize_1 = require("sequelize");
|
|
4
|
+
const index_1 = require("./index");
|
|
5
|
+
class AiModelKeyModel extends sequelize_1.Model {
|
|
6
|
+
static associate(models) {
|
|
7
|
+
const { UserModel } = models;
|
|
8
|
+
AiModelKeyModel.belongsTo(UserModel, {
|
|
9
|
+
foreignKey: {
|
|
10
|
+
name: 'createdBy',
|
|
11
|
+
allowNull: true,
|
|
12
|
+
field: 'created_by',
|
|
13
|
+
},
|
|
14
|
+
as: 'createdByUser',
|
|
15
|
+
});
|
|
16
|
+
AiModelKeyModel.belongsTo(UserModel, {
|
|
17
|
+
foreignKey: {
|
|
18
|
+
name: 'updatedBy',
|
|
19
|
+
allowNull: true,
|
|
20
|
+
field: 'updated_by',
|
|
21
|
+
},
|
|
22
|
+
as: 'updatedByUser',
|
|
23
|
+
});
|
|
24
|
+
AiModelKeyModel.belongsTo(UserModel, {
|
|
25
|
+
foreignKey: {
|
|
26
|
+
name: 'deletedBy',
|
|
27
|
+
allowNull: true,
|
|
28
|
+
field: 'deleted_by',
|
|
29
|
+
},
|
|
30
|
+
as: 'deletedByUser',
|
|
31
|
+
});
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
AiModelKeyModel.init({
|
|
35
|
+
id: {
|
|
36
|
+
type: sequelize_1.DataTypes.UUID,
|
|
37
|
+
defaultValue: sequelize_1.DataTypes.UUIDV4,
|
|
38
|
+
primaryKey: true,
|
|
39
|
+
allowNull: false,
|
|
40
|
+
},
|
|
41
|
+
key: {
|
|
42
|
+
type: sequelize_1.DataTypes.STRING,
|
|
43
|
+
allowNull: false,
|
|
44
|
+
unique: true,
|
|
45
|
+
},
|
|
46
|
+
hasValue: {
|
|
47
|
+
type: sequelize_1.DataTypes.STRING,
|
|
48
|
+
allowNull: false,
|
|
49
|
+
field: 'has_value',
|
|
50
|
+
},
|
|
51
|
+
type: {
|
|
52
|
+
type: sequelize_1.DataTypes.STRING,
|
|
53
|
+
allowNull: false,
|
|
54
|
+
},
|
|
55
|
+
description: {
|
|
56
|
+
type: sequelize_1.DataTypes.TEXT,
|
|
57
|
+
allowNull: false,
|
|
58
|
+
},
|
|
59
|
+
version: {
|
|
60
|
+
type: sequelize_1.DataTypes.INTEGER,
|
|
61
|
+
allowNull: false,
|
|
62
|
+
defaultValue: 1,
|
|
63
|
+
},
|
|
64
|
+
}, {
|
|
65
|
+
sequelize: index_1.sequelize,
|
|
66
|
+
modelName: 'AiModelKeyModel',
|
|
67
|
+
tableName: 'ai_model_keys',
|
|
68
|
+
timestamps: true,
|
|
69
|
+
});
|
|
70
|
+
exports.default = AiModelKeyModel;
|
|
@@ -1,12 +1,13 @@
|
|
|
1
1
|
import { Model } from 'sequelize';
|
|
2
2
|
import { ICategoriesModelAttributes } from '../../interfaces/categoriesInterface';
|
|
3
3
|
import { TCategoriesModelCreationAttributes } from '../../types/categoriesType';
|
|
4
|
-
import { COMMAN_STATUS } from '../../constants/app';
|
|
4
|
+
import { CATEGORY_TYPE, COMMAN_STATUS } from '../../constants/app';
|
|
5
5
|
export declare class CategoriesModel extends Model<ICategoriesModelAttributes, TCategoriesModelCreationAttributes> {
|
|
6
6
|
id: string;
|
|
7
7
|
name: string;
|
|
8
8
|
status: COMMAN_STATUS;
|
|
9
9
|
instituteId?: string;
|
|
10
|
+
type?: CATEGORY_TYPE;
|
|
10
11
|
createdBy: string;
|
|
11
12
|
updatedBy: string;
|
|
12
13
|
deletedBy: string;
|
|
@@ -51,6 +51,11 @@ CategoriesModel.init({
|
|
|
51
51
|
allowNull: false,
|
|
52
52
|
defaultValue: app_1.COMMAN_STATUS.ACTIVE,
|
|
53
53
|
},
|
|
54
|
+
type: {
|
|
55
|
+
type: sequelize_1.DataTypes.STRING,
|
|
56
|
+
allowNull: true,
|
|
57
|
+
defaultValue: app_1.CATEGORY_TYPE.INVENTORY,
|
|
58
|
+
},
|
|
54
59
|
}, {
|
|
55
60
|
modelName: 'CategoriesModel',
|
|
56
61
|
tableName: 'categories',
|
|
@@ -2,7 +2,6 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
const sequelize_1 = require("sequelize");
|
|
4
4
|
const index_1 = require("./index");
|
|
5
|
-
const app_1 = require("../../constants/app");
|
|
6
5
|
class FileStorageModel extends sequelize_1.Model {
|
|
7
6
|
static associate(models) {
|
|
8
7
|
const { UserModel, UserDirectoryModel } = models;
|
|
@@ -72,9 +71,9 @@ FileStorageModel.init({
|
|
|
72
71
|
allowNull: true,
|
|
73
72
|
},
|
|
74
73
|
uploadedFrom: {
|
|
75
|
-
type: sequelize_1.DataTypes.
|
|
76
|
-
|
|
77
|
-
allowNull:
|
|
74
|
+
type: sequelize_1.DataTypes.STRING,
|
|
75
|
+
field: 'uploaded_from',
|
|
76
|
+
allowNull: true,
|
|
78
77
|
},
|
|
79
78
|
instituteId: {
|
|
80
79
|
type: sequelize_1.DataTypes.UUID,
|
|
@@ -140,6 +140,7 @@ export { default as CertificateRequestModel } from './certificateRequestModel';
|
|
|
140
140
|
export { default as DynamicVariableModel } from './dynamicVariableModel';
|
|
141
141
|
export { default as DynamicVariableLabelModel } from './dynamicVariableLabelModel';
|
|
142
142
|
export { default as ModuleDocsModel } from './moduleDocsModel';
|
|
143
|
+
export { default as AiModelKeyModel } from './aiModelKeysModel';
|
|
143
144
|
export { default as RmsDepartmentModel } from './rmsDepartmentModel';
|
|
144
145
|
export { default as RmsLocationModel } from './rmsLocationModel';
|
|
145
146
|
export { default as RmsResourceModel } from './rmsResourceModel';
|
|
@@ -175,13 +176,3 @@ export { default as AccountLedgerModel } from './accountLedgerModel';
|
|
|
175
176
|
export { default as AccountLedgerOpeningModel } from './accountLedgerOpeningModel';
|
|
176
177
|
export { default as AccountCostCenterModel } from './accountCostCenterModel';
|
|
177
178
|
export { default as AccountVoucherTypeModel } from './accountVoucherTypeModel';
|
|
178
|
-
export { default as SportModel } from './sportModel';
|
|
179
|
-
export { default as SportCategoryModel } from './sportCategoryModel';
|
|
180
|
-
export { default as SportSubCategoryModel } from './sportSubCategoryModel';
|
|
181
|
-
export { default as SportRoleModel } from './sportRoleModel';
|
|
182
|
-
export { default as EquipmentModel } from './equipmentModel';
|
|
183
|
-
export { default as FacilityMasterModel } from './facilityMasterModel';
|
|
184
|
-
export { default as SportGroupDataModel } from './sportGroupDataModel';
|
|
185
|
-
export { default as UnitModel } from './unitModel';
|
|
186
|
-
export { default as SkillModel } from './skillModel';
|
|
187
|
-
export { default as AgeGroupModel } from './ageGroupModel';
|
|
@@ -5,8 +5,8 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
exports.ProjectAssessmentOptionModel = exports.ProductModel = exports.PincodeModel = exports.PdcHistoryModel = exports.PdcChequeModel = exports.OfferModel = exports.ModuleModel = exports.ModuleFeatureModel = exports.MasterLeaveModel = exports.LectureModel = exports.LectureHistoryModel = exports.InventoryModel = exports.InventoryHistoryModel = exports.InstituteSubscriptionPlanModel = exports.InstituteModel = exports.InstituteEntityTypeModel = exports.InstituteEntityModel = exports.HomeWorkModel = exports.GreetingsModel = exports.FloorManagementModel = exports.FileStorageModel = exports.FeeReminderSettingModel = exports.FeeReminderModel = exports.FeatureActionModel = exports.FacilityModel = exports.EntityGroupModel = exports.DriverModel = exports.CourseModel = exports.CourseHasVisitorsModel = exports.CountryModel = exports.ContactFeedBackModel = exports.CoinPurchaseOfferModel = exports.CloudStorageModel = exports.ClassRoomModel = exports.CityModel = exports.CategoriesModel = exports.BookAssessmentDateModel = exports.BatchSubjectProjectAssessmentModel = exports.BatchSubjectBookAssessmentModel = exports.BatchModel = exports.BannerModel = exports.BankAccountDetailsModel = exports.AreaModel = exports.AnnouncementModel = exports.AccountHasReceiptDetailsModel = exports.AcademicCalendarModel = exports.SubCategoriesModel = exports.Sequelize = exports.db = exports.sequelize = void 0;
|
|
7
7
|
exports.StudentLeaveRequestModel = exports.CloneListModel = exports.IncomeExpenseModel = exports.MaintenanceModel = exports.WorkOffDaysModel = exports.EntityWiseCalendarModel = exports.CampusModel = exports.LostFoundItemModel = exports.WorkingShiftModel = exports.WorkingDayModel = exports.WalletModel = exports.WalletHistoryModel = exports.VendorManagementModel = exports.VehicleModel = exports.UserRequiredStepsModel = exports.UserProjectAssessmentOptionModel = exports.UserPayoutModel = exports.UserModel = exports.UserLeaveRequestModel = exports.UserHasSubjectFeeModel = exports.UserHasStorageModel = exports.UserHasRollNumberModel = exports.UserHasRoleModel = exports.UserHasParentModel = exports.UserHasOfferModel = exports.UserHasLeaveModel = exports.UserHasLeaveHistoryModel = exports.UserHasInventoryModel = exports.UserHasInventoryHistoryModel = exports.UserHasHomeWorkModel = exports.UserHasFileModel = exports.UserHasDeviceModel = exports.UserHasCourseModel = exports.UserHasBatchModel = exports.UserHasAnnouncementModel = exports.UserBookAssessmentModel = exports.TypeManagementModel = exports.TripModel = exports.TokenModel = exports.ToDoModel = exports.TestimonialModel = exports.SyllabusModel = exports.SubjectHasPayFeeHistoryModel = exports.SubjectHasFeeModel = exports.StateModel = exports.SlotModel = exports.SendNotificationModel = exports.SchoolOfferModel = exports.RulesRegulationModel = exports.RoleModel = void 0;
|
|
8
|
-
exports.
|
|
9
|
-
exports.
|
|
8
|
+
exports.RmsPurchaseRequestItemModel = exports.RmsPurchaseRequestModel = exports.RmsVendorDocumentModel = exports.RmsVendorModel = exports.RmsStockTransactionModel = exports.RmsStockModel = exports.RmsResourceModel = exports.RmsLocationModel = exports.RmsDepartmentModel = exports.AiModelKeyModel = exports.ModuleDocsModel = exports.DynamicVariableLabelModel = exports.DynamicVariableModel = exports.CertificateRequestModel = exports.FeeSubmissionTrackModel = exports.UserHasFeeSubmissionModel = exports.AssignSubjectModel = exports.InstitutePartnersModel = exports.InstituteOwnershipHistoryModel = exports.UserHasPenaltyHistoryModel = exports.PastYearRecordModel = exports.PayoutTransactionHistoryModel = exports.AdditionalPayoutModel = exports.LoanEmiModel = exports.UserLoanModel = exports.NoticeboardModel = exports.UserPermissionModel = exports.RoleManagementModel = exports.PermissionModel = exports.DesignationModel = exports.AdditionalPayoutTypeModel = exports.VisitorBookModel = exports.PostalDispatchModel = exports.CallRegisterModel = exports.UserHasOfferAndDiscountModel = exports.UserAcceptedTermsAndCondition = exports.SubjectInternalMarkModel = exports.InternalMarkModel = exports.TermsAndConditionModel = exports.FeeType1Model = exports.StudentFeeTermsModel = exports.UserHasPenaltyModel = exports.PenaltyModel = exports.ClassRoomCollectionModel = exports.ClassRoomEventModel = exports.StudentFeeTypeCollectionModel = exports.SchoolFeeTermsModel = exports.StudentFeeHistoryModel = exports.StudentFeeCollectionModel = exports.UserDirectoryModel = void 0;
|
|
9
|
+
exports.AccountVoucherTypeModel = exports.AccountCostCenterModel = exports.AccountLedgerOpeningModel = exports.AccountLedgerModel = exports.AccountGroupModel = exports.AccountNumberSequenceModel = exports.AccountPeriodLockModel = exports.AccountFinancialYearModel = exports.RmsExpenseEntryModel = exports.RmsBudgetModel = exports.RmsFacilityBookingModel = exports.RmsFacilityModel = exports.RmsMaintenanceActivityModel = exports.RmsMaintenanceTicketModel = exports.RefundCollectionModule = exports.RmsAssetTransactionModel = exports.RmsStorageSlotModel = exports.RmsStorageRackModel = exports.UserHasGraceMarksModel = exports.GraceMarksModel = exports.RmsAssetModel = exports.RmsGrnItemTransactionModel = exports.RmsGrnItemModel = exports.RmsGrnModel = exports.RmsPurchaseOrderItemModel = exports.RmsPurchaseOrderModel = void 0;
|
|
10
10
|
const sequelize_1 = require("sequelize");
|
|
11
11
|
Object.defineProperty(exports, "Sequelize", { enumerable: true, get: function () { return sequelize_1.Sequelize; } });
|
|
12
12
|
const postgresConfig = require('../../configs/postgresConfig');
|
|
@@ -375,6 +375,8 @@ var dynamicVariableLabelModel_1 = require("./dynamicVariableLabelModel");
|
|
|
375
375
|
Object.defineProperty(exports, "DynamicVariableLabelModel", { enumerable: true, get: function () { return __importDefault(dynamicVariableLabelModel_1).default; } });
|
|
376
376
|
var moduleDocsModel_1 = require("./moduleDocsModel");
|
|
377
377
|
Object.defineProperty(exports, "ModuleDocsModel", { enumerable: true, get: function () { return __importDefault(moduleDocsModel_1).default; } });
|
|
378
|
+
var aiModelKeysModel_1 = require("./aiModelKeysModel");
|
|
379
|
+
Object.defineProperty(exports, "AiModelKeyModel", { enumerable: true, get: function () { return __importDefault(aiModelKeysModel_1).default; } });
|
|
378
380
|
// RMS Models
|
|
379
381
|
var rmsDepartmentModel_1 = require("./rmsDepartmentModel");
|
|
380
382
|
Object.defineProperty(exports, "RmsDepartmentModel", { enumerable: true, get: function () { return __importDefault(rmsDepartmentModel_1).default; } });
|
|
@@ -446,24 +448,3 @@ var accountCostCenterModel_1 = require("./accountCostCenterModel");
|
|
|
446
448
|
Object.defineProperty(exports, "AccountCostCenterModel", { enumerable: true, get: function () { return __importDefault(accountCostCenterModel_1).default; } });
|
|
447
449
|
var accountVoucherTypeModel_1 = require("./accountVoucherTypeModel");
|
|
448
450
|
Object.defineProperty(exports, "AccountVoucherTypeModel", { enumerable: true, get: function () { return __importDefault(accountVoucherTypeModel_1).default; } });
|
|
449
|
-
// Arena Module
|
|
450
|
-
var sportModel_1 = require("./sportModel");
|
|
451
|
-
Object.defineProperty(exports, "SportModel", { enumerable: true, get: function () { return __importDefault(sportModel_1).default; } });
|
|
452
|
-
var sportCategoryModel_1 = require("./sportCategoryModel");
|
|
453
|
-
Object.defineProperty(exports, "SportCategoryModel", { enumerable: true, get: function () { return __importDefault(sportCategoryModel_1).default; } });
|
|
454
|
-
var sportSubCategoryModel_1 = require("./sportSubCategoryModel");
|
|
455
|
-
Object.defineProperty(exports, "SportSubCategoryModel", { enumerable: true, get: function () { return __importDefault(sportSubCategoryModel_1).default; } });
|
|
456
|
-
var sportRoleModel_1 = require("./sportRoleModel");
|
|
457
|
-
Object.defineProperty(exports, "SportRoleModel", { enumerable: true, get: function () { return __importDefault(sportRoleModel_1).default; } });
|
|
458
|
-
var equipmentModel_1 = require("./equipmentModel");
|
|
459
|
-
Object.defineProperty(exports, "EquipmentModel", { enumerable: true, get: function () { return __importDefault(equipmentModel_1).default; } });
|
|
460
|
-
var facilityMasterModel_1 = require("./facilityMasterModel");
|
|
461
|
-
Object.defineProperty(exports, "FacilityMasterModel", { enumerable: true, get: function () { return __importDefault(facilityMasterModel_1).default; } });
|
|
462
|
-
var sportGroupDataModel_1 = require("./sportGroupDataModel");
|
|
463
|
-
Object.defineProperty(exports, "SportGroupDataModel", { enumerable: true, get: function () { return __importDefault(sportGroupDataModel_1).default; } });
|
|
464
|
-
var unitModel_1 = require("./unitModel");
|
|
465
|
-
Object.defineProperty(exports, "UnitModel", { enumerable: true, get: function () { return __importDefault(unitModel_1).default; } });
|
|
466
|
-
var skillModel_1 = require("./skillModel");
|
|
467
|
-
Object.defineProperty(exports, "SkillModel", { enumerable: true, get: function () { return __importDefault(skillModel_1).default; } });
|
|
468
|
-
var ageGroupModel_1 = require("./ageGroupModel");
|
|
469
|
-
Object.defineProperty(exports, "AgeGroupModel", { enumerable: true, get: function () { return __importDefault(ageGroupModel_1).default; } });
|
|
@@ -65,10 +65,9 @@ InstituteModel.init({
|
|
|
65
65
|
name: { type: sequelize_1.DataTypes.STRING(100), allowNull: false },
|
|
66
66
|
email: { type: sequelize_1.DataTypes.STRING(50), allowNull: false },
|
|
67
67
|
status: {
|
|
68
|
-
type: sequelize_1.DataTypes.
|
|
68
|
+
type: sequelize_1.DataTypes.STRING,
|
|
69
69
|
allowNull: false,
|
|
70
70
|
defaultValue: app_1.INSTITUTE_STATUS.ACTIVE,
|
|
71
|
-
values: Object.values(app_1.INSTITUTE_STATUS),
|
|
72
71
|
},
|
|
73
72
|
type: {
|
|
74
73
|
type: sequelize_1.DataTypes.ENUM,
|
|
@@ -154,6 +153,10 @@ InstituteModel.init({
|
|
|
154
153
|
defaultValue: false,
|
|
155
154
|
allowNull: true,
|
|
156
155
|
},
|
|
156
|
+
note: {
|
|
157
|
+
type: sequelize_1.DataTypes.STRING,
|
|
158
|
+
allowNull: true,
|
|
159
|
+
},
|
|
157
160
|
}, {
|
|
158
161
|
modelName: 'InstituteModel',
|
|
159
162
|
tableName: 'institutes',
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { Model } from 'sequelize';
|
|
2
|
-
import { APP_TYPE, EMAIL_VERIFICATION, MOBILE_VERIFICATION, USER_TYPES } from '../../constants/app';
|
|
2
|
+
import { APP_TYPE, EMAIL_VERIFICATION, MOBILE_VERIFICATION, USER_STATUS, USER_TYPES } from '../../constants/app';
|
|
3
3
|
import { IUserAttributes } from '../../interfaces/userInterface';
|
|
4
4
|
import { TUserCreationAttributes } from '../../types/userType';
|
|
5
5
|
declare class UserModel extends Model<IUserAttributes, TUserCreationAttributes> implements IUserAttributes {
|
|
@@ -44,6 +44,7 @@ declare class UserModel extends Model<IUserAttributes, TUserCreationAttributes>
|
|
|
44
44
|
district?: string;
|
|
45
45
|
area?: string;
|
|
46
46
|
taluka?: string;
|
|
47
|
+
status?: USER_STATUS;
|
|
47
48
|
readonly createdAt: Date;
|
|
48
49
|
readonly deletedAt: string;
|
|
49
50
|
readonly updatedAt: Date;
|
|
@@ -186,6 +186,7 @@ UserModel.init({
|
|
|
186
186
|
medications: { type: sequelize_1.DataTypes.STRING, allowNull: true, field: 'medications' },
|
|
187
187
|
relation: { type: sequelize_1.DataTypes.STRING, allowNull: true },
|
|
188
188
|
taluka: { type: sequelize_1.DataTypes.STRING, allowNull: true },
|
|
189
|
+
status: { type: sequelize_1.DataTypes.STRING, allowNull: true, defaultValue: app_1.USER_STATUS.ACTIVE },
|
|
189
190
|
}, {
|
|
190
191
|
modelName: 'UserModel',
|
|
191
192
|
tableName: 'users',
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.emailQueue = exports.EMAIL_QUEUE_NAME = void 0;
|
|
7
|
+
/* eslint-disable @typescript-eslint/no-explicit-any */
|
|
8
|
+
const bullmq_1 = require("bullmq");
|
|
9
|
+
const redisConfig_1 = __importDefault(require("../configs/redisConfig"));
|
|
10
|
+
exports.EMAIL_QUEUE_NAME = 'email-queue';
|
|
11
|
+
exports.emailQueue = new bullmq_1.Queue(exports.EMAIL_QUEUE_NAME, {
|
|
12
|
+
connection: redisConfig_1.default,
|
|
13
|
+
defaultJobOptions: {
|
|
14
|
+
attempts: 3,
|
|
15
|
+
backoff: {
|
|
16
|
+
type: 'exponential',
|
|
17
|
+
delay: 1000,
|
|
18
|
+
},
|
|
19
|
+
removeOnComplete: true,
|
|
20
|
+
removeOnFail: false,
|
|
21
|
+
},
|
|
22
|
+
});
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.emailWorker = void 0;
|
|
7
|
+
/* eslint-disable @typescript-eslint/no-explicit-any */
|
|
8
|
+
const bullmq_1 = require("bullmq");
|
|
9
|
+
const redisConfig_1 = __importDefault(require("../configs/redisConfig"));
|
|
10
|
+
const sendEmail_1 = require("../helpers/sendEmail");
|
|
11
|
+
const logger_1 = require("../configs/logger");
|
|
12
|
+
const emailQueue_1 = require("./emailQueue");
|
|
13
|
+
exports.emailWorker = new bullmq_1.Worker(emailQueue_1.EMAIL_QUEUE_NAME, async (job) => {
|
|
14
|
+
const emailOptions = job.data;
|
|
15
|
+
logger_1.logger.info(`Processing email job ${job.id} to ${emailOptions.to}`);
|
|
16
|
+
try {
|
|
17
|
+
await (0, sendEmail_1.sendEmailDirect)(emailOptions);
|
|
18
|
+
logger_1.logger.info(`Email job ${job.id} sent successfully`);
|
|
19
|
+
}
|
|
20
|
+
catch (error) {
|
|
21
|
+
logger_1.logger.error(`Failed to send email job ${job.id}:`, error);
|
|
22
|
+
throw error;
|
|
23
|
+
}
|
|
24
|
+
}, {
|
|
25
|
+
connection: redisConfig_1.default,
|
|
26
|
+
concurrency: 5,
|
|
27
|
+
});
|
|
28
|
+
exports.emailWorker.on('completed', job => {
|
|
29
|
+
logger_1.logger.info(`Job ${job.id} completed successfully`);
|
|
30
|
+
});
|
|
31
|
+
exports.emailWorker.on('failed', (job, err) => {
|
|
32
|
+
logger_1.logger.error(`Job ${job?.id} failed with error: ${err.message}`);
|
|
33
|
+
});
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
__exportStar(require("./emailQueue"), exports);
|
|
18
|
+
__exportStar(require("./emailWorker"), exports);
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import { Optional } from 'sequelize';
|
|
2
|
+
import { IAiModelKeyAttributes } from '../interfaces/aiModelKeysInterface';
|
|
3
|
+
export type TAiModelKeyCreationAttributes = Optional<IAiModelKeyAttributes, 'id' | 'version' | 'createdBy' | 'updatedBy' | 'deletedBy' | 'createdAt' | 'updatedAt' | 'deletedAt'>;
|
|
@@ -1,3 +1,13 @@
|
|
|
1
|
+
import Joi from 'joi';
|
|
2
|
+
import { APP_TYPE } from '../constants/app';
|
|
3
|
+
export type TCustomHeaders = {
|
|
4
|
+
appType?: APP_TYPE;
|
|
5
|
+
token?: string;
|
|
6
|
+
deviceId?: string;
|
|
7
|
+
deviceToken?: string;
|
|
8
|
+
academicCalendarId?: string;
|
|
9
|
+
instituteId?: string;
|
|
10
|
+
};
|
|
1
11
|
export type TPaginationOptions<T> = {
|
|
2
12
|
limit: number | undefined;
|
|
3
13
|
totalRecords: number;
|
|
@@ -5,5 +15,23 @@ export type TPaginationOptions<T> = {
|
|
|
5
15
|
hasPreviousPage: boolean;
|
|
6
16
|
hasNextPage: boolean;
|
|
7
17
|
currentPage: number;
|
|
8
|
-
recordList
|
|
18
|
+
recordList?: T[];
|
|
19
|
+
};
|
|
20
|
+
export type SchemaRules<TField> = {
|
|
21
|
+
required?: TField[];
|
|
22
|
+
optional?: TField[];
|
|
23
|
+
allowNull?: TField[];
|
|
24
|
+
forbidden?: TField[];
|
|
25
|
+
singleOrArray?: TField[];
|
|
26
|
+
singleOrArrayOrNull?: TField[];
|
|
27
|
+
customFields?: Record<string, Joi.Schema>;
|
|
28
|
+
nestedRequired?: string[];
|
|
9
29
|
};
|
|
30
|
+
export interface CrudValidatorRules<TField> {
|
|
31
|
+
create?: SchemaRules<TField>;
|
|
32
|
+
update?: SchemaRules<TField>;
|
|
33
|
+
getAll?: SchemaRules<TField>;
|
|
34
|
+
getAllWithPagination?: SchemaRules<TField>;
|
|
35
|
+
getById?: SchemaRules<TField>;
|
|
36
|
+
delete?: SchemaRules<TField>;
|
|
37
|
+
}
|
package/dist/types/index.d.ts
CHANGED
|
@@ -233,6 +233,7 @@ export * from './userFinalResultType';
|
|
|
233
233
|
export * from './refundType';
|
|
234
234
|
export * from './kipiverseContactFormType';
|
|
235
235
|
export * from './moduleDocsType';
|
|
236
|
+
export * from './aiModelKeysType';
|
|
236
237
|
export * from './accountFinancialYearType';
|
|
237
238
|
export * from './accountPeriodLockType';
|
|
238
239
|
export * from './accountNumberSequenceType';
|
|
@@ -243,15 +244,3 @@ export * from './accountCostCenterType';
|
|
|
243
244
|
export * from './accountVoucherTypeType';
|
|
244
245
|
export * from './vendorCompanyMetaType';
|
|
245
246
|
export * from './productMetaType';
|
|
246
|
-
export * from './sportType';
|
|
247
|
-
export * from './sportCategoryType';
|
|
248
|
-
export * from './sportSubCategoryType';
|
|
249
|
-
export * from './sportRoleType';
|
|
250
|
-
export * from './equipmentType';
|
|
251
|
-
export * from './facilityMasterType';
|
|
252
|
-
export * from './sportGroupDataType';
|
|
253
|
-
export * from './unitType';
|
|
254
|
-
export * from './skillType';
|
|
255
|
-
export * from './ageGroupType';
|
|
256
|
-
export * from './assessmentTestType';
|
|
257
|
-
export * from './sportInfoType';
|
package/dist/types/index.js
CHANGED
|
@@ -249,6 +249,7 @@ __exportStar(require("./userFinalResultType"), exports);
|
|
|
249
249
|
__exportStar(require("./refundType"), exports);
|
|
250
250
|
__exportStar(require("./kipiverseContactFormType"), exports);
|
|
251
251
|
__exportStar(require("./moduleDocsType"), exports);
|
|
252
|
+
__exportStar(require("./aiModelKeysType"), exports);
|
|
252
253
|
__exportStar(require("./accountFinancialYearType"), exports);
|
|
253
254
|
__exportStar(require("./accountPeriodLockType"), exports);
|
|
254
255
|
__exportStar(require("./accountNumberSequenceType"), exports);
|
|
@@ -259,16 +260,3 @@ __exportStar(require("./accountCostCenterType"), exports);
|
|
|
259
260
|
__exportStar(require("./accountVoucherTypeType"), exports);
|
|
260
261
|
__exportStar(require("./vendorCompanyMetaType"), exports);
|
|
261
262
|
__exportStar(require("./productMetaType"), exports);
|
|
262
|
-
// Arena Module
|
|
263
|
-
__exportStar(require("./sportType"), exports);
|
|
264
|
-
__exportStar(require("./sportCategoryType"), exports);
|
|
265
|
-
__exportStar(require("./sportSubCategoryType"), exports);
|
|
266
|
-
__exportStar(require("./sportRoleType"), exports);
|
|
267
|
-
__exportStar(require("./equipmentType"), exports);
|
|
268
|
-
__exportStar(require("./facilityMasterType"), exports);
|
|
269
|
-
__exportStar(require("./sportGroupDataType"), exports);
|
|
270
|
-
__exportStar(require("./unitType"), exports);
|
|
271
|
-
__exportStar(require("./skillType"), exports);
|
|
272
|
-
__exportStar(require("./ageGroupType"), exports);
|
|
273
|
-
__exportStar(require("./assessmentTestType"), exports);
|
|
274
|
-
__exportStar(require("./sportInfoType"), exports);
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@kipicore/dbcore",
|
|
3
|
-
"version": "1.1.
|
|
3
|
+
"version": "1.1.671",
|
|
4
4
|
"description": "Reusable DB core package with Postgres, MongoDB, models, services, interfaces, and types",
|
|
5
5
|
"types": "dist/index.d.ts",
|
|
6
6
|
"main": "dist/index.js",
|
|
@@ -44,16 +44,24 @@
|
|
|
44
44
|
"@aws-sdk/client-sts": "^3.1017.0",
|
|
45
45
|
"@aws-sdk/s3-request-presigner": "^3.895.0",
|
|
46
46
|
"axios": "^1.12.2",
|
|
47
|
+
"bullmq": "^5.80.9",
|
|
47
48
|
"date-fns": "^4.1.0",
|
|
48
49
|
"dotenv": "^17.2.2",
|
|
50
|
+
"ejs": "^3.1.10",
|
|
51
|
+
"firebase-admin": "^13.4.0",
|
|
52
|
+
"ioredis": "^5.11.1",
|
|
49
53
|
"joi": "^18.0.1",
|
|
50
54
|
"mongoose": "^8.5.2",
|
|
51
55
|
"pg": "^8.12.0",
|
|
52
56
|
"sequelize": "^6.37.3",
|
|
53
|
-
"uuid": "^8.3.2"
|
|
57
|
+
"uuid": "^8.3.2",
|
|
58
|
+
"winston": "^3.19.0",
|
|
59
|
+
"winston-daily-rotate-file": "^5.0.0"
|
|
54
60
|
},
|
|
55
61
|
"devDependencies": {
|
|
56
62
|
"@eslint/js": "^9.17.0",
|
|
63
|
+
"@types/ejs": "^3.1.5",
|
|
64
|
+
"@types/express": "^5.0.6",
|
|
57
65
|
"@types/mongoose": "^5.11.97",
|
|
58
66
|
"@types/node": "^24.5.2",
|
|
59
67
|
"@types/sequelize": "^4.28.14",
|
|
@@ -72,4 +80,4 @@
|
|
|
72
80
|
"LICENSE",
|
|
73
81
|
".sequelizerc"
|
|
74
82
|
]
|
|
75
|
-
}
|
|
83
|
+
}
|