@kipicore/dbcore 1.0.5 → 1.0.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (279) hide show
  1. package/dist/configs/postgresConfig.d.ts +8 -0
  2. package/dist/configs/postgresConfig.js +32 -0
  3. package/dist/db/psql/index.d.ts +16 -0
  4. package/dist/db/psql/index.js +105 -0
  5. package/dist/db/psql/migrations/20241225101052-add-deleted-by-and-deleted-at-fields.d.ts +2 -0
  6. package/dist/db/psql/migrations/20241225101052-add-deleted-by-and-deleted-at-fields.js +71 -0
  7. package/dist/db/psql/migrations/20250106070945-add-user-fields-and-deleted-user-fields.d.ts +3 -0
  8. package/dist/db/psql/migrations/20250106070945-add-user-fields-and-deleted-user-fields.js +33 -0
  9. package/dist/db/psql/migrations/20250106080059-add-fields-and-deleted-fields.d.ts +3 -0
  10. package/dist/db/psql/migrations/20250106080059-add-fields-and-deleted-fields.js +94 -0
  11. package/dist/db/psql/migrations/20250108092439-update-batch-model-fields.d.ts +2 -0
  12. package/dist/db/psql/migrations/20250108092439-update-batch-model-fields.js +38 -0
  13. package/dist/db/psql/migrations/20250210102846-add-profileImage-coverImage-to-users.d.ts +3 -0
  14. package/dist/db/psql/migrations/20250210102846-add-profileImage-coverImage-to-users.js +102 -0
  15. package/dist/db/psql/migrations/20250211071743-add-action-user-has-histroy.d.ts +3 -0
  16. package/dist/db/psql/migrations/20250211071743-add-action-user-has-histroy.js +76 -0
  17. package/dist/db/psql/migrations/20250213140815-add-assignQuantity-user-has-histroy.d.ts +3 -0
  18. package/dist/db/psql/migrations/20250213140815-add-assignQuantity-user-has-histroy.js +80 -0
  19. package/dist/db/psql/migrations/20250214072626-add-middlename-user.d.ts +3 -0
  20. package/dist/db/psql/migrations/20250214072626-add-middlename-user.js +80 -0
  21. package/dist/db/psql/migrations/20250224085333-add-apptype-in-user.d.ts +3 -0
  22. package/dist/db/psql/migrations/20250224085333-add-apptype-in-user.js +78 -0
  23. package/dist/db/psql/migrations/20250226053006-add-brouchure-in-institute.d.ts +3 -0
  24. package/dist/db/psql/migrations/20250226053006-add-brouchure-in-institute.js +80 -0
  25. package/dist/db/psql/migrations/20250227123530-add-defult-in-fee-reminder.d.ts +3 -0
  26. package/dist/db/psql/migrations/20250227123530-add-defult-in-fee-reminder.js +78 -0
  27. package/dist/db/psql/migrations/20250304052831-add-institued-in-school-data-clm.d.ts +3 -0
  28. package/dist/db/psql/migrations/20250304052831-add-institued-in-school-data-clm.js +112 -0
  29. package/dist/db/psql/migrations/20250306053557-add-shifyId-in-batch.d.ts +3 -0
  30. package/dist/db/psql/migrations/20250306053557-add-shifyId-in-batch.js +86 -0
  31. package/dist/db/psql/migrations/20250311044606-add-institued-in-school-data-clm-subtype.d.ts +2 -0
  32. package/dist/db/psql/migrations/20250311044606-add-institued-in-school-data-clm-subtype.js +43 -0
  33. package/dist/db/psql/migrations/20250402090653-add-user-area.d.ts +3 -0
  34. package/dist/db/psql/migrations/20250402090653-add-user-area.js +94 -0
  35. package/dist/db/psql/migrations/20250407094125-update-type-in-typeManagement.d.ts +2 -0
  36. package/dist/db/psql/migrations/20250407094125-update-type-in-typeManagement.js +64 -0
  37. package/dist/db/psql/migrations/20250409105229-add-user-type-in-role.d.ts +3 -0
  38. package/dist/db/psql/migrations/20250409105229-add-user-type-in-role.js +55 -0
  39. package/dist/db/psql/migrations/20250417121316-make-institute-id-nullable-in-type-management.d.ts +2 -0
  40. package/dist/db/psql/migrations/20250417121316-make-institute-id-nullable-in-type-management.js +16 -0
  41. package/dist/db/psql/migrations/20250419071236-fee_histroy_add_school_clm.d.ts +3 -0
  42. package/dist/db/psql/migrations/20250419071236-fee_histroy_add_school_clm.js +134 -0
  43. package/dist/db/psql/migrations/20250419085334-fee_histroy_add_school_clm.d.ts +3 -0
  44. package/dist/db/psql/migrations/20250419085334-fee_histroy_add_school_clm.js +86 -0
  45. package/dist/db/psql/migrations/20250421085618-add-entityIds-field-in-announcements.d.ts +3 -0
  46. package/dist/db/psql/migrations/20250421085618-add-entityIds-field-in-announcements.js +81 -0
  47. package/dist/db/psql/migrations/20250422114032-add-account.d.ts +3 -0
  48. package/dist/db/psql/migrations/20250422114032-add-account.js +86 -0
  49. package/dist/db/psql/migrations/20250423051841-add-master-leave-clm.d.ts +3 -0
  50. package/dist/db/psql/migrations/20250423051841-add-master-leave-clm.js +71 -0
  51. package/dist/db/psql/migrations/20250423064522-update-calender-enum.d.ts +2 -0
  52. package/dist/db/psql/migrations/20250423064522-update-calender-enum.js +34 -0
  53. package/dist/db/psql/migrations/20250423093827-update-institued-district.d.ts +3 -0
  54. package/dist/db/psql/migrations/20250423093827-update-institued-district.js +78 -0
  55. package/dist/db/psql/migrations/20250424044755-update-fee-history-feeTyps-clm.d.ts +3 -0
  56. package/dist/db/psql/migrations/20250424044755-update-fee-history-feeTyps-clm.js +34 -0
  57. package/dist/db/psql/migrations/20250424053841-update-fee-history-key.d.ts +2 -0
  58. package/dist/db/psql/migrations/20250424053841-update-fee-history-key.js +35 -0
  59. package/dist/db/psql/migrations/20250426070309-update-banner-clm-userType.d.ts +3 -0
  60. package/dist/db/psql/migrations/20250426070309-update-banner-clm-userType.js +55 -0
  61. package/dist/db/psql/migrations/20250505035157-update-fee-collection-clm-add.d.ts +3 -0
  62. package/dist/db/psql/migrations/20250505035157-update-fee-collection-clm-add.js +86 -0
  63. package/dist/db/psql/migrations/20250505082924-update-banner-clm.d.ts +3 -0
  64. package/dist/db/psql/migrations/20250505082924-update-banner-clm.js +18 -0
  65. package/dist/db/psql/migrations/20250505094616-about-as-clm-in-institued.d.ts +2 -0
  66. package/dist/db/psql/migrations/20250505094616-about-as-clm-in-institued.js +16 -0
  67. package/dist/db/psql/migrations/20250506070110-add-dayOfWeek-clm-in-working-model.d.ts +3 -0
  68. package/dist/db/psql/migrations/20250506070110-add-dayOfWeek-clm-in-working-model.js +80 -0
  69. package/dist/db/psql/migrations/20250509055920-add-feecollection-isleft-clm.d.ts +3 -0
  70. package/dist/db/psql/migrations/20250509055920-add-feecollection-isleft-clm.js +80 -0
  71. package/dist/db/psql/migrations/20250513061037-add-techer-clm-batch.d.ts +3 -0
  72. package/dist/db/psql/migrations/20250513061037-add-techer-clm-batch.js +88 -0
  73. package/dist/db/psql/migrations/20250514101801-add-slotId-workingShif.d.ts +3 -0
  74. package/dist/db/psql/migrations/20250514101801-add-slotId-workingShif.js +86 -0
  75. package/dist/db/psql/migrations/20250516062917-add-globalId-clm-user-model.d.ts +3 -0
  76. package/dist/db/psql/migrations/20250516062917-add-globalId-clm-user-model.js +80 -0
  77. package/dist/db/psql/migrations/20250516063542-add-globalId-clm-institute-model.d.ts +3 -0
  78. package/dist/db/psql/migrations/20250516063542-add-globalId-clm-institute-model.js +80 -0
  79. package/dist/db/psql/migrations/20250520061231-add-institued_mobile_person_data.d.ts +3 -0
  80. package/dist/db/psql/migrations/20250520061231-add-institued_mobile_person_data.js +116 -0
  81. package/dist/db/psql/migrations/20250522044729-add-institued_update_add_2.d.ts +2 -0
  82. package/dist/db/psql/migrations/20250522044729-add-institued_update_add_2.js +16 -0
  83. package/dist/db/psql/migrations/20250526035543-add-totalQuantity_add_remainingQuantiy_clm_userHasInventoryHistory.d.ts +3 -0
  84. package/dist/db/psql/migrations/20250526035543-add-totalQuantity_add_remainingQuantiy_clm_userHasInventoryHistory.js +98 -0
  85. package/dist/db/psql/migrations/20250526093322-add-appType_clm_in_module.d.ts +3 -0
  86. package/dist/db/psql/migrations/20250526093322-add-appType_clm_in_module.js +80 -0
  87. package/dist/db/psql/migrations/20250526094030-add-appType_clm_in_action.d.ts +3 -0
  88. package/dist/db/psql/migrations/20250526094030-add-appType_clm_in_action.js +80 -0
  89. package/dist/db/psql/migrations/20250526094233-add-appType_clm_in_module_features.d.ts +3 -0
  90. package/dist/db/psql/migrations/20250526094233-add-appType_clm_in_module_features.js +80 -0
  91. package/dist/db/psql/migrations/20250527065001-add-app-type-in-role-model.d.ts +3 -0
  92. package/dist/db/psql/migrations/20250527065001-add-app-type-in-role-model.js +57 -0
  93. package/dist/db/psql/migrations/20250528045906-add-module-type-to-notifications.d.ts +2 -0
  94. package/dist/db/psql/migrations/20250528045906-add-module-type-to-notifications.js +13 -0
  95. package/dist/db/psql/migrations/20250602090331-add-or-update-user-model-medicalHistory.d.ts +3 -0
  96. package/dist/db/psql/migrations/20250602090331-add-or-update-user-model-medicalHistory.js +107 -0
  97. package/dist/db/psql/migrations/20250602100550-add-planner-sync-status-to-institute.d.ts +3 -0
  98. package/dist/db/psql/migrations/20250602100550-add-planner-sync-status-to-institute.js +113 -0
  99. package/dist/db/psql/migrations/20250603054900-add-clm-for-defult-data-add-or-not-in-ins-model.d.ts +3 -0
  100. package/dist/db/psql/migrations/20250603054900-add-clm-for-defult-data-add-or-not-in-ins-model.js +80 -0
  101. package/dist/db/psql/migrations/20250604103905-add-is-institute-default-field-in-role.d.ts +3 -0
  102. package/dist/db/psql/migrations/20250604103905-add-is-institute-default-field-in-role.js +57 -0
  103. package/dist/db/psql/migrations/20250604121051-update-mobile-number-opstion.d.ts +3 -0
  104. package/dist/db/psql/migrations/20250604121051-update-mobile-number-opstion.js +15 -0
  105. package/dist/db/psql/migrations/20250617064159-update-type-management-jun-17.d.ts +2 -0
  106. package/dist/db/psql/migrations/20250617064159-update-type-management-jun-17.js +11 -0
  107. package/dist/db/psql/migrations/20250627065013-is-institute-default-added-type-managemente.d.ts +2 -0
  108. package/dist/db/psql/migrations/20250627065013-is-institute-default-added-type-managemente.js +12 -0
  109. package/dist/db/psql/migrations/20250701095321-add-clm-institute-pdfId.d.ts +3 -0
  110. package/dist/db/psql/migrations/20250701095321-add-clm-institute-pdfId.js +57 -0
  111. package/dist/db/psql/migrations/20250704102117-add-clm-isDefult-in-typeManagemet.d.ts +2 -0
  112. package/dist/db/psql/migrations/20250704102117-add-clm-isDefult-in-typeManagemet.js +12 -0
  113. package/dist/db/psql/migrations/20250715103324-add-academic-calendar-id-to-batches.d.ts +2 -0
  114. package/dist/db/psql/migrations/20250715103324-add-academic-calendar-id-to-batches.js +13 -0
  115. package/dist/db/psql/migrations/20250715121047-remove-batch-id-from-academic-calendars.d.ts +2 -0
  116. package/dist/db/psql/migrations/20250715121047-remove-batch-id-from-academic-calendars.js +12 -0
  117. package/dist/db/psql/migrations/20250716131731-rename-user-id-to-primary-user-id.d.ts +2 -0
  118. package/dist/db/psql/migrations/20250716131731-rename-user-id-to-primary-user-id.js +9 -0
  119. package/dist/db/psql/migrations/20250717092933-add-floor-id-to-class-rooms.d.ts +3 -0
  120. package/dist/db/psql/migrations/20250717092933-add-floor-id-to-class-rooms.js +86 -0
  121. package/dist/db/psql/migrations/20250718121251-add-clm-classroom-typeid.d.ts +3 -0
  122. package/dist/db/psql/migrations/20250718121251-add-clm-classroom-typeid.js +86 -0
  123. package/dist/db/psql/migrations/20250721065317-add-instituteId-fileSize-to-fileStorage.d.ts +2 -0
  124. package/dist/db/psql/migrations/20250721065317-add-instituteId-fileSize-to-fileStorage.js +22 -0
  125. package/dist/db/psql/migrations/20250721100004-add-shift-slot-id-to-lectures.d.ts +2 -0
  126. package/dist/db/psql/migrations/20250721100004-add-shift-slot-id-to-lectures.js +17 -0
  127. package/dist/db/psql/migrations/20250721105455-add-clm-classroom-add-classroomnumber.d.ts +3 -0
  128. package/dist/db/psql/migrations/20250721105455-add-clm-classroom-add-classroomnumber.js +78 -0
  129. package/dist/db/psql/migrations/20250722071836-add-title-to-floor-management.d.ts +2 -0
  130. package/dist/db/psql/migrations/20250722071836-add-title-to-floor-management.js +14 -0
  131. package/dist/db/psql/migrations/20250723150111-add-clm-batch-slotId.d.ts +3 -0
  132. package/dist/db/psql/migrations/20250723150111-add-clm-batch-slotId.js +86 -0
  133. package/dist/db/psql/migrations/20250724062458-update_classRoom_number_clm_to_string.d.ts +2 -0
  134. package/dist/db/psql/migrations/20250724062458-update_classRoom_number_clm_to_string.js +15 -0
  135. package/dist/db/psql/migrations/20250725132424-add-unique-index-on-instituteId-name-type.d.ts +2 -0
  136. package/dist/db/psql/migrations/20250725132424-add-unique-index-on-instituteId-name-type.js +24 -0
  137. package/dist/db/psql/migrations/20250730104844-update-unique-key-assessment-type.d.ts +2 -0
  138. package/dist/db/psql/migrations/20250730104844-update-unique-key-assessment-type.js +30 -0
  139. package/dist/db/psql/migrations/20250804090437-update_ins_in_pdf_id_string_to_uuid.d.ts +3 -0
  140. package/dist/db/psql/migrations/20250804090437-update_ins_in_pdf_id_string_to_uuid.js +62 -0
  141. package/dist/db/psql/migrations/20250805062440-remove_unique_key_into_batch_subject_project_assessments.d.ts +2 -0
  142. package/dist/db/psql/migrations/20250805062440-remove_unique_key_into_batch_subject_project_assessments.js +21 -0
  143. package/dist/db/psql/migrations/20250805115805-add-descriptions-to-lectures.d.ts +2 -0
  144. package/dist/db/psql/migrations/20250805115805-add-descriptions-to-lectures.js +12 -0
  145. package/dist/db/psql/migrations/20250808100700-add_clm_contectFeed_in_ins_givenId.d.ts +3 -0
  146. package/dist/db/psql/migrations/20250808100700-add_clm_contectFeed_in_ins_givenId.js +86 -0
  147. package/dist/db/psql/migrations/20250808101515-add-sequence-to-institute_entities.d.ts +2 -0
  148. package/dist/db/psql/migrations/20250808101515-add-sequence-to-institute_entities.js +12 -0
  149. package/dist/db/psql/migrations/20250812080521-add-title-and-descriptions-to-batch-subject-project-assessments.d.ts +2 -0
  150. package/dist/db/psql/migrations/20250812080521-add-title-and-descriptions-to-batch-subject-project-assessments.js +17 -0
  151. package/dist/db/psql/migrations/20250820092836-add-sequence-number-to-institute-entities.d.ts +2 -0
  152. package/dist/db/psql/migrations/20250820092836-add-sequence-number-to-institute-entities.js +15 -0
  153. package/dist/db/psql/migrations/20250829103203-remove-syllabus-composit-index.d.ts +2 -0
  154. package/dist/db/psql/migrations/20250829103203-remove-syllabus-composit-index.js +15 -0
  155. package/dist/db/psql/migrations/20250905132024-add-uuid-to-users.d.ts +2 -0
  156. package/dist/db/psql/migrations/20250905132024-add-uuid-to-users.js +12 -0
  157. package/dist/db/psql/migrations/20250908054025-userHasOffer_model_update.d.ts +3 -0
  158. package/dist/db/psql/migrations/20250908054025-userHasOffer_model_update.js +112 -0
  159. package/dist/db/psql/migrations/20250908054754-offer_in_add_offertype_clm.d.ts +3 -0
  160. package/dist/db/psql/migrations/20250908054754-offer_in_add_offertype_clm.js +70 -0
  161. package/dist/db/psql/migrations/20250909061117-add-instituteId-isDefault-to-entityGroup.d.ts +2 -0
  162. package/dist/db/psql/migrations/20250909061117-add-instituteId-isDefault-to-entityGroup.js +17 -0
  163. package/dist/db/psql/migrations/20250911060106-change-wallet-history-columns-to-float.d.ts +2 -0
  164. package/dist/db/psql/migrations/20250911060106-change-wallet-history-columns-to-float.js +39 -0
  165. package/dist/db/psql/migrations/20250911060245-change-coin-to-float-in-wallets.d.ts +2 -0
  166. package/dist/db/psql/migrations/20250911060245-change-coin-to-float-in-wallets.js +17 -0
  167. package/dist/db/psql/migrations/20250917135646-change-storageInBytes-to-float.d.ts +2 -0
  168. package/dist/db/psql/migrations/20250917135646-change-storageInBytes-to-float.js +17 -0
  169. package/dist/db/psql/seeders/20240809100759-add-countries-states-cities.d.ts +2 -0
  170. package/dist/db/psql/seeders/20240809100759-add-countries-states-cities.js +64 -0
  171. package/dist/db/psql/seeders/20250101122757-add-default-permissions-modules.d.ts +2 -0
  172. package/dist/db/psql/seeders/20250101122757-add-default-permissions-modules.js +159 -0
  173. package/dist/db/psql/seeders/Data/AcademicCalendarModule.d.ts +13 -0
  174. package/dist/db/psql/seeders/Data/AcademicCalendarModule.js +24 -0
  175. package/dist/db/psql/seeders/Data/AdministrativeStaffModule.d.ts +10 -0
  176. package/dist/db/psql/seeders/Data/AdministrativeStaffModule.js +38 -0
  177. package/dist/db/psql/seeders/Data/AnnouncementsModule.d.ts +13 -0
  178. package/dist/db/psql/seeders/Data/AnnouncementsModule.js +50 -0
  179. package/dist/db/psql/seeders/Data/AssetsModule.d.ts +10 -0
  180. package/dist/db/psql/seeders/Data/AssetsModule.js +37 -0
  181. package/dist/db/psql/seeders/Data/AttendanceModule.d.ts +13 -0
  182. package/dist/db/psql/seeders/Data/AttendanceModule.js +57 -0
  183. package/dist/db/psql/seeders/Data/BannerModule.d.ts +13 -0
  184. package/dist/db/psql/seeders/Data/BannerModule.js +24 -0
  185. package/dist/db/psql/seeders/Data/BatchModule.d.ts +13 -0
  186. package/dist/db/psql/seeders/Data/BatchModule.js +34 -0
  187. package/dist/db/psql/seeders/Data/BoardModule .d.ts +10 -0
  188. package/dist/db/psql/seeders/Data/BoardModule .js +18 -0
  189. package/dist/db/psql/seeders/Data/BookAssessmentsModule.d.ts +13 -0
  190. package/dist/db/psql/seeders/Data/BookAssessmentsModule.js +23 -0
  191. package/dist/db/psql/seeders/Data/CategoriesModule.d.ts +10 -0
  192. package/dist/db/psql/seeders/Data/CategoriesModule.js +18 -0
  193. package/dist/db/psql/seeders/Data/ClassroomModule.d.ts +13 -0
  194. package/dist/db/psql/seeders/Data/ClassroomModule.js +37 -0
  195. package/dist/db/psql/seeders/Data/DivisionModule.d.ts +13 -0
  196. package/dist/db/psql/seeders/Data/DivisionModule.js +25 -0
  197. package/dist/db/psql/seeders/Data/EventModule.d.ts +13 -0
  198. package/dist/db/psql/seeders/Data/EventModule.js +22 -0
  199. package/dist/db/psql/seeders/Data/ExamsAndResultsModule.d.ts +13 -0
  200. package/dist/db/psql/seeders/Data/ExamsAndResultsModule.js +113 -0
  201. package/dist/db/psql/seeders/Data/FacilityModule.d.ts +13 -0
  202. package/dist/db/psql/seeders/Data/FacilityModule.js +22 -0
  203. package/dist/db/psql/seeders/Data/FeeAndDiscountModule.d.ts +13 -0
  204. package/dist/db/psql/seeders/Data/FeeAndDiscountModule.js +239 -0
  205. package/dist/db/psql/seeders/Data/FeedBackModule.d.ts +13 -0
  206. package/dist/db/psql/seeders/Data/FeedBackModule.js +27 -0
  207. package/dist/db/psql/seeders/Data/FileModule.d.ts +10 -0
  208. package/dist/db/psql/seeders/Data/FileModule.js +38 -0
  209. package/dist/db/psql/seeders/Data/GenerateIdModule.d.ts +13 -0
  210. package/dist/db/psql/seeders/Data/GenerateIdModule.js +19 -0
  211. package/dist/db/psql/seeders/Data/HolidayModule.d.ts +13 -0
  212. package/dist/db/psql/seeders/Data/HolidayModule.js +22 -0
  213. package/dist/db/psql/seeders/Data/HomeworkModule.d.ts +13 -0
  214. package/dist/db/psql/seeders/Data/HomeworkModule.js +42 -0
  215. package/dist/db/psql/seeders/Data/IndexModule.d.ts +13 -0
  216. package/dist/db/psql/seeders/Data/IndexModule.js +97 -0
  217. package/dist/db/psql/seeders/Data/InquiryModule.d.ts +13 -0
  218. package/dist/db/psql/seeders/Data/InquiryModule.js +22 -0
  219. package/dist/db/psql/seeders/Data/InstituteModule.d.ts +13 -0
  220. package/dist/db/psql/seeders/Data/InstituteModule.js +63 -0
  221. package/dist/db/psql/seeders/Data/InventoryModule.d.ts +13 -0
  222. package/dist/db/psql/seeders/Data/InventoryModule.js +42 -0
  223. package/dist/db/psql/seeders/Data/JobApplyModule.d.ts +13 -0
  224. package/dist/db/psql/seeders/Data/JobApplyModule.js +22 -0
  225. package/dist/db/psql/seeders/Data/LectureModule.d.ts +10 -0
  226. package/dist/db/psql/seeders/Data/LectureModule.js +28 -0
  227. package/dist/db/psql/seeders/Data/ParentModule.d.ts +10 -0
  228. package/dist/db/psql/seeders/Data/ParentModule.js +38 -0
  229. package/dist/db/psql/seeders/Data/PayoutModule.d.ts +10 -0
  230. package/dist/db/psql/seeders/Data/PayoutModule.js +18 -0
  231. package/dist/db/psql/seeders/Data/PdcChequesModule.d.ts +13 -0
  232. package/dist/db/psql/seeders/Data/PdcChequesModule.js +27 -0
  233. package/dist/db/psql/seeders/Data/PhotosGalleryModule.d.ts +13 -0
  234. package/dist/db/psql/seeders/Data/PhotosGalleryModule.js +27 -0
  235. package/dist/db/psql/seeders/Data/PlannerModule.d.ts +10 -0
  236. package/dist/db/psql/seeders/Data/PlannerModule.js +18 -0
  237. package/dist/db/psql/seeders/Data/ProjectAssessmentsModule.d.ts +13 -0
  238. package/dist/db/psql/seeders/Data/ProjectAssessmentsModule.js +23 -0
  239. package/dist/db/psql/seeders/Data/ReplaceTeacherModule.d.ts +13 -0
  240. package/dist/db/psql/seeders/Data/ReplaceTeacherModule.js +22 -0
  241. package/dist/db/psql/seeders/Data/RoleModule.d.ts +13 -0
  242. package/dist/db/psql/seeders/Data/RoleModule.js +53 -0
  243. package/dist/db/psql/seeders/Data/RollNumberModule.d.ts +13 -0
  244. package/dist/db/psql/seeders/Data/RollNumberModule.js +22 -0
  245. package/dist/db/psql/seeders/Data/SchoolFeeModule.d.ts +10 -0
  246. package/dist/db/psql/seeders/Data/SchoolFeeModule.js +38 -0
  247. package/dist/db/psql/seeders/Data/SchoolModule.d.ts +13 -0
  248. package/dist/db/psql/seeders/Data/SchoolModule.js +63 -0
  249. package/dist/db/psql/seeders/Data/SchoolRegistration.d.ts +13 -0
  250. package/dist/db/psql/seeders/Data/SchoolRegistration.js +22 -0
  251. package/dist/db/psql/seeders/Data/SettingsModule.d.ts +10 -0
  252. package/dist/db/psql/seeders/Data/SettingsModule.js +28 -0
  253. package/dist/db/psql/seeders/Data/StaffTimingModule.d.ts +13 -0
  254. package/dist/db/psql/seeders/Data/StaffTimingModule.js +22 -0
  255. package/dist/db/psql/seeders/Data/StudentModule.d.ts +10 -0
  256. package/dist/db/psql/seeders/Data/StudentModule.js +18 -0
  257. package/dist/db/psql/seeders/Data/SubjectModule.d.ts +10 -0
  258. package/dist/db/psql/seeders/Data/SubjectModule.js +37 -0
  259. package/dist/db/psql/seeders/Data/SyllabusManagementModule.d.ts +13 -0
  260. package/dist/db/psql/seeders/Data/SyllabusManagementModule.js +25 -0
  261. package/dist/db/psql/seeders/Data/TeacherModule.d.ts +10 -0
  262. package/dist/db/psql/seeders/Data/TeacherModule.js +68 -0
  263. package/dist/db/psql/seeders/Data/TestimonialsModule.d.ts +13 -0
  264. package/dist/db/psql/seeders/Data/TestimonialsModule.js +27 -0
  265. package/dist/db/psql/seeders/Data/TimetableModule.d.ts +13 -0
  266. package/dist/db/psql/seeders/Data/TimetableModule.js +43 -0
  267. package/dist/db/psql/seeders/Data/To-doModule.d.ts +13 -0
  268. package/dist/db/psql/seeders/Data/To-doModule.js +27 -0
  269. package/dist/db/psql/seeders/Data/TypeManagementModule.d.ts +13 -0
  270. package/dist/db/psql/seeders/Data/TypeManagementModule.js +28 -0
  271. package/dist/db/psql/seeders/Data/UserModule.d.ts +13 -0
  272. package/dist/db/psql/seeders/Data/UserModule.js +266 -0
  273. package/dist/db/psql/seeders/Data/appType.d.ts +4 -0
  274. package/dist/db/psql/seeders/Data/appType.js +8 -0
  275. package/dist/index.d.ts +415 -415
  276. package/dist/index.js +418 -446
  277. package/package.json +3 -3
  278. package/dist/generate-index.d.ts +0 -1
  279. package/dist/generate-index.js +0 -47
@@ -0,0 +1,8 @@
1
+ export let host: string | undefined;
2
+ export let port: number;
3
+ export let username: string | undefined;
4
+ export let password: string | undefined;
5
+ export let database: string | undefined;
6
+ export function dbLogging(message: any): void;
7
+ export let dialect: string;
8
+ export let dialectOptions: {};
@@ -0,0 +1,32 @@
1
+ "use strict";
2
+ /* eslint-disable @typescript-eslint/no-require-imports */
3
+ const dotenv = require('dotenv');
4
+ if (process.env.NODE_ENV && process.env.NODE_ENV === 'test') {
5
+ dotenv.config({ path: process.cwd() + '/.env.test' });
6
+ }
7
+ else {
8
+ dotenv.config();
9
+ }
10
+ const postgresConfig = {
11
+ host: process.env.PG_DB_HOST,
12
+ port: Number(process.env.PG_DB_PORT),
13
+ username: process.env.PG_DB_USER,
14
+ password: process.env.PG_DB_PASSWORD,
15
+ database: process.env.PG_DB_NAME,
16
+ dbLogging: message => {
17
+ if (!['test', 'production', 'development', 'local'].includes(process.env.NODE_ENV)) {
18
+ console.log(message);
19
+ }
20
+ },
21
+ dialect: 'postgres',
22
+ dialectOptions: {},
23
+ };
24
+ if (['production'].includes(process.env.NODE_ENV)) {
25
+ postgresConfig.dialectOptions = {
26
+ ssl: {
27
+ require: true,
28
+ rejectUnauthorized: false,
29
+ },
30
+ };
31
+ }
32
+ module.exports = postgresConfig;
@@ -0,0 +1,16 @@
1
+ export = allModules;
2
+ declare const allModules: {
3
+ name: string;
4
+ code: string;
5
+ appType: string[];
6
+ features: {
7
+ name: string;
8
+ code: string;
9
+ appType: string[];
10
+ actions: {
11
+ name: string;
12
+ code: string;
13
+ appType: string[];
14
+ }[];
15
+ }[];
16
+ }[];
@@ -0,0 +1,105 @@
1
+ "use strict";
2
+ /* eslint-disable @typescript-eslint/no-require-imports */
3
+ const AcademicCalendarModule = require('./seeders/Data/AcademicCalendarModule');
4
+ // const AdministrativeStaffModule = require('./seeders/Data/AdministrativeStaffModule');
5
+ const AnnouncementsModule = require('./seeders/Data/AnnouncementsModule');
6
+ // // const AssetsModule = require('./seeders/Data/AssetsModule');
7
+ const AttendanceModule = require('./seeders/Data/AttendanceModule');
8
+ const BannerModule = require('./seeders/Data/BannerModule');
9
+ const BatchModule = require('./seeders/Data/BatchModule');
10
+ const DivisionModule = require('./seeders/Data/DivisionModule');
11
+ const SchoolRegistration = require('./seeders/Data/SchoolRegistration');
12
+ // // const BoardModule = require('./seeders/Data/BoardModule ');
13
+ const ClassroomModule = require('./seeders/Data/ClassroomModule');
14
+ // const EventModule = require('./seeders/Data/EventModule');
15
+ const ExamsAndResultsModule = require('./seeders/Data/ExamsAndResultsModule');
16
+ const FeeAndDiscountModule = require('./seeders/Data/FeeAndDiscountModule');
17
+ // // const FileModule = require('./seeders/Data/FileModule');
18
+ const InstituteModule = require('./seeders/Data/InstituteModule');
19
+ const InventoryModule = require('./seeders/Data/InventoryModule');
20
+ // // const ParentModule = require('./seeders/Data/ParentModule');
21
+ // // const SettingsModule = require('./seeders/Data/SettingsModule');
22
+ // // const StudentModule = require('./seeders/Data/StudentModule');
23
+ // // const SubjectModule = require('./seeders/Data/SubjectModule');
24
+ // // const TeacherModule = require('./seeders/Data/TeacherModule');
25
+ const TimetableModule = require('./seeders/Data/TimetableModule');
26
+ const TypeManagementModule = require('./seeders/Data/TypeManagementModule');
27
+ const UserModule = require('./seeders/Data/UserModule');
28
+ // const PlannerModule = require('./seeders/Data/PlannerModule');
29
+ const IndexModule = require('./seeders/Data/IndexModule');
30
+ // const LectureModule = require('./seeders/Data/LectureModule');
31
+ // // const SchoolFeeModule = require('./seeders/Data/SchoolFeeModule');
32
+ // // const FacilityModule = require('./seeders/Data/FacilityModule');
33
+ // // const CategoriesModule = require('./seeders/Data/CategoriesModule');
34
+ // const PayoutModule = require('./seeders/Data/PayoutModule');
35
+ const HolidayModule = require('./seeders/Data/HolidayModule');
36
+ const EventModule = require('./seeders/Data/EventModule');
37
+ const RoleModule = require('./seeders/Data/RoleModule');
38
+ const ToDoModule = require('./seeders/Data/To-doModule');
39
+ const HomeworkModule = require('./seeders/Data/HomeworkModule');
40
+ const TestimonialsModule = require('./seeders/Data/TestimonialsModule');
41
+ const PhotosGalleryModule = require('./seeders/Data/PhotosGalleryModule');
42
+ // const PdcChequesModule = require('./seeders/Data/PdcChequesModule');
43
+ const FeedBackModule = require('./seeders/Data/FeedBackModule');
44
+ const GenerateIdModule = require('./seeders/Data/GenerateIdModule');
45
+ const RollNumberModule = require('./seeders/Data/RollNumberModule');
46
+ const ProjectAssessmentsModule = require('./seeders/Data/ProjectAssessmentsModule');
47
+ const BookAssessmentsModule = require('./seeders/Data/BookAssessmentsModule');
48
+ const InquiryModule = require('./seeders/Data/InquiryModule');
49
+ const StaffTimingModule = require('./seeders/Data/StaffTimingModule');
50
+ const SchoolModule = require('./seeders/Data/SchoolModule');
51
+ const ReplaceTeacherModule = require('./seeders/Data/ReplaceTeacherModule');
52
+ const SyllabusManagementModule = require('./seeders/Data/SyllabusManagementModule');
53
+ const JobApplyModule = require('./seeders/Data/JobApplyModule');
54
+ const allModules = [
55
+ AcademicCalendarModule,
56
+ // AdministrativeStaffModule,
57
+ // AssetsModule,
58
+ AttendanceModule,
59
+ BannerModule,
60
+ BatchModule,
61
+ DivisionModule,
62
+ SchoolRegistration,
63
+ // BoardModule,
64
+ EventModule,
65
+ ExamsAndResultsModule,
66
+ FeeAndDiscountModule,
67
+ TimetableModule,
68
+ // FileModule,
69
+ InstituteModule,
70
+ InventoryModule,
71
+ // ParentModule,
72
+ RoleModule,
73
+ // SettingsModule,
74
+ // StudentModule,
75
+ // SubjectModule,
76
+ // TeacherModule,
77
+ // TimetableModule,
78
+ TypeManagementModule,
79
+ UserModule,
80
+ AnnouncementsModule,
81
+ IndexModule,
82
+ // SchoolFeeModule,
83
+ // FacilityModule,
84
+ // CategoriesModule,
85
+ // PayoutModule,
86
+ HolidayModule,
87
+ ToDoModule,
88
+ HomeworkModule,
89
+ TestimonialsModule,
90
+ PhotosGalleryModule,
91
+ // PdcChequesModule,
92
+ ClassroomModule, // add floor management
93
+ FeedBackModule,
94
+ GenerateIdModule,
95
+ RollNumberModule,
96
+ ProjectAssessmentsModule,
97
+ BookAssessmentsModule,
98
+ InquiryModule,
99
+ StaffTimingModule,
100
+ SchoolModule,
101
+ ReplaceTeacherModule,
102
+ SyllabusManagementModule,
103
+ JobApplyModule,
104
+ ];
105
+ module.exports = allModules;
@@ -0,0 +1,2 @@
1
+ declare const _exports: any;
2
+ export = _exports;
@@ -0,0 +1,71 @@
1
+ 'use strict';
2
+ // eslint-disable-next-line @typescript-eslint/no-require-imports
3
+ const { DataTypes } = require('sequelize');
4
+ /** @type {import('sequelize-cli').Migration} */
5
+ module.exports = {
6
+ async up(queryInterface) {
7
+ const tables = await queryInterface.showAllTables();
8
+ for (const table of tables) {
9
+ const columns = await queryInterface.describeTable(table);
10
+ // Add `deleted_by` if it exists
11
+ if (!columns.deleted_by) {
12
+ await queryInterface.addColumn(table, 'deleted_by', {
13
+ type: DataTypes.UUID,
14
+ allowNull: true,
15
+ references: {
16
+ model: 'users', // 'users' is the table for your User model
17
+ key: 'id',
18
+ },
19
+ });
20
+ }
21
+ if (!columns.created_by) {
22
+ await queryInterface.addColumn(table, 'created_by', {
23
+ type: DataTypes.UUID,
24
+ allowNull: true,
25
+ references: {
26
+ model: 'users', // 'users' is the table for your User model
27
+ key: 'id',
28
+ },
29
+ });
30
+ }
31
+ if (!columns.updated_by) {
32
+ await queryInterface.addColumn(table, 'updated_by', {
33
+ type: DataTypes.UUID,
34
+ allowNull: true,
35
+ references: {
36
+ model: 'users', // 'users' is the table for your User model
37
+ key: 'id',
38
+ },
39
+ });
40
+ }
41
+ // Add `deleted_at` if it exists
42
+ if (!columns.deleted_at) {
43
+ await queryInterface.addColumn(table, 'deleted_at', {
44
+ type: DataTypes.DATE,
45
+ allowNull: true,
46
+ });
47
+ }
48
+ }
49
+ },
50
+ async down(queryInterface) {
51
+ const tables = await queryInterface.showAllTables();
52
+ for (const table of tables) {
53
+ const columns = await queryInterface.describeTable(table);
54
+ // Remove `deleted_at` if it exists
55
+ if (columns.deleted_at) {
56
+ await queryInterface.removeColumn(table, 'deleted_at');
57
+ }
58
+ // Remove `deleted_by` if it exists
59
+ if (columns.deleted_by) {
60
+ await queryInterface.removeColumn(table, 'deleted_by');
61
+ }
62
+ if (columns.created_by) {
63
+ await queryInterface.removeColumn(table, 'created_by');
64
+ }
65
+ // Remove `deleted_by` if it exists
66
+ if (columns.updated_by) {
67
+ await queryInterface.removeColumn(table, 'updated_by');
68
+ }
69
+ }
70
+ },
71
+ };
@@ -0,0 +1,3 @@
1
+ /** @type {import('sequelize-cli').Migration} */
2
+ export const up: any;
3
+ export function down(queryInterface: any): Promise<void>;
@@ -0,0 +1,33 @@
1
+ 'use strict';
2
+ /** @type {import('sequelize-cli').Migration} */
3
+ const up = async (queryInterface, Sequelize) => {
4
+ const columns = [
5
+ { name: 'school_name', type: Sequelize.STRING },
6
+ { name: 'board', type: Sequelize.STRING },
7
+ { name: 'medium', type: Sequelize.STRING },
8
+ { name: 'standard', type: Sequelize.STRING },
9
+ { name: 'stream', type: Sequelize.STRING },
10
+ { name: 'school_address', type: Sequelize.STRING },
11
+ { name: 'medical_history', type: Sequelize.STRING },
12
+ { name: 'relation', type: Sequelize.STRING },
13
+ ];
14
+ const tableDescription = await queryInterface.describeTable('users');
15
+ for (const column of columns) {
16
+ if (!tableDescription[column.name]) {
17
+ await queryInterface.addColumn('users', column.name, {
18
+ type: column.type,
19
+ allowNull: true,
20
+ });
21
+ }
22
+ }
23
+ };
24
+ const down = async (queryInterface) => {
25
+ const columns = ['school_name', 'board', 'medium', 'standard', 'stream', 'school_address', 'medical_history', 'relation'];
26
+ const tableDescription = await queryInterface.describeTable('users');
27
+ for (const column of columns) {
28
+ if (tableDescription[column]) {
29
+ await queryInterface.removeColumn('users', column);
30
+ }
31
+ }
32
+ };
33
+ module.exports = { up, down };
@@ -0,0 +1,3 @@
1
+ /** @type {import('sequelize-cli').Migration} */
2
+ export const up: any;
3
+ export function down(queryInterface: any, Sequelize: any): Promise<void>;
@@ -0,0 +1,94 @@
1
+ 'use strict';
2
+ /** @type {import('sequelize-cli').Migration} */
3
+ const up = async (queryInterface, Sequelize) => {
4
+ const dataTables = [
5
+ {
6
+ tableName: 'institutes',
7
+ addFields: [
8
+ {
9
+ fieldName: 'profileImage',
10
+ type: {
11
+ type: Sequelize.UUID,
12
+ allowNull: true,
13
+ field: 'profile_image',
14
+ },
15
+ },
16
+ {
17
+ fieldName: 'coverImage',
18
+ type: {
19
+ type: Sequelize.UUID,
20
+ allowNull: true,
21
+ field: 'cover_image',
22
+ },
23
+ },
24
+ ],
25
+ updateFields: [],
26
+ deleteFields: [],
27
+ },
28
+ ];
29
+ for (const table of dataTables) {
30
+ const tableDescription = await queryInterface.describeTable(table.tableName);
31
+ for (const field of table.addFields) {
32
+ const columnName = field.type.field || field.fieldName;
33
+ if (!tableDescription[columnName]) {
34
+ await queryInterface.addColumn(table.tableName, columnName, field.type);
35
+ }
36
+ }
37
+ for (const field of table.updateFields) {
38
+ const columnName = field.type.field || field.fieldName;
39
+ if (tableDescription[columnName]) {
40
+ await queryInterface.changeColumn(table.tableName, columnName, field.type);
41
+ }
42
+ }
43
+ for (const field of table.deleteFields) {
44
+ const columnName = field.type.field || field.fieldName;
45
+ if (tableDescription[columnName]) {
46
+ await queryInterface.removeColumn(table.tableName, columnName);
47
+ }
48
+ }
49
+ }
50
+ };
51
+ const down = async (queryInterface, Sequelize) => {
52
+ const dataTables = [
53
+ {
54
+ tableName: 'institutes', // Table name
55
+ addFields: [
56
+ {
57
+ fieldName: 'profileImage',
58
+ type: {
59
+ type: Sequelize.UUID,
60
+ allowNull: true,
61
+ field: 'profile_image',
62
+ },
63
+ },
64
+ {
65
+ fieldName: 'coverImage',
66
+ type: {
67
+ type: Sequelize.UUID,
68
+ allowNull: true,
69
+ field: 'cover_image',
70
+ },
71
+ },
72
+ ],
73
+ updateFields: [],
74
+ deleteFields: [],
75
+ },
76
+ ];
77
+ for (const table of dataTables) {
78
+ const tableDescription = await queryInterface.describeTable(table.tableName);
79
+ for (const field of table.addFields) {
80
+ const columnName = field.type.field || field.fieldName;
81
+ if (tableDescription[columnName]) {
82
+ await queryInterface.removeColumn(table.tableName, columnName);
83
+ }
84
+ }
85
+ // Add deleted fields back (if necessary)
86
+ for (const field of table.deleteFields) {
87
+ const columnName = field.type.field || field.fieldName;
88
+ if (!tableDescription[columnName]) {
89
+ await queryInterface.addColumn(table.tableName, columnName, field.type);
90
+ }
91
+ }
92
+ }
93
+ };
94
+ module.exports = { up, down };
@@ -0,0 +1,2 @@
1
+ export function up(queryInterface: any): Promise<void>;
2
+ export function down(queryInterface: any): Promise<void>;
@@ -0,0 +1,38 @@
1
+ 'use strict';
2
+ /** @type {import('sequelize-cli').Migration} */
3
+ const dataTables = [
4
+ {
5
+ tableName: 'batches', // Table name
6
+ updateFields: [
7
+ {
8
+ fieldName: 'start_time',
9
+ oldFieldName: 'start_date',
10
+ },
11
+ {
12
+ fieldName: 'end_time',
13
+ oldFieldName: 'end_date',
14
+ },
15
+ ],
16
+ },
17
+ ];
18
+ const up = async (queryInterface) => {
19
+ for (const table of dataTables) {
20
+ const tableDescription = await queryInterface.describeTable(table.tableName);
21
+ for (const field of table.updateFields) {
22
+ if (tableDescription[field.oldFieldName]) {
23
+ await queryInterface.renameColumn(table.tableName, field.oldFieldName, field.fieldName);
24
+ }
25
+ }
26
+ }
27
+ };
28
+ const down = async (queryInterface) => {
29
+ for (const table of dataTables) {
30
+ const tableDescription = await queryInterface.describeTable(table.tableName);
31
+ for (const field of table.updateFields) {
32
+ if (tableDescription[field.fieldName]) {
33
+ await queryInterface.renameColumn(table.tableName, field.fieldName, field.oldFieldName);
34
+ }
35
+ }
36
+ }
37
+ };
38
+ module.exports = { up, down };
@@ -0,0 +1,3 @@
1
+ /** @type {import('sequelize-cli').Migration} */
2
+ export const up: any;
3
+ export function down(queryInterface: any, Sequelize: any): Promise<void>;
@@ -0,0 +1,102 @@
1
+ 'use strict';
2
+ /** @type {import('sequelize-cli').Migration} */
3
+ const up = async (queryInterface, Sequelize) => {
4
+ const dataTables = [
5
+ {
6
+ tableName: 'institutes',
7
+ addFields: [
8
+ {
9
+ fieldName: 'profileImage',
10
+ type: {
11
+ type: Sequelize.UUID,
12
+ allowNull: true,
13
+ field: 'profile_image',
14
+ ref: {
15
+ model: 'file_storage',
16
+ key: 'id',
17
+ },
18
+ },
19
+ },
20
+ {
21
+ fieldName: 'coverImage',
22
+ type: {
23
+ type: Sequelize.UUID,
24
+ allowNull: true,
25
+ field: 'cover_image',
26
+ ref: {
27
+ model: 'file_storage',
28
+ key: 'id',
29
+ },
30
+ },
31
+ },
32
+ ],
33
+ updateFields: [],
34
+ deleteFields: [],
35
+ },
36
+ ];
37
+ for (const table of dataTables) {
38
+ const tableDescription = await queryInterface.describeTable(table.tableName);
39
+ for (const field of table.addFields) {
40
+ const columnName = field.type.field || field.fieldName;
41
+ if (!tableDescription[columnName]) {
42
+ await queryInterface.addColumn(table.tableName, columnName, field.type);
43
+ }
44
+ }
45
+ for (const field of table.updateFields) {
46
+ const columnName = field.type.field || field.fieldName;
47
+ if (tableDescription[columnName]) {
48
+ await queryInterface.changeColumn(table.tableName, columnName, field.type);
49
+ }
50
+ }
51
+ for (const field of table.deleteFields) {
52
+ const columnName = field.type.field || field.fieldName;
53
+ if (tableDescription[columnName]) {
54
+ await queryInterface.removeColumn(table.tableName, columnName);
55
+ }
56
+ }
57
+ }
58
+ };
59
+ const down = async (queryInterface, Sequelize) => {
60
+ const dataTables = [
61
+ {
62
+ tableName: 'institutes', // Table name
63
+ addFields: [
64
+ {
65
+ fieldName: 'profileImage',
66
+ type: {
67
+ type: Sequelize.UUID,
68
+ allowNull: true,
69
+ field: 'profile_image',
70
+ },
71
+ },
72
+ {
73
+ fieldName: 'coverImage',
74
+ type: {
75
+ type: Sequelize.UUID,
76
+ allowNull: true,
77
+ field: 'cover_image',
78
+ },
79
+ },
80
+ ],
81
+ updateFields: [],
82
+ deleteFields: [],
83
+ },
84
+ ];
85
+ for (const table of dataTables) {
86
+ const tableDescription = await queryInterface.describeTable(table.tableName);
87
+ for (const field of table.addFields) {
88
+ const columnName = field.type.field || field.fieldName;
89
+ if (tableDescription[columnName]) {
90
+ await queryInterface.removeColumn(table.tableName, columnName);
91
+ }
92
+ }
93
+ // Add deleted fields back (if necessary)
94
+ for (const field of table.deleteFields) {
95
+ const columnName = field.type.field || field.fieldName;
96
+ if (!tableDescription[columnName]) {
97
+ await queryInterface.addColumn(table.tableName, columnName, field.type);
98
+ }
99
+ }
100
+ }
101
+ };
102
+ module.exports = { up, down };
@@ -0,0 +1,3 @@
1
+ /** @type {import('sequelize-cli').Migration} */
2
+ export const up: any;
3
+ export function down(queryInterface: any, Sequelize: any): Promise<void>;
@@ -0,0 +1,76 @@
1
+ 'use strict';
2
+ /** @type {import('sequelize-cli').Migration} */
3
+ const up = async (queryInterface, Sequelize) => {
4
+ const dataTables = [
5
+ {
6
+ tableName: 'user_has_inventory_history',
7
+ addFields: [
8
+ {
9
+ fieldName: 'action',
10
+ type: {
11
+ type: Sequelize.ENUM('BOTH', 'DAMAGE', 'LOST', 'UPDATE', 'CREATE'),
12
+ allowNull: false,
13
+ },
14
+ },
15
+ ],
16
+ updateFields: [],
17
+ deleteFields: [],
18
+ },
19
+ ];
20
+ for (const table of dataTables) {
21
+ const tableDescription = await queryInterface.describeTable(table.tableName);
22
+ for (const field of table.addFields) {
23
+ const columnName = field.type.field || field.fieldName;
24
+ if (!tableDescription[columnName]) {
25
+ await queryInterface.addColumn(table.tableName, columnName, field.type);
26
+ }
27
+ }
28
+ for (const field of table.updateFields) {
29
+ const columnName = field.type.field || field.fieldName;
30
+ if (tableDescription[columnName]) {
31
+ await queryInterface.changeColumn(table.tableName, columnName, field.type);
32
+ }
33
+ }
34
+ for (const field of table.deleteFields) {
35
+ const columnName = field.type.field || field.fieldName;
36
+ if (tableDescription[columnName]) {
37
+ await queryInterface.removeColumn(table.tableName, columnName);
38
+ }
39
+ }
40
+ }
41
+ };
42
+ const down = async (queryInterface, Sequelize) => {
43
+ const dataTables = [
44
+ {
45
+ tableName: 'user_has_inventory_history', // Table name
46
+ addFields: [
47
+ {
48
+ fieldName: 'action',
49
+ type: {
50
+ type: Sequelize.ENUM('BOTH', 'DAMAGE', 'LOST', 'UPDATE', 'CREATE'),
51
+ allowNull: false,
52
+ },
53
+ },
54
+ ],
55
+ updateFields: [],
56
+ deleteFields: [],
57
+ },
58
+ ];
59
+ for (const table of dataTables) {
60
+ const tableDescription = await queryInterface.describeTable(table.tableName);
61
+ for (const field of table.addFields) {
62
+ const columnName = field.type.field || field.fieldName;
63
+ if (tableDescription[columnName]) {
64
+ await queryInterface.removeColumn(table.tableName, columnName);
65
+ }
66
+ }
67
+ // Add deleted fields back (if necessary)
68
+ for (const field of table.deleteFields) {
69
+ const columnName = field.type.field || field.fieldName;
70
+ if (!tableDescription[columnName]) {
71
+ await queryInterface.addColumn(table.tableName, columnName, field.type);
72
+ }
73
+ }
74
+ }
75
+ };
76
+ module.exports = { up, down };
@@ -0,0 +1,3 @@
1
+ /** @type {import('sequelize-cli').Migration} */
2
+ export const up: any;
3
+ export function down(queryInterface: any, Sequelize: any): Promise<void>;