@ozdao/martyrs 0.2.519 → 0.2.520

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 (341) hide show
  1. package/dist/chats.server.cjs +198 -1
  2. package/dist/chats.server.js +198 -1
  3. package/dist/{main-Wr1_4rwl.cjs → main-BM3GslOO.cjs} +6 -6
  4. package/dist/{main-DgGUrhjT.js → main-Qcn7YlTx.js} +1832 -1828
  5. package/dist/martyrs/src/components/Address/{Address.vue2.cjs → Address.vue.cjs} +2 -2
  6. package/dist/martyrs/src/components/Address/{Address.vue2.js.map → Address.vue.cjs.map} +1 -1
  7. package/dist/martyrs/src/components/Address/{Address.vue2.js → Address.vue.js} +2 -2
  8. package/dist/martyrs/src/components/Address/Address.vue.js.map +1 -0
  9. package/dist/martyrs/src/components/Feed/Feed.vue.cjs +0 -1
  10. package/dist/martyrs/src/components/Feed/Feed.vue.cjs.map +1 -1
  11. package/dist/martyrs/src/components/Feed/Feed.vue.js +0 -1
  12. package/dist/martyrs/src/components/Feed/Feed.vue.js.map +1 -1
  13. package/dist/martyrs/src/components/LocationMarker/{LocationMarker.vue2.cjs → LocationMarker.vue.cjs} +2 -2
  14. package/dist/martyrs/src/components/LocationMarker/{LocationMarker.vue2.js.map → LocationMarker.vue.cjs.map} +1 -1
  15. package/dist/martyrs/src/components/LocationMarker/{LocationMarker.vue2.js → LocationMarker.vue.js} +2 -2
  16. package/dist/martyrs/src/components/LocationMarker/LocationMarker.vue.js.map +1 -0
  17. package/dist/martyrs/src/components/Select/{Select.vue2.cjs → Select.vue.cjs} +2 -2
  18. package/dist/martyrs/src/components/Select/{Select.vue2.js.map → Select.vue.cjs.map} +1 -1
  19. package/dist/martyrs/src/components/Select/{Select.vue2.js → Select.vue.js} +2 -2
  20. package/dist/martyrs/src/components/Select/Select.vue.js.map +1 -0
  21. package/dist/martyrs/src/modules/auth/views/components/blocks/CardUser.vue.cjs +2 -2
  22. package/dist/martyrs/src/modules/auth/views/components/blocks/CardUser.vue.js +2 -2
  23. package/dist/martyrs/src/modules/auth/views/components/layouts/Auth.vue.cjs +1 -1
  24. package/dist/martyrs/src/modules/auth/views/components/layouts/Auth.vue.cjs.map +1 -1
  25. package/dist/martyrs/src/modules/auth/views/components/layouts/Auth.vue.js +1 -1
  26. package/dist/martyrs/src/modules/auth/views/components/layouts/Auth.vue.js.map +1 -1
  27. package/dist/martyrs/src/modules/auth/views/components/pages/Invite.vue.cjs +2 -2
  28. package/dist/martyrs/src/modules/auth/views/components/pages/Invite.vue.cjs.map +1 -1
  29. package/dist/martyrs/src/modules/auth/views/components/pages/Invite.vue.js +4 -4
  30. package/dist/martyrs/src/modules/auth/views/components/pages/Invite.vue.js.map +1 -1
  31. package/dist/martyrs/src/modules/auth/views/components/pages/Profile.vue.cjs +40 -50
  32. package/dist/martyrs/src/modules/auth/views/components/pages/Profile.vue.cjs.map +1 -1
  33. package/dist/martyrs/src/modules/auth/views/components/pages/Profile.vue.js +59 -69
  34. package/dist/martyrs/src/modules/auth/views/components/pages/Profile.vue.js.map +1 -1
  35. package/dist/martyrs/src/modules/auth/views/components/sections/SliderFeatures.vue.cjs +11 -13
  36. package/dist/martyrs/src/modules/auth/views/components/sections/SliderFeatures.vue.cjs.map +1 -1
  37. package/dist/martyrs/src/modules/auth/views/components/sections/SliderFeatures.vue.js +11 -13
  38. package/dist/martyrs/src/modules/auth/views/components/sections/SliderFeatures.vue.js.map +1 -1
  39. package/dist/martyrs/src/modules/auth/views/store/auth.cjs +9 -0
  40. package/dist/martyrs/src/modules/auth/views/store/auth.cjs.map +1 -1
  41. package/dist/martyrs/src/modules/auth/views/store/auth.js +9 -0
  42. package/dist/martyrs/src/modules/auth/views/store/auth.js.map +1 -1
  43. package/dist/martyrs/src/modules/chats/components/blocks/ChatMessage.vue.cjs +27 -11
  44. package/dist/martyrs/src/modules/chats/components/blocks/ChatMessage.vue.cjs.map +1 -1
  45. package/dist/martyrs/src/modules/chats/components/blocks/ChatMessage.vue.js +28 -12
  46. package/dist/martyrs/src/modules/chats/components/blocks/ChatMessage.vue.js.map +1 -1
  47. package/dist/martyrs/src/modules/chats/components/sections/ChatWindow.vue.cjs +62 -0
  48. package/dist/martyrs/src/modules/chats/components/sections/ChatWindow.vue.cjs.map +1 -1
  49. package/dist/martyrs/src/modules/chats/components/sections/ChatWindow.vue.js +63 -1
  50. package/dist/martyrs/src/modules/chats/components/sections/ChatWindow.vue.js.map +1 -1
  51. package/dist/martyrs/src/modules/chats/store/chat.store.cjs +60 -1
  52. package/dist/martyrs/src/modules/chats/store/chat.store.cjs.map +1 -1
  53. package/dist/martyrs/src/modules/chats/store/chat.store.js +60 -1
  54. package/dist/martyrs/src/modules/chats/store/chat.store.js.map +1 -1
  55. package/dist/martyrs/src/modules/community/components/layouts/Community.vue.cjs +3 -3
  56. package/dist/martyrs/src/modules/community/components/layouts/Community.vue.cjs.map +1 -1
  57. package/dist/martyrs/src/modules/community/components/layouts/Community.vue.js +3 -3
  58. package/dist/martyrs/src/modules/community/components/layouts/Community.vue.js.map +1 -1
  59. package/dist/martyrs/src/modules/community/components/pages/BlogPost.vue.cjs +1 -1
  60. package/dist/martyrs/src/modules/community/components/pages/BlogPost.vue.js +1 -1
  61. package/dist/martyrs/src/modules/community/components/pages/Posts.vue.cjs +50 -368
  62. package/dist/martyrs/src/modules/community/components/pages/Posts.vue.cjs.map +1 -1
  63. package/dist/martyrs/src/modules/community/components/pages/Posts.vue.js +53 -371
  64. package/dist/martyrs/src/modules/community/components/pages/Posts.vue.js.map +1 -1
  65. package/dist/martyrs/src/modules/events/components/pages/EditEventTickets.vue.cjs +1 -1
  66. package/dist/martyrs/src/modules/events/components/pages/EditEventTickets.vue.cjs.map +1 -1
  67. package/dist/martyrs/src/modules/events/components/pages/EditEventTickets.vue.js +1 -1
  68. package/dist/martyrs/src/modules/events/components/pages/EditEventTickets.vue.js.map +1 -1
  69. package/dist/martyrs/src/modules/events/components/pages/Event.vue.cjs +0 -1
  70. package/dist/martyrs/src/modules/events/components/pages/Event.vue.cjs.map +1 -1
  71. package/dist/martyrs/src/modules/events/components/pages/Event.vue.js +0 -1
  72. package/dist/martyrs/src/modules/events/components/pages/Event.vue.js.map +1 -1
  73. package/dist/martyrs/src/modules/events/components/pages/Events.vue.cjs +2 -2
  74. package/dist/martyrs/src/modules/events/components/pages/Events.vue.cjs.map +1 -1
  75. package/dist/martyrs/src/modules/events/components/pages/Events.vue.js +2 -2
  76. package/dist/martyrs/src/modules/events/components/pages/Events.vue.js.map +1 -1
  77. package/dist/martyrs/src/modules/gallery/components/sections/BackofficeGallery.vue.cjs +1 -1
  78. package/dist/martyrs/src/modules/gallery/components/sections/BackofficeGallery.vue.js +1 -1
  79. package/dist/martyrs/src/modules/globals/views/components/blocks/CardHeader.vue.cjs +1 -1
  80. package/dist/martyrs/src/modules/globals/views/components/blocks/CardHeader.vue.js +1 -1
  81. package/dist/martyrs/src/modules/globals/views/components/partials/Header.vue.cjs +1 -1
  82. package/dist/martyrs/src/modules/globals/views/components/partials/Header.vue.js +1 -1
  83. package/dist/martyrs/src/modules/globals/views/components/partials/LocationSelection.vue.cjs +2 -2
  84. package/dist/martyrs/src/modules/globals/views/components/partials/LocationSelection.vue.js +2 -2
  85. package/dist/martyrs/src/modules/globals/views/components/sections/Walkthrough.vue.cjs +1 -1
  86. package/dist/martyrs/src/modules/globals/views/mixins/mixins.cjs +7 -0
  87. package/dist/martyrs/src/modules/globals/views/mixins/mixins.cjs.map +1 -1
  88. package/dist/martyrs/src/modules/globals/views/mixins/mixins.js +7 -0
  89. package/dist/martyrs/src/modules/globals/views/mixins/mixins.js.map +1 -1
  90. package/dist/martyrs/src/modules/icons/pages/IconsPage.vue.cjs +1 -1
  91. package/dist/martyrs/src/modules/inventory/components/forms/AdjustmentForm.vue.cjs +1 -1
  92. package/dist/martyrs/src/modules/inventory/components/forms/AdjustmentForm.vue.js +1 -1
  93. package/dist/martyrs/src/modules/inventory/components/forms/StockAlertsForm.vue.cjs +1 -1
  94. package/dist/martyrs/src/modules/inventory/components/forms/StockAlertsForm.vue.js +1 -1
  95. package/dist/martyrs/src/modules/inventory/components/pages/InventoryEdit.vue.cjs +1 -1
  96. package/dist/martyrs/src/modules/inventory/components/pages/InventoryEdit.vue.js +1 -1
  97. package/dist/martyrs/src/modules/marketplace/views/components/layouts/Marketplace.vue.cjs +180 -19
  98. package/dist/martyrs/src/modules/marketplace/views/components/layouts/Marketplace.vue.cjs.map +1 -1
  99. package/dist/martyrs/src/modules/marketplace/views/components/layouts/Marketplace.vue.js +181 -20
  100. package/dist/martyrs/src/modules/marketplace/views/components/layouts/Marketplace.vue.js.map +1 -1
  101. package/dist/martyrs/src/modules/music/components/forms/AlbumForm.vue.cjs +1 -1
  102. package/dist/martyrs/src/modules/music/components/forms/AlbumForm.vue.js +1 -1
  103. package/dist/martyrs/src/modules/music/components/forms/ArtistForm.vue.cjs +1 -1
  104. package/dist/martyrs/src/modules/music/components/forms/ArtistForm.vue.js +1 -1
  105. package/dist/martyrs/src/modules/music/components/forms/TrackForm.vue.cjs +1 -1
  106. package/dist/martyrs/src/modules/music/components/forms/TrackForm.vue.js +1 -1
  107. package/dist/martyrs/src/modules/music/router/music.cjs +0 -1
  108. package/dist/martyrs/src/modules/music/router/music.cjs.map +1 -1
  109. package/dist/martyrs/src/modules/music/router/music.js +0 -1
  110. package/dist/martyrs/src/modules/music/router/music.js.map +1 -1
  111. package/dist/martyrs/src/modules/orders/components/blocks/CardOrderBackoffice.vue.cjs +2 -2
  112. package/dist/martyrs/src/modules/orders/components/blocks/CardOrderBackoffice.vue.cjs.map +1 -1
  113. package/dist/martyrs/src/modules/orders/components/blocks/CardOrderBackoffice.vue.js +2 -2
  114. package/dist/martyrs/src/modules/orders/components/blocks/CardOrderBackoffice.vue.js.map +1 -1
  115. package/dist/martyrs/src/modules/orders/components/forms/FormApplicationDetails.vue.cjs +1 -1
  116. package/dist/martyrs/src/modules/orders/components/forms/FormApplicationDetails.vue.js +1 -1
  117. package/dist/martyrs/src/modules/orders/components/forms/FormCustomerDetails.vue.cjs +1 -1
  118. package/dist/martyrs/src/modules/orders/components/forms/FormCustomerDetails.vue.js +1 -1
  119. package/dist/martyrs/src/modules/orders/components/pages/OrderBackoffice.vue.cjs +1 -1
  120. package/dist/martyrs/src/modules/orders/components/pages/OrderBackoffice.vue.js +1 -1
  121. package/dist/martyrs/src/modules/orders/components/sections/FormDelivery.vue.cjs +2 -3
  122. package/dist/martyrs/src/modules/orders/components/sections/FormDelivery.vue.cjs.map +1 -1
  123. package/dist/martyrs/src/modules/orders/components/sections/FormDelivery.vue.js +2 -3
  124. package/dist/martyrs/src/modules/orders/components/sections/FormDelivery.vue.js.map +1 -1
  125. package/dist/martyrs/src/modules/orders/components/sections/FormPayment.vue.cjs +1 -1
  126. package/dist/martyrs/src/modules/orders/components/sections/FormPayment.vue.js +1 -1
  127. package/dist/martyrs/src/modules/organizations/components/blocks/CardDepartment.vue.cjs +2 -24
  128. package/dist/martyrs/src/modules/organizations/components/blocks/CardDepartment.vue.cjs.map +1 -1
  129. package/dist/martyrs/src/modules/organizations/components/blocks/CardDepartment.vue.js +5 -27
  130. package/dist/martyrs/src/modules/organizations/components/blocks/CardDepartment.vue.js.map +1 -1
  131. package/dist/martyrs/src/modules/organizations/components/blocks/Socials.vue.cjs +4 -1
  132. package/dist/martyrs/src/modules/organizations/components/blocks/Socials.vue.cjs.map +1 -1
  133. package/dist/martyrs/src/modules/organizations/components/blocks/Socials.vue.js +4 -1
  134. package/dist/martyrs/src/modules/organizations/components/blocks/Socials.vue.js.map +1 -1
  135. package/dist/martyrs/src/modules/organizations/components/elements/ButtonToggleMembership.vue.cjs +3 -3
  136. package/dist/martyrs/src/modules/organizations/components/elements/ButtonToggleMembership.vue.cjs.map +1 -1
  137. package/dist/martyrs/src/modules/organizations/components/elements/ButtonToggleMembership.vue.js +3 -3
  138. package/dist/martyrs/src/modules/organizations/components/elements/ButtonToggleMembership.vue.js.map +1 -1
  139. package/dist/martyrs/src/modules/organizations/components/forms/AddExistingMembersForm.vue.cjs +195 -0
  140. package/dist/martyrs/src/modules/organizations/components/forms/AddExistingMembersForm.vue.cjs.map +1 -0
  141. package/dist/martyrs/src/modules/organizations/components/forms/AddExistingMembersForm.vue.js +195 -0
  142. package/dist/martyrs/src/modules/organizations/components/forms/AddExistingMembersForm.vue.js.map +1 -0
  143. package/dist/martyrs/src/modules/organizations/components/forms/DepartmentForm.vue.cjs +402 -0
  144. package/dist/martyrs/src/modules/organizations/components/forms/DepartmentForm.vue.cjs.map +1 -0
  145. package/dist/martyrs/src/modules/organizations/components/forms/DepartmentForm.vue.js +402 -0
  146. package/dist/martyrs/src/modules/organizations/components/forms/DepartmentForm.vue.js.map +1 -0
  147. package/dist/martyrs/src/modules/organizations/components/forms/InviteForm.vue.cjs +86 -0
  148. package/dist/martyrs/src/modules/organizations/components/forms/InviteForm.vue.cjs.map +1 -0
  149. package/dist/martyrs/src/modules/organizations/components/forms/InviteForm.vue.js +86 -0
  150. package/dist/martyrs/src/modules/organizations/components/forms/InviteForm.vue.js.map +1 -0
  151. package/dist/martyrs/src/modules/organizations/components/pages/Department.vue.cjs +10 -10
  152. package/dist/martyrs/src/modules/organizations/components/pages/Department.vue.cjs.map +1 -1
  153. package/dist/martyrs/src/modules/organizations/components/pages/Department.vue.js +11 -11
  154. package/dist/martyrs/src/modules/organizations/components/pages/Department.vue.js.map +1 -1
  155. package/dist/martyrs/src/modules/organizations/components/pages/Members.vue.cjs +279 -191
  156. package/dist/martyrs/src/modules/organizations/components/pages/Members.vue.cjs.map +1 -1
  157. package/dist/martyrs/src/modules/organizations/components/pages/Members.vue.js +285 -197
  158. package/dist/martyrs/src/modules/organizations/components/pages/Members.vue.js.map +1 -1
  159. package/dist/martyrs/src/modules/organizations/components/pages/Organization.vue.cjs +5 -5
  160. package/dist/martyrs/src/modules/organizations/components/pages/Organization.vue.cjs.map +1 -1
  161. package/dist/martyrs/src/modules/organizations/components/pages/Organization.vue.js +5 -5
  162. package/dist/martyrs/src/modules/organizations/components/pages/Organization.vue.js.map +1 -1
  163. package/dist/martyrs/src/modules/organizations/components/pages/OrganizationEdit.vue.cjs +2 -2
  164. package/dist/martyrs/src/modules/organizations/components/pages/OrganizationEdit.vue.cjs.map +1 -1
  165. package/dist/martyrs/src/modules/organizations/components/pages/OrganizationEdit.vue.js +2 -2
  166. package/dist/martyrs/src/modules/organizations/components/pages/OrganizationEdit.vue.js.map +1 -1
  167. package/dist/martyrs/src/modules/organizations/components/pages/Organizations.vue.cjs +1 -1
  168. package/dist/martyrs/src/modules/organizations/components/pages/Organizations.vue.cjs.map +1 -1
  169. package/dist/martyrs/src/modules/organizations/components/pages/Organizations.vue.js +1 -1
  170. package/dist/martyrs/src/modules/organizations/components/pages/Organizations.vue.js.map +1 -1
  171. package/dist/martyrs/src/modules/organizations/components/sections/MembersAdd.vue.cjs +1 -1
  172. package/dist/martyrs/src/modules/organizations/components/sections/MembersAdd.vue.js +1 -1
  173. package/dist/martyrs/src/modules/organizations/components/sections/Organizations.vue.cjs +3 -3
  174. package/dist/martyrs/src/modules/organizations/components/sections/Organizations.vue.cjs.map +1 -1
  175. package/dist/martyrs/src/modules/organizations/components/sections/Organizations.vue.js +3 -3
  176. package/dist/martyrs/src/modules/organizations/components/sections/Organizations.vue.js.map +1 -1
  177. package/dist/martyrs/src/modules/organizations/components/sections/Publics.vue.cjs +4 -4
  178. package/dist/martyrs/src/modules/organizations/components/sections/Publics.vue.cjs.map +1 -1
  179. package/dist/martyrs/src/modules/organizations/components/sections/Publics.vue.js +4 -4
  180. package/dist/martyrs/src/modules/organizations/components/sections/Publics.vue.js.map +1 -1
  181. package/dist/martyrs/src/modules/organizations/configs/navigation.organization.config.cjs +42 -41
  182. package/dist/martyrs/src/modules/organizations/configs/navigation.organization.config.cjs.map +1 -1
  183. package/dist/martyrs/src/modules/organizations/configs/navigation.organization.config.js +53 -52
  184. package/dist/martyrs/src/modules/organizations/configs/navigation.organization.config.js.map +1 -1
  185. package/dist/martyrs/src/modules/organizations/organizations.client.cjs +23 -16
  186. package/dist/martyrs/src/modules/organizations/organizations.client.cjs.map +1 -1
  187. package/dist/martyrs/src/modules/organizations/organizations.client.js +35 -28
  188. package/dist/martyrs/src/modules/organizations/organizations.client.js.map +1 -1
  189. package/dist/martyrs/src/modules/organizations/router/departments.router.cjs +0 -18
  190. package/dist/martyrs/src/modules/organizations/router/departments.router.cjs.map +1 -1
  191. package/dist/martyrs/src/modules/organizations/router/departments.router.js +0 -18
  192. package/dist/martyrs/src/modules/organizations/router/departments.router.js.map +1 -1
  193. package/dist/martyrs/src/modules/organizations/store/departments.store.cjs +6 -0
  194. package/dist/martyrs/src/modules/organizations/store/departments.store.cjs.map +1 -0
  195. package/dist/martyrs/src/modules/organizations/store/departments.store.js +6 -0
  196. package/dist/martyrs/src/modules/organizations/store/departments.store.js.map +1 -0
  197. package/dist/martyrs/src/modules/organizations/store/invites.store.cjs +6 -0
  198. package/dist/martyrs/src/modules/organizations/store/invites.store.cjs.map +1 -0
  199. package/dist/martyrs/src/modules/organizations/store/invites.store.js +6 -0
  200. package/dist/martyrs/src/modules/organizations/store/invites.store.js.map +1 -0
  201. package/dist/martyrs/src/modules/organizations/store/memberships.store.cjs +20 -0
  202. package/dist/martyrs/src/modules/organizations/store/memberships.store.cjs.map +1 -0
  203. package/dist/martyrs/src/modules/organizations/store/memberships.store.js +20 -0
  204. package/dist/martyrs/src/modules/organizations/store/memberships.store.js.map +1 -0
  205. package/dist/martyrs/src/modules/products/components/pages/CategoryEdit.vue.cjs +2 -3
  206. package/dist/martyrs/src/modules/products/components/pages/CategoryEdit.vue.cjs.map +1 -1
  207. package/dist/martyrs/src/modules/products/components/pages/CategoryEdit.vue.js +2 -3
  208. package/dist/martyrs/src/modules/products/components/pages/CategoryEdit.vue.js.map +1 -1
  209. package/dist/martyrs/src/modules/products/components/pages/ProductEdit.vue.cjs +1 -1
  210. package/dist/martyrs/src/modules/products/components/pages/ProductEdit.vue.js +1 -1
  211. package/dist/martyrs/src/modules/products/components/pages/Products.vue.cjs +1 -1
  212. package/dist/martyrs/src/modules/products/components/pages/Products.vue.cjs.map +1 -1
  213. package/dist/martyrs/src/modules/products/components/pages/Products.vue.js +1 -1
  214. package/dist/martyrs/src/modules/products/components/pages/Products.vue.js.map +1 -1
  215. package/dist/martyrs/src/modules/products/components/sections/EditDiscounts.vue.cjs +1 -1
  216. package/dist/martyrs/src/modules/products/components/sections/EditDiscounts.vue.js +1 -1
  217. package/dist/martyrs/src/modules/products/components/sections/EditVariants.vue.cjs +1 -1
  218. package/dist/martyrs/src/modules/products/components/sections/EditVariants.vue.js +1 -1
  219. package/dist/martyrs/src/modules/reports/components/sections/FormReport.vue.cjs +1 -1
  220. package/dist/martyrs/src/modules/reports/components/sections/FormReport.vue.js +1 -1
  221. package/dist/martyrs/src/modules/spots/components/blocks/CardSpot.vue.cjs +2 -2
  222. package/dist/martyrs/src/modules/spots/components/blocks/CardSpot.vue.cjs.map +1 -1
  223. package/dist/martyrs/src/modules/spots/components/blocks/CardSpot.vue.js +2 -2
  224. package/dist/martyrs/src/modules/spots/components/blocks/CardSpot.vue.js.map +1 -1
  225. package/dist/martyrs/src/modules/spots/components/blocks/SpotMemberModify.vue.cjs +1 -1
  226. package/dist/martyrs/src/modules/spots/components/blocks/SpotMemberModify.vue.js +1 -1
  227. package/dist/martyrs/src/modules/spots/components/pages/SpotEdit.vue.cjs +3 -3
  228. package/dist/martyrs/src/modules/spots/components/pages/SpotEdit.vue.js +3 -3
  229. package/dist/martyrs/src/modules/spots/components/pages/Spots.vue.cjs +60 -272
  230. package/dist/martyrs/src/modules/spots/components/pages/Spots.vue.cjs.map +1 -1
  231. package/dist/martyrs/src/modules/spots/components/pages/Spots.vue.js +62 -274
  232. package/dist/martyrs/src/modules/spots/components/pages/Spots.vue.js.map +1 -1
  233. package/dist/martyrs/src/modules/spots/components/sections/WorktimeEdit.vue.cjs +1 -1
  234. package/dist/martyrs/src/modules/spots/components/sections/WorktimeEdit.vue.js +1 -1
  235. package/dist/martyrs/src/modules/wallet/views/components/blocks/CryptoDeposit.vue.cjs +1 -1
  236. package/dist/martyrs/src/modules/wallet/views/components/blocks/CryptoDeposit.vue.js +1 -1
  237. package/dist/martyrs/src/modules/wallet/views/components/pages/Wallet.vue.cjs +2 -2
  238. package/dist/martyrs/src/modules/wallet/views/components/pages/Wallet.vue.js +2 -2
  239. package/dist/martyrs.cjs.js +1 -1
  240. package/dist/martyrs.css +1 -1
  241. package/dist/martyrs.es.js +1 -1
  242. package/dist/notifications.server.cjs +0 -24
  243. package/dist/notifications.server.js +0 -24
  244. package/dist/orders.server.cjs +1 -4
  245. package/dist/orders.server.js +1 -4
  246. package/dist/organizations.server.cjs +115 -39
  247. package/dist/organizations.server.js +115 -39
  248. package/dist/style.css +9 -9
  249. package/dist/{web-42I-Howt.cjs → web-B0cfxzgu.cjs} +1 -1
  250. package/dist/{web-ByhZ_fIu.js → web-DVR8m2fm.js} +1 -1
  251. package/package.json +1 -1
  252. package/src/components/Feed/Feed.old.vue +0 -1
  253. package/src/components/Feed/Feed.vue +0 -30
  254. package/src/modules/auth/FIXES.md +2 -26
  255. package/src/modules/auth/views/components/blocks/CardUser.vue +2 -2
  256. package/src/modules/auth/views/components/layouts/Auth.vue +1 -1
  257. package/src/modules/auth/views/components/pages/Invite.vue +2 -2
  258. package/src/modules/auth/views/components/pages/Profile.vue +33 -48
  259. package/src/modules/auth/views/components/sections/SliderFeatures.vue +5 -7
  260. package/src/modules/auth/views/store/auth.js +15 -0
  261. package/src/modules/chats/CLAUDE.md +137 -0
  262. package/src/modules/chats/components/blocks/ChatMessage.vue +12 -0
  263. package/src/modules/chats/components/sections/ChatWindow.vue +84 -2
  264. package/src/modules/chats/controllers/chats.controller.js +187 -0
  265. package/src/modules/chats/models/chat.model.js +21 -0
  266. package/src/modules/chats/routes/chats.routes.js +46 -0
  267. package/src/modules/chats/store/chat.store.js +67 -0
  268. package/src/modules/community/components/layouts/Community.vue +2 -2
  269. package/src/modules/community/components/pages/Posts.vue +3 -328
  270. package/src/modules/events/components/pages/EditEventTickets.vue +1 -1
  271. package/src/modules/events/components/pages/Events.vue +2 -2
  272. package/src/modules/globals/views/mixins/mixins.js +7 -0
  273. package/src/modules/marketplace/views/components/layouts/Marketplace.vue +160 -8
  274. package/src/modules/notifications/controllers/notifications.controller.js +0 -6
  275. package/src/modules/notifications/services/notification.service.js +1 -17
  276. package/src/modules/notifications/services/web-push.service.js +0 -2
  277. package/src/modules/orders/components/blocks/CardOrderBackoffice.vue +2 -2
  278. package/src/modules/orders/components/blocks/CardOrderVar1.vue +1 -1
  279. package/src/modules/orders/controllers/orders.controller.js +2 -4
  280. package/src/modules/organizations/CLAUDE.md +259 -0
  281. package/src/modules/organizations/components/blocks/CardDepartment.vue +1 -22
  282. package/src/modules/organizations/components/blocks/Socials.vue +1 -1
  283. package/src/modules/organizations/components/elements/ButtonToggleMembership.vue +3 -3
  284. package/src/modules/organizations/components/forms/AddExistingMembersForm.vue +191 -0
  285. package/src/modules/organizations/components/forms/DepartmentForm.vue +390 -0
  286. package/src/modules/organizations/components/forms/InviteForm.vue +81 -0
  287. package/src/modules/organizations/components/pages/Department.vue +10 -10
  288. package/src/modules/organizations/components/pages/DepartmentEdit.vue +8 -8
  289. package/src/modules/organizations/components/pages/Members.vue +265 -171
  290. package/src/modules/organizations/components/pages/Organization.new.vue +172 -183
  291. package/src/modules/organizations/components/pages/Organization.vue +6 -6
  292. package/src/modules/organizations/components/pages/OrganizationEdit.vue +1 -1
  293. package/src/modules/organizations/components/pages/Organizations.vue +1 -1
  294. package/src/modules/organizations/components/sections/Organizations.vue +2 -2
  295. package/src/modules/organizations/components/sections/Publics.vue +4 -4
  296. package/src/modules/organizations/configs/navigation.organization.config.js +40 -39
  297. package/src/modules/organizations/controllers/departments.controller.js +53 -34
  298. package/src/modules/organizations/controllers/invites.controller.js +44 -5
  299. package/src/modules/organizations/controllers/memberships.controller.js +43 -4
  300. package/src/modules/organizations/organizations.client.js +24 -15
  301. package/src/modules/organizations/router/departments.router.js +0 -18
  302. package/src/modules/organizations/routes/departments.routes.js +6 -8
  303. package/src/modules/organizations/routes/invites.routes.js +6 -4
  304. package/src/modules/organizations/routes/memberships.routes.js +6 -5
  305. package/src/modules/organizations/store/departments.store.js +5 -0
  306. package/src/modules/organizations/store/invites.store.js +5 -0
  307. package/src/modules/organizations/store/memberships.store.js +23 -0
  308. package/src/modules/products/components/pages/Products.vue +0 -1
  309. package/src/modules/spots/components/blocks/CardSpot.vue +1 -1
  310. package/src/modules/spots/components/pages/Spots.vue +3 -203
  311. package/src/styles/base/all.scss +0 -15
  312. package/src/styles/typography.scss +20 -5
  313. package/dist/martyrs/src/components/Address/Address.vue2.cjs.map +0 -1
  314. package/dist/martyrs/src/components/LocationMarker/LocationMarker.vue2.cjs.map +0 -1
  315. package/dist/martyrs/src/components/Select/Select.vue2.cjs.map +0 -1
  316. package/dist/martyrs/src/modules/globals/views/components/blocks/BlockFilter.vue.cjs +0 -76
  317. package/dist/martyrs/src/modules/globals/views/components/blocks/BlockFilter.vue.cjs.map +0 -1
  318. package/dist/martyrs/src/modules/globals/views/components/blocks/BlockFilter.vue.js +0 -76
  319. package/dist/martyrs/src/modules/globals/views/components/blocks/BlockFilter.vue.js.map +0 -1
  320. package/dist/martyrs/src/modules/organizations/components/pages/DepartmentEdit.vue.cjs +0 -280
  321. package/dist/martyrs/src/modules/organizations/components/pages/DepartmentEdit.vue.cjs.map +0 -1
  322. package/dist/martyrs/src/modules/organizations/components/pages/DepartmentEdit.vue.js +0 -280
  323. package/dist/martyrs/src/modules/organizations/components/pages/DepartmentEdit.vue.js.map +0 -1
  324. package/dist/martyrs/src/modules/organizations/store/departments.cjs +0 -121
  325. package/dist/martyrs/src/modules/organizations/store/departments.cjs.map +0 -1
  326. package/dist/martyrs/src/modules/organizations/store/departments.js +0 -121
  327. package/dist/martyrs/src/modules/organizations/store/departments.js.map +0 -1
  328. package/dist/martyrs/src/modules/organizations/store/invites.cjs +0 -64
  329. package/dist/martyrs/src/modules/organizations/store/invites.cjs.map +0 -1
  330. package/dist/martyrs/src/modules/organizations/store/invites.js +0 -64
  331. package/dist/martyrs/src/modules/organizations/store/invites.js.map +0 -1
  332. package/dist/martyrs/src/modules/organizations/store/memberships.cjs +0 -87
  333. package/dist/martyrs/src/modules/organizations/store/memberships.cjs.map +0 -1
  334. package/dist/martyrs/src/modules/organizations/store/memberships.js +0 -87
  335. package/dist/martyrs/src/modules/organizations/store/memberships.js.map +0 -1
  336. package/src/CLAUDE.MD +0 -15
  337. package/src/modules/globals/controllers/classes/globals.websocket.ws.js +0 -102
  338. package/src/modules/globals/views/components/blocks/BlockFilter.vue +0 -60
  339. package/src/modules/organizations/store/departments.js +0 -137
  340. package/src/modules/organizations/store/invites.js +0 -76
  341. package/src/modules/organizations/store/memberships.js +0 -110
@@ -1,11 +1,11 @@
1
1
  <template>
2
2
  <div class="for-transition w-100">
3
3
 
4
- <div v-if="departments.state.department" id="dash" class="pd-medium bg-light">
4
+ <div v-if="departmentsStore.state.items.length > 0" id="dash" class="pd-medium bg-light">
5
5
  <section class="mn-b-medium radius-medium pd-semi bg-white">
6
6
  <div class="flex-nowrap flex mn-b-small">
7
7
 
8
- <h2 class="w-100">{{ departments.state.department.profile.name }}</h2>
8
+ <h2 class="w-100">{{ departmentsStore.state.items[0].profile.name }}</h2>
9
9
 
10
10
  <router-link
11
11
  :to="{
@@ -28,22 +28,22 @@
28
28
  </router-link>
29
29
 
30
30
  </div>
31
- <p class="t-transp p-semi" v-html="departments.state.department.description"></p>
31
+ <p class="t-transp p-semi" v-html="departmentsStore.state.items[0].description"></p>
32
32
  </section>
33
33
 
34
34
  <section class="mn-b-medium radius-medium pd-semi bg-white">
35
35
  <h3 class="mn-b-regular">Команда</h3>
36
36
  <ul>
37
- <li v-if="departments.state.department.members.length < 1">В отделе еще нет участников</li>
37
+ <li v-if="departmentsStore.state.items[0]?.members?.length < 1">В отделе еще нет участников</li>
38
38
  <User
39
39
  class="br-b br-solid br-grey-transp-25"
40
- v-for="(member, index) in departments.state.department.members"
40
+ v-for="(member, index) in departmentsStore.state.items[0]?.members || []"
41
41
  :key="index"
42
42
  :user="member.user"
43
43
  :photo="member.user.profile.photo"
44
44
  :name="member.user.profile.name || member.user.phone || member.user.email || member.user._id"
45
45
  :position="member.position"
46
- @click="$router.push(`/app/profile/${member.user._id}`)"
46
+ @click="$router.push({ name: 'User Profile', params: { _id: member.user._id } })"
47
47
  />
48
48
  </ul>
49
49
  </section>
@@ -51,8 +51,8 @@
51
51
  <section class="mn-b-medium radius-medium pd-semi bg-white">
52
52
  <h3 class="mn-b-regular">Подотделы</h3>
53
53
  <ul>
54
- <li v-if="departments.state.department.subdepartments.length < 1">В отделе еще нет подотделов</li>
55
- <DepartmentSub v-for="(subdepartment, index) in departments.state.department.subdepartments" @click="$router.push(`/app/organization/departments/${subdepartment._id}`)" :key="index" class="br-b br-solid br-grey-transp-25" :department="subdepartment" />
54
+ <li v-if="departmentsStore.state.items[0]?.subdepartments?.length < 1">В отделе еще нет подотделов</li>
55
+ <DepartmentSub v-for="(subdepartment, index) in departmentsStore.state.items[0]?.subdepartments || []" @click="$router.push(`/app/organization/departments/${subdepartment._id}`)" :key="index" class="br-b br-solid br-grey-transp-25" :department="subdepartment" />
56
56
  </ul>
57
57
  </section>
58
58
  </div>
@@ -65,14 +65,14 @@ import { useRoute, useRouter } from 'vue-router';
65
65
  import Spoiler from '@martyrs/src/components/Spoiler/Spoiler.vue';
66
66
  import DepartmentSub from '@martyrs/src/modules/organizations/components/blocks/DepartmentSub.vue';
67
67
  import User from '@martyrs/src/modules/auth/views/components/blocks/CardUser.vue';
68
- import * as departments from '@martyrs/src/modules/organizations/store/departments.js';
68
+ import departmentsStore from '@martyrs/src/modules/organizations/store/departments.store.js';
69
69
 
70
70
  import IconEdit from '@martyrs/src/modules/icons/navigation/IconEdit.vue'
71
71
 
72
72
  const router = useRouter();
73
73
  const route = useRoute();
74
74
 
75
- await departments.actions.readOne(route.params.department);
75
+ await departmentsStore.read({ _id: route.params.department });
76
76
  </script>
77
77
 
78
78
  <style scoped>
@@ -75,7 +75,7 @@
75
75
  title="Add member"
76
76
  @close-popup="closeMemberPopup"
77
77
  :isPopupOpen="isOpenAddMemberPopup"
78
- class="bg-white w-max-30r radius-big pd-big"
78
+ class="bg-white w-max-30r radius-medium pd-big"
79
79
  >
80
80
  <Feed
81
81
  :search="{
@@ -99,7 +99,7 @@
99
99
  v-slot="{
100
100
  items
101
101
  }"
102
- class="bg-light pd-medium w-min-20r w-max-40r radius-big h-max-20r o-scroll"
102
+ class="bg-light pd-medium w-min-20r w-max-40r radius-medium h-max-20r o-scroll"
103
103
  >
104
104
  <CardUser
105
105
  v-for="(user, index) in items"
@@ -119,7 +119,7 @@
119
119
 
120
120
  <div class="cols-2 gap-thin">
121
121
 
122
- <div class="bg-light pd-medium o-hidden radius-big">
122
+ <div class="bg-light pd-medium o-hidden radius-medium">
123
123
  <h3 class="mn-b-semi">Department Settings</h3>
124
124
 
125
125
  <p class="p-medium mn-b-small">Please settings for your department:</p>
@@ -134,7 +134,7 @@
134
134
  </div>
135
135
  </div>
136
136
 
137
- <div class="bg-light pd-medium o-hidden radius-big">
137
+ <div class="bg-light pd-medium o-hidden radius-medium">
138
138
  <h3 class="mn-b-semi">Acessess</h3>
139
139
 
140
140
  <p class="p-medium mn-b-small">Please select organization accesses for user in department:</p>
@@ -221,16 +221,16 @@ import DepartmentSub from "@martyrs/src/modules/organizations/components/blocks/
221
221
  import CardUser from '@martyrs/src/modules/auth/views/components/blocks/CardUser.vue'
222
222
 
223
223
  import * as globals from "@martyrs/src/modules/globals/views/store/globals.js";
224
- import * as departments from "@martyrs/src/modules/organizations/store/departments.js";
225
- import * as memberships from "@martyrs/src/modules/organizations/store/memberships.js";
224
+ import departmentsStore from "@martyrs/src/modules/organizations/store/departments.store.js";
225
+ import membershipsStore from "@martyrs/src/modules/organizations/store/memberships.store.js";
226
226
 
227
227
  const router = useRouter();
228
228
  const route = useRoute();
229
229
 
230
230
  async function fetchData() {
231
- const users = ref(memberships.state.memberships);
231
+ const users = ref(membershipsStore.state.items);
232
232
  // await departments.actions.read({organization: route.params._id});
233
- if (route.params.department) await departments.actions.readOne(route.params.department);
233
+ if (route.params.department) await departmentsStore.read({ _id: route.params.department });
234
234
  }
235
235
 
236
236
  fetchData();
@@ -1,81 +1,22 @@
1
1
  <template>
2
2
  <div class="pd-thin">
3
- <SectionPageTitle
4
- title="Members"
5
- @update:tabs_current="(update) => tab = update"
6
- :tabs_current="tab"
7
- :tabs="[
8
- { name: `Members (${organization.state.current.numberOfMembers || 0})`, value: 'members' },
9
- { name: 'Departments', value: 'departments' },
10
- { name: 'Invites', value: 'invites' }
11
- ]"
12
- :actions="[
13
- { method: openMembersAddPopup, label: 'Invite members' }
14
- ]"
15
- class="mn-b-small bg-light bg-light radius-medium pd-medium"
16
- />
17
-
18
- <Popup
19
- title="Add members"
20
- @close-popup="closeMembersAddPopup"
21
- :isPopupOpen="isOpenMembersAddPopup"
22
- class="bg-white w-min-30r w-max-30r radius-big pd-medium"
23
- >
24
- <MembersAdd
25
- text="Please enter your email or phone number to send an invitation link:"
26
- :organization="organizationData"
27
- @send-invite="handleSendInvite"
28
- />
29
- </Popup>
30
-
31
- <Feed
32
- v-if="tab === 'departments'"
33
- :states="{
34
- empty: {
35
- title: 'No Departments Found',
36
- description: 'Currently, there are no departments available.',
37
- action: 'Add department',
38
- callback: () => $router.push(`/organizations/${route.params._id}/departments/create`)
39
- }
40
- }"
41
- :store="{
42
- read: (options) => departments.actions.read(options),
43
- state: null
44
- }"
45
- :options="{
46
- organization: route.params._id,
47
- user: auth.state.user._id,
48
- }"
49
- v-slot="{
50
- items
51
- }"
52
- >
53
- <CardDepartment
54
- v-for="(department, index) in items"
55
- :key="index"
56
- :department="department"
57
- :organization="route.params._id"
58
- class="radius-semi bg-light pos-relative mn-b-thin"
3
+ <div v-if="!isLoaded" class="flex-center flex h-20r">
4
+ <span class="t-transp">Loading...</span>
5
+ </div>
6
+ <div v-else>
7
+ <!-- Members Section -->
8
+ <section class="mn-b-medium">
9
+ <SectionPageTitle
10
+ :title="`Members ${organizationData?.numberOfMembers ? `(${organizationData.numberOfMembers})` : ''}`"
11
+ :actions="[
12
+ { method: openAddUsersPopup, label: 'Add user to organization' }
13
+ ]"
14
+ class="mn-b-small bg-light radius-medium pd-medium"
59
15
  />
60
16
 
61
- </Feed>
62
-
63
- <router-link
64
- v-if="tab === 'departments' && departments.state.departments.length > 0"
65
- :to="{
66
- path: `/organizations/${route.params._id}/departments/create`
67
- }"
68
- class="d-block flex-center flex uppercase t-semi bg-main w-100 pd-small radius-extra"
69
- >
70
- Add department
71
- </router-link>
72
-
73
- <!-- Members -->
74
- <div
75
- v-if="tab === 'members'"
76
- class="cols-1 gap-thin"
77
- >
17
+ <div class="cols-1 gap-thin">
78
18
  <Feed
19
+ v-model:items="membersList"
79
20
  :search="true"
80
21
  :states="{
81
22
  empty: {
@@ -84,7 +25,7 @@
84
25
  },
85
26
  }"
86
27
  :store="{
87
- read: (options) => memberships.actions.read(options)
28
+ read: (options) => membershipsStore.read(options)
88
29
  }"
89
30
  :options="{
90
31
  target: route.params._id,
@@ -105,7 +46,7 @@
105
46
  :email="member.user.email"
106
47
  :name="member.user.profile.name || 'No name'"
107
48
  :role="member.label || member.role"
108
- @click="$router.push(`/profile/${member.user._id}`)"
49
+ @click="$router.push({ name: 'User Profile', params: { _id: member.user._id } })"
109
50
  :action=" member.role !== 'owner' ? {
110
51
  label: {
111
52
  is: IconDelete,
@@ -117,119 +58,230 @@
117
58
  />
118
59
  </Feed>
119
60
  </div>
120
- <!-- Invites -->
121
- <div
122
- v-if="tab === 'invites'"
123
- >
124
- <Feed
125
- v-model:items="invitesState"
126
- :states="{
127
- empty: {
128
- title: 'No Invites Found',
129
- description: 'Currently, there are no members.'
130
- }
131
- }"
132
- :store="{
133
- read: (options) => invites.actions.read(options)
134
- }"
135
- :options="{
136
- owner: route.params._id
137
- }"
138
- v-slot="{
139
- items
140
- }"
141
- class="gap-thin cols-1"
61
+ </section>
62
+
63
+ <!-- Departments Section -->
64
+ <section class="mn-b-medium">
65
+ <SectionPageTitle
66
+ title="Departments"
67
+ :actions="[
68
+ { method: () => openDepartmentPopup(), label: 'Add department' }
69
+ ]"
70
+ class="mn-b-small bg-light bg-light radius-medium pd-medium"
71
+ />
72
+
73
+ <Feed
74
+ v-model:items="departmentsList"
75
+ :states="{
76
+ empty: {
77
+ title: 'No Departments Found',
78
+ description: 'Currently, there are no departments available.'
79
+ }
80
+ }"
81
+ :store="departmentsStore"
82
+ :options="{
83
+ organization: route.params._id,
84
+ user: auth.state.user._id,
85
+ }"
86
+ v-slot="{
87
+ items
88
+ }"
89
+ >
90
+ <div
91
+ v-for="(department, index) in items"
92
+ :key="department._id"
93
+ @click="() => openDepartmentPopup(department)"
94
+ class="cursor-pointer hover-scale-1"
142
95
  >
143
- <CardUser
144
- v-for="invite in items"
145
- :key="index"
146
- :user="{ type: 'invite'} "
147
- :name="invite.email || invite.phone"
148
- :role="invite.status"
149
- :action="{
150
- label: {
151
- is: IconDelete,
152
- props: { class: 'i-medium', fill: 'rgb(var(--white)' }
153
- },
154
- method: () => removeInvite(index, invite)
155
- }"
156
- class="h-4r w-100 bg-light radius-big flex-nowrap flex pd-medium"
96
+ <CardDepartment
97
+ :department="department"
98
+ :organization="route.params._id"
99
+ class="radius-semi bg-light pos-relative mn-b-thin"
157
100
  />
158
- </Feed>
159
- </div>
160
-
101
+ </div>
102
+ </Feed>
103
+ </section>
104
+
105
+ <!-- Invites Section -->
106
+ <section>
107
+ <SectionPageTitle
108
+ title="Invites"
109
+ :actions="[
110
+ { method: openInvitePopup, label: 'Invite members' }
111
+ ]"
112
+ class="mn-b-small bg-light bg-light radius-medium pd-medium"
113
+ />
114
+
115
+ <Feed
116
+ v-model:items="invitesList"
117
+ :states="{
118
+ empty: {
119
+ title: 'No Invites Found',
120
+ description: 'Currently, there are no pending invites.'
121
+ }
122
+ }"
123
+ :store="{
124
+ read: (options) => invitesStore.read(options)
125
+ }"
126
+ :options="{
127
+ owner: route.params._id
128
+ }"
129
+ v-slot="{
130
+ items
131
+ }"
132
+ class="gap-thin cols-1"
133
+ >
134
+ <CardUser
135
+ v-for="(invite, index) in items"
136
+ :key="invite._id"
137
+ :user="{ type: 'invite'} "
138
+ :name="invite.email || invite.phone"
139
+ :role="invite.status"
140
+ :action="{
141
+ label: {
142
+ is: IconDelete,
143
+ props: { class: 'i-medium', fill: 'rgb(var(--white)' }
144
+ },
145
+ method: () => removeInvite(index, invite)
146
+ }"
147
+ class="h-4r w-100 bg-light radius-medium flex-nowrap flex pd-medium"
148
+ />
149
+ </Feed>
150
+ </section>
151
+
152
+ <!-- Invite Members Popup -->
153
+ <Popup
154
+ title="Invite members"
155
+ @close-popup="closeInvitePopup"
156
+ :isPopupOpen="isOpenInvitePopup"
157
+ class="bg-white w-min-30r w-max-30r radius-medium pd-medium"
158
+ >
159
+ <InviteForm
160
+ v-if="organizationData"
161
+ :organization="organizationData"
162
+ @send-invite="handleSendInvite"
163
+ />
164
+ </Popup>
165
+
166
+ <!-- Add Existing Users Popup -->
167
+ <Popup
168
+ title="Add users to organization"
169
+ @close-popup="closeAddUsersPopup"
170
+ :isPopupOpen="isOpenAddUsersPopup"
171
+ class="bg-white w-min-40r w-max-50r radius-medium pd-medium"
172
+ >
173
+ <AddExistingMembersForm
174
+ :organizationId="route.params._id"
175
+ @users-added="handleUsersAdded"
176
+ />
177
+ </Popup>
178
+
179
+ <!-- Department Edit Popup -->
180
+ <Popup
181
+ :title="editingDepartment ? 'Edit Department' : 'Create Department'"
182
+ @close-popup="closeDepartmentPopup"
183
+ :isPopupOpen="isDepartmentPopupOpen"
184
+ align="center right"
185
+ class="bg-white h-min-100 w-max-50r pd-medium"
186
+ >
187
+ <DepartmentForm
188
+ :department="editingDepartment"
189
+ :organizationId="route.params._id"
190
+ @close="closeDepartmentPopup"
191
+ @saved="handleDepartmentSaved"
192
+ />
193
+ </Popup>
194
+ </div>
161
195
  </div>
162
196
  </template>
163
197
 
164
198
  <script setup>
165
199
  import { ref, computed, onMounted } from 'vue';
166
- import { useRoute, useRouter } from 'vue-router'
200
+ import { useRoute, useRouter } from 'vue-router';
167
201
 
168
- import Feed from '@martyrs/src/components/Feed/Feed.vue'
169
- import Tab from '@martyrs/src/components/Tab/Tab.vue'
170
- import Block from '@martyrs/src/components/Block/Block.vue'
202
+ import Feed from '@martyrs/src/components/Feed/Feed.vue';
171
203
  import Popup from '@martyrs/src/components/Popup/Popup.vue';
172
204
 
173
- import SectionPageTitle from '@martyrs/src/modules/globals/views/components/sections/SectionPageTitle.vue'
174
- import PlaceholderUserpic from '@martyrs/src/modules/icons/placeholders/PlaceholderUserpic.vue'
175
-
176
- import MembersAdd from '@martyrs/src/modules/organizations/components/sections/MembersAdd.vue';
205
+ import SectionPageTitle from '@martyrs/src/modules/globals/views/components/sections/SectionPageTitle.vue';
177
206
 
178
- // Mobile Module
179
- import Menu from '@martyrs/src/components/Menu/Menu.vue'
180
- import MenuItem from '@martyrs/src/components/Menu/MenuItem.vue'
207
+ import InviteForm from '@martyrs/src/modules/organizations/components/forms/InviteForm.vue';
208
+ import AddExistingMembersForm from '@martyrs/src/modules/organizations/components/forms/AddExistingMembersForm.vue';
209
+ import DepartmentForm from '@martyrs/src/modules/organizations/components/forms/DepartmentForm.vue';
181
210
 
182
211
  import CardUser from '@martyrs/src/modules/auth/views/components/blocks/CardUser.vue';
183
212
  import CardDepartment from '@martyrs/src/modules/organizations/components/blocks/CardDepartment.vue';
184
213
 
185
- import IconDelete from '@martyrs/src/modules/icons/navigation/IconDelete.vue'
214
+ import IconDelete from '@martyrs/src/modules/icons/navigation/IconDelete.vue';
215
+
216
+ import * as auth from '@martyrs/src/modules/auth/views/store/auth.js';
217
+ import * as globals from '@martyrs/src/modules/globals/views/store/globals.js';
218
+ import * as organization from '@martyrs/src/modules/organizations/store/organizations.js';
219
+ import departmentsStore from '@martyrs/src/modules/organizations/store/departments.store.js';
220
+ import membershipsStore from '@martyrs/src/modules/organizations/store/memberships.store.js';
221
+ import invitesStore from '@martyrs/src/modules/organizations/store/invites.store.js';
186
222
 
187
- import * as auth from '@martyrs/src/modules/auth/views/store/auth.js'
188
- import * as globals from '@martyrs/src/modules/globals/views/store/globals.js'
189
- import * as invites from '@martyrs/src/modules/organizations/store/invites.js';
190
- import * as memberships from '@martyrs/src/modules/organizations/store/memberships.js';
191
- import * as organization from '@martyrs/src/modules/organizations/store/organizations.js'
192
- import * as departments from '@martyrs/src/modules/organizations/store/departments.js';
223
+ const route = useRoute();
224
+ const router = useRouter();
193
225
 
194
- const route = useRoute()
195
- const router = useRouter()
196
- const organizationData = ref(null)
226
+ // Data
227
+ const organizationData = ref(null);
228
+ const membersList = ref([]);
229
+ const invitesList = ref([]);
230
+ const departmentsList = ref([]);
231
+ const isLoaded = ref(false);
197
232
 
198
- // Tab logic
199
- const tab = ref('members')
200
- // States
201
- const invitesState = ref([])
202
- // Popup
203
- const isOpenMembersAddPopup = ref(false);
233
+ // Popups state
234
+ const isOpenInvitePopup = ref(false);
235
+ const isOpenAddUsersPopup = ref(false);
236
+ const isDepartmentPopupOpen = ref(false);
237
+ const editingDepartment = ref(null);
204
238
 
205
- function openMembersAddPopup() {
206
- isOpenMembersAddPopup.value = true;
239
+ // Popup functions
240
+ function openInvitePopup() {
241
+ isOpenInvitePopup.value = true;
207
242
  }
208
243
 
209
- function closeMembersAddPopup() {
210
- isOpenMembersAddPopup.value = false;
244
+ function closeInvitePopup() {
245
+ isOpenInvitePopup.value = false;
211
246
  }
212
247
 
213
- onMounted(async () => {
214
- organizationData.value = (await organization.actions.read({_id: route.params._id, user: auth.state.user._id}))[0]
215
- ;
216
- })
248
+ function openAddUsersPopup() {
249
+ isOpenAddUsersPopup.value = true;
250
+ }
217
251
 
218
- const FirstLevelDepartments = computed(() => {
219
- const departmentsState = departments.state.departments;
252
+ function closeAddUsersPopup() {
253
+ isOpenAddUsersPopup.value = false;
254
+ }
255
+
256
+ function openDepartmentPopup(department = null) {
257
+ editingDepartment.value = department;
258
+ isDepartmentPopupOpen.value = true;
259
+ }
220
260
 
221
- const subdepartmentIds = departmentsState.flatMap(department =>
222
- department.subdepartments.map(subdepartment => subdepartment._id)
223
- );
261
+ function closeDepartmentPopup() {
262
+ isDepartmentPopupOpen.value = false;
263
+ editingDepartment.value = null;
264
+ }
224
265
 
225
- return departmentsState.filter(department =>
226
- !subdepartmentIds.includes(department._id)
227
- );
266
+ // Load organization data
267
+ onMounted(async () => {
268
+ try {
269
+ const response = await organization.actions.read({
270
+ _id: route.params._id,
271
+ user: auth.state.user._id
272
+ });
273
+ organizationData.value = response[0];
274
+ isLoaded.value = true;
275
+ } catch (error) {
276
+ console.error('Error loading organization:', error);
277
+ isLoaded.value = true; // Still show the page even if organization load fails
278
+ }
228
279
  });
229
280
 
281
+ // Handlers
230
282
  async function handleSendInvite(list, resolve, reject) {
231
283
  try {
232
- const response = await invites.actions.create({
284
+ const response = await invitesStore.create({
233
285
  owner: {
234
286
  type: 'Organization',
235
287
  target: organizationData.value._id
@@ -240,30 +292,72 @@ async function handleSendInvite(list, resolve, reject) {
240
292
  },
241
293
  invites: list,
242
294
  });
243
- for (let invite of response.createdInvites) {
244
- globals.actions.add(invitesState.value, invite)
295
+
296
+ // Assuming the API returns an array of created invites
297
+ if (response.createdInvites) {
298
+ for (let invite of response.createdInvites) {
299
+ invitesStore.addItem(invite, invitesList.value);
300
+ }
301
+ } else if (response._id) {
302
+ // Single invite created
303
+ invitesStore.addItem(response, invitesList.value);
245
304
  }
246
- closeMembersAddPopup();
247
- resolve(); // Вызываем resolve, когда все операции завершены успешно
305
+
306
+ closeInvitePopup();
307
+ resolve();
248
308
  } catch (error) {
249
- reject(error); // Вызываем reject, если произошла ошибка
309
+ reject(error);
310
+ }
311
+ }
312
+
313
+ function handleUsersAdded(addedUsers) {
314
+ closeAddUsersPopup();
315
+ // Add new members to the list
316
+ if (addedUsers && addedUsers.length > 0) {
317
+ addedUsers.forEach(membership => {
318
+ membershipsStore.addItem(membership, membersList.value);
319
+ });
250
320
  }
251
321
  }
252
322
 
253
- async function removeMember(index,member) {
323
+ function handleDepartmentSaved(department) {
324
+ closeDepartmentPopup();
325
+
326
+ console.log('handleDepartmentSaved called with:', department);
327
+ console.log('departmentsList before update:', departmentsList.value);
328
+ console.log('editingDepartment:', editingDepartment.value);
329
+
330
+ if (department) {
331
+ // Update or add department in the list
332
+ if (editingDepartment.value) {
333
+ departmentsStore.updateItem(department, departmentsList.value);
334
+ } else {
335
+ departmentsStore.addItem(department, departmentsList.value);
336
+ }
337
+ } else {
338
+ // Department was deleted
339
+ if (editingDepartment.value) {
340
+ departmentsStore.removeItem(editingDepartment.value, departmentsList.value);
341
+ }
342
+ }
343
+
344
+ console.log('departmentsList after update:', departmentsList.value);
345
+ }
346
+
347
+ async function removeMember(index, member) {
254
348
  if (confirm("Confirm remove of member") == true) {
255
- memberships.state.memberships.splice(index, 1);
256
- await memberships.actions.delete(member);
349
+ await membershipsStore.delete(member);
350
+ membershipsStore.removeItem(member, membersList.value);
257
351
  }
258
352
  }
259
353
 
260
- async function removeInvite(index,invite) {
261
- if (confirm("Confirm remove of member") == true) {
262
- globals.actions.delete(invitesState.value, invite)
263
- await invites.actions.delete(invite._id);
354
+ async function removeInvite(index, invite) {
355
+ if (confirm("Confirm remove of invite") == true) {
356
+ await invitesStore.delete(invite);
357
+ invitesStore.removeItem(invite, invitesList.value);
264
358
  }
265
359
  }
266
360
  </script>
267
361
 
268
362
  <style scoped>
269
- </style>
363
+ </style>