@procxo/shared 1.0.4 → 1.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.
- package/dist/config/index.d.ts +2 -0
- package/dist/config/index.d.ts.map +1 -0
- package/dist/config/index.js +7 -0
- package/dist/config/index.js.map +1 -0
- package/dist/config/ormconfig.factory.d.ts +10 -0
- package/dist/config/ormconfig.factory.d.ts.map +1 -0
- package/dist/config/ormconfig.factory.js +48 -0
- package/dist/config/ormconfig.factory.js.map +1 -0
- package/dist/config/typeorm.config.d.ts +4 -0
- package/dist/config/typeorm.config.d.ts.map +1 -0
- package/dist/config/typeorm.config.js +22 -0
- package/dist/config/typeorm.config.js.map +1 -0
- package/dist/core/constant/index.d.ts +2 -0
- package/dist/core/constant/index.d.ts.map +1 -0
- package/dist/core/constant/index.js +18 -0
- package/dist/core/constant/index.js.map +1 -0
- package/dist/core/constant/notification-preference.d.ts +29 -0
- package/dist/core/constant/notification-preference.d.ts.map +1 -0
- package/dist/core/constant/notification-preference.js +81 -0
- package/dist/core/constant/notification-preference.js.map +1 -0
- package/dist/core/json/core-data/currency.json +8 -0
- package/{src → dist}/core/json/core-data/department.json +38 -38
- package/{src → dist}/core/json/core-data/permission.json +882 -898
- package/dist/core/json/core-data/role.json +30 -0
- package/dist/core/json/core-data/user.json +12 -0
- package/dist/core/json/geographic-data/cities.json +54693 -0
- package/dist/core/json/geographic-data/countries.json +31 -0
- package/dist/database/entities/activity-logs.entity.d.ts +11 -0
- package/dist/database/entities/activity-logs.entity.d.ts.map +1 -0
- package/dist/database/entities/activity-logs.entity.js +56 -0
- package/dist/database/entities/activity-logs.entity.js.map +1 -0
- package/dist/database/entities/address.entity.d.ts +13 -0
- package/dist/database/entities/address.entity.d.ts.map +1 -0
- package/dist/database/entities/address.entity.js +63 -0
- package/dist/database/entities/address.entity.js.map +1 -0
- package/dist/database/entities/alert.entity.d.ts +37 -0
- package/dist/database/entities/alert.entity.d.ts.map +1 -0
- package/dist/database/entities/alert.entity.js +171 -0
- package/dist/database/entities/alert.entity.js.map +1 -0
- package/dist/database/entities/approval-condition.entity.d.ts +16 -0
- package/dist/database/entities/approval-condition.entity.d.ts.map +1 -0
- package/dist/database/entities/approval-condition.entity.js +66 -0
- package/dist/database/entities/approval-condition.entity.js.map +1 -0
- package/dist/database/entities/approval-hierarchy-role.entity.d.ts +10 -0
- package/dist/database/entities/approval-hierarchy-role.entity.d.ts.map +1 -0
- package/dist/database/entities/approval-hierarchy-role.entity.js +47 -0
- package/dist/database/entities/approval-hierarchy-role.entity.js.map +1 -0
- package/dist/database/entities/approval-hierarchy-user.entity.d.ts +10 -0
- package/dist/database/entities/approval-hierarchy-user.entity.d.ts.map +1 -0
- package/dist/database/entities/approval-hierarchy-user.entity.js +47 -0
- package/dist/database/entities/approval-hierarchy-user.entity.js.map +1 -0
- package/dist/database/entities/approval-hierarchy.entity.d.ts +22 -0
- package/dist/database/entities/approval-hierarchy.entity.d.ts.map +1 -0
- package/dist/database/entities/approval-hierarchy.entity.js +80 -0
- package/dist/database/entities/approval-hierarchy.entity.js.map +1 -0
- package/dist/database/entities/approval-journey.entity.d.ts +32 -0
- package/dist/database/entities/approval-journey.entity.d.ts.map +1 -0
- package/dist/database/entities/approval-journey.entity.js +125 -0
- package/dist/database/entities/approval-journey.entity.js.map +1 -0
- package/dist/database/entities/approval-level-escalation-user.entity.d.ts +10 -0
- package/dist/database/entities/approval-level-escalation-user.entity.d.ts.map +1 -0
- package/dist/database/entities/approval-level-escalation-user.entity.js +47 -0
- package/dist/database/entities/approval-level-escalation-user.entity.js.map +1 -0
- package/dist/database/entities/approval-level-escalation.entity.d.ts +14 -0
- package/dist/database/entities/approval-level-escalation.entity.d.ts.map +1 -0
- package/dist/database/entities/approval-level-escalation.entity.js +65 -0
- package/dist/database/entities/approval-level-escalation.entity.js.map +1 -0
- package/dist/database/entities/approval-level-user.entity.d.ts +10 -0
- package/dist/database/entities/approval-level-user.entity.d.ts.map +1 -0
- package/dist/database/entities/approval-level-user.entity.js +49 -0
- package/dist/database/entities/approval-level-user.entity.js.map +1 -0
- package/dist/database/entities/approval-level.entity.d.ts +17 -0
- package/dist/database/entities/approval-level.entity.d.ts.map +1 -0
- package/dist/database/entities/approval-level.entity.js +76 -0
- package/dist/database/entities/approval-level.entity.js.map +1 -0
- package/dist/database/entities/base.entity.d.ts +12 -0
- package/dist/database/entities/base.entity.d.ts.map +1 -0
- package/dist/database/entities/base.entity.js +63 -0
- package/dist/database/entities/base.entity.js.map +1 -0
- package/dist/database/entities/chat.entity.d.ts +13 -0
- package/dist/database/entities/chat.entity.d.ts.map +1 -0
- package/dist/database/entities/chat.entity.js +67 -0
- package/dist/database/entities/chat.entity.js.map +1 -0
- package/dist/database/entities/city.entity.d.ts +11 -0
- package/dist/database/entities/city.entity.d.ts.map +1 -0
- package/dist/database/entities/city.entity.js +53 -0
- package/dist/database/entities/city.entity.js.map +1 -0
- package/dist/database/entities/client.entity.d.ts +44 -0
- package/dist/database/entities/client.entity.d.ts.map +1 -0
- package/dist/database/entities/client.entity.js +191 -0
- package/dist/database/entities/client.entity.js.map +1 -0
- package/dist/database/entities/contact.entity.d.ts +12 -0
- package/dist/database/entities/contact.entity.d.ts.map +1 -0
- package/dist/database/entities/contact.entity.js +57 -0
- package/dist/database/entities/contact.entity.js.map +1 -0
- package/dist/database/entities/country.entity.d.ts +26 -0
- package/dist/database/entities/country.entity.d.ts.map +1 -0
- package/dist/database/entities/country.entity.js +127 -0
- package/dist/database/entities/country.entity.js.map +1 -0
- package/dist/database/entities/credit-note.entity.d.ts +38 -0
- package/dist/database/entities/credit-note.entity.d.ts.map +1 -0
- package/dist/database/entities/credit-note.entity.js +159 -0
- package/dist/database/entities/credit-note.entity.js.map +1 -0
- package/dist/database/entities/currency.entity.d.ts +10 -0
- package/dist/database/entities/currency.entity.d.ts.map +1 -0
- package/dist/database/entities/currency.entity.js +47 -0
- package/dist/database/entities/currency.entity.js.map +1 -0
- package/dist/database/entities/department.entity.d.ts +10 -0
- package/dist/database/entities/department.entity.d.ts.map +1 -0
- package/dist/database/entities/department.entity.js +47 -0
- package/dist/database/entities/department.entity.js.map +1 -0
- package/dist/database/entities/entitlement.entity.d.ts +24 -0
- package/dist/database/entities/entitlement.entity.d.ts.map +1 -0
- package/dist/database/entities/entitlement.entity.js +106 -0
- package/dist/database/entities/entitlement.entity.js.map +1 -0
- package/dist/database/entities/expense.entity.d.ts +47 -0
- package/dist/database/entities/expense.entity.d.ts.map +1 -0
- package/dist/database/entities/expense.entity.js +221 -0
- package/dist/database/entities/expense.entity.js.map +1 -0
- package/dist/database/entities/file.entity.d.ts +11 -0
- package/dist/database/entities/file.entity.d.ts.map +1 -0
- package/dist/database/entities/file.entity.js +56 -0
- package/dist/database/entities/file.entity.js.map +1 -0
- package/dist/database/entities/fixed-invoice-item.entity.d.ts +9 -0
- package/dist/database/entities/fixed-invoice-item.entity.d.ts.map +1 -0
- package/dist/database/entities/fixed-invoice-item.entity.js +52 -0
- package/dist/database/entities/fixed-invoice-item.entity.js.map +1 -0
- package/dist/database/entities/group.entity.d.ts +9 -0
- package/dist/database/entities/group.entity.d.ts.map +1 -0
- package/dist/database/entities/group.entity.js +45 -0
- package/dist/database/entities/group.entity.js.map +1 -0
- package/dist/database/entities/gst.entity.d.ts +6 -0
- package/dist/database/entities/gst.entity.d.ts.map +1 -0
- package/dist/database/entities/gst.entity.js +44 -0
- package/dist/database/entities/gst.entity.js.map +1 -0
- package/dist/database/entities/holiday.entity.d.ts +14 -0
- package/dist/database/entities/holiday.entity.d.ts.map +1 -0
- package/dist/database/entities/holiday.entity.js +79 -0
- package/dist/database/entities/holiday.entity.js.map +1 -0
- package/{src/database/entities/index.ts → dist/database/entities/index.d.ts} +84 -79
- package/dist/database/entities/index.d.ts.map +1 -0
- package/dist/database/entities/index.js +100 -0
- package/dist/database/entities/index.js.map +1 -0
- package/dist/database/entities/invoice-template-footer.entity.d.ts +24 -0
- package/dist/database/entities/invoice-template-footer.entity.d.ts.map +1 -0
- package/dist/database/entities/invoice-template-footer.entity.js +118 -0
- package/dist/database/entities/invoice-template-footer.entity.js.map +1 -0
- package/dist/database/entities/invoice-template-header.entity.d.ts +14 -0
- package/dist/database/entities/invoice-template-header.entity.d.ts.map +1 -0
- package/dist/database/entities/invoice-template-header.entity.js +68 -0
- package/dist/database/entities/invoice-template-header.entity.js.map +1 -0
- package/dist/database/entities/invoice-template-table.entity.d.ts +35 -0
- package/dist/database/entities/invoice-template-table.entity.d.ts.map +1 -0
- package/dist/database/entities/invoice-template-table.entity.js +143 -0
- package/dist/database/entities/invoice-template-table.entity.js.map +1 -0
- package/dist/database/entities/invoice-template.entity.d.ts +39 -0
- package/dist/database/entities/invoice-template.entity.d.ts.map +1 -0
- package/dist/database/entities/invoice-template.entity.js +157 -0
- package/dist/database/entities/invoice-template.entity.js.map +1 -0
- package/dist/database/entities/invoice.entity.d.ts +49 -0
- package/dist/database/entities/invoice.entity.d.ts.map +1 -0
- package/dist/database/entities/invoice.entity.js +302 -0
- package/dist/database/entities/invoice.entity.js.map +1 -0
- package/dist/database/entities/invoice_item.entity.d.ts +22 -0
- package/dist/database/entities/invoice_item.entity.d.ts.map +1 -0
- package/dist/database/entities/invoice_item.entity.js +89 -0
- package/dist/database/entities/invoice_item.entity.js.map +1 -0
- package/dist/database/entities/leave-balance.entity.d.ts +38 -0
- package/dist/database/entities/leave-balance.entity.d.ts.map +1 -0
- package/dist/database/entities/leave-balance.entity.js +166 -0
- package/dist/database/entities/leave-balance.entity.js.map +1 -0
- package/dist/database/entities/leave-request.entity.d.ts +64 -0
- package/dist/database/entities/leave-request.entity.d.ts.map +1 -0
- package/dist/database/entities/leave-request.entity.js +219 -0
- package/dist/database/entities/leave-request.entity.js.map +1 -0
- package/dist/database/entities/leave-type.entity.d.ts +15 -0
- package/dist/database/entities/leave-type.entity.d.ts.map +1 -0
- package/dist/database/entities/leave-type.entity.js +72 -0
- package/dist/database/entities/leave-type.entity.js.map +1 -0
- package/dist/database/entities/matter-tag.entity.d.ts +10 -0
- package/dist/database/entities/matter-tag.entity.d.ts.map +1 -0
- package/dist/database/entities/matter-tag.entity.js +45 -0
- package/dist/database/entities/matter-tag.entity.js.map +1 -0
- package/dist/database/entities/matter-task-view-filter.entity.d.ts +11 -0
- package/dist/database/entities/matter-task-view-filter.entity.d.ts.map +1 -0
- package/dist/database/entities/matter-task-view-filter.entity.js +42 -0
- package/dist/database/entities/matter-task-view-filter.entity.js.map +1 -0
- package/dist/database/entities/matter-team-member.entity.d.ts +11 -0
- package/dist/database/entities/matter-team-member.entity.d.ts.map +1 -0
- package/dist/database/entities/matter-team-member.entity.js +56 -0
- package/dist/database/entities/matter-team-member.entity.js.map +1 -0
- package/dist/database/entities/matter.entity.d.ts +62 -0
- package/dist/database/entities/matter.entity.d.ts.map +1 -0
- package/dist/database/entities/matter.entity.js +249 -0
- package/dist/database/entities/matter.entity.js.map +1 -0
- package/dist/database/entities/otp.entity.d.ts +24 -0
- package/dist/database/entities/otp.entity.d.ts.map +1 -0
- package/dist/database/entities/otp.entity.js +97 -0
- package/dist/database/entities/otp.entity.js.map +1 -0
- package/dist/database/entities/payment.entity.d.ts +29 -0
- package/dist/database/entities/payment.entity.d.ts.map +1 -0
- package/dist/database/entities/payment.entity.js +207 -0
- package/dist/database/entities/payment.entity.js.map +1 -0
- package/dist/database/entities/permission.entity.d.ts +11 -0
- package/dist/database/entities/permission.entity.d.ts.map +1 -0
- package/dist/database/entities/permission.entity.js +52 -0
- package/dist/database/entities/permission.entity.js.map +1 -0
- package/dist/database/entities/quickbooks-connection.entity.d.ts +14 -0
- package/dist/database/entities/quickbooks-connection.entity.d.ts.map +1 -0
- package/dist/database/entities/quickbooks-connection.entity.js +71 -0
- package/dist/database/entities/quickbooks-connection.entity.js.map +1 -0
- package/dist/database/entities/quickbooks-sync-log.entity.d.ts +34 -0
- package/dist/database/entities/quickbooks-sync-log.entity.d.ts.map +1 -0
- package/dist/database/entities/quickbooks-sync-log.entity.js +116 -0
- package/dist/database/entities/quickbooks-sync-log.entity.js.map +1 -0
- package/dist/database/entities/role-permission.entity.d.ts +10 -0
- package/dist/database/entities/role-permission.entity.d.ts.map +1 -0
- package/dist/database/entities/role-permission.entity.js +49 -0
- package/dist/database/entities/role-permission.entity.js.map +1 -0
- package/dist/database/entities/role-shift.entity.d.ts +8 -0
- package/dist/database/entities/role-shift.entity.d.ts.map +1 -0
- package/dist/database/entities/role-shift.entity.js +48 -0
- package/dist/database/entities/role-shift.entity.js.map +1 -0
- package/dist/database/entities/role.entity.d.ts +13 -0
- package/dist/database/entities/role.entity.d.ts.map +1 -0
- package/dist/database/entities/role.entity.js +58 -0
- package/dist/database/entities/role.entity.js.map +1 -0
- package/dist/database/entities/sequence-generator.entity.d.ts +8 -0
- package/dist/database/entities/sequence-generator.entity.d.ts.map +1 -0
- package/dist/database/entities/sequence-generator.entity.js +64 -0
- package/dist/database/entities/sequence-generator.entity.js.map +1 -0
- package/dist/database/entities/shift.entity.d.ts +18 -0
- package/dist/database/entities/shift.entity.d.ts.map +1 -0
- package/dist/database/entities/shift.entity.js +110 -0
- package/dist/database/entities/shift.entity.js.map +1 -0
- package/dist/database/entities/sub-task-tag.entity.d.ts +10 -0
- package/dist/database/entities/sub-task-tag.entity.d.ts.map +1 -0
- package/dist/database/entities/sub-task-tag.entity.js +45 -0
- package/dist/database/entities/sub-task-tag.entity.js.map +1 -0
- package/dist/database/entities/subtask-user.entity.d.ts +10 -0
- package/dist/database/entities/subtask-user.entity.d.ts.map +1 -0
- package/dist/database/entities/subtask-user.entity.js +45 -0
- package/dist/database/entities/subtask-user.entity.js.map +1 -0
- package/dist/database/entities/subtask.entity.d.ts +47 -0
- package/dist/database/entities/subtask.entity.d.ts.map +1 -0
- package/dist/database/entities/subtask.entity.js +185 -0
- package/dist/database/entities/subtask.entity.js.map +1 -0
- package/dist/database/entities/summary-task-status.entity.d.ts +7 -0
- package/dist/database/entities/summary-task-status.entity.d.ts.map +1 -0
- package/dist/database/entities/summary-task-status.entity.js +37 -0
- package/dist/database/entities/summary-task-status.entity.js.map +1 -0
- package/dist/database/entities/superset.entity.d.ts +15 -0
- package/dist/database/entities/superset.entity.d.ts.map +1 -0
- package/dist/database/entities/superset.entity.js +73 -0
- package/dist/database/entities/superset.entity.js.map +1 -0
- package/dist/database/entities/tag.entity.d.ts +10 -0
- package/dist/database/entities/tag.entity.d.ts.map +1 -0
- package/dist/database/entities/tag.entity.js +43 -0
- package/dist/database/entities/tag.entity.js.map +1 -0
- package/dist/database/entities/task-comment.entity.d.ts +15 -0
- package/dist/database/entities/task-comment.entity.d.ts.map +1 -0
- package/dist/database/entities/task-comment.entity.js +67 -0
- package/dist/database/entities/task-comment.entity.js.map +1 -0
- package/dist/database/entities/task-milestone.entity.d.ts +7 -0
- package/dist/database/entities/task-milestone.entity.d.ts.map +1 -0
- package/dist/database/entities/task-milestone.entity.js +36 -0
- package/dist/database/entities/task-milestone.entity.js.map +1 -0
- package/dist/database/entities/task-remainder.entity.d.ts +12 -0
- package/dist/database/entities/task-remainder.entity.d.ts.map +1 -0
- package/dist/database/entities/task-remainder.entity.js +57 -0
- package/dist/database/entities/task-remainder.entity.js.map +1 -0
- package/dist/database/entities/task-tag.entity.d.ts +10 -0
- package/dist/database/entities/task-tag.entity.d.ts.map +1 -0
- package/dist/database/entities/task-tag.entity.js +45 -0
- package/dist/database/entities/task-tag.entity.js.map +1 -0
- package/dist/database/entities/task-type.entity.d.ts +7 -0
- package/dist/database/entities/task-type.entity.d.ts.map +1 -0
- package/dist/database/entities/task-type.entity.js +36 -0
- package/dist/database/entities/task-type.entity.js.map +1 -0
- package/dist/database/entities/task-user.entity.d.ts +10 -0
- package/dist/database/entities/task-user.entity.d.ts.map +1 -0
- package/dist/database/entities/task-user.entity.js +45 -0
- package/dist/database/entities/task-user.entity.js.map +1 -0
- package/dist/database/entities/task.entity.d.ts +53 -0
- package/dist/database/entities/task.entity.d.ts.map +1 -0
- package/dist/database/entities/task.entity.js +259 -0
- package/dist/database/entities/task.entity.js.map +1 -0
- package/dist/database/entities/template-task.entity.d.ts +11 -0
- package/dist/database/entities/template-task.entity.d.ts.map +1 -0
- package/dist/database/entities/template-task.entity.js +53 -0
- package/dist/database/entities/template-task.entity.js.map +1 -0
- package/dist/database/entities/template.entity.d.ts +13 -0
- package/dist/database/entities/template.entity.d.ts.map +1 -0
- package/dist/database/entities/template.entity.js +58 -0
- package/dist/database/entities/template.entity.js.map +1 -0
- package/dist/database/entities/tenant-configuration.entity.d.ts +16 -0
- package/dist/database/entities/tenant-configuration.entity.d.ts.map +1 -0
- package/dist/database/entities/tenant-configuration.entity.js +77 -0
- package/dist/database/entities/tenant-configuration.entity.js.map +1 -0
- package/dist/database/entities/tenant-module.entity.d.ts +11 -0
- package/dist/database/entities/tenant-module.entity.d.ts.map +1 -0
- package/dist/database/entities/tenant-module.entity.js +50 -0
- package/dist/database/entities/tenant-module.entity.js.map +1 -0
- package/dist/database/entities/tenant-sub-module.entity.d.ts +9 -0
- package/dist/database/entities/tenant-sub-module.entity.d.ts.map +1 -0
- package/dist/database/entities/tenant-sub-module.entity.js +45 -0
- package/dist/database/entities/tenant-sub-module.entity.js.map +1 -0
- package/dist/database/entities/timesheet-comment.entity.d.ts +11 -0
- package/dist/database/entities/timesheet-comment.entity.d.ts.map +1 -0
- package/dist/database/entities/timesheet-comment.entity.js +65 -0
- package/dist/database/entities/timesheet-comment.entity.js.map +1 -0
- package/dist/database/entities/timesheet-event.entity.d.ts +48 -0
- package/dist/database/entities/timesheet-event.entity.d.ts.map +1 -0
- package/dist/database/entities/timesheet-event.entity.js +328 -0
- package/dist/database/entities/timesheet-event.entity.js.map +1 -0
- package/dist/database/entities/timesheet-summary.entity.d.ts +27 -0
- package/dist/database/entities/timesheet-summary.entity.d.ts.map +1 -0
- package/dist/database/entities/timesheet-summary.entity.js +161 -0
- package/dist/database/entities/timesheet-summary.entity.js.map +1 -0
- package/dist/database/entities/timesheet.entity.d.ts +32 -0
- package/dist/database/entities/timesheet.entity.d.ts.map +1 -0
- package/dist/database/entities/timesheet.entity.js +112 -0
- package/dist/database/entities/timesheet.entity.js.map +1 -0
- package/dist/database/entities/transfer-ownership.entity.d.ts +15 -0
- package/dist/database/entities/transfer-ownership.entity.d.ts.map +1 -0
- package/dist/database/entities/transfer-ownership.entity.js +75 -0
- package/dist/database/entities/transfer-ownership.entity.js.map +1 -0
- package/dist/database/entities/upload-log.entity.d.ts +32 -0
- package/dist/database/entities/upload-log.entity.d.ts.map +1 -0
- package/dist/database/entities/upload-log.entity.js +116 -0
- package/dist/database/entities/upload-log.entity.js.map +1 -0
- package/dist/database/entities/user-notification-channel.entity.d.ts +8 -0
- package/dist/database/entities/user-notification-channel.entity.d.ts.map +1 -0
- package/dist/database/entities/user-notification-channel.entity.js +63 -0
- package/dist/database/entities/user-notification-channel.entity.js.map +1 -0
- package/dist/database/entities/user-notification-preference.entity.d.ts +10 -0
- package/dist/database/entities/user-notification-preference.entity.d.ts.map +1 -0
- package/dist/database/entities/user-notification-preference.entity.js +72 -0
- package/dist/database/entities/user-notification-preference.entity.js.map +1 -0
- package/dist/database/entities/user-role.entity.d.ts +10 -0
- package/dist/database/entities/user-role.entity.d.ts.map +1 -0
- package/dist/database/entities/user-role.entity.js +45 -0
- package/dist/database/entities/user-role.entity.js.map +1 -0
- package/dist/database/entities/user-session-history.entity.d.ts +24 -0
- package/dist/database/entities/user-session-history.entity.d.ts.map +1 -0
- package/dist/database/entities/user-session-history.entity.js +95 -0
- package/dist/database/entities/user-session-history.entity.js.map +1 -0
- package/dist/database/entities/user-shift.entity.d.ts +24 -0
- package/dist/database/entities/user-shift.entity.d.ts.map +1 -0
- package/dist/database/entities/user-shift.entity.js +153 -0
- package/dist/database/entities/user-shift.entity.js.map +1 -0
- package/dist/database/entities/user.entity.d.ts +77 -0
- package/dist/database/entities/user.entity.d.ts.map +1 -0
- package/dist/database/entities/user.entity.js +295 -0
- package/dist/database/entities/user.entity.js.map +1 -0
- package/dist/database/entities/zohobooks-connection.entity.d.ts +16 -0
- package/dist/database/entities/zohobooks-connection.entity.d.ts.map +1 -0
- package/dist/database/entities/zohobooks-connection.entity.js +81 -0
- package/dist/database/entities/zohobooks-connection.entity.js.map +1 -0
- package/dist/database/entities/zohobooks-sync-log.entity.d.ts +35 -0
- package/dist/database/entities/zohobooks-sync-log.entity.d.ts.map +1 -0
- package/dist/database/entities/zohobooks-sync-log.entity.js +117 -0
- package/dist/database/entities/zohobooks-sync-log.entity.js.map +1 -0
- package/dist/database/index.d.ts +2 -0
- package/dist/database/index.d.ts.map +1 -0
- package/dist/database/index.js +18 -0
- package/dist/database/index.js.map +1 -0
- package/dist/database/migrations/1770794314727-initialMigration.d.ts +7 -0
- package/dist/database/migrations/1770794314727-initialMigration.d.ts.map +1 -0
- package/{src/database/migrations/1770706648232-initialMigration.ts → dist/database/migrations/1770794314727-initialMigration.js} +9 -9
- package/dist/database/migrations/1770794314727-initialMigration.js.map +1 -0
- package/dist/database/migrations/1771421233389-initialTenantConfiguration_module_submodule_tables.d.ts +7 -0
- package/dist/database/migrations/1771421233389-initialTenantConfiguration_module_submodule_tables.d.ts.map +1 -0
- package/dist/database/migrations/1771421233389-initialTenantConfiguration_module_submodule_tables.js +26 -0
- package/dist/database/migrations/1771421233389-initialTenantConfiguration_module_submodule_tables.js.map +1 -0
- package/dist/database/migrations/1771494127263-added_tenantUserfieldInTenantConfigurationTable.d.ts +7 -0
- package/dist/database/migrations/1771494127263-added_tenantUserfieldInTenantConfigurationTable.d.ts.map +1 -0
- package/dist/database/migrations/1771494127263-added_tenantUserfieldInTenantConfigurationTable.js +14 -0
- package/dist/database/migrations/1771494127263-added_tenantUserfieldInTenantConfigurationTable.js.map +1 -0
- package/dist/database/migrations/1773212696542-Added_profileUrl_in_user_And_error_file_presigned_url_in_uploadLog.d.ts +7 -0
- package/dist/database/migrations/1773212696542-Added_profileUrl_in_user_And_error_file_presigned_url_in_uploadLog.d.ts.map +1 -0
- package/dist/database/migrations/1773212696542-Added_profileUrl_in_user_And_error_file_presigned_url_in_uploadLog.js +16 -0
- package/dist/database/migrations/1773212696542-Added_profileUrl_in_user_And_error_file_presigned_url_in_uploadLog.js.map +1 -0
- package/dist/database/migrations/1773395645993-AddedOtpEntityAndUpdateUserSessionEntity.d.ts +7 -0
- package/dist/database/migrations/1773395645993-AddedOtpEntityAndUpdateUserSessionEntity.d.ts.map +1 -0
- package/dist/database/migrations/1773395645993-AddedOtpEntityAndUpdateUserSessionEntity.js +34 -0
- package/dist/database/migrations/1773395645993-AddedOtpEntityAndUpdateUserSessionEntity.js.map +1 -0
- package/dist/database/migrations/1773397322355-AddedSystemUserName_in_UserEntity.d.ts +7 -0
- package/dist/database/migrations/1773397322355-AddedSystemUserName_in_UserEntity.d.ts.map +1 -0
- package/dist/database/migrations/1773397322355-AddedSystemUserName_in_UserEntity.js +14 -0
- package/dist/database/migrations/1773397322355-AddedSystemUserName_in_UserEntity.js.map +1 -0
- package/dist/database/migrations/1775023603725-updateClient_creditNote_file_invoice_payment_entity_and_Added_zohobookConnection_And_zohobookSync_log_entities.d.ts +7 -0
- package/dist/database/migrations/1775023603725-updateClient_creditNote_file_invoice_payment_entity_and_Added_zohobookConnection_And_zohobookSync_log_entities.d.ts.map +1 -0
- package/dist/database/migrations/1775023603725-updateClient_creditNote_file_invoice_payment_entity_and_Added_zohobookConnection_And_zohobookSync_log_entities.js +34 -0
- package/dist/database/migrations/1775023603725-updateClient_creditNote_file_invoice_payment_entity_and_Added_zohobookConnection_And_zohobookSync_log_entities.js.map +1 -0
- package/dist/database/seeder/base.seed.d.ts +19 -0
- package/dist/database/seeder/base.seed.d.ts.map +1 -0
- package/dist/database/seeder/base.seed.js +83 -0
- package/dist/database/seeder/base.seed.js.map +1 -0
- package/dist/database/seeder/config/seeder.config.d.ts +7 -0
- package/dist/database/seeder/config/seeder.config.d.ts.map +1 -0
- package/dist/database/seeder/config/seeder.config.js +21 -0
- package/dist/database/seeder/config/seeder.config.js.map +1 -0
- package/dist/database/seeder/errors/seeder.error.d.ts +11 -0
- package/dist/database/seeder/errors/seeder.error.d.ts.map +1 -0
- package/dist/database/seeder/errors/seeder.error.js +27 -0
- package/dist/database/seeder/errors/seeder.error.js.map +1 -0
- package/dist/database/seeder/seed-runner.d.ts +2 -0
- package/dist/database/seeder/seed-runner.d.ts.map +1 -0
- package/dist/database/seeder/seed-runner.js +157 -0
- package/dist/database/seeder/seed-runner.js.map +1 -0
- package/dist/database/seeder/seeds/city.seed.d.ts +8 -0
- package/dist/database/seeder/seeds/city.seed.d.ts.map +1 -0
- package/dist/database/seeder/seeds/city.seed.js +62 -0
- package/dist/database/seeder/seeds/city.seed.js.map +1 -0
- package/dist/database/seeder/seeds/country.seed.d.ts +8 -0
- package/dist/database/seeder/seeds/country.seed.d.ts.map +1 -0
- package/dist/database/seeder/seeds/country.seed.js +54 -0
- package/dist/database/seeder/seeds/country.seed.js.map +1 -0
- package/dist/database/seeder/seeds/currency.seed.d.ts +8 -0
- package/dist/database/seeder/seeds/currency.seed.d.ts.map +1 -0
- package/dist/database/seeder/seeds/currency.seed.js +50 -0
- package/dist/database/seeder/seeds/currency.seed.js.map +1 -0
- package/dist/database/seeder/seeds/department.seed.d.ts +8 -0
- package/dist/database/seeder/seeds/department.seed.d.ts.map +1 -0
- package/dist/database/seeder/seeds/department.seed.js +48 -0
- package/dist/database/seeder/seeds/department.seed.js.map +1 -0
- package/dist/database/seeder/seeds/permission.seed.d.ts +8 -0
- package/dist/database/seeder/seeds/permission.seed.d.ts.map +1 -0
- package/dist/database/seeder/seeds/permission.seed.js +54 -0
- package/dist/database/seeder/seeds/permission.seed.js.map +1 -0
- package/dist/database/seeder/seeds/role-permission.seed.d.ts +8 -0
- package/dist/database/seeder/seeds/role-permission.seed.d.ts.map +1 -0
- package/dist/database/seeder/seeds/role-permission.seed.js +47 -0
- package/dist/database/seeder/seeds/role-permission.seed.js.map +1 -0
- package/dist/database/seeder/seeds/role.seed.d.ts +8 -0
- package/dist/database/seeder/seeds/role.seed.d.ts.map +1 -0
- package/dist/database/seeder/seeds/role.seed.js +52 -0
- package/dist/database/seeder/seeds/role.seed.js.map +1 -0
- package/dist/database/seeder/seeds/user-role.seed.d.ts +8 -0
- package/dist/database/seeder/seeds/user-role.seed.d.ts.map +1 -0
- package/dist/database/seeder/seeds/user-role.seed.js +66 -0
- package/dist/database/seeder/seeds/user-role.seed.js.map +1 -0
- package/dist/database/seeder/seeds/user.seed.d.ts +8 -0
- package/dist/database/seeder/seeds/user.seed.d.ts.map +1 -0
- package/dist/database/seeder/seeds/user.seed.js +110 -0
- package/dist/database/seeder/seeds/user.seed.js.map +1 -0
- package/{src/index.ts → dist/index.d.ts} +1 -5
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js.map +1 -0
- package/dist/scripts/create-schema.d.ts +2 -0
- package/dist/scripts/create-schema.d.ts.map +1 -0
- package/dist/scripts/create-schema.js +77 -0
- package/dist/scripts/create-schema.js.map +1 -0
- package/dist/tsconfig.build.tsbuildinfo +1 -0
- package/package.json +50 -70
- package/README.md +0 -250
- package/src/config/index.ts +0 -5
- package/src/config/ormconfig.factory.ts +0 -102
- package/src/config/typeorm.config.ts +0 -22
- package/src/core/constant/index.ts +0 -1
- package/src/core/constant/notification-preference.ts +0 -113
- package/src/core/json/core-data/currency.json +0 -8
- package/src/core/json/core-data/role.json +0 -30
- package/src/core/json/core-data/user.json +0 -12
- package/src/core/json/geographic-data/cities.json +0 -54693
- package/src/core/json/geographic-data/countries.json +0 -31
- package/src/database/entities/activity-logs.entity.ts +0 -31
- package/src/database/entities/address.entity.ts +0 -31
- package/src/database/entities/alert.entity.ts +0 -139
- package/src/database/entities/approval-condition.entity.ts +0 -48
- package/src/database/entities/approval-hierarchy-role.entity.ts +0 -24
- package/src/database/entities/approval-hierarchy-user.entity.ts +0 -24
- package/src/database/entities/approval-hierarchy.entity.ts +0 -59
- package/src/database/entities/approval-journey.entity.ts +0 -75
- package/src/database/entities/approval-level-escalation-user.entity.ts +0 -23
- package/src/database/entities/approval-level-escalation.entity.ts +0 -45
- package/src/database/entities/approval-level-user.entity.ts +0 -25
- package/src/database/entities/approval-level.entity.ts +0 -51
- package/src/database/entities/base.entity.ts +0 -31
- package/src/database/entities/chat.entity.ts +0 -36
- package/src/database/entities/city.entity.ts +0 -25
- package/src/database/entities/client.entity.ts +0 -91
- package/src/database/entities/contact.entity.ts +0 -27
- package/src/database/entities/country.entity.ts +0 -69
- package/src/database/entities/credit-note.entity.ts +0 -88
- package/src/database/entities/currency.entity.ts +0 -21
- package/src/database/entities/department.entity.ts +0 -21
- package/src/database/entities/entitlement.entity.ts +0 -64
- package/src/database/entities/expense.entity.ts +0 -141
- package/src/database/entities/file.entity.ts +0 -22
- package/src/database/entities/fixed-invoice-item.entity.ts +0 -29
- package/src/database/entities/group.entity.ts +0 -21
- package/src/database/entities/gst.entity.ts +0 -32
- package/src/database/entities/holiday.entity.ts +0 -51
- package/src/database/entities/invoice-template-footer.entity.ts +0 -70
- package/src/database/entities/invoice-template-header.entity.ts +0 -34
- package/src/database/entities/invoice-template-table.entity.ts +0 -83
- package/src/database/entities/invoice-template.entity.ts +0 -119
- package/src/database/entities/invoice.entity.ts +0 -139
- package/src/database/entities/invoice_item.entity.ts +0 -69
- package/src/database/entities/leave-balance.entity.ts +0 -118
- package/src/database/entities/leave-request.entity.ts +0 -155
- package/src/database/entities/leave-type.entity.ts +0 -37
- package/src/database/entities/matter-tag.entity.ts +0 -21
- package/src/database/entities/matter-task-view-filter.entity.ts +0 -21
- package/src/database/entities/matter-team-member.entity.ts +0 -30
- package/src/database/entities/matter.entity.ts +0 -156
- package/src/database/entities/payment.entity.ts +0 -72
- package/src/database/entities/permission.entity.ts +0 -27
- package/src/database/entities/quickbooks-connection.entity.ts +0 -35
- package/src/database/entities/quickbooks-sync-log.entity.ts +0 -79
- package/src/database/entities/role-permission.entity.ts +0 -30
- package/src/database/entities/role-shift.entity.ts +0 -43
- package/src/database/entities/role.entity.ts +0 -30
- package/src/database/entities/sequence-generator.entity.ts +0 -40
- package/src/database/entities/shift.entity.ts +0 -72
- package/src/database/entities/sub-task-tag.entity.ts +0 -22
- package/src/database/entities/subtask-user.entity.ts +0 -21
- package/src/database/entities/subtask.entity.ts +0 -125
- package/src/database/entities/summary-task-status.entity.ts +0 -15
- package/src/database/entities/superset.entity.ts +0 -38
- package/src/database/entities/tag.entity.ts +0 -19
- package/src/database/entities/task-comment.entity.ts +0 -41
- package/src/database/entities/task-milestone.entity.ts +0 -14
- package/src/database/entities/task-remainder.entity.ts +0 -29
- package/src/database/entities/task-tag.entity.ts +0 -22
- package/src/database/entities/task-type.entity.ts +0 -14
- package/src/database/entities/task-user.entity.ts +0 -21
- package/src/database/entities/task.entity.ts +0 -176
- package/src/database/entities/template-task.entity.ts +0 -25
- package/src/database/entities/template.entity.ts +0 -28
- package/src/database/entities/timesheet-comment.entity.ts +0 -45
- package/src/database/entities/timesheet-event.entity.ts +0 -256
- package/src/database/entities/timesheet-summary.entity.ts +0 -101
- package/src/database/entities/timesheet.entity.ts +0 -76
- package/src/database/entities/transfer-ownership.entity.ts +0 -39
- package/src/database/entities/upload-log.entity.ts +0 -78
- package/src/database/entities/user-notification-channel.entity.ts +0 -43
- package/src/database/entities/user-notification-preference.entity.ts +0 -50
- package/src/database/entities/user-role.entity.ts +0 -25
- package/src/database/entities/user-session-history.entity.ts +0 -45
- package/src/database/entities/user-shift.entity.ts +0 -109
- package/src/database/entities/user.entity.ts +0 -198
- package/src/database/index.ts +0 -1
- package/src/database/seeder/base.seed.ts +0 -104
- package/src/database/seeder/config/seeder.config.ts +0 -26
- package/src/database/seeder/errors/seeder.error.ts +0 -20
- package/src/database/seeder/seed-runner.ts +0 -200
- package/src/database/seeder/seeds/city.seed.ts +0 -70
- package/src/database/seeder/seeds/country.seed.ts +0 -58
- package/src/database/seeder/seeds/currency.seed.ts +0 -52
- package/src/database/seeder/seeds/department.seed.ts +0 -47
- package/src/database/seeder/seeds/permission.seed.ts +0 -54
- package/src/database/seeder/seeds/role-permission.seed.ts +0 -58
- package/src/database/seeder/seeds/role.seed.ts +0 -52
- package/src/database/seeder/seeds/user-role.seed.ts +0 -72
- package/src/database/seeder/seeds/user.seed.ts +0 -87
- package/src/scripts/create-schema.ts +0 -94
|
@@ -1,39 +0,0 @@
|
|
|
1
|
-
import { Entity, Column, ManyToOne, JoinColumn } from 'typeorm';
|
|
2
|
-
import { BaseEntity } from './base.entity';
|
|
3
|
-
import { User } from './user.entity';
|
|
4
|
-
|
|
5
|
-
@Entity({ name: 'ownership_transfers', schema: 'user' })
|
|
6
|
-
export class OwnershipTransfer extends BaseEntity {
|
|
7
|
-
@Column({ name: 'ownership_transfer_from_user_id' })
|
|
8
|
-
owenershipTransferFromUserId: number;
|
|
9
|
-
|
|
10
|
-
@Column({ name: 'ownership_transfer_to_user_id' })
|
|
11
|
-
ownershipTransferToUserId: number;
|
|
12
|
-
|
|
13
|
-
@Column({ name: 'ownership_transfer_reason', type: 'text' })
|
|
14
|
-
ownershipTransferReason: string;
|
|
15
|
-
|
|
16
|
-
@Column({ name: 'ownership_transfer_notes', type: 'text', nullable: true })
|
|
17
|
-
ownershipTransferNotes: string;
|
|
18
|
-
|
|
19
|
-
@Column({ name: 'transferred_at' })
|
|
20
|
-
transferredAt: Date;
|
|
21
|
-
|
|
22
|
-
@Column({name:'transferred_by_user_id'})
|
|
23
|
-
transferredByUserId: number;
|
|
24
|
-
|
|
25
|
-
@Column({name:"transfered_data",type:"jsonb",nullable:true})
|
|
26
|
-
transferedData: any;
|
|
27
|
-
|
|
28
|
-
@ManyToOne(() => User, { nullable: true })
|
|
29
|
-
@JoinColumn({ name: 'ownership_transfer_from_user_id' })
|
|
30
|
-
ownershipTransferFromUser: User;
|
|
31
|
-
|
|
32
|
-
@ManyToOne(() => User, { nullable: true })
|
|
33
|
-
@JoinColumn({ name: 'ownership_transfer_to_user_id' })
|
|
34
|
-
ownershipTransferToUser: User;
|
|
35
|
-
|
|
36
|
-
@ManyToOne(() => User, { nullable: true })
|
|
37
|
-
@JoinColumn({ name: 'transferred_by_user_id' })
|
|
38
|
-
transferredByUser: User;
|
|
39
|
-
}
|
|
@@ -1,78 +0,0 @@
|
|
|
1
|
-
import {
|
|
2
|
-
Entity,
|
|
3
|
-
Column,
|
|
4
|
-
ManyToOne,
|
|
5
|
-
JoinColumn,
|
|
6
|
-
CreateDateColumn,
|
|
7
|
-
} from 'typeorm';
|
|
8
|
-
import {User} from './user.entity';
|
|
9
|
-
import {BaseEntity} from './base.entity';
|
|
10
|
-
|
|
11
|
-
// Enums
|
|
12
|
-
export enum UploadModuleEnum {
|
|
13
|
-
HOLIDAY = 'HOLIDAY',
|
|
14
|
-
USER = 'USER',
|
|
15
|
-
CLIENT = 'CLIENT',
|
|
16
|
-
EXPENSE = 'EXPENSE',
|
|
17
|
-
}
|
|
18
|
-
|
|
19
|
-
export enum UploadStatus {
|
|
20
|
-
PENDING = 'PENDING',
|
|
21
|
-
IN_PROGRESS = 'IN_PROGRESS',
|
|
22
|
-
COMPLETED = 'COMPLETED',
|
|
23
|
-
FAILED = 'FAILED',
|
|
24
|
-
PROCESSING = 'PROCESSING',
|
|
25
|
-
}
|
|
26
|
-
|
|
27
|
-
@Entity({ name: 'upload_logs', schema: 'user'})
|
|
28
|
-
export class UploadLog extends BaseEntity {
|
|
29
|
-
|
|
30
|
-
@Column()
|
|
31
|
-
user_id: number;
|
|
32
|
-
|
|
33
|
-
@ManyToOne(() => User, (user) => user.uploadLogs)
|
|
34
|
-
@JoinColumn({ name: 'user_id' })
|
|
35
|
-
user: User;
|
|
36
|
-
|
|
37
|
-
@Column({
|
|
38
|
-
type: 'enum',
|
|
39
|
-
enum: UploadModuleEnum,
|
|
40
|
-
nullable: true,
|
|
41
|
-
})
|
|
42
|
-
module: UploadModuleEnum;
|
|
43
|
-
|
|
44
|
-
@Column({ nullable: true })
|
|
45
|
-
file_name: string;
|
|
46
|
-
|
|
47
|
-
@Column({ type: 'int', nullable: true })
|
|
48
|
-
file_size: number;
|
|
49
|
-
|
|
50
|
-
@Column({
|
|
51
|
-
type: 'enum',
|
|
52
|
-
enum: UploadStatus,
|
|
53
|
-
default: UploadStatus.PENDING,
|
|
54
|
-
})
|
|
55
|
-
status: UploadStatus;
|
|
56
|
-
|
|
57
|
-
@Column({ type: 'int', nullable: true })
|
|
58
|
-
total_records: number;
|
|
59
|
-
|
|
60
|
-
@Column({ type: 'int', nullable: true })
|
|
61
|
-
success_count: number;
|
|
62
|
-
|
|
63
|
-
@Column({ type: 'int', nullable: true })
|
|
64
|
-
failure_count: number;
|
|
65
|
-
|
|
66
|
-
@Column({ nullable: true })
|
|
67
|
-
error_file_path: string;
|
|
68
|
-
|
|
69
|
-
@CreateDateColumn({ name: 'started_at' })
|
|
70
|
-
started_at: Date;
|
|
71
|
-
|
|
72
|
-
@Column({ type: 'timestamp', nullable: true })
|
|
73
|
-
completed_at: Date;
|
|
74
|
-
|
|
75
|
-
@Column({ type: 'json', nullable: true })
|
|
76
|
-
errors: any;
|
|
77
|
-
}
|
|
78
|
-
|
|
@@ -1,43 +0,0 @@
|
|
|
1
|
-
import { Entity, Column, Index } from 'typeorm';
|
|
2
|
-
import { BaseEntity } from './base.entity';
|
|
3
|
-
|
|
4
|
-
/**
|
|
5
|
-
* User Notification Channels Entity
|
|
6
|
-
* Controls global enable/disable for notification channels
|
|
7
|
-
*/
|
|
8
|
-
@Entity({ name: 'user_notification_channel', schema: 'notification' })
|
|
9
|
-
@Index(['userId'], { unique: true })
|
|
10
|
-
export class UserNotificationChannel extends BaseEntity {
|
|
11
|
-
@Column({
|
|
12
|
-
name: 'user_id',
|
|
13
|
-
type: 'integer',
|
|
14
|
-
nullable: false,
|
|
15
|
-
unique: true,
|
|
16
|
-
comment: 'ID of the user',
|
|
17
|
-
})
|
|
18
|
-
userId: number;
|
|
19
|
-
|
|
20
|
-
@Column({
|
|
21
|
-
name: 'email_enabled',
|
|
22
|
-
type: 'boolean',
|
|
23
|
-
default: true,
|
|
24
|
-
comment: 'Global enable/disable for email notifications',
|
|
25
|
-
})
|
|
26
|
-
emailEnabled: boolean;
|
|
27
|
-
|
|
28
|
-
@Column({
|
|
29
|
-
name: 'push_enabled',
|
|
30
|
-
type: 'boolean',
|
|
31
|
-
default: true,
|
|
32
|
-
comment: 'Global enable/disable for push notifications',
|
|
33
|
-
})
|
|
34
|
-
pushEnabled: boolean;
|
|
35
|
-
|
|
36
|
-
@Column({
|
|
37
|
-
name: 'whatsapp_enabled',
|
|
38
|
-
type: 'boolean',
|
|
39
|
-
default: false,
|
|
40
|
-
comment: 'Global enable/disable for WhatsApp notifications',
|
|
41
|
-
})
|
|
42
|
-
whatsappEnabled: boolean;
|
|
43
|
-
}
|
|
@@ -1,50 +0,0 @@
|
|
|
1
|
-
import { Entity, Column, Index } from 'typeorm';
|
|
2
|
-
import { BaseEntity } from './base.entity';
|
|
3
|
-
import { NotificationPreferenceType } from '../../core/constant';
|
|
4
|
-
|
|
5
|
-
/**
|
|
6
|
-
* User Notification Preference Entity
|
|
7
|
-
* Each row represents one notification type preference for a user
|
|
8
|
-
*/
|
|
9
|
-
@Entity({ name: 'user_notification_preferences', schema: 'notification' })
|
|
10
|
-
@Index(['userId', 'preferenceType'], { unique: true })
|
|
11
|
-
export class UserNotificationPreference extends BaseEntity {
|
|
12
|
-
@Column({
|
|
13
|
-
name: 'user_id',
|
|
14
|
-
type: 'integer',
|
|
15
|
-
nullable: false,
|
|
16
|
-
comment: 'ID of the user',
|
|
17
|
-
})
|
|
18
|
-
userId: number;
|
|
19
|
-
|
|
20
|
-
@Column({
|
|
21
|
-
name: 'preference_type',
|
|
22
|
-
type: 'enum',
|
|
23
|
-
enum: NotificationPreferenceType,
|
|
24
|
-
nullable: false,
|
|
25
|
-
comment: 'Type of notification preference',
|
|
26
|
-
})
|
|
27
|
-
preferenceType: NotificationPreferenceType;
|
|
28
|
-
|
|
29
|
-
@Column({
|
|
30
|
-
name: 'is_enabled',
|
|
31
|
-
type: 'boolean',
|
|
32
|
-
default: true,
|
|
33
|
-
comment: 'Whether this notification type is enabled',
|
|
34
|
-
})
|
|
35
|
-
isEnabled: boolean;
|
|
36
|
-
|
|
37
|
-
@Column({
|
|
38
|
-
type: 'text',
|
|
39
|
-
nullable: true,
|
|
40
|
-
comment: 'Description of the notification preference',
|
|
41
|
-
})
|
|
42
|
-
description: string | null;
|
|
43
|
-
|
|
44
|
-
@Column({
|
|
45
|
-
type: 'json',
|
|
46
|
-
nullable: true,
|
|
47
|
-
comment: 'Additional settings for this notification type',
|
|
48
|
-
})
|
|
49
|
-
metadata: Record<string, any> | null;
|
|
50
|
-
}
|
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
import {
|
|
2
|
-
Entity,
|
|
3
|
-
Column,
|
|
4
|
-
ManyToOne,
|
|
5
|
-
JoinColumn,
|
|
6
|
-
} from 'typeorm';
|
|
7
|
-
import { User } from './user.entity';
|
|
8
|
-
import { Role } from './role.entity';
|
|
9
|
-
import { BaseEntity } from './base.entity';
|
|
10
|
-
@Entity({ name: 'user_roles', schema: 'user' })
|
|
11
|
-
export class UserRole extends BaseEntity {
|
|
12
|
-
@Column({ name: 'user_id' })
|
|
13
|
-
user_id: number;
|
|
14
|
-
|
|
15
|
-
@Column({ name: 'role_id' })
|
|
16
|
-
role_id: number;
|
|
17
|
-
|
|
18
|
-
@ManyToOne(() => User, { onDelete: 'CASCADE' })
|
|
19
|
-
@JoinColumn({ name: 'user_id' })
|
|
20
|
-
user: User;
|
|
21
|
-
|
|
22
|
-
@ManyToOne(() => Role, { onDelete: 'CASCADE' })
|
|
23
|
-
@JoinColumn({ name: 'role_id' })
|
|
24
|
-
role: Role;
|
|
25
|
-
}
|
|
@@ -1,45 +0,0 @@
|
|
|
1
|
-
import { BaseEntity } from './base.entity';
|
|
2
|
-
import {
|
|
3
|
-
Entity,
|
|
4
|
-
Column,
|
|
5
|
-
ManyToOne,
|
|
6
|
-
JoinColumn,
|
|
7
|
-
} from 'typeorm';
|
|
8
|
-
import { User } from './user.entity';
|
|
9
|
-
|
|
10
|
-
@Entity({ name: 'user_session_history', schema: 'user' })
|
|
11
|
-
export class UserSessionHistory extends BaseEntity {
|
|
12
|
-
@Column({ type: 'int', nullable: true })
|
|
13
|
-
user_id: number | null;
|
|
14
|
-
|
|
15
|
-
@ManyToOne(() => User, (user) => user.user_session_history)
|
|
16
|
-
@JoinColumn({ name: 'user_id' })
|
|
17
|
-
user: User;
|
|
18
|
-
|
|
19
|
-
@Column({ type: 'varchar', nullable: true })
|
|
20
|
-
ip_address: string | null;
|
|
21
|
-
|
|
22
|
-
@Column({ type: 'text', nullable: true })
|
|
23
|
-
user_agent: string | null;
|
|
24
|
-
|
|
25
|
-
@Column({ type: 'varchar', nullable: true })
|
|
26
|
-
browser: string | null;
|
|
27
|
-
|
|
28
|
-
@Column({ type: 'varchar', nullable: true })
|
|
29
|
-
device: string | null;
|
|
30
|
-
|
|
31
|
-
@Column({ type: 'varchar', nullable: true })
|
|
32
|
-
platform: string | null;
|
|
33
|
-
|
|
34
|
-
@Column({ type: 'timestamp', default: () => 'CURRENT_TIMESTAMP' })
|
|
35
|
-
login_timestamp: Date;
|
|
36
|
-
|
|
37
|
-
@Column({ type: 'timestamp', nullable: true })
|
|
38
|
-
logout_timestamp: Date | null;
|
|
39
|
-
|
|
40
|
-
@Column({ type: 'varchar', nullable: true })
|
|
41
|
-
status: string | null;
|
|
42
|
-
|
|
43
|
-
@Column({ type: 'varchar', nullable: true })
|
|
44
|
-
session_id: string | null;
|
|
45
|
-
}
|
|
@@ -1,109 +0,0 @@
|
|
|
1
|
-
import { User } from './user.entity';
|
|
2
|
-
import { Entity, Column, JoinColumn, OneToOne, ManyToOne } from 'typeorm';
|
|
3
|
-
import { BaseEntity } from './base.entity';
|
|
4
|
-
import { Shift } from './shift.entity';
|
|
5
|
-
|
|
6
|
-
export enum AllocationType {
|
|
7
|
-
ROLE = 'role',
|
|
8
|
-
USER = 'user',
|
|
9
|
-
}
|
|
10
|
-
|
|
11
|
-
@Entity({ name: 'user_shifts', schema: 'timesheet' })
|
|
12
|
-
export class UserShift extends BaseEntity {
|
|
13
|
-
@Column({
|
|
14
|
-
name: 'user_id',
|
|
15
|
-
type: 'integer',
|
|
16
|
-
nullable: false,
|
|
17
|
-
comment: 'ID of the user associated with the shift',
|
|
18
|
-
})
|
|
19
|
-
user_id: number;
|
|
20
|
-
|
|
21
|
-
@Column({
|
|
22
|
-
name: 'current_shift_id',
|
|
23
|
-
type: 'integer',
|
|
24
|
-
nullable: false,
|
|
25
|
-
comment: 'Current shift of the user',
|
|
26
|
-
})
|
|
27
|
-
current_shift_id: number;
|
|
28
|
-
|
|
29
|
-
@ManyToOne(() => Shift)
|
|
30
|
-
@JoinColumn({ name: 'current_shift_id' })
|
|
31
|
-
current_shift: Shift;
|
|
32
|
-
|
|
33
|
-
@Column({
|
|
34
|
-
name: 'is_alternate_shift',
|
|
35
|
-
type: 'boolean',
|
|
36
|
-
nullable: false,
|
|
37
|
-
comment: 'Check if the shift is alternate',
|
|
38
|
-
})
|
|
39
|
-
is_alternate_shift: boolean;
|
|
40
|
-
|
|
41
|
-
@Column({
|
|
42
|
-
name: 'current_alternate_shift_id',
|
|
43
|
-
type: 'integer',
|
|
44
|
-
nullable: true,
|
|
45
|
-
comment: 'Current alternate shift of the user',
|
|
46
|
-
})
|
|
47
|
-
current_alternate_shift_id: number;
|
|
48
|
-
|
|
49
|
-
@ManyToOne(() => Shift)
|
|
50
|
-
@JoinColumn({ name: 'current_alternate_shift_id' })
|
|
51
|
-
current_alternate_shift: Shift;
|
|
52
|
-
|
|
53
|
-
@Column({
|
|
54
|
-
name: 'shift_start_date',
|
|
55
|
-
type: 'date',
|
|
56
|
-
nullable: false,
|
|
57
|
-
comment: 'Start date of the shift',
|
|
58
|
-
})
|
|
59
|
-
shift_start_date: Date;
|
|
60
|
-
|
|
61
|
-
@Column({
|
|
62
|
-
name: 'shift_end_date',
|
|
63
|
-
type: 'date',
|
|
64
|
-
nullable: false,
|
|
65
|
-
comment: 'End date of the shift',
|
|
66
|
-
})
|
|
67
|
-
shift_end_date: Date;
|
|
68
|
-
|
|
69
|
-
@Column({
|
|
70
|
-
name: 'planned_shift_id',
|
|
71
|
-
type: 'integer',
|
|
72
|
-
nullable: true,
|
|
73
|
-
comment: 'The planned shift id to be assigned to the user',
|
|
74
|
-
})
|
|
75
|
-
planned_shift_id: number | null;
|
|
76
|
-
|
|
77
|
-
@ManyToOne(() => Shift)
|
|
78
|
-
@JoinColumn({ name: 'planned_shift_id' })
|
|
79
|
-
planned_shift: Shift;
|
|
80
|
-
|
|
81
|
-
@Column({
|
|
82
|
-
name: 'effective_date',
|
|
83
|
-
type: 'date',
|
|
84
|
-
nullable: true,
|
|
85
|
-
comment: 'The date when the planned shift becomes effective',
|
|
86
|
-
})
|
|
87
|
-
effective_date: Date | null;
|
|
88
|
-
|
|
89
|
-
@OneToOne(() => User) // Define a one-to-one relationship
|
|
90
|
-
@JoinColumn({ name: 'user_id' }) // Specify the column for the foreign key
|
|
91
|
-
user: User;
|
|
92
|
-
|
|
93
|
-
@Column({
|
|
94
|
-
name: 'shift_applied_by',
|
|
95
|
-
type: 'integer',
|
|
96
|
-
nullable: true,
|
|
97
|
-
comment: 'Shift applied by',
|
|
98
|
-
})
|
|
99
|
-
shift_applied_by: number;
|
|
100
|
-
|
|
101
|
-
@Column({
|
|
102
|
-
name: 'allocation_type',
|
|
103
|
-
type: 'enum',
|
|
104
|
-
enum: AllocationType,
|
|
105
|
-
nullable: true,
|
|
106
|
-
comment: 'Allocation type',
|
|
107
|
-
})
|
|
108
|
-
allocation_type: AllocationType;
|
|
109
|
-
}
|
|
@@ -1,198 +0,0 @@
|
|
|
1
|
-
import { Entity, Column, OneToMany, ManyToOne, JoinColumn, OneToOne } from 'typeorm';
|
|
2
|
-
import { BaseEntity } from './base.entity';
|
|
3
|
-
import { Department } from './department.entity';
|
|
4
|
-
import { UserRole } from './user-role.entity';
|
|
5
|
-
import { ApprovalLevelUser } from './approval-level-user.entity';
|
|
6
|
-
import { ApprovalLevelEscalation } from './approval-level-escalation.entity';
|
|
7
|
-
import { ApprovalLevelEscalationUser } from './approval-level-escalation-user.entity';
|
|
8
|
-
import { ApprovalJourney } from './approval-journey.entity';
|
|
9
|
-
import { Chat } from './chat.entity';
|
|
10
|
-
import { UserSessionHistory } from './user-session-history.entity';
|
|
11
|
-
import { UploadLog } from './upload-log.entity';
|
|
12
|
-
import { OwnershipTransfer } from './transfer-ownership.entity';
|
|
13
|
-
import { Shift } from './shift.entity';
|
|
14
|
-
import { UserShift } from './user-shift.entity';
|
|
15
|
-
import { Timesheet } from './timesheet.entity';
|
|
16
|
-
import { TimesheetEvent } from './timesheet-event.entity';
|
|
17
|
-
import { Matter } from './matter.entity';
|
|
18
|
-
import { CreditNoteEntity } from './credit-note.entity';
|
|
19
|
-
import { TaskUser } from './task-user.entity';
|
|
20
|
-
import { SubTaskUser } from './subtask-user.entity';
|
|
21
|
-
import { MatterTeamMember } from './matter-team-member.entity';
|
|
22
|
-
import { Superset } from './superset.entity';
|
|
23
|
-
import { TaskComment } from './task-comment.entity';
|
|
24
|
-
import { Invoice } from './invoice.entity';
|
|
25
|
-
import { Expense } from './expense.entity';
|
|
26
|
-
|
|
27
|
-
@Entity({ name: 'users', schema: 'user' })
|
|
28
|
-
export class User extends BaseEntity {
|
|
29
|
-
@Column({ name: 'name' })
|
|
30
|
-
name: string;
|
|
31
|
-
|
|
32
|
-
@Column({ name: 'email', unique: true })
|
|
33
|
-
email: string;
|
|
34
|
-
|
|
35
|
-
@Column({ name: 'password', nullable: true })
|
|
36
|
-
password: string;
|
|
37
|
-
|
|
38
|
-
@Column({ name: 'language', default: 'en', nullable: true })
|
|
39
|
-
language: string;
|
|
40
|
-
|
|
41
|
-
@Column({ name: 'timezone', default: 'Asia/Kolkata', nullable: true })
|
|
42
|
-
timezone: string;
|
|
43
|
-
|
|
44
|
-
@Column({ name: 'phone_number', nullable: true })
|
|
45
|
-
phoneNumber: string;
|
|
46
|
-
|
|
47
|
-
@Column({ name: 'country_code', nullable: true })
|
|
48
|
-
countryCode: string;
|
|
49
|
-
|
|
50
|
-
@Column({ name: 'department_id', nullable: true })
|
|
51
|
-
departmentId: number;
|
|
52
|
-
|
|
53
|
-
@Column({ name: 'reports_to', type: 'jsonb', nullable: true })
|
|
54
|
-
reportsTo: any;
|
|
55
|
-
|
|
56
|
-
@Column({ name: 'file_id', nullable: true })
|
|
57
|
-
fileId: number;
|
|
58
|
-
|
|
59
|
-
@Column({ name: 'refresh_token', nullable: true })
|
|
60
|
-
refreshToken: string;
|
|
61
|
-
|
|
62
|
-
@Column({ name: 'reset_token', nullable: true })
|
|
63
|
-
resetToken: string;
|
|
64
|
-
|
|
65
|
-
@Column({ name: 'reset_token_expires', nullable: true })
|
|
66
|
-
resetTokenExpires: Date;
|
|
67
|
-
|
|
68
|
-
@Column({ name: 'is_active', default: true })
|
|
69
|
-
isActive: boolean;
|
|
70
|
-
|
|
71
|
-
@Column({ name: 'is_verified', default: false })
|
|
72
|
-
isVerified: boolean;
|
|
73
|
-
|
|
74
|
-
@Column({ name: 'hourly_rate', nullable: true })
|
|
75
|
-
hourlyRate: number;
|
|
76
|
-
|
|
77
|
-
@Column({ name: 'ntrackid', nullable: true })
|
|
78
|
-
ntrackId: number;
|
|
79
|
-
|
|
80
|
-
@Column({ name: 'ntrackempid', nullable: true })
|
|
81
|
-
ntrackEmpId: string;
|
|
82
|
-
|
|
83
|
-
@Column({ name: 'ntrack_password', nullable: true })
|
|
84
|
-
ntrackPassword: string;
|
|
85
|
-
|
|
86
|
-
@ManyToOne(() => Department, (department) => department.users)
|
|
87
|
-
@JoinColumn({ name: 'department_id' })
|
|
88
|
-
department: Department;
|
|
89
|
-
|
|
90
|
-
@OneToMany(() => UserRole, (userRole) => userRole.user, { cascade: true })
|
|
91
|
-
user_roles: UserRole[];
|
|
92
|
-
|
|
93
|
-
@OneToMany(
|
|
94
|
-
() => ApprovalLevelUser,
|
|
95
|
-
(approvalLevelUser) => approvalLevelUser.user,
|
|
96
|
-
{ cascade: true },
|
|
97
|
-
)
|
|
98
|
-
approval_level_user: ApprovalLevelUser[];
|
|
99
|
-
|
|
100
|
-
@OneToMany(
|
|
101
|
-
() => ApprovalLevelEscalation,
|
|
102
|
-
(approvalLevelEscalation) => approvalLevelEscalation.user,
|
|
103
|
-
{ cascade: true },
|
|
104
|
-
)
|
|
105
|
-
approval_level_escalation: ApprovalLevelEscalation[];
|
|
106
|
-
|
|
107
|
-
@OneToMany(
|
|
108
|
-
() => ApprovalLevelEscalationUser,
|
|
109
|
-
(approvalLevelEscalationUser) => approvalLevelEscalationUser.user,
|
|
110
|
-
{ cascade: true },
|
|
111
|
-
)
|
|
112
|
-
approval_level_escalation_user: ApprovalLevelEscalationUser[];
|
|
113
|
-
|
|
114
|
-
@OneToMany(
|
|
115
|
-
() => ApprovalJourney,
|
|
116
|
-
(approvalJourney) => approvalJourney.user,
|
|
117
|
-
{ cascade: true },
|
|
118
|
-
)
|
|
119
|
-
approval_journey: ApprovalJourney[];
|
|
120
|
-
|
|
121
|
-
@OneToMany(
|
|
122
|
-
() => ApprovalJourney,
|
|
123
|
-
(approvalJourney) => approvalJourney.requester,
|
|
124
|
-
{ cascade: true },
|
|
125
|
-
)
|
|
126
|
-
approval_journey_requester: ApprovalJourney[];
|
|
127
|
-
|
|
128
|
-
@OneToMany(() => Chat, (chat) => chat.sender)
|
|
129
|
-
sent_chats: Chat[];
|
|
130
|
-
|
|
131
|
-
@OneToMany(() => Chat, (chat) => chat.receiver)
|
|
132
|
-
received_chats: Chat[];
|
|
133
|
-
|
|
134
|
-
@OneToMany(
|
|
135
|
-
() => UserSessionHistory,
|
|
136
|
-
(userSessionHistory) => userSessionHistory.user,
|
|
137
|
-
{ cascade: true },
|
|
138
|
-
)
|
|
139
|
-
user_session_history: UserSessionHistory[];
|
|
140
|
-
|
|
141
|
-
@OneToMany(() => UploadLog, (uploadLog) => uploadLog.user)
|
|
142
|
-
uploadLogs: UploadLog[];
|
|
143
|
-
|
|
144
|
-
@OneToMany(()=>OwnershipTransfer, (ownershipTransfer) => ownershipTransfer.ownershipTransferFromUser)
|
|
145
|
-
ownershipTransfersFrom: OwnershipTransfer[];
|
|
146
|
-
|
|
147
|
-
@OneToMany(()=>OwnershipTransfer, (ownershipTransfer) => ownershipTransfer.ownershipTransferToUser)
|
|
148
|
-
ownershipTransfersTo: OwnershipTransfer[];
|
|
149
|
-
|
|
150
|
-
@OneToMany(()=>OwnershipTransfer, (ownershipTransfer) => ownershipTransfer.transferredByUser)
|
|
151
|
-
ownershipTransfersBy: OwnershipTransfer[];
|
|
152
|
-
|
|
153
|
-
@OneToMany(() => TimesheetEvent, (timesheetEvent) => timesheetEvent.user)
|
|
154
|
-
timesheetEvents: TimesheetEvent[];
|
|
155
|
-
|
|
156
|
-
@OneToMany(() => Timesheet, (timesheet) => timesheet.user)
|
|
157
|
-
timesheets: Timesheet[];
|
|
158
|
-
|
|
159
|
-
@OneToOne(() => UserShift, userShift => userShift.user) // Establish the inverse relationship
|
|
160
|
-
userShift: UserShift;
|
|
161
|
-
|
|
162
|
-
@OneToMany(() => Shift, (shift) => shift.created_By)
|
|
163
|
-
shifts: Shift[];
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
@OneToMany(() => Matter, (matter) => matter.user)
|
|
167
|
-
matters: Matter[];
|
|
168
|
-
|
|
169
|
-
@OneToMany(() => CreditNoteEntity, (creditNote) => creditNote.raisedBy)
|
|
170
|
-
creditNotes: CreditNoteEntity[];
|
|
171
|
-
|
|
172
|
-
@OneToMany(() => TaskUser, (taskUser) => taskUser.user)
|
|
173
|
-
tasks: TaskUser[];
|
|
174
|
-
|
|
175
|
-
@OneToMany(() => SubTaskUser, (subTaskUser) => subTaskUser.user)
|
|
176
|
-
subtasks: SubTaskUser[];
|
|
177
|
-
|
|
178
|
-
@OneToMany(() => Expense, (expense) => expense.requester)
|
|
179
|
-
expenses: Expense[];
|
|
180
|
-
|
|
181
|
-
@OneToMany(() => Invoice, (invoice) => invoice.approvedBy)
|
|
182
|
-
approvedInvoices: Invoice[];
|
|
183
|
-
|
|
184
|
-
@OneToMany(() => Invoice, (invoice) => invoice.approvalRequestedBy)
|
|
185
|
-
requestedInvoices: Invoice[];
|
|
186
|
-
|
|
187
|
-
@OneToMany(
|
|
188
|
-
() => MatterTeamMember,
|
|
189
|
-
(matterTeamMember) => matterTeamMember.user,
|
|
190
|
-
)
|
|
191
|
-
teamMembers: MatterTeamMember[];
|
|
192
|
-
|
|
193
|
-
@OneToMany(() => Superset, (superset) => superset.user)
|
|
194
|
-
supersetCharts: Superset[];
|
|
195
|
-
|
|
196
|
-
@OneToMany(() => TaskComment, (taskComment) => taskComment.user)
|
|
197
|
-
taskComments: TaskComment[];
|
|
198
|
-
}
|
package/src/database/index.ts
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export * from './entities';
|
|
@@ -1,104 +0,0 @@
|
|
|
1
|
-
import { DataSource, QueryRunner } from 'typeorm';
|
|
2
|
-
import { seederConfig } from './config/seeder.config';
|
|
3
|
-
import { SeederError, ValidationError } from './errors/seeder.error';
|
|
4
|
-
|
|
5
|
-
/**
|
|
6
|
-
* Base class for all seeders providing common functionality
|
|
7
|
-
* including transaction management, logging, and validation.
|
|
8
|
-
*/
|
|
9
|
-
export abstract class BaseSeeder {
|
|
10
|
-
protected queryRunner: QueryRunner;
|
|
11
|
-
protected readonly config =
|
|
12
|
-
seederConfig[process.env.NODE_ENV || 'development'];
|
|
13
|
-
|
|
14
|
-
constructor(protected dataSource: DataSource) {}
|
|
15
|
-
|
|
16
|
-
/** Human-readable name for log output */
|
|
17
|
-
abstract readonly seederName: string;
|
|
18
|
-
|
|
19
|
-
/** Execute the seeding logic (implemented by each seeder) */
|
|
20
|
-
abstract run(): Promise<void>;
|
|
21
|
-
|
|
22
|
-
// ─── Transaction helpers ────────────────────────────────────
|
|
23
|
-
|
|
24
|
-
protected async startTransaction(): Promise<void> {
|
|
25
|
-
try {
|
|
26
|
-
this.queryRunner = this.dataSource.createQueryRunner();
|
|
27
|
-
await this.queryRunner.startTransaction();
|
|
28
|
-
} catch (error) {
|
|
29
|
-
throw new SeederError('Failed to start transaction', { error });
|
|
30
|
-
}
|
|
31
|
-
}
|
|
32
|
-
|
|
33
|
-
protected async commitTransaction(): Promise<void> {
|
|
34
|
-
try {
|
|
35
|
-
await this.queryRunner.commitTransaction();
|
|
36
|
-
} catch (error) {
|
|
37
|
-
throw new SeederError('Failed to commit transaction', { error });
|
|
38
|
-
}
|
|
39
|
-
}
|
|
40
|
-
|
|
41
|
-
protected async rollbackTransaction(): Promise<void> {
|
|
42
|
-
try {
|
|
43
|
-
await this.queryRunner.rollbackTransaction();
|
|
44
|
-
} catch (error) {
|
|
45
|
-
throw new SeederError('Failed to rollback transaction', { error });
|
|
46
|
-
}
|
|
47
|
-
}
|
|
48
|
-
|
|
49
|
-
protected async release(): Promise<void> {
|
|
50
|
-
try {
|
|
51
|
-
await this.queryRunner.release();
|
|
52
|
-
} catch (error) {
|
|
53
|
-
throw new SeederError('Failed to release query runner', { error });
|
|
54
|
-
}
|
|
55
|
-
}
|
|
56
|
-
|
|
57
|
-
/**
|
|
58
|
-
* Executes a callback wrapped in a DB transaction.
|
|
59
|
-
* Automatically commits on success, rolls back on failure.
|
|
60
|
-
*/
|
|
61
|
-
protected async executeInTransaction<T>(
|
|
62
|
-
callback: () => Promise<T>,
|
|
63
|
-
): Promise<T> {
|
|
64
|
-
try {
|
|
65
|
-
await this.startTransaction();
|
|
66
|
-
const result = await callback();
|
|
67
|
-
await this.commitTransaction();
|
|
68
|
-
return result;
|
|
69
|
-
} catch (error) {
|
|
70
|
-
await this.rollbackTransaction();
|
|
71
|
-
throw error;
|
|
72
|
-
} finally {
|
|
73
|
-
await this.release();
|
|
74
|
-
}
|
|
75
|
-
}
|
|
76
|
-
|
|
77
|
-
// ─── Validation helpers ─────────────────────────────────────
|
|
78
|
-
|
|
79
|
-
protected validateRequiredFields(data: any, requiredFields: string[]): void {
|
|
80
|
-
for (const field of requiredFields) {
|
|
81
|
-
if (data[field] === undefined || data[field] === null) {
|
|
82
|
-
throw new ValidationError(`Missing required field: ${field}`);
|
|
83
|
-
}
|
|
84
|
-
}
|
|
85
|
-
}
|
|
86
|
-
|
|
87
|
-
// ─── Logging ────────────────────────────────────────────────
|
|
88
|
-
|
|
89
|
-
protected log(message: string): void {
|
|
90
|
-
if (this.config.logging) {
|
|
91
|
-
console.log(` [${this.seederName}] ${message}`);
|
|
92
|
-
}
|
|
93
|
-
}
|
|
94
|
-
|
|
95
|
-
protected logError(message: string): void {
|
|
96
|
-
console.error(` [${this.seederName}] ❌ ${message}`);
|
|
97
|
-
}
|
|
98
|
-
|
|
99
|
-
protected logSuccess(message: string): void {
|
|
100
|
-
if (this.config.logging) {
|
|
101
|
-
console.log(` [${this.seederName}] ✅ ${message}`);
|
|
102
|
-
}
|
|
103
|
-
}
|
|
104
|
-
}
|