@lyxa.ai/core 1.0.12 → 1.0.13

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 (301) hide show
  1. package/dist/index.js +3 -0
  2. package/dist/index.js.map +1 -1
  3. package/dist/libraries/event/index.js.map +1 -1
  4. package/dist/libraries/mongo/models/activity-log.model.d.ts +11 -0
  5. package/dist/libraries/mongo/models/activity-log.model.js +44 -0
  6. package/dist/libraries/mongo/models/activity-log.model.js.map +1 -0
  7. package/dist/libraries/mongo/models/admin-access-control.model.d.ts +11 -0
  8. package/dist/libraries/mongo/models/admin-access-control.model.js +55 -0
  9. package/dist/libraries/mongo/models/admin-access-control.model.js.map +1 -0
  10. package/dist/libraries/mongo/models/admin.model.d.ts +10 -0
  11. package/dist/libraries/mongo/models/admin.model.js +48 -0
  12. package/dist/libraries/mongo/models/admin.model.js.map +1 -0
  13. package/dist/libraries/mongo/models/app-screen-setting.model.d.ts +11 -0
  14. package/dist/libraries/mongo/models/app-screen-setting.model.js +48 -0
  15. package/dist/libraries/mongo/models/app-screen-setting.model.js.map +1 -0
  16. package/dist/libraries/mongo/models/attribute.model.d.ts +15 -0
  17. package/dist/libraries/mongo/models/attribute.model.js +65 -0
  18. package/dist/libraries/mongo/models/attribute.model.js.map +1 -0
  19. package/dist/libraries/mongo/models/auth-identity.model.d.ts +8 -0
  20. package/dist/libraries/mongo/models/auth-identity.model.js +33 -0
  21. package/dist/libraries/mongo/models/auth-identity.model.js.map +1 -0
  22. package/dist/libraries/mongo/models/banner.model.d.ts +22 -0
  23. package/dist/libraries/mongo/models/banner.model.js +91 -0
  24. package/dist/libraries/mongo/models/banner.model.js.map +1 -0
  25. package/dist/libraries/mongo/models/base/base-coupon.model.d.ts +15 -0
  26. package/dist/libraries/mongo/models/base/base-coupon.model.js +70 -0
  27. package/dist/libraries/mongo/models/base/base-coupon.model.js.map +1 -0
  28. package/dist/libraries/mongo/models/base/base-review.model.d.ts +13 -0
  29. package/dist/libraries/mongo/models/base/base-review.model.js +55 -0
  30. package/dist/libraries/mongo/models/base/base-review.model.js.map +1 -0
  31. package/dist/libraries/mongo/models/bob-finance.model.d.ts +29 -0
  32. package/dist/libraries/mongo/models/bob-finance.model.js +122 -0
  33. package/dist/libraries/mongo/models/bob-finance.model.js.map +1 -0
  34. package/dist/libraries/mongo/models/brand.model.d.ts +7 -0
  35. package/dist/libraries/mongo/models/brand.model.js +32 -0
  36. package/dist/libraries/mongo/models/brand.model.js.map +1 -0
  37. package/dist/libraries/mongo/models/category.model.d.ts +13 -0
  38. package/dist/libraries/mongo/models/category.model.js +59 -0
  39. package/dist/libraries/mongo/models/category.model.js.map +1 -0
  40. package/dist/libraries/mongo/models/counter.model.d.ts +8 -0
  41. package/dist/libraries/mongo/models/counter.model.js +33 -0
  42. package/dist/libraries/mongo/models/counter.model.js.map +1 -0
  43. package/dist/libraries/mongo/models/coupon.model.d.ts +9 -0
  44. package/dist/libraries/mongo/models/coupon.model.js +38 -0
  45. package/dist/libraries/mongo/models/coupon.model.js.map +1 -0
  46. package/dist/libraries/mongo/models/deal-setting.model.d.ts +12 -0
  47. package/dist/libraries/mongo/models/deal-setting.model.js +53 -0
  48. package/dist/libraries/mongo/models/deal-setting.model.js.map +1 -0
  49. package/dist/libraries/mongo/models/dish.model.d.ts +19 -0
  50. package/dist/libraries/mongo/models/dish.model.js +84 -0
  51. package/dist/libraries/mongo/models/dish.model.js.map +1 -0
  52. package/dist/libraries/mongo/models/embedded/attribute-item.model.d.ts +5 -0
  53. package/dist/libraries/mongo/models/embedded/attribute-item.model.js +32 -0
  54. package/dist/libraries/mongo/models/embedded/attribute-item.model.js.map +1 -0
  55. package/dist/libraries/mongo/models/embedded/attribute-map.model.d.ts +7 -0
  56. package/dist/libraries/mongo/models/embedded/attribute-map.model.js +29 -0
  57. package/dist/libraries/mongo/models/embedded/attribute-map.model.js.map +1 -0
  58. package/dist/libraries/mongo/models/embedded/business-development-setting.model.d.ts +4 -0
  59. package/dist/libraries/mongo/models/embedded/business-development-setting.model.js +27 -0
  60. package/dist/libraries/mongo/models/embedded/business-development-setting.model.js.map +1 -0
  61. package/dist/libraries/mongo/models/embedded/charge-setting.model.d.ts +14 -0
  62. package/dist/libraries/mongo/models/embedded/charge-setting.model.js +60 -0
  63. package/dist/libraries/mongo/models/embedded/charge-setting.model.js.map +1 -0
  64. package/dist/libraries/mongo/models/embedded/charge.model.d.ts +5 -0
  65. package/dist/libraries/mongo/models/embedded/charge.model.js +28 -0
  66. package/dist/libraries/mongo/models/embedded/charge.model.js.map +1 -0
  67. package/dist/libraries/mongo/models/embedded/courier-setting.model.d.ts +4 -0
  68. package/dist/libraries/mongo/models/embedded/courier-setting.model.js +27 -0
  69. package/dist/libraries/mongo/models/embedded/courier-setting.model.js.map +1 -0
  70. package/dist/libraries/mongo/models/embedded/currency-setting.model.d.ts +7 -0
  71. package/dist/libraries/mongo/models/embedded/currency-setting.model.js +38 -0
  72. package/dist/libraries/mongo/models/embedded/currency-setting.model.js.map +1 -0
  73. package/dist/libraries/mongo/models/embedded/currency.model.d.ts +10 -0
  74. package/dist/libraries/mongo/models/embedded/currency.model.js +57 -0
  75. package/dist/libraries/mongo/models/embedded/currency.model.js.map +1 -0
  76. package/dist/libraries/mongo/models/embedded/featured-item.mode.d.ts +6 -0
  77. package/dist/libraries/mongo/models/embedded/featured-item.mode.js +33 -0
  78. package/dist/libraries/mongo/models/embedded/featured-item.mode.js.map +1 -0
  79. package/dist/libraries/mongo/models/embedded/otp-fields.model.d.ts +5 -0
  80. package/dist/libraries/mongo/models/embedded/otp-fields.model.js +32 -0
  81. package/dist/libraries/mongo/models/embedded/otp-fields.model.js.map +1 -0
  82. package/dist/libraries/mongo/models/embedded/package.model.d.ts +25 -0
  83. package/dist/libraries/mongo/models/embedded/package.model.js +86 -0
  84. package/dist/libraries/mongo/models/embedded/package.model.js.map +1 -0
  85. package/dist/libraries/mongo/models/embedded/parent-document.model.d.ts +5 -0
  86. package/dist/libraries/mongo/models/embedded/parent-document.model.js +32 -0
  87. package/dist/libraries/mongo/models/embedded/parent-document.model.js.map +1 -0
  88. package/dist/libraries/mongo/models/embedded/payout-setting.model.d.ts +5 -0
  89. package/dist/libraries/mongo/models/embedded/payout-setting.model.js +28 -0
  90. package/dist/libraries/mongo/models/embedded/payout-setting.model.js.map +1 -0
  91. package/dist/libraries/mongo/models/embedded/price.model.d.ts +5 -0
  92. package/dist/libraries/mongo/models/embedded/price.model.js +32 -0
  93. package/dist/libraries/mongo/models/embedded/price.model.js.map +1 -0
  94. package/dist/libraries/mongo/models/embedded/product-nutrition.model.d.ts +5 -0
  95. package/dist/libraries/mongo/models/embedded/product-nutrition.model.js +32 -0
  96. package/dist/libraries/mongo/models/embedded/product-nutrition.model.js.map +1 -0
  97. package/dist/libraries/mongo/models/embedded/referral-discount-config.model.d.ts +6 -0
  98. package/dist/libraries/mongo/models/embedded/referral-discount-config.model.js +38 -0
  99. package/dist/libraries/mongo/models/embedded/referral-discount-config.model.js.map +1 -0
  100. package/dist/libraries/mongo/models/embedded/rider-setting.model.d.ts +6 -0
  101. package/dist/libraries/mongo/models/embedded/rider-setting.model.js +37 -0
  102. package/dist/libraries/mongo/models/embedded/rider-setting.model.js.map +1 -0
  103. package/dist/libraries/mongo/models/embedded/service-fee-setting.model.d.ts +5 -0
  104. package/dist/libraries/mongo/models/embedded/service-fee-setting.model.js +28 -0
  105. package/dist/libraries/mongo/models/embedded/service-fee-setting.model.js.map +1 -0
  106. package/dist/libraries/mongo/models/embedded/shop-document.model.d.ts +5 -0
  107. package/dist/libraries/mongo/models/embedded/shop-document.model.js +32 -0
  108. package/dist/libraries/mongo/models/embedded/shop-document.model.js.map +1 -0
  109. package/dist/libraries/mongo/models/embedded/subscription-summary.model.d.ts +8 -0
  110. package/dist/libraries/mongo/models/embedded/subscription-summary.model.js +47 -0
  111. package/dist/libraries/mongo/models/embedded/subscription-summary.model.js.map +1 -0
  112. package/dist/libraries/mongo/models/embedded/zone-geometry.mode.d.ts +4 -0
  113. package/dist/libraries/mongo/models/embedded/zone-geometry.mode.js +27 -0
  114. package/dist/libraries/mongo/models/embedded/zone-geometry.mode.js.map +1 -0
  115. package/dist/libraries/mongo/models/faq.model.d.ts +12 -0
  116. package/dist/libraries/mongo/models/faq.model.js +53 -0
  117. package/dist/libraries/mongo/models/faq.model.js.map +1 -0
  118. package/dist/libraries/mongo/models/favourite.model.d.ts +13 -0
  119. package/dist/libraries/mongo/models/favourite.model.js +46 -0
  120. package/dist/libraries/mongo/models/favourite.model.js.map +1 -0
  121. package/dist/libraries/mongo/models/featured-setting.model.d.ts +9 -0
  122. package/dist/libraries/mongo/models/featured-setting.model.js +34 -0
  123. package/dist/libraries/mongo/models/featured-setting.model.js.map +1 -0
  124. package/dist/libraries/mongo/models/filter-container.model.d.ts +11 -0
  125. package/dist/libraries/mongo/models/filter-container.model.js +53 -0
  126. package/dist/libraries/mongo/models/filter-container.model.js.map +1 -0
  127. package/dist/libraries/mongo/models/list-container.model.d.ts +17 -0
  128. package/dist/libraries/mongo/models/list-container.model.js +70 -0
  129. package/dist/libraries/mongo/models/list-container.model.js.map +1 -0
  130. package/dist/libraries/mongo/models/loyalty-point-category.model.d.ts +9 -0
  131. package/dist/libraries/mongo/models/loyalty-point-category.model.js +38 -0
  132. package/dist/libraries/mongo/models/loyalty-point-category.model.js.map +1 -0
  133. package/dist/libraries/mongo/models/loyalty-point-setting.model.d.ts +9 -0
  134. package/dist/libraries/mongo/models/loyalty-point-setting.model.js +42 -0
  135. package/dist/libraries/mongo/models/loyalty-point-setting.model.js.map +1 -0
  136. package/dist/libraries/mongo/models/marketing.model.d.ts +14 -0
  137. package/dist/libraries/mongo/models/marketing.model.js +55 -0
  138. package/dist/libraries/mongo/models/marketing.model.js.map +1 -0
  139. package/dist/libraries/mongo/models/meal-plan.model.d.ts +11 -0
  140. package/dist/libraries/mongo/models/meal-plan.model.js +52 -0
  141. package/dist/libraries/mongo/models/meal-plan.model.js.map +1 -0
  142. package/dist/libraries/mongo/models/notification.model.d.ts +40 -0
  143. package/dist/libraries/mongo/models/notification.model.js +155 -0
  144. package/dist/libraries/mongo/models/notification.model.js.map +1 -0
  145. package/dist/libraries/mongo/models/nutrition.model.d.ts +8 -0
  146. package/dist/libraries/mongo/models/nutrition.model.js +33 -0
  147. package/dist/libraries/mongo/models/nutrition.model.js.map +1 -0
  148. package/dist/libraries/mongo/models/order.model.d.ts +2 -0
  149. package/dist/libraries/mongo/models/order.model.js +7 -0
  150. package/dist/libraries/mongo/models/order.model.js.map +1 -0
  151. package/dist/libraries/mongo/models/parent.model.d.ts +21 -0
  152. package/dist/libraries/mongo/models/parent.model.js +83 -0
  153. package/dist/libraries/mongo/models/parent.model.js.map +1 -0
  154. package/dist/libraries/mongo/models/payout.model.d.ts +2 -0
  155. package/dist/libraries/mongo/models/payout.model.js +7 -0
  156. package/dist/libraries/mongo/models/payout.model.js.map +1 -0
  157. package/dist/libraries/mongo/models/product-marketing.model.d.ts +13 -0
  158. package/dist/libraries/mongo/models/product-marketing.model.js +50 -0
  159. package/dist/libraries/mongo/models/product-marketing.model.js.map +1 -0
  160. package/dist/libraries/mongo/models/product.model.d.ts +21 -0
  161. package/dist/libraries/mongo/models/product.model.js +95 -0
  162. package/dist/libraries/mongo/models/product.model.js.map +1 -0
  163. package/dist/libraries/mongo/models/providers/apple-auth-identity.model.d.ts +6 -0
  164. package/dist/libraries/mongo/models/providers/apple-auth-identity.model.js +25 -0
  165. package/dist/libraries/mongo/models/providers/apple-auth-identity.model.js.map +1 -0
  166. package/dist/libraries/mongo/models/providers/buy1-get1-marketing.model.d.ts +12 -0
  167. package/dist/libraries/mongo/models/providers/buy1-get1-marketing.model.js +42 -0
  168. package/dist/libraries/mongo/models/providers/buy1-get1-marketing.model.js.map +1 -0
  169. package/dist/libraries/mongo/models/providers/custom-coupon.model.d.ts +12 -0
  170. package/dist/libraries/mongo/models/providers/custom-coupon.model.js +39 -0
  171. package/dist/libraries/mongo/models/providers/custom-coupon.model.js.map +1 -0
  172. package/dist/libraries/mongo/models/providers/discount-marketing.model.d.ts +15 -0
  173. package/dist/libraries/mongo/models/providers/discount-marketing.model.js +57 -0
  174. package/dist/libraries/mongo/models/providers/discount-marketing.model.js.map +1 -0
  175. package/dist/libraries/mongo/models/providers/email-auth-identity.model.d.ts +9 -0
  176. package/dist/libraries/mongo/models/providers/email-auth-identity.model.js +36 -0
  177. package/dist/libraries/mongo/models/providers/email-auth-identity.model.js.map +1 -0
  178. package/dist/libraries/mongo/models/providers/featured-marketing.model.d.ts +8 -0
  179. package/dist/libraries/mongo/models/providers/featured-marketing.model.js +26 -0
  180. package/dist/libraries/mongo/models/providers/featured-marketing.model.js.map +1 -0
  181. package/dist/libraries/mongo/models/providers/free-delivery-marketing.model.d.ts +8 -0
  182. package/dist/libraries/mongo/models/providers/free-delivery-marketing.model.js +26 -0
  183. package/dist/libraries/mongo/models/providers/free-delivery-marketing.model.js.map +1 -0
  184. package/dist/libraries/mongo/models/providers/global-coupon.model.d.ts +7 -0
  185. package/dist/libraries/mongo/models/providers/global-coupon.model.js +13 -0
  186. package/dist/libraries/mongo/models/providers/global-coupon.model.js.map +1 -0
  187. package/dist/libraries/mongo/models/providers/google-auth-identity.model.d.ts +6 -0
  188. package/dist/libraries/mongo/models/providers/google-auth-identity.model.js +25 -0
  189. package/dist/libraries/mongo/models/providers/google-auth-identity.model.js.map +1 -0
  190. package/dist/libraries/mongo/models/providers/individual-store-coupon.model.d.ts +11 -0
  191. package/dist/libraries/mongo/models/providers/individual-store-coupon.model.js +38 -0
  192. package/dist/libraries/mongo/models/providers/individual-store-coupon.model.js.map +1 -0
  193. package/dist/libraries/mongo/models/providers/individual-user-coupon.model.d.ts +12 -0
  194. package/dist/libraries/mongo/models/providers/individual-user-coupon.model.js +39 -0
  195. package/dist/libraries/mongo/models/providers/individual-user-coupon.model.js.map +1 -0
  196. package/dist/libraries/mongo/models/providers/loyalty-point-marketing.model.d.ts +15 -0
  197. package/dist/libraries/mongo/models/providers/loyalty-point-marketing.model.js +53 -0
  198. package/dist/libraries/mongo/models/providers/loyalty-point-marketing.model.js.map +1 -0
  199. package/dist/libraries/mongo/models/providers/phone-auth-identity.model.d.ts +8 -0
  200. package/dist/libraries/mongo/models/providers/phone-auth-identity.model.js +31 -0
  201. package/dist/libraries/mongo/models/providers/phone-auth-identity.model.js.map +1 -0
  202. package/dist/libraries/mongo/models/providers/punch-marketing.model.d.ts +13 -0
  203. package/dist/libraries/mongo/models/providers/punch-marketing.model.js +51 -0
  204. package/dist/libraries/mongo/models/providers/punch-marketing.model.js.map +1 -0
  205. package/dist/libraries/mongo/models/providers/referral-code-coupon.mode.d.ts +10 -0
  206. package/dist/libraries/mongo/models/providers/referral-code-coupon.mode.js +28 -0
  207. package/dist/libraries/mongo/models/providers/referral-code-coupon.mode.js.map +1 -0
  208. package/dist/libraries/mongo/models/providers/referral-reward-coupon.model.d.ts +12 -0
  209. package/dist/libraries/mongo/models/providers/referral-reward-coupon.model.js +39 -0
  210. package/dist/libraries/mongo/models/providers/referral-reward-coupon.model.js.map +1 -0
  211. package/dist/libraries/mongo/models/punch-marketing-history.model.d.ts +11 -0
  212. package/dist/libraries/mongo/models/punch-marketing-history.model.js +44 -0
  213. package/dist/libraries/mongo/models/punch-marketing-history.model.js.map +1 -0
  214. package/dist/libraries/mongo/models/rating-setting.model.d.ts +9 -0
  215. package/dist/libraries/mongo/models/rating-setting.model.js +38 -0
  216. package/dist/libraries/mongo/models/rating-setting.model.js.map +1 -0
  217. package/dist/libraries/mongo/models/referral-setting.model.d.ts +8 -0
  218. package/dist/libraries/mongo/models/referral-setting.model.js +33 -0
  219. package/dist/libraries/mongo/models/referral-setting.model.js.map +1 -0
  220. package/dist/libraries/mongo/models/request-area.model copy.d.ts +9 -0
  221. package/dist/libraries/mongo/models/request-area.model copy.js +34 -0
  222. package/dist/libraries/mongo/models/request-area.model copy.js.map +1 -0
  223. package/dist/libraries/mongo/models/request-area.model.d.ts +9 -0
  224. package/dist/libraries/mongo/models/request-area.model.js +34 -0
  225. package/dist/libraries/mongo/models/request-area.model.js.map +1 -0
  226. package/dist/libraries/mongo/models/rider-review.d.ts +7 -0
  227. package/dist/libraries/mongo/models/rider-review.js +28 -0
  228. package/dist/libraries/mongo/models/rider-review.js.map +1 -0
  229. package/dist/libraries/mongo/models/rider-review.model.d.ts +7 -0
  230. package/dist/libraries/mongo/models/rider-review.model.js +28 -0
  231. package/dist/libraries/mongo/models/rider-review.model.js.map +1 -0
  232. package/dist/libraries/mongo/models/rider.model.d.ts +2 -0
  233. package/dist/libraries/mongo/models/rider.model.js +7 -0
  234. package/dist/libraries/mongo/models/rider.model.js.map +1 -0
  235. package/dist/libraries/mongo/models/role.model.ts.d.ts +8 -0
  236. package/dist/libraries/mongo/models/role.model.ts.js +37 -0
  237. package/dist/libraries/mongo/models/role.model.ts.js.map +1 -0
  238. package/dist/libraries/mongo/models/setting.model.d.ts +31 -0
  239. package/dist/libraries/mongo/models/setting.model.js +116 -0
  240. package/dist/libraries/mongo/models/setting.model.js.map +1 -0
  241. package/dist/libraries/mongo/models/{address.model.d.ts → shared/address.model.d.ts} +1 -1
  242. package/dist/libraries/mongo/models/{address.model.js → shared/address.model.js} +1 -1
  243. package/dist/libraries/mongo/models/shared/address.model.js.map +1 -0
  244. package/dist/libraries/mongo/models/shared/duration.model.js.map +1 -0
  245. package/dist/libraries/mongo/models/{work-hour.model.d.ts → shared/work-hour.model.d.ts} +1 -1
  246. package/dist/libraries/mongo/models/{work-hour.model.js → shared/work-hour.model.js} +1 -1
  247. package/dist/libraries/mongo/models/shared/work-hour.model.js.map +1 -0
  248. package/dist/libraries/mongo/models/shop-access-control.model.d.ts +13 -0
  249. package/dist/libraries/mongo/models/shop-access-control.model.js +61 -0
  250. package/dist/libraries/mongo/models/shop-access-control.model.js.map +1 -0
  251. package/dist/libraries/mongo/models/shop-category.model.d.ts +12 -0
  252. package/dist/libraries/mongo/models/shop-category.model.js +45 -0
  253. package/dist/libraries/mongo/models/shop-category.model.js.map +1 -0
  254. package/dist/libraries/mongo/models/shop-meal-plan.model.d.ts +13 -0
  255. package/dist/libraries/mongo/models/shop-meal-plan.model.js +46 -0
  256. package/dist/libraries/mongo/models/shop-meal-plan.model.js.map +1 -0
  257. package/dist/libraries/mongo/models/shop-product.model.d.ts +26 -0
  258. package/dist/libraries/mongo/models/shop-product.model.js +103 -0
  259. package/dist/libraries/mongo/models/shop-product.model.js.map +1 -0
  260. package/dist/libraries/mongo/models/shop-review.d.ts +7 -0
  261. package/dist/libraries/mongo/models/shop-review.js +28 -0
  262. package/dist/libraries/mongo/models/shop-review.js.map +1 -0
  263. package/dist/libraries/mongo/models/shop.model.d.ts +50 -0
  264. package/dist/libraries/mongo/models/shop.model.js +215 -0
  265. package/dist/libraries/mongo/models/shop.model.js.map +1 -0
  266. package/dist/libraries/mongo/models/subscription-setting.model.d.ts +9 -0
  267. package/dist/libraries/mongo/models/subscription-setting.model.js +38 -0
  268. package/dist/libraries/mongo/models/subscription-setting.model.js.map +1 -0
  269. package/dist/libraries/mongo/models/subscription.model.d.ts +23 -0
  270. package/dist/libraries/mongo/models/subscription.model.js +92 -0
  271. package/dist/libraries/mongo/models/subscription.model.js.map +1 -0
  272. package/dist/libraries/mongo/models/tag.model.d.ts +11 -0
  273. package/dist/libraries/mongo/models/tag.model.js +52 -0
  274. package/dist/libraries/mongo/models/tag.model.js.map +1 -0
  275. package/dist/libraries/mongo/models/transaction.model.d.ts +2 -0
  276. package/dist/libraries/mongo/models/transaction.model.js +7 -0
  277. package/dist/libraries/mongo/models/transaction.model.js.map +1 -0
  278. package/dist/libraries/mongo/models/user.model.d.ts +16 -0
  279. package/dist/libraries/mongo/models/user.model.js +73 -0
  280. package/dist/libraries/mongo/models/user.model.js.map +1 -0
  281. package/dist/libraries/mongo/models/zone.d.ts +15 -0
  282. package/dist/libraries/mongo/models/zone.js +64 -0
  283. package/dist/libraries/mongo/models/zone.js.map +1 -0
  284. package/dist/libraries/mongo/models/zone.model..d.ts +15 -0
  285. package/dist/libraries/mongo/models/zone.model..js +64 -0
  286. package/dist/libraries/mongo/models/zone.model..js.map +1 -0
  287. package/dist/utilities/enum.d.ts +208 -0
  288. package/dist/utilities/enum.js +240 -1
  289. package/dist/utilities/enum.js.map +1 -1
  290. package/dist/utilities/validation/common-validation.d.ts +1 -1
  291. package/dist/utilities/validation/common-validation.js +2 -2
  292. package/dist/utilities/validation/common-validation.js.map +1 -1
  293. package/dist/utilities/validation/global-validation.d.ts +3 -1
  294. package/dist/utilities/validation/global-validation.js +9 -5
  295. package/dist/utilities/validation/global-validation.js.map +1 -1
  296. package/package.json +2 -1
  297. package/dist/libraries/mongo/models/address.model.js.map +0 -1
  298. package/dist/libraries/mongo/models/duration.model.js.map +0 -1
  299. package/dist/libraries/mongo/models/work-hour.model.js.map +0 -1
  300. /package/dist/libraries/mongo/models/{duration.model.d.ts → shared/duration.model.d.ts} +0 -0
  301. /package/dist/libraries/mongo/models/{duration.model.js → shared/duration.model.js} +0 -0
package/dist/index.js CHANGED
@@ -84,4 +84,7 @@ async function registerLibraries(options) {
84
84
  function getLibraries() {
85
85
  return typedi_1.Container.get(libraries_1.LibraryManager);
86
86
  }
87
+ bootstrapCore({ environment: EnvironmentConfigurationType_1.EnvironmentConfigurationType.DEV, instanceType: "attemptedStartup" }).then(async (f) => {
88
+ console.log("Started up.");
89
+ });
87
90
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"/","sources":["index.ts"],"names":[],"mappings":"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","sourcesContent":["import {LibraryManager} from \"./libraries\";\r\nimport {Container} from \"typedi\";\r\nimport mongoose from \"mongoose\";\r\nimport {ConfigurationOptions, ConfigurationService} from \"./libraries/configuration\";\r\nimport {EnvironmentConfigurationType} from \"./libraries/configuration/types/EnvironmentConfigurationType\";\r\nimport {LyxaLogger} from \"./libraries/logger\";\r\nimport {RedisService} from \"./libraries/redis\";\r\nimport {initGlobalConnection} from \"./libraries/mongo\";\r\nimport {SecretManagerService} from \"./libraries/secrets\";\r\nimport {MicroServiceDispatcher} from \"./libraries/dispatcher\";\r\nimport {TwilioService} from \"./libraries/twilio\";\r\nimport {FirebaseService} from \"./libraries/firebase\";\r\nimport {initEventBus, subscribeToEvent} from \"./libraries/event\";\r\nimport {SubscriptionRegistry} from \"./libraries/event/registry/SubscriptionRegistry\";\r\n\r\nexport { ConfigurationOptions } from \"./libraries/configuration\";\r\nexport { EnvironmentConfigurationType } from \"./libraries/configuration/types/EnvironmentConfigurationType\";\r\nexport {\r\n initGlobalConnection,\r\n createGlobalModel,\r\n createGlobalDiscriminatorModel\r\n} from './libraries/mongo';\r\n\r\nexport async function bootstrapCore(options?: ConfigurationOptions) {\r\n try {\r\n await registerLibraries(options);\r\n\r\n getLibraries().getLogger().logger.info(\"Successfully bootstrapped lyxa-core.\");\r\n\r\n const gracefulShutdown = async () => {\r\n getLibraries().getLogger().logger.info('Received shutdown signal, shutting down gracefully...');\r\n };\r\n\r\n process.on('SIGTERM', gracefulShutdown);\r\n process.on('SIGINT', gracefulShutdown);\r\n process.on('uncaughtException', (err) => {\r\n getLibraries().getLogger().logger.error('Uncaught exception, shutting down...', err);\r\n gracefulShutdown();\r\n });\r\n\r\n console.log(\"Created hooks.\");\r\n } catch (e) {\r\n console.error(e);\r\n }\r\n}\r\n\r\nexport async function registerLibraries(options?: ConfigurationOptions) {\r\n // Setup configuration.\r\n const configurationInstance = new ConfigurationService(options);\r\n Container.set(ConfigurationService, configurationInstance);\r\n\r\n // Setup redis.\r\n const redisInstance = new RedisService(configurationInstance.options.redisURL!);\r\n Container.set(RedisService, redisInstance);\r\n\r\n // Setup secret\r\n const secretInstance = new SecretManagerService(configurationInstance, redisInstance);\r\n Container.set(SecretManagerService, secretInstance);\r\n\r\n const mongoUrl = await getLibraries().getSecretsService()\r\n .getKey(\"MONGO_URL\");\r\n\r\n await mongoose.connect(mongoUrl!, { dbName: `lyxa-${options!.environment}-${options!.tenet}` });\r\n mongoose.set('debug', getLibraries().getConfigurationService().options.environment == EnvironmentConfigurationType.DEV);\r\n\r\n await initGlobalConnection(mongoUrl!, options!.environment);\r\n\r\n // Setup logger\r\n const loggerInstance = new LyxaLogger(options!.instanceType!, mongoUrl!);\r\n Container.set(LyxaLogger, loggerInstance);\r\n\r\n // Setup firebase\r\n const firebaseInstance = new FirebaseService(configurationInstance!);\r\n Container.set(FirebaseService, firebaseInstance);\r\n\r\n // Setup microservice dispatcher\r\n const microserviceDispatcherInstance = new MicroServiceDispatcher(secretInstance);\r\n Container.set(MicroServiceDispatcher, microserviceDispatcherInstance);\r\n\r\n\r\n // Setup twilio\r\n const twilioServiceInstance = new TwilioService();\r\n Container.set(TwilioService, twilioServiceInstance);\r\n\r\n console.log(\"Initialized everything\");\r\n\r\n await initEventBus(\"amqps://vgyuplrd:wto6vUYnb4zeBI5lntKT4gj7rT8n1vwg@dog.lmq.cloudamqp.com/vgyuplrd\");\r\n const allSubscriptions = SubscriptionRegistry.getAllSubscriptions();\r\n\r\n const instantiatedServices = new Map<Function, any>();\r\n\r\n for (const { eventId, targetConstructor, methodName } of allSubscriptions) {\r\n let instance = instantiatedServices.get(targetConstructor);\r\n if (!instance) {\r\n instance = Container.get(targetConstructor as any);\r\n instantiatedServices.set(targetConstructor, instance);\r\n }\r\n\r\n await subscribeToEvent(eventId, async (payload) => {\r\n return instance[methodName](payload);\r\n });\r\n }\r\n}\r\n\r\nexport function getLibraries(): LibraryManager {\r\n return Container.get(LibraryManager)\r\n}\r\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"/","sources":["index.ts"],"names":[],"mappings":";;;;;;AAuBA,sCAqBC;AAED,8CAwDC;AAED,oCAEC;AA1GD,2CAA2C;AAC3C,mCAAiC;AACjC,wDAAgC;AAChC,6DAAqF;AACrF,+GAA0G;AAC1G,+CAA8C;AAC9C,6CAA+C;AAC/C,6CAAuD;AACvD,iDAAyD;AACzD,uDAA8D;AAC9D,+CAAiD;AACjD,mDAAqD;AACrD,6CAAiE;AACjE,0FAAqF;AAGrF,6GAA4G;AAAnG,4IAAA,4BAA4B,OAAA;AACrC,2CAI2B;AAHvB,6GAAA,oBAAoB,OAAA;AACpB,0GAAA,iBAAiB,OAAA;AACjB,uHAAA,8BAA8B,OAAA;AAG3B,KAAK,UAAU,aAAa,CAAC,OAA8B;IAC9D,IAAI,CAAC;QACD,MAAM,iBAAiB,CAAC,OAAO,CAAC,CAAC;QAEjC,YAAY,EAAE,CAAC,SAAS,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,sCAAsC,CAAC,CAAC;QAE/E,MAAM,gBAAgB,GAAG,KAAK,IAAI,EAAE;YAChC,YAAY,EAAE,CAAC,SAAS,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,uDAAuD,CAAC,CAAC;QACpG,CAAC,CAAC;QAEF,OAAO,CAAC,EAAE,CAAC,SAAS,EAAE,gBAAgB,CAAC,CAAC;QACxC,OAAO,CAAC,EAAE,CAAC,QAAQ,EAAE,gBAAgB,CAAC,CAAC;QACvC,OAAO,CAAC,EAAE,CAAC,mBAAmB,EAAE,CAAC,GAAG,EAAE,EAAE;YACpC,YAAY,EAAE,CAAC,SAAS,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,sCAAsC,EAAE,GAAG,CAAC,CAAC;YACrF,gBAAgB,EAAE,CAAC;QACvB,CAAC,CAAC,CAAC;QAEH,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC;IAClC,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACT,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IACrB,CAAC;AACL,CAAC;AAEM,KAAK,UAAU,iBAAiB,CAAC,OAA8B;IAElE,MAAM,qBAAqB,GAAG,IAAI,oCAAoB,CAAC,OAAO,CAAC,CAAC;IAChE,kBAAS,CAAC,GAAG,CAAC,oCAAoB,EAAE,qBAAqB,CAAC,CAAC;IAG3D,MAAM,aAAa,GAAG,IAAI,oBAAY,CAAC,qBAAqB,CAAC,OAAO,CAAC,QAAS,CAAC,CAAC;IAChF,kBAAS,CAAC,GAAG,CAAC,oBAAY,EAAE,aAAa,CAAC,CAAC;IAG3C,MAAM,cAAc,GAAG,IAAI,8BAAoB,CAAC,qBAAqB,EAAE,aAAa,CAAC,CAAC;IACtF,kBAAS,CAAC,GAAG,CAAC,8BAAoB,EAAE,cAAc,CAAC,CAAC;IAEpD,MAAM,QAAQ,GAAG,MAAM,YAAY,EAAE,CAAC,iBAAiB,EAAE;SACpD,MAAM,CAAC,WAAW,CAAC,CAAC;IAEzB,MAAM,kBAAQ,CAAC,OAAO,CAAC,QAAS,EAAE,EAAE,MAAM,EAAE,QAAQ,OAAQ,CAAC,WAAW,IAAI,OAAQ,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;IAChG,kBAAQ,CAAC,GAAG,CAAC,OAAO,EAAE,YAAY,EAAE,CAAC,uBAAuB,EAAE,CAAC,OAAO,CAAC,WAAW,IAAI,2DAA4B,CAAC,GAAG,CAAC,CAAC;IAExH,MAAM,IAAA,4BAAoB,EAAC,QAAS,EAAE,OAAQ,CAAC,WAAW,CAAC,CAAC;IAG5D,MAAM,cAAc,GAAG,IAAI,mBAAU,CAAC,OAAQ,CAAC,YAAa,EAAE,QAAS,CAAC,CAAC;IACzE,kBAAS,CAAC,GAAG,CAAC,mBAAU,EAAE,cAAc,CAAC,CAAC;IAG1C,MAAM,gBAAgB,GAAG,IAAI,0BAAe,CAAC,qBAAsB,CAAC,CAAC;IACrE,kBAAS,CAAC,GAAG,CAAC,0BAAe,EAAE,gBAAgB,CAAC,CAAC;IAGjD,MAAM,8BAA8B,GAAG,IAAI,mCAAsB,CAAC,cAAc,CAAC,CAAC;IAClF,kBAAS,CAAC,GAAG,CAAC,mCAAsB,EAAE,8BAA8B,CAAC,CAAC;IAItE,MAAM,qBAAqB,GAAG,IAAI,sBAAa,EAAE,CAAC;IAClD,kBAAS,CAAC,GAAG,CAAC,sBAAa,EAAE,qBAAqB,CAAC,CAAC;IAEpD,OAAO,CAAC,GAAG,CAAC,wBAAwB,CAAC,CAAC;IAEtC,MAAM,IAAA,oBAAY,EAAC,kFAAkF,CAAC,CAAC;IACvG,MAAM,gBAAgB,GAAG,2CAAoB,CAAC,mBAAmB,EAAE,CAAC;IAEpE,MAAM,oBAAoB,GAAG,IAAI,GAAG,EAAiB,CAAC;IAEtD,KAAK,MAAM,EAAE,OAAO,EAAE,iBAAiB,EAAE,UAAU,EAAE,IAAI,gBAAgB,EAAE,CAAC;QACxE,IAAI,QAAQ,GAAG,oBAAoB,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;QAC3D,IAAI,CAAC,QAAQ,EAAE,CAAC;YACZ,QAAQ,GAAG,kBAAS,CAAC,GAAG,CAAC,iBAAwB,CAAC,CAAC;YACnD,oBAAoB,CAAC,GAAG,CAAC,iBAAiB,EAAE,QAAQ,CAAC,CAAC;QAC1D,CAAC;QAED,MAAM,IAAA,wBAAgB,EAAC,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE;YAC9C,OAAO,QAAQ,CAAC,UAAU,CAAC,CAAC,OAAO,CAAC,CAAC;QACzC,CAAC,CAAC,CAAC;IACP,CAAC;AACL,CAAC;AAED,SAAgB,YAAY;IACxB,OAAO,kBAAS,CAAC,GAAG,CAAC,0BAAc,CAAC,CAAA;AACxC,CAAC;AAED,aAAa,CAAC,EAAC,WAAW,EAAE,2DAA4B,CAAC,GAAG,EAAE,YAAY,EAAE,kBAAkB,EAAC,CAAC,CAAC,IAAI,CAAC,KAAK,EAAC,CAAC,EAAC,EAAE;IAC5G,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC,CAAA;AAC9B,CAAC,CAAC,CAAA","sourcesContent":["import {LibraryManager} from \"./libraries\";\r\nimport {Container} from \"typedi\";\r\nimport mongoose from \"mongoose\";\r\nimport {ConfigurationOptions, ConfigurationService} from \"./libraries/configuration\";\r\nimport {EnvironmentConfigurationType} from \"./libraries/configuration/types/EnvironmentConfigurationType\";\r\nimport {LyxaLogger} from \"./libraries/logger\";\r\nimport {RedisService} from \"./libraries/redis\";\r\nimport {initGlobalConnection} from \"./libraries/mongo\";\r\nimport {SecretManagerService} from \"./libraries/secrets\";\r\nimport {MicroServiceDispatcher} from \"./libraries/dispatcher\";\r\nimport {TwilioService} from \"./libraries/twilio\";\r\nimport {FirebaseService} from \"./libraries/firebase\";\r\nimport {initEventBus, subscribeToEvent} from \"./libraries/event\";\r\nimport {SubscriptionRegistry} from \"./libraries/event/registry/SubscriptionRegistry\";\r\n\r\nexport { ConfigurationOptions } from \"./libraries/configuration\";\r\nexport { EnvironmentConfigurationType } from \"./libraries/configuration/types/EnvironmentConfigurationType\";\r\nexport {\r\n initGlobalConnection,\r\n createGlobalModel,\r\n createGlobalDiscriminatorModel\r\n} from './libraries/mongo';\r\n\r\nexport async function bootstrapCore(options?: ConfigurationOptions) {\r\n try {\r\n await registerLibraries(options);\r\n\r\n getLibraries().getLogger().logger.info(\"Successfully bootstrapped lyxa-core.\");\r\n\r\n const gracefulShutdown = async () => {\r\n getLibraries().getLogger().logger.info('Received shutdown signal, shutting down gracefully...');\r\n };\r\n\r\n process.on('SIGTERM', gracefulShutdown);\r\n process.on('SIGINT', gracefulShutdown);\r\n process.on('uncaughtException', (err) => {\r\n getLibraries().getLogger().logger.error('Uncaught exception, shutting down...', err);\r\n gracefulShutdown();\r\n });\r\n\r\n console.log(\"Created hooks.\");\r\n } catch (e) {\r\n console.error(e);\r\n }\r\n}\r\n\r\nexport async function registerLibraries(options?: ConfigurationOptions) {\r\n // Setup configuration.\r\n const configurationInstance = new ConfigurationService(options);\r\n Container.set(ConfigurationService, configurationInstance);\r\n\r\n // Setup redis.\r\n const redisInstance = new RedisService(configurationInstance.options.redisURL!);\r\n Container.set(RedisService, redisInstance);\r\n\r\n // Setup secret\r\n const secretInstance = new SecretManagerService(configurationInstance, redisInstance);\r\n Container.set(SecretManagerService, secretInstance);\r\n\r\n const mongoUrl = await getLibraries().getSecretsService()\r\n .getKey(\"MONGO_URL\");\r\n\r\n await mongoose.connect(mongoUrl!, { dbName: `lyxa-${options!.environment}-${options!.tenet}` });\r\n mongoose.set('debug', getLibraries().getConfigurationService().options.environment == EnvironmentConfigurationType.DEV);\r\n\r\n await initGlobalConnection(mongoUrl!, options!.environment);\r\n\r\n // Setup logger\r\n const loggerInstance = new LyxaLogger(options!.instanceType!, mongoUrl!);\r\n Container.set(LyxaLogger, loggerInstance);\r\n\r\n // Setup firebase\r\n const firebaseInstance = new FirebaseService(configurationInstance!);\r\n Container.set(FirebaseService, firebaseInstance);\r\n\r\n // Setup microservice dispatcher\r\n const microserviceDispatcherInstance = new MicroServiceDispatcher(secretInstance);\r\n Container.set(MicroServiceDispatcher, microserviceDispatcherInstance);\r\n\r\n\r\n // Setup twilio\r\n const twilioServiceInstance = new TwilioService();\r\n Container.set(TwilioService, twilioServiceInstance);\r\n\r\n console.log(\"Initialized everything\");\r\n\r\n await initEventBus(\"amqps://vgyuplrd:wto6vUYnb4zeBI5lntKT4gj7rT8n1vwg@dog.lmq.cloudamqp.com/vgyuplrd\");\r\n const allSubscriptions = SubscriptionRegistry.getAllSubscriptions();\r\n\r\n const instantiatedServices = new Map<Function, any>();\r\n\r\n for (const { eventId, targetConstructor, methodName } of allSubscriptions) {\r\n let instance = instantiatedServices.get(targetConstructor);\r\n if (!instance) {\r\n instance = Container.get(targetConstructor as any);\r\n instantiatedServices.set(targetConstructor, instance);\r\n }\r\n\r\n await subscribeToEvent(eventId, async (payload) => {\r\n return instance[methodName](payload);\r\n });\r\n }\r\n}\r\n\r\nexport function getLibraries(): LibraryManager {\r\n return Container.get(LibraryManager)\r\n}\r\n\r\nbootstrapCore({environment: EnvironmentConfigurationType.DEV, instanceType: \"attemptedStartup\"}).then(async f => {\r\n console.log(\"Started up.\")\r\n})\r\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"/","sources":["libraries/event/index.ts"],"names":[],"mappings":";;;;;AAQA,oCAOC;AAED,oCAYC;AAED,4CAmCC;AAlED,sDAA2B;AAG3B,IAAI,UAA2B,CAAC;AAChC,IAAI,OAAqB,CAAC;AAE1B,MAAM,aAAa,GAAG,aAAa,CAAC;AAE7B,KAAK,UAAU,YAAY,CAAC,SAAiB;IAChD,UAAU,GAAG,MAAM,iBAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;IAC3C,OAAO,GAAG,MAAM,UAAU,CAAC,aAAa,EAAE,CAAC;IAE3C,MAAM,OAAO,CAAC,cAAc,CAAC,aAAa,EAAE,OAAO,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC;IAExE,OAAO,CAAC,GAAG,CAAC,4CAA4C,CAAC,CAAC;AAC9D,CAAC;AAEM,KAAK,UAAU,YAAY,CAC9B,KAA0B;IAE1B,IAAI,CAAC,OAAO;QAAE,MAAM,IAAI,KAAK,CAAC,mDAAmD,CAAC,CAAC;IAEnF,MAAM,aAAa,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;IAEjE,OAAO,CAAC,OAAO,CAAC,aAAa,EAAE,KAAK,CAAC,OAAO,EAAE,aAAa,EAAE;QACzD,WAAW,EAAE,kBAAkB;KAClC,CAAC,CAAC;IAEH,OAAO,CAAC,GAAG,CAAC,oBAAoB,KAAK,CAAC,OAAO,gBAAgB,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;AAClF,CAAC;AAEM,KAAK,UAAU,gBAAgB,CAClC,OAAe,EACf,SAA0C;IAE1C,IAAI,CAAC,OAAO;QAAE,MAAM,IAAI,KAAK,CAAC,mDAAmD,CAAC,CAAC;IAEnF,MAAM,SAAS,GAAG,GAAG,OAAO,QAAQ,CAAC;IAErC,MAAM,OAAO,CAAC,WAAW,CAAC,SAAS,EAAE;QACjC,OAAO,EAAE,IAAI;KAChB,CAAC,CAAC;IAEH,MAAM,OAAO,CAAC,SAAS,CAAC,SAAS,EAAE,aAAa,EAAE,OAAO,CAAC,CAAC;IAE3D,MAAM,OAAO,CAAC,OAAO,CACjB,SAAS,EACT,KAAK,EAAE,GAAG,EAAE,EAAE;QACV,IAAI,GAAG,KAAK,IAAI,EAAE,CAAC;YACf,MAAM,aAAa,GAAG,GAAG,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC;YAC7C,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;YAE1C,IAAI,CAAC;gBACD,MAAM,SAAS,CAAC,OAAO,CAAC,CAAC;gBAEzB,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YACrB,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACX,OAAO,CAAC,KAAK,CAAC,yBAAyB,OAAO,GAAG,EAAE,GAAG,CAAC,CAAC;YAE5D,CAAC;QACL,CAAC;IACL,CAAC,EACD,EAAC,KAAK,EAAE,KAAK,EAAC,CACjB,CAAC;IAEF,OAAO,CAAC,GAAG,CAAC,wBAAwB,OAAO,eAAe,SAAS,GAAG,CAAC,CAAC;AAC5E,CAAC","sourcesContent":["import amqp from \"amqplib\";\r\nimport { BaseEvent } from \"./BaseEvent\";\r\n\r\nlet connection: amqp.Connection;\r\nlet channel: amqp.Channel;\r\n\r\nconst EXCHANGE_NAME = \"lyxa.events\";\r\n\r\nexport async function initEventBus(rabbitUrl: string) {\r\n connection = await amqp.connect(rabbitUrl);\r\n channel = await connection.createChannel();\r\n\r\n await channel.assertExchange(EXCHANGE_NAME, \"topic\", { durable: true });\r\n\r\n console.log(\"EventBus initialized and exchange asserted\");\r\n}\r\n\r\nexport async function publishEvent<TPayload extends Record<string, unknown>>(\r\n event: BaseEvent<TPayload>\r\n): Promise<void> {\r\n if (!channel) throw new Error(\"Channel not initialized. Call initEventBus first.\");\r\n\r\n const messageBuffer = Buffer.from(JSON.stringify(event.payload));\r\n\r\n channel.publish(EXCHANGE_NAME, event.eventId, messageBuffer, {\r\n contentType: \"application/json\",\r\n });\r\n\r\n console.log(`Published event [${event.eventId}] with payload`, event.payload);\r\n}\r\n\r\nexport async function subscribeToEvent(\r\n eventId: string,\r\n onMessage: (payload: any) => Promise<void>\r\n): Promise<void> {\r\n if (!channel) throw new Error(\"Channel not initialized. Call initEventBus first.\");\r\n\r\n const queueName = `${eventId}-queue`;\r\n\r\n await channel.assertQueue(queueName, {\r\n durable: true,\r\n });\r\n\r\n await channel.bindQueue(queueName, EXCHANGE_NAME, eventId);\r\n\r\n await channel.consume(\r\n queueName,\r\n async (msg) => {\r\n if (msg !== null) {\r\n const payloadString = msg.content.toString();\r\n const payload = JSON.parse(payloadString);\r\n\r\n try {\r\n await onMessage(payload);\r\n // Acknowledge the message as processed\r\n channel.ack(msg);\r\n } catch (err) {\r\n console.error(`Error handling event [${eventId}]`, err);\r\n // Optional: channel.nack(msg) for requeue\r\n }\r\n }\r\n },\r\n {noAck: false}\r\n );\r\n\r\n console.log(`Subscribed to event [${eventId}] on queue [${queueName}]`);\r\n}\r\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"/","sources":["libraries/event/index.ts"],"names":[],"mappings":";;;;;AAQA,oCAOC;AAED,oCAYC;AAED,4CAmCC;AAlED,sDAA2B;AAG3B,IAAI,UAA6B,CAAC;AAClC,IAAI,OAAqB,CAAC;AAE1B,MAAM,aAAa,GAAG,aAAa,CAAC;AAE7B,KAAK,UAAU,YAAY,CAAC,SAAiB;IAChD,UAAU,GAAG,MAAM,iBAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;IAC3C,OAAO,GAAG,MAAM,UAAU,CAAC,aAAa,EAAE,CAAC;IAE3C,MAAM,OAAO,CAAC,cAAc,CAAC,aAAa,EAAE,OAAO,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC;IAExE,OAAO,CAAC,GAAG,CAAC,4CAA4C,CAAC,CAAC;AAC9D,CAAC;AAEM,KAAK,UAAU,YAAY,CAC9B,KAA0B;IAE1B,IAAI,CAAC,OAAO;QAAE,MAAM,IAAI,KAAK,CAAC,mDAAmD,CAAC,CAAC;IAEnF,MAAM,aAAa,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;IAEjE,OAAO,CAAC,OAAO,CAAC,aAAa,EAAE,KAAK,CAAC,OAAO,EAAE,aAAa,EAAE;QACzD,WAAW,EAAE,kBAAkB;KAClC,CAAC,CAAC;IAEH,OAAO,CAAC,GAAG,CAAC,oBAAoB,KAAK,CAAC,OAAO,gBAAgB,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;AAClF,CAAC;AAEM,KAAK,UAAU,gBAAgB,CAClC,OAAe,EACf,SAA0C;IAE1C,IAAI,CAAC,OAAO;QAAE,MAAM,IAAI,KAAK,CAAC,mDAAmD,CAAC,CAAC;IAEnF,MAAM,SAAS,GAAG,GAAG,OAAO,QAAQ,CAAC;IAErC,MAAM,OAAO,CAAC,WAAW,CAAC,SAAS,EAAE;QACjC,OAAO,EAAE,IAAI;KAChB,CAAC,CAAC;IAEH,MAAM,OAAO,CAAC,SAAS,CAAC,SAAS,EAAE,aAAa,EAAE,OAAO,CAAC,CAAC;IAE3D,MAAM,OAAO,CAAC,OAAO,CACjB,SAAS,EACT,KAAK,EAAE,GAAG,EAAE,EAAE;QACV,IAAI,GAAG,KAAK,IAAI,EAAE,CAAC;YACf,MAAM,aAAa,GAAG,GAAG,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC;YAC7C,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;YAE1C,IAAI,CAAC;gBACD,MAAM,SAAS,CAAC,OAAO,CAAC,CAAC;gBAEzB,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YACrB,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACX,OAAO,CAAC,KAAK,CAAC,yBAAyB,OAAO,GAAG,EAAE,GAAG,CAAC,CAAC;YAE5D,CAAC;QACL,CAAC;IACL,CAAC,EACD,EAAC,KAAK,EAAE,KAAK,EAAC,CACjB,CAAC;IAEF,OAAO,CAAC,GAAG,CAAC,wBAAwB,OAAO,eAAe,SAAS,GAAG,CAAC,CAAC;AAC5E,CAAC","sourcesContent":["import amqp from \"amqplib\";\r\nimport { BaseEvent } from \"./BaseEvent\";\r\n\r\nlet connection: amqp.ChannelModel;\r\nlet channel: amqp.Channel;\r\n\r\nconst EXCHANGE_NAME = \"lyxa.events\";\r\n\r\nexport async function initEventBus(rabbitUrl: string) {\r\n connection = await amqp.connect(rabbitUrl);\r\n channel = await connection.createChannel();\r\n\r\n await channel.assertExchange(EXCHANGE_NAME, \"topic\", { durable: true });\r\n\r\n console.log(\"EventBus initialized and exchange asserted\");\r\n}\r\n\r\nexport async function publishEvent<TPayload extends Record<string, unknown>>(\r\n event: BaseEvent<TPayload>\r\n): Promise<void> {\r\n if (!channel) throw new Error(\"Channel not initialized. Call initEventBus first.\");\r\n\r\n const messageBuffer = Buffer.from(JSON.stringify(event.payload));\r\n\r\n channel.publish(EXCHANGE_NAME, event.eventId, messageBuffer, {\r\n contentType: \"application/json\",\r\n });\r\n\r\n console.log(`Published event [${event.eventId}] with payload`, event.payload);\r\n}\r\n\r\nexport async function subscribeToEvent(\r\n eventId: string,\r\n onMessage: (payload: any) => Promise<void>\r\n): Promise<void> {\r\n if (!channel) throw new Error(\"Channel not initialized. Call initEventBus first.\");\r\n\r\n const queueName = `${eventId}-queue`;\r\n\r\n await channel.assertQueue(queueName, {\r\n durable: true,\r\n });\r\n\r\n await channel.bindQueue(queueName, EXCHANGE_NAME, eventId);\r\n\r\n await channel.consume(\r\n queueName,\r\n async (msg) => {\r\n if (msg !== null) {\r\n const payloadString = msg.content.toString();\r\n const payload = JSON.parse(payloadString);\r\n\r\n try {\r\n await onMessage(payload);\r\n // Acknowledge the message as processed\r\n channel.ack(msg);\r\n } catch (err) {\r\n console.error(`Error handling event [${eventId}]`, err);\r\n // Optional: channel.nack(msg) for requeue\r\n }\r\n }\r\n },\r\n {noAck: false}\r\n );\r\n\r\n console.log(`Subscribed to event [${eventId}] on queue [${queueName}]`);\r\n}\r\n"]}
@@ -0,0 +1,11 @@
1
+ import { ReturnModelType, Ref } from '@typegoose/typegoose';
2
+ import { TimeStamps } from '@typegoose/typegoose/lib/defaultClasses';
3
+ import { UpdatedField } from '../../../utilities/enum';
4
+ import { Admin } from './admin.model';
5
+ export declare class ActivityLog extends TimeStamps {
6
+ admin: Ref<Admin>;
7
+ updatedField: UpdatedField;
8
+ oldDocument: any;
9
+ newDocument: any;
10
+ }
11
+ export declare const ActivityLogModel: ReturnModelType<typeof ActivityLog>;
@@ -0,0 +1,44 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.ActivityLogModel = exports.ActivityLog = void 0;
13
+ const typegoose_1 = require("@typegoose/typegoose");
14
+ const defaultClasses_1 = require("@typegoose/typegoose/lib/defaultClasses");
15
+ const enum_1 = require("../../../utilities/enum");
16
+ const admin_model_1 = require("./admin.model");
17
+ let ActivityLog = class ActivityLog extends defaultClasses_1.TimeStamps {
18
+ admin;
19
+ updatedField;
20
+ oldDocument;
21
+ newDocument;
22
+ };
23
+ exports.ActivityLog = ActivityLog;
24
+ __decorate([
25
+ (0, typegoose_1.prop)({ required: true, ref: () => admin_model_1.Admin }),
26
+ __metadata("design:type", Object)
27
+ ], ActivityLog.prototype, "admin", void 0);
28
+ __decorate([
29
+ (0, typegoose_1.prop)({ required: true, type: String, enum: enum_1.UpdatedField }),
30
+ __metadata("design:type", String)
31
+ ], ActivityLog.prototype, "updatedField", void 0);
32
+ __decorate([
33
+ (0, typegoose_1.prop)({ required: true, type: typegoose_1.mongoose.Schema.Types.Mixed }),
34
+ __metadata("design:type", Object)
35
+ ], ActivityLog.prototype, "oldDocument", void 0);
36
+ __decorate([
37
+ (0, typegoose_1.prop)({ required: true, type: typegoose_1.mongoose.Schema.Types.Mixed }),
38
+ __metadata("design:type", Object)
39
+ ], ActivityLog.prototype, "newDocument", void 0);
40
+ exports.ActivityLog = ActivityLog = __decorate([
41
+ (0, typegoose_1.modelOptions)({ schemaOptions: { collection: 'activityLogs' } })
42
+ ], ActivityLog);
43
+ exports.ActivityLogModel = (0, typegoose_1.getModelForClass)(ActivityLog);
44
+ //# sourceMappingURL=activity-log.model.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"activity-log.model.js","sourceRoot":"/","sources":["libraries/mongo/models/activity-log.model.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,oDAA4G;AAC5G,4EAAqE;AACrE,kDAAuD;AACvD,+CAAsC;AAG/B,IAAM,WAAW,GAAjB,MAAM,WAAY,SAAQ,2BAAU;IAEnC,KAAK,CAAc;IAGnB,YAAY,CAAgB;IAG5B,WAAW,CAAO;IAGlB,WAAW,CAAO;CACzB,CAAA;AAZY,kCAAW;AAEhB;IADN,IAAA,gBAAI,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,mBAAK,EAAE,CAAC;;0CACjB;AAGnB;IADN,IAAA,gBAAI,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,mBAAY,EAAE,CAAC;;iDACxB;AAG5B;IADN,IAAA,gBAAI,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAE,oBAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;;gDACnC;AAGlB;IADN,IAAA,gBAAI,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAE,oBAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;;gDACnC;sBAXb,WAAW;IADvB,IAAA,wBAAY,EAAC,EAAE,aAAa,EAAE,EAAE,UAAU,EAAE,cAAc,EAAE,EAAE,CAAC;GACnD,WAAW,CAYvB;AAEY,QAAA,gBAAgB,GAAwC,IAAA,4BAAgB,EAAC,WAAW,CAAC,CAAC","sourcesContent":["import { modelOptions, prop, getModelForClass, ReturnModelType, mongoose, Ref } from '@typegoose/typegoose';\r\nimport { TimeStamps } from '@typegoose/typegoose/lib/defaultClasses';\r\nimport { UpdatedField } from '../../../utilities/enum';\r\nimport { Admin } from './admin.model';\r\n\r\n@modelOptions({ schemaOptions: { collection: 'activityLogs' } })\r\nexport class ActivityLog extends TimeStamps {\r\n\t@prop({ required: true, ref: () => Admin })\r\n\tpublic admin!: Ref<Admin>;\r\n\r\n\t@prop({ required: true, type: String, enum: UpdatedField })\r\n\tpublic updatedField!: UpdatedField;\r\n\r\n\t@prop({ required: true, type: mongoose.Schema.Types.Mixed })\r\n\tpublic oldDocument!: any;\r\n\r\n\t@prop({ required: true, type: mongoose.Schema.Types.Mixed })\r\n\tpublic newDocument!: any;\r\n}\r\n\r\nexport const ActivityLogModel: ReturnModelType<typeof ActivityLog> = getModelForClass(ActivityLog);\r\n"]}
@@ -0,0 +1,11 @@
1
+ import { ReturnModelType, Ref } from '@typegoose/typegoose';
2
+ import { TimeStamps } from '@typegoose/typegoose/lib/defaultClasses';
3
+ import { AdminRole } from '../../../utilities/enum';
4
+ import { Admin } from './admin.model';
5
+ export declare class AdminAccessControl extends TimeStamps {
6
+ email: string;
7
+ password: string;
8
+ admin: Ref<Admin>;
9
+ role: AdminRole;
10
+ }
11
+ export declare const AdminAccessControlModel: ReturnModelType<typeof AdminAccessControl>;
@@ -0,0 +1,55 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ var __importDefault = (this && this.__importDefault) || function (mod) {
12
+ return (mod && mod.__esModule) ? mod : { "default": mod };
13
+ };
14
+ Object.defineProperty(exports, "__esModule", { value: true });
15
+ exports.AdminAccessControlModel = exports.AdminAccessControl = void 0;
16
+ const typegoose_1 = require("@typegoose/typegoose");
17
+ const defaultClasses_1 = require("@typegoose/typegoose/lib/defaultClasses");
18
+ const bcryptjs_1 = __importDefault(require("bcryptjs"));
19
+ const enum_1 = require("../../../utilities/enum");
20
+ const admin_model_1 = require("./admin.model");
21
+ let AdminAccessControl = class AdminAccessControl extends defaultClasses_1.TimeStamps {
22
+ email;
23
+ password;
24
+ admin;
25
+ role;
26
+ };
27
+ exports.AdminAccessControl = AdminAccessControl;
28
+ __decorate([
29
+ (0, typegoose_1.prop)({ required: true, type: String, unique: true }),
30
+ __metadata("design:type", String)
31
+ ], AdminAccessControl.prototype, "email", void 0);
32
+ __decorate([
33
+ (0, typegoose_1.prop)({ required: true, type: String }),
34
+ __metadata("design:type", String)
35
+ ], AdminAccessControl.prototype, "password", void 0);
36
+ __decorate([
37
+ (0, typegoose_1.prop)({ required: true, ref: () => admin_model_1.Admin }),
38
+ __metadata("design:type", Object)
39
+ ], AdminAccessControl.prototype, "admin", void 0);
40
+ __decorate([
41
+ (0, typegoose_1.prop)({ required: true, type: String, enum: enum_1.AdminRole }),
42
+ __metadata("design:type", String)
43
+ ], AdminAccessControl.prototype, "role", void 0);
44
+ exports.AdminAccessControl = AdminAccessControl = __decorate([
45
+ (0, typegoose_1.pre)('save', async function (next) {
46
+ if (this.isModified('password')) {
47
+ const salt = await bcryptjs_1.default.genSalt(10);
48
+ this.password = await bcryptjs_1.default.hash(this.password, salt);
49
+ }
50
+ next();
51
+ }),
52
+ (0, typegoose_1.modelOptions)({ schemaOptions: { collection: 'adminAccessControls' } })
53
+ ], AdminAccessControl);
54
+ exports.AdminAccessControlModel = (0, typegoose_1.getModelForClass)(AdminAccessControl);
55
+ //# sourceMappingURL=admin-access-control.model.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"admin-access-control.model.js","sourceRoot":"/","sources":["libraries/mongo/models/admin-access-control.model.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,oDAAuG;AACvG,4EAAqE;AACrE,wDAA8B;AAC9B,kDAAoD;AACpD,+CAAsC;AAU/B,IAAM,kBAAkB,GAAxB,MAAM,kBAAmB,SAAQ,2BAAU;IAE1C,KAAK,CAAU;IAGf,QAAQ,CAAU;IAGlB,KAAK,CAAc;IAGnB,IAAI,CAAa;CACxB,CAAA;AAZY,gDAAkB;AAEvB;IADN,IAAA,gBAAI,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;;iDAC/B;AAGf;IADN,IAAA,gBAAI,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;;oDACd;AAGlB;IADN,IAAA,gBAAI,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,mBAAK,EAAE,CAAC;;iDACjB;AAGnB;IADN,IAAA,gBAAI,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,gBAAS,EAAE,CAAC;;gDAChC;6BAXZ,kBAAkB;IAR9B,IAAA,eAAG,EAAqB,MAAM,EAAE,KAAK,WAAW,IAAI;QACpD,IAAI,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;YACjC,MAAM,IAAI,GAAG,MAAM,kBAAM,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;YACtC,IAAI,CAAC,QAAQ,GAAG,MAAM,kBAAM,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;QACxD,CAAC;QACD,IAAI,EAAE,CAAC;IACR,CAAC,CAAC;IACD,IAAA,wBAAY,EAAC,EAAE,aAAa,EAAE,EAAE,UAAU,EAAE,qBAAqB,EAAE,EAAE,CAAC;GAC1D,kBAAkB,CAY9B;AAEY,QAAA,uBAAuB,GACnC,IAAA,4BAAgB,EAAC,kBAAkB,CAAC,CAAC","sourcesContent":["import { modelOptions, prop, getModelForClass, pre, ReturnModelType, Ref } from '@typegoose/typegoose';\r\nimport { TimeStamps } from '@typegoose/typegoose/lib/defaultClasses';\r\nimport bcrypt from 'bcryptjs';\r\nimport { AdminRole } from '../../../utilities/enum';\r\nimport { Admin } from './admin.model';\r\n\r\n@pre<AdminAccessControl>('save', async function (next) {\r\n\tif (this.isModified('password')) {\r\n\t\tconst salt = await bcrypt.genSalt(10);\r\n\t\tthis.password = await bcrypt.hash(this.password, salt);\r\n\t}\r\n\tnext();\r\n})\r\n@modelOptions({ schemaOptions: { collection: 'adminAccessControls' } })\r\nexport class AdminAccessControl extends TimeStamps {\r\n\t@prop({ required: true, type: String, unique: true })\r\n\tpublic email!: string;\r\n\r\n\t@prop({ required: true, type: String })\r\n\tpublic password!: string;\r\n\r\n\t@prop({ required: true, ref: () => Admin })\r\n\tpublic admin!: Ref<Admin>;\r\n\r\n\t@prop({ required: true, type: String, enum: AdminRole })\r\n\tpublic role!: AdminRole;\r\n}\r\n\r\nexport const AdminAccessControlModel: ReturnModelType<typeof AdminAccessControl> =\r\n\tgetModelForClass(AdminAccessControl);\r\n"]}
@@ -0,0 +1,10 @@
1
+ import { ReturnModelType } from '@typegoose/typegoose';
2
+ import { TimeStamps } from '@typegoose/typegoose/lib/defaultClasses';
3
+ export declare class Admin extends TimeStamps {
4
+ name: string;
5
+ profilePhoto?: string;
6
+ phoneNumber: string;
7
+ isPhoneVerified?: boolean;
8
+ status?: string;
9
+ }
10
+ export declare const AdminModel: ReturnModelType<typeof Admin>;
@@ -0,0 +1,48 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.AdminModel = exports.Admin = void 0;
13
+ const typegoose_1 = require("@typegoose/typegoose");
14
+ const defaultClasses_1 = require("@typegoose/typegoose/lib/defaultClasses");
15
+ const enum_1 = require("../../../utilities/enum");
16
+ let Admin = class Admin extends defaultClasses_1.TimeStamps {
17
+ name;
18
+ profilePhoto;
19
+ phoneNumber;
20
+ isPhoneVerified;
21
+ status;
22
+ };
23
+ exports.Admin = Admin;
24
+ __decorate([
25
+ (0, typegoose_1.prop)({ required: true, type: String }),
26
+ __metadata("design:type", String)
27
+ ], Admin.prototype, "name", void 0);
28
+ __decorate([
29
+ (0, typegoose_1.prop)({ type: String }),
30
+ __metadata("design:type", String)
31
+ ], Admin.prototype, "profilePhoto", void 0);
32
+ __decorate([
33
+ (0, typegoose_1.prop)({ required: true, type: String }),
34
+ __metadata("design:type", String)
35
+ ], Admin.prototype, "phoneNumber", void 0);
36
+ __decorate([
37
+ (0, typegoose_1.prop)({ type: Boolean, default: false }),
38
+ __metadata("design:type", Boolean)
39
+ ], Admin.prototype, "isPhoneVerified", void 0);
40
+ __decorate([
41
+ (0, typegoose_1.prop)({ type: String, enum: enum_1.Status, default: enum_1.Status.ACTIVE }),
42
+ __metadata("design:type", String)
43
+ ], Admin.prototype, "status", void 0);
44
+ exports.Admin = Admin = __decorate([
45
+ (0, typegoose_1.modelOptions)({ schemaOptions: { collection: 'admins' } })
46
+ ], Admin);
47
+ exports.AdminModel = (0, typegoose_1.getModelForClass)(Admin);
48
+ //# sourceMappingURL=admin.model.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"admin.model.js","sourceRoot":"/","sources":["libraries/mongo/models/admin.model.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,oDAA6F;AAC7F,4EAAqE;AACrE,kDAAiD;AAG1C,IAAM,KAAK,GAAX,MAAM,KAAM,SAAQ,2BAAU;IAE7B,IAAI,CAAU;IAGd,YAAY,CAAU;IAGtB,WAAW,CAAU;IAGrB,eAAe,CAAW;IAG1B,MAAM,CAAU;CACvB,CAAA;AAfY,sBAAK;AAEV;IADN,IAAA,gBAAI,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;;mCAClB;AAGd;IADN,IAAA,gBAAI,EAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;;2CACM;AAGtB;IADN,IAAA,gBAAI,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;;0CACX;AAGrB;IADN,IAAA,gBAAI,EAAC,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;;8CACP;AAG1B;IADN,IAAA,gBAAI,EAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,aAAM,EAAE,OAAO,EAAE,aAAM,CAAC,MAAM,EAAE,CAAC;;qCACtC;gBAdX,KAAK;IADjB,IAAA,wBAAY,EAAC,EAAE,aAAa,EAAE,EAAE,UAAU,EAAE,QAAQ,EAAE,EAAE,CAAC;GAC7C,KAAK,CAejB;AAEY,QAAA,UAAU,GAAkC,IAAA,4BAAgB,EAAC,KAAK,CAAC,CAAC","sourcesContent":["import { modelOptions, prop, getModelForClass, ReturnModelType } from '@typegoose/typegoose';\r\nimport { TimeStamps } from '@typegoose/typegoose/lib/defaultClasses';\r\nimport { Status } from '../../../utilities/enum';\r\n\r\n@modelOptions({ schemaOptions: { collection: 'admins' } })\r\nexport class Admin extends TimeStamps {\r\n\t@prop({ required: true, type: String })\r\n\tpublic name!: string;\r\n\r\n\t@prop({ type: String })\r\n\tpublic profilePhoto?: string;\r\n\r\n\t@prop({ required: true, type: String })\r\n\tpublic phoneNumber!: string;\r\n\r\n\t@prop({ type: Boolean, default: false })\r\n\tpublic isPhoneVerified?: boolean;\r\n\r\n\t@prop({ type: String, enum: Status, default: Status.ACTIVE })\r\n\tpublic status?: string;\r\n}\r\n\r\nexport const AdminModel: ReturnModelType<typeof Admin> = getModelForClass(Admin);\r\n"]}
@@ -0,0 +1,11 @@
1
+ import { ReturnModelType } from '@typegoose/typegoose';
2
+ import { TimeStamps } from '@typegoose/typegoose/lib/defaultClasses';
3
+ import { ItemType, SectionType, Status } from '../../../utilities/enum';
4
+ export declare class AppScreenSetting extends TimeStamps {
5
+ itemType: ItemType;
6
+ section: SectionType;
7
+ alias: string;
8
+ status?: Status;
9
+ sortingOrder?: number;
10
+ }
11
+ export declare const AppScreenSettingModel: ReturnModelType<typeof AppScreenSetting>;
@@ -0,0 +1,48 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.AppScreenSettingModel = exports.AppScreenSetting = void 0;
13
+ const typegoose_1 = require("@typegoose/typegoose");
14
+ const defaultClasses_1 = require("@typegoose/typegoose/lib/defaultClasses");
15
+ const enum_1 = require("../../../utilities/enum");
16
+ let AppScreenSetting = class AppScreenSetting extends defaultClasses_1.TimeStamps {
17
+ itemType;
18
+ section;
19
+ alias;
20
+ status;
21
+ sortingOrder;
22
+ };
23
+ exports.AppScreenSetting = AppScreenSetting;
24
+ __decorate([
25
+ (0, typegoose_1.prop)({ required: true, type: String, enum: enum_1.ItemType }),
26
+ __metadata("design:type", String)
27
+ ], AppScreenSetting.prototype, "itemType", void 0);
28
+ __decorate([
29
+ (0, typegoose_1.prop)({ required: true, type: String, enum: enum_1.SectionType }),
30
+ __metadata("design:type", String)
31
+ ], AppScreenSetting.prototype, "section", void 0);
32
+ __decorate([
33
+ (0, typegoose_1.prop)({ required: true, type: String }),
34
+ __metadata("design:type", String)
35
+ ], AppScreenSetting.prototype, "alias", void 0);
36
+ __decorate([
37
+ (0, typegoose_1.prop)({ type: String, enum: enum_1.Status, default: enum_1.Status.ACTIVE }),
38
+ __metadata("design:type", String)
39
+ ], AppScreenSetting.prototype, "status", void 0);
40
+ __decorate([
41
+ (0, typegoose_1.prop)({ type: Number, default: 0 }),
42
+ __metadata("design:type", Number)
43
+ ], AppScreenSetting.prototype, "sortingOrder", void 0);
44
+ exports.AppScreenSetting = AppScreenSetting = __decorate([
45
+ (0, typegoose_1.modelOptions)({ schemaOptions: { collection: 'appScreenSettings' } })
46
+ ], AppScreenSetting);
47
+ exports.AppScreenSettingModel = (0, typegoose_1.getModelForClass)(AppScreenSetting);
48
+ //# sourceMappingURL=app-screen-setting.model.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"app-screen-setting.model.js","sourceRoot":"/","sources":["libraries/mongo/models/app-screen-setting.model.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,oDAA6F;AAC7F,4EAAqE;AACrE,kDAAwE;AAGjE,IAAM,gBAAgB,GAAtB,MAAM,gBAAiB,SAAQ,2BAAU;IAExC,QAAQ,CAAY;IAGpB,OAAO,CAAe;IAGtB,KAAK,CAAU;IAGf,MAAM,CAAU;IAGhB,YAAY,CAAU;CAC7B,CAAA;AAfY,4CAAgB;AAErB;IADN,IAAA,gBAAI,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,eAAQ,EAAE,CAAC;;kDAC5B;AAGpB;IADN,IAAA,gBAAI,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,kBAAW,EAAE,CAAC;;iDAC7B;AAGtB;IADN,IAAA,gBAAI,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;;+CACjB;AAGf;IADN,IAAA,gBAAI,EAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,aAAM,EAAE,OAAO,EAAE,aAAM,CAAC,MAAM,EAAE,CAAC;;gDACtC;AAGhB;IADN,IAAA,gBAAI,EAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC;;sDACN;2BAdjB,gBAAgB;IAD5B,IAAA,wBAAY,EAAC,EAAE,aAAa,EAAE,EAAE,UAAU,EAAE,mBAAmB,EAAE,EAAE,CAAC;GACxD,gBAAgB,CAe5B;AAEY,QAAA,qBAAqB,GACjC,IAAA,4BAAgB,EAAC,gBAAgB,CAAC,CAAC","sourcesContent":["import { getModelForClass, modelOptions, prop, ReturnModelType } from '@typegoose/typegoose';\r\nimport { TimeStamps } from '@typegoose/typegoose/lib/defaultClasses';\r\nimport { ItemType, SectionType, Status } from '../../../utilities/enum';\r\n\r\n@modelOptions({ schemaOptions: { collection: 'appScreenSettings' } })\r\nexport class AppScreenSetting extends TimeStamps {\r\n\t@prop({ required: true, type: String, enum: ItemType })\r\n\tpublic itemType!: ItemType;\r\n\r\n\t@prop({ required: true, type: String, enum: SectionType })\r\n\tpublic section!: SectionType;\r\n\r\n\t@prop({ required: true, type: String })\r\n\tpublic alias!: string;\r\n\r\n\t@prop({ type: String, enum: Status, default: Status.ACTIVE })\r\n\tpublic status?: Status;\r\n\r\n\t@prop({ type: Number, default: 0 })\r\n\tpublic sortingOrder?: number;\r\n}\r\n\r\nexport const AppScreenSettingModel: ReturnModelType<typeof AppScreenSetting> =\r\n\tgetModelForClass(AppScreenSetting);\r\n"]}
@@ -0,0 +1,15 @@
1
+ import { Ref, ReturnModelType } from '@typegoose/typegoose';
2
+ import { TimeStamps } from '@typegoose/typegoose/lib/defaultClasses';
3
+ import { AttributeItem } from './embedded/attribute-item.model';
4
+ import { AttributeItemSelectionType } from '../../../utilities/enum';
5
+ import { Shop } from './shop.model';
6
+ export declare class Attribute extends TimeStamps {
7
+ shop: Ref<Shop>;
8
+ name: string;
9
+ isRequired?: boolean;
10
+ selectionType: AttributeItemSelectionType;
11
+ minimumRequiredItems?: number;
12
+ maximumRequiredItems?: number;
13
+ items?: AttributeItem[];
14
+ }
15
+ export declare const AttributeModel: ReturnModelType<typeof Attribute>;
@@ -0,0 +1,65 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.AttributeModel = exports.Attribute = void 0;
13
+ const typegoose_1 = require("@typegoose/typegoose");
14
+ const defaultClasses_1 = require("@typegoose/typegoose/lib/defaultClasses");
15
+ const attribute_item_model_1 = require("./embedded/attribute-item.model");
16
+ const enum_1 = require("../../../utilities/enum");
17
+ const shop_model_1 = require("./shop.model");
18
+ let Attribute = class Attribute extends defaultClasses_1.TimeStamps {
19
+ shop;
20
+ name;
21
+ isRequired;
22
+ selectionType;
23
+ minimumRequiredItems;
24
+ maximumRequiredItems;
25
+ items;
26
+ };
27
+ exports.Attribute = Attribute;
28
+ __decorate([
29
+ (0, typegoose_1.prop)({ required: true, ref: () => shop_model_1.Shop }),
30
+ __metadata("design:type", Object)
31
+ ], Attribute.prototype, "shop", void 0);
32
+ __decorate([
33
+ (0, typegoose_1.prop)({ required: true, type: String }),
34
+ __metadata("design:type", String)
35
+ ], Attribute.prototype, "name", void 0);
36
+ __decorate([
37
+ (0, typegoose_1.prop)({ type: Boolean, default: false }),
38
+ __metadata("design:type", Boolean)
39
+ ], Attribute.prototype, "isRequired", void 0);
40
+ __decorate([
41
+ (0, typegoose_1.prop)({
42
+ required: true,
43
+ type: String,
44
+ enum: enum_1.AttributeItemSelectionType,
45
+ default: enum_1.AttributeItemSelectionType.SINGLE,
46
+ }),
47
+ __metadata("design:type", String)
48
+ ], Attribute.prototype, "selectionType", void 0);
49
+ __decorate([
50
+ (0, typegoose_1.prop)({ type: Number, min: 0, default: 0 }),
51
+ __metadata("design:type", Number)
52
+ ], Attribute.prototype, "minimumRequiredItems", void 0);
53
+ __decorate([
54
+ (0, typegoose_1.prop)({ type: Number, min: 0, default: 0 }),
55
+ __metadata("design:type", Number)
56
+ ], Attribute.prototype, "maximumRequiredItems", void 0);
57
+ __decorate([
58
+ (0, typegoose_1.prop)({ type: [attribute_item_model_1.AttributeItem], default: [] }),
59
+ __metadata("design:type", Array)
60
+ ], Attribute.prototype, "items", void 0);
61
+ exports.Attribute = Attribute = __decorate([
62
+ (0, typegoose_1.modelOptions)({ schemaOptions: { collection: 'attributes' } })
63
+ ], Attribute);
64
+ exports.AttributeModel = (0, typegoose_1.getModelForClass)(Attribute);
65
+ //# sourceMappingURL=attribute.model.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"attribute.model.js","sourceRoot":"/","sources":["libraries/mongo/models/attribute.model.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,oDAAkG;AAClG,4EAAqE;AACrE,0EAAgE;AAChE,kDAAqE;AACrE,6CAAoC;AAG7B,IAAM,SAAS,GAAf,MAAM,SAAU,SAAQ,2BAAU;IAEjC,IAAI,CAAa;IAGjB,IAAI,CAAU;IAGd,UAAU,CAAW;IAQrB,aAAa,CAA8B;IAG3C,oBAAoB,CAAU;IAG9B,oBAAoB,CAAU;IAG9B,KAAK,CAAmB;CAC/B,CAAA;AA1BY,8BAAS;AAEd;IADN,IAAA,gBAAI,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,iBAAI,EAAE,CAAC;;uCAClB;AAGjB;IADN,IAAA,gBAAI,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;;uCAClB;AAGd;IADN,IAAA,gBAAI,EAAC,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;;6CACZ;AAQrB;IANN,IAAA,gBAAI,EAAC;QACL,QAAQ,EAAE,IAAI;QACd,IAAI,EAAE,MAAM;QACZ,IAAI,EAAE,iCAA0B;QAChC,OAAO,EAAE,iCAA0B,CAAC,MAAM;KAC1C,CAAC;;gDACgD;AAG3C;IADN,IAAA,gBAAI,EAAC,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC;;uDACN;AAG9B;IADN,IAAA,gBAAI,EAAC,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC;;uDACN;AAG9B;IADN,IAAA,gBAAI,EAAC,EAAE,IAAI,EAAE,CAAC,oCAAa,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC;;wCACd;oBAzBnB,SAAS;IADrB,IAAA,wBAAY,EAAC,EAAE,aAAa,EAAE,EAAE,UAAU,EAAE,YAAY,EAAE,EAAE,CAAC;GACjD,SAAS,CA0BrB;AAEY,QAAA,cAAc,GAAsC,IAAA,4BAAgB,EAAC,SAAS,CAAC,CAAC","sourcesContent":["import { getModelForClass, modelOptions, prop, Ref, ReturnModelType } from '@typegoose/typegoose';\r\nimport { TimeStamps } from '@typegoose/typegoose/lib/defaultClasses';\r\nimport { AttributeItem } from './embedded/attribute-item.model';\r\nimport { AttributeItemSelectionType } from '../../../utilities/enum';\r\nimport { Shop } from './shop.model';\r\n\r\n@modelOptions({ schemaOptions: { collection: 'attributes' } })\r\nexport class Attribute extends TimeStamps {\r\n\t@prop({ required: true, ref: () => Shop })\r\n\tpublic shop!: Ref<Shop>;\r\n\r\n\t@prop({ required: true, type: String })\r\n\tpublic name!: string;\r\n\r\n\t@prop({ type: Boolean, default: false })\r\n\tpublic isRequired?: boolean;\r\n\r\n\t@prop({\r\n\t\trequired: true,\r\n\t\ttype: String,\r\n\t\tenum: AttributeItemSelectionType,\r\n\t\tdefault: AttributeItemSelectionType.SINGLE,\r\n\t})\r\n\tpublic selectionType!: AttributeItemSelectionType;\r\n\r\n\t@prop({ type: Number, min: 0, default: 0 })\r\n\tpublic minimumRequiredItems?: number;\r\n\r\n\t@prop({ type: Number, min: 0, default: 0 })\r\n\tpublic maximumRequiredItems?: number;\r\n\r\n\t@prop({ type: [AttributeItem], default: [] })\r\n\tpublic items?: AttributeItem[];\r\n}\r\n\r\nexport const AttributeModel: ReturnModelType<typeof Attribute> = getModelForClass(Attribute);\r\n"]}
@@ -0,0 +1,8 @@
1
+ import { Ref, ReturnModelType } from '@typegoose/typegoose';
2
+ import { AuthIdentityType } from '../../../utilities/enum';
3
+ import { User } from './user.model';
4
+ export declare class AuthIdentity {
5
+ user: Ref<User>;
6
+ type: AuthIdentityType;
7
+ }
8
+ export declare const AuthIdentityModel: ReturnModelType<typeof AuthIdentity>;
@@ -0,0 +1,33 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.AuthIdentityModel = exports.AuthIdentity = void 0;
13
+ const typegoose_1 = require("@typegoose/typegoose");
14
+ const enum_1 = require("../../../utilities/enum");
15
+ const user_model_1 = require("./user.model");
16
+ let AuthIdentity = class AuthIdentity {
17
+ user;
18
+ type;
19
+ };
20
+ exports.AuthIdentity = AuthIdentity;
21
+ __decorate([
22
+ (0, typegoose_1.prop)({ required: true, ref: () => user_model_1.User }),
23
+ __metadata("design:type", Object)
24
+ ], AuthIdentity.prototype, "user", void 0);
25
+ __decorate([
26
+ (0, typegoose_1.prop)({ required: true, type: String, enum: enum_1.AuthIdentityType }),
27
+ __metadata("design:type", String)
28
+ ], AuthIdentity.prototype, "type", void 0);
29
+ exports.AuthIdentity = AuthIdentity = __decorate([
30
+ (0, typegoose_1.modelOptions)({ schemaOptions: { collection: 'authIdentities', discriminatorKey: 'type' } })
31
+ ], AuthIdentity);
32
+ exports.AuthIdentityModel = (0, typegoose_1.getModelForClass)(AuthIdentity);
33
+ //# sourceMappingURL=auth-identity.model.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"auth-identity.model.js","sourceRoot":"/","sources":["libraries/mongo/models/auth-identity.model.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,oDAAkG;AAClG,kDAA2D;AAC3D,6CAAoC;AAG7B,IAAM,YAAY,GAAlB,MAAM,YAAY;IAEjB,IAAI,CAAa;IAGjB,IAAI,CAAoB;CAC/B,CAAA;AANY,oCAAY;AAEjB;IADN,IAAA,gBAAI,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,iBAAI,EAAE,CAAC;;0CAClB;AAGjB;IADN,IAAA,gBAAI,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,uBAAgB,EAAE,CAAC;;0CAChC;uBALnB,YAAY;IADxB,IAAA,wBAAY,EAAC,EAAE,aAAa,EAAE,EAAE,UAAU,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,EAAE,EAAE,CAAC;GAC/E,YAAY,CAMxB;AAEY,QAAA,iBAAiB,GAAyC,IAAA,4BAAgB,EAAC,YAAY,CAAC,CAAC","sourcesContent":["import { getModelForClass, modelOptions, prop, Ref, ReturnModelType } from '@typegoose/typegoose';\r\nimport { AuthIdentityType } from '../../../utilities/enum';\r\nimport { User } from './user.model';\r\n\r\n@modelOptions({ schemaOptions: { collection: 'authIdentities', discriminatorKey: 'type' } })\r\nexport class AuthIdentity {\r\n\t@prop({ required: true, ref: () => User })\r\n\tpublic user!: Ref<User>;\r\n\r\n\t@prop({ required: true, type: String, enum: AuthIdentityType })\r\n\tpublic type!: AuthIdentityType;\r\n}\r\n\r\nexport const AuthIdentityModel: ReturnModelType<typeof AuthIdentity> = getModelForClass(AuthIdentity);\r\n"]}
@@ -0,0 +1,22 @@
1
+ import { ReturnModelType, Ref } from '@typegoose/typegoose';
2
+ import { TimeStamps } from '@typegoose/typegoose/lib/defaultClasses';
3
+ import { BannerClickType, BannerLinkType, BannerUserType, ItemType, Status } from '../../../utilities/enum';
4
+ import { Shop } from './shop.model';
5
+ import { Product } from './product.model';
6
+ import { ListContainer } from './list-container.model';
7
+ export declare class Banner extends TimeStamps {
8
+ title: string;
9
+ image: string;
10
+ itemType: ItemType;
11
+ status?: Status;
12
+ visibility?: BannerUserType;
13
+ isClickable?: boolean;
14
+ clickType?: BannerClickType;
15
+ linkType?: BannerLinkType;
16
+ link?: string;
17
+ shop?: Ref<Shop>;
18
+ product?: Ref<Product>;
19
+ listContainer?: Ref<ListContainer>;
20
+ sortingOrder?: number;
21
+ }
22
+ export declare const BannerModel: ReturnModelType<typeof Banner>;
@@ -0,0 +1,91 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.BannerModel = exports.Banner = void 0;
13
+ const typegoose_1 = require("@typegoose/typegoose");
14
+ const defaultClasses_1 = require("@typegoose/typegoose/lib/defaultClasses");
15
+ const enum_1 = require("../../../utilities/enum");
16
+ const shop_model_1 = require("./shop.model");
17
+ const product_model_1 = require("./product.model");
18
+ const list_container_model_1 = require("./list-container.model");
19
+ let Banner = class Banner extends defaultClasses_1.TimeStamps {
20
+ title;
21
+ image;
22
+ itemType;
23
+ status;
24
+ visibility;
25
+ isClickable;
26
+ clickType;
27
+ linkType;
28
+ link;
29
+ shop;
30
+ product;
31
+ listContainer;
32
+ sortingOrder;
33
+ };
34
+ exports.Banner = Banner;
35
+ __decorate([
36
+ (0, typegoose_1.prop)({ required: true, type: String }),
37
+ __metadata("design:type", String)
38
+ ], Banner.prototype, "title", void 0);
39
+ __decorate([
40
+ (0, typegoose_1.prop)({ required: true, type: String }),
41
+ __metadata("design:type", String)
42
+ ], Banner.prototype, "image", void 0);
43
+ __decorate([
44
+ (0, typegoose_1.prop)({ required: true, type: String, enum: enum_1.ItemType }),
45
+ __metadata("design:type", String)
46
+ ], Banner.prototype, "itemType", void 0);
47
+ __decorate([
48
+ (0, typegoose_1.prop)({ type: String, enum: enum_1.Status, default: enum_1.Status.ACTIVE }),
49
+ __metadata("design:type", String)
50
+ ], Banner.prototype, "status", void 0);
51
+ __decorate([
52
+ (0, typegoose_1.prop)({ type: String, enum: enum_1.BannerUserType, default: enum_1.BannerUserType.ALL }),
53
+ __metadata("design:type", String)
54
+ ], Banner.prototype, "visibility", void 0);
55
+ __decorate([
56
+ (0, typegoose_1.prop)({ type: Boolean, default: false }),
57
+ __metadata("design:type", Boolean)
58
+ ], Banner.prototype, "isClickable", void 0);
59
+ __decorate([
60
+ (0, typegoose_1.prop)({ type: String, enum: enum_1.BannerClickType }),
61
+ __metadata("design:type", String)
62
+ ], Banner.prototype, "clickType", void 0);
63
+ __decorate([
64
+ (0, typegoose_1.prop)({ type: String, enum: enum_1.BannerLinkType }),
65
+ __metadata("design:type", String)
66
+ ], Banner.prototype, "linkType", void 0);
67
+ __decorate([
68
+ (0, typegoose_1.prop)({ type: String, trim: true }),
69
+ __metadata("design:type", String)
70
+ ], Banner.prototype, "link", void 0);
71
+ __decorate([
72
+ (0, typegoose_1.prop)({ ref: () => shop_model_1.Shop }),
73
+ __metadata("design:type", Object)
74
+ ], Banner.prototype, "shop", void 0);
75
+ __decorate([
76
+ (0, typegoose_1.prop)({ ref: () => product_model_1.Product }),
77
+ __metadata("design:type", Object)
78
+ ], Banner.prototype, "product", void 0);
79
+ __decorate([
80
+ (0, typegoose_1.prop)({ ref: () => list_container_model_1.ListContainer }),
81
+ __metadata("design:type", Object)
82
+ ], Banner.prototype, "listContainer", void 0);
83
+ __decorate([
84
+ (0, typegoose_1.prop)({ type: Number, default: 0 }),
85
+ __metadata("design:type", Number)
86
+ ], Banner.prototype, "sortingOrder", void 0);
87
+ exports.Banner = Banner = __decorate([
88
+ (0, typegoose_1.modelOptions)({ schemaOptions: { collection: 'banners' } })
89
+ ], Banner);
90
+ exports.BannerModel = (0, typegoose_1.getModelForClass)(Banner);
91
+ //# sourceMappingURL=banner.model.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"banner.model.js","sourceRoot":"/","sources":["libraries/mongo/models/banner.model.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,oDAA4G;AAC5G,4EAAqE;AACrE,kDAA4G;AAC5G,6CAAoC;AACpC,mDAA0C;AAC1C,iEAAuD;AAGhD,IAAM,MAAM,GAAZ,MAAM,MAAO,SAAQ,2BAAU;IAE9B,KAAK,CAAU;IAGf,KAAK,CAAU;IAGf,QAAQ,CAAY;IAGpB,MAAM,CAAU;IAGhB,UAAU,CAAkB;IAG5B,WAAW,CAAW;IAGtB,SAAS,CAAmB;IAG5B,QAAQ,CAAkB;IAG1B,IAAI,CAAU;IAGd,IAAI,CAAa;IAGjB,OAAO,CAAgB;IAGvB,aAAa,CAAsB;IAGnC,YAAY,CAAU;CAC7B,CAAA;AAvCY,wBAAM;AAEX;IADN,IAAA,gBAAI,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;;qCACjB;AAGf;IADN,IAAA,gBAAI,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;;qCACjB;AAGf;IADN,IAAA,gBAAI,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,eAAQ,EAAE,CAAC;;wCAC5B;AAGpB;IADN,IAAA,gBAAI,EAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,aAAM,EAAE,OAAO,EAAE,aAAM,CAAC,MAAM,EAAE,CAAC;;sCACtC;AAGhB;IADN,IAAA,gBAAI,EAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,qBAAc,EAAE,OAAO,EAAE,qBAAc,CAAC,GAAG,EAAE,CAAC;;0CACvC;AAG5B;IADN,IAAA,gBAAI,EAAC,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;;2CACX;AAGtB;IADN,IAAA,gBAAI,EAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,sBAAe,EAAE,CAAC;;yCACX;AAG5B;IADN,IAAA,gBAAI,EAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,qBAAc,EAAE,CAAC;;wCACZ;AAG1B;IADN,IAAA,gBAAI,EAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;;oCACd;AAGd;IADN,IAAA,gBAAI,EAAC,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,iBAAI,EAAE,CAAC;;oCACF;AAGjB;IADN,IAAA,gBAAI,EAAC,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,uBAAO,EAAE,CAAC;;uCACC;AAGvB;IADN,IAAA,gBAAI,EAAC,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,oCAAa,EAAE,CAAC;;6CACO;AAGnC;IADN,IAAA,gBAAI,EAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC;;4CACN;iBAtCjB,MAAM;IADlB,IAAA,wBAAY,EAAC,EAAE,aAAa,EAAE,EAAE,UAAU,EAAE,SAAS,EAAE,EAAE,CAAC;GAC9C,MAAM,CAuClB;AAEY,QAAA,WAAW,GAAmC,IAAA,4BAAgB,EAAC,MAAM,CAAC,CAAC","sourcesContent":["import { modelOptions, prop, getModelForClass, ReturnModelType, mongoose, Ref } from '@typegoose/typegoose';\r\nimport { TimeStamps } from '@typegoose/typegoose/lib/defaultClasses';\r\nimport { BannerClickType, BannerLinkType, BannerUserType, ItemType, Status } from '../../../utilities/enum';\r\nimport { Shop } from './shop.model';\r\nimport { Product } from './product.model';\r\nimport { ListContainer } from './list-container.model';\r\n\r\n@modelOptions({ schemaOptions: { collection: 'banners' } })\r\nexport class Banner extends TimeStamps {\r\n\t@prop({ required: true, type: String })\r\n\tpublic title!: string;\r\n\r\n\t@prop({ required: true, type: String })\r\n\tpublic image!: string;\r\n\r\n\t@prop({ required: true, type: String, enum: ItemType })\r\n\tpublic itemType!: ItemType;\r\n\r\n\t@prop({ type: String, enum: Status, default: Status.ACTIVE })\r\n\tpublic status?: Status;\r\n\r\n\t@prop({ type: String, enum: BannerUserType, default: BannerUserType.ALL })\r\n\tpublic visibility?: BannerUserType;\r\n\r\n\t@prop({ type: Boolean, default: false })\r\n\tpublic isClickable?: boolean;\r\n\r\n\t@prop({ type: String, enum: BannerClickType })\r\n\tpublic clickType?: BannerClickType;\r\n\r\n\t@prop({ type: String, enum: BannerLinkType })\r\n\tpublic linkType?: BannerLinkType;\r\n\r\n\t@prop({ type: String, trim: true })\r\n\tpublic link?: string;\r\n\r\n\t@prop({ ref: () => Shop })\r\n\tpublic shop?: Ref<Shop>;\r\n\r\n\t@prop({ ref: () => Product })\r\n\tpublic product?: Ref<Product>;\r\n\r\n\t@prop({ ref: () => ListContainer })\r\n\tpublic listContainer?: Ref<ListContainer>;\r\n\r\n\t@prop({ type: Number, default: 0 })\r\n\tpublic sortingOrder?: number;\r\n}\r\n\r\nexport const BannerModel: ReturnModelType<typeof Banner> = getModelForClass(Banner);\r\n"]}